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 25126 invoked from network); 9 Jan 2021 18:50:28 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 9 Jan 2021 18:50:28 -0000 Content-Type: multipart/mixed; boundary="===============6100124344934151070==" 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 19:50:27 +0100 List-Id: Message-ID: <20210109185027.fXRch-u-A2lfmdmyje4jahXwSZdxu8jdn637XLJMTyU@z> GitHub notification mails are now in MIME to allow UTF8. --===============6100124344934151070== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgYWJlbnNvbiBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vYWJl bnNvbi92b2lkLXBhY2thZ2VzIHJtX252aWRpYTM0MApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjcyODcKCm52aWRpYTM0MDogcmVtb3ZlCgoKQSBwYXRj aCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9w dWxsLzI3Mjg3LnBhdGNoIGlzIGF0dGFjaGVk --===============6100124344934151070== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-rm_nvidia340-27287.patch" RnJvbSBmNTcyMTRiMWY2YTUxNDFjMzEyNzYwOTg0ZDc4N2I5NzcxMmU3MWI3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29t PgpEYXRlOiBTYXQsIDE5IERlYyAyMDIwIDE2OjQ5OjMyIC0wNjAwClN1YmplY3Q6IFtQQVRDSF0g bnZpZGlhMzQwOiByZW1vdmUKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMyAtCiBzcmNwa2dzL252aWRpYTM0MC1ka21zICAgICAgICAgICAgICAgICAg IHwgICAxIC0KIHNyY3BrZ3MvbnZpZGlhMzQwLWxpYnMgICAgICAgICAgICAgICAgICAgfCAgIDEg LQogc3JjcGtncy9udmlkaWEzNDAtb3BlbmNsICAgICAgICAgICAgICAgICB8ICAgMSAtCiBzcmNw a2dzL252aWRpYTM0MC9JTlNUQUxMICAgICAgICAgICAgICAgIHwgICA3IC0KIHNyY3BrZ3MvbnZp ZGlhMzQwL0lOU1RBTEwubXNnICAgICAgICAgICAgfCAgMTUgLQogc3JjcGtncy9udmlkaWEzNDAv UkVNT1ZFICAgICAgICAgICAgICAgICB8ICAgNyAtCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9r ZXJuZWwtNS44LnBhdGNoIHwgIDkyIC0tLQogc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVs LTUuOS5wYXRjaCB8IDEwNyAtLS0tCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS54 LnBhdGNoIHwgNzgxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL252aWRpYTM0MC9m aWxlcy9udmlkaWEtZ2x4LmNvbmYgIHwgICA0IC0KIHNyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRl ICAgICAgICAgICAgICAgfCAyMjMgLS0tLS0tLQogc3JjcGtncy9udmlkaWEzNDAvdXBkYXRlICAg ICAgICAgICAgICAgICB8ICAgMiAtCiBzcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUg ICAgICAgIHwgICA2ICstCiAxNCBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEyNDUg ZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy9udmlkaWEzNDAtZGttcwog ZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbnZpZGlhMzQwLWxpYnMKIGRlbGV0ZSBtb2RlIDEy MDAwMCBzcmNwa2dzL252aWRpYTM0MC1vcGVuY2wKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L252aWRpYTM0MC9JTlNUQUxMCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAv SU5TVEFMTC5tc2cKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9SRU1PVkUK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS44LnBh dGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUu OS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5l bC01LngucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9u dmlkaWEtZ2x4LmNvbmYKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC90ZW1w bGF0ZQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL3VwZGF0ZQoKZGlmZiAt LWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGRlNWNiNjU0MjZlLi43 NjAwNDFhNjY1NyAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJz CkBAIC0xMzEsMTYgKzEzMSwxMyBAQCBsaWJicmNtT3BlblZHLnNvIHJwaS11c2VybGFuZC0yMDE4 MDEwM18yCiBsaWJ3YXlsYW5kLWVnbC5zby4xIHdheWxhbmQtMS4xNS4wXzQKIGxpYm52aWRpYS1t bC5zby4xIG52aWRpYS1saWJzLTM0Ni40N18xIGlnbm9yZQogbGlibnZpZGlhLW1sLnNvLjEgbnZp ZGlhMzA0LWxpYnMtMzA0LjAwXzEgaWdub3JlCi1saWJudmlkaWEtbWwuc28uMSBudmlkaWEzNDAt bGlicy0zNDAuNDZfMSBpZ25vcmUKIGxpYm52aWRpYS1tbC5zby4xIG52aWRpYTM5MC1saWJzLTM5 MC44N18xIGlnbm9yZQogbGlibnZpZGlhLXRscy5zby4zNDYuNDcgbnZpZGlhLWxpYnMtMzQ2LjQ3 XzEgaWdub3JlCiBsaWJudmlkaWEtZ2xjb3JlLnNvLjM0Ni40NyBudmlkaWEtbGlicy0zNDYuNDdf MSBpZ25vcmUKIGxpYm52aWRpYS1ndGsyLnNvLjM0Ni40NyBudmlkaWEtZ3RrbGlicy0zNDYuNDdf MSBpZ25vcmUKIGxpYm52aWRpYS1ndGszLnNvLjM0Ni40NyBudmlkaWEtZ3RrbGlicy0zNDYuNDdf MSBpZ25vcmUKLWxpYm52aWRpYS1nbGNvcmUuc28uMzQ2LjQ3IG52aWRpYTM0MC1saWJzLTM0MC40 Nl8xIGlnbm9yZQogbGlibnZpZGlhLWdsY29yZS5zby4zOTAuODcgbnZpZGlhMzkwLWxpYnMtMzkw Ljg3XzEgaWdub3JlCiBsaWJudmlkaWEtZ2xzaS5zby4zNDYuNzIgbnZpZGlhLWxpYnMtMzQ2Ljcy XzEgaWdub3JlCi1saWJudmlkaWEtZ2xzaS5zby4zNDAuMTA3IG52aWRpYTM0MC1saWJzLTM0MC4x MDdfNyBpZ25vcmUKIGxpYm52aWRpYS1mYXRiaW5hcnlsb2FkZXIuc28uMzkwLjEzOCBudmlkaWEz OTAtbGlicy0zOTAuMTM4XzEgaWdub3JlCiBsaWJudmlkaWEtZmF0YmluYXJ5bG9hZGVyLnNvLjQz MC40MCBudmlkaWEtbGlicy00MzAuNDBfMSBpZ25vcmUKIGxpYmdsYXBpLnNvLjAgbGliZ2xhcGkt Ny4xMV8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC1ka21zIGIvc3JjcGtncy9udmlk aWEzNDAtZGttcwpkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMzgzZDA2N2E3MGYuLjAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQwLWRrbXMKKysrIC9kZXYvbnVsbApAQCAt MSArMCwwIEBACi1udmlkaWEzNDAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n aXQgYS9zcmNwa2dzL252aWRpYTM0MC1saWJzIGIvc3JjcGtncy9udmlkaWEzNDAtbGlicwpkZWxl dGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMzgzZDA2N2E3MGYuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbnZpZGlhMzQwLWxpYnMKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1udmlk aWEzNDAKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL252 aWRpYTM0MC1vcGVuY2wgYi9zcmNwa2dzL252aWRpYTM0MC1vcGVuY2wKZGVsZXRlZCBmaWxlIG1v ZGUgMTIwMDAwCmluZGV4IDM4M2QwNjdhNzBmLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252 aWRpYTM0MC1vcGVuY2wKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1udmlkaWEzNDAKXCBO byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9J TlNUQUxMIGIvc3JjcGtncy9udmlkaWEzNDAvSU5TVEFMTApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggNmIwNjViZWRiNGEuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQw L0lOU1RBTEwKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLSMgUmVnZW5lcmF0ZSBpbml0 cmFtZnMuCi1jYXNlICR7QUNUSU9OfSBpbgotcG9zdCkKLQllY2hvICJSZWdlbmVyYXRpbmcgaW5p dHJhbWZzLCBwbGVhc2Ugd2FpdC4uLiIKLQlkcmFjdXQgLWYgLXEgLS1yZWdlbmVyYXRlLWFsbAot CTs7Ci1lc2FjCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9JTlNUQUxMLm1zZyBiL3Ny Y3BrZ3MvbnZpZGlhMzQwL0lOU1RBTEwubXNnCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCA2MzAxYzM2ZWRiZS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvSU5TVEFM TC5tc2cKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi0+IFJlbW92ZSBmcm9tIHlvdXIg L2V0Yy9YMTEveG9yZy5jb25mIGJsb2NrcyBsaWtlIHRoaXM6Ci0KLVNlY3Rpb24gIkZpbGVzIgot Li4uCi1FbmRTZWN0aW9uCi0KLVRoaXMgaXMga25vd24gdG8gaGFwcGVuIHdoZW4gdGhlIGNvbmZp Z3VyYXRpb24gaXMgZ2VuZXJhdGVkIGJ5IG52aWRpYS14Y29uZmlnLgotU3VjaCBhIHNlY3Rpb24g aW50ZXJmZXJlcyB3aXRoIHRoZSAiRmlsZXMiIFNlY3Rpb24gcHJvdmlkZWQgYnkgdGhlIHBhY2th Z2UuCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotPiBJZiB5b3Ugd2lzaCB0byBnbyBiYWNr IHRvIG5vdXZlYXU6Ci0KLSMgeGJwcy1yZW1vdmUgbnZpZGlhMzQwIG52aWRpYTM0MC1ka21zCi0j IHhicHMtaW5zdGFsbCBsaWJnbHZuZApkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvUkVN T1ZFIGIvc3JjcGtncy9udmlkaWEzNDAvUkVNT1ZFCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCBlNGQ0OTRjYTAxNS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvUkVN T1ZFCisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi0jIFJlZ2VuZXJhdGUgaW5pdHJhbWZz LgotY2FzZSAke0FDVElPTn0gaW4KLXB1cmdlKQotCWVjaG8gIlJlZ2VuZXJhdGluZyBpbml0cmFt ZnMsIHBsZWFzZSB3YWl0Li4uIgotCWRyYWN1dCAtZiAtcSAtLXJlZ2VuZXJhdGUtYWxsCi0JOzsK LWVzYWMKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjgucGF0 Y2ggYi9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS44LnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAxZDhiMWE0MGUxZS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDky ICswLDAgQEAKLUZyb20gMmNjMzM0MmI0YjNjOTZiY2M0MDYyNTEzMDExZDM1YzA3OWIwMDlhMiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IGdyYXlza3kgPGdyYXlza3lAYXJjaGxpbnV4 LnVzPgotRGF0ZTogVGh1LCAyMiBPY3QgMjAyMCAwNjo1OTo1OSAtMDQwMAotU3ViamVjdDogW1BB VENIIDIvM10ga2VybmVsLTUuOAotCi1jcmVkaXQ6IGh0dHBzOi8vbGF1bmNocGFkLm5ldC9+a2Vs ZWJlazMzMy8rYXJjaGl2ZS91YnVudHUvbnZpZGlhLWxlZ2FjeS8rcGFja2FnZXMKLWV4dHJhY3Rl ZCBmcm9tOiBodHRwczovL2xhdW5jaHBhZGxpYnJhcmlhbi5uZXQvNDkyNDY4NTU3L252aWRpYS1n cmFwaGljcy1kcml2ZXJzLTM0MF8zNDAuMTA4LTFsbXRyZm9jYWwzXzM0MC4xMDgtMmxtdHJmb2Nh bC5kaWZmLmd6Ci0tLS0KLSBrZXJuZWwvbnYtbGludXguaCAgICAgICAgICAgICAgICB8IDggKysr KysrKysKLSBrZXJuZWwvbnZpZGlhLW1vZHVsZXMtY29tbW9uLm1rICB8IDEgKwotIGtlcm5lbC9v cy1tbG9jay5jICAgICAgICAgICAgICAgIHwgOCArKysrKysrKwotIGtlcm5lbC91dm0vbnZpZGlh X3V2bV9saXRlX2FwaS5jIHwgNCArKysrCi0gNCBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25z KCspCi0KLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYtbGludXguaCBiL2tlcm5lbC9udi1saW51eC5o Ci1pbmRleCA4M2U2NDMzLi5kMDU1NTUyIDEwMDY0NAotLS0tIGEva2VybmVsL252LWxpbnV4LmgK LSsrKyBiL2tlcm5lbC9udi1saW51eC5oCi1AQCAtNjY5LDExICs2NjksMTkgQEAgZXh0ZXJuIG52 X3NwaW5sb2NrX3Qga21fbG9jazsKLSAjICBkZWZpbmUgS01fRlJFRV9SRUNPUkQoYSxiLGMpCi0g I2VuZGlmCi0gCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig1LCA4 LCAwKQotKyNkZWZpbmUgTlZfVk1BTExPQyhwdHIsIHNpemUpICAgICAgICAgICAgICAgICAgICAg XAotKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAot KyAgICAgICAgKHB0cikgPSBfX3ZtYWxsb2Moc2l6ZSwgR0ZQX0tFUk5FTCk7ICAgICAgXAotKyAg ICAgICAgVk1fQUxMT0NfUkVDT1JEKHB0ciwgc2l6ZSwgInZtX3ZtYWxsb2MiKTsgXAotKyAgICB9 Ci0rI2Vsc2UKLSAjZGVmaW5lIE5WX1ZNQUxMT0MocHRyLCBzaXplKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0gICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgKHB0cikgPSBfX3ZtYWxsb2Moc2l6ZSwg R0ZQX0tFUk5FTCwgUEFHRV9LRVJORUwpOyAgIFwKLSAgICAgICAgIFZNX0FMTE9DX1JFQ09SRChw dHIsIHNpemUsICJ2bV92bWFsbG9jIik7ICAgICAgICAgICBcCi0gICAgIH0KLSsjZW5kaWYKLSAK LSAjZGVmaW5lIE5WX1ZGUkVFKHB0ciwgc2l6ZSkgICAgICAgICAgICAgICAgICAgICAgICAgXAot ICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi1k aWZmIC0tZ2l0IGEva2VybmVsL252aWRpYS1tb2R1bGVzLWNvbW1vbi5tayBiL2tlcm5lbC9udmlk aWEtbW9kdWxlcy1jb21tb24ubWsKLWluZGV4IGI5NDU5MWIuLjBlNGMyMjggMTAwNjQ0Ci0tLS0g YS9rZXJuZWwvbnZpZGlhLW1vZHVsZXMtY29tbW9uLm1rCi0rKysgYi9rZXJuZWwvbnZpZGlhLW1v ZHVsZXMtY29tbW9uLm1rCi1AQCAtMjIyLDYgKzIyMiw3IEBAIGJ1aWxkLXNhbml0eS1jaGVja3M6 Ci0gZGVmaW5lIEJVSUxEX01PRFVMRV9SVUxFCi0gICQoMSk6IGJ1aWxkLXNhbml0eS1jaGVja3Mg JCgzKQotIAlAZWNobyAiTlZJRElBOiBjYWxsaW5nIEtCVUlMRC4uLiI7IFwKLSsJdG91Y2ggLm52 LWtlcm5lbC5vLmNtZDsgXAotIAkkJChNQUtFKSAiQ0M9JCQoQ0MpIiBOVl9NT0RVTEVfU1VGRklY PSQkKHN0cmlwICQoMikpICQkKEtCVUlMRF9QQVJBTVMpIG1vZHVsZXM7IFwKLSAJZWNobyAiTlZJ RElBOiBsZWZ0IEtCVUlMRC4iOyBcCi0gCWlmICEgWyAtZiAkKDEpIF07IHRoZW4gXAotZGlmZiAt LWdpdCBhL2tlcm5lbC9vcy1tbG9jay5jIGIva2VybmVsL29zLW1sb2NrLmMKLWluZGV4IDhhMWZh MmYuLmZjNTA1NDMgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvb3MtbWxvY2suYwotKysrIGIva2VybmVs L29zLW1sb2NrLmMKLUBAIC00NCwxMSArNDQsMTkgQEAgUk1fU1RBVFVTIE5WX0FQSV9DQUxMIG9z X2xvY2tfdXNlcl9wYWdlcygKLSAgICAgICAgIHJldHVybiBybVN0YXR1czsKLSAgICAgfQotIAot KyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOCwgMCkKLSsgICAg ZG93bl9yZWFkKCZtbS0+bW1hcF9sb2NrKTsKLSsgICAgcmV0ID0gTlZfR0VUX1VTRVJfUEFHRVMo KHVuc2lnbmVkIGxvbmcpYWRkcmVzcywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFn ZV9jb3VudCwgd3JpdGUsIGZvcmNlLCB1c2VyX3BhZ2VzLCBOVUxMKTsKLSsgICAgdXBfcmVhZCgm bW0tPm1tYXBfbG9jayk7Ci0rICAgIHBpbm5lZCA9IHJldDsKLSsjZWxzZQotICAgICBkb3duX3Jl YWQoJm1tLT5tbWFwX3NlbSk7Ci0gICAgIHJldCA9IE5WX0dFVF9VU0VSX1BBR0VTKCh1bnNpZ25l ZCBsb25nKWFkZHJlc3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VfY291bnQs IHdyaXRlLCBmb3JjZSwgdXNlcl9wYWdlcywgTlVMTCk7Ci0gICAgIHVwX3JlYWQoJm1tLT5tbWFw X3NlbSk7Ci0gICAgIHBpbm5lZCA9IHJldDsKLSsjZW5kaWYKLSAKLSAgICAgaWYgKHJldCA8IDAp Ci0gICAgIHsKLWRpZmYgLS1naXQgYS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGl0ZV9hcGkuYyBi L2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRlX2FwaS5jCi1pbmRleCA4NDQ4ZWI2Li45N2E0ODE4 IDEwMDY0NAotLS0tIGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGVfYXBpLmMKLSsrKyBiL2tl cm5lbC91dm0vbnZpZGlhX3V2bV9saXRlX2FwaS5jCi1AQCAtMzAsNiArMzAsMTAgQEAKLSAjaW5j bHVkZSAidXZtX2dwdV9vcHNfdGVzdHMuaCIKLSAjZW5kaWYKLSAKLSsjaWYgTElOVVhfVkVSU0lP Tl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDgsIDApCi0rI2RlZmluZSBtbWFwX3NlbSBtbWFw X2xvY2sKLSsjZW5kaWYKLSsKLSAvLwotIC8vIG52aWRpYV91dm1fbGl0ZV9hcGkuYwotIC8vCi0t LSAKLTIuMjkuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwt NS45LnBhdGNoIGIvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOS5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDg1ODQzMTRmMjQuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjkucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwxMDcgKzAsMCBAQAotRnJvbSBmZWE0MDFkZjc1MDBiZmJlYWQ1YTQyYjFlNzQ1NjBkYmRk ZjJmNWEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogZ3JheXNreSA8Z3JheXNreUBh cmNobGludXgudXM+Ci1EYXRlOiBUaHUsIDIyIE9jdCAyMDIwIDA3OjAwOjM1IC0wNDAwCi1TdWJq ZWN0OiBbUEFUQ0ggMy8zXSBrZXJuZWwtNS45Ci0KLWNyZWRpdDogaHR0cHM6Ly9naXRodWIuY29t L3dhcnBtZS9taW5pbXl0aDIvYmxvYi9tYXN0ZXIvc2NyaXB0L252aWRpYS9udmlkaWEtMzQwLjEw OC9maWxlcy9udmlkaWEtMzQwLjEwOC1maXgtNS45LWtlcm5lbC1jb21waWxlLnBhdGNoCi0tLS0K LSBrZXJuZWwvbnYtZHJtLmMgICAgICAgICAgICAgICB8IDggKysrKysrKysKLSBrZXJuZWwvbnYt bGludXguaCAgICAgICAgICAgICB8IDkgKysrKysrKy0tCi0ga2VybmVsL252LmMgICAgICAgICAg ICAgICAgICAgfCA0ICsrKysKLSBrZXJuZWwvdXZtL252aWRpYV91dm1fbGludXguaCB8IDIgKysK LSA0IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCi0KLWRp ZmYgLS1naXQgYS9rZXJuZWwvbnYtZHJtLmMgYi9rZXJuZWwvbnYtZHJtLmMKLWluZGV4IDg1ZGIw N2UuLmYwYzEyOTkgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvbnYtZHJtLmMKLSsrKyBiL2tlcm5lbC9u di1kcm0uYwotQEAgLTQxNSw3ICs0MTUsMTEgQEAgc3RhdGljIHN0cnVjdCBkcm1fZHJpdmVyIG52 X2RybV9kcml2ZXIgPSB7Ci0gICAgIC5zZXRfYnVzaWQgPSBkcm1fcGNpX3NldF9idXNpZCwKLSAj ZW5kaWYKLSAKLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDks IDApCi0rICAgIC5nZW1fZnJlZV9vYmplY3RfdW5sb2NrZWQgPSBudl9nZW1fZnJlZSwKLSsjZWxz ZQotICAgICAuZ2VtX2ZyZWVfb2JqZWN0ID0gbnZfZ2VtX2ZyZWUsCi0rI2VuZGlmCi0gCi0gICAg IC5wcmltZV9oYW5kbGVfdG9fZmQgPSBkcm1fZ2VtX3ByaW1lX2hhbmRsZV90b19mZCwKLSAgICAg LmdlbV9wcmltZV9leHBvcnQgPSBkcm1fZ2VtX3ByaW1lX2V4cG9ydCwKLUBAIC01MTEsOCArNTE1 LDEyIEBAIFJNX1NUQVRVUyBOVl9BUElfQ0FMTCBudl9hbGxvY19vc19kZXNjcmlwdG9yX2hhbmRs ZSgKLSAKLSAjaWYgZGVmaW5lZChOVl9EUk1fR0VNX09CSkVDVF9QVVRfVU5MT0NLRURfUFJFU0VO VCkKLSAgICAgZHJtX2dlbV9vYmplY3RfcHV0X3VubG9ja2VkKCZudl9vYmotPmJhc2UpOwotKyNl bHNlCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig1LCA5LCAwKQot KyAgICBkcm1fZ2VtX29iamVjdF9wdXRfbG9ja2VkKCZudl9vYmotPmJhc2UpOwotICNlbHNlCi0g ICAgIGRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKCZudl9vYmotPmJhc2UpOwot KyNlbmRpZgotICNlbmRpZgotIAotICAgICBzdGF0dXMgPSBSTV9PSzsKLWRpZmYgLS1naXQgYS9r ZXJuZWwvbnYtbGludXguaCBiL2tlcm5lbC9udi1saW51eC5oCi1pbmRleCBkMDU1NTUyLi41MjRh OGZlIDEwMDY0NAotLS0tIGEva2VybmVsL252LWxpbnV4LmgKLSsrKyBiL2tlcm5lbC9udi1saW51 eC5oCi1AQCAtMTM2LDggKzEzNiwxMCBAQAotIAotICNpZiBkZWZpbmVkKE5WQ1BVX1g4Nl82NCkg JiYgIWRlZmluZWQoSEFWRV9DT01QQVRfSU9DVEwpCi0gI2luY2x1ZGUgPGxpbnV4L3N5c2NhbGxz Lmg+ICAgICAgICAgLyogc3lzX2lvY3RsKCkgICAgICAgICAgICAgICAgICAgICAgKi8KLSsjaWYg TElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNSwgOSwgMCkKLSAjaW5jbHVkZSA8 bGludXgvaW9jdGwzMi5oPiAgICAgICAgICAvKiByZWdpc3Rlcl9pb2N0bDMyX2NvbnZlcnNpb24o KSAgICAqLwotICNlbmRpZgotKyNlbmRpZgotIAotICNpZiAhZGVmaW5lZChOVl9GSUxFX09QRVJB VElPTlNfSEFTX0lPQ1RMKSAmJiBcCi0gICAhZGVmaW5lZChOVl9GSUxFX09QRVJBVElPTlNfSEFT X1VOTE9DS0VEX0lPQ1RMKQotQEAgLTIyNDksMTAgKzIyNTEsMTMgQEAgc3RhdGljIGlubGluZSBO dlU2NCBudl9ub2RlX2VuZF9wZm4oaW50IG5pZCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBhZ2VzLCB2bWFzLCBOVUxMKTsKLSAKLSAgICAgICAgICNlbHNl Ci0tCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig1LCA5LCAwKQot KyAgICAgICAgICAgICAgIHJldHVybiBnZXRfdXNlcl9wYWdlc19yZW1vdGUobW0sIHN0YXJ0LCBu cl9wYWdlcywgZmxhZ3MsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwYWdlcywgdm1hcywgTlVMTCk7Ci0rI2Vsc2UKLSAgICAgICAgICAgICAgICByZXR1cm4g Z2V0X3VzZXJfcGFnZXNfcmVtb3RlKHRzaywgbW0sIHN0YXJ0LCBucl9wYWdlcywgZmxhZ3MsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlcywgdm1hcyk7 Ci0tCi0rI2VuZGlmCi0gICAgICAgICAjZW5kaWYKLSAKLSAgICAgICAgIH0KLWRpZmYgLS1naXQg YS9rZXJuZWwvbnYuYyBiL2tlcm5lbC9udi5jCi1pbmRleCBhMjE4ZjgzLi5iZTRlMGY4IDEwMDY0 NAotLS0tIGEva2VybmVsL252LmMKLSsrKyBiL2tlcm5lbC9udi5jCi1AQCAtMjc4NSw3ICsyNzg1 LDExIEBAIG52aWRpYV9wcm9iZQotIAotICNpZiBkZWZpbmVkKENPTkZJR19WR0FfQVJCKQotICNp ZiBkZWZpbmVkKFZHQV9ERUZBVUxUX0RFVklDRSkKLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49 IEtFUk5FTF9WRVJTSU9OKDUsIDksIDApCi0rICAgIHZnYV9nZXQoVkdBX0RFRkFVTFRfREVWSUNF LCBWR0FfUlNSQ19MRUdBQ1lfTUFTSywgMCk7Ci0rI2Vsc2UKLSAgICAgdmdhX3RyeWdldChWR0Ff REVGQVVMVF9ERVZJQ0UsIFZHQV9SU1JDX0xFR0FDWV9NQVNLKTsKLSsjZW5kaWYKLSAjZW5kaWYK LSAgICAgdmdhX3NldF9sZWdhY3lfZGVjb2RpbmcoZGV2LCBWR0FfUlNSQ19OT05FKTsKLSAjZW5k aWYKLWRpZmYgLS1naXQgYS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGludXguaCBiL2tlcm5lbC91 dm0vbnZpZGlhX3V2bV9saW51eC5oCi1pbmRleCAxNjI1MjA5Li5lZmMxODFmIDEwMDY0NAotLS0t IGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpbnV4LmgKLSsrKyBiL2tlcm5lbC91dm0vbnZpZGlh X3V2bV9saW51eC5oCi1AQCAtMTU4LDggKzE1OCwxMCBAQAotIAotICNpZiBkZWZpbmVkKE5WQ1BV X1g4Nl82NCkgJiYgIWRlZmluZWQoSEFWRV9DT01QQVRfSU9DVEwpCi0gI2luY2x1ZGUgPGxpbnV4 L3N5c2NhbGxzLmg+ICAgICAgICAgLyogc3lzX2lvY3RsKCkgICAgICAgICAgICAgICAgICAgICAg Ki8KLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oNSwgOSwgMCkKLSAj aW5jbHVkZSA8bGludXgvaW9jdGwzMi5oPiAgICAgICAgICAvKiByZWdpc3Rlcl9pb2N0bDMyX2Nv bnZlcnNpb24oKSAgICAqLwotICNlbmRpZgotKyNlbmRpZgotIAotICNpZiAhZGVmaW5lZChOVl9G SUxFX09QRVJBVElPTlNfSEFTX0lPQ1RMKSAmJiBcCi0gICAhZGVmaW5lZChOVl9GSUxFX09QRVJB VElPTlNfSEFTX1VOTE9DS0VEX0lPQ1RMKQotLS0gCi0yLjI5LjAKLQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUueC5wYXRjaCBiL3NyY3BrZ3MvbnZpZGlhMzQw L2ZpbGVzL2tlcm5lbC01LngucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ3 Zjc2M2JiZTM5Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJu ZWwtNS54LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzgxICswLDAgQEAKLUZyb20gMjE1NGNj NDQ3YTIzNzdjZmQ2MGE3YjdjNWI2MTllNjg5ZWJmNzFiMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKLUZyb206IGdyYXlza3kgPGdyYXlza3lAYXJjaGxpbnV4LnVzPgotRGF0ZTogVGh1LCAyMiBP Y3QgMjAyMCAwNjo1ODo1MyAtMDQwMAotU3ViamVjdDogW1BBVENIIDEvM10ga2VybmVsLTUuNwot Ci1Db250YWlucyBhIGJ1bmNoIG9mIHN0dWZmIHJlcXVpcmVkIGZvciB0aGluZ3MgdXAgdG8gNS43 LgotY3JlZGl0OiBodHRwczovL2dpdGxhYi5tYW5qYXJvLm9yZy9wYWNrYWdlcz91dGY4PSVFMiU5 QyU5MyZmaWx0ZXI9bnZpZGlhLTM0MHh4Ci0tLS0KLSBrZXJuZWwvTWFrZWZpbGUgICAgICAgICAg ICAgIHwgICA1ICsKLSBrZXJuZWwvY29uZnRlc3Quc2ggICAgICAgICAgIHwgIDgxICsrKysrKysr KysrKysKLSBrZXJuZWwvZGttcy5jb25mICAgICAgICAgICAgIHwgICA4ICstCi0ga2VybmVsL252 LWRybS5jICAgICAgICAgICAgICB8IDIyOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLQotIGtlcm5lbC9udi1saW51eC5oICAgICAgICAgICAgfCAgNDkgKysrKysrKysKLSBrZXJu ZWwvbnYtcHJvY2ZzLmMgICAgICAgICAgIHwgIDIwICsrKwotIGtlcm5lbC9udi10aW1lLmggICAg ICAgICAgICAgfCAgIDkgKy0KLSBrZXJuZWwvbnYuYyAgICAgICAgICAgICAgICAgIHwgICAyICst Ci0ga2VybmVsL29zLWludGVyZmFjZS5jICAgICAgICB8ICAgOCArLQotIGtlcm5lbC91dm0vTWFr ZWZpbGUgICAgICAgICAgfCAgIDEgKwotIGtlcm5lbC91dm0vY29uZnRlc3Quc2ggICAgICAgfCAg IDQgKwotIGtlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRlLmMgfCAgMjkgKysrKy0KLSAxMiBmaWxl cyBjaGFuZ2VkLCA0MzEgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1n aXQgYS9rZXJuZWwvTWFrZWZpbGUgYi9rZXJuZWwvTWFrZWZpbGUKLWluZGV4IDEyNWE2OTAuLjI1 OTcwODAgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvTWFrZWZpbGUKLSsrKyBiL2tlcm5lbC9NYWtlZmls ZQotQEAgLTEwOCwxMiArMTA4LDE0IEBAIENPTVBJTEVfVEVTVFMgPSBcCi0gCWFjcXVpcmVfY29u c29sZV9zZW0gXAotIAljb25zb2xlX2xvY2sgXAotIAlrbWVtX2NhY2hlX2NyZWF0ZSBcCi0rCWtt ZW1fY2FjaGVfY3JlYXRlX3VzZXJjb3B5IFwKLSAJb3V0ZXJfZmx1c2hfYWxsIFwKLSAJb25fZWFj aF9jcHUgXAotIAlzbXBfY2FsbF9mdW5jdGlvbiBcCi0gCW52bWFwX3N1cHBvcnQgXAotIAlhY3Bp X2V2YWx1YXRlX2ludGVnZXIgXAotIAlpb3JlbWFwX2NhY2hlIFwKLSsJaW9yZW1hcF9ub2NhY2hl IFwKLSAJaW9yZW1hcF93YyBcCi0gCXByb2NfZGlyX2VudHJ5IFwKLSAJSU5JVF9XT1JLIFwKLUBA IC0xMjIsNiArMTI0LDcgQEAgQ09NUElMRV9URVNUUyA9IFwKLSAJcGNpX2RvbWFpbl9uciBcCi0g CXBjaV9kbWFfbWFwcGluZ19lcnJvciBcCi0gCWZpbGVfb3BlcmF0aW9ucyBcCi0rCXByb2Nfb3Bz IFwKLSAJc2dfYWxsb2NfdGFibGUgXAotIAlzZ19pbml0X3RhYmxlIFwKLSAJcGNpX2dldF9kb21h aW5fYnVzX2FuZF9zbG90IFwKLUBAIC0xNDcsNiArMTUwLDggQEAgQ09NUElMRV9URVNUUyA9IFwK LSAJdm1fZmF1bHRfcHJlc2VudCBcCi0gCXZtX2ZhdWx0X2hhc19hZGRyZXNzIFwKLSAJZHJtX2Ry aXZlcl91bmxvYWRfaGFzX2ludF9yZXR1cm5fdHlwZSBcCi0rCWRybV9nZXRfcGNpX2RldiBcCi0r CWRybV9wY2lfaW5pdCBcCi0gCWRybV9sZWdhY3lfcGNpX2luaXQgXAotIAl0aW1lcl9zZXR1cCBc Ci0gCWRvX2dldHRpbWVvZmRheSBcCi1kaWZmIC0tZ2l0IGEva2VybmVsL2NvbmZ0ZXN0LnNoIGIv a2VybmVsL2NvbmZ0ZXN0LnNoCi1pbmRleCBiN2E4NWYwLi5hNTIyNWU1IDEwMDc1NQotLS0tIGEv a2VybmVsL2NvbmZ0ZXN0LnNoCi0rKysgYi9rZXJuZWwvY29uZnRlc3Quc2gKLUBAIC0xNzYsNiAr MTc2LDcgQEAgdGVzdF9oZWFkZXJzKCkgewotICAgICBGSUxFUz0iJEZJTEVTIGxpbnV4L2t0aW1l LmgiCi0gICAgIEZJTEVTPSIkRklMRVMgbGludXgvZmlsZS5oIgotIAotKyAgICBGSUxFU19BUkNI PSIkRklMRVNfQVJDSCBhc20vcGd0YWJsZS5oIgotICAgICBGSUxFU19BUkNIPSIkRklMRVNfQVJD SCBhc20vc2V0X21lbW9yeS5oIgotIAotICAgICB0cmFuc2xhdGVfYW5kX2ZpbmRfaGVhZGVyX2Zp bGVzICRIRUFERVJTICAgICAgJEZJTEVTCi1AQCAtNDQwLDYgKzQ0MSw5IEBAIGNvbXBpbGVfdGVz dCgpIHsKLSAgICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUgc2V0X21lbW9yeV9hcnJheV91 YygpIGZ1bmN0aW9uIGlzIHByZXNlbnQuCi0gICAgICAgICAgICAgIwotICAgICAgICAgICAgIENP REU9IgotKyAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0FTTV9QR1RBQkxFX0hfUFJFU0VOVCkK LSsgICAgICAgICAgICAjaW5jbHVkZSA8YXNtL3BndGFibGUuaD4KLSsgICAgICAgICAgICAjZW5k aWYKLSAgICAgICAgICAgICAjaWYgZGVmaW5lZChOVl9BU01fU0VUX01FTU9SWV9IX1BSRVNFTlQp Ci0gICAgICAgICAgICAgI2luY2x1ZGUgPGFzbS9zZXRfbWVtb3J5Lmg+Ci0gICAgICAgICAgICAg I2Vsc2UKLUBAIC05MTQsNiArOTE4LDIxIEBAIGNvbXBpbGVfdGVzdCgpIHsKLSAgICAgICAgICAg ICBmaQotICAgICAgICAgOzsKLSAKLSsgICAgICAgIGttZW1fY2FjaGVfY3JlYXRlX3VzZXJjb3B5 KQotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUga21lbV9j YWNoZV9jcmVhdGVfdXNlcmNvcHkgZnVuY3Rpb24gZXhpc3RzLgotKyAgICAgICAgICAgICMKLSsg ICAgICAgICAgICAjIFRoaXMgZnVuY3Rpb24gd2FzIGFkZGVkIGJ5OgotKyAgICAgICAgICAgICMg ICAyMDE3LTA2LTEwICA4ZWI4Mjg0YjQxMjkwNjE4MTM1N2MyYjAxMTBkODc5ZDVhZjk1ZTUyCi0r ICAgICAgICAgICAgQ09ERT0iCi0rICAgICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4K LSsgICAgICAgICAgICB2b2lkIGttZW1fY2FjaGVfY3JlYXRlX3VzZXJjb3B5KHZvaWQpIHsKLSsg ICAgICAgICAgICAgICAga21lbV9jYWNoZV9jcmVhdGVfdXNlcmNvcHkoKTsKLSsgICAgICAgICAg ICB9IgotKwotKyAgICAgICAgICAgIGNvbXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZf S01FTV9DQUNIRV9DUkVBVEVfVVNFUkNPUFlfUFJFU0VOVCIgIiIgImZ1bmN0aW9ucyIKLSsgICAg ICAgIDs7Ci0rCi0gICAgICAgICBzbXBfY2FsbF9mdW5jdGlvbikKLSAgICAgICAgICAgICAjCi0g ICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIHNtcF9jYWxsX2Z1bmN0aW9uKCkgZnVuY3Rp b24gaXMKLUBAIC0xMTg4LDYgKzEyMDcsMjIgQEAgY29tcGlsZV90ZXN0KCkgewotICAgICAgICAg ICAgIGNvbXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZfSU9SRU1BUF9DQUNIRV9QUkVT RU5UIiAiIiAiZnVuY3Rpb25zIgotICAgICAgICAgOzsKLSAKLSsgICAgICAgIGlvcmVtYXBfbm9j YWNoZSkKLSsgICAgICAgICAgICAjCi0rICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIGlv cmVtYXBfbm9jYWNoZSgpIGZ1bmN0aW9uIGlzIHByZXNlbnQuCi0rICAgICAgICAgICAgIwotKyAg ICAgICAgICAgICMgUmVtb3ZlZCBieSBjb21taXQgNGJkYzBkNjc2YTY0ICgicmVtb3ZlIGlvcmVt YXBfbm9jYWNoZSBhbmQKLSsgICAgICAgICAgICAjIGRldm1faW9yZW1hcF9ub2NhY2hlIikgaW4g djUuNiAoMjAyMC0wMS0wNikKLSsgICAgICAgICAgICAjCi0rICAgICAgICAgICAgQ09ERT0iCi0r ICAgICAgICAgICAgI2luY2x1ZGUgPGFzbS9pby5oPgotKyAgICAgICAgICAgIHZvaWQgY29uZnRl c3RfaW9yZW1hcF9ub2NhY2hlKHZvaWQpIHsKLSsgICAgICAgICAgICAgICAgaW9yZW1hcF9ub2Nh Y2hlKCk7Ci0rICAgICAgICAgICAgfSIKLSsKLSsgICAgICAgICAgICBjb21waWxlX2NoZWNrX2Nv bmZ0ZXN0ICIkQ09ERSIgIk5WX0lPUkVNQVBfTk9DQUNIRV9QUkVTRU5UIiAiIiAiZnVuY3Rpb25z IgotKyAgICAgICAgOzsKLSsKLSAgICAgICAgIGlvcmVtYXBfd2MpCi0gICAgICAgICAgICAgIwot ICAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBpb3JlbWFwX3djKCkgZnVuY3Rpb24gaXMg cHJlc2VudC4KLUBAIC0xMzcxLDYgKzE0MDYsMTYgQEAgY29tcGlsZV90ZXN0KCkgewotICAgICAg ICAgICAgIGNvbXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZfRklMRV9PUEVSQVRJT05T X0hBU19DT01QQVRfSU9DVEwiICIiICJ0eXBlcyIKLSAgICAgICAgIDs7Ci0gCi0rICAgICAgICBw cm9jX29wcykKLSsgICAgICAgICAgICBDT0RFPSIKLSsgICAgICAgICAgICAjaW5jbHVkZSA8bGlu dXgvcHJvY19mcy5oPgotKyAgICAgICAgICAgIGludCBjb25mdGVzdF9wcm9jX29wcyh2b2lkKSB7 Ci0rICAgICAgICAgICAgICAgIHJldHVybiBvZmZzZXRvZihzdHJ1Y3QgcHJvY19vcHMsIHByb2Nf b3Blbik7Ci0rICAgICAgICAgICAgfSIKLSsKLSsgICAgICAgICAgICBjb21waWxlX2NoZWNrX2Nv bmZ0ZXN0ICIkQ09ERSIgIk5WX0hBVkVfUFJPQ19PUFMiICIiICJ0eXBlcyIKLSsgICAgICAgIDs7 Ci0rCi0gICAgICAgICBzZ19pbml0X3RhYmxlKQotICAgICAgICAgICAgICMKLSAgICAgICAgICAg ICAjIERldGVybWluZSBpZiB0aGUgc2dfaW5pdF90YWJsZSgpIGZ1bmN0aW9uIGlzIHByZXNlbnQu Ci1AQCAtMjA0NCw2ICsyMDg5LDQyIEBAIGNvbXBpbGVfdGVzdCgpIHsKLSAgICAgICAgICAgICBj b21waWxlX2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0RSTV9EUklWRVJfVU5MT0FEX0hBU19J TlRfUkVUVVJOX1RZUEUiICIiICJ0eXBlcyIKLSAgICAgICAgIDs7Ci0gCi0rICAgICAgICBkcm1f Z2V0X3BjaV9kZXYpCi0rICAgICAgICAgICAgIwotKyAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlm IGRybV9nZXRfcGNpX2RldigpIGlzIHByZXNlbnQuCi0rICAgICAgICAgICAgIwotKyAgICAgICAg ICAgIENPREU9IgotKyAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0RSTV9EUk1QX0hfUFJFU0VO VCkKLSsgICAgICAgICAgICAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KLSsgICAgICAgICAgICAjZW5k aWYKLSsKLSsgICAgICAgICAgICAjaWYgZGVmaW5lZChOVl9EUk1fRFJNX1BDSV9IX1BSRVNFTlQp Ci0rICAgICAgICAgICAgI2luY2x1ZGUgPGRybS9kcm1fcGNpLmg+Ci0rICAgICAgICAgICAgI2Vu ZGlmCi0rCi0rICAgICAgICAgICAgdm9pZCBjb25mdGVzdF9kcm1fbGVnYWN5X3BjaV9pbml0KHZv aWQpIHsKLSsgICAgICAgICAgICAgICAgZHJtX2dldF9wY2lfZGV2KCk7Ci0rICAgICAgICAgICAg fSIKLSsKLSsgICAgICAgICAgICBjb21waWxlX2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0RS TV9HRVRfUENJX0RFVl9QUkVTRU5UIiAiIiAiZnVuY3Rpb25zIgotKyAgICAgICAgOzsKLSsKLSsg ICAgICAgIGRybV9wY2lfaW5pdCkKLSsgICAgICAgICAgICAjCi0rICAgICAgICAgICAgIyBEZXRl cm1pbmUgaWYgZHJtX3BjaV9pbml0KCkgaXMgcHJlc2VudC4KLSsgICAgICAgICAgICAjCi0rICAg ICAgICAgICAgQ09ERT0iCi0rICAgICAgICAgICAgI2lmIGRlZmluZWQoTlZfRFJNX0RSTVBfSF9Q UkVTRU5UKQotKyAgICAgICAgICAgICNpbmNsdWRlIDxkcm0vZHJtUC5oPgotKyAgICAgICAgICAg ICNlbmRpZgotKwotKyAgICAgICAgICAgIHZvaWQgY29uZnRlc3RfZHJtX2xlZ2FjeV9wY2lfaW5p dCh2b2lkKSB7Ci0rICAgICAgICAgICAgICAgIGRybV9wY2lfaW5pdCgpOwotKyAgICAgICAgICAg IH0iCi0rCi0rICAgICAgICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENPREUiICJOVl9E Uk1fUENJX0lOSVRfUFJFU0VOVCIgIiIgImZ1bmN0aW9ucyIKLSsgICAgICAgIDs7Ci0rCi0gICAg ICAgICBkcm1fbGVnYWN5X3BjaV9pbml0KQotICAgICAgICAgICAgICMKLSAgICAgICAgICAgICAj IERldGVybWluZSBpZiBkcm1fbGVnYWN5X3BjaV9pbml0KCkgaXMgcHJlc2VudC4gZHJtX3BjaV9p bml0KCkgd2FzCi1kaWZmIC0tZ2l0IGEva2VybmVsL2RrbXMuY29uZiBiL2tlcm5lbC9ka21zLmNv bmYKLWluZGV4IDc5YTAyYWUuLjMxNDBmMDMgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvZGttcy5jb25m Ci0rKysgYi9rZXJuZWwvZGttcy5jb25mCi1AQCAtMSw3ICsxLDEzIEBACi0raWYgWyAteCAvdXNy L2Jpbi9ucHJvYyBdOyB0aGVuCi0rICBudW1fY3B1X2NvcmVzPSQobnByb2MpCi0rZWxzZQotKyAg bnVtX2NwdV9jb3Jlcz0xCi0rZmkKLSsKLSBQQUNLQUdFX05BTUU9Im52aWRpYSIKLSBQQUNLQUdF X1ZFUlNJT049IjM0MC4xMDgiCi0gQlVJTFRfTU9EVUxFX05BTUVbMF09IiRQQUNLQUdFX05BTUUi Ci0gREVTVF9NT0RVTEVfTE9DQVRJT05bMF09Ii9rZXJuZWwvZHJpdmVycy92aWRlbyIKLS1NQUtF WzBdPSJtYWtlIG1vZHVsZSBLRVJORUxfVU5BTUU9JHtrZXJuZWx2ZXJ9IgotK01BS0VbMF09Im1h a2UgLWokbnVtX2NwdV9jb3JlcyBtb2R1bGUgS0VSTkVMX1VOQU1FPSR7a2VybmVsdmVyfSIKLSBD TEVBTj0ibWFrZSBjbGVhbiIKLSBBVVRPSU5TVEFMTD0ieWVzIgotZGlmZiAtLWdpdCBhL2tlcm5l bC9udi1kcm0uYyBiL2tlcm5lbC9udi1kcm0uYwotaW5kZXggMGQxY2RiZi4uODVkYjA3ZSAxMDA2 NDQKLS0tLSBhL2tlcm5lbC9udi1kcm0uYwotKysrIGIva2VybmVsL252LWRybS5jCi1AQCAtNTAs OSArNTAsMjM2IEBACi0gI2lmIGRlZmluZWQoTlZfRFJNX0xFR0FDWV9QQ0lfSU5JVF9QUkVTRU5U KQotICNkZWZpbmUgbnZfZHJtX3BjaV9pbml0IGRybV9sZWdhY3lfcGNpX2luaXQKLSAjZGVmaW5l IG52X2RybV9wY2lfZXhpdCBkcm1fbGVnYWN5X3BjaV9leGl0Ci0tI2Vsc2UKLSsjZWxpZiBkZWZp bmVkKE5WX0RSTV9QQ0lfSU5JVF9QUkVTRU5UKQotICNkZWZpbmUgbnZfZHJtX3BjaV9pbml0IGRy bV9wY2lfaW5pdAotICNkZWZpbmUgbnZfZHJtX3BjaV9leGl0IGRybV9wY2lfZXhpdAotKyNlbHNl Ci0rI2lmIGRlZmluZWQoTlZfRFJNX0dFVF9QQ0lfREVWX1BSRVNFTlQpCi0rI2RlZmluZSBudl9k cm1fZ2V0X3BjaV9kZXYgZHJtX2dldF9wY2lfZGV2Ci0rI2Vsc2UKLSsjaW5jbHVkZSA8ZHJtL2Ry bV9hZ3BzdXBwb3J0Lmg+Ci0rCi0rc3RydWN0IG52X2RybV9hZ3BfaGVhZCB7Ci0rICAgIHN0cnVj dCBhZ3Bfa2Vybl9pbmZvIGFncF9pbmZvOwotKyAgICBzdHJ1Y3QgbGlzdF9oZWFkIG1lbW9yeTsK LSsgICAgdW5zaWduZWQgbG9uZyBtb2RlOwotKyAgICBzdHJ1Y3QgYWdwX2JyaWRnZV9kYXRhICpi cmlkZ2U7Ci0rICAgIGludCBlbmFibGVkOwotKyAgICBpbnQgYWNxdWlyZWQ7Ci0rICAgIHVuc2ln bmVkIGxvbmcgYmFzZTsKLSsgICAgaW50IGFncF9tdHJyOwotKyAgICBpbnQgY2FudF91c2VfYXBl cnR1cmU7Ci0rICAgIHVuc2lnbmVkIGxvbmcgcGFnZV9tYXNrOwotK307Ci0rCi0rc3RydWN0IG52 X2RybV9hZ3BfbWVtIHsKLSsgICAgdW5zaWduZWQgbG9uZyBoYW5kbGU7Ci0rICAgIHN0cnVjdCBh Z3BfbWVtb3J5ICptZW1vcnk7Ci0rICAgIHVuc2lnbmVkIGxvbmcgYm91bmQ7Ci0rICAgIGludCBw YWdlczsKLSsgICAgc3RydWN0IGxpc3RfaGVhZCBoZWFkOwotK307Ci0rCi0rLyoKLSsgKiBDb2Rl IGZyb20gZHJtX2FncF9pbml0L252X2RybV97ZnJlZSx1bmJpbmR9X2FncAotKyAqIEV4dHJhY3Rl ZCBmcm9tIGNvbW1pdDogNWI4YjlkMGM2ZDBlMGYxOTkzYzZjNTZkZWFmOTY0Njk0MmM0OWQ5NCwg ZmlsZTogZHJpdmVycy9ncHUvZHJtL2RybV9hZ3BzdXBwb3J0LmMKLSsgKi8KLStzdHJ1Y3QgZHJt X2FncF9oZWFkICpudl9kcm1fYWdwX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKLSt7Ci0r ICAgIHN0cnVjdCBudl9kcm1fYWdwX2hlYWQgKmhlYWQgPSBOVUxMOwotKwotKyAgICBoZWFkID0g a3phbGxvYyhzaXplb2YoKmhlYWQpLCBHRlBfS0VSTkVMKTsKLSsgICAgaWYgKCFoZWFkKQotKyAg ICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIGhlYWQtPmJyaWRnZSA9IGFncF9maW5kX2JyaWRnZShk ZXYtPnBkZXYpOwotKyAgICBpZiAoIWhlYWQtPmJyaWRnZSkgewotKyAgICAgICAgaGVhZC0+YnJp ZGdlID0gYWdwX2JhY2tlbmRfYWNxdWlyZShkZXYtPnBkZXYpOwotKyAgICAgICAgaWYgKCFoZWFk LT5icmlkZ2UpIHsKLSsgICAgICAgICAgICBrZnJlZShoZWFkKTsKLSsgICAgICAgICAgICByZXR1 cm4gTlVMTDsKLSsgICAgICAgIH0KLSsgICAgICAgIGFncF9jb3B5X2luZm8oaGVhZC0+YnJpZGdl LCAmaGVhZC0+YWdwX2luZm8pOwotKyAgICAgICAgYWdwX2JhY2tlbmRfcmVsZWFzZShoZWFkLT5i cmlkZ2UpOwotKyAgICB9IGVsc2UgewotKyAgICAgICAgYWdwX2NvcHlfaW5mbyhoZWFkLT5icmlk Z2UsICZoZWFkLT5hZ3BfaW5mbyk7Ci0rICAgIH0KLSsgICAgaWYgKGhlYWQtPmFncF9pbmZvLmNo aXBzZXQgPT0gTk9UX1NVUFBPUlRFRCkgewotKyAgICAgICAga2ZyZWUoaGVhZCk7Ci0rICAgICAg ICByZXR1cm4gTlVMTDsKLSsgICAgfQotKyAgICBJTklUX0xJU1RfSEVBRCgmaGVhZC0+bWVtb3J5 KTsKLSsgICAgaGVhZC0+Y2FudF91c2VfYXBlcnR1cmUgPSBoZWFkLT5hZ3BfaW5mby5jYW50X3Vz ZV9hcGVydHVyZTsKLSsgICAgaGVhZC0+cGFnZV9tYXNrID0gaGVhZC0+YWdwX2luZm8ucGFnZV9t YXNrOwotKyAgICBoZWFkLT5iYXNlID0gaGVhZC0+YWdwX2luZm8uYXBlcl9iYXNlOwotKyAgICBy ZXR1cm4gKHN0cnVjdCBkcm1fYWdwX2hlYWQgKiloZWFkOwotK30KLSsKLSt2b2lkIG52X2RybV9m cmVlX2FncChzdHJ1Y3QgYWdwX21lbW9yeSAqaGFuZGxlLCBpbnQgcGFnZXMpCi0rewotKyAgICBh Z3BfZnJlZV9tZW1vcnkoaGFuZGxlKTsKLSt9Ci0rCi0raW50IG52X2RybV91bmJpbmRfYWdwKHN0 cnVjdCBhZ3BfbWVtb3J5ICpoYW5kbGUpCi0rewotKyAgICByZXR1cm4gYWdwX3VuYmluZF9tZW1v cnkoaGFuZGxlKTsKLSt9Ci0rCi0rLyoKLSsgKiBDb2RlIGZyb20gZHJtX3BjaV9hZ3Bfe2NsZWFy LGRlc3Ryb3ksaW5pdH0vZHJtX2dldF9wY2lfZGV2Ci0rICogRXh0cmFjdGVkIGZyb20gY29tbWl0 OiA1YjhiOWQwYzZkMGUwZjE5OTNjNmM1NmRlYWY5NjQ2OTQyYzQ5ZDk0LCBmaWxlOiBkcml2ZXJz L2dwdS9kcm0vZHJtX3BjaS5jCi0rICovCi0rc3RhdGljIHZvaWQgbnZfZHJtX3BjaV9hZ3BfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotK3sKLSsgICAgaWYgKGRybV9jb3JlX2NoZWNrX2Zl YXR1cmUoZGV2LCBEUklWRVJfVVNFX0FHUCkpIHsKLSsgICAgICAgIGlmIChwY2lfZmluZF9jYXBh YmlsaXR5KGRldi0+cGRldiwgUENJX0NBUF9JRF9BR1ApKQotKyAgICAgICAgICAgIGRldi0+YWdw ID0gbnZfZHJtX2FncF9pbml0KGRldik7Ci0rICAgICAgICBpZiAoZGV2LT5hZ3ApIHsKLSsgICAg ICAgICAgICBkZXYtPmFncC0+YWdwX210cnIgPSBhcmNoX3BoeXNfd2NfYWRkKAotKyAgICAgICAg ICAgICAgICBkZXYtPmFncC0+YWdwX2luZm8uYXBlcl9iYXNlLAotKyAgICAgICAgICAgICAgICBk ZXYtPmFncC0+YWdwX2luZm8uYXBlcl9zaXplICoKLSsgICAgICAgICAgICAgICAgMTAyNCAqIDEw MjQpOwotKyAgICAgICAgfQotKyAgICB9Ci0rfQotKwotK3ZvaWQgbnZfZHJtX2xlZ2FjeV9hZ3Bf Y2xlYXIoc3RydWN0IGRybV9kZXZpY2UgKmRldikKLSt7Ci0rICAgIHN0cnVjdCBudl9kcm1fYWdw X21lbSAqZW50cnksICp0ZW1wZTsKLSsKLSsgICAgaWYgKCFkZXYtPmFncCkKLSsgICAgICAgIHJl dHVybjsKLSsgICAgaWYgKCFkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX0xFR0FD WSkpCi0rICAgICAgICByZXR1cm47Ci0rCi0rICAgIGxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShl bnRyeSwgdGVtcGUsICZkZXYtPmFncC0+bWVtb3J5LCBoZWFkKSB7Ci0rICAgICAgICBpZiAoZW50 cnktPmJvdW5kKQotKyAgICAgICAgICAgIG52X2RybV91bmJpbmRfYWdwKGVudHJ5LT5tZW1vcnkp OwotKyAgICAgICAgbnZfZHJtX2ZyZWVfYWdwKGVudHJ5LT5tZW1vcnksIGVudHJ5LT5wYWdlcyk7 Ci0rICAgICAgICBrZnJlZShlbnRyeSk7Ci0rICAgIH0KLSsgICAgSU5JVF9MSVNUX0hFQUQoJmRl di0+YWdwLT5tZW1vcnkpOwotKwotKyAgICBpZiAoZGV2LT5hZ3AtPmFjcXVpcmVkKQotKyAgICAg ICAgZHJtX2FncF9yZWxlYXNlKGRldik7Ci0rCi0rICAgIGRldi0+YWdwLT5hY3F1aXJlZCA9IDA7 Ci0rICAgIGRldi0+YWdwLT5lbmFibGVkID0gMDsKLSt9Ci0rCi0rdm9pZCBudl9kcm1fcGNpX2Fn cF9kZXN0cm95KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCi0rewotKyAgICBpZiAoZGV2LT5hZ3Ap IHsKLSsgICAgICAgIGFyY2hfcGh5c193Y19kZWwoZGV2LT5hZ3AtPmFncF9tdHJyKTsKLSsgICAg ICAgIG52X2RybV9sZWdhY3lfYWdwX2NsZWFyKGRldik7Ci0rICAgICAgICBrZnJlZShkZXYtPmFn cCk7Ci0rICAgICAgICBkZXYtPmFncCA9IE5VTEw7Ci0rICAgIH0KLSt9Ci0rCi0rc3RhdGljIGlu dCBudl9kcm1fZ2V0X3BjaV9kZXYoc3RydWN0IHBjaV9kZXYgKnBkZXYsCi0rICAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmVudCwKLSsgICAgICAgICAgICAgICBzdHJ1 Y3QgZHJtX2RyaXZlciAqZHJpdmVyKQotK3sKLSsgICAgc3RydWN0IGRybV9kZXZpY2UgKmRldjsK LSsgICAgaW50IHJldDsKLSsKLSsgICAgRFJNX0RFQlVHKCJcbiIpOwotKwotKyAgICBkZXYgPSBk cm1fZGV2X2FsbG9jKGRyaXZlciwgJnBkZXYtPmRldik7Ci0rICAgIGlmIChJU19FUlIoZGV2KSkK LSsgICAgICAgIHJldHVybiBQVFJfRVJSKGRldik7Ci0rCi0rICAgIHJldCA9IHBjaV9lbmFibGVf ZGV2aWNlKHBkZXYpOwotKyAgICBpZiAocmV0KQotKyAgICAgICAgZ290byBlcnJfZnJlZTsKLSsK LSsgICAgZGV2LT5wZGV2ID0gcGRldjsKLSsjaWZkZWYgX19hbHBoYV9fCi0rICAgIGRldi0+aG9z ZSA9IHBkZXYtPnN5c2RhdGE7Ci0rI2VuZGlmCi0rCi0rICAgIGlmIChkcm1fY29yZV9jaGVja19m ZWF0dXJlKGRldiwgRFJJVkVSX01PREVTRVQpKQotKyAgICAgICAgcGNpX3NldF9kcnZkYXRhKHBk ZXYsIGRldik7Ci0rCi0rICAgIG52X2RybV9wY2lfYWdwX2luaXQoZGV2KTsKLSsKLSsgICAgcmV0 ID0gZHJtX2Rldl9yZWdpc3RlcihkZXYsIGVudC0+ZHJpdmVyX2RhdGEpOwotKyAgICBpZiAocmV0 KQotKyAgICAgICAgZ290byBlcnJfYWdwOwotKwotKyAgICAvKiBObyBsb2NraW5nIG5lZWRlZCBz aW5jZSBzaGFkb3ctYXR0YWNoIGlzIHNpbmdsZS10aHJlYWRlZCBzaW5jZSBpdCBtYXkKLSsgICAg ICogb25seSBiZSBjYWxsZWQgZnJvbSB0aGUgcGVyLWRyaXZlciBtb2R1bGUgaW5pdCBob29rLiAq LwotKyAgICBpZiAoZHJtX2NvcmVfY2hlY2tfZmVhdHVyZShkZXYsIERSSVZFUl9MRUdBQ1kpKQot KyAgICAgICAgbGlzdF9hZGRfdGFpbCgmZGV2LT5sZWdhY3lfZGV2X2xpc3QsICZkcml2ZXItPmxl Z2FjeV9kZXZfbGlzdCk7Ci0rCi0rICAgIHJldHVybiAwOwotKwotK2Vycl9hZ3A6Ci0rICAgIG52 X2RybV9wY2lfYWdwX2Rlc3Ryb3koZGV2KTsKLSsgICAgcGNpX2Rpc2FibGVfZGV2aWNlKHBkZXYp OwotK2Vycl9mcmVlOgotKyAgICBkcm1fZGV2X3B1dChkZXYpOwotKyAgICByZXR1cm4gcmV0Owot K30KLSsjZW5kaWYKLSsKLSsvKgotKyAqIENvZGUgZnJvbSBkcm1fbGVnYWN5X3BjaV97aW5pdCxl eGl0fQotKyAqIEV4dHJhY3RlZCBmcm9tIHRhZzogdjUuNi4zLCBmaWxlOiBkcml2ZXJzL2dwdS9k cm0vZHJtX3BjaS5jCi0rICovCi0raW50IG52X2RybV9wY2lfaW5pdChzdHJ1Y3QgZHJtX2RyaXZl ciAqZHJpdmVyLCBzdHJ1Y3QgcGNpX2RyaXZlciAqcGRyaXZlcikKLSt7Ci0rICAgIHN0cnVjdCBw Y2lfZGV2ICpwZGV2ID0gTlVMTDsKLSsgICAgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKnBp ZDsKLSsgICAgaW50IGk7Ci0rCi0rICAgIERSTV9ERUJVRygiXG4iKTsKLSsKLSsgICAgaWYgKFdB Uk5fT04oIShkcml2ZXItPmRyaXZlcl9mZWF0dXJlcyAmIERSSVZFUl9MRUdBQ1kpKSkKLSsgICAg ICAgIHJldHVybiAtRUlOVkFMOwotKwotKyAgICAvKiBJZiBub3QgdXNpbmcgS01TLCBmYWxsIGJh Y2sgdG8gc3RlYWx0aCBtb2RlIG1hbnVhbCBzY2FubmluZy4gKi8KLSsgICAgSU5JVF9MSVNUX0hF QUQoJmRyaXZlci0+bGVnYWN5X2Rldl9saXN0KTsKLSsgICAgZm9yIChpID0gMDsgcGRyaXZlci0+ aWRfdGFibGVbaV0udmVuZG9yICE9IDA7IGkrKykgewotKyAgICAgICAgcGlkID0gJnBkcml2ZXIt PmlkX3RhYmxlW2ldOwotKwotKyAgICAgICAgLyogTG9vcCBhcm91bmQgc2V0dGluZyB1cCBhIERS TSBkZXZpY2UgZm9yIGVhY2ggUENJIGRldmljZQotKyAgICAgICAgICogbWF0Y2hpbmcgb3VyIElE IGFuZCBkZXZpY2UgY2xhc3MuICBJZiB3ZSBoYWQgdGhlIGludGVybmFsCi0rICAgICAgICAgKiBm dW5jdGlvbiB0aGF0IHBjaV9nZXRfc3Vic3lzIGFuZCBwY2lfZ2V0X2NsYXNzIHVzZWQsIHdlJ2QK LSsgICAgICAgICAqIGJlIGFibGUgdG8ganVzdCBwYXNzIHBpZCBpbiBpbnN0ZWFkIG9mIGRvaW5n IGEgdHdvLXN0YWdlCi0rICAgICAgICAgKiB0aGluZy4KLSsgICAgICAgICAqLwotKyAgICAgICAg cGRldiA9IE5VTEw7Ci0rICAgICAgICB3aGlsZSAoKHBkZXYgPQotKyAgICAgICAgICAgIHBjaV9n ZXRfc3Vic3lzKHBpZC0+dmVuZG9yLCBwaWQtPmRldmljZSwgcGlkLT5zdWJ2ZW5kb3IsCi0rICAg ICAgICAgICAgICAgICAgICAgICBwaWQtPnN1YmRldmljZSwgcGRldikpICE9IE5VTEwpIHsKLSsg ICAgICAgICAgICBpZiAoKHBkZXYtPmNsYXNzICYgcGlkLT5jbGFzc19tYXNrKSAhPSBwaWQtPmNs YXNzKQotKyAgICAgICAgICAgICAgICBjb250aW51ZTsKLSsKLSsgICAgICAgICAgICAvKiBzdGVh bHRoIG1vZGUgcmVxdWlyZXMgYSBtYW51YWwgcHJvYmUgKi8KLSsgICAgICAgICAgICBwY2lfZGV2 X2dldChwZGV2KTsKLSsgICAgICAgICAgICBudl9kcm1fZ2V0X3BjaV9kZXYocGRldiwgcGlkLCBk cml2ZXIpOwotKyAgICAgICAgfQotKyAgICB9Ci0rICAgIHJldHVybiAwOwotK30KLSsKLSt2b2lk IG52X2RybV9wY2lfZXhpdChzdHJ1Y3QgZHJtX2RyaXZlciAqZHJpdmVyLCBzdHJ1Y3QgcGNpX2Ry aXZlciAqcGRyaXZlcikKLSt7Ci0rICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsICp0bXA7Ci0r ICAgIERSTV9ERUJVRygiXG4iKTsKLSsKLSsgICAgaWYgKCEoZHJpdmVyLT5kcml2ZXJfZmVhdHVy ZXMgJiBEUklWRVJfTEVHQUNZKSkgewotKyAgICAgICAgV0FSTl9PTigxKTsKLSsgICAgfSBlbHNl IHsKLSsgICAgICAgIGxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShkZXYsIHRtcCwgJmRyaXZlci0+ bGVnYWN5X2Rldl9saXN0LAotKyAgICAgICAgICAgICAgICAgICAgIGxlZ2FjeV9kZXZfbGlzdCkg ewotKyAgICAgICAgICAgIGxpc3RfZGVsKCZkZXYtPmxlZ2FjeV9kZXZfbGlzdCk7Ci0rICAgICAg ICAgICAgZHJtX3B1dF9kZXYoZGV2KTsKLSsgICAgICAgIH0KLSsgICAgfQotKyAgICBEUk1fSU5G TygiTW9kdWxlIHVubG9hZGVkXG4iKTsKLSt9Ci0gI2VuZGlmCi0gCi0gZXh0ZXJuIG52X2xpbnV4 X3N0YXRlX3QgKm52X2xpbnV4X2RldmljZXM7Ci1kaWZmIC0tZ2l0IGEva2VybmVsL252LWxpbnV4 LmggYi9rZXJuZWwvbnYtbGludXguaAotaW5kZXggYTFkMmM2OC4uODNlNjQzMyAxMDA2NDQKLS0t LSBhL2tlcm5lbC9udi1saW51eC5oCi0rKysgYi9rZXJuZWwvbnYtbGludXguaAotQEAgLTY4OCwx MSArNjg4LDE2IEBAIGV4dGVybiBudl9zcGlubG9ja190IGttX2xvY2s7Ci0gICAgICAgICBWTV9B TExPQ19SRUNPUkQocHRyLCBzaXplLCAidm1faW9yZW1hcCIpOyBcCi0gICAgIH0KLSAKLSsjaWYg ZGVmaW5lZChOVl9JT1JFTUFQX05PQ0FDSEVfUFJFU0VOVCkKLSAjZGVmaW5lIE5WX0lPUkVNQVBf Tk9DQUNIRShwdHIsIHBoeXNhZGRyLCBzaXplKSBcCi0gICAgIHsgXAotICAgICAgICAgKHB0cikg PSBpb3JlbWFwX25vY2FjaGUocGh5c2FkZHIsIHNpemUpOyBcCi0gICAgICAgICBWTV9BTExPQ19S RUNPUkQocHRyLCBzaXplLCAidm1faW9yZW1hcF9ub2NhY2hlIik7IFwKLSAgICAgfQotKyNlbHNl Ci0rI2RlZmluZSBOVl9JT1JFTUFQX05PQ0FDSEUocHRyLCBwaHlzYWRkciwgc2l6ZSkgXAotKyAg ICBOVl9JT1JFTUFQKHB0ciwgcGh5c2FkZHIsIHNpemUpCi0rI2VuZGlmCi0gCi0gI2lmIGRlZmlu ZWQoTlZfSU9SRU1BUF9DQUNIRV9QUkVTRU5UKQotICNkZWZpbmUgTlZfSU9SRU1BUF9DQUNIRShw dHIsIHBoeXNhZGRyLCBzaXplKSAgICAgICAgICAgIFwKLUBAIC03NzQsNiArNzc5LDE3IEBAIGV4 dGVybiBudl9zcGlubG9ja190IGttX2xvY2s7Ci0gI2Vycm9yICJOVl9LTUVNX0NBQ0hFX0NSRUFU RSgpIHVuZGVmaW5lZCAoa21lbV9jYWNoZV9jcmVhdGUoKSB1bmF2YWlsYWJsZSkhIgotICNlbmRp ZgotIAotKyNpZiBkZWZpbmVkKE5WX0tNRU1fQ0FDSEVfQ1JFQVRFX1VTRVJDT1BZX1BSRVNFTlQp Ci0rI2RlZmluZSBOVl9LTUVNX0NBQ0hFX0NSRUFURV9VU0VSQ09QWShrbWVtX2NhY2hlLCBuYW1l LCB0eXBlKSAgICAgICBcCi0rICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBrbWVtX2NhY2hlID0ga21l bV9jYWNoZV9jcmVhdGVfdXNlcmNvcHkobmFtZSwgc2l6ZW9mKHR5cGUpLCBcCi0rICAgICAgICAg ICAgICAgICAgICAgICAgMCwgMCwgMCwgc2l6ZW9mKHR5cGUpLCBOVUxMKTsgICAgICAgICAgICAg ICBcCi0rICAgIH0KLSsjZWxzZQotKyNkZWZpbmUgTlZfS01FTV9DQUNIRV9DUkVBVEVfVVNFUkNP UFkoa21lbV9jYWNoZSwgbmFtZSwgdHlwZSkgICAgICAgXAotKyAgICAgICAgTlZfS01FTV9DQUNI RV9DUkVBVEUoa21lbV9jYWNoZSwgbmFtZSwgdHlwZSkKLSsjZW5kaWYKLSsKLSAjZGVmaW5lIE5W X0tNRU1fQ0FDSEVfQUxMT0MocHRyLCBrbWVtX2NhY2hlLCB0eXBlKSAgICAgICAgICAgICAgXAot ICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCi0gICAgICAgICAocHRyKSA9IGttZW1fY2FjaGVfYWxsb2Moa21lbV9jYWNoZSwg R0ZQX0tFUk5FTCk7ICAgICAgIFwKLUBAIC0xOTcxLDYgKzE5ODcsMTkgQEAgZXh0ZXJuIE52VTMy IG52X2Fzc2lnbl9ncHVfY291bnQ7Ci0gICAgIH0pCi0gI2VuZGlmCi0gCi0rI2lmIGRlZmluZWQo TlZfSEFWRV9QUk9DX09QUykKLSsjZGVmaW5lIE5WX0NSRUFURV9QUk9DX0ZJTEUoZmlsZW5hbWUs cGFyZW50LF9fbmFtZSxfX2RhdGEpICAgICAgICAgICAgICAgXAotKyAgICh7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0rICAgICAgICBzdHJ1Y3QgcHJvY19kaXJfZW50cnkgKl9fZW50cnk7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIGludCBtb2RlID0gKFNfSUZSRUcgfCBTX0lS VUdPKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgY29uc3Qg c3RydWN0IHByb2Nfb3BzICpmb3BzID0gJm52X3Byb2Nmc18jI19fbmFtZSMjX2ZvcHM7ICAgICAg ICBcCi0rICAgICAgICBpZiAoZm9wcy0+cHJvY193cml0ZSAhPSAwKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICBtb2RlIHw9IFNfSVdVU1I7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgX19l bnRyeSA9IE5WX0NSRUFURV9QUk9DX0VOVFJZKGZpbGVuYW1lLCBtb2RlLCBwYXJlbnQsIGZvcHMs ICAgICBcCi0rICAgICAgICAgICAgX19kYXRhKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIF9fZW50cnk7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICB9KQot KyNlbHNlCi0gI2RlZmluZSBOVl9DUkVBVEVfUFJPQ19GSUxFKGZpbGVuYW1lLHBhcmVudCxfX25h bWUsX19kYXRhKSAgICAgICAgICAgICAgIFwKLSAgICAoeyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg c3RydWN0IHByb2NfZGlyX2VudHJ5ICpfX2VudHJ5OyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCi1AQCAtMTk4Miw2ICsyMDExLDcgQEAgZXh0ZXJuIE52VTMyIG52X2Fzc2lnbl9n cHVfY291bnQ7Ci0gICAgICAgICAgICAgX19kYXRhKTsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgIF9fZW50cnk7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICB9 KQotKyNlbmRpZgotIAotIC8qCi0gICogcHJvY19ta2Rpcl9tb2RlIGV4aXN0cyBpbiBMaW51eCAy LjYuOSwgYnV0IGlzbid0IGV4cG9ydGVkIHVudGlsIExpbnV4IDMuMC4KLUBAIC0yMDIzLDYgKzIw NTMsMjQgQEAgZXh0ZXJuIE52VTMyIG52X2Fzc2lnbl9ncHVfY291bnQ7Ci0gICAgIHJlbW92ZV9w cm9jX2VudHJ5KGVudHJ5LT5uYW1lLCBlbnRyeS0+cGFyZW50KTsKLSAjZW5kaWYKLSAKLSsjaWYg ZGVmaW5lZChOVl9IQVZFX1BST0NfT1BTKQotKyNkZWZpbmUgTlZfREVGSU5FX1BST0NGU19TSU5H TEVfRklMRShfX25hbWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAg c3RhdGljIGludCBudl9wcm9jZnNfb3Blbl8jI19fbmFtZSggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBzdHJ1Y3QgaW5vZGUgKmlub2RlLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgc3Ry dWN0IGZpbGUgKmZpbGVwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLSsgICAgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIHsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXAotKyAgICAgICAgcmV0dXJuIHNpbmdsZV9vcGVuKGZpbGVwLCBudl9wcm9jZnNfcmVhZF8j I19fbmFtZSwgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgICAgICBOVl9QREVfREFUQShp bm9kZSkpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0r ICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgc3Rh dGljIGNvbnN0IHN0cnVjdCBwcm9jX29wcyBudl9wcm9jZnNfIyNfX25hbWUjI19mb3BzID0geyAg ICAgICAgICAgICAgICBcCi0rICAgICAgICAucHJvY19vcGVuICAgICAgID0gbnZfcHJvY2ZzX29w ZW5fIyNfX25hbWUsICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgLnByb2Nf cmVhZCAgICAgICA9IHNlcV9yZWFkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKLSsgICAgICAgIC5wcm9jX2xzZWVrICAgICAgPSBzZXFfbHNlZWssICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAucHJvY19yZWxlYXNl ICAgID0gc2luZ2xlX3JlbGVhc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotKyAgICB9OwotKyNlbHNlCi0gI2RlZmluZSBOVl9ERUZJTkVfUFJPQ0ZTX1NJTkdMRV9GSUxF KF9fbmFtZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICBzdGF0aWMg aW50IG52X3Byb2Nmc19vcGVuXyMjX19uYW1lKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLSAgICAgICAgIHN0cnVjdCBpbm9kZSAqaW5vZGUsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi1AQCAtMjA0MCw2ICsyMDg4LDcg QEAgZXh0ZXJuIE52VTMyIG52X2Fzc2lnbl9ncHVfY291bnQ7Ci0gICAgICAgICAubGxzZWVrICAg ICA9IHNlcV9sc2VlaywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXAotICAgICAgICAgLnJlbGVhc2UgICAgPSBzaW5nbGVfcmVsZWFzZSwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgfTsKLSsjZW5kaWYKLSAKLSAjZW5k aWYgIC8qIENPTkZJR19QUk9DX0ZTICovCi0gCi1kaWZmIC0tZ2l0IGEva2VybmVsL252LXByb2Nm cy5jIGIva2VybmVsL252LXByb2Nmcy5jCi1pbmRleCBlYmNhM2U4Li45MzY1YzNjIDEwMDY0NAot LS0tIGEva2VybmVsL252LXByb2Nmcy5jCi0rKysgYi9rZXJuZWwvbnYtcHJvY2ZzLmMKLUBAIC00 MDksNiArNDA5LDE1IEBAIGRvbmU6Ci0gICAgIHJldHVybiAoKHN0YXR1cyA8IDApID8gc3RhdHVz IDogKGludCljb3VudCk7Ci0gfQotIAotKyNpZiBkZWZpbmVkKE5WX0hBVkVfUFJPQ19PUFMpCi0r c3RhdGljIHN0cnVjdCBwcm9jX29wcyBudl9wcm9jZnNfcmVnaXN0cnlfZm9wcyA9IHsKLSsgICAg LnByb2Nfb3BlbiAgICA9IG52X3Byb2Nmc19vcGVuX3JlZ2lzdHJ5LAotKyAgICAucHJvY19yZWFk ICAgID0gc2VxX3JlYWQsCi0rICAgIC5wcm9jX3dyaXRlICAgPSBudl9wcm9jZnNfd3JpdGVfZmls ZSwKLSsgICAgLnByb2NfbHNlZWsgICA9IHNlcV9sc2VlaywKLSsgICAgLnByb2NfcmVsZWFzZSA9 IG52X3Byb2Nmc19jbG9zZV9yZWdpc3RyeSwKLSt9OwotKyNlbHNlCi0gc3RhdGljIHN0cnVjdCBm aWxlX29wZXJhdGlvbnMgbnZfcHJvY2ZzX3JlZ2lzdHJ5X2ZvcHMgPSB7Ci0gICAgIC5vd25lciAg ID0gVEhJU19NT0RVTEUsCi0gICAgIC5vcGVuICAgID0gbnZfcHJvY2ZzX29wZW5fcmVnaXN0cnks Ci1AQCAtNDE3LDYgKzQyNiw3IEBAIHN0YXRpYyBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIG52X3By b2Nmc19yZWdpc3RyeV9mb3BzID0gewotICAgICAubGxzZWVrICA9IHNlcV9sc2VlaywKLSAgICAg LnJlbGVhc2UgPSBudl9wcm9jZnNfY2xvc2VfcmVnaXN0cnksCi0gfTsKLSsjZW5kaWYKLSAKLSBz dGF0aWMgaW50Ci0gbnZfcHJvY2ZzX3JlYWRfdW5iaW5kX2xvY2soCi1AQCAtNTM4LDYgKzU0OCwx NSBAQCBkb25lOgotICAgICByZXR1cm4gcmM7Ci0gfQotIAotKyNpZiBkZWZpbmVkKE5WX0hBVkVf UFJPQ19PUFMpCi0rc3RhdGljIHN0cnVjdCBwcm9jX29wcyBudl9wcm9jZnNfdW5iaW5kX2xvY2tf Zm9wcyA9IHsKLSsgICAgLnByb2Nfb3BlbiAgICA9IG52X3Byb2Nmc19vcGVuX3VuYmluZF9sb2Nr LAotKyAgICAucHJvY19yZWFkICAgID0gc2VxX3JlYWQsCi0rICAgIC5wcm9jX3dyaXRlICAgPSBu dl9wcm9jZnNfd3JpdGVfZmlsZSwKLSsgICAgLnByb2NfbHNlZWsgICA9IHNlcV9sc2VlaywKLSsg ICAgLnByb2NfcmVsZWFzZSA9IG52X3Byb2Nmc19jbG9zZV91bmJpbmRfbG9jaywKLSt9OwotKyNl bHNlCi0gc3RhdGljIHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgbnZfcHJvY2ZzX3VuYmluZF9sb2Nr X2ZvcHMgPSB7Ci0gICAgIC5vd25lciAgID0gVEhJU19NT0RVTEUsCi0gICAgIC5vcGVuICAgID0g bnZfcHJvY2ZzX29wZW5fdW5iaW5kX2xvY2ssCi1AQCAtNTQ2LDYgKzU2NSw3IEBAIHN0YXRpYyBz dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIG52X3Byb2Nmc191bmJpbmRfbG9ja19mb3BzID0gewotICAg ICAubGxzZWVrICA9IHNlcV9sc2VlaywKLSAgICAgLnJlbGVhc2UgPSBudl9wcm9jZnNfY2xvc2Vf dW5iaW5kX2xvY2ssCi0gfTsKLSsjZW5kaWYKLSAKLSBzdGF0aWMgaW50Ci0gbnZfcHJvY2ZzX3Jl YWRfdGV4dF9maWxlKAotZGlmZiAtLWdpdCBhL2tlcm5lbC9udi10aW1lLmggYi9rZXJuZWwvbnYt dGltZS5oCi1pbmRleCBhMzRjZWIyLi43ODBmOGJjIDEwMDY0NAotLS0tIGEva2VybmVsL252LXRp bWUuaAotKysrIGIva2VybmVsL252LXRpbWUuaAotQEAgLTI4LDcgKzI4LDEyIEBACi0gI2luY2x1 ZGUgPGxpbnV4L2t0aW1lLmg+Ci0gI2VuZGlmCi0gCi0tc3RhdGljIGlubGluZSB2b2lkIG52X2dl dHRpbWVvZmRheShzdHJ1Y3QgdGltZXZhbCAqdHYpCi0rc3RydWN0IG52X3RpbWV2YWwgewotKyAg ICBfX2tlcm5lbF9sb25nX3QgICAgICB0dl9zZWM7Ci0rICAgIF9fa2VybmVsX3N1c2Vjb25kc190 IHR2X3VzZWM7Ci0rfTsKLSsKLStzdGF0aWMgaW5saW5lIHZvaWQgbnZfZ2V0dGltZW9mZGF5KHN0 cnVjdCBudl90aW1ldmFsICp0dikKLSB7Ci0gI2lmZGVmIE5WX0RPX0dFVFRJTUVPRkRBWV9QUkVT RU5UCi0gICAgIGRvX2dldHRpbWVvZmRheSh0dik7Ci1AQCAtMzcsNyArNDIsNyBAQCBzdGF0aWMg aW5saW5lIHZvaWQgbnZfZ2V0dGltZW9mZGF5KHN0cnVjdCB0aW1ldmFsICp0dikKLSAKLSAgICAg a3RpbWVfZ2V0X3JlYWxfdHM2NCgmbm93KTsKLSAKLS0gICAgKnR2ID0gKHN0cnVjdCB0aW1ldmFs KSB7Ci0rICAgICp0diA9IChzdHJ1Y3QgbnZfdGltZXZhbCkgewotICAgICAgICAgLnR2X3NlYyA9 IG5vdy50dl9zZWMsCi0gICAgICAgICAudHZfdXNlYyA9IG5vdy50dl9uc2VjLzEwMDAsCi0gICAg IH07Ci1kaWZmIC0tZ2l0IGEva2VybmVsL252LmMgYi9rZXJuZWwvbnYuYwotaW5kZXggYTE2N2Jl OS4uYTIxOGY4MyAxMDA2NDQKLS0tLSBhL2tlcm5lbC9udi5jCi0rKysgYi9rZXJuZWwvbnYuYwot QEAgLTc1Miw3ICs3NTIsNyBAQCBpbnQgX19pbml0IG52aWRpYV9pbml0X21vZHVsZSh2b2lkKQot ICAgICBOVl9TUElOX0xPQ0tfSU5JVCgma21fbG9jayk7Ci0gI2VuZGlmCi0gCi0tICAgIE5WX0tN RU1fQ0FDSEVfQ1JFQVRFKG52X3N0YWNrX3RfY2FjaGUsIE5WX1NUQUNLX0NBQ0hFX1NUUiwgbnZf c3RhY2tfdCk7Ci0rICAgIE5WX0tNRU1fQ0FDSEVfQ1JFQVRFX1VTRVJDT1BZKG52X3N0YWNrX3Rf Y2FjaGUsIE5WX1NUQUNLX0NBQ0hFX1NUUiwgbnZfc3RhY2tfdCk7Ci0gICAgIGlmIChudl9zdGFj a190X2NhY2hlID09IE5VTEwpCi0gICAgIHsKLSAgICAgICAgIG52X3ByaW50ZihOVl9EQkdfRVJS T1JTLCAiTlZSTTogc3RhY2sgY2FjaGUgYWxsb2NhdGlvbiBmYWlsZWQhXG4iKTsKLWRpZmYgLS1n aXQgYS9rZXJuZWwvb3MtaW50ZXJmYWNlLmMgYi9rZXJuZWwvb3MtaW50ZXJmYWNlLmMKLWluZGV4 IDcxOTBiMjYuLjBjMGRjMDUgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvb3MtaW50ZXJmYWNlLmMKLSsr KyBiL2tlcm5lbC9vcy1pbnRlcmZhY2UuYwotQEAgLTQzOSw3ICs0MzksNyBAQCBSTV9TVEFUVVMg TlZfQVBJX0NBTEwgb3NfZ2V0X2N1cnJlbnRfdGltZSgKLSAgICAgTnZVMzIgKnVzZWNvbmRzCi0g KQotIHsKLS0gICAgc3RydWN0IHRpbWV2YWwgdG07Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIHRt OwotIAotICAgICBudl9nZXR0aW1lb2ZkYXkoJnRtKTsKLSAKLUBAIC00NzQsNyArNDc0LDcgQEAg Uk1fU1RBVFVTIE5WX0FQSV9DQUxMIG9zX2RlbGF5X3VzKE52VTMyIE1pY3JvU2Vjb25kcykKLSAg ICAgdW5zaWduZWQgbG9uZyB1c2VjOwotIAotICNpZmRlZiBOVl9DSEVDS19ERUxBWV9BQ0NVUkFD WQotLSAgICBzdHJ1Y3QgdGltZXZhbCB0bTEsIHRtMjsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwg dG0xLCB0bTI7Ci0gCi0gICAgIG52X2dldHRpbWVvZmRheSgmdG0xKTsKLSAjZW5kaWYKLUBAIC01 MTQsOSArNTE0LDkgQEAgUk1fU1RBVFVTIE5WX0FQSV9DQUxMIG9zX2RlbGF5KE52VTMyIE1pbGxp U2Vjb25kcykKLSAgICAgdW5zaWduZWQgbG9uZyBNaWNyb1NlY29uZHM7Ci0gICAgIHVuc2lnbmVk IGxvbmcgamlmZmllczsKLSAgICAgdW5zaWduZWQgbG9uZyBtZGVsYXlfc2FmZV9tc2VjOwotLSAg ICBzdHJ1Y3QgdGltZXZhbCB0bV9lbmQsIHRtX2F1eDsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwg dG1fZW5kLCB0bV9hdXg7Ci0gI2lmZGVmIE5WX0NIRUNLX0RFTEFZX0FDQ1VSQUNZCi0tICAgIHN0 cnVjdCB0aW1ldmFsIHRtX3N0YXJ0OwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCB0bV9zdGFydDsK LSAjZW5kaWYKLSAKLSAgICAgbnZfZ2V0dGltZW9mZGF5KCZ0bV9hdXgpOwotZGlmZiAtLWdpdCBh L2tlcm5lbC91dm0vTWFrZWZpbGUgYi9rZXJuZWwvdXZtL01ha2VmaWxlCi1pbmRleCAwY2FkOGZm Li4wNDNhMDhkIDEwMDY0NAotLS0tIGEva2VybmVsL3V2bS9NYWtlZmlsZQotKysrIGIva2VybmVs L3V2bS9NYWtlZmlsZQotQEAgLTIwNyw2ICsyMDcsNyBAQCBjY2ZsYWdzLXkgKz0gJChFWFRSQV9D RkxBR1MpCi0gCi0gUk1fTU9EVUxFX1NZTVZFUlM6PSAkKFJNX09VVF9ESVIpL01vZHVsZS5zeW12 ZXJzCi0gVVZNX01PRFVMRV9TWU1WRVJTOj0gJChvYmopL01vZHVsZS5zeW12ZXJzCi0rS0JVSUxE X0VYVFJBX1NZTUJPTFM6PSAkKFVWTV9NT0RVTEVfU1lNVkVSUykKLSAKLSBtb2R1bGUgJChNT0RV TEVfTkFNRSkua286ICQoVVZNX01PRFVMRV9TWU1WRVJTKSBkZWJ1Z19kaWFnbm9zdGljc19wcmlu dGluZwotIAotZGlmZiAtLWdpdCBhL2tlcm5lbC91dm0vY29uZnRlc3Quc2ggYi9rZXJuZWwvdXZt L2NvbmZ0ZXN0LnNoCi1pbmRleCBiN2E4NWYwLi4zM2UyYTYzIDEwMDc1NQotLS0tIGEva2VybmVs L3V2bS9jb25mdGVzdC5zaAotKysrIGIva2VybmVsL3V2bS9jb25mdGVzdC5zaAotQEAgLTE3Niw2 ICsxNzYsNyBAQCB0ZXN0X2hlYWRlcnMoKSB7Ci0gICAgIEZJTEVTPSIkRklMRVMgbGludXgva3Rp bWUuaCIKLSAgICAgRklMRVM9IiRGSUxFUyBsaW51eC9maWxlLmgiCi0gCi0rICAgIEZJTEVTX0FS Q0g9IiRGSUxFU19BUkNIIGFzbS9wZ3RhYmxlLmgiCi0gICAgIEZJTEVTX0FSQ0g9IiRGSUxFU19B UkNIIGFzbS9zZXRfbWVtb3J5LmgiCi0gCi0gICAgIHRyYW5zbGF0ZV9hbmRfZmluZF9oZWFkZXJf ZmlsZXMgJEhFQURFUlMgICAgICAkRklMRVMKLUBAIC00NDAsNiArNDQxLDkgQEAgY29tcGlsZV90 ZXN0KCkgewotICAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBzZXRfbWVtb3J5X2FycmF5 X3VjKCkgZnVuY3Rpb24gaXMgcHJlc2VudC4KLSAgICAgICAgICAgICAjCi0gICAgICAgICAgICAg Q09ERT0iCi0rICAgICAgICAgICAgI2lmIGRlZmluZWQoTlZfQVNNX1BHVEFCTEVfSF9QUkVTRU5U KQotKyAgICAgICAgICAgICNpbmNsdWRlIDxhc20vcGd0YWJsZS5oPgotKyAgICAgICAgICAgICNl bmRpZgotICAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0FTTV9TRVRfTUVNT1JZX0hfUFJFU0VO VCkKLSAgICAgICAgICAgICAjaW5jbHVkZSA8YXNtL3NldF9tZW1vcnkuaD4KLSAgICAgICAgICAg ICAjZWxzZQotZGlmZiAtLWdpdCBhL2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRlLmMgYi9rZXJu ZWwvdXZtL252aWRpYV91dm1fbGl0ZS5jCi1pbmRleCA2OTQzZTdjLi45YTdlM2I2IDEwMDY0NAot LS0tIGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGUuYwotKysrIGIva2VybmVsL3V2bS9udmlk aWFfdXZtX2xpdGUuYwotQEAgLTEzMSw4ICsxMzEsOCBAQCBzdGF0aWMKLSBSTV9TVEFUVVMgX3By ZWV4aXN0aW5nX2Vycm9yX29uX2NoYW5uZWwoVXZtR3B1TWlncmF0aW9uVHJhY2tpbmcgKnBNaWdU cmFja2VyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVXZtQ29t bWl0UmVjb3JkICpwUmVjb3JkKTsKLSAKLS1zdGF0aWMgdm9pZCBfc2V0X3RpbWVvdXRfaW5fdXNl YyhzdHJ1Y3QgdGltZXZhbCAqc3JjLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0cnVjdCB0aW1ldmFsICpyZXN1bHQsCi0rc3RhdGljIHZvaWQgX3NldF90aW1lb3V0X2luX3Vz ZWMoc3RydWN0IG52X3RpbWV2YWwgKnNyYywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzdHJ1Y3QgbnZfdGltZXZhbCAqcmVzdWx0LAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdGltZW91dEluVXNlYykKLSB7Ci0gICAgIGlmICghc3Jj IHx8ICFyZXN1bHQpCi1AQCAtODIwLDcgKzgyMCwxMyBAQCBkb25lOgotIH0KLSAKLSAjaWYgZGVm aW5lZChOVl9WTV9PUEVSQVRJT05TX1NUUlVDVF9IQVNfRkFVTFQpCi0rI2lmIExJTlVYX1ZFUlNJ T05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig0LCAxNywgMCkKLSt2bV9mYXVsdF90IF9mYXVsdChz dHJ1Y3Qgdm1fZmF1bHQgKnZtZikKLSsjZWxpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVM X1ZFUlNJT04oNCwgMTEsIDApCi0raW50IF9mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKLSsj ZWxzZQotIGludCBfZmF1bHQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHN0cnVjdCB2bV9m YXVsdCAqdm1mKQotKyNlbmRpZgotIHsKLSAjaWYgZGVmaW5lZChOVl9WTV9GQVVMVF9IQVNfQURE UkVTUykKLSAgICAgdW5zaWduZWQgbG9uZyB2YWRkciA9IHZtZi0+YWRkcmVzczsKLUBAIC04Mjgs OCArODM0LDE1IEBAIGludCBfZmF1bHQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHN0cnVj dCB2bV9mYXVsdCAqdm1mKQotICAgICB1bnNpZ25lZCBsb25nIHZhZGRyID0gKHVuc2lnbmVkIGxv bmcpdm1mLT52aXJ0dWFsX2FkZHJlc3M7Ci0gI2VuZGlmCi0gICAgIHN0cnVjdCBwYWdlICpwYWdl ID0gTlVMTDsKLSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDQsIDE3 LCAwKQotKyAgICB2bV9mYXVsdF90IHJldHZhbDsKLSsjZWxzZQotICAgICBpbnQgcmV0dmFsOwot IAotKyNlbmRpZgotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNCwg MTEsIDApCi0rICAgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEgPSB2bWYtPnZtYTsKLSsjZW5k aWYKLSAgICAgcmV0dmFsID0gX2ZhdWx0X2NvbW1vbih2bWEsIHZhZGRyLCAmcGFnZSwgdm1mLT5m bGFncyk7Ci0gCi0gICAgIHZtZi0+cGFnZSA9IHBhZ2U7Ci1AQCAtODY4LDcgKzg4MSwxMyBAQCBz dGF0aWMgc3RydWN0IHZtX29wZXJhdGlvbnNfc3RydWN0IHV2bWxpdGVfdm1hX29wcyA9Ci0gLy8g aXQncyBkZWFsaW5nIHdpdGggYW5vbnltb3VzIG1hcHBpbmcgKHNlZSBoYW5kbGVfcHRlX2ZhdWx0 KS4KLSAvLwotICNpZiBkZWZpbmVkKE5WX1ZNX09QRVJBVElPTlNfU1RSVUNUX0hBU19GQVVMVCkK LSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDQsIDE3LCAwKQotK3Zt X2ZhdWx0X3QgX3NpZ2J1c19mYXVsdChzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKLSsjZWxpZiBMSU5V WF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNCwgMTEsIDApCi0raW50IF9zaWdidXNf ZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpCi0rI2Vsc2UKLSBpbnQgX3NpZ2J1c19mYXVsdChz dHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgc3RydWN0IHZtX2ZhdWx0ICp2bWYpCi0rI2VuZGlm Ci0gewotICAgICB2bWYtPnBhZ2UgPSBOVUxMOwotICAgICByZXR1cm4gVk1fRkFVTFRfU0lHQlVT OwotQEAgLTE5OTIsOSArMjAxMSw5IEBAIHZvaWQgdW12bGl0ZV9kZXN0cm95X3Blcl9wcm9jZXNz X2dwdV9yZXNvdXJjZXMoVXZtR3B1VXVpZCAqZ3B1VXVpZFN0cnVjdCkKLSBzdGF0aWMgUk1fU1RB VFVTIF9jaGVja19lY2NfZXJyb3JzKFV2bUdwdU1pZ3JhdGlvblRyYWNraW5nICpwTWlnVHJhY2tl ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOdkJvb2wgKnBJc0VjY0Vy cm9yU2V0KQotIHsKLS0gICAgc3RydWN0IHRpbWV2YWwgZWNjRXJyb3JTdGFydFRpbWUgPSB7MH07 Ci0tICAgIHN0cnVjdCB0aW1ldmFsIGVjY0Vycm9yQ3VycmVudFRpbWUgPSB7MH07Ci0tICAgIHN0 cnVjdCB0aW1ldmFsIGVjY1RpbWVvdXQgPSB7MH07Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIGVj Y0Vycm9yU3RhcnRUaW1lID0gezB9OwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCBlY2NFcnJvckN1 cnJlbnRUaW1lID0gezB9OwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCBlY2NUaW1lb3V0ID0gezB9 OwotICAgICBOdkJvb2wgYkVjY0Vycm9yVGltZW91dCA9IE5WX0ZBTFNFOwotICAgICBOdkJvb2wg YkVjY0luY29taW5nRXJyb3IgPSBOVl9GQUxTRTsKLSAgICAgdW5zaWduZWQgcm1JbnRlcnJ1cHRT ZXQgPSAwOwotLS0gCi0yLjI5LjAKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvZmls ZXMvbnZpZGlhLWdseC5jb25mIGIvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMvbnZpZGlhLWdseC5j b25mCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3Yzc2ODgzYWJiMy4uMDAwMDAwMDAw MDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMvbnZpZGlhLWdseC5jb25mCisrKyAvZGV2 L251bGwKQEAgLTEsNCArMCwwIEBACi1TZWN0aW9uICJGaWxlcyIKLSAgICBNb2R1bGVQYXRoICIv dXNyL2xpYi9udmlkaWEveG9yZyIKLSAgICBNb2R1bGVQYXRoICIvdXNyL2xpYi94b3JnL21vZHVs ZXMiCi1FbmRTZWN0aW9uCmRpZmYgLS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC90ZW1wbGF0ZSBi L3NyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAxNjZmMzU3NTZiYy4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvdGVtcGxh dGUKKysrIC9kZXYvbnVsbApAQCAtMSwyMjMgKzAsMCBAQAotIyBUZW1wbGF0ZSBmaWxlIGZvciAn bnZpZGlhMzQwJwotCi1fZGVzYz0iTlZJRElBIGRyaXZlcnMgKEdlRm9yY2UgOCwgOSwgOU0sIDEw MCwgMTAwTSwgMjAwLCAzMDAgc2VyaWVzKSIKLQotcGtnbmFtZT1udmlkaWEzNDAKLXZlcnNpb249 MzQwLjEwOAotcmV2aXNpb249NAotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGlu dXgub3JnPiIKLWxpY2Vuc2U9ImN1c3RvbTpOVklESUEgcHJvcHJpZXRhcnkiCi1ob21lcGFnZT0i aHR0cDovL3d3dy5udmlkaWEuY29tIgotCi1hcmNocz0iaTY4NiB4ODZfNjQiCi1ub3BpZT15ZXMK LXJlcG9zaXRvcnk9bm9uZnJlZQotY3JlYXRlX3dya3NyYz15ZXMKLXNob3J0X2Rlc2M9IiR7X2Rl c2N9IC0gTGlicmFyaWVzIGFuZCBVdGlsaXRpZXMiCi1ob3N0bWFrZWRlcGVuZHM9InRhciIKLWRl cGVuZHM9IiR7cGtnbmFtZX0tZGttcy0ke3ZlcnNpb259XyR7cmV2aXNpb259IHBrZy1jb25maWci Ci1jb25mbGljdHM9ImNhdGFseXN0Pj0wIHhzZXJ2ZXItYWJpLXZpZGVvPjI0XzEiCi0KLXByb3Zp ZGVzPSJudmlkaWEtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKLXJlcGxhY2VzPSJudmlkaWE+PTAg bnZpZGlhLXN0YWJsZT49MCIKLXN1YnBhY2thZ2VzPSIke3BrZ25hbWV9LWRrbXMgJHtwa2duYW1l fS1vcGVuY2wgJHtwa2duYW1lfS1saWJzIgotCi1pZiBbICIkWEJQU19UQVJHRVRfTUFDSElORSIg PSAiaTY4NiIgXTsgdGhlbgotCV9wa2c9Ik5WSURJQS1MaW51eC14ODYtJHt2ZXJzaW9ufSIKLQlk aXN0ZmlsZXM9Imh0dHA6Ly91cy5kb3dubG9hZC5udmlkaWEuY29tL1hGcmVlODYvTGludXgteDg2 LyR7dmVyc2lvbn0vJHtfcGtnfS5ydW4iCi0JY2hlY2tzdW09MjAzMmFhZDYxMmQ5ZjNhZjFhZWNm OTc5Y2ZkZmU0MjNkNzlhYTc2OTI5ZWY4YmY4ZDNhNDAzMDc2ZjUwN2NjYQotZWxzZQotCV9wa2c9 Ik5WSURJQS1MaW51eC14ODZfNjQtJHt2ZXJzaW9ufS1uby1jb21wYXQzMiIKLQlkaXN0ZmlsZXM9 Imh0dHA6Ly91cy5kb3dubG9hZC5udmlkaWEuY29tL1hGcmVlODYvTGludXgteDg2XzY0LyR7dmVy c2lvbn0vJHtfcGtnfS5ydW4iCi0JY2hlY2tzdW09OTk1ZDQ0ZmVmNTg3ZmY1Mjg0NDk3YTQ3YTk1 ZDcxYWRiZWUwYzEzMDIwZDYxNWU5NDBhYzkyOGYxODBmNWI3NwotZmkKLQotZG9fZXh0cmFjdCgp IHsKLQlpbnN0YWxsIC1tNzU1ICR7WEJQU19TUkNESVNURElSfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0vJHtfcGtnfS5ydW4gJHt3cmtzcmN9Ci0JY2QgJHt3cmtzcmN9Ci0JLi8ke19wa2d9LnJ1biAt LWV4dHJhY3Qtb25seQotCXJtIC1mICR7X3BrZ30ucnVuCi19Ci0KLWRvX3BhdGNoKCkgewotCWNk ICR7X3BrZ30KLQlwYXRjaCAtcDEgPCAke0ZJTEVTRElSfS9rZXJuZWwtNS54LnBhdGNoCi0JcGF0 Y2ggLXAxIDwgJHtGSUxFU0RJUn0va2VybmVsLTUuOC5wYXRjaAotCXBhdGNoIC1wMSA8ICR7RklM RVNESVJ9L2tlcm5lbC01LjkucGF0Y2gKLX0KLQotZG9faW5zdGFsbCgpIHsKLQljZCAke19wa2d9 Ci0KLQkjIFggZHJpdmVyCi0Jdmluc3RhbGwgbnZpZGlhX2Rydi5zbyA3NTUgdXNyL2xpYi94b3Jn L21vZHVsZXMvZHJpdmVycwotCi0JIyBHTFggZXh0ZW5zaW9uIG1vZHVsZSBmb3IgWAotCXZpbnN0 YWxsIGxpYmdseC5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliL252aWRpYS94b3JnCi0JbG4gLXNm IGxpYmdseC5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9udmlkaWEveG9yZy9saWJn bHguc28uMQotCWxuIC1zZiBsaWJnbHguc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIv bnZpZGlhL3hvcmcvbGliZ2x4LnNvCi0JIyBPdmVycmlkZSBkZWZhdWx0IE1vZHVsZVBhdGggdG8g bG9hZCBudmlkaWEncyBnbHggaW5zdGVhZCBvZiB4b3JnJ3MKLQl2aW5zdGFsbCAke0ZJTEVTRElS fS9udmlkaWEtZ2x4LmNvbmYgNjQ0IC91c3Ivc2hhcmUvWDExL3hvcmcuY29uZi5kIDEwLW52aWRp YS1nbHguY29uZgotCi0JIyBPcGVuR0wgbGlicmFyaWVzIChHTCwgRUdMIGFuZCBHTEVTKQotCXZp bnN0YWxsIGxpYkdMLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGliR0wuc28u JHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGliR0wuc28uMQotCXZpbnN0YWxsIGxpYkVH TC5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYkVHTC5zby4ke3ZlcnNpb259 ICR7REVTVERJUn0vdXNyL2xpYi9saWJFR0wuc28uMQotCXZpbnN0YWxsIGxpYkdMRVN2MV9DTS5z by4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYkdMRVN2MV9DTS5zby4ke3ZlcnNp b259ICR7REVTVERJUn0vdXNyL2xpYi9saWJHTEVTdjFfQ00uc28uMQotCXZpbnN0YWxsIGxpYkdM RVN2Mi5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYkdMRVN2Mi5zby4ke3Zl cnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJHTEVTdjIuc28uMgotCSMgU29tZSBwcm9ncmFt cyBsaW5rIHRvIHRoZXNlIGxpYmdsdm5kIGxpbmtzCi0JbG4gLXNmIGxpYkdMLnNvLjEgJHtERVNU RElSfS91c3IvbGliL2xpYk9wZW5HTC5zby4wCi0JbG4gLXNmIGxpYkdMLnNvLjEgJHtERVNURElS fS91c3IvbGliL2xpYkdMWC5zby4wCi0KLQkjIE9wZW5HTCBjb3JlIGxpYnJhcnkKLQl2aW5zdGFs bCBsaWJudmlkaWEtZ2xjb3JlLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGli bnZpZGlhLWdsY29yZS5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEt Z2xjb3JlLnNvCi0KLQkjIFZEUEFVCi0Jdmluc3RhbGwgbGlidmRwYXVfbnZpZGlhLnNvLiR7dmVy c2lvbn0gNzU1IHVzci9saWIvdmRwYXUKLQlsbiAtc2YgbGlidmRwYXVfbnZpZGlhLnNvLiR7dmVy c2lvbn0gJHtERVNURElSfS91c3IvbGliL3ZkcGF1L2xpYnZkcGF1X252aWRpYS5zbwotCWxuIC1z ZiBsaWJ2ZHBhdV9udmlkaWEuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvdmRwYXUv bGlidmRwYXVfbnZpZGlhLnNvLjEKLQotCSMgbWlzYyBsaWJyYXJpZXMKLQl2aW5zdGFsbCB0bHMv bGlibnZpZGlhLXRscy5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRp YS10bHMuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLXRscy5zbwot Ci0Jdmluc3RhbGwgbGlibnZpZGlhLWNmZy5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4g LXNmIGxpYm52aWRpYS1jZmcuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZp ZGlhLWNmZy5zbwotCWxuIC1zZiBsaWJudmlkaWEtY2ZnLnNvLiR7dmVyc2lvbn0gJHtERVNURElS fS91c3IvbGliL2xpYm52aWRpYS1jZmcuc28uMQotCi0Jdmluc3RhbGwgbGlibnZpZGlhLW1sLnNv LiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZpZGlhLW1sLnNvLiR7dmVyc2lv bn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1tbC5zbwotCWxuIC1zZiBsaWJudmlkaWEt bWwuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLW1sLnNvLjEKLQot CXZpbnN0YWxsIGxpYm52aWRpYS1lbmNvZGUuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxu IC1zZiBsaWJudmlkaWEtZW5jb2RlLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xp Ym52aWRpYS1lbmNvZGUuc28KLQlsbiAtc2YgbGlibnZpZGlhLWVuY29kZS5zby4ke3ZlcnNpb259 ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtZW5jb2RlLnNvLjEKLQotCXZpbnN0YWxsIGxp Ym52aWRpYS1pZnIuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlkaWEt aWZyLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1pZnIuc28KLQls biAtc2YgbGlibnZpZGlhLWlmci5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJu dmlkaWEtaWZyLnNvLjEKLQotCXZpbnN0YWxsIGxpYm52aWRpYS1mYmMuc28uJHt2ZXJzaW9ufSA3 NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlkaWEtZmJjLnNvLiR7dmVyc2lvbn0gJHtERVNURElS fS91c3IvbGliL2xpYm52aWRpYS1mYmMuc28KLQlsbiAtc2YgbGlibnZpZGlhLWZiYy5zby4ke3Zl cnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtZmJjLnNvLjEKLQotCXZpbnN0YWxs IGxpYm52aWRpYS1nbHNpLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQotCSMgQ1VEQQotCXZi aW4gbnZpZGlhLWN1ZGEtbXBzLWNvbnRyb2wKLQl2YmluIG52aWRpYS1jdWRhLW1wcy1zZXJ2ZXIK LQl2bWFuIG52aWRpYS1jdWRhLW1wcy1jb250cm9sLjEuZ3oKLQotCXZpbnN0YWxsIGxpYmN1ZGEu c28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJjdWRhLnNvLiR7dmVyc2lvbn0g JHtERVNURElSfS91c3IvbGliL2xpYmN1ZGEuc28KLQlsbiAtc2YgbGliY3VkYS5zby4ke3ZlcnNp b259ICR7REVTVERJUn0vdXNyL2xpYi9saWJjdWRhLnNvLjEKLQotCXZpbnN0YWxsIGxpYm52Y3V2 aWQuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmN1dmlkLnNvLiR7dmVy c2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52Y3V2aWQuc28KLQlsbiAtc2YgbGlibnZjdXZp ZC5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmN1dmlkLnNvLjEKLQotCSMg bnZpZGlhLXhjb25maWcKLQl2YmluIG52aWRpYS14Y29uZmlnCi0Jdm1hbiBudmlkaWEteGNvbmZp Zy4xLmd6Ci0KLQkjIG52aWRpYS1zZXR0aW5ncwotCXZiaW4gbnZpZGlhLXNldHRpbmdzCi0Jdm1h biBudmlkaWEtc2V0dGluZ3MuMS5negotCXZpbnN0YWxsIG52aWRpYS1zZXR0aW5ncy5kZXNrdG9w IDY0NCB1c3Ivc2hhcmUvYXBwbGljYXRpb25zCi0Jdmluc3RhbGwgbnZpZGlhLXNldHRpbmdzLnBu ZyA2NDQgdXNyL3NoYXJlL3BpeG1hcHMKLQlzZWQgLWUgJ3M6X19VVElMU19QQVRIX186L3Vzci9i aW46JyBcCi0JCS1lICdzOl9fUElYTUFQX1BBVEhfXzovdXNyL3NoYXJlL3BpeG1hcHM6JyBcCi0J CS1pICR7REVTVERJUn0vdXNyL3NoYXJlL2FwcGxpY2F0aW9ucy9udmlkaWEtc2V0dGluZ3MuZGVz a3RvcAotCi0JIyBudmlkaWEtYnVnLXJlcG9ydAotCXZiaW4gbnZpZGlhLWJ1Zy1yZXBvcnQuc2gg bnZpZGlhLWJ1Zy1yZXBvcnQKLQl2YmluIG52aWRpYS1kZWJ1Z2R1bXAKLQotCSMgbnZpZGlhLXNt aQotCXZiaW4gbnZpZGlhLXNtaQotCXZtYW4gbnZpZGlhLXNtaS4xLmd6Ci0KLQkjIExpY2Vuc2Ug YW5kIGRvY3VtZW50YXRpb24uCi0JdmxpY2Vuc2UgTElDRU5TRQotCXZkb2MgUkVBRE1FLnR4dCBS RUFETUUKLQl2ZG9jIE5WSURJQV9DaGFuZ2Vsb2cKLQotCSMgb3BlbmNsIHBrZwotCXZpbnN0YWxs IG52aWRpYS5pY2QgNjQ0IGV0Yy9PcGVuQ0wvdmVuZG9ycwotCi0Jdmluc3RhbGwgbGlibnZpZGlh LWNvbXBpbGVyLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZpZGlhLWNv bXBpbGVyLnNvLiR7dmVyc2lvbn0gXAotCQkke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWNv bXBpbGVyLnNvCi0JbG4gLXNmIGxpYm52aWRpYS1jb21waWxlci5zby4ke3ZlcnNpb259IFwKLQkJ JHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1jb21waWxlci5zby4xCi0KLQl2aW5zdGFsbCBs aWJudmlkaWEtb3BlbmNsLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZp ZGlhLW9wZW5jbC5zby4ke3ZlcnNpb259IFwKLQkJJHtERVNURElSfS91c3IvbGliL2xpYm52aWRp YS1vcGVuY2wuc28KLQlsbiAtc2YgbGlibnZpZGlhLW9wZW5jbC5zby4ke3ZlcnNpb259IFwKLQkJ JHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1vcGVuY2wuc28uMQotCi0JIyBka21zIHBrZwot CXZta2RpciB1c3Ivc3JjL252aWRpYS0ke3ZlcnNpb259Ci0JIyBhZGQgbnZpZGlhLXV2bSBka21z IHN1Ym1vZHVsZSB0b28uCi0JaWYgWyAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiID0gIng4Nl82NCIg XTsgdGhlbgotCQljYXQga2VybmVsL3V2bS9ka21zLmNvbmYuZnJhZ21lbnQgPj4ga2VybmVsL2Rr bXMuY29uZgotCWZpCi0JdmNvcHkgImtlcm5lbC8qIiB1c3Ivc3JjL252aWRpYS0ke3ZlcnNpb259 Ci0KLQkjIHN5c3RlbWQgbW9kdWxlcy1sb2FkLmQoNSkgZmlsZS4KLQl2bWtkaXIgdXNyL2xpYi9t b2R1bGVzLWxvYWQuZAotCWVjaG8gIm52aWRpYSIgPiAke0RFU1RESVJ9L3Vzci9saWIvbW9kdWxl cy1sb2FkLmQvbnZpZGlhLmNvbmYKLQljaG1vZCA2NDQgJHtERVNURElSfS91c3IvbGliL21vZHVs ZXMtbG9hZC5kL252aWRpYS5jb25mCi0JaWYgWyAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiID0gIng4 Nl82NCIgXTsgdGhlbgotCQllY2hvICJudmlkaWEtdXZtIiA+ICR7REVTVERJUn0vdXNyL2xpYi9t b2R1bGVzLWxvYWQuZC9udmlkaWEtdXZtLmNvbmYKLQkJY2htb2QgNjQ0ICR7REVTVERJUn0vdXNy L2xpYi9tb2R1bGVzLWxvYWQuZC9udmlkaWEtdXZtLmNvbmYKLQlmaQotCi0JIyBCbGFja2xpc3Qg bm91dmVhdS4KLQl2bWtkaXIgdXNyL2xpYi9tb2Rwcm9iZS5kCi0JZWNobyAiYmxhY2tsaXN0IG5v dXZlYXUiID4gJHtERVNURElSfS91c3IvbGliL21vZHByb2JlLmQvbnZpZGlhLmNvbmYKLQljaG1v ZCA2NDQgJHtERVNURElSfS91c3IvbGliL21vZHByb2JlLmQvbnZpZGlhLmNvbmYKLQotCSMgT21p dCBkcm0gZHJhY3V0IG1vZHVsZSB0b28uCi0Jdm1rZGlyIHVzci9saWIvZHJhY3V0L2RyYWN1dC5j b25mLmQKLQllY2hvICJvbWl0X2RyYWN1dG1vZHVsZXMrPVwiIGRybSBcIiIgPiAke0RFU1RESVJ9 L3Vzci9saWIvZHJhY3V0L2RyYWN1dC5jb25mLmQvOTktbnZpZGlhLmNvbmYKLX0KLQotbnZpZGlh MzQwLWRrbXNfcGFja2FnZSgpIHsKLQlzaG9ydF9kZXNjPSIke19kZXNjfSAtIERLTVMga2VybmVs IG1vZHVsZSIKLQlka21zX21vZHVsZXM9Im52aWRpYSAke3ZlcnNpb259IgotCWRlcGVuZHM9ImRr bXMiCi0JcHJvdmlkZXM9Im52aWRpYS1ka21zLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi0JcmVw bGFjZXM9Im52aWRpYS1ka21zPj0wIG52aWRpYS1zdGFibGUtZGttcz49MCIKLQlwa2dfaW5zdGFs bCgpIHsKLQkJdm1vdmUgdXNyL3NyYwotCQl2bW92ZSB1c3IvbGliL21vZHVsZXMtbG9hZC5kCi0J CXZtb3ZlIHVzci9saWIvbW9kcHJvYmUuZAotCQl2bW92ZSB1c3IvbGliL2RyYWN1dAotCX0KLX0K LW52aWRpYTM0MC1vcGVuY2xfcGFja2FnZSgpIHsKLQlzaG9ydF9kZXNjPSIke19kZXNjfSAtIE9w ZW5DTCBpbXBsZW1lbnRhdGlvbiIKLQlwcm92aWRlcz0ibnZpZGlhLW9wZW5jbC0ke3ZlcnNpb259 XyR7cmV2aXNpb259IgotCXJlcGxhY2VzPSJudmlkaWEtb3BlbmNsPj0wIG52aWRpYS1zdGFibGUt b3BlbmNsPj0wIgotCWRlcGVuZHM9ImxpYk9wZW5DTCIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1v dmUgInVzci9saWIvbGlibnZpZGlhLWNvbXBpbGVyKiIKLQkJdm1vdmUgInVzci9saWIvbGlibnZp ZGlhLW9wZW5jbCoiCi0JCXZtb3ZlIGV0Yy9PcGVuQ0wKLQl9Ci19Ci1udmlkaWEzNDAtbGlic19w YWNrYWdlKCkgewotCXNob3J0X2Rlc2M9IiR7X2Rlc2N9IC0gbGlicmFyaWVzIgotCXByb3ZpZGVz PSJsaWJHTC03LjExXzEgbGliRUdMLTcuMTFfMSBsaWJHTEVTLTcuMTFfMSBsaWJnbHZuZC0xLjMu MF8xIgotCXNobGliX3Byb3ZpZGVzPSJsaWJHTFguc28uMCBsaWJPcGVuR0wuc28uMCIKLQlyZXBs YWNlcz0ibGliR0w+PTAgbGliRUdMPj0wIGxpYkdMRVM+PTAgbGliZ2x2bmQ+PTAiCi0JcGtnX2lu c3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9saWIKLQl9Ci19CmRpZmYgLS1naXQgYS9zcmNwa2dzL252 aWRpYTM0MC91cGRhdGUgYi9zcmNwa2dzL252aWRpYTM0MC91cGRhdGUKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDQzYmFkNjdmN2U4Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252 aWRpYTM0MC91cGRhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwyICswLDAgQEAKLXNpdGU9Imh0dHA6 Ly93d3cubnZpZGlhLmNvbS9vYmplY3QvdW5peC5odG1sIgotcGF0dGVybj0nMzQwLis+XEtbXGQu XSsoPz08L0E+KScKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQppbmRleCBlMDdjMTYwZWFmZS4u YzNiNzlmNDM2YTUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdyZW1vdmVkLXBhY2thZ2VzJwogcGtnbmFtZT1yZW1vdmVk LXBhY2thZ2VzCiB2ZXJzaW9uPTAuMQotcmV2aXNpb249NgorcmV2aXNpb249NwogYnVpbGRfc3R5 bGU9bWV0YQogc2hvcnRfZGVzYz0iVW5pbnN0YWxscyBwYWNrYWdlcyByZW1vdmVkIGZyb20gcmVw b3NpdG9yeSIKIG1haW50YWluZXI9IlBpb3RyIFfDs2pjaWsgPGNob2NpbWllckB0bGVuLnBsPiIK QEAgLTc4LDYgKzc4LDEwIEBAIHJlcGxhY2VzPSIKICB3aXJlZ3VhcmQtZ288PTAuMC4yMDE4MTIy Ml8yCiAgd2lyZXNoYXJrLWd0azw9My4wLjdfMQogIHl0LXBsYXk8PTIwMTQwMTE3XzIKKyBudmlk aWEzNDA8PTM0MC4xMDhfNAorIG52aWRpYTM0MC1ka21zPD0zNDAuMTA4XzQKKyBudmlkaWEzNDAt b3BlbmNsPD0zNDAuMTA4XzQKKyBudmlkaWEzNDAtbGliczw9MzQwLjEwOF80CiAiCiAKIGlmIFsg IiRYQlBTX1RBUkdFVF9MSUJDIiA9ICJtdXNsIiBdOyB0aGVuCg== --===============6100124344934151070==--