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: Jonathan Steffan To: git-commits@fedoraproject.org Subject: [rpms/wivrn] rawhide: Update to 26.6 (fedora#2487858). Date: Thu, 11 Jun 2026 15:02:37 GMT Message-ID: <178119015776.1.12594635390288829707.rpms-wivrn-078b99f733a9@fedoraproject.org> List-ID: X-Git-Repo: rpms/wivrn X-Git-Branch: rawhide X-Git-Rev: 078b99f733a96dff9adfcf5f13d28142f61113e4 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvd2l2cm4KQnJhbmNo IDogcmF3aGlkZQpDb21taXQgOiAwNzhiOTlmNzMzYTk2ZGZmOWFkZmNmNWYxM2QyODE0MmY2MTEx M2U0CkF1dGhvciA6IEpvbmF0aGFuIFN0ZWZmYW4gPGpzdGVmZmFuQGZlZG9yYXByb2plY3Qub3Jn PgpEYXRlICAgOiAyMDI2LTA2LTExVDA5OjAyOjEwLTA2OjAwClN0YXRzICA6ICsxNjYvLTE4MzMg aW4gMTYgZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1z L3dpdnJuL2MvMDc4Yjk5ZjczM2E5NmRmZjlhZGZjZjVmMTNkMjgxNDJmNjExMTNlND9icmFuY2g9 cmF3aGlkZQoKTG9nOgpVcGRhdGUgdG8gMjYuNiAoZmVkb3JhIzI0ODc4NTgpLgoKLS0tCmRpZmYg LS1naXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQppbmRleCBiM2YyOGMxLi5iY2UwMzYxIDEw MDY0NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRpZ25vcmUKQEAgLTI2LDMgKzI2LDUgQEAK IC9tb25hZG8tc3JjLTcyMzY1MmI1NDVhNzk2MDlmOWYwNGNiODlmY2JmODA3ZDlkNjQ1MWEudGFy LmJ6MgogL1dpVlJuLTI2LjIuMi50YXIuZ3oKIC9XaVZSbi12MjYuMi4zLnRhci5negorL1dpVlJu LXYyNi42LnRhci5negorL21vbmFkby1zcmMtMWI1MjZiYjNhMGZmMzI2ZWNkMDVhZjRjMmM1NDE0 MDdmNTNjNmQ0Yi50YXIuYnoyCgpkaWZmIC0tZ2l0IGEvMDAwMS1jLW11bHRpLWVhcmx5LXdha2Ut b2YtY29tcG9zaXRvci5wYXRjaCBiLzAwMDEtYy1tdWx0aS1lYXJseS13YWtlLW9mLWNvbXBvc2l0 b3IucGF0Y2gKaW5kZXggZGFlMzc4OC4uMDNjYjQxZSAxMDA2NDQKLS0tIGEvMDAwMS1jLW11bHRp LWVhcmx5LXdha2Utb2YtY29tcG9zaXRvci5wYXRjaAorKysgYi8wMDAxLWMtbXVsdGktZWFybHkt d2FrZS1vZi1jb21wb3NpdG9yLnBhdGNoCkBAIC0xLDQgKzEsNCBAQAotRnJvbSAyODg0Nzk1Yjdk MzUyZTNlNDUzNDg0NzNhMTc2NjBhNTY4MjYwZDZlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbSBkZTNiNTkyZmMyNmQ3YjI2YjQ4NTBmY2M3OGQ3ZTZiMjExNDdmNzZiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQogRnJvbTogUGF0cmljayBOaWNvbGFzIDxwYXRyaWNrbmljb2xhc0BsYXBv c3RlLm5ldD4KIERhdGU6IFR1ZSwgMjIgT2N0IDIwMjQgMTU6MjM6MTkgKzAyMDAKIFN1YmplY3Q6 IFtQQVRDSCAxLzhdIGMvbXVsdGk6IGVhcmx5IHdha2Ugb2YgY29tcG9zaXRvcgpAQCAtMTAsNyAr MTAsNyBAQCBTdWJqZWN0OiBbUEFUQ0ggMS84XSBjL211bHRpOiBlYXJseSB3YWtlIG9mIGNvbXBv c2l0b3IKICAzIGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0p CiAKIGRpZmYgLS1naXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9jb21w b3NpdG9yLmMgYi9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9jb21wb3NpdG9y LmMKLWluZGV4IDk0Y2VhMTEwZS4uODgzNDdhMDkyIDEwMDY0NAoraW5kZXggMzM2NzVkNDNmLi43 MWM1ZWJmOWUgMTAwNjQ0CiAtLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0 aV9jb21wb3NpdG9yLmMKICsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21wX211bHRp X2NvbXBvc2l0b3IuYwogQEAgLTIzNiw3ICsyMzYsMjEgQEAgd2FpdF9mb3Jfc2NoZWR1bGVkX2Zy ZWUoc3RydWN0IG11bHRpX2NvbXBvc2l0b3IgKm1jKQpAQCAtMzYsMTAgKzM2LDEwIEBAIGluZGV4 IDk0Y2VhMTEwZS4uODgzNDdhMDkyIDEwMDY0NAogIAogIHN0YXRpYyB2b2lkICoKIGRpZmYgLS1n aXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9wcml2YXRlLmggYi9zcmMv eHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9wcml2YXRlLmgKLWluZGV4IDMzNTFkZWZh NC4uZThmMGM4Mjk1IDEwMDY0NAoraW5kZXggNmM3ZWMwNWY4Li41ODg4NzhlMzggMTAwNjQ0CiAt LS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9wcml2YXRlLmgKICsrKyBi L3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21wX211bHRpX3ByaXZhdGUuaAotQEAgLTM1OSw2 ICszNTksMTAgQEAgc3RydWN0IG11bHRpX3N5c3RlbV9jb21wb3NpdG9yCitAQCAtMzY1LDYgKzM2 NSwxMCBAQCBzdHJ1Y3QgbXVsdGlfc3lzdGVtX2NvbXBvc2l0b3IKICAJICovCiAgCXN0cnVjdCBv c19tdXRleCBsaXN0X2FuZF90aW1pbmdfbG9jazsKICAKQEAgLTUxLDE5ICs1MSwxOSBAQCBpbmRl eCAzMzUxZGVmYTQuLmU4ZjBjODI5NSAxMDA2NDQKICAJewogIAkJaW50NjRfdCBwcmVkaWN0ZWRf ZGlzcGxheV90aW1lX25zOwogZGlmZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9j b21wX211bHRpX3N5c3RlbS5jIGIvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlf c3lzdGVtLmMKLWluZGV4IDRkYjkyMzQ1Ny4uODBjYmJiYzI2IDEwMDY0NAoraW5kZXggNWE0ZjM1 YjgxLi5jYmRhMzljMjQgMTAwNjQ0CiAtLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29t cF9tdWx0aV9zeXN0ZW0uYwogKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVs dGlfc3lzdGVtLmMKLUBAIC0yNCw2ICsyNCw4IEBACi0gI2luY2x1ZGUgInV0aWwvdV90cmFjZV9t YXJrZXIuaCIKLSAjaW5jbHVkZSAidXRpbC91X2Rpc3RvcnRpb25fbWVzaC5oIgorQEAgLTE0LDYg KzE0LDggQEAKKyAjaW5jbHVkZSAieHJ0L3hydF9kZWZpbmVzLmgiCisgI2luY2x1ZGUgInhydC94 cnRfc2Vzc2lvbi5oIgogIAogKyNpbmNsdWRlICJtYXRoL21fYXBpLmgiCiArCi0gI2lmZGVmIFhS VF9PU19MSU5VWAotICNpbmNsdWRlICJ1dGlsL3VfbGludXguaCIKLSAjZW5kaWYKLUBAIC0zOTMs MTcgKzM5NSwyNCBAQCBicm9hZGNhc3RfdGltaW5nc190b19wYWNlcnMoc3RydWN0IG11bHRpX3N5 c3RlbV9jb21wb3NpdG9yICptc2MsCisgI2luY2x1ZGUgIm9zL29zX3RpbWUuaCIKKyAjaW5jbHVk ZSAib3Mvb3NfdGhyZWFkaW5nLmgiCisgCitAQCAtNDI2LDE3ICs0MjgsMjQgQEAgYnJvYWRjYXN0 X3RpbWluZ3NfdG9fcGFjZXJzKHN0cnVjdCBtdWx0aV9zeXN0ZW1fY29tcG9zaXRvciAqbXNjLAog IH0KICAKICBzdGF0aWMgdm9pZApAQCAtOTMsNyArOTMsNyBAQCBpbmRleCA0ZGI5MjM0NTcuLjgw Y2JiYmMyNiAxMDA2NDQKICB9CiAgCiAgc3RhdGljIHZvaWQKLUBAIC01MzAsMTAgKzUzOSwxMyBA QCBtdWx0aV9tYWluX2xvb3Aoc3RydWN0IG11bHRpX3N5c3RlbV9jb21wb3NpdG9yICptc2MpCitA QCAtNTYyLDEwICs1NzEsMTMgQEAgbXVsdGlfbWFpbl9sb29wKHN0cnVjdCBtdWx0aV9zeXN0ZW1f Y29tcG9zaXRvciAqbXNjKQogIAkJYnJvYWRjYXN0X3RpbWluZ3NfdG9fY2xpZW50cyhtc2MsIHBy ZWRpY3RlZF9kaXNwbGF5X3RpbWVfbnMpOwogIAogIAkJLy8gTm93IHdlIGNhbiB3YWl0LgpAQCAt MTA5LDcgKzEwOSw3IEBAIGluZGV4IDRkYjkyMzQ1Ny4uODBjYmJiYzI2IDEwMDY0NAogIAogIAkJ Ly8gTm93IHdlIGtub3cgdGhlIGRpZmYsIGJyb2FkY2FzdCB0byBwYWNlcnMuCiAgCQlicm9hZGNh c3RfdGltaW5nc190b19wYWNlcnMobXNjLCBwcmVkaWN0ZWRfZGlzcGxheV90aW1lX25zLCBwcmVk aWN0ZWRfZGlzcGxheV9wZXJpb2RfbnMsIGRpZmZfbnMpOwotQEAgLTcyMSw2ICs3MzMsOCBAQCBz eXN0ZW1fY29tcG9zaXRvcl9kZXN0cm95KHN0cnVjdCB4cnRfc3lzdGVtX2NvbXBvc2l0b3IgKnhz YykKK0BAIC03ODUsNiArNzk3LDggQEAgc3lzdGVtX2NvbXBvc2l0b3JfZGVzdHJveShzdHJ1Y3Qg eHJ0X3N5c3RlbV9jb21wb3NpdG9yICp4c2MpCiAgCXhydF9jb21wX25hdGl2ZV9kZXN0cm95KCZt c2MtPnhjbik7CiAgCiAgCW9zX211dGV4X2Rlc3Ryb3koJm1zYy0+bGlzdF9hbmRfdGltaW5nX2xv Y2spOwpAQCAtMTE4LDggKzExOCw4IEBAIGluZGV4IDRkYjkyMzQ1Ny4uODBjYmJiYzI2IDEwMDY0 NAogIAogIAlmcmVlKG1zYyk7CiAgfQotQEAgLTc3NSw2ICs3ODksOCBAQCBjb21wX211bHRpX2Ny ZWF0ZV9zeXN0ZW1fY29tcG9zaXRvcihzdHJ1Y3QgeHJ0X2NvbXBvc2l0b3JfbmF0aXZlICp4Y24s Ci0gCW1zYy0+c2Vzc2lvbnMuc3RhdGUgPSBkb193YXJtX3N0YXJ0ID8gTVVMVElfU1lTVEVNX1NU QVRFX0lOSVRfV0FSTV9TVEFSVCA6IE1VTFRJX1NZU1RFTV9TVEFURV9TVE9QUEVEOworQEAgLTg0 Myw2ICs4NTcsOCBAQCBjb21wX211bHRpX2NyZWF0ZV9zeXN0ZW1fY29tcG9zaXRvcihzdHJ1Y3Qg eHJ0X2NvbXBvc2l0b3JfbmF0aXZlICp4Y24sCisgCW1zYy0+Z2V0X3ZpZXdfY29uZmlnX2NhbGxi YWNrID0gZ2V0X3ZpZXdfY29uZmlnX2NhbGxiYWNrOwogIAogIAlvc19tdXRleF9pbml0KCZtc2Mt Pmxpc3RfYW5kX3RpbWluZ19sb2NrKTsKICsJb3NfbXV0ZXhfaW5pdCgmbXNjLT53YWtlX211dGV4 KTsKQEAgLTEyOCw1ICsxMjgsNSBAQCBpbmRleCA0ZGI5MjM0NTcuLjgwY2JiYmMyNiAxMDA2NDQK ICAJLy8hIEB0b2RvIE1ha2UgdGhlIGNsaWVudHMgbm90IGdvIGZyb20gSURMRSB0byBSRUFEWSBi ZWZvcmUgd2UgaGF2ZSBjb21wbGV0ZWQgYSBmaXJzdCBmcmFtZS4KICAJLy8gTWFrZSBzdXJlIHRo ZXJlIGlzIGF0IGxlYXN0IHNvbWUgc29ydCBvZiB2YWxpZCBmcmFtZSBkYXRhIGhlcmUuCiAtLSAK LTIuNTMuMAorMi41NC4wCiAKCmRpZmYgLS1naXQgYS8wMDAyLVVzZS1leHRlcm4tc29ja2V0LWZk LnBhdGNoIGIvMDAwMi1Vc2UtZXh0ZXJuLXNvY2tldC1mZC5wYXRjaAppbmRleCBkZTZhYzRhLi44 ZjUwN2UxIDEwMDY0NAotLS0gYS8wMDAyLVVzZS1leHRlcm4tc29ja2V0LWZkLnBhdGNoCisrKyBi LzAwMDItVXNlLWV4dGVybi1zb2NrZXQtZmQucGF0Y2gKQEAgLTEsNCArMSw0IEBACi1Gcm9tIDhk MjI3MjBjOTU3NDE0NmY3MTE1ZjViYTdhYzM5ZjNjNGU0ZjQ4YWUgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCitGcm9tIDIyZDliZjg3ZTlkZDZhMGQ1OTcwMjU4YTZiNmNkNmNhODJjM2JiMjYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCiBGcm9tOiBQYXRyaWNrIE5pY29sYXMgPHBhdHJpY2tuaWNv bGFzQGxhcG9zdGUubmV0PgogRGF0ZTogVHVlLCA4IE9jdCAyMDI0IDIyOjEzOjE1ICswMjAwCiBT dWJqZWN0OiBbUEFUQ0ggMi84XSBVc2UgZXh0ZXJuIHNvY2tldCBmZApAQCAtOCwxMCArOCwxMCBA QCBTdWJqZWN0OiBbUEFUQ0ggMi84XSBVc2UgZXh0ZXJuIHNvY2tldCBmZAogIDEgZmlsZSBjaGFu Z2VkLCA4IGluc2VydGlvbnMoKykKIAogZGlmZiAtLWdpdCBhL3NyYy94cnQvaXBjL3NlcnZlci9p cGNfc2VydmVyX21haW5sb29wX2xpbnV4LmMgYi9zcmMveHJ0L2lwYy9zZXJ2ZXIvaXBjX3NlcnZl cl9tYWlubG9vcF9saW51eC5jCi1pbmRleCAzNmJmM2UzMWQuLmU0MDQ0N2JiMiAxMDA2NDQKK2lu ZGV4IGEwYmVmM2RkZS4uNDUzZGQzOGNhIDEwMDY0NAogLS0tIGEvc3JjL3hydC9pcGMvc2VydmVy L2lwY19zZXJ2ZXJfbWFpbmxvb3BfbGludXguYwogKysrIGIvc3JjL3hydC9pcGMvc2VydmVyL2lw Y19zZXJ2ZXJfbWFpbmxvb3BfbGludXguYwotQEAgLTQ4LDYgKzQ4LDggQEAKK0BAIC01MCw2ICs1 MCw4IEBACiAgI2VuZGlmCiAgCiAgCkBAIC0yMCw3ICsyMCw3IEBAIGluZGV4IDM2YmYzZTMxZC4u ZTQwNDQ3YmIyIDEwMDY0NAogIC8qCiAgICoKICAgKiBTdGF0aWMgZnVuY3Rpb25zLgotQEAgLTU2 LDYgKzU4LDEyIEBACitAQCAtNTgsNiArNjAsMTIgQEAKICBzdGF0aWMgaW50CiAgZ2V0X3N5c3Rl bWRfc29ja2V0KHN0cnVjdCBpcGNfc2VydmVyX21haW5sb29wICptbCwgaW50ICpvdXRfZmQpCiAg ewpAQCAtMzQsNSArMzQsNSBAQCBpbmRleCAzNmJmM2UzMWQuLmU0MDQ0N2JiMiAxMDA2NDQKICAJ Ly8gV2UgbWF5IGhhdmUgYmVlbiBsYXVuY2hlZCB3aXRoIHNvY2tldCBhY3RpdmF0aW9uCiAgCWlu dCBudW1fZmRzID0gc2RfbGlzdGVuX2ZkcygwKTsKIC0tIAotMi41My4wCisyLjU0LjAKIAoKZGlm ZiAtLWdpdCBhLzAwMDMtY2hhbmdlLWVudmlyb25tZW50LWJsZW5kLW1vZGUtc2VsZWN0aW9uLWxv Z2ljLnBhdGNoIGIvMDAwMy1jaGFuZ2UtZW52aXJvbm1lbnQtYmxlbmQtbW9kZS1zZWxlY3Rpb24t bG9naWMucGF0Y2gKaW5kZXggNDg3ZmZmYi4uMjUyOWVhYSAxMDA2NDQKLS0tIGEvMDAwMy1jaGFu Z2UtZW52aXJvbm1lbnQtYmxlbmQtbW9kZS1zZWxlY3Rpb24tbG9naWMucGF0Y2gKKysrIGIvMDAw My1jaGFuZ2UtZW52aXJvbm1lbnQtYmxlbmQtbW9kZS1zZWxlY3Rpb24tbG9naWMucGF0Y2gKQEAg LTEsNCArMSw0IEBACi1Gcm9tIGRjOGM2YjBmZGQwMDI2MzE4Mjc1MjhiMGNkODMxZTc2MmNmNzRj MzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tIDNjNzQ1MGQ4MDBiMGUzZjM1NDQwZjQx ZDNiZmNmNWI1YWJlNmRmZTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCiBGcm9tOiBnYWxpc3Rl ciA8ODU5NzAtZ2FsaXN0ZXJAdXNlcnMubm9yZXBseS5naXRsYWIuZnJlZWRlc2t0b3Aub3JnPgog RGF0ZTogU2F0LCAyMyBOb3YgMjAyNCAwMjo0MjoxMiArMDkwMAogU3ViamVjdDogW1BBVENIIDMv OF0gY2hhbmdlIGVudmlyb25tZW50IGJsZW5kIG1vZGUgc2VsZWN0aW9uIGxvZ2ljCkBAIC04LDEw ICs4LDEwIEBAIFN1YmplY3Q6IFtQQVRDSCAzLzhdIGNoYW5nZSBlbnZpcm9ubWVudCBibGVuZCBt b2RlIHNlbGVjdGlvbiBsb2dpYwogIDEgZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA5 IGRlbGV0aW9ucygtKQogCiBkaWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2Nv bXBfbXVsdGlfc3lzdGVtLmMgYi9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9z eXN0ZW0uYwotaW5kZXggODBjYmJiYzI2Li40YTM5N2Q3ZWMgMTAwNjQ0CitpbmRleCBjYmRhMzlj MjQuLmMwYzZjOWY2MCAxMDA2NDQKIC0tLSBhL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21w X211bHRpX3N5c3RlbS5jCiArKysgYi9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0 aV9zeXN0ZW0uYwotQEAgLTIzMywyMyArMjMzLDMxIEBAIGZpbmRfYWN0aXZlX2JsZW5kX21vZGUo c3RydWN0IG11bHRpX2NvbXBvc2l0b3IgKipvdmVybGF5X3NvcnRlZF9jbGllbnRzLCBzaXplX3QK K0BAIC0yMzEsMjMgKzIzMSwzMSBAQCBmaW5kX2FjdGl2ZV9ibGVuZF9tb2RlKHN0cnVjdCBtdWx0 aV9jb21wb3NpdG9yICoqb3ZlcmxheV9zb3J0ZWRfY2xpZW50cywgc2l6ZV90CiAgCWlmIChvdmVy bGF5X3NvcnRlZF9jbGllbnRzID09IE5VTEwpCiAgCQlyZXR1cm4gWFJUX0JMRU5EX01PREVfT1BB UVVFOwogIApAQCAtNTMsNSArNTMsNSBAQCBpbmRleCA4MGNiYmJjMjYuLjRhMzk3ZDdlYyAxMDA2 NDQKICB9CiAgCiAtLSAKLTIuNTMuMAorMi41NC4wCiAKCmRpZmYgLS1naXQgYS8wMDA0LXN0LW94 ci1mb3J3YXJkLTAtcmVmcmVzaC1yYXRlLnBhdGNoIGIvMDAwNC1zdC1veHItZm9yd2FyZC0wLXJl ZnJlc2gtcmF0ZS5wYXRjaAppbmRleCBiOTk3YWU0Li42YTRmZWNmIDEwMDY0NAotLS0gYS8wMDA0 LXN0LW94ci1mb3J3YXJkLTAtcmVmcmVzaC1yYXRlLnBhdGNoCisrKyBiLzAwMDQtc3Qtb3hyLWZv cndhcmQtMC1yZWZyZXNoLXJhdGUucGF0Y2gKQEAgLTEsNCArMSw0IEBACi1Gcm9tIGY0YjRjMDc3 NDBkY2M1ODQzODM0MDE3MWVjNDczNTcwYjAwMmIzNzkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CitGcm9tIGIyNjg3NmMyOTIwNWYyZDJmYjA3ZmJkYmUwMDlkNTYzNWViMzJiZmQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCiBGcm9tOiBQYXRyaWNrIE5pY29sYXMgPHBhdHJpY2tuaWNvbGFzQGxh cG9zdGUubmV0PgogRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAyMjoxOTo0OCArMDEwMAogU3ViamVj dDogW1BBVENIIDQvOF0gc3Qvb3hyOiBmb3J3YXJkIDAgcmVmcmVzaCByYXRlCkBAIC05LDEwICs5 LDEwIEBAIFN1YmplY3Q6IFtQQVRDSCA0LzhdIHN0L294cjogZm9yd2FyZCAwIHJlZnJlc2ggcmF0 ZQogIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQogCiBk aWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF9jb21wb3NpdG9yLmMgYi9z cmMveHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX2NvbXBvc2l0b3IuYwotaW5kZXggYjZjNDk0N2Jm Li4wZThlZDAyYjcgMTAwNjQ0CitpbmRleCBiNDQyNzE2MjIuLmExZTExMmU4OSAxMDA2NDQKIC0t LSBhL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfY29tcG9zaXRvci5jCiArKysgYi9zcmMv eHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX2NvbXBvc2l0b3IuYwotQEAgLTM3Miw3ICszNzIsNyBA QCBjb21wb3NpdG9yX3JlcXVlc3RfZGlzcGxheV9yZWZyZXNoX3JhdGUoc3RydWN0IHhydF9jb21w b3NpdG9yICp4YywgZmxvYXQgZGlzcGxheQorQEAgLTM5MSw3ICszOTEsNyBAQCBjb21wb3NpdG9y X3JlcXVlc3RfZGlzcGxheV9yZWZyZXNoX3JhdGUoc3RydWN0IHhydF9jb21wb3NpdG9yICp4Yywg ZmxvYXQgZGlzcGxheQogIAlpZiAoYy0+dGFyZ2V0ICYmIGMtPnRhcmdldC0+cmVxdWVzdF9yZWZy ZXNoX3JhdGUpIHsKICAJCXhydF9yZXN1bHRfdCByZXN1bHQgPSBjb21wX3RhcmdldF9yZXF1ZXN0 X3JlZnJlc2hfcmF0ZShjLT50YXJnZXQsIGRpc3BsYXlfcmVmcmVzaF9yYXRlX2h6KTsKICAJCS8v IEFzc3VtZSByZWZyZXNoIHJhdGUgY2hhbmdlIGlzIGltbWVkaWF0ZQpAQCAtMjIsNyArMjIsNyBA QCBpbmRleCBiNmM0OTQ3YmYuLjBlOGVkMDJiNyAxMDA2NDQKICAJCXJldHVybiByZXN1bHQ7CiAg CX0KIGRpZmYgLS1naXQgYS9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfYXBpX3Nlc3Np b24uYyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl9hcGlfc2Vzc2lvbi5jCi1pbmRl eCA1ODdjZGYyOGYuLmIxZjk2ZGY1NCAxMDA2NDQKK2luZGV4IDA5Mjk3Zjg4NS4uOWYzYTdlYmMy IDEwMDY0NAogLS0tIGEvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX2FwaV9zZXNzaW9u LmMKICsrKyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl9hcGlfc2Vzc2lvbi5jCiBA QCAtNDU1LDE1ICs0NTUsMTEgQEAgb3hyX3hyUmVxdWVzdERpc3BsYXlSZWZyZXNoUmF0ZUZCKFhy U2Vzc2lvbiBzZXNzaW9uLCBmbG9hdCBkaXNwbGF5UmVmcmVzaFJhdGUpCkBAIC00Myw1ICs0Myw1 IEBAIGluZGV4IDU4N2NkZjI4Zi4uYjFmOTZkZjU0IDEwMDY0NAogIAkJaWYgKChpbnQpKGRpc3Bs YXlSZWZyZXNoUmF0ZSAqIDEwMC4wZikgPT0gKGludCkoc2Vzcy0+c3lzLT54c3lzYy0+aW5mby5y ZWZyZXNoX3JhdGVzX2h6W2ldICogMTAwLjBmKSkgewogIAkJCWZvdW5kID0gdHJ1ZTsKIC0tIAot Mi41My4wCisyLjU0LjAKIAoKZGlmZiAtLWdpdCBhLzAwMDUtUmVwbGFjZS1kaXN0b3J0aW9uLXdp dGgtZm92ZWF0aW9uLnBhdGNoIGIvMDAwNS1SZXBsYWNlLWRpc3RvcnRpb24td2l0aC1mb3ZlYXRp b24ucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYyZWQzYmEuLjAwMDAwMDAK LS0tIGEvMDAwNS1SZXBsYWNlLWRpc3RvcnRpb24td2l0aC1mb3ZlYXRpb24ucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwxNjQ0ICswLDAgQEAKLUZyb20gNzNmMzI5ZWFiYTFlNDZiZjYyZmY2NTc5 ZTI3Y2QzOWYwZDllNjczMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFBhdHJpY2sg Tmljb2xhcyA8cGF0cmlja25pY29sYXNAbGFwb3N0ZS5uZXQ+Ci1EYXRlOiBXZWQsIDExIFNlcCAy MDI0IDIyOjU2OjI5ICswMjAwCi1TdWJqZWN0OiBbUEFUQ0ggNS84XSBSZXBsYWNlIGRpc3RvcnRp b24gd2l0aCBmb3ZlYXRpb24KLQotLS0tCi0gc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF9y ZW5kZXJlci5jICAgICAgIHwgICA2ICstCi0gc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF90 YXJnZXQuaCAgICAgICAgIHwgICAzICstCi0gc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9DTWFr ZUxpc3RzLnR4dCAgICAgIHwgICAyICstCi0gc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5k ZXJfY29tcHV0ZS5jICAgIHwgNDEwICsrKysrKystLS0tLS0tLS0tLQotIHNyYy94cnQvY29tcG9z aXRvci9yZW5kZXIvcmVuZGVyX2ludGVyZmFjZS5oICB8ICA5NSArKy0tCi0gc3JjL3hydC9jb21w b3NpdG9yL3JlbmRlci9yZW5kZXJfcmVzb3VyY2VzLmMgIHwgMTA2ICsrLS0tCi0gc3JjL3hydC9j b21wb3NpdG9yL3NoYWRlcnMvQ01ha2VMaXN0cy50eHQgICAgIHwgICAyICstCi0gc3JjL3hydC9j b21wb3NpdG9yL3NoYWRlcnMvY2xlYXIuY29tcCAgICAgICAgIHwgICA0ICstCi0gc3JjL3hydC9j b21wb3NpdG9yL3NoYWRlcnMvZGlzdG9ydGlvbi5jb21wICAgIHwgMTgyICsrKystLS0tCi0gLi4u L2NvbXBvc2l0b3IvdXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVyLmMgIHwgICA2ICstCi0gLi4u L2NvbXBvc2l0b3IvdXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVyLmggIHwgICA5ICstCi0gc3Jj L3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXIuaCAgICAgICAgIHwgIDExICstCi0gc3Jj L3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXJfY3MuYyAgICAgIHwgMTEyICsrLS0tCi0g MTMgZmlsZXMgY2hhbmdlZCwgMzU2IGluc2VydGlvbnMoKyksIDU5MiBkZWxldGlvbnMoLSkKLQot ZGlmZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYyBiL3Ny Yy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYwotaW5kZXggZjZjNDAzMDE1Li5m Zjk3MjhhNTkgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX3JlbmRl cmVyLmMKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYwotQEAg LTk4Myw3ICs5ODMsOCBAQCBkaXNwYXRjaF9jb21wdXRlKHN0cnVjdCBjb21wX3JlbmRlcmVyICpy LAotIAotIAkvLyBUYXJnZXQgVnVsa2FuIHJlc291cmNlcy4uCi0gCVZrSW1hZ2UgdGFyZ2V0X2lt YWdlID0gci0+Yy0+dGFyZ2V0LT5pbWFnZXNbci0+YWNxdWlyZWRfYnVmZmVyXS5oYW5kbGU7Ci0t CVZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXcgPSByLT5jLT50YXJnZXQtPmltYWdlc1ty LT5hY3F1aXJlZF9idWZmZXJdLnZpZXc7Ci0rCVZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3Zp ZXdfeSA9IHItPmMtPnRhcmdldC0+aW1hZ2VzW3ItPmFjcXVpcmVkX2J1ZmZlcl0udmlldzsKLSsJ VmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld19jYmNyID0gci0+Yy0+dGFyZ2V0LT5pbWFn ZXNbci0+YWNxdWlyZWRfYnVmZmVyXS52aWV3X2NiY3I7Ci0gCi0gCS8vIFRhcmdldCB2aWV3IGlu Zm9ybWF0aW9uLgotIAlzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdGFyZ2V0X3ZpZXdwb3J0 X2RhdGFzW1hSVF9NQVhfVklFV1NdOwotQEAgLTEwMDAsNyArMTAwMSw4IEBAIGRpc3BhdGNoX2Nv bXB1dGUoc3RydWN0IGNvbXBfcmVuZGVyZXIgKnIsCi0gCSAgICBleWVfcG9zZXMsICAgICAgICAg ICAgICAgICAgICAgICAvLwotIAkgICAgZm92cywgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8KLSAJICAgIHRhcmdldF9pbWFnZSwgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICB0YXJn ZXRfc3RvcmFnZV92aWV3LCAgICAgICAgICAgICAvLwotKwkgICAgdGFyZ2V0X3N0b3JhZ2Vfdmll d195LCAgICAgICAgICAgLy8KLSsJICAgIHRhcmdldF9zdG9yYWdlX3ZpZXdfY2JjciwgICAgICAg IC8vCi0gCSAgICB0YXJnZXRfdmlld3BvcnRfZGF0YXMpOyAgICAgICAgICAvLwotIAotIAkvLyBF dmVyeXRoaW5nIGlzIHJlYWR5LCBzdWJtaXQgdG8gdGhlIHF1ZXVlLgotZGlmZiAtLWdpdCBhL3Ny Yy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfdGFyZ2V0LmggYi9zcmMveHJ0L2NvbXBvc2l0b3Iv bWFpbi9jb21wX3RhcmdldC5oCi1pbmRleCA5NTMwNTIxNTUuLjY4Y2ExNWNiOSAxMDA2NDQKLS0t LSBhL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfdGFyZ2V0LmgKLSsrKyBiL3NyYy94cnQv Y29tcG9zaXRvci9tYWluL2NvbXBfdGFyZ2V0LmgKLUBAIC02Miw3ICs2Miw4IEBAIGVudW0gY29t cF90YXJnZXRfZGlzcGxheV90aW1pbmdfdXNhZ2UKLSBzdHJ1Y3QgY29tcF90YXJnZXRfaW1hZ2UK LSB7Ci0gCVZrSW1hZ2UgaGFuZGxlOwotLQlWa0ltYWdlVmlldyB2aWV3OwotKwlWa0ltYWdlVmll dyB2aWV3OyAvLyBZCi0rCVZrSW1hZ2VWaWV3IHZpZXdfY2JjcjsKLSB9OwotIAotIC8qIQotZGlm ZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvQ01ha2VMaXN0cy50eHQgYi9zcmMv eHJ0L2NvbXBvc2l0b3IvcmVuZGVyL0NNYWtlTGlzdHMudHh0Ci1pbmRleCA4YjAwMTRkMzkuLjYw YWZiMGNlMiAxMDA2NDQKLS0tLSBhL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvQ01ha2VMaXN0 cy50eHQKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvQ01ha2VMaXN0cy50eHQKLUBA IC0xMCw3ICsxMCw3IEBAIGFkZF9saWJyYXJ5KAotIAljb21wX3JlbmRlciBTVEFUSUMKLSAJcmVu ZGVyX2J1ZmZlci5jCi0gCXJlbmRlcl9jb21wdXRlLmMKLS0JcmVuZGVyX2Rpc3RvcnRpb24uYwot KwkjIHJlbmRlci9yZW5kZXJfZGlzdG9ydGlvbi5jIGltcGxlbWVudGVkIGluIHdpdnJuCi0gCXJl bmRlcl9nZnguYwotIAlyZW5kZXJfaW50ZXJmYWNlLmgKLSAJcmVuZGVyX3Jlc291cmNlcy5jCi1k aWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfY29tcHV0ZS5jIGIv c3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfY29tcHV0ZS5jCi1pbmRleCA2MmQ3MTM4 YjkuLjQ0YzNmMGFlZSAxMDA2NDQKLS0tLSBhL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVu ZGVyX2NvbXB1dGUuYwotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfY29t cHV0ZS5jCi1AQCAtODYsOCArODYsMTAgQEAgdXBkYXRlX2NvbXB1dGVfbGF5ZXJfZGVzY3JpcHRv cl9zZXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tSRU5ERVJfTUFYX0lNQUdFU19TSVpFXSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyBzcmNfaW1h Z2Vfdmlld3NbUkVOREVSX01BWF9JTUFHRVNfU0laRV0sCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgaW1hZ2VfY291bnQsCi0tICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRpbmcsCi0tICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRp bmdfeSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0YXJn ZXRfYmluZGluZ19jYmNyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZr SW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X3ksCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB1Ym9fYmluZGluZywKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0J1ZmZlciB1Ym9fYnVmZmVyLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGV2aWNlU2l6ZSB1Ym9fc2l6ZSwK LUBAIC0xMDAsOCArMTAyLDEzIEBAIHVwZGF0ZV9jb21wdXRlX2xheWVyX2Rlc2NyaXB0b3Jfc2V0 KHN0cnVjdCB2a19idW5kbGUgKnZrLAotIAkJc3JjX2ltYWdlX2luZm9baV0uaW1hZ2VMYXlvdXQg PSBWS19JTUFHRV9MQVlPVVRfU0hBREVSX1JFQURfT05MWV9PUFRJTUFMOwotIAl9Ci0gCi0tCVZr RGVzY3JpcHRvckltYWdlSW5mbyB0YXJnZXRfaW1hZ2VfaW5mbyA9IHsKLS0JICAgIC5pbWFnZVZp ZXcgPSB0YXJnZXRfaW1hZ2VfdmlldywKLSsJVmtEZXNjcmlwdG9ySW1hZ2VJbmZvIHRhcmdldF9p bWFnZV9pbmZvX3kgPSB7Ci0rCSAgICAuaW1hZ2VWaWV3ID0gdGFyZ2V0X2ltYWdlX3ZpZXdfeSwK LSsJICAgIC5pbWFnZUxheW91dCA9IFZLX0lNQUdFX0xBWU9VVF9HRU5FUkFMLAotKwl9OwotKwot KwlWa0Rlc2NyaXB0b3JJbWFnZUluZm8gdGFyZ2V0X2ltYWdlX2luZm9fY2JjciA9IHsKLSsJICAg IC5pbWFnZVZpZXcgPSB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotIAkgICAgLmltYWdlTGF5b3V0 ID0gVktfSU1BR0VfTEFZT1VUX0dFTkVSQUwsCi0gCX07Ci0gCi1AQCAtMTExLDcgKzExOCw3IEBA IHVwZGF0ZV9jb21wdXRlX2xheWVyX2Rlc2NyaXB0b3Jfc2V0KHN0cnVjdCB2a19idW5kbGUgKnZr LAotIAkgICAgLnJhbmdlID0gdWJvX3NpemUsCi0gCX07Ci0gCi0tCVZrV3JpdGVEZXNjcmlwdG9y U2V0IHdyaXRlX2Rlc2NyaXB0b3Jfc2V0c1szXSA9IHsKLSsJVmtXcml0ZURlc2NyaXB0b3JTZXQg d3JpdGVfZGVzY3JpcHRvcl9zZXRzWzRdID0gewotIAkgICAgewotIAkgICAgICAgIC5zVHlwZSA9 IFZLX1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VULAotIAkgICAgICAgIC5kc3RT ZXQgPSBkZXNjcmlwdG9yX3NldCwKLUBAIC0xMjMsMTAgKzEzMCwxMCBAQCB1cGRhdGVfY29tcHV0 ZV9sYXllcl9kZXNjcmlwdG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAgIHsKLSAJ ICAgICAgICAuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9XUklURV9ERVNDUklQVE9SX1NFVCwK LSAJICAgICAgICAuZHN0U2V0ID0gZGVzY3JpcHRvcl9zZXQsCi0tCSAgICAgICAgLmRzdEJpbmRp bmcgPSB0YXJnZXRfYmluZGluZywKLSsJICAgICAgICAuZHN0QmluZGluZyA9IHRhcmdldF9iaW5k aW5nX3ksCi0gCSAgICAgICAgLmRlc2NyaXB0b3JDb3VudCA9IDEsCi0gCSAgICAgICAgLmRlc2Ny aXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1NUT1JBR0VfSU1BR0UsCi0tCSAgICAgICAg LnBJbWFnZUluZm8gPSAmdGFyZ2V0X2ltYWdlX2luZm8sCi0rCSAgICAgICAgLnBJbWFnZUluZm8g PSAmdGFyZ2V0X2ltYWdlX2luZm9feSwKLSAJICAgIH0sCi0gCSAgICB7Ci0gCSAgICAgICAgLnNU eXBlID0gVktfU1RSVUNUVVJFX1RZUEVfV1JJVEVfREVTQ1JJUFRPUl9TRVQsCi1AQCAtMTM2LDYg KzE0MywxNCBAQCB1cGRhdGVfY29tcHV0ZV9sYXllcl9kZXNjcmlwdG9yX3NldChzdHJ1Y3Qgdmtf YnVuZGxlICp2aywKLSAJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9SX1RZ UEVfVU5JRk9STV9CVUZGRVIsCi0gCSAgICAgICAgLnBCdWZmZXJJbmZvID0gJmJ1ZmZlcl9pbmZv LAotIAkgICAgfSwKLSsJICAgIHsKLSsJICAgICAgICAuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQ RV9XUklURV9ERVNDUklQVE9SX1NFVCwKLSsJICAgICAgICAuZHN0U2V0ID0gZGVzY3JpcHRvcl9z ZXQsCi0rCSAgICAgICAgLmRzdEJpbmRpbmcgPSB0YXJnZXRfYmluZGluZ19jYmNyLAotKwkgICAg ICAgIC5kZXNjcmlwdG9yQ291bnQgPSAxLAotKwkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZL X0RFU0NSSVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotKwkgICAgICAgIC5wSW1hZ2VJbmZvID0g JnRhcmdldF9pbWFnZV9pbmZvX2NiY3IsCi0rCSAgICB9LAotIAl9OwotIAotIAl2ay0+dmtVcGRh dGVEZXNjcmlwdG9yU2V0cyggICAgICAgICAgICAvLwotQEAgLTE1MiwxMCArMTY3LDEyIEBAIHVw ZGF0ZV9jb21wdXRlX3NoYXJlZF9kZXNjcmlwdG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19zYW1w bGVyc1tYUlRfTUFYX1ZJRVdTXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkaXN0b3J0aW9uX2JpbmRpbmcs Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrU2FtcGxlciBkaXN0b3J0 aW9uX3NhbXBsZXJzWzMgKiBYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgZGlzdG9ydGlvbl9pbWFnZV92aWV3c1szICogWFJU X01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz Ml90IHRhcmdldF9iaW5kaW5nLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIGZvdmVhdGlvbl9zaXplLAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBWa0J1ZmZlciBmb3ZlYXRpb25fYnVmZmVyLAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0YXJnZXRfYmluZGlu Z195LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0YXJn ZXRfYmluZGluZ19jYmNyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBW a0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB1Ym9fYmluZGluZywKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtCdWZmZXIgdWJvX2J1ZmZlciwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXZpY2VTaXplIHVib19z aXplLAotQEAgLTE2OSwxNSArMTg2LDE5IEBAIHVwZGF0ZV9jb21wdXRlX3NoYXJlZF9kZXNjcmlw dG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJCXNyY19pbWFnZV9pbmZvW2ldLmltYWdl TGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX1NIQURFUl9SRUFEX09OTFlfT1BUSU1BTDsKLSAJfQot IAotLQlWa0Rlc2NyaXB0b3JJbWFnZUluZm8gZGlzdG9ydGlvbl9pbWFnZV9pbmZvWzMgKiBYUlRf TUFYX1ZJRVdTXTsKLS0JZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IDMgKiB2aWV3X2NvdW50OyAr K2kpIHsKLS0JCWRpc3RvcnRpb25faW1hZ2VfaW5mb1tpXS5zYW1wbGVyID0gZGlzdG9ydGlvbl9z YW1wbGVyc1tpXTsKLS0JCWRpc3RvcnRpb25faW1hZ2VfaW5mb1tpXS5pbWFnZVZpZXcgPSBkaXN0 b3J0aW9uX2ltYWdlX3ZpZXdzW2ldOwotLQkJZGlzdG9ydGlvbl9pbWFnZV9pbmZvW2ldLmltYWdl TGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX1NIQURFUl9SRUFEX09OTFlfT1BUSU1BTDsKLS0JfQot KwlWa0Rlc2NyaXB0b3JCdWZmZXJJbmZvIGZvdmVhdGlvbl9idWZmZXJfaW5mbyA9IHsKLSsJICAg IC5idWZmZXIgPSBmb3ZlYXRpb25fYnVmZmVyLAotKwkgICAgLm9mZnNldCA9IDAsCi0rCSAgICAu cmFuZ2UgPSBmb3ZlYXRpb25fc2l6ZSwKLSsJfTsKLSAKLS0JVmtEZXNjcmlwdG9ySW1hZ2VJbmZv IHRhcmdldF9pbWFnZV9pbmZvID0gewotLQkgICAgLmltYWdlVmlldyA9IHRhcmdldF9pbWFnZV92 aWV3LAotKwlWa0Rlc2NyaXB0b3JJbWFnZUluZm8gdGFyZ2V0X2ltYWdlX3lfaW5mbyA9IHsKLSsJ ICAgIC5pbWFnZVZpZXcgPSB0YXJnZXRfaW1hZ2Vfdmlld195LAotKwkgICAgLmltYWdlTGF5b3V0 ID0gVktfSU1BR0VfTEFZT1VUX0dFTkVSQUwsCi0rCX07Ci0rCi0rCVZrRGVzY3JpcHRvckltYWdl SW5mbyB0YXJnZXRfaW1hZ2VfY2Jjcl9pbmZvID0gewotKwkgICAgLmltYWdlVmlldyA9IHRhcmdl dF9pbWFnZV92aWV3X2NiY3IsCi0gCSAgICAuaW1hZ2VMYXlvdXQgPSBWS19JTUFHRV9MQVlPVVRf R0VORVJBTCwKLSAJfTsKLSAKLUBAIC0xODcsNyArMjA4LDcgQEAgdXBkYXRlX2NvbXB1dGVfc2hh cmVkX2Rlc2NyaXB0b3Jfc2V0KHN0cnVjdCB2a19idW5kbGUgKnZrLAotIAkgICAgLnJhbmdlID0g dWJvX3NpemUsCi0gCX07Ci0gCi0tCVZrV3JpdGVEZXNjcmlwdG9yU2V0IHdyaXRlX2Rlc2NyaXB0 b3Jfc2V0c1s0XSA9IHsKLSsJVmtXcml0ZURlc2NyaXB0b3JTZXQgd3JpdGVfZGVzY3JpcHRvcl9z ZXRzWzVdID0gewotIAkgICAgewotIAkgICAgICAgIC5zVHlwZSA9IFZLX1NUUlVDVFVSRV9UWVBF X1dSSVRFX0RFU0NSSVBUT1JfU0VULAotIAkgICAgICAgIC5kc3RTZXQgPSBkZXNjcmlwdG9yX3Nl dCwKLUBAIC0yMDAsMTcgKzIyMSwxNyBAQCB1cGRhdGVfY29tcHV0ZV9zaGFyZWRfZGVzY3JpcHRv cl9zZXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICAgICAgLnNUeXBlID0gVktfU1RSVUNU VVJFX1RZUEVfV1JJVEVfREVTQ1JJUFRPUl9TRVQsCi0gCSAgICAgICAgLmRzdFNldCA9IGRlc2Ny aXB0b3Jfc2V0LAotIAkgICAgICAgIC5kc3RCaW5kaW5nID0gZGlzdG9ydGlvbl9iaW5kaW5nLAot LQkgICAgICAgIC5kZXNjcmlwdG9yQ291bnQgPSAzICogdmlld19jb3VudCwKLS0JICAgICAgICAu ZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9SX1RZUEVfQ09NQklORURfSU1BR0VfU0FNUExF UiwKLS0JICAgICAgICAucEltYWdlSW5mbyA9IGRpc3RvcnRpb25faW1hZ2VfaW5mbywKLSsJICAg ICAgICAuZGVzY3JpcHRvckNvdW50ID0gMSwKLSsJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBW S19ERVNDUklQVE9SX1RZUEVfU1RPUkFHRV9CVUZGRVIsCi0rCSAgICAgICAgLnBCdWZmZXJJbmZv ID0gJmZvdmVhdGlvbl9idWZmZXJfaW5mbywKLSAJICAgIH0sCi0gCSAgICB7Ci0gCSAgICAgICAg LnNUeXBlID0gVktfU1RSVUNUVVJFX1RZUEVfV1JJVEVfREVTQ1JJUFRPUl9TRVQsCi0gCSAgICAg ICAgLmRzdFNldCA9IGRlc2NyaXB0b3Jfc2V0LAotLQkgICAgICAgIC5kc3RCaW5kaW5nID0gdGFy Z2V0X2JpbmRpbmcsCi0rCSAgICAgICAgLmRzdEJpbmRpbmcgPSB0YXJnZXRfYmluZGluZ195LAot IAkgICAgICAgIC5kZXNjcmlwdG9yQ291bnQgPSAxLAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlw ZSA9IFZLX0RFU0NSSVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotLQkgICAgICAgIC5wSW1hZ2VJ bmZvID0gJnRhcmdldF9pbWFnZV9pbmZvLAotKwkgICAgICAgIC5wSW1hZ2VJbmZvID0gJnRhcmdl dF9pbWFnZV95X2luZm8sCi0gCSAgICB9LAotIAkgICAgewotIAkgICAgICAgIC5zVHlwZSA9IFZL X1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VULAotQEAgLTIyMCw2ICsyNDEsMTQg QEAgdXBkYXRlX2NvbXB1dGVfc2hhcmVkX2Rlc2NyaXB0b3Jfc2V0KHN0cnVjdCB2a19idW5kbGUg KnZrLAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NSSVBUT1JfVFlQRV9VTklG T1JNX0JVRkZFUiwKLSAJICAgICAgICAucEJ1ZmZlckluZm8gPSAmYnVmZmVyX2luZm8sCi0gCSAg ICB9LAotKwkgICAgewotKwkgICAgICAgIC5zVHlwZSA9IFZLX1NUUlVDVFVSRV9UWVBFX1dSSVRF X0RFU0NSSVBUT1JfU0VULAotKwkgICAgICAgIC5kc3RTZXQgPSBkZXNjcmlwdG9yX3NldCwKLSsJ ICAgICAgICAuZHN0QmluZGluZyA9IHRhcmdldF9iaW5kaW5nX2NiY3IsCi0rCSAgICAgICAgLmRl c2NyaXB0b3JDb3VudCA9IDEsCi0rCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJ UFRPUl9UWVBFX1NUT1JBR0VfSU1BR0UsCi0rCSAgICAgICAgLnBJbWFnZUluZm8gPSAmdGFyZ2V0 X2ltYWdlX2NiY3JfaW5mbywKLSsJICAgIH0sCi0gCX07Ci0gCi0gCXZrLT52a1VwZGF0ZURlc2Ny aXB0b3JTZXRzKCAgICAgICAgICAgIC8vCi1AQCAtMjc4LDEyOSArMzA3LDYgQEAgdXBkYXRlX2Nv bXB1dGVfZGVzY3JpcHRvcl9zZXRfdGFyZ2V0KHN0cnVjdCB2a19idW5kbGUgKnZrLAotIAkgICAg TlVMTCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwRGVzY3JpcHRvckNvcGllcwot IH0KLSAKLS1zdGF0aWMgdm9pZAotLWRpc3BhdGNoX3Byb2plY3RfcGlwZWxpbmUoc3RydWN0IHJl bmRlcl9jb21wdXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBs ZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qgc3JjX25v cm1fcmVjdHNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBWa0lt YWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3 IHRhcmdldF9pbWFnZV92aWV3LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ry dWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgVmtQaXBlbGluZSBwaXBlbGluZSkKLS17Ci0tCXN0cnVjdCB2a19i dW5kbGUgKnZrID0gdmtfZnJvbV9yZW5kZXIocmVuZGVyKTsKLS0Jc3RydWN0IHJlbmRlcl9yZXNv dXJjZXMgKnIgPSByZW5kZXItPnI7Ci0tCi0tCi0tCS8qCi0tCSAqIFVCTwotLQkgKi8KLS0KLS0J c3RydWN0IHJlbmRlcl9jb21wdXRlX2Rpc3RvcnRpb25fdWJvX2RhdGEgKmRhdGEgPQotLQkgICAg KHN0cnVjdCByZW5kZXJfY29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhICopci0+Y29tcHV0ZS5k aXN0b3J0aW9uLnViby5tYXBwZWQ7Ci0tCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCByZW5kZXIt PnItPnZpZXdfY291bnQ7ICsraSkgewotLQkJZGF0YS0+dmlld3NbaV0gPSB2aWV3c1tpXTsKLS0J CWRhdGEtPnBvc3RfdHJhbnNmb3Jtc1tpXSA9IHNyY19ub3JtX3JlY3RzW2ldOwotLQl9Ci0tCi0t Ci0tCS8qCi0tCSAqIFNvdXJjZSwgdGFyZ2V0IGFuZCBkaXN0b3J0aW9uIGltYWdlcy4KLS0JICov Ci0tCi0tCVZrSW1hZ2VTdWJyZXNvdXJjZVJhbmdlIHN1YnJlc291cmNlX3JhbmdlID0gewotLQkg ICAgLmFzcGVjdE1hc2sgPSBWS19JTUFHRV9BU1BFQ1RfQ09MT1JfQklULAotLQkgICAgLmJhc2VN aXBMZXZlbCA9IDAsCi0tCSAgICAubGV2ZWxDb3VudCA9IFZLX1JFTUFJTklOR19NSVBfTEVWRUxT LAotLQkgICAgLmJhc2VBcnJheUxheWVyID0gMCwKLS0JICAgIC5sYXllckNvdW50ID0gVktfUkVN QUlOSU5HX0FSUkFZX0xBWUVSUywKLS0JfTsKLS0KLS0JdmtfY21kX2ltYWdlX2JhcnJpZXJfZ3B1 X2xvY2tlZCggLy8KLS0JICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAg IHItPmNtZCwgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIHRhcmdldF9pbWFnZSwgICAg ICAgICAgICAgICAgLy8KLS0JICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J ICAgIFZLX0FDQ0VTU19TSEFERVJfV1JJVEVfQklULCAgLy8KLS0JICAgIFZLX0lNQUdFX0xBWU9V VF9VTkRFRklORUQsICAgLy8KLS0JICAgIFZLX0lNQUdFX0xBWU9VVF9HRU5FUkFMLCAgICAgLy8K LS0JICAgIHN1YnJlc291cmNlX3JhbmdlKTsgICAgICAgICAgLy8KLS0KLS0JVmtTYW1wbGVyIHNh bXBsZXIgPSByLT5zYW1wbGVycy5jbGFtcF90b19lZGdlOwotLQlWa1NhbXBsZXIgZGlzdG9ydGlv bl9zYW1wbGVyc1szICogWFJUX01BWF9WSUVXU107Ci0tCWZvciAodWludDMyX3QgaSA9IDA7IGkg PCByZW5kZXItPnItPnZpZXdfY291bnQ7ICsraSkgewotLQkJZGlzdG9ydGlvbl9zYW1wbGVyc1sz ICogaSArIDBdID0gc2FtcGxlcjsKLS0JCWRpc3RvcnRpb25fc2FtcGxlcnNbMyAqIGkgKyAxXSA9 IHNhbXBsZXI7Ci0tCQlkaXN0b3J0aW9uX3NhbXBsZXJzWzMgKiBpICsgMl0gPSBzYW1wbGVyOwot LQl9Ci0tCi0tCXVwZGF0ZV9jb21wdXRlX3NoYXJlZF9kZXNjcmlwdG9yX3NldCggLy8KLS0JICAg IHZrLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLwotLQkgICAgci0+Y29tcHV0ZS5z cmNfYmluZGluZywgICAgICAgICAgIC8vCi0tCSAgICBzcmNfc2FtcGxlcnMsICAgICAgICAgICAg ICAgICAgICAgLy8KLS0JICAgIHNyY19pbWFnZV92aWV3cywgICAgICAgICAgICAgICAgICAvLwot LQkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uX2JpbmRpbmcsICAgIC8vCi0tCSAgICBkaXN0b3J0 aW9uX3NhbXBsZXJzLCAgICAgICAgICAgICAgLy8KLS0JICAgIHItPmRpc3RvcnRpb24uaW1hZ2Vf dmlld3MsICAgICAgICAvLwotLQkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZywgICAgICAg IC8vCi0tCSAgICB0YXJnZXRfaW1hZ2VfdmlldywgICAgICAgICAgICAgICAgLy8KLS0JICAgIHIt PmNvbXB1dGUudWJvX2JpbmRpbmcsICAgICAgICAgICAvLwotLQkgICAgci0+Y29tcHV0ZS5kaXN0 b3J0aW9uLnViby5idWZmZXIsIC8vCi0tCSAgICBWS19XSE9MRV9TSVpFLCAgICAgICAgICAgICAg ICAgICAgLy8KLS0JICAgIHJlbmRlci0+c2hhcmVkX2Rlc2NyaXB0b3Jfc2V0LCAgICAvLwotLQkg ICAgcmVuZGVyLT5yLT52aWV3X2NvdW50KTsgICAgICAgICAgIC8vCi0tCi0tCXZrLT52a0NtZEJp bmRQaXBlbGluZSggICAgICAgICAgICAgIC8vCi0tCSAgICByLT5jbWQsICAgICAgICAgICAgICAg ICAgICAgICAgIC8vCi0tCSAgICBWS19QSVBFTElORV9CSU5EX1BPSU5UX0NPTVBVVEUsIC8vIHBp cGVsaW5lQmluZFBvaW50Ci0tCSAgICBwaXBlbGluZSk7ICAgICAgICAgICAgICAgICAgICAgIC8v IHBpcGVsaW5lCi0tCi0tCXZrLT52a0NtZEJpbmREZXNjcmlwdG9yU2V0cyggICAgICAgICAgICAg ICAvLwotLQkgICAgci0+Y21kLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J ICAgIFZLX1BJUEVMSU5FX0JJTkRfUE9JTlRfQ09NUFVURSwgICAgICAgIC8vIHBpcGVsaW5lQmlu ZFBvaW50Ci0tCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmVfbGF5b3V0LCAvLyBs YXlvdXQKLS0JICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZp cnN0U2V0Ci0tCSAgICAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBk ZXNjcmlwdG9yU2V0Q291bnQKLS0JICAgICZyZW5kZXItPnNoYXJlZF9kZXNjcmlwdG9yX3NldCwg ICAgICAgIC8vIHBEZXNjcmlwdG9yU2V0cwotLQkgICAgMCwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgLy8gZHluYW1pY09mZnNldENvdW50Ci0tCSAgICBOVUxMKTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwRHluYW1pY09mZnNldHMKLS0KLS0KLS0JdWlu dDMyX3QgdyA9IDAsIGggPSAwOwotLQljYWxjX2Rpc3BhdGNoX2RpbXNfdmlld3Modmlld3MsIHJl bmRlci0+ci0+dmlld19jb3VudCwgJncsICZoKTsKLS0JYXNzZXJ0KHcgIT0gMCAmJiBoICE9IDAp OwotLQotLQl2ay0+dmtDbWREaXNwYXRjaCggLy8KLS0JICAgIHItPmNtZCwgICAgICAgIC8vCi0t CSAgICB3LCAgICAgICAgICAgICAvLyBncm91cENvdW50WAotLQkgICAgaCwgICAgICAgICAgICAg Ly8gZ3JvdXBDb3VudFkKLS0JICAgIDIpOyAgICAgICAgICAgIC8vIGdyb3VwQ291bnRaCi0tCi0t CVZrSW1hZ2VNZW1vcnlCYXJyaWVyIG1lbW9yeUJhcnJpZXIgPSB7Ci0tCSAgICAuc1R5cGUgPSBW S19TVFJVQ1RVUkVfVFlQRV9JTUFHRV9NRU1PUllfQkFSUklFUiwKLS0JICAgIC5zcmNBY2Nlc3NN YXNrID0gVktfQUNDRVNTX1NIQURFUl9XUklURV9CSVQsCi0tCSAgICAuZHN0QWNjZXNzTWFzayA9 IFZLX0FDQ0VTU19NRU1PUllfUkVBRF9CSVQsCi0tCSAgICAub2xkTGF5b3V0ID0gVktfSU1BR0Vf TEFZT1VUX0dFTkVSQUwsCi0tCSAgICAubmV3TGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX1BSRVNF TlRfU1JDX0tIUiwKLS0JICAgIC5zcmNRdWV1ZUZhbWlseUluZGV4ID0gVktfUVVFVUVfRkFNSUxZ X0lHTk9SRUQsCi0tCSAgICAuZHN0UXVldWVGYW1pbHlJbmRleCA9IFZLX1FVRVVFX0ZBTUlMWV9J R05PUkVELAotLQkgICAgLmltYWdlID0gdGFyZ2V0X2ltYWdlLAotLQkgICAgLnN1YnJlc291cmNl UmFuZ2UgPSBzdWJyZXNvdXJjZV9yYW5nZSwKLS0JfTsKLS0KLS0JdmstPnZrQ21kUGlwZWxpbmVC YXJyaWVyKCAgICAgICAgICAgICAgICAgLy8KLS0JICAgIHItPmNtZCwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgLy8KLS0JICAgIFZLX1BJUEVMSU5FX1NUQUdFX0NPTVBVVEVfU0hBREVS X0JJVCwgLy8KLS0JICAgIFZLX1BJUEVMSU5FX1NUQUdFX1RPUF9PRl9QSVBFX0JJVCwgICAgLy8K LS0JICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIDAs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIE5VTEwsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLy8KLS0JICAgIDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8KLS0JICAgICZtZW1vcnlCYXJyaWVyKTsgICAgICAgICAgICAgICAgICAgICAgLy8KLS19Ci0t Ci0gCi0gLyoKLSAgKgotQEAgLTUxOCw3ICs0MjQsOCBAQCByZW5kZXJfY29tcHV0ZV9sYXllcnMo c3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgIFZr U2FtcGxlciBzcmNfc2FtcGxlcnNbUkVOREVSX01BWF9JTUFHRVNfU0laRV0sCi0gICAgICAgICAg ICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tSRU5ERVJfTUFYX0lNQUdF U19TSVpFXSwKLSAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbnVtX3NyY3MsCi0tICAg ICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3LAotKyAgICAg ICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAg ICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgKnZp ZXcsCi0gICAgICAgICAgICAgICAgICAgICAgIGJvb2wgZG9fdGltZXdhcnApCi0gewotQEAgLTUz OCw4ICs0NDUsMTAgQEAgcmVuZGVyX2NvbXB1dGVfbGF5ZXJzKHN0cnVjdCByZW5kZXJfY29tcHV0 ZSAqcmVuZGVyLAotIAkgICAgc3JjX3NhbXBsZXJzLCAgICAgICAgICAgICAgICAgICAgLy8KLSAJ ICAgIHNyY19pbWFnZV92aWV3cywgICAgICAgICAgICAgICAgIC8vCi0gCSAgICBudW1fc3Jjcywg ICAgICAgICAgICAgICAgICAgICAgICAvLwotLQkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGlu ZywgICAgICAgLy8KLS0JICAgIHRhcmdldF9pbWFnZV92aWV3LCAgICAgICAgICAgICAgIC8vCi0r CSAgICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3ksICAgICAvLwotKwkgICAgci0+Y29tcHV0 ZS50YXJnZXRfYmluZGluZ19jYmNyLCAgLy8KLSsJICAgIHRhcmdldF9pbWFnZV92aWV3X3ksICAg ICAgICAgICAgIC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLCAgICAgICAgICAvLwot IAkgICAgci0+Y29tcHV0ZS51Ym9fYmluZGluZywgICAgICAgICAgLy8KLSAJICAgIHVibywgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0gCSAgICBWS19XSE9MRV9TSVpFLCAgICAgICAg ICAgICAgICAgICAvLwotQEAgLTU3NCwxOSArNDgzLDE4IEBAIHJlbmRlcl9jb21wdXRlX2xheWVy cyhzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSB9Ci0gCi0gdm9pZAotLXJlbmRlcl9j b21wdXRlX3Byb2plY3Rpb25fdGltZXdhcnAoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIs Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgc3JjX3NhbXBs ZXJzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg VmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qg c3JjX25vcm1fcmVjdHNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X3Bvc2Ugc3JjX3Bvc2VzW1hSVF9NQVhfVklFV1Nd LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9m b3Ygc3JjX2ZvdnNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRfYmVnaW5bWFJU X01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz dHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRfZW5kW1hSVF9NQVhfVklFV1NdLAotLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1h Z2VfdmlldywKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVj dCByZW5kZXJfdmlld3BvcnRfZGF0YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSkKLStyZW5kZXJfY29t cHV0ZV9wcm9qZWN0aW9uKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tY UlRfTUFYX1ZJRVdTXSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4 cnRfbm9ybWFsaXplZF9yZWN0IHNyY19ub3JtX3JlY3RzW1hSVF9NQVhfVklFV1NdLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0 YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSkKLSB7Ci0gCWFzc2VydChyZW5kZXItPnIgIT0gTlVMTCk7 Ci0rCi0rCXN0cnVjdCB2a19idW5kbGUgKnZrID0gdmtfZnJvbV9yZW5kZXIocmVuZGVyKTsKLSAJ c3RydWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIgPSByZW5kZXItPnI7Ci0gCi0gCi1AQCAtNTk0LDEw OCArNTAyLDExMCBAQCByZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uX3RpbWV3YXJwKHN0cnVjdCBy ZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAkgKiBVQk8KLSAJICovCi0gCi0tCXN0cnVjdCB4cnRf bWF0cml4XzR4NCB0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfYmVnaW5bWFJUX01BWF9WSUVXU107 Ci0tCXN0cnVjdCB4cnRfbWF0cml4XzR4NCB0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfZW5kW1hS VF9NQVhfVklFV1NdOwotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52aWV3 X2NvdW50OyArK2kpIHsKLS0JCXJlbmRlcl9jYWxjX3RpbWVfd2FycF9tYXRyaXgoICAgICAgICAg ICAgLy8KLS0JCSAgICAmc3JjX3Bvc2VzW2ldLCAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J CSAgICAmc3JjX2ZvdnNbaV0sICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICAmbmV3 X3Bvc2VzX3NjYW5vdXRfYmVnaW5baV0sICAgICAgICAgLy8KLS0JCSAgICAmdGltZV93YXJwX21h dHJpeF9zY2Fub3V0X2JlZ2luW2ldKTsgLy8KLS0KLS0JCXJlbmRlcl9jYWxjX3RpbWVfd2FycF9t YXRyaXgoICAgICAgICAgIC8vCi0tCQkgICAgJnNyY19wb3Nlc1tpXSwgICAgICAgICAgICAgICAg ICAgICAvLwotLQkJICAgICZzcmNfZm92c1tpXSwgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J CSAgICAmbmV3X3Bvc2VzX3NjYW5vdXRfZW5kW2ldLCAgICAgICAgIC8vCi0tCQkgICAgJnRpbWVf d2FycF9tYXRyaXhfc2Nhbm91dF9lbmRbaV0pOyAvLwotLQl9Ci0tCi0gCXN0cnVjdCByZW5kZXJf Y29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhICpkYXRhID0KLSAJICAgIChzdHJ1Y3QgcmVuZGVy X2NvbXB1dGVfZGlzdG9ydGlvbl91Ym9fZGF0YSAqKXItPmNvbXB1dGUuZGlzdG9ydGlvbi51Ym8u bWFwcGVkOwotIAlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52aWV3X2NvdW50 OyArK2kpIHsKLSAJCWRhdGEtPnZpZXdzW2ldID0gdmlld3NbaV07Ci0tCQlkYXRhLT5wcmVfdHJh bnNmb3Jtc1tpXSA9IHItPmRpc3RvcnRpb24udXZfdG9fdGFuYW5nbGVbaV07Ci0tCQlkYXRhLT50 cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9iZWdpbltpXSA9IHRpbWVfd2FycF9tYXRyaXhfc2Nh bm91dF9iZWdpbltpXTsKLS0JCWRhdGEtPnRyYW5zZm9ybV90aW1ld2FycF9zY2Fub3V0X2VuZFtp XSA9IHRpbWVfd2FycF9tYXRyaXhfc2Nhbm91dF9lbmRbaV07Ci0gCQlkYXRhLT5wb3N0X3RyYW5z Zm9ybXNbaV0gPSBzcmNfbm9ybV9yZWN0c1tpXTsKLSAJfQotIAotLQlkaXNwYXRjaF9wcm9qZWN0 X3BpcGVsaW5lKHJlbmRlciwgc3JjX3NhbXBsZXJzLCBzcmNfaW1hZ2Vfdmlld3MsIHNyY19ub3Jt X3JlY3RzLCB0YXJnZXRfaW1hZ2UsCi0tCSAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0 X2ltYWdlX3ZpZXcsIHZpZXdzLCByLT5jb21wdXRlLmRpc3RvcnRpb24udGltZXdhcnBfcGlwZWxp bmUpOwotLX0KLSAKLSsJLyoKLSsJICogU291cmNlLCB0YXJnZXQgYW5kIGRpc3RvcnRpb24gaW1h Z2VzLgotKwkgKi8KLSAKLS0vKgotLSAqIFRoaXMgZnVuY3Rpb24gaXMgaW50ZW5kZWQgdG8gYmUg dXNlZCBvbiBjb250ZW50IGFscmVhZHkgdGltZXdhcnBlZCB0byBuZXdfcG9zZXNfc2Nhbm91dF9i ZWdpbi4KLS0gKiBJdCBwZXJmb3JtcyBvbmx5IHRoZSB0aW1ld2FycCBuZXNzY2FyeSB0byBjb21w ZW5zYXRlIGZvciB0aGUgdGltZSBkZWx0YSBiZXR3ZWVuIHRoZSBzdGFydCBhbmQgZW5kIG9mCi0t ICogc2Nhbm91dC4KLS0gKi8KLS12b2lkCi0tcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbl9zY2Fu b3V0X2NvbXBlbnNhdGlvbihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrU2FtcGxlciBzcmNfc2Ft cGxlcnNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyBzcmNfaW1hZ2Vfdmlld3NbWFJUX01BWF9WSUVXU10s Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz dHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCBzcmNfcmVjdHNbWFJUX01BWF9WSUVXU10sCi0tICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qg eHJ0X2ZvdiBzcmNfZm92c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9zZSBuZXdfcG9zZXNf c2Nhbm91dF9iZWdpbltYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9zZSBuZXdfcG9zZXNfc2Nh bm91dF9lbmRbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBWa0ltYWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92 aWV3LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdKQotLXsK LS0JYXNzZXJ0KHJlbmRlci0+ciAhPSBOVUxMKTsKLS0Jc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMg KnIgPSByZW5kZXItPnI7Ci0rCVZrSW1hZ2VTdWJyZXNvdXJjZVJhbmdlIHN1YnJlc291cmNlX3Jh bmdlID0gewotKwkgICAgLmFzcGVjdE1hc2sgPSBWS19JTUFHRV9BU1BFQ1RfQ09MT1JfQklULAot KwkgICAgLmJhc2VNaXBMZXZlbCA9IDAsCi0rCSAgICAubGV2ZWxDb3VudCA9IFZLX1JFTUFJTklO R19NSVBfTEVWRUxTLAotKwkgICAgLmJhc2VBcnJheUxheWVyID0gMCwKLSsJICAgIC5sYXllckNv dW50ID0gVktfUkVNQUlOSU5HX0FSUkFZX0xBWUVSUywKLSsJfTsKLSAKLSsJdmtfY21kX2ltYWdl X2JhcnJpZXJfZ3B1X2xvY2tlZCggLy8KLSsJICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAg ICAgLy8KLSsJICAgIHItPmNtZCwgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIHRhcmdl dF9pbWFnZSwgICAgICAgICAgICAgICAgLy8KLSsJICAgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgLy8KLSsJICAgIFZLX0FDQ0VTU19TSEFERVJfV1JJVEVfQklULCAgLy8KLSsJICAgIFZL X0lNQUdFX0xBWU9VVF9VTkRFRklORUQsICAgLy8KLSsJICAgIFZLX0lNQUdFX0xBWU9VVF9HRU5F UkFMLCAgICAgLy8KLSsJICAgIHN1YnJlc291cmNlX3JhbmdlKTsgICAgICAgICAgLy8KLSAKLS0J LyoKLS0JICogVUJPCi0tCSAqLwotKwl1cGRhdGVfY29tcHV0ZV9zaGFyZWRfZGVzY3JpcHRvcl9z ZXQoIC8vCi0rCSAgICB2aywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAg IHItPmNvbXB1dGUuc3JjX2JpbmRpbmcsICAgICAgICAgICAvLwotKwkgICAgc3JjX3NhbXBsZXJz LCAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAg ICAgICAgICAgLy8KLSsJICAgIHItPmNvbXB1dGUuZGlzdG9ydGlvbl9iaW5kaW5nLCAgICAvLwot KwkgICAgVktfV0hPTEVfU0laRSwgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICByLT5kaXN0 b3J0aW9uLmJ1ZmZlciwgICAgICAgICAgICAgLy8KLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2Jp bmRpbmdfeSwgICAgICAvLwotKwkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZ19jYmNyLCAg IC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Vfdmlld195LCAgICAgICAgICAgICAgLy8KLSsJICAgIHRh cmdldF9pbWFnZV92aWV3X2NiY3IsICAgICAgICAgICAvLwotKwkgICAgci0+Y29tcHV0ZS51Ym9f YmluZGluZywgICAgICAgICAgIC8vCi0rCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb24udWJvLmJ1 ZmZlciwgLy8KLSsJICAgIFZLX1dIT0xFX1NJWkUsICAgICAgICAgICAgICAgICAgICAvLwotKwkg ICAgcmVuZGVyLT5zaGFyZWRfZGVzY3JpcHRvcl9zZXQsICAgIC8vCi0rCSAgICByZW5kZXItPnIt PnZpZXdfY291bnQpOyAgICAgICAgICAgLy8KLSAKLS0Jc3RydWN0IHhydF9tYXRyaXhfNHg0IHRp bWVfd2FycF9tYXRyaXhfc2Nhbm91dF9iZWdpbltYUlRfTUFYX1ZJRVdTXTsKLS0Jc3RydWN0IHhy dF9tYXRyaXhfNHg0IHRpbWVfd2FycF9tYXRyaXhfc2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU107 Ci0tCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCByZW5kZXItPnItPnZpZXdfY291bnQ7ICsraSkg ewotLQkJcmVuZGVyX2NhbGNfdGltZV93YXJwX3Byb2plY3Rpb24oJnNyY19mb3ZzW2ldLCAmdGlt ZV93YXJwX21hdHJpeF9zY2Fub3V0X2JlZ2luW2ldKTsKLSsJdmstPnZrQ21kQmluZFBpcGVsaW5l KCAgICAgICAgICAgICAgIC8vCi0rCSAgICByLT5jbWQsICAgICAgICAgICAgICAgICAgICAgICAg ICAvLwotKwkgICAgVktfUElQRUxJTkVfQklORF9QT0lOVF9DT01QVVRFLCAgLy8gcGlwZWxpbmVC aW5kUG9pbnQKLSsJICAgIHItPmNvbXB1dGUuZGlzdG9ydGlvbi5waXBlbGluZSk7IC8vIHBpcGVs aW5lCi0gCi0tCQlyZW5kZXJfY2FsY190aW1lX3dhcnBfbWF0cml4KCAgICAgICAgICAvLwotLQkJ ICAgICZuZXdfcG9zZXNfc2Nhbm91dF9iZWdpbltpXSwgICAgICAgLy8KLS0JCSAgICAmc3JjX2Zv dnNbaV0sICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgJm5ld19wb3Nlc19zY2Fub3V0 X2VuZFtpXSwgICAgICAgICAvLwotLQkJICAgICZ0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfZW5k W2ldKTsgLy8KLS0JfQotKwl2ay0+dmtDbWRCaW5kRGVzY3JpcHRvclNldHMoICAgICAgICAgICAg ICAgLy8KLSsJICAgIHItPmNtZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0r CSAgICBWS19QSVBFTElORV9CSU5EX1BPSU5UX0NPTVBVVEUsICAgICAgICAvLyBwaXBlbGluZUJp bmRQb2ludAotKwkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCwgLy8g bGF5b3V0Ci0rCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBm aXJzdFNldAotKwkgICAgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g ZGVzY3JpcHRvclNldENvdW50Ci0rCSAgICAmcmVuZGVyLT5zaGFyZWRfZGVzY3JpcHRvcl9zZXQs ICAgICAgICAvLyBwRGVzY3JpcHRvclNldHMKLSsJICAgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8vIGR5bmFtaWNPZmZzZXRDb3VudAotKwkgICAgTlVMTCk7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcER5bmFtaWNPZmZzZXRzCi0gCi0tCXN0cnVj dCByZW5kZXJfY29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhICpkYXRhID0KLS0JICAgIChzdHJ1 Y3QgcmVuZGVyX2NvbXB1dGVfZGlzdG9ydGlvbl91Ym9fZGF0YSAqKXItPmNvbXB1dGUuZGlzdG9y dGlvbi51Ym8ubWFwcGVkOwotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52 aWV3X2NvdW50OyArK2kpIHsKLS0JCWRhdGEtPnZpZXdzW2ldID0gdmlld3NbaV07Ci0tCQlkYXRh LT5wcmVfdHJhbnNmb3Jtc1tpXSA9IHItPmRpc3RvcnRpb24udXZfdG9fdGFuYW5nbGVbaV07Ci0t CQlkYXRhLT50cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9iZWdpbltpXSA9IHRpbWVfd2FycF9t YXRyaXhfc2Nhbm91dF9iZWdpbltpXTsKLS0JCWRhdGEtPnRyYW5zZm9ybV90aW1ld2FycF9zY2Fu b3V0X2VuZFtpXSA9IHRpbWVfd2FycF9tYXRyaXhfc2Nhbm91dF9lbmRbaV07Ci0tCQlkYXRhLT5w b3N0X3RyYW5zZm9ybXNbaV0gPSBzcmNfcmVjdHNbaV07Ci0tCX0KLSAKLS0JZGlzcGF0Y2hfcHJv amVjdF9waXBlbGluZShyZW5kZXIsIHNyY19zYW1wbGVycywgc3JjX2ltYWdlX3ZpZXdzLCBzcmNf cmVjdHMsIHRhcmdldF9pbWFnZSwgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0tCSAgICAgICAgICAgICAg ICAgICAgICAgICAgdmlld3MsIHItPmNvbXB1dGUuZGlzdG9ydGlvbi50aW1ld2FycF9waXBlbGlu ZSk7Ci0tfQotKwl1aW50MzJfdCB3ID0gMCwgaCA9IDA7Ci0rCWNhbGNfZGlzcGF0Y2hfZGltc192 aWV3cyh2aWV3cywgcmVuZGVyLT5yLT52aWV3X2NvdW50LCAmdywgJmgpOwotKwlhc3NlcnQodyAh PSAwICYmIGggIT0gMCk7Ci0gCi0tdm9pZAotLXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fbm9f dGltZXdhcnAoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklF V1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcg c3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qgc3JjX3JlY3Rz W1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg VmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLS0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0YSB2aWV3 c1tYUlRfTUFYX1ZJRVdTXSkKLS17Ci0tCWFzc2VydChyZW5kZXItPnIgIT0gTlVMTCk7Ci0tCXN0 cnVjdCByZW5kZXJfcmVzb3VyY2VzICpyID0gcmVuZGVyLT5yOwotKwl2ay0+dmtDbWREaXNwYXRj aCggLy8KLSsJICAgIHItPmNtZCwgICAgICAgIC8vCi0rCSAgICB3LCAgICAgICAgICAgICAvLyBn cm91cENvdW50WAotKwkgICAgaCwgICAgICAgICAgICAgLy8gZ3JvdXBDb3VudFkKLSsJICAgIDIp OyAgICAgICAgICAgIC8vIGdyb3VwQ291bnRaCi0rCi0rCVZrSW1hZ2VNZW1vcnlCYXJyaWVyIG1l bW9yeUJhcnJpZXIgPSB7Ci0rCSAgICAuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9JTUFHRV9N RU1PUllfQkFSUklFUiwKLSsJICAgIC5zcmNBY2Nlc3NNYXNrID0gVktfQUNDRVNTX1NIQURFUl9X UklURV9CSVQsCi0rCSAgICAuZHN0QWNjZXNzTWFzayA9IFZLX0FDQ0VTU19NRU1PUllfUkVBRF9C SVQsCi0rCSAgICAub2xkTGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX0dFTkVSQUwsCi0rCSAgICAu bmV3TGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX1RSQU5TRkVSX1NSQ19PUFRJTUFMLAotKwkgICAg LnNyY1F1ZXVlRmFtaWx5SW5kZXggPSBWS19RVUVVRV9GQU1JTFlfSUdOT1JFRCwKLSsJICAgIC5k c3RRdWV1ZUZhbWlseUluZGV4ID0gVktfUVVFVUVfRkFNSUxZX0lHTk9SRUQsCi0rCSAgICAuaW1h Z2UgPSB0YXJnZXRfaW1hZ2UsCi0rCSAgICAuc3VicmVzb3VyY2VSYW5nZSA9IHN1YnJlc291cmNl X3JhbmdlLAotKwl9OwotIAotLQlkaXNwYXRjaF9wcm9qZWN0X3BpcGVsaW5lKHJlbmRlciwgc3Jj X3NhbXBsZXJzLCBzcmNfaW1hZ2Vfdmlld3MsIHNyY19yZWN0cywgdGFyZ2V0X2ltYWdlLCB0YXJn ZXRfaW1hZ2VfdmlldywKLS0JICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3cywgci0+Y29t cHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lKTsKLSsJdmstPnZrQ21kUGlwZWxpbmVCYXJyaWVyKCAg ICAgICAgICAgICAgICAgLy8KLSsJICAgIHItPmNtZCwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLy8KLSsJICAgIFZLX1BJUEVMSU5FX1NUQUdFX0NPTVBVVEVfU0hBREVSX0JJVCwgLy8K LSsJICAgIFZLX1BJUEVMSU5FX1NUQUdFX1RPUF9PRl9QSVBFX0JJVCwgICAgLy8KLSsJICAgIDAs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIDAsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIE5VTEwsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLy8KLSsJICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ly8KLSsJICAgIDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAg ICZtZW1vcnlCYXJyaWVyKTsgICAgICAgICAgICAgICAgICAgICAgLy8KLSB9Ci0gCi0gdm9pZAot IHJlbmRlcl9jb21wdXRlX2NsZWFyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotICAg ICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2ltYWdlLAotLSAgICAgICAgICAgICAg ICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3LAotKyAgICAgICAgICAgICAgICAg ICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X3ksCi0rICAgICAgICAgICAgICAgICAg ICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmlld3NbWFJUX01BWF9WSUVX U10pCi0gewotIAlhc3NlcnQocmVuZGVyLT5yICE9IE5VTEwpOwotQEAgLTc0NSwxMyArNjU1LDkg QEAgcmVuZGVyX2NvbXB1dGVfY2xlYXIoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0g CVZrU2FtcGxlciBzYW1wbGVyID0gci0+c2FtcGxlcnMubW9jazsKLSAJVmtTYW1wbGVyIHNyY19z YW1wbGVyc1tYUlRfTUFYX1ZJRVdTXTsKLSAJVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hS VF9NQVhfVklFV1NdOwotLQlWa1NhbXBsZXIgZGlzdG9ydGlvbl9zYW1wbGVyc1szICogWFJUX01B WF9WSUVXU107Ci0gCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCByZW5kZXItPnItPnZpZXdfY291 bnQ7ICsraSkgewotIAkJc3JjX3NhbXBsZXJzW2ldID0gc2FtcGxlcjsKLSAJCXNyY19pbWFnZV92 aWV3c1tpXSA9IHItPm1vY2suY29sb3IuaW1hZ2VfdmlldzsKLS0JCWRpc3RvcnRpb25fc2FtcGxl cnNbMyAqIGkgKyAwXSA9IHNhbXBsZXI7Ci0tCQlkaXN0b3J0aW9uX3NhbXBsZXJzWzMgKiBpICsg MV0gPSBzYW1wbGVyOwotLQkJZGlzdG9ydGlvbl9zYW1wbGVyc1szICogaSArIDJdID0gc2FtcGxl cjsKLSAJfQotIAotIAl1cGRhdGVfY29tcHV0ZV9zaGFyZWRfZGVzY3JpcHRvcl9zZXQoIC8vCi1A QCAtNzYwLDEwICs2NjYsMTIgQEAgcmVuZGVyX2NvbXB1dGVfY2xlYXIoc3RydWN0IHJlbmRlcl9j b21wdXRlICpyZW5kZXIsCi0gCSAgICBzcmNfc2FtcGxlcnMsICAgICAgICAgICAgICAgICAgICAg Ly8KLSAJICAgIHNyY19pbWFnZV92aWV3cywgICAgICAgICAgICAgICAgICAvLwotIAkgICAgci0+ Y29tcHV0ZS5kaXN0b3J0aW9uX2JpbmRpbmcsICAgIC8vCi0tCSAgICBkaXN0b3J0aW9uX3NhbXBs ZXJzLCAgICAgICAgICAgICAgLy8KLS0JICAgIHItPmRpc3RvcnRpb24uaW1hZ2Vfdmlld3MsICAg ICAgICAvLwotLQkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZywgICAgICAgIC8vCi0tCSAg ICB0YXJnZXRfaW1hZ2VfdmlldywgICAgICAgICAgICAgICAgLy8KLSsJICAgIFZLX1dIT0xFX1NJ WkUsICAgICAgICAgICAgICAgICAgICAvLwotKwkgICAgci0+ZGlzdG9ydGlvbi5idWZmZXIsICAg ICAgICAgICAgIC8vCi0rCSAgICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3ksICAgICAgLy8K LSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfY2JjciwgICAvLwotKwkgICAgdGFyZ2V0 X2ltYWdlX3ZpZXdfeSwgICAgICAgICAgICAgIC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Vfdmlld19j YmNyLCAgICAgICAgICAgLy8KLSAJICAgIHItPmNvbXB1dGUudWJvX2JpbmRpbmcsICAgICAgICAg ICAvLwotIAkgICAgci0+Y29tcHV0ZS5jbGVhci51Ym8uYnVmZmVyLCAgICAgIC8vCi0gCSAgICBW S19XSE9MRV9TSVpFLCAgICAgICAgICAgICAgICAgICAgLy8gdWJvX3NpemUKLUBAIC04MDEsNyAr NzA5LDcgQEAgcmVuZGVyX2NvbXB1dGVfY2xlYXIoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5k ZXIsCi0gCSAgICAuc3JjQWNjZXNzTWFzayA9IFZLX0FDQ0VTU19TSEFERVJfV1JJVEVfQklULAot IAkgICAgLmRzdEFjY2Vzc01hc2sgPSBWS19BQ0NFU1NfTUVNT1JZX1JFQURfQklULAotIAkgICAg Lm9sZExheW91dCA9IFZLX0lNQUdFX0xBWU9VVF9HRU5FUkFMLAotLQkgICAgLm5ld0xheW91dCA9 IFZLX0lNQUdFX0xBWU9VVF9QUkVTRU5UX1NSQ19LSFIsCi0rCSAgICAubmV3TGF5b3V0ID0gVktf SU1BR0VfTEFZT1VUX1RSQU5TRkVSX1NSQ19PUFRJTUFMLAotIAkgICAgLnNyY1F1ZXVlRmFtaWx5 SW5kZXggPSBWS19RVUVVRV9GQU1JTFlfSUdOT1JFRCwKLSAJICAgIC5kc3RRdWV1ZUZhbWlseUlu ZGV4ID0gVktfUVVFVUVfRkFNSUxZX0lHTk9SRUQsCi0gCSAgICAuaW1hZ2UgPSB0YXJnZXRfaW1h Z2UsCi1kaWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfaW50ZXJm YWNlLmggYi9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL3JlbmRlcl9pbnRlcmZhY2UuaAotaW5k ZXggMmI3ODkzODgxLi4zYzU5NjQ1ZGMgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3Iv cmVuZGVyL3JlbmRlcl9pbnRlcmZhY2UuaAotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRl ci9yZW5kZXJfaW50ZXJmYWNlLmgKLUBAIC04MiwxMiArODIsOCBAQCBleHRlcm4gIkMiIHsKLSAj ZGVmaW5lIFJFTkRFUl9NQVhfTEFZRVJfUlVOU19TSVpFIChYUlRfTUFYX1ZJRVdTKQotICNkZWZp bmUgUkVOREVSX01BWF9MQVlFUl9SVU5TX0NPVU5UKFJFTkRFUl9SRVNPVVJDRVMpIChSRU5ERVJf UkVTT1VSQ0VTLT52aWV3X2NvdW50KQotIAotLS8vISBEaXN0b3J0aW9uIGltYWdlIGRpbWVuc2lv biBpbiBwaXhlbHMKLS0jZGVmaW5lIFJFTkRFUl9ESVNUT1JUSU9OX0lNQUdFX0RJTUVOU0lPTlMg KDEyOCkKLS0KLS0vLyEgSG93IG1hbnkgZGlzdG9ydGlvbiBpbWFnZXMgd2UgaGF2ZSwgb25lIGZv ciBlYWNoIGNoYW5uZWwgKDMgcmdiKSBhbmQgcGVyIHZpZXcuCi0tI2RlZmluZSBSRU5ERVJfRElT VE9SVElPTl9JTUFHRVNfU0laRSAoMyAqIFhSVF9NQVhfVklFV1MpCi0tI2RlZmluZSBSRU5ERVJf RElTVE9SVElPTl9JTUFHRVNfQ09VTlQoUkVOREVSX1JFU09VUkNFUykgKDMgKiBSRU5ERVJfUkVT T1VSQ0VTLT52aWV3X2NvdW50KQotKy8vISBGb3ZlYXRpb24gYnVmZmVyIGRpbWVuc2lvbiBpbiBw aXhlbHMgKGluY2x1ZGluZyBwYXN0LXRoZSBlbmQgcGl4ZWwpCi0rI2RlZmluZSBSRU5ERVJfRk9W RUFUSU9OX0JVRkZFUl9ESU1FTlNJT05TICg0MDk2ICsgMSkKLSAKLSAvLyEgVGhlIGJpbmRpbmcg dGhhdCB0aGUgbGF5ZXIgcHJvamVjdGlvbiBhbmQgcXVhZCBzaGFkZXIgaGF2ZSB0aGVpciBVQk8g b24uCi0gI2RlZmluZSBSRU5ERVJfQklORElOR19MQVlFUl9TSEFSRURfVUJPIDAKLUBAIC0xMjAs MTIgKzExNiw2IEBAIGV4dGVybiAiQyIgewotIHVpbnQzMl90Ci0gcmVuZGVyX21heF9sYXllcnNf Y2FwYWJsZShjb25zdCBzdHJ1Y3QgdmtfYnVuZGxlICp2aywgYm9vbCB1c2VfY29tcHV0ZSwgdWlu dDMyX3QgZGVzaXJlZF9tYXhfbGF5ZXJzKTsKLSAKLS0vKiEKLS0gKiBDcmVhdGUgYSBzaW1wbGlm aWVkIHByb2plY3Rpb24gbWF0cml4IGZvciB0aW1ld2FycC4KLS0gKi8KLS12b2lkCi0tcmVuZGVy X2NhbGNfdGltZV93YXJwX3Byb2plY3Rpb24oY29uc3Qgc3RydWN0IHhydF9mb3YgKmZvdiwgc3Ry dWN0IHhydF9tYXRyaXhfNHg0ICpyZXN1bHQpOwotLQotIC8qIQotICAqIENhbGN1bGF0ZXMgYSB0 aW1ld2FycCBtYXRyaXggd2hpY2ggdGFrZXMgaW4gTkRDIGNvb3JkcyBhbmQgZ2l2ZXMgb3V0IHJl c3VsdHMKLSAgKiBpbiBbLTEsIDFdIHNwYWNlIHRoYXQgbmVlZHMgYSBwZXJzcGVjdGl2ZSBkaXZp ZGUuCi1AQCAtNDY1LDcgKzQ1NSw4IEBAIHN0cnVjdCByZW5kZXJfcmVzb3VyY2VzCi0gCQl1aW50 MzJfdCBkaXN0b3J0aW9uX2JpbmRpbmc7Ci0gCi0gCQkvLyEgV3JpdGluZyB0aGUgaW1hZ2Ugb3V0 IHRvby4KLS0JCXVpbnQzMl90IHRhcmdldF9iaW5kaW5nOwotKwkJdWludDMyX3QgdGFyZ2V0X2Jp bmRpbmdfeTsKLSsJCXVpbnQzMl90IHRhcmdldF9iaW5kaW5nX2NiY3I7Ci0gCi0gCQkvLyEgVW5p Zm9ybSBkYXRhIGJpbmRpbmcuCi0gCQl1aW50MzJfdCB1Ym9fYmluZGluZzsKLUBAIC01MDIsOSAr NDkzLDYgQEAgc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMKLSAJCQkvLyEgRG9lc24ndCBkZXBlbmQg b24gdGFyZ2V0IHNvIGlzIHN0YXRpYy4KLSAJCQlWa1BpcGVsaW5lIHBpcGVsaW5lOwotIAotLQkJ CS8vISBEb2Vzbid0IGRlcGVuZCBvbiB0YXJnZXQgc28gaXMgc3RhdGljLgotLQkJCVZrUGlwZWxp bmUgdGltZXdhcnBfcGlwZWxpbmU7Ci0tCi0gCQkJLy8hIFRhcmdldCBpbmZvLgotIAkJCXN0cnVj dCByZW5kZXJfYnVmZmVyIHVibzsKLSAJCX0gZGlzdG9ydGlvbjsKLUBAIC01MjYsMTcgKzUxNCwx MSBAQCBzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcwotIAkJLy8hIFRyYW5zZm9ybSB0byBnbyBmcm9t IFVWIHRvIHRhbmdsZSBhbmdsZXMuCi0gCQlzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCB1dl90 b190YW5hbmdsZVtYUlRfTUFYX1ZJRVdTXTsKLSAKLS0JCS8vISBCYWNraW5nIG1lbW9yeSB0byBk aXN0b3J0aW9uIGltYWdlcy4KLS0JCVZrRGV2aWNlTWVtb3J5IGRldmljZV9tZW1vcmllc1tSRU5E RVJfRElTVE9SVElPTl9JTUFHRVNfU0laRV07Ci0tCi0tCQkvLyEgRGlzdG9ydGlvbiBpbWFnZXMu Ci0tCQlWa0ltYWdlIGltYWdlc1tSRU5ERVJfRElTVE9SVElPTl9JTUFHRVNfU0laRV07Ci0rCQkv LyEgQmFja2luZyBtZW1vcnkgdG8gZm92ZWF0aW9uIGJ1ZmZlcnMuCi0rCQlWa0RldmljZU1lbW9y eSBkZXZpY2VfbWVtb3J5OwotIAotLQkJLy8hIFRoZSB2aWV3cyBpbnRvIHRoZSBkaXN0b3J0aW9u IGltYWdlcy4KLS0JCVZrSW1hZ2VWaWV3IGltYWdlX3ZpZXdzW1JFTkRFUl9ESVNUT1JUSU9OX0lN QUdFU19TSVpFXTsKLS0KLS0JCS8vISBXaGV0aGVyIGRpc3RvcnRpb24gaW1hZ2VzIGhhdmUgYmVl biBwcmUtcm90YXRlZCA5MCBkZWdyZWVzLgotLQkJYm9vbCBwcmVfcm90YXRlZDsKLSsJCS8vISBG b3ZlYXRpb24gYnVmZmVyLgotKwkJVmtCdWZmZXIgYnVmZmVyOwotIAl9IGRpc3RvcnRpb247Ci0g fTsKLSAKLUBAIC0xMjYyLDYgKzEyNDQsNyBAQCBzdHJ1Y3QgcmVuZGVyX2NvbXB1dGVfbGF5ZXJf dWJvX2RhdGEKLSAJLy8hIFRpbWV3YXJwIG1hdHJpY2VzCi0gCXN0cnVjdCB4cnRfbWF0cml4XzR4 NCB0cmFuc2Zvcm1zX3RpbWV3YXJwW1JFTkRFUl9NQVhfTEFZRVJTXTsKLSAKLSsKLSAJLyohCi0g CSAqIEZvciBxdWFkIGxheWVycwotIAkgKi8KLUBAIC0xMzA3LDYgKzEyOTAsMTQgQEAgc3RydWN0 IHJlbmRlcl9jb21wdXRlX2Rpc3RvcnRpb25fdWJvX2RhdGEKLSAJc3RydWN0IHhydF9tYXRyaXhf NHg0IHRyYW5zZm9ybV90aW1ld2FycF9zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJRVdTXTsKLSB9Owot IAotK3N0cnVjdCByZW5kZXJfY29tcHV0ZV9kaXN0b3J0aW9uX2ZvdmVhdGlvbl9kYXRhCi0rewot KwkvLyBGb3IgZWFjaCBvdXRwdXQgcGl4ZWw6IGluZGV4IG9mIHRoZSBmaXJzdCBwaXhlbCB0byBy ZWFkLgotKwkvLyBjb250YWlucyAxIGFkZGl0aW9uYWwgdmFsdWUgYXQgdGhlIGVuZCBmb3IgcGFz dC10aGUgZW5kIHBpeGVsCi0rCXVpbnQzMl90IHhbWFJUX01BWF9WSUVXUyAqIFJFTkRFUl9GT1ZF QVRJT05fQlVGRkVSX0RJTUVOU0lPTlNdOwotKwl1aW50MzJfdCB5W1hSVF9NQVhfVklFV1MgKiBS RU5ERVJfRk9WRUFUSU9OX0JVRkZFUl9ESU1FTlNJT05TXTsKLSt9OwotKwotIC8qIQotICAqIElu aXQgc3RydWN0IGFuZCBjcmVhdGUgcmVzb3VyY2VzIG5lZWRlZCBmb3IgY29tcHV0ZSByZW5kZXJp bmcuCi0gICoKLUBAIC0xMzYwLDcgKzEzNTEsOCBAQCByZW5kZXJfY29tcHV0ZV9sYXllcnMoc3Ry dWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgIFZrU2Ft cGxlciBzcmNfc2FtcGxlcnNbUkVOREVSX01BWF9JTUFHRVNfU0laRV0sCi0gICAgICAgICAgICAg ICAgICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tSRU5ERVJfTUFYX0lNQUdFU19T SVpFXSwKLSAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbnVtX3NyY3MsCi0tICAgICAg ICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3LAotKyAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgKnZpZXcs Ci0gICAgICAgICAgICAgICAgICAgICAgIGJvb2wgdGltZXdhcnApOwotIAotQEAgLTEzNjgsNDQg KzEzNjAsMTQgQEAgcmVuZGVyX2NvbXB1dGVfbGF5ZXJzKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAq cmVuZGVyLAotICAqIEBwdWJsaWMgQG1lbWJlcm9mIHJlbmRlcl9jb21wdXRlCi0gICovCi0gdm9p ZAotLXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fdGltZXdhcnAoc3RydWN0IHJlbmRlcl9jb21w dXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBs ZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAot LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3Jt YWxpemVkX3JlY3Qgc3JjX3JlY3RzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9wb3NlIHNyY19wb3Nlc1tYUlRfTUFY X1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVj dCB4cnRfZm92IHNyY19mb3ZzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2Jl Z2luW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgc3RydWN0IHhydF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJRVdT XSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2lt YWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFy Z2V0X2ltYWdlX3ZpZXcsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmlld3NbWFJUX01BWF9WSUVXU10pOwotLQot LS8qIQotLSAqIEBwdWJsaWMgQG1lbWJlcm9mIHJlbmRlcl9jb21wdXRlCi0tICovCi0tdm9pZAot LXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fc2Nhbm91dF9jb21wZW5zYXRpb24oc3RydWN0IHJl bmRlcl9jb21wdXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBWa1NhbXBsZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklFV1NdLAotLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcg c3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qg c3JjX3JlY3RzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9mb3Ygc3JjX2ZvdnNbWFJUX01BWF9W SUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRfYmVnaW5bWFJUX01BWF9WSUVX U10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBzdHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRfZW5kW1hSVF9NQVhfVklFV1NdLAot LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZSB0 YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLS0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRf ZGF0YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSk7Ci0tCi0tLyohCi0tICogQHB1YmxpYyBAbWVtYmVy b2YgcmVuZGVyX2NvbXB1dGUKLS0gKi8KLS12b2lkCi0tcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlv bl9ub190aW1ld2FycChzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrU2FtcGxlciBzcmNfc2FtcGxlcnNbWFJUX01B WF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdl VmlldyBzcmNfaW1hZ2Vfdmlld3NbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCBzcmNf cmVjdHNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBWa0ltYWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3LAotLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRh IHZpZXdzW1hSVF9NQVhfVklFV1NdKTsKLStyZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uKHN0cnVj dCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgVmtT YW1wbGVyIHNyY19zYW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9yZWN0IHNy Y19yZWN0c1tYUlRfTUFYX1ZJRVdTXSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1h Z2UgdGFyZ2V0X2ltYWdlLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcg dGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VW aWV3IHRhcmdldF9pbWFnZV92aWV3X2NiY3IsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmlld3NbWFJUX01BWF9WSUVXU10pOwot IAotIC8qIQotICAqIEBwdWJsaWMgQG1lbWJlcm9mIHJlbmRlcl9jb21wdXRlCi1AQCAtMTQxMyw3 ICsxMzc1LDggQEAgcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbl9ub190aW1ld2FycChzdHJ1Y3Qg cmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSB2b2lkCi0gcmVuZGVyX2NvbXB1dGVfY2xlYXIoc3Ry dWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgVmtJbWFn ZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0 X2ltYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2lt YWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1h Z2Vfdmlld19jYmNyLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJf dmlld3BvcnRfZGF0YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSk7Ci0gCi0gCi1kaWZmIC0tZ2l0IGEv c3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfcmVzb3VyY2VzLmMgYi9zcmMveHJ0L2Nv bXBvc2l0b3IvcmVuZGVyL3JlbmRlcl9yZXNvdXJjZXMuYwotaW5kZXggZDI4Y2FhZWQ4Li41MjMy YTc3NGQgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL3JlbmRlcl9yZXNv dXJjZXMuYwotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfcmVzb3VyY2Vz LmMKLUBAIC0xODQsMTQgKzE4NCwxNSBAQCBpbml0X21lc2hfdWJvX2J1ZmZlcnMoc3RydWN0IHZr X2J1bmRsZSAqdmssIHN0cnVjdCByZW5kZXJfYnVmZmVyIHVib1tYUlRfTUFYX1ZJRQotIFhSVF9D SEVDS19SRVNVTFQgc3RhdGljIFZrUmVzdWx0Ci0gY3JlYXRlX2NvbXB1dGVfbGF5ZXJfZGVzY3Jp cHRvcl9zZXRfbGF5b3V0KHN0cnVjdCB2a19idW5kbGUgKnZrLAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzcmNfYmluZGluZywKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRp bmcsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90 IHRhcmdldF9iaW5kaW5nX3ksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nX2NiY3IsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHVib19iaW5kaW5nLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzb3VyY2VfaW1hZ2Vz X2NvdW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0Rl c2NyaXB0b3JTZXRMYXlvdXQgKm91dF9kZXNjcmlwdG9yX3NldF9sYXlvdXQpCi0gewotIAlWa1Jl c3VsdCByZXQ7Ci0gCi0tCVZrRGVzY3JpcHRvclNldExheW91dEJpbmRpbmcgc2V0X2xheW91dF9i aW5kaW5nc1szXSA9IHsKLSsJVmtEZXNjcmlwdG9yU2V0TGF5b3V0QmluZGluZyBzZXRfbGF5b3V0 X2JpbmRpbmdzWzRdID0gewotIAkgICAgewotIAkgICAgICAgIC5iaW5kaW5nID0gc3JjX2JpbmRp bmcsCi0gCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX0NPTUJJ TkVEX0lNQUdFX1NBTVBMRVIsCi1AQCAtMTk5LDcgKzIwMCw3IEBAIGNyZWF0ZV9jb21wdXRlX2xh eWVyX2Rlc2NyaXB0b3Jfc2V0X2xheW91dChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAgICAg ICAuc3RhZ2VGbGFncyA9IFZLX1NIQURFUl9TVEFHRV9DT01QVVRFX0JJVCwKLSAJICAgIH0sCi0g CSAgICB7Ci0tCSAgICAgICAgLmJpbmRpbmcgPSB0YXJnZXRfYmluZGluZywKLSsJICAgICAgICAu YmluZGluZyA9IHRhcmdldF9iaW5kaW5nX3ksCi0gCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0g VktfREVTQ1JJUFRPUl9UWVBFX1NUT1JBR0VfSU1BR0UsCi0gCSAgICAgICAgLmRlc2NyaXB0b3JD b3VudCA9IDEsCi0gCSAgICAgICAgLnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0VfQ09NUFVU RV9CSVQsCi1AQCAtMjEwLDYgKzIxMSwxMiBAQCBjcmVhdGVfY29tcHV0ZV9sYXllcl9kZXNjcmlw dG9yX3NldF9sYXlvdXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICAgICAgLmRlc2NyaXB0 b3JDb3VudCA9IDEsCi0gCSAgICAgICAgLnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0VfQ09N UFVURV9CSVQsCi0gCSAgICB9LAotKwkgICAgewotKwkgICAgICAgIC5iaW5kaW5nID0gdGFyZ2V0 X2JpbmRpbmdfY2JjciwKLSsJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9S X1RZUEVfU1RPUkFHRV9JTUFHRSwKLSsJICAgICAgICAuZGVzY3JpcHRvckNvdW50ID0gMSwKLSsJ ICAgICAgICAuc3RhZ2VGbGFncyA9IFZLX1NIQURFUl9TVEFHRV9DT01QVVRFX0JJVCwKLSsJICAg IH0sCi0gCX07Ci0gCi0gCVZrRGVzY3JpcHRvclNldExheW91dENyZWF0ZUluZm8gc2V0X2xheW91 dF9pbmZvID0gewotQEAgLTIzNSwxMyArMjQyLDE0IEBAIFhSVF9DSEVDS19SRVNVTFQgc3RhdGlj IFZrUmVzdWx0Ci0gY3JlYXRlX2NvbXB1dGVfZGlzdG9ydGlvbl9kZXNjcmlwdG9yX3NldF9sYXlv dXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc3JjX2JpbmRpbmcsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgZGlzdG9ydGlvbl9iaW5k aW5nLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp bnQzMl90IHRhcmdldF9iaW5kaW5nLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nX3ksCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRp bmdfY2JjciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCB1Ym9fYmluZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBWa0Rlc2NyaXB0b3JTZXRMYXlvdXQgKm91dF9kZXNjcmlwdG9yX3Nl dF9sYXlvdXQpCi0gewotIAlWa1Jlc3VsdCByZXQ7Ci0gCi0tCVZrRGVzY3JpcHRvclNldExheW91 dEJpbmRpbmcgc2V0X2xheW91dF9iaW5kaW5nc1s0XSA9IHsKLSsJVmtEZXNjcmlwdG9yU2V0TGF5 b3V0QmluZGluZyBzZXRfbGF5b3V0X2JpbmRpbmdzWzVdID0gewotIAkgICAgewotIAkgICAgICAg IC5iaW5kaW5nID0gc3JjX2JpbmRpbmcsCi0gCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktf REVTQ1JJUFRPUl9UWVBFX0NPTUJJTkVEX0lNQUdFX1NBTVBMRVIsCi1AQCAtMjUwLDEyICsyNTgs MTIgQEAgY3JlYXRlX2NvbXB1dGVfZGlzdG9ydGlvbl9kZXNjcmlwdG9yX3NldF9sYXlvdXQoc3Ry dWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICB9LAotIAkgICAgewotIAkgICAgICAgIC5iaW5kaW5n ID0gZGlzdG9ydGlvbl9iaW5kaW5nLAotLQkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RF U0NSSVBUT1JfVFlQRV9DT01CSU5FRF9JTUFHRV9TQU1QTEVSLAotLQkgICAgICAgIC5kZXNjcmlw dG9yQ291bnQgPSA2LAotKwkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NSSVBUT1Jf VFlQRV9TVE9SQUdFX0JVRkZFUiwKLSsJICAgICAgICAuZGVzY3JpcHRvckNvdW50ID0gMSwKLSAJ ICAgICAgICAuc3RhZ2VGbGFncyA9IFZLX1NIQURFUl9TVEFHRV9DT01QVVRFX0JJVCwKLSAJICAg IH0sCi0gCSAgICB7Ci0tCSAgICAgICAgLmJpbmRpbmcgPSB0YXJnZXRfYmluZGluZywKLSsJICAg ICAgICAuYmluZGluZyA9IHRhcmdldF9iaW5kaW5nX3ksCi0gCSAgICAgICAgLmRlc2NyaXB0b3JU eXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1NUT1JBR0VfSU1BR0UsCi0gCSAgICAgICAgLmRlc2Ny aXB0b3JDb3VudCA9IDEsCi0gCSAgICAgICAgLnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0Vf Q09NUFVURV9CSVQsCi1AQCAtMjY2LDYgKzI3NCwxMiBAQCBjcmVhdGVfY29tcHV0ZV9kaXN0b3J0 aW9uX2Rlc2NyaXB0b3Jfc2V0X2xheW91dChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAgICAg ICAuZGVzY3JpcHRvckNvdW50ID0gMSwKLSAJICAgICAgICAuc3RhZ2VGbGFncyA9IFZLX1NIQURF Ul9TVEFHRV9DT01QVVRFX0JJVCwKLSAJICAgIH0sCi0rCSAgICB7Ci0rCSAgICAgICAgLmJpbmRp bmcgPSB0YXJnZXRfYmluZGluZ19jYmNyLAotKwkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZL X0RFU0NSSVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotKwkgICAgICAgIC5kZXNjcmlwdG9yQ291 bnQgPSAxLAotKwkgICAgICAgIC5zdGFnZUZsYWdzID0gVktfU0hBREVSX1NUQUdFX0NPTVBVVEVf QklULAotKwkgICAgfSwKLSAJfTsKLSAKLSAJVmtEZXNjcmlwdG9yU2V0TGF5b3V0Q3JlYXRlSW5m byBzZXRfbGF5b3V0X2luZm8gPSB7Ci1AQCAtMjk1LDEyICszMDksNiBAQCBzdHJ1Y3QgY29tcHV0 ZV9sYXllcl9wYXJhbXMKLSAJdWludDMyX3QgaW1hZ2VfYXJyYXlfc2l6ZTsKLSB9OwotIAotLXN0 cnVjdCBjb21wdXRlX2Rpc3RvcnRpb25fcGFyYW1zCi0tewotLQl1aW50MzJfdCBkaXN0b3J0aW9u X3RleGVsX2NvdW50OwotLQlWa0Jvb2wzMiBkb190aW1ld2FycDsKLS19OwotLQotIFhSVF9DSEVD S19SRVNVTFQgc3RhdGljIFZrUmVzdWx0Ci0gY3JlYXRlX2NvbXB1dGVfbGF5ZXJfcGlwZWxpbmUo c3RydWN0IHZrX2J1bmRsZSAqdmssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtQ aXBlbGluZUNhY2hlIHBpcGVsaW5lX2NhY2hlLAotQEAgLTM0NSwzNSArMzUzLDE1IEBAIGNyZWF0 ZV9jb21wdXRlX2Rpc3RvcnRpb25fcGlwZWxpbmUoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1BpcGVsaW5lQ2FjaGUgcGlwZWxpbmVf Y2FjaGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NoYWRlck1vZHVs ZSBzaGFkZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1BpcGVsaW5l TGF5b3V0IHBpcGVsaW5lX2xheW91dCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHN0cnVjdCBjb21wdXRlX2Rpc3RvcnRpb25fcGFyYW1zICpwYXJhbXMsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1BpcGVsaW5lICpvdXRfY29tcHV0ZV9w aXBlbGluZSkKLSB7Ci0tI2RlZmluZSBFTlRSWShJRCwgRklFTEQpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0tCXsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKLS0JICAgIC5jb25zdGFudElEID0gSUQsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotLQkgICAgLm9mZnNldCA9IG9mZnNldG9mKHN0cnVj dCBjb21wdXRlX2Rpc3RvcnRpb25fcGFyYW1zLCBGSUVMRCksICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tCSAgICBzaXplb2YocGFyYW1zLT5GSUVMRCks ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0JfQotLQotLQlWa1NwZWNpYWxpemF0aW9u TWFwRW50cnkgZW50cmllc1syXSA9IHsKLS0JICAgIEVOVFJZKDAsIGRpc3RvcnRpb25fdGV4ZWxf Y291bnQpLAotLQkgICAgRU5UUlkoMSwgZG9fdGltZXdhcnApLAotLQl9OwotLSN1bmRlZiBFTlRS WQotLQotLQlWa1NwZWNpYWxpemF0aW9uSW5mbyBzcGVjaWFsaXphdGlvbl9pbmZvID0gewotLQkg ICAgLm1hcEVudHJ5Q291bnQgPSBBUlJBWV9TSVpFKGVudHJpZXMpLAotLQkgICAgLnBNYXBFbnRy aWVzID0gZW50cmllcywKLS0JICAgIC5kYXRhU2l6ZSA9IHNpemVvZigqcGFyYW1zKSwKLS0JICAg IC5wRGF0YSA9IHBhcmFtcywKLS0JfTsKLSAKLSAJcmV0dXJuIHZrX2NyZWF0ZV9jb21wdXRlX3Bp cGVsaW5lKCAvLwotIAkgICAgdmssICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZrX2J1 bmRsZQotIAkgICAgcGlwZWxpbmVfY2FjaGUsICAgICAgICAgICAgICAgIC8vIHBpcGVsaW5lX2Nh Y2hlCi0gCSAgICBzaGFkZXIsICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2hhZGVyCi0gCSAg ICBwaXBlbGluZV9sYXlvdXQsICAgICAgICAgICAgICAgLy8gcGlwZWxpbmVfbGF5b3V0Ci0tCSAg ICAmc3BlY2lhbGl6YXRpb25faW5mbywgICAgICAgICAgLy8gc3BlY2lhbGl6YXRpb25faW5mbwot KwkgICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNwZWNpYWxpemF0aW9uX2lu Zm8KLSAJICAgIG91dF9jb21wdXRlX3BpcGVsaW5lKTsgICAgICAgICAvLyBvdXRfY29tcHV0ZV9w aXBlbGluZQotIH0KLSAKLUBAIC01MzksOCArNTI3LDkgQEAgcmVuZGVyX3Jlc291cmNlc19pbml0 KHN0cnVjdCByZW5kZXJfcmVzb3VyY2VzICpyLAotIAl9Ci0gCXItPmNvbXB1dGUuc3JjX2JpbmRp bmcgPSAwOwotIAlyLT5jb21wdXRlLmRpc3RvcnRpb25fYmluZGluZyA9IDE7Ci0tCXItPmNvbXB1 dGUudGFyZ2V0X2JpbmRpbmcgPSAyOwotKwlyLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3kgPSAy OwotIAlyLT5jb21wdXRlLnVib19iaW5kaW5nID0gMzsKLSsJci0+Y29tcHV0ZS50YXJnZXRfYmlu ZGluZ19jYmNyID0gNDsKLSAKLSAJci0+Y29tcHV0ZS5sYXllci5pbWFnZV9hcnJheV9zaXplID0K LSAJICAgIE1JTih2ay0+bGltaXRzLm1heF9wZXJfc3RhZ2VfZGVzY3JpcHRvcl9zYW1wbGVkX2lt YWdlcywgUkVOREVSX01BWF9JTUFHRVNfU0laRSk7Ci1AQCAtODM0LDkgKzgyMyw5IEBAIHJlbmRl cl9yZXNvdXJjZXNfaW5pdChzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcyAqciwKLSAJc3RydWN0IHZr X2Rlc2NyaXB0b3JfcG9vbF9pbmZvIGNvbXB1dGVfcG9vbF9pbmZvID0gewotIAkgICAgLnVuaWZv cm1fcGVyX2Rlc2NyaXB0b3JfY291bnQgPSAxLAotIAkgICAgLy8gbGF5ZXIgaW1hZ2VzCi0tCSAg ICAuc2FtcGxlcl9wZXJfZGVzY3JpcHRvcl9jb3VudCA9IHItPmNvbXB1dGUubGF5ZXIuaW1hZ2Vf YXJyYXlfc2l6ZSArIFJFTkRFUl9ESVNUT1JUSU9OX0lNQUdFU19DT1VOVChyKSwKLSsJICAgIC5z YW1wbGVyX3Blcl9kZXNjcmlwdG9yX2NvdW50ID0gci0+Y29tcHV0ZS5sYXllci5pbWFnZV9hcnJh eV9zaXplLAotIAkgICAgLnN0b3JhZ2VfaW1hZ2VfcGVyX2Rlc2NyaXB0b3JfY291bnQgPSAxLAot LQkgICAgLnN0b3JhZ2VfYnVmZmVyX3Blcl9kZXNjcmlwdG9yX2NvdW50ID0gMCwKLSsJICAgIC5z dG9yYWdlX2J1ZmZlcl9wZXJfZGVzY3JpcHRvcl9jb3VudCA9IDEsCi0gCSAgICAuZGVzY3JpcHRv cl9jb3VudCA9IGNvbXB1dGVfZGVzY3JpcHRvcl9jb3VudCwKLSAJICAgIC5mcmVlYWJsZSA9IGZh bHNlLAotIAl9OwotQEAgLTg1Niw3ICs4NDUsOCBAQCByZW5kZXJfcmVzb3VyY2VzX2luaXQoc3Ry dWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIsCi0gCXJldCA9IGNyZWF0ZV9jb21wdXRlX2xheWVyX2Rl c2NyaXB0b3Jfc2V0X2xheW91dCggLy8KLSAJICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLyB2a19idW5kbGUKLSAJICAgIHItPmNvbXB1dGUuc3JjX2Jp bmRpbmcsICAgICAgICAgICAgICAgICAgICAgICAvLyBzcmNfYmluZGluZywKLS0JICAgIHItPmNv bXB1dGUudGFyZ2V0X2JpbmRpbmcsICAgICAgICAgICAgICAgICAgICAvLyB0YXJnZXRfYmluZGlu ZywKLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfeSwgICAgICAgICAgICAgICAgICAv LyB0YXJnZXRfYmluZGluZ195LAotKwkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZ19jYmNy LCAgICAgICAgICAgICAgIC8vIHRhcmdldF9iaW5kaW5nX2NiY3IsCi0gCSAgICByLT5jb21wdXRl LnVib19iaW5kaW5nLCAgICAgICAgICAgICAgICAgICAgICAgLy8gdWJvX2JpbmRpbmcsCi0gCSAg ICByLT5jb21wdXRlLmxheWVyLmltYWdlX2FycmF5X3NpemUsICAgICAgICAgICAgLy8gc291cmNl X2ltYWdlc19jb3VudCwKLSAJICAgICZyLT5jb21wdXRlLmxheWVyLmRlc2NyaXB0b3Jfc2V0X2xh eW91dCk7ICAgICAvLyBvdXRfZGVzY3JpcHRvcl9zZXRfbGF5b3V0Ci1AQCAtOTM3LDcgKzkyNyw4 IEBAIHJlbmRlcl9yZXNvdXJjZXNfaW5pdChzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcyAqciwKLSAJ ICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v IHZrX2J1bmRsZQotIAkgICAgci0+Y29tcHV0ZS5zcmNfYmluZGluZywgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8gc3JjX2JpbmRpbmcsCi0gCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb25f YmluZGluZywgICAgICAgICAgICAgICAgICAgICAvLyBkaXN0b3J0aW9uX2JpbmRpbmcsCi0tCSAg ICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0 YXJnZXRfYmluZGluZywKLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfeSwgICAgICAg ICAgICAgICAgICAgICAgIC8vIHRhcmdldF9iaW5kaW5nX3ksCi0rCSAgICByLT5jb21wdXRlLnRh cmdldF9iaW5kaW5nX2NiY3IsICAgICAgICAgICAgICAgICAgICAvLyB0YXJnZXRfYmluZGluZ19j YmNyLAotIAkgICAgci0+Y29tcHV0ZS51Ym9fYmluZGluZywgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLy8gdWJvX2JpbmRpbmcsCi0gCSAgICAmci0+Y29tcHV0ZS5kaXN0b3J0aW9uLmRlc2Ny aXB0b3Jfc2V0X2xheW91dCk7ICAgICAvLyBvdXRfZGVzY3JpcHRvcl9zZXRfbGF5b3V0Ci0gCVZL X0NIS19XSVRIX1JFVChyZXQsICJjcmVhdGVfY29tcHV0ZV9kaXN0b3J0aW9uX2Rlc2NyaXB0b3Jf c2V0X2xheW91dCIsIGZhbHNlKTsKLUBAIC05NTQsMzkgKzk0NSwxNiBAQCByZW5kZXJfcmVzb3Vy Y2VzX2luaXQoc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIsCi0gCVZLX05BTUVfUElQRUxJTkVf TEFZT1VUKHZrLCByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmVfbGF5b3V0LAotIAkgICAg ICAgICAgICAgICAgICAgICAgICAicmVuZGVyX3Jlc291cmNlcyBjb21wdXRlIGRpc3RvcnRpb24g cGlwZWxpbmUgbGF5b3V0Iik7Ci0gCi0tCXN0cnVjdCBjb21wdXRlX2Rpc3RvcnRpb25fcGFyYW1z IGRpc3RvcnRpb25fcGFyYW1zID0gewotLQkgICAgLmRpc3RvcnRpb25fdGV4ZWxfY291bnQgPSBS RU5ERVJfRElTVE9SVElPTl9JTUFHRV9ESU1FTlNJT05TLAotLQkgICAgLmRvX3RpbWV3YXJwID0g ZmFsc2UsCi0tCX07Ci0tCi0gCXJldCA9IGNyZWF0ZV9jb21wdXRlX2Rpc3RvcnRpb25fcGlwZWxp bmUoICAvLwotIAkgICAgdmssICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g dmtfYnVuZGxlCi0gCSAgICByLT5waXBlbGluZV9jYWNoZSwgICAgICAgICAgICAgICAgICAgICAv LyBwaXBlbGluZV9jYWNoZQotIAkgICAgci0+c2hhZGVycy0+ZGlzdG9ydGlvbl9jb21wLCAgICAg ICAgICAgLy8gc2hhZGVyCi0gCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmVfbGF5 b3V0LCAvLyBwaXBlbGluZV9sYXlvdXQKLS0JICAgICZkaXN0b3J0aW9uX3BhcmFtcywgICAgICAg ICAgICAgICAgICAgIC8vIHBhcmFtcwotIAkgICAgJnItPmNvbXB1dGUuZGlzdG9ydGlvbi5waXBl bGluZSk7ICAgICAgLy8gb3V0X2NvbXB1dGVfcGlwZWxpbmUKLSAJVktfQ0hLX1dJVEhfUkVUKHJl dCwgImNyZWF0ZV9jb21wdXRlX2Rpc3RvcnRpb25fcGlwZWxpbmUiLCBmYWxzZSk7Ci0gCi0gCVZL X05BTUVfUElQRUxJTkUodmssIHItPmNvbXB1dGUuZGlzdG9ydGlvbi5waXBlbGluZSwgInJlbmRl cl9yZXNvdXJjZXMgY29tcHV0ZSBkaXN0b3J0aW9uIHBpcGVsaW5lIik7Ci0gCi0tCXN0cnVjdCBj b21wdXRlX2Rpc3RvcnRpb25fcGFyYW1zIGRpc3RvcnRpb25fdGltZXdhcnBfcGFyYW1zID0gewot LQkgICAgLmRpc3RvcnRpb25fdGV4ZWxfY291bnQgPSBSRU5ERVJfRElTVE9SVElPTl9JTUFHRV9E SU1FTlNJT05TLAotLQkgICAgLmRvX3RpbWV3YXJwID0gdHJ1ZSwKLS0JfTsKLS0KLS0JcmV0ID0g Y3JlYXRlX2NvbXB1dGVfZGlzdG9ydGlvbl9waXBlbGluZSggICAgICAvLwotLQkgICAgdmssICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZrX2J1bmRsZQotLQkgICAg ci0+cGlwZWxpbmVfY2FjaGUsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHBpcGVsaW5lX2Nh Y2hlCi0tCSAgICByLT5zaGFkZXJzLT5kaXN0b3J0aW9uX2NvbXAsICAgICAgICAgICAgICAgLy8g c2hhZGVyCi0tCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmVfbGF5b3V0LCAgICAg Ly8gcGlwZWxpbmVfbGF5b3V0Ci0tCSAgICAmZGlzdG9ydGlvbl90aW1ld2FycF9wYXJhbXMsICAg ICAgICAgICAgICAgLy8gcGFyYW1zCi0tCSAgICAmci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnRpbWV3 YXJwX3BpcGVsaW5lKTsgLy8gb3V0X2NvbXB1dGVfcGlwZWxpbmUKLS0JVktfQ0hLX1dJVEhfUkVU KHJldCwgImNyZWF0ZV9jb21wdXRlX2Rpc3RvcnRpb25fcGlwZWxpbmUiLCBmYWxzZSk7Ci0tCi0t CVZLX05BTUVfUElQRUxJTkUodmssIHItPmNvbXB1dGUuZGlzdG9ydGlvbi50aW1ld2FycF9waXBl bGluZSwKLS0JICAgICAgICAgICAgICAgICAicmVuZGVyX3Jlc291cmNlcyBjb21wdXRlIGRpc3Rv cnRpb24gdGltZXdhcnAgcGlwZWxpbmUiKTsKLS0KLSAJc2l6ZV90IGRpc3RvcnRpb25fdWJvX3Np emUgPSBzaXplb2Yoc3RydWN0IHJlbmRlcl9jb21wdXRlX2Rpc3RvcnRpb25fdWJvX2RhdGEpOwot IAotIAlyZXQgPSByZW5kZXJfYnVmZmVyX2luaXQoICAgICAgIC8vCi1AQCAtMTAzOSwxNSArMTAw Nyw4IEBAIHJlbmRlcl9yZXNvdXJjZXNfaW5pdChzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcyAqciwK LSAJICogQ29tcHV0ZSBkaXN0b3J0aW9uIHRleHR1cmVzLCBub3QgY3JlYXRlZCB1bnRpbCBsYXRl ci4KLSAJICovCi0gCi0tCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCBSRU5ERVJfRElTVE9SVElP Tl9JTUFHRVNfQ09VTlQocik7IGkrKykgewotLQkJci0+ZGlzdG9ydGlvbi5pbWFnZV92aWV3c1tp XSA9IFZLX05VTExfSEFORExFOwotLQl9Ci0tCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCBSRU5E RVJfRElTVE9SVElPTl9JTUFHRVNfQ09VTlQocik7IGkrKykgewotLQkJci0+ZGlzdG9ydGlvbi5p bWFnZXNbaV0gPSBWS19OVUxMX0hBTkRMRTsKLS0JfQotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBp IDwgUkVOREVSX0RJU1RPUlRJT05fSU1BR0VTX0NPVU5UKHIpOyBpKyspIHsKLS0JCXItPmRpc3Rv cnRpb24uZGV2aWNlX21lbW9yaWVzW2ldID0gVktfTlVMTF9IQU5ETEU7Ci0tCX0KLSsJci0+ZGlz dG9ydGlvbi5idWZmZXIgPSBWS19OVUxMX0hBTkRMRTsKLSsJci0+ZGlzdG9ydGlvbi5kZXZpY2Vf bWVtb3J5ID0gVktfTlVMTF9IQU5ETEU7Ci0gCi0gCi0gCS8qCi1AQCAtMTEyNCw3ICsxMDg1LDYg QEAgcmVuZGVyX3Jlc291cmNlc19maW5pKHN0cnVjdCByZW5kZXJfcmVzb3VyY2VzICpyKQotIAot IAlEKERlc2NyaXB0b3JTZXRMYXlvdXQsIHItPmNvbXB1dGUuZGlzdG9ydGlvbi5kZXNjcmlwdG9y X3NldF9sYXlvdXQpOwotIAlEKFBpcGVsaW5lLCByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxp bmUpOwotLQlEKFBpcGVsaW5lLCByLT5jb21wdXRlLmRpc3RvcnRpb24udGltZXdhcnBfcGlwZWxp bmUpOwotIAlEKFBpcGVsaW5lTGF5b3V0LCByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmVf bGF5b3V0KTsKLSAKLSAJRChQaXBlbGluZSwgci0+Y29tcHV0ZS5jbGVhci5waXBlbGluZSk7Ci1k aWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3NoYWRlcnMvQ01ha2VMaXN0cy50eHQgYi9z cmMveHJ0L2NvbXBvc2l0b3Ivc2hhZGVycy9DTWFrZUxpc3RzLnR4dAotaW5kZXggZDhhY2E5N2Uy Li5mZmM3OWNhNmUgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3Ivc2hhZGVycy9DTWFr ZUxpc3RzLnR4dAotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3NoYWRlcnMvQ01ha2VMaXN0cy50 eHQKLUBAIC0yNSw3ICsyNSw3IEBAIHNldChTSEFERVJTCi0gc3BpcnZfc2hhZGVycygKLSAJU0hB REVSX0hFQURFUlMKLSAJU1BJUlZfVkVSU0lPTgotLQkxLjAgIyBDdXJyZW50bHkgdGFyZ2V0aW5n IFZ1bGthbiAxLjAKLSsJMS42ICMgQ3VycmVudGx5IHRhcmdldGluZyBWdWxrYW4gMS42Ci0gCVNP VVJDRVMKLSAJJHtTSEFERVJTfQotIAkpCi1kaWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9y L3NoYWRlcnMvY2xlYXIuY29tcCBiL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJzL2NsZWFyLmNv bXAKLWluZGV4IDFmMGU3MzJiOC4uZTAyMzA3NDE1IDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21w b3NpdG9yL3NoYWRlcnMvY2xlYXIuY29tcAotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3NoYWRl cnMvY2xlYXIuY29tcAotQEAgLTEwLDcgKzEwLDcgQEAKLSAKLSBsYXlvdXQobG9jYWxfc2l6ZV94 ID0gOCwgbG9jYWxfc2l6ZV95ID0gOCwgbG9jYWxfc2l6ZV96ID0gMSkgaW47Ci0gCi0tbGF5b3V0 KHNldCA9IDAsIGJpbmRpbmcgPSAyKSB1bmlmb3JtIHdyaXRlb25seSByZXN0cmljdCBpbWFnZTJE IHRhcmdldDsKLStsYXlvdXQoc2V0ID0gMCwgYmluZGluZyA9IDIpIHVuaWZvcm0gd3JpdGVvbmx5 IHJlc3RyaWN0IGltYWdlMkRBcnJheSB0YXJnZXQ7Ci0gbGF5b3V0KHNldCA9IDAsIGJpbmRpbmcg PSAzKSB1bmlmb3JtIHJlc3RyaWN0IENvbmZpZwotIHsKLSAJaXZlYzQgdmlld3NbMl07Ci1AQCAt MzUsNSArMzUsNSBAQCB2b2lkIG1haW4oKQotIAotIAl2ZWM0IGNvbG91ciA9IHZlYzQoMCwgMCwg MCwgMS4wKTsKLSAKLS0JaW1hZ2VTdG9yZSh0YXJnZXQsIGl2ZWMyKG9mZnNldC54ICsgaXgsIG9m ZnNldC55ICsgaXkpLCBjb2xvdXIpOwotKwlpbWFnZVN0b3JlKHRhcmdldCwgaXZlYzMob2Zmc2V0 LnggKyBpeCwgb2Zmc2V0LnkgKyBpeSwgMCksIGNvbG91cik7Ci0gfQotZGlmZiAtLWdpdCBhL3Ny Yy94cnQvY29tcG9zaXRvci9zaGFkZXJzL2Rpc3RvcnRpb24uY29tcCBiL3NyYy94cnQvY29tcG9z aXRvci9zaGFkZXJzL2Rpc3RvcnRpb24uY29tcAotaW5kZXggMGIyOGQ4YmYzLi5kZjJiNjEyYjAg MTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3Ivc2hhZGVycy9kaXN0b3J0aW9uLmNvbXAK LSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJzL2Rpc3RvcnRpb24uY29tcAotQEAgLTQs MTM2ICs0LDEwNiBAQAotIAotICN2ZXJzaW9uIDQ2MAotICNleHRlbnNpb24gR0xfR09PR0xFX2lu Y2x1ZGVfZGlyZWN0aXZlIDogcmVxdWlyZQotKyNleHRlbnNpb24gR0xfS0hSX3NoYWRlcl9zdWJn cm91cF9iYXNpYzogcmVxdWlyZQotKyNleHRlbnNpb24gR0xfS0hSX3NoYWRlcl9zdWJncm91cF9z aHVmZmxlOiByZXF1aXJlCi0gCi0gI2luY2x1ZGUgInNyZ2IuaW5jLmdsc2wiCi0gCi0tCi0tLy8g VGhlIHNpemUgb2YgdGhlIGRpc3RvcnRpb24gdGV4dHVyZSBkaW1lbnNpb25zIGluIHRleGVscy4K LS1sYXlvdXQoY29uc3RhbnRfaWQgPSAwKSBjb25zdCBpbnQgZGlzdG9ydGlvbl90ZXhlbF9jb3Vu dCA9IDI7Ci0tCi0tLy8gU2hvdWxkIHdlIGRvIHRpbWV3YXJwLgotLWxheW91dChjb25zdGFudF9p ZCA9IDEpIGNvbnN0IGJvb2wgZG9fdGltZXdhcnAgPSBmYWxzZTsKLS0KLSBsYXlvdXQobG9jYWxf c2l6ZV94ID0gOCwgbG9jYWxfc2l6ZV95ID0gOCwgbG9jYWxfc2l6ZV96ID0gMSkgaW47Ci0gCi0r I2RlZmluZSBNQVhfRElNIDQwOTcKLSsjZGVmaW5lIE1BWF9TQU1QTEVTIDQKLSsKLSBsYXlvdXQo c2V0ID0gMCwgYmluZGluZyA9IDApIHVuaWZvcm0gc2FtcGxlcjJEIHNvdXJjZVsyXTsKLS1sYXlv dXQoc2V0ID0gMCwgYmluZGluZyA9IDEpIHVuaWZvcm0gc2FtcGxlcjJEIGRpc3RvcnRpb25bNl07 Ci0tbGF5b3V0KHNldCA9IDAsIGJpbmRpbmcgPSAyKSB1bmlmb3JtIHdyaXRlb25seSByZXN0cmlj dCBpbWFnZTJEIHRhcmdldDsKLStsYXlvdXQoc2V0ID0gMCwgYmluZGluZyA9IDEsIHN0ZDQzMCkg YnVmZmVyIHJlc3RyaWN0IEZvdmVhdGlvbgotK3sKLSsJdWludCB4WzIqTUFYX0RJTV07Ci0rCXVp bnQgeVsyKk1BWF9ESU1dOwotK30gZm92ZWF0aW9uOwotKwotK2xheW91dChzZXQgPSAwLCBiaW5k aW5nID0gMikgdW5pZm9ybSB3cml0ZW9ubHkgcmVzdHJpY3QgaW1hZ2UyREFycmF5IGx1bWE7Ci0g bGF5b3V0KHNldCA9IDAsIGJpbmRpbmcgPSAzLCBzdGQxNDApIHVuaWZvcm0gcmVzdHJpY3QgQ29u ZmlnCi0gewotIAlpdmVjNCB2aWV3c1syXTsKLSAJdmVjNCBwcmVfdHJhbnNmb3JtWzJdOwotIAl2 ZWM0IHBvc3RfdHJhbnNmb3JtWzJdOwotLQltYXQ0IHRyYW5zZm9ybV90aW1ld2FycF9zY2Fub3V0 X2JlZ2luWzJdOwotLQltYXQ0IHRyYW5zZm9ybV90aW1ld2FycF9zY2Fub3V0X2VuZFsyXTsKLS19 dWJvOwotLQotLQotLXZlYzIgcG9zaXRpb25fdG9fdXYoaXZlYzIgZXh0ZW50LCB1aW50IGl4LCB1 aW50IGl5KQotLXsKLS0JLy8gVHVybiB0aGUgaW5kZXggaW50byBmbG9hdGluZyBwb2ludC4KLS0J dmVjMiB4eSA9IHZlYzIoZmxvYXQoaXgpLCBmbG9hdChpeSkpOwotLQotLQkvLyBUaGUgaW52ZXJz ZSBvZiB0aGUgZXh0ZW50IG9mIHRoZSB0YXJnZXQgaW1hZ2UgaXMgdGhlIHBpeGVsIHNpemUgaW4g WzAgLi4gMV0gc3BhY2UuCi0tCXZlYzIgZXh0ZW50X3BpeGVsX3NpemUgPSB2ZWMyKDEuMCAvIGZs b2F0KGV4dGVudC54KSwgMS4wIC8gZmxvYXQoZXh0ZW50LnkpKTsKLS0KLS0JLy8gUGVyLXRhcmdl dCBwaXhlbCB3ZSBtb3ZlIHRoZSBzaXplIG9mIHRoZSBwaXhlbHMuCi0tCXZlYzIgZGlzdF91diA9 IHh5ICogZXh0ZW50X3BpeGVsX3NpemU7Ci0tCi0tCS8vIEVtdWxhdGUgYSB0cmlhbmdsZSBzYW1w bGUgcG9zaXRpb24gYnkgb2Zmc2V0IGhhbGYgdGFyZ2V0IHBpeGVsIHNpemUuCi0tCWRpc3RfdXYg PSBkaXN0X3V2ICsgZXh0ZW50X3BpeGVsX3NpemUgLyAyLjA7Ci0tCi0tCi0tCS8vIFRvIGNvcnJl Y3RseSBzYW1wbGUgd2UgbmVlZCB0byBwdXQgcG9zaXRpb24gKDAsIDApIGluIHRoZQotLQkvLyBt aWRkbGUgb2YgdGhlICgwLCAwKSB0ZXhlbCBpbiB0aGUgZGlzdG9ydGlvbiB0ZXh0dXJlcy4gVGhh dCdzIHdoeSB3ZQotLQkvLyBvZmZzZXQgd2l0aCBoYWxmIHRoZSB0ZXhlbCBzaXplLCBwdXNoaW5n IGFsbCBzYW1wbGVzIGludG8gdGhlIG1pZGRsZQotLQkvLyBvZiBlYWNoIHRleGVscywgYSBraW4g dG8gYSB2ZXJ0ZXggYnVmZmVyLiBXZSBuZWVkIHRvIHB1dCB1diBjb29yZAotLQkvLyAoMSwgMSkg aW4gdGhlIG1pZGRsZSBvZiB0aGUgbGFzdCB0ZXhlbCwgdGhhdCBwaXhlbCBpcyAoc2l6ZSAtIDEp Ci0tCS8vIHRleGVscyBhd2F5IGZyb20gdGhlIGZpcnN0IHRleGVsLiBTbyB3ZSBuZWVkIHRvIHNj YWxlIFswIC4uIDFdIHRvCi0tCS8vIFswIC4uIHNpemUgLSAxXS4KLS0KLS0jZGVmaW5lIERJTSAo ZmxvYXQoZGlzdG9ydGlvbl90ZXhlbF9jb3VudCkpCi0tI2RlZmluZSBTVFJFVENIICgoRElNIC0g MS4wKSAvIERJTSkKLS0jZGVmaW5lIE9GRlNFVCAoMS4wIC8gKERJTSAqIDIuMCkpCi0tCi0tCWRp c3RfdXYgPSAoZGlzdF91diAqIFNUUkVUQ0gpICsgT0ZGU0VUOwotLQotLQlyZXR1cm4gZGlzdF91 djsKLS19Ci0tCi0tdmVjMiB0cmFuc2Zvcm1fdXZfc3ViaW1hZ2UodmVjMiB1diwgdWludCBpeikK LSsJbWF0NCB0cmFuc2Zvcm1bMl07Ci0rfSB1Ym87Ci0rbGF5b3V0KHNldCA9IDAsIGJpbmRpbmcg PSA0KSB1bmlmb3JtIHdyaXRlb25seSByZXN0cmljdCBpbWFnZTJEQXJyYXkgY2hyb21hOwotKwot K2NvbnN0IG1hdDMgY29sb3Jfc3BhY2UgPSBtYXQzKAotKy8vIGNsYW5nLWZvcm1hdCBvZmYKLSsv LyAgICAgICAgIFIgICAgICAgIEcgICAgICAgIEIKLSsvKiBZICovIDAuMjEyNiwgIDAuNzE1Miwg IDAuMDcyMiwKLSsvKiBDYiovLTAuMTE0NiwgLTAuMzg1NCwgIDAuNSwKLSsvKiBDciovIDAuNSAg ICwgLTAuNDU0MiwgLTAuMDQ1OCk7Ci0rLy9jbGFuZy1mb3JtYXQ6IG9uCi0rCi0rdmVjMyByZ2Jf dG9feWNiY3IodmVjMyBjb2xvcikKLSB7Ci0tCXZlYzIgdmFsdWVzID0gdXY7Ci0tCi0tCS8vIFRv IGRlYWwgd2l0aCBPcGVuR0wgZmxpcCBhbmQgc3ViIGltYWdlIHZpZXcuCi0tCXZhbHVlcy54eSA9 IHZhbHVlcy54eSAqIHViby5wb3N0X3RyYW5zZm9ybVtpel0uencgKyB1Ym8ucG9zdF90cmFuc2Zv cm1baXpdLnh5OwotLQotLQkvLyBSZWFkeSB0byBiZSB1c2VkLgotLQlyZXR1cm4gdmFsdWVzLnh5 OwotLX0KLS0KLS12ZWMyIHRyYW5zZm9ybV91dl90aW1ld2FycCh2ZWMyIHV2LCB1aW50IGl6KQot LXsKLS0JdmVjNCB2YWx1ZXMgPSB2ZWM0KHV2LCAtMSwgMSk7Ci0tCi0tCS8vIEZyb20gdXYgdG8g dGFuIGFuZ2xlICh0YW5nZW50IHNwYWNlKS4KLS0JdmFsdWVzLnh5ID0gdmFsdWVzLnh5ICogdWJv LnByZV90cmFuc2Zvcm1baXpdLnp3ICsgdWJvLnByZV90cmFuc2Zvcm1baXpdLnh5OwotLQl2YWx1 ZXMueSA9IC12YWx1ZXMueTsgLy8gRmxpcCB0byBPcGVuWFIgY29vcmRpbmF0ZSBzeXN0ZW0uCi0t Ci0tCS8vIFRpbWV3YXJwIGluY2x1ZGluZyBzY2FubGluZSB0aW1ld2FycCBmb3Igcm9sbGluZyBy ZWZyZXNoIHBhbmVscy4KLS0JdmFsdWVzID0gdWJvLnRyYW5zZm9ybV90aW1ld2FycF9zY2Fub3V0 X2JlZ2luW2l6XSAqIHZhbHVlcyAqICgxIC0gdXYueSkgKwotLQkgICAgICAgICB1Ym8udHJhbnNm b3JtX3RpbWV3YXJwX3NjYW5vdXRfZW5kW2l6XSAqIHZhbHVlcyAqIHV2Lnk7Ci0tCXZhbHVlcy54 eSA9IHZhbHVlcy54eSAqICgxLjAgLyBtYXgodmFsdWVzLncsIDAuMDAwMDEpKTsKLS0KLS0JLy8g RnJvbSBbLTEsIDFdIHRvIFswLCAxXQotLQl2YWx1ZXMueHkgPSB2YWx1ZXMueHkgKiAwLjUgKyAw LjU7Ci0tCi0tCS8vIERvbmUuCi0tCXJldHVybiB2YWx1ZXMueHk7Ci0tfQotLQotLXZlYzIgdHJh bnNmb3JtX3V2KHZlYzIgdXYsIHVpbnQgaXopCi0tewotLQlpZiAoZG9fdGltZXdhcnApIHsKLS0J CXV2ID0gdHJhbnNmb3JtX3V2X3RpbWV3YXJwKHV2LCBpeik7Ci0tCX0KLS0KLS0JcmV0dXJuIHRy YW5zZm9ybV91dl9zdWJpbWFnZSh1diwgaXopOwotKwlyZXR1cm4gdHJhbnNwb3NlKGNvbG9yX3Nw YWNlKSAqIGNvbG9yICsgdmVjMygwLCAwLjUsIDAuNSk7Ci0gfQotIAotIHZvaWQgbWFpbigpCi0g ewotLQl1aW50IGl4ID0gZ2xfR2xvYmFsSW52b2NhdGlvbklELng7Ci0tCXVpbnQgaXkgPSBnbF9H bG9iYWxJbnZvY2F0aW9uSUQueTsKLSAJdWludCBpeiA9IGdsX0dsb2JhbEludm9jYXRpb25JRC56 OwotIAotIAlpdmVjMiBvZmZzZXQgPSBpdmVjMih1Ym8udmlld3NbaXpdLnh5KTsKLS0JaXZlYzIg ZXh0ZW50ID0gaXZlYzIodWJvLnZpZXdzW2l6XS56dyk7Ci0tCi0tCWlmIChpeCA+PSBleHRlbnQu eCB8fCBpeSA+PSBleHRlbnQueSkgewotKwl1aW50IGl5ID0gZ2xfR2xvYmFsSW52b2NhdGlvbklE Lnk7Ci0rCXVpbnQgeW1pbiA9IGZvdmVhdGlvbi55W01BWF9ESU0gKiBpeiArIGl5XTsKLSsJdWlu dCB5bWF4ID0gZm92ZWF0aW9uLnlbTUFYX0RJTSAqIGl6ICsgaXkgKyAxXTsKLSsJaWYgKHltaW4g PT0geW1heCkKLSAJCXJldHVybjsKLSsJaWYgKHltaW4gPiB5bWF4KQotKwl7Ci0rCQl1aW50IHRt cCA9IHltaW47Ci0rCQl5bWluID0geW1heDsKLSsJCXltYXggPSB0bXA7Ci0gCX0KLSsJdWludCBp eCA9IGdsX0dsb2JhbEludm9jYXRpb25JRC54OwotIAotLQl2ZWMyIGRpc3RfdXYgPSBwb3NpdGlv bl90b191dihleHRlbnQsIGl4LCBpeSk7Ci0tCi0tCXZlYzIgcl91diA9IHRleHR1cmUoZGlzdG9y dGlvbltpeiArIDBdLCBkaXN0X3V2KS54eTsKLS0JdmVjMiBnX3V2ID0gdGV4dHVyZShkaXN0b3J0 aW9uW2l6ICsgMl0sIGRpc3RfdXYpLnh5OwotLQl2ZWMyIGJfdXYgPSB0ZXh0dXJlKGRpc3RvcnRp b25baXogKyA0XSwgZGlzdF91dikueHk7Ci0rCXVpbnQgeG1pbiA9IGZvdmVhdGlvbi54W01BWF9E SU0gKiBpeiArIGl4XTsKLSsJdWludCB4bWF4ID0gZm92ZWF0aW9uLnhbTUFYX0RJTSAqIGl6ICsg aXggKyAxXTsKLSsJaWYgKHhtaW4gPT0geG1heCkKLSsJCXJldHVybjsKLSAKLS0JLy8gRG8gYW55 IHRyYW5zZm9ybWF0aW9uIG5lZWRlZC4KLS0Jcl91diA9IHRyYW5zZm9ybV91dihyX3V2LCBpeik7 Ci0tCWdfdXYgPSB0cmFuc2Zvcm1fdXYoZ191diwgaXopOwotLQliX3V2ID0gdHJhbnNmb3JtX3V2 KGJfdXYsIGl6KTsKLSsJdWludCB4c3RlcCA9ICh4bWF4IC0geG1pbiArIE1BWF9TQU1QTEVTIC0g MSkgLyBNQVhfU0FNUExFUzsKLSsJdWludCB5c3RlcCA9ICh5bWF4IC0geW1pbiArIE1BWF9TQU1Q TEVTIC0gMSkgLyBNQVhfU0FNUExFUzsKLSAKLS0JLy8gU2FtcGxlIHRoZSBzb3VyY2Ugd2l0aCBk aXN0b3J0ZWQgYW5kIGNocm9tYXRpYy1hYmVycmF0aW9uIGNvcnJlY3RlZCBzYW1wbGVzLgotLQl2 ZWM0IGNvbG91ciA9IHZlYzQoICAgICAgICAgICAgICAvLwotLQkgICAgdGV4dHVyZShzb3VyY2Vb aXpdLCByX3V2KS5yLCAvLwotLQkgICAgdGV4dHVyZShzb3VyY2VbaXpdLCBnX3V2KS5nLCAvLwot LQkgICAgdGV4dHVyZShzb3VyY2VbaXpdLCBiX3V2KS5iLCAvLwotLQkgICAgMSk7ICAgICAgICAg ICAgICAgICAgICAgICAgICAvLwotKwl2ZWM0IGNvbG91ciA9IHZlYzQoMCk7Ci0rCXVpbnQgY291 bnQgPSAwOwotKwlmb3IgKHVpbnQgeSA9IHltaW4gOyB5IDwgeW1heDsgeSArPSB5c3RlcCkgewot KwkJZm9yICh1aW50IHggPSB4bWluIDsgeCA8IHhtYXg7IHggKz0geHN0ZXApIHsKLSsJCQljb2xv dXIgKz0gdGV4ZWxGZXRjaChzb3VyY2VbaXpdLCBpdmVjMih4LCB5KSwgMCk7Ci0rCQkJKytjb3Vu dDsKLSsJCX0KLSsJfQotKwljb2xvdXIgLz0gY291bnQ7Ci0rCWNvbG91ci54eXogPSByZ2JfdG9f eWNiY3IoZnJvbV9saW5lYXJfdG9fc3JnYihjb2xvdXIucmdiKSk7Ci0rCi0rCWltYWdlU3RvcmUo bHVtYSwgaXZlYzMoaXgsIGl5LCBpeiksIHZlYzQoY29sb3VyLngpKTsKLSsKLSsJdmVjNCBzdW0g PSBjb2xvdXI7Ci0rCWZvciAodWludCBpID0gMCA7IGkgPCBnbF9TdWJncm91cFNpemU7ICsraSkK LSsJewotKwkJdXZlYzMgb3RoZXIgPSBzdWJncm91cFNodWZmbGUoZ2xfR2xvYmFsSW52b2NhdGlv bklELCBpKTsKLSsJCXZlYzQgYyA9IHN1Ymdyb3VwU2h1ZmZsZShjb2xvdXIsIGkpOwotKwkJaWYg KAotKwkJCW90aGVyID09IGdsX0dsb2JhbEludm9jYXRpb25JRCArIHV2ZWMzKDEsIDAsIDApCi0r CQkJfHwgb3RoZXIgPT0gZ2xfR2xvYmFsSW52b2NhdGlvbklEICsgdXZlYzMoMCwgMSwgMCkKLSsJ CQl8fCBvdGhlciA9PSBnbF9HbG9iYWxJbnZvY2F0aW9uSUQgKyB1dmVjMygxLCAxLCAwKSkKLSsJ CXsKLSsJCQlzdW0gKz0gYzsKLSsJCX0KLSsJfQotIAotLQkvLyBEbyBjb2xvdXIgY29ycmVjdGlv biBoZXJlIHNpbmNlIHRoZXJlIGFyZSBubyBhdXRvbWF0aWMgY29udmVyc2lvbiBpbiBoYXJkd2Fy ZSBhdmFpbGFibGUuCi0tCWNvbG91ciA9IHZlYzQoZnJvbV9saW5lYXJfdG9fc3JnYihjb2xvdXIu cmdiKSwgMSk7Ci0rCWlmIChpeCAlMiA9PSAwICYmIGl5ICUyID09IDApCi0rCXsKLSsJCS8vIGFj dHVhbCBjaHJvbWEKLSsJCWltYWdlU3RvcmUoY2hyb21hLCBpdmVjMyhnbF9HbG9iYWxJbnZvY2F0 aW9uSUQueHkvMiwgaXopLCB2ZWM0KHN1bS55LCBzdW0ueiwgMCwgMCkgLyA0KTsKLSAKLS0JaW1h Z2VTdG9yZSh0YXJnZXQsIGl2ZWMyKG9mZnNldC54ICsgaXgsIG9mZnNldC55ICsgaXkpLCBjb2xv dXIpOwotKwkJLy8gYWxwaGEgaW4gbHVtYQotKwkJaW1hZ2VTdG9yZShsdW1hLCBpdmVjMyhvZmZz ZXQueHkvMiArIGdsX0dsb2JhbEludm9jYXRpb25JRC54eS8yLCAyKSwgdmVjNChzdW0udywgMCwg MCwgMCkgLyA0KTsKLSsJCWltYWdlU3RvcmUoY2hyb21hLCBpdmVjMyhvZmZzZXQueHkvMiArIGds X0dsb2JhbEludm9jYXRpb25JRC54eS8yLCAyKSwgdmVjNCgwLjUsIDAuNSwgMCwgMCkpOwotKwl9 Ci0gfQotZGlmZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci91dGlsL2NvbXBfaGlnaF9sZXZl bF9yZW5kZXIuYyBiL3NyYy94cnQvY29tcG9zaXRvci91dGlsL2NvbXBfaGlnaF9sZXZlbF9yZW5k ZXIuYwotaW5kZXggZDhiZjU0NTY5Li4wZGFlMGRmYzggMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2Nv bXBvc2l0b3IvdXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVyLmMKLSsrKyBiL3NyYy94cnQvY29t cG9zaXRvci91dGlsL2NvbXBfaGlnaF9sZXZlbF9yZW5kZXIuYwotQEAgLTE5NCwxNCArMTk0LDE2 IEBAIGNobF9mcmFtZV9zdGF0ZV9jc19zZXRfdmlld3Moc3RydWN0IGNobF9mcmFtZV9zdGF0ZSAq ZnJhbWVfc3RhdGUsCi0gdm9pZAotIGNobF9mcmFtZV9zdGF0ZV9jc19zZXRfdGFyZ2V0KHN0cnVj dCBjaGxfZnJhbWVfc3RhdGUgKmZyYW1lX3N0YXRlLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2ltYWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfY2Jj ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3Zp ZXdwb3J0X2RhdGEgdmlld3NbWFJUX01BWF9WSUVXU10pCi0gewotIAkvLyBBZGQgdGhlIHRhcmdl dCBpbmZvLgotIAljb21wX3JlbmRlcl9jc19hZGRfdGFyZ2V0KCAvLwotIAkgICAgJmZyYW1lX3N0 YXRlLT5kYXRhLCAgICAvLyBkYXRhCi0gCSAgICB0YXJnZXRfaW1hZ2UsICAgICAgICAgIC8vIHRh cmdldF9pbWFnZQotLQkgICAgdGFyZ2V0X3N0b3JhZ2Vfdmlldyk7ICAvLyB0YXJnZXRfdW5vcm1f dmlldwotKwkgICAgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LAotKwkgICAgdGFyZ2V0X3N0b3JhZ2Vf dmlld19jYmNyKTsgIC8vIHRhcmdldF91bm9ybV92aWV3Ci0gCi0gCWZvciAodWludDMyX3QgaSA9 IDA7IGkgPCBmcmFtZV9zdGF0ZS0+dmlld19jb3VudDsgaSsrKSB7Ci0gCQkvLyBXaGljaCBpbWFn ZSBvZiB0aGUgc2NyYXRjaCBpbWFnZXMgZm9yIHRoaXMgdmlldyBhcmUgd2UgdXNpbmcuCi1kaWZm IC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5o IGIvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5oCi1pbmRl eCA1NWVlNjdmNzguLjEyZmM2ZGQxMCAxMDA2NDQKLS0tLSBhL3NyYy94cnQvY29tcG9zaXRvci91 dGlsL2NvbXBfaGlnaF9sZXZlbF9yZW5kZXIuaAotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3V0 aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5oCi1AQCAtMTg4LDcgKzE4OCw4IEBAIGNobF9mcmFt ZV9zdGF0ZV9jc19zZXRfdmlld3Moc3RydWN0IGNobF9mcmFtZV9zdGF0ZSAqZnJhbWVfc3RhdGUs Ci0gdm9pZAotIGNobF9mcmFtZV9zdGF0ZV9jc19zZXRfdGFyZ2V0KHN0cnVjdCBjaGxfZnJhbWVf c3RhdGUgKmZyYW1lX3N0YXRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1h Z2UgdGFyZ2V0X2ltYWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VW aWV3IHRhcmdldF9zdG9yYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg VmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfY2JjciwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEg dmlld3NbWFJUX01BWF9WSUVXU10pOwotIAotIC8qIQotQEAgLTIwNiw3ICsyMDcsOCBAQCBjaGxf ZnJhbWVfc3RhdGVfY3NfZGVmYXVsdF9waXBlbGluZShzdHJ1Y3QgY2hsX2ZyYW1lX3N0YXRlICpm cmFtZV9zdGF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz dHJ1Y3QgeHJ0X3Bvc2UgZXllX3Bvc2VzW1hSVF9NQVhfVklFV1NdLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfZm92IGZvdnNbWFJUX01BWF9W SUVXU10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZSB0YXJn ZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZp ZXcgdGFyZ2V0X3N0b3JhZ2VfdmlldywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBWa0ltYWdlVmlldyB0YXJnZXRfc3RvcmFnZV92aWV3X3ksCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld19jYmNy LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5k ZXJfdmlld3BvcnRfZGF0YSB0YXJnZXRfdmlld3BvcnRfZGF0YXNbWFJUX01BWF9WSUVXU10pCi0g ewotIAljaGxfZnJhbWVfc3RhdGVfY3Nfc2V0X3ZpZXdzKCAgLy8KLUBAIC0yMjAsNyArMjIyLDgg QEAgY2hsX2ZyYW1lX3N0YXRlX2NzX2RlZmF1bHRfcGlwZWxpbmUoc3RydWN0IGNobF9mcmFtZV9z dGF0ZSAqZnJhbWVfc3RhdGUsCi0gCWNobF9mcmFtZV9zdGF0ZV9jc19zZXRfdGFyZ2V0KCAvLwot IAkgICAgZnJhbWVfc3RhdGUsICAgICAgICAgICAgICAgLy8KLSAJICAgIHRhcmdldF9pbWFnZSwg ICAgICAgICAgICAgIC8vCi0tCSAgICB0YXJnZXRfc3RvcmFnZV92aWV3LCAgICAgICAvLwotKwkg ICAgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LCAgICAgLy8KLSsJICAgIHRhcmdldF9zdG9yYWdlX3Zp ZXdfY2JjciwgIC8vCi0gCSAgICB0YXJnZXRfdmlld3BvcnRfZGF0YXMpOyAgICAvLwotIAotIAkv LyBTdGFydCB0aGUgY29tcHV0ZSBwaXBlbGluZS4KLWRpZmYgLS1naXQgYS9zcmMveHJ0L2NvbXBv c2l0b3IvdXRpbC9jb21wX3JlbmRlci5oIGIvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9y ZW5kZXIuaAotaW5kZXggYmQ3YWIyOTU3Li5jMmI5NWQ2OGQgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0 L2NvbXBvc2l0b3IvdXRpbC9jb21wX3JlbmRlci5oCi0rKysgYi9zcmMveHJ0L2NvbXBvc2l0b3Iv dXRpbC9jb21wX3JlbmRlci5oCi1AQCAtMjA1LDcgKzIwNSw4IEBAIHN0cnVjdCBjb21wX3JlbmRl cl9kaXNwYXRjaF9kYXRhCi0gCQkJVmtJbWFnZSBpbWFnZTsKLSAKLSAJCQkvLyEgVGFyZ2V0IGlt YWdlIHZpZXcgZm9yIGRpc3RvcnRpb24uCi0tCQkJVmtJbWFnZVZpZXcgc3RvcmFnZV92aWV3Owot KwkJCVZrSW1hZ2VWaWV3IHN0b3JhZ2Vfdmlld195OwotKwkJCVZrSW1hZ2VWaWV3IHN0b3JhZ2Vf dmlld19jYmNyOwotIAkJfSBjczsKLSAJfSB0YXJnZXQ7Ci0gfTsKLUBAIC01MDksMTQgKzUxMCwx NSBAQCBjb21wX3JlbmRlcl9nZnhfZGlzcGF0Y2goc3RydWN0IHJlbmRlcl9nZnggKnJlbmRlciwK LSAgKiBAcGFyYW0gdGFyZ2V0X3N0b3JhZ2VfdmlldyBDb3JyZXNwb25kaW5nIGltYWdlIHZpZXcK LSAgKi8KLSBzdGF0aWMgaW5saW5lIHZvaWQKLS1jb21wX3JlbmRlcl9jc19hZGRfdGFyZ2V0KHN0 cnVjdCBjb21wX3JlbmRlcl9kaXNwYXRjaF9kYXRhICpkYXRhLCBWa0ltYWdlIHRhcmdldF9pbWFn ZSwgVmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2VfdmlldykKLStjb21wX3JlbmRlcl9jc19hZGRf dGFyZ2V0KHN0cnVjdCBjb21wX3JlbmRlcl9kaXNwYXRjaF9kYXRhICpkYXRhLCBWa0ltYWdlIHRh cmdldF9pbWFnZSwgVmtJbWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LCBWa0ltYWdlVmll dyB0YXJnZXRfc3RvcmFnZV92aWV3X2NiY3IpCi0gewotIAkvLyBFcnJvciB0cmFja2luZy4KLSAJ ZGF0YS0+dGFyZ2V0LmluaXRpYWxpemVkID0gdHJ1ZTsKLSAKLSAJLy8gV2hlbiB3cml0aW5nIGlu dG8gdGhlIHRhcmdldC4KLSAJZGF0YS0+dGFyZ2V0LmNzLmltYWdlID0gdGFyZ2V0X2ltYWdlOwot LQlkYXRhLT50YXJnZXQuY3Muc3RvcmFnZV92aWV3ID0gdGFyZ2V0X3N0b3JhZ2VfdmlldzsKLSsJ ZGF0YS0+dGFyZ2V0LmNzLnN0b3JhZ2Vfdmlld195ID0gdGFyZ2V0X3N0b3JhZ2Vfdmlld195Owot KwlkYXRhLT50YXJnZXQuY3Muc3RvcmFnZV92aWV3X2NiY3IgPSB0YXJnZXRfc3RvcmFnZV92aWV3 X2NiY3I7Ci0gfQotIAotIC8qIQotQEAgLTYxOCw3ICs2MjAsOCBAQCBjb21wX3JlbmRlcl9jc19s YXllcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBzdHJ1Y3QgeHJ0X3Bvc2UgKndvcmxkX3Bvc2Vfc2Nhbm91dF9lbmQsCi0gICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9wb3NlICpleWVfcG9zZSwKLSAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBWa0ltYWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAg ICAgICAgICBjb25zdCBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLSsgICAgICAgICAg ICAgICAgICAgICBjb25zdCBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X2NiY3Is Ci0gICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRh ICp0YXJnZXRfdmlldywKLSAgICAgICAgICAgICAgICAgICAgICBib29sIGRvX3RpbWV3YXJwKTsK LSAKLWRpZmYgLS1naXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21wX3JlbmRlcl9jcy5j IGIvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXJfY3MuYwotaW5kZXggNmU5M2Vh YmU4Li40YTMwNGM2ZjcgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21w X3JlbmRlcl9jcy5jCi0rKysgYi9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21wX3JlbmRlcl9j cy5jCi1AQCAtMzcwLDcgKzM3MCw4IEBAIGNyY19jbGVhcl9vdXRwdXQoc3RydWN0IHJlbmRlcl9j b21wdXRlICpyZW5kZXIsIGNvbnN0IHN0cnVjdCBjb21wX3JlbmRlcl9kaXNwYXRjCi0gCXJlbmRl cl9jb21wdXRlX2NsZWFyKCAgICAgICAgICAvLwotIAkgICAgcmVuZGVyLCAgICAgICAgICAgICAg ICAgICAgLy8KLSAJICAgIGQtPnRhcmdldC5jcy5pbWFnZSwgICAgICAgIC8vCi0tCSAgICBkLT50 YXJnZXQuY3Muc3RvcmFnZV92aWV3LCAvLyB0YXJnZXRfaW1hZ2VfdmlldwotKwkgICAgZC0+dGFy Z2V0LmNzLnN0b3JhZ2Vfdmlld195LCAvLyB0YXJnZXRfaW1hZ2Vfdmlld195Ci0rCSAgICBkLT50 YXJnZXQuY3Muc3RvcmFnZV92aWV3X2NiY3IsIC8vIHRhcmdldF9pbWFnZV92aWV3X2NiY3IKLSAJ ICAgIHRhcmdldF92aWV3cG9ydF9kYXRhcyk7ICAgIC8vIHZpZXdzCi0gfQotIAotQEAgLTM5Niw5 ICszOTcsNiBAQCBjcmNfZGlzdG9ydGlvbl9hZnRlcl9zcXVhc2goc3RydWN0IHJlbmRlcl9jb21w dXRlICpyZW5kZXIsIGNvbnN0IHN0cnVjdCBjb21wX3JlbgotIAlWa1NhbXBsZXIgc3JjX3NhbXBs ZXJzW1hSVF9NQVhfVklFV1NdOwotIAlzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdGFyZ2V0 X3ZpZXdwb3J0X2RhdGFzW1hSVF9NQVhfVklFV1NdOwotIAlzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRf cmVjdCBzcmNfbm9ybV9yZWN0c1tYUlRfTUFYX1ZJRVdTXTsKLS0Jc3RydWN0IHhydF9mb3Ygc3Jj X2ZvdnNbWFJUX01BWF9WSUVXU107Ci0tCXN0cnVjdCB4cnRfcG9zZSB3b3JsZF9wb3Nlc19zY2Fu b3V0X2JlZ2luW1hSVF9NQVhfVklFV1NdOwotLQlzdHJ1Y3QgeHJ0X3Bvc2Ugd29ybGRfcG9zZXNf c2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU107Ci0gCi0gCWZvciAodWludDMyX3QgaSA9IDA7IGkg PCBkLT50YXJnZXQudmlld19jb3VudDsgaSsrKSB7Ci0gCQkvLyBEYXRhIHRvIGJlIGZpbGxlZCBp bi4KLUBAIC00MTYsMzYgKzQxNCwxNyBAQCBjcmNfZGlzdG9ydGlvbl9hZnRlcl9zcXVhc2goc3Ry dWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsIGNvbnN0IHN0cnVjdCBjb21wX3JlbgotIAkJc3Jj X25vcm1fcmVjdHNbaV0gPSBzcmNfbm9ybV9yZWN0OwotIAkJc3JjX3NhbXBsZXJzW2ldID0gY2xh bXBfdG9fYm9yZGVyX2JsYWNrOwotIAkJdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzW2ldID0gdmlld3Bv cnRfZGF0YTsKLS0KLS0JCWlmIChkLT5kb190aW1ld2FycCkgewotLQkJCXdvcmxkX3Bvc2VzX3Nj YW5vdXRfYmVnaW5baV0gPSBkLT52aWV3c1tpXS53b3JsZF9wb3NlX3NjYW5vdXRfYmVnaW47Ci0t CQkJd29ybGRfcG9zZXNfc2Nhbm91dF9lbmRbaV0gPSBkLT52aWV3c1tpXS53b3JsZF9wb3NlX3Nj YW5vdXRfZW5kOwotLQkJCXNyY19mb3ZzW2ldID0gZC0+dmlld3NbaV0uZm92OwotLQkJfQotIAl9 Ci0gCi0tCWlmICghZC0+ZG9fdGltZXdhcnApIHsKLS0JCXJlbmRlcl9jb21wdXRlX3Byb2plY3Rp b25fbm9fdGltZXdhcnAoIC8vCi0tCQkgICAgcmVuZGVyLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAvLwotLQkJICAgIHNyY19zYW1wbGVycywgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J CSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX25v cm1fcmVjdHMsICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIGQtPnRhcmdldC5jcy5pbWFn ZSwgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBkLT50YXJnZXQuY3Muc3RvcmFnZV92aWV3LCAg ICAgICAgIC8vIHRhcmdldF9pbWFnZV92aWV3Ci0tCQkgICAgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFz KTsgICAgICAgICAgICAvLyB2aWV3cwotLQl9IGVsc2UgewotLQkJcmVuZGVyX2NvbXB1dGVfcHJv amVjdGlvbl9zY2Fub3V0X2NvbXBlbnNhdGlvbiggLy8KLS0JCSAgICByZW5kZXIsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX3NhbXBsZXJzLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19pbWFnZV92aWV3cywgICAg ICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfbm9ybV9yZWN0cywgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX2ZvdnMsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHdvcmxkX3Bvc2VzX3NjYW5vdXRfYmVnaW4s ICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICB3b3JsZF9wb3Nlc19zY2Fub3V0X2VuZCwgICAg ICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgZC0+dGFyZ2V0LmNzLmltYWdlLCAgICAgICAgICAg ICAgICAgICAgICAgICAvLwotLQkJICAgIGQtPnRhcmdldC5jcy5zdG9yYWdlX3ZpZXcsICAgICAg ICAgICAgICAgICAgLy8gdGFyZ2V0X2ltYWdlX3ZpZXcKLS0JCSAgICB0YXJnZXRfdmlld3BvcnRf ZGF0YXMpOyAgICAgICAgICAgICAgICAgICAgIC8vIHZpZXdzCi0tCX0KLSsJcmVuZGVyX2NvbXB1 dGVfcHJvamVjdGlvbiggICAgIC8vCi0rCSAgICByZW5kZXIsICAgICAgICAgICAgICAgICAgICAv LwotKwkgICAgc3JjX3NhbXBsZXJzLCAgICAgICAgICAgICAgLy8KLSsJICAgIHNyY19pbWFnZV92 aWV3cywgICAgICAgICAgIC8vCi0rCSAgICBzcmNfbm9ybV9yZWN0cywgICAgICAgICAgICAvLwot KwkgICAgZC0+dGFyZ2V0LmNzLmltYWdlLCAgICAgICAgLy8KLSsJICAgIGQtPnRhcmdldC5jcy5z dG9yYWdlX3ZpZXdfeSwgLy8gdGFyZ2V0X2ltYWdlX3ZpZXdfeQotKwkgICAgZC0+dGFyZ2V0LmNz LnN0b3JhZ2Vfdmlld19jYmNyLCAvLyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyCi0rCSAgICB0YXJn ZXRfdmlld3BvcnRfZGF0YXMpOyAgICAvLyB2aWV3cwotIH0KLSAKLSAvLy8gRmFzdCBwYXRoCi1A QCAtNDcxLDIwICs0NTAsMTIgQEAgY3JjX2Rpc3RvcnRpb25fZmFzdF9wYXRoKHN0cnVjdCByZW5k ZXJfY29tcHV0ZSAqcmVuZGVyLAotIAlWa1NhbXBsZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklF V1NdOwotIAlzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFz W1hSVF9NQVhfVklFV1NdOwotIAlzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCBzcmNfbm9ybV9y ZWN0c1tYUlRfTUFYX1ZJRVdTXTsKLS0Jc3RydWN0IHhydF9mb3Ygc3JjX2ZvdnNbWFJUX01BWF9W SUVXU107Ci0tCXN0cnVjdCB4cnRfcG9zZSBzcmNfcG9zZXNbWFJUX01BWF9WSUVXU107Ci0tCXN0 cnVjdCB4cnRfcG9zZSB3b3JsZF9wb3Nlc19zY2Fub3V0X2JlZ2luW1hSVF9NQVhfVklFV1NdOwot LQlzdHJ1Y3QgeHJ0X3Bvc2Ugd29ybGRfcG9zZXNfc2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU107 Ci0gCi0gCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCBkLT50YXJnZXQudmlld19jb3VudDsgaSsr KSB7Ci0gCQkvLyBEYXRhIHRvIGJlIGZpbGxlZCBpbi4KLSAJCVZrSW1hZ2VWaWV3IHNyY19pbWFn ZV92aWV3OwotIAkJc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdwb3J0X2RhdGE7Ci0g CQlzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCBzcmNfbm9ybV9yZWN0OwotLQkJc3RydWN0IHhy dF9mb3Ygc3JjX2ZvdjsKLS0JCXN0cnVjdCB4cnRfcG9zZSBzcmNfcG9zZTsKLS0JCXN0cnVjdCB4 cnRfcG9zZSB3b3JsZF9wb3NlX3NjYW5vdXRfYmVnaW47Ci0tCQlzdHJ1Y3QgeHJ0X3Bvc2Ugd29y bGRfcG9zZV9zY2Fub3V0X2VuZDsKLSAJCXVpbnQzMl90IGFycmF5X2luZGV4ID0gdmRzW2ldLT5z dWIuYXJyYXlfaW5kZXg7Ci0gCQljb25zdCBzdHJ1Y3QgY29tcF9zd2FwY2hhaW5faW1hZ2UgKmlt YWdlID0gZ2V0X2xheWVyX2ltYWdlKGxheWVyLCBpLCB2ZHNbaV0tPnN1Yi5pbWFnZV9pbmRleCk7 Ci0gCi1AQCAtNDkyLDEwICs0NjMsNiBAQCBjcmNfZGlzdG9ydGlvbl9mYXN0X3BhdGgoc3RydWN0 IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gCQlzcmNfaW1hZ2VfdmlldyA9IGdldF9pbWFnZV92 aWV3KGltYWdlLCBkYXRhLT5mbGFncywgYXJyYXlfaW5kZXgpOwotIAkJc3JjX25vcm1fcmVjdCA9 IHZkc1tpXS0+c3ViLm5vcm1fcmVjdDsKLSAJCXZpZXdwb3J0X2RhdGEgPSBkLT52aWV3c1tpXS50 YXJnZXQudmlld3BvcnRfZGF0YTsKLS0JCXNyY19mb3YgPSB2ZHNbaV0tPmZvdjsKLS0JCXNyY19w b3NlID0gdmRzW2ldLT5wb3NlOwotLQkJd29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luID0gZC0+dmll d3NbaV0ud29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luOwotLQkJd29ybGRfcG9zZV9zY2Fub3V0X2Vu ZCA9IGQtPnZpZXdzW2ldLndvcmxkX3Bvc2Vfc2Nhbm91dF9lbmQ7Ci0gCi0gCQkvLyBObyBsYXll ciBzcXVhc2hlciBoYXMgaGFuZGxlZCB0aGlzIGZvciB1cyBhbHJlYWR5Ci0gCQlpZiAoZGF0YS0+ ZmxpcF95KSB7Ci1AQCAtNTA4LDM1ICs0NzUsMTcgQEAgY3JjX2Rpc3RvcnRpb25fZmFzdF9wYXRo KHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAkJc3JjX25vcm1fcmVjdHNbaV0gPSBz cmNfbm9ybV9yZWN0OwotIAkJc3JjX3NhbXBsZXJzW2ldID0gY2xhbXBfdG9fYm9yZGVyX2JsYWNr OwotIAkJdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzW2ldID0gdmlld3BvcnRfZGF0YTsKLS0JCXNyY19m b3ZzW2ldID0gc3JjX2ZvdjsKLS0JCXNyY19wb3Nlc1tpXSA9IHNyY19wb3NlOwotLQkJd29ybGRf cG9zZXNfc2Nhbm91dF9iZWdpbltpXSA9IHdvcmxkX3Bvc2Vfc2Nhbm91dF9iZWdpbjsKLS0JCXdv cmxkX3Bvc2VzX3NjYW5vdXRfZW5kW2ldID0gd29ybGRfcG9zZV9zY2Fub3V0X2VuZDsKLSAJfQot IAotLQlpZiAoIWQtPmRvX3RpbWV3YXJwKSB7Ci0tCQlyZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9u X25vX3RpbWV3YXJwKCAvLwotLQkJICAgIHJlbmRlciwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLy8KLS0JCSAgICBzcmNfc2FtcGxlcnMsICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkg ICAgc3JjX2ltYWdlX3ZpZXdzLCAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19ub3Jt X3JlY3RzLCAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBkLT50YXJnZXQuY3MuaW1hZ2Us ICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgZC0+dGFyZ2V0LmNzLnN0b3JhZ2VfdmlldywgICAg ICAgICAvLwotLQkJICAgIHRhcmdldF92aWV3cG9ydF9kYXRhcyk7ICAgICAgICAgICAgLy8KLS0J fSBlbHNlIHsKLS0JCXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fdGltZXdhcnAoIC8vCi0tCQkg ICAgcmVuZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19zYW1wbGVy cywgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAg ICAgICAgIC8vCi0tCQkgICAgc3JjX25vcm1fcmVjdHMsICAgICAgICAgICAgICAgICAvLwotLQkJ ICAgIHNyY19wb3NlcywgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfZm92cywg ICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgd29ybGRfcG9zZXNfc2Nhbm91dF9iZWdp biwgICAgICAvLwotLQkJICAgIHdvcmxkX3Bvc2VzX3NjYW5vdXRfZW5kLCAgICAgICAgLy8KLS0J CSAgICBkLT50YXJnZXQuY3MuaW1hZ2UsICAgICAgICAgICAgIC8vCi0tCQkgICAgZC0+dGFyZ2V0 LmNzLnN0b3JhZ2VfdmlldywgICAgICAvLwotLQkJICAgIHRhcmdldF92aWV3cG9ydF9kYXRhcyk7 ICAgICAgICAgLy8KLS0JfQotKwlyZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uKCAgICAgICAgICAv LwotKwkgICAgcmVuZGVyLCAgICAgICAgICAgICAgICAgICAgICAgICAvLwotKwkgICAgc3JjX3Nh bXBsZXJzLCAgICAgICAgICAgICAgICAgICAvLwotKwkgICAgc3JjX2ltYWdlX3ZpZXdzLCAgICAg ICAgICAgICAgICAvLwotKwkgICAgc3JjX25vcm1fcmVjdHMsICAgICAgICAgICAgICAgICAvLwot KwkgICAgZC0+dGFyZ2V0LmNzLmltYWdlLCAgICAgICAgICAgICAvLwotKwkgICAgZC0+dGFyZ2V0 LmNzLnN0b3JhZ2Vfdmlld195LCAgICAvLwotKwkgICAgZC0+dGFyZ2V0LmNzLnN0b3JhZ2Vfdmll d19jYmNyLCAvLwotKwkgICAgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzKTsgICAgICAgICAvLwotIH0K LSAKLSAKLUBAIC01NTYsNyArNTA1LDggQEAgY29tcF9yZW5kZXJfY3NfbGF5ZXIoc3RydWN0IHJl bmRlcl9jb21wdXRlICpyZW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0 IHhydF9wb3NlICp3b3JsZF9wb3NlX3NjYW5vdXRfZW5kLAotICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IHN0cnVjdCB4cnRfcG9zZSAqZXllX3Bvc2UsCi0gICAgICAgICAgICAgICAgICAgICAg Y29uc3QgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgY29uc3Qg VmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAgICAgY29u c3QgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAgICAg ICBjb25zdCBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0YSAqdGFyZ2V0X3ZpZXcs Ci0gICAgICAgICAgICAgICAgICAgICAgYm9vbCBkb190aW1ld2FycCkKLSB7Ci1AQCAtNTY0LDkg KzUxNCw5IEBAIGNvbXBfcmVuZGVyX2NzX2xheWVyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVu ZGVyLAotIAlWa1NhbXBsZXIgY2xhbXBfdG9fYm9yZGVyX2JsYWNrID0gcmVuZGVyLT5yLT5zYW1w bGVycy5jbGFtcF90b19ib3JkZXJfYmxhY2s7Ci0gCi0gCS8vIE5vdCB0aGUgdHJhbnNmb3JtIG9m IHRoZSB2aWV3cywgYnV0IHRoZSBpbnZlcnNlOiBhY3R1YWwgdmlldyBtYXRyaWNlcy4KLS0Jc3Ry dWN0IHhydF9tYXRyaXhfNHg0IHdvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4sIGV5ZV92aWV3 OwotKwlzdHJ1Y3QgeHJ0X21hdHJpeF80eDQgd29ybGRfdmlld19tYXRfc2Nhbm91dF9iZWdpbiwg ZXllX3ZpZXdfbWF0OwotIAltYXRoX21hdHJpeF80eDRfdmlld19mcm9tX3Bvc2Uod29ybGRfcG9z ZV9zY2Fub3V0X2JlZ2luLCAmd29ybGRfdmlld19tYXRfc2Nhbm91dF9iZWdpbik7Ci0tCW1hdGhf bWF0cml4XzR4NF92aWV3X2Zyb21fcG9zZShleWVfcG9zZSwgJmV5ZV92aWV3KTsKLSsJbWF0aF9t YXRyaXhfNHg0X3ZpZXdfZnJvbV9wb3NlKGV5ZV9wb3NlLCAmZXllX3ZpZXdfbWF0KTsKLSAKLSAJ c3RydWN0IHJlbmRlcl9idWZmZXIgKnVibyA9ICZyZW5kZXItPnItPmNvbXB1dGUubGF5ZXIudWJv c1t2aWV3X2luZGV4XTsKLSAJc3RydWN0IHJlbmRlcl9jb21wdXRlX2xheWVyX3Vib19kYXRhICp1 Ym9fZGF0YSA9IHViby0+bWFwcGVkOwotQEAgLTYxOCw3ICs1NjgsNyBAQCBjb21wX3JlbmRlcl9j c19sYXllcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAJCWNhc2UgWFJUX0xBWUVS X0NZTElOREVSOgotIAkJCWRvX2NzX2N5bGluZGVyX2xheWVyKCAgICAgICAgICAgICAgLy8KLSAJ CQkgICAgbGF5ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGxheWVyCi0tCQkJICAgICZl eWVfdmlldywgICAgICAgICAgICAgICAgICAgICAvLyBleWVfdmlld19tYXQKLSsJCQkgICAgJmV5 ZV92aWV3X21hdCwgICAgICAgICAgICAgICAgIC8vIGV5ZV92aWV3X21hdAotIAkJCSAgICAmd29y bGRfdmlld19tYXRfc2Nhbm91dF9iZWdpbiwgLy8gd29ybGRfdmlld19tYXQKLSAJCQkgICAgdmll d19pbmRleCwgICAgICAgICAgICAgICAgICAgIC8vIHZpZXdfaW5kZXgKLSAJCQkgICAgY3VyX2xh eWVyLCAgICAgICAgICAgICAgICAgICAgIC8vIGN1cl9sYXllcgotQEAgLTYzMyw3ICs1ODMsNyBA QCBjb21wX3JlbmRlcl9jc19sYXllcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAJ CWNhc2UgWFJUX0xBWUVSX0VRVUlSRUNUMjoKLSAJCQlkb19jc19lcXVpcmVjdDJfbGF5ZXIoICAg ICAgICAgICAgIC8vCi0gCQkJICAgIGxheWVyLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBs YXllcgotLQkJCSAgICAmZXllX3ZpZXcsICAgICAgICAgICAgICAgICAgICAgLy8gZXllX3ZpZXdf bWF0Ci0rCQkJICAgICZleWVfdmlld19tYXQsICAgICAgICAgICAgICAgICAvLyBleWVfdmlld19t YXQKLSAJCQkgICAgJndvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4sIC8vIHdvcmxkX3ZpZXdf bWF0Ci0gCQkJICAgIHZpZXdfaW5kZXgsICAgICAgICAgICAgICAgICAgICAvLyB2aWV3X2luZGV4 Ci0gCQkJICAgIGN1cl9sYXllciwgICAgICAgICAgICAgICAgICAgICAvLyBjdXJfbGF5ZXIKLUBA IC02NDksNyArNTk5LDcgQEAgY29tcF9yZW5kZXJfY3NfbGF5ZXIoc3RydWN0IHJlbmRlcl9jb21w dXRlICpyZW5kZXIsCi0gCQljYXNlIFhSVF9MQVlFUl9QUk9KRUNUSU9OOiB7Ci0gCQkJZG9fY3Nf cHJvamVjdGlvbl9sYXllciggICAgICAgLy8KLSAJCQkgICAgbGF5ZXIsICAgICAgICAgICAgICAg ICAgICAvLyBsYXllcgotLQkJCSAgICB3b3JsZF9wb3NlX3NjYW5vdXRfYmVnaW4sIC8vIHdvcmxk X3Bvc2Vfc2Nhbm91dF9iZWdpbgotKwkJCSAgICB3b3JsZF9wb3NlX3NjYW5vdXRfYmVnaW4sIC8v IHdvcmxkX3Bvc2UKLSAJCQkgICAgdmlld19pbmRleCwgICAgICAgICAgICAgICAvLyB2aWV3X2lu ZGV4Ci0gCQkJICAgIGN1cl9sYXllciwgICAgICAgICAgICAgICAgLy8gY3VyX2xheWVyCi0gCQkJ ICAgIGN1cl9pbWFnZSwgICAgICAgICAgICAgICAgLy8gY3VyX2ltYWdlCi1AQCAtNjY0LDggKzYx NCw4IEBAIGNvbXBfcmVuZGVyX2NzX2xheWVyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVy LAotIAkJY2FzZSBYUlRfTEFZRVJfUVVBRDogewotIAkJCWRvX2NzX3F1YWRfbGF5ZXIoICAgICAg ICAgICAgICAgICAgLy8KLSAJCQkgICAgbGF5ZXIsICAgICAgICAgICAgICAgICAgICAgICAgIC8v IGxheWVyCi0tCQkJICAgICZleWVfdmlldywgICAgICAgICAgICAgICAgICAgICAvLyBleWVfdmll d19tYXQKLS0JCQkgICAgJndvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4sIC8vIHdvcmxkX3Zp ZXdfbWF0X3NjYW5vdXRfYmVnaW4KLSsJCQkgICAgJmV5ZV92aWV3X21hdCwgICAgICAgICAgICAg ICAgIC8vIGV5ZV92aWV3X21hdAotKwkJCSAgICAmd29ybGRfdmlld19tYXRfc2Nhbm91dF9iZWdp biwgLy8gd29ybGRfdmlld19tYXQKLSAJCQkgICAgdmlld19pbmRleCwgICAgICAgICAgICAgICAg ICAgIC8vIHZpZXdfaW5kZXgKLSAJCQkgICAgY3VyX2xheWVyLCAgICAgICAgICAgICAgICAgICAg IC8vIGN1cl9sYXllcgotIAkJCSAgICBjdXJfaW1hZ2UsICAgICAgICAgICAgICAgICAgICAgLy8g Y3VyX2ltYWdlCi1AQCAtNzE2LDcgKzY2Niw4IEBAIGNvbXBfcmVuZGVyX2NzX2xheWVyKHN0cnVj dCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAkgICAgc3JjX3NhbXBsZXJzLCAgICAgIC8vCi0g CSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgLy8KLSAJICAgIGN1cl9pbWFnZSwgICAgICAgICAvLwot LQkgICAgdGFyZ2V0X2ltYWdlX3ZpZXcsIC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Vfdmlld195LCAv LwotKwkgICAgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwgLy8KLSAJICAgIHRhcmdldF92aWV3LCAg ICAgICAvLwotIAkgICAgZG9fdGltZXdhcnApOyAgICAgIC8vCi0gfQotQEAgLTc1Myw2ICs3MDQs NyBAQCBjb21wX3JlbmRlcl9jc19sYXllcnMoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIs Ci0gCQkgICAgJnZpZXctPmV5ZV9wb3NlLCAgICAgICAgICAgICAgICAgLy8KLSAJCSAgICB2aWV3 LT5zcXVhc2guaW1hZ2UsICAgICAgICAgICAgICAvLwotIAkJICAgIHZpZXctPnNxdWFzaC5jcy5z dG9yYWdlX3ZpZXcsICAgIC8vCi0rCQkgICAgdmlldy0+c3F1YXNoLmNzLnN0b3JhZ2Vfdmlldywg ICAgLy8KLSAJCSAgICAmdmlldy0+c3F1YXNoLnZpZXdwb3J0X2RhdGEsICAgICAvLwotIAkJICAg IGQtPmRvX3RpbWV3YXJwKTsgICAgICAgICAgICAgICAgIC8vCi0gCX0KLS0tIAotMi41My4wCi0K CmRpZmYgLS1naXQgYS8wMDA1LWQtc3RlYW12cl9saC1wcmV2ZW50LWNyYXNoLW9uLXZpdmUtcHJv Mi1XaVZSbi5wYXRjaCBiLzAwMDUtZC1zdGVhbXZyX2xoLXByZXZlbnQtY3Jhc2gtb24tdml2ZS1w cm8yLVdpVlJuLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY5OGMw YWQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA1LWQtc3RlYW12cl9saC1wcmV2ZW50LWNyYXNoLW9u LXZpdmUtcHJvMi1XaVZSbi5wYXRjaApAQCAtMCwwICsxLDI1IEBACitGcm9tIDcyMzA3NDY1NzFk MTI1NmQzMjU1N2ZkOTk1MjhhYzkwYTFkNzU5NTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitG cm9tOiBubyBuYW1lIDxnaXQtYW1AaW52YWxpZD4KK0RhdGU6IFN1biwgMjggU2VwIDIwMjUgMTE6 MzM6MTAgKzAyMDAKK1N1YmplY3Q6IFtQQVRDSCA1LzhdIGQvc3RlYW12cl9saDogcHJldmVudCBj cmFzaCBvbiB2aXZlIHBybzIvV2lWUm4KKworLS0tCisgc3JjL3hydC9kcml2ZXJzL3N0ZWFtdnJf bGgvc3RlYW12cl9saC5jcHAgfCAyICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp LCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9zcmMveHJ0L2RyaXZlcnMvc3RlYW12cl9s aC9zdGVhbXZyX2xoLmNwcCBiL3NyYy94cnQvZHJpdmVycy9zdGVhbXZyX2xoL3N0ZWFtdnJfbGgu Y3BwCitpbmRleCAzNDdkMjIwNjguLmQzNGQzMzMxZSAxMDA2NDQKKy0tLSBhL3NyYy94cnQvZHJp dmVycy9zdGVhbXZyX2xoL3N0ZWFtdnJfbGguY3BwCisrKysgYi9zcmMveHJ0L2RyaXZlcnMvc3Rl YW12cl9saC9zdGVhbXZyX2xoLmNwcAorQEAgLTk4NSw3ICs5ODUsNyBAQCBzdGVhbXZyX2xoX2Ny ZWF0ZV9kZXZpY2VzKHN0cnVjdCB4cnRfcHJvYmVyICp4cCwgc3RydWN0IHhydF9zeXN0ZW1fZGV2 aWNlcyAqKm91dAorIAorIAkvLyBJbmNsdWRlIHRoZSBITUQKKyAJaWYgKHN2cnMtPmN0eC0+aG1k KSB7CistCQlpZiAoc3Zycy0+Y3R4LT5obWQtPnZhcmlhbnQgPT0gVklWRV9WQVJJQU5UX1BSTzIg JiYgIXN2cnMtPmN0eC0+aG1kLT5pbml0X3ZpdmVfcHJvXzIoeHApKSB7CisrCQlpZiAoeHAgJiYg c3Zycy0+Y3R4LT5obWQtPnZhcmlhbnQgPT0gVklWRV9WQVJJQU5UX1BSTzIgJiYgIXN2cnMtPmN0 eC0+aG1kLT5pbml0X3ZpdmVfcHJvXzIoeHApKSB7CisgCQkJVV9MT0dfSUZMX1cobGV2ZWwsICJG b3VuZCBWaXZlIFBybyAyLCBidXQgZmFpbGVkIHRvIGluaXRpYWxpemUuIik7CisgCQl9CisgCist LSAKKzIuNTQuMAorCgpkaWZmIC0tZ2l0IGEvMDAwNi1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFz aC1vbi12aXZlLXBybzItV2lWUm4ucGF0Y2ggYi8wMDA2LWQtc3RlYW12cl9saC1wcmV2ZW50LWNy YXNoLW9uLXZpdmUtcHJvMi1XaVZSbi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZjA2YzFlOS4uMDAwMDAwMAotLS0gYS8wMDA2LWQtc3RlYW12cl9saC1wcmV2ZW50LWNyYXNo LW9uLXZpdmUtcHJvMi1XaVZSbi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAK LUZyb20gOWQxMjk0ODM0ZjQ5ZmM5MGVhMjJmNWQ4NDFkN2MwZTVjMGMxMDQ1ZCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKLUZyb206IG5vIG5hbWUgPGdpdC1hbUBpbnZhbGlkPgotRGF0ZTogU3Vu LCAyOCBTZXAgMjAyNSAxMTozMzoxMCArMDIwMAotU3ViamVjdDogW1BBVENIIDYvOF0gZC9zdGVh bXZyX2xoOiBwcmV2ZW50IGNyYXNoIG9uIHZpdmUgcHJvMi9XaVZSbgotCi0tLS0KLSBzcmMveHJ0 L2RyaXZlcnMvc3RlYW12cl9saC9zdGVhbXZyX2xoLmNwcCB8IDIgKy0KLSAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKLQotZGlmZiAtLWdpdCBhL3NyYy94cnQv ZHJpdmVycy9zdGVhbXZyX2xoL3N0ZWFtdnJfbGguY3BwIGIvc3JjL3hydC9kcml2ZXJzL3N0ZWFt dnJfbGgvc3RlYW12cl9saC5jcHAKLWluZGV4IDI1YzY4YTBlYS4uODZiYWE5ZmQ0IDEwMDY0NAot LS0tIGEvc3JjL3hydC9kcml2ZXJzL3N0ZWFtdnJfbGgvc3RlYW12cl9saC5jcHAKLSsrKyBiL3Ny Yy94cnQvZHJpdmVycy9zdGVhbXZyX2xoL3N0ZWFtdnJfbGguY3BwCi1AQCAtOTEzLDcgKzkxMyw3 IEBAIHN0ZWFtdnJfbGhfY3JlYXRlX2RldmljZXMoc3RydWN0IHhydF9wcm9iZXIgKnhwLCBzdHJ1 Y3QgeHJ0X3N5c3RlbV9kZXZpY2VzICoqb3V0Ci0gCi0gCS8vIEluY2x1ZGUgdGhlIEhNRAotIAlp ZiAoc3Zycy0+Y3R4LT5obWQpIHsKLS0JCWlmIChzdnJzLT5jdHgtPmhtZC0+dmFyaWFudCA9PSBW SVZFX1ZBUklBTlRfUFJPMiAmJiAhc3Zycy0+Y3R4LT5obWQtPmluaXRfdml2ZV9wcm9fMih4cCkp IHsKLSsJCWlmICh4cCAmJiBzdnJzLT5jdHgtPmhtZC0+dmFyaWFudCA9PSBWSVZFX1ZBUklBTlRf UFJPMiAmJiAhc3Zycy0+Y3R4LT5obWQtPmluaXRfdml2ZV9wcm9fMih4cCkpIHsKLSAJCQlVX0xP R19JRkxfVyhsZXZlbCwgIkZvdW5kIFZpdmUgUHJvIDIsIGJ1dCBmYWlsZWQgdG8gaW5pdGlhbGl6 ZS4iKTsKLSAJCX0KLSAKLS0tIAotMi41My4wCi0KCmRpZmYgLS1naXQgYS8wMDA2LXN0LW94ci1w dXNoLVhyRXZlbnREYXRhSW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZC13aGUucGF0Y2ggYi8wMDA2 LXN0LW94ci1wdXNoLVhyRXZlbnREYXRhSW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZC13aGUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDRmMDMyMgotLS0gL2Rldi9u dWxsCisrKyBiLzAwMDYtc3Qtb3hyLXB1c2gtWHJFdmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVD aGFuZ2VkLXdoZS5wYXRjaApAQCAtMCwwICsxLDI3IEBACitGcm9tIGY0MDBmMGU2MzI1OWJjYWRk OWE3OTU1YWUwMjc1Y2FhNWFlYTNkZWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBT YXBwaGlyZSA8aW1zYXBwaGlyZTBAZ21haWwuY29tPgorRGF0ZTogRnJpLCA3IE5vdiAyMDI1IDIw OjQxOjE2IC0wNjAwCitTdWJqZWN0OiBbUEFUQ0ggNi84XSBzdC9veHI6IHB1c2ggWHJFdmVudERh dGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2VkIHdoZW4KKyBwcm9maWxlIGNoYW5nZXMgdG8gTlVM TAorCistLS0KKyBzcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9hY3Rpb25zL294cl9pbnB1dC5j IHwgMyAtLS0KKyAxIGZpbGUgY2hhbmdlZCwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBh L3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL2FjdGlvbnMvb3hyX2lucHV0LmMgYi9zcmMveHJ0 L3N0YXRlX3RyYWNrZXJzL294ci9hY3Rpb25zL294cl9pbnB1dC5jCitpbmRleCAyYmQzZWEwMDku LjkzNjU5YmEzNSAxMDA2NDQKKy0tLSBhL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL2FjdGlv bnMvb3hyX2lucHV0LmMKKysrKyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL2FjdGlvbnMv b3hyX2lucHV0LmMKK0BAIC0xOTMyLDkgKzE5MzIsNiBAQCBzZXNzaW9uX3VwZGF0ZV9hY3Rpb25f YmluZGluZ3Moc3RydWN0IG94cl9sb2dnZXIgKmxvZywKKyAjZGVmaW5lIFBPUFVMQVRFX1BST0ZJ TEUoWCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAJZG8geyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorIAkJWHJQYXRoIHBh dGggPSBwcm9maWxlcy5YICE9IE5VTEwgPyBwcm9maWxlcy5YLT5wYXRoIDogWFJfTlVMTF9QQVRI OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKy0JCWlmIChwYXRoID09IFhS X05VTExfUEFUSCkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCistCQkJYnJlYWs7IC8qIE9ubHkgdXBk YXRlIG9uICJhY3RpdmUiIGludGVyYWN0aW9uIHByb2ZpbGVzIHBlciBzdWItYWN0aW9uIHBhdGgu ICovICAgICAgICAgICAgICAgICBcCistCQl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAorIAkJaWYgKGFjdGlvbl9jb250ZXh0LT5YICE9IHBhdGgpIHsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKKyAJCQlhY3Rpb25fY29udGV4dC0+WCA9IHBhdGg7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK KyAJCQlpbnRlcmFjdGlvbl9wcm9maWxlX2NoYW5nZWQgPSB0cnVlOyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKy0tIAorMi41NC4w CisKCmRpZmYgLS1naXQgYS8wMDA3LWRvbi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaCBiLzAwMDct ZG9uLXQtdmVyaWZ5LUdMLXN0dWZmLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLmQzYjI4YzQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA3LWRvbi10LXZlcmlmeS1HTC1z dHVmZi5wYXRjaApAQCAtMCwwICsxLDMzIEBACitGcm9tIDA4MzJjYzlhMmNjZDBmNjdiM2JkM2Ex MWVjMWIxZDEzOThkZmViZGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBubyBuYW1l IDxnaXQtYW1AaW52YWxpZD4KK0RhdGU6IFN1biwgMjUgSmFuIDIwMjYgMTA6MDk6MTAgKzAxMDAK K1N1YmplY3Q6IFtQQVRDSCA3LzhdIGRvbid0IHZlcmlmeSBHTCBzdHVmZgorCistLS0KKyBzcmMv eHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfdmVyaWZ5LmMgfCAxMCAtLS0tLS0tLS0tCisgMSBm aWxlIGNoYW5nZWQsIDEwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL3hydC9zdGF0 ZV90cmFja2Vycy9veHIvb3hyX3ZlcmlmeS5jIGIvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIv b3hyX3ZlcmlmeS5jCitpbmRleCA4ZjM1MjIyY2YuLjE0MThhODIzMSAxMDA2NDQKKy0tLSBhL3Ny Yy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl92ZXJpZnkuYworKysrIGIvc3JjL3hydC9zdGF0 ZV90cmFja2Vycy9veHIvb3hyX3ZlcmlmeS5jCitAQCAtNjEwLDE2ICs2MTAsNiBAQCBveHJfdmVy aWZ5X1hyR3JhcGhpY3NCaW5kaW5nT3BlbkdMWGxpYktIUihzdHJ1Y3Qgb3hyX2xvZ2dlciAqbG9n LCBjb25zdCBYckdyYXBoaQorIAkJICAgICAgICAgICAgICAgICAiWHJHcmFwaGljc0JpbmRpbmdP cGVuR0xYbGliS0hSOjpnbHhEcmF3YWJsZSBpcyBOVUxMIik7CisgCX0KKyAKKy0JaWYgKG5leHQt PmdseEZCQ29uZmlnID09IE5VTEwpIHsKKy0JCXJldHVybiBveHJfZXJyb3IobG9nLCBYUl9FUlJP Ul9HUkFQSElDU19ERVZJQ0VfSU5WQUxJRCwKKy0JCSAgICAgICAgICAgICAgICAgIlhyR3JhcGhp Y3NCaW5kaW5nT3BlbkdMWGxpYktIUjo6Z2x4RkJDb25maWcgaXMgTlVMTCIpOworLQl9CistCist CWlmIChuZXh0LT52aXN1YWxpZCA9PSAwKSB7CistCQlyZXR1cm4gb3hyX2Vycm9yKGxvZywgWFJf RVJST1JfR1JBUEhJQ1NfREVWSUNFX0lOVkFMSUQsCistCQkgICAgICAgICAgICAgICAgICJYckdy YXBoaWNzQmluZGluZ09wZW5HTFhsaWJLSFI6OnZpc3VhbGlkIGlzIDAiKTsKKy0JfQorLQorIAly ZXR1cm4gWFJfU1VDQ0VTUzsKKyB9CisgCistLSAKKzIuNTQuMAorCgpkaWZmIC0tZ2l0IGEvMDAw Ny1zdC1veHItcHVzaC1YckV2ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5nZWQtd2hlLnBh dGNoIGIvMDAwNy1zdC1veHItcHVzaC1YckV2ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5n ZWQtd2hlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZGRmOWRjLi4wMDAw MDAwCi0tLSBhLzAwMDctc3Qtb3hyLXB1c2gtWHJFdmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVD aGFuZ2VkLXdoZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLUZyb20gYjlh ZjUzNWNmMjI5YWNkYmY3ZjFiNTM0ZTk4MDRjMWI0ZTNmYTNlMSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKLUZyb206IFNhcHBoaXJlIDxpbXNhcHBoaXJlMEBnbWFpbC5jb20+Ci1EYXRlOiBGcmks IDcgTm92IDIwMjUgMjA6NDE6MTYgLTA2MDAKLVN1YmplY3Q6IFtQQVRDSCA3LzhdIHN0L294cjog cHVzaCBYckV2ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5nZWQgd2hlbgotIHByb2ZpbGUg Y2hhbmdlcyB0byBOVUxMCi0KLS0tLQotIHNyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl9p bnB1dC5jIHwgMTUgKysrKystLS0tLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9u cygrKSwgMTAgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMveHJ0L3N0YXRlX3RyYWNr ZXJzL294ci9veHJfaW5wdXQuYyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl9pbnB1 dC5jCi1pbmRleCBkZjJiNDc5ZWIuLmM0YjM2YmE4MSAxMDA2NDQKLS0tLSBhL3NyYy94cnQvc3Rh dGVfdHJhY2tlcnMvb3hyL294cl9pbnB1dC5jCi0rKysgYi9zcmMveHJ0L3N0YXRlX3RyYWNrZXJz L294ci9veHJfaW5wdXQuYwotQEAgLTE4ODEsMjYgKzE4ODEsMjEgQEAgb3hyX3Nlc3Npb25fdXBk YXRlX2FjdGlvbl9iaW5kaW5ncyhzdHJ1Y3Qgb3hyX2xvZ2dlciAqbG9nLCBzdHJ1Y3Qgb3hyX3Nl c3Npb24gKnMKLSAJCX0KLSAJfQotIAotLQkvKgotLQkgKiBUaGlzIGNvZGUgd2lsbCBvbmx5IHNl bmQgZXZlbnRzIChhbmQgdXBkYXRlIHRoZSBiaW5kaW5ncykgaWYgdGhlcmUKLS0JICogaXMgYSBw cm9maWxlIG1hcHBlZCB0byB0aGUgc3ViYWN0aW9uIHBhdGguIE1lYW5pbmcgaXQgd29uJ3QgdXBk YXRlCi0tCSAqIHRoZSBjYWNoZSBvciBnZW5lcmF0ZSBldmVudHMgd2hlbiBhIGNvbnRyb2xsZXIg Z29lcyBhd2F5LCBiYXNpY2FsbHkKLS0JICogbGF0Y2hpbmcgdGhlIGludGVyYWN0aW9uIHByb2Zp bGUgdG8gdGhlIGxhc3QgYWN0aXZlIGRldmljZS4KLS0JICovCi0rCWJvb2wgYW55X3Byb2ZpbGVf Y2hhbmdlZCA9IGZhbHNlOwotICNkZWZpbmUgUE9QVUxBVEVfUFJPRklMRShYKSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAotIAlkbyB7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gCQlYclBhdGggcGF0aCA9IHByb2ZpbGVzLlgg IT0gTlVMTCA/IHByb2ZpbGVzLlgtPnBhdGggOiBYUl9OVUxMX1BBVEg7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotLQkJaWYgKHBhdGggPT0gWFJfTlVMTF9QQVRIKSB7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLS0JCQlicmVhazsgLyogT25seSB1cGRhdGUgb24gImFjdGl2ZSIg aW50ZXJhY3Rpb24gcHJvZmlsZXMgcGVyIHN1Yi1hY3Rpb24gcGF0aC4gKi8gICAgICAgICAgICAg ICAgIFwKLS0JCX0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0gCQlpZiAoc2Vzcy0+WCAhPSBwYXRoKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotIAkJ CXNlc3MtPlggPSBwYXRoOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLQkJCW94cl9ldmVudF9w dXNoX1hyRXZlbnREYXRhSW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZChsb2csIHNlc3MpOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKwkJCWFueV9wcm9maWxlX2NoYW5nZWQgPSB0 cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAotIAkJfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLSAJfSB3aGlsZSAoZmFsc2UpOwotIAlPWFJfRk9SX0VBQ0hfVkFMSURfU1VC QUNUSU9OX1BBVEgoUE9QVUxBVEVfUFJPRklMRSkKLSAjdW5kZWYgUE9QVUxBVEVfUFJPRklMRQot IAotKwlpZiAoYW55X3Byb2ZpbGVfY2hhbmdlZCkgewotKwkJb3hyX2V2ZW50X3B1c2hfWHJFdmVu dERhdGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2VkKGxvZywgc2Vzcyk7Ci0rCX0KLSAJcmV0dXJu IG94cl9zZXNzaW9uX3N1Y2Nlc3NfcmVzdWx0KHNlc3MpOwotIH0KLSAKLS0tIAotMi41My4wCi0K CmRpZmYgLS1naXQgYS8wMDA4LURvbi10LWdldC1wb3NlLWRhdGEtZm9yLWZhc3QtcGF0aC5wYXRj aCBiLzAwMDgtRG9uLXQtZ2V0LXBvc2UtZGF0YS1mb3ItZmFzdC1wYXRoLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZWJhYjNiLi4wMDAwMDAwCi0tLSBhLzAwMDgtRG9uLXQt Z2V0LXBvc2UtZGF0YS1mb3ItZmFzdC1wYXRoLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDAg KzAsMCBAQAotRnJvbSAwMjIwNmVkZTNhYWU4MzJiZTUwMjQyNjNhODA1Y2FmZWUyMjY0MDgwIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogbm8gbmFtZSA8Z2l0LWFtQGludmFsaWQ+Ci1E YXRlOiBUaHUsIDE1IEphbiAyMDI2IDEyOjEzOjA2ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0ggOC84 XSBEb24ndCBnZXQgcG9zZSBkYXRhIGZvciBmYXN0IHBhdGgKLQotLS0tCi0gc3JjL3hydC9jb21w b3NpdG9yL21haW4vY29tcF9yZW5kZXJlci5jIHwgMTcgKysrKysrKysrLS0tLS0tLS0KLSAxIGZp bGUgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0 IGEvc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF9yZW5kZXJlci5jIGIvc3JjL3hydC9jb21w b3NpdG9yL21haW4vY29tcF9yZW5kZXJlci5jCi1pbmRleCBmZjk3MjhhNTkuLjA4Y2RlZjU0MCAx MDA2NDQKLS0tLSBhL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYwotKysr IGIvc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF9yZW5kZXJlci5jCi1AQCAtOTcyLDE0ICs5 NzIsMTUgQEAgZGlzcGF0Y2hfY29tcHV0ZShzdHJ1Y3QgY29tcF9yZW5kZXJlciAqciwKLSAJc3Ry dWN0IHhydF9wb3NlIHdvcmxkX3Bvc2VzX3NjYW5vdXRfYmVnaW5bWFJUX01BWF9WSUVXU107Ci0g CXN0cnVjdCB4cnRfcG9zZSB3b3JsZF9wb3Nlc19zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJRVdTXTsK LSAJc3RydWN0IHhydF9wb3NlIGV5ZV9wb3Nlc1tYUlRfTUFYX1ZJRVdTXTsKLS0JY2FsY19wb3Nl X2RhdGEoICAgICAgICAgICAgICAgIC8vCi0tCSAgICByLCAgICAgICAgICAgICAgICAgICAgICAg ICAvLwotLQkgICAgZm92X3NvdXJjZSwgICAgICAgICAgICAgICAgLy8KLS0JICAgIGZvdnMsICAg ICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICB3b3JsZF9wb3Nlc19zY2Fub3V0X2JlZ2luLCAv LwotLQkgICAgd29ybGRfcG9zZXNfc2Nhbm91dF9lbmQsICAgLy8KLS0JICAgIGV5ZV9wb3Nlcywg ICAgICAgICAgICAgICAgIC8vCi0tCSAgICByZW5kZXItPnItPnZpZXdfY291bnQpOyAgICAvLwot KwlpZiAoIWMtPmJhc2UuZnJhbWVfcGFyYW1zLm9uZV9wcm9qZWN0aW9uX2xheWVyX2Zhc3RfcGF0 aCkKLSsJCWNhbGNfcG9zZV9kYXRhKCAgICAgICAgICAgICAgICAvLwotKwkJICAgIHIsICAgICAg ICAgICAgICAgICAgICAgICAgIC8vCi0rCQkgICAgZm92X3NvdXJjZSwgICAgICAgICAgICAgICAg Ly8KLSsJCSAgICBmb3ZzLCAgICAgICAgICAgICAgICAgICAgICAvLwotKwkJICAgIHdvcmxkX3Bv c2VzX3NjYW5vdXRfYmVnaW4sIC8vCi0rCQkgICAgd29ybGRfcG9zZXNfc2Nhbm91dF9lbmQsICAg Ly8KLSsJCSAgICBleWVfcG9zZXMsICAgICAgICAgICAgICAgICAvLwotKwkJICAgIHJlbmRlci0+ ci0+dmlld19jb3VudCk7ICAgIC8vCi0gCi0gCS8vIFRhcmdldCBWdWxrYW4gcmVzb3VyY2VzLi4K LSAJVmtJbWFnZSB0YXJnZXRfaW1hZ2UgPSByLT5jLT50YXJnZXQtPmltYWdlc1tyLT5hY3F1aXJl ZF9idWZmZXJdLmhhbmRsZTsKLS0tIAotMi41My4wCi0KCmRpZmYgLS1naXQgYS8wMDA4LWNvbmZp Z3VyZS11X2dpdF90YWctaW4tV2lWUm4ucGF0Y2ggYi8wMDA4LWNvbmZpZ3VyZS11X2dpdF90YWct aW4tV2lWUm4ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmJhNWY1 OAotLS0gL2Rldi9udWxsCisrKyBiLzAwMDgtY29uZmlndXJlLXVfZ2l0X3RhZy1pbi1XaVZSbi5w YXRjaApAQCAtMCwwICsxLDM3IEBACitGcm9tIGQ3OWRlNWQ4MmRlZjk2NDE0ODRiOGQ4ODIxMmQz YzJlOTdlMzg3MzQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBubyBuYW1lIDxnaXQt YW1AaW52YWxpZD4KK0RhdGU6IEZyaSwgMjAgTWFyIDIwMjYgMTY6NTE6MTggKzAxMDAKK1N1Ympl Y3Q6IFtQQVRDSCA4LzhdIGNvbmZpZ3VyZSB1X2dpdF90YWcgaW4gV2lWUm4KKworLS0tCisgc3Jj L3hydC9hdXhpbGlhcnkvdXRpbC9DTWFrZUxpc3RzLnR4dCB8IDcgKy0tLS0tLQorIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgNiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3Ny Yy94cnQvYXV4aWxpYXJ5L3V0aWwvQ01ha2VMaXN0cy50eHQgYi9zcmMveHJ0L2F1eGlsaWFyeS91 dGlsL0NNYWtlTGlzdHMudHh0CitpbmRleCA3OTY0NmIxODEuLjIxYWRjZDQ0NiAxMDA2NDQKKy0t LSBhL3NyYy94cnQvYXV4aWxpYXJ5L3V0aWwvQ01ha2VMaXN0cy50eHQKKysrKyBiL3NyYy94cnQv YXV4aWxpYXJ5L3V0aWwvQ01ha2VMaXN0cy50eHQKK0BAIC0xMCwxMSArMTAsNiBAQAorICMgYnkg YXBwbGljYXRpb25zIGxpa2UgdGhlIE9wZW5YUiBydW50aW1lIGxpYnJhcnkuCisgIworIAorLWNv bmZpZ3VyZV9maWxlKAorLQkiJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L3VfZ2l0X3RhZy5j LmluIiAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L3VfZ2l0X3RhZy5jIgorLQlAT05MWQor LQkpCistCisgYWRkX2xpYnJhcnkoCisgCWF1eF91dGlsIFNUQVRJQworIAl1X2F1dG9leHBnYWlu LmMKK0BAIC0xMjAsNyArMTE1LDcgQEAgYWRkX2xpYnJhcnkoCisgCXVfd29ya2VyLmNwcAorIAl1 X3dvcmtlci5oCisgCXVfd29ya2VyLmhwcAorLQkiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9 L3VfZ2l0X3RhZy5jIgorKwkiJHtVX0dJVF9UQUdfQ1BQfSIKKyAJKQorIHRhcmdldF9saW5rX2xp YnJhcmllcygKKyAJYXV4X3V0aWwKKy0tIAorMi41NC4wCisKCmRpZmYgLS1naXQgYS8wMDA5LWRv bi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaCBiLzAwMDktZG9uLXQtdmVyaWZ5LUdMLXN0dWZmLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MjBjNTQzLi4wMDAwMDAwCi0tLSBh LzAwMDktZG9uLXQtdmVyaWZ5LUdMLXN0dWZmLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzMg KzAsMCBAQAotRnJvbSA2ZjE3ZWU2YzkyYjYyYTI0MTgxNjRmNjI3Nzc1ZjI2N2ViNmQxOWZjIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogbm8gbmFtZSA8Z2l0LWFtQGludmFsaWQ+Ci1E YXRlOiBTdW4sIDI1IEphbiAyMDI2IDEwOjA5OjEwICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIGRv bid0IHZlcmlmeSBHTCBzdHVmZgotCi0tLS0KLSBzcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9v eHJfdmVyaWZ5LmMgfCAxMCAtLS0tLS0tLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDEwIGRlbGV0aW9u cygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX3Zlcmlm eS5jIGIvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX3ZlcmlmeS5jCi1pbmRleCBlOTE5 N2Q1MDEuLjcxZjgxYzk1NCAxMDA2NDQKLS0tLSBhL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hy L294cl92ZXJpZnkuYwotKysrIGIvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX3Zlcmlm eS5jCi1AQCAtNjA4LDE2ICs2MDgsNiBAQCBveHJfdmVyaWZ5X1hyR3JhcGhpY3NCaW5kaW5nT3Bl bkdMWGxpYktIUihzdHJ1Y3Qgb3hyX2xvZ2dlciAqbG9nLCBjb25zdCBYckdyYXBoaQotIAkJICAg ICAgICAgICAgICAgICAiWHJHcmFwaGljc0JpbmRpbmdPcGVuR0xYbGliS0hSOjpnbHhEcmF3YWJs ZSBpcyBOVUxMIik7Ci0gCX0KLSAKLS0JaWYgKG5leHQtPmdseEZCQ29uZmlnID09IE5VTEwpIHsK LS0JCXJldHVybiBveHJfZXJyb3IobG9nLCBYUl9FUlJPUl9HUkFQSElDU19ERVZJQ0VfSU5WQUxJ RCwKLS0JCSAgICAgICAgICAgICAgICAgIlhyR3JhcGhpY3NCaW5kaW5nT3BlbkdMWGxpYktIUjo6 Z2x4RkJDb25maWcgaXMgTlVMTCIpOwotLQl9Ci0tCi0tCWlmIChuZXh0LT52aXN1YWxpZCA9PSAw KSB7Ci0tCQlyZXR1cm4gb3hyX2Vycm9yKGxvZywgWFJfRVJST1JfR1JBUEhJQ1NfREVWSUNFX0lO VkFMSUQsCi0tCQkgICAgICAgICAgICAgICAgICJYckdyYXBoaWNzQmluZGluZ09wZW5HTFhsaWJL SFI6OnZpc3VhbGlkIGlzIDAiKTsKLS0JfQotLQotIAlyZXR1cm4gWFJfU1VDQ0VTUzsKLSB9Ci0g Ci0tLSAKLTIuNTIuMAotCgpkaWZmIC0tZ2l0IGEvc291cmNlcyBiL3NvdXJjZXMKaW5kZXggZTU3 MjRiOS4uYzBiNzY5YiAxMDA2NDQKLS0tIGEvc291cmNlcworKysgYi9zb3VyY2VzCkBAIC0xLDIg KzEsMiBAQAotU0hBNTEyIChXaVZSbi12MjYuMi4zLnRhci5neikgPSA5NWYxNWNjODI3Zjg2ZTk4 ZjAxZmUyNzkxZThhY2MxYTY0MTg1Mzc2NWNlMzU1Y2E4ZjEyNGIzMzY0ZWI2MDBhYTgzOWQ4ZDdl NTQ0NDdhZjliYmI0MmNlZjQwZjgzYzY0MjZjOTMwZjAxOWFlMWI4ZGI0MTZkMWJlODlkY2Q0Zgot U0hBNTEyIChtb25hZG8tc3JjLTcyMzY1MmI1NDVhNzk2MDlmOWYwNGNiODlmY2JmODA3ZDlkNjQ1 MWEudGFyLmJ6MikgPSAzNzc3MGU4YmJkZTQ4ZTcwMTM2NTE0ODgwNGNhYzUyNjA3NjVkNTBmMzc2 ZTBhMGEyODNiN2IzNDI3OWZhZjFhOTg4OWQxY2VkODQzOTk5ZTAwYjJmZjY3MzQ0NTI4OTZhMmE3 ZDVjMDYxOTQ2NDUwYzdkODlhODNlY2VkODc2NQorU0hBNTEyIChXaVZSbi12MjYuNi50YXIuZ3op ID0gZGQzYzk0ODM0ODk4MWFkNGNmNjJiMTZhNTJiOTUwZTNjOWU4ODI3ZGM4YzgzYzczM2FmMjNl OWNjMzVmNTE0MzRkNmU5Zjc5OGRkYTMyM2FkYzI5ZGMzYjFlMTY3YzVjMjlmMzkwZmVjMjQ2OTE4 M2U0NWMwOTZlYTM1OGU4NGMKK1NIQTUxMiAobW9uYWRvLXNyYy0xYjUyNmJiM2EwZmYzMjZlY2Qw NWFmNGMyYzU0MTQwN2Y1M2M2ZDRiLnRhci5iejIpID0gNjYyYmY5MGQ1YTM4ZTA1YzU5MDllZDhk MWE1YzA5OTk3OWFlNDllYzZmN2E3MTU1MmE5ZDBjNjI1ZGRkYTI5ZjZiNjMxZTBmZWNhOGEwMWE2 YmI2ZWVmY2Q2YWFjZmJjODEyMDdmMjg1MjQ2NjE2NWM1NjE5NzNkZjFjZGRmOTcKCmRpZmYgLS1n aXQgYS93aXZybi5zcGVjIGIvd2l2cm4uc3BlYwppbmRleCAxZDcwY2M2Li5kOGVjN2JiIDEwMDY0 NAotLS0gYS93aXZybi5zcGVjCisrKyBiL3dpdnJuLnNwZWMKQEAgLTcsMTMgKzcsMTMgQEAKICMg V2lWUm4gaXMgYmFzZWQgb24gTW9uYWRvLCB3ZSBuZWVkIHRoZSBmdWxsIHNvdXJjZQogIyBNb25h ZG8gYmFzZSBzb3VyY2UgKGZpbmQgaW4gbW9uYWRvLXJldiBmaWxlKQogJWdsb2JhbCBmb3JnZXVy bDEgICAgICBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbW9uYWRvL21vbmFkbwotJWds b2JhbCBjb21taXQxICAgICAgICA3MjM2NTJiNTQ1YTc5NjA5ZjlmMDRjYjg5ZmNiZjgwN2Q5ZDY0 NTFhCislZ2xvYmFsIGNvbW1pdDEgICAgICAgIDFiNTI2YmIzYTBmZjMyNmVjZDA1YWY0YzJjNTQx NDA3ZjUzYzZkNGIKICVnbG9iYWwgbW9uYWRvX3ZlcnNpb24gMjUuMS4wCiAKICVmb3JnZW1ldGEK IAogTmFtZTogICAgICAgICAgIHdpdnJuCi1WZXJzaW9uOiAgICAgICAgMjYuMi4zCitWZXJzaW9u OiAgICAgICAgMjYuNgogUmVsZWFzZTogICAgICAgICVhdXRvcmVsZWFzZQogU3VtbWFyeTogICAg ICAgIEFuIE9wZW5YUiBzdHJlYW1pbmcgYXBwbGljYXRpb24gdG8gYSBzdGFuZGFsb25lIGhlYWRz ZXQKIApAQCAtMTAzLDE1ICsxMDMsMTQgQEAgUGF0Y2gwMDAzOiAgICAgIGh0dHBzOi8vcmF3Lmdp dGh1YnVzZXJjb250ZW50LmNvbS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS8KICMgZG93 bnN0cmVhbS1vbmx5IC0gV2lWUm4gc3BlY2lmaWMgTW9uYWRvIHBhdGNoZXMKIFBhdGNoMDAwNDog ICAgICBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vV2lWUm4vV2lWUm4vcmVmcy90 YWdzLyV7dGFnMH0vcGF0Y2hlcy9tb25hZG8vMDAwNC1zdC1veHItZm9yd2FyZC0wLXJlZnJlc2gt cmF0ZS5wYXRjaAogIyBkb3duc3RyZWFtLW9ubHkgLSBXaVZSbiBzcGVjaWZpYyBNb25hZG8gcGF0 Y2hlcwotUGF0Y2gwMDA1OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9X aVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA1LVJlcGxhY2Ut ZGlzdG9ydGlvbi13aXRoLWZvdmVhdGlvbi5wYXRjaAorUGF0Y2gwMDA1OiAgICAgIGh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9w YXRjaGVzL21vbmFkby8wMDA1LWQtc3RlYW12cl9saC1wcmV2ZW50LWNyYXNoLW9uLXZpdmUtcHJv Mi1XaVZSbi5wYXRjaAogIyBkb3duc3RyZWFtLW9ubHkgLSBXaVZSbiBzcGVjaWZpYyBNb25hZG8g cGF0Y2hlcwotUGF0Y2gwMDA2OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNv bS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA2LWQtc3Rl YW12cl9saC1wcmV2ZW50LWNyYXNoLW9uLXZpdmUtcHJvMi1XaVZSbi5wYXRjaAorUGF0Y2gwMDA2 OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9XaVZSbi9XaVZSbi9yZWZz L3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA2LXN0LW94ci1wdXNoLVhyRXZlbnREYXRh SW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZC13aGUucGF0Y2gKICMgZG93bnN0cmVhbS1vbmx5IC0g V2lWUm4gc3BlY2lmaWMgTW9uYWRvIHBhdGNoZXMKLVBhdGNoMDAwNzogICAgICBodHRwczovL3Jh dy5naXRodWJ1c2VyY29udGVudC5jb20vV2lWUm4vV2lWUm4vcmVmcy90YWdzLyV7dGFnMH0vcGF0 Y2hlcy9tb25hZG8vMDAwNy1zdC1veHItcHVzaC1YckV2ZW50RGF0YUludGVyYWN0aW9uUHJvZmls ZUNoYW5nZWQtd2hlLnBhdGNoCitQYXRjaDAwMDc6ICAgICAgaHR0cHM6Ly9yYXcuZ2l0aHVidXNl cmNvbnRlbnQuY29tL1dpVlJuL1dpVlJuL3JlZnMvdGFncy8le3RhZzB9L3BhdGNoZXMvbW9uYWRv LzAwMDctZG9uLXQtdmVyaWZ5LUdMLXN0dWZmLnBhdGNoCiAjIGRvd25zdHJlYW0tb25seSAtIFdp VlJuIHNwZWNpZmljIE1vbmFkbyBwYXRjaGVzCi1QYXRjaDAwMDg6ICAgICAgaHR0cHM6Ly9yYXcu Z2l0aHVidXNlcmNvbnRlbnQuY29tL1dpVlJuL1dpVlJuL3JlZnMvdGFncy8le3RhZzB9L3BhdGNo ZXMvbW9uYWRvLzAwMDgtRG9uLXQtZ2V0LXBvc2UtZGF0YS1mb3ItZmFzdC1wYXRoLnBhdGNoCi0j IGRvd25zdHJlYW0tb25seSAtIFdpVlJuIHNwZWNpZmljIE1vbmFkbyBwYXRjaGVzCi1QYXRjaDAw MDk6ICAgICAgaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL1dpVlJuL1dpVlJuL3Jl ZnMvdGFncy8le3RhZzB9L3BhdGNoZXMvbW9uYWRvLzAwMDktZG9uLXQtdmVyaWZ5LUdMLXN0dWZm LnBhdGNoCitQYXRjaDAwMDg6ICAgICAgaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29t L1dpVlJuL1dpVlJuL3JlZnMvdGFncy8le3RhZzB9L3BhdGNoZXMvbW9uYWRvLzAwMDgtY29uZmln dXJlLXVfZ2l0X3RhZy1pbi1XaVZSbi5wYXRjaAorCiAKICMgSWYgQnVpbGRSZXF1aXJlcyBjaGFu Z2UsIGJlIHN1cmUgdG8gdXBkYXRlIGVudmlzaW9uLXdpdnJuIFJlcXVpcmVzCiAjIGh0dHBzOi8v c3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvZW52aXNpb24vYmxvYi9yYXdoaWRlL2YvZW52aXNp b24uc3BlYwpAQCAtMTg4LDYgKzE4Nyw3IEBAIEJ1aWxkUmVxdWlyZXM6ICBxY29yby1xdDYtZGV2 ZWwKIEJ1aWxkUmVxdWlyZXM6ICBxdDYtcXRiYXNlLXByaXZhdGUtZGV2ZWwKIEJ1aWxkUmVxdWly ZXM6ICBxdDYtcXRkZWNsYXJhdGl2ZS1kZXZlbAogQnVpbGRSZXF1aXJlczogIHF0NnFtbChvcmcu a2RlLmRlc2t0b3ApCitCdWlsZFJlcXVpcmVzOiAgc3BpcnYtdG9vbHMKIEJ1aWxkUmVxdWlyZXM6 ICBzeXN0ZW1kLXJwbS1tYWNyb3MKIAogUmVxdWlyZXM6ICAgICAgIGFuZHJvaWQtdG9vbHMKQEAg LTI0OCw3ICsyNDgsNiBAQCBwdXNoZCBfZGVwcy9tb25hZG8tc3JjCiAlcGF0Y2ggLVAwMDA2IC1w MQogJXBhdGNoIC1QMDAwNyAtcDEKICVwYXRjaCAtUDAwMDggLXAxCi0lcGF0Y2ggLVAwMDA5IC1w MQogcG9wZAogCiAKQEAgLTI2MSw2ICsyNjAsNyBAQCBwb3BkCiAgIC1ERkVUQ0hDT05URU5UX0JB U0VfRElSPSJfZGVwcyIgXAogICAtREZFVENIQ09OVEVOVF9GVUxMWV9ESVNDT05ORUNURUQ9T04g XAogICAtREdJVF9ERVNDPXYle3ZlcnNpb259IFwKKyAgLURHSVRfQ09NTUlUPXYle3ZlcnNpb259 IFwKICAgLURPVlJfQ09NUEFUX1NFQVJDSF9QQVRIPSV7X2xpYmRpcn0vb3BlbmNvbXBvc2l0ZS9y dW50aW1lIFwKICAgLURXSVZSTl9CVUlMRF9DTElFTlQ9T0ZGIFwKICAgLURXSVZSTl9CVUlMRF9E QVNIQk9BUkQ9T04gXAo=