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] f44: Update to 26.6 (fedora#2487858). Date: Thu, 11 Jun 2026 15:15:34 GMT Message-ID: <178119093438.1.18141700160092108158.rpms-wivrn-078b99f733a9@fedoraproject.org> List-ID: X-Git-Repo: rpms/wivrn X-Git-Branch: f44 X-Git-Rev: 078b99f733a96dff9adfcf5f13d28142f61113e4 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvd2l2cm4KQnJhbmNo IDogZjQ0CkNvbW1pdCA6IDA3OGI5OWY3MzNhOTZkZmY5YWRmY2Y1ZjEzZDI4MTQyZjYxMTEzZTQK QXV0aG9yIDogSm9uYXRoYW4gU3RlZmZhbiA8anN0ZWZmYW5AZmVkb3JhcHJvamVjdC5vcmc+CkRh dGUgICA6IDIwMjYtMDYtMTFUMDk6MDI6MTAtMDY6MDAKU3RhdHMgIDogKzE2Ni8tMTgzMyBpbiAx NiBmaWxlKHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvd2l2 cm4vYy8wNzhiOTlmNzMzYTk2ZGZmOWFkZmNmNWYxM2QyODE0MmY2MTExM2U0P2JyYW5jaD1mNDQK CkxvZzoKVXBkYXRlIHRvIDI2LjYgKGZlZG9yYSMyNDg3ODU4KS4KCi0tLQpkaWZmIC0tZ2l0IGEv LmdpdGlnbm9yZSBiLy5naXRpZ25vcmUKaW5kZXggYjNmMjhjMS4uYmNlMDM2MSAxMDA2NDQKLS0t IGEvLmdpdGlnbm9yZQorKysgYi8uZ2l0aWdub3JlCkBAIC0yNiwzICsyNiw1IEBACiAvbW9uYWRv LXNyYy03MjM2NTJiNTQ1YTc5NjA5ZjlmMDRjYjg5ZmNiZjgwN2Q5ZDY0NTFhLnRhci5iejIKIC9X aVZSbi0yNi4yLjIudGFyLmd6CiAvV2lWUm4tdjI2LjIuMy50YXIuZ3oKKy9XaVZSbi12MjYuNi50 YXIuZ3oKKy9tb25hZG8tc3JjLTFiNTI2YmIzYTBmZjMyNmVjZDA1YWY0YzJjNTQxNDA3ZjUzYzZk NGIudGFyLmJ6MgoKZGlmZiAtLWdpdCBhLzAwMDEtYy1tdWx0aS1lYXJseS13YWtlLW9mLWNvbXBv c2l0b3IucGF0Y2ggYi8wMDAxLWMtbXVsdGktZWFybHktd2FrZS1vZi1jb21wb3NpdG9yLnBhdGNo CmluZGV4IGRhZTM3ODguLjAzY2I0MWUgMTAwNjQ0Ci0tLSBhLzAwMDEtYy1tdWx0aS1lYXJseS13 YWtlLW9mLWNvbXBvc2l0b3IucGF0Y2gKKysrIGIvMDAwMS1jLW11bHRpLWVhcmx5LXdha2Utb2Yt Y29tcG9zaXRvci5wYXRjaApAQCAtMSw0ICsxLDQgQEAKLUZyb20gMjg4NDc5NWI3ZDM1MmUzZTQ1 MzQ4NDczYTE3NjYwYTU2ODI2MGQ2ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20gZGUz YjU5MmZjMjZkN2IyNmI0ODUwZmNjNzhkN2U2YjIxMTQ3Zjc2YiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKIEZyb206IFBhdHJpY2sgTmljb2xhcyA8cGF0cmlja25pY29sYXNAbGFwb3N0ZS5uZXQ+ CiBEYXRlOiBUdWUsIDIyIE9jdCAyMDI0IDE1OjIzOjE5ICswMjAwCiBTdWJqZWN0OiBbUEFUQ0gg MS84XSBjL211bHRpOiBlYXJseSB3YWtlIG9mIGNvbXBvc2l0b3IKQEAgLTEwLDcgKzEwLDcgQEAg U3ViamVjdDogW1BBVENIIDEvOF0gYy9tdWx0aTogZWFybHkgd2FrZSBvZiBjb21wb3NpdG9yCiAg MyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQogCiBkaWZm IC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfY29tcG9zaXRvci5j IGIvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfY29tcG9zaXRvci5jCi1pbmRl eCA5NGNlYTExMGUuLjg4MzQ3YTA5MiAxMDA2NDQKK2luZGV4IDMzNjc1ZDQzZi4uNzFjNWViZjll IDEwMDY0NAogLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfY29tcG9z aXRvci5jCiArKysgYi9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9jb21wb3Np dG9yLmMKIEBAIC0yMzYsNyArMjM2LDIxIEBAIHdhaXRfZm9yX3NjaGVkdWxlZF9mcmVlKHN0cnVj dCBtdWx0aV9jb21wb3NpdG9yICptYykKQEAgLTM2LDEwICszNiwxMCBAQCBpbmRleCA5NGNlYTEx MGUuLjg4MzQ3YTA5MiAxMDA2NDQKICAKICBzdGF0aWMgdm9pZCAqCiBkaWZmIC0tZ2l0IGEvc3Jj L3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfcHJpdmF0ZS5oIGIvc3JjL3hydC9jb21w b3NpdG9yL211bHRpL2NvbXBfbXVsdGlfcHJpdmF0ZS5oCi1pbmRleCAzMzUxZGVmYTQuLmU4ZjBj ODI5NSAxMDA2NDQKK2luZGV4IDZjN2VjMDVmOC4uNTg4ODc4ZTM4IDEwMDY0NAogLS0tIGEvc3Jj L3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfcHJpdmF0ZS5oCiArKysgYi9zcmMveHJ0 L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9wcml2YXRlLmgKLUBAIC0zNTksNiArMzU5LDEw IEBAIHN0cnVjdCBtdWx0aV9zeXN0ZW1fY29tcG9zaXRvcgorQEAgLTM2NSw2ICszNjUsMTAgQEAg c3RydWN0IG11bHRpX3N5c3RlbV9jb21wb3NpdG9yCiAgCSAqLwogIAlzdHJ1Y3Qgb3NfbXV0ZXgg bGlzdF9hbmRfdGltaW5nX2xvY2s7CiAgCkBAIC01MSwxOSArNTEsMTkgQEAgaW5kZXggMzM1MWRl ZmE0Li5lOGYwYzgyOTUgMTAwNjQ0CiAgCXsKICAJCWludDY0X3QgcHJlZGljdGVkX2Rpc3BsYXlf dGltZV9uczsKIGRpZmYgLS1naXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0 aV9zeXN0ZW0uYyBiL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21wX211bHRpX3N5c3RlbS5j Ci1pbmRleCA0ZGI5MjM0NTcuLjgwY2JiYmMyNiAxMDA2NDQKK2luZGV4IDVhNGYzNWI4MS4uY2Jk YTM5YzI0IDEwMDY0NAogLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlf c3lzdGVtLmMKICsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21wX211bHRpX3N5c3Rl bS5jCi1AQCAtMjQsNiArMjQsOCBAQAotICNpbmNsdWRlICJ1dGlsL3VfdHJhY2VfbWFya2VyLmgi Ci0gI2luY2x1ZGUgInV0aWwvdV9kaXN0b3J0aW9uX21lc2guaCIKK0BAIC0xNCw2ICsxNCw4IEBA CisgI2luY2x1ZGUgInhydC94cnRfZGVmaW5lcy5oIgorICNpbmNsdWRlICJ4cnQveHJ0X3Nlc3Np b24uaCIKICAKICsjaW5jbHVkZSAibWF0aC9tX2FwaS5oIgogKwotICNpZmRlZiBYUlRfT1NfTElO VVgKLSAjaW5jbHVkZSAidXRpbC91X2xpbnV4LmgiCi0gI2VuZGlmCi1AQCAtMzkzLDE3ICszOTUs MjQgQEAgYnJvYWRjYXN0X3RpbWluZ3NfdG9fcGFjZXJzKHN0cnVjdCBtdWx0aV9zeXN0ZW1fY29t cG9zaXRvciAqbXNjLAorICNpbmNsdWRlICJvcy9vc190aW1lLmgiCisgI2luY2x1ZGUgIm9zL29z X3RocmVhZGluZy5oIgorIAorQEAgLTQyNiwxNyArNDI4LDI0IEBAIGJyb2FkY2FzdF90aW1pbmdz X3RvX3BhY2VycyhzdHJ1Y3QgbXVsdGlfc3lzdGVtX2NvbXBvc2l0b3IgKm1zYywKICB9CiAgCiAg c3RhdGljIHZvaWQKQEAgLTkzLDcgKzkzLDcgQEAgaW5kZXggNGRiOTIzNDU3Li44MGNiYmJjMjYg MTAwNjQ0CiAgfQogIAogIHN0YXRpYyB2b2lkCi1AQCAtNTMwLDEwICs1MzksMTMgQEAgbXVsdGlf bWFpbl9sb29wKHN0cnVjdCBtdWx0aV9zeXN0ZW1fY29tcG9zaXRvciAqbXNjKQorQEAgLTU2Miwx MCArNTcxLDEzIEBAIG11bHRpX21haW5fbG9vcChzdHJ1Y3QgbXVsdGlfc3lzdGVtX2NvbXBvc2l0 b3IgKm1zYykKICAJCWJyb2FkY2FzdF90aW1pbmdzX3RvX2NsaWVudHMobXNjLCBwcmVkaWN0ZWRf ZGlzcGxheV90aW1lX25zKTsKICAKICAJCS8vIE5vdyB3ZSBjYW4gd2FpdC4KQEAgLTEwOSw3ICsx MDksNyBAQCBpbmRleCA0ZGI5MjM0NTcuLjgwY2JiYmMyNiAxMDA2NDQKICAKICAJCS8vIE5vdyB3 ZSBrbm93IHRoZSBkaWZmLCBicm9hZGNhc3QgdG8gcGFjZXJzLgogIAkJYnJvYWRjYXN0X3RpbWlu Z3NfdG9fcGFjZXJzKG1zYywgcHJlZGljdGVkX2Rpc3BsYXlfdGltZV9ucywgcHJlZGljdGVkX2Rp c3BsYXlfcGVyaW9kX25zLCBkaWZmX25zKTsKLUBAIC03MjEsNiArNzMzLDggQEAgc3lzdGVtX2Nv bXBvc2l0b3JfZGVzdHJveShzdHJ1Y3QgeHJ0X3N5c3RlbV9jb21wb3NpdG9yICp4c2MpCitAQCAt Nzg1LDYgKzc5Nyw4IEBAIHN5c3RlbV9jb21wb3NpdG9yX2Rlc3Ryb3koc3RydWN0IHhydF9zeXN0 ZW1fY29tcG9zaXRvciAqeHNjKQogIAl4cnRfY29tcF9uYXRpdmVfZGVzdHJveSgmbXNjLT54Y24p OwogIAogIAlvc19tdXRleF9kZXN0cm95KCZtc2MtPmxpc3RfYW5kX3RpbWluZ19sb2NrKTsKQEAg LTExOCw4ICsxMTgsOCBAQCBpbmRleCA0ZGI5MjM0NTcuLjgwY2JiYmMyNiAxMDA2NDQKICAKICAJ ZnJlZShtc2MpOwogIH0KLUBAIC03NzUsNiArNzg5LDggQEAgY29tcF9tdWx0aV9jcmVhdGVfc3lz dGVtX2NvbXBvc2l0b3Ioc3RydWN0IHhydF9jb21wb3NpdG9yX25hdGl2ZSAqeGNuLAotIAltc2Mt PnNlc3Npb25zLnN0YXRlID0gZG9fd2FybV9zdGFydCA/IE1VTFRJX1NZU1RFTV9TVEFURV9JTklU X1dBUk1fU1RBUlQgOiBNVUxUSV9TWVNURU1fU1RBVEVfU1RPUFBFRDsKK0BAIC04NDMsNiArODU3 LDggQEAgY29tcF9tdWx0aV9jcmVhdGVfc3lzdGVtX2NvbXBvc2l0b3Ioc3RydWN0IHhydF9jb21w b3NpdG9yX25hdGl2ZSAqeGNuLAorIAltc2MtPmdldF92aWV3X2NvbmZpZ19jYWxsYmFjayA9IGdl dF92aWV3X2NvbmZpZ19jYWxsYmFjazsKICAKICAJb3NfbXV0ZXhfaW5pdCgmbXNjLT5saXN0X2Fu ZF90aW1pbmdfbG9jayk7CiArCW9zX211dGV4X2luaXQoJm1zYy0+d2FrZV9tdXRleCk7CkBAIC0x MjgsNSArMTI4LDUgQEAgaW5kZXggNGRiOTIzNDU3Li44MGNiYmJjMjYgMTAwNjQ0CiAgCS8vISBA dG9kbyBNYWtlIHRoZSBjbGllbnRzIG5vdCBnbyBmcm9tIElETEUgdG8gUkVBRFkgYmVmb3JlIHdl IGhhdmUgY29tcGxldGVkIGEgZmlyc3QgZnJhbWUuCiAgCS8vIE1ha2Ugc3VyZSB0aGVyZSBpcyBh dCBsZWFzdCBzb21lIHNvcnQgb2YgdmFsaWQgZnJhbWUgZGF0YSBoZXJlLgogLS0gCi0yLjUzLjAK KzIuNTQuMAogCgpkaWZmIC0tZ2l0IGEvMDAwMi1Vc2UtZXh0ZXJuLXNvY2tldC1mZC5wYXRjaCBi LzAwMDItVXNlLWV4dGVybi1zb2NrZXQtZmQucGF0Y2gKaW5kZXggZGU2YWM0YS4uOGY1MDdlMSAx MDA2NDQKLS0tIGEvMDAwMi1Vc2UtZXh0ZXJuLXNvY2tldC1mZC5wYXRjaAorKysgYi8wMDAyLVVz ZS1leHRlcm4tc29ja2V0LWZkLnBhdGNoCkBAIC0xLDQgKzEsNCBAQAotRnJvbSA4ZDIyNzIwYzk1 NzQxNDZmNzExNWY1YmE3YWMzOWYzYzRlNGY0OGFlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor RnJvbSAyMmQ5YmY4N2U5ZGQ2YTBkNTk3MDI1OGE2YjZjZDZjYTgyYzNiYjI2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQogRnJvbTogUGF0cmljayBOaWNvbGFzIDxwYXRyaWNrbmljb2xhc0BsYXBv c3RlLm5ldD4KIERhdGU6IFR1ZSwgOCBPY3QgMjAyNCAyMjoxMzoxNSArMDIwMAogU3ViamVjdDog W1BBVENIIDIvOF0gVXNlIGV4dGVybiBzb2NrZXQgZmQKQEAgLTgsMTAgKzgsMTAgQEAgU3ViamVj dDogW1BBVENIIDIvOF0gVXNlIGV4dGVybiBzb2NrZXQgZmQKICAxIGZpbGUgY2hhbmdlZCwgOCBp bnNlcnRpb25zKCspCiAKIGRpZmYgLS1naXQgYS9zcmMveHJ0L2lwYy9zZXJ2ZXIvaXBjX3NlcnZl cl9tYWlubG9vcF9saW51eC5jIGIvc3JjL3hydC9pcGMvc2VydmVyL2lwY19zZXJ2ZXJfbWFpbmxv b3BfbGludXguYwotaW5kZXggMzZiZjNlMzFkLi5lNDA0NDdiYjIgMTAwNjQ0CitpbmRleCBhMGJl ZjNkZGUuLjQ1M2RkMzhjYSAxMDA2NDQKIC0tLSBhL3NyYy94cnQvaXBjL3NlcnZlci9pcGNfc2Vy dmVyX21haW5sb29wX2xpbnV4LmMKICsrKyBiL3NyYy94cnQvaXBjL3NlcnZlci9pcGNfc2VydmVy X21haW5sb29wX2xpbnV4LmMKLUBAIC00OCw2ICs0OCw4IEBACitAQCAtNTAsNiArNTAsOCBAQAog ICNlbmRpZgogIAogIApAQCAtMjAsNyArMjAsNyBAQCBpbmRleCAzNmJmM2UzMWQuLmU0MDQ0N2Ji MiAxMDA2NDQKICAvKgogICAqCiAgICogU3RhdGljIGZ1bmN0aW9ucy4KLUBAIC01Niw2ICs1OCwx MiBAQAorQEAgLTU4LDYgKzYwLDEyIEBACiAgc3RhdGljIGludAogIGdldF9zeXN0ZW1kX3NvY2tl dChzdHJ1Y3QgaXBjX3NlcnZlcl9tYWlubG9vcCAqbWwsIGludCAqb3V0X2ZkKQogIHsKQEAgLTM0 LDUgKzM0LDUgQEAgaW5kZXggMzZiZjNlMzFkLi5lNDA0NDdiYjIgMTAwNjQ0CiAgCS8vIFdlIG1h eSBoYXZlIGJlZW4gbGF1bmNoZWQgd2l0aCBzb2NrZXQgYWN0aXZhdGlvbgogIAlpbnQgbnVtX2Zk cyA9IHNkX2xpc3Rlbl9mZHMoMCk7CiAtLSAKLTIuNTMuMAorMi41NC4wCiAKCmRpZmYgLS1naXQg YS8wMDAzLWNoYW5nZS1lbnZpcm9ubWVudC1ibGVuZC1tb2RlLXNlbGVjdGlvbi1sb2dpYy5wYXRj aCBiLzAwMDMtY2hhbmdlLWVudmlyb25tZW50LWJsZW5kLW1vZGUtc2VsZWN0aW9uLWxvZ2ljLnBh dGNoCmluZGV4IDQ4N2ZmZmIuLjI1MjllYWEgMTAwNjQ0Ci0tLSBhLzAwMDMtY2hhbmdlLWVudmly b25tZW50LWJsZW5kLW1vZGUtc2VsZWN0aW9uLWxvZ2ljLnBhdGNoCisrKyBiLzAwMDMtY2hhbmdl LWVudmlyb25tZW50LWJsZW5kLW1vZGUtc2VsZWN0aW9uLWxvZ2ljLnBhdGNoCkBAIC0xLDQgKzEs NCBAQAotRnJvbSBkYzhjNmIwZmRkMDAyNjMxODI3NTI4YjBjZDgzMWU3NjJjZjc0YzMxIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbSAzYzc0NTBkODAwYjBlM2YzNTQ0MGY0MWQzYmZjZjVi NWFiZTZkZmU4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogZ2FsaXN0ZXIgPDg1OTcw LWdhbGlzdGVyQHVzZXJzLm5vcmVwbHkuZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZz4KIERhdGU6IFNh dCwgMjMgTm92IDIwMjQgMDI6NDI6MTIgKzA5MDAKIFN1YmplY3Q6IFtQQVRDSCAzLzhdIGNoYW5n ZSBlbnZpcm9ubWVudCBibGVuZCBtb2RlIHNlbGVjdGlvbiBsb2dpYwpAQCAtOCwxMCArOCwxMCBA QCBTdWJqZWN0OiBbUEFUQ0ggMy84XSBjaGFuZ2UgZW52aXJvbm1lbnQgYmxlbmQgbW9kZSBzZWxl Y3Rpb24gbG9naWMKICAxIGZpbGUgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlv bnMoLSkKIAogZGlmZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9tdWx0aS9jb21wX211bHRp X3N5c3RlbS5jIGIvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfc3lzdGVtLmMK LWluZGV4IDgwY2JiYmMyNi4uNGEzOTdkN2VjIDEwMDY0NAoraW5kZXggY2JkYTM5YzI0Li5jMGM2 YzlmNjAgMTAwNjQ0CiAtLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbXVsdGkvY29tcF9tdWx0aV9z eXN0ZW0uYwogKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL211bHRpL2NvbXBfbXVsdGlfc3lzdGVt LmMKLUBAIC0yMzMsMjMgKzIzMywzMSBAQCBmaW5kX2FjdGl2ZV9ibGVuZF9tb2RlKHN0cnVjdCBt dWx0aV9jb21wb3NpdG9yICoqb3ZlcmxheV9zb3J0ZWRfY2xpZW50cywgc2l6ZV90CitAQCAtMjMx LDIzICsyMzEsMzEgQEAgZmluZF9hY3RpdmVfYmxlbmRfbW9kZShzdHJ1Y3QgbXVsdGlfY29tcG9z aXRvciAqKm92ZXJsYXlfc29ydGVkX2NsaWVudHMsIHNpemVfdAogIAlpZiAob3ZlcmxheV9zb3J0 ZWRfY2xpZW50cyA9PSBOVUxMKQogIAkJcmV0dXJuIFhSVF9CTEVORF9NT0RFX09QQVFVRTsKICAK QEAgLTUzLDUgKzUzLDUgQEAgaW5kZXggODBjYmJiYzI2Li40YTM5N2Q3ZWMgMTAwNjQ0CiAgfQog IAogLS0gCi0yLjUzLjAKKzIuNTQuMAogCgpkaWZmIC0tZ2l0IGEvMDAwNC1zdC1veHItZm9yd2Fy ZC0wLXJlZnJlc2gtcmF0ZS5wYXRjaCBiLzAwMDQtc3Qtb3hyLWZvcndhcmQtMC1yZWZyZXNoLXJh dGUucGF0Y2gKaW5kZXggYjk5N2FlNC4uNmE0ZmVjZiAxMDA2NDQKLS0tIGEvMDAwNC1zdC1veHIt Zm9yd2FyZC0wLXJlZnJlc2gtcmF0ZS5wYXRjaAorKysgYi8wMDA0LXN0LW94ci1mb3J3YXJkLTAt cmVmcmVzaC1yYXRlLnBhdGNoCkBAIC0xLDQgKzEsNCBAQAotRnJvbSBmNGI0YzA3NzQwZGNjNTg0 MzgzNDAxNzFlYzQ3MzU3MGIwMDJiMzc5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbSBi MjY4NzZjMjkyMDVmMmQyZmIwN2ZiZGJlMDA5ZDU2MzVlYjMyYmZkIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQogRnJvbTogUGF0cmljayBOaWNvbGFzIDxwYXRyaWNrbmljb2xhc0BsYXBvc3RlLm5l dD4KIERhdGU6IFNhdCwgMTUgTWFyIDIwMjUgMjI6MTk6NDggKzAxMDAKIFN1YmplY3Q6IFtQQVRD SCA0LzhdIHN0L294cjogZm9yd2FyZCAwIHJlZnJlc2ggcmF0ZQpAQCAtOSwxMCArOSwxMCBAQCBT dWJqZWN0OiBbUEFUQ0ggNC84XSBzdC9veHI6IGZvcndhcmQgMCByZWZyZXNoIHJhdGUKICAyIGZp bGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKIAogZGlmZiAtLWdp dCBhL3NyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfY29tcG9zaXRvci5jIGIvc3JjL3hydC9j b21wb3NpdG9yL21haW4vY29tcF9jb21wb3NpdG9yLmMKLWluZGV4IGI2YzQ5NDdiZi4uMGU4ZWQw MmI3IDEwMDY0NAoraW5kZXggYjQ0MjcxNjIyLi5hMWUxMTJlODkgMTAwNjQ0CiAtLS0gYS9zcmMv eHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX2NvbXBvc2l0b3IuYwogKysrIGIvc3JjL3hydC9jb21w b3NpdG9yL21haW4vY29tcF9jb21wb3NpdG9yLmMKLUBAIC0zNzIsNyArMzcyLDcgQEAgY29tcG9z aXRvcl9yZXF1ZXN0X2Rpc3BsYXlfcmVmcmVzaF9yYXRlKHN0cnVjdCB4cnRfY29tcG9zaXRvciAq eGMsIGZsb2F0IGRpc3BsYXkKK0BAIC0zOTEsNyArMzkxLDcgQEAgY29tcG9zaXRvcl9yZXF1ZXN0 X2Rpc3BsYXlfcmVmcmVzaF9yYXRlKHN0cnVjdCB4cnRfY29tcG9zaXRvciAqeGMsIGZsb2F0IGRp c3BsYXkKICAJaWYgKGMtPnRhcmdldCAmJiBjLT50YXJnZXQtPnJlcXVlc3RfcmVmcmVzaF9yYXRl KSB7CiAgCQl4cnRfcmVzdWx0X3QgcmVzdWx0ID0gY29tcF90YXJnZXRfcmVxdWVzdF9yZWZyZXNo X3JhdGUoYy0+dGFyZ2V0LCBkaXNwbGF5X3JlZnJlc2hfcmF0ZV9oeik7CiAgCQkvLyBBc3N1bWUg cmVmcmVzaCByYXRlIGNoYW5nZSBpcyBpbW1lZGlhdGUKQEAgLTIyLDcgKzIyLDcgQEAgaW5kZXgg YjZjNDk0N2JmLi4wZThlZDAyYjcgMTAwNjQ0CiAgCQlyZXR1cm4gcmVzdWx0OwogIAl9CiBkaWZm IC0tZ2l0IGEvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX2FwaV9zZXNzaW9uLmMgYi9z cmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfYXBpX3Nlc3Npb24uYwotaW5kZXggNTg3Y2Rm MjhmLi5iMWY5NmRmNTQgMTAwNjQ0CitpbmRleCAwOTI5N2Y4ODUuLjlmM2E3ZWJjMiAxMDA2NDQK IC0tLSBhL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl9hcGlfc2Vzc2lvbi5jCiArKysg Yi9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfYXBpX3Nlc3Npb24uYwogQEAgLTQ1NSwx NSArNDU1LDExIEBAIG94cl94clJlcXVlc3REaXNwbGF5UmVmcmVzaFJhdGVGQihYclNlc3Npb24g c2Vzc2lvbiwgZmxvYXQgZGlzcGxheVJlZnJlc2hSYXRlKQpAQCAtNDMsNSArNDMsNSBAQCBpbmRl eCA1ODdjZGYyOGYuLmIxZjk2ZGY1NCAxMDA2NDQKICAJCWlmICgoaW50KShkaXNwbGF5UmVmcmVz aFJhdGUgKiAxMDAuMGYpID09IChpbnQpKHNlc3MtPnN5cy0+eHN5c2MtPmluZm8ucmVmcmVzaF9y YXRlc19oeltpXSAqIDEwMC4wZikpIHsKICAJCQlmb3VuZCA9IHRydWU7CiAtLSAKLTIuNTMuMAor Mi41NC4wCiAKCmRpZmYgLS1naXQgYS8wMDA1LVJlcGxhY2UtZGlzdG9ydGlvbi13aXRoLWZvdmVh dGlvbi5wYXRjaCBiLzAwMDUtUmVwbGFjZS1kaXN0b3J0aW9uLXdpdGgtZm92ZWF0aW9uLnBhdGNo CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMmVkM2JhLi4wMDAwMDAwCi0tLSBhLzAw MDUtUmVwbGFjZS1kaXN0b3J0aW9uLXdpdGgtZm92ZWF0aW9uLnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsMTY0NCArMCwwIEBACi1Gcm9tIDczZjMyOWVhYmExZTQ2YmY2MmZmNjU3OWUyN2NkMzlm MGQ5ZTY3MzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBQYXRyaWNrIE5pY29sYXMg PHBhdHJpY2tuaWNvbGFzQGxhcG9zdGUubmV0PgotRGF0ZTogV2VkLCAxMSBTZXAgMjAyNCAyMjo1 NjoyOSArMDIwMAotU3ViamVjdDogW1BBVENIIDUvOF0gUmVwbGFjZSBkaXN0b3J0aW9uIHdpdGgg Zm92ZWF0aW9uCi0KLS0tLQotIHNyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIu YyAgICAgICB8ICAgNiArLQotIHNyYy94cnQvY29tcG9zaXRvci9tYWluL2NvbXBfdGFyZ2V0Lmgg ICAgICAgICB8ICAgMyArLQotIHNyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvQ01ha2VMaXN0cy50 eHQgICAgICB8ICAgMiArLQotIHNyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX2NvbXB1 dGUuYyAgICB8IDQxMCArKysrKysrLS0tLS0tLS0tLS0KLSBzcmMveHJ0L2NvbXBvc2l0b3IvcmVu ZGVyL3JlbmRlcl9pbnRlcmZhY2UuaCAgfCAgOTUgKystLQotIHNyYy94cnQvY29tcG9zaXRvci9y ZW5kZXIvcmVuZGVyX3Jlc291cmNlcy5jICB8IDEwNiArKy0tLQotIHNyYy94cnQvY29tcG9zaXRv ci9zaGFkZXJzL0NNYWtlTGlzdHMudHh0ICAgICB8ICAgMiArLQotIHNyYy94cnQvY29tcG9zaXRv ci9zaGFkZXJzL2NsZWFyLmNvbXAgICAgICAgICB8ICAgNCArLQotIHNyYy94cnQvY29tcG9zaXRv ci9zaGFkZXJzL2Rpc3RvcnRpb24uY29tcCAgICB8IDE4MiArKysrLS0tLQotIC4uLi9jb21wb3Np dG9yL3V0aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5jICB8ICAgNiArLQotIC4uLi9jb21wb3Np dG9yL3V0aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5oICB8ICAgOSArLQotIHNyYy94cnQvY29t cG9zaXRvci91dGlsL2NvbXBfcmVuZGVyLmggICAgICAgICB8ICAxMSArLQotIHNyYy94cnQvY29t cG9zaXRvci91dGlsL2NvbXBfcmVuZGVyX2NzLmMgICAgICB8IDExMiArKy0tLQotIDEzIGZpbGVz IGNoYW5nZWQsIDM1NiBpbnNlcnRpb25zKCspLCA1OTIgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1n aXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX3JlbmRlcmVyLmMgYi9zcmMveHJ0L2Nv bXBvc2l0b3IvbWFpbi9jb21wX3JlbmRlcmVyLmMKLWluZGV4IGY2YzQwMzAxNS4uZmY5NzI4YTU5 IDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29tcF9yZW5kZXJlci5jCi0r KysgYi9zcmMveHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX3JlbmRlcmVyLmMKLUBAIC05ODMsNyAr OTgzLDggQEAgZGlzcGF0Y2hfY29tcHV0ZShzdHJ1Y3QgY29tcF9yZW5kZXJlciAqciwKLSAKLSAJ Ly8gVGFyZ2V0IFZ1bGthbiByZXNvdXJjZXMuLgotIAlWa0ltYWdlIHRhcmdldF9pbWFnZSA9IHIt PmMtPnRhcmdldC0+aW1hZ2VzW3ItPmFjcXVpcmVkX2J1ZmZlcl0uaGFuZGxlOwotLQlWa0ltYWdl VmlldyB0YXJnZXRfc3RvcmFnZV92aWV3ID0gci0+Yy0+dGFyZ2V0LT5pbWFnZXNbci0+YWNxdWly ZWRfYnVmZmVyXS52aWV3OwotKwlWa0ltYWdlVmlldyB0YXJnZXRfc3RvcmFnZV92aWV3X3kgPSBy LT5jLT50YXJnZXQtPmltYWdlc1tyLT5hY3F1aXJlZF9idWZmZXJdLnZpZXc7Ci0rCVZrSW1hZ2VW aWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfY2JjciA9IHItPmMtPnRhcmdldC0+aW1hZ2VzW3ItPmFj cXVpcmVkX2J1ZmZlcl0udmlld19jYmNyOwotIAotIAkvLyBUYXJnZXQgdmlldyBpbmZvcm1hdGlv bi4KLSAJc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHRhcmdldF92aWV3cG9ydF9kYXRhc1tY UlRfTUFYX1ZJRVdTXTsKLUBAIC0xMDAwLDcgKzEwMDEsOCBAQCBkaXNwYXRjaF9jb21wdXRlKHN0 cnVjdCBjb21wX3JlbmRlcmVyICpyLAotIAkgICAgZXllX3Bvc2VzLCAgICAgICAgICAgICAgICAg ICAgICAgLy8KLSAJICAgIGZvdnMsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0gCSAg ICB0YXJnZXRfaW1hZ2UsICAgICAgICAgICAgICAgICAgICAvLwotLQkgICAgdGFyZ2V0X3N0b3Jh Z2VfdmlldywgICAgICAgICAgICAgLy8KLSsJICAgIHRhcmdldF9zdG9yYWdlX3ZpZXdfeSwgICAg ICAgICAgIC8vCi0rCSAgICB0YXJnZXRfc3RvcmFnZV92aWV3X2NiY3IsICAgICAgICAvLwotIAkg ICAgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzKTsgICAgICAgICAgLy8KLSAKLSAJLy8gRXZlcnl0aGlu ZyBpcyByZWFkeSwgc3VibWl0IHRvIHRoZSBxdWV1ZS4KLWRpZmYgLS1naXQgYS9zcmMveHJ0L2Nv bXBvc2l0b3IvbWFpbi9jb21wX3RhcmdldC5oIGIvc3JjL3hydC9jb21wb3NpdG9yL21haW4vY29t cF90YXJnZXQuaAotaW5kZXggOTUzMDUyMTU1Li42OGNhMTVjYjkgMTAwNjQ0Ci0tLS0gYS9zcmMv eHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX3RhcmdldC5oCi0rKysgYi9zcmMveHJ0L2NvbXBvc2l0 b3IvbWFpbi9jb21wX3RhcmdldC5oCi1AQCAtNjIsNyArNjIsOCBAQCBlbnVtIGNvbXBfdGFyZ2V0 X2Rpc3BsYXlfdGltaW5nX3VzYWdlCi0gc3RydWN0IGNvbXBfdGFyZ2V0X2ltYWdlCi0gewotIAlW a0ltYWdlIGhhbmRsZTsKLS0JVmtJbWFnZVZpZXcgdmlldzsKLSsJVmtJbWFnZVZpZXcgdmlldzsg Ly8gWQotKwlWa0ltYWdlVmlldyB2aWV3X2NiY3I7Ci0gfTsKLSAKLSAvKiEKLWRpZmYgLS1naXQg YS9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL0NNYWtlTGlzdHMudHh0IGIvc3JjL3hydC9jb21w b3NpdG9yL3JlbmRlci9DTWFrZUxpc3RzLnR4dAotaW5kZXggOGIwMDE0ZDM5Li42MGFmYjBjZTIg MTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL0NNYWtlTGlzdHMudHh0Ci0r KysgYi9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL0NNYWtlTGlzdHMudHh0Ci1AQCAtMTAsNyAr MTAsNyBAQCBhZGRfbGlicmFyeSgKLSAJY29tcF9yZW5kZXIgU1RBVElDCi0gCXJlbmRlcl9idWZm ZXIuYwotIAlyZW5kZXJfY29tcHV0ZS5jCi0tCXJlbmRlcl9kaXN0b3J0aW9uLmMKLSsJIyByZW5k ZXIvcmVuZGVyX2Rpc3RvcnRpb24uYyBpbXBsZW1lbnRlZCBpbiB3aXZybgotIAlyZW5kZXJfZ2Z4 LmMKLSAJcmVuZGVyX2ludGVyZmFjZS5oCi0gCXJlbmRlcl9yZXNvdXJjZXMuYwotZGlmZiAtLWdp dCBhL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX2NvbXB1dGUuYyBiL3NyYy94cnQv Y29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX2NvbXB1dGUuYwotaW5kZXggNjJkNzEzOGI5Li40NGMz ZjBhZWUgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvcmVuZGVyL3JlbmRlcl9jb21w dXRlLmMKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX2NvbXB1dGUuYwot QEAgLTg2LDggKzg2LDEwIEBAIHVwZGF0ZV9jb21wdXRlX2xheWVyX2Rlc2NyaXB0b3Jfc2V0KHN0 cnVjdCB2a19idW5kbGUgKnZrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFZrU2FtcGxlciBzcmNfc2FtcGxlcnNbUkVOREVSX01BWF9JTUFHRVNfU0laRV0sCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdz W1JFTkRFUl9NQVhfSU1BR0VTX1NJWkVdLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90IGltYWdlX2NvdW50LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nLAotLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3LAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nX3ksCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRp bmdfY2JjciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmll dyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X2NiY3IsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdWJvX2JpbmRpbmcsCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgVmtCdWZmZXIgdWJvX2J1ZmZlciwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBWa0RldmljZVNpemUgdWJvX3NpemUsCi1AQCAtMTAw LDggKzEwMiwxMyBAQCB1cGRhdGVfY29tcHV0ZV9sYXllcl9kZXNjcmlwdG9yX3NldChzdHJ1Y3Qg dmtfYnVuZGxlICp2aywKLSAJCXNyY19pbWFnZV9pbmZvW2ldLmltYWdlTGF5b3V0ID0gVktfSU1B R0VfTEFZT1VUX1NIQURFUl9SRUFEX09OTFlfT1BUSU1BTDsKLSAJfQotIAotLQlWa0Rlc2NyaXB0 b3JJbWFnZUluZm8gdGFyZ2V0X2ltYWdlX2luZm8gPSB7Ci0tCSAgICAuaW1hZ2VWaWV3ID0gdGFy Z2V0X2ltYWdlX3ZpZXcsCi0rCVZrRGVzY3JpcHRvckltYWdlSW5mbyB0YXJnZXRfaW1hZ2VfaW5m b195ID0gewotKwkgICAgLmltYWdlVmlldyA9IHRhcmdldF9pbWFnZV92aWV3X3ksCi0rCSAgICAu aW1hZ2VMYXlvdXQgPSBWS19JTUFHRV9MQVlPVVRfR0VORVJBTCwKLSsJfTsKLSsKLSsJVmtEZXNj cmlwdG9ySW1hZ2VJbmZvIHRhcmdldF9pbWFnZV9pbmZvX2NiY3IgPSB7Ci0rCSAgICAuaW1hZ2VW aWV3ID0gdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAJICAgIC5pbWFnZUxheW91dCA9IFZLX0lN QUdFX0xBWU9VVF9HRU5FUkFMLAotIAl9OwotIAotQEAgLTExMSw3ICsxMTgsNyBAQCB1cGRhdGVf Y29tcHV0ZV9sYXllcl9kZXNjcmlwdG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAg IC5yYW5nZSA9IHVib19zaXplLAotIAl9OwotIAotLQlWa1dyaXRlRGVzY3JpcHRvclNldCB3cml0 ZV9kZXNjcmlwdG9yX3NldHNbM10gPSB7Ci0rCVZrV3JpdGVEZXNjcmlwdG9yU2V0IHdyaXRlX2Rl c2NyaXB0b3Jfc2V0c1s0XSA9IHsKLSAJICAgIHsKLSAJICAgICAgICAuc1R5cGUgPSBWS19TVFJV Q1RVUkVfVFlQRV9XUklURV9ERVNDUklQVE9SX1NFVCwKLSAJICAgICAgICAuZHN0U2V0ID0gZGVz Y3JpcHRvcl9zZXQsCi1AQCAtMTIzLDEwICsxMzAsMTAgQEAgdXBkYXRlX2NvbXB1dGVfbGF5ZXJf ZGVzY3JpcHRvcl9zZXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICB7Ci0gCSAgICAgICAg LnNUeXBlID0gVktfU1RSVUNUVVJFX1RZUEVfV1JJVEVfREVTQ1JJUFRPUl9TRVQsCi0gCSAgICAg ICAgLmRzdFNldCA9IGRlc2NyaXB0b3Jfc2V0LAotLQkgICAgICAgIC5kc3RCaW5kaW5nID0gdGFy Z2V0X2JpbmRpbmcsCi0rCSAgICAgICAgLmRzdEJpbmRpbmcgPSB0YXJnZXRfYmluZGluZ195LAot IAkgICAgICAgIC5kZXNjcmlwdG9yQ291bnQgPSAxLAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlw ZSA9IFZLX0RFU0NSSVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotLQkgICAgICAgIC5wSW1hZ2VJ bmZvID0gJnRhcmdldF9pbWFnZV9pbmZvLAotKwkgICAgICAgIC5wSW1hZ2VJbmZvID0gJnRhcmdl dF9pbWFnZV9pbmZvX3ksCi0gCSAgICB9LAotIAkgICAgewotIAkgICAgICAgIC5zVHlwZSA9IFZL X1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VULAotQEAgLTEzNiw2ICsxNDMsMTQg QEAgdXBkYXRlX2NvbXB1dGVfbGF5ZXJfZGVzY3JpcHRvcl9zZXQoc3RydWN0IHZrX2J1bmRsZSAq dmssCi0gCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1VOSUZP Uk1fQlVGRkVSLAotIAkgICAgICAgIC5wQnVmZmVySW5mbyA9ICZidWZmZXJfaW5mbywKLSAJICAg IH0sCi0rCSAgICB7Ci0rCSAgICAgICAgLnNUeXBlID0gVktfU1RSVUNUVVJFX1RZUEVfV1JJVEVf REVTQ1JJUFRPUl9TRVQsCi0rCSAgICAgICAgLmRzdFNldCA9IGRlc2NyaXB0b3Jfc2V0LAotKwkg ICAgICAgIC5kc3RCaW5kaW5nID0gdGFyZ2V0X2JpbmRpbmdfY2JjciwKLSsJICAgICAgICAuZGVz Y3JpcHRvckNvdW50ID0gMSwKLSsJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQ VE9SX1RZUEVfU1RPUkFHRV9JTUFHRSwKLSsJICAgICAgICAucEltYWdlSW5mbyA9ICZ0YXJnZXRf aW1hZ2VfaW5mb19jYmNyLAotKwkgICAgfSwKLSAJfTsKLSAKLSAJdmstPnZrVXBkYXRlRGVzY3Jp cHRvclNldHMoICAgICAgICAgICAgLy8KLUBAIC0xNTIsMTAgKzE2NywxMiBAQCB1cGRhdGVfY29t cHV0ZV9zaGFyZWRfZGVzY3JpcHRvcl9zZXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrU2FtcGxlciBzcmNfc2FtcGxlcnNbWFJU X01BWF9WSUVXU10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1h Z2VWaWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgZGlzdG9ydGlvbl9iaW5kaW5nLAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgZGlzdG9ydGlvbl9zYW1w bGVyc1szICogWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFZrSW1hZ2VWaWV3IGRpc3RvcnRpb25faW1hZ2Vfdmlld3NbMyAqIFhSVF9NQVhfVklF V1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0YXJn ZXRfYmluZGluZywKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFn ZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFZrRGV2aWNlU2l6ZSBmb3ZlYXRpb25fc2l6ZSwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgVmtCdWZmZXIgZm92ZWF0aW9uX2J1ZmZlciwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRpbmdfeSwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdGFyZ2V0X2JpbmRp bmdfY2JjciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZp ZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdWJvX2JpbmRpbmcsCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrQnVmZmVyIHVib19idWZmZXIsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrRGV2aWNlU2l6ZSB1Ym9fc2l6ZSwKLUBA IC0xNjksMTUgKzE4NiwxOSBAQCB1cGRhdGVfY29tcHV0ZV9zaGFyZWRfZGVzY3JpcHRvcl9zZXQo c3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCQlzcmNfaW1hZ2VfaW5mb1tpXS5pbWFnZUxheW91dCA9 IFZLX0lNQUdFX0xBWU9VVF9TSEFERVJfUkVBRF9PTkxZX09QVElNQUw7Ci0gCX0KLSAKLS0JVmtE ZXNjcmlwdG9ySW1hZ2VJbmZvIGRpc3RvcnRpb25faW1hZ2VfaW5mb1szICogWFJUX01BWF9WSUVX U107Ci0tCWZvciAodWludDMyX3QgaSA9IDA7IGkgPCAzICogdmlld19jb3VudDsgKytpKSB7Ci0t CQlkaXN0b3J0aW9uX2ltYWdlX2luZm9baV0uc2FtcGxlciA9IGRpc3RvcnRpb25fc2FtcGxlcnNb aV07Ci0tCQlkaXN0b3J0aW9uX2ltYWdlX2luZm9baV0uaW1hZ2VWaWV3ID0gZGlzdG9ydGlvbl9p bWFnZV92aWV3c1tpXTsKLS0JCWRpc3RvcnRpb25faW1hZ2VfaW5mb1tpXS5pbWFnZUxheW91dCA9 IFZLX0lNQUdFX0xBWU9VVF9TSEFERVJfUkVBRF9PTkxZX09QVElNQUw7Ci0tCX0KLSsJVmtEZXNj cmlwdG9yQnVmZmVySW5mbyBmb3ZlYXRpb25fYnVmZmVyX2luZm8gPSB7Ci0rCSAgICAuYnVmZmVy ID0gZm92ZWF0aW9uX2J1ZmZlciwKLSsJICAgIC5vZmZzZXQgPSAwLAotKwkgICAgLnJhbmdlID0g Zm92ZWF0aW9uX3NpemUsCi0rCX07Ci0gCi0tCVZrRGVzY3JpcHRvckltYWdlSW5mbyB0YXJnZXRf aW1hZ2VfaW5mbyA9IHsKLS0JICAgIC5pbWFnZVZpZXcgPSB0YXJnZXRfaW1hZ2VfdmlldywKLSsJ VmtEZXNjcmlwdG9ySW1hZ2VJbmZvIHRhcmdldF9pbWFnZV95X2luZm8gPSB7Ci0rCSAgICAuaW1h Z2VWaWV3ID0gdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsJICAgIC5pbWFnZUxheW91dCA9IFZLX0lN QUdFX0xBWU9VVF9HRU5FUkFMLAotKwl9OwotKwotKwlWa0Rlc2NyaXB0b3JJbWFnZUluZm8gdGFy Z2V0X2ltYWdlX2NiY3JfaW5mbyA9IHsKLSsJICAgIC5pbWFnZVZpZXcgPSB0YXJnZXRfaW1hZ2Vf dmlld19jYmNyLAotIAkgICAgLmltYWdlTGF5b3V0ID0gVktfSU1BR0VfTEFZT1VUX0dFTkVSQUws Ci0gCX07Ci0gCi1AQCAtMTg3LDcgKzIwOCw3IEBAIHVwZGF0ZV9jb21wdXRlX3NoYXJlZF9kZXNj cmlwdG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAgIC5yYW5nZSA9IHVib19zaXpl LAotIAl9OwotIAotLQlWa1dyaXRlRGVzY3JpcHRvclNldCB3cml0ZV9kZXNjcmlwdG9yX3NldHNb NF0gPSB7Ci0rCVZrV3JpdGVEZXNjcmlwdG9yU2V0IHdyaXRlX2Rlc2NyaXB0b3Jfc2V0c1s1XSA9 IHsKLSAJICAgIHsKLSAJICAgICAgICAuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9XUklURV9E RVNDUklQVE9SX1NFVCwKLSAJICAgICAgICAuZHN0U2V0ID0gZGVzY3JpcHRvcl9zZXQsCi1AQCAt MjAwLDE3ICsyMjEsMTcgQEAgdXBkYXRlX2NvbXB1dGVfc2hhcmVkX2Rlc2NyaXB0b3Jfc2V0KHN0 cnVjdCB2a19idW5kbGUgKnZrLAotIAkgICAgICAgIC5zVHlwZSA9IFZLX1NUUlVDVFVSRV9UWVBF X1dSSVRFX0RFU0NSSVBUT1JfU0VULAotIAkgICAgICAgIC5kc3RTZXQgPSBkZXNjcmlwdG9yX3Nl dCwKLSAJICAgICAgICAuZHN0QmluZGluZyA9IGRpc3RvcnRpb25fYmluZGluZywKLS0JICAgICAg ICAuZGVzY3JpcHRvckNvdW50ID0gMyAqIHZpZXdfY291bnQsCi0tCSAgICAgICAgLmRlc2NyaXB0 b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX0NPTUJJTkVEX0lNQUdFX1NBTVBMRVIsCi0tCSAg ICAgICAgLnBJbWFnZUluZm8gPSBkaXN0b3J0aW9uX2ltYWdlX2luZm8sCi0rCSAgICAgICAgLmRl c2NyaXB0b3JDb3VudCA9IDEsCi0rCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJ UFRPUl9UWVBFX1NUT1JBR0VfQlVGRkVSLAotKwkgICAgICAgIC5wQnVmZmVySW5mbyA9ICZmb3Zl YXRpb25fYnVmZmVyX2luZm8sCi0gCSAgICB9LAotIAkgICAgewotIAkgICAgICAgIC5zVHlwZSA9 IFZLX1NUUlVDVFVSRV9UWVBFX1dSSVRFX0RFU0NSSVBUT1JfU0VULAotIAkgICAgICAgIC5kc3RT ZXQgPSBkZXNjcmlwdG9yX3NldCwKLS0JICAgICAgICAuZHN0QmluZGluZyA9IHRhcmdldF9iaW5k aW5nLAotKwkgICAgICAgIC5kc3RCaW5kaW5nID0gdGFyZ2V0X2JpbmRpbmdfeSwKLSAJICAgICAg ICAuZGVzY3JpcHRvckNvdW50ID0gMSwKLSAJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19E RVNDUklQVE9SX1RZUEVfU1RPUkFHRV9JTUFHRSwKLS0JICAgICAgICAucEltYWdlSW5mbyA9ICZ0 YXJnZXRfaW1hZ2VfaW5mbywKLSsJICAgICAgICAucEltYWdlSW5mbyA9ICZ0YXJnZXRfaW1hZ2Vf eV9pbmZvLAotIAkgICAgfSwKLSAJICAgIHsKLSAJICAgICAgICAuc1R5cGUgPSBWS19TVFJVQ1RV UkVfVFlQRV9XUklURV9ERVNDUklQVE9SX1NFVCwKLUBAIC0yMjAsNiArMjQxLDE0IEBAIHVwZGF0 ZV9jb21wdXRlX3NoYXJlZF9kZXNjcmlwdG9yX3NldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJ ICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9SX1RZUEVfVU5JRk9STV9CVUZG RVIsCi0gCSAgICAgICAgLnBCdWZmZXJJbmZvID0gJmJ1ZmZlcl9pbmZvLAotIAkgICAgfSwKLSsJ ICAgIHsKLSsJICAgICAgICAuc1R5cGUgPSBWS19TVFJVQ1RVUkVfVFlQRV9XUklURV9ERVNDUklQ VE9SX1NFVCwKLSsJICAgICAgICAuZHN0U2V0ID0gZGVzY3JpcHRvcl9zZXQsCi0rCSAgICAgICAg LmRzdEJpbmRpbmcgPSB0YXJnZXRfYmluZGluZ19jYmNyLAotKwkgICAgICAgIC5kZXNjcmlwdG9y Q291bnQgPSAxLAotKwkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NSSVBUT1JfVFlQ RV9TVE9SQUdFX0lNQUdFLAotKwkgICAgICAgIC5wSW1hZ2VJbmZvID0gJnRhcmdldF9pbWFnZV9j YmNyX2luZm8sCi0rCSAgICB9LAotIAl9OwotIAotIAl2ay0+dmtVcGRhdGVEZXNjcmlwdG9yU2V0 cyggICAgICAgICAgICAvLwotQEAgLTI3OCwxMjkgKzMwNyw2IEBAIHVwZGF0ZV9jb21wdXRlX2Rl c2NyaXB0b3Jfc2V0X3RhcmdldChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAJICAgIE5VTEwpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcERlc2NyaXB0b3JDb3BpZXMKLSB9Ci0gCi0t c3RhdGljIHZvaWQKLS1kaXNwYXRjaF9wcm9qZWN0X3BpcGVsaW5lKHN0cnVjdCByZW5kZXJfY29t cHV0ZSAqcmVuZGVyLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19z YW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1h Z2VWaWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9yZWN0IHNyY19ub3JtX3JlY3Rz W1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZSB0YXJn ZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRf aW1hZ2VfdmlldywKLS0gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5k ZXJfdmlld3BvcnRfZGF0YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgIFZrUGlwZWxpbmUgcGlwZWxpbmUpCi0tewotLQlzdHJ1Y3QgdmtfYnVuZGxlICp2 ayA9IHZrX2Zyb21fcmVuZGVyKHJlbmRlcik7Ci0tCXN0cnVjdCByZW5kZXJfcmVzb3VyY2VzICpy ID0gcmVuZGVyLT5yOwotLQotLQotLQkvKgotLQkgKiBVQk8KLS0JICovCi0tCi0tCXN0cnVjdCBy ZW5kZXJfY29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhICpkYXRhID0KLS0JICAgIChzdHJ1Y3Qg cmVuZGVyX2NvbXB1dGVfZGlzdG9ydGlvbl91Ym9fZGF0YSAqKXItPmNvbXB1dGUuZGlzdG9ydGlv bi51Ym8ubWFwcGVkOwotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52aWV3 X2NvdW50OyArK2kpIHsKLS0JCWRhdGEtPnZpZXdzW2ldID0gdmlld3NbaV07Ci0tCQlkYXRhLT5w b3N0X3RyYW5zZm9ybXNbaV0gPSBzcmNfbm9ybV9yZWN0c1tpXTsKLS0JfQotLQotLQotLQkvKgot LQkgKiBTb3VyY2UsIHRhcmdldCBhbmQgZGlzdG9ydGlvbiBpbWFnZXMuCi0tCSAqLwotLQotLQlW a0ltYWdlU3VicmVzb3VyY2VSYW5nZSBzdWJyZXNvdXJjZV9yYW5nZSA9IHsKLS0JICAgIC5hc3Bl Y3RNYXNrID0gVktfSU1BR0VfQVNQRUNUX0NPTE9SX0JJVCwKLS0JICAgIC5iYXNlTWlwTGV2ZWwg PSAwLAotLQkgICAgLmxldmVsQ291bnQgPSBWS19SRU1BSU5JTkdfTUlQX0xFVkVMUywKLS0JICAg IC5iYXNlQXJyYXlMYXllciA9IDAsCi0tCSAgICAubGF5ZXJDb3VudCA9IFZLX1JFTUFJTklOR19B UlJBWV9MQVlFUlMsCi0tCX07Ci0tCi0tCXZrX2NtZF9pbWFnZV9iYXJyaWVyX2dwdV9sb2NrZWQo IC8vCi0tCSAgICB2aywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICByLT5jbWQs ICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICB0YXJnZXRfaW1hZ2UsICAgICAgICAgICAg ICAgIC8vCi0tCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICBWS19B Q0NFU1NfU0hBREVSX1dSSVRFX0JJVCwgIC8vCi0tCSAgICBWS19JTUFHRV9MQVlPVVRfVU5ERUZJ TkVELCAgIC8vCi0tCSAgICBWS19JTUFHRV9MQVlPVVRfR0VORVJBTCwgICAgIC8vCi0tCSAgICBz dWJyZXNvdXJjZV9yYW5nZSk7ICAgICAgICAgIC8vCi0tCi0tCVZrU2FtcGxlciBzYW1wbGVyID0g ci0+c2FtcGxlcnMuY2xhbXBfdG9fZWRnZTsKLS0JVmtTYW1wbGVyIGRpc3RvcnRpb25fc2FtcGxl cnNbMyAqIFhSVF9NQVhfVklFV1NdOwotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVy LT5yLT52aWV3X2NvdW50OyArK2kpIHsKLS0JCWRpc3RvcnRpb25fc2FtcGxlcnNbMyAqIGkgKyAw XSA9IHNhbXBsZXI7Ci0tCQlkaXN0b3J0aW9uX3NhbXBsZXJzWzMgKiBpICsgMV0gPSBzYW1wbGVy OwotLQkJZGlzdG9ydGlvbl9zYW1wbGVyc1szICogaSArIDJdID0gc2FtcGxlcjsKLS0JfQotLQot LQl1cGRhdGVfY29tcHV0ZV9zaGFyZWRfZGVzY3JpcHRvcl9zZXQoIC8vCi0tCSAgICB2aywgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIHItPmNvbXB1dGUuc3JjX2JpbmRp bmcsICAgICAgICAgICAvLwotLQkgICAgc3JjX3NhbXBsZXJzLCAgICAgICAgICAgICAgICAgICAg IC8vCi0tCSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAgICAgICAgICAgLy8KLS0JICAgIHIt PmNvbXB1dGUuZGlzdG9ydGlvbl9iaW5kaW5nLCAgICAvLwotLQkgICAgZGlzdG9ydGlvbl9zYW1w bGVycywgICAgICAgICAgICAgIC8vCi0tCSAgICByLT5kaXN0b3J0aW9uLmltYWdlX3ZpZXdzLCAg ICAgICAgLy8KLS0JICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmcsICAgICAgICAvLwotLQkg ICAgdGFyZ2V0X2ltYWdlX3ZpZXcsICAgICAgICAgICAgICAgIC8vCi0tCSAgICByLT5jb21wdXRl LnVib19iaW5kaW5nLCAgICAgICAgICAgLy8KLS0JICAgIHItPmNvbXB1dGUuZGlzdG9ydGlvbi51 Ym8uYnVmZmVyLCAvLwotLQkgICAgVktfV0hPTEVfU0laRSwgICAgICAgICAgICAgICAgICAgIC8v Ci0tCSAgICByZW5kZXItPnNoYXJlZF9kZXNjcmlwdG9yX3NldCwgICAgLy8KLS0JICAgIHJlbmRl ci0+ci0+dmlld19jb3VudCk7ICAgICAgICAgICAvLwotLQotLQl2ay0+dmtDbWRCaW5kUGlwZWxp bmUoICAgICAgICAgICAgICAvLwotLQkgICAgci0+Y21kLCAgICAgICAgICAgICAgICAgICAgICAg ICAvLwotLQkgICAgVktfUElQRUxJTkVfQklORF9QT0lOVF9DT01QVVRFLCAvLyBwaXBlbGluZUJp bmRQb2ludAotLQkgICAgcGlwZWxpbmUpOyAgICAgICAgICAgICAgICAgICAgICAvLyBwaXBlbGlu ZQotLQotLQl2ay0+dmtDbWRCaW5kRGVzY3JpcHRvclNldHMoICAgICAgICAgICAgICAgLy8KLS0J ICAgIHItPmNtZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICBWS19Q SVBFTElORV9CSU5EX1BPSU5UX0NPTVBVVEUsICAgICAgICAvLyBwaXBlbGluZUJpbmRQb2ludAot LQkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCwgLy8gbGF5b3V0Ci0t CSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBmaXJzdFNldAot LQkgICAgMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZGVzY3JpcHRv clNldENvdW50Ci0tCSAgICAmcmVuZGVyLT5zaGFyZWRfZGVzY3JpcHRvcl9zZXQsICAgICAgICAv LyBwRGVzY3JpcHRvclNldHMKLS0JICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC8vIGR5bmFtaWNPZmZzZXRDb3VudAotLQkgICAgTlVMTCk7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLy8gcER5bmFtaWNPZmZzZXRzCi0tCi0tCi0tCXVpbnQzMl90IHcg PSAwLCBoID0gMDsKLS0JY2FsY19kaXNwYXRjaF9kaW1zX3ZpZXdzKHZpZXdzLCByZW5kZXItPnIt PnZpZXdfY291bnQsICZ3LCAmaCk7Ci0tCWFzc2VydCh3ICE9IDAgJiYgaCAhPSAwKTsKLS0KLS0J dmstPnZrQ21kRGlzcGF0Y2goIC8vCi0tCSAgICByLT5jbWQsICAgICAgICAvLwotLQkgICAgdywg ICAgICAgICAgICAgLy8gZ3JvdXBDb3VudFgKLS0JICAgIGgsICAgICAgICAgICAgIC8vIGdyb3Vw Q291bnRZCi0tCSAgICAyKTsgICAgICAgICAgICAvLyBncm91cENvdW50WgotLQotLQlWa0ltYWdl TWVtb3J5QmFycmllciBtZW1vcnlCYXJyaWVyID0gewotLQkgICAgLnNUeXBlID0gVktfU1RSVUNU VVJFX1RZUEVfSU1BR0VfTUVNT1JZX0JBUlJJRVIsCi0tCSAgICAuc3JjQWNjZXNzTWFzayA9IFZL X0FDQ0VTU19TSEFERVJfV1JJVEVfQklULAotLQkgICAgLmRzdEFjY2Vzc01hc2sgPSBWS19BQ0NF U1NfTUVNT1JZX1JFQURfQklULAotLQkgICAgLm9sZExheW91dCA9IFZLX0lNQUdFX0xBWU9VVF9H RU5FUkFMLAotLQkgICAgLm5ld0xheW91dCA9IFZLX0lNQUdFX0xBWU9VVF9QUkVTRU5UX1NSQ19L SFIsCi0tCSAgICAuc3JjUXVldWVGYW1pbHlJbmRleCA9IFZLX1FVRVVFX0ZBTUlMWV9JR05PUkVE LAotLQkgICAgLmRzdFF1ZXVlRmFtaWx5SW5kZXggPSBWS19RVUVVRV9GQU1JTFlfSUdOT1JFRCwK LS0JICAgIC5pbWFnZSA9IHRhcmdldF9pbWFnZSwKLS0JICAgIC5zdWJyZXNvdXJjZVJhbmdlID0g c3VicmVzb3VyY2VfcmFuZ2UsCi0tCX07Ci0tCi0tCXZrLT52a0NtZFBpcGVsaW5lQmFycmllcigg ICAgICAgICAgICAgICAgIC8vCi0tCSAgICByLT5jbWQsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC8vCi0tCSAgICBWS19QSVBFTElORV9TVEFHRV9DT01QVVRFX1NIQURFUl9CSVQsIC8v Ci0tCSAgICBWS19QSVBFTElORV9TVEFHRV9UT1BfT0ZfUElQRV9CSVQsICAgIC8vCi0tCSAgICAw LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICAwLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICBOVUxMLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8vCi0tCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vCi0tCSAgICBOVUxMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8vCi0tCSAgICAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCSAg ICAmbWVtb3J5QmFycmllcik7ICAgICAgICAgICAgICAgICAgICAgIC8vCi0tfQotLQotIAotIC8q Ci0gICoKLUBAIC01MTgsNyArNDI0LDggQEAgcmVuZGVyX2NvbXB1dGVfbGF5ZXJzKHN0cnVjdCBy ZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIg c3JjX3NhbXBsZXJzW1JFTkRFUl9NQVhfSU1BR0VTX1NJWkVdLAotICAgICAgICAgICAgICAgICAg ICAgICBWa0ltYWdlVmlldyBzcmNfaW1hZ2Vfdmlld3NbUkVOREVSX01BWF9JTUFHRVNfU0laRV0s Ci0gICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG51bV9zcmNzLAotLSAgICAgICAgICAg ICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLSsgICAgICAgICAgICAg ICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAg ICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAgICAg ICAgICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhICp2aWV3LAotICAg ICAgICAgICAgICAgICAgICAgICBib29sIGRvX3RpbWV3YXJwKQotIHsKLUBAIC01MzgsOCArNDQ1 LDEwIEBAIHJlbmRlcl9jb21wdXRlX2xheWVycyhzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRl ciwKLSAJICAgIHNyY19zYW1wbGVycywgICAgICAgICAgICAgICAgICAgIC8vCi0gCSAgICBzcmNf aW1hZ2Vfdmlld3MsICAgICAgICAgICAgICAgICAvLwotIAkgICAgbnVtX3NyY3MsICAgICAgICAg ICAgICAgICAgICAgICAgLy8KLS0JICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmcsICAgICAg IC8vCi0tCSAgICB0YXJnZXRfaW1hZ2VfdmlldywgICAgICAgICAgICAgICAvLwotKwkgICAgci0+ Y29tcHV0ZS50YXJnZXRfYmluZGluZ195LCAgICAgLy8KLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0 X2JpbmRpbmdfY2JjciwgIC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Vfdmlld195LCAgICAgICAgICAg ICAvLwotKwkgICAgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwgICAgICAgICAgLy8KLSAJICAgIHIt PmNvbXB1dGUudWJvX2JpbmRpbmcsICAgICAgICAgIC8vCi0gCSAgICB1Ym8sICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAvLwotIAkgICAgVktfV0hPTEVfU0laRSwgICAgICAgICAgICAgICAg ICAgLy8KLUBAIC01NzQsMTkgKzQ4MywxOCBAQCByZW5kZXJfY29tcHV0ZV9sYXllcnMoc3RydWN0 IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gfQotIAotIHZvaWQKLS1yZW5kZXJfY29tcHV0ZV9w cm9qZWN0aW9uX3RpbWV3YXJwKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRf TUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VW aWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9yZWN0IHNyY19ub3Jt X3JlY3RzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IHhydF9wb3NlIHNyY19wb3Nlc1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfZm92IHNyY19m b3ZzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgc3RydWN0IHhydF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2JlZ2luW1hSVF9NQVhfVklF V1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhy dF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2ltYWdlLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcs Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVy X3ZpZXdwb3J0X2RhdGEgdmlld3NbWFJUX01BWF9WSUVXU10pCi0rcmVuZGVyX2NvbXB1dGVfcHJv amVjdGlvbihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgIFZrU2FtcGxlciBzcmNfc2FtcGxlcnNbWFJUX01BWF9WSUVXU10sCi0rICAgICAg ICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyBzcmNfaW1hZ2Vfdmlld3NbWFJUX01BWF9W SUVXU10sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X25vcm1h bGl6ZWRfcmVjdCBzcmNfbm9ybV9yZWN0c1tYUlRfTUFYX1ZJRVdTXSwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2ltYWdlLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X2NiY3IsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmlld3Nb WFJUX01BWF9WSUVXU10pCi0gewotIAlhc3NlcnQocmVuZGVyLT5yICE9IE5VTEwpOwotKwotKwlz dHJ1Y3QgdmtfYnVuZGxlICp2ayA9IHZrX2Zyb21fcmVuZGVyKHJlbmRlcik7Ci0gCXN0cnVjdCBy ZW5kZXJfcmVzb3VyY2VzICpyID0gcmVuZGVyLT5yOwotIAotIAotQEAgLTU5NCwxMDggKzUwMiwx MTAgQEAgcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbl90aW1ld2FycChzdHJ1Y3QgcmVuZGVyX2Nv bXB1dGUgKnJlbmRlciwKLSAJICogVUJPCi0gCSAqLwotIAotLQlzdHJ1Y3QgeHJ0X21hdHJpeF80 eDQgdGltZV93YXJwX21hdHJpeF9zY2Fub3V0X2JlZ2luW1hSVF9NQVhfVklFV1NdOwotLQlzdHJ1 Y3QgeHJ0X21hdHJpeF80eDQgdGltZV93YXJwX21hdHJpeF9zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJ RVdTXTsKLS0JZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IHJlbmRlci0+ci0+dmlld19jb3VudDsg KytpKSB7Ci0tCQlyZW5kZXJfY2FsY190aW1lX3dhcnBfbWF0cml4KCAgICAgICAgICAgIC8vCi0t CQkgICAgJnNyY19wb3Nlc1tpXSwgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgJnNy Y19mb3ZzW2ldLCAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgJm5ld19wb3Nlc19z Y2Fub3V0X2JlZ2luW2ldLCAgICAgICAgIC8vCi0tCQkgICAgJnRpbWVfd2FycF9tYXRyaXhfc2Nh bm91dF9iZWdpbltpXSk7IC8vCi0tCi0tCQlyZW5kZXJfY2FsY190aW1lX3dhcnBfbWF0cml4KCAg ICAgICAgICAvLwotLQkJICAgICZzcmNfcG9zZXNbaV0sICAgICAgICAgICAgICAgICAgICAgLy8K LS0JCSAgICAmc3JjX2ZvdnNbaV0sICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgJm5l d19wb3Nlc19zY2Fub3V0X2VuZFtpXSwgICAgICAgICAvLwotLQkJICAgICZ0aW1lX3dhcnBfbWF0 cml4X3NjYW5vdXRfZW5kW2ldKTsgLy8KLS0JfQotLQotIAlzdHJ1Y3QgcmVuZGVyX2NvbXB1dGVf ZGlzdG9ydGlvbl91Ym9fZGF0YSAqZGF0YSA9Ci0gCSAgICAoc3RydWN0IHJlbmRlcl9jb21wdXRl X2Rpc3RvcnRpb25fdWJvX2RhdGEgKilyLT5jb21wdXRlLmRpc3RvcnRpb24udWJvLm1hcHBlZDsK LSAJZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IHJlbmRlci0+ci0+dmlld19jb3VudDsgKytpKSB7 Ci0gCQlkYXRhLT52aWV3c1tpXSA9IHZpZXdzW2ldOwotLQkJZGF0YS0+cHJlX3RyYW5zZm9ybXNb aV0gPSByLT5kaXN0b3J0aW9uLnV2X3RvX3RhbmFuZ2xlW2ldOwotLQkJZGF0YS0+dHJhbnNmb3Jt X3RpbWV3YXJwX3NjYW5vdXRfYmVnaW5baV0gPSB0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfYmVn aW5baV07Ci0tCQlkYXRhLT50cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9lbmRbaV0gPSB0aW1l X3dhcnBfbWF0cml4X3NjYW5vdXRfZW5kW2ldOwotIAkJZGF0YS0+cG9zdF90cmFuc2Zvcm1zW2ld ID0gc3JjX25vcm1fcmVjdHNbaV07Ci0gCX0KLSAKLS0JZGlzcGF0Y2hfcHJvamVjdF9waXBlbGlu ZShyZW5kZXIsIHNyY19zYW1wbGVycywgc3JjX2ltYWdlX3ZpZXdzLCBzcmNfbm9ybV9yZWN0cywg dGFyZ2V0X2ltYWdlLAotLQkgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9pbWFnZV92 aWV3LCB2aWV3cywgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnRpbWV3YXJwX3BpcGVsaW5lKTsKLS19 Ci0gCi0rCS8qCi0rCSAqIFNvdXJjZSwgdGFyZ2V0IGFuZCBkaXN0b3J0aW9uIGltYWdlcy4KLSsJ ICovCi0gCi0tLyoKLS0gKiBUaGlzIGZ1bmN0aW9uIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgb24g Y29udGVudCBhbHJlYWR5IHRpbWV3YXJwZWQgdG8gbmV3X3Bvc2VzX3NjYW5vdXRfYmVnaW4uCi0t ICogSXQgcGVyZm9ybXMgb25seSB0aGUgdGltZXdhcnAgbmVzc2NhcnkgdG8gY29tcGVuc2F0ZSBm b3IgdGhlIHRpbWUgZGVsdGEgYmV0d2VlbiB0aGUgc3RhcnQgYW5kIGVuZCBvZgotLSAqIHNjYW5v dXQuCi0tICovCi0tdm9pZAotLXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fc2Nhbm91dF9jb21w ZW5zYXRpb24oc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgc3JjX3NhbXBsZXJzW1hS VF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgVmtJbWFnZVZpZXcgc3JjX2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhy dF9ub3JtYWxpemVkX3JlY3Qgc3JjX3JlY3RzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9mb3Yg c3JjX2ZvdnNbWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRf YmVnaW5bWFJUX01BWF9WSUVXU10sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X3Bvc2UgbmV3X3Bvc2VzX3NjYW5vdXRfZW5k W1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVj dCByZW5kZXJfdmlld3BvcnRfZGF0YSB2aWV3c1tYUlRfTUFYX1ZJRVdTXSkKLS17Ci0tCWFzc2Vy dChyZW5kZXItPnIgIT0gTlVMTCk7Ci0tCXN0cnVjdCByZW5kZXJfcmVzb3VyY2VzICpyID0gcmVu ZGVyLT5yOwotKwlWa0ltYWdlU3VicmVzb3VyY2VSYW5nZSBzdWJyZXNvdXJjZV9yYW5nZSA9IHsK LSsJICAgIC5hc3BlY3RNYXNrID0gVktfSU1BR0VfQVNQRUNUX0NPTE9SX0JJVCwKLSsJICAgIC5i YXNlTWlwTGV2ZWwgPSAwLAotKwkgICAgLmxldmVsQ291bnQgPSBWS19SRU1BSU5JTkdfTUlQX0xF VkVMUywKLSsJICAgIC5iYXNlQXJyYXlMYXllciA9IDAsCi0rCSAgICAubGF5ZXJDb3VudCA9IFZL X1JFTUFJTklOR19BUlJBWV9MQVlFUlMsCi0rCX07Ci0gCi0rCXZrX2NtZF9pbWFnZV9iYXJyaWVy X2dwdV9sb2NrZWQoIC8vCi0rCSAgICB2aywgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0r CSAgICByLT5jbWQsICAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICB0YXJnZXRfaW1hZ2Us ICAgICAgICAgICAgICAgIC8vCi0rCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v Ci0rCSAgICBWS19BQ0NFU1NfU0hBREVSX1dSSVRFX0JJVCwgIC8vCi0rCSAgICBWS19JTUFHRV9M QVlPVVRfVU5ERUZJTkVELCAgIC8vCi0rCSAgICBWS19JTUFHRV9MQVlPVVRfR0VORVJBTCwgICAg IC8vCi0rCSAgICBzdWJyZXNvdXJjZV9yYW5nZSk7ICAgICAgICAgIC8vCi0gCi0tCS8qCi0tCSAq IFVCTwotLQkgKi8KLSsJdXBkYXRlX2NvbXB1dGVfc2hhcmVkX2Rlc2NyaXB0b3Jfc2V0KCAvLwot KwkgICAgdmssICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICByLT5jb21w dXRlLnNyY19iaW5kaW5nLCAgICAgICAgICAgLy8KLSsJICAgIHNyY19zYW1wbGVycywgICAgICAg ICAgICAgICAgICAgICAvLwotKwkgICAgc3JjX2ltYWdlX3ZpZXdzLCAgICAgICAgICAgICAgICAg IC8vCi0rCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb25fYmluZGluZywgICAgLy8KLSsJICAgIFZL X1dIT0xFX1NJWkUsICAgICAgICAgICAgICAgICAgICAvLwotKwkgICAgci0+ZGlzdG9ydGlvbi5i dWZmZXIsICAgICAgICAgICAgIC8vCi0rCSAgICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3ks ICAgICAgLy8KLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfY2JjciwgICAvLwotKwkg ICAgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwgICAgICAgICAgICAgIC8vCi0rCSAgICB0YXJnZXRfaW1h Z2Vfdmlld19jYmNyLCAgICAgICAgICAgLy8KLSsJICAgIHItPmNvbXB1dGUudWJvX2JpbmRpbmcs ICAgICAgICAgICAvLwotKwkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnViby5idWZmZXIsIC8v Ci0rCSAgICBWS19XSE9MRV9TSVpFLCAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIHJlbmRl ci0+c2hhcmVkX2Rlc2NyaXB0b3Jfc2V0LCAgICAvLwotKwkgICAgcmVuZGVyLT5yLT52aWV3X2Nv dW50KTsgICAgICAgICAgIC8vCi0gCi0tCXN0cnVjdCB4cnRfbWF0cml4XzR4NCB0aW1lX3dhcnBf bWF0cml4X3NjYW5vdXRfYmVnaW5bWFJUX01BWF9WSUVXU107Ci0tCXN0cnVjdCB4cnRfbWF0cml4 XzR4NCB0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfZW5kW1hSVF9NQVhfVklFV1NdOwotLQlmb3Ig KHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52aWV3X2NvdW50OyArK2kpIHsKLS0JCXJl bmRlcl9jYWxjX3RpbWVfd2FycF9wcm9qZWN0aW9uKCZzcmNfZm92c1tpXSwgJnRpbWVfd2FycF9t YXRyaXhfc2Nhbm91dF9iZWdpbltpXSk7Ci0rCXZrLT52a0NtZEJpbmRQaXBlbGluZSggICAgICAg ICAgICAgICAvLwotKwkgICAgci0+Y21kLCAgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJ ICAgIFZLX1BJUEVMSU5FX0JJTkRfUE9JTlRfQ09NUFVURSwgIC8vIHBpcGVsaW5lQmluZFBvaW50 Ci0rCSAgICByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmUpOyAvLyBwaXBlbGluZQotIAot LQkJcmVuZGVyX2NhbGNfdGltZV93YXJwX21hdHJpeCggICAgICAgICAgLy8KLS0JCSAgICAmbmV3 X3Bvc2VzX3NjYW5vdXRfYmVnaW5baV0sICAgICAgIC8vCi0tCQkgICAgJnNyY19mb3ZzW2ldLCAg ICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgICZuZXdfcG9zZXNfc2Nhbm91dF9lbmRbaV0s ICAgICAgICAgLy8KLS0JCSAgICAmdGltZV93YXJwX21hdHJpeF9zY2Fub3V0X2VuZFtpXSk7IC8v Ci0tCX0KLSsJdmstPnZrQ21kQmluZERlc2NyaXB0b3JTZXRzKCAgICAgICAgICAgICAgIC8vCi0r CSAgICByLT5jbWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLwotKwkgICAgVktf UElQRUxJTkVfQklORF9QT0lOVF9DT01QVVRFLCAgICAgICAgLy8gcGlwZWxpbmVCaW5kUG9pbnQK LSsJICAgIHItPmNvbXB1dGUuZGlzdG9ydGlvbi5waXBlbGluZV9sYXlvdXQsIC8vIGxheW91dAot KwkgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZmlyc3RTZXQK LSsJICAgIDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRlc2NyaXB0 b3JTZXRDb3VudAotKwkgICAgJnJlbmRlci0+c2hhcmVkX2Rlc2NyaXB0b3Jfc2V0LCAgICAgICAg Ly8gcERlc2NyaXB0b3JTZXRzCi0rCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAvLyBkeW5hbWljT2Zmc2V0Q291bnQKLSsJICAgIE5VTEwpOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8vIHBEeW5hbWljT2Zmc2V0cwotIAotLQlzdHJ1Y3QgcmVuZGVy X2NvbXB1dGVfZGlzdG9ydGlvbl91Ym9fZGF0YSAqZGF0YSA9Ci0tCSAgICAoc3RydWN0IHJlbmRl cl9jb21wdXRlX2Rpc3RvcnRpb25fdWJvX2RhdGEgKilyLT5jb21wdXRlLmRpc3RvcnRpb24udWJv Lm1hcHBlZDsKLS0JZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IHJlbmRlci0+ci0+dmlld19jb3Vu dDsgKytpKSB7Ci0tCQlkYXRhLT52aWV3c1tpXSA9IHZpZXdzW2ldOwotLQkJZGF0YS0+cHJlX3Ry YW5zZm9ybXNbaV0gPSByLT5kaXN0b3J0aW9uLnV2X3RvX3RhbmFuZ2xlW2ldOwotLQkJZGF0YS0+ dHJhbnNmb3JtX3RpbWV3YXJwX3NjYW5vdXRfYmVnaW5baV0gPSB0aW1lX3dhcnBfbWF0cml4X3Nj YW5vdXRfYmVnaW5baV07Ci0tCQlkYXRhLT50cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9lbmRb aV0gPSB0aW1lX3dhcnBfbWF0cml4X3NjYW5vdXRfZW5kW2ldOwotLQkJZGF0YS0+cG9zdF90cmFu c2Zvcm1zW2ldID0gc3JjX3JlY3RzW2ldOwotLQl9Ci0gCi0tCWRpc3BhdGNoX3Byb2plY3RfcGlw ZWxpbmUocmVuZGVyLCBzcmNfc2FtcGxlcnMsIHNyY19pbWFnZV92aWV3cywgc3JjX3JlY3RzLCB0 YXJnZXRfaW1hZ2UsIHRhcmdldF9pbWFnZV92aWV3LAotLQkgICAgICAgICAgICAgICAgICAgICAg ICAgIHZpZXdzLCByLT5jb21wdXRlLmRpc3RvcnRpb24udGltZXdhcnBfcGlwZWxpbmUpOwotLX0K LSsJdWludDMyX3QgdyA9IDAsIGggPSAwOwotKwljYWxjX2Rpc3BhdGNoX2RpbXNfdmlld3Modmll d3MsIHJlbmRlci0+ci0+dmlld19jb3VudCwgJncsICZoKTsKLSsJYXNzZXJ0KHcgIT0gMCAmJiBo ICE9IDApOwotIAotLXZvaWQKLS1yZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uX25vX3RpbWV3YXJw KHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFn ZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9yZWN0IHNyY19yZWN0c1tYUlRfTUFY X1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2Ug dGFyZ2V0X2ltYWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJ bWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmlld3NbWFJUX01B WF9WSUVXU10pCi0tewotLQlhc3NlcnQocmVuZGVyLT5yICE9IE5VTEwpOwotLQlzdHJ1Y3QgcmVu ZGVyX3Jlc291cmNlcyAqciA9IHJlbmRlci0+cjsKLSsJdmstPnZrQ21kRGlzcGF0Y2goIC8vCi0r CSAgICByLT5jbWQsICAgICAgICAvLwotKwkgICAgdywgICAgICAgICAgICAgLy8gZ3JvdXBDb3Vu dFgKLSsJICAgIGgsICAgICAgICAgICAgIC8vIGdyb3VwQ291bnRZCi0rCSAgICAyKTsgICAgICAg ICAgICAvLyBncm91cENvdW50WgotKwotKwlWa0ltYWdlTWVtb3J5QmFycmllciBtZW1vcnlCYXJy aWVyID0gewotKwkgICAgLnNUeXBlID0gVktfU1RSVUNUVVJFX1RZUEVfSU1BR0VfTUVNT1JZX0JB UlJJRVIsCi0rCSAgICAuc3JjQWNjZXNzTWFzayA9IFZLX0FDQ0VTU19TSEFERVJfV1JJVEVfQklU LAotKwkgICAgLmRzdEFjY2Vzc01hc2sgPSBWS19BQ0NFU1NfTUVNT1JZX1JFQURfQklULAotKwkg ICAgLm9sZExheW91dCA9IFZLX0lNQUdFX0xBWU9VVF9HRU5FUkFMLAotKwkgICAgLm5ld0xheW91 dCA9IFZLX0lNQUdFX0xBWU9VVF9UUkFOU0ZFUl9TUkNfT1BUSU1BTCwKLSsJICAgIC5zcmNRdWV1 ZUZhbWlseUluZGV4ID0gVktfUVVFVUVfRkFNSUxZX0lHTk9SRUQsCi0rCSAgICAuZHN0UXVldWVG YW1pbHlJbmRleCA9IFZLX1FVRVVFX0ZBTUlMWV9JR05PUkVELAotKwkgICAgLmltYWdlID0gdGFy Z2V0X2ltYWdlLAotKwkgICAgLnN1YnJlc291cmNlUmFuZ2UgPSBzdWJyZXNvdXJjZV9yYW5nZSwK LSsJfTsKLSAKLS0JZGlzcGF0Y2hfcHJvamVjdF9waXBlbGluZShyZW5kZXIsIHNyY19zYW1wbGVy cywgc3JjX2ltYWdlX3ZpZXdzLCBzcmNfcmVjdHMsIHRhcmdldF9pbWFnZSwgdGFyZ2V0X2ltYWdl X3ZpZXcsCi0tCSAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld3MsIHItPmNvbXB1dGUuZGlz dG9ydGlvbi5waXBlbGluZSk7Ci0rCXZrLT52a0NtZFBpcGVsaW5lQmFycmllciggICAgICAgICAg ICAgICAgIC8vCi0rCSAgICByLT5jbWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v Ci0rCSAgICBWS19QSVBFTElORV9TVEFHRV9DT01QVVRFX1NIQURFUl9CSVQsIC8vCi0rCSAgICBW S19QSVBFTElORV9TVEFHRV9UT1BfT0ZfUElQRV9CSVQsICAgIC8vCi0rCSAgICAwLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICAwLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICBOVUxMLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC8vCi0rCSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8vCi0rCSAgICBOVUxMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAg ICAxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0rCSAgICAmbWVtb3J5 QmFycmllcik7ICAgICAgICAgICAgICAgICAgICAgIC8vCi0gfQotIAotIHZvaWQKLSByZW5kZXJf Y29tcHV0ZV9jbGVhcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAgICAgICAgICAg ICAgICAgICAgICBWa0ltYWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAgICAgICAgICBW a0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLSsgICAgICAgICAgICAgICAgICAgICBWa0lt YWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld195LAotKyAgICAgICAgICAgICAgICAgICAgIFZrSW1h Z2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X2NiY3IsCi0gICAgICAgICAgICAgICAgICAgICAgY29u c3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdKQotIHsK LSAJYXNzZXJ0KHJlbmRlci0+ciAhPSBOVUxMKTsKLUBAIC03NDUsMTMgKzY1NSw5IEBAIHJlbmRl cl9jb21wdXRlX2NsZWFyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAlWa1NhbXBs ZXIgc2FtcGxlciA9IHItPnNhbXBsZXJzLm1vY2s7Ci0gCVZrU2FtcGxlciBzcmNfc2FtcGxlcnNb WFJUX01BWF9WSUVXU107Ci0gCVZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJ RVdTXTsKLS0JVmtTYW1wbGVyIGRpc3RvcnRpb25fc2FtcGxlcnNbMyAqIFhSVF9NQVhfVklFV1Nd OwotIAlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgcmVuZGVyLT5yLT52aWV3X2NvdW50OyArK2kp IHsKLSAJCXNyY19zYW1wbGVyc1tpXSA9IHNhbXBsZXI7Ci0gCQlzcmNfaW1hZ2Vfdmlld3NbaV0g PSByLT5tb2NrLmNvbG9yLmltYWdlX3ZpZXc7Ci0tCQlkaXN0b3J0aW9uX3NhbXBsZXJzWzMgKiBp ICsgMF0gPSBzYW1wbGVyOwotLQkJZGlzdG9ydGlvbl9zYW1wbGVyc1szICogaSArIDFdID0gc2Ft cGxlcjsKLS0JCWRpc3RvcnRpb25fc2FtcGxlcnNbMyAqIGkgKyAyXSA9IHNhbXBsZXI7Ci0gCX0K LSAKLSAJdXBkYXRlX2NvbXB1dGVfc2hhcmVkX2Rlc2NyaXB0b3Jfc2V0KCAvLwotQEAgLTc2MCwx MCArNjY2LDEyIEBAIHJlbmRlcl9jb21wdXRlX2NsZWFyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAq cmVuZGVyLAotIAkgICAgc3JjX3NhbXBsZXJzLCAgICAgICAgICAgICAgICAgICAgIC8vCi0gCSAg ICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAgICAgICAgICAgLy8KLSAJICAgIHItPmNvbXB1dGUu ZGlzdG9ydGlvbl9iaW5kaW5nLCAgICAvLwotLQkgICAgZGlzdG9ydGlvbl9zYW1wbGVycywgICAg ICAgICAgICAgIC8vCi0tCSAgICByLT5kaXN0b3J0aW9uLmltYWdlX3ZpZXdzLCAgICAgICAgLy8K LS0JICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmcsICAgICAgICAvLwotLQkgICAgdGFyZ2V0 X2ltYWdlX3ZpZXcsICAgICAgICAgICAgICAgIC8vCi0rCSAgICBWS19XSE9MRV9TSVpFLCAgICAg ICAgICAgICAgICAgICAgLy8KLSsJICAgIHItPmRpc3RvcnRpb24uYnVmZmVyLCAgICAgICAgICAg ICAvLwotKwkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZ195LCAgICAgIC8vCi0rCSAgICBy LT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX2NiY3IsICAgLy8KLSsJICAgIHRhcmdldF9pbWFnZV92 aWV3X3ksICAgICAgICAgICAgICAvLwotKwkgICAgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwgICAg ICAgICAgIC8vCi0gCSAgICByLT5jb21wdXRlLnVib19iaW5kaW5nLCAgICAgICAgICAgLy8KLSAJ ICAgIHItPmNvbXB1dGUuY2xlYXIudWJvLmJ1ZmZlciwgICAgICAvLwotIAkgICAgVktfV0hPTEVf U0laRSwgICAgICAgICAgICAgICAgICAgIC8vIHVib19zaXplCi1AQCAtODAxLDcgKzcwOSw3IEBA IHJlbmRlcl9jb21wdXRlX2NsZWFyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAkg ICAgLnNyY0FjY2Vzc01hc2sgPSBWS19BQ0NFU1NfU0hBREVSX1dSSVRFX0JJVCwKLSAJICAgIC5k c3RBY2Nlc3NNYXNrID0gVktfQUNDRVNTX01FTU9SWV9SRUFEX0JJVCwKLSAJICAgIC5vbGRMYXlv dXQgPSBWS19JTUFHRV9MQVlPVVRfR0VORVJBTCwKLS0JICAgIC5uZXdMYXlvdXQgPSBWS19JTUFH RV9MQVlPVVRfUFJFU0VOVF9TUkNfS0hSLAotKwkgICAgLm5ld0xheW91dCA9IFZLX0lNQUdFX0xB WU9VVF9UUkFOU0ZFUl9TUkNfT1BUSU1BTCwKLSAJICAgIC5zcmNRdWV1ZUZhbWlseUluZGV4ID0g VktfUVVFVUVfRkFNSUxZX0lHTk9SRUQsCi0gCSAgICAuZHN0UXVldWVGYW1pbHlJbmRleCA9IFZL X1FVRVVFX0ZBTUlMWV9JR05PUkVELAotIAkgICAgLmltYWdlID0gdGFyZ2V0X2ltYWdlLAotZGlm ZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX2ludGVyZmFjZS5oIGIv c3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfaW50ZXJmYWNlLmgKLWluZGV4IDJiNzg5 Mzg4MS4uM2M1OTY0NWRjIDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9y ZW5kZXJfaW50ZXJmYWNlLmgKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVy X2ludGVyZmFjZS5oCi1AQCAtODIsMTIgKzgyLDggQEAgZXh0ZXJuICJDIiB7Ci0gI2RlZmluZSBS RU5ERVJfTUFYX0xBWUVSX1JVTlNfU0laRSAoWFJUX01BWF9WSUVXUykKLSAjZGVmaW5lIFJFTkRF Ul9NQVhfTEFZRVJfUlVOU19DT1VOVChSRU5ERVJfUkVTT1VSQ0VTKSAoUkVOREVSX1JFU09VUkNF Uy0+dmlld19jb3VudCkKLSAKLS0vLyEgRGlzdG9ydGlvbiBpbWFnZSBkaW1lbnNpb24gaW4gcGl4 ZWxzCi0tI2RlZmluZSBSRU5ERVJfRElTVE9SVElPTl9JTUFHRV9ESU1FTlNJT05TICgxMjgpCi0t Ci0tLy8hIEhvdyBtYW55IGRpc3RvcnRpb24gaW1hZ2VzIHdlIGhhdmUsIG9uZSBmb3IgZWFjaCBj aGFubmVsICgzIHJnYikgYW5kIHBlciB2aWV3LgotLSNkZWZpbmUgUkVOREVSX0RJU1RPUlRJT05f SU1BR0VTX1NJWkUgKDMgKiBYUlRfTUFYX1ZJRVdTKQotLSNkZWZpbmUgUkVOREVSX0RJU1RPUlRJ T05fSU1BR0VTX0NPVU5UKFJFTkRFUl9SRVNPVVJDRVMpICgzICogUkVOREVSX1JFU09VUkNFUy0+ dmlld19jb3VudCkKLSsvLyEgRm92ZWF0aW9uIGJ1ZmZlciBkaW1lbnNpb24gaW4gcGl4ZWxzIChp bmNsdWRpbmcgcGFzdC10aGUgZW5kIHBpeGVsKQotKyNkZWZpbmUgUkVOREVSX0ZPVkVBVElPTl9C VUZGRVJfRElNRU5TSU9OUyAoNDA5NiArIDEpCi0gCi0gLy8hIFRoZSBiaW5kaW5nIHRoYXQgdGhl IGxheWVyIHByb2plY3Rpb24gYW5kIHF1YWQgc2hhZGVyIGhhdmUgdGhlaXIgVUJPIG9uLgotICNk ZWZpbmUgUkVOREVSX0JJTkRJTkdfTEFZRVJfU0hBUkVEX1VCTyAwCi1AQCAtMTIwLDEyICsxMTYs NiBAQCBleHRlcm4gIkMiIHsKLSB1aW50MzJfdAotIHJlbmRlcl9tYXhfbGF5ZXJzX2NhcGFibGUo Y29uc3Qgc3RydWN0IHZrX2J1bmRsZSAqdmssIGJvb2wgdXNlX2NvbXB1dGUsIHVpbnQzMl90IGRl c2lyZWRfbWF4X2xheWVycyk7Ci0gCi0tLyohCi0tICogQ3JlYXRlIGEgc2ltcGxpZmllZCBwcm9q ZWN0aW9uIG1hdHJpeCBmb3IgdGltZXdhcnAuCi0tICovCi0tdm9pZAotLXJlbmRlcl9jYWxjX3Rp bWVfd2FycF9wcm9qZWN0aW9uKGNvbnN0IHN0cnVjdCB4cnRfZm92ICpmb3YsIHN0cnVjdCB4cnRf bWF0cml4XzR4NCAqcmVzdWx0KTsKLS0KLSAvKiEKLSAgKiBDYWxjdWxhdGVzIGEgdGltZXdhcnAg bWF0cml4IHdoaWNoIHRha2VzIGluIE5EQyBjb29yZHMgYW5kIGdpdmVzIG91dCByZXN1bHRzCi0g ICogaW4gWy0xLCAxXSBzcGFjZSB0aGF0IG5lZWRzIGEgcGVyc3BlY3RpdmUgZGl2aWRlLgotQEAg LTQ2NSw3ICs0NTUsOCBAQCBzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcwotIAkJdWludDMyX3QgZGlz dG9ydGlvbl9iaW5kaW5nOwotIAotIAkJLy8hIFdyaXRpbmcgdGhlIGltYWdlIG91dCB0b28uCi0t CQl1aW50MzJfdCB0YXJnZXRfYmluZGluZzsKLSsJCXVpbnQzMl90IHRhcmdldF9iaW5kaW5nX3k7 Ci0rCQl1aW50MzJfdCB0YXJnZXRfYmluZGluZ19jYmNyOwotIAotIAkJLy8hIFVuaWZvcm0gZGF0 YSBiaW5kaW5nLgotIAkJdWludDMyX3QgdWJvX2JpbmRpbmc7Ci1AQCAtNTAyLDkgKzQ5Myw2IEBA IHN0cnVjdCByZW5kZXJfcmVzb3VyY2VzCi0gCQkJLy8hIERvZXNuJ3QgZGVwZW5kIG9uIHRhcmdl dCBzbyBpcyBzdGF0aWMuCi0gCQkJVmtQaXBlbGluZSBwaXBlbGluZTsKLSAKLS0JCQkvLyEgRG9l c24ndCBkZXBlbmQgb24gdGFyZ2V0IHNvIGlzIHN0YXRpYy4KLS0JCQlWa1BpcGVsaW5lIHRpbWV3 YXJwX3BpcGVsaW5lOwotLQotIAkJCS8vISBUYXJnZXQgaW5mby4KLSAJCQlzdHJ1Y3QgcmVuZGVy X2J1ZmZlciB1Ym87Ci0gCQl9IGRpc3RvcnRpb247Ci1AQCAtNTI2LDE3ICs1MTQsMTEgQEAgc3Ry dWN0IHJlbmRlcl9yZXNvdXJjZXMKLSAJCS8vISBUcmFuc2Zvcm0gdG8gZ28gZnJvbSBVViB0byB0 YW5nbGUgYW5nbGVzLgotIAkJc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3QgdXZfdG9fdGFuYW5n bGVbWFJUX01BWF9WSUVXU107Ci0gCi0tCQkvLyEgQmFja2luZyBtZW1vcnkgdG8gZGlzdG9ydGlv biBpbWFnZXMuCi0tCQlWa0RldmljZU1lbW9yeSBkZXZpY2VfbWVtb3JpZXNbUkVOREVSX0RJU1RP UlRJT05fSU1BR0VTX1NJWkVdOwotLQotLQkJLy8hIERpc3RvcnRpb24gaW1hZ2VzLgotLQkJVmtJ bWFnZSBpbWFnZXNbUkVOREVSX0RJU1RPUlRJT05fSU1BR0VTX1NJWkVdOwotKwkJLy8hIEJhY2tp bmcgbWVtb3J5IHRvIGZvdmVhdGlvbiBidWZmZXJzLgotKwkJVmtEZXZpY2VNZW1vcnkgZGV2aWNl X21lbW9yeTsKLSAKLS0JCS8vISBUaGUgdmlld3MgaW50byB0aGUgZGlzdG9ydGlvbiBpbWFnZXMu Ci0tCQlWa0ltYWdlVmlldyBpbWFnZV92aWV3c1tSRU5ERVJfRElTVE9SVElPTl9JTUFHRVNfU0la RV07Ci0tCi0tCQkvLyEgV2hldGhlciBkaXN0b3J0aW9uIGltYWdlcyBoYXZlIGJlZW4gcHJlLXJv dGF0ZWQgOTAgZGVncmVlcy4KLS0JCWJvb2wgcHJlX3JvdGF0ZWQ7Ci0rCQkvLyEgRm92ZWF0aW9u IGJ1ZmZlci4KLSsJCVZrQnVmZmVyIGJ1ZmZlcjsKLSAJfSBkaXN0b3J0aW9uOwotIH07Ci0gCi1A QCAtMTI2Miw2ICsxMjQ0LDcgQEAgc3RydWN0IHJlbmRlcl9jb21wdXRlX2xheWVyX3Vib19kYXRh Ci0gCS8vISBUaW1ld2FycCBtYXRyaWNlcwotIAlzdHJ1Y3QgeHJ0X21hdHJpeF80eDQgdHJhbnNm b3Jtc190aW1ld2FycFtSRU5ERVJfTUFYX0xBWUVSU107Ci0gCi0rCi0gCS8qIQotIAkgKiBGb3Ig cXVhZCBsYXllcnMKLSAJICovCi1AQCAtMTMwNyw2ICsxMjkwLDE0IEBAIHN0cnVjdCByZW5kZXJf Y29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhCi0gCXN0cnVjdCB4cnRfbWF0cml4XzR4NCB0cmFu c2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU107Ci0gfTsKLSAKLStzdHJ1 Y3QgcmVuZGVyX2NvbXB1dGVfZGlzdG9ydGlvbl9mb3ZlYXRpb25fZGF0YQotK3sKLSsJLy8gRm9y IGVhY2ggb3V0cHV0IHBpeGVsOiBpbmRleCBvZiB0aGUgZmlyc3QgcGl4ZWwgdG8gcmVhZC4KLSsJ Ly8gY29udGFpbnMgMSBhZGRpdGlvbmFsIHZhbHVlIGF0IHRoZSBlbmQgZm9yIHBhc3QtdGhlIGVu ZCBwaXhlbAotKwl1aW50MzJfdCB4W1hSVF9NQVhfVklFV1MgKiBSRU5ERVJfRk9WRUFUSU9OX0JV RkZFUl9ESU1FTlNJT05TXTsKLSsJdWludDMyX3QgeVtYUlRfTUFYX1ZJRVdTICogUkVOREVSX0ZP VkVBVElPTl9CVUZGRVJfRElNRU5TSU9OU107Ci0rfTsKLSsKLSAvKiEKLSAgKiBJbml0IHN0cnVj dCBhbmQgY3JlYXRlIHJlc291cmNlcyBuZWVkZWQgZm9yIGNvbXB1dGUgcmVuZGVyaW5nLgotICAq Ci1AQCAtMTM2MCw3ICsxMzUxLDggQEAgcmVuZGVyX2NvbXB1dGVfbGF5ZXJzKHN0cnVjdCByZW5k ZXJfY29tcHV0ZSAqcmVuZGVyLAotICAgICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgc3Jj X3NhbXBsZXJzW1JFTkRFUl9NQVhfSU1BR0VTX1NJWkVdLAotICAgICAgICAgICAgICAgICAgICAg ICBWa0ltYWdlVmlldyBzcmNfaW1hZ2Vfdmlld3NbUkVOREVSX01BWF9JTUFHRVNfU0laRV0sCi0g ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG51bV9zcmNzLAotLSAgICAgICAgICAgICAg ICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLSsgICAgICAgICAgICAgICAg ICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAg ICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAgICAgICAg ICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhICp2aWV3LAotICAgICAg ICAgICAgICAgICAgICAgICBib29sIHRpbWV3YXJwKTsKLSAKLUBAIC0xMzY4LDQ0ICsxMzYwLDE0 IEBAIHJlbmRlcl9jb21wdXRlX2xheWVycyhzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwK LSAgKiBAcHVibGljIEBtZW1iZXJvZiByZW5kZXJfY29tcHV0ZQotICAqLwotIHZvaWQKLS1yZW5k ZXJfY29tcHV0ZV9wcm9qZWN0aW9uX3RpbWV3YXJwKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVu ZGVyLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtTYW1wbGVyIHNyY19z YW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFnZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9y ZWN0IHNyY19yZWN0c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9zZSBzcmNfcG9zZXNbWFJUX01BWF9WSUVXU10s Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X2Zv diBzcmNfZm92c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9zZSBuZXdfcG9zZXNfc2Nhbm91dF9iZWdpbltYUlRf TUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0 cnVjdCB4cnRfcG9zZSBuZXdfcG9zZXNfc2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU10sCi0tICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlIHRhcmdldF9pbWFnZSwKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFn ZV92aWV3LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0 IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdKTsKLS0KLS0vKiEKLS0g KiBAcHVibGljIEBtZW1iZXJvZiByZW5kZXJfY29tcHV0ZQotLSAqLwotLXZvaWQKLS1yZW5kZXJf Y29tcHV0ZV9wcm9qZWN0aW9uX3NjYW5vdXRfY29tcGVuc2F0aW9uKHN0cnVjdCByZW5kZXJfY29t cHV0ZSAqcmVuZGVyLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHNyY19pbWFn ZV92aWV3c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfbm9ybWFsaXplZF9yZWN0IHNyY19yZWN0 c1tYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfZm92IHNyY19mb3ZzW1hSVF9NQVhfVklFV1NdLAot LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ry dWN0IHhydF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2JlZ2luW1hSVF9NQVhfVklFV1NdLAotLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0 IHhydF9wb3NlIG5ld19wb3Nlc19zY2Fub3V0X2VuZFtYUlRfTUFYX1ZJRVdTXSwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2lt YWdlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJ bWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgdmll d3NbWFJUX01BWF9WSUVXU10pOwotLQotLS8qIQotLSAqIEBwdWJsaWMgQG1lbWJlcm9mIHJlbmRl cl9jb21wdXRlCi0tICovCi0tdm9pZAotLXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fbm9fdGlt ZXdhcnAoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0tICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBWa1NhbXBsZXIgc3JjX3NhbXBsZXJzW1hSVF9NQVhfVklFV1Nd LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgc3Jj X2ltYWdlX3ZpZXdzW1hSVF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qgc3JjX3JlY3RzW1hS VF9NQVhfVklFV1NdLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJ bWFnZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2VfdmlldywKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0YSB2aWV3c1tY UlRfTUFYX1ZJRVdTXSk7Ci0rcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbihzdHJ1Y3QgcmVuZGVy X2NvbXB1dGUgKnJlbmRlciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIFZrU2FtcGxlciBz cmNfc2FtcGxlcnNbWFJUX01BWF9WSUVXU10sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBW a0ltYWdlVmlldyBzcmNfaW1hZ2Vfdmlld3NbWFJUX01BWF9WSUVXU10sCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X25vcm1hbGl6ZWRfcmVjdCBzcmNfcmVjdHNb WFJUX01BWF9WSUVXU10sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlIHRhcmdl dF9pbWFnZSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9p bWFnZV92aWV3X3ksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJn ZXRfaW1hZ2Vfdmlld19jYmNyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ry dWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdKTsKLSAKLSAvKiEK LSAgKiBAcHVibGljIEBtZW1iZXJvZiByZW5kZXJfY29tcHV0ZQotQEAgLTE0MTMsNyArMTM3NSw4 IEBAIHJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25fbm9fdGltZXdhcnAoc3RydWN0IHJlbmRlcl9j b21wdXRlICpyZW5kZXIsCi0gdm9pZAotIHJlbmRlcl9jb21wdXRlX2NsZWFyKHN0cnVjdCByZW5k ZXJfY29tcHV0ZSAqcmVuZGVyLAotICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0 X2ltYWdlLAotLSAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92 aWV3LAotKyAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9pbWFnZV92aWV3 X3ksCi0rICAgICAgICAgICAgICAgICAgICAgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdf Y2JjciwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0 X2RhdGEgdmlld3NbWFJUX01BWF9WSUVXU10pOwotIAotIAotZGlmZiAtLWdpdCBhL3NyYy94cnQv Y29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX3Jlc291cmNlcy5jIGIvc3JjL3hydC9jb21wb3NpdG9y L3JlbmRlci9yZW5kZXJfcmVzb3VyY2VzLmMKLWluZGV4IGQyOGNhYWVkOC4uNTIzMmE3NzRkIDEw MDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL3JlbmRlci9yZW5kZXJfcmVzb3VyY2VzLmMK LSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9yZW5kZXIvcmVuZGVyX3Jlc291cmNlcy5jCi1AQCAt MTg0LDE0ICsxODQsMTUgQEAgaW5pdF9tZXNoX3Vib19idWZmZXJzKHN0cnVjdCB2a19idW5kbGUg KnZrLCBzdHJ1Y3QgcmVuZGVyX2J1ZmZlciB1Ym9bWFJUX01BWF9WSUUKLSBYUlRfQ0hFQ0tfUkVT VUxUIHN0YXRpYyBWa1Jlc3VsdAotIGNyZWF0ZV9jb21wdXRlX2xheWVyX2Rlc2NyaXB0b3Jfc2V0 X2xheW91dChzdHJ1Y3QgdmtfYnVuZGxlICp2aywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc3JjX2JpbmRpbmcsCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nLAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0YXJnZXRf YmluZGluZ195LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 aW50MzJfdCB0YXJnZXRfYmluZGluZ19jYmNyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCB1Ym9fYmluZGluZywKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc291cmNlX2ltYWdlc19jb3VudCwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtEZXNjcmlwdG9y U2V0TGF5b3V0ICpvdXRfZGVzY3JpcHRvcl9zZXRfbGF5b3V0KQotIHsKLSAJVmtSZXN1bHQgcmV0 OwotIAotLQlWa0Rlc2NyaXB0b3JTZXRMYXlvdXRCaW5kaW5nIHNldF9sYXlvdXRfYmluZGluZ3Nb M10gPSB7Ci0rCVZrRGVzY3JpcHRvclNldExheW91dEJpbmRpbmcgc2V0X2xheW91dF9iaW5kaW5n c1s0XSA9IHsKLSAJICAgIHsKLSAJICAgICAgICAuYmluZGluZyA9IHNyY19iaW5kaW5nLAotIAkg ICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NSSVBUT1JfVFlQRV9DT01CSU5FRF9JTUFH RV9TQU1QTEVSLAotQEAgLTE5OSw3ICsyMDAsNyBAQCBjcmVhdGVfY29tcHV0ZV9sYXllcl9kZXNj cmlwdG9yX3NldF9sYXlvdXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICAgICAgLnN0YWdl RmxhZ3MgPSBWS19TSEFERVJfU1RBR0VfQ09NUFVURV9CSVQsCi0gCSAgICB9LAotIAkgICAgewot LQkgICAgICAgIC5iaW5kaW5nID0gdGFyZ2V0X2JpbmRpbmcsCi0rCSAgICAgICAgLmJpbmRpbmcg PSB0YXJnZXRfYmluZGluZ195LAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NS SVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotIAkgICAgICAgIC5kZXNjcmlwdG9yQ291bnQgPSAx LAotIAkgICAgICAgIC5zdGFnZUZsYWdzID0gVktfU0hBREVSX1NUQUdFX0NPTVBVVEVfQklULAot QEAgLTIxMCw2ICsyMTEsMTIgQEAgY3JlYXRlX2NvbXB1dGVfbGF5ZXJfZGVzY3JpcHRvcl9zZXRf bGF5b3V0KHN0cnVjdCB2a19idW5kbGUgKnZrLAotIAkgICAgICAgIC5kZXNjcmlwdG9yQ291bnQg PSAxLAotIAkgICAgICAgIC5zdGFnZUZsYWdzID0gVktfU0hBREVSX1NUQUdFX0NPTVBVVEVfQklU LAotIAkgICAgfSwKLSsJICAgIHsKLSsJICAgICAgICAuYmluZGluZyA9IHRhcmdldF9iaW5kaW5n X2NiY3IsCi0rCSAgICAgICAgLmRlc2NyaXB0b3JUeXBlID0gVktfREVTQ1JJUFRPUl9UWVBFX1NU T1JBR0VfSU1BR0UsCi0rCSAgICAgICAgLmRlc2NyaXB0b3JDb3VudCA9IDEsCi0rCSAgICAgICAg LnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0VfQ09NUFVURV9CSVQsCi0rCSAgICB9LAotIAl9 OwotIAotIAlWa0Rlc2NyaXB0b3JTZXRMYXlvdXRDcmVhdGVJbmZvIHNldF9sYXlvdXRfaW5mbyA9 IHsKLUBAIC0yMzUsMTMgKzI0MiwxNCBAQCBYUlRfQ0hFQ0tfUkVTVUxUIHN0YXRpYyBWa1Jlc3Vs dAotIGNyZWF0ZV9jb21wdXRlX2Rpc3RvcnRpb25fZGVzY3JpcHRvcl9zZXRfbGF5b3V0KHN0cnVj dCB2a19idW5kbGUgKnZrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IHNyY19iaW5kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRpc3RvcnRpb25fYmluZGluZywKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB0 YXJnZXRfYmluZGluZywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB1aW50MzJfdCB0YXJnZXRfYmluZGluZ195LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHRhcmdldF9iaW5kaW5nX2NiY3Is Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy X3QgdWJvX2JpbmRpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgVmtEZXNjcmlwdG9yU2V0TGF5b3V0ICpvdXRfZGVzY3JpcHRvcl9zZXRfbGF5b3V0 KQotIHsKLSAJVmtSZXN1bHQgcmV0OwotIAotLQlWa0Rlc2NyaXB0b3JTZXRMYXlvdXRCaW5kaW5n IHNldF9sYXlvdXRfYmluZGluZ3NbNF0gPSB7Ci0rCVZrRGVzY3JpcHRvclNldExheW91dEJpbmRp bmcgc2V0X2xheW91dF9iaW5kaW5nc1s1XSA9IHsKLSAJICAgIHsKLSAJICAgICAgICAuYmluZGlu ZyA9IHNyY19iaW5kaW5nLAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZLX0RFU0NSSVBU T1JfVFlQRV9DT01CSU5FRF9JTUFHRV9TQU1QTEVSLAotQEAgLTI1MCwxMiArMjU4LDEyIEBAIGNy ZWF0ZV9jb21wdXRlX2Rpc3RvcnRpb25fZGVzY3JpcHRvcl9zZXRfbGF5b3V0KHN0cnVjdCB2a19i dW5kbGUgKnZrLAotIAkgICAgfSwKLSAJICAgIHsKLSAJICAgICAgICAuYmluZGluZyA9IGRpc3Rv cnRpb25fYmluZGluZywKLS0JICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9S X1RZUEVfQ09NQklORURfSU1BR0VfU0FNUExFUiwKLS0JICAgICAgICAuZGVzY3JpcHRvckNvdW50 ID0gNiwKLSsJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQVE9SX1RZUEVfU1RP UkFHRV9CVUZGRVIsCi0rCSAgICAgICAgLmRlc2NyaXB0b3JDb3VudCA9IDEsCi0gCSAgICAgICAg LnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0VfQ09NUFVURV9CSVQsCi0gCSAgICB9LAotIAkg ICAgewotLQkgICAgICAgIC5iaW5kaW5nID0gdGFyZ2V0X2JpbmRpbmcsCi0rCSAgICAgICAgLmJp bmRpbmcgPSB0YXJnZXRfYmluZGluZ195LAotIAkgICAgICAgIC5kZXNjcmlwdG9yVHlwZSA9IFZL X0RFU0NSSVBUT1JfVFlQRV9TVE9SQUdFX0lNQUdFLAotIAkgICAgICAgIC5kZXNjcmlwdG9yQ291 bnQgPSAxLAotIAkgICAgICAgIC5zdGFnZUZsYWdzID0gVktfU0hBREVSX1NUQUdFX0NPTVBVVEVf QklULAotQEAgLTI2Niw2ICsyNzQsMTIgQEAgY3JlYXRlX2NvbXB1dGVfZGlzdG9ydGlvbl9kZXNj cmlwdG9yX3NldF9sYXlvdXQoc3RydWN0IHZrX2J1bmRsZSAqdmssCi0gCSAgICAgICAgLmRlc2Ny aXB0b3JDb3VudCA9IDEsCi0gCSAgICAgICAgLnN0YWdlRmxhZ3MgPSBWS19TSEFERVJfU1RBR0Vf Q09NUFVURV9CSVQsCi0gCSAgICB9LAotKwkgICAgewotKwkgICAgICAgIC5iaW5kaW5nID0gdGFy Z2V0X2JpbmRpbmdfY2JjciwKLSsJICAgICAgICAuZGVzY3JpcHRvclR5cGUgPSBWS19ERVNDUklQ VE9SX1RZUEVfU1RPUkFHRV9JTUFHRSwKLSsJICAgICAgICAuZGVzY3JpcHRvckNvdW50ID0gMSwK LSsJICAgICAgICAuc3RhZ2VGbGFncyA9IFZLX1NIQURFUl9TVEFHRV9DT01QVVRFX0JJVCwKLSsJ ICAgIH0sCi0gCX07Ci0gCi0gCVZrRGVzY3JpcHRvclNldExheW91dENyZWF0ZUluZm8gc2V0X2xh eW91dF9pbmZvID0gewotQEAgLTI5NSwxMiArMzA5LDYgQEAgc3RydWN0IGNvbXB1dGVfbGF5ZXJf cGFyYW1zCi0gCXVpbnQzMl90IGltYWdlX2FycmF5X3NpemU7Ci0gfTsKLSAKLS1zdHJ1Y3QgY29t cHV0ZV9kaXN0b3J0aW9uX3BhcmFtcwotLXsKLS0JdWludDMyX3QgZGlzdG9ydGlvbl90ZXhlbF9j b3VudDsKLS0JVmtCb29sMzIgZG9fdGltZXdhcnA7Ci0tfTsKLS0KLSBYUlRfQ0hFQ0tfUkVTVUxU IHN0YXRpYyBWa1Jlc3VsdAotIGNyZWF0ZV9jb21wdXRlX2xheWVyX3BpcGVsaW5lKHN0cnVjdCB2 a19idW5kbGUgKnZrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrUGlwZWxpbmVD YWNoZSBwaXBlbGluZV9jYWNoZSwKLUBAIC0zNDUsMzUgKzM1MywxNSBAQCBjcmVhdGVfY29tcHV0 ZV9kaXN0b3J0aW9uX3BpcGVsaW5lKHN0cnVjdCB2a19idW5kbGUgKnZrLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgVmtQaXBlbGluZUNhY2hlIHBpcGVsaW5lX2NhY2hlLAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtTaGFkZXJNb2R1bGUgc2hhZGVy LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtQaXBlbGluZUxheW91dCBw aXBlbGluZV9sYXlvdXQsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBzdHJ1Y3QgY29tcHV0ZV9kaXN0b3J0aW9uX3BhcmFtcyAqcGFyYW1zLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgVmtQaXBlbGluZSAqb3V0X2NvbXB1dGVfcGlwZWxpbmUp Ci0gewotLSNkZWZpbmUgRU5UUlkoSUQsIEZJRUxEKSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAotLQl7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0tCSAgICAuY29uc3RhbnRJRCA9IElELCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLS0JICAgIC5vZmZzZXQgPSBvZmZzZXRvZihzdHJ1Y3QgY29tcHV0 ZV9kaXN0b3J0aW9uX3BhcmFtcywgRklFTEQpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAotLQkgICAgc2l6ZW9mKHBhcmFtcy0+RklFTEQpLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0tCX0KLS0KLS0JVmtTcGVjaWFsaXphdGlvbk1hcEVudHJ5 IGVudHJpZXNbMl0gPSB7Ci0tCSAgICBFTlRSWSgwLCBkaXN0b3J0aW9uX3RleGVsX2NvdW50KSwK LS0JICAgIEVOVFJZKDEsIGRvX3RpbWV3YXJwKSwKLS0JfTsKLS0jdW5kZWYgRU5UUlkKLS0KLS0J VmtTcGVjaWFsaXphdGlvbkluZm8gc3BlY2lhbGl6YXRpb25faW5mbyA9IHsKLS0JICAgIC5tYXBF bnRyeUNvdW50ID0gQVJSQVlfU0laRShlbnRyaWVzKSwKLS0JICAgIC5wTWFwRW50cmllcyA9IGVu dHJpZXMsCi0tCSAgICAuZGF0YVNpemUgPSBzaXplb2YoKnBhcmFtcyksCi0tCSAgICAucERhdGEg PSBwYXJhbXMsCi0tCX07Ci0gCi0gCXJldHVybiB2a19jcmVhdGVfY29tcHV0ZV9waXBlbGluZSgg Ly8KLSAJICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB2a19idW5kbGUKLSAJ ICAgIHBpcGVsaW5lX2NhY2hlLCAgICAgICAgICAgICAgICAvLyBwaXBlbGluZV9jYWNoZQotIAkg ICAgc2hhZGVyLCAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNoYWRlcgotIAkgICAgcGlwZWxp bmVfbGF5b3V0LCAgICAgICAgICAgICAgIC8vIHBpcGVsaW5lX2xheW91dAotLQkgICAgJnNwZWNp YWxpemF0aW9uX2luZm8sICAgICAgICAgIC8vIHNwZWNpYWxpemF0aW9uX2luZm8KLSsJICAgIE5V TEwsICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzcGVjaWFsaXphdGlvbl9pbmZvCi0gCSAg ICBvdXRfY29tcHV0ZV9waXBlbGluZSk7ICAgICAgICAgLy8gb3V0X2NvbXB1dGVfcGlwZWxpbmUK LSB9Ci0gCi1AQCAtNTM5LDggKzUyNyw5IEBAIHJlbmRlcl9yZXNvdXJjZXNfaW5pdChzdHJ1Y3Qg cmVuZGVyX3Jlc291cmNlcyAqciwKLSAJfQotIAlyLT5jb21wdXRlLnNyY19iaW5kaW5nID0gMDsK LSAJci0+Y29tcHV0ZS5kaXN0b3J0aW9uX2JpbmRpbmcgPSAxOwotLQlyLT5jb21wdXRlLnRhcmdl dF9iaW5kaW5nID0gMjsKLSsJci0+Y29tcHV0ZS50YXJnZXRfYmluZGluZ195ID0gMjsKLSAJci0+ Y29tcHV0ZS51Ym9fYmluZGluZyA9IDM7Ci0rCXItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfY2Jj ciA9IDQ7Ci0gCi0gCXItPmNvbXB1dGUubGF5ZXIuaW1hZ2VfYXJyYXlfc2l6ZSA9Ci0gCSAgICBN SU4odmstPmxpbWl0cy5tYXhfcGVyX3N0YWdlX2Rlc2NyaXB0b3Jfc2FtcGxlZF9pbWFnZXMsIFJF TkRFUl9NQVhfSU1BR0VTX1NJWkUpOwotQEAgLTgzNCw5ICs4MjMsOSBAQCByZW5kZXJfcmVzb3Vy Y2VzX2luaXQoc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIsCi0gCXN0cnVjdCB2a19kZXNjcmlw dG9yX3Bvb2xfaW5mbyBjb21wdXRlX3Bvb2xfaW5mbyA9IHsKLSAJICAgIC51bmlmb3JtX3Blcl9k ZXNjcmlwdG9yX2NvdW50ID0gMSwKLSAJICAgIC8vIGxheWVyIGltYWdlcwotLQkgICAgLnNhbXBs ZXJfcGVyX2Rlc2NyaXB0b3JfY291bnQgPSByLT5jb21wdXRlLmxheWVyLmltYWdlX2FycmF5X3Np emUgKyBSRU5ERVJfRElTVE9SVElPTl9JTUFHRVNfQ09VTlQociksCi0rCSAgICAuc2FtcGxlcl9w ZXJfZGVzY3JpcHRvcl9jb3VudCA9IHItPmNvbXB1dGUubGF5ZXIuaW1hZ2VfYXJyYXlfc2l6ZSwK LSAJICAgIC5zdG9yYWdlX2ltYWdlX3Blcl9kZXNjcmlwdG9yX2NvdW50ID0gMSwKLS0JICAgIC5z dG9yYWdlX2J1ZmZlcl9wZXJfZGVzY3JpcHRvcl9jb3VudCA9IDAsCi0rCSAgICAuc3RvcmFnZV9i dWZmZXJfcGVyX2Rlc2NyaXB0b3JfY291bnQgPSAxLAotIAkgICAgLmRlc2NyaXB0b3JfY291bnQg PSBjb21wdXRlX2Rlc2NyaXB0b3JfY291bnQsCi0gCSAgICAuZnJlZWFibGUgPSBmYWxzZSwKLSAJ fTsKLUBAIC04NTYsNyArODQ1LDggQEAgcmVuZGVyX3Jlc291cmNlc19pbml0KHN0cnVjdCByZW5k ZXJfcmVzb3VyY2VzICpyLAotIAlyZXQgPSBjcmVhdGVfY29tcHV0ZV9sYXllcl9kZXNjcmlwdG9y X3NldF9sYXlvdXQoIC8vCi0gCSAgICB2aywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8gdmtfYnVuZGxlCi0gCSAgICByLT5jb21wdXRlLnNyY19iaW5kaW5nLCAg ICAgICAgICAgICAgICAgICAgICAgLy8gc3JjX2JpbmRpbmcsCi0tCSAgICByLT5jb21wdXRlLnRh cmdldF9iaW5kaW5nLCAgICAgICAgICAgICAgICAgICAgLy8gdGFyZ2V0X2JpbmRpbmcsCi0rCSAg ICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3ksICAgICAgICAgICAgICAgICAgLy8gdGFyZ2V0 X2JpbmRpbmdfeSwKLSsJICAgIHItPmNvbXB1dGUudGFyZ2V0X2JpbmRpbmdfY2JjciwgICAgICAg ICAgICAgICAvLyB0YXJnZXRfYmluZGluZ19jYmNyLAotIAkgICAgci0+Y29tcHV0ZS51Ym9fYmlu ZGluZywgICAgICAgICAgICAgICAgICAgICAgIC8vIHVib19iaW5kaW5nLAotIAkgICAgci0+Y29t cHV0ZS5sYXllci5pbWFnZV9hcnJheV9zaXplLCAgICAgICAgICAgIC8vIHNvdXJjZV9pbWFnZXNf Y291bnQsCi0gCSAgICAmci0+Y29tcHV0ZS5sYXllci5kZXNjcmlwdG9yX3NldF9sYXlvdXQpOyAg ICAgLy8gb3V0X2Rlc2NyaXB0b3Jfc2V0X2xheW91dAotQEAgLTkzNyw3ICs5MjcsOCBAQCByZW5k ZXJfcmVzb3VyY2VzX2luaXQoc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIsCi0gCSAgICB2aywg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB2a19idW5k bGUKLSAJICAgIHItPmNvbXB1dGUuc3JjX2JpbmRpbmcsICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8vIHNyY19iaW5kaW5nLAotIAkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uX2JpbmRpbmcs ICAgICAgICAgICAgICAgICAgICAgLy8gZGlzdG9ydGlvbl9iaW5kaW5nLAotLQkgICAgci0+Y29t cHV0ZS50YXJnZXRfYmluZGluZywgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGFyZ2V0X2Jp bmRpbmcsCi0rCSAgICByLT5jb21wdXRlLnRhcmdldF9iaW5kaW5nX3ksICAgICAgICAgICAgICAg ICAgICAgICAvLyB0YXJnZXRfYmluZGluZ195LAotKwkgICAgci0+Y29tcHV0ZS50YXJnZXRfYmlu ZGluZ19jYmNyLCAgICAgICAgICAgICAgICAgICAgLy8gdGFyZ2V0X2JpbmRpbmdfY2JjciwKLSAJ ICAgIHItPmNvbXB1dGUudWJvX2JpbmRpbmcsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v IHVib19iaW5kaW5nLAotIAkgICAgJnItPmNvbXB1dGUuZGlzdG9ydGlvbi5kZXNjcmlwdG9yX3Nl dF9sYXlvdXQpOyAgICAgLy8gb3V0X2Rlc2NyaXB0b3Jfc2V0X2xheW91dAotIAlWS19DSEtfV0lU SF9SRVQocmV0LCAiY3JlYXRlX2NvbXB1dGVfZGlzdG9ydGlvbl9kZXNjcmlwdG9yX3NldF9sYXlv dXQiLCBmYWxzZSk7Ci1AQCAtOTU0LDM5ICs5NDUsMTYgQEAgcmVuZGVyX3Jlc291cmNlc19pbml0 KHN0cnVjdCByZW5kZXJfcmVzb3VyY2VzICpyLAotIAlWS19OQU1FX1BJUEVMSU5FX0xBWU9VVCh2 aywgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCwKLSAJICAgICAgICAgICAg ICAgICAgICAgICAgInJlbmRlcl9yZXNvdXJjZXMgY29tcHV0ZSBkaXN0b3J0aW9uIHBpcGVsaW5l IGxheW91dCIpOwotIAotLQlzdHJ1Y3QgY29tcHV0ZV9kaXN0b3J0aW9uX3BhcmFtcyBkaXN0b3J0 aW9uX3BhcmFtcyA9IHsKLS0JICAgIC5kaXN0b3J0aW9uX3RleGVsX2NvdW50ID0gUkVOREVSX0RJ U1RPUlRJT05fSU1BR0VfRElNRU5TSU9OUywKLS0JICAgIC5kb190aW1ld2FycCA9IGZhbHNlLAot LQl9OwotLQotIAlyZXQgPSBjcmVhdGVfY29tcHV0ZV9kaXN0b3J0aW9uX3BpcGVsaW5lKCAgLy8K LSAJICAgIHZrLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZrX2J1bmRs ZQotIAkgICAgci0+cGlwZWxpbmVfY2FjaGUsICAgICAgICAgICAgICAgICAgICAgLy8gcGlwZWxp bmVfY2FjaGUKLSAJICAgIHItPnNoYWRlcnMtPmRpc3RvcnRpb25fY29tcCwgICAgICAgICAgIC8v IHNoYWRlcgotIAkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCwgLy8g cGlwZWxpbmVfbGF5b3V0Ci0tCSAgICAmZGlzdG9ydGlvbl9wYXJhbXMsICAgICAgICAgICAgICAg ICAgICAvLyBwYXJhbXMKLSAJICAgICZyLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmUpOyAg ICAgIC8vIG91dF9jb21wdXRlX3BpcGVsaW5lCi0gCVZLX0NIS19XSVRIX1JFVChyZXQsICJjcmVh dGVfY29tcHV0ZV9kaXN0b3J0aW9uX3BpcGVsaW5lIiwgZmFsc2UpOwotIAotIAlWS19OQU1FX1BJ UEVMSU5FKHZrLCByLT5jb21wdXRlLmRpc3RvcnRpb24ucGlwZWxpbmUsICJyZW5kZXJfcmVzb3Vy Y2VzIGNvbXB1dGUgZGlzdG9ydGlvbiBwaXBlbGluZSIpOwotIAotLQlzdHJ1Y3QgY29tcHV0ZV9k aXN0b3J0aW9uX3BhcmFtcyBkaXN0b3J0aW9uX3RpbWV3YXJwX3BhcmFtcyA9IHsKLS0JICAgIC5k aXN0b3J0aW9uX3RleGVsX2NvdW50ID0gUkVOREVSX0RJU1RPUlRJT05fSU1BR0VfRElNRU5TSU9O UywKLS0JICAgIC5kb190aW1ld2FycCA9IHRydWUsCi0tCX07Ci0tCi0tCXJldCA9IGNyZWF0ZV9j b21wdXRlX2Rpc3RvcnRpb25fcGlwZWxpbmUoICAgICAgLy8KLS0JICAgIHZrLCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB2a19idW5kbGUKLS0JICAgIHItPnBpcGVs aW5lX2NhY2hlLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwaXBlbGluZV9jYWNoZQotLQkg ICAgci0+c2hhZGVycy0+ZGlzdG9ydGlvbl9jb21wLCAgICAgICAgICAgICAgIC8vIHNoYWRlcgot LQkgICAgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCwgICAgIC8vIHBpcGVs aW5lX2xheW91dAotLQkgICAgJmRpc3RvcnRpb25fdGltZXdhcnBfcGFyYW1zLCAgICAgICAgICAg ICAgIC8vIHBhcmFtcwotLQkgICAgJnItPmNvbXB1dGUuZGlzdG9ydGlvbi50aW1ld2FycF9waXBl bGluZSk7IC8vIG91dF9jb21wdXRlX3BpcGVsaW5lCi0tCVZLX0NIS19XSVRIX1JFVChyZXQsICJj cmVhdGVfY29tcHV0ZV9kaXN0b3J0aW9uX3BpcGVsaW5lIiwgZmFsc2UpOwotLQotLQlWS19OQU1F X1BJUEVMSU5FKHZrLCByLT5jb21wdXRlLmRpc3RvcnRpb24udGltZXdhcnBfcGlwZWxpbmUsCi0t CSAgICAgICAgICAgICAgICAgInJlbmRlcl9yZXNvdXJjZXMgY29tcHV0ZSBkaXN0b3J0aW9uIHRp bWV3YXJwIHBpcGVsaW5lIik7Ci0tCi0gCXNpemVfdCBkaXN0b3J0aW9uX3Vib19zaXplID0gc2l6 ZW9mKHN0cnVjdCByZW5kZXJfY29tcHV0ZV9kaXN0b3J0aW9uX3Vib19kYXRhKTsKLSAKLSAJcmV0 ID0gcmVuZGVyX2J1ZmZlcl9pbml0KCAgICAgICAvLwotQEAgLTEwMzksMTUgKzEwMDcsOCBAQCBy ZW5kZXJfcmVzb3VyY2VzX2luaXQoc3RydWN0IHJlbmRlcl9yZXNvdXJjZXMgKnIsCi0gCSAqIENv bXB1dGUgZGlzdG9ydGlvbiB0ZXh0dXJlcywgbm90IGNyZWF0ZWQgdW50aWwgbGF0ZXIuCi0gCSAq LwotIAotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgUkVOREVSX0RJU1RPUlRJT05fSU1BR0VT X0NPVU5UKHIpOyBpKyspIHsKLS0JCXItPmRpc3RvcnRpb24uaW1hZ2Vfdmlld3NbaV0gPSBWS19O VUxMX0hBTkRMRTsKLS0JfQotLQlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgUkVOREVSX0RJU1RP UlRJT05fSU1BR0VTX0NPVU5UKHIpOyBpKyspIHsKLS0JCXItPmRpc3RvcnRpb24uaW1hZ2VzW2ld ID0gVktfTlVMTF9IQU5ETEU7Ci0tCX0KLS0JZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IFJFTkRF Ul9ESVNUT1JUSU9OX0lNQUdFU19DT1VOVChyKTsgaSsrKSB7Ci0tCQlyLT5kaXN0b3J0aW9uLmRl dmljZV9tZW1vcmllc1tpXSA9IFZLX05VTExfSEFORExFOwotLQl9Ci0rCXItPmRpc3RvcnRpb24u YnVmZmVyID0gVktfTlVMTF9IQU5ETEU7Ci0rCXItPmRpc3RvcnRpb24uZGV2aWNlX21lbW9yeSA9 IFZLX05VTExfSEFORExFOwotIAotIAotIAkvKgotQEAgLTExMjQsNyArMTA4NSw2IEBAIHJlbmRl cl9yZXNvdXJjZXNfZmluaShzdHJ1Y3QgcmVuZGVyX3Jlc291cmNlcyAqcikKLSAKLSAJRChEZXNj cmlwdG9yU2V0TGF5b3V0LCByLT5jb21wdXRlLmRpc3RvcnRpb24uZGVzY3JpcHRvcl9zZXRfbGF5 b3V0KTsKLSAJRChQaXBlbGluZSwgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lKTsKLS0J RChQaXBlbGluZSwgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnRpbWV3YXJwX3BpcGVsaW5lKTsKLSAJ RChQaXBlbGluZUxheW91dCwgci0+Y29tcHV0ZS5kaXN0b3J0aW9uLnBpcGVsaW5lX2xheW91dCk7 Ci0gCi0gCUQoUGlwZWxpbmUsIHItPmNvbXB1dGUuY2xlYXIucGlwZWxpbmUpOwotZGlmZiAtLWdp dCBhL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJzL0NNYWtlTGlzdHMudHh0IGIvc3JjL3hydC9j b21wb3NpdG9yL3NoYWRlcnMvQ01ha2VMaXN0cy50eHQKLWluZGV4IGQ4YWNhOTdlMi4uZmZjNzlj YTZlIDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL3NoYWRlcnMvQ01ha2VMaXN0cy50 eHQKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJzL0NNYWtlTGlzdHMudHh0Ci1AQCAt MjUsNyArMjUsNyBAQCBzZXQoU0hBREVSUwotIHNwaXJ2X3NoYWRlcnMoCi0gCVNIQURFUl9IRUFE RVJTCi0gCVNQSVJWX1ZFUlNJT04KLS0JMS4wICMgQ3VycmVudGx5IHRhcmdldGluZyBWdWxrYW4g MS4wCi0rCTEuNiAjIEN1cnJlbnRseSB0YXJnZXRpbmcgVnVsa2FuIDEuNgotIAlTT1VSQ0VTCi0g CSR7U0hBREVSU30KLSAJKQotZGlmZiAtLWdpdCBhL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJz L2NsZWFyLmNvbXAgYi9zcmMveHJ0L2NvbXBvc2l0b3Ivc2hhZGVycy9jbGVhci5jb21wCi1pbmRl eCAxZjBlNzMyYjguLmUwMjMwNzQxNSAxMDA2NDQKLS0tLSBhL3NyYy94cnQvY29tcG9zaXRvci9z aGFkZXJzL2NsZWFyLmNvbXAKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci9zaGFkZXJzL2NsZWFy LmNvbXAKLUBAIC0xMCw3ICsxMCw3IEBACi0gCi0gbGF5b3V0KGxvY2FsX3NpemVfeCA9IDgsIGxv Y2FsX3NpemVfeSA9IDgsIGxvY2FsX3NpemVfeiA9IDEpIGluOwotIAotLWxheW91dChzZXQgPSAw LCBiaW5kaW5nID0gMikgdW5pZm9ybSB3cml0ZW9ubHkgcmVzdHJpY3QgaW1hZ2UyRCB0YXJnZXQ7 Ci0rbGF5b3V0KHNldCA9IDAsIGJpbmRpbmcgPSAyKSB1bmlmb3JtIHdyaXRlb25seSByZXN0cmlj dCBpbWFnZTJEQXJyYXkgdGFyZ2V0OwotIGxheW91dChzZXQgPSAwLCBiaW5kaW5nID0gMykgdW5p Zm9ybSByZXN0cmljdCBDb25maWcKLSB7Ci0gCWl2ZWM0IHZpZXdzWzJdOwotQEAgLTM1LDUgKzM1 LDUgQEAgdm9pZCBtYWluKCkKLSAKLSAJdmVjNCBjb2xvdXIgPSB2ZWM0KDAsIDAsIDAsIDEuMCk7 Ci0gCi0tCWltYWdlU3RvcmUodGFyZ2V0LCBpdmVjMihvZmZzZXQueCArIGl4LCBvZmZzZXQueSAr IGl5KSwgY29sb3VyKTsKLSsJaW1hZ2VTdG9yZSh0YXJnZXQsIGl2ZWMzKG9mZnNldC54ICsgaXgs IG9mZnNldC55ICsgaXksIDApLCBjb2xvdXIpOwotIH0KLWRpZmYgLS1naXQgYS9zcmMveHJ0L2Nv bXBvc2l0b3Ivc2hhZGVycy9kaXN0b3J0aW9uLmNvbXAgYi9zcmMveHJ0L2NvbXBvc2l0b3Ivc2hh ZGVycy9kaXN0b3J0aW9uLmNvbXAKLWluZGV4IDBiMjhkOGJmMy4uZGYyYjYxMmIwIDEwMDY0NAot LS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL3NoYWRlcnMvZGlzdG9ydGlvbi5jb21wCi0rKysgYi9z cmMveHJ0L2NvbXBvc2l0b3Ivc2hhZGVycy9kaXN0b3J0aW9uLmNvbXAKLUBAIC00LDEzNiArNCwx MDYgQEAKLSAKLSAjdmVyc2lvbiA0NjAKLSAjZXh0ZW5zaW9uIEdMX0dPT0dMRV9pbmNsdWRlX2Rp cmVjdGl2ZSA6IHJlcXVpcmUKLSsjZXh0ZW5zaW9uIEdMX0tIUl9zaGFkZXJfc3ViZ3JvdXBfYmFz aWM6IHJlcXVpcmUKLSsjZXh0ZW5zaW9uIEdMX0tIUl9zaGFkZXJfc3ViZ3JvdXBfc2h1ZmZsZTog cmVxdWlyZQotIAotICNpbmNsdWRlICJzcmdiLmluYy5nbHNsIgotIAotLQotLS8vIFRoZSBzaXpl IG9mIHRoZSBkaXN0b3J0aW9uIHRleHR1cmUgZGltZW5zaW9ucyBpbiB0ZXhlbHMuCi0tbGF5b3V0 KGNvbnN0YW50X2lkID0gMCkgY29uc3QgaW50IGRpc3RvcnRpb25fdGV4ZWxfY291bnQgPSAyOwot LQotLS8vIFNob3VsZCB3ZSBkbyB0aW1ld2FycC4KLS1sYXlvdXQoY29uc3RhbnRfaWQgPSAxKSBj b25zdCBib29sIGRvX3RpbWV3YXJwID0gZmFsc2U7Ci0tCi0gbGF5b3V0KGxvY2FsX3NpemVfeCA9 IDgsIGxvY2FsX3NpemVfeSA9IDgsIGxvY2FsX3NpemVfeiA9IDEpIGluOwotIAotKyNkZWZpbmUg TUFYX0RJTSA0MDk3Ci0rI2RlZmluZSBNQVhfU0FNUExFUyA0Ci0rCi0gbGF5b3V0KHNldCA9IDAs IGJpbmRpbmcgPSAwKSB1bmlmb3JtIHNhbXBsZXIyRCBzb3VyY2VbMl07Ci0tbGF5b3V0KHNldCA9 IDAsIGJpbmRpbmcgPSAxKSB1bmlmb3JtIHNhbXBsZXIyRCBkaXN0b3J0aW9uWzZdOwotLWxheW91 dChzZXQgPSAwLCBiaW5kaW5nID0gMikgdW5pZm9ybSB3cml0ZW9ubHkgcmVzdHJpY3QgaW1hZ2Uy RCB0YXJnZXQ7Ci0rbGF5b3V0KHNldCA9IDAsIGJpbmRpbmcgPSAxLCBzdGQ0MzApIGJ1ZmZlciBy ZXN0cmljdCBGb3ZlYXRpb24KLSt7Ci0rCXVpbnQgeFsyKk1BWF9ESU1dOwotKwl1aW50IHlbMipN QVhfRElNXTsKLSt9IGZvdmVhdGlvbjsKLSsKLStsYXlvdXQoc2V0ID0gMCwgYmluZGluZyA9IDIp IHVuaWZvcm0gd3JpdGVvbmx5IHJlc3RyaWN0IGltYWdlMkRBcnJheSBsdW1hOwotIGxheW91dChz ZXQgPSAwLCBiaW5kaW5nID0gMywgc3RkMTQwKSB1bmlmb3JtIHJlc3RyaWN0IENvbmZpZwotIHsK LSAJaXZlYzQgdmlld3NbMl07Ci0gCXZlYzQgcHJlX3RyYW5zZm9ybVsyXTsKLSAJdmVjNCBwb3N0 X3RyYW5zZm9ybVsyXTsKLS0JbWF0NCB0cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9iZWdpblsy XTsKLS0JbWF0NCB0cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9lbmRbMl07Ci0tfXVibzsKLS0K LS0KLS12ZWMyIHBvc2l0aW9uX3RvX3V2KGl2ZWMyIGV4dGVudCwgdWludCBpeCwgdWludCBpeSkK LS17Ci0tCS8vIFR1cm4gdGhlIGluZGV4IGludG8gZmxvYXRpbmcgcG9pbnQuCi0tCXZlYzIgeHkg PSB2ZWMyKGZsb2F0KGl4KSwgZmxvYXQoaXkpKTsKLS0KLS0JLy8gVGhlIGludmVyc2Ugb2YgdGhl IGV4dGVudCBvZiB0aGUgdGFyZ2V0IGltYWdlIGlzIHRoZSBwaXhlbCBzaXplIGluIFswIC4uIDFd IHNwYWNlLgotLQl2ZWMyIGV4dGVudF9waXhlbF9zaXplID0gdmVjMigxLjAgLyBmbG9hdChleHRl bnQueCksIDEuMCAvIGZsb2F0KGV4dGVudC55KSk7Ci0tCi0tCS8vIFBlci10YXJnZXQgcGl4ZWwg d2UgbW92ZSB0aGUgc2l6ZSBvZiB0aGUgcGl4ZWxzLgotLQl2ZWMyIGRpc3RfdXYgPSB4eSAqIGV4 dGVudF9waXhlbF9zaXplOwotLQotLQkvLyBFbXVsYXRlIGEgdHJpYW5nbGUgc2FtcGxlIHBvc2l0 aW9uIGJ5IG9mZnNldCBoYWxmIHRhcmdldCBwaXhlbCBzaXplLgotLQlkaXN0X3V2ID0gZGlzdF91 diArIGV4dGVudF9waXhlbF9zaXplIC8gMi4wOwotLQotLQotLQkvLyBUbyBjb3JyZWN0bHkgc2Ft cGxlIHdlIG5lZWQgdG8gcHV0IHBvc2l0aW9uICgwLCAwKSBpbiB0aGUKLS0JLy8gbWlkZGxlIG9m IHRoZSAoMCwgMCkgdGV4ZWwgaW4gdGhlIGRpc3RvcnRpb24gdGV4dHVyZXMuIFRoYXQncyB3aHkg d2UKLS0JLy8gb2Zmc2V0IHdpdGggaGFsZiB0aGUgdGV4ZWwgc2l6ZSwgcHVzaGluZyBhbGwgc2Ft cGxlcyBpbnRvIHRoZSBtaWRkbGUKLS0JLy8gb2YgZWFjaCB0ZXhlbHMsIGEga2luIHRvIGEgdmVy dGV4IGJ1ZmZlci4gV2UgbmVlZCB0byBwdXQgdXYgY29vcmQKLS0JLy8gKDEsIDEpIGluIHRoZSBt aWRkbGUgb2YgdGhlIGxhc3QgdGV4ZWwsIHRoYXQgcGl4ZWwgaXMgKHNpemUgLSAxKQotLQkvLyB0 ZXhlbHMgYXdheSBmcm9tIHRoZSBmaXJzdCB0ZXhlbC4gU28gd2UgbmVlZCB0byBzY2FsZSBbMCAu LiAxXSB0bwotLQkvLyBbMCAuLiBzaXplIC0gMV0uCi0tCi0tI2RlZmluZSBESU0gKGZsb2F0KGRp c3RvcnRpb25fdGV4ZWxfY291bnQpKQotLSNkZWZpbmUgU1RSRVRDSCAoKERJTSAtIDEuMCkgLyBE SU0pCi0tI2RlZmluZSBPRkZTRVQgKDEuMCAvIChESU0gKiAyLjApKQotLQotLQlkaXN0X3V2ID0g KGRpc3RfdXYgKiBTVFJFVENIKSArIE9GRlNFVDsKLS0KLS0JcmV0dXJuIGRpc3RfdXY7Ci0tfQot LQotLXZlYzIgdHJhbnNmb3JtX3V2X3N1YmltYWdlKHZlYzIgdXYsIHVpbnQgaXopCi0rCW1hdDQg dHJhbnNmb3JtWzJdOwotK30gdWJvOwotK2xheW91dChzZXQgPSAwLCBiaW5kaW5nID0gNCkgdW5p Zm9ybSB3cml0ZW9ubHkgcmVzdHJpY3QgaW1hZ2UyREFycmF5IGNocm9tYTsKLSsKLStjb25zdCBt YXQzIGNvbG9yX3NwYWNlID0gbWF0MygKLSsvLyBjbGFuZy1mb3JtYXQgb2ZmCi0rLy8gICAgICAg ICBSICAgICAgICBHICAgICAgICBCCi0rLyogWSAqLyAwLjIxMjYsICAwLjcxNTIsICAwLjA3MjIs Ci0rLyogQ2IqLy0wLjExNDYsIC0wLjM4NTQsICAwLjUsCi0rLyogQ3IqLyAwLjUgICAsIC0wLjQ1 NDIsIC0wLjA0NTgpOwotKy8vY2xhbmctZm9ybWF0OiBvbgotKwotK3ZlYzMgcmdiX3RvX3ljYmNy KHZlYzMgY29sb3IpCi0gewotLQl2ZWMyIHZhbHVlcyA9IHV2OwotLQotLQkvLyBUbyBkZWFsIHdp dGggT3BlbkdMIGZsaXAgYW5kIHN1YiBpbWFnZSB2aWV3LgotLQl2YWx1ZXMueHkgPSB2YWx1ZXMu eHkgKiB1Ym8ucG9zdF90cmFuc2Zvcm1baXpdLnp3ICsgdWJvLnBvc3RfdHJhbnNmb3JtW2l6XS54 eTsKLS0KLS0JLy8gUmVhZHkgdG8gYmUgdXNlZC4KLS0JcmV0dXJuIHZhbHVlcy54eTsKLS19Ci0t Ci0tdmVjMiB0cmFuc2Zvcm1fdXZfdGltZXdhcnAodmVjMiB1diwgdWludCBpeikKLS17Ci0tCXZl YzQgdmFsdWVzID0gdmVjNCh1diwgLTEsIDEpOwotLQotLQkvLyBGcm9tIHV2IHRvIHRhbiBhbmds ZSAodGFuZ2VudCBzcGFjZSkuCi0tCXZhbHVlcy54eSA9IHZhbHVlcy54eSAqIHViby5wcmVfdHJh bnNmb3JtW2l6XS56dyArIHViby5wcmVfdHJhbnNmb3JtW2l6XS54eTsKLS0JdmFsdWVzLnkgPSAt dmFsdWVzLnk7IC8vIEZsaXAgdG8gT3BlblhSIGNvb3JkaW5hdGUgc3lzdGVtLgotLQotLQkvLyBU aW1ld2FycCBpbmNsdWRpbmcgc2NhbmxpbmUgdGltZXdhcnAgZm9yIHJvbGxpbmcgcmVmcmVzaCBw YW5lbHMuCi0tCXZhbHVlcyA9IHViby50cmFuc2Zvcm1fdGltZXdhcnBfc2Nhbm91dF9iZWdpbltp el0gKiB2YWx1ZXMgKiAoMSAtIHV2LnkpICsKLS0JICAgICAgICAgdWJvLnRyYW5zZm9ybV90aW1l d2FycF9zY2Fub3V0X2VuZFtpel0gKiB2YWx1ZXMgKiB1di55OwotLQl2YWx1ZXMueHkgPSB2YWx1 ZXMueHkgKiAoMS4wIC8gbWF4KHZhbHVlcy53LCAwLjAwMDAxKSk7Ci0tCi0tCS8vIEZyb20gWy0x LCAxXSB0byBbMCwgMV0KLS0JdmFsdWVzLnh5ID0gdmFsdWVzLnh5ICogMC41ICsgMC41OwotLQot LQkvLyBEb25lLgotLQlyZXR1cm4gdmFsdWVzLnh5OwotLX0KLS0KLS12ZWMyIHRyYW5zZm9ybV91 dih2ZWMyIHV2LCB1aW50IGl6KQotLXsKLS0JaWYgKGRvX3RpbWV3YXJwKSB7Ci0tCQl1diA9IHRy YW5zZm9ybV91dl90aW1ld2FycCh1diwgaXopOwotLQl9Ci0tCi0tCXJldHVybiB0cmFuc2Zvcm1f dXZfc3ViaW1hZ2UodXYsIGl6KTsKLSsJcmV0dXJuIHRyYW5zcG9zZShjb2xvcl9zcGFjZSkgKiBj b2xvciArIHZlYzMoMCwgMC41LCAwLjUpOwotIH0KLSAKLSB2b2lkIG1haW4oKQotIHsKLS0JdWlu dCBpeCA9IGdsX0dsb2JhbEludm9jYXRpb25JRC54OwotLQl1aW50IGl5ID0gZ2xfR2xvYmFsSW52 b2NhdGlvbklELnk7Ci0gCXVpbnQgaXogPSBnbF9HbG9iYWxJbnZvY2F0aW9uSUQuejsKLSAKLSAJ aXZlYzIgb2Zmc2V0ID0gaXZlYzIodWJvLnZpZXdzW2l6XS54eSk7Ci0tCWl2ZWMyIGV4dGVudCA9 IGl2ZWMyKHViby52aWV3c1tpel0uencpOwotLQotLQlpZiAoaXggPj0gZXh0ZW50LnggfHwgaXkg Pj0gZXh0ZW50LnkpIHsKLSsJdWludCBpeSA9IGdsX0dsb2JhbEludm9jYXRpb25JRC55OwotKwl1 aW50IHltaW4gPSBmb3ZlYXRpb24ueVtNQVhfRElNICogaXogKyBpeV07Ci0rCXVpbnQgeW1heCA9 IGZvdmVhdGlvbi55W01BWF9ESU0gKiBpeiArIGl5ICsgMV07Ci0rCWlmICh5bWluID09IHltYXgp Ci0gCQlyZXR1cm47Ci0rCWlmICh5bWluID4geW1heCkKLSsJewotKwkJdWludCB0bXAgPSB5bWlu OwotKwkJeW1pbiA9IHltYXg7Ci0rCQl5bWF4ID0gdG1wOwotIAl9Ci0rCXVpbnQgaXggPSBnbF9H bG9iYWxJbnZvY2F0aW9uSUQueDsKLSAKLS0JdmVjMiBkaXN0X3V2ID0gcG9zaXRpb25fdG9fdXYo ZXh0ZW50LCBpeCwgaXkpOwotLQotLQl2ZWMyIHJfdXYgPSB0ZXh0dXJlKGRpc3RvcnRpb25baXog KyAwXSwgZGlzdF91dikueHk7Ci0tCXZlYzIgZ191diA9IHRleHR1cmUoZGlzdG9ydGlvbltpeiAr IDJdLCBkaXN0X3V2KS54eTsKLS0JdmVjMiBiX3V2ID0gdGV4dHVyZShkaXN0b3J0aW9uW2l6ICsg NF0sIGRpc3RfdXYpLnh5OwotKwl1aW50IHhtaW4gPSBmb3ZlYXRpb24ueFtNQVhfRElNICogaXog KyBpeF07Ci0rCXVpbnQgeG1heCA9IGZvdmVhdGlvbi54W01BWF9ESU0gKiBpeiArIGl4ICsgMV07 Ci0rCWlmICh4bWluID09IHhtYXgpCi0rCQlyZXR1cm47Ci0gCi0tCS8vIERvIGFueSB0cmFuc2Zv cm1hdGlvbiBuZWVkZWQuCi0tCXJfdXYgPSB0cmFuc2Zvcm1fdXYocl91diwgaXopOwotLQlnX3V2 ID0gdHJhbnNmb3JtX3V2KGdfdXYsIGl6KTsKLS0JYl91diA9IHRyYW5zZm9ybV91dihiX3V2LCBp eik7Ci0rCXVpbnQgeHN0ZXAgPSAoeG1heCAtIHhtaW4gKyBNQVhfU0FNUExFUyAtIDEpIC8gTUFY X1NBTVBMRVM7Ci0rCXVpbnQgeXN0ZXAgPSAoeW1heCAtIHltaW4gKyBNQVhfU0FNUExFUyAtIDEp IC8gTUFYX1NBTVBMRVM7Ci0gCi0tCS8vIFNhbXBsZSB0aGUgc291cmNlIHdpdGggZGlzdG9ydGVk IGFuZCBjaHJvbWF0aWMtYWJlcnJhdGlvbiBjb3JyZWN0ZWQgc2FtcGxlcy4KLS0JdmVjNCBjb2xv dXIgPSB2ZWM0KCAgICAgICAgICAgICAgLy8KLS0JICAgIHRleHR1cmUoc291cmNlW2l6XSwgcl91 dikuciwgLy8KLS0JICAgIHRleHR1cmUoc291cmNlW2l6XSwgZ191dikuZywgLy8KLS0JICAgIHRl eHR1cmUoc291cmNlW2l6XSwgYl91dikuYiwgLy8KLS0JICAgIDEpOyAgICAgICAgICAgICAgICAg ICAgICAgICAgLy8KLSsJdmVjNCBjb2xvdXIgPSB2ZWM0KDApOwotKwl1aW50IGNvdW50ID0gMDsK LSsJZm9yICh1aW50IHkgPSB5bWluIDsgeSA8IHltYXg7IHkgKz0geXN0ZXApIHsKLSsJCWZvciAo dWludCB4ID0geG1pbiA7IHggPCB4bWF4OyB4ICs9IHhzdGVwKSB7Ci0rCQkJY29sb3VyICs9IHRl eGVsRmV0Y2goc291cmNlW2l6XSwgaXZlYzIoeCwgeSksIDApOwotKwkJCSsrY291bnQ7Ci0rCQl9 Ci0rCX0KLSsJY29sb3VyIC89IGNvdW50OwotKwljb2xvdXIueHl6ID0gcmdiX3RvX3ljYmNyKGZy b21fbGluZWFyX3RvX3NyZ2IoY29sb3VyLnJnYikpOwotKwotKwlpbWFnZVN0b3JlKGx1bWEsIGl2 ZWMzKGl4LCBpeSwgaXopLCB2ZWM0KGNvbG91ci54KSk7Ci0rCi0rCXZlYzQgc3VtID0gY29sb3Vy OwotKwlmb3IgKHVpbnQgaSA9IDAgOyBpIDwgZ2xfU3ViZ3JvdXBTaXplOyArK2kpCi0rCXsKLSsJ CXV2ZWMzIG90aGVyID0gc3ViZ3JvdXBTaHVmZmxlKGdsX0dsb2JhbEludm9jYXRpb25JRCwgaSk7 Ci0rCQl2ZWM0IGMgPSBzdWJncm91cFNodWZmbGUoY29sb3VyLCBpKTsKLSsJCWlmICgKLSsJCQlv dGhlciA9PSBnbF9HbG9iYWxJbnZvY2F0aW9uSUQgKyB1dmVjMygxLCAwLCAwKQotKwkJCXx8IG90 aGVyID09IGdsX0dsb2JhbEludm9jYXRpb25JRCArIHV2ZWMzKDAsIDEsIDApCi0rCQkJfHwgb3Ro ZXIgPT0gZ2xfR2xvYmFsSW52b2NhdGlvbklEICsgdXZlYzMoMSwgMSwgMCkpCi0rCQl7Ci0rCQkJ c3VtICs9IGM7Ci0rCQl9Ci0rCX0KLSAKLS0JLy8gRG8gY29sb3VyIGNvcnJlY3Rpb24gaGVyZSBz aW5jZSB0aGVyZSBhcmUgbm8gYXV0b21hdGljIGNvbnZlcnNpb24gaW4gaGFyZHdhcmUgYXZhaWxh YmxlLgotLQljb2xvdXIgPSB2ZWM0KGZyb21fbGluZWFyX3RvX3NyZ2IoY29sb3VyLnJnYiksIDEp OwotKwlpZiAoaXggJTIgPT0gMCAmJiBpeSAlMiA9PSAwKQotKwl7Ci0rCQkvLyBhY3R1YWwgY2hy b21hCi0rCQlpbWFnZVN0b3JlKGNocm9tYSwgaXZlYzMoZ2xfR2xvYmFsSW52b2NhdGlvbklELnh5 LzIsIGl6KSwgdmVjNChzdW0ueSwgc3VtLnosIDAsIDApIC8gNCk7Ci0gCi0tCWltYWdlU3RvcmUo dGFyZ2V0LCBpdmVjMihvZmZzZXQueCArIGl4LCBvZmZzZXQueSArIGl5KSwgY29sb3VyKTsKLSsJ CS8vIGFscGhhIGluIGx1bWEKLSsJCWltYWdlU3RvcmUobHVtYSwgaXZlYzMob2Zmc2V0Lnh5LzIg KyBnbF9HbG9iYWxJbnZvY2F0aW9uSUQueHkvMiwgMiksIHZlYzQoc3VtLncsIDAsIDAsIDApIC8g NCk7Ci0rCQlpbWFnZVN0b3JlKGNocm9tYSwgaXZlYzMob2Zmc2V0Lnh5LzIgKyBnbF9HbG9iYWxJ bnZvY2F0aW9uSUQueHkvMiwgMiksIHZlYzQoMC41LCAwLjUsIDAsIDApKTsKLSsJfQotIH0KLWRp ZmYgLS1naXQgYS9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVy LmMgYi9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVyLmMKLWlu ZGV4IGQ4YmY1NDU2OS4uMGRhZTBkZmM4IDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9y L3V0aWwvY29tcF9oaWdoX2xldmVsX3JlbmRlci5jCi0rKysgYi9zcmMveHJ0L2NvbXBvc2l0b3Iv dXRpbC9jb21wX2hpZ2hfbGV2ZWxfcmVuZGVyLmMKLUBAIC0xOTQsMTQgKzE5NCwxNiBAQCBjaGxf ZnJhbWVfc3RhdGVfY3Nfc2V0X3ZpZXdzKHN0cnVjdCBjaGxfZnJhbWVfc3RhdGUgKmZyYW1lX3N0 YXRlLAotIHZvaWQKLSBjaGxfZnJhbWVfc3RhdGVfY3Nfc2V0X3RhcmdldChzdHJ1Y3QgY2hsX2Zy YW1lX3N0YXRlICpmcmFtZV9zdGF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBW a0ltYWdlIHRhcmdldF9pbWFnZSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0lt YWdlVmlldyB0YXJnZXRfc3RvcmFnZV92aWV3LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJnZXRfc3RvcmFnZV92aWV3X2NiY3IsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9k YXRhIHZpZXdzW1hSVF9NQVhfVklFV1NdKQotIHsKLSAJLy8gQWRkIHRoZSB0YXJnZXQgaW5mby4K LSAJY29tcF9yZW5kZXJfY3NfYWRkX3RhcmdldCggLy8KLSAJICAgICZmcmFtZV9zdGF0ZS0+ZGF0 YSwgICAgLy8gZGF0YQotIAkgICAgdGFyZ2V0X2ltYWdlLCAgICAgICAgICAvLyB0YXJnZXRfaW1h Z2UKLS0JICAgIHRhcmdldF9zdG9yYWdlX3ZpZXcpOyAgLy8gdGFyZ2V0X3Vub3JtX3ZpZXcKLSsJ ICAgIHRhcmdldF9zdG9yYWdlX3ZpZXdfeSwKLSsJICAgIHRhcmdldF9zdG9yYWdlX3ZpZXdfY2Jj cik7ICAvLyB0YXJnZXRfdW5vcm1fdmlldwotIAotIAlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwg ZnJhbWVfc3RhdGUtPnZpZXdfY291bnQ7IGkrKykgewotIAkJLy8gV2hpY2ggaW1hZ2Ugb2YgdGhl IHNjcmF0Y2ggaW1hZ2VzIGZvciB0aGlzIHZpZXcgYXJlIHdlIHVzaW5nLgotZGlmZiAtLWdpdCBh L3NyYy94cnQvY29tcG9zaXRvci91dGlsL2NvbXBfaGlnaF9sZXZlbF9yZW5kZXIuaCBiL3NyYy94 cnQvY29tcG9zaXRvci91dGlsL2NvbXBfaGlnaF9sZXZlbF9yZW5kZXIuaAotaW5kZXggNTVlZTY3 Zjc4Li4xMmZjNmRkMTAgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvdXRpbC9jb21w X2hpZ2hfbGV2ZWxfcmVuZGVyLmgKLSsrKyBiL3NyYy94cnQvY29tcG9zaXRvci91dGlsL2NvbXBf aGlnaF9sZXZlbF9yZW5kZXIuaAotQEAgLTE4OCw3ICsxODgsOCBAQCBjaGxfZnJhbWVfc3RhdGVf Y3Nfc2V0X3ZpZXdzKHN0cnVjdCBjaGxfZnJhbWVfc3RhdGUgKmZyYW1lX3N0YXRlLAotIHZvaWQK LSBjaGxfZnJhbWVfc3RhdGVfY3Nfc2V0X3RhcmdldChzdHJ1Y3QgY2hsX2ZyYW1lX3N0YXRlICpm cmFtZV9zdGF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlIHRhcmdl dF9pbWFnZSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWa0ltYWdlVmlldyB0YXJn ZXRfc3RvcmFnZV92aWV3LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VW aWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBWa0ltYWdlVmlldyB0YXJnZXRfc3RvcmFnZV92aWV3X2NiY3IsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHZpZXdzW1hS VF9NQVhfVklFV1NdKTsKLSAKLSAvKiEKLUBAIC0yMDYsNyArMjA3LDggQEAgY2hsX2ZyYW1lX3N0 YXRlX2NzX2RlZmF1bHRfcGlwZWxpbmUoc3RydWN0IGNobF9mcmFtZV9zdGF0ZSAqZnJhbWVfc3Rh dGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHhy dF9wb3NlIGV5ZV9wb3Nlc1tYUlRfTUFYX1ZJRVdTXSwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgeHJ0X2ZvdiBmb3ZzW1hSVF9NQVhfVklFV1NdLAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2UgdGFyZ2V0X2ltYWdl LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdl dF9zdG9yYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmtJ bWFnZVZpZXcgdGFyZ2V0X3N0b3JhZ2Vfdmlld195LAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfY2JjciwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdw b3J0X2RhdGEgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzW1hSVF9NQVhfVklFV1NdKQotIHsKLSAJY2hs X2ZyYW1lX3N0YXRlX2NzX3NldF92aWV3cyggIC8vCi1AQCAtMjIwLDcgKzIyMiw4IEBAIGNobF9m cmFtZV9zdGF0ZV9jc19kZWZhdWx0X3BpcGVsaW5lKHN0cnVjdCBjaGxfZnJhbWVfc3RhdGUgKmZy YW1lX3N0YXRlLAotIAljaGxfZnJhbWVfc3RhdGVfY3Nfc2V0X3RhcmdldCggLy8KLSAJICAgIGZy YW1lX3N0YXRlLCAgICAgICAgICAgICAgIC8vCi0gCSAgICB0YXJnZXRfaW1hZ2UsICAgICAgICAg ICAgICAvLwotLQkgICAgdGFyZ2V0X3N0b3JhZ2VfdmlldywgICAgICAgLy8KLSsJICAgIHRhcmdl dF9zdG9yYWdlX3ZpZXdfeSwgICAgIC8vCi0rCSAgICB0YXJnZXRfc3RvcmFnZV92aWV3X2NiY3Is ICAvLwotIAkgICAgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzKTsgICAgLy8KLSAKLSAJLy8gU3RhcnQg dGhlIGNvbXB1dGUgcGlwZWxpbmUuCi1kaWZmIC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3V0 aWwvY29tcF9yZW5kZXIuaCBiL3NyYy94cnQvY29tcG9zaXRvci91dGlsL2NvbXBfcmVuZGVyLmgK LWluZGV4IGJkN2FiMjk1Ny4uYzJiOTVkNjhkIDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3Np dG9yL3V0aWwvY29tcF9yZW5kZXIuaAotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29t cF9yZW5kZXIuaAotQEAgLTIwNSw3ICsyMDUsOCBAQCBzdHJ1Y3QgY29tcF9yZW5kZXJfZGlzcGF0 Y2hfZGF0YQotIAkJCVZrSW1hZ2UgaW1hZ2U7Ci0gCi0gCQkJLy8hIFRhcmdldCBpbWFnZSB2aWV3 IGZvciBkaXN0b3J0aW9uLgotLQkJCVZrSW1hZ2VWaWV3IHN0b3JhZ2VfdmlldzsKLSsJCQlWa0lt YWdlVmlldyBzdG9yYWdlX3ZpZXdfeTsKLSsJCQlWa0ltYWdlVmlldyBzdG9yYWdlX3ZpZXdfY2Jj cjsKLSAJCX0gY3M7Ci0gCX0gdGFyZ2V0OwotIH07Ci1AQCAtNTA5LDE0ICs1MTAsMTUgQEAgY29t cF9yZW5kZXJfZ2Z4X2Rpc3BhdGNoKHN0cnVjdCByZW5kZXJfZ2Z4ICpyZW5kZXIsCi0gICogQHBh cmFtIHRhcmdldF9zdG9yYWdlX3ZpZXcgQ29ycmVzcG9uZGluZyBpbWFnZSB2aWV3Ci0gICovCi0g c3RhdGljIGlubGluZSB2b2lkCi0tY29tcF9yZW5kZXJfY3NfYWRkX3RhcmdldChzdHJ1Y3QgY29t cF9yZW5kZXJfZGlzcGF0Y2hfZGF0YSAqZGF0YSwgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsIFZrSW1h Z2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXcpCi0rY29tcF9yZW5kZXJfY3NfYWRkX3RhcmdldChz dHJ1Y3QgY29tcF9yZW5kZXJfZGlzcGF0Y2hfZGF0YSAqZGF0YSwgVmtJbWFnZSB0YXJnZXRfaW1h Z2UsIFZrSW1hZ2VWaWV3IHRhcmdldF9zdG9yYWdlX3ZpZXdfeSwgVmtJbWFnZVZpZXcgdGFyZ2V0 X3N0b3JhZ2Vfdmlld19jYmNyKQotIHsKLSAJLy8gRXJyb3IgdHJhY2tpbmcuCi0gCWRhdGEtPnRh cmdldC5pbml0aWFsaXplZCA9IHRydWU7Ci0gCi0gCS8vIFdoZW4gd3JpdGluZyBpbnRvIHRoZSB0 YXJnZXQuCi0gCWRhdGEtPnRhcmdldC5jcy5pbWFnZSA9IHRhcmdldF9pbWFnZTsKLS0JZGF0YS0+ dGFyZ2V0LmNzLnN0b3JhZ2VfdmlldyA9IHRhcmdldF9zdG9yYWdlX3ZpZXc7Ci0rCWRhdGEtPnRh cmdldC5jcy5zdG9yYWdlX3ZpZXdfeSA9IHRhcmdldF9zdG9yYWdlX3ZpZXdfeTsKLSsJZGF0YS0+ dGFyZ2V0LmNzLnN0b3JhZ2Vfdmlld19jYmNyID0gdGFyZ2V0X3N0b3JhZ2Vfdmlld19jYmNyOwot IH0KLSAKLSAvKiEKLUBAIC02MTgsNyArNjIwLDggQEAgY29tcF9yZW5kZXJfY3NfbGF5ZXIoc3Ry dWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgY29uc3Qg c3RydWN0IHhydF9wb3NlICp3b3JsZF9wb3NlX3NjYW5vdXRfZW5kLAotICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9zZSAqZXllX3Bvc2UsCi0gICAgICAgICAgICAgICAg ICAgICAgY29uc3QgVmtJbWFnZSB0YXJnZXRfaW1hZ2UsCi0tICAgICAgICAgICAgICAgICAgICAg Y29uc3QgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXcsCi0rICAgICAgICAgICAgICAgICAg ICAgY29uc3QgVmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwKLSsgICAgICAgICAgICAg ICAgICAgICBjb25zdCBWa0ltYWdlVmlldyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyLAotICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0YSAqdGFyZ2V0 X3ZpZXcsCi0gICAgICAgICAgICAgICAgICAgICAgYm9vbCBkb190aW1ld2FycCk7Ci0gCi1kaWZm IC0tZ2l0IGEvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXJfY3MuYyBiL3NyYy94 cnQvY29tcG9zaXRvci91dGlsL2NvbXBfcmVuZGVyX2NzLmMKLWluZGV4IDZlOTNlYWJlOC4uNGEz MDRjNmY3IDEwMDY0NAotLS0tIGEvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXJf Y3MuYwotKysrIGIvc3JjL3hydC9jb21wb3NpdG9yL3V0aWwvY29tcF9yZW5kZXJfY3MuYwotQEAg LTM3MCw3ICszNzAsOCBAQCBjcmNfY2xlYXJfb3V0cHV0KHN0cnVjdCByZW5kZXJfY29tcHV0ZSAq cmVuZGVyLCBjb25zdCBzdHJ1Y3QgY29tcF9yZW5kZXJfZGlzcGF0YwotIAlyZW5kZXJfY29tcHV0 ZV9jbGVhciggICAgICAgICAgLy8KLSAJICAgIHJlbmRlciwgICAgICAgICAgICAgICAgICAgIC8v Ci0gCSAgICBkLT50YXJnZXQuY3MuaW1hZ2UsICAgICAgICAvLwotLQkgICAgZC0+dGFyZ2V0LmNz LnN0b3JhZ2VfdmlldywgLy8gdGFyZ2V0X2ltYWdlX3ZpZXcKLSsJICAgIGQtPnRhcmdldC5jcy5z dG9yYWdlX3ZpZXdfeSwgLy8gdGFyZ2V0X2ltYWdlX3ZpZXdfeQotKwkgICAgZC0+dGFyZ2V0LmNz LnN0b3JhZ2Vfdmlld19jYmNyLCAvLyB0YXJnZXRfaW1hZ2Vfdmlld19jYmNyCi0gCSAgICB0YXJn ZXRfdmlld3BvcnRfZGF0YXMpOyAgICAvLyB2aWV3cwotIH0KLSAKLUBAIC0zOTYsOSArMzk3LDYg QEAgY3JjX2Rpc3RvcnRpb25fYWZ0ZXJfc3F1YXNoKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVu ZGVyLCBjb25zdCBzdHJ1Y3QgY29tcF9yZW4KLSAJVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRf TUFYX1ZJRVdTXTsKLSAJc3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHRhcmdldF92aWV3cG9y dF9kYXRhc1tYUlRfTUFYX1ZJRVdTXTsKLSAJc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qgc3Jj X25vcm1fcmVjdHNbWFJUX01BWF9WSUVXU107Ci0tCXN0cnVjdCB4cnRfZm92IHNyY19mb3ZzW1hS VF9NQVhfVklFV1NdOwotLQlzdHJ1Y3QgeHJ0X3Bvc2Ugd29ybGRfcG9zZXNfc2Nhbm91dF9iZWdp bltYUlRfTUFYX1ZJRVdTXTsKLS0Jc3RydWN0IHhydF9wb3NlIHdvcmxkX3Bvc2VzX3NjYW5vdXRf ZW5kW1hSVF9NQVhfVklFV1NdOwotIAotIAlmb3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgZC0+dGFy Z2V0LnZpZXdfY291bnQ7IGkrKykgewotIAkJLy8gRGF0YSB0byBiZSBmaWxsZWQgaW4uCi1AQCAt NDE2LDM2ICs0MTQsMTcgQEAgY3JjX2Rpc3RvcnRpb25fYWZ0ZXJfc3F1YXNoKHN0cnVjdCByZW5k ZXJfY29tcHV0ZSAqcmVuZGVyLCBjb25zdCBzdHJ1Y3QgY29tcF9yZW4KLSAJCXNyY19ub3JtX3Jl Y3RzW2ldID0gc3JjX25vcm1fcmVjdDsKLSAJCXNyY19zYW1wbGVyc1tpXSA9IGNsYW1wX3RvX2Jv cmRlcl9ibGFjazsKLSAJCXRhcmdldF92aWV3cG9ydF9kYXRhc1tpXSA9IHZpZXdwb3J0X2RhdGE7 Ci0tCi0tCQlpZiAoZC0+ZG9fdGltZXdhcnApIHsKLS0JCQl3b3JsZF9wb3Nlc19zY2Fub3V0X2Jl Z2luW2ldID0gZC0+dmlld3NbaV0ud29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luOwotLQkJCXdvcmxk X3Bvc2VzX3NjYW5vdXRfZW5kW2ldID0gZC0+dmlld3NbaV0ud29ybGRfcG9zZV9zY2Fub3V0X2Vu ZDsKLS0JCQlzcmNfZm92c1tpXSA9IGQtPnZpZXdzW2ldLmZvdjsKLS0JCX0KLSAJfQotIAotLQlp ZiAoIWQtPmRvX3RpbWV3YXJwKSB7Ci0tCQlyZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uX25vX3Rp bWV3YXJwKCAvLwotLQkJICAgIHJlbmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8K LS0JCSAgICBzcmNfc2FtcGxlcnMsICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3Jj X2ltYWdlX3ZpZXdzLCAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19ub3JtX3JlY3Rz LCAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBkLT50YXJnZXQuY3MuaW1hZ2UsICAgICAg ICAgICAgICAgIC8vCi0tCQkgICAgZC0+dGFyZ2V0LmNzLnN0b3JhZ2VfdmlldywgICAgICAgICAv LyB0YXJnZXRfaW1hZ2VfdmlldwotLQkJICAgIHRhcmdldF92aWV3cG9ydF9kYXRhcyk7ICAgICAg ICAgICAgLy8gdmlld3MKLS0JfSBlbHNlIHsKLS0JCXJlbmRlcl9jb21wdXRlX3Byb2plY3Rpb25f c2Nhbm91dF9jb21wZW5zYXRpb24oIC8vCi0tCQkgICAgcmVuZGVyLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19zYW1wbGVycywgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfaW1hZ2Vfdmlld3MsICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX25vcm1fcmVjdHMsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19mb3ZzLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8KLS0JCSAgICB3b3JsZF9wb3Nlc19zY2Fub3V0X2JlZ2luLCAgICAgICAg ICAgICAgICAgIC8vCi0tCQkgICAgd29ybGRfcG9zZXNfc2Nhbm91dF9lbmQsICAgICAgICAgICAg ICAgICAgICAvLwotLQkJICAgIGQtPnRhcmdldC5jcy5pbWFnZSwgICAgICAgICAgICAgICAgICAg ICAgICAgLy8KLS0JCSAgICBkLT50YXJnZXQuY3Muc3RvcmFnZV92aWV3LCAgICAgICAgICAgICAg ICAgIC8vIHRhcmdldF9pbWFnZV92aWV3Ci0tCQkgICAgdGFyZ2V0X3ZpZXdwb3J0X2RhdGFzKTsg ICAgICAgICAgICAgICAgICAgICAvLyB2aWV3cwotLQl9Ci0rCXJlbmRlcl9jb21wdXRlX3Byb2pl Y3Rpb24oICAgICAvLwotKwkgICAgcmVuZGVyLCAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAg IHNyY19zYW1wbGVycywgICAgICAgICAgICAgIC8vCi0rCSAgICBzcmNfaW1hZ2Vfdmlld3MsICAg ICAgICAgICAvLwotKwkgICAgc3JjX25vcm1fcmVjdHMsICAgICAgICAgICAgLy8KLSsJICAgIGQt PnRhcmdldC5jcy5pbWFnZSwgICAgICAgIC8vCi0rCSAgICBkLT50YXJnZXQuY3Muc3RvcmFnZV92 aWV3X3ksIC8vIHRhcmdldF9pbWFnZV92aWV3X3kKLSsJICAgIGQtPnRhcmdldC5jcy5zdG9yYWdl X3ZpZXdfY2JjciwgLy8gdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjcgotKwkgICAgdGFyZ2V0X3ZpZXdw b3J0X2RhdGFzKTsgICAgLy8gdmlld3MKLSB9Ci0gCi0gLy8vIEZhc3QgcGF0aAotQEAgLTQ3MSwy MCArNDUwLDEyIEBAIGNyY19kaXN0b3J0aW9uX2Zhc3RfcGF0aChzdHJ1Y3QgcmVuZGVyX2NvbXB1 dGUgKnJlbmRlciwKLSAJVmtTYW1wbGVyIHNyY19zYW1wbGVyc1tYUlRfTUFYX1ZJRVdTXTsKLSAJ c3RydWN0IHJlbmRlcl92aWV3cG9ydF9kYXRhIHRhcmdldF92aWV3cG9ydF9kYXRhc1tYUlRfTUFY X1ZJRVdTXTsKLSAJc3RydWN0IHhydF9ub3JtYWxpemVkX3JlY3Qgc3JjX25vcm1fcmVjdHNbWFJU X01BWF9WSUVXU107Ci0tCXN0cnVjdCB4cnRfZm92IHNyY19mb3ZzW1hSVF9NQVhfVklFV1NdOwot LQlzdHJ1Y3QgeHJ0X3Bvc2Ugc3JjX3Bvc2VzW1hSVF9NQVhfVklFV1NdOwotLQlzdHJ1Y3QgeHJ0 X3Bvc2Ugd29ybGRfcG9zZXNfc2Nhbm91dF9iZWdpbltYUlRfTUFYX1ZJRVdTXTsKLS0Jc3RydWN0 IHhydF9wb3NlIHdvcmxkX3Bvc2VzX3NjYW5vdXRfZW5kW1hSVF9NQVhfVklFV1NdOwotIAotIAlm b3IgKHVpbnQzMl90IGkgPSAwOyBpIDwgZC0+dGFyZ2V0LnZpZXdfY291bnQ7IGkrKykgewotIAkJ Ly8gRGF0YSB0byBiZSBmaWxsZWQgaW4uCi0gCQlWa0ltYWdlVmlldyBzcmNfaW1hZ2VfdmlldzsK LSAJCXN0cnVjdCByZW5kZXJfdmlld3BvcnRfZGF0YSB2aWV3cG9ydF9kYXRhOwotIAkJc3RydWN0 IHhydF9ub3JtYWxpemVkX3JlY3Qgc3JjX25vcm1fcmVjdDsKLS0JCXN0cnVjdCB4cnRfZm92IHNy Y19mb3Y7Ci0tCQlzdHJ1Y3QgeHJ0X3Bvc2Ugc3JjX3Bvc2U7Ci0tCQlzdHJ1Y3QgeHJ0X3Bvc2Ug d29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luOwotLQkJc3RydWN0IHhydF9wb3NlIHdvcmxkX3Bvc2Vf c2Nhbm91dF9lbmQ7Ci0gCQl1aW50MzJfdCBhcnJheV9pbmRleCA9IHZkc1tpXS0+c3ViLmFycmF5 X2luZGV4OwotIAkJY29uc3Qgc3RydWN0IGNvbXBfc3dhcGNoYWluX2ltYWdlICppbWFnZSA9IGdl dF9sYXllcl9pbWFnZShsYXllciwgaSwgdmRzW2ldLT5zdWIuaW1hZ2VfaW5kZXgpOwotIAotQEAg LTQ5MiwxMCArNDYzLDYgQEAgY3JjX2Rpc3RvcnRpb25fZmFzdF9wYXRoKHN0cnVjdCByZW5kZXJf Y29tcHV0ZSAqcmVuZGVyLAotIAkJc3JjX2ltYWdlX3ZpZXcgPSBnZXRfaW1hZ2VfdmlldyhpbWFn ZSwgZGF0YS0+ZmxhZ3MsIGFycmF5X2luZGV4KTsKLSAJCXNyY19ub3JtX3JlY3QgPSB2ZHNbaV0t PnN1Yi5ub3JtX3JlY3Q7Ci0gCQl2aWV3cG9ydF9kYXRhID0gZC0+dmlld3NbaV0udGFyZ2V0LnZp ZXdwb3J0X2RhdGE7Ci0tCQlzcmNfZm92ID0gdmRzW2ldLT5mb3Y7Ci0tCQlzcmNfcG9zZSA9IHZk c1tpXS0+cG9zZTsKLS0JCXdvcmxkX3Bvc2Vfc2Nhbm91dF9iZWdpbiA9IGQtPnZpZXdzW2ldLndv cmxkX3Bvc2Vfc2Nhbm91dF9iZWdpbjsKLS0JCXdvcmxkX3Bvc2Vfc2Nhbm91dF9lbmQgPSBkLT52 aWV3c1tpXS53b3JsZF9wb3NlX3NjYW5vdXRfZW5kOwotIAotIAkJLy8gTm8gbGF5ZXIgc3F1YXNo ZXIgaGFzIGhhbmRsZWQgdGhpcyBmb3IgdXMgYWxyZWFkeQotIAkJaWYgKGRhdGEtPmZsaXBfeSkg ewotQEAgLTUwOCwzNSArNDc1LDE3IEBAIGNyY19kaXN0b3J0aW9uX2Zhc3RfcGF0aChzdHJ1Y3Qg cmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAJCXNyY19ub3JtX3JlY3RzW2ldID0gc3JjX25vcm1f cmVjdDsKLSAJCXNyY19zYW1wbGVyc1tpXSA9IGNsYW1wX3RvX2JvcmRlcl9ibGFjazsKLSAJCXRh cmdldF92aWV3cG9ydF9kYXRhc1tpXSA9IHZpZXdwb3J0X2RhdGE7Ci0tCQlzcmNfZm92c1tpXSA9 IHNyY19mb3Y7Ci0tCQlzcmNfcG9zZXNbaV0gPSBzcmNfcG9zZTsKLS0JCXdvcmxkX3Bvc2VzX3Nj YW5vdXRfYmVnaW5baV0gPSB3b3JsZF9wb3NlX3NjYW5vdXRfYmVnaW47Ci0tCQl3b3JsZF9wb3Nl c19zY2Fub3V0X2VuZFtpXSA9IHdvcmxkX3Bvc2Vfc2Nhbm91dF9lbmQ7Ci0gCX0KLSAKLS0JaWYg KCFkLT5kb190aW1ld2FycCkgewotLQkJcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbl9ub190aW1l d2FycCggLy8KLS0JCSAgICByZW5kZXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vCi0t CQkgICAgc3JjX3NhbXBsZXJzLCAgICAgICAgICAgICAgICAgICAgICAvLwotLQkJICAgIHNyY19p bWFnZV92aWV3cywgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfbm9ybV9yZWN0cywg ICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgZC0+dGFyZ2V0LmNzLmltYWdlLCAgICAgICAg ICAgICAgICAvLwotLQkJICAgIGQtPnRhcmdldC5jcy5zdG9yYWdlX3ZpZXcsICAgICAgICAgLy8K LS0JCSAgICB0YXJnZXRfdmlld3BvcnRfZGF0YXMpOyAgICAgICAgICAgIC8vCi0tCX0gZWxzZSB7 Ci0tCQlyZW5kZXJfY29tcHV0ZV9wcm9qZWN0aW9uX3RpbWV3YXJwKCAvLwotLQkJICAgIHJlbmRl ciwgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNfc2FtcGxlcnMsICAgICAg ICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX2ltYWdlX3ZpZXdzLCAgICAgICAgICAgICAgICAv LwotLQkJICAgIHNyY19ub3JtX3JlY3RzLCAgICAgICAgICAgICAgICAgLy8KLS0JCSAgICBzcmNf cG9zZXMsICAgICAgICAgICAgICAgICAgICAgIC8vCi0tCQkgICAgc3JjX2ZvdnMsICAgICAgICAg ICAgICAgICAgICAgICAvLwotLQkJICAgIHdvcmxkX3Bvc2VzX3NjYW5vdXRfYmVnaW4sICAgICAg Ly8KLS0JCSAgICB3b3JsZF9wb3Nlc19zY2Fub3V0X2VuZCwgICAgICAgIC8vCi0tCQkgICAgZC0+ dGFyZ2V0LmNzLmltYWdlLCAgICAgICAgICAgICAvLwotLQkJICAgIGQtPnRhcmdldC5jcy5zdG9y YWdlX3ZpZXcsICAgICAgLy8KLS0JCSAgICB0YXJnZXRfdmlld3BvcnRfZGF0YXMpOyAgICAgICAg IC8vCi0tCX0KLSsJcmVuZGVyX2NvbXB1dGVfcHJvamVjdGlvbiggICAgICAgICAgLy8KLSsJICAg IHJlbmRlciwgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIHNyY19zYW1wbGVycywg ICAgICAgICAgICAgICAgICAgLy8KLSsJICAgIHNyY19pbWFnZV92aWV3cywgICAgICAgICAgICAg ICAgLy8KLSsJICAgIHNyY19ub3JtX3JlY3RzLCAgICAgICAgICAgICAgICAgLy8KLSsJICAgIGQt PnRhcmdldC5jcy5pbWFnZSwgICAgICAgICAgICAgLy8KLSsJICAgIGQtPnRhcmdldC5jcy5zdG9y YWdlX3ZpZXdfeSwgICAgLy8KLSsJICAgIGQtPnRhcmdldC5jcy5zdG9yYWdlX3ZpZXdfY2Jjciwg Ly8KLSsJICAgIHRhcmdldF92aWV3cG9ydF9kYXRhcyk7ICAgICAgICAgLy8KLSB9Ci0gCi0gCi1A QCAtNTU2LDcgKzUwNSw4IEBAIGNvbXBfcmVuZGVyX2NzX2xheWVyKHN0cnVjdCByZW5kZXJfY29t cHV0ZSAqcmVuZGVyLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB4cnRfcG9z ZSAqd29ybGRfcG9zZV9zY2Fub3V0X2VuZCwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz dHJ1Y3QgeHJ0X3Bvc2UgKmV5ZV9wb3NlLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFZr SW1hZ2UgdGFyZ2V0X2ltYWdlLAotLSAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFZrSW1hZ2VW aWV3IHRhcmdldF9pbWFnZV92aWV3LAotKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFZrSW1h Z2VWaWV3IHRhcmdldF9pbWFnZV92aWV3X3ksCi0rICAgICAgICAgICAgICAgICAgICAgY29uc3Qg VmtJbWFnZVZpZXcgdGFyZ2V0X2ltYWdlX3ZpZXdfY2JjciwKLSAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBzdHJ1Y3QgcmVuZGVyX3ZpZXdwb3J0X2RhdGEgKnRhcmdldF92aWV3LAotICAgICAg ICAgICAgICAgICAgICAgIGJvb2wgZG9fdGltZXdhcnApCi0gewotQEAgLTU2NCw5ICs1MTQsOSBA QCBjb21wX3JlbmRlcl9jc19sYXllcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAJ VmtTYW1wbGVyIGNsYW1wX3RvX2JvcmRlcl9ibGFjayA9IHJlbmRlci0+ci0+c2FtcGxlcnMuY2xh bXBfdG9fYm9yZGVyX2JsYWNrOwotIAotIAkvLyBOb3QgdGhlIHRyYW5zZm9ybSBvZiB0aGUgdmll d3MsIGJ1dCB0aGUgaW52ZXJzZTogYWN0dWFsIHZpZXcgbWF0cmljZXMuCi0tCXN0cnVjdCB4cnRf bWF0cml4XzR4NCB3b3JsZF92aWV3X21hdF9zY2Fub3V0X2JlZ2luLCBleWVfdmlldzsKLSsJc3Ry dWN0IHhydF9tYXRyaXhfNHg0IHdvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4sIGV5ZV92aWV3 X21hdDsKLSAJbWF0aF9tYXRyaXhfNHg0X3ZpZXdfZnJvbV9wb3NlKHdvcmxkX3Bvc2Vfc2Nhbm91 dF9iZWdpbiwgJndvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4pOwotLQltYXRoX21hdHJpeF80 eDRfdmlld19mcm9tX3Bvc2UoZXllX3Bvc2UsICZleWVfdmlldyk7Ci0rCW1hdGhfbWF0cml4XzR4 NF92aWV3X2Zyb21fcG9zZShleWVfcG9zZSwgJmV5ZV92aWV3X21hdCk7Ci0gCi0gCXN0cnVjdCBy ZW5kZXJfYnVmZmVyICp1Ym8gPSAmcmVuZGVyLT5yLT5jb21wdXRlLmxheWVyLnVib3Nbdmlld19p bmRleF07Ci0gCXN0cnVjdCByZW5kZXJfY29tcHV0ZV9sYXllcl91Ym9fZGF0YSAqdWJvX2RhdGEg PSB1Ym8tPm1hcHBlZDsKLUBAIC02MTgsNyArNTY4LDcgQEAgY29tcF9yZW5kZXJfY3NfbGF5ZXIo c3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gCQljYXNlIFhSVF9MQVlFUl9DWUxJTkRF UjoKLSAJCQlkb19jc19jeWxpbmRlcl9sYXllciggICAgICAgICAgICAgIC8vCi0gCQkJICAgIGxh eWVyLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBsYXllcgotLQkJCSAgICAmZXllX3ZpZXcs ICAgICAgICAgICAgICAgICAgICAgLy8gZXllX3ZpZXdfbWF0Ci0rCQkJICAgICZleWVfdmlld19t YXQsICAgICAgICAgICAgICAgICAvLyBleWVfdmlld19tYXQKLSAJCQkgICAgJndvcmxkX3ZpZXdf bWF0X3NjYW5vdXRfYmVnaW4sIC8vIHdvcmxkX3ZpZXdfbWF0Ci0gCQkJICAgIHZpZXdfaW5kZXgs ICAgICAgICAgICAgICAgICAgICAvLyB2aWV3X2luZGV4Ci0gCQkJICAgIGN1cl9sYXllciwgICAg ICAgICAgICAgICAgICAgICAvLyBjdXJfbGF5ZXIKLUBAIC02MzMsNyArNTgzLDcgQEAgY29tcF9y ZW5kZXJfY3NfbGF5ZXIoc3RydWN0IHJlbmRlcl9jb21wdXRlICpyZW5kZXIsCi0gCQljYXNlIFhS VF9MQVlFUl9FUVVJUkVDVDI6Ci0gCQkJZG9fY3NfZXF1aXJlY3QyX2xheWVyKCAgICAgICAgICAg ICAvLwotIAkJCSAgICBsYXllciwgICAgICAgICAgICAgICAgICAgICAgICAgLy8gbGF5ZXIKLS0J CQkgICAgJmV5ZV92aWV3LCAgICAgICAgICAgICAgICAgICAgIC8vIGV5ZV92aWV3X21hdAotKwkJ CSAgICAmZXllX3ZpZXdfbWF0LCAgICAgICAgICAgICAgICAgLy8gZXllX3ZpZXdfbWF0Ci0gCQkJ ICAgICZ3b3JsZF92aWV3X21hdF9zY2Fub3V0X2JlZ2luLCAvLyB3b3JsZF92aWV3X21hdAotIAkJ CSAgICB2aWV3X2luZGV4LCAgICAgICAgICAgICAgICAgICAgLy8gdmlld19pbmRleAotIAkJCSAg ICBjdXJfbGF5ZXIsICAgICAgICAgICAgICAgICAgICAgLy8gY3VyX2xheWVyCi1AQCAtNjQ5LDcg KzU5OSw3IEBAIGNvbXBfcmVuZGVyX2NzX2xheWVyKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVu ZGVyLAotIAkJY2FzZSBYUlRfTEFZRVJfUFJPSkVDVElPTjogewotIAkJCWRvX2NzX3Byb2plY3Rp b25fbGF5ZXIoICAgICAgIC8vCi0gCQkJICAgIGxheWVyLCAgICAgICAgICAgICAgICAgICAgLy8g bGF5ZXIKLS0JCQkgICAgd29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luLCAvLyB3b3JsZF9wb3NlX3Nj YW5vdXRfYmVnaW4KLSsJCQkgICAgd29ybGRfcG9zZV9zY2Fub3V0X2JlZ2luLCAvLyB3b3JsZF9w b3NlCi0gCQkJICAgIHZpZXdfaW5kZXgsICAgICAgICAgICAgICAgLy8gdmlld19pbmRleAotIAkJ CSAgICBjdXJfbGF5ZXIsICAgICAgICAgICAgICAgIC8vIGN1cl9sYXllcgotIAkJCSAgICBjdXJf aW1hZ2UsICAgICAgICAgICAgICAgIC8vIGN1cl9pbWFnZQotQEAgLTY2NCw4ICs2MTQsOCBAQCBj b21wX3JlbmRlcl9jc19sYXllcihzdHJ1Y3QgcmVuZGVyX2NvbXB1dGUgKnJlbmRlciwKLSAJCWNh c2UgWFJUX0xBWUVSX1FVQUQ6IHsKLSAJCQlkb19jc19xdWFkX2xheWVyKCAgICAgICAgICAgICAg ICAgIC8vCi0gCQkJICAgIGxheWVyLCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBsYXllcgot LQkJCSAgICAmZXllX3ZpZXcsICAgICAgICAgICAgICAgICAgICAgLy8gZXllX3ZpZXdfbWF0Ci0t CQkJICAgICZ3b3JsZF92aWV3X21hdF9zY2Fub3V0X2JlZ2luLCAvLyB3b3JsZF92aWV3X21hdF9z Y2Fub3V0X2JlZ2luCi0rCQkJICAgICZleWVfdmlld19tYXQsICAgICAgICAgICAgICAgICAvLyBl eWVfdmlld19tYXQKLSsJCQkgICAgJndvcmxkX3ZpZXdfbWF0X3NjYW5vdXRfYmVnaW4sIC8vIHdv cmxkX3ZpZXdfbWF0Ci0gCQkJICAgIHZpZXdfaW5kZXgsICAgICAgICAgICAgICAgICAgICAvLyB2 aWV3X2luZGV4Ci0gCQkJICAgIGN1cl9sYXllciwgICAgICAgICAgICAgICAgICAgICAvLyBjdXJf bGF5ZXIKLSAJCQkgICAgY3VyX2ltYWdlLCAgICAgICAgICAgICAgICAgICAgIC8vIGN1cl9pbWFn ZQotQEAgLTcxNiw3ICs2NjYsOCBAQCBjb21wX3JlbmRlcl9jc19sYXllcihzdHJ1Y3QgcmVuZGVy X2NvbXB1dGUgKnJlbmRlciwKLSAJICAgIHNyY19zYW1wbGVycywgICAgICAvLwotIAkgICAgc3Jj X2ltYWdlX3ZpZXdzLCAgIC8vCi0gCSAgICBjdXJfaW1hZ2UsICAgICAgICAgLy8KLS0JICAgIHRh cmdldF9pbWFnZV92aWV3LCAvLwotKwkgICAgdGFyZ2V0X2ltYWdlX3ZpZXdfeSwgLy8KLSsJICAg IHRhcmdldF9pbWFnZV92aWV3X2NiY3IsIC8vCi0gCSAgICB0YXJnZXRfdmlldywgICAgICAgLy8K LSAJICAgIGRvX3RpbWV3YXJwKTsgICAgICAvLwotIH0KLUBAIC03NTMsNiArNzA0LDcgQEAgY29t cF9yZW5kZXJfY3NfbGF5ZXJzKHN0cnVjdCByZW5kZXJfY29tcHV0ZSAqcmVuZGVyLAotIAkJICAg ICZ2aWV3LT5leWVfcG9zZSwgICAgICAgICAgICAgICAgIC8vCi0gCQkgICAgdmlldy0+c3F1YXNo LmltYWdlLCAgICAgICAgICAgICAgLy8KLSAJCSAgICB2aWV3LT5zcXVhc2guY3Muc3RvcmFnZV92 aWV3LCAgICAvLwotKwkJICAgIHZpZXctPnNxdWFzaC5jcy5zdG9yYWdlX3ZpZXcsICAgIC8vCi0g CQkgICAgJnZpZXctPnNxdWFzaC52aWV3cG9ydF9kYXRhLCAgICAgLy8KLSAJCSAgICBkLT5kb190 aW1ld2FycCk7ICAgICAgICAgICAgICAgICAvLwotIAl9Ci0tLSAKLTIuNTMuMAotCgpkaWZmIC0t Z2l0IGEvMDAwNS1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFzaC1vbi12aXZlLXBybzItV2lWUm4u cGF0Y2ggYi8wMDA1LWQtc3RlYW12cl9saC1wcmV2ZW50LWNyYXNoLW9uLXZpdmUtcHJvMi1XaVZS bi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42OThjMGFkCi0tLSAv ZGV2L251bGwKKysrIGIvMDAwNS1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFzaC1vbi12aXZlLXBy bzItV2lWUm4ucGF0Y2gKQEAgLTAsMCArMSwyNSBAQAorRnJvbSA3MjMwNzQ2NTcxZDEyNTZkMzI1 NTdmZDk5NTI4YWM5MGExZDc1OTU3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogbm8g bmFtZSA8Z2l0LWFtQGludmFsaWQ+CitEYXRlOiBTdW4sIDI4IFNlcCAyMDI1IDExOjMzOjEwICsw MjAwCitTdWJqZWN0OiBbUEFUQ0ggNS84XSBkL3N0ZWFtdnJfbGg6IHByZXZlbnQgY3Jhc2ggb24g dml2ZSBwcm8yL1dpVlJuCisKKy0tLQorIHNyYy94cnQvZHJpdmVycy9zdGVhbXZyX2xoL3N0ZWFt dnJfbGguY3BwIHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQorCitkaWZmIC0tZ2l0IGEvc3JjL3hydC9kcml2ZXJzL3N0ZWFtdnJfbGgvc3RlYW12 cl9saC5jcHAgYi9zcmMveHJ0L2RyaXZlcnMvc3RlYW12cl9saC9zdGVhbXZyX2xoLmNwcAoraW5k ZXggMzQ3ZDIyMDY4Li5kMzRkMzMzMWUgMTAwNjQ0CistLS0gYS9zcmMveHJ0L2RyaXZlcnMvc3Rl YW12cl9saC9zdGVhbXZyX2xoLmNwcAorKysrIGIvc3JjL3hydC9kcml2ZXJzL3N0ZWFtdnJfbGgv c3RlYW12cl9saC5jcHAKK0BAIC05ODUsNyArOTg1LDcgQEAgc3RlYW12cl9saF9jcmVhdGVfZGV2 aWNlcyhzdHJ1Y3QgeHJ0X3Byb2JlciAqeHAsIHN0cnVjdCB4cnRfc3lzdGVtX2RldmljZXMgKipv dXQKKyAKKyAJLy8gSW5jbHVkZSB0aGUgSE1ECisgCWlmIChzdnJzLT5jdHgtPmhtZCkgeworLQkJ aWYgKHN2cnMtPmN0eC0+aG1kLT52YXJpYW50ID09IFZJVkVfVkFSSUFOVF9QUk8yICYmICFzdnJz LT5jdHgtPmhtZC0+aW5pdF92aXZlX3Byb18yKHhwKSkgeworKwkJaWYgKHhwICYmIHN2cnMtPmN0 eC0+aG1kLT52YXJpYW50ID09IFZJVkVfVkFSSUFOVF9QUk8yICYmICFzdnJzLT5jdHgtPmhtZC0+ aW5pdF92aXZlX3Byb18yKHhwKSkgeworIAkJCVVfTE9HX0lGTF9XKGxldmVsLCAiRm91bmQgVml2 ZSBQcm8gMiwgYnV0IGZhaWxlZCB0byBpbml0aWFsaXplLiIpOworIAkJfQorIAorLS0gCisyLjU0 LjAKKwoKZGlmZiAtLWdpdCBhLzAwMDYtZC1zdGVhbXZyX2xoLXByZXZlbnQtY3Jhc2gtb24tdml2 ZS1wcm8yLVdpVlJuLnBhdGNoIGIvMDAwNi1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFzaC1vbi12 aXZlLXBybzItV2lWUm4ucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYwNmMx ZTkuLjAwMDAwMDAKLS0tIGEvMDAwNi1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFzaC1vbi12aXZl LXBybzItV2lWUm4ucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi1Gcm9tIDlk MTI5NDgzNGY0OWZjOTBlYTIyZjVkODQxZDdjMGU1YzBjMTA0NWQgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCi1Gcm9tOiBubyBuYW1lIDxnaXQtYW1AaW52YWxpZD4KLURhdGU6IFN1biwgMjggU2Vw IDIwMjUgMTE6MzM6MTAgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSCA2LzhdIGQvc3RlYW12cl9saDog cHJldmVudCBjcmFzaCBvbiB2aXZlIHBybzIvV2lWUm4KLQotLS0tCi0gc3JjL3hydC9kcml2ZXJz L3N0ZWFtdnJfbGgvc3RlYW12cl9saC5jcHAgfCAyICstCi0gMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMveHJ0L2RyaXZlcnMv c3RlYW12cl9saC9zdGVhbXZyX2xoLmNwcCBiL3NyYy94cnQvZHJpdmVycy9zdGVhbXZyX2xoL3N0 ZWFtdnJfbGguY3BwCi1pbmRleCAyNWM2OGEwZWEuLjg2YmFhOWZkNCAxMDA2NDQKLS0tLSBhL3Ny Yy94cnQvZHJpdmVycy9zdGVhbXZyX2xoL3N0ZWFtdnJfbGguY3BwCi0rKysgYi9zcmMveHJ0L2Ry aXZlcnMvc3RlYW12cl9saC9zdGVhbXZyX2xoLmNwcAotQEAgLTkxMyw3ICs5MTMsNyBAQCBzdGVh bXZyX2xoX2NyZWF0ZV9kZXZpY2VzKHN0cnVjdCB4cnRfcHJvYmVyICp4cCwgc3RydWN0IHhydF9z eXN0ZW1fZGV2aWNlcyAqKm91dAotIAotIAkvLyBJbmNsdWRlIHRoZSBITUQKLSAJaWYgKHN2cnMt PmN0eC0+aG1kKSB7Ci0tCQlpZiAoc3Zycy0+Y3R4LT5obWQtPnZhcmlhbnQgPT0gVklWRV9WQVJJ QU5UX1BSTzIgJiYgIXN2cnMtPmN0eC0+aG1kLT5pbml0X3ZpdmVfcHJvXzIoeHApKSB7Ci0rCQlp ZiAoeHAgJiYgc3Zycy0+Y3R4LT5obWQtPnZhcmlhbnQgPT0gVklWRV9WQVJJQU5UX1BSTzIgJiYg IXN2cnMtPmN0eC0+aG1kLT5pbml0X3ZpdmVfcHJvXzIoeHApKSB7Ci0gCQkJVV9MT0dfSUZMX1co bGV2ZWwsICJGb3VuZCBWaXZlIFBybyAyLCBidXQgZmFpbGVkIHRvIGluaXRpYWxpemUuIik7Ci0g CQl9Ci0gCi0tLSAKLTIuNTMuMAotCgpkaWZmIC0tZ2l0IGEvMDAwNi1zdC1veHItcHVzaC1YckV2 ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5nZWQtd2hlLnBhdGNoIGIvMDAwNi1zdC1veHIt cHVzaC1YckV2ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5nZWQtd2hlLnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ0ZjAzMjIKLS0tIC9kZXYvbnVsbAorKysg Yi8wMDA2LXN0LW94ci1wdXNoLVhyRXZlbnREYXRhSW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZC13 aGUucGF0Y2gKQEAgLTAsMCArMSwyNyBAQAorRnJvbSBmNDAwZjBlNjMyNTliY2FkZDlhNzk1NWFl MDI3NWNhYTVhZWEzZGVkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogU2FwcGhpcmUg PGltc2FwcGhpcmUwQGdtYWlsLmNvbT4KK0RhdGU6IEZyaSwgNyBOb3YgMjAyNSAyMDo0MToxNiAt MDYwMAorU3ViamVjdDogW1BBVENIIDYvOF0gc3Qvb3hyOiBwdXNoIFhyRXZlbnREYXRhSW50ZXJh Y3Rpb25Qcm9maWxlQ2hhbmdlZCB3aGVuCisgcHJvZmlsZSBjaGFuZ2VzIHRvIE5VTEwKKworLS0t Cisgc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvYWN0aW9ucy9veHJfaW5wdXQuYyB8IDMgLS0t CisgMSBmaWxlIGNoYW5nZWQsIDMgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9zcmMveHJ0 L3N0YXRlX3RyYWNrZXJzL294ci9hY3Rpb25zL294cl9pbnB1dC5jIGIvc3JjL3hydC9zdGF0ZV90 cmFja2Vycy9veHIvYWN0aW9ucy9veHJfaW5wdXQuYworaW5kZXggMmJkM2VhMDA5Li45MzY1OWJh MzUgMTAwNjQ0CistLS0gYS9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9hY3Rpb25zL294cl9p bnB1dC5jCisrKysgYi9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9hY3Rpb25zL294cl9pbnB1 dC5jCitAQCAtMTkzMiw5ICsxOTMyLDYgQEAgc2Vzc2lvbl91cGRhdGVfYWN0aW9uX2JpbmRpbmdz KHN0cnVjdCBveHJfbG9nZ2VyICpsb2csCisgI2RlZmluZSBQT1BVTEFURV9QUk9GSUxFKFgpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgCWRvIHsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAJCVhyUGF0aCBwYXRoID0gcHJv ZmlsZXMuWCAhPSBOVUxMID8gcHJvZmlsZXMuWC0+cGF0aCA6IFhSX05VTExfUEFUSDsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCistCQlpZiAocGF0aCA9PSBYUl9OVUxMX1BB VEgpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAorLQkJCWJyZWFrOyAvKiBPbmx5IHVwZGF0ZSBvbiAi YWN0aXZlIiBpbnRlcmFjdGlvbiBwcm9maWxlcyBwZXIgc3ViLWFjdGlvbiBwYXRoLiAqLyAgICAg ICAgICAgICAgICAgXAorLQkJfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKKyAJCWlmIChhY3Rpb25fY29udGV4dC0+WCAhPSBwYXRoKSB7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCisgCQkJYWN0aW9uX2NvbnRleHQtPlggPSBwYXRoOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgCQkJaW50 ZXJhY3Rpb25fcHJvZmlsZV9jaGFuZ2VkID0gdHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCistLSAKKzIuNTQuMAorCgpkaWZm IC0tZ2l0IGEvMDAwNy1kb24tdC12ZXJpZnktR0wtc3R1ZmYucGF0Y2ggYi8wMDA3LWRvbi10LXZl cmlmeS1HTC1zdHVmZi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5k M2IyOGM0Ci0tLSAvZGV2L251bGwKKysrIGIvMDAwNy1kb24tdC12ZXJpZnktR0wtc3R1ZmYucGF0 Y2gKQEAgLTAsMCArMSwzMyBAQAorRnJvbSAwODMyY2M5YTJjY2QwZjY3YjNiZDNhMTFlYzFiMWQx Mzk4ZGZlYmRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogbm8gbmFtZSA8Z2l0LWFt QGludmFsaWQ+CitEYXRlOiBTdW4sIDI1IEphbiAyMDI2IDEwOjA5OjEwICswMTAwCitTdWJqZWN0 OiBbUEFUQ0ggNy84XSBkb24ndCB2ZXJpZnkgR0wgc3R1ZmYKKworLS0tCisgc3JjL3hydC9zdGF0 ZV90cmFja2Vycy9veHIvb3hyX3ZlcmlmeS5jIHwgMTAgLS0tLS0tLS0tLQorIDEgZmlsZSBjaGFu Z2VkLCAxMCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy94cnQvc3RhdGVfdHJhY2tl cnMvb3hyL294cl92ZXJpZnkuYyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl92ZXJp ZnkuYworaW5kZXggOGYzNTIyMmNmLi4xNDE4YTgyMzEgMTAwNjQ0CistLS0gYS9zcmMveHJ0L3N0 YXRlX3RyYWNrZXJzL294ci9veHJfdmVyaWZ5LmMKKysrKyBiL3NyYy94cnQvc3RhdGVfdHJhY2tl cnMvb3hyL294cl92ZXJpZnkuYworQEAgLTYxMCwxNiArNjEwLDYgQEAgb3hyX3ZlcmlmeV9Yckdy YXBoaWNzQmluZGluZ09wZW5HTFhsaWJLSFIoc3RydWN0IG94cl9sb2dnZXIgKmxvZywgY29uc3Qg WHJHcmFwaGkKKyAJCSAgICAgICAgICAgICAgICAgIlhyR3JhcGhpY3NCaW5kaW5nT3BlbkdMWGxp YktIUjo6Z2x4RHJhd2FibGUgaXMgTlVMTCIpOworIAl9CisgCistCWlmIChuZXh0LT5nbHhGQkNv bmZpZyA9PSBOVUxMKSB7CistCQlyZXR1cm4gb3hyX2Vycm9yKGxvZywgWFJfRVJST1JfR1JBUEhJ Q1NfREVWSUNFX0lOVkFMSUQsCistCQkgICAgICAgICAgICAgICAgICJYckdyYXBoaWNzQmluZGlu Z09wZW5HTFhsaWJLSFI6OmdseEZCQ29uZmlnIGlzIE5VTEwiKTsKKy0JfQorLQorLQlpZiAobmV4 dC0+dmlzdWFsaWQgPT0gMCkgeworLQkJcmV0dXJuIG94cl9lcnJvcihsb2csIFhSX0VSUk9SX0dS QVBISUNTX0RFVklDRV9JTlZBTElELAorLQkJICAgICAgICAgICAgICAgICAiWHJHcmFwaGljc0Jp bmRpbmdPcGVuR0xYbGliS0hSOjp2aXN1YWxpZCBpcyAwIik7CistCX0KKy0KKyAJcmV0dXJuIFhS X1NVQ0NFU1M7CisgfQorIAorLS0gCisyLjU0LjAKKwoKZGlmZiAtLWdpdCBhLzAwMDctc3Qtb3hy LXB1c2gtWHJFdmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2VkLXdoZS5wYXRjaCBiLzAw MDctc3Qtb3hyLXB1c2gtWHJFdmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2VkLXdoZS5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmRkZjlkYy4uMDAwMDAwMAotLS0g YS8wMDA3LXN0LW94ci1wdXNoLVhyRXZlbnREYXRhSW50ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZC13 aGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0OSArMCwwIEBACi1Gcm9tIGI5YWY1MzVjZjIy OWFjZGJmN2YxYjUzNGU5ODA0YzFiNGUzZmEzZTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1G cm9tOiBTYXBwaGlyZSA8aW1zYXBwaGlyZTBAZ21haWwuY29tPgotRGF0ZTogRnJpLCA3IE5vdiAy MDI1IDIwOjQxOjE2IC0wNjAwCi1TdWJqZWN0OiBbUEFUQ0ggNy84XSBzdC9veHI6IHB1c2ggWHJF dmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2VkIHdoZW4KLSBwcm9maWxlIGNoYW5nZXMg dG8gTlVMTAotCi0tLS0KLSBzcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfaW5wdXQuYyB8 IDE1ICsrKysrLS0tLS0tLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEw IGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIv b3hyX2lucHV0LmMgYi9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfaW5wdXQuYwotaW5k ZXggZGYyYjQ3OWViLi5jNGIzNmJhODEgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L3N0YXRlX3RyYWNr ZXJzL294ci9veHJfaW5wdXQuYwotKysrIGIvc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hy X2lucHV0LmMKLUBAIC0xODgxLDI2ICsxODgxLDIxIEBAIG94cl9zZXNzaW9uX3VwZGF0ZV9hY3Rp b25fYmluZGluZ3Moc3RydWN0IG94cl9sb2dnZXIgKmxvZywgc3RydWN0IG94cl9zZXNzaW9uICpz Ci0gCQl9Ci0gCX0KLSAKLS0JLyoKLS0JICogVGhpcyBjb2RlIHdpbGwgb25seSBzZW5kIGV2ZW50 cyAoYW5kIHVwZGF0ZSB0aGUgYmluZGluZ3MpIGlmIHRoZXJlCi0tCSAqIGlzIGEgcHJvZmlsZSBt YXBwZWQgdG8gdGhlIHN1YmFjdGlvbiBwYXRoLiBNZWFuaW5nIGl0IHdvbid0IHVwZGF0ZQotLQkg KiB0aGUgY2FjaGUgb3IgZ2VuZXJhdGUgZXZlbnRzIHdoZW4gYSBjb250cm9sbGVyIGdvZXMgYXdh eSwgYmFzaWNhbGx5Ci0tCSAqIGxhdGNoaW5nIHRoZSBpbnRlcmFjdGlvbiBwcm9maWxlIHRvIHRo ZSBsYXN0IGFjdGl2ZSBkZXZpY2UuCi0tCSAqLwotKwlib29sIGFueV9wcm9maWxlX2NoYW5nZWQg PSBmYWxzZTsKLSAjZGVmaW5lIFBPUFVMQVRFX1BST0ZJTEUoWCkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLSAJZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAotIAkJWHJQYXRoIHBhdGggPSBwcm9maWxlcy5YICE9IE5VTEwg PyBwcm9maWxlcy5YLT5wYXRoIDogWFJfTlVMTF9QQVRIOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKLS0JCWlmIChwYXRoID09IFhSX05VTExfUEFUSCkgeyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCi0tCQkJYnJlYWs7IC8qIE9ubHkgdXBkYXRlIG9uICJhY3RpdmUiIGludGVyYWN0 aW9uIHByb2ZpbGVzIHBlciBzdWItYWN0aW9uIHBhdGguICovICAgICAgICAgICAgICAgICBcCi0t CQl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotIAkJaWYg KHNlc3MtPlggIT0gcGF0aCkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAJCQlzZXNzLT5Y ID0gcGF0aDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0JCQlveHJfZXZlbnRfcHVzaF9YckV2 ZW50RGF0YUludGVyYWN0aW9uUHJvZmlsZUNoYW5nZWQobG9nLCBzZXNzKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKLSsJCQlhbnlfcHJvZmlsZV9jaGFuZ2VkID0gdHJ1ZTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKLSAJCX0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCi0gCX0gd2hpbGUgKGZhbHNlKTsKLSAJT1hSX0ZPUl9FQUNIX1ZBTElEX1NVQkFDVElPTl9Q QVRIKFBPUFVMQVRFX1BST0ZJTEUpCi0gI3VuZGVmIFBPUFVMQVRFX1BST0ZJTEUKLSAKLSsJaWYg KGFueV9wcm9maWxlX2NoYW5nZWQpIHsKLSsJCW94cl9ldmVudF9wdXNoX1hyRXZlbnREYXRhSW50 ZXJhY3Rpb25Qcm9maWxlQ2hhbmdlZChsb2csIHNlc3MpOwotKwl9Ci0gCXJldHVybiBveHJfc2Vz c2lvbl9zdWNjZXNzX3Jlc3VsdChzZXNzKTsKLSB9Ci0gCi0tLSAKLTIuNTMuMAotCgpkaWZmIC0t Z2l0IGEvMDAwOC1Eb24tdC1nZXQtcG9zZS1kYXRhLWZvci1mYXN0LXBhdGgucGF0Y2ggYi8wMDA4 LURvbi10LWdldC1wb3NlLWRhdGEtZm9yLWZhc3QtcGF0aC5wYXRjaApkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggZmViYWIzYi4uMDAwMDAwMAotLS0gYS8wMDA4LURvbi10LWdldC1wb3Nl LWRhdGEtZm9yLWZhc3QtcGF0aC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQwICswLDAgQEAK LUZyb20gMDIyMDZlZGUzYWFlODMyYmU1MDI0MjYzYTgwNWNhZmVlMjI2NDA4MCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKLUZyb206IG5vIG5hbWUgPGdpdC1hbUBpbnZhbGlkPgotRGF0ZTogVGh1 LCAxNSBKYW4gMjAyNiAxMjoxMzowNiArMDEwMAotU3ViamVjdDogW1BBVENIIDgvOF0gRG9uJ3Qg Z2V0IHBvc2UgZGF0YSBmb3IgZmFzdCBwYXRoCi0KLS0tLQotIHNyYy94cnQvY29tcG9zaXRvci9t YWluL2NvbXBfcmVuZGVyZXIuYyB8IDE3ICsrKysrKysrKy0tLS0tLS0tCi0gMSBmaWxlIGNoYW5n ZWQsIDkgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy94 cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYyBiL3NyYy94cnQvY29tcG9zaXRvci9t YWluL2NvbXBfcmVuZGVyZXIuYwotaW5kZXggZmY5NzI4YTU5Li4wOGNkZWY1NDAgMTAwNjQ0Ci0t LS0gYS9zcmMveHJ0L2NvbXBvc2l0b3IvbWFpbi9jb21wX3JlbmRlcmVyLmMKLSsrKyBiL3NyYy94 cnQvY29tcG9zaXRvci9tYWluL2NvbXBfcmVuZGVyZXIuYwotQEAgLTk3MiwxNCArOTcyLDE1IEBA IGRpc3BhdGNoX2NvbXB1dGUoc3RydWN0IGNvbXBfcmVuZGVyZXIgKnIsCi0gCXN0cnVjdCB4cnRf cG9zZSB3b3JsZF9wb3Nlc19zY2Fub3V0X2JlZ2luW1hSVF9NQVhfVklFV1NdOwotIAlzdHJ1Y3Qg eHJ0X3Bvc2Ugd29ybGRfcG9zZXNfc2Nhbm91dF9lbmRbWFJUX01BWF9WSUVXU107Ci0gCXN0cnVj dCB4cnRfcG9zZSBleWVfcG9zZXNbWFJUX01BWF9WSUVXU107Ci0tCWNhbGNfcG9zZV9kYXRhKCAg ICAgICAgICAgICAgICAvLwotLQkgICAgciwgICAgICAgICAgICAgICAgICAgICAgICAgLy8KLS0J ICAgIGZvdl9zb3VyY2UsICAgICAgICAgICAgICAgIC8vCi0tCSAgICBmb3ZzLCAgICAgICAgICAg ICAgICAgICAgICAvLwotLQkgICAgd29ybGRfcG9zZXNfc2Nhbm91dF9iZWdpbiwgLy8KLS0JICAg IHdvcmxkX3Bvc2VzX3NjYW5vdXRfZW5kLCAgIC8vCi0tCSAgICBleWVfcG9zZXMsICAgICAgICAg ICAgICAgICAvLwotLQkgICAgcmVuZGVyLT5yLT52aWV3X2NvdW50KTsgICAgLy8KLSsJaWYgKCFj LT5iYXNlLmZyYW1lX3BhcmFtcy5vbmVfcHJvamVjdGlvbl9sYXllcl9mYXN0X3BhdGgpCi0rCQlj YWxjX3Bvc2VfZGF0YSggICAgICAgICAgICAgICAgLy8KLSsJCSAgICByLCAgICAgICAgICAgICAg ICAgICAgICAgICAvLwotKwkJICAgIGZvdl9zb3VyY2UsICAgICAgICAgICAgICAgIC8vCi0rCQkg ICAgZm92cywgICAgICAgICAgICAgICAgICAgICAgLy8KLSsJCSAgICB3b3JsZF9wb3Nlc19zY2Fu b3V0X2JlZ2luLCAvLwotKwkJICAgIHdvcmxkX3Bvc2VzX3NjYW5vdXRfZW5kLCAgIC8vCi0rCQkg ICAgZXllX3Bvc2VzLCAgICAgICAgICAgICAgICAgLy8KLSsJCSAgICByZW5kZXItPnItPnZpZXdf Y291bnQpOyAgICAvLwotIAotIAkvLyBUYXJnZXQgVnVsa2FuIHJlc291cmNlcy4uCi0gCVZrSW1h Z2UgdGFyZ2V0X2ltYWdlID0gci0+Yy0+dGFyZ2V0LT5pbWFnZXNbci0+YWNxdWlyZWRfYnVmZmVy XS5oYW5kbGU7Ci0tLSAKLTIuNTMuMAotCgpkaWZmIC0tZ2l0IGEvMDAwOC1jb25maWd1cmUtdV9n aXRfdGFnLWluLVdpVlJuLnBhdGNoIGIvMDAwOC1jb25maWd1cmUtdV9naXRfdGFnLWluLVdpVlJu LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJiYTVmNTgKLS0tIC9k ZXYvbnVsbAorKysgYi8wMDA4LWNvbmZpZ3VyZS11X2dpdF90YWctaW4tV2lWUm4ucGF0Y2gKQEAg LTAsMCArMSwzNyBAQAorRnJvbSBkNzlkZTVkODJkZWY5NjQxNDg0YjhkODgyMTJkM2MyZTk3ZTM4 NzM0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogbm8gbmFtZSA8Z2l0LWFtQGludmFs aWQ+CitEYXRlOiBGcmksIDIwIE1hciAyMDI2IDE2OjUxOjE4ICswMTAwCitTdWJqZWN0OiBbUEFU Q0ggOC84XSBjb25maWd1cmUgdV9naXRfdGFnIGluIFdpVlJuCisKKy0tLQorIHNyYy94cnQvYXV4 aWxpYXJ5L3V0aWwvQ01ha2VMaXN0cy50eHQgfCA3ICstLS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDYgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9zcmMveHJ0L2F1 eGlsaWFyeS91dGlsL0NNYWtlTGlzdHMudHh0IGIvc3JjL3hydC9hdXhpbGlhcnkvdXRpbC9DTWFr ZUxpc3RzLnR4dAoraW5kZXggNzk2NDZiMTgxLi4yMWFkY2Q0NDYgMTAwNjQ0CistLS0gYS9zcmMv eHJ0L2F1eGlsaWFyeS91dGlsL0NNYWtlTGlzdHMudHh0CisrKysgYi9zcmMveHJ0L2F1eGlsaWFy eS91dGlsL0NNYWtlTGlzdHMudHh0CitAQCAtMTAsMTEgKzEwLDYgQEAKKyAjIGJ5IGFwcGxpY2F0 aW9ucyBsaWtlIHRoZSBPcGVuWFIgcnVudGltZSBsaWJyYXJ5LgorICMKKyAKKy1jb25maWd1cmVf ZmlsZSgKKy0JIiR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS91X2dpdF90YWcuYy5pbiIgIiR7 Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElSfS91X2dpdF90YWcuYyIKKy0JQE9OTFkKKy0JKQorLQor IGFkZF9saWJyYXJ5KAorIAlhdXhfdXRpbCBTVEFUSUMKKyAJdV9hdXRvZXhwZ2Fpbi5jCitAQCAt MTIwLDcgKzExNSw3IEBAIGFkZF9saWJyYXJ5KAorIAl1X3dvcmtlci5jcHAKKyAJdV93b3JrZXIu aAorIAl1X3dvcmtlci5ocHAKKy0JIiR7Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElSfS91X2dpdF90 YWcuYyIKKysJIiR7VV9HSVRfVEFHX0NQUH0iCisgCSkKKyB0YXJnZXRfbGlua19saWJyYXJpZXMo CisgCWF1eF91dGlsCistLSAKKzIuNTQuMAorCgpkaWZmIC0tZ2l0IGEvMDAwOS1kb24tdC12ZXJp ZnktR0wtc3R1ZmYucGF0Y2ggYi8wMDA5LWRvbi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTIwYzU0My4uMDAwMDAwMAotLS0gYS8wMDA5LWRv bi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAK LUZyb20gNmYxN2VlNmM5MmI2MmEyNDE4MTY0ZjYyNzc3NWYyNjdlYjZkMTlmYyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKLUZyb206IG5vIG5hbWUgPGdpdC1hbUBpbnZhbGlkPgotRGF0ZTogU3Vu LCAyNSBKYW4gMjAyNiAxMDowOToxMCArMDEwMAotU3ViamVjdDogW1BBVENIXSBkb24ndCB2ZXJp ZnkgR0wgc3R1ZmYKLQotLS0tCi0gc3JjL3hydC9zdGF0ZV90cmFja2Vycy9veHIvb3hyX3Zlcmlm eS5jIHwgMTAgLS0tLS0tLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCAxMCBkZWxldGlvbnMoLSkKLQot ZGlmZiAtLWdpdCBhL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl92ZXJpZnkuYyBiL3Ny Yy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl92ZXJpZnkuYwotaW5kZXggZTkxOTdkNTAxLi43 MWY4MWM5NTQgMTAwNjQ0Ci0tLS0gYS9zcmMveHJ0L3N0YXRlX3RyYWNrZXJzL294ci9veHJfdmVy aWZ5LmMKLSsrKyBiL3NyYy94cnQvc3RhdGVfdHJhY2tlcnMvb3hyL294cl92ZXJpZnkuYwotQEAg LTYwOCwxNiArNjA4LDYgQEAgb3hyX3ZlcmlmeV9YckdyYXBoaWNzQmluZGluZ09wZW5HTFhsaWJL SFIoc3RydWN0IG94cl9sb2dnZXIgKmxvZywgY29uc3QgWHJHcmFwaGkKLSAJCSAgICAgICAgICAg ICAgICAgIlhyR3JhcGhpY3NCaW5kaW5nT3BlbkdMWGxpYktIUjo6Z2x4RHJhd2FibGUgaXMgTlVM TCIpOwotIAl9Ci0gCi0tCWlmIChuZXh0LT5nbHhGQkNvbmZpZyA9PSBOVUxMKSB7Ci0tCQlyZXR1 cm4gb3hyX2Vycm9yKGxvZywgWFJfRVJST1JfR1JBUEhJQ1NfREVWSUNFX0lOVkFMSUQsCi0tCQkg ICAgICAgICAgICAgICAgICJYckdyYXBoaWNzQmluZGluZ09wZW5HTFhsaWJLSFI6OmdseEZCQ29u ZmlnIGlzIE5VTEwiKTsKLS0JfQotLQotLQlpZiAobmV4dC0+dmlzdWFsaWQgPT0gMCkgewotLQkJ cmV0dXJuIG94cl9lcnJvcihsb2csIFhSX0VSUk9SX0dSQVBISUNTX0RFVklDRV9JTlZBTElELAot LQkJICAgICAgICAgICAgICAgICAiWHJHcmFwaGljc0JpbmRpbmdPcGVuR0xYbGliS0hSOjp2aXN1 YWxpZCBpcyAwIik7Ci0tCX0KLS0KLSAJcmV0dXJuIFhSX1NVQ0NFU1M7Ci0gfQotIAotLS0gCi0y LjUyLjAKLQoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IGU1NzI0YjkuLmMw Yjc2OWIgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSwyICsxLDIgQEAK LVNIQTUxMiAoV2lWUm4tdjI2LjIuMy50YXIuZ3opID0gOTVmMTVjYzgyN2Y4NmU5OGYwMWZlMjc5 MWU4YWNjMWE2NDE4NTM3NjVjZTM1NWNhOGYxMjRiMzM2NGViNjAwYWE4MzlkOGQ3ZTU0NDQ3YWY5 YmJiNDJjZWY0MGY4M2M2NDI2YzkzMGYwMTlhZTFiOGRiNDE2ZDFiZTg5ZGNkNGYKLVNIQTUxMiAo bW9uYWRvLXNyYy03MjM2NTJiNTQ1YTc5NjA5ZjlmMDRjYjg5ZmNiZjgwN2Q5ZDY0NTFhLnRhci5i ejIpID0gMzc3NzBlOGJiZGU0OGU3MDEzNjUxNDg4MDRjYWM1MjYwNzY1ZDUwZjM3NmUwYTBhMjgz YjdiMzQyNzlmYWYxYTk4ODlkMWNlZDg0Mzk5OWUwMGIyZmY2NzM0NDUyODk2YTJhN2Q1YzA2MTk0 NjQ1MGM3ZDg5YTgzZWNlZDg3NjUKK1NIQTUxMiAoV2lWUm4tdjI2LjYudGFyLmd6KSA9IGRkM2M5 NDgzNDg5ODFhZDRjZjYyYjE2YTUyYjk1MGUzYzllODgyN2RjOGM4M2M3MzNhZjIzZTljYzM1ZjUx NDM0ZDZlOWY3OThkZGEzMjNhZGMyOWRjM2IxZTE2N2M1YzI5ZjM5MGZlYzI0NjkxODNlNDVjMDk2 ZWEzNThlODRjCitTSEE1MTIgKG1vbmFkby1zcmMtMWI1MjZiYjNhMGZmMzI2ZWNkMDVhZjRjMmM1 NDE0MDdmNTNjNmQ0Yi50YXIuYnoyKSA9IDY2MmJmOTBkNWEzOGUwNWM1OTA5ZWQ4ZDFhNWMwOTk5 NzlhZTQ5ZWM2ZjdhNzE1NTJhOWQwYzYyNWRkZGEyOWY2YjYzMWUwZmVjYThhMDFhNmJiNmVlZmNk NmFhY2ZiYzgxMjA3ZjI4NTI0NjYxNjVjNTYxOTczZGYxY2RkZjk3CgpkaWZmIC0tZ2l0IGEvd2l2 cm4uc3BlYyBiL3dpdnJuLnNwZWMKaW5kZXggMWQ3MGNjNi4uZDhlYzdiYiAxMDA2NDQKLS0tIGEv d2l2cm4uc3BlYworKysgYi93aXZybi5zcGVjCkBAIC03LDEzICs3LDEzIEBACiAjIFdpVlJuIGlz IGJhc2VkIG9uIE1vbmFkbywgd2UgbmVlZCB0aGUgZnVsbCBzb3VyY2UKICMgTW9uYWRvIGJhc2Ug c291cmNlIChmaW5kIGluIG1vbmFkby1yZXYgZmlsZSkKICVnbG9iYWwgZm9yZ2V1cmwxICAgICAg aHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL21vbmFkby9tb25hZG8KLSVnbG9iYWwgY29t bWl0MSAgICAgICAgNzIzNjUyYjU0NWE3OTYwOWY5ZjA0Y2I4OWZjYmY4MDdkOWQ2NDUxYQorJWds b2JhbCBjb21taXQxICAgICAgICAxYjUyNmJiM2EwZmYzMjZlY2QwNWFmNGMyYzU0MTQwN2Y1M2M2 ZDRiCiAlZ2xvYmFsIG1vbmFkb192ZXJzaW9uIDI1LjEuMAogCiAlZm9yZ2VtZXRhCiAKIE5hbWU6 ICAgICAgICAgICB3aXZybgotVmVyc2lvbjogICAgICAgIDI2LjIuMworVmVyc2lvbjogICAgICAg IDI2LjYKIFJlbGVhc2U6ICAgICAgICAlYXV0b3JlbGVhc2UKIFN1bW1hcnk6ICAgICAgICBBbiBP cGVuWFIgc3RyZWFtaW5nIGFwcGxpY2F0aW9uIHRvIGEgc3RhbmRhbG9uZSBoZWFkc2V0CiAKQEAg LTEwMywxNSArMTAzLDE0IEBAIFBhdGNoMDAwMzogICAgICBodHRwczovL3Jhdy5naXRodWJ1c2Vy Y29udGVudC5jb20vV2lWUm4vV2lWUm4vcmVmcy90YWdzLyV7dGFnMH0vCiAjIGRvd25zdHJlYW0t b25seSAtIFdpVlJuIHNwZWNpZmljIE1vbmFkbyBwYXRjaGVzCiBQYXRjaDAwMDQ6ICAgICAgaHR0 cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL1dpVlJuL1dpVlJuL3JlZnMvdGFncy8le3Rh ZzB9L3BhdGNoZXMvbW9uYWRvLzAwMDQtc3Qtb3hyLWZvcndhcmQtMC1yZWZyZXNoLXJhdGUucGF0 Y2gKICMgZG93bnN0cmVhbS1vbmx5IC0gV2lWUm4gc3BlY2lmaWMgTW9uYWRvIHBhdGNoZXMKLVBh dGNoMDAwNTogICAgICBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vV2lWUm4vV2lW Um4vcmVmcy90YWdzLyV7dGFnMH0vcGF0Y2hlcy9tb25hZG8vMDAwNS1SZXBsYWNlLWRpc3RvcnRp b24td2l0aC1mb3ZlYXRpb24ucGF0Y2gKK1BhdGNoMDAwNTogICAgICBodHRwczovL3Jhdy5naXRo dWJ1c2VyY29udGVudC5jb20vV2lWUm4vV2lWUm4vcmVmcy90YWdzLyV7dGFnMH0vcGF0Y2hlcy9t b25hZG8vMDAwNS1kLXN0ZWFtdnJfbGgtcHJldmVudC1jcmFzaC1vbi12aXZlLXBybzItV2lWUm4u cGF0Y2gKICMgZG93bnN0cmVhbS1vbmx5IC0gV2lWUm4gc3BlY2lmaWMgTW9uYWRvIHBhdGNoZXMK LVBhdGNoMDAwNjogICAgICBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vV2lWUm4v V2lWUm4vcmVmcy90YWdzLyV7dGFnMH0vcGF0Y2hlcy9tb25hZG8vMDAwNi1kLXN0ZWFtdnJfbGgt cHJldmVudC1jcmFzaC1vbi12aXZlLXBybzItV2lWUm4ucGF0Y2gKK1BhdGNoMDAwNjogICAgICBo dHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vV2lWUm4vV2lWUm4vcmVmcy90YWdzLyV7 dGFnMH0vcGF0Y2hlcy9tb25hZG8vMDAwNi1zdC1veHItcHVzaC1YckV2ZW50RGF0YUludGVyYWN0 aW9uUHJvZmlsZUNoYW5nZWQtd2hlLnBhdGNoCiAjIGRvd25zdHJlYW0tb25seSAtIFdpVlJuIHNw ZWNpZmljIE1vbmFkbyBwYXRjaGVzCi1QYXRjaDAwMDc6ICAgICAgaHR0cHM6Ly9yYXcuZ2l0aHVi dXNlcmNvbnRlbnQuY29tL1dpVlJuL1dpVlJuL3JlZnMvdGFncy8le3RhZzB9L3BhdGNoZXMvbW9u YWRvLzAwMDctc3Qtb3hyLXB1c2gtWHJFdmVudERhdGFJbnRlcmFjdGlvblByb2ZpbGVDaGFuZ2Vk LXdoZS5wYXRjaAorUGF0Y2gwMDA3OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50 LmNvbS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA3LWRv bi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaAogIyBkb3duc3RyZWFtLW9ubHkgLSBXaVZSbiBzcGVj aWZpYyBNb25hZG8gcGF0Y2hlcwotUGF0Y2gwMDA4OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVz ZXJjb250ZW50LmNvbS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFk by8wMDA4LURvbi10LWdldC1wb3NlLWRhdGEtZm9yLWZhc3QtcGF0aC5wYXRjaAotIyBkb3duc3Ry ZWFtLW9ubHkgLSBXaVZSbiBzcGVjaWZpYyBNb25hZG8gcGF0Y2hlcwotUGF0Y2gwMDA5OiAgICAg IGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9XaVZSbi9XaVZSbi9yZWZzL3RhZ3Mv JXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA5LWRvbi10LXZlcmlmeS1HTC1zdHVmZi5wYXRjaAor UGF0Y2gwMDA4OiAgICAgIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9XaVZSbi9X aVZSbi9yZWZzL3RhZ3MvJXt0YWcwfS9wYXRjaGVzL21vbmFkby8wMDA4LWNvbmZpZ3VyZS11X2dp dF90YWctaW4tV2lWUm4ucGF0Y2gKKwogCiAjIElmIEJ1aWxkUmVxdWlyZXMgY2hhbmdlLCBiZSBz dXJlIHRvIHVwZGF0ZSBlbnZpc2lvbi13aXZybiBSZXF1aXJlcwogIyBodHRwczovL3NyYy5mZWRv cmFwcm9qZWN0Lm9yZy9ycG1zL2VudmlzaW9uL2Jsb2IvcmF3aGlkZS9mL2VudmlzaW9uLnNwZWMK QEAgLTE4OCw2ICsxODcsNyBAQCBCdWlsZFJlcXVpcmVzOiAgcWNvcm8tcXQ2LWRldmVsCiBCdWls ZFJlcXVpcmVzOiAgcXQ2LXF0YmFzZS1wcml2YXRlLWRldmVsCiBCdWlsZFJlcXVpcmVzOiAgcXQ2 LXF0ZGVjbGFyYXRpdmUtZGV2ZWwKIEJ1aWxkUmVxdWlyZXM6ICBxdDZxbWwob3JnLmtkZS5kZXNr dG9wKQorQnVpbGRSZXF1aXJlczogIHNwaXJ2LXRvb2xzCiBCdWlsZFJlcXVpcmVzOiAgc3lzdGVt ZC1ycG0tbWFjcm9zCiAKIFJlcXVpcmVzOiAgICAgICBhbmRyb2lkLXRvb2xzCkBAIC0yNDgsNyAr MjQ4LDYgQEAgcHVzaGQgX2RlcHMvbW9uYWRvLXNyYwogJXBhdGNoIC1QMDAwNiAtcDEKICVwYXRj aCAtUDAwMDcgLXAxCiAlcGF0Y2ggLVAwMDA4IC1wMQotJXBhdGNoIC1QMDAwOSAtcDEKIHBvcGQK IAogCkBAIC0yNjEsNiArMjYwLDcgQEAgcG9wZAogICAtREZFVENIQ09OVEVOVF9CQVNFX0RJUj0i X2RlcHMiIFwKICAgLURGRVRDSENPTlRFTlRfRlVMTFlfRElTQ09OTkVDVEVEPU9OIFwKICAgLURH SVRfREVTQz12JXt2ZXJzaW9ufSBcCisgIC1ER0lUX0NPTU1JVD12JXt2ZXJzaW9ufSBcCiAgIC1E T1ZSX0NPTVBBVF9TRUFSQ0hfUEFUSD0le19saWJkaXJ9L29wZW5jb21wb3NpdGUvcnVudGltZSBc CiAgIC1EV0lWUk5fQlVJTERfQ0xJRU5UPU9GRiBcCiAgIC1EV0lWUk5fQlVJTERfREFTSEJPQVJE PU9OIFwK