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.9.90.20150709 (7.10 branch snapshot). Date: Sat, 27 Jun 2026 23:57:05 GMT Message-ID: <178260462578.1.16476348153297746950.rpms-gdb-ae96b4a09515@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: ae96b4a09515766d177b191e4af611c8e19399b2 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGdkYi0xNy4yLXJlYmFzZS1mNDQKQ29tbWl0IDogYWU5NmI0YTA5NTE1NzY2ZDE3N2IxOTFlNGFm NjExYzhlMTkzOTliMgpBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVk aGF0LmNvbT4KRGF0ZSAgIDogMjAxNS0wNy0xMFQxMDoyNTowOSswMjowMApTdGF0cyAgOiArNTQ0 Ly04NjggaW4gMTMgZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9y Zy9ycG1zL2dkYi9jL2FlOTZiNGEwOTUxNTc2NmQxNzdiMTkxZTRhZjYxMWM4ZTE5Mzk5YjI/YnJh bmNoPWdkYi0xNy4yLXJlYmFzZS1mNDQKCkxvZzoKUmViYXNlIHRvIEZTRiBHREIgNy45LjkwLjIw MTUwNzA5ICg3LjEwIGJyYW5jaCBzbmFwc2hvdCkuCgotLS0KZGlmZiAtLWdpdCBhLy5naXRpZ25v cmUgYi8uZ2l0aWdub3JlCmluZGV4IDliZjVmNjIuLjBiOGU5M2IgMTAwNjQ0Ci0tLSBhLy5naXRp Z25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtMSwyICsxLDIgQEAKIC9nZGItbGlic3RkYysrLXYz LXB5dGhvbi1yMjI1NTIxLnRhci54egotL2dkYi03LjkuNTAuMjAxNTA1MzEudGFyLnh6CisvZ2Ri LTcuOS45MC4yMDE1MDcwOS50YXIueHoKCmRpZmYgLS1naXQgYS9nZGItNi42LWJ1aWxkaWQtbG9j YXRlLW1pc2xlYWRpbmctd2FybmluZy1taXNzaW5nLWRlYnVnaW5mby1yaGJ6OTgxMTU0LnBhdGNo IGIvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS1taXNsZWFkaW5nLXdhcm5pbmctbWlzc2luZy1kZWJ1 Z2luZm8tcmhiejk4MTE1NC5wYXRjaAppbmRleCAwNDRhNDA4Li4xMjZkNmEyIDEwMDY0NAotLS0g YS9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLW1pc2xlYWRpbmctd2FybmluZy1taXNzaW5nLWRlYnVn aW5mby1yaGJ6OTgxMTU0LnBhdGNoCisrKyBiL2dkYi02LjYtYnVpbGRpZC1sb2NhdGUtbWlzbGVh ZGluZy13YXJuaW5nLW1pc3NpbmctZGVidWdpbmZvLXJoYno5ODExNTQucGF0Y2gKQEAgLTE1LDEw ICsxNSwxMCBAQCBDb21tZW50cyBieSBTZXJnaW8gRHVyaWdhbiBKdW5pb3IgPHNlcmdpb2RqQHJl ZGhhdC5jb20+OgogICBOVUxMIGFmdGVyIGl0IGlzIGZyZWUnZCwgb3RoZXJ3aXNlIHRoZSBjb2Rl IGJlbG93IHRoaW5rcyB0aGF0IGl0IGlzIHN0aWxsCiAgIHZhbGlkIGFuZCBkb2Vzbid0IHByaW50 IHRoZSBuZWNlc3Nhcnkgd2FybmluZyAoIlRyeTogeXVtIGluc3RhbGwgLi4uIikuCiAKLUluZGV4 OiBnZGItNy43L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uvcmhiejk4MTE1NC1taXNsZWFkaW5nLXl1 bS1pbnN0YWxsLXdhcm5pbmcuZXhwCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdGVz dHN1aXRlL2dkYi5iYXNlL3JoYno5ODExNTQtbWlzbGVhZGluZy15dW0taW5zdGFsbC13YXJuaW5n LmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQotLS0tIC9kZXYvbnVsbAotKysrIGdkYi03LjcvZ2RiL3Rlc3RzdWl0 ZS9nZGIuYmFzZS9yaGJ6OTgxMTU0LW1pc2xlYWRpbmcteXVtLWluc3RhbGwtd2FybmluZy5leHAK Ky0tLSAvZGV2L251bGwJMTk3MC0wMS0wMSAwMDowMDowMC4wMDAwMDAwMDAgKzAwMDAKKysrKyBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uvcmhiejk4MTE1NC1taXNs ZWFkaW5nLXl1bS1pbnN0YWxsLXdhcm5pbmcuZXhwCTIwMTUtMDctMDkgMjI6MjI6MjYuMjc4MzA0 NjUzICswMjAwCiBAQCAtMCwwICsxLDk3IEBACiArIyAgIENvcHlyaWdodCAoQykgMjAxNCAgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiArCkBAIC0xMTcsMTUgKzExNywxOSBAQCBJbmRl eDogZ2RiLTcuNy9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3JoYno5ODExNTQtbWlzbGVhZGluZy15 dW0taW5zdGFsbC13YXJuaW5nLgogKwogKyMgTGVhdmluZyB0aGUgbGluayB0aGVyZSB3aWxsIGNh dXNlIGJyZWFrYWdlIGluIHRoZSBuZXh0IHJ1bi4KICtyZW1vdGVfZXhlYyBidWlsZCAicm0gLWYg JHtvYmpkaXJ9LyR7c3ViZGlyfS8ke2J1aWxkX2lkX3dpdGhvdXRfZGVidWd9IgotSW5kZXg6IGdk Yi03LjcvZ2RiL2J1aWxkLWlkLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9idWls ZC1pZC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuNy5vcmlnL2dkYi9idWlsZC1pZC5jCi0rKysg Z2RiLTcuNy9nZGIvYnVpbGQtaWQuYwotQEAgLTU4OCw2ICs1ODgsNyBAQCBidWlsZF9pZF90b19k ZWJ1Z19iZmQgKHNpemVfdCBidWlsZF9pZF9sCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmln L2dkYi9idWlsZC1pZC5jCTIwMTUtMDctMDkgMjI6MjI6MjYuMjc4MzA0NjUzICswMjAwCisrKysg Z2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYnVpbGQtaWQuYwkyMDE1LTA3LTA5IDIyOjIyOjUxLjM5 ODUwMjMyOSArMDIwMAorQEAgLTU4OSw3ICs1ODksMTAgQEAgYnVpbGRfaWRfdG9fZGVidWdfYmZk IChzaXplX3QgYnVpbGRfaWRfbAorIAkgIGRvX2NsZWFudXBzIChpbm5lcik7CisgCiAgCSAgaWYg KGFiZmQgPT0gTlVMTCkKLSAJICAgIHsKLSAJICAgICAgeGZyZWUgKGZpbGVuYW1lKTsKKy0JICAg IGNvbnRpbnVlOworKwkgICAgewogKwkgICAgICBmaWxlbmFtZSA9IE5VTEw7Ci0gCSAgICAgIGNv bnRpbnVlOwotIAkgICAgfQorKwkgICAgICBjb250aW51ZTsKKysJICAgIH0KICAKKyAJICBpZiAo YnVpbGRfaWRfdmVyaWZ5IChhYmZkLCBidWlsZF9pZF9sZW4sIGJ1aWxkX2lkKSkKKyAJICAgIGJy ZWFrOwoKZGlmZiAtLWdpdCBhL2dkYi02LjYtYnVpbGRpZC1sb2NhdGUtcnBtLnBhdGNoIGIvZ2Ri LTYuNi1idWlsZGlkLWxvY2F0ZS1ycG0ucGF0Y2gKaW5kZXggNjVhNGI1My4uYWJkMDc0NSAxMDA2 NDQKLS0tIGEvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS1ycG0ucGF0Y2gKKysrIGIvZ2RiLTYuNi1i dWlsZGlkLWxvY2F0ZS1ycG0ucGF0Y2gKQEAgLTEsNyArMSw3IEBACi1JbmRleDogZ2RiLTcuOC41 MC4yMDE0MTIyOC9nZGIvZXZlbnQtdG9wLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dk Yi9ldmVudC10b3AuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9n ZGIvZXZlbnQtdG9wLmMJMjAxNS0wMS0wMSAxNzoxMjoyNC44ODE0ODkwODcgKzAxMDAKLSsrKyBn ZGItNy44LjUwLjIwMTQxMjI4L2dkYi9ldmVudC10b3AuYwkyMDE1LTAxLTAxIDE3OjEyOjI4Ljgy MTQ4NjgwMyArMDEwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZXZlbnQtdG9w LmMJMjAxNS0wNy0wOSAxODoyMjo0NS4wMDgzODM3OTQgKzAyMDAKKysrKyBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9ldmVudC10b3AuYwkyMDE1LTA3LTA5IDE4OjIyOjUxLjQwMTQzODMzNyArMDIw MAogQEAgLTM3LDYgKzM3LDcgQEAKICAjaW5jbHVkZSAiZ2RiY21kLmgiCQkvKiBmb3IgZG9udF9y ZXBlYXQoKSAqLwogICNpbmNsdWRlICJhbm5vdGF0ZS5oIgpAQCAtMjgsMjQgKzI4LDI0IEBAIElu ZGV4OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9ldmVudC10b3AuYwogICAgb2xkX2NoYWluID0g bWFrZV9jbGVhbnVwIChmcmVlX2N1cnJlbnRfY29udGVudHMsICZhY3R1YWxfZ2RiX3Byb21wdCk7 CiAgCiAgICAvKiBEbyBub3QgY2FsbCB0aGUgcHl0aG9uIGhvb2sgb24gYW4gZXhwbGljaXQgcHJv bXB0IGNoYW5nZSBhcwotSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL3N5bWZpbGUuaAor SW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3N5bWZpbGUuaAogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0t IGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9nZGIvc3ltZmlsZS5oCTIwMTUtMDEtMDEgMTc6MTI6 MjQuODgxNDg5MDg3ICswMTAwCi0rKysgZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIvc3ltZmlsZS5o CTIwMTUtMDEtMDEgMTc6MTI6MjguODIyNDg2ODAyICswMTAwCi1AQCAtNTc3LDYgKzU3Nyw4IEBA IHZvaWQgbWFwX3N5bWJvbF9maWxlbmFtZXMgKHN5bWJvbF9maWxlbmEKKy0tLSBnZGItNy45Ljkw LjIwMTUwNzA5Lm9yaWcvZ2RiL3N5bWZpbGUuaAkyMDE1LTA3LTA5IDE4OjIyOjQ1LjAwOTM4Mzgw MiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3N5bWZpbGUuaAkyMDE1LTA3LTA5 IDE4OjIyOjUxLjQwMjQzODM0NiArMDIwMAorQEAgLTU4Nyw2ICs1ODcsOCBAQCB2b2lkIG1hcF9z eW1ib2xfZmlsZW5hbWVzIChzeW1ib2xfZmlsZW5hCiAgLyogYnVpbGQtaWQgc3VwcG9ydC4gICov Ci0gZXh0ZXJuIHN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxkX2lkX2FkZHJfZ2V0IChDT1JFX0FE RFIgYWRkcik7CisgZXh0ZXJuIHN0cnVjdCBiZmRfYnVpbGRfaWQgKmJ1aWxkX2lkX2FkZHJfZ2V0 IChDT1JFX0FERFIgYWRkcik7CiAgZXh0ZXJuIHZvaWQgZGVidWdfcHJpbnRfbWlzc2luZyAoY29u c3QgY2hhciAqYmluYXJ5LCBjb25zdCBjaGFyICpkZWJ1Zyk7CiArZXh0ZXJuIHZvaWQgZGVidWdf Zmx1c2hfbWlzc2luZyAodm9pZCk7CiArI2RlZmluZSBCVUlMRF9JRF9NQUlOX0VYRUNVVEFCTEVf RklMRU5BTUUgXygidGhlIG1haW4gZXhlY3V0YWJsZSBmaWxlIikKICAKICAvKiBGcm9tIGR3YXJm MnJlYWQuYyAqLwogIAotSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL3Rlc3RzdWl0ZS9s aWIvZ2RiLmV4cAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3Rlc3RzdWl0ZS9saWIv Z2RiLmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9nZGIvdGVz dHN1aXRlL2xpYi9nZGIuZXhwCTIwMTUtMDEtMDEgMTc6MTI6MjQuODgzNDg5MDg1ICswMTAwCi0r KysgZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIvdGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTUtMDEt MDEgMTc6MTI6MjguODIzNDg2ODAxICswMTAwCi1AQCAtMTUyMiw3ICsxNTIyLDcgQEAgcHJvYyBk ZWZhdWx0X2dkYl9zdGFydCB7IH0geworLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIv dGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTUtMDctMDkgMTg6MjI6NDUuMDEwMzgzODExICswMjAw CisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTUt MDctMDkgMTg6MjI6NTEuNDAzNDM4MzU0ICswMjAwCitAQCAtMTU3Myw3ICsxNTczLDcgQEAgcHJv YyBkZWZhdWx0X2dkYl9zdGFydCB7IH0gewogIAkgICAgd2FybmluZyAiQ291bGRuJ3Qgc2V0IHRo ZSB3aWR0aCB0byAwLiIKICAJfQogICAgICB9CkBAIC01NCwxMCArNTQsMTAgQEAgSW5kZXg6IGdk Yi03LjguNTAuMjAxNDEyMjgvZ2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAogICAgICBzZW5kX2dk YiAic2V0IGJ1aWxkLWlkLXZlcmJvc2UgMFxuIgogICAgICBnZGJfZXhwZWN0IDEwIHsKICAJLXJl ICIkZ2RiX3Byb21wdCAkIiB7Ci1JbmRleDogZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIvdGVzdHN1 aXRlL2xpYi9taS1zdXBwb3J0LmV4cAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3Rl c3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy44LjUwLjIw MTQxMjI4Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAJMjAxNS0wMS0wMSAx NzoxMjoyNC44ODQ0ODkwODUgKzAxMDAKLSsrKyBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi90ZXN0 c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCTIwMTUtMDEtMDEgMTc6MTI6MjguODIzNDg2ODAxICsw MTAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi90ZXN0c3VpdGUvbGliL21pLXN1 cHBvcnQuZXhwCTIwMTUtMDctMDkgMTg6MjI6NDUuMDEyMzgzODI4ICswMjAwCisrKysgZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0LmV4cAkyMDE1LTA3LTA5 IDE4OjIyOjUxLjQwNDQzODM2MyArMDIwMAogQEAgLTIxNCw3ICsyMTQsNyBAQCBwcm9jIGRlZmF1 bHRfbWlfZ2RiX3N0YXJ0IHsgYXJncyB9IHsKICAJICAgIHdhcm5pbmcgIkNvdWxkbid0IHNldCB0 aGUgd2lkdGggdG8gMC4iCiAgCX0KQEAgLTY3LDEwICs2NywxMCBAQCBJbmRleDogZ2RiLTcuOC41 MC4yMDE0MTIyOC9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0LmV4cAogICAgICBzZW5kX2dk YiAiMTkwLWdkYi1zZXQgYnVpbGQtaWQtdmVyYm9zZSAwXG4iCiAgICAgIGdkYl9leHBlY3QgMTAg ewogIAktcmUgIi4qMTkwLWdkYi1zZXQgYnVpbGQtaWQtdmVyYm9zZSAwXHJcbjE5MFxcXF5kb25l XHJcbiRtaV9nZGJfcHJvbXB0JCIgewotSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL3R1 aS90dWktaW50ZXJwLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi90dWkvdHVpLWlu dGVycC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOC41MC4yMDE0MTIyOC5vcmlnL2dkYi90dWkv dHVpLWludGVycC5jCTIwMTUtMDEtMDEgMTc6MTI6MjguODI0NDg2ODAxICswMTAwCi0rKysgZ2Ri LTcuOC41MC4yMDE0MTIyOC9nZGIvdHVpL3R1aS1pbnRlcnAuYwkyMDE1LTAxLTAxIDE3OjEyOjQz LjI0MDQ3ODQ0NCArMDEwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvdHVpL3R1 aS1pbnRlcnAuYwkyMDE1LTA3LTA5IDE4OjIyOjQ1LjAxMjM4MzgyOCArMDIwMAorKysrIGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL3R1aS90dWktaW50ZXJwLmMJMjAxNS0wNy0wOSAxODoyMjo1MS40 MDQ0MzgzNjMgKzAyMDAKIEBAIC0zMSw2ICszMSw3IEBACiAgI2luY2x1ZGUgInR1aS90dWktaW8u aCIKICAjaW5jbHVkZSAiaW5mcnVuLmgiCkBAIC03OSwxMCArNzksMTAgQEAgSW5kZXg6IGdkYi03 LjguNTAuMjAxNDEyMjgvZ2RiL3R1aS90dWktaW50ZXJwLmMKICAKICBzdGF0aWMgc3RydWN0IHVp X291dCAqdHVpX3VpX291dCAoc3RydWN0IGludGVycCAqc2VsZik7CiAgCi1JbmRleDogZ2RiLTcu OC41MC4yMDE0MTIyOC9nZGIvYWNsb2NhbC5tNAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkv Z2RiL2FjbG9jYWwubTQKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy44LjUwLjIwMTQxMjI4Lm9yaWcv Z2RiL2FjbG9jYWwubTQJMjAxNS0wMS0wMSAxNzoxMjoyNC44ODU0ODkwODQgKzAxMDAKLSsrKyBn ZGItNy44LjUwLjIwMTQxMjI4L2dkYi9hY2xvY2FsLm00CTIwMTUtMDEtMDEgMTc6MTI6MjguODI0 NDg2ODAxICswMTAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9hY2xvY2FsLm00 CTIwMTUtMDctMDkgMTg6MjI6NDUuMDEzMzgzODM3ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvYWNsb2NhbC5tNAkyMDE1LTA3LTA5IDE4OjIyOjUxLjQwNTQzODM3MSArMDIwMAog QEAgLTExLDYgKzExLDIyMSBAQAogICMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQogICMgUEFSVElDVUxBUiBQVVJQT1NFLgpAQCAt MzA1LDEwICszMDUsMTAgQEAgSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL2FjbG9jYWwu bTQKICAjIEFNX0FVWF9ESVJfRVhQQU5EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAtKi0gQXV0b2NvbmYgLSotCiAgCiAgIyBDb3B5cmlnaHQgKEMpIDIwMDEsIDIwMDMs IDIwMDUgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgotSW5kZXg6IGdkYi03LjguNTAu MjAxNDEyMjgvZ2RiL2NvbmZpZy5pbgorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2Nv bmZpZy5pbgogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9nZGIvY29u ZmlnLmluCTIwMTUtMDEtMDEgMTc6MTI6MjQuODg1NDg5MDg0ICswMTAwCi0rKysgZ2RiLTcuOC41 MC4yMDE0MTIyOC9nZGIvY29uZmlnLmluCTIwMTUtMDEtMDEgMTc6MTI6MjguODI0NDg2ODAxICsw MTAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9jb25maWcuaW4JMjAxNS0wNy0w OSAxODoyMjo0NS4wMTMzODM4MzcgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9j b25maWcuaW4JMjAxNS0wNy0wOSAxODoyMjo1MS40MDU0MzgzNzEgKzAyMDAKIEBAIC0zMyw2ICsz Myw5IEBACiAgLyogRGVmaW5lIHRvIEJGRCdzIGRlZmF1bHQgdGFyZ2V0IHZlY3Rvci4gKi8KICAj dW5kZWYgREVGQVVMVF9CRkRfVkVDCkBAIC0zMTksNyArMzE5LDcgQEAgSW5kZXg6IGdkYi03Ljgu NTAuMjAxNDEyMjgvZ2RiL2NvbmZpZy5pbgogIC8qIERlZmluZSB0byAxIGlmIHRyYW5zbGF0aW9u IG9mIHByb2dyYW0gbWVzc2FnZXMgdG8gdGhlIHVzZXIncyBuYXRpdmUKICAgICBsYW5ndWFnZSBp cyByZXF1ZXN0ZWQuICovCiAgI3VuZGVmIEVOQUJMRV9OTFMKLUBAIC0yMDcsNiArMjEwLDkgQEAK K0BAIC0yNTgsNiArMjYxLDkgQEAKICAvKiBEZWZpbmUgaWYgUHl0aG9uIDIuNyBpcyBiZWluZyB1 c2VkLiAqLwogICN1bmRlZiBIQVZFX0xJQlBZVEhPTjJfNwogIApAQCAtMzI5LDExICszMjksMTEg QEAgSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL2NvbmZpZy5pbgogIC8qIERlZmluZSB0 byAxIGlmIHlvdSBoYXZlIHRoZSA8bGlidW53aW5kLWlhNjQuaD4gaGVhZGVyIGZpbGUuICovCiAg I3VuZGVmIEhBVkVfTElCVU5XSU5EX0lBNjRfSAogIAotSW5kZXg6IGdkYi03LjguNTAuMjAxNDEy MjgvZ2RiL2NvbmZpZ3VyZQorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2NvbmZpZ3Vy ZQogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0tIGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9nZGIvY29uZmlndXJl CTIwMTUtMDEtMDEgMTc6MTI6MjQuODkxNDg5MDgxICswMTAwCi0rKysgZ2RiLTcuOC41MC4yMDE0 MTIyOC9nZGIvY29uZmlndXJlCTIwMTUtMDEtMDEgMTc6MTI6MjguODI4NDg2Nzk4ICswMTAwCi1A QCAtNjk4LDYgKzY5OCwxMSBAQCBQS0dWRVJTSU9OCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5v cmlnL2dkYi9jb25maWd1cmUJMjAxNS0wNy0wOSAxODoyMjo0NS4wMjAzODM4OTYgKzAyMDAKKysr KyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9jb25maWd1cmUJMjAxNS0wNy0wOSAxODoyMjo1MS40 MTA0Mzg0MTQgKzAyMDAKK0BAIC03MDMsNiArNzAzLDExIEBAIFBLR1ZFUlNJT04KICBIQVZFX05B VElWRV9HQ09SRV9UQVJHRVQKICBUQVJHRVRfT0JTCiAgc3ViZGlycwpAQCAtMzQ1LDcgKzM0NSw3 IEBAIEluZGV4OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9jb25maWd1cmUKICBHREJfREFUQURJ UgogIERFQlVHRElSCiAgTUFLRUlORk9fRVhUUkFfRkxBR1MKLUBAIC04MDEsNiArODA2LDcgQEAg d2l0aF9nZGJfZGF0YWRpcgorQEAgLTgxMSw2ICs4MTYsNyBAQCB3aXRoX2dkYl9kYXRhZGlyCiAg d2l0aF9yZWxvY2F0ZWRfc291cmNlcwogIHdpdGhfYXV0b19sb2FkX2RpcgogIHdpdGhfYXV0b19s b2FkX3NhZmVfcGF0aApAQCAtMzUzLDcgKzM1Myw3IEBAIEluZGV4OiBnZGItNy44LjUwLjIwMTQx MjI4L2dkYi9jb25maWd1cmUKICBlbmFibGVfdGFyZ2V0cwogIGVuYWJsZV82NF9iaXRfYmZkCiAg ZW5hYmxlX2dkYmNsaQotQEAgLTg1Miw2ICs4NTgsMTEgQEAgQ1BQRkxBR1MKK0BAIC04NjcsNiAr ODczLDExIEBAIENDQwogIENQUAogIE1BS0VJTkZPCiAgTUFLRUlORk9GTEFHUwpAQCAtMzY1LDcg KzM2NSw3IEBAIEluZGV4OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9jb25maWd1cmUKICBZQUND CiAgWUZMQUdTCiAgWE1LTUYnCi1AQCAtMTUyMiw2ICsxNTMzLDggQEAgT3B0aW9uYWwgUGFja2Fn ZXM6CitAQCAtMTUzOCw2ICsxNTQ5LDggQEAgT3B0aW9uYWwgUGFja2FnZXM6CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBbLS13aXRoLWF1dG8tbG9hZC1kaXJdCiAgICAtLXdpdGhvdXQtYXV0 by1sb2FkLXNhZmUtcGF0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZG8gbm90IHJlc3Ry aWN0IGF1dG8tbG9hZGVkIGZpbGVzIGxvY2F0aW9ucwpAQCAtMzc0LDcgKzM3NCw3IEBAIEluZGV4 OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9jb25maWd1cmUKICAgIC0td2l0aC1saWJ1bndpbmQt aWE2NCAgIHVzZSBsaWJ1bndpbmQgZnJhbWUgdW53aW5kaW5nIGZvciBpYTY0IHRhcmdldHMKICAg IC0td2l0aC1jdXJzZXMgICAgICAgICAgIHVzZSB0aGUgY3Vyc2VzIGxpYnJhcnkgaW5zdGVhZCBv ZiB0aGUgdGVybWNhcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyeQotQEAgLTE1 NzEsNiArMTU4NCwxMyBAQCBTb21lIGluZmx1ZW50aWFsIGVudmlyb25tZW50IHZhcmlhYmxlczoK K0BAIC0xNTkyLDYgKzE2MDUsMTMgQEAgU29tZSBpbmZsdWVudGlhbCBlbnZpcm9ubWVudCB2YXJp YWJsZXM6CiAgICBNQUtFSU5GTyAgICBQYXJlbnQgY29uZmlndXJlIGRldGVjdHMgaWYgaXQgaXMg b2Ygc3VmZmljaWVudCB2ZXJzaW9uLgogICAgTUFLRUlORk9GTEFHUwogICAgICAgICAgICAgICAg UGFyYW1ldGVycyBmb3IgTUFLRUlORk8uCkBAIC0zODgsNyArMzg4LDcgQEAgSW5kZXg6IGdkYi03 LjguNTAuMjAxNDEyMjgvZ2RiL2NvbmZpZ3VyZQogICAgWUFDQyAgICAgICAgVGhlIGBZZXQgQW5v dGhlciBDIENvbXBpbGVyJyBpbXBsZW1lbnRhdGlvbiB0byB1c2UuIERlZmF1bHRzIHRvCiAgICAg ICAgICAgICAgICB0aGUgZmlyc3QgcHJvZ3JhbSBmb3VuZCBvdXQgb2Y6IGBiaXNvbiAteScsIGBi eWFjYycsIGB5YWNjJy4KICAgIFlGTEFHUyAgICAgIFRoZSBsaXN0IG9mIGFyZ3VtZW50cyB0aGF0 IHdpbGwgYmUgcGFzc2VkIGJ5IGRlZmF1bHQgdG8gJFlBQ0MuCi1AQCAtNTI2Nyw2ICs1Mjg3LDQ5 MSBAQCBfQUNFT0YKK0BAIC01NjA4LDYgKzU2MjgsNDkxIEBAIF9BQ0VPRgogIHsgJGFzX2VjaG8g IiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkd2l0aF9hdXRvX2xvYWRfc2Fm ZV9wYXRoIiA+JjUKICAkYXNfZWNobyAiJHdpdGhfYXV0b19sb2FkX3NhZmVfcGF0aCIgPiY2OyB9 CiAgCkBAIC04ODAsMTEgKzg4MCwxMSBAQCBJbmRleDogZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIv Y29uZmlndXJlCiAgCiAgCiAgc3ViZGlycz0iJHN1YmRpcnMgdGVzdHN1aXRlIgotSW5kZXg6IGdk Yi03LjguNTAuMjAxNDEyMjgvZ2RiL2NvbmZpZ3VyZS5hYworSW5kZXg6IGdkYi03LjkuOTAuMjAx NTA3MDkvZ2RiL2NvbmZpZ3VyZS5hYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjguNTAuMjAxNDEy Mjgub3JpZy9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDEtMDEgMTc6MTI6MjQuODkzNDg5MDc5ICsw MTAwCi0rKysgZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDEtMDEg MTc6MTI6MjguODI5NDg2Nzk4ICswMTAwCi1AQCAtMTcyLDYgKzE3MiwxOTkgQEAgQUNfREVGSU5F X0RJUihBVVRPX0xPQURfU0FGRV9QQVRILCBlc2NhcAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDku b3JpZy9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDctMDkgMTg6MjI6NDUuMDIyMzgzOTEzICswMjAw CisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDctMDkgMTg6 MjI6NTEuNDExNDM4NDIyICswMjAwCitAQCAtMTc3LDYgKzE3NywxOTkgQEAgQUNfREVGSU5FX0RJ UihBVVRPX0xPQURfU0FGRV9QQVRILCBlc2NhcAogIAkgICAgICBbRGlyZWN0b3JpZXMgc2FmZSB0 byBob2xkIGF1dG8tbG9hZGVkIGZpbGVzLl0pCiAgQUNfTVNHX1JFU1VMVChbJHdpdGhfYXV0b19s b2FkX3NhZmVfcGF0aF0pCiAgCkBAIC0xMDg0LDEwICsxMDg0LDEwIEBAIEluZGV4OiBnZGItNy44 LjUwLjIwMTQxMjI4L2dkYi9jb25maWd1cmUuYWMKICBBQ19DT05GSUdfU1VCRElSUyh0ZXN0c3Vp dGUpCiAgCiAgIyBDaGVjayB3aGV0aGVyIHRvIHN1cHBvcnQgYWx0ZXJuYXRpdmUgdGFyZ2V0IGNv bmZpZ3VyYXRpb25zCi1JbmRleDogZ2RiLTcuOC41MC4yMDE0MTIyOC9nZGIvY29yZWxvdy5jCitJ bmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29yZWxvdy5jCiA9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0g Z2RiLTcuOC41MC4yMDE0MTIyOC5vcmlnL2dkYi9jb3JlbG93LmMJMjAxNS0wMS0wMSAxNzoxMjoy NC44OTQ0ODkwNzkgKzAxMDAKLSsrKyBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9jb3JlbG93LmMJ MjAxNS0wMS0wMSAxNzoxMjoyOC44Mjk0ODY3OTggKzAxMDAKKy0tLSBnZGItNy45LjkwLjIwMTUw NzA5Lm9yaWcvZ2RiL2NvcmVsb3cuYwkyMDE1LTA3LTA5IDE4OjIyOjQ1LjAyMjM4MzkxMyArMDIw MAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2NvcmVsb3cuYwkyMDE1LTA3LTA5IDE4OjIy OjUxLjQxMjQzODQzMSArMDIwMAogQEAgLTMxMCw3ICszMTAsNyBAQCBidWlsZF9pZF9sb2NhdGVf ZXhlYyAoaW50IGZyb21fdHR5KQogICAgICAgICAgc3ltZmlsZV9vYmpmaWxlLT5mbGFncyB8PSBP QkpGX0JVSUxEX0lEX0NPUkVfTE9BREVEOwogICAgICB9CkBAIC0xMDk3LDE5ICsxMDk3LDE5IEBA IEluZGV4OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9jb3JlbG93LmMKICAKICAgIGRvX2NsZWFu dXBzIChiYWNrX3RvKTsKICAKLUluZGV4OiBnZGItNy44LjUwLjIwMTQxMjI4L2dkYi9idWlsZC1p ZC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYnVpbGQtaWQuYwogPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0tIGdkYi03LjguNTAuMjAxNDEyMjgub3JpZy9nZGIvYnVpbGQtaWQuYwkyMDE1LTAxLTAx IDE3OjEyOjI0Ljg5NDQ4OTA3OSArMDEwMAotKysrIGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL2J1 aWxkLWlkLmMJMjAxNS0wMS0wMSAxNzoxMjoyOC44MzA0ODY3OTcgKzAxMDAKLUBAIC0zMSw2ICsz MSw3IEBACi0gI2luY2x1ZGUgImdkYmNtZC5oIgotICNpbmNsdWRlICJvYnNlcnZlci5oIgorLS0t IGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvYnVpbGQtaWQuYwkyMDE1LTA3LTA5IDE4OjIy OjQ1LjAyMzM4MzkyMiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2J1aWxkLWlk LmMJMjAxNS0wNy0wOSAxODoyMjo1MS40MTI0Mzg0MzEgKzAyMDAKK0BAIC0zNSw2ICszNSw3IEBA CisgI2luY2x1ZGUgImVsZi9jb21tb24uaCIKKyAjaW5jbHVkZSAiZWxmLWJmZC5oIgogICNpbmNs dWRlIDxzeXMvc3RhdC5oPgogKyNpbmNsdWRlICJlbGYvZXh0ZXJuYWwuaCIKICAKICAjZGVmaW5l IEJVSUxEX0lEX1ZFUkJPU0VfTk9ORSAwCiAgI2RlZmluZSBCVUlMRF9JRF9WRVJCT1NFX0ZJTEVO QU1FUyAxCi1AQCAtNjY0LDggKzY2NSwzNjMgQEAgYnVpbGRfaWRfdG9fZmlsZW5hbWUgKGNvbnN0 IHN0cnVjdCBlbGZfYgorQEAgLTY2OSw4ICs2NzAsMzYzIEBAIGJ1aWxkX2lkX3RvX2ZpbGVuYW1l IChjb25zdCBzdHJ1Y3QgYmZkX2IKICAgIHJldHVybiByZXN1bHQ7CiAgfQogIApAQCAtMTQ3NCw3 ICsxNDc0LDcgQEAgSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL2J1aWxkLWlkLmMKICAg ICBhdm9pZGFuY2UuICAqLwogIAogIHN0cnVjdCBtaXNzaW5nX2ZpbGVwYWlyCi1AQCAtNzE5LDEx ICsxMDcyLDE3IEBAIG1pc3NpbmdfZmlsZXBhaXJfY2hhbmdlICh2b2lkKQorQEAgLTcyNCwxMSAr MTA4MCwxNyBAQCBtaXNzaW5nX2ZpbGVwYWlyX2NoYW5nZSAodm9pZCkKICAgICAgICAvKiBBbGwg dGhlaXIgbWVtb3J5IGNhbWUganVzdCBmcm9tIG1pc3NpbmdfZmlsZXBhaXJfT0JTVEFDSy4gICov CiAgICAgICAgbWlzc2luZ19maWxlcGFpcl9oYXNoID0gTlVMTDsKICAgICAgfQpAQCAtMTQ5Miw3 ICsxNDkyLDcgQEAgSW5kZXg6IGdkYi03LjguNTAuMjAxNDEyMjgvZ2RiL2J1aWxkLWlkLmMKICAg IG1pc3NpbmdfZmlsZXBhaXJfY2hhbmdlICgpOwogIH0KICAKLUBAIC03OTAsMTQgKzExNDksMzQg QEAgZGVidWdfcHJpbnRfbWlzc2luZyAoY29uc3QgY2hhciAqYmluYXJ5LAorQEAgLTc5NSwxNCAr MTE1NywzNCBAQCBkZWJ1Z19wcmludF9taXNzaW5nIChjb25zdCBjaGFyICpiaW5hcnksCiAgCiAg ICAqc2xvdCA9IG1pc3NpbmdfZmlsZXBhaXI7CiAgCgpkaWZmIC0tZ2l0IGEvZ2RiLTYuNi1idWls ZGlkLWxvY2F0ZS1zb2xpYi1taXNzaW5nLWlkcy5wYXRjaCBiL2dkYi02LjYtYnVpbGRpZC1sb2Nh dGUtc29saWItbWlzc2luZy1pZHMucGF0Y2gKaW5kZXggNWQzMTRlMC4uYTg5ODkzYyAxMDA2NDQK LS0tIGEvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS1zb2xpYi1taXNzaW5nLWlkcy5wYXRjaAorKysg Yi9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLXNvbGliLW1pc3NpbmctaWRzLnBhdGNoCkBAIC0xLDEz ICsxLDEzIEBACi1JbmRleDogZ2RiLTcuNS41MC4yMDEzMDMxMC9nZGIvc29saWItc3ZyNC5jCitJ bmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvc29saWItc3ZyNC5jCiA9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LS0gZ2RiLTcuNS41MC4yMDEzMDMxMC5vcmlnL2dkYi9zb2xpYi1zdnI0LmMJMjAxMy0wMy0xMCAx NjozNzo0OS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBnZGItNy41LjUwLjIwMTMwMzEwL2dkYi9zb2xp Yi1zdnI0LmMJMjAxMy0wMy0xMCAxNjo0Mzo0NS40OTg1ODUwOTEgKzAxMDAKLUBAIC0xMjI1LDE0 ICsxMjI1LDI3IEBAIHN2cjRfcmVhZF9zb19saXN0IChDT1JFX0FERFIgbG0sIHN0cnVjdAorLS0t IGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvc29saWItc3ZyNC5jCTIwMTUtMDctMDkgMTg6 MTg6NTQuNTI2NDE3NzY2ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvc29saWIt c3ZyNC5jCTIwMTUtMDctMDkgMTg6MTk6MzMuMDc0NzQ2NTg2ICswMjAwCitAQCAtMTM4MSwxNCAr MTM4MSwyNyBAQCBzdnI0X3JlYWRfc29fbGlzdCAoQ09SRV9BRERSIGxtLCBDT1JFX0FECiAgCX0K ICAKICAgICAgICB7Ci0tCXN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxkX2lkOwotKwlzdHJ1Y3Qg ZWxmX2J1aWxkX2lkICpidWlsZF9pZCA9IE5VTEw7CistCXN0cnVjdCBiZmRfYnVpbGRfaWQgKmJ1 aWxkX2lkOworKwlzdHJ1Y3QgYmZkX2J1aWxkX2lkICpidWlsZF9pZCA9IE5VTEw7CiAgCiAgCXN0 cm5jcHkgKG5ld29iai0+c29fb3JpZ2luYWxfbmFtZSwgYnVmZmVyLCBTT19OQU1FX01BWF9QQVRI X1NJWkUgLSAxKTsKICAJbmV3b2JqLT5zb19vcmlnaW5hbF9uYW1lW1NPX05BTUVfTUFYX1BBVEhf U0laRSAtIDFdID0gJ1wwJzsKQEAgLTMyLDcgKzMyLDcgQEAgSW5kZXg6IGdkYi03LjUuNTAuMjAx MzAzMTAvZ2RiL3NvbGliLXN2cjQuYwogIAlpZiAoYnVpbGRfaWQgIT0gTlVMTCkKICAJICB7CiAg CSAgICBjaGFyICpuYW1lLCAqYnVpbGRfaWRfZmlsZW5hbWU7Ci1AQCAtMTI0NywyMyArMTI2MCw3 IEBAIHN2cjRfcmVhZF9zb19saXN0IChDT1JFX0FERFIgbG0sIHN0cnVjdAorQEAgLTE0MDMsMjMg KzE0MTYsNyBAQCBzdnI0X3JlYWRfc29fbGlzdCAoQ09SRV9BRERSIGxtLCBDT1JFX0FECiAgCQl4 ZnJlZSAobmFtZSk7CiAgCSAgICAgIH0KICAJICAgIGVsc2UKCmRpZmYgLS1naXQgYS9nZGItNi42 LWJ1aWxkaWQtbG9jYXRlLnBhdGNoIGIvZ2RiLTYuNi1idWlsZGlkLWxvY2F0ZS5wYXRjaAppbmRl eCBlOTI4ZWQwLi5kYzA1YzM5IDEwMDY0NAotLS0gYS9nZGItNi42LWJ1aWxkaWQtbG9jYXRlLnBh dGNoCisrKyBiL2dkYi02LjYtYnVpbGRpZC1sb2NhdGUucGF0Y2gKQEAgLTEsNyArMSw3IEBACi1J bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvY29yZWxvdy5jCitJbmRleDogZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvY29yZWxvdy5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1 MDUyMC5vcmlnL2dkYi9jb3JlbG93LmMJMjAxNS0wNS0zMSAxNjozODo1NS4xMjMxMTIyMjcgKzAy MDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb3JlbG93LmMJMjAxNS0wNS0zMSAxNjoz ODo1Ny42MDExMzAzNjYgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2Nv cmVsb3cuYwkyMDE1LTA3LTA5IDIyOjA1OjIwLjk4ODA0NDMxMiArMDIwMAorKysrIGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL2NvcmVsb3cuYwkyMDE1LTA3LTA5IDIyOjA1OjQyLjA1NzIyMjcyMiAr MDIwMAogQEAgLTQ1LDYgKzQ1LDEwIEBACiAgI2luY2x1ZGUgImdkYl9iZmQuaCIKICAjaW5jbHVk ZSAiY29tcGxldGVyLmgiCkBAIC0yMyw3ICsyMyw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9jb3JlbG93LmMKICtidWlsZF9pZF9sb2NhdGVfZXhlYyAoaW50IGZyb21fdHR5KQog K3sKICsgIENPUkVfQUREUiBhdF9lbnRyeTsKLSsgIHN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxk X2lkOworKyAgc3RydWN0IGJmZF9idWlsZF9pZCAqYnVpbGRfaWQ7CiArICBjaGFyICpleGVjZmls ZW5hbWUsICpkZWJ1Z19maWxlbmFtZTsKICsgIGNoYXIgKmJ1aWxkX2lkX2ZpbGVuYW1lOwogKyAg c3RydWN0IGNsZWFudXAgKmJhY2tfdG87CkBAIC05NCwxMSArOTQsMTEgQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL2NvcmVsb3cuYwogKwkJCSAgIE5VTEwsIE5VTEwsIE5VTEwsCiAr CQkJICAgJnNldGxpc3QsICZzaG93bGlzdCk7CiAgfQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL2RvYy9nZGIudGV4aW5mbworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2Rv Yy9nZGIudGV4aW5mbwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9n ZGIvZG9jL2dkYi50ZXhpbmZvCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTM3MTEyMzMwICswMjAwCi0r KysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZG9jL2dkYi50ZXhpbmZvCTIwMTUtMDUtMzEgMTY6 Mzg6NTcuNjEyMTMwNDQ3ICswMjAwCi1AQCAtMTgyNTQsNiArMTgyNTQsMjcgQEAgaW5mb3JtYXRp b24gZmlsZXMuCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9kb2MvZ2RiLnRleGlu Zm8JMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9kb2MvZ2RiLnRleGluZm8JMjAxNS0wNy0wOSAyMjowNTo0Mi4wNjcyMjI4MDYg KzAyMDAKK0BAIC0xODMwNCw2ICsxODMwNCwyNyBAQCBpbmZvcm1hdGlvbiBmaWxlcy4KICAKICBA ZW5kIHRhYmxlCiAgCkBAIC0xMjYsMTAgKzEyNiwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvZG9jL2dkYi50ZXhpbmZvCiAgQGNpbmRleCBAY29kZXsuZ251X2RlYnVnbGlua30g c2VjdGlvbnMKICBAY2luZGV4IGRlYnVnIGxpbmsgc2VjdGlvbnMKICBBIGRlYnVnIGxpbmsgaXMg YSBzcGVjaWFsIHNlY3Rpb24gb2YgdGhlIGV4ZWN1dGFibGUgZmlsZSBuYW1lZAotSW5kZXg6IGdk Yi03LjkuNTAuMjAxNTA1MjAvZ2RiL3NvbGliLXN2cjQuYworSW5kZXg6IGdkYi03LjkuOTAuMjAx NTA3MDkvZ2RiL3NvbGliLXN2cjQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1 MjAub3JpZy9nZGIvc29saWItc3ZyNC5jCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTQyMTEyMzY2ICsw MjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvc29saWItc3ZyNC5jCTIwMTUtMDUtMzEg MTY6NDA6MzMuNTkzODE5NzAyICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dk Yi9zb2xpYi1zdnI0LmMJMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi9zb2xpYi1zdnI0LmMJMjAxNS0wNy0wOSAyMjowNTo0Mi4w NjgyMjI4MTUgKzAyMDAKIEBAIC00NSw2ICs0NSw3IEBACiAgI2luY2x1ZGUgImF1eHYuaCIKICAj aW5jbHVkZSAiZ2RiX2JmZC5oIgpAQCAtMTQ2LDcgKzE0Niw3IEBAIEluZGV4OiBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9zb2xpYi1zdnI0LmMKIC0gICAgICBuZXdvYmotPnNvX25hbWVbU09fTkFN RV9NQVhfUEFUSF9TSVpFIC0gMV0gPSAnXDAnOwogLSAgICAgIHN0cmNweSAobmV3b2JqLT5zb19v cmlnaW5hbF9uYW1lLCBuZXdvYmotPnNvX25hbWUpOwogKyAgICAgIHsKLSsJc3RydWN0IGVsZl9i dWlsZF9pZCAqYnVpbGRfaWQ7CisrCXN0cnVjdCBiZmRfYnVpbGRfaWQgKmJ1aWxkX2lkOwogKwog KwlzdHJuY3B5IChuZXdvYmotPnNvX29yaWdpbmFsX25hbWUsIGJ1ZmZlciwgU09fTkFNRV9NQVhf UEFUSF9TSVpFIC0gMSk7CiArCW5ld29iai0+c29fb3JpZ2luYWxfbmFtZVtTT19OQU1FX01BWF9Q QVRIX1NJWkUgLSAxXSA9ICdcMCc7CkBAIC0xOTQsMTEgKzE5NCwxMSBAQCBJbmRleDogZ2RiLTcu OS41MC4yMDE1MDUyMC9nZGIvc29saWItc3ZyNC5jCiAgICAgICAgeGZyZWUgKGJ1ZmZlcik7CiAg CiAgICAgICAgLyogSWYgdGhpcyBlbnRyeSBoYXMgbm8gbmFtZSwgb3IgaXRzIG5hbWUgbWF0Y2hl cyB0aGUgbmFtZQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2VsZnJlYWQuYworSW5k ZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2VsZnJlYWQuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvZWxmcmVhZC5jCTIwMTUtMDUtMzEgMTY6Mzg6NTUu MTQzMTEyMzc0ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZWxmcmVhZC5jCTIw MTUtMDUtMzEgMTY6Mzg6NTcuNjE0MTMwNDYyICswMjAwCi1AQCAtMTM0MSw5ICsxMzQxLDEwIEBA IGVsZl9zeW1maWxlX3JlYWQgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWwKKy0tLSBnZGItNy45Ljkw LjIwMTUwNzA5Lm9yaWcvZ2RiL2VsZnJlYWQuYwkyMDE1LTA3LTA5IDIyOjA1OjIwLjk4ODA0NDMx MiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2VsZnJlYWQuYwkyMDE1LTA3LTA5 IDIyOjA1OjQyLjA2ODIyMjgxNSArMDIwMAorQEAgLTEyNTAsOSArMTI1MCwxMCBAQCBlbGZfc3lt ZmlsZV9yZWFkIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsCiAgCSAgICYmIG9iamZpbGUtPnNlcGFy YXRlX2RlYnVnX29iamZpbGUgPT0gTlVMTAogIAkgICAmJiBvYmpmaWxlLT5zZXBhcmF0ZV9kZWJ1 Z19vYmpmaWxlX2JhY2tsaW5rID09IE5VTEwpCiAgICAgIHsKQEAgLTIxMSw3ICsyMTEsNyBAQCBJ bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZWxmcmVhZC5jCiAgCiAgICAgICAgaWYgKGRl YnVnZmlsZSA9PSBOVUxMKQogIAlkZWJ1Z2ZpbGUgPSBmaW5kX3NlcGFyYXRlX2RlYnVnX2ZpbGVf YnlfZGVidWdsaW5rIChvYmpmaWxlKTsKLUBAIC0xMzU3LDYgKzEzNTgsMTIgQEAgZWxmX3N5bWZp bGVfcmVhZCAoc3RydWN0IG9iamZpbGUgKm9iamZpbAorQEAgLTEyNjYsNiArMTI2NywxMiBAQCBl bGZfc3ltZmlsZV9yZWFkIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsCiAgCSAgc3ltYm9sX2ZpbGVf YWRkX3NlcGFyYXRlIChhYmZkLCBkZWJ1Z2ZpbGUsIHN5bWZpbGVfZmxhZ3MsIG9iamZpbGUpOwog IAkgIGRvX2NsZWFudXBzIChjbGVhbnVwKTsKICAJfQpAQCAtMjI0LDI1ICsyMjQsMjUgQEAgSW5k ZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2VsZnJlYWQuYwogICAgICB9CiAgfQogIAotSW5k ZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3N5bWZpbGUuaAorSW5kZXg6IGdkYi03LjkuOTAu MjAxNTA3MDkvZ2RiL3N5bWZpbGUuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1 MjAub3JpZy9nZGIvc3ltZmlsZS5oCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTQzMTEyMzc0ICswMjAw Ci0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvc3ltZmlsZS5oCTIwMTUtMDUtMzEgMTY6Mzg6 NTcuNjE0MTMwNDYyICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9zeW1m aWxlLmgJMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBnZGItNy45Ljkw LjIwMTUwNzA5L2dkYi9zeW1maWxlLmgJMjAxNS0wNy0wOSAyMjowNTo0Mi4wNjgyMjI4MTUgKzAy MDAKIEBAIC01ODQsNiArNTg0LDEwIEBAIHZvaWQgZXhwYW5kX3N5bXRhYnNfbWF0Y2hpbmcgKGV4 cGFuZF9zeW0KICB2b2lkIG1hcF9zeW1ib2xfZmlsZW5hbWVzIChzeW1ib2xfZmlsZW5hbWVfZnR5 cGUgKmZ1biwgdm9pZCAqZGF0YSwKICAJCQkgICBpbnQgbmVlZF9mdWxsbmFtZSk7CiAgCiArLyog YnVpbGQtaWQgc3VwcG9ydC4gICovCi0rZXh0ZXJuIHN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1aWxk X2lkX2FkZHJfZ2V0IChDT1JFX0FERFIgYWRkcik7CisrZXh0ZXJuIHN0cnVjdCBiZmRfYnVpbGRf aWQgKmJ1aWxkX2lkX2FkZHJfZ2V0IChDT1JFX0FERFIgYWRkcik7CiArZXh0ZXJuIHZvaWQgZGVi dWdfcHJpbnRfbWlzc2luZyAoY29uc3QgY2hhciAqYmluYXJ5LCBjb25zdCBjaGFyICpkZWJ1Zyk7 CiArCiAgLyogRnJvbSBkd2FyZjJyZWFkLmMgKi8KICAKICAvKiBOYW1lcyBmb3IgYSBkd2FyZjIg ZGVidWdnaW5nIHNlY3Rpb24uICBUaGUgZmllbGQgTk9STUFMIGlzIHRoZSBub3JtYWwKLUluZGV4 OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAKK0luZGV4OiBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi90ZXN0c3VpdGUvbGliL2dkYi5leHAKID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAky MDE1LTA1LTMxIDE2OjM4OjU1LjE0NTExMjM4OCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL3Rlc3RzdWl0ZS9saWIvZ2RiLmV4cAkyMDE1LTA1LTMxIDE2OjM4OjU3LjYxNTEzMDQ2 OSArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvdGVzdHN1aXRlL2xpYi9n ZGIuZXhwCTIwMTUtMDctMDkgMjI6MDU6MjAuOTg4MDQ0MzEyICswMjAwCisrKysgZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvdGVzdHN1aXRlL2xpYi9nZGIuZXhwCTIwMTUtMDctMDkgMjI6MDU6NDIu MDcwMjIyODMyICswMjAwCiBAQCAtMTU3Myw2ICsxNTczLDE2IEBAIHByb2MgZGVmYXVsdF9nZGJf c3RhcnQgeyB9IHsKICAJICAgIHdhcm5pbmcgIkNvdWxkbid0IHNldCB0aGUgd2lkdGggdG8gMC4i CiAgCX0KQEAgLTI2MCwxMCArMjYwLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi90ZXN0c3VpdGUvbGliL2dkYi5leHAKICAgICAgcmV0dXJuIDAKICB9CiAgCi1JbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvdGVzdHN1aXRlL2xpYi9taS1zdXBwb3J0LmV4cAorSW5kZXg6 IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3Rlc3RzdWl0ZS9saWIvbWktc3VwcG9ydC5leHAKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3Rlc3RzdWl0ZS9saWIv bWktc3VwcG9ydC5leHAJMjAxNS0wNS0zMSAxNjozODo1NS4xNDYxMTIzOTYgKzAyMDAKLSsrKyBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi90ZXN0c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCTIwMTUt MDUtMzEgMTY6Mzg6NTcuNjE2MTMwNDc2ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5v cmlnL2dkYi90ZXN0c3VpdGUvbGliL21pLXN1cHBvcnQuZXhwCTIwMTUtMDctMDkgMjI6MDU6MjAu OTg4MDQ0MzEyICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdGVzdHN1aXRlL2xp Yi9taS1zdXBwb3J0LmV4cAkyMDE1LTA3LTA5IDIyOjA1OjQyLjA3MDIyMjgzMiArMDIwMAogQEAg LTIxNCw2ICsyMTQsMTYgQEAgcHJvYyBkZWZhdWx0X21pX2dkYl9zdGFydCB7IGFyZ3MgfSB7CiAg CSAgICB3YXJuaW5nICJDb3VsZG4ndCBzZXQgdGhlIHdpZHRoIHRvIDAuIgogIAl9CkBAIC0yODEs MTAgKzI4MSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdGVzdHN1aXRlL2xp Yi9taS1zdXBwb3J0LmV4cAogICAgICAjIElmIGFsbG93aW5nIHRoZSBpbmZlcmlvciB0byBoYXZl IGl0cyBvd24gUFRZIHRoZW4gYXNzaWduIHRoZSBpbmZlcmlvcgogICAgICAjIGl0cyBvd24gdGVy bWluYWwgZGV2aWNlIGhlcmUuCiAgICAgIGlmIHsgJHNlcGFyYXRlX2luZmVyaW9yX3B0eSB9IHsK LUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9vYmpmaWxlcy5oCitJbmRleDogZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvb2JqZmlsZXMuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAu MjAxNTA1MjAub3JpZy9nZGIvb2JqZmlsZXMuaAkyMDE1LTA1LTMxIDE2OjM4OjU1LjE0NzExMjQw MyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL29iamZpbGVzLmgJMjAxNS0wNS0z MSAxNjozODo1Ny42MTYxMzA0NzYgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcv Z2RiL29iamZpbGVzLmgJMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi9vYmpmaWxlcy5oCTIwMTUtMDctMDkgMjI6MDU6NDIuMDcx MjIyODQwICswMjAwCiBAQCAtNDU5LDYgKzQ1OSwxMCBAQCBzdHJ1Y3Qgb2JqZmlsZQogIAogICNk ZWZpbmUgT0JKRl9OT1RfRklMRU5BTUUgKDEgPDwgNikKQEAgLTI5NiwxMCArMjk2LDEwIEBAIElu ZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9vYmpmaWxlcy5oCiAgLyogRGVjbGFyYXRpb25z IGZvciBmdW5jdGlvbnMgZGVmaW5lZCBpbiBvYmpmaWxlcy5jICovCiAgCiAgZXh0ZXJuIHN0cnVj dCBvYmpmaWxlICphbGxvY2F0ZV9vYmpmaWxlIChiZmQgKiwgY29uc3QgY2hhciAqbmFtZSwgaW50 KTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvY29y ZWZpbGUuZXhwCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdGVzdHN1aXRlL2dkYi5i YXNlL2NvcmVmaWxlLmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3Jp Zy9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2NvcmVmaWxlLmV4cAkyMDE1LTA1LTMxIDE2OjM4OjU1 LjE0NzExMjQwMyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3Rlc3RzdWl0ZS9n ZGIuYmFzZS9jb3JlZmlsZS5leHAJMjAxNS0wNS0zMSAxNjozODo1Ny42MTYxMzA0NzYgKzAyMDAK Ky0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9jb3Jl ZmlsZS5leHAJMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBnZGItNy45 LjkwLjIwMTUwNzA5L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvY29yZWZpbGUuZXhwCTIwMTUtMDct MDkgMjI6MDU6NDIuMDcxMjIyODQwICswMjAwCiBAQCAtMjkzLDMgKzI5MywzMyBAQCBnZGJfdGVz dF9tdWx0aXBsZSAiY29yZS1maWxlICRjb3JlZmlsZSIKICAJcGFzcyAkdGVzdAogICAgICB9CkBA IC0zMzQsMTEgKzMzNCwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdGVzdHN1 aXRlL2dkYi5iYXNlL2NvcmVmaWxlLmV4cAogKyAgICBnZGJfdGVzdCAiaW5mbyBmaWxlcyIgIkxv Y2FsIGV4ZWMgZmlsZTpcclxuXFsgXHRcXSpgW3N0cmluZ190b19yZWdleHAgJGRlYnVnZGlyLyRi dWlsZGlkXScsIGZpbGUgdHlwZSAuKiIKICsgICAgcGFzcyAkd2hvbGV0ZXN0CiArfQotSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmMKK0luZGV4OiBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9idWlsZC1pZC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUy MC5vcmlnL2dkYi9idWlsZC1pZC5jCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTQ4MTEyNDEwICswMjAw Ci0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnVpbGQtaWQuYwkyMDE1LTA1LTMxIDE2OjQ1 OjM1LjAyNTcyMjE0MiArMDIwMAotQEAgLTI3LDExICsyNyw2MyBAQAorLS0tIGdkYi03LjkuOTAu MjAxNTA3MDkub3JpZy9nZGIvYnVpbGQtaWQuYwkyMDE1LTA3LTA5IDIyOjA1OjIwLjk4ODA0NDMx MiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2J1aWxkLWlkLmMJMjAxNS0wNy0w OSAyMjoxOTozNS4wMjI5NTcwMDkgKzAyMDAKK0BAIC0yNiwxMSArMjYsNjcgQEAKICAjaW5jbHVk ZSAib2JqZmlsZXMuaCIKICAjaW5jbHVkZSAiZmlsZW5hbWVzLmgiCiAgI2luY2x1ZGUgImdkYmNv cmUuaCIKQEAgLTM0Niw2ICszNDYsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L2J1aWxkLWlkLmMKICsjaW5jbHVkZSAiZ2RiY29yZS5oIgogKyNpbmNsdWRlICJnZGJjbWQuaCIK ICsjaW5jbHVkZSAib2JzZXJ2ZXIuaCIKKysjaW5jbHVkZSAiZWxmL2V4dGVybmFsLmgiCisrI2lu Y2x1ZGUgImVsZi9pbnRlcm5hbC5oIgorKyNpbmNsdWRlICJlbGYvY29tbW9uLmgiCisrI2luY2x1 ZGUgImVsZi1iZmQuaCIKICsjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICsKICsjZGVmaW5lIEJVSUxE X0lEX1ZFUkJPU0VfTk9ORSAwCkBAIC0zNjIsNyArMzY2LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmMKICsvKiBMb2NhdGUgTlRfR05VX0JVSUxEX0lEIGFuZCBy ZXR1cm4gaXRzIG1hdGNoaW5nIGRlYnVnIGZpbGVuYW1lLgogKyAgIEZJWE1FOiBOT1RFIGRlY29k aW5nIHNob3VsZCBiZSB1bmlmaWVkIHdpdGggdGhlIEJGRCBjb3JlIG5vdGVzIGRlY29kaW5nLiAg Ki8KICsKLStzdGF0aWMgc3RydWN0IGVsZl9idWlsZF9pZCAqCisrc3RhdGljIHN0cnVjdCBiZmRf YnVpbGRfaWQgKgogK2J1aWxkX2lkX2J1Zl9nZXQgKGJmZCAqdGVtcGwsIGdkYl9ieXRlICpidWYs IGJmZF9zaXplX3R5cGUgc2l6ZSkKICt7CiArICBiZmRfYnl0ZSAqcDsKQEAgLTM4Miw3ICszODYs NyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnVpbGQtaWQuYwogKwl7CiArCSAg c2l6ZV90IHNpemUgPSBkZXNjc3o7CiArCSAgZ2RiX2J5dGUgKmRhdGEgPSAodm9pZCAqKSBkZXNj ZGF0YTsKLSsJICBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpyZXR2YWw7CisrCSAgc3RydWN0IGJmZF9i dWlsZF9pZCAqcmV0dmFsOwogKwogKwkgIHJldHZhbCA9IHhtYWxsb2MgKHNpemVvZiAqcmV0dmFs IC0gMSArIHNpemUpOwogKwkgIHJldHZhbC0+c2l6ZSA9IHNpemU7CkBAIC0zOTcsMjYgKzQwMSwy NiBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnVpbGQtaWQuYwogIAogIC8qIFNl ZSBidWlsZC1pZC5oLiAgKi8KICAKLSBjb25zdCBzdHJ1Y3QgZWxmX2J1aWxkX2lkICoKKyBjb25z dCBzdHJ1Y3QgYmZkX2J1aWxkX2lkICoKIC1idWlsZF9pZF9iZmRfZ2V0IChiZmQgKmFiZmQpCiAr YnVpbGRfaWRfYmZkX3NoZHJfZ2V0IChiZmQgKmFiZmQpCiAgewotICAgaWYgKCFiZmRfY2hlY2tf Zm9ybWF0IChhYmZkLCBiZmRfb2JqZWN0KQotICAgICAgIHx8IGJmZF9nZXRfZmxhdm91ciAoYWJm ZCkgIT0gYmZkX3RhcmdldF9lbGZfZmxhdm91cgotQEAgLTQ1LDYgKzk3LDM0OCBAQCBidWlsZF9p ZF9iZmRfZ2V0IChiZmQgKmFiZmQpCi0gICByZXR1cm4gZWxmX3RkYXRhIChhYmZkKS0+YnVpbGRf aWQ7CisgICBpZiAoIWJmZF9jaGVja19mb3JtYXQgKGFiZmQsIGJmZF9vYmplY3QpKQorICAgICBy ZXR1cm4gTlVMTDsKK0BAIC00Miw2ICs5OCwzNDggQEAgYnVpbGRfaWRfYmZkX2dldCAoYmZkICph YmZkKQorICAgcmV0dXJuIE5VTEw7CiAgfQogIAogKy8qIENvcmUgZmlsZXMgbWF5IGhhdmUgbWlz c2luZyAoY29ycnVwdCkgU0hEUiBidXQgUERIUiBpcyBjb3JyZWN0IHRoZXJlLgogKyAgIGJmZF9l bGZfYmZkX2Zyb21fcmVtb3RlX21lbW9yeSAoKSBoYXMgdG9vIG11Y2ggb3ZlcmhlYWQgYnkKICsg ICBhbGxvY2F0aW5nL3JlYWRpbmcgYWxsIHRoZSBhdmFpbGFibGUgRUxGIFBUX0xPQURzLiAgKi8K ICsKLStzdGF0aWMgc3RydWN0IGVsZl9idWlsZF9pZCAqCisrc3RhdGljIHN0cnVjdCBiZmRfYnVp bGRfaWQgKgogK2J1aWxkX2lkX3BoZHJfZ2V0IChiZmQgKnRlbXBsLCBiZmRfdm1hIGxvYWRiYXNl LCB1bnNpZ25lZCBlX3BobnVtLAogKwkJICAgRWxmX0ludGVybmFsX1BoZHIgKmlfcGhkcikKICt7 CiArICBpbnQgaTsKLSsgIHN0cnVjdCBlbGZfYnVpbGRfaWQgKnJldHZhbCA9IE5VTEw7CisrICBz dHJ1Y3QgYmZkX2J1aWxkX2lkICpyZXR2YWwgPSBOVUxMOwogKwogKyAgZm9yIChpID0gMDsgaSA8 IGVfcGhudW07IGkrKykKICsgICAgaWYgKGlfcGhkcltpXS5wX3R5cGUgPT0gUFRfTk9URSAmJiBp X3BoZHJbaV0ucF9maWxlc3ogPiAwKQpAQCAtNzAzLDExICs3MDcsMTEgQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmMKICsgICAgfQogK30KICsKLStzdHJ1Y3QgZWxm X2J1aWxkX2lkICoKKytzdHJ1Y3QgYmZkX2J1aWxkX2lkICoKICtidWlsZF9pZF9hZGRyX2dldCAo Q09SRV9BRERSIGFkZHIpCiArewogKyAgc3RydWN0IGJ1aWxkX2lkX2FkZHJfc2VjdCAqY2FuZGlk YXRlOwotKyAgc3RydWN0IGVsZl9idWlsZF9pZCAqcmV0dmFsID0gTlVMTDsKKysgIHN0cnVjdCBi ZmRfYnVpbGRfaWQgKnJldHZhbCA9IE5VTEw7CiArICBFbGZfSW50ZXJuYWxfUGhkciAqaV9waGRy ID0gTlVMTDsKICsgIGJmZF92bWEgbG9hZGJhc2UgPSAwOwogKyAgdW5zaWduZWQgZV9waG51bSA9 IDA7CkBAIC03NTIsOCArNzU2LDggQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2J1 aWxkLWlkLmMKICAvKiBTZWUgYnVpbGQtaWQuaC4gICovCiAgCiAgaW50Ci1AQCAtNTMsNyArNDQ3 LDcgQEAgYnVpbGRfaWRfdmVyaWZ5IChiZmQgKmFiZmQsIHNpemVfdCBjaGVjawotICAgY29uc3Qg c3RydWN0IGVsZl9idWlsZF9pZCAqZm91bmQ7CitAQCAtNTAsNyArNDQ4LDcgQEAgYnVpbGRfaWRf dmVyaWZ5IChiZmQgKmFiZmQsIHNpemVfdCBjaGVjaworICAgY29uc3Qgc3RydWN0IGJmZF9idWls ZF9pZCAqZm91bmQ7CiAgICBpbnQgcmV0dmFsID0gMDsKICAKIC0gIGZvdW5kID0gYnVpbGRfaWRf YmZkX2dldCAoYWJmZCk7CkBAIC03NjEsNyArNzY1LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL2J1aWxkLWlkLmMKICAKICAgIGlmIChmb3VuZCA9PSBOVUxMKQogICAgICB3YXJu aW5nIChfKCJGaWxlIFwiJXNcIiBoYXMgbm8gYnVpbGQtaWQsIGZpbGUgc2tpcHBlZCIpLAotQEAg LTY4LDIwICs0NjIsNTYgQEAgYnVpbGRfaWRfdmVyaWZ5IChiZmQgKmFiZmQsIHNpemVfdCBjaGVj aworQEAgLTY1LDIwICs0NjMsNTYgQEAgYnVpbGRfaWRfdmVyaWZ5IChiZmQgKmFiZmQsIHNpemVf dCBjaGVjawogICAgcmV0dXJuIHJldHZhbDsKICB9CiAgCkBAIC04MjIsMTIgKzgyNiwxMyBAQCBJ bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnVpbGQtaWQuYwogIAogICAgLyogS2VlcCBi YWNrd2FyZCBjb21wYXRpYmlsaXR5IHNvIHRoYXQgREVCVUdfRklMRV9ESVJFQ1RPUlkgYmVpbmcg IiIgd2lsbAogICAgICAgY2F1c2UgIi8uYnVpbGQtaWQvLi4uIiBsb29rdXBzLiAgKi8KLUBAIC05 NCw4ICs1MjQsMTEgQEAgYnVpbGRfaWRfdG9fZGVidWdfYmZkIChzaXplX3QgYnVpbGRfaWRfbAor QEAgLTkxLDkgKzUyNSwxMiBAQCBidWlsZF9pZF90b19kZWJ1Z19iZmQgKHNpemVfdCBidWlsZF9p ZF9sCiAgICAgICAgc2l6ZV90IGRlYnVnZGlyX2xlbiA9IHN0cmxlbiAoZGVidWdkaXIpOwogICAg ICAgIGNvbnN0IGdkYl9ieXRlICpkYXRhID0gYnVpbGRfaWQ7CiAgICAgICAgc2l6ZV90IHNpemUg PSBidWlsZF9pZF9sZW47CiAtICAgICAgY2hhciAqczsKICAgICAgICBjaGFyICpmaWxlbmFtZSA9 IE5VTEw7CisgICAgICAgc3RydWN0IGNsZWFudXAgKmlubmVyOwogKyAgICAgIHVuc2lnbmVkIHNl cW5vOwogKyAgICAgIHN0cnVjdCBzdGF0IHN0YXRidWZfdHJhc2g7CiArICAgICAgLyogSW5pdGlh bGl6ZSBpdCBqdXN0IHRvIGF2b2lkIGEgR0NDIGZhbHNlIHdhcm5pbmcuICAqLwpAQCAtODM1LDcg Kzg0MCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9idWlsZC1pZC5jCiAgCiAg ICAgICAgbWVtY3B5IChsaW5rLCBkZWJ1Z2RpciwgZGVidWdkaXJfbGVuKTsKICAgICAgICBzID0g JmxpbmtbZGVidWdkaXJfbGVuXTsKLUBAIC0xMDksNDQgKzU0MiwyODIgQEAgYnVpbGRfaWRfdG9f ZGVidWdfYmZkIChzaXplX3QgYnVpbGRfaWRfbAorQEAgLTEwNyw0NyArNTQ0LDI4MSBAQCBidWls ZF9pZF90b19kZWJ1Z19iZmQgKHNpemVfdCBidWlsZF9pZF9sCiAgCSpzKysgPSAnLyc7CiAgICAg ICAgd2hpbGUgKHNpemUtLSA+IDApCiAgCXMgKz0gc3ByaW50ZiAocywgIiUwMngiLCAodW5zaWdu ZWQpICpkYXRhKyspOwpAQCAtODgyLDIwICs4ODcsMjIgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL2J1aWxkLWlkLmMKICsJICAgIGNvbnRpbnVlOwogKwogKwkgIC8qIFdlIGV4cGVj dCB0byBiZSBzaWxlbnQgb24gdGhlIG5vbi1leGlzdGluZyBmaWxlcy4gICovCisrCSAgaW5uZXIg PSBtYWtlX2NsZWFudXAgKHhmcmVlLCBmaWxlbmFtZSk7CiArCSAgYWJmZCA9IGdkYl9iZmRfb3Bl biAoZmlsZW5hbWUsIGdudXRhcmdldCwgLTEpOwotKwkgIGlmIChhYmZkID09IE5VTEwpCi0rCSAg ICB7Ci0rCSAgICAgIHhmcmVlIChmaWxlbmFtZSk7Ci0rCSAgICAgIGNvbnRpbnVlOwotKwkgICAg fQorKwkgIGRvX2NsZWFudXBzIChpbm5lcik7CiAgCiAtICAgICAgaWYgKGZpbGVuYW1lID09IE5V TEwpCiAtCWNvbnRpbnVlOwotKwkgIGlmIChidWlsZF9pZF92ZXJpZnkgKGFiZmQsIGJ1aWxkX2lk X2xlbiwgYnVpbGRfaWQpKQotKwkgICAgYnJlYWs7CisrCSAgaWYgKGFiZmQgPT0gTlVMTCkKKysJ ICAgIGNvbnRpbnVlOwogIAogLSAgICAgIC8qIFdlIGV4cGVjdCB0byBiZSBzaWxlbnQgb24gdGhl IG5vbi1leGlzdGluZyBmaWxlcy4gICovCistICAgICAgaW5uZXIgPSBtYWtlX2NsZWFudXAgKHhm cmVlLCBmaWxlbmFtZSk7CiAtICAgICAgYWJmZCA9IGdkYl9iZmRfb3BlbiAoZmlsZW5hbWUsIGdu dXRhcmdldCwgLTEpOworLSAgICAgIGRvX2NsZWFudXBzIChpbm5lcik7CisrCSAgaWYgKGJ1aWxk X2lkX3ZlcmlmeSAoYWJmZCwgYnVpbGRfaWRfbGVuLCBidWlsZF9pZCkpCisrCSAgICBicmVhazsK KyAKIC0gICAgICBpZiAoYWJmZCA9PSBOVUxMKQogLQljb250aW51ZTsKICsJICBnZGJfYmZkX3Vu cmVmIChhYmZkKTsKQEAgLTkwMyw3ICs5MTAsNiBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvYnVpbGQtaWQuYwogIAogLSAgICAgIGlmIChidWlsZF9pZF92ZXJpZnkgKGFiZmQsIGJ1 aWxkX2lkX2xlbiwgYnVpbGRfaWQpKQogLQlicmVhazsKLSsJICB4ZnJlZSAoZmlsZW5hbWUpOwog KwkgIGZpbGVuYW1lID0gTlVMTDsKICsJfQogIApAQCAtOTYxLDcgKzk2Nyw3IEBAIEluZGV4OiBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi9idWlsZC1pZC5jCiAgfQogIAogK2NoYXIgKgotK2J1aWxk X2lkX3RvX2ZpbGVuYW1lIChjb25zdCBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpidWlsZF9pZCwgY2hh ciAqKmxpbmtfcmV0dXJuKQorK2J1aWxkX2lkX3RvX2ZpbGVuYW1lIChjb25zdCBzdHJ1Y3QgYmZk X2J1aWxkX2lkICpidWlsZF9pZCwgY2hhciAqKmxpbmtfcmV0dXJuKQogK3sKICsgIGJmZCAqYWJm ZDsKICsgIGNoYXIgKnJlc3VsdDsKQEAgLTExMTgsNyArMTEyNCw3IEBAIEluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9idWlsZC1pZC5jCiArZmluZF9zZXBhcmF0ZV9kZWJ1Z19maWxlX2J5 X2J1aWxkaWQgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAogKwkJCQkgICAgIGNoYXIgKipidWls ZF9pZF9maWxlbmFtZV9yZXR1cm4pCiAgewotICAgY29uc3Qgc3RydWN0IGVsZl9idWlsZF9pZCAq YnVpbGRfaWQ7CisgICBjb25zdCBzdHJ1Y3QgYmZkX2J1aWxkX2lkICpidWlsZF9pZDsKICAKIC0g IGJ1aWxkX2lkID0gYnVpbGRfaWRfYmZkX2dldCAob2JqZmlsZS0+b2JmZCk7CiArICBpZiAoYnVp bGRfaWRfZmlsZW5hbWVfcmV0dXJuKQpAQCAtMTEzNSw3ICsxMTQxLDcgQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmMKICAgICAgICAvKiBQcmV2ZW50IGxvb3Bpbmcg b24gYSBzdHJpcHBlZCAuZGVidWcgZmlsZS4gICovCiAgICAgICAgaWYgKGFiZmQgIT0gTlVMTAog IAkgICYmIGZpbGVuYW1lX2NtcCAoYmZkX2dldF9maWxlbmFtZSAoYWJmZCksCi1AQCAtMTY2LDMg KzgzNywyMSBAQCBmaW5kX3NlcGFyYXRlX2RlYnVnX2ZpbGVfYnlfYnVpbGRpZCAoc3RyCitAQCAt MTY3LDMgKzgzOCwyMSBAQCBmaW5kX3NlcGFyYXRlX2RlYnVnX2ZpbGVfYnlfYnVpbGRpZCAoc3Ry CiAgICAgIH0KICAgIHJldHVybiBOVUxMOwogIH0KQEAgLTExNTcsMTAgKzExNjMsMTAgQEAgSW5k ZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmMKICsKICsgIG9ic2VydmVyX2F0 dGFjaF9leGVjdXRhYmxlX2NoYW5nZWQgKGRlYnVnX3ByaW50X2V4ZWN1dGFibGVfY2hhbmdlZCk7 CiArfQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmgKK0luZGV4OiBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi9idWlsZC1pZC5oCiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcu OS41MC4yMDE1MDUyMC5vcmlnL2dkYi9idWlsZC1pZC5oCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTQ5 MTEyNDE4ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnVpbGQtaWQuaAkyMDE1 LTA1LTMxIDE2OjM4OjU3LjYxODEzMDQ5MSArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDku b3JpZy9nZGIvYnVpbGQtaWQuaAkyMDE1LTA3LTA5IDIyOjA1OjIwLjk4ODA0NDMxMiArMDIwMAor KysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2J1aWxkLWlkLmgJMjAxNS0wNy0wOSAyMjowNTo0 Mi4wNzIyMjI4NDkgKzAyMDAKIEBAIC0yMCw5ICsyMCwxMCBAQAogICNpZm5kZWYgQlVJTERfSURf SAogICNkZWZpbmUgQlVJTERfSURfSApAQCAtMTE2OSw4ICsxMTc1LDggQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL2J1aWxkLWlkLmgKICsvKiBTZXBhcmF0ZSBkZWJ1Z2luZm8gZmls ZXMgaGF2ZSBjb3JydXB0ZWQgUEhEUiBidXQgU0hEUiBpcyBjb3JyZWN0IHRoZXJlLgogKyAgIExv Y2F0ZSBOVF9HTlVfQlVJTERfSUQgZnJvbSBBQkZEIGFuZCByZXR1cm4gaXRzIGNvbnRlbnQuICAq LwogIAotLWV4dGVybiBjb25zdCBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpidWlsZF9pZF9iZmRfZ2V0 IChiZmQgKmFiZmQpOwotK2V4dGVybiBjb25zdCBzdHJ1Y3QgZWxmX2J1aWxkX2lkICpidWlsZF9p ZF9iZmRfc2hkcl9nZXQgKGJmZCAqYWJmZCk7CistZXh0ZXJuIGNvbnN0IHN0cnVjdCBiZmRfYnVp bGRfaWQgKmJ1aWxkX2lkX2JmZF9nZXQgKGJmZCAqYWJmZCk7CisrZXh0ZXJuIGNvbnN0IHN0cnVj dCBiZmRfYnVpbGRfaWQgKmJ1aWxkX2lkX2JmZF9zaGRyX2dldCAoYmZkICphYmZkKTsKICAKICAv KiBSZXR1cm4gdHJ1ZSBpZiBBQkZEIGhhcyBOVF9HTlVfQlVJTERfSUQgbWF0Y2hpbmcgdGhlIENI RUNLIHZhbHVlLgogICAgIE90aGVyd2lzZSwgaXNzdWUgYSB3YXJuaW5nIGFuZCByZXR1cm4gZmFs c2UuICAqLwpAQCAtMTE4Miw3ICsxMTg4LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2J1aWxkLWlkLmgKICsJCQkJICAgY29uc3QgYmZkX2J5dGUgKmJ1aWxkX2lkLCBjaGFyICoq bGlua19yZXR1cm4sCiArCQkJCSAgIGludCBhZGRfZGVidWdfc3VmZml4KTsKICsKLStleHRlcm4g Y2hhciAqYnVpbGRfaWRfdG9fZmlsZW5hbWUgKGNvbnN0IHN0cnVjdCBlbGZfYnVpbGRfaWQgKmJ1 aWxkX2lkLAorK2V4dGVybiBjaGFyICpidWlsZF9pZF90b19maWxlbmFtZSAoY29uc3Qgc3RydWN0 IGJmZF9idWlsZF9pZCAqYnVpbGRfaWQsCiArCQkJCSAgIGNoYXIgKipsaW5rX3JldHVybik7CiAg CiAgLyogRmluZCB0aGUgc2VwYXJhdGUgZGVidWcgZmlsZSBmb3IgT0JKRklMRSwgYnkgdXNpbmcg dGhlIGJ1aWxkLWlkCkBAIC0xMTk1LDExICsxMjAxLDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9idWlsZC1pZC5oCiArCQkJCQkgICAgICAgY2hhciAqKmJ1aWxkX2lkX2ZpbGVu YW1lX3JldHVybik7CiAgCiAgI2VuZGlmIC8qIEJVSUxEX0lEX0ggKi8KLUluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9kd2FyZjJyZWFkLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5 L2dkYi9kd2FyZjJyZWFkLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9y aWcvZ2RiL2R3YXJmMnJlYWQuYwkyMDE1LTA1LTMxIDE2OjM4OjU1LjE1NjExMjQ2OSArMDIwMAot KysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2R3YXJmMnJlYWQuYwkyMDE1LTA1LTMxIDE2OjM4 OjU3LjYyMzEzMDUyOCArMDIwMAotQEAgLTI1MDQsNyArMjUwNCw3IEBAIGR3YXJmMl9nZXRfZHd6 X2ZpbGUgKHZvaWQpCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9kd2FyZjJyZWFk LmMJMjAxNS0wNy0wOSAyMjowNToyMC45ODgwNDQzMTIgKzAyMDAKKysrKyBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9kd2FyZjJyZWFkLmMJMjAxNS0wNy0wOSAyMjowNTo0Mi4wNzcyMjI4OTEgKzAy MDAKK0BAIC0yNTA3LDcgKzI1MDcsNyBAQCBkd2FyZjJfZ2V0X2R3el9maWxlICh2b2lkKQogICAg ICB9CiAgCiAgICBpZiAoZHd6X2JmZCA9PSBOVUxMKQpAQCAtMTIwOCwxMSArMTIxNCwxMSBAQCBJ bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZHdhcmYycmVhZC5jCiAgCiAgICBpZiAoZHd6 X2JmZCA9PSBOVUxMKQogICAgICBlcnJvciAoXygiY291bGQgbm90IGZpbmQgJy5nbnVfZGVidWdh bHRsaW5rJyBmaWxlIGZvciAlcyIpLAotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3B5 dGhvbi9weS1vYmpmaWxlLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9weXRob24v cHktb2JqZmlsZS5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dk Yi9weXRob24vcHktb2JqZmlsZS5jCTIwMTUtMDUtMzEgMTY6Mzg6NTUuMTU3MTEyNDc2ICswMjAw Ci0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvcHl0aG9uL3B5LW9iamZpbGUuYwkyMDE1LTA1 LTMxIDE2OjM4OjU3LjYyMzEzMDUyOCArMDIwMAotQEAgLTE0MCw3ICsxNDAsNyBAQCBvYmpmcHlf Z2V0X2J1aWxkX2lkIChQeU9iamVjdCAqc2VsZiwgdm9pCistLS0gZ2RiLTcuOS45MC4yMDE1MDcw OS5vcmlnL2dkYi9weXRob24vcHktb2JqZmlsZS5jCTIwMTUtMDctMDkgMjI6MDU6MjAuOTg4MDQ0 MzEyICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvcHl0aG9uL3B5LW9iamZpbGUu YwkyMDE1LTA3LTA5IDIyOjA1OjQyLjA3NzIyMjg5MSArMDIwMAorQEAgLTEzOSw3ICsxMzksNyBA QCBvYmpmcHlfZ2V0X2J1aWxkX2lkIChQeU9iamVjdCAqc2VsZiwgdm9pCiAgCiAgICBUUlkKICAg ICAgewpAQCAtMTIyMSw3ICsxMjI3LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L3B5dGhvbi9weS1vYmpmaWxlLmMKICAgICAgfQogICAgQ0FUQ0ggKGV4Y2VwdCwgUkVUVVJOX01B U0tfQUxMKQogICAgICB7Ci1AQCAtNTQ5LDcgKzU0OSw3IEBAIG9iamZweV9sb29rdXBfb2JqZmls ZV9ieV9idWlsZF9pZCAoY29uc3QKK0BAIC01NDgsNyArNTQ4LDcgQEAgb2JqZnB5X2xvb2t1cF9v YmpmaWxlX2J5X2J1aWxkX2lkIChjb25zdAogICAgICAgIC8qIERvbid0IHJldHVybiBzZXBhcmF0 ZSBkZWJ1ZyBmaWxlcy4gICovCiAgICAgICAgaWYgKG9iamZpbGUtPnNlcGFyYXRlX2RlYnVnX29i amZpbGVfYmFja2xpbmsgIT0gTlVMTCkKICAJY29udGludWU7CkBAIC0xMjMwLDMgKzEyMzYsMTYg QEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3B5dGhvbi9weS1vYmpmaWxlLmMKICAg ICAgICBpZiAob2JmZF9idWlsZF9pZCA9PSBOVUxMKQogIAljb250aW51ZTsKICAgICAgICBpZiAo b2JqZnB5X2J1aWxkX2lkX21hdGNoZXMgKG9iZmRfYnVpbGRfaWQsIGJ1aWxkX2lkKSkKK0luZGV4 OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9jb2ZmcmVhZC5jCis9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2Ri LTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9jb2ZmcmVhZC5jCTIwMTUtMDctMDkgMjI6MDU6MjAu OTg4MDQ0MzEyICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29mZnJlYWQuYwky MDE1LTA3LTA5IDIyOjA1OjQyLjA3ODIyMjg5OSArMDIwMAorQEAgLTczOSw3ICs3MzksNyBAQCBj b2ZmX3N5bWZpbGVfcmVhZCAoc3RydWN0IG9iamZpbGUgKm9iamZpCisgICAgIHsKKyAgICAgICBj aGFyICpkZWJ1Z2ZpbGU7CisgCistICAgICAgZGVidWdmaWxlID0gZmluZF9zZXBhcmF0ZV9kZWJ1 Z19maWxlX2J5X2J1aWxkaWQgKG9iamZpbGUpOworKyAgICAgIGRlYnVnZmlsZSA9IGZpbmRfc2Vw YXJhdGVfZGVidWdfZmlsZV9ieV9idWlsZGlkIChvYmpmaWxlLCBOVUxMKTsKKyAKKyAgICAgICBp ZiAoZGVidWdmaWxlID09IE5VTEwpCisgCWRlYnVnZmlsZSA9IGZpbmRfc2VwYXJhdGVfZGVidWdf ZmlsZV9ieV9kZWJ1Z2xpbmsgKG9iamZpbGUpOwoKZGlmZiAtLWdpdCBhL2dkYi03LjIuNTAtc3Bh cmMtYWRkLXdvcmthcm91bmQtdG8tYnJva2VuLWRlYnVnLWZpbGVzLnBhdGNoIGIvZ2RiLTcuMi41 MC1zcGFyYy1hZGQtd29ya2Fyb3VuZC10by1icm9rZW4tZGVidWctZmlsZXMucGF0Y2gKaW5kZXgg M2UxNGE1Ny4uNTNlZDJjYiAxMDA2NDQKLS0tIGEvZ2RiLTcuMi41MC1zcGFyYy1hZGQtd29ya2Fy b3VuZC10by1icm9rZW4tZGVidWctZmlsZXMucGF0Y2gKKysrIGIvZ2RiLTcuMi41MC1zcGFyYy1h ZGQtd29ya2Fyb3VuZC10by1icm9rZW4tZGVidWctZmlsZXMucGF0Y2gKQEAgLTEsNyArMSw3IEBA Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ2RiX2JmZC5jCitJbmRleDogZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvZ2RiX2JmZC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4y MDE1MDUyMC5vcmlnL2dkYi9nZGJfYmZkLmMJMjAxNS0wNS0zMSAxNzowMjo1Ny43NDIzMDMwODYg KzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9nZGJfYmZkLmMJMjAxNS0wNS0zMSAx NzowMzoyMC4xNDU0NDQ0ODAgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2Ri L2dkYl9iZmQuYwkyMDE1LTA3LTA5IDE4OjIzOjU5LjM0NDAxNzg4MiArMDIwMAorKysrIGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2dkYl9iZmQuYwkyMDE1LTA3LTA5IDE4OjI0OjA2Ljk4NjA4MzA3 MSArMDIwMAogQEAgLTI0LDEyICsyNCwxNCBAQAogICNpbmNsdWRlICJoYXNodGFiLmgiCiAgI2lu Y2x1ZGUgImZpbGVzdHVmZi5oIgpAQCAtMTYsOCArMTYsOCBAQCBJbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvZ2RiX2JmZC5jCiArI2VuZGlmCiAgI2luY2x1ZGUgInRhcmdldC5oIgogICNp bmNsdWRlICJnZGIvZmlsZWlvLmgiCi0gCi1AQCAtNDA4LDYgKzQxMCw3IEBAIGZyZWVfb25lX2Jm ZF9zZWN0aW9uIChiZmQgKmFiZmQsIGFzZWN0aW8KKyAjaW5jbHVkZSAiaW5mZXJpb3IuaCIKK0BA IC0zOTcsNiArMzk5LDcgQEAgZnJlZV9vbmVfYmZkX3NlY3Rpb24gKGJmZCAqYWJmZCwgYXNlY3Rp bwogIAogICAgaWYgKHNlY3QgIT0gTlVMTCAmJiBzZWN0LT5kYXRhICE9IE5VTEwpCiAgICAgIHsK QEAgLTI1LDcgKzI1LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dkYl9iZmQu YwogICNpZmRlZiBIQVZFX01NQVAKICAgICAgICBpZiAoc2VjdC0+bWFwX2FkZHIgIT0gTlVMTCkK ICAJewotQEAgLTQxOCw2ICs0MjEsNyBAQCBmcmVlX29uZV9iZmRfc2VjdGlvbiAoYmZkICphYmZk LCBhc2VjdGlvCitAQCAtNDA3LDYgKzQxMCw3IEBAIGZyZWVfb25lX2JmZF9zZWN0aW9uIChiZmQg KmFiZmQsIGFzZWN0aW8KICAJfQogICAgICAgIGVsc2UKICAjZW5kaWYKQEAgLTMzLDcgKzMzLDcg QEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dkYl9iZmQuYwogIAl4ZnJlZSAoc2Vj dC0+ZGF0YSk7CiAgICAgIH0KICB9Ci1AQCAtNTY5LDYgKzU3Myw3IEBAIGdkYl9iZmRfbWFwX3Nl Y3Rpb24gKGFzZWN0aW9uICpzZWN0cCwgYmYKK0BAIC01NTgsNiArNTYyLDcgQEAgZ2RiX2JmZF9t YXBfc2VjdGlvbiAoYXNlY3Rpb24gKnNlY3RwLCBiZgogICAgaWYgKGRlc2NyaXB0b3ItPmRhdGEg IT0gTlVMTCkKICAgICAgZ290byBkb25lOwogIApAQCAtNDEsNyArNDEsNyBAQCBJbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvZ2RiX2JmZC5jCiAgI2lmZGVmIEhBVkVfTU1BUAogICAgaWYg KCFiZmRfaXNfc2VjdGlvbl9jb21wcmVzc2VkIChhYmZkLCBzZWN0cCkpCiAgICAgIHsKLUBAIC02 MDMsNiArNjA4LDcgQEAgZ2RiX2JmZF9tYXBfc2VjdGlvbiAoYXNlY3Rpb24gKnNlY3RwLCBiZgor QEAgLTU5Miw2ICs1OTcsNyBAQCBnZGJfYmZkX21hcF9zZWN0aW9uIChhc2VjdGlvbiAqc2VjdHAs IGJmCiAgCX0KICAgICAgfQogICNlbmRpZiAvKiBIQVZFX01NQVAgKi8KCmRpZmYgLS1naXQgYS9n ZGItYXR0YWNoLWZhaWwtcmVhc29ucy01b2Y1LnBhdGNoIGIvZ2RiLWF0dGFjaC1mYWlsLXJlYXNv bnMtNW9mNS5wYXRjaAppbmRleCBiY2Q0YTMzLi44MzAwNWI0IDEwMDY0NAotLS0gYS9nZGItYXR0 YWNoLWZhaWwtcmVhc29ucy01b2Y1LnBhdGNoCisrKyBiL2dkYi1hdHRhY2gtZmFpbC1yZWFzb25z LTVvZjUucGF0Y2gKQEAgLTM3LDEzICszNywxMyBAQCBnZGIvZ2Ric2VydmVyLwogCShsaW51eF9j cmVhdGVfaW5mZXJpb3IsIGxpbnV4X3RyYWNlZm9ya19jaGlsZCk6IENhbGwgaXQgaW5zdGVhZCBv ZgogCWRpcmVjdCBwdHJhY2UuCiAKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9uYXQv bGludXgtcHRyYWNlLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9uYXQvbGludXgt cHRyYWNlLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL25h dC9saW51eC1wdHJhY2UuYwkyMDE1LTA1LTMxIDE4OjE2OjU0LjM0ODg5MDc0NiArMDIwMAotKysr IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL25hdC9saW51eC1wdHJhY2UuYwkyMDE1LTA1LTMxIDE4 OjE3OjE5LjU4NDA0NjU0MCArMDIwMAotQEAgLTI1LDYgKzI1LDEwIEBACi0gCi0gI2luY2x1ZGUg PHN0ZGludC5oPgorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvbmF0L2xpbnV4LXB0 cmFjZS5jCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzA1MTQwMzg0ICswMjAwCisrKysgZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvbmF0L2xpbnV4LXB0cmFjZS5jCTIwMTUtMDctMDkgMTg6MjQ6MjQuOTEx MjM1OTczICswMjAwCitAQCAtMjMsNiArMjMsMTAgQEAKKyAjaW5jbHVkZSAiYnVmZmVyLmgiCisg I2luY2x1ZGUgImdkYl93YWl0LmgiCiAgCiArI2lmZGVmIEhBVkVfU0VMSU5VWF9TRUxJTlVYX0gK ICsjIGluY2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgpAQCAtNTIsNyArNTIsNyBAQCBJbmRleDog Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbmF0L2xpbnV4LXB0cmFjZS5jCiAgLyogU3RvcmVzIHRo ZSBwdHJhY2Ugb3B0aW9ucyBzdXBwb3J0ZWQgYnkgdGhlIHJ1bm5pbmcga2VybmVsLgogICAgIEEg dmFsdWUgb2YgLTEgbWVhbnMgd2UgZGlkIG5vdCBjaGVjayBmb3IgZmVhdHVyZXMgeWV0LiAgQSB2 YWx1ZQogICAgIG9mIDAgbWVhbnMgdGhlcmUgYXJlIG5vIHN1cHBvcnRlZCBmZWF0dXJlcy4gICov Ci1AQCAtNDksNiArNTMsOCBAQCBsaW51eF9wdHJhY2VfYXR0YWNoX2ZhaWxfcmVhc29uIChwaWRf dCBwCitAQCAtNDcsNiArNTEsOCBAQCBsaW51eF9wdHJhY2VfYXR0YWNoX2ZhaWxfcmVhc29uIChw aWRfdCBwCiAgICAgIGJ1ZmZlcl94bWxfcHJpbnRmIChidWZmZXIsIF8oInByb2Nlc3MgJWQgaXMg YSB6b21iaWUgIgogIAkJCQkgIi0gdGhlIHByb2Nlc3MgaGFzIGFscmVhZHkgdGVybWluYXRlZCIp LAogIAkJICAgICAgIChpbnQpIHBpZCk7CkBAIC02MSw3ICs2MSw3IEBAIEluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9uYXQvbGludXgtcHRyYWNlLmMKICB9CiAgCiAgLyogU2VlIGxpbnV4 LXB0cmFjZS5oLiAgKi8KLUBAIC01ODMsNiArNTg5LDIyIEBAIGxpbnV4X3B0cmFjZV9pbml0X3dh cm5pbmdzICh2b2lkKQorQEAgLTU4MSw2ICs1ODcsMjIgQEAgbGludXhfcHRyYWNlX2luaXRfd2Fy bmluZ3MgKHZvaWQpCiAgICBsaW51eF9wdHJhY2VfdGVzdF9yZXRfdG9fbnggKCk7CiAgfQogIApA QCAtODQsMTEgKzg0LDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9uYXQvbGlu dXgtcHRyYWNlLmMKICAvKiBFeHRyYWN0IGV4dGVuZGVkIHB0cmFjZSBldmVudCBmcm9tIHdhaXQg c3RhdHVzLiAgKi8KICAKICBpbnQKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9uYXQv bGludXgtcHRyYWNlLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9uYXQvbGludXgt cHRyYWNlLmgKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL25h dC9saW51eC1wdHJhY2UuaAkyMDE1LTA1LTMxIDE4OjE2OjU0LjM0ODg5MDc0NiArMDIwMAotKysr IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL25hdC9saW51eC1wdHJhY2UuaAkyMDE1LTA1LTMxIDE4 OjE3OjE5LjU4NDA0NjU0MCArMDIwMAotQEAgLTE0OSw2ICsxNDksNyBAQCBleHRlcm4gdm9pZCBs aW51eF9wdHJhY2VfYXR0YWNoX2ZhaWxfcmVhCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmln L2dkYi9uYXQvbGludXgtcHRyYWNlLmgJMjAxNS0wNy0wOSAxODoyNDoxMy43MDYxNDAzOTIgKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9uYXQvbGludXgtcHRyYWNlLmgJMjAxNS0w Ny0wOSAxODoyNDoyNC45MTIyMzU5ODEgKzAyMDAKK0BAIC0xNTcsNiArMTU3LDcgQEAgZXh0ZXJu IHZvaWQgbGludXhfcHRyYWNlX2F0dGFjaF9mYWlsX3JlYQogIGV4dGVybiBjaGFyICpsaW51eF9w dHJhY2VfYXR0YWNoX2ZhaWxfcmVhc29uX3N0cmluZyAocHRpZF90IHB0aWQsIGludCBlcnIpOwog IAogIGV4dGVybiB2b2lkIGxpbnV4X3B0cmFjZV9pbml0X3dhcm5pbmdzICh2b2lkKTsKQEAgLTk2 LDExICs5NiwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbmF0L2xpbnV4LXB0 cmFjZS5oCiAgZXh0ZXJuIHZvaWQgbGludXhfY2hlY2tfcHRyYWNlX2ZlYXR1cmVzICh2b2lkKTsK ICBleHRlcm4gdm9pZCBsaW51eF9lbmFibGVfZXZlbnRfcmVwb3J0aW5nIChwaWRfdCBwaWQsIGlu dCBhdHRhY2hlZCk7CiAgZXh0ZXJuIHZvaWQgbGludXhfZGlzYWJsZV9ldmVudF9yZXBvcnRpbmcg KHBpZF90IHBpZCk7Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvY29uZmlndXJlLmFj CitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmlndXJlLmFjCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9jb25maWd1cmUuYWMJMjAxNS0wNS0z MSAxODoxNjo1NC4zNDg4OTA3NDYgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9j b25maWd1cmUuYWMJMjAxNS0wNS0zMSAxODoxNzoxOS41ODUwNDY1NDYgKzAyMDAKLUBAIC0yMTMw LDYgKzIxMzAsMTAgQEAgY2FzZSAkaG9zdF9vcyBpbgorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDku b3JpZy9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzA3MTQwNDAxICswMjAw CisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmlndXJlLmFjCTIwMTUtMDctMDkgMTg6 MjQ6MjQuOTEzMjM1OTkwICswMjAwCitAQCAtMjE1MCw2ICsyMTUwLDEwIEBAIGNhc2UgJGhvc3Rf b3MgaW4KICBlc2FjCiAgQUNfREVGSU5FX1VOUVVPVEVEKEdEQklOSVQsIiRnZGJpbml0IixbVGhl IC5nZGJpbml0IGZpbGVuYW1lLl0pCiAgCkBAIC0xMTEsMTAgKzExMSwxMCBAQCBJbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvY29uZmlndXJlLmFjCiAgZG5sIEhhbmRsZSBvcHRpb25hbCBm ZWF0dXJlcyB0aGF0IGNhbiBiZSBlbmFibGVkLgogIAogICMgU3VwcG9ydCBmb3IgLS13aXRoLXN5 c3Jvb3QgaXMgYSBjb3B5IG9mIEdEQl9BQ19XSVRIX0RJUiwKLUluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9nZGJzZXJ2ZXIvY29uZmlndXJlLmFjCitJbmRleDogZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvZ2Ric2VydmVyL2NvbmZpZ3VyZS5hYwogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03Ljku NTAuMjAxNTA1MjAub3JpZy9nZGIvZ2Ric2VydmVyL2NvbmZpZ3VyZS5hYwkyMDE1LTA1LTMxIDE4 OjE2OjU0LjM0ODg5MDc0NiArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dkYnNl cnZlci9jb25maWd1cmUuYWMJMjAxNS0wNS0zMSAxODoxNzoxOS41ODUwNDY1NDYgKzAyMDAKKy0t LSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2dkYnNlcnZlci9jb25maWd1cmUuYWMJMjAx NS0wNy0wOSAxODoyNDoxMy43MDcxNDA0MDEgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5 L2dkYi9nZGJzZXJ2ZXIvY29uZmlndXJlLmFjCTIwMTUtMDctMDkgMTg6MjQ6MjQuOTEzMjM1OTkw ICswMjAwCiBAQCAtNDk5LDYgKzQ5OSwxMCBAQCBpZiAkd2FudF9pcGEgOyB0aGVuCiAgICAgZmkK ICBmaQpAQCAtMTI2LDExICsxMjYsMTEgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L2dkYnNlcnZlci9jb25maWd1cmUuYWMKICBBQ19TVUJTVChHREJTRVJWRVJfREVQRklMRVMpCiAg QUNfU1VCU1QoR0RCU0VSVkVSX0xJQlMpCiAgQUNfU1VCU1Qoc3J2X3htbGJ1aWx0aW4pCi1JbmRl eDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ2Ric2VydmVyL2xpbnV4LWxvdy5jCitJbmRleDog Z2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZ2Ric2VydmVyL2xpbnV4LWxvdy5jCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9nZGJzZXJ2ZXIvbGludXgtbG93LmMJ MjAxNS0wNS0zMSAxODoxNjo1NC4zNDg4OTA3NDYgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9nZGJzZXJ2ZXIvbGludXgtbG93LmMJMjAxNS0wNS0zMSAxODoxNzoxOS41ODcwNDY1 NTggKzAyMDAKLUBAIC03NDksNiArNzQ5LDI5IEBAIGFkZF9sd3AgKHB0aWRfdCBwdGlkKQorLS0t IGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZ2Ric2VydmVyL2xpbnV4LWxvdy5jCTIwMTUt MDctMDkgMTg6MjQ6MTMuNzA5MTQwNDE4ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9n ZGIvZ2Ric2VydmVyL2xpbnV4LWxvdy5jCTIwMTUtMDctMDkgMTg6MjQ6MjQuOTE0MjM1OTk4ICsw MjAwCitAQCAtNzU1LDYgKzc1NSwyOSBAQCBhZGRfbHdwIChwdGlkX3QgcHRpZCkKICAgIHJldHVy biBsd3A7CiAgfQogIApAQCAtMTYwLDcgKzE2MCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9nZGJzZXJ2ZXIvbGludXgtbG93LmMKICAvKiBTdGFydCBhbiBpbmZlcmlvciBwcm9j ZXNzIGFuZCByZXR1cm5zIGl0cyBwaWQuCiAgICAgQUxMQVJHUyBpcyBhIHZlY3RvciBvZiBwcm9n cmFtLW5hbWUgYW5kIGFyZ3MuICovCiAgCi1AQCAtNzcyLDcgKzc5NSw3IEBAIGxpbnV4X2NyZWF0 ZV9pbmZlcmlvciAoY2hhciAqcHJvZ3JhbSwgY2gKK0BAIC03NzgsNyArODAxLDcgQEAgbGludXhf Y3JlYXRlX2luZmVyaW9yIChjaGFyICpwcm9ncmFtLCBjaAogICAgaWYgKHBpZCA9PSAwKQogICAg ICB7CiAgICAgICAgY2xvc2VfbW9zdF9mZHMgKCk7CkBAIC0xNjksMTAgKzE2OSwxMCBAQCBJbmRl eDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ2Ric2VydmVyL2xpbnV4LWxvdy5jCiAgCiAgI2lm bmRlZiBfX0FORFJPSURfXyAvKiBCaW9uaWMgZG9lc24ndCB1c2UgU0lHUlRNSU4gdGhlIHdheSBn bGliYyBkb2VzLiAgKi8KICAgICAgICBzaWduYWwgKF9fU0lHUlRNSU4gKyAxLCBTSUdfREZMKTsK LUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9pbmYtcHRyYWNlLmMKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9pbmYtcHRyYWNlLmMKID09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45 LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2luZi1wdHJhY2UuYwkyMDE1LTA1LTMxIDE4OjE2OjU0LjM0 ODg5MDc0NiArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2luZi1wdHJhY2UuYwky MDE1LTA1LTMxIDE4OjE3OjE5LjU4ODA0NjU2NSArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3 MDkub3JpZy9nZGIvaW5mLXB0cmFjZS5jCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzEwMTQwNDI2ICsw MjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvaW5mLXB0cmFjZS5jCTIwMTUtMDctMDkg MTg6MjQ6MjQuOTE1MjM2MDA3ICswMjAwCiBAQCAtNzksNyArNzksMTUgQEAgc3RhdGljIHZvaWQK ICBpbmZfcHRyYWNlX21lICh2b2lkKQogIHsKQEAgLTE4OSwxMSArMTg5LDExIEBAIEluZGV4OiBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi9pbmYtcHRyYWNlLmMKICB9CiAgCiAgLyogU3RhcnQgYSBu ZXcgaW5mZXJpb3IgVW5peCBjaGlsZCBwcm9jZXNzLiAgRVhFQ19GSUxFIGlzIHRoZSBmaWxlIHRv Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbGludXgtbmF0LmMKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9saW51eC1uYXQuYwogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03Ljku NTAuMjAxNTA1MjAub3JpZy9nZGIvbGludXgtbmF0LmMJMjAxNS0wNS0zMSAxODoxNjo1NC4zNDg4 OTA3NDYgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9saW51eC1uYXQuYwkyMDE1 LTA1LTMxIDE4OjE3OjU2LjIxNDI3MjY4MyArMDIwMAotQEAgLTExNzksNiArMTE3OSw3IEBAIGxp bnV4X25hdF9jcmVhdGVfaW5mZXJpb3IgKHN0cnVjdCB0YXJnZXQKKy0tLSBnZGItNy45LjkwLjIw MTUwNzA5Lm9yaWcvZ2RiL2xpbnV4LW5hdC5jCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzEyMTQwNDQz ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvbGludXgtbmF0LmMJMjAxNS0wNy0w OSAxODoyNDoyNC45MTYyMzYwMTUgKzAyMDAKK0BAIC0xMTg0LDYgKzExODQsNyBAQCBsaW51eF9u YXRfY3JlYXRlX2luZmVyaW9yIChzdHJ1Y3QgdGFyZ2V0CiAgewogICAgc3RydWN0IGNsZWFudXAg KnJlc3RvcmVfcGVyc29uYWxpdHkKICAgICAgPSBtYXliZV9kaXNhYmxlX2FkZHJlc3Nfc3BhY2Vf cmFuZG9taXphdGlvbiAoZGlzYWJsZV9yYW5kb21pemF0aW9uKTsKQEAgLTIwMSw3ICsyMDEsNyBA QCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbGludXgtbmF0LmMKICAKICAgIC8qIFRo ZSBmb3JrX2NoaWxkIG1lY2hhbmlzbSBpcyBzeW5jaHJvbm91cyBhbmQgY2FsbHMgdGFyZ2V0X3dh aXQsIHNvCiAgICAgICB3ZSBoYXZlIHRvIG1hc2sgdGhlIGFzeW5jIG1vZGUuICAqLwotQEAgLTEx ODYsNyArMTE4NywyOCBAQCBsaW51eF9uYXRfY3JlYXRlX2luZmVyaW9yIChzdHJ1Y3QgdGFyZ2V0 CitAQCAtMTE5MSw3ICsxMTkyLDI4IEBAIGxpbnV4X25hdF9jcmVhdGVfaW5mZXJpb3IgKHN0cnVj dCB0YXJnZXQKICAgIC8qIE1ha2Ugc3VyZSB3ZSByZXBvcnQgYWxsIHNpZ25hbHMgZHVyaW5nIHN0 YXJ0dXAuICAqLwogICAgbGludXhfbmF0X3Bhc3Nfc2lnbmFscyAob3BzLCAwLCBOVUxMKTsKICAK QEAgLTIzMSwxMSArMjMxLDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9saW51 eC1uYXQuYwogIAogICAgZG9fY2xlYW51cHMgKHJlc3RvcmVfcGVyc29uYWxpdHkpOwogIH0KLUlu ZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb25maWcuaW4KK0luZGV4OiBnZGItNy45Ljkw LjIwMTUwNzA5L2dkYi9jb25maWcuaW4KID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUw NTIwLm9yaWcvZ2RiL2NvbmZpZy5pbgkyMDE1LTA1LTMxIDE4OjE2OjU0LjM0ODg5MDc0NiArMDIw MAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2NvbmZpZy5pbgkyMDE1LTA1LTMxIDE4OjE3 OjE5LjU4OTA0NjU3MSArMDIwMAotQEAgLTI2MSw2ICsyNjEsOSBAQAorLS0tIGdkYi03LjkuOTAu MjAxNTA3MDkub3JpZy9nZGIvY29uZmlnLmluCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzEzMTQwNDUy ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmlnLmluCTIwMTUtMDctMDkg MTg6MjQ6MjQuOTE2MjM2MDE1ICswMjAwCitAQCAtMjY0LDYgKzI2NCw5IEBACiAgLyogRGVmaW5l IGlmIGxpYnJwbSBsaWJyYXJ5IGlzIGJlaW5nIHVzZWQuICovCiAgI3VuZGVmIEhBVkVfTElCUlBN CiAgCkBAIC0yNDUsNyArMjQ1LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2Nv bmZpZy5pbgogIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bGlidW53aW5kLWlhNjQu aD4gaGVhZGVyIGZpbGUuICovCiAgI3VuZGVmIEhBVkVfTElCVU5XSU5EX0lBNjRfSAogIAotQEAg LTM5Myw2ICszOTYsOSBAQAorQEAgLTM5Niw2ICszOTksOSBAQAogIC8qIERlZmluZSB0byAxIGlm IHlvdSBoYXZlIHRoZSBgc2NtX25ld19zbW9iJyBmdW5jdGlvbi4gKi8KICAjdW5kZWYgSEFWRV9T Q01fTkVXX1NNT0IKICAKQEAgLTI1NSwxMSArMjU1LDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9jb25maWcuaW4KICAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNl dGxvY2FsZScgZnVuY3Rpb24uICovCiAgI3VuZGVmIEhBVkVfU0VUTE9DQUxFCiAgCi1JbmRleDog Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvY29uZmlndXJlCitJbmRleDogZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvY29uZmlndXJlCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5v cmlnL2dkYi9jb25maWd1cmUJMjAxNS0wNS0zMSAxODoxNjo1NC4zNDg4OTA3NDYgKzAyMDAKLSsr KyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb25maWd1cmUJMjAxNS0wNS0zMSAxODoxNzoxOS41 OTQwNDY2MDIgKzAyMDAKLUBAIC0xMzczMCw2ICsxMzczMCw2NCBAQCBjYXQgPj5jb25mZGVmcy5o IDw8X0FDRU9GCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9jb25maWd1cmUJMjAx NS0wNy0wOSAxODoyNDoxMy43MTgxNDA0OTUgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5 L2dkYi9jb25maWd1cmUJMjAxNS0wNy0wOSAxODoyNDoyNC45MjAyMzYwNDkgKzAyMDAKK0BAIC0x NDIyOCw2ICsxNDIyOCw2NCBAQCBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCiAgX0FDRU9GCiAg CiAgCkBAIC0zMjQsMTAgKzMyNCwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv Y29uZmlndXJlCiAgCiAgIyBTdXBwb3J0IGZvciAtLXdpdGgtc3lzcm9vdCBpcyBhIGNvcHkgb2Yg R0RCX0FDX1dJVEhfRElSLAogICMgZXhjZXB0IHRoYXQgdGhlIGFyZ3VtZW50IHRvIC0td2l0aC1z eXNyb290IGlzIG9wdGlvbmFsLgotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dkYnNl cnZlci9jb25maWcuaW4KK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9nZGJzZXJ2ZXIv Y29uZmlnLmluCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9n ZGJzZXJ2ZXIvY29uZmlnLmluCTIwMTUtMDUtMzEgMTg6MTY6NTQuMzQ4ODkwNzQ2ICswMjAwCi0r KysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ2Ric2VydmVyL2NvbmZpZy5pbgkyMDE1LTA1LTMx IDE4OjE3OjE5LjU5NDA0NjYwMiArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9n ZGIvZ2Ric2VydmVyL2NvbmZpZy5pbgkyMDE1LTA3LTA5IDE4OjI0OjEzLjcxOTE0MDUwMyArMDIw MAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2dkYnNlcnZlci9jb25maWcuaW4JMjAxNS0w Ny0wOSAxODoyNDoyNC45MjAyMzYwNDkgKzAyMDAKIEBAIC0xMTMsNiArMTEzLDkgQEAKICAvKiBE ZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG1jaGVjaycgbGlicmFyeSAoLWxtY2hlY2spLiAq LwogICN1bmRlZiBIQVZFX0xJQk1DSEVDSwpAQCAtMzM4LDkgKzMzOCw5IEBAIEluZGV4OiBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9nZGJzZXJ2ZXIvY29uZmlnLmluCiAgLyogRGVmaW5lIGlmIHRo ZSB0YXJnZXQgc3VwcG9ydHMgYnJhbmNoIHRyYWNpbmcuICovCiAgI3VuZGVmIEhBVkVfTElOVVhf QlRSQUNFCiAgCi1AQCAtMTg2LDYgKzE4OSw5IEBACi0gLyogRGVmaW5lIHRvIDEgaWYgeW91IGhh dmUgdGhlIGBwd3JpdGUnIGZ1bmN0aW9uLiAqLwotICN1bmRlZiBIQVZFX1BXUklURQorQEAgLTE4 OSw2ICsxOTIsOSBAQAorIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2V0bnMnIGZ1 bmN0aW9uLiAqLworICN1bmRlZiBIQVZFX1NFVE5TCiAgCiArLyogRGVmaW5lIHRvIDEgaWYgeW91 IGhhdmUgdGhlIDxzZWxpbnV4L3NlbGludXguaD4gaGVhZGVyIGZpbGUuICovCiArI3VuZGVmIEhB VkVfU0VMSU5VWF9TRUxJTlVYX0gKQEAgLTM0OCwxMCArMzQ4LDEwIEBAIEluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9nZGJzZXJ2ZXIvY29uZmlnLmluCiAgLyogRGVmaW5lIHRvIDEgaWYg eW91IGhhdmUgdGhlIDxzZ3R0eS5oPiBoZWFkZXIgZmlsZS4gKi8KICAjdW5kZWYgSEFWRV9TR1RU WV9ICiAgCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ2Ric2VydmVyL2NvbmZpZ3Vy ZQorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2dkYnNlcnZlci9jb25maWd1cmUKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2dkYnNlcnZlci9jb25m aWd1cmUJMjAxNS0wNS0zMSAxODoxNjo1NC4zNDg4OTA3NDYgKzAyMDAKLSsrKyBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9nZGJzZXJ2ZXIvY29uZmlndXJlCTIwMTUtMDUtMzEgMTg6MTc6MTkuNTk2 MDQ2NjE0ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9nZGJzZXJ2ZXIv Y29uZmlndXJlCTIwMTUtMDctMDkgMTg6MjQ6MTMuNzIxMTQwNTIwICswMjAwCisrKysgZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvZ2Ric2VydmVyL2NvbmZpZ3VyZQkyMDE1LTA3LTA5IDE4OjI0OjI0 LjkyMjIzNjA2NiArMDIwMAogQEAgLTcwMjIsNiArNzAyMiw2NCBAQCBpZiAkd2FudF9pcGEgOyB0 aGVuCiAgICAgZmkKICBmaQoKZGlmZiAtLWdpdCBhL2dkYi1iejU0MTg2Ni1yd2F0Y2gtYmVmb3Jl LXJ1bi5wYXRjaCBiL2dkYi1iejU0MTg2Ni1yd2F0Y2gtYmVmb3JlLXJ1bi5wYXRjaAppbmRleCA4 M2IzYTM1Li43OTJiNDEwIDEwMDY0NAotLS0gYS9nZGItYno1NDE4NjYtcndhdGNoLWJlZm9yZS1y dW4ucGF0Y2gKKysrIGIvZ2RiLWJ6NTQxODY2LXJ3YXRjaC1iZWZvcmUtcnVuLnBhdGNoCkBAIC0x LDIwICsxLDIwIEBACi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvY29uZmlnL2kzODYv bGludXg2NC5taAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2NvbmZpZy9pMzg2L2xp bnV4NjQubWgKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2Nv bmZpZy9pMzg2L2xpbnV4NjQubWgJMjAxNS0wNS0zMSAxNjo1OTozNC4yNTgwMTg4MjcgKzAyMDAK LSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb25maWcvaTM4Ni9saW51eDY0Lm1oCTIwMTUt MDUtMzEgMTY6NTk6NDcuNzc5MTA0MTYzICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5v cmlnL2dkYi9jb25maWcvaTM4Ni9saW51eDY0Lm1oCTIwMTUtMDctMDkgMTg6MjM6MzIuMTczNzg2 MTE4ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmlnL2kzODYvbGludXg2 NC5taAkyMDE1LTA3LTA5IDE4OjIzOjUxLjgyMzk1MzczNiArMDIwMAogQEAgLTcsNyArNyw3IEBA IE5BVERFUEZJTEVTPSBpbmYtcHRyYWNlLm8gZm9yay1jaGlsZC5vIFwKICAJbGludXgtcHJvY2Zz Lm8gbGludXgtcHRyYWNlLm8gbGludXgtYnRyYWNlLm8gXAogIAlsaW51eC13YWl0cGlkLm8gbGlu dXgtcGVyc29uYWxpdHkubyB4ODYtbGludXgubyBcCi0gCXg4Ni1saW51eC1kcmVncy5vCisgCXg4 Ni1saW51eC1kcmVncy5vIGxpbnV4LW5hbWVzcGFjZXMubwogLU5BVF9GSUxFPSBjb25maWcvbm0t bGludXguaAogK05BVF9GSUxFPSBubS1saW51eDY0LmgKICBOQVRfQ0RFUFMgPSAkKHNyY2Rpcikv cHJvYy1zZXJ2aWNlLmxpc3QKICAKICAjIFRoZSBkeW5hbWljYWxseSBsb2FkZWQgbGlidGhyZWFk X2RiIG5lZWRzIGFjY2VzcyB0byBzeW1ib2xzIGluIHRoZQotSW5kZXg6IGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL2NvbmZpZy9pMzg2L2xpbnV4Lm1oCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcw OS9nZGIvY29uZmlnL2kzODYvbGludXgubWgKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIw MTUwNTIwLm9yaWcvZ2RiL2NvbmZpZy9pMzg2L2xpbnV4Lm1oCTIwMTUtMDUtMzEgMTY6NTY6MTIu ODY5NzQ3Nzk2ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvY29uZmlnL2kzODYv bGludXgubWgJMjAxNS0wNS0zMSAxNjo1OTozNC4yNTkwMTg4MzMgKzAyMDAKKy0tLSBnZGItNy45 LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2NvbmZpZy9pMzg2L2xpbnV4Lm1oCTIwMTUtMDctMDkgMTg6 MjM6MzAuNTI3NzcyMDc4ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29uZmln L2kzODYvbGludXgubWgJMjAxNS0wNy0wOSAxODoyMzozMi4xNzQ3ODYxMjcgKzAyMDAKIEBAIC0x LDYgKzEsNiBAQAogICMgSG9zdDogSW50ZWwgMzg2IHJ1bm5pbmcgR05VL0xpbnV4LgogIApAQCAt MjMsMTAgKzIzLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb25maWcvaTM4 Ni9saW51eC5taAogIE5BVERFUEZJTEVTPSBpbmYtcHRyYWNlLm8gZm9yay1jaGlsZC5vIFwKICAJ eDg2LW5hdC5vIHg4Ni1kcmVncy5vIGkzODYtbGludXgtbmF0Lm8geDg2LWxpbnV4LW5hdC5vIFwK ICAJcHJvYy1zZXJ2aWNlLm8gbGludXgtdGhyZWFkLWRiLm8gXAotSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL2NvbmZpZy9pMzg2L25tLWxpbnV4LmgKK0luZGV4OiBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9jb25maWcvaTM4Ni9ubS1saW51eC5oCiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAtLS0gL2Rldi9u dWxsCTE5NzAtMDEtMDEgMDA6MDA6MDAuMDAwMDAwMDAwICswMDAwCi0rKysgZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvY29uZmlnL2kzODYvbm0tbGludXguaAkyMDE1LTA1LTMxIDE2OjU5OjM0LjI1 OTAxODgzMyArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2NvbmZpZy9pMzg2L25t LWxpbnV4LmgJMjAxNS0wNy0wOSAxODoyMzozMi4xNzQ3ODYxMjcgKzAyMDAKIEBAIC0wLDAgKzEs MjggQEAKICsvKiBOYXRpdmUgc3VwcG9ydCBmb3IgR05VL0xpbnV4IGkzODYuCiArCkBAIC01Niwx MCArNTYsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2NvbmZpZy9pMzg2L25t LWxpbnV4LmgKICsjZGVmaW5lIHRhcmdldF9jYW5fdXNlX2hhcmR3YXJlX3dhdGNocG9pbnQodHlw ZSwgY250LCBvdCkgMQogKwogKyNlbmRpZiAvKiBOTV9MSU5VWDY0X0ggKi8KLUluZGV4OiBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9jb25maWcvaTM4Ni9ubS1saW51eDY0LmgKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9jb25maWcvaTM4Ni9ubS1saW51eDY0LmgKID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K IC0tLSAvZGV2L251bGwJMTk3MC0wMS0wMSAwMDowMDowMC4wMDAwMDAwMDAgKzAwMDAKLSsrKyBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jb25maWcvaTM4Ni9ubS1saW51eDY0LmgJMjAxNS0wNS0z MSAxNjo1OTozNC4yNTkwMTg4MzMgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9j b25maWcvaTM4Ni9ubS1saW51eDY0LmgJMjAxNS0wNy0wOSAxODoyMzozMi4xNzQ3ODYxMjcgKzAy MDAKIEBAIC0wLDAgKzEsMjggQEAKICsvKiBOYXRpdmUgc3VwcG9ydCBmb3IgR05VL0xpbnV4IGFt ZDY0LgogKwpAQCAtODksMTEgKzg5LDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi9jb25maWcvaTM4Ni9ubS1saW51eDY0LmgKICsjZGVmaW5lIHRhcmdldF9jYW5fdXNlX2hhcmR3 YXJlX3dhdGNocG9pbnQodHlwZSwgY250LCBvdCkgMQogKwogKyNlbmRpZiAvKiBOTV9MSU5VWDY0 X0ggKi8KLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90YXJnZXQuaAorSW5kZXg6IGdk Yi03LjkuOTAuMjAxNTA3MDkvZ2RiL3RhcmdldC5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41 MC4yMDE1MDUyMC5vcmlnL2dkYi90YXJnZXQuaAkyMDE1LTA1LTMxIDE2OjU5OjM0LjI2MDAxODgz OSArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3RhcmdldC5oCTIwMTUtMDUtMzEg MTc6MDA6MTEuMDY3MjUxMTQzICswMjAwCi1AQCAtMTgyMCw5ICsxODIwLDExIEBAIGV4dGVybiBj aGFyICp0YXJnZXRfdGhyZWFkX25hbWUgKHN0cnVjdAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDku b3JpZy9nZGIvdGFyZ2V0LmgJMjAxNS0wNy0wOSAxODoyMzozMC41Mjg3NzIwODYgKzAyMDAKKysr KyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi90YXJnZXQuaAkyMDE1LTA3LTA5IDE4OjIzOjMyLjE3 NTc4NjEzNSArMDIwMAorQEAgLTE4NDksOSArMTg0OSwxMSBAQCBleHRlcm4gY2hhciAqdGFyZ2V0 X3RocmVhZF9uYW1lIChzdHJ1Y3QKICAgICBDTlQgaXMgdGhlIG51bWJlciBvZiBzdWNoIHdhdGNo cG9pbnRzIHVzZWQgc28gZmFyLCBpbmNsdWRpbmcgdGhpcwogICAgIG9uZS4gIE9USEVSVFlQRSBp cyB3aG8ga25vd3Mgd2hhdC4uLiAgKi8KICAKQEAgLTEwNSwxMCArMTA1LDEwIEBAIEluZGV4OiBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi90YXJnZXQuaAogIAogIC8qIFJldHVybnMgdGhlIG51bWJl ciBvZiBkZWJ1ZyByZWdpc3RlcnMgbmVlZGVkIHRvIHdhdGNoIHRoZSBnaXZlbgogICAgIG1lbW9y eSByZWdpb24sIG9yIHplcm8gaWYgbm90IHN1cHBvcnRlZC4gICovCi1JbmRleDogZ2RiLTcuOS41 MC4yMDE1MDUyMC9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3dhdGNocG9pbnQtaHctYmVmb3JlLXJ1 bi5leHAKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uv d2F0Y2hwb2ludC1ody1iZWZvcmUtcnVuLmV4cAogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogLS0tIC9kZXYvbnVsbAkx OTcwLTAxLTAxIDAwOjAwOjAwLjAwMDAwMDAwMCArMDAwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS93YXRjaHBvaW50LWh3LWJlZm9yZS1ydW4uZXhwCTIw MTUtMDUtMzEgMTY6NTk6MzQuMjYxMDE4ODQ2ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcw OS9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3dhdGNocG9pbnQtaHctYmVmb3JlLXJ1bi5leHAJMjAx NS0wNy0wOSAxODoyMzozMi4xNzU3ODYxMzUgKzAyMDAKIEBAIC0wLDAgKzEsNDAgQEAKICsjIENv cHlyaWdodCAyMDA5LCAyMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogKwoKZGlm ZiAtLWdpdCBhL2dkYi1jeHgtZW51bS10YWcucGF0Y2ggYi9nZGItY3h4LWVudW0tdGFnLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNDcxZjY2Li4wMDAwMDAwCi0tLSBhL2dk Yi1jeHgtZW51bS10YWcucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyODQgKzAsMCBAQAotTGFz dCB5ZWFyIGEgcGF0Y2ggd2FzIHN1Ym1pdHRlZC9hcHByb3ZlZC9jb21taXRlZCB0byBlbGltaW5h dGUKLXN5bWJvbF9tYXRjaGVzX2RvbWFpbiB3aGljaCB3YXMgY2F1c2luZyB0aGlzIHByb2JsZW0u ICBJdCB3YXMgbGF0ZXIgcmV2ZXJ0ZWQKLWJlY2F1c2UgaXQgaW50cm9kdWNlZCBhIChzZXZlcmUp IHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb24uCi0KLVJlY2FwOgotCi0oZ2RiKSBsaXN0Ci0xCWVudW0g ZSB7QSxCLEN9IGU7Ci0yCWludCBtYWluICh2b2lkKSB7IHJldHVybiAwOyB9Ci0zCi0oZ2RiKSBw IGUKLUF0dGVtcHQgdG8gdXNlIGEgdHlwZSBuYW1lIGFzIGFuIGV4cHJlc3Npb24KLQotVGhlIHBh cnNlciBhdHRlbXB0cyB0byBmaW5kIGEgc3ltYm9sIG5hbWVkICJlIiBvZiBWQVJfRE9NQUlOLgot VGhpcyBnZXRzIHBhc3NlZCBkb3duIHRocm91Z2ggbG9va3VwX3N5bWJvbCBhbmQgKGV2ZW50dWFs bHkpIGludG8KLWJsb2NrX2xvb2t1cF9zeW1ib2xfcHJpbWFyeSwgd2hpY2ggaXRlcmF0ZXMgb3Zl ciB0aGUgYmxvY2sncyBkaWN0aW9uYXJ5Ci1vZiBzeW1ib2xzOgotCi0gIGZvciAoc3ltID0gZGlj dF9pdGVyX25hbWVfZmlyc3QgKGJsb2NrLT5kaWN0LCBuYW1lLCAmZGljdF9pdGVyKTsKLSAgICAg ICBzeW0gIT0gTlVMTDsKLSAgICAgICBzeW0gPSBkaWN0X2l0ZXJfbmFtZV9uZXh0IChuYW1lLCAm ZGljdF9pdGVyKSkKLSAgICB7Ci0gICAgICBpZiAoc3ltYm9sX21hdGNoZXNfZG9tYWluIChTWU1C T0xfTEFOR1VBR0UgKHN5bSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWU1C T0xfRE9NQUlOIChzeW0pLCBkb21haW4pKQotICAgICAgICByZXR1cm4gc3ltOwotICAgIH0KLQot VGhlIHByb2JsZW0gaGVyZSBpcyB0aGF0IHdlIGhhdmUgYSBzeW1ib2wgbmFtZWQgImUiIGluIGJv dGggU1RSVUNUX0RPTUFJTgotYW5kIFZBUl9ET01BSU4sIGFuZCBmb3IgbGFuZ3VhZ2VzIGxpa2Ug QysrLCBKYXZhLCBhbmQgQWRhLCB3aGVyZSBhIHRhZyBuYW1lCi1tYXkgYmUgdXNlZCBhcyBhbiBp bXBsaWNpdCB0eXBlZGVmIG9mIHRoZSB0eXBlLCBzeW1ib2xfbWF0Y2hlc19kb21haW4gaWdub3Jl cwotdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBWQVJfRE9NQUlOIGFuZCBTVFJVQ1RfRE9NQUlOLiAg QXMgaXQgaGFwcGVucywgdGhlCi1TVFJVQ1RfRE9NQUlOIHN5bWJvbCBpcyBmb3VuZCBmaXJzdCwg Y29uc2lkZXJlZCBhIG1hdGNoLCBhbmQgdGhhdCBzeW1ib2wgaXMKLXJldHVybmVkIHRvIHRoZSBw YXJzZXIsIGVsaWNpdGluZyB0aGUgKG5vdyBkcmVhZGVkKSBlcnJvciBtZXNzYWdlLgotCi1TaW5j ZSB0aGlzIGJ1ZyBleGlzdHMgc3BlY2lmaWNhbGx5IGJlY2F1c2Ugd2UgaGF2ZSBib3RoIFNUUlVD VCBhbmQgVkFSX0RPTUFJTgotc3ltYm9scyBpbiBhIGdpdmVuIGJsb2NrL0NVLCB0aGlzIHBhdGNo IHJhdGhlciBzaW1wbHkvbmFpdmVseSBjaGFuZ2VzCi1ibG9ja19sb29rdXBfc3ltYm9sX3ByaW1h cnkgc28gdGhhdCBpdCBjb250aW51ZXMgdG8gc2VhcmNoIGZvciBhbiBleGFjdAotZG9tYWluIG1h dGNoIG9uIHRoZSBzeW1ib2wgaWYgc3ltYm9sX21hdGNoZXNfZG9tYWluIHJldHVybnMgYSBzeW1i b2wKLXdoaWNoIGRvZXMgbm90IGV4YWN0bHkgbWF0Y2ggdGhlIHJlcXVlc3RlZCBkb21haW4uCi0K LVRoaXMgImZpeGVzIiB0aGUgaW1tZWRpYXRlIHByb2JsZW0sIGJ1dCBhZG1pdHRlZGx5IG1pZ2h0 IHVuY292ZXIgb3RoZXIsCi1yZWxhdGVkIGJ1Z3MuICBbUGFyYW5vaWE/XSBIb3dldmVyLCBpdCBj YXVzZXMgbm8gcmVncmVzc2lvbnMgKGZ1bmN0aW9uYWwKLW9yIHBlcmZvcm1hbmNlKSBpbiB0aGUg dGVzdCBzdWl0ZS4KLQotSSBoYXZlIGFsc28gcmVzdXJyZWN0ZWQgdGhlIHRlc3RzIGZyb20gdGhl IHByZXZpb3VzIHN1Ym1pc3Npb24uICBIb3dldmVyCi1zaW5jZSB3ZSBjYW4gc3RpbGwgYmUgZ2l2 ZW4gYSBtYXRjaGluZyBzeW1ib2wgd2l0aCBhIGRpZmZlcmVudCBkb21haW4gdGhhbgotcmVxdWVz dGVkLCB3ZSBjYW5ub3Qgc2F5IHRoYXQgYSBzeW1ib2wgIndhcyBub3QgZm91bmQuIiAgVGhlIGVy cm9yIG1lc3NhZ2VzCi10b2RheSB3aWxsIHN0aWxsIGJlIHRoZSAoZHJlYWRlZCkgIkF0dGVtcHQg dG8gdXNlIGEgdHlwZSBuYW1lLi4uIiAgSSd2ZQotdXBkYXRlZCB0aGUgdGVzdHMgdG8gcmVmbGVj dCB0aGlzLgotCi1DaGFuZ2VMb2cKLQotCVBSIDE2MjUzCi0JKiBibG9jay5jIChibG9ja19sb29r dXBfc3ltYm9sX3ByaW1hcnkpOiBJZiBhIHN5bWJvbCBpcyBmb3VuZAotCXdoaWNoIGRvZXMgbm90 IGV4YWN0bHkgbWF0Y2ggdGhlIHJlcXVlc3RlZCBkb21haW4sIGtlZXAgc2VhcmNoaW5nCi0JZm9y IGFuIGV4YWN0IG1hdGNoLiAgT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHByZXZpb3VzbHkgZm91bmQg ImJlc3QiCi0Jc3ltYm9sLgotCi10ZXN0c3VpdGUvQ2hhbmdlTG9nCi0KLQlQUiAxNjI1MwotCSog Z2RiLmNwL3Zhci10YWcuY2M6IE5ldyBmaWxlLgotCSogZ2RiLmNwL3Zhci10YWcuZXhwOiBOZXcg ZmlsZS4KLS0tLQotIGdkYi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgIHwgIDggKysrKwot IGdkYi9ibG9jay5jICAgICAgICAgICAgICAgICAgICAgIHwgMTYgKysrKystLQotIGdkYi90ZXN0 c3VpdGUvQ2hhbmdlTG9nICAgICAgICAgIHwgIDYgKysrCi0gZ2RiL3Rlc3RzdWl0ZS9nZGIuY3Av dmFyLXRhZy5jYyAgfCA0NCArKysrKysrKysrKysrKysrKysrCi0gZ2RiL3Rlc3RzdWl0ZS9nZGIu Y3AvdmFyLXRhZy5leHAgfCA5NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCi0gNSBmaWxlcyBjaGFuZ2VkLCAxNjUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK LSBjcmVhdGUgbW9kZSAxMDA2NDQgZ2RiL3Rlc3RzdWl0ZS9nZGIuY3AvdmFyLXRhZy5jYwotIGNy ZWF0ZSBtb2RlIDEwMDY0NCBnZGIvdGVzdHN1aXRlL2dkYi5jcC92YXItdGFnLmV4cAotCi0jIyMg YS9nZGIvQ2hhbmdlTG9nCi0jIyMgYi9nZGIvQ2hhbmdlTG9nCi0jIyAtMSwzICsxLDExIEBACi0r MjAxNS0wNi0xMSAgS2VpdGggU2VpdHogIDxrZWl0aHNAcmVkaGF0LmNvbT4KLSsKLSsJUFIgMTYy NTMKLSsJKiBibG9jay5jIChibG9ja19sb29rdXBfc3ltYm9sX3ByaW1hcnkpOiBJZiBhIHN5bWJv bCBpcyBmb3VuZAotKwl3aGljaCBkb2VzIG5vdCBleGFjdGx5IG1hdGNoIHRoZSByZXF1ZXN0ZWQg ZG9tYWluLCBrZWVwIHNlYXJjaGluZwotKwlmb3IgYW4gZXhhY3QgbWF0Y2guICBPdGhlcndpc2Us IHJldHVybiB0aGUgcHJldmlvdXNseSBmb3VuZCAiYmVzdCIKLSsJc3ltYm9sLgotKwotIDIwMTUt MDYtMTEgIEdhcnkgQmVuc29uIDxnYmVuc29uQHJlZGhhdC5jb20+Ci0gCi0gCSogbmF0L2xpbnV4 LW5hbWVzcGFjZXMuYyAobW5zaF9zZW5kX21lc3NhZ2UpOiBVc2UgcHVsb25nZXN0LgotLS0tIGEv Z2RiL2Jsb2NrLmMKLSsrKyBiL2dkYi9ibG9jay5jCi1AQCAtNzc5LDIzICs3NzksMzMgQEAgc3Ry dWN0IHN5bWJvbCAqCi0gYmxvY2tfbG9va3VwX3N5bWJvbF9wcmltYXJ5IChjb25zdCBzdHJ1Y3Qg YmxvY2sgKmJsb2NrLCBjb25zdCBjaGFyICpuYW1lLAotIAkJCSAgICAgY29uc3QgZG9tYWluX2Vu dW0gZG9tYWluKQotIHsKLS0gIHN0cnVjdCBzeW1ib2wgKnN5bTsKLSsgIHN0cnVjdCBzeW1ib2wg KnN5bSwgKm90aGVyOwotICAgc3RydWN0IGRpY3RfaXRlcmF0b3IgZGljdF9pdGVyOwotIAotICAg LyogVmVyaWZ5IEJMT0NLIGlzIFNUQVRJQ19CTE9DSyBvciBHTE9CQUxfQkxPQ0suICAqLwotICAg Z2RiX2Fzc2VydCAoQkxPQ0tfU1VQRVJCTE9DSyAoYmxvY2spID09IE5VTEwKLSAJICAgICAgfHwg QkxPQ0tfU1VQRVJCTE9DSyAoQkxPQ0tfU1VQRVJCTE9DSyAoYmxvY2spKSA9PSBOVUxMKTsKLSAK LSsgIG90aGVyID0gTlVMTDsKLSAgIGZvciAoc3ltID0gZGljdF9pdGVyX25hbWVfZmlyc3QgKGJs b2NrLT5kaWN0LCBuYW1lLCAmZGljdF9pdGVyKTsKLSAgICAgICAgc3ltICE9IE5VTEw7Ci0gICAg ICAgIHN5bSA9IGRpY3RfaXRlcl9uYW1lX25leHQgKG5hbWUsICZkaWN0X2l0ZXIpKQotICAgICB7 Ci0rICAgICAgaWYgKFNZTUJPTF9ET01BSU4gKHN5bSkgPT0gZG9tYWluKQotKwlyZXR1cm4gc3lt OwotKwotKyAgICAgIC8qIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrLCBidXQgc3ltYm9sX21hdGNo ZXNfZG9tYWluIG1pZ2h0IGlnbm9yZQotKwkgU1RSVUNUIHZzIFZBUiBkb21haW4gc3ltYm9scy4g IFNvIGlmIGEgbWF0Y2hpbmcgc3ltYm9sIGlzIGZvdW5kLCBtYWtlCi0rCSBzdXJlIHRoZXJlIGlz IG5vICJiZXR0ZXIiIG1hdGNoaW5nIHN5bWJvbCwgaS5lLiwgb25lIHdpdGgKLSsJIGV4YWN0bHkg dGhlIHNhbWUgZG9tYWluLiAgKi8KLSAgICAgICBpZiAoc3ltYm9sX21hdGNoZXNfZG9tYWluIChT WU1CT0xfTEFOR1VBR0UgKHN5bSksCi0gCQkJCSBTWU1CT0xfRE9NQUlOIChzeW0pLCBkb21haW4p KQotLQlyZXR1cm4gc3ltOwotKwl7Ci0rCSAgb3RoZXIgPSBzeW07Ci0rCX0KLSAgICAgfQotIAot LSAgcmV0dXJuIE5VTEw7Ci0rICByZXR1cm4gb3RoZXI7Ci0gfQotIAotIC8qIFNlZSBibG9jay5o LiAgKi8KLSMjIyBhL2dkYi90ZXN0c3VpdGUvQ2hhbmdlTG9nCi0jIyMgYi9nZGIvdGVzdHN1aXRl L0NoYW5nZUxvZwotIyMgLTEsMyArMSw5IEBACi0rMjAxNS0wNi0xMSAgS2VpdGggU2VpdHogIDxr ZWl0aHNAcmVkaGF0LmNvbT4KLSsKLSsJUFIgMTYyNTMKLSsJKiBnZGIuY3AvdmFyLXRhZy5jYzog TmV3IGZpbGUuCi0rCSogZ2RiLmNwL3Zhci10YWcuZXhwOiBOZXcgZmlsZS4KLSsKLSAyMDE1LTA2 LTEwICBXYWxmcmVkIFRlZGVzY2hpICA8d2FsZnJlZC50ZWRlc2NoaUBpbnRlbC5jb20+Ci0gICAg ICAgICAgICAgTWlyY2VhIEdoZXJ6YW4gIDxtaXJjZWEuZ2hlcnphbkBpbnRlbC5jb20+Ci0gCi0t LS0gL2Rldi9udWxsCi0rKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5jcC92YXItdGFnLmNjCi1AQCAt MCwwICsxLDQ0IEBACi0rLyogVGhpcyB0ZXN0Y2FzZSBpcyBwYXJ0IG9mIEdEQiwgdGhlIEdOVSBk ZWJ1Z2dlci4KLSsKLSsgICBDb3B5cmlnaHQgMjAxNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4KLSsKLSsgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci0rICAgdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IK LSsgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotKwotKyAgIFRoaXMgcHJv Z3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAot KyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdh cnJhbnR5IG9mCi0rICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFLiAgU2VlIHRoZQotKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt b3JlIGRldGFpbHMuCi0rCi0rICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSsgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh bS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCi0rCi0r aW50IGdsb2JhbCA9IDM7Ci0rCi0rY2xhc3MgQyB7Ci0rcHVibGljOgotKyAgc3RydWN0IEMxIHt9 IEMxOwotKyAgZW51bSBFMSB7YTEsIGIxLCBjMX0gRTE7Ci0rICB1bmlvbiBVMSB7aW50IGExOyBj aGFyIGIxO30gVTE7Ci0rCi0rICBDICgpIDogRTEgKGIxKSB7fQotKyAgdm9pZCBnbG9iYWwgKHZv aWQpIGNvbnN0IHt9Ci0rICBpbnQgZiAodm9pZCkgY29uc3QgeyBnbG9iYWwgKCk7IHJldHVybiAw OyB9Ci0rfSBDOwotKwotK3N0cnVjdCBTIHt9IFM7Ci0rZW51bSBFIHthLCBiLCBjfSBFOwotK3Vu aW9uIFUge2ludCBhOyBjaGFyIGI7fSBVOwotKwotK2NsYXNzIENDIHt9IGNjOwotK3N0cnVjdCBT UyB7fSBzczsKLStlbnVtIEVFIHtlYSwgZWIsIGVjfSBlZTsKLSt1bmlvbiBVVSB7aW50IGFhOyBj aGFyIGJiO30gdXU7Ci0rCi0raW50Ci0rbWFpbiAodm9pZCkKLSt7Ci0rICByZXR1cm4gQy5mICgp OwotK30KLS0tLSAvZGV2L251bGwKLSsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmNwL3Zhci10YWcu ZXhwCi1AQCAtMCwwICsxLDk0IEBACi0rIyBDb3B5cmlnaHQgMjAxNCwgMjAxNSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIEluYy4KLSsKLSsjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0rIyBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot KyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLSsjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0rIwot KyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCi0rIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgotKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQotKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KLSsjCi0rIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQotKyMgYWxvbmcgd2l0aCB0aGlz IHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi0r Ci0rIyBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgZ2RiIHRlc3RzdWl0ZQotKwotKyMgVGVzdCBl eHByZXNzaW9ucyBpbiB3aGljaCB2YXJpYWJsZSBuYW1lcyBzaGFkb3cgdGFnIG5hbWVzLgotKwot K2lmIHtbc2tpcF9jcGx1c190ZXN0c119IHsgY29udGludWUgfQotKwotK3N0YW5kYXJkX3Rlc3Rm aWxlIC5jYwotKwotK2lmIHtbcHJlcGFyZV9mb3JfdGVzdGluZyAkdGVzdGZpbGUuZXhwICR0ZXN0 ZmlsZSAkc3JjZmlsZSB7ZGVidWcgYysrfV19IHsKLSsgICAgcmV0dXJuIC0xCi0rfQotKwotK3By b2MgZG9fZ2xvYmFsX3Rlc3RzIHtsYW5nfSB7Ci0rICAgIHNldCBpbnZhbGlkX3ByaW50ICJBdHRl bXB0IHRvIHVzZSBhIHR5cGUgbmFtZSBhcyBhbiBleHByZXNzaW9uIgotKyAgICBzZXQgcHR5cGVm bXQgInR5cGUgPSAoY2xhc3N8ZW51bXx1bmlvbnxzdHJ1Y3QpICVzIHsuKn0iCi0rCi0rICAgIHdp dGhfdGVzdF9wcmVmaXggJGxhbmcgewotKwlnZGJfdGVzdF9ub19vdXRwdXQgInNldCBsYW5ndWFn ZSAkbGFuZyIKLSsJZ2RiX3Rlc3QgInB0eXBlIEMiICJ0eXBlID0gY2xhc3MgQyB7Lip9IgotKwln ZGJfdGVzdCAicHJpbnQgRSIgIj0gYSIKLSsJZ2RiX3Rlc3QgInB0eXBlIEUiICJ0eXBlID0gZW51 bSBFIHsuKn0iCi0rCWdkYl90ZXN0ICJwcmludCBTIiAiPSB7PE5vIGRhdGEgZmllbGRzPn0iCi0r CWdkYl90ZXN0ICJwdHlwZSBTIiAidHlwZSA9IHN0cnVjdCBTIHsuKn0iCi0rCWdkYl90ZXN0ICJw cmludCBVIiAiPSB7Lip9IgotKwlnZGJfdGVzdCAicHR5cGUgVSIgInR5cGUgPSB1bmlvbiBVIHsu Kn0iCi0rCWdkYl90ZXN0ICJwcmludCBjYyIgIj0gey4qfSIKLSsJZ2RiX3Rlc3QgInB0eXBlIGNj IiAidHlwZSA9IGNsYXNzIENDIHsuKn0iCi0rCWdkYl90ZXN0ICJwcmludCBDQyIgW2Zvcm1hdCAk aW52YWxpZF9wcmludCAiQ0MiXQotKwlnZGJfdGVzdCAicHR5cGUgQ0MiIFtmb3JtYXQgJHB0eXBl Zm10ICJDQyJdCi0rCWdkYl90ZXN0ICJwcmludCBzcyIgIj0gezxObyBkYXRhIGZpZWxkcz59Igot KwlnZGJfdGVzdCAicHR5cGUgc3MiICJ0eXBlID0gc3RydWN0IFNTIHsuKn0iCi0rCWdkYl90ZXN0 ICJwcmludCBTUyIgW2Zvcm1hdCAkaW52YWxpZF9wcmludCAiU1MiXQotKwlnZGJfdGVzdCAicHR5 cGUgU1MiIFtmb3JtYXQgJHB0eXBlZm10ICJTUyJdCi0rCWdkYl90ZXN0ICJwcmludCBlZSIgIj0g LioiCi0rCWdkYl90ZXN0ICJwdHlwZSBlZSIgInR5cGUgPSBlbnVtIEVFIHsuKn0iCi0rCWdkYl90 ZXN0ICJwcmludCBFRSIgW2Zvcm1hdCAkaW52YWxpZF9wcmludCAiRUUiXQotKwlnZGJfdGVzdCAi cHR5cGUgRUUiIFtmb3JtYXQgJHB0eXBlZm10ICJFRSJdCi0rCWdkYl90ZXN0ICJwcmludCB1dSIg Ij0gey4qfSIKLSsJZ2RiX3Rlc3QgInB0eXBlIHV1IiAidHlwZSA9IHVuaW9uIFVVIHsuKn0iCi0r CWdkYl90ZXN0ICJwcmludCBVVSIgW2Zvcm1hdCAkaW52YWxpZF9wcmludCAgIlVVIl0KLSsJZ2Ri X3Rlc3QgInB0eXBlIFVVIiBbZm9ybWF0ICRwdHlwZWZtdCAiVVUiXQotKyAgICB9Ci0rfQotKwot KyMgRmlyc3QgdGVzdCBleHByZXNzaW9ucyB3aGVuIHRoZXJlIGlzIG5vIGNvbnRleHQuCi0rd2l0 aF90ZXN0X3ByZWZpeCAiYmVmb3JlIHN0YXJ0IiB7Ci0rICAgIGRvX2dsb2JhbF90ZXN0cyBjKysK LSsgICAgZG9fZ2xvYmFsX3Rlc3RzIGMKLSt9Ci0rCi0rIyBSdW4gdG8gbWFpbiBhbmQgdGVzdCBh Z2Fpbi4KLStpZiB7IVtydW50b19tYWluXX0gewotKyAgICBwZXJyb3IgImNvdWxkbid0IHJ1biB0 byBtYWluIgotKyAgICBjb250aW51ZQotK30KLSsKLSt3aXRoX3Rlc3RfcHJlZml4ICJpbiBtYWlu IiB7Ci0rICAgIGRvX2dsb2JhbF90ZXN0cyBjKysKLSsgICAgZG9fZ2xvYmFsX3Rlc3RzIGMKLSt9 Ci0rCi0rIyBGaW5hbGx5IHJ1biB0byBDOjpmIGFuZCB0ZXN0IGFnYWluCi0rZ2RiX2JyZWFrcG9p bnQgIkM6OmYiCi0rZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQgImNvbnRpbnVlIHRvIEM6OmYi Ci0rd2l0aF90ZXN0X3ByZWZpeCAiaW4gQzo6ZiIgewotKyAgICBkb19nbG9iYWxfdGVzdHMgYysr Ci0rICAgIGRvX2dsb2JhbF90ZXN0cyBjCi0rfQotKwotKyMgQW5vdGhlciBoYXJkLXRvLWd1ZXNz LXRoZS11c2Vycy1pbnRlbnQgYnVnLi4uCi0rIyBJdCB3b3VsZCBiZSByZWFsbHkgbmljZSBpZiB3 ZSBjb3VsZCBxdWVyeSB0aGUgdXNlciEKLSt3aXRoX3Rlc3RfcHJlZml4ICJnbG9iYWwgY29sbGlz aW9uIiB7Ci0rICAgIGdkYl90ZXN0X25vX291dHB1dCAic2V0IGxhbmd1YWdlIGMrKyIKLSsgICAg c2V0dXBfa2ZhaWwgImMrKy8xNjQ2MyIgIiotKi0qIgotKyAgICBnZGJfdGVzdCAicHJpbnQgZ2xv YmFsIiAiPSAzIgotKwotKyAgICAjIC4uLiB3aXRoIGEgc2ltcGxlIHdvcmthcm91bmQ6Ci0rICAg IGdkYl90ZXN0ICJwcmludCA6Omdsb2JhbCIgIj0gMyIKLSt9Ci0tLSAKLTIuMS4wCgpkaWZmIC0t Z2l0IGEvZ2RiLXJoYno3OTU0MjQtYml0cG9zLTIwb2YyNS5wYXRjaCBiL2dkYi1yaGJ6Nzk1NDI0 LWJpdHBvcy0yMG9mMjUucGF0Y2gKaW5kZXggMjFlYWVkOC4uZGJjODU3OSAxMDA2NDQKLS0tIGEv Z2RiLXJoYno3OTU0MjQtYml0cG9zLTIwb2YyNS5wYXRjaAorKysgYi9nZGItcmhiejc5NTQyNC1i aXRwb3MtMjBvZjI1LnBhdGNoCkBAIC00NjMsMTAgKzQ2MywxMCBAQCBDb250ZW50LVR5cGU6IHRl eHQveC1wYXRjaAogQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogN2JpdAogQ29udGVudC1EaXNw b3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Yml0cG9zLW1haW4ucGF0Y2gKIAotSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2FkYS1sYW5nLmMKK0luZGV4OiBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9hZGEtbGFuZy5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUy MC5vcmlnL2dkYi9hZGEtbGFuZy5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODA3NTA2MTU3ICswMjAw Ci0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYWRhLWxhbmcuYwkyMDE1LTA1LTMxIDE3OjEx OjIyLjEyMjQ4NjQwMyArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvYWRh LWxhbmcuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk2ODM1NTg4MSArMDIwMAorKysrIGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL2FkYS1sYW5nLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMTkzODM2MTIg KzAyMDAKIEBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBzdHJ1Y3QgdHlwZSAqZGVzY19ib3VuZHNf dHlwZSAoc3QKICAKICBzdGF0aWMgc3RydWN0IHZhbHVlICpkZXNjX2JvdW5kcyAoc3RydWN0IHZh bHVlICopOwpAQCAtODY0LDEwICs4NjQsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2FkYS1sYW5nLmMKICAgICAgICBpbnQgZWx0X2JpdHNpemUgPSBUWVBFX0ZJRUxEX0JJVFNJ WkUgKHR5cGUwLCAwKTsKICAKICAgICAgICBUWVBFX0ZJRUxEX0JJVFNJWkUgKHJlc3VsdCwgMCkg PSBUWVBFX0ZJRUxEX0JJVFNJWkUgKHR5cGUwLCAwKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9hZGEtbGFuZy5oCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYWRhLWxh bmcuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvYWRhLWxh bmcuaAkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgwOTUwNjE3MCArMDIwMAotKysrIGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL2FkYS1sYW5nLmgJMjAxNS0wNS0zMSAxNzowOToyMS40Mjg3MjQ2NjMgKzAy MDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2FkYS1sYW5nLmgJMjAxNS0wNy0w OSAxODoyNDozOC45NjkzNTU4ODkgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9h ZGEtbGFuZy5oCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjE5MzgzNjEyICswMjAwCiBAQCAtMTc5LDcg KzE3OSw3IEBAIGV4dGVybiB2b2lkIGFkYV9wcmludF90eXBlIChzdHJ1Y3QgdHlwZQogIGV4dGVy biB2b2lkIGFkYV9wcmludF90eXBlZGVmIChzdHJ1Y3QgdHlwZSAqdHlwZSwgc3RydWN0IHN5bWJv bCAqbmV3X3N5bWJvbCwKICAJCQkgICAgICAgc3RydWN0IHVpX2ZpbGUgKnN0cmVhbSk7CkBAIC04 OTUsMTAgKzg5NSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYWRhLWxhbmcu aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IHR5cGUgKik7CiAgCiAgZXh0ZXJuIHN0cnVjdCB0eXBlICphZGFfY29lcmNlX3RvX3Np bXBsZV9hcnJheV90eXBlIChzdHJ1Y3QgdHlwZSAqKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9hZGEtdHlwZXByaW50LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9h ZGEtdHlwZXByaW50LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcv Z2RiL2FkYS10eXBlcHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgwOTUwNjE3MCArMDIwMAot KysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2FkYS10eXBlcHJpbnQuYwkyMDE1LTA1LTMxIDE3 OjA5OjIxLjQyOTcyNDY3MCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIv YWRhLXR5cGVwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzguOTY5MzU1ODg5ICswMjAwCisrKysg Z2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYWRhLXR5cGVwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6 NDIuMjIwMzgzNjIxICswMjAwCiBAQCAtODg2LDggKzg4Niw4IEBAIGFkYV9wcmludF90eXBlIChz dHJ1Y3QgdHlwZSAqdHlwZTAsIGNvbnMKICAJICAgIGNvbnN0IGNoYXIgKm5hbWUgPSBhZGFfdHlw ZV9uYW1lICh0eXBlKTsKICAKQEAgLTkyMCwxMCArOTIwLDEwIEBAIEluZGV4OiBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9hZGEtdHlwZXByaW50LmMKICAJYnJlYWs7CiAgICAgICAgY2FzZSBUWVBF X0NPREVfRU5VTToKICAJaWYgKHNob3cgPCAwKQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2FkYS12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYWRhLXZh bHByaW50LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2Fk YS12YWxwcmludC5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODEwNTA2MTc2ICswMjAwCi0rKysgZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvYWRhLXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzowOToyMS40 MzA3MjQ2NzYgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2FkYS12YWxw cmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzguOTcwMzU1ODk4ICswMjAwCisrKysgZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvYWRhLXZhbHByaW50LmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMjAzODM2 MjEgKzAyMDAKIEBAIC0zMywxMSArMzMsMTEgQEAKICAjaW5jbHVkZSAib2JqZmlsZXMuaCIKICAK QEAgLTEwNjgsMTAgKzEwNjgsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2Fk YS12YWxwcmludC5jCiAgCSAgICAgICBzdHJ1Y3QgdWlfZmlsZSAqc3RyZWFtLCBpbnQgcmVjdXJz ZSwKICAJICAgICAgIGNvbnN0IHN0cnVjdCB2YWx1ZSAqdmFsLAogIAkgICAgICAgY29uc3Qgc3Ry dWN0IHZhbHVlX3ByaW50X29wdGlvbnMgKm9wdGlvbnMpCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvYW5ub3RhdGUuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2Fubm90 YXRlLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2Fubm90 YXRlLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44MTE1MDYxODIgKzAyMDAKLSsrKyBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9hbm5vdGF0ZS5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDMwNzI0Njc2ICsw MjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9hbm5vdGF0ZS5jCTIwMTUtMDct MDkgMTg6MjQ6MzguOTcxMzU1OTA2ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIv YW5ub3RhdGUuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjIyMTM4MzYyOSArMDIwMAogQEAgLTU0Miwy MSArNTQyLDIxIEBAIGFubm90YXRlX2ZyYW1lX2VuZCAodm9pZCkKICB9CiAgDApAQCAtMTA5OCwx MCArMTA5OCwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYW5ub3RhdGUuYwog IH0KICAKICB2b2lkCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYW5ub3RhdGUuaAor SW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2Fubm90YXRlLmgKID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t LSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2Fubm90YXRlLmgJMjAxNS0wNS0zMSAxNzow ODo0Ni44MTE1MDYxODIgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9hbm5vdGF0 ZS5oCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDMwNzI0Njc2ICswMjAwCistLS0gZ2RiLTcuOS45MC4y MDE1MDcwOS5vcmlnL2dkYi9hbm5vdGF0ZS5oCTIwMTUtMDctMDkgMTg6MjQ6MzguOTcxMzU1OTA2 ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYW5ub3RhdGUuaAkyMDE1LTA3LTA5 IDE4OjI0OjQyLjIyMTM4MzYyOSArMDIwMAogQEAgLTkyLDggKzkyLDggQEAgZXh0ZXJuIHZvaWQg YW5ub3RhdGVfZnJhbWVfc291cmNlX2VuZCAodgogIGV4dGVybiB2b2lkIGFubm90YXRlX2ZyYW1l X3doZXJlICh2b2lkKTsKICBleHRlcm4gdm9pZCBhbm5vdGF0ZV9mcmFtZV9lbmQgKHZvaWQpOwpA QCAtMTExMywxMSArMTExMywxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYW5u b3RhdGUuaAogIGV4dGVybiB2b2lkIGFubm90YXRlX2VsdF9yZXBfZW5kICh2b2lkKTsKICBleHRl cm4gdm9pZCBhbm5vdGF0ZV9lbHQgKHZvaWQpOwogIGV4dGVybiB2b2lkIGFubm90YXRlX2FycmF5 X3NlY3Rpb25fZW5kICh2b2lkKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9hcm0t bGludXgtbmF0LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9hcm0tbGludXgtbmF0 LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2FybS1saW51 eC1uYXQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgxMjUwNjE4OCArMDIwMAotKysrIGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2FybS1saW51eC1uYXQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQzMTcy NDY4MiArMDIwMAotQEAgLTExOTQsNyArMTE5NCw3IEBAIGFybV9saW51eF9yZW1vdmVfaHdfYnJl YWtwb2ludCAoc3RydWN0IHQKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2FybS1s aW51eC1uYXQuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk3MTM1NTkwNiArMDIwMAorKysrIGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2FybS1saW51eC1uYXQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjIy MTM4MzYyOSArMDIwMAorQEAgLTEzNjIsNyArMTM2Miw3IEBAIGFybV9saW51eF9yZW1vdmVfaHdf YnJlYWtwb2ludCAoc3RydWN0IHQKICAgICBBRERSPyAgKi8KICBzdGF0aWMgaW50CiAgYXJtX2xp bnV4X3JlZ2lvbl9va19mb3JfaHdfd2F0Y2hwb2ludCAoc3RydWN0IHRhcmdldF9vcHMgKnNlbGYs CkBAIC0xMTI2LDEwICsxMTI2LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9h cm0tbGludXgtbmF0LmMKICB7CiAgICBjb25zdCBzdHJ1Y3QgYXJtX2xpbnV4X2h3YnBfY2FwICpj YXAgPSBhcm1fbGludXhfZ2V0X2h3YnBfY2FwICgpOwogICAgQ09SRV9BRERSIG1heF93cF9sZW5n dGgsIGFsaWduZWRfYWRkcjsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9heC1nZGIu YworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2F4LWdkYi5jCiA9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9heC1nZGIuYwkyMDE1LTA1LTMxIDE3OjA4 OjQ2LjgxMzUwNjE5NSArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2F4LWdkYi5j CTIwMTUtMDUtMzEgMTc6MDk6MjEuNDMyNzI0Njg5ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1 MDcwOS5vcmlnL2dkYi9heC1nZGIuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk3MzM1NTkyMyArMDIw MAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2F4LWdkYi5jCTIwMTUtMDctMDkgMTg6MjQ6 NDIuMjIyMzgzNjM4ICswMjAwCiBAQCAtODIsMTIgKzgyLDEyIEBAIHN0YXRpYyB2b2lkIGdlbl90 cmFjZWRfcG9wIChzdHJ1Y3QgZ2RiYXIKICBzdGF0aWMgdm9pZCBnZW5fc2lnbl9leHRlbmQgKHN0 cnVjdCBhZ2VudF9leHByICosIHN0cnVjdCB0eXBlICopOwogIHN0YXRpYyB2b2lkIGdlbl9leHRl bmQgKHN0cnVjdCBhZ2VudF9leHByICosIHN0cnVjdCB0eXBlICopOwpAQCAtMTIyOSwxMCArMTIy OSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYXgtZ2RiLmMKICB7CiAgICBp bnQgaSwgcnNsdDsKICAgIGludCBuYmFzZXMgPSBUWVBFX05fQkFTRUNMQVNTRVMgKHR5cGUpOwot SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2F4LWdlbmVyYWwuYworSW5kZXg6IGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2F4LWdlbmVyYWwuYwogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03Ljku NTAuMjAxNTA1MjAub3JpZy9nZGIvYXgtZ2VuZXJhbC5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODE0 NTA2MjAxICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYXgtZ2VuZXJhbC5jCTIw MTUtMDUtMzEgMTc6MDk6MjEuNDMyNzI0Njg5ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcw OS5vcmlnL2dkYi9heC1nZW5lcmFsLmMJMjAxNS0wNy0wOSAxODoyNDozOC45NzMzNTU5MjMgKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9heC1nZW5lcmFsLmMJMjAxNS0wNy0wOSAx ODoyNDo0Mi4yMjMzODM2NDYgKzAyMDAKIEBAIC0xOTMsNyArMTkzLDcgQEAgYXhfemVyb19leHQg KHN0cnVjdCBhZ2VudF9leHByICp4LCBpbnQgbgogIAogIC8qIEFwcGVuZCBhIHRyYWNlX3F1aWNr IGluc3RydWN0aW9uIHRvIEVYUFIsIHRvIHJlY29yZCBOIGJ5dGVzLiAgKi8KQEAgLTEyNDIsMTAg KzEyNDIsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2F4LWdlbmVyYWwuYwog IHsKICAgIC8qIE4gbXVzdCBmaXQgaW4gYSBieXRlLiAgKi8KICAgIGlmIChuIDwgMCB8fCBuID4g MjU1KQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2F4LmgKK0luZGV4OiBnZGItNy45 LjkwLjIwMTUwNzA5L2dkYi9heC5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUy MC5vcmlnL2dkYi9heC5oCTIwMTUtMDUtMzEgMTc6MDg6NDYuODE0NTA2MjAxICswMjAwCi0rKysg Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYXguaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQzMjcyNDY4 OSArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvYXguaAkyMDE1LTA3LTA5 IDE4OjI0OjM4Ljk3MzM1NTkyMyArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2F4 LmgJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMjMzODM2NDYgKzAyMDAKIEBAIC0yMDcsNyArMjA3LDcg QEAgZXh0ZXJuIHZvaWQgYXhfZXh0IChzdHJ1Y3QgYWdlbnRfZXhwciAqRQogIGV4dGVybiB2b2lk IGF4X3plcm9fZXh0IChzdHJ1Y3QgYWdlbnRfZXhwciAqRVhQUiwgaW50IE4pOwogIApAQCAtMTI1 NSwxMSArMTI1NSwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYXguaAogIAog IC8qIEFwcGVuZCBhIGdvdG8gb3AgdG8gRVhQUi4gIE9QIGlzIHRoZSBhY3R1YWwgb3AgKG11c3Qg YmUgYW9wX2dvdG8gb3IKICAgICBhb3BfaWZfZ290bykuICBXZSBhc3N1bWUgd2UgZG9uJ3Qga25v dyB0aGUgdGFyZ2V0IG9mZnNldCB5ZXQsCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv YnJlYWtwb2ludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYnJlYWtwb2ludC5j CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9icmVha3BvaW50 LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44MTk1MDYyMzMgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9icmVha3BvaW50LmMJMjAxNS0wNS0zMSAxNzowOToyMS40MzY3MjQ3MTQgKzAy MDAKLUBAIC0yMjAxLDkgKzIyMDEsOSBAQCBzaG91bGRfYmVfaW5zZXJ0ZWQgKHN0cnVjdCBicF9s b2NhdGlvbiAqCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9icmVha3BvaW50LmMJ MjAxNS0wNy0wOSAxODoyNDozOC45NzczNTU5NTggKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUw NzA5L2dkYi9icmVha3BvaW50LmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMjczODM2ODAgKzAyMDAK K0BAIC0yMjAyLDkgKzIyMDIsOSBAQCBzaG91bGRfYmVfaW5zZXJ0ZWQgKHN0cnVjdCBicF9sb2Nh dGlvbiAqCiAgCXsKICAJICBmcHJpbnRmX3VuZmlsdGVyZWQgKGdkYl9zdGRsb2csCiAgCQkJICAg ICAgImluZnJ1bjogc3RlcHBpbmcgcGFzdCBub24tc3RlcHBhYmxlIHdhdGNocG9pbnQuICIKQEAg LTEyNzEsNyArMTI3MSw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9icmVha3Bv aW50LmMKICAJfQogICAgICAgIHJldHVybiAwOwogICAgICB9Ci1AQCAtNzAwMyw3ICs3MDAzLDcg QEAgYnJlYWtwb2ludF9hZGRyZXNzX21hdGNoIChzdHJ1Y3QgYWRkcmVzcworQEAgLTY5OTUsNyAr Njk5NSw3IEBAIGJyZWFrcG9pbnRfYWRkcmVzc19tYXRjaCAoc3RydWN0IGFkZHJlc3MKICAKICBz dGF0aWMgaW50CiAgYnJlYWtwb2ludF9hZGRyZXNzX21hdGNoX3JhbmdlIChzdHJ1Y3QgYWRkcmVz c19zcGFjZSAqYXNwYWNlMSwgQ09SRV9BRERSIGFkZHIxLApAQCAtMTI4MCw3ICsxMjgwLDcgQEAg SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2JyZWFrcG9pbnQuYwogIAkJCQlDT1JFX0FE RFIgYWRkcjIpCiAgewogICAgcmV0dXJuICgoZ2RiYXJjaF9oYXNfZ2xvYmFsX2JyZWFrcG9pbnRz ICh0YXJnZXRfZ2RiYXJjaCAoKSkKLUBAIC0xMTMyNSw3ICsxMTMyNSw3IEBAIGNhbl91c2VfaGFy ZHdhcmVfd2F0Y2hwb2ludCAoc3RydWN0IHZhbHUKK0BAIC0xMTMwMiw3ICsxMTMwMiw3IEBAIGNh bl91c2VfaGFyZHdhcmVfd2F0Y2hwb2ludCAoc3RydWN0IHZhbHUKICAJCSAgICAgICYmIFRZUEVf Q09ERSAodnR5cGUpICE9IFRZUEVfQ09ERV9BUlJBWSkpCiAgCQl7CiAgCQkgIENPUkVfQUREUiB2 YWRkciA9IHZhbHVlX2FkZHJlc3MgKHYpOwpAQCAtMTI4OSwxMCArMTI4OSwxMCBAQCBJbmRleDog Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnJlYWtwb2ludC5jCiAgCQkgIGludCBudW1fcmVnczsK ICAKICAJCSAgbGVuID0gKHRhcmdldF9leGFjdF93YXRjaHBvaW50cwotSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2JyZWFrcG9pbnQuaAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkv Z2RiL2JyZWFrcG9pbnQuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3Jp Zy9nZGIvYnJlYWtwb2ludC5oCTIwMTUtMDUtMzEgMTc6MDg6NDYuODIxNTA2MjQ1ICswMjAwCi0r KysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYnJlYWtwb2ludC5oCTIwMTUtMDUtMzEgMTc6MDk6 MjEuNDM3NzI0NzIwICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9icmVh a3BvaW50LmgJMjAxNS0wNy0wOSAxODoyNDozOC45NzgzNTU5NjYgKzAyMDAKKysrKyBnZGItNy45 LjkwLjIwMTUwNzA5L2dkYi9icmVha3BvaW50LmgJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMjczODM2 ODAgKzAyMDAKIEBAIC0yMzYsNyArMjM2LDcgQEAgc3RydWN0IGJwX3RhcmdldF9pbmZvCiAgCiAg ICAvKiBJZiB0aGlzIGlzIGEgcmFuZ2VkIGJyZWFrcG9pbnQsIHRoZW4gdGhpcyBmaWVsZCBjb250 YWlucyB0aGUKQEAgLTEzMTEsMTAgKzEzMTEsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL2JyZWFrcG9pbnQuaAogIAogICAgLyogVHlwZSBvZiBoYXJkd2FyZSB3YXRjaHBvaW50 LiAgKi8KICAgIGVudW0gdGFyZ2V0X2h3X2JwX3R5cGUgd2F0Y2hwb2ludF90eXBlOwotSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2MtbGFuZy5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvYy1sYW5nLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9y aWcvZ2RiL2MtbGFuZy5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODIxNTA2MjQ1ICswMjAwCi0rKysg Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvYy1sYW5nLmMJMjAxNS0wNS0zMSAxNzowOToyMS40Mzc3 MjQ3MjAgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2MtbGFuZy5jCTIw MTUtMDctMDkgMTg6MjQ6MzguOTc5MzU1OTc1ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcw OS9nZGIvYy1sYW5nLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMjgzODM2ODkgKzAyMDAKIEBAIC0x ODcsNyArMTg3LDcgQEAgY19wcmludGNoYXIgKGludCBjLCBzdHJ1Y3QgdHlwZSAqdHlwZSwgcwog IAogIHZvaWQKQEAgLTEzNDIsMTAgKzEzNDIsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL2MtbGFuZy5jCiAgCiAgCQlpZiAoZ2V0X2Rpc2NyZXRlX2JvdW5kcyAoVFlQRV9JTkRF WF9UWVBFIChleHBlY3RfdHlwZSksCiAgCQkJCQkgJmxvd19ib3VuZCwgJmhpZ2hfYm91bmQpIDwg MCkKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jLWxhbmcuaAorSW5kZXg6IGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2MtbGFuZy5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4y MDE1MDUyMC5vcmlnL2dkYi9jLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgyMTUwNjI0NSAr MDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2MtbGFuZy5oCTIwMTUtMDUtMzEgMTc6 MDk6MjEuNDM4NzI0NzI2ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9j LWxhbmcuaAkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk3OTM1NTk3NSArMDIwMAorKysrIGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL2MtbGFuZy5oCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjI4MzgzNjg5ICsw MjAwCiBAQCAtNzQsNyArNzQsNyBAQCBleHRlcm4gdm9pZCBjX3ByaW50X3R5cGVkZWYgKHN0cnVj dCB0eXBlCiAgCQkJICAgICBzdHJ1Y3QgdWlfZmlsZSAqKTsKICAKQEAgLTEzODEsMTAgKzEzODEs MTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2MtbGFuZy5oCiAgCQkJCQlzdHJ1 Y3QgdWlfZmlsZSAqLCBpbnQsCiAgCQkJCQljb25zdCBzdHJ1Y3QgdmFsdWUgKiwKICAJCQkJCWNv bnN0IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICosCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvYy12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYy12 YWxwcmludC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9j LXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44MjI1MDYyNTIgKzAyMDAKLSsrKyBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9jLXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzowOToyMS40Mzg3 MjQ3MjYgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2MtdmFscHJpbnQu YwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk3OTM1NTk3NSArMDIwMAorKysrIGdkYi03LjkuOTAuMjAx NTA3MDkvZ2RiL2MtdmFscHJpbnQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjIyODM4MzY4OSArMDIw MAogQEAgLTEzMiw3ICsxMzIsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGdlbmVyaWNfdmFsX3By aW50X2RlCiAgCiAgdm9pZApAQCAtMTQyNiwxMCArMTQyNiwxMCBAQCBJbmRleDogZ2RiLTcuOS41 MC4yMDE1MDUyMC9nZGIvYy12YWxwcmludC5jCiAgICBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9u cyBvcHRzID0gKm9wdGlvbnM7CiAgCiAgICBvcHRzLmRlcmVmX3JlZiA9IDE7Ci1JbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvY3AtYWJpLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5 L2dkYi9jcC1hYmkuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9n ZGIvY3AtYWJpLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44MjI1MDYyNTIgKzAyMDAKLSsrKyBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9jcC1hYmkuYwkyMDE1LTA1LTMxIDE3OjEyOjUzLjc2NjA2NDc5 OCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvY3AtYWJpLmMJMjAxNS0w Ny0wOSAxODoyNDozOC45ODAzNTU5ODMgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dk Yi9jcC1hYmkuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjIyODM4MzY4OSArMDIwMAogQEAgLTY0LDEy ICs2NCwxMiBAQCBpc19vcGVyYXRvcl9uYW1lIChjb25zdCBjaGFyICpuYW1lKQogICAgcmV0dXJu ICgqY3VycmVudF9jcF9hYmkuaXNfb3BlcmF0b3JfbmFtZSkgKG5hbWUpOwogIH0KQEAgLTE0NjQs MTAgKzE0NjQsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2NwLWFiaS5jCiAg ewogICAgc3RydWN0IHR5cGUgKnJldCA9IE5VTEw7CiAgCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvY3AtYWJpLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9jcC1hYmku aAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvY3AtYWJpLmgJ MjAxNS0wNS0zMSAxNzowODo0Ni44MjM1MDYyNTggKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9jcC1hYmkuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQzOTcyNDczMyArMDIwMAorLS0t IGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvY3AtYWJpLmgJMjAxNS0wNy0wOSAxODoyNDoz OC45ODAzNTU5ODMgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9jcC1hYmkuaAky MDE1LTA3LTA5IDE4OjI0OjQyLjIyOTM4MzY5OCArMDIwMAogQEAgLTEwOCw3ICsxMDgsNyBAQCBl eHRlcm4gc3RydWN0IHZhbHVlICp2YWx1ZV92aXJ0dWFsX2ZuX2ZpCiAgCQkJCQkgICAgIHN0cnVj dCBmbl9maWVsZCAqZiwKICAJCQkJCSAgICAgaW50IGosCkBAIC0xNTIyLDEwICsxNTIyLDEwIEBA IEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9jcC1hYmkuaAogICAgdm9pZCAoKnByaW50 X21ldGhvZF9wdHIpIChjb25zdCBnZGJfYnl0ZSAqY29udGVudHMsCiAgCQkJICAgIHN0cnVjdCB0 eXBlICp0eXBlLAogIAkJCSAgICBzdHJ1Y3QgdWlfZmlsZSAqc3RyZWFtKTsKLUluZGV4OiBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9jcC12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvY3AtdmFscHJpbnQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1 MjAub3JpZy9nZGIvY3AtdmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgyMzUwNjI1OCAr MDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2NwLXZhbHByaW50LmMJMjAxNS0wNS0z MSAxNzoxNDo0MS43OTY3NDY2MTcgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcv Z2RiL2NwLXZhbHByaW50LmMJMjAxNS0wNy0wOSAxODoyNDozOC45ODAzNTU5ODMgKzAyMDAKKysr KyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9jcC12YWxwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6 NDIuMjI5MzgzNjk4ICswMjAwCiBAQCAtODAsNyArODAsNyBAQCBzdGF0aWMgdm9pZCBjcF9wcmlu dF9zdGF0aWNfZmllbGQgKHN0cnVjCiAgCQkJCSAgIGNvbnN0IHN0cnVjdCB2YWx1ZV9wcmludF9v cHRpb25zICopOwogIApAQCAtMTU5OSwxMCArMTU5OSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvY3AtdmFscHJpbnQuYwogICAgICAgIGludCBza2lwID0gMDsKICAgICAgICBz dHJ1Y3QgdHlwZSAqYmFzZWNsYXNzID0gY2hlY2tfdHlwZWRlZiAoVFlQRV9CQVNFQ0xBU1MgKHR5 cGUsIGkpKTsKICAgICAgICBjb25zdCBjaGFyICpiYXNlbmFtZSA9IFRZUEVfTkFNRSAoYmFzZWNs YXNzKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9kLWxhbmcuaAorSW5kZXg6IGdk Yi03LjkuOTAuMjAxNTA3MDkvZ2RiL2QtbGFuZy5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41 MC4yMDE1MDUyMC5vcmlnL2dkYi9kLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgyNDUwNjI2 NCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2QtbGFuZy5oCTIwMTUtMDUtMzEg MTc6MDk6MjEuNDM5NzI0NzMzICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dk Yi9kLWxhbmcuaAkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk4MTM1NTk5MiArMDIwMAorKysrIGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2QtbGFuZy5oCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjI5MzgzNjk4 ICswMjAwCiBAQCAtNzEsNyArNzEsNyBAQCBleHRlcm4gY29uc3Qgc3RydWN0IGJ1aWx0aW5fZF90 eXBlICpidWlsCiAgLyogRGVmaW5lZCBpbiBkLXZhbHByaW50LmMgICovCiAgCkBAIC0xNjEyLDEw ICsxNjEyLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9kLWxhbmcuaAogIAkJ CSBzdHJ1Y3QgdWlfZmlsZSAqc3RyZWFtLCBpbnQgcmVjdXJzZSwKICAJCQkgY29uc3Qgc3RydWN0 IHZhbHVlICp2YWwsCiAgCQkJIGNvbnN0IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICpvcHRp b25zKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9kLXZhbHByaW50LmMKK0luZGV4 OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9kLXZhbHByaW50LmMKID09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBn ZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2QtdmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4 OjQ2LjgyNDUwNjI2NCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2QtdmFscHJp bnQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ0MDcyNDczOSArMDIwMAorLS0tIGdkYi03LjkuOTAu MjAxNTA3MDkub3JpZy9nZGIvZC12YWxwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzguOTgxMzU1 OTkyICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZC12YWxwcmludC5jCTIwMTUt MDctMDkgMTg6MjQ6NDIuMjI5MzgzNjk4ICswMjAwCiBAQCAtMjksNyArMjksNyBAQAogIAogIHN0 YXRpYyBpbnQKQEAgLTE2MzgsMTAgKzE2MzgsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL2QtdmFscHJpbnQuYwogICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdmFsdWVfcHJp bnRfb3B0aW9ucyAqb3B0aW9ucykKICB7CiAgICBpbnQgcmV0OwotSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL2RvdWJsZXN0LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9k b3VibGVzdC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9k b3VibGVzdC5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODI0NTA2MjY0ICswMjAwCi0rKysgZ2RiLTcu OS41MC4yMDE1MDUyMC9nZGIvZG91Ymxlc3QuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ0MDcyNDcz OSArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZG91Ymxlc3QuYwkyMDE1 LTA3LTA5IDE4OjI0OjM4Ljk4MTM1NTk5MiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkv Z2RiL2RvdWJsZXN0LmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMzAzODM3MDYgKzAyMDAKIEBAIC03 NjUsNyArNzY1LDcgQEAgZmxvYXRmb3JtYXRfZnJvbV9kb3VibGVzdCAoY29uc3Qgc3RydWN0CiAg ICAgYnV0IG5vdCBwYXNzZWQgb24gYnkgR0RCLiAgVGhpcyBzaG91bGQgYmUgZml4ZWQuICAqLwog IApAQCAtMTY2MiwxMSArMTY2MiwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv ZG91Ymxlc3QuYwogICAgcmV0dXJuIGZvcm1hdDsKICB9CiAgCi1JbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvZHdhcmYybG9jLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9k d2FyZjJsb2MuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIv ZHdhcmYybG9jLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44MjY1MDYyNzcgKzAyMDAKLSsrKyBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9kd2FyZjJsb2MuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ0MTcy NDc0NSArMDIwMAotQEAgLTE1NTgsMTkgKzE1NTgsMTkgQEAgaW5zZXJ0X2JpdHMgKHVuc2lnbmVk IGludCBkYXR1bSwKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2R3YXJmMmxvYy5j CTIwMTUtMDctMDkgMTg6MjQ6MzguOTgzMzU2MDA5ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvZHdhcmYybG9jLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMzEzODM3MTUgKzAyMDAK K0BAIC0xNTU3LDE5ICsxNTU3LDE5IEBAIGluc2VydF9iaXRzICh1bnNpZ25lZCBpbnQgZGF0dW0s CiAgICAgQklUU19CSUdfRU5ESUFOIGlzIHRha2VuIGRpcmVjdGx5IGZyb20gZ2RiYXJjaC4gICov CiAgCiAgc3RhdGljIHZvaWQKQEAgLTE2OTIsNyArMTY5Miw3IEBAIEluZGV4OiBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9kd2FyZjJsb2MuYwogIAogICAgZGVzdF9hdmFpbCA9IDggLSBkZXN0X29m ZnNldF9iaXRzICUgODsKICAKLUBAIC0xNjA4LDEzICsxNjA4LDEzIEBAIHN0YXRpYyB2b2lkCitA QCAtMTYwNywxMyArMTYwNywxMyBAQCBzdGF0aWMgdm9pZAogIHJlYWRfcGllY2VkX3ZhbHVlIChz dHJ1Y3QgdmFsdWUgKnYpCiAgewogICAgaW50IGk7CkBAIC0xNzA4LDcgKzE3MDgsNyBAQCBJbmRl eDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZHdhcmYybG9jLmMKICAgIHNpemVfdCBidWZmZXJf c2l6ZSA9IDA7CiAgICBnZGJfYnl0ZSAqYnVmZmVyID0gTlVMTDsKICAgIHN0cnVjdCBjbGVhbnVw ICpjbGVhbnVwOwotQEAgLTE2NDEsOCArMTY0MSw4IEBAIHJlYWRfcGllY2VkX3ZhbHVlIChzdHJ1 Y3QgdmFsdWUgKnYpCitAQCAtMTY0MCw4ICsxNjQwLDggQEAgcmVhZF9waWVjZWRfdmFsdWUgKHN0 cnVjdCB2YWx1ZSAqdikKICAgIGZvciAoaSA9IDA7IGkgPCBjLT5uX3BpZWNlcyAmJiBvZmZzZXQg PCB0eXBlX2xlbjsgaSsrKQogICAgICB7CiAgICAgICAgc3RydWN0IGR3YXJmX2V4cHJfcGllY2Ug KnAgPSAmYy0+cGllY2VzW2ldOwpAQCAtMTcxOSw3ICsxNzE5LDcgQEAgSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2R3YXJmMmxvYy5jCiAgICAgICAgY29uc3QgZ2RiX2J5dGUgKmludGVy bWVkaWF0ZV9idWZmZXI7CiAgCiAgICAgICAgLyogQ29tcHV0ZSBzaXplLCBzb3VyY2UsIGFuZCBk ZXN0aW5hdGlvbiBvZmZzZXRzIGZvciBjb3B5aW5nLCBpbgotQEAgLTE3OTEsMTMgKzE3OTEsMTMg QEAgc3RhdGljIHZvaWQKK0BAIC0xNzkwLDEzICsxNzkwLDEzIEBAIHN0YXRpYyB2b2lkCiAgd3Jp dGVfcGllY2VkX3ZhbHVlIChzdHJ1Y3QgdmFsdWUgKnRvLCBzdHJ1Y3QgdmFsdWUgKmZyb20pCiAg ewogICAgaW50IGk7CkBAIC0xNzM1LDcgKzE3MzUsNyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvZHdhcmYybG9jLmMKICAgIHNpemVfdCBidWZmZXJfc2l6ZSA9IDA7CiAgICBnZGJf Ynl0ZSAqYnVmZmVyID0gTlVMTDsKICAgIHN0cnVjdCBjbGVhbnVwICpjbGVhbnVwOwotQEAgLTE4 MjUsOCArMTgyNSw4IEBAIHdyaXRlX3BpZWNlZF92YWx1ZSAoc3RydWN0IHZhbHVlICp0bywgc3QK K0BAIC0xODI0LDggKzE4MjQsOCBAQCB3cml0ZV9waWVjZWRfdmFsdWUgKHN0cnVjdCB2YWx1ZSAq dG8sIHN0CiAgICBmb3IgKGkgPSAwOyBpIDwgYy0+bl9waWVjZXMgJiYgb2Zmc2V0IDwgdHlwZV9s ZW47IGkrKykKICAgICAgewogICAgICAgIHN0cnVjdCBkd2FyZl9leHByX3BpZWNlICpwID0gJmMt PnBpZWNlc1tpXTsKQEAgLTE3NDYsNyArMTc0Niw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9kd2FyZjJsb2MuYwogICAgICAgIGludCBuZWVkX2JpdHdpc2U7CiAgICAgICAgY29u c3QgZ2RiX2J5dGUgKnNvdXJjZV9idWZmZXI7CiAgCi1AQCAtMTk1NCw4ICsxOTU0LDggQEAgd3Jp dGVfcGllY2VkX3ZhbHVlIChzdHJ1Y3QgdmFsdWUgKnRvLCBzdAorQEAgLTE5NTMsOCArMTk1Myw4 IEBAIHdyaXRlX3BpZWNlZF92YWx1ZSAoc3RydWN0IHZhbHVlICp0bywgc3QKICAgICBhIHN5bnRo ZXRpYyBwb2ludGVyLiAgKi8KICAKICBzdGF0aWMgaW50CkBAIC0xNzU3LDcgKzE3NTcsNyBAQCBJ bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZHdhcmYybG9jLmMKICB7CiAgICBzdHJ1Y3Qg cGllY2VfY2xvc3VyZSAqYwogICAgICA9IChzdHJ1Y3QgcGllY2VfY2xvc3VyZSAqKSB2YWx1ZV9j b21wdXRlZF9jbG9zdXJlICh2YWx1ZSk7Ci1AQCAtMTk2OCw3ICsxOTY4LDcgQEAgY2hlY2tfcGll Y2VkX3N5bnRoZXRpY19wb2ludGVyIChjb25zdCBzdAorQEAgLTE5NjcsNyArMTk2Nyw3IEBAIGNo ZWNrX3BpZWNlZF9zeW50aGV0aWNfcG9pbnRlciAoY29uc3Qgc3QKICAgIGZvciAoaSA9IDA7IGkg PCBjLT5uX3BpZWNlcyAmJiBiaXRfbGVuZ3RoID4gMDsgaSsrKQogICAgICB7CiAgICAgICAgc3Ry dWN0IGR3YXJmX2V4cHJfcGllY2UgKnAgPSAmYy0+cGllY2VzW2ldOwpAQCAtMTc2Niw3ICsxNzY2 LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2R3YXJmMmxvYy5jCiAgCiAgICAg ICAgaWYgKGJpdF9vZmZzZXQgPiAwKQogIAl7Ci1AQCAtMjAxMCw5ICsyMDEwLDEwIEBAIGluZGly ZWN0X3BpZWNlZF92YWx1ZSAoc3RydWN0IHZhbHVlICp2YWwKK0BAIC0yMDA5LDkgKzIwMDksMTAg QEAgaW5kaXJlY3RfcGllY2VkX3ZhbHVlIChzdHJ1Y3QgdmFsdWUgKnZhbAogICAgc3RydWN0IHR5 cGUgKnR5cGU7CiAgICBzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWU7CiAgICBzdHJ1Y3QgZHdhcmYy X2xvY2V4cHJfYmF0b24gYmF0b247CkBAIC0xNzc5LDcgKzE3NzksNyBAQCBJbmRleDogZ2RiLTcu OS41MC4yMDE1MDUyMC9nZGIvZHdhcmYybG9jLmMKICAgIGVudW0gYmZkX2VuZGlhbiBieXRlX29y ZGVyOwogIAogICAgdHlwZSA9IGNoZWNrX3R5cGVkZWYgKHZhbHVlX3R5cGUgKHZhbHVlKSk7Ci1A QCAtMjAyNyw3ICsyMDI4LDcgQEAgaW5kaXJlY3RfcGllY2VkX3ZhbHVlIChzdHJ1Y3QgdmFsdWUg KnZhbAorQEAgLTIwMjYsNyArMjAyNyw3IEBAIGluZGlyZWN0X3BpZWNlZF92YWx1ZSAoc3RydWN0 IHZhbHVlICp2YWwKICAgIGZvciAoaSA9IDA7IGkgPCBjLT5uX3BpZWNlcyAmJiBiaXRfbGVuZ3Ro ID4gMDsgaSsrKQogICAgICB7CiAgICAgICAgc3RydWN0IGR3YXJmX2V4cHJfcGllY2UgKnAgPSAm Yy0+cGllY2VzW2ldOwpAQCAtMTc4OCw3ICsxNzg4LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL2R3YXJmMmxvYy5jCiAgCiAgICAgICAgaWYgKGJpdF9vZmZzZXQgPiAwKQogIAl7 Ci1AQCAtMjMxMCw3ICsyMzExLDcgQEAgZHdhcmYyX2V2YWx1YXRlX2xvY19kZXNjX2Z1bGwgKHN0 cnVjdCB0eQorQEAgLTIzMDksNyArMjMxMCw3IEBAIGR3YXJmMl9ldmFsdWF0ZV9sb2NfZGVzY19m dWxsIChzdHJ1Y3QgdHkKICAJICAgIHN0cnVjdCB2YWx1ZSAqdmFsdWUgPSBkd2FyZl9leHByX2Zl dGNoIChjdHgsIDApOwogIAkgICAgZ2RiX2J5dGUgKmNvbnRlbnRzOwogIAkgICAgY29uc3QgZ2Ri X2J5dGUgKnZhbF9ieXRlczsKQEAgLTE3OTcsMTEgKzE3OTcsMTEgQEAgSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2R3YXJmMmxvYy5jCiAgCiAgCSAgICBpZiAoYnl0ZV9vZmZzZXQgKyBU WVBFX0xFTkdUSCAodHlwZSkgPiBuKQogIAkgICAgICBpbnZhbGlkX3N5bnRoZXRpY19wb2ludGVy ICgpOwotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2R3YXJmMnJlYWQuYworSW5kZXg6 IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2R3YXJmMnJlYWQuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvZHdhcmYycmVhZC5jCTIwMTUtMDUtMzEgMTc6MDg6 NDYuODMyNTA2MzE1ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZHdhcmYycmVh ZC5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDQ2NzI0Nzc3ICswMjAwCi1AQCAtMTkwNywxMiArMTkw NywxMiBAQCBkd2FyZjJfY29tcGxleF9sb2NhdGlvbl9leHByX2NvbXBsYWludCAoCistLS0gZ2Ri LTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9kd2FyZjJyZWFkLmMJMjAxNS0wNy0wOSAxODoyNDoz OC45ODkzNTYwNjAgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9kd2FyZjJyZWFk LmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yMzYzODM3NTcgKzAyMDAKK0BAIC0xOTEwLDEyICsxOTEw LDEyIEBAIGR3YXJmMl9jb21wbGV4X2xvY2F0aW9uX2V4cHJfY29tcGxhaW50ICgKICB9CiAgCiAg c3RhdGljIHZvaWQKQEAgLTE4MTgsNyArMTgxOCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi9kd2FyZjJyZWFkLmMKICB9CiAgCiAgc3RhdGljIHZvaWQKLUBAIC0xMjUyMSw4ICsx MjUyMSw4IEBAIGR3YXJmMl9hZGRfZmllbGQgKHN0cnVjdCBmaWVsZF9pbmZvICpmaXAKK0BAIC0x MjUyNCw4ICsxMjUyNCw4IEBAIGR3YXJmMl9hZGRfZmllbGQgKHN0cnVjdCBmaWVsZF9pbmZvICpm aXAKICAJICAgICAgICAgb2JqZWN0LCBhbmQgdGhlbiBzdWJ0cmFjdCBvZmYgdGhlIG51bWJlciBv ZiBiaXRzIG9mCiAgCSAgICAgICAgIHRoZSBmaWVsZCBpdHNlbGYuICBUaGUgcmVzdWx0IGlzIHRo ZSBiaXQgb2Zmc2V0IG9mCiAgCSAgICAgICAgIHRoZSBMU0Igb2YgdGhlIGZpZWxkLiAgKi8KQEAg LTE4MjksMTAgKzE4MjksMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2R3YXJm MnJlYWQuYwogIAogIAkgICAgICBhdHRyID0gZHdhcmYyX2F0dHIgKGRpZSwgRFdfQVRfYnl0ZV9z aXplLCBjdSk7CiAgCSAgICAgIGlmIChhdHRyKQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2V2YWwuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2V2YWwuYwogPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvZXZhbC5jCTIwMTUtMDUtMzEg MTc6MDg6NDYuODM0NTA2MzI3ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZXZh bC5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDQ3NzI0NzgzICswMjAwCistLS0gZ2RiLTcuOS45MC4y MDE1MDcwOS5vcmlnL2dkYi9ldmFsLmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTAzNTYwNjggKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9ldmFsLmMJMjAxNS0wNy0wOSAxODoyNDo0 Mi4yMzczODM3NjYgKzAyMDAKIEBAIC0zMTcsNyArMzE3LDggQEAgZXZhbHVhdGVfc3RydWN0X3R1 cGxlIChzdHJ1Y3QgdmFsdWUgKnN0cgogICAgd2hpbGUgKC0tbmFyZ3MgPj0gMCkKICAgICAgewpA QCAtMTg5NSwxMCArMTg5NSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZXZh bC5jCiAgCXN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zIG9wdHM7CiAgCiAgCWdldF91c2VyX3By aW50X29wdGlvbnMgKCZvcHRzKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9mLWxh bmcuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2YtbGFuZy5jCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9mLWxhbmcuYwkyMDE1LTA1LTMxIDE3 OjA4OjQ2LjgzNTUwNjMzNCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2YtbGFu Zy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDQ4NzI0NzkwICswMjAwCistLS0gZ2RiLTcuOS45MC4y MDE1MDcwOS5vcmlnL2dkYi9mLWxhbmcuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk5MTM1NjA3NyAr MDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2YtbGFuZy5jCTIwMTUtMDctMDkgMTg6 MjQ6NDIuMjM3MzgzNzY2ICswMjAwCiBAQCAtMTAzLDcgKzEwMyw3IEBAIGZfcHJpbnRjaGFyIChp bnQgYywgc3RydWN0IHR5cGUgKnR5cGUsIHMKICAKICBzdGF0aWMgdm9pZApAQCAtMTkwOCwxMCAr MTkwOCwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZi1sYW5nLmMKICAJICAg IGNvbnN0IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICpvcHRpb25zKQogIHsKICAgIGNvbnN0 IGNoYXIgKnR5cGVfZW5jb2RpbmcgPSBmX2dldF9lbmNvZGluZyAodHlwZSk7Ci1JbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvZi1sYW5nLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5 L2dkYi9mLWxhbmcuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9n ZGIvZi1sYW5nLmgJMjAxNS0wNS0zMSAxNzowODo0Ni44MzU1MDYzMzQgKzAyMDAKLSsrKyBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9mLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ0ODcyNDc5 MCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZi1sYW5nLmgJMjAxNS0w Ny0wOSAxODoyNDozOC45OTEzNTYwNzcgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dk Yi9mLWxhbmcuaAkyMDE1LTA3LTA5IDE4OjI0OjQyLjIzODM4Mzc3NCArMDIwMAogQEAgLTMwLDcg KzMwLDcgQEAgZXh0ZXJuIHZvaWQgZl9lcnJvciAoY2hhciAqKTsJLyogRGVmaW5lZAogIGV4dGVy biB2b2lkIGZfcHJpbnRfdHlwZSAoc3RydWN0IHR5cGUgKiwgY29uc3QgY2hhciAqLCBzdHJ1Y3Qg dWlfZmlsZSAqLCBpbnQsCiAgCQkJICBpbnQsIGNvbnN0IHN0cnVjdCB0eXBlX3ByaW50X29wdGlv bnMgKik7CkBAIC0xOTIxLDEwICsxOTIxLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIw L2dkYi9mLWxhbmcuaAogIAkJCSBzdHJ1Y3QgdWlfZmlsZSAqLCBpbnQsCiAgCQkJIGNvbnN0IHN0 cnVjdCB2YWx1ZSAqLAogIAkJCSBjb25zdCBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9ucyAqKTsK LUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9mLXZhbHByaW50LmMKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9mLXZhbHByaW50LmMKID09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45 LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2YtdmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljgz NTUwNjMzNCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2YtdmFscHJpbnQuYwky MDE1LTA1LTMxIDE3OjA5OjIxLjQ0ODcyNDc5MCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3 MDkub3JpZy9nZGIvZi12YWxwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzguOTkxMzU2MDc3ICsw MjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZi12YWxwcmludC5jCTIwMTUtMDctMDkg MTg6MjQ6NDIuMjM4MzgzNzc0ICswMjAwCiBAQCAtMzgsNyArMzgsNyBAQCBleHRlcm4gdm9pZCBf aW5pdGlhbGl6ZV9mX3ZhbHByaW50ICh2b2lkCiAgc3RhdGljIHZvaWQgaW5mb19jb21tb25fY29t bWFuZCAoY2hhciAqLCBpbnQpOwogIHN0YXRpYyB2b2lkIGY3N19nZXRfZHluYW1pY19sZW5ndGhf b2ZfYWdncmVnYXRlIChzdHJ1Y3QgdHlwZSAqKTsKQEAgLTE5ODQsMTAgKzE5ODQsMTAgQEAgSW5k ZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2YtdmFscHJpbnQuYwogIAkgICAgIGNvbnN0IHN0 cnVjdCB2YWx1ZSAqb3JpZ2luYWxfdmFsdWUsCiAgCSAgICAgY29uc3Qgc3RydWN0IHZhbHVlX3By aW50X29wdGlvbnMgKm9wdGlvbnMpCiAgewotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L2ZpbmR2YXIuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2ZpbmR2YXIuYwogPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvZmluZHZhci5jCTIwMTUt MDUtMzEgMTc6MDg6NDYuODM2NTA2MzQwICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvZmluZHZhci5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDQ4NzI0NzkwICswMjAwCistLS0gZ2Ri LTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9maW5kdmFyLmMJMjAxNS0wNy0wOSAxODoyNDozOC45 OTEzNTYwNzcgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9maW5kdmFyLmMJMjAx NS0wNy0wOSAxODoyNDo0Mi4yMzgzODM3NzQgKzAyMDAKIEBAIC02MjYsNyArNjI2LDcgQEAgc3Ry dWN0IHZhbHVlICoKICBkZWZhdWx0X3ZhbHVlX2Zyb21fcmVnaXN0ZXIgKHN0cnVjdCBnZGJhcmNo ICpnZGJhcmNoLCBzdHJ1Y3QgdHlwZSAqdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGludCByZWdudW0sIHN0cnVjdCBmcmFtZV9pZCBmcmFtZV9pZCkKQEAgLTIwMjAsMTAgKzIw MjAsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2ZpbmR2YXIuYwogIAogICAg ICAgIC8qIElmIHRoZSByZWdpc3RlciBsZW5ndGggaXMgbGFyZ2VyIHRoYW4gdGhlIG51bWJlciBv ZiBieXRlcwogICAgICAgICAgIHJlbWFpbmluZyB0byBjb3B5LCB0aGVuIG9ubHkgY29weSB0aGUg YXBwcm9wcmlhdGUgYnl0ZXMuICAqLwotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2Zy YW1lLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9mcmFtZS5jCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9mcmFtZS5jCTIwMTUtMDUtMzEgMTc6 MDg6NDYuODM3NTA2MzQ2ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZnJhbWUu YwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ0OTcyNDc5NiArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAx NTA3MDkub3JpZy9nZGIvZnJhbWUuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk5MjM1NjA4NSArMDIw MAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2ZyYW1lLmMJMjAxNS0wNy0wOSAxODoyNDo0 Mi4yMzkzODM3ODMgKzAyMDAKIEBAIC0xMjcyLDcgKzEyNzIsNyBAQCBkZXByZWNhdGVkX2ZyYW1l X3JlZ2lzdGVyX3JlYWQgKHN0cnVjdCBmCiAgCiAgaW50CkBAIC0yMDQyLDEwICsyMDQyLDEwIEBA IEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9mcmFtZS5jCiAgCiAgICAvKiBDb3B5IHRo ZSBkYXRhLiAgKi8KICAgIHdoaWxlIChsZW4gPiAwKQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL2ZyYW1lLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9mcmFtZS5oCiA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9mcmFtZS5oCTIwMTUt MDUtMzEgMTc6MDg6NDYuODM3NTA2MzQ2ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvZnJhbWUuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1MDcyNDgwMiArMDIwMAorLS0tIGdkYi03 LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZnJhbWUuaAkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk5MjM1 NjA4NSArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2ZyYW1lLmgJMjAxNS0wNy0w OSAxODoyNDo0Mi4yMzkzODM3ODMgKzAyMDAKIEBAIC01ODMsNyArNTgzLDcgQEAgZXh0ZXJuIHZv aWQgcHV0X2ZyYW1lX3JlZ2lzdGVyIChzdHJ1Y3QgZgogICAgIGNvbnRlbnRzIGFyZSBvcHRpbWl6 ZWQgb3V0IG9yIHVuYXZhaWxhYmxlLCBzZXQgKk9QVElNSVpFRFAsCiAgICAgKlVOQVZBSUxBQkxF UCBhY2NvcmRpbmdseS4gICovCkBAIC0yMDU1LDEwICsyMDU1LDEwIEBAIEluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9mcmFtZS5oCiAgCQkJCSAgICAgZ2RiX2J5dGUgKm15YWRkciwKICAJ CQkJICAgICBpbnQgKm9wdGltaXplZHAsIGludCAqdW5hdmFpbGFibGVwKTsKICAKLUluZGV4OiBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi9nZGJ0eXBlcy5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1 MDcwOS9nZGIvZ2RidHlwZXMuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAu b3JpZy9nZGIvZ2RidHlwZXMuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2LjgzOTUwNjM1OSArMDIwMAot KysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dkYnR5cGVzLmMJMjAxNS0wNS0zMSAxNzowOToy MS40NTE3MjQ4MDkgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2dkYnR5 cGVzLmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTUzNTYxMTEgKzAyMDAKKysrKyBnZGItNy45Ljkw LjIwMTUwNzA5L2dkYi9nZGJ0eXBlcy5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjQxMzgzODAwICsw MjAwCiBAQCAtMjY5OCw3ICsyNjk4LDcgQEAgYWxsb2NhdGVfZ25hdF9hdXhfdHlwZSAoc3RydWN0 IHR5cGUgKnR5cAogICAgIGxlYXN0IGFzIGxvbmcgYXMgT0JKRklMRS4gICovCiAgCkBAIC0yMTI2 LDEwICsyMTI2LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9nZGJ0eXBlcy5j CiAgewogICAgc3RydWN0IHR5cGUgKnR5cGU7CiAgCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvZ2RidHlwZXMuaAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2dkYnR5cGVz LmgKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2dkYnR5cGVz LmgJMjAxNS0wNS0zMSAxNzowODo0Ni44NDA1MDYzNjUgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9nZGJ0eXBlcy5oCTIwMTUtMDUtMzEgMTc6MTM6MTYuMjk0MjA2OTc3ICswMjAw CistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9nZGJ0eXBlcy5oCTIwMTUtMDctMDkg MTg6MjQ6MzguOTk1MzU2MTExICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZ2Ri dHlwZXMuaAkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0MTM4MzgwMCArMDIwMAogQEAgLTUwNCw3ICs1 MDQsNyBAQCB1bmlvbiBmaWVsZF9sb2NhdGlvbgogICAgICAgZ2RiYXJjaF9iaXRzX2JpZ19lbmRp YW49MCB0YXJnZXRzLCBpdCBpcyB0aGUgYml0IG9mZnNldCB0bwogICAgICAgdGhlIExTQi4gICov CkBAIC0yMTYzLDEwICsyMTYzLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9n ZGJ0eXBlcy5oCiAgZXh0ZXJuIHN0cnVjdCB0eXBlICphcmNoX2ludGVnZXJfdHlwZSAoc3RydWN0 IGdkYmFyY2ggKiwgaW50LCBpbnQsIGNoYXIgKik7CiAgZXh0ZXJuIHN0cnVjdCB0eXBlICphcmNo X2NoYXJhY3Rlcl90eXBlIChzdHJ1Y3QgZ2RiYXJjaCAqLCBpbnQsIGludCwgY2hhciAqKTsKICBl eHRlcm4gc3RydWN0IHR5cGUgKmFyY2hfYm9vbGVhbl90eXBlIChzdHJ1Y3QgZ2RiYXJjaCAqLCBp bnQsIGludCwgY2hhciAqKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9nbnUtdjIt YWJpLmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9nbnUtdjItYWJpLmMKID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2dudS12Mi1hYmkuYwkyMDE1 LTA1LTMxIDE3OjA4OjQ2Ljg0MDUwNjM2NSArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2dudS12Mi1hYmkuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1MjcyNDgxNSArMDIwMAorLS0t IGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZ251LXYyLWFiaS5jCTIwMTUtMDctMDkgMTg6 MjQ6MzguOTk2MzU2MTIwICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZ251LXYy LWFiaS5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjQxMzgzODAwICswMjAwCiBAQCAtODIsNyArODIs NyBAQCBnbnV2Ml9pc19vcGVyYXRvcl9uYW1lIChjb25zdCBjaGFyICpuYW1lCiAgICAgVFlQRSBp cyB0aGUgdHlwZSBpbiB3aGljaCBGIGlzIGxvY2F0ZWQuICAqLwogIHN0YXRpYyBzdHJ1Y3QgdmFs dWUgKgpAQCAtMjIxOCwxMCArMjIxOCwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvZ251LXYyLWFiaS5jCiAgCSAgICBnbnV2Ml9iYXNlY2xhc3Nfb2Zmc2V0ICh0eXBlLCBpLCB2 YWxhZGRyLAogIAkJCQkgICAgZW1iZWRkZWRfb2Zmc2V0LCBhZGRyZXNzLCB2YWwpOwogIAotSW5k ZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dudS12My1hYmkuYworSW5kZXg6IGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL2dudS12My1hYmkuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAu MjAxNTA1MjAub3JpZy9nZGIvZ251LXYzLWFiaS5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODQxNTA2 MzcxICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ251LXYzLWFiaS5jCTIwMTUt MDUtMzEgMTc6MDk6MjEuNDUzNzI0ODIxICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5v cmlnL2dkYi9nbnUtdjMtYWJpLmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTYzNTYxMjAgKzAyMDAK KysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9nbnUtdjMtYWJpLmMJMjAxNS0wNy0wOSAxODoy NDo0Mi4yNDIzODM4MDggKzAyMDAKIEBAIC0xMDgsNyArMTA4LDcgQEAgYnVpbGRfZ2RiX3Z0YWJs ZV90eXBlIChzdHJ1Y3QgZ2RiYXJjaCAqYQogIHsKICAgIHN0cnVjdCB0eXBlICp0OwpAQCAtMjI5 NiwxMCArMjI5NiwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZ251LXYzLWFi aS5jCiAgICAgICAgc3RydWN0IHR5cGUgKmJhc2V0eXBlOwogIAogICAgICAgIGlmIChCQVNFVFlQ RV9WSUFfVklSVFVBTCAoZG9tYWluLCBpKSkKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi9nby1sYW5nLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9nby1sYW5nLmgKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2dvLWxhbmcuaAkyMDE1 LTA1LTMxIDE3OjA4OjQ2Ljg0MTUwNjM3MSArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2dvLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1MzcyNDgyMSArMDIwMAorLS0tIGdk Yi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvZ28tbGFuZy5oCTIwMTUtMDctMDkgMTg6MjQ6Mzgu OTk3MzU2MTI4ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvZ28tbGFuZy5oCTIw MTUtMDctMDkgMTg6MjQ6NDIuMjQyMzgzODA4ICswMjAwCiBAQCAtODUsNyArODUsNyBAQCBleHRl cm4gdm9pZCBnb19wcmludF90eXBlIChzdHJ1Y3QgdHlwZSAqCiAgLyogRGVmaW5lZCBpbiBnby12 YWxwcmludC5jLiAgKi8KICAKQEAgLTIzMDksMTAgKzIzMDksMTAgQEAgSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2dvLWxhbmcuaAogIAkJCSAgc3RydWN0IHVpX2ZpbGUgKnN0cmVhbSwg aW50IHJlY3Vyc2UsCiAgCQkJICBjb25zdCBzdHJ1Y3QgdmFsdWUgKnZhbCwKICAJCQkgIGNvbnN0 IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICpvcHRpb25zKTsKLUluZGV4OiBnZGItNy45LjUw LjIwMTUwNTIwL2dkYi9nby12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9n ZGIvZ28tdmFscHJpbnQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3Jp Zy9nZGIvZ28tdmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg0MjUwNjM3OCArMDIwMAot KysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2dvLXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzow OToyMS40NTM3MjQ4MjEgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2dv LXZhbHByaW50LmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTczNTYxMjggKzAyMDAKKysrKyBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9nby12YWxwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjQy MzgzODA4ICswMjAwCiBAQCAtMzcsNyArMzcsNyBAQAogIAogIHN0YXRpYyB2b2lkCkBAIC0yMzM1 LDEwICsyMzM1LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9nby12YWxwcmlu dC5jCiAgCSAgICAgIGNvbnN0IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICpvcHRpb25zKQog IHsKICAgIENIRUNLX1RZUEVERUYgKHR5cGUpOwotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2p2LWxhbmcuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2p2LWxhbmcuYwog PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvanYtbGFuZy5jCTIw MTUtMDUtMzEgMTc6MDg6NDYuODQyNTA2Mzc4ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvanYtbGFuZy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDU0NzI0ODI4ICswMjAwCistLS0g Z2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9qdi1sYW5nLmMJMjAxNS0wNy0wOSAxODoyNDoz OC45OTczNTYxMjggKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9qdi1sYW5nLmMJ MjAxNS0wNy0wOSAxODoyNDo0Mi4yNDMzODM4MTcgKzAyMDAKIEBAIC00MzYsNyArNDM2LDcgQEAg amF2YV9saW5rX2NsYXNzX3R5cGUgKHN0cnVjdCBnZGJhcmNoICpnZAogICAgZm9yIChpID0gVFlQ RV9OX0JBU0VDTEFTU0VTICh0eXBlKTsgaSA8IG5maWVsZHM7IGkrKykKICAgICAgewpAQCAtMjM1 NywxMCArMjM1NywxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvanYtbGFuZy5j CiAgCSAgICAgICBjb25zdCBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9ucyAqb3B0aW9ucykKICB7 CiAgICBjb25zdCBjaGFyICp0eXBlX2VuY29kaW5nID0gamF2YV9nZXRfZW5jb2RpbmcgKHR5cGUp OwotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2p2LWxhbmcuaAorSW5kZXg6IGdkYi03 LjkuOTAuMjAxNTA3MDkvZ2RiL2p2LWxhbmcuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAu MjAxNTA1MjAub3JpZy9nZGIvanYtbGFuZy5oCTIwMTUtMDUtMzEgMTc6MDg6NDYuODQyNTA2Mzc4 ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvanYtbGFuZy5oCTIwMTUtMDUtMzEg MTc6MDk6MjEuNDU0NzI0ODI4ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dk Yi9qdi1sYW5nLmgJMjAxNS0wNy0wOSAxODoyNDozOC45OTczNTYxMjggKzAyMDAKKysrKyBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9qdi1sYW5nLmgJMjAxNS0wNy0wOSAxODoyNDo0Mi4yNDMzODM4 MTcgKzAyMDAKIEBAIC00Myw4ICs0Myw4IEBAIHN0cnVjdCBidWlsdGluX2phdmFfdHlwZQogIAog IGV4dGVybiBjb25zdCBzdHJ1Y3QgYnVpbHRpbl9qYXZhX3R5cGUgKmJ1aWx0aW5famF2YV90eXBl IChzdHJ1Y3QgZ2RiYXJjaCAqKTsKQEAgLTIzNzIsMTAgKzIzNzIsMTAgQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL2p2LWxhbmcuaAogIAkJCSAgICBjb25zdCBzdHJ1Y3QgdmFsdWUg KiwKICAJCQkgICAgY29uc3Qgc3RydWN0IHZhbHVlX3ByaW50X29wdGlvbnMgKik7CiAgCi1JbmRl eDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvanYtdmFscHJpbnQuYworSW5kZXg6IGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL2p2LXZhbHByaW50LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUw LjIwMTUwNTIwLm9yaWcvZ2RiL2p2LXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDM1 MDYzODQgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9qdi12YWxwcmludC5jCTIw MTUtMDUtMzEgMTc6MDk6MjEuNDU0NzI0ODI4ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcw OS5vcmlnL2dkYi9qdi12YWxwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzguOTk4MzU2MTM3ICsw MjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvanYtdmFscHJpbnQuYwkyMDE1LTA3LTA5 IDE4OjI0OjQyLjI0MzM4MzgxNyArMDIwMAogQEAgLTI2NSw3ICsyNjUsNyBAQCBqYXZhX3ZhbHVl X3ByaW50IChzdHJ1Y3QgdmFsdWUgKnZhbCwgc3RyCiAgCiAgc3RhdGljIHZvaWQKQEAgLTIzOTQs MTAgKzIzOTQsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2p2LXZhbHByaW50 LmMKICAJCXN0cnVjdCB1aV9maWxlICpzdHJlYW0sIGludCByZWN1cnNlLAogIAkJY29uc3Qgc3Ry dWN0IHZhbHVlICp2YWwsCiAgCQljb25zdCBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9ucyAqb3B0 aW9ucykKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9sYW5ndWFnZS5jCitJbmRleDog Z2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvbGFuZ3VhZ2UuYwogPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03 LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvbGFuZ3VhZ2UuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg0 MzUwNjM4NCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2xhbmd1YWdlLmMJMjAx NS0wNS0zMSAxNzowOToyMS40NTQ3MjQ4MjggKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5 Lm9yaWcvZ2RiL2xhbmd1YWdlLmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTgzNTYxMzcgKzAyMDAK KysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9sYW5ndWFnZS5jCTIwMTUtMDctMDkgMTg6MjQ6 NDIuMjQ0MzgzODI1ICswMjAwCiBAQCAtNzIwLDcgKzcyMCw3IEBAIHVua19sYW5nX3ByaW50Y2hh ciAoaW50IGMsIHN0cnVjdCB0eXBlICoKICAKICBzdGF0aWMgdm9pZApAQCAtMjQxNiwxMCArMjQx NiwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbGFuZ3VhZ2UuYwogIAkJICAg IHN0cnVjdCB1aV9maWxlICpzdHJlYW0sIGludCByZWN1cnNlLAogIAkJICAgIGNvbnN0IHN0cnVj dCB2YWx1ZSAqdmFsLAogIAkJICAgIGNvbnN0IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zICpv cHRpb25zKQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2xhbmd1YWdlLmgKK0luZGV4 OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9sYW5ndWFnZS5oCiA9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2Ri LTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9sYW5ndWFnZS5oCTIwMTUtMDUtMzEgMTc6MDg6NDYu ODQ0NTA2MzkwICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbGFuZ3VhZ2UuaAky MDE1LTA1LTMxIDE3OjA5OjIxLjQ1NTcyNDgzNCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3 MDkub3JpZy9nZGIvbGFuZ3VhZ2UuaAkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk5ODM1NjEzNyArMDIw MAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2xhbmd1YWdlLmgJMjAxNS0wNy0wOSAxODoy NDo0Mi4yNDQzODM4MjUgKzAyMDAKIEBAIC0xODksNyArMTg5LDcgQEAgc3RydWN0IGxhbmd1YWdl X2RlZm4KICAJCQkgIHN0cnVjdCB1aV9maWxlICogc3RyZWFtKTsKICAKQEAgLTI0MzgsMTAgKzI0 MzgsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL2xhbmd1YWdlLmgKICAJCQkg IHN0cnVjdCB1aV9maWxlICpzdHJlYW0sIGludCByZWN1cnNlLAogIAkJCSAgY29uc3Qgc3RydWN0 IHZhbHVlICp2YWwsCiAgCQkJICBjb25zdCBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9ucyAqb3B0 aW9ucyk7Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbTItbGFuZy5jCitJbmRleDog Z2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvbTItbGFuZy5jCiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcu OS41MC4yMDE1MDUyMC5vcmlnL2dkYi9tMi1sYW5nLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDQ1 MDYzOTAgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9tMi1sYW5nLmMJMjAxNS0w NS0zMSAxNzowOToyMS40NTU3MjQ4MzQgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9y aWcvZ2RiL20yLWxhbmcuYwkyMDE1LTA3LTA5IDE4OjI0OjM4Ljk5OTM1NjE0NSArMDIwMAorKysr IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL20yLWxhbmcuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0 NDM4MzgyNSArMDIwMAogQEAgLTEwNCwxMCArMTA0LDEwIEBAIG0yX3ByaW50Y2hhciAoaW50IGMs IHN0cnVjdCB0eXBlICp0eXBlLAogIAogIHN0YXRpYyB2b2lkCkBAIC0yNDc2LDEwICsyNDc2LDEw IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9tMi1sYW5nLmMKICAJICBpID0gcmVw MSAtIDE7CiAgCSAgdGhpbmdzX3ByaW50ZWQgKz0gb3B0aW9ucy0+cmVwZWF0X2NvdW50X3RocmVz aG9sZDsKICAJICBuZWVkX2NvbW1hID0gMTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi9tMi1sYW5nLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9tMi1sYW5nLmgKID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL20yLWxhbmcuaAkyMDE1 LTA1LTMxIDE3OjA4OjQ2Ljg0NDUwNjM5MCArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL20yLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1NTcyNDgzNCArMDIwMAorLS0tIGdk Yi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvbTItbGFuZy5oCTIwMTUtMDctMDkgMTg6MjQ6Mzgu OTk5MzU2MTQ1ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvbTItbGFuZy5oCTIw MTUtMDctMDkgMTg6MjQ6NDIuMjQ0MzgzODI1ICswMjAwCiBAQCAtMzQsNyArMzQsNyBAQCBleHRl cm4gdm9pZCBtMl9wcmludF90eXBlZGVmIChzdHJ1Y3QgdHlwCiAgZXh0ZXJuIGludCBtMl9pc19s b25nX3NldCAoc3RydWN0IHR5cGUgKnR5cGUpOwogIGV4dGVybiBpbnQgbTJfaXNfdW5ib3VuZGVk X2FycmF5IChzdHJ1Y3QgdHlwZSAqdHlwZSk7CkBAIC0yNDg5LDEwICsyNDg5LDEwIEBAIEluZGV4 OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9tMi1sYW5nLmgKICAJCQkgIHN0cnVjdCB1aV9maWxl ICosIGludCwKICAJCQkgIGNvbnN0IHN0cnVjdCB2YWx1ZSAqLAogIAkJCSAgY29uc3Qgc3RydWN0 IHZhbHVlX3ByaW50X29wdGlvbnMgKik7Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv bTItdHlwZXByaW50LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9tMi10eXBlcHJp bnQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvbTItdHlw ZXByaW50LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDQ1MDYzOTAgKzAyMDAKLSsrKyBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9tMi10eXBlcHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1NTcy NDgzNCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvbTItdHlwZXByaW50 LmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTkzNTYxNDUgKzAyMDAKKysrKyBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9tMi10eXBlcHJpbnQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0NTM4MzgzNCAr MDIwMAogQEAgLTIzNCw5ICsyMzQsMTIgQEAgc3RhdGljIHZvaWQgbTJfYXJyYXkgKHN0cnVjdCB0 eXBlICp0eXBlLAogIAkgIG0yX3ByaW50X2JvdW5kcyAoVFlQRV9JTkRFWF9UWVBFICh0eXBlKSwg c3RyZWFtLCBzaG93LCAtMSwgMSk7CiAgCX0KQEAgLTI1MDksMTAgKzI1MDksMTAgQEAgSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL20yLXR5cGVwcmludC5jCiAgICAgIH0KICAgIGZwcmlu dGZfZmlsdGVyZWQgKHN0cmVhbSwgIl0gT0YgIik7CiAgICBtMl9wcmludF90eXBlIChUWVBFX1RB UkdFVF9UWVBFICh0eXBlKSwgIiIsIHN0cmVhbSwgc2hvdywgbGV2ZWwsIGZsYWdzKTsKLUluZGV4 OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9tMi12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvbTItdmFscHJpbnQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAu MjAxNTA1MjAub3JpZy9nZGIvbTItdmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg0NTUw NjM5NyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL20yLXZhbHByaW50LmMJMjAx NS0wNS0zMSAxNzowOToyMS40NTY3MjQ4NDAgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5 Lm9yaWcvZ2RiL20yLXZhbHByaW50LmMJMjAxNS0wNy0wOSAxODoyNDozOC45OTkzNTYxNDUgKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9tMi12YWxwcmludC5jCTIwMTUtMDctMDkg MTg6MjQ6NDIuMjQ1MzgzODM0ICswMjAwCiBAQCAtMzUsNyArMzUsNyBAQCBzdGF0aWMgaW50IHBy aW50X3VucGFja2VkX3BvaW50ZXIgKHN0cnVjCiAgCQkJCSAgIHN0cnVjdCB1aV9maWxlICpzdHJl YW0pOwogIHN0YXRpYyB2b2lkCkBAIC0yNTc4LDEwICsyNTc4LDEwIEBAIEluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9tMi12YWxwcmludC5jCiAgCiAgCQkgIC8qIExvb2sgZm9yIGEgTlVM TCBjaGFyLiAgKi8KICAJCSAgZm9yICh0ZW1wX2xlbiA9IDA7Ci1JbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvbWVtcmFuZ2UuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL21l bXJhbmdlLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL21l bXJhbmdlLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDU1MDYzOTcgKzAyMDAKLSsrKyBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9tZW1yYW5nZS5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDU2NzI0ODQw ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9tZW1yYW5nZS5jCTIwMTUt MDctMDkgMTg6MjQ6MzguOTk5MzU2MTQ1ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9n ZGIvbWVtcmFuZ2UuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0NTM4MzgzNCArMDIwMAogQEAgLTIx LDggKzIxLDggQEAKICAjaW5jbHVkZSAibWVtcmFuZ2UuaCIKICAKQEAgLTI1OTMsMTAgKzI1OTMs MTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL21lbXJhbmdlLmMKICB7CiAgICBV TE9OR0VTVCBoLCBsOwogIAotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL21lbXJhbmdl LmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9tZW1yYW5nZS5oCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9tZW1yYW5nZS5oCTIwMTUtMDUtMzEg MTc6MDg6NDYuODQ1NTA2Mzk3ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbWVt cmFuZ2UuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1NjcyNDg0MCArMDIwMAorLS0tIGdkYi03Ljku OTAuMjAxNTA3MDkub3JpZy9nZGIvbWVtcmFuZ2UuaAkyMDE1LTA3LTA5IDE4OjI0OjM5LjAwMDM1 NjE1NCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL21lbXJhbmdlLmgJMjAxNS0w Ny0wOSAxODoyNDo0Mi4yNDUzODM4MzQgKzAyMDAKIEBAIC0zMCw3ICszMCw3IEBAIHN0cnVjdCBt ZW1fcmFuZ2UKICAgIENPUkVfQUREUiBzdGFydDsKICAKQEAgLTI2MTcsMTAgKzI2MTcsMTAgQEAg SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL21lbXJhbmdlLmgKICAKICAvKiBSZXR1cm5z IHRydWUgaWYgQUREUiBpcyBpbiBSQU5HRS4gICovCiAgCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvbWlwcy1saW51eC1uYXQuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2Ri L21pcHMtbGludXgtbmF0LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9y aWcvZ2RiL21pcHMtbGludXgtbmF0LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDY1MDY0MDMgKzAy MDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9taXBzLWxpbnV4LW5hdC5jCTIwMTUtMDUt MzEgMTc6MDk6MjEuNDU2NzI0ODQwICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmln L2dkYi9taXBzLWxpbnV4LW5hdC5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDAwMzU2MTU0ICswMjAw CisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvbWlwcy1saW51eC1uYXQuYwkyMDE1LTA3LTA5 IDE4OjI0OjQyLjI0NTM4MzgzNCArMDIwMAogQEAgLTU4Niw3ICs1ODYsNyBAQCBtaXBzX2xpbnV4 X3N0b3BwZWRfZGF0YV9hZGRyZXNzIChzdHJ1Y3QKICAKICBzdGF0aWMgaW50CkBAIC0yNjMwLDEw ICsyNjMwLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9taXBzLWxpbnV4LW5h dC5jCiAgewogICAgc3RydWN0IHB0X3dhdGNoX3JlZ3MgZHVtbXlfcmVnczsKICAgIGludCBpOwot SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL29wZW5jbC1sYW5nLmMKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9vcGVuY2wtbGFuZy5jCiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcu OS41MC4yMDE1MDUyMC5vcmlnL2dkYi9vcGVuY2wtbGFuZy5jCTIwMTUtMDUtMzEgMTc6MDg6NDYu ODQ2NTA2NDAzICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvb3BlbmNsLWxhbmcu YwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1NzcyNDg0NiArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAx NTA3MDkub3JpZy9nZGIvb3BlbmNsLWxhbmcuYwkyMDE1LTA3LTA5IDE4OjI0OjM5LjAwMDM1NjE1 NCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL29wZW5jbC1sYW5nLmMJMjAxNS0w Ny0wOSAxODoyNDo0Mi4yNDYzODM4NDMgKzAyMDAKIEBAIC03OCwxMSArNzgsMTEgQEAgYnVpbHRp bl9vcGVuY2xfdHlwZSAoc3RydWN0IGdkYmFyY2ggKmdkYgogIAogIHN0YXRpYyBzdHJ1Y3QgdHlw ZSAqCkBAIC0yNzEwLDEwICsyNzEwLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi9vcGVuY2wtbGFuZy5jCiAgCiAgICAgICAgaWYgKCF2YWx1ZV9iaXRzX3N5bnRoZXRpY19wb2lu dGVyIChjLT52YWwsCiAgCQkJCQkgYy0+aW5kaWNlc1tpXSAqIGVsc2l6ZSArIGNvbXBfb2Zmc2V0 LAotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3AtbGFuZy5jCitJbmRleDogZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvcC1sYW5nLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIw MTUwNTIwLm9yaWcvZ2RiL3AtbGFuZy5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODQ3NTA2NDA5ICsw MjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvcC1sYW5nLmMJMjAxNS0wNS0zMSAxNzow OToyMS40NTc3MjQ4NDYgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3At bGFuZy5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDAxMzU2MTYyICswMjAwCisrKysgZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvcC1sYW5nLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yNDYzODM4NDMgKzAy MDAKIEBAIC05NSw4ICs5NSw4IEBAIHBhc2NhbF9tYWluX25hbWUgKHZvaWQpCiAgICAgYXJlIG5v dCBtdWx0aXBsZSBvZiBUQVJHRVRfQ0hBUl9CSVQgdGhlbiB0aGUgcmVzdWx0cyBhcmUgd3JvbmcK ICAgICBidXQgdGhpcyBkb2VzIG5vdCBoYXBwZW4gZm9yIEZyZWUgUGFzY2FsIG5vciBmb3IgR1BD LiAgKi8KQEAgLTI3NjEsMTAgKzI3NjEsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL3AtbGFuZy5jCiAgCSAgaSA9IHJlcDEgLSAxOwogIAkgIHRoaW5nc19wcmludGVkICs9IG9w dGlvbnMtPnJlcGVhdF9jb3VudF90aHJlc2hvbGQ7CiAgCSAgbmVlZF9jb21tYSA9IDE7Ci1JbmRl eDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvcC1sYW5nLmgKK0luZGV4OiBnZGItNy45LjkwLjIw MTUwNzA5L2dkYi9wLWxhbmcuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAu b3JpZy9nZGIvcC1sYW5nLmgJMjAxNS0wNS0zMSAxNzowODo0Ni44NDc1MDY0MDkgKzAyMDAKLSsr KyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9wLWxhbmcuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ1 NzcyNDg0NiArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvcC1sYW5nLmgJ MjAxNS0wNy0wOSAxODoyNDozOS4wMDEzNTYxNjIgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUw NzA5L2dkYi9wLWxhbmcuaAkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0NjM4Mzg0MyArMDIwMAogQEAg LTM2LDcgKzM2LDcgQEAgZXh0ZXJuIHZvaWQgcGFzY2FsX3ByaW50X3R5cGUgKHN0cnVjdCB0eQog IGV4dGVybiB2b2lkIHBhc2NhbF9wcmludF90eXBlZGVmIChzdHJ1Y3QgdHlwZSAqLCBzdHJ1Y3Qg c3ltYm9sICosCiAgCQkJCSAgc3RydWN0IHVpX2ZpbGUgKik7CkBAIC0yNzk5LDEwICsyNzk5LDEw IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9wLWxhbmcuaAogIAkJCQkJICAgICAg Q09SRV9BRERSLCBzdHJ1Y3QgdWlfZmlsZSAqLAogIAkJCQkJICAgICAgaW50LAogIAkJCQkJICAg ICAgY29uc3Qgc3RydWN0IHZhbHVlICosCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv cC12YWxwcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvcC12YWxwcmludC5j CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9wLXZhbHByaW50 LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NDc1MDY0MDkgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi9wLXZhbHByaW50LmMJMjAxNS0wNS0zMSAxNzoxMDo1Ny41NTAzMzEzMjAgKzAy MDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3AtdmFscHJpbnQuYwkyMDE1LTA3 LTA5IDE4OjI0OjM5LjAwMTM1NjE2MiArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2Ri L3AtdmFscHJpbnQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI0NzM4Mzg1MSArMDIwMAogQEAgLTU3 LDcgKzU3LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBnZW5lcmljX3ZhbF9wcmludF9kZQogIAog IHZvaWQKQEAgLTI4NjQsMTEgKzI4NjQsMTEgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL3AtdmFscHJpbnQuYwogICAgICAgIGludCBza2lwID0gMDsKICAKICAgICAgICBpZiAoQkFT RVRZUEVfVklBX1ZJUlRVQUwgKHR5cGUsIGkpKQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL3BwYy1saW51eC1uYXQuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3BwYy1s aW51eC1uYXQuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIv cHBjLWxpbnV4LW5hdC5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODQ4NTA2NDE2ICswMjAwCi0rKysg Z2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvcHBjLWxpbnV4LW5hdC5jCTIwMTUtMDUtMzEgMTc6MDk6 MjEuNDU4NzI0ODUzICswMjAwCi1AQCAtMTQ1MSw3ICsxNDUxLDcgQEAgcHBjX2xpbnV4X2Nhbl91 c2VfaHdfYnJlYWtwb2ludCAoc3RydWN0CistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dk Yi9wcGMtbGludXgtbmF0LmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMDIzNTYxNzEgKzAyMDAKKysr KyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9wcGMtbGludXgtbmF0LmMJMjAxNS0wNy0wOSAxODoy NDo0Mi4yNDczODM4NTEgKzAyMDAKK0BAIC0xNDQ5LDcgKzE0NDksNyBAQCBwcGNfbGludXhfY2Fu X3VzZV9od19icmVha3BvaW50IChzdHJ1Y3QKICAKICBzdGF0aWMgaW50CiAgcHBjX2xpbnV4X3Jl Z2lvbl9va19mb3JfaHdfd2F0Y2hwb2ludCAoc3RydWN0IHRhcmdldF9vcHMgKnNlbGYsCkBAIC0y ODc3LDEwICsyODc3LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9wcGMtbGlu dXgtbmF0LmMKICB7CiAgICAvKiBIYW5kbGUgc3ViLTgtYnl0ZSBxdWFudGl0aWVzLiAgKi8KICAg IGlmIChsZW4gPD0gMCkKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9wcmludGNtZC5j CitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvcHJpbnRjbWQuYwogPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvcHJpbnRjbWQuYwkyMDE1LTA1LTMxIDE3 OjA4OjQ2Ljg0OTUwNjQyMiArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ByaW50 Y21kLmMJMjAxNS0wNS0zMSAxNzowOToyMS40NTk3MjQ4NTkgKzAyMDAKKy0tLSBnZGItNy45Ljkw LjIwMTUwNzA5Lm9yaWcvZ2RiL3ByaW50Y21kLmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMDMzNTYx NzkgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9wcmludGNtZC5jCTIwMTUtMDct MDkgMTg6MjQ6NDIuMjQ4MzgzODYwICswMjAwCiBAQCAtMjc0LDcgKzI3NCw3IEBAIHByaW50X2Zv cm1hdHRlZCAoc3RydWN0IHZhbHVlICp2YWwsIGludAogIAkJIHN0cnVjdCB1aV9maWxlICpzdHJl YW0pCiAgewpAQCAtMjg5OSwxMCArMjg5OSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvcHJpbnRjbWQuYwogICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNo X2J5dGVfb3JkZXIgKGdkYmFyY2gpOwogIAogICAgLyogU3RyaW5nIHByaW50aW5nIHNob3VsZCBn byB0aHJvdWdoIHZhbF9wcmludF9zY2FsYXJfZm9ybWF0dGVkLiAgKi8KLUluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9wcm9jZnMuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2Ri L3Byb2Nmcy5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9w cm9jZnMuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg1MDUwNjQyOCArMDIwMAotKysrIGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3Byb2Nmcy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDYwNzI0ODY1ICsw MjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9wcm9jZnMuYwkyMDE1LTA3LTA5 IDE4OjI0OjM5LjAwNDM1NjE4OCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3By b2Nmcy5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjQ5MzgzODY4ICswMjAwCiBAQCAtNDg1OSw3ICs0 ODU5LDcgQEAgcHJvY2ZzX3JlbW92ZV93YXRjaHBvaW50IChzdHJ1Y3QgdGFyZ2V0XwogIAogIHN0 YXRpYyBpbnQKQEAgLTI5MTIsMTAgKzI5MTIsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL3Byb2Nmcy5jCiAgewogICAgLyogVGhlIG1hbiBwYWdlIGZvciBwcm9jKDQpIG9uIFNv bGFyaXMgMi42IGFuZCB1cCBzYXlzIHRoYXQgdGhlCiAgICAgICBzeXN0ZW0gY2FuIHN1cHBvcnQg InRob3VzYW5kcyIgb2YgaGFyZHdhcmUgd2F0Y2hwb2ludHMsIGJ1dCBnaXZlcwotSW5kZXg6IGdk Yi03LjkuNTAuMjAxNTA1MjAvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5jCitJbmRleDogZ2Ri LTcuOS45MC4yMDE1MDcwOS9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMKID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5j CTIwMTUtMDUtMzEgMTc6MDg6NDYuODUxNTA2NDM1ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1 MDUyMC9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMJMjAxNS0wNS0zMSAxNzowOToyMS40NjA3 MjQ4NjUgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3B5dGhvbi9weS1w cmV0dHlwcmludC5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDA0MzU2MTg4ICswMjAwCisrKysgZ2Ri LTcuOS45MC4yMDE1MDcwOS9nZGIvcHl0aG9uL3B5LXByZXR0eXByaW50LmMJMjAxNS0wNy0wOSAx ODoyNDo0Mi4yNDkzODM4NjggKzAyMDAKIEBAIC03MDMsNyArNzAzLDcgQEAgcHJpbnRfY2hpbGRy ZW4gKFB5T2JqZWN0ICpwcmludGVyLCBjb25zdAogIGVudW0gZXh0X2xhbmdfcmMKICBnZGJweV9h cHBseV92YWxfcHJldHR5X3ByaW50ZXIgKGNvbnN0IHN0cnVjdCBleHRlbnNpb25fbGFuZ3VhZ2Vf ZGVmbiAqZXh0bGFuZywKQEAgLTI5MjUsMTAgKzI5MjUsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL3B5dGhvbi9weS1wcmV0dHlwcmludC5jCiAgCQkJCXN0cnVjdCB1aV9maWxl ICpzdHJlYW0sIGludCByZWN1cnNlLAogIAkJCQljb25zdCBzdHJ1Y3QgdmFsdWUgKnZhbCwKICAJ CQkJY29uc3Qgc3RydWN0IHZhbHVlX3ByaW50X29wdGlvbnMgKm9wdGlvbnMsCi1JbmRleDogZ2Ri LTcuOS41MC4yMDE1MDUyMC9nZGIvcmVnY2FjaGUuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3 MDkvZ2RiL3JlZ2NhY2hlLmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9y aWcvZ2RiL3JlZ2NhY2hlLmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NTE1MDY0MzUgKzAyMDAKLSsr KyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9yZWdjYWNoZS5jCTIwMTUtMDUtMzEgMTc6MDk6MjEu NDYxNzI0ODcyICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9yZWdjYWNo ZS5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDA1MzU2MTk2ICswMjAwCisrKysgZ2RiLTcuOS45MC4y MDE1MDcwOS9nZGIvcmVnY2FjaGUuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI1MDM4Mzg3NyArMDIw MAogQEAgLTk0OSw3ICs5NDksNyBAQCB0eXBlZGVmIHZvaWQgKHJlZ2NhY2hlX3dyaXRlX2Z0eXBl KSAoc3RyCiAgCiAgc3RhdGljIGVudW0gcmVnaXN0ZXJfc3RhdHVzCkBAIC0yOTc0LDEwICsyOTc0 LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9yZWdjYWNoZS5jCiAgewogICAg c3RydWN0IHJlZ2NhY2hlX2Rlc2NyICpkZXNjciA9IHJlZ2NhY2hlLT5kZXNjcjsKICAKLUluZGV4 OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9yZWdjYWNoZS5oCitJbmRleDogZ2RiLTcuOS45MC4y MDE1MDcwOS9nZGIvcmVnY2FjaGUuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1 MjAub3JpZy9nZGIvcmVnY2FjaGUuaAkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg1MjUwNjQ0MSArMDIw MAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3JlZ2NhY2hlLmgJMjAxNS0wNS0zMSAxNzow OToyMS40NjE3MjQ4NzIgKzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3Jl Z2NhY2hlLmgJMjAxNS0wNy0wOSAxODoyNDozOS4wMDUzNTYxOTYgKzAyMDAKKysrKyBnZGItNy45 LjkwLjIwMTUwNzA5L2dkYi9yZWdjYWNoZS5oCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjUwMzgzODc3 ICswMjAwCiBAQCAtOTIsOSArOTIsOSBAQCBleHRlcm4gdm9pZCByZWdjYWNoZV9yYXdfd3JpdGVf dW5zaWduZWQKICAKICBleHRlcm4gZW51bSByZWdpc3Rlcl9zdGF0dXMKQEAgLTMwMDUsMTEgKzMw MDUsMTEgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3JlZ2NhY2hlLmgKICAKICAv KiBTcGVjaWFsIHJvdXRpbmVzIHRvIHJlYWQvd3JpdGUgdGhlIFBDLiAgKi8KICAKLUluZGV4OiBn ZGItNy45LjUwLjIwMTUwNTIwL2dkYi9yZW1vdGUuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3 MDkvZ2RiL3JlbW90ZS5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmln L2dkYi9yZW1vdGUuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg1NDUwNjQ1NCArMDIwMAotKysrIGdk Yi03LjkuNTAuMjAxNTA1MjAvZ2RiL3JlbW90ZS5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDY0NzI0 ODkxICswMjAwCi1AQCAtODc1MSw3ICs4NzUxLDcgQEAgaW50IHJlbW90ZV9od19icmVha3BvaW50 X2xpbWl0ID0gLTE7CistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9yZW1vdGUuYwky MDE1LTA3LTA5IDE4OjI0OjM5LjAwNzM1NjIxMyArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3 MDkvZ2RiL3JlbW90ZS5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjUzMzgzOTAyICswMjAwCitAQCAt ODc5Niw3ICs4Nzk2LDcgQEAgaW50IHJlbW90ZV9od19icmVha3BvaW50X2xpbWl0ID0gLTE7CiAg CiAgc3RhdGljIGludAogIHJlbW90ZV9yZWdpb25fb2tfZm9yX2h3X3dhdGNocG9pbnQgKHN0cnVj dCB0YXJnZXRfb3BzICpzZWxmLApAQCAtMzAxOCwxMCArMzAxOCwxMCBAQCBJbmRleDogZ2RiLTcu OS41MC4yMDE1MDUyMC9nZGIvcmVtb3RlLmMKICB7CiAgICBpZiAocmVtb3RlX2h3X3dhdGNocG9p bnRfbGVuZ3RoX2xpbWl0ID09IDApCiAgICAgIHJldHVybiAwOwotSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL3NwdS1tdWx0aWFyY2guYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkv Z2RiL3NwdS1tdWx0aWFyY2guYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAu b3JpZy9nZGIvc3B1LW11bHRpYXJjaC5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODU1NTA2NDYwICsw MjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvc3B1LW11bHRpYXJjaC5jCTIwMTUtMDUt MzEgMTc6MDk6MjEuNDY0NzI0ODkxICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmln L2dkYi9zcHUtbXVsdGlhcmNoLmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMDgzNTYyMjIgKzAyMDAK KysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9zcHUtbXVsdGlhcmNoLmMJMjAxNS0wNy0wOSAx ODoyNDo0Mi4yNTMzODM5MDIgKzAyMDAKIEBAIC0xMTcsNyArMTE3LDcgQEAgc3B1X3RocmVhZF9h cmNoaXRlY3R1cmUgKHN0cnVjdCB0YXJnZXRfbwogIC8qIE92ZXJyaWRlIHRoZSB0b19yZWdpb25f b2tfZm9yX2h3X3dhdGNocG9pbnQgcm91dGluZS4gICovCiAgc3RhdGljIGludApAQCAtMzAzMSwx MSArMzAzMSwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvc3B1LW11bHRpYXJj aC5jCiAgewogICAgc3RydWN0IHRhcmdldF9vcHMgKm9wc19iZW5lYXRoID0gZmluZF90YXJnZXRf YmVuZWF0aCAoc2VsZik7CiAgCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvc3RhY2su YworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3N0YWNrLmMKID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t LSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3N0YWNrLmMJMjAxNS0wNS0zMSAxNzowODo0 Ni44NTY1MDY0NjYgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9zdGFjay5jCTIw MTUtMDUtMzEgMTc6MDk6MjEuNDY1NzI0ODk3ICswMjAwCi1AQCAtMTc4LDcgKzE3OCw3IEBAIHBy aW50X3N0YWNrX2ZyYW1lIChzdHJ1Y3QgZnJhbWVfaW5mbyAqZnIKKy0tLSBnZGItNy45LjkwLjIw MTUwNzA5Lm9yaWcvZ2RiL3N0YWNrLmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMDkzNTYyMzAgKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9zdGFjay5jCTIwMTUtMDctMDkgMTg6MjQ6 NDIuMjU0MzgzOTExICswMjAwCitAQCAtMTc2LDcgKzE3Niw3IEBAIHByaW50X3N0YWNrX2ZyYW1l IChzdHJ1Y3QgZnJhbWVfaW5mbyAqZnIKICAgICBhcmd1bWVudCAobm90IGp1c3QgdGhlIGZpcnN0 IG5hbWVsZXNzIGFyZ3VtZW50KS4gICovCiAgCiAgc3RhdGljIHZvaWQKQEAgLTMwNDQsNyArMzA0 NCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9zdGFjay5jCiAgCQkJICAgaW50 IGZpcnN0LCBzdHJ1Y3QgdWlfZmlsZSAqc3RyZWFtKQogIHsKICAgIHN0cnVjdCBnZGJhcmNoICpn ZGJhcmNoID0gZ2V0X2ZyYW1lX2FyY2ggKGZyYW1lKTsKLUBAIC01NDEsNyArNTQxLDcgQEAgcHJp bnRfZnJhbWVfYXJncyAoc3RydWN0IHN5bWJvbCAqZnVuYywgcworQEAgLTUzOSw3ICs1MzksNyBA QCBwcmludF9mcmFtZV9hcmdzIChzdHJ1Y3Qgc3ltYm9sICpmdW5jLCBzCiAgICAvKiBPZmZzZXQg b2YgbmV4dCBzdGFjayBhcmd1bWVudCBiZXlvbmQgdGhlIG9uZSB3ZSBoYXZlIHNlZW4gdGhhdCBp cwogICAgICAgYXQgdGhlIGhpZ2hlc3Qgb2Zmc2V0LCBvciAtMSBpZiB3ZSBoYXZlbid0IGNvbWUg dG8gYSBzdGFjawogICAgICAgYXJndW1lbnQgeWV0LiAgKi8KQEAgLTMwNTMsNyArMzA1Myw3IEBA IEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9zdGFjay5jCiAgICAvKiBOdW1iZXIgb2Yg aW50cyBvZiBhcmd1bWVudHMgdGhhdCB3ZSBoYXZlIHByaW50ZWQgc28gZmFyLiAgKi8KICAgIGlu dCBhcmdzX3ByaW50ZWQgPSAwOwogICAgc3RydWN0IGNsZWFudXAgKm9sZF9jaGFpbjsKLUBAIC01 NzUsOCArNTc1LDggQEAgcHJpbnRfZnJhbWVfYXJncyAoc3RydWN0IHN5bWJvbCAqZnVuYywgcwor QEAgLTU3Myw4ICs1NzMsOCBAQCBwcmludF9mcmFtZV9hcmdzIChzdHJ1Y3Qgc3ltYm9sICpmdW5j LCBzCiAgCSAgICBjYXNlIExPQ19BUkc6CiAgCSAgICBjYXNlIExPQ19SRUZfQVJHOgogIAkgICAg ICB7CkBAIC0zMDY0LDcgKzMwNjQsNyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv c3RhY2suYwogIAogIAkJLyogQ29tcHV0ZSBhZGRyZXNzIG9mIG5leHQgYXJndW1lbnQgYnkgYWRk aW5nIHRoZSBzaXplIG9mCiAgCQkgICB0aGlzIGFyZ3VtZW50IGFuZCByb3VuZGluZyB0byBhbiBp bnQgYm91bmRhcnkuICAqLwotQEAgLTcxMSw3ICs3MTEsNyBAQCBwcmludF9mcmFtZV9hcmdzIChz dHJ1Y3Qgc3ltYm9sICpmdW5jLCBzCitAQCAtNzA5LDcgKzcwOSw3IEBAIHByaW50X2ZyYW1lX2Fy Z3MgKHN0cnVjdCBzeW1ib2wgKmZ1bmMsIHMKICAgICAgIGVub3VnaCBhYm91dCB0aGUgc3RhY2sg dG8gZmluZCB0aGVtLiAgKi8KICAgIGlmIChudW0gIT0gLTEpCiAgICAgIHsKQEAgLTMwNzMsMTAg KzMwNzMsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3N0YWNrLmMKICAKICAg ICAgICBpZiAoaGlnaGVzdF9vZmZzZXQgPT0gLTEpCiAgCXN0YXJ0ID0gZ2RiYXJjaF9mcmFtZV9h cmdzX3NraXAgKGdldF9mcmFtZV9hcmNoIChmcmFtZSkpOwotSW5kZXg6IGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL3N5bW1pc2MuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3N5bW1p c2MuYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvc3ltbWlz Yy5jCTIwMTUtMDUtMzEgMTc6MDg6NDYuODU2NTA2NDY2ICswMjAwCi0rKysgZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvc3ltbWlzYy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDY1NzI0ODk3ICswMjAw CistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9zeW1taXNjLmMJMjAxNS0wNy0wOSAx ODoyNDozOS4wMDkzNTYyMzAgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9zeW1t aXNjLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yNTQzODM5MTEgKzAyMDAKIEBAIC01MzQsMTEgKzUz NCwxMSBAQCBwcmludF9zeW1ib2wgKHZvaWQgKmFyZ3MpCiAgCiAgCWNhc2UgTE9DX0NPTlNUX0JZ VEVTOgpAQCAtMzA5MiwxMCArMzA5MiwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvc3ltbWlzYy5jCiAgCSAgICBmb3IgKGkgPSAwOyBpIDwgVFlQRV9MRU5HVEggKHR5cGUpOyBp KyspCiAgCSAgICAgIGZwcmludGZfZmlsdGVyZWQgKG91dGZpbGUsICIgJTAyeCIsCiAgCQkJCSh1 bnNpZ25lZCkgU1lNQk9MX1ZBTFVFX0JZVEVTIChzeW1ib2wpW2ldKTsKLUluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi90YXJnZXQuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2Ri L3RhcmdldC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi90 YXJnZXQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg1NzUwNjQ3MyArMDIwMAotKysrIGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3RhcmdldC5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDY2NzI0OTAzICsw MjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi90YXJnZXQuYwkyMDE1LTA3LTA5 IDE4OjI0OjM5LjAxMDM1NjIzOSArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3Rh cmdldC5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjU1MzgzOTE5ICswMjAwCiBAQCAtNTQsNyArNTQs NyBAQCBzdGF0aWMgaW50IGRlZmF1bHRfd2F0Y2hwb2ludF9hZGRyX3dpdGhpCiAgCQkJCQkJIENP UkVfQUREUiwgQ09SRV9BRERSLCBpbnQpOwogIApAQCAtMzEwNSw3ICszMTA1LDcgQEAgSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3RhcmdldC5jCiAgCiAgc3RhdGljIHZvaWQgZGVmYXVs dF9yY21kIChzdHJ1Y3QgdGFyZ2V0X29wcyAqLCBjb25zdCBjaGFyICosIHN0cnVjdCB1aV9maWxl ICopOwogIAotQEAgLTMwNTYsNyArMzA1Niw3IEBAIHRhcmdldF9maWxlaW9fcmVhZF9zdHJhbGxv YyAoY29uc3QgY2hhcgorQEAgLTMwODUsNyArMzA4NSw3IEBAIHRhcmdldF9maWxlaW9fcmVhZF9z dHJhbGxvYyAoc3RydWN0IGluZmUKICAKICBzdGF0aWMgaW50CiAgZGVmYXVsdF9yZWdpb25fb2tf Zm9yX2h3X3dhdGNocG9pbnQgKHN0cnVjdCB0YXJnZXRfb3BzICpzZWxmLApAQCAtMzExNCwxMSAr MzExNCwxMSBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdGFyZ2V0LmMKICB7CiAg ICByZXR1cm4gKGxlbiA8PSBnZGJhcmNoX3B0cl9iaXQgKHRhcmdldF9nZGJhcmNoICgpKSAvIFRB UkdFVF9DSEFSX0JJVCk7CiAgfQotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3Rhcmdl dC5oCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdGFyZ2V0LmgKID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3RhcmdldC5oCTIwMTUtMDUtMzEgMTc6 MDg6NDYuODU4NTA2NDc5ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdGFyZ2V0 LmgJMjAxNS0wNS0zMSAxNzowOToyMS40NjY3MjQ5MDMgKzAyMDAKLUBAIC01MjcsNyArNTI3LDcg QEAgc3RydWN0IHRhcmdldF9vcHMKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3Rh cmdldC5oCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDEwMzU2MjM5ICswMjAwCisrKysgZ2RiLTcuOS45 MC4yMDE1MDcwOS9nZGIvdGFyZ2V0LmgJMjAxNS0wNy0wOSAxODoyNDo0Mi4yNTYzODM5MjggKzAy MDAKK0BAIC01NDcsNyArNTQ3LDcgQEAgc3RydWN0IHRhcmdldF9vcHMKICAgICAgLyogRG9jdW1l bnRhdGlvbiBvZiB0aGlzIHJvdXRpbmUgaXMgcHJvdmlkZWQgd2l0aCB0aGUgY29ycmVzcG9uZGlu ZwogICAgICAgICB0YXJnZXRfKiBtYWNyby4gICovCiAgICAgIGludCAoKnRvX3JlZ2lvbl9va19m b3JfaHdfd2F0Y2hwb2ludCkgKHN0cnVjdCB0YXJnZXRfb3BzICosCkBAIC0zMTI3LDEwICszMTI3 LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90YXJnZXQuaAogICAgICAgIFRB UkdFVF9ERUZBVUxUX0ZVTkMgKGRlZmF1bHRfcmVnaW9uX29rX2Zvcl9od193YXRjaHBvaW50KTsK ICAKICAgICAgaW50ICgqdG9fY2FuX2FjY2VsX3dhdGNocG9pbnRfY29uZGl0aW9uKSAoc3RydWN0 IHRhcmdldF9vcHMgKiwKLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90cmFjZXBvaW50 LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi90cmFjZXBvaW50LmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3RyYWNlcG9pbnQuYwkyMDE1LTA1 LTMxIDE3OjA4OjQ2Ljg1OTUwNjQ4NSArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L3RyYWNlcG9pbnQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ2NzcyNDkxMCArMDIwMAorLS0tIGdk Yi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvdHJhY2Vwb2ludC5jCTIwMTUtMDctMDkgMTg6MjQ6 MzkuMDEyMzU2MjU2ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdHJhY2Vwb2lu dC5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjU3MzgzOTM2ICswMjAwCiBAQCAtOTI4LDEzICs5Mjgs MTMgQEAgYWRkX3JlZ2lzdGVyIChzdHJ1Y3QgY29sbGVjdGlvbl9saXN0ICpjbwogIHN0YXRpYyB2 b2lkCiAgYWRkX21lbXJhbmdlIChzdHJ1Y3QgY29sbGVjdGlvbl9saXN0ICptZW1yYW5nZXMsIApA QCAtMzIyNCwxMCArMzIyNCwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdHJh Y2Vwb2ludC5jCiAgCX0KICAgICAgICBpZiAoQkxPQ0tfRlVOQ1RJT04gKGJsb2NrKSkKICAJYnJl YWs7Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdHlwZXByaW50LmMKK0luZGV4OiBn ZGItNy45LjkwLjIwMTUwNzA5L2dkYi90eXBlcHJpbnQuYwogPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03 LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvdHlwZXByaW50LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44 NjA1MDY0OTEgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90eXBlcHJpbnQuYwky MDE1LTA1LTMxIDE3OjA5OjIxLjQ2ODcyNDkxNiArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3 MDkub3JpZy9nZGIvdHlwZXByaW50LmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMTMzNTYyNjQgKzAy MDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi90eXBlcHJpbnQuYwkyMDE1LTA3LTA5IDE4 OjI0OjQyLjI1NzM4MzkzNiArMDIwMAogQEAgLTQwNCw3ICs0MDQsNyBAQCB3aGF0aXNfZXhwIChj aGFyICpleHAsIGludCBzaG93KQogICAgc3RydWN0IHR5cGUgKnJlYWxfdHlwZSA9IE5VTEw7CiAg ICBzdHJ1Y3QgdHlwZSAqdHlwZTsKQEAgLTMyMzcsMTAgKzMyMzcsMTAgQEAgSW5kZXg6IGdkYi03 LjkuNTAuMjAxNTA1MjAvZ2RiL3R5cGVwcmludC5jCiAgICBpbnQgdXNpbmdfZW5jID0gMDsKICAg IHN0cnVjdCB2YWx1ZV9wcmludF9vcHRpb25zIG9wdHM7CiAgICBzdHJ1Y3QgdHlwZV9wcmludF9v cHRpb25zIGZsYWdzID0gZGVmYXVsdF9wdHlwZV9mbGFnczsKLUluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi92YWxhcml0aC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdmFs YXJpdGguYwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvdmFs YXJpdGguYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg2MTUwNjQ5OCArMDIwMAotKysrIGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3ZhbGFyaXRoLmMJMjAxNS0wNS0zMSAxNzowOToyMS40Njg3MjQ5MTYg KzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3ZhbGFyaXRoLmMJMjAxNS0w Ny0wOSAxODoyNDozOS4wMTQzNTYyNzMgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dk Yi92YWxhcml0aC5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjU3MzgzOTM2ICswMjAwCiBAQCAtMTg4 LDEyICsxODgsMTMgQEAgdmFsdWVfc3Vic2NyaXB0IChzdHJ1Y3QgdmFsdWUgKmFycmF5LCBMTwog ICAgIHRvIGRvdWJsZXMsIGJ1dCBubyBsb25nZXIgZG9lcy4gICovCiAgCkBAIC0zMzAwLDE2ICsz MzAwLDExIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi92YWxhcml0aC5jCiAgCiAg ICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCiAgICAgIHsKLUluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi92YWxvcHMuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3ZhbG9w cy5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi92YWxvcHMu YwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg2NDUwNjUxNyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAx NTA1MjAvZ2RiL3ZhbG9wcy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDY5NzI0OTIyICswMjAwCi1A QCAtNDcsMTEgKzQ3LDExIEBAIHN0YXRpYyBpbnQgdHlwZWNtcCAoaW50IHN0YXRpY3AsIGludCB2 YXIKLSAJCSAgICBzdHJ1Y3QgZmllbGQgdDFbXSwgc3RydWN0IHZhbHVlICp0MltdKTsKLSAKLSBz dGF0aWMgc3RydWN0IHZhbHVlICpzZWFyY2hfc3RydWN0X2ZpZWxkIChjb25zdCBjaGFyICosIHN0 cnVjdCB2YWx1ZSAqLCAKLS0JCQkJCSAgaW50LCBzdHJ1Y3QgdHlwZSAqLCBpbnQpOwotKwkJCQkJ ICBMT05HRVNULCBzdHJ1Y3QgdHlwZSAqLCBpbnQpOworLS0tIGdkYi03LjkuOTAuMjAxNTA3MDku b3JpZy9nZGIvdmFsb3BzLmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMTkzNTYzMTYgKzAyMDAKKysr KyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi92YWxvcHMuYwkyMDE1LTA3LTA5IDE4OjI2OjAyLjAz MjA2NDQyMCArMDIwMAorQEAgLTUxLDcgKzUxLDcgQEAgc3RhdGljIHN0cnVjdCB2YWx1ZSAqc2Vh cmNoX3N0cnVjdF9maWVsZAogIAogIHN0YXRpYyBzdHJ1Y3QgdmFsdWUgKnNlYXJjaF9zdHJ1Y3Rf bWV0aG9kIChjb25zdCBjaGFyICosIHN0cnVjdCB2YWx1ZSAqKiwKICAJCQkJCSAgIHN0cnVjdCB2 YWx1ZSAqKiwKQEAgLTM0OTcsMjEgKzM0OTIsMTYgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1 MjAvZ2RiL3ZhbG9wcy5jCiAgCiAgICAgICAgaWYgKEJBU0VUWVBFX1ZJQV9WSVJUVUFMICh0eXBl LCBpKSkKICAJewotQEAgLTE5NjUsMTEgKzE5NjcsMTEgQEAgZG9fc2VhcmNoX3N0cnVjdF9maWVs ZCAoY29uc3QgY2hhciAqbmFtZQotICAgIGZpZWxkcywgbG9vayBmb3IgYSBiYXNlY2xhc3MgbmFt ZWQgTkFNRS4gICovCi0gCi0gc3RhdGljIHN0cnVjdCB2YWx1ZSAqCi0tc2VhcmNoX3N0cnVjdF9m aWVsZCAoY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IHZhbHVlICphcmcxLCBpbnQgb2Zmc2V0LAot K3NlYXJjaF9zdHJ1Y3RfZmllbGQgKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCB2YWx1ZSAqYXJn MSwgTE9OR0VTVCBvZmZzZXQsCitAQCAtMTk2OCw3ICsxOTcwLDcgQEAgc2VhcmNoX3N0cnVjdF9m aWVsZCAoY29uc3QgY2hhciAqbmFtZSwgcwogIAkJICAgICBzdHJ1Y3QgdHlwZSAqdHlwZSwgaW50 IGxvb2tpbmdfZm9yX2Jhc2VjbGFzcykKICB7CiAgICBzdHJ1Y3QgdmFsdWUgKnJlc3VsdCA9IE5V TEw7CiAtICBpbnQgYm9mZnNldCA9IDA7CiArICBMT05HRVNUIGJvZmZzZXQgPSAwOwogIAotICAg ZG9fc2VhcmNoX3N0cnVjdF9maWVsZCAobmFtZSwgYXJnMSwgb2Zmc2V0LCB0eXBlLCBsb29raW5n X2Zvcl9iYXNlY2xhc3MsCisgICBkb19zZWFyY2hfc3RydWN0X2ZpZWxkIChuYW1lLCBhcmcxLCAw LCB0eXBlLCBsb29raW5nX2Zvcl9iYXNlY2xhc3MsCiAgCQkJICAmcmVzdWx0LCAmYm9mZnNldCwg dHlwZSk7Ci1AQCAtMTk4Niw3ICsxOTg4LDcgQEAgc2VhcmNoX3N0cnVjdF9maWVsZCAoY29uc3Qg Y2hhciAqbmFtZSwgcworQEAgLTE5ODUsNyArMTk4Nyw3IEBAIHNlYXJjaF9zdHJ1Y3RfZmllbGQg KGNvbnN0IGNoYXIgKm5hbWUsIHMKICAKICBzdGF0aWMgc3RydWN0IHZhbHVlICoKICBzZWFyY2hf c3RydWN0X21ldGhvZCAoY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IHZhbHVlICoqYXJnMXAsCkBA IC0zNTIwLDcgKzM1MTAsNyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdmFsb3Bz LmMKICAJCSAgICAgIGludCAqc3RhdGljX21lbWZ1bmNwLCBzdHJ1Y3QgdHlwZSAqdHlwZSkKICB7 CiAgICBpbnQgaTsKLUBAIC0yMDUwLDggKzIwNTIsOCBAQCBzZWFyY2hfc3RydWN0X21ldGhvZCAo Y29uc3QgY2hhciAqbmFtZSwKK0BAIC0yMDQ5LDggKzIwNTEsOCBAQCBzZWFyY2hfc3RydWN0X21l dGhvZCAoY29uc3QgY2hhciAqbmFtZSwKICAKICAgIGZvciAoaSA9IFRZUEVfTl9CQVNFQ0xBU1NF UyAodHlwZSkgLSAxOyBpID49IDA7IGktLSkKICAgICAgewpAQCAtMzUzMSw3ICszNTIxLDcgQEAg SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ZhbG9wcy5jCiAgCiAgICAgICAgaWYgKEJB U0VUWVBFX1ZJQV9WSVJUVUFMICh0eXBlLCBpKSkKICAJewotQEAgLTIyODYsMTAgKzIyODgsMTAg QEAgdmFsdWVfc3RydWN0X2VsdF9iaXRwb3MgKHN0cnVjdCB2YWx1ZSAqKgorQEAgLTIyODUsMTAg KzIyODcsMTAgQEAgdmFsdWVfc3RydWN0X2VsdF9iaXRwb3MgKHN0cnVjdCB2YWx1ZSAqKgogIAog IHN0YXRpYyB2b2lkCiAgZmluZF9tZXRob2RfbGlzdCAoc3RydWN0IHZhbHVlICoqYXJncCwgY29u c3QgY2hhciAqbWV0aG9kLApAQCAtMzU0NCw3ICszNTM0LDcgQEAgSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL3ZhbG9wcy5jCiAgewogICAgaW50IGk7CiAgICBzdHJ1Y3QgZm5fZmllbGQg KmYgPSBOVUxMOwotQEAgLTIzNDYsNyArMjM0OCw3IEBAIGZpbmRfbWV0aG9kX2xpc3QgKHN0cnVj dCB2YWx1ZSAqKmFyZ3AsIGMKK0BAIC0yMzQ1LDcgKzIzNDcsNyBAQCBmaW5kX21ldGhvZF9saXN0 IChzdHJ1Y3QgdmFsdWUgKiphcmdwLCBjCiAgICAgICBleHRlbnNpb24gbWV0aG9kcy4gICovCiAg ICBmb3IgKGkgPSBUWVBFX05fQkFTRUNMQVNTRVMgKHR5cGUpIC0gMTsgaSA+PSAwOyBpLS0pCiAg ICAgIHsKQEAgLTM1NTMsNyArMzU0Myw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi92YWxvcHMuYwogIAogICAgICAgIGlmIChCQVNFVFlQRV9WSUFfVklSVFVBTCAodHlwZSwgaSkp CiAgCXsKLUBAIC0yMzg5LDcgKzIzOTEsNyBAQCB2YWx1ZV9maW5kX29sb2FkX21ldGhvZF9saXN0 IChzdHJ1Y3QgdmFsCitAQCAtMjM4OCw3ICsyMzkwLDcgQEAgdmFsdWVfZmluZF9vbG9hZF9tZXRo b2RfbGlzdCAoc3RydWN0IHZhbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBv ZmZzZXQsIHN0cnVjdCBmbl9maWVsZCAqKmZuX2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaW50ICpudW1fZm5zLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZF QyAoeG1ldGhvZF93b3JrZXJfcHRyKSAqKnhtX3dvcmtlcl92ZWMsCkBAIC0zNTYyLDcgKzM1NTIs NyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdmFsb3BzLmMKICB7CiAgICBzdHJ1 Y3QgdHlwZSAqdDsKICAKLUBAIC0yNTAwLDcgKzI1MDIsNyBAQCBmaW5kX292ZXJsb2FkX21hdGNo IChzdHJ1Y3QgdmFsdWUgKiphcmdzCitAQCAtMjQ5OSw3ICsyNTAxLDcgQEAgZmluZF9vdmVybG9h ZF9tYXRjaCAoc3RydWN0IHZhbHVlICoqYXJncwogICAgLyogTnVtYmVyIG9mIG92ZXJsb2FkZWQg aW5zdGFuY2VzIGJlaW5nIGNvbnNpZGVyZWQuICAqLwogICAgaW50IG51bV9mbnMgPSAwOwogICAg c3RydWN0IHR5cGUgKmJhc2V0eXBlID0gTlVMTDsKQEAgLTM1NzEsNyArMzU2MSw3IEBAIEluZGV4 OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi92YWxvcHMuYwogIAogICAgc3RydWN0IGNsZWFudXAg KmFsbF9jbGVhbnVwcyA9IG1ha2VfY2xlYW51cCAobnVsbF9jbGVhbnVwLCBOVUxMKTsKICAKLUBA IC0zMzE1LDcgKzMzMTcsNyBAQCBjb21wYXJlX3BhcmFtZXRlcnMgKHN0cnVjdCB0eXBlICp0MSwg c3RyCitAQCAtMzMxNCw3ICszMzE2LDcgQEAgY29tcGFyZV9wYXJhbWV0ZXJzIChzdHJ1Y3QgdHlw ZSAqdDEsIHN0cgogICAgIHRoZSBmb3JtICJET01BSU46Ok5BTUUiLiAgKi8KICAKICBzdGF0aWMg c3RydWN0IHZhbHVlICoKQEAgLTM1ODAsNyArMzU3MCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIw MTUwNTIwL2dkYi92YWxvcHMuYwogIAkJCQlzdHJ1Y3QgdHlwZSAqY3VydHlwZSwgY29uc3QgY2hh ciAqbmFtZSwKICAJCQkJc3RydWN0IHR5cGUgKmludHlwZSwgCiAgCQkJCWludCB3YW50X2FkZHJl c3MsCi1AQCAtMzM0OSw3ICszMzUxLDcgQEAgdmFsdWVfc3RydWN0X2VsdF9mb3JfcmVmZXJlbmNl IChzdHJ1Y3QgdAorQEAgLTMzNDgsNyArMzM1MCw3IEBAIHZhbHVlX3N0cnVjdF9lbHRfZm9yX3Jl ZmVyZW5jZSAoc3RydWN0IHQKICAJICBpZiAod2FudF9hZGRyZXNzKQogIAkgICAgcmV0dXJuIHZh bHVlX2Zyb21fbG9uZ2VzdAogIAkgICAgICAobG9va3VwX21lbWJlcnB0cl90eXBlIChUWVBFX0ZJ RUxEX1RZUEUgKHQsIGkpLCBkb21haW4pLApAQCAtMzU4OSw3ICszNTc5LDcgQEAgSW5kZXg6IGdk Yi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ZhbG9wcy5jCiAgCSAgZWxzZSBpZiAobm9zaWRlICE9IEVW QUxfTk9STUFMKQogIAkgICAgcmV0dXJuIGFsbG9jYXRlX3ZhbHVlIChUWVBFX0ZJRUxEX1RZUEUg KHQsIGkpKTsKICAJICBlbHNlCi1AQCAtMzUxNyw3ICszNTE5LDcgQEAgdmFsdWVfc3RydWN0X2Vs dF9mb3JfcmVmZXJlbmNlIChzdHJ1Y3QgdAorQEAgLTM1MTYsNyArMzUxOCw3IEBAIHZhbHVlX3N0 cnVjdF9lbHRfZm9yX3JlZmVyZW5jZSAoc3RydWN0IHQKICAgIGZvciAoaSA9IFRZUEVfTl9CQVNF Q0xBU1NFUyAodCkgLSAxOyBpID49IDA7IGktLSkKICAgICAgewogICAgICAgIHN0cnVjdCB2YWx1 ZSAqdjsKQEAgLTM1OTgsNyArMzU4OCw3IEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi92YWxvcHMuYwogIAogICAgICAgIGlmIChCQVNFVFlQRV9WSUFfVklSVFVBTCAodCwgaSkpCiAg CWJhc2Vfb2Zmc2V0ID0gMDsKLUBAIC0zNTk4LDcgKzM2MDAsNyBAQCB2YWx1ZV9tYXliZV9uYW1l c3BhY2VfZWx0IChjb25zdCBzdHJ1Y3QKK0BAIC0zNTk3LDcgKzM1OTksNyBAQCB2YWx1ZV9tYXli ZV9uYW1lc3BhY2VfZWx0IChjb25zdCBzdHJ1Y3QKICAKICBzdHJ1Y3QgdHlwZSAqCiAgdmFsdWVf cnR0aV9pbmRpcmVjdF90eXBlIChzdHJ1Y3QgdmFsdWUgKnYsIGludCAqZnVsbCwgCkBAIC0zNjA3 LDcgKzM1OTcsNyBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdmFsb3BzLmMKICB7 CiAgICBzdHJ1Y3QgdmFsdWUgKnRhcmdldCA9IE5VTEw7CiAgICBzdHJ1Y3QgdHlwZSAqdHlwZSwg KnJlYWxfdHlwZSwgKnRhcmdldF90eXBlOwotQEAgLTM2NjYsMTIgKzM2NjgsMTIgQEAgdmFsdWVf cnR0aV9pbmRpcmVjdF90eXBlIChzdHJ1Y3QgdmFsdWUgKgorQEAgLTM2NjUsMTIgKzM2NjcsMTIg QEAgdmFsdWVfcnR0aV9pbmRpcmVjdF90eXBlIChzdHJ1Y3QgdmFsdWUgKgogIHN0cnVjdCB2YWx1 ZSAqCiAgdmFsdWVfZnVsbF9vYmplY3QgKHN0cnVjdCB2YWx1ZSAqYXJncCwgCiAgCQkgICBzdHJ1 Y3QgdHlwZSAqcnR5cGUsIApAQCAtMzYyMiwxMCArMzYxMiwxMCBAQCBJbmRleDogZ2RiLTcuOS41 MC4yMDE1MDUyMC9nZGIvdmFsb3BzLmMKICAgIGludCB1c2luZ19lbmMgPSAwOwogICAgc3RydWN0 IHZhbHVlICpuZXdfdmFsOwogIAotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ZhbHBy aW50LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi92YWxwcmludC5jCiA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi92YWxwcmludC5jCTIwMTUtMDUt MzEgMTc6MDg6NDYuODY1NTA2NTIzICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIv dmFscHJpbnQuYwkyMDE1LTA1LTMxIDE3OjE0OjE1Ljk2NTU4MzU4NyArMDIwMAorLS0tIGdkYi03 LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvdmFscHJpbnQuYwkyMDE1LTA3LTA5IDE4OjI0OjM5LjAy MDM1NjMyNCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3ZhbHByaW50LmMJMjAx NS0wNy0wOSAxODoyNDo0Mi4yNjAzODM5NjIgKzAyMDAKIEBAIC0yOTgsNyArMjk4LDcgQEAgdmFs X3ByaW50X3NjYWxhcl90eXBlX3AgKHN0cnVjdCB0eXBlICp0eQogIGludAogIHZhbHByaW50X2No ZWNrX3ZhbGlkaXR5IChzdHJ1Y3QgdWlfZmlsZSAqc3RyZWFtLApAQCAtMzcxOCwxMCArMzcwOCwx MCBAQCBJbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdmFscHJpbnQuYwogIAkJICBjb25z dCBjaGFyICplbmNvZGluZywgaW50IGZvcmNlX2VsbGlwc2VzLAogIAkJICBpbnQgcXVvdGVfY2hh ciwgaW50IGNfc3R5bGVfdGVybWluYXRvciwKICAJCSAgY29uc3Qgc3RydWN0IHZhbHVlX3ByaW50 X29wdGlvbnMgKm9wdGlvbnMpCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvdmFscHJp bnQuaAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3ZhbHByaW50LmgKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3ZhbHByaW50LmgJMjAxNS0wNS0z MSAxNzowODo0Ni44NjU1MDY1MjMgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi92 YWxwcmludC5oCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDcwNzI0OTI4ICswMjAwCistLS0gZ2RiLTcu OS45MC4yMDE1MDcwOS5vcmlnL2dkYi92YWxwcmludC5oCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDIx MzU2MzMzICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdmFscHJpbnQuaAkyMDE1 LTA3LTA5IDE4OjI0OjQyLjI2MDM4Mzk2MiArMDIwMAogQEAgLTExNSwxMSArMTE1LDExIEBAIGV4 dGVybiB2b2lkIG1heWJlX3ByaW50X2FycmF5X2luZGV4IChzdHIKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHVpX2ZpbGUgKnN0cmVhbSwKICAJCQkJICAgICBj b25zdCBzdHJ1Y3QgdmFsdWVfcHJpbnRfb3B0aW9ucyAqKTsKQEAgLTM3NzIsMTAgKzM3NjIsMTAg QEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ZhbHByaW50LmgKICAJCQkgICAgICBj b25zdCBjaGFyICplbmNvZGluZywgaW50IGZvcmNlX2VsbGlwc2VzLAogIAkJCSAgICAgIGludCBx dW90ZV9jaGFyLCBpbnQgY19zdHlsZV90ZXJtaW5hdG9yLAogIAkJCSAgICAgIGNvbnN0IHN0cnVj dCB2YWx1ZV9wcmludF9vcHRpb25zICpvcHRpb25zKTsKLUluZGV4OiBnZGItNy45LjUwLjIwMTUw NTIwL2dkYi92YWx1ZS5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvdmFsdWUuYwog PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvdmFsdWUuYwkyMDE1 LTA1LTMxIDE3OjA4OjQ2Ljg2ODUwNjU0MiArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL3ZhbHVlLmMJMjAxNS0wNS0zMSAxNzowOToyMS40NzE3MjQ5MzUgKzAyMDAKKy0tLSBnZGIt Ny45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3ZhbHVlLmMJMjAxNS0wNy0wOSAxODoyNDozOS4wMjYz NTYzNzUgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi92YWx1ZS5jCTIwMTUtMDct MDkgMTg6MjQ6NDIuMjYxMzgzOTcwICswMjAwCiBAQCAtNjYsMTAgKzY2LDEwIEBAIHN0cnVjdCBp bnRlcm5hbF9mdW5jdGlvbgogIHN0cnVjdCByYW5nZQogIHsKQEAgLTQxMDYsMTAgKzQwOTYsMTAg QEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3ZhbHVlLmMKICAKICAgIC8qIE5vcm1h bGl6ZSBCSVRQT1MuICAqLwogICAgYWRkciArPSBiaXRwb3MgLyA4OwotSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3ZhbHVlLmgKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi92 YWx1ZS5oCiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi92YWx1 ZS5oCTIwMTUtMDUtMzEgMTc6MDg6NDYuODY5NTA2NTQ4ICswMjAwCi0rKysgZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvdmFsdWUuaAkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ3MjcyNDk0MSArMDIwMAor LS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIvdmFsdWUuaAkyMDE1LTA3LTA5IDE4OjI0 OjM5LjAyNzM1NjM4NCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3ZhbHVlLmgJ MjAxNS0wNy0wOSAxODoyNDo0Mi4yNjIzODM5NzkgKzAyMDAKIEBAIC0xMzEsOCArMTMxLDggQEAg ZXh0ZXJuIHZvaWQgc2V0X3ZhbHVlX3BhcmVudCAoc3RydWN0IHZhbAogICAgIHdpdGhpbiB0aGUg cmVnaXN0ZXJzIHN0cnVjdHVyZS4gIE5vdGUgYWxzbyB0aGUgbWVtYmVyCiAgICAgZW1iZWRkZWRf b2Zmc2V0IGJlbG93LiAgKi8KQEAgLTQzNTAsMTEgKzQzNDAsMTEgQEAgSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3ZhbHVlLmgKICAKICAvKiBVc2VyIGZ1bmN0aW9uIGhhbmRsZXIuICAq LwogIAotSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3MzOTAtbGludXgtbmF0LmMKK0lu ZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9zMzkwLWxpbnV4LW5hdC5jCiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLS0gZ2RiLTcuOS41MC4yMDE1MDUyMC5vcmlnL2dkYi9zMzkwLWxpbnV4LW5hdC5jCTIwMTUt MDUtMzEgMTc6MDg6NDYuODcwNTA2NTU1ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvczM5MC1saW51eC1uYXQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ3MjcyNDk0MSArMDIwMAot QEAgLTYxOSw3ICs2MTksNyBAQCBzMzkwX2Nhbl91c2VfaHdfYnJlYWtwb2ludCAoc3RydWN0IHRh cmdlCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9zMzkwLWxpbnV4LW5hdC5jCTIw MTUtMDctMDkgMTg6MjQ6MzkuMDI4MzU2MzkzICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcw OS9nZGIvczM5MC1saW51eC1uYXQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI2MjM4Mzk3OSArMDIw MAorQEAgLTYxMiw3ICs2MTIsNyBAQCBzMzkwX2Nhbl91c2VfaHdfYnJlYWtwb2ludCAoc3RydWN0 IHRhcmdlCiAgCiAgc3RhdGljIGludAogIHMzOTBfcmVnaW9uX29rX2Zvcl9od193YXRjaHBvaW50 IChzdHJ1Y3QgdGFyZ2V0X29wcyAqc2VsZiwKQEAgLTQzNjMsMTAgKzQzNTMsMTAgQEAgSW5kZXg6 IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3MzOTAtbGludXgtbmF0LmMKICB7CiAgICByZXR1cm4g MTsKICB9Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZXh0ZW5zaW9uLXByaXYuaAor SW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2V4dGVuc2lvbi1wcml2LmgKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2V4dGVuc2lvbi1wcml2LmgJMjAx NS0wNS0zMSAxNzowODo0Ni44NzA1MDY1NTUgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIw L2dkYi9leHRlbnNpb24tcHJpdi5oCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDczNzI0OTQ4ICswMjAw CistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmlnL2dkYi9leHRlbnNpb24tcHJpdi5oCTIwMTUt MDctMDkgMTg6MjQ6MzkuMDI4MzU2MzkzICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9n ZGIvZXh0ZW5zaW9uLXByaXYuaAkyMDE1LTA3LTA5IDE4OjI0OjQyLjI2MjM4Mzk3OSArMDIwMAog QEAgLTE4MCw3ICsxODAsNyBAQCBzdHJ1Y3QgZXh0ZW5zaW9uX2xhbmd1YWdlX29wcwogICAgZW51 bSBleHRfbGFuZ19yYyAoKmFwcGx5X3ZhbF9wcmV0dHlfcHJpbnRlcikKICAgICAgKGNvbnN0IHN0 cnVjdCBleHRlbnNpb25fbGFuZ3VhZ2VfZGVmbiAqLApAQCAtNDM3NiwxMSArNDM2NiwxMSBAQCBJ bmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvZXh0ZW5zaW9uLXByaXYuaAogICAgICAgc3Ry dWN0IHVpX2ZpbGUgKnN0cmVhbSwgaW50IHJlY3Vyc2UsCiAgICAgICBjb25zdCBzdHJ1Y3QgdmFs dWUgKnZhbCwgY29uc3Qgc3RydWN0IHZhbHVlX3ByaW50X29wdGlvbnMgKm9wdGlvbnMsCiAgICAg ICBjb25zdCBzdHJ1Y3QgbGFuZ3VhZ2VfZGVmbiAqbGFuZ3VhZ2UpOwotSW5kZXg6IGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL3B5dGhvbi9weXRob24taW50ZXJuYWwuaAorSW5kZXg6IGdkYi03Ljku OTAuMjAxNTA3MDkvZ2RiL3B5dGhvbi9weXRob24taW50ZXJuYWwuaAogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0t IGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvcHl0aG9uL3B5dGhvbi1pbnRlcm5hbC5oCTIw MTUtMDUtMzEgMTc6MDg6NDYuODcwNTA2NTU1ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvcHl0aG9uL3B5dGhvbi1pbnRlcm5hbC5oCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDczNzI0 OTQ4ICswMjAwCi1AQCAtMzE4LDcgKzMxOCw3IEBAIGV4dGVybiBpbnQgZ2RicHlfYXV0b19sb2Fk X2VuYWJsZWQgKGNvbnMKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3B5dGhvbi9w eXRob24taW50ZXJuYWwuaAkyMDE1LTA3LTA5IDE4OjI0OjM5LjAyODM1NjM5MyArMDIwMAorKysr IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3B5dGhvbi9weXRob24taW50ZXJuYWwuaAkyMDE1LTA3 LTA5IDE4OjI0OjQyLjI2MzM4Mzk4OCArMDIwMAorQEAgLTMxNiw3ICszMTYsNyBAQCBleHRlcm4g aW50IGdkYnB5X2F1dG9fbG9hZF9lbmFibGVkIChjb25zCiAgZXh0ZXJuIGVudW0gZXh0X2xhbmdf cmMgZ2RicHlfYXBwbHlfdmFsX3ByZXR0eV9wcmludGVyCiAgICAoY29uc3Qgc3RydWN0IGV4dGVu c2lvbl9sYW5ndWFnZV9kZWZuICosCiAgICAgc3RydWN0IHR5cGUgKnR5cGUsIGNvbnN0IGdkYl9i eXRlICp2YWxhZGRyLApAQCAtNDM4OSwxMCArNDM3OSwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvcHl0aG9uL3B5dGhvbi1pbnRlcm5hbC5oCiAgICAgc3RydWN0IHVpX2ZpbGUg KnN0cmVhbSwgaW50IHJlY3Vyc2UsCiAgICAgY29uc3Qgc3RydWN0IHZhbHVlICp2YWwsCiAgICAg Y29uc3Qgc3RydWN0IHZhbHVlX3ByaW50X29wdGlvbnMgKm9wdGlvbnMsCi1JbmRleDogZ2RiLTcu OS41MC4yMDE1MDUyMC9nZGIvdGFyZ2V0LWRlbGVnYXRlcy5jCitJbmRleDogZ2RiLTcuOS45MC4y MDE1MDcwOS9nZGIvdGFyZ2V0LWRlbGVnYXRlcy5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41 MC4yMDE1MDUyMC5vcmlnL2dkYi90YXJnZXQtZGVsZWdhdGVzLmMJMjAxNS0wNS0zMSAxNzowODo0 Ni44NzE1MDY1NjEgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi90YXJnZXQtZGVs ZWdhdGVzLmMJMjAxNS0wNS0zMSAxNzowOToyMS40NzQ3MjQ5NTQgKzAyMDAKKy0tLSBnZGItNy45 LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL3RhcmdldC1kZWxlZ2F0ZXMuYwkyMDE1LTA3LTA5IDE4OjI0 OjM5LjAyOTM1NjQwMSArMDIwMAorKysrIGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL3RhcmdldC1k ZWxlZ2F0ZXMuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI2NDM4Mzk5NiArMDIwMAogQEAgLTc0Miwx NCArNzQyLDE0IEBAIGRlYnVnX3dhdGNocG9pbnRfYWRkcl93aXRoaW5fcmFuZ2UgKHN0cnUKICB9 CiAgCkBAIC00NDE5LDEwICs0NDA5LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi90YXJnZXQtZGVsZWdhdGVzLmMKICAgIGZwdXRzX3VuZmlsdGVyZWQgKCIpID0gIiwgZ2RiX3N0 ZGxvZyk7CiAgICB0YXJnZXRfZGVidWdfcHJpbnRfaW50IChyZXN1bHQpOwogICAgZnB1dHNfdW5m aWx0ZXJlZCAoIlxuIiwgZ2RiX3N0ZGxvZyk7Ci1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUyMC9n ZGIvYWFyY2g2NC1saW51eC1uYXQuYworSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkvZ2RiL2Fh cmNoNjQtbGludXgtbmF0LmMKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9y aWcvZ2RiL2FhcmNoNjQtbGludXgtbmF0LmMJMjAxNS0wNS0zMSAxNzowODo0Ni44NzI1MDY1Njcg KzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9hYXJjaDY0LWxpbnV4LW5hdC5jCTIw MTUtMDUtMzEgMTc6MDk6MjEuNDc0NzI0OTU0ICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcw OS5vcmlnL2dkYi9hYXJjaDY0LWxpbnV4LW5hdC5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDMwMzU2 NDEwICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvYWFyY2g2NC1saW51eC1uYXQu YwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI2NDM4Mzk5NiArMDIwMAogQEAgLTEzODYsNyArMTM4Niw3 IEBAIGFhcmNoNjRfbGludXhfcmVtb3ZlX3dhdGNocG9pbnQgKHN0cnVjdAogIAogIHN0YXRpYyBp bnQKQEAgLTQ0MzIsMTAgKzQ0MjIsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2Ri L2FhcmNoNjQtbGludXgtbmF0LmMKICB7CiAgICBDT1JFX0FERFIgYWxpZ25lZF9hZGRyOwogIAot SW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL25hdC94ODYtZHJlZ3MuYworSW5kZXg6IGdk Yi03LjkuOTAuMjAxNTA3MDkvZ2RiL25hdC94ODYtZHJlZ3MuYwogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdk Yi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvbmF0L3g4Ni1kcmVncy5jCTIwMTUtMDUtMzEgMTc6 MDg6NDYuODcyNTA2NTY3ICswMjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbmF0L3g4 Ni1kcmVncy5jCTIwMTUtMDUtMzEgMTc6MDk6MjEuNDc0NzI0OTU0ICswMjAwCistLS0gZ2RiLTcu OS45MC4yMDE1MDcwOS5vcmlnL2dkYi9uYXQveDg2LWRyZWdzLmMJMjAxNS0wNy0wOSAxODoyNDoz OS4wMzAzNTY0MTAgKzAyMDAKKysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9uYXQveDg2LWRy ZWdzLmMJMjAxNS0wNy0wOSAxODoyNDo0Mi4yNjQzODM5OTYgKzAyMDAKIEBAIC0zODQsNyArMzg0 LDcgQEAgeDg2X3JlbW92ZV9hbGlnbmVkX3dhdGNocG9pbnQgKHN0cnVjdCB4OAogIAogIHN0YXRp YyBpbnQKQEAgLTQ0NTQsMTAgKzQ0NDQsMTAgQEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL25hdC94ODYtZHJlZ3MuYwogIHsKICAgIGludCBucmVnczsKICAKLUluZGV4OiBnZGItNy45 LjUwLjIwMTUwNTIwL2dkYi9jb21waWxlL2NvbXBpbGUtYy1zdXBwb3J0LmMKK0luZGV4OiBnZGIt Ny45LjkwLjIwMTUwNzA5L2dkYi9jb21waWxlL2NvbXBpbGUtYy1zdXBwb3J0LmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL2NvbXBpbGUvY29tcGlsZS1jLXN1 cHBvcnQuYwkyMDE1LTA1LTMxIDE3OjA4OjQ2Ljg3MjUwNjU2NyArMDIwMAotKysrIGdkYi03Ljku NTAuMjAxNTA1MjAvZ2RiL2NvbXBpbGUvY29tcGlsZS1jLXN1cHBvcnQuYwkyMDE1LTA1LTMxIDE3 OjA5OjIxLjQ3NTcyNDk2MCArMDIwMAorLS0tIGdkYi03LjkuOTAuMjAxNTA3MDkub3JpZy9nZGIv Y29tcGlsZS9jb21waWxlLWMtc3VwcG9ydC5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDMwMzU2NDEw ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIvY29tcGlsZS9jb21waWxlLWMtc3Vw cG9ydC5jCTIwMTUtMDctMDkgMTg6MjQ6NDIuMjY1Mzg0MDA1ICswMjAwCiBAQCAtMjk5LDExICsy OTksMTEgQEAgZ2VuZXJhdGVfcmVnaXN0ZXJfc3RydWN0IChzdHJ1Y3QgdWlfZmlsZQogIAogIAkg ICAgICBkZWZhdWx0OgpAQCAtNDQ3MiwxMCArNDQ2MiwxMCBAQCBJbmRleDogZ2RiLTcuOS41MC4y MDE1MDUyMC9nZGIvY29tcGlsZS9jb21waWxlLWMtc3VwcG9ydC5jCiAgCSAgICAgIH0KICAJICAg IGZwdXRzX3VuZmlsdGVyZWQgKCI7XG4iLCBzdHJlYW0pOwogIAotSW5kZXg6IGdkYi03LjkuNTAu MjAxNTA1MjAvZ2RiL25hdC94ODYtZHJlZ3MuaAorSW5kZXg6IGdkYi03LjkuOTAuMjAxNTA3MDkv Z2RiL25hdC94ODYtZHJlZ3MuaAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0tIGdkYi03LjkuNTAuMjAxNTA1MjAu b3JpZy9nZGIvbmF0L3g4Ni1kcmVncy5oCTIwMTUtMDUtMzEgMTc6MDg6NDYuODczNTA2NTczICsw MjAwCi0rKysgZ2RiLTcuOS41MC4yMDE1MDUyMC9nZGIvbmF0L3g4Ni1kcmVncy5oCTIwMTUtMDUt MzEgMTc6MDk6MjEuNDc1NzI0OTYwICswMjAwCistLS0gZ2RiLTcuOS45MC4yMDE1MDcwOS5vcmln L2dkYi9uYXQveDg2LWRyZWdzLmgJMjAxNS0wNy0wOSAxODoyNDozOS4wMzAzNTY0MTAgKzAyMDAK KysrKyBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi9uYXQveDg2LWRyZWdzLmgJMjAxNS0wNy0wOSAx ODoyNDo0Mi4yNjUzODQwMDUgKzAyMDAKIEBAIC0xMTYsNyArMTE2LDcgQEAgZXh0ZXJuIGludCB4 ODZfZHJfcmVtb3ZlX3dhdGNocG9pbnQgKHN0cgogIC8qIFJldHVybiBub24temVybyBpZiB3ZSBj YW4gd2F0Y2ggYSBtZW1vcnkgcmVnaW9uIHRoYXQgc3RhcnRzIGF0CiAgICAgYWRkcmVzcyBBRERS IGFuZCB3aG9zZSBsZW5ndGggaXMgTEVOIGJ5dGVzLiAgKi8KQEAgLTQ0ODUsMTAgKzQ0NzUsMTAg QEAgSW5kZXg6IGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL25hdC94ODYtZHJlZ3MuaAogIAogIC8q IElmIHRoZSBpbmZlcmlvciBoYXMgc29tZSBicmVhay93YXRjaHBvaW50IHRoYXQgdHJpZ2dlcmVk LCBzZXQgdGhlCiAgICAgYWRkcmVzcyBhc3NvY2lhdGVkIHdpdGggdGhhdCBicmVhay93YXRjaHBv aW50IGFuZCByZXR1cm4gdHJ1ZS4KLUluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi94ODYt bmF0LmMKK0luZGV4OiBnZGItNy45LjkwLjIwMTUwNzA5L2dkYi94ODYtbmF0LmMKID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tLSBnZGItNy45LjUwLjIwMTUwNTIwLm9yaWcvZ2RiL3g4Ni1uYXQuYwkyMDE1LTA1LTMx IDE3OjA4OjQ2Ljg3MzUwNjU3MyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAvZ2RiL3g4 Ni1uYXQuYwkyMDE1LTA1LTMxIDE3OjA5OjIxLjQ3NTcyNDk2MCArMDIwMAorLS0tIGdkYi03Ljku OTAuMjAxNTA3MDkub3JpZy9nZGIveDg2LW5hdC5jCTIwMTUtMDctMDkgMTg6MjQ6MzkuMDMxMzU2 NDE4ICswMjAwCisrKysgZ2RiLTcuOS45MC4yMDE1MDcwOS9nZGIveDg2LW5hdC5jCTIwMTUtMDct MDkgMTg6MjQ6NDIuMjY1Mzg0MDA1ICswMjAwCiBAQCAtMTc4LDcgKzE3OCw3IEBAIHg4Nl9yZW1v dmVfd2F0Y2hwb2ludCAoc3RydWN0IHRhcmdldF9vcHMKICAKICBzdGF0aWMgaW50CkBAIC00NDk4 LDEwICs0NDg4LDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi94ODYtbmF0LmMK ICB7CiAgICBzdHJ1Y3QgeDg2X2RlYnVnX3JlZ19zdGF0ZSAqc3RhdGUKICAgICAgPSB4ODZfZGVi dWdfcmVnX3N0YXRlIChwdGlkX2dldF9waWQgKGluZmVyaW9yX3B0aWQpKTsKLUluZGV4OiBnZGIt Ny45LjUwLjIwMTUwNTIwL2dkYi9ndWlsZS9ndWlsZS1pbnRlcm5hbC5oCitJbmRleDogZ2RiLTcu OS45MC4yMDE1MDcwOS9nZGIvZ3VpbGUvZ3VpbGUtaW50ZXJuYWwuaAogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0t IGdkYi03LjkuNTAuMjAxNTA1MjAub3JpZy9nZGIvZ3VpbGUvZ3VpbGUtaW50ZXJuYWwuaAkyMDE1 LTA1LTMxIDE3OjA4OjQ2Ljg3MzUwNjU3MyArMDIwMAotKysrIGdkYi03LjkuNTAuMjAxNTA1MjAv Z2RiL2d1aWxlL2d1aWxlLWludGVybmFsLmgJMjAxNS0wNS0zMSAxNzowOToyMS40NzU3MjQ5NjAg KzAyMDAKKy0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2d1aWxlL2d1aWxlLWludGVy bmFsLmgJMjAxNS0wNy0wOSAxODoyNDozOS4wMzEzNTY0MTggKzAyMDAKKysrKyBnZGItNy45Ljkw LjIwMTUwNzA5L2dkYi9ndWlsZS9ndWlsZS1pbnRlcm5hbC5oCTIwMTUtMDctMDkgMTg6MjQ6NDIu MjY1Mzg0MDA1ICswMjAwCiBAQCAtNTYyLDcgKzU2Miw3IEBAIGV4dGVybiB2b2lkIGdkYnNjbV9w cmVzZXJ2ZV92YWx1ZXMKICBleHRlcm4gZW51bSBleHRfbGFuZ19yYyBnZGJzY21fYXBwbHlfdmFs X3ByZXR0eV9wcmludGVyCiAgICAoY29uc3Qgc3RydWN0IGV4dGVuc2lvbl9sYW5ndWFnZV9kZWZu ICosCkBAIC00NTExLDEwICs0NTAxLDEwIEBAIEluZGV4OiBnZGItNy45LjUwLjIwMTUwNTIwL2dk Yi9ndWlsZS9ndWlsZS1pbnRlcm5hbC5oCiAgICAgc3RydWN0IHVpX2ZpbGUgKnN0cmVhbSwgaW50 IHJlY3Vyc2UsCiAgICAgY29uc3Qgc3RydWN0IHZhbHVlICp2YWwsCiAgICAgY29uc3Qgc3RydWN0 IHZhbHVlX3ByaW50X29wdGlvbnMgKm9wdGlvbnMsCi1JbmRleDogZ2RiLTcuOS41MC4yMDE1MDUy MC9nZGIvZ3VpbGUvc2NtLXByZXR0eS1wcmludC5jCitJbmRleDogZ2RiLTcuOS45MC4yMDE1MDcw OS9nZGIvZ3VpbGUvc2NtLXByZXR0eS1wcmludC5jCiA9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gZ2RiLTcuOS41 MC4yMDE1MDUyMC5vcmlnL2dkYi9ndWlsZS9zY20tcHJldHR5LXByaW50LmMJMjAxNS0wNS0zMSAx NzowODo0Ni44NzM1MDY1NzMgKzAyMDAKLSsrKyBnZGItNy45LjUwLjIwMTUwNTIwL2dkYi9ndWls ZS9zY20tcHJldHR5LXByaW50LmMJMjAxNS0wNS0zMSAxNzowOToyMS40NzY3MjQ5NjYgKzAyMDAK Ky0tLSBnZGItNy45LjkwLjIwMTUwNzA5Lm9yaWcvZ2RiL2d1aWxlL3NjbS1wcmV0dHktcHJpbnQu YwkyMDE1LTA3LTA5IDE4OjI0OjM5LjAzMTM1NjQxOCArMDIwMAorKysrIGdkYi03LjkuOTAuMjAx NTA3MDkvZ2RiL2d1aWxlL3NjbS1wcmV0dHktcHJpbnQuYwkyMDE1LTA3LTA5IDE4OjI0OjQyLjI2 NjM4NDAxMyArMDIwMAogQEAgLTk1OCw3ICs5NTgsNyBAQCBwcHNjbV9wcmludF9jaGlsZHJlbiAo U0NNIHByaW50ZXIsIGVudW0KICBlbnVtIGV4dF9sYW5nX3JjCiAgZ2Ric2NtX2FwcGx5X3ZhbF9w cmV0dHlfcHJpbnRlciAoY29uc3Qgc3RydWN0IGV4dGVuc2lvbl9sYW5ndWFnZV9kZWZuICpleHRs YW5nLAoKZGlmZiAtLWdpdCBhL2dkYi11cHN0cmVhbS5wYXRjaCBiL2dkYi11cHN0cmVhbS5wYXRj aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTFkNmY1My4uMDAwMDAwMAotLS0gYS9n ZGItdXBzdHJlYW0ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi1Gcm9tIGRl Y2Y4ZDlhNWY5MTkxMjc2OGQ1MmNkMDc1YjZhMjU2MTdhOTBkMWMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCi1Gcm9tOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4K LURhdGU6IFRodSwgMiBKdWwgMjAxNSAyMjozOTo1NyArMDIwMAotU3ViamVjdDogW1BBVENIXSBG aXggR0NDIGZhbHNlIHdhcm5pbmcKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRl eHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQK LQotQXQgbGVhc3Qgb24KLQlnY2MtNC40LjctMTEuZWw2Lmk2ODYKLQkuL2NvbmZpZ3VyZSAtLWVu YWJsZS02NC1iaXQtYmZkIC0tZW5hYmxlLXRhcmdldHM9YWxsCi1HREIgZG9lcyBub3QgYnVpbGQg ZHVlIHRvOgotCWNjMTogd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKLQlzMzkwLWxp bnV4LXRkZXAuYzogSW4gZnVuY3Rpb24g4oCYczM5MF9oYW5kbGVfYXJn4oCZOgotCXMzOTAtbGlu dXgtdGRlcC5jOjI1NzU6IGVycm9yOiDigJh2YWzigJkgbWF5IGJlIHVzZWQgdW5pbml0aWFsaXpl ZCBpbiB0aGlzIGZ1bmN0aW9uCi0KLWdkYi9DaGFuZ2VMb2cKLTIwMTUtMDctMDIgIEphbiBLcmF0 b2NodmlsICA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4KLQotCUZpeCBHQ0MgZmFsc2Ugd2Fy bmluZy4KLQkqIHMzOTAtbGludXgtdGRlcC5jIChzMzkwX2hhbmRsZV9hcmcpOiBJbml0aWFsaXpl IFZBTC4KLS0tLQotIGdkYi9DaGFuZ2VMb2cgICAgICAgICB8IDUgKysrKysKLSBnZGIvczM5MC1s aW51eC10ZGVwLmMgfCAzICsrLQotIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAx IGRlbGV0aW9uKC0pCi0KLSMjIyBhL2dkYi9DaGFuZ2VMb2cKLSMjIyBiL2dkYi9DaGFuZ2VMb2cK LSMjIC0xLDMgKzEsOCBAQAotKzIwMTUtMDctMDIgIEphbiBLcmF0b2NodmlsICA8amFuLmtyYXRv Y2h2aWxAcmVkaGF0LmNvbT4KLSsKLSsJRml4IEdDQyBmYWxzZSB3YXJuaW5nLgotKwkqIHMzOTAt bGludXgtdGRlcC5jIChzMzkwX2hhbmRsZV9hcmcpOiBJbml0aWFsaXplIFZBTC4KLSsKLSAyMDE1 LTA3LTAyICBZYW8gUWkgIDx5YW8ucWlAbGluYXJvLm9yZz4KLSAKLSAJKiBhYXJjaDY0LWxpbnV4 LW5hdC5jIChhYXJjaDY0X2xpbnV4X2luc2VydF9od19icmVha3BvaW50KTogRml4Ci0tLS0gYS9n ZGIvczM5MC1saW51eC10ZGVwLmMKLSsrKyBiL2dkYi9zMzkwLWxpbnV4LXRkZXAuYwotQEAgLTI1 NzIsNyArMjU3Miw4IEBAIHMzOTBfaGFuZGxlX2FyZyAoc3RydWN0IHMzOTBfYXJnX3N0YXRlICph cywgc3RydWN0IHZhbHVlICphcmcsCi0gICAgIH0KLSAgIGVsc2UgaWYgKHMzOTBfZnVuY3Rpb25f YXJnX2ludGVnZXIgKHR5cGUpICYmIGxlbmd0aCA8PSB3b3JkX3NpemUpCi0gICAgIHsKLS0gICAg ICBVTE9OR0VTVCB2YWw7Ci0rICAgICAgLyogSW5pdGlhbGl6ZSBpdCBqdXN0IHRvIGF2b2lkIGEg R0NDIGZhbHNlIHdhcm5pbmcuICAqLwotKyAgICAgIFVMT05HRVNUIHZhbCA9IDA7Ci0gCi0gICAg ICAgaWYgKHdyaXRlX21vZGUpCi0gCXsKLS0tIAotMi4xLjAKLQoKZGlmZiAtLWdpdCBhL2dkYi5z cGVjIGIvZ2RiLnNwZWMKaW5kZXggMWRlNDJkOC4uMjBjYjRjYyAxMDA2NDQKLS0tIGEvZ2RiLnNw ZWMKKysrIGIvZ2RiLnNwZWMKQEAgLTE4LDE1ICsxOCwxNSBAQCBTdW1tYXJ5OiBBIEdOVSBzb3Vy Y2UtbGV2ZWwgZGVidWdnZXIgZm9yIEMsIEMrKywgRm9ydHJhbiwgR28gYW5kIG90aGVyIGxhbmd1 YWdlcwogTmFtZTogJXs/c2NsX3ByZWZpeH1nZGIKIAogIyBGcmVlemUgaXQgd2hlbiBHREIgZ2V0 cyBicmFuY2hlZAotJWdsb2JhbCBzbmFwc3JjICAgIDIwMTUwNTMxCislZ2xvYmFsIHNuYXBzcmMg ICAgMjAxNTA3MDkKICMgU2VlIHRpbWVzdGFtcCBvZiBzb3VyY2UgZ251bGliIGluc3RhbGxlZCBp bnRvIGdkYi9nbnVsaWIvIC4KICVnbG9iYWwgc25hcGdudWxpYiAyMDEyMTIxMwogJWdsb2JhbCB0 YXJuYW1lIGdkYi0le3ZlcnNpb259Ci1WZXJzaW9uOiA3LjkuNTAuJXtzbmFwc3JjfQorVmVyc2lv bjogNy45LjkwLiV7c25hcHNyY30KIAogIyBUaGUgcmVsZWFzZSBhbHdheXMgY29udGFpbnMgYSBs ZWFkaW5nIHJlc2VydmVkIG51bWJlciwgc3RhcnQgaXQgYXQgMS4KICMgYHVwc3RyZWFtJyBpcyBu b3QgYSBwYXJ0IG9mIGBuYW1lJyB0byBzdGF5IGZ1bGx5IHJwbSBkZXBlbmRlbmNpZXMgY29tcGF0 aWJsZSBmb3IgdGhlIHRlc3RpbmcuCi1SZWxlYXNlOiA1JXs/ZGlzdH0KK1JlbGVhc2U6IDYlez9k aXN0fQogCiBMaWNlbnNlOiBHUEx2MysgYW5kIEdQTHYzKyB3aXRoIGV4Y2VwdGlvbnMgYW5kIEdQ THYyKyBhbmQgR1BMdjIrIHdpdGggZXhjZXB0aW9ucyBhbmQgR1BMKyBhbmQgTEdQTHYyKyBhbmQg QlNEIGFuZCBQdWJsaWMgRG9tYWluIGFuZCBHRkRMCiBHcm91cDogRGV2ZWxvcG1lbnQvRGVidWdn ZXJzCkBAIC0yMTYsNyArMjE2LDcgQEAgUGF0Y2gyMzE6IGdkYi02LjMtYnoyMDI2ODktZXhlYy1m cm9tLXB0aHJlYWQtdGVzdC5wYXRjaAogCiAjIEJhY2twb3J0ZWQgZml4dXBzIHBvc3QgdGhlIHNv dXJjZSB0YXJiYWxsLgogI1hkcm9wOiBKdXN0IGJhY2twb3J0cy4KLVBhdGNoMjMyOiBnZGItdXBz dHJlYW0ucGF0Y2gKKyNQYXRjaDIzMjogZ2RiLXVwc3RyZWFtLnBhdGNoCiAKICMgVGVzdGNhc2Ug Zm9yIFBQQyBQb3dlcjYvREZQIGluc3RydWN0aW9ucyBkaXNhc3NlbWJseSAoQlogMjMwMDAwKS4K ICM9ZmVkb3JhdGVzdCtwcGMKQEAgLTUxMyw5ICs1MTMsNiBAQCBQYXRjaDkyNzogZ2RiLXB5dGhv bi1naWwucGF0Y2gKICMgRml4IGppdC1yZWFkZXIuaCBmb3IgbXVsdGktbGliLgogUGF0Y2g5Nzg6 IGdkYi1qaXQtcmVhZGVyLW11bHRpbGliLnBhdGNoCiAKLSMgRml4IGVudW0gZSBlICdBdHRlbXB0 IHRvIHVzZSBhIHR5cGUgbmFtZSBhcyBhbiBleHByLicgKEtlaXRoIFNlaXR6LCBQUiAxNjI1Myku Ci1QYXRjaDk5MTogZ2RiLWN4eC1lbnVtLXRhZy5wYXRjaAotCiAjIEZpeCAnaW5mbyB0eXBlLXBy aW50ZXJzJyBQeXRob24gZXJyb3IgKENsZW0gRGlja2V5LCBSSCBCWiAxMDg1NTc2KS4KIFBhdGNo OTkyOiBnZGItdHlwZS1wcmludGVycy1lcnJvci5wYXRjaAogCkBAIC03MDAsNyArNjk3LDcgQEAg ZmluZCAtbmFtZSAiKi5pbmZvKiJ8eGFyZ3Mgcm0gLWYKICMgTWF0Y2ggdGhlIEZlZG9yYSdzIHZl cnNpb24gaW5mby4KICVwYXRjaDIgLXAxCiAKLSVwYXRjaDIzMiAtcDEKKyNwYXRjaDIzMiAtcDEK ICVwYXRjaDM0OSAtcDEKICVwYXRjaDg4OCAtcDEKICVwYXRjaDk4MyAtcDEKQEAgLTgwNCw3ICs4 MDEsNiBAQCBmaW5kIC1uYW1lICIqLmluZm8qInx4YXJncyBybSAtZgogJXBhdGNoOTI1IC1wMQog JXBhdGNoOTI3IC1wMQogJXBhdGNoOTc4IC1wMQotJXBhdGNoOTkxIC1wMQogJXBhdGNoOTkyIC1w MQogCiAlcGF0Y2g4NDggLXAxCkBAIC0xMzE0LDYgKzEzMTAsOSBAQCB0aGVuCiBmaQogCiAlY2hh bmdlbG9nCisqIEZyaSBKdWwgMTAgMjAxNSBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxA cmVkaGF0LmNvbT4gLSA3LjkuOTAuMjAxNTA3MDktNi5mYzIzCistIFJlYmFzZSB0byBGU0YgR0RC IDcuOS45MC4yMDE1MDcwOSAoNy4xMCBicmFuY2ggc25hcHNob3QpLgorCiAqIFR1ZSBKdWwgIDcg MjAxNSBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA3LjkuNTAu MjAxNTA1MzEtNS5mYzIzCiAtIFVwZ3JhZGUgbGlic3RkYysrLXYzLXB5dGhvbiB0byByMjI1NTIx IChSSCBCWiAxMjM5MjkwKS4KIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4 IDYyZmViZGQuLmNjMTk0MDEgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAt MSwyICsxLDIgQEAKIDdhZDMyZDM4OTRhYWY5MGQwMGE0MzQzYTczNWMzZTFjICBnZGItbGlic3Rk YysrLXYzLXB5dGhvbi1yMjI1NTIxLnRhci54egotMzk0ZGZiZDg3NjA3Yzc1ZTVjNjFmM2UyODEw NWJlNTQgIGdkYi03LjkuNTAuMjAxNTA1MzEudGFyLnh6CitkYTk1ZTVmZjJmNWY1MGZiOWQ5NTFj MDFjNmY2NTJmZSAgZ2RiLTcuOS45MC4yMDE1MDcwOS50YXIueHoK