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 5277 invoked from network); 19 Dec 2020 22:50:02 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 19 Dec 2020 22:50:02 -0000 Content-Type: multipart/mixed; boundary="===============5222507499858533687==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_nvidia340=3A_remove?= To: ml@inbox.vuxu.org From: abenson Reply-to: ml@inbox.vuxu.org Message-ID: Date: Sat, 19 Dec 2020 23:50:00 +0100 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============5222507499858533687== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IGFiZW5zb24gYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2FiZW5zb24v dm9pZC1wYWNrYWdlcyBybV9udmlkaWEzNDAKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzI3Mjg3CgpudmlkaWEzNDA6IHJlbW92ZQoKCkEgcGF0Y2ggZmls ZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8y NzI4Ny5wYXRjaCBpcyBhdHRhY2hlZA== --===============5222507499858533687== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-rm_nvidia340-27287.patch" RnJvbSA5M2NkNTBhMDA3Yzk0NmYyYjRjZTk0N2Q5NWJjMzBiZWE0M2E0YzcxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29t PgpEYXRlOiBTYXQsIDE5IERlYyAyMDIwIDE2OjQ5OjMyIC0wNjAwClN1YmplY3Q6IFtQQVRDSF0g bnZpZGlhMzQwOiByZW1vdmUKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMyAtCiBzcmNwa2dzL252aWRpYTM0MC1ka21zICAgICAgICAgICAgICAgICAg IHwgICAxIC0KIHNyY3BrZ3MvbnZpZGlhMzQwLWxpYnMgICAgICAgICAgICAgICAgICAgfCAgIDEg LQogc3JjcGtncy9udmlkaWEzNDAtb3BlbmNsICAgICAgICAgICAgICAgICB8ICAgMSAtCiBzcmNw a2dzL252aWRpYTM0MC9JTlNUQUxMICAgICAgICAgICAgICAgIHwgICA3IC0KIHNyY3BrZ3MvbnZp ZGlhMzQwL0lOU1RBTEwubXNnICAgICAgICAgICAgfCAgMTUgLQogc3JjcGtncy9udmlkaWEzNDAv UkVNT1ZFICAgICAgICAgICAgICAgICB8ICAgNyAtCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9r ZXJuZWwtNS44LnBhdGNoIHwgIDkyIC0tLQogc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVs LTUuOS5wYXRjaCB8IDEwNyAtLS0tCiBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS54 LnBhdGNoIHwgNzgxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL252aWRpYTM0MC9m aWxlcy9udmlkaWEtZ2x4LmNvbmYgIHwgICA0IC0KIHNyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRl ICAgICAgICAgICAgICAgfCAyMjMgLS0tLS0tLQogc3JjcGtncy9udmlkaWEzNDAvdXBkYXRlICAg ICAgICAgICAgICAgICB8ICAgMiAtCiAxMyBmaWxlcyBjaGFuZ2VkLCAxMjQ0IGRlbGV0aW9ucygt KQogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbnZpZGlhMzQwLWRrbXMKIGRlbGV0ZSBtb2Rl IDEyMDAwMCBzcmNwa2dzL252aWRpYTM0MC1saWJzCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9udmlkaWEzNDAtb3BlbmNsCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAv SU5TVEFMTAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL0lOU1RBTEwubXNn CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvUkVNT1ZFCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOC5wYXRjaAogZGVsZXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjkucGF0Y2gKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS54LnBhdGNo CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvZmlsZXMvbnZpZGlhLWdseC5j b25mCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9udmlkaWEzNDAvdGVtcGxhdGUKIGRlbGV0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL252aWRpYTM0MC91cGRhdGUKCmRpZmYgLS1naXQgYS9jb21t b24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBmOTRhODkxZDZmZC4uNGNhMjVkOWQ5ZGYg MTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtMTMxLDE2 ICsxMzEsMTMgQEAgbGliYnJjbU9wZW5WRy5zbyBycGktdXNlcmxhbmQtMjAxODAxMDNfMgogbGli d2F5bGFuZC1lZ2wuc28uMSB3YXlsYW5kLTEuMTUuMF80CiBsaWJudmlkaWEtbWwuc28uMSBudmlk aWEtbGlicy0zNDYuNDdfMSBpZ25vcmUKIGxpYm52aWRpYS1tbC5zby4xIG52aWRpYTMwNC1saWJz LTMwNC4wMF8xIGlnbm9yZQotbGlibnZpZGlhLW1sLnNvLjEgbnZpZGlhMzQwLWxpYnMtMzQwLjQ2 XzEgaWdub3JlCiBsaWJudmlkaWEtbWwuc28uMSBudmlkaWEzOTAtbGlicy0zOTAuODdfMSBpZ25v cmUKIGxpYm52aWRpYS10bHMuc28uMzQ2LjQ3IG52aWRpYS1saWJzLTM0Ni40N18xIGlnbm9yZQog bGlibnZpZGlhLWdsY29yZS5zby4zNDYuNDcgbnZpZGlhLWxpYnMtMzQ2LjQ3XzEgaWdub3JlCiBs aWJudmlkaWEtZ3RrMi5zby4zNDYuNDcgbnZpZGlhLWd0a2xpYnMtMzQ2LjQ3XzEgaWdub3JlCiBs aWJudmlkaWEtZ3RrMy5zby4zNDYuNDcgbnZpZGlhLWd0a2xpYnMtMzQ2LjQ3XzEgaWdub3JlCi1s aWJudmlkaWEtZ2xjb3JlLnNvLjM0Ni40NyBudmlkaWEzNDAtbGlicy0zNDAuNDZfMSBpZ25vcmUK IGxpYm52aWRpYS1nbGNvcmUuc28uMzkwLjg3IG52aWRpYTM5MC1saWJzLTM5MC44N18xIGlnbm9y ZQogbGlibnZpZGlhLWdsc2kuc28uMzQ2LjcyIG52aWRpYS1saWJzLTM0Ni43Ml8xIGlnbm9yZQot bGlibnZpZGlhLWdsc2kuc28uMzQwLjEwNyBudmlkaWEzNDAtbGlicy0zNDAuMTA3XzcgaWdub3Jl CiBsaWJudmlkaWEtZmF0YmluYXJ5bG9hZGVyLnNvLjM5MC4xMzggbnZpZGlhMzkwLWxpYnMtMzkw LjEzOF8xIGlnbm9yZQogbGlibnZpZGlhLWZhdGJpbmFyeWxvYWRlci5zby40MzAuNDAgbnZpZGlh LWxpYnMtNDMwLjQwXzEgaWdub3JlCiBsaWJnbGFwaS5zby4wIGxpYmdsYXBpLTcuMTFfMQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAtZGttcyBiL3NyY3BrZ3MvbnZpZGlhMzQwLWRrbXMK ZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDM4M2QwNjdhNzBmLi4wMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL252aWRpYTM0MC1ka21zCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAot bnZpZGlhMzQwClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9udmlkaWEzNDAtbGlicyBiL3NyY3BrZ3MvbnZpZGlhMzQwLWxpYnMKZGVsZXRlZCBmaWxlIG1v ZGUgMTIwMDAwCmluZGV4IDM4M2QwNjdhNzBmLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252 aWRpYTM0MC1saWJzCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotbnZpZGlhMzQwClwgTm8g bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAtb3Bl bmNsIGIvc3JjcGtncy9udmlkaWEzNDAtb3BlbmNsCmRlbGV0ZWQgZmlsZSBtb2RlIDEyMDAwMApp bmRleCAzODNkMDY3YTcwZi4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAtb3Bl bmNsCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotbnZpZGlhMzQwClwgTm8gbmV3bGluZSBh dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvSU5TVEFMTCBiL3Ny Y3BrZ3MvbnZpZGlhMzQwL0lOU1RBTEwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZi MDY1YmVkYjRhLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252aWRpYTM0MC9JTlNUQUxMCisr KyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi0jIFJlZ2VuZXJhdGUgaW5pdHJhbWZzLgotY2Fz ZSAke0FDVElPTn0gaW4KLXBvc3QpCi0JZWNobyAiUmVnZW5lcmF0aW5nIGluaXRyYW1mcywgcGxl YXNlIHdhaXQuLi4iCi0JZHJhY3V0IC1mIC1xIC0tcmVnZW5lcmF0ZS1hbGwKLQk7OwotZXNhYwpk aWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvSU5TVEFMTC5tc2cgYi9zcmNwa2dzL252aWRp YTM0MC9JTlNUQUxMLm1zZwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjMwMWMzNmVk YmUuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQwL0lOU1RBTEwubXNnCisrKyAv ZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotPiBSZW1vdmUgZnJvbSB5b3VyIC9ldGMvWDExL3hv cmcuY29uZiBibG9ja3MgbGlrZSB0aGlzOgotCi1TZWN0aW9uICJGaWxlcyIKLS4uLgotRW5kU2Vj dGlvbgotCi1UaGlzIGlzIGtub3duIHRvIGhhcHBlbiB3aGVuIHRoZSBjb25maWd1cmF0aW9uIGlz IGdlbmVyYXRlZCBieSBudmlkaWEteGNvbmZpZy4KLVN1Y2ggYSBzZWN0aW9uIGludGVyZmVyZXMg d2l0aCB0aGUgIkZpbGVzIiBTZWN0aW9uIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLgotCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCi0KLT4gSWYgeW91IHdpc2ggdG8gZ28gYmFjayB0byBub3V2ZWF1 OgotCi0jIHhicHMtcmVtb3ZlIG52aWRpYTM0MCBudmlkaWEzNDAtZGttcwotIyB4YnBzLWluc3Rh bGwgbGliZ2x2bmQKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL1JFTU9WRSBiL3NyY3Br Z3MvbnZpZGlhMzQwL1JFTU9WRQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTRkNDk0 Y2EwMTUuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQwL1JFTU9WRQorKysgL2Rl di9udWxsCkBAIC0xLDcgKzAsMCBAQAotIyBSZWdlbmVyYXRlIGluaXRyYW1mcy4KLWNhc2UgJHtB Q1RJT059IGluCi1wdXJnZSkKLQllY2hvICJSZWdlbmVyYXRpbmcgaW5pdHJhbWZzLCBwbGVhc2Ug d2FpdC4uLiIKLQlkcmFjdXQgLWYgLXEgLS1yZWdlbmVyYXRlLWFsbAotCTs7Ci1lc2FjCmRpZmYg LS1naXQgYS9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJuZWwtNS44LnBhdGNoIGIvc3JjcGtn cy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMWQ4YjFhNDBlMWUuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQw L2ZpbGVzL2tlcm5lbC01LjgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5MiArMCwwIEBACi1G cm9tIDJjYzMzNDJiNGIzYzk2YmNjNDA2MjUxMzAxMWQzNWMwNzliMDA5YTIgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCi1Gcm9tOiBncmF5c2t5IDxncmF5c2t5QGFyY2hsaW51eC51cz4KLURhdGU6 IFRodSwgMjIgT2N0IDIwMjAgMDY6NTk6NTkgLTA0MDAKLVN1YmplY3Q6IFtQQVRDSCAyLzNdIGtl cm5lbC01LjgKLQotY3JlZGl0OiBodHRwczovL2xhdW5jaHBhZC5uZXQvfmtlbGViZWszMzMvK2Fy Y2hpdmUvdWJ1bnR1L252aWRpYS1sZWdhY3kvK3BhY2thZ2VzCi1leHRyYWN0ZWQgZnJvbTogaHR0 cHM6Ly9sYXVuY2hwYWRsaWJyYXJpYW4ubmV0LzQ5MjQ2ODU1Ny9udmlkaWEtZ3JhcGhpY3MtZHJp dmVycy0zNDBfMzQwLjEwOC0xbG10cmZvY2FsM18zNDAuMTA4LTJsbXRyZm9jYWwuZGlmZi5negot LS0tCi0ga2VybmVsL252LWxpbnV4LmggICAgICAgICAgICAgICAgfCA4ICsrKysrKysrCi0ga2Vy bmVsL252aWRpYS1tb2R1bGVzLWNvbW1vbi5tayAgfCAxICsKLSBrZXJuZWwvb3MtbWxvY2suYyAg ICAgICAgICAgICAgICB8IDggKysrKysrKysKLSBrZXJuZWwvdXZtL252aWRpYV91dm1fbGl0ZV9h cGkuYyB8IDQgKysrKwotIDQgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKQotCi1kaWZm IC0tZ2l0IGEva2VybmVsL252LWxpbnV4LmggYi9rZXJuZWwvbnYtbGludXguaAotaW5kZXggODNl NjQzMy4uZDA1NTU1MiAxMDA2NDQKLS0tLSBhL2tlcm5lbC9udi1saW51eC5oCi0rKysgYi9rZXJu ZWwvbnYtbGludXguaAotQEAgLTY2OSwxMSArNjY5LDE5IEBAIGV4dGVybiBudl9zcGlubG9ja190 IGttX2xvY2s7Ci0gIyAgZGVmaW5lIEtNX0ZSRUVfUkVDT1JEKGEsYixjKQotICNlbmRpZgotIAot KyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOCwgMCkKLSsjZGVm aW5lIE5WX1ZNQUxMT0MocHRyLCBzaXplKSAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgeyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIChw dHIpID0gX192bWFsbG9jKHNpemUsIEdGUF9LRVJORUwpOyAgICAgIFwKLSsgICAgICAgIFZNX0FM TE9DX1JFQ09SRChwdHIsIHNpemUsICJ2bV92bWFsbG9jIik7IFwKLSsgICAgfQotKyNlbHNlCi0g I2RlZmluZSBOVl9WTUFMTE9DKHB0ciwgc2l6ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXAotICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLSAgICAgICAgIChwdHIpID0gX192bWFsbG9jKHNpemUsIEdGUF9LRVJORUws IFBBR0VfS0VSTkVMKTsgICBcCi0gICAgICAgICBWTV9BTExPQ19SRUNPUkQocHRyLCBzaXplLCAi dm1fdm1hbGxvYyIpOyAgICAgICAgICAgXAotICAgICB9Ci0rI2VuZGlmCi0gCi0gI2RlZmluZSBO Vl9WRlJFRShwdHIsIHNpemUpICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgeyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotZGlmZiAtLWdpdCBh L2tlcm5lbC9udmlkaWEtbW9kdWxlcy1jb21tb24ubWsgYi9rZXJuZWwvbnZpZGlhLW1vZHVsZXMt Y29tbW9uLm1rCi1pbmRleCBiOTQ1OTFiLi4wZTRjMjI4IDEwMDY0NAotLS0tIGEva2VybmVsL252 aWRpYS1tb2R1bGVzLWNvbW1vbi5tawotKysrIGIva2VybmVsL252aWRpYS1tb2R1bGVzLWNvbW1v bi5tawotQEAgLTIyMiw2ICsyMjIsNyBAQCBidWlsZC1zYW5pdHktY2hlY2tzOgotIGRlZmluZSBC VUlMRF9NT0RVTEVfUlVMRQotICAkKDEpOiBidWlsZC1zYW5pdHktY2hlY2tzICQoMykKLSAJQGVj aG8gIk5WSURJQTogY2FsbGluZyBLQlVJTEQuLi4iOyBcCi0rCXRvdWNoIC5udi1rZXJuZWwuby5j bWQ7IFwKLSAJJCQoTUFLRSkgIkNDPSQkKENDKSIgTlZfTU9EVUxFX1NVRkZJWD0kJChzdHJpcCAk KDIpKSAkJChLQlVJTERfUEFSQU1TKSBtb2R1bGVzOyBcCi0gCWVjaG8gIk5WSURJQTogbGVmdCBL QlVJTEQuIjsgXAotIAlpZiAhIFsgLWYgJCgxKSBdOyB0aGVuIFwKLWRpZmYgLS1naXQgYS9rZXJu ZWwvb3MtbWxvY2suYyBiL2tlcm5lbC9vcy1tbG9jay5jCi1pbmRleCA4YTFmYTJmLi5mYzUwNTQz IDEwMDY0NAotLS0tIGEva2VybmVsL29zLW1sb2NrLmMKLSsrKyBiL2tlcm5lbC9vcy1tbG9jay5j Ci1AQCAtNDQsMTEgKzQ0LDE5IEBAIFJNX1NUQVRVUyBOVl9BUElfQ0FMTCBvc19sb2NrX3VzZXJf cGFnZXMoCi0gICAgICAgICByZXR1cm4gcm1TdGF0dXM7Ci0gICAgIH0KLSAKLSsjaWYgTElOVVhf VkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDUsIDgsIDApCi0rICAgIGRvd25fcmVhZCgm bW0tPm1tYXBfbG9jayk7Ci0rICAgIHJldCA9IE5WX0dFVF9VU0VSX1BBR0VTKCh1bnNpZ25lZCBs b25nKWFkZHJlc3MsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VfY291bnQsIHdy aXRlLCBmb3JjZSwgdXNlcl9wYWdlcywgTlVMTCk7Ci0rICAgIHVwX3JlYWQoJm1tLT5tbWFwX2xv Y2spOwotKyAgICBwaW5uZWQgPSByZXQ7Ci0rI2Vsc2UKLSAgICAgZG93bl9yZWFkKCZtbS0+bW1h cF9zZW0pOwotICAgICByZXQgPSBOVl9HRVRfVVNFUl9QQUdFUygodW5zaWduZWQgbG9uZylhZGRy ZXNzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlX2NvdW50LCB3cml0ZSwgZm9y Y2UsIHVzZXJfcGFnZXMsIE5VTEwpOwotICAgICB1cF9yZWFkKCZtbS0+bW1hcF9zZW0pOwotICAg ICBwaW5uZWQgPSByZXQ7Ci0rI2VuZGlmCi0gCi0gICAgIGlmIChyZXQgPCAwKQotICAgICB7Ci1k aWZmIC0tZ2l0IGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpdGVfYXBpLmMgYi9rZXJuZWwvdXZt L252aWRpYV91dm1fbGl0ZV9hcGkuYwotaW5kZXggODQ0OGViNi4uOTdhNDgxOCAxMDA2NDQKLS0t LSBhL2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRlX2FwaS5jCi0rKysgYi9rZXJuZWwvdXZtL252 aWRpYV91dm1fbGl0ZV9hcGkuYwotQEAgLTMwLDYgKzMwLDEwIEBACi0gI2luY2x1ZGUgInV2bV9n cHVfb3BzX3Rlc3RzLmgiCi0gI2VuZGlmCi0gCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBL RVJORUxfVkVSU0lPTig1LCA4LCAwKQotKyNkZWZpbmUgbW1hcF9zZW0gbW1hcF9sb2NrCi0rI2Vu ZGlmCi0rCi0gLy8KLSAvLyBudmlkaWFfdXZtX2xpdGVfYXBpLmMKLSAvLwotLS0gCi0yLjI5LjAK LQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUuOS5wYXRjaCBi L3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL2tlcm5lbC01LjkucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGQ4NTg0MzE0ZjI0Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL252 aWRpYTM0MC9maWxlcy9rZXJuZWwtNS45LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTA3ICsw LDAgQEAKLUZyb20gZmVhNDAxZGY3NTAwYmZiZWFkNWE0MmIxZTc0NTYwZGJkZGYyZjVhMyBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IGdyYXlza3kgPGdyYXlza3lAYXJjaGxpbnV4LnVz PgotRGF0ZTogVGh1LCAyMiBPY3QgMjAyMCAwNzowMDozNSAtMDQwMAotU3ViamVjdDogW1BBVENI IDMvM10ga2VybmVsLTUuOQotCi1jcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS93YXJwbWUvbWlu aW15dGgyL2Jsb2IvbWFzdGVyL3NjcmlwdC9udmlkaWEvbnZpZGlhLTM0MC4xMDgvZmlsZXMvbnZp ZGlhLTM0MC4xMDgtZml4LTUuOS1rZXJuZWwtY29tcGlsZS5wYXRjaAotLS0tCi0ga2VybmVsL252 LWRybS5jICAgICAgICAgICAgICAgfCA4ICsrKysrKysrCi0ga2VybmVsL252LWxpbnV4LmggICAg ICAgICAgICAgfCA5ICsrKysrKystLQotIGtlcm5lbC9udi5jICAgICAgICAgICAgICAgICAgIHwg NCArKysrCi0ga2VybmVsL3V2bS9udmlkaWFfdXZtX2xpbnV4LmggfCAyICsrCi0gNCBmaWxlcyBj aGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEv a2VybmVsL252LWRybS5jIGIva2VybmVsL252LWRybS5jCi1pbmRleCA4NWRiMDdlLi5mMGMxMjk5 IDEwMDY0NAotLS0tIGEva2VybmVsL252LWRybS5jCi0rKysgYi9rZXJuZWwvbnYtZHJtLmMKLUBA IC00MTUsNyArNDE1LDExIEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBudl9kcm1fZHJpdmVy ID0gewotICAgICAuc2V0X2J1c2lkID0gZHJtX3BjaV9zZXRfYnVzaWQsCi0gI2VuZGlmCi0gCi0r I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig1LCA5LCAwKQotKyAgICAu Z2VtX2ZyZWVfb2JqZWN0X3VubG9ja2VkID0gbnZfZ2VtX2ZyZWUsCi0rI2Vsc2UKLSAgICAgLmdl bV9mcmVlX29iamVjdCA9IG52X2dlbV9mcmVlLAotKyNlbmRpZgotIAotICAgICAucHJpbWVfaGFu ZGxlX3RvX2ZkID0gZHJtX2dlbV9wcmltZV9oYW5kbGVfdG9fZmQsCi0gICAgIC5nZW1fcHJpbWVf ZXhwb3J0ID0gZHJtX2dlbV9wcmltZV9leHBvcnQsCi1AQCAtNTExLDggKzUxNSwxMiBAQCBSTV9T VEFUVVMgTlZfQVBJX0NBTEwgbnZfYWxsb2Nfb3NfZGVzY3JpcHRvcl9oYW5kbGUoCi0gCi0gI2lm IGRlZmluZWQoTlZfRFJNX0dFTV9PQkpFQ1RfUFVUX1VOTE9DS0VEX1BSRVNFTlQpCi0gICAgIGRy bV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZCgmbnZfb2JqLT5iYXNlKTsKLSsjZWxzZQotKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOSwgMCkKLSsgICAgZHJtX2dl bV9vYmplY3RfcHV0X2xvY2tlZCgmbnZfb2JqLT5iYXNlKTsKLSAjZWxzZQotICAgICBkcm1fZ2Vt X29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZCgmbnZfb2JqLT5iYXNlKTsKLSsjZW5kaWYKLSAj ZW5kaWYKLSAKLSAgICAgc3RhdHVzID0gUk1fT0s7Ci1kaWZmIC0tZ2l0IGEva2VybmVsL252LWxp bnV4LmggYi9rZXJuZWwvbnYtbGludXguaAotaW5kZXggZDA1NTU1Mi4uNTI0YThmZSAxMDA2NDQK LS0tLSBhL2tlcm5lbC9udi1saW51eC5oCi0rKysgYi9rZXJuZWwvbnYtbGludXguaAotQEAgLTEz Niw4ICsxMzYsMTAgQEAKLSAKLSAjaWYgZGVmaW5lZChOVkNQVV9YODZfNjQpICYmICFkZWZpbmVk KEhBVkVfQ09NUEFUX0lPQ1RMKQotICNpbmNsdWRlIDxsaW51eC9zeXNjYWxscy5oPiAgICAgICAg IC8qIHN5c19pb2N0bCgpICAgICAgICAgICAgICAgICAgICAgICovCi0rI2lmIExJTlVYX1ZFUlNJ T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDUsIDksIDApCi0gI2luY2x1ZGUgPGxpbnV4L2lvY3Rs MzIuaD4gICAgICAgICAgLyogcmVnaXN0ZXJfaW9jdGwzMl9jb252ZXJzaW9uKCkgICAgKi8KLSAj ZW5kaWYKLSsjZW5kaWYKLSAKLSAjaWYgIWRlZmluZWQoTlZfRklMRV9PUEVSQVRJT05TX0hBU19J T0NUTCkgJiYgXAotICAgIWRlZmluZWQoTlZfRklMRV9PUEVSQVRJT05TX0hBU19VTkxPQ0tFRF9J T0NUTCkKLUBAIC0yMjQ5LDEwICsyMjUxLDEzIEBAIHN0YXRpYyBpbmxpbmUgTnZVNjQgbnZfbm9k ZV9lbmRfcGZuKGludCBuaWQpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwYWdlcywgdm1hcywgTlVMTCk7Ci0gCi0gICAgICAgICAjZWxzZQotLQotKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oNSwgOSwgMCkKLSsgICAgICAgICAg ICAgICByZXR1cm4gZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKG1tLCBzdGFydCwgbnJfcGFnZXMsIGZs YWdzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZXMs IHZtYXMsIE5VTEwpOwotKyNlbHNlCi0gICAgICAgICAgICAgICAgcmV0dXJuIGdldF91c2VyX3Bh Z2VzX3JlbW90ZSh0c2ssIG1tLCBzdGFydCwgbnJfcGFnZXMsIGZsYWdzLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZXMsIHZtYXMpOwotLQotKyNlbmRp ZgotICAgICAgICAgI2VuZGlmCi0gCi0gICAgICAgICB9Ci1kaWZmIC0tZ2l0IGEva2VybmVsL252 LmMgYi9rZXJuZWwvbnYuYwotaW5kZXggYTIxOGY4My4uYmU0ZTBmOCAxMDA2NDQKLS0tLSBhL2tl cm5lbC9udi5jCi0rKysgYi9rZXJuZWwvbnYuYwotQEAgLTI3ODUsNyArMjc4NSwxMSBAQCBudmlk aWFfcHJvYmUKLSAKLSAjaWYgZGVmaW5lZChDT05GSUdfVkdBX0FSQikKLSAjaWYgZGVmaW5lZChW R0FfREVGQVVMVF9ERVZJQ0UpCi0rI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVS U0lPTig1LCA5LCAwKQotKyAgICB2Z2FfZ2V0KFZHQV9ERUZBVUxUX0RFVklDRSwgVkdBX1JTUkNf TEVHQUNZX01BU0ssIDApOwotKyNlbHNlCi0gICAgIHZnYV90cnlnZXQoVkdBX0RFRkFVTFRfREVW SUNFLCBWR0FfUlNSQ19MRUdBQ1lfTUFTSyk7Ci0rI2VuZGlmCi0gI2VuZGlmCi0gICAgIHZnYV9z ZXRfbGVnYWN5X2RlY29kaW5nKGRldiwgVkdBX1JTUkNfTk9ORSk7Ci0gI2VuZGlmCi1kaWZmIC0t Z2l0IGEva2VybmVsL3V2bS9udmlkaWFfdXZtX2xpbnV4LmggYi9rZXJuZWwvdXZtL252aWRpYV91 dm1fbGludXguaAotaW5kZXggMTYyNTIwOS4uZWZjMTgxZiAxMDA2NDQKLS0tLSBhL2tlcm5lbC91 dm0vbnZpZGlhX3V2bV9saW51eC5oCi0rKysgYi9rZXJuZWwvdXZtL252aWRpYV91dm1fbGludXgu aAotQEAgLTE1OCw4ICsxNTgsMTAgQEAKLSAKLSAjaWYgZGVmaW5lZChOVkNQVV9YODZfNjQpICYm ICFkZWZpbmVkKEhBVkVfQ09NUEFUX0lPQ1RMKQotICNpbmNsdWRlIDxsaW51eC9zeXNjYWxscy5o PiAgICAgICAgIC8qIHN5c19pb2N0bCgpICAgICAgICAgICAgICAgICAgICAgICovCi0rI2lmIExJ TlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDUsIDksIDApCi0gI2luY2x1ZGUgPGxp bnV4L2lvY3RsMzIuaD4gICAgICAgICAgLyogcmVnaXN0ZXJfaW9jdGwzMl9jb252ZXJzaW9uKCkg ICAgKi8KLSAjZW5kaWYKLSsjZW5kaWYKLSAKLSAjaWYgIWRlZmluZWQoTlZfRklMRV9PUEVSQVRJ T05TX0hBU19JT0NUTCkgJiYgXAotICAgIWRlZmluZWQoTlZfRklMRV9PUEVSQVRJT05TX0hBU19V TkxPQ0tFRF9JT0NUTCkKLS0tIAotMi4yOS4wCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlh MzQwL2ZpbGVzL2tlcm5lbC01LngucGF0Y2ggYi9zcmNwa2dzL252aWRpYTM0MC9maWxlcy9rZXJu ZWwtNS54LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkN2Y3NjNiYmUzOS4u MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvZmlsZXMva2VybmVsLTUueC5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDc4MSArMCwwIEBACi1Gcm9tIDIxNTRjYzQ0N2EyMzc3Y2Zk NjBhN2I3YzViNjE5ZTY4OWViZjcxYjEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBn cmF5c2t5IDxncmF5c2t5QGFyY2hsaW51eC51cz4KLURhdGU6IFRodSwgMjIgT2N0IDIwMjAgMDY6 NTg6NTMgLTA0MDAKLVN1YmplY3Q6IFtQQVRDSCAxLzNdIGtlcm5lbC01LjcKLQotQ29udGFpbnMg YSBidW5jaCBvZiBzdHVmZiByZXF1aXJlZCBmb3IgdGhpbmdzIHVwIHRvIDUuNy4KLWNyZWRpdDog aHR0cHM6Ly9naXRsYWIubWFuamFyby5vcmcvcGFja2FnZXM/dXRmOD0lRTIlOUMlOTMmZmlsdGVy PW52aWRpYS0zNDB4eAotLS0tCi0ga2VybmVsL01ha2VmaWxlICAgICAgICAgICAgICB8ICAgNSAr Ci0ga2VybmVsL2NvbmZ0ZXN0LnNoICAgICAgICAgICB8ICA4MSArKysrKysrKysrKysrCi0ga2Vy bmVsL2RrbXMuY29uZiAgICAgICAgICAgICB8ICAgOCArLQotIGtlcm5lbC9udi1kcm0uYyAgICAg ICAgICAgICAgfCAyMjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KLSBrZXJu ZWwvbnYtbGludXguaCAgICAgICAgICAgIHwgIDQ5ICsrKysrKysrCi0ga2VybmVsL252LXByb2Nm cy5jICAgICAgICAgICB8ICAyMCArKysKLSBrZXJuZWwvbnYtdGltZS5oICAgICAgICAgICAgIHwg ICA5ICstCi0ga2VybmVsL252LmMgICAgICAgICAgICAgICAgICB8ICAgMiArLQotIGtlcm5lbC9v cy1pbnRlcmZhY2UuYyAgICAgICAgfCAgIDggKy0KLSBrZXJuZWwvdXZtL01ha2VmaWxlICAgICAg ICAgIHwgICAxICsKLSBrZXJuZWwvdXZtL2NvbmZ0ZXN0LnNoICAgICAgIHwgICA0ICsKLSBrZXJu ZWwvdXZtL252aWRpYV91dm1fbGl0ZS5jIHwgIDI5ICsrKystCi0gMTIgZmlsZXMgY2hhbmdlZCwg NDMxIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEva2VybmVs L01ha2VmaWxlIGIva2VybmVsL01ha2VmaWxlCi1pbmRleCAxMjVhNjkwLi4yNTk3MDgwIDEwMDY0 NAotLS0tIGEva2VybmVsL01ha2VmaWxlCi0rKysgYi9rZXJuZWwvTWFrZWZpbGUKLUBAIC0xMDgs MTIgKzEwOCwxNCBAQCBDT01QSUxFX1RFU1RTID0gXAotIAlhY3F1aXJlX2NvbnNvbGVfc2VtIFwK LSAJY29uc29sZV9sb2NrIFwKLSAJa21lbV9jYWNoZV9jcmVhdGUgXAotKwlrbWVtX2NhY2hlX2Ny ZWF0ZV91c2VyY29weSBcCi0gCW91dGVyX2ZsdXNoX2FsbCBcCi0gCW9uX2VhY2hfY3B1IFwKLSAJ c21wX2NhbGxfZnVuY3Rpb24gXAotIAludm1hcF9zdXBwb3J0IFwKLSAJYWNwaV9ldmFsdWF0ZV9p bnRlZ2VyIFwKLSAJaW9yZW1hcF9jYWNoZSBcCi0rCWlvcmVtYXBfbm9jYWNoZSBcCi0gCWlvcmVt YXBfd2MgXAotIAlwcm9jX2Rpcl9lbnRyeSBcCi0gCUlOSVRfV09SSyBcCi1AQCAtMTIyLDYgKzEy NCw3IEBAIENPTVBJTEVfVEVTVFMgPSBcCi0gCXBjaV9kb21haW5fbnIgXAotIAlwY2lfZG1hX21h cHBpbmdfZXJyb3IgXAotIAlmaWxlX29wZXJhdGlvbnMgXAotKwlwcm9jX29wcyBcCi0gCXNnX2Fs bG9jX3RhYmxlIFwKLSAJc2dfaW5pdF90YWJsZSBcCi0gCXBjaV9nZXRfZG9tYWluX2J1c19hbmRf c2xvdCBcCi1AQCAtMTQ3LDYgKzE1MCw4IEBAIENPTVBJTEVfVEVTVFMgPSBcCi0gCXZtX2ZhdWx0 X3ByZXNlbnQgXAotIAl2bV9mYXVsdF9oYXNfYWRkcmVzcyBcCi0gCWRybV9kcml2ZXJfdW5sb2Fk X2hhc19pbnRfcmV0dXJuX3R5cGUgXAotKwlkcm1fZ2V0X3BjaV9kZXYgXAotKwlkcm1fcGNpX2lu aXQgXAotIAlkcm1fbGVnYWN5X3BjaV9pbml0IFwKLSAJdGltZXJfc2V0dXAgXAotIAlkb19nZXR0 aW1lb2ZkYXkgXAotZGlmZiAtLWdpdCBhL2tlcm5lbC9jb25mdGVzdC5zaCBiL2tlcm5lbC9jb25m dGVzdC5zaAotaW5kZXggYjdhODVmMC4uYTUyMjVlNSAxMDA3NTUKLS0tLSBhL2tlcm5lbC9jb25m dGVzdC5zaAotKysrIGIva2VybmVsL2NvbmZ0ZXN0LnNoCi1AQCAtMTc2LDYgKzE3Niw3IEBAIHRl c3RfaGVhZGVycygpIHsKLSAgICAgRklMRVM9IiRGSUxFUyBsaW51eC9rdGltZS5oIgotICAgICBG SUxFUz0iJEZJTEVTIGxpbnV4L2ZpbGUuaCIKLSAKLSsgICAgRklMRVNfQVJDSD0iJEZJTEVTX0FS Q0ggYXNtL3BndGFibGUuaCIKLSAgICAgRklMRVNfQVJDSD0iJEZJTEVTX0FSQ0ggYXNtL3NldF9t ZW1vcnkuaCIKLSAKLSAgICAgdHJhbnNsYXRlX2FuZF9maW5kX2hlYWRlcl9maWxlcyAkSEVBREVS UyAgICAgICRGSUxFUwotQEAgLTQ0MCw2ICs0NDEsOSBAQCBjb21waWxlX3Rlc3QoKSB7Ci0gICAg ICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIHNldF9tZW1vcnlfYXJyYXlfdWMoKSBmdW5jdGlv biBpcyBwcmVzZW50LgotICAgICAgICAgICAgICMKLSAgICAgICAgICAgICBDT0RFPSIKLSsgICAg ICAgICAgICAjaWYgZGVmaW5lZChOVl9BU01fUEdUQUJMRV9IX1BSRVNFTlQpCi0rICAgICAgICAg ICAgI2luY2x1ZGUgPGFzbS9wZ3RhYmxlLmg+Ci0rICAgICAgICAgICAgI2VuZGlmCi0gICAgICAg ICAgICAgI2lmIGRlZmluZWQoTlZfQVNNX1NFVF9NRU1PUllfSF9QUkVTRU5UKQotICAgICAgICAg ICAgICNpbmNsdWRlIDxhc20vc2V0X21lbW9yeS5oPgotICAgICAgICAgICAgICNlbHNlCi1AQCAt OTE0LDYgKzkxOCwyMSBAQCBjb21waWxlX3Rlc3QoKSB7Ci0gICAgICAgICAgICAgZmkKLSAgICAg ICAgIDs7Ci0gCi0rICAgICAgICBrbWVtX2NhY2hlX2NyZWF0ZV91c2VyY29weSkKLSsgICAgICAg ICAgICAjCi0rICAgICAgICAgICAgIyBEZXRlcm1pbmUgaWYgdGhlIGttZW1fY2FjaGVfY3JlYXRl X3VzZXJjb3B5IGZ1bmN0aW9uIGV4aXN0cy4KLSsgICAgICAgICAgICAjCi0rICAgICAgICAgICAg IyBUaGlzIGZ1bmN0aW9uIHdhcyBhZGRlZCBieToKLSsgICAgICAgICAgICAjICAgMjAxNy0wNi0x MCAgOGViODI4NGI0MTI5MDYxODEzNTdjMmIwMTEwZDg3OWQ1YWY5NWU1MgotKyAgICAgICAgICAg IENPREU9IgotKyAgICAgICAgICAgICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+Ci0rICAgICAgICAg ICAgdm9pZCBrbWVtX2NhY2hlX2NyZWF0ZV91c2VyY29weSh2b2lkKSB7Ci0rICAgICAgICAgICAg ICAgIGttZW1fY2FjaGVfY3JlYXRlX3VzZXJjb3B5KCk7Ci0rICAgICAgICAgICAgfSIKLSsKLSsg ICAgICAgICAgICBjb21waWxlX2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0tNRU1fQ0FDSEVf Q1JFQVRFX1VTRVJDT1BZX1BSRVNFTlQiICIiICJmdW5jdGlvbnMiCi0rICAgICAgICA7OwotKwot ICAgICAgICAgc21wX2NhbGxfZnVuY3Rpb24pCi0gICAgICAgICAgICAgIwotICAgICAgICAgICAg ICMgRGV0ZXJtaW5lIGlmIHRoZSBzbXBfY2FsbF9mdW5jdGlvbigpIGZ1bmN0aW9uIGlzCi1AQCAt MTE4OCw2ICsxMjA3LDIyIEBAIGNvbXBpbGVfdGVzdCgpIHsKLSAgICAgICAgICAgICBjb21waWxl X2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0lPUkVNQVBfQ0FDSEVfUFJFU0VOVCIgIiIgImZ1 bmN0aW9ucyIKLSAgICAgICAgIDs7Ci0gCi0rICAgICAgICBpb3JlbWFwX25vY2FjaGUpCi0rICAg ICAgICAgICAgIwotKyAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIHRoZSBpb3JlbWFwX25vY2Fj aGUoKSBmdW5jdGlvbiBpcyBwcmVzZW50LgotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICAj IFJlbW92ZWQgYnkgY29tbWl0IDRiZGMwZDY3NmE2NCAoInJlbW92ZSBpb3JlbWFwX25vY2FjaGUg YW5kCi0rICAgICAgICAgICAgIyBkZXZtX2lvcmVtYXBfbm9jYWNoZSIpIGluIHY1LjYgKDIwMjAt MDEtMDYpCi0rICAgICAgICAgICAgIwotKyAgICAgICAgICAgIENPREU9IgotKyAgICAgICAgICAg ICNpbmNsdWRlIDxhc20vaW8uaD4KLSsgICAgICAgICAgICB2b2lkIGNvbmZ0ZXN0X2lvcmVtYXBf bm9jYWNoZSh2b2lkKSB7Ci0rICAgICAgICAgICAgICAgIGlvcmVtYXBfbm9jYWNoZSgpOwotKyAg ICAgICAgICAgIH0iCi0rCi0rICAgICAgICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENP REUiICJOVl9JT1JFTUFQX05PQ0FDSEVfUFJFU0VOVCIgIiIgImZ1bmN0aW9ucyIKLSsgICAgICAg IDs7Ci0rCi0gICAgICAgICBpb3JlbWFwX3djKQotICAgICAgICAgICAgICMKLSAgICAgICAgICAg ICAjIERldGVybWluZSBpZiB0aGUgaW9yZW1hcF93YygpIGZ1bmN0aW9uIGlzIHByZXNlbnQuCi1A QCAtMTM3MSw2ICsxNDA2LDE2IEBAIGNvbXBpbGVfdGVzdCgpIHsKLSAgICAgICAgICAgICBjb21w aWxlX2NoZWNrX2NvbmZ0ZXN0ICIkQ09ERSIgIk5WX0ZJTEVfT1BFUkFUSU9OU19IQVNfQ09NUEFU X0lPQ1RMIiAiIiAidHlwZXMiCi0gICAgICAgICA7OwotIAotKyAgICAgICAgcHJvY19vcHMpCi0r ICAgICAgICAgICAgQ09ERT0iCi0rICAgICAgICAgICAgI2luY2x1ZGUgPGxpbnV4L3Byb2NfZnMu aD4KLSsgICAgICAgICAgICBpbnQgY29uZnRlc3RfcHJvY19vcHModm9pZCkgewotKyAgICAgICAg ICAgICAgICByZXR1cm4gb2Zmc2V0b2Yoc3RydWN0IHByb2Nfb3BzLCBwcm9jX29wZW4pOwotKyAg ICAgICAgICAgIH0iCi0rCi0rICAgICAgICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENP REUiICJOVl9IQVZFX1BST0NfT1BTIiAiIiAidHlwZXMiCi0rICAgICAgICA7OwotKwotICAgICAg ICAgc2dfaW5pdF90YWJsZSkKLSAgICAgICAgICAgICAjCi0gICAgICAgICAgICAgIyBEZXRlcm1p bmUgaWYgdGhlIHNnX2luaXRfdGFibGUoKSBmdW5jdGlvbiBpcyBwcmVzZW50LgotQEAgLTIwNDQs NiArMjA4OSw0MiBAQCBjb21waWxlX3Rlc3QoKSB7Ci0gICAgICAgICAgICAgY29tcGlsZV9jaGVj a19jb25mdGVzdCAiJENPREUiICJOVl9EUk1fRFJJVkVSX1VOTE9BRF9IQVNfSU5UX1JFVFVSTl9U WVBFIiAiIiAidHlwZXMiCi0gICAgICAgICA7OwotIAotKyAgICAgICAgZHJtX2dldF9wY2lfZGV2 KQotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICAjIERldGVybWluZSBpZiBkcm1fZ2V0X3Bj aV9kZXYoKSBpcyBwcmVzZW50LgotKyAgICAgICAgICAgICMKLSsgICAgICAgICAgICBDT0RFPSIK LSsgICAgICAgICAgICAjaWYgZGVmaW5lZChOVl9EUk1fRFJNUF9IX1BSRVNFTlQpCi0rICAgICAg ICAgICAgI2luY2x1ZGUgPGRybS9kcm1QLmg+Ci0rICAgICAgICAgICAgI2VuZGlmCi0rCi0rICAg ICAgICAgICAgI2lmIGRlZmluZWQoTlZfRFJNX0RSTV9QQ0lfSF9QUkVTRU5UKQotKyAgICAgICAg ICAgICNpbmNsdWRlIDxkcm0vZHJtX3BjaS5oPgotKyAgICAgICAgICAgICNlbmRpZgotKwotKyAg ICAgICAgICAgIHZvaWQgY29uZnRlc3RfZHJtX2xlZ2FjeV9wY2lfaW5pdCh2b2lkKSB7Ci0rICAg ICAgICAgICAgICAgIGRybV9nZXRfcGNpX2RldigpOwotKyAgICAgICAgICAgIH0iCi0rCi0rICAg ICAgICAgICAgY29tcGlsZV9jaGVja19jb25mdGVzdCAiJENPREUiICJOVl9EUk1fR0VUX1BDSV9E RVZfUFJFU0VOVCIgIiIgImZ1bmN0aW9ucyIKLSsgICAgICAgIDs7Ci0rCi0rICAgICAgICBkcm1f cGNpX2luaXQpCi0rICAgICAgICAgICAgIwotKyAgICAgICAgICAgICMgRGV0ZXJtaW5lIGlmIGRy bV9wY2lfaW5pdCgpIGlzIHByZXNlbnQuCi0rICAgICAgICAgICAgIwotKyAgICAgICAgICAgIENP REU9IgotKyAgICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0RSTV9EUk1QX0hfUFJFU0VOVCkKLSsg ICAgICAgICAgICAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KLSsgICAgICAgICAgICAjZW5kaWYKLSsK LSsgICAgICAgICAgICB2b2lkIGNvbmZ0ZXN0X2RybV9sZWdhY3lfcGNpX2luaXQodm9pZCkgewot KyAgICAgICAgICAgICAgICBkcm1fcGNpX2luaXQoKTsKLSsgICAgICAgICAgICB9IgotKwotKyAg ICAgICAgICAgIGNvbXBpbGVfY2hlY2tfY29uZnRlc3QgIiRDT0RFIiAiTlZfRFJNX1BDSV9JTklU X1BSRVNFTlQiICIiICJmdW5jdGlvbnMiCi0rICAgICAgICA7OwotKwotICAgICAgICAgZHJtX2xl Z2FjeV9wY2lfaW5pdCkKLSAgICAgICAgICAgICAjCi0gICAgICAgICAgICAgIyBEZXRlcm1pbmUg aWYgZHJtX2xlZ2FjeV9wY2lfaW5pdCgpIGlzIHByZXNlbnQuIGRybV9wY2lfaW5pdCgpIHdhcwot ZGlmZiAtLWdpdCBhL2tlcm5lbC9ka21zLmNvbmYgYi9rZXJuZWwvZGttcy5jb25mCi1pbmRleCA3 OWEwMmFlLi4zMTQwZjAzIDEwMDY0NAotLS0tIGEva2VybmVsL2RrbXMuY29uZgotKysrIGIva2Vy bmVsL2RrbXMuY29uZgotQEAgLTEsNyArMSwxMyBAQAotK2lmIFsgLXggL3Vzci9iaW4vbnByb2Mg XTsgdGhlbgotKyAgbnVtX2NwdV9jb3Jlcz0kKG5wcm9jKQotK2Vsc2UKLSsgIG51bV9jcHVfY29y ZXM9MQotK2ZpCi0rCi0gUEFDS0FHRV9OQU1FPSJudmlkaWEiCi0gUEFDS0FHRV9WRVJTSU9OPSIz NDAuMTA4IgotIEJVSUxUX01PRFVMRV9OQU1FWzBdPSIkUEFDS0FHRV9OQU1FIgotIERFU1RfTU9E VUxFX0xPQ0FUSU9OWzBdPSIva2VybmVsL2RyaXZlcnMvdmlkZW8iCi0tTUFLRVswXT0ibWFrZSBt b2R1bGUgS0VSTkVMX1VOQU1FPSR7a2VybmVsdmVyfSIKLStNQUtFWzBdPSJtYWtlIC1qJG51bV9j cHVfY29yZXMgbW9kdWxlIEtFUk5FTF9VTkFNRT0ke2tlcm5lbHZlcn0iCi0gQ0xFQU49Im1ha2Ug Y2xlYW4iCi0gQVVUT0lOU1RBTEw9InllcyIKLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYtZHJtLmMg Yi9rZXJuZWwvbnYtZHJtLmMKLWluZGV4IDBkMWNkYmYuLjg1ZGIwN2UgMTAwNjQ0Ci0tLS0gYS9r ZXJuZWwvbnYtZHJtLmMKLSsrKyBiL2tlcm5lbC9udi1kcm0uYwotQEAgLTUwLDkgKzUwLDIzNiBA QAotICNpZiBkZWZpbmVkKE5WX0RSTV9MRUdBQ1lfUENJX0lOSVRfUFJFU0VOVCkKLSAjZGVmaW5l IG52X2RybV9wY2lfaW5pdCBkcm1fbGVnYWN5X3BjaV9pbml0Ci0gI2RlZmluZSBudl9kcm1fcGNp X2V4aXQgZHJtX2xlZ2FjeV9wY2lfZXhpdAotLSNlbHNlCi0rI2VsaWYgZGVmaW5lZChOVl9EUk1f UENJX0lOSVRfUFJFU0VOVCkKLSAjZGVmaW5lIG52X2RybV9wY2lfaW5pdCBkcm1fcGNpX2luaXQK LSAjZGVmaW5lIG52X2RybV9wY2lfZXhpdCBkcm1fcGNpX2V4aXQKLSsjZWxzZQotKyNpZiBkZWZp bmVkKE5WX0RSTV9HRVRfUENJX0RFVl9QUkVTRU5UKQotKyNkZWZpbmUgbnZfZHJtX2dldF9wY2lf ZGV2IGRybV9nZXRfcGNpX2RldgotKyNlbHNlCi0rI2luY2x1ZGUgPGRybS9kcm1fYWdwc3VwcG9y dC5oPgotKwotK3N0cnVjdCBudl9kcm1fYWdwX2hlYWQgewotKyAgICBzdHJ1Y3QgYWdwX2tlcm5f aW5mbyBhZ3BfaW5mbzsKLSsgICAgc3RydWN0IGxpc3RfaGVhZCBtZW1vcnk7Ci0rICAgIHVuc2ln bmVkIGxvbmcgbW9kZTsKLSsgICAgc3RydWN0IGFncF9icmlkZ2VfZGF0YSAqYnJpZGdlOwotKyAg ICBpbnQgZW5hYmxlZDsKLSsgICAgaW50IGFjcXVpcmVkOwotKyAgICB1bnNpZ25lZCBsb25nIGJh c2U7Ci0rICAgIGludCBhZ3BfbXRycjsKLSsgICAgaW50IGNhbnRfdXNlX2FwZXJ0dXJlOwotKyAg ICB1bnNpZ25lZCBsb25nIHBhZ2VfbWFzazsKLSt9OwotKwotK3N0cnVjdCBudl9kcm1fYWdwX21l bSB7Ci0rICAgIHVuc2lnbmVkIGxvbmcgaGFuZGxlOwotKyAgICBzdHJ1Y3QgYWdwX21lbW9yeSAq bWVtb3J5OwotKyAgICB1bnNpZ25lZCBsb25nIGJvdW5kOwotKyAgICBpbnQgcGFnZXM7Ci0rICAg IHN0cnVjdCBsaXN0X2hlYWQgaGVhZDsKLSt9OwotKwotKy8qCi0rICogQ29kZSBmcm9tIGRybV9h Z3BfaW5pdC9udl9kcm1fe2ZyZWUsdW5iaW5kfV9hZ3AKLSsgKiBFeHRyYWN0ZWQgZnJvbSBjb21t aXQ6IDViOGI5ZDBjNmQwZTBmMTk5M2M2YzU2ZGVhZjk2NDY5NDJjNDlkOTQsIGZpbGU6IGRyaXZl cnMvZ3B1L2RybS9kcm1fYWdwc3VwcG9ydC5jCi0rICovCi0rc3RydWN0IGRybV9hZ3BfaGVhZCAq bnZfZHJtX2FncF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCi0rewotKyAgICBzdHJ1Y3Qg bnZfZHJtX2FncF9oZWFkICpoZWFkID0gTlVMTDsKLSsKLSsgICAgaGVhZCA9IGt6YWxsb2Moc2l6 ZW9mKCpoZWFkKSwgR0ZQX0tFUk5FTCk7Ci0rICAgIGlmICghaGVhZCkKLSsgICAgICAgIHJldHVy biBOVUxMOwotKyAgICBoZWFkLT5icmlkZ2UgPSBhZ3BfZmluZF9icmlkZ2UoZGV2LT5wZGV2KTsK LSsgICAgaWYgKCFoZWFkLT5icmlkZ2UpIHsKLSsgICAgICAgIGhlYWQtPmJyaWRnZSA9IGFncF9i YWNrZW5kX2FjcXVpcmUoZGV2LT5wZGV2KTsKLSsgICAgICAgIGlmICghaGVhZC0+YnJpZGdlKSB7 Ci0rICAgICAgICAgICAga2ZyZWUoaGVhZCk7Ci0rICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0r ICAgICAgICB9Ci0rICAgICAgICBhZ3BfY29weV9pbmZvKGhlYWQtPmJyaWRnZSwgJmhlYWQtPmFn cF9pbmZvKTsKLSsgICAgICAgIGFncF9iYWNrZW5kX3JlbGVhc2UoaGVhZC0+YnJpZGdlKTsKLSsg ICAgfSBlbHNlIHsKLSsgICAgICAgIGFncF9jb3B5X2luZm8oaGVhZC0+YnJpZGdlLCAmaGVhZC0+ YWdwX2luZm8pOwotKyAgICB9Ci0rICAgIGlmIChoZWFkLT5hZ3BfaW5mby5jaGlwc2V0ID09IE5P VF9TVVBQT1JURUQpIHsKLSsgICAgICAgIGtmcmVlKGhlYWQpOwotKyAgICAgICAgcmV0dXJuIE5V TEw7Ci0rICAgIH0KLSsgICAgSU5JVF9MSVNUX0hFQUQoJmhlYWQtPm1lbW9yeSk7Ci0rICAgIGhl YWQtPmNhbnRfdXNlX2FwZXJ0dXJlID0gaGVhZC0+YWdwX2luZm8uY2FudF91c2VfYXBlcnR1cmU7 Ci0rICAgIGhlYWQtPnBhZ2VfbWFzayA9IGhlYWQtPmFncF9pbmZvLnBhZ2VfbWFzazsKLSsgICAg aGVhZC0+YmFzZSA9IGhlYWQtPmFncF9pbmZvLmFwZXJfYmFzZTsKLSsgICAgcmV0dXJuIChzdHJ1 Y3QgZHJtX2FncF9oZWFkICopaGVhZDsKLSt9Ci0rCi0rdm9pZCBudl9kcm1fZnJlZV9hZ3Aoc3Ry dWN0IGFncF9tZW1vcnkgKmhhbmRsZSwgaW50IHBhZ2VzKQotK3sKLSsgICAgYWdwX2ZyZWVfbWVt b3J5KGhhbmRsZSk7Ci0rfQotKwotK2ludCBudl9kcm1fdW5iaW5kX2FncChzdHJ1Y3QgYWdwX21l bW9yeSAqaGFuZGxlKQotK3sKLSsgICAgcmV0dXJuIGFncF91bmJpbmRfbWVtb3J5KGhhbmRsZSk7 Ci0rfQotKwotKy8qCi0rICogQ29kZSBmcm9tIGRybV9wY2lfYWdwX3tjbGVhcixkZXN0cm95LGlu aXR9L2RybV9nZXRfcGNpX2RldgotKyAqIEV4dHJhY3RlZCBmcm9tIGNvbW1pdDogNWI4YjlkMGM2 ZDBlMGYxOTkzYzZjNTZkZWFmOTY0Njk0MmM0OWQ5NCwgZmlsZTogZHJpdmVycy9ncHUvZHJtL2Ry bV9wY2kuYwotKyAqLwotK3N0YXRpYyB2b2lkIG52X2RybV9wY2lfYWdwX2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKLSt7Ci0rICAgIGlmIChkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwg RFJJVkVSX1VTRV9BR1ApKSB7Ci0rICAgICAgICBpZiAocGNpX2ZpbmRfY2FwYWJpbGl0eShkZXYt PnBkZXYsIFBDSV9DQVBfSURfQUdQKSkKLSsgICAgICAgICAgICBkZXYtPmFncCA9IG52X2RybV9h Z3BfaW5pdChkZXYpOwotKyAgICAgICAgaWYgKGRldi0+YWdwKSB7Ci0rICAgICAgICAgICAgZGV2 LT5hZ3AtPmFncF9tdHJyID0gYXJjaF9waHlzX3djX2FkZCgKLSsgICAgICAgICAgICAgICAgZGV2 LT5hZ3AtPmFncF9pbmZvLmFwZXJfYmFzZSwKLSsgICAgICAgICAgICAgICAgZGV2LT5hZ3AtPmFn cF9pbmZvLmFwZXJfc2l6ZSAqCi0rICAgICAgICAgICAgICAgIDEwMjQgKiAxMDI0KTsKLSsgICAg ICAgIH0KLSsgICAgfQotK30KLSsKLSt2b2lkIG52X2RybV9sZWdhY3lfYWdwX2NsZWFyKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCi0rewotKyAgICBzdHJ1Y3QgbnZfZHJtX2FncF9tZW0gKmVudHJ5 LCAqdGVtcGU7Ci0rCi0rICAgIGlmICghZGV2LT5hZ3ApCi0rICAgICAgICByZXR1cm47Ci0rICAg IGlmICghZHJtX2NvcmVfY2hlY2tfZmVhdHVyZShkZXYsIERSSVZFUl9MRUdBQ1kpKQotKyAgICAg ICAgcmV0dXJuOwotKwotKyAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoZW50cnksIHRlbXBl LCAmZGV2LT5hZ3AtPm1lbW9yeSwgaGVhZCkgewotKyAgICAgICAgaWYgKGVudHJ5LT5ib3VuZCkK LSsgICAgICAgICAgICBudl9kcm1fdW5iaW5kX2FncChlbnRyeS0+bWVtb3J5KTsKLSsgICAgICAg IG52X2RybV9mcmVlX2FncChlbnRyeS0+bWVtb3J5LCBlbnRyeS0+cGFnZXMpOwotKyAgICAgICAg a2ZyZWUoZW50cnkpOwotKyAgICB9Ci0rICAgIElOSVRfTElTVF9IRUFEKCZkZXYtPmFncC0+bWVt b3J5KTsKLSsKLSsgICAgaWYgKGRldi0+YWdwLT5hY3F1aXJlZCkKLSsgICAgICAgIGRybV9hZ3Bf cmVsZWFzZShkZXYpOwotKwotKyAgICBkZXYtPmFncC0+YWNxdWlyZWQgPSAwOwotKyAgICBkZXYt PmFncC0+ZW5hYmxlZCA9IDA7Ci0rfQotKwotK3ZvaWQgbnZfZHJtX3BjaV9hZ3BfZGVzdHJveShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotK3sKLSsgICAgaWYgKGRldi0+YWdwKSB7Ci0rICAgICAg ICBhcmNoX3BoeXNfd2NfZGVsKGRldi0+YWdwLT5hZ3BfbXRycik7Ci0rICAgICAgICBudl9kcm1f bGVnYWN5X2FncF9jbGVhcihkZXYpOwotKyAgICAgICAga2ZyZWUoZGV2LT5hZ3ApOwotKyAgICAg ICAgZGV2LT5hZ3AgPSBOVUxMOwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBpbnQgbnZfZHJtX2dl dF9wY2lfZGV2KHN0cnVjdCBwY2lfZGV2ICpwZGV2LAotKyAgICAgICAgICAgICAgIGNvbnN0IHN0 cnVjdCBwY2lfZGV2aWNlX2lkICplbnQsCi0rICAgICAgICAgICAgICAgc3RydWN0IGRybV9kcml2 ZXIgKmRyaXZlcikKLSt7Ci0rICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXY7Ci0rICAgIGludCBy ZXQ7Ci0rCi0rICAgIERSTV9ERUJVRygiXG4iKTsKLSsKLSsgICAgZGV2ID0gZHJtX2Rldl9hbGxv Yyhkcml2ZXIsICZwZGV2LT5kZXYpOwotKyAgICBpZiAoSVNfRVJSKGRldikpCi0rICAgICAgICBy ZXR1cm4gUFRSX0VSUihkZXYpOwotKwotKyAgICByZXQgPSBwY2lfZW5hYmxlX2RldmljZShwZGV2 KTsKLSsgICAgaWYgKHJldCkKLSsgICAgICAgIGdvdG8gZXJyX2ZyZWU7Ci0rCi0rICAgIGRldi0+ cGRldiA9IHBkZXY7Ci0rI2lmZGVmIF9fYWxwaGFfXwotKyAgICBkZXYtPmhvc2UgPSBwZGV2LT5z eXNkYXRhOwotKyNlbmRpZgotKwotKyAgICBpZiAoZHJtX2NvcmVfY2hlY2tfZmVhdHVyZShkZXYs IERSSVZFUl9NT0RFU0VUKSkKLSsgICAgICAgIHBjaV9zZXRfZHJ2ZGF0YShwZGV2LCBkZXYpOwot KwotKyAgICBudl9kcm1fcGNpX2FncF9pbml0KGRldik7Ci0rCi0rICAgIHJldCA9IGRybV9kZXZf cmVnaXN0ZXIoZGV2LCBlbnQtPmRyaXZlcl9kYXRhKTsKLSsgICAgaWYgKHJldCkKLSsgICAgICAg IGdvdG8gZXJyX2FncDsKLSsKLSsgICAgLyogTm8gbG9ja2luZyBuZWVkZWQgc2luY2Ugc2hhZG93 LWF0dGFjaCBpcyBzaW5nbGUtdGhyZWFkZWQgc2luY2UgaXQgbWF5Ci0rICAgICAqIG9ubHkgYmUg Y2FsbGVkIGZyb20gdGhlIHBlci1kcml2ZXIgbW9kdWxlIGluaXQgaG9vay4gKi8KLSsgICAgaWYg KGRybV9jb3JlX2NoZWNrX2ZlYXR1cmUoZGV2LCBEUklWRVJfTEVHQUNZKSkKLSsgICAgICAgIGxp c3RfYWRkX3RhaWwoJmRldi0+bGVnYWN5X2Rldl9saXN0LCAmZHJpdmVyLT5sZWdhY3lfZGV2X2xp c3QpOwotKwotKyAgICByZXR1cm4gMDsKLSsKLStlcnJfYWdwOgotKyAgICBudl9kcm1fcGNpX2Fn cF9kZXN0cm95KGRldik7Ci0rICAgIHBjaV9kaXNhYmxlX2RldmljZShwZGV2KTsKLStlcnJfZnJl ZToKLSsgICAgZHJtX2Rldl9wdXQoZGV2KTsKLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rI2VuZGlm Ci0rCi0rLyoKLSsgKiBDb2RlIGZyb20gZHJtX2xlZ2FjeV9wY2lfe2luaXQsZXhpdH0KLSsgKiBF eHRyYWN0ZWQgZnJvbSB0YWc6IHY1LjYuMywgZmlsZTogZHJpdmVycy9ncHUvZHJtL2RybV9wY2ku YwotKyAqLwotK2ludCBudl9kcm1fcGNpX2luaXQoc3RydWN0IGRybV9kcml2ZXIgKmRyaXZlciwg c3RydWN0IHBjaV9kcml2ZXIgKnBkcml2ZXIpCi0rewotKyAgICBzdHJ1Y3QgcGNpX2RldiAqcGRl diA9IE5VTEw7Ci0rICAgIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICpwaWQ7Ci0rICAgIGlu dCBpOwotKwotKyAgICBEUk1fREVCVUcoIlxuIik7Ci0rCi0rICAgIGlmIChXQVJOX09OKCEoZHJp dmVyLT5kcml2ZXJfZmVhdHVyZXMgJiBEUklWRVJfTEVHQUNZKSkpCi0rICAgICAgICByZXR1cm4g LUVJTlZBTDsKLSsKLSsgICAgLyogSWYgbm90IHVzaW5nIEtNUywgZmFsbCBiYWNrIHRvIHN0ZWFs dGggbW9kZSBtYW51YWwgc2Nhbm5pbmcuICovCi0rICAgIElOSVRfTElTVF9IRUFEKCZkcml2ZXIt PmxlZ2FjeV9kZXZfbGlzdCk7Ci0rICAgIGZvciAoaSA9IDA7IHBkcml2ZXItPmlkX3RhYmxlW2ld LnZlbmRvciAhPSAwOyBpKyspIHsKLSsgICAgICAgIHBpZCA9ICZwZHJpdmVyLT5pZF90YWJsZVtp XTsKLSsKLSsgICAgICAgIC8qIExvb3AgYXJvdW5kIHNldHRpbmcgdXAgYSBEUk0gZGV2aWNlIGZv ciBlYWNoIFBDSSBkZXZpY2UKLSsgICAgICAgICAqIG1hdGNoaW5nIG91ciBJRCBhbmQgZGV2aWNl IGNsYXNzLiAgSWYgd2UgaGFkIHRoZSBpbnRlcm5hbAotKyAgICAgICAgICogZnVuY3Rpb24gdGhh dCBwY2lfZ2V0X3N1YnN5cyBhbmQgcGNpX2dldF9jbGFzcyB1c2VkLCB3ZSdkCi0rICAgICAgICAg KiBiZSBhYmxlIHRvIGp1c3QgcGFzcyBwaWQgaW4gaW5zdGVhZCBvZiBkb2luZyBhIHR3by1zdGFn ZQotKyAgICAgICAgICogdGhpbmcuCi0rICAgICAgICAgKi8KLSsgICAgICAgIHBkZXYgPSBOVUxM OwotKyAgICAgICAgd2hpbGUgKChwZGV2ID0KLSsgICAgICAgICAgICBwY2lfZ2V0X3N1YnN5cyhw aWQtPnZlbmRvciwgcGlkLT5kZXZpY2UsIHBpZC0+c3VidmVuZG9yLAotKyAgICAgICAgICAgICAg ICAgICAgICAgcGlkLT5zdWJkZXZpY2UsIHBkZXYpKSAhPSBOVUxMKSB7Ci0rICAgICAgICAgICAg aWYgKChwZGV2LT5jbGFzcyAmIHBpZC0+Y2xhc3NfbWFzaykgIT0gcGlkLT5jbGFzcykKLSsgICAg ICAgICAgICAgICAgY29udGludWU7Ci0rCi0rICAgICAgICAgICAgLyogc3RlYWx0aCBtb2RlIHJl cXVpcmVzIGEgbWFudWFsIHByb2JlICovCi0rICAgICAgICAgICAgcGNpX2Rldl9nZXQocGRldik7 Ci0rICAgICAgICAgICAgbnZfZHJtX2dldF9wY2lfZGV2KHBkZXYsIHBpZCwgZHJpdmVyKTsKLSsg ICAgICAgIH0KLSsgICAgfQotKyAgICByZXR1cm4gMDsKLSt9Ci0rCi0rdm9pZCBudl9kcm1fcGNp X2V4aXQoc3RydWN0IGRybV9kcml2ZXIgKmRyaXZlciwgc3RydWN0IHBjaV9kcml2ZXIgKnBkcml2 ZXIpCi0rewotKyAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCAqdG1wOwotKyAgICBEUk1fREVC VUcoIlxuIik7Ci0rCi0rICAgIGlmICghKGRyaXZlci0+ZHJpdmVyX2ZlYXR1cmVzICYgRFJJVkVS X0xFR0FDWSkpIHsKLSsgICAgICAgIFdBUk5fT04oMSk7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAg ICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoZGV2LCB0bXAsICZkcml2ZXItPmxlZ2FjeV9kZXZf bGlzdCwKLSsgICAgICAgICAgICAgICAgICAgICBsZWdhY3lfZGV2X2xpc3QpIHsKLSsgICAgICAg ICAgICBsaXN0X2RlbCgmZGV2LT5sZWdhY3lfZGV2X2xpc3QpOwotKyAgICAgICAgICAgIGRybV9w dXRfZGV2KGRldik7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsgICAgRFJNX0lORk8oIk1vZHVsZSB1 bmxvYWRlZFxuIik7Ci0rfQotICNlbmRpZgotIAotIGV4dGVybiBudl9saW51eF9zdGF0ZV90ICpu dl9saW51eF9kZXZpY2VzOwotZGlmZiAtLWdpdCBhL2tlcm5lbC9udi1saW51eC5oIGIva2VybmVs L252LWxpbnV4LmgKLWluZGV4IGExZDJjNjguLjgzZTY0MzMgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwv bnYtbGludXguaAotKysrIGIva2VybmVsL252LWxpbnV4LmgKLUBAIC02ODgsMTEgKzY4OCwxNiBA QCBleHRlcm4gbnZfc3BpbmxvY2tfdCBrbV9sb2NrOwotICAgICAgICAgVk1fQUxMT0NfUkVDT1JE KHB0ciwgc2l6ZSwgInZtX2lvcmVtYXAiKTsgXAotICAgICB9Ci0gCi0rI2lmIGRlZmluZWQoTlZf SU9SRU1BUF9OT0NBQ0hFX1BSRVNFTlQpCi0gI2RlZmluZSBOVl9JT1JFTUFQX05PQ0FDSEUocHRy LCBwaHlzYWRkciwgc2l6ZSkgXAotICAgICB7IFwKLSAgICAgICAgIChwdHIpID0gaW9yZW1hcF9u b2NhY2hlKHBoeXNhZGRyLCBzaXplKTsgXAotICAgICAgICAgVk1fQUxMT0NfUkVDT1JEKHB0ciwg c2l6ZSwgInZtX2lvcmVtYXBfbm9jYWNoZSIpOyBcCi0gICAgIH0KLSsjZWxzZQotKyNkZWZpbmUg TlZfSU9SRU1BUF9OT0NBQ0hFKHB0ciwgcGh5c2FkZHIsIHNpemUpIFwKLSsgICAgTlZfSU9SRU1B UChwdHIsIHBoeXNhZGRyLCBzaXplKQotKyNlbmRpZgotIAotICNpZiBkZWZpbmVkKE5WX0lPUkVN QVBfQ0FDSEVfUFJFU0VOVCkKLSAjZGVmaW5lIE5WX0lPUkVNQVBfQ0FDSEUocHRyLCBwaHlzYWRk ciwgc2l6ZSkgICAgICAgICAgICBcCi1AQCAtNzc0LDYgKzc3OSwxNyBAQCBleHRlcm4gbnZfc3Bp bmxvY2tfdCBrbV9sb2NrOwotICNlcnJvciAiTlZfS01FTV9DQUNIRV9DUkVBVEUoKSB1bmRlZmlu ZWQgKGttZW1fY2FjaGVfY3JlYXRlKCkgdW5hdmFpbGFibGUpISIKLSAjZW5kaWYKLSAKLSsjaWYg ZGVmaW5lZChOVl9LTUVNX0NBQ0hFX0NSRUFURV9VU0VSQ09QWV9QUkVTRU5UKQotKyNkZWZpbmUg TlZfS01FTV9DQUNIRV9DUkVBVEVfVVNFUkNPUFkoa21lbV9jYWNoZSwgbmFtZSwgdHlwZSkgICAg ICAgXAotKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAga21lbV9jYWNoZSA9IGttZW1fY2FjaGVfY3Jl YXRlX3VzZXJjb3B5KG5hbWUsIHNpemVvZih0eXBlKSwgXAotKyAgICAgICAgICAgICAgICAgICAg ICAgIDAsIDAsIDAsIHNpemVvZih0eXBlKSwgTlVMTCk7ICAgICAgICAgICAgICAgXAotKyAgICB9 Ci0rI2Vsc2UKLSsjZGVmaW5lIE5WX0tNRU1fQ0FDSEVfQ1JFQVRFX1VTRVJDT1BZKGttZW1fY2Fj aGUsIG5hbWUsIHR5cGUpICAgICAgIFwKLSsgICAgICAgIE5WX0tNRU1fQ0FDSEVfQ1JFQVRFKGtt ZW1fY2FjaGUsIG5hbWUsIHR5cGUpCi0rI2VuZGlmCi0rCi0gI2RlZmluZSBOVl9LTUVNX0NBQ0hF X0FMTE9DKHB0ciwga21lbV9jYWNoZSwgdHlwZSkgICAgICAgICAgICAgIFwKLSAgICAgeyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAot ICAgICAgICAgKHB0cikgPSBrbWVtX2NhY2hlX2FsbG9jKGttZW1fY2FjaGUsIEdGUF9LRVJORUwp OyAgICAgICBcCi1AQCAtMTk3MSw2ICsxOTg3LDE5IEBAIGV4dGVybiBOdlUzMiBudl9hc3NpZ25f Z3B1X2NvdW50OwotICAgICB9KQotICNlbmRpZgotIAotKyNpZiBkZWZpbmVkKE5WX0hBVkVfUFJP Q19PUFMpCi0rI2RlZmluZSBOVl9DUkVBVEVfUFJPQ19GSUxFKGZpbGVuYW1lLHBhcmVudCxfX25h bWUsX19kYXRhKSAgICAgICAgICAgICAgIFwKLSsgICAoeyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAg c3RydWN0IHByb2NfZGlyX2VudHJ5ICpfX2VudHJ5OyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCi0rICAgICAgICBpbnQgbW9kZSA9IChTX0lGUkVHIHwgU19JUlVHTyk7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIGNvbnN0IHN0cnVjdCBwcm9j X29wcyAqZm9wcyA9ICZudl9wcm9jZnNfIyNfX25hbWUjI19mb3BzOyAgICAgICAgXAotKyAgICAg ICAgaWYgKGZvcHMtPnByb2Nfd3JpdGUgIT0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCi0rICAgICAgICAgICAgbW9kZSB8PSBTX0lXVVNSOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIF9fZW50cnkgPSBOVl9D UkVBVEVfUFJPQ19FTlRSWShmaWxlbmFtZSwgbW9kZSwgcGFyZW50LCBmb3BzLCAgICAgXAotKyAg ICAgICAgICAgIF9fZGF0YSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0rICAgICAgICBfX2VudHJ5OyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgfSkKLSsjZWxzZQotICNk ZWZpbmUgTlZfQ1JFQVRFX1BST0NfRklMRShmaWxlbmFtZSxwYXJlbnQsX19uYW1lLF9fZGF0YSkg ICAgICAgICAgICAgICBcCi0gICAgKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgIHN0cnVjdCBwcm9j X2Rpcl9lbnRyeSAqX19lbnRyeTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAot QEAgLTE5ODIsNiArMjAxMSw3IEBAIGV4dGVybiBOdlUzMiBudl9hc3NpZ25fZ3B1X2NvdW50Owot ICAgICAgICAgICAgIF9fZGF0YSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCi0gICAgICAgICBfX2VudHJ5OyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgfSkKLSsjZW5kaWYK LSAKLSAvKgotICAqIHByb2NfbWtkaXJfbW9kZSBleGlzdHMgaW4gTGludXggMi42LjksIGJ1dCBp c24ndCBleHBvcnRlZCB1bnRpbCBMaW51eCAzLjAuCi1AQCAtMjAyMyw2ICsyMDUzLDI0IEBAIGV4 dGVybiBOdlUzMiBudl9hc3NpZ25fZ3B1X2NvdW50OwotICAgICByZW1vdmVfcHJvY19lbnRyeShl bnRyeS0+bmFtZSwgZW50cnktPnBhcmVudCk7Ci0gI2VuZGlmCi0gCi0rI2lmIGRlZmluZWQoTlZf SEFWRV9QUk9DX09QUykKLSsjZGVmaW5lIE5WX0RFRklORV9QUk9DRlNfU0lOR0xFX0ZJTEUoX19u YW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIHN0YXRpYyBpbnQg bnZfcHJvY2ZzX29wZW5fIyNfX25hbWUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAotKyAgICAgICAgc3RydWN0IGlub2RlICppbm9kZSwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIHN0cnVjdCBmaWxlICpm aWxlcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0rICAgICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAg ICAgIHJldHVybiBzaW5nbGVfb3BlbihmaWxlcCwgbnZfcHJvY2ZzX3JlYWRfIyNfX25hbWUsICAg ICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgTlZfUERFX0RBVEEoaW5vZGUpKTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICB9ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIHN0YXRpYyBjb25zdCBz dHJ1Y3QgcHJvY19vcHMgbnZfcHJvY2ZzXyMjX19uYW1lIyNfZm9wcyA9IHsgICAgICAgICAgICAg ICAgXAotKyAgICAgICAgLnByb2Nfb3BlbiAgICAgICA9IG52X3Byb2Nmc19vcGVuXyMjX19uYW1l LCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgICAgIC5wcm9jX3JlYWQgICAgICAg PSBzZXFfcmVhZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0r ICAgICAgICAucHJvY19sc2VlayAgICAgID0gc2VxX2xzZWVrLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgLnByb2NfcmVsZWFzZSAgICA9IHNpbmds ZV9yZWxlYXNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSsgICAgfTsK LSsjZWxzZQotICNkZWZpbmUgTlZfREVGSU5FX1BST0NGU19TSU5HTEVfRklMRShfX25hbWUpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgc3RhdGljIGludCBudl9wcm9j ZnNfb3Blbl8jI19fbmFtZSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0gICAgICAgICBzdHJ1Y3QgaW5vZGUgKmlub2RlLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotQEAgLTIwNDAsNiArMjA4OCw3IEBAIGV4dGVybiBO dlUzMiBudl9hc3NpZ25fZ3B1X2NvdW50OwotICAgICAgICAgLmxsc2VlayAgICAgPSBzZXFfbHNl ZWssICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAg ICAgIC5yZWxlYXNlICAgID0gc2luZ2xlX3JlbGVhc2UsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCi0gICAgIH07Ci0rI2VuZGlmCi0gCi0gI2VuZGlmICAvKiBDT05G SUdfUFJPQ19GUyAqLwotIAotZGlmZiAtLWdpdCBhL2tlcm5lbC9udi1wcm9jZnMuYyBiL2tlcm5l bC9udi1wcm9jZnMuYwotaW5kZXggZWJjYTNlOC4uOTM2NWMzYyAxMDA2NDQKLS0tLSBhL2tlcm5l bC9udi1wcm9jZnMuYwotKysrIGIva2VybmVsL252LXByb2Nmcy5jCi1AQCAtNDA5LDYgKzQwOSwx NSBAQCBkb25lOgotICAgICByZXR1cm4gKChzdGF0dXMgPCAwKSA/IHN0YXR1cyA6IChpbnQpY291 bnQpOwotIH0KLSAKLSsjaWYgZGVmaW5lZChOVl9IQVZFX1BST0NfT1BTKQotK3N0YXRpYyBzdHJ1 Y3QgcHJvY19vcHMgbnZfcHJvY2ZzX3JlZ2lzdHJ5X2ZvcHMgPSB7Ci0rICAgIC5wcm9jX29wZW4g ICAgPSBudl9wcm9jZnNfb3Blbl9yZWdpc3RyeSwKLSsgICAgLnByb2NfcmVhZCAgICA9IHNlcV9y ZWFkLAotKyAgICAucHJvY193cml0ZSAgID0gbnZfcHJvY2ZzX3dyaXRlX2ZpbGUsCi0rICAgIC5w cm9jX2xzZWVrICAgPSBzZXFfbHNlZWssCi0rICAgIC5wcm9jX3JlbGVhc2UgPSBudl9wcm9jZnNf Y2xvc2VfcmVnaXN0cnksCi0rfTsKLSsjZWxzZQotIHN0YXRpYyBzdHJ1Y3QgZmlsZV9vcGVyYXRp b25zIG52X3Byb2Nmc19yZWdpc3RyeV9mb3BzID0gewotICAgICAub3duZXIgICA9IFRISVNfTU9E VUxFLAotICAgICAub3BlbiAgICA9IG52X3Byb2Nmc19vcGVuX3JlZ2lzdHJ5LAotQEAgLTQxNyw2 ICs0MjYsNyBAQCBzdGF0aWMgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBudl9wcm9jZnNfcmVnaXN0 cnlfZm9wcyA9IHsKLSAgICAgLmxsc2VlayAgPSBzZXFfbHNlZWssCi0gICAgIC5yZWxlYXNlID0g bnZfcHJvY2ZzX2Nsb3NlX3JlZ2lzdHJ5LAotIH07Ci0rI2VuZGlmCi0gCi0gc3RhdGljIGludAot IG52X3Byb2Nmc19yZWFkX3VuYmluZF9sb2NrKAotQEAgLTUzOCw2ICs1NDgsMTUgQEAgZG9uZToK LSAgICAgcmV0dXJuIHJjOwotIH0KLSAKLSsjaWYgZGVmaW5lZChOVl9IQVZFX1BST0NfT1BTKQot K3N0YXRpYyBzdHJ1Y3QgcHJvY19vcHMgbnZfcHJvY2ZzX3VuYmluZF9sb2NrX2ZvcHMgPSB7Ci0r ICAgIC5wcm9jX29wZW4gICAgPSBudl9wcm9jZnNfb3Blbl91bmJpbmRfbG9jaywKLSsgICAgLnBy b2NfcmVhZCAgICA9IHNlcV9yZWFkLAotKyAgICAucHJvY193cml0ZSAgID0gbnZfcHJvY2ZzX3dy aXRlX2ZpbGUsCi0rICAgIC5wcm9jX2xzZWVrICAgPSBzZXFfbHNlZWssCi0rICAgIC5wcm9jX3Jl bGVhc2UgPSBudl9wcm9jZnNfY2xvc2VfdW5iaW5kX2xvY2ssCi0rfTsKLSsjZWxzZQotIHN0YXRp YyBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIG52X3Byb2Nmc191bmJpbmRfbG9ja19mb3BzID0gewot ICAgICAub3duZXIgICA9IFRISVNfTU9EVUxFLAotICAgICAub3BlbiAgICA9IG52X3Byb2Nmc19v cGVuX3VuYmluZF9sb2NrLAotQEAgLTU0Niw2ICs1NjUsNyBAQCBzdGF0aWMgc3RydWN0IGZpbGVf b3BlcmF0aW9ucyBudl9wcm9jZnNfdW5iaW5kX2xvY2tfZm9wcyA9IHsKLSAgICAgLmxsc2VlayAg PSBzZXFfbHNlZWssCi0gICAgIC5yZWxlYXNlID0gbnZfcHJvY2ZzX2Nsb3NlX3VuYmluZF9sb2Nr LAotIH07Ci0rI2VuZGlmCi0gCi0gc3RhdGljIGludAotIG52X3Byb2Nmc19yZWFkX3RleHRfZmls ZSgKLWRpZmYgLS1naXQgYS9rZXJuZWwvbnYtdGltZS5oIGIva2VybmVsL252LXRpbWUuaAotaW5k ZXggYTM0Y2ViMi4uNzgwZjhiYyAxMDA2NDQKLS0tLSBhL2tlcm5lbC9udi10aW1lLmgKLSsrKyBi L2tlcm5lbC9udi10aW1lLmgKLUBAIC0yOCw3ICsyOCwxMiBAQAotICNpbmNsdWRlIDxsaW51eC9r dGltZS5oPgotICNlbmRpZgotIAotLXN0YXRpYyBpbmxpbmUgdm9pZCBudl9nZXR0aW1lb2ZkYXko c3RydWN0IHRpbWV2YWwgKnR2KQotK3N0cnVjdCBudl90aW1ldmFsIHsKLSsgICAgX19rZXJuZWxf bG9uZ190ICAgICAgdHZfc2VjOwotKyAgICBfX2tlcm5lbF9zdXNlY29uZHNfdCB0dl91c2VjOwot K307Ci0rCi0rc3RhdGljIGlubGluZSB2b2lkIG52X2dldHRpbWVvZmRheShzdHJ1Y3QgbnZfdGlt ZXZhbCAqdHYpCi0gewotICNpZmRlZiBOVl9ET19HRVRUSU1FT0ZEQVlfUFJFU0VOVAotICAgICBk b19nZXR0aW1lb2ZkYXkodHYpOwotQEAgLTM3LDcgKzQyLDcgQEAgc3RhdGljIGlubGluZSB2b2lk IG52X2dldHRpbWVvZmRheShzdHJ1Y3QgdGltZXZhbCAqdHYpCi0gCi0gICAgIGt0aW1lX2dldF9y ZWFsX3RzNjQoJm5vdyk7Ci0gCi0tICAgICp0diA9IChzdHJ1Y3QgdGltZXZhbCkgewotKyAgICAq dHYgPSAoc3RydWN0IG52X3RpbWV2YWwpIHsKLSAgICAgICAgIC50dl9zZWMgPSBub3cudHZfc2Vj LAotICAgICAgICAgLnR2X3VzZWMgPSBub3cudHZfbnNlYy8xMDAwLAotICAgICB9OwotZGlmZiAt LWdpdCBhL2tlcm5lbC9udi5jIGIva2VybmVsL252LmMKLWluZGV4IGExNjdiZTkuLmEyMThmODMg MTAwNjQ0Ci0tLS0gYS9rZXJuZWwvbnYuYwotKysrIGIva2VybmVsL252LmMKLUBAIC03NTIsNyAr NzUyLDcgQEAgaW50IF9faW5pdCBudmlkaWFfaW5pdF9tb2R1bGUodm9pZCkKLSAgICAgTlZfU1BJ Tl9MT0NLX0lOSVQoJmttX2xvY2spOwotICNlbmRpZgotIAotLSAgICBOVl9LTUVNX0NBQ0hFX0NS RUFURShudl9zdGFja190X2NhY2hlLCBOVl9TVEFDS19DQUNIRV9TVFIsIG52X3N0YWNrX3QpOwot KyAgICBOVl9LTUVNX0NBQ0hFX0NSRUFURV9VU0VSQ09QWShudl9zdGFja190X2NhY2hlLCBOVl9T VEFDS19DQUNIRV9TVFIsIG52X3N0YWNrX3QpOwotICAgICBpZiAobnZfc3RhY2tfdF9jYWNoZSA9 PSBOVUxMKQotICAgICB7Ci0gICAgICAgICBudl9wcmludGYoTlZfREJHX0VSUk9SUywgIk5WUk06 IHN0YWNrIGNhY2hlIGFsbG9jYXRpb24gZmFpbGVkIVxuIik7Ci1kaWZmIC0tZ2l0IGEva2VybmVs L29zLWludGVyZmFjZS5jIGIva2VybmVsL29zLWludGVyZmFjZS5jCi1pbmRleCA3MTkwYjI2Li4w YzBkYzA1IDEwMDY0NAotLS0tIGEva2VybmVsL29zLWludGVyZmFjZS5jCi0rKysgYi9rZXJuZWwv b3MtaW50ZXJmYWNlLmMKLUBAIC00MzksNyArNDM5LDcgQEAgUk1fU1RBVFVTIE5WX0FQSV9DQUxM IG9zX2dldF9jdXJyZW50X3RpbWUoCi0gICAgIE52VTMyICp1c2Vjb25kcwotICkKLSB7Ci0tICAg IHN0cnVjdCB0aW1ldmFsIHRtOwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCB0bTsKLSAKLSAgICAg bnZfZ2V0dGltZW9mZGF5KCZ0bSk7Ci0gCi1AQCAtNDc0LDcgKzQ3NCw3IEBAIFJNX1NUQVRVUyBO Vl9BUElfQ0FMTCBvc19kZWxheV91cyhOdlUzMiBNaWNyb1NlY29uZHMpCi0gICAgIHVuc2lnbmVk IGxvbmcgdXNlYzsKLSAKLSAjaWZkZWYgTlZfQ0hFQ0tfREVMQVlfQUNDVVJBQ1kKLS0gICAgc3Ry dWN0IHRpbWV2YWwgdG0xLCB0bTI7Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIHRtMSwgdG0yOwot IAotICAgICBudl9nZXR0aW1lb2ZkYXkoJnRtMSk7Ci0gI2VuZGlmCi1AQCAtNTE0LDkgKzUxNCw5 IEBAIFJNX1NUQVRVUyBOVl9BUElfQ0FMTCBvc19kZWxheShOdlUzMiBNaWxsaVNlY29uZHMpCi0g ICAgIHVuc2lnbmVkIGxvbmcgTWljcm9TZWNvbmRzOwotICAgICB1bnNpZ25lZCBsb25nIGppZmZp ZXM7Ci0gICAgIHVuc2lnbmVkIGxvbmcgbWRlbGF5X3NhZmVfbXNlYzsKLS0gICAgc3RydWN0IHRp bWV2YWwgdG1fZW5kLCB0bV9hdXg7Ci0rICAgIHN0cnVjdCBudl90aW1ldmFsIHRtX2VuZCwgdG1f YXV4OwotICNpZmRlZiBOVl9DSEVDS19ERUxBWV9BQ0NVUkFDWQotLSAgICBzdHJ1Y3QgdGltZXZh bCB0bV9zdGFydDsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwgdG1fc3RhcnQ7Ci0gI2VuZGlmCi0g Ci0gICAgIG52X2dldHRpbWVvZmRheSgmdG1fYXV4KTsKLWRpZmYgLS1naXQgYS9rZXJuZWwvdXZt L01ha2VmaWxlIGIva2VybmVsL3V2bS9NYWtlZmlsZQotaW5kZXggMGNhZDhmZi4uMDQzYTA4ZCAx MDA2NDQKLS0tLSBhL2tlcm5lbC91dm0vTWFrZWZpbGUKLSsrKyBiL2tlcm5lbC91dm0vTWFrZWZp bGUKLUBAIC0yMDcsNiArMjA3LDcgQEAgY2NmbGFncy15ICs9ICQoRVhUUkFfQ0ZMQUdTKQotIAot IFJNX01PRFVMRV9TWU1WRVJTOj0gJChSTV9PVVRfRElSKS9Nb2R1bGUuc3ltdmVycwotIFVWTV9N T0RVTEVfU1lNVkVSUzo9ICQob2JqKS9Nb2R1bGUuc3ltdmVycwotK0tCVUlMRF9FWFRSQV9TWU1C T0xTOj0gJChVVk1fTU9EVUxFX1NZTVZFUlMpCi0gCi0gbW9kdWxlICQoTU9EVUxFX05BTUUpLmtv OiAkKFVWTV9NT0RVTEVfU1lNVkVSUykgZGVidWdfZGlhZ25vc3RpY3NfcHJpbnRpbmcKLSAKLWRp ZmYgLS1naXQgYS9rZXJuZWwvdXZtL2NvbmZ0ZXN0LnNoIGIva2VybmVsL3V2bS9jb25mdGVzdC5z aAotaW5kZXggYjdhODVmMC4uMzNlMmE2MyAxMDA3NTUKLS0tLSBhL2tlcm5lbC91dm0vY29uZnRl c3Quc2gKLSsrKyBiL2tlcm5lbC91dm0vY29uZnRlc3Quc2gKLUBAIC0xNzYsNiArMTc2LDcgQEAg dGVzdF9oZWFkZXJzKCkgewotICAgICBGSUxFUz0iJEZJTEVTIGxpbnV4L2t0aW1lLmgiCi0gICAg IEZJTEVTPSIkRklMRVMgbGludXgvZmlsZS5oIgotIAotKyAgICBGSUxFU19BUkNIPSIkRklMRVNf QVJDSCBhc20vcGd0YWJsZS5oIgotICAgICBGSUxFU19BUkNIPSIkRklMRVNfQVJDSCBhc20vc2V0 X21lbW9yeS5oIgotIAotICAgICB0cmFuc2xhdGVfYW5kX2ZpbmRfaGVhZGVyX2ZpbGVzICRIRUFE RVJTICAgICAgJEZJTEVTCi1AQCAtNDQwLDYgKzQ0MSw5IEBAIGNvbXBpbGVfdGVzdCgpIHsKLSAg ICAgICAgICAgICAjIERldGVybWluZSBpZiB0aGUgc2V0X21lbW9yeV9hcnJheV91YygpIGZ1bmN0 aW9uIGlzIHByZXNlbnQuCi0gICAgICAgICAgICAgIwotICAgICAgICAgICAgIENPREU9IgotKyAg ICAgICAgICAgICNpZiBkZWZpbmVkKE5WX0FTTV9QR1RBQkxFX0hfUFJFU0VOVCkKLSsgICAgICAg ICAgICAjaW5jbHVkZSA8YXNtL3BndGFibGUuaD4KLSsgICAgICAgICAgICAjZW5kaWYKLSAgICAg ICAgICAgICAjaWYgZGVmaW5lZChOVl9BU01fU0VUX01FTU9SWV9IX1BSRVNFTlQpCi0gICAgICAg ICAgICAgI2luY2x1ZGUgPGFzbS9zZXRfbWVtb3J5Lmg+Ci0gICAgICAgICAgICAgI2Vsc2UKLWRp ZmYgLS1naXQgYS9rZXJuZWwvdXZtL252aWRpYV91dm1fbGl0ZS5jIGIva2VybmVsL3V2bS9udmlk aWFfdXZtX2xpdGUuYwotaW5kZXggNjk0M2U3Yy4uOWE3ZTNiNiAxMDA2NDQKLS0tLSBhL2tlcm5l bC91dm0vbnZpZGlhX3V2bV9saXRlLmMKLSsrKyBiL2tlcm5lbC91dm0vbnZpZGlhX3V2bV9saXRl LmMKLUBAIC0xMzEsOCArMTMxLDggQEAgc3RhdGljCi0gUk1fU1RBVFVTIF9wcmVleGlzdGluZ19l cnJvcl9vbl9jaGFubmVsKFV2bUdwdU1pZ3JhdGlvblRyYWNraW5nICpwTWlnVHJhY2tlciwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFV2bUNvbW1pdFJlY29yZCAq cFJlY29yZCk7Ci0gCi0tc3RhdGljIHZvaWQgX3NldF90aW1lb3V0X2luX3VzZWMoc3RydWN0IHRp bWV2YWwgKnNyYywKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgdGlt ZXZhbCAqcmVzdWx0LAotK3N0YXRpYyB2b2lkIF9zZXRfdGltZW91dF9pbl91c2VjKHN0cnVjdCBu dl90aW1ldmFsICpzcmMsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0 IG52X3RpbWV2YWwgKnJlc3VsdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBsb25nIHRpbWVvdXRJblVzZWMpCi0gewotICAgICBpZiAoIXNyYyB8fCAhcmVzdWx0 KQotQEAgLTgyMCw3ICs4MjAsMTMgQEAgZG9uZToKLSB9Ci0gCi0gI2lmIGRlZmluZWQoTlZfVk1f T1BFUkFUSU9OU19TVFJVQ1RfSEFTX0ZBVUxUKQotKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0g S0VSTkVMX1ZFUlNJT04oNCwgMTcsIDApCi0rdm1fZmF1bHRfdCBfZmF1bHQoc3RydWN0IHZtX2Zh dWx0ICp2bWYpCi0rI2VsaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDQs IDExLCAwKQotK2ludCBfZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpCi0rI2Vsc2UKLSBpbnQg X2ZhdWx0KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCBzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikK LSsjZW5kaWYKLSB7Ci0gI2lmIGRlZmluZWQoTlZfVk1fRkFVTFRfSEFTX0FERFJFU1MpCi0gICAg IHVuc2lnbmVkIGxvbmcgdmFkZHIgPSB2bWYtPmFkZHJlc3M7Ci1AQCAtODI4LDggKzgzNCwxNSBA QCBpbnQgX2ZhdWx0KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCBzdHJ1Y3Qgdm1fZmF1bHQg KnZtZikKLSAgICAgdW5zaWduZWQgbG9uZyB2YWRkciA9ICh1bnNpZ25lZCBsb25nKXZtZi0+dmly dHVhbF9hZGRyZXNzOwotICNlbmRpZgotICAgICBzdHJ1Y3QgcGFnZSAqcGFnZSA9IE5VTEw7Ci0r I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig0LCAxNywgMCkKLSsgICAg dm1fZmF1bHRfdCByZXR2YWw7Ci0rI2Vsc2UKLSAgICAgaW50IHJldHZhbDsKLSAKLSsjZW5kaWYK LSsjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDQsIDExLCAwKQotKyAg IHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hID0gdm1mLT52bWE7Ci0rI2VuZGlmCi0gICAgIHJl dHZhbCA9IF9mYXVsdF9jb21tb24odm1hLCB2YWRkciwgJnBhZ2UsIHZtZi0+ZmxhZ3MpOwotIAot ICAgICB2bWYtPnBhZ2UgPSBwYWdlOwotQEAgLTg2OCw3ICs4ODEsMTMgQEAgc3RhdGljIHN0cnVj dCB2bV9vcGVyYXRpb25zX3N0cnVjdCB1dm1saXRlX3ZtYV9vcHMgPQotIC8vIGl0J3MgZGVhbGlu ZyB3aXRoIGFub255bW91cyBtYXBwaW5nIChzZWUgaGFuZGxlX3B0ZV9mYXVsdCkuCi0gLy8KLSAj aWYgZGVmaW5lZChOVl9WTV9PUEVSQVRJT05TX1NUUlVDVF9IQVNfRkFVTFQpCi0rI2lmIExJTlVY X1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTig0LCAxNywgMCkKLSt2bV9mYXVsdF90IF9z aWdidXNfZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpCi0rI2VsaWYgTElOVVhfVkVSU0lPTl9D T0RFID49IEtFUk5FTF9WRVJTSU9OKDQsIDExLCAwKQotK2ludCBfc2lnYnVzX2ZhdWx0KHN0cnVj dCB2bV9mYXVsdCAqdm1mKQotKyNlbHNlCi0gaW50IF9zaWdidXNfZmF1bHQoc3RydWN0IHZtX2Fy ZWFfc3RydWN0ICp2bWEsIHN0cnVjdCB2bV9mYXVsdCAqdm1mKQotKyNlbmRpZgotIHsKLSAgICAg dm1mLT5wYWdlID0gTlVMTDsKLSAgICAgcmV0dXJuIFZNX0ZBVUxUX1NJR0JVUzsKLUBAIC0xOTky LDkgKzIwMTEsOSBAQCB2b2lkIHVtdmxpdGVfZGVzdHJveV9wZXJfcHJvY2Vzc19ncHVfcmVzb3Vy Y2VzKFV2bUdwdVV1aWQgKmdwdVV1aWRTdHJ1Y3QpCi0gc3RhdGljIFJNX1NUQVRVUyBfY2hlY2tf ZWNjX2Vycm9ycyhVdm1HcHVNaWdyYXRpb25UcmFja2luZyAqcE1pZ1RyYWNrZXIsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTnZCb29sICpwSXNFY2NFcnJvclNldCkKLSB7 Ci0tICAgIHN0cnVjdCB0aW1ldmFsIGVjY0Vycm9yU3RhcnRUaW1lID0gezB9OwotLSAgICBzdHJ1 Y3QgdGltZXZhbCBlY2NFcnJvckN1cnJlbnRUaW1lID0gezB9OwotLSAgICBzdHJ1Y3QgdGltZXZh bCBlY2NUaW1lb3V0ID0gezB9OwotKyAgICBzdHJ1Y3QgbnZfdGltZXZhbCBlY2NFcnJvclN0YXJ0 VGltZSA9IHswfTsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwgZWNjRXJyb3JDdXJyZW50VGltZSA9 IHswfTsKLSsgICAgc3RydWN0IG52X3RpbWV2YWwgZWNjVGltZW91dCA9IHswfTsKLSAgICAgTnZC b29sIGJFY2NFcnJvclRpbWVvdXQgPSBOVl9GQUxTRTsKLSAgICAgTnZCb29sIGJFY2NJbmNvbWlu Z0Vycm9yID0gTlZfRkFMU0U7Ci0gICAgIHVuc2lnbmVkIHJtSW50ZXJydXB0U2V0ID0gMDsKLS0t IAotMi4yOS4wCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL252aWRpYS1n bHguY29uZiBiL3NyY3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL252aWRpYS1nbHguY29uZgpkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2M3Njg4M2FiYjMuLjAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3MvbnZpZGlhMzQwL2ZpbGVzL252aWRpYS1nbHguY29uZgorKysgL2Rldi9udWxsCkBAIC0x LDQgKzAsMCBAQAotU2VjdGlvbiAiRmlsZXMiCi0gICAgTW9kdWxlUGF0aCAiL3Vzci9saWIvbnZp ZGlhL3hvcmciCi0gICAgTW9kdWxlUGF0aCAiL3Vzci9saWIveG9yZy9tb2R1bGVzIgotRW5kU2Vj dGlvbgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvdGVtcGxhdGUgYi9zcmNwa2dzL252 aWRpYTM0MC90ZW1wbGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTY2ZjM1NzU2 YmMuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbnZpZGlhMzQwL3RlbXBsYXRlCisrKyAvZGV2 L251bGwKQEAgLTEsMjIzICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ252aWRpYTM0MCcK LQotX2Rlc2M9Ik5WSURJQSBkcml2ZXJzIChHZUZvcmNlIDgsIDksIDlNLCAxMDAsIDEwME0sIDIw MCwgMzAwIHNlcmllcykiCi0KLXBrZ25hbWU9bnZpZGlhMzQwCi12ZXJzaW9uPTM0MC4xMDgKLXJl dmlzaW9uPTQKLW1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1s aWNlbnNlPSJjdXN0b206TlZJRElBIHByb3ByaWV0YXJ5IgotaG9tZXBhZ2U9Imh0dHA6Ly93d3cu bnZpZGlhLmNvbSIKLQotYXJjaHM9Imk2ODYgeDg2XzY0Igotbm9waWU9eWVzCi1yZXBvc2l0b3J5 PW5vbmZyZWUKLWNyZWF0ZV93cmtzcmM9eWVzCi1zaG9ydF9kZXNjPSIke19kZXNjfSAtIExpYnJh cmllcyBhbmQgVXRpbGl0aWVzIgotaG9zdG1ha2VkZXBlbmRzPSJ0YXIiCi1kZXBlbmRzPSIke3Br Z25hbWV9LWRrbXMtJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBwa2ctY29uZmlnIgotY29uZmxpY3Rz PSJjYXRhbHlzdD49MCB4c2VydmVyLWFiaS12aWRlbz4yNF8xIgotCi1wcm92aWRlcz0ibnZpZGlh LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCi1yZXBsYWNlcz0ibnZpZGlhPj0wIG52aWRpYS1zdGFi bGU+PTAiCi1zdWJwYWNrYWdlcz0iJHtwa2duYW1lfS1ka21zICR7cGtnbmFtZX0tb3BlbmNsICR7 cGtnbmFtZX0tbGlicyIKLQotaWYgWyAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiID0gImk2ODYiIF07 IHRoZW4KLQlfcGtnPSJOVklESUEtTGludXgteDg2LSR7dmVyc2lvbn0iCi0JZGlzdGZpbGVzPSJo dHRwOi8vdXMuZG93bmxvYWQubnZpZGlhLmNvbS9YRnJlZTg2L0xpbnV4LXg4Ni8ke3ZlcnNpb259 LyR7X3BrZ30ucnVuIgotCWNoZWNrc3VtPTIwMzJhYWQ2MTJkOWYzYWYxYWVjZjk3OWNmZGZlNDIz ZDc5YWE3NjkyOWVmOGJmOGQzYTQwMzA3NmY1MDdjY2EKLWVsc2UKLQlfcGtnPSJOVklESUEtTGlu dXgteDg2XzY0LSR7dmVyc2lvbn0tbm8tY29tcGF0MzIiCi0JZGlzdGZpbGVzPSJodHRwOi8vdXMu ZG93bmxvYWQubnZpZGlhLmNvbS9YRnJlZTg2L0xpbnV4LXg4Nl82NC8ke3ZlcnNpb259LyR7X3Br Z30ucnVuIgotCWNoZWNrc3VtPTk5NWQ0NGZlZjU4N2ZmNTI4NDQ5N2E0N2E5NWQ3MWFkYmVlMGMx MzAyMGQ2MTVlOTQwYWM5MjhmMTgwZjViNzcKLWZpCi0KLWRvX2V4dHJhY3QoKSB7Ci0JaW5zdGFs bCAtbTc1NSAke1hCUFNfU1JDRElTVERJUn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LyR7X3BrZ30u cnVuICR7d3Jrc3JjfQotCWNkICR7d3Jrc3JjfQotCS4vJHtfcGtnfS5ydW4gLS1leHRyYWN0LW9u bHkKLQlybSAtZiAke19wa2d9LnJ1bgotfQotCi1kb19wYXRjaCgpIHsKLQljZCAke19wa2d9Ci0J cGF0Y2ggLXAxIDwgJHtGSUxFU0RJUn0va2VybmVsLTUueC5wYXRjaAotCXBhdGNoIC1wMSA8ICR7 RklMRVNESVJ9L2tlcm5lbC01LjgucGF0Y2gKLQlwYXRjaCAtcDEgPCAke0ZJTEVTRElSfS9rZXJu ZWwtNS45LnBhdGNoCi19Ci0KLWRvX2luc3RhbGwoKSB7Ci0JY2QgJHtfcGtnfQotCi0JIyBYIGRy aXZlcgotCXZpbnN0YWxsIG52aWRpYV9kcnYuc28gNzU1IHVzci9saWIveG9yZy9tb2R1bGVzL2Ry aXZlcnMKLQotCSMgR0xYIGV4dGVuc2lvbiBtb2R1bGUgZm9yIFgKLQl2aW5zdGFsbCBsaWJnbHgu c28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYi9udmlkaWEveG9yZwotCWxuIC1zZiBsaWJnbHguc28u JHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbnZpZGlhL3hvcmcvbGliZ2x4LnNvLjEKLQls biAtc2YgbGliZ2x4LnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL252aWRpYS94b3Jn L2xpYmdseC5zbwotCSMgT3ZlcnJpZGUgZGVmYXVsdCBNb2R1bGVQYXRoIHRvIGxvYWQgbnZpZGlh J3MgZ2x4IGluc3RlYWQgb2YgeG9yZydzCi0Jdmluc3RhbGwgJHtGSUxFU0RJUn0vbnZpZGlhLWds eC5jb25mIDY0NCAvdXNyL3NoYXJlL1gxMS94b3JnLmNvbmYuZCAxMC1udmlkaWEtZ2x4LmNvbmYK LQotCSMgT3BlbkdMIGxpYnJhcmllcyAoR0wsIEVHTCBhbmQgR0xFUykKLQl2aW5zdGFsbCBsaWJH TC5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYkdMLnNvLiR7dmVyc2lvbn0g JHtERVNURElSfS91c3IvbGliL2xpYkdMLnNvLjEKLQl2aW5zdGFsbCBsaWJFR0wuc28uJHt2ZXJz aW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJFR0wuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9 L3Vzci9saWIvbGliRUdMLnNvLjEKLQl2aW5zdGFsbCBsaWJHTEVTdjFfQ00uc28uJHt2ZXJzaW9u fSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJHTEVTdjFfQ00uc28uJHt2ZXJzaW9ufSAke0RFU1RE SVJ9L3Vzci9saWIvbGliR0xFU3YxX0NNLnNvLjEKLQl2aW5zdGFsbCBsaWJHTEVTdjIuc28uJHt2 ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJHTEVTdjIuc28uJHt2ZXJzaW9ufSAke0RF U1RESVJ9L3Vzci9saWIvbGliR0xFU3YyLnNvLjIKLQkjIFNvbWUgcHJvZ3JhbXMgbGluayB0byB0 aGVzZSBsaWJnbHZuZCBsaW5rcwotCWxuIC1zZiBsaWJHTC5zby4xICR7REVTVERJUn0vdXNyL2xp Yi9saWJPcGVuR0wuc28uMAotCWxuIC1zZiBsaWJHTC5zby4xICR7REVTVERJUn0vdXNyL2xpYi9s aWJHTFguc28uMAotCi0JIyBPcGVuR0wgY29yZSBsaWJyYXJ5Ci0Jdmluc3RhbGwgbGlibnZpZGlh LWdsY29yZS5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1nbGNv cmUuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWdsY29yZS5zbwot Ci0JIyBWRFBBVQotCXZpbnN0YWxsIGxpYnZkcGF1X252aWRpYS5zby4ke3ZlcnNpb259IDc1NSB1 c3IvbGliL3ZkcGF1Ci0JbG4gLXNmIGxpYnZkcGF1X252aWRpYS5zby4ke3ZlcnNpb259ICR7REVT VERJUn0vdXNyL2xpYi92ZHBhdS9saWJ2ZHBhdV9udmlkaWEuc28KLQlsbiAtc2YgbGlidmRwYXVf bnZpZGlhLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL3ZkcGF1L2xpYnZkcGF1X252 aWRpYS5zby4xCi0KLQkjIG1pc2MgbGlicmFyaWVzCi0Jdmluc3RhbGwgdGxzL2xpYm52aWRpYS10 bHMuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlkaWEtdGxzLnNvLiR7 dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS10bHMuc28KLQotCXZpbnN0YWxs IGxpYm52aWRpYS1jZmcuc28uJHt2ZXJzaW9ufSA3NTUgdXNyL2xpYgotCWxuIC1zZiBsaWJudmlk aWEtY2ZnLnNvLiR7dmVyc2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1jZmcuc28K LQlsbiAtc2YgbGlibnZpZGlhLWNmZy5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9s aWJudmlkaWEtY2ZnLnNvLjEKLQotCXZpbnN0YWxsIGxpYm52aWRpYS1tbC5zby4ke3ZlcnNpb259 IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1tbC5zby4ke3ZlcnNpb259ICR7REVTVERJ Un0vdXNyL2xpYi9saWJudmlkaWEtbWwuc28KLQlsbiAtc2YgbGlibnZpZGlhLW1sLnNvLiR7dmVy c2lvbn0gJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1tbC5zby4xCi0KLQl2aW5zdGFsbCBs aWJudmlkaWEtZW5jb2RlLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZp ZGlhLWVuY29kZS5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtZW5j b2RlLnNvCi0JbG4gLXNmIGxpYm52aWRpYS1lbmNvZGUuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9 L3Vzci9saWIvbGlibnZpZGlhLWVuY29kZS5zby4xCi0KLQl2aW5zdGFsbCBsaWJudmlkaWEtaWZy LnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZpZGlhLWlmci5zby4ke3Zl cnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtaWZyLnNvCi0JbG4gLXNmIGxpYm52 aWRpYS1pZnIuc28uJHt2ZXJzaW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWlmci5z by4xCi0KLQl2aW5zdGFsbCBsaWJudmlkaWEtZmJjLnNvLiR7dmVyc2lvbn0gNzU1IHVzci9saWIK LQlsbiAtc2YgbGlibnZpZGlhLWZiYy5zby4ke3ZlcnNpb259ICR7REVTVERJUn0vdXNyL2xpYi9s aWJudmlkaWEtZmJjLnNvCi0JbG4gLXNmIGxpYm52aWRpYS1mYmMuc28uJHt2ZXJzaW9ufSAke0RF U1RESVJ9L3Vzci9saWIvbGlibnZpZGlhLWZiYy5zby4xCi0KLQl2aW5zdGFsbCBsaWJudmlkaWEt Z2xzaS5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0KLQkjIENVREEKLQl2YmluIG52aWRpYS1j dWRhLW1wcy1jb250cm9sCi0JdmJpbiBudmlkaWEtY3VkYS1tcHMtc2VydmVyCi0Jdm1hbiBudmlk aWEtY3VkYS1tcHMtY29udHJvbC4xLmd6Ci0KLQl2aW5zdGFsbCBsaWJjdWRhLnNvLiR7dmVyc2lv bn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGliY3VkYS5zby4ke3ZlcnNpb259ICR7REVTVERJUn0v dXNyL2xpYi9saWJjdWRhLnNvCi0JbG4gLXNmIGxpYmN1ZGEuc28uJHt2ZXJzaW9ufSAke0RFU1RE SVJ9L3Vzci9saWIvbGliY3VkYS5zby4xCi0KLQl2aW5zdGFsbCBsaWJudmN1dmlkLnNvLiR7dmVy c2lvbn0gNzU1IHVzci9saWIKLQlsbiAtc2YgbGlibnZjdXZpZC5zby4ke3ZlcnNpb259ICR7REVT VERJUn0vdXNyL2xpYi9saWJudmN1dmlkLnNvCi0JbG4gLXNmIGxpYm52Y3V2aWQuc28uJHt2ZXJz aW9ufSAke0RFU1RESVJ9L3Vzci9saWIvbGlibnZjdXZpZC5zby4xCi0KLQkjIG52aWRpYS14Y29u ZmlnCi0JdmJpbiBudmlkaWEteGNvbmZpZwotCXZtYW4gbnZpZGlhLXhjb25maWcuMS5negotCi0J IyBudmlkaWEtc2V0dGluZ3MKLQl2YmluIG52aWRpYS1zZXR0aW5ncwotCXZtYW4gbnZpZGlhLXNl dHRpbmdzLjEuZ3oKLQl2aW5zdGFsbCBudmlkaWEtc2V0dGluZ3MuZGVza3RvcCA2NDQgdXNyL3No YXJlL2FwcGxpY2F0aW9ucwotCXZpbnN0YWxsIG52aWRpYS1zZXR0aW5ncy5wbmcgNjQ0IHVzci9z aGFyZS9waXhtYXBzCi0Jc2VkIC1lICdzOl9fVVRJTFNfUEFUSF9fOi91c3IvYmluOicgXAotCQkt ZSAnczpfX1BJWE1BUF9QQVRIX186L3Vzci9zaGFyZS9waXhtYXBzOicgXAotCQktaSAke0RFU1RE SVJ9L3Vzci9zaGFyZS9hcHBsaWNhdGlvbnMvbnZpZGlhLXNldHRpbmdzLmRlc2t0b3AKLQotCSMg bnZpZGlhLWJ1Zy1yZXBvcnQKLQl2YmluIG52aWRpYS1idWctcmVwb3J0LnNoIG52aWRpYS1idWct cmVwb3J0Ci0JdmJpbiBudmlkaWEtZGVidWdkdW1wCi0KLQkjIG52aWRpYS1zbWkKLQl2YmluIG52 aWRpYS1zbWkKLQl2bWFuIG52aWRpYS1zbWkuMS5negotCi0JIyBMaWNlbnNlIGFuZCBkb2N1bWVu dGF0aW9uLgotCXZsaWNlbnNlIExJQ0VOU0UKLQl2ZG9jIFJFQURNRS50eHQgUkVBRE1FCi0JdmRv YyBOVklESUFfQ2hhbmdlbG9nCi0KLQkjIG9wZW5jbCBwa2cKLQl2aW5zdGFsbCBudmlkaWEuaWNk IDY0NCBldGMvT3BlbkNML3ZlbmRvcnMKLQotCXZpbnN0YWxsIGxpYm52aWRpYS1jb21waWxlci5z by4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1jb21waWxlci5zby4k e3ZlcnNpb259IFwKLQkJJHtERVNURElSfS91c3IvbGliL2xpYm52aWRpYS1jb21waWxlci5zbwot CWxuIC1zZiBsaWJudmlkaWEtY29tcGlsZXIuc28uJHt2ZXJzaW9ufSBcCi0JCSR7REVTVERJUn0v dXNyL2xpYi9saWJudmlkaWEtY29tcGlsZXIuc28uMQotCi0Jdmluc3RhbGwgbGlibnZpZGlhLW9w ZW5jbC5zby4ke3ZlcnNpb259IDc1NSB1c3IvbGliCi0JbG4gLXNmIGxpYm52aWRpYS1vcGVuY2wu c28uJHt2ZXJzaW9ufSBcCi0JCSR7REVTVERJUn0vdXNyL2xpYi9saWJudmlkaWEtb3BlbmNsLnNv Ci0JbG4gLXNmIGxpYm52aWRpYS1vcGVuY2wuc28uJHt2ZXJzaW9ufSBcCi0JCSR7REVTVERJUn0v dXNyL2xpYi9saWJudmlkaWEtb3BlbmNsLnNvLjEKLQotCSMgZGttcyBwa2cKLQl2bWtkaXIgdXNy L3NyYy9udmlkaWEtJHt2ZXJzaW9ufQotCSMgYWRkIG52aWRpYS11dm0gZGttcyBzdWJtb2R1bGUg dG9vLgotCWlmIFsgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiA9ICJ4ODZfNjQiIF07IHRoZW4KLQkJ Y2F0IGtlcm5lbC91dm0vZGttcy5jb25mLmZyYWdtZW50ID4+IGtlcm5lbC9ka21zLmNvbmYKLQlm aQotCXZjb3B5ICJrZXJuZWwvKiIgdXNyL3NyYy9udmlkaWEtJHt2ZXJzaW9ufQotCi0JIyBzeXN0 ZW1kIG1vZHVsZXMtbG9hZC5kKDUpIGZpbGUuCi0Jdm1rZGlyIHVzci9saWIvbW9kdWxlcy1sb2Fk LmQKLQllY2hvICJudmlkaWEiID4gJHtERVNURElSfS91c3IvbGliL21vZHVsZXMtbG9hZC5kL252 aWRpYS5jb25mCi0JY2htb2QgNjQ0ICR7REVTVERJUn0vdXNyL2xpYi9tb2R1bGVzLWxvYWQuZC9u dmlkaWEuY29uZgotCWlmIFsgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiA9ICJ4ODZfNjQiIF07IHRo ZW4KLQkJZWNobyAibnZpZGlhLXV2bSIgPiAke0RFU1RESVJ9L3Vzci9saWIvbW9kdWxlcy1sb2Fk LmQvbnZpZGlhLXV2bS5jb25mCi0JCWNobW9kIDY0NCAke0RFU1RESVJ9L3Vzci9saWIvbW9kdWxl cy1sb2FkLmQvbnZpZGlhLXV2bS5jb25mCi0JZmkKLQotCSMgQmxhY2tsaXN0IG5vdXZlYXUuCi0J dm1rZGlyIHVzci9saWIvbW9kcHJvYmUuZAotCWVjaG8gImJsYWNrbGlzdCBub3V2ZWF1IiA+ICR7 REVTVERJUn0vdXNyL2xpYi9tb2Rwcm9iZS5kL252aWRpYS5jb25mCi0JY2htb2QgNjQ0ICR7REVT VERJUn0vdXNyL2xpYi9tb2Rwcm9iZS5kL252aWRpYS5jb25mCi0KLQkjIE9taXQgZHJtIGRyYWN1 dCBtb2R1bGUgdG9vLgotCXZta2RpciB1c3IvbGliL2RyYWN1dC9kcmFjdXQuY29uZi5kCi0JZWNo byAib21pdF9kcmFjdXRtb2R1bGVzKz1cIiBkcm0gXCIiID4gJHtERVNURElSfS91c3IvbGliL2Ry YWN1dC9kcmFjdXQuY29uZi5kLzk5LW52aWRpYS5jb25mCi19Ci0KLW52aWRpYTM0MC1ka21zX3Bh Y2thZ2UoKSB7Ci0Jc2hvcnRfZGVzYz0iJHtfZGVzY30gLSBES01TIGtlcm5lbCBtb2R1bGUiCi0J ZGttc19tb2R1bGVzPSJudmlkaWEgJHt2ZXJzaW9ufSIKLQlkZXBlbmRzPSJka21zIgotCXByb3Zp ZGVzPSJudmlkaWEtZGttcy0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXJlcGxhY2VzPSJudmlk aWEtZGttcz49MCBudmlkaWEtc3RhYmxlLWRrbXM+PTAiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZt b3ZlIHVzci9zcmMKLQkJdm1vdmUgdXNyL2xpYi9tb2R1bGVzLWxvYWQuZAotCQl2bW92ZSB1c3Iv bGliL21vZHByb2JlLmQKLQkJdm1vdmUgdXNyL2xpYi9kcmFjdXQKLQl9Ci19Ci1udmlkaWEzNDAt b3BlbmNsX3BhY2thZ2UoKSB7Ci0Jc2hvcnRfZGVzYz0iJHtfZGVzY30gLSBPcGVuQ0wgaW1wbGVt ZW50YXRpb24iCi0JcHJvdmlkZXM9Im52aWRpYS1vcGVuY2wtJHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKLQlyZXBsYWNlcz0ibnZpZGlhLW9wZW5jbD49MCBudmlkaWEtc3RhYmxlLW9wZW5jbD49MCIK LQlkZXBlbmRzPSJsaWJPcGVuQ0wiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlICJ1c3IvbGli L2xpYm52aWRpYS1jb21waWxlcioiCi0JCXZtb3ZlICJ1c3IvbGliL2xpYm52aWRpYS1vcGVuY2wq IgotCQl2bW92ZSBldGMvT3BlbkNMCi0JfQotfQotbnZpZGlhMzQwLWxpYnNfcGFja2FnZSgpIHsK LQlzaG9ydF9kZXNjPSIke19kZXNjfSAtIGxpYnJhcmllcyIKLQlwcm92aWRlcz0ibGliR0wtNy4x MV8xIGxpYkVHTC03LjExXzEgbGliR0xFUy03LjExXzEgbGliZ2x2bmQtMS4zLjBfMSIKLQlzaGxp Yl9wcm92aWRlcz0ibGliR0xYLnNvLjAgbGliT3BlbkdMLnNvLjAiCi0JcmVwbGFjZXM9ImxpYkdM Pj0wIGxpYkVHTD49MCBsaWJHTEVTPj0wIGxpYmdsdm5kPj0wIgotCXBrZ19pbnN0YWxsKCkgewot CQl2bW92ZSB1c3IvbGliCi0JfQotfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udmlkaWEzNDAvdXBk YXRlIGIvc3JjcGtncy9udmlkaWEzNDAvdXBkYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCA0M2JhZDY3ZjdlOC4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9udmlkaWEzNDAvdXBk YXRlCisrKyAvZGV2L251bGwKQEAgLTEsMiArMCwwIEBACi1zaXRlPSJodHRwOi8vd3d3Lm52aWRp YS5jb20vb2JqZWN0L3VuaXguaHRtbCIKLXBhdHRlcm49JzM0MC4rPlxLW1xkLl0rKD89PC9BPikn Cg== --===============5222507499858533687==--