From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21718 invoked from network); 9 Jan 2021 04:15:38 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 9 Jan 2021 04:15:38 -0000 Content-Type: multipart/mixed; boundary="===============2647910540988561021==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_nvidia340=3A_remove?= To: ml@inbox.vuxu.org From: abenson Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 09 Jan 2021 05:15:36 +0100 List-Id: Message-ID: <20210109041536.RXvwriwc-Ug6-sk3aOClc147hR9q3MR5jqND4NjwZLc@z> GitHub notification mails are now in MIME to allow UTF8. --===============2647910540988561021== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgYWJlbnNvbiBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vYWJl bnNvbi92b2lkLXBhY2thZ2VzIHJtX252aWRpYTM0MApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjcyODcKCm52aWRpYTM0MDogcmVtb3ZlCgoKQSBwYXRj aCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9w dWxsLzI3Mjg3LnBhdGNoIGlzIGF0dGFjaGVk --===============2647910540988561021== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-rm_nvidia340-27287.patch" RnJvbSA5YzVkYTBiZWMwMzU3ZTM3N2Q4Y2MyMmE5ZGEwMjFiMWJlY2EzYzc3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29t PgpEYXRlOiBTYXQsIDE5IERlYyAyMDIwIDE2OjQ5OjMyIC0wNjAwClN1YmplY3Q6IFtQQVRDSF0g bnZpZGlhMzQwOiByZW1vdmUKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMyAtCiBzcmNwa2dzL252aWRpYTM0MC1ka21zICAgICAgICAgICAgICAgICAg IHwgICAxIC0KIHNyY3BrZ3MvbnZpZGlhMzQwLWxpYnMgICAgICAgICAgICAgICAgICAgfCAgIDEg LQogc3JjcGtncy9udmlkaWEzNDAtb3BlbmNsICAgICAgICAgICAgICAgICB8ICAgMSAtCiBzcmNw a2dzL252aWRpYTM0MC9JTlNUQUxMICAgICAgICAgICAgICAgIHwgICA3IC0KIHNyY3BrZ3MvbnZp ZGlhMzQwL0lOU1RBTEwubXNnICAgICAgICAgICAgfCAgMTUgLQogc3JjcGtncy9udmlkaWEzNDAv UkVNT1ZFICAgICAgICAgICAgICAgICB8ICAgNyAtCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9r ZXJuZWwtNS44LnBhdGNoIHwgIDkyIC0tLQogc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVs LTUuOS5wYXRjaCB8IDEwNyAtLS0tCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS54 LnBhdGNoIHwgNzgxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL252aWRpYTM0MC9m aWxlcy9udmlkaWEtZ2x4LmNvbmYgIHwgICA0IC0KIHNyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRl ICAgICAgICAgICAgICAgfCAyMjMgLS0tLS0tLQogc3JjcGtncy9udmlkaWEzNDAvdXBkYXRlICAg ICAgICAgICAgICAgICB8ICAgMiAtCiBzcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUg ICAgICAgIHwgICA0ICsKIDE0IGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMTI0NCBk ZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL252aWRpYTM0MC1ka21zCiBk ZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9udmlkaWEzNDAtbGlicwogZGVsZXRlIG1vZGUgMTIw MDAwIHNyY3BrZ3MvbnZpZGlhMzQwLW9wZW5jbAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bnZpZGlhMzQwL0lOU1RBTEwKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9J TlNUQUxMLm1zZwogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL1JFTU9WRQog ZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjgucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS45 LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVs LTUueC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL252 aWRpYS1nbHguY29uZgogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL3RlbXBs YXRlCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvdXBkYXRlCgpkaWZmIC0t Z2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZGU1Y2I2NTQyNmUuLjc2 MDA0MWE2NjU3IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMK QEAgLTEzMSwxNiArMTMxLDEzIEBAIGxpYmJyY21PcGVuVkcuc28gcnBpLXVzZXJsYW5kLTIwMTgw MTAzXzIKIGxpYndheWxhbmQtZWdsLnNvLjEgd2F5bGFuZC0xLjE1LjBfNAogbGlibnZpZGlhLW1s LnNvLjEgbnZpZGlhLWxpYnMtMzQ2LjQ3XzEgaWdub3JlCiBsaWJudmlkaWEtbWwuc28uMSBudmlk aWEzMDQtbGlicy0zMDQuMDBfMSBpZ25vcmUKLWxpYm52aWRpYS1tbC5zby4xIG52aWRpYTM0MC1s aWJzLTM0MC40Nl8xIGlnbm9yZQogbGlibnZpZGlhLW1sLnNvLjEgbnZpZGlhMzkwLWxpYnMtMzkw Ljg3XzEgaWdub3JlCiBsaWJudmlkaWEtdGxzLnNvLjM0Ni40NyBudmlkaWEtbGlicy0zNDYuNDdf MSBpZ25vcmUKIGxpYm52aWRpYS1nbGNvcmUuc28uMzQ2LjQ3IG52aWRpYS1saWJzLTM0Ni40N18x IGlnbm9yZQogbGlibnZpZGlhLWd0azIuc28uMzQ2LjQ3IG52aWRpYS1ndGtsaWJzLTM0Ni40N18x IGlnbm9yZQogbGlibnZpZGlhLWd0azMuc28uMzQ2LjQ3IG52aWRpYS1ndGtsaWJzLTM0Ni40N18x IGlnbm9yZQotbGlibnZpZGlhLWdsY29yZS5zby4zNDYuNDcgbnZpZGlhMzQwLWxpYnMtMzQwLjQ2 XzEgaWdub3JlCiBsaWJudmlkaWEtZ2xjb3JlLnNvLjM5MC44NyBudmlkaWEzOTAtbGlicy0zOTAu ODdfMSBpZ25vcmUKIGxpYm52aWRpYS1nbHNpLnNvLjM0Ni43MiBudmlkaWEtbGlicy0zNDYuNzJf MSBpZ25vcmUKLWxpYm52aWRpYS1nbHNpLnNvLjM0MC4xMDcgbnZpZGlhMzQwLWxpYnMtMzQwLjEw N183IGlnbm9yZQogbGlibnZpZGlhLWZhdGJpbmFyeWxvYWRlci5zby4zOTAuMTM4IG52aWRpYTM5 MC1saWJzLTM5MC4xMzhfMSBpZ25vcmUKIGxpYm52aWRpYS1mYXRiaW5hcnlsb2FkZXIuc28uNDMw LjQwIG52aWRpYS1saWJzLTQzMC40MF8xIGlnbm9yZQogbGliZ2xhcGkuc28uMCBsaWJnbGFwaS03 LjExXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwLWRrbXMgYi9zcmNwa2dzL252aWRp YTM0MC1ka21zCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAzODNkMDY3YTcwZi4uMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAtZGttcworKysgL2Rldi9udWxsCkBAIC0x ICswLDAgQEAKLW52aWRpYTM0MApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbnZpZGlhMzQwLWxpYnMgYi9zcmNwa2dzL252aWRpYTM0MC1saWJzCmRlbGV0 ZWQgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAzODNkMDY3YTcwZi4uMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9udmlkaWEzNDAtbGlicworKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLW52aWRp YTM0MApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZp ZGlhMzQwLW9wZW5jbCBiL3NyY3BrZ3MvbnZpZGlhMzQwLW9wZW5jbApkZWxldGVkIGZpbGUgbW9k ZSAxMjAwMDAKaW5kZXggMzgzZDA2N2E3MGYuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZp ZGlhMzQwLW9wZW5jbAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLW52aWRpYTM0MApcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL0lO U1RBTEwgYi9zcmNwa2dzL252aWRpYTM0MC9JTlNUQUxMCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCA2YjA2NWJlZGI0YS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAv SU5TVEFMTAorKysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotIyBSZWdlbmVyYXRlIGluaXRy YW1mcy4KLWNhc2UgJHtBQ1RJT059IGluCi1wb3N0KQotCWVjaG8gIlJlZ2VuZXJhdGluZyBpbml0 cmFtZnMsIHBsZWFzZSB3YWl0Li4uIgotCWRyYWN1dCAtZiAtcSAtLXJlZ2VuZXJhdGUtYWxsCi0J OzsKLWVzYWMKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL0lOU1RBTEwubXNnIGIvc3Jj cGtncy9udmlkaWEzNDAvSU5TVEFMTC5tc2cKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDYzMDFjMzZlZGJlLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC9JTlNUQUxM Lm1zZworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLT4gUmVtb3ZlIGZyb20geW91ciAv ZXRjL1gxMS94b3JnLmNvbmYgYmxvY2tzIGxpa2UgdGhpczoKLQotU2VjdGlvbiAiRmlsZXMiCi0u Li4KLUVuZFNlY3Rpb24KLQotVGhpcyBpcyBrbm93biB0byBoYXBwZW4gd2hlbiB0aGUgY29uZmln dXJhdGlvbiBpcyBnZW5lcmF0ZWQgYnkgbnZpZGlhLXhjb25maWcuCi1TdWNoIGEgc2VjdGlvbiBp bnRlcmZlcmVzIHdpdGggdGhlICJGaWxlcyIgU2VjdGlvbiBwcm92aWRlZCBieSB0aGUgcGFja2Fn ZS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi0+IElmIHlvdSB3aXNoIHRvIGdvIGJhY2sg dG8gbm91dmVhdToKLQotIyB4YnBzLXJlbW92ZSBudmlkaWEzNDAgbnZpZGlhMzQwLWRrbXMKLSMg eGJwcy1pbnN0YWxsIGxpYmdsdm5kCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9SRU1P VkUgYi9zcmNwa2dzL252aWRpYTM0MC9SRU1PVkUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGU0ZDQ5NGNhMDE1Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC9SRU1P VkUKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLSMgUmVnZW5lcmF0ZSBpbml0cmFtZnMu Ci1jYXNlICR7QUNUSU9OfSBpbgotcHVyZ2UpCi0JZWNobyAiUmVnZW5lcmF0aW5nIGluaXRyYW1m cywgcGxlYXNlIHdhaXQuLi4iCi0JZHJhY3V0IC1mIC1xIC0tcmVnZW5lcmF0ZS1hbGwKLQk7Owot ZXNhYwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOC5wYXRj aCBiL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjgucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDFkOGIxYTQwZTFlLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dz L252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS44LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsOTIg KzAsMCBAQAotRnJvbSAyY2MzMzQyYjRiM2M5NmJjYzQwNjI1MTMwMTFkMzVjMDc5YjAwOWEyIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogZ3JheXNreSA8Z3JheXNreUBhcmNobGludXgu dXM+Ci1EYXRlOiBUaHUsIDIyIE9jdCAyMDIwIDA2OjU5OjU5IC0wNDAwCi1TdWJqZWN0OiBbUEFU Q0ggMi8zXSBrZXJuZWwtNS44Ci0KLWNyZWRpdDogaHR0cHM6Ly9sYXVuY2hwYWQubmV0L35rZWxl YmVrMzMzLythcmNoaXZlL3VidW50dS9udmlkaWEtbGVnYWN5LytwYWNrYWdlcwotZXh0cmFjdGVk IGZyb206IGh0dHBzOi8vbGF1bmNocGFkbGlicmFyaWFuLm5ldC80OTI0Njg1NTcvbnZpZGlhLWdy YXBoaWNzLWRyaXZlcnMtMzQwXzM0MC4xMDgtMWxtdHJmb2NhbDNfMzQwLjEwOC0ybG10cmZvY2Fs LmRpZmYuZ3oKLS0tLQotIGtlcm5lbC9udi1saW51eC5oICAgICAgICAgICAgICAgIHwgOCArKysr KysrKwotIGtlcm5lbC9udmlkaWEtbW9kdWxlcy1jb21tb24ubWsgIHwgMSArCi0ga2VybmVsL29z LW1sb2NrLmMgICAgICAgICAgICAgICAgfCA4ICsrKysrKysrCi0ga2VybmVsL3V2bS9udmlkaWFf dXZtX2xpdGVfYXBpLmMgfCA0ICsrKysKLSA0IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMo KykKLQotZGlmZiAtLWdpdCBhL2tlcm5lbC9udi1saW51eC5oIGIva2VybmVsL252LWxpbnV4LmgK LWluZGV4IDgzZTY0MzMuLmQwNTU1NTIgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvbnYtbGludXguaAot KysrIGIva2VybmVsL252LWxpbnV4LmgKLUBAIC02NjksMTEgKzY2OSwxOSBAQCBleHRlcm4gbnZf c3BpbmxvY2tfdCBrbV9sb2NrOwotICMgIGRlZmluZSBLTV9GUkVFX1JFQ09SRChhLGIsYykKLSAj ZW5kaWYKLSAKLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDgs IDApCi0rI2RlZmluZSBOVl9WTUFMTE9DKHB0ciwgc2l6ZSkgICAgICAgICAgICAgICAgICAgICBc Ci0rICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0r ICAgICAgICAocHRyKSA9IF9fdm1hbGxvYyhzaXplLCBHRlBfS0VSTkVMKTsgICAgICBcCi0rICAg ICAgICBWTV9BTExPQ19SRUNPUkQocHRyLCBzaXplLCAidm1fdm1hbGxvYyIpOyBcCi0rICAgIH0K LSsjZWxzZQotICNkZWZpbmUgTlZfVk1BTExPQyhwdHIsIHNpemUpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKLSAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAocHRyKSA9IF9fdm1hbGxvYyhzaXplLCBH RlBfS0VSTkVMLCBQQUdFX0tFUk5FTCk7ICAgXAotICAgICAgICAgVk1fQUxMT0NfUkVDT1JEKHB0 ciwgc2l6ZSwgInZtX3ZtYWxsb2MiKTsgICAgICAgICAgIFwKLSAgICAgfQotKyNlbmRpZgotIAot ICNkZWZpbmUgTlZfVkZSRUUocHRyLCBzaXplKSAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g ICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLWRp ZmYgLS1naXQgYS9rZXJuZWwvbnZpZGlhLW1vZHVsZXMtY29tbW9uLm1rIGIva2VybmVsL252aWRp YS1tb2R1bGVzLWNvbW1vbi5tawotaW5kZXggYjk0NTkxYi4uMGU0YzIyOCAxMDA2NDQKLS0tLSBh L2tlcm5lbC9udmlkaWEtbW9kdWxlcy1jb21tb24ubWsKLSsrKyBiL2tlcm5lbC9udmlkaWEtbW9k dWxlcy1jb21tb24ubWsKLUBAIC0yMjIsNiArMjIyLDcgQEAgYnVpbGQtc2FuaXR5LWNoZWNrczoK LSBkZWZpbmUgQlVJTERfTU9EVUxFX1JVTEUKLSAgJCgxKTogYnVpbGQtc2FuaXR5LWNoZWNrcyAk KDMpCi0gCUBlY2hvICJOVklESUE6IGNhbGxpbmcgS0JVSUxELi4uIjsgXAotKwl0b3VjaCAubnYt a2VybmVsLm8uY21kOyBcCi0gCSQkKE1BS0UpICJDQz0kJChDQykiIE5WX01PRFVMRV9TVUZGSVg9 JCQoc3RyaXAgJCgyKSkgJCQoS0JVSUxEX1BBUkFNUykgbW9kdWxlczsgXAotIAllY2hvICJOVklE SUE6IGxlZnQgS0JVSUxELiI7IFwKLSAJaWYgISBbIC1mICQoMSkgXTsgdGhlbiBcCi1kaWZmIC0t Z2l0IGEva2VybmVsL29zLW1sb2NrLmMgYi9rZXJuZWwvb3MtbWxvY2suYwotaW5kZXggOGExZmEy Zi4uZmM1MDU0MyAxMDA2NDQKLS0tLSBhL2tlcm5lbC9vcy1tbG9jay5jCi0rKysgYi9rZXJuZWwv b3MtbWxvY2suYwotQEAgLTQ0LDExICs0NCwxOSBAQCBSTV9TVEFUVVMgTlZfQVBJX0NBTEwgb3Nf bG9ja191c2VyX3BhZ2VzKAotICAgICAgICAgcmV0dXJuIHJtU3RhdHVzOwotICAgICB9Ci0gCi0r I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig1LCA4LCAwKQotKyAgICBk b3duX3JlYWQoJm1tLT5tbWFwX2xvY2spOwotKyAgICByZXQgPSBOVl9HRVRfVVNFUl9QQUdFUygo dW5zaWduZWQgbG9uZylhZGRyZXNzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdl X2NvdW50LCB3cml0ZSwgZm9yY2UsIHVzZXJfcGFnZXMsIE5VTEwpOwotKyAgICB1cF9yZWFkKCZt bS0+bW1hcF9sb2NrKTsKLSsgICAgcGlubmVkID0gcmV0OwotKyNlbHNlCi0gICAgIGRvd25fcmVh ZCgmbW0tPm1tYXBfc2VtKTsKLSAgICAgcmV0ID0gTlZfR0VUX1VTRVJfUEFHRVMoKHVuc2lnbmVk IGxvbmcpYWRkcmVzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZV9jb3VudCwg d3JpdGUsIGZvcmNlLCB1c2VyX3BhZ2VzLCBOVUxMKTsKLSAgICAgdXBfcmVhZCgmbW0tPm1tYXBf c2VtKTsKLSAgICAgcGlubmVkID0gcmV0OwotKyNlbmRpZgotIAotICAgICBpZiAocmV0IDwgMCkK LSAgICAgewotZGlmZiAtLWdpdCBhL2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRlX2FwaS5jIGIv a2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGVfYXBpLmMKLWluZGV4IDg0NDhlYjYuLjk3YTQ4MTgg MTAwNjQ0Ci0tLS0gYS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGl0ZV9hcGkuYwotKysrIGIva2Vy bmVsL3V2bS9udmlkaWFfdXZtX2xpdGVfYXBpLmMKLUBAIC0zMCw2ICszMCwxMCBAQAotICNpbmNs dWRlICJ1dm1fZ3B1X29wc190ZXN0cy5oIgotICNlbmRpZgotIAotKyNpZiBMSU5VWF9WRVJTSU9O X0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOCwgMCkKLSsjZGVmaW5lIG1tYXBfc2VtIG1tYXBf bG9jawotKyNlbmRpZgotKwotIC8vCi0gLy8gbnZpZGlhX3V2bV9saXRlX2FwaS5jCi0gLy8KLS0t IAotMi4yOS4wCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01 LjkucGF0Y2ggYi9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS45LnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkODU4NDMxNGYyNC4uMDAwMDAwMDAwMDAKLS0tIGEv c3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOS5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDEwNyArMCwwIEBACi1Gcm9tIGZlYTQwMWRmNzUwMGJmYmVhZDVhNDJiMWU3NDU2MGRiZGRm MmY1YTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBncmF5c2t5IDxncmF5c2t5QGFy Y2hsaW51eC51cz4KLURhdGU6IFRodSwgMjIgT2N0IDIwMjAgMDc6MDA6MzUgLTA0MDAKLVN1Ympl Y3Q6IFtQQVRDSCAzLzNdIGtlcm5lbC01LjkKLQotY3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20v d2FycG1lL21pbmlteXRoMi9ibG9iL21hc3Rlci9zY3JpcHQvbnZpZGlhL252aWRpYS0zNDAuMTA4 L2ZpbGVzL252aWRpYS0zNDAuMTA4LWZpeC01Ljkta2VybmVsLWNvbXBpbGUucGF0Y2gKLS0tLQot IGtlcm5lbC9udi1kcm0uYyAgICAgICAgICAgICAgIHwgOCArKysrKysrKwotIGtlcm5lbC9udi1s aW51eC5oICAgICAgICAgICAgIHwgOSArKysrKysrLS0KLSBrZXJuZWwvbnYuYyAgICAgICAgICAg ICAgICAgICB8IDQgKysrKwotIGtlcm5lbC91dm0vbnZpZGlhX3V2bV9saW51eC5oIHwgMiArKwot IDQgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlm ZiAtLWdpdCBhL2tlcm5lbC9udi1kcm0uYyBiL2tlcm5lbC9udi1kcm0uYwotaW5kZXggODVkYjA3 ZS4uZjBjMTI5OSAxMDA2NDQKLS0tLSBhL2tlcm5lbC9udi1kcm0uYwotKysrIGIva2VybmVsL252 LWRybS5jCi1AQCAtNDE1LDcgKzQxNSwxMSBAQCBzdGF0aWMgc3RydWN0IGRybV9kcml2ZXIgbnZf ZHJtX2RyaXZlciA9IHsKLSAgICAgLnNldF9idXNpZCA9IGRybV9wY2lfc2V0X2J1c2lkLAotICNl bmRpZgotIAotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOSwg MCkKLSsgICAgLmdlbV9mcmVlX29iamVjdF91bmxvY2tlZCA9IG52X2dlbV9mcmVlLAotKyNlbHNl Ci0gICAgIC5nZW1fZnJlZV9vYmplY3QgPSBudl9nZW1fZnJlZSwKLSsjZW5kaWYKLSAKLSAgICAg LnByaW1lX2hhbmRsZV90b19mZCA9IGRybV9nZW1fcHJpbWVfaGFuZGxlX3RvX2ZkLAotICAgICAu Z2VtX3ByaW1lX2V4cG9ydCA9IGRybV9nZW1fcHJpbWVfZXhwb3J0LAotQEAgLTUxMSw4ICs1MTUs MTIgQEAgUk1fU1RBVFVTIE5WX0FQSV9DQUxMIG52X2FsbG9jX29zX2Rlc2NyaXB0b3JfaGFuZGxl KAotIAotICNpZiBkZWZpbmVkKE5WX0RSTV9HRU1fT0JKRUNUX1BVVF9VTkxPQ0tFRF9QUkVTRU5U KQotICAgICBkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQoJm52X29iai0+YmFzZSk7Ci0rI2Vs c2UKLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDksIDApCi0r ICAgIGRybV9nZW1fb2JqZWN0X3B1dF9sb2NrZWQoJm52X29iai0+YmFzZSk7Ci0gI2Vsc2UKLSAg ICAgZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoJm52X29iai0+YmFzZSk7Ci0r I2VuZGlmCi0gI2VuZGlmCi0gCi0gICAgIHN0YXR1cyA9IFJNX09LOwotZGlmZiAtLWdpdCBhL2tl cm5lbC9udi1saW51eC5oIGIva2VybmVsL252LWxpbnV4LmgKLWluZGV4IGQwNTU1NTIuLjUyNGE4 ZmUgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvbnYtbGludXguaAotKysrIGIva2VybmVsL252LWxpbnV4 LmgKLUBAIC0xMzYsOCArMTM2LDEwIEBACi0gCi0gI2lmIGRlZmluZWQoTlZDUFVfWDg2XzY0KSAm JiAhZGVmaW5lZChIQVZFX0NPTVBBVF9JT0NUTCkKLSAjaW5jbHVkZSA8bGludXgvc3lzY2FsbHMu aD4gICAgICAgICAvKiBzeXNfaW9jdGwoKSAgICAgICAgICAgICAgICAgICAgICAqLwotKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTig1LCA5LCAwKQotICNpbmNsdWRlIDxs aW51eC9pb2N0bDMyLmg+ICAgICAgICAgIC8qIHJlZ2lzdGVyX2lvY3RsMzJfY29udmVyc2lvbigp ICAgICovCi0gI2VuZGlmCi0rI2VuZGlmCi0gCi0gI2lmICFkZWZpbmVkKE5WX0ZJTEVfT1BFUkFU SU9OU19IQVNfSU9DVEwpICYmIFwKLSAgICFkZWZpbmVkKE5WX0ZJTEVfT1BFUkFUSU9OU19IQVNf VU5MT0NLRURfSU9DVEwpCi1AQCAtMjI0OSwxMCArMjI1MSwxMyBAQCBzdGF0aWMgaW5saW5lIE52 VTY0IG52X25vZGVfZW5kX3BmbihpbnQgbmlkKQotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcGFnZXMsIHZtYXMsIE5VTEwpOwotIAotICAgICAgICAgI2Vsc2UK LS0KLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDksIDApCi0r ICAgICAgICAgICAgICAgcmV0dXJuIGdldF91c2VyX3BhZ2VzX3JlbW90ZShtbSwgc3RhcnQsIG5y X3BhZ2VzLCBmbGFncywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHBhZ2VzLCB2bWFzLCBOVUxMKTsKLSsjZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiBn ZXRfdXNlcl9wYWdlc19yZW1vdGUodHNrLCBtbSwgc3RhcnQsIG5yX3BhZ2VzLCBmbGFncywKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VzLCB2bWFzKTsK LS0KLSsjZW5kaWYKLSAgICAgICAgICNlbmRpZgotIAotICAgICAgICAgfQotZGlmZiAtLWdpdCBh L2tlcm5lbC9udi5jIGIva2VybmVsL252LmMKLWluZGV4IGEyMThmODMuLmJlNGUwZjggMTAwNjQ0 Ci0tLS0gYS9rZXJuZWwvbnYuYwotKysrIGIva2VybmVsL252LmMKLUBAIC0yNzg1LDcgKzI3ODUs MTEgQEAgbnZpZGlhX3Byb2JlCi0gCi0gI2lmIGRlZmluZWQoQ09ORklHX1ZHQV9BUkIpCi0gI2lm IGRlZmluZWQoVkdBX0RFRkFVTFRfREVWSUNFKQotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0g S0VSTkVMX1ZFUlNJT04oNSwgOSwgMCkKLSsgICAgdmdhX2dldChWR0FfREVGQVVMVF9ERVZJQ0Us IFZHQV9SU1JDX0xFR0FDWV9NQVNLLCAwKTsKLSsjZWxzZQotICAgICB2Z2FfdHJ5Z2V0KFZHQV9E RUZBVUxUX0RFVklDRSwgVkdBX1JTUkNfTEVHQUNZX01BU0spOwotKyNlbmRpZgotICNlbmRpZgot ICAgICB2Z2Ffc2V0X2xlZ2FjeV9kZWNvZGluZyhkZXYsIFZHQV9SU1JDX05PTkUpOwotICNlbmRp ZgotZGlmZiAtLWdpdCBhL2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saW51eC5oIGIva2VybmVsL3V2 bS9udmlkaWFfdXZtX2xpbnV4LmgKLWluZGV4IDE2MjUyMDkuLmVmYzE4MWYgMTAwNjQ0Ci0tLS0g YS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGludXguaAotKysrIGIva2VybmVsL3V2bS9udmlkaWFf dXZtX2xpbnV4LmgKLUBAIC0xNTgsOCArMTU4LDEwIEBACi0gCi0gI2lmIGRlZmluZWQoTlZDUFVf WDg2XzY0KSAmJiAhZGVmaW5lZChIQVZFX0NPTVBBVF9JT0NUTCkKLSAjaW5jbHVkZSA8bGludXgv c3lzY2FsbHMuaD4gICAgICAgICAvKiBzeXNfaW9jdGwoKSAgICAgICAgICAgICAgICAgICAgICAq LwotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTig1LCA5LCAwKQotICNp bmNsdWRlIDxsaW51eC9pb2N0bDMyLmg+ICAgICAgICAgIC8qIHJlZ2lzdGVyX2lvY3RsMzJfY29u dmVyc2lvbigpICAgICovCi0gI2VuZGlmCi0rI2VuZGlmCi0gCi0gI2lmICFkZWZpbmVkKE5WX0ZJ TEVfT1BFUkFUSU9OU19IQVNfSU9DVEwpICYmIFwKLSAgICFkZWZpbmVkKE5WX0ZJTEVfT1BFUkFU SU9OU19IQVNfVU5MT0NLRURfSU9DVEwpCi0tLSAKLTIuMjkuMAotCmRpZmYgLS1naXQgYS9zcmNw a2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS54LnBhdGNoIGIvc3JjcGtncy9udmlkaWEzNDAv ZmlsZXMva2VybmVsLTUueC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDdm NzYzYmJlMzkuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5l bC01LngucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw3ODEgKzAsMCBAQAotRnJvbSAyMTU0Y2M0 NDdhMjM3N2NmZDYwYTdiN2M1YjYxOWU2ODllYmY3MWIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQotRnJvbTogZ3JheXNreSA8Z3JheXNreUBhcmNobGludXgudXM+Ci1EYXRlOiBUaHUsIDIyIE9j dCAyMDIwIDA2OjU4OjUzIC0wNDAwCi1TdWJqZWN0OiBbUEFUQ0ggMS8zXSBrZXJuZWwtNS43Ci0K LUNvbnRhaW5zIGEgYnVuY2ggb2Ygc3R1ZmYgcmVxdWlyZWQgZm9yIHRoaW5ncyB1cCB0byA1Ljcu Ci1jcmVkaXQ6IGh0dHBzOi8vZ2l0bGFiLm1hbmphcm8ub3JnL3BhY2thZ2VzP3V0Zjg9JUUyJTlD JTkzJmZpbHRlcj1udmlkaWEtMzQweHgKLS0tLQotIGtlcm5lbC9NYWtlZmlsZSAgICAgICAgICAg ICAgfCAgIDUgKwotIGtlcm5lbC9jb25mdGVzdC5zaCAgICAgICAgICAgfCAgODEgKysrKysrKysr KysrKwotIGtlcm5lbC9ka21zLmNvbmYgICAgICAgICAgICAgfCAgIDggKy0KLSBrZXJuZWwvbnYt ZHJtLmMgICAgICAgICAgICAgIHwgMjI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystCi0ga2VybmVsL252LWxpbnV4LmggICAgICAgICAgICB8ICA0OSArKysrKysrKwotIGtlcm5l bC9udi1wcm9jZnMuYyAgICAgICAgICAgfCAgMjAgKysrCi0ga2VybmVsL252LXRpbWUuaCAgICAg ICAgICAgICB8ICAgOSArLQotIGtlcm5lbC9udi5jICAgICAgICAgICAgICAgICAgfCAgIDIgKy0K LSBrZXJuZWwvb3MtaW50ZXJmYWNlLmMgICAgICAgIHwgICA4ICstCi0ga2VybmVsL3V2bS9NYWtl ZmlsZSAgICAgICAgICB8ICAgMSArCi0ga2VybmVsL3V2bS9jb25mdGVzdC5zaCAgICAgICB8ICAg NCArCi0ga2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGUuYyB8ICAyOSArKysrLQotIDEyIGZpbGVz IGNoYW5nZWQsIDQzMSBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdp dCBhL2tlcm5lbC9NYWtlZmlsZSBiL2tlcm5lbC9NYWtlZmlsZQotaW5kZXggMTI1YTY5MC4uMjU5 NzA4MCAxMDA2NDQKLS0tLSBhL2tlcm5lbC9NYWtlZmlsZQotKysrIGIva2VybmVsL01ha2VmaWxl Ci1AQCAtMTA4LDEyICsxMDgsMTQgQEAgQ09NUElMRV9URVNUUyA9IFwKLSAJYWNxdWlyZV9jb25z b2xlX3NlbSBcCi0gCWNvbnNvbGVfbG9jayBcCi0gCWttZW1fY2FjaGVfY3JlYXRlIFwKLSsJa21l bV9jYWNoZV9jcmVhdGVfdXNlcmNvcHkgXAotIAlvdXRlcl9mbHVzaF9hbGwgXAotIAlvbl9lYWNo X2NwdSBcCi0gCXNtcF9jYWxsX2Z1bmN0aW9uIFwKLSAJbnZtYXBfc3VwcG9ydCBcCi0gCWFjcGlf ZXZhbHVhdGVfaW50ZWdlciBcCi0gCWlvcmVtYXBfY2FjaGUgXAotKwlpb3JlbWFwX25vY2FjaGUg XAotIAlpb3JlbWFwX3djIFwKLSAJcHJvY19kaXJfZW50cnkgXAotIAlJTklUX1dPUksgXAotQEAg LTEyMiw2ICsxMjQsNyBAQCBDT01QSUxFX1RFU1RTID0gXAotIAlwY2lfZG9tYWluX25yIFwKLSAJ cGNpX2RtYV9tYXBwaW5nX2Vycm9yIFwKLSAJZmlsZV9vcGVyYXRpb25zIFwKLSsJcHJvY19vcHMg XAotIAlzZ19hbGxvY190YWJsZSBcCi0gCXNnX2luaXRfdGFibGUgXAotIAlwY2lfZ2V0X2RvbWFp bl9idXNfYW5kX3Nsb3QgXAotQEAgLTE0Nyw2ICsxNTAsOCBAQCBDT01QSUxFX1RFU1RTID0gXAot IAl2bV9mYXVsdF9wcmVzZW50IFwKLSAJdm1fZmF1bHRfaGFzX2FkZHJlc3MgXAotIAlkcm1fZHJp dmVyX3VubG9hZF9oYXNfaW50X3JldHVybl90eXBlIFwKLSsJZHJtX2dldF9wY2lfZGV2IFwKLSsJ ZHJtX3BjaV9pbml0IFwKLSAJZHJtX2xlZ2FjeV9wY2lfaW5pdCBcCi0gCXRpbWVyX3NldHVwIFwK LSAJZG9fZ2V0dGltZW9mZGF5IFwKLWRpZmYgLS1naXQgYS9rZXJuZWwvY29uZnRlc3Quc2ggYi9r ZXJuZWwvY29uZnRlc3Quc2gKLWluZGV4IGI3YTg1ZjAuLmE1MjI1ZTUgMTAwNzU1Ci0tLS0gYS9r ZXJuZWwvY29uZnRlc3Quc2gKLSsrKyBiL2tlcm5lbC9jb25mdGVzdC5zaAotQEAgLTE3Niw2ICsx NzYsNyBAQCB0ZXN0X2hlYWRlcnMoKSB7Ci0gICAgIEZJTEVTPSIkRklMRVMgbGludXgva3RpbWUu aCIKLSAgICAgRklMRVM9IiRGSUxFUyBsaW51eC9maWxlLmgiCi0gCi0rICAgIEZJTEVTX0FSQ0g9 IiRGSUxFU19BUkNIIGFzbS9wZ3RhYmxlLmgiCi0gICAgIEZJTEVTX0FSQ0g9IiRGSUxFU19BUkNI IGFzbS9zZXRfbWVtb3J5LmgiCi0gCi0gICAgIHRyYW5zbGF0ZV9hbmRfZmluZF9oZWFkZXJfZmls ZXMgJEhFQURFUlMgICAgICAkRklMRVMKLUBAIC00NDAsNiArNDQxLDkgQEAgY29tcGlsZV90ZXN0 KCkgewotICAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBzZXRfbWVtb3J5X2FycmF5X3Vj KCkgZnVuY3Rpb24gaXMgcHJlc2VudC4KLSAgICAgICAgICAgICAjCi0gICAgICAgICAgICAgQ09E RT0iCi0rICAgICAgICAgICAgI2lmIGRlZmluZWQoTlZfQVNNX1BHVEFCTEVfSF9QUkVTRU5UKQot KyAgICAgICAgICAgICNpbmNsdWRlIDxhc20vcGd0YWJsZS5oPgotKyAgICAgICAgICAgICNlbmRp ZgotICAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0FTTV9TRVRfTUVNT1JZX0hfUFJFU0VOVCkK LSAgICAgICAgICAgICAjaW5jbHVkZSA8YXNtL3NldF9tZW1vcnkuaD4KLSAgICAgICAgICAgICAj ZWxzZQotQEAgLTkxNCw2ICs5MTgsMjEgQEAgY29tcGlsZV90ZXN0KCkgewotICAgICAgICAgICAg IGZpCi0gICAgICAgICA7OwotIAotKyAgICAgICAga21lbV9jYWNoZV9jcmVhdGVfdXNlcmNvcHkp Ci0rICAgICAgICAgICAgIwotKyAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBrbWVtX2Nh Y2hlX2NyZWF0ZV91c2VyY29weSBmdW5jdGlvbiBleGlzdHMuCi0rICAgICAgICAgICAgIwotKyAg ICAgICAgICAgICMgVGhpcyBmdW5jdGlvbiB3YXMgYWRkZWQgYnk6Ci0rICAgICAgICAgICAgIyAg IDIwMTctMDYtMTAgIDhlYjgyODRiNDEyOTA2MTgxMzU3YzJiMDExMGQ4NzlkNWFmOTVlNTIKLSsg ICAgICAgICAgICBDT0RFPSIKLSsgICAgICAgICAgICAjaW5jbHVkZSA8bGludXgvc2xhYi5oPgot KyAgICAgICAgICAgIHZvaWQga21lbV9jYWNoZV9jcmVhdGVfdXNlcmNvcHkodm9pZCkgewotKyAg ICAgICAgICAgICAgICBrbWVtX2NhY2hlX2NyZWF0ZV91c2VyY29weSgpOwotKyAgICAgICAgICAg IH0iCi0rCi0rICAgICAgICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENPREUiICJOVl9L TUVNX0NBQ0hFX0NSRUFURV9VU0VSQ09QWV9QUkVTRU5UIiAiIiAiZnVuY3Rpb25zIgotKyAgICAg ICAgOzsKLSsKLSAgICAgICAgIHNtcF9jYWxsX2Z1bmN0aW9uKQotICAgICAgICAgICAgICMKLSAg ICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUgc21wX2NhbGxfZnVuY3Rpb24oKSBmdW5jdGlv biBpcwotQEAgLTExODgsNiArMTIwNywyMiBAQCBjb21waWxlX3Rlc3QoKSB7Ci0gICAgICAgICAg ICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENPREUiICJOVl9JT1JFTUFQX0NBQ0hFX1BSRVNF TlQiICIiICJmdW5jdGlvbnMiCi0gICAgICAgICA7OwotIAotKyAgICAgICAgaW9yZW1hcF9ub2Nh Y2hlKQotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUgaW9y ZW1hcF9ub2NhY2hlKCkgZnVuY3Rpb24gaXMgcHJlc2VudC4KLSsgICAgICAgICAgICAjCi0rICAg ICAgICAgICAgIyBSZW1vdmVkIGJ5IGNvbW1pdCA0YmRjMGQ2NzZhNjQgKCJyZW1vdmUgaW9yZW1h cF9ub2NhY2hlIGFuZAotKyAgICAgICAgICAgICMgZGV2bV9pb3JlbWFwX25vY2FjaGUiKSBpbiB2 NS42ICgyMDIwLTAxLTA2KQotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICBDT0RFPSIKLSsg ICAgICAgICAgICAjaW5jbHVkZSA8YXNtL2lvLmg+Ci0rICAgICAgICAgICAgdm9pZCBjb25mdGVz dF9pb3JlbWFwX25vY2FjaGUodm9pZCkgewotKyAgICAgICAgICAgICAgICBpb3JlbWFwX25vY2Fj aGUoKTsKLSsgICAgICAgICAgICB9IgotKwotKyAgICAgICAgICAgIGNvbXBpbGVfY2hlY2tfY29u ZnRlc3QgIiRDT0RFIiAiTlZfSU9SRU1BUF9OT0NBQ0hFX1BSRVNFTlQiICIiICJmdW5jdGlvbnMi Ci0rICAgICAgICA7OwotKwotICAgICAgICAgaW9yZW1hcF93YykKLSAgICAgICAgICAgICAjCi0g ICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIGlvcmVtYXBfd2MoKSBmdW5jdGlvbiBpcyBw cmVzZW50LgotQEAgLTEzNzEsNiArMTQwNiwxNiBAQCBjb21waWxlX3Rlc3QoKSB7Ci0gICAgICAg ICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENPREUiICJOVl9GSUxFX09QRVJBVElPTlNf SEFTX0NPTVBBVF9JT0NUTCIgIiIgInR5cGVzIgotICAgICAgICAgOzsKLSAKLSsgICAgICAgIHBy b2Nfb3BzKQotKyAgICAgICAgICAgIENPREU9IgotKyAgICAgICAgICAgICNpbmNsdWRlIDxsaW51 eC9wcm9jX2ZzLmg+Ci0rICAgICAgICAgICAgaW50IGNvbmZ0ZXN0X3Byb2Nfb3BzKHZvaWQpIHsK LSsgICAgICAgICAgICAgICAgcmV0dXJuIG9mZnNldG9mKHN0cnVjdCBwcm9jX29wcywgcHJvY19v cGVuKTsKLSsgICAgICAgICAgICB9IgotKwotKyAgICAgICAgICAgIGNvbXBpbGVfY2hlY2tfY29u ZnRlc3QgIiRDT0RFIiAiTlZfSEFWRV9QUk9DX09QUyIgIiIgInR5cGVzIgotKyAgICAgICAgOzsK LSsKLSAgICAgICAgIHNnX2luaXRfdGFibGUpCi0gICAgICAgICAgICAgIwotICAgICAgICAgICAg ICMgRGV0ZXJtaW5lIGlmIHRoZSBzZ19pbml0X3RhYmxlKCkgZnVuY3Rpb24gaXMgcHJlc2VudC4K LUBAIC0yMDQ0LDYgKzIwODksNDIgQEAgY29tcGlsZV90ZXN0KCkgewotICAgICAgICAgICAgIGNv bXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZfRFJNX0RSSVZFUl9VTkxPQURfSEFTX0lO VF9SRVRVUk5fVFlQRSIgIiIgInR5cGVzIgotICAgICAgICAgOzsKLSAKLSsgICAgICAgIGRybV9n ZXRfcGNpX2RldikKLSsgICAgICAgICAgICAjCi0rICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYg ZHJtX2dldF9wY2lfZGV2KCkgaXMgcHJlc2VudC4KLSsgICAgICAgICAgICAjCi0rICAgICAgICAg ICAgQ09ERT0iCi0rICAgICAgICAgICAgI2lmIGRlZmluZWQoTlZfRFJNX0RSTVBfSF9QUkVTRU5U KQotKyAgICAgICAgICAgICNpbmNsdWRlIDxkcm0vZHJtUC5oPgotKyAgICAgICAgICAgICNlbmRp ZgotKwotKyAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0RSTV9EUk1fUENJX0hfUFJFU0VOVCkK LSsgICAgICAgICAgICAjaW5jbHVkZSA8ZHJtL2RybV9wY2kuaD4KLSsgICAgICAgICAgICAjZW5k aWYKLSsKLSsgICAgICAgICAgICB2b2lkIGNvbmZ0ZXN0X2RybV9sZWdhY3lfcGNpX2luaXQodm9p ZCkgewotKyAgICAgICAgICAgICAgICBkcm1fZ2V0X3BjaV9kZXYoKTsKLSsgICAgICAgICAgICB9 IgotKwotKyAgICAgICAgICAgIGNvbXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZfRFJN X0dFVF9QQ0lfREVWX1BSRVNFTlQiICIiICJmdW5jdGlvbnMiCi0rICAgICAgICA7OwotKwotKyAg ICAgICAgZHJtX3BjaV9pbml0KQotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICAjIERldGVy bWluZSBpZiBkcm1fcGNpX2luaXQoKSBpcyBwcmVzZW50LgotKyAgICAgICAgICAgICMKLSsgICAg ICAgICAgICBDT0RFPSIKLSsgICAgICAgICAgICAjaWYgZGVmaW5lZChOVl9EUk1fRFJNUF9IX1BS RVNFTlQpCi0rICAgICAgICAgICAgI2luY2x1ZGUgPGRybS9kcm1QLmg+Ci0rICAgICAgICAgICAg I2VuZGlmCi0rCi0rICAgICAgICAgICAgdm9pZCBjb25mdGVzdF9kcm1fbGVnYWN5X3BjaV9pbml0 KHZvaWQpIHsKLSsgICAgICAgICAgICAgICAgZHJtX3BjaV9pbml0KCk7Ci0rICAgICAgICAgICAg fSIKLSsKLSsgICAgICAgICAgICBjb21waWxlX2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0RS TV9QQ0lfSU5JVF9QUkVTRU5UIiAiIiAiZnVuY3Rpb25zIgotKyAgICAgICAgOzsKLSsKLSAgICAg ICAgIGRybV9sZWdhY3lfcGNpX2luaXQpCi0gICAgICAgICAgICAgIwotICAgICAgICAgICAgICMg RGV0ZXJtaW5lIGlmIGRybV9sZWdhY3lfcGNpX2luaXQoKSBpcyBwcmVzZW50LiBkcm1fcGNpX2lu aXQoKSB3YXMKLWRpZmYgLS1naXQgYS9rZXJuZWwvZGttcy5jb25mIGIva2VybmVsL2RrbXMuY29u ZgotaW5kZXggNzlhMDJhZS4uMzE0MGYwMyAxMDA2NDQKLS0tLSBhL2tlcm5lbC9ka21zLmNvbmYK LSsrKyBiL2tlcm5lbC9ka21zLmNvbmYKLUBAIC0xLDcgKzEsMTMgQEAKLStpZiBbIC14IC91c3Iv YmluL25wcm9jIF07IHRoZW4KLSsgIG51bV9jcHVfY29yZXM9JChucHJvYykKLStlbHNlCi0rICBu dW1fY3B1X2NvcmVzPTEKLStmaQotKwotIFBBQ0tBR0VfTkFNRT0ibnZpZGlhIgotIFBBQ0tBR0Vf VkVSU0lPTj0iMzQwLjEwOCIKLSBCVUlMVF9NT0RVTEVfTkFNRVswXT0iJFBBQ0tBR0VfTkFNRSIK LSBERVNUX01PRFVMRV9MT0NBVElPTlswXT0iL2tlcm5lbC9kcml2ZXJzL3ZpZGVvIgotLU1BS0Vb MF09Im1ha2UgbW9kdWxlIEtFUk5FTF9VTkFNRT0ke2tlcm5lbHZlcn0iCi0rTUFLRVswXT0ibWFr ZSAtaiRudW1fY3B1X2NvcmVzIG1vZHVsZSBLRVJORUxfVU5BTUU9JHtrZXJuZWx2ZXJ9IgotIENM RUFOPSJtYWtlIGNsZWFuIgotIEFVVE9JTlNUQUxMPSJ5ZXMiCi1kaWZmIC0tZ2l0IGEva2VybmVs L252LWRybS5jIGIva2VybmVsL252LWRybS5jCi1pbmRleCAwZDFjZGJmLi44NWRiMDdlIDEwMDY0 NAotLS0tIGEva2VybmVsL252LWRybS5jCi0rKysgYi9rZXJuZWwvbnYtZHJtLmMKLUBAIC01MCw5 ICs1MCwyMzYgQEAKLSAjaWYgZGVmaW5lZChOVl9EUk1fTEVHQUNZX1BDSV9JTklUX1BSRVNFTlQp Ci0gI2RlZmluZSBudl9kcm1fcGNpX2luaXQgZHJtX2xlZ2FjeV9wY2lfaW5pdAotICNkZWZpbmUg bnZfZHJtX3BjaV9leGl0IGRybV9sZWdhY3lfcGNpX2V4aXQKLS0jZWxzZQotKyNlbGlmIGRlZmlu ZWQoTlZfRFJNX1BDSV9JTklUX1BSRVNFTlQpCi0gI2RlZmluZSBudl9kcm1fcGNpX2luaXQgZHJt X3BjaV9pbml0Ci0gI2RlZmluZSBudl9kcm1fcGNpX2V4aXQgZHJtX3BjaV9leGl0Ci0rI2Vsc2UK LSsjaWYgZGVmaW5lZChOVl9EUk1fR0VUX1BDSV9ERVZfUFJFU0VOVCkKLSsjZGVmaW5lIG52X2Ry bV9nZXRfcGNpX2RldiBkcm1fZ2V0X3BjaV9kZXYKLSsjZWxzZQotKyNpbmNsdWRlIDxkcm0vZHJt X2FncHN1cHBvcnQuaD4KLSsKLStzdHJ1Y3QgbnZfZHJtX2FncF9oZWFkIHsKLSsgICAgc3RydWN0 IGFncF9rZXJuX2luZm8gYWdwX2luZm87Ci0rICAgIHN0cnVjdCBsaXN0X2hlYWQgbWVtb3J5Owot KyAgICB1bnNpZ25lZCBsb25nIG1vZGU7Ci0rICAgIHN0cnVjdCBhZ3BfYnJpZGdlX2RhdGEgKmJy aWRnZTsKLSsgICAgaW50IGVuYWJsZWQ7Ci0rICAgIGludCBhY3F1aXJlZDsKLSsgICAgdW5zaWdu ZWQgbG9uZyBiYXNlOwotKyAgICBpbnQgYWdwX210cnI7Ci0rICAgIGludCBjYW50X3VzZV9hcGVy dHVyZTsKLSsgICAgdW5zaWduZWQgbG9uZyBwYWdlX21hc2s7Ci0rfTsKLSsKLStzdHJ1Y3QgbnZf ZHJtX2FncF9tZW0gewotKyAgICB1bnNpZ25lZCBsb25nIGhhbmRsZTsKLSsgICAgc3RydWN0IGFn cF9tZW1vcnkgKm1lbW9yeTsKLSsgICAgdW5zaWduZWQgbG9uZyBib3VuZDsKLSsgICAgaW50IHBh Z2VzOwotKyAgICBzdHJ1Y3QgbGlzdF9oZWFkIGhlYWQ7Ci0rfTsKLSsKLSsvKgotKyAqIENvZGUg ZnJvbSBkcm1fYWdwX2luaXQvbnZfZHJtX3tmcmVlLHVuYmluZH1fYWdwCi0rICogRXh0cmFjdGVk IGZyb20gY29tbWl0OiA1YjhiOWQwYzZkMGUwZjE5OTNjNmM1NmRlYWY5NjQ2OTQyYzQ5ZDk0LCBm aWxlOiBkcml2ZXJzL2dwdS9kcm0vZHJtX2FncHN1cHBvcnQuYwotKyAqLwotK3N0cnVjdCBkcm1f YWdwX2hlYWQgKm52X2RybV9hZ3BfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotK3sKLSsg ICAgc3RydWN0IG52X2RybV9hZ3BfaGVhZCAqaGVhZCA9IE5VTEw7Ci0rCi0rICAgIGhlYWQgPSBr emFsbG9jKHNpemVvZigqaGVhZCksIEdGUF9LRVJORUwpOwotKyAgICBpZiAoIWhlYWQpCi0rICAg ICAgICByZXR1cm4gTlVMTDsKLSsgICAgaGVhZC0+YnJpZGdlID0gYWdwX2ZpbmRfYnJpZGdlKGRl di0+cGRldik7Ci0rICAgIGlmICghaGVhZC0+YnJpZGdlKSB7Ci0rICAgICAgICBoZWFkLT5icmlk Z2UgPSBhZ3BfYmFja2VuZF9hY3F1aXJlKGRldi0+cGRldik7Ci0rICAgICAgICBpZiAoIWhlYWQt PmJyaWRnZSkgewotKyAgICAgICAgICAgIGtmcmVlKGhlYWQpOwotKyAgICAgICAgICAgIHJldHVy biBOVUxMOwotKyAgICAgICAgfQotKyAgICAgICAgYWdwX2NvcHlfaW5mbyhoZWFkLT5icmlkZ2Us ICZoZWFkLT5hZ3BfaW5mbyk7Ci0rICAgICAgICBhZ3BfYmFja2VuZF9yZWxlYXNlKGhlYWQtPmJy aWRnZSk7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgICBhZ3BfY29weV9pbmZvKGhlYWQtPmJyaWRn ZSwgJmhlYWQtPmFncF9pbmZvKTsKLSsgICAgfQotKyAgICBpZiAoaGVhZC0+YWdwX2luZm8uY2hp cHNldCA9PSBOT1RfU1VQUE9SVEVEKSB7Ci0rICAgICAgICBrZnJlZShoZWFkKTsKLSsgICAgICAg IHJldHVybiBOVUxMOwotKyAgICB9Ci0rICAgIElOSVRfTElTVF9IRUFEKCZoZWFkLT5tZW1vcnkp OwotKyAgICBoZWFkLT5jYW50X3VzZV9hcGVydHVyZSA9IGhlYWQtPmFncF9pbmZvLmNhbnRfdXNl X2FwZXJ0dXJlOwotKyAgICBoZWFkLT5wYWdlX21hc2sgPSBoZWFkLT5hZ3BfaW5mby5wYWdlX21h c2s7Ci0rICAgIGhlYWQtPmJhc2UgPSBoZWFkLT5hZ3BfaW5mby5hcGVyX2Jhc2U7Ci0rICAgIHJl dHVybiAoc3RydWN0IGRybV9hZ3BfaGVhZCAqKWhlYWQ7Ci0rfQotKwotK3ZvaWQgbnZfZHJtX2Zy ZWVfYWdwKHN0cnVjdCBhZ3BfbWVtb3J5ICpoYW5kbGUsIGludCBwYWdlcykKLSt7Ci0rICAgIGFn cF9mcmVlX21lbW9yeShoYW5kbGUpOwotK30KLSsKLStpbnQgbnZfZHJtX3VuYmluZF9hZ3Aoc3Ry dWN0IGFncF9tZW1vcnkgKmhhbmRsZSkKLSt7Ci0rICAgIHJldHVybiBhZ3BfdW5iaW5kX21lbW9y eShoYW5kbGUpOwotK30KLSsKLSsvKgotKyAqIENvZGUgZnJvbSBkcm1fcGNpX2FncF97Y2xlYXIs ZGVzdHJveSxpbml0fS9kcm1fZ2V0X3BjaV9kZXYKLSsgKiBFeHRyYWN0ZWQgZnJvbSBjb21taXQ6 IDViOGI5ZDBjNmQwZTBmMTk5M2M2YzU2ZGVhZjk2NDY5NDJjNDlkOTQsIGZpbGU6IGRyaXZlcnMv Z3B1L2RybS9kcm1fcGNpLmMKLSsgKi8KLStzdGF0aWMgdm9pZCBudl9kcm1fcGNpX2FncF9pbml0 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCi0rewotKyAgICBpZiAoZHJtX2NvcmVfY2hlY2tfZmVh dHVyZShkZXYsIERSSVZFUl9VU0VfQUdQKSkgewotKyAgICAgICAgaWYgKHBjaV9maW5kX2NhcGFi aWxpdHkoZGV2LT5wZGV2LCBQQ0lfQ0FQX0lEX0FHUCkpCi0rICAgICAgICAgICAgZGV2LT5hZ3Ag PSBudl9kcm1fYWdwX2luaXQoZGV2KTsKLSsgICAgICAgIGlmIChkZXYtPmFncCkgewotKyAgICAg ICAgICAgIGRldi0+YWdwLT5hZ3BfbXRyciA9IGFyY2hfcGh5c193Y19hZGQoCi0rICAgICAgICAg ICAgICAgIGRldi0+YWdwLT5hZ3BfaW5mby5hcGVyX2Jhc2UsCi0rICAgICAgICAgICAgICAgIGRl di0+YWdwLT5hZ3BfaW5mby5hcGVyX3NpemUgKgotKyAgICAgICAgICAgICAgICAxMDI0ICogMTAy NCk7Ci0rICAgICAgICB9Ci0rICAgIH0KLSt9Ci0rCi0rdm9pZCBudl9kcm1fbGVnYWN5X2FncF9j bGVhcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotK3sKLSsgICAgc3RydWN0IG52X2RybV9hZ3Bf bWVtICplbnRyeSwgKnRlbXBlOwotKwotKyAgICBpZiAoIWRldi0+YWdwKQotKyAgICAgICAgcmV0 dXJuOwotKyAgICBpZiAoIWRybV9jb3JlX2NoZWNrX2ZlYXR1cmUoZGV2LCBEUklWRVJfTEVHQUNZ KSkKLSsgICAgICAgIHJldHVybjsKLSsKLSsgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGVu dHJ5LCB0ZW1wZSwgJmRldi0+YWdwLT5tZW1vcnksIGhlYWQpIHsKLSsgICAgICAgIGlmIChlbnRy eS0+Ym91bmQpCi0rICAgICAgICAgICAgbnZfZHJtX3VuYmluZF9hZ3AoZW50cnktPm1lbW9yeSk7 Ci0rICAgICAgICBudl9kcm1fZnJlZV9hZ3AoZW50cnktPm1lbW9yeSwgZW50cnktPnBhZ2VzKTsK LSsgICAgICAgIGtmcmVlKGVudHJ5KTsKLSsgICAgfQotKyAgICBJTklUX0xJU1RfSEVBRCgmZGV2 LT5hZ3AtPm1lbW9yeSk7Ci0rCi0rICAgIGlmIChkZXYtPmFncC0+YWNxdWlyZWQpCi0rICAgICAg ICBkcm1fYWdwX3JlbGVhc2UoZGV2KTsKLSsKLSsgICAgZGV2LT5hZ3AtPmFjcXVpcmVkID0gMDsK LSsgICAgZGV2LT5hZ3AtPmVuYWJsZWQgPSAwOwotK30KLSsKLSt2b2lkIG52X2RybV9wY2lfYWdw X2Rlc3Ryb3koc3RydWN0IGRybV9kZXZpY2UgKmRldikKLSt7Ci0rICAgIGlmIChkZXYtPmFncCkg ewotKyAgICAgICAgYXJjaF9waHlzX3djX2RlbChkZXYtPmFncC0+YWdwX210cnIpOwotKyAgICAg ICAgbnZfZHJtX2xlZ2FjeV9hZ3BfY2xlYXIoZGV2KTsKLSsgICAgICAgIGtmcmVlKGRldi0+YWdw KTsKLSsgICAgICAgIGRldi0+YWdwID0gTlVMTDsKLSsgICAgfQotK30KLSsKLStzdGF0aWMgaW50 IG52X2RybV9nZXRfcGNpX2RldihzdHJ1Y3QgcGNpX2RldiAqcGRldiwKLSsgICAgICAgICAgICAg ICBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqZW50LAotKyAgICAgICAgICAgICAgIHN0cnVj dCBkcm1fZHJpdmVyICpkcml2ZXIpCi0rewotKyAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2Owot KyAgICBpbnQgcmV0OwotKwotKyAgICBEUk1fREVCVUcoIlxuIik7Ci0rCi0rICAgIGRldiA9IGRy bV9kZXZfYWxsb2MoZHJpdmVyLCAmcGRldi0+ZGV2KTsKLSsgICAgaWYgKElTX0VSUihkZXYpKQot KyAgICAgICAgcmV0dXJuIFBUUl9FUlIoZGV2KTsKLSsKLSsgICAgcmV0ID0gcGNpX2VuYWJsZV9k ZXZpY2UocGRldik7Ci0rICAgIGlmIChyZXQpCi0rICAgICAgICBnb3RvIGVycl9mcmVlOwotKwot KyAgICBkZXYtPnBkZXYgPSBwZGV2OwotKyNpZmRlZiBfX2FscGhhX18KLSsgICAgZGV2LT5ob3Nl ID0gcGRldi0+c3lzZGF0YTsKLSsjZW5kaWYKLSsKLSsgICAgaWYgKGRybV9jb3JlX2NoZWNrX2Zl YXR1cmUoZGV2LCBEUklWRVJfTU9ERVNFVCkpCi0rICAgICAgICBwY2lfc2V0X2RydmRhdGEocGRl diwgZGV2KTsKLSsKLSsgICAgbnZfZHJtX3BjaV9hZ3BfaW5pdChkZXYpOwotKwotKyAgICByZXQg PSBkcm1fZGV2X3JlZ2lzdGVyKGRldiwgZW50LT5kcml2ZXJfZGF0YSk7Ci0rICAgIGlmIChyZXQp Ci0rICAgICAgICBnb3RvIGVycl9hZ3A7Ci0rCi0rICAgIC8qIE5vIGxvY2tpbmcgbmVlZGVkIHNp bmNlIHNoYWRvdy1hdHRhY2ggaXMgc2luZ2xlLXRocmVhZGVkIHNpbmNlIGl0IG1heQotKyAgICAg KiBvbmx5IGJlIGNhbGxlZCBmcm9tIHRoZSBwZXItZHJpdmVyIG1vZHVsZSBpbml0IGhvb2suICov Ci0rICAgIGlmIChkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX0xFR0FDWSkpCi0r ICAgICAgICBsaXN0X2FkZF90YWlsKCZkZXYtPmxlZ2FjeV9kZXZfbGlzdCwgJmRyaXZlci0+bGVn YWN5X2Rldl9saXN0KTsKLSsKLSsgICAgcmV0dXJuIDA7Ci0rCi0rZXJyX2FncDoKLSsgICAgbnZf ZHJtX3BjaV9hZ3BfZGVzdHJveShkZXYpOwotKyAgICBwY2lfZGlzYWJsZV9kZXZpY2UocGRldik7 Ci0rZXJyX2ZyZWU6Ci0rICAgIGRybV9kZXZfcHV0KGRldik7Ci0rICAgIHJldHVybiByZXQ7Ci0r fQotKyNlbmRpZgotKwotKy8qCi0rICogQ29kZSBmcm9tIGRybV9sZWdhY3lfcGNpX3tpbml0LGV4 aXR9Ci0rICogRXh0cmFjdGVkIGZyb20gdGFnOiB2NS42LjMsIGZpbGU6IGRyaXZlcnMvZ3B1L2Ry bS9kcm1fcGNpLmMKLSsgKi8KLStpbnQgbnZfZHJtX3BjaV9pbml0KHN0cnVjdCBkcm1fZHJpdmVy ICpkcml2ZXIsIHN0cnVjdCBwY2lfZHJpdmVyICpwZHJpdmVyKQotK3sKLSsgICAgc3RydWN0IHBj aV9kZXYgKnBkZXYgPSBOVUxMOwotKyAgICBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqcGlk OwotKyAgICBpbnQgaTsKLSsKLSsgICAgRFJNX0RFQlVHKCJcbiIpOwotKwotKyAgICBpZiAoV0FS Tl9PTighKGRyaXZlci0+ZHJpdmVyX2ZlYXR1cmVzICYgRFJJVkVSX0xFR0FDWSkpKQotKyAgICAg ICAgcmV0dXJuIC1FSU5WQUw7Ci0rCi0rICAgIC8qIElmIG5vdCB1c2luZyBLTVMsIGZhbGwgYmFj ayB0byBzdGVhbHRoIG1vZGUgbWFudWFsIHNjYW5uaW5nLiAqLwotKyAgICBJTklUX0xJU1RfSEVB RCgmZHJpdmVyLT5sZWdhY3lfZGV2X2xpc3QpOwotKyAgICBmb3IgKGkgPSAwOyBwZHJpdmVyLT5p ZF90YWJsZVtpXS52ZW5kb3IgIT0gMDsgaSsrKSB7Ci0rICAgICAgICBwaWQgPSAmcGRyaXZlci0+ aWRfdGFibGVbaV07Ci0rCi0rICAgICAgICAvKiBMb29wIGFyb3VuZCBzZXR0aW5nIHVwIGEgRFJN IGRldmljZSBmb3IgZWFjaCBQQ0kgZGV2aWNlCi0rICAgICAgICAgKiBtYXRjaGluZyBvdXIgSUQg YW5kIGRldmljZSBjbGFzcy4gIElmIHdlIGhhZCB0aGUgaW50ZXJuYWwKLSsgICAgICAgICAqIGZ1 bmN0aW9uIHRoYXQgcGNpX2dldF9zdWJzeXMgYW5kIHBjaV9nZXRfY2xhc3MgdXNlZCwgd2UnZAot KyAgICAgICAgICogYmUgYWJsZSB0byBqdXN0IHBhc3MgcGlkIGluIGluc3RlYWQgb2YgZG9pbmcg YSB0d28tc3RhZ2UKLSsgICAgICAgICAqIHRoaW5nLgotKyAgICAgICAgICovCi0rICAgICAgICBw ZGV2ID0gTlVMTDsKLSsgICAgICAgIHdoaWxlICgocGRldiA9Ci0rICAgICAgICAgICAgcGNpX2dl dF9zdWJzeXMocGlkLT52ZW5kb3IsIHBpZC0+ZGV2aWNlLCBwaWQtPnN1YnZlbmRvciwKLSsgICAg ICAgICAgICAgICAgICAgICAgIHBpZC0+c3ViZGV2aWNlLCBwZGV2KSkgIT0gTlVMTCkgewotKyAg ICAgICAgICAgIGlmICgocGRldi0+Y2xhc3MgJiBwaWQtPmNsYXNzX21hc2spICE9IHBpZC0+Y2xh c3MpCi0rICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotKwotKyAgICAgICAgICAgIC8qIHN0ZWFs dGggbW9kZSByZXF1aXJlcyBhIG1hbnVhbCBwcm9iZSAqLwotKyAgICAgICAgICAgIHBjaV9kZXZf Z2V0KHBkZXYpOwotKyAgICAgICAgICAgIG52X2RybV9nZXRfcGNpX2RldihwZGV2LCBwaWQsIGRy aXZlcik7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsgICAgcmV0dXJuIDA7Ci0rfQotKwotK3ZvaWQg bnZfZHJtX3BjaV9leGl0KHN0cnVjdCBkcm1fZHJpdmVyICpkcml2ZXIsIHN0cnVjdCBwY2lfZHJp dmVyICpwZHJpdmVyKQotK3sKLSsgICAgc3RydWN0IGRybV9kZXZpY2UgKmRldiwgKnRtcDsKLSsg ICAgRFJNX0RFQlVHKCJcbiIpOwotKwotKyAgICBpZiAoIShkcml2ZXItPmRyaXZlcl9mZWF0dXJl cyAmIERSSVZFUl9MRUdBQ1kpKSB7Ci0rICAgICAgICBXQVJOX09OKDEpOwotKyAgICB9IGVsc2Ug ewotKyAgICAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGRldiwgdG1wLCAmZHJpdmVyLT5s ZWdhY3lfZGV2X2xpc3QsCi0rICAgICAgICAgICAgICAgICAgICAgbGVnYWN5X2Rldl9saXN0KSB7 Ci0rICAgICAgICAgICAgbGlzdF9kZWwoJmRldi0+bGVnYWN5X2Rldl9saXN0KTsKLSsgICAgICAg ICAgICBkcm1fcHV0X2RldihkZXYpOwotKyAgICAgICAgfQotKyAgICB9Ci0rICAgIERSTV9JTkZP KCJNb2R1bGUgdW5sb2FkZWRcbiIpOwotK30KLSAjZW5kaWYKLSAKLSBleHRlcm4gbnZfbGludXhf c3RhdGVfdCAqbnZfbGludXhfZGV2aWNlczsKLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYtbGludXgu aCBiL2tlcm5lbC9udi1saW51eC5oCi1pbmRleCBhMWQyYzY4Li44M2U2NDMzIDEwMDY0NAotLS0t IGEva2VybmVsL252LWxpbnV4LmgKLSsrKyBiL2tlcm5lbC9udi1saW51eC5oCi1AQCAtNjg4LDEx ICs2ODgsMTYgQEAgZXh0ZXJuIG52X3NwaW5sb2NrX3Qga21fbG9jazsKLSAgICAgICAgIFZNX0FM TE9DX1JFQ09SRChwdHIsIHNpemUsICJ2bV9pb3JlbWFwIik7IFwKLSAgICAgfQotIAotKyNpZiBk ZWZpbmVkKE5WX0lPUkVNQVBfTk9DQUNIRV9QUkVTRU5UKQotICNkZWZpbmUgTlZfSU9SRU1BUF9O T0NBQ0hFKHB0ciwgcGh5c2FkZHIsIHNpemUpIFwKLSAgICAgeyBcCi0gICAgICAgICAocHRyKSA9 IGlvcmVtYXBfbm9jYWNoZShwaHlzYWRkciwgc2l6ZSk7IFwKLSAgICAgICAgIFZNX0FMTE9DX1JF Q09SRChwdHIsIHNpemUsICJ2bV9pb3JlbWFwX25vY2FjaGUiKTsgXAotICAgICB9Ci0rI2Vsc2UK LSsjZGVmaW5lIE5WX0lPUkVNQVBfTk9DQUNIRShwdHIsIHBoeXNhZGRyLCBzaXplKSBcCi0rICAg IE5WX0lPUkVNQVAocHRyLCBwaHlzYWRkciwgc2l6ZSkKLSsjZW5kaWYKLSAKLSAjaWYgZGVmaW5l ZChOVl9JT1JFTUFQX0NBQ0hFX1BSRVNFTlQpCi0gI2RlZmluZSBOVl9JT1JFTUFQX0NBQ0hFKHB0 ciwgcGh5c2FkZHIsIHNpemUpICAgICAgICAgICAgXAotQEAgLTc3NCw2ICs3NzksMTcgQEAgZXh0 ZXJuIG52X3NwaW5sb2NrX3Qga21fbG9jazsKLSAjZXJyb3IgIk5WX0tNRU1fQ0FDSEVfQ1JFQVRF KCkgdW5kZWZpbmVkIChrbWVtX2NhY2hlX2NyZWF0ZSgpIHVuYXZhaWxhYmxlKSEiCi0gI2VuZGlm Ci0gCi0rI2lmIGRlZmluZWQoTlZfS01FTV9DQUNIRV9DUkVBVEVfVVNFUkNPUFlfUFJFU0VOVCkK LSsjZGVmaW5lIE5WX0tNRU1fQ0FDSEVfQ1JFQVRFX1VTRVJDT1BZKGttZW1fY2FjaGUsIG5hbWUs IHR5cGUpICAgICAgIFwKLSsgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIGttZW1fY2FjaGUgPSBrbWVt X2NhY2hlX2NyZWF0ZV91c2VyY29weShuYW1lLCBzaXplb2YodHlwZSksIFwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAwLCAwLCAwLCBzaXplb2YodHlwZSksIE5VTEwpOyAgICAgICAgICAgICAg IFwKLSsgICAgfQotKyNlbHNlCi0rI2RlZmluZSBOVl9LTUVNX0NBQ0hFX0NSRUFURV9VU0VSQ09Q WShrbWVtX2NhY2hlLCBuYW1lLCB0eXBlKSAgICAgICBcCi0rICAgICAgICBOVl9LTUVNX0NBQ0hF X0NSRUFURShrbWVtX2NhY2hlLCBuYW1lLCB0eXBlKQotKyNlbmRpZgotKwotICNkZWZpbmUgTlZf S01FTV9DQUNIRV9BTExPQyhwdHIsIGttZW1fY2FjaGUsIHR5cGUpICAgICAgICAgICAgICBcCi0g ICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKLSAgICAgICAgIChwdHIpID0ga21lbV9jYWNoZV9hbGxvYyhrbWVtX2NhY2hlLCBH RlBfS0VSTkVMKTsgICAgICAgXAotQEAgLTE5NzEsNiArMTk4NywxOSBAQCBleHRlcm4gTnZVMzIg bnZfYXNzaWduX2dwdV9jb3VudDsKLSAgICAgfSkKLSAjZW5kaWYKLSAKLSsjaWYgZGVmaW5lZChO Vl9IQVZFX1BST0NfT1BTKQotKyNkZWZpbmUgTlZfQ1JFQVRFX1BST0NfRklMRShmaWxlbmFtZSxw YXJlbnQsX19uYW1lLF9fZGF0YSkgICAgICAgICAgICAgICBcCi0rICAgKHsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSsgICAgICAgIHN0cnVjdCBwcm9jX2Rpcl9lbnRyeSAqX19lbnRyeTsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgaW50IG1vZGUgPSAoU19JRlJFRyB8IFNfSVJV R08pOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBjb25zdCBz dHJ1Y3QgcHJvY19vcHMgKmZvcHMgPSAmbnZfcHJvY2ZzXyMjX19uYW1lIyNfZm9wczsgICAgICAg IFwKLSsgICAgICAgIGlmIChmb3BzLT5wcm9jX3dyaXRlICE9IDApICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAgIG1vZGUgfD0gU19JV1VTUjsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBfX2Vu dHJ5ID0gTlZfQ1JFQVRFX1BST0NfRU5UUlkoZmlsZW5hbWUsIG1vZGUsIHBhcmVudCwgZm9wcywg ICAgIFwKLSsgICAgICAgICAgICBfX2RhdGEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgX19lbnRyeTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIH0pCi0r I2Vsc2UKLSAjZGVmaW5lIE5WX0NSRUFURV9QUk9DX0ZJTEUoZmlsZW5hbWUscGFyZW50LF9fbmFt ZSxfX2RhdGEpICAgICAgICAgICAgICAgXAotICAgICh7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICBz dHJ1Y3QgcHJvY19kaXJfZW50cnkgKl9fZW50cnk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKLUBAIC0xOTgyLDYgKzIwMTEsNyBAQCBleHRlcm4gTnZVMzIgbnZfYXNzaWduX2dw dV9jb3VudDsKLSAgICAgICAgICAgICBfX2RhdGEpOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgX19lbnRyeTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgIH0p Ci0rI2VuZGlmCi0gCi0gLyoKLSAgKiBwcm9jX21rZGlyX21vZGUgZXhpc3RzIGluIExpbnV4IDIu Ni45LCBidXQgaXNuJ3QgZXhwb3J0ZWQgdW50aWwgTGludXggMy4wLgotQEAgLTIwMjMsNiArMjA1 MywyNCBAQCBleHRlcm4gTnZVMzIgbnZfYXNzaWduX2dwdV9jb3VudDsKLSAgICAgcmVtb3ZlX3By b2NfZW50cnkoZW50cnktPm5hbWUsIGVudHJ5LT5wYXJlbnQpOwotICNlbmRpZgotIAotKyNpZiBk ZWZpbmVkKE5WX0hBVkVfUFJPQ19PUFMpCi0rI2RlZmluZSBOVl9ERUZJTkVfUFJPQ0ZTX1NJTkdM RV9GSUxFKF9fbmFtZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBz dGF0aWMgaW50IG52X3Byb2Nmc19vcGVuXyMjX19uYW1lKCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIHN0cnVjdCBpbm9kZSAqaW5vZGUsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBzdHJ1 Y3QgZmlsZSAqZmlsZXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotKyAgICApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgeyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCi0rICAgICAgICByZXR1cm4gc2luZ2xlX29wZW4oZmlsZXAsIG52X3Byb2Nmc19yZWFkXyMj X19uYW1lLCAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAgIE5WX1BERV9EQVRBKGlu b2RlKSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsg ICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBzdGF0 aWMgY29uc3Qgc3RydWN0IHByb2Nfb3BzIG52X3Byb2Nmc18jI19fbmFtZSMjX2ZvcHMgPSB7ICAg ICAgICAgICAgICAgIFwKLSsgICAgICAgIC5wcm9jX29wZW4gICAgICAgPSBudl9wcm9jZnNfb3Bl bl8jI19fbmFtZSwgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAucHJvY19y ZWFkICAgICAgID0gc2VxX3JlYWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAotKyAgICAgICAgLnByb2NfbHNlZWsgICAgICA9IHNlcV9sc2VlaywgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIC5wcm9jX3JlbGVhc2Ug ICAgPSBzaW5nbGVfcmVsZWFzZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0rICAgIH07Ci0rI2Vsc2UKLSAjZGVmaW5lIE5WX0RFRklORV9QUk9DRlNfU0lOR0xFX0ZJTEUo X19uYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgIHN0YXRpYyBp bnQgbnZfcHJvY2ZzX29wZW5fIyNfX25hbWUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotICAgICAgICAgc3RydWN0IGlub2RlICppbm9kZSwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLUBAIC0yMDQwLDYgKzIwODgsNyBA QCBleHRlcm4gTnZVMzIgbnZfYXNzaWduX2dwdV9jb3VudDsKLSAgICAgICAgIC5sbHNlZWsgICAg ID0gc2VxX2xzZWVrLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCi0gICAgICAgICAucmVsZWFzZSAgICA9IHNpbmdsZV9yZWxlYXNlLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICB9OwotKyNlbmRpZgotIAotICNlbmRp ZiAgLyogQ09ORklHX1BST0NfRlMgKi8KLSAKLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYtcHJvY2Zz LmMgYi9rZXJuZWwvbnYtcHJvY2ZzLmMKLWluZGV4IGViY2EzZTguLjkzNjVjM2MgMTAwNjQ0Ci0t LS0gYS9rZXJuZWwvbnYtcHJvY2ZzLmMKLSsrKyBiL2tlcm5lbC9udi1wcm9jZnMuYwotQEAgLTQw OSw2ICs0MDksMTUgQEAgZG9uZToKLSAgICAgcmV0dXJuICgoc3RhdHVzIDwgMCkgPyBzdGF0dXMg OiAoaW50KWNvdW50KTsKLSB9Ci0gCi0rI2lmIGRlZmluZWQoTlZfSEFWRV9QUk9DX09QUykKLStz dGF0aWMgc3RydWN0IHByb2Nfb3BzIG52X3Byb2Nmc19yZWdpc3RyeV9mb3BzID0gewotKyAgICAu cHJvY19vcGVuICAgID0gbnZfcHJvY2ZzX29wZW5fcmVnaXN0cnksCi0rICAgIC5wcm9jX3JlYWQg ICAgPSBzZXFfcmVhZCwKLSsgICAgLnByb2Nfd3JpdGUgICA9IG52X3Byb2Nmc193cml0ZV9maWxl LAotKyAgICAucHJvY19sc2VlayAgID0gc2VxX2xzZWVrLAotKyAgICAucHJvY19yZWxlYXNlID0g bnZfcHJvY2ZzX2Nsb3NlX3JlZ2lzdHJ5LAotK307Ci0rI2Vsc2UKLSBzdGF0aWMgc3RydWN0IGZp bGVfb3BlcmF0aW9ucyBudl9wcm9jZnNfcmVnaXN0cnlfZm9wcyA9IHsKLSAgICAgLm93bmVyICAg PSBUSElTX01PRFVMRSwKLSAgICAgLm9wZW4gICAgPSBudl9wcm9jZnNfb3Blbl9yZWdpc3RyeSwK LUBAIC00MTcsNiArNDI2LDcgQEAgc3RhdGljIHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgbnZfcHJv Y2ZzX3JlZ2lzdHJ5X2ZvcHMgPSB7Ci0gICAgIC5sbHNlZWsgID0gc2VxX2xzZWVrLAotICAgICAu cmVsZWFzZSA9IG52X3Byb2Nmc19jbG9zZV9yZWdpc3RyeSwKLSB9OwotKyNlbmRpZgotIAotIHN0 YXRpYyBpbnQKLSBudl9wcm9jZnNfcmVhZF91bmJpbmRfbG9jaygKLUBAIC01MzgsNiArNTQ4LDE1 IEBAIGRvbmU6Ci0gICAgIHJldHVybiByYzsKLSB9Ci0gCi0rI2lmIGRlZmluZWQoTlZfSEFWRV9Q Uk9DX09QUykKLStzdGF0aWMgc3RydWN0IHByb2Nfb3BzIG52X3Byb2Nmc191bmJpbmRfbG9ja19m b3BzID0gewotKyAgICAucHJvY19vcGVuICAgID0gbnZfcHJvY2ZzX29wZW5fdW5iaW5kX2xvY2ss Ci0rICAgIC5wcm9jX3JlYWQgICAgPSBzZXFfcmVhZCwKLSsgICAgLnByb2Nfd3JpdGUgICA9IG52 X3Byb2Nmc193cml0ZV9maWxlLAotKyAgICAucHJvY19sc2VlayAgID0gc2VxX2xzZWVrLAotKyAg ICAucHJvY19yZWxlYXNlID0gbnZfcHJvY2ZzX2Nsb3NlX3VuYmluZF9sb2NrLAotK307Ci0rI2Vs c2UKLSBzdGF0aWMgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBudl9wcm9jZnNfdW5iaW5kX2xvY2tf Zm9wcyA9IHsKLSAgICAgLm93bmVyICAgPSBUSElTX01PRFVMRSwKLSAgICAgLm9wZW4gICAgPSBu dl9wcm9jZnNfb3Blbl91bmJpbmRfbG9jaywKLUBAIC01NDYsNiArNTY1LDcgQEAgc3RhdGljIHN0 cnVjdCBmaWxlX29wZXJhdGlvbnMgbnZfcHJvY2ZzX3VuYmluZF9sb2NrX2ZvcHMgPSB7Ci0gICAg IC5sbHNlZWsgID0gc2VxX2xzZWVrLAotICAgICAucmVsZWFzZSA9IG52X3Byb2Nmc19jbG9zZV91 bmJpbmRfbG9jaywKLSB9OwotKyNlbmRpZgotIAotIHN0YXRpYyBpbnQKLSBudl9wcm9jZnNfcmVh ZF90ZXh0X2ZpbGUoCi1kaWZmIC0tZ2l0IGEva2VybmVsL252LXRpbWUuaCBiL2tlcm5lbC9udi10 aW1lLmgKLWluZGV4IGEzNGNlYjIuLjc4MGY4YmMgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvbnYtdGlt ZS5oCi0rKysgYi9rZXJuZWwvbnYtdGltZS5oCi1AQCAtMjgsNyArMjgsMTIgQEAKLSAjaW5jbHVk ZSA8bGludXgva3RpbWUuaD4KLSAjZW5kaWYKLSAKLS1zdGF0aWMgaW5saW5lIHZvaWQgbnZfZ2V0 dGltZW9mZGF5KHN0cnVjdCB0aW1ldmFsICp0dikKLStzdHJ1Y3QgbnZfdGltZXZhbCB7Ci0rICAg IF9fa2VybmVsX2xvbmdfdCAgICAgIHR2X3NlYzsKLSsgICAgX19rZXJuZWxfc3VzZWNvbmRzX3Qg dHZfdXNlYzsKLSt9OwotKwotK3N0YXRpYyBpbmxpbmUgdm9pZCBudl9nZXR0aW1lb2ZkYXkoc3Ry dWN0IG52X3RpbWV2YWwgKnR2KQotIHsKLSAjaWZkZWYgTlZfRE9fR0VUVElNRU9GREFZX1BSRVNF TlQKLSAgICAgZG9fZ2V0dGltZW9mZGF5KHR2KTsKLUBAIC0zNyw3ICs0Miw3IEBAIHN0YXRpYyBp bmxpbmUgdm9pZCBudl9nZXR0aW1lb2ZkYXkoc3RydWN0IHRpbWV2YWwgKnR2KQotIAotICAgICBr dGltZV9nZXRfcmVhbF90czY0KCZub3cpOwotIAotLSAgICAqdHYgPSAoc3RydWN0IHRpbWV2YWwp IHsKLSsgICAgKnR2ID0gKHN0cnVjdCBudl90aW1ldmFsKSB7Ci0gICAgICAgICAudHZfc2VjID0g bm93LnR2X3NlYywKLSAgICAgICAgIC50dl91c2VjID0gbm93LnR2X25zZWMvMTAwMCwKLSAgICAg fTsKLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYuYyBiL2tlcm5lbC9udi5jCi1pbmRleCBhMTY3YmU5 Li5hMjE4ZjgzIDEwMDY0NAotLS0tIGEva2VybmVsL252LmMKLSsrKyBiL2tlcm5lbC9udi5jCi1A QCAtNzUyLDcgKzc1Miw3IEBAIGludCBfX2luaXQgbnZpZGlhX2luaXRfbW9kdWxlKHZvaWQpCi0g ICAgIE5WX1NQSU5fTE9DS19JTklUKCZrbV9sb2NrKTsKLSAjZW5kaWYKLSAKLS0gICAgTlZfS01F TV9DQUNIRV9DUkVBVEUobnZfc3RhY2tfdF9jYWNoZSwgTlZfU1RBQ0tfQ0FDSEVfU1RSLCBudl9z dGFja190KTsKLSsgICAgTlZfS01FTV9DQUNIRV9DUkVBVEVfVVNFUkNPUFkobnZfc3RhY2tfdF9j YWNoZSwgTlZfU1RBQ0tfQ0FDSEVfU1RSLCBudl9zdGFja190KTsKLSAgICAgaWYgKG52X3N0YWNr X3RfY2FjaGUgPT0gTlVMTCkKLSAgICAgewotICAgICAgICAgbnZfcHJpbnRmKE5WX0RCR19FUlJP UlMsICJOVlJNOiBzdGFjayBjYWNoZSBhbGxvY2F0aW9uIGZhaWxlZCFcbiIpOwotZGlmZiAtLWdp dCBhL2tlcm5lbC9vcy1pbnRlcmZhY2UuYyBiL2tlcm5lbC9vcy1pbnRlcmZhY2UuYwotaW5kZXgg NzE5MGIyNi4uMGMwZGMwNSAxMDA2NDQKLS0tLSBhL2tlcm5lbC9vcy1pbnRlcmZhY2UuYwotKysr IGIva2VybmVsL29zLWludGVyZmFjZS5jCi1AQCAtNDM5LDcgKzQzOSw3IEBAIFJNX1NUQVRVUyBO Vl9BUElfQ0FMTCBvc19nZXRfY3VycmVudF90aW1lKAotICAgICBOdlUzMiAqdXNlY29uZHMKLSAp Ci0gewotLSAgICBzdHJ1Y3QgdGltZXZhbCB0bTsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwgdG07 Ci0gCi0gICAgIG52X2dldHRpbWVvZmRheSgmdG0pOwotIAotQEAgLTQ3NCw3ICs0NzQsNyBAQCBS TV9TVEFUVVMgTlZfQVBJX0NBTEwgb3NfZGVsYXlfdXMoTnZVMzIgTWljcm9TZWNvbmRzKQotICAg ICB1bnNpZ25lZCBsb25nIHVzZWM7Ci0gCi0gI2lmZGVmIE5WX0NIRUNLX0RFTEFZX0FDQ1VSQUNZ Ci0tICAgIHN0cnVjdCB0aW1ldmFsIHRtMSwgdG0yOwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCB0 bTEsIHRtMjsKLSAKLSAgICAgbnZfZ2V0dGltZW9mZGF5KCZ0bTEpOwotICNlbmRpZgotQEAgLTUx NCw5ICs1MTQsOSBAQCBSTV9TVEFUVVMgTlZfQVBJX0NBTEwgb3NfZGVsYXkoTnZVMzIgTWlsbGlT ZWNvbmRzKQotICAgICB1bnNpZ25lZCBsb25nIE1pY3JvU2Vjb25kczsKLSAgICAgdW5zaWduZWQg bG9uZyBqaWZmaWVzOwotICAgICB1bnNpZ25lZCBsb25nIG1kZWxheV9zYWZlX21zZWM7Ci0tICAg IHN0cnVjdCB0aW1ldmFsIHRtX2VuZCwgdG1fYXV4OwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCB0 bV9lbmQsIHRtX2F1eDsKLSAjaWZkZWYgTlZfQ0hFQ0tfREVMQVlfQUNDVVJBQ1kKLS0gICAgc3Ry dWN0IHRpbWV2YWwgdG1fc3RhcnQ7Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIHRtX3N0YXJ0Owot ICNlbmRpZgotIAotICAgICBudl9nZXR0aW1lb2ZkYXkoJnRtX2F1eCk7Ci1kaWZmIC0tZ2l0IGEv a2VybmVsL3V2bS9NYWtlZmlsZSBiL2tlcm5lbC91dm0vTWFrZWZpbGUKLWluZGV4IDBjYWQ4ZmYu LjA0M2EwOGQgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvdXZtL01ha2VmaWxlCi0rKysgYi9rZXJuZWwv dXZtL01ha2VmaWxlCi1AQCAtMjA3LDYgKzIwNyw3IEBAIGNjZmxhZ3MteSArPSAkKEVYVFJBX0NG TEFHUykKLSAKLSBSTV9NT0RVTEVfU1lNVkVSUzo9ICQoUk1fT1VUX0RJUikvTW9kdWxlLnN5bXZl cnMKLSBVVk1fTU9EVUxFX1NZTVZFUlM6PSAkKG9iaikvTW9kdWxlLnN5bXZlcnMKLStLQlVJTERf RVhUUkFfU1lNQk9MUzo9ICQoVVZNX01PRFVMRV9TWU1WRVJTKQotIAotIG1vZHVsZSAkKE1PRFVM RV9OQU1FKS5rbzogJChVVk1fTU9EVUxFX1NZTVZFUlMpIGRlYnVnX2RpYWdub3N0aWNzX3ByaW50 aW5nCi0gCi1kaWZmIC0tZ2l0IGEva2VybmVsL3V2bS9jb25mdGVzdC5zaCBiL2tlcm5lbC91dm0v Y29uZnRlc3Quc2gKLWluZGV4IGI3YTg1ZjAuLjMzZTJhNjMgMTAwNzU1Ci0tLS0gYS9rZXJuZWwv dXZtL2NvbmZ0ZXN0LnNoCi0rKysgYi9rZXJuZWwvdXZtL2NvbmZ0ZXN0LnNoCi1AQCAtMTc2LDYg KzE3Niw3IEBAIHRlc3RfaGVhZGVycygpIHsKLSAgICAgRklMRVM9IiRGSUxFUyBsaW51eC9rdGlt ZS5oIgotICAgICBGSUxFUz0iJEZJTEVTIGxpbnV4L2ZpbGUuaCIKLSAKLSsgICAgRklMRVNfQVJD SD0iJEZJTEVTX0FSQ0ggYXNtL3BndGFibGUuaCIKLSAgICAgRklMRVNfQVJDSD0iJEZJTEVTX0FS Q0ggYXNtL3NldF9tZW1vcnkuaCIKLSAKLSAgICAgdHJhbnNsYXRlX2FuZF9maW5kX2hlYWRlcl9m aWxlcyAkSEVBREVSUyAgICAgICRGSUxFUwotQEAgLTQ0MCw2ICs0NDEsOSBAQCBjb21waWxlX3Rl c3QoKSB7Ci0gICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIHNldF9tZW1vcnlfYXJyYXlf dWMoKSBmdW5jdGlvbiBpcyBwcmVzZW50LgotICAgICAgICAgICAgICMKLSAgICAgICAgICAgICBD T0RFPSIKLSsgICAgICAgICAgICAjaWYgZGVmaW5lZChOVl9BU01fUEdUQUJMRV9IX1BSRVNFTlQp Ci0rICAgICAgICAgICAgI2luY2x1ZGUgPGFzbS9wZ3RhYmxlLmg+Ci0rICAgICAgICAgICAgI2Vu ZGlmCi0gICAgICAgICAgICAgI2lmIGRlZmluZWQoTlZfQVNNX1NFVF9NRU1PUllfSF9QUkVTRU5U KQotICAgICAgICAgICAgICNpbmNsdWRlIDxhc20vc2V0X21lbW9yeS5oPgotICAgICAgICAgICAg ICNlbHNlCi1kaWZmIC0tZ2l0IGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGUuYyBiL2tlcm5l bC91dm0vbnZpZGlhX3V2bV9saXRlLmMKLWluZGV4IDY5NDNlN2MuLjlhN2UzYjYgMTAwNjQ0Ci0t LS0gYS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGl0ZS5jCi0rKysgYi9rZXJuZWwvdXZtL252aWRp YV91dm1fbGl0ZS5jCi1AQCAtMTMxLDggKzEzMSw4IEBAIHN0YXRpYwotIFJNX1NUQVRVUyBfcHJl ZXhpc3RpbmdfZXJyb3Jfb25fY2hhbm5lbChVdm1HcHVNaWdyYXRpb25UcmFja2luZyAqcE1pZ1Ry YWNrZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVdm1Db21t aXRSZWNvcmQgKnBSZWNvcmQpOwotIAotLXN0YXRpYyB2b2lkIF9zZXRfdGltZW91dF9pbl91c2Vj KHN0cnVjdCB0aW1ldmFsICpzcmMsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IHRpbWV2YWwgKnJlc3VsdCwKLStzdGF0aWMgdm9pZCBfc2V0X3RpbWVvdXRfaW5fdXNl YyhzdHJ1Y3QgbnZfdGltZXZhbCAqc3JjLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHN0cnVjdCBudl90aW1ldmFsICpyZXN1bHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgbG9uZyB0aW1lb3V0SW5Vc2VjKQotIHsKLSAgICAgaWYgKCFzcmMg fHwgIXJlc3VsdCkKLUBAIC04MjAsNyArODIwLDEzIEBAIGRvbmU6Ci0gfQotIAotICNpZiBkZWZp bmVkKE5WX1ZNX09QRVJBVElPTlNfU1RSVUNUX0hBU19GQVVMVCkKLSsjaWYgTElOVVhfVkVSU0lP Tl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDQsIDE3LCAwKQotK3ZtX2ZhdWx0X3QgX2ZhdWx0KHN0 cnVjdCB2bV9mYXVsdCAqdm1mKQotKyNlbGlmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxf VkVSU0lPTig0LCAxMSwgMCkKLStpbnQgX2ZhdWx0KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQotKyNl bHNlCi0gaW50IF9mYXVsdChzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgc3RydWN0IHZtX2Zh dWx0ICp2bWYpCi0rI2VuZGlmCi0gewotICNpZiBkZWZpbmVkKE5WX1ZNX0ZBVUxUX0hBU19BRERS RVNTKQotICAgICB1bnNpZ25lZCBsb25nIHZhZGRyID0gdm1mLT5hZGRyZXNzOwotQEAgLTgyOCw4 ICs4MzQsMTUgQEAgaW50IF9mYXVsdChzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgc3RydWN0 IHZtX2ZhdWx0ICp2bWYpCi0gICAgIHVuc2lnbmVkIGxvbmcgdmFkZHIgPSAodW5zaWduZWQgbG9u Zyl2bWYtPnZpcnR1YWxfYWRkcmVzczsKLSAjZW5kaWYKLSAgICAgc3RydWN0IHBhZ2UgKnBhZ2Ug PSBOVUxMOwotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNCwgMTcs IDApCi0rICAgIHZtX2ZhdWx0X3QgcmV0dmFsOwotKyNlbHNlCi0gICAgIGludCByZXR2YWw7Ci0g Ci0rI2VuZGlmCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig0LCAx MSwgMCkKLSsgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSA9IHZtZi0+dm1hOwotKyNlbmRp ZgotICAgICByZXR2YWwgPSBfZmF1bHRfY29tbW9uKHZtYSwgdmFkZHIsICZwYWdlLCB2bWYtPmZs YWdzKTsKLSAKLSAgICAgdm1mLT5wYWdlID0gcGFnZTsKLUBAIC04NjgsNyArODgxLDEzIEBAIHN0 YXRpYyBzdHJ1Y3Qgdm1fb3BlcmF0aW9uc19zdHJ1Y3QgdXZtbGl0ZV92bWFfb3BzID0KLSAvLyBp dCdzIGRlYWxpbmcgd2l0aCBhbm9ueW1vdXMgbWFwcGluZyAoc2VlIGhhbmRsZV9wdGVfZmF1bHQp LgotIC8vCi0gI2lmIGRlZmluZWQoTlZfVk1fT1BFUkFUSU9OU19TVFJVQ1RfSEFTX0ZBVUxUKQot KyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNCwgMTcsIDApCi0rdm1f ZmF1bHRfdCBfc2lnYnVzX2ZhdWx0KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQotKyNlbGlmIExJTlVY X1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig0LCAxMSwgMCkKLStpbnQgX3NpZ2J1c19m YXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKLSsjZWxzZQotIGludCBfc2lnYnVzX2ZhdWx0KHN0 cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCBzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKLSsjZW5kaWYK LSB7Ci0gICAgIHZtZi0+cGFnZSA9IE5VTEw7Ci0gICAgIHJldHVybiBWTV9GQVVMVF9TSUdCVVM7 Ci1AQCAtMTk5Miw5ICsyMDExLDkgQEAgdm9pZCB1bXZsaXRlX2Rlc3Ryb3lfcGVyX3Byb2Nlc3Nf Z3B1X3Jlc291cmNlcyhVdm1HcHVVdWlkICpncHVVdWlkU3RydWN0KQotIHN0YXRpYyBSTV9TVEFU VVMgX2NoZWNrX2VjY19lcnJvcnMoVXZtR3B1TWlncmF0aW9uVHJhY2tpbmcgKnBNaWdUcmFja2Vy LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE52Qm9vbCAqcElzRWNjRXJy b3JTZXQpCi0gewotLSAgICBzdHJ1Y3QgdGltZXZhbCBlY2NFcnJvclN0YXJ0VGltZSA9IHswfTsK LS0gICAgc3RydWN0IHRpbWV2YWwgZWNjRXJyb3JDdXJyZW50VGltZSA9IHswfTsKLS0gICAgc3Ry dWN0IHRpbWV2YWwgZWNjVGltZW91dCA9IHswfTsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwgZWNj RXJyb3JTdGFydFRpbWUgPSB7MH07Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIGVjY0Vycm9yQ3Vy cmVudFRpbWUgPSB7MH07Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIGVjY1RpbWVvdXQgPSB7MH07 Ci0gICAgIE52Qm9vbCBiRWNjRXJyb3JUaW1lb3V0ID0gTlZfRkFMU0U7Ci0gICAgIE52Qm9vbCBi RWNjSW5jb21pbmdFcnJvciA9IE5WX0ZBTFNFOwotICAgICB1bnNpZ25lZCBybUludGVycnVwdFNl dCA9IDA7Ci0tLSAKLTIuMjkuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9maWxl cy9udmlkaWEtZ2x4LmNvbmYgYi9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9udmlkaWEtZ2x4LmNv bmYKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdjNzY4ODNhYmIzLi4wMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9udmlkaWEtZ2x4LmNvbmYKKysrIC9kZXYv bnVsbApAQCAtMSw0ICswLDAgQEAKLVNlY3Rpb24gIkZpbGVzIgotICAgIE1vZHVsZVBhdGggIi91 c3IvbGliL252aWRpYS94b3JnIgotICAgIE1vZHVsZVBhdGggIi91c3IvbGliL3hvcmcvbW9kdWxl cyIKLUVuZFNlY3Rpb24KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRlIGIv c3JjcGtncy9udmlkaWEzNDAvdGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDE2NmYzNTc1NmJjLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC90ZW1wbGF0 ZQorKysgL2Rldi9udWxsCkBAIC0xLDIyMyArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdu dmlkaWEzNDAnCi0KLV9kZXNjPSJOVklESUEgZHJpdmVycyAoR2VGb3JjZSA4LCA5LCA5TSwgMTAw LCAxMDBNLCAyMDAsIDMwMCBzZXJpZXMpIgotCi1wa2duYW1lPW52aWRpYTM0MAotdmVyc2lvbj0z NDAuMTA4Ci1yZXZpc2lvbj00Ci1tYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51 eC5vcmc+IgotbGljZW5zZT0iY3VzdG9tOk5WSURJQSBwcm9wcmlldGFyeSIKLWhvbWVwYWdlPSJo dHRwOi8vd3d3Lm52aWRpYS5jb20iCi0KLWFyY2hzPSJpNjg2IHg4Nl82NCIKLW5vcGllPXllcwot cmVwb3NpdG9yeT1ub25mcmVlCi1jcmVhdGVfd3Jrc3JjPXllcwotc2hvcnRfZGVzYz0iJHtfZGVz Y30gLSBMaWJyYXJpZXMgYW5kIFV0aWxpdGllcyIKLWhvc3RtYWtlZGVwZW5kcz0idGFyIgotZGVw ZW5kcz0iJHtwa2duYW1lfS1ka21zLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gcGtnLWNvbmZpZyIK LWNvbmZsaWN0cz0iY2F0YWx5c3Q+PTAgeHNlcnZlci1hYmktdmlkZW8+MjRfMSIKLQotcHJvdmlk ZXM9Im52aWRpYS0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotcmVwbGFjZXM9Im52aWRpYT49MCBu dmlkaWEtc3RhYmxlPj0wIgotc3VicGFja2FnZXM9IiR7cGtnbmFtZX0tZGttcyAke3BrZ25hbWV9 LW9wZW5jbCAke3BrZ25hbWV9LWxpYnMiCi0KLWlmIFsgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiA9 ICJpNjg2IiBdOyB0aGVuCi0JX3BrZz0iTlZJRElBLUxpbnV4LXg4Ni0ke3ZlcnNpb259IgotCWRp c3RmaWxlcz0iaHR0cDovL3VzLmRvd25sb2FkLm52aWRpYS5jb20vWEZyZWU4Ni9MaW51eC14ODYv JHt2ZXJzaW9ufS8ke19wa2d9LnJ1biIKLQljaGVja3N1bT0yMDMyYWFkNjEyZDlmM2FmMWFlY2Y5 NzljZmRmZTQyM2Q3OWFhNzY5MjllZjhiZjhkM2E0MDMwNzZmNTA3Y2NhCi1lbHNlCi0JX3BrZz0i TlZJRElBLUxpbnV4LXg4Nl82NC0ke3ZlcnNpb259LW5vLWNvbXBhdDMyIgotCWRpc3RmaWxlcz0i aHR0cDovL3VzLmRvd25sb2FkLm52aWRpYS5jb20vWEZyZWU4Ni9MaW51eC14ODZfNjQvJHt2ZXJz aW9ufS8ke19wa2d9LnJ1biIKLQljaGVja3N1bT05OTVkNDRmZWY1ODdmZjUyODQ0OTdhNDdhOTVk NzFhZGJlZTBjMTMwMjBkNjE1ZTk0MGFjOTI4ZjE4MGY1Yjc3Ci1maQotCi1kb19leHRyYWN0KCkg ewotCWluc3RhbGwgLW03NTUgJHtYQlBTX1NSQ0RJU1RESVJ9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS8ke19wa2d9LnJ1biAke3dya3NyY30KLQljZCAke3dya3NyY30KLQkuLyR7X3BrZ30ucnVuIC0t ZXh0cmFjdC1vbmx5Ci0Jcm0gLWYgJHtfcGtnfS5ydW4KLX0KLQotZG9fcGF0Y2goKSB7Ci0JY2Qg JHtfcGtnfQotCXBhdGNoIC1wMSA8ICR7RklMRVNESVJ9L2tlcm5lbC01LngucGF0Y2gKLQlwYXRj aCAtcDEgPCAke0ZJTEVTRElSfS9rZXJuZWwtNS44LnBhdGNoCi0JcGF0Y2ggLXAxIDwgJHtGSUxF U0RJUn0va2VybmVsLTUuOS5wYXRjaAotfQotCi1kb19pbnN0YWxsKCkgewotCWNkICR7X3BrZ30K LQotCSMgWCBkcml2ZXIKLQl2aW5zdGFsbCBudmlkaWFfZHJ2LnNvIDc1NSB1c3IvbGliL3hvcmcv bW9kdWxlcy9kcml2ZXJzCi0KLQkjIEdMWCBleHRlbnNpb24gbW9kdWxlIGZvciBYCi0Jdmluc3Rh bGwgbGliZ2x4LnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIvbnZpZGlhL3hvcmcKLQlsbiAtc2Yg bGliZ2x4LnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL252aWRpYS94b3JnL2xpYmds eC5zby4xCi0JbG4gLXNmIGxpYmdseC5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9u dmlkaWEveG9yZy9saWJnbHguc28KLQkjIE92ZXJyaWRlIGRlZmF1bHQgTW9kdWxlUGF0aCB0byBs b2FkIG52aWRpYSdzIGdseCBpbnN0ZWFkIG9mIHhvcmcncwotCXZpbnN0YWxsICR7RklMRVNESVJ9 L252aWRpYS1nbHguY29uZiA2NDQgL3Vzci9zaGFyZS9YMTEveG9yZy5jb25mLmQgMTAtbnZpZGlh LWdseC5jb25mCi0KLQkjIE9wZW5HTCBsaWJyYXJpZXMgKEdMLCBFR0wgYW5kIEdMRVMpCi0Jdmlu c3RhbGwgbGliR0wuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJHTC5zby4k e3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJHTC5zby4xCi0Jdmluc3RhbGwgbGliRUdM LnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGliRUdMLnNvLiR7dmVyc2lvbn0g JHtERVNURElSfS91c3IvbGliL2xpYkVHTC5zby4xCi0Jdmluc3RhbGwgbGliR0xFU3YxX0NNLnNv LiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGliR0xFU3YxX0NNLnNvLiR7dmVyc2lv bn0gJHtERVNURElSfS91c3IvbGliL2xpYkdMRVN2MV9DTS5zby4xCi0Jdmluc3RhbGwgbGliR0xF U3YyLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGliR0xFU3YyLnNvLiR7dmVy c2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYkdMRVN2Mi5zby4yCi0JIyBTb21lIHByb2dyYW1z IGxpbmsgdG8gdGhlc2UgbGliZ2x2bmQgbGlua3MKLQlsbiAtc2YgbGliR0wuc28uMSAke0RFU1RE SVJ9L3Vzci9saWIvbGliT3BlbkdMLnNvLjAKLQlsbiAtc2YgbGliR0wuc28uMSAke0RFU1RESVJ9 L3Vzci9saWIvbGliR0xYLnNvLjAKLQotCSMgT3BlbkdMIGNvcmUgbGlicmFyeQotCXZpbnN0YWxs IGxpYm52aWRpYS1nbGNvcmUuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJu dmlkaWEtZ2xjb3JlLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1n bGNvcmUuc28KLQotCSMgVkRQQVUKLQl2aW5zdGFsbCBsaWJ2ZHBhdV9udmlkaWEuc28uJHt2ZXJz aW9ufSA3NTUgdXNyL2xpYi92ZHBhdQotCWxuIC1zZiBsaWJ2ZHBhdV9udmlkaWEuc28uJHt2ZXJz aW9ufSAke0RFU1RESVJ9L3Vzci9saWIvdmRwYXUvbGlidmRwYXVfbnZpZGlhLnNvCi0JbG4gLXNm IGxpYnZkcGF1X252aWRpYS5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi92ZHBhdS9s aWJ2ZHBhdV9udmlkaWEuc28uMQotCi0JIyBtaXNjIGxpYnJhcmllcwotCXZpbnN0YWxsIHRscy9s aWJudmlkaWEtdGxzLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZpZGlh LXRscy5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtdGxzLnNvCi0K LQl2aW5zdGFsbCBsaWJudmlkaWEtY2ZnLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAt c2YgbGlibnZpZGlhLWNmZy5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlk aWEtY2ZnLnNvCi0JbG4gLXNmIGxpYm52aWRpYS1jZmcuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9 L3Vzci9saWIvbGlibnZpZGlhLWNmZy5zby4xCi0KLQl2aW5zdGFsbCBsaWJudmlkaWEtbWwuc28u JHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlkaWEtbWwuc28uJHt2ZXJzaW9u fSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLW1sLnNvCi0JbG4gLXNmIGxpYm52aWRpYS1t bC5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtbWwuc28uMQotCi0J dmluc3RhbGwgbGlibnZpZGlhLWVuY29kZS5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4g LXNmIGxpYm52aWRpYS1lbmNvZGUuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGli bnZpZGlhLWVuY29kZS5zbwotCWxuIC1zZiBsaWJudmlkaWEtZW5jb2RlLnNvLiR7dmVyc2lvbn0g JHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1lbmNvZGUuc28uMQotCi0Jdmluc3RhbGwgbGli bnZpZGlhLWlmci5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1p ZnIuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWlmci5zbwotCWxu IC1zZiBsaWJudmlkaWEtaWZyLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52 aWRpYS1pZnIuc28uMQotCi0Jdmluc3RhbGwgbGlibnZpZGlhLWZiYy5zby4ke3ZlcnNpb259IDc1 NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1mYmMuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9 L3Vzci9saWIvbGlibnZpZGlhLWZiYy5zbwotCWxuIC1zZiBsaWJudmlkaWEtZmJjLnNvLiR7dmVy c2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1mYmMuc28uMQotCi0Jdmluc3RhbGwg bGlibnZpZGlhLWdsc2kuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCi0JIyBDVURBCi0JdmJp biBudmlkaWEtY3VkYS1tcHMtY29udHJvbAotCXZiaW4gbnZpZGlhLWN1ZGEtbXBzLXNlcnZlcgot CXZtYW4gbnZpZGlhLWN1ZGEtbXBzLWNvbnRyb2wuMS5negotCi0Jdmluc3RhbGwgbGliY3VkYS5z by4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYmN1ZGEuc28uJHt2ZXJzaW9ufSAk e0RFU1RESVJ9L3Vzci9saWIvbGliY3VkYS5zbwotCWxuIC1zZiBsaWJjdWRhLnNvLiR7dmVyc2lv bn0gJHtERVNURElSfS91c3IvbGliL2xpYmN1ZGEuc28uMQotCi0Jdmluc3RhbGwgbGlibnZjdXZp ZC5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52Y3V2aWQuc28uJHt2ZXJz aW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZjdXZpZC5zbwotCWxuIC1zZiBsaWJudmN1dmlk LnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52Y3V2aWQuc28uMQotCi0JIyBu dmlkaWEteGNvbmZpZwotCXZiaW4gbnZpZGlhLXhjb25maWcKLQl2bWFuIG52aWRpYS14Y29uZmln LjEuZ3oKLQotCSMgbnZpZGlhLXNldHRpbmdzCi0JdmJpbiBudmlkaWEtc2V0dGluZ3MKLQl2bWFu IG52aWRpYS1zZXR0aW5ncy4xLmd6Ci0Jdmluc3RhbGwgbnZpZGlhLXNldHRpbmdzLmRlc2t0b3Ag NjQ0IHVzci9zaGFyZS9hcHBsaWNhdGlvbnMKLQl2aW5zdGFsbCBudmlkaWEtc2V0dGluZ3MucG5n IDY0NCB1c3Ivc2hhcmUvcGl4bWFwcwotCXNlZCAtZSAnczpfX1VUSUxTX1BBVEhfXzovdXNyL2Jp bjonIFwKLQkJLWUgJ3M6X19QSVhNQVBfUEFUSF9fOi91c3Ivc2hhcmUvcGl4bWFwczonIFwKLQkJ LWkgJHtERVNURElSfS91c3Ivc2hhcmUvYXBwbGljYXRpb25zL252aWRpYS1zZXR0aW5ncy5kZXNr dG9wCi0KLQkjIG52aWRpYS1idWctcmVwb3J0Ci0JdmJpbiBudmlkaWEtYnVnLXJlcG9ydC5zaCBu dmlkaWEtYnVnLXJlcG9ydAotCXZiaW4gbnZpZGlhLWRlYnVnZHVtcAotCi0JIyBudmlkaWEtc21p Ci0JdmJpbiBudmlkaWEtc21pCi0Jdm1hbiBudmlkaWEtc21pLjEuZ3oKLQotCSMgTGljZW5zZSBh bmQgZG9jdW1lbnRhdGlvbi4KLQl2bGljZW5zZSBMSUNFTlNFCi0JdmRvYyBSRUFETUUudHh0IFJF QURNRQotCXZkb2MgTlZJRElBX0NoYW5nZWxvZwotCi0JIyBvcGVuY2wgcGtnCi0Jdmluc3RhbGwg bnZpZGlhLmljZCA2NDQgZXRjL09wZW5DTC92ZW5kb3JzCi0KLQl2aW5zdGFsbCBsaWJudmlkaWEt Y29tcGlsZXIuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlkaWEtY29t cGlsZXIuc28uJHt2ZXJzaW9ufSBcCi0JCSR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtY29t cGlsZXIuc28KLQlsbiAtc2YgbGlibnZpZGlhLWNvbXBpbGVyLnNvLiR7dmVyc2lvbn0gXAotCQkk e0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWNvbXBpbGVyLnNvLjEKLQotCXZpbnN0YWxsIGxp Ym52aWRpYS1vcGVuY2wuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlk aWEtb3BlbmNsLnNvLiR7dmVyc2lvbn0gXAotCQkke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlh LW9wZW5jbC5zbwotCWxuIC1zZiBsaWJudmlkaWEtb3BlbmNsLnNvLiR7dmVyc2lvbn0gXAotCQkk e0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLW9wZW5jbC5zby4xCi0KLQkjIGRrbXMgcGtnCi0J dm1rZGlyIHVzci9zcmMvbnZpZGlhLSR7dmVyc2lvbn0KLQkjIGFkZCBudmlkaWEtdXZtIGRrbXMg c3VibW9kdWxlIHRvby4KLQlpZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIgPSAieDg2XzY0IiBd OyB0aGVuCi0JCWNhdCBrZXJuZWwvdXZtL2RrbXMuY29uZi5mcmFnbWVudCA+PiBrZXJuZWwvZGtt cy5jb25mCi0JZmkKLQl2Y29weSAia2VybmVsLyoiIHVzci9zcmMvbnZpZGlhLSR7dmVyc2lvbn0K LQotCSMgc3lzdGVtZCBtb2R1bGVzLWxvYWQuZCg1KSBmaWxlLgotCXZta2RpciB1c3IvbGliL21v ZHVsZXMtbG9hZC5kCi0JZWNobyAibnZpZGlhIiA+ICR7REVTVERJUn0vdXNyL2xpYi9tb2R1bGVz LWxvYWQuZC9udmlkaWEuY29uZgotCWNobW9kIDY0NCAke0RFU1RESVJ9L3Vzci9saWIvbW9kdWxl cy1sb2FkLmQvbnZpZGlhLmNvbmYKLQlpZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIgPSAieDg2 XzY0IiBdOyB0aGVuCi0JCWVjaG8gIm52aWRpYS11dm0iID4gJHtERVNURElSfS91c3IvbGliL21v ZHVsZXMtbG9hZC5kL252aWRpYS11dm0uY29uZgotCQljaG1vZCA2NDQgJHtERVNURElSfS91c3Iv bGliL21vZHVsZXMtbG9hZC5kL252aWRpYS11dm0uY29uZgotCWZpCi0KLQkjIEJsYWNrbGlzdCBu b3V2ZWF1LgotCXZta2RpciB1c3IvbGliL21vZHByb2JlLmQKLQllY2hvICJibGFja2xpc3Qgbm91 dmVhdSIgPiAke0RFU1RESVJ9L3Vzci9saWIvbW9kcHJvYmUuZC9udmlkaWEuY29uZgotCWNobW9k IDY0NCAke0RFU1RESVJ9L3Vzci9saWIvbW9kcHJvYmUuZC9udmlkaWEuY29uZgotCi0JIyBPbWl0 IGRybSBkcmFjdXQgbW9kdWxlIHRvby4KLQl2bWtkaXIgdXNyL2xpYi9kcmFjdXQvZHJhY3V0LmNv bmYuZAotCWVjaG8gIm9taXRfZHJhY3V0bW9kdWxlcys9XCIgZHJtIFwiIiA+ICR7REVTVERJUn0v dXNyL2xpYi9kcmFjdXQvZHJhY3V0LmNvbmYuZC85OS1udmlkaWEuY29uZgotfQotCi1udmlkaWEz NDAtZGttc19wYWNrYWdlKCkgewotCXNob3J0X2Rlc2M9IiR7X2Rlc2N9IC0gREtNUyBrZXJuZWwg bW9kdWxlIgotCWRrbXNfbW9kdWxlcz0ibnZpZGlhICR7dmVyc2lvbn0iCi0JZGVwZW5kcz0iZGtt cyIKLQlwcm92aWRlcz0ibnZpZGlhLWRrbXMtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKLQlyZXBs YWNlcz0ibnZpZGlhLWRrbXM+PTAgbnZpZGlhLXN0YWJsZS1ka21zPj0wIgotCXBrZ19pbnN0YWxs KCkgewotCQl2bW92ZSB1c3Ivc3JjCi0JCXZtb3ZlIHVzci9saWIvbW9kdWxlcy1sb2FkLmQKLQkJ dm1vdmUgdXNyL2xpYi9tb2Rwcm9iZS5kCi0JCXZtb3ZlIHVzci9saWIvZHJhY3V0Ci0JfQotfQot bnZpZGlhMzQwLW9wZW5jbF9wYWNrYWdlKCkgewotCXNob3J0X2Rlc2M9IiR7X2Rlc2N9IC0gT3Bl bkNMIGltcGxlbWVudGF0aW9uIgotCXByb3ZpZGVzPSJudmlkaWEtb3BlbmNsLSR7dmVyc2lvbn1f JHtyZXZpc2lvbn0iCi0JcmVwbGFjZXM9Im52aWRpYS1vcGVuY2w+PTAgbnZpZGlhLXN0YWJsZS1v cGVuY2w+PTAiCi0JZGVwZW5kcz0ibGliT3BlbkNMIgotCXBrZ19pbnN0YWxsKCkgewotCQl2bW92 ZSAidXNyL2xpYi9saWJudmlkaWEtY29tcGlsZXIqIgotCQl2bW92ZSAidXNyL2xpYi9saWJudmlk aWEtb3BlbmNsKiIKLQkJdm1vdmUgZXRjL09wZW5DTAotCX0KLX0KLW52aWRpYTM0MC1saWJzX3Bh Y2thZ2UoKSB7Ci0Jc2hvcnRfZGVzYz0iJHtfZGVzY30gLSBsaWJyYXJpZXMiCi0JcHJvdmlkZXM9 ImxpYkdMLTcuMTFfMSBsaWJFR0wtNy4xMV8xIGxpYkdMRVMtNy4xMV8xIGxpYmdsdm5kLTEuMy4w XzEiCi0Jc2hsaWJfcHJvdmlkZXM9ImxpYkdMWC5zby4wIGxpYk9wZW5HTC5zby4wIgotCXJlcGxh Y2VzPSJsaWJHTD49MCBsaWJFR0w+PTAgbGliR0xFUz49MCBsaWJnbHZuZD49MCIKLQlwa2dfaW5z dGFsbCgpIHsKLQkJdm1vdmUgdXNyL2xpYgotCX0KLX0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZp ZGlhMzQwL3VwZGF0ZSBiL3NyY3BrZ3MvbnZpZGlhMzQwL3VwZGF0ZQpkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggNDNiYWQ2N2Y3ZTguLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZp ZGlhMzQwL3VwZGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotc2l0ZT0iaHR0cDov L3d3dy5udmlkaWEuY29tL29iamVjdC91bml4Lmh0bWwiCi1wYXR0ZXJuPSczNDAuKz5cS1tcZC5d Kyg/PTwvQT4pJwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRl IGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCmluZGV4IGUwN2MxNjBlYWZlLi5k MGYxYTQ5NjlhZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQpAQCAtNzgsNiArNzgsMTAg QEAgcmVwbGFjZXM9IgogIHdpcmVndWFyZC1nbzw9MC4wLjIwMTgxMjIyXzIKICB3aXJlc2hhcmst Z3RrPD0zLjAuN18xCiAgeXQtcGxheTw9MjAxNDAxMTdfMgorIG52aWRpYTM0MDw9MzQwLjEwOF80 CisgbnZpZGlhMzQwLWRrbXM8PTM0MC4xMDhfNAorIG52aWRpYTM0MC1vcGVuY2w8PTM0MC4xMDhf NAorIG52aWRpYTM0MC1saWJzPD0zNDAuMTA4XzQKICIKIAogaWYgWyAiJFhCUFNfVEFSR0VUX0xJ QkMiID0gIm11c2wiIF07IHRoZW4K --===============2647910540988561021==--