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, TVD_RATWARE_MSGID_01 autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 20526 invoked from network); 14 Sep 2023 19:00:13 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 14 Sep 2023 19:00:13 -0000 Content-Type: multipart/mixed; boundary="===============3067374987630610714==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_nvidia390=3A_patch_for_linux_6=2E4/6=2E5?= To: ml@inbox.vuxu.org From: abenson Reply-to: ml@inbox.vuxu.org Message-ID: Date: Thu, 14 Sep 2023 21:00:13 +0200 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============3067374987630610714== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IGFiZW5zb24gYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2FiZW5zb24v dm9pZC1wYWNrYWdlcyBudmlkaWEzOTBfbGludXg2LjUKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQt bGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ2MDU5CgpudmlkaWEzOTA6IHBhdGNoIGZvciBsaW51 eCA2LjQvNi41CiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0aGUgY2hhbmdl cyBpbiB0aGlzIFBSOiAqKllFUyoqDQoNCiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1 aWx0IHRoaXMgUFIgbG9jYWxseSBmb3IgbXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgeDg2XzY0IChh bmQgLTMyYml0KQ0KCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvNDYwNTkucGF0Y2ggaXMgYXR0YWNoZWQ= --===============3067374987630610714== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-nvidia390_linux6.5-46059.patch" RnJvbSA3ZWM1NTEzN2E1NmJmNzIwNTA1NWI0Mzk2NDdhNmQyZjExOTRjMzc1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgQmVuc29uIDxhYmVuc29uQGdtYWlsLmNvbT4KRGF0 ZTogV2VkLCAxMyBTZXAgMjAyMyAyMDowMTozNiAtMDUwMApTdWJqZWN0OiBbUEFUQ0hdIG52aWRp YTM5MDogcGF0Y2ggZm9yIGxpbnV4IDYuNC82LjUKCi0tLQogc3JjcGtncy9udmlkaWEzOTAvZmls ZXMvbGludXgtNi40LnBhdGNoICAgICB8ICAxNyArCiBzcmNwa2dzL252aWRpYTM5MC9maWxlcy9s aW51eC02LjUteDY0LnBhdGNoIHwgMzY2ICsrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL252 aWRpYTM5MC9maWxlcy9saW51eC02LjUteDg2LnBhdGNoIHwgMzI3ICsrKysrKysrKysrKysrKysr CiBzcmNwa2dzL252aWRpYTM5MC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgICA1ICstCiA0 IGZpbGVzIGNoYW5nZWQsIDcxNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzOTAvZmlsZXMvbGludXgtNi40LnBhdGNoCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzOTAvZmlsZXMvbGludXgtNi41LXg2NC5wYXRj aAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzkwL2ZpbGVzL2xpbnV4LTYuNS14 ODYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM5MC9maWxlcy9saW51eC02LjQu cGF0Y2ggYi9zcmNwa2dzL252aWRpYTM5MC9maWxlcy9saW51eC02LjQucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uMzc5NmM4M2NlNDkyNwotLS0gL2Rldi9u dWxsCisrKyBiL3NyY3BrZ3MvbnZpZGlhMzkwL2ZpbGVzL2xpbnV4LTYuNC5wYXRjaApAQCAtMCww ICsxLDE3IEBACitkaWZmIC0tZ2l0IGEvbnZpZGlhLWRybS9udmlkaWEtZHJtLWRydi5jIGIvbnZp ZGlhLWRybS9udmlkaWEtZHJtLWRydi5jCitpbmRleCA4ZWY0YzI3Li44NWM0M2YyIDEwMDY0NAor LS0tIGEvbnZpZGlhLWRybS9udmlkaWEtZHJtLWRydi5jCisrKysgYi9udmlkaWEtZHJtL252aWRp YS1kcm0tZHJ2LmMKK0BAIC03NjIsOCArNzY2LDExIEBAIHN0YXRpYyB2b2lkIG52X2RybV91cGRh dGVfZHJtX2RyaXZlcl9mZWEKKyAKKyAgICAgbnZfZHJtX2RyaXZlci5kdW1iX2NyZWF0ZSAgICAg ID0gbnZfZHJtX2R1bWJfY3JlYXRlOworICAgICBudl9kcm1fZHJpdmVyLmR1bWJfbWFwX29mZnNl dCAgPSBudl9kcm1fZHVtYl9tYXBfb2Zmc2V0OworKy8vIFJlbC4gY29tbWl0ICJkcm06IHJlbW92 ZSBkdW1iX2Rlc3Ryb3kgY2FsbGJhY2siIChDaHJpc3RpYW4gS8O2bmlnLCAyNiBKYW4gMjAyMykK KysvLyBOQjogTm8gcmVzb3VyY2VzIGFyZSBsZWFrZWQsIHRoZSBrZXJuZWwgcmVsZWFzZXMgdGhl IHNhbWUgcmVzb3VyY2VzIGJ5IGRlZmF1bHQKKysjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VS TkVMX1ZFUlNJT04oNiwgNCwgMCkKKyAgICAgbnZfZHJtX2RyaXZlci5kdW1iX2Rlc3Ryb3kgICAg ID0gbnZfZHJtX2R1bWJfZGVzdHJveTsKKy0KKysjZW5kaWYKKyAjaWYgZGVmaW5lZChOVl9EUk1f RFJJVkVSX0hBU19HRU1fUFJJTUVfQ0FMTEJBQ0tTKQorICAgICBudl9kcm1fZHJpdmVyLmdlbV92 bV9vcHMgICAgICAgPSAmbnZfZHJtX2dlbV92bWFfb3BzOworICNlbmRpZgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9udmlkaWEzOTAvZmlsZXMvbGludXgtNi41LXg2NC5wYXRjaCBiL3NyY3BrZ3MvbnZp ZGlhMzkwL2ZpbGVzL2xpbnV4LTYuNS14NjQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAwMC4uMjU4NjAxNTdlNGRlNgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3MvbnZpZGlhMzkwL2ZpbGVzL2xpbnV4LTYuNS14NjQucGF0Y2gKQEAgLTAsMCArMSwzNjYgQEAK K2RpZmYgLS1pZ25vcmUtc3BhY2UtY2hhbmdlIC0tdW5pZmllZCAtLXJlY3Vyc2l2ZSAtLW5vLWRl cmVmZXJlbmNlIGEvY29tbW9uL2luYy9udi1tbS5oIGIvY29tbW9uL2luYy9udi1tbS5oCistLS0g YS9jb21tb24vaW5jL252LW1tLmgJMjAyMi0xMC0xMiAwNjozMDoyNi4wMDAwMDAwMDAgLTAzMDAK KysrKyBiL2NvbW1vbi9pbmMvbnYtbW0uaAkyMDIzLTA5LTAyIDE1OjM5OjM1LjM3NjUyMDA3NCAt MDMwMAorQEAgLTc3LDcxICs3NywxNCBAQAorICAgICAjaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9Q QUdFU19IQVNfV1JJVEVfQU5EX0ZPUkNFX0FSR1MpCisgICAgICAgICAjZGVmaW5lIE5WX0dFVF9V U0VSX1BBR0VTIGdldF91c2VyX3BhZ2VzCisgICAgICNlbHNlCisrCSNpZiBkZWZpbmVkKE5WX0dF VF9VU0VSX1BBR0VTX0RST1BQRURfVk1BKQorICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L21tLmg+ CisgCisgICAgICAgICBzdGF0aWMgaW5saW5lIGxvbmcgTlZfR0VUX1VTRVJfUEFHRVModW5zaWdu ZWQgbG9uZyBzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB1bnNpZ25lZCBsb25nIG5yX3BhZ2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludCB3cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgZm9yY2UsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKip2 bWFzKQorLSAgICAgICAgeworLSAgICAgICAgICAgIHVuc2lnbmVkIGludCBmbGFncyA9IDA7Cist CistICAgICAgICAgICAgaWYgKHdyaXRlKQorLSAgICAgICAgICAgICAgICBmbGFncyB8PSBGT0xM X1dSSVRFOworLSAgICAgICAgICAgIGlmIChmb3JjZSkKKy0gICAgICAgICAgICAgICAgZmxhZ3Mg fD0gRk9MTF9GT1JDRTsKKy0KKy0gICAgICAgICAgICByZXR1cm4gZ2V0X3VzZXJfcGFnZXMoc3Rh cnQsIG5yX3BhZ2VzLCBmbGFncywgcGFnZXMsIHZtYXMpOworLSAgICAgICAgfQorLSAgICAjZW5k aWYKKy0jZW5kaWYKKy0KKy0vKgorLSAqIGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpIHdhcyBhZGRl ZCBieSBjb21taXQgMWU5ODc3OTAyZGM3CistICogKCJtbS9ndXA6IEludHJvZHVjZSBnZXRfdXNl cl9wYWdlc19yZW1vdGUoKSIpIGluIHY0LjYgKDIwMTYtMDItMTIpLgorLSAqCistICogVGhlIHZl cnkgbmV4dCBjb21taXQgY2RlNzAxNDBmZWQ4ICgibW0vZ3VwOiBPdmVybG9hZCBnZXRfdXNlcl9w YWdlcygpCistICogZnVuY3Rpb25zIikgZGVwcmVjYXRlZCB0aGUgOC1hcmd1bWVudCB2ZXJzaW9u IG9mIGdldF91c2VyX3BhZ2VzIGZvciB0aGUKKy0gKiBub24tcmVtb3RlIGNhc2UgKGNhbGxpbmcg Z2V0X3VzZXJfcGFnZXMgd2l0aCBjdXJyZW50IGFuZCBjdXJyZW50LT5tbSkuCistICoKKy0gKiBU aGUgZ3VpZGVsaW5lcyBhcmU6IGNhbGwgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFIGlmIHlvdSBu ZWVkIHRoZSA4LWFyZ3VtZW50CistICogdmVyc2lvbiB0aGF0IHVzZXMgc29tZXRoaW5nIG90aGVy IHRoYW4gY3VycmVudCBhbmQgY3VycmVudC0+bW0uIFVzZQorLSAqIE5WX0dFVF9VU0VSX1BBR0VT IGlmIHlvdSBhcmUgcmVmZXJpbmcgdG8gY3VycmVudCBhbmQgY3VycmVudC0+bW0uCistICoKKy0g KiBOb3RlIHRoYXQgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgcmVxdWlyZXMgdGhlIGNhbGxlciB0 byBob2xkIGEgcmVmZXJlbmNlIG9uCistICogdGhlIHRhc2tfc3RydWN0IChpZiBub24tTlVMTCBh bmQgaWYgdGhpcyBBUEkgaGFzIHRzayBhcmd1bWVudCkgYW5kIHRoZSBtbV9zdHJ1Y3QuCistICog VGhpcyB3aWxsIGFsd2F5cyBiZSB0cnVlIHdoZW4gdXNpbmcgY3VycmVudCBhbmQgY3VycmVudC0+ bW0uIElmIHRoZSBrZXJuZWwgcGFzc2VzCistICogdGhlIGRyaXZlciBhIHZtYSB2aWEgZHJpdmVy IGNhbGxiYWNrLCB0aGUga2VybmVsIGhvbGRzIGEgcmVmZXJlbmNlIG9uIHZtYS0+dm1fbW0KKy0g KiBvdmVyIHRoYXQgY2FsbGJhY2suCistICoKKy0gKiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSB3 cml0ZS9mb3JjZSBwYXJhbWV0ZXJzIHdlcmUgcmVwbGFjZWQKKy0gKiB3aXRoIGd1cF9mbGFncyBi eSBjb21taXQgOWJlYWUxZWE4OTMwICgibW06IHJlcGxhY2UgZ2V0X3VzZXJfcGFnZXNfcmVtb3Rl KCkKKy0gKiB3cml0ZS9mb3JjZSBwYXJhbWV0ZXJzIHdpdGggZ3VwX2ZsYWdzIikgaW4gdjQuOSAo MjAxNi0xMC0xMykuCistICoKKy0gKiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBhZGRlZCAnbG9j a2VkJyBwYXJhbWV0ZXIgYnkgY29tbWl0IDViNTZkNDlmYzMxZAorLSAqICgibW06IGFkZCBsb2Nr ZWQgcGFyYW1ldGVyIHRvIGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpIikgaW4KKy0gKiB2NC4xMCAo MjAxNi0xMi0xNCkuCistICoKKy0gKiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSByZW1vdmVkICd0 c2snIHBhcmFtZXRlciBieQorLSAqIGNvbW1pdCA2NDAxOWEyZTQ2N2EgKCJtbS9ndXA6IHJlbW92 ZSB0YXNrX3N0cnVjdCBwb2ludGVyIGZvcgorLSAqIGFsbCBndXAgY29kZSIpIGluIHY1LjktcmMx ICgyMDIwLTA4LTExKS4KKy0gKgorLSAqLworLQorLSNpZiBkZWZpbmVkKE5WX0dFVF9VU0VSX1BB R0VTX1JFTU9URV9QUkVTRU5UKQorLSAgICAjaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19S RU1PVEVfSEFTX1dSSVRFX0FORF9GT1JDRV9BUkdTKQorLSAgICAgICAgI2RlZmluZSBOVl9HRVRf VVNFUl9QQUdFU19SRU1PVEUgICAgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlCistICAgICNlbHNlCist ICAgICAgICBzdGF0aWMgaW5saW5lIGxvbmcgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFKHN0cnVj dCB0YXNrX3N0cnVjdCAqdHNrLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgbW1fc3RydWN0ICptbSwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBzdGFydCwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgbG9uZyBucl9wYWdlcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IHdyaXRlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZm9yY2UsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYWdlICoqcGFnZXMsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCB2bV9hcmVhX3N0cnVjdCAqKnZtYXMpCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYWdlICoqcGFnZXMpCisgICAgICAgICB7CisgICAg ICAgICAgICAgdW5zaWduZWQgaW50IGZsYWdzID0gMDsKKyAKK0BAIC0xNTAsMzQgKzkzLDEyIEBA CisgICAgICAgICAgICAgaWYgKGZvcmNlKQorICAgICAgICAgICAgICAgICBmbGFncyB8PSBGT0xM X0ZPUkNFOworIAorLSAgICAgICAgI2lmIGRlZmluZWQoTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RF X0hBU19MT0NLRURfQVJHKQorLSAgICAgICAgICAgICNpZiBkZWZpbmVkIChOVl9HRVRfVVNFUl9Q QUdFU19SRU1PVEVfSEFTX1RTS19BUkcpCistICAgICAgICAgICAgICAgcmV0dXJuIGdldF91c2Vy X3BhZ2VzX3JlbW90ZSh0c2ssIG1tLCBzdGFydCwgbnJfcGFnZXMsIGZsYWdzLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZXMsIHZtYXMsIE5VTEwpOwor LSAgICAgICAgICAgICNlbHNlCistICAgICAgICAgICAgICAgcmV0dXJuIGdldF91c2VyX3BhZ2Vz X3JlbW90ZShtbSwgc3RhcnQsIG5yX3BhZ2VzLCBmbGFncywKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VzLCB2bWFzLCBOVUxMKTsKKy0gICAgICAgICAg ICAjZW5kaWYKKy0KKy0gICAgICAgICNlbHNlCistCistICAgICAgICAgICAgICAgcmV0dXJuIGdl dF91c2VyX3BhZ2VzX3JlbW90ZSh0c2ssIG1tLCBzdGFydCwgbnJfcGFnZXMsIGZsYWdzLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZXMsIHZtYXMpOwor LQorLSAgICAgICAgI2VuZGlmCistCisrICAgICAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9w YWdlcyhzdGFydCwgbnJfcGFnZXMsIGZsYWdzLCBwYWdlcyk7CisgICAgICAgICB9CistICAgICNl bmRpZgorLSNlbHNlCistICAgICNpZiBkZWZpbmVkKE5WX0dFVF9VU0VSX1BBR0VTX0hBU19XUklU RV9BTkRfRk9SQ0VfQVJHUykKKy0gICAgICAgICNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfUkVN T1RFICAgIE5WX0dFVF9VU0VSX1BBR0VTCisgICAgICNlbHNlCisgICAgICAgICAjaW5jbHVkZSA8 bGludXgvbW0uaD4KKy0gICAgICAgICNpbmNsdWRlIDxsaW51eC9zY2hlZC5oPgorIAorLSAgICAg ICAgc3RhdGljIGlubGluZSBsb25nIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URShzdHJ1Y3QgdGFz a19zdHJ1Y3QgKnRzaywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3RydWN0IG1tX3N0cnVjdCAqbW0sCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQsCisrICAg ICAgICAgICAgc3RhdGljIGlubGluZSBsb25nIE5WX0dFVF9VU0VSX1BBR0VTKHVuc2lnbmVkIGxv bmcgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGxvbmcgbnJfcGFnZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3cml0ZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZvcmNlLAorQEAgLTE5MSwx MiArMTEyLDEyIEBACisgICAgICAgICAgICAgaWYgKGZvcmNlKQorICAgICAgICAgICAgICAgICBm bGFncyB8PSBGT0xMX0ZPUkNFOworIAorLSAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdl cyh0c2ssIG1tLCBzdGFydCwgbnJfcGFnZXMsIGZsYWdzLCBwYWdlcywgdm1hcyk7CisrICAgICAg ICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdlcyhzdGFydCwgbnJfcGFnZXMsIGZsYWdzLCBw YWdlcywgdm1hcyk7CisgICAgICAgICB9CisgICAgICNlbmRpZgorKyAgICAjZW5kaWYKKyAjZW5k aWYKKyAKKy0KKyAvKgorICAqIFRoZSAudmlydHVhbF9hZGRyZXNzIGZpZWxkIHdhcyBlZmZlY3Rp dmVseSByZW5hbWVkIHRvIC5hZGRyZXNzLCBieSB0aGVzZQorICAqIHR3byBjb21taXRzOgorZGlm ZiAtLWlnbm9yZS1zcGFjZS1jaGFuZ2UgLS11bmlmaWVkIC0tcmVjdXJzaXZlIC0tbm8tZGVyZWZl cmVuY2UgYS9jb25mdGVzdC5zaCBiL2NvbmZ0ZXN0LnNoCistLS0gYS9jb25mdGVzdC5zaAkyMDIy LTEwLTExIDEzOjAwOjUwLjAwMDAwMDAwMCAtMDMwMAorKysrIGIvY29uZnRlc3Quc2gJMjAyMy0w OS0wMiAxNTo0MDo0OS40NjAyNjE0MDMgLTAzMDAKK0BAIC0zMDUxLDcgKzMwNTEsNiBAQAorICAg ICAgICAgICAgICMgd3JpdGUgYW5kIGZvcmNlIHBhcmFtZXRlcnMgQU5EIHRoYXQgZ3VwIGhhcyB0 YXNrX3N0cnVjdCBhbmQKKyAgICAgICAgICAgICAjIG1tX3N0cnVjdCBhcyBpdHMgZmlyc3QgYXJn dW1lbnRzLgorICAgICAgICAgICAgICMgUmV0dXJuIGlmIGF2YWlsYWJsZS4KKy0gICAgICAgICAg ICAjIEZhbGwgdGhyb3VnaCB0byBkZWZhdWx0IGNhc2UgaWYgYWJzZW50LgorIAorICAgICAgICAg ICAgIGVjaG8gIiRDT05GVEVTVF9QUkVBTUJMRQorICAgICAgICAgICAgICNpbmNsdWRlIDxsaW51 eC9tbS5oPgorQEAgLTMwNzUsOTkgKzMwNzQsMTYgQEAKKyAgICAgICAgICAgICAgICAgcmV0dXJu CisgICAgICAgICAgICAgZmkKKyAKKy0gICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9V U0VSX1BBR0VTX0hBU19XUklURV9BTkRfRk9SQ0VfQVJHUyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1 bmN0aW9ucyIKKy0gICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VTX0hB U19UQVNLX1NUUlVDVCIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0KKy0gICAgICAg ICAgICByZXR1cm4KKy0gICAgICAgIDs7CistCistICAgICAgICBnZXRfdXNlcl9wYWdlc19yZW1v dGUpCistICAgICAgICAgICAgIworLSAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBmdW5j dGlvbiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBpcworLSAgICAgICAgICAgICMgcHJlc2VudCBh bmQgaGFzIHdyaXRlL2ZvcmNlL2xvY2tlZC90c2sgcGFyYW1ldGVycy4KKy0gICAgICAgICAgICAj CistICAgICAgICAgICAgIyBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSB3YXMgYWRkZWQgYnk6Cist ICAgICAgICAgICAgIyAgIDIwMTYgRmViIDEyOiAxZTk4Nzc5MDJkYzdlMTFkMmJlMDM4MzcxYzZm YmYyZGZjZDQ2OWQ3CistICAgICAgICAgICAgIworLSAgICAgICAgICAgICMgZ2V0X3VzZXJfcGFn ZXNbX3JlbW90ZV0oKSB3cml0ZS9mb3JjZSBwYXJhbWV0ZXJzCistICAgICAgICAgICAgIyByZXBs YWNlZCB3aXRoIGd1cF9mbGFnczoKKy0gICAgICAgICAgICAjICAgMjAxNiBPY3QgMTI6IDc2OGFl MzA5YTk2MTAzZWQwMmViMWUxMTFlODM4Yzg3ODU0ZDhiNTEKKy0gICAgICAgICAgICAjICAgMjAx NiBPY3QgMTI6IDliZWFlMWVhODkzMDVhOTY2N2NlYWFiNmQwYmY0NmEwNDVhZDcxZTcKKy0gICAg ICAgICAgICAjCistICAgICAgICAgICAgIyBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBhZGRlZCAn bG9ja2VkJyBwYXJhbWV0ZXIKKy0gICAgICAgICAgICAjICAgMjAxNiBEZWMgMTQ6NWI1NmQ0OWZj MzFkYmIwNDg3ZTE0ZWFkNzkwZmM4MWNhOWZiMmM5OQorLSAgICAgICAgICAgICMKKy0gICAgICAg ICAgICAjIGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpIHJlbW92ZWQgJ3RzaycgcGFyYW1ldGVyIGJ5 CistICAgICAgICAgICAgIyBjb21taXQgNjQwMTlhMmU0NjdhICgibW0vZ3VwOiByZW1vdmUgdGFz a19zdHJ1Y3QgcG9pbnRlciBmb3IKKy0gICAgICAgICAgICAjIGFsbCBndXAgY29kZSIpIGluIHY1 LjktcmMxICgyMDIwLTA4LTExKS4KKy0gICAgICAgICAgICAjCistICAgICAgICAgICAgIyBjb25m dGVzdCAjMTogY2hlY2sgaWYgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgaXMgYXZhaWxhYmxlCist ICAgICAgICAgICAgIyByZXR1cm4gaWYgbm90IGF2YWlsYWJsZS4KKy0gICAgICAgICAgICAjIEZh bGwgdGhyb3VnaCB0byBjb25mdGVzdCAjMiBpZiBpdCBpcyBwcmVzZW50CistCistICAgICAgICAg ICAgZWNobyAiJENPTkZURVNUX1BSRUFNQkxFCistICAgICAgICAgICAgI2luY2x1ZGUgPGxpbnV4 L21tLmg+CistICAgICAgICAgICAgdm9pZCBjb25mdGVzdF9nZXRfdXNlcl9wYWdlc19yZW1vdGUo dm9pZCkgeworLSAgICAgICAgICAgICAgICBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKTsKKy0gICAg ICAgICAgICB9IiA+IGNvbmZ0ZXN0JCQuYworLQorLSAgICAgICAgICAgICRDQyAkQ0ZMQUdTIC1j IGNvbmZ0ZXN0JCQuYyA+IC9kZXYvbnVsbCAyPiYxCistICAgICAgICAgICAgcm0gLWYgY29uZnRl c3QkJC5jCistCistICAgICAgICAgICAgaWYgWyAtZiBjb25mdGVzdCQkLm8gXTsgdGhlbgorLSAg ICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX1BSRVNF TlQiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgICAgIGVjaG8g IiN1bmRlZiBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfSEFTX1RTS19BUkciIHwgYXBwZW5kX2Nv bmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgICAgIGVjaG8gIiN1bmRlZiBOVl9HRVRf VVNFUl9QQUdFU19SRU1PVEVfSEFTX1dSSVRFX0FORF9GT1JDRV9BUkdTIiB8IGFwcGVuZF9jb25m dGVzdCAiZnVuY3Rpb25zIgorLSAgICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VUX1VT RVJfUEFHRVNfUkVNT1RFX0hBU19MT0NLRURfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rp b25zIgorLSAgICAgICAgICAgICAgICBybSAtZiBjb25mdGVzdCQkLm8KKy0gICAgICAgICAgICAg ICAgcmV0dXJuCistICAgICAgICAgICAgZmkKKy0KKy0gICAgICAgICAgICAjIGNvbmZ0ZXN0ICMy OiBjaGVjayBpZiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBoYXMgd3JpdGUgYW5kCistICAgICAg ICAgICAgIyBmb3JjZSBhcmd1bWVudHMuIFJldHVybiBpZiB0aGVzZSBhcmd1bWVudHMgYXJlIHBy ZXNlbnQKKy0gICAgICAgICAgICAjIEZhbGwgdGhyb3VnaCB0byBjb25mdGVzdCAjMyBpZiB0aGVz ZSBhcmdzIGFyZSBhYnNlbnQuCistICAgICAgICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNF Ul9QQUdFU19SRU1PVEVfUFJFU0VOVCIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0g ICAgICAgICAgICBlY2hvICIkQ09ORlRFU1RfUFJFQU1CTEUKKy0gICAgICAgICAgICAjaW5jbHVk ZSA8bGludXgvbW0uaD4KKy0gICAgICAgICAgICBsb25nIGdldF91c2VyX3BhZ2VzX3JlbW90ZShz dHJ1Y3QgdGFza19zdHJ1Y3QgKnRzaywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzdHJ1Y3QgbW1fc3RydWN0ICptbSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0LAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbnJfcGFnZXMsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdyaXRlLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGludCBmb3JjZSwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgcGFnZSAqKnBhZ2VzLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqKnZtYXMpIHsKKy0g ICAgICAgICAgICAgICAgcmV0dXJuIDA7CistICAgICAgICAgICAgfSIgPiBjb25mdGVzdCQkLmMK Ky0KKy0gICAgICAgICAgICAkQ0MgJENGTEFHUyAtYyBjb25mdGVzdCQkLmMgPiAvZGV2L251bGwg Mj4mMQorLSAgICAgICAgICAgIHJtIC1mIGNvbmZ0ZXN0JCQuYworLQorLSAgICAgICAgICAgIGlm IFsgLWYgY29uZnRlc3QkJC5vIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgZWNobyAiI2RlZmlu ZSBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfSEFTX1RTS19BUkciIHwgYXBwZW5kX2NvbmZ0ZXN0 ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgICAgIGVjaG8gIiNkZWZpbmUgTlZfR0VUX1VTRVJf UEFHRVNfUkVNT1RFX0hBU19XUklURV9BTkRfRk9SQ0VfQVJHUyIgfCBhcHBlbmRfY29uZnRlc3Qg ImZ1bmN0aW9ucyIKKy0gICAgICAgICAgICAgICAgZWNobyAiI3VuZGVmIE5WX0dFVF9VU0VSX1BB R0VTX1JFTU9URV9IQVNfTE9DS0VEX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIK Ky0gICAgICAgICAgICAgICAgcm0gLWYgY29uZnRlc3QkJC5vCistICAgICAgICAgICAgICAgIHJl dHVybgorLSAgICAgICAgICAgIGZpCistCistICAgICAgICAgICAgZWNobyAiI3VuZGVmIE5WX0dF VF9VU0VSX1BBR0VTX1JFTU9URV9IQVNfV1JJVEVfQU5EX0ZPUkNFX0FSR1MiIHwgYXBwZW5kX2Nv bmZ0ZXN0ICJmdW5jdGlvbnMiCisrICAgICAgICAgICAgIyBDb25mdGVzdCAjNDogY2hlY2sgaWYg dm1hIGFyZyB3YXMgZHJvcHBlZAorKyAgICAgICAgICAgICMgUmV0dXJuIGlmIGF2YWlsYWJsZS4K KysgICAgICAgICAgICAjIEZhbGwgdGhyb3VnaCB0byBkZWZhdWx0IGNhc2UgaWYgYWJzZW50Lgor IAorLSAgICAgICAgICAgICMKKy0gICAgICAgICAgICAjIGNvbmZ0ZXN0ICMzOiBjaGVjayBpZiBn ZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBoYXMgbG9ja2VkIGFyZ3VtZW50CistICAgICAgICAgICAg IyBSZXR1cm4gaWYgdGhlc2UgYXJndW1lbnRzIGFyZSBwcmVzZW50LiBGYWxsIHRocm91Z2ggdG8g Y29uZnRlc3QgIzQKKy0gICAgICAgICAgICAjIGlmIHRoZXNlIGFyZ3MgYXJlIGFic2VudC4KKy0g ICAgICAgICAgICAjCisgICAgICAgICAgICAgZWNobyAiJENPTkZURVNUX1BSRUFNQkxFCisgICAg ICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L21tLmg+CistICAgICAgICAgICAgbG9uZyBnZXRfdXNl cl9wYWdlc19yZW1vdGUoc3RydWN0IHRhc2tfc3RydWN0ICp0c2ssCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG1tX3N0cnVjdCAqbW0sCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBzdGFydCwKKysgICAg ICAgICAgICBsb25nIGdldF91c2VyX3BhZ2VzKHVuc2lnbmVkIGxvbmcgc3RhcnQsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBucl9wYWdlcywK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZ3Vw X2ZsYWdzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBw YWdlICoqcGFnZXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ry dWN0IHZtX2FyZWFfc3RydWN0ICoqdm1hcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgKmxvY2tlZCkgeworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IHBhZ2UgKipwYWdlcykgeworICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAg ICAgICAgICAgICB9IiA+IGNvbmZ0ZXN0JCQuYworIAorQEAgLTMxNzUsNDAgKzMwOTEsMTcgQEAK KyAgICAgICAgICAgICBybSAtZiBjb25mdGVzdCQkLmMKKyAKKyAgICAgICAgICAgICBpZiBbIC1m IGNvbmZ0ZXN0JCQubyBdOyB0aGVuCistICAgICAgICAgICAgICAgIGVjaG8gIiNkZWZpbmUgTlZf R0VUX1VTRVJfUEFHRVNfUkVNT1RFX0hBU19UU0tfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVu Y3Rpb25zIgorLSAgICAgICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VT X1JFTU9URV9IQVNfTE9DS0VEX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKysg ICAgICAgICAgICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19EUk9QUEVEX1ZN QSIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKysgICAgICAgICAgICAgICAgZWNobyAi I3VuZGVmIE5WX0dFVF9VU0VSX1BBR0VTX0hBU19XUklURV9BTkRfRk9SQ0VfQVJHUyIgfCBhcHBl bmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKysgICAgICAgICAgICAgICAgZWNobyAiI3VuZGVmIE5W X0dFVF9VU0VSX1BBR0VTX0hBU19UQVNLX1NUUlVDVCIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0 aW9ucyIKKyAgICAgICAgICAgICAgICAgcm0gLWYgY29uZnRlc3QkJC5vCisgICAgICAgICAgICAg ICAgIHJldHVybgorICAgICAgICAgICAgIGZpCisgCistICAgICAgICAgICAgIworLSAgICAgICAg ICAgICMgY29uZnRlc3QgIzQ6IGNoZWNrIGlmIGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpIGRvZXMg bm90IHRha2UKKy0gICAgICAgICAgICAjIHRzayBhcmd1bWVudC4KKy0gICAgICAgICAgICAjCist ICAgICAgICAgICAgZWNobyAiJENPTkZURVNUX1BSRUFNQkxFCistICAgICAgICAgICAgI2luY2x1 ZGUgPGxpbnV4L21tLmg+CistICAgICAgICAgICAgbG9uZyBnZXRfdXNlcl9wYWdlc19yZW1vdGUo c3RydWN0IG1tX3N0cnVjdCAqbW0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdW5zaWduZWQgbG9uZyBzdGFydCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1bnNpZ25lZCBsb25nIG5yX3BhZ2VzLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBndXBfZmxhZ3MsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKip2 bWFzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqbG9ja2Vk KSB7CistICAgICAgICAgICAgICAgIHJldHVybiAwOworLSAgICAgICAgICAgIH0iID4gY29uZnRl c3QkJC5jCistCistICAgICAgICAgICAgJENDICRDRkxBR1MgLWMgY29uZnRlc3QkJC5jID4gL2Rl di9udWxsIDI+JjEKKy0gICAgICAgICAgICBybSAtZiBjb25mdGVzdCQkLmMKKy0KKy0gICAgICAg ICAgICBpZiBbIC1mIGNvbmZ0ZXN0JCQubyBdOyB0aGVuCistICAgICAgICAgICAgICAgIGVjaG8g IiN1bmRlZiBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfSEFTX1RTS19BUkciIHwgYXBwZW5kX2Nv bmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgICAgIGVjaG8gIiNkZWZpbmUgTlZfR0VU X1VTRVJfUEFHRVNfUkVNT1RFX0hBU19MT0NLRURfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVu Y3Rpb25zIgorLSAgICAgICAgICAgICAgICBybSAtZiBjb25mdGVzdCQkLm8KKy0gICAgICAgICAg ICBlbHNlCisrICAgICAgICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19IQVNf V1JJVEVfQU5EX0ZPUkNFX0FSR1MiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCisrICAg ICAgICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19IQVNfVEFTS19TVFJVQ1Qi IHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCisgCistICAgICAgICAgICAgICAgIGVjaG8g IiNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX0hBU19UU0tfQVJHIiB8IGFwcGVuZF9j b25mdGVzdCAiZnVuY3Rpb25zIgorLSAgICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VU X1VTRVJfUEFHRVNfUkVNT1RFX0hBU19MT0NLRURfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVu Y3Rpb25zIgorLSAgICAgICAgICAgIGZpCisrICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICA7 OworIAorICAgICAgICAgdXNsZWVwX3JhbmdlKQorZGlmZiAtLWlnbm9yZS1zcGFjZS1jaGFuZ2Ug LS11bmlmaWVkIC0tcmVjdXJzaXZlIC0tbm8tZGVyZWZlcmVuY2UgYS9udmlkaWEvb3MtbWxvY2su YyBiL252aWRpYS9vcy1tbG9jay5jCistLS0gYS9udmlkaWEvb3MtbWxvY2suYwkyMDIyLTEwLTEy IDA2OjMwOjI2LjAwMDAwMDAwMCAtMDMwMAorKysrIGIvbnZpZGlhL29zLW1sb2NrLmMJMjAyMy0w OS0wMiAxNTo0Njo0My4xMDg3MDIyODUgLTAzMDAKK0BAIC0xMjcsOCArMTI3LDEzIEBACisgICAg IH0KKyAKKyAgICAgbnZfbW1hcF9yZWFkX2xvY2sobW0pOworKyNpZiBkZWZpbmVkKE5WX0dFVF9V U0VSX1BBR0VTX0RST1BQRURfVk1BKQorKyAgICByZXQgPSBOVl9HRVRfVVNFUl9QQUdFUygodW5z aWduZWQgbG9uZylhZGRyZXNzLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlX2Nv dW50LCB3cml0ZSwgZm9yY2UsIHVzZXJfcGFnZXMpOworKyNlbHNlCisgICAgIHJldCA9IE5WX0dF VF9VU0VSX1BBR0VTKCh1bnNpZ25lZCBsb25nKWFkZHJlc3MsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHBhZ2VfY291bnQsIHdyaXRlLCBmb3JjZSwgdXNlcl9wYWdlcywgTlVMTCk7Cisr I2VuZGlmCisgICAgIG52X21tYXBfcmVhZF91bmxvY2sobW0pOworICAgICBwaW5uZWQgPSByZXQ7 CisgCitkaWZmIC0taWdub3JlLXNwYWNlLWNoYW5nZSAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgLS1u by1kZXJlZmVyZW5jZSBhL252aWRpYS1kcm0vbnZpZGlhLWRybS1saW51eC5jIGIvbnZpZGlhLWRy bS9udmlkaWEtZHJtLWxpbnV4LmMKKy0tLSBhL252aWRpYS1kcm0vbnZpZGlhLWRybS1saW51eC5j CTIwMjItMTAtMTIgMDY6MzA6MzEuMDAwMDAwMDAwIC0wMzAwCisrKysgYi9udmlkaWEtZHJtL252 aWRpYS1kcm0tbGludXguYwkyMDIzLTA5LTAyIDE1OjQ0OjM3LjYwMTQzMjc1MiAtMDMwMAorQEAg LTExNCw5ICsxMTQsMTMgQEAKKyAgICAgfQorIAorICAgICBudl9tbWFwX3JlYWRfbG9jayhtbSk7 CistCisrI2lmIGRlZmluZWQoTlZfR0VUX1VTRVJfUEFHRVNfRFJPUFBFRF9WTUEpCisrICAgIHBh Z2VzX3Bpbm5lZCA9IE5WX0dFVF9VU0VSX1BBR0VTKGFkZHJlc3MsIHBhZ2VzX2NvdW50LCB3cml0 ZSwgZm9yY2UsCisrCQkgICAgICAgICAgICAgICAgICAgICB1c2VyX3BhZ2VzKTsKKysjZWxzZQor ICAgICBwYWdlc19waW5uZWQgPSBOVl9HRVRfVVNFUl9QQUdFUyhhZGRyZXNzLCBwYWdlc19jb3Vu dCwgd3JpdGUsIGZvcmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 c2VyX3BhZ2VzLCBOVUxMKTsKKysjZW5kaWYKKyAgICAgbnZfbW1hcF9yZWFkX3VubG9jayhtbSk7 CisgCisgICAgIGlmIChwYWdlc19waW5uZWQgPCAwIHx8ICh1bnNpZ25lZClwYWdlc19waW5uZWQg PCBwYWdlc19jb3VudCkgeworZGlmZiAtLWlnbm9yZS1zcGFjZS1jaGFuZ2UgLS11bmlmaWVkIC0t cmVjdXJzaXZlIC0tbm8tZGVyZWZlcmVuY2UgYS9udmlkaWEtdXZtL3V2bThfdG9vbHMuYyBiL252 aWRpYS11dm0vdXZtOF90b29scy5jCistLS0gYS9udmlkaWEtdXZtL3V2bThfdG9vbHMuYwkyMDIy LTEwLTEyIDA2OjMwOjI4LjAwMDAwMDAwMCAtMDMwMAorKysrIGIvbnZpZGlhLXV2bS91dm04X3Rv b2xzLmMJMjAyMy0wOS0wMiAxNTo0NToxMy4wMzgyNzIxMzQgLTAzMDAKK0BAIC0yNTEsMTMgKzI1 MSwzNSBAQAorICAgICB9CisgCisgICAgIG52X21tYXBfcmVhZF9sb2NrKGN1cnJlbnQtPm1tKTsK KysjaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19EUk9QUEVEX1ZNQSkKKysgICAgcmV0ID0g TlZfR0VUX1VTRVJfUEFHRVModXNlcl92YSwgbnVtX3BhZ2VzLCAxLCAwLCAqcGFnZXMpOworKyNl bHNlCisgICAgIHJldCA9IE5WX0dFVF9VU0VSX1BBR0VTKHVzZXJfdmEsIG51bV9wYWdlcywgMSwg MCwgKnBhZ2VzLCB2bWFzKTsKKysjZW5kaWYKKyAgICAgbnZfbW1hcF9yZWFkX3VubG9jayhjdXJy ZW50LT5tbSk7CisgICAgIGlmIChyZXQgIT0gbnVtX3BhZ2VzKSB7CisgICAgICAgICBzdGF0dXMg PSBOVl9FUlJfSU5WQUxJRF9BUkdVTUVOVDsKKyAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgfQor KyNpZiBkZWZpbmVkKE5WX0dFVF9VU0VSX1BBR0VTX0RST1BQRURfVk1BKQorKyAgICBzdHJ1Y3Qg dm1fYXJlYV9zdHJ1Y3QgKnZtYTsKKysgICAgdW5zaWduZWQgbG9uZyBzdGFydDsKKyAKKysgICAg bnZfbW1hcF9yZWFkX2xvY2soY3VycmVudC0+bW0pOworKyAgICBzdGFydCA9IHVzZXJfdmE7Cisr ICAgIGZvciAoaSA9IDA7IGkgPCBudW1fcGFnZXM7IGkrKykgeworKyAgICAgICAgdm1hID0gZmlu ZF92bWEoY3VycmVudC0+bW0sIHN0YXJ0KTsKKysgICAgICAgIGlmICghdm1hKSB7CisrCSAgICBu dl9tbWFwX3JlYWRfdW5sb2NrKGN1cnJlbnQtPm1tKTsKKysJICAgIHN0YXR1cyA9IE5WX0VSUl9J TlZBTElEX0FSR1VNRU5UOworKwkgICAgZ290byBmYWlsOworKwl9CisrCisrICAgICAgICB2bWFz W2ldID0gdm1hOworKyAgICAgICAgc3RhcnQgPSAoc3RhcnQgKyBQQUdFX1NJWkUpICYgUEFHRV9N QVNLOworKyAgICB9CisrICAgIG52X21tYXBfcmVhZF91bmxvY2soY3VycmVudC0+bW0pOworKyNl bmRpZgorICAgICBmb3IgKGkgPSAwOyBpIDwgbnVtX3BhZ2VzOyBpKyspIHsKKyAgICAgICAgIGlm IChwYWdlX2NvdW50KCgqcGFnZXMpW2ldKSA+IE1BWF9QQUdFX0NPVU5UIHx8IHV2bV9maWxlX2lz X252aWRpYV91dm0odm1hc1tpXS0+dm1fZmlsZSkpIHsKKyAgICAgICAgICAgICBzdGF0dXMgPSBO Vl9FUlJfSU5WQUxJRF9BUkdVTUVOVDsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzkwL2Zp bGVzL2xpbnV4LTYuNS14ODYucGF0Y2ggYi9zcmNwa2dzL252aWRpYTM5MC9maWxlcy9saW51eC02 LjUteDg2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjdm MDYzNWRjZWU0YzYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL252aWRpYTM5MC9maWxlcy9s aW51eC02LjUteDg2LnBhdGNoCkBAIC0wLDAgKzEsMzI3IEBACitkaWZmIC0taWdub3JlLXNwYWNl LWNoYW5nZSAtLXVuaWZpZWQgLS1yZWN1cnNpdmUgLS1uby1kZXJlZmVyZW5jZSBhL2NvbW1vbi9p bmMvbnYtbW0uaCBiL2NvbW1vbi9pbmMvbnYtbW0uaAorLS0tIGEvY29tbW9uL2luYy9udi1tbS5o CTIwMjItMTAtMTIgMDY6MzA6MjYuMDAwMDAwMDAwIC0wMzAwCisrKysgYi9jb21tb24vaW5jL252 LW1tLmgJMjAyMy0wOS0wMiAxNTozOTozNS4zNzY1MjAwNzQgLTAzMDAKK0BAIC03Nyw3MSArNzcs MTQgQEAKKyAgICAgI2lmIGRlZmluZWQoTlZfR0VUX1VTRVJfUEFHRVNfSEFTX1dSSVRFX0FORF9G T1JDRV9BUkdTKQorICAgICAgICAgI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFUyBnZXRfdXNlcl9w YWdlcworICAgICAjZWxzZQorKwkjaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19EUk9QUEVE X1ZNQSkKKyAgICAgICAgICNpbmNsdWRlIDxsaW51eC9tbS5oPgorIAorICAgICAgICAgc3RhdGlj IGlubGluZSBsb25nIE5WX0dFVF9VU0VSX1BBR0VTKHVuc2lnbmVkIGxvbmcgc3RhcnQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBu cl9wYWdlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgd3JpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg aW50IGZvcmNlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0cnVjdCBwYWdlICoqcGFnZXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3RydWN0IHZtX2FyZWFfc3RydWN0ICoqdm1hcykKKy0gICAgICAgIHsKKy0g ICAgICAgICAgICB1bnNpZ25lZCBpbnQgZmxhZ3MgPSAwOworLQorLSAgICAgICAgICAgIGlmICh3 cml0ZSkKKy0gICAgICAgICAgICAgICAgZmxhZ3MgfD0gRk9MTF9XUklURTsKKy0gICAgICAgICAg ICBpZiAoZm9yY2UpCistICAgICAgICAgICAgICAgIGZsYWdzIHw9IEZPTExfRk9SQ0U7CistCist ICAgICAgICAgICAgcmV0dXJuIGdldF91c2VyX3BhZ2VzKHN0YXJ0LCBucl9wYWdlcywgZmxhZ3Ms IHBhZ2VzLCB2bWFzKTsKKy0gICAgICAgIH0KKy0gICAgI2VuZGlmCistI2VuZGlmCistCistLyoK Ky0gKiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSB3YXMgYWRkZWQgYnkgY29tbWl0IDFlOTg3Nzkw MmRjNworLSAqICgibW0vZ3VwOiBJbnRyb2R1Y2UgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkiKSBp biB2NC42ICgyMDE2LTAyLTEyKS4KKy0gKgorLSAqIFRoZSB2ZXJ5IG5leHQgY29tbWl0IGNkZTcw MTQwZmVkOCAoIm1tL2d1cDogT3ZlcmxvYWQgZ2V0X3VzZXJfcGFnZXMoKQorLSAqIGZ1bmN0aW9u cyIpIGRlcHJlY2F0ZWQgdGhlIDgtYXJndW1lbnQgdmVyc2lvbiBvZiBnZXRfdXNlcl9wYWdlcyBm b3IgdGhlCistICogbm9uLXJlbW90ZSBjYXNlIChjYWxsaW5nIGdldF91c2VyX3BhZ2VzIHdpdGgg Y3VycmVudCBhbmQgY3VycmVudC0+bW0pLgorLSAqCistICogVGhlIGd1aWRlbGluZXMgYXJlOiBj YWxsIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URSBpZiB5b3UgbmVlZCB0aGUgOC1hcmd1bWVudAor LSAqIHZlcnNpb24gdGhhdCB1c2VzIHNvbWV0aGluZyBvdGhlciB0aGFuIGN1cnJlbnQgYW5kIGN1 cnJlbnQtPm1tLiBVc2UKKy0gKiBOVl9HRVRfVVNFUl9QQUdFUyBpZiB5b3UgYXJlIHJlZmVyaW5n IHRvIGN1cnJlbnQgYW5kIGN1cnJlbnQtPm1tLgorLSAqCistICogTm90ZSB0aGF0IGdldF91c2Vy X3BhZ2VzX3JlbW90ZSgpIHJlcXVpcmVzIHRoZSBjYWxsZXIgdG8gaG9sZCBhIHJlZmVyZW5jZSBv bgorLSAqIHRoZSB0YXNrX3N0cnVjdCAoaWYgbm9uLU5VTEwgYW5kIGlmIHRoaXMgQVBJIGhhcyB0 c2sgYXJndW1lbnQpIGFuZCB0aGUgbW1fc3RydWN0LgorLSAqIFRoaXMgd2lsbCBhbHdheXMgYmUg dHJ1ZSB3aGVuIHVzaW5nIGN1cnJlbnQgYW5kIGN1cnJlbnQtPm1tLiBJZiB0aGUga2VybmVsIHBh c3NlcworLSAqIHRoZSBkcml2ZXIgYSB2bWEgdmlhIGRyaXZlciBjYWxsYmFjaywgdGhlIGtlcm5l bCBob2xkcyBhIHJlZmVyZW5jZSBvbiB2bWEtPnZtX21tCistICogb3ZlciB0aGF0IGNhbGxiYWNr LgorLSAqCistICogZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgd3JpdGUvZm9yY2UgcGFyYW1ldGVy cyB3ZXJlIHJlcGxhY2VkCistICogd2l0aCBndXBfZmxhZ3MgYnkgY29tbWl0IDliZWFlMWVhODkz MCAoIm1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpCistICogd3JpdGUvZm9yY2Ug cGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncyIpIGluIHY0LjkgKDIwMTYtMTAtMTMpLgorLSAqCist ICogZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgYWRkZWQgJ2xvY2tlZCcgcGFyYW1ldGVyIGJ5IGNv bW1pdCA1YjU2ZDQ5ZmMzMWQKKy0gKiAoIm1tOiBhZGQgbG9ja2VkIHBhcmFtZXRlciB0byBnZXRf dXNlcl9wYWdlc19yZW1vdGUoKSIpIGluCistICogdjQuMTAgKDIwMTYtMTItMTQpLgorLSAqCist ICogZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgcmVtb3ZlZCAndHNrJyBwYXJhbWV0ZXIgYnkKKy0g KiBjb21taXQgNjQwMTlhMmU0NjdhICgibW0vZ3VwOiByZW1vdmUgdGFza19zdHJ1Y3QgcG9pbnRl ciBmb3IKKy0gKiBhbGwgZ3VwIGNvZGUiKSBpbiB2NS45LXJjMSAoMjAyMC0wOC0xMSkuCistICoK Ky0gKi8KKy0KKy0jaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfUFJFU0VOVCkK Ky0gICAgI2lmIGRlZmluZWQoTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX0hBU19XUklURV9BTkRf Rk9SQ0VfQVJHUykKKy0gICAgICAgICNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFICAg IGdldF91c2VyX3BhZ2VzX3JlbW90ZQorLSAgICAjZWxzZQorLSAgICAgICAgc3RhdGljIGlubGlu ZSBsb25nIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URShzdHJ1Y3QgdGFza19zdHJ1Y3QgKnRzaywK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ry dWN0IG1tX3N0cnVjdCAqbW0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbnJfcGFnZXMs CistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCB3cml0ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaW50IGZvcmNlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzdHJ1Y3QgcGFnZSAqKnBhZ2VzLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKip2 bWFzKQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3QgcGFnZSAqKnBhZ2VzKQorICAgICAgICAgeworICAgICAgICAgICAgIHVuc2lnbmVkIGlu dCBmbGFncyA9IDA7CisgCitAQCAtMTUwLDM0ICs5MywxMiBAQAorICAgICAgICAgICAgIGlmIChm b3JjZSkKKyAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gRk9MTF9GT1JDRTsKKyAKKy0gICAgICAg ICNpZiBkZWZpbmVkKE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9IQVNfTE9DS0VEX0FSRykKKy0g ICAgICAgICAgICAjaWYgZGVmaW5lZCAoTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX0hBU19UU0tf QVJHKQorLSAgICAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdlc19yZW1vdGUodHNrLCBt bSwgc3RhcnQsIG5yX3BhZ2VzLCBmbGFncywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHBhZ2VzLCB2bWFzLCBOVUxMKTsKKy0gICAgICAgICAgICAjZWxzZQor LSAgICAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdlc19yZW1vdGUobW0sIHN0YXJ0LCBu cl9wYWdlcywgZmxhZ3MsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwYWdlcywgdm1hcywgTlVMTCk7CistICAgICAgICAgICAgI2VuZGlmCistCistICAgICAg ICAjZWxzZQorLQorLSAgICAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdlc19yZW1vdGUo dHNrLCBtbSwgc3RhcnQsIG5yX3BhZ2VzLCBmbGFncywKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHBhZ2VzLCB2bWFzKTsKKy0KKy0gICAgICAgICNlbmRpZgor LQorKyAgICAgICAgICAgICAgICByZXR1cm4gZ2V0X3VzZXJfcGFnZXMoc3RhcnQsIG5yX3BhZ2Vz LCBmbGFncywgcGFnZXMpOworICAgICAgICAgfQorLSAgICAjZW5kaWYKKy0jZWxzZQorLSAgICAj aWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19IQVNfV1JJVEVfQU5EX0ZPUkNFX0FSR1MpCist ICAgICAgICAjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URSAgICBOVl9HRVRfVVNFUl9Q QUdFUworICAgICAjZWxzZQorICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L21tLmg+CistICAgICAg ICAjaW5jbHVkZSA8bGludXgvc2NoZWQuaD4KKyAKKy0gICAgICAgIHN0YXRpYyBpbmxpbmUgbG9u ZyBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEUoc3RydWN0IHRhc2tfc3RydWN0ICp0c2ssCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBt bV9zdHJ1Y3QgKm1tLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0LAorKyAgICAgICAgICAgIHN0YXRpYyBpbmxp bmUgbG9uZyBOVl9HRVRfVVNFUl9QQUdFUyh1bnNpZ25lZCBsb25nIHN0YXJ0LAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n IG5yX3BhZ2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpbnQgd3JpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGludCBmb3JjZSwKK0BAIC0xOTEsMTIgKzExMiwxMiBAQAorICAgICAg ICAgICAgIGlmIChmb3JjZSkKKyAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gRk9MTF9GT1JDRTsK KyAKKy0gICAgICAgICAgICByZXR1cm4gZ2V0X3VzZXJfcGFnZXModHNrLCBtbSwgc3RhcnQsIG5y X3BhZ2VzLCBmbGFncywgcGFnZXMsIHZtYXMpOworKyAgICAgICAgICAgICAgICByZXR1cm4gZ2V0 X3VzZXJfcGFnZXMoc3RhcnQsIG5yX3BhZ2VzLCBmbGFncywgcGFnZXMsIHZtYXMpOworICAgICAg ICAgfQorICAgICAjZW5kaWYKKysgICAgI2VuZGlmCisgI2VuZGlmCisgCistCisgLyoKKyAgKiBU aGUgLnZpcnR1YWxfYWRkcmVzcyBmaWVsZCB3YXMgZWZmZWN0aXZlbHkgcmVuYW1lZCB0byAuYWRk cmVzcywgYnkgdGhlc2UKKyAgKiB0d28gY29tbWl0czoKK2RpZmYgLS1pZ25vcmUtc3BhY2UtY2hh bmdlIC0tdW5pZmllZCAtLXJlY3Vyc2l2ZSAtLW5vLWRlcmVmZXJlbmNlIGEvY29uZnRlc3Quc2gg Yi9jb25mdGVzdC5zaAorLS0tIGEvY29uZnRlc3Quc2gJMjAyMi0xMC0xMSAxMzowMDo1MC4wMDAw MDAwMDAgLTAzMDAKKysrKyBiL2NvbmZ0ZXN0LnNoCTIwMjMtMDktMDIgMTU6NDA6NDkuNDYwMjYx NDAzIC0wMzAwCitAQCAtMzA1MSw3ICszMDUxLDYgQEAKKyAgICAgICAgICAgICAjIHdyaXRlIGFu ZCBmb3JjZSBwYXJhbWV0ZXJzIEFORCB0aGF0IGd1cCBoYXMgdGFza19zdHJ1Y3QgYW5kCisgICAg ICAgICAgICAgIyBtbV9zdHJ1Y3QgYXMgaXRzIGZpcnN0IGFyZ3VtZW50cy4KKyAgICAgICAgICAg ICAjIFJldHVybiBpZiBhdmFpbGFibGUuCistICAgICAgICAgICAgIyBGYWxsIHRocm91Z2ggdG8g ZGVmYXVsdCBjYXNlIGlmIGFic2VudC4KKyAKKyAgICAgICAgICAgICBlY2hvICIkQ09ORlRFU1Rf UFJFQU1CTEUKKyAgICAgICAgICAgICAjaW5jbHVkZSA8bGludXgvbW0uaD4KK0BAIC0zMDc1LDk5 ICszMDc0LDE2IEBACisgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgIGZpCisg CistICAgICAgICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19IQVNfV1JJVEVf QU5EX0ZPUkNFX0FSR1MiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAg ICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19IQVNfVEFTS19TVFJVQ1QiIHwgYXBw ZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistCistICAgICAgICAgICAgcmV0dXJuCistICAgICAg ICA7OworLQorLSAgICAgICAgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKQorLSAgICAgICAgICAgICMK Ky0gICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUgZnVuY3Rpb24gZ2V0X3VzZXJfcGFnZXNf cmVtb3RlKCkgaXMKKy0gICAgICAgICAgICAjIHByZXNlbnQgYW5kIGhhcyB3cml0ZS9mb3JjZS9s b2NrZWQvdHNrIHBhcmFtZXRlcnMuCistICAgICAgICAgICAgIworLSAgICAgICAgICAgICMgZ2V0 X3VzZXJfcGFnZXNfcmVtb3RlKCkgd2FzIGFkZGVkIGJ5OgorLSAgICAgICAgICAgICMgICAyMDE2 IEZlYiAxMjogMWU5ODc3OTAyZGM3ZTExZDJiZTAzODM3MWM2ZmJmMmRmY2Q0NjlkNworLSAgICAg ICAgICAgICMKKy0gICAgICAgICAgICAjIGdldF91c2VyX3BhZ2VzW19yZW1vdGVdKCkgd3JpdGUv Zm9yY2UgcGFyYW1ldGVycworLSAgICAgICAgICAgICMgcmVwbGFjZWQgd2l0aCBndXBfZmxhZ3M6 CistICAgICAgICAgICAgIyAgIDIwMTYgT2N0IDEyOiA3NjhhZTMwOWE5NjEwM2VkMDJlYjFlMTEx ZTgzOGM4Nzg1NGQ4YjUxCistICAgICAgICAgICAgIyAgIDIwMTYgT2N0IDEyOiA5YmVhZTFlYTg5 MzA1YTk2NjdjZWFhYjZkMGJmNDZhMDQ1YWQ3MWU3CistICAgICAgICAgICAgIworLSAgICAgICAg ICAgICMgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgYWRkZWQgJ2xvY2tlZCcgcGFyYW1ldGVyCist ICAgICAgICAgICAgIyAgIDIwMTYgRGVjIDE0OjViNTZkNDlmYzMxZGJiMDQ4N2UxNGVhZDc5MGZj ODFjYTlmYjJjOTkKKy0gICAgICAgICAgICAjCistICAgICAgICAgICAgIyBnZXRfdXNlcl9wYWdl c19yZW1vdGUoKSByZW1vdmVkICd0c2snIHBhcmFtZXRlciBieQorLSAgICAgICAgICAgICMgY29t bWl0IDY0MDE5YTJlNDY3YSAoIm1tL2d1cDogcmVtb3ZlIHRhc2tfc3RydWN0IHBvaW50ZXIgZm9y CistICAgICAgICAgICAgIyBhbGwgZ3VwIGNvZGUiKSBpbiB2NS45LXJjMSAoMjAyMC0wOC0xMSku CistICAgICAgICAgICAgIworLSAgICAgICAgICAgICMgY29uZnRlc3QgIzE6IGNoZWNrIGlmIGdl dF91c2VyX3BhZ2VzX3JlbW90ZSgpIGlzIGF2YWlsYWJsZQorLSAgICAgICAgICAgICMgcmV0dXJu IGlmIG5vdCBhdmFpbGFibGUuCistICAgICAgICAgICAgIyBGYWxsIHRocm91Z2ggdG8gY29uZnRl c3QgIzIgaWYgaXQgaXMgcHJlc2VudAorLQorLSAgICAgICAgICAgIGVjaG8gIiRDT05GVEVTVF9Q UkVBTUJMRQorLSAgICAgICAgICAgICNpbmNsdWRlIDxsaW51eC9tbS5oPgorLSAgICAgICAgICAg IHZvaWQgY29uZnRlc3RfZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKHZvaWQpIHsKKy0gICAgICAgICAg ICAgICAgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCk7CistICAgICAgICAgICAgfSIgPiBjb25mdGVz dCQkLmMKKy0KKy0gICAgICAgICAgICAkQ0MgJENGTEFHUyAtYyBjb25mdGVzdCQkLmMgPiAvZGV2 L251bGwgMj4mMQorLSAgICAgICAgICAgIHJtIC1mIGNvbmZ0ZXN0JCQuYworLQorLSAgICAgICAg ICAgIGlmIFsgLWYgY29uZnRlc3QkJC5vIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgZWNobyAi I3VuZGVmIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9QUkVTRU5UIiB8IGFwcGVuZF9jb25mdGVz dCAiZnVuY3Rpb25zIgorLSAgICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VUX1VTRVJf UEFHRVNfUkVNT1RFX0hBU19UU0tfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rpb25zIgor LSAgICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX0hB U19XUklURV9BTkRfRk9SQ0VfQVJHUyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0g ICAgICAgICAgICAgICAgZWNobyAiI3VuZGVmIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9IQVNf TE9DS0VEX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0gICAgICAgICAgICAg ICAgcm0gLWYgY29uZnRlc3QkJC5vCistICAgICAgICAgICAgICAgIHJldHVybgorLSAgICAgICAg ICAgIGZpCistCistICAgICAgICAgICAgIyBjb25mdGVzdCAjMjogY2hlY2sgaWYgZ2V0X3VzZXJf cGFnZXNfcmVtb3RlKCkgaGFzIHdyaXRlIGFuZAorLSAgICAgICAgICAgICMgZm9yY2UgYXJndW1l bnRzLiBSZXR1cm4gaWYgdGhlc2UgYXJndW1lbnRzIGFyZSBwcmVzZW50CistICAgICAgICAgICAg IyBGYWxsIHRocm91Z2ggdG8gY29uZnRlc3QgIzMgaWYgdGhlc2UgYXJncyBhcmUgYWJzZW50Lgor LSAgICAgICAgICAgIGVjaG8gIiNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfUkVNT1RFX1BSRVNF TlQiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgZWNobyAiJENP TkZURVNUX1BSRUFNQkxFCistICAgICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L21tLmg+CistICAg ICAgICAgICAgbG9uZyBnZXRfdXNlcl9wYWdlc19yZW1vdGUoc3RydWN0IHRhc2tfc3RydWN0ICp0 c2ssCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG1tX3N0 cnVjdCAqbW0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgbG9uZyBzdGFydCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBsb25nIG5yX3BhZ2VzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCB3cml0ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgZm9yY2UsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ry dWN0IHBhZ2UgKipwYWdlcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKip2bWFzKSB7CistICAgICAgICAgICAgICAgIHJldHVy biAwOworLSAgICAgICAgICAgIH0iID4gY29uZnRlc3QkJC5jCistCistICAgICAgICAgICAgJEND ICRDRkxBR1MgLWMgY29uZnRlc3QkJC5jID4gL2Rldi9udWxsIDI+JjEKKy0gICAgICAgICAgICBy bSAtZiBjb25mdGVzdCQkLmMKKy0KKy0gICAgICAgICAgICBpZiBbIC1mIGNvbmZ0ZXN0JCQubyBd OyB0aGVuCistICAgICAgICAgICAgICAgIGVjaG8gIiNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNf UkVNT1RFX0hBU19UU0tfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rpb25zIgorLSAgICAg ICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9IQVNfV1JJ VEVfQU5EX0ZPUkNFX0FSR1MiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAg ICAgICAgICAgIGVjaG8gIiN1bmRlZiBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfSEFTX0xPQ0tF RF9BUkciIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCistICAgICAgICAgICAgICAgIHJt IC1mIGNvbmZ0ZXN0JCQubworLSAgICAgICAgICAgICAgICByZXR1cm4KKy0gICAgICAgICAgICBm aQorLQorLSAgICAgICAgICAgIGVjaG8gIiN1bmRlZiBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVf SEFTX1dSSVRFX0FORF9GT1JDRV9BUkdTIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rpb25zIgor KyAgICAgICAgICAgICMgQ29uZnRlc3QgIzQ6IGNoZWNrIGlmIHZtYSBhcmcgd2FzIGRyb3BwZWQK KysgICAgICAgICAgICAjIFJldHVybiBpZiBhdmFpbGFibGUuCisrICAgICAgICAgICAgIyBGYWxs IHRocm91Z2ggdG8gZGVmYXVsdCBjYXNlIGlmIGFic2VudC4KKyAKKy0gICAgICAgICAgICAjCist ICAgICAgICAgICAgIyBjb25mdGVzdCAjMzogY2hlY2sgaWYgZ2V0X3VzZXJfcGFnZXNfcmVtb3Rl KCkgaGFzIGxvY2tlZCBhcmd1bWVudAorLSAgICAgICAgICAgICMgUmV0dXJuIGlmIHRoZXNlIGFy Z3VtZW50cyBhcmUgcHJlc2VudC4gRmFsbCB0aHJvdWdoIHRvIGNvbmZ0ZXN0ICM0CistICAgICAg ICAgICAgIyBpZiB0aGVzZSBhcmdzIGFyZSBhYnNlbnQuCistICAgICAgICAgICAgIworICAgICAg ICAgICAgIGVjaG8gIiRDT05GVEVTVF9QUkVBTUJMRQorICAgICAgICAgICAgICNpbmNsdWRlIDxs aW51eC9tbS5oPgorLSAgICAgICAgICAgIGxvbmcgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKHN0cnVj dCB0YXNrX3N0cnVjdCAqdHNrLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQsCisrICAgICAgICAgICAgbG9uZyBnZXRfdXNl cl9wYWdlcyh1bnNpZ25lZCBsb25nIHN0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbnJfcGFnZXMsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGd1cF9mbGFncywKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcGFnZSAqKnBhZ2VzLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAq KnZtYXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpsb2Nr ZWQpIHsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYWdlICoqcGFn ZXMpIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgfSIgPiBjb25m dGVzdCQkLmMKKyAKK0BAIC0zMTc1LDQwICszMDkxLDE3IEBACisgICAgICAgICAgICAgcm0gLWYg Y29uZnRlc3QkJC5jCisgCisgICAgICAgICAgICAgaWYgWyAtZiBjb25mdGVzdCQkLm8gXTsgdGhl bgorLSAgICAgICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9U RV9IQVNfVFNLX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0gICAgICAgICAg ICAgICAgZWNobyAiI2RlZmluZSBOVl9HRVRfVVNFUl9QQUdFU19SRU1PVEVfSEFTX0xPQ0tFRF9B UkciIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCisrICAgICAgICAgICAgICAgIGVjaG8g IiNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfRFJPUFBFRF9WTUEiIHwgYXBwZW5kX2NvbmZ0ZXN0 ICJmdW5jdGlvbnMiCisrICAgICAgICAgICAgICAgIGVjaG8gIiN1bmRlZiBOVl9HRVRfVVNFUl9Q QUdFU19IQVNfV1JJVEVfQU5EX0ZPUkNFX0FSR1MiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlv bnMiCisrICAgICAgICAgICAgICAgIGVjaG8gIiN1bmRlZiBOVl9HRVRfVVNFUl9QQUdFU19IQVNf VEFTS19TVFJVQ1QiIHwgYXBwZW5kX2NvbmZ0ZXN0ICJmdW5jdGlvbnMiCisgICAgICAgICAgICAg ICAgIHJtIC1mIGNvbmZ0ZXN0JCQubworICAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAg ICAgICBmaQorIAorLSAgICAgICAgICAgICMKKy0gICAgICAgICAgICAjIGNvbmZ0ZXN0ICM0OiBj aGVjayBpZiBnZXRfdXNlcl9wYWdlc19yZW1vdGUoKSBkb2VzIG5vdCB0YWtlCistICAgICAgICAg ICAgIyB0c2sgYXJndW1lbnQuCistICAgICAgICAgICAgIworLSAgICAgICAgICAgIGVjaG8gIiRD T05GVEVTVF9QUkVBTUJMRQorLSAgICAgICAgICAgICNpbmNsdWRlIDxsaW51eC9tbS5oPgorLSAg ICAgICAgICAgIGxvbmcgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKHN0cnVjdCBtbV9zdHJ1Y3QgKm1t LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg c3RhcnQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg bG9uZyBucl9wYWdlcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBpbnQgZ3VwX2ZsYWdzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBwYWdlICoqcGFnZXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3RydWN0IHZtX2FyZWFfc3RydWN0ICoqdm1hcywKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmxvY2tlZCkgeworLSAgICAgICAgICAgICAg ICByZXR1cm4gMDsKKy0gICAgICAgICAgICB9IiA+IGNvbmZ0ZXN0JCQuYworLQorLSAgICAgICAg ICAgICRDQyAkQ0ZMQUdTIC1jIGNvbmZ0ZXN0JCQuYyA+IC9kZXYvbnVsbCAyPiYxCistICAgICAg ICAgICAgcm0gLWYgY29uZnRlc3QkJC5jCistCistICAgICAgICAgICAgaWYgWyAtZiBjb25mdGVz dCQkLm8gXTsgdGhlbgorLSAgICAgICAgICAgICAgICBlY2hvICIjdW5kZWYgTlZfR0VUX1VTRVJf UEFHRVNfUkVNT1RFX0hBU19UU0tfQVJHIiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rpb25zIgor LSAgICAgICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9I QVNfTE9DS0VEX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0gICAgICAgICAg ICAgICAgcm0gLWYgY29uZnRlc3QkJC5vCistICAgICAgICAgICAgZWxzZQorKyAgICAgICAgICAg IGVjaG8gIiNkZWZpbmUgTlZfR0VUX1VTRVJfUEFHRVNfSEFTX1dSSVRFX0FORF9GT1JDRV9BUkdT IiB8IGFwcGVuZF9jb25mdGVzdCAiZnVuY3Rpb25zIgorKyAgICAgICAgICAgIGVjaG8gIiNkZWZp bmUgTlZfR0VUX1VTRVJfUEFHRVNfSEFTX1RBU0tfU1RSVUNUIiB8IGFwcGVuZF9jb25mdGVzdCAi ZnVuY3Rpb25zIgorIAorLSAgICAgICAgICAgICAgICBlY2hvICIjZGVmaW5lIE5WX0dFVF9VU0VS X1BBR0VTX1JFTU9URV9IQVNfVFNLX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIK Ky0gICAgICAgICAgICAgICAgZWNobyAiI3VuZGVmIE5WX0dFVF9VU0VSX1BBR0VTX1JFTU9URV9I QVNfTE9DS0VEX0FSRyIgfCBhcHBlbmRfY29uZnRlc3QgImZ1bmN0aW9ucyIKKy0gICAgICAgICAg ICBmaQorKyAgICAgICAgICAgIHJldHVybgorICAgICAgICAgOzsKKyAKKyAgICAgICAgIHVzbGVl cF9yYW5nZSkKK2RpZmYgLS1pZ25vcmUtc3BhY2UtY2hhbmdlIC0tdW5pZmllZCAtLXJlY3Vyc2l2 ZSAtLW5vLWRlcmVmZXJlbmNlIGEvbnZpZGlhL29zLW1sb2NrLmMgYi9udmlkaWEvb3MtbWxvY2su YworLS0tIGEvbnZpZGlhL29zLW1sb2NrLmMJMjAyMi0xMC0xMiAwNjozMDoyNi4wMDAwMDAwMDAg LTAzMDAKKysrKyBiL252aWRpYS9vcy1tbG9jay5jCTIwMjMtMDktMDIgMTU6NDY6NDMuMTA4NzAy Mjg1IC0wMzAwCitAQCAtMTI3LDggKzEyNywxMyBAQAorICAgICB9CisgCisgICAgIG52X21tYXBf cmVhZF9sb2NrKG1tKTsKKysjaWYgZGVmaW5lZChOVl9HRVRfVVNFUl9QQUdFU19EUk9QUEVEX1ZN QSkKKysgICAgcmV0ID0gTlZfR0VUX1VTRVJfUEFHRVMoKHVuc2lnbmVkIGxvbmcpYWRkcmVzcywK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZV9jb3VudCwgd3JpdGUsIGZvcmNlLCB1 c2VyX3BhZ2VzKTsKKysjZWxzZQorICAgICByZXQgPSBOVl9HRVRfVVNFUl9QQUdFUygodW5zaWdu ZWQgbG9uZylhZGRyZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlX2NvdW50 LCB3cml0ZSwgZm9yY2UsIHVzZXJfcGFnZXMsIE5VTEwpOworKyNlbmRpZgorICAgICBudl9tbWFw X3JlYWRfdW5sb2NrKG1tKTsKKyAgICAgcGlubmVkID0gcmV0OworIAorZGlmZiAtLWlnbm9yZS1z cGFjZS1jaGFuZ2UgLS11bmlmaWVkIC0tcmVjdXJzaXZlIC0tbm8tZGVyZWZlcmVuY2UgYS9udmlk aWEtZHJtL252aWRpYS1kcm0tbGludXguYyBiL252aWRpYS1kcm0vbnZpZGlhLWRybS1saW51eC5j CistLS0gYS9udmlkaWEtZHJtL252aWRpYS1kcm0tbGludXguYwkyMDIyLTEwLTEyIDA2OjMwOjMx LjAwMDAwMDAwMCAtMDMwMAorKysrIGIvbnZpZGlhLWRybS9udmlkaWEtZHJtLWxpbnV4LmMJMjAy My0wOS0wMiAxNTo0NDozNy42MDE0MzI3NTIgLTAzMDAKK0BAIC0xMTQsOSArMTE0LDEzIEBACisg ICAgIH0KKyAKKyAgICAgbnZfbW1hcF9yZWFkX2xvY2sobW0pOworLQorKyNpZiBkZWZpbmVkKE5W X0dFVF9VU0VSX1BBR0VTX0RST1BQRURfVk1BKQorKyAgICBwYWdlc19waW5uZWQgPSBOVl9HRVRf VVNFUl9QQUdFUyhhZGRyZXNzLCBwYWdlc19jb3VudCwgd3JpdGUsIGZvcmNlLAorKwkJICAgICAg ICAgICAgICAgICAgICAgdXNlcl9wYWdlcyk7CisrI2Vsc2UKKyAgICAgcGFnZXNfcGlubmVkID0g TlZfR0VUX1VTRVJfUEFHRVMoYWRkcmVzcywgcGFnZXNfY291bnQsIHdyaXRlLCBmb3JjZSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlcl9wYWdlcywgTlVMTCk7Cisr I2VuZGlmCisgICAgIG52X21tYXBfcmVhZF91bmxvY2sobW0pOworIAorICAgICBpZiAocGFnZXNf cGlubmVkIDwgMCB8fCAodW5zaWduZWQpcGFnZXNfcGlubmVkIDwgcGFnZXNfY291bnQpIHsKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzkwL3RlbXBsYXRlIGIvc3JjcGtncy9udmlkaWEzOTAv dGVtcGxhdGUKaW5kZXggMmY1MDg4YjE0YzAxNC4uM2Q4ODhlZGIzMDViMyAxMDA2NDQKLS0tIGEv c3JjcGtncy9udmlkaWEzOTAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9udmlkaWEzOTAvdGVtcGxh dGUKQEAgLTQsNyArNCw3IEBAIF9kZXNjPSJOVklESUEgZHJpdmVycyAoR2VGb3JjZSA0MDAsIDUw MCBzZXJpZXMpIgogCiBwa2duYW1lPW52aWRpYTM5MAogdmVyc2lvbj0zOTAuMTU3Ci1yZXZpc2lv bj00CityZXZpc2lvbj01CiBtYWludGFpbmVyPSJBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRA Z21haWwuY29tPiIKIGxpY2Vuc2U9ImN1c3RvbTpOVklESUEgUHJvcHJpZXRhcnkiCiBob21lcGFn ZT0iaHR0cHM6Ly93d3cubnZpZGlhLmNvbS9lbi11cy9kcml2ZXJzL3VuaXgvIgpAQCAtNDMsMTAg KzQzLDEzIEBAIGRvX3BhdGNoKCkgewogCXBhdGNoICR7cGF0Y2hfYXJnc30gLWkgJHtGSUxFU0RJ Un0vbnZpZGlhLTQ3MHh4LWZpeC1saW51eC02LjIucGF0Y2gKIAljYXNlICIkWEJQU19UQVJHRVRf TUFDSElORSIgaW4KIAkJaTY4NikKKwkJCXBhdGNoICR7cGF0Y2hfYXJnc30gLWkgJHtGSUxFU0RJ Un0vbGludXgtNi41LXg4Ni5wYXRjaAogCQkJcGF0Y2ggJHtwYXRjaF9hcmdzfSAtaSAke0ZJTEVT RElSfS9saW51eDYuMy14ODYucGF0Y2ggOzsKIAkJeDg2XzY0KQorCQkJcGF0Y2ggJHtwYXRjaF9h cmdzfSAtaSAke0ZJTEVTRElSfS9saW51eC02LjUteDY0LnBhdGNoCiAJCQlwYXRjaCAke3BhdGNo X2FyZ3N9IC1pICR7RklMRVNESVJ9L2xpbnV4Ni4zLXg2NC5wYXRjaCA7OwogCWVzYWMKKwlwYXRj aCAke3BhdGNoX2FyZ3N9IC1pICR7RklMRVNESVJ9L2xpbnV4LTYuNC5wYXRjaAogfQogCiBwcmVf aW5zdGFsbCgpIHsK --===============3067374987630610714==--