From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Tue, 29 Jun 2021 07:10:29 +0200 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1ly60z-0007BY-Pp for lore@lore.pengutronix.de; Tue, 29 Jun 2021 07:10:29 +0200 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1ly60z-00072F-DA; Tue, 29 Jun 2021 07:10:29 +0200 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ly5zk-0005dR-3T; Tue, 29 Jun 2021 07:09:12 +0200 Received: from [2a0a:edc0:0:1101:1d::39] (helo=dude03.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1ly5zj-0005cF-K0; Tue, 29 Jun 2021 07:09:11 +0200 Received: from mol by dude03.red.stw.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1ly5zj-00AaVi-H9; Tue, 29 Jun 2021 07:09:11 +0200 From: Michael Olbrich To: ptxdist@pengutronix.de Date: Tue, 29 Jun 2021 07:09:11 +0200 Message-Id: <20210629050911.2523583-1-m.olbrich@pengutronix.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210616161655.15480-2-rhi@pengutronix.de> References: <20210616161655.15480-2-rhi@pengutronix.de> MIME-Version: 1.0 Subject: Re: [ptxdist] [APPLIED] ima-evm-utils: version bump 1.1 -> 1.3.2 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: Roland Hieber Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false VGhhbmtzLCBhcHBsaWVkIGFzIDEwMjQ0NTNkNjRmYmFlN2ZlYzZiNzk0MmJiYzU1NzgwNTEyNmRj NTMuCgpNaWNoYWVsCgpbc2VudCBmcm9tIHBvc3QtcmVjZWl2ZSBob29rXQoKT24gVHVlLCAyOSBK dW4gMjAyMSAwNzowOToxMSArMDIwMCwgUm9sYW5kIEhpZWJlciA8cmhpQHBlbmd1dHJvbml4LmRl PiB3cm90ZToKPiBDaGFuZ2VzIHRvIHRoZSBwYXRjaCBxdWV1ZToKPiAKPiAqIChvbGQgMDAwMikg Ik1ha2VmaWxlLmFtOiByZW5hbWUgSU5DTFVERVMgLT4gQU1fQ1BQRkxBR1MiOgo+ICAgcmVwbGFj ZWQgYnkgdXBzdHJlYW0gY29tbWl0IDhhY2JhZTU5OGIzOWE0MjFiNWQwICgicmVwbGFjZSBJTkNM VURFUwo+ICAgd2l0aCBBTV9DUFBGTEFHUyIpCj4gCj4gKiAob2xkIDAwMDYpICJ1c2UgRVZQX01B WF9NRF9TSVpFIGZvciBoYXNoIHNpemUgaW5zdGVhZCBvZiBvcGVuIOKApiI6Cj4gICByZXBsYWNl ZCBieSB1cHN0cmVhbSBjb21taXQgMWQ5YzI3OTI3OTMyZjJlNzUwZTMgKCJEZWZpbmUgaGFzaCBh bmQgc2lnCj4gICBidWZmZXIgc2l6ZXMgYW5kIGFkZCBhc3NlcnRzIikKPiAKPiAqIChvbGQgMDAw OCkgImV2bWN0bDogYWRkIHBhcmFtZXRlciAtZSB0byBzZXQgZXZtIGhhc2ggYWxnbyI6Cj4gICBy ZXBsYWNlZCBieSB1cHN0cmVhbSBjb21taXQgYWUxMzE5ZWVhYmQ2ZTA3OTgwMDMgKCJSZW1vdmUg aGFyZGNvZGluZwo+ICAgb2YgU0hBMSBpbiBFVk0gc2lnbmF0dXJlcyIpLCB3aGljaCB1c2VzIHRo ZSBhbHJlYWR5IGV4aXN0aW5nIC1hCj4gICBwYXJhbWV0ZXIgZm9yIHRoaXMgZnVuY3Rpb25hbGl0 eSBub3cgdG9vLgo+IAo+ICogKG9sZCAwMDA5KSAiZXZtY3RsOiBhZGQgc3VwcG9ydCBmb3Igb2Zm bGluZSBpbWFnZSBwcmVwYXJhdGlvbiI6Cj4gICBwb3J0IHRoZSByZWZhY3RvcmluZyBmcm9tIHVw c3RyZWFtIGNvbW1pdCBjMzE3ZDQ2MThmOTJkNGRkNjUKPiAgICgiTmFtZXNwYWNlIHNvbWUgdG9v IGdlbmVyaWMgb2JqZWN0IG5hbWVzIikuIEFsc28gX0dOVV9TT1VSQ0UgaXMgbm93Cj4gICBhbHJl YWR5IGRlZmluZWQgYnkgY29uZmlndXJlLCBhbmQgd2lsbCBnZW5lcmF0ZSBhIHdhcm5pbmcgd2hl bgo+ICAgcmVkZWZpbmVkLCBzbyBkcm9wIGl0cyBkZWZpbml0aW9uIGhlcmUuCj4gCj4gKiAob2xk IDAwMTEsIG5ldyAwMDA5KSAiSEFDSzogZG9uJ3QgZ2VuZXJhdGUgdGhlIG1hbiBwYWdlIjoKPiAg IGV4cGFuZCBwYXRjaCB0byBtYWtlIHN1cmUgdGhlIG1hbnBhZ2VzIGFyZSByZWFsbHkgbm90IGJ1 aWx0IGFuZAo+ICAgZ2VuZXJhdGUgYW4gZXJyb3IgbG9va2luZyBmb3IgImFzY2lpZG9jIiwgZXZl biB3aGVuIHRoZSBYU0wgc3R5bGVzaGVldAo+ICAgaXMgZGV0ZWN0ZWQgb24gdGhlIGJ1aWxkIGhv c3QKPiAKPiAqIChvbGQgMDAxMykgImV2bWN0bDogdXNlIGNvcnJlY3QgaW5jbHVkZSBmb3IgeGF0 dHIuaCI6Cj4gICByZXBsYWNlZCBieSB1cHN0cmVhbSBjb21taXQgNmFlYTU0ZDJhZDIyODdiM2U4 ODkgKCJldm1jdGw6IHVzZSBjb3JyZWN0Cj4gICBpbmNsdWRlIGZvciB4YXR0ci5oIikKPiAKPiBM aW5rOiBodHRwczovL3NmLm5ldC9wL2xpbnV4LWltYS9pbWEtZXZtLXV0aWxzL2NpLzhhY2JhZTU5 OGIzOWE0MjFiNWQwCj4gTGluazogaHR0cHM6Ly9zZi5uZXQvcC9saW51eC1pbWEvaW1hLWV2bS11 dGlscy9jaS8xZDljMjc5Mjc5MzJmMmU3NTBlMwo+IExpbms6IGh0dHBzOi8vc2YubmV0L3AvbGlu dXgtaW1hL2ltYS1ldm0tdXRpbHMvY2kvYWUxMzE5ZWVhYmQ2ZTA3OTgwMDMKPiBMaW5rOiBodHRw czovL3NmLm5ldC9wL2xpbnV4LWltYS9pbWEtZXZtLXV0aWxzL2NpL2MzMTdkNDYxOGY5MmQ0ZGQ2 NTcwCj4gTGluazogaHR0cHM6Ly9zZi5uZXQvcC9saW51eC1pbWEvaW1hLWV2bS11dGlscy9jaS82 YWVhNTRkMmFkMjI4N2IzZTg4OQo+IFNpZ25lZC1vZmYtYnk6IFJvbGFuZCBIaWViZXIgPHJoaUBw ZW5ndXRyb25peC5kZT4KPiBNZXNzYWdlLUlkOiA8MjAyMTA2MTYxNjE2NTUuMTU0ODAtMi1yaGlA cGVuZ3V0cm9uaXguZGU+Cj4gW21vbDogdXNlIGFjX2N2X3BhdGhfWE1MQ0FUQUxPRz0gaW5zdGVh ZCBvZiBhIHBhdGNoLCBkcm9wIHVubmVjZXNzYXJ5IElOU1RBTEwgcGF0Y2hdCj4gW21vbDogbWFr ZSBzdXJlIGxpYnRzczItZXN5cy9saWJ0c3MyLXJjIGFyZSBub3QgdXNlZF0KPiBTaWduZWQtb2Zm LWJ5OiBNaWNoYWVsIE9sYnJpY2ggPG0ub2xicmljaEBwZW5ndXRyb25peC5kZT4KPiAKPiBkaWZm IC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDAxLUlOU1RBTEwtcmVtb3ZlLWZp bGUtYXQtaXQtcy1hdXRvZ2VuZXJhdGVkLWJ5LWF1dG90b28ucGF0Y2ggYi9wYXRjaGVzL2ltYS1l dm0tdXRpbHMtMS4xLzAwMDEtSU5TVEFMTC1yZW1vdmUtZmlsZS1hdC1pdC1zLWF1dG9nZW5lcmF0 ZWQtYnktYXV0b3Rvby5wYXRjaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IGMw MzUxOTdkOWNjNy4uMDAwMDAwMDAwMDAwCj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEu MS8wMDAxLUlOU1RBTEwtcmVtb3ZlLWZpbGUtYXQtaXQtcy1hdXRvZ2VuZXJhdGVkLWJ5LWF1dG90 b28ucGF0Y2gKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMzg5ICswLDAgQEAKPiAtRnJvbTogTWFy YyBLbGVpbmUtQnVkZGUgPG1rbEBwZW5ndXRyb25peC5kZT4KPiAtRGF0ZTogV2VkLCAxOCBOb3Yg MjAxNSAxNToxNToxNSArMDEwMAo+IC1TdWJqZWN0OiBbUEFUQ0hdIElOU1RBTEw6IHJlbW92ZSBm aWxlLCBhdCBpdCdzIGF1dG9nZW5lcmF0ZWQgYnkgYXV0b3Rvb2xzCj4gLQo+IC1UaGlzIHBhdGNo IHJlbW92ZSB0aGUgZmlsZSAiSU5TVEFMTCIgd2hpY2ggaXMgYXV0b2dlbmVyYXRlZCBkdXJpbmcK PiAtLi9hdXRvZ2VuLnNoLgo+IC0KPiAtU2lnbmVkLW9mZi1ieTogTWFyYyBLbGVpbmUtQnVkZGUg PG1rbEBwZW5ndXRyb25peC5kZT4KPiAtLS0tCj4gLSBJTlNUQUxMIHwgMzcwIC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAt IDEgZmlsZSBjaGFuZ2VkLCAzNzAgZGVsZXRpb25zKC0pCj4gLSBkZWxldGUgbW9kZSAxMDA2NDQg SU5TVEFMTAo+IC0KPiAtZGlmZiAtLWdpdCBhL0lOU1RBTEwgYi9JTlNUQUxMCj4gLWRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAo+IC1pbmRleCAwMDdlOTM5NmQwYTIuLjAwMDAwMDAwMDAwMAo+IC0t LS0gYS9JTlNUQUxMCj4gLSsrKyAvZGV2L251bGwKPiAtQEAgLTEsMzcwICswLDAgQEAKPiAtLUlu c3RhbGxhdGlvbiBJbnN0cnVjdGlvbnMKPiAtLSoqKioqKioqKioqKioqKioqKioqKioqKioKPiAt LQo+IC0tQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYsIDE5OTktMjAwMiwgMjAwNC0yMDEzIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwKPiAtLUluYy4KPiAtLQo+IC0tICAgQ29weWluZyBhbmQgZGlz dHJpYnV0aW9uIG9mIHRoaXMgZmlsZSwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKPiAt LWFyZSBwZXJtaXR0ZWQgaW4gYW55IG1lZGl1bSB3aXRob3V0IHJveWFsdHkgcHJvdmlkZWQgdGhl IGNvcHlyaWdodAo+IC0tbm90aWNlIGFuZCB0aGlzIG5vdGljZSBhcmUgcHJlc2VydmVkLiAgVGhp cyBmaWxlIGlzIG9mZmVyZWQgYXMtaXMsCj4gLS13aXRob3V0IHdhcnJhbnR5IG9mIGFueSBraW5k Lgo+IC0tCj4gLS1CYXNpYyBJbnN0YWxsYXRpb24KPiAtLT09PT09PT09PT09PT09PT09PQo+IC0t Cj4gLS0gICBCcmllZmx5LCB0aGUgc2hlbGwgY29tbWFuZHMgYC4vY29uZmlndXJlOyBtYWtlOyBt YWtlIGluc3RhbGwnIHNob3VsZAo+IC0tY29uZmlndXJlLCBidWlsZCwgYW5kIGluc3RhbGwgdGhp cyBwYWNrYWdlLiAgVGhlIGZvbGxvd2luZwo+IC0tbW9yZS1kZXRhaWxlZCBpbnN0cnVjdGlvbnMg YXJlIGdlbmVyaWM7IHNlZSB0aGUgYFJFQURNRScgZmlsZSBmb3IKPiAtLWluc3RydWN0aW9ucyBz cGVjaWZpYyB0byB0aGlzIHBhY2thZ2UuICBTb21lIHBhY2thZ2VzIHByb3ZpZGUgdGhpcwo+IC0t YElOU1RBTEwnIGZpbGUgYnV0IGRvIG5vdCBpbXBsZW1lbnQgYWxsIG9mIHRoZSBmZWF0dXJlcyBk b2N1bWVudGVkCj4gLS1iZWxvdy4gIFRoZSBsYWNrIG9mIGFuIG9wdGlvbmFsIGZlYXR1cmUgaW4g YSBnaXZlbiBwYWNrYWdlIGlzIG5vdAo+IC0tbmVjZXNzYXJpbHkgYSBidWcuICBNb3JlIHJlY29t bWVuZGF0aW9ucyBmb3IgR05VIHBhY2thZ2VzIGNhbiBiZSBmb3VuZAo+IC0taW4gKm5vdGUgTWFr ZWZpbGUgQ29udmVudGlvbnM6IChzdGFuZGFyZHMpTWFrZWZpbGUgQ29udmVudGlvbnMuCj4gLS0K PiAtLSAgIFRoZSBgY29uZmlndXJlJyBzaGVsbCBzY3JpcHQgYXR0ZW1wdHMgdG8gZ3Vlc3MgY29y cmVjdCB2YWx1ZXMgZm9yCj4gLS12YXJpb3VzIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIHVz ZWQgZHVyaW5nIGNvbXBpbGF0aW9uLiAgSXQgdXNlcwo+IC0tdGhvc2UgdmFsdWVzIHRvIGNyZWF0 ZSBhIGBNYWtlZmlsZScgaW4gZWFjaCBkaXJlY3Rvcnkgb2YgdGhlIHBhY2thZ2UuCj4gLS1JdCBt YXkgYWxzbyBjcmVhdGUgb25lIG9yIG1vcmUgYC5oJyBmaWxlcyBjb250YWluaW5nIHN5c3RlbS1k ZXBlbmRlbnQKPiAtLWRlZmluaXRpb25zLiAgRmluYWxseSwgaXQgY3JlYXRlcyBhIHNoZWxsIHNj cmlwdCBgY29uZmlnLnN0YXR1cycgdGhhdAo+IC0teW91IGNhbiBydW4gaW4gdGhlIGZ1dHVyZSB0 byByZWNyZWF0ZSB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uLCBhbmQgYQo+IC0tZmlsZSBgY29u ZmlnLmxvZycgY29udGFpbmluZyBjb21waWxlciBvdXRwdXQgKHVzZWZ1bCBtYWlubHkgZm9yCj4g LS1kZWJ1Z2dpbmcgYGNvbmZpZ3VyZScpLgo+IC0tCj4gLS0gICBJdCBjYW4gYWxzbyB1c2UgYW4g b3B0aW9uYWwgZmlsZSAodHlwaWNhbGx5IGNhbGxlZCBgY29uZmlnLmNhY2hlJwo+IC0tYW5kIGVu YWJsZWQgd2l0aCBgLS1jYWNoZS1maWxlPWNvbmZpZy5jYWNoZScgb3Igc2ltcGx5IGAtQycpIHRo YXQgc2F2ZXMKPiAtLXRoZSByZXN1bHRzIG9mIGl0cyB0ZXN0cyB0byBzcGVlZCB1cCByZWNvbmZp Z3VyaW5nLiAgQ2FjaGluZyBpcwo+IC0tZGlzYWJsZWQgYnkgZGVmYXVsdCB0byBwcmV2ZW50IHBy b2JsZW1zIHdpdGggYWNjaWRlbnRhbCB1c2Ugb2Ygc3RhbGUKPiAtLWNhY2hlIGZpbGVzLgo+IC0t Cj4gLS0gICBJZiB5b3UgbmVlZCB0byBkbyB1bnVzdWFsIHRoaW5ncyB0byBjb21waWxlIHRoZSBw YWNrYWdlLCBwbGVhc2UgdHJ5Cj4gLS10byBmaWd1cmUgb3V0IGhvdyBgY29uZmlndXJlJyBjb3Vs ZCBjaGVjayB3aGV0aGVyIHRvIGRvIHRoZW0sIGFuZCBtYWlsCj4gLS1kaWZmcyBvciBpbnN0cnVj dGlvbnMgdG8gdGhlIGFkZHJlc3MgZ2l2ZW4gaW4gdGhlIGBSRUFETUUnIHNvIHRoZXkgY2FuCj4g LS1iZSBjb25zaWRlcmVkIGZvciB0aGUgbmV4dCByZWxlYXNlLiAgSWYgeW91IGFyZSB1c2luZyB0 aGUgY2FjaGUsIGFuZCBhdAo+IC0tc29tZSBwb2ludCBgY29uZmlnLmNhY2hlJyBjb250YWlucyBy ZXN1bHRzIHlvdSBkb24ndCB3YW50IHRvIGtlZXAsIHlvdQo+IC0tbWF5IHJlbW92ZSBvciBlZGl0 IGl0Lgo+IC0tCj4gLS0gICBUaGUgZmlsZSBgY29uZmlndXJlLmFjJyAob3IgYGNvbmZpZ3VyZS5p bicpIGlzIHVzZWQgdG8gY3JlYXRlCj4gLS1gY29uZmlndXJlJyBieSBhIHByb2dyYW0gY2FsbGVk IGBhdXRvY29uZicuICBZb3UgbmVlZCBgY29uZmlndXJlLmFjJyBpZgo+IC0teW91IHdhbnQgdG8g Y2hhbmdlIGl0IG9yIHJlZ2VuZXJhdGUgYGNvbmZpZ3VyZScgdXNpbmcgYSBuZXdlciB2ZXJzaW9u Cj4gLS1vZiBgYXV0b2NvbmYnLgo+IC0tCj4gLS0gICBUaGUgc2ltcGxlc3Qgd2F5IHRvIGNvbXBp bGUgdGhpcyBwYWNrYWdlIGlzOgo+IC0tCj4gLS0gIDEuIGBjZCcgdG8gdGhlIGRpcmVjdG9yeSBj b250YWluaW5nIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGNvZGUgYW5kIHR5cGUKPiAtLSAgICAgYC4v Y29uZmlndXJlJyB0byBjb25maWd1cmUgdGhlIHBhY2thZ2UgZm9yIHlvdXIgc3lzdGVtLgo+IC0t Cj4gLS0gICAgIFJ1bm5pbmcgYGNvbmZpZ3VyZScgbWlnaHQgdGFrZSBhIHdoaWxlLiAgV2hpbGUg cnVubmluZywgaXQgcHJpbnRzCj4gLS0gICAgIHNvbWUgbWVzc2FnZXMgdGVsbGluZyB3aGljaCBm ZWF0dXJlcyBpdCBpcyBjaGVja2luZyBmb3IuCj4gLS0KPiAtLSAgMi4gVHlwZSBgbWFrZScgdG8g Y29tcGlsZSB0aGUgcGFja2FnZS4KPiAtLQo+IC0tICAzLiBPcHRpb25hbGx5LCB0eXBlIGBtYWtl IGNoZWNrJyB0byBydW4gYW55IHNlbGYtdGVzdHMgdGhhdCBjb21lIHdpdGgKPiAtLSAgICAgdGhl IHBhY2thZ2UsIGdlbmVyYWxseSB1c2luZyB0aGUganVzdC1idWlsdCB1bmluc3RhbGxlZCBiaW5h cmllcy4KPiAtLQo+IC0tICA0LiBUeXBlIGBtYWtlIGluc3RhbGwnIHRvIGluc3RhbGwgdGhlIHBy b2dyYW1zIGFuZCBhbnkgZGF0YSBmaWxlcyBhbmQKPiAtLSAgICAgZG9jdW1lbnRhdGlvbi4gIFdo ZW4gaW5zdGFsbGluZyBpbnRvIGEgcHJlZml4IG93bmVkIGJ5IHJvb3QsIGl0IGlzCj4gLS0gICAg IHJlY29tbWVuZGVkIHRoYXQgdGhlIHBhY2thZ2UgYmUgY29uZmlndXJlZCBhbmQgYnVpbHQgYXMg YSByZWd1bGFyCj4gLS0gICAgIHVzZXIsIGFuZCBvbmx5IHRoZSBgbWFrZSBpbnN0YWxsJyBwaGFz ZSBleGVjdXRlZCB3aXRoIHJvb3QKPiAtLSAgICAgcHJpdmlsZWdlcy4KPiAtLQo+IC0tICA1LiBP cHRpb25hbGx5LCB0eXBlIGBtYWtlIGluc3RhbGxjaGVjaycgdG8gcmVwZWF0IGFueSBzZWxmLXRl c3RzLCBidXQKPiAtLSAgICAgdGhpcyB0aW1lIHVzaW5nIHRoZSBiaW5hcmllcyBpbiB0aGVpciBm aW5hbCBpbnN0YWxsZWQgbG9jYXRpb24uCj4gLS0gICAgIFRoaXMgdGFyZ2V0IGRvZXMgbm90IGlu c3RhbGwgYW55dGhpbmcuICBSdW5uaW5nIHRoaXMgdGFyZ2V0IGFzIGEKPiAtLSAgICAgcmVndWxh ciB1c2VyLCBwYXJ0aWN1bGFybHkgaWYgdGhlIHByaW9yIGBtYWtlIGluc3RhbGwnIHJlcXVpcmVk Cj4gLS0gICAgIHJvb3QgcHJpdmlsZWdlcywgdmVyaWZpZXMgdGhhdCB0aGUgaW5zdGFsbGF0aW9u IGNvbXBsZXRlZAo+IC0tICAgICBjb3JyZWN0bHkuCj4gLS0KPiAtLSAgNi4gWW91IGNhbiByZW1v dmUgdGhlIHByb2dyYW0gYmluYXJpZXMgYW5kIG9iamVjdCBmaWxlcyBmcm9tIHRoZQo+IC0tICAg ICBzb3VyY2UgY29kZSBkaXJlY3RvcnkgYnkgdHlwaW5nIGBtYWtlIGNsZWFuJy4gIFRvIGFsc28g cmVtb3ZlIHRoZQo+IC0tICAgICBmaWxlcyB0aGF0IGBjb25maWd1cmUnIGNyZWF0ZWQgKHNvIHlv dSBjYW4gY29tcGlsZSB0aGUgcGFja2FnZSBmb3IKPiAtLSAgICAgYSBkaWZmZXJlbnQga2luZCBv ZiBjb21wdXRlciksIHR5cGUgYG1ha2UgZGlzdGNsZWFuJy4gIFRoZXJlIGlzCj4gLS0gICAgIGFs c28gYSBgbWFrZSBtYWludGFpbmVyLWNsZWFuJyB0YXJnZXQsIGJ1dCB0aGF0IGlzIGludGVuZGVk IG1haW5seQo+IC0tICAgICBmb3IgdGhlIHBhY2thZ2UncyBkZXZlbG9wZXJzLiAgSWYgeW91IHVz ZSBpdCwgeW91IG1heSBoYXZlIHRvIGdldAo+IC0tICAgICBhbGwgc29ydHMgb2Ygb3RoZXIgcHJv Z3JhbXMgaW4gb3JkZXIgdG8gcmVnZW5lcmF0ZSBmaWxlcyB0aGF0IGNhbWUKPiAtLSAgICAgd2l0 aCB0aGUgZGlzdHJpYnV0aW9uLgo+IC0tCj4gLS0gIDcuIE9mdGVuLCB5b3UgY2FuIGFsc28gdHlw ZSBgbWFrZSB1bmluc3RhbGwnIHRvIHJlbW92ZSB0aGUgaW5zdGFsbGVkCj4gLS0gICAgIGZpbGVz IGFnYWluLiAgSW4gcHJhY3RpY2UsIG5vdCBhbGwgcGFja2FnZXMgaGF2ZSB0ZXN0ZWQgdGhhdAo+ IC0tICAgICB1bmluc3RhbGxhdGlvbiB3b3JrcyBjb3JyZWN0bHksIGV2ZW4gdGhvdWdoIGl0IGlz IHJlcXVpcmVkIGJ5IHRoZQo+IC0tICAgICBHTlUgQ29kaW5nIFN0YW5kYXJkcy4KPiAtLQo+IC0t ICA4LiBTb21lIHBhY2thZ2VzLCBwYXJ0aWN1bGFybHkgdGhvc2UgdGhhdCB1c2UgQXV0b21ha2Us IHByb3ZpZGUgYG1ha2UKPiAtLSAgICAgZGlzdGNoZWNrJywgd2hpY2ggY2FuIGJ5IHVzZWQgYnkg ZGV2ZWxvcGVycyB0byB0ZXN0IHRoYXQgYWxsIG90aGVyCj4gLS0gICAgIHRhcmdldHMgbGlrZSBg bWFrZSBpbnN0YWxsJyBhbmQgYG1ha2UgdW5pbnN0YWxsJyB3b3JrIGNvcnJlY3RseS4KPiAtLSAg ICAgVGhpcyB0YXJnZXQgaXMgZ2VuZXJhbGx5IG5vdCBydW4gYnkgZW5kIHVzZXJzLgo+IC0tCj4g LS1Db21waWxlcnMgYW5kIE9wdGlvbnMKPiAtLT09PT09PT09PT09PT09PT09PT09PQo+IC0tCj4g LS0gICBTb21lIHN5c3RlbXMgcmVxdWlyZSB1bnVzdWFsIG9wdGlvbnMgZm9yIGNvbXBpbGF0aW9u IG9yIGxpbmtpbmcgdGhhdAo+IC0tdGhlIGBjb25maWd1cmUnIHNjcmlwdCBkb2VzIG5vdCBrbm93 IGFib3V0LiAgUnVuIGAuL2NvbmZpZ3VyZSAtLWhlbHAnCj4gLS1mb3IgZGV0YWlscyBvbiBzb21l IG9mIHRoZSBwZXJ0aW5lbnQgZW52aXJvbm1lbnQgdmFyaWFibGVzLgo+IC0tCj4gLS0gICBZb3Ug Y2FuIGdpdmUgYGNvbmZpZ3VyZScgaW5pdGlhbCB2YWx1ZXMgZm9yIGNvbmZpZ3VyYXRpb24gcGFy YW1ldGVycwo+IC0tYnkgc2V0dGluZyB2YXJpYWJsZXMgaW4gdGhlIGNvbW1hbmQgbGluZSBvciBp biB0aGUgZW52aXJvbm1lbnQuICBIZXJlCj4gLS1pcyBhbiBleGFtcGxlOgo+IC0tCj4gLS0gICAg IC4vY29uZmlndXJlIENDPWM5OSBDRkxBR1M9LWcgTElCUz0tbHBvc2l4Cj4gLS0KPiAtLSAgICpO b3RlIERlZmluaW5nIFZhcmlhYmxlczo6LCBmb3IgbW9yZSBkZXRhaWxzLgo+IC0tCj4gLS1Db21w aWxpbmcgRm9yIE11bHRpcGxlIEFyY2hpdGVjdHVyZXMKPiAtLT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQo+IC0tCj4gLS0gICBZb3UgY2FuIGNvbXBpbGUgdGhlIHBhY2thZ2Ug Zm9yIG1vcmUgdGhhbiBvbmUga2luZCBvZiBjb21wdXRlciBhdCB0aGUKPiAtLXNhbWUgdGltZSwg YnkgcGxhY2luZyB0aGUgb2JqZWN0IGZpbGVzIGZvciBlYWNoIGFyY2hpdGVjdHVyZSBpbiB0aGVp cgo+IC0tb3duIGRpcmVjdG9yeS4gIFRvIGRvIHRoaXMsIHlvdSBjYW4gdXNlIEdOVSBgbWFrZScu ICBgY2QnIHRvIHRoZQo+IC0tZGlyZWN0b3J5IHdoZXJlIHlvdSB3YW50IHRoZSBvYmplY3QgZmls ZXMgYW5kIGV4ZWN1dGFibGVzIHRvIGdvIGFuZCBydW4KPiAtLXRoZSBgY29uZmlndXJlJyBzY3Jp cHQuICBgY29uZmlndXJlJyBhdXRvbWF0aWNhbGx5IGNoZWNrcyBmb3IgdGhlCj4gLS1zb3VyY2Ug Y29kZSBpbiB0aGUgZGlyZWN0b3J5IHRoYXQgYGNvbmZpZ3VyZScgaXMgaW4gYW5kIGluIGAuLicu ICBUaGlzCj4gLS1pcyBrbm93biBhcyBhICJWUEFUSCIgYnVpbGQuCj4gLS0KPiAtLSAgIFdpdGgg YSBub24tR05VIGBtYWtlJywgaXQgaXMgc2FmZXIgdG8gY29tcGlsZSB0aGUgcGFja2FnZSBmb3Ig b25lCj4gLS1hcmNoaXRlY3R1cmUgYXQgYSB0aW1lIGluIHRoZSBzb3VyY2UgY29kZSBkaXJlY3Rv cnkuICBBZnRlciB5b3UgaGF2ZQo+IC0taW5zdGFsbGVkIHRoZSBwYWNrYWdlIGZvciBvbmUgYXJj aGl0ZWN0dXJlLCB1c2UgYG1ha2UgZGlzdGNsZWFuJyBiZWZvcmUKPiAtLXJlY29uZmlndXJpbmcg Zm9yIGFub3RoZXIgYXJjaGl0ZWN0dXJlLgo+IC0tCj4gLS0gICBPbiBNYWNPUyBYIDEwLjUgYW5k IGxhdGVyIHN5c3RlbXMsIHlvdSBjYW4gY3JlYXRlIGxpYnJhcmllcyBhbmQKPiAtLWV4ZWN1dGFi bGVzIHRoYXQgd29yayBvbiBtdWx0aXBsZSBzeXN0ZW0gdHlwZXMtLWtub3duIGFzICJmYXQiIG9y Cj4gLS0idW5pdmVyc2FsIiBiaW5hcmllcy0tYnkgc3BlY2lmeWluZyBtdWx0aXBsZSBgLWFyY2gn IG9wdGlvbnMgdG8gdGhlCj4gLS1jb21waWxlciBidXQgb25seSBhIHNpbmdsZSBgLWFyY2gnIG9w dGlvbiB0byB0aGUgcHJlcHJvY2Vzc29yLiAgTGlrZQo+IC0tdGhpczoKPiAtLQo+IC0tICAgICAu L2NvbmZpZ3VyZSBDQz0iZ2NjIC1hcmNoIGkzODYgLWFyY2ggeDg2XzY0IC1hcmNoIHBwYyAtYXJj aCBwcGM2NCIgXAo+IC0tICAgICAgICAgICAgICAgICBDWFg9ImcrKyAtYXJjaCBpMzg2IC1hcmNo IHg4Nl82NCAtYXJjaCBwcGMgLWFyY2ggcHBjNjQiIFwKPiAtLSAgICAgICAgICAgICAgICAgQ1BQ PSJnY2MgLUUiIENYWENQUD0iZysrIC1FIgo+IC0tCj4gLS0gICBUaGlzIGlzIG5vdCBndWFyYW50 ZWVkIHRvIHByb2R1Y2Ugd29ya2luZyBvdXRwdXQgaW4gYWxsIGNhc2VzLCB5b3UKPiAtLW1heSBo YXZlIHRvIGJ1aWxkIG9uZSBhcmNoaXRlY3R1cmUgYXQgYSB0aW1lIGFuZCBjb21iaW5lIHRoZSBy ZXN1bHRzCj4gLS11c2luZyB0aGUgYGxpcG8nIHRvb2wgaWYgeW91IGhhdmUgcHJvYmxlbXMuCj4g LS0KPiAtLUluc3RhbGxhdGlvbiBOYW1lcwo+IC0tPT09PT09PT09PT09PT09PT09Cj4gLS0KPiAt LSAgIEJ5IGRlZmF1bHQsIGBtYWtlIGluc3RhbGwnIGluc3RhbGxzIHRoZSBwYWNrYWdlJ3MgY29t bWFuZHMgdW5kZXIKPiAtLWAvdXNyL2xvY2FsL2JpbicsIGluY2x1ZGUgZmlsZXMgdW5kZXIgYC91 c3IvbG9jYWwvaW5jbHVkZScsIGV0Yy4gIFlvdQo+IC0tY2FuIHNwZWNpZnkgYW4gaW5zdGFsbGF0 aW9uIHByZWZpeCBvdGhlciB0aGFuIGAvdXNyL2xvY2FsJyBieSBnaXZpbmcKPiAtLWBjb25maWd1 cmUnIHRoZSBvcHRpb24gYC0tcHJlZml4PVBSRUZJWCcsIHdoZXJlIFBSRUZJWCBtdXN0IGJlIGFu Cj4gLS1hYnNvbHV0ZSBmaWxlIG5hbWUuCj4gLS0KPiAtLSAgIFlvdSBjYW4gc3BlY2lmeSBzZXBh cmF0ZSBpbnN0YWxsYXRpb24gcHJlZml4ZXMgZm9yCj4gLS1hcmNoaXRlY3R1cmUtc3BlY2lmaWMg ZmlsZXMgYW5kIGFyY2hpdGVjdHVyZS1pbmRlcGVuZGVudCBmaWxlcy4gIElmIHlvdQo+IC0tcGFz cyB0aGUgb3B0aW9uIGAtLWV4ZWMtcHJlZml4PVBSRUZJWCcgdG8gYGNvbmZpZ3VyZScsIHRoZSBw YWNrYWdlIHVzZXMKPiAtLVBSRUZJWCBhcyB0aGUgcHJlZml4IGZvciBpbnN0YWxsaW5nIHByb2dy YW1zIGFuZCBsaWJyYXJpZXMuCj4gLS1Eb2N1bWVudGF0aW9uIGFuZCBvdGhlciBkYXRhIGZpbGVz IHN0aWxsIHVzZSB0aGUgcmVndWxhciBwcmVmaXguCj4gLS0KPiAtLSAgIEluIGFkZGl0aW9uLCBp ZiB5b3UgdXNlIGFuIHVudXN1YWwgZGlyZWN0b3J5IGxheW91dCB5b3UgY2FuIGdpdmUKPiAtLW9w dGlvbnMgbGlrZSBgLS1iaW5kaXI9RElSJyB0byBzcGVjaWZ5IGRpZmZlcmVudCB2YWx1ZXMgZm9y IHBhcnRpY3VsYXIKPiAtLWtpbmRzIG9mIGZpbGVzLiAgUnVuIGBjb25maWd1cmUgLS1oZWxwJyBm b3IgYSBsaXN0IG9mIHRoZSBkaXJlY3Rvcmllcwo+IC0teW91IGNhbiBzZXQgYW5kIHdoYXQga2lu ZHMgb2YgZmlsZXMgZ28gaW4gdGhlbS4gIEluIGdlbmVyYWwsIHRoZQo+IC0tZGVmYXVsdCBmb3Ig dGhlc2Ugb3B0aW9ucyBpcyBleHByZXNzZWQgaW4gdGVybXMgb2YgYCR7cHJlZml4fScsIHNvIHRo YXQKPiAtLXNwZWNpZnlpbmcganVzdCBgLS1wcmVmaXgnIHdpbGwgYWZmZWN0IGFsbCBvZiB0aGUg b3RoZXIgZGlyZWN0b3J5Cj4gLS1zcGVjaWZpY2F0aW9ucyB0aGF0IHdlcmUgbm90IGV4cGxpY2l0 bHkgcHJvdmlkZWQuCj4gLS0KPiAtLSAgIFRoZSBtb3N0IHBvcnRhYmxlIHdheSB0byBhZmZlY3Qg aW5zdGFsbGF0aW9uIGxvY2F0aW9ucyBpcyB0byBwYXNzIHRoZQo+IC0tY29ycmVjdCBsb2NhdGlv bnMgdG8gYGNvbmZpZ3VyZSc7IGhvd2V2ZXIsIG1hbnkgcGFja2FnZXMgcHJvdmlkZSBvbmUgb3IK PiAtLWJvdGggb2YgdGhlIGZvbGxvd2luZyBzaG9ydGN1dHMgb2YgcGFzc2luZyB2YXJpYWJsZSBh c3NpZ25tZW50cyB0byB0aGUKPiAtLWBtYWtlIGluc3RhbGwnIGNvbW1hbmQgbGluZSB0byBjaGFu Z2UgaW5zdGFsbGF0aW9uIGxvY2F0aW9ucyB3aXRob3V0Cj4gLS1oYXZpbmcgdG8gcmVjb25maWd1 cmUgb3IgcmVjb21waWxlLgo+IC0tCj4gLS0gICBUaGUgZmlyc3QgbWV0aG9kIGludm9sdmVzIHBy b3ZpZGluZyBhbiBvdmVycmlkZSB2YXJpYWJsZSBmb3IgZWFjaAo+IC0tYWZmZWN0ZWQgZGlyZWN0 b3J5LiAgRm9yIGV4YW1wbGUsIGBtYWtlIGluc3RhbGwKPiAtLXByZWZpeD0vYWx0ZXJuYXRlL2Rp cmVjdG9yeScgd2lsbCBjaG9vc2UgYW4gYWx0ZXJuYXRlIGxvY2F0aW9uIGZvciBhbGwKPiAtLWRp cmVjdG9yeSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyB0aGF0IHdlcmUgZXhwcmVzc2VkIGluIHRl cm1zIG9mCj4gLS1gJHtwcmVmaXh9Jy4gIEFueSBkaXJlY3RvcmllcyB0aGF0IHdlcmUgc3BlY2lm aWVkIGR1cmluZyBgY29uZmlndXJlJywKPiAtLWJ1dCBub3QgaW4gdGVybXMgb2YgYCR7cHJlZml4 fScsIG11c3QgZWFjaCBiZSBvdmVycmlkZGVuIGF0IGluc3RhbGwKPiAtLXRpbWUgZm9yIHRoZSBl bnRpcmUgaW5zdGFsbGF0aW9uIHRvIGJlIHJlbG9jYXRlZC4gIFRoZSBhcHByb2FjaCBvZgo+IC0t bWFrZWZpbGUgdmFyaWFibGUgb3ZlcnJpZGVzIGZvciBlYWNoIGRpcmVjdG9yeSB2YXJpYWJsZSBp cyByZXF1aXJlZCBieQo+IC0tdGhlIEdOVSBDb2RpbmcgU3RhbmRhcmRzLCBhbmQgaWRlYWxseSBj YXVzZXMgbm8gcmVjb21waWxhdGlvbi4KPiAtLUhvd2V2ZXIsIHNvbWUgcGxhdGZvcm1zIGhhdmUg a25vd24gbGltaXRhdGlvbnMgd2l0aCB0aGUgc2VtYW50aWNzIG9mCj4gLS1zaGFyZWQgbGlicmFy aWVzIHRoYXQgZW5kIHVwIHJlcXVpcmluZyByZWNvbXBpbGF0aW9uIHdoZW4gdXNpbmcgdGhpcwo+ IC0tbWV0aG9kLCBwYXJ0aWN1bGFybHkgbm90aWNlYWJsZSBpbiBwYWNrYWdlcyB0aGF0IHVzZSBH TlUgTGlidG9vbC4KPiAtLQo+IC0tICAgVGhlIHNlY29uZCBtZXRob2QgaW52b2x2ZXMgcHJvdmlk aW5nIHRoZSBgREVTVERJUicgdmFyaWFibGUuICBGb3IKPiAtLWV4YW1wbGUsIGBtYWtlIGluc3Rh bGwgREVTVERJUj0vYWx0ZXJuYXRlL2RpcmVjdG9yeScgd2lsbCBwcmVwZW5kCj4gLS1gL2FsdGVy bmF0ZS9kaXJlY3RvcnknIGJlZm9yZSBhbGwgaW5zdGFsbGF0aW9uIG5hbWVzLiAgVGhlIGFwcHJv YWNoIG9mCj4gLS1gREVTVERJUicgb3ZlcnJpZGVzIGlzIG5vdCByZXF1aXJlZCBieSB0aGUgR05V IENvZGluZyBTdGFuZGFyZHMsIGFuZAo+IC0tZG9lcyBub3Qgd29yayBvbiBwbGF0Zm9ybXMgdGhh dCBoYXZlIGRyaXZlIGxldHRlcnMuICBPbiB0aGUgb3RoZXIgaGFuZCwKPiAtLWl0IGRvZXMgYmV0 dGVyIGF0IGF2b2lkaW5nIHJlY29tcGlsYXRpb24gaXNzdWVzLCBhbmQgd29ya3Mgd2VsbCBldmVu Cj4gLS13aGVuIHNvbWUgZGlyZWN0b3J5IG9wdGlvbnMgd2VyZSBub3Qgc3BlY2lmaWVkIGluIHRl cm1zIG9mIGAke3ByZWZpeH0nCj4gLS1hdCBgY29uZmlndXJlJyB0aW1lLgo+IC0tCj4gLS1PcHRp b25hbCBGZWF0dXJlcwo+IC0tPT09PT09PT09PT09PT09PT0KPiAtLQo+IC0tICAgSWYgdGhlIHBh Y2thZ2Ugc3VwcG9ydHMgaXQsIHlvdSBjYW4gY2F1c2UgcHJvZ3JhbXMgdG8gYmUgaW5zdGFsbGVk Cj4gLS13aXRoIGFuIGV4dHJhIHByZWZpeCBvciBzdWZmaXggb24gdGhlaXIgbmFtZXMgYnkgZ2l2 aW5nIGBjb25maWd1cmUnIHRoZQo+IC0tb3B0aW9uIGAtLXByb2dyYW0tcHJlZml4PVBSRUZJWCcg b3IgYC0tcHJvZ3JhbS1zdWZmaXg9U1VGRklYJy4KPiAtLQo+IC0tICAgU29tZSBwYWNrYWdlcyBw YXkgYXR0ZW50aW9uIHRvIGAtLWVuYWJsZS1GRUFUVVJFJyBvcHRpb25zIHRvCj4gLS1gY29uZmln dXJlJywgd2hlcmUgRkVBVFVSRSBpbmRpY2F0ZXMgYW4gb3B0aW9uYWwgcGFydCBvZiB0aGUgcGFj a2FnZS4KPiAtLVRoZXkgbWF5IGFsc28gcGF5IGF0dGVudGlvbiB0byBgLS13aXRoLVBBQ0tBR0Un IG9wdGlvbnMsIHdoZXJlIFBBQ0tBR0UKPiAtLWlzIHNvbWV0aGluZyBsaWtlIGBnbnUtYXMnIG9y IGB4JyAoZm9yIHRoZSBYIFdpbmRvdyBTeXN0ZW0pLiAgVGhlCj4gLS1gUkVBRE1FJyBzaG91bGQg bWVudGlvbiBhbnkgYC0tZW5hYmxlLScgYW5kIGAtLXdpdGgtJyBvcHRpb25zIHRoYXQgdGhlCj4g LS1wYWNrYWdlIHJlY29nbml6ZXMuCj4gLS0KPiAtLSAgIEZvciBwYWNrYWdlcyB0aGF0IHVzZSB0 aGUgWCBXaW5kb3cgU3lzdGVtLCBgY29uZmlndXJlJyBjYW4gdXN1YWxseQo+IC0tZmluZCB0aGUg WCBpbmNsdWRlIGFuZCBsaWJyYXJ5IGZpbGVzIGF1dG9tYXRpY2FsbHksIGJ1dCBpZiBpdCBkb2Vz bid0LAo+IC0teW91IGNhbiB1c2UgdGhlIGBjb25maWd1cmUnIG9wdGlvbnMgYC0teC1pbmNsdWRl cz1ESVInIGFuZAo+IC0tYC0teC1saWJyYXJpZXM9RElSJyB0byBzcGVjaWZ5IHRoZWlyIGxvY2F0 aW9ucy4KPiAtLQo+IC0tICAgU29tZSBwYWNrYWdlcyBvZmZlciB0aGUgYWJpbGl0eSB0byBjb25m aWd1cmUgaG93IHZlcmJvc2UgdGhlCj4gLS1leGVjdXRpb24gb2YgYG1ha2UnIHdpbGwgYmUuICBG b3IgdGhlc2UgcGFja2FnZXMsIHJ1bm5pbmcgYC4vY29uZmlndXJlCj4gLS0tLWVuYWJsZS1zaWxl bnQtcnVsZXMnIHNldHMgdGhlIGRlZmF1bHQgdG8gbWluaW1hbCBvdXRwdXQsIHdoaWNoIGNhbiBi ZQo+IC0tb3ZlcnJpZGRlbiB3aXRoIGBtYWtlIFY9MSc7IHdoaWxlIHJ1bm5pbmcgYC4vY29uZmln dXJlCj4gLS0tLWRpc2FibGUtc2lsZW50LXJ1bGVzJyBzZXRzIHRoZSBkZWZhdWx0IHRvIHZlcmJv c2UsIHdoaWNoIGNhbiBiZQo+IC0tb3ZlcnJpZGRlbiB3aXRoIGBtYWtlIFY9MCcuCj4gLS0KPiAt LVBhcnRpY3VsYXIgc3lzdGVtcwo+IC0tPT09PT09PT09PT09PT09PT09Cj4gLS0KPiAtLSAgIE9u IEhQLVVYLCB0aGUgZGVmYXVsdCBDIGNvbXBpbGVyIGlzIG5vdCBBTlNJIEMgY29tcGF0aWJsZS4g IElmIEdOVQo+IC0tQ0MgaXMgbm90IGluc3RhbGxlZCwgaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNl IHRoZSBmb2xsb3dpbmcgb3B0aW9ucyBpbgo+IC0tb3JkZXIgdG8gdXNlIGFuIEFOU0kgQyBjb21w aWxlcjoKPiAtLQo+IC0tICAgICAuL2NvbmZpZ3VyZSBDQz0iY2MgLUFlIC1EX1hPUEVOX1NPVVJD RT01MDAiCj4gLS0KPiAtLWFuZCBpZiB0aGF0IGRvZXNuJ3Qgd29yaywgaW5zdGFsbCBwcmUtYnVp bHQgYmluYXJpZXMgb2YgR0NDIGZvciBIUC1VWC4KPiAtLQo+IC0tICAgSFAtVVggYG1ha2UnIHVw ZGF0ZXMgdGFyZ2V0cyB3aGljaCBoYXZlIHRoZSBzYW1lIHRpbWUgc3RhbXBzIGFzCj4gLS10aGVp ciBwcmVyZXF1aXNpdGVzLCB3aGljaCBtYWtlcyBpdCBnZW5lcmFsbHkgdW51c2FibGUgd2hlbiBz aGlwcGVkCj4gLS1nZW5lcmF0ZWQgZmlsZXMgc3VjaCBhcyBgY29uZmlndXJlJyBhcmUgaW52b2x2 ZWQuICBVc2UgR05VIGBtYWtlJwo+IC0taW5zdGVhZC4KPiAtLQo+IC0tICAgT24gT1NGLzEgYS5r LmEuIFRydTY0LCBzb21lIHZlcnNpb25zIG9mIHRoZSBkZWZhdWx0IEMgY29tcGlsZXIgY2Fubm90 Cj4gLS1wYXJzZSBpdHMgYDx3Y2hhci5oPicgaGVhZGVyIGZpbGUuICBUaGUgb3B0aW9uIGAtbm9k dGsnIGNhbiBiZSB1c2VkIGFzCj4gLS1hIHdvcmthcm91bmQuICBJZiBHTlUgQ0MgaXMgbm90IGlu c3RhbGxlZCwgaXQgaXMgdGhlcmVmb3JlIHJlY29tbWVuZGVkCj4gLS10byB0cnkKPiAtLQo+IC0t ICAgICAuL2NvbmZpZ3VyZSBDQz0iY2MiCj4gLS0KPiAtLWFuZCBpZiB0aGF0IGRvZXNuJ3Qgd29y aywgdHJ5Cj4gLS0KPiAtLSAgICAgLi9jb25maWd1cmUgQ0M9ImNjIC1ub2R0ayIKPiAtLQo+IC0t ICAgT24gU29sYXJpcywgZG9uJ3QgcHV0IGAvdXNyL3VjYicgZWFybHkgaW4geW91ciBgUEFUSCcu ICBUaGlzCj4gLS1kaXJlY3RvcnkgY29udGFpbnMgc2V2ZXJhbCBkeXNmdW5jdGlvbmFsIHByb2dy YW1zOyB3b3JraW5nIHZhcmlhbnRzIG9mCj4gLS10aGVzZSBwcm9ncmFtcyBhcmUgYXZhaWxhYmxl IGluIGAvdXNyL2JpbicuICBTbywgaWYgeW91IG5lZWQgYC91c3IvdWNiJwo+IC0taW4geW91ciBg UEFUSCcsIHB1dCBpdCBfYWZ0ZXJfIGAvdXNyL2JpbicuCj4gLS0KPiAtLSAgIE9uIEhhaWt1LCBz b2Z0d2FyZSBpbnN0YWxsZWQgZm9yIGFsbCB1c2VycyBnb2VzIGluIGAvYm9vdC9jb21tb24nLAo+ IC0tbm90IGAvdXNyL2xvY2FsJy4gIEl0IGlzIHJlY29tbWVuZGVkIHRvIHVzZSB0aGUgZm9sbG93 aW5nIG9wdGlvbnM6Cj4gLS0KPiAtLSAgICAgLi9jb25maWd1cmUgLS1wcmVmaXg9L2Jvb3QvY29t bW9uCj4gLS0KPiAtLVNwZWNpZnlpbmcgdGhlIFN5c3RlbSBUeXBlCj4gLS09PT09PT09PT09PT09 PT09PT09PT09PT09PQo+IC0tCj4gLS0gICBUaGVyZSBtYXkgYmUgc29tZSBmZWF0dXJlcyBgY29u ZmlndXJlJyBjYW5ub3QgZmlndXJlIG91dAo+IC0tYXV0b21hdGljYWxseSwgYnV0IG5lZWRzIHRv IGRldGVybWluZSBieSB0aGUgdHlwZSBvZiBtYWNoaW5lIHRoZSBwYWNrYWdlCj4gLS13aWxsIHJ1 biBvbi4gIFVzdWFsbHksIGFzc3VtaW5nIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IHRvIGJlIHJ1biBv biB0aGUKPiAtLV9zYW1lXyBhcmNoaXRlY3R1cmVzLCBgY29uZmlndXJlJyBjYW4gZmlndXJlIHRo YXQgb3V0LCBidXQgaWYgaXQgcHJpbnRzCj4gLS1hIG1lc3NhZ2Ugc2F5aW5nIGl0IGNhbm5vdCBn dWVzcyB0aGUgbWFjaGluZSB0eXBlLCBnaXZlIGl0IHRoZQo+IC0tYC0tYnVpbGQ9VFlQRScgb3B0 aW9uLiAgVFlQRSBjYW4gZWl0aGVyIGJlIGEgc2hvcnQgbmFtZSBmb3IgdGhlIHN5c3RlbQo+IC0t dHlwZSwgc3VjaCBhcyBgc3VuNCcsIG9yIGEgY2Fub25pY2FsIG5hbWUgd2hpY2ggaGFzIHRoZSBm b3JtOgo+IC0tCj4gLS0gICAgIENQVS1DT01QQU5ZLVNZU1RFTQo+IC0tCj4gLS13aGVyZSBTWVNU RU0gY2FuIGhhdmUgb25lIG9mIHRoZXNlIGZvcm1zOgo+IC0tCj4gLS0gICAgIE9TCj4gLS0gICAg IEtFUk5FTC1PUwo+IC0tCj4gLS0gICBTZWUgdGhlIGZpbGUgYGNvbmZpZy5zdWInIGZvciB0aGUg cG9zc2libGUgdmFsdWVzIG9mIGVhY2ggZmllbGQuICBJZgo+IC0tYGNvbmZpZy5zdWInIGlzbid0 IGluY2x1ZGVkIGluIHRoaXMgcGFja2FnZSwgdGhlbiB0aGlzIHBhY2thZ2UgZG9lc24ndAo+IC0t bmVlZCB0byBrbm93IHRoZSBtYWNoaW5lIHR5cGUuCj4gLS0KPiAtLSAgIElmIHlvdSBhcmUgX2J1 aWxkaW5nXyBjb21waWxlciB0b29scyBmb3IgY3Jvc3MtY29tcGlsaW5nLCB5b3Ugc2hvdWxkCj4g LS11c2UgdGhlIG9wdGlvbiBgLS10YXJnZXQ9VFlQRScgdG8gc2VsZWN0IHRoZSB0eXBlIG9mIHN5 c3RlbSB0aGV5IHdpbGwKPiAtLXByb2R1Y2UgY29kZSBmb3IuCj4gLS0KPiAtLSAgIElmIHlvdSB3 YW50IHRvIF91c2VfIGEgY3Jvc3MgY29tcGlsZXIsIHRoYXQgZ2VuZXJhdGVzIGNvZGUgZm9yIGEK PiAtLXBsYXRmb3JtIGRpZmZlcmVudCBmcm9tIHRoZSBidWlsZCBwbGF0Zm9ybSwgeW91IHNob3Vs ZCBzcGVjaWZ5IHRoZQo+IC0tImhvc3QiIHBsYXRmb3JtIChpLmUuLCB0aGF0IG9uIHdoaWNoIHRo ZSBnZW5lcmF0ZWQgcHJvZ3JhbXMgd2lsbAo+IC0tZXZlbnR1YWxseSBiZSBydW4pIHdpdGggYC0t aG9zdD1UWVBFJy4KPiAtLQo+IC0tU2hhcmluZyBEZWZhdWx0cwo+IC0tPT09PT09PT09PT09PT09 PQo+IC0tCj4gLS0gICBJZiB5b3Ugd2FudCB0byBzZXQgZGVmYXVsdCB2YWx1ZXMgZm9yIGBjb25m aWd1cmUnIHNjcmlwdHMgdG8gc2hhcmUsCj4gLS15b3UgY2FuIGNyZWF0ZSBhIHNpdGUgc2hlbGwg c2NyaXB0IGNhbGxlZCBgY29uZmlnLnNpdGUnIHRoYXQgZ2l2ZXMKPiAtLWRlZmF1bHQgdmFsdWVz IGZvciB2YXJpYWJsZXMgbGlrZSBgQ0MnLCBgY2FjaGVfZmlsZScsIGFuZCBgcHJlZml4Jy4KPiAt LWBjb25maWd1cmUnIGxvb2tzIGZvciBgUFJFRklYL3NoYXJlL2NvbmZpZy5zaXRlJyBpZiBpdCBl eGlzdHMsIHRoZW4KPiAtLWBQUkVGSVgvZXRjL2NvbmZpZy5zaXRlJyBpZiBpdCBleGlzdHMuICBP ciwgeW91IGNhbiBzZXQgdGhlCj4gLS1gQ09ORklHX1NJVEUnIGVudmlyb25tZW50IHZhcmlhYmxl IHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgc2l0ZSBzY3JpcHQuCj4gLS1BIHdhcm5pbmc6IG5vdCBh bGwgYGNvbmZpZ3VyZScgc2NyaXB0cyBsb29rIGZvciBhIHNpdGUgc2NyaXB0Lgo+IC0tCj4gLS1E ZWZpbmluZyBWYXJpYWJsZXMKPiAtLT09PT09PT09PT09PT09PT09PQo+IC0tCj4gLS0gICBWYXJp YWJsZXMgbm90IGRlZmluZWQgaW4gYSBzaXRlIHNoZWxsIHNjcmlwdCBjYW4gYmUgc2V0IGluIHRo ZQo+IC0tZW52aXJvbm1lbnQgcGFzc2VkIHRvIGBjb25maWd1cmUnLiAgSG93ZXZlciwgc29tZSBw YWNrYWdlcyBtYXkgcnVuCj4gLS1jb25maWd1cmUgYWdhaW4gZHVyaW5nIHRoZSBidWlsZCwgYW5k IHRoZSBjdXN0b21pemVkIHZhbHVlcyBvZiB0aGVzZQo+IC0tdmFyaWFibGVzIG1heSBiZSBsb3N0 LiAgSW4gb3JkZXIgdG8gYXZvaWQgdGhpcyBwcm9ibGVtLCB5b3Ugc2hvdWxkIHNldAo+IC0tdGhl bSBpbiB0aGUgYGNvbmZpZ3VyZScgY29tbWFuZCBsaW5lLCB1c2luZyBgVkFSPXZhbHVlJy4gIEZv ciBleGFtcGxlOgo+IC0tCj4gLS0gICAgIC4vY29uZmlndXJlIENDPS91c3IvbG9jYWwyL2Jpbi9n Y2MKPiAtLQo+IC0tY2F1c2VzIHRoZSBzcGVjaWZpZWQgYGdjYycgdG8gYmUgdXNlZCBhcyB0aGUg QyBjb21waWxlciAodW5sZXNzIGl0IGlzCj4gLS1vdmVycmlkZGVuIGluIHRoZSBzaXRlIHNoZWxs IHNjcmlwdCkuCj4gLS0KPiAtLVVuZm9ydHVuYXRlbHksIHRoaXMgdGVjaG5pcXVlIGRvZXMgbm90 IHdvcmsgZm9yIGBDT05GSUdfU0hFTEwnIGR1ZSB0bwo+IC0tYW4gQXV0b2NvbmYgbGltaXRhdGlv bi4gIFVudGlsIHRoZSBsaW1pdGF0aW9uIGlzIGxpZnRlZCwgeW91IGNhbiB1c2UKPiAtLXRoaXMg d29ya2Fyb3VuZDoKPiAtLQo+IC0tICAgICBDT05GSUdfU0hFTEw9L2Jpbi9iYXNoIC4vY29uZmln dXJlIENPTkZJR19TSEVMTD0vYmluL2Jhc2gKPiAtLQo+IC0tYGNvbmZpZ3VyZScgSW52b2NhdGlv bgo+IC0tPT09PT09PT09PT09PT09PT09PT09PQo+IC0tCj4gLS0gICBgY29uZmlndXJlJyByZWNv Z25pemVzIHRoZSBmb2xsb3dpbmcgb3B0aW9ucyB0byBjb250cm9sIGhvdyBpdAo+IC0tb3BlcmF0 ZXMuCj4gLS0KPiAtLWAtLWhlbHAnCj4gLS1gLWgnCj4gLS0gICAgIFByaW50IGEgc3VtbWFyeSBv ZiBhbGwgb2YgdGhlIG9wdGlvbnMgdG8gYGNvbmZpZ3VyZScsIGFuZCBleGl0Lgo+IC0tCj4gLS1g LS1oZWxwPXNob3J0Jwo+IC0tYC0taGVscD1yZWN1cnNpdmUnCj4gLS0gICAgIFByaW50IGEgc3Vt bWFyeSBvZiB0aGUgb3B0aW9ucyB1bmlxdWUgdG8gdGhpcyBwYWNrYWdlJ3MKPiAtLSAgICAgYGNv bmZpZ3VyZScsIGFuZCBleGl0LiAgVGhlIGBzaG9ydCcgdmFyaWFudCBsaXN0cyBvcHRpb25zIHVz ZWQKPiAtLSAgICAgb25seSBpbiB0aGUgdG9wIGxldmVsLCB3aGlsZSB0aGUgYHJlY3Vyc2l2ZScg dmFyaWFudCBsaXN0cyBvcHRpb25zCj4gLS0gICAgIGFsc28gcHJlc2VudCBpbiBhbnkgbmVzdGVk IHBhY2thZ2VzLgo+IC0tCj4gLS1gLS12ZXJzaW9uJwo+IC0tYC1WJwo+IC0tICAgICBQcmludCB0 aGUgdmVyc2lvbiBvZiBBdXRvY29uZiB1c2VkIHRvIGdlbmVyYXRlIHRoZSBgY29uZmlndXJlJwo+ IC0tICAgICBzY3JpcHQsIGFuZCBleGl0Lgo+IC0tCj4gLS1gLS1jYWNoZS1maWxlPUZJTEUnCj4g LS0gICAgIEVuYWJsZSB0aGUgY2FjaGU6IHVzZSBhbmQgc2F2ZSB0aGUgcmVzdWx0cyBvZiB0aGUg dGVzdHMgaW4gRklMRSwKPiAtLSAgICAgdHJhZGl0aW9uYWxseSBgY29uZmlnLmNhY2hlJy4gIEZJ TEUgZGVmYXVsdHMgdG8gYC9kZXYvbnVsbCcgdG8KPiAtLSAgICAgZGlzYWJsZSBjYWNoaW5nLgo+ IC0tCj4gLS1gLS1jb25maWctY2FjaGUnCj4gLS1gLUMnCj4gLS0gICAgIEFsaWFzIGZvciBgLS1j YWNoZS1maWxlPWNvbmZpZy5jYWNoZScuCj4gLS0KPiAtLWAtLXF1aWV0Jwo+IC0tYC0tc2lsZW50 Jwo+IC0tYC1xJwo+IC0tICAgICBEbyBub3QgcHJpbnQgbWVzc2FnZXMgc2F5aW5nIHdoaWNoIGNo ZWNrcyBhcmUgYmVpbmcgbWFkZS4gIFRvCj4gLS0gICAgIHN1cHByZXNzIGFsbCBub3JtYWwgb3V0 cHV0LCByZWRpcmVjdCBpdCB0byBgL2Rldi9udWxsJyAoYW55IGVycm9yCj4gLS0gICAgIG1lc3Nh Z2VzIHdpbGwgc3RpbGwgYmUgc2hvd24pLgo+IC0tCj4gLS1gLS1zcmNkaXI9RElSJwo+IC0tICAg ICBMb29rIGZvciB0aGUgcGFja2FnZSdzIHNvdXJjZSBjb2RlIGluIGRpcmVjdG9yeSBESVIuICBV c3VhbGx5Cj4gLS0gICAgIGBjb25maWd1cmUnIGNhbiBkZXRlcm1pbmUgdGhhdCBkaXJlY3Rvcnkg YXV0b21hdGljYWxseS4KPiAtLQo+IC0tYC0tcHJlZml4PURJUicKPiAtLSAgICAgVXNlIERJUiBh cyB0aGUgaW5zdGFsbGF0aW9uIHByZWZpeC4gICpub3RlIEluc3RhbGxhdGlvbiBOYW1lczo6Cj4g LS0gICAgIGZvciBtb3JlIGRldGFpbHMsIGluY2x1ZGluZyBvdGhlciBvcHRpb25zIGF2YWlsYWJs ZSBmb3IgZmluZS10dW5pbmcKPiAtLSAgICAgdGhlIGluc3RhbGxhdGlvbiBsb2NhdGlvbnMuCj4g LS0KPiAtLWAtLW5vLWNyZWF0ZScKPiAtLWAtbicKPiAtLSAgICAgUnVuIHRoZSBjb25maWd1cmUg Y2hlY2tzLCBidXQgc3RvcCBiZWZvcmUgY3JlYXRpbmcgYW55IG91dHB1dAo+IC0tICAgICBmaWxl cy4KPiAtLQo+IC0tYGNvbmZpZ3VyZScgYWxzbyBhY2NlcHRzIHNvbWUgb3RoZXIsIG5vdCB3aWRl bHkgdXNlZnVsLCBvcHRpb25zLiAgUnVuCj4gLS1gY29uZmlndXJlIC0taGVscCcgZm9yIG1vcmUg ZGV0YWlscy4KPiBkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDAyLU1h a2VmaWxlLmFtLXJlbmFtZS1JTkNMVURFUy1BTV9DUFBGTEFHUy5wYXRjaCBiL3BhdGNoZXMvaW1h LWV2bS11dGlscy0xLjEvMDAwMi1NYWtlZmlsZS5hbS1yZW5hbWUtSU5DTFVERVMtQU1fQ1BQRkxB R1MucGF0Y2gKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCBjYjA5YjhkNzhmOGEu LjAwMDAwMDAwMDAwMAo+IC0tLSBhL3BhdGNoZXMvaW1hLWV2bS11dGlscy0xLjEvMDAwMi1NYWtl ZmlsZS5hbS1yZW5hbWUtSU5DTFVERVMtQU1fQ1BQRkxBR1MucGF0Y2gKPiArKysgL2Rldi9udWxs Cj4gQEAgLTEsNDAgKzAsMCBAQAo+IC1Gcm9tOiBNYXJjIEtsZWluZS1CdWRkZSA8bWtsQHBlbmd1 dHJvbml4LmRlPgo+IC1EYXRlOiBXZWQsIDI3IE1heSAyMDE1IDEwOjQxOjI3ICswMjAwCj4gLVN1 YmplY3Q6IFtQQVRDSF0gTWFrZWZpbGUuYW06IHJlbmFtZSBJTkNMVURFUyAtPiBBTV9DUFBGTEFH Uwo+IC0KPiAtVGhpcyBwYXRjaCBmaXhlcyB0aGUgZm9sbG93aW5nIHdhcm5pbmcgZHVyaW5nIGF1 dG9yZWNvbmY6Cj4gLQo+IC18IHNyYy9NYWtlZmlsZS5hbToxOTogd2FybmluZzogJ0lOQ0xVREVT JyBpcyB0aGUgb2xkIG5hbWUgZm9yICdBTV9DUFBGTEFHUycgKG9yICcqX0NQUEZMQUdTJykKPiAt Cj4gLVNpZ25lZC1vZmYtYnk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxta2xAcGVuZ3V0cm9uaXguZGU+ Cj4gLS0tLQo+IC0gc3JjL01ha2VmaWxlLmFtIHwgNiArKystLS0KPiAtIDEgZmlsZSBjaGFuZ2Vk LCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCj4gLQo+IC1kaWZmIC0tZ2l0IGEvc3Jj L01ha2VmaWxlLmFtIGIvc3JjL01ha2VmaWxlLmFtCj4gLWluZGV4IGRlYjE4ZmIwOWRjNy4uOWY1 NDcyODNkNTM1IDEwMDY0NAo+IC0tLS0gYS9zcmMvTWFrZWZpbGUuYW0KPiAtKysrIGIvc3JjL01h a2VmaWxlLmFtCj4gLUBAIC0xLDcgKzEsNyBAQAo+IC0gbGliX0xUTElCUkFSSUVTID0gbGliaW1h ZXZtLmxhCj4gLSAKPiAtIGxpYmltYWV2bV9sYV9TT1VSQ0VTID0gbGliaW1hZXZtLmMKPiAtLWxp YmltYWV2bV9sYV9DUFBGTEFHUyA9ICQoT1BFTlNTTF9DRkxBR1MpCj4gLStsaWJpbWFldm1fbGFf Q1BQRkxBR1MgPSAkKE9QRU5TU0xfQ0ZMQUdTKSAkKEFNX0NQUEZMQUdTKQo+IC0gIyBjdXJyZW50 WzpyZXZpc2lvbls6YWdlXV0KPiAtICMgcmVzdWx0OiBbY3VycmVudC1hZ2VdLmFnZS5yZXZpc2lv bgo+IC0gbGliaW1hZXZtX2xhX0xERkxBR1MgPSAtdmVyc2lvbi1pbmZvIDA6MDowCj4gLUBAIC0x MiwxMSArMTIsMTEgQEAgaW5jbHVkZV9IRUFERVJTID0gaW1hZXZtLmgKPiAtIGJpbl9QUk9HUkFN UyA9IGV2bWN0bAo+IC0gCj4gLSBldm1jdGxfU09VUkNFUyA9IGV2bWN0bC5jCj4gLS1ldm1jdGxf Q1BQRkxBR1MgPSAkKE9QRU5TU0xfQ0ZMQUdTKQo+IC0rZXZtY3RsX0NQUEZMQUdTID0gJChPUEVO U1NMX0NGTEFHUykgJChBTV9DUFBGTEFHUykKPiAtIGV2bWN0bF9MREZMQUdTID0gJChMREZMQUdT X1JFQURMSU5FKQo+IC0gZXZtY3RsX0xEQUREID0gICQoT1BFTlNTTF9MSUJTKSAtbGtleXV0aWxz IGxpYmltYWV2bS5sYQo+IC0gCj4gLS1JTkNMVURFUyA9IC1JJCh0b3Bfc3JjZGlyKSAtaW5jbHVk ZSBjb25maWcuaAo+IC0rQU1fQ1BQRkxBR1MgPSAtSSQodG9wX3NyY2RpcikgLWluY2x1ZGUgY29u ZmlnLmgKPiAtIAo+IC0gRElTVENMRUFORklMRVMgPSBARElTVENMRUFORklMRVNACj4gLSAKPiBk aWZmIC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDA2LWV2bWN0bC1saWJpbWFl dm0tdXNlLUVWUF9NQVhfTURfU0laRS1mb3ItaGFzaC1zaXplLWkucGF0Y2ggYi9wYXRjaGVzL2lt YS1ldm0tdXRpbHMtMS4xLzAwMDYtZXZtY3RsLWxpYmltYWV2bS11c2UtRVZQX01BWF9NRF9TSVpF LWZvci1oYXNoLXNpemUtaS5wYXRjaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4 IGEzY2Q1OTdmODJkNi4uMDAwMDAwMDAwMDAwCj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxz LTEuMS8wMDA2LWV2bWN0bC1saWJpbWFldm0tdXNlLUVWUF9NQVhfTURfU0laRS1mb3ItaGFzaC1z aXplLWkucGF0Y2gKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsNzMgKzAsMCBAQAo+IC1Gcm9tOiBN YXJjIEtsZWluZS1CdWRkZSA8bWtsQHBlbmd1dHJvbml4LmRlPgo+IC1EYXRlOiBTYXQsIDI2IE1h ciAyMDE2IDIyOjU4OjA3ICswMTAwCj4gLVN1YmplY3Q6IFtQQVRDSF0gZXZtY3RsLCBsaWJpbWFl dm06IHVzZSBFVlBfTUFYX01EX1NJWkUgZm9yIGhhc2ggc2l6ZSBpbnN0ZWFkCj4gLSBvZiBvcGVu IGNvZGluZyBpdAo+IC0KPiAtU2lnbmVkLW9mZi1ieTogTWFyYyBLbGVpbmUtQnVkZGUgPG1rbEBw ZW5ndXRyb25peC5kZT4KPiAtLS0tCj4gLSBzcmMvZXZtY3RsLmMgICAgfCAxMCArKysrKy0tLS0t Cj4gLSBzcmMvbGliaW1hZXZtLmMgfCAgMiArLQo+IC0gMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2Vy dGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCj4gLQo+IC1kaWZmIC0tZ2l0IGEvc3JjL2V2bWN0bC5j IGIvc3JjL2V2bWN0bC5jCj4gLWluZGV4IGRlNTNiZTM3YjY5Yi4uYjBmM2I2MzYyNTI4IDEwMDY0 NAo+IC0tLS0gYS9zcmMvZXZtY3RsLmMKPiAtKysrIGIvc3JjL2V2bWN0bC5jCj4gLUBAIC00OTUs NyArNDk1LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVu c2lnbmVkIGNoYXIgKmhhc2gpCj4gLSAKPiAtIHN0YXRpYyBpbnQgc2lnbl9ldm0oY29uc3QgY2hh ciAqZmlsZSwgY29uc3QgY2hhciAqa2V5KQo+IC0gewo+IC0tCXVuc2lnbmVkIGNoYXIgaGFzaFsy MF07Cj4gLSsJdW5zaWduZWQgY2hhciBoYXNoW0VWUF9NQVhfTURfU0laRV07Cj4gLSAJdW5zaWdu ZWQgY2hhciBzaWdbMTAyNF07Cj4gLSAJaW50IGxlbiwgZXJyOwo+IC0gCj4gLUBAIC01MzMsNyAr NTMzLDcgQEAgc3RhdGljIGludCBzaWduX2V2bShjb25zdCBjaGFyICpmaWxlLCBjb25zdCBjaGFy ICprZXkpCj4gLSAKPiAtIHN0YXRpYyBpbnQgaGFzaF9pbWEoY29uc3QgY2hhciAqZmlsZSkKPiAt IHsKPiAtLQl1bnNpZ25lZCBjaGFyIGhhc2hbNjZdOyAvKiBNQVggaGFzaCBzaXplICsgMiAqLwo+ IC0rCXVuc2lnbmVkIGNoYXIgaGFzaFtFVlBfTUFYX01EX1NJWkUgKyAyXTsgLyogTUFYIGhhc2gg c2l6ZSArIDIgKi8KPiAtIAlpbnQgbGVuLCBlcnIsIG9mZnNldDsKPiAtIAlpbnQgYWxnbyA9IGdl dF9oYXNoX2FsZ28ocGFyYW1zLmhhc2hfYWxnbyk7Cj4gLSAKPiAtQEAgLTU3MSw3ICs1NzEsNyBA QCBzdGF0aWMgaW50IGhhc2hfaW1hKGNvbnN0IGNoYXIgKmZpbGUpCj4gLSAKPiAtIHN0YXRpYyBp bnQgc2lnbl9pbWEoY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqa2V5KQo+IC0gewo+IC0t CXVuc2lnbmVkIGNoYXIgaGFzaFs2NF07Cj4gLSsJdW5zaWduZWQgY2hhciBoYXNoW0VWUF9NQVhf TURfU0laRV07Cj4gLSAJdW5zaWduZWQgY2hhciBzaWdbMTAyNF07Cj4gLSAJaW50IGxlbiwgZXJy Owo+IC0gCj4gLUBAIC03NTEsNyArNzUxLDcgQEAgc3RhdGljIGludCBjbWRfc2lnbl9ldm0oc3Ry dWN0IGNvbW1hbmQgKmNtZCkKPiAtIAo+IC0gc3RhdGljIGludCB2ZXJpZnlfZXZtKGNvbnN0IGNo YXIgKmZpbGUpCj4gLSB7Cj4gLS0JdW5zaWduZWQgY2hhciBoYXNoWzIwXTsKPiAtKwl1bnNpZ25l ZCBjaGFyIGhhc2hbRVZQX01BWF9NRF9TSVpFXTsKPiAtIAl1bnNpZ25lZCBjaGFyIHNpZ1sxMDI0 XTsKPiAtIAlpbnQgbGVuOwo+IC0gCj4gLUBAIC0xMTE5LDcgKzExMTksNyBAQCBvdXQ6Cj4gLSAK PiAtIHN0YXRpYyBpbnQgaG1hY19ldm0oY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqa2V5 KQo+IC0gewo+IC0tCXVuc2lnbmVkIGNoYXIgaGFzaFsyMF07Cj4gLSsJdW5zaWduZWQgY2hhciBo YXNoW0VWUF9NQVhfTURfU0laRV07Cj4gLSAJdW5zaWduZWQgY2hhciBzaWdbMTAyNF07Cj4gLSAJ aW50IGxlbiwgZXJyOwo+IC0gCj4gLWRpZmYgLS1naXQgYS9zcmMvbGliaW1hZXZtLmMgYi9zcmMv bGliaW1hZXZtLmMKPiAtaW5kZXggNmZhMGVkNGExYzc0Li44ZmMyM2JlMDhiZDcgMTAwNjQ0Cj4g LS0tLSBhL3NyYy9saWJpbWFldm0uYwo+IC0rKysgYi9zcmMvbGliaW1hZXZtLmMKPiAtQEAgLTU5 MCw3ICs1OTAsNyBAQCBpbnQgdmVyaWZ5X2hhc2goY29uc3QgY2hhciAqZmlsZSwgY29uc3QgdW5z aWduZWQgY2hhciAqaGFzaCwgaW50IHNpemUsIHVuc2lnbmVkCj4gLSBpbnQgaW1hX3ZlcmlmeV9z aWduYXR1cmUoY29uc3QgY2hhciAqZmlsZSwgdW5zaWduZWQgY2hhciAqc2lnLCBpbnQgc2lnbGVu LAo+IC0gCQkJIHVuc2lnbmVkIGNoYXIgKmRpZ2VzdCwgaW50IGRpZ2VzdGxlbikKPiAtIHsKPiAt LQl1bnNpZ25lZCBjaGFyIGhhc2hbNjRdOwo+IC0rCXVuc2lnbmVkIGNoYXIgaGFzaFtFVlBfTUFY X01EX1NJWkVdOwo+IC0gCWludCBoYXNobGVuLCBzaWdfaGFzaF9hbGdvOwo+IC0gCj4gLSAJaWYg KHNpZ1swXSAhPSAweDAzKSB7Cj4gZGlmZiAtLWdpdCBhL3BhdGNoZXMvaW1hLWV2bS11dGlscy0x LjEvMDAwOC1ldm1jdGwtYWRkLXBhcmFtZXRlci1lLXRvLXNldC1ldm0taGFzaC1hbGdvLnBhdGNo IGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDA4LWV2bWN0bC1hZGQtcGFyYW1ldGVyLWUt dG8tc2V0LWV2bS1oYXNoLWFsZ28ucGF0Y2gKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBp bmRleCA0ODhkZmE4MjIyODYuLjAwMDAwMDAwMDAwMAo+IC0tLSBhL3BhdGNoZXMvaW1hLWV2bS11 dGlscy0xLjEvMDAwOC1ldm1jdGwtYWRkLXBhcmFtZXRlci1lLXRvLXNldC1ldm0taGFzaC1hbGdv LnBhdGNoCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDEzMyArMCwwIEBACj4gLUZyb206IFN0ZWZm ZW4gVHJ1bXRyYXIgPHMudHJ1bXRyYXJAcGVuZ3V0cm9uaXguZGU+Cj4gLURhdGU6IFR1ZSwgOCBN YXIgMjAxNiAxMzo0NjoxNCArMDEwMAo+IC1TdWJqZWN0OiBbUEFUQ0hdIGV2bWN0bDogYWRkIHBh cmFtZXRlciAtZSB0byBzZXQgZXZtIGhhc2ggYWxnbwo+IC0KPiAtVGhlIHBhcmFtdGVyIC1hIHNl dHMgdGhlIGhhc2ggYWxnb3JpdGhtIG9ubHkgZm9yIElNQS4gVG8gbm90IGJyZWFrCj4gLWFueXRo aW5nLCBhZGQgYSBuZXcgcGFyYW1ldGVyIC1lIHRvIGJlIGFibGUgdG8gY2hhbmdlIHRoZSBoYXNo IGZvcgo+IC1FVk0sIHRvby4KPiAtCj4gLVNpZ25lZC1vZmYtYnk6IFN0ZWZmZW4gVHJ1bXRyYXIg PHMudHJ1bXRyYXJAcGVuZ3V0cm9uaXguZGU+Cj4gLS0tLQo+IC0gc3JjL2V2bWN0bC5jICAgIHwg MjcgKysrKysrKysrKysrKysrKysrKysrKystLS0tCj4gLSBzcmMvaW1hZXZtLmggICAgfCAgMSAr Cj4gLSBzcmMvbGliaW1hZXZtLmMgfCAgMSArCj4gLSAzIGZpbGVzIGNoYW5nZWQsIDI1IGluc2Vy dGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCj4gLQo+IC1kaWZmIC0tZ2l0IGEvc3JjL2V2bWN0bC5j IGIvc3JjL2V2bWN0bC5jCj4gLWluZGV4IGIwZjNiNjM2MjUyOC4uNWQ2NjQwMDVlOTE1IDEwMDY0 NAo+IC0tLS0gYS9zcmMvZXZtY3RsLmMKPiAtKysrIGIvc3JjL2V2bWN0bC5jCj4gLUBAIC0zMzYs NiArMzM2LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVu c2lnbmVkIGNoYXIgKmhhc2gpCj4gLSAjZWxzZQo+IC0gCXBjdHggPSBFVlBfTURfQ1RYX25ldygp Owo+IC0gI2VuZGlmCj4gLSsJY29uc3QgRVZQX01EICptZDsKPiAtIAo+IC0gCWlmIChsc3RhdChm aWxlLCAmc3QpKSB7Cj4gLSAJCWxvZ19lcnIoIkZhaWxlZCB0byBzdGF0OiAlc1xuIiwgZmlsZSk7 Cj4gLUBAIC0zNzksNyArMzgwLDEzIEBAIHN0YXRpYyBpbnQgY2FsY19ldm1faGFzaChjb25zdCBj aGFyICpmaWxlLCB1bnNpZ25lZCBjaGFyICpoYXNoKQo+IC0gCQlyZXR1cm4gLTE7Cj4gLSAJfQo+ IC0gCj4gLS0JZXJyID0gRVZQX0RpZ2VzdEluaXQocGN0eCwgRVZQX3NoYTEoKSk7Cj4gLSsJbWQg PSBFVlBfZ2V0X2RpZ2VzdGJ5bmFtZShwYXJhbXMuZXZtX2hhc2hfYWxnbyk7Cj4gLSsJaWYgKCFt ZCkgewo+IC0rCQlsb2dfZXJyKCJFVlBfZ2V0X2RpZ2VzdGJ5bmFtZSgpIGZhaWxlZFxuIik7Cj4g LSsJCXJldHVybiAxOwo+IC0rCX0KPiAtKwo+IC0rCWVyciA9IEVWUF9EaWdlc3RJbml0KHBjdHgs IG1kKTsKPiAtIAlpZiAoIWVycikgewo+IC0gCQlsb2dfZXJyKCJFVlBfRGlnZXN0SW5pdCgpIGZh aWxlZFxuIik7Cj4gLSAJCXJldHVybiAxOwo+IC1AQCAtNTAzLDcgKzUxMCw3IEBAIHN0YXRpYyBp bnQgc2lnbl9ldm0oY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqa2V5KQo+IC0gCWlmIChs ZW4gPD0gMSkKPiAtIAkJcmV0dXJuIGxlbjsKPiAtIAo+IC0tCWxlbiA9IHNpZ25faGFzaCgic2hh MSIsIGhhc2gsIGxlbiwga2V5LCBOVUxMLCBzaWcgKyAxKTsKPiAtKwlsZW4gPSBzaWduX2hhc2go cGFyYW1zLmV2bV9oYXNoX2FsZ28sIGhhc2gsIGxlbiwga2V5LCBOVUxMLCBzaWcgKyAxKTsKPiAt IAlpZiAobGVuIDw9IDEpCj4gLSAJCXJldHVybiBsZW47Cj4gLSAKPiAtQEAgLTk5Miw2ICs5OTks NyBAQCBzdGF0aWMgaW50IGNhbGNfZXZtX2htYWMoY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hh ciAqa2V5ZmlsZSwgdW5zaWduZWQgY2hhciAqaAo+IC0gI2Vsc2UKPiAtIAlwY3R4ID0gSE1BQ19D VFhfbmV3KCk7Cj4gLSAjZW5kaWYKPiAtKwljb25zdCBFVlBfTUQgKm1kOwo+IC0gCj4gLSAJa2V5 ID0gZmlsZTJiaW4oa2V5ZmlsZSwgTlVMTCwgJmtleWxlbik7Cj4gLSAJaWYgKCFrZXkpIHsKPiAt QEAgLTEwMzgsNyArMTA0NiwxMyBAQCBzdGF0aWMgaW50IGNhbGNfZXZtX2htYWMoY29uc3QgY2hh ciAqZmlsZSwgY29uc3QgY2hhciAqa2V5ZmlsZSwgdW5zaWduZWQgY2hhciAqaAo+IC0gCQlnb3Rv IG91dDsKPiAtIAl9Cj4gLSAKPiAtLQllcnIgPSAhSE1BQ19Jbml0X2V4KHBjdHgsIGV2bWtleSwg c2l6ZW9mKGV2bWtleSksIEVWUF9zaGExKCksIE5VTEwpOwo+IC0rCW1kID0gRVZQX2dldF9kaWdl c3RieW5hbWUocGFyYW1zLmV2bV9oYXNoX2FsZ28pOwo+IC0rCWlmICghbWQpIHsKPiAtKwkJbG9n X2VycigiRVZQX2dldF9kaWdlc3RieW5hbWUoKSBmYWlsZWRcbiIpOwo+IC0rCQlyZXR1cm4gMTsK PiAtKwl9Cj4gLSsKPiAtKwllcnIgPSAhSE1BQ19Jbml0X2V4KHBjdHgsIGV2bWtleSwgc2l6ZW9m KGV2bWtleSksIG1kLCBOVUxMKTsKPiAtIAlpZiAoZXJyKSB7Cj4gLSAJCWxvZ19lcnIoIkhNQUNf SW5pdCgpIGZhaWxlZFxuIik7Cj4gLSAJCWdvdG8gb3V0Owo+IC1AQCAtMTYzNSw2ICsxNjQ5LDcg QEAgc3RhdGljIHZvaWQgdXNhZ2Uodm9pZCkKPiAtIAlwcmludGYoCj4gLSAJCSJcbiIKPiAtIAkJ IiAgLWEsIC0taGFzaGFsZ28gICAgIHNoYTEgKGRlZmF1bHQpLCBzaGEyMjQsIHNoYTI1Niwgc2hh Mzg0LCBzaGE1MTJcbiIKPiAtKwkJIiAgLWUsIC0tZXZtaGFzaGFsZ28gIHNoYTEgKGRlZmF1bHQp LCBzaGEyMjQsIHNoYTI1Niwgc2hhMzg0LCBzaGE1MTJcbiIKPiAtIAkJIiAgLXMsIC0taW1hc2ln ICAgICAgIG1ha2UgSU1BIHNpZ25hdHVyZVxuIgo+IC0gCQkiICAtZCwgLS1pbWFoYXNoICAgICAg bWFrZSBJTUEgaGFzaFxuIgo+IC0gCQkiICAtZiwgLS1zaWdmaWxlICAgICAgc3RvcmUgSU1BIHNp Z25hdHVyZSBpbiAuc2lnIGZpbGUgaW5zdGVhZCBvZiB4YXR0clxuIgo+IC1AQCAtMTY5MSw2ICsx NzA2LDcgQEAgc3RhdGljIHN0cnVjdCBvcHRpb24gb3B0c1tdID0gewo+IC0gCXsiaW1hc2lnIiwg MCwgMCwgJ3MnfSwKPiAtIAl7ImltYWhhc2giLCAwLCAwLCAnZCd9LAo+IC0gCXsiaGFzaGFsZ28i LCAxLCAwLCAnYSd9LAo+IC0rCXsiZXZtaGFzaGFsZ28iLCAxLCAwLCAnZSd9LAo+IC0gCXsicGFz cyIsIDIsIDAsICdwJ30sCj4gLSAJeyJzaWdmaWxlIiwgMCwgMCwgJ2YnfSwKPiAtIAl7InV1aWQi LCAyLCAwLCAndSd9LAo+IC1AQCAtMTc1OCw3ICsxNzc0LDcgQEAgaW50IG1haW4oaW50IGFyZ2Ms IGNoYXIgKmFyZ3ZbXSkKPiAtIAlnX2FyZ2MgPSBhcmdjOwo+IC0gCj4gLSAJd2hpbGUgKDEpIHsK PiAtLQkJYyA9IGdldG9wdF9sb25nKGFyZ2MsIGFyZ3YsICJodm5zZGE6b3A6OmZ1OjprOnQ6cmki LCBvcHRzLCAmbGluZCk7Cj4gLSsJCWMgPSBnZXRvcHRfbG9uZyhhcmdjLCBhcmd2LCAiaHZuc2Rh OmU6b3A6OmZ1OjprOnQ6cmkiLCBvcHRzLCAmbGluZCk7Cj4gLSAJCWlmIChjID09IC0xKQo+IC0g CQkJYnJlYWs7Cj4gLSAKPiAtQEAgLTE3ODQsNiArMTgwMCw5IEBAIGludCBtYWluKGludCBhcmdj LCBjaGFyICphcmd2W10pCj4gLSAJCWNhc2UgJ2EnOgo+IC0gCQkJcGFyYW1zLmhhc2hfYWxnbyA9 IG9wdGFyZzsKPiAtIAkJCWJyZWFrOwo+IC0rCQljYXNlICdlJzoKPiAtKwkJCXBhcmFtcy5ldm1f aGFzaF9hbGdvID0gb3B0YXJnOwo+IC0rCQkJYnJlYWs7Cj4gLSAJCWNhc2UgJ3AnOgo+IC0gCQkJ aWYgKG9wdGFyZykKPiAtIAkJCQlwYXJhbXMua2V5cGFzcyA9IG9wdGFyZzsKPiAtZGlmZiAtLWdp dCBhL3NyYy9pbWFldm0uaCBiL3NyYy9pbWFldm0uaAo+IC1pbmRleCAxYmFmYWFkMGY0YWIuLmVk OTJlNGQ4OTgxZCAxMDA2NDQKPiAtLS0tIGEvc3JjL2ltYWV2bS5oCj4gLSsrKyBiL3NyYy9pbWFl dm0uaAo+IC1AQCAtMTc5LDYgKzE3OSw3IEBAIHN0cnVjdCBsaWJldm1fcGFyYW1zIHsKPiAtIAlp bnQgdmVyYm9zZTsKPiAtIAlpbnQgeDUwOTsKPiAtIAljb25zdCBjaGFyICpoYXNoX2FsZ287Cj4g LSsJY29uc3QgY2hhciAqZXZtX2hhc2hfYWxnbzsKPiAtIAljb25zdCBjaGFyICprZXlmaWxlOwo+ IC0gCWNvbnN0IGNoYXIgKmtleXBhc3M7Cj4gLSB9Owo+IC1kaWZmIC0tZ2l0IGEvc3JjL2xpYmlt YWV2bS5jIGIvc3JjL2xpYmltYWV2bS5jCj4gLWluZGV4IGI2YzMyODgwMTcwOC4uNGMwOTNhMDM4 YjcyIDEwMDY0NAo+IC0tLS0gYS9zcmMvbGliaW1hZXZtLmMKPiAtKysrIGIvc3JjL2xpYmltYWV2 bS5jCj4gLUBAIC0xMjksNiArMTI5LDcgQEAgc3RydWN0IGxpYmV2bV9wYXJhbXMgcGFyYW1zID0g ewo+IC0gCS52ZXJib3NlID0gTE9HX0lORk8gLSAxLAo+IC0gCS54NTA5ID0gMSwKPiAtIAkuaGFz aF9hbGdvID0gInNoYTEiLAo+IC0rCS5ldm1faGFzaF9hbGdvID0gInNoYTEiLAo+IC0gfTsKPiAt IAo+IC0gc3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXyAoKGNvbnN0cnVjdG9yKSkgbGliaW5pdCh2 b2lkKTsKPiBkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDExLUhBQ0st ZG9uLXQtZ2VuZXJhdGUtbWFuLXBhZ2UucGF0Y2ggYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4x LzAwMTEtSEFDSy1kb24tdC1nZW5lcmF0ZS1tYW4tcGFnZS5wYXRjaAo+IGRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAo+IGluZGV4IGJiNDRlOGQ2YzJiZS4uMDAwMDAwMDAwMDAwCj4gLS0tIGEvcGF0 Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDExLUhBQ0stZG9uLXQtZ2VuZXJhdGUtbWFuLXBhZ2Uu cGF0Y2gKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMTkgKzAsMCBAQAo+IC1Gcm9tOiBNaWNoYWVs IE9sYnJpY2ggPG0ub2xicmljaEBwZW5ndXRyb25peC5kZT4KPiAtRGF0ZTogV2VkLCAzIEp1biAy MDE1IDE2OjA4OjUxICswMjAwCj4gLVN1YmplY3Q6IFtQQVRDSF0gSEFDSzogZG9uJ3QgZ2VuZXJh dGUgbWFuIHBhZ2UKPiAtCj4gLVNpZ25lZC1vZmYtYnk6IE1pY2hhZWwgT2xicmljaCA8bS5vbGJy aWNoQHBlbmd1dHJvbml4LmRlPgo+IC0tLS0KPiAtIE1ha2VmaWxlLmFtIHwgMSAtCj4gLSAxIGZp bGUgY2hhbmdlZCwgMSBkZWxldGlvbigtKQo+IC0KPiAtZGlmZiAtLWdpdCBhL01ha2VmaWxlLmFt IGIvTWFrZWZpbGUuYW0KPiAtaW5kZXggMDZlYmY1OWVhNGFhLi5lNTI3ZjM0ZjFmYWEgMTAwNjQ0 Cj4gLS0tLSBhL01ha2VmaWxlLmFtCj4gLSsrKyBiL01ha2VmaWxlLmFtCj4gLUBAIC0xLDUgKzEs NCBAQAo+IC0gU1VCRElSUyA9IHNyYwo+IC0tZGlzdF9tYW5fTUFOUyA9IGV2bWN0bC4xCj4gLSAK PiAtIGRvY19EQVRBID0gIGV4YW1wbGVzL2ltYS1nZW5rZXktc2VsZi5zaCBleGFtcGxlcy9pbWEt Z2Vua2V5LnNoIGV4YW1wbGVzL2ltYS1nZW4tbG9jYWwtY2Euc2gKPiAtIEVYVFJBX0RJU1QgPSBh dXRvZ2VuLnNoICQoZG9jX0RBVEEpCj4gZGlmZiAtLWdpdCBhL3BhdGNoZXMvaW1hLWV2bS11dGls cy0xLjEvMDAxMy1ldm1jdGwtdXNlLWNvcnJlY3QtaW5jbHVkZS1mb3IteGF0dHIuaC5wYXRjaCBi L3BhdGNoZXMvaW1hLWV2bS11dGlscy0xLjEvMDAxMy1ldm1jdGwtdXNlLWNvcnJlY3QtaW5jbHVk ZS1mb3IteGF0dHIuaC5wYXRjaAo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDMx NTdjNzExYTA2NS4uMDAwMDAwMDAwMDAwCj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEu MS8wMDEzLWV2bWN0bC11c2UtY29ycmVjdC1pbmNsdWRlLWZvci14YXR0ci5oLnBhdGNoCj4gKysr IC9kZXYvbnVsbAo+IEBAIC0xLDgwICswLDAgQEAKPiAtRnJvbTogPT9VVEYtOD9xP0FuZHI9QzM9 QTk9MjBEcmFzemlrPz0gPGdpdEBhbmRyZWQubmV0Pgo+IC1EYXRlOiBNb24sIDE3IE9jdCAyMDE2 IDEyOjQ1OjMyICswMTAwCj4gLVN1YmplY3Q6IFtQQVRDSF0gZXZtY3RsOiB1c2UgY29ycmVjdCBp bmNsdWRlIGZvciB4YXR0ci5oCj4gLU1JTUUtVmVyc2lvbjogMS4wCj4gLUNvbnRlbnQtVHlwZTog dGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAo+IC1Db250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4 Yml0Cj4gLQo+IC1UaGUgeGF0dHIgQVBJL0FCSSBpcyBwcm92aWRlZCBieSBib3RoIHRoZSBjLWxp YnJhcnksIGFzIHdlbGwgYXMgYnkgdGhlCj4gLWxpYmF0dHIgcGFja2FnZS4gVGhlIGMtbGlicmFy eSdzIGhlYWRlciBmaWxlIGlzIHN5cy94YXR0ci5oLCB3aGVyZWFzCj4gLWxpYmF0dHIncyBoZWFk ZXIgZmlsZSBjYW4gYmUgZm91bmQgaW4gYXR0ci94YXR0ci5oLgo+IC0KPiAtR2l2ZW4gbm9uZSBv ZiB0aGUgY29kZSBoZXJlICpsaW5rcyogYWdhaW5zdCB0aGUgbGliYXR0ci5zbyBzaGFyZWQgbGli cmFyeSwgaXQKPiAtaXMgd3JvbmcgdG8gKmNvbXBpbGUqIGFnYWluc3QgbGliYXR0cidzIEFQSSAo aGVhZGVyIGZpbGUpLgo+IC0KPiAtRG9pbmcgc28gYXZvaWRzIGNvbmZ1c2lvbiBhcyB0byB3aGlj aCB4YXR0ci5oIGlzIHVzZWQgYXMgdGhlIGxlYXN0IHByb2JsZW0sCj4gLWFuZCBwb3RlbnRpYWwg QUJJIGRpZmZlcmVuY2VzIGFzIHRoZSB3b3JzdCBwcm9ibGVtIGR1ZSB0aGUgbWlzbWF0Y2hpbmcg aGVhZGVyCj4gLWZpbGUgdXNlZC4KPiAtCj4gLVNvIG1ha2Ugc3VyZSB3ZSBjb21waWxlIGFuZCBs aW5rIGFnYWluc3QgdGhlIHNhbWUgdGhpbmcsIHRoZSBjLWxpYnJhcnkgaW4KPiAtYm90aCBjYXNl cy4KPiAtCj4gLVNpZ25lZC1vZmYtYnk6IEFuZHLDqSBEcmFzemlrIDxnaXRAYW5kcmVkLm5ldD4K PiAtU2lnbmVkLW9mZi1ieTogTWltaSBab2hhciA8em9oYXJAbGludXgudm5ldC5pYm0uY29tPgo+ IC0tLS0KPiAtIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgICAgICAgfCAyICstCj4gLSBwYWNr YWdpbmcvaW1hLWV2bS11dGlscy5zcGVjICAgIHwgMSAtCj4gLSBwYWNrYWdpbmcvaW1hLWV2bS11 dGlscy5zcGVjLmluIHwgMSAtCj4gLSBzcmMvZXZtY3RsLmMgICAgICAgICAgICAgICAgICAgIHwg MiArLQo+IC0gNCBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p Cj4gLQo+IC1kaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCj4gLWluZGV4 IDY4MjJmMzljZmY2OS4uMDZkMDYxYmM5NGVhIDEwMDY0NAo+IC0tLS0gYS9jb25maWd1cmUuYWMK PiAtKysrIGIvY29uZmlndXJlLmFjCj4gLUBAIC0zMCw3ICszMCw3IEBAIEFDX1NVQlNUKE9QRU5T U0xfTElCUykKPiAtIEFDX0NIRUNLX0hFQURFUih1bmlzdGQuaCkKPiAtIEFDX0NIRUNLX0hFQURF UlMob3BlbnNzbC9jb25mLmgpCj4gLSAKPiAtLUFDX0NIRUNLX0hFQURFUlMoYXR0ci94YXR0ci5o LCAsIFtBQ19NU0dfRVJST1IoW2F0dHIveGF0dHIuaCBoZWFkZXIgbm90IGZvdW5kLiBZb3UgbmVl ZCB0aGUgbGliYXR0ciBkZXZlbG9wbWVudCBwYWNrYWdlLl0pXSkKPiAtK0FDX0NIRUNLX0hFQURF UlMoc3lzL3hhdHRyLmgsICwgW0FDX01TR19FUlJPUihbc3lzL3hhdHRyLmggaGVhZGVyIG5vdCBm b3VuZC4gWW91IG5lZWQgdGhlIGMtbGlicmFyeSBkZXZlbG9wbWVudCBwYWNrYWdlLl0pXSkKPiAt IEFDX0NIRUNLX0hFQURFUlMoa2V5dXRpbHMuaCwgLCBbQUNfTVNHX0VSUk9SKFtrZXl1dGlscy5o IGhlYWRlciBub3QgZm91bmQuIFlvdSBuZWVkIHRoZSBsaWJrZXl1dGlscyBkZXZlbG9wbWVudCBw YWNrYWdlLl0pXSkKPiAtIAo+IC0gI2RlYnVnIHN1cHBvcnQgLSB5ZXMgZm9yIGEgd2hpbGUKPiAt ZGlmZiAtLWdpdCBhL3BhY2thZ2luZy9pbWEtZXZtLXV0aWxzLnNwZWMgYi9wYWNrYWdpbmcvaW1h LWV2bS11dGlscy5zcGVjCj4gLWluZGV4IGExMWEyN2ExODgxNS4uNjMzODhkMmI0NDRiIDEwMDY0 NAo+IC0tLS0gYS9wYWNrYWdpbmcvaW1hLWV2bS11dGlscy5zcGVjCj4gLSsrKyBiL3BhY2thZ2lu Zy9pbWEtZXZtLXV0aWxzLnNwZWMKPiAtQEAgLTExLDcgKzExLDYgQEAgQnVpbGRSb290Ogkle190 bXBwYXRofS8le25hbWV9LSV7dmVyc2lvbn0tJXtyZWxlYXNlfS1yb290Cj4gLSBCdWlsZFJlcXVp cmVzOiAgICBhdXRvY29uZgo+IC0gQnVpbGRSZXF1aXJlczogICAgYXV0b21ha2UKPiAtIEJ1aWxk UmVxdWlyZXM6ICAgIG9wZW5zc2wtZGV2ZWwKPiAtLUJ1aWxkUmVxdWlyZXM6ICAgIGxpYmF0dHIt ZGV2ZWwKPiAtIEJ1aWxkUmVxdWlyZXM6ICAgIGtleXV0aWxzLWxpYnMtZGV2ZWwKPiAtIAo+IC0g JWRlc2NyaXB0aW9uCj4gLWRpZmYgLS1naXQgYS9wYWNrYWdpbmcvaW1hLWV2bS11dGlscy5zcGVj LmluIGIvcGFja2FnaW5nL2ltYS1ldm0tdXRpbHMuc3BlYy5pbgo+IC1pbmRleCA3Y2E2YzZmYjNi MGQuLjY1YzMyZjllNjQ0NSAxMDA2NDQKPiAtLS0tIGEvcGFja2FnaW5nL2ltYS1ldm0tdXRpbHMu c3BlYy5pbgo+IC0rKysgYi9wYWNrYWdpbmcvaW1hLWV2bS11dGlscy5zcGVjLmluCj4gLUBAIC0x MSw3ICsxMSw2IEBAIEJ1aWxkUm9vdDoJJXtfdG1wcGF0aH0vJXtuYW1lfS0le3ZlcnNpb259LSV7 cmVsZWFzZX0tcm9vdAo+IC0gQnVpbGRSZXF1aXJlczogICAgYXV0b2NvbmYKPiAtIEJ1aWxkUmVx dWlyZXM6ICAgIGF1dG9tYWtlCj4gLSBCdWlsZFJlcXVpcmVzOiAgICBvcGVuc3NsLWRldmVsCj4g LS1CdWlsZFJlcXVpcmVzOiAgICBsaWJhdHRyLWRldmVsCj4gLSBCdWlsZFJlcXVpcmVzOiAgICBr ZXl1dGlscy1saWJzLWRldmVsCj4gLSAKPiAtICVkZXNjcmlwdGlvbgo+IC1kaWZmIC0tZ2l0IGEv c3JjL2V2bWN0bC5jIGIvc3JjL2V2bWN0bC5jCj4gLWluZGV4IDQ0MjJjMGU4NGQ0YS4uMDJlYjg0 ZDRjMzQxIDEwMDY0NAo+IC0tLS0gYS9zcmMvZXZtY3RsLmMKPiAtKysrIGIvc3JjL2V2bWN0bC5j Cj4gLUBAIC00OSw3ICs0OSw3IEBACj4gLSAjaW5jbHVkZSA8c3RkaW50Lmg+Cj4gLSAjaW5jbHVk ZSA8c3RyaW5nLmg+Cj4gLSAjaW5jbHVkZSA8ZGlyZW50Lmg+Cj4gLS0jaW5jbHVkZSA8YXR0ci94 YXR0ci5oPgo+IC0rI2luY2x1ZGUgPHN5cy94YXR0ci5oPgo+IC0gI2luY2x1ZGUgPGxpbnV4L3hh dHRyLmg+Cj4gLSAjaW5jbHVkZSA8Z2V0b3B0Lmg+Cj4gLSAjaW5jbHVkZSA8a2V5dXRpbHMuaD4K PiBkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS9zZXJpZXMgYi9wYXRjaGVz L2ltYS1ldm0tdXRpbHMtMS4xL3Nlcmllcwo+IGRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAo+IGlu ZGV4IDZmYjA0MjQ2NTA0Mi4uMDAwMDAwMDAwMDAwCj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0 aWxzLTEuMS9zZXJpZXMKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMTYgKzAsMCBAQAo+IC0jIGdl bmVyYXRlZCBieSBnaXQtcHR4LXBhdGNoZXMKPiAtI3RhZzpiYXNlIC0tc3RhcnQtbnVtYmVyIDEK PiAtMDAwMS1JTlNUQUxMLXJlbW92ZS1maWxlLWF0LWl0LXMtYXV0b2dlbmVyYXRlZC1ieS1hdXRv dG9vLnBhdGNoCj4gLTAwMDItTWFrZWZpbGUuYW0tcmVuYW1lLUlOQ0xVREVTLUFNX0NQUEZMQUdT LnBhdGNoCj4gLTAwMDMtZXZtY3RsLWZpbmQtYWRkLW1pc3NpbmctY2xvc2VkaXItZGlyLW9uLWVy cm9yLnBhdGNoCj4gLTAwMDQtZXZtY3RsLWZpbmQtYWRkLW1pc3NpbmctZXJyb3ItaGFuZGxpbmct YW5kLXByb3BhZ2F0ZS5wYXRjaAo+IC0wMDA1LWV2bWN0bC1hZGQtZmFsbGJhY2stZGVmaW5pdGlv bnMtZm9yLVhBVFRSX05BTUVfSU1BLnBhdGNoCj4gLTAwMDYtZXZtY3RsLWxpYmltYWV2bS11c2Ut RVZQX01BWF9NRF9TSVpFLWZvci1oYXNoLXNpemUtaS5wYXRjaAo+IC0wMDA3LWxpYmltYWV2bS11 c2UtU0hBX0RJR0VTVF9MRU5HVEgtaW5zdGVhZC1vZi1vcGVuLWNvZGkucGF0Y2gKPiAtMDAwOC1l dm1jdGwtYWRkLXBhcmFtZXRlci1lLXRvLXNldC1ldm0taGFzaC1hbGdvLnBhdGNoCj4gLTAwMDkt ZXZtY3RsLWFkZC1zdXBwb3J0LWZvci1vZmZsaW5lLWltYWdlLXByZXBhcmF0aW9uLnBhdGNoCj4g LTAwMTAtZXZtY3RsLURvLW5vdC1hY2NvdW50LS4tYW5kLS4tZm9yLWRpcmVjdG9yeS1oYXNoLWdl bi5wYXRjaAo+IC0wMDExLUhBQ0stZG9uLXQtZ2VuZXJhdGUtbWFuLXBhZ2UucGF0Y2gKPiAtMDAx Mi1GaXgtd2FybmluZy1mb3Itbm9uLWRlYnVnLXVzZS1jYXNlLnBhdGNoCj4gLTAwMTMtZXZtY3Rs LXVzZS1jb3JyZWN0LWluY2x1ZGUtZm9yLXhhdHRyLmgucGF0Y2gKPiAtIyA1MDMyZTk2ZmI2ZGE3 Y2I3N2YwNTNjMmI1YTZlZGM0NCAgLSBnaXQtcHR4LXBhdGNoZXMgbWFnaWMKPiBkaWZmIC0tZ2l0 IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDAzLWV2bWN0bC1maW5kLWFkZC1taXNzaW5n LWNsb3NlZGlyLWRpci1vbi1lcnJvci5wYXRjaCBiL3BhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMu Mi8wMDAxLWV2bWN0bC1maW5kLWFkZC1taXNzaW5nLWNsb3NlZGlyLWRpci1vbi1lcnJvci5wYXRj aAo+IHNpbWlsYXJpdHkgaW5kZXggNzklCj4gcmVuYW1lIGZyb20gcGF0Y2hlcy9pbWEtZXZtLXV0 aWxzLTEuMS8wMDAzLWV2bWN0bC1maW5kLWFkZC1taXNzaW5nLWNsb3NlZGlyLWRpci1vbi1lcnJv ci5wYXRjaAo+IHJlbmFtZSB0byBwYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAwMS1ldm1j dGwtZmluZC1hZGQtbWlzc2luZy1jbG9zZWRpci1kaXItb24tZXJyb3IucGF0Y2gKPiBpbmRleCA0 YjFjODQ1ODQ0NzkuLjVjOTFjNDYyMWE3NiAxMDA2NDQKPiAtLS0gYS9wYXRjaGVzL2ltYS1ldm0t dXRpbHMtMS4xLzAwMDMtZXZtY3RsLWZpbmQtYWRkLW1pc3NpbmctY2xvc2VkaXItZGlyLW9uLWVy cm9yLnBhdGNoCj4gKysrIGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMy4yLzAwMDEtZXZtY3Rs LWZpbmQtYWRkLW1pc3NpbmctY2xvc2VkaXItZGlyLW9uLWVycm9yLnBhdGNoCj4gQEAgLTEwLDEw ICsxMCwxMCBAQCBTaWduZWQtb2ZmLWJ5OiBNYXJjIEtsZWluZS1CdWRkZSA8bWtsQHBlbmd1dHJv bml4LmRlPgo+ICAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQo+ICAKPiAgZGlmZiAt LWdpdCBhL3NyYy9ldm1jdGwuYyBiL3NyYy9ldm1jdGwuYwo+IC1pbmRleCAyZmZlZTc4Njg2NWIu LjIwZWNjZmE5M2IyYiAxMDA2NDQKPiAraW5kZXggMTgxNWY1NWQ3M2UwLi5jY2EyZmFiZGIyYTYg MTAwNjQ0Cj4gIC0tLSBhL3NyYy9ldm1jdGwuYwo+ICArKysgYi9zcmMvZXZtY3RsLmMKPiAtQEAg LTEyMjksNiArMTIyOSw3IEBAIHN0YXRpYyBpbnQgZmluZChjb25zdCBjaGFyICpwYXRoLCBpbnQg ZHRzLCBmaW5kX2NiX3QgZnVuYykKPiArQEAgLTEzMzEsNiArMTMzMSw3IEBAIHN0YXRpYyBpbnQg ZmluZChjb25zdCBjaGFyICpwYXRoLCBpbnQgZHRzLCBmaW5kX2NiX3QgZnVuYykKPiAgIAo+ICAg CWlmIChmY2hkaXIoZGlyZmQoZGlyKSkpIHsKPiAgIAkJbG9nX2VycigiRmFpbGVkIHRvIGNoZGly ICVzXG4iLCBwYXRoKTsKPiBAQCAtMjEsNyArMjEsNyBAQCBpbmRleCAyZmZlZTc4Njg2NWIuLjIw ZWNjZmE5M2IyYiAxMDA2NDQKPiAgIAkJcmV0dXJuIC0xOwo+ICAgCX0KPiAgIAo+IC1AQCAtMTI0 NCw2ICsxMjQ1LDcgQEAgc3RhdGljIGludCBmaW5kKGNvbnN0IGNoYXIgKnBhdGgsIGludCBkdHMs IGZpbmRfY2JfdCBmdW5jKQo+ICtAQCAtMTM0Niw2ICsxMzQ3LDcgQEAgc3RhdGljIGludCBmaW5k KGNvbnN0IGNoYXIgKnBhdGgsIGludCBkdHMsIGZpbmRfY2JfdCBmdW5jKQo+ICAgCj4gICAJaWYg KGNoZGlyKCIuLiIpKSB7Cj4gICAJCWxvZ19lcnIoIkZhaWxlZCB0byBjaGRpcjogJXNcbiIsIHBh dGgpOwo+IGRpZmYgLS1naXQgYS9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAwMDQtZXZtY3Rs LWZpbmQtYWRkLW1pc3NpbmctZXJyb3ItaGFuZGxpbmctYW5kLXByb3BhZ2F0ZS5wYXRjaCBiL3Bh dGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDAyLWV2bWN0bC1maW5kLWFkZC1taXNzaW5nLWVy cm9yLWhhbmRsaW5nLWFuZC1wcm9wYWdhdGUucGF0Y2gKPiBzaW1pbGFyaXR5IGluZGV4IDg3JQo+ IHJlbmFtZSBmcm9tIHBhdGNoZXMvaW1hLWV2bS11dGlscy0xLjEvMDAwNC1ldm1jdGwtZmluZC1h ZGQtbWlzc2luZy1lcnJvci1oYW5kbGluZy1hbmQtcHJvcGFnYXRlLnBhdGNoCj4gcmVuYW1lIHRv IHBhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDAyLWV2bWN0bC1maW5kLWFkZC1taXNzaW5n LWVycm9yLWhhbmRsaW5nLWFuZC1wcm9wYWdhdGUucGF0Y2gKPiBpbmRleCA2ODY2MGQ5NWVkYTAu LjYyNDcxNDg5YTlmMiAxMDA2NDQKPiAtLS0gYS9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAw MDQtZXZtY3RsLWZpbmQtYWRkLW1pc3NpbmctZXJyb3ItaGFuZGxpbmctYW5kLXByb3BhZ2F0ZS5w YXRjaAo+ICsrKyBiL3BhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDAyLWV2bWN0bC1maW5k LWFkZC1taXNzaW5nLWVycm9yLWhhbmRsaW5nLWFuZC1wcm9wYWdhdGUucGF0Y2gKPiBAQCAtMTIs MTAgKzEyLDEwIEBAIFNpZ25lZC1vZmYtYnk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxta2xAcGVuZ3V0 cm9uaXguZGU+Cj4gICAxIGZpbGUgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlv bnMoLSkKPiAgCj4gIGRpZmYgLS1naXQgYS9zcmMvZXZtY3RsLmMgYi9zcmMvZXZtY3RsLmMKPiAt aW5kZXggMjBlY2NmYTkzYjJiLi41NWZjNjE5ZjU5OTAgMTAwNjQ0Cj4gK2luZGV4IGNjYTJmYWJk YjJhNi4uZTY3NjFmMmFlNWU0IDEwMDY0NAo+ICAtLS0gYS9zcmMvZXZtY3RsLmMKPiAgKysrIGIv c3JjL2V2bWN0bC5jCj4gLUBAIC0xMjM0LDEzICsxMjM0LDIwIEBAIHN0YXRpYyBpbnQgZmluZChj b25zdCBjaGFyICpwYXRoLCBpbnQgZHRzLCBmaW5kX2NiX3QgZnVuYykKPiArQEAgLTEzMzYsMTMg KzEzMzYsMjAgQEAgc3RhdGljIGludCBmaW5kKGNvbnN0IGNoYXIgKnBhdGgsIGludCBkdHMsIGZp bmRfY2JfdCBmdW5jKQo+ICAgCX0KPiAgIAo+ICAgCXdoaWxlICgoZGUgPSByZWFkZGlyKGRpcikp KSB7Cj4gQEAgLTM4LDcgKzM4LDcgQEAgaW5kZXggMjBlY2NmYTkzYjJiLi41NWZjNjE5ZjU5OTAg MTAwNjQ0Cj4gICAJfQo+ICAgCj4gICAJaWYgKGNoZGlyKCIuLiIpKSB7Cj4gLUBAIC0xMjQ5LDgg KzEyNTYsMTMgQEAgc3RhdGljIGludCBmaW5kKGNvbnN0IGNoYXIgKnBhdGgsIGludCBkdHMsIGZp bmRfY2JfdCBmdW5jKQo+ICtAQCAtMTM1MSw4ICsxMzU4LDEzIEBAIHN0YXRpYyBpbnQgZmluZChj b25zdCBjaGFyICpwYXRoLCBpbnQgZHRzLCBmaW5kX2NiX3QgZnVuYykKPiAgIAkJcmV0dXJuIC0x Owo+ICAgCX0KPiAgIAo+IGRpZmYgLS1naXQgYS9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAw MDUtZXZtY3RsLWFkZC1mYWxsYmFjay1kZWZpbml0aW9ucy1mb3ItWEFUVFJfTkFNRV9JTUEucGF0 Y2ggYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAwMy1ldm1jdGwtYWRkLWZhbGxiYWNr LWRlZmluaXRpb25zLWZvci1YQVRUUl9OQU1FX0lNQS5wYXRjaAo+IHNpbWlsYXJpdHkgaW5kZXgg ODAlCj4gcmVuYW1lIGZyb20gcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDA1LWV2bWN0bC1h ZGQtZmFsbGJhY2stZGVmaW5pdGlvbnMtZm9yLVhBVFRSX05BTUVfSU1BLnBhdGNoCj4gcmVuYW1l IHRvIHBhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDAzLWV2bWN0bC1hZGQtZmFsbGJhY2st ZGVmaW5pdGlvbnMtZm9yLVhBVFRSX05BTUVfSU1BLnBhdGNoCj4gaW5kZXggNjlhYWRiMzc3NjY4 Li4wZGUyNGFmNmEwZTcgMTAwNjQ0Cj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8w MDA1LWV2bWN0bC1hZGQtZmFsbGJhY2stZGVmaW5pdGlvbnMtZm9yLVhBVFRSX05BTUVfSU1BLnBh dGNoCj4gKysrIGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMy4yLzAwMDMtZXZtY3RsLWFkZC1m YWxsYmFjay1kZWZpbml0aW9ucy1mb3ItWEFUVFJfTkFNRV9JTUEucGF0Y2gKPiBAQCAtMTAsMTIg KzEwLDEyIEBAIFNpZ25lZC1vZmYtYnk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxta2xAcGVuZ3V0cm9u aXguZGU+Cj4gICAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspCj4gIAo+ICBkaWZmIC0t Z2l0IGEvc3JjL2V2bWN0bC5jIGIvc3JjL2V2bWN0bC5jCj4gLWluZGV4IDU1ZmM2MTlmNTk5MC4u ZGU1M2JlMzdiNjliIDEwMDY0NAo+ICtpbmRleCBlNjc2MWYyYWU1ZTQuLmExZmQ5ZmVhZWE3OCAx MDA2NDQKPiAgLS0tIGEvc3JjL2V2bWN0bC5jCj4gICsrKyBiL3NyYy9ldm1jdGwuYwo+IC1AQCAt NjIsNiArNjIsMTEgQEAKPiAtICNpbmNsdWRlIDxvcGVuc3NsL2Vyci5oPgo+IC0gI2luY2x1ZGUg PG9wZW5zc2wvcnNhLmg+Cj4gK0BAIC03Miw2ICs3MiwxMSBAQAo+ICsgI2RlZmluZSBYQVRUUl9O QU1FX0FQUEFSTU9SIFhBVFRSX1NFQ1VSSVRZX1BSRUZJWCBYQVRUUl9BUFBBUk1PUl9TVUZGSVgK PiArICNlbmRpZgo+ICAgCj4gICsjaWZuZGVmIFhBVFRSX05BTUVfSU1BCj4gICsjZGVmaW5lIFhB VFRSX0lNQV9TVUZGSVggImltYSIKPiBkaWZmIC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxz LTEuMS8wMDA3LWxpYmltYWV2bS11c2UtU0hBX0RJR0VTVF9MRU5HVEgtaW5zdGVhZC1vZi1vcGVu LWNvZGkucGF0Y2ggYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAwNC1saWJpbWFldm0t dXNlLVNIQV9ESUdFU1RfTEVOR1RILWluc3RlYWQtb2Ytb3Blbi1jb2RpLnBhdGNoCj4gc2ltaWxh cml0eSBpbmRleCA3NiUKPiByZW5hbWUgZnJvbSBwYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAw MDctbGliaW1hZXZtLXVzZS1TSEFfRElHRVNUX0xFTkdUSC1pbnN0ZWFkLW9mLW9wZW4tY29kaS5w YXRjaAo+IHJlbmFtZSB0byBwYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAwNC1saWJpbWFl dm0tdXNlLVNIQV9ESUdFU1RfTEVOR1RILWluc3RlYWQtb2Ytb3Blbi1jb2RpLnBhdGNoCj4gaW5k ZXggMjE2NGM2MjM4ZTc4Li5lMjBjZmFhODI2ZGYgMTAwNjQ0Cj4gLS0tIGEvcGF0Y2hlcy9pbWEt ZXZtLXV0aWxzLTEuMS8wMDA3LWxpYmltYWV2bS11c2UtU0hBX0RJR0VTVF9MRU5HVEgtaW5zdGVh ZC1vZi1vcGVuLWNvZGkucGF0Y2gKPiArKysgYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIv MDAwNC1saWJpbWFldm0tdXNlLVNIQV9ESUdFU1RfTEVOR1RILWluc3RlYWQtb2Ytb3Blbi1jb2Rp LnBhdGNoCj4gQEAgLTgsMTAgKzgsMTAgQEAgU2lnbmVkLW9mZi1ieTogTWFyYyBLbGVpbmUtQnVk ZGUgPG1rbEBwZW5ndXRyb25peC5kZT4KPiAgIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCj4gIAo+ICBkaWZmIC0tZ2l0IGEvc3JjL2xpYmltYWV2bS5jIGIv c3JjL2xpYmltYWV2bS5jCj4gLWluZGV4IDhmYzIzYmUwOGJkNy4uYjZjMzI4ODAxNzA4IDEwMDY0 NAo+ICtpbmRleCBmYTZjMjc4NThkMGYuLjAwMmIwNjU3MzM3YyAxMDA2NDQKPiAgLS0tIGEvc3Jj L2xpYmltYWV2bS5jCj4gICsrKyBiL3NyYy9saWJpbWFldm0uYwo+IC1AQCAtMzc5LDcgKzM3OSw3 IEBAIGludCB2ZXJpZnlfaGFzaF92MShjb25zdCBjaGFyICpmaWxlLCBjb25zdCB1bnNpZ25lZCBj aGFyICpoYXNoLCBpbnQgc2l6ZSwKPiArQEAgLTM4Miw3ICszODIsNyBAQCBzdGF0aWMgaW50IHZl cmlmeV9oYXNoX3YxKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmhhc2gs IGludCBzaXplLAo+ICAgCVNIQV9DVFggY3R4Owo+ICAgCXVuc2lnbmVkIGNoYXIgb3V0WzEwMjRd Owo+ICAgCVJTQSAqa2V5Owo+IEBAIC0yMCw3ICsyMCw3IEBAIGluZGV4IDhmYzIzYmUwOGJkNy4u YjZjMzI4ODAxNzA4IDEwMDY0NAo+ICAgCXN0cnVjdCBzaWduYXR1cmVfaGRyICpoZHIgPSAoc3Ry dWN0IHNpZ25hdHVyZV9oZHIgKilzaWc7Cj4gICAKPiAgIAlsb2dfaW5mbygiaGFzaC12MTogIik7 Cj4gLUBAIC03NDQsNyArNzQ0LDcgQEAgaW50IHNpZ25faGFzaF92MShjb25zdCBjaGFyICpoYXNo YWxnbywgY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaCwgaW50IHNpemUsIGNvbnMKPiArQEAgLTgw NSw3ICs4MDUsNyBAQCBzdGF0aWMgaW50IHNpZ25faGFzaF92MShjb25zdCBjaGFyICpoYXNoYWxn bywgY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaCwKPiAgIAl1bnNpZ25lZCBjaGFyIHB1YlsxMDI0 XTsKPiAgIAlSU0EgKmtleTsKPiAgIAljaGFyIG5hbWVbMjBdOwo+IGRpZmYgLS1naXQgYS9wYXRj aGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAwMDktZXZtY3RsLWFkZC1zdXBwb3J0LWZvci1vZmZsaW5l LWltYWdlLXByZXBhcmF0aW9uLnBhdGNoIGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMy4yLzAw MDUtZXZtY3RsLWFkZC1zdXBwb3J0LWZvci1vZmZsaW5lLWltYWdlLXByZXBhcmF0aW9uLnBhdGNo Cj4gc2ltaWxhcml0eSBpbmRleCA3OCUKPiByZW5hbWUgZnJvbSBwYXRjaGVzL2ltYS1ldm0tdXRp bHMtMS4xLzAwMDktZXZtY3RsLWFkZC1zdXBwb3J0LWZvci1vZmZsaW5lLWltYWdlLXByZXBhcmF0 aW9uLnBhdGNoCj4gcmVuYW1lIHRvIHBhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDA1LWV2 bWN0bC1hZGQtc3VwcG9ydC1mb3Itb2ZmbGluZS1pbWFnZS1wcmVwYXJhdGlvbi5wYXRjaAo+IGlu ZGV4IDZkOWI0MGZjNWI0My4uNzVkOTI3MzQxOTBjIDEwMDY0NAo+IC0tLSBhL3BhdGNoZXMvaW1h LWV2bS11dGlscy0xLjEvMDAwOS1ldm1jdGwtYWRkLXN1cHBvcnQtZm9yLW9mZmxpbmUtaW1hZ2Ut cHJlcGFyYXRpb24ucGF0Y2gKPiArKysgYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAw NS1ldm1jdGwtYWRkLXN1cHBvcnQtZm9yLW9mZmxpbmUtaW1hZ2UtcHJlcGFyYXRpb24ucGF0Y2gK PiBAQCAtMzMsMjkgKzMzLDI5IEBAIFNpZ25lZC1vZmYtYnk6IE1hcmMgS2xlaW5lLUJ1ZGRlIDxt a2xAcGVuZ3V0cm9uaXguZGU+Cj4gIC0tLQo+ICAgc3JjL2V2bWN0bC5jICAgIHwgNTcgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCj4gICBz cmMvaW1hZXZtLmggICAgfCAgMSArCj4gLSBzcmMvbGliaW1hZXZtLmMgfCAyNSArKysrKysrKysr KysrKysrKysrKysrKystCj4gLSAzIGZpbGVzIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDkg ZGVsZXRpb25zKC0pCj4gKyBzcmMvbGliaW1hZXZtLmMgfCAyNCArKysrKysrKysrKysrKysrKysr KysrKy0KPiArIDMgZmlsZXMgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMo LSkKPiAgCj4gIGRpZmYgLS1naXQgYS9zcmMvZXZtY3RsLmMgYi9zcmMvZXZtY3RsLmMKPiAtaW5k ZXggNWQ2NjQwMDVlOTE1Li45MDAzZjc2NDBjMGYgMTAwNjQ0Cj4gK2luZGV4IGExZmQ5ZmVhZWE3 OC4uYTRkNzg0YTViZmI2IDEwMDY0NAo+ICAtLS0gYS9zcmMvZXZtY3RsLmMKPiAgKysrIGIvc3Jj L2V2bWN0bC5jCj4gLUBAIC0zMzcsNiArMzM3LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNo KGNvbnN0IGNoYXIgKmZpbGUsIHVuc2lnbmVkIGNoYXIgKmhhc2gpCj4gK0BAIC0zNTIsNiArMzUy LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVuc2lnbmVk IGNoYXIgKmhhc2gpCj4gKyAjZWxzZQo+ICAgCXBjdHggPSBFVlBfTURfQ1RYX25ldygpOwo+ICAg I2VuZGlmCj4gLSAJY29uc3QgRVZQX01EICptZDsKPiAgKwlpbm9fdCBpbm87Cj4gICAKPiAgIAlp ZiAobHN0YXQoZmlsZSwgJnN0KSkgewo+ICAgCQlsb2dfZXJyKCJGYWlsZWQgdG8gc3RhdDogJXNc biIsIGZpbGUpOwo+IC1AQCAtMzcxLDkgKzM3MiwyNSBAQCBzdGF0aWMgaW50IGNhbGNfZXZtX2hh c2goY29uc3QgY2hhciAqZmlsZSwgdW5zaWduZWQgY2hhciAqaGFzaCkKPiArQEAgLTM4Niw5ICsz ODcsMjUgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVuc2ln bmVkIGNoYXIgKmhhc2gpCj4gICAJCQl9Cj4gICAJCQljbG9zZShmZCk7Cj4gICAJCX0KPiAgLQkJ bG9nX2luZm8oImdlbmVyYXRpb246ICV1XG4iLCBnZW5lcmF0aW9uKTsKPiAgIAl9Cj4gICAKPiAt KwlpZiAocGFyYW1zLmltYWdlX21vZGUpIHsKPiArKwlpZiAoaW1hZXZtX3BhcmFtcy5pbWFnZV9t b2RlKSB7Cj4gICsJCWNoYXIgYnVmWzEyOF0gPSB7IH07Cj4gICsKPiAgKwkJZXJyID0gbGdldHhh dHRyKGZpbGUsICJ1c2VyLmltYWdlLWlub2RlLW51bWJlciIsIGJ1Ziwgc2l6ZW9mKGJ1ZikgLSAx KTsKPiBAQCAtNzUsNyArNzUsNyBAQCBpbmRleCA1ZDY2NDAwNWU5MTUuLjkwMDNmNzY0MGMwZiAx MDA2NDQKPiAgIAlsaXN0X3NpemUgPSBsbGlzdHhhdHRyKGZpbGUsIGxpc3QsIHNpemVvZihsaXN0 KSk7Cj4gICAJaWYgKGxpc3Rfc2l6ZSA8IDApIHsKPiAgIAkJbG9nX2VycigibGxpc3R4YXR0cigp IGZhaWxlZFxuIik7Cj4gLUBAIC00MzksNyArNDU2LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9o YXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVuc2lnbmVkIGNoYXIgKmhhc2gpCj4gK0BAIC00NzAsNyAr NDg3LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9oYXNoKGNvbnN0IGNoYXIgKmZpbGUsIHVuc2ln bmVkIGNoYXIgKmhhc2gpCj4gICAKPiAgIAkJaG1hY19zaXplID0gc2l6ZW9mKCpobWFjKTsKPiAg IAkJaWYgKCFldm1fcG9ydGFibGUpIHsKPiBAQCAtODQsNyArODQsNyBAQCBpbmRleCA1ZDY2NDAw NWU5MTUuLjkwMDNmNzY0MGMwZiAxMDA2NDQKPiAgIAkJCWhtYWMtPmdlbmVyYXRpb24gPSBnZW5l cmF0aW9uOwo+ICAgCQl9Cj4gICAJCWhtYWMtPnVpZCA9IHN0LnN0X3VpZDsKPiAtQEAgLTQ1MCw3 ICs0NjcsNyBAQCBzdGF0aWMgaW50IGNhbGNfZXZtX2hhc2goY29uc3QgY2hhciAqZmlsZSwgdW5z aWduZWQgY2hhciAqaGFzaCkKPiArQEAgLTQ4MSw3ICs0OTgsNyBAQCBzdGF0aWMgaW50IGNhbGNf ZXZtX2hhc2goY29uc3QgY2hhciAqZmlsZSwgdW5zaWduZWQgY2hhciAqaGFzaCkKPiAgIAo+ICAg CQlobWFjX3NpemUgPSBzaXplb2YoKmhtYWMpOwo+ICAgCQlpZiAoIWV2bV9wb3J0YWJsZSkgewo+ IEBAIC05Myw3ICs5Myw3IEBAIGluZGV4IDVkNjY0MDA1ZTkxNS4uOTAwM2Y3NjQwYzBmIDEwMDY0 NAo+ICAgCQkJaG1hYy0+Z2VuZXJhdGlvbiA9IGdlbmVyYXRpb247Cj4gICAJCX0KPiAgIAkJaG1h Yy0+dWlkID0gc3Quc3RfdWlkOwo+IC1AQCAtNDYxLDcgKzQ3OCw3IEBAIHN0YXRpYyBpbnQgY2Fs Y19ldm1faGFzaChjb25zdCBjaGFyICpmaWxlLCB1bnNpZ25lZCBjaGFyICpoYXNoKQo+ICtAQCAt NDkyLDcgKzUwOSw3IEBAIHN0YXRpYyBpbnQgY2FsY19ldm1faGFzaChjb25zdCBjaGFyICpmaWxl LCB1bnNpZ25lZCBjaGFyICpoYXNoKQo+ICAgCj4gICAJCWhtYWNfc2l6ZSA9IHNpemVvZigqaG1h Yyk7Cj4gICAJCWlmICghZXZtX3BvcnRhYmxlKSB7Cj4gQEAgLTEwMiwxOSArMTAyLDE5IEBAIGlu ZGV4IDVkNjY0MDA1ZTkxNS4uOTAwM2Y3NjQwYzBmIDEwMDY0NAo+ICAgCQkJaG1hYy0+Z2VuZXJh dGlvbiA9IGdlbmVyYXRpb247Cj4gICAJCX0KPiAgIAkJaG1hYy0+dWlkID0gc3Quc3RfdWlkOwo+ IC1AQCAtMTAwMCw2ICsxMDE3LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9obWFjKGNvbnN0IGNo YXIgKmZpbGUsIGNvbnN0IGNoYXIgKmtleWZpbGUsIHVuc2lnbmVkIGNoYXIgKmgKPiArQEAgLTEw ODUsNiArMTEwMiw3IEBAIHN0YXRpYyBpbnQgY2FsY19ldm1faG1hYyhjb25zdCBjaGFyICpmaWxl LCBjb25zdCBjaGFyICprZXlmaWxlLCB1bnNpZ25lZCBjaGFyICpoCj4gKyAjZWxzZQo+ICAgCXBj dHggPSBITUFDX0NUWF9uZXcoKTsKPiAgICNlbmRpZgo+IC0gCWNvbnN0IEVWUF9NRCAqbWQ7Cj4g ICsJaW5vX3QgaW5vOwo+ICAgCj4gICAJa2V5ID0gZmlsZTJiaW4oa2V5ZmlsZSwgTlVMTCwgJmtl eWxlbik7Cj4gICAJaWYgKCFrZXkpIHsKPiAtQEAgLTEwMzgsMTAgKzEwNTYsMjYgQEAgc3RhdGlj IGludCBjYWxjX2V2bV9obWFjKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKmtleWZpbGUs IHVuc2lnbmVkIGNoYXIgKmgKPiArQEAgLTExMjMsMTAgKzExNDEsMjYgQEAgc3RhdGljIGludCBj YWxjX2V2bV9obWFjKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKmtleWZpbGUsIHVuc2ln bmVkIGNoYXIgKmgKPiAgIAkJY2xvc2UoZmQpOwo+ICAgCX0KPiAgIAo+IC0rCWlmIChwYXJhbXMu aW1hZ2VfbW9kZSkgewo+ICsrCWlmIChpbWFldm1fcGFyYW1zLmltYWdlX21vZGUpIHsKPiAgKwkJ Y2hhciBidWZbMTI4XSA9IHsgfTsKPiAgKwo+ICArCQllcnIgPSBsZ2V0eGF0dHIoZmlsZSwgInVz ZXIuaW1hZ2UtaW5vZGUtbnVtYmVyIiwgYnVmLCBzaXplb2YoYnVmKSAtIDEpOwo+IEBAIC0xMzcs NyArMTM3LDcgQEAgaW5kZXggNWQ2NjQwMDVlOTE1Li45MDAzZjc2NDBjMGYgMTAwNjQ0Cj4gICAJ CWxvZ19lcnIoImxsaXN0eGF0dHIoKSBmYWlsZWQ6ICVzXG4iLCBmaWxlKTsKPiAgIAkJZ290byBv dXQ7Cj4gICAJfQo+IC1AQCAtMTA4NCw3ICsxMTE4LDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9o bWFjKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKmtleWZpbGUsIHVuc2lnbmVkIGNoYXIg KmgKPiArQEAgLTExNzAsNyArMTIwNCw3IEBAIHN0YXRpYyBpbnQgY2FsY19ldm1faG1hYyhjb25z dCBjaGFyICpmaWxlLCBjb25zdCBjaGFyICprZXlmaWxlLCB1bnNpZ25lZCBjaGFyICpoCj4gICAJ CXN0cnVjdCBoX21pc2MgKmhtYWMgPSAoc3RydWN0IGhfbWlzYyAqKSZobWFjX21pc2M7Cj4gICAK PiAgIAkJaG1hY19zaXplID0gc2l6ZW9mKCpobWFjKTsKPiBAQCAtMTQ2LDcgKzE0Niw3IEBAIGlu ZGV4IDVkNjY0MDA1ZTkxNS4uOTAwM2Y3NjQwYzBmIDEwMDY0NAo+ICAgCQlobWFjLT5nZW5lcmF0 aW9uID0gZ2VuZXJhdGlvbjsKPiAgIAkJaG1hYy0+dWlkID0gc3Quc3RfdWlkOwo+ICAgCQlobWFj LT5naWQgPSBzdC5zdF9naWQ7Cj4gLUBAIC0xMDkzLDcgKzExMjcsNyBAQCBzdGF0aWMgaW50IGNh bGNfZXZtX2htYWMoY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqa2V5ZmlsZSwgdW5zaWdu ZWQgY2hhciAqaAo+ICtAQCAtMTE3OSw3ICsxMjEzLDcgQEAgc3RhdGljIGludCBjYWxjX2V2bV9o bWFjKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKmtleWZpbGUsIHVuc2lnbmVkIGNoYXIg KmgKPiAgIAkJc3RydWN0IGhfbWlzY182NCAqaG1hYyA9IChzdHJ1Y3QgaF9taXNjXzY0ICopJmht YWNfbWlzYzsKPiAgIAo+ICAgCQlobWFjX3NpemUgPSBzaXplb2YoKmhtYWMpOwo+IEBAIC0xNTUs NyArMTU1LDcgQEAgaW5kZXggNWQ2NjQwMDVlOTE1Li45MDAzZjc2NDBjMGYgMTAwNjQ0Cj4gICAJ CWhtYWMtPmdlbmVyYXRpb24gPSBnZW5lcmF0aW9uOwo+ICAgCQlobWFjLT51aWQgPSBzdC5zdF91 aWQ7Cj4gICAJCWhtYWMtPmdpZCA9IHN0LnN0X2dpZDsKPiAtQEAgLTExMDIsNyArMTEzNiw3IEBA IHN0YXRpYyBpbnQgY2FsY19ldm1faG1hYyhjb25zdCBjaGFyICpmaWxlLCBjb25zdCBjaGFyICpr ZXlmaWxlLCB1bnNpZ25lZCBjaGFyICpoCj4gK0BAIC0xMTg4LDcgKzEyMjIsNyBAQCBzdGF0aWMg aW50IGNhbGNfZXZtX2htYWMoY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqa2V5ZmlsZSwg dW5zaWduZWQgY2hhciAqaAo+ICAgCQlzdHJ1Y3QgaF9taXNjXzMyICpobWFjID0gKHN0cnVjdCBo X21pc2NfMzIgKikmaG1hY19taXNjOwo+ICAgCj4gICAJCWhtYWNfc2l6ZSA9IHNpemVvZigqaG1h Yyk7Cj4gQEAgLTE2NCw3ICsxNjQsNyBAQCBpbmRleCA1ZDY2NDAwNWU5MTUuLjkwMDNmNzY0MGMw ZiAxMDA2NDQKPiAgIAkJaG1hYy0+Z2VuZXJhdGlvbiA9IGdlbmVyYXRpb247Cj4gICAJCWhtYWMt PnVpZCA9IHN0LnN0X3VpZDsKPiAgIAkJaG1hYy0+Z2lkID0gc3Quc3RfZ2lkOwo+IC1AQCAtMTY2 Niw2ICsxNzAwLDkgQEAgc3RhdGljIHZvaWQgdXNhZ2Uodm9pZCkKPiArQEAgLTI0NzYsNiArMjUx MCw5IEBAIHN0YXRpYyB2b2lkIHVzYWdlKHZvaWQpCj4gICAJCSIgICAgICAtLXNtYWNrICAgICAg ICB1c2UgZXh0cmEgU01BQ0sgeGF0dHJzIGZvciBFVk1cbiIKPiAgIAkJIiAgICAgIC0tbTMyICAg ICAgICAgIGZvcmNlIEVWTSBobWFjL3NpZ25hdHVyZSBmb3IgMzIgYml0IHRhcmdldCBzeXN0ZW1c biIKPiAgIAkJIiAgICAgIC0tbTY0ICAgICAgICAgIGZvcmNlIEVWTSBobWFjL3NpZ25hdHVyZSBm b3IgNjQgYml0IHRhcmdldCBzeXN0ZW1cbiIKPiBAQCAtMTc0LDcgKzE3NCw3IEBAIGluZGV4IDVk NjY0MDA1ZTkxNS4uOTAwM2Y3NjQwYzBmIDEwMDY0NAo+ICAgCQkiICAgICAgLS1pbm8gICAgICAg ICAgdXNlIGN1c3RvbSBpbm9kZSBmb3IgRVZNXG4iCj4gICAJCSIgICAgICAtLXVpZCAgICAgICAg ICB1c2UgY3VzdG9tIFVJRCBmb3IgRVZNXG4iCj4gICAJCSIgICAgICAtLWdpZCAgICAgICAgICB1 c2UgY3VzdG9tIEdJRCBmb3IgRVZNXG4iCj4gLUBAIC0xNzE2LDYgKzE3NTMsNyBAQCBzdGF0aWMg c3RydWN0IG9wdGlvbiBvcHRzW10gPSB7Cj4gK0BAIC0yNTI4LDYgKzI1NjUsNyBAQCBzdGF0aWMg c3RydWN0IG9wdGlvbiBvcHRzW10gPSB7Cj4gICAJeyJyZWN1cnNpdmUiLCAwLCAwLCAncid9LAo+ ICAgCXsibTMyIiwgMCwgMCwgJzMnfSwKPiAgIAl7Im02NCIsIDAsIDAsICc2J30sCj4gQEAgLTE4 MiwzMSArMTgyLDMxIEBAIGluZGV4IDVkNjY0MDA1ZTkxNS4uOTAwM2Y3NjQwYzBmIDEwMDY0NAo+ ICAgCXsicG9ydGFibGUiLCAwLCAwLCAnbyd9LAo+ICAgCXsic21hY2siLCAwLCAwLCAxMjh9LAo+ ICAgCXsidmVyc2lvbiIsIDAsIDAsIDEyOX0sCj4gLUBAIC0xNzc0LDcgKzE4MTIsNyBAQCBpbnQg bWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQo+ICtAQCAtMjYwMCw3ICsyNjM4LDcgQEAgaW50 IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKPiAgIAlnX2FyZ2MgPSBhcmdjOwo+ICAgCj4g ICAJd2hpbGUgKDEpIHsKPiAtLQkJYyA9IGdldG9wdF9sb25nKGFyZ2MsIGFyZ3YsICJodm5zZGE6 ZTpvcDo6ZnU6Oms6dDpyaSIsIG9wdHMsICZsaW5kKTsKPiAtKwkJYyA9IGdldG9wdF9sb25nKGFy Z2MsIGFyZ3YsICJodm5zZGE6ZTpvcDo6ZnU6Oms6dDpyaW0iLCBvcHRzLCAmbGluZCk7Cj4gKy0J CWMgPSBnZXRvcHRfbG9uZyhhcmdjLCBhcmd2LCAiaHZuc2RhOm9wOjpmdTo6azp0OnJpIiwgb3B0 cywgJmxpbmQpOwo+ICsrCQljID0gZ2V0b3B0X2xvbmcoYXJnYywgYXJndiwgImh2bnNkYTpvcDo6 ZnU6Oms6dDpyaW0iLCBvcHRzLCAmbGluZCk7Cj4gICAJCWlmIChjID09IC0xKQo+ICAgCQkJYnJl YWs7Cj4gICAKPiAtQEAgLTE4NDcsNiArMTg4NSw5IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFy ICphcmd2W10pCj4gK0BAIC0yNjcwLDYgKzI3MDgsOSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh ciAqYXJndltdKQo+ICAgCQljYXNlICc2JzoKPiAgIAkJCW1zaXplID0gNjQ7Cj4gICAJCQlicmVh azsKPiAgKwkJY2FzZSAnbSc6Cj4gLSsJCQlwYXJhbXMuaW1hZ2VfbW9kZSA9IHRydWU7Cj4gKysJ CQlpbWFldm1fcGFyYW1zLmltYWdlX21vZGUgPSB0cnVlOwo+ICArCQkJYnJlYWs7Cj4gICAJCWNh c2UgMTI4Ogo+ICAgCQkJZXZtX2NvbmZpZ194YXR0cm5hbWVzID0gZXZtX2V4dHJhX3NtYWNrX3hh dHRyczsKPiAgIAkJCWJyZWFrOwo+ICBkaWZmIC0tZ2l0IGEvc3JjL2ltYWV2bS5oIGIvc3JjL2lt YWV2bS5oCj4gLWluZGV4IGVkOTJlNGQ4OTgxZC4uN2UzMmQwOWM2NTM4IDEwMDY0NAo+ICtpbmRl eCA0NTAzOTE5OWFiMzEuLjJmNzhhMzFhYjQzOCAxMDA2NDQKPiAgLS0tIGEvc3JjL2ltYWV2bS5o Cj4gICsrKyBiL3NyYy9pbWFldm0uaAo+IC1AQCAtMTgyLDYgKzE4Miw3IEBAIHN0cnVjdCBsaWJl dm1fcGFyYW1zIHsKPiAtIAljb25zdCBjaGFyICpldm1faGFzaF9hbGdvOwo+ICtAQCAtMTk2LDYg KzE5Niw3IEBAIHN0cnVjdCBsaWJpbWFldm1fcGFyYW1zIHsKPiArIAljb25zdCBjaGFyICpoYXNo X2FsZ287Cj4gICAJY29uc3QgY2hhciAqa2V5ZmlsZTsKPiAgIAljb25zdCBjaGFyICprZXlwYXNz Owo+ICArCWJvb2wgaW1hZ2VfbW9kZTsKPiBAQCAtMjE0LDMxICsyMTQsMjMgQEAgaW5kZXggZWQ5 MmU0ZDg5ODFkLi43ZTMyZDA5YzY1MzggMTAwNjQ0Cj4gICAKPiAgIHN0cnVjdCBSU0FfQVNOMV90 ZW1wbGF0ZSB7Cj4gIGRpZmYgLS1naXQgYS9zcmMvbGliaW1hZXZtLmMgYi9zcmMvbGliaW1hZXZt LmMKPiAtaW5kZXggNGMwOTNhMDM4YjcyLi44NjZmNzRiMzliNDEgMTAwNjQ0Cj4gK2luZGV4IDAw MmIwNjU3MzM3Yy4uMWNkZjFkYzU5MGNjIDEwMDY0NAo+ICAtLS0gYS9zcmMvbGliaW1hZXZtLmMK PiAgKysrIGIvc3JjL2xpYmltYWV2bS5jCj4gLUBAIC00MCw2ICs0MCw3IEBACj4gLSAKPiAtIC8q IHNob3VsZCB3ZSB1c2UgbG9nZ2VyIGluc3RlYWQgZm9yIGxpYnJhcnk/ICovCj4gLSAjZGVmaW5l IFVTRV9GUFJJTlRGCj4gLSsjZGVmaW5lIF9HTlVfU09VUkNFCj4gLSAKPiAtICNpbmNsdWRlIDxz eXMvdHlwZXMuaD4KPiAtICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KPiAtQEAgLTQ5LDYgKzUwLDcg QEAKPiAtICNpbmNsdWRlIDxkaXJlbnQuaD4KPiAtICNpbmNsdWRlIDxzdHJpbmcuaD4KPiArQEAg LTUxLDYgKzUxLDcgQEAKPiAgICNpbmNsdWRlIDxzdGRpby5oPgo+ICsgI2luY2x1ZGUgPGFzc2Vy dC5oPgo+ICsgI2luY2x1ZGUgPGN0eXBlLmg+Cj4gICsjaW5jbHVkZSA8c3lzL3hhdHRyLmg+Cj4g ICAKPiArICNpbmNsdWRlIDxvcGVuc3NsL2NyeXB0by5oPgo+ICAgI2luY2x1ZGUgPG9wZW5zc2wv cGVtLmg+Cj4gLSAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KPiAtQEAgLTIyNCw3ICsyMjYsMjgg QEAgc3RhdGljIGludCBhZGRfZGlyX2hhc2goY29uc3QgY2hhciAqZmlsZSwgRVZQX01EX0NUWCAq Y3R4KQo+ICtAQCAtMTkzLDcgKzE5NCwyOCBAQCBzdGF0aWMgaW50IGFkZF9kaXJfaGFzaChjb25z dCBjaGFyICpmaWxlLCBFVlBfTURfQ1RYICpjdHgpCj4gICAJfQo+ICAgCj4gICAJd2hpbGUgKChk ZSA9IHJlYWRkaXIoZGlyKSkpIHsKPiAgLQkJaW5vID0gZGUtPmRfaW5vOwo+IC0rCQlpZiAocGFy YW1zLmltYWdlX21vZGUpIHsKPiArKwkJaWYgKGltYWV2bV9wYXJhbXMuaW1hZ2VfbW9kZSkgewo+ ICArCQkJY2hhciAqbmFtZTsKPiAgKwkJCWNoYXIgYnVmWzEyOF0gPSB7IH07Cj4gICsKPiBkaWZm IC0tZ2l0IGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDEwLWV2bWN0bC1Eby1ub3QtYWNj b3VudC0uLWFuZC0uLWZvci1kaXJlY3RvcnktaGFzaC1nZW4ucGF0Y2ggYi9wYXRjaGVzL2ltYS1l dm0tdXRpbHMtMS4zLjIvMDAwNi1ldm1jdGwtRG8tbm90LWFjY291bnQtLi1hbmQtLi1mb3ItZGly ZWN0b3J5LWhhc2gtZ2VuLnBhdGNoCj4gc2ltaWxhcml0eSBpbmRleCA4NiUKPiByZW5hbWUgZnJv bSBwYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAwMTAtZXZtY3RsLURvLW5vdC1hY2NvdW50LS4t YW5kLS4tZm9yLWRpcmVjdG9yeS1oYXNoLWdlbi5wYXRjaAo+IHJlbmFtZSB0byBwYXRjaGVzL2lt YS1ldm0tdXRpbHMtMS4zLjIvMDAwNi1ldm1jdGwtRG8tbm90LWFjY291bnQtLi1hbmQtLi1mb3It ZGlyZWN0b3J5LWhhc2gtZ2VuLnBhdGNoCj4gaW5kZXggMTJiNzdhMTMyMDAyLi4yNTFmNzEzNmI0 MmIgMTAwNjQ0Cj4gLS0tIGEvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMS8wMDEwLWV2bWN0bC1E by1ub3QtYWNjb3VudC0uLWFuZC0uLWZvci1kaXJlY3RvcnktaGFzaC1nZW4ucGF0Y2gKPiArKysg Yi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4zLjIvMDAwNi1ldm1jdGwtRG8tbm90LWFjY291bnQt Li1hbmQtLi1mb3ItZGlyZWN0b3J5LWhhc2gtZ2VuLnBhdGNoCj4gQEAgLTE1LDE2ICsxNSwxNiBA QCBTaWduZWQtb2ZmLWJ5OiBTYXNjaGEgSGF1ZXIgPHMuaGF1ZXJAcGVuZ3V0cm9uaXguZGU+Cj4g ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspCj4gIAo+ICBkaWZmIC0tZ2l0IGEvc3Jj L2xpYmltYWV2bS5jIGIvc3JjL2xpYmltYWV2bS5jCj4gLWluZGV4IDg2NmY3NGIzOWI0MS4uODM0 YjczODQyNmJmIDEwMDY0NAo+ICtpbmRleCAxY2RmMWRjNTkwY2MuLjZiYjBiMDc1N2M0MiAxMDA2 NDQKPiAgLS0tIGEvc3JjL2xpYmltYWV2bS5jCj4gICsrKyBiL3NyYy9saWJpbWFldm0uYwo+IC1A QCAtMjI2LDYgKzIyNiw5IEBAIHN0YXRpYyBpbnQgYWRkX2Rpcl9oYXNoKGNvbnN0IGNoYXIgKmZp bGUsIEVWUF9NRF9DVFggKmN0eCkKPiArQEAgLTE5NCw2ICsxOTQsOSBAQCBzdGF0aWMgaW50IGFk ZF9kaXJfaGFzaChjb25zdCBjaGFyICpmaWxlLCBFVlBfTURfQ1RYICpjdHgpCj4gICAJfQo+ICAg Cj4gICAJd2hpbGUgKChkZSA9IHJlYWRkaXIoZGlyKSkpIHsKPiAgKwkJaWYgKCFzdHJjbXAoZGUt PmRfbmFtZSwgIi4iKSB8fCAhc3RyY21wKGRlLT5kX25hbWUsICIuLiIpKQo+ICArCQkJY29udGlu dWU7Cj4gICsKPiAtIAkJaWYgKHBhcmFtcy5pbWFnZV9tb2RlKSB7Cj4gKyAJCWlmIChpbWFldm1f cGFyYW1zLmltYWdlX21vZGUpIHsKPiAgIAkJCWNoYXIgKm5hbWU7Cj4gICAJCQljaGFyIGJ1Zlsx MjhdID0geyB9Owo+IGRpZmYgLS1naXQgYS9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAwMTIt Rml4LXdhcm5pbmctZm9yLW5vbi1kZWJ1Zy11c2UtY2FzZS5wYXRjaCBiL3BhdGNoZXMvaW1hLWV2 bS11dGlscy0xLjMuMi8wMDA3LUZpeC13YXJuaW5nLWZvci1ub24tZGVidWctdXNlLWNhc2UucGF0 Y2gKPiBzaW1pbGFyaXR5IGluZGV4IDg2JQo+IHJlbmFtZSBmcm9tIHBhdGNoZXMvaW1hLWV2bS11 dGlscy0xLjEvMDAxMi1GaXgtd2FybmluZy1mb3Itbm9uLWRlYnVnLXVzZS1jYXNlLnBhdGNoCj4g cmVuYW1lIHRvIHBhdGNoZXMvaW1hLWV2bS11dGlscy0xLjMuMi8wMDA3LUZpeC13YXJuaW5nLWZv ci1ub24tZGVidWctdXNlLWNhc2UucGF0Y2gKPiBpbmRleCA4MDA3M2YxOWFhZjUuLjJjZGRmNTY5 YTkxZCAxMDA2NDQKPiAtLS0gYS9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4xLzAwMTItRml4LXdh cm5pbmctZm9yLW5vbi1kZWJ1Zy11c2UtY2FzZS5wYXRjaAo+ICsrKyBiL3BhdGNoZXMvaW1hLWV2 bS11dGlscy0xLjMuMi8wMDA3LUZpeC13YXJuaW5nLWZvci1ub24tZGVidWctdXNlLWNhc2UucGF0 Y2gKPiBAQCAtMTQsMTAgKzE0LDEwIEBAIFNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gQm9ybGVpcyA8 amJlQHBlbmd1dHJvbml4LmRlPgo+ICAgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCj4gIAo+ICBkaWZmIC0tZ2l0IGEvc3JjL2V2bWN0bC5jIGIvc3JjL2V2bWN0 bC5jCj4gLWluZGV4IDkwMDNmNzY0MGMwZi4uNDQyMmMwZTg0ZDRhIDEwMDY0NAo+ICtpbmRleCBh NGQ3ODRhNWJmYjYuLjdjMWYxNTA4MjYxNSAxMDA2NDQKPiAgLS0tIGEvc3JjL2V2bWN0bC5jCj4g ICsrKyBiL3NyYy9ldm1jdGwuYwo+IC1AQCAtMTE5MSw3ICsxMTkxLDcgQEAgc3RhdGljIGludCBo bWFjX2V2bShjb25zdCBjaGFyICpmaWxlLCBjb25zdCBjaGFyICprZXkpCj4gK0BAIC0xMjc5LDcg KzEyNzksNyBAQCBzdGF0aWMgaW50IGhtYWNfZXZtKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNo YXIgKmtleSkKPiAgIAlyZXR1cm4gMDsKPiAgIH0KPiAgIAo+IGRpZmYgLS1naXQgYS9wYXRjaGVz L2ltYS1ldm0tdXRpbHMtMS4xL2F1dG9nZW4uc2ggYi9wYXRjaGVzL2ltYS1ldm0tdXRpbHMtMS4z LjIvYXV0b2dlbi5zaAo+IHNpbWlsYXJpdHkgaW5kZXggMTAwJQo+IHJlbmFtZSBmcm9tIHBhdGNo ZXMvaW1hLWV2bS11dGlscy0xLjEvYXV0b2dlbi5zaAo+IHJlbmFtZSB0byBwYXRjaGVzL2ltYS1l dm0tdXRpbHMtMS4zLjIvYXV0b2dlbi5zaAo+IGRpZmYgLS1naXQgYS9wYXRjaGVzL2ltYS1ldm0t dXRpbHMtMS4zLjIvc2VyaWVzIGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMy4yL3Nlcmllcwo+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMDAwLi4zNjc4MWVhNmJiNmYK PiAtLS0gL2Rldi9udWxsCj4gKysrIGIvcGF0Y2hlcy9pbWEtZXZtLXV0aWxzLTEuMy4yL3Nlcmll cwo+IEBAIC0wLDAgKzEsMTAgQEAKPiArIyBnZW5lcmF0ZWQgYnkgZ2l0LXB0eC1wYXRjaGVzCj4g KyN0YWc6YmFzZSAtLXN0YXJ0LW51bWJlciAxCj4gKzAwMDEtZXZtY3RsLWZpbmQtYWRkLW1pc3Np bmctY2xvc2VkaXItZGlyLW9uLWVycm9yLnBhdGNoCj4gKzAwMDItZXZtY3RsLWZpbmQtYWRkLW1p c3NpbmctZXJyb3ItaGFuZGxpbmctYW5kLXByb3BhZ2F0ZS5wYXRjaAo+ICswMDAzLWV2bWN0bC1h ZGQtZmFsbGJhY2stZGVmaW5pdGlvbnMtZm9yLVhBVFRSX05BTUVfSU1BLnBhdGNoCj4gKzAwMDQt bGliaW1hZXZtLXVzZS1TSEFfRElHRVNUX0xFTkdUSC1pbnN0ZWFkLW9mLW9wZW4tY29kaS5wYXRj aAo+ICswMDA1LWV2bWN0bC1hZGQtc3VwcG9ydC1mb3Itb2ZmbGluZS1pbWFnZS1wcmVwYXJhdGlv bi5wYXRjaAo+ICswMDA2LWV2bWN0bC1Eby1ub3QtYWNjb3VudC0uLWFuZC0uLWZvci1kaXJlY3Rv cnktaGFzaC1nZW4ucGF0Y2gKPiArMDAwNy1GaXgtd2FybmluZy1mb3Itbm9uLWRlYnVnLXVzZS1j YXNlLnBhdGNoCj4gKyMgZjhlY2ZkMDAyY2YyZWU4MjQ0OTg0YTE3NTdhMWJmZWEgIC0gZ2l0LXB0 eC1wYXRjaGVzIG1hZ2ljCj4gZGlmZiAtLWdpdCBhL3J1bGVzL2ltYS1ldm0tdXRpbHMubWFrZSBi L3J1bGVzL2ltYS1ldm0tdXRpbHMubWFrZQo+IGluZGV4IDNhMGNlNDY2MGM4Ny4uZmI1MDBmYjE2 OWFhIDEwMDY0NAo+IC0tLSBhL3J1bGVzL2ltYS1ldm0tdXRpbHMubWFrZQo+ICsrKyBiL3J1bGVz L2ltYS1ldm0tdXRpbHMubWFrZQo+IEBAIC0xLDcgKzEsNyBAQAo+ICAjIC0qLW1ha2VmaWxlLSot Cj4gICMKPiAgIyBDb3B5cmlnaHQgKEMpIDIwMTMgYnkgTWljaGFlbCBHcnplc2NoaWsgPG1nckBw ZW5ndXRyb25peC5kZT4KPiAtIyAgICAgICAgICAgICAgIDIwMTUgYnkgTWFyYyBLbGVpbmUtQnVk ZGUgPG1rbEBwZW5ndXRyb25peC5kZT4KPiArIyAgICAgICAgICAgICAgIDIwMTUsIDIwMjAgYnkg TWFyYyBLbGVpbmUtQnVkZGUgPG1rbEBwZW5ndXRyb25peC5kZT4KPiAgIyAgICAgICAgICAgICAg IDIwMjEgUm9sYW5kIEhpZWJlciwgUGVuZ3V0cm9uaXggPHJoaUBwZW5ndXRyb25peC5kZT4KPiAg Iwo+ICAjIEZvciBmdXJ0aGVyIGluZm9ybWF0aW9uIGFib3V0IHRoZSBQVFhkaXN0IHByb2plY3Qg YW5kIGxpY2Vuc2UgY29uZGl0aW9ucwo+IEBAIC0xNiw4ICsxNiw4IEBAIFBBQ0tBR0VTLSQoUFRY Q09ORl9JTUFfRVZNX1VUSUxTKSArPSBpbWEtZXZtLXV0aWxzCj4gICMKPiAgIyBQYXRocyBhbmQg bmFtZXMKPiAgIwo+IC1JTUFfRVZNX1VUSUxTX1ZFUlNJT04JOj0gMS4xCj4gLUlNQV9FVk1fVVRJ TFNfTUQ1CTo9IDc3NDU1YWVlZTU0ZmRjN2E3MGM3MzNiY2I2NWQzM2NjCj4gK0lNQV9FVk1fVVRJ TFNfVkVSU0lPTgk6PSAxLjMuMgo+ICtJTUFfRVZNX1VUSUxTX01ENQk6PSA1NWNjMGUyYzc3YTcy NWY3MjI4MzNjM2I0YTM2MDM4Ywo+ICBJTUFfRVZNX1VUSUxTCQk6PSBpbWEtZXZtLXV0aWxzLSQo SU1BX0VWTV9VVElMU19WRVJTSU9OKQo+ICBJTUFfRVZNX1VUSUxTX1NVRkZJWAk6PSB0YXIuZ3oK PiAgSU1BX0VWTV9VVElMU19VUkwJOj0gJChjYWxsIHB0eC9taXJyb3IsIFNGLCBsaW51eC1pbWEv aW1hLWV2bS11dGlscy8kKElNQV9FVk1fVVRJTFMpLiQoSU1BX0VWTV9VVElMU19TVUZGSVgpKQo+ IEBAIC0zMiw5ICszMiwxNiBAQCBJTUFfRVZNX1VUSUxTX0xJQ0VOU0VfRklMRVMJOj0gXAo+ICAj IFByZXBhcmUKPiAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIAo+ICtJTUFfRVZNX1VUSUxTX0NP TkZfRU5WIDo9IFwKPiArCSQoQ1JPU1NfRU5WKSBcCj4gKwlhY19jdl9saWJfdHNzMl9lc3lzX0Vz eXNfRnJlZT1ubyBcCj4gKwlhY19jdl9saWJfdHNzMl9yY19Uc3MyX1JDX0RlY29kZT1ubyBcCj4g KwlhY19jdl9wYXRoX1hNTENBVEFMT0c9Cj4gKwo+ICBJTUFfRVZNX1VUSUxTX0NPTkZfVE9PTCA6 PSBhdXRvY29uZgo+ICBJTUFfRVZNX1VUSUxTX0FVVE9DT05GIDo9IFwKPiAgCSQoQ1JPU1NfQVVU T0NPTkZfVVNSKSBcCj4gKwktLWVuYWJsZS1vcGVuc3NsLWNvbmYgXAo+ICAJLS1kaXNhYmxlLWRl YnVnCj4gIAo+ICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCnB0eGRpc3QgbWFpbGluZyBsaXN0CnB0eGRpc3RAcGVu Z3V0cm9uaXguZGUKVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtYWlsIHdpdGggc3ViamVjdCAidW5z dWJzY3JpYmUiIHRvIHB0eGRpc3QtcmVxdWVzdEBwZW5ndXRyb25peC5kZQo=