From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.7 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE,URIBL_BLACK autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 13306 invoked from network); 2 May 2023 16:05:26 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 2 May 2023 16:05:26 -0000 Content-Type: multipart/mixed; boundary="===============7408846137160276439==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_musl?= To: ml@inbox.vuxu.org From: dkwo Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 02 May 2023 18:05:26 +0200 List-Id: Message-ID: <20230502160526.9pcIYO-RafurmnxypCtSAuZMPVzKuwsJ6tBHgsR43BY@z> GitHub notification mails are now in MIME to allow UTF8. --===============7408846137160276439== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgZGt3byBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vZGt3by92 b2lkLXBhY2thZ2VzIG11c2wKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNr YWdlcy9wdWxsLzQzMTA2CgptdXNsCi0gSSB0ZXN0ZWQgdGhlIGNoYW5nZXMgaW4gdGhpcyBQUjog eWVzDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciBteSBuYXRpdmUgYXJjaGl0ZWN0dXJl LCAoeDg2XzY0LW11c2wpDQotIGtlZXBpbmcgdGhlIGxhcmdlLWZpbGUgcGF0Y2gsIGZvciBub3cN Ci0gcmVxdWlyZXMgY2hhbmdlcyB0byB4YnBzLCBhbG9uZyB0aGUgbGluZXMgb2YgaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgveGJwcy9wdWxsLzMzMQoKQSBwYXRjaCBmaWxlIGZyb20gaHR0 cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQzMTA2LnBhdGNo IGlzIGF0dGFjaGVk --===============7408846137160276439== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-musl-43106.patch" RnJvbSBjNmNhZGRhZDE4MjNjMTgwMDQ4ZGZiMTc2Njk3YTJjNDhjZmI2ZDMxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9waWF6emFsdW5nYUBnbWFpbC5jb20+CkRh dGU6IFRodSwgMTMgTWF5IDIwMjEgMTM6NTE6MDggKzAyMDAKU3ViamVjdDogW1BBVENIIDAxLzE5 XSBtdXNsOiB1cGRhdGUgdG8gMS4yLjMKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmNwa2dzL211c2wvcGF0Y2hlcy8wMC1yZWFs bG9jYXJyYXkucGF0Y2ggICAgfCAgNDIgLS0tLQogLi4uL3BhdGNoZXMvMDAwMS1yZW1vdmUtT19M QVJHRUZJTEUucGF0Y2ggICAgIHwgIDI2ICsrKwogLi4uaXN0X3VubGlua19pbl9wdGhyZWFkX2V4 aXRfYWZ0ZXJfYWxsLnBhdGNoIHwgIDU2IC0tLS0tCiAuLi5ocmVhZHNfbWludXNfMV9hc19yZWxh eGVkX2F0b21pY19mb3IucGF0Y2ggfCAgNzggLS0tLS0tLQogLi4ub3duX3NpemVfb2Zfc29tZV9s aWJjX3N0cnVjdF9tZW1iZXJzLnBhdGNoIHwgIDMwIC0tLQogLi4ucHBpbmdfZm9yX3Byb2Nlc3Nl c190aGF0X3JldHVybl90b19zLnBhdGNoIHwgMTAyIC0tLS0tLS0tCiAuLi4wOThhODg1ZmVhZTNh ZThjMzJiNDA3MzUwZDhjYTg1ZGQxNzgucGF0Y2ggfCAxMTMgLS0tLS0tLS0tCiBzcmNwa2dzL211 c2wvcGF0Y2hlcy9DVkUtMjAyMC0yODkyOC5wYXRjaCAgICAgfCAgNjQgLS0tLS0KIHNyY3BrZ3Mv bXVzbC9wYXRjaGVzL2FhcmNoNjQtZnJlZ3MucGF0Y2ggICAgICB8ICAzNyAtLS0KIHNyY3BrZ3Mv bXVzbC9wYXRjaGVzL2FkZC1xc29ydF9yLnBhdGNoICAgICAgICB8IDIwMSAtLS0tLS0tLS0tLS0t LS0tCiAuLi5kLXN1cHBvcnQtZm9yLVNJR0VWX1RIUkVBRF9JRC10aW1lcnMucGF0Y2ggfCAgNzQg LS0tLS0tCiBzcmNwa2dzL211c2wvcGF0Y2hlcy9lcG9sbF9jcC5wYXRjaCAgICAgICAgICAgfCAg MjggLS0tCiAuLi4vbXVzbC9wYXRjaGVzL2ZpeC1waS1tdXRleC1jb25kLTEucGF0Y2ggICAgfCAg NTYgLS0tLS0KIC4uLi9tdXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNvbmQtMi5wYXRjaCAgICB8 ICA0OCAtLS0tCiAuLi4vbXVzbC9wYXRjaGVzL2ZpeC1waS1tdXRleC1jb25kLTMucGF0Y2ggICAg fCAgMjggLS0tCiBzcmNwa2dzL211c2wvcGF0Y2hlcy9nZXR0aWQucGF0Y2ggICAgICAgICAgICAg fCAgNDkgLS0tLQogLi4udGx5X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5rLnBhdGNo IHwgMjE5IC0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9tdXNsL3BhdGNoZXMvaXNhc2NpaS5w YXRjaCAgICAgICAgICAgIHwgIDIxIC0tCiBzcmNwa2dzL211c2wvcGF0Y2hlcy9tb19sb29rdXAu cGF0Y2ggICAgICAgICAgfCAgMTkgLS0KIHNyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwYy1wdF9yZWdz LnBhdGNoICAgICAgICB8ICAzOCAtLS0KIHNyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwYzY0LWZwcmVn c2V0X3QucGF0Y2ggICB8ICAzMSAtLS0KIHNyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwY2xlLnBhdGNo ICAgICAgICAgICAgICB8ICAyNCAtLQogLi4uaW5fcmVhZGxpbmtfc3lzY2FsbF93aXRoX3plcm9f YnVmZmVyLnBhdGNoIHwgIDU5IC0tLS0tCiBzcmNwa2dzL211c2wvdGVtcGxhdGUgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDggKy0KIDI1IGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlvbnMo KyksIDE0MjIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXNsL3Bh dGNoZXMvMDAtcmVhbGxvY2FycmF5LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9t dXNsL3BhdGNoZXMvMDAwMS1yZW1vdmUtT19MQVJHRUZJTEUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL211c2wvcGF0Y2hlcy8wMDAxX3Jlb3JkZXJfdGhyZWFkX2xpc3RfdW5saW5r X2luX3B0aHJlYWRfZXhpdF9hZnRlcl9hbGwucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL211c2wvcGF0Y2hlcy8wMDAyX2Rvbl90X3VzZV9saWJjX3RocmVhZHNfbWludXNfMV9hc19y ZWxheGVkX2F0b21pY19mb3IucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wv cGF0Y2hlcy8wMDAzX2N1dF9kb3duX3NpemVfb2Zfc29tZV9saWJjX3N0cnVjdF9tZW1iZXJzLnBh dGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAwNF9yZXN0b3Jl X2xvY2tfc2tpcHBpbmdfZm9yX3Byb2Nlc3Nlc190aGF0X3JldHVybl90b19zLnBhdGNoCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXNsL3BhdGNoZXMvOTlkNTA5OGE4ODVmZWFlM2FlOGMz MmI0MDczNTBkOGNhODVkZDE3OC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXVz bC9wYXRjaGVzL0NWRS0yMDIwLTI4OTI4LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9tdXNsL3BhdGNoZXMvYWFyY2g2NC1mcmVncy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvbXVzbC9wYXRjaGVzL2FkZC1xc29ydF9yLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9tdXNsL3BhdGNoZXMvYWRkLXN1cHBvcnQtZm9yLVNJR0VWX1RIUkVBRF9JRC10aW1l cnMucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wvcGF0Y2hlcy9lcG9sbF9j cC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXVzbC9wYXRjaGVzL2ZpeC1waS1t dXRleC1jb25kLTEucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211c2wvcGF0Y2hl cy9maXgtcGktbXV0ZXgtY29uZC0yLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9t dXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNvbmQtMy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvbXVzbC9wYXRjaGVzL2dldHRpZC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvbXVzbC9wYXRjaGVzL2ltcGxlbWVudF9yZWFscGF0aF9kaXJlY3RseV9pbnN0ZWFkX29m X3VzaW5nX3Byb2Nmc19yZWFkbGluay5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bXVzbC9wYXRjaGVzL2lzYXNjaWkucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211 c2wvcGF0Y2hlcy9tb19sb29rdXAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211 c2wvcGF0Y2hlcy9wcGMtcHRfcmVncy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bXVzbC9wYXRjaGVzL3BwYzY0LWZwcmVnc2V0X3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL211c2wvcGF0Y2hlcy9wcGNsZS5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvbXVzbC9wYXRjaGVzL3dvcmtfYXJvdW5kX2xpbnV4X2J1Z19pbl9yZWFkbGlua19zeXNjYWxs X3dpdGhfemVyb19idWZmZXIucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29t bW9uL3NobGlicwppbmRleCA4YzQ3ZTc5YjhjNDMuLjMzN2RiYmUzMDA5OSAxMDA2NDQKLS0tIGEv Y29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0xNiw3ICsxNiw3IEBACiAjIFBM RUFTRSBOT1RFOiB3aGVuIG11bHRpcGxlIHBhY2thZ2VzIHByb3ZpZGUgdGhlIHNhbWUgU09OQU1F LCB0aGUgZmlyc3QKICMgb25lIChvcmRlciB0b3AtPmJvdHRvbSkgaXMgcHJlZmVycmVkIG92ZXIg dGhlIG5leHQgb25lcy4KICMKLWxpYmMuc28gbXVzbC0xLjEuMjRfNworbGliYy5zbyBtdXNsLTEu Mi4zXzEKIGxpYmMuc28uNiBnbGliYy0yLjM2XzEKIGxpYm0uc28uNiBnbGliYy0yLjM2XzEKIGxp YnB0aHJlYWQuc28uMCBnbGliYy0yLjM2XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRj aGVzLzAwLXJlYWxsb2NhcnJheS5wYXRjaCBiL3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzAwLXJlYWxs b2NhcnJheS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2ZhYWIzMzBlODlh Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAtcmVhbGxvY2FycmF5 LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDIgKzAsMCBAQAotRnJvbSA4MjEwODNhYzdiNTRl YWEwNDBkNWE4ZGRjNjdjNjIwNmExNzVlMGNhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJv bTogQXJpYWRuZSBDb25pbGwgPGFyaWFkbmVAZGVyZWZlcmVuY2VkLm9yZz4KLURhdGU6IFNhdCwg MSBBdWcgMjAyMCAwODoyNjozNSAtMDYwMAotU3ViamVjdDogW1BBVENIXSBpbXBsZW1lbnQgcmVh bGxvY2FycmF5Ci0KLXJlYWxsb2NhcnJheSBpcyBhbiBleHRlbnNpb24gaW50cm9kdWNlZCBieSBP cGVuQlNELCB3aGljaCBpbnRyb2R1Y2VzCi1jYWxsb2Mgb3ZlcmZsb3cgY2hlY2tpbmcgdG8gcmVh bGxvYy4KLQotZ2xpYmMgMi4yOCBpbnRyb2R1Y2VkIHN1cHBvcnQgZm9yIHRoaXMgZnVuY3Rpb24g YmVoaW5kIF9HTlVfU09VUkNFLAotd2hpbGUgZ2xpYmMgMi4yOSBhbGxvd3MgaXRzIHVzYWdlIGlu IF9ERUZBVUxUX1NPVVJDRS4KLQotZGlmZiAtLWdpdCBhL2luY2x1ZGUvc3RkbGliLmggYi9pbmNs dWRlL3N0ZGxpYi5oCi1pbmRleCAxOTRjMjAzMy4uYjU0YTA1MWYgMTAwNjQ0Ci0tLS0gYS9pbmNs dWRlL3N0ZGxpYi5oCi0rKysgYi9pbmNsdWRlL3N0ZGxpYi5oCi1AQCAtMTQ1LDYgKzE0NSw3IEBA IGludCBnZXRsb2FkYXZnKGRvdWJsZSAqLCBpbnQpOwotIGludCBjbGVhcmVudih2b2lkKTsKLSAj ZGVmaW5lIFdDT1JFRFVNUChzKSAoKHMpICYgMHg4MCkKLSAjZGVmaW5lIFdJRkNPTlRJTlVFRChz KSAoKHMpID09IDB4ZmZmZikKLSt2b2lkICpyZWFsbG9jYXJyYXkgKHZvaWQgKiwgc2l6ZV90LCBz aXplX3QpOwotICNlbmRpZgotIAotICNpZmRlZiBfR05VX1NPVVJDRQotZGlmZiAtLWdpdCBhL3Ny Yy9tYWxsb2MvcmVhbGxvY2FycmF5LmMgYi9zcmMvbWFsbG9jL3JlYWxsb2NhcnJheS5jCi1uZXcg ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAuLjRhNmViZTQ2Ci0tLS0gL2Rldi9udWxs Ci0rKysgYi9zcmMvbWFsbG9jL3JlYWxsb2NhcnJheS5jCi1AQCAtMCwwICsxLDEzIEBACi0rI2Rl ZmluZSBfQlNEX1NPVVJDRQotKyNpbmNsdWRlIDxlcnJuby5oPgotKyNpbmNsdWRlIDxzdGRsaWIu aD4KLSsKLSt2b2lkICpyZWFsbG9jYXJyYXkodm9pZCAqcHRyLCBzaXplX3QgbSwgc2l6ZV90IG4p Ci0rewotKwlpZiAobiAmJiBtID4gLTEgLyBuKSB7Ci0rCQllcnJubyA9IEVOT01FTTsKLSsJCXJl dHVybiAwOwotKwl9Ci0rCi0rCXJldHVybiByZWFsbG9jKHB0ciwgbSAqIG4pOwotK30KZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzAwMDEtcmVtb3ZlLU9fTEFSR0VGSUxFLnBhdGNo IGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAwMS1yZW1vdmUtT19MQVJHRUZJTEUucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4xY2EzNjI2MzY5MWMKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL211c2wvcGF0Y2hlcy8wMDAxLXJlbW92ZS1PX0xBUkdFRklM RS5wYXRjaApAQCAtMCwwICsxLDI2IEBACitGcm9tIDdkNTU0ZDBjNzg2ZjU0MzFhZDMwMzVhMzI4 ODE1ODkwYTk1YTI5NzkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiA9P1VURi04P3E/ PUMzPTg5cmljbz0yME5vZ3VlaXJhPz0gPGVyaWNvbnJAZGlzcm9vdC5vcmc+CitEYXRlOiBXZWQs IDEyIE1heSAyMDIxIDE3OjM5OjIwIC0wMzAwCitTdWJqZWN0OiBbUEFUQ0hdIHJlbW92ZSBPX0xB UkdFRklMRQorCit1c2VmdWwgaGFjayB0byBidWlsZCAxLjIuMiBtdXNsIGZvciB4ODZfNjQgYW5k IG5vdCBoYXZlIHRvIHJlYnVpbGQKK2ZpcmVmb3guCistLS0KKyBhcmNoL2dlbmVyaWMvYml0cy9m Y250bC5oIHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQorCitkaWZmIC0tZ2l0IGEvYXJjaC9nZW5lcmljL2JpdHMvZmNudGwuaCBiL2FyY2gvZ2Vu ZXJpYy9iaXRzL2ZjbnRsLmgKK2luZGV4IDczMGE5OGNmLi5jMmZkMTc2MCAxMDA2NDQKKy0tLSBh L2FyY2gvZ2VuZXJpYy9iaXRzL2ZjbnRsLmgKKysrKyBiL2FyY2gvZ2VuZXJpYy9iaXRzL2ZjbnRs LmgKK0BAIC0xMyw3ICsxMyw3IEBACisgCisgI2RlZmluZSBPX0FTWU5DICAgICAgMDIwMDAwCisg I2RlZmluZSBPX0RJUkVDVCAgICAgMDQwMDAwCistI2RlZmluZSBPX0xBUkdFRklMRSAwMTAwMDAw CisrI2RlZmluZSBPX0xBUkdFRklMRSAwCisgI2RlZmluZSBPX05PQVRJTUUgIDAxMDAwMDAwCisg I2RlZmluZSBPX1BBVEggICAgMDEwMDAwMDAwCisgI2RlZmluZSBPX1RNUEZJTEUgMDIwMjAwMDAw CistLSAKKzIuMzEuMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAwMV9yZW9y ZGVyX3RocmVhZF9saXN0X3VubGlua19pbl9wdGhyZWFkX2V4aXRfYWZ0ZXJfYWxsLnBhdGNoIGIv c3JjcGtncy9tdXNsL3BhdGNoZXMvMDAwMV9yZW9yZGVyX3RocmVhZF9saXN0X3VubGlua19pbl9w dGhyZWFkX2V4aXRfYWZ0ZXJfYWxsLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCA3YzFhNTViYzg1ZTMuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211c2wvcGF0Y2hlcy8w MDAxX3Jlb3JkZXJfdGhyZWFkX2xpc3RfdW5saW5rX2luX3B0aHJlYWRfZXhpdF9hZnRlcl9hbGwu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi0+RnJvbSA0ZDVhYTIwYTk0YTJk M2ZhZTNlNjkyODlkYzIzZWNhZmJkMGMxNmM0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJv bTogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4PgotRGF0ZTogRnJpLCAyMiBNYXkgMjAy MCAxNzozNToxNCAtMDQwMAotU3ViamVjdDogW1BBVENIIDEvNF0gcmVvcmRlciB0aHJlYWQgbGlz dCB1bmxpbmsgaW4gcHRocmVhZF9leGl0IGFmdGVyIGFsbAotIGxvY2tzCi0KLXNpbmNlIHRoZSBi YWNrZW5kIGZvciBMT0NLKCkgc2tpcHMgbG9ja2luZyBpZiBzaW5nbGUtdGhyZWFkZWQsIGl0J3MK LXVuc2FmZSB0byBtYWtlIHRoZSBwcm9jZXNzIGFwcGVhciBzaW5nbGUtdGhyZWFkZWQgYmVmb3Jl IHRoZSBsYXN0IHVzZQotb2YgbG9jay4KLQotdGhpcyBmaXhlcyBwb3RlbnRpYWwgdW5zeW5jaHJv bml6ZWQgYWNjZXNzIHRvIGEgbGlua2VkIGxpc3QgdmlhCi1fX2RsX3RocmVhZF9jbGVhbnVwLgot LS0tCi0gc3JjL3RocmVhZC9wdGhyZWFkX2NyZWF0ZS5jIHwgMTkgKysrKysrKysrKystLS0tLS0t LQotIDEgZmlsZSBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQotCi1k aWZmIC0tZ2l0IGEvc3JjL3RocmVhZC9wdGhyZWFkX2NyZWF0ZS5jIGIvc3JjL3RocmVhZC9wdGhy ZWFkX2NyZWF0ZS5jCi1pbmRleCA1ZjQ5MTA5Mi4uNmEzYjBjMjEgMTAwNjQ0Ci0tLS0gYS9zcmMv dGhyZWFkL3B0aHJlYWRfY3JlYXRlLmMKLSsrKyBiL3NyYy90aHJlYWQvcHRocmVhZF9jcmVhdGUu YwotQEAgLTkwLDE0ICs5MCw3IEBAIF9Ob3JldHVybiB2b2lkIF9fcHRocmVhZF9leGl0KHZvaWQg KnJlc3VsdCkKLSAJCWV4aXQoMCk7Ci0gCX0KLSAKLS0JLyogQXQgdGhpcyBwb2ludCB3ZSBhcmUg Y29tbWl0dGVkIHRvIHRocmVhZCB0ZXJtaW5hdGlvbi4gVW5saW5rCi0tCSAqIHRoZSB0aHJlYWQg ZnJvbSB0aGUgbGlzdC4gVGhpcyBjaGFuZ2Ugd2lsbCBub3QgYmUgdmlzaWJsZQotLQkgKiB1bnRp bCB0aGUgbG9jayBpcyByZWxlYXNlZCwgd2hpY2ggb25seSBoYXBwZW5zIGFmdGVyIFNZU19leGl0 Ci0tCSAqIGhhcyBiZWVuIGNhbGxlZCwgdmlhIHRoZSBleGl0IGZ1dGV4IGFkZHJlc3MgcG9pbnRp bmcgYXQgdGhlIGxvY2suICovCi0tCWxpYmMudGhyZWFkc19taW51c18xLS07Ci0tCXNlbGYtPm5l eHQtPnByZXYgPSBzZWxmLT5wcmV2OwotLQlzZWxmLT5wcmV2LT5uZXh0ID0gc2VsZi0+bmV4dDsK LS0Jc2VsZi0+cHJldiA9IHNlbGYtPm5leHQgPSBzZWxmOwotKwkvKiBBdCB0aGlzIHBvaW50IHdl IGFyZSBjb21taXR0ZWQgdG8gdGhyZWFkIHRlcm1pbmF0aW9uLiAqLwotIAotIAkvKiBQcm9jZXNz IHJvYnVzdCBsaXN0IGluIHVzZXJzcGFjZSB0byBoYW5kbGUgbm9uLXBzaGFyZWQgbXV0ZXhlcwot IAkgKiBhbmQgdGhlIGRldGFjaGVkIHRocmVhZCBjYXNlIHdoZXJlIHRoZSByb2J1c3QgbGlzdCBo ZWFkIHdpbGwKLUBAIC0xMjEsNiArMTE0LDE2IEBAIF9Ob3JldHVybiB2b2lkIF9fcHRocmVhZF9l eGl0KHZvaWQgKnJlc3VsdCkKLSAJX19kb19vcnBoYW5lZF9zdGRpb19sb2NrcygpOwotIAlfX2Rs X3RocmVhZF9jbGVhbnVwKCk7Ci0gCi0rCS8qIExhc3QsIHVubGluayB0aHJlYWQgZnJvbSB0aGUg bGlzdC4gVGhpcyBjaGFuZ2Ugd2lsbCBub3QgYmUgdmlzaWJsZQotKwkgKiB1bnRpbCB0aGUgbG9j ayBpcyByZWxlYXNlZCwgd2hpY2ggb25seSBoYXBwZW5zIGFmdGVyIFNZU19leGl0Ci0rCSAqIGhh cyBiZWVuIGNhbGxlZCwgdmlhIHRoZSBleGl0IGZ1dGV4IGFkZHJlc3MgcG9pbnRpbmcgYXQgdGhl IGxvY2suCi0rCSAqIFRoaXMgbmVlZHMgdG8gaGFwcGVuIGFmdGVyIGFueSBwb3NzaWJsZSBjYWxs cyB0byBMT0NLKCkgdGhhdCBtaWdodAotKwkgKiBza2lwIGxvY2tpbmcgaWYgbGliYy50aHJlYWRz X21pbnVzXzEgaXMgemVyby4gKi8KLSsJbGliYy50aHJlYWRzX21pbnVzXzEtLTsKLSsJc2VsZi0+ bmV4dC0+cHJldiA9IHNlbGYtPnByZXY7Ci0rCXNlbGYtPnByZXYtPm5leHQgPSBzZWxmLT5uZXh0 OwotKwlzZWxmLT5wcmV2ID0gc2VsZi0+bmV4dCA9IHNlbGY7Ci0rCi0gCS8qIFRoaXMgYXRvbWlj IHBvdGVudGlhbGx5IGNvbXBldGVzIHdpdGggYSBjb25jdXJyZW50IHB0aHJlYWRfZGV0YWNoCi0g CSAqIGNhbGw7IHRoZSBsb3NlciBpcyByZXNwb25zaWJsZSBmb3IgZnJlZWluZyB0aHJlYWQgcmVz b3VyY2VzLiAqLwotIAlpbnQgc3RhdGUgPSBhX2Nhcygmc2VsZi0+ZGV0YWNoX3N0YXRlLCBEVF9K T0lOQUJMRSwgRFRfRVhJVElORyk7Ci0tLSAKLTIuMjEuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dz L211c2wvcGF0Y2hlcy8wMDAyX2Rvbl90X3VzZV9saWJjX3RocmVhZHNfbWludXNfMV9hc19yZWxh eGVkX2F0b21pY19mb3IucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hlcy8wMDAyX2Rvbl90X3Vz ZV9saWJjX3RocmVhZHNfbWludXNfMV9hc19yZWxheGVkX2F0b21pY19mb3IucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUwNjA3NjJlOTlhNi4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzAwMDJfZG9uX3RfdXNlX2xpYmNfdGhyZWFkc19taW51c18x X2FzX3JlbGF4ZWRfYXRvbWljX2Zvci5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDc4ICswLDAg QEAKLT5Gcm9tIGUwMWI1OTM5YjM4YWVhNWVjYmU0MTY3MDY0MzE5OTgyNTg3NGIyNmMgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBSaWNoIEZlbGtlciA8ZGFsaWFzQGFlcmlmYWwuY3g+ Ci1EYXRlOiBUaHUsIDIxIE1heSAyMDIwIDIzOjMyOjQ1IC0wNDAwCi1TdWJqZWN0OiBbUEFUQ0gg Mi80XSBkb24ndCB1c2UgbGliYy50aHJlYWRzX21pbnVzXzEgYXMgcmVsYXhlZCBhdG9taWMgZm9y Ci0gc2tpcHBpbmcgbG9ja3MKLQotYWZ0ZXIgYWxsIGJ1dCB0aGUgbGFzdCB0aHJlYWQgZXhpdHMs IHRoZSBuZXh0IHRocmVhZCB0byBvYnNlcnZlCi1saWJjLnRocmVhZHNfbWludXNfMT09MCBhbmQg Y29uY2x1ZGUgdGhhdCBpdCBjYW4gc2tpcCBsb2NraW5nIGZhaWxzIHRvCi1zeW5jaHJvbml6ZSB3 aXRoIGFueSBjaGFuZ2VzIHRvIG1lbW9yeSB0aGF0IHdlcmUgbWFkZSBieSB0aGUKLWxhc3QtZXhp dGluZyB0aHJlYWQuIHRoaXMgY2FuIHByb2R1Y2UgZGF0YSByYWNlcy4KLQotb24gc29tZSBhcmNo cywgYXQgbGVhc3QgeDg2LCBtZW1vcnkgc3luY2hyb25pemF0aW9uIGlzIHVubGlrZWx5IHRvIGJl Ci1hIHByb2JsZW07IGhvd2V2ZXIsIHdpdGggdGhlIGlubGluZSBsb2NrcyBpbiBtYWxsb2MsIHNr aXBwaW5nIHRoZSBsb2NrCi1hbHNvIGVsaW1pbmF0ZWQgdGhlIGNvbXBpbGVyIGJhcnJpZXIsIGFu ZCBjYXVzZWQgY29kZSB0aGF0IG5lZWRlZCB0bwotcmUtY2hlY2sgY2h1bmsgaW4tdXNlIGJpdHMg YWZ0ZXIgb2J0YWluaW5nIHRoZSBsb2NrIHRvIHJldXNlIGEgc3RhbGUKLXZhbHVlLCBwb3NzaWJs eSBmcm9tIGJlZm9yZSB0aGUgcHJvY2VzcyBiZWNhbWUgc2luZ2xlLXRocmVhZGVkLiB0aGlzCi1p biB0dXJuIHByb2R1Y2VkIGNvcnJ1cHRpb24gb2YgdGhlIGhlYXAgc3RhdGUuCi0KLXNvbWUgdXNl cyBvZiBsaWJjLnRocmVhZHNfbWludXNfMSByZW1haW4sIGVzcGVjaWFsbHkgZm9yIGFsbG9jYXRp b24gb2YKLW5ldyBUTFMgaW4gdGhlIGR5bmFtaWMgbGlua2VyOyBvdGhlcndpc2UsIGl0IGNvdWxk IGJlIHJlbW92ZWQKLWVudGlyZWx5LiBpdCdzIG1hZGUgbm9uLXZvbGF0aWxlIHRvIHJlZmxlY3Qg dGhhdCB0aGUgcmVtYWluaW5nCi1hY2Nlc3NlcyBhcmUgb25seSBtYWRlIHVuZGVyIGxvY2sgb24g dGhlIHRocmVhZCBsaXN0LgotCi1pbnN0ZWFkIG9mIGxpYmMudGhyZWFkc19taW51c18xLCBsaWJj LnRocmVhZGVkIGlzIG5vdyB1c2VkIGZvcgotc2tpcHBpbmcgbG9ja3MuIHRoZSBkaWZmZXJlbmNl IGlzIHRoYXQgbGliYy50aHJlYWRlZCBpcyBwZXJtYW5lbnRseQotdHJ1ZSBvbmNlIGFuIGFkZGl0 aW9uYWwgdGhyZWFkIGhhcyBiZWVuIGNyZWF0ZWQuIHRoaXMgd2lsbCBwcm9kdWNlCi1zb21lIHBl cmZvcm1hbmNlIHJlZ3Jlc3Npb24gaW4gcHJvY2Vzc2VzIHRoYXQgYXJlIG1vc3RseQotc2luZ2xl LXRocmVhZGVkIGJ1dCBvY2Nhc2lvbmFsbHkgY3JlYXRpbmcgdGhyZWFkcy4gaW4gdGhlIGZ1dHVy ZSBpdAotbWF5IGJlIHBvc3NpYmxlIHRvIGJyaW5nIGJhY2sgdGhlIGZ1bGwgbG9jay1za2lwcGlu ZywgYnV0IG1vcmUgY2FyZQotbmVlZHMgdG8gYmUgdGFrZW4gdG8gcHJvZHVjZSBhIHNhZmUgZGVz aWduLgotLS0tCi0gc3JjL2ludGVybmFsL2xpYmMuaCB8IDIgKy0KLSBzcmMvbWFsbG9jL21hbGxv Yy5jIHwgMiArLQotIHNyYy90aHJlYWQvX19sb2NrLmMgfCAyICstCi0gMyBmaWxlcyBjaGFuZ2Vk LCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvaW50 ZXJuYWwvbGliYy5oIGIvc3JjL2ludGVybmFsL2xpYmMuaAotaW5kZXggYWM5N2RjN2UuLmMwNjE0 ODUyIDEwMDY0NAotLS0tIGEvc3JjL2ludGVybmFsL2xpYmMuaAotKysrIGIvc3JjL2ludGVybmFs L2xpYmMuaAotQEAgLTIxLDcgKzIxLDcgQEAgc3RydWN0IF9fbGliYyB7Ci0gCWludCBjYW5fZG9f dGhyZWFkczsKLSAJaW50IHRocmVhZGVkOwotIAlpbnQgc2VjdXJlOwotLQl2b2xhdGlsZSBpbnQg dGhyZWFkc19taW51c18xOwotKwlpbnQgdGhyZWFkc19taW51c18xOwotIAlzaXplX3QgKmF1eHY7 Ci0gCXN0cnVjdCB0bHNfbW9kdWxlICp0bHNfaGVhZDsKLSAJc2l6ZV90IHRsc19zaXplLCB0bHNf YWxpZ24sIHRsc19jbnQ7Ci1kaWZmIC0tZ2l0IGEvc3JjL21hbGxvYy9tYWxsb2MuYyBiL3NyYy9t YWxsb2MvbWFsbG9jLmMKLWluZGV4IDk2OTgyNTk2Li4yNTUzYTYyZSAxMDA2NDQKLS0tLSBhL3Ny Yy9tYWxsb2MvbWFsbG9jLmMKLSsrKyBiL3NyYy9tYWxsb2MvbWFsbG9jLmMKLUBAIC0yNiw3ICsy Niw3IEBAIGludCBfX21hbGxvY19yZXBsYWNlZDsKLSAKLSBzdGF0aWMgaW5saW5lIHZvaWQgbG9j ayh2b2xhdGlsZSBpbnQgKmxrKQotIHsKLS0JaWYgKGxpYmMudGhyZWFkc19taW51c18xKQotKwlp ZiAobGliYy50aHJlYWRlZCkKLSAJCXdoaWxlKGFfc3dhcChsaywgMSkpIF9fd2FpdChsaywgbGsr MSwgMSwgMSk7Ci0gfQotIAotZGlmZiAtLWdpdCBhL3NyYy90aHJlYWQvX19sb2NrLmMgYi9zcmMv dGhyZWFkL19fbG9jay5jCi1pbmRleCA0NTU1N2M4OC4uNWI5YjE0NGUgMTAwNjQ0Ci0tLS0gYS9z cmMvdGhyZWFkL19fbG9jay5jCi0rKysgYi9zcmMvdGhyZWFkL19fbG9jay5jCi1AQCAtMTgsNyAr MTgsNyBAQAotIAotIHZvaWQgX19sb2NrKHZvbGF0aWxlIGludCAqbCkKLSB7Ci0tCWlmICghbGli Yy50aHJlYWRzX21pbnVzXzEpIHJldHVybjsKLSsJaWYgKCFsaWJjLnRocmVhZGVkKSByZXR1cm47 Ci0gCS8qIGZhc3QgcGF0aDogSU5UX01JTiBmb3IgdGhlIGxvY2ssICsxIGZvciB0aGUgY29uZ2Vz dGlvbiAqLwotIAlpbnQgY3VycmVudCA9IGFfY2FzKGwsIDAsIElOVF9NSU4gKyAxKTsKLSAJaWYg KCFjdXJyZW50KSByZXR1cm47Ci0tLSAKLTIuMjEuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL211 c2wvcGF0Y2hlcy8wMDAzX2N1dF9kb3duX3NpemVfb2Zfc29tZV9saWJjX3N0cnVjdF9tZW1iZXJz LnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAwM19jdXRfZG93bl9zaXplX29mX3NvbWVf bGliY19zdHJ1Y3RfbWVtYmVycy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg NTQwYzVkOTUwMTk1Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvMDAw M19jdXRfZG93bl9zaXplX29mX3NvbWVfbGliY19zdHJ1Y3RfbWVtYmVycy5wYXRjaAorKysgL2Rl di9udWxsCkBAIC0xLDMwICswLDAgQEAKLT5Gcm9tIGYxMjg4OGU5ZWI5ZWVkNjBjYzI2NmI4OTlk Y2FmZWNiNDc1Mjk2NGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBSaWNoIEZlbGtl ciA8ZGFsaWFzQGFlcmlmYWwuY3g+Ci1EYXRlOiBGcmksIDIyIE1heSAyMDIwIDE3OjI1OjM4IC0w NDAwCi1TdWJqZWN0OiBbUEFUQ0ggMy80XSBjdXQgZG93biBzaXplIG9mIHNvbWUgbGliYyBzdHJ1 Y3QgbWVtYmVycwotCi10aGVzZSBhcmUgYWxsIGZsYWdzIHRoYXQgY2FuIGJlIHNpbmdsZS1ieXRl IHZhbHVlcy4KLS0tLQotIHNyYy9pbnRlcm5hbC9saWJjLmggfCA2ICsrKy0tLQotIDEgZmlsZSBj aGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9z cmMvaW50ZXJuYWwvbGliYy5oIGIvc3JjL2ludGVybmFsL2xpYmMuaAotaW5kZXggYzA2MTQ4NTIu LmQ0N2Y1OGUwIDEwMDY0NAotLS0tIGEvc3JjL2ludGVybmFsL2xpYmMuaAotKysrIGIvc3JjL2lu dGVybmFsL2xpYmMuaAotQEAgLTE4LDkgKzE4LDkgQEAgc3RydWN0IHRsc19tb2R1bGUgewotIH07 Ci0gCi0gc3RydWN0IF9fbGliYyB7Ci0tCWludCBjYW5fZG9fdGhyZWFkczsKLS0JaW50IHRocmVh ZGVkOwotLQlpbnQgc2VjdXJlOwotKwljaGFyIGNhbl9kb190aHJlYWRzOwotKwljaGFyIHRocmVh ZGVkOwotKwljaGFyIHNlY3VyZTsKLSAJaW50IHRocmVhZHNfbWludXNfMTsKLSAJc2l6ZV90ICph dXh2OwotIAlzdHJ1Y3QgdGxzX21vZHVsZSAqdGxzX2hlYWQ7Ci0tLSAKLTIuMjEuMAotCmRpZmYg LS1naXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy8wMDA0X3Jlc3RvcmVfbG9ja19za2lwcGluZ19m b3JfcHJvY2Vzc2VzX3RoYXRfcmV0dXJuX3RvX3MucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hl cy8wMDA0X3Jlc3RvcmVfbG9ja19za2lwcGluZ19mb3JfcHJvY2Vzc2VzX3RoYXRfcmV0dXJuX3Rv X3MucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU3MDNjMWY0MDNjNS4uMDAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzAwMDRfcmVzdG9yZV9sb2NrX3Nr aXBwaW5nX2Zvcl9wcm9jZXNzZXNfdGhhdF9yZXR1cm5fdG9fcy5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDEwMiArMCwwIEBACi0+RnJvbSA4ZDgxYmE4YzBiYzZmZTMxMTM2Y2IxNWM5YzgyZWY0 YzI0OTY1MDQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogUmljaCBGZWxrZXIgPGRh bGlhc0BhZXJpZmFsLmN4PgotRGF0ZTogRnJpLCAyMiBNYXkgMjAyMCAxNzo0NTo0NyAtMDQwMAot U3ViamVjdDogW1BBVENIIDQvNF0gcmVzdG9yZSBsb2NrLXNraXBwaW5nIGZvciBwcm9jZXNzZXMg dGhhdCByZXR1cm4gdG8KLSBzaW5nbGUtdGhyZWFkZWQgc3RhdGUKLQotdGhlIGRlc2lnbiB1c2Vk IGhlcmUgcmVsaWVzIG9uIHRoZSBiYXJyaWVyIHByb3ZpZGVkIGJ5IHRoZSBmaXJzdCBsb2NrCi1v cGVyYXRpb24gYWZ0ZXIgdGhlIHByb2Nlc3MgcmV0dXJucyB0byBzaW5nbGUtdGhyZWFkZWQgc3Rh dGUgdG8KLXN5bmNocm9uaXplIHdpdGggYWN0aW9ucyBieSB0aGUgbGFzdCB0aHJlYWQgdGhhdCBl eGl0ZWQuIGJ5IHN0b3JpbmcKLXRoZSBpbnRlbnQgdG8gY2hhbmdlIG1vZGVzIGluIHRoZSBzYW1l IG9iamVjdCB1c2VkIHRvIGRldGVjdCB3aGV0aGVyCi1sb2NraW5nIGlzIG5lZWRlZCwgaXQncyBw b3NzaWJsZSB0byBhdm9pZCBhbiBleHRyYSAocG9zc2libHkgY29zdGx5KQotbWVtb3J5IGxvYWQg YWZ0ZXIgdGhlIGxvY2sgaXMgdGFrZW4uCi0tLS0KLSBzcmMvaW50ZXJuYWwvbGliYy5oICAgICAg ICAgfCAxICsKLSBzcmMvbWFsbG9jL21hbGxvYy5jICAgICAgICAgfCA1ICsrKystCi0gc3JjL3Ro cmVhZC9fX2xvY2suYyAgICAgICAgIHwgNCArKystCi0gc3JjL3RocmVhZC9wdGhyZWFkX2NyZWF0 ZS5jIHwgOCArKysrLS0tLQotIDQgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgNiBk ZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3NyYy9pbnRlcm5hbC9saWJjLmggYi9zcmMvaW50 ZXJuYWwvbGliYy5oCi1pbmRleCBkNDdmNThlMC4uNjE5YmJhODYgMTAwNjQ0Ci0tLS0gYS9zcmMv aW50ZXJuYWwvbGliYy5oCi0rKysgYi9zcmMvaW50ZXJuYWwvbGliYy5oCi1AQCAtMjEsNiArMjEs NyBAQCBzdHJ1Y3QgX19saWJjIHsKLSAJY2hhciBjYW5fZG9fdGhyZWFkczsKLSAJY2hhciB0aHJl YWRlZDsKLSAJY2hhciBzZWN1cmU7Ci0rCXZvbGF0aWxlIHNpZ25lZCBjaGFyIG5lZWRfbG9ja3M7 Ci0gCWludCB0aHJlYWRzX21pbnVzXzE7Ci0gCXNpemVfdCAqYXV4djsKLSAJc3RydWN0IHRsc19t b2R1bGUgKnRsc19oZWFkOwotZGlmZiAtLWdpdCBhL3NyYy9tYWxsb2MvbWFsbG9jLmMgYi9zcmMv bWFsbG9jL21hbGxvYy5jCi1pbmRleCAyNTUzYTYyZS4uYTgwM2Q0YzkgMTAwNjQ0Ci0tLS0gYS9z cmMvbWFsbG9jL21hbGxvYy5jCi0rKysgYi9zcmMvbWFsbG9jL21hbGxvYy5jCi1AQCAtMjYsOCAr MjYsMTEgQEAgaW50IF9fbWFsbG9jX3JlcGxhY2VkOwotIAotIHN0YXRpYyBpbmxpbmUgdm9pZCBs b2NrKHZvbGF0aWxlIGludCAqbGspCi0gewotLQlpZiAobGliYy50aHJlYWRlZCkKLSsJaW50IG5l ZWRfbG9ja3MgPSBsaWJjLm5lZWRfbG9ja3M7Ci0rCWlmIChuZWVkX2xvY2tzKSB7Ci0gCQl3aGls ZShhX3N3YXAobGssIDEpKSBfX3dhaXQobGssIGxrKzEsIDEsIDEpOwotKwkJaWYgKG5lZWRfbG9j a3MgPCAwKSBsaWJjLm5lZWRfbG9ja3MgPSAwOwotKwl9Ci0gfQotIAotIHN0YXRpYyBpbmxpbmUg dm9pZCB1bmxvY2sodm9sYXRpbGUgaW50ICpsaykKLWRpZmYgLS1naXQgYS9zcmMvdGhyZWFkL19f bG9jay5jIGIvc3JjL3RocmVhZC9fX2xvY2suYwotaW5kZXggNWI5YjE0NGUuLjYwZWVjZTQ5IDEw MDY0NAotLS0tIGEvc3JjL3RocmVhZC9fX2xvY2suYwotKysrIGIvc3JjL3RocmVhZC9fX2xvY2su YwotQEAgLTE4LDkgKzE4LDExIEBACi0gCi0gdm9pZCBfX2xvY2sodm9sYXRpbGUgaW50ICpsKQot IHsKLS0JaWYgKCFsaWJjLnRocmVhZGVkKSByZXR1cm47Ci0rCWludCBuZWVkX2xvY2tzID0gbGli Yy5uZWVkX2xvY2tzOwotKwlpZiAoIW5lZWRfbG9ja3MpIHJldHVybjsKLSAJLyogZmFzdCBwYXRo OiBJTlRfTUlOIGZvciB0aGUgbG9jaywgKzEgZm9yIHRoZSBjb25nZXN0aW9uICovCi0gCWludCBj dXJyZW50ID0gYV9jYXMobCwgMCwgSU5UX01JTiArIDEpOwotKwlpZiAobmVlZF9sb2NrcyA8IDAp IGxpYmMubmVlZF9sb2NrcyA9IDA7Ci0gCWlmICghY3VycmVudCkgcmV0dXJuOwotIAkvKiBBIGZp cnN0IHNwaW4gbG9vcCwgZm9yIG1lZGl1bSBjb25nZXN0aW9uLiAqLwotIAlmb3IgKHVuc2lnbmVk IGkgPSAwOyBpIDwgMTA7ICsraSkgewotZGlmZiAtLWdpdCBhL3NyYy90aHJlYWQvcHRocmVhZF9j cmVhdGUuYyBiL3NyYy90aHJlYWQvcHRocmVhZF9jcmVhdGUuYwotaW5kZXggNmEzYjBjMjEuLjZi ZGZiNDRmIDEwMDY0NAotLS0tIGEvc3JjL3RocmVhZC9wdGhyZWFkX2NyZWF0ZS5jCi0rKysgYi9z cmMvdGhyZWFkL3B0aHJlYWRfY3JlYXRlLmMKLUBAIC0xMTgsOCArMTE4LDggQEAgX05vcmV0dXJu IHZvaWQgX19wdGhyZWFkX2V4aXQodm9pZCAqcmVzdWx0KQotIAkgKiB1bnRpbCB0aGUgbG9jayBp cyByZWxlYXNlZCwgd2hpY2ggb25seSBoYXBwZW5zIGFmdGVyIFNZU19leGl0Ci0gCSAqIGhhcyBi ZWVuIGNhbGxlZCwgdmlhIHRoZSBleGl0IGZ1dGV4IGFkZHJlc3MgcG9pbnRpbmcgYXQgdGhlIGxv Y2suCi0gCSAqIFRoaXMgbmVlZHMgdG8gaGFwcGVuIGFmdGVyIGFueSBwb3NzaWJsZSBjYWxscyB0 byBMT0NLKCkgdGhhdCBtaWdodAotLQkgKiBza2lwIGxvY2tpbmcgaWYgbGliYy50aHJlYWRzX21p bnVzXzEgaXMgemVyby4gKi8KLS0JbGliYy50aHJlYWRzX21pbnVzXzEtLTsKLSsJICogc2tpcCBs b2NraW5nIGlmIHByb2Nlc3MgYXBwZWFycyBzaW5nbGUtdGhyZWFkZWQuICovCi0rCWlmICghLS1s aWJjLnRocmVhZHNfbWludXNfMSkgbGliYy5uZWVkX2xvY2tzID0gLTE7Ci0gCXNlbGYtPm5leHQt PnByZXYgPSBzZWxmLT5wcmV2OwotIAlzZWxmLT5wcmV2LT5uZXh0ID0gc2VsZi0+bmV4dDsKLSAJ c2VsZi0+cHJldiA9IHNlbGYtPm5leHQgPSBzZWxmOwotQEAgLTMzOSw3ICszMzksNyBAQCBpbnQg X19wdGhyZWFkX2NyZWF0ZShwdGhyZWFkX3QgKnJlc3RyaWN0IHJlcywgY29uc3QgcHRocmVhZF9h dHRyX3QgKnJlc3RyaWN0IGF0dAotIAkJfigxVUw8PCgoU0lHQ0FOQ0VMLTEpJSg4KnNpemVvZihs b25nKSkpKTsKLSAKLSAJX190bF9sb2NrKCk7Ci0tCWxpYmMudGhyZWFkc19taW51c18xKys7Ci0r CWlmICghbGliYy50aHJlYWRzX21pbnVzXzErKykgbGliYy5uZWVkX2xvY2tzID0gMTsKLSAJcmV0 ID0gX19jbG9uZSgoYzExID8gc3RhcnRfYzExIDogc3RhcnQpLCBzdGFjaywgZmxhZ3MsIGFyZ3Ms ICZuZXctPnRpZCwgVFBfQURKKG5ldyksICZfX3RocmVhZF9saXN0X2xvY2spOwotIAotIAkvKiBB bGwgY2xvbmUgZmFpbHVyZXMgdHJhbnNsYXRlIHRvIEVBR0FJTi4gSWYgZXhwbGljaXQgc2NoZWR1 bGluZwotQEAgLTM2Myw3ICszNjMsNyBAQCBpbnQgX19wdGhyZWFkX2NyZWF0ZShwdGhyZWFkX3Qg KnJlc3RyaWN0IHJlcywgY29uc3QgcHRocmVhZF9hdHRyX3QgKnJlc3RyaWN0IGF0dAotIAkJbmV3 LT5uZXh0LT5wcmV2ID0gbmV3OwotIAkJbmV3LT5wcmV2LT5uZXh0ID0gbmV3OwotIAl9IGVsc2Ug ewotLQkJbGliYy50aHJlYWRzX21pbnVzXzEtLTsKLSsJCWlmICghLS1saWJjLnRocmVhZHNfbWlu dXNfMSkgbGliYy5uZWVkX2xvY2tzID0gMDsKLSAJfQotIAlfX3RsX3VubG9jaygpOwotIAlfX3Jl c3RvcmVfc2lncygmc2V0KTsKLS0tIAotMi4yMS4wCi0KLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9t dXNsL3BhdGNoZXMvOTlkNTA5OGE4ODVmZWFlM2FlOGMzMmI0MDczNTBkOGNhODVkZDE3OC5wYXRj aCBiL3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzk5ZDUwOThhODg1ZmVhZTNhZThjMzJiNDA3MzUwZDhj YTg1ZGQxNzgucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRlMDNhZDE2MDdj ZS4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzLzk5ZDUwOThhODg1ZmVh ZTNhZThjMzJiNDA3MzUwZDhjYTg1ZGQxNzgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxMTMg KzAsMCBAQAotRnJvbSA5OWQ1MDk4YTg4NWZlYWUzYWU4YzMyYjQwNzM1MGQ4Y2E4NWRkMTc4IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogSnVsaWVuIFJhbXNlaWVyIDxqLnJhbXNlaWVy QGdtYWlsLmNvbT4KLURhdGU6IFN1biwgMTggT2N0IDIwMjAgMTI6MTU6MDYgLTA0MDAKLVN1Ympl Y3Q6IHVwZGF0ZSBjcnlwdF9ibG93ZmlzaCB0byBzdXBwb3J0ICQyYiQgcHJlZml4Ci0KLU1lcmdl IGNoYW5nZXMgZnJvbSBTb2xhciBEZXNpZ25lcidzIGNyeXB0X2Jsb3dmaXNoIHYxLjMuIFRoaXMg bWFrZXMKLWNyeXB0X2Jsb3dmaXNoIGZ1bGx5IGNvbXBhdGlibGUgd2l0aCBPcGVuQlNEJ3MgYmNy eXB0IGJ5IGFkZGluZwotc3VwcG9ydCBmb3IgdGhlICQyYiQgcHJlZml4ICh3aGljaCBiZWhhdmVz IHRoZSBzYW1lIGFzCi1jcnlwdF9ibG93ZmlzaCdzICQyeSQpLgotLS0tCi0gc3JjL2NyeXB0L2Ny eXB0X2Jsb3dmaXNoLmMgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LQotIDEgZmlsZSBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKLQot KGxpbWl0ZWQgdG8gJ3NyYy9jcnlwdC9jcnlwdF9ibG93ZmlzaC5jJykKLQotZGlmZiAtLWdpdCBh L3NyYy9jcnlwdC9jcnlwdF9ibG93ZmlzaC5jIGIvc3JjL2NyeXB0L2NyeXB0X2Jsb3dmaXNoLmMK LWluZGV4IGQzZjc5ODUxLi5kNzIyNjA3YiAxMDA2NDQKLS0tLSBhL3NyYy9jcnlwdC9jcnlwdF9i bG93ZmlzaC5jCi0rKysgYi9zcmMvY3J5cHQvY3J5cHRfYmxvd2Zpc2guYwotQEAgLTE1LDcgKzE1 LDcgQEAKLSAgKiBObyBjb3B5cmlnaHQgaXMgY2xhaW1lZCwgYW5kIHRoZSBzb2Z0d2FyZSBpcyBo ZXJlYnkgcGxhY2VkIGluIHRoZSBwdWJsaWMKLSAgKiBkb21haW4uICBJbiBjYXNlIHRoaXMgYXR0 ZW1wdCB0byBkaXNjbGFpbSBjb3B5cmlnaHQgYW5kIHBsYWNlIHRoZSBzb2Z0d2FyZQotICAqIGlu IHRoZSBwdWJsaWMgZG9tYWluIGlzIGRlZW1lZCBudWxsIGFuZCB2b2lkLCB0aGVuIHRoZSBzb2Z0 d2FyZSBpcwotLSAqIENvcHlyaWdodCAoYykgMTk5OC0yMDEyIFNvbGFyIERlc2lnbmVyIGFuZCBp dCBpcyBoZXJlYnkgcmVsZWFzZWQgdG8gdGhlCi0rICogQ29weXJpZ2h0IChjKSAxOTk4LTIwMTQg U29sYXIgRGVzaWduZXIgYW5kIGl0IGlzIGhlcmVieSByZWxlYXNlZCB0byB0aGUKLSAgKiBnZW5l cmFsIHB1YmxpYyB1bmRlciB0aGUgZm9sbG93aW5nIHRlcm1zOgotICAqCi0gICogUmVkaXN0cmli dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0 Ci1AQCAtMzEsMTIgKzMxLDEyIEBACi0gICogeW91IHBsYWNlIHRoaXMgY29kZSBhbmQgYW55IG1v ZGlmaWNhdGlvbnMgeW91IG1ha2UgdW5kZXIgYSBsaWNlbnNlCi0gICogb2YgeW91ciBjaG9pY2Uu Ci0gICoKLS0gKiBUaGlzIGltcGxlbWVudGF0aW9uIGlzIG1vc3RseSBjb21wYXRpYmxlIHdpdGgg T3BlbkJTRCdzIGJjcnlwdC5jIChwcmVmaXgKLS0gKiAiJDJhJCIpIGJ5IE5pZWxzIFByb3ZvcyA8 cHJvdm9zIGF0IGNpdGkudW1pY2guZWR1PiwgYW5kIHVzZXMgc29tZSBvZiBoaXMKLS0gKiBpZGVh cy4gIFRoZSBwYXNzd29yZCBoYXNoaW5nIGFsZ29yaXRobSB3YXMgZGVzaWduZWQgYnkgRGF2aWQg TWF6aWVyZXMKLS0gKiA8ZG0gYXQgbGNzLm1pdC5lZHU+LiAgRm9yIG1vcmUgaW5mb3JtYXRpb24g b24gdGhlIGxldmVsIG9mIGNvbXBhdGliaWxpdHksCi0tICogcGxlYXNlIHJlZmVyIHRvIHRoZSBj b21tZW50cyBpbiBCRl9zZXRfa2V5KCkgYmVsb3cgYW5kIHRvIHRoZSBpbmNsdWRlZAotLSAqIGNy eXB0KDMpIG1hbiBwYWdlLgotKyAqIFRoaXMgaW1wbGVtZW50YXRpb24gaXMgZnVsbHkgY29tcGF0 aWJsZSB3aXRoIE9wZW5CU0QncyBiY3J5cHQuYyBmb3IgcHJlZml4Ci0rICogIiQyYiQiLCBvcmln aW5hbGx5IGJ5IE5pZWxzIFByb3ZvcyA8cHJvdm9zIGF0IGNpdGkudW1pY2guZWR1PiwgYW5kIGl0 IHVzZXMKLSsgKiBzb21lIG9mIGhpcyBpZGVhcy4gIFRoZSBwYXNzd29yZCBoYXNoaW5nIGFsZ29y aXRobSB3YXMgZGVzaWduZWQgYnkgRGF2aWQKLSsgKiBNYXppZXJlcyA8ZG0gYXQgbGNzLm1pdC5l ZHU+LiAgRm9yIGluZm9ybWF0aW9uIG9uIHRoZSBsZXZlbCBvZgotKyAqIGNvbXBhdGliaWxpdHkg Zm9yIGJjcnlwdCBoYXNoIHByZWZpeGVzIG90aGVyIHRoYW4gIiQyYiQiLCBwbGVhc2UgcmVmZXIg dG8KLSsgKiB0aGUgY29tbWVudHMgaW4gQkZfc2V0X2tleSgpIGJlbG93IGFuZCB0byB0aGUgaW5j bHVkZWQgY3J5cHQoMykgbWFuIHBhZ2UuCi0gICoKLSAgKiBUaGVyZSdzIGEgcGFwZXIgb24gdGhl IGFsZ29yaXRobSB0aGF0IGV4cGxhaW5zIGl0cyBkZXNpZ24gZGVjaXNpb25zOgotICAqCi1AQCAt NTMzLDYgKzUzMyw3IEBAIHN0YXRpYyB2b2lkIEJGX3NldF9rZXkoY29uc3QgY2hhciAqa2V5LCBC Rl9rZXkgZXhwYW5kZWQsIEJGX2tleSBpbml0aWFsLAotICAqIFZhbGlkIGNvbWJpbmF0aW9ucyBv ZiBzZXR0aW5ncyBhcmU6Ci0gICoKLSAgKiBQcmVmaXggIiQyYSQiOiBidWcgPSAwLCBzYWZldHkg PSAweDEwMDAwCi0rICogUHJlZml4ICIkMmIkIjogYnVnID0gMCwgc2FmZXR5ID0gMAotICAqIFBy ZWZpeCAiJDJ4JCI6IGJ1ZyA9IDEsIHNhZmV0eSA9IDAKLSAgKiBQcmVmaXggIiQyeSQiOiBidWcg PSAwLCBzYWZldHkgPSAwCi0gICovCi1AQCAtNTk2LDEyICs1OTcsMTQgQEAgc3RhdGljIHZvaWQg QkZfc2V0X2tleShjb25zdCBjaGFyICprZXksIEJGX2tleSBleHBhbmRlZCwgQkZfa2V5IGluaXRp YWwsCi0gCWluaXRpYWxbMF0gXj0gc2lnbjsKLSB9Ci0gCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgZmxhZ3NfYnlfc3VidHlwZVsyNl0gPSB7Ci0rCTIsIDQsIDAsIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDAsIDAsIDAsCi0rCTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEsIDQsIDAK LSt9OwotKwotIHN0YXRpYyBjaGFyICpCRl9jcnlwdChjb25zdCBjaGFyICprZXksIGNvbnN0IGNo YXIgKnNldHRpbmcsCi0gCWNoYXIgKm91dHB1dCwgQkZfd29yZCBtaW4pCi0gewotLQlzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBmbGFnc19ieV9zdWJ0eXBlWzI2XSA9Ci0tCQl7MiwgMCwgMCwg MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLS0JCTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDEsIDQsIDB9OwotIAlzdHJ1Y3QgewotIAkJQkZfY3R4IGN0eDsKLSAJCUJGX2tleSBl eHBhbmRlZF9rZXk7Ci1AQCAtNzQ2LDkgKzc0OSwxMSBAQCBjaGFyICpfX2NyeXB0X2Jsb3dmaXNo KGNvbnN0IGNoYXIgKmtleSwgY29uc3QgY2hhciAqc2V0dGluZywgY2hhciAqb3V0cHV0KQotIHsK LSAJY29uc3QgY2hhciAqdGVzdF9rZXkgPSAiOGIgXHhkMFx4YzFceGQyXHhjZlx4Y2NceGQ4IjsK LSAJY29uc3QgY2hhciAqdGVzdF9zZXR0aW5nID0gIiQyYSQwMCRhYmNkZWZnaGlqa2xtbm9wcXJz dHV1IjsKLS0Jc3RhdGljIGNvbnN0IGNoYXIgdGVzdF9oYXNoWzJdWzM0XSA9Ci0tCQl7IlZVclBt WEQ2cS9uVlNTcDdwTkRoQ1I5MDcxSWZJUmVcMFx4NTUiLCAvKiAkMngkICovCi0tCQkiaTFENzA5 dmZhbXVsaW1sR2NxMHFxM1V2dVVhc3ZFYVwwXHg1NSJ9OyAvKiAkMmEkLCAkMnkkICovCi0rCXN0 YXRpYyBjb25zdCBjaGFyIHRlc3RfaGFzaGVzWzJdWzM0XSA9IHsKLSsJCSJpMUQ3MDl2ZmFtdWxp bWxHY3EwcXEzVXZ1VWFzdkVhXDBceDU1IiwgLyogJ2EnLCAnYicsICd5JyAqLwotKwkJIlZVclBt WEQ2cS9uVlNTcDdwTkRoQ1I5MDcxSWZJUmVcMFx4NTUiLCAvKiAneCcgKi8KLSsJfTsKLSsJY29u c3QgY2hhciAqdGVzdF9oYXNoID0gdGVzdF9oYXNoZXNbMF07Ci0gCWNoYXIgKnJldHZhbDsKLSAJ Y29uc3QgY2hhciAqcDsKLSAJaW50IG9rOwotQEAgLTc2OCw4ICs3NzMsMTEgQEAgY2hhciAqX19j cnlwdF9ibG93ZmlzaChjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnNldHRpbmcsIGNoYXIg Km91dHB1dCkKLSAgKiBkZXRlY3RlZCBieSB0aGUgc2VsZi10ZXN0LgotICAqLwotIAltZW1jcHko YnVmLnMsIHRlc3Rfc2V0dGluZywgc2l6ZW9mKGJ1Zi5zKSk7Ci0tCWlmIChyZXR2YWwpCi0rCWlm IChyZXR2YWwpIHsKLSsJCXVuc2lnbmVkIGludCBmbGFncyA9IGZsYWdzX2J5X3N1YnR5cGVbc2V0 dGluZ1syXSAtICdhJ107Ci0rCQl0ZXN0X2hhc2ggPSB0ZXN0X2hhc2hlc1tmbGFncyAmIDFdOwot IAkJYnVmLnNbMl0gPSBzZXR0aW5nWzJdOwotKwl9Ci0gCW1lbXNldChidWYubywgMHg1NSwgc2l6 ZW9mKGJ1Zi5vKSk7Ci0gCWJ1Zi5vW3NpemVvZihidWYubykgLSAxXSA9IDA7Ci0gCXAgPSBCRl9j cnlwdCh0ZXN0X2tleSwgYnVmLnMsIGJ1Zi5vLCAxKTsKLUBAIC03NzcsNyArNzg1LDcgQEAgY2hh ciAqX19jcnlwdF9ibG93ZmlzaChjb25zdCBjaGFyICprZXksIGNvbnN0IGNoYXIgKnNldHRpbmcs IGNoYXIgKm91dHB1dCkKLSAJb2sgPSAocCA9PSBidWYubyAmJgotIAkgICAgIW1lbWNtcChwLCBi dWYucywgNyArIDIyKSAmJgotIAkgICAgIW1lbWNtcChwICsgKDcgKyAyMiksCi0tCSAgICB0ZXN0 X2hhc2hbYnVmLnNbMl0gJiAxXSwKLSsJICAgIHRlc3RfaGFzaCwKLSAJICAgIDMxICsgMSArIDEg KyAxKSk7Ci0gCi0gCXsKLS0tIAotY2dpdCB2MS4yLjEKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9t dXNsL3BhdGNoZXMvQ1ZFLTIwMjAtMjg5MjgucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hlcy9D VkUtMjAyMC0yODkyOC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjNmZjNi NGVlMDhmLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvQ1ZFLTIwMjAt Mjg5MjgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBACi0tLS0gYS9zcmMvbXVs dGlieXRlL3djc25ydG9tYnMuYwotKysrIGIvc3JjL211bHRpYnl0ZS93Y3NucnRvbWJzLmMKLUBA IC0xLDQxICsxLDMzIEBACi0gI2luY2x1ZGUgPHdjaGFyLmg+Ci0rI2luY2x1ZGUgPGxpbWl0cy5o PgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSAKLSBzaXplX3Qgd2NzbnJ0b21icyhjaGFyICpyZXN0 cmljdCBkc3QsIGNvbnN0IHdjaGFyX3QgKipyZXN0cmljdCB3Y3MsIHNpemVfdCB3biwgc2l6ZV90 IG4sIG1ic3RhdGVfdCAqcmVzdHJpY3Qgc3QpCi0gewotLQlzaXplX3QgbCwgY250PTAsIG4yOwot LQljaGFyICpzLCBidWZbMjU2XTsKLSAJY29uc3Qgd2NoYXJfdCAqd3MgPSAqd2NzOwotLQljb25z dCB3Y2hhcl90ICp0bXBfd3M7Ci0tCi0tCWlmICghZHN0KSBzID0gYnVmLCBuID0gc2l6ZW9mIGJ1 ZjsKLS0JZWxzZSBzID0gZHN0OwotLQotLQl3aGlsZSAoIHdzICYmIG4gJiYgKCAobjI9d24pPj1u IHx8IG4yPjMyICkgKSB7Ci0tCQlpZiAobjI+PW4pIG4yPW47Ci0tCQl0bXBfd3MgPSB3czsKLS0J CWwgPSB3Y3NydG9tYnMocywgJndzLCBuMiwgMCk7Ci0tCQlpZiAoIShsKzEpKSB7Ci0tCQkJY250 ID0gbDsKLS0JCQluID0gMDsKLSsJc2l6ZV90IGNudCA9IDA7Ci0rCWlmICghZHN0KSBuPTA7Ci0r CXdoaWxlICh3cyAmJiB3bikgewotKwkJY2hhciB0bXBbTUJfTEVOX01BWF07Ci0rCQlzaXplX3Qg bCA9IHdjcnRvbWIobjxNQl9MRU5fTUFYID8gdG1wIDogZHN0LCAqd3MsIDApOwotKwkJaWYgKGw9 PS0xKSB7Ci0rCQkJY250ID0gLTE7Ci0gCQkJYnJlYWs7Ci0gCQl9Ci0tCQlpZiAocyAhPSBidWYp IHsKLS0JCQlzICs9IGw7Ci0rCQlpZiAoZHN0KSB7Ci0rCQkJaWYgKG48TUJfTEVOX01BWCkgewot KwkJCQlpZiAobD5uKSBicmVhazsKLSsJCQkJbWVtY3B5KGRzdCwgdG1wLCBsKTsKLSsJCQl9Ci0r CQkJZHN0ICs9IGw7Ci0gCQkJbiAtPSBsOwotIAkJfQotLQkJd24gPSB3cyA/IHduIC0gKHdzIC0g dG1wX3dzKSA6IDA7Ci0tCQljbnQgKz0gbDsKLS0JfQotLQlpZiAod3MpIHdoaWxlIChuICYmIHdu KSB7Ci0tCQlsID0gd2NydG9tYihzLCAqd3MsIDApOwotLQkJaWYgKChsKzEpPD0xKSB7Ci0tCQkJ aWYgKCFsKSB3cyA9IDA7Ci0tCQkJZWxzZSBjbnQgPSBsOwotKwkJaWYgKCEqd3MpIHsKLSsJCQl3 cyA9IDA7Ci0gCQkJYnJlYWs7Ci0gCQl9Ci0tCQl3cysrOyB3bi0tOwotLQkJLyogc2FmZSAtIHRo aXMgbG9vcCBydW5zIGZld2VyIHRoYW4gc2l6ZW9mKGJ1ZikgdGltZXMgKi8KLS0JCXMrPWw7IG4t PWw7Ci0rCQl3cysrOwotKwkJd24tLTsKLSAJCWNudCArPSBsOwotIAl9Ci0gCWlmIChkc3QpICp3 Y3MgPSB3czsKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvYWFyY2g2NC1mcmVn cy5wYXRjaCBiL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2FhcmNoNjQtZnJlZ3MucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAyNGVlZDExYThlNS4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2FhcmNoNjQtZnJlZ3MucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwzNyArMCwwIEBACi1Vc2UgdHlwZXMgY29tcGF0aWJsZSB3aXRoIGdsaWJjL2tlcm5lbCBo ZWFkZXJzLgotCi1kaWZmIC0tZ2l0IGEvYXJjaC9hYXJjaDY0L2JpdHMvc2lnbmFsLmggYi9hcmNo L2FhcmNoNjQvYml0cy9zaWduYWwuaAotaW5kZXggYjcxMjYxZjUuLjUwOThjNzM0IDEwMDY0NAot LS0tIGEvYXJjaC9hYXJjaDY0L2JpdHMvc2lnbmFsLmgKLSsrKyBiL2FyY2gvYWFyY2g2NC9iaXRz L3NpZ25hbC5oCi1AQCAtMTEsNyArMTEsNyBAQCB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgZ3JlZ190 OwotIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBncmVnc2V0X3RbMzRdOwotIAotIHR5cGVkZWYgc3Ry dWN0IHsKLS0JbG9uZyBkb3VibGUgdnJlZ3NbMzJdOwotKwlfX3VpbnQxMjhfdCB2cmVnc1szMl07 Ci0gCXVuc2lnbmVkIGludCBmcHNyOwotIAl1bnNpZ25lZCBpbnQgZnBjcjsKLSB9IGZwcmVnc2V0 X3Q7Ci1AQCAtMzQsNyArMzQsNyBAQCBzdHJ1Y3QgZnBzaW1kX2NvbnRleHQgewotIAlzdHJ1Y3Qg X2FhcmNoNjRfY3R4IGhlYWQ7Ci0gCXVuc2lnbmVkIGludCBmcHNyOwotIAl1bnNpZ25lZCBpbnQg ZnBjcjsKLS0JbG9uZyBkb3VibGUgdnJlZ3NbMzJdOwotKwlfX3VpbnQxMjhfdCB2cmVnc1szMl07 Ci0gfTsKLSBzdHJ1Y3QgZXNyX2NvbnRleHQgewotIAlzdHJ1Y3QgX2FhcmNoNjRfY3R4IGhlYWQ7 Ci1kaWZmIC0tZ2l0IGEvYXJjaC9hYXJjaDY0L2JpdHMvdXNlci5oIGIvYXJjaC9hYXJjaDY0L2Jp dHMvdXNlci5oCi1pbmRleCBkMTJjZGY3Zi4uOGExMDAyYWEgMTAwNjQ0Ci0tLS0gYS9hcmNoL2Fh cmNoNjQvYml0cy91c2VyLmgKLSsrKyBiL2FyY2gvYWFyY2g2NC9iaXRzL3VzZXIuaAotQEAgLTYs NyArNiw3IEBAIHN0cnVjdCB1c2VyX3JlZ3Nfc3RydWN0IHsKLSB9OwotIAotIHN0cnVjdCB1c2Vy X2Zwc2ltZF9zdHJ1Y3QgewotLQlsb25nIGRvdWJsZSB2cmVnc1szMl07Ci0rCV9fdWludDEyOF90 IHZyZWdzWzMyXTsKLSAJdW5zaWduZWQgaW50IGZwc3I7Ci0gCXVuc2lnbmVkIGludCBmcGNyOwot IH07CmRpZmYgLS1naXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9hZGQtcXNvcnRfci5wYXRjaCBi L3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2FkZC1xc29ydF9yLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAzZDg1NDk2YWZiNjkuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211 c2wvcGF0Y2hlcy9hZGQtcXNvcnRfci5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIwMSArMCww IEBACi1Gcm9tIGI3NmYzN2ZkNTYyNWQwMzgxNDFiNTIxODQ5NTZmYjRiNzgzOGU5YTUgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/PUMzPTg5cmljbz0yME5vZ3VlaXJh Pz0gPGVyaWNvbnJAZGlzcm9vdC5vcmc+Ci1EYXRlOiBUdWUsIDkgTWFyIDIwMjEgMTg6MDI6MTMg LTAzMDAKLVN1YmplY3Q6IFtQQVRDSF0gYWRkIHFzb3J0X3IgYW5kIG1ha2UgcXNvcnQgYSB3cmFw cGVyIGFyb3VuZCBpdAotCi13ZSBtYWtlIHFzb3J0IGEgd3JhcHBlciBieSBwcm92aWRpbmcgYSB3 cmFwcGVyX2NtcCBmdW5jdGlvbiB0aGF0IHVzZXMKLXRoZSBleHRyYSBhcmd1bWVudCBhcyBhIGZ1 bmN0aW9uIHBvaW50ZXIuIHNob3VsZCBiZSBvcHRpbWl6ZWQgdG8gYSB0YWlsCi1jYWxsIG9uIG1v c3QgYXJjaGl0ZWN0dXJlcywgYXMgbG9uZyBhcyBpdCdzIGJ1aWx0IHdpdGgKLS1mb21pdC1mcmFt ZS1wb2ludGVyLCBzbyB0aGUgcGVyZm9ybWFuY2UgaW1wYWN0IHNob3VsZCBiZSBtaW5pbWFsLgot Ci10byBrZWVwIHRoZSBnaXQgaGlzdG9yeSBjbGVhbiwgZm9yIG5vdyBxc29ydF9yIGlzIGltcGxl bWVudGVkIGluIHFzb3J0LmMKLWFuZCBxc29ydCBpcyBpbXBsZW1lbnRlZCBpbiBxc29ydF9uci5j LiAgcXNvcnQuYyBhbHNvIHJlY2VpdmVkIGEgZmV3Ci10cml2aWFsIGNsZWFudXBzLCBpbmNsdWRp bmcgcmVwbGFjaW5nICgqY21wKSgpIGNhbGxzIHdpdGggY21wKCkuCi1xc29ydF9uci5jIGNvbnRh aW5zIG9ubHkgd3JhcHBlcl9jbXAgYW5kIHFzb3J0IGFzIGEgcXNvcnRfciB3cmFwcGVyCi1pdHNl bGYuCi0tLS0KLSBpbmNsdWRlL3N0ZGxpYi5oICAgICAgfCAgMSArCi0gc3JjL2luY2x1ZGUvc3Rk bGliLmggIHwgIDEgKwotIHNyYy9zdGRsaWIvcXNvcnQuYyAgICB8IDM3ICsrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tLS0KLSBzcmMvc3RkbGliL3Fzb3J0X25yLmMgfCAxNCArKysr KysrKysrKysrKwotIDQgZmlsZXMgY2hhbmdlZCwgMzYgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRp b25zKC0pCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9zdGRsaWIvcXNvcnRfbnIuYwotCi1kaWZm IC0tZ2l0IGEvaW5jbHVkZS9zdGRsaWIuaCBiL2luY2x1ZGUvc3RkbGliLmgKLWluZGV4IGI1NGEw NTFmZS4uN2FmODZlM2JjIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9zdGRsaWIuaAotKysrIGIvaW5j bHVkZS9zdGRsaWIuaAotQEAgLTE0Niw2ICsxNDYsNyBAQCBpbnQgY2xlYXJlbnYodm9pZCk7Ci0g I2RlZmluZSBXQ09SRURVTVAocykgKChzKSAmIDB4ODApCi0gI2RlZmluZSBXSUZDT05USU5VRUQo cykgKChzKSA9PSAweGZmZmYpCi0gdm9pZCAqcmVhbGxvY2FycmF5ICh2b2lkICosIHNpemVfdCwg c2l6ZV90KTsKLSt2b2lkIHFzb3J0X3IgKHZvaWQgKiwgc2l6ZV90LCBzaXplX3QsIGludCAoKiko Y29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICosIHZvaWQgKiksIHZvaWQgKik7Ci0gI2VuZGlmCi0g Ci0gI2lmZGVmIF9HTlVfU09VUkNFCi1kaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvc3RkbGliLmgg Yi9zcmMvaW5jbHVkZS9zdGRsaWIuaAotaW5kZXggZTlkYTIwMTU4Li44MTJiMDRkZTIgMTAwNjQ0 Ci0tLS0gYS9zcmMvaW5jbHVkZS9zdGRsaWIuaAotKysrIGIvc3JjL2luY2x1ZGUvc3RkbGliLmgK LUBAIC04LDYgKzgsNyBAQCBoaWRkZW4gdm9pZCBfX2Vudl9ybV9hZGQoY2hhciAqLCBjaGFyICop OwotIGhpZGRlbiBpbnQgX19ta29zdGVtcHMoY2hhciAqLCBpbnQsIGludCk7Ci0gaGlkZGVuIGlu dCBfX3B0c25hbWVfcihpbnQsIGNoYXIgKiwgc2l6ZV90KTsKLSBoaWRkZW4gY2hhciAqX19yYW5k bmFtZShjaGFyICopOwotK2hpZGRlbiB2b2lkIF9fcXNvcnRfciAodm9pZCAqLCBzaXplX3QsIHNp emVfdCwgaW50ICgqKShjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKiwgdm9pZCAqKSwgdm9pZCAq KTsKLSAKLSBoaWRkZW4gdm9pZCAqX19saWJjX21hbGxvYyhzaXplX3QpOwotIGhpZGRlbiB2b2lk ICpfX2xpYmNfbWFsbG9jX2ltcGwoc2l6ZV90KTsKLWRpZmYgLS1naXQgYS9zcmMvc3RkbGliL3Fz b3J0LmMgYi9zcmMvc3RkbGliL3Fzb3J0LmMKLWluZGV4IGRhNThmZDMxNy4uMzE0ZGRjMjlkIDEw MDY0NAotLS0tIGEvc3JjL3N0ZGxpYi9xc29ydC5jCi0rKysgYi9zcmMvc3RkbGliL3Fzb3J0LmMK LUBAIC0yNCw2ICsyNCw3IEBACi0gLyogU21vb3Roc29ydCwgYW4gYWRhcHRpdmUgdmFyaWFudCBv ZiBIZWFwc29ydC4gIE1lbW9yeSB1c2FnZTogTygxKS4KLSAgICBSdW4gdGltZTogV29yc3QgY2Fz ZSBPKG4gbG9nIG4pLCBjbG9zZSB0byBPKG4pIGluIHRoZSBtb3N0bHktc29ydGVkIGNhc2UuICov Ci0gCi0rI2RlZmluZSBfQlNEX1NPVVJDRQotICNpbmNsdWRlIDxzdGRpbnQuaD4KLSAjaW5jbHVk ZSA8c3RkbGliLmg+Ci0gI2luY2x1ZGUgPHN0cmluZy5oPgotQEAgLTMxLDcgKzMyLDcgQEAKLSAj aW5jbHVkZSAiYXRvbWljLmgiCi0gI2RlZmluZSBudHooeCkgYV9jdHpfbCgoeCkpCi0gCi0tdHlw ZWRlZiBpbnQgKCpjbXBmdW4pKGNvbnN0IHZvaWQgKiwgY29uc3Qgdm9pZCAqKTsKLSt0eXBlZGVm IGludCAoKmNtcGZ1bikoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICosIHZvaWQgKik7Ci0gCi0g c3RhdGljIGlubGluZSBpbnQgcG50eihzaXplX3QgcFsyXSkgewotIAlpbnQgciA9IG50eihwWzBd IC0gMSk7Ci1AQCAtODgsNyArODksNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgc2hyKHNpemVfdCBw WzJdLCBpbnQgbikKLSAJcFsxXSA+Pj0gbjsKLSB9Ci0gCi0tc3RhdGljIHZvaWQgc2lmdCh1bnNp Z25lZCBjaGFyICpoZWFkLCBzaXplX3Qgd2lkdGgsIGNtcGZ1biBjbXAsIGludCBwc2hpZnQsIHNp emVfdCBscFtdKQotK3N0YXRpYyB2b2lkIHNpZnQodW5zaWduZWQgY2hhciAqaGVhZCwgc2l6ZV90 IHdpZHRoLCBjbXBmdW4gY21wLCB2b2lkICphcmcsIGludCBwc2hpZnQsIHNpemVfdCBscFtdKQot IHsKLSAJdW5zaWduZWQgY2hhciAqcnQsICpsZjsKLSAJdW5zaWduZWQgY2hhciAqYXJbMTQgKiBz aXplb2Yoc2l6ZV90KSArIDFdOwotQEAgLTk5LDEwICsxMDAsMTAgQEAgc3RhdGljIHZvaWQgc2lm dCh1bnNpZ25lZCBjaGFyICpoZWFkLCBzaXplX3Qgd2lkdGgsIGNtcGZ1biBjbXAsIGludCBwc2hp ZnQsIHNpemUKLSAJCXJ0ID0gaGVhZCAtIHdpZHRoOwotIAkJbGYgPSBoZWFkIC0gd2lkdGggLSBs cFtwc2hpZnQgLSAyXTsKLSAKLS0JCWlmKCgqY21wKShhclswXSwgbGYpID49IDAgJiYgKCpjbXAp KGFyWzBdLCBydCkgPj0gMCkgewotKwkJaWYoY21wKGFyWzBdLCBsZiwgYXJnKSA+PSAwICYmIGNt cChhclswXSwgcnQsIGFyZykgPj0gMCkgewotIAkJCWJyZWFrOwotIAkJfQotLQkJaWYoKCpjbXAp KGxmLCBydCkgPj0gMCkgewotKwkJaWYoY21wKGxmLCBydCwgYXJnKSA+PSAwKSB7Ci0gCQkJYXJb aSsrXSA9IGxmOwotIAkJCWhlYWQgPSBsZjsKLSAJCQlwc2hpZnQgLT0gMTsKLUBAIC0xMTUsNyAr MTE2LDcgQEAgc3RhdGljIHZvaWQgc2lmdCh1bnNpZ25lZCBjaGFyICpoZWFkLCBzaXplX3Qgd2lk dGgsIGNtcGZ1biBjbXAsIGludCBwc2hpZnQsIHNpemUKLSAJY3ljbGUod2lkdGgsIGFyLCBpKTsK LSB9Ci0gCi0tc3RhdGljIHZvaWQgdHJpbmtsZSh1bnNpZ25lZCBjaGFyICpoZWFkLCBzaXplX3Qg d2lkdGgsIGNtcGZ1biBjbXAsIHNpemVfdCBwcFsyXSwgaW50IHBzaGlmdCwgaW50IHRydXN0eSwg c2l6ZV90IGxwW10pCi0rc3RhdGljIHZvaWQgdHJpbmtsZSh1bnNpZ25lZCBjaGFyICpoZWFkLCBz aXplX3Qgd2lkdGgsIGNtcGZ1biBjbXAsIHZvaWQgKmFyZywgc2l6ZV90IHBwWzJdLCBpbnQgcHNo aWZ0LCBpbnQgdHJ1c3R5LCBzaXplX3QgbHBbXSkKLSB7Ci0gCXVuc2lnbmVkIGNoYXIgKnN0ZXBz b24sCi0gCSAgICAgICAgICAgICAgKnJ0LCAqbGY7Ci1AQCAtMTMwLDEzICsxMzEsMTMgQEAgc3Rh dGljIHZvaWQgdHJpbmtsZSh1bnNpZ25lZCBjaGFyICpoZWFkLCBzaXplX3Qgd2lkdGgsIGNtcGZ1 biBjbXAsIHNpemVfdCBwcFsyXSwKLSAJYXJbMF0gPSBoZWFkOwotIAl3aGlsZShwWzBdICE9IDEg fHwgcFsxXSAhPSAwKSB7Ci0gCQlzdGVwc29uID0gaGVhZCAtIGxwW3BzaGlmdF07Ci0tCQlpZigo KmNtcCkoc3RlcHNvbiwgYXJbMF0pIDw9IDApIHsKLSsJCWlmKGNtcChzdGVwc29uLCBhclswXSwg YXJnKSA8PSAwKSB7Ci0gCQkJYnJlYWs7Ci0gCQl9Ci0gCQlpZighdHJ1c3R5ICYmIHBzaGlmdCA+ IDEpIHsKLSAJCQlydCA9IGhlYWQgLSB3aWR0aDsKLSAJCQlsZiA9IGhlYWQgLSB3aWR0aCAtIGxw W3BzaGlmdCAtIDJdOwotLQkJCWlmKCgqY21wKShydCwgc3RlcHNvbikgPj0gMCB8fCAoKmNtcCko bGYsIHN0ZXBzb24pID49IDApIHsKLSsJCQlpZihjbXAocnQsIHN0ZXBzb24sIGFyZykgPj0gMCB8 fCBjbXAobGYsIHN0ZXBzb24sIGFyZykgPj0gMCkgewotIAkJCQlicmVhazsKLSAJCQl9Ci0gCQl9 Ci1AQCAtMTUwLDExICsxNTEsMTEgQEAgc3RhdGljIHZvaWQgdHJpbmtsZSh1bnNpZ25lZCBjaGFy ICpoZWFkLCBzaXplX3Qgd2lkdGgsIGNtcGZ1biBjbXAsIHNpemVfdCBwcFsyXSwKLSAJfQotIAlp ZighdHJ1c3R5KSB7Ci0gCQljeWNsZSh3aWR0aCwgYXIsIGkpOwotLQkJc2lmdChoZWFkLCB3aWR0 aCwgY21wLCBwc2hpZnQsIGxwKTsKLSsJCXNpZnQoaGVhZCwgd2lkdGgsIGNtcCwgYXJnLCBwc2hp ZnQsIGxwKTsKLSAJfQotIH0KLSAKLS12b2lkIHFzb3J0KHZvaWQgKmJhc2UsIHNpemVfdCBuZWws IHNpemVfdCB3aWR0aCwgY21wZnVuIGNtcCkKLSt2b2lkIF9fcXNvcnRfcih2b2lkICpiYXNlLCBz aXplX3QgbmVsLCBzaXplX3Qgd2lkdGgsIGNtcGZ1biBjbXAsIHZvaWQgKmFyZykKLSB7Ci0gCXNp emVfdCBscFsxMipzaXplb2Yoc2l6ZV90KV07Ci0gCXNpemVfdCBpLCBzaXplID0gd2lkdGggKiBu ZWw7Ci1AQCAtMTczLDE2ICsxNzQsMTYgQEAgdm9pZCBxc29ydCh2b2lkICpiYXNlLCBzaXplX3Qg bmVsLCBzaXplX3Qgd2lkdGgsIGNtcGZ1biBjbXApCi0gCi0gCXdoaWxlKGhlYWQgPCBoaWdoKSB7 Ci0gCQlpZigocFswXSAmIDMpID09IDMpIHsKLS0JCQlzaWZ0KGhlYWQsIHdpZHRoLCBjbXAsIHBz aGlmdCwgbHApOwotKwkJCXNpZnQoaGVhZCwgd2lkdGgsIGNtcCwgYXJnLCBwc2hpZnQsIGxwKTsK LSAJCQlzaHIocCwgMik7Ci0gCQkJcHNoaWZ0ICs9IDI7Ci0gCQl9IGVsc2UgewotIAkJCWlmKGxw W3BzaGlmdCAtIDFdID49IGhpZ2ggLSBoZWFkKSB7Ci0tCQkJCXRyaW5rbGUoaGVhZCwgd2lkdGgs IGNtcCwgcCwgcHNoaWZ0LCAwLCBscCk7Ci0rCQkJCXRyaW5rbGUoaGVhZCwgd2lkdGgsIGNtcCwg YXJnLCBwLCBwc2hpZnQsIDAsIGxwKTsKLSAJCQl9IGVsc2UgewotLQkJCQlzaWZ0KGhlYWQsIHdp ZHRoLCBjbXAsIHBzaGlmdCwgbHApOwotKwkJCQlzaWZ0KGhlYWQsIHdpZHRoLCBjbXAsIGFyZywg cHNoaWZ0LCBscCk7Ci0gCQkJfQotLQkJCQotKwotIAkJCWlmKHBzaGlmdCA9PSAxKSB7Ci0gCQkJ CXNobChwLCAxKTsKLSAJCQkJcHNoaWZ0ID0gMDsKLUBAIC0xOTEsMTIgKzE5MiwxMiBAQCB2b2lk IHFzb3J0KHZvaWQgKmJhc2UsIHNpemVfdCBuZWwsIHNpemVfdCB3aWR0aCwgY21wZnVuIGNtcCkK LSAJCQkJcHNoaWZ0ID0gMTsKLSAJCQl9Ci0gCQl9Ci0tCQkKLSsKLSAJCXBbMF0gfD0gMTsKLSAJ CWhlYWQgKz0gd2lkdGg7Ci0gCX0KLSAKLS0JdHJpbmtsZShoZWFkLCB3aWR0aCwgY21wLCBwLCBw c2hpZnQsIDAsIGxwKTsKLSsJdHJpbmtsZShoZWFkLCB3aWR0aCwgY21wLCBhcmcsIHAsIHBzaGlm dCwgMCwgbHApOwotIAotIAl3aGlsZShwc2hpZnQgIT0gMSB8fCBwWzBdICE9IDEgfHwgcFsxXSAh PSAwKSB7Ci0gCQlpZihwc2hpZnQgPD0gMSkgewotQEAgLTIwOCwxMSArMjA5LDEzIEBAIHZvaWQg cXNvcnQodm9pZCAqYmFzZSwgc2l6ZV90IG5lbCwgc2l6ZV90IHdpZHRoLCBjbXBmdW4gY21wKQot IAkJCXBzaGlmdCAtPSAyOwotIAkJCXBbMF0gXj0gNzsKLSAJCQlzaHIocCwgMSk7Ci0tCQkJdHJp bmtsZShoZWFkIC0gbHBbcHNoaWZ0XSAtIHdpZHRoLCB3aWR0aCwgY21wLCBwLCBwc2hpZnQgKyAx LCAxLCBscCk7Ci0rCQkJdHJpbmtsZShoZWFkIC0gbHBbcHNoaWZ0XSAtIHdpZHRoLCB3aWR0aCwg Y21wLCBhcmcsIHAsIHBzaGlmdCArIDEsIDEsIGxwKTsKLSAJCQlzaGwocCwgMSk7Ci0gCQkJcFsw XSB8PSAxOwotLQkJCXRyaW5rbGUoaGVhZCAtIHdpZHRoLCB3aWR0aCwgY21wLCBwLCBwc2hpZnQs IDEsIGxwKTsKLSsJCQl0cmlua2xlKGhlYWQgLSB3aWR0aCwgd2lkdGgsIGNtcCwgYXJnLCBwLCBw c2hpZnQsIDEsIGxwKTsKLSAJCX0KLSAJCWhlYWQgLT0gd2lkdGg7Ci0gCX0KLSB9Ci0rCi0rd2Vh a19hbGlhcyhfX3Fzb3J0X3IsIHFzb3J0X3IpOwotZGlmZiAtLWdpdCBhL3NyYy9zdGRsaWIvcXNv cnRfbnIuYyBiL3NyYy9zdGRsaWIvcXNvcnRfbnIuYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWlu ZGV4IDAwMDAwMDAwMC4uZWZlN2NjZWNkCi0tLS0gL2Rldi9udWxsCi0rKysgYi9zcmMvc3RkbGli L3Fzb3J0X25yLmMKLUBAIC0wLDAgKzEsMTQgQEAKLSsjZGVmaW5lIF9CU0RfU09VUkNFCi0rI2lu Y2x1ZGUgPHN0ZGxpYi5oPgotKwotK3R5cGVkZWYgaW50ICgqY21wZnVuKShjb25zdCB2b2lkICos IGNvbnN0IHZvaWQgKik7Ci0rCi0rc3RhdGljIGludCB3cmFwcGVyX2NtcChjb25zdCB2b2lkICp2 MSwgY29uc3Qgdm9pZCAqdjIsIHZvaWQgKmNtcCkKLSt7Ci0rCXJldHVybiAoKGNtcGZ1biljbXAp KHYxLCB2Mik7Ci0rfQotKwotK3ZvaWQgcXNvcnQodm9pZCAqYmFzZSwgc2l6ZV90IG5lbCwgc2l6 ZV90IHdpZHRoLCBjbXBmdW4gY21wKQotK3sKLSsJX19xc29ydF9yKGJhc2UsIG5lbCwgd2lkdGgs IHdyYXBwZXJfY21wLCBjbXApOwotK30KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVz L2FkZC1zdXBwb3J0LWZvci1TSUdFVl9USFJFQURfSUQtdGltZXJzLnBhdGNoIGIvc3JjcGtncy9t dXNsL3BhdGNoZXMvYWRkLXN1cHBvcnQtZm9yLVNJR0VWX1RIUkVBRF9JRC10aW1lcnMucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyMGRmZjViYTBkNC4uMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2FkZC1zdXBwb3J0LWZvci1TSUdFVl9USFJFQURf SUQtdGltZXJzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotRnJvbSA3Yzcx NzkyZTg3NjkxNDUxZjJhNmI3NjM0OGU4M2FkMTg4OWYxZGNiIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQotRnJvbTogSmFtZXMgWSBLbmlnaHQgPGp5a25pZ2h0QGdvb2dsZS5jb20+Ci1EYXRlOiBT dW4sIDMwIEp1biAyMDE5IDIxOjU1OjIwIC0wNDAwCi1TdWJqZWN0OiBbUEFUQ0hdIGFkZCBzdXBw b3J0IGZvciBTSUdFVl9USFJFQURfSUQgdGltZXJzCi0KLVRoaXMgaXMgbGlrZSBTSUdFVl9TSUdO QUwsIGJ1dCB0YXJnZXRlZCB0byBhIHBhcnRpY3VsYXIgdGhyZWFkJ3MKLXRpZCwgcmF0aGVyIHRo YW4gdGhlIHByb2Nlc3MuCi0tLS0KLSBpbmNsdWRlL3NpZ25hbC5oICAgICAgICB8IDE2ICsrKysr KysrKysrKystLS0KLSBzcmMvdGltZS90aW1lcl9jcmVhdGUuYyB8ICA4ICsrKysrKy0tCi0gMiBm aWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQotCi1kaWZmIC0t Z2l0IGEvaW5jbHVkZS9zaWduYWwuaCBiL2luY2x1ZGUvc2lnbmFsLmgKLWluZGV4IGZiZGY2Njdi Mi4uOWVkOTI5ZTRmIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9zaWduYWwuaAotKysrIGIvaW5jbHVk ZS9zaWduYWwuaAotQEAgLTE4MCwxNCArMTgwLDI0IEBAIHN0cnVjdCBzaWdldmVudCB7Ci0gCXVu aW9uIHNpZ3ZhbCBzaWdldl92YWx1ZTsKLSAJaW50IHNpZ2V2X3NpZ25vOwotIAlpbnQgc2lnZXZf bm90aWZ5OwotLQl2b2lkICgqc2lnZXZfbm90aWZ5X2Z1bmN0aW9uKSh1bmlvbiBzaWd2YWwpOwot LQlwdGhyZWFkX2F0dHJfdCAqc2lnZXZfbm90aWZ5X2F0dHJpYnV0ZXM7Ci0tCWNoYXIgX19wYWRb NTYtMypzaXplb2YobG9uZyldOwotKwl1bmlvbiB7Ci0rCQljaGFyIF9fcGFkWzY0IC0gMipzaXpl b2YoaW50KSAtIHNpemVvZih1bmlvbiBzaWd2YWwpXTsKLSsJCXBpZF90IHNpZ2V2X25vdGlmeV90 aHJlYWRfaWQ7Ci0rCQlzdHJ1Y3QgewotKwkJCXZvaWQgKCpzaWdldl9ub3RpZnlfZnVuY3Rpb24p KHVuaW9uIHNpZ3ZhbCk7Ci0rCQkJcHRocmVhZF9hdHRyX3QgKnNpZ2V2X25vdGlmeV9hdHRyaWJ1 dGVzOwotKwkJfSBfX3Nldl90aHJlYWQ7Ci0rCX0gX19zZXZfZmllbGRzOwotIH07Ci0gCi0rI2Rl ZmluZSBzaWdldl9ub3RpZnlfdGhyZWFkX2lkIF9fc2V2X2ZpZWxkcy5zaWdldl9ub3RpZnlfdGhy ZWFkX2lkCi0rI2RlZmluZSBzaWdldl9ub3RpZnlfZnVuY3Rpb24gX19zZXZfZmllbGRzLl9fc2V2 X3RocmVhZC5zaWdldl9ub3RpZnlfZnVuY3Rpb24KLSsjZGVmaW5lIHNpZ2V2X25vdGlmeV9hdHRy aWJ1dGVzIF9fc2V2X2ZpZWxkcy5fX3Nldl90aHJlYWQuc2lnZXZfbm90aWZ5X2F0dHJpYnV0ZXMK LSsKLSAjZGVmaW5lIFNJR0VWX1NJR05BTCAwCi0gI2RlZmluZSBTSUdFVl9OT05FIDEKLSAjZGVm aW5lIFNJR0VWX1RIUkVBRCAyCi0rI2RlZmluZSBTSUdFVl9USFJFQURfSUQgNAotIAotIGludCBf X2xpYmNfY3VycmVudF9zaWdydG1pbih2b2lkKTsKLSBpbnQgX19saWJjX2N1cnJlbnRfc2lncnRt YXgodm9pZCk7Ci1kaWZmIC0tZ2l0IGEvc3JjL3RpbWUvdGltZXJfY3JlYXRlLmMgYi9zcmMvdGlt ZS90aW1lcl9jcmVhdGUuYwotaW5kZXggNWRkZmRhMjc4Li40YmVmMjM5MDUgMTAwNjQ0Ci0tLS0g YS9zcmMvdGltZS90aW1lcl9jcmVhdGUuYwotKysrIGIvc3JjL3RpbWUvdGltZXJfY3JlYXRlLmMK LUBAIC03MSwxMSArNzEsMTUgQEAgaW50IHRpbWVyX2NyZWF0ZShjbG9ja2lkX3QgY2xrLCBzdHJ1 Y3Qgc2lnZXZlbnQgKnJlc3RyaWN0IGV2cCwgdGltZXJfdCAqcmVzdHJpY3QKLSAJc3dpdGNoIChl dnAgPyBldnAtPnNpZ2V2X25vdGlmeSA6IFNJR0VWX1NJR05BTCkgewotIAljYXNlIFNJR0VWX05P TkU6Ci0gCWNhc2UgU0lHRVZfU0lHTkFMOgotKwljYXNlIFNJR0VWX1RIUkVBRF9JRDoKLSAJCWlm IChldnApIHsKLSAJCQlrc2V2LnNpZ2V2X3ZhbHVlID0gZXZwLT5zaWdldl92YWx1ZTsKLSAJCQlr c2V2LnNpZ2V2X3NpZ25vID0gZXZwLT5zaWdldl9zaWdubzsKLSAJCQlrc2V2LnNpZ2V2X25vdGlm eSA9IGV2cC0+c2lnZXZfbm90aWZ5OwotLQkJCWtzZXYuc2lnZXZfdGlkID0gMDsKLSsJCQlpZiAo ZXZwLT5zaWdldl9ub3RpZnkgPT0gU0lHRVZfVEhSRUFEX0lEKQotKwkJCQlrc2V2LnNpZ2V2X3Rp ZCA9IGV2cC0+c2lnZXZfbm90aWZ5X3RocmVhZF9pZDsKLSsJCQllbHNlCi0rCQkJCWtzZXYuc2ln ZXZfdGlkID0gMDsKLSAJCQlrc2V2cCA9ICZrc2V2OwotIAkJfQotIAkJaWYgKHN5c2NhbGwoU1lT X3RpbWVyX2NyZWF0ZSwgY2xrLCBrc2V2cCwgJnRpbWVyaWQpIDwgMCkKLUBAIC0xMDcsNyArMTEx LDcgQEAgaW50IHRpbWVyX2NyZWF0ZShjbG9ja2lkX3QgY2xrLCBzdHJ1Y3Qgc2lnZXZlbnQgKnJl c3RyaWN0IGV2cCwgdGltZXJfdCAqcmVzdHJpY3QKLSAKLSAJCWtzZXYuc2lnZXZfdmFsdWUuc2l2 YWxfcHRyID0gMDsKLSAJCWtzZXYuc2lnZXZfc2lnbm8gPSBTSUdUSU1FUjsKLS0JCWtzZXYuc2ln ZXZfbm90aWZ5ID0gNDsgLyogU0lHRVZfVEhSRUFEX0lEICovCi0rCQlrc2V2LnNpZ2V2X25vdGlm eSA9IFNJR0VWX1RIUkVBRF9JRDsKLSAJCWtzZXYuc2lnZXZfdGlkID0gdGQtPnRpZDsKLSAJCWlm IChzeXNjYWxsKFNZU190aW1lcl9jcmVhdGUsIGNsaywgJmtzZXYsICZ0aW1lcmlkKSA8IDApCi0g CQkJdGltZXJpZCA9IC0xOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvZXBvbGxf Y3AucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hlcy9lcG9sbF9jcC5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggOTJmNDc1NTFhZDhlLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9tdXNsL3BhdGNoZXMvZXBvbGxfY3AucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyOCAr MCwwIEBACi1Gcm9tIDJjMDBmOTVjMWFjN2RkNTBmNTNkOWUzNjE4NDdlYmQyNTEzYzhkYTAgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBSaWNoIEZlbGtlciA8ZGFsaWFzQGFlcmlmYWwu Y3g+Ci1EYXRlOiBTYXQsIDMgQXByIDIwMjEgMjE6MTY6NDEgLTA0MDAKLVN1YmplY3Q6IFtQQVRD SF0gbWFrZSBlcG9sbF9bcF13YWl0IGEgY2FuY2VsbGF0aW9uIHBvaW50Ci0KLXRoaXMgaXMgYSBM aW51eC1zcGVjaWZpYyBmdW5jdGlvbiBhbmQgbm90IGNvdmVyZWQgYnkgUE9TSVgncwotcmVxdWly ZW1lbnRzIGZvciB3aGljaCBpbnRlcmZhY2VzIGFyZSBjYW5jZWxsYXRpb24gcG9pbnRzLCBidXQg Z2xpYmMKLW1ha2VzIGl0IG9uZSBhbmQgZXhpc3Rpbmcgc29mdHdhcmUgcmVsaWVzIG9uIGl0IGJl aW5nIG9uZS4KLQotYXQgc29tZSBwb2ludCBhIHJldmlldyBmb3Igc2ltaWxhciBmdW5jdGlvbnMg dGhhdCBzaG91bGQgYmUgbWFkZQotY2FuY2VsbGF0aW9uIHBvaW50cyBzaG91bGQgYmUgZG9uZS4K LQotZGlmZiAtLWdpdCBzcmMvbGludXgvZXBvbGwuYyBzcmMvbGludXgvZXBvbGwuYwotaW5kZXgg ZGVmZjViMTAuLjkzYmFhODE0IDEwMDY0NAotLS0tIGEvc3JjL2xpbnV4L2Vwb2xsLmMKLSsrKyBi L3NyYy9saW51eC9lcG9sbC5jCi1AQCAtMjQsOSArMjQsOSBAQCBpbnQgZXBvbGxfY3RsKGludCBm ZCwgaW50IG9wLCBpbnQgZmQyLCBzdHJ1Y3QgZXBvbGxfZXZlbnQgKmV2KQotIAotIGludCBlcG9s bF9wd2FpdChpbnQgZmQsIHN0cnVjdCBlcG9sbF9ldmVudCAqZXYsIGludCBjbnQsIGludCB0bywg Y29uc3Qgc2lnc2V0X3QgKnNpZ3MpCi0gewotLQlpbnQgciA9IF9fc3lzY2FsbChTWVNfZXBvbGxf cHdhaXQsIGZkLCBldiwgY250LCB0bywgc2lncywgX05TSUcvOCk7Ci0rCWludCByID0gX19zeXNj YWxsX2NwKFNZU19lcG9sbF9wd2FpdCwgZmQsIGV2LCBjbnQsIHRvLCBzaWdzLCBfTlNJRy84KTsK LSAjaWZkZWYgU1lTX2Vwb2xsX3dhaXQKLS0JaWYgKHI9PS1FTk9TWVMgJiYgIXNpZ3MpIHIgPSBf X3N5c2NhbGwoU1lTX2Vwb2xsX3dhaXQsIGZkLCBldiwgY250LCB0byk7Ci0rCWlmIChyPT0tRU5P U1lTICYmICFzaWdzKSByID0gX19zeXNjYWxsX2NwKFNZU19lcG9sbF93YWl0LCBmZCwgZXYsIGNu dCwgdG8pOwotICNlbmRpZgotIAlyZXR1cm4gX19zeXNjYWxsX3JldChyKTsKLSB9CmRpZmYgLS1n aXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9maXgtcGktbXV0ZXgtY29uZC0xLnBhdGNoIGIvc3Jj cGtncy9tdXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNvbmQtMS5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMzlhZjcyYjBjNWY5Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9tdXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNvbmQtMS5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDU2ICswLDAgQEAKLUZyb20gMmQwYmJlNmM3ODg5MzhkMTMzMjYwOWMwMTRlZWViYzFkZmY5 NjZhYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFJpY2ggRmVsa2VyIDxkYWxpYXNA YWVyaWZhbC5jeD4KLURhdGU6IE1vbiwgMjYgT2N0IDIwMjAgMTU6NTY6MjUgLTA0MDAKLVN1Ympl Y3Q6IGZpeCBwdGhyZWFkX2NvbmRfd2FpdCBwYWlyZWQgd2l0aCB3aXRoIHByaW9yaXR5LWluaGVy aXRhbmNlIG11dGV4Ci0KLXB0aHJlYWRfY29uZF93YWl0IGFycmFuZ2VkIGZvciByZXF1ZXVlZCB3 YWl0ZXJzIHRvIHdha2Ugd2hlbiB0aGUgbXV0ZXgKLWlzIHVubG9ja2VkIGJ5IHRlbXBvcmFyaWx5 IGFkanVzdGluZyB0aGUgbXV0ZXgncyB3YWl0ZXIgY291bnQuIGNvbW1pdAotNTRjYTY3Nzk4M2Q0 NzUyOWJhYjg3NTIzMTVhYzFhMmI0OTg4ODg3MCBicm9rZSB0aGlzIHdoZW4gaW50cm9kdWNpbmcK LVBJIG11dGV4ZXMgYnkgcmVwdXJwb3NpbmcgdGhlIHdhaXRlciBjb3VudCBmaWVsZCBvZiB0aGUg bXV0ZXgKLXN0cnVjdHVyZS4gc2luY2UgdGhlbiwgZm9yIFBJIG11dGV4ZXMsIHRoZSB3YWl0ZXIg Y291bnQgYWRqdXN0bWVudCB3YXMKLW1pc2ludGVycHJldGVkIGJ5IHRoZSBtdXRleCBsb2NraW5n IGNvZGUgYXMgaW5kaWNhdGluZyB0aGF0IHRoZSBtdXRleAotaXMgbm9uIGEgbm9uLXJlY292ZXJh YmxlIHN0YXRlLgotCi1pdCB3b3VsZCBiZSBwb3NzaWJsZSB0byBzcGVjaWFsLWNhc2UgUEkgbXV0 ZXhlcyBoZXJlLCBidXQgaW5zdGVhZCBqdXN0Ci1kcm9wIGFsbCBhZGp1c3RtZW50IG9mIHRoZSB3 YWl0ZXJzIGNvdW50LCBhbmQgaW5zdGVhZCB1c2UgdGhlIGxvY2sKLXdvcmQgd2FpdGVycyBiaXQg Zm9yIGFsbCBtdXRleCB0eXBlcy4gc2luY2UgdGhlIG11dGV4IGlzIGVpdGhlciBoZWxkCi1ieSB0 aGUgY2FsbGVyIG9yIGluIHVucmVjb3ZlcmFibGUgc3RhdGUgYXQgdGhlIHRpbWUgdGhlIGJpdCBp cyBzZXQsIGl0Ci13aWxsIG5lY2Vzc2FyaWx5IHN0aWxsIGJlIHNldCBhdCB0aGUgdGltZSBvZiBh bnkgc3Vic2VxdWVudCB2YWxpZAotdW5sb2NrIG9wZXJhdGlvbiwgYW5kIHRoaXMgd2lsbCBwcm9k dWNlIHRoZSBkZXNpcmVkIGVmZmVjdCBvZiB3YWtpbmcKLXRoZSBuZXh0IHdhaXRlci4KLQotaWYg d2FpdGVyIGNvdW50cyBhcmUgZW50aXJlbHkgZHJvcHBlZCBhdCBzb21lIHBvaW50IGluIHRoZSBm dXR1cmUgdGhpcwotY29kZSBzaG91bGQgc3RpbGwgd29yayB3aXRob3V0IG1vZGlmaWNhdGlvbi4K LS0tLQotIHNyYy90aHJlYWQvcHRocmVhZF9jb25kX3RpbWVkd2FpdC5jIHwgMTEgKysrKystLS0t LS0KLSAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQotCi0o bGltaXRlZCB0byAnc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMnKQotCi1kaWZm IC0tZ2l0IGEvc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMgYi9zcmMvdGhyZWFk L3B0aHJlYWRfY29uZF90aW1lZHdhaXQuYwotaW5kZXggZDE1MDEyNDAuLmY1ZjM3YWYxIDEwMDY0 NAotLS0tIGEvc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMKLSsrKyBiL3NyYy90 aHJlYWQvcHRocmVhZF9jb25kX3RpbWVkd2FpdC5jCi1AQCAtMTQ2LDE0ICsxNDYsMTMgQEAgcmVs b2NrOgotIAotIAlpZiAob2xkc3RhdGUgPT0gV0FJVElORykgZ290byBkb25lOwotIAotLQlpZiAo IW5vZGUubmV4dCkgYV9pbmMoJm0tPl9tX3dhaXRlcnMpOwotLQotIAkvKiBVbmxvY2sgdGhlIGJh cnJpZXIgdGhhdCdzIGhvbGRpbmcgYmFjayB0aGUgbmV4dCB3YWl0ZXIsIGFuZAotIAkgKiBlaXRo ZXIgd2FrZSBpdCBvciByZXF1ZXVlIGl0IHRvIHRoZSBtdXRleC4gKi8KLS0JaWYgKG5vZGUucHJl dikKLS0JCXVubG9ja19yZXF1ZXVlKCZub2RlLnByZXYtPmJhcnJpZXIsICZtLT5fbV9sb2NrLCBt LT5fbV90eXBlICYgMTI4KTsKLS0JZWxzZQotLQkJYV9kZWMoJm0tPl9tX3dhaXRlcnMpOwotKwlp ZiAobm9kZS5wcmV2KSB7Ci0rCQlpbnQgdmFsID0gbS0+X21fbG9jazsKLSsJCWlmICh2YWw+MCkg YV9jYXMoJm0tPl9tX2xvY2ssIHZhbCwgdmFsfDB4ODAwMDAwMDApOwotKwkJdW5sb2NrX3JlcXVl dWUoJm5vZGUucHJldi0+YmFycmllciwgJm0tPl9tX2xvY2ssIG0tPl9tX3R5cGUgJiAoOHwxMjgp KTsKLSsJfQotIAotIAkvKiBTaW5jZSBhIHNpZ25hbCB3YXMgY29uc3VtZWQsIGNhbmNlbGxhdGlv biBpcyBub3QgcGVybWl0dGVkLiAqLwotIAlpZiAoZSA9PSBFQ0FOQ0VMRUQpIGUgPSAwOwotLS0g Ci1jZ2l0IHYxLjIuMQotCmRpZmYgLS1naXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9maXgtcGkt bXV0ZXgtY29uZC0yLnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNv bmQtMi5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjM1NmUzOGI2MWY4Li4w MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvZml4LXBpLW11dGV4LWNvbmQt Mi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLUZyb20gMjdiMmZjOWQ2ZGI5 NTYzNTk3MjdhNjZjMjYyZjFlNjk5OTU2NjBhYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZy b206IFJpY2ggRmVsa2VyIDxkYWxpYXNAYWVyaWZhbC5jeD4KLURhdGU6IEZyaSwgMzAgT2N0IDIw MjAgMTE6MjE6MDYgLTA0MDAKLVN1YmplY3Q6IGZpeCBtaXNzaW5nLXdha2UgcmVncmVzc2lvbiBp biBwdGhyZWFkX2NvbmRfd2FpdAotCi10aGUgcmVhc29uaW5nIGluIGNvbW1pdCAyZDBiYmU2Yzc4 ODkzOGQxMzMyNjA5YzAxNGVlZWJjMWRmZjk2NmFjIHdhcwotbm90IGVudGlyZWx5IGNvcnJlY3Qu IHdoaWxlIGl0J3MgdHJ1ZSB0aGF0IHNldHRpbmcgdGhlIHdhaXRlcnMgZmxhZwotZW5zdXJlcyB0 aGF0IHRoZSBuZXh0IHVubG9jayB3aWxsIHBlcmZvcm0gYSB3YWtlLCBpdCdzIHBvc3NpYmxlIHRo YXQKLXRoZSB3YWtlIGlzIGNvbnN1bWVkIGJ5IGEgbXV0ZXggd2FpdGVyIHRoYXQgaGFzIG5vIHJl bGF0aW9uc2hpcCB3aXRoCi10aGUgY29uZHZhciB3YWl0IHF1ZXVlIGJlaW5nIHByb2Nlc3NlZCwg d2hpY2ggdGhlbiB0YWtlcyB0aGUgbXV0ZXguCi13aGVuIHRoYXQgdGhyZWFkIHN1YnNlcXVlbnRs eSB1bmxvY2tzLCBpdCBzZWVzIG5vIHdhaXRlcnMsIGFuZCBsZWF2ZXMKLXRoZSByZXN0IG9mIHRo ZSBjb25kdmFyIHF1ZXVlIHN0dWNrLgotCi1icmluZyBiYWNrIHRoZSB3YWl0ZXIgY291bnQgYWRq dXN0bWVudCwgYnV0IHNraXAgaXQgZm9yIFBJIG11dGV4ZXMsCi1mb3Igd2hpY2ggYSBzdWNjZXNz ZnVsIGxvY2stYWZ0ZXItd2FpdGluZyBhbHdheXMgc2V0cyB0aGUgd2FpdGVycyBiaXQuCi1pZiBm dXR1cmUgY2hhbmdlcyBhcmUgbWFkZSB0byBicmluZyB0aGlzIHNhbWUgd2FpdGVycy1iaXQgY29u dHJhY3QgdG8KLWFsbCBsb2NrIHR5cGVzLCB0aGlzIGNhbiBiZSByZXZlcnRlZC4KLS0tLQotIHNy Yy90aHJlYWQvcHRocmVhZF9jb25kX3RpbWVkd2FpdC5jIHwgNSArKysrKwotIDEgZmlsZSBjaGFu Z2VkLCA1IGluc2VydGlvbnMoKykKLQotKGxpbWl0ZWQgdG8gJ3NyYy90aHJlYWQvcHRocmVhZF9j b25kX3RpbWVkd2FpdC5jJykKLQotZGlmZiAtLWdpdCBhL3NyYy90aHJlYWQvcHRocmVhZF9jb25k X3RpbWVkd2FpdC5jIGIvc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMKLWluZGV4 IGY1ZjM3YWYxLi5hMGNkNDkwNCAxMDA2NDQKLS0tLSBhL3NyYy90aHJlYWQvcHRocmVhZF9jb25k X3RpbWVkd2FpdC5jCi0rKysgYi9zcmMvdGhyZWFkL3B0aHJlYWRfY29uZF90aW1lZHdhaXQuYwot QEAgLTE0NiwxMiArMTQ2LDE3IEBAIHJlbG9jazoKLSAKLSAJaWYgKG9sZHN0YXRlID09IFdBSVRJ TkcpIGdvdG8gZG9uZTsKLSAKLSsJaWYgKCFub2RlLm5leHQgJiYgIShtLT5fbV90eXBlICYgOCkp Ci0rCQlhX2luYygmbS0+X21fd2FpdGVycyk7Ci0rCi0gCS8qIFVubG9jayB0aGUgYmFycmllciB0 aGF0J3MgaG9sZGluZyBiYWNrIHRoZSBuZXh0IHdhaXRlciwgYW5kCi0gCSAqIGVpdGhlciB3YWtl IGl0IG9yIHJlcXVldWUgaXQgdG8gdGhlIG11dGV4LiAqLwotIAlpZiAobm9kZS5wcmV2KSB7Ci0g CQlpbnQgdmFsID0gbS0+X21fbG9jazsKLSAJCWlmICh2YWw+MCkgYV9jYXMoJm0tPl9tX2xvY2ss IHZhbCwgdmFsfDB4ODAwMDAwMDApOwotIAkJdW5sb2NrX3JlcXVldWUoJm5vZGUucHJldi0+YmFy cmllciwgJm0tPl9tX2xvY2ssIG0tPl9tX3R5cGUgJiAoOHwxMjgpKTsKLSsJfSBlbHNlIGlmICgh IShtLT5fbV90eXBlICYgOCkpIHsKLSsJCWFfZGVjKCZtLT5fbV93YWl0ZXJzKTsJCQotIAl9Ci0g Ci0gCS8qIFNpbmNlIGEgc2lnbmFsIHdhcyBjb25zdW1lZCwgY2FuY2VsbGF0aW9uIGlzIG5vdCBw ZXJtaXR0ZWQuICovCi0tLSAKLWNnaXQgdjEuMi4xCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVz bC9wYXRjaGVzL2ZpeC1waS1tdXRleC1jb25kLTMucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hl cy9maXgtcGktbXV0ZXgtY29uZC0zLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAyY2M5NDNmMjZmNmEuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9m aXgtcGktbXV0ZXgtY29uZC0zLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAot RnJvbSBkOTFhNmNmNmUzNjlhNzk1ODdjNTY2NWZjZTk2MzVlNTYzNGNhMjAxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4PgotRGF0 ZTogRnJpLCAzMCBPY3QgMjAyMCAxNjo1MDowOCAtMDQwMAotU3ViamVjdDogZml4IGVycm9uZW91 cyBwdGhyZWFkX2NvbmRfd2FpdCBtdXRleCB3YWl0ZXIgY291bnQgbG9naWMgZHVlIHRvIHR5cG8K LQotaW50cm9kdWNlZCBpbiBjb21taXQgMjdiMmZjOWQ2ZGI5NTYzNTk3MjdhNjZjMjYyZjFlNjk5 OTU2NjBhYS4KLS0tLQotIHNyYy90aHJlYWQvcHRocmVhZF9jb25kX3RpbWVkd2FpdC5jIHwgMiAr LQotIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQotCi0obGlt aXRlZCB0byAnc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMnKQotCi1kaWZmIC0t Z2l0IGEvc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMgYi9zcmMvdGhyZWFkL3B0 aHJlYWRfY29uZF90aW1lZHdhaXQuYwotaW5kZXggYTBjZDQ5MDQuLjZiNzYxNDU1IDEwMDY0NAot LS0tIGEvc3JjL3RocmVhZC9wdGhyZWFkX2NvbmRfdGltZWR3YWl0LmMKLSsrKyBiL3NyYy90aHJl YWQvcHRocmVhZF9jb25kX3RpbWVkd2FpdC5jCi1AQCAtMTU1LDcgKzE1NSw3IEBAIHJlbG9jazoK LSAJCWludCB2YWwgPSBtLT5fbV9sb2NrOwotIAkJaWYgKHZhbD4wKSBhX2NhcygmbS0+X21fbG9j aywgdmFsLCB2YWx8MHg4MDAwMDAwMCk7Ci0gCQl1bmxvY2tfcmVxdWV1ZSgmbm9kZS5wcmV2LT5i YXJyaWVyLCAmbS0+X21fbG9jaywgbS0+X21fdHlwZSAmICg4fDEyOCkpOwotLQl9IGVsc2UgaWYg KCEhKG0tPl9tX3R5cGUgJiA4KSkgewotKwl9IGVsc2UgaWYgKCEobS0+X21fdHlwZSAmIDgpKSB7 Ci0gCQlhX2RlYygmbS0+X21fd2FpdGVycyk7CQkKLSAJfQotIAotLS0gCi1jZ2l0IHYxLjIuMQot CmRpZmYgLS1naXQgYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9nZXR0aWQucGF0Y2ggYi9zcmNwa2dz L211c2wvcGF0Y2hlcy9nZXR0aWQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IGJiOGJmNTkwNWI4OC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2dl dHRpZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLUZyb20gZDQ5Y2YwNzU0 MWJiNTRhNWFjN2FlYzFmZWVjODUxNGRiMzNkYjhlYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK LUZyb206IFJpY2ggRmVsa2VyIDxkYWxpYXNAYWVyaWZhbC5jeD4KLURhdGU6IE1vbiwgMTcgQXVn IDIwMjAgMjA6MTI6NTMgLTA0MDAKLVN1YmplY3Q6IFtQQVRDSF0gYWRkIGdldHRpZCBmdW5jdGlv bgotCi10aGlzIGlzIGEgcHJlcmVxdWlzaXRlIGZvciBhZGRpdGlvbiBvZiBvdGhlciBpbnRlcmZh Y2VzIHRoYXQgdXNlCi1rZXJuZWwgdGlkcywgaW5jbHVkaW5nIGZ1dGV4IGFuZCBTSUdFVl9USFJF QURfSUQuCi0KLXRoZXJlIGlzIHNvbWUgYW1iaWd1aXR5IGFzIHRvIHdoZXRoZXIgdGhlIHNlbWFu dGljIHJldHVybiB0eXBlIHNob3VsZAotYmUgaW50IG9yIHBpZF90LiBlaXRoZXIgd2F5LCBmdXRl eCBBUEkgaW1wb3NlcyBhIGNvbnRyYWN0IHRoYXQgdGhlCi12YWx1ZXMgZml0IGluIGludCAoZXhj bHVkaW5nIHNvbWUgdXBwZXIgcmVzZXJ2ZWQgYml0cykuIGdsaWJjIHVzZWQKLXBpZF90LCBzbyBp biB0aGUgaW50ZXJlc3Qgb2Ygbm90IGhhdmluZyBncmF0dWl0b3VzIG1pc21hdGNoICh0aGUKLXVu ZGVybHlpbmcgdHlwZXMgYXJlIHRoZSBzYW1lIGFueXdheSksIHBpZF90IGlzIHVzZWQgaGVyZSBh cyB3ZWxsLgotCi13aGlsZSBjb25jZXB0dWFsbHkgdGhpcyBpcyBhIHN5c2NhbGwsIHRoZSBjb3B5 IHN0b3JlZCBpbiB0aGUgdGhyZWFkCi1zdHJ1Y3R1cmUgaXMgYWx3YXlzIHZhbGlkIGluIGFsbCBj b250ZXh0cyB3aGVyZSBpdCdzIHZhbGlkIHRvIGNhbGwKLWxpYmMgZnVuY3Rpb25zLCBzbyBpdCdz IHVzZWQgdG8gYXZvaWQgdGhlIHN5c2NhbGwuCi0tLS0KLSBpbmNsdWRlL3VuaXN0ZC5oICAgfCAx ICsKLSBzcmMvbGludXgvZ2V0dGlkLmMgfCA4ICsrKysrKysrCi0gMiBmaWxlcyBjaGFuZ2VkLCA5 IGluc2VydGlvbnMoKykKLSBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2xpbnV4L2dldHRpZC5jCi0K LWRpZmYgLS1naXQgYS9pbmNsdWRlL3VuaXN0ZC5oIGIvaW5jbHVkZS91bmlzdGQuaAotaW5kZXgg N2JjYmZmOTQzLi4wNzU4NGEyM2UgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRlL3VuaXN0ZC5oCi0rKysg Yi9pbmNsdWRlL3VuaXN0ZC5oCi1AQCAtMTkwLDYgKzE5MCw3IEBAIGludCBzeW5jZnMoaW50KTsK LSBpbnQgZXVpZGFjY2Vzcyhjb25zdCBjaGFyICosIGludCk7Ci0gaW50IGVhY2Nlc3MoY29uc3Qg Y2hhciAqLCBpbnQpOwotIHNzaXplX3QgY29weV9maWxlX3JhbmdlKGludCwgb2ZmX3QgKiwgaW50 LCBvZmZfdCAqLCBzaXplX3QsIHVuc2lnbmVkKTsKLStwaWRfdCBnZXR0aWQodm9pZCk7Ci0gI2Vu ZGlmCi0gCi0gI2lmIGRlZmluZWQoX0xBUkdFRklMRTY0X1NPVVJDRSkgfHwgZGVmaW5lZChfR05V X1NPVVJDRSkKLWRpZmYgLS1naXQgYS9zcmMvbGludXgvZ2V0dGlkLmMgYi9zcmMvbGludXgvZ2V0 dGlkLmMKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAuLjcwNzY3MTM3ZQot LS0tIC9kZXYvbnVsbAotKysrIGIvc3JjL2xpbnV4L2dldHRpZC5jCi1AQCAtMCwwICsxLDggQEAK LSsjZGVmaW5lIF9HTlVfU09VUkNFCi0rI2luY2x1ZGUgPHVuaXN0ZC5oPgotKyNpbmNsdWRlICJw dGhyZWFkX2ltcGwuaCIKLSsKLStwaWRfdCBnZXR0aWQodm9pZCkKLSt7Ci0rCXJldHVybiBfX3B0 aHJlYWRfc2VsZigpLT50aWQ7Ci0rfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3BhdGNoZXMv aW1wbGVtZW50X3JlYWxwYXRoX2RpcmVjdGx5X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRs aW5rLnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvaW1wbGVtZW50X3JlYWxwYXRoX2RpcmVj dGx5X2luc3RlYWRfb2ZfdXNpbmdfcHJvY2ZzX3JlYWRsaW5rLnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA1NjlhMWY1MmM3Y2QuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dz L211c2wvcGF0Y2hlcy9pbXBsZW1lbnRfcmVhbHBhdGhfZGlyZWN0bHlfaW5zdGVhZF9vZl91c2lu Z19wcm9jZnNfcmVhZGxpbmsucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMTkgKzAsMCBAQAot RnJvbSAyOWZmNzU5OWE0NDgyMzJmMjUyNzg0MWMyMzYyNjQzZDI0NmNlZTM2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4PgotRGF0 ZTogTW9uLCAzMCBOb3YgMjAyMCAxMjoxNDo0NyAtMDUwMAotU3ViamVjdDogW1BBVENIXSBpbXBs ZW1lbnQgcmVhbHBhdGggZGlyZWN0bHkgaW5zdGVhZCBvZiB1c2luZyBwcm9jZnMgcmVhZGxpbmsK LQotaW5hYmlsaXR5IHRvIHVzZSByZWFscGF0aCBpbiBjaHJvb3QvY29udGFpbmVyIHdpdGhvdXQg cHJvY2ZzIGFjY2VzcwotYW5kIGF0IGVhcmx5IGJvb3QgcHJpb3IgdG8gbW91bnQgb2YgL3Byb2Mg aGFzIGJlZW4gYW4gb25nb2luZyBpc3N1ZSwKLWFuZCBpdCB0dXJucyBvdXQgcmVhbHBhdGggd2Fz IG9uZSBvZiB0aGUgbGFzdCByZW1haW5pbmcgaW50ZXJmYWNlcwotdGhhdCBuZWVkZWQgcHJvY2Zz IGZvciBpdHMgY29yZSBmdW5jdGlvbmFsaXR5LiBkdXJpbmcgaW52ZXN0aWdhdGlvbgotd2hpbGUg cmVpbXBsZW1lbnRpbmcsIGl0IHdhcyBkZXRlcm1pbmVkIHRoYXQgdGhlcmUgd2VyZSBhbHNvIHNl cmlvdXMKLXByb2JsZW1zIHdpdGggdGhlIHByb2Nmcy1iYXNlZCBpbXBsZW1lbnRhdGlvbi4gbW9z dCBzZXJpb3VzbHkgaXQgd2FzCi11bnNhZmUgb24gcHJlLU9fUEFUSCBrZXJuZWxzLCBhbmQgdW5s aWtlIG90aGVyIHBsYWNlcyB3aGVyZSBPX1BBVEggd2FzCi11c2VkLCB0aGUgdW5zYWZldHkgd2Fz IGhhcmQgb3IgaW1wb3NzaWJsZSB0byBmaXggYmVjYXVzZSBPX05PRk9MTE9XCi1jYW4ndCBiZSB1 c2VkIChzaW5jZSB0aGUgd2hvbGUgcHVycG9zZSB3YXMgdG8gZm9sbG93IHN5bWxpbmtzKS4KLQot dGhlIG5ldyBpbXBsZW1lbnRhdGlvbiBpcyBhIGRpcmVjdCBvbmUsIHBlcmZvcm1pbmcgcmVhZGxp bmsgb24gZWFjaAotcGF0aCBjb21wb25lbnQgdG8gcmVzb2x2ZSBpdC4gYW4gZXhwbGljaXQgc3Rh Y2ssIGFzIG9wcG9zZWQgdG8KLXJlY3Vyc2lvbiwgaXMgdXNlZCB0byByZXByZXNlbnQgdGhlIHJl bWFpbmluZyBjb21wb25lbnRzIHRvIGJlCi1wcm9jZXNzZWQuIHRoZSBzdGFjayBzdGFydHMgb3V0 IGhvbGRpbmcganVzdCB0aGUgaW5wdXQgc3RyaW5nLCBhbmQKLXJlYWRpbmcgYSBsaW5rIHB1c2hl cyB0aGUgbGluayBjb250ZW50cyBvbnRvIHRoZSBzdGFjay4KLQotdW5saWtlIG1hbnkgb3RoZXIg aW1wbGVtZW50YXRpb25zLCB0aGlzIG9uZSBkb2VzIG5vdCBjYWxsIGdldGN3ZAotaW5pdGlhbGx5 IGZvciByZWxhdGl2ZSBwYXRobmFtZXMuIGluc3RlYWQgaXQgYWNjdW11bGF0ZXMgaW5pdGlhbCAu LgotY29tcG9uZW50cyB0byBiZSBhcHBsaWVkIHRvIHRoZSB3b3JraW5nIGRpcmVjdG9yeSBpZiB0 aGUgcmVzdWx0IGlzCi1zdGlsbCBhIHJlbGF0aXZlIHBhdGguIHRoaXMgYXZvaWRzIGNhbGxpbmcg Z2V0Y3dkICh3aGljaCBtYXkgZmFpbCkgYXQKLWFsbCB3aGVuIHN5bWxpbmsgdHJhdmVyc2FsIHdp bGwgZXZlbnR1YWxseSB5aWVsZCBhbiBhYnNvbHV0ZSBwYXRoLiBpdAotYWxzbyBkb2Vzbid0IHVz ZSBhbnkgZm9ybSBvZiBzdGF0IG9wZXJhdGlvbjsgaW5zdGVhZCBpdCBhcnJhbmdlcyBmb3IKLXJl YWRsaW5rIHRvIHRlbGwgaXQgd2hlbiBhIG5vbi1kaXJlY3RvcnkgaXMgdXNlZCBpbiBhIGNvbnRl eHQgd2hlcmUgYQotZGlyZWN0b3J5IGlzIG5lZWRlZC4gdGhpcyBtaW5pbWl6ZXMgdGhlIG51bWJl ciBvZiBzeXNjYWxscyBuZWVkZWQsCi1hdm9pZHMgYWNjZXNzaW5nIGlub2RlcyB3aGVuIHRoZSBk aXJlY3RvcnkgdGFibGUgc3VmZmljZXMsIGFuZCByZWR1Y2VzCi10aGUgYW1vdW50IG9mIGNvZGUg cHVsbGVkIGluIGZvciBzdGF0aWMgbGlua2luZy4KLS0tLQotIHNyYy9taXNjL3JlYWxwYXRoLmMg fCAxNTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KLSAxIGZp bGUgY2hhbmdlZCwgMTM2IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQotCi1kaWZmIC0t Z2l0IGEvc3JjL21pc2MvcmVhbHBhdGguYyBiL3NyYy9taXNjL3JlYWxwYXRoLmMKLWluZGV4IGQy NzA4ZTU5ZC4uZGI4Yjc0ZGM4IDEwMDY0NAotLS0tIGEvc3JjL21pc2MvcmVhbHBhdGguYwotKysr IGIvc3JjL21pc2MvcmVhbHBhdGguYwotQEAgLTEsNDMgKzEsMTU2IEBACi0gI2luY2x1ZGUgPHN0 ZGxpYi5oPgotICNpbmNsdWRlIDxsaW1pdHMuaD4KLS0jaW5jbHVkZSA8c3lzL3N0YXQuaD4KLS0j aW5jbHVkZSA8ZmNudGwuaD4KLSAjaW5jbHVkZSA8ZXJybm8uaD4KLSAjaW5jbHVkZSA8dW5pc3Rk Lmg+Ci0gI2luY2x1ZGUgPHN0cmluZy5oPgotLSNpbmNsdWRlICJzeXNjYWxsLmgiCi0rCi0rc3Rh dGljIHNpemVfdCBzbGFzaF9sZW4oY29uc3QgY2hhciAqcykKLSt7Ci0rCWNvbnN0IGNoYXIgKnMw ID0gczsKLSsJd2hpbGUgKCpzID09ICcvJykgcysrOwotKwlyZXR1cm4gcy1zMDsKLSt9Ci0gCi0g Y2hhciAqcmVhbHBhdGgoY29uc3QgY2hhciAqcmVzdHJpY3QgZmlsZW5hbWUsIGNoYXIgKnJlc3Ry aWN0IHJlc29sdmVkKQotIHsKLS0JaW50IGZkOwotLQlzc2l6ZV90IHI7Ci0tCXN0cnVjdCBzdGF0 IHN0MSwgc3QyOwotLQljaGFyIGJ1ZlsxNSszKnNpemVvZihpbnQpXTsKLS0JY2hhciB0bXBbUEFU SF9NQVhdOwotKwljaGFyIHN0YWNrW1BBVEhfTUFYKzFdOwotKwljaGFyIG91dHB1dFtQQVRIX01B WF07Ci0rCXNpemVfdCBwLCBxLCBsLCBsMCwgY250PTAsIG51cD0wOwotKwlpbnQgY2hlY2tfZGly PTA7Ci0gCi0gCWlmICghZmlsZW5hbWUpIHsKLSAJCWVycm5vID0gRUlOVkFMOwotIAkJcmV0dXJu IDA7Ci0gCX0KLSsJbCA9IHN0cm5sZW4oZmlsZW5hbWUsIHNpemVvZiBzdGFjayk7Ci0rCWlmICgh bCkgewotKwkJZXJybm8gPSBFTk9FTlQ7Ci0rCQlyZXR1cm4gMDsKLSsJfQotKwlpZiAobCA+PSBQ QVRIX01BWCkgZ290byB0b29sb25nOwotKwlwID0gc2l6ZW9mIHN0YWNrIC0gbCAtIDE7Ci0rCXEg PSAwOwotKwltZW1jcHkoc3RhY2srcCwgZmlsZW5hbWUsIGwrMSk7Ci0rCi0rCS8qIE1haW4gbG9v cC4gRWFjaCBpdGVyYXRpb24gcG9wcyB0aGUgbmV4dCBwYXJ0IGZyb20gc3RhY2sgb2YKLSsJICog cmVtYWluaW5nIHBhdGggY29tcG9uZW50cyBhbmQgY29uc3VtZXMgYW55IHNsYXNoZXMgdGhhdCBm b2xsb3cuCi0rCSAqIElmIG5vdCBhIGxpbmssIGl0J3MgbW92ZWQgdG8gb3V0cHV0OyBpZiBhIGxp bmssIGNvbnRlbnRzIGFyZQotKwkgKiBwdXNoZWQgdG8gdGhlIHN0YWNrLiAqLwotK3Jlc3RhcnQ6 Ci0rCWZvciAoOyA7IHArPXNsYXNoX2xlbihzdGFjaytwKSkgewotKwkJLyogSWYgc3RhY2sgc3Rh cnRzIHdpdGggLywgdGhlIHdob2xlIGNvbXBvbmVudCBpcyAvIG9yIC8vCi0rCQkgKiBhbmQgdGhl IG91dHB1dCBzdGF0ZSBtdXN0IGJlIHJlc2V0LiAqLwotKwkJaWYgKHN0YWNrW3BdID09ICcvJykg ewotKwkJCWNoZWNrX2Rpcj0wOwotKwkJCW51cD0wOwotKwkJCXE9MDsKLSsJCQlvdXRwdXRbcSsr XSA9ICcvJzsKLSsJCQlwKys7Ci0rCQkJLyogSW5pdGlhbCAvLyBpcyBzcGVjaWFsLiAqLwotKwkJ CWlmIChzdGFja1twXSA9PSAnLycgJiYgc3RhY2tbcCsxXSAhPSAnLycpCi0rCQkJCW91dHB1dFtx KytdID0gJy8nOwotKwkJCWNvbnRpbnVlOwotKwkJfQotKwotKwkJY2hhciAqeiA9IF9fc3RyY2hy bnVsKHN0YWNrK3AsICcvJyk7Ci0rCQlsMCA9IGwgPSB6LShzdGFjaytwKTsKLSAKLS0JZmQgPSBz eXNfb3BlbihmaWxlbmFtZSwgT19QQVRIfE9fTk9OQkxPQ0t8T19DTE9FWEVDKTsKLS0JaWYgKGZk IDwgMCkgcmV0dXJuIDA7Ci0tCV9fcHJvY2ZkbmFtZShidWYsIGZkKTsKLSsJCWlmICghbCAmJiAh Y2hlY2tfZGlyKSBicmVhazsKLSAKLS0JciA9IHJlYWRsaW5rKGJ1ZiwgdG1wLCBzaXplb2YgdG1w IC0gMSk7Ci0tCWlmIChyIDwgMCkgZ290byBlcnI7Ci0tCXRtcFtyXSA9IDA7Ci0rCQkvKiBTa2lw IGFueSAuIGNvbXBvbmVudCBidXQgcHJlc2VydmUgY2hlY2tfZGlyIHN0YXR1cy4gKi8KLSsJCWlm IChsPT0xICYmIHN0YWNrW3BdPT0nLicpIHsKLSsJCQlwICs9IGw7Ci0rCQkJY29udGludWU7Ci0r CQl9Ci0gCi0tCWZzdGF0KGZkLCAmc3QxKTsKLS0JciA9IHN0YXQodG1wLCAmc3QyKTsKLS0JaWYg KHI8MCB8fCBzdDEuc3RfZGV2ICE9IHN0Mi5zdF9kZXYgfHwgc3QxLnN0X2lubyAhPSBzdDIuc3Rf aW5vKSB7Ci0tCQlpZiAoIXIpIGVycm5vID0gRUxPT1A7Ci0tCQlnb3RvIGVycjsKLSsJCS8qIENv cHkgbmV4dCBjb21wb25lbnQgb250byBvdXRwdXQgYXQgbGVhc3QgdGVtcG9yYXJpbHksIHRvCi0r CQkgKiBjYWxsIHJlYWRsaW5rLCBidXQgd2FpdCB0byBhZHZhbmNlIG91dHB1dCBwb3NpdGlvbiB1 bnRpbAotKwkJICogZGV0ZXJtaW5pbmcgaXQncyBub3QgYSBsaW5rLiAqLwotKwkJaWYgKHEgJiYg b3V0cHV0W3EtMV0gIT0gJy8nKSB7Ci0rCQkJaWYgKCFwKSBnb3RvIHRvb2xvbmc7Ci0rCQkJc3Rh Y2tbLS1wXSA9ICcvJzsKLSsJCQlsKys7Ci0rCQl9Ci0rCQlpZiAocStsID49IFBBVEhfTUFYKSBn b3RvIHRvb2xvbmc7Ci0rCQltZW1jcHkob3V0cHV0K3EsIHN0YWNrK3AsIGwpOwotKwkJb3V0cHV0 W3ErbF0gPSAwOwotKwkJcCArPSBsOwotKwotKwkJaW50IHVwID0gMDsKLSsJCWlmIChsMD09MiAm JiBzdGFja1twLTJdPT0nLicgJiYgc3RhY2tbcC0xXT09Jy4nKSB7Ci0rCQkJdXAgPSAxOwotKwkJ CS8qIEFueSBub24tLi4gcGF0aCBjb21wb25lbnRzIHdlIGNvdWxkIGNhbmNlbCBzdGFydAotKwkJ CSAqIGFmdGVyIG51cCByZXBldGl0aW9ucyBvZiB0aGUgMy1ieXRlIHN0cmluZyAiLi4vIjsKLSsJ CQkgKiBpZiB0aGVyZSBhcmUgbm9uZSwgYWNjdW11bGF0ZSAuLiBjb21wb25lbnRzIHRvCi0rCQkJ ICogbGF0ZXIgYXBwbHkgdG8gY3dkLCBpZiBuZWVkZWQuICovCi0rCQkJaWYgKHEgPD0gMypudXAp IHsKLSsJCQkJbnVwKys7Ci0rCQkJCXEgKz0gbDsKLSsJCQkJY29udGludWU7Ci0rCQkJfQotKwkJ CS8qIFdoZW4gcHJldmlvdXMgY29tcG9uZW50cyBhcmUgYWxyZWFkeSBrbm93biB0byBiZQotKwkJ CSAqIGRpcmVjdG9yaWVzLCBwcm9jZXNzaW5nIC4uIGNhbiBza2lwIHJlYWRsaW5rLiAqLwotKwkJ CWlmICghY2hlY2tfZGlyKSBnb3RvIHNraXBfcmVhZGxpbms7Ci0rCQl9Ci0rCQlzc2l6ZV90IGsg PSByZWFkbGluayhvdXRwdXQsIHN0YWNrLCBwKTsKLSsJCWlmIChrPT1wKSBnb3RvIHRvb2xvbmc7 Ci0rCQlpZiAoIWspIHsKLSsJCQllcnJubyA9IEVOT0VOVDsKLSsJCQlyZXR1cm4gMDsKLSsJCX0K LSsJCWlmIChrPDApIHsKLSsJCQlpZiAoZXJybm8gIT0gRUlOVkFMKSByZXR1cm4gMDsKLStza2lw X3JlYWRsaW5rOgotKwkJCWNoZWNrX2RpciA9IDA7Ci0rCQkJaWYgKHVwKSB7Ci0rCQkJCXdoaWxl KHEgJiYgb3V0cHV0W3EtMV0hPScvJykgcS0tOwotKwkJCQlpZiAocT4xICYmIChxPjIgfHwgb3V0 cHV0WzBdIT0nLycpKSBxLS07Ci0rCQkJCWNvbnRpbnVlOwotKwkJCX0KLSsJCQlpZiAobDApIHEg Kz0gbDsKLSsJCQljaGVja19kaXIgPSBzdGFja1twXTsKLSsJCQljb250aW51ZTsKLSsJCX0KLSsJ CWlmICgrK2NudCA9PSBTWU1MT09QX01BWCkgewotKwkJCWVycm5vID0gRUxPT1A7Ci0rCQkJcmV0 dXJuIDA7Ci0rCQl9Ci0rCi0rCQkvKiBJZiBsaW5rIGNvbnRlbnRzIGVuZCBpbiAvLCBzdHJpcCBh bnkgc2xhc2hlcyBhbHJlYWR5IG9uCi0rCQkgKiBzdGFjayB0byBhdm9pZCAvLT4vLyBvciAvLy0+ Ly8vIG9yIHNwdXJpb3VzIHRvb2xvbmcuICovCi0rCQlpZiAoc3RhY2tbay0xXT09Jy8nKSB3aGls ZSAoc3RhY2tbcF09PScvJykgcCsrOwotKwkJcCAtPSBrOwotKwkJbWVtbW92ZShzdGFjaytwLCBz dGFjaywgayk7Ci0rCi0rCQkvKiBTa2lwIHRoZSBzdGFjayBhZHZhbmNlbWVudCBpbiBjYXNlIHdl IGhhdmUgYSBuZXcKLSsJCSAqIGFic29sdXRlIGJhc2UgcGF0aC4gKi8KLSsJCWdvdG8gcmVzdGFy dDsKLSAJfQotIAotLQlfX3N5c2NhbGwoU1lTX2Nsb3NlLCBmZCk7Ci0tCXJldHVybiByZXNvbHZl ZCA/IHN0cmNweShyZXNvbHZlZCwgdG1wKSA6IHN0cmR1cCh0bXApOwotLWVycjoKLS0JX19zeXNj YWxsKFNZU19jbG9zZSwgZmQpOwotKyAJb3V0cHV0W3FdID0gMDsKLSsKLSsJaWYgKG91dHB1dFsw XSAhPSAnLycpIHsKLSsJCWlmICghZ2V0Y3dkKHN0YWNrLCBzaXplb2Ygc3RhY2spKSByZXR1cm4g MDsKLSsJCWwgPSBzdHJsZW4oc3RhY2spOwotKwkJLyogQ2FuY2VsIGFueSBpbml0aWFsIC4uIGNv bXBvbmVudHMuICovCi0rCQlwID0gMDsKLSsJCXdoaWxlIChudXAtLSkgewotKwkJCXdoaWxlKGw+ MSAmJiBzdGFja1tsLTFdIT0nLycpIGwtLTsKLSsJCQlpZiAobD4xKSBsLS07Ci0rCQkJcCArPSAy OwotKwkJCWlmIChwPHEpIHArKzsKLSsJCX0KLSsJCWlmIChxLXAgJiYgc3RhY2tbbC0xXSE9Jy8n KSBzdGFja1tsKytdID0gJy8nOwotKwkJaWYgKGwgKyAocS1wKSArIDEgPj0gUEFUSF9NQVgpIGdv dG8gdG9vbG9uZzsKLSsJCW1lbW1vdmUob3V0cHV0ICsgbCwgb3V0cHV0ICsgcCwgcSAtIHAgKyAx KTsKLSsJCW1lbWNweShvdXRwdXQsIHN0YWNrLCBsKTsKLSsJCXEgPSBsICsgcS1wOwotKwl9Ci0r Ci0rCWlmIChyZXNvbHZlZCkgcmV0dXJuIG1lbWNweShyZXNvbHZlZCwgb3V0cHV0LCBxKzEpOwot KwllbHNlIHJldHVybiBzdHJkdXAob3V0cHV0KTsKLSsKLSt0b29sb25nOgotKwllcnJubyA9IEVO QU1FVE9PTE9ORzsKLSAJcmV0dXJuIDA7Ci0gfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3Bh dGNoZXMvaXNhc2NpaS5wYXRjaCBiL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2lzYXNjaWkucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY3MTlkMmVlMTg4Zi4uMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL2lzYXNjaWkucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwyMSArMCwwIEBACi1Gcm9tIGU0OGU5OWMxMTIyNDZmYjU4MDU5NjQwNDA3NDQ0NWNiMjVk Nzg1OGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/PUMzPTg5cmlj bz0yMFJvbGltPz0gPGVyaWNvbnJAZGlzcm9vdC5vcmc+Ci1EYXRlOiBNb24sIDQgSmFuIDIwMjEg MjI6NDg6MzQgLTAzMDAKLVN1YmplY3Q6IFtQQVRDSF0gc3VwcHJlc3MgaXNhc2NpaSgpIG1hY3Jv IGZvciBDKysKLQotYW5hbG9nb3VzIHRvIGNvbW1pdCBhNjA0NTdjODRhNGI1OWFiNTY0ZDdmNGFi YjY2MGE3MDI4M2JhOThkLgotCi1kaWZmIC0tZ2l0IGluY2x1ZGUvY3R5cGUuaCBpbmNsdWRlL2N0 eXBlLmgKLWluZGV4IDc5MzY1MzZmLi4zMmJjZWY0ZCAxMDA2NDQKLS0tLSBhL2luY2x1ZGUvY3R5 cGUuaAotKysrIGIvaW5jbHVkZS9jdHlwZS5oCi1AQCAtNjQsNyArNjQsOSBAQCBpbnQgICBpc2Fz Y2lpKGludCk7Ci0gaW50ICAgdG9hc2NpaShpbnQpOwotICNkZWZpbmUgX3RvbG93ZXIoYSkgKChh KXwweDIwKQotICNkZWZpbmUgX3RvdXBwZXIoYSkgKChhKSYweDVmKQotKyNpZm5kZWYgX19jcGx1 c3BsdXMKLSAjZGVmaW5lIGlzYXNjaWkoYSkgKDAgPyBpc2FzY2lpKGEpIDogKHVuc2lnbmVkKShh KSA8IDEyOCkKLSsjZW5kaWYKLSAKLSAjZW5kaWYKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVz bC9wYXRjaGVzL21vX2xvb2t1cC5wYXRjaCBiL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL21vX2xvb2t1 cC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWU4NmUzM2M5YzcwLi4wMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvbW9fbG9va3VwLnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotRG8gbm90IGNyYXNoIHdpdGggYSBOVUxMIHBvaW50 ZXIgZGVyZWZlcmVuY2Ugd2hlbiBkY25nZXR0ZXh0KCkKLWlzIGNhbGxlZCB3aXRoIE5VTEwgbXNn aWRbMTJdIGFyZ3VtZW50cy4KLQotRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL2lzc3Vlcy8xMjA0MgotYW5kIHByb2JhYmx5IG90aGVycy4KLQotCS0t eHRyYWVtZQotCi0tLS0gYS9zcmMvbG9jYWxlL19fbW9fbG9va3VwLmMub3JpZwkyMDE5LTA2LTI2 IDA5OjU1OjM2Ljg0MzAxMjY3NCArMDIwMAotKysrIGIvc3JjL2xvY2FsZS9fX21vX2xvb2t1cC5j CTIwMTktMDYtMjYgMDk6NTY6MTEuNTI5NDQzOTU1ICswMjAwCi1AQCAtMTMsNyArMTMsNyBAQCBj b25zdCBjaGFyICpfX21vX2xvb2t1cChjb25zdCB2b2lkICpwLCBzCi0gCXVpbnQzMl90IGIgPSAw LCBuID0gc3dhcGMobW9bMl0sIHN3KTsKLSAJdWludDMyX3QgbyA9IHN3YXBjKG1vWzNdLCBzdyk7 Ci0gCXVpbnQzMl90IHQgPSBzd2FwYyhtb1s0XSwgc3cpOwotLQlpZiAobj49c2l6ZS80IHx8IG8+ PXNpemUtNCpuIHx8IHQ+PXNpemUtNCpuIHx8ICgob3x0KSU0KSkKLSsJaWYgKCFzIHx8IG4+PXNp emUvNCB8fCBvPj1zaXplLTQqbiB8fCB0Pj1zaXplLTQqbiB8fCAoKG98dCklNCkpCi0gCQlyZXR1 cm4gMDsKLSAJby89NDsKLSAJdC89NDsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVz L3BwYy1wdF9yZWdzLnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvcHBjLXB0X3JlZ3MucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ1ODE1MzIxYmYwZi4uMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwYy1wdF9yZWdzLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsMzggKzAsMCBAQAotY29tbWl0IGMyNTE4YThlZmI2NTA3ZjFiNDFjM2IxMmUw M2IwNmY4ZjIzMTdhMWYKLUF1dGhvcjogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4Pgot RGF0ZTogICBTYXQgT2N0IDE5IDE1OjUzOjQzIDIwMTkgLTA0MDAKLQotICAgIHVzZSBzdHJ1Y3Qg cHRfcmVncyAqIHJhdGhlciB0aGFuIHZvaWQgKiBmb3IgcG93ZXJwY1s2NF0gc2lnY29udGV4dCBy ZWdzCi0gICAgCi0gICAgdGhpcyBpcyB0byBtYXRjaCB0aGUga2VybmVsIGFuZCBnbGliYyBpbnRl cmZhY2VzLiBoZXJlLCBzdHJ1Y3QgcHRfcmVncwotICAgIGlzIGFuIGluY29tcGxldGUgdHlwZSwg YnV0IHRoYXQncyBoYXJtbGVzcywgYW5kIGlmIGl0J3MgY29tcGxldGVkIGJ5Ci0gICAgaW5jbHVz aW9uIG9mIGFub3RoZXIgaGVhZGVyIHRoZW4gbWVtYmVycyBvZiB0aGUgc3RydWN0IHBvaW50ZWQg dG8gYnkKLSAgICB0aGUgcmVncyBtZW1iZXIgY2FuIGJlIGFjY2Vzc2VkIGRpcmVjdGx5IHdpdGhv dXQgZ29pbmcgdGhyb3VnaCBhIGNhc3QKLSAgICBvciBpbnRlcm1lZGlhdGUgcG9pbnRlciBvYmpl Y3QuCi0KLWRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMvYml0cy9zaWduYWwuaCBiL2FyY2gvcG93 ZXJwYy9iaXRzL3NpZ25hbC5oCi1pbmRleCAwNmVmYjExYy4uYzFiZjNjYWYgMTAwNjQ0Ci0tLS0g YS9hcmNoL3Bvd2VycGMvYml0cy9zaWduYWwuaAotKysrIGIvYXJjaC9wb3dlcnBjL2JpdHMvc2ln bmFsLmgKLUBAIC0yOCw3ICsyOCw3IEBAIHN0cnVjdCBzaWdjb250ZXh0IHsKLSAJaW50IHNpZ25h bDsKLSAJdW5zaWduZWQgbG9uZyBoYW5kbGVyOwotIAl1bnNpZ25lZCBsb25nIG9sZG1hc2s7Ci0t CXZvaWQgKnJlZ3M7Ci0rCXN0cnVjdCBwdF9yZWdzICpyZWdzOwotIH07Ci0gCi0gdHlwZWRlZiBz dHJ1Y3QgewotZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYzY0L2JpdHMvc2lnbmFsLmggYi9hcmNo L3Bvd2VycGM2NC9iaXRzL3NpZ25hbC5oCi1pbmRleCA0ZGVjMjJhNS4uZDU0OTNiMTggMTAwNjQ0 Ci0tLS0gYS9hcmNoL3Bvd2VycGM2NC9iaXRzL3NpZ25hbC5oCi0rKysgYi9hcmNoL3Bvd2VycGM2 NC9iaXRzL3NpZ25hbC5oCi1AQCAtMzIsNyArMzIsNyBAQCB0eXBlZGVmIHN0cnVjdCBzaWdjb250 ZXh0IHsKLSAJaW50IF9wYWQwOwotIAl1bnNpZ25lZCBsb25nIGhhbmRsZXI7Ci0gCXVuc2lnbmVk IGxvbmcgb2xkbWFzazsKLS0Jdm9pZCAqcmVnczsKLSsJc3RydWN0IHB0X3JlZ3MgKnJlZ3M7Ci0g CWdyZWdzZXRfdCBncF9yZWdzOwotIAlmcHJlZ3NldF90IGZwX3JlZ3M7Ci0gCXZycmVnc2V0X3Qg KnZfcmVnczsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwYzY0LWZwcmVnc2V0 X3QucGF0Y2ggYi9zcmNwa2dzL211c2wvcGF0Y2hlcy9wcGM2NC1mcHJlZ3NldF90LnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMjYxN2JhMGVmN2QuLjAwMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL211c2wvcGF0Y2hlcy9wcGM2NC1mcHJlZ3NldF90LnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsMzEgKzAsMCBAQAotY29tbWl0IGM5ZjQ4Y2RlMGEyMjY0MWNlM2RhZjU0NTk2 YTllY2ViZGFiOTE0MzUKLUF1dGhvcjogUmljaCBGZWxrZXIgPGRhbGlhc0BhZXJpZmFsLmN4Pgot RGF0ZTogICBTYXQgT2N0IDE5IDE1OjM5OjQ1IDIwMTkgLTA0MDAKLQotICAgIGZpeCBmcHJlZ3Nl dF90IHR5cGUgb24gcG93ZXJwYzY0Ci0gICAgCi0gICAgdGhlIHVzZXJzcGFjZSB1Y29udGV4dCBB UEkgaGFzIHRoaXMgYXMgYW4gYXJyYXkgcmF0aGVyIHRoYW4gYQotICAgIHN0cnVjdHVyZS4KLSAg ICAKLSAgICBjb21taXQgM2M1OWE4Njg5NTY2MzZiYzhhZGFmYjFiMTY4ZDA5MDg5NzY5MjUzMiBm aXhlZCB0aGUKLSAgICBjb3JyZXNwb25kaW5nIG1pc3Rha2UgZm9yIHZycmVnc2V0X3QsIG5hbWVs eSB0aGF0IHRoZSBvcmlnaW5hbAotICAgIHBvd2VycGM2NCBwb3J0IHVzZWQgYSBtaXggb2YgdHlw ZXMgZnJvbSAzMi1iaXQgcG93ZXJwYyBhbmQgcG93ZXJwYzY0Ci0gICAgcmF0aGVyIHRoYW4gbWF0 Y2hpbmcgdGhlIDY0LWJpdCB0eXBlcy4KLQotZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYzY0L2Jp dHMvc2lnbmFsLmggYi9hcmNoL3Bvd2VycGM2NC9iaXRzL3NpZ25hbC5oCi1pbmRleCAyY2MwNjA0 Yy4uNGRlYzIyYTUgMTAwNjQ0Ci0tLS0gYS9hcmNoL3Bvd2VycGM2NC9iaXRzL3NpZ25hbC5oCi0r KysgYi9hcmNoL3Bvd2VycGM2NC9iaXRzL3NpZ25hbC5oCi1AQCAtOSwxMSArOSw3IEBACi0gI2lm IGRlZmluZWQoX0dOVV9TT1VSQ0UpIHx8IGRlZmluZWQoX0JTRF9TT1VSQ0UpCi0gCi0gdHlwZWRl ZiB1bnNpZ25lZCBsb25nIGdyZWdfdCwgZ3JlZ3NldF90WzQ4XTsKLS0KLS10eXBlZGVmIHN0cnVj dCB7Ci0tCWRvdWJsZSBmcHJlZ3NbMzJdOwotLQlkb3VibGUgZnBzY3I7Ci0tfSBmcHJlZ3NldF90 OwotK3R5cGVkZWYgZG91YmxlIGZwcmVnc2V0X3RbMzNdOwotIAotIHR5cGVkZWYgc3RydWN0IHsK LSAjaWZkZWYgX19HTlVDX18KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXVzbC9wYXRjaGVzL3BwY2xl LnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvcHBjbGUucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDdkNDkzMzhhNWEwZi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv bXVzbC9wYXRjaGVzL3BwY2xlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjQgKzAsMCBAQAot RnJvbSAyMGRmYzIwMDI0ODJhMjFiOTU1YjcxMGFmMTE5YTAxYWVjZWU3ODRiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQotRnJvbTogRGFuaWVsIEtvbGVzYSA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+ Ci1EYXRlOiBUdWUsIDE1IERlYyAyMDIwIDIwOjQyOjE3ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hd IGFkZCBwcGMzMiBsZSBzdWJhcmNoCi0KLS0tLQotIGNvbmZpZ3VyZSB8IDEgKwotIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKQotCi1kaWZmIC0tZ2l0IGNvbmZpZ3VyZSBjb25maWd1cmUK LWluZGV4IDg2ODAxMjguLmYxY2E1OGUgMTAwNzU1Ci0tLS0gYS9jb25maWd1cmUKLSsrKyBiL2Nv bmZpZ3VyZQotQEAgLTY0NSw2ICs2NDUsNyBAQCBmaQotIGlmIHRlc3QgIiRBUkNIIiA9ICJwb3dl cnBjIiA7IHRoZW4KLSB0cnljcHBpZiAiX19OT19GUFJTX18gJiYgIV9TT0ZUX0ZMT0FUIiAiJHQi ICYmIGZhaWwgXAotICAgIiQwOiBlcnJvcjogY29tcGlsZXIncyBmbG9hdGluZyBwb2ludCBjb25m aWd1cmF0aW9uIGlzIHVuc3VwcG9ydGVkIgotK3RyeWNwcGlmIF9fTElUVExFX0VORElBTl9fICIk dCIgJiYgU1VCQVJDSD0ke1NVQkFSQ0h9bGUKLSB0cnljcHBpZiBfU09GVF9GTE9BVCAiJHQiICYm IFNVQkFSQ0g9JHtTVUJBUkNIfS1zZgotIGZpCi0gCi0tLSAKLTIuMjkuMgotCmRpZmYgLS1naXQg YS9zcmNwa2dzL211c2wvcGF0Y2hlcy93b3JrX2Fyb3VuZF9saW51eF9idWdfaW5fcmVhZGxpbmtf c3lzY2FsbF93aXRoX3plcm9fYnVmZmVyLnBhdGNoIGIvc3JjcGtncy9tdXNsL3BhdGNoZXMvd29y a19hcm91bmRfbGludXhfYnVnX2luX3JlYWRsaW5rX3N5c2NhbGxfd2l0aF96ZXJvX2J1ZmZlci5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzI4NjQzMmViZWEyLi4wMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9tdXNsL3BhdGNoZXMvd29ya19hcm91bmRfbGludXhfYnVnX2lu X3JlYWRsaW5rX3N5c2NhbGxfd2l0aF96ZXJvX2J1ZmZlci5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDU5ICswLDAgQEAKLUZyb20gZTJmYTcyMGJlNzAyNGNjZTRmYzQ4OWYzODc3NDc2ZDM1ZGE0 OGVlMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFJpY2ggRmVsa2VyIDxkYWxpYXNA YWVyaWZhbC5jeD4KLURhdGU6IE1vbiwgMjMgTm92IDIwMjAgMTk6NDQ6MTkgLTA1MDAKLVN1Ympl Y3Q6IFtQQVRDSF0gd29yayBhcm91bmQgbGludXggYnVnIGluIHJlYWRsaW5rIHN5c2NhbGwgd2l0 aCB6ZXJvIGJ1ZmZlcgotIHNpemUKLQotbGludXggZmFpbHMgd2l0aCBFSU5WQUwgd2hlbiBhIHpl cm8gYnVmZmVyIHNpemUgaXMgcGFzc2VkIHRvIHRoZQotc3lzY2FsbC4gdGhpcyBpcyBub24tY29u Zm9ybWluZyBiZWNhdXNlIFBPU0lYIGFscmVhZHkgZGVmaW5lcyBFSU5WQUwKLXdpdGggYSBzaWdu aWZpY2FudGx5IGRpZmZlcmVudCBtZWFuaW5nOiB0aGUgdGFyZ2V0IGlzIG5vdCBhIHN5bWxpbmsu Ci0KLXNpbmNlIHRoZSByZXF1ZXN0IGlzIHNlbWFudGljYWxseSB2YWxpZCwgcGF0Y2ggaXQgdXAg YnkgdXNpbmcgYSBkdW1teQotYnVmZmVyIG9mIGxlbmd0aCBvbmUsIGFuZCB0cnVuY2F0aW5nIHRo ZSByZXR1cm4gdmFsdWUgdG8gemVybyBpZiBpdAotc3VjY2VlZHMuCi0tLS0KLSBzcmMvdW5pc3Rk L3JlYWRsaW5rLmMgICB8IDExICsrKysrKysrKy0tCi0gc3JjL3VuaXN0ZC9yZWFkbGlua2F0LmMg fCAgOSArKysrKysrKy0KLSAyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMvdW5pc3RkL3JlYWRsaW5rLmMgYi9zcmMvdW5p c3RkL3JlYWRsaW5rLmMKLWluZGV4IGExNTJkNTI0OS4uMzJmNDUzN2Y5IDEwMDY0NAotLS0tIGEv c3JjL3VuaXN0ZC9yZWFkbGluay5jCi0rKysgYi9zcmMvdW5pc3RkL3JlYWRsaW5rLmMKLUBAIC00 LDkgKzQsMTYgQEAKLSAKLSBzc2l6ZV90IHJlYWRsaW5rKGNvbnN0IGNoYXIgKnJlc3RyaWN0IHBh dGgsIGNoYXIgKnJlc3RyaWN0IGJ1Ziwgc2l6ZV90IGJ1ZnNpemUpCi0gewotKwljaGFyIGR1bW15 WzFdOwotKwlpZiAoIWJ1ZnNpemUpIHsKLSsJCWJ1ZiA9IGR1bW15OwotKwkJYnVmc2l6ZSA9IDE7 Ci0rCX0KLSAjaWZkZWYgU1lTX3JlYWRsaW5rCi0tCXJldHVybiBzeXNjYWxsKFNZU19yZWFkbGlu aywgcGF0aCwgYnVmLCBidWZzaXplKTsKLSsJaW50IHIgPSBfX3N5c2NhbGwoU1lTX3JlYWRsaW5r LCBwYXRoLCBidWYsIGJ1ZnNpemUpOwotICNlbHNlCi0tCXJldHVybiBzeXNjYWxsKFNZU19yZWFk bGlua2F0LCBBVF9GRENXRCwgcGF0aCwgYnVmLCBidWZzaXplKTsKLSsJaW50IHIgPSBfX3N5c2Nh bGwoU1lTX3JlYWRsaW5rYXQsIEFUX0ZEQ1dELCBwYXRoLCBidWYsIGJ1ZnNpemUpOwotICNlbmRp ZgotKwlpZiAoYnVmID09IGR1bW15ICYmIHIgPiAwKSByID0gMDsKLSsJcmV0dXJuIF9fc3lzY2Fs bF9yZXQocik7Ci0gfQotZGlmZiAtLWdpdCBhL3NyYy91bmlzdGQvcmVhZGxpbmthdC5jIGIvc3Jj L3VuaXN0ZC9yZWFkbGlua2F0LmMKLWluZGV4IDlhZjQ1Y2Q1YS4uZjc5ZDNkMTQyIDEwMDY0NAot LS0tIGEvc3JjL3VuaXN0ZC9yZWFkbGlua2F0LmMKLSsrKyBiL3NyYy91bmlzdGQvcmVhZGxpbmth dC5jCi1AQCAtMyw1ICszLDEyIEBACi0gCi0gc3NpemVfdCByZWFkbGlua2F0KGludCBmZCwgY29u c3QgY2hhciAqcmVzdHJpY3QgcGF0aCwgY2hhciAqcmVzdHJpY3QgYnVmLCBzaXplX3QgYnVmc2l6 ZSkKLSB7Ci0tCXJldHVybiBzeXNjYWxsKFNZU19yZWFkbGlua2F0LCBmZCwgcGF0aCwgYnVmLCBi dWZzaXplKTsKLSsJY2hhciBkdW1teVsxXTsKLSsJaWYgKCFidWZzaXplKSB7Ci0rCQlidWYgPSBk dW1teTsKLSsJCWJ1ZnNpemUgPSAxOwotKwl9Ci0rCWludCByID0gX19zeXNjYWxsKFNZU19yZWFk bGlua2F0LCBmZCwgcGF0aCwgYnVmLCBidWZzaXplKTsKLSsJaWYgKGJ1ZiA9PSBkdW1teSAmJiBy ID4gMCkgciA9IDA7Ci0rCXJldHVybiBfX3N5c2NhbGxfcmV0KHIpOwotIH0KZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbXVzbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXVzbC90ZW1wbGF0ZQppbmRleCBjNzdj YzJiNmM0MDUuLjcxNzliNDNiM2Y1YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXNsL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvbXVzbC90ZW1wbGF0ZQpAQCAtMSw4ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ211c2wnCiBwa2duYW1lPW11c2wKLXJldmVydHM9IjEuMi4wXzEiCi12ZXJzaW9u PTEuMS4yNAotcmV2aXNpb249MTUKK3ZlcnNpb249MS4yLjMKK3JldmlzaW9uPTEKIGFyY2hzPSIq LW11c2wiCiBib290c3RyYXA9eWVzCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMiw3 ICsxMSw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9tdXNsLmxpYmMub3JnLyIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9tdXNsLmxpYmMub3JnL3JlbGVhc2VzL211c2wtJHt2ZXJzaW9ufS50YXIu Z3oiCi1jaGVja3N1bT0xMzcwYzlhODEyYjJjZjJhN2Q5MjgwMjUxMGNjYTAwNThjYzM3ZTY2YTdi ZWRkNzAwNTFmMGEzNDAxNTAyMmEzCitjaGVja3N1bT03ZDViMGI2MDYyNTIxZTQ2MjdlMDk5ZTRj OWRjODI0OGQzMmEzMDI4NWU5NTliN2VlY2FhNzgwY2Y4Y2ZkNGE0CiAKIG5vc3RyaXBfZmlsZXM9 ImxpYmMuc28iCiBzaGxpYl9wcm92aWRlcz0ibGliYy5zbyIKQEAgLTI0LDYgKzIzLDcgQEAgcG9z dF9idWlsZCgpIHsKIAkkQ0MgJENGTEFHUyAkTERGTEFHUyAtZnBpZSAtYyAke0ZJTEVTRElSfS9f X3N0YWNrX2Noa19mYWlsX2xvY2FsLmMgLW8gX19zdGFja19jaGtfZmFpbF9sb2NhbC5vCiAJJEFS IHIgbGlic3NwX25vbnNoYXJlZC5hIF9fc3RhY2tfY2hrX2ZhaWxfbG9jYWwubwogfQorCiBkb19p bnN0YWxsKCkgewogCSMgTW92ZSBldmVyeXRoaW5nIHRvIC91c3IuCiAJdm1rZGlyIHVzci9saWIK CkZyb20gZjRiNWFhZDQ1MTAxOWY0ZDE2YTQ2MjYwNWVjODU4NTQ5MTIyOTdlNSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpE YXRlOiBXZWQsIDI5IE1hciAyMDIzIDE1OjA4OjE2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMi8x OV0gYmFzZS1jaHJvb3Q6IGJ1bXAgbXVzbC1kZXZlbCB2ZXJzaW9uCgotLS0KIHNyY3BrZ3MvYmFz ZS1jaHJvb3QvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Jhc2UtY2hyb290L3Rl bXBsYXRlIGIvc3JjcGtncy9iYXNlLWNocm9vdC90ZW1wbGF0ZQppbmRleCBlNmYxNjg0ZWQzNzAu Ljc5M2ViNTMzZDJhNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9iYXNlLWNocm9vdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2Jhc2UtY2hyb290L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnYmFzZS1jaHJvb3QnCiBwa2duYW1lPWJhc2UtY2hyb290Ci12ZXJzaW9u PTAuNjcKLXJldmlzaW9uPTIKK3ZlcnNpb249MC42OAorcmV2aXNpb249MQogYm9vdHN0cmFwPXll cwogYnVpbGRfc3R5bGU9bWV0YQogc2hvcnRfZGVzYz0iTWluaW1hbCBzZXQgb2YgcGFja2FnZXMg cmVxdWlyZWQgZm9yIGNocm9vdCB3aXRoIHhicHMtc3JjIgpAQCAtMTEsNyArMTEsNyBAQCBob21l cGFnZT0iaHR0cDovL3d3dy52b2lkbGludXgub3JnIgogcmVwb3NpdG9yeT1ib290c3RyYXAKIAog Y2FzZSAiJFhCUFNfVEFSR0VUX0xJQkMiIGluCi0JbXVzbCkgZGVwZW5kcz0ibXVzbC1kZXZlbCI7 OworCW11c2wpIGRlcGVuZHM9Im11c2wtZGV2ZWw+PTEuMi4zXzEiOzsKIAkqKSBkZXBlbmRzPSJn bGliYy1kZXZlbCBnbGliYy1sb2NhbGVzIjs7CiBlc2FjCiAKCkZyb20gNWVmM2Q0MjA0Y2Y0MWQ2 MWEzYzI3ZWZjNTIxNzkxMGRmYjUyZmZkMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog ZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIz IDE1OjA5OjAxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMy8xOV0gYmFzZS1kZXZlbDogYnVtcCBt dXNsLWRldmVsIHZlcnNpb24KCi0tLQogc3JjcGtncy9iYXNlLWRldmVsL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvYmFzZS1kZXZlbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYmFzZS1kZXZl bC90ZW1wbGF0ZQppbmRleCA1NzBmNjk5Y2E5NjAuLjU2MTAxMzg1YzRmNyAxMDA2NDQKLS0tIGEv c3JjcGtncy9iYXNlLWRldmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYmFzZS1kZXZlbC90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Jhc2UtZGV2ZWwnCiBw a2duYW1lPWJhc2UtZGV2ZWwKIHZlcnNpb249MjAxODEwMDMKLXJldmlzaW9uPTIKK3JldmlzaW9u PTMKIGJ1aWxkX3N0eWxlPW1ldGEKIGRlcGVuZHM9ImF1dG9jb25mIGF1dG9tYWtlIGJjIGJpbnV0 aWxzIGJpc29uIGVkIGZsZXggZ2NjIGdldHRleHQKICBncm9mZiBsaWJ0b29sIG00IG1ha2UgcGF0 Y2ggcGtnLWNvbmZpZyB0ZXhpbmZvIHVuemlwIHh6IgpAQCAtMTIsNiArMTIsNiBAQCBob21lcGFn ZT0iaHR0cDovL3d3dy52b2lkbGludXgub3JnLyIKIGxpYjMyZGlzYWJsZWQ9eWVzCiAKIGNhc2Ug IiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgotCSotbXVzbCkgZGVwZW5kcys9IiBtdXNsLWRldmVs Ijs7CisJKi1tdXNsKSBkZXBlbmRzKz0iIG11c2wtZGV2ZWw+PTEuMi4zXzEiOzsKIAkqKSBkZXBl bmRzKz0iIGdsaWJjLWRldmVsIjs7CiBlc2FjCgpGcm9tIDkxODIwMmUxMmY4NThjYzM0YmZlMjNi NzVjMmFhYWE5Zjg2MzFiMWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5p Y29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyOSBNYXIgMjAyMyAxNjowMzoy NCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMTldIGNyb3NzLWFhcmNoNjQtbGludXgtbXVzbDog YnVtcCBtdXNsIHZlcnNpb24KCi0tLQogc3JjcGtncy9jcm9zcy1hYXJjaDY0LWxpbnV4LW11c2wv dGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nyb3NzLWFhcmNoNjQtbGludXgtbXVz bC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3Jvc3MtYWFyY2g2NC1saW51eC1tdXNsL3RlbXBsYXRlCmlu ZGV4IDgwMzhiMjhkNzBhZC4uZjE5NDY2Y2E3N2I2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Nyb3Nz LWFhcmNoNjQtbGludXgtbXVzbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nyb3NzLWFhcmNoNjQt bGludXgtbXVzbC90ZW1wbGF0ZQpAQCAtMSwxMiArMSwxMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnY3Jvc3MtYWFyY2g2NC1saW51eC1tdXNsJwogX2JpbnV0aWxzX3ZlcnNpb249Mi4zOQogX2dj Y192ZXJzaW9uPTEyLjIuMAotX211c2xfdmVyc2lvbj0xLjEuMjQKK19tdXNsX3ZlcnNpb249MS4y LjMKIF9saW51eF92ZXJzaW9uPTUuMTAuNAogX2xpYnVjb250ZXh0X3ZlcnNpb249MS4wCiBwa2du YW1lPWNyb3NzLWFhcmNoNjQtbGludXgtbXVzbAogdmVyc2lvbj0wLjM1Ci1yZXZpc2lvbj0zCity ZXZpc2lvbj00CiBidWlsZF9zdHlsZT12b2lkLWNyb3NzCiBjb25maWd1cmVfYXJncz0iLS13aXRo LWFyY2g9YXJtdjgtYSIKIGhvc3RtYWtlZGVwZW5kcz0idGV4aW5mbyB0YXIgZ2NjLW9iamMgZ2Nj LWdvIGZsZXggcGVybCBweXRob24zIgpAQCAtMjUsNyArMjUsNyBAQCBkaXN0ZmlsZXM9IgogIGh0 dHBzOi8vZ2l0aHViLmNvbS9rYW5paW5pL2xpYnVjb250ZXh0L2FyY2hpdmUvbGlidWNvbnRleHQt JHtfbGlidWNvbnRleHRfdmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09IjY0NWMyNWY1NjNiOGFk YzBhODFkYmQ2YTQxY2ZmYmY0ZDM3MDgzYTM4MmUwMmQ1ZDNkZjRmNjVjMDk1MTZkMDAKICBlNTQ5 Y2Y5Y2YzNTk0YTAwZTI3YjY1ODlkNDMyMmQ3MGUwNzIwY2RkMjEzZjM5YmViNDE4MWUwNjkyNjIz MGZmCi0gMTM3MGM5YTgxMmIyY2YyYTdkOTI4MDI1MTBjY2EwMDU4Y2MzN2U2NmE3YmVkZDcwMDUx ZjBhMzQwMTUwMjJhMworIDdkNWIwYjYwNjI1MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMyYTMwMjg1 ZTk1OWI3ZWVjYWE3ODBjZjhjZmQ0YTQKICA5MDRlMzk2YzI2ZTk5OTJhMTZjZDFjYzk4OTQ2MDE3 MTUzNmJlZDc3MzliZjM2MDQ5ZjZlYjAyMGVlNWQ1NmVjCiAgMjM3MTRlOTlhODdmNmRlYTgyZThh MDczYzUyNjMyNTE2MWRkNjU0NjI0NTk4MjBiMTZhNjE2MmJlOTE5NTViYiIKIG5vY3Jvc3M9eWVz CgpGcm9tIDA0OTViMTZkZDY4Y2FmYmY4ODY3YmM0NDEyYThlZjhmMzVjZDY1YjggTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4K RGF0ZTogV2VkLCAyOSBNYXIgMjAyMyAxNjowMzoyNCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDUv MTldIGNyb3NzLWFybS1saW51eC1tdXNsZWFiaTogYnVtcCBtdXNsIHZlcnNpb24KCi0tLQogc3Jj cGtncy9jcm9zcy1hcm0tbGludXgtbXVzbGVhYmkvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2Nyb3NzLWFybS1saW51eC1tdXNsZWFiaS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3Jvc3Mt YXJtLWxpbnV4LW11c2xlYWJpL3RlbXBsYXRlCmluZGV4IGVlNTk5MzFkNmQ5My4uNDAwMjEyYzMx YzQ1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Nyb3NzLWFybS1saW51eC1tdXNsZWFiaS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2Nyb3NzLWFybS1saW51eC1tdXNsZWFiaS90ZW1wbGF0ZQpAQCAtMSwx MiArMSwxMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY3Jvc3MtYXJtLWxpbnV4LW11c2xlYWJp JwogX2JpbnV0aWxzX3ZlcnNpb249Mi4zOQogX2djY192ZXJzaW9uPTEyLjIuMAotX211c2xfdmVy c2lvbj0xLjEuMjQKK19tdXNsX3ZlcnNpb249MS4yLjMKIF9saW51eF92ZXJzaW9uPTUuMTAuNAog X2xpYnVjb250ZXh0X3ZlcnNpb249MS4wCiBwa2duYW1lPWNyb3NzLWFybS1saW51eC1tdXNsZWFi aQogdmVyc2lvbj0wLjM1Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT12b2lk LWNyb3NzCiBjb25maWd1cmVfYXJncz0iLS13aXRoLWFyY2g9YXJtdjV0ZSAtLXdpdGgtZmxvYXQ9 c29mdCIKIGhvc3RtYWtlZGVwZW5kcz0idGV4aW5mbyB0YXIgZ2NjLW9iamMgZ2NjLWdvIGZsZXgg cGVybCBweXRob24zIgpAQCAtMjUsNyArMjUsNyBAQCBkaXN0ZmlsZXM9IgogIGh0dHBzOi8vZ2l0 aHViLmNvbS9rYW5paW5pL2xpYnVjb250ZXh0L2FyY2hpdmUvbGlidWNvbnRleHQtJHtfbGlidWNv bnRleHRfdmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09IjY0NWMyNWY1NjNiOGFkYzBhODFkYmQ2 YTQxY2ZmYmY0ZDM3MDgzYTM4MmUwMmQ1ZDNkZjRmNjVjMDk1MTZkMDAKICBlNTQ5Y2Y5Y2YzNTk0 YTAwZTI3YjY1ODlkNDMyMmQ3MGUwNzIwY2RkMjEzZjM5YmViNDE4MWUwNjkyNjIzMGZmCi0gMTM3 MGM5YTgxMmIyY2YyYTdkOTI4MDI1MTBjY2EwMDU4Y2MzN2U2NmE3YmVkZDcwMDUxZjBhMzQwMTUw MjJhMworIDdkNWIwYjYwNjI1MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMyYTMwMjg1ZTk1OWI3ZWVj YWE3ODBjZjhjZmQ0YTQKICA5MDRlMzk2YzI2ZTk5OTJhMTZjZDFjYzk4OTQ2MDE3MTUzNmJlZDc3 MzliZjM2MDQ5ZjZlYjAyMGVlNWQ1NmVjCiAgMjM3MTRlOTlhODdmNmRlYTgyZThhMDczYzUyNjMy NTE2MWRkNjU0NjI0NTk4MjBiMTZhNjE2MmJlOTE5NTViYiIKIG5vY3Jvc3M9eWVzCgpGcm9tIDNi OThjM2JmZWVhMTk2MjI3NDIxNmNjYzNlNDViNDYyMDczYzE5MjUgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogV2Vk LCAyOSBNYXIgMjAyMyAxNjowMzoyNCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDYvMTldIGNyb3Nz LWFybS1saW51eC1tdXNsZWFiaWhmOiBidW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNwa2dzL2Ny b3NzLWFybS1saW51eC1tdXNsZWFiaWhmL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFu Z2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9jcm9zcy1hcm0tbGludXgtbXVzbGVhYmloZi90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3Jvc3MtYXJt LWxpbnV4LW11c2xlYWJpaGYvdGVtcGxhdGUKaW5kZXggMzMzZGI5NTQyNWRkLi44ZDUwNDFlZTQx MjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY3Jvc3MtYXJtLWxpbnV4LW11c2xlYWJpaGYvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9jcm9zcy1hcm0tbGludXgtbXVzbGVhYmloZi90ZW1wbGF0ZQpAQCAt MSwxMiArMSwxMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY3Jvc3MtYXJtLWxpbnV4LW11c2xl YWJpaGYnCiBfYmludXRpbHNfdmVyc2lvbj0yLjM5CiBfZ2NjX3ZlcnNpb249MTIuMi4wCi1fbXVz bF92ZXJzaW9uPTEuMS4yNAorX211c2xfdmVyc2lvbj0xLjIuMwogX2xpbnV4X3ZlcnNpb249NS4x MC40CiBfbGlidWNvbnRleHRfdmVyc2lvbj0xLjAKIHBrZ25hbWU9Y3Jvc3MtYXJtLWxpbnV4LW11 c2xlYWJpaGYKIHZlcnNpb249MC4zNQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5 bGU9dm9pZC1jcm9zcwogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1hcmNoPWFybXY2IC0td2l0aC1m cHU9dmZwIC0td2l0aC1mbG9hdD1oYXJkIgogaG9zdG1ha2VkZXBlbmRzPSJ0ZXhpbmZvIHRhciBn Y2Mtb2JqYyBnY2MtZ28gZmxleCBwZXJsIHB5dGhvbjMiCkBAIC0yNSw3ICsyNSw3IEBAIGRpc3Rm aWxlcz0iCiAgaHR0cHM6Ly9naXRodWIuY29tL2thbmlpbmkvbGlidWNvbnRleHQvYXJjaGl2ZS9s aWJ1Y29udGV4dC0ke19saWJ1Y29udGV4dF92ZXJzaW9ufS50YXIuZ3oiCiBjaGVja3N1bT0iNjQ1 YzI1ZjU2M2I4YWRjMGE4MWRiZDZhNDFjZmZiZjRkMzcwODNhMzgyZTAyZDVkM2RmNGY2NWMwOTUx NmQwMAogIGU1NDljZjljZjM1OTRhMDBlMjdiNjU4OWQ0MzIyZDcwZTA3MjBjZGQyMTNmMzliZWI0 MTgxZTA2OTI2MjMwZmYKLSAxMzcwYzlhODEyYjJjZjJhN2Q5MjgwMjUxMGNjYTAwNThjYzM3ZTY2 YTdiZWRkNzAwNTFmMGEzNDAxNTAyMmEzCisgN2Q1YjBiNjA2MjUyMWU0NjI3ZTA5OWU0YzlkYzgy NDhkMzJhMzAyODVlOTU5YjdlZWNhYTc4MGNmOGNmZDRhNAogIDkwNGUzOTZjMjZlOTk5MmExNmNk MWNjOTg5NDYwMTcxNTM2YmVkNzczOWJmMzYwNDlmNmViMDIwZWU1ZDU2ZWMKICAyMzcxNGU5OWE4 N2Y2ZGVhODJlOGEwNzNjNTI2MzI1MTYxZGQ2NTQ2MjQ1OTgyMGIxNmE2MTYyYmU5MTk1NWJiIgog bm9jcm9zcz15ZXMKCkZyb20gMTdmYWFhNGU3ZTQxNWE5NmE1ZTRlYTg4ZDA2ODFmMDBkZDlmM2Iy ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FA Z21haWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAzOjI1IC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAwNy8xOV0gY3Jvc3MtYXJtdjdsLWxpbnV4LW11c2xlYWJpaGY6IGJ1bXAgbXVzbCB2 ZXJzaW9uCgotLS0KIHNyY3BrZ3MvY3Jvc3MtYXJtdjdsLWxpbnV4LW11c2xlYWJpaGYvdGVtcGxh dGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nyb3NzLWFybXY3bC1saW51eC1tdXNsZWFiaWhm L3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1hcm12N2wtbGludXgtbXVzbGVhYmloZi90ZW1wbGF0 ZQppbmRleCAzYzRlYTIzNTc2NjEuLjc2MDI1MTg1ZWRiZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9j cm9zcy1hcm12N2wtbGludXgtbXVzbGVhYmloZi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nyb3Nz LWFybXY3bC1saW51eC1tdXNsZWFiaWhmL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdjcm9zcy1hcm12N2wtbGludXgtbXVzbGVhYmloZicKIF9iaW51dGls c192ZXJzaW9uPTIuMzkKIF9nY2NfdmVyc2lvbj0xMi4yLjAKLV9tdXNsX3ZlcnNpb249MS4xLjI0 CitfbXVzbF92ZXJzaW9uPTEuMi4zCiBfbGludXhfdmVyc2lvbj01LjEwLjQKIF9saWJ1Y29udGV4 dF92ZXJzaW9uPTEuMAogcGtnbmFtZT1jcm9zcy1hcm12N2wtbGludXgtbXVzbGVhYmloZgogdmVy c2lvbj0wLjM1Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT12b2lkLWNyb3Nz CiBjb25maWd1cmVfYXJncz0iLS13aXRoLWFyY2g9YXJtdjctYSAtLXdpdGgtZnB1PXZmcHYzIC0t d2l0aC1mbG9hdD1oYXJkIgogaG9zdG1ha2VkZXBlbmRzPSJ0ZXhpbmZvIHRhciBnY2Mtb2JqYyBn Y2MtZ28gZmxleCBwZXJsIHB5dGhvbjMiCkBAIC0yNSw3ICsyNSw3IEBAIGRpc3RmaWxlcz0iCiAg aHR0cHM6Ly9naXRodWIuY29tL2thbmlpbmkvbGlidWNvbnRleHQvYXJjaGl2ZS9saWJ1Y29udGV4 dC0ke19saWJ1Y29udGV4dF92ZXJzaW9ufS50YXIuZ3oiCiBjaGVja3N1bT0iNjQ1YzI1ZjU2M2I4 YWRjMGE4MWRiZDZhNDFjZmZiZjRkMzcwODNhMzgyZTAyZDVkM2RmNGY2NWMwOTUxNmQwMAogIGU1 NDljZjljZjM1OTRhMDBlMjdiNjU4OWQ0MzIyZDcwZTA3MjBjZGQyMTNmMzliZWI0MTgxZTA2OTI2 MjMwZmYKLSAxMzcwYzlhODEyYjJjZjJhN2Q5MjgwMjUxMGNjYTAwNThjYzM3ZTY2YTdiZWRkNzAw NTFmMGEzNDAxNTAyMmEzCisgN2Q1YjBiNjA2MjUyMWU0NjI3ZTA5OWU0YzlkYzgyNDhkMzJhMzAy ODVlOTU5YjdlZWNhYTc4MGNmOGNmZDRhNAogIDkwNGUzOTZjMjZlOTk5MmExNmNkMWNjOTg5NDYw MTcxNTM2YmVkNzczOWJmMzYwNDlmNmViMDIwZWU1ZDU2ZWMKICAyMzcxNGU5OWE4N2Y2ZGVhODJl OGEwNzNjNTI2MzI1MTYxZGQ2NTQ2MjQ1OTgyMGIxNmE2MTYyYmU5MTk1NWJiIgogbm9jcm9zcz15 ZXMKCkZyb20gZGM0ZjUwYjBkYTFlMTY0Nzg4ODRmNWVjZWRmZDRjYjNkZjRjMTVlNiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29t PgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAzOjI1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw OC8xOV0gY3Jvc3MtaTY4Ni1saW51eC1tdXNsOiBidW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNw a2dzL2Nyb3NzLWk2ODYtbGludXgtbXVzbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hh bmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvY3Jvc3MtaTY4Ni1saW51eC1tdXNsL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1pNjg2LWxp bnV4LW11c2wvdGVtcGxhdGUKaW5kZXggNmRjM2ZkY2JhMDdhLi5mNWQ1OWQwZGQ3NmYgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvY3Jvc3MtaTY4Ni1saW51eC1tdXNsL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvY3Jvc3MtaTY4Ni1saW51eC1tdXNsL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdjcm9zcy1pNjg2LWxpbnV4LW11c2wnCiBfYmludXRpbHNfdmVyc2lv bj0yLjM5CiBfZ2NjX3ZlcnNpb249MTIuMi4wCi1fbXVzbF92ZXJzaW9uPTEuMS4yNAorX211c2xf dmVyc2lvbj0xLjIuMwogX2xpbnV4X3ZlcnNpb249NS4xMC40CiBfbGlidWNvbnRleHRfdmVyc2lv bj0xLjAKIHBrZ25hbWU9Y3Jvc3MtaTY4Ni1saW51eC1tdXNsCiB2ZXJzaW9uPTAuMzUKLXJldmlz aW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXZvaWQtY3Jvc3MKIGhvc3RtYWtlZGVwZW5k cz0idGV4aW5mbyB0YXIgZ2NjLW9iamMgZ2NjLWdvIGZsZXggcGVybCBweXRob24zIgogbWFrZWRl cGVuZHM9ImlzbDE1LWRldmVsIGxpYm1wYy1kZXZlbCBnbXAtZGV2ZWwgbXBmci1kZXZlbApAQCAt MjQsNyArMjQsNyBAQCBkaXN0ZmlsZXM9IgogIGh0dHBzOi8vZ2l0aHViLmNvbS9rYW5paW5pL2xp YnVjb250ZXh0L2FyY2hpdmUvbGlidWNvbnRleHQtJHtfbGlidWNvbnRleHRfdmVyc2lvbn0udGFy Lmd6IgogY2hlY2tzdW09IjY0NWMyNWY1NjNiOGFkYzBhODFkYmQ2YTQxY2ZmYmY0ZDM3MDgzYTM4 MmUwMmQ1ZDNkZjRmNjVjMDk1MTZkMDAKICBlNTQ5Y2Y5Y2YzNTk0YTAwZTI3YjY1ODlkNDMyMmQ3 MGUwNzIwY2RkMjEzZjM5YmViNDE4MWUwNjkyNjIzMGZmCi0gMTM3MGM5YTgxMmIyY2YyYTdkOTI4 MDI1MTBjY2EwMDU4Y2MzN2U2NmE3YmVkZDcwMDUxZjBhMzQwMTUwMjJhMworIDdkNWIwYjYwNjI1 MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMyYTMwMjg1ZTk1OWI3ZWVjYWE3ODBjZjhjZmQ0YTQKICA5 MDRlMzk2YzI2ZTk5OTJhMTZjZDFjYzk4OTQ2MDE3MTUzNmJlZDc3MzliZjM2MDQ5ZjZlYjAyMGVl NWQ1NmVjCiAgMjM3MTRlOTlhODdmNmRlYTgyZThhMDczYzUyNjMyNTE2MWRkNjU0NjI0NTk4MjBi MTZhNjE2MmJlOTE5NTViYiIKIG5vY3Jvc3M9eWVzCgpGcm9tIDg2MDdmZTZlNTA5MGRjMGM0YzVj MzA0Y2VkZjI0NjUwOGZmM2E0YzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28g PG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyOSBNYXIgMjAyMyAxNjow MzoyNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDkvMTldIGNyb3NzLW1pcHNlbC1saW51eC1tdXNs OiBidW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNwa2dzL2Nyb3NzLW1pcHNlbC1saW51eC1tdXNs L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jcm9zcy1taXBzZWwtbGludXgtbXVz bC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY3Jvc3MtbWlwc2VsLWxpbnV4LW11c2wvdGVtcGxhdGUKaW5k ZXggMjMyNDdkNWJjOTcyLi45ZjQ4YmFlODFhOWEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY3Jvc3Mt bWlwc2VsLWxpbnV4LW11c2wvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jcm9zcy1taXBzZWwtbGlu dXgtbXVzbC90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Y3Jvc3MtbWlwc2VsLWxpbnV4LW11c2wnCiBfYmludXRpbHNfdmVyc2lvbj0yLjM5CiBfZ2NjX3Zl cnNpb249MTIuMi4wCi1fbXVzbF92ZXJzaW9uPTEuMS4yNAorX211c2xfdmVyc2lvbj0xLjIuMwog X2xpbnV4X3ZlcnNpb249NS4xMC40CiBwa2duYW1lPWNyb3NzLW1pcHNlbC1saW51eC1tdXNsCiB2 ZXJzaW9uPTAuMzUKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXZvaWQtY3Jv c3MKIGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtYXJjaD1taXBzMzJyMiAtLXdpdGgtZmxvYXQ9c29m dAogIC0td2l0aC1saW5rZXItaGFzaC1zdHlsZT1zeXN2IgpAQCAtMjQsNyArMjQsNyBAQCBkaXN0 ZmlsZXM9IgogICR7S0VSTkVMX1NJVEV9L2tlcm5lbC92NS54L2xpbnV4LSR7X2xpbnV4X3ZlcnNp b259LnRhci54eiIKIGNoZWNrc3VtPSI2NDVjMjVmNTYzYjhhZGMwYTgxZGJkNmE0MWNmZmJmNGQz NzA4M2EzODJlMDJkNWQzZGY0ZjY1YzA5NTE2ZDAwCiAgZTU0OWNmOWNmMzU5NGEwMGUyN2I2NTg5 ZDQzMjJkNzBlMDcyMGNkZDIxM2YzOWJlYjQxODFlMDY5MjYyMzBmZgotIDEzNzBjOWE4MTJiMmNm MmE3ZDkyODAyNTEwY2NhMDA1OGNjMzdlNjZhN2JlZGQ3MDA1MWYwYTM0MDE1MDIyYTMKKyA3ZDVi MGI2MDYyNTIxZTQ2MjdlMDk5ZTRjOWRjODI0OGQzMmEzMDI4NWU5NTliN2VlY2FhNzgwY2Y4Y2Zk NGE0CiAgOTA0ZTM5NmMyNmU5OTkyYTE2Y2QxY2M5ODk0NjAxNzE1MzZiZWQ3NzM5YmYzNjA0OWY2 ZWIwMjBlZTVkNTZlYyIKIG5vY3Jvc3M9eWVzCiAKCkZyb20gMTQ3NmY2ZmIyMmNlYjU3ZjczOGM2 NTNmYTdkYWFkMWIzNzVhMDIzYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8 bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAz OjI2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMC8xOV0gY3Jvc3MtbWlwc2VsLWxpbnV4LW11c2xo ZjogYnVtcCBtdXNsIHZlcnNpb24KCi0tLQogc3JjcGtncy9jcm9zcy1taXBzZWwtbGludXgtbXVz bGhmL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jcm9zcy1taXBzZWwtbGludXgt bXVzbGhmL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1taXBzZWwtbGludXgtbXVzbGhmL3RlbXBs YXRlCmluZGV4IDhjYzIwOGM3ZTg2ZC4uYzNjNWZjMzI5YTZjIDEwMDY0NAotLS0gYS9zcmNwa2dz L2Nyb3NzLW1pcHNlbC1saW51eC1tdXNsaGYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jcm9zcy1t aXBzZWwtbGludXgtbXVzbGhmL3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdjcm9zcy1taXBzZWwtbGludXgtbXVzbGhmJwogX2JpbnV0aWxzX3ZlcnNpb249 Mi4zOQogX2djY192ZXJzaW9uPTEyLjIuMAotX211c2xfdmVyc2lvbj0xLjEuMjQKK19tdXNsX3Zl cnNpb249MS4yLjMKIF9saW51eF92ZXJzaW9uPTUuMTAuNAogcGtnbmFtZT1jcm9zcy1taXBzZWwt bGludXgtbXVzbGhmCiB2ZXJzaW9uPTAuMzUKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxk X3N0eWxlPXZvaWQtY3Jvc3MKIGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtYXJjaD1taXBzMzJyMiAt LXdpdGgtZmxvYXQ9aGFyZAogIC0td2l0aC1saW5rZXItaGFzaC1zdHlsZT1zeXN2IgpAQCAtMjQs NyArMjQsNyBAQCBkaXN0ZmlsZXM9IgogICR7S0VSTkVMX1NJVEV9L2tlcm5lbC92NS54L2xpbnV4 LSR7X2xpbnV4X3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPSI2NDVjMjVmNTYzYjhhZGMwYTgx ZGJkNmE0MWNmZmJmNGQzNzA4M2EzODJlMDJkNWQzZGY0ZjY1YzA5NTE2ZDAwCiAgZTU0OWNmOWNm MzU5NGEwMGUyN2I2NTg5ZDQzMjJkNzBlMDcyMGNkZDIxM2YzOWJlYjQxODFlMDY5MjYyMzBmZgot IDEzNzBjOWE4MTJiMmNmMmE3ZDkyODAyNTEwY2NhMDA1OGNjMzdlNjZhN2JlZGQ3MDA1MWYwYTM0 MDE1MDIyYTMKKyA3ZDViMGI2MDYyNTIxZTQ2MjdlMDk5ZTRjOWRjODI0OGQzMmEzMDI4NWU5NTli N2VlY2FhNzgwY2Y4Y2ZkNGE0CiAgOTA0ZTM5NmMyNmU5OTkyYTE2Y2QxY2M5ODk0NjAxNzE1MzZi ZWQ3NzM5YmYzNjA0OWY2ZWIwMjBlZTVkNTZlYyIKIG5vY3Jvc3M9eWVzCiAKCkZyb20gZTQ4MTNm ZTE0MDMzNGViMjhlNjdhNzU2ZThiZjhmNWVkNzQ4MDE1YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI5 IE1hciAyMDIzIDE2OjAzOjI2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMS8xOV0gY3Jvc3MtbWlw cy1saW51eC1tdXNsOiBidW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNwa2dzL2Nyb3NzLW1pcHMt bGludXgtbXVzbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRp b25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3Jvc3MtbWlwcy1s aW51eC1tdXNsL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1taXBzLWxpbnV4LW11c2wvdGVtcGxh dGUKaW5kZXggZjc4Mzk2MWQ3MGQyLi4wMDAwYzU4ZTZkY2YgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv Y3Jvc3MtbWlwcy1saW51eC1tdXNsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY3Jvc3MtbWlwcy1s aW51eC1tdXNsL3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdjcm9zcy1taXBzLWxpbnV4LW11c2wnCiBfYmludXRpbHNfdmVyc2lvbj0yLjM5CiBfZ2NjX3Zl cnNpb249MTIuMi4wCi1fbXVzbF92ZXJzaW9uPTEuMS4yNAorX211c2xfdmVyc2lvbj0xLjIuMwog X2xpbnV4X3ZlcnNpb249NS4xMC40CiBwa2duYW1lPWNyb3NzLW1pcHMtbGludXgtbXVzbAogdmVy c2lvbj0wLjM1Ci1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT12b2lkLWNyb3Nz CiBjb25maWd1cmVfYXJncz0iLS13aXRoLWFyY2g9bWlwczMycjIgLS13aXRoLWZsb2F0PXNvZnQK ICAtLXdpdGgtbGlua2VyLWhhc2gtc3R5bGU9c3lzdiIKQEAgLTI0LDcgKzI0LDcgQEAgZGlzdGZp bGVzPSIKICAke0tFUk5FTF9TSVRFfS9rZXJuZWwvdjUueC9saW51eC0ke19saW51eF92ZXJzaW9u fS50YXIueHoiCiBjaGVja3N1bT0iNjQ1YzI1ZjU2M2I4YWRjMGE4MWRiZDZhNDFjZmZiZjRkMzcw ODNhMzgyZTAyZDVkM2RmNGY2NWMwOTUxNmQwMAogIGU1NDljZjljZjM1OTRhMDBlMjdiNjU4OWQ0 MzIyZDcwZTA3MjBjZGQyMTNmMzliZWI0MTgxZTA2OTI2MjMwZmYKLSAxMzcwYzlhODEyYjJjZjJh N2Q5MjgwMjUxMGNjYTAwNThjYzM3ZTY2YTdiZWRkNzAwNTFmMGEzNDAxNTAyMmEzCisgN2Q1YjBi NjA2MjUyMWU0NjI3ZTA5OWU0YzlkYzgyNDhkMzJhMzAyODVlOTU5YjdlZWNhYTc4MGNmOGNmZDRh NAogIDkwNGUzOTZjMjZlOTk5MmExNmNkMWNjOTg5NDYwMTcxNTM2YmVkNzczOWJmMzYwNDlmNmVi MDIwZWU1ZDU2ZWMiCiBub2Nyb3NzPXllcwogCgpGcm9tIDQ3YjkxYmFkMjE2YzE5ZTJhZmEyYzBm MTc5ZDIyOGU0NmFkZjYxMjEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5p Y29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyOSBNYXIgMjAyMyAxNjowMzoy NyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTIvMTldIGNyb3NzLW1pcHMtbGludXgtbXVzbGhmOiBi dW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNwa2dzL2Nyb3NzLW1pcHMtbGludXgtbXVzbGhmL3Rl bXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jcm9zcy1taXBzLWxpbnV4LW11c2xoZi90 ZW1wbGF0ZSBiL3NyY3BrZ3MvY3Jvc3MtbWlwcy1saW51eC1tdXNsaGYvdGVtcGxhdGUKaW5kZXgg ZmU0MWJjODBkODA4Li44YWEzOWM1MTQwOWIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY3Jvc3MtbWlw cy1saW51eC1tdXNsaGYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jcm9zcy1taXBzLWxpbnV4LW11 c2xoZi90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY3Jv c3MtbWlwcy1saW51eC1tdXNsaGYnCiBfYmludXRpbHNfdmVyc2lvbj0yLjM5CiBfZ2NjX3ZlcnNp b249MTIuMi4wCi1fbXVzbF92ZXJzaW9uPTEuMS4yNAorX211c2xfdmVyc2lvbj0xLjIuMwogX2xp bnV4X3ZlcnNpb249NS4xMC40CiBwa2duYW1lPWNyb3NzLW1pcHMtbGludXgtbXVzbGhmCiB2ZXJz aW9uPTAuMzUKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXZvaWQtY3Jvc3MK IGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtYXJjaD1taXBzMzJyMiAtLXdpdGgtZmxvYXQ9aGFyZAog IC0td2l0aC1saW5rZXItaGFzaC1zdHlsZT1zeXN2IgpAQCAtMjQsNyArMjQsNyBAQCBkaXN0Zmls ZXM9IgogICR7S0VSTkVMX1NJVEV9L2tlcm5lbC92NS54L2xpbnV4LSR7X2xpbnV4X3ZlcnNpb259 LnRhci54eiIKIGNoZWNrc3VtPSI2NDVjMjVmNTYzYjhhZGMwYTgxZGJkNmE0MWNmZmJmNGQzNzA4 M2EzODJlMDJkNWQzZGY0ZjY1YzA5NTE2ZDAwCiAgZTU0OWNmOWNmMzU5NGEwMGUyN2I2NTg5ZDQz MjJkNzBlMDcyMGNkZDIxM2YzOWJlYjQxODFlMDY5MjYyMzBmZgotIDEzNzBjOWE4MTJiMmNmMmE3 ZDkyODAyNTEwY2NhMDA1OGNjMzdlNjZhN2JlZGQ3MDA1MWYwYTM0MDE1MDIyYTMKKyA3ZDViMGI2 MDYyNTIxZTQ2MjdlMDk5ZTRjOWRjODI0OGQzMmEzMDI4NWU5NTliN2VlY2FhNzgwY2Y4Y2ZkNGE0 CiAgOTA0ZTM5NmMyNmU5OTkyYTE2Y2QxY2M5ODk0NjAxNzE1MzZiZWQ3NzM5YmYzNjA0OWY2ZWIw MjBlZTVkNTZlYyIKIG5vY3Jvc3M9eWVzCiAKCkZyb20gMzA2MzY0NWE5MTZmZGFlZjYyYmMxNjA3 ZTZmYTkwMzBjMWYxYzUzNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmlj b2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAzOjI3 IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMy8xOV0gY3Jvc3MtcG93ZXJwYzY0bGUtbGludXgtbXVz bDogYnVtcCBtdXNsIHZlcnNpb24KCi0tLQogc3JjcGtncy9jcm9zcy1wb3dlcnBjNjRsZS1saW51 eC1tdXNsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jcm9zcy1wb3dlcnBjNjRs ZS1saW51eC1tdXNsL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1wb3dlcnBjNjRsZS1saW51eC1t dXNsL3RlbXBsYXRlCmluZGV4IGE4NjMyMzNiNWIzMi4uMDg0OTNhNjM1NjI2IDEwMDY0NAotLS0g YS9zcmNwa2dzL2Nyb3NzLXBvd2VycGM2NGxlLWxpbnV4LW11c2wvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9jcm9zcy1wb3dlcnBjNjRsZS1saW51eC1tdXNsL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEy IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjcm9zcy1wb3dlcnBjNjRsZS1saW51eC1tdXNsJwog X2JpbnV0aWxzX3ZlcnNpb249Mi4zOQogX2djY192ZXJzaW9uPTEyLjIuMAotX211c2xfdmVyc2lv bj0xLjEuMjQKK19tdXNsX3ZlcnNpb249MS4yLjMKIF9saW51eF92ZXJzaW9uPTUuMTAuNAogX2xp YnVjb250ZXh0X3ZlcnNpb249MS4wCiBwa2duYW1lPWNyb3NzLXBvd2VycGM2NGxlLWxpbnV4LW11 c2wKIHZlcnNpb249MC4zNQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9dm9p ZC1jcm9zcwogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNlY3VyZXBsdCAtLWRpc2FibGUtdnRh YmxlLXZlcmlmeQogIC0tZGlzYWJsZS1kZWNpbWFsLWZsb2F0IC0td2l0aC1hYmk9ZWxmdjIgLS1l bmFibGUtdGFyZ2V0cz1wb3dlcnBjbGUtbGludXgiCkBAIC0yNiw3ICsyNiw3IEBAIGRpc3RmaWxl cz0iCiAgaHR0cHM6Ly9naXRodWIuY29tL2thbmlpbmkvbGlidWNvbnRleHQvYXJjaGl2ZS9saWJ1 Y29udGV4dC0ke19saWJ1Y29udGV4dF92ZXJzaW9ufS50YXIuZ3oiCiBjaGVja3N1bT0iNjQ1YzI1 ZjU2M2I4YWRjMGE4MWRiZDZhNDFjZmZiZjRkMzcwODNhMzgyZTAyZDVkM2RmNGY2NWMwOTUxNmQw MAogIGU1NDljZjljZjM1OTRhMDBlMjdiNjU4OWQ0MzIyZDcwZTA3MjBjZGQyMTNmMzliZWI0MTgx ZTA2OTI2MjMwZmYKLSAxMzcwYzlhODEyYjJjZjJhN2Q5MjgwMjUxMGNjYTAwNThjYzM3ZTY2YTdi ZWRkNzAwNTFmMGEzNDAxNTAyMmEzCisgN2Q1YjBiNjA2MjUyMWU0NjI3ZTA5OWU0YzlkYzgyNDhk MzJhMzAyODVlOTU5YjdlZWNhYTc4MGNmOGNmZDRhNAogIDkwNGUzOTZjMjZlOTk5MmExNmNkMWNj OTg5NDYwMTcxNTM2YmVkNzczOWJmMzYwNDlmNmViMDIwZWU1ZDU2ZWMKICAyMzcxNGU5OWE4N2Y2 ZGVhODJlOGEwNzNjNTI2MzI1MTYxZGQ2NTQ2MjQ1OTgyMGIxNmE2MTYyYmU5MTk1NWJiIgogbm9j cm9zcz15ZXMKCkZyb20gZWI5NjU5ZTJjYmQwOGVmMTNiMzc1NzY4MGU5ZGQ2MjRjNTc2ZDRhYSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21h aWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAzOjI4IC0wNDAwClN1YmplY3Q6IFtQ QVRDSCAxNC8xOV0gY3Jvc3MtcG93ZXJwYzY0LWxpbnV4LW11c2w6IGJ1bXAgbXVzbCB2ZXJzaW9u CgotLS0KIHNyY3BrZ3MvY3Jvc3MtcG93ZXJwYzY0LWxpbnV4LW11c2wvdGVtcGxhdGUgfCA2ICsr Ky0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2Nyb3NzLXBvd2VycGM2NC1saW51eC1tdXNsL3RlbXBsYXRlIGIv c3JjcGtncy9jcm9zcy1wb3dlcnBjNjQtbGludXgtbXVzbC90ZW1wbGF0ZQppbmRleCBiMDgxYTEz NmVmMjkuLjgwMTZmMTZhMzZjYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9jcm9zcy1wb3dlcnBjNjQt bGludXgtbXVzbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nyb3NzLXBvd2VycGM2NC1saW51eC1t dXNsL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjcm9z cy1wb3dlcnBjNjQtbGludXgtbXVzbCcKIF9iaW51dGlsc192ZXJzaW9uPTIuMzkKIF9nY2NfdmVy c2lvbj0xMi4yLjAKLV9tdXNsX3ZlcnNpb249MS4xLjI0CitfbXVzbF92ZXJzaW9uPTEuMi4zCiBf bGludXhfdmVyc2lvbj01LjEwLjQKIF9saWJ1Y29udGV4dF92ZXJzaW9uPTEuMAogcGtnbmFtZT1j cm9zcy1wb3dlcnBjNjQtbGludXgtbXVzbAogdmVyc2lvbj0wLjM1Ci1yZXZpc2lvbj0zCityZXZp c2lvbj00CiBidWlsZF9zdHlsZT12b2lkLWNyb3NzCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUt c2VjdXJlcGx0IC0tZGlzYWJsZS12dGFibGUtdmVyaWZ5CiAgLS1kaXNhYmxlLWRlY2ltYWwtZmxv YXQgLS13aXRoLWFiaT1lbGZ2MiAtLWVuYWJsZS10YXJnZXRzPXBvd2VycGMtbGludXgiCkBAIC0y Niw3ICsyNiw3IEBAIGRpc3RmaWxlcz0iCiAgaHR0cHM6Ly9naXRodWIuY29tL2thbmlpbmkvbGli dWNvbnRleHQvYXJjaGl2ZS9saWJ1Y29udGV4dC0ke19saWJ1Y29udGV4dF92ZXJzaW9ufS50YXIu Z3oiCiBjaGVja3N1bT0iNjQ1YzI1ZjU2M2I4YWRjMGE4MWRiZDZhNDFjZmZiZjRkMzcwODNhMzgy ZTAyZDVkM2RmNGY2NWMwOTUxNmQwMAogIGU1NDljZjljZjM1OTRhMDBlMjdiNjU4OWQ0MzIyZDcw ZTA3MjBjZGQyMTNmMzliZWI0MTgxZTA2OTI2MjMwZmYKLSAxMzcwYzlhODEyYjJjZjJhN2Q5Mjgw MjUxMGNjYTAwNThjYzM3ZTY2YTdiZWRkNzAwNTFmMGEzNDAxNTAyMmEzCisgN2Q1YjBiNjA2MjUy MWU0NjI3ZTA5OWU0YzlkYzgyNDhkMzJhMzAyODVlOTU5YjdlZWNhYTc4MGNmOGNmZDRhNAogIDkw NGUzOTZjMjZlOTk5MmExNmNkMWNjOTg5NDYwMTcxNTM2YmVkNzczOWJmMzYwNDlmNmViMDIwZWU1 ZDU2ZWMKICAyMzcxNGU5OWE4N2Y2ZGVhODJlOGEwNzNjNTI2MzI1MTYxZGQ2NTQ2MjQ1OTgyMGIx NmE2MTYyYmU5MTk1NWJiIgogbm9jcm9zcz15ZXMKCkZyb20gNGJiMGQ1MjU2MWMzN2RkYTcxOTRi NDY0ZDZiNjQxMWZkMjY5YjEzMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8 bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI5IE1hciAyMDIzIDE2OjAz OjI4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNS8xOV0gY3Jvc3MtcG93ZXJwY2xlLWxpbnV4LW11 c2w6IGJ1bXAgbXVzbCB2ZXJzaW9uCgotLS0KIHNyY3BrZ3MvY3Jvc3MtcG93ZXJwY2xlLWxpbnV4 LW11c2wvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nyb3NzLXBvd2VycGNsZS1s aW51eC1tdXNsL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1wb3dlcnBjbGUtbGludXgtbXVzbC90 ZW1wbGF0ZQppbmRleCAyZjQ4M2UxZjFlZTUuLjNlNWFkMDczY2M0MyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9jcm9zcy1wb3dlcnBjbGUtbGludXgtbXVzbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Ny b3NzLXBvd2VycGNsZS1saW51eC1tdXNsL3RlbXBsYXRlCkBAIC0xLDExICsxLDExIEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdjcm9zcy1wb3dlcnBjbGUtbGludXgtbXVzbCcKIF9iaW51dGlsc192 ZXJzaW9uPTIuMzkKIF9nY2NfdmVyc2lvbj0xMi4yLjAKLV9tdXNsX3ZlcnNpb249MS4xLjI0Citf bXVzbF92ZXJzaW9uPTEuMi4zCiBfbGludXhfdmVyc2lvbj01LjEwLjQKIHBrZ25hbWU9Y3Jvc3Mt cG93ZXJwY2xlLWxpbnV4LW11c2wKIHZlcnNpb249MC4zNQotcmV2aXNpb249MworcmV2aXNpb249 NAogYnVpbGRfc3R5bGU9dm9pZC1jcm9zcwogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXNlY3Vy ZXBsdCAtLWRpc2FibGUtdnRhYmxlLXZlcmlmeQogIC0tZGlzYWJsZS1kZWNpbWFsLWZsb2F0IgpA QCAtMjQsNyArMjQsNyBAQCBkaXN0ZmlsZXM9IgogICR7S0VSTkVMX1NJVEV9L2tlcm5lbC92NS54 L2xpbnV4LSR7X2xpbnV4X3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPSI2NDVjMjVmNTYzYjhh ZGMwYTgxZGJkNmE0MWNmZmJmNGQzNzA4M2EzODJlMDJkNWQzZGY0ZjY1YzA5NTE2ZDAwCiAgZTU0 OWNmOWNmMzU5NGEwMGUyN2I2NTg5ZDQzMjJkNzBlMDcyMGNkZDIxM2YzOWJlYjQxODFlMDY5MjYy MzBmZgotIDEzNzBjOWE4MTJiMmNmMmE3ZDkyODAyNTEwY2NhMDA1OGNjMzdlNjZhN2JlZGQ3MDA1 MWYwYTM0MDE1MDIyYTMKKyA3ZDViMGI2MDYyNTIxZTQ2MjdlMDk5ZTRjOWRjODI0OGQzMmEzMDI4 NWU5NTliN2VlY2FhNzgwY2Y4Y2ZkNGE0CiAgOTA0ZTM5NmMyNmU5OTkyYTE2Y2QxY2M5ODk0NjAx NzE1MzZiZWQ3NzM5YmYzNjA0OWY2ZWIwMjBlZTVkNTZlYyIKIG5vY3Jvc3M9eWVzCiAKCkZyb20g OWM2YTJiMTAxMDFiYjgzZGRhMDQxMDljN2U5MWVlYWZmYTQyZjVhNSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDI5IE1hciAyMDIzIDE2OjAzOjI4IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNi8xOV0gY3Jv c3MtcG93ZXJwYy1saW51eC1tdXNsOiBidW1wIG11c2wgdmVyc2lvbgoKLS0tCiBzcmNwa2dzL2Ny b3NzLXBvd2VycGMtbGludXgtbXVzbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Y3Jvc3MtcG93ZXJwYy1saW51eC1tdXNsL3RlbXBsYXRlIGIvc3JjcGtncy9jcm9zcy1wb3dlcnBj LWxpbnV4LW11c2wvdGVtcGxhdGUKaW5kZXggZTA2OTcwZDc2YjllLi45NmRhY2U4YWQ3ZTIgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvY3Jvc3MtcG93ZXJwYy1saW51eC1tdXNsL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvY3Jvc3MtcG93ZXJwYy1saW51eC1tdXNsL3RlbXBsYXRlCkBAIC0xLDExICsxLDEx IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjcm9zcy1wb3dlcnBjLWxpbnV4LW11c2wnCiBfYmlu dXRpbHNfdmVyc2lvbj0yLjM5CiBfZ2NjX3ZlcnNpb249MTIuMi4wCi1fbXVzbF92ZXJzaW9uPTEu MS4yNAorX211c2xfdmVyc2lvbj0xLjIuMwogX2xpbnV4X3ZlcnNpb249NS4xMC40CiBwa2duYW1l PWNyb3NzLXBvd2VycGMtbGludXgtbXVzbAogdmVyc2lvbj0wLjM1Ci1yZXZpc2lvbj0zCityZXZp c2lvbj00CiBidWlsZF9zdHlsZT12b2lkLWNyb3NzCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUt c2VjdXJlcGx0IC0tZGlzYWJsZS12dGFibGUtdmVyaWZ5CiAgLS1kaXNhYmxlLWRlY2ltYWwtZmxv YXQiCkBAIC0yNCw3ICsyNCw3IEBAIGRpc3RmaWxlcz0iCiAgJHtLRVJORUxfU0lURX0va2VybmVs L3Y1LngvbGludXgtJHtfbGludXhfdmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09IjY0NWMyNWY1 NjNiOGFkYzBhODFkYmQ2YTQxY2ZmYmY0ZDM3MDgzYTM4MmUwMmQ1ZDNkZjRmNjVjMDk1MTZkMDAK ICBlNTQ5Y2Y5Y2YzNTk0YTAwZTI3YjY1ODlkNDMyMmQ3MGUwNzIwY2RkMjEzZjM5YmViNDE4MWUw NjkyNjIzMGZmCi0gMTM3MGM5YTgxMmIyY2YyYTdkOTI4MDI1MTBjY2EwMDU4Y2MzN2U2NmE3YmVk ZDcwMDUxZjBhMzQwMTUwMjJhMworIDdkNWIwYjYwNjI1MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMy YTMwMjg1ZTk1OWI3ZWVjYWE3ODBjZjhjZmQ0YTQKICA5MDRlMzk2YzI2ZTk5OTJhMTZjZDFjYzk4 OTQ2MDE3MTUzNmJlZDc3MzliZjM2MDQ5ZjZlYjAyMGVlNWQ1NmVjIgogbm9jcm9zcz15ZXMKIAoK RnJvbSA5YTNkZmU4MTM5MGJjMjZmZGYyYzY3YWE0OTc0ZDFiMTJkMzQwZjE2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9waWF6emFsdW5nYUBnbWFpbC5jb20+CkRh dGU6IFdlZCwgMjkgTWFyIDIwMjMgMTY6MDM6MjkgLTA0MDAKU3ViamVjdDogW1BBVENIIDE3LzE5 XSBjcm9zcy14ODZfNjQtbGludXgtbXVzbDogYnVtcCBtdXNsIHZlcnNpb24KCi0tLQogc3JjcGtn cy9jcm9zcy14ODZfNjQtbGludXgtbXVzbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hh bmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvY3Jvc3MteDg2XzY0LWxpbnV4LW11c2wvdGVtcGxhdGUgYi9zcmNwa2dzL2Nyb3NzLXg4Nl82 NC1saW51eC1tdXNsL3RlbXBsYXRlCmluZGV4IDQ5ODRjZDc3ZjE0OS4uMDhmYzM5YzM3MTQ5IDEw MDY0NAotLS0gYS9zcmNwa2dzL2Nyb3NzLXg4Nl82NC1saW51eC1tdXNsL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvY3Jvc3MteDg2XzY0LWxpbnV4LW11c2wvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Nyb3NzLXg4Nl82NC1saW51eC1tdXNsJwogX2JpbnV0 aWxzX3ZlcnNpb249Mi4zOQogX2djY192ZXJzaW9uPTEyLjIuMAotX211c2xfdmVyc2lvbj0xLjEu MjQKK19tdXNsX3ZlcnNpb249MS4yLjMKIF9saW51eF92ZXJzaW9uPTUuMTAuNAogX2xpYnVjb250 ZXh0X3ZlcnNpb249MS4wCiBwa2duYW1lPWNyb3NzLXg4Nl82NC1saW51eC1tdXNsCiB2ZXJzaW9u PTAuMzUKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXZvaWQtY3Jvc3MKIGhv c3RtYWtlZGVwZW5kcz0idGV4aW5mbyB0YXIgZ2NjLW9iamMgZ2NjLWdvIGZsZXggcGVybCBweXRo b24zIgogbWFrZWRlcGVuZHM9ImlzbDE1LWRldmVsIGxpYm1wYy1kZXZlbCBnbXAtZGV2ZWwgbXBm ci1kZXZlbApAQCAtMjQsNyArMjQsNyBAQCBkaXN0ZmlsZXM9IgogIGh0dHBzOi8vZ2l0aHViLmNv bS9rYW5paW5pL2xpYnVjb250ZXh0L2FyY2hpdmUvbGlidWNvbnRleHQtJHtfbGlidWNvbnRleHRf dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09IjY0NWMyNWY1NjNiOGFkYzBhODFkYmQ2YTQxY2Zm YmY0ZDM3MDgzYTM4MmUwMmQ1ZDNkZjRmNjVjMDk1MTZkMDAKICBlNTQ5Y2Y5Y2YzNTk0YTAwZTI3 YjY1ODlkNDMyMmQ3MGUwNzIwY2RkMjEzZjM5YmViNDE4MWUwNjkyNjIzMGZmCi0gMTM3MGM5YTgx MmIyY2YyYTdkOTI4MDI1MTBjY2EwMDU4Y2MzN2U2NmE3YmVkZDcwMDUxZjBhMzQwMTUwMjJhMwor IDdkNWIwYjYwNjI1MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMyYTMwMjg1ZTk1OWI3ZWVjYWE3ODBj ZjhjZmQ0YTQKICA5MDRlMzk2YzI2ZTk5OTJhMTZjZDFjYzk4OTQ2MDE3MTUzNmJlZDc3MzliZjM2 MDQ5ZjZlYjAyMGVlNWQ1NmVjCiAgMjM3MTRlOTlhODdmNmRlYTgyZThhMDczYzUyNjMyNTE2MWRk NjU0NjI0NTk4MjBiMTZhNjE2MmJlOTE5NTViYiIKIG5vY3Jvc3M9eWVzCgpGcm9tIGZkNWUzZGY0 ZWVlYjFmY2VhMzlmYWNlOWIxN2MwYWUyMzIxODY0NWUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAyMCBB cHIgMjAyMyAxNzo0NTozNiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTgvMTldIG11c2w6IHVwZGF0 ZSB0byBnaXQKCi0tLQogc3JjcGtncy9tdXNsL3RlbXBsYXRlIHwgNyArKysrLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbXVzbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXVzbC90ZW1wbGF0ZQppbmRleCA3MTc5YjQz YjNmNWEuLjA5NzEzYjI1YzFhMyAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXNsL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvbXVzbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ211c2wnCiBwa2duYW1lPW11c2wKLXZlcnNpb249MS4yLjMKK3ZlcnNpb249MS4yLjMu MjAyMzA0MTEKIHJldmlzaW9uPTEKIGFyY2hzPSIqLW11c2wiCiBib290c3RyYXA9eWVzCkBAIC0x MCw4ICsxMCw5IEBAIHNob3J0X2Rlc2M9Ik11c2wgQyBsaWJyYXJ5IgogbWFpbnRhaW5lcj0iRW5u byBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdl PSJodHRwczovL211c2wubGliYy5vcmcvIgotZGlzdGZpbGVzPSJodHRwczovL211c2wubGliYy5v cmcvcmVsZWFzZXMvbXVzbC0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTdkNWIwYjYwNjI1 MjFlNDYyN2UwOTllNGM5ZGM4MjQ4ZDMyYTMwMjg1ZTk1OWI3ZWVjYWE3ODBjZjhjZmQ0YTQKK19j b21taXQ9ImMxYjQyYzRhM2EwMzI0ZWMyNTg3Nzk4MGY1OWRiMjMzZmE0MjA5MjUiCitkaXN0Zmls ZXM9Imh0dHBzOi8vZ2l0Lm11c2wtbGliYy5vcmcvY2dpdC9tdXNsL3NuYXBzaG90LyRfY29tbWl0 LnRhci5neiIKK2NoZWNrc3VtPWY3MDg0MDdkNzRmZTEwOWEwNzFiZWViNzE5YmM5MjFiOGQ1NTZm NTUwZmNlMWU1YWQ4OTEyYzdmYmEwZDY4YjkKIAogbm9zdHJpcF9maWxlcz0ibGliYy5zbyIKIHNo bGliX3Byb3ZpZGVzPSJsaWJjLnNvIgoKRnJvbSA2ZmI3MTcyYTUyMDJkMzM3MzcxOWRmZGIyNjQ0 MDNjYWQ4NGY0MjlkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9w aWF6emFsdW5nYUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMiBNYXkgMjAyMyAxMTo1MzozNyAtMDQw MApTdWJqZWN0OiBbUEFUQ0ggMTkvMTldIG11c2w6IHVwZGF0ZSB0byAxLjIuNAoKLS0tCiBzcmNw a2dzL211c2wvdGVtcGxhdGUgfCA3ICsrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlv bnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXNsL3RlbXBsYXRl IGIvc3JjcGtncy9tdXNsL3RlbXBsYXRlCmluZGV4IDA5NzEzYjI1YzFhMy4uOWViZjgxMThlZDZk IDEwMDY0NAotLS0gYS9zcmNwa2dzL211c2wvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tdXNsL3Rl bXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXVzbCcKIHBrZ25h bWU9bXVzbAotdmVyc2lvbj0xLjIuMy4yMDIzMDQxMQordmVyc2lvbj0xLjIuNAogcmV2aXNpb249 MQogYXJjaHM9IiotbXVzbCIKIGJvb3RzdHJhcD15ZXMKQEAgLTEwLDkgKzEwLDggQEAgc2hvcnRf ZGVzYz0iTXVzbCBDIGxpYnJhcnkiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vbXVzbC5saWJj Lm9yZy8iCi1fY29tbWl0PSJjMWI0MmM0YTNhMDMyNGVjMjU4Nzc5ODBmNTlkYjIzM2ZhNDIwOTI1 IgotZGlzdGZpbGVzPSJodHRwczovL2dpdC5tdXNsLWxpYmMub3JnL2NnaXQvbXVzbC9zbmFwc2hv dC8kX2NvbW1pdC50YXIuZ3oiCi1jaGVja3N1bT1mNzA4NDA3ZDc0ZmUxMDlhMDcxYmVlYjcxOWJj OTIxYjhkNTU2ZjU1MGZjZTFlNWFkODkxMmM3ZmJhMGQ2OGI5CitkaXN0ZmlsZXM9Imh0dHBzOi8v bXVzbC5saWJjLm9yZy9yZWxlYXNlcy9tdXNsLSR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09 N2EzNWVhZTMzZDUzNzJhN2MwZGExMTg4ZGU3OTg3MjZmNjg4MjU1MTNiN2FlM2ViZTk3YWFhYTUy MTE0ZjAzOQogCiBub3N0cmlwX2ZpbGVzPSJsaWJjLnNvIgogc2hsaWJfcHJvdmlkZXM9ImxpYmMu c28iCg== --===============7408846137160276439==--