From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] gdb-17.2-rebase-f44: Rebase to FSF GDB 7.5.50.20130310 (pre-7.6 snapshot). Date: Sat, 27 Jun 2026 23:56:04 GMT Message-ID: <178260456441.1.84112827585079527.rpms-gdb-1054fa6d0b04@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: 1054fa6d0b04e767a444ca86c9eb6c549042f2a3 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZ2RiCiAgICAgICAgICAgIEJyYW5jaCA6IGdkYi0xNy4yLXJlYmFzZS1mNDQK ICAgICAgICAgICAgQ29tbWl0IDogMTA1NGZhNmQwYjA0ZTc2N2E0NDRjYTg2YzllYjZjNTQ5MDQy ZjJhMwogICAgICAgICAgICBBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxA cmVkaGF0LmNvbT4KICAgICAgICAgICAgRGF0ZSAgIDogMjAxMy0wMy0xMFQxNzoxMjo0MyswMTow MAogICAgICAgICAgICBTdGF0cyAgOiArMjA0OS8tMzA2IGluIDEwIGZpbGUocykKICAgICAgICAg ICAgVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9nZGIvYy8xMDU0 ZmE2ZDBiMDRlNzY3YTQ0NGNhODZjOWViNmM1NDkwNDJmMmEzP2JyYW5jaD1nZGItMTcuMi1yZWJh c2UtZjQ0CgogICAgICAgICAgICBMb2c6CiAgICAgICAgICAgIFJlYmFzZSB0byBGU0YgR0RCIDcu NS41MC4yMDEzMDMxMCAocHJlLTcuNiBzbmFwc2hvdCkuCgotIEZpeCB2YXJpb3VzIGVudHJ5LXZh bHVlcyBzdWItb3B0aW1hbCByZXN1bHRzLgoKLS0tCmRpZmYgLS1naXQgYS8uZ2l0aWdub3JlIGIv LmdpdGlnbm9yZQppbmRleCAwZGM1MjkzLi5hNDZjYzk4IDEwMDY0NAotLS0gYS8uZ2l0aWdub3Jl CisrKyBiLy5naXRpZ25vcmUKQEAgLTEsMiArMSwyIEBACiAvZ2RiLWxpYnN0ZGMrKy12My1weXRo b24tcjE1NTk3OC50YXIuYnoyCi0vZ2RiLTcuNS41MC4yMDEzMDIxNS50YXIuYnoyCisvZ2RiLTcu NS41MC4yMDEzMDMxMC50YXIuYnoyCgpkaWZmIC0tZ2l0IGEvZ2RiLTYuNi1idWlsZGlkLWxvY2F0 ZS1ycG0ucGF0Y2ggYi9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLXJwbS5wYXRjaAppbmRleCAwMDc0 ZGI5Li5jMjRmMzA5IDEwMDY0NAotLS0gYS9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLXJwbS5wYXRj aAorKysgYi9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLXJwbS5wYXRjaApAQCAtMSw3ICsxLDcgQEAK LUluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9ldmVudC10b3AuYworSW5kZXg6IGdkYi03 LjUuNTAuMjAxMzAzMTAvZ2RiL2V2ZW50LXRvcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41 MC4yMDEzMDIxNS5vcmlnL2dkYi9ldmVudC10b3AuYwkyMDEzLTAxLTMxIDE5OjM3OjM3LjAwMDAw MDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2V2ZW50LXRvcC5jCTIwMTMt MDItMTUgMjI6MzY6MTEuMjE3MzA4NTM5ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5v cmlnL2dkYi9ldmVudC10b3AuYwkyMDEzLTAxLTMxIDE5OjM3OjM3LjAwMDAwMDAwMCArMDEwMAor KysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2V2ZW50LXRvcC5jCTIwMTMtMDMtMTAgMTY6NDQ6 MDUuNDcxNTg2OTE3ICswMTAwCiBAQCAtMzYsNiArMzYsNyBAQAogICNpbmNsdWRlICJjb250aW51 YXRpb25zLmgiCiAgI2luY2x1ZGUgImdkYmNtZC5oIgkJLyogZm9yIGRvbnRfcmVwZWF0KCkgKi8K QEAgLTI4LDEwICsyOCwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZXZlbnQt dG9wLmMKICAgIC8qIEVhY2ggaW50ZXJwcmV0ZXIgaGFzIGl0cyBvd24gcnVsZXMgb24gZGlzcGxh eWluZyB0aGUgY29tbWFuZAogICAgICAgcHJvbXB0LiAgKi8KICAgIGlmICghY3VycmVudF9pbnRl cnBfZGlzcGxheV9wcm9tcHRfcCAoKSkKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9l bGZyZWFkLmMKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9lbGZyZWFkLmMKID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMjE1Lm9yaWcvZ2RiL2VsZnJlYWQuYwkyMDEzLTAy LTE1IDIyOjM1OjM2LjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2Ri L2VsZnJlYWQuYwkyMDEzLTAyLTE1IDIyOjM1OjU5LjQxNDI5Mjg3NCArMDEwMAorLS0tIGdkYi03 LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvZWxmcmVhZC5jCTIwMTMtMDMtMTAgMTY6Mzg6MDEuMDAw MDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvZWxmcmVhZC5jCTIwMTMt MDMtMTAgMTY6NDQ6MDUuNDcyNTg2OTE4ICswMTAwCiBAQCAtNDksNiArNDksNyBAQAogICNpbmNs dWRlICJnZGJjb3JlLmgiCiAgI2luY2x1ZGUgImdkYmNtZC5oIgpAQCAtNDAsNyArNDAsNyBAQCBJ bmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5jCiAgI2luY2x1ZGUgPHN5cy9z dGF0Lmg+CiAgCiAgZXh0ZXJuIHZvaWQgX2luaXRpYWxpemVfZWxmcmVhZCAodm9pZCk7Ci1AQCAt MTY0OSw4ICsxNjUwLDM2MSBAQCBidWlsZF9pZF90b19maWxlbmFtZSAoc3RydWN0IGJ1aWxkX2lk ICpiCitAQCAtMTYyOCw4ICsxNjI5LDM2MSBAQCBidWlsZF9pZF90b19maWxlbmFtZSAoY29uc3Qg c3RydWN0IGVsZl9iCiAgICByZXR1cm4gcmV0dmFsOwogIH0KICAKQEAgLTQwMyw3ICs0MDMsNyBA QCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5jCiAgICAgYXZvaWRhbmNl LiAgKi8KICAKICBzdHJ1Y3QgbWlzc2luZ19maWxlcGFpcgotQEAgLTE3MDQsMTEgKzIwNTgsMTcg QEAgbWlzc2luZ19maWxlcGFpcl9jaGFuZ2UgKHZvaWQpCitAQCAtMTY4MywxMSArMjAzNywxNyBA QCBtaXNzaW5nX2ZpbGVwYWlyX2NoYW5nZSAodm9pZCkKICAgICAgICAvKiBBbGwgdGhlaXIgbWVt b3J5IGNhbWUganVzdCBmcm9tIG1pc3NpbmdfZmlsZXBhaXJfT0JTVEFDSy4gICovCiAgICAgICAg bWlzc2luZ19maWxlcGFpcl9oYXNoID0gTlVMTDsKICAgICAgfQpAQCAtNDIxLDcgKzQyMSw3IEBA IEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9lbGZyZWFkLmMKICAgIG1pc3NpbmdfZmls ZXBhaXJfY2hhbmdlICgpOwogIH0KICAKLUBAIC0xNzc1LDE0ICsyMTM1LDM1IEBAIGRlYnVnX3By aW50X21pc3NpbmcgKGNvbnN0IGNoYXIgKmJpbmFyeSwKK0BAIC0xNzU0LDE0ICsyMTE0LDM1IEBA IGRlYnVnX3ByaW50X21pc3NpbmcgKGNvbnN0IGNoYXIgKmJpbmFyeSwKICAKICAgICpzbG90ID0g bWlzc2luZ19maWxlcGFpcjsKICAKQEAgLTQ2NCwxMiArNDY0LDEyIEBAIEluZGV4OiBnZGItNy41 LjUwLjIwMTMwMjE1L2dkYi9lbGZyZWFkLmMKICB9CiAgCiAgc3RhdGljIGNoYXIgKgotSW5kZXg6 IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3N5bWZpbGUuaAorSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAzMTAvZ2RiL3N5bWZpbGUuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAyMTUu b3JpZy9nZGIvc3ltZmlsZS5oCTIwMTMtMDItMTUgMjI6MzU6MDMuMDAwMDAwMDAwICswMTAwCi0r KysgZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvc3ltZmlsZS5oCTIwMTMtMDItMTUgMjI6MzU6NTku NDE0MjkyODc0ICswMTAwCi1AQCAtNTk5LDYgKzU5OSw4IEBAIGV4dGVybiBzdHJ1Y3QgYnVpbGRf aWQgKmJ1aWxkX2lkX2FkZHJfZ2UKLSBleHRlcm4gY2hhciAqYnVpbGRfaWRfdG9fZmlsZW5hbWUg KHN0cnVjdCBidWlsZF9pZCAqYnVpbGRfaWQsCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmln L2dkYi9zeW1maWxlLmgJMjAxMy0wMy0xMCAxNjozNzo0MS4wMDAwMDAwMDAgKzAxMDAKKysrKyBn ZGItNy41LjUwLjIwMTMwMzEwL2dkYi9zeW1maWxlLmgJMjAxMy0wMy0xMCAxNjo0NDoyMy40MDk1 OTE5NDYgKzAxMDAKK0BAIC01OTgsNiArNTk4LDggQEAgZXh0ZXJuIHN0cnVjdCBlbGZfYnVpbGRf aWQgKmJ1aWxkX2lkX2FkZAorIGV4dGVybiBjaGFyICpidWlsZF9pZF90b19maWxlbmFtZSAoY29u c3Qgc3RydWN0IGVsZl9idWlsZF9pZCAqYnVpbGRfaWQsCiAgCQkJCSAgIGNoYXIgKipsaW5rX3Jl dHVybiwgaW50IGFkZF9kZWJ1Z19zdWZmaXgpOwogIGV4dGVybiB2b2lkIGRlYnVnX3ByaW50X21p c3NpbmcgKGNvbnN0IGNoYXIgKmJpbmFyeSwgY29uc3QgY2hhciAqZGVidWcpOwogK2V4dGVybiB2 b2lkIGRlYnVnX2ZsdXNoX21pc3NpbmcgKHZvaWQpOwpAQCAtNDc3LDEwICs0NzcsMTAgQEAgSW5k ZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3N5bWZpbGUuaAogIAogIC8qIEZyb20gZHdhcmYy cmVhZC5jICovCiAgCi1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvdGVzdHN1aXRlL2xp Yi9nZGIuZXhwCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvdGVzdHN1aXRlL2xpYi9n ZGIuZXhwCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi90ZXN0 c3VpdGUvbGliL2dkYi5leHAJMjAxMy0wMi0xNSAyMjozNTowMy4wMDAwMDAwMDAgKzAxMDAKLSsr KyBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAJMjAxMy0wMi0x NSAyMjozNTo1OS40MTUyOTI4NzggKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcv Z2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAkyMDEzLTAzLTEwIDE2OjE3OjE1LjAwMDAwMDAwMCAr MDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAky MDEzLTAzLTEwIDE2OjQ0OjA1LjQ3NDU4NjkxOCArMDEwMAogQEAgLTE0ODIsNyArMTQ4Miw3IEBA IHByb2MgZGVmYXVsdF9nZGJfc3RhcnQgeyB9IHsKICAJICAgIHdhcm5pbmcgIkNvdWxkbid0IHNl dCB0aGUgd2lkdGggdG8gMC4iCiAgCX0KQEAgLTQ5MCwxMCArNDkwLDEwIEBAIEluZGV4OiBnZGIt Ny41LjUwLjIwMTMwMjE1L2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAKICAgICAgc2VuZF9nZGIg InNldCBidWlsZC1pZC12ZXJib3NlIDBcbiIKICAgICAgZ2RiX2V4cGVjdCAxMCB7CiAgCS1yZSAi JGdkYl9wcm9tcHQgJCIgewotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3Rlc3RzdWl0 ZS9saWIvbWktc3VwcG9ydC5leHAKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi90ZXN0 c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEz MDIxNS5vcmlnL2dkYi90ZXN0c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCTIwMTMtMDItMTUgMjI6 MzU6MDMuMDAwMDAwMDAwICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvdGVzdHN1 aXRlL2xpYi9taS1zdXBwb3J0LmV4cAkyMDEzLTAyLTE1IDIyOjM1OjU5LjQxNjI5Mjg4MSArMDEw MAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBw b3J0LmV4cAkyMDEzLTAzLTEwIDE2OjE3OjE1LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUu NTAuMjAxMzAzMTAvZ2RiL3Rlc3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAJMjAxMy0wMy0xMCAx Njo0NDowNS40NzU1ODY5MTggKzAxMDAKIEBAIC0yMTIsNyArMjEyLDcgQEAgcHJvYyBkZWZhdWx0 X21pX2dkYl9zdGFydCB7IGFyZ3MgfSB7CiAgCSAgICB3YXJuaW5nICJDb3VsZG4ndCBzZXQgdGhl IHdpZHRoIHRvIDAuIgogIAl9CkBAIC01MDMsMTAgKzUwMywxMCBAQCBJbmRleDogZ2RiLTcuNS41 MC4yMDEzMDIxNS9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0LmV4cAogICAgICBzZW5kX2dk YiAiMTkwLWdkYi1zZXQgYnVpbGQtaWQtdmVyYm9zZSAwXG4iCiAgICAgIGdkYl9leHBlY3QgMTAg ewogIAktcmUgIi4qMTkwLWdkYi1zZXQgYnVpbGQtaWQtdmVyYm9zZSAwXHJcbjE5MFxcXF5kb25l XHJcbiRtaV9nZGJfcHJvbXB0JCIgewotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3R1 aS90dWktaW50ZXJwLmMKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi90dWkvdHVpLWlu dGVycC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi90dWkv dHVpLWludGVycC5jCTIwMTMtMDEtMDEgMDc6NDE6MzAuMDAwMDAwMDAwICswMTAwCi0rKysgZ2Ri LTcuNS41MC4yMDEzMDIxNS9nZGIvdHVpL3R1aS1pbnRlcnAuYwkyMDEzLTAyLTE1IDIyOjM1OjU5 LjQxNjI5Mjg4MSArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvdHVpL3R1 aS1pbnRlcnAuYwkyMDEzLTAxLTAxIDA3OjQxOjMwLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03 LjUuNTAuMjAxMzAzMTAvZ2RiL3R1aS90dWktaW50ZXJwLmMJMjAxMy0wMy0xMCAxNjo0NDowNS40 NzU1ODY5MTggKzAxMDAKIEBAIC0zMCw2ICszMCw3IEBACiAgI2luY2x1ZGUgInR1aS90dWkuaCIK ICAjaW5jbHVkZSAidHVpL3R1aS1pby5oIgpAQCAtNTE1LDEwICs1MTUsMTAgQEAgSW5kZXg6IGdk Yi03LjUuNTAuMjAxMzAyMTUvZ2RiL3R1aS90dWktaW50ZXJwLmMKICAKICAvKiBTZXQgdG8gMSB3 aGVuIHRoZSBUVUkgbW9kZSBtdXN0IGJlIGFjdGl2YXRlZCB3aGVuIHdlIGZpcnN0IHN0YXJ0CiAg ICAgZ2RiLiAgKi8KLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9hY2xvY2FsLm00CitJ bmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvYWNsb2NhbC5tNAogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0t IGdkYi03LjUuNTAuMjAxMzAyMTUub3JpZy9nZGIvYWNsb2NhbC5tNAkyMDEzLTAxLTE3IDEyOjA2 OjI2LjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2FjbG9jYWwu bTQJMjAxMy0wMi0xNSAyMjozNTo1OS40MTcyOTI4ODMgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIw MTMwMzEwLm9yaWcvZ2RiL2FjbG9jYWwubTQJMjAxMy0wMS0xNyAxMjowNjoyNi4wMDAwMDAwMDAg KzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9hY2xvY2FsLm00CTIwMTMtMDMtMTAg MTY6NDQ6MDUuNDc1NTg2OTE4ICswMTAwCiBAQCAtMTEsNiArMTEsMTY0IEBACiAgIyBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCiAg IyBQQVJUSUNVTEFSIFBVUlBPU0UuCkBAIC02ODQsMTAgKzY4NCwxMCBAQCBJbmRleDogZ2RiLTcu NS41MC4yMDEzMDIxNS9nZGIvYWNsb2NhbC5tNAogICMgQU1fQ09ORElUSU9OQUwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0qLSBBdXRvY29uZiAtKi0KICAKICAj IENvcHlyaWdodCAoQykgMTk5NywgMjAwMCwgMjAwMSwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwg MjAwOAotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2NvbmZpZy5pbgorSW5kZXg6IGdk Yi03LjUuNTAuMjAxMzAzMTAvZ2RiL2NvbmZpZy5pbgogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUu NTAuMjAxMzAyMTUub3JpZy9nZGIvY29uZmlnLmluCTIwMTItMTItMDkgMTk6Mzk6NTguMDAwMDAw MDAwICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29uZmlnLmluCTIwMTMtMDIt MTUgMjI6MzU6NTkuNDE3MjkyODgzICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmln L2dkYi9jb25maWcuaW4JMjAxMi0xMi0wOSAxOTozOTo1OC4wMDAwMDAwMDAgKzAxMDAKKysrKyBn ZGItNy41LjUwLjIwMTMwMzEwL2dkYi9jb25maWcuaW4JMjAxMy0wMy0xMCAxNjo0NDowNS40NzY1 ODY5MTggKzAxMDAKIEBAIC0zMyw2ICszMyw5IEBACiAgLyogRGVmaW5lIHRvIEJGRCdzIGRlZmF1 bHQgdGFyZ2V0IHZlY3Rvci4gKi8KICAjdW5kZWYgREVGQVVMVF9CRkRfVkVDCkBAIC03MDgsMTAg KzcwOCwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29uZmlnLmluCiAgLyog RGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaWJ1bndpbmQtaWE2NC5oPiBoZWFkZXIgZmls ZS4gKi8KICAjdW5kZWYgSEFWRV9MSUJVTldJTkRfSUE2NF9ICiAgCi1JbmRleDogZ2RiLTcuNS41 MC4yMDEzMDIxNS9nZGIvY29uZmlndXJlCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIv Y29uZmlndXJlCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi9j b25maWd1cmUJMjAxMy0wMS0wOSAxODoyMTozMy4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41 LjUwLjIwMTMwMjE1L2dkYi9jb25maWd1cmUJMjAxMy0wMi0xNSAyMjozNTo1OS40MjIyOTI4OTMg KzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL2NvbmZpZ3VyZQkyMDEzLTAx LTA5IDE4OjIxOjMzLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2Ri L2NvbmZpZ3VyZQkyMDEzLTAzLTEwIDE2OjQ0OjA1LjQ4MDU4NjkxOSArMDEwMAogQEAgLTY4Myw2 ICs2ODMsMTEgQEAgUkVQT1JUX0JVR1NfVE8KICBQS0dWRVJTSU9OCiAgVEFSR0VUX09CUwpAQCAt MTI1OSwxMCArMTI1OSwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29uZmln dXJlCiAgCiAgCiAgc3ViZGlycz0iJHN1YmRpcnMgdGVzdHN1aXRlIgotSW5kZXg6IGdkYi03LjUu NTAuMjAxMzAyMTUvZ2RiL2NvbmZpZ3VyZS5hYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAv Z2RiL2NvbmZpZ3VyZS5hYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAyMTUub3Jp Zy9nZGIvY29uZmlndXJlLmFjCTIwMTMtMDEtMDkgMTg6MjE6MzUuMDAwMDAwMDAwICswMTAwCi0r KysgZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29uZmlndXJlLmFjCTIwMTMtMDItMTUgMjI6MzU6 NTkuNDIzMjkyODk1ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9jb25m aWd1cmUuYWMJMjAxMy0wMS0wOSAxODoyMTozNS4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41 LjUwLjIwMTMwMzEwL2dkYi9jb25maWd1cmUuYWMJMjAxMy0wMy0xMCAxNjo0NDowNS40ODE1ODY5 MTkgKzAxMDAKIEBAIC0xNjYsNiArMTY2LDE5OSBAQCBBQ19ERUZJTkVfRElSKEFVVE9fTE9BRF9T QUZFX1BBVEgsIGVzY2FwCiAgCSAgICAgIFtEaXJlY3RvcmllcyBzYWZlIHRvIGhvbGQgYXV0by1s b2FkZWQgZmlsZXMuXSkKICBBQ19NU0dfUkVTVUxUKFskd2l0aF9hdXRvX2xvYWRfc2FmZV9wYXRo XSkKQEAgLTE0NjMsMTEgKzE0NjMsMTEgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2Ri L2NvbmZpZ3VyZS5hYwogIEFDX0NPTkZJR19TVUJESVJTKHRlc3RzdWl0ZSkKICAKICAjIENoZWNr IHdoZXRoZXIgdG8gc3VwcG9ydCBhbHRlcm5hdGl2ZSB0YXJnZXQgY29uZmlndXJhdGlvbnMKLUlu ZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9jb3JlbG93LmMKK0luZGV4OiBnZGItNy41LjUw LjIwMTMwMzEwL2dkYi9jb3JlbG93LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMw MjE1Lm9yaWcvZ2RiL2NvcmVsb3cuYwkyMDEzLTAyLTE1IDIyOjM1OjAzLjAwMDAwMDAwMCArMDEw MAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2NvcmVsb3cuYwkyMDEzLTAyLTE1IDIyOjM1 OjU5LjQyMzI5Mjg5NSArMDEwMAotQEAgLTMxMyw3ICszMTMsNyBAQCBidWlsZF9pZF9sb2NhdGVf ZXhlYyAoaW50IGZyb21fdHR5KQorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvY29y ZWxvdy5jCTIwMTMtMDMtMTAgMTY6MzY6MzcuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41 MC4yMDEzMDMxMC9nZGIvY29yZWxvdy5jCTIwMTMtMDMtMTAgMTY6NDQ6MDUuNDgxNTg2OTE5ICsw MTAwCitAQCAtMzE0LDcgKzMxNCw3IEBAIGJ1aWxkX2lkX2xvY2F0ZV9leGVjIChpbnQgZnJvbV90 dHkpCiAgICAgICAgICBzeW1maWxlX29iamZpbGUtPmZsYWdzIHw9IE9CSkZfQlVJTERfSURfQ09S RV9MT0FERUQ7CiAgICAgIH0KICAgIGVsc2UKCmRpZmYgLS1naXQgYS9nZGItNi42LWJ1aWxkaWQt bG9jYXRlLXNvbGliLW1pc3NpbmctaWRzLnBhdGNoIGIvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS1z b2xpYi1taXNzaW5nLWlkcy5wYXRjaAppbmRleCA5YTZhMTVlLi45YWQ3ZmNiIDEwMDY0NAotLS0g YS9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLXNvbGliLW1pc3NpbmctaWRzLnBhdGNoCisrKyBiL2dk Yi02LjYtYnVpbGRpZC1sb2NhdGUtc29saWItbWlzc2luZy1pZHMucGF0Y2gKQEAgLTEsMTEgKzEs MTMgQEAKLS0tLSBnZGItNy40LjUwLjIwMTIwMTIwL2dkYi9zb2xpYi1zdnI0LmMub3JpZwkyMDEy LTAzLTE3IDEwOjIzOjExLjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjQuNTAuMjAxMjAxMjAv Z2RiL3NvbGliLXN2cjQuYwkyMDEyLTAzLTE3IDEwOjM2OjIyLjI2NTYyODUyOSArMDEwMAotQEAg LTEyMjgsMTQgKzEyMjgsMjcgQEAgc3ZyNF9yZWFkX3NvX2xpc3QgKENPUkVfQUREUiBsbSwgc3Ry dWN0CitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvc29saWItc3ZyNC5jCis9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9zb2xpYi1zdnI0LmMJMjAxMy0w My0xMCAxNjozNzo0OS4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dk Yi9zb2xpYi1zdnI0LmMJMjAxMy0wMy0xMCAxNjo0Mzo0NS40OTg1ODUwOTEgKzAxMDAKK0BAIC0x MjI1LDE0ICsxMjI1LDI3IEBAIHN2cjRfcmVhZF9zb19saXN0IChDT1JFX0FERFIgbG0sIHN0cnVj dAogIAl9CiAgCiAgICAgICAgewotLQlzdHJ1Y3QgYnVpbGRfaWQgKmJ1aWxkX2lkOwotKwlzdHJ1 Y3QgYnVpbGRfaWQgKmJ1aWxkX2lkID0gTlVMTDsKKy0Jc3RydWN0IGVsZl9idWlsZF9pZCAqYnVp bGRfaWQ7CisrCXN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxkX2lkID0gTlVMTDsKICAKICAJc3Ry bmNweSAobmV3LT5zb19vcmlnaW5hbF9uYW1lLCBidWZmZXIsIFNPX05BTUVfTUFYX1BBVEhfU0la RSAtIDEpOwogIAluZXctPnNvX29yaWdpbmFsX25hbWVbU09fTkFNRV9NQVhfUEFUSF9TSVpFIC0g MV0gPSAnXDAnOwpAQCAtMzAsNyArMzIsNyBAQAogIAlpZiAoYnVpbGRfaWQgIT0gTlVMTCkKICAJ ICB7CiAgCSAgICBjaGFyICpuYW1lLCAqYnVpbGRfaWRfZmlsZW5hbWU7Ci1AQCAtMTI1MCwyMyAr MTI2Myw3IEBAIHN2cjRfcmVhZF9zb19saXN0IChDT1JFX0FERFIgbG0sIHN0cnVjdAorQEAgLTEy NDcsMjMgKzEyNjAsNyBAQCBzdnI0X3JlYWRfc29fbGlzdCAoQ09SRV9BRERSIGxtLCBzdHJ1Y3QK ICAJCXhmcmVlIChuYW1lKTsKICAJICAgICAgfQogIAkgICAgZWxzZQoKZGlmZiAtLWdpdCBhL2dk Yi02LjYtYnVpbGRpZC1sb2NhdGUucGF0Y2ggYi9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLnBhdGNo CmluZGV4IGI0Y2E4OTUuLmEzNjNkMWYgMTAwNjQ0Ci0tLSBhL2dkYi02LjYtYnVpbGRpZC1sb2Nh dGUucGF0Y2gKKysrIGIvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS5wYXRjaApAQCAtMSw3ICsxLDcg QEAKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9jb3JlbG93LmMKK0luZGV4OiBnZGIt Ny41LjUwLjIwMTMwMzEwL2dkYi9jb3JlbG93LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUw LjIwMTMwMjE1Lm9yaWcvZ2RiL2NvcmVsb3cuYwkyMDEzLTAxLTMxIDE5OjM3OjM3LjAwMDAwMDAw MCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2NvcmVsb3cuYwkyMDEzLTAyLTE1 IDIyOjM1OjAzLjI3ODIxOTg0NCArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9n ZGIvY29yZWxvdy5jCTIwMTMtMDEtMzEgMTk6Mzc6MzcuMDAwMDAwMDAwICswMTAwCisrKysgZ2Ri LTcuNS41MC4yMDEzMDMxMC9nZGIvY29yZWxvdy5jCTIwMTMtMDMtMTAgMTY6MzY6MzcuMDE5OTM3 NDA4ICswMTAwCiBAQCAtNDYsNiArNDYsOSBAQAogICNpbmNsdWRlICJwcm9nc3BhY2UuaCIKICAj aW5jbHVkZSAib2JqZmlsZXMuaCIKQEAgLTEyLDcgKzEyLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAu MjAxMzAyMTUvZ2RiL2NvcmVsb3cuYwogIAogICNpZm5kZWYgT19MQVJHRUZJTEUKICAjZGVmaW5l IE9fTEFSR0VGSUxFIDAKLUBAIC0yNzEsNiArMjc0LDUyIEBAIGFkZF90b190aHJlYWRfbGlzdCAo YmZkICphYmZkLCBhc2VjdGlvbgorQEAgLTI3MSw2ICsyNzQsNTMgQEAgYWRkX3RvX3RocmVhZF9s aXN0IChiZmQgKmFiZmQsIGFzZWN0aW9uCiAgICAgIGluZmVyaW9yX3B0aWQgPSBwdGlkOwkJCS8q IFllcywgbWFrZSBpdCBjdXJyZW50LiAgKi8KICB9CiAgCkBAIC0yMiw3ICsyMiw3IEBAIEluZGV4 OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9jb3JlbG93LmMKICtidWlsZF9pZF9sb2NhdGVfZXhl YyAoaW50IGZyb21fdHR5KQogK3sKICsgIENPUkVfQUREUiBhdF9lbnRyeTsKLSsgIHN0cnVjdCBi dWlsZF9pZCAqYnVpbGRfaWQ7CisrICBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpidWlsZF9pZDsKICsg IGNoYXIgKmV4ZWNfZmlsZW5hbWUsICpkZWJ1Z19maWxlbmFtZTsKICsgIGNoYXIgKmJ1aWxkX2lk X2ZpbGVuYW1lOwogKyAgc3RydWN0IGNsZWFudXAgKmJhY2tfdG87CkBAIC0zNiw2ICszNiw3IEBA IEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9jb3JlbG93LmMKICsgIGJ1aWxkX2lkID0g YnVpbGRfaWRfYWRkcl9nZXQgKGF0X2VudHJ5KTsKICsgIGlmIChidWlsZF9pZCA9PSBOVUxMKQog KyAgICByZXR1cm47CisrICBiYWNrX3RvID0gbWFrZV9jbGVhbnVwICh4ZnJlZSwgYnVpbGRfaWQp OwogKwogKyAgLyogU1lNRklMRV9PQkpGSUxFIHNob3VsZCByZWZlciB0byB0aGUgbWFpbiBleGVj dXRhYmxlIChub3Qgb25seSB0byBpdHMKICsgICAgIHNlcGFyYXRlIGRlYnVnIGluZm8gZmlsZSku ICBnY2M0NCsga2VlcHMgLmVoX2ZyYW1lIG9ubHkgaW4gdGhlIG1haW4KQEAgLTQ0LDcgKzQ1LDcg QEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2NvcmVsb3cuYwogKyAgICAgZGlyZWN0 bHkgdG8gdGhlIHNlcGFyYXRlIGRlYnVnIGluZm8gZmlsZS4gICovCiArCiArICBleGVjX2ZpbGVu YW1lID0gYnVpbGRfaWRfdG9fZmlsZW5hbWUgKGJ1aWxkX2lkLCAmYnVpbGRfaWRfZmlsZW5hbWUs IDApOwotKyAgYmFja190byA9IG1ha2VfY2xlYW51cCAoeGZyZWUsIGJ1aWxkX2lkX2ZpbGVuYW1l KTsKKysgIG1ha2VfY2xlYW51cCAoeGZyZWUsIGJ1aWxkX2lkX2ZpbGVuYW1lKTsKICsKICsgIGlm IChleGVjX2ZpbGVuYW1lICE9IE5VTEwpCiArICAgIHsKQEAgLTY1LDcgKzY2LDcgQEAgSW5kZXg6 IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2NvcmVsb3cuYwogIC8qIFRoaXMgcm91dGluZSBvcGVu cyBhbmQgc2V0cyB1cCB0aGUgY29yZSBmaWxlIGJmZC4gICovCiAgCiAgc3RhdGljIHZvaWQKLUBA IC00MDksNiArNDU4LDE0IEBAIGNvcmVfb3BlbiAoY2hhciAqZmlsZW5hbWUsIGludCBmcm9tX3R0 eSkKK0BAIC00MDksNiArNDU5LDE0IEBAIGNvcmVfb3BlbiAoY2hhciAqZmlsZW5hbWUsIGludCBm cm9tX3R0eSkKICAJc3dpdGNoX3RvX3RocmVhZCAodGhyZWFkLT5wdGlkKTsKICAgICAgfQogIApA QCAtODAsNyArODEsNyBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29yZWxvdy5j CiAgICBwb3N0X2NyZWF0ZV9pbmZlcmlvciAoJmNvcmVfb3BzLCBmcm9tX3R0eSk7CiAgCiAgICAv KiBOb3cgZ28gdGhyb3VnaCB0aGUgdGFyZ2V0IHN0YWNrIGxvb2tpbmcgZm9yIHRocmVhZHMgc2lu Y2UgdGhlcmUKLUBAIC05NzgsNCArMTAzNSwxMSBAQCBfaW5pdGlhbGl6ZV9jb3JlbG93ICh2b2lk KQorQEAgLTk3OCw0ICsxMDM2LDExIEBAIF9pbml0aWFsaXplX2NvcmVsb3cgKHZvaWQpCiAgICBp bml0X2NvcmVfb3BzICgpOwogIAogICAgYWRkX3RhcmdldCAoJmNvcmVfb3BzKTsKQEAgLTkyLDEx ICs5MywxMSBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvY29yZWxvdy5jCiArCQkJ ICAgTlVMTCwgTlVMTCwgTlVMTCwKICsJCQkgICAmc2V0bGlzdCwgJnNob3dsaXN0KTsKICB9Ci1J bmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZG9jL2dkYi50ZXhpbmZvCitJbmRleDogZ2Ri LTcuNS41MC4yMDEzMDMxMC9nZGIvZG9jL2dkYi50ZXhpbmZvCiA9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2Ri LTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi9kb2MvZ2RiLnRleGluZm8JMjAxMy0wMi0xNSAyMjoz NDoyMi4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9kb2MvZ2Ri LnRleGluZm8JMjAxMy0wMi0xNSAyMjozNTowMy4yODcyMTk4NjMgKzAxMDAKLUBAIC0xNjY2Miw2 ICsxNjY2MiwyNyBAQCBpbmZvcm1hdGlvbiBmaWxlcy4KKy0tLSBnZGItNy41LjUwLjIwMTMwMzEw Lm9yaWcvZ2RiL2RvYy9nZGIudGV4aW5mbwkyMDEzLTAzLTEwIDE2OjE2OjIzLjAwMDAwMDAwMCAr MDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2RvYy9nZGIudGV4aW5mbwkyMDEzLTAz LTEwIDE2OjE3OjE1LjIxNjExNDYxMyArMDEwMAorQEAgLTE2NjgwLDYgKzE2NjgwLDI3IEBAIGlu Zm9ybWF0aW9uIGZpbGVzLgogIAogIEBlbmQgdGFibGUKICAKQEAgLTEyNCwxMCArMTI1LDEwIEBA IEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9kb2MvZ2RiLnRleGluZm8KICBAY2luZGV4 IEBjb2Rley5nbnVfZGVidWdsaW5rfSBzZWN0aW9ucwogIEBjaW5kZXggZGVidWcgbGluayBzZWN0 aW9ucwogIEEgZGVidWcgbGluayBpcyBhIHNwZWNpYWwgc2VjdGlvbiBvZiB0aGUgZXhlY3V0YWJs ZSBmaWxlIG5hbWVkCi1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvc29saWItc3ZyNC5j CitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvc29saWItc3ZyNC5jCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi9zb2xpYi1zdnI0LmMJMjAxMy0wMS0z MSAxNDo1Mjo1Mi4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9z b2xpYi1zdnI0LmMJMjAxMy0wMi0xNSAyMjozNTowMy4yODcyMTk4NjMgKzAxMDAKKy0tLSBnZGIt Ny41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3NvbGliLXN2cjQuYwkyMDEzLTAxLTMxIDE0OjUyOjUy LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3NvbGliLXN2cjQu YwkyMDEzLTAzLTEwIDE2OjM3OjQ5Ljg0Mjk2MzI4MCArMDEwMAogQEAgLTEyMjQsOSArMTIyNCw1 MiBAQCBzdnI0X3JlYWRfc29fbGlzdCAoQ09SRV9BRERSIGxtLCBzdHJ1Y3QKICAJICBjb250aW51 ZTsKICAJfQpAQCAtMTM2LDcgKzEzNyw3IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dk Yi9zb2xpYi1zdnI0LmMKIC0gICAgICBuZXctPnNvX25hbWVbU09fTkFNRV9NQVhfUEFUSF9TSVpF IC0gMV0gPSAnXDAnOwogLSAgICAgIHN0cmNweSAobmV3LT5zb19vcmlnaW5hbF9uYW1lLCBuZXct PnNvX25hbWUpOwogKyAgICAgIHsKLSsJc3RydWN0IGJ1aWxkX2lkICpidWlsZF9pZDsKKysJc3Ry dWN0IGVsZl9idWlsZF9pZCAqYnVpbGRfaWQ7CiArCiArCXN0cm5jcHkgKG5ldy0+c29fb3JpZ2lu YWxfbmFtZSwgYnVmZmVyLCBTT19OQU1FX01BWF9QQVRIX1NJWkUgLSAxKTsKICsJbmV3LT5zb19v cmlnaW5hbF9uYW1lW1NPX05BTUVfTUFYX1BBVEhfU0laRSAtIDFdID0gJ1wwJzsKQEAgLTE4NCwx MCArMTg1LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9zb2xpYi1zdnI0LmMK ICAgICAgICB4ZnJlZSAoYnVmZmVyKTsKICAKICAgICAgICAvKiBJZiB0aGlzIGVudHJ5IGhhcyBu byBuYW1lLCBvciBpdHMgbmFtZSBtYXRjaGVzIHRoZSBuYW1lCi1JbmRleDogZ2RiLTcuNS41MC4y MDEzMDIxNS9nZGIvZWxmcmVhZC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvZWxm cmVhZC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi9lbGZy ZWFkLmMJMjAxMy0wMi0wMSAyMDozOTowMy4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41LjUw LjIwMTMwMjE1L2dkYi9lbGZyZWFkLmMJMjAxMy0wMi0xNSAyMjozNTozNi44MjYyNjMzNTQgKzAx MDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL2VsZnJlYWQuYwkyMDEzLTAzLTA2 IDIyOjIwOjAyLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2Vs ZnJlYWQuYwkyMDEzLTAzLTEwIDE2OjM4OjAxLjUwNjk2ODY4NyArMDEwMAogQEAgLTQ1LDYgKzQ1 LDExIEBACiAgI2luY2x1ZGUgInJlZ2NhY2hlLmgiCiAgI2luY2x1ZGUgImJjYWNoZS5oIgpAQCAt MjAwLDEwICsyMDEsMTEgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2VsZnJlYWQu YwogIAogIGV4dGVybiB2b2lkIF9pbml0aWFsaXplX2VsZnJlYWQgKHZvaWQpOwogIAotQEAgLTEw NzQsMTYgKzEwNzksNjUgQEAgZWxmX2dudV9pZnVuY19yZXNvbHZlcl9yZXR1cm5fc3RvcCAoc3Ry dQorQEAgLTEwNjcsMTAgKzEwNzIsNTkgQEAgZWxmX2dudV9pZnVuY19yZXNvbHZlcl9yZXR1cm5f c3RvcCAoc3RydQogICAgdXBkYXRlX2JyZWFrcG9pbnRfbG9jYXRpb25zIChiLCBzYWxzLCBzYWxz X2VuZCk7CiAgfQogIAorLS8qIExvY2F0ZSBOVF9HTlVfQlVJTERfSUQgZnJvbSBBQkZEIGFuZCBy ZXR1cm4gaXRzIGNvbnRlbnQuICAqLwogKyNkZWZpbmUgQlVJTERfSURfVkVSQk9TRV9OT05FIDAK ICsjZGVmaW5lIEJVSUxEX0lEX1ZFUkJPU0VfRklMRU5BTUVTIDEKICsjZGVmaW5lIEJVSUxEX0lE X1ZFUkJPU0VfQklOQVJZX1BBUlNFIDIKQEAgLTIxNiwxOCArMjE4LDEwIEBAIEluZGV4OiBnZGIt Ny41LjUwLjIwMTMwMjE1L2dkYi9lbGZyZWFkLmMKICsJCSAgICB2YWx1ZSk7CiArfQogKwotIHN0 cnVjdCBidWlsZF9pZAotICAgewotICAgICBzaXplX3Qgc2l6ZTsKLSAgICAgZ2RiX2J5dGUgZGF0 YVsxXTsKLSAgIH07Ci0gCi0tLyogTG9jYXRlIE5UX0dOVV9CVUlMRF9JRCBmcm9tIEFCRkQgYW5k IHJldHVybiBpdHMgY29udGVudC4gICovCiArLyogTG9jYXRlIE5UX0dOVV9CVUlMRF9JRCBhbmQg cmV0dXJuIGl0cyBtYXRjaGluZyBkZWJ1ZyBmaWxlbmFtZS4KICsgICBGSVhNRTogTk9URSBkZWNv ZGluZyBzaG91bGQgYmUgdW5pZmllZCB3aXRoIHRoZSBCRkQgY29yZSBub3RlcyBkZWNvZGluZy4g ICovCi0gCi0gc3RhdGljIHN0cnVjdCBidWlsZF9pZCAqCi0tYnVpbGRfaWRfYmZkX2dldCAoYmZk ICphYmZkKQorKworK3N0YXRpYyBzdHJ1Y3QgZWxmX2J1aWxkX2lkICoKICtidWlsZF9pZF9idWZf Z2V0IChiZmQgKnRlbXBsLCBnZGJfYnl0ZSAqYnVmLCBiZmRfc2l6ZV90eXBlIHNpemUpCiArewog KyAgYmZkX2J5dGUgKnA7CkBAIC0yNDcsNyArMjQxLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAyMTUvZ2RiL2VsZnJlYWQuYwogKwl7CiArCSAgc2l6ZV90IHNpemUgPSBkZXNjc3o7CiArCSAg Z2RiX2J5dGUgKmRhdGEgPSAodm9pZCAqKSBkZXNjZGF0YTsKLSsJICBzdHJ1Y3QgYnVpbGRfaWQg KnJldHZhbDsKKysJICBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpyZXR2YWw7CiArCiArCSAgcmV0dmFs ID0geG1hbGxvYyAoc2l6ZW9mICpyZXR2YWwgLSAxICsgc2l6ZSk7CiArCSAgcmV0dmFsLT5zaXpl ID0gc2l6ZTsKQEAgLTI2MiwyNiArMjU2LDI3IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1 L2dkYi9lbGZyZWFkLmMKICsKICsvKiBTZXBhcmF0ZSBkZWJ1Z2luZm8gZmlsZXMgaGF2ZSBjb3Jy dXB0ZWQgUEhEUiBidXQgU0hEUiBpcyBjb3JyZWN0IHRoZXJlLgogKyAgIExvY2F0ZSBOVF9HTlVf QlVJTERfSUQgZnJvbSBBQkZEIGFuZCByZXR1cm4gaXRzIGNvbnRlbnQuICAqLwotKwotK3N0YXRp YyBzdHJ1Y3QgYnVpbGRfaWQgKgorIAorIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZWxmX2J1aWxkX2lk ICoKKy1idWlsZF9pZF9iZmRfZ2V0IChiZmQgKmFiZmQpCiArYnVpbGRfaWRfYmZkX3NoZHJfZ2V0 IChiZmQgKmFiZmQpCiAgewotICAgc3RydWN0IGJ1aWxkX2lkICpyZXR2YWw7Ci0gCi1AQCAtMTA5 OSw2ICsxMTUzLDM0OCBAQCBidWlsZF9pZF9iZmRfZ2V0IChiZmQgKmFiZmQpCi0gICByZXR1cm4g cmV0dmFsOworICAgaWYgKCFiZmRfY2hlY2tfZm9ybWF0IChhYmZkLCBiZmRfb2JqZWN0KQorICAg ICAgIHx8IGJmZF9nZXRfZmxhdm91ciAoYWJmZCkgIT0gYmZkX3RhcmdldF9lbGZfZmxhdm91cgor QEAgLTEwODAsNiArMTEzNCwzNDggQEAgYnVpbGRfaWRfYmZkX2dldCAoYmZkICphYmZkKQorICAg cmV0dXJuIGVsZl90ZGF0YSAoYWJmZCktPmJ1aWxkX2lkOwogIH0KICAKICsvKiBDb3JlIGZpbGVz IG1heSBoYXZlIG1pc3NpbmcgKGNvcnJ1cHQpIFNIRFIgYnV0IFBESFIgaXMgY29ycmVjdCB0aGVy ZS4KICsgICBiZmRfZWxmX2JmZF9mcm9tX3JlbW90ZV9tZW1vcnkgKCkgaGFzIHRvbyBtdWNoIG92 ZXJoZWFkIGJ5CiArICAgYWxsb2NhdGluZy9yZWFkaW5nIGFsbCB0aGUgYXZhaWxhYmxlIEVMRiBQ VF9MT0FEcy4gICovCiArCi0rc3RhdGljIHN0cnVjdCBidWlsZF9pZCAqCisrc3RhdGljIHN0cnVj dCBlbGZfYnVpbGRfaWQgKgogK2J1aWxkX2lkX3BoZHJfZ2V0IChiZmQgKnRlbXBsLCBiZmRfdm1h IGxvYWRiYXNlLCB1bnNpZ25lZCBlX3BobnVtLAogKwkJICAgRWxmX0ludGVybmFsX1BoZHIgKmlf cGhkcikKICt7CiArICBpbnQgaTsKLSsgIHN0cnVjdCBidWlsZF9pZCAqcmV0dmFsID0gTlVMTDsK KysgIHN0cnVjdCBlbGZfYnVpbGRfaWQgKnJldHZhbCA9IE5VTEw7CiArCiArICBmb3IgKGkgPSAw OyBpIDwgZV9waG51bTsgaSsrKQogKyAgICBpZiAoaV9waGRyW2ldLnBfdHlwZSA9PSBQVF9OT1RF ICYmIGlfcGhkcltpXS5wX2ZpbGVzeiA+IDApCkBAIC01NjgsMTEgKzU2MywxMSBAQCBJbmRleDog Z2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5jCiArICAgIH0KICt9CiArCi0rc3RydWN0 IGJ1aWxkX2lkICoKKytzdHJ1Y3QgZWxmX2J1aWxkX2lkICoKICtidWlsZF9pZF9hZGRyX2dldCAo Q09SRV9BRERSIGFkZHIpCiArewogKyAgc3RydWN0IGJ1aWxkX2lkX2FkZHJfc2VjdCAqY2FuZGlk YXRlOwotKyAgc3RydWN0IGJ1aWxkX2lkICpyZXR2YWwgPSBOVUxMOworKyAgc3RydWN0IGVsZl9i dWlsZF9pZCAqcmV0dmFsID0gTlVMTDsKICsgIEVsZl9JbnRlcm5hbF9QaGRyICppX3BoZHIgPSBO VUxMOwogKyAgYmZkX3ZtYSBsb2FkYmFzZSA9IDA7CiArICB1bnNpZ25lZCBlX3BobnVtID0gMDsK QEAgLTYxNyw3ICs2MTIsNyBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVh ZC5jCiAgLyogUmV0dXJuIGlmIEZJTEVOQU1FIGhhcyBOVF9HTlVfQlVJTERfSUQgbWF0Y2hpbmcg dGhlIENIRUNLIHZhbHVlLiAgKi8KICAKICBzdGF0aWMgaW50Ci1AQCAtMTExMyw3ICsxNTA5LDcg QEAgYnVpbGRfaWRfdmVyaWZ5IChjb25zdCBjaGFyICpmaWxlbmFtZSwgcworQEAgLTEwOTQsNyAr MTQ5MCw3IEBAIGJ1aWxkX2lkX3ZlcmlmeSAoY29uc3QgY2hhciAqZmlsZW5hbWUsIGMKICAgIGlm IChhYmZkID09IE5VTEwpCiAgICAgIHJldHVybiAwOwogIApAQCAtNjI2LDE0ICs2MjEsMTQgQEAg SW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2VsZnJlYWQuYwogIAogICAgaWYgKGZvdW5k ID09IE5VTEwpCiAgICAgIHdhcm5pbmcgKF8oIkZpbGUgXCIlc1wiIGhhcyBubyBidWlsZC1pZCwg ZmlsZSBza2lwcGVkIiksIGZpbGVuYW1lKTsKLUBAIC0xMTMxLDE3ICsxNTI3LDE4IEBAIGJ1aWxk X2lkX3ZlcmlmeSAoY29uc3QgY2hhciAqZmlsZW5hbWUsIHMKK0BAIC0xMTEwLDE3ICsxNTA2LDE4 IEBAIGJ1aWxkX2lkX3ZlcmlmeSAoY29uc3QgY2hhciAqZmlsZW5hbWUsIGMKICAgIHJldHVybiBy ZXR2YWw7CiAgfQogIAogLXN0YXRpYyBjaGFyICoKLS1idWlsZF9pZF90b19kZWJ1Z19maWxlbmFt ZSAoc3RydWN0IGJ1aWxkX2lkICpidWlsZF9pZCkKKy1idWlsZF9pZF90b19kZWJ1Z19maWxlbmFt ZSAoY29uc3Qgc3RydWN0IGVsZl9idWlsZF9pZCAqYnVpbGRfaWQpCiArY2hhciAqCi0rYnVpbGRf aWRfdG9fZmlsZW5hbWUgKHN0cnVjdCBidWlsZF9pZCAqYnVpbGRfaWQsIGNoYXIgKipsaW5rX3Jl dHVybiwKKytidWlsZF9pZF90b19maWxlbmFtZSAoY29uc3Qgc3RydWN0IGVsZl9idWlsZF9pZCAq YnVpbGRfaWQsIGNoYXIgKipsaW5rX3JldHVybiwKICsJCSAgICAgIGludCBhZGRfZGVidWdfc3Vm Zml4KQogIHsKICAgIGNoYXIgKmxpbmssICpkZWJ1Z2RpciwgKnJldHZhbCA9IE5VTEw7CkBAIC02 NDksMTYgKzY0NCwxNiBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5j CiAgCiAgICAvKiBLZWVwIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgc28gdGhhdCBERUJVR19GSUxF X0RJUkVDVE9SWSBiZWluZyAiIiB3aWxsCiAgICAgICBjYXVzZSAiLy5idWlsZC1pZC8uLi4iIGxv b2t1cHMuICAqLwotQEAgLTExNTQsNiArMTU1MSw4IEBAIGJ1aWxkX2lkX3RvX2RlYnVnX2ZpbGVu YW1lIChzdHJ1Y3QgYnVpbGQKK0BAIC0xMTMzLDYgKzE1MzAsOCBAQCBidWlsZF9pZF90b19kZWJ1 Z19maWxlbmFtZSAoY29uc3Qgc3RydWN0CiAgICAgICAgc2l6ZV90IGRlYnVnZGlyX2xlbiA9IHN0 cmxlbiAoZGVidWdkaXIpOwotICAgICAgIGdkYl9ieXRlICpkYXRhID0gYnVpbGRfaWQtPmRhdGE7 CisgICAgICAgY29uc3QgZ2RiX2J5dGUgKmRhdGEgPSBidWlsZF9pZC0+ZGF0YTsKICAgICAgICBz aXplX3Qgc2l6ZSA9IGJ1aWxkX2lkLT5zaXplOwogKyAgICAgIHVuc2lnbmVkIHNlcW5vOwogKyAg ICAgIHN0cnVjdCBzdGF0IHN0YXRidWZfdHJhc2g7CiAgICAgICAgY2hhciAqczsKICAKICAgICAg ICBtZW1jcHkgKGxpbmssIGRlYnVnZGlyLCBkZWJ1Z2Rpcl9sZW4pOwotQEAgLTExNjgsMzcgKzE1 NjcsMjQwIEBAIGJ1aWxkX2lkX3RvX2RlYnVnX2ZpbGVuYW1lIChzdHJ1Y3QgYnVpbGQKK0BAIC0x MTQ3LDM3ICsxNTQ2LDI0MCBAQCBidWlsZF9pZF90b19kZWJ1Z19maWxlbmFtZSAoY29uc3Qgc3Ry dWN0CiAgCSpzKysgPSAnLyc7CiAgICAgICAgd2hpbGUgKHNpemUtLSA+IDApCiAgCXMgKz0gc3By aW50ZiAocywgIiUwMngiLCAodW5zaWduZWQpICpkYXRhKyspOwpAQCAtNjg2LDE1ICs2ODEsMTUg QEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2VsZnJlYWQuYwogKwkgICAgc3RyY3B5 IChzMiwgIi5kZWJ1ZyIpOwogKwkgIGVsc2UKICsJICAgICpzMiA9IDA7Ci0gCi0tICAgICAgaWYg KHJldHZhbCAhPSBOVUxMICYmICFidWlsZF9pZF92ZXJpZnkgKHJldHZhbCwgYnVpbGRfaWQpKQor KwogKwkgIC8qIGBhY2Nlc3MnIGF1dG9tYXRpY2FsbHkgZGVyZWZlcmVuY2VzIExJTksuICAqLwog KwkgIGlmIChsc3RhdCAobGluaywgJnN0YXRidWZfdHJhc2gpICE9IDApCiArCSAgICB7CiArCSAg ICAgIC8qIFN0b3AgaW5jcmVhc2luZyBTRVFOTy4gICovCiArCSAgICAgIGJyZWFrOwogKwkgICAg fQotKworIAorLSAgICAgIGlmIChyZXR2YWwgIT0gTlVMTCAmJiAhYnVpbGRfaWRfdmVyaWZ5IChy ZXR2YWwsIGJ1aWxkX2lkKSkKICsJICByZXR2YWwgPSBscmVhbHBhdGggKGxpbmspOwogKwogKwkg IGlmIChyZXR2YWwgIT0gTlVMTCAmJiAhYnVpbGRfaWRfdmVyaWZ5IChyZXR2YWwsIGJ1aWxkX2lk KSkKQEAgLTczNSwxNSArNzMwLDE1IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9l bGZyZWFkLmMKICsgICAgewogICAgICAgIGlmIChyZXR2YWwgIT0gTlVMTCkKIC0JYnJlYWs7Ci0r ICAgICAgIHsKLSsgICAgICAgICAqbGlua19yZXR1cm4gPSBsaW5rOwotKyAgICAgICAgIGxpbmsg PSBOVUxMOwotKyAgICAgICB9CisrCXsKKysJICAqbGlua19yZXR1cm4gPSBsaW5rOworKwkgIGxp bmsgPSBOVUxMOworKwl9CiArICAgICAgZWxzZQotKyAgICAgICB7Ci0rICAgICAgICAgKmxpbmtf cmV0dXJuID0gbGlua19hbGw7Ci0rICAgICAgICAgbGlua19hbGwgPSBOVUxMOwotKyAgICAgICB9 CisrCXsKKysJICAqbGlua19yZXR1cm4gPSBsaW5rX2FsbDsKKysJICBsaW5rX2FsbCA9IE5VTEw7 CisrCX0KICAgICAgfQogKyAgeGZyZWUgKGxpbmspOwogKyAgeGZyZWUgKGxpbmtfYWxsKTsKQEAg LTg5Myw3ICs4ODgsNyBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5j CiArZmluZF9zZXBhcmF0ZV9kZWJ1Z19maWxlX2J5X2J1aWxkaWQgKHN0cnVjdCBvYmpmaWxlICpv YmpmaWxlLAogKwkJCQkgICAgIGNoYXIgKipidWlsZF9pZF9maWxlbmFtZV9yZXR1cm4pCiAgewot ICAgc3RydWN0IGJ1aWxkX2lkICpidWlsZF9pZDsKKyAgIGNvbnN0IHN0cnVjdCBlbGZfYnVpbGRf aWQgKmJ1aWxkX2lkOwogIAogLSAgYnVpbGRfaWQgPSBidWlsZF9pZF9iZmRfZ2V0IChvYmpmaWxl LT5vYmZkKTsKICsgIGlmIChidWlsZF9pZF9maWxlbmFtZV9yZXR1cm4pCkBAIC05MDcsMTAgKzkw MiwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvZWxmcmVhZC5jCiAtICAgICAg YnVpbGRfaWRfbmFtZSA9IGJ1aWxkX2lkX3RvX2RlYnVnX2ZpbGVuYW1lIChidWlsZF9pZCk7CiAr ICAgICAgYnVpbGRfaWRfbmFtZSA9IGJ1aWxkX2lkX3RvX2ZpbGVuYW1lIChidWlsZF9pZCwgYnVp bGRfaWRfZmlsZW5hbWVfcmV0dXJuLAogKwkJCQkJICAgIDEpOwotICAgICAgIHhmcmVlIChidWls ZF9pZCk7CiAgICAgICAgLyogUHJldmVudCBsb29waW5nIG9uIGEgc3RyaXBwZWQgLmRlYnVnIGZp bGUuICAqLwogICAgICAgIGlmIChidWlsZF9pZF9uYW1lICE9IE5VTEwKLUBAIC0xMjA5LDcgKzE4 MTEsNyBAQCBmaW5kX3NlcGFyYXRlX2RlYnVnX2ZpbGVfYnlfYnVpbGRpZCAoc3RyCisgCSAgJiYg ZmlsZW5hbWVfY21wIChidWlsZF9pZF9uYW1lLCBvYmpmaWxlLT5uYW1lKSA9PSAwKQorQEAgLTEx ODcsNyArMTc4OSw3IEBAIGZpbmRfc2VwYXJhdGVfZGVidWdfZmlsZV9ieV9idWlsZGlkIChzdHIK ICAJICB4ZnJlZSAoYnVpbGRfaWRfbmFtZSk7CiAgCX0KICAgICAgICBlbHNlIGlmIChidWlsZF9p ZF9uYW1lICE9IE5VTEwpCkBAIC05MTksNyArOTE0LDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAyMTUvZ2RiL2VsZnJlYWQuYwogICAgICB9CiAgICByZXR1cm4gTlVMTDsKICB9Ci1AQCAtMTQ0 NCw5ICsyMDQ2LDEwIEBAIGVsZl9zeW1maWxlX3JlYWQgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWwK K0BAIC0xNDI1LDkgKzIwMjcsMTAgQEAgZWxmX3N5bWZpbGVfcmVhZCAoc3RydWN0IG9iamZpbGUg Km9iamZpbAogIAkgICAmJiBvYmpmaWxlLT5zZXBhcmF0ZV9kZWJ1Z19vYmpmaWxlID09IE5VTEwK ICAJICAgJiYgb2JqZmlsZS0+c2VwYXJhdGVfZGVidWdfb2JqZmlsZV9iYWNrbGluayA9PSBOVUxM KQogICAgICB7CkBAIC05MzIsNyArOTI3LDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUv Z2RiL2VsZnJlYWQuYwogIAogICAgICAgIGlmIChkZWJ1Z2ZpbGUgPT0gTlVMTCkKICAJZGVidWdm aWxlID0gZmluZF9zZXBhcmF0ZV9kZWJ1Z19maWxlX2J5X2RlYnVnbGluayAob2JqZmlsZSk7Ci1A QCAtMTQ2MCw2ICsyMDYzLDEyIEBAIGVsZl9zeW1maWxlX3JlYWQgKHN0cnVjdCBvYmpmaWxlICpv YmpmaWwKK0BAIC0xNDQxLDYgKzIwNDQsMTIgQEAgZWxmX3N5bWZpbGVfcmVhZCAoc3RydWN0IG9i amZpbGUgKm9iamZpbAogIAkgIHN5bWJvbF9maWxlX2FkZF9zZXBhcmF0ZSAoYWJmZCwgc3ltZmls ZV9mbGFncywgb2JqZmlsZSk7CiAgCSAgZG9fY2xlYW51cHMgKGNsZWFudXApOwogIAl9CkBAIC05 NDMsOSArOTM4LDkgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL2VsZnJlYWQuYwog KwogKyAgICAgIHhmcmVlIChidWlsZF9pZF9maWxlbmFtZSk7CiAgICAgIH0KKyB9CiAgCi0gICBp ZiAoc3ltdGFiX2NyZWF0ZV9kZWJ1ZykKLUBAIC0xNzgyLDQgKzIzOTEsMTYgQEAgX2luaXRpYWxp emVfZWxmcmVhZCAodm9pZCkKK0BAIC0xNzYwLDQgKzIzNjksMTYgQEAgX2luaXRpYWxpemVfZWxm cmVhZCAodm9pZCkKICAKICAgIGVsZl9vYmpmaWxlX2dudV9pZnVuY19jYWNoZV9kYXRhID0gcmVn aXN0ZXJfb2JqZmlsZV9kYXRhICgpOwogICAgZ251X2lmdW5jX2Zuc19wID0gJmVsZl9nbnVfaWZ1 bmNfZm5zOwpAQCAtOTYyLDI4ICs5NTcsMjcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUv Z2RiL2VsZnJlYWQuYwogKwogKyAgb2JzZXJ2ZXJfYXR0YWNoX2V4ZWN1dGFibGVfY2hhbmdlZCAo ZGVidWdfcHJpbnRfZXhlY3V0YWJsZV9jaGFuZ2VkKTsKICB9Ci1JbmRleDogZ2RiLTcuNS41MC4y MDEzMDIxNS9nZGIvc3ltZmlsZS5oCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvc3lt ZmlsZS5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDIxNS5vcmlnL2dkYi9zeW1m aWxlLmgJMjAxMy0wMi0wMyAxNzoyMDoxOC4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41LjUw LjIwMTMwMjE1L2dkYi9zeW1maWxlLmgJMjAxMy0wMi0xNSAyMjozNTowMy4yODgyMTk4NjcgKzAx MDAKLUBAIC01OTMsNiArNTkzLDEzIEBAIHZvaWQgZnJlZV9zeW1maWxlX3NlZ21lbnRfZGF0YSAo c3RydWN0IHMKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3N5bWZpbGUuaAkyMDEz LTAyLTAzIDE3OjIwOjE4LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAv Z2RiL3N5bWZpbGUuaAkyMDEzLTAzLTEwIDE2OjM3OjQxLjIwMzk1OTUxNyArMDEwMAorQEAgLTU5 Myw2ICs1OTMsMTIgQEAgdm9pZCBmcmVlX3N5bWZpbGVfc2VnbWVudF9kYXRhIChzdHJ1Y3Qgcwog IAogIGV4dGVybiBzdHJ1Y3QgY2xlYW51cCAqaW5jcmVtZW50X3JlYWRpbmdfc3ltdGFiICh2b2lk KTsKICAKICsvKiBidWlsZC1pZCBzdXBwb3J0LiAgKi8KLStzdHJ1Y3QgYnVpbGRfaWQ7Ci0rZXh0 ZXJuIHN0cnVjdCBidWlsZF9pZCAqYnVpbGRfaWRfYWRkcl9nZXQgKENPUkVfQUREUiBhZGRyKTsK LStleHRlcm4gY2hhciAqYnVpbGRfaWRfdG9fZmlsZW5hbWUgKHN0cnVjdCBidWlsZF9pZCAqYnVp bGRfaWQsCisrZXh0ZXJuIHN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxkX2lkX2FkZHJfZ2V0IChD T1JFX0FERFIgYWRkcik7CisrZXh0ZXJuIGNoYXIgKmJ1aWxkX2lkX3RvX2ZpbGVuYW1lIChjb25z dCBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpidWlsZF9pZCwKICsJCQkJICAgY2hhciAqKmxpbmtfcmV0 dXJuLCBpbnQgYWRkX2RlYnVnX3N1ZmZpeCk7CiArZXh0ZXJuIHZvaWQgZGVidWdfcHJpbnRfbWlz c2luZyAoY29uc3QgY2hhciAqYmluYXJ5LCBjb25zdCBjaGFyICpkZWJ1Zyk7CiArCiAgLyogRnJv bSBkd2FyZjJyZWFkLmMgKi8KICAKICAvKiBOYW1lcyBmb3IgYSBkd2FyZjIgZGVidWdnaW5nIHNl Y3Rpb24uICBUaGUgZmllbGQgTk9STUFMIGlzIHRoZSBub3JtYWwKLUluZGV4OiBnZGItNy41LjUw LjIwMTMwMjE1L2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAKK0luZGV4OiBnZGItNy41LjUwLjIw MTMwMzEwL2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAKID09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41 LjUwLjIwMTMwMjE1Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAkyMDEzLTAyLTE1IDIy OjMxOjM3LjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3Rlc3Rz dWl0ZS9saWIvZ2RiLmV4cAkyMDEzLTAyLTE1IDIyOjM1OjAzLjI4OTIxOTg3MCArMDEwMAorLS0t IGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvdGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTMt MDMtMTAgMTY6MTY6MjIuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9n ZGIvdGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTMtMDMtMTAgMTY6MTc6MTUuMjE5MTE0NjEyICsw MTAwCiBAQCAtMTQ4Miw2ICsxNDgyLDE2IEBAIHByb2MgZGVmYXVsdF9nZGJfc3RhcnQgeyB9IHsK ICAJICAgIHdhcm5pbmcgIkNvdWxkbid0IHNldCB0aGUgd2lkdGggdG8gMC4iCiAgCX0KQEAgLTEw MDEsMTAgKzk5NSwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvdGVzdHN1aXRl L2xpYi9nZGIuZXhwCiAgICAgIHJldHVybiAwOwogIH0KICAKLUluZGV4OiBnZGItNy41LjUwLjIw MTMwMjE1L2dkYi90ZXN0c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCitJbmRleDogZ2RiLTcuNS41 MC4yMDEzMDMxMC9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0LmV4cAogPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0tIGdkYi03LjUuNTAuMjAxMzAyMTUub3JpZy9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0 LmV4cAkyMDEzLTAxLTIyIDAwOjU3OjU5LjAwMDAwMDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAyMTUvZ2RiL3Rlc3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAJMjAxMy0wMi0xNSAyMjoz NTowMy4yODkyMTk4NzAgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3Rl c3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAJMjAxMy0wMS0yMiAwMDo1Nzo1OS4wMDAwMDAwMDAg KzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi90ZXN0c3VpdGUvbGliL21pLXN1cHBv cnQuZXhwCTIwMTMtMDMtMTAgMTY6MTc6MTUuMjIwMTE0NjEyICswMTAwCiBAQCAtMjEyLDYgKzIx MiwxNiBAQCBwcm9jIGRlZmF1bHRfbWlfZ2RiX3N0YXJ0IHsgYXJncyB9IHsKICAJICAgIHdhcm5p bmcgIkNvdWxkbid0IHNldCB0aGUgd2lkdGggdG8gMC4iCiAgCX0KQEAgLTEwMjIsMTAgKzEwMTYs MTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3Rlc3RzdWl0ZS9saWIvbWktc3Vw cG9ydC5leHAKICAgICAgIyBJZiBhbGxvd2luZyB0aGUgaW5mZXJpb3IgdG8gaGF2ZSBpdHMgb3du IFBUWSB0aGVuIGFzc2lnbiB0aGUgaW5mZXJpb3IKICAgICAgIyBpdHMgb3duIHRlcm1pbmFsIGRl dmljZSBoZXJlLgogICAgICBpZiB7ICRzZXBhcmF0ZV9pbmZlcmlvcl9wdHkgfSB7Ci1JbmRleDog Z2RiLTcuNS41MC4yMDEzMDIxNS9nZGIvb2JqZmlsZXMuaAorSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAzMTAvZ2RiL29iamZpbGVzLmgKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMjE1 Lm9yaWcvZ2RiL29iamZpbGVzLmgJMjAxMy0wMS0wMSAwNzozMjo0Ny4wMDAwMDAwMDAgKzAxMDAK LSsrKyBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi9vYmpmaWxlcy5oCTIwMTMtMDItMTUgMjI6MzU6 MDMuMjkwMjE5ODcyICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9vYmpm aWxlcy5oCTIwMTMtMDItMjggMjA6MDA6MzEuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41 MC4yMDEzMDMxMC9nZGIvb2JqZmlsZXMuaAkyMDEzLTAzLTEwIDE2OjE3OjE1LjIyMDExNDYxMiAr MDEwMAogQEAgLTQzMiw2ICs0MzIsMTAgQEAgc3RydWN0IG9iamZpbGUKICAKICAjZGVmaW5lIE9C SkZfTUFJTkxJTkUgKDEgPDwgNSkKQEAgLTEwMzcsMTAgKzEwMzEsMTAgQEAgSW5kZXg6IGdkYi03 LjUuNTAuMjAxMzAyMTUvZ2RiL29iamZpbGVzLmgKICAvKiBUaGUgb2JqZWN0IGZpbGUgdGhhdCBj b250YWlucyB0aGUgcnVudGltZSBjb21tb24gbWluaW1hbCBzeW1ib2xzCiAgICAgZm9yIFN1bk9T NC4gIE5vdGUgdGhhdCB0aGlzIG9iamZpbGUgaGFzIG5vIGFzc29jaWF0ZWQgQkZELiAgKi8KICAK LUluZGV4OiBnZGItNy41LjUwLjIwMTMwMjE1L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvY29yZWZp bGUuZXhwCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvdGVzdHN1aXRlL2dkYi5iYXNl L2NvcmVmaWxlLmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAyMTUub3JpZy9n ZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2NvcmVmaWxlLmV4cAkyMDEzLTAxLTAxIDA3OjMzOjI1LjAw MDAwMDAwMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAyMTUvZ2RiL3Rlc3RzdWl0ZS9nZGIu YmFzZS9jb3JlZmlsZS5leHAJMjAxMy0wMi0xNSAyMjozNTowMy4yOTAyMTk4NzIgKzAxMDAKKy0t LSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9jb3JlZmls ZS5leHAJMjAxMy0wMS0wMSAwNzozMzoyNS4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUw LjIwMTMwMzEwL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvY29yZWZpbGUuZXhwCTIwMTMtMDMtMTAg MTY6MTc6MTUuMjIwMTE0NjEyICswMTAwCiBAQCAtMjU2LDMgKzI1NiwzMyBAQCBpZiAhW2lzX3Jl bW90ZSB0YXJnZXRdIHsKICAKICAgICAgZ2RiX2V4aXQKCmRpZmYgLS1naXQgYS9nZGItYXJjaGVy LnBhdGNoIGIvZ2RiLWFyY2hlci5wYXRjaAppbmRleCBmZDI4NjJiLi40MDYwY2MwIDEwMDY0NAot LS0gYS9nZGItYXJjaGVyLnBhdGNoCisrKyBiL2dkYi1hcmNoZXIucGF0Y2gKQEAgLTIsMTMgKzIs MzIgQEAgaHR0cDovL3NvdXJjZXdhcmUub3JnL2dkYi93aWtpL1Byb2plY3RBcmNoZXIKIGh0dHA6 Ly9zb3VyY2V3YXJlLm9yZy9nZGIvd2lraS9BcmNoZXJCcmFuY2hNYW5hZ2VtZW50CiAKIEdJVCBz bmFwc2hvdDoKLWNvbW1pdCBlNzJjZTI5ZjhlMzM5ZmM2ZmZmZDczZTlmZjRiODU0YjZmMmYxNDUy Citjb21taXQgOTJjZjJkNTNhOWM2OWI0ZmIzNjFkZTY2MmRlOTEwMGM2ZTcyY2FhMAogCi1icmFu Y2ggYGFyY2hlcicgLSB0aGUgbWVyZ2Ugb2YgYnJhbmNoZXM6Ci1hcmNoZXItamFua3JhdG9jaHZp bC12bGEKLWFyY2hlci10cm9tZXktcHl0aG9uCiticmFuY2ggamFua3JhdG9jaHZpbC9mZWRvcmEx OSAtIHRoZSBtZXJnZSBvZiBicmFuY2hlczoKK2phbmtyYXRvY2h2aWwvdmxhCit0cm9tZXkvcHl0 aG9uCiAKIAorZGlmZiAtLWdpdCBhL1JFQURNRS5hcmNoZXIgYi9SRUFETUUuYXJjaGVyCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMC4uMWY3YWI0OAorLS0tIC9kZXYvbnVsbAor KysrIGIvUkVBRE1FLmFyY2hlcgorQEAgLTAsMCArMSwxMyBAQAorK01lcmdlIGZvciBGZWRvcmEg MTk6IGh0dHA6Ly9wa2dzLmZlZG9yYXByb2plY3Qub3JnL2NnaXQvZ2RiLmdpdC8KKysKKytqYW5r cmF0b2NodmlsL3ZsYQorK3Ryb21leS9weXRob24KKysKKys9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisrVGhpcyBicmFuY2gg b3JpZ2luYWxseSBoZWxkIHRoZSBQeXRob24gY29kZSBmb3IgZ2RiLiAgSXQgc3RpbGwgZXhpc3Rz CisrYmVjYXVzZSBhIHNtYWxsIGFtb3VudCBvZiBjb2RlIGhlcmUgaGFzIG5vdCB5ZXQgYmVlbiBt ZXJnZWQgdXBzdHJlYW0uCisrCisrPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorK0MgdmFyaWFibGUgbGVuZ3RoIGFycmF5cyAv IERXX0ZPUk1fYmxvY2sgLyBGb3J0cmFuIGR5bmFtaWMgYXJyYXlzLgorK2ltcGxlbWVudGF0aW9u IHBsYW46ICAgICAgICAgICAgIGh0dHA6Ly9zb3VyY2V3YXJlLm9yZy9tbC9nZGIvMjAxMi0xMS9t c2cwMDA5NC5odG1sCisrZXhwbGFuYXRpb24gb2YgaXRzIG1lcmdlIHN0YXR1czogaHR0cDovL3Nv dXJjZXdhcmUub3JnL21sL2dkYi8yMDExLTAzL21zZzAwMDIxLmh0bWwKIGRpZmYgLS1naXQgYS9n ZGIvTWFrZWZpbGUuaW4gYi9nZGIvTWFrZWZpbGUuaW4KIGluZGV4IGVkMzBkYjUuLjQzNTZiZTcg MTAwNjQ0CiAtLS0gYS9nZGIvTWFrZWZpbGUuaW4KQEAgLTI3LDEwICs0NiwxMCBAQCBpbmRleCBl ZDMwZGI1Li40MzU2YmU3IDEwMDY0NAogIAkkKFNIRUxMKSBjb25maWcuc3RhdHVzIC0tcmVjaGVj awogIAogZGlmZiAtLWdpdCBhL2dkYi9hZGEtbGFuZy5jIGIvZ2RiL2FkYS1sYW5nLmMKLWluZGV4 IDYzNGU3NjEuLjYwMjc2ZGMgMTAwNjQ0CitpbmRleCA3NWYxYzNkLi42MjQzODE4IDEwMDY0NAog LS0tIGEvZ2RiL2FkYS1sYW5nLmMKICsrKyBiL2dkYi9hZGEtbGFuZy5jCi1AQCAtMTIyNjIsNiAr MTIyNjIsNyBAQCBhZGFfb3BlcmF0b3JfbGVuZ3RoIChjb25zdCBzdHJ1Y3QgZXhwcmVzc2lvbiAq ZXhwLCBpbnQgcGMsIGludCAqb3BsZW5wLAorQEAgLTEyMjg3LDYgKzEyMjg3LDcgQEAgYWRhX29w ZXJhdG9yX2xlbmd0aCAoY29uc3Qgc3RydWN0IGV4cHJlc3Npb24gKmV4cCwgaW50IHBjLCBpbnQg Km9wbGVucCwKICAKICBzdGF0aWMgaW50CiAgYWRhX29wZXJhdG9yX2NoZWNrIChzdHJ1Y3QgZXhw cmVzc2lvbiAqZXhwLCBpbnQgcG9zLApAQCAtMzgsNyArNTcsNyBAQCBpbmRleCA2MzRlNzYxLi42 MDI3NmRjIDEwMDY0NAogIAkJICAgIGludCAoKm9iamZpbGVfZnVuYykgKHN0cnVjdCBvYmpmaWxl ICpvYmpmaWxlLCB2b2lkICpkYXRhKSwKICAJCSAgICB2b2lkICpkYXRhKQogIHsKLUBAIC0xMjI3 NiwxMiArMTIyNzcsMTUgQEAgYWRhX29wZXJhdG9yX2NoZWNrIChzdHJ1Y3QgZXhwcmVzc2lvbiAq ZXhwLCBpbnQgcG9zLAorQEAgLTEyMzAxLDEyICsxMjMwMiwxNSBAQCBhZGFfb3BlcmF0b3JfY2hl Y2sgKHN0cnVjdCBleHByZXNzaW9uICpleHAsIGludCBwb3MsCiAgCWJyZWFrOwogIAogICAgICAg IGRlZmF1bHQ6CkBAIC05NCwxMCArMTEzLDEwIEBAIGluZGV4IDAyZTdlOGIuLjI5MzE0MDEgMTAw NjQ0CiArCiAgI2VuZGlmIC8qIEJMT0NLX0ggKi8KIGRpZmYgLS1naXQgYS9nZGIvYnJlYWtwb2lu dC5jIGIvZ2RiL2JyZWFrcG9pbnQuYwotaW5kZXggZmI1N2E1Ny4uNWMwM2IxYyAxMDA2NDQKK2lu ZGV4IGQ2ZjhiYzUuLjhhMTQyMjQgMTAwNjQ0CiAtLS0gYS9nZGIvYnJlYWtwb2ludC5jCiArKysg Yi9nZGIvYnJlYWtwb2ludC5jCi1AQCAtMTU2NTYsNiArMTU2NTYsMjQgQEAgYWxsX3RyYWNlcG9p bnRzICh2b2lkKQorQEAgLTE1NjUzLDYgKzE1NjUzLDI0IEBAIGFsbF90cmFjZXBvaW50cyAodm9p ZCkKICAgIHJldHVybiB0cF92ZWM7CiAgfQogIApAQCAtMTIyLDcgKzE0MSw3IEBAIGluZGV4IGZi NTdhNTcuLjVjMDNiMWMgMTAwNjQ0CiAgDAogIC8qIFRoaXMgaGVscCBzdHJpbmcgaXMgdXNlZCBm b3IgdGhlIGJyZWFrLCBoYnJlYWssIHRicmVhayBhbmQgdGhicmVhawogICAgIGNvbW1hbmRzLiAg SXQgaXMgZGVmaW5lZCBhcyBhIG1hY3JvIHRvIHByZXZlbnQgZHVwbGljYXRpb24uCi1AQCAtMTY2 MzksNCArMTY2NTcsNyBAQCBhZ2VudC1wcmludGYgXCJwcmludGYgZm9ybWF0IHN0cmluZ1wiLCBh cmcxLCBhcmcyLCBhcmczLCAuLi4sIGFyZ25cblwKK0BAIC0xNjYzNiw0ICsxNjY1NCw3IEBAIGFn ZW50LXByaW50ZiBcInByaW50ZiBmb3JtYXQgc3RyaW5nXCIsIGFyZzEsIGFyZzIsIGFyZzMsIC4u LiwgYXJnblxuXAogICAgYXV0b21hdGljX2hhcmR3YXJlX2JyZWFrcG9pbnRzID0gMTsKICAKICAg IG9ic2VydmVyX2F0dGFjaF9hYm91dF90b19wcm9jZWVkIChicmVha3BvaW50X2Fib3V0X3RvX3By b2NlZWQpOwpAQCAtMTg3LDEwICsyMDYsMTAgQEAgaW5kZXggZDk4YWM3Ny4uZTI0ODM5OSAxMDA2 NDQKICBGTEFHU19UT19QQVNTID0gXAogIAkicHJlZml4PSQocHJlZml4KSIgXAogZGlmZiAtLWdp dCBhL2dkYi9kb2MvZ2RiLnRleGluZm8gYi9nZGIvZG9jL2dkYi50ZXhpbmZvCi1pbmRleCBlOGFj OGM1Li5iMThjY2Q2IDEwMDY0NAoraW5kZXggYTYwNzE2Ni4uNjkxMzYyOCAxMDA2NDQKIC0tLSBh L2dkYi9kb2MvZ2RiLnRleGluZm8KICsrKyBiL2dkYi9kb2MvZ2RiLnRleGluZm8KLUBAIC0xMjE3 LDYgKzEyMTcsMTYgQEAgZm9yIHJlbW90ZSBkZWJ1Z2dpbmcuCitAQCAtMTIxNiw2ICsxMjE2LDE2 IEBAIGZvciByZW1vdGUgZGVidWdnaW5nLgogIFJ1biB1c2luZyBAdmFye2RldmljZX0gZm9yIHlv dXIgcHJvZ3JhbSdzIHN0YW5kYXJkIGlucHV0IGFuZCBvdXRwdXQuCiAgQGMgRklYTUU6IGtpbmdk b24gdGhpbmtzIHRoZXJlIGlzIG1vcmUgdG8gLXR0eS4gIEludmVzdGlnYXRlLgogIApAQCAtMjA3 LDcgKzIyNiw3IEBAIGluZGV4IGU4YWM4YzUuLmIxOGNjZDYgMTAwNjQ0CiAgQGMgcmVzb2x2ZSB0 aGUgc2l0dWF0aW9uIG9mIHRoZXNlIGV2ZW50dWFsbHkKICBAaXRlbSAtdHVpCiAgQGNpbmRleCBA Y29kZXstLXR1aX0KLUBAIC0yMjc4Niw4ICsyMjc5Niw2IEBAIGNvbnRhaW5pbmcgQGNvZGV7ZW5k fS4gIEZvciBleGFtcGxlOgorQEAgLTIyODA0LDggKzIyODE0LDYgQEAgY29udGFpbmluZyBAY29k ZXtlbmR9LiAgRm9yIGV4YW1wbGU6CiAgCiAgQHNtYWxsZXhhbXBsZQogIChAdmFsdWV7R0RCUH0p IHB5dGhvbgpAQCAtMjE2LDcgKzIzNSw3IEBAIGluZGV4IGU4YWM4YzUuLmIxOGNjZDYgMTAwNjQ0 CiAgPnByaW50IDIzCiAgPmVuZAogIDIzCi1AQCAtMjI4MDEsNiArMjI4MDksMTQgQEAgY29udHJv bGxlZCB1c2luZyBAY29kZXtzZXQgcHl0aG9uIHByaW50LXN0YWNrfTogaWYgQGNvZGV7ZnVsbH0s IHRoZW4KK0BAIC0yMjgxOSw2ICsyMjgyNywxNCBAQCBjb250cm9sbGVkIHVzaW5nIEBjb2Rle3Nl dCBweXRob24gcHJpbnQtc3RhY2t9OiBpZiBAY29kZXtmdWxsfSwgdGhlbgogIGZ1bGwgUHl0aG9u IHN0YWNrIHByaW50aW5nIGlzIGVuYWJsZWQ7IGlmIEBjb2Rle25vbmV9LCB0aGVuIFB5dGhvbiBz dGFjawogIGFuZCBtZXNzYWdlIHByaW50aW5nIGlzIGRpc2FibGVkOyBpZiBAY29kZXttZXNzYWdl fSwgdGhlIGRlZmF1bHQsIG9ubHkKICB0aGUgbWVzc2FnZSBjb21wb25lbnQgb2YgdGhlIGVycm9y IGlzIHByaW50ZWQuCkBAIC0yMzEsNyArMjUwLDcgQEAgaW5kZXggZThhYzhjNS4uYjE4Y2NkNiAx MDA2NDQKICBAZW5kIHRhYmxlCiAgCiAgSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBleGVjdXRlIGEg UHl0aG9uIHNjcmlwdCBmcm9tIHRoZSBAdmFsdWV7R0RCTn0KLUBAIC0yMjgyMiw2ICsyMjgzOCwx NCBAQCBhbmQgdGh1cyBpcyBhbHdheXMgYXZhaWxhYmxlLgorQEAgLTIyODQwLDYgKzIyODU2LDE0 IEBAIGFuZCB0aHVzIGlzIGFsd2F5cyBhdmFpbGFibGUuCiAgQGNpbmRleCBweXRob24gYXBpCiAg QGNpbmRleCBwcm9ncmFtbWluZyBpbiBweXRob24KICAKQEAgLTQyOCw3ICs0NDcsNyBAQCBpbmRl eCBlODU0ODZhLi5lN2FjNzk5IDEwMDY0NAogIAogIC8qIFRoZSBsb2NhdGlvbiBvZiBhIHZhbHVl LiAgKi8KIGRpZmYgLS1naXQgYS9nZGIvZHdhcmYybG9jLmMgYi9nZGIvZHdhcmYybG9jLmMKLWlu ZGV4IDAwMjM4N2UuLjJlMGU3MjIgMTAwNjQ0CitpbmRleCA4YTYxYWU2Li40NTFhNzU5IDEwMDY0 NAogLS0tIGEvZ2RiL2R3YXJmMmxvYy5jCiArKysgYi9nZGIvZHdhcmYybG9jLmMKIEBAIC0yOTgs NiArMjk4LDkgQEAgc3RydWN0IGR3YXJmX2V4cHJfYmF0b24KQEAgLTU3MSw3ICs1OTAsNyBAQCBp bmRleCAwMDIzODdlLi4yZTBlNzIyIDEwMDY0NAogIC8qIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBk d2FyZjJfZXZhbHVhdGVfbG9jX2Rlc2MuICAqLwogIAogIHN0YXRpYyBzdHJ1Y3QgdHlwZSAqCi1A QCAtMTE1NSwxMCArMTI0OCwxMiBAQCBkd2FyZl9leHByX3B1c2hfZHdhcmZfcmVnX2VudHJ5X3Zh bHVlIChzdHJ1Y3QgZHdhcmZfZXhwcl9jb250ZXh0ICpjdHgsCitAQCAtMTE1NiwxMCArMTI0OSwx MiBAQCBkd2FyZl9leHByX3B1c2hfZHdhcmZfcmVnX2VudHJ5X3ZhbHVlIChzdHJ1Y3QgZHdhcmZf ZXhwcl9jb250ZXh0ICpjdHgsCiAgCiAgICBzYXZlZF9jdHguZ2RiYXJjaCA9IGN0eC0+Z2RiYXJj aDsKICAgIHNhdmVkX2N0eC5hZGRyX3NpemUgPSBjdHgtPmFkZHJfc2l6ZTsKQEAgLTU4NCw3ICs2 MDMsNyBAQCBpbmRleCAwMDIzODdlLi4yZTBlNzIyIDEwMDY0NAogICAgY3R4LT5vZmZzZXQgPSBk d2FyZjJfcGVyX2N1X3RleHRfb2Zmc2V0IChiYXRvbl9sb2NhbC5wZXJfY3UpOwogICAgY3R4LT5i YXRvbiA9ICZiYXRvbl9sb2NhbDsKICAKLUBAIC0xMTY2LDEwICsxMjYxLDk1IEBAIGR3YXJmX2V4 cHJfcHVzaF9kd2FyZl9yZWdfZW50cnlfdmFsdWUgKHN0cnVjdCBkd2FyZl9leHByX2NvbnRleHQg KmN0eCwKK0BAIC0xMTY3LDEwICsxMjYyLDk1IEBAIGR3YXJmX2V4cHJfcHVzaF9kd2FyZl9yZWdf ZW50cnlfdmFsdWUgKHN0cnVjdCBkd2FyZl9leHByX2NvbnRleHQgKmN0eCwKICAKICAgIGN0eC0+ Z2RiYXJjaCA9IHNhdmVkX2N0eC5nZGJhcmNoOwogICAgY3R4LT5hZGRyX3NpemUgPSBzYXZlZF9j dHguYWRkcl9zaXplOwpAQCAtNjgwLDcgKzY5OSw3IEBAIGluZGV4IDAwMjM4N2UuLjJlMGU3MjIg MTAwNjQ0CiAgLyogQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIGR3YXJmMl9ldmFsdWF0ZV9sb2NfZGVz Yy4KICAgICBGZXRjaCB0aGUgYWRkcmVzcyBpbmRleGVkIGJ5IERXX09QX0dOVV9hZGRyX2luZGV4 LiAgKi8KICAKLUBAIC0yMTA1LDIyICsyMjg1LDYgQEAgaW52YWxpZF9zeW50aGV0aWNfcG9pbnRl ciAodm9pZCkKK0BAIC0yMTA2LDIyICsyMjg2LDYgQEAgaW52YWxpZF9zeW50aGV0aWNfcG9pbnRl ciAodm9pZCkKICAJICAgInJlZmVyZW5jZWQgdmlhIHN5bnRoZXRpYyBwb2ludGVyIikpOwogIH0K ICAKQEAgLTcwMyw3ICs3MjIsNyBAQCBpbmRleCAwMDIzODdlLi4yZTBlNzIyIDEwMDY0NAogIC8q IEV2YWx1YXRlIGEgbG9jYXRpb24gZGVzY3JpcHRpb24sIHN0YXJ0aW5nIGF0IERBVEEgYW5kIHdp dGggbGVuZ3RoCiAgICAgU0laRSwgdG8gZmluZCB0aGUgY3VycmVudCBsb2NhdGlvbiBvZiB2YXJp YWJsZSBvZiBUWVBFIGluIHRoZQogICAgIGNvbnRleHQgb2YgRlJBTUUuICBCWVRFX09GRlNFVCBp cyBhcHBsaWVkIGFmdGVyIHRoZSBjb250ZW50cyBhcmUKLUBAIC0yMTMzLDcgKzIyOTcsNiBAQCBk d2FyZjJfZXZhbHVhdGVfbG9jX2Rlc2NfZnVsbCAoc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBm cmFtZV9pbmZvICpmcmFtZSwKK0BAIC0yMTM0LDcgKzIyOTgsNiBAQCBkd2FyZjJfZXZhbHVhdGVf bG9jX2Rlc2NfZnVsbCAoc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBmcmFtZV9pbmZvICpmcmFt ZSwKICAJCQkgICAgICAgTE9OR0VTVCBieXRlX29mZnNldCkKICB7CiAgICBzdHJ1Y3QgdmFsdWUg KnJldHZhbDsKQEAgLTcxMSw3ICs3MzAsNyBAQCBpbmRleCAwMDIzODdlLi4yZTBlNzIyIDEwMDY0 NAogICAgc3RydWN0IGR3YXJmX2V4cHJfY29udGV4dCAqY3R4OwogICAgc3RydWN0IGNsZWFudXAg Km9sZF9jaGFpbiwgKnZhbHVlX2NoYWluOwogICAgc3RydWN0IG9iamZpbGUgKm9iamZpbGUgPSBk d2FyZjJfcGVyX2N1X29iamZpbGUgKHBlcl9jdSk7Ci1AQCAtMjE0NSwyOSArMjMwOCwxOCBAQCBk d2FyZjJfZXZhbHVhdGVfbG9jX2Rlc2NfZnVsbCAoc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBm cmFtZV9pbmZvICpmcmFtZSwKK0BAIC0yMTQ2LDI5ICsyMzA5LDE4IEBAIGR3YXJmMl9ldmFsdWF0 ZV9sb2NfZGVzY19mdWxsIChzdHJ1Y3QgdHlwZSAqdHlwZSwgc3RydWN0IGZyYW1lX2luZm8gKmZy YW1lLAogICAgaWYgKHNpemUgPT0gMCkKICAgICAgcmV0dXJuIGFsbG9jYXRlX29wdGltaXplZF9v dXRfdmFsdWUgKHR5cGUpOwogIApAQCAtNzQyLDcgKzc2MSw3IEBAIGluZGV4IDAwMjM4N2UuLjJl MGU3MjIgMTAwNjQ0CiAgCSAgcmV0dmFsID0gYWxsb2NhdGVfdmFsdWUgKHR5cGUpOwogIAkgIG1h cmtfdmFsdWVfYnl0ZXNfdW5hdmFpbGFibGUgKHJldHZhbCwgMCwgVFlQRV9MRU5HVEggKHR5cGUp KTsKICAJICByZXR1cm4gcmV0dmFsOwotQEAgLTIyMzEsNiArMjM4MywxNiBAQCBkd2FyZjJfZXZh bHVhdGVfbG9jX2Rlc2NfZnVsbCAoc3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCBmcmFtZV9pbmZv ICpmcmFtZSwKK0BAIC0yMjMyLDYgKzIzODQsMTYgQEAgZHdhcmYyX2V2YWx1YXRlX2xvY19kZXNj X2Z1bGwgKHN0cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWUsCiAgCSAg ICBpbnQgaW5fc3RhY2tfbWVtb3J5ID0gZHdhcmZfZXhwcl9mZXRjaF9pbl9zdGFja19tZW1vcnkg KGN0eCwgMCk7CiAgCiAgCSAgICBkb19jbGVhbnVwcyAodmFsdWVfY2hhaW4pOwpAQCAtNzU5LDcg Kzc3OCw3IEBAIGluZGV4IDAwMjM4N2UuLjJlMGU3MjIgMTAwNjQ0CiAgCSAgICByZXR2YWwgPSBh bGxvY2F0ZV92YWx1ZV9sYXp5ICh0eXBlKTsKICAJICAgIFZBTFVFX0xWQUwgKHJldHZhbCkgPSBs dmFsX21lbW9yeTsKICAJICAgIGlmIChpbl9zdGFja19tZW1vcnkpCi1AQCAtNDE0Nyw4ICs0MzA5 LDcgQEAgbG9jbGlzdF90cmFjZXBvaW50X3Zhcl9yZWYgKHN0cnVjdCBzeW1ib2wgKnN5bWJvbCwg c3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsCitAQCAtNDE0OCw4ICs0MzEwLDcgQEAgbG9jbGlzdF90 cmFjZXBvaW50X3Zhcl9yZWYgKHN0cnVjdCBzeW1ib2wgKnN5bWJvbCwgc3RydWN0IGdkYmFyY2gg KmdkYmFyY2gsCiAgCQkJICAgICAgIGRsYmF0b24tPnBlcl9jdSk7CiAgfQogIApAQCAtNzY5LDcg Kzc4OCw3IEBAIGluZGV4IDAwMjM4N2UuLjJlMGU3MjIgMTAwNjQ0CiAgY29uc3Qgc3RydWN0IHN5 bWJvbF9jb21wdXRlZF9vcHMgZHdhcmYyX2xvY2xpc3RfZnVuY3MgPSB7CiAgICBsb2NsaXN0X3Jl YWRfdmFyaWFibGUsCiAgICBsb2NsaXN0X3JlYWRfdmFyaWFibGVfYXRfZW50cnksCi1AQCAtNDE1 Nyw2ICs0MzE4LDQ4IEBAIGNvbnN0IHN0cnVjdCBzeW1ib2xfY29tcHV0ZWRfb3BzIGR3YXJmMl9s b2NsaXN0X2Z1bmNzID0geworQEAgLTQxNTgsNiArNDMxOSw0OCBAQCBjb25zdCBzdHJ1Y3Qgc3lt Ym9sX2NvbXB1dGVkX29wcyBkd2FyZjJfbG9jbGlzdF9mdW5jcyA9IHsKICAgIGxvY2xpc3RfdHJh Y2Vwb2ludF92YXJfcmVmCiAgfTsKICAKQEAgLTgzOSw3ICs4NTgsNyBAQCBpbmRleCAzNjY0MWIz Li4xMzk0NTc4IDEwMDY0NAogIC8qIENvbXBpbGUgYSBEV0FSRiBsb2NhdGlvbiBleHByZXNzaW9u IHRvIGFuIGFnZW50IGV4cHJlc3Npb24uCiAgICAgCiBkaWZmIC0tZ2l0IGEvZ2RiL2R3YXJmMnJl YWQuYyBiL2dkYi9kd2FyZjJyZWFkLmMKLWluZGV4IGQyNmU3YzguLjlmYmU2MWUgMTAwNjQ0Citp bmRleCBkZjYyOThiLi5iMTFhYmYwIDEwMDY0NAogLS0tIGEvZ2RiL2R3YXJmMnJlYWQuYwogKysr IGIvZ2RiL2R3YXJmMnJlYWQuYwogQEAgLTE2MjQsNiArMTYyNCw5IEBAIHN0YXRpYyB2b2lkIGZp bGxfaW5fbG9jbGlzdF9iYXRvbiAoc3RydWN0IGR3YXJmMl9jdSAqY3UsCkBAIC0xMDcxLDcgKzEw OTAsNyBAQCBpbmRleCBkMjZlN2M4Li45ZmJlNjFlIDEwMDY0NAogICAgdHlwZSA9IGNyZWF0ZV9z dHJpbmdfdHlwZSAoTlVMTCwgY2hhcl90eXBlLCByYW5nZV90eXBlKTsKICAKIEBAIC0xMjczOSw3 ICsxMjg1OCw3IEBAIHJlYWRfc3VicmFuZ2VfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0 cnVjdCBkd2FyZjJfY3UgKmN1KQotICAgc3RydWN0IHR5cGUgKmJhc2VfdHlwZTsKKyAgIHN0cnVj dCB0eXBlICpiYXNlX3R5cGUsICpvcmlnX2Jhc2VfdHlwZTsKICAgIHN0cnVjdCB0eXBlICpyYW5n ZV90eXBlOwogICAgc3RydWN0IGF0dHJpYnV0ZSAqYXR0cjsKIC0gIExPTkdFU1QgbG93LCBoaWdo OwpAQCAtMTA3OSw3ICsxMDk4LDcgQEAgaW5kZXggZDI2ZTdjOC4uOWZiZTYxZSAxMDA2NDQKICAg IGludCBsb3dfZGVmYXVsdF9pc192YWxpZDsKICAgIGNvbnN0IGNoYXIgKm5hbWU7CiAgICBMT05H RVNUIG5lZ2F0aXZlX21hc2s7Ci1AQCAtMTI3OTUsNDIgKzEyOTE0LDYgQEAgcmVhZF9zdWJyYW5n ZV90eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCitAQCAt MTI3OTgsNDIgKzEyOTE3LDYgQEAgcmVhZF9zdWJyYW5nZV90eXBlIChzdHJ1Y3QgZGllX2luZm8g KmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCiAgCQkJCSAgICAgICItIERJRSBhdCAweCV4IFtp biBtb2R1bGUgJXNdIiksCiAgCSAgICAgICBkaWUtPm9mZnNldC5zZWN0X29mZiwgY3UtPm9iamZp bGUtPm5hbWUpOwogIApAQCAtMTEyMiwxMyArMTE0MSwxMyBAQCBpbmRleCBkMjZlN2M4Li45ZmJl NjFlIDEwMDY0NAogICAgLyogRHdhcmYtMiBzcGVjaWZpY2F0aW9ucyBleHBsaWNpdGx5IGFsbG93 cyB0byBjcmVhdGUgc3VicmFuZ2UgdHlwZXMKICAgICAgIHdpdGhvdXQgc3BlY2lmeWluZyBhIGJh c2UgdHlwZS4KICAgICAgIEluIHRoYXQgY2FzZSwgdGhlIGJhc2UgdHlwZSBtdXN0IGJlIHNldCB0 byB0aGUgdHlwZSBvZgotQEAgLTEyODY5LDI0ICsxMjk1MiwxNjMgQEAgcmVhZF9zdWJyYW5nZV90 eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3UpCitAQCAtMTI4 NzIsMjQgKzEyOTU1LDE2MyBAQCByZWFkX3N1YnJhbmdlX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAq ZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKICAJfQogICAgICB9CiAgCiAtICBuZWdhdGl2ZV9t YXNrID0KICsgIC8qIExPV19CT1VORCBhbmQgSElHSF9CT1VORCBhcmUgc2V0IGZvciByZWFsIGJl bG93LiAgKi8KLSsgIHJhbmdlX3R5cGUgPSBjcmVhdGVfcmFuZ2VfdHlwZSAoTlVMTCwgYmFzZV90 eXBlLCAwLCAtMSk7CisrICByYW5nZV90eXBlID0gY3JlYXRlX3JhbmdlX3R5cGUgKE5VTEwsIG9y aWdfYmFzZV90eXBlLCAwLCAtMSk7CiArICBUWVBFX1VOU0lHTkVEIChyYW5nZV90eXBlKSA9IDA7 CiArCiArICBuZWdhdGl2ZV9tYXNrID0gCkBAIC0xMTM4LDcgKzExNTcsNyBAQCBpbmRleCBkMjZl N2M4Li45ZmJlNjFlIDEwMDY0NAogLSAgaWYgKCFUWVBFX1VOU0lHTkVEIChiYXNlX3R5cGUpICYm IChoaWdoICYgbmVnYXRpdmVfbWFzaykpCiAtICAgIGhpZ2ggfD0gbmVnYXRpdmVfbWFzazsKICAK LS0gIHJhbmdlX3R5cGUgPSBjcmVhdGVfcmFuZ2VfdHlwZSAoTlVMTCwgYmFzZV90eXBlLCBsb3cs IGhpZ2gpOworLSAgcmFuZ2VfdHlwZSA9IGNyZWF0ZV9yYW5nZV90eXBlIChOVUxMLCBvcmlnX2Jh c2VfdHlwZSwgbG93LCBoaWdoKTsKICsgIC8qIEV4Y2x1ZGUgbGFuZ3VhZ2VfYWRhIGZyb20gYW55 IFRZUEVfRFlOQU1JQyBjb25zdHJ1Y3RzIGJlbG93LiAgR0RCIEFkYQogKyAgICAgc3VwcG9ydHMg aW1wbGVtZW50cyB0aGUgZHluYW1pYyBib3VuZHMgaW4gYSBub24tRFdBUkYgd2F5IGFuZCB0aGUK ICsgICAgIGV4aXN0aW5nIERXQVJGIGR5bmFtaWMgYm91bmRzIGFyZSBpbnZhbGlkLCBsZWFkaW5n IHRvIG1lbW9yeSBhY2Nlc3MKQEAgLTEzMDAsNyArMTMxOSw3IEBAIGluZGV4IGQyNmU3YzguLjlm YmU2MWUgMTAwNjQ0CiAgCiAgICBuYW1lID0gZHdhcmYyX25hbWUgKGRpZSwgY3UpOwogICAgaWYg KG5hbWUpCi1AQCAtMTU3NDYsMTAgKzE1OTY4LDEyIEBAIHZhcl9kZWNvZGVfbG9jYXRpb24gKHN0 cnVjdCBhdHRyaWJ1dGUgKmF0dHIsIHN0cnVjdCBzeW1ib2wgKnN5bSwKK0BAIC0xNTc0OSwxMCAr MTU5NzEsMTIgQEAgdmFyX2RlY29kZV9sb2NhdGlvbiAoc3RydWN0IGF0dHJpYnV0ZSAqYXR0ciwg c3RydWN0IHN5bWJvbCAqc3ltLAogICAgICAgKGkuZS4gd2hlbiB0aGUgdmFsdWUgb2YgYSByZWdp c3RlciBvciBtZW1vcnkgbG9jYXRpb24gaXMKICAgICAgIHJlZmVyZW5jZWQsIG9yIGEgdGhyZWFk LWxvY2FsIGJsb2NrLCBldGMuKS4gIFRoZW4gYWdhaW4sIGl0IG1pZ2h0CiAgICAgICBub3QgYmUg d29ydGh3aGlsZS4gIEknbSBhc3N1bWluZyB0aGF0IGl0IGlzbid0IHVubGVzcyBwZXJmb3JtYW5j ZQpAQCAtMTMxNSw3ICsxMzM0LDcgQEAgaW5kZXggZDI2ZTdjOC4uOWZiZTYxZSAxMDA2NDQKICAK ICAgIGlmIChTWU1CT0xfQ09NUFVURURfT1BTIChzeW0pID09ICZkd2FyZjJfbG9jbGlzdF9mdW5j cykKICAgICAgY3UtPmhhc19sb2NsaXN0ID0gMTsKLUBAIC0xNTc5MCw2ICsxNjAxNCw4IEBAIG5l d19zeW1ib2xfZnVsbCAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCB0eXBlICp0eXBlLCBz dHJ1Y3QgZHdhcmYyX2N1ICpjdSwKK0BAIC0xNTc5Myw2ICsxNjAxNyw4IEBAIG5ld19zeW1ib2xf ZnVsbCAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgZHdh cmYyX2N1ICpjdSwKICAgICAgICBlbHNlCiAgCXN5bSA9IE9CU1RBQ0tfWkFMTE9DICgmb2JqZmls ZS0+b2JqZmlsZV9vYnN0YWNrLCBzdHJ1Y3Qgc3ltYm9sKTsKICAgICAgICBPQkpTVEFUIChvYmpm aWxlLCBuX3N5bXMrKyk7CkBAIC0xMzI0LDcgKzEzNDMsNyBAQCBpbmRleCBkMjZlN2M4Li45ZmJl NjFlIDEwMDY0NAogIAogICAgICAgIC8qIENhY2hlIHRoaXMgc3ltYm9sJ3MgbmFtZSBhbmQgdGhl IG5hbWUncyBkZW1hbmdsZWQgZm9ybSAoaWYgYW55KS4gICovCiAgICAgICAgU1lNQk9MX1NFVF9M QU5HVUFHRSAoc3ltLCBjdS0+bGFuZ3VhZ2UpOwotQEAgLTE2NTk5LDYgKzE2ODI1LDkgQEAgcmVh ZF90eXBlX2RpZV8xIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IGR3YXJmMl9jdSAqY3Up CitAQCAtMTY2MDIsNiArMTY4MjgsOSBAQCByZWFkX3R5cGVfZGllXzEgKHN0cnVjdCBkaWVfaW5m byAqZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkKICAgICAgICBicmVhazsKICAgICAgfQogIApA QCAtMTMzNCw3ICsxMzUzLDcgQEAgaW5kZXggZDI2ZTdjOC4uOWZiZTYxZSAxMDA2NDQKICAgIHJl dHVybiB0aGlzX3R5cGU7CiAgfQogIAotQEAgLTE5MDQzLDYyICsxOTI3MiwxMDAgQEAgZmlsbF9p bl9sb2NsaXN0X2JhdG9uIChzdHJ1Y3QgZHdhcmYyX2N1ICpjdSwKK0BAIC0xOTA0Niw2MiArMTky NzUsMTAwIEBAIGZpbGxfaW5fbG9jbGlzdF9iYXRvbiAoc3RydWN0IGR3YXJmMl9jdSAqY3UsCiAg ICBiYXRvbi0+ZnJvbV9kd28gPSBjdS0+ZHdvX3VuaXQgIT0gTlVMTDsKICB9CiAgCkBAIC0xNDcz LDcgKzE0OTIsNyBAQCBpbmRleCBkMjZlN2M4Li45ZmJlNjFlIDEwMDY0NAogICAgICB9CiAgfQog IAotQEAgLTE5NDY5LDYgKzE5NzM2LDI1IEBAIHBlcl9jdV9vZmZzZXRfYW5kX3R5cGVfZXEgKGNv bnN0IHZvaWQgKml0ZW1fbGhzLCBjb25zdCB2b2lkICppdGVtX3JocykKK0BAIC0xOTQ3Miw2ICsx OTczOSwyNSBAQCBwZXJfY3Vfb2Zmc2V0X2FuZF90eXBlX2VxIChjb25zdCB2b2lkICppdGVtX2xo cywgY29uc3Qgdm9pZCAqaXRlbV9yaHMpCiAgCSAgJiYgb2ZzX2xocy0+b2Zmc2V0LnNlY3Rfb2Zm ID09IG9mc19yaHMtPm9mZnNldC5zZWN0X29mZik7CiAgfQogIApAQCAtMTQ5OSw3ICsxNTE4LDcg QEAgaW5kZXggZDI2ZTdjOC4uOWZiZTYxZSAxMDA2NDQKICAvKiBTZXQgdGhlIHR5cGUgYXNzb2Np YXRlZCB3aXRoIERJRSB0byBUWVBFLiAgU2F2ZSBpdCBpbiBDVSdzIGhhc2gKICAgICB0YWJsZSBp ZiBuZWNlc3NhcnkuICBGb3IgY29udmVuaWVuY2UsIHJldHVybiBUWVBFLgogIAotQEAgLTE5NDkz LDYgKzE5Nzc5LDggQEAgc2V0X2RpZV90eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0 IHR5cGUgKnR5cGUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorQEAgLTE5NDk2LDYgKzE5NzgyLDgg QEAgc2V0X2RpZV90eXBlIChzdHJ1Y3QgZGllX2luZm8gKmRpZSwgc3RydWN0IHR5cGUgKnR5cGUs IHN0cnVjdCBkd2FyZjJfY3UgKmN1KQogICAgc3RydWN0IGR3YXJmMl9wZXJfY3Vfb2Zmc2V0X2Fu ZF90eXBlICoqc2xvdCwgb2ZzOwogICAgc3RydWN0IG9iamZpbGUgKm9iamZpbGUgPSBjdS0+b2Jq ZmlsZTsKICAKQEAgLTIzNjIsNyArMjM4MSw3IEBAIGluZGV4IGZiNjZlMGYuLjQ1Njg0ZjAgMTAw NjQ0CiAgCQkJCSAgICAgICZ1bmF2YWlsKTsKICAKIGRpZmYgLS1naXQgYS9nZGIvZ2RiLWdkYi5n ZGIuaW4gYi9nZGIvZ2RiLWdkYi5nZGIuaW4KLWluZGV4IGZmYjdmNTMuLmEyZTdlOTQgMTAwNjQ0 CitpbmRleCAwNWEzOGIyLi45ODAxZmRmIDEwMDY0NAogLS0tIGEvZ2RiL2dkYi1nZGIuZ2RiLmlu CiArKysgYi9nZGIvZ2RiLWdkYi5nZGIuaW4KIEBAIC0xLDUgKzEsMTUgQEAKQEAgLTIzNzgsOSAr MjM5Nyw5IEBAIGluZGV4IGZmYjdmNTMuLmEyZTdlOTQgMTAwNjQ0CiArZW5kCiArc291cmNlIEBz cmNkaXJAL3B5dGhvbi9saWIvZ2RiL19faW5pdF9fLnB5CiArCi0gc2V0IGNvbXBsYWludHMgMQor IGlmICEkZ2RiX2luaXRfZG9uZQorICAgc2V0IHZhcmlhYmxlICRnZGJfaW5pdF9kb25lID0gMQog IAotIGIgaW50ZXJuYWxfZXJyb3IKIGRpZmYgLS1naXQgYS9nZGIvZ2RidHlwZXMuYyBiL2dkYi9n ZGJ0eXBlcy5jCiBpbmRleCAxMjczMGQ3Li41YTYxNGUwIDEwMDY0NAogLS0tIGEvZ2RiL2dkYnR5 cGVzLmMKQEAgLTQ3NjIsMTAgKzQ3ODEsMTAgQEAgaW5kZXggMTFjYzAzOC4uZWYyMzhmNiAxMDA2 NDQKICAKICAMCiBkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhvbi9weXRob24uYyBiL2dkYi9weXRob24v cHl0aG9uLmMKLWluZGV4IDhkZDY1YTEuLjgyYzZjODYgMTAwNjQ0CitpbmRleCBjZDhkZGZiLi5l OTA2YzRmIDEwMDY0NAogLS0tIGEvZ2RiL3B5dGhvbi9weXRob24uYwogKysrIGIvZ2RiL3B5dGhv bi9weXRob24uYwotQEAgLTY2LDYgKzY2LDggQEAgc3RhdGljIGNvbnN0IGNoYXIgKmdkYnB5X3No b3VsZF9wcmludF9zdGFjayA9IHB5dGhvbl9leGNwX21lc3NhZ2U7CitAQCAtNjcsNiArNjcsOCBA QCBzdGF0aWMgY29uc3QgY2hhciAqZ2RicHlfc2hvdWxkX3ByaW50X3N0YWNrID0gcHl0aG9uX2V4 Y3BfbWVzc2FnZTsKICAjaW5jbHVkZSAibGluZXNwZWMuaCIKICAjaW5jbHVkZSAic291cmNlLmgi CiAgI2luY2x1ZGUgInZlcnNpb24uaCIKQEAgLTQ3NzQsNyArNDc5Myw3IEBAIGluZGV4IDhkZDY1 YTEuLjgyYzZjODYgMTAwNjQ0CiAgI2luY2x1ZGUgInRhcmdldC5oIgogICNpbmNsdWRlICJnZGJ0 aHJlYWQuaCIKICAjaW5jbHVkZSAib2JzZXJ2ZXIuaCIKLUBAIC0xMDgyLDYgKzEwODQsNTMgQEAg Z2RicHlfcHJpbnRfc3RhY2sgKHZvaWQpCitAQCAtMTA5OSw2ICsxMTAxLDUzIEBAIGdkYnB5X3By aW50X3N0YWNrICh2b2lkKQogIAogIC8qIFJldHVybiB0aGUgY3VycmVudCBQcm9nc3BhY2UuCiAg ICAgVGhlcmUgYWx3YXlzIGlzIG9uZS4gICovCkBAIC00ODI4LDcgKzQ4NDcsNyBAQCBpbmRleCA4 ZGQ2NWExLi44MmM2Yzg2IDEwMDY0NAogIAogIHN0YXRpYyBQeU9iamVjdCAqCiAgZ2RicHlfZ2V0 X2N1cnJlbnRfcHJvZ3NwYWNlIChQeU9iamVjdCAqdW51c2VkMSwgUHlPYmplY3QgKnVudXNlZDIp Ci1AQCAtMTczMyw2ICsxNzgyLDggQEAgc3RhdGljIFB5TWV0aG9kRGVmIEdkYk1ldGhvZHNbXSA9 CitAQCAtMTc0OSw2ICsxNzk4LDggQEAgc3RhdGljIFB5TWV0aG9kRGVmIEdkYk1ldGhvZHNbXSA9 CiAgICAgICJHZXQgYSB2YWx1ZSBmcm9tIGhpc3RvcnkiIH0sCiAgICB7ICJleGVjdXRlIiwgKFB5 Q0Z1bmN0aW9uKSBleGVjdXRlX2dkYl9jb21tYW5kLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdP UkRTLAogICAgICAiRXhlY3V0ZSBhIGdkYiBjb21tYW5kIiB9LApAQCAtNDg1MSwxMCArNDg3MCwx MCBAQCBpbmRleCAyNGUzMDc3Li4wNDQzMDg3IDEwMDY0NAogIAkJCSAgICAgIGludCBlbWJlZGRl ZF9vZmZzZXQsIENPUkVfQUREUiBhZGRyZXNzLAogIAkJCSAgICAgIHN0cnVjdCB1aV9maWxlICpz dHJlYW0sIGludCByZWN1cnNlLAogZGlmZiAtLWdpdCBhL2dkYi9zdGFjay5jIGIvZ2RiL3N0YWNr LmMKLWluZGV4IDE0N2Q4MTUuLjUxMTE1Y2YgMTAwNjQ0CitpbmRleCBmMmFlYjEwLi5kMjBiMmYx IDEwMDY0NAogLS0tIGEvZ2RiL3N0YWNrLmMKICsrKyBiL2dkYi9zdGFjay5jCi1AQCAtNTA4LDYg KzUwOCwxMCBAQCBwcmludF9mcmFtZV9hcmdzIChzdHJ1Y3Qgc3ltYm9sICpmdW5jLCBzdHJ1Y3Qg ZnJhbWVfaW5mbyAqZnJhbWUsCitAQCAtNTA5LDYgKzUwOSwxMCBAQCBwcmludF9mcmFtZV9hcmdz IChzdHJ1Y3Qgc3ltYm9sICpmdW5jLCBzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWUsCiAgICBzdGIg PSBtZW1fZmlsZW9wZW4gKCk7CiAgICBvbGRfY2hhaW4gPSBtYWtlX2NsZWFudXBfdWlfZmlsZV9k ZWxldGUgKHN0Yik7CiAgCkBAIC04NDc5LDEwICs4NDk4LDEwIEBAIGluZGV4IDJkNWE2YWYuLjUy NTFlM2YgMTAwNjQ0CiAgCiAgICBnZXRfdXNlcl9wcmludF9vcHRpb25zICgmb3B0cyk7CiBkaWZm IC0tZ2l0IGEvZ2RiL3V0aWxzLmMgYi9nZGIvdXRpbHMuYwotaW5kZXggZWI5OWY0Yi4uMmUxN2U4 ZSAxMDA2NDQKK2luZGV4IDRjMmYwOGMuLmQxYzg3MTAgMTAwNjQ0CiAtLS0gYS9nZGIvdXRpbHMu YwogKysrIGIvZ2RiL3V0aWxzLmMKLUBAIC0xODA0LDYgKzE4MDQsMzYgQEAgc2V0X2JhdGNoX2Zs YWdfYW5kX21ha2VfY2xlYW51cF9yZXN0b3JlX3BhZ2VfaW5mbyAodm9pZCkKK0BAIC0xODA1LDYg KzE4MDUsMzYgQEAgc2V0X2JhdGNoX2ZsYWdfYW5kX21ha2VfY2xlYW51cF9yZXN0b3JlX3BhZ2Vf aW5mbyAodm9pZCkKICAgIHJldHVybiBiYWNrX3RvOwogIH0KICAKQEAgLTg3MjgsNyArODc0Nyw3 IEBAIGluZGV4IDkzYzA5ZDguLmFlZjA5OTEgMTAwNjQ0CiAgICAgIHsKICAgICAgICBzdHJ1Y3Qg dHlwZSAqZWxlbWVudF90eXBlID0gVFlQRV9UQVJHRVRfVFlQRSAoYXJyYXlfdHlwZSk7CiBkaWZm IC0tZ2l0IGEvZ2RiL3ZhbHByaW50LmMgYi9nZGIvdmFscHJpbnQuYwotaW5kZXggMDVkNmMzZS4u NTQzMGU2NiAxMDA2NDQKK2luZGV4IDE4Y2ZmNDkuLjg5Y2IwMWEgMTAwNjQ0CiAtLS0gYS9nZGIv dmFscHJpbnQuYwogKysrIGIvZ2RiL3ZhbHByaW50LmMKIEBAIC0zNyw2ICszNyw3IEBACgpkaWZm IC0tZ2l0IGEvZ2RiLWVudHJ5dmFsLTFvZjIucGF0Y2ggYi9nZGItZW50cnl2YWwtMW9mMi5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWEzMWVjCi0tLSAvZGV2L251 bGwKKysrIGIvZ2RiLWVudHJ5dmFsLTFvZjIucGF0Y2gKQEAgLTAsMCArMSw4NzIgQEAKK2h0dHA6 Ly9zb3VyY2V3YXJlLm9yZy9tbC9nZGItcGF0Y2hlcy8yMDEzLTAzL21zZzAwMDYxLmh0bWwKK1N1 YmplY3Q6IFtwYXRjaF0gZW50cnktdmFsdWVzOiBGaXggZm9yIEMrKyBhY3Jvc3MgQ1VzCisKK0hp LAorCitJIGhhdmUgZm91bmQgd2l0aCBDKysgZW50cnktdmFsdWVzIGRvIG5vdCB3b3JrIG11Y2gu ICBUaGlzIGlzIGEgcHJvYmxlbQorcHJpbWFyaWx5IGZvciAndGhpcycgYmVpbmcgaW4gJHJkaSBj bG9iYmVyZWQgdmVyeSBzb29uIGFuZCBoYXZpbmcgYSBmdW5jdGlvbgord2l0aCAndGhpcz08b3B0 aW1pemVkIG91dD4nIGlzIHByZXR0eSB1c2VsZXNzIGZvciBjb3JlIGNyYXNoIGFuYWx5c2lzLgor SXQgaGFwcGVucyBpZiB0aGUgY2FsbCBpcyBhY3Jvc3MgQ1VzLCB3aGVyZSBHQ0MgdXNlcyBuYW1l IHJlZmVyZW5jZToKKworIDwyPjw3Yz46IEFiYnJldiBOdW1iZXI6IDYgKERXX1RBR19HTlVfY2Fs bF9zaXRlKQorICAgIDw3ZD4gICBEV19BVF9sb3dfcGMgICAgICA6IDB4NDAwNDllCisgICAgPDg1 PiAgIERXX0FUX2Fic3RyYWN0X29yaWdpbjogPDB4YTg+CisgPDE+PGE4PjogQWJicmV2IE51bWJl cjogMTAgKERXX1RBR19zdWJwcm9ncmFtKQorICAgIDxhOT4gICBEV19BVF9leHRlcm5hbCAgICA6 IDEgICAgICAgIAorICAgIDxhOT4gICBEV19BVF9uYW1lICAgICAgICA6IGYgICAgICAgIAorICAg IDxhYj4gICBEV19BVF9kZWNsX2ZpbGUgICA6IDEgICAgICAgIAorICAgIDxhYz4gICBEV19BVF9k ZWNsX2xpbmUgICA6IDI2ICAgICAgIAorICAgIDxhZD4gICBEV19BVF9saW5rYWdlX25hbWU6IChp bmRpcmVjdCBzdHJpbmcsIG9mZnNldDogMHg4Myk6IF9aMWZpCisgICAgPGIxPiAgIERXX0FUX2Rl Y2xhcmF0aW9uIDogMSAgICAgICAgCisKK1RoZSB0ZXN0Y2FzZSB0ZXN0cyB0YWlsIGNhbGxzIHdo aWNoIGlzIGFub3RoZXIgKGNvbXBhcmVkIHRvIHVucmVjb3ZlcmVkIHZhbHVlcworc3VjaCBhcyAn dGhpcycpIHJlcHJvZHVjdGlvbiBvZiB0aGUgc2FtZSBwcm9ibGVtOgorCUNhbm5vdCBmaW5kIGZ1 bmN0aW9uICJmKGludCkiIGZvciBhIGNhbGwgc2l0ZSB0YXJnZXQgYXQgMHg0MDA0YWUgaW4gbWFp bgorCSMwICBnICh4PTIpIGF0IGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuY2M6MjMKKwkj MSAgMHgwMDAwMDAwMDAwNDAwNGFlIGluIG1haW4gKCkgYXQgZ2RiLmFyY2gvYW1kNjQtdGFpbGNh bGwtY3h4MS5jYzozMQorLT4KKwkjMCAgZyAoeD14QGVudHJ5PTIpIGF0IGdkYi5hcmNoL2FtZDY0 LXRhaWxjYWxsLWN4eDEuY2M6MjMKKwkjMSAgMHgwMDAwMDAwMDAwNDAwNWM4IGluIGYgKHg9eEBl bnRyeT0xKSBhdCBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLmNjOjIzCisJIzIgIDB4MDAw MDAwMDAwMDQwMDRhZSBpbiBtYWluICgpIGF0IGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEu Y2M6MzEKKworVGhlcmUgYXJlIHR3byBkaWZmZXJlbnQgZml4ZXMgYmVsb3cuICBUaGUgZmlyc3Qg b25lIG9ubHkgYWx3YXlzIHdvcmtzIGJ1dCBpdAorYWx3YXlzIHVzZXMgdGhlIGRlbWFuZ2xlZCBu YW1lLCB3aGljaCBpcyBub3QgZXhhY3QuICBUaGUgc2Vjb25kIGZpeCBwcm92aWRlcwordGhlIG1h bmdsZWQgbmFtZSAoaWYgYXZhaWxhYmxlKTsgdGhlIG1hbmdsZWQgbmFtZSB3b3VsZCBub3QgbmVl ZCB0aGUgZmlyc3QgZml4CitidXQgdGhlIG1hbmdsZWQgbmFtZSBpcyBzb21ldGltZXMgbm90IGF2 YWlsYWJsZSAtIGZvciBleGFtcGxlIGluIEZlZG9yYSBHQ0MuCisKK05vIHJlZ3Jlc3Npb25zIG9u IHt4ODZfNjQseDg2XzY0LW0zMixpNjg2fS1mZWRvcmExOXByZS1saW51eC1nbnUuCisKK1Byb2Jh Ymx5IG5vdGhpbmcgaW50ZXJlc3RpbmcsIEkgd2lsbCBjaGVjayBpdCBpbi4KKworCitUaGFua3Ms CitKYW4KKworCitnZGIvCisyMDEzLTAzLTAyICBKYW4gS3JhdG9jaHZpbCAgPGphbi5rcmF0b2No dmlsQHJlZGhhdC5jb20+CisKKwlGaXggZW50cnktdmFsdWVzIGluIEMrKyBhY3Jvc3MgQ1VzLgor CSogZHdhcmYybG9jLmMgKGNhbGxfc2l0ZV90b190YXJnZXRfYWRkcikgPEZJRUxEX0xPQ19LSU5E X1BIWVNOQU1FPjogVXNlCisJbG9va3VwX21pbmltYWxfc3ltYm9sLiAgQWRkIGEgY29tbWVudC4K KwkqIGR3YXJmMnJlYWQuYworCShyZWFkX2NhbGxfc2l0ZV9zY29wZSkgPGlzX3JlZl9hdHRyPiA8 ZGllX2lzX2RlY2xhcmF0aW9uPjogUHJlZmVyCisJRFdfQVRfbGlua2FnZV9uYW1lLgorCitnZGIv dGVzdHN1aXRlLworMjAxMy0wMy0wMiAgSmFuIEtyYXRvY2h2aWwgIDxqYW4ua3JhdG9jaHZpbEBy ZWRoYXQuY29tPgorCisJRml4IGVudHJ5LXZhbHVlcyBpbiBDKysgYWNyb3NzIENVcy4KKwkqIGdk Yi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eC5leHA6IE5ldyBmaWxlLgorCSogZ2RiLmFyY2gvYW1k NjQtdGFpbGNhbGwtY3h4MS5TOiBOZXcgZmlsZS4KKwkqIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxs LWN4eDEuY2M6IE5ldyBmaWxlLgorCSogZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5TOiBO ZXcgZmlsZS4KKwkqIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDIuY2M6IE5ldyBmaWxlLgor CitkaWZmIC0tZ2l0IGEvZ2RiL2R3YXJmMmxvYy5jIGIvZ2RiL2R3YXJmMmxvYy5jCitpbmRleCA4 YTYxYWU2Li5mMzAwZGYyIDEwMDY0NAorLS0tIGEvZ2RiL2R3YXJmMmxvYy5jCisrKysgYi9nZGIv ZHdhcmYybG9jLmMKK0BAIC01NDIsNyArNTQyLDkgQEAgY2FsbF9zaXRlX3RvX3RhcmdldF9hZGRy IChzdHJ1Y3QgZ2RiYXJjaCAqY2FsbF9zaXRlX2dkYmFyY2gsCisgCXN0cnVjdCBtaW5pbWFsX3N5 bWJvbCAqbXN5bTsKKyAKKyAJcGh5c25hbWUgPSBGSUVMRF9TVEFUSUNfUEhZU05BTUUgKGNhbGxf c2l0ZS0+dGFyZ2V0KTsKKy0JbXN5bSA9IGxvb2t1cF9taW5pbWFsX3N5bWJvbF90ZXh0IChwaHlz bmFtZSwgTlVMTCk7CisrCisrCS8qIEhhbmRsZSBib3RoIHRoZSBtYW5nbGVkIGFuZCBkZW1hbmds ZWQgUEhZU05BTUUuICAqLworKwltc3ltID0gbG9va3VwX21pbmltYWxfc3ltYm9sIChwaHlzbmFt ZSwgTlVMTCwgTlVMTCk7CisgCWlmIChtc3ltID09IE5VTEwpCisgCSAgeworIAkgICAgbXN5bSA9 IGxvb2t1cF9taW5pbWFsX3N5bWJvbF9ieV9wYyAoY2FsbF9zaXRlLT5wYyAtIDEpOworZGlmZiAt LWdpdCBhL2dkYi9kd2FyZjJyZWFkLmMgYi9nZGIvZHdhcmYycmVhZC5jCitpbmRleCBkZjYyOThi Li5mYWVlMWE4IDEwMDY0NAorLS0tIGEvZ2RiL2R3YXJmMnJlYWQuYworKysrIGIvZ2RiL2R3YXJm MnJlYWQuYworQEAgLTk4MTIsOSArOTgxMiwxOCBAQCByZWFkX2NhbGxfc2l0ZV9zY29wZSAoc3Ry dWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1KQorICAgICAgIGdkYl9hc3Nl cnQgKHRhcmdldF9jdS0+b2JqZmlsZSA9PSBvYmpmaWxlKTsKKyAgICAgICBpZiAoZGllX2lzX2Rl Y2xhcmF0aW9uICh0YXJnZXRfZGllLCB0YXJnZXRfY3UpKQorIAl7CistCSAgY29uc3QgY2hhciAq dGFyZ2V0X3BoeXNuYW1lOworLQorLQkgIHRhcmdldF9waHlzbmFtZSA9IGR3YXJmMl9waHlzbmFt ZSAoTlVMTCwgdGFyZ2V0X2RpZSwgdGFyZ2V0X2N1KTsKKysJICBjb25zdCBjaGFyICp0YXJnZXRf cGh5c25hbWUgPSBOVUxMOworKwkgIHN0cnVjdCBhdHRyaWJ1dGUgKnRhcmdldF9hdHRyOworKwor KwkgIC8qIFByZWZlciB0aGUgbWFuZ2xlZCBuYW1lOyBvdGhlcndpc2UgY29tcHV0ZSB0aGUgZGVt YW5nbGVkIG9uZS4gICovCisrCSAgdGFyZ2V0X2F0dHIgPSBkd2FyZjJfYXR0ciAodGFyZ2V0X2Rp ZSwgRFdfQVRfbGlua2FnZV9uYW1lLCB0YXJnZXRfY3UpOworKwkgIGlmICh0YXJnZXRfYXR0ciA9 PSBOVUxMKQorKwkgICAgdGFyZ2V0X2F0dHIgPSBkd2FyZjJfYXR0ciAodGFyZ2V0X2RpZSwgRFdf QVRfTUlQU19saW5rYWdlX25hbWUsCisrCQkJCSAgICAgICB0YXJnZXRfY3UpOworKwkgIGlmICh0 YXJnZXRfYXR0ciAhPSBOVUxMICYmIERXX1NUUklORyAodGFyZ2V0X2F0dHIpICE9IE5VTEwpCisr CSAgICB0YXJnZXRfcGh5c25hbWUgPSBEV19TVFJJTkcgKHRhcmdldF9hdHRyKTsKKysJICBlbHNl CisrCSAgICB0YXJnZXRfcGh5c25hbWUgPSBkd2FyZjJfcGh5c25hbWUgKE5VTEwsIHRhcmdldF9k aWUsIHRhcmdldF9jdSk7CisgCSAgaWYgKHRhcmdldF9waHlzbmFtZSA9PSBOVUxMKQorIAkgICAg Y29tcGxhaW50ICgmc3ltZmlsZV9jb21wbGFpbnRzLAorIAkJICAgICAgIF8oIkRXX0FUX0dOVV9j YWxsX3NpdGVfdGFyZ2V0IHRhcmdldCBESUUgaGFzIGludmFsaWQgIgorZGlmZiAtLWdpdCBhL2dk Yi90ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4LmV4cCBiL2dkYi90ZXN0c3Vp dGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4LmV4cAorbmV3IGZpbGUgbW9kZSAxMDA2NDQK K2luZGV4IDAwMDAwMDAuLmRiMmFiM2MKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3Vp dGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4LmV4cAorQEAgLTAsMCArMSwzNiBAQAorKyMg Q29weXJpZ2h0IChDKSAyMDEyLTIwMTMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisr IworKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKKysjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisrIyB0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorKyMgKGF0IHlv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysjCisrIyBUaGlzIHByb2dyYW0gaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysjIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisr IyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT ZWUgdGhlCisrIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgor KyMKKysjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlCisrIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2Vl IDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKysKKytzZXQgb3B0cyB7fQorK3N0YW5k YXJkX3Rlc3RmaWxlIGFtZDY0LXRhaWxjYWxsLWN4eDEuUyBhbWQ2NC10YWlsY2FsbC1jeHgyLlMK KysKKytpZiBbaW5mbyBleGlzdHMgQ09NUElMRV0geworKyAgICAjIG1ha2UgY2hlY2sgUlVOVEVT VEZMQUdTPSJnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHguZXhwIENPTVBJTEU9MSIKKysgICAg c3RhbmRhcmRfdGVzdGZpbGUgYW1kNjQtdGFpbGNhbGwtY3h4MS5jYyBhbWQ2NC10YWlsY2FsbC1j eHgyLmNjCisrICAgIGxhcHBlbmQgb3B0cyBkZWJ1ZyBvcHRpbWl6ZT0tTzIKKyt9IGVsc2VpZiB7 ICFbaXN0YXJnZXQgeDg2XzY0LSotKiBdIHx8ICFbaXNfbHA2NF90YXJnZXRdIH0geworKyAgICB2 ZXJib3NlICJTa2lwcGluZyAke3Rlc3RmaWxlfS4iCisrICAgIHJldHVybgorK30KKysKKytpZiB7 IFtwcmVwYXJlX2Zvcl90ZXN0aW5nICR7dGVzdGZpbGV9LmV4cCAke3Rlc3RmaWxlfSAiJHtzcmNm aWxlfSAke3NyY2ZpbGUyfSIgJG9wdHNdIH0geworKyAgICByZXR1cm4gLTEKKyt9CisrCisraWYg IVtydW50byBnXSB7CisrICAgIHJldHVybiAtMQorK30KKysKKytnZGJfdGVzdCAiYnQiICJcclxu IzAgK2cgXFwoeD14QGVudHJ5PTJcXCkgYXQgXFteXHJcblxdKlxyXG4jMSArMHhcWzAtOWEtZlxd KyBpbiBmIFxcKHg9eEBlbnRyeT0xXFwpIGF0IFxbXlxyXG5cXSpcclxuIzIgKzB4XFswLTlhLWZc XSsgaW4gbWFpbiAuKiIKK2RpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2FtZDY0 LXRhaWxjYWxsLWN4eDEuUyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwt Y3h4MS5TCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMC4uZDk4ODQ0NgorLS0t IC9kZXYvbnVsbAorKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1j eHgxLlMKK0BAIC0wLDAgKzEsMzY3IEBACisrLyogVGhpcyB0ZXN0Y2FzZSBpcyBwYXJ0IG9mIEdE QiwgdGhlIEdOVSBkZWJ1Z2dlci4KKysKKysgICBDb3B5cmlnaHQgMjAxMi0yMDEzIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLgorKworKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisrICAgaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKKysgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvcgorKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CisrCisrICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg d2lsbCBiZSB1c2VmdWwsCisrICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKysgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVT UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisrICAgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKysKKysgICBZb3Ugc2hvdWxkIGhhdmUgcmVj ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorKyAgIGFsb25n IHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNl bnNlcy8+LiAgKi8KKysKKysvKiBUaGlzIHNvdXJjZSBmaWxlIHdhcyBnZW5lcmF0ZWQgYnk6Cisr ICAgZysrIC1vIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuUyBnZGIuYXJjaC9hbWQ2NC10 YWlsY2FsbC1jeHgxLmNjIC1XYWxsIC1TIC1kQSAtTzIgLWcKKysgICBGZWRvcmEgR0NDIHdhcyB1 c2VkIGhlcmUgdG8gYWxzbyB0ZXN0IHRoZSBjYXNlIG9mIG1pc3NpbmcgRFdfQVRfbGlua2FnZV9u YW1lLgorKyAgICovCisrCisrCS5maWxlCSJhbWQ2NC10YWlsY2FsbC1jeHgxLmNjIgorKwkudGV4 dAorKy5MdGV4dDA6CisrCS5wMmFsaWduIDQsLDE1CisrCS5nbG9ibAlfWjFnaQorKwkudHlwZQlf WjFnaSwgQGZ1bmN0aW9uCisrX1oxZ2k6CisrLkxGQjA6CisrCS5maWxlIDEgImdkYi5hcmNoL2Ft ZDY0LXRhaWxjYWxsLWN4eDEuY2MiCisrCSMgZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5j YzoyMgorKwkubG9jIDEgMjIgMAorKwkuY2ZpX3N0YXJ0cHJvYworKy5MVkwwOgorKyMgQkxPQ0sg MiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBFTlRSWSBbMTAwLjAlXSAgKEZBTExUSFJVKQor KwkjIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuY2M6MjMKKysJLmxvYyAxIDIzIDAKKysJ bW92bAklZWRpLCB2KCVyaXApCisrIyBTVUNDOiBFWElUIFsxMDAuMCVdIAorKwlyZXQKKysJLmNm aV9lbmRwcm9jCisrLkxGRTA6CisrCS5zaXplCV9aMWdpLCAuLV9aMWdpCisrCS5zZWN0aW9uCS50 ZXh0LnN0YXJ0dXAsImF4IixAcHJvZ2JpdHMKKysJLnAyYWxpZ24gNCwsMTUKKysJLmdsb2JsCW1h aW4KKysJLnR5cGUJbWFpbiwgQGZ1bmN0aW9uCisrbWFpbjoKKysuTEZCMToKKysJIyBnZGIuYXJj aC9hbWQ2NC10YWlsY2FsbC1jeHgxLmNjOjMwCisrCS5sb2MgMSAzMCAwCisrCS5jZmlfc3RhcnRw cm9jCisrIyBCTE9DSyAyIGZyZXE6MTAwMDAgc2VxOjAKKysjIFBSRUQ6IEVOVFJZIFsxMDAuMCVd ICAoRkFMTFRIUlUpCisrCXN1YnEJJDgsICVyc3AKKysJLmNmaV9kZWZfY2ZhX29mZnNldCAxNgor KwkjIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuY2M6MzEKKysJLmxvYyAxIDMxIDAKKysJ bW92bAkkMSwgJWVkaQorKwljYWxsCV9aMWZpCisrLkxWTDE6CisrCSMgZ2RiLmFyY2gvYW1kNjQt dGFpbGNhbGwtY3h4MS5jYzozMgorKwkubG9jIDEgMzIgMAorKwl4b3JsCSVlYXgsICVlYXgKKysJ YWRkcQkkOCwgJXJzcAorKwkuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKysjIFNVQ0M6IEVYSVQgWzEw MC4wJV0gCisrCXJldAorKwkuY2ZpX2VuZHByb2MKKysuTEZFMToKKysJLnNpemUJbWFpbiwgLi1t YWluCisrCS5nbG9ibAl2CisrCS5ic3MKKysJLmFsaWduIDQKKysJLnR5cGUJdiwgQG9iamVjdAor Kwkuc2l6ZQl2LCA0CisrdjoKKysJLnplcm8JNAorKwkudGV4dAorKy5MZXRleHQwOgorKwkuc2Vj dGlvbgkuZGVidWdfaW5mbywiIixAcHJvZ2JpdHMKKysuTGRlYnVnX2luZm8wOgorKwkubG9uZwkw eGI0CSMgTGVuZ3RoIG9mIENvbXBpbGF0aW9uIFVuaXQgSW5mbworKwkudmFsdWUJMHg0CSMgRFdB UkYgdmVyc2lvbiBudW1iZXIKKysJLmxvbmcJLkxkZWJ1Z19hYmJyZXYwCSMgT2Zmc2V0IEludG8g QWJicmV2LiBTZWN0aW9uCisrCS5ieXRlCTB4OAkjIFBvaW50ZXIgU2l6ZSAoaW4gYnl0ZXMpCisr CS51bGViMTI4IDB4MQkjIChESUUgKDB4YikgRFdfVEFHX2NvbXBpbGVfdW5pdCkKKysJLmxvbmcJ LkxBU0YxCSMgRFdfQVRfcHJvZHVjZXI6ICJHTlUgQysrIDQuOC4wIDIwMTMwMjIwIChSZWQgSGF0 IDQuOC4wLTAuMTQpIC1tdHVuZT1nZW5lcmljIC1tYXJjaD14ODYtNjQgLWcgLU8yIgorKwkuYnl0 ZQkweDQJIyBEV19BVF9sYW5ndWFnZQorKwkubG9uZwkuTEFTRjIJIyBEV19BVF9uYW1lOiAiZ2Ri LmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYyIKKysJLmxvbmcJLkxBU0YzCSMgRFdfQVRfY29t cF9kaXI6ICIiCisrCS5sb25nCS5MZGVidWdfcmFuZ2VzMCswCSMgRFdfQVRfcmFuZ2VzCisrCS5x dWFkCTAJIyBEV19BVF9sb3dfcGMKKysJLmxvbmcJLkxkZWJ1Z19saW5lMAkjIERXX0FUX3N0bXRf bGlzdAorKwkudWxlYjEyOCAweDIJIyAoRElFICgweDI5KSBEV19UQUdfc3VicHJvZ3JhbSkKKysJ CQkjIERXX0FUX2V4dGVybmFsCisrCS5hc2NpaSAiZ1wwIgkjIERXX0FUX25hbWUKKysJLmJ5dGUJ MHgxCSMgRFdfQVRfZGVjbF9maWxlIChnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgxLmNjKQor KwkuYnl0ZQkweDE1CSMgRFdfQVRfZGVjbF9saW5lCisrCS5sb25nCS5MQVNGNAkjIERXX0FUX2xp bmthZ2VfbmFtZTogIl9aMWdpIgorKwkucXVhZAkuTEZCMAkjIERXX0FUX2xvd19wYworKwkucXVh ZAkuTEZFMC0uTEZCMAkjIERXX0FUX2hpZ2hfcGMKKysJLnVsZWIxMjggMHgxCSMgRFdfQVRfZnJh bWVfYmFzZQorKwkuYnl0ZQkweDljCSMgRFdfT1BfY2FsbF9mcmFtZV9jZmEKKysJCQkjIERXX0FU X0dOVV9hbGxfY2FsbF9zaXRlcworKwkubG9uZwkweDU0CSMgRFdfQVRfc2libGluZworKwkudWxl YjEyOCAweDMJIyAoRElFICgweDQ4KSBEV19UQUdfZm9ybWFsX3BhcmFtZXRlcikKKysJLmFzY2lp ICJ4XDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2ZpbGUgKGdkYi5h cmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuY2MpCisrCS5ieXRlCTB4MTUJIyBEV19BVF9kZWNsX2xp bmUKKysJLmxvbmcJMHg1NAkjIERXX0FUX3R5cGUKKysJLnVsZWIxMjggMHgxCSMgRFdfQVRfbG9j YXRpb24KKysJLmJ5dGUJMHg1NQkjIERXX09QX3JlZzUKKysJLmJ5dGUJMAkjIGVuZCBvZiBjaGls ZHJlbiBvZiBESUUgMHgyOQorKwkudWxlYjEyOCAweDQJIyAoRElFICgweDU0KSBEV19UQUdfYmFz ZV90eXBlKQorKwkuYnl0ZQkweDQJIyBEV19BVF9ieXRlX3NpemUKKysJLmJ5dGUJMHg1CSMgRFdf QVRfZW5jb2RpbmcKKysJLmFzY2lpICJpbnRcMCIJIyBEV19BVF9uYW1lCisrCS51bGViMTI4IDB4 NQkjIChESUUgKDB4NWIpIERXX1RBR19zdWJwcm9ncmFtKQorKwkJCSMgRFdfQVRfZXh0ZXJuYWwK KysJLmxvbmcJLkxBU0YwCSMgRFdfQVRfbmFtZTogIm1haW4iCisrCS5ieXRlCTB4MQkjIERXX0FU X2RlY2xfZmlsZSAoZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYykKKysJLmJ5dGUJMHgx ZAkjIERXX0FUX2RlY2xfbGluZQorKwkubG9uZwkweDU0CSMgRFdfQVRfdHlwZQorKwkucXVhZAku TEZCMQkjIERXX0FUX2xvd19wYworKwkucXVhZAkuTEZFMS0uTEZCMQkjIERXX0FUX2hpZ2hfcGMK KysJLnVsZWIxMjggMHgxCSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDljCSMgRFdfT1Bf Y2FsbF9mcmFtZV9jZmEKKysJCQkjIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcworKwkubG9uZwkw eDkwCSMgRFdfQVRfc2libGluZworKwkudWxlYjEyOCAweDYJIyAoRElFICgweDdjKSBEV19UQUdf R05VX2NhbGxfc2l0ZSkKKysJLnF1YWQJLkxWTDEJIyBEV19BVF9sb3dfcGMKKysJLmxvbmcJMHhh OAkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwkudWxlYjEyOCAweDcJIyAoRElFICgweDg5KSBE V19UQUdfR05VX2NhbGxfc2l0ZV9wYXJhbWV0ZXIpCisrCS51bGViMTI4IDB4MQkjIERXX0FUX2xv Y2F0aW9uCisrCS5ieXRlCTB4NTUJIyBEV19PUF9yZWc1CisrCS51bGViMTI4IDB4MQkjIERXX0FU X0dOVV9jYWxsX3NpdGVfdmFsdWUKKysJLmJ5dGUJMHgzMQkjIERXX09QX2xpdDEKKysJLmJ5dGUJ MAkjIGVuZCBvZiBjaGlsZHJlbiBvZiBESUUgMHg3YworKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxk cmVuIG9mIERJRSAweDViCisrCS51bGViMTI4IDB4OAkjIChESUUgKDB4OTApIERXX1RBR192YXJp YWJsZSkKKysJLmFzY2lpICJ2XDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9k ZWNsX2ZpbGUgKGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLWN4eDEuY2MpCisrCS5ieXRlCTB4MTIJ IyBEV19BVF9kZWNsX2xpbmUKKysJLmxvbmcJMHhhMwkjIERXX0FUX3R5cGUKKysJCQkjIERXX0FU X2V4dGVybmFsCisrCS51bGViMTI4IDB4OQkjIERXX0FUX2xvY2F0aW9uCisrCS5ieXRlCTB4Mwkj IERXX09QX2FkZHIKKysJLnF1YWQJdgorKwkudWxlYjEyOCAweDkJIyAoRElFICgweGEzKSBEV19U QUdfdm9sYXRpbGVfdHlwZSkKKysJLmxvbmcJMHg1NAkjIERXX0FUX3R5cGUKKysJLnVsZWIxMjgg MHhhCSMgKERJRSAoMHhhOCkgRFdfVEFHX3N1YnByb2dyYW0pCisrCQkJIyBEV19BVF9leHRlcm5h bAorKwkuYXNjaWkgImZcMCIJIyBEV19BVF9uYW1lCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xf ZmlsZSAoZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYykKKysJLmJ5dGUJMHgxYQkjIERX X0FUX2RlY2xfbGluZQorKwkubG9uZwkuTEFTRjUJIyBEV19BVF9saW5rYWdlX25hbWU6ICJfWjFm aSIKKysJCQkjIERXX0FUX2RlY2xhcmF0aW9uCisrCS51bGViMTI4IDB4YgkjIChESUUgKDB4YjEp IERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwkubG9uZwkweDU0CSMgRFdfQVRfdHlwZQorKwku Ynl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweGE4CisrCS5ieXRlCTAJIyBlbmQgb2Yg Y2hpbGRyZW4gb2YgRElFIDB4YgorKwkuc2VjdGlvbgkuZGVidWdfYWJicmV2LCIiLEBwcm9nYml0 cworKy5MZGVidWdfYWJicmV2MDoKKysJLnVsZWIxMjggMHgxCSMgKGFiYnJldiBjb2RlKQorKwku dWxlYjEyOCAweDExCSMgKFRBRzogRFdfVEFHX2NvbXBpbGVfdW5pdCkKKysJLmJ5dGUJMHgxCSMg RFdfY2hpbGRyZW5feWVzCisrCS51bGViMTI4IDB4MjUJIyAoRFdfQVRfcHJvZHVjZXIpCisrCS51 bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisrCS51bGViMTI4IDB4MTMJIyAoRFdfQVRfbGFu Z3VhZ2UpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDMJ IyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIx MjggMHgxYgkjIChEV19BVF9jb21wX2RpcikKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3Ry cCkKKysJLnVsZWIxMjggMHg1NQkjIChEV19BVF9yYW5nZXMpCisrCS51bGViMTI4IDB4MTcJIyAo RFdfRk9STV9zZWNfb2Zmc2V0KQorKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJ LnVsZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgxMAkjIChEV19BVF9z dG10X2xpc3QpCisrCS51bGViMTI4IDB4MTcJIyAoRFdfRk9STV9zZWNfb2Zmc2V0KQorKwkuYnl0 ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHgyCSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEy OCAweDJlCSMgKFRBRzogRFdfVEFHX3N1YnByb2dyYW0pCisrCS5ieXRlCTB4MQkjIERXX2NoaWxk cmVuX3llcworKwkudWxlYjEyOCAweDNmCSMgKERXX0FUX2V4dGVybmFsKQorKwkudWxlYjEyOCAw eDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDMJIyAoRFdfQVRfbmFt ZSkKKysJLnVsZWIxMjggMHg4CSMgKERXX0ZPUk1fc3RyaW5nKQorKwkudWxlYjEyOCAweDNhCSMg KERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51 bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5lKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9S TV9kYXRhMSkKKysJLnVsZWIxMjggMHg2ZQkjIChEV19BVF9saW5rYWdlX25hbWUpCisrCS51bGVi MTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93X3Bj KQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEyCSMgKERX X0FUX2hpZ2hfcGMpCisrCS51bGViMTI4IDB4NwkjIChEV19GT1JNX2RhdGE4KQorKwkudWxlYjEy OCAweDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9STV9l eHBybG9jKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzKQor KwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDEJ IyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS5i eXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDMJIyAoYWJicmV2IGNvZGUpCisrCS51bGVi MTI4IDB4NQkjIChUQUc6IERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwkuYnl0ZQkwCSMgRFdf Y2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4 OAkjIChEV19GT1JNX3N0cmluZykKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUp CisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERX X0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGVi MTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQp CisrCS51bGViMTI4IDB4MgkjIChEV19BVF9sb2NhdGlvbikKKysJLnVsZWIxMjggMHgxOAkjIChE V19GT1JNX2V4cHJsb2MpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDQJIyAo YWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MjQJIyAoVEFHOiBEV19UQUdfYmFzZV90eXBlKQor KwkuYnl0ZQkwCSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHhiCSMgKERXX0FUX2J5dGVf c2l6ZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2UJ IyAoRFdfQVRfZW5jb2RpbmcpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwku dWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHg4CSMgKERXX0ZPUk1fc3Ry aW5nKQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHg1CSMgKGFiYnJldiBjb2Rl KQorKwkudWxlYjEyOCAweDJlCSMgKFRBRzogRFdfVEFHX3N1YnByb2dyYW0pCisrCS5ieXRlCTB4 MQkjIERXX2NoaWxkcmVuX3llcworKwkudWxlYjEyOCAweDNmCSMgKERXX0FUX2V4dGVybmFsKQor KwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDMJ IyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIx MjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2Rh dGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhi CSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVs ZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93 X3BjKQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEyCSMg KERXX0FUX2hpZ2hfcGMpCisrCS51bGViMTI4IDB4NwkjIChEV19GT1JNX2RhdGE4KQorKwkudWxl YjEyOCAweDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9S TV9leHBybG9jKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVz KQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAw eDEJIyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisr CS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDYJIyAoYWJicmV2IGNvZGUpCisrCS51 bGViMTI4IDB4NDEwOQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkuYnl0ZQkweDEJ IyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51 bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MzEJIyAoRFdfQVRfYWJz dHJhY3Rfb3JpZ2luKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLmJ5dGUJ MAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4NwkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjgg MHg0MTBhCSMgKFRBRzogRFdfVEFHX0dOVV9jYWxsX3NpdGVfcGFyYW1ldGVyKQorKwkuYnl0ZQkw CSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgyCSMgKERXX0FUX2xvY2F0aW9uKQorKwku dWxlYjEyOCAweDE4CSMgKERXX0ZPUk1fZXhwcmxvYykKKysJLnVsZWIxMjggMHgyMTExCSMgKERX X0FUX0dOVV9jYWxsX3NpdGVfdmFsdWUpCisrCS51bGViMTI4IDB4MTgJIyAoRFdfRk9STV9leHBy bG9jKQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHg4CSMgKGFiYnJldiBjb2Rl KQorKwkudWxlYjEyOCAweDM0CSMgKFRBRzogRFdfVEFHX3ZhcmlhYmxlKQorKwkuYnl0ZQkwCSMg RFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4 IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2Zp bGUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMg KERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51 bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3Jl ZjQpCisrCS51bGViMTI4IDB4M2YJIyAoRFdfQVRfZXh0ZXJuYWwpCisrCS51bGViMTI4IDB4MTkJ IyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4MgkjIChEV19BVF9sb2NhdGlv bikKKysJLnVsZWIxMjggMHgxOAkjIChEV19GT1JNX2V4cHJsb2MpCisrCS5ieXRlCTAKKysJLmJ5 dGUJMAorKwkudWxlYjEyOCAweDkJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MzUJIyAo VEFHOiBEV19UQUdfdm9sYXRpbGVfdHlwZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisr CS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JN X3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweGEJIyAoYWJicmV2IGNv ZGUpCisrCS51bGViMTI4IDB4MmUJIyAoVEFHOiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJ MHgxCSMgRFdfY2hpbGRyZW5feWVzCisrCS51bGViMTI4IDB4M2YJIyAoRFdfQVRfZXh0ZXJuYWwp CisrCS51bGViMTI4IDB4MTkJIyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4 MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweDgJIyAoRFdfRk9STV9zdHJpbmcpCisrCS51 bGViMTI4IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9S TV9kYXRhMSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUpCisrCS51bGViMTI4 IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDZlCSMgKERXX0FUX2xpbmthZ2Vf bmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgzYwkj IChEV19BVF9kZWNsYXJhdGlvbikKKysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJl c2VudCkKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4YgkjIChhYmJyZXYgY29k ZSkKKysJLnVsZWIxMjggMHg1CSMgKFRBRzogRFdfVEFHX2Zvcm1hbF9wYXJhbWV0ZXIpCisrCS5i eXRlCTAJIyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisr CS51bGViMTI4IDB4MTMJIyAoRFdfRk9STV9yZWY0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJ LmJ5dGUJMAorKwkuc2VjdGlvbgkuZGVidWdfYXJhbmdlcywiIixAcHJvZ2JpdHMKKysJLmxvbmcJ MHgzYwkjIExlbmd0aCBvZiBBZGRyZXNzIFJhbmdlcyBJbmZvCisrCS52YWx1ZQkweDIJIyBEV0FS RiBWZXJzaW9uCisrCS5sb25nCS5MZGVidWdfaW5mbzAJIyBPZmZzZXQgb2YgQ29tcGlsYXRpb24g VW5pdCBJbmZvCisrCS5ieXRlCTB4OAkjIFNpemUgb2YgQWRkcmVzcworKwkuYnl0ZQkwCSMgU2l6 ZSBvZiBTZWdtZW50IERlc2NyaXB0b3IKKysJLnZhbHVlCTAJIyBQYWQgdG8gMTYgYnl0ZSBib3Vu ZGFyeQorKwkudmFsdWUJMAorKwkucXVhZAkuTHRleHQwCSMgQWRkcmVzcworKwkucXVhZAkuTGV0 ZXh0MC0uTHRleHQwCSMgTGVuZ3RoCisrCS5xdWFkCS5MRkIxCSMgQWRkcmVzcworKwkucXVhZAku TEZFMS0uTEZCMQkjIExlbmd0aAorKwkucXVhZAkwCisrCS5xdWFkCTAKKysJLnNlY3Rpb24JLmRl YnVnX3JhbmdlcywiIixAcHJvZ2JpdHMKKysuTGRlYnVnX3JhbmdlczA6CisrCS5xdWFkCS5MdGV4 dDAJIyBPZmZzZXQgMAorKwkucXVhZAkuTGV0ZXh0MAorKwkucXVhZAkuTEZCMQkjIE9mZnNldCAw eDEwCisrCS5xdWFkCS5MRkUxCisrCS5xdWFkCTAKKysJLnF1YWQJMAorKwkuc2VjdGlvbgkuZGVi dWdfbGluZSwiIixAcHJvZ2JpdHMKKysuTGRlYnVnX2xpbmUwOgorKwkuc2VjdGlvbgkuZGVidWdf c3RyLCJNUyIsQHByb2diaXRzLDEKKysuTEFTRjQ6CisrCS5zdHJpbmcJIl9aMWdpIgorKy5MQVNG MzoKKysJLnN0cmluZwkiIgorKy5MQVNGMjoKKysJLnN0cmluZwkiZ2RiLmFyY2gvYW1kNjQtdGFp bGNhbGwtY3h4MS5jYyIKKysuTEFTRjE6CisrCS5zdHJpbmcJIkdOVSBDKysgNC44LjAgMjAxMzAy MjAgKFJlZCBIYXQgNC44LjAtMC4xNCkgLW10dW5lPWdlbmVyaWMgLW1hcmNoPXg4Ni02NCAtZyAt TzIiCisrLkxBU0YwOgorKwkuc3RyaW5nCSJtYWluIgorKy5MQVNGNToKKysJLnN0cmluZwkiX1ox ZmkiCisrCS5pZGVudAkiR0NDOiAoR05VKSA0LjguMCAyMDEzMDIyMCAoUmVkIEhhdCA0LjguMC0w LjE0KSIKKysJLnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cworZGlmZiAtLWdp dCBhL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYyBiL2dkYi90 ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYworbmV3IGZpbGUgbW9kZSAx MDA2NDQKK2luZGV4IDAwMDAwMDAuLjdhZjk5MzYKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90 ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4MS5jYworQEAgLTAsMCArMSwzMiBA QAorKy8qIFRoaXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisr CisrICAgQ29weXJpZ2h0IDIwMTMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisrCisr ICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkKKysgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisrICAgKGF0IHlv dXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysKKysgICBUaGlzIHByb2dyYW0gaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysgICBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgor KyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g IFNlZSB0aGUKKysgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz LgorKworKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlCisrICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3Qs IHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworKworK3ZvbGF0aWxlIGlu dCB2OworKworK19fYXR0cmlidXRlX18gKChub2lubGluZSwgbm9jbG9uZSkpIHZvaWQKKytnIChp bnQgeCkKKyt7CisrICB2ID0geDsKKyt9CisrCisrZXh0ZXJuIHZvaWQgZiAoaW50IHgpOworKwor K2ludAorK21haW4gKCkKKyt7CisrICBmICgxKTsKKyt9CitkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3Rz dWl0ZS9nZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLlMgYi9nZGIvdGVzdHN1aXRlL2dkYi5h cmNoL2FtZDY0LXRhaWxjYWxsLWN4eDIuUworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAuLjhhMjZkNmYKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmFy Y2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5TCitAQCAtMCwwICsxLDI3NiBAQAorKy8qIFRoaXMgdGVz dGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisrCisrICAgQ29weXJpZ2h0 IDIwMTItMjAxMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKysKKysgICBUaGlzIHBy b2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQorKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisrICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKysgICAoYXQgeW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgorKworKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorKyAgIGJ1dCBXSVRIT1VUIEFOWSBX QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrICAgTUVSQ0hB TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQor KyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisrCisrICAg WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UKKysgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRw Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisrCisrLyogVGhpcyBzb3VyY2UgZmlsZSB3 YXMgZ2VuZXJhdGVkIGJ5OgorKyAgIGcrKyAtbyBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgy LlMgZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5jYyAtV2FsbCAtUyAtZEEgLU8yIC1nCisr ICAgRmVkb3JhIEdDQyB3YXMgdXNlZCBoZXJlIHRvIGFsc28gdGVzdCB0aGUgY2FzZSBvZiBtaXNz aW5nIERXX0FUX2xpbmthZ2VfbmFtZS4KKysgICAqLworKworKwkuZmlsZQkiYW1kNjQtdGFpbGNh bGwtY3h4Mi5jYyIKKysJLnRleHQKKysuTHRleHQwOgorKwkucDJhbGlnbiA0LCwxNQorKwkuZ2xv YmwJX1oxZmkKKysJLnR5cGUJX1oxZmksIEBmdW5jdGlvbgorK19aMWZpOgorKy5MRkIwOgorKwku ZmlsZSAxICJnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLmNjIgorKwkjIGdkYi5hcmNoL2Ft ZDY0LXRhaWxjYWxsLWN4eDIuY2M6MjIKKysJLmxvYyAxIDIyIDAKKysJLmNmaV9zdGFydHByb2MK KysuTFZMMDoKKysjIEJMT0NLIDIgZnJlcToxMDAwMCBzZXE6MAorKyMgUFJFRDogRU5UUlkgWzEw MC4wJV0gIChGQUxMVEhSVSkKKysJIyBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLmNjOjIz CisrCS5sb2MgMSAyMyAwCisrCWFkZGwJJDEsICVlZGkKKysuTFZMMToKKysJam1wCV9aMWdpCisr LkxWTDI6CisrIyBTVUNDOiBFWElUIFsxMDAuMCVdICAoQUJOT1JNQUwsU0lCQ0FMTCkKKysJLmNm aV9lbmRwcm9jCisrLkxGRTA6CisrCS5zaXplCV9aMWZpLCAuLV9aMWZpCisrLkxldGV4dDA6Cisr CS5zZWN0aW9uCS5kZWJ1Z19pbmZvLCIiLEBwcm9nYml0cworKy5MZGVidWdfaW5mbzA6CisrCS5s b25nCTB4ODQJIyBMZW5ndGggb2YgQ29tcGlsYXRpb24gVW5pdCBJbmZvCisrCS52YWx1ZQkweDQJ IyBEV0FSRiB2ZXJzaW9uIG51bWJlcgorKwkubG9uZwkuTGRlYnVnX2FiYnJldjAJIyBPZmZzZXQg SW50byBBYmJyZXYuIFNlY3Rpb24KKysJLmJ5dGUJMHg4CSMgUG9pbnRlciBTaXplIChpbiBieXRl cykKKysJLnVsZWIxMjggMHgxCSMgKERJRSAoMHhiKSBEV19UQUdfY29tcGlsZV91bml0KQorKwku bG9uZwkuTEFTRjAJIyBEV19BVF9wcm9kdWNlcjogIkdOVSBDKysgNC44LjAgMjAxMzAyMjAgKFJl ZCBIYXQgNC44LjAtMC4xNCkgLW10dW5lPWdlbmVyaWMgLW1hcmNoPXg4Ni02NCAtZyAtTzIiCisr CS5ieXRlCTB4NAkjIERXX0FUX2xhbmd1YWdlCisrCS5sb25nCS5MQVNGMQkjIERXX0FUX25hbWU6 ICJnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLmNjIgorKwkubG9uZwkuTEFTRjIJIyBEV19B VF9jb21wX2RpcjogIiIKKysJLnF1YWQJLkx0ZXh0MAkjIERXX0FUX2xvd19wYworKwkucXVhZAku TGV0ZXh0MC0uTHRleHQwCSMgRFdfQVRfaGlnaF9wYworKwkubG9uZwkuTGRlYnVnX2xpbmUwCSMg RFdfQVRfc3RtdF9saXN0CisrCS51bGViMTI4IDB4MgkjIChESUUgKDB4MmQpIERXX1RBR19zdWJw cm9ncmFtKQorKwkJCSMgRFdfQVRfZXh0ZXJuYWwKKysJLmFzY2lpICJmXDAiCSMgRFdfQVRfbmFt ZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2ZpbGUgKGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxs LWN4eDIuY2MpCisrCS5ieXRlCTB4MTUJIyBEV19BVF9kZWNsX2xpbmUKKysJLmxvbmcJLkxBU0Yz CSMgRFdfQVRfbGlua2FnZV9uYW1lOiAiX1oxZmkiCisrCS5xdWFkCS5MRkIwCSMgRFdfQVRfbG93 X3BjCisrCS5xdWFkCS5MRkUwLS5MRkIwCSMgRFdfQVRfaGlnaF9wYworKwkudWxlYjEyOCAweDEJ IyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4OWMJIyBEV19PUF9jYWxsX2ZyYW1lX2NmYQor KwkJCSMgRFdfQVRfR05VX2FsbF9jYWxsX3NpdGVzCisrCS5sb25nCTB4NzEJIyBEV19BVF9zaWJs aW5nCisrCS51bGViMTI4IDB4MwkjIChESUUgKDB4NGMpIERXX1RBR19mb3JtYWxfcGFyYW1ldGVy KQorKwkuYXNjaWkgInhcMCIJIyBEV19BVF9uYW1lCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xf ZmlsZSAoZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5jYykKKysJLmJ5dGUJMHgxNQkjIERX X0FUX2RlY2xfbGluZQorKwkubG9uZwkweDcxCSMgRFdfQVRfdHlwZQorKwkubG9uZwkuTExTVDAJ IyBEV19BVF9sb2NhdGlvbgorKwkudWxlYjEyOCAweDQJIyAoRElFICgweDU5KSBEV19UQUdfR05V X2NhbGxfc2l0ZSkKKysJLnF1YWQJLkxWTDIJIyBEV19BVF9sb3dfcGMKKysJCQkjIERXX0FUX0dO VV90YWlsX2NhbGwKKysJLmxvbmcJMHg3OAkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwkudWxl YjEyOCAweDUJIyAoRElFICgweDY2KSBEV19UQUdfR05VX2NhbGxfc2l0ZV9wYXJhbWV0ZXIpCisr CS51bGViMTI4IDB4MQkjIERXX0FUX2xvY2F0aW9uCisrCS5ieXRlCTB4NTUJIyBEV19PUF9yZWc1 CisrCS51bGViMTI4IDB4NQkjIERXX0FUX0dOVV9jYWxsX3NpdGVfdmFsdWUKKysJLmJ5dGUJMHhm MwkjIERXX09QX0dOVV9lbnRyeV92YWx1ZQorKwkudWxlYjEyOCAweDEKKysJLmJ5dGUJMHg1NQkj IERXX09QX3JlZzUKKysJLmJ5dGUJMHgyMwkjIERXX09QX3BsdXNfdWNvbnN0CisrCS51bGViMTI4 IDB4MQorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDU5CisrCS5ieXRlCTAJ IyBlbmQgb2YgY2hpbGRyZW4gb2YgRElFIDB4MmQKKysJLnVsZWIxMjggMHg2CSMgKERJRSAoMHg3 MSkgRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMHg0CSMgRFdfQVRfYnl0ZV9zaXplCisrCS5i eXRlCTB4NQkjIERXX0FUX2VuY29kaW5nCisrCS5hc2NpaSAiaW50XDAiCSMgRFdfQVRfbmFtZQor KwkudWxlYjEyOCAweDcJIyAoRElFICgweDc4KSBEV19UQUdfc3VicHJvZ3JhbSkKKysJCQkjIERX X0FUX2V4dGVybmFsCisrCS5hc2NpaSAiZ1wwIgkjIERXX0FUX25hbWUKKysJLmJ5dGUJMHgxCSMg RFdfQVRfZGVjbF9maWxlIChnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1jeHgyLmNjKQorKwkuYnl0 ZQkweDEyCSMgRFdfQVRfZGVjbF9saW5lCisrCS5sb25nCS5MQVNGNAkjIERXX0FUX2xpbmthZ2Vf bmFtZTogIl9aMWdpIgorKwkJCSMgRFdfQVRfZGVjbGFyYXRpb24KKysJLnVsZWIxMjggMHg4CSMg KERJRSAoMHg4MSkgRFdfVEFHX2Zvcm1hbF9wYXJhbWV0ZXIpCisrCS5sb25nCTB4NzEJIyBEV19B VF90eXBlCisrCS5ieXRlCTAJIyBlbmQgb2YgY2hpbGRyZW4gb2YgRElFIDB4NzgKKysJLmJ5dGUJ MAkjIGVuZCBvZiBjaGlsZHJlbiBvZiBESUUgMHhiCisrCS5zZWN0aW9uCS5kZWJ1Z19hYmJyZXYs IiIsQHByb2diaXRzCisrLkxkZWJ1Z19hYmJyZXYwOgorKwkudWxlYjEyOCAweDEJIyAoYWJicmV2 IGNvZGUpCisrCS51bGViMTI4IDB4MTEJIyAoVEFHOiBEV19UQUdfY29tcGlsZV91bml0KQorKwku Ynl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjggMHgyNQkjIChEV19BVF9wcm9k dWNlcikKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgxMwkj IChEV19BVF9sYW5ndWFnZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51 bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJw KQorKwkudWxlYjEyOCAweDFiCSMgKERXX0FUX2NvbXBfZGlyKQorKwkudWxlYjEyOCAweGUJIyAo RFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJLnVsZWIx MjggMHgxCSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHgxMgkjIChEV19BVF9oaWdoX3Bj KQorKwkudWxlYjEyOCAweDcJIyAoRFdfRk9STV9kYXRhOCkKKysJLnVsZWIxMjggMHgxMAkjIChE V19BVF9zdG10X2xpc3QpCisrCS51bGViMTI4IDB4MTcJIyAoRFdfRk9STV9zZWNfb2Zmc2V0KQor KwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHgyCSMgKGFiYnJldiBjb2RlKQorKwku dWxlYjEyOCAweDJlCSMgKFRBRzogRFdfVEFHX3N1YnByb2dyYW0pCisrCS5ieXRlCTB4MQkjIERX X2NoaWxkcmVuX3llcworKwkudWxlYjEyOCAweDNmCSMgKERXX0FUX2V4dGVybmFsKQorKwkudWxl YjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDMJIyAoRFdf QVRfbmFtZSkKKysJLnVsZWIxMjggMHg4CSMgKERXX0ZPUk1fc3RyaW5nKQorKwkudWxlYjEyOCAw eDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEp CisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5lKQorKwkudWxlYjEyOCAweGIJIyAo RFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHg2ZQkjIChEV19BVF9saW5rYWdlX25hbWUpCisr CS51bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0cnApCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRf bG93X3BjKQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEy CSMgKERXX0FUX2hpZ2hfcGMpCisrCS51bGViMTI4IDB4NwkjIChEV19GT1JNX2RhdGE4KQorKwku dWxlYjEyOCAweDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51bGViMTI4IDB4MTgJIyAoRFdf Rk9STV9leHBybG9jKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRfR05VX2FsbF9jYWxsX3Np dGVzKQorKwkudWxlYjEyOCAweDE5CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEy OCAweDEJIyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQp CisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDMJIyAoYWJicmV2IGNvZGUpCisr CS51bGViMTI4IDB4NQkjIChUQUc6IERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwkuYnl0ZQkw CSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGVi MTI4IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNs X2ZpbGUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNi CSMgKERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisr CS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JN X3JlZjQpCisrCS51bGViMTI4IDB4MgkjIChEV19BVF9sb2NhdGlvbikKKysJLnVsZWIxMjggMHgx NwkjIChEV19GT1JNX3NlY19vZmZzZXQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEy OCAweDQJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4NDEwOQkjIChUQUc6IERXX1RBR19H TlVfY2FsbF9zaXRlKQorKwkuYnl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjgg MHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisr CS51bGViMTI4IDB4MjExNQkjIChEV19BVF9HTlVfdGFpbF9jYWxsKQorKwkudWxlYjEyOCAweDE5 CSMgKERXX0ZPUk1fZmxhZ19wcmVzZW50KQorKwkudWxlYjEyOCAweDMxCSMgKERXX0FUX2Fic3Ry YWN0X29yaWdpbikKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAK KysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDUJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4 NDEwYQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9zaXRlX3BhcmFtZXRlcikKKysJLmJ5dGUJMAkj IERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4IDB4MgkjIChEV19BVF9sb2NhdGlvbikKKysJLnVs ZWIxMjggMHgxOAkjIChEV19GT1JNX2V4cHJsb2MpCisrCS51bGViMTI4IDB4MjExMQkjIChEV19B VF9HTlVfY2FsbF9zaXRlX3ZhbHVlKQorKwkudWxlYjEyOCAweDE4CSMgKERXX0ZPUk1fZXhwcmxv YykKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4NgkjIChhYmJyZXYgY29kZSkK KysJLnVsZWIxMjggMHgyNAkjIChUQUc6IERXX1RBR19iYXNlX3R5cGUpCisrCS5ieXRlCTAJIyBE V19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweGIJIyAoRFdfQVRfYnl0ZV9zaXplKQorKwkudWxl YjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzZQkjIChEV19BVF9lbmNv ZGluZykKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4Mwkj IChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweDgJIyAoRFdfRk9STV9zdHJpbmcpCisrCS5ieXRl CTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDcJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4 IDB4MmUJIyAoVEFHOiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRy ZW5feWVzCisrCS51bGViMTI4IDB4M2YJIyAoRFdfQVRfZXh0ZXJuYWwpCisrCS51bGViMTI4IDB4 MTkJIyAoRFdfRk9STV9mbGFnX3ByZXNlbnQpCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1l KQorKwkudWxlYjEyOCAweDgJIyAoRFdfRk9STV9zdHJpbmcpCisrCS51bGViMTI4IDB4M2EJIyAo RFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVs ZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JN X2RhdGExKQorKwkudWxlYjEyOCAweDZlCSMgKERXX0FUX2xpbmthZ2VfbmFtZSkKKysJLnVsZWIx MjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgzYwkjIChEV19BVF9kZWNsYXJh dGlvbikKKysJLnVsZWIxMjggMHgxOQkjIChEV19GT1JNX2ZsYWdfcHJlc2VudCkKKysJLmJ5dGUJ MAorKwkuYnl0ZQkwCisrCS51bGViMTI4IDB4OAkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjgg MHg1CSMgKFRBRzogRFdfVEFHX2Zvcm1hbF9wYXJhbWV0ZXIpCisrCS5ieXRlCTAJIyBEV19jaGls ZHJlbl9ubworKwkudWxlYjEyOCAweDQ5CSMgKERXX0FUX3R5cGUpCisrCS51bGViMTI4IDB4MTMJ IyAoRFdfRk9STV9yZWY0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkuc2Vj dGlvbgkuZGVidWdfbG9jLCIiLEBwcm9nYml0cworKy5MZGVidWdfbG9jMDoKKysuTExTVDA6Cisr CS5xdWFkCS5MVkwwLS5MdGV4dDAJIyBMb2NhdGlvbiBsaXN0IGJlZ2luIGFkZHJlc3MgKCouTExT VDApCisrCS5xdWFkCS5MVkwxLS5MdGV4dDAJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRyZXNzICgq LkxMU1QwKQorKwkudmFsdWUJMHgxCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisrCS5ieXRl CTB4NTUJIyBEV19PUF9yZWc1CisrCS5xdWFkCS5MVkwxLS5MdGV4dDAJIyBMb2NhdGlvbiBsaXN0 IGJlZ2luIGFkZHJlc3MgKCouTExTVDApCisrCS5xdWFkCS5MVkwyLTEtLkx0ZXh0MAkjIExvY2F0 aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExTVDApCisrCS52YWx1ZQkweDMJIyBMb2NhdGlvbiBl eHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHg3NQkjIERXX09QX2JyZWc1CisrCS5zbGViMTI4IC0x CisrCS5ieXRlCTB4OWYJIyBEV19PUF9zdGFja192YWx1ZQorKwkucXVhZAkuTFZMMi0xLS5MdGV4 dDAJIyBMb2NhdGlvbiBsaXN0IGJlZ2luIGFkZHJlc3MgKCouTExTVDApCisrCS5xdWFkCS5MRkUw LS5MdGV4dDAJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRyZXNzICgqLkxMU1QwKQorKwkudmFsdWUJ MHg0CSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisrCS5ieXRlCTB4ZjMJIyBEV19PUF9HTlVf ZW50cnlfdmFsdWUKKysJLnVsZWIxMjggMHgxCisrCS5ieXRlCTB4NTUJIyBEV19PUF9yZWc1Cisr CS5ieXRlCTB4OWYJIyBEV19PUF9zdGFja192YWx1ZQorKwkucXVhZAkwCSMgTG9jYXRpb24gbGlz dCB0ZXJtaW5hdG9yIGJlZ2luICgqLkxMU1QwKQorKwkucXVhZAkwCSMgTG9jYXRpb24gbGlzdCB0 ZXJtaW5hdG9yIGVuZCAoKi5MTFNUMCkKKysJLnNlY3Rpb24JLmRlYnVnX2FyYW5nZXMsIiIsQHBy b2diaXRzCisrCS5sb25nCTB4MmMJIyBMZW5ndGggb2YgQWRkcmVzcyBSYW5nZXMgSW5mbworKwku dmFsdWUJMHgyCSMgRFdBUkYgVmVyc2lvbgorKwkubG9uZwkuTGRlYnVnX2luZm8wCSMgT2Zmc2V0 IG9mIENvbXBpbGF0aW9uIFVuaXQgSW5mbworKwkuYnl0ZQkweDgJIyBTaXplIG9mIEFkZHJlc3MK KysJLmJ5dGUJMAkjIFNpemUgb2YgU2VnbWVudCBEZXNjcmlwdG9yCisrCS52YWx1ZQkwCSMgUGFk IHRvIDE2IGJ5dGUgYm91bmRhcnkKKysJLnZhbHVlCTAKKysJLnF1YWQJLkx0ZXh0MAkjIEFkZHJl c3MKKysJLnF1YWQJLkxldGV4dDAtLkx0ZXh0MAkjIExlbmd0aAorKwkucXVhZAkwCisrCS5xdWFk CTAKKysJLnNlY3Rpb24JLmRlYnVnX2xpbmUsIiIsQHByb2diaXRzCisrLkxkZWJ1Z19saW5lMDoK KysJLnNlY3Rpb24JLmRlYnVnX3N0ciwiTVMiLEBwcm9nYml0cywxCisrLkxBU0YwOgorKwkuc3Ry aW5nCSJHTlUgQysrIDQuOC4wIDIwMTMwMjIwIChSZWQgSGF0IDQuOC4wLTAuMTQpIC1tdHVuZT1n ZW5lcmljIC1tYXJjaD14ODYtNjQgLWcgLU8yIgorKy5MQVNGMjoKKysJLnN0cmluZwkiIgorKy5M QVNGMzoKKysJLnN0cmluZwkiX1oxZmkiCisrLkxBU0YxOgorKwkuc3RyaW5nCSJnZGIuYXJjaC9h bWQ2NC10YWlsY2FsbC1jeHgyLmNjIgorKy5MQVNGNDoKKysJLnN0cmluZwkiX1oxZ2kiCisrCS5p ZGVudAkiR0NDOiAoR05VKSA0LjguMCAyMDEzMDIyMCAoUmVkIEhhdCA0LjguMC0wLjE0KSIKKysJ LnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cworZGlmZiAtLWdpdCBhL2dkYi90 ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5jYyBiL2dkYi90ZXN0c3VpdGUv Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5jYworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAuLjIzMmY0ZmIKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3VpdGUv Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtY3h4Mi5jYworQEAgLTAsMCArMSwyNCBAQAorKy8qIFRo aXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisrCisrICAgQ29w eXJpZ2h0IDIwMTMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisrCisrICAgVGhpcyBw cm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKKysgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisrICAgKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysKKysgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysgICBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorKyAgIE1FUkNI QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUK KysgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKworKyAg IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlCisrICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0 cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworKworK2V4dGVybiB2b2lkIGcgKGludCB4 KTsKKysKKytfX2F0dHJpYnV0ZV9fICgobm9pbmxpbmUsIG5vY2xvbmUpKSB2b2lkCisrZiAoaW50 IHgpCisreworKyAgZyAoeCArIDEpOworK30KKwoKZGlmZiAtLWdpdCBhL2dkYi1lbnRyeXZhbC0y b2YyLnBhdGNoIGIvZ2RiLWVudHJ5dmFsLTJvZjIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uM2MzYzQ3OQotLS0gL2Rldi9udWxsCisrKyBiL2dkYi1lbnRyeXZhbC0y b2YyLnBhdGNoCkBAIC0wLDAgKzEsODQ1IEBACitodHRwOi8vc291cmNld2FyZS5vcmcvbWwvZ2Ri LXBhdGNoZXMvMjAxMy0wMy9tc2cwMDA2Mi5odG1sCitTdWJqZWN0OiBbcGF0Y2hdIGVudHJ5LXZh bHVlczogRml4IGlmIGNhbGxlZSBjYWxsZWQgbm9yZXR1cm4gZnVuY3Rpb24KKworSGksCisKK3do aWxlIGRlYnVnZ2luZyB0aGUgcHJldmlvdXMgYnVnIEkgZm91bmQgdGhpcyBidWcuCisKK1RISVNf UEMgZm91bmQgYmVsb3cgaXMgdGhlbiBwYXNzZWQgdG8gZ2V0X3BjX2Z1bmN0aW9uX3N0YXJ0Lgor Z2V0X3BjX2Z1bmN0aW9uX3N0YXJ0IGNhbm5vdCBoYW5kbGUgUEMgd2hpY2ggaGFzIGFkZHJlc3Mg b2YgdGhlIGVuZCBvZiB0aGUKK2Z1bmN0aW9uLgorCitObyByZWdyZXNzaW9ucyBvbiB7eDg2XzY0 LHg4Nl82NC1tMzIsaTY4Nn0tZmVkb3JhMTlwcmUtbGludXgtZ251LgorCitJIHdpbGwgY2hlY2sg aXQgaW4uCisKKworVGhhbmtzLAorSmFuCisKKworZ2RiLworMjAxMy0wMy0wMiAgSmFuIEtyYXRv Y2h2aWwgIDxqYW4ua3JhdG9jaHZpbEByZWRoYXQuY29tPgorCisJRml4IGVudHJ5LXZhbHVlcyBp ZiB0aGUgY2FsbGVlIGNhbGxlZCBhIG5vcmV0dXJuIGZ1bmN0aW9uLgorCSogZHdhcmYyLWZyYW1l LXRhaWxjYWxsLmMgKGR3YXJmMl90YWlsY2FsbF9zbmlmZmVyX2ZpcnN0KTogVXNlCisJZ2V0X2Zy YW1lX2FkZHJlc3NfaW5fYmxvY2suICBBZGQgbmV3IGNvbW1lbnQuCisKK2dkYi90ZXN0c3VpdGUv CisyMDEzLTAzLTAyICBKYW4gS3JhdG9jaHZpbCAgPGphbi5rcmF0b2NodmlsQHJlZGhhdC5jb20+ CisKKwlGaXggZW50cnktdmFsdWVzIGlmIHRoZSBjYWxsZWUgY2FsbGVkIGEgbm9yZXR1cm4gZnVu Y3Rpb24uCisJKiBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1ub3JldC5TOiBOZXcgZmlsZS4KKwkq IGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmM6IE5ldyBmaWxlLgorCSogZ2RiLmFyY2gv YW1kNjQtdGFpbGNhbGwtbm9yZXQuZXhwOiBOZXcgZmlsZS4KKworZGlmZiAtLWdpdCBhL2dkYi9k d2FyZjItZnJhbWUtdGFpbGNhbGwuYyBiL2dkYi9kd2FyZjItZnJhbWUtdGFpbGNhbGwuYworaW5k ZXggYjVmOTVjMy4uYjgyYTA1MSAxMDA2NDQKKy0tLSBhL2dkYi9kd2FyZjItZnJhbWUtdGFpbGNh bGwuYworKysrIGIvZ2RiL2R3YXJmMi1mcmFtZS10YWlsY2FsbC5jCitAQCAtMzc0LDcgKzM3NCw5 IEBAIGR3YXJmMl90YWlsY2FsbF9zbmlmZmVyX2ZpcnN0IChzdHJ1Y3QgZnJhbWVfaW5mbyAqdGhp c19mcmFtZSwKKyAKKyAgIGdkYl9hc3NlcnQgKCp0YWlsY2FsbF9jYWNoZXAgPT0gTlVMTCk7Cisg CistICB0aGlzX3BjID0gZ2V0X2ZyYW1lX3BjICh0aGlzX2ZyYW1lKTsKKysgIC8qIFBDIG1heSBi ZSBhZnRlciB0aGUgZnVuY3Rpb24gaWYgVEhJU19GUkFNRSBjYWxscyBub3JldHVybiBmdW5jdGlv biwKKysgICAgIGdldF9mcmFtZV9hZGRyZXNzX2luX2Jsb2NrIHdpbGwgZGVjcmVhc2UgaXQgYnkg MSBpbiBzdWNoIGNhc2UuICAqLworKyAgdGhpc19wYyA9IGdldF9mcmFtZV9hZGRyZXNzX2luX2Js b2NrICh0aGlzX2ZyYW1lKTsKKyAKKyAgIC8qIENhdGNoIGFueSB1bndpbmRpbmcgZXJyb3JzLiAg Ki8KKyAgIFRSWV9DQVRDSCAoZXhjZXB0LCBSRVRVUk5fTUFTS19FUlJPUikKK2RpZmYgLS1naXQg YS9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LlMgYi9nZGIvdGVz dHN1aXRlL2dkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LlMKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwLi4yNTM5N2U5CistLS0gL2Rldi9udWxsCisrKysgYi9nZGIvdGVz dHN1aXRlL2dkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LlMKK0BAIC0wLDAgKzEsNjk0IEBA CisrLyogVGhpcyB0ZXN0Y2FzZSBpcyBwYXJ0IG9mIEdEQiwgdGhlIEdOVSBkZWJ1Z2dlci4KKysK KysgICBDb3B5cmlnaHQgMjAxMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKysKKysg ICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQorKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisrICAgdGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKysgICAoYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorKworKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0 cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorKyAgIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisr ICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg U2VlIHRoZQorKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu CisrCisrICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UKKysgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwg c2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisrCisrLyogVGhpcyBzb3Vy Y2UgZmlsZSB3YXMgZ2VuZXJhdGVkIGJ5OgorKyAgIGdjYyAtbyBnZGIuYXJjaC9hbWQ2NC10YWls Y2FsbC1ub3JldC5TIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmMgLVdhbGwgLVMgLWRB IC1PMiAtZworKyAgICovCisrCisrCS5maWxlCSJhbWQ2NC10YWlsY2FsbC1ub3JldC5jIgorKwku dGV4dAorKy5MdGV4dDA6CisrCS5zZWN0aW9uCS50ZXh0LnVubGlrZWx5LCJheCIsQHByb2diaXRz CisrCS50eXBlCW5vcmV0LCBAZnVuY3Rpb24KKytub3JldDoKKysuTEZCOToKKysJLmZpbGUgMSAi Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYyIKKysJIyBnZGIuYXJjaC9hbWQ2NC10YWls Y2FsbC1ub3JldC5jOjI0CisrCS5sb2MgMSAyNCAwCisrCS5jZmlfc3RhcnRwcm9jCisrLkxWTDA6 CisrIyBCTE9DSyAyIGZyZXE6MTAwMDAgc2VxOjAKKysjIFBSRUQ6IEVOVFJZIFsxMDAuMCVdICAo ZmFsbHRocnUpCisrCXB1c2hxCSVyYXgKKysuTENGSTA6CisrCS5jZmlfZGVmX2NmYV9vZmZzZXQg MTYKKysJIyBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1ub3JldC5jOjI1CisrCS5sb2MgMSAyNSAw CisrCWNhbGwJYWJvcnQKKysuTFZMMToKKysjIFNVQ0M6CisrCS5jZmlfZW5kcHJvYworKy5MRkU5 OgorKwkuc2l6ZQlub3JldCwgLi1ub3JldAorKwkudGV4dAorKwkucDJhbGlnbiA0LCwxNQorKwku dHlwZQltYXlyZXQsIEBmdW5jdGlvbgorK21heXJldDoKKysuTEZCMTA6CisrCSMgZ2RiLmFyY2gv YW1kNjQtdGFpbGNhbGwtbm9yZXQuYzozMAorKwkubG9jIDEgMzAgMAorKwkuY2ZpX3N0YXJ0cHJv YworKy5MVkwyOgorKyMgQkxPQ0sgMiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBFTlRSWSBb MTAwLjAlXSAgKGZhbGx0aHJ1KQorKwkjIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmM6 MzEKKysJLmxvYyAxIDMxIDAKKysJbW92bAl2KCVyaXApLCAlZWF4CisrCXRlc3RsCSVlYXgsICVl YXgKKysjIFNVQ0M6IDQgWzAuMCVdICAoY2FuX2ZhbGx0aHJ1KSAzIFsxMDAuMCVdICAoZmFsbHRo cnUsY2FuX2ZhbGx0aHJ1KQorKwlqbmUJLkw4CisrIyBCTE9DSyAzIGZyZXE6OTk5NiBzZXE6MQor KyMgUFJFRDogMiBbMTAwLjAlXSAgKGZhbGx0aHJ1LGNhbl9mYWxsdGhydSkKKysjIFNVQ0M6IEVY SVQgWzEwMC4wJV0gCisrCXJlcAorKwlyZXQKKysjIEJMT0NLIDQgZnJlcTo0IHNlcToyCisrIyBQ UkVEOiAyIFswLjAlXSAgKGNhbl9mYWxsdGhydSkKKysuTDg6CisrCSMgZ2RiLmFyY2gvYW1kNjQt dGFpbGNhbGwtbm9yZXQuYzozMAorKwkubG9jIDEgMzAgMAorKwlwdXNocQklcmR4CisrLkxDRkkx OgorKwkuY2ZpX2RlZl9jZmFfb2Zmc2V0IDE2CisrCSMgZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwt bm9yZXQuYzozMgorKwkubG9jIDEgMzIgMAorKwl4b3JsCSVlYXgsICVlYXgKKysJY2FsbAlub3Jl dAorKy5MVkwzOgorKyMgU1VDQzoKKysJLmNmaV9lbmRwcm9jCisrLkxGRTEwOgorKwkuc2l6ZQlt YXlyZXQsIC4tbWF5cmV0CisrCS5wMmFsaWduIDQsLDE1CisrCS50eXBlCXRhaWxjYWxsLCBAZnVu Y3Rpb24KKyt0YWlsY2FsbDoKKysuTEZCMTE6CisrCSMgZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwt bm9yZXQuYzozNworKwkubG9jIDEgMzcgMAorKwkuY2ZpX3N0YXJ0cHJvYworKy5MVkw0OgorKyMg QkxPQ0sgMiBmcmVxOjEwMDAwIHNlcTowCisrIyBQUkVEOiBFTlRSWSBbMTAwLjAlXSAgKGZhbGx0 aHJ1KQorKwkjIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmM6MzgKKysJLmxvYyAxIDM4 IDAKKysJam1wCW1heXJldAorKy5MVkw1OgorKyMgU1VDQzogRVhJVCBbMTAwLjAlXSAgKGFiLHNp YmNhbGwpCisrCS5jZmlfZW5kcHJvYworKy5MRkUxMToKKysJLnNpemUJdGFpbGNhbGwsIC4tdGFp bGNhbGwKKysJLnNlY3Rpb24JLnRleHQuc3RhcnR1cCwiYXgiLEBwcm9nYml0cworKwkucDJhbGln biA0LCwxNQorKwkuZ2xvYmwJbWFpbgorKwkudHlwZQltYWluLCBAZnVuY3Rpb24KKyttYWluOgor Ky5MRkIxMjoKKysJIyBnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1ub3JldC5jOjQzCisrCS5sb2Mg MSA0MyAwCisrCS5jZmlfc3RhcnRwcm9jCisrIyBCTE9DSyAyIGZyZXE6MTAwMDAgc2VxOjAKKysj IFBSRUQ6IEVOVFJZIFsxMDAuMCVdICAoZmFsbHRocnUpCisrCXN1YnEJJDgsICVyc3AKKysuTENG STI6CisrCS5jZmlfZGVmX2NmYV9vZmZzZXQgMTYKKysJIyBnZGIuYXJjaC9hbWQ2NC10YWlsY2Fs bC1ub3JldC5jOjQ0CisrCS5sb2MgMSA0NCAwCisrCW1vdmwJJDEsICVlZGkKKysJY2FsbAl0YWls Y2FsbAorKy5MVkw2OgorKwkjIGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmM6NDYKKysJ LmxvYyAxIDQ2IDAKKysJeG9ybAklZWF4LCAlZWF4CisrCWFkZHEJJDgsICVyc3AKKysuTENGSTM6 CisrCS5jZmlfZGVmX2NmYV9vZmZzZXQgOAorKyMgU1VDQzogRVhJVCBbMTAwLjAlXSAKKysJcmV0 CisrCS5jZmlfZW5kcHJvYworKy5MRkUxMjoKKysJLnNpemUJbWFpbiwgLi1tYWluCisrCS5nbG9i bAl2CisrCS5kYXRhCisrCS5hbGlnbiA0CisrCS50eXBlCXYsIEBvYmplY3QKKysJLnNpemUJdiwg NAorK3Y6CisrCS5sb25nCTEKKysJLnRleHQKKysuTGV0ZXh0MDoKKysJLmZpbGUgMiAiL3Vzci9p bmNsdWRlL3N0ZGxpYi5oIgorKwkuc2VjdGlvbgkuZGVidWdfaW5mbywiIixAcHJvZ2JpdHMKKysu TGRlYnVnX2luZm8wOgorKwkubG9uZwkweDE5ZAkjIExlbmd0aCBvZiBDb21waWxhdGlvbiBVbml0 IEluZm8KKysJLnZhbHVlCTB4MgkjIERXQVJGIHZlcnNpb24gbnVtYmVyCisrCS5sb25nCS5MZGVi dWdfYWJicmV2MAkjIE9mZnNldCBJbnRvIEFiYnJldi4gU2VjdGlvbgorKwkuYnl0ZQkweDgJIyBQ b2ludGVyIFNpemUgKGluIGJ5dGVzKQorKwkudWxlYjEyOCAweDEJIyAoRElFICgweGIpIERXX1RB R19jb21waWxlX3VuaXQpCisrCS5sb25nCS5MQVNGMTQJIyBEV19BVF9wcm9kdWNlcjogIkdOVSBD IDQuNy4zIDIwMTMwMjIxIChwcmVyZWxlYXNlKSIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfbGFuZ3Vh Z2UKKysJLmxvbmcJLkxBU0YxNQkjIERXX0FUX25hbWU6ICJnZGIuYXJjaC9hbWQ2NC10YWlsY2Fs bC1ub3JldC5jIgorKwkubG9uZwkuTEFTRjE2CSMgRFdfQVRfY29tcF9kaXI6ICIiCisrCS5sb25n CS5MZGVidWdfcmFuZ2VzMCswCSMgRFdfQVRfcmFuZ2VzCisrCS5xdWFkCTAJIyBEV19BVF9sb3df cGMKKysJLnF1YWQJMAkjIERXX0FUX2VudHJ5X3BjCisrCS5sb25nCS5MZGVidWdfbGluZTAJIyBE V19BVF9zdG10X2xpc3QKKysJLnVsZWIxMjggMHgyCSMgKERJRSAoMHgzMSkgRFdfVEFHX2Jhc2Vf dHlwZSkKKysJLmJ5dGUJMHg4CSMgRFdfQVRfYnl0ZV9zaXplCisrCS5ieXRlCTB4NwkjIERXX0FU X2VuY29kaW5nCisrCS5sb25nCS5MQVNGMAkjIERXX0FUX25hbWU6ICJsb25nIHVuc2lnbmVkIGlu dCIKKysJLnVsZWIxMjggMHgzCSMgKERJRSAoMHgzOCkgRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5 dGUJMHg0CSMgRFdfQVRfYnl0ZV9zaXplCisrCS5ieXRlCTB4NQkjIERXX0FUX2VuY29kaW5nCisr CS5hc2NpaSAiaW50XDAiCSMgRFdfQVRfbmFtZQorKwkudWxlYjEyOCAweDIJIyAoRElFICgweDNm KSBEV19UQUdfYmFzZV90eXBlKQorKwkuYnl0ZQkweDEJIyBEV19BVF9ieXRlX3NpemUKKysJLmJ5 dGUJMHg4CSMgRFdfQVRfZW5jb2RpbmcKKysJLmxvbmcJLkxBU0YxCSMgRFdfQVRfbmFtZTogInVu c2lnbmVkIGNoYXIiCisrCS51bGViMTI4IDB4MgkjIChESUUgKDB4NDYpIERXX1RBR19iYXNlX3R5 cGUpCisrCS5ieXRlCTB4MgkjIERXX0FUX2J5dGVfc2l6ZQorKwkuYnl0ZQkweDcJIyBEV19BVF9l bmNvZGluZworKwkubG9uZwkuTEFTRjIJIyBEV19BVF9uYW1lOiAic2hvcnQgdW5zaWduZWQgaW50 IgorKwkudWxlYjEyOCAweDIJIyAoRElFICgweDRkKSBEV19UQUdfYmFzZV90eXBlKQorKwkuYnl0 ZQkweDQJIyBEV19BVF9ieXRlX3NpemUKKysJLmJ5dGUJMHg3CSMgRFdfQVRfZW5jb2RpbmcKKysJ LmxvbmcJLkxBU0YzCSMgRFdfQVRfbmFtZTogInVuc2lnbmVkIGludCIKKysJLnVsZWIxMjggMHgy CSMgKERJRSAoMHg1NCkgRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMHgxCSMgRFdfQVRfYnl0 ZV9zaXplCisrCS5ieXRlCTB4NgkjIERXX0FUX2VuY29kaW5nCisrCS5sb25nCS5MQVNGNAkjIERX X0FUX25hbWU6ICJzaWduZWQgY2hhciIKKysJLnVsZWIxMjggMHgyCSMgKERJRSAoMHg1YikgRFdf VEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMHgyCSMgRFdfQVRfYnl0ZV9zaXplCisrCS5ieXRlCTB4 NQkjIERXX0FUX2VuY29kaW5nCisrCS5sb25nCS5MQVNGNQkjIERXX0FUX25hbWU6ICJzaG9ydCBp bnQiCisrCS51bGViMTI4IDB4MgkjIChESUUgKDB4NjIpIERXX1RBR19iYXNlX3R5cGUpCisrCS5i eXRlCTB4OAkjIERXX0FUX2J5dGVfc2l6ZQorKwkuYnl0ZQkweDUJIyBEV19BVF9lbmNvZGluZwor KwkubG9uZwkuTEFTRjYJIyBEV19BVF9uYW1lOiAibG9uZyBpbnQiCisrCS51bGViMTI4IDB4Mgkj IChESUUgKDB4NjkpIERXX1RBR19iYXNlX3R5cGUpCisrCS5ieXRlCTB4OAkjIERXX0FUX2J5dGVf c2l6ZQorKwkuYnl0ZQkweDcJIyBEV19BVF9lbmNvZGluZworKwkubG9uZwkuTEFTRjcJIyBEV19B VF9uYW1lOiAic2l6ZXR5cGUiCisrCS51bGViMTI4IDB4MgkjIChESUUgKDB4NzApIERXX1RBR19i YXNlX3R5cGUpCisrCS5ieXRlCTB4MQkjIERXX0FUX2J5dGVfc2l6ZQorKwkuYnl0ZQkweDYJIyBE V19BVF9lbmNvZGluZworKwkubG9uZwkuTEFTRjgJIyBEV19BVF9uYW1lOiAiY2hhciIKKysJLnVs ZWIxMjggMHgyCSMgKERJRSAoMHg3NykgRFdfVEFHX2Jhc2VfdHlwZSkKKysJLmJ5dGUJMHg4CSMg RFdfQVRfYnl0ZV9zaXplCisrCS5ieXRlCTB4NQkjIERXX0FUX2VuY29kaW5nCisrCS5sb25nCS5M QVNGOQkjIERXX0FUX25hbWU6ICJsb25nIGxvbmcgaW50IgorKwkudWxlYjEyOCAweDIJIyAoRElF ICgweDdlKSBEV19UQUdfYmFzZV90eXBlKQorKwkuYnl0ZQkweDgJIyBEV19BVF9ieXRlX3NpemUK KysJLmJ5dGUJMHg3CSMgRFdfQVRfZW5jb2RpbmcKKysJLmxvbmcJLkxBU0YxMAkjIERXX0FUX25h bWU6ICJsb25nIGxvbmcgdW5zaWduZWQgaW50IgorKwkudWxlYjEyOCAweDQJIyAoRElFICgweDg1 KSBEV19UQUdfdm9sYXRpbGVfdHlwZSkKKysJLmxvbmcJMHgzOAkjIERXX0FUX3R5cGUKKysJLnVs ZWIxMjggMHg1CSMgKERJRSAoMHg4YSkgRFdfVEFHX3N1YnByb2dyYW0pCisrCS5sb25nCS5MQVNG MTEJIyBEV19BVF9uYW1lOiAibm9yZXQiCisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAo Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYykKKysJLmJ5dGUJMHgxNwkjIERXX0FUX2Rl Y2xfbGluZQorKwkuYnl0ZQkweDEJIyBEV19BVF9wcm90b3R5cGVkCisrCS5xdWFkCS5MRkI5CSMg RFdfQVRfbG93X3BjCisrCS5xdWFkCS5MRkU5CSMgRFdfQVRfaGlnaF9wYworKwkubG9uZwkuTExT VDAJIyBEV19BVF9mcmFtZV9iYXNlCisrCS5ieXRlCTB4MQkjIERXX0FUX0dOVV9hbGxfY2FsbF9z aXRlcworKwkubG9uZwkweGM3CSMgRFdfQVRfc2libGluZworKwkudWxlYjEyOCAweDYJIyAoRElF ICgweGFiKSBEV19UQUdfZm9ybWFsX3BhcmFtZXRlcikKKysJLmFzY2lpICJ4XDAiCSMgRFdfQVRf bmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9kZWNsX2ZpbGUgKGdkYi5hcmNoL2FtZDY0LXRhaWxj YWxsLW5vcmV0LmMpCisrCS5ieXRlCTB4MTcJIyBEV19BVF9kZWNsX2xpbmUKKysJLmxvbmcJMHgz OAkjIERXX0FUX3R5cGUKKysJLmxvbmcJLkxMU1QxCSMgRFdfQVRfbG9jYXRpb24KKysJLnVsZWIx MjggMHg3CSMgKERJRSAoMHhiOCkgRFdfVEFHX3Vuc3BlY2lmaWVkX3BhcmFtZXRlcnMpCisrCS51 bGViMTI4IDB4OAkjIChESUUgKDB4YjkpIERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkucXVhZAku TFZMMQkjIERXX0FUX2xvd19wYworKwkubG9uZwkweDE5NQkjIERXX0FUX2Fic3RyYWN0X29yaWdp bgorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDhhCisrCS51bGViMTI4IDB4 NQkjIChESUUgKDB4YzcpIERXX1RBR19zdWJwcm9ncmFtKQorKwkubG9uZwkuTEFTRjEyCSMgRFdf QVRfbmFtZTogIm1heXJldCIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxlIChnZGIuYXJj aC9hbWQ2NC10YWlsY2FsbC1ub3JldC5jKQorKwkuYnl0ZQkweDFkCSMgRFdfQVRfZGVjbF9saW5l CisrCS5ieXRlCTB4MQkjIERXX0FUX3Byb3RvdHlwZWQKKysJLnF1YWQJLkxGQjEwCSMgRFdfQVRf bG93X3BjCisrCS5xdWFkCS5MRkUxMAkjIERXX0FUX2hpZ2hfcGMKKysJLmxvbmcJLkxMU1QyCSMg RFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDEJIyBEV19BVF9HTlVfYWxsX2NhbGxfc2l0ZXMK KysJLmxvbmcJMHgxMDMJIyBEV19BVF9zaWJsaW5nCisrCS51bGViMTI4IDB4NgkjIChESUUgKDB4 ZTgpIERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwkuYXNjaWkgInhcMCIJIyBEV19BVF9uYW1l CisrCS5ieXRlCTB4MQkjIERXX0FUX2RlY2xfZmlsZSAoZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwt bm9yZXQuYykKKysJLmJ5dGUJMHgxZAkjIERXX0FUX2RlY2xfbGluZQorKwkubG9uZwkweDM4CSMg RFdfQVRfdHlwZQorKwkubG9uZwkuTExTVDMJIyBEV19BVF9sb2NhdGlvbgorKwkudWxlYjEyOCAw eDgJIyAoRElFICgweGY1KSBEV19UQUdfR05VX2NhbGxfc2l0ZSkKKysJLnF1YWQJLkxWTDMJIyBE V19BVF9sb3dfcGMKKysJLmxvbmcJMHg4YQkjIERXX0FUX2Fic3RyYWN0X29yaWdpbgorKwkuYnl0 ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweGM3CisrCS51bGViMTI4IDB4OQkjIChESUUg KDB4MTAzKSBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmxvbmcJLkxBU0YxMwkjIERXX0FUX25hbWU6 ICJ0YWlsY2FsbCIKKysJLmJ5dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxlIChnZGIuYXJjaC9hbWQ2 NC10YWlsY2FsbC1ub3JldC5jKQorKwkuYnl0ZQkweDI0CSMgRFdfQVRfZGVjbF9saW5lCisrCS5i eXRlCTB4MQkjIERXX0FUX3Byb3RvdHlwZWQKKysJLnF1YWQJLkxGQjExCSMgRFdfQVRfbG93X3Bj CisrCS5xdWFkCS5MRkUxMQkjIERXX0FUX2hpZ2hfcGMKKysJLmJ5dGUJMHgyCSMgRFdfQVRfZnJh bWVfYmFzZQorKwkuYnl0ZQkweDc3CSMgRFdfT1BfYnJlZzcKKysJLnNsZWIxMjggOAorKwkuYnl0 ZQkweDEJIyBEV19BVF9HTlVfYWxsX2NhbGxfc2l0ZXMKKysJLmxvbmcJMHgxNDcJIyBEV19BVF9z aWJsaW5nCisrCS51bGViMTI4IDB4NgkjIChESUUgKDB4MTIzKSBEV19UQUdfZm9ybWFsX3BhcmFt ZXRlcikKKysJLmFzY2lpICJ4XDAiCSMgRFdfQVRfbmFtZQorKwkuYnl0ZQkweDEJIyBEV19BVF9k ZWNsX2ZpbGUgKGdkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmMpCisrCS5ieXRlCTB4MjQJ IyBEV19BVF9kZWNsX2xpbmUKKysJLmxvbmcJMHgzOAkjIERXX0FUX3R5cGUKKysJLmxvbmcJLkxM U1Q0CSMgRFdfQVRfbG9jYXRpb24KKysJLnVsZWIxMjggMHhhCSMgKERJRSAoMHgxMzApIERXX1RB R19HTlVfY2FsbF9zaXRlKQorKwkucXVhZAkuTFZMNQkjIERXX0FUX2xvd19wYworKwkuYnl0ZQkw eDEJIyBEV19BVF9HTlVfdGFpbF9jYWxsCisrCS5sb25nCTB4YzcJIyBEV19BVF9hYnN0cmFjdF9v cmlnaW4KKysJLnVsZWIxMjggMHhiCSMgKERJRSAoMHgxM2UpIERXX1RBR19HTlVfY2FsbF9zaXRl X3BhcmFtZXRlcikKKysJLmJ5dGUJMHgxCSMgRFdfQVRfbG9jYXRpb24KKysJLmJ5dGUJMHg1NQkj IERXX09QX3JlZzUKKysJLmJ5dGUJMHgzCSMgRFdfQVRfR05VX2NhbGxfc2l0ZV92YWx1ZQorKwku Ynl0ZQkweGYzCSMgRFdfT1BfR05VX2VudHJ5X3ZhbHVlCisrCS51bGViMTI4IDB4MQorKwkuYnl0 ZQkweDU1CSMgRFdfT1BfcmVnNQorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAw eDEzMAorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDEwMworKwkudWxlYjEy OCAweGMJIyAoRElFICgweDE0NykgRFdfVEFHX3N1YnByb2dyYW0pCisrCS5ieXRlCTB4MQkjIERX X0FUX2V4dGVybmFsCisrCS5sb25nCS5MQVNGMTcJIyBEV19BVF9uYW1lOiAibWFpbiIKKysJLmJ5 dGUJMHgxCSMgRFdfQVRfZGVjbF9maWxlIChnZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1ub3JldC5j KQorKwkuYnl0ZQkweDJhCSMgRFdfQVRfZGVjbF9saW5lCisrCS5ieXRlCTB4MQkjIERXX0FUX3By b3RvdHlwZWQKKysJLmxvbmcJMHgzOAkjIERXX0FUX3R5cGUKKysJLnF1YWQJLkxGQjEyCSMgRFdf QVRfbG93X3BjCisrCS5xdWFkCS5MRkUxMgkjIERXX0FUX2hpZ2hfcGMKKysJLmxvbmcJLkxMU1Q1 CSMgRFdfQVRfZnJhbWVfYmFzZQorKwkuYnl0ZQkweDEJIyBEV19BVF9HTlVfYWxsX2NhbGxfc2l0 ZXMKKysJLmxvbmcJMHgxODEJIyBEV19BVF9zaWJsaW5nCisrCS51bGViMTI4IDB4ZAkjIChESUUg KDB4MTZkKSBEV19UQUdfR05VX2NhbGxfc2l0ZSkKKysJLnF1YWQJLkxWTDYJIyBEV19BVF9sb3df cGMKKysJLmxvbmcJMHgxMDMJIyBEV19BVF9hYnN0cmFjdF9vcmlnaW4KKysJLnVsZWIxMjggMHhi CSMgKERJRSAoMHgxN2EpIERXX1RBR19HTlVfY2FsbF9zaXRlX3BhcmFtZXRlcikKKysJLmJ5dGUJ MHgxCSMgRFdfQVRfbG9jYXRpb24KKysJLmJ5dGUJMHg1NQkjIERXX09QX3JlZzUKKysJLmJ5dGUJ MHgxCSMgRFdfQVRfR05VX2NhbGxfc2l0ZV92YWx1ZQorKwkuYnl0ZQkweDMxCSMgRFdfT1BfbGl0 MQorKwkuYnl0ZQkwCSMgZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDE2ZAorKwkuYnl0ZQkwCSMg ZW5kIG9mIGNoaWxkcmVuIG9mIERJRSAweDE0NworKwkudWxlYjEyOCAweGUJIyAoRElFICgweDE4 MSkgRFdfVEFHX3ZhcmlhYmxlKQorKwkuYXNjaWkgInZcMCIJIyBEV19BVF9uYW1lCisrCS5ieXRl CTB4MQkjIERXX0FUX2RlY2xfZmlsZSAoZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYykK KysJLmJ5dGUJMHgxNAkjIERXX0FUX2RlY2xfbGluZQorKwkubG9uZwkweDg1CSMgRFdfQVRfdHlw ZQorKwkuYnl0ZQkweDEJIyBEV19BVF9leHRlcm5hbAorKwkuYnl0ZQkweDkJIyBEV19BVF9sb2Nh dGlvbgorKwkuYnl0ZQkweDMJIyBEV19PUF9hZGRyCisrCS5xdWFkCXYKKysJLnVsZWIxMjggMHhm CSMgKERJRSAoMHgxOTUpIERXX1RBR19zdWJwcm9ncmFtKQorKwkuYnl0ZQkweDEJIyBEV19BVF9l eHRlcm5hbAorKwkubG9uZwkuTEFTRjE4CSMgRFdfQVRfbmFtZTogImFib3J0IgorKwkuYnl0ZQkw eDIJIyBEV19BVF9kZWNsX2ZpbGUgKC91c3IvaW5jbHVkZS9zdGRsaWIuaCkKKysJLnZhbHVlCTB4 MjAyCSMgRFdfQVRfZGVjbF9saW5lCisrCS5ieXRlCTB4MQkjIERXX0FUX3Byb3RvdHlwZWQKKysJ LmJ5dGUJMHgxCSMgRFdfQVRfZGVjbGFyYXRpb24KKysJLmJ5dGUJMAkjIGVuZCBvZiBjaGlsZHJl biBvZiBESUUgMHhiCisrCS5zZWN0aW9uCS5kZWJ1Z19hYmJyZXYsIiIsQHByb2diaXRzCisrLkxk ZWJ1Z19hYmJyZXYwOgorKwkudWxlYjEyOCAweDEJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4 IDB4MTEJIyAoVEFHOiBEV19UQUdfY29tcGlsZV91bml0KQorKwkuYnl0ZQkweDEJIyBEV19jaGls ZHJlbl95ZXMKKysJLnVsZWIxMjggMHgyNQkjIChEV19BVF9wcm9kdWNlcikKKysJLnVsZWIxMjgg MHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLnVsZWIxMjggMHgxMwkjIChEV19BVF9sYW5ndWFnZSkK KysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MwkjIChEV19B VF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwkudWxlYjEyOCAweDFi CSMgKERXX0FUX2NvbXBfZGlyKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJwKQorKwku dWxlYjEyOCAweDU1CSMgKERXX0FUX3JhbmdlcykKKysJLnVsZWIxMjggMHg2CSMgKERXX0ZPUk1f ZGF0YTQpCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRfbG93X3BjKQorKwkudWxlYjEyOCAweDEJ IyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDUyCSMgKERXX0FUX2VudHJ5X3BjKQorKwku dWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDEwCSMgKERXX0FUX3N0 bXRfbGlzdCkKKysJLnVsZWIxMjggMHg2CSMgKERXX0ZPUk1fZGF0YTQpCisrCS5ieXRlCTAKKysJ LmJ5dGUJMAorKwkudWxlYjEyOCAweDIJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MjQJ IyAoVEFHOiBEV19UQUdfYmFzZV90eXBlKQorKwkuYnl0ZQkwCSMgRFdfY2hpbGRyZW5fbm8KKysJ LnVsZWIxMjggMHhiCSMgKERXX0FUX2J5dGVfc2l6ZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZP Uk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2UJIyAoRFdfQVRfZW5jb2RpbmcpCisrCS51bGViMTI4 IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJ LnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3RycCkKKysJLmJ5dGUJMAorKwkuYnl0ZQkwCisrCS51 bGViMTI4IDB4MwkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgyNAkjIChUQUc6IERXX1RB R19iYXNlX3R5cGUpCisrCS5ieXRlCTAJIyBEV19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweGIJ IyAoRFdfQVRfYnl0ZV9zaXplKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJ LnVsZWIxMjggMHgzZQkjIChEV19BVF9lbmNvZGluZykKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZP Uk1fZGF0YTEpCisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweDgJ IyAoRFdfRk9STV9zdHJpbmcpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDQJ IyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MzUJIyAoVEFHOiBEV19UQUdfdm9sYXRpbGVf dHlwZSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4IDB4NDkJIyAoRFdf QVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAKKysJ LmJ5dGUJMAorKwkudWxlYjEyOCAweDUJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MmUJ IyAoVEFHOiBEV19UQUdfc3VicHJvZ3JhbSkKKysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRyZW5feWVz CisrCS51bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9S TV9zdHJwKQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjgg MHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5l KQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgyNwkjIChE V19BVF9wcm90b3R5cGVkKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwkudWxl YjEyOCAweDExCSMgKERXX0FUX2xvd19wYykKKysJLnVsZWIxMjggMHgxCSMgKERXX0ZPUk1fYWRk cikKKysJLnVsZWIxMjggMHgxMgkjIChEV19BVF9oaWdoX3BjKQorKwkudWxlYjEyOCAweDEJIyAo RFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDQwCSMgKERXX0FUX2ZyYW1lX2Jhc2UpCisrCS51 bGViMTI4IDB4NgkjIChEV19GT1JNX2RhdGE0KQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRf R05VX2FsbF9jYWxsX3NpdGVzKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwku dWxlYjEyOCAweDEJIyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JN X3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDYJIyAoYWJicmV2IGNv ZGUpCisrCS51bGViMTI4IDB4NQkjIChUQUc6IERXX1RBR19mb3JtYWxfcGFyYW1ldGVyKQorKwku Ynl0ZQkwCSMgRFdfY2hpbGRyZW5fbm8KKysJLnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisr CS51bGViMTI4IDB4OAkjIChEV19GT1JNX3N0cmluZykKKysJLnVsZWIxMjggMHgzYQkjIChEV19B VF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEy OCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0 YTEpCisrCS51bGViMTI4IDB4NDkJIyAoRFdfQVRfdHlwZSkKKysJLnVsZWIxMjggMHgxMwkjIChE V19GT1JNX3JlZjQpCisrCS51bGViMTI4IDB4MgkjIChEV19BVF9sb2NhdGlvbikKKysJLnVsZWIx MjggMHg2CSMgKERXX0ZPUk1fZGF0YTQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEy OCAweDcJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MTgJIyAoVEFHOiBEV19UQUdfdW5z cGVjaWZpZWRfcGFyYW1ldGVycykKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS5ieXRl CTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweDgJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4 IDB4NDEwOQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkuYnl0ZQkwCSMgRFdfY2hp bGRyZW5fbm8KKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4 MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MzEJIyAoRFdfQVRfYWJzdHJhY3Rfb3Jp Z2luKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJLmJ5dGUJMAorKwkuYnl0 ZQkwCisrCS51bGViMTI4IDB4OQkjIChhYmJyZXYgY29kZSkKKysJLnVsZWIxMjggMHgyZQkjIChU QUc6IERXX1RBR19zdWJwcm9ncmFtKQorKwkuYnl0ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJ LnVsZWIxMjggMHgzCSMgKERXX0FUX25hbWUpCisrCS51bGViMTI4IDB4ZQkjIChEV19GT1JNX3N0 cnApCisrCS51bGViMTI4IDB4M2EJIyAoRFdfQVRfZGVjbF9maWxlKQorKwkudWxlYjEyOCAweGIJ IyAoRFdfRk9STV9kYXRhMSkKKysJLnVsZWIxMjggMHgzYgkjIChEV19BVF9kZWNsX2xpbmUpCisr CS51bGViMTI4IDB4YgkjIChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDI3CSMgKERXX0FU X3Byb3RvdHlwZWQpCisrCS51bGViMTI4IDB4YwkjIChEV19GT1JNX2ZsYWcpCisrCS51bGViMTI4 IDB4MTEJIyAoRFdfQVRfbG93X3BjKQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQor KwkudWxlYjEyOCAweDEyCSMgKERXX0FUX2hpZ2hfcGMpCisrCS51bGViMTI4IDB4MQkjIChEV19G T1JNX2FkZHIpCisrCS51bGViMTI4IDB4NDAJIyAoRFdfQVRfZnJhbWVfYmFzZSkKKysJLnVsZWIx MjggMHhhCSMgKERXX0ZPUk1fYmxvY2sxKQorKwkudWxlYjEyOCAweDIxMTcJIyAoRFdfQVRfR05V X2FsbF9jYWxsX3NpdGVzKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwkudWxl YjEyOCAweDEJIyAoRFdfQVRfc2libGluZykKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3Jl ZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweGEJIyAoYWJicmV2IGNvZGUp CisrCS51bGViMTI4IDB4NDEwOQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9zaXRlKQorKwkuYnl0 ZQkweDEJIyBEV19jaGlsZHJlbl95ZXMKKysJLnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMp CisrCS51bGViMTI4IDB4MQkjIChEV19GT1JNX2FkZHIpCisrCS51bGViMTI4IDB4MjExNQkjIChE V19BVF9HTlVfdGFpbF9jYWxsKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwku dWxlYjEyOCAweDMxCSMgKERXX0FUX2Fic3RyYWN0X29yaWdpbikKKysJLnVsZWIxMjggMHgxMwkj IChEV19GT1JNX3JlZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweGIJIyAo YWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4NDEwYQkjIChUQUc6IERXX1RBR19HTlVfY2FsbF9z aXRlX3BhcmFtZXRlcikKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4IDB4 MgkjIChEV19BVF9sb2NhdGlvbikKKysJLnVsZWIxMjggMHhhCSMgKERXX0ZPUk1fYmxvY2sxKQor KwkudWxlYjEyOCAweDIxMTEJIyAoRFdfQVRfR05VX2NhbGxfc2l0ZV92YWx1ZSkKKysJLnVsZWIx MjggMHhhCSMgKERXX0ZPUk1fYmxvY2sxKQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIx MjggMHhjCSMgKGFiYnJldiBjb2RlKQorKwkudWxlYjEyOCAweDJlCSMgKFRBRzogRFdfVEFHX3N1 YnByb2dyYW0pCisrCS5ieXRlCTB4MQkjIERXX2NoaWxkcmVuX3llcworKwkudWxlYjEyOCAweDNm CSMgKERXX0FUX2V4dGVybmFsKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwku dWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjggMHhlCSMgKERXX0ZPUk1fc3Ry cCkKKysJLnVsZWIxMjggMHgzYQkjIChEV19BVF9kZWNsX2ZpbGUpCisrCS51bGViMTI4IDB4Ygkj IChEV19GT1JNX2RhdGExKQorKwkudWxlYjEyOCAweDNiCSMgKERXX0FUX2RlY2xfbGluZSkKKysJ LnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4MjcJIyAoRFdfQVRf cHJvdG90eXBlZCkKKysJLnVsZWIxMjggMHhjCSMgKERXX0ZPUk1fZmxhZykKKysJLnVsZWIxMjgg MHg0OQkjIChEV19BVF90eXBlKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVmNCkKKysJ LnVsZWIxMjggMHgxMQkjIChEV19BVF9sb3dfcGMpCisrCS51bGViMTI4IDB4MQkjIChEV19GT1JN X2FkZHIpCisrCS51bGViMTI4IDB4MTIJIyAoRFdfQVRfaGlnaF9wYykKKysJLnVsZWIxMjggMHgx CSMgKERXX0ZPUk1fYWRkcikKKysJLnVsZWIxMjggMHg0MAkjIChEV19BVF9mcmFtZV9iYXNlKQor KwkudWxlYjEyOCAweDYJIyAoRFdfRk9STV9kYXRhNCkKKysJLnVsZWIxMjggMHgyMTE3CSMgKERX X0FUX0dOVV9hbGxfY2FsbF9zaXRlcykKKysJLnVsZWIxMjggMHhjCSMgKERXX0ZPUk1fZmxhZykK KysJLnVsZWIxMjggMHgxCSMgKERXX0FUX3NpYmxpbmcpCisrCS51bGViMTI4IDB4MTMJIyAoRFdf Rk9STV9yZWY0KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLnVsZWIxMjggMHhkCSMgKGFiYnJl diBjb2RlKQorKwkudWxlYjEyOCAweDQxMDkJIyAoVEFHOiBEV19UQUdfR05VX2NhbGxfc2l0ZSkK KysJLmJ5dGUJMHgxCSMgRFdfY2hpbGRyZW5feWVzCisrCS51bGViMTI4IDB4MTEJIyAoRFdfQVRf bG93X3BjKQorKwkudWxlYjEyOCAweDEJIyAoRFdfRk9STV9hZGRyKQorKwkudWxlYjEyOCAweDMx CSMgKERXX0FUX2Fic3RyYWN0X29yaWdpbikKKysJLnVsZWIxMjggMHgxMwkjIChEV19GT1JNX3Jl ZjQpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxlYjEyOCAweGUJIyAoYWJicmV2IGNvZGUp CisrCS51bGViMTI4IDB4MzQJIyAoVEFHOiBEV19UQUdfdmFyaWFibGUpCisrCS5ieXRlCTAJIyBE V19jaGlsZHJlbl9ubworKwkudWxlYjEyOCAweDMJIyAoRFdfQVRfbmFtZSkKKysJLnVsZWIxMjgg MHg4CSMgKERXX0ZPUk1fc3RyaW5nKQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmls ZSkKKysJLnVsZWIxMjggMHhiCSMgKERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAo RFdfQVRfZGVjbF9saW5lKQorKwkudWxlYjEyOCAweGIJIyAoRFdfRk9STV9kYXRhMSkKKysJLnVs ZWIxMjggMHg0OQkjIChEV19BVF90eXBlKQorKwkudWxlYjEyOCAweDEzCSMgKERXX0ZPUk1fcmVm NCkKKysJLnVsZWIxMjggMHgzZgkjIChEV19BVF9leHRlcm5hbCkKKysJLnVsZWIxMjggMHhjCSMg KERXX0ZPUk1fZmxhZykKKysJLnVsZWIxMjggMHgyCSMgKERXX0FUX2xvY2F0aW9uKQorKwkudWxl YjEyOCAweGEJIyAoRFdfRk9STV9ibG9jazEpCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkudWxl YjEyOCAweGYJIyAoYWJicmV2IGNvZGUpCisrCS51bGViMTI4IDB4MmUJIyAoVEFHOiBEV19UQUdf c3VicHJvZ3JhbSkKKysJLmJ5dGUJMAkjIERXX2NoaWxkcmVuX25vCisrCS51bGViMTI4IDB4M2YJ IyAoRFdfQVRfZXh0ZXJuYWwpCisrCS51bGViMTI4IDB4YwkjIChEV19GT1JNX2ZsYWcpCisrCS51 bGViMTI4IDB4MwkjIChEV19BVF9uYW1lKQorKwkudWxlYjEyOCAweGUJIyAoRFdfRk9STV9zdHJw KQorKwkudWxlYjEyOCAweDNhCSMgKERXX0FUX2RlY2xfZmlsZSkKKysJLnVsZWIxMjggMHhiCSMg KERXX0ZPUk1fZGF0YTEpCisrCS51bGViMTI4IDB4M2IJIyAoRFdfQVRfZGVjbF9saW5lKQorKwku dWxlYjEyOCAweDUJIyAoRFdfRk9STV9kYXRhMikKKysJLnVsZWIxMjggMHgyNwkjIChEV19BVF9w cm90b3R5cGVkKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFnKQorKwkudWxlYjEyOCAw eDNjCSMgKERXX0FUX2RlY2xhcmF0aW9uKQorKwkudWxlYjEyOCAweGMJIyAoRFdfRk9STV9mbGFn KQorKwkuYnl0ZQkwCisrCS5ieXRlCTAKKysJLmJ5dGUJMAorKwkuc2VjdGlvbgkuZGVidWdfbG9j LCIiLEBwcm9nYml0cworKy5MZGVidWdfbG9jMDoKKysuTExTVDA6CisrCS5xdWFkCS5MRkI5CSMg TG9jYXRpb24gbGlzdCBiZWdpbiBhZGRyZXNzICgqLkxMU1QwKQorKwkucXVhZAkuTENGSTAJIyBM b2NhdGlvbiBsaXN0IGVuZCBhZGRyZXNzICgqLkxMU1QwKQorKwkudmFsdWUJMHgyCSMgTG9jYXRp b24gZXhwcmVzc2lvbiBzaXplCisrCS5ieXRlCTB4NzcJIyBEV19PUF9icmVnNworKwkuc2xlYjEy OCA4CisrCS5xdWFkCS5MQ0ZJMAkjIExvY2F0aW9uIGxpc3QgYmVnaW4gYWRkcmVzcyAoKi5MTFNU MCkKKysJLnF1YWQJLkxGRTkJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRyZXNzICgqLkxMU1QwKQor KwkudmFsdWUJMHgyCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisrCS5ieXRlCTB4NzcJIyBE V19PUF9icmVnNworKwkuc2xlYjEyOCAxNgorKwkucXVhZAkwCSMgTG9jYXRpb24gbGlzdCB0ZXJt aW5hdG9yIGJlZ2luICgqLkxMU1QwKQorKwkucXVhZAkwCSMgTG9jYXRpb24gbGlzdCB0ZXJtaW5h dG9yIGVuZCAoKi5MTFNUMCkKKysuTExTVDE6CisrCS5xdWFkCS5MVkwwCSMgTG9jYXRpb24gbGlz dCBiZWdpbiBhZGRyZXNzICgqLkxMU1QxKQorKwkucXVhZAkuTFZMMS0xCSMgTG9jYXRpb24gbGlz dCBlbmQgYWRkcmVzcyAoKi5MTFNUMSkKKysJLnZhbHVlCTB4MQkjIExvY2F0aW9uIGV4cHJlc3Np b24gc2l6ZQorKwkuYnl0ZQkweDU1CSMgRFdfT1BfcmVnNQorKwkucXVhZAkuTFZMMS0xCSMgTG9j YXRpb24gbGlzdCBiZWdpbiBhZGRyZXNzICgqLkxMU1QxKQorKwkucXVhZAkuTEZFOQkjIExvY2F0 aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExTVDEpCisrCS52YWx1ZQkweDQJIyBMb2NhdGlvbiBl eHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHhmMwkjIERXX09QX0dOVV9lbnRyeV92YWx1ZQorKwku dWxlYjEyOCAweDEKKysJLmJ5dGUJMHg1NQkjIERXX09QX3JlZzUKKysJLmJ5dGUJMHg5ZgkjIERX X09QX3N0YWNrX3ZhbHVlCisrCS5xdWFkCTAJIyBMb2NhdGlvbiBsaXN0IHRlcm1pbmF0b3IgYmVn aW4gKCouTExTVDEpCisrCS5xdWFkCTAJIyBMb2NhdGlvbiBsaXN0IHRlcm1pbmF0b3IgZW5kICgq LkxMU1QxKQorKy5MTFNUMjoKKysJLnF1YWQJLkxGQjEwCSMgTG9jYXRpb24gbGlzdCBiZWdpbiBh ZGRyZXNzICgqLkxMU1QyKQorKwkucXVhZAkuTENGSTEJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRy ZXNzICgqLkxMU1QyKQorKwkudmFsdWUJMHgyCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisr CS5ieXRlCTB4NzcJIyBEV19PUF9icmVnNworKwkuc2xlYjEyOCA4CisrCS5xdWFkCS5MQ0ZJMQkj IExvY2F0aW9uIGxpc3QgYmVnaW4gYWRkcmVzcyAoKi5MTFNUMikKKysJLnF1YWQJLkxGRTEwCSMg TG9jYXRpb24gbGlzdCBlbmQgYWRkcmVzcyAoKi5MTFNUMikKKysJLnZhbHVlCTB4MgkjIExvY2F0 aW9uIGV4cHJlc3Npb24gc2l6ZQorKwkuYnl0ZQkweDc3CSMgRFdfT1BfYnJlZzcKKysJLnNsZWIx MjggMTYKKysJLnF1YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBiZWdpbiAoKi5MTFNU MikKKysJLnF1YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBlbmQgKCouTExTVDIpCisr LkxMU1QzOgorKwkucXVhZAkuTFZMMgkjIExvY2F0aW9uIGxpc3QgYmVnaW4gYWRkcmVzcyAoKi5M TFNUMykKKysJLnF1YWQJLkxWTDMtMQkjIExvY2F0aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExT VDMpCisrCS52YWx1ZQkweDEJIyBMb2NhdGlvbiBleHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHg1 NQkjIERXX09QX3JlZzUKKysJLnF1YWQJLkxWTDMtMQkjIExvY2F0aW9uIGxpc3QgYmVnaW4gYWRk cmVzcyAoKi5MTFNUMykKKysJLnF1YWQJLkxGRTEwCSMgTG9jYXRpb24gbGlzdCBlbmQgYWRkcmVz cyAoKi5MTFNUMykKKysJLnZhbHVlCTB4NAkjIExvY2F0aW9uIGV4cHJlc3Npb24gc2l6ZQorKwku Ynl0ZQkweGYzCSMgRFdfT1BfR05VX2VudHJ5X3ZhbHVlCisrCS51bGViMTI4IDB4MQorKwkuYnl0 ZQkweDU1CSMgRFdfT1BfcmVnNQorKwkuYnl0ZQkweDlmCSMgRFdfT1Bfc3RhY2tfdmFsdWUKKysJ LnF1YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBiZWdpbiAoKi5MTFNUMykKKysJLnF1 YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBlbmQgKCouTExTVDMpCisrLkxMU1Q0Ogor KwkucXVhZAkuTFZMNAkjIExvY2F0aW9uIGxpc3QgYmVnaW4gYWRkcmVzcyAoKi5MTFNUNCkKKysJ LnF1YWQJLkxWTDUtMQkjIExvY2F0aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExTVDQpCisrCS52 YWx1ZQkweDEJIyBMb2NhdGlvbiBleHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHg1NQkjIERXX09Q X3JlZzUKKysJLnF1YWQJLkxWTDUtMQkjIExvY2F0aW9uIGxpc3QgYmVnaW4gYWRkcmVzcyAoKi5M TFNUNCkKKysJLnF1YWQJLkxGRTExCSMgTG9jYXRpb24gbGlzdCBlbmQgYWRkcmVzcyAoKi5MTFNU NCkKKysJLnZhbHVlCTB4NAkjIExvY2F0aW9uIGV4cHJlc3Npb24gc2l6ZQorKwkuYnl0ZQkweGYz CSMgRFdfT1BfR05VX2VudHJ5X3ZhbHVlCisrCS51bGViMTI4IDB4MQorKwkuYnl0ZQkweDU1CSMg RFdfT1BfcmVnNQorKwkuYnl0ZQkweDlmCSMgRFdfT1Bfc3RhY2tfdmFsdWUKKysJLnF1YWQJMAkj IExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBiZWdpbiAoKi5MTFNUNCkKKysJLnF1YWQJMAkjIExv Y2F0aW9uIGxpc3QgdGVybWluYXRvciBlbmQgKCouTExTVDQpCisrLkxMU1Q1OgorKwkucXVhZAku TEZCMTIJIyBMb2NhdGlvbiBsaXN0IGJlZ2luIGFkZHJlc3MgKCouTExTVDUpCisrCS5xdWFkCS5M Q0ZJMgkjIExvY2F0aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExTVDUpCisrCS52YWx1ZQkweDIJ IyBMb2NhdGlvbiBleHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHg3NwkjIERXX09QX2JyZWc3Cisr CS5zbGViMTI4IDgKKysJLnF1YWQJLkxDRkkyCSMgTG9jYXRpb24gbGlzdCBiZWdpbiBhZGRyZXNz ICgqLkxMU1Q1KQorKwkucXVhZAkuTENGSTMJIyBMb2NhdGlvbiBsaXN0IGVuZCBhZGRyZXNzICgq LkxMU1Q1KQorKwkudmFsdWUJMHgyCSMgTG9jYXRpb24gZXhwcmVzc2lvbiBzaXplCisrCS5ieXRl CTB4NzcJIyBEV19PUF9icmVnNworKwkuc2xlYjEyOCAxNgorKwkucXVhZAkuTENGSTMJIyBMb2Nh dGlvbiBsaXN0IGJlZ2luIGFkZHJlc3MgKCouTExTVDUpCisrCS5xdWFkCS5MRkUxMgkjIExvY2F0 aW9uIGxpc3QgZW5kIGFkZHJlc3MgKCouTExTVDUpCisrCS52YWx1ZQkweDIJIyBMb2NhdGlvbiBl eHByZXNzaW9uIHNpemUKKysJLmJ5dGUJMHg3NwkjIERXX09QX2JyZWc3CisrCS5zbGViMTI4IDgK KysJLnF1YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBiZWdpbiAoKi5MTFNUNSkKKysJ LnF1YWQJMAkjIExvY2F0aW9uIGxpc3QgdGVybWluYXRvciBlbmQgKCouTExTVDUpCisrCS5zZWN0 aW9uCS5kZWJ1Z19hcmFuZ2VzLCIiLEBwcm9nYml0cworKwkubG9uZwkweDRjCSMgTGVuZ3RoIG9m IEFkZHJlc3MgUmFuZ2VzIEluZm8KKysJLnZhbHVlCTB4MgkjIERXQVJGIFZlcnNpb24KKysJLmxv bmcJLkxkZWJ1Z19pbmZvMAkjIE9mZnNldCBvZiBDb21waWxhdGlvbiBVbml0IEluZm8KKysJLmJ5 dGUJMHg4CSMgU2l6ZSBvZiBBZGRyZXNzCisrCS5ieXRlCTAJIyBTaXplIG9mIFNlZ21lbnQgRGVz Y3JpcHRvcgorKwkudmFsdWUJMAkjIFBhZCB0byAxNiBieXRlIGJvdW5kYXJ5CisrCS52YWx1ZQkw CisrCS5xdWFkCS5MdGV4dDAJIyBBZGRyZXNzCisrCS5xdWFkCS5MZXRleHQwLS5MdGV4dDAJIyBM ZW5ndGgKKysJLnF1YWQJLkxGQjkJIyBBZGRyZXNzCisrCS5xdWFkCS5MRkU5LS5MRkI5CSMgTGVu Z3RoCisrCS5xdWFkCS5MRkIxMgkjIEFkZHJlc3MKKysJLnF1YWQJLkxGRTEyLS5MRkIxMgkjIExl bmd0aAorKwkucXVhZAkwCisrCS5xdWFkCTAKKysJLnNlY3Rpb24JLmRlYnVnX3JhbmdlcywiIixA cHJvZ2JpdHMKKysuTGRlYnVnX3JhbmdlczA6CisrCS5xdWFkCS5MdGV4dDAJIyBPZmZzZXQgMAor KwkucXVhZAkuTGV0ZXh0MAorKwkucXVhZAkuTEZCOQkjIE9mZnNldCAweDEwCisrCS5xdWFkCS5M RkU5CisrCS5xdWFkCS5MRkIxMgkjIE9mZnNldCAweDIwCisrCS5xdWFkCS5MRkUxMgorKwkucXVh ZAkwCisrCS5xdWFkCTAKKysJLnNlY3Rpb24JLmRlYnVnX2xpbmUsIiIsQHByb2diaXRzCisrLkxk ZWJ1Z19saW5lMDoKKysJLnNlY3Rpb24JLmRlYnVnX3N0ciwiTVMiLEBwcm9nYml0cywxCisrLkxB U0Y5OgorKwkuc3RyaW5nCSJsb25nIGxvbmcgaW50IgorKy5MQVNGMTQ6CisrCS5zdHJpbmcJIkdO VSBDIDQuNy4zIDIwMTMwMjIxIChwcmVyZWxlYXNlKSIKKysuTEFTRjM6CisrCS5zdHJpbmcJInVu c2lnbmVkIGludCIKKysuTEFTRjE3OgorKwkuc3RyaW5nCSJtYWluIgorKy5MQVNGMDoKKysJLnN0 cmluZwkibG9uZyB1bnNpZ25lZCBpbnQiCisrLkxBU0YxMDoKKysJLnN0cmluZwkibG9uZyBsb25n IHVuc2lnbmVkIGludCIKKysuTEFTRjE2OgorKwkuc3RyaW5nCSIiCisrLkxBU0YxMzoKKysJLnN0 cmluZwkidGFpbGNhbGwiCisrLkxBU0YxOgorKwkuc3RyaW5nCSJ1bnNpZ25lZCBjaGFyIgorKy5M QVNGODoKKysJLnN0cmluZwkiY2hhciIKKysuTEFTRjY6CisrCS5zdHJpbmcJImxvbmcgaW50Igor Ky5MQVNGMTE6CisrCS5zdHJpbmcJIm5vcmV0IgorKy5MQVNGMjoKKysJLnN0cmluZwkic2hvcnQg dW5zaWduZWQgaW50IgorKy5MQVNGNDoKKysJLnN0cmluZwkic2lnbmVkIGNoYXIiCisrLkxBU0Yx MjoKKysJLnN0cmluZwkibWF5cmV0IgorKy5MQVNGMTg6CisrCS5zdHJpbmcJImFib3J0IgorKy5M QVNGNToKKysJLnN0cmluZwkic2hvcnQgaW50IgorKy5MQVNGNzoKKysJLnN0cmluZwkic2l6ZXR5 cGUiCisrLkxBU0YxNToKKysJLnN0cmluZwkiZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQu YyIKKysJLmlkZW50CSJHQ0M6IChHTlUpIDQuNy4zIDIwMTMwMjIxIChwcmVyZWxlYXNlKSIKKysJ LnNlY3Rpb24JLm5vdGUuR05VLXN0YWNrLCIiLEBwcm9nYml0cworZGlmZiAtLWdpdCBhL2dkYi90 ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYyBiL2dkYi90ZXN0c3VpdGUv Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAuLjZhODRjNzYKKy0tLSAvZGV2L251bGwKKysrKyBiL2dkYi90ZXN0c3VpdGUv Z2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuYworQEAgLTAsMCArMSw0NiBAQAorKy8qIFRo aXMgdGVzdGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisrCisrICAgQ29w eXJpZ2h0IDIwMTMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisrCisrICAgVGhpcyBw cm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKKysgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisrICAgKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKysKKysgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysgICBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorKyAgIE1FUkNI QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUK KysgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKworKyAg IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlCisrICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0 cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworKworKyNpbmNsdWRlIDxzdGRsaWIuaD4K KysKKyt2b2xhdGlsZSBpbnQgdiA9IDE7CisrCisrc3RhdGljIF9fYXR0cmlidXRlX18gKChub2lu bGluZSwgbm9jbG9uZSwgbm9yZXR1cm4pKSB2b2lkCisrbm9yZXQgKGludCB4LCAuLi4pCisrewor KyAgYWJvcnQgKCk7CisrfQorKworK3N0YXRpYyBfX2F0dHJpYnV0ZV9fICgobm9pbmxpbmUsIG5v Y2xvbmUpKSB2b2lkCisrbWF5cmV0IChpbnQgeCkKKyt7CisrICBpZiAodikKKysgICAgbm9yZXQg KHgpOworK30KKysKKytzdGF0aWMgX19hdHRyaWJ1dGVfXyAoKG5vaW5saW5lLCBub2Nsb25lKSkg dm9pZAorK3RhaWxjYWxsIChpbnQgeCkKKyt7CisrICBtYXlyZXQgKHgpOworK30KKysKKytpbnQK KyttYWluICh2b2lkKQorK3sKKysgIHRhaWxjYWxsICgxKTsKKysgIHJldHVybiAwOworK30KK2Rp ZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2FtZDY0LXRhaWxjYWxsLW5vcmV0LmV4 cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvYW1kNjQtdGFpbGNhbGwtbm9yZXQuZXhwCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMC4uY2QxNTU5NgorLS0tIC9kZXYvbnVsbAor KysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9hbWQ2NC10YWlsY2FsbC1ub3JldC5leHAKK0BA IC0wLDAgKzEsMzYgQEAKKysjIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLgorKyMKKysjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisrIyBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorKyMg dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGlj ZW5zZSwgb3IKKysjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisrIworKyMg VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCisrIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgorKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4KKysjCisrIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5 IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorKyMgYWxvbmcgd2l0aCB0aGlzIHBy b2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisrCisr c2V0IG9wdHMge30KKytzdGFuZGFyZF90ZXN0ZmlsZSAuUworKworK2lmIFtpbmZvIGV4aXN0cyBD T01QSUxFXSB7CisrICAgICMgbWFrZSBjaGVjayBSVU5URVNURkxBR1M9ImdkYi5hcmNoL2FtZDY0 LXRhaWxjYWxsLW5vcmV0LmV4cCBDT01QSUxFPTEiCisrICAgIHN0YW5kYXJkX3Rlc3RmaWxlCisr ICAgIGxhcHBlbmQgb3B0cyBkZWJ1ZyBvcHRpbWl6ZT0tTzIKKyt9IGVsc2VpZiB7ICFbaXN0YXJn ZXQgeDg2XzY0LSotKiBdIHx8ICFbaXNfbHA2NF90YXJnZXRdIH0geworKyAgICB2ZXJib3NlICJT a2lwcGluZyAke3Rlc3RmaWxlfS4iCisrICAgIHJldHVybgorK30KKysKKytpZiB7IFtwcmVwYXJl X2Zvcl90ZXN0aW5nICR7dGVzdGZpbGV9LmV4cCAke3Rlc3RmaWxlfSAke3NyY2ZpbGV9ICRvcHRz XSB9IHsKKysgICAgcmV0dXJuIC0xCisrfQorKworK2lmICFbcnVudG8gbm9yZXRdIHsKKysgICAg cmV0dXJuIC0xCisrfQorKworK2dkYl90ZXN0ICJidCIgIiMwICtub3JldCBcXCh4PTFcXCkgYXQg XFteXHJcblxdKlxyXG4jMSArMHhcWzAtOWEtZlxdKyBpbiBtYXlyZXQgXFwoeD14QGVudHJ5PTFc XCkgYXQgXFteXHJcblxdKlxyXG4jMiArMHhcWzAtOWEtZlxdKyBpbiB0YWlsY2FsbCBcXCh4PXhA ZW50cnk9MVxcKSBhdCBcW15cclxuXF0qXHJcbiMzICsweFxbMC05YS1mXF0rIGluIG1haW4gXFwo XFwpIGF0IC4qIgorCgpkaWZmIC0tZ2l0IGEvZ2RiLXJoYno3OTU0MjQtYml0cG9zLTIzb2YyNS5w YXRjaCBiL2dkYi1yaGJ6Nzk1NDI0LWJpdHBvcy0yM29mMjUucGF0Y2gKaW5kZXggOWU2YjcxMi4u MDhlMmNkNCAxMDA2NDQKLS0tIGEvZ2RiLXJoYno3OTU0MjQtYml0cG9zLTIzb2YyNS5wYXRjaAor KysgYi9nZGItcmhiejc5NTQyNC1iaXRwb3MtMjNvZjI1LnBhdGNoCkBAIC0xMzcsMTAgKzEzNywx MCBAQCBDb250ZW50LVR5cGU6IHRleHQveC1wYXRjaAogQ29udGVudC1UcmFuc2Zlci1FbmNvZGlu ZzogN2JpdAogQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Yml0cG9z LXRkZXAucGF0Y2gKIAotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FscGhhLXRkZXAu YworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2FscGhhLXRkZXAuYwogPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvYWxwaGEtdGRlcC5jCTIwMTMtMDEt MTggMjM6MzY6NTkuOTU0MjkwMzYyICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIv YWxwaGEtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDY1MzA3NTY2ICswMTAwCistLS0gZ2Ri LTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9hbHBoYS10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDoz NC4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9hbHBoYS10ZGVw LmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMTE1OTk4MzggKzAxMDAKIEBAIC0yOTksMTggKzI5OSwx OCBAQCBhbHBoYV9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnCiAgewogICAgZW51 bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNoX2J5dGVfb3JkZXIgKGdkYmFyY2gpOwpA QCAtMTg0LDEwICsxODQsMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FscGhh LXRkZXAuYwogIAkgICAgICBtZW1jcHkgKGFyZ19yZWdfYnVmZmVyICsgb2Zmc2V0LCBjb250ZW50 cywgdGxlbik7CiAgCSAgICAgIG9mZnNldCArPSB0bGVuOwogIAkgICAgICBjb250ZW50cyArPSB0 bGVuOwotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FtZDY0LXRkZXAuYworSW5kZXg6 IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2FtZDY0LXRkZXAuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvYW1kNjQtdGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6 NTkuOTU1MjkwMzY1ICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvYW1kNjQtdGRl cC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDY2MzA3NTY5ICswMTAwCistLS0gZ2RiLTcuNS41MC4y MDEzMDMxMC5vcmlnL2dkYi9hbWQ2NC10ZGVwLmMJMjAxMy0wMy0xMCAxNjoxNjoyMy4wMDAwMDAw MDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9hbWQ2NC10ZGVwLmMJMjAxMy0w My0xMCAxNjo0NDo0Mi4xMTI1OTk4MzggKzAxMDAKIEBAIC02MTYsNyArNjE2LDcgQEAgYW1kNjRf cmV0dXJuX3ZhbHVlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYQogIHsKICAgIHN0cnVjdCBnZGJhcmNo X3RkZXAgKnRkZXAgPSBnZGJhcmNoX3RkZXAgKGdkYmFyY2gpOwpAQCAtMjE3LDEwICsyMTcsMTAg QEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FtZDY0LXRkZXAuYwogICAgICAgIGVu dW0gYW1kNjRfcmVnX2NsYXNzIGNsYXNzWzJdOwogICAgICAgIGludCBuZWVkZWRfaW50ZWdlcl9y ZWdzID0gMDsKICAgICAgICBpbnQgbmVlZGVkX3NzZV9yZWdzID0gMDsKLUluZGV4OiBnZGItNy41 LjUwLjIwMTMwMTE4L2dkYi9hbWQ2NC13aW5kb3dzLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAu MjAxMzAzMTAvZ2RiL2FtZDY0LXdpbmRvd3MtdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcu NS41MC4yMDEzMDExOC5vcmlnL2dkYi9hbWQ2NC13aW5kb3dzLXRkZXAuYwkyMDEzLTAxLTE4IDIz OjM2OjU5Ljk1NjI5MDM2OSArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FtZDY0 LXdpbmRvd3MtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDY2MzA3NTY5ICswMTAwCistLS0g Z2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9hbWQ2NC13aW5kb3dzLXRkZXAuYwkyMDEzLTAx LTAxIDA3OjMyOjM3LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2Ri L2FtZDY0LXdpbmRvd3MtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTEyNTk5ODM4ICswMTAw CiBAQCAtNzksNyArNzksNyBAQCBhbWQ2NF93aW5kb3dzX3JldHVybl92YWx1ZSAoc3RydWN0IGdk YmFyCiAgCQkJICAgIHN0cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hl LAogIAkJCSAgICBnZGJfYnl0ZSAqcmVhZGJ1ZiwgY29uc3QgZ2RiX2J5dGUgKndyaXRlYnVmKQpA QCAtMjMwLDEwICsyMzAsMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2FtZDY0 LXdpbmRvd3MtdGRlcC5jCiAgICBpbnQgcmVnbnVtID0gLTE7CiAgCiAgICAvKiBTZWUgaWYgb3Vy IHZhbHVlIGlzIHJldHVybmVkIHRocm91Z2ggYSByZWdpc3Rlci4gIElmIGl0IGlzLCB0aGVuCi1J bmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvYXJtLXRkZXAuYworSW5kZXg6IGdkYi03LjUu NTAuMjAxMzAzMTAvZ2RiL2FybS10ZGVwLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIw MTMwMTE4Lm9yaWcvZ2RiL2FybS10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1OS45NjEyOTAzNzgg KzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9hcm0tdGRlcC5jCTIwMTMtMDEtMTgg MjM6Mzc6MTIuNDY5MzA3NTczICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dk Yi9hcm0tdGRlcC5jCTIwMTMtMDMtMDEgMTY6Mzg6MjMuMDAwMDAwMDAwICswMTAwCisrKysgZ2Ri LTcuNS41MC4yMDEzMDMxMC9nZGIvYXJtLXRkZXAuYwkyMDEzLTAzLTEwIDE2OjQ0OjQyLjExNTU5 OTg0MCArMDEwMAogQEAgLTM0OTYsNyArMzQ5Niw3IEBAIGFybV92ZnBfY3ByY19yZWdfY2hhciAo ZW51bSBhcm1fdmZwX2NwcmMKICAgICBhcnJheSkuICBWZWN0b3JzIGFuZCBjb21wbGV4IHR5cGVz IGFyZSBub3QgY3VycmVudGx5IHN1cHBvcnRlZCwKICAgICBtYXRjaGluZyB0aGUgZ2VuZXJpYyBB QVBDUyBzdXBwb3J0LiAgKi8KQEAgLTMwOCwxMCArMzA4LDEwIEBAIEluZGV4OiBnZGItNy41LjUw LjIwMTMwMTE4L2dkYi9hcm0tdGRlcC5jCiAgICAgICAgc3RydWN0IHR5cGUgKmFyZ190eXBlOwog ICAgICAgIHN0cnVjdCB0eXBlICp0YXJnZXRfdHlwZTsKICAgICAgICBlbnVtIHR5cGVfY29kZSB0 eXBlY29kZTsKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9hdnItdGRlcC5jCitJbmRl eDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvYXZyLXRkZXAuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvYXZyLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5 Ljk2MzI5MDM4NSArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2F2ci10ZGVwLmMJ MjAxMy0wMS0xOCAyMzozNzoxMi40NzAzMDc1NzQgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMw MzEwLm9yaWcvZ2RiL2F2ci10ZGVwLmMJMjAxMy0wMy0wMSAxNjozODoyNC4wMDAwMDAwMDAgKzAx MDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9hdnItdGRlcC5jCTIwMTMtMDMtMTAgMTY6 NDQ6NDIuMTE2NTk5ODQwICswMTAwCiBAQCAtMTE3MCwxMyArMTE3MCwxNCBAQCBhdnJfZHVtbXlf aWQgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLCBzCiAgCiAgc3RydWN0IHN0YWNrX2l0ZW0KQEAg LTM0NSwxMiArMzQ1LDEyIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9hdnItdGRl cC5jCiAgCiAgICAgICAgLyogQ2FsY3VsYXRlIHRoZSBwb3RlbnRpYWwgbGFzdCByZWdpc3RlciBu ZWVkZWQuICAqLwogICAgICAgIGxhc3RfcmVnbnVtID0gcmVnbnVtIC0gKGxlbiArIChsZW4gJiAx KSk7Ci1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvYmZpbi10ZGVwLmMKK0luZGV4OiBn ZGItNy41LjUwLjIwMTMwMzEwL2dkYi9iZmluLXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03 LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvYmZpbi10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1OS45 NjMyOTAzODUgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9iZmluLXRkZXAuYwky MDEzLTAxLTE4IDIzOjM3OjEyLjQ3MDMwNzU3NCArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAz MTAub3JpZy9nZGIvYmZpbi10ZGVwLmMJMjAxMy0wMy0wMSAxNjozODoyNC4wMDAwMDAwMDAgKzAx MDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9iZmluLXRkZXAuYwkyMDEzLTAzLTEwIDE2 OjQ2OjI3Ljk5MjY2OTk2NCArMDEwMAogQEAgLTUwNiw3ICs1MDYsNyBAQCBiZmluX3B1c2hfZHVt bXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkCi0gICBjaGFyIGJ1Zls0XTsKKyAgIGdkYl9ieXRl IGJ1Zls0XTsKICAgIGludCBpOwogICAgbG9uZyByZWdfcjAsIHJlZ19yMSwgcmVnX3IyOwogLSAg aW50IHRvdGFsX2xlbiA9IDA7CkBAIC0zNjcsMTAgKzM2NywxMCBAQCBJbmRleDogZ2RiLTcuNS41 MC4yMDEzMDExOC9nZGIvYmZpbi10ZGVwLmMKICAKICAgICAgICBzcCAtPSBjb250YWluZXJfbGVu OwogICAgICAgIHdyaXRlX21lbW9yeSAoc3AsIHZhbHVlX2NvbnRlbnRzX3dyaXRlYWJsZSAoYXJn c1tpXSksIGNvbnRhaW5lcl9sZW4pOwotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2Ny aXMtdGRlcC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvY3Jpcy10ZGVwLmMKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL2NyaXMtdGRlcC5jCTIw MTMtMDEtMTggMjM6MzY6NTkuOTY1MjkwMzkwICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDEx OC9nZGIvY3Jpcy10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40NzEzMDc1NzggKzAxMDAKKy0t LSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL2NyaXMtdGRlcC5jCTIwMTMtMDMtMDEgMTY6 Mzg6MjQuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvY3Jpcy10 ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMTc1OTk4NDEgKzAxMDAKIEBAIC02NzAsMTMgKzY3 MCwxMyBAQCBzdGF0aWMgQ09SRV9BRERSIGNyaXNfdW53aW5kX3NwIChzdHJ1Y3QKICAKICBzdHJ1 Y3Qgc3RhY2tfaXRlbQpAQCAtNDA1LDEwICs0MDUsMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAxMTgvZ2RiL2NyaXMtdGRlcC5jCiAgICAgICAgCiAgICAgICAgLyogSG93IG1heSByZWdpc3Rl cnMgd29ydGggb2Ygc3RvcmFnZSBkbyB3ZSBuZWVkIGZvciB0aGlzIGFyZ3VtZW50PyAgKi8KICAg ICAgICByZWdfZGVtYW5kID0gKGxlbiAvIDQpICsgKGxlbiAlIDQgIT0gMCA/IDEgOiAwKTsKLUlu ZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9oODMwMC10ZGVwLmMKK0luZGV4OiBnZGItNy41 LjUwLjIwMTMwMzEwL2dkYi9oODMwMC10ZGVwLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUw LjIwMTMwMTE4Lm9yaWcvZ2RiL2g4MzAwLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk2NjI5 MDM5MiArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL2g4MzAwLXRkZXAuYwkyMDEz LTAxLTE4IDIzOjM3OjEyLjQ3MjMwNzU4MyArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAu b3JpZy9nZGIvaDgzMDAtdGRlcC5jCTIwMTMtMDEtMDEgMDc6MzI6NDQuMDAwMDAwMDAwICswMTAw CisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvaDgzMDAtdGRlcC5jCTIwMTMtMDMtMTAgMTY6 NDQ6NDIuMTE4NTk5ODQxICswMTAwCiBAQCAtNjQwLDcgKzY0MCw3IEBAIGg4MzAwX3B1c2hfZHVt bXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmcKICAJCSAgICAgICBpbnQgc3RydWN0X3JldHVybiwg Q09SRV9BRERSIHN0cnVjdF9hZGRyKQogIHsKQEAgLTQ0MSwxMCArNDQxLDEwIEBAIEluZGV4OiBn ZGItNy41LjUwLjIwMTMwMTE4L2dkYi9oODMwMC10ZGVwLmMKICAKICAJICAgICAgZm9yIChvZmZz ZXQgPSAwOyBvZmZzZXQgPCBwYWRkZWRfbGVuOyBvZmZzZXQgKz0gd29yZHNpemUpCiAgCQl7Ci1J bmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvaHBwYS10ZGVwLmMKK0luZGV4OiBnZGItNy41 LjUwLjIwMTMwMzEwL2dkYi9ocHBhLXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAu MjAxMzAxMTgub3JpZy9nZGIvaHBwYS10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1OS45NjYyOTAz OTIgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9ocHBhLXRkZXAuYwkyMDEzLTAx LTE4IDIzOjM3OjQ0LjIyODM1MTM3MCArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3Jp Zy9nZGIvaHBwYS10ZGVwLmMJMjAxMy0wMy0wMSAxNjozODoyNC4wMDAwMDAwMDAgKzAxMDAKKysr KyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9ocHBhLXRkZXAuYwkyMDEzLTAzLTEwIDE2OjQ0OjQy LjExOTU5OTg0MiArMDEwMAogQEAgLTk2MSw3ICs5NjEsNyBAQCBocHBhNjRfcHVzaF9kdW1teV9j YWxsIChzdHJ1Y3QgZ2RiYXJjaCAqCiAgICAgIHsKICAgICAgICBzdHJ1Y3QgdmFsdWUgKmFyZyA9 IGFyZ3NbaV07CkBAIC00NjMsMTAgKzQ2MywxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDEx OC9nZGIvaHBwYS10ZGVwLmMKICAgIGludCByZWdudW0sIG9mZnNldDsKICAKICAgIGlmIChsZW4g PiAxNikKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9pMzg2LWRhcndpbi10ZGVwLmMK K0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9pMzg2LWRhcndpbi10ZGVwLmMKID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL2kzODYtZGFyd2luLXRkZXAu YwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk2NzI5MDM5NCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAx MzAxMTgvZ2RiL2kzODYtZGFyd2luLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM3OjEyLjQ3MzMwNzU4 NiArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvaTM4Ni1kYXJ3aW4tdGRl cC5jCTIwMTMtMDItMTIgMjA6MDM6NTQuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4y MDEzMDMxMC9nZGIvaTM4Ni1kYXJ3aW4tdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTE5NTk5 ODQyICswMTAwCiBAQCAtMTY2LDcgKzE2Niw3IEBAIGkzODZfZGFyd2luX3B1c2hfZHVtbXlfY2Fs bCAoc3RydWN0IGdkYmEKICAKICAgIGZvciAod3JpdGVfcGFzcyA9IDA7IHdyaXRlX3Bhc3MgPCAy OyB3cml0ZV9wYXNzKyspCkBAIC00NzYsMTAgKzQ3NiwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4y MDEzMDExOC9nZGIvaTM4Ni1kYXJ3aW4tdGRlcC5jCiAgICAgICAgaW50IG51bV9tMTI4ID0gMDsK ICAKICAgICAgICBpZiAoc3RydWN0X3JldHVybikKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4 L2dkYi9pMzg2LXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL2kzODYtdGRl cC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmlnL2dkYi9pMzg2LXRk ZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk2OTI5MDM5OCArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL2kzODYtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDc1MzA3NTg5ICsw MTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9pMzg2LXRkZXAuYwkyMDEzLTAz LTEwIDE2OjE2OjIzLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2Ri L2kzODYtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTIwNTk5ODQyICswMTAwCiBAQCAtMjQw Nyw3ICsyNDA3LDcgQEAgaTM4Nl9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnZAog ICAgZ2RiX2J5dGUgYnVmWzRdOwogICAgaW50IGk7CkBAIC01NDMsMTAgKzU0MywxMCBAQCBJbmRl eDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvaTM4Ni10ZGVwLmMKICAKICAgIGlmIChpMzg2X2Zw X3JlZ251bV9wIChnZXRfZnJhbWVfYXJjaCAoZnJhbWUpLCByZWdudW0pKQogICAgICB7Ci1JbmRl eDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvaWE2NC10ZGVwLmMKK0luZGV4OiBnZGItNy41LjUw LjIwMTMwMzEwL2dkYi9pYTY0LXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAx MzAxMTgub3JpZy9nZGIvaWE2NC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1OS45NzAyOTA0MDAg KzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9pYTY0LXRkZXAuYwkyMDEzLTAxLTE4 IDIzOjM3OjEyLjQ3NjMwNzU4OSArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9n ZGIvaWE2NC10ZGVwLmMJMjAxMy0wMy0xMCAxNjoxNjoyMy4wMDAwMDAwMDAgKzAxMDAKKysrKyBn ZGItNy41LjUwLjIwMTMwMzEwL2dkYi9pYTY0LXRkZXAuYwkyMDEzLTAzLTEwIDE2OjQ0OjQyLjEy MTU5OTg0MyArMDEwMAogQEAgLTM5NzQsOCArMzk3NCwxMCBAQCBpYTY0X3B1c2hfZHVtbXlfY2Fs bCAoc3RydWN0IGdkYmFyY2ggKmdkCiAgICBpbnQgYXJnbm87CiAgICBzdHJ1Y3QgdmFsdWUgKmFy ZzsKQEAgLTU2MCwxMCArNTYwLDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9p YTY0LXRkZXAuYwogICAgaW50IGZsb2F0cmVnOwogICAgVUxPTkdFU1QgYnNwOwogICAgQ09SRV9B RERSIGZ1bmNkZXNjYWRkciwgcGMsIGdsb2JhbF9wb2ludGVyOwotSW5kZXg6IGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL2lxMjAwMC10ZGVwLmMKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dk Yi9pcTIwMDAtdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmln L2dkYi9pcTIwMDAtdGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6NTkuOTcwMjkwNDAwICswMTAwCi0r KysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvaXEyMDAwLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM3 OjEyLjQ3NjMwNzU4OSArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvaXEy MDAwLXRkZXAuYwkyMDEzLTAzLTAxIDE2OjM4OjI1LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03 LjUuNTAuMjAxMzAzMTAvZ2RiL2lxMjAwMC10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjE1 OTk4NDMgKzAxMDAKIEBAIC02NTQsOCArNjU0LDkgQEAgaXEyMDAwX3B1c2hfZHVtbXlfY2FsbCAo c3RydWN0IGdkYmFyY2ggKgogICAgY29uc3QgYmZkX2J5dGUgKnZhbDsKICAgIGJmZF9ieXRlIGJ1 Zls0XTsKQEAgLTU3NiwxMCArNTc2LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dk Yi9pcTIwMDAtdGRlcC5jCiAgICAvKiBVc2VkIHRvIGNvcHkgc3RydWN0IGFyZ3VtZW50cyBpbnRv IHRoZSBzdGFjay4gICovCiAgICBDT1JFX0FERFIgc3RydWN0X3B0cjsKICAKLUluZGV4OiBnZGIt Ny41LjUwLjIwMTMwMTE4L2dkYi9tMzJyLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAz MTAvZ2RiL20zMnItdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5v cmlnL2dkYi9tMzJyLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk3MTI5MDQwMiArMDEwMAot KysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL20zMnItdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6 MTIuNDc2MzA3NTg5ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9tMzJy LXRkZXAuYwkyMDEzLTAxLTAxIDA3OjMyOjQ2LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUu NTAuMjAxMzAzMTAvZ2RiL20zMnItdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTIxNTk5ODQz ICswMTAwCiBAQCAtNjk1LDcgKzY5NSw3IEBAIG0zMnJfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3Qg Z2RiYXJjaCAqZ2QKICAgIENPUkVfQUREUiByZWd2YWw7CiAgICBnZGJfYnl0ZSAqdmFsOwpAQCAt NTg5LDEwICs1ODksMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL20zMnItdGRl cC5jCiAgCiAgICAvKiBGaXJzdCBmb3JjZSBzcCB0byBhIDQtYnl0ZSBhbGlnbm1lbnQuICAqLwog ICAgc3AgPSBzcCAmIH4zOwotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL202OGstdGRl cC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvbTY4ay10ZGVwLmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL202OGstdGRlcC5jCTIwMTMtMDEt MTggMjM6MzY6NTkuOTcxMjkwNDAyICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIv bTY4ay10ZGVwLmMJMjAxMy0wMS0xOCAyMzozOTowNi40NzQ0NTkwNDEgKzAxMDAKKy0tLSBnZGIt Ny41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL202OGstdGRlcC5jCTIwMTMtMDEtMDEgMDc6MzI6NDYu MDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvbTY4ay10ZGVwLmMJ MjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjE1OTk4NDMgKzAxMDAKIEBAIC0zODQsNyArMzg0LDcgQEAg bTY4a19yZWdfc3RydWN0X3JldHVybl9wIChzdHJ1Y3QgZ2RiYXJjaAogIHsKICAgIHN0cnVjdCBn ZGJhcmNoX3RkZXAgKnRkZXAgPSBnZGJhcmNoX3RkZXAgKGdkYmFyY2gpOwpAQCAtNjE1LDEwICs2 MTUsMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL202OGstdGRlcC5jCiAgCiAg ICAgICAgLyogTm9uLXNjYWxhcnMgYmlnZ2VyIHRoYW4gNCBieXRlcyBhcmUgbGVmdCBhbGlnbmVk LCBvdGhlcnMgYXJlCiAgCSByaWdodCBhbGlnbmVkLiAgKi8KLUluZGV4OiBnZGItNy41LjUwLjIw MTMwMTE4L2dkYi9tODhrLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL204 OGstdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmlnL2dkYi9t ODhrLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk3MTI5MDQwMiArMDEwMAotKysrIGdkYi03 LjUuNTAuMjAxMzAxMTgvZ2RiL204OGstdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDc3MzA3 NTkwICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9tODhrLXRkZXAuYwky MDEzLTAxLTAxIDA3OjMyOjQ3LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAz MTAvZ2RiL204OGstdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTIxNTk5ODQzICswMTAwCiBA QCAtMjYwLDEzICsyNjAsMTMgQEAgbTg4a19zdG9yZV9hcmd1bWVudHMgKHN0cnVjdCByZWdjYWNo ZSAqcgogIHsKICAgIHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoID0gZ2V0X3JlZ2NhY2hlX2FyY2gg KHJlZ2NhY2hlKTsKQEAgLTY0NiwxMCArNjQ2LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMw MTE4L2dkYi9tODhrLXRkZXAuYwogIAogICAgICAgIGlmIChtODhrX2luX3JlZ2lzdGVyX3AgKHR5 cGUpKQogIAl7Ci1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvbWVwLXRkZXAuYworSW5k ZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL21lcC10ZGVwLmMKID09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBn ZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL21lcC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1 OS45NzIyOTA0MDQgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9tZXAtdGRlcC5j CTIwMTMtMDEtMTggMjM6Mzc6MTIuNDc3MzA3NTkwICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEz MDMxMC5vcmlnL2dkYi9tZXAtdGRlcC5jCTIwMTMtMDMtMDEgMTY6Mzg6MjUuMDAwMDAwMDAwICsw MTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvbWVwLXRkZXAuYwkyMDEzLTAzLTEwIDE2 OjQ0OjQyLjEyMjU5OTg0MyArMDEwMAogQEAgLTIyNzksNyArMjI3OSw3IEBAIHB1c2hfbGFyZ2Vf YXJndW1lbnRzIChDT1JFX0FERFIgc3AsIGludAogIAogICAgZm9yIChpID0gMDsgaSA8IGFyZ2M7 IGkrKykKQEAgLTY1OSwxMCArNjU5LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dk Yi9tZXAtdGRlcC5jCiAgCiAgICAgICAgaWYgKGFyZ19sZW4gPiBNRVBfR1BSX1NJWkUpCiAgICAg ICAgICB7Ci1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvbWlwcy10ZGVwLmMKK0luZGV4 OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9taXBzLXRkZXAuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvbWlwcy10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1 OS45NzUyOTA0MTQgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAu YwkyMDEzLTAxLTE4IDIzOjM3OjEyLjQ3OTMwNzU5OSArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAx MzAzMTAub3JpZy9nZGIvbWlwcy10ZGVwLmMJMjAxMy0wMi0yNCAxMzo1NDowNC4wMDAwMDAwMDAg KzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9taXBzLXRkZXAuYwkyMDEzLTAzLTEw IDE2OjQ0OjQyLjEyMzU5OTg0NCArMDEwMAogQEAgLTM5Niw3ICszOTYsNyBAQCBzdGF0aWMgdm9p ZAogIG1pcHNfeGZlcl9yZWdpc3RlciAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIHN0cnVjdCBy ZWdjYWNoZSAqcmVnY2FjaGUsCiAgCQkgICAgaW50IHJlZ19udW0sIGludCBsZW5ndGgsCkBAIC02 ODMsNyArNjgzLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL21pcHMtdGRlcC5j CiAgICBpZiAobWlwc19kZWJ1ZyAmJiBvdXQgIT0gTlVMTCkKICAgICAgewogICAgICAgIGludCBp OwotQEAgLTQzNDUsMTMgKzQzNDUsMTMgQEAgbWlwc19lYWJpX3B1c2hfZHVtbXlfY2FsbCAoc3Ry dWN0IGdkYmFyYworQEAgLTQzNDYsMTMgKzQzNDYsMTMgQEAgbWlwc19lYWJpX3B1c2hfZHVtbXlf Y2FsbCAoc3RydWN0IGdkYmFyYwogICAgICAgIGdkYl9ieXRlIHZhbGJ1ZltNQVhfUkVHSVNURVJf U0laRV07CiAgICAgICAgc3RydWN0IHZhbHVlICphcmcgPSBhcmdzW2FyZ251bV07CiAgICAgICAg c3RydWN0IHR5cGUgKmFyZ190eXBlID0gY2hlY2tfdHlwZWRlZiAodmFsdWVfdHlwZSAoYXJnKSk7 CkBAIC03MDAsNyArNzAwLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL21pcHMt dGRlcC5jCiAgCiAgICAgICAgLyogRnVuY3Rpb24gcG9pbnRlciBhcmd1bWVudHMgdG8gbWlwczE2 IGNvZGUgbmVlZCB0byBiZSBtYWRlIGludG8KICAgICAgICAgICBtaXBzMTYgcG9pbnRlcnMuICAq LwotQEAgLTQ2MzYsNyArNDYzNiw3IEBAIG1pcHNfZWFiaV9yZXR1cm5fdmFsdWUgKHN0cnVjdCBn ZGJhcmNoICoKK0BAIC00NjM3LDcgKzQ2MzcsNyBAQCBtaXBzX2VhYmlfcmV0dXJuX3ZhbHVlIChz dHJ1Y3QgZ2RiYXJjaCAqCiAgCiAgc3RhdGljIGludAogIG1pcHNfbjMybjY0X2ZwX2FyZ19jaHVu a19wIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHR5cGUgKmFyZ190eXBlLApAQCAt NzA5LDcgKzcwOSw3IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAu YwogIHsKICAgIGludCBpOwogIAotQEAgLTQ2NTEsNyArNDY1MSw3IEBAIG1pcHNfbjMybjY0X2Zw X2FyZ19jaHVua19wIChzdHJ1Y3QgZ2RiYXIKK0BAIC00NjUyLDcgKzQ2NTIsNyBAQCBtaXBzX24z Mm42NF9mcF9hcmdfY2h1bmtfcCAoc3RydWN0IGdkYmFyCiAgCiAgICBmb3IgKGkgPSAwOyBpIDwg VFlQRV9ORklFTERTIChhcmdfdHlwZSk7IGkrKykKICAgICAgewpAQCAtNzE4LDcgKzcxOCw3IEBA IEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAuYwogICAgICAgIHN0cnVj dCB0eXBlICpmaWVsZF90eXBlOwogIAogICAgICAgIC8qIFdlJ3JlIG9ubHkgbG9va2luZyBhdCBu b3JtYWwgZmllbGRzLiAgKi8KLUBAIC00NjkzLDcgKzQ2OTMsNyBAQCBtaXBzX24zMm42NF9wdXNo X2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhCitAQCAtNDY5NCw3ICs0Njk0LDcgQEAgbWlwc19uMzJu NjRfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYQogICAgaW50IGFyZ3JlZzsKICAgIGludCBm bG9hdF9hcmdyZWc7CiAgICBpbnQgYXJnbnVtOwpAQCAtNzI3LDcgKzcyNyw3IEBAIEluZGV4OiBn ZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAuYwogICAgaW50IHN0YWNrX29mZnNldCA9 IDA7CiAgICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9vcmRlciAo Z2RiYXJjaCk7CiAgICBDT1JFX0FERFIgZnVuY19hZGRyID0gZmluZF9mdW5jdGlvbl9hZGRyIChm dW5jdGlvbiwgTlVMTCk7Ci1AQCAtNTA0NCwxMSArNTA0NCwxMSBAQCBtaXBzX24zMm42NF9yZXR1 cm5fdmFsdWUgKHN0cnVjdCBnZGJhcmNoCitAQCAtNTA0NSwxMSArNTA0NSwxMSBAQCBtaXBzX24z Mm42NF9yZXR1cm5fdmFsdWUgKHN0cnVjdCBnZGJhcmNoCiAgCQkJCTogTUlQU19WMF9SRUdOVU0p OwogIAkgICBmaWVsZCA8IFRZUEVfTkZJRUxEUyAodHlwZSk7IGZpZWxkKyssIHJlZ251bSArPSAy KQogIAl7CkBAIC03NDMsNyArNzQzLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2Ri L21pcHMtdGRlcC5jCiAgCSAgaWYgKFRZUEVfTEVOR1RIIChUWVBFX0ZJRUxEX1RZUEUgKHR5cGUs IGZpZWxkKSkgPT0gMTYpCiAgCSAgICB7CiAgCSAgICAgIC8qIEEgMTYtYnl0ZSBsb25nIGRvdWJs ZSBmaWVsZCBnb2VzIGluIHR3byBjb25zZWN1dGl2ZQotQEAgLTUwOTAsOCArNTA5MCw4IEBAIG1p cHNfbjMybjY0X3JldHVybl92YWx1ZSAoc3RydWN0IGdkYmFyY2gKK0BAIC01MDkxLDggKzUwOTEs OCBAQCBtaXBzX24zMm42NF9yZXR1cm5fdmFsdWUgKHN0cnVjdCBnZGJhcmNoCiAgCSAgaWYgKG9m ZnNldCArIHhmZXIgPiBUWVBFX0xFTkdUSCAodHlwZSkpCiAgCSAgICB4ZmVyID0gVFlQRV9MRU5H VEggKHR5cGUpIC0gb2Zmc2V0OwogIAkgIGlmIChtaXBzX2RlYnVnKQpAQCAtNzU0LDcgKzc1NCw3 IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAuYwogIAkgIG1pcHNf eGZlcl9yZWdpc3RlciAoZ2RiYXJjaCwgcmVnY2FjaGUsCiAgCQkJICAgICAgZ2RiYXJjaF9udW1f cmVncyAoZ2RiYXJjaCkgKyByZWdudW0sCiAgCQkJICAgICAgeGZlciwgQkZEX0VORElBTl9VTktO T1dOLCByZWFkYnVmLCB3cml0ZWJ1ZiwKLUBAIC01MTQ5LDcgKzUxNDksNyBAQCBtaXBzX28zMl9w dXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoCitAQCAtNTE1MCw3ICs1MTUwLDcgQEAgbWlw c19vMzJfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYXJjaAogICAgaW50IGFyZ3JlZzsKICAg IGludCBmbG9hdF9hcmdyZWc7CiAgICBpbnQgYXJnbnVtOwpAQCAtNzYzLDcgKzc2Myw3IEBAIElu ZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9taXBzLXRkZXAuYwogICAgaW50IHN0YWNrX29m ZnNldCA9IDA7CiAgICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9v cmRlciAoZ2RiYXJjaCk7CiAgICBDT1JFX0FERFIgZnVuY19hZGRyID0gZmluZF9mdW5jdGlvbl9h ZGRyIChmdW5jdGlvbiwgTlVMTCk7Ci1AQCAtNTIxMywxMyArNTIxMywxMyBAQCBtaXBzX28zMl9w dXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoCitAQCAtNTIxNCwxMyArNTIxNCwxMyBAQCBt aXBzX28zMl9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoCiAgICAgICAgY29uc3QgZ2Ri X2J5dGUgKnZhbDsKICAgICAgICBzdHJ1Y3QgdmFsdWUgKmFyZyA9IGFyZ3NbYXJnbnVtXTsKICAg ICAgICBzdHJ1Y3QgdHlwZSAqYXJnX3R5cGUgPSBjaGVja190eXBlZGVmICh2YWx1ZV90eXBlIChh cmcpKTsKQEAgLTc4MCw3ICs3ODAsNyBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIv bWlwcy10ZGVwLmMKICAKICAgICAgICB2YWwgPSB2YWx1ZV9jb250ZW50cyAoYXJnKTsKICAKLUBA IC01Njc3LDggKzU2NzcsOCBAQCBtaXBzX282NF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJh cmNoCitAQCAtNTY3OCw4ICs1Njc4LDggQEAgbWlwc19vNjRfcHVzaF9kdW1teV9jYWxsIChzdHJ1 Y3QgZ2RiYXJjaAogICAgaW50IGFyZ3JlZzsKICAgIGludCBmbG9hdF9hcmdyZWc7CiAgICBpbnQg YXJnbnVtOwpAQCAtNzkxLDcgKzc5MSw3IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dk Yi9taXBzLXRkZXAuYwogICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNoX2J5 dGVfb3JkZXIgKGdkYmFyY2gpOwogICAgQ09SRV9BRERSIGZ1bmNfYWRkciA9IGZpbmRfZnVuY3Rp b25fYWRkciAoZnVuY3Rpb24sIE5VTEwpOwogIAotQEAgLTU3MzksMTMgKzU3MzksMTMgQEAgbWlw c19vNjRfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYXJjaAorQEAgLTU3NDAsMTMgKzU3NDAs MTMgQEAgbWlwc19vNjRfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYXJjaAogICAgICAgIGdk Yl9ieXRlIHZhbGJ1ZltNQVhfUkVHSVNURVJfU0laRV07CiAgICAgICAgc3RydWN0IHZhbHVlICph cmcgPSBhcmdzW2FyZ251bV07CiAgICAgICAgc3RydWN0IHR5cGUgKmFyZ190eXBlID0gY2hlY2tf dHlwZWRlZiAodmFsdWVfdHlwZSAoYXJnKSk7CkBAIC04MDgsMTAgKzgwOCwxMCBAQCBJbmRleDog Z2RiLTcuNS41MC4yMDEzMDExOC9nZGIvbWlwcy10ZGVwLmMKICAKICAgICAgICB2YWwgPSB2YWx1 ZV9jb250ZW50cyAoYXJnKTsKICAKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9tbjEw MzAwLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL21uMTAzMDAtdGRlcC5j CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmlnL2dkYi9tbjEwMzAwLXRk ZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk3NjI5MDQxNiArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL21uMTAzMDAtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDc5MzA3NTk5 ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9tbjEwMzAwLXRkZXAuYwky MDEzLTAzLTAxIDE2OjM4OjI1LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAz MTAvZ2RiL21uMTAzMDAtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTIzNTk5ODQ0ICswMTAw CiBAQCAtMTIyOCw3ICsxMjI4LDcgQEAgbW4xMDMwMF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBn ZGJhcmNoCiAgICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9vcmRl ciAoZ2RiYXJjaCk7CiAgICBjb25zdCBpbnQgcHVzaF9zaXplID0gcmVnaXN0ZXJfc2l6ZSAoZ2Ri YXJjaCwgRV9QQ19SRUdOVU0pOwpAQCAtODIxLDEwICs4MjEsMTAgQEAgSW5kZXg6IGdkYi03LjUu NTAuMjAxMzAxMTgvZ2RiL21uMTAzMDAtdGRlcC5jCiAgICBpbnQgc3RhY2tfb2Zmc2V0ID0gMDsK ICAgIGludCBhcmdudW07CiAgICBjaGFyICp2YWwsIHZhbGJ1ZltNQVhfUkVHSVNURVJfU0laRV07 Ci1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvbXQtdGRlcC5jCitJbmRleDogZ2RiLTcu NS41MC4yMDEzMDMxMC9nZGIvbXQtdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4y MDEzMDExOC5vcmlnL2dkYi9tdC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1OS45NzYyOTA0MTYg KzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9tdC10ZGVwLmMJMjAxMy0wMS0xOCAy MzozNzoxMi40NzkzMDc1OTkgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2Ri L210LXRkZXAuYwkyMDEzLTAxLTAxIDA3OjMyOjQ3LjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03 LjUuNTAuMjAxMzAzMTAvZ2RiL210LXRkZXAuYwkyMDEzLTAzLTEwIDE2OjQ0OjQyLjEyNDU5OTg0 NCArMDEwMAogQEAgLTc4Myw5ICs3ODMsOSBAQCBtdF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBn ZGJhcmNoICpnZGJhCiAgICBnZGJfYnl0ZSBidWZbTVRfTUFYX1NUUlVDVF9TSVpFXTsKICAgIGlu dCBhcmdyZWcgPSBNVF8xU1RfQVJHUkVHOwpAQCAtODM3LDEwICs4MzcsMTAgQEAgSW5kZXg6IGdk Yi03LjUuNTAuMjAxMzAxMTgvZ2RiL210LXRkZXAuYwogICAgaW50IGksIGo7CiAgCiAgICAvKiBG aXJzdCBoYW5kbGUgaG93ZXZlciBtYW55IGFyZ3Mgd2UgY2FuIGZpdCBpbnRvIE1UXzFTVF9BUkdS RUcgdGhydQotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3BwYy1zeXN2LXRkZXAuYwor SW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3BwYy1zeXN2LXRkZXAuYwogPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvcHBjLXN5c3YtdGRlcC5jCTIwMTMt MDEtMTggMjM6MzY6NTkuOTc3MjkwNDE3ICswMTAwCi0rKysgZ2RiLTcuNS41MC4yMDEzMDExOC9n ZGIvcHBjLXN5c3YtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDgwMzA3NjAyICswMTAwCist LS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9wcGMtc3lzdi10ZGVwLmMJMjAxMy0wMS0y MyAyMTowMzoxOC4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9w cGMtc3lzdi10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjQ1OTk4NDQgKzAxMDAKIEBAIC02 OCw3ICs2OCw3IEBAIHBwY19zeXN2X2FiaV9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGIKICAg IGVudW0gYmZkX2VuZGlhbiBieXRlX29yZGVyID0gZ2RiYXJjaF9ieXRlX29yZGVyIChnZGJhcmNo KTsKICAgIGludCBvcGVuY2xfYWJpID0gcHBjX3N5c3ZfdXNlX29wZW5jbF9hYmkgKHZhbHVlX3R5 cGUgKGZ1bmN0aW9uKSk7CkBAIC04OTcsMTAgKzg5NywxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4y MDEzMDExOC9nZGIvcHBjLXN5c3YtdGRlcC5jCiAgCQkgIGlmIChsZW4gPCB0ZGVwLT53b3Jkc2l6 ZSkKICAJCSAgICB3cml0ZV9tZW1vcnkgKGdwYXJhbSArIHRkZXAtPndvcmRzaXplIC0gbGVuLCB2 YWwsIGxlbik7CiAgCQkgIGVsc2UKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9ybDc4 LXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3JsNzgtdGRlcC5jCiA9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmlnL2dkYi9ybDc4LXRkZXAuYwkyMDEz LTAxLTE4IDIzOjM2OjU5Ljk3NzI5MDQxNyArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgv Z2RiL3JsNzgtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDgwMzA3NjAyICswMTAwCistLS0g Z2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9ybDc4LXRkZXAuYwkyMDEzLTAxLTAxIDA3OjMy OjUwLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3JsNzgtdGRl cC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTI0NTk5ODQ0ICswMTAwCiBAQCAtMTAxOSw4ICsxMDE5 LDggQEAgcmw3OF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnZAogICAgZm9yIChp ID0gbmFyZ3MgLSAxOyBpID49IDA7IGktLSkKICAgICAgewpAQCAtOTEyLDEwICs5MTIsMTAgQEAg SW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3JsNzgtdGRlcC5jCiAgCiAgICAgICAgc3Ag LT0gY29udGFpbmVyX2xlbjsKICAgICAgICB3cml0ZV9tZW1vcnkgKHJsNzhfbWFrZV9kYXRhX2Fk ZHJlc3MgKHNwKSwKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9yczYwMDAtYWl4LXRk ZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3JzNjAwMC1haXgtdGRlcC5jCiA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4yMDEzMDExOC5vcmlnL2dkYi9yczYwMDAtYWl4LXRk ZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk3ODI5MDQxOCArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL3JzNjAwMC1haXgtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDgwMzA3 NjAyICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9yczYwMDAtYWl4LXRk ZXAuYwkyMDEzLTAxLTAxIDA3OjMyOjUwLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuNTAu MjAxMzAzMTAvZ2RiL3JzNjAwMC1haXgtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTI1NTk5 ODQ1ICswMTAwCiBAQCAtMTk4LDkgKzE5OCw5IEBAIHJzNjAwMF9wdXNoX2R1bW15X2NhbGwgKHN0 cnVjdCBnZGJhcmNoICoKICAgIHN0cnVjdCBnZGJhcmNoX3RkZXAgKnRkZXAgPSBnZGJhcmNoX3Rk ZXAgKGdkYmFyY2gpOwogICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNoX2J5 dGVfb3JkZXIgKGdkYmFyY2gpOwpAQCAtOTM3LDEwICs5MzcsMTAgQEAgSW5kZXg6IGdkYi03LjUu NTAuMjAxMzAxMTgvZ2RiL3JzNjAwMC1haXgtdGRlcC5jCiAgCiAgICAgICAgaWYgKGFyZ2J5dGVz KQogIAl7Ci1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvczM5MC10ZGVwLmMKK0luZGV4 OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9zMzkwLXRkZXAuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvczM5MC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNjo1 OS45NzkyOTA0MjAgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zMzkwLXRkZXAu YwkyMDEzLTAxLTE4IDIzOjM3OjEyLjQ4MDMwNzYwMiArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAx MzAzMTAub3JpZy9nZGIvczM5MC10ZGVwLmMJMjAxMy0wMS0wMSAwNzozMjo1MC4wMDAwMDAwMDAg KzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9zMzkwLXRkZXAuYwkyMDEzLTAzLTEw IDE2OjQ0OjQyLjEyNTU5OTg0NSArMDEwMAogQEAgLTI0ODIsNyArMjQ4Miw3IEBAIGlzX2Zsb2F0 X2xpa2UgKHN0cnVjdCB0eXBlICp0eXBlKQogIAogIApAQCAtOTU5LDEwICs5NTksMTAgQEAgSW5k ZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3MzOTAtdGRlcC5jCiAgCiAgCWlmIChzMzkwX2Z1 bmN0aW9uX2FyZ19wYXNzX2J5X3JlZmVyZW5jZSAodHlwZSkpCiAgCSAgewotSW5kZXg6IGdkYi03 LjUuNTAuMjAxMzAxMTgvZ2RiL3Njb3JlLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAz MTAvZ2RiL3Njb3JlLXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgu b3JpZy9nZGIvc2NvcmUtdGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6NTkuOTc5MjkwNDIwICswMTAw Ci0rKysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvc2NvcmUtdGRlcC5jCTIwMTMtMDEtMTggMjM6 Mzc6MTIuNDgxMzA3NjA0ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9z Y29yZS10ZGVwLmMJMjAxMy0wMy0wMSAxNjozODoyNi4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGIt Ny41LjUwLjIwMTMwMzEwL2dkYi9zY29yZS10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjU1 OTk4NDUgKzAxMDAKIEBAIC01MTUsNyArNTE1LDcgQEAgc2NvcmVfcHVzaF9kdW1teV9jYWxsIChz dHJ1Y3QgZ2RiYXJjaCAqZwogICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNo X2J5dGVfb3JkZXIgKGdkYmFyY2gpOwogICAgaW50IGFyZ251bTsKQEAgLTk3MiwxMCArOTcyLDEw IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zY29yZS10ZGVwLmMKICAgIENPUkVf QUREUiBzdGFja19vZmZzZXQgPSAwOwogICAgQ09SRV9BRERSIGFkZHIgPSAwOwogIAotSW5kZXg6 IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3NoLXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAzMTAvZ2RiL3NoLXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgu b3JpZy9nZGIvc2gtdGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6NTkuOTgwMjkwNDIzICswMTAwCi0r KysgZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvc2gtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIu NDgxMzA3NjA0ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9zaC10ZGVw LmMJMjAxMy0wMS0wMSAwNzozMjo1MC4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIw MTMwMzEwL2dkYi9zaC10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjY1OTk4NDUgKzAxMDAK IEBAIC04MDcsNyArODA3LDcgQEAgc2hfc2tpcF9wcm9sb2d1ZSAoc3RydWN0IGdkYmFyY2ggKmdk YmFyYwogIHN0YXRpYyBpbnQKICBzaF91c2Vfc3RydWN0X2NvbnZlbnRpb24gKGludCByZW5lc2Fz X2FiaSwgc3RydWN0IHR5cGUgKnR5cGUpCkBAIC0xMDE0LDEwICsxMDE0LDEwIEBAIEluZGV4OiBn ZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zaC10ZGVwLmMKICAgIGludCBwYXNzX29uX3N0YWNrID0g MDsKICAgIGludCBsYXN0X3JlZ19hcmcgPSBJTlRfTUFYOwogIAotSW5kZXg6IGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL3NoNjQtdGRlcC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIv c2g2NC10ZGVwLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2Ri L3NoNjQtdGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6NTkuOTgwMjkwNDIzICswMTAwCi0rKysgZ2Ri LTcuNS41MC4yMDEzMDExOC9nZGIvc2g2NC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40ODIz MDc2MDYgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3NoNjQtdGRlcC5j CTIwMTMtMDMtMDEgMTY6Mzg6MjYuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEz MDMxMC9nZGIvc2g2NC10ZGVwLmMJMjAxMy0wMy0xMCAxNjo0NDo0Mi4xMjY1OTk4NDUgKzAxMDAK IEBAIC0xMDU4LDcgKzEwNTgsNyBAQCBzaDY0X3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFy Y2ggKmdkCiAgCQkgICAgICBDT1JFX0FERFIgc3RydWN0X2FkZHIpCiAgewpAQCAtMTAzNiwxMCAr MTAzNiwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvc2g2NC10ZGVwLmMKICAg IGludCBhcmdyZWdfc2l6ZTsKICAgIGludCBmcF9hcmdzWzEyXTsKICAKLUluZGV4OiBnZGItNy41 LjUwLjIwMTMwMTE4L2dkYi9zcGFyYy10ZGVwLmMKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEw L2dkYi9zcGFyYy10ZGVwLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9y aWcvZ2RiL3NwYXJjLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4MTI5MDQyNyArMDEwMAot KysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3NwYXJjLXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM3 OjEyLjQ4MjMwNzYwNiArMDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvc3Bh cmMtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6MzMuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcu NS41MC4yMDEzMDMxMC9nZGIvc3BhcmMtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTI3NTk5 ODQ2ICswMTAwCiBAQCAtNDcxLDcgKzQ3MSw3IEBAIHNwYXJjMzJfc3RvcmVfYXJndW1lbnRzIChz dHJ1Y3QgcmVnY2FjaGUKICAgIGZvciAoaSA9IDA7IGkgPCBuYXJnczsgaSsrKQogICAgICB7CkBA IC0xMDQ5LDEwICsxMDQ5LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zcGFy Yy10ZGVwLmMKICAKICAgICAgICBpZiAoc3BhcmNfc3RydWN0dXJlX29yX3VuaW9uX3AgKHR5cGUp CiAgCSAgfHwgKHNwYXJjX2Zsb2F0aW5nX3AgKHR5cGUpICYmIGxlbiA9PSAxNikKLUluZGV4OiBn ZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zcGFyYzY0LXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAu MjAxMzAzMTAvZ2RiL3NwYXJjNjQtdGRlcC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNS41MC4y MDEzMDExOC5vcmlnL2dkYi9zcGFyYzY0LXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4MjI5 MDQzMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3NwYXJjNjQtdGRlcC5jCTIw MTMtMDEtMTggMjM6Mzc6MTIuNDgyMzA3NjA2ICswMTAwCistLS0gZ2RiLTcuNS41MC4yMDEzMDMx MC5vcmlnL2dkYi9zcGFyYzY0LXRkZXAuYwkyMDEzLTAxLTAxIDA3OjMyOjUxLjAwMDAwMDAwMCAr MDEwMAorKysrIGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3NwYXJjNjQtdGRlcC5jCTIwMTMtMDMt MTAgMTY6NDQ6NDIuMTI3NTk5ODQ2ICswMTAwCiBAQCAtNjM5LDcgKzYzOSw4IEBAIHNwYXJjNjRf MTZfYnl0ZV9hbGlnbl9wIChzdHJ1Y3QgdHlwZSAqdHkKICAKICBzdGF0aWMgdm9pZApAQCAtMTEw OCwxMCArMTEwOCwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIvc3BhcmM2NC10 ZGVwLmMKICAgICAgICBpbnQgcmVnbnVtID0gLTE7CiAgICAgICAgZ2RiX2J5dGUgYnVmWzE2XTsK ICAKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi9zcHUtdGRlcC5jCitJbmRleDogZ2Ri LTcuNS41MC4yMDEzMDMxMC9nZGIvc3B1LXRkZXAuYwogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjUu NTAuMjAxMzAxMTgub3JpZy9nZGIvc3B1LXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4MjI5 MDQzMCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3NwdS10ZGVwLmMJMjAxMy0w MS0xOCAyMzozNzoxMi40ODMzMDc2MDcgKzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9y aWcvZ2RiL3NwdS10ZGVwLmMJMjAxMy0wMS0wMSAwNzozMjo1MS4wMDAwMDAwMDAgKzAxMDAKKysr KyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9zcHUtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIu MTI3NTk5ODQ2ICswMTAwCiBAQCAtMTM3Myw3ICsxMzczLDcgQEAgc3B1X3B1c2hfZHVtbXlfY2Fs bCAoc3RydWN0IGdkYmFyY2ggKmdkYgogICAgICAgIHN0cnVjdCB2YWx1ZSAqYXJnID0gYXJnc1tp XTsKICAgICAgICBzdHJ1Y3QgdHlwZSAqdHlwZSA9IGNoZWNrX3R5cGVkZWYgKHZhbHVlX3R5cGUg KGFyZykpOwpAQCAtMTEzMCwxMCArMTEzMCwxMCBAQCBJbmRleDogZ2RiLTcuNS41MC4yMDEzMDEx OC9nZGIvc3B1LXRkZXAuYwogIAkgIGludCBwcmVmZXJyZWRfc2xvdDsKICAJICAKICAJICBpZiAo c3B1X3NjYWxhcl92YWx1ZV9wICh0eXBlKSkKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dk Yi90aWM2eC10ZGVwLmMKK0luZGV4OiBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi90aWM2eC10ZGVw LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL3RpYzZ4LXRk ZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4MzI5MDQzMiArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL3RpYzZ4LXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM5OjI3Ljc3MDQ4NDUxNiAr MDEwMAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvdGljNngtdGRlcC5jCTIwMTMt MDMtMDEgMTY6Mzg6MjcuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9n ZGIvdGljNngtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTI4NTk5ODQ2ICswMTAwCiBAQCAt ODk2LDcgKzg5Niw3IEBAIHRpYzZ4X3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmcK ICAgIGludCBhcmdyZWcgPSAwOwogICAgaW50IGFyZ251bTsKQEAgLTExNzEsMjQgKzExNzEsMjQg QEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3RpYzZ4LXRkZXAuYwogIAogIAkgIGFk ZHIgPSBzcCArIHN0YWNrX29mZnNldDsKICAJICB3cml0ZV9tZW1vcnkgKGFkZHIsIHZhbCwgbGVu KTsKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi90aWxlZ3gtdGRlcC5jCitJbmRleDog Z2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvdGlsZWd4LXRkZXAuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIvdGlsZWd4LXRkZXAuYwkyMDEzLTAxLTE4IDIzOjM2 OjU5Ljk4MzI5MDQzMiArMDEwMAotKysrIGdkYi03LjUuNTAuMjAxMzAxMTgvZ2RiL3RpbGVneC10 ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40ODMzMDc2MDcgKzAxMDAKKy0tLSBnZGItNy41LjUw LjIwMTMwMzEwLm9yaWcvZ2RiL3RpbGVneC10ZGVwLmMJMjAxMy0wMy0wMiAwMjozNDo0MC4wMDAw MDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi90aWxlZ3gtdGRlcC5jCTIw MTMtMDMtMTAgMTY6NDU6MzEuODU3NjI5MTAwICswMTAwCiBAQCAtMjkxLDcgKzI5MSw3IEBAIHRp bGVneF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICoKICAgIENPUkVfQUREUiBzdGFj a19kZXN0ID0gc3A7CiAgICBpbnQgYXJncmVnID0gVElMRUdYX1IwX1JFR05VTTsKICAgIGludCBp LCBqOwogLSAgaW50IHR5cGVsZW4sIHNsYWNrbGVuLCBhbGlnbmxlbjsKICsgIExPTkdFU1QgdHlw ZWxlbiwgc2xhY2tsZW4sIGFsaWdubGVuOwotICAgc3RhdGljIGNvbnN0IGdkYl9ieXRlIHR3b196 ZXJvX3dvcmRzWzhdID0geyAwIH07CisgICBzdGF0aWMgY29uc3QgZ2RiX2J5dGUgZm91cl96ZXJv X3dvcmRzWzE2XSA9IHsgMCB9OwogIAogICAgLyogSWYgc3RydWN0X3JldHVybiBpcyAxLCB0aGVu IHRoZSBzdHJ1Y3QgcmV0dXJuIGFkZHJlc3Mgd2lsbAotSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAx MTgvZ2RiL3Y4NTAtdGRlcC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvdjg1MC10 ZGVwLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL3Y4NTAt dGRlcC5jCTIwMTMtMDEtMTggMjM6MzY6NTkuOTg0MjkwNDM0ICswMTAwCi0rKysgZ2RiLTcuNS41 MC4yMDEzMDExOC9nZGIvdjg1MC10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40ODQzMDc2MDgg KzAxMDAKLUBAIC04MDgsNyArODA4LDcgQEAgdjg1MF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBn ZGJhcmNoICpnZAorLS0tIGdkYi03LjUuNTAuMjAxMzAzMTAub3JpZy9nZGIvdjg1MC10ZGVwLmMJ MjAxMy0wMy0wMiAxOToyNjozMC4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMw MzEwL2dkYi92ODUwLXRkZXAuYwkyMDEzLTAzLTEwIDE2OjQ0OjQyLjEyODU5OTg0NiArMDEwMAor QEAgLTgxNyw3ICs4MTcsNyBAQCB2ODUwX3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2gg KmdkCiAgICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9vcmRlciAo Z2RiYXJjaCk7CiAgICBpbnQgYXJncmVnOwogICAgaW50IGFyZ251bTsKQEAgLTExOTcsNyArMTE5 Nyw3IEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi92ODUwLXRkZXAuYwogICAgaW50 IHN0YWNrX29mZnNldDsKICAKICAgIC8qIFRoZSBvZmZzZXQgb250byB0aGUgc3RhY2sgYXQgd2hp Y2ggd2Ugd2lsbCBzdGFydCBjb3B5aW5nIHBhcmFtZXRlcnMKLUBAIC04MzMsNyArODMzLDcgQEAg djg1MF9wdXNoX2R1bW15X2NhbGwgKHN0cnVjdCBnZGJhcmNoICpnZAorQEAgLTg0Miw3ICs4NDIs NyBAQCB2ODUwX3B1c2hfZHVtbXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkCiAgICAgICBpbiBm b3VyIHJlZ2lzdGVycyBhdmFpbGFibGUuICBMb29wIHRocnUgYXJncyBmcm9tIGZpcnN0IHRvIGxh c3QuICAqLwogICAgZm9yIChhcmdudW0gPSAwOyBhcmdudW0gPCBuYXJnczsgYXJnbnVtKyspCiAg ICAgIHsKQEAgLTEyMDYsMTAgKzEyMDYsMTAgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAxMTgv Z2RiL3Y4NTAtdGRlcC5jCiAgICAgICAgZ2RiX2J5dGUgKnZhbDsKICAgICAgICBnZGJfYnl0ZSB2 YWxidWZbdjg1MF9yZWdfc2l6ZV07CiAgCi1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDExOC9nZGIv dmF4LXRkZXAuYworSW5kZXg6IGdkYi03LjUuNTAuMjAxMzAzMTAvZ2RiL3ZheC10ZGVwLmMKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy41LjUwLjIwMTMwMTE4Lm9yaWcvZ2RiL3ZheC10ZGVwLmMJMjAx My0wMS0xOCAyMzozNjo1OS45ODQyOTA0MzQgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMTE4 L2dkYi92YXgtdGRlcC5jCTIwMTMtMDEtMTggMjM6Mzc6MTIuNDg0MzA3NjA4ICswMTAwCistLS0g Z2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi92YXgtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6 MzQuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvdmF4LXRkZXAu YwkyMDEzLTAzLTEwIDE2OjQ0OjQyLjEyODU5OTg0NiArMDEwMAogQEAgLTExNSw3ICsxMTUsNyBA QCB2YXhfc3RvcmVfYXJndW1lbnRzIChzdHJ1Y3QgcmVnY2FjaGUgKnJlCiAgICBzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCA9IGdldF9yZWdjYWNoZV9hcmNoIChyZWdjYWNoZSk7CiAgICBlbnVtIGJm ZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9vcmRlciAoZ2RiYXJjaCk7CkBAIC0x MjI4LDEwICsxMjI4LDEwIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi92YXgtdGRl cC5jCiAgCiAgICAgICAgc3AgLT0gKGxlbiArIDMpICYgfjM7CiAgICAgICAgY291bnQgKz0gKGxl biArIDMpIC8gNDsKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi94c3Rvcm15MTYtdGRl cC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIveHN0b3JteTE2LXRkZXAuYwogPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIveHN0b3JteTE2LXRkZXAu YwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4NDI5MDQzNCArMDEwMAotKysrIGdkYi03LjUuNTAuMjAx MzAxMTgvZ2RiL3hzdG9ybXkxNi10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40ODQzMDc2MDgg KzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3hzdG9ybXkxNi10ZGVwLmMJ MjAxMy0wMy0wMSAxNjozODoyNy4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMw MzEwL2dkYi94c3Rvcm15MTYtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDY6MDUuODg4NjUzMjAxICsw MTAwCiBAQCAtMjM1LDggKzIzNSw5IEBAIHhzdG9ybXkxNl9wdXNoX2R1bW15X2NhbGwgKHN0cnVj dCBnZGJhcmMKICAgIGVudW0gYmZkX2VuZGlhbiBieXRlX29yZGVyID0gZ2RiYXJjaF9ieXRlX29y ZGVyIChnZGJhcmNoKTsKICAgIENPUkVfQUREUiBzdGFja19kZXN0ID0gc3A7CkBAIC0xMjQyLDEy ICsxMjQyLDEyIEBAIEluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi94c3Rvcm15MTYtdGRl cC5jCiArICBMT05HRVNUIGo7CiArICBMT05HRVNUIHR5cGVsZW47CiAgICBjb25zdCBnZGJfYnl0 ZSAqdmFsOwotICAgY2hhciBidWZbeHN0b3JteTE2X3BjX3NpemVdOworICAgZ2RiX2J5dGUgYnVm W3hzdG9ybXkxNl9wY19zaXplXTsKICAKLUluZGV4OiBnZGItNy41LjUwLjIwMTMwMTE4L2dkYi94 dGVuc2EtdGRlcC5jCitJbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIveHRlbnNhLXRkZXAu YwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0tIGdkYi03LjUuNTAuMjAxMzAxMTgub3JpZy9nZGIveHRlbnNhLXRk ZXAuYwkyMDEzLTAxLTE4IDIzOjM2OjU5Ljk4NTI5MDQzNiArMDEwMAotKysrIGdkYi03LjUuNTAu MjAxMzAxMTgvZ2RiL3h0ZW5zYS10ZGVwLmMJMjAxMy0wMS0xOCAyMzozNzoxMi40ODQzMDc2MDgg KzAxMDAKKy0tLSBnZGItNy41LjUwLjIwMTMwMzEwLm9yaWcvZ2RiL3h0ZW5zYS10ZGVwLmMJMjAx My0wMS0wMSAwNzo0MToyOS4wMDAwMDAwMDAgKzAxMDAKKysrKyBnZGItNy41LjUwLjIwMTMwMzEw L2dkYi94dGVuc2EtdGRlcC5jCTIwMTMtMDMtMTAgMTY6NDQ6NDIuMTI5NTk5ODQ3ICswMTAwCiBA QCAtMTY1Myw4ICsxNjUzLDcgQEAgeHRlbnNhX3N0b3JlX3JldHVybl92YWx1ZSAoc3RydWN0IHR5 cGUgKgogIAogICAgICAgIGlmIChsZW4gPiAoY2FsbHNpemUgPiA4ID8gOCA6IDE2KSkKCmRpZmYg LS1naXQgYS9nZGIuc3BlYyBiL2dkYi5zcGVjCmluZGV4IDI5MTM2ZDEuLjdkNGViMzggMTAwNjQ0 Ci0tLSBhL2dkYi5zcGVjCisrKyBiL2dkYi5zcGVjCkBAIC0yNywxNCArMjcsMTQgQEAKIFN1bW1h cnk6IEEgR05VIHNvdXJjZS1sZXZlbCBkZWJ1Z2dlciBmb3IgQywgQysrLCBGb3J0cmFuLCBHbyBh bmQgb3RoZXIgbGFuZ3VhZ2VzCiBOYW1lOiAlez9zY2xfcHJlZml4fWdkYgogCi0lZ2xvYmFsIHNu YXAgICAgICAgMjAxMzAyMTUKKyVnbG9iYWwgc25hcCAgICAgICAyMDEzMDMxMAogIyBTZWUgdGlt ZXN0YW1wIG9mIHNvdXJjZSBnbnVsaWIgaW5zdGFsbGVkIGludG8gZ2RiL2dudWxpYi8gLgogJWds b2JhbCBzbmFwZ251bGliIDIwMTIxMjEzCi1WZXJzaW9uOiA3LjUuNTAuMjAxMzAyMTUKK1ZlcnNp b246IDcuNS41MC4yMDEzMDMxMAogCiAjIFRoZSByZWxlYXNlIGFsd2F5cyBjb250YWlucyBhIGxl YWRpbmcgcmVzZXJ2ZWQgbnVtYmVyLCBzdGFydCBpdCBhdCAxLgogIyBgdXBzdHJlYW0nIGlzIG5v dCBhIHBhcnQgb2YgYG5hbWUnIHRvIHN0YXkgZnVsbHkgcnBtIGRlcGVuZGVuY2llcyBjb21wYXRp YmxlIGZvciB0aGUgdGVzdGluZy4KLVJlbGVhc2U6IDklez9kaXN0fQorUmVsZWFzZTogMTAlez9k aXN0fQogCiBMaWNlbnNlOiBHUEx2MysgYW5kIEdQTHYzKyB3aXRoIGV4Y2VwdGlvbnMgYW5kIEdQ THYyKyBhbmQgR1BMdjIrIHdpdGggZXhjZXB0aW9ucyBhbmQgR1BMKyBhbmQgTEdQTHYyKyBhbmQg QlNEIGFuZCBQdWJsaWMgRG9tYWluCiBHcm91cDogRGV2ZWxvcG1lbnQvRGVidWdnZXJzCkBAIC01 NTcsNiArNTU3LDExIEBAIFBhdGNoODE2OiBnZGItcmhiejc5NTQyNC1iaXRwb3MtMjVvZjI1LnBh dGNoCiBQYXRjaDgxNzogZ2RiLXJoYno3OTU0MjQtYml0cG9zLTI1b2YyNS10ZXN0LnBhdGNoCiBQ YXRjaDgxODogZ2RiLXJoYno3OTU0MjQtYml0cG9zLWxhenl2YWx1ZS5wYXRjaAogCisjIEZpeCB2 YXJpb3VzIGVudHJ5LXZhbHVlcyBzdWItb3B0aW1hbCByZXN1bHRzLgorIyA9cHVzaAorUGF0Y2g4 MjU6IGdkYi1lbnRyeXZhbC0xb2YyLnBhdGNoCitQYXRjaDgyNjogZ2RiLWVudHJ5dmFsLTJvZjIu cGF0Y2gKKwogJWlmIDAleyE/cmhlbDoxfSB8fCAwJXs/cmhlbH0gPiA2CiAjIFJMX1NUQVRFX0ZF RE9SQV9HREIgd291bGQgbm90IGJlIGZvdW5kIGZvcjoKICMgUGF0Y2g2NDI6IGdkYi1yZWFkbGlu ZTYyLWFzay1tb3JlLXJoLnBhdGNoCkBAIC04NjksNiArODc0LDggQEAgZmluZCAtbmFtZSAiKi5p bmZvKiJ8eGFyZ3Mgcm0gLWYKICVwYXRjaDgxNiAtcDEKICVwYXRjaDgxNyAtcDEKICVwYXRjaDgx OCAtcDEKKyVwYXRjaDgyNSAtcDEKKyVwYXRjaDgyNiAtcDEKIAogJXBhdGNoMzkzIC1wMQogJWlm IDAleyE/ZWw1OjF9IHx8IDAlez9zY2w6MX0KQEAgLTEzNzAsNiArMTM3NywxMCBAQCBmaQogJWVu ZGlmICMgMCV7IT9lbDU6MX0gfHwgIiV7X3RhcmdldF9jcHV9IiA9PSAibm9hcmNoIgogCiAlY2hh bmdlbG9nCisqIFN1biBNYXIgMTAgMjAxMyBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxA cmVkaGF0LmNvbT4gLSA3LjUuNTAuMjAxMzAzMTAtMTAuZmMxOQorLSBSZWJhc2UgdG8gRlNGIEdE QiA3LjUuNTAuMjAxMzAzMTAgKHByZS03LjYgc25hcHNob3QpLgorLSBGaXggdmFyaW91cyBlbnRy eS12YWx1ZXMgc3ViLW9wdGltYWwgcmVzdWx0cy4KKwogKiBNb24gRmViIDI1IDIwMTMgSmFuIEty YXRvY2h2aWwgPGphbi5rcmF0b2NodmlsQHJlZGhhdC5jb20+IC0gNy41LjUwLjIwMTMwMjE1LTku ZmMxOQogLSB0ZXN0c3VpdGU6IEZpeCBnZGIuYXJjaC9wb3dlcnBjLXBvd2VyNi5leHAgdGVzdGNh c2UgKElCTSwgUkggQlogODkwOTAwKS4KIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2Vz CmluZGV4IDJhNzgyZmUuLmU3YTRjNWMgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNl cwpAQCAtMSwyICsxLDIgQEAKIDQ5ODEzMDdhYTk2MTliYmVjNWI3MzI2MWU0ZTQxYzhkICBnZGIt bGlic3RkYysrLXYzLXB5dGhvbi1yMTU1OTc4LnRhci5iejIKLThkNGQ1YmFmMDZhY2Y3Yzk1MjEx MzAyZWZmZmIxNmFkICBnZGItNy41LjUwLjIwMTMwMjE1LnRhci5iejIKK2Q5NzY5NDg2ZmJhMTc4 OWU2MDk2ODViZTBhMzgzYjg4ICBnZGItNy41LjUwLjIwMTMwMzEwLnRhci5iejIK