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=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 27515 invoked from network); 28 Jan 2023 21:59:18 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 28 Jan 2023 21:59:18 -0000 Content-Type: multipart/mixed; boundary="===============0623819678109926993==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_update_openssl_to_3_series?= To: ml@inbox.vuxu.org From: dkwo Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 28 Jan 2023 22:59:18 +0100 List-Id: Message-ID: <20230128215918.R-wKYo8kf4xSYuC4tTfpAMsSMzIOfdX1S_d07o7tNFs@z> GitHub notification mails are now in MIME to allow UTF8. --===============0623819678109926993== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgZGt3byBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vZGt3by92 b2lkLXBhY2thZ2VzIG9wZW5zc2wzCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC8zNzY4MQoKdXBkYXRlIG9wZW5zc2wgdG8gMyBzZXJpZXMKLSBCdWlsZCBm YWlsdXJlcyBvbiBgeDg2XzY0LW11c2xgOg0KLSBbeF0gZ3NvYXAsIHZhbml0eWdlbiwgcGpwcm9q ZWN0LCBzdHVubmVsLCB0aHJpZnQsIHRjcGZsb3c6IG1pc3NpbmcgZGlzdGZpbGVzIC8gd3Jvbmcg c2hhLXN1bXMNCi0gW3hdIHNic2lnbnRvb2w6IGFkZCBwYXRjaA0KLSBbeF0gY2JhbmcsIHBvY286 IHVwZGF0ZQ0KLSBbIF0gbm9kZWpzLWx0cywga29yZSwgeHJvb3RkLCBuZXRwZ3AsIG9wZW5zYywg dnBuLXdzLCBlaWQtbXcsIGJvaW5jLCBwaHAsIHBocDguMCwgZ2l0LWNyeXB0LCB1bXVybXVyLCBu emJnZXQsIG5ycGUsIHBrY3MxMS1oZWxwZXIsIG11bWJsZSwgc3F1aWQsIHhjYTogZGVwcmVjYXRl ZCBzb21ldGhpbmcNCi0gWyBdIG1haXJpeCwgcnVzdC1zY2NhY2hlLCBmcmFjdGFsLCB0ZWxlZ3Jh bS1kZXNrdG9wLCByYWJiaXRtcS1jLCBnaXQtYnJ3cywgcm9vc3RlciwgY2FyZ28tYW9jLCBzcG90 aWZ5LXR1aSwgZ2l0LXNlcmllcywgdGFycGF1bGluLCB0YWlzZWksIHJ1c3QtY2FyZ28tYXVkaXQs IHNpZ25hbC1iYWNrdXAtZGVjb2RlLCBjYXJnby1vdXRkYXRlZCwgcnVzdHVwOiBjYXJnbyBlcnJv cnMNCi0gWyBdIGx1YTU0LWx1YXNlYywgeXViaWtvLXBpdi10b29sLCBnY3NmLCBpcG1pdXRpbCwg cm5nLXRvb2xzOiBlcnJvcnMNCi0geGJwczogYWRkZWQgdGVtcG9yYXJ5IGZpeHR1cmUgc3VnZ2Vz dGVkIGJ5IEBEdW5jYWVuLCBzdGlsbCBicm9rZW4NCi0gcmFja2V0OiBkZXBlbmQgb24gbGlic3Ns My4wDQotIHJlbW92ZSB2YW5pdHlnZW46IG5vIGRpc3RmaWxlcyBhdmFpbGFibGUNCi0gTm90ZSB0 byBzZWxmOiB1c2UgYHhyZXZidW1wICJidW1wIGZvciBvcGVuc3NsLTMuMCIgJCh4YnBzLXF1ZXJ5 IC1ScyBsaWJzc2wuc28gLXAgc2hsaWItcmVxdWlyZXMgfCBjdXQgLWQgJzonIC1mIDEgfCB4YXJn cyAtbjEgeGJwcy11aGVscGVyIGdldHBrZ25hbWUpYCBhbmQgc2FtZSBmb3IgYGxpYmNyeXB0b2As IG9yIHVzZSBgc29ydCAtdSBmaWxlMSBmaWxlMmAuDQpbY2kgc2tpcF0KCkEgcGF0Y2ggZmlsZSBm cm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8zNzY4 MS5wYXRjaCBpcyBhdHRhY2hlZA== --===============0623819678109926993== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openssl3-37681.patch" RnJvbSAwYjY2ZTI2ZmQ5ZmM1YzU0M2Q3YzQ1NDQ1M2Q0ZDRlYmVkYzA2OWZjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9waWF6emFsdW5nYUBnbWFpbC5jb20+CkRh dGU6IFNhdCwgMjUgSnVuIDIwMjIgMTg6MjI6MjggKzAyMDAKU3ViamVjdDogW1BBVENIIDAxLzEz XSBvcGVuc3NsOiB1cGRhdGUgdG8gMy4wLjcKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKy0KIHNyY3BrZ3Mve2xpYmNyeXB0bzEuMSA9PiBsaWJjcnlw dG8zLjB9ICB8ICAwCiBzcmNwa2dzL3tsaWJzc2wxLjEgPT4gbGlic3NsMy4wfSAgICAgICAgfCAg MAogc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBjLWF1eHYucGF0Y2ggIHwgMjUgLS0tLS0tLQog c3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBjNjQucGF0Y2ggICAgIHwgOTYgLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMveHh4LXBwY2xlLnBhdGNoIHwg NTMgLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3Mvb3BlbnNzbC90ZW1wbGF0ZSAgICAgICAgICAgICAg ICB8IDIwICsrKy0tLQogNyBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxODQgZGVs ZXRpb25zKC0pCiByZW5hbWUgc3JjcGtncy97bGliY3J5cHRvMS4xID0+IGxpYmNyeXB0bzMuMH0g KDEwMCUpCiByZW5hbWUgc3JjcGtncy97bGlic3NsMS4xID0+IGxpYnNzbDMuMH0gKDEwMCUpCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBjLWF1eHYucGF0Y2gK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL29wZW5zc2wvcGF0Y2hlcy9wcGM2NC5wYXRjaAog ZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb3BlbnNzbC9wYXRjaGVzL3h4eC1wcGNsZS5wYXRj aAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGY2MzJj ZTljNzZkYS4uYTk2NWUxM2RmMmQ0IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2Nv bW1vbi9zaGxpYnMKQEAgLTE3NjgsOCArMTc2OCw4IEBAIGxpYmlkMy5zbyBpZDNsaWItMy44LjNf NwogbGliaWQzLTMuOC5zby4zIGlkM2xpYi0zLjguM183CiBsaWJnaXJhcmEtZ3RrMy5zby4zIGdp cmFyYS0wLjIuOF8xCiBsaWJqcS5zby4xIGpxLTEuNl8yCi1saWJjcnlwdG8uc28uMS4xIGxpYmNy eXB0bzEuMS0xLjEuMWZfMQotbGlic3NsLnNvLjEuMSBsaWJzc2wxLjEtMS4xLjFmXzEKK2xpYmNy eXB0by5zby4zIGxpYmNyeXB0bzMuMC0zLjAuN18xCitsaWJzc2wuc28uMyBsaWJzc2wzLjAtMy4w LjdfMQogbGlidmFtcC1ob3N0c2RrLnNvLjMgbGlidmFtcC1wbHVnaW4tc2RrLTIuMl82CiBsaWJw b3J0bWlkaS5zbyBwb3J0bWlkaS0yMTdfMQogbGliV2lsZE1pZGkuc28uMiBsaWJ3aWxkbWlkaS0w LjQuM18xCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmNyeXB0bzEuMSBiL3NyY3BrZ3MvbGliY3J5 cHRvMy4wCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBzcmNwa2dzL2xpYmNyeXB0 bzEuMQpyZW5hbWUgdG8gc3JjcGtncy9saWJjcnlwdG8zLjAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bGlic3NsMS4xIGIvc3JjcGtncy9saWJzc2wzLjAKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFt ZSBmcm9tIHNyY3BrZ3MvbGlic3NsMS4xCnJlbmFtZSB0byBzcmNwa2dzL2xpYnNzbDMuMApkaWZm IC0tZ2l0IGEvc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBjLWF1eHYucGF0Y2ggYi9zcmNwa2dz L29wZW5zc2wvcGF0Y2hlcy9wcGMtYXV4di5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMjc0YWMyZDU1OTk4Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9vcGVuc3NsL3Bh dGNoZXMvcHBjLWF1eHYucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi1kaWZm IC0tZ2l0IGEvY3J5cHRvL3BwY2NhcC5jIGIvY3J5cHRvL3BwY2NhcC5jCi1pbmRleCBlZWFhNDdj Li5lNmVlYjE0IDEwMDY0NAotLS0tIGEvY3J5cHRvL3BwY2NhcC5jCi0rKysgYi9jcnlwdG8vcHBj Y2FwLmMKLUBAIC0yMDcsMTcgKzIwNyw5IEBAIHNpemVfdCBPUEVOU1NMX2luc3RydW1lbnRfYnVz Mih1bnNpZ25lZCBpbnQgKm91dCwgc2l6ZV90IGNudCwgc2l6ZV90IG1heCkKLSAgICAgICAgIHJl dHVybiAwOwotIH0KLSAKLS0jaWYgZGVmaW5lZChfX0dMSUJDX18pICYmIGRlZmluZWQoX19HTElC Q19QUkVSRVEpCi0tIyBpZiBfX0dMSUJDX1BSRVJFUSgyLCAxNikKLS0jICBpbmNsdWRlIDxzeXMv YXV4di5oPgotLSMgIGRlZmluZSBPU1NMX0lNUExFTUVOVF9HRVRBVVhWQUwKLS0jIGVsaWYgZGVm aW5lZChfX0FORFJPSURfQVBJX18pCi0tLyogc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLmFuZHJvaWQu Z29vZ2xlLmNuL25kay9ndWlkZXMvY3B1LWZlYXR1cmVzICovCi0tIyAgaWYgX19BTkRST0lEX0FQ SV9fID49IDE4Ci0tIyAgIGluY2x1ZGUgPHN5cy9hdXh2Lmg+Ci0tIyAgIGRlZmluZSBPU1NMX0lN UExFTUVOVF9HRVRBVVhWQUwKLS0jICBlbmRpZgotLSMgZW5kaWYKLSsjaWYgZGVmaW5lZChfX2xp bnV4X18pCi0rIyBpbmNsdWRlIDxzeXMvYXV4di5oPgotKyMgZGVmaW5lIE9TU0xfSU1QTEVNRU5U X0dFVEFVWFZBTAotICNlbmRpZgotIAotICNpZiBkZWZpbmVkKF9fRnJlZUJTRF9fKQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBjNjQucGF0Y2ggYi9zcmNwa2dzL29wZW5z c2wvcGF0Y2hlcy9wcGM2NC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzc1 Y2VlZGJhMmMwLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9vcGVuc3NsL3BhdGNoZXMvcHBj NjQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5NiArMCwwIEBACi1Gcm9tIDM0YWIxM2I3ZDhl M2U3MjNhZGI2MGJlODE0MmUzOGI3YzljZDM4MmEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1G cm9tOiBBbmR5IFBvbHlha292IDxhcHByb0BvcGVuc3NsLm9yZz4KLURhdGU6IFN1biwgNSBNYXkg MjAxOSAxODoyNTo1MCArMDIwMAotU3ViamVjdDogW1BBVENIXSBjcnlwdG8vcGVybGFzbS9wcGMt eGxhdGUucGw6IGFkZCBsaW51eDY0djIgZmxhdm91cgotTUlNRS1WZXJzaW9uOiAxLjAKLUNvbnRl bnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogOGJpdAotCi1UaGlzIGlzIGEgYmlnIGVuZGlhbiBFTEZ2MiBjb25maWd1cmF0aW9uLiBF TEZ2MiB3YXMgYWxyZWFkeSBiZWluZwotdXNlZCBmb3IgbGl0dGxlIGVuZGlhbiwgYW5kIGJpZyBl bmRpYW4gd2FzIHRyYWRpdGlvbmFsbHkgRUxGdjEKLWJ1dCB0aGVyZSBhcmUgcHJhY3RpY2FsIGNv bmZpZ3VyYXRpb25zIHRoYXQgdXNlIEVMRnYyIHdpdGggYmlnCi1lbmRpYW4gbm93YWRheXMgKEFk w6lsaWUgTGludXgsIFZvaWQgTGludXgsIHBvc3NpYmx5IEdlbnRvbywgZXRjLikKLQotUmV2aWV3 ZWQtYnk6IFBhdWwgRGFsZSA8cGF1bC5kYWxlQG9yYWNsZS5jb20+Ci1SZXZpZXdlZC1ieTogUmlj aGFyZCBMZXZpdHRlIDxsZXZpdHRlQG9wZW5zc2wub3JnPgotKE1lcmdlZCBmcm9tIGh0dHBzOi8v Z2l0aHViLmNvbS9vcGVuc3NsL29wZW5zc2wvcHVsbC84ODgzKQotLS0tCi0gY3J5cHRvL3Blcmxh c20vcHBjLXhsYXRlLnBsIHwgOCArKysrLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlv bnMoKyksIDQgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9jcnlwdG8vcGVybGFzbS9wcGMt eGxhdGUucGwgYi9jcnlwdG8vcGVybGFzbS9wcGMteGxhdGUucGwKLWluZGV4IGU1MmYyZjZlYTYy Li41ZmNkMDUyNmRmZiAxMDA3NTUKLS0tLSBhL2NyeXB0by9wZXJsYXNtL3BwYy14bGF0ZS5wbAot KysrIGIvY3J5cHRvL3Blcmxhc20vcHBjLXhsYXRlLnBsCi1AQCAtNDksNyArNDksNyBAQAotIAkv b3N4LwkJJiYgZG8geyAkbmFtZSA9ICJfJG5hbWUiOwotIAkJCQlsYXN0OwotIAkJCSAgICAgIH07 Ci0tCS9saW51eC4qKDMyfDY0bGUpLwotKwkvbGludXguKigzMnw2NChsZXx2MikpLwotIAkJCSYm IGRvIHsJJHJldCAuPSAiLmdsb2JsCSRuYW1lIjsKLSAJCQkJaWYgKCEkJHR5cGUpIHsKLSAJCQkJ ICAgICRyZXQgLj0gIlxuLnR5cGUJJG5hbWUsXEBmdW5jdGlvbiI7Ci1AQCAtODAsNyArODAsNyBA QAotIH07Ci0gbXkgJHRleHQgPSBzdWIgewotICAgICBteSAkcmV0ID0gKCRmbGF2b3VyID1+IC9h aXgvKSA/ICIuY3NlY3RcdC50ZXh0W1BSXSw3IiA6ICIudGV4dCI7Ci0tICAgICRyZXQgPSAiLmFi aXZlcnNpb24JMlxuIi4kcmV0CWlmICgkZmxhdm91ciA9fiAvbGludXguKjY0bGUvKTsKLSsgICAg JHJldCA9ICIuYWJpdmVyc2lvbgkyXG4iLiRyZXQJaWYgKCRmbGF2b3VyID1+IC9saW51eC4qNjQo bGV8djIpLyk7Ci0gICAgICRyZXQ7Ci0gfTsKLSBteSAkbWFjaGluZSA9IHN1YiB7Ci1AQCAtMTg2 LDcgKzE4Niw3IEBACi0gCi0gIyBTb21lIEFCSXMgc3BlY2lmeSB2cnNhdmUsIHNwZWNpYWwtcHVy cG9zZSByZWdpc3RlciAjMjU2LCBhcyByZXNlcnZlZAotICMgZm9yIHN5c3RlbSB1c2UuCi0tbXkg JG5vX3Zyc2F2ZSA9ICgkZmxhdm91ciA9fiAvYWl4fGxpbnV4NjRsZS8pOwotK215ICRub192cnNh dmUgPSAoJGZsYXZvdXIgPX4gL2FpeHxsaW51eDY0KGxlfHYyKS8pOwotIG15ICRtdHNwciA9IHN1 YiB7Ci0gICAgIG15ICgkZiwkaWR4LCRyYSkgPSBAXzsKLSAgICAgaWYgKCRpZHggPT0gMjU2ICYm ICRub192cnNhdmUpIHsKLUBAIC0zMTgsNyArMzE4LDcgQEAgc3ViIHZmb3VyIHsKLSAJaWYgKCRs YWJlbCkgewotIAkgICAgbXkgJHhsYXRlZCA9ICgkR0xPQkFMU3skbGFiZWx9IG9yICRsYWJlbCk7 Ci0gCSAgICBwcmludCAiJHhsYXRlZDoiOwotLQkgICAgaWYgKCRmbGF2b3VyID1+IC9saW51eC4q NjRsZS8pIHsKLSsJICAgIGlmICgkZmxhdm91ciA9fiAvbGludXguKjY0KGxlfHYyKS8pIHsKLSAJ CWlmICgkVFlQRVN7JGxhYmVsfSA9fiAvZnVuY3Rpb24vKSB7Ci0gCQkgICAgcHJpbnRmICJcbi5s b2NhbGVudHJ5CSVzLDBcbiIsJHhsYXRlZDsKLSAJCX0KLQotRnJvbSAwOTg0MDQxMjgzODNkZWQ4 N2JhMzkwZGQ3NGVjZDllMmZmYTZmNTMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTog QW5keSBQb2x5YWtvdiA8YXBwcm9Ab3BlbnNzbC5vcmc+Ci1EYXRlOiBTdW4sIDUgTWF5IDIwMTkg MTg6MzA6NTUgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSF0gQ29uZmlndXJlOiB1c2UgRUxGdjIgQUJJ IG9uIHNvbWUgcHBjNjQgYmlnIGVuZGlhbiBzeXN0ZW1zCi0KLUlmIF9DQUxMX0VMRiBpcyBkZWZp bmVkIHRvIGJlIDIsIGl0J3MgYW4gRUxGdjIgc3lzdGVtLgotQ29uZGl0aW9uYWxseSBzd2l0Y2gg dG8gdGhlIHYyIHBlcmxhc20gc2NoZW1lLgotCi1SZXZpZXdlZC1ieTogUGF1bCBEYWxlIDxwYXVs LmRhbGVAb3JhY2xlLmNvbT4KLVJldmlld2VkLWJ5OiBSaWNoYXJkIExldml0dGUgPGxldml0dGVA b3BlbnNzbC5vcmc+Ci0oTWVyZ2VkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL29wZW5zc2wvb3Bl bnNzbC9wdWxsLzg4ODMpCi0tLS0KLSBDb25maWd1cmUgfCAxMCArKysrKysrLS0tCi0gMSBmaWxl IGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBh L0NvbmZpZ3VyZSBiL0NvbmZpZ3VyZQotaW5kZXggMjIwODJkZWI0YzcuLmUzMDNkOThkZWIzIDEw MDc1NQotLS0tIGEvQ29uZmlndXJlCi0rKysgYi9Db25maWd1cmUKLUBAIC0xNDAyLDggKzE0MDIs MTUgQEAKLSBteSAlcHJlZGVmaW5lZF9DID0gY29tcGlsZXJfcHJlZGVmaW5lZCgkY29uZmlne0NS T1NTX0NPTVBJTEV9LiRjb25maWd7Q0N9KTsKLSBteSAlcHJlZGVmaW5lZF9DWFggPSAkY29uZmln e0NYWH0KLSAgICAgPyBjb21waWxlcl9wcmVkZWZpbmVkKCRjb25maWd7Q1JPU1NfQ09NUElMRX0u JGNvbmZpZ3tDWFh9KQotICAgICA6ICgpOwotIAotK3VubGVzcyAoJGRpc2FibGVke2FzbX0pIHsK LSsgICAgIyBiaWcgZW5kaWFuIHN5c3RlbXMgY2FuIHVzZSBFTEZ2MiBBQkkKLSsgICAgaWYgKCR0 YXJnZXQgZXEgImxpbnV4LXBwYzY0IikgewotKyAgICAgICAgJHRhcmdldHtwZXJsYXNtX3NjaGVt ZX0gPSAibGludXg2NHYyIiBpZiAoJHByZWRlZmluZWRfQ3tfQ0FMTF9FTEZ9ID09IDIpOwotKyAg ICB9Ci0rfQotKwotICMgQ2hlY2sgZm9yIG1ha2VkZXBlbmQgY2FwYWJpbGl0aWVzLgotIGlmICgh JGRpc2FibGVke21ha2VkZXBlbmR9KSB7Ci0gICAgIGlmICgkY29uZmlne3RhcmdldH0gPX4gL14o VkN8dm1zKS0vKSB7CmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5zc2wvcGF0Y2hlcy94eHgtcHBj bGUucGF0Y2ggYi9zcmNwa2dzL29wZW5zc2wvcGF0Y2hlcy94eHgtcHBjbGUucGF0Y2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI0OThhZjk2ODg5OS4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvb3BlbnNzbC9wYXRjaGVzL3h4eC1wcGNsZS5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDUzICswLDAgQEAKLWNvbW1pdCA1NmUwNzg1NmE3YTlmN2NlMzU4MmI4Y2YzODQzZjI1MjY5 MTQ3NWE2Ci1BdXRob3I6IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+Ci1EYXRlOiAgIEZyaSBN YXIgNSAxODozNjowMSAyMDIxICswMTAwCi0KLSAgICBhZGQgcHBjbGUgc3VwcG9ydAotCi1kaWZm IC0tZ2l0IENvbmZpZ3VyYXRpb25zLzEwLW1haW4uY29uZiBDb25maWd1cmF0aW9ucy8xMC1tYWlu LmNvbmYKLWluZGV4IDhkYzNlODUuLjE4ZjEwYzkgMTAwNjQ0Ci0tLS0gYS9Db25maWd1cmF0aW9u cy8xMC1tYWluLmNvbmYKLSsrKyBiL0NvbmZpZ3VyYXRpb25zLzEwLW1haW4uY29uZgotQEAgLTY2 NSw2ICs2NjUsMTEgQEAgbXkgJXRhcmdldHMgPSAoCi0gICAgICAgICBwZXJsYXNtX3NjaGVtZSAg ID0+ICJsaW51eDMyIiwKLSAgICAgICAgIGxpYl9jcHBmbGFncyAgICAgPT4gYWRkKCItREJfRU5E SUFOIiksCi0gICAgIH0sCi0rICAgICJsaW51eC1wcGNsZSIgPT4gewotKyAgICAgICAgaW5oZXJp dF9mcm9tICAgICA9PiBbICJsaW51eC1nZW5lcmljMzIiLCBhc20oInBwYzMyX2FzbSIpIF0sCi0r ICAgICAgICBwZXJsYXNtX3NjaGVtZSAgID0+ICJsaW51eDMybGUiLAotKyAgICAgICAgbGliX2Nw cGZsYWdzICAgICA9PiBhZGQoIi1ETF9FTkRJQU4iKSwKLSsgICAgfSwKLSAgICAgImxpbnV4LXBw YzY0IiA9PiB7Ci0gICAgICAgICBpbmhlcml0X2Zyb20gICAgID0+IFsgImxpbnV4LWdlbmVyaWM2 NCIsIGFzbSgicHBjNjRfYXNtIikgXSwKLSAgICAgICAgIGNmbGFncyAgICAgICAgICAgPT4gYWRk KCItbTY0IiksCi1kaWZmIC0tZ2l0IGNvbmZpZyBjb25maWcKLWluZGV4IDI2MjI1Y2EuLjZhMWU4 MzAgMTAwNzU1Ci0tLS0gYS9jb25maWcKLSsrKyBiL2NvbmZpZwotQEAgLTU0Myw2ICs1NDMsNyBA QCBjYXNlICIkR1VFU1NPUyIgaW4KLSAJZmkKLSAJOzsKLSAgIHBwYzY0bGUtKi1saW51eDIpIE9V VD0ibGludXgtcHBjNjRsZSIgOzsKLSsgIHBwY2xlLSotbGludXgyKSBPVVQ9ImxpbnV4LXBwY2xl IiA7OwotICAgcHBjLSotbGludXgyKSBPVVQ9ImxpbnV4LXBwYyIgOzsKLSAgIG1pcHM2NCotKi1s aW51eDIpCi0gCWVjaG8gIldBUk5JTkchIElmIHlvdSB3aXNoIHRvIGJ1aWxkIDY0LWJpdCBsaWJy YXJ5LCB0aGVuIHlvdSBoYXZlIHRvIgotZGlmZiAtLWdpdCBjcnlwdG8vcG9seTEzMDUvYXNtL3Bv bHkxMzA1LXBwYy5wbCBjcnlwdG8vcG9seTEzMDUvYXNtL3BvbHkxMzA1LXBwYy5wbAotaW5kZXgg ZTVkNjkzMy4uMzI4M2Y2YiAxMDA3NTUKLS0tLSBhL2NyeXB0by9wb2x5MTMwNS9hc20vcG9seTEz MDUtcHBjLnBsCi0rKysgYi9jcnlwdG8vcG9seTEzMDUvYXNtL3BvbHkxMzA1LXBwYy5wbAotQEAg LTMxNCwxMCArMzE0LDEwIEBAICRjb2RlLj08PF9fXzsKLSAJYmVxLQlMbm9fa2V5Ci0gX19fCi0g JGNvZGUuPTw8X19fCWlmICgkTElUVExFX0VORElBTik7Ci0tCWx3CSRoMCwwKCRpbnApCQkjIGxv YWQga2V5IG1hdGVyaWFsCi0tCWx3CSRoMSw0KCRpbnApCi0tCWx3CSRoMiw4KCRpbnApCi0tCWx3 CSRoMywxMigkaW5wKQotKwlsd3oJJGgwLDAoJGlucCkJCSMgbG9hZCBrZXkgbWF0ZXJpYWwKLSsJ bHd6CSRoMSw0KCRpbnApCi0rCWx3egkkaDIsOCgkaW5wKQotKwlsd3oJJGgzLDEyKCRpbnApCi0g X19fCi0gJGNvZGUuPTw8X19fCWlmICghJExJVFRMRV9FTkRJQU4pOwotIAlsaQkkaDEsNApkaWZm IC0tZ2l0IGEvc3JjcGtncy9vcGVuc3NsL3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuc3NsL3RlbXBs YXRlCmluZGV4IDE0NjFmZmQyZjdhMi4uMmE5ZTk0YzVmODI2IDEwMDY0NAotLS0gYS9zcmNwa2dz L29wZW5zc2wvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9vcGVuc3NsL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3BlbnNzbCcKIHBrZ25hbWU9b3BlbnNzbAot dmVyc2lvbj0xLjEuMXMKK3ZlcnNpb249My4wLjcKIHJldmlzaW9uPTEKIGJvb3RzdHJhcD15ZXMK IGJ1aWxkX3N0eWxlPWNvbmZpZ3VyZQpAQCAtMTQsMTAgKzE0LDEwIEBAIG1ha2VfY2hlY2tfdGFy Z2V0PXRlc3QKIG1ha2VfaW5zdGFsbF9hcmdzPSJNQU5TVUZGSVg9c3NsIgogc2hvcnRfZGVzYz0i VG9vbGtpdCBmb3IgU2VjdXJlIFNvY2tldHMgTGF5ZXIgYW5kIFRyYW5zcG9ydCBMYXllciBTZWN1 cml0eSIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCi1saWNlbnNlPSJP cGVuU1NMIgorbGljZW5zZT0iQXBhY2hlLTIuMCIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5vcGVu c3NsLm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL29wZW5z c2wtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1jNWFjMDFlNzYwZWU2ZmYwZGFiNjFkNmIy YmJkMzAxNDY3MjRkMDYzZWIzMjIxODBjNmYxOGE2Zjc0ZTRiNmFhCitjaGVja3N1bT04MzA0OWQw NDJhMjYwZTY5NmY2MjQwNmFjNWMwOGJmNzA2ZmQ4NDM4M2Y5NDVjZjIxYmQ2MWU5ZWQ5NWMzOTZl CiBjb25mX2ZpbGVzPSIvZXRjL3NzbC9vcGVuc3NsLmNuZiIKIHJlcGxhY2VzPSJsaWJyZXNzbD49 MCIKIApAQCAtMjgsNyArMjgsMTEgQEAgaWYgWyAiJENIUk9PVF9SRUFEWSIgXTsgdGhlbgogCWJ1 aWxkX29wdGlvbnNfZGVmYXVsdD0iYXNtIgogZWxzZQogCSMgb3BlbnNzbC1jX3JlaGFzaCBkZXBl bmRzIG9uIHBlcmwsIGlnbm9yZSBvbiBib290c3RyYXAKLQlzdWJwYWNrYWdlcz0ibGliY3J5cHRv MS4xIGxpYnNzbDEuMSBvcGVuc3NsLWRldmVsIgorCXN1YnBhY2thZ2VzPSJsaWJjcnlwdG8zLjAg bGlic3NsMy4wIG9wZW5zc2wtZGV2ZWwiCitmaQorCitpZiBbICIkWEJQU19UQVJHRVRfTk9fQVRP TUlDOCIgXTsgdGhlbgorCW1ha2VkZXBlbmRzKz0iIGxpYmF0b21pYy1kZXZlbCIKIGZpCiAKIGNh c2UgJFhCUFNfVEFSR0VUX01BQ0hJTkUgaW4KQEAgLTYzLDE1ICs2NywxNSBAQCBwb3N0X2luc3Rh bGwoKSB7CiAJZmkKIH0KIAotbGliY3J5cHRvMS4xX3BhY2thZ2UoKSB7CitsaWJjcnlwdG8zLjBf cGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gY3J5cHRvIGxpYnJhcnkiCiAJcGtnX2luc3Rh bGwoKSB7CiAJCXZtb3ZlICJ1c3IvbGliL2xpYmNyeXB0by5zby4qIgotCQl2bW92ZSB1c3IvbGli L2VuZ2luZXMtMS4xCisJCXZtb3ZlIHVzci9saWIvZW5naW5lcy0zCiAJfQogfQogCi1saWJzc2wx LjFfcGFja2FnZSgpIHsKK2xpYnNzbDMuMF9wYWNrYWdlKCkgewogCXNob3J0X2Rlc2MrPSIgLSBT U0wvVExTIGxpYnJhcnkiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlICJ1c3IvbGliL2xpYnNz bC5zby4qIgpAQCAtODcsNyArOTEsNyBAQCBvcGVuc3NsLWNfcmVoYXNoX3BhY2thZ2UoKSB7CiB9 CiAKIG9wZW5zc2wtZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7 dmVyc2lvbn1fJHtyZXZpc2lvbn0gbGlic3NsMS4xPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IGxp YmNyeXB0bzEuMT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBlbmRzPSIke3NvdXJjZXBr Z30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gbGlic3NsMy4wPj0ke3ZlcnNpb259XyR7cmV2aXNp b259IGxpYmNyeXB0bzMuMD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlyZXBsYWNlcz0ibGli cmVzc2wtZGV2ZWw+PTAiCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBr Z19pbnN0YWxsKCkgewoKRnJvbSA5NzUxYjA3OWI4OTllOWRmYmMzNjkzOTQzMDkwM2ViYWM1MzZm YTMyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9waWF6emFsdW5n YUBnbWFpbC5jb20+CkRhdGU6IFNhdCwgMjUgSnVuIDIwMjIgMTg6MzE6MDkgKzAyMDAKU3ViamVj dDogW1BBVENIIDAyLzEzXSByYWNrZXQ6IGRlcGVuZCBvbiBsaWJzc2wzLjAKCi0tLQogc3JjcGtn cy9yYWNrZXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9yYWNrZXQvdGVtcGxhdGUg Yi9zcmNwa2dzL3JhY2tldC90ZW1wbGF0ZQppbmRleCAwZjIyZDZjMDQ2NDkuLmE4YmQ1Y2IxNzc2 MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9yYWNrZXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yYWNr ZXQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdyYWNrZXQn CiBwa2duYW1lPXJhY2tldAogdmVyc2lvbj04LjcKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGFy Y2hzPSJhYXJjaDY0KiBhcm12NiogYXJtdjcqIGk2ODYqIHg4Nl82NCoiCiBidWlsZF93cmtzcmM9 c3JjCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC05LDcgKzksNyBAQCBjb25maWd1cmVf YXJncz0iLS1lbmFibGUtdXNlcHJlZml4IC0tZW5hYmxlLWN1cnNlcyIKIG1ha2VfYnVpbGRfYXJn cz0iQ0NfRk9SX0JVSUxEPWNjIgogaG9zdG1ha2VkZXBlbmRzPSJsaWJlcmF0aW9uLWZvbnRzLXR0 ZiIKIG1ha2VkZXBlbmRzPSJndGsrMy1kZXZlbCBsaWJsejQtZGV2ZWwgbmN1cnNlcy1kZXZlbCBz cWxpdGUtZGV2ZWwgemxpYi1kZXZlbCIKLWRlcGVuZHM9Imd0ayszIGxpYnNzbDEuMSIKK2RlcGVu ZHM9Imd0ayszIGxpYnNzbDMuMCIKIHNob3J0X2Rlc2M9Ik11bHRpLXBhcmFkaWdtIHByb2dyYW1t aW5nIGxhbmd1YWdlIGluIHRoZSBMaXNwLVNjaGVtZSBmYW1pbHkiCiBtYWludGFpbmVyPSJBbmRy ZWEgQnJhbmNhbGVvbmkgPGFiY0Bwb21wZWwubWU+IgogbGljZW5zZT0iTEdQTC0zLjAtb25seSwg TUlUIgoKRnJvbSA4ZmI2OTAyOWNkNTcwNDhiNDdkYTBmYzhhODM0MjFmZWM3Nzk2Y2ZiIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNvbG9waWF6emFsdW5nYUBnbWFpbC5j b20+CkRhdGU6IFNhdCwgMjUgSnVuIDIwMjIgMTg6MzM6NTcgKzAyMDAKU3ViamVjdDogW1BBVENI IDAzLzEzXSB4YnBzOiBhZGQgcGF0Y2ggZm9yIG9wZW5zc2wsIENGTEFHCgotLS0KIHNyY3BrZ3Mv eGJwcy9wYXRjaGVzL29wZW5zc2wucGF0Y2ggfCAyMyArKysrKysrKysrKysrKysrKysrKysrKwog c3JjcGtncy94YnBzL3RlbXBsYXRlICAgICAgICAgICAgICB8ICAyICsrCiAyIGZpbGVzIGNoYW5n ZWQsIDI1IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hicHMvcGF0 Y2hlcy9vcGVuc3NsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94YnBzL3BhdGNoZXMvb3Bl bnNzbC5wYXRjaCBiL3NyY3BrZ3MveGJwcy9wYXRjaGVzL29wZW5zc2wucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jYTcyNzQ1NDI0MjIKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy9vcGVuc3NsLnBhdGNoCkBAIC0wLDAgKzEsMjMg QEAKK0Zyb20gZGIxNzY2OTg2YzQzODllYjdlMTdjMGUwMDc2OTcxYjcxMTYxN2VmOSBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEp1YW4gUlAgPHh0cmFlbWVAZ21haWwuY29tPgorRGF0 ZTogVGh1LCAxNiBBcHIgMjAyMCAxNDo1NzoxOCArMDIwMAorU3ViamVjdDogW1BBVENIXSBjb25m aWd1cmU6IGFjY2VwdCBhbnkgb3BlbnNzbCB2ZXJzaW9uLgorCistLS0KKyBjb25maWd1cmUgfCAy ICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2Rp ZmYgLS1naXQgYS9jb25maWd1cmUgYi9jb25maWd1cmUKK2luZGV4IGRhOGFlNzVmLi4zODNiYzky NyAxMDA3NTUKKy0tLSBhL2NvbmZpZ3VyZQorKysrIGIvY29uZmlndXJlCitAQCAtNzA0LDcgKzcw NCw3IEBAIGZpCisgIyBsaWJzc2wgd2l0aCBwa2ctY29uZmlnIHN1cHBvcnQgaXMgcmVxdWlyZWQu CisgIworIHByaW50ZiAiQ2hlY2tpbmcgZm9yIGxpYnNzbCB2aWEgcGtnLWNvbmZpZyAuLi4gIgor LWlmIHBrZy1jb25maWcgLS1leGlzdHMgJ2xpYnNzbCA8IDEuMicgJiYgISBwa2ctY29uZmlnIC0t ZXhpc3RzIGxpYnRscyA7IHRoZW4KKytpZiBwa2ctY29uZmlnIC0tZXhpc3RzICdsaWJzc2wnICYm ICEgcGtnLWNvbmZpZyAtLWV4aXN0cyBsaWJ0bHMgOyB0aGVuCisgCWVjaG8gImZvdW5kIE9wZW5T U0wgdmVyc2lvbiAkKHBrZy1jb25maWcgLS1tb2R2ZXJzaW9uIGxpYnNzbCkuIgorIGVsaWYgcGtn LWNvbmZpZyAtLWV4aXN0cyBsaWJzc2wgbGlidGxzOyB0aGVuCisgCWVjaG8gImZvdW5kIExpYnJl U1NMIHZlcnNpb24gJChwa2ctY29uZmlnIC0tbW9kdmVyc2lvbiBsaWJzc2wpLiIKKwpkaWZmIC0t Z2l0IGEvc3JjcGtncy94YnBzL3RlbXBsYXRlIGIvc3JjcGtncy94YnBzL3RlbXBsYXRlCmluZGV4 IDFjOTM3M2M0OThkYy4uMmE5MzBlNjJlYzI5IDEwMDY0NAotLS0gYS9zcmNwa2dzL3hicHMvdGVt cGxhdGUKKysrIGIvc3JjcGtncy94YnBzL3RlbXBsYXRlCkBAIC0yMCw2ICsyMCw4IEBAIGRlcGVu ZHM9ImNhLWNlcnRpZmljYXRlcyB4YnBzLXRyaWdnZXJzIgogbWFrZV9kaXJzPSIvZXRjL3hicHMu ZCAwNzU1IHJvb3Qgcm9vdCIKIAogTERGTEFHUz0iLWxkbCAtcHRocmVhZCIKKyMgb3BlbnNzbDMK K0NGTEFHUys9Ii1Xbm8tZXJyb3IiCiAKIGlmIFsgIiRDSFJPT1RfUkVBRFkiIF07IHRoZW4KIAlt YWtlZGVwZW5kcys9IiBhdGYtZGV2ZWwiCgpGcm9tIDRhZmVjYmVlZDVkZDYxNjBjODM5MmJmOTQz YmI3NzY2ZDg0ZWFhMzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5pY29s b3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAyMyBKYW4gMjAyMyAxNzo0NTo1MCAt MDUwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMTNdIHNic2lnbnRvb2w6IHBhdGNoIGZvciBvcGVuc3Mz LCBhZGQgQ0ZMQUcKCi0tLQogc3JjcGtncy9zYnNpZ250b29sL3BhdGNoZXMvb3BlbnNzbDMucGF0 Y2ggfCAzNSArKysrKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9zYnNpZ250b29sL3RlbXBs YXRlICAgICAgICAgICAgICAgfCAgNCArKy0KIDIgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvc2JzaWdudG9v bC9wYXRjaGVzL29wZW5zc2wzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zYnNpZ250b29s L3BhdGNoZXMvb3BlbnNzbDMucGF0Y2ggYi9zcmNwa2dzL3Nic2lnbnRvb2wvcGF0Y2hlcy9vcGVu c3NsMy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmNkMGQw MjVhZGE3YgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvc2JzaWdudG9vbC9wYXRjaGVzL29w ZW5zc2wzLnBhdGNoCkBAIC0wLDAgKzEsMzUgQEAKK1N1YmplY3Q6IFtQQVRDSF0gRml4IG9wZW5z c2wtMy4wIGlzc3VlIGludm9sdmluZyBBU04xIHh4eF9pdAorRnJvbTogSmVyZW1pIFBpb3Ryb3dz a2kgPGplcmVtaS5waW90cm93c2tpQG1pY3Jvc29mdC5jb20+CitPcmlnaW46IGh0dHBzOi8vZ3Jv dXBzLmlvL2cvc2JzaWdudG9vbHMvbWVzc2FnZS81NAorCitVc2UgQVNOMV9JVEVNX3JwdHIoKSBp bnN0ZWFkIG9mIHRha2luZyB0aGUgYWRkcmVzcyBvZiBJRENfUEVJRF9pdC4KKworb3BlbnNzbC0z LjAgY2hhbmdlZCB0aGUgdHlwZSBvZiBUWVBFX2l0IGZyb20gYGNvbnN0IEFTTjFfSVRFTSBUWVBF X2l0YCB0bworYGNvbnN0IEFTTjFfSVRFTSAqVFlQRV9pdCh2b2lkKWAuIFRoaXMgd2FzIHByZXZp b3VzbHkgaGlkZGVuIGJlaGluZAorT1BFTlNTTF9FWFBPUlRfVkFSX0FTX0ZVTkNUSU9OIGJ1dCBp biAzLjAgb25seSB0aGUgZnVuY3Rpb24gdmVyc2lvbiBpcworYXZhaWxhYmxlLiBUaGlzIGNoYW5n ZSBzaG91bGQgaGF2ZSBiZWVuIHRyYW5zcGFyZW50IHRvIHRoZSBhcHBsaWNhdGlvbiwgYnV0Citv bmx5IGlmIHRoZSBgQVNOMV9JVEVNX3JwdHIoKWAgbWFjcm8gaXMgdXNlZC4KKworVGhpcyBjaGFu Z2UgcGFzc2VzIGBtYWtlIGNoZWNrYCB3aXRoIGJvdGggb3BlbnNzbCAxLjEgYW5kIDMuMC4KKwor U2lnbmVkLW9mZi1ieTogSmVyZW1pIFBpb3Ryb3dza2kgPGpwaW90cm93c2tpQG1pY3Jvc29mdC5j b20+CistLS0KKyBzcmMvaWRjLmMgfCAyICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9zcmMvaWRjLmMgYi9zcmMvaWRjLmMK K2luZGV4IDZkODdiZDQuLjBhODIyMTggMTAwNjQ0CistLS0gYS9zcmMvaWRjLmMKKysrKyBiL3Ny Yy9pZGMuYworQEAgLTE4OSw3ICsxODksNyBAQCBpbnQgSURDX3NldChQS0NTNyAqcDcsIFBLQ1M3 X1NJR05FUl9JTkZPICpzaSwgc3RydWN0IGltYWdlICppbWFnZSkKKyAKKyAJaWRjLT5kYXRhLT50 eXBlID0gT0JKX25pZDJvYmoocGVpZF9uaWQpOworIAlpZGMtPmRhdGEtPnZhbHVlID0gQVNOMV9U WVBFX25ldygpOworLQl0eXBlX3NldF9zZXF1ZW5jZShpbWFnZSwgaWRjLT5kYXRhLT52YWx1ZSwg cGVpZCwgJklEQ19QRUlEX2l0KTsKKysJdHlwZV9zZXRfc2VxdWVuY2UoaW1hZ2UsIGlkYy0+ZGF0 YS0+dmFsdWUsIHBlaWQsIEFTTjFfSVRFTV9ycHRyKElEQ19QRUlEKSk7CisgCisgICAgICAgICBp ZGMtPmRpZ2VzdC0+YWxnLT5wYXJhbWV0ZXIgPSBBU04xX1RZUEVfbmV3KCk7CisgICAgICAgICBp ZGMtPmRpZ2VzdC0+YWxnLT5hbGdvcml0aG0gPSBPQkpfbmlkMm9iaihOSURfc2hhMjU2KTsKKy0t IAorMi4yNS4xCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2JzaWdudG9vbC90ZW1wbGF0ZSBiL3Ny Y3BrZ3Mvc2JzaWdudG9vbC90ZW1wbGF0ZQppbmRleCA0MmIyNTQ1ZDIzZWYuLjFiZGVlOGM1Yjc4 NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYnNpZ250b29sL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv c2JzaWdudG9vbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3Nic2lnbnRvb2wnCiBwa2duYW1lPXNic2lnbnRvb2wKIHZlcnNpb249MC45LjQKLXJldmlzaW9u PTQKK3JldmlzaW9uPTUKIGFyY2hzPSJ4ODZfNjQqIGk2ODYqIGFhcmNoNjQqIGFybSoiCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9jb25mIGF1dG9tYWtl IHBrZy1jb25maWcgaGVscDJtYW4iCkBAIC0yMCw2ICsyMCw4IEBAIGNoZWNrc3VtPSJlZGRiN2Qy MTI2M2VlMmIwN2JlOGYwZWQ5M2I2YmEwMjFjM2Y5NDM5NjQ3MzBiMmQ4NmY0NDczNmZhMTkyNGQ1 CiAgMWRjMWUxZGU1ZjJkZGE1MGRiZDJlNmE4MzM1NWZlN2FlMzhjYTBmNzlkYWViNDA0MDI2NDIx YWY3MDYwNjY1MyIKIHNraXBfZXh0cmFjdGlvbj0ic2JzaWdudG9vbF8wLjkuMi5vcmlnLnRhci5n eiIKIGNvbmZfZmlsZXM9Ii9ldGMvZGVmYXVsdC9zYnNpZ250b29sLWtlcm5lbC1ob29rIgorIyBv cGVuc3NsMyBmaXgKK0NGTEFHUys9IiAtV25vLWVycm9yPWRlcHJlY2F0ZWQtZGVjbGFyYXRpb25z IgogCiBwb3N0X2V4dHJhY3QoKSB7CiAJYnNkdGFyIC14emYgJFhCUFNfU1JDRElTVERJUi8kcGtn bmFtZS0kdmVyc2lvbi9zYnNpZ250b29sXzAuOS4yLm9yaWcudGFyLmd6CgpGcm9tIGI2NDE0OWY4 YmU0YzM3NjNlYzM5ZjE2MjA4NmVhMTZjYzBjNjA1NzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyNCBK YW4gMjAyMyAxMzozOTo1MyAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDUvMTNdIGdzb2FwOiB1cGRh dGUgdG8gMi44LjEyNAoKdGFyYmFsbCBmb3IgcHJldmlvdXMgdmVyc2lvbnMgbm90IGF2YWlsYWJs ZQotLS0KIHNyY3BrZ3MvZ3NvYXAvZmlsZXMvbXVzbC1maXhlcy5wYXRjaCAgICAgIHwgIDY4ICsr KysrKysrKysrCiBzcmNwa2dzL2dzb2FwL3BhdGNoZXMvZ3NvYXAtbGlidG9vbC5wYXRjaCB8IDEz NyArKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2dzb2FwL3RlbXBsYXRlICAgICAgICAg ICAgICAgICAgICB8ICAzMCArKystLQogMyBmaWxlcyBjaGFuZ2VkLCAyMjQgaW5zZXJ0aW9ucygr KSwgMTEgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nc29hcC9maWxl cy9tdXNsLWZpeGVzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nc29hcC9wYXRj aGVzL2dzb2FwLWxpYnRvb2wucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dzb2FwL2ZpbGVz L211c2wtZml4ZXMucGF0Y2ggYi9zcmNwa2dzL2dzb2FwL2ZpbGVzL211c2wtZml4ZXMucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi43NzU5YWM3ODYwZTYKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dzb2FwL2ZpbGVzL211c2wtZml4ZXMucGF0Y2gKQEAg LTAsMCArMSw2OCBAQAorRnJvbTogaHR0cHM6Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy90 cmVlL2NvbW11bml0eS9nc29hcC9tdXNsLWZpeGVzLnBhdGNoCisKKy0tLSBhL2dzb2FwL3N0ZHNv YXAyLmMKKysrKyBiL2dzb2FwL3N0ZHNvYXAyLmMKK0BAIC01MTI1LDcgKzUxMjUsNyBAQAorICAg ICBob3N0ZW50ID0gTlVMTDsKKyAgICAgc29hcC0+ZXJybnVtID0gaF9lcnJubzsKKyAgIH0KKy0j ZWxpZiAoIWRlZmluZWQoX0dOVV9TT1VSQ0UpIHx8ICghKH5fR05VX1NPVVJDRSsxKSAmJiAhZGVm aW5lZChfUE9TSVhfQ19TT1VSQ0UpICYmICFkZWZpbmVkKF9YT1BFTl9TT1VSQ0UpKSB8fCBfUE9T SVhfQ19TT1VSQ0UgPj0gMjAwMTEyTCB8fCBfWE9QRU5fU09VUkNFID49IDYwMCB8fCBkZWZpbmVk KF9fQU5EUk9JRF9fKSB8fCBkZWZpbmVkKEZSRUVCU0QpIHx8IGRlZmluZWQoX19GcmVlQlNEX18p KSAmJiAhZGVmaW5lZChTVU5fT1MpICYmIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1IpCisr I2VsaWYgZGVmaW5lZChIQVZFX0dFVEhPU1RCWU5BTUVfUikKKyAgIHdoaWxlICgociA9IGdldGhv c3RieW5hbWVfcihhZGRyLCBob3N0ZW50LCB0bXBidWYsIHRtcGxlbiwgJmhvc3RlbnQsICZzb2Fw LT5lcnJudW0pKSA8IDApCisgICB7CisgICAgIGlmICh0bXBidWYgIT0gc29hcC0+dG1wYnVmKQor QEAgLTUxNDAsOCArNTE0MCw2IEBACisgICAgIGlmICghdG1wYnVmKQorICAgICAgIGJyZWFrOwor ICAgfQorLSNlbGlmIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1IpCistICBob3N0ZW50ID0g Z2V0aG9zdGJ5bmFtZV9yKGFkZHIsIGhvc3RlbnQsIHRtcGJ1ZiwgdG1wbGVuLCAmc29hcC0+ZXJy bnVtKTsKKyAjZWxpZiBkZWZpbmVkKFZYV09SS1MpCisgICAvKiB2eFdvcmtzIGNvbXBhdGlibGUg Ki8KKyAgIC8qIElmIHRoZSBETlMgcmVzb2x2ZXIgbGlicmFyeSByZXNvbHZMaWIgaGFzIGJlZW4g Y29uZmlndXJlZCBpbiB0aGUgdnhXb3JrcworCistLS0gYS9nc29hcC9zdGRzb2FwMi5jcHAKKysr KyBiL2dzb2FwL3N0ZHNvYXAyLmNwcAorQEAgLTUwOTIsNyArNTA5Miw3IEBACisgeworICNpZiAo ZGVmaW5lZChfQUlYNDMpIHx8IGRlZmluZWQoVFJVNjQpIHx8IGRlZmluZWQoSFBfVVgpKSAmJiBk ZWZpbmVkKEhBVkVfR0VUSE9TVEJZTkFNRV9SKQorICAgc3RydWN0IGhvc3RlbnRfZGF0YSBodF9k YXRhOworLSNlbGlmICghZGVmaW5lZChfR05VX1NPVVJDRSkgfHwgKCEofl9HTlVfU09VUkNFKzEp ICYmICFkZWZpbmVkKF9QT1NJWF9DX1NPVVJDRSkgJiYgIWRlZmluZWQoX1hPUEVOX1NPVVJDRSkp IHx8IF9QT1NJWF9DX1NPVVJDRSA+PSAyMDAxMTJMIHx8IF9YT1BFTl9TT1VSQ0UgPj0gNjAwIHx8 IGRlZmluZWQoX19BTkRST0lEX18pIHx8IGRlZmluZWQoRlJFRUJTRCkgfHwgZGVmaW5lZChfX0Zy ZWVCU0RfXykpICYmIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1IpCisrI2VsaWYgZGVmaW5l ZChIQVZFX0dFVEhPU1RCWU5BTUVfUikKKyAgIGludCByOworICAgY2hhciAqdG1wYnVmID0gc29h cC0+dG1wYnVmOworICAgc2l6ZV90IHRtcGxlbiA9IHNpemVvZihzb2FwLT50bXBidWYpOworQEAg LTUxMjUsNyArNTEyNSw3IEBACisgICAgIGhvc3RlbnQgPSBOVUxMOworICAgICBzb2FwLT5lcnJu dW0gPSBoX2Vycm5vOworICAgfQorLSNlbGlmICghZGVmaW5lZChfR05VX1NPVVJDRSkgfHwgKCEo fl9HTlVfU09VUkNFKzEpICYmICFkZWZpbmVkKF9QT1NJWF9DX1NPVVJDRSkgJiYgIWRlZmluZWQo X1hPUEVOX1NPVVJDRSkpIHx8IF9QT1NJWF9DX1NPVVJDRSA+PSAyMDAxMTJMIHx8IF9YT1BFTl9T T1VSQ0UgPj0gNjAwIHx8IGRlZmluZWQoX19BTkRST0lEX18pIHx8IGRlZmluZWQoRlJFRUJTRCkg fHwgZGVmaW5lZChfX0ZyZWVCU0RfXykpICYmICFkZWZpbmVkKFNVTl9PUykgJiYgZGVmaW5lZChI QVZFX0dFVEhPU1RCWU5BTUVfUikKKysjZWxpZiBkZWZpbmVkKEhBVkVfR0VUSE9TVEJZTkFNRV9S KQorICAgd2hpbGUgKChyID0gZ2V0aG9zdGJ5bmFtZV9yKGFkZHIsIGhvc3RlbnQsIHRtcGJ1Ziwg dG1wbGVuLCAmaG9zdGVudCwgJnNvYXAtPmVycm51bSkpIDwgMCkKKyAgIHsKKyAgICAgaWYgKHRt cGJ1ZiAhPSBzb2FwLT50bXBidWYpCitAQCAtNTE0MCw4ICs1MTQwLDYgQEAKKyAgICAgaWYgKCF0 bXBidWYpCisgICAgICAgYnJlYWs7CisgICB9CistI2VsaWYgZGVmaW5lZChIQVZFX0dFVEhPU1RC WU5BTUVfUikKKy0gIGhvc3RlbnQgPSBnZXRob3N0YnluYW1lX3IoYWRkciwgaG9zdGVudCwgdG1w YnVmLCB0bXBsZW4sICZzb2FwLT5lcnJudW0pOworICNlbGlmIGRlZmluZWQoVlhXT1JLUykKKyAg IC8qIHZ4V29ya3MgY29tcGF0aWJsZSAqLworICAgLyogSWYgdGhlIEROUyByZXNvbHZlciBsaWJy YXJ5IHJlc29sdkxpYiBoYXMgYmVlbiBjb25maWd1cmVkIGluIHRoZSB2eFdvcmtzCistLS0gYS9n c29hcC9zdGRzb2FwMi5jcHAKKysrKyBiL2dzb2FwL3N0ZHNvYXAyLmNwcAorQEAgLTIyNjE4LDEz ICsyMjYxOCw5IEBACisgICB7CisgI2lmbmRlZiBXSU4zMgorICMgaWZkZWYgSEFWRV9TVFJFUlJP Ul9SCistIyAgaWYgIWRlZmluZWQoX0dOVV9TT1VSQ0UpIHx8ICghKH5fR05VX1NPVVJDRSsxKSAm JiAoKCFkZWZpbmVkKF9QT1NJWF9DX1NPVVJDRSkgJiYgIWRlZmluZWQoX1hPUEVOX1NPVVJDRSkp IHx8IChfUE9TSVhfQ19TT1VSQ0UgPj0gMjAwMTEyTCB8fCBfWE9QRU5fU09VUkNFID49IDYwMCkp KQorICAgICBlcnIgPSBzdHJlcnJvcl9yKGVyciwgc29hcC0+bXNnYnVmLCBzaXplb2Yoc29hcC0+ bXNnYnVmKSk7IC8qIFhTSS1jb21wbGlhbnQgKi8KKyAgICAgaWYgKGVyciAhPSAwKQorICAgICAg IHNvYXBfc3RyY3B5KHNvYXAtPm1zZ2J1Ziwgc2l6ZW9mKHNvYXAtPm1zZ2J1ZiksICJ1bmtub3du IGVycm9yIik7CistIyAgZWxzZQorLSAgICByZXR1cm4gc3RyZXJyb3JfcihlcnIsIHNvYXAtPm1z Z2J1Ziwgc2l6ZW9mKHNvYXAtPm1zZ2J1ZikpOyAvKiBHTlUtc3BlY2lmaWMgKi8KKy0jICBlbmRp ZgorICMgZWxzZQorICAgICByZXR1cm4gc3RyZXJyb3IoZXJyKTsKKyAjIGVuZGlmCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dzb2FwL3BhdGNoZXMvZ3NvYXAtbGlidG9vbC5wYXRjaCBiL3NyY3BrZ3Mv Z3NvYXAvcGF0Y2hlcy9nc29hcC1saWJ0b29sLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMC4uNjkyZjY0YjdkNmNiCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9nc29hcC9wYXRjaGVzL2dzb2FwLWxpYnRvb2wucGF0Y2gKQEAgLTAsMCArMSwxMzcgQEAKK0Zy b206IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvZ3NvYXAvYmxvYi9tYXN0ZXIv Zi9nc29hcC1saWJ0b29sLnBhdGNoCisKK2RpZmYgLXVyIGdzb2FwLTIuOC5vcmlnL2NvbmZpZ3Vy ZS5hYyBnc29hcC0yLjgvY29uZmlndXJlLmFjCistLS0gZ3NvYXAtMi44Lm9yaWcvY29uZmlndXJl LmFjCTIwMTktMDEtMTQgMTg6MTc6MjAuMDAwMDAwMDAwICswMTAwCisrKysgZ3NvYXAtMi44L2Nv bmZpZ3VyZS5hYwkyMDE5LTAxLTE3IDE1OjQ4OjAwLjAwMDk4MjA4OCArMDEwMAorQEAgLTE2LDgg KzE2LDcgQEAKKyBBTV9QUk9HX0xFWAorIEFDX1BST0dfWUFDQworIEFDX1BST0dfQ1BQCistQUNf UFJPR19SQU5MSUIKKy0jQU1fUFJPR19MSUJUT09MCisrQU1fUFJPR19MSUJUT09MCisgQUNfUFJP R19MTl9TCisgQUNfUFJPR19BV0sKKyBBQ19QUk9HX0lOU1RBTEwKK0BAIC0yOTUsMTUgKzI5NCwx NSBAQAorICAgICBXU0RMMkhfRVhUUkFfTElCUz0iJHtXU0RMMkhfRVhUUkFfTElCU30gLWxnbnV0 bHMgLWxnY3J5cHQgLWxncGctZXJyb3IgLWx6IgorICAgICBTQU1QTEVfSU5DTFVERVM9CisgICAg IFNBTVBMRV9TU0xfTElCUz0iLWxnbnV0bHMgLWxnY3J5cHQgLWxncGctZXJyb3IgLWx6IgorLSAg ICBXU0RMMkhfU09BUF9DUFBfTElCPSJsaWJnc29hcHNzbCsrLmEiCisrICAgIFdTREwySF9TT0FQ X0NQUF9MSUI9ImxpYmdzb2Fwc3NsKysubGEiCisgICBlbHNlCisgICAgIEFDX01TR19SRVNVTFQo bm8pCisgICAgIFdTREwySF9FWFRSQV9GTEFHUz0iLURXSVRIX09QRU5TU0wgLURXSVRIX0daSVAi CisgICAgICMgY29tcGlsZSB3aXRoIHdzZGwyaCB3aGVuIE9QRU5TU0wgaXMgYXZhaWxhYmxlCist ICAgIFdTREwySF9FWFRSQV9MSUJTPSIke1dTREwySF9FWFRSQV9MSUJTfSAtbHNzbCAtbGNyeXB0 byAtbHoiCisrICAgIFdTREwySF9FWFRSQV9MSUJTPSIke1dTREwySF9FWFRSQV9MSUJTfSAtbGNy eXB0byIKKyAgICAgU0FNUExFX0lOQ0xVREVTPQorICAgICBTQU1QTEVfU1NMX0xJQlM9Ii1sc3Ns IC1sY3J5cHRvIC1seiIKKy0gICAgV1NETDJIX1NPQVBfQ1BQX0xJQj0ibGliZ3NvYXBzc2wrKy5h IgorKyAgICBXU0RMMkhfU09BUF9DUFBfTElCPSJsaWJnc29hcHNzbCsrLmxhIgorICAgZmkKKyAg IGlmIHRlc3QgLW4gIiRaTElCIjsgdGhlbgorICAgICBXU0RMMkhfRVhUUkFfRkxBR1M9Ii1JJHta TElCfS9pbmNsdWRlICR7V1NETDJIX0VYVFJBX0ZMQUdTfSIKK0BAIC0zMjIsNyArMzIxLDcgQEAK KyAgIFdTREwySF9FWFRSQV9GTEFHUz0KKyAgIFNBTVBMRV9TU0xfTElCUz0KKyAgIFNBTVBMRV9J TkNMVURFUz0KKy0gIFdTREwySF9TT0FQX0NQUF9MSUI9ImxpYmdzb2FwKysuYSIKKysgIFdTREwy SF9TT0FQX0NQUF9MSUI9ImxpYmdzb2FwKysubGEiCisgZmkKKyBBTV9DT05ESVRJT05BTChXSVRI X09QRU5TU0wsIHRlc3QgIngkd2l0aF9vcGVuc3NsIiA9ICJ4eWVzIiAtYSAieCR3aXRoX2dudXRs cyIgIT0gInh5ZXMiKQorIEFDX1NVQlNUKFdJVEhfT1BFTlNTTCkKK2RpZmYgLXVyIGdzb2FwLTIu OC5vcmlnL2dzb2FwL01ha2VmaWxlLmFtIGdzb2FwLTIuOC9nc29hcC9NYWtlZmlsZS5hbQorLS0t IGdzb2FwLTIuOC5vcmlnL2dzb2FwL01ha2VmaWxlLmFtCTIwMTktMDEtMTQgMTg6MTc6MjEuMDAw MDAwMDAwICswMTAwCisrKysgZ3NvYXAtMi44L2dzb2FwL01ha2VmaWxlLmFtCTIwMTktMDEtMTcg MTU6NTg6MTMuMDQxMzE3NTY3ICswMTAwCitAQCAtMzQsMjAgKzM0LDMwIEBACisgZG9tX2NwcC5j cHA6IGRvbS5jcHAKKyAJJChMTl9TKSAtZiAkKHRvcF9zcmNkaXIpL2dzb2FwL2RvbS5jcHAgZG9t X2NwcC5jcHAKKyAKKy1saWJfTElCUkFSSUVTID0gbGliZ3NvYXAuYSBsaWJnc29hcCsrLmEgbGli Z3NvYXBjay5hIGxpYmdzb2FwY2srKy5hIGxpYmdzb2Fwc3NsLmEgbGliZ3NvYXBzc2wrKy5hCisr bGliX0xUTElCUkFSSUVTID0gbGliZ3NvYXAubGEgbGliZ3NvYXArKy5sYSBsaWJnc29hcGNrLmxh IGxpYmdzb2FwY2srKy5sYSBsaWJnc29hcHNzbC5sYSBsaWJnc29hcHNzbCsrLmxhCisgCistbGli Z3NvYXBfYV9TT1VSQ0VTID0gc3Rkc29hcDIuYyBkb20uYworLWxpYmdzb2FwX2FfQ0ZMQUdTID0g JChTT0FQQ1BQMl9ERUJVRykgJChTT0FQQ1BQMl9OT05BTUVTUEFDRVMpICQoU09BUENQUDJfTk9f Q19MT0NBTEUpICQoU09BUENQUDJfSVBWNikgJChTT0FQQ1BQMl9JUFY2X1Y2T05MWSkgLUQkKHBs YXRmb3JtKQorLWxpYmdzb2FwX19fYV9TT1VSQ0VTID0gc3Rkc29hcDJfY3BwLmNwcCBkb21fY3Bw LmNwcAorLWxpYmdzb2FwX19fYV9DWFhGTEFHUyA9ICQoU09BUENQUDJfREVCVUcpICQoU09BUENQ UDJfTk9OQU1FU1BBQ0VTKSAkKFNPQVBDUFAyX05PX0NfTE9DQUxFKSAkKFNPQVBDUFAyX0lQVjYp ICQoU09BUENQUDJfSVBWNl9WNk9OTFkpIC1EJChwbGF0Zm9ybSkKKy1saWJnc29hcGNrX2FfU09V UkNFUyA9IHN0ZHNvYXAyX2NrLmMgZG9tLmMKKy1saWJnc29hcGNrX2FfQ0ZMQUdTID0gJChTT0FQ Q1BQMl9ERUJVRykgJChTT0FQQ1BQMl9OT05BTUVTUEFDRVMpICQoU09BUENQUDJfTk9fQ19MT0NB TEUpICQoU09BUENQUDJfSVBWNikgJChTT0FQQ1BQMl9JUFY2X1Y2T05MWSkgLUQkKHBsYXRmb3Jt KSAtRFdJVEhfQ09PS0lFUworLWxpYmdzb2FwY2tfX19hX1NPVVJDRVMgPSBzdGRzb2FwMl9ja19j cHAuY3BwIGRvbV9jcHAuY3BwCistbGliZ3NvYXBja19fX2FfQ1hYRkxBR1MgPSAkKFNPQVBDUFAy X0RFQlVHKSAkKFNPQVBDUFAyX05PTkFNRVNQQUNFUykgJChTT0FQQ1BQMl9OT19DX0xPQ0FMRSkg JChTT0FQQ1BQMl9JUFY2KSAkKFNPQVBDUFAyX0lQVjZfVjZPTkxZKSAtRCQocGxhdGZvcm0pIC1E V0lUSF9DT09LSUVTCistbGliZ3NvYXBzc2xfYV9TT1VSQ0VTID0gc3Rkc29hcDJfc3NsLmMgZG9t LmMKKy1saWJnc29hcHNzbF9hX0NGTEFHUyA9ICQoU09BUENQUDJfREVCVUcpICQoU09BUENQUDJf Tk9OQU1FU1BBQ0VTKSAkKFNPQVBDUFAyX05PX0NfTE9DQUxFKSAkKFNPQVBDUFAyX0lQVjYpICQo U09BUENQUDJfSVBWNl9WNk9OTFkpIC1EJChwbGF0Zm9ybSkgJChXU0RMMkhfRVhUUkFfRkxBR1Mp IC1EV0lUSF9ET00gLURXSVRIX0NPT0tJRVMKKy1saWJnc29hcHNzbF9fX2FfU09VUkNFUyA9IHN0 ZHNvYXAyX3NzbF9jcHAuY3BwIGRvbV9jcHAuY3BwCistbGliZ3NvYXBzc2xfX19hX0NYWEZMQUdT ID0gJChTT0FQQ1BQMl9ERUJVRykgJChTT0FQQ1BQMl9OT05BTUVTUEFDRVMpICQoU09BUENQUDJf Tk9fQ19MT0NBTEUpICQoU09BUENQUDJfSVBWNikgJChTT0FQQ1BQMl9JUFY2X1Y2T05MWSkgLUQk KHBsYXRmb3JtKSAkKFdTREwySF9FWFRSQV9GTEFHUykgLURXSVRIX0RPTSAtRFdJVEhfQ09PS0lF UworK1NPVkVSU0lPTiA9ICQoc2hlbGwgZ3JlcCAnZGVmaW5lIFZFUlNJT04nICQoc3JjZGlyKS9z cmMvc29hcGNwcDIuaCB8IGN1dCAtZCAnIicgLWYgMikKKysKKytsaWJnc29hcF9sYV9TT1VSQ0VT ID0gc3Rkc29hcDIuYyBkb20uYworK2xpYmdzb2FwX2xhX0NGTEFHUyA9ICQoU09BUENQUDJfREVC VUcpICQoU09BUENQUDJfTk9OQU1FU1BBQ0VTKSAkKFNPQVBDUFAyX05PX0NfTE9DQUxFKSAkKFNP QVBDUFAyX0lQVjYpICQoU09BUENQUDJfSVBWNl9WNk9OTFkpIC1EJChwbGF0Zm9ybSkKKytsaWJn c29hcF9sYV9MREZMQUdTID0gLXJlbGVhc2UgJChTT1ZFUlNJT04pCisrbGliZ3NvYXBfX19sYV9T T1VSQ0VTID0gc3Rkc29hcDJfY3BwLmNwcCBkb21fY3BwLmNwcAorK2xpYmdzb2FwX19fbGFfQ1hY RkxBR1MgPSAkKFNPQVBDUFAyX0RFQlVHKSAkKFNPQVBDUFAyX05PTkFNRVNQQUNFUykgJChTT0FQ Q1BQMl9OT19DX0xPQ0FMRSkgJChTT0FQQ1BQMl9JUFY2KSAkKFNPQVBDUFAyX0lQVjZfVjZPTkxZ KSAtRCQocGxhdGZvcm0pCisrbGliZ3NvYXBfX19sYV9MREZMQUdTID0gLXJlbGVhc2UgJChTT1ZF UlNJT04pCisrbGliZ3NvYXBja19sYV9TT1VSQ0VTID0gc3Rkc29hcDJfY2suYyBkb20uYworK2xp Ymdzb2FwY2tfbGFfQ0ZMQUdTID0gJChTT0FQQ1BQMl9ERUJVRykgJChTT0FQQ1BQMl9OT05BTUVT UEFDRVMpICQoU09BUENQUDJfTk9fQ19MT0NBTEUpICQoU09BUENQUDJfSVBWNikgJChTT0FQQ1BQ Ml9JUFY2X1Y2T05MWSkgLUQkKHBsYXRmb3JtKSAtRFdJVEhfQ09PS0lFUworK2xpYmdzb2FwY2tf bGFfTERGTEFHUyA9IC1yZWxlYXNlICQoU09WRVJTSU9OKQorK2xpYmdzb2FwY2tfX19sYV9TT1VS Q0VTID0gc3Rkc29hcDJfY2tfY3BwLmNwcCBkb21fY3BwLmNwcAorK2xpYmdzb2FwY2tfX19sYV9D WFhGTEFHUyA9ICQoU09BUENQUDJfREVCVUcpICQoU09BUENQUDJfTk9OQU1FU1BBQ0VTKSAkKFNP QVBDUFAyX05PX0NfTE9DQUxFKSAkKFNPQVBDUFAyX0lQVjYpICQoU09BUENQUDJfSVBWNl9WNk9O TFkpIC1EJChwbGF0Zm9ybSkgLURXSVRIX0NPT0tJRVMKKytsaWJnc29hcGNrX19fbGFfTERGTEFH UyA9IC1yZWxlYXNlICQoU09WRVJTSU9OKQorK2xpYmdzb2Fwc3NsX2xhX1NPVVJDRVMgPSBzdGRz b2FwMl9zc2wuYyBkb20uYworK2xpYmdzb2Fwc3NsX2xhX0NGTEFHUyA9ICQoU09BUENQUDJfREVC VUcpICQoU09BUENQUDJfTk9OQU1FU1BBQ0VTKSAkKFNPQVBDUFAyX05PX0NfTE9DQUxFKSAkKFNP QVBDUFAyX0lQVjYpICQoU09BUENQUDJfSVBWNl9WNk9OTFkpIC1EJChwbGF0Zm9ybSkgJChXU0RM MkhfRVhUUkFfRkxBR1MpIC1EV0lUSF9ET00gLURXSVRIX0NPT0tJRVMKKytsaWJnc29hcHNzbF9s YV9MREZMQUdTID0gLXJlbGVhc2UgJChTT1ZFUlNJT04pCisrbGliZ3NvYXBzc2xfbGFfTElCQURE ID0gLWxzc2wgLWxjcnlwdG8gLWx6CisrbGliZ3NvYXBzc2xfX19sYV9TT1VSQ0VTID0gc3Rkc29h cDJfc3NsX2NwcC5jcHAgZG9tX2NwcC5jcHAKKytsaWJnc29hcHNzbF9fX2xhX0NYWEZMQUdTID0g JChTT0FQQ1BQMl9ERUJVRykgJChTT0FQQ1BQMl9OT05BTUVTUEFDRVMpICQoU09BUENQUDJfTk9f Q19MT0NBTEUpICQoU09BUENQUDJfSVBWNikgJChTT0FQQ1BQMl9JUFY2X1Y2T05MWSkgLUQkKHBs YXRmb3JtKSAkKFdTREwySF9FWFRSQV9GTEFHUykgLURXSVRIX0RPTSAtRFdJVEhfQ09PS0lFUwor K2xpYmdzb2Fwc3NsX19fbGFfTERGTEFHUyA9IC1yZWxlYXNlICQoU09WRVJTSU9OKQorK2xpYmdz b2Fwc3NsX19fbGFfTElCQUREID0gLWxzc2wgLWxjcnlwdG8gLWx6CisgCisgQlVJTFRfU09VUkNF UyA9IHN0ZHNvYXAyX2NwcC5jcHAgZG9tX2NwcC5jcHAgc3Rkc29hcDJfY2suYyBzdGRzb2FwMl9j a19jcHAuY3BwIHN0ZHNvYXAyX3NzbC5jIHN0ZHNvYXAyX3NzbF9jcHAuY3BwCisgCitkaWZmIC11 ciBnc29hcC0yLjgub3JpZy9nc29hcC9zYW1wbGVzL2F1dG90ZXN0L01ha2VmaWxlLmFtIGdzb2Fw LTIuOC9nc29hcC9zYW1wbGVzL2F1dG90ZXN0L01ha2VmaWxlLmFtCistLS0gZ3NvYXAtMi44Lm9y aWcvZ3NvYXAvc2FtcGxlcy9hdXRvdGVzdC9NYWtlZmlsZS5hbQkyMDE5LTAxLTE0IDE4OjE3OjIy LjAwMDAwMDAwMCArMDEwMAorKysrIGdzb2FwLTIuOC9nc29hcC9zYW1wbGVzL2F1dG90ZXN0L01h a2VmaWxlLmFtCTIwMTktMDEtMTcgMTU6NDg6MDAuMDA4OTgyMDAyICswMTAwCitAQCAtMTQsNyAr MTQsNyBAQAorIFdTRExJTlBVVD0kKHRvcF9zcmNkaXIpL2dzb2FwL3NhbXBsZXMvYXV0b3Rlc3Qv ZXhhbXBsZXMud3NkbAorIFNPQVBIRUFERVI9JCh0b3Bfc3JjZGlyKS9nc29hcC9zYW1wbGVzL2F1 dG90ZXN0L2V4YW1wbGVzLmgKKyBTT0FQX0NQUF9TUkM9c29hcEMuY3BwIHNvYXBTZXJ2ZXIuY3Bw CistU09BUF9DUFBfTElCPSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcCsrLmEKKytTT0FQ X0NQUF9MSUI9JCh0b3BfYnVpbGRkaXIpL2dzb2FwL2xpYmdzb2FwKysubGEKKyAKKyAkKFNPQVBf Q1BQX1NSQykgOiAkKFdTRExJTlBVVCkKKyAJJChXU0RMKSAkKFdTRExfRkxBR1MpICQoV1NETElO UFVUKQorZGlmZiAtdXIgZ3NvYXAtMi44Lm9yaWcvZ3NvYXAvc2FtcGxlcy9kYXRhYmluZGluZy9N YWtlZmlsZS5hbSBnc29hcC0yLjgvZ3NvYXAvc2FtcGxlcy9kYXRhYmluZGluZy9NYWtlZmlsZS5h bQorLS0tIGdzb2FwLTIuOC5vcmlnL2dzb2FwL3NhbXBsZXMvZGF0YWJpbmRpbmcvTWFrZWZpbGUu YW0JMjAxOS0wMS0xNCAxODoxNzoyMi4wMDAwMDAwMDAgKzAxMDAKKysrKyBnc29hcC0yLjgvZ3Nv YXAvc2FtcGxlcy9kYXRhYmluZGluZy9NYWtlZmlsZS5hbQkyMDE5LTAxLTE3IDE1OjQ4OjAwLjAw ODk4MjAwMiArMDEwMAorQEAgLTE0LDcgKzE0LDcgQEAKKyBXU0RMSU5QVVQ9JCh0b3Bfc3JjZGly KS9nc29hcC9zYW1wbGVzL2RhdGFiaW5kaW5nL2FkZHJlc3MueHNkCisgU09BUEhFQURFUj0kKHRv cF9zcmNkaXIpL2dzb2FwL3NhbXBsZXMvZGF0YWJpbmRpbmcvYWRkcmVzcy5oCisgU09BUF9DUFBf U1JDPWFkZHJlc3NDLmNwcAorLVNPQVBfQ1BQX0xJQj0kKHRvcF9idWlsZGRpcikvZ3NvYXAvbGli Z3NvYXArKy5hCisrU09BUF9DUFBfTElCPSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcCsr LmxhCisgCisgJChTT0FQX0NQUF9TUkMpIDogJChXU0RMSU5QVVQpCisgCSQoV1NETCkgJChXU0RM X0ZMQUdTKSAkKFdTRExJTlBVVCkKK2RpZmYgLXVyIGdzb2FwLTIuOC5vcmlnL2dzb2FwL3NhbXBs ZXMvTWFrZWZpbGUuZGVmaW5lcyBnc29hcC0yLjgvZ3NvYXAvc2FtcGxlcy9NYWtlZmlsZS5kZWZp bmVzCistLS0gZ3NvYXAtMi44Lm9yaWcvZ3NvYXAvc2FtcGxlcy9NYWtlZmlsZS5kZWZpbmVzCTIw MTktMDEtMTQgMTg6MTc6MjIuMDAwMDAwMDAwICswMTAwCisrKysgZ3NvYXAtMi44L2dzb2FwL3Nh bXBsZXMvTWFrZWZpbGUuZGVmaW5lcwkyMDE5LTAxLTE3IDE1OjQ4OjAwLjAwODk4MjAwMiArMDEw MAorQEAgLTEzLDEzICsxMywxMyBAQAorIFNPQVBfQ19DT1JFPXNvYXBDLmMKKyBTT0FQX0NfQ0xJ RU5UPXNvYXBDbGllbnQuYyAkKFNPQVBfQ19DT1JFKQorIFNPQVBfQ19TRVJWRVI9c29hcFNlcnZl ci5jICQoU09BUF9DX0NPUkUpCistU09BUF9DX0xJQj0kKHRvcF9idWlsZGRpcikvZ3NvYXAvbGli Z3NvYXAuYQorLVNPQVBfQ19MSUJfQ0s9JCh0b3BfYnVpbGRkaXIpL2dzb2FwL2xpYmdzb2FwY2su YQorLVNPQVBfQ19MSUJfU1NMPSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcHNzbC5hCisr U09BUF9DX0xJQj0kKHRvcF9idWlsZGRpcikvZ3NvYXAvbGliZ3NvYXAubGEKKytTT0FQX0NfTElC X0NLPSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcGNrLmxhCisrU09BUF9DX0xJQl9TU0w9 JCh0b3BfYnVpbGRkaXIpL2dzb2FwL2xpYmdzb2Fwc3NsLmxhCisgCisgU09BUF9DUFBfQ09SRT1z b2FwQy5jcHAKKyBTT0FQX0NQUF9DTElFTlQ9c29hcENsaWVudC5jcHAgJChTT0FQX0NQUF9DT1JF KQorIFNPQVBfQ1BQX1NFUlZFUj1zb2FwU2VydmVyLmNwcCAkKFNPQVBfQ1BQX0NPUkUpCistU09B UF9DUFBfTElCPSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcCsrLmEKKy1TT0FQX0NQUF9M SUJfQ0s9JCh0b3BfYnVpbGRkaXIpL2dzb2FwL2xpYmdzb2FwY2srKy5hCistU09BUF9DUFBfTElC X1NTTD0kKHRvcF9idWlsZGRpcikvZ3NvYXAvbGliZ3NvYXBzc2wrKy5hCisrU09BUF9DUFBfTElC PSQodG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcCsrLmxhCisrU09BUF9DUFBfTElCX0NLPSQo dG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcGNrKysubGEKKytTT0FQX0NQUF9MSUJfU1NMPSQo dG9wX2J1aWxkZGlyKS9nc29hcC9saWJnc29hcHNzbCsrLmxhCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dzb2FwL3RlbXBsYXRlIGIvc3JjcGtncy9nc29hcC90ZW1wbGF0ZQppbmRleCA4YWUyOWE4YTI1 MWMuLmNjYTFmYjM3MDAzZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nc29hcC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dzb2FwL3RlbXBsYXRlCkBAIC0xLDI1ICsxLDM3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnc29hcCcKIHBrZ25hbWU9Z3NvYXAKLXZlcnNpb249Mi44LjkxCi1yZXZpc2lvbj0z Cit2ZXJzaW9uPTIuOC4xMjQKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK IGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1pcHY2IgotaG9zdG1ha2VkZXBlbmRzPSJ1bnppcCBm bGV4IGF1dG9jb25mIgoraG9zdG1ha2VkZXBlbmRzPSJ1bnppcCBmbGV4IGF1dG9jb25mIGF1dG9t YWtlIGxpYnRvb2wiCiBtYWtlZGVwZW5kcz0ib3BlbnNzbC1kZXZlbCB6bGliLWRldmVsIgogc2hv cnRfZGVzYz0iVG9vbGtpdCBmb3IgU09BUCBhbmQgUkVTVCBXZWIgU2VydmljZXMgYW5kIFhNTC1C YXNlZCBBcHBsaWNhdGlvbnMiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgotbGljZW5zZT0iZ1NPQVAtMS4zYiwgR1BMLTIuMC1vbmx5IgotaG9tZXBhZ2U9 Imh0dHA6Ly93d3cuY3MuZnN1LmVkdS9+ZW5nZWxlbi9zb2FwLmh0bWwiCitsaWNlbnNlPSJHUEwt Mi4wLW9ubHkiCitob21lcGFnZT0iaHR0cHM6Ly93d3cuZ2VuaXZpYS5jb20vZGV2Lmh0bWwiCiBk aXN0ZmlsZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vZ3NvYXAyL2dzb2FwXyR7dmVyc2lvbn0uemlw IgotY2hlY2tzdW09MmNhMjFiNWFiMmI0MGQ4OTk1NjZjNTU5ZjcxYTFkNTFlZDdlYWMzZjAwMTYw YWI3ODA2MDAyN2EzZWU2NDg4ZgorY2hlY2tzdW09NGI3OTg3ODA5ODkzMzhmNjY1ZWY4ZTE3MWJi Y2M0MjJhMjcxMDA0ZDYyZDU4NTI2NjZkNWVlY2EzM2E2YTYzNgogZGlzYWJsZV9wYXJhbGxlbF9i dWlsZD15ZXMKLQogQ0ZMQUdTPSItZmNvbW1vbiIKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGdzb2FwIgogZmkKIAorcG9zdF9wYXRjaCgpIHsKKwlp ZiBbICIke1hCUFNfVEFSR0VUX0xJQkN9IiA9ICJtdXNsIiBdOyB0aGVuCisJCWNwIC1mICIke0ZJ TEVTRElSfS9tdXNsLWZpeGVzLnBhdGNoIiAiJHt3cmtzcmN9IgorCQljZCAiJHdya3NyYyIKKwkJ bXNnX25vcm1hbCAiJHBrZ3ZlcjogcGF0Y2hpbmcgZm9yIG11c2xcbiIKKwkJcGF0Y2ggLXMgLU5w MSA8bXVzbC1maXhlcy5wYXRjaCAyPi9kZXYvbnVsbAorCWZpCit9CisKK3ByZV9jb25maWd1cmUo KSB7CisJYXV0b3JlY29uZiAtZmkKK30KKwogcHJlX2J1aWxkKCkgewogCWlmIFsgIiRDUk9TU19C VUlMRCIgXTsgdGhlbgogCQkjIHJ1biBob3N0ICdzb2FwY3BwMicKQEAgLTI3LDEwICszOSw2IEBA IHByZV9idWlsZCgpIHsKIAlmaQogfQogCi1wb3N0X2luc3RhbGwoKSB7Ci0JdmxpY2Vuc2UgbGlj ZW5zZS5wZGYKLX0KLQogZ3NvYXAtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke3NvdXJj ZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gJHttYWtlZGVwZW5kc30iCiAJc2hvcnRfZGVz Yys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgoKRnJvbSA4MTcyMDRlNmU5NDk0MDAyNzk2MjVmY2Rl MTA2OWEwZTc2NTZiZjZlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBka3dvIDxuaWNv bG9waWF6emFsdW5nYUBnbWFpbC5jb20+CkRhdGU6IFRodSwgMjYgSmFuIDIwMjMgMTM6NDE6Mjcg LTA1MDAKU3ViamVjdDogW1BBVENIIDA2LzEzXSB2YW5pdHlnZW46IHJlbW92ZQoKLS0tCiBzcmNw a2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgICAgICAgICAgICAgfCAgICAzICstCiAuLi40 YTY0Njg3M2M4NDM5ZDNiNWVlM2EyMjc4ZTcyNzU3NTUyMWYucGF0Y2ggfCAxMTcxIC0tLS0tLS0t LS0tLS0tLS0tCiAuLi4zZTZmZmY3ZGE1MmM0YWVjYmQ4OThkOWRmMmU2MGE1NmYxMzQucGF0Y2gg fCAgIDk4IC0tCiBzcmNwa2dzL3Zhbml0eWdlbi90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAg fCAgIDIxIC0KIDQgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxMjkxIGRlbGV0aW9u cygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmFuaXR5Z2VuL3BhdGNoZXMvNGI4MTRh NjQ2ODczYzg0MzlkM2I1ZWUzYTIyNzhlNzI3NTc1NTIxZi5wYXRjaAogZGVsZXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvdmFuaXR5Z2VuL3BhdGNoZXMvNWYxNjNlNmZmZjdkYTUyYzRhZWNiZDg5OGQ5 ZGYyZTYwYTU2ZjEzNC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdmFuaXR5Z2Vu L3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRl IGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCmluZGV4IDA0MjlhNWZiNDc5Ni4u NGFlYTk0ZTg3ZjdlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncmVtb3ZlZC1wYWNrYWdlcycKIHBrZ25hbWU9cmVtb3Zl ZC1wYWNrYWdlcwotdmVyc2lvbj0wLjEuMjAyMzAxMjAKK3ZlcnNpb249MC4xLjIwMjMwMTI2CiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXRhCiBzaG9ydF9kZXNjPSJVbmluc3RhbGxzIHBhY2th Z2VzIHJlbW92ZWQgZnJvbSByZXBvc2l0b3J5IgpAQCAtNTA5LDYgKzUwOSw3IEBAIHJlcGxhY2Vz PSIKICB1cmxtYXRjaC1naXQ8PTIwMTQxMTE2XzIKICB1d3NnaS1weXRob248PTIuMC4xOF8zCiAg djg8PTMuMjQuMzUuMzNfNAorIHZhbml0eWdlbjw9MS41M18yCiAgdmFwb3Vyc3ludGgtbXZ0b29s czw9MjNfMgogIHZrZDNkPD0xLjNfMQogIHZvbG5vdGk8PTAuMV8xCmRpZmYgLS1naXQgYS9zcmNw a2dzL3Zhbml0eWdlbi9wYXRjaGVzLzRiODE0YTY0Njg3M2M4NDM5ZDNiNWVlM2EyMjc4ZTcyNzU3 NTUyMWYucGF0Y2ggYi9zcmNwa2dzL3Zhbml0eWdlbi9wYXRjaGVzLzRiODE0YTY0Njg3M2M4NDM5 ZDNiNWVlM2EyMjc4ZTcyNzU3NTUyMWYucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDc0YmQ1NGRiZjBmYi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmFuaXR5Z2VuL3Bh dGNoZXMvNGI4MTRhNjQ2ODczYzg0MzlkM2I1ZWUzYTIyNzhlNzI3NTc1NTIxZi5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDExNzEgKzAsMCBAQAotRnJvbSA0YjgxNGE2NDY4NzNjODQzOWQzYjVl ZTNhMjI3OGU3Mjc1NzU1MjFmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogQW50b25p byBTcGFkYXJvIDxpbG92ZWxpbnV4QHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KLURhdGU6IFNh dCwgMiBKdW4gMjAxOCAyMjoyNzo1MSArMDAwMAotU3ViamVjdDogW1BBVENIXSBGaXggT3BlblNT TCAxLjEuMCBpbmNvbXBhdGliaWxpdGllcyAoIzU2KQotCi0qIEZpeCBvcGVuc3NsIDEuMS4wIGlu Y29tcGF0aWJpbGl0aWVzCi0KLSogUmVwbGFjZSBCTl9NQVNLMiB3aXRoIDB4ZmZmZmZmZmZMCi0K LSogRml4IG90aGVyIG9wZW5zc2wgMS4xLjAgaW5jb21wYXRpYmlsaXRpZXMKLQotKiBGaXggcmV0 cm9jb21wYXRpYmlsaXR5IGlzc3VlCi0KLSogUmVtb3ZlIEJOX2JuMmxlYmlucGFkIGR1ZSB0byBp bmNvbXBhdGliaWxpdHkKLQotKiBGaXggb3RoZXIgaW5jb21wYXRpYmlsaXR5IGVycm9ycwotCi0q IEZpeGVkIHJldHJvY29tcGF0aWJpbGl0eSAobWF5YmUpLiBUaGFua3MgdG8gIEBEZXNXdXJzdGVz Ci0KLSogRml4IE9wZW5TU0wgMS4xIGFuZCBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eQotLS0tCi0g a2V5Y29udi5jICAgfCAgMTggKystLQotIG9jbGVuZ2luZS5jIHwgMTMwICsrKysrKysrKysrKysr KysrKy0tLS0tLS0tLQotIHBhdHRlcm4uYyAgIHwgMjUyICsrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBwYXR0ZXJuLmggICB8ICAgOCArLQotIHV0 aWwuYyAgICAgIHwgIDkwICsrKysrKysrKy0tLS0tLS0tLS0KLSB2YW5pdHlnZW4uYyB8ICAxNCAr LS0KLSA2IGZpbGVzIGNoYW5nZWQsIDI3NyBpbnNlcnRpb25zKCspLCAyMzUgZGVsZXRpb25zKC0p Ci0KLWRpZmYgLS1naXQgYS9rZXljb252LmMgYi9rZXljb252LmMKLWluZGV4IGY3NDc1ZTUuLjM5 NGMzYTAgMTAwNjQ0Ci0tLS0gYS9rZXljb252LmMKLSsrKyBiL2tleWNvbnYuYwotQEAgLTExNjAs NyArMTE2MCw3IEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotIAotIAlpZiAoa2V5Ml9p bikgewotIAkJQk5fQ1RYICpibmN0eDsKLS0JCUJJR05VTSBibnRtcCwgYm50bXAyOwotKwkJQklH TlVNICpibnRtcCwgKmJudG1wMjsKLSAJCUVDX0tFWSAqcGtleTI7Ci0gCi0gCQlwa2V5MiA9IEVD X0tFWV9uZXdfYnlfY3VydmVfbmFtZShOSURfc2VjcDI1NmsxKTsKLUBAIC0xMTgyLDE5ICsxMTgy LDE5IEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotIAkJCWNvbXByZXNzZWQgPSAxOwot IAkJfQotIAotLQkJQk5faW5pdCgmYm50bXApOwotLQkJQk5faW5pdCgmYm50bXAyKTsKLSsJCWJu dG1wID0gQk5fbmV3KCk7Ci0rCQlibnRtcDIgPSBCTl9uZXcoKTsKLSAJCWJuY3R4ID0gQk5fQ1RY X25ldygpOwotLQkJRUNfR1JPVVBfZ2V0X29yZGVyKEVDX0tFWV9nZXQwX2dyb3VwKHBrZXkpLCAm Ym50bXAyLCBOVUxMKTsKLS0JCUJOX21vZF9hZGQoJmJudG1wLAotKwkJRUNfR1JPVVBfZ2V0X29y ZGVyKEVDX0tFWV9nZXQwX2dyb3VwKHBrZXkpLCBibnRtcDIsIE5VTEwpOwotKwkJQk5fbW9kX2Fk ZChibnRtcCwKLSAJCQkgICBFQ19LRVlfZ2V0MF9wcml2YXRlX2tleShwa2V5KSwKLSAJCQkgICBF Q19LRVlfZ2V0MF9wcml2YXRlX2tleShwa2V5MiksCi0tCQkJICAgJmJudG1wMiwKLSsJCQkgICBi bnRtcDIsCi0gCQkJICAgYm5jdHgpOwotLQkJdmdfc2V0X3ByaXZrZXkoJmJudG1wLCBwa2V5KTsK LSsJCXZnX3NldF9wcml2a2V5KGJudG1wLCBwa2V5KTsKLSAJCUVDX0tFWV9mcmVlKHBrZXkyKTsK LS0JCUJOX2NsZWFyX2ZyZWUoJmJudG1wKTsKLS0JCUJOX2NsZWFyX2ZyZWUoJmJudG1wMik7Ci0r CQlCTl9jbGVhcl9mcmVlKGJudG1wKTsKLSsJCUJOX2NsZWFyX2ZyZWUoYm50bXAyKTsKLSAJCUJO X0NUWF9mcmVlKGJuY3R4KTsKLSAJfQotIAotZGlmZiAtLWdpdCBhL29jbGVuZ2luZS5jIGIvb2Ns ZW5naW5lLmMKLWluZGV4IDQwODVlZGQuLjZmNjU4NDYgMTAwNjQ0Ci0tLS0gYS9vY2xlbmdpbmUu YwotKysrIGIvb2NsZW5naW5lLmMKLUBAIC00Myw2ICs0MywzNCBAQAotICNpbmNsdWRlICJwYXR0 ZXJuLmgiCi0gI2luY2x1ZGUgInV0aWwuaCIKLSAKLSsvLyBVbmZvcnR1bmF0ZWx5IHdlIG5lZWQg dGhpcyEKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSAweDAwMTAxMDAwMDAKLSsjZGVm aW5lIFBQTlRfQVJST1dfWCBwcG50LT5YCi0rI2RlZmluZSBQUE5UX0FSUk9XX1kgcHBudC0+WQot KyNkZWZpbmUgUFBOVF9BUlJPV19aIHBwbnQtPloKLSsjZGVmaW5lIFBQU19BUlJPV19YIHBwcy0+ WAotKyNkZWZpbmUgUFBTX0FSUk9XX1kgcHBzLT5ZCi0rI2RlZmluZSBQUFNfQVJST1dfWiBwcHMt PloKLSsjZGVmaW5lIFBQVF9BUlJPV19YIHBwdC0+WAotKyNkZWZpbmUgUFBUX0FSUk9XX1kgcHB0 LT5ZCi0rI2RlZmluZSBQUFJfQVJST1dfWCBwcHItPlgKLSsjZGVmaW5lIFBQUl9BUlJPV19ZIHBw ci0+WQotKyNkZWZpbmUgUFBDX0FSUk9XX1ggcHBjLT5YCi0rI2RlZmluZSBQUENfQVJST1dfWSBw cGMtPlkKLSsjZWxzZQotKyNkZWZpbmUgUFBOVF9BUlJPV19YICZwcG50LT5YCi0rI2RlZmluZSBQ UE5UX0FSUk9XX1kgJnBwbnQtPlkKLSsjZGVmaW5lIFBQTlRfQVJST1dfWiAmcHBudC0+WgotKyNk ZWZpbmUgUFBTX0FSUk9XX1ggJnBwcy0+WAotKyNkZWZpbmUgUFBTX0FSUk9XX1kgJnBwcy0+WQot KyNkZWZpbmUgUFBTX0FSUk9XX1ogJnBwcy0+WgotKyNkZWZpbmUgUFBUX0FSUk9XX1ggJnBwdC0+ WAotKyNkZWZpbmUgUFBUX0FSUk9XX1kgJnBwdC0+WQotKyNkZWZpbmUgUFBSX0FSUk9XX1ggJnBw ci0+WAotKyNkZWZpbmUgUFBSX0FSUk9XX1kgJnBwci0+WQotKyNkZWZpbmUgUFBDX0FSUk9XX1gg JnBwYy0+WAotKyNkZWZpbmUgUFBDX0FSUk9XX1kgJnBwYy0+WQotKyNlbmRpZgotIAotICNkZWZp bmUgTUFYX1NMT1QgMgotICNkZWZpbmUgTUFYX0FSRyA2Ci1AQCAtMTMwNywxNCArMTMzNSwyMSBA QCB2Z19vY2xfa2VybmVsX3dhaXQodmdfb2NsX2NvbnRleHRfdCAqdm9jcCwgaW50IHNsb3QpCi0g c3RhdGljIElOTElORSB2b2lkCi0gdmdfb2NsX2dldF9iaWdudW1fcmF3KEJJR05VTSAqYm4sIGNv bnN0IHVuc2lnbmVkIGNoYXIgKmJ1ZikKLSB7Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIg Pj0gMHgwMDEwMTAwMDAwCi0rCUJOX2xlYmluMmJuKGJ1ZiwgMzIsIGJuKTsKLSsjZWxzZQotIAli bl9leHBhbmQoYm4sIDI1Nik7Ci0gCW1lbWNweShibi0+ZCwgYnVmLCAzMik7Ci0gCWJuLT50b3Ag PSAoMzIgLyBzaXplb2YoQk5fVUxPTkcpKTsKLSsjZW5kaWYKLSB9Ci0gCi0gc3RhdGljIElOTElO RSB2b2lkCi0gdmdfb2NsX3B1dF9iaWdudW1fcmF3KHVuc2lnbmVkIGNoYXIgKmJ1ZiwgY29uc3Qg QklHTlVNICpibikKLSB7Ci0rI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPj0gMHgwMDEwMTAw MDAwCi0rCUJOX2JuMmxlYmlucGFkKGJuLCBidWYsIDMyKTsKLSsjZWxzZQotIAlpbnQgYm5sZW4g PSAoYm4tPnRvcCAqIHNpemVvZihCTl9VTE9ORykpOwotIAlpZiAoYm5sZW4gPj0gMzIpIHsKLSAJ CW1lbWNweShidWYsIGJuLT5kLCAzMik7Ci1AQCAtMTMyMiw2ICsxMzU3LDcgQEAgdmdfb2NsX3B1 dF9iaWdudW1fcmF3KHVuc2lnbmVkIGNoYXIgKmJ1ZiwgY29uc3QgQklHTlVNICpibikKLSAJCW1l bWNweShidWYsIGJuLT5kLCBibmxlbik7Ci0gCQltZW1zZXQoYnVmICsgYm5sZW4sIDAsIDMyIC0g Ym5sZW4pOwotIAl9Ci0rI2VuZGlmCi0gfQotIAotICNkZWZpbmUgQUNDRVNTX0JVTkRMRSAxMDI0 Ci1AQCAtMTM1MSw5ICsxMzg3LDE1IEBAIHZnX29jbF9nZXRfYmlnbnVtX3RwYShCSUdOVU0gKmJu LCBjb25zdCB1bnNpZ25lZCBjaGFyICpidWYsIGludCBjZWxsKQotIAotIHN0cnVjdCBlY19wb2lu dF9zdCB7Ci0gCWNvbnN0IEVDX01FVEhPRCAqbWV0aDsKLSsjaWYgT1BFTlNTTF9WRVJTSU9OX05V TUJFUiA+PSAweDAwMTAxMDAwMDAKLSsJQklHTlVNICpYOwotKwlCSUdOVU0gKlk7Ci0rCUJJR05V TSAqWjsKLSsjZWxzZQotIAlCSUdOVU0gWDsKLSAJQklHTlVNIFk7Ci0gCUJJR05VTSBaOwotKyNl bmRpZgotIAlpbnQgWl9pc19vbmU7Ci0gfTsKLSAKLUBAIC0xMzYxLDExICsxNDAzLDExIEBAIHN0 YXRpYyBJTkxJTkUgdm9pZAotIHZnX29jbF9nZXRfcG9pbnQoRUNfUE9JTlQgKnBwbnQsIGNvbnN0 IHVuc2lnbmVkIGNoYXIgKmJ1ZikKLSB7Ci0gCXN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIG1v bnRfb25lW10gPSB7IDB4MDEsMHgwMCwweDAwLDB4MDMsMHhkMSB9OwotLQl2Z19vY2xfZ2V0X2Jp Z251bV9yYXcoJnBwbnQtPlgsIGJ1Zik7Ci0tCXZnX29jbF9nZXRfYmlnbnVtX3JhdygmcHBudC0+ WSwgYnVmICsgMzIpOwotKwl2Z19vY2xfZ2V0X2JpZ251bV9yYXcoUFBOVF9BUlJPV19YLCBidWYp OwotKwl2Z19vY2xfZ2V0X2JpZ251bV9yYXcoUFBOVF9BUlJPV19ZLCBidWYgKyAzMik7Ci0gCWlm ICghcHBudC0+Wl9pc19vbmUpIHsKLSAJCXBwbnQtPlpfaXNfb25lID0gMTsKLS0JCUJOX2JpbjJi bihtb250X29uZSwgc2l6ZW9mKG1vbnRfb25lKSwgJnBwbnQtPlopOwotKwkJQk5fYmluMmJuKG1v bnRfb25lLCBzaXplb2YobW9udF9vbmUpLCBQUE5UX0FSUk9XX1opOwotIAl9Ci0gfQotIAotQEAg LTEzNzMsOCArMTQxNSw4IEBAIHN0YXRpYyBJTkxJTkUgdm9pZAotIHZnX29jbF9wdXRfcG9pbnQo dW5zaWduZWQgY2hhciAqYnVmLCBjb25zdCBFQ19QT0lOVCAqcHBudCkKLSB7Ci0gCWFzc2VydChw cG50LT5aX2lzX29uZSk7Ci0tCXZnX29jbF9wdXRfYmlnbnVtX3JhdyhidWYsICZwcG50LT5YKTsK LS0Jdmdfb2NsX3B1dF9iaWdudW1fcmF3KGJ1ZiArIDMyLCAmcHBudC0+WSk7Ci0rCXZnX29jbF9w dXRfYmlnbnVtX3JhdyhidWYsIFBQTlRfQVJST1dfWCk7Ci0rCXZnX29jbF9wdXRfYmlnbnVtX3Jh dyhidWYgKyAzMiwgUFBOVF9BUlJPV19ZKTsKLSB9Ci0gCi0gc3RhdGljIHZvaWQKLUBAIC0xNjYy LDcgKzE3MDQsNyBAQCB2Z19vY2xfdmVyaWZ5X3RlbXBvcmFyeSh2Z19vY2xfY29udGV4dF90ICp2 b2NwLCBpbnQgc2xvdCwgaW50IHpfaW52ZXJ0ZWQpCi0gCXVuc2lnbmVkIGNoYXIgKm9jbF9wb2lu dHNfaW4gPSBOVUxMLCAqb2NsX3N0cmlkZXNfaW4gPSBOVUxMOwotIAljb25zdCBFQ19HUk9VUCAq cGdyb3VwOwotIAlFQ19QT0lOVCAqcHByID0gTlVMTCwgKnBwYyA9IE5VTEwsICpwcHMgPSBOVUxM LCAqcHB0ID0gTlVMTDsKLS0JQklHTlVNIGJueiwgYm5leiwgYm5tLCAqYm56YzsKLSsJQklHTlVN ICpibnosICpibmV6LCAqYm5tLCAqYm56YzsKLSAJQk5fQ1RYICpibmN0eCA9IE5VTEw7Ci0gCUJO X01PTlRfQ1RYICpibm1vbnQ7Ci0gCWludCByZXQgPSAwOwotQEAgLTE2NzUsOSArMTcxNyw5IEBA IHZnX29jbF92ZXJpZnlfdGVtcG9yYXJ5KHZnX29jbF9jb250ZXh0X3QgKnZvY3AsIGludCBzbG90 LCBpbnQgel9pbnZlcnRlZCkKLSAJCTB4RkYsMHhGRiwweEZGLDB4RkUsMHhGRiwweEZGLDB4RkMs MHgyRgotIAl9OwotIAotLQlCTl9pbml0KCZibnopOwotLQlCTl9pbml0KCZibmV6KTsKLS0JQk5f aW5pdCgmYm5tKTsKLSsJYm56ID0gQk5fbmV3KCk7Ci0rCWJuZXogPSBCTl9uZXcoKTsKLSsJYm5t ID0gQk5fbmV3KCk7Ci0gCi0gCWJuY3R4ID0gQk5fQ1RYX25ldygpOwotIAlibm1vbnQgPSBCTl9N T05UX0NUWF9uZXcoKTsKLUBAIC0xNjkyLDEzICsxNzM0LDEzIEBAIHZnX29jbF92ZXJpZnlfdGVt cG9yYXJ5KHZnX29jbF9jb250ZXh0X3QgKnZvY3AsIGludCBzbG90LCBpbnQgel9pbnZlcnRlZCkK LSAJCWdvdG8gb3V0OwotIAl9Ci0gCi0tCUJOX2JpbjJibihyYXdfbW9kdWx1cywgc2l6ZW9mKHJh d19tb2R1bHVzKSwgJmJubSk7Ci0tCUJOX01PTlRfQ1RYX3NldChibm1vbnQsICZibm0sIGJuY3R4 KTsKLSsJQk5fYmluMmJuKHJhd19tb2R1bHVzLCBzaXplb2YocmF3X21vZHVsdXMpLCBibm0pOwot KwlCTl9NT05UX0NUWF9zZXQoYm5tb250LCBibm0sIGJuY3R4KTsKLSAKLSAJaWYgKHpfaW52ZXJ0 ZWQpIHsKLS0JCWJuemMgPSAmYm5lejsKLSsJCWJuemMgPSBibmV6OwotIAl9IGVsc2UgewotLQkJ Ym56YyA9ICZwcHMtPlo7Ci0rCQlibnpjID0gUFBTX0FSUk9XX1o7Ci0gCX0KLSAKLSAJel9oZWFw ID0gKHVuc2lnbmVkIGNoYXIgKikKLUBAIC0xNzI2LDE1ICsxNzY4LDE1IEBAIHZnX29jbF92ZXJp ZnlfdGVtcG9yYXJ5KHZnX29jbF9jb250ZXh0X3QgKnZvY3AsIGludCBzbG90LCBpbnQgel9pbnZl cnRlZCkKLSAJCQlFQ19QT0lOVF9hZGQocGdyb3VwLCBwcHMsIHBwYywgcHByLCBibmN0eCk7Ci0g CQkJYXNzZXJ0KCFwcHMtPlpfaXNfb25lKTsKLSAJCQl2Z19vY2xfZ2V0X3BvaW50X3RwYShwcHQs IHBvaW50X3RtcCwgYnggKyB4KTsKLS0JCQl2Z19vY2xfZ2V0X2JpZ251bV90cGEoJmJueiwgel9o ZWFwLCBieCArIHgpOwotKwkJCXZnX29jbF9nZXRfYmlnbnVtX3RwYShibnosIHpfaGVhcCwgYngg KyB4KTsKLSAJCQlpZiAoel9pbnZlcnRlZCkgewotLQkJCQlCTl9tb2RfaW52ZXJzZSgmYm5leiwg JnBwcy0+WiwgJmJubSwgYm5jdHgpOwotLQkJCQlCTl90b19tb250Z29tZXJ5KCZibmV6LCAmYm5l eiwgYm5tb250LCBibmN0eCk7Ci0tCQkJCUJOX3RvX21vbnRnb21lcnkoJmJuZXosICZibmV6LCBi bm1vbnQsIGJuY3R4KTsKLSsJCQkJQk5fbW9kX2ludmVyc2UoYm5leiwgUFBTX0FSUk9XX1osIGJu bSwgYm5jdHgpOwotKwkJCQlCTl90b19tb250Z29tZXJ5KGJuZXosIGJuZXosIGJubW9udCwgYm5j dHgpOwotKwkJCQlCTl90b19tb250Z29tZXJ5KGJuZXosIGJuZXosIGJubW9udCwgYm5jdHgpOwot IAkJCX0KLS0JCQlpZiAoQk5fY21wKCZwcHQtPlgsICZwcHMtPlgpIHx8Ci0tCQkJICAgIEJOX2Nt cCgmcHB0LT5ZLCAmcHBzLT5ZKSB8fAotLQkJCSAgICBCTl9jbXAoJmJueiwgYm56YykpIHsKLSsJ CQlpZiAoQk5fY21wKFBQVF9BUlJPV19YLCBQUFNfQVJST1dfWCkgfHwKLSsJCQkgICAgQk5fY21w KFBQVF9BUlJPV19ZLCBQUFNfQVJST1dfWSkgfHwKLSsJCQkgICAgQk5fY21wKGJueiwgYm56Yykp IHsKLSAJCQkJaWYgKCFtaXNtYXRjaGVzKSB7Ci0gCQkJCQlmcHJpbnRmKHN0ZGVyciwgIkJhc2Ug cHJpdmtleTogIik7Ci0gCQkJCQlmZHVtcGJuKHN0ZGVyciwgRUNfS0VZX2dldDBfcHJpdmF0ZV9r ZXkoCi1AQCAtMTc0NywzMyArMTc4OSwzMyBAQCB2Z19vY2xfdmVyaWZ5X3RlbXBvcmFyeSh2Z19v Y2xfY29udGV4dF90ICp2b2NwLCBpbnQgc2xvdCwgaW50IHpfaW52ZXJ0ZWQpCi0gCQkJCWlmICgh bW1fcikgewotIAkJCQkJbW1fciA9IDE7Ci0gCQkJCQlmcHJpbnRmKHN0ZGVyciwgIlJvdyBYICAg OiAiKTsKLS0JCQkJCWZkdW1wYm4oc3RkZXJyLCAmcHByLT5YKTsKLSsJCQkJCWZkdW1wYm4oc3Rk ZXJyLCBQUFJfQVJST1dfWCk7Ci0gCQkJCQlmcHJpbnRmKHN0ZGVyciwgIlJvdyBZICAgOiAiKTsK LS0JCQkJCWZkdW1wYm4oc3RkZXJyLCAmcHByLT5ZKTsKLSsJCQkJCWZkdW1wYm4oc3RkZXJyLCBQ UFNfQVJST1dfWSk7Ci0gCQkJCX0KLSAKLSAJCQkJZnByaW50ZihzdGRlcnIsICJDb2x1bW4gWDog Iik7Ci0tCQkJCWZkdW1wYm4oc3RkZXJyLCAmcHBjLT5YKTsKLSsJCQkJZmR1bXBibihzdGRlcnIs IFBQQ19BUlJPV19YKTsKLSAJCQkJZnByaW50ZihzdGRlcnIsICJDb2x1bW4gWTogIik7Ci0tCQkJ CWZkdW1wYm4oc3RkZXJyLCAmcHBjLT5ZKTsKLSsJCQkJZmR1bXBibihzdGRlcnIsIFBQQ19BUlJP V19ZKTsKLSAKLS0JCQkJaWYgKEJOX2NtcCgmcHB0LT5YLCAmcHBzLT5YKSkgewotKwkJCQlpZiAo Qk5fY21wKFBQVF9BUlJPV19YLCBQUFNfQVJST1dfWCkpIHsKLSAJCQkJCWZwcmludGYoc3RkZXJy LCAiRXhwZWN0IFg6ICIpOwotLQkJCQkJZmR1bXBibihzdGRlcnIsICZwcHMtPlgpOwotKwkJCQkJ ZmR1bXBibihzdGRlcnIsIFBQU19BUlJPV19YKTsKLSAJCQkJCWZwcmludGYoc3RkZXJyLCAiRGV2 aWNlIFg6ICIpOwotLQkJCQkJZmR1bXBibihzdGRlcnIsICZwcHQtPlgpOwotKwkJCQkJZmR1bXBi bihzdGRlcnIsIFBQVF9BUlJPV19YKTsKLSAJCQkJfQotLQkJCQlpZiAoQk5fY21wKCZwcHQtPlks ICZwcHMtPlkpKSB7Ci0rCQkJCWlmIChCTl9jbXAoUFBUX0FSUk9XX1ksIFBQU19BUlJPV19ZKSkg ewotIAkJCQkJZnByaW50ZihzdGRlcnIsICJFeHBlY3QgWTogIik7Ci0tCQkJCQlmZHVtcGJuKHN0 ZGVyciwgJnBwcy0+WSk7Ci0rCQkJCQlmZHVtcGJuKHN0ZGVyciwgUFBTX0FSUk9XX1kpOwotIAkJ CQkJZnByaW50ZihzdGRlcnIsICJEZXZpY2UgWTogIik7Ci0tCQkJCQlmZHVtcGJuKHN0ZGVyciwg JnBwdC0+WSk7Ci0rCQkJCQlmZHVtcGJuKHN0ZGVyciwgUFBUX0FSUk9XX1kpOwotIAkJCQl9Ci0t CQkJCWlmIChCTl9jbXAoJmJueiwgYm56YykpIHsKLSsJCQkJaWYgKEJOX2NtcChibnosIGJuemMp KSB7Ci0gCQkJCQlmcHJpbnRmKHN0ZGVyciwgIkV4cGVjdCBaOiAiKTsKLSAJCQkJCWZkdW1wYm4o c3RkZXJyLCBibnpjKTsKLSAJCQkJCWZwcmludGYoc3RkZXJyLCAiRGV2aWNlIFo6ICIpOwotLQkJ CQkJZmR1bXBibihzdGRlcnIsICZibnopOwotKwkJCQkJZmR1bXBibihzdGRlcnIsIGJueik7Ci0g CQkJCX0KLSAJCQl9Ci0gCQl9Ci1AQCAtMTc5OCw5ICsxODQwLDkgQEAgdmdfb2NsX3ZlcmlmeV90 ZW1wb3Jhcnkodmdfb2NsX2NvbnRleHRfdCAqdm9jcCwgaW50IHNsb3QsIGludCB6X2ludmVydGVk KQotIAkJRUNfUE9JTlRfZnJlZShwcHMpOwotIAlpZiAocHB0KQotIAkJRUNfUE9JTlRfZnJlZShw cHQpOwotLQlCTl9jbGVhcl9mcmVlKCZibnopOwotLQlCTl9jbGVhcl9mcmVlKCZibmV6KTsKLS0J Qk5fY2xlYXJfZnJlZSgmYm5tKTsKLSsJQk5fY2xlYXJfZnJlZShibnopOwotKwlCTl9jbGVhcl9m cmVlKGJuZXopOwotKwlCTl9jbGVhcl9mcmVlKGJubSk7Ci0gCWlmIChibm1vbnQpCi0gCQlCTl9N T05UX0NUWF9mcmVlKGJubW9udCk7Ci0gCWlmIChibmN0eCkKLUBAIC0xOTcxLDEzICsyMDEzLDEz IEBAIHZnX29wZW5jbF9sb29wKHZnX2V4ZWNfY29udGV4dF90ICphcmcpCi0gCWlmICghcGJhdGNo aW5jIHx8ICFwb2Zmc2V0IHx8ICFwc2VlaykKLSAJCWdvdG8gZW5vbWVtOwotIAotLQlCTl9zZXRf d29yZCgmdnhjcC0+dnhjX2JudG1wLCBuY29scyk7Ci0tCUVDX1BPSU5UX211bChwZ3JvdXAsIHBi YXRjaGluYywgJnZ4Y3AtPnZ4Y19ibnRtcCwgTlVMTCwgTlVMTCwKLSsJQk5fc2V0X3dvcmQodnhj cC0+dnhjX2JudG1wLCBuY29scyk7Ci0rCUVDX1BPSU5UX211bChwZ3JvdXAsIHBiYXRjaGluYywg dnhjcC0+dnhjX2JudG1wLCBOVUxMLCBOVUxMLAotIAkJICAgICB2eGNwLT52eGNfYm5jdHgpOwot IAlFQ19QT0lOVF9tYWtlX2FmZmluZShwZ3JvdXAsIHBiYXRjaGluYywgdnhjcC0+dnhjX2JuY3R4 KTsKLSAKLS0JQk5fc2V0X3dvcmQoJnZ4Y3AtPnZ4Y19ibnRtcCwgcm91bmQpOwotLQlFQ19QT0lO VF9tdWwocGdyb3VwLCBwb2Zmc2V0LCAmdnhjcC0+dnhjX2JudG1wLCBOVUxMLCBOVUxMLAotKwlC Tl9zZXRfd29yZCh2eGNwLT52eGNfYm50bXAsIHJvdW5kKTsKLSsJRUNfUE9JTlRfbXVsKHBncm91 cCwgcG9mZnNldCwgdnhjcC0+dnhjX2JudG1wLCBOVUxMLCBOVUxMLAotIAkJICAgICB2eGNwLT52 eGNfYm5jdHgpOwotIAlFQ19QT0lOVF9tYWtlX2FmZmluZShwZ3JvdXAsIHBvZmZzZXQsIHZ4Y3At PnZ4Y19ibmN0eCk7Ci0gCi1AQCAtMjA0NiwxMiArMjA4OCwxMiBAQCB2Z19vcGVuY2xfbG9vcCh2 Z19leGVjX2NvbnRleHRfdCAqYXJnKQotIAl9Ci0gCi0gCS8qIERldGVybWluZSByZWtleSBpbnRl cnZhbCAqLwotLQlFQ19HUk9VUF9nZXRfb3JkZXIocGdyb3VwLCAmdnhjcC0+dnhjX2JudG1wLCB2 eGNwLT52eGNfYm5jdHgpOwotLQlCTl9zdWIoJnZ4Y3AtPnZ4Y19ibnRtcDIsCi0tCSAgICAgICAm dnhjcC0+dnhjX2JudG1wLAotKwlFQ19HUk9VUF9nZXRfb3JkZXIocGdyb3VwLCB2eGNwLT52eGNf Ym50bXAsIHZ4Y3AtPnZ4Y19ibmN0eCk7Ci0rCUJOX3N1Yih2eGNwLT52eGNfYm50bXAyLAotKwkg ICAgICAgdnhjcC0+dnhjX2JudG1wLAotIAkgICAgICAgRUNfS0VZX2dldDBfcHJpdmF0ZV9rZXko cGtleSkpOwotLQlyZWtleV9hdCA9IEJOX2dldF93b3JkKCZ2eGNwLT52eGNfYm50bXAyKTsKLS0J aWYgKChyZWtleV9hdCA9PSBCTl9NQVNLMikgfHwgKHJla2V5X2F0ID4gcmVrZXlfbWF4KSkKLSsJ cmVrZXlfYXQgPSBCTl9nZXRfd29yZCh2eGNwLT52eGNfYm50bXAyKTsKLSsJaWYgKChyZWtleV9h dCA9PSAweGZmZmZmZmZmTCkgfHwgKHJla2V5X2F0ID4gcmVrZXlfbWF4KSkKLSAJCXJla2V5X2F0 ID0gcmVrZXlfbWF4OwotIAlhc3NlcnQocmVrZXlfYXQgPiAwKTsKLSAKLWRpZmYgLS1naXQgYS9w YXR0ZXJuLmMgYi9wYXR0ZXJuLmMKLWluZGV4IGI4NDMzNGUuLjU2NzNhN2UgMTAwNjQ0Ci0tLS0g YS9wYXR0ZXJuLmMKLSsrKyBiL3BhdHRlcm4uYwotQEAgLTE1MSwxMiArMTUxLDEyIEBAIHZnX2V4 ZWNfY29udGV4dF9pbml0KHZnX2NvbnRleHRfdCAqdmNwLCB2Z19leGVjX2NvbnRleHRfdCAqdnhj cCkKLSAKLSAJdnhjcC0+dnhjX3ZjID0gdmNwOwotIAotLQlCTl9pbml0KCZ2eGNwLT52eGNfYm50 YXJnKTsKLS0JQk5faW5pdCgmdnhjcC0+dnhjX2JuYmFzZSk7Ci0tCUJOX2luaXQoJnZ4Y3AtPnZ4 Y19ibnRtcCk7Ci0tCUJOX2luaXQoJnZ4Y3AtPnZ4Y19ibnRtcDIpOwotKwl2eGNwLT52eGNfYm50 YXJnID0gQk5fbmV3KCk7Ci0rCXZ4Y3AtPnZ4Y19ibmJhc2UgPSBCTl9uZXcoKTsKLSsJdnhjcC0+ dnhjX2JudG1wID0gQk5fbmV3KCk7Ci0rCXZ4Y3AtPnZ4Y19ibnRtcDIgPSBCTl9uZXcoKTsKLSAK LS0JQk5fc2V0X3dvcmQoJnZ4Y3AtPnZ4Y19ibmJhc2UsIDU4KTsKLSsJQk5fc2V0X3dvcmQodnhj cC0+dnhjX2JuYmFzZSwgNTgpOwotIAotIAl2eGNwLT52eGNfYm5jdHggPSBCTl9DVFhfbmV3KCk7 Ci0gCWFzc2VydCh2eGNwLT52eGNfYm5jdHgpOwotQEAgLTE5NiwxMCArMTk2LDEwIEBAIHZnX2V4 ZWNfY29udGV4dF9kZWwodmdfZXhlY19jb250ZXh0X3QgKnZ4Y3ApCi0gCWlmICh0cC0+dnhjX3N0 b3ApCi0gCQlwdGhyZWFkX2NvbmRfc2lnbmFsKCZ2Z190aHJlYWRfdXBjb25kKTsKLSAKLS0JQk5f Y2xlYXJfZnJlZSgmdnhjcC0+dnhjX2JudGFyZyk7Ci0tCUJOX2NsZWFyX2ZyZWUoJnZ4Y3AtPnZ4 Y19ibmJhc2UpOwotLQlCTl9jbGVhcl9mcmVlKCZ2eGNwLT52eGNfYm50bXApOwotLQlCTl9jbGVh cl9mcmVlKCZ2eGNwLT52eGNfYm50bXAyKTsKLSsJQk5fY2xlYXJfZnJlZSh2eGNwLT52eGNfYm50 YXJnKTsKLSsJQk5fY2xlYXJfZnJlZSh2eGNwLT52eGNfYm5iYXNlKTsKLSsJQk5fY2xlYXJfZnJl ZSh2eGNwLT52eGNfYm50bXApOwotKwlCTl9jbGVhcl9mcmVlKHZ4Y3AtPnZ4Y19ibnRtcDIpOwot IAlCTl9DVFhfZnJlZSh2eGNwLT52eGNfYm5jdHgpOwotIAl2eGNwLT52eGNfYm5jdHggPSBOVUxM OwotIAlwdGhyZWFkX211dGV4X3VubG9jaygmdmdfdGhyZWFkX2xvY2spOwotQEAgLTIyNSwxMiAr MjI1LDEyIEBAIHZvaWQKLSB2Z19leGVjX2NvbnRleHRfY29uc29saWRhdGVfa2V5KHZnX2V4ZWNf Y29udGV4dF90ICp2eGNwKQotIHsKLSAJaWYgKHZ4Y3AtPnZ4Y19kZWx0YSkgewotLQkJQk5fY2xl YXIoJnZ4Y3AtPnZ4Y19ibnRtcCk7Ci0tCQlCTl9zZXRfd29yZCgmdnhjcC0+dnhjX2JudG1wLCB2 eGNwLT52eGNfZGVsdGEpOwotLQkJQk5fYWRkKCZ2eGNwLT52eGNfYm50bXAyLAotKwkJQk5fY2xl YXIodnhjcC0+dnhjX2JudG1wKTsKLSsJCUJOX3NldF93b3JkKHZ4Y3AtPnZ4Y19ibnRtcCwgdnhj cC0+dnhjX2RlbHRhKTsKLSsJCUJOX2FkZCh2eGNwLT52eGNfYm50bXAyLAotIAkJICAgICAgIEVD X0tFWV9nZXQwX3ByaXZhdGVfa2V5KHZ4Y3AtPnZ4Y19rZXkpLAotLQkJICAgICAgICZ2eGNwLT52 eGNfYm50bXApOwotLQkJdmdfc2V0X3ByaXZrZXkoJnZ4Y3AtPnZ4Y19ibnRtcDIsIHZ4Y3AtPnZ4 Y19rZXkpOwotKwkJICAgICAgIHZ4Y3AtPnZ4Y19ibnRtcCk7Ci0rCQl2Z19zZXRfcHJpdmtleSh2 eGNwLT52eGNfYm50bXAyLCB2eGNwLT52eGNfa2V5KTsKLSAJCXZ4Y3AtPnZ4Y19kZWx0YSA9IDA7 Ci0gCX0KLSB9Ci1AQCAtNzUxLDIwICs3NTEsMjAgQEAgZ2V0X3ByZWZpeF9yYW5nZXMoaW50IGFk ZHJ0eXBlLCBjb25zdCBjaGFyICpwZngsIEJJR05VTSAqKnJlc3VsdCwKLSAJaW50IGI1OHBvdywg YjU4Y2VpbCwgYjU4dG9wID0gMDsKLSAJaW50IHJldCA9IC0xOwotIAotLQlCSUdOVU0gYm50YXJn LCBibmNlaWwsIGJuZmxvb3I7Ci0tCUJJR05VTSBibmJhc2U7Ci0rCUJJR05VTSAqYm50YXJnLCAq Ym5jZWlsLCAqYm5mbG9vcjsKLSsJQklHTlVNICpibmJhc2U7Ci0gCUJJR05VTSAqYm5hcCwgKmJu YnAsICpibnRwOwotIAlCSUdOVU0gKmJuaGlnaCA9IE5VTEwsICpibmxvdyA9IE5VTEwsICpibmhp Z2gyID0gTlVMTCwgKmJubG93MiA9IE5VTEw7Ci0tCUJJR05VTSBibnRtcCwgYm50bXAyOwotKwlC SUdOVU0gKmJudG1wLCAqYm50bXAyOwotIAotLQlCTl9pbml0KCZibnRhcmcpOwotLQlCTl9pbml0 KCZibmNlaWwpOwotLQlCTl9pbml0KCZibmZsb29yKTsKLS0JQk5faW5pdCgmYm5iYXNlKTsKLS0J Qk5faW5pdCgmYm50bXApOwotLQlCTl9pbml0KCZibnRtcDIpOwotKwlibnRhcmcgPSBCTl9uZXco KTsKLSsJYm5jZWlsID0gQk5fbmV3KCk7Ci0rCWJuZmxvb3IgPSBCTl9uZXcoKTsKLSsJYm5iYXNl ID0gQk5fbmV3KCk7Ci0rCWJudG1wID0gQk5fbmV3KCk7Ci0rCWJudG1wMiA9IEJOX25ldygpOwot IAotLQlCTl9zZXRfd29yZCgmYm5iYXNlLCA1OCk7Ci0rCUJOX3NldF93b3JkKGJuYmFzZSwgNTgp OwotIAotIAlwID0gc3RybGVuKHBmeCk7Ci0gCi1AQCAtNzkxLDIwICs3OTEsMjAgQEAgZ2V0X3By ZWZpeF9yYW5nZXMoaW50IGFkZHJ0eXBlLCBjb25zdCBjaGFyICpwZngsIEJJR05VTSAqKnJlc3Vs dCwKLSAKLSAJCQkvKiBGaXJzdCBub24temVybyBjaGFyYWN0ZXIgKi8KLSAJCQliNTh0b3AgPSBj OwotLQkJCUJOX3NldF93b3JkKCZibnRhcmcsIGMpOwotKwkJCUJOX3NldF93b3JkKGJudGFyZywg Yyk7Ci0gCi0gCQl9IGVsc2UgewotLQkJCUJOX3NldF93b3JkKCZibnRtcDIsIGMpOwotLQkJCUJO X211bCgmYm50bXAsICZibnRhcmcsICZibmJhc2UsIGJuY3R4KTsKLS0JCQlCTl9hZGQoJmJudGFy ZywgJmJudG1wLCAmYm50bXAyKTsKLSsJCQlCTl9zZXRfd29yZChibnRtcDIsIGMpOwotKwkJCUJO X211bChibnRtcCwgYm50YXJnLCBibmJhc2UsIGJuY3R4KTsKLSsJCQlCTl9hZGQoYm50YXJnLCBi bnRtcCwgYm50bXAyKTsKLSAJCX0KLSAJfQotIAotIAkvKiBQb3dlci1vZi10d28gY2VpbGluZyBh bmQgZmxvb3IgdmFsdWVzIGJhc2VkIG9uIGxlYWRpbmcgMXMgKi8KLS0JQk5fY2xlYXIoJmJudG1w KTsKLS0JQk5fc2V0X2JpdCgmYm50bXAsIDIwMCAtICh6ZXJvX3ByZWZpeCAqIDgpKTsKLS0JQk5f c3ViKCZibmNlaWwsICZibnRtcCwgQk5fdmFsdWVfb25lKCkpOwotLQlCTl9zZXRfYml0KCZibmZs b29yLCAxOTIgLSAoemVyb19wcmVmaXggKiA4KSk7Ci0rCUJOX2NsZWFyKGJudG1wKTsKLSsJQk5f c2V0X2JpdChibnRtcCwgMjAwIC0gKHplcm9fcHJlZml4ICogOCkpOwotKwlCTl9zdWIoYm5jZWls LCBibnRtcCwgQk5fdmFsdWVfb25lKCkpOwotKwlCTl9zZXRfYml0KGJuZmxvb3IsIDE5MiAtICh6 ZXJvX3ByZWZpeCAqIDgpKTsKLSAKLSAJYm5sb3cgPSBCTl9uZXcoKTsKLSAJYm5oaWdoID0gQk5f bmV3KCk7Ci1AQCAtODE1LDEzICs4MTUsMTMgQEAgZ2V0X3ByZWZpeF9yYW5nZXMoaW50IGFkZHJ0 eXBlLCBjb25zdCBjaGFyICpwZngsIEJJR05VTSAqKnJlc3VsdCwKLSAJCSAqIG51bWVyaWMgYm91 bmRhcmllcyBvZiB0aGUgcHJlZml4LgotIAkJICovCi0gCi0tCQlCTl9jb3B5KCZibnRtcCwgJmJu Y2VpbCk7Ci0tCQlibmFwID0gJmJudG1wOwotLQkJYm5icCA9ICZibnRtcDI7Ci0rCQlCTl9jb3B5 KGJudG1wLCBibmNlaWwpOwotKwkJYm5hcCA9IGJudG1wOwotKwkJYm5icCA9IGJudG1wMjsKLSAJ CWI1OHBvdyA9IDA7Ci0tCQl3aGlsZSAoQk5fY21wKGJuYXAsICZibmJhc2UpID4gMCkgewotKwkJ d2hpbGUgKEJOX2NtcChibmFwLCBibmJhc2UpID4gMCkgewotIAkJCWI1OHBvdysrOwotLQkJCUJO X2RpdihibmJwLCBOVUxMLCBibmFwLCAmYm5iYXNlLCBibmN0eCk7Ci0rCQkJQk5fZGl2KGJuYnAs IE5VTEwsIGJuYXAsIGJuYmFzZSwgYm5jdHgpOwotIAkJCWJudHAgPSBibmFwOwotIAkJCWJuYXAg PSBibmJwOwotIAkJCWJuYnAgPSBibnRwOwotQEAgLTgzNywxMSArODM3LDExIEBAIGdldF9wcmVm aXhfcmFuZ2VzKGludCBhZGRydHlwZSwgY29uc3QgY2hhciAqcGZ4LCBCSUdOVU0gKipyZXN1bHQs Ci0gCQkJLyogZ290byBvdXQ7ICovCi0gCQl9Ci0gCi0tCQlCTl9zZXRfd29yZCgmYm50bXAyLCBi NThwb3cgLSAocCAtIHplcm9fcHJlZml4KSk7Ci0tCQlCTl9leHAoJmJudG1wLCAmYm5iYXNlLCAm Ym50bXAyLCBibmN0eCk7Ci0tCQlCTl9tdWwoYm5sb3csICZibnRtcCwgJmJudGFyZywgYm5jdHgp OwotLQkJQk5fc3ViKCZibnRtcDIsICZibnRtcCwgQk5fdmFsdWVfb25lKCkpOwotLQkJQk5fYWRk KGJuaGlnaCwgYm5sb3csICZibnRtcDIpOwotKwkJQk5fc2V0X3dvcmQoYm50bXAyLCBiNThwb3cg LSAocCAtIHplcm9fcHJlZml4KSk7Ci0rCQlCTl9leHAoYm50bXAsIGJuYmFzZSwgYm50bXAyLCBi bmN0eCk7Ci0rCQlCTl9tdWwoYm5sb3csIGJudG1wLCBibnRhcmcsIGJuY3R4KTsKLSsJCUJOX3N1 YihibnRtcDIsIGJudG1wLCBCTl92YWx1ZV9vbmUoKSk7Ci0rCQlCTl9hZGQoYm5oaWdoLCBibmxv dywgYm50bXAyKTsKLSAKLSAJCWlmIChiNTh0b3AgPD0gYjU4Y2VpbCkgewotIAkJCS8qIEZpbGwg b3V0IHRoZSB1cHBlciByYW5nZSB0b28gKi8KLUBAIC04NDksMTYgKzg0OSwxNiBAQCBnZXRfcHJl Zml4X3JhbmdlcyhpbnQgYWRkcnR5cGUsIGNvbnN0IGNoYXIgKnBmeCwgQklHTlVNICoqcmVzdWx0 LAotIAkJCWJubG93MiA9IEJOX25ldygpOwotIAkJCWJuaGlnaDIgPSBCTl9uZXcoKTsKLSAKLS0J CQlCTl9tdWwoYm5sb3cyLCBibmxvdywgJmJuYmFzZSwgYm5jdHgpOwotLQkJCUJOX211bCgmYm50 bXAyLCBibmhpZ2gsICZibmJhc2UsIGJuY3R4KTsKLS0JCQlCTl9zZXRfd29yZCgmYm50bXAsIDU3 KTsKLS0JCQlCTl9hZGQoYm5oaWdoMiwgJmJudG1wMiwgJmJudG1wKTsKLSsJCQlCTl9tdWwoYm5s b3cyLCBibmxvdywgYm5iYXNlLCBibmN0eCk7Ci0rCQkJQk5fbXVsKGJudG1wMiwgYm5oaWdoLCBi bmJhc2UsIGJuY3R4KTsKLSsJCQlCTl9zZXRfd29yZChibnRtcCwgNTcpOwotKwkJCUJOX2FkZChi bmhpZ2gyLCBibnRtcDIsIGJudG1wKTsKLSAKLSAJCQkvKgotIAkJCSAqIEFkZHJlc3NlcyBhYm92 ZSB0aGUgY2VpbGluZyB3aWxsIGhhdmUgb25lCi0gCQkJICogZmV3ZXIgIjEiIHByZWZpeCBpbiBm cm9udCB0aGFuIHdlIHJlcXVpcmUuCi0gCQkJICovCi0tCQkJaWYgKEJOX2NtcCgmYm5jZWlsLCBi bmxvdzIpIDwgMCkgewotKwkJCWlmIChCTl9jbXAoYm5jZWlsLCBibmxvdzIpIDwgMCkgewotIAkJ CQkvKiBIaWdoIHByZWZpeCBpcyBhYm92ZSB0aGUgY2VpbGluZyAqLwotIAkJCQljaGVja191cHBl ciA9IDA7Ci0gCQkJCUJOX2ZyZWUoYm5oaWdoMik7Ci1AQCAtODY2LDE1ICs4NjYsMTUgQEAgZ2V0 X3ByZWZpeF9yYW5nZXMoaW50IGFkZHJ0eXBlLCBjb25zdCBjaGFyICpwZngsIEJJR05VTSAqKnJl c3VsdCwKLSAJCQkJQk5fZnJlZShibmxvdzIpOwotIAkJCQlibmxvdzIgPSBOVUxMOwotIAkJCX0K LS0JCQllbHNlIGlmIChCTl9jbXAoJmJuY2VpbCwgYm5oaWdoMikgPCAwKQotKwkJCWVsc2UgaWYg KEJOX2NtcChibmNlaWwsIGJuaGlnaDIpIDwgMCkKLSAJCQkJLyogSGlnaCBwcmVmaXggaXMgcGFy dGx5IGFib3ZlIHRoZSBjZWlsaW5nICovCi0tCQkJCUJOX2NvcHkoYm5oaWdoMiwgJmJuY2VpbCk7 Ci0rCQkJCUJOX2NvcHkoYm5oaWdoMiwgYm5jZWlsKTsKLSAKLSAJCQkvKgotIAkJCSAqIEFkZHJl c3NlcyBiZWxvdyB0aGUgZmxvb3Igd2lsbCBoYXZlIGFub3RoZXIKLSAJCQkgKiAiMSIgcHJlZml4 IGluIGZyb250IGluc3RlYWQgb2Ygb3VyIHRhcmdldC4KLSAJCQkgKi8KLS0JCQlpZiAoQk5fY21w KCZibmZsb29yLCBibmhpZ2gpID49IDApIHsKLSsJCQlpZiAoQk5fY21wKGJuZmxvb3IsIGJuaGln aCkgPj0gMCkgewotIAkJCQkvKiBMb3cgcHJlZml4IGlzIGNvbXBsZXRlbHkgYmVsb3cgdGhlIGZs b29yICovCi0gCQkJCWFzc2VydChjaGVja191cHBlcik7Ci0gCQkJCWNoZWNrX3VwcGVyID0gMDsK LUBAIC04ODUsMzUgKzg4NSwzNSBAQCBnZXRfcHJlZml4X3JhbmdlcyhpbnQgYWRkcnR5cGUsIGNv bnN0IGNoYXIgKnBmeCwgQklHTlVNICoqcmVzdWx0LAotIAkJCQlibmxvdyA9IGJubG93MjsKLSAJ CQkJYm5sb3cyID0gTlVMTDsKLSAJCQl9CQkJCi0tCQkJZWxzZSBpZiAoQk5fY21wKCZibmZsb29y LCBibmxvdykgPiAwKSB7Ci0rCQkJZWxzZSBpZiAoQk5fY21wKGJuZmxvb3IsIGJubG93KSA+IDAp IHsKLSAJCQkJLyogTG93IHByZWZpeCBpcyBwYXJ0bHkgYmVsb3cgdGhlIGZsb29yICovCi0tCQkJ CUJOX2NvcHkoYm5sb3csICZibmZsb29yKTsKLSsJCQkJQk5fY29weShibmxvdywgYm5mbG9vcik7 Ci0gCQkJfQotIAkJfQotIAotIAl9IGVsc2UgewotLQkJQk5fY29weShibmhpZ2gsICZibmNlaWwp OwotKwkJQk5fY29weShibmhpZ2gsIGJuY2VpbCk7Ci0gCQlCTl9jbGVhcihibmxvdyk7Ci0gCX0K LSAKLSAJLyogTGltaXQgdGhlIHByZWZpeCB0byB0aGUgYWRkcmVzcyB0eXBlICovCi0tCUJOX2Ns ZWFyKCZibnRtcCk7Ci0tCUJOX3NldF93b3JkKCZibnRtcCwgYWRkcnR5cGUpOwotLQlCTl9sc2hp ZnQoJmJudG1wMiwgJmJudG1wLCAxOTIpOwotKwlCTl9jbGVhcihibnRtcCk7Ci0rCUJOX3NldF93 b3JkKGJudG1wLCBhZGRydHlwZSk7Ci0rCUJOX2xzaGlmdChibnRtcDIsIGJudG1wLCAxOTIpOwot IAotIAlpZiAoY2hlY2tfdXBwZXIpIHsKLS0JCWlmIChCTl9jbXAoJmJudG1wMiwgYm5oaWdoMikg PiAwKSB7Ci0rCQlpZiAoQk5fY21wKGJudG1wMiwgYm5oaWdoMikgPiAwKSB7Ci0gCQkJY2hlY2tf dXBwZXIgPSAwOwotIAkJCUJOX2ZyZWUoYm5oaWdoMik7Ci0gCQkJYm5oaWdoMiA9IE5VTEw7Ci0g CQkJQk5fZnJlZShibmxvdzIpOwotIAkJCWJubG93MiA9IE5VTEw7Ci0gCQl9Ci0tCQllbHNlIGlm IChCTl9jbXAoJmJudG1wMiwgYm5sb3cyKSA+IDApCi0tCQkJQk5fY29weShibmxvdzIsICZibnRt cDIpOwotKwkJZWxzZSBpZiAoQk5fY21wKGJudG1wMiwgYm5sb3cyKSA+IDApCi0rCQkJQk5fY29w eShibmxvdzIsIGJudG1wMik7Ci0gCX0KLSAKLS0JaWYgKEJOX2NtcCgmYm50bXAyLCBibmhpZ2gp ID4gMCkgewotKwlpZiAoQk5fY21wKGJudG1wMiwgYm5oaWdoKSA+IDApIHsKLSAJCWlmICghY2hl Y2tfdXBwZXIpCi0gCQkJZ290byBub3RfcG9zc2libGU7Ci0gCQljaGVja191cHBlciA9IDA7Ci1A QCAtOTI0LDI2ICs5MjQsMjYgQEAgZ2V0X3ByZWZpeF9yYW5nZXMoaW50IGFkZHJ0eXBlLCBjb25z dCBjaGFyICpwZngsIEJJR05VTSAqKnJlc3VsdCwKLSAJCWJubG93ID0gYm5sb3cyOwotIAkJYm5s b3cyID0gTlVMTDsKLSAJfQotLQllbHNlIGlmIChCTl9jbXAoJmJudG1wMiwgYm5sb3cpID4gMCkg ewotLQkJQk5fY29weShibmxvdywgJmJudG1wMik7Ci0rCWVsc2UgaWYgKEJOX2NtcChibnRtcDIs IGJubG93KSA+IDApIHsKLSsJCUJOX2NvcHkoYm5sb3csIGJudG1wMik7Ci0gCX0KLSAKLS0JQk5f c2V0X3dvcmQoJmJudG1wLCBhZGRydHlwZSArIDEpOwotLQlCTl9sc2hpZnQoJmJudG1wMiwgJmJu dG1wLCAxOTIpOwotKwlCTl9zZXRfd29yZChibnRtcCwgYWRkcnR5cGUgKyAxKTsKLSsJQk5fbHNo aWZ0KGJudG1wMiwgYm50bXAsIDE5Mik7Ci0gCi0gCWlmIChjaGVja191cHBlcikgewotLQkJaWYg KEJOX2NtcCgmYm50bXAyLCBibmxvdzIpIDwgMCkgewotKwkJaWYgKEJOX2NtcChibnRtcDIsIGJu bG93MikgPCAwKSB7Ci0gCQkJY2hlY2tfdXBwZXIgPSAwOwotIAkJCUJOX2ZyZWUoYm5oaWdoMik7 Ci0gCQkJYm5oaWdoMiA9IE5VTEw7Ci0gCQkJQk5fZnJlZShibmxvdzIpOwotIAkJCWJubG93MiA9 IE5VTEw7Ci0gCQl9Ci0tCQllbHNlIGlmIChCTl9jbXAoJmJudG1wMiwgYm5oaWdoMikgPCAwKQot LQkJCUJOX2NvcHkoYm5sb3cyLCAmYm50bXAyKTsKLSsJCWVsc2UgaWYgKEJOX2NtcChibnRtcDIs IGJuaGlnaDIpIDwgMCkKLSsJCQlCTl9jb3B5KGJubG93MiwgYm50bXAyKTsKLSAJfQotIAotLQlp ZiAoQk5fY21wKCZibnRtcDIsIGJubG93KSA8IDApIHsKLSsJaWYgKEJOX2NtcChibnRtcDIsIGJu bG93KSA8IDApIHsKLSAJCWlmICghY2hlY2tfdXBwZXIpCi0gCQkJZ290byBub3RfcG9zc2libGU7 Ci0gCQljaGVja191cHBlciA9IDA7Ci1AQCAtOTU0LDggKzk1NCw4IEBAIGdldF9wcmVmaXhfcmFu Z2VzKGludCBhZGRydHlwZSwgY29uc3QgY2hhciAqcGZ4LCBCSUdOVU0gKipyZXN1bHQsCi0gCQli bmxvdyA9IGJubG93MjsKLSAJCWJubG93MiA9IE5VTEw7Ci0gCX0KLS0JZWxzZSBpZiAoQk5fY21w KCZibnRtcDIsIGJuaGlnaCkgPCAwKSB7Ci0tCQlCTl9jb3B5KGJuaGlnaCwgJmJudG1wMik7Ci0r CWVsc2UgaWYgKEJOX2NtcChibnRtcDIsIGJuaGlnaCkgPCAwKSB7Ci0rCQlCTl9jb3B5KGJuaGln aCwgYm50bXAyKTsKLSAJfQotIAotIAkvKiBBZGRyZXNzIHJhbmdlcyBhcmUgY29tcGxldGUgKi8K LUBAIC05NzYsMTIgKzk3NiwxMiBAQCBnZXRfcHJlZml4X3JhbmdlcyhpbnQgYWRkcnR5cGUsIGNv bnN0IGNoYXIgKnBmeCwgQklHTlVNICoqcmVzdWx0LAotIAl9Ci0gCi0gb3V0OgotLQlCTl9jbGVh cl9mcmVlKCZibnRhcmcpOwotLQlCTl9jbGVhcl9mcmVlKCZibmNlaWwpOwotLQlCTl9jbGVhcl9m cmVlKCZibmZsb29yKTsKLS0JQk5fY2xlYXJfZnJlZSgmYm5iYXNlKTsKLS0JQk5fY2xlYXJfZnJl ZSgmYm50bXApOwotLQlCTl9jbGVhcl9mcmVlKCZibnRtcDIpOwotKwlCTl9jbGVhcl9mcmVlKGJu dGFyZyk7Ci0rCUJOX2NsZWFyX2ZyZWUoYm5jZWlsKTsKLSsJQk5fY2xlYXJfZnJlZShibmZsb29y KTsKLSsJQk5fY2xlYXJfZnJlZShibmJhc2UpOwotKwlCTl9jbGVhcl9mcmVlKGJudG1wKTsKLSsJ Qk5fY2xlYXJfZnJlZShibnRtcDIpOwotIAlpZiAoYm5oaWdoKQotIAkJQk5fZnJlZShibmhpZ2gp OwotIAlpZiAoYm5sb3cpCi1AQCAtMTI2Niw3ICsxMjY2LDcgQEAgcHJlZml4X2Nhc2VfaXRlcl9u ZXh0KHByZWZpeF9jYXNlX2l0ZXJfdCAqY2lwKQotIHR5cGVkZWYgc3RydWN0IF92Z19wcmVmaXhf Y29udGV4dF9zIHsKLSAJdmdfY29udGV4dF90CQliYXNlOwotIAlhdmxfcm9vdF90CQl2Y3BfYXZs cm9vdDsKLS0JQklHTlVNCQkJdmNwX2RpZmZpY3VsdHk7Ci0rCUJJR05VTQkJCSp2Y3BfZGlmZmlj dWx0eTsKLSAJaW50CQkJdmNwX2Nhc2VpbnNlbnNpdGl2ZTsKLSB9IHZnX3ByZWZpeF9jb250ZXh0 X3Q7Ci0gCi1AQCAtMTI5NCw3ICsxMjk0LDcgQEAgdmdfcHJlZml4X2NvbnRleHRfY2xlYXJfYWxs X3BhdHRlcm5zKHZnX2NvbnRleHRfdCAqdmNwKQotIAl2Y3BwLT5iYXNlLnZjX25wYXR0ZXJucyA9 IDA7Ci0gCXZjcHAtPmJhc2UudmNfbnBhdHRlcm5zX3N0YXJ0ID0gMDsKLSAJdmNwcC0+YmFzZS52 Y19mb3VuZCA9IDA7Ci0tCUJOX2NsZWFyKCZ2Y3BwLT52Y3BfZGlmZmljdWx0eSk7Ci0rCUJOX2Ns ZWFyKHZjcHAtPnZjcF9kaWZmaWN1bHR5KTsKLSB9Ci0gCi0gc3RhdGljIHZvaWQKLUBAIC0xMzAy LDcgKzEzMDIsNyBAQCB2Z19wcmVmaXhfY29udGV4dF9mcmVlKHZnX2NvbnRleHRfdCAqdmNwKQot IHsKLSAJdmdfcHJlZml4X2NvbnRleHRfdCAqdmNwcCA9ICh2Z19wcmVmaXhfY29udGV4dF90ICop IHZjcDsKLSAJdmdfcHJlZml4X2NvbnRleHRfY2xlYXJfYWxsX3BhdHRlcm5zKHZjcCk7Ci0tCUJO X2NsZWFyX2ZyZWUoJnZjcHAtPnZjcF9kaWZmaWN1bHR5KTsKLSsJQk5fY2xlYXJfZnJlZSh2Y3Bw LT52Y3BfZGlmZmljdWx0eSk7Ci0gCWZyZWUodmNwcCk7Ci0gfQotIAotQEAgLTEzMTQsNyArMTMx NCw3IEBAIHZnX3ByZWZpeF9jb250ZXh0X25leHRfZGlmZmljdWx0eSh2Z19wcmVmaXhfY29udGV4 dF90ICp2Y3BwLAotIAotIAlCTl9jbGVhcihibnRtcCk7Ci0gCUJOX3NldF9iaXQoYm50bXAsIDE5 Mik7Ci0tCUJOX2RpdihibnRtcDIsIE5VTEwsIGJudG1wLCAmdmNwcC0+dmNwX2RpZmZpY3VsdHks IGJuY3R4KTsKLSsJQk5fZGl2KGJudG1wMiwgTlVMTCwgYm50bXAsIHZjcHAtPnZjcF9kaWZmaWN1 bHR5LCBibmN0eCk7Ci0gCi0gCWRidWYgPSBCTl9ibjJkZWMoYm50bXAyKTsKLSAJaWYgKHZjcHAt PmJhc2UudmNfdmVyYm9zZSA+IDApIHsKLUBAIC0xMzM3LDcgKzEzMzcsNyBAQCB2Z19wcmVmaXhf Y29udGV4dF9hZGRfcGF0dGVybnModmdfY29udGV4dF90ICp2Y3AsCi0gCXByZWZpeF9jYXNlX2l0 ZXJfdCBjYXNlaXRlcjsKLSAJdmdfcHJlZml4X3QgKnZwLCAqdnAyOwotIAlCTl9DVFggKmJuY3R4 OwotLQlCSUdOVU0gYm50bXAsIGJudG1wMiwgYm50bXAzOwotKwlCSUdOVU0gKmJudG1wLCAqYm50 bXAyLCAqYm50bXAzOwotIAlCSUdOVU0gKnJhbmdlc1s0XTsKLSAJaW50IHJldCA9IDA7Ci0gCWlu dCBpLCBpbXBvc3NpYmxlID0gMDsKLUBAIC0xMzQ2LDkgKzEzNDYsOSBAQCB2Z19wcmVmaXhfY29u dGV4dF9hZGRfcGF0dGVybnModmdfY29udGV4dF90ICp2Y3AsCi0gCWNoYXIgKmRidWY7Ci0gCi0g CWJuY3R4ID0gQk5fQ1RYX25ldygpOwotLQlCTl9pbml0KCZibnRtcCk7Ci0tCUJOX2luaXQoJmJu dG1wMik7Ci0tCUJOX2luaXQoJmJudG1wMyk7Ci0rCWJudG1wID0gQk5fbmV3KCk7Ci0rCWJudG1w MiA9IEJOX25ldygpOwotKwlibnRtcDMgPSBCTl9uZXcoKTsKLSAKLSAJbnBmeCA9IDA7Ci0gCWZv ciAoaSA9IDA7IGkgPCBucGF0dGVybnM7IGkrKykgewotQEAgLTE0MjYsMTYgKzE0MjYsMTYgQEAg dmdfcHJlZml4X2NvbnRleHRfYWRkX3BhdHRlcm5zKHZnX2NvbnRleHRfdCAqdmNwLAotIAkJbnBm eCsrOwotIAotIAkJLyogRGV0ZXJtaW5lIHRoZSBwcm9iYWJpbGl0eSBvZiBmaW5kaW5nIGEgbWF0 Y2ggKi8KLS0JCXZnX3ByZWZpeF9yYW5nZV9zdW0odnAsICZibnRtcCwgJmJudG1wMik7Ci0tCQlC Tl9hZGQoJmJudG1wMiwgJnZjcHAtPnZjcF9kaWZmaWN1bHR5LCAmYm50bXApOwotLQkJQk5fY29w eSgmdmNwcC0+dmNwX2RpZmZpY3VsdHksICZibnRtcDIpOwotKwkJdmdfcHJlZml4X3JhbmdlX3N1 bSh2cCwgYm50bXAsIGJudG1wMik7Ci0rCQlCTl9hZGQoYm50bXAyLCB2Y3BwLT52Y3BfZGlmZmlj dWx0eSwgYm50bXApOwotKwkJQk5fY29weSh2Y3BwLT52Y3BfZGlmZmljdWx0eSwgYm50bXAyKTsK LSAKLSAJCWlmICh2Y3AtPnZjX3ZlcmJvc2UgPiAxKSB7Ci0tCQkJQk5fY2xlYXIoJmJudG1wMik7 Ci0tCQkJQk5fc2V0X2JpdCgmYm50bXAyLCAxOTIpOwotLQkJCUJOX2RpdigmYm50bXAzLCBOVUxM LCAmYm50bXAyLCAmYm50bXAsIGJuY3R4KTsKLSsJCQlCTl9jbGVhcihibnRtcDIpOwotKwkJCUJO X3NldF9iaXQoYm50bXAyLCAxOTIpOwotKwkJCUJOX2RpdihibnRtcDMsIE5VTEwsIGJudG1wMiwg Ym50bXAsIGJuY3R4KTsKLSAKLS0JCQlkYnVmID0gQk5fYm4yZGVjKCZibnRtcDMpOwotKwkJCWRi dWYgPSBCTl9ibjJkZWMoYm50bXAzKTsKLSAJCQlmcHJpbnRmKHN0ZGVyciwKLSAJCQkJIlByZWZp eCBkaWZmaWN1bHR5OiAlMjBzICVzXG4iLAotIAkJCQlkYnVmLCBwYXR0ZXJuc1tpXSk7Ci1AQCAt MTQ2OSwxMyArMTQ2OSwxMyBAQCB2Z19wcmVmaXhfY29udGV4dF9hZGRfcGF0dGVybnModmdfY29u dGV4dF90ICp2Y3AsCi0gCX0KLSAKLSAJaWYgKG5wZngpCi0tCQl2Z19wcmVmaXhfY29udGV4dF9u ZXh0X2RpZmZpY3VsdHkodmNwcCwgJmJudG1wLCAmYm50bXAyLCBibmN0eCk7Ci0rCQl2Z19wcmVm aXhfY29udGV4dF9uZXh0X2RpZmZpY3VsdHkodmNwcCwgYm50bXAsIGJudG1wMiwgYm5jdHgpOwot IAotIAlyZXQgPSAobnBmeCAhPSAwKTsKLSAKLS0JQk5fY2xlYXJfZnJlZSgmYm50bXApOwotLQlC Tl9jbGVhcl9mcmVlKCZibnRtcDIpOwotLQlCTl9jbGVhcl9mcmVlKCZibnRtcDMpOwotKwlCTl9j bGVhcl9mcmVlKGJudG1wKTsKLSsJQk5fY2xlYXJfZnJlZShibnRtcDIpOwotKwlCTl9jbGVhcl9m cmVlKGJudG1wMyk7Ci0gCUJOX0NUWF9mcmVlKGJuY3R4KTsKLSAJcmV0dXJuIHJldDsKLSB9Ci1A QCAtMTQ4NCwzOSArMTQ4NCwzOSBAQCBkb3VibGUKLSB2Z19wcmVmaXhfZ2V0X2RpZmZpY3VsdHko aW50IGFkZHJ0eXBlLCBjb25zdCBjaGFyICpwYXR0ZXJuKQotIHsKLSAJQk5fQ1RYICpibmN0eDsK LS0JQklHTlVNIHJlc3VsdCwgYm50bXA7Ci0rCUJJR05VTSAqcmVzdWx0LCAqYm50bXA7Ci0gCUJJ R05VTSAqcmFuZ2VzWzRdOwotIAljaGFyICpkYnVmOwotIAlpbnQgcmV0OwotIAlkb3VibGUgZGlm ZnJldCA9IDAuMDsKLSAKLSAJYm5jdHggPSBCTl9DVFhfbmV3KCk7Ci0tCUJOX2luaXQoJnJlc3Vs dCk7Ci0tCUJOX2luaXQoJmJudG1wKTsKLSsJcmVzdWx0ID0gQk5fbmV3KCk7Ci0rCWJudG1wID0g Qk5fbmV3KCk7Ci0gCi0gCXJldCA9IGdldF9wcmVmaXhfcmFuZ2VzKGFkZHJ0eXBlLAotIAkJCQlw YXR0ZXJuLCByYW5nZXMsIGJuY3R4KTsKLSAKLSAJaWYgKHJldCA9PSAwKSB7Ci0tCQlCTl9zdWIo JmJudG1wLCByYW5nZXNbMV0sIHJhbmdlc1swXSk7Ci0tCQlCTl9hZGQoJnJlc3VsdCwgJnJlc3Vs dCwgJmJudG1wKTsKLSsJCUJOX3N1YihibnRtcCwgcmFuZ2VzWzFdLCByYW5nZXNbMF0pOwotKwkJ Qk5fYWRkKHJlc3VsdCwgcmVzdWx0LCBibnRtcCk7Ci0gCQlpZiAocmFuZ2VzWzJdKSB7Ci0tCQkJ Qk5fc3ViKCZibnRtcCwgcmFuZ2VzWzNdLCByYW5nZXNbMl0pOwotLQkJCUJOX2FkZCgmcmVzdWx0 LCAmcmVzdWx0LCAmYm50bXApOwotKwkJCUJOX3N1YihibnRtcCwgcmFuZ2VzWzNdLCByYW5nZXNb Ml0pOwotKwkJCUJOX2FkZChyZXN1bHQsIHJlc3VsdCwgYm50bXApOwotIAkJfQotIAkJZnJlZV9y YW5nZXMocmFuZ2VzKTsKLSAKLS0JCUJOX2NsZWFyKCZibnRtcCk7Ci0tCQlCTl9zZXRfYml0KCZi bnRtcCwgMTkyKTsKLS0JCUJOX2RpdigmcmVzdWx0LCBOVUxMLCAmYm50bXAsICZyZXN1bHQsIGJu Y3R4KTsKLSsJCUJOX2NsZWFyKGJudG1wKTsKLSsJCUJOX3NldF9iaXQoYm50bXAsIDE5Mik7Ci0r CQlCTl9kaXYocmVzdWx0LCBOVUxMLCBibnRtcCwgcmVzdWx0LCBibmN0eCk7Ci0gCi0tCQlkYnVm ID0gQk5fYm4yZGVjKCZyZXN1bHQpOwotKwkJZGJ1ZiA9IEJOX2JuMmRlYyhyZXN1bHQpOwotIAkJ ZGlmZnJldCA9IHN0cnRvZChkYnVmLCBOVUxMKTsKLSAJCU9QRU5TU0xfZnJlZShkYnVmKTsKLSAJ fQotIAotLQlCTl9jbGVhcl9mcmVlKCZyZXN1bHQpOwotLQlCTl9jbGVhcl9mcmVlKCZibnRtcCk7 Ci0rCUJOX2NsZWFyX2ZyZWUocmVzdWx0KTsKLSsJQk5fY2xlYXJfZnJlZShibnRtcCk7Ci0gCUJO X0NUWF9mcmVlKGJuY3R4KTsKLSAJcmV0dXJuIGRpZmZyZXQ7Ci0gfQotQEAgLTE1MzUsMTAgKzE1 MzUsMTAgQEAgdmdfcHJlZml4X3Rlc3QodmdfZXhlY19jb250ZXh0X3QgKnZ4Y3ApCi0gCSAqIGNo ZWNrIGNvZGUuCi0gCSAqLwotIAotLQlCTl9iaW4yYm4odnhjcC0+dnhjX2JpbnJlcywgMjUsICZ2 eGNwLT52eGNfYm50YXJnKTsKLSsJQk5fYmluMmJuKHZ4Y3AtPnZ4Y19iaW5yZXMsIDI1LCB2eGNw LT52eGNfYm50YXJnKTsKLSAKLSByZXNlYXJjaDoKLS0JdnAgPSB2Z19wcmVmaXhfYXZsX3NlYXJj aCgmdmNwcC0+dmNwX2F2bHJvb3QsICZ2eGNwLT52eGNfYm50YXJnKTsKLSsJdnAgPSB2Z19wcmVm aXhfYXZsX3NlYXJjaCgmdmNwcC0+dmNwX2F2bHJvb3QsIHZ4Y3AtPnZ4Y19ibnRhcmcpOwotIAlp ZiAodnApIHsKLSAJCWlmICh2Z19leGVjX2NvbnRleHRfdXBncmFkZV9sb2NrKHZ4Y3ApKQotIAkJ CWdvdG8gcmVzZWFyY2g7Ci1AQCAtMTU1OCwyMCArMTU1OCwyMCBAQCB2Z19wcmVmaXhfdGVzdCh2 Z19leGVjX2NvbnRleHRfdCAqdnhjcCkKLSAJCWlmICh2Y3BwLT5iYXNlLnZjX3JlbW92ZV9vbl9t YXRjaCkgewotIAkJCS8qIFN1YnRyYWN0IHRoZSByYW5nZSBmcm9tIHRoZSBkaWZmaWN1bHR5ICov Ci0gCQkJdmdfcHJlZml4X3JhbmdlX3N1bSh2cCwKLS0JCQkJCSAgICAmdnhjcC0+dnhjX2JudGFy ZywKLS0JCQkJCSAgICAmdnhjcC0+dnhjX2JudG1wKTsKLS0JCQlCTl9zdWIoJnZ4Y3AtPnZ4Y19i bnRtcCwKLS0JCQkgICAgICAgJnZjcHAtPnZjcF9kaWZmaWN1bHR5LAotLQkJCSAgICAgICAmdnhj cC0+dnhjX2JudGFyZyk7Ci0tCQkJQk5fY29weSgmdmNwcC0+dmNwX2RpZmZpY3VsdHksICZ2eGNw LT52eGNfYm50bXApOwotKwkJCQkJICAgIHZ4Y3AtPnZ4Y19ibnRhcmcsCi0rCQkJCQkgICAgdnhj cC0+dnhjX2JudG1wKTsKLSsJCQlCTl9zdWIodnhjcC0+dnhjX2JudG1wLAotKwkJCSAgICAgICB2 Y3BwLT52Y3BfZGlmZmljdWx0eSwKLSsJCQkgICAgICAgdnhjcC0+dnhjX2JudGFyZyk7Ci0rCQkJ Qk5fY29weSh2Y3BwLT52Y3BfZGlmZmljdWx0eSwgdnhjcC0+dnhjX2JudG1wKTsKLSAKLSAJCQl2 Z19wcmVmaXhfZGVsZXRlKCZ2Y3BwLT52Y3BfYXZscm9vdCx2cCk7Ci0gCQkJdmNwcC0+YmFzZS52 Y19ucGF0dGVybnMtLTsKLSAKLSAJCQlpZiAoIWF2bF9yb290X2VtcHR5KCZ2Y3BwLT52Y3BfYXZs cm9vdCkpCi0gCQkJCXZnX3ByZWZpeF9jb250ZXh0X25leHRfZGlmZmljdWx0eSgKLS0JCQkJCXZj cHAsICZ2eGNwLT52eGNfYm50bXAsCi0tCQkJCQkmdnhjcC0+dnhjX2JudG1wMiwKLSsJCQkJCXZj cHAsIHZ4Y3AtPnZ4Y19ibnRtcCwKLSsJCQkJCXZ4Y3AtPnZ4Y19ibnRtcDIsCi0gCQkJCQl2eGNw LT52eGNfYm5jdHgpOwotIAkJCXZjcHAtPmJhc2UudmNfcGF0dGVybl9nZW5lcmF0aW9uKys7Ci0g CQl9Ci1AQCAtMTY1Miw3ICsxNjUyLDcgQEAgdmdfcHJlZml4X2NvbnRleHRfbmV3KGludCBhZGRy dHlwZSwgaW50IHByaXZ0eXBlLCBpbnQgY2FzZWluc2Vuc2l0aXZlKQotIAkJdmNwcC0+YmFzZS52 Y190ZXN0ID0gdmdfcHJlZml4X3Rlc3Q7Ci0gCQl2Y3BwLT5iYXNlLnZjX2hhc2gxNjBfc29ydCA9 IHZnX3ByZWZpeF9oYXNoMTYwX3NvcnQ7Ci0gCQlhdmxfcm9vdF9pbml0KCZ2Y3BwLT52Y3BfYXZs cm9vdCk7Ci0tCQlCTl9pbml0KCZ2Y3BwLT52Y3BfZGlmZmljdWx0eSk7Ci0rCQl2Y3BwLT52Y3Bf ZGlmZmljdWx0eSA9IEJOX25ldygpOwotIAkJdmNwcC0+dmNwX2Nhc2VpbnNlbnNpdGl2ZSA9IGNh c2VpbnNlbnNpdGl2ZTsKLSAJfQotIAlyZXR1cm4gJnZjcHAtPmJhc2U7Ci1AQCAtMTc3OCwyMSAr MTc3OCwyMSBAQCB2Z19yZWdleF90ZXN0KHZnX2V4ZWNfY29udGV4dF90ICp2eGNwKQotIAl1bnNp Z25lZCBjaGFyIGhhc2gxWzMyXSwgaGFzaDJbMzJdOwotIAlpbnQgaSwgenBmeCwgcCwgZCwgbnJl cywgcmVfdmVjWzldOwotIAljaGFyIGI1OFs0MF07Ci0tCUJJR05VTSBibnJlbTsKLSsJQklHTlVN ICpibnJlbTsKLSAJQklHTlVNICpibiwgKmJuZGl2LCAqYm5wdG1wOwotIAlpbnQgcmVzID0gMDsK LSAKLSAJcGNyZSAqcmU7Ci0gCi0tCUJOX2luaXQoJmJucmVtKTsKLSsJYm5yZW0gPSBCTl9uZXco KTsKLSAKLSAJLyogSGFzaCB0aGUgaGFzaCBhbmQgd3JpdGUgdGhlIGZvdXIgYnl0ZSBjaGVjayBj b2RlICovCi0gCVNIQTI1Nih2eGNwLT52eGNfYmlucmVzLCAyMSwgaGFzaDEpOwotIAlTSEEyNTYo aGFzaDEsIHNpemVvZihoYXNoMSksIGhhc2gyKTsKLSAJbWVtY3B5KCZ2eGNwLT52eGNfYmlucmVz WzIxXSwgaGFzaDIsIDQpOwotIAotLQlibiA9ICZ2eGNwLT52eGNfYm50bXA7Ci0tCWJuZGl2ID0g JnZ4Y3AtPnZ4Y19ibnRtcDI7Ci0rCWJuID0gdnhjcC0+dnhjX2JudG1wOwotKwlibmRpdiA9IHZ4 Y3AtPnZ4Y19ibnRtcDI7Ci0gCi0gCUJOX2JpbjJibih2eGNwLT52eGNfYmlucmVzLCAyNSwgYm4p OwotIAotQEAgLTE4MDEsMTEgKzE4MDEsMTEgQEAgdmdfcmVnZXhfdGVzdCh2Z19leGVjX2NvbnRl eHRfdCAqdnhjcCkKLSAJcCA9IHNpemVvZihiNTgpIC0gMTsKLSAJYjU4W3BdID0gJ1wwJzsKLSAJ d2hpbGUgKCFCTl9pc196ZXJvKGJuKSkgewotLQkJQk5fZGl2KGJuZGl2LCAmYm5yZW0sIGJuLCAm dnhjcC0+dnhjX2JuYmFzZSwgdnhjcC0+dnhjX2JuY3R4KTsKLSsJCUJOX2RpdihibmRpdiwgYm5y ZW0sIGJuLCB2eGNwLT52eGNfYm5iYXNlLCB2eGNwLT52eGNfYm5jdHgpOwotIAkJYm5wdG1wID0g Ym47Ci0gCQlibiA9IGJuZGl2OwotIAkJYm5kaXYgPSBibnB0bXA7Ci0tCQlkID0gQk5fZ2V0X3dv cmQoJmJucmVtKTsKLSsJCWQgPSBCTl9nZXRfd29yZChibnJlbSk7Ci0gCQliNThbLS1wXSA9IHZn X2I1OF9hbHBoYWJldFtkXTsKLSAJfQotIAl3aGlsZSAoenBmeC0tKSB7Ci1AQCAtMTg3OCw3ICsx ODc4LDcgQEAgdmdfcmVnZXhfdGVzdCh2Z19leGVjX2NvbnRleHRfdCAqdnhjcCkKLSAJCXJlcyA9 IDE7Ci0gCX0KLSBvdXQ6Ci0tCUJOX2NsZWFyX2ZyZWUoJmJucmVtKTsKLSsJQk5fY2xlYXJfZnJl ZShibnJlbSk7Ci0gCXJldHVybiByZXM7Ci0gfQotIAotZGlmZiAtLWdpdCBhL3BhdHRlcm4uaCBi L3BhdHRlcm4uaAotaW5kZXggM2NlMmQxZi4uMGI2MDRlYSAxMDA2NDQKLS0tLSBhL3BhdHRlcm4u aAotKysrIGIvcGF0dGVybi5oCi1AQCAtNTEsMTAgKzUxLDEwIEBAIHN0cnVjdCBfdmdfZXhlY19j b250ZXh0X3MgewotIAlFQ19LRVkJCQkJKnZ4Y19rZXk7Ci0gCWludAkJCQl2eGNfZGVsdGE7Ci0g CXVuc2lnbmVkIGNoYXIJCQl2eGNfYmlucmVzWzI4XTsKLS0JQklHTlVNCQkJCXZ4Y19ibnRhcmc7 Ci0tCUJJR05VTQkJCQl2eGNfYm5iYXNlOwotLQlCSUdOVU0JCQkJdnhjX2JudG1wOwotLQlCSUdO VU0JCQkJdnhjX2JudG1wMjsKLSsJQklHTlVNCQkJCSp2eGNfYm50YXJnOwotKwlCSUdOVU0JCQkJ KnZ4Y19ibmJhc2U7Ci0rCUJJR05VTQkJCQkqdnhjX2JudG1wOwotKwlCSUdOVU0JCQkJKnZ4Y19i bnRtcDI7Ci0gCi0gCXZnX2V4ZWNfY29udGV4dF90aHJlYWRmdW5jX3QJdnhjX3RocmVhZGZ1bmM7 Ci0gCXB0aHJlYWRfdAkJCXZ4Y19wdGhyZWFkOwotZGlmZiAtLWdpdCBhL3V0aWwuYyBiL3V0aWwu YwotaW5kZXggNGYzY2JiOC4uMzVjZDU5MiAxMDA2NDQKLS0tLSBhL3V0aWwuYwotKysrIGIvdXRp bC5jCi1AQCAtMTEwLDE5ICsxMTAsMTkgQEAgdmdfYjU4X2VuY29kZV9jaGVjayh2b2lkICpidWYs IHNpemVfdCBsZW4sIGNoYXIgKnJlc3VsdCkKLSAKLSAJQk5fQ1RYICpibmN0eDsKLSAJQklHTlVN ICpibiwgKmJuZGl2LCAqYm50bXA7Ci0tCUJJR05VTSBibmEsIGJuYiwgYm5iYXNlLCBibnJlbTsK LSsJQklHTlVNICpibmEsICpibmIsICpibmJhc2UsICpibnJlbTsKLSAJdW5zaWduZWQgY2hhciAq YmlucmVzOwotIAlpbnQgYnJsZW4sIHpwZng7Ci0gCi0gCWJuY3R4ID0gQk5fQ1RYX25ldygpOwot LQlCTl9pbml0KCZibmEpOwotLQlCTl9pbml0KCZibmIpOwotLQlCTl9pbml0KCZibmJhc2UpOwot LQlCTl9pbml0KCZibnJlbSk7Ci0tCUJOX3NldF93b3JkKCZibmJhc2UsIDU4KTsKLSsJYm5hID0g Qk5fbmV3KCk7Ci0rCWJuYiA9IEJOX25ldygpOwotKwlibmJhc2UgPSBCTl9uZXcoKTsKLSsJYm5y ZW0gPSBCTl9uZXcoKTsKLSsJQk5fc2V0X3dvcmQoYm5iYXNlLCA1OCk7Ci0gCi0tCWJuID0gJmJu YTsKLS0JYm5kaXYgPSAmYm5iOwotKwlibiA9IGJuYTsKLSsJYm5kaXYgPSBibmI7Ci0gCi0gCWJy bGVuID0gKDIgKiBsZW4pICsgNDsKLSAJYmlucmVzID0gKHVuc2lnbmVkIGNoYXIqKSBtYWxsb2Mo YnJsZW4pOwotQEAgLTE1NCwxMSArMTU0LDExIEBAIHZnX2I1OF9lbmNvZGVfY2hlY2sodm9pZCAq YnVmLCBzaXplX3QgbGVuLCBjaGFyICpyZXN1bHQpCi0gCi0gCXAgPSBicmxlbjsKLSAJd2hpbGUg KCFCTl9pc196ZXJvKGJuKSkgewotLQkJQk5fZGl2KGJuZGl2LCAmYm5yZW0sIGJuLCAmYm5iYXNl LCBibmN0eCk7Ci0rCQlCTl9kaXYoYm5kaXYsIGJucmVtLCBibiwgYm5iYXNlLCBibmN0eCk7Ci0g CQlibnRtcCA9IGJuOwotIAkJYm4gPSBibmRpdjsKLSAJCWJuZGl2ID0gYm50bXA7Ci0tCQlkID0g Qk5fZ2V0X3dvcmQoJmJucmVtKTsKLSsJCWQgPSBCTl9nZXRfd29yZChibnJlbSk7Ci0gCQliaW5y ZXNbLS1wXSA9IHZnX2I1OF9hbHBoYWJldFtkXTsKLSAJfQotIAotQEAgLTE3MCwxMCArMTcwLDEw IEBAIHZnX2I1OF9lbmNvZGVfY2hlY2sodm9pZCAqYnVmLCBzaXplX3QgbGVuLCBjaGFyICpyZXN1 bHQpCi0gCXJlc3VsdFticmxlbiAtIHBdID0gJ1wwJzsKLSAKLSAJZnJlZShiaW5yZXMpOwotLQlC Tl9jbGVhcl9mcmVlKCZibmEpOwotLQlCTl9jbGVhcl9mcmVlKCZibmIpOwotLQlCTl9jbGVhcl9m cmVlKCZibmJhc2UpOwotLQlCTl9jbGVhcl9mcmVlKCZibnJlbSk7Ci0rCUJOX2NsZWFyX2ZyZWUo Ym5hKTsKLSsJQk5fY2xlYXJfZnJlZShibmIpOwotKwlCTl9jbGVhcl9mcmVlKGJuYmFzZSk7Ci0r CUJOX2NsZWFyX2ZyZWUoYm5yZW0pOwotIAlCTl9DVFhfZnJlZShibmN0eCk7Ci0gfQotIAotQEAg LTE4NSw3ICsxODUsNyBAQCB2Z19iNThfZGVjb2RlX2NoZWNrKGNvbnN0IGNoYXIgKmlucHV0LCB2 b2lkICpidWYsIHNpemVfdCBsZW4pCi0gewotIAlpbnQgaSwgbCwgYzsKLSAJdW5zaWduZWQgY2hh ciAqeGJ1ZiA9IE5VTEw7Ci0tCUJJR05VTSBibiwgYm53LCBibmJhc2U7Ci0rCUJJR05VTSAqYm4s ICpibncsICpibmJhc2U7Ci0gCUJOX0NUWCAqYm5jdHg7Ci0gCXVuc2lnbmVkIGNoYXIgaGFzaDFb MzJdLCBoYXNoMlszMl07Ci0gCXVuc2lnbmVkIGNoYXIgZ3JvZXN0bGhhc2gxWzY0XTsKLUBAIC0x OTMsMTAgKzE5MywxMCBAQCB2Z19iNThfZGVjb2RlX2NoZWNrKGNvbnN0IGNoYXIgKmlucHV0LCB2 b2lkICpidWYsIHNpemVfdCBsZW4pCi0gCWludCB6cGZ4OwotIAlpbnQgcmVzID0gMDsKLSAKLS0J Qk5faW5pdCgmYm4pOwotLQlCTl9pbml0KCZibncpOwotLQlCTl9pbml0KCZibmJhc2UpOwotLQlC Tl9zZXRfd29yZCgmYm5iYXNlLCA1OCk7Ci0rCWJuID0gQk5fbmV3KCk7Ci0rCWJudyA9IEJOX25l dygpOwotKwlibmJhc2UgPSBCTl9uZXcoKTsKLSsJQk5fc2V0X3dvcmQoYm5iYXNlLCA1OCk7Ci0g CWJuY3R4ID0gQk5fQ1RYX25ldygpOwotIAotIAkvKiBCdWlsZCBhIGJpZ251bSBmcm9tIHRoZSBl bmNvZGVkIHZhbHVlICovCi1AQCAtMjA3LDEwICsyMDcsMTAgQEAgdmdfYjU4X2RlY29kZV9jaGVj ayhjb25zdCBjaGFyICppbnB1dCwgdm9pZCAqYnVmLCBzaXplX3QgbGVuKQotIAkJYyA9IHZnX2I1 OF9yZXZlcnNlX21hcFsoaW50KWlucHV0W2ldXTsKLSAJCWlmIChjIDwgMCkKLSAJCQlnb3RvIG91 dDsKLS0JCUJOX2NsZWFyKCZibncpOwotLQkJQk5fc2V0X3dvcmQoJmJudywgYyk7Ci0tCQlCTl9t dWwoJmJuLCAmYm4sICZibmJhc2UsIGJuY3R4KTsKLS0JCUJOX2FkZCgmYm4sICZibiwgJmJudyk7 Ci0rCQlCTl9jbGVhcihibncpOwotKwkJQk5fc2V0X3dvcmQoYm53LCBjKTsKLSsJCUJOX211bChi biwgYm4sIGJuYmFzZSwgYm5jdHgpOwotKwkJQk5fYWRkKGJuLCBibiwgYm53KTsKLSAJfQotIAot IAkvKiBDb3B5IHRoZSBiaWdudW0gdG8gYSBieXRlIGJ1ZmZlciAqLwotQEAgLTIyMSw3ICsyMjEs NyBAQCB2Z19iNThfZGVjb2RlX2NoZWNrKGNvbnN0IGNoYXIgKmlucHV0LCB2b2lkICpidWYsIHNp emVfdCBsZW4pCi0gCQkJYnJlYWs7Ci0gCQl6cGZ4Kys7Ci0gCX0KLS0JYyA9IEJOX251bV9ieXRl cygmYm4pOwotKwljID0gQk5fbnVtX2J5dGVzKGJuKTsKLSAJbCA9IHpwZnggKyBjOwotIAlpZiAo bCA8IDUpCi0gCQlnb3RvIG91dDsKLUBAIC0yMzEsNyArMjMxLDcgQEAgdmdfYjU4X2RlY29kZV9j aGVjayhjb25zdCBjaGFyICppbnB1dCwgdm9pZCAqYnVmLCBzaXplX3QgbGVuKQotIAlpZiAoenBm eCkKLSAJCW1lbXNldCh4YnVmLCAwLCB6cGZ4KTsKLSAJaWYgKGMpCi0tCQlCTl9ibjJiaW4oJmJu LCB4YnVmICsgenBmeCk7Ci0rCQlCTl9ibjJiaW4oYm4sIHhidWYgKyB6cGZ4KTsKLSAKLSAJLyog Q2hlY2sgdGhlIGhhc2ggY29kZSAqLwotIAlsIC09IDQ7Ci1AQCAtMjcwLDkgKzI3MCw5IEBAIHZn X2I1OF9kZWNvZGVfY2hlY2soY29uc3QgY2hhciAqaW5wdXQsIHZvaWQgKmJ1Ziwgc2l6ZV90IGxl bikKLSBvdXQ6Ci0gCWlmICh4YnVmKQotIAkJZnJlZSh4YnVmKTsKLS0JQk5fY2xlYXJfZnJlZSgm Ym4pOwotLQlCTl9jbGVhcl9mcmVlKCZibncpOwotLQlCTl9jbGVhcl9mcmVlKCZibmJhc2UpOwot KwlCTl9jbGVhcl9mcmVlKGJuKTsKLSsJQk5fY2xlYXJfZnJlZShibncpOwotKwlCTl9jbGVhcl9m cmVlKGJuYmFzZSk7Ci0gCUJOX0NUWF9mcmVlKGJuY3R4KTsKLSAJcmV0dXJuIHJlczsKLSB9Ci1A QCAtNDIwLDcgKzQyMCw3IEBAIHZnX3NldF9wcml2a2V5KGNvbnN0IEJJR05VTSAqYm5wcml2LCBF Q19LRVkgKnBrZXkpCi0gaW50Ci0gdmdfZGVjb2RlX3ByaXZrZXkoY29uc3QgY2hhciAqYjU4ZW5j b2RlZCwgRUNfS0VZICpwa2V5LCBpbnQgKmFkZHJ0eXBlKQotIHsKLS0JQklHTlVNIGJucHJpdjsK LSsJQklHTlVNICpibnByaXY7Ci0gCXVuc2lnbmVkIGNoYXIgZWNwcml2WzQ4XTsKLSAJaW50IHJl cywgcmV0OwotIAotQEAgLTQzMCwxMCArNDMwLDEwIEBAIHZnX2RlY29kZV9wcml2a2V5KGNvbnN0 IGNoYXIgKmI1OGVuY29kZWQsIEVDX0tFWSAqcGtleSwgaW50ICphZGRydHlwZSkKLSAKLSAJcmV0 ID0gcmVzIC0gMzI7Ci0gCi0tCUJOX2luaXQoJmJucHJpdik7Ci0tCUJOX2JpbjJibihlY3ByaXYg KyAxLCAzMiwgJmJucHJpdik7Ci0tCXJlcyA9IHZnX3NldF9wcml2a2V5KCZibnByaXYsIHBrZXkp OwotLQlCTl9jbGVhcl9mcmVlKCZibnByaXYpOwotKwlibnByaXYgPSBCTl9uZXcoKTsKLSsJQk5f YmluMmJuKGVjcHJpdiArIDEsIDMyLCBibnByaXYpOwotKwlyZXMgPSB2Z19zZXRfcHJpdmtleShi bnByaXYsIHBrZXkpOwotKwlCTl9jbGVhcl9mcmVlKGJucHJpdik7Ci0gCSphZGRydHlwZSA9IGVj cHJpdlswXTsKLSAJcmV0dXJuIHJldDsKLSB9Ci1AQCAtNjMyLDE1ICs2MzIsMTUgQEAgdmdfcHJv dGVjdF9jcnlwdChpbnQgcGFyYW1ldGVyX2dyb3VwLAotIAkJc2FsdF9sZW4gPSA0OwotIAkJaG1h Y19sZW4gPSA4OwotIAkJaG1hY19rZXlsZW4gPSAxNjsKLS0JCWNpcGhlcnRleHRfbGVuID0gKChw bGFpbnRleHRfbGVuICsgY2lwaGVyLT5ibG9ja19zaXplIC0gMSkgLwotLQkJCQkgIGNpcGhlci0+ YmxvY2tfc2l6ZSkgKiBjaXBoZXItPmJsb2NrX3NpemU7Ci0rCQljaXBoZXJ0ZXh0X2xlbiA9ICgo cGxhaW50ZXh0X2xlbiArIEVWUF9DSVBIRVJfYmxvY2tfc2l6ZShjaXBoZXIpIC0gMSkgLwotKwkJ CQkgIEVWUF9DSVBIRVJfYmxvY2tfc2l6ZShjaXBoZXIpKSAqIEVWUF9DSVBIRVJfYmxvY2tfc2l6 ZShjaXBoZXIpOwotIAkJcGtjczdfcGFkZGluZyA9IDA7Ci0gCQlobWFjX2RpZ2VzdCA9IEVWUF9z aGEyNTYoKTsKLSAJfSBlbHNlIHsKLSAJCS8qIFBLQ1MtY29tcGxpYW50IGVuY29kaW5nICovCi0g CQlzYWx0X2xlbiA9IDg7Ci0tCQljaXBoZXJ0ZXh0X2xlbiA9ICgocGxhaW50ZXh0X2xlbiArIGNp cGhlci0+YmxvY2tfc2l6ZSkgLwotLQkJCQkgIGNpcGhlci0+YmxvY2tfc2l6ZSkgKiBjaXBoZXIt PmJsb2NrX3NpemU7Ci0rCQljaXBoZXJ0ZXh0X2xlbiA9ICgocGxhaW50ZXh0X2xlbiArIEVWUF9D SVBIRVJfYmxvY2tfc2l6ZShjaXBoZXIpKSAvCi0rCQkJCSAgRVZQX0NJUEhFUl9ibG9ja19zaXpl KGNpcGhlcikpICogRVZQX0NJUEhFUl9ibG9ja19zaXplKGNpcGhlcik7Ci0gCQlobWFjX2RpZ2Vz dCA9IE5VTEw7Ci0gCX0KLSAKLUBAIC02NjYsMTIgKzY2NiwxMiBAQCB2Z19wcm90ZWN0X2NyeXB0 KGludCBwYXJhbWV0ZXJfZ3JvdXAsCi0gCQkJICBzYWx0LCBzYWx0X2xlbiwKLSAJCQkgIHBhcmFt cy0+aXRlcmF0aW9ucywKLSAJCQkgIHBia2RmX2RpZ2VzdCwKLS0JCQkgIGNpcGhlci0+a2V5X2xl biArIGNpcGhlci0+aXZfbGVuICsgaG1hY19rZXlsZW4sCi0rCQkJICBFVlBfQ0lQSEVSX2tleV9s ZW5ndGgoY2lwaGVyKSArIEVWUF9DSVBIRVJfaXZfbGVuZ3RoKGNpcGhlcikgKyBobWFjX2tleWxl biwKLSAJCQkgIGtleW1hdGVyaWFsKTsKLSAKLSAJaWYgKCFFVlBfQ2lwaGVySW5pdChjdHgsIGNp cGhlciwKLSAJCQkgICAga2V5bWF0ZXJpYWwsCi0tCQkJICAgIGtleW1hdGVyaWFsICsgY2lwaGVy LT5rZXlfbGVuLAotKwkJCSAgICBrZXltYXRlcmlhbCArIEVWUF9DSVBIRVJfa2V5X2xlbmd0aChj aXBoZXIpLAotIAkJCSAgICBlbmMpKSB7Ci0gCQlmcHJpbnRmKHN0ZGVyciwgIkVSUk9SOiBjb3Vs ZCBub3QgY29uZmlndXJlIGNpcGhlclxuIik7Ci0gCQlnb3RvIG91dDsKLUBAIC03MDcsNyArNzA3 LDcgQEAgdmdfcHJvdGVjdF9jcnlwdChpbnQgcGFyYW1ldGVyX2dyb3VwLAotIAlpZiAoaG1hY19s ZW4pIHsKLSAJCWhsZW4gPSBzaXplb2YoaG1hYyk7Ci0gCQlITUFDKGhtYWNfZGlnZXN0LAotLQkJ ICAgICBrZXltYXRlcmlhbCArIGNpcGhlci0+a2V5X2xlbiArIGNpcGhlci0+aXZfbGVuLAotKwkJ ICAgICBrZXltYXRlcmlhbCArIEVWUF9DSVBIRVJfa2V5X2xlbmd0aChjaXBoZXIpICsgRVZQX0NJ UEhFUl9pdl9sZW5ndGgoY2lwaGVyKSwKLSAJCSAgICAgaG1hY19rZXlsZW4sCi0gCQkgICAgIGVu YyA/IGRhdGFfaW4gOiBkYXRhX291dCwgcGxhaW50ZXh0X2xlbiwKLSAJCSAgICAgaG1hYywgJmhs ZW4pOwotQEAgLTc4Niw3ICs3ODYsNyBAQCB2Z19wcm90ZWN0X2RlY29kZV9wcml2a2V5KEVDX0tF WSAqcGtleSwgaW50ICprZXl0eXBlLAotIHsKLSAJdW5zaWduZWQgY2hhciBlY3ByaXZbNjRdOwot IAl1bnNpZ25lZCBjaGFyIGVjZW5jWzEyOF07Ci0tCUJJR05VTSBibjsKLSsJQklHTlVNICpibjsK LSAJaW50IHJlc3R5cGU7Ci0gCWludCByZXM7Ci0gCi1AQCAtODEwLDEwICs4MTAsMTAgQEAgdmdf cHJvdGVjdF9kZWNvZGVfcHJpdmtleShFQ19LRVkgKnBrZXksIGludCAqa2V5dHlwZSwKLSAKLSAJ cmVzID0gMTsKLSAJaWYgKHBrZXkpIHsKLS0JCUJOX2luaXQoJmJuKTsKLS0JCUJOX2JpbjJibihl Y3ByaXYsIDMyLCAmYm4pOwotLQkJcmVzID0gdmdfc2V0X3ByaXZrZXkoJmJuLCBwa2V5KTsKLS0J CUJOX2NsZWFyX2ZyZWUoJmJuKTsKLSsJCWJuID0gQk5fbmV3KCk7Ci0rCQlCTl9iaW4yYm4oZWNw cml2LCAzMiwgYm4pOwotKwkJcmVzID0gdmdfc2V0X3ByaXZrZXkoYm4sIHBrZXkpOwotKwkJQk5f Y2xlYXJfZnJlZShibik7Ci0gCQlPUEVOU1NMX2NsZWFuc2UoZWNwcml2LCBzaXplb2YoZWNwcml2 KSk7Ci0gCX0KLSAKLWRpZmYgLS1naXQgYS92YW5pdHlnZW4uYyBiL3Zhbml0eWdlbi5jCi1pbmRl eCBmYjc5MjVhLi45OTJlNWQ3IDEwMDY0NAotLS0tIGEvdmFuaXR5Z2VuLmMKLSsrKyBiL3Zhbml0 eWdlbi5jCi1AQCAtOTQsOCArOTQsOCBAQCB2Z190aHJlYWRfbG9vcCh2b2lkICphcmcpCi0gCQll eGl0KDEpOwotIAl9Ci0gCi0tCUJOX3NldF93b3JkKCZ2eGNwLT52eGNfYm50bXAsIHB0YXJyYXlz aXplKTsKLS0JRUNfUE9JTlRfbXVsKHBncm91cCwgcGJhdGNoaW5jLCAmdnhjcC0+dnhjX2JudG1w LCBOVUxMLCBOVUxMLAotKwlCTl9zZXRfd29yZCh2eGNwLT52eGNfYm50bXAsIHB0YXJyYXlzaXpl KTsKLSsJRUNfUE9JTlRfbXVsKHBncm91cCwgcGJhdGNoaW5jLCB2eGNwLT52eGNfYm50bXAsIE5V TEwsIE5VTEwsCi0gCQkgICAgIHZ4Y3AtPnZ4Y19ibmN0eCk7Ci0gCUVDX1BPSU5UX21ha2VfYWZm aW5lKHBncm91cCwgcGJhdGNoaW5jLCB2eGNwLT52eGNfYm5jdHgpOwotIAotQEAgLTEzOSwxMyAr MTM5LDEzIEBAIHZnX3RocmVhZF9sb29wKHZvaWQgKmFyZykKLSAJCQlucG9pbnRzID0gMDsKLSAK LSAJCQkvKiBEZXRlcm1pbmUgcmVrZXkgaW50ZXJ2YWwgKi8KLS0JCQlFQ19HUk9VUF9nZXRfb3Jk ZXIocGdyb3VwLCAmdnhjcC0+dnhjX2JudG1wLAotKwkJCUVDX0dST1VQX2dldF9vcmRlcihwZ3Jv dXAsIHZ4Y3AtPnZ4Y19ibnRtcCwKLSAJCQkJCSAgIHZ4Y3AtPnZ4Y19ibmN0eCk7Ci0tCQkJQk5f c3ViKCZ2eGNwLT52eGNfYm50bXAyLAotLQkJCSAgICAgICAmdnhjcC0+dnhjX2JudG1wLAotKwkJ CUJOX3N1Yih2eGNwLT52eGNfYm50bXAyLAotKwkJCSAgICAgICB2eGNwLT52eGNfYm50bXAsCi0g CQkJICAgICAgIEVDX0tFWV9nZXQwX3ByaXZhdGVfa2V5KHBrZXkpKTsKLS0JCQlyZWtleV9hdCA9 IEJOX2dldF93b3JkKCZ2eGNwLT52eGNfYm50bXAyKTsKLS0JCQlpZiAoKHJla2V5X2F0ID09IEJO X01BU0syKSB8fCAocmVrZXlfYXQgPiByZWtleV9tYXgpKQotKwkJCXJla2V5X2F0ID0gQk5fZ2V0 X3dvcmQodnhjcC0+dnhjX2JudG1wMik7Ci0rCQkJaWYgKChyZWtleV9hdCA9PSAweGZmZmZmZmZm TCkgfHwgKHJla2V5X2F0ID4gcmVrZXlfbWF4KSkKLSAJCQkJcmVrZXlfYXQgPSByZWtleV9tYXg7 Ci0gCQkJYXNzZXJ0KHJla2V5X2F0ID4gMCk7Ci0gCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Zhbml0 eWdlbi9wYXRjaGVzLzVmMTYzZTZmZmY3ZGE1MmM0YWVjYmQ4OThkOWRmMmU2MGE1NmYxMzQucGF0 Y2ggYi9zcmNwa2dzL3Zhbml0eWdlbi9wYXRjaGVzLzVmMTYzZTZmZmY3ZGE1MmM0YWVjYmQ4OThk OWRmMmU2MGE1NmYxMzQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlZTMw YWUwOGNkZi4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdmFuaXR5Z2VuL3BhdGNoZXMvNWYx NjNlNmZmZjdkYTUyYzRhZWNiZDg5OGQ5ZGYyZTYwYTU2ZjEzNC5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDk4ICswLDAgQEAKLUZyb20gNWYxNjNlNmZmZjdkYTUyYzRhZWNiZDg5OGQ5ZGYyZTYw YTU2ZjEzNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IERlc1d1cnN0ZXMgPERlc1d1 cnN0ZXNAdXNlcnMubm9yZXBseS5naXRodWIuY29tPgotRGF0ZTogU3VuLCAzIEp1biAyMDE4IDE3 OjQ2OjE2ICswMzAwCi1TdWJqZWN0OiBbUEFUQ0hdIFByaXZrZXkgcHJlZml4IE9wZW5TU0wgMS4x IGNvbXBhdGliaWxpdHkgKCMxMTYpCi0KLUZpeGVzICMxMTQKLS0tLQotIG9jbGVuZ2luZS5jIHwg MTggKysrKysrKysrKysrKy0tLS0tCi0gdmFuaXR5Z2VuLmMgfCAxMiArKysrKysrKysrLS0KLSAy IGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCi0KLWRpZmYg LS1naXQgYS9vY2xlbmdpbmUuYyBiL29jbGVuZ2luZS5jCi1pbmRleCA2NTg1ZmM2Li5jNjliZDRi IDEwMDY0NAotLS0tIGEvb2NsZW5naW5lLmMKLSsrKyBiL29jbGVuZ2luZS5jCi1AQCAtNSw3ICs1 LDcgQEAKLSAgKiBWYW5pdHlnZW4gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1 dGUgaXQgYW5kL29yIG1vZGlmeQotICAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFm ZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotICAqIHRoZSBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y Ci0tICogYW55IGxhdGVyIHZlcnNpb24uIAotKyAqIGFueSBsYXRlciB2ZXJzaW9uLgotICAqCi0g ICogVmFuaXR5Z2VuIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCi0gICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt cGxpZWQgd2FycmFudHkgb2YKLUBAIC0xMDU4LDcgKzEwNTgsNyBAQCB2Z19vY2xfa2VybmVsX2Fy Z19hbGxvYyh2Z19vY2xfY29udGV4dF90ICp2b2NwLCBpbnQgc2xvdCwKLSAJCQkJCSAgICAga2Fy ZywKLSAJCQkJCSAgICAgc2l6ZW9mKGNsYnVmKSwKLSAJCQkJCSAgICAgJmNsYnVmKTsKLS0JCQkK LSsKLSAJCQlpZiAocmV0KSB7Ci0gCQkJCWZwcmludGYoc3RkZXJyLAotIAkJCQkJImNsU2V0S2Vy bmVsQXJnKCVkLCVkKTogIiwga251bSwga2FyZyk7Ci1AQCAtMTA5MCw3ICsxMDkwLDcgQEAgdmdf b2NsX2NvcHlvdXRfYXJnKHZnX29jbF9jb250ZXh0X3QgKnZvY3AsIGludCB3c2xvdCwgaW50IGFy ZywKLSAJCQkJICAgYnVmZmVyLAotIAkJCQkgICAwLCBOVUxMLAotIAkJCQkgICBOVUxMKTsKLS0J CQkKLSsKLSAJaWYgKHJldCkgewotIAkJZnByaW50ZihzdGRlcnIsICJjbEVucXVldWVXcml0ZUJ1 ZmZlciglZCk6ICIsIGFyZyk7Ci0gCQl2Z19vY2xfZXJyb3Iodm9jcCwgcmV0LCBOVUxMKTsKLUBA IC0yMDc5LDcgKzIwNzksMTUgQEAgdmdfb3BlbmNsX2xvb3AodmdfZXhlY19jb250ZXh0X3QgKmFy ZykKLSAJbnBvaW50cyA9IDA7Ci0gCWlmICh2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0aCA+ IDApIHsKLSAJCUJJR05VTSAqcGtibiA9IEJOX2R1cChFQ19LRVlfZ2V0MF9wcml2YXRlX2tleShw a2V5KSk7Ci0tCQltZW1jcHkoKGNoYXIgKilwa2JuLT5kICsgMzIgLSB2Y3AtPnZjX3ByaXZrZXlf cHJlZml4X2xlbmd0aCwgdmNwLT52Y19wcml2a2V5X3ByZWZpeCwgdmNwLT52Y19wcml2a2V5X3By ZWZpeF9sZW5ndGgpOwotKwkJdW5zaWduZWQgY2hhciBwa2V5X2FyclszMl07Ci0rCQlhc3NlcnQo Qk5fYm4yYmluKHBrYm4sIHBrZXlfYXJyKSA8IDMzKTsKLSsJCW1lbWNweSgoY2hhciAqKSBwa2V5 X2FyciwgdmNwLT52Y19wcml2a2V5X3ByZWZpeCwgdmNwLT52Y19wcml2a2V5X3ByZWZpeF9sZW5n dGgpOwotKwkJZm9yIChpbnQgaSA9IDA7IGkgPCB2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0 aCAvIDI7IGkrKykgewotKwkJCWludCBrID0gcGtleV9hcnJbaV07Ci0rCQkJcGtleV9hcnJbaV0g PSBwa2V5X2Fyclt2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0aCAtIDEgLSBpXTsKLSsJCQlw a2V5X2Fyclt2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0aCAtIDEgLSBpXSA9IGs7Ci0rCQl9 Ci0rCQlCTl9iaW4yYm4ocGtleV9hcnIsIDMyLCBwa2JuKTsKLSAJCUVDX0tFWV9zZXRfcHJpdmF0 ZV9rZXkocGtleSwgcGtibik7Ci0gCi0gCQlFQ19QT0lOVCAqb3JpZ2luID0gRUNfUE9JTlRfbmV3 KHBncm91cCk7Ci1AQCAtMjI0MCw3ICsyMjQ4LDcgQEAgdmdfb3BlbmNsX2xvb3AodmdfZXhlY19j b250ZXh0X3QgKmFyZykKLSAJCQlzbG90X2J1c3kgPSAxOwotIAkJCXNsb3QgPSAoc2xvdCArIDEp ICUgbnNsb3RzOwotIAotLQkJfSBlbHNlIHsgCi0rCQl9IGVsc2UgewotIAkJCWlmIChzbG90X2J1 c3kpIHsKLSAJCQkJcHRocmVhZF9tdXRleF9sb2NrKCZ2b2NwLT52b2NfbG9jayk7Ci0gCQkJCXdo aWxlICh2b2NwLT52b2Nfb2NsX3Nsb3QgIT0gLTEpIHsKLWRpZmYgLS1naXQgYS92YW5pdHlnZW4u YyBiL3Zhbml0eWdlbi5jCi1pbmRleCA5OTJlNWQ3Li41ZTQ5ZGY3IDEwMDY0NAotLS0tIGEvdmFu aXR5Z2VuLmMKLSsrKyBiL3Zhbml0eWdlbi5jCi1AQCAtMTI5LDcgKzEyOSwxNSBAQCB2Z190aHJl YWRfbG9vcCh2b2lkICphcmcpCi0gCQkJRUNfS0VZX2dlbmVyYXRlX2tleShwa2V5KTsKLSAJCQlp ZiAodmNwLT52Y19wcml2a2V5X3ByZWZpeF9sZW5ndGggPiAwKSB7Ci0gCQkJCUJJR05VTSAqcGti biA9IEJOX2R1cChFQ19LRVlfZ2V0MF9wcml2YXRlX2tleShwa2V5KSk7Ci0tCQkJCW1lbWNweSgo Y2hhciAqKXBrYm4tPmQgKyAzMiAtIHZjcC0+dmNfcHJpdmtleV9wcmVmaXhfbGVuZ3RoLCB2Y3At PnZjX3ByaXZrZXlfcHJlZml4LCB2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0aCk7Ci0rICAg ICAgICB1bnNpZ25lZCBjaGFyIHBrZXlfYXJyWzMyXTsKLSsgICAgICAgIGFzc2VydChCTl9ibjJi aW4ocGtibiwgcGtleV9hcnIpIDwgMzMpOwotKyAgICAgICAgbWVtY3B5KChjaGFyICopIHBrZXlf YXJyLCB2Y3AtPnZjX3ByaXZrZXlfcHJlZml4LCB2Y3AtPnZjX3ByaXZrZXlfcHJlZml4X2xlbmd0 aCk7Ci0rCQkJCWZvciAoaW50IGkgPSAwOyBpIDwgdmNwLT52Y19wcml2a2V5X3ByZWZpeF9sZW5n dGggLyAyOyBpKyspIHsKLSsJCQkJCWludCBrID0gcGtleV9hcnJbaV07Ci0rCQkJCQlwa2V5X2Fy cltpXSA9IHBrZXlfYXJyW3ZjcC0+dmNfcHJpdmtleV9wcmVmaXhfbGVuZ3RoIC0gMSAtIGldOwot KwkJCQkJcGtleV9hcnJbdmNwLT52Y19wcml2a2V5X3ByZWZpeF9sZW5ndGggLSAxIC0gaV0gPSBr OwotKwkJCQl9Ci0rICAgICAgICBCTl9iaW4yYm4ocGtleV9hcnIsIDMyLCBwa2JuKTsKLSAJCQkJ RUNfS0VZX3NldF9wcml2YXRlX2tleShwa2V5LCBwa2JuKTsKLSAKLSAJCQkJRUNfUE9JTlQgKm9y aWdpbiA9IEVDX1BPSU5UX25ldyhwZ3JvdXApOwotQEAgLTEzOTUsNyArMTQwMyw3IEBAIG1haW4o aW50IGFyZ2MsIGNoYXIgKiphcmd2KQotIAkJCQkJYWRkcnR5cGUgPSA2MDsKLSAJCQkJCXByaXZ0 eXBlID0gMTI4OwotIAkJCQkJYnJlYWs7Ci0tCQkJfQkJCQotKwkJCX0KLSAJCQlicmVhazsKLSAK LSAvKkVORCBBTFRDT0lOIEdFTkVSQVRPUiovCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Zhbml0eWdl bi90ZW1wbGF0ZSBiL3NyY3BrZ3MvdmFuaXR5Z2VuL3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCA2MjRhYzg1OWQ1ZDIuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3Zh bml0eWdlbi90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLSMgVGVtcGxh dGUgZmlsZSBmb3IgJ3Zhbml0eWdlbicKLXBrZ25hbWU9dmFuaXR5Z2VuCi12ZXJzaW9uPTEuNTMK LXJldmlzaW9uPTIKLW1ha2VkZXBlbmRzPSJwY3JlLWRldmVsIG9wZW5zc2wtZGV2ZWwiCi1zaG9y dF9kZXNjPSJCaXRjb2luIHZhbml0eSBhZGRyZXNzIGdlbmVyYXRvciIKLW1haW50YWluZXI9Ik9y cGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1saWNlbnNlPSJBR1BMLTMuMC1vci1sYXRl ciIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZXhwbG9pdGFnZW5jeS92YW5pdHlnZW4t cGx1cyIKLWNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2V4cGxv aXRhZ2VuY3kvdmFuaXR5Z2VuLXBsdXMvbWFzdGVyL0NIQU5HRUxPRyIKLWRpc3RmaWxlcz0iaHR0 cHM6Ly9naXRodWIuY29tL2V4cGxvaXRhZ2VuY3kvdmFuaXR5Z2VuLXBsdXMvYXJjaGl2ZS9QTFVT JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT05NzZhOWFmZTJhNDQ3MDU1MWE4YjZiMGRhOTcx MDFhM2EyZTZjNTRjNWEyNmRjODcwYWU3NTViYjJkOGM3MDQxCi0KLWRvX2J1aWxkKCkgewotCW1h a2UgQ0M9JENDIENGTEFHUz0iJENGTEFHUyAkTERGTEFHUyIgJHttYWtlam9ic30KLX0KLWRvX2lu c3RhbGwoKSB7Ci0JdmJpbiB2YW5pdHlnZW4KLQl2YmluIGtleWNvbnYKLQl2bGljZW5zZSBMSUNF TlNFCi19CgpGcm9tIDgxYzRjMjkxNzg4YTM4YTEzNzYzNmZiZWNiMTllZjUxZGI0MWEwODcgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWls LmNvbT4KRGF0ZTogVGh1LCAyNiBKYW4gMjAyMyAxMzo1MToyMiAtMDUwMApTdWJqZWN0OiBbUEFU Q0ggMDcvMTNdIHBqcHJvamVjdDogdXBkYXRlIHRvIDIuMTMKCi0tLQogc3JjcGtncy9wanByb2pl Y3QvdGVtcGxhdGUgfCAxNCArKysrKysrLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0 aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BqcHJvamVjdC90 ZW1wbGF0ZSBiL3NyY3BrZ3MvcGpwcm9qZWN0L3RlbXBsYXRlCmluZGV4IGM5NGVhZDkwZTlkZS4u ODk0NzRlNTdlNzgyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BqcHJvamVjdC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3BqcHJvamVjdC90ZW1wbGF0ZQpAQCAtMiw5ICsyLDggQEAKICMgbm8tdGhpcmQt cGFydHkucGF0Y2ggY29tZXMgZnJvbSBBbHBpbmUsCiAjIGFuZCB0aGlzIHRlbXBsYXRlIGlzIGhl YXZpbHkgYmFzZWQgb24gQWxwaW5lJ3MgQVBLQlVJTEQuCiBwa2duYW1lPXBqcHJvamVjdAotdmVy c2lvbj0yLjgKLXJldmlzaW9uPTUKLWRpc2FibGVfcGFyYWxsZWxfYnVpbGQ9eWVzCit2ZXJzaW9u PTIuMTMKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9h cmdzPSItLWVuYWJsZS1zaGFyZWQgXAogCS0tZW5hYmxlLWxpYnNhbXBsZXJhdGUgXApAQCAtMTcs MTMgKzE2LDE0IEBAIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1zaGFyZWQgXAogIyB3ZWJydGMt YXVkaW8tcHJvY2Vzc2luZywgYnV0IGl0IGRvZXNuJ3QgaGF2ZSB3aGF0IEkgbmVlZC4gIFVzaW5n IHRoZQogIyBidW5kbGVkIHZlcnNpb25zIHdvdWxkIGFsc28gcG9sbHV0ZSBidWlsZCB3aXRoIGxp Ynl1diBhbmQgbGlid2VicnRjICh5dWNrKS4KIG1ha2VkZXBlbmRzPSJvcGVuc3NsLWRldmVsIGFs c2EtbGliLWRldmVsIGxpYmdzbS1kZXZlbCBzcGVleC1kZXZlbCBzcGVleGRzcC1kZXZlbAotCWxp YnNydHAtZGV2ZWwgbGlic2FtcGxlcmF0ZS1kZXZlbCIKKyBsaWJzcnRwLWRldmVsIGxpYnNhbXBs ZXJhdGUtZGV2ZWwiCiBzaG9ydF9kZXNjPSJPcGVuIHNvdXJjZSBTSVAgYW5kIG1lZGlhIHN0YWNr IgogbWFpbnRhaW5lcj0iQ2hyaXN0b3BoZXIgQnJhbm5vbiA8Y2hyaXNAdGhlLWJyYW5ub25zLmNv bT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHA6Ly93d3cucGpz aXAub3JnL3Bqc3VhLmh0bSIKLWRpc3RmaWxlcz0iaHR0cDovL3d3dy5wanNpcC5vcmcvcmVsZWFz ZS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuYnoyIgotY2hlY2tzdW09NTAz ZDBiZDdmOWYxM2RjMTQ5MmFjOWI3MWI3NjFiMTA4OTg1MWZiYjYwOGI5YTEzOTk2ZWRjM2M0MjAw NmY3OQoraG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnBqc2lwLm9yZy8iCitkaXN0ZmlsZXM9Imh0dHBz Oi8vZ2l0aHViLmNvbS9wanNpcC9wanByb2plY3QvYXJjaGl2ZS9yZWZzL3RhZ3MvJHt2ZXJzaW9u fS50YXIuZ3oiCitjaGVja3N1bT00MTc4YmI5ZjU4NjI5OTExMTQ2M2ZjMTZlYTA0ZTQ2MWFkY2E0 YTczZTY0NmY4ZGRlZjYxZWE1M2RhZmE5MmQ5CitkaXNhYmxlX3BhcmFsbGVsX2J1aWxkPXllcwog CiBwcmVfY29uZmlndXJlKCkgewogCWV4cG9ydCBMRD0iJHtDQ30iCgpGcm9tIDExZTEyYWNlMGMx NDllYTg2MGU1M2U4YmFkYjIzZTc2ZjAxY2NlZGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAyNiBKYW4g MjAyMyAxMzo1NDozNSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDgvMTNdIHN0dW5uZWw6IHVwZGF0 ZSB0byA1LjY3CgotLS0KIHNyY3BrZ3Mvc3R1bm5lbC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3N0dW5uZWwvdGVtcGxhdGUgYi9zcmNwa2dzL3N0dW5uZWwvdGVtcGxhdGUKaW5kZXgg OWFkMzUxZTllMTkwLi42M2ZkMzY3NjI5OGUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3R1bm5lbC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3N0dW5uZWwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdzdHVubmVsJwogcGtnbmFtZT1zdHVubmVsCi12ZXJzaW9uPTUu NjYKK3ZlcnNpb249NS42NwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQog Y29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWlwdjYgLS13aXRoLXNzbD0ke1hCUFNfQ1JPU1NfQkFT RX0vdXNyIgpAQCAtMTMsNyArMTMsNyBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vd3d3LnN0dW5uZWwub3JnLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly93d3cu c3R1bm5lbC5vcmcvTkVXUy5odG1sIgogZGlzdGZpbGVzPSJodHRwczovL3d3dy5zdHVubmVsLm9y Zy9kb3dubG9hZHMvc3R1bm5lbC0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTU1ODE3ODcw NGQxYWE1ZjY4ODNhYWM2Y2M1ZDZiYmYyYTU3MTRjOGEwZDJlOTFkYTAzOTI0NjhjZWU5ZjU3OWMK K2NoZWNrc3VtPTMwODY5MzllZTY0MDc1MTZjNTliMGJhM2ZiZjU1NTMzOGY5ZDUyZjQ1OWJjYWI2 MzM3YzBmMDBlOTFlYTg0NTYKIAogcHJlX2NoZWNrKCkgewogCSMgR2l0SHViJ3MgQ0kgZG9lc24n dCBzdXBwb3J0IElQdjYKCkZyb20gNjJiNGQ1ODZmZGU5N2VkNWRlOTRjYTdmNzY4NjIyZTg0OWJi NDI1NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenphbHVu Z2FAZ21haWwuY29tPgpEYXRlOiBUaHUsIDI2IEphbiAyMDIzIDE0OjAzOjIwIC0wNTAwClN1Ympl Y3Q6IFtQQVRDSCAwOS8xM10gdGhyaWZ0OiB1cGRhdGUgZGlzdGZpbGVzLCBidW1wIGZvciBvcGVu c3NsCgotLS0KIHNyY3BrZ3MvdGhyaWZ0L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dGhyaWZ0L3RlbXBsYXRlIGIvc3JjcGtncy90aHJpZnQvdGVtcGxhdGUKaW5kZXggOWFjNGJiNDgx YzMwLi44YjFhMGMzMjQ3ZmQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdGhyaWZ0L3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvdGhyaWZ0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAndGhyaWZ0JwogcGtnbmFtZT10aHJpZnQKIHZlcnNpb249MC4xMy4wCi1yZXZpc2lv bj02CityZXZpc2lvbj03CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJn cz0iLS13aXRob3V0LXB5dGhvbiIKIG1ha2VkZXBlbmRzPSJib29zdC1kZXZlbCBvcGVuc3NsLWRl dmVsIgpAQCAtMTAsNyArMTAsNyBAQCBzaG9ydF9kZXNjPSJBcGFjaGUgVGhyaWZ0IGNvbXBpbGVy IgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9 IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly90aHJpZnQuYXBhY2hlLm9yZy8iCi1kaXN0 ZmlsZXM9Imh0dHA6Ly93d3ctdXMuYXBhY2hlLm9yZy9kaXN0L3RocmlmdC8ke3ZlcnNpb259L3Ro cmlmdC0ke3ZlcnNpb259LnRhci5neiIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9hcmNoaXZlLmFwYWNo ZS5vcmcvZGlzdC90aHJpZnQvJHt2ZXJzaW9ufS90aHJpZnQtJHt2ZXJzaW9ufS50YXIuZ3oiCiBj aGVja3N1bT03YWQzNDhiODgwMzNhZjQ2Y2U0OTE0ODA5N2FmZTM1NGQ1MTNjMWZjYTdjNjA3YjU5 YzMzZWJiNjA2NGI1MTc5CiAKIGlmIFsgIiRYQlBTX1RBUkdFVF9OT19BVE9NSUM4IiBdOyB0aGVu CgpGcm9tIDhlNjM3MzJkZjFhYWY1MThkOWU5YTNkNDBmMDk2NjdhYTU3MzNkMTMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5pY29sb3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4K RGF0ZTogRnJpLCAyNyBKYW4gMjAyMyAxMDoyNTo0NCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMTAv MTNdIGNiYW5nOiB1cGRhdGUgdG8gMS43LjIKCi0tLQogc3JjcGtncy9jYmFuZy90ZW1wbGF0ZSB8 IDEyICsrKysrKy0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NiYW5nL3RlbXBsYXRlIGIvc3JjcGtncy9j YmFuZy90ZW1wbGF0ZQppbmRleCA5MzU3YmRjMGQ3MDkuLmNhOTQ0ZjdjOGI3NCAxMDA2NDQKLS0t IGEvc3JjcGtncy9jYmFuZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2NiYW5nL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2JhbmcnCiBwa2duYW1lPWNiYW5n Ci12ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTEuNy4yCityZXZpc2lvbj0xCiBi dWlsZF9zdHlsZT1zY29ucwogbWFrZV9idWlsZF9hcmdzPSJzaGFyZWRsaWI9MSBzdGF0aWNsaWI9 MSIKIG1ha2VfaW5zdGFsbF9hcmdzPSIke21ha2VfYnVpbGRfYXJnc30iCkBAIC0xNCwxMSArMTQs MTEgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL0NhdWxkcm9u RGV2ZWxvcG1lbnRMTEMvY2JhbmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9DYXVs ZHJvbkRldmVsb3BtZW50TExDL2NiYW5nL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3o+JHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPThhYTVlZmFjZjQxOWI3MTJiNWJkMDE3 MmM5ZDU2MzAxYmRjYmQ0NzdjYjU5MGNlZWMyNWMzNTk1YTE5MmU5YzAKK2NoZWNrc3VtPWMwYzg2 ZGY2MDJmNjVmNzMzZDI3NWRhNzgyYmJlYzNlZGE2NmVlMzU1YmMxYWViNmY3MzYxNzViYTc1MzJh YzEKIAotcG9zdF9leHRyYWN0KCkgewotCXRvdWNoIHRlc3RzL2lvc3RyZWFtVGVzdHMve0MsRGVj fW9tcHJlc3NUZXN0L2Rpc2FibGUKLX0KKyNwb3N0X2V4dHJhY3QoKSB7CisjCXRvdWNoIHRlc3Rz L2lvc3RyZWFtVGVzdHMve0MsRGVjfW9tcHJlc3NUZXN0L2Rpc2FibGUKKyN9CiAKIHBvc3RfYnVp bGQoKSB7CiAJY2QgdGVzdHMKCkZyb20gMDVhYTRlODg0ZWE4NGYwMTMwNGUyYTM4ZjQ2N2JjMjZm YjM2N2NjNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xvcGlhenph bHVuZ2FAZ21haWwuY29tPgpEYXRlOiBGcmksIDI3IEphbiAyMDIzIDEwOjQ1OjIwIC0wNTAwClN1 YmplY3Q6IFtQQVRDSCAxMS8xM10gcG9jbzogdXBkYXRlIHRvIDEuMTIuNAoKLS0tCiBjb21tb24v c2hsaWJzICAgICAgICAgfCAyNiArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogc3JjcGtncy9w b2NvL3RlbXBsYXRlIHwgIDggKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9u cygrKSwgMTcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1v bi9zaGxpYnMKaW5kZXggYTk2NWUxM2RmMmQ0Li42MGZlOWY5Y2Q1MWEgMTAwNjQ0Ci0tLSBhL2Nv bW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtMzAwNywxOSArMzAwNywxOSBAQCBs aWJzaWdyb2suc28uNCBsaWJzaWdyb2stMC41LjBfMQogbGlic2lncm9rY3h4LnNvLjQgbGlic2ln cm9rLTAuNS4wXzEKIGxpYnNpZ3Jva2RlY29kZS5zby40IGxpYnNpZ3Jva2RlY29kZS0wLjUuMF8y CiBsaWJnbHlyLnNvLjEgZ2x5ci0xLjAuOF8xCi1saWJQb2NvSlNPTi5zby42NCBwb2NvLTEuOS40 XzMKLWxpYlBvY29Nb25nb0RCLnNvLjY0IHBvY28tMS45LjRfMwotbGliUG9jb1ppcC5zby42NCBw b2NvLTEuOS40XzMKLWxpYlBvY29EYXRhLnNvLjY0IHBvY28tMS45LjRfMwotbGliUG9jb05ldC5z by42NCBwb2NvLTEuOS40XzMKLWxpYlBvY29EYXRhU1FMaXRlLnNvLjY0IHBvY28tMS45LjRfMwot bGliUG9jb0ZvdW5kYXRpb24uc28uNjQgcG9jby0xLjkuNF8zCi1saWJQb2NvWE1MLnNvLjY0IHBv Y28tMS45LjRfMwotbGliUG9jb1V0aWwuc28uNjQgcG9jby0xLjkuNF8zCi1saWJQb2NvUmVkaXMu c28uNjQgcG9jby0xLjkuNF8zCi1saWJQb2NvRW5jb2RpbmdzLnNvLjY0IHBvY28tMS45LjRfMwot bGliUG9jb05ldFNTTC5zby42NCBwb2NvLTEuOS40XzMKLWxpYlBvY29DcnlwdG8uc28uNjQgcG9j by0xLjkuNF8zCitsaWJQb2NvSlNPTi5zby45NCBwb2NvLTEuMTIuNF8xCitsaWJQb2NvTW9uZ29E Qi5zby45NCBwb2NvLTEuMTIuNF8xCitsaWJQb2NvWmlwLnNvLjk0IHBvY28tMS4xMi40XzEKK2xp YlBvY29EYXRhLnNvLjk0IHBvY28tMS4xMi40XzEKK2xpYlBvY29OZXQuc28uOTQgcG9jby0xLjEy LjRfMQorbGliUG9jb0RhdGFTUUxpdGUuc28uOTQgcG9jby0xLjEyLjRfMQorbGliUG9jb0ZvdW5k YXRpb24uc28uOTQgcG9jby0xLjEyLjRfMQorbGliUG9jb1hNTC5zby45NCBwb2NvLTEuMTIuNF8x CitsaWJQb2NvVXRpbC5zby45NCBwb2NvLTEuMTIuNF8xCitsaWJQb2NvUmVkaXMuc28uOTQgcG9j by0xLjEyLjRfMQorbGliUG9jb0VuY29kaW5ncy5zby45NCBwb2NvLTEuMTIuNF8xCitsaWJQb2Nv TmV0U1NMLnNvLjk0IHBvY28tMS4xMi40XzEKK2xpYlBvY29DcnlwdG8uc28uOTQgcG9jby0xLjEy LjRfMQogbGliUHRleC5zbyBwdGV4LTIuMy4yXzEKIGxpYm9wZW5ibGFzLnNvLjAgb3BlbmJsYXMt MC4yLjE5XzEKIGxpYnJ0YXVkaW8uc28uNiBydGF1ZGlvLTUuMS4wXzEKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcG9jby90ZW1wbGF0ZSBiL3NyY3BrZ3MvcG9jby90ZW1wbGF0ZQppbmRleCAwMDg1MzZi NjcxMjEuLjk4M2ZmZTA2OWUzYiAxMDA2NDQKLS0tIGEvc3JjcGtncy9wb2NvL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvcG9jby90ZW1wbGF0ZQpAQCAtMSwxNiArMSwxNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncG9jbycKIHBrZ25hbWU9cG9jbwotdmVyc2lvbj0xLjkuNAotcmV2aXNpb249Mwor dmVyc2lvbj0xLjEyLjQKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVf YXJncz0iLURQT0NPX1VOQlVORExFRD1PTiIKLW1ha2VkZXBlbmRzPSJvcGVuc3NsLWRldmVsIHps aWItZGV2ZWwgcGNyZS1kZXZlbCBleHBhdC1kZXZlbCBzcWxpdGUtZGV2ZWwiCittYWtlZGVwZW5k cz0ib3BlbnNzbC1kZXZlbCB6bGliLWRldmVsIHBjcmUyLWRldmVsIGV4cGF0LWRldmVsIHNxbGl0 ZS1kZXZlbCIKIHNob3J0X2Rlc2M9IkMrKyBjbGFzcyBsaWJyYXJpZXMgZm9yIGJ1aWxkaW5nIG5l dHdvcmstYmFzZWQgYXBwbGljYXRpb25zIgogbWFpbnRhaW5lcj0iSnVsaWVuIERlaG9zIDxkZWhv c0B1bml2LWxpdHRvcmFsLmZyPiIKIGxpY2Vuc2U9IkJTTC0xLjAiCiBob21lcGFnZT0iaHR0cHM6 Ly9wb2NvcHJvamVjdC5vcmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vcG9jb3Byb2plY3Qub3JnL3Jl bGVhc2VzLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0tYWxsLnRh ci5neiIKLWNoZWNrc3VtPWViMzRmMjU3YjExMjQwYTcxMWVlNTA1ZjFkODBjNzU0YTgwYTk5MGFl YjQ4ZDhkOTM0MDc4ODRkZjI4OGZkNzcKK2NoZWNrc3VtPTRjMzU4NGRhYTViMGU5NzNmMjY4NjU0 ZGJlYjExNzFlYzc2MjFlMzU4YjJiNjQzNjNjZDFhYmQ1NThhNjg3NzcKIAogcG9zdF9pbnN0YWxs KCkgewogCXZsaWNlbnNlIExJQ0VOU0UKCkZyb20gNDZlNzE4MmVmMTI4YmY0NWI5NzQ3NzdiYzI5 MDc5MmRlODNiMWY3NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogZGt3byA8bmljb2xv cGlhenphbHVuZ2FAZ21haWwuY29tPgpEYXRlOiBGcmksIDI3IEphbiAyMDIzIDEwOjQ1OjQzIC0w NTAwClN1YmplY3Q6IFtQQVRDSCAxMi8xM10gcmVtd2hhcmVhZDogYnVtcCBmb3IgcG9jbwoKLS0t CiBzcmNwa2dzL3JlbXdoYXJlYWQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbXdoYXJl YWQvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbXdoYXJlYWQvdGVtcGxhdGUKaW5kZXggZTcyYWIwNjEz MWU0Li40ZmI0YzU3NGIzZWMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmVtd2hhcmVhZC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3JlbXdoYXJlYWQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdyZW13aGFyZWFkJwogcGtnbmFtZT1yZW13aGFyZWFkCiB2ZXJzaW9u PTAuMTAuMAotcmV2aXNpb249NAorcmV2aXNpb249NQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3Rt YWtlZGVwZW5kcz0icG9jby1kZXZlbCBhc2NpaWRvYyBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9 InBvY28tZGV2ZWwgYm9vc3QtZGV2ZWwiCgpGcm9tIGYyMDIyZTdjNDkzMTI1YWYyM2FiOTQ1OTA5 ZDU3ZjZkNTE4NzE4YTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGRrd28gPG5pY29s b3BpYXp6YWx1bmdhQGdtYWlsLmNvbT4KRGF0ZTogU2F0LCAyOCBKYW4gMjAyMyAxNjo1ODozMiAt MDUwMApTdWJqZWN0OiBbUEFUQ0ggMTMvMTNdIGdpdC1jcnlwdDogdXBkYXRlIHRvIDAuNy4wLCBh ZGQgQ1hYRkxBRyBmb3Igb3BlbnNzbDMKCi0tLQogc3JjcGtncy9naXQtY3J5cHQvdGVtcGxhdGUg fCAxMCArKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ2l0LWNyeXB0L3RlbXBsYXRlIGIvc3JjcGtn cy9naXQtY3J5cHQvdGVtcGxhdGUKaW5kZXggZjVjNGM3OWI2NjRkLi4xOGIwZTBmNzZhNTggMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZ2l0LWNyeXB0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2l0LWNy eXB0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2l0LWNy eXB0JwogcGtnbmFtZT1naXQtY3J5cHQKLXZlcnNpb249MC42LjAKLXJldmlzaW9uPTgKK3ZlcnNp b249MC43LjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogbWFrZV91c2Vf ZW52PXllcwogbWFrZV9idWlsZF9hcmdzPSJFTkFCTEVfTUFOPXllcyIKQEAgLTEzLDcgKzEzLDEx IEBAIG1haW50YWluZXI9IkFuZHkgQ29iYXVnaCA8YW5kcmV3Y29iYXVnaEBnbWFpbC5jb20+Igog bGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5hZ3dhLm5h bWUvcHJvamVjdHMvZ2l0LWNyeXB0LyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL0FH V0EvZ2l0LWNyeXB0L2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03NzdjMGM3 YWFkYmJjNzU4YjY5YWZmMTMzOWNhNjE2OTcwMTFlZjdiOTJmMWQxZWU5NTE4YThlZTc3MDJiYjc4 CitjaGVja3N1bT0yMjEwYTg5NTg4MTY5YWU5YTU0OTg4YzdmZGQ5NzE3MzMzZjBjNjA1M2ZmNzA0 ZDMzNTYzMWEzODdiZDNiY2ZmCisKK2RvX2J1aWxkKCkgeworCW1ha2UgQ1hYRkxBR1M9IiRDWFhG TEFHUyAtRE9QRU5TU0xfQVBJX0NPTVBBVD0weDMwMDAwMDAwTCIKK30KIAogcG9zdF9pbnN0YWxs KCkgewogCXZkb2MgUkVBRE1FCg== --===============0623819678109926993==--