Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tlH7m-00AcUM-VX for pgsql-hackers@arkaria.postgresql.org; Fri, 21 Feb 2025 00:42:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tlH7l-00GCLQ-9e for pgsql-hackers@arkaria.postgresql.org; Fri, 21 Feb 2025 00:42:37 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tlH7k-00GCKM-CL for pgsql-hackers@lists.postgresql.org; Fri, 21 Feb 2025 00:42:37 +0000 Received: from udcm-wwu1.uni-muenster.de ([128.176.118.7]) by makus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tlH7e-001zb7-2M for pgsql-hackers@lists.postgresql.org; Fri, 21 Feb 2025 00:42:35 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=uni-muenster.de; i=@uni-muenster.de; q=dns/txt; s=uniout; t=1740098551; x=1771634551; h=message-id:date:mime-version:subject:from:to:cc: references:in-reply-to; bh=fy7h466UkaZ24DtdiLEwzeukSAu+F9tf/8ga4QN5EnA=; b=A1ZXqZIrDRMEuF5CJWKq7L/fvTQxum1hgi+u/QmM3q8taPALk/9qRree AzUBdqv+vTjW6Zd/APKzjZlfeS2FI/ut4rrjGgrJEk/Qhoh8Bj7H13y1b pH4pKwUK9VA9LwEH/874CbzMmCPngYXr/vFrTcaVeNgz5da8QiJilZDVE pj0W+nlqkeX2lqmMkIcYceX1yyDpiCTPo5RqNh7nGaDzx4dyIvJkSUeJt OWOQ8BGNno/kqNQHFMoUiWt4MXU4ahkiPJQJ4l+h0x+Lo9YrQwEV32bGQ eNg+ZgI7ooyYAjVTDInorxeksKtXAJOqUkPI/Qa0emr3NMLA6a7AWlTvd w==; X-CSE-ConnectionGUID: K6rqRuVGSHaYoG0pFcBNlQ== X-CSE-MsgGUID: HrjNL5x9RzG+3kxjYMspPg== X-IronPort-AV: E=Sophos;i="6.13,303,1732575600"; d="scan'208,223";a="356883220" Received: from secmail.uni-muenster.de ([128.176.118.4]) by UDCM-RELAY1.UNI-MUENSTER.DE with ESMTP; 21 Feb 2025 01:42:28 +0100 Received: from [192.168.178.27] (dynamic-080-171-178-028.80.171.pool.telefonica.de [80.171.178.28]) by SECMAIL.UNI-MUENSTER.DE (Postfix) with ESMTPSA id 25F8920ADF12; Fri, 21 Feb 2025 01:42:25 +0100 (CET) Content-Type: multipart/mixed; boundary="------------N5rKgGb0c6a5EB0izmOkzea7" Message-ID: Date: Fri, 21 Feb 2025 01:42:24 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PoC] XMLCast (SQL/XML X025) From: Jim Jones To: Robert Haas Cc: pgsql-hackers@lists.postgresql.org, Vik Fearing References: <7b99d466-985f-4d27-8c93-9b98c6945ebb@uni-muenster.de> <11f75849-0f10-40d3-bdfe-5ee81c8a0254@uni-muenster.de> <66bf6e05-61d6-4fec-859c-fcfd726bbed6@uni-muenster.de> <7ef2eaf8-6d60-485c-84a6-1f15421e7cb6@uni-muenster.de> <800e2b29-7cf9-42e0-9d95-12b3007d2f7a@uni-muenster.de> <998465cb-2fda-4497-8194-87da56748186@uni-muenster.de> Content-Language: en-US, de-DE In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------N5rKgGb0c6a5EB0izmOkzea7 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 30.12.24 10:29, Jim Jones wrote: > rebase. > > v5 attached removes the libxml2 dependency of unescape_xml(). > > Background: the existing function escape_xml() intentionally avoids > libxml2 dependency and the previously used libxml2 functions > xmlStringDecodeEntities() and xmlDecodeEntities() got deprecated. > v6 attached adds missing regression tests for XMLCast backward parsing. Jim --------------N5rKgGb0c6a5EB0izmOkzea7 Content-Type: text/x-patch; charset=UTF-8; name="v6-0001-Add-XMLCast-function-SQL-XML-X025.patch" Content-Disposition: attachment; filename="v6-0001-Add-XMLCast-function-SQL-XML-X025.patch" Content-Transfer-Encoding: base64 RnJvbSBjODEyOTkzMjdlMzBkYjg4YjhlOTkwY2VlYzgxNzEyOWMwNDBmOTA3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gSm9uZXMgPGppbS5qb25lc0B1bmktbXVlbnN0 ZXIuZGU+CkRhdGU6IEZyaSwgMjEgRmViIDIwMjUgMDE6MTk6MTYgKzAxMDAKU3ViamVjdDog W1BBVENIIHY2XSBBZGQgWE1MQ2FzdCBmdW5jdGlvbiAoU1FML1hNTCBYMDI1KQoKVGhpcyBp bXBsZW1lbnRzIHRoZSBTUUwvWE1MIGZ1bmN0aW9uIFhNTENhc3QsIHdoaWNoIGVuYWJsZXMK Y29udmVyc2lvbnMgYmV0d2VlbiBTUUwgZGF0YSB0eXBlcyBhbmQgdGhlIFhNTCBkYXRhIHR5 cGUuCgpYTUxDQVNUICggZXhwcmVzc2lvbiBBUyB0eXBlIFsgQlkgUkVGIHwgQlkgVkFMVUUg XSApCgpXaGVuIGNhc3RpbmcgYW4gWE1MIHZhbHVlIHRvIGEgU1FMIGRhdGEgdHlwZSwgWE1M IHZhbHVlcyBjb250YWluaW5nClhTRCBsaXRlcmFscyB3aWxsIGJlIGNvbnZlcnRlZCB0byB0 aGVpciBlcXVpdmFsZW50IFNRTCBkYXRhIHR5cGUuCldoZW4gY2FzdGluZyBmcm9tIGEgU1FM IGRhdGEgdHlwZSB0byBYTUwsIHRoZSBjYXN0IG9wZXJhbmQgd2lsbCBiZQp0cmFuc2xhdGVk IHRvIGl0cyBjb3JyZXNwb25kaW5nIFhTRCBkYXRhIHR5cGUuCgpUaGlzIHBhdGNoIGFsc28g aW5jbHVkZXMgZG9jdW1lbnRhdGlvbiBhbmQgcmVncmVzc2lvbiB0ZXN0cy4KLS0tCiBkb2Mv c3JjL3NnbWwvZGF0YXR5cGUuc2dtbCAgICAgICAgICAgIHwgIDc4ICsrKy0KIHNyYy9iYWNr ZW5kL2NhdGFsb2cvc3FsX2ZlYXR1cmVzLnR4dCAgfCAgIDIgKy0KIHNyYy9iYWNrZW5kL2V4 ZWN1dG9yL2V4ZWNFeHBySW50ZXJwLmMgfCAgODMgKysrLQogc3JjL2JhY2tlbmQvbm9kZXMv bm9kZUZ1bmNzLmMgICAgICAgICB8ICAxMyArCiBzcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55 ICAgICAgICAgICAgIHwgIDIyICstCiBzcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfZXhwci5j ICAgICAgIHwgIDgxICsrKysKIHNyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV90YXJnZXQuYyAg ICAgfCAgIDcgKwogc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3J1bGV1dGlscy5jICAgICB8ICAx MCArLQogc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3htbC5jICAgICAgICAgICB8ICA2MSArKysK IHNyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaCAgICAgICAgfCAgIDggKwogc3JjL2lu Y2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmggICAgICAgICB8ICAgMyArCiBzcmMvaW5jbHVkZS9w YXJzZXIva3dsaXN0LmggICAgICAgICAgIHwgICAxICsKIHNyYy9pbmNsdWRlL3V0aWxzL3ht bC5oICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC94 bWwub3V0ICAgICB8IDU2NSArKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL3htbF8xLm91dCAgIHwgNDI5ICsrKysrKysrKysrKysrKysrKysK IHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQveG1sXzIub3V0ICAgfCA1NjcgKysrKysrKysr KysrKysrKysrKysrKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3htbC5zcWwgICAgICAg ICAgfCAyNzggKysrKysrKysrKysrKwogc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxp c3QgICAgICB8ICAgMSArCiAxOCBmaWxlcyBjaGFuZ2VkLCAyMjAxIGluc2VydGlvbnMoKyks IDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2RhdGF0eXBlLnNn bWwgYi9kb2Mvc3JjL3NnbWwvZGF0YXR5cGUuc2dtbAppbmRleCA4NzY3OWRjNGExLi43ZThi ZmFmMWExIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZGF0YXR5cGUuc2dtbAorKysgYi9k b2Mvc3JjL3NnbWwvZGF0YXR5cGUuc2dtbApAQCAtNDQ4NywxNCArNDQ4Nyw4NCBAQCBYTUxQ QVJTRSAoIHsgRE9DVU1FTlQgfCBDT05URU5UIH0gPHJlcGxhY2VhYmxlPnZhbHVlPC9yZXBs YWNlYWJsZT4pCiBYTUxQQVJTRSAoRE9DVU1FTlQgJzw/eG1sIHZlcnNpb249IjEuMCI/Pjxi b29rPjx0aXRsZT5NYW51YWw8L3RpdGxlPjxjaGFwdGVyPi4uLjwvY2hhcHRlcj48L2Jvb2s+ JykKIFhNTFBBUlNFIChDT05URU5UICdhYmM8Zm9vPmJhcjwvZm9vPjxiYXI+Zm9vPC9iYXI+ JykKIF1dPjwvcHJvZ3JhbWxpc3Rpbmc+Ci0gICAgV2hpbGUgdGhpcyBpcyB0aGUgb25seSB3 YXkgdG8gY29udmVydCBjaGFyYWN0ZXIgc3RyaW5ncyBpbnRvIFhNTAotICAgIHZhbHVlcyBh Y2NvcmRpbmcgdG8gdGhlIFNRTCBzdGFuZGFyZCwgdGhlIFBvc3RncmVTUUwtc3BlY2lmaWMK LSAgICBzeW50YXhlczoKKworICAgIEFub3RoZXIgb3B0aW9uIHRvIGNvbnZlcnQgY2hhcmFj dGVyIHN0cmluZ3MgaW50byB4bWwgaXMgdGhlIGZ1bmN0aW9uIDxmdW5jdGlvbj54bWxjYXN0 PC9mdW5jdGlvbj4sCisgICAgd2hpY2ggaXMgZGVzaWduZWQgdG8gY2FzdCBTUUwgZGF0YSB0 eXBlcyBpbnRvIDx0eXBlPnhtbDwvdHlwZT4sIGFuZCB2aWNlIHZlcnNhLgorPHN5bm9wc2lz PgorWE1MQ0FTVCAoIDxyZXBsYWNlYWJsZT5leHByZXNzaW9uPC9yZXBsYWNlYWJsZT4gQVMg PHJlcGxhY2VhYmxlPnR5cGU8L3JlcGxhY2VhYmxlPiBbIEJZIFJFRiB8IEJZIFZBTFVFIF0g KQorPC9zeW5vcHNpcz4KKyAgICBTaW1pbGFyIHRvIHRoZSBTUUwgZnVuY3Rpb24gPGZ1bmN0 aW9uPkNBU1Q8L2Z1bmN0aW9uPiwgdGhpcyBmdW5jdGlvbiBjb252ZXJ0cyBhbiA8cmVwbGFj ZWFibGU+ZXhwcmVzc2lvbjwvcmVwbGFjZWFibGU+CisgICAgaW50byB0aGUgc3BlY2lmaWVk IDxyZXBsYWNlYWJsZT50eXBlPC9yZXBsYWNlYWJsZT4uIFRoaXMgY2FuIGJlIHVzZWZ1bCBm b3IgY3JlYXRpbmcgWE1MCisgICAgZG9jdW1lbnRzIHVzaW5nIFNRTCBvciB3aGVuIHBhcnNp bmcgdGhlIGNvbnRlbnRzIG9mIFhNTCBkb2N1bWVudHMuIFRoZSBmdW5jdGlvbiA8ZnVuY3Rp b24+eG1sY2FzdDwvZnVuY3Rpb24+IHdvcmtzIHdpdGggdGhlCisgICAgZm9sbG93aW5nIGNy aXRlcmlhOgorCisgICAgIDxpdGVtaXplZGxpc3Q+CisgICAgICA8bGlzdGl0ZW0+CisgICAg ICAgIDxwYXJhPgorICAgICAgICAgIEVpdGhlciA8cmVwbGFjZWFibGU+ZXhwcmVzc2lvbjwv cmVwbGFjZWFibGU+IG9yIDxyZXBsYWNlYWJsZT50eXBlPC9yZXBsYWNlYWJsZT4gbXVzdCBi ZSBvZiB0eXBlIDxsaXRlcmFsPnhtbDwvbGl0ZXJhbD4uCisgICAgICAgIDwvcGFyYT4KKyAg ICAgIDwvbGlzdGl0ZW0+CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgIDxwYXJhPgorICAg ICAgICAgIEl0IHN1cHBvcnRzIGNhc3RpbmcgYmV0d2VlbiA8bGl0ZXJhbD54bWw8L2xpdGVy YWw+IGFuZCBjaGFyYWN0ZXIsIG51bWVyaWMsIGRhdGUvdGltZSwgYW5kIGJvb2xlYW4gZGF0 YSB0eXBlcy4KKyAgICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgIDxs aXN0aXRlbT4KKyAgICAgICAgPHBhcmE+CisgICAgICAgICAgU2ltaWxhciB0byB0aGUgZnVu Y3Rpb24gPGZ1bmN0aW9uPnhtbHRleHQ8L2Z1bmN0aW9uPiwgPHJlcGxhY2VhYmxlPmV4cHJl c3Npb248L3JlcGxhY2VhYmxlPnMgY29udGFpbmluZyBYTUwgcHJlZGlmaW5lZCBlbnRpdGll cworICAgICAgICAgIHdpbGwgYmUgZXNjYXBlZCAoc2VlIGV4YW1wbGVzIGJlbG93KS4KKyAg ICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgIDxsaXN0aXRlbT4KKyAg ICAgICAgPHBhcmE+CisgICAgICAgICAgVGhlIDxyZXBsYWNlYWJsZT5leHByZXNzaW9uPC9y ZXBsYWNlYWJsZT5zIG9mIHR5cGUgPGxpdGVyYWw+ZGF0ZTwvbGl0ZXJhbD4sIDxsaXRlcmFs PnRpbWUgW3dpdGggdGltZSB6b25lXTwvbGl0ZXJhbD4sIDxsaXRlcmFsPnRpbWVzdGFtcCBb d2l0aCB0aW1lIHpvbmVdPC9saXRlcmFsPiwKKyAgICAgICAgICBhbmQgPGxpdGVyYWw+aW50 ZXJ2YWw8L2xpdGVyYWw+IHdpbGwgYmUgY29udmVydGVkIHRvIHRoZWlyIFhTRCBlcXVpdmFs ZW50cywgPGxpdGVyYWw+eHM6ZGF0ZTwvbGl0ZXJhbD4sIDxsaXRlcmFsPnhzOnRpbWU8L2xp dGVyYWw+LAorICAgICAgICAgIDxsaXRlcmFsPnhzOmRhdGVUaW1lPC9saXRlcmFsPiwgYW5k IDxsaXRlcmFsPnhzOmR1cmF0aW9uPC9saXRlcmFsPiwgcmVzcGVjdGl2ZWx5LgorICAgICAg ICA8L3BhcmE+CisgICAgICA8L2xpc3RpdGVtPgorICAgICAgIDxsaXN0aXRlbT4KKyAgICAg ICAgPHBhcmE+CisgICAgICAgICAgVGhlIDxsaXRlcmFsPkJZIFJFRjwvbGl0ZXJhbD4gYW5k IDxsaXRlcmFsPkJZIFZBTFVFPC9saXRlcmFsPiBjbGF1c2VzCisgICAgICAgICAgYXJlIGFj Y2VwdGVkIGJ1dCBpZ25vcmVkLCBhcyBkaXNjdXNzZWQgaW4KKyAgICAgICAgICA8eHJlZiBs aW5rZW5kPSJmdW5jdGlvbnMteG1sLWxpbWl0cy1wb3N0Z3Jlc3FsIi8+LgorICAgICAgICA8 L3BhcmE+CisgICAgICA8L2xpc3RpdGVtPgorICAgIDwvaXRlbWl6ZWRsaXN0PgorCisgICAg IEV4YW1wbGVzOgorPHNjcmVlbj48IVtDREFUQVsKK1NFTEVDVCB4bWxjYXN0KCc8Zm9vJmJh cj4nOjp0ZXh0IEFTIHhtbCk7CisgICAgICAgeG1sY2FzdAorLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgJmx0O2ZvbyZhbXA7YmFyJmd0OworCitTRUxFQ1QgeG1sY2FzdCgnJmx0O2ZvbyZh bXA7YmFyJmd0Oyc6OnhtbCBBUyB0ZXh0KTsKKyAgeG1sY2FzdAorLS0tLS0tLS0tLS0KKyA8 Zm9vJmJhcj4KKworU0VMRUNUIHhtbGNhc3QoQ1VSUkVOVF9USU1FU1RBTVAgQVMgeG1sKTsK KyAgICAgICAgICAgICB4bWxjYXN0CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAyMDI0LTA2LTAyVDAwOjI5OjQwLjkyMzk3KzAyOjAwCisKK1NFTEVDVCB4bWxjYXN0 KCdQMVkyTTNXNERUNUg2TTdTJzo6eG1sIEFTIGludGVydmFsKTsKKyAgICAgICAgICAgIHht bGNhc3QKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSB5ZWFyIDIgbW9u cyAyNSBkYXlzIDA1OjA2OjA3CisKK1NFTEVDVCB4bWxjYXN0KCcxIHllYXIgMiBtb250aHMg MyB3ZWVrcyA0IGRheXMgNSBob3VycyA2IG1pbnV0ZXMgNyBzZWNvbmRzJzo6aW50ZXJ2YWwg QVMgeG1sKTsKKyAgICAgeG1sY2FzdAorLS0tLS0tLS0tLS0tLS0tLS0KKyBQMVkyTTI1RFQ1 SDZNN1MKK11dPjwvc2NyZWVuPgorCisgICAgQWx0ZXJuYXRpdmVseSwgaXQgaXMgYWxzbyBw b3NzaWJsZSB0byBjb252ZXJ0IGNoYXJhY3RlciBzdHJpbmdzIGludG8gWE1MIHVzaW5nIFBv c3RncmVTUUwtc3BlY2lmaWMgY2FzdCBzeW50YXhlczoKIDxwcm9ncmFtbGlzdGluZz48IVtD REFUQVsKIHhtbCAnPGZvbz5iYXI8L2Zvbz4nCiAnPGZvbz5iYXI8L2Zvbz4nOjp4bWwKIF1d PjwvcHJvZ3JhbWxpc3Rpbmc+Ci0gICAgY2FuIGFsc28gYmUgdXNlZC4KKwogICAgPC9wYXJh PgogCiAgICA8cGFyYT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3FsX2Zl YXR1cmVzLnR4dCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3FsX2ZlYXR1cmVzLnR4dAppbmRl eCAyZjI1MGQyYzU3Li4wYjY4ZTliMTdmIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRh bG9nL3NxbF9mZWF0dXJlcy50eHQKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zcWxfZmVh dHVyZXMudHh0CkBAIC02MjQsNyArNjI0LDcgQEAgWDAxNAlBdHRyaWJ1dGVzIG9mIFhNTCB0 eXBlCQkJWUVTCiBYMDE1CUZpZWxkcyBvZiBYTUwgdHlwZQkJCU5PCQogWDAxNglQZXJzaXN0 ZW50IFhNTCB2YWx1ZXMJCQlZRVMJCiBYMDIwCVhNTENvbmNhdAkJCVlFUwkKLVgwMjUJWE1M Q2FzdAkJCU5PCQorWDAyNQlYTUxDYXN0CQkJWUVTCQogWDAzMAlYTUxEb2N1bWVudAkJCU5P CQogWDAzMQlYTUxFbGVtZW50CQkJWUVTCQogWDAzMglYTUxGb3Jlc3QJCQlZRVMJCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjRXhwckludGVycC5jIGIvc3JjL2Jh Y2tlbmQvZXhlY3V0b3IvZXhlY0V4cHJJbnRlcnAuYwppbmRleCAxYzM0NzdiMDNjLi44NDMy ODQ2ZWM4IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjRXhwckludGVy cC5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNFeHBySW50ZXJwLmMKQEAgLTY5 LDYgKzY5LDcgQEAKICNpbmNsdWRlICJ1dGlscy9hcnJheS5oIgogI2luY2x1ZGUgInV0aWxz L2J1aWx0aW5zLmgiCiAjaW5jbHVkZSAidXRpbHMvZGF0ZS5oIgorI2luY2x1ZGUgInV0aWxz L2RhdGV0aW1lLmgiCiAjaW5jbHVkZSAidXRpbHMvZGF0dW0uaCIKICNpbmNsdWRlICJ1dGls cy9leHBhbmRlZHJlY29yZC5oIgogI2luY2x1ZGUgInV0aWxzL2pzb24uaCIKQEAgLTQ1NjIs MTAgKzQ1NjMsODggQEAgRXhlY0V2YWxYbWxFeHByKEV4cHJTdGF0ZSAqc3RhdGUsIEV4cHJF dmFsU3RlcCAqb3ApCiAJCQkJKm9wLT5yZXNudWxsID0gZmFsc2U7CiAJCQl9CiAJCQlicmVh azsKKwkJCWNhc2UgSVNfWE1MQ0FTVDoKKwkJCXsKKwkJCQlEYXR1bSAqYXJndmFsdWUgPSBv cC0+ZC54bWxleHByLmFyZ3ZhbHVlOworCQkJCWJvb2wgKmFyZ251bGwgPSBvcC0+ZC54bWxl eHByLmFyZ251bGw7CisJCQkJY2hhciAqc3RyOwogCi0JCWRlZmF1bHQ6Ci0JCQllbG9nKEVS Uk9SLCAidW5yZWNvZ25pemVkIFhNTCBvcGVyYXRpb24iKTsKKwkJCQlBc3NlcnQobGlzdF9s ZW5ndGgoeGV4cHItPmFyZ3MpID09IDEpOworCisJCQkJaWYgKGFyZ251bGxbMF0pCisJCQkJ CXJldHVybjsKKworCQkJCXZhbHVlID0gYXJndmFsdWVbMF07CisKKwkJCQlzd2l0Y2ggKHhl eHByLT50YXJnZXRUeXBlKQorCQkJCXsKKwkJCQljYXNlIFhNTE9JRDoKKwkJCQkJLyogVGhl c2UgZGF0YSB0eXBlcyBtdXN0IGJlIGNvbnZlcnRlZCB0byB0aGVpciBJU08gODYwMSByZXBy ZXNlbnRhdGlvbnMgKi8KKwkJCQkJaWYgKHhleHByLT50eXBlID09IFRJTUVTVEFNUE9JRCB8 fCB4ZXhwci0+dHlwZSA9PSBUSU1FU1RBTVBUWk9JRCB8fAorCQkJCQkJeGV4cHItPnR5cGUg PT0gREFURU9JRCB8fCB4ZXhwci0+dHlwZSA9PSBCWVRFQU9JRCB8fCB4ZXhwci0+dHlwZSA9 PSBCT09MT0lEKQorCQkJCQl7CisJCQkJCQl0ZXh0ICptYXBwZWRfdmFsdWUgPSBjc3RyaW5n X3RvX3RleHQoCisJCQkJCQkJbWFwX3NxbF92YWx1ZV90b194bWxfdmFsdWUodmFsdWUsIHhl eHByLT50eXBlLCBmYWxzZSkpOworCQkJCQkJKm9wLT5yZXN2YWx1ZSA9IFBvaW50ZXJHZXRE YXR1bShtYXBwZWRfdmFsdWUpOworCQkJCQl9CisJCQkJCS8qIElOVEVSVkFMIGRhdGEgbnVz dCBiZSBjb252ZXJ0ZWQgdG8gSVNPIDg2MDEsIGUuZy4gJzEgeWVhciAyIG1vbnMnIC0+ICdQ MVkyTScgKi8KKwkJCQkJZWxzZSBpZiAoeGV4cHItPnR5cGUgPT0gSU5URVJWQUxPSUQpCisJ CQkJCXsKKwkJCQkJCUludGVydmFsICppbiA9IERhdHVtR2V0SW50ZXJ2YWxQKHZhbHVlKTsK KworCQkJCQkJc3RydWN0IHBnX2l0bSB0dCwgKml0bSA9ICZ0dDsKKwkJCQkJCWNoYXIgYnVm W01BWERBVEVMRU4gKyAxXTsKKworCQkJCQkJaWYgKElOVEVSVkFMX05PVF9GSU5JVEUoaW4p KQorCQkJCQkJeworCQkJCQkJCWlmIChJTlRFUlZBTF9JU19OT0JFR0lOKGluKSkKKwkJCQkJ CQkJc3RyY3B5KGJ1ZiwgRUFSTFkpOworCQkJCQkJCWVsc2UgaWYgKElOVEVSVkFMX0lTX05P RU5EKGluKSkKKwkJCQkJCQkJc3RyY3B5KGJ1ZiwgTEFURSk7CisJCQkJCQkJZWxzZQorCQkJ CQkJCQllbG9nKEVSUk9SLCAiaW52YWxpZCBpbnRlcnZhbCBhcmd1bWVudCIpOworCQkJCQkJ fQorCQkJCQkJZWxzZQorCQkJCQkJeworCQkJCQkJCWludGVydmFsMml0bSgqaW4sIGl0bSk7 CisJCQkJCQkJRW5jb2RlSW50ZXJ2YWwoaXRtLCBJTlRTVFlMRV9JU09fODYwMSwgYnVmKTsK KwkJCQkJCX0KKworCQkJCQkJKm9wLT5yZXN2YWx1ZSA9IFBvaW50ZXJHZXREYXR1bShjc3Ry aW5nX3RvX3RleHQoYnVmKSk7CisJCQkJCX0KKwkJCQkJLyogbm8gbmVlZCB0byBlc2NhcGUg dGhlIHJlc3VsdCwgYXMgdGhlIG9yaWdpbiBpcyBhbHNvIGFuIFhNTCAqLworCQkJCQllbHNl IGlmICh4ZXhwci0+dHlwZSA9PSBYTUxPSUQpCisJCQkJCQkqb3AtPnJlc3ZhbHVlID0gUG9p bnRlckdldERhdHVtKERhdHVtR2V0WG1sUCh2YWx1ZSkpOworCQkJCQkvKiB3ZSAgbWFrZSBz dXJlIHRoYXQgcG90ZW50aWFsIHByZWRpZmluZWQgZW50aXR0aWVzIGFyZSBlc2NhcGVkICov CisJCQkJCWVsc2UKKwkJCQkJCSpvcC0+cmVzdmFsdWUgPSBQb2ludGVyR2V0RGF0dW0oCisJ CQkJCQkJRGF0dW1HZXRYbWxQKChEaXJlY3RGdW5jdGlvbkNhbGwxKHhtbHRleHQsIHZhbHVl KSkpKTsKKwkJCQkJYnJlYWs7CisJCQkJY2FzZSBURVhUT0lEOgorCQkJCWNhc2UgVkFSQ0hB Uk9JRDoKKwkJCQljYXNlIE5BTUVPSUQ6CisJCQkJY2FzZSBCUENIQVJPSUQ6CisJCQkJCS8q CisJCQkJCSAqIHdoZW4gY2FzdGluZyBmcm9tIFhNTCB0byBhIGNoYXJhY3RlciBzdHJpbmcg d2UgbWFrZSBzdXJlIHRoYXQKKwkJCQkJICogYWxsIGVzY2FwZWQgeG1sIGNoYXJhY3RlcnMg YXJlIHVuZXNjYXBlZC4KKwkJCQkJICovCisJCQkJCXN0ciA9IHRleHRfdG9fY3N0cmluZyhE YXR1bUdldFRleHRQUCh2YWx1ZSkpOworCQkJCQkqb3AtPnJlc3ZhbHVlID0gUG9pbnRlckdl dERhdHVtKAorCQkJCQkJY3N0cmluZ190b190ZXh0KHVuZXNjYXBlX3htbChzdHIpKSk7CisK KwkJCQkJcGZyZWUoc3RyKTsKKwkJCQkJYnJlYWs7CisJCQkJZGVmYXVsdDoKKwkJCQkJKm9w LT5yZXN2YWx1ZSA9IFBvaW50ZXJHZXREYXR1bShEYXR1bUdldFRleHRQKHZhbHVlKSk7CisJ CQkJCWJyZWFrOworCQkJCX0KKworCQkJCSpvcC0+cmVzbnVsbCA9IGZhbHNlOworCQkJfQog CQkJYnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCWVsb2coRVJST1IsICJ1bnJlY29nbml6ZWQg WE1MIG9wZXJhdGlvbiIpOworCQkJCWJyZWFrOwogCX0KIH0KIApkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMgYi9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVu Y3MuYwppbmRleCA3YmM4MjM1MDdmLi44OGMwYTUzZTUzIDEwMDY0NAotLS0gYS9zcmMvYmFj a2VuZC9ub2Rlcy9ub2RlRnVuY3MuYworKysgYi9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVu Y3MuYwpAQCAtMTczNiw2ICsxNzM2LDkgQEAgZXhwckxvY2F0aW9uKGNvbnN0IE5vZGUgKmV4 cHIpCiAJCWNhc2UgVF9GdW5jdGlvblBhcmFtZXRlcjoKIAkJCWxvYyA9ICgoY29uc3QgRnVu Y3Rpb25QYXJhbWV0ZXIgKikgZXhwciktPmxvY2F0aW9uOwogCQkJYnJlYWs7CisJCWNhc2Ug VF9YbWxDYXN0OgorCQkJbG9jID0gKChjb25zdCBYbWxDYXN0ICopIGV4cHIpLT5sb2NhdGlv bjsKKwkJCWJyZWFrOwogCQljYXNlIFRfWG1sU2VyaWFsaXplOgogCQkJLyogWE1MU0VSSUFM SVpFIGtleXdvcmQgc2hvdWxkIGFsd2F5cyBiZSB0aGUgZmlyc3QgdGhpbmcgKi8KIAkJCWxv YyA9ICgoY29uc3QgWG1sU2VyaWFsaXplICopIGV4cHIpLT5sb2NhdGlvbjsKQEAgLTQ0Njgs NiArNDQ3MSwxNiBAQCByYXdfZXhwcmVzc2lvbl90cmVlX3dhbGtlcl9pbXBsKE5vZGUgKm5v ZGUsCiAJCQkJCXJldHVybiB0cnVlOwogCQkJfQogCQkJYnJlYWs7CisJCWNhc2UgVF9YbWxD YXN0OgorCQkJeworCQkJCVhtbENhc3QgICAqeGMgPSAoWG1sQ2FzdCAqKSBub2RlOworCisJ CQkJaWYgKFdBTEsoeGMtPmV4cHIpKQorCQkJCQlyZXR1cm4gdHJ1ZTsKKwkJCQlpZiAoV0FM Syh4Yy0+dGFyZ2V0VHlwZSkpCisJCQkJCXJldHVybiB0cnVlOworCQkJfQorCQkJYnJlYWs7 CiAJCWNhc2UgVF9Db2xsYXRlQ2xhdXNlOgogCQkJcmV0dXJuIFdBTEsoKChDb2xsYXRlQ2xh dXNlICopIG5vZGUpLT5hcmcpOwogCQljYXNlIFRfU29ydEJ5OgpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvcGFyc2VyL2dyYW0ueSBiL3NyYy9iYWNrZW5kL3BhcnNlci9ncmFtLnkKaW5k ZXggN2Q5OWM5MzU1Yy4uOTU5MWE5N2E1NiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFy c2VyL2dyYW0ueQorKysgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CkBAIC03ODgsNyAr Nzg4LDcgQEAgc3RhdGljIE5vZGUgKm1ha2VSZWN1cnNpdmVWaWV3U2VsZWN0KGNoYXIgKnJl bG5hbWUsIExpc3QgKmFsaWFzZXMsIE5vZGUgKnF1ZXJ5KTsKIAogCVdIRU4gV0hFUkUgV0hJ VEVTUEFDRV9QIFdJTkRPVyBXSVRIIFdJVEhJTiBXSVRIT1VUIFdPUksgV1JBUFBFUiBXUklU RQogCi0JWE1MX1AgWE1MQVRUUklCVVRFUyBYTUxDT05DQVQgWE1MRUxFTUVOVCBYTUxFWElT VFMgWE1MRk9SRVNUIFhNTE5BTUVTUEFDRVMKKwlYTUxfUCBYTUxBVFRSSUJVVEVTIFhNTENB U1QgWE1MQ09OQ0FUIFhNTEVMRU1FTlQgWE1MRVhJU1RTIFhNTEZPUkVTVCBYTUxOQU1FU1BB Q0VTCiAJWE1MUEFSU0UgWE1MUEkgWE1MUk9PVCBYTUxTRVJJQUxJWkUgWE1MVEFCTEUKIAog CVlFQVJfUCBZRVNfUApAQCAtMTYwMjMsNiArMTYwMjMsMjQgQEAgZnVuY19leHByX2NvbW1v bl9zdWJleHByOgogCQkJCQl2LT5sb2NhdGlvbiA9IEAxOwogCQkJCQkkJCA9IChOb2RlICop IHY7CiAJCQkJfQorCQkJfCBYTUxDQVNUICcoJyBhX2V4cHIgQVMgVHlwZW5hbWUgJyknCisJ CQkJeworCQkJCQlYbWxDYXN0ICpuID0gbWFrZU5vZGUoWG1sQ2FzdCk7CisKKwkJCQkJbi0+ ZXhwciA9ICQzOworCQkJCQluLT50YXJnZXRUeXBlID0gJDU7CisJCQkJCW4tPmxvY2F0aW9u ID0gQDE7CisJCQkJCSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CisJCQl8IFhNTENBU1QgJygn IGFfZXhwciBBUyBUeXBlbmFtZSB4bWxfcGFzc2luZ19tZWNoJyknCisJCQkJeworCQkJCQlY bWxDYXN0ICpuID0gbWFrZU5vZGUoWG1sQ2FzdCk7CisKKwkJCQkJbi0+ZXhwciA9ICQzOwor CQkJCQluLT50YXJnZXRUeXBlID0gJDU7CisJCQkJCW4tPmxvY2F0aW9uID0gQDE7CisJCQkJ CSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CiAJCQl8IFhNTENPTkNBVCAnKCcgZXhwcl9saXN0 ICcpJwogCQkJCXsKIAkJCQkJJCQgPSBtYWtlWG1sRXhwcihJU19YTUxDT05DQVQsIE5VTEws IE5JTCwgJDMsIEAxKTsKQEAgLTE4MDc1LDYgKzE4MDkzLDcgQEAgY29sX25hbWVfa2V5d29y ZDoKIAkJCXwgVkFMVUVTCiAJCQl8IFZBUkNIQVIKIAkJCXwgWE1MQVRUUklCVVRFUworCQkJ fCBYTUxDQVNUCiAJCQl8IFhNTENPTkNBVAogCQkJfCBYTUxFTEVNRU5UCiAJCQl8IFhNTEVY SVNUUwpAQCAtMTg2NjIsNiArMTg2ODEsNyBAQCBiYXJlX2xhYmVsX2tleXdvcmQ6CiAJCQl8 IFdSSVRFCiAJCQl8IFhNTF9QCiAJCQl8IFhNTEFUVFJJQlVURVMKKwkJCXwgWE1MQ0FTVAog CQkJfCBYTUxDT05DQVQKIAkJCXwgWE1MRUxFTUVOVAogCQkJfCBYTUxFWElTVFMKZGlmZiAt LWdpdCBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9leHByLmMgYi9zcmMvYmFja2VuZC9w YXJzZXIvcGFyc2VfZXhwci5jCmluZGV4IGJhZDFkZjczMmUuLjUwODAwZWJlM2IgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9leHByLmMKKysrIGIvc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX2V4cHIuYwpAQCAtNDAsNiArNDAsMTAgQEAKICNpbmNsdWRlICJ1 dGlscy90aW1lc3RhbXAuaCIKICNpbmNsdWRlICJ1dGlscy94bWwuaCIKIAorI2RlZmluZSB0 eXBlX2lzX3htbGNhc3Rfc3VwcG9ydGVkKHgpICgoeCkgPT0gVFlQQ0FURUdPUllfTlVNRVJJ QyB8fCAoeCkgPT0gVFlQQ0FURUdPUllfU1RSSU5HIFwKKwkJCXx8ICh4KSA9PSBUWVBDQVRF R09SWV9EQVRFVElNRSB8fCAoeCkgPT0gVFlQQ0FURUdPUllfQk9PTEVBTiB8fCAoeCkgPT0g VFlQQ0FURUdPUllfVU5LTk9XTiBcCisJCQl8fCAoeCkgPT0gVFlQQ0FURUdPUllfVElNRVNQ QU4pCisKIC8qIEdVQyBwYXJhbWV0ZXJzICovCiBib29sCQlUcmFuc2Zvcm1fbnVsbF9lcXVh bHMgPSBmYWxzZTsKIApAQCAtNjcsNiArNzEsNyBAQCBzdGF0aWMgTm9kZSAqdHJhbnNmb3Jt TWluTWF4RXhwcihQYXJzZVN0YXRlICpwc3RhdGUsIE1pbk1heEV4cHIgKm0pOwogc3RhdGlj IE5vZGUgKnRyYW5zZm9ybVNRTFZhbHVlRnVuY3Rpb24oUGFyc2VTdGF0ZSAqcHN0YXRlLAog CQkJCQkJCQkJICAgU1FMVmFsdWVGdW5jdGlvbiAqc3ZmKTsKIHN0YXRpYyBOb2RlICp0cmFu c2Zvcm1YbWxFeHByKFBhcnNlU3RhdGUgKnBzdGF0ZSwgWG1sRXhwciAqeCk7CitzdGF0aWMg Tm9kZSAqdHJhbnNmb3JtWG1sQ2FzdChQYXJzZVN0YXRlICpwc3RhdGUsIFhtbENhc3QgKnhj KTsKIHN0YXRpYyBOb2RlICp0cmFuc2Zvcm1YbWxTZXJpYWxpemUoUGFyc2VTdGF0ZSAqcHN0 YXRlLCBYbWxTZXJpYWxpemUgKnhzKTsKIHN0YXRpYyBOb2RlICp0cmFuc2Zvcm1Cb29sZWFu VGVzdChQYXJzZVN0YXRlICpwc3RhdGUsIEJvb2xlYW5UZXN0ICpiKTsKIHN0YXRpYyBOb2Rl ICp0cmFuc2Zvcm1DdXJyZW50T2ZFeHByKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3VycmVudE9m RXhwciAqY2V4cHIpOwpAQCAtMjc0LDYgKzI3OSwxMCBAQCB0cmFuc2Zvcm1FeHByUmVjdXJz ZShQYXJzZVN0YXRlICpwc3RhdGUsIE5vZGUgKmV4cHIpCiAJCQkJCQkJCQkJCSAgIChTUUxW YWx1ZUZ1bmN0aW9uICopIGV4cHIpOwogCQkJYnJlYWs7CiAKKwkJY2FzZSBUX1htbENhc3Q6 CisJCQlyZXN1bHQgPSB0cmFuc2Zvcm1YbWxDYXN0KHBzdGF0ZSwgKFhtbENhc3QgKikgZXhw cik7CisJCQlicmVhazsKKwogCQljYXNlIFRfWG1sRXhwcjoKIAkJCXJlc3VsdCA9IHRyYW5z Zm9ybVhtbEV4cHIocHN0YXRlLCAoWG1sRXhwciAqKSBleHByKTsKIAkJCWJyZWFrOwpAQCAt MjQ1NCw2ICsyNDYzLDEwIEBAIHRyYW5zZm9ybVhtbEV4cHIoUGFyc2VTdGF0ZSAqcHN0YXRl LCBYbWxFeHByICp4KQogCQkJCQluZXdlID0gY29lcmNlX3RvX3NwZWNpZmljX3R5cGUocHN0 YXRlLCBuZXdlLCBJTlQ0T0lELAogCQkJCQkJCQkJCQkJICAgIlhNTFJPT1QiKTsKIAkJCQli cmVhazsKKwkJCWNhc2UgSVNfWE1MQ0FTVDoKKwkJCQkvKiBub3QgaGFuZGxlZCBoZXJlICov CisJCQkJQXNzZXJ0KGZhbHNlKTsKKwkJCQlicmVhazsKIAkJCWNhc2UgSVNfWE1MU0VSSUFM SVpFOgogCQkJCS8qIG5vdCBoYW5kbGVkIGhlcmUgKi8KIAkJCQlBc3NlcnQoZmFsc2UpOwpA QCAtMjQ3MCw2ICsyNDgzLDc0IEBAIHRyYW5zZm9ybVhtbEV4cHIoUGFyc2VTdGF0ZSAqcHN0 YXRlLCBYbWxFeHByICp4KQogCXJldHVybiAoTm9kZSAqKSBuZXd4OwogfQogCitzdGF0aWMg Tm9kZSAqCit0cmFuc2Zvcm1YbWxDYXN0KFBhcnNlU3RhdGUgKnBzdGF0ZSwgWG1sQ2FzdCAq eGMpCit7CisJTm9kZSAqcmVzdWx0OworCVhtbEV4cHIgKnhleHByOworCWludDMyIHRhcmdl dFR5cG1vZDsKKwlPaWQgdGFyZ2V0VHlwZTsKKwlPaWQgaW5wdXRUeXBlOworCWNoYXIgaW5w dXRUeXBjYXRlZ29yeTsKKwljaGFyIHRhcmdldFR5cGNhdGVnb3J5OworCWJvb2wgaW5wdXRU eXBpc3ByZWZlcnJlZDsKKwlib29sIHRhcmdldFR5cGlzcHJlZmVycmVkOworCisJLyoKKwkg KiB3ZSBtYWtlIHN1cmUgdGhhdCBlaXRoZXIgdGhlIGNhc3Qgb3BlcmFuZCBvciB0aGUgZGF0 YSB0eXBlIGlzIGFuIFhNTCwKKwkgKiBhbmQgY2hlY2sgaWYgdGhlIGRhdGEgdHlwZXMgYXJl IHN1cHBvcnRlZC4KKwkgKi8KKwlpbnB1dFR5cGUgPSBleHByVHlwZSh0cmFuc2Zvcm1FeHBy UmVjdXJzZShwc3RhdGUsIHhjLT5leHByKSk7CisJZ2V0X3R5cGVfY2F0ZWdvcnlfcHJlZmVy cmVkKGlucHV0VHlwZSwgJmlucHV0VHlwY2F0ZWdvcnksICZpbnB1dFR5cGlzcHJlZmVycmVk KTsKKworCXR5cGVuYW1lVHlwZUlkQW5kTW9kKHBzdGF0ZSwgeGMtPnRhcmdldFR5cGUsICZ0 YXJnZXRUeXBlLCAmdGFyZ2V0VHlwbW9kKTsKKwlnZXRfdHlwZV9jYXRlZ29yeV9wcmVmZXJy ZWQodGFyZ2V0VHlwZSwgJnRhcmdldFR5cGNhdGVnb3J5LCAmdGFyZ2V0VHlwaXNwcmVmZXJy ZWQpOworCisJaWYgKChpbnB1dFR5cGUgIT0gWE1MT0lEICYmIHRhcmdldFR5cGUgIT0gWE1M T0lEKSB8fAorCQkoIXR5cGVfaXNfeG1sY2FzdF9zdXBwb3J0ZWQoaW5wdXRUeXBjYXRlZ29y eSkgJiYgaW5wdXRUeXBlICE9IFhNTE9JRCAmJiBpbnB1dFR5cGUgIT0gQllURUFPSUQpIHx8 CisJCSghdHlwZV9pc194bWxjYXN0X3N1cHBvcnRlZCh0YXJnZXRUeXBjYXRlZ29yeSkgJiYg dGFyZ2V0VHlwZSAhPSBYTUxPSUQgJiYgdGFyZ2V0VHlwZSAhPSBCWVRFQU9JRCkpCisJCWVy ZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9DQU5OT1RfQ09FUkNFKSwKKwkJ CQkgZXJybXNnKCJjYW5ub3QgY2FzdCBmcm9tICclcycgdG8gJyVzJyIsCisJCQkJCQlmb3Jt YXRfdHlwZV9iZShpbnB1dFR5cGUpLCBmb3JtYXRfdHlwZV9iZSh0YXJnZXRUeXBlKSksCisJ CQkJIHBhcnNlcl9lcnJwb3NpdGlvbihwc3RhdGUsIHhjLT5sb2NhdGlvbikpKTsKKworCS8q CisJICogaXQgaXMgbm90IHBvc3NpYmxlIHRvIGNhc3Qgc29tZSBzdXBwb3J0ZWQgZGF0YSB0 eXBlcyBkaXJlY3RseSB0byBYTUwsCisJICogc28gd2UgZmlyc3QgaGFuZGxlIHRoZW0gYXMg VEVYVCBhbmQgbGF0ZXIgb24gcmV0dXJuIHRoZW0gYXMgWE1MLgorCSAqLworCWlmIChpbnB1 dFR5cGNhdGVnb3J5ID09IFRZUENBVEVHT1JZX05VTUVSSUMgfHwgaW5wdXRUeXBlID09IFRJ TUVPSUQgfHwKKwkJaW5wdXRUeXBlID09IFRJTUVUWk9JRCB8fCBpbnB1dFR5cGUgPT0gVU5L Tk9XTk9JRCB8fCBpbnB1dFR5cGUgPT0gTkFNRU9JRCkKKwkJaW5wdXRUeXBlID0gVEVYVE9J RDsKKworCXhleHByID0gbWFrZU5vZGUoWG1sRXhwcik7CisJeGV4cHItPm9wID0gSVNfWE1M Q0FTVDsKKwl4ZXhwci0+bG9jYXRpb24gPSB4Yy0+bG9jYXRpb247CisJeGV4cHItPnR5cGUg PSBpbnB1dFR5cGU7CisJeGV4cHItPnRhcmdldFR5cGUgPSB0YXJnZXRUeXBlOworCXhleHBy LT5uYW1lID0gInhtbGNhc3QiOworCXhleHByLT5hcmdzID0gbGlzdF9tYWtlMShjb2VyY2Vf dG9fc3BlY2lmaWNfdHlwZShwc3RhdGUsCisJCQkJCQkJCQkJCQkJIHRyYW5zZm9ybUV4cHJS ZWN1cnNlKHBzdGF0ZSwgeGMtPmV4cHIpLAorCQkJCQkJCQkJCQkJCSBpbnB1dFR5cGUsCisJ CQkJCQkJCQkJCQkJICJYTUxDQVNUIikpOworCisJcmVzdWx0ID0gY29lcmNlX3RvX3Rhcmdl dF90eXBlKHBzdGF0ZSwgKE5vZGUgKikgeGV4cHIsCisJCQkJCQkJCSAgIHRhcmdldFR5cGUg PT0gVEVYVE9JRCA/IFhNTE9JRCA6IFRFWFRPSUQsCisJCQkJCQkJCSAgIHRhcmdldFR5cGUs IHRhcmdldFR5cG1vZCwKKwkJCQkJCQkJICAgQ09FUkNJT05fRVhQTElDSVQsCisJCQkJCQkJ CSAgIENPRVJDRV9FWFBMSUNJVF9DQVNULAorCQkJCQkJCQkgICAtMSk7CisKKwlpZiAocmVz dWx0ID09IE5VTEwpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9D QU5OT1RfQ09FUkNFKSwKKwkJCQkgZXJybXNnKCJjYW5ub3QgY2FzdCBYTUxDQVNUIHJlc3Vs dCB0byAlcyIsCisJCQkJCQlmb3JtYXRfdHlwZV9iZSh0YXJnZXRUeXBlKSksCisJCQkJIHBh cnNlcl9lcnJwb3NpdGlvbihwc3RhdGUsIHhleHByLT5sb2NhdGlvbikpKTsKKworCXJldHVy biByZXN1bHQ7Cit9CisKIHN0YXRpYyBOb2RlICoKIHRyYW5zZm9ybVhtbFNlcmlhbGl6ZShQ YXJzZVN0YXRlICpwc3RhdGUsIFhtbFNlcmlhbGl6ZSAqeHMpCiB7CmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdGFyZ2V0LmMgYi9zcmMvYmFja2VuZC9wYXJzZXIv cGFyc2VfdGFyZ2V0LmMKaW5kZXggNGFiYTBkOWQ0ZC4uNmVkYzBhMTljNSAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3RhcmdldC5jCisrKyBiL3NyYy9iYWNrZW5k L3BhcnNlci9wYXJzZV90YXJnZXQuYwpAQCAtMTk1Niw2ICsxOTU2LDkgQEAgRmlndXJlQ29s bmFtZUludGVybmFsKE5vZGUgKm5vZGUsIGNoYXIgKipuYW1lKQogCQkJLyogbWFrZSBTUUwv WE1MIGZ1bmN0aW9ucyBhY3QgbGlrZSBhIHJlZ3VsYXIgZnVuY3Rpb24gKi8KIAkJCXN3aXRj aCAoKChYbWxFeHByICopIG5vZGUpLT5vcCkKIAkJCXsKKwkJCQljYXNlIElTX1hNTENBU1Q6 CisJCQkJCSpuYW1lID0gInhtbGNhc3QiOworCQkJCQlyZXR1cm4gMjsKIAkJCQljYXNlIElT X1hNTENPTkNBVDoKIAkJCQkJKm5hbWUgPSAieG1sY29uY2F0IjsKIAkJCQkJcmV0dXJuIDI7 CkBAIC0xOTgyLDYgKzE5ODUsMTAgQEAgRmlndXJlQ29sbmFtZUludGVybmFsKE5vZGUgKm5v ZGUsIGNoYXIgKipuYW1lKQogCQkJCQlicmVhazsKIAkJCX0KIAkJCWJyZWFrOworCQljYXNl IFRfWG1sQ2FzdDoKKwkJCS8qIG1ha2UgWE1MQ0FTVCBhY3QgbGlrZSBhIHJlZ3VsYXIgZnVu Y3Rpb24gKi8KKwkJCSpuYW1lID0gInhtbGNhc3QiOworCQkJcmV0dXJuIDI7CiAJCWNhc2Ug VF9YbWxTZXJpYWxpemU6CiAJCQkvKiBtYWtlIFhNTFNFUklBTElaRSBhY3QgbGlrZSBhIHJl Z3VsYXIgZnVuY3Rpb24gKi8KIAkJCSpuYW1lID0gInhtbHNlcmlhbGl6ZSI7CmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcnVsZXV0aWxzLmMgYi9zcmMvYmFja2VuZC91 dGlscy9hZHQvcnVsZXV0aWxzLmMKaW5kZXggNTRkYWQ5NzU1NS4uMGE3NzFkMzU5ZSAxMDA2 NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3J1bGV1dGlscy5jCisrKyBiL3NyYy9i YWNrZW5kL3V0aWxzL2FkdC9ydWxldXRpbHMuYwpAQCAtMTAwMjksNiArMTAwMjksOSBAQCBn ZXRfcnVsZV9leHByKE5vZGUgKm5vZGUsIGRlcGFyc2VfY29udGV4dCAqY29udGV4dCwKIAkJ CQkJY2FzZSBJU19YTUxTRVJJQUxJWkU6CiAJCQkJCQlhcHBlbmRTdHJpbmdJbmZvU3RyaW5n KGJ1ZiwgIlhNTFNFUklBTElaRSgiKTsKIAkJCQkJCWJyZWFrOworCQkJCQljYXNlIElTX1hN TENBU1Q6CisJCQkJCQlhcHBlbmRTdHJpbmdJbmZvU3RyaW5nKGJ1ZiwgIlhNTENBU1QoIik7 CisJCQkJCQlicmVhazsKIAkJCQkJY2FzZSBJU19ET0NVTUVOVDoKIAkJCQkJCWJyZWFrOwog CQkJCX0KQEAgLTEwMDM5LDcgKzEwMDQyLDcgQEAgZ2V0X3J1bGVfZXhwcihOb2RlICpub2Rl LCBkZXBhcnNlX2NvbnRleHQgKmNvbnRleHQsCiAJCQkJCWVsc2UKIAkJCQkJCWFwcGVuZFN0 cmluZ0luZm9TdHJpbmcoYnVmLCAiQ09OVEVOVCAiKTsKIAkJCQl9Ci0JCQkJaWYgKHhleHBy LT5uYW1lKQorCQkJCWlmICh4ZXhwci0+bmFtZSAmJiB4ZXhwci0+b3AgIT0gSVNfWE1MQ0FT VCkKIAkJCQl7CiAJCQkJCWFwcGVuZFN0cmluZ0luZm8oYnVmLCAiTkFNRSAlcyIsCiAJCQkJ CQkJCQkgcXVvdGVfaWRlbnRpZmllcihtYXBfeG1sX25hbWVfdG9fc3FsX2lkZW50aWZpZXIo eGV4cHItPm5hbWUpKSk7CkBAIC0xMDA3NSw2ICsxMDA3OCw3IEBAIGdldF9ydWxlX2V4cHIo Tm9kZSAqbm9kZSwgZGVwYXJzZV9jb250ZXh0ICpjb250ZXh0LAogCQkJCQkJYXBwZW5kU3Ry aW5nSW5mb1N0cmluZyhidWYsICIsICIpOwogCQkJCQlzd2l0Y2ggKHhleHByLT5vcCkKIAkJ CQkJeworCQkJCQkJY2FzZSBJU19YTUxDQVNUOgogCQkJCQkJY2FzZSBJU19YTUxDT05DQVQ6 CiAJCQkJCQljYXNlIElTX1hNTEVMRU1FTlQ6CiAJCQkJCQljYXNlIElTX1hNTEZPUkVTVDoK QEAgLTEwMTQ1LDYgKzEwMTQ5LDEwIEBAIGdldF9ydWxlX2V4cHIoTm9kZSAqbm9kZSwgZGVw YXJzZV9jb250ZXh0ICpjb250ZXh0LAogCQkJCQlhcHBlbmRTdHJpbmdJbmZvKGJ1ZiwgIiBB UyAlcyIsCiAJCQkJCQkJCQkgZm9ybWF0X3R5cGVfd2l0aF90eXBlbW9kKHhleHByLT50eXBl LAogCQkJCQkJCQkJCQkJCQkJICB4ZXhwci0+dHlwbW9kKSk7CisJCQkJaWYgKHhleHByLT5v cCA9PSBJU19YTUxDQVNUKQorCQkJCQlhcHBlbmRTdHJpbmdJbmZvKGJ1ZiwgIiBBUyAlcyIs CisJCQkJCQkJCQkgZm9ybWF0X3R5cGVfYmUoeGV4cHItPnRhcmdldFR5cGUpKTsKKwogCQkJ CWlmICh4ZXhwci0+b3AgPT0gSVNfRE9DVU1FTlQpCiAJCQkJCWFwcGVuZFN0cmluZ0luZm9T dHJpbmcoYnVmLCAiIElTIERPQ1VNRU5UIik7CiAJCQkJZWxzZQpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L3htbC5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3htbC5j CmluZGV4IGRiOGQwZDZhN2UuLjI0ZmNhNDI4ZjYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L3V0aWxzL2FkdC94bWwuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQveG1sLmMKQEAg LTI3MjIsNiArMjcyMiw2NyBAQCBlc2NhcGVfeG1sKGNvbnN0IGNoYXIgKnN0cikKIAlyZXR1 cm4gYnVmLmRhdGE7CiB9CiAKKy8qCisgKiBVbmVzY2FwZSBYTUwgZXNjYXBlZCBjaGFyYWN0 ZXJzLgorICoKKyAqIEluIG9yZGVyIHRvIGtlZXAgaXQgY29uc2lzdGVudCB3aXRoICJlc2Nh cGVfeG1sKGNvbnN0IGNoYXIqKSIsCisgKiB0aGlzIGZ1bmN0aW9uIGludGVudGlvbmFsbHkg ZG9lcyBub3QgZGVwZW5kIG9uIGxpYnhtbDIuCisgKi8KK2NoYXIgKgordW5lc2NhcGVfeG1s KGNvbnN0IGNoYXIgKnN0cikKK3sKKwlTdHJpbmdJbmZvRGF0YSBidWY7CisJc2l6ZV90IHAg PSAwOworCXNpemVfdCBsZW47CisKKwlpZiAoIXN0cikKKwkJcmV0dXJuIE5VTEw7CisKKwls ZW4gPSBzdHJsZW4oc3RyKTsKKworCWluaXRTdHJpbmdJbmZvKCZidWYpOworCisJd2hpbGUg KHAgPCBsZW4pCisJeworCQlpZiAocCArIDQgPD0gbGVuICYmIHN0cm5jbXAoc3RyICsgcCwg IiZsdDsiLCA0KSA9PSAwKQorCQl7CisJCQlhcHBlbmRTdHJpbmdJbmZvQ2hhcigmYnVmLCAn PCcpOworCQkJcCArPSA0OworCQl9CisJCWVsc2UgaWYgKHAgKyA0IDw9IGxlbiAmJiBzdHJu Y21wKHN0ciArIHAsICImZ3Q7IiwgNCkgPT0gMCkKKwkJeworCQkJYXBwZW5kU3RyaW5nSW5m b0NoYXIoJmJ1ZiwgJz4nKTsKKwkJCXAgKz0gNDsKKwkJfQorCQllbHNlIGlmIChwICsgNSA8 PSBsZW4gJiYgc3RybmNtcChzdHIgKyBwLCAiJmFtcDsiLCA1KSA9PSAwKQorCQl7CisJCQlh cHBlbmRTdHJpbmdJbmZvQ2hhcigmYnVmLCAnJicpOworCQkJcCArPSA1OworCQl9CisJCWVs c2UgaWYgKHAgKyA1IDw9IGxlbiAmJiBzdHJuY21wKHN0ciArIHAsICImIzEzOyIsIDUpID09 IDApCisJCXsKKwkJCWFwcGVuZFN0cmluZ0luZm9DaGFyKCZidWYsICdccicpOworCQkJcCAr PSA1OworCQl9CisJCWVsc2UgaWYgKHAgKyA2IDw9IGxlbiAmJiBzdHJuY21wKHN0ciArIHAs ICImcXVvdDsiLCA2KSA9PSAwKQorCQl7CisJCQlhcHBlbmRTdHJpbmdJbmZvQ2hhcigmYnVm LCAnIicpOworCQkJcCArPSA2OworCQl9CisJCWVsc2UgaWYgKHAgKyA2IDw9IGxlbiAmJiBz dHJuY21wKHN0ciArIHAsICImI3gwRDsiLCA2KSA9PSAwKQorCQl7CisJCQlhcHBlbmRTdHJp bmdJbmZvQ2hhcigmYnVmLCAnXHInKTsKKwkJCXAgKz0gNjsKKwkJfQorCQllbHNlCisJCXsK KwkJCWFwcGVuZFN0cmluZ0luZm9DaGFyKCZidWYsICooc3RyICsgcCkpOworCQkJcCsrOwor CQl9CisJfQorCisJcmV0dXJuIGJ1Zi5kYXRhOworfQogCiBzdGF0aWMgY2hhciAqCiBfU1BJ X3N0cmR1cChjb25zdCBjaGFyICpzKQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMv cGFyc2Vub2Rlcy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCmluZGV4IDBi MjA4ZjUxYmQuLjVjZDVkNDJkZTcgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3Bh cnNlbm9kZXMuaAorKysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKQEAgLTg2 MCw2ICs4NjAsMTQgQEAgdHlwZWRlZiBzdHJ1Y3QgWG1sU2VyaWFsaXplCiAJUGFyc2VMb2MJ bG9jYXRpb247CQkvKiB0b2tlbiBsb2NhdGlvbiwgb3IgLTEgaWYgdW5rbm93biAqLwogfSBY bWxTZXJpYWxpemU7CiAKK3R5cGVkZWYgc3RydWN0IFhtbENhc3QKK3sKKwlOb2RlVGFnCQl0 eXBlOworCU5vZGUJICAgKmV4cHI7CisJVHlwZU5hbWUgICAqdGFyZ2V0VHlwZTsKKwlQYXJz ZUxvYwlsb2NhdGlvbjsJCS8qIHRva2VuIGxvY2F0aW9uLCBvciAtMSBpZiB1bmtub3duICov Cit9IFhtbENhc3Q7CisKIC8qIFBhcnRpdGlvbmluZyByZWxhdGVkIGRlZmluaXRpb25zICov CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9ub2Rlcy9wcmltbm9kZXMuaCBiL3Ny Yy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCmluZGV4IDgzOWU3MWQ1MmYuLjAwYTI4YTBk ZTQgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCisrKyBiL3Ny Yy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCkBAIC0xNTgyLDYgKzE1ODIsNyBAQCB0eXBl ZGVmIHN0cnVjdCBTUUxWYWx1ZUZ1bmN0aW9uCiAgKi8KIHR5cGVkZWYgZW51bSBYbWxFeHBy T3AKIHsKKwlJU19YTUxDQVNULAkJCQkJLyogWE1MQ0FTVChvcCBBUyBkYXRhdHlwZSkgKi8K IAlJU19YTUxDT05DQVQsCQkJCS8qIFhNTENPTkNBVChhcmdzKSAqLwogCUlTX1hNTEVMRU1F TlQsCQkJCS8qIFhNTEVMRU1FTlQobmFtZSwgeG1sX2F0dHJpYnV0ZXMsIGFyZ3MpICovCiAJ SVNfWE1MRk9SRVNULAkJCQkvKiBYTUxGT1JFU1QoeG1sX2F0dHJpYnV0ZXMpICovCkBAIC0x NjE4LDYgKzE2MTksOCBAQCB0eXBlZGVmIHN0cnVjdCBYbWxFeHByCiAJLyogdGFyZ2V0IHR5 cGUvdHlwbW9kIGZvciBYTUxTRVJJQUxJWkUgKi8KIAlPaWQJCQl0eXBlIHBnX25vZGVfYXR0 cihxdWVyeV9qdW1ibGVfaWdub3JlKTsKIAlpbnQzMgkJdHlwbW9kIHBnX25vZGVfYXR0cihx dWVyeV9qdW1ibGVfaWdub3JlKTsKKwkvKiBvcHRpb24gZm9yIFhNTENBU1QgKi8KKwlPaWQg CQl0YXJnZXRUeXBlOwogCS8qIHRva2VuIGxvY2F0aW9uLCBvciAtMSBpZiB1bmtub3duICov CiAJUGFyc2VMb2MJbG9jYXRpb247CiB9IFhtbEV4cHI7CmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9wYXJzZXIva3dsaXN0LmggYi9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKaW5k ZXggNDBjZjA5MGNlNi4uNDBmNDEyZGFiMyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGFy c2VyL2t3bGlzdC5oCisrKyBiL3NyYy9pbmNsdWRlL3BhcnNlci9rd2xpc3QuaApAQCAtNTA1 LDYgKzUwNSw3IEBAIFBHX0tFWVdPUkQoIndyYXBwZXIiLCBXUkFQUEVSLCBVTlJFU0VSVkVE X0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19LRVlXT1JEKCJ3cml0ZSIsIFdSSVRFLCBVTlJF U0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19LRVlXT1JEKCJ4bWwiLCBYTUxfUCwg VU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgieG1sYXR0cmli dXRlcyIsIFhNTEFUVFJJQlVURVMsIENPTF9OQU1FX0tFWVdPUkQsIEJBUkVfTEFCRUwpCitQ R19LRVlXT1JEKCJ4bWxjYXN0IiwgWE1MQ0FTVCwgQ09MX05BTUVfS0VZV09SRCwgQkFSRV9M QUJFTCkKIFBHX0tFWVdPUkQoInhtbGNvbmNhdCIsIFhNTENPTkNBVCwgQ09MX05BTUVfS0VZ V09SRCwgQkFSRV9MQUJFTCkKIFBHX0tFWVdPUkQoInhtbGVsZW1lbnQiLCBYTUxFTEVNRU5U LCBDT0xfTkFNRV9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgieG1sZXhpc3Rz IiwgWE1MRVhJU1RTLCBDT0xfTkFNRV9LRVlXT1JELCBCQVJFX0xBQkVMKQpkaWZmIC0tZ2l0 IGEvc3JjL2luY2x1ZGUvdXRpbHMveG1sLmggYi9zcmMvaW5jbHVkZS91dGlscy94bWwuaApp bmRleCAwZDdhODE2YjlmLi42MGJiNDY0YmQzIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91 dGlscy94bWwuaAorKysgYi9zcmMvaW5jbHVkZS91dGlscy94bWwuaApAQCAtODAsNiArODAs NyBAQCBleHRlcm4gYm9vbCB4bWxfaXNfZG9jdW1lbnQoeG1sdHlwZSAqYXJnKTsKIGV4dGVy biB0ZXh0ICp4bWx0b3RleHRfd2l0aF9vcHRpb25zKHhtbHR5cGUgKmRhdGEsIFhtbE9wdGlv blR5cGUgeG1sb3B0aW9uX2FyZywKIAkJCQkJCQkJCWJvb2wgaW5kZW50KTsKIGV4dGVybiBj aGFyICplc2NhcGVfeG1sKGNvbnN0IGNoYXIgKnN0cik7CitleHRlcm4gY2hhciAqdW5lc2Nh cGVfeG1sKGNvbnN0IGNoYXIgKnN0cik7CiAKIGV4dGVybiBjaGFyICptYXBfc3FsX2lkZW50 aWZpZXJfdG9feG1sX25hbWUoY29uc3QgY2hhciAqaWRlbnQsIGJvb2wgZnVsbHlfZXNjYXBl ZCwgYm9vbCBlc2NhcGVfcGVyaW9kKTsKIGV4dGVybiBjaGFyICptYXBfeG1sX25hbWVfdG9f c3FsX2lkZW50aWZpZXIoY29uc3QgY2hhciAqbmFtZSk7CmRpZmYgLS1naXQgYS9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3htbC5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3htbC5vdXQKaW5kZXggMmU5NjE2YWNkYS4uZjI2ZDQ4OTdkYiAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC94bWwub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQveG1sLm91dApAQCAtMTg3MywzICsxODczLDU2OCBAQCBTRUxFQ1QgeG1sdGV4 dCgneCd8fCAnPFA+NzM8L1A+Jzo6eG1sIHx8IC40MiB8fCB0cnVlIHx8ICdqJzo6Y2hhcik7 CiAgeCZsdDtQJmd0OzczJmx0Oy9QJmd0OzAuNDJ0cnVlagogKDEgcm93KQogCistLSBmb3Ig eG1sY2FzdCgpIHRlc3RzCitJTlNFUlQgSU5UTyB4bWx0ZXN0CisgVkFMVUVTICg0MiwKKyc8 P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PgorIDx4bWxjYXN0PgorICA8 cGVyaW9kMT5QMVkyTTNEVDRINU02UzwvcGVyaW9kMT4KKyAgPHBlcmlvZDI+MSB5ZWFyIDIg bW9ucyAzIGRheXMgNCBob3VycyA1IG1pbnV0ZXMgNiBzZWNvbmRzPC9wZXJpb2QyPgorICA8 ZGF0ZTE+MjAwMi0wOS0yNDwvZGF0ZTE+CisgIDxkYXRlMj4yMDAyLTA5LTI0KzA2OjAwPC9k YXRlMj4KKyAgPHRpbWU+MDk6MzA6MTAuNTwvdGltZT4KKyAgPHRpbWVfdHoxPjA5OjMwOjEw WjwvdGltZV90ejE+CisgIDx0aW1lX3R6Mj4wOTozMDoxMC0wNjowMDwvdGltZV90ejI+Cisg IDx0aW1lX3R6Mz4wOTozMDoxMCswNjowMDwvdGltZV90ejM+CisgIDx0aW1lc3RhbXAxPjIw MDItMDUtMzBUMDk6MDA6MDA8L3RpbWVzdGFtcDE+CisgIDx0aW1lc3RhbXAyPjIwMDItMDUt MzBUMDk6MzA6MTAuNTwvdGltZXN0YW1wMj4KKyAgPHRpbWVzdGFtcF90ejE+MjAwMi0wNS0z MFQwOTozMDoxMFo8L3RpbWVzdGFtcF90ejE+CisgIDx0aW1lc3RhbXBfdHoyPjIwMDItMDUt MzBUMDk6MzA6MTAtMDY6MDA8L3RpbWVzdGFtcF90ejI+CisgIDx0aW1lc3RhbXBfdHozPjIw MDItMDUtMzBUMDk6MzA6MTArMDY6MDA8L3RpbWVzdGFtcF90ejM+CisgIDx0ZXh0MT5mb28g YmFyPC90ZXh0MT4KKyAgPHRleHQyPiAgICAgICBmb28gYmFyICAgICA8L3RleHQyPgorICA8 dGV4dDM+Zm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7PC90ZXh0Mz4KKyAgPGRl Y2ltYWwxPjQyLjczMTIzNDU2Nzg5MTA8L2RlY2ltYWwxPgorICA8ZGVjaW1hbDI+KzQyLjcz MTIzNDU2Nzg5MTA8L2RlY2ltYWwyPgorICA8ZGVjaW1hbDM+LTQyLjczMTIzNDU2Nzg5MTA8 L2RlY2ltYWwzPgorICA8aW50ZWdlcjE+NDI8L2ludGVnZXIxPgorICA8aW50ZWdlcjI+KzQy PC9pbnRlZ2VyMj4KKyAgPGludGVnZXIzPi00MjwvaW50ZWdlcjM+CisgIDxsb25nMT40Mjcz NTM1NDIwMTYyMDIxPC9sb25nMT4KKyAgPGxvbmcyPis0MjczNTM1NDIwMTYyMDIxPC9sb25n Mj4KKyAgPGxvbmczPi00MjczNTM1NDIwMTYyMDIxPC9sb25nMz4KKyAgPGJvb2wxIGF0dD0i dHJ1ZSI+NDI8L2Jvb2wxPgorICA8Ym9vbDIgYXR0PSJmYWxzZSI+NzM8L2Jvb2wyPgorICA8 ZW1wdHk+PC9lbXB0eT4KKyA8L3htbGNhc3Q+Jzo6eG1sCispOworLS0gVGhpcyBwcmV2ZW50 cyB0aGUgeG1sY2FzdCByZWdyZXNzaW9uIHRlc3RzIGZyb20gZmFpbGluZyBpZiB0aGUgc3lz dGVtJ3MgdGltZXpvbmUgaGFzIGJlZW4gY2hhbmdlZC4KK1NFVCB0aW1lem9uZSBUTyAnQW1l cmljYS9Mb3NfQW5nZWxlcyc7CistLSB4bWxjYXN0IGV4Y2VwdGlvbnMKK1xzZXQgVkVSQk9T SVRZIHRlcnNlCitTRUxFQ1QgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIHRleHRbXSkgRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CitFUlJPUjog IGNhbm5vdCBjYXN0IGZyb20gJ3htbCcgdG8gJ3RleHRbXScgYXQgY2hhcmFjdGVyIDgKK1NF TEVDVCB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS9pbnRlZ2VyMSgpJywgZGF0YSkpWzFdIEFT IGludFtdKSBGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKK0VSUk9SOiAgY2Fubm90IGNh c3QgZnJvbSAneG1sJyB0byAnaW50ZWdlcltdJyBhdCBjaGFyYWN0ZXIgOAorU0VMRUNUIHht bGNhc3QoTlVMTCBBUyB0ZXh0KTsKK0VSUk9SOiAgY2Fubm90IGNhc3QgZnJvbSAndW5rbm93 bicgdG8gJ3RleHQnIGF0IGNoYXJhY3RlciA4CitTRUxFQ1QgeG1sY2FzdCgnZm9vJzo6dGV4 dCBBUyB2YXJjaGFyKTsKK0VSUk9SOiAgY2Fubm90IGNhc3QgZnJvbSAndGV4dCcgdG8gJ2No YXJhY3RlciB2YXJ5aW5nJyBhdCBjaGFyYWN0ZXIgOAorU0VMRUNUIHhtbGNhc3QoNDIgQVMg dGV4dCk7CitFUlJPUjogIGNhbm5vdCBjYXN0IGZyb20gJ2ludGVnZXInIHRvICd0ZXh0JyBh dCBjaGFyYWN0ZXIgOAorU0VMRUNUIHhtbGNhc3QoYXJyYXlbJ2ZvbycsJ2JhciddIEFTIHht bCk7CitFUlJPUjogIGNhbm5vdCBjYXN0IGZyb20gJ3RleHRbXScgdG8gJ3htbCcgYXQgY2hh cmFjdGVyIDgKK1xzZXQgVkVSQk9TSVRZIGRlZmF1bHQKKy0tIHhtbGNhc3QgdGVzdHMgZm9y ICJYTUwgdG8gbm9uLVhNTCIgZXhwcmVzc2lvbnMKK1NFTEVDVAorICB4bWxjYXN0KCh4cGF0 aCgnLy9kYXRlMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZGF0ZSksIHBnX3R5cGVvZih4bWxj YXN0KCh4cGF0aCgnLy9kYXRlMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZGF0ZSkpLAorICB4 bWxjYXN0KCh4cGF0aCgnLy9kYXRlMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZGF0ZSksIHBn X3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kYXRlMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMg ZGF0ZSkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyAgeG1sY2FzdCAgIHwgcGdf dHlwZW9mIHwgIHhtbGNhc3QgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyAwOS0yNC0yMDAyIHwgZGF0ZSAgICAg IHwgMDktMjQtMjAwMiB8IGRhdGUKKygxIHJvdykKKworU0VMRUNUCisgIHhtbGNhc3QoKHhw YXRoKCcvL3BlcmlvZDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludGVydmFsKSwgcGdfdHlw ZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3BlcmlvZDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGlu dGVydmFsKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3BlcmlvZDIvdGV4dCgpJywgZGF0YSkp WzFdIEFTIGludGVydmFsKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3BlcmlvZDIv dGV4dCgpJywgZGF0YSkpWzFdIEFTIGludGVydmFsKSkKK0ZST00geG1sdGVzdCBXSEVSRSBp ZCA9IDQyOworICAgICAgICAgICAgICAgICAgIHhtbGNhc3QgICAgICAgICAgICAgICAgICAg IHwgcGdfdHlwZW9mIHwgICAgICAgICAgICAgICAgICAgeG1sY2FzdCAgICAgICAgICAgICAg ICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBAIDEgeWVhciAyIG1vbnMgMyBkYXlz IDQgaG91cnMgNSBtaW5zIDYgc2VjcyB8IGludGVydmFsICB8IEAgMSB5ZWFyIDIgbW9ucyAz IGRheXMgNCBob3VycyA1IG1pbnMgNiBzZWNzIHwgaW50ZXJ2YWwKKygxIHJvdykKKworU0VM RUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RpbWUvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRp bWUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGltZS90ZXh0KCknLCBkYXRhKSlb MV0gQVMgdGltZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6MS90ZXh0KCknLCBk YXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4 cGF0aCgnLy90aW1lX3R6MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUg em9uZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6Mi90ZXh0KCknLCBkYXRhKSlb MV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly90aW1lX3R6Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSkp LAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6My90ZXh0KCknLCBkYXRhKSlbMV0gQVMg dGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90aW1l X3R6My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSkpCitGUk9N IHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyAgeG1sY2FzdCAgIHwgICAgICAgcGdfdHlwZW9m ICAgICAgICB8ICAgeG1sY2FzdCAgIHwgICAgICBwZ190eXBlb2YgICAgICB8ICAgeG1sY2Fz dCAgIHwgICAgICBwZ190eXBlb2YgICAgICB8ICAgeG1sY2FzdCAgIHwgICAgICBwZ190eXBl b2YgICAgICAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAwOToz MDoxMC41IHwgdGltZSB3aXRob3V0IHRpbWUgem9uZSB8IDA5OjMwOjEwKzAwIHwgdGltZSB3 aXRoIHRpbWUgem9uZSB8IDA5OjMwOjEwLTA2IHwgdGltZSB3aXRoIHRpbWUgem9uZSB8IDA5 OjMwOjEwKzA2IHwgdGltZSB3aXRoIHRpbWUgem9uZQorKDEgcm93KQorCitTRUxFQ1QKKyAg eG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpLCBw Z190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFT IHRleHQpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFd IEFTIHRleHQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIHRleHQpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHRleHQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4 dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlk ID0gNDI7CisgeG1sY2FzdCB8IHBnX3R5cGVvZiB8ICAgICAgIHhtbGNhc3QgICAgICAgfCBw Z190eXBlb2YgfCAgICB4bWxjYXN0ICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBmb28gYmFyIHwgdGV4dCAgICAgIHwgICAgICAgIGZvbyBiYXIg ICAgICB8IHRleHQgICAgICB8IGZvbyAmIDwiYmFyIj4gfCB0ZXh0CisoMSByb3cpCisKK1NF TEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMg dmFyY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBk YXRhKSlbMV0gQVMgdmFyY2hhcikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhcikpLAorICB4bWxjYXN0KCh4 cGF0aCgnLy90ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhciksIHBnX3R5cGVv Zih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hh cikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4bWxjYXN0IHwgICAgIHBnX3R5 cGVvZiAgICAgfCAgICAgICB4bWxjYXN0ICAgICAgIHwgICAgIHBnX3R5cGVvZiAgICAgfCAg ICB4bWxjYXN0ICAgIHwgICAgIHBnX3R5cGVvZiAgICAgCistLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLQorIGZvbyBiYXIgfCBjaGFyYWN0 ZXIgdmFyeWluZyB8ICAgICAgICBmb28gYmFyICAgICAgfCBjaGFyYWN0ZXIgdmFyeWluZyB8 IGZvbyAmIDwiYmFyIj4gfCBjaGFyYWN0ZXIgdmFyeWluZworKDEgcm93KQorCitTRUxFQ1QK KyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG5hbWUp LCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFd IEFTIG5hbWUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkp WzFdIEFTIG5hbWUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgp JywgZGF0YSkpWzFdIEFTIG5hbWUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4 dCgpJywgZGF0YSkpWzFdIEFTIG5hbWUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8v dGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG5hbWUpKQorRlJPTSB4bWx0ZXN0IFdIRVJF IGlkID0gNDI7CisgeG1sY2FzdCB8IHBnX3R5cGVvZiB8ICAgICAgIHhtbGNhc3QgICAgICAg fCBwZ190eXBlb2YgfCAgICB4bWxjYXN0ICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBmb28gYmFyIHwgbmFtZSAgICAgIHwgICAgICAgIGZvbyBi YXIgICAgICB8IG5hbWUgICAgICB8IGZvbyAmIDwiYmFyIj4gfCBuYW1lCisoMSByb3cpCisK K1NFTEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0g QVMgYnBjaGFyKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScs IGRhdGEpKVsxXSBBUyBicGNoYXIpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4 dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYnBjaGFyKSksCisgIHhtbGNhc3QoKHhw YXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBicGNoYXIpLCBwZ190eXBlb2Yo eG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hhcikp CitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4bWxjYXN0IHwgcGdfdHlwZW9mIHwg ICAgICAgeG1sY2FzdCAgICAgICB8IHBnX3R5cGVvZiB8ICAgIHhtbGNhc3QgICAgfCBwZ190 eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIGZvbyBiYXIgfCBjaGFy YWN0ZXIgfCAgICAgICAgZm9vIGJhciAgICAgIHwgY2hhcmFjdGVyIHwgZm9vICYgPCJiYXIi PiB8IGNoYXJhY3RlcgorKDEgcm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8v ZGVjaW1hbDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMpLCBwZ190eXBlb2YoeG1s Y2FzdCgoeHBhdGgoJy8vZGVjaW1hbDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMp KSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDIvdGV4dCgpJywgZGF0YSkpWzFdIEFT IG51bWVyaWMpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDIvdGV4dCgp JywgZGF0YSkpWzFdIEFTIG51bWVyaWMpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1h bDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMpLCBwZ190eXBlb2YoeG1sY2FzdCgo eHBhdGgoJy8vZGVjaW1hbDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMpKQorRlJP TSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgICAgIHhtbGNhc3QgICAgICB8IHBnX3R5cGVv ZiB8ICAgICB4bWxjYXN0ICAgICAgfCBwZ190eXBlb2YgfCAgICAgIHhtbGNhc3QgICAgICB8 IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQor IDQyLjczMTIzNDU2Nzg5MTAgfCBudW1lcmljICAgfCA0Mi43MzEyMzQ1Njc4OTEwIHwgbnVt ZXJpYyAgIHwgLTQyLjczMTIzNDU2Nzg5MTAgfCBudW1lcmljCisoMSByb3cpCisKK1NFTEVD VAorICB4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMg ZG91YmxlIHByZWNpc2lvbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFs MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbikpLAorICB4bWxjYXN0 KCh4cGF0aCgnLy9kZWNpbWFsMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNp c2lvbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMi90ZXh0KCknLCBk YXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9k ZWNpbWFsMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbiksIHBnX3R5 cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMg ZG91YmxlIHByZWNpc2lvbikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyAgICAg eG1sY2FzdCAgICAgfCAgICBwZ190eXBlb2YgICAgIHwgICAgIHhtbGNhc3QgICAgIHwgICAg cGdfdHlwZW9mICAgICB8ICAgICB4bWxjYXN0ICAgICAgfCAgICBwZ190eXBlb2YgICAgIAor LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tCisgNDIuNzMxMjM0NTY3ODkxIHwgZG91YmxlIHByZWNpc2lvbiB8IDQyLjczMTIzNDU2 Nzg5MSB8IGRvdWJsZSBwcmVjaXNpb24gfCAtNDIuNzMxMjM0NTY3ODkxIHwgZG91YmxlIHBy ZWNpc2lvbgorKDEgcm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdl cjEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0 aCgnLy9pbnRlZ2VyMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgaW50KSksCisgIHhtbGNhc3Qo KHhwYXRoKCcvL2ludGVnZXIyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnQpLCBwZ190eXBl b2YoeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdlcjIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGlu dCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9pbnRlZ2VyMy90ZXh0KCknLCBkYXRhKSlbMV0g QVMgaW50KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2ludGVnZXIzL3RleHQoKScs IGRhdGEpKVsxXSBBUyBpbnQpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1s Y2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdf dHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyAgICAgIDQyIHwgaW50ZWdlciAgIHwgICAgICA0MiB8 IGludGVnZXIgICB8ICAgICAtNDIgfCBpbnRlZ2VyCisoMSByb3cpCisKK1NFTEVDVAorICB4 bWxjYXN0KCh4cGF0aCgnLy9sb25nMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYmlnaW50KSwg cGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2xvbmcxL3RleHQoKScsIGRhdGEpKVsxXSBB UyBiaWdpbnQpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vbG9uZzIvdGV4dCgpJywgZGF0YSkp WzFdIEFTIGJpZ2ludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9sb25nMi90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgYmlnaW50KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2xvbmcz L3RleHQoKScsIGRhdGEpKVsxXSBBUyBiaWdpbnQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBh dGgoJy8vbG9uZzMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJpZ2ludCkpCitGUk9NIHhtbHRl c3QgV0hFUkUgaWQgPSA0MjsKKyAgICAgeG1sY2FzdCAgICAgIHwgcGdfdHlwZW9mIHwgICAg IHhtbGNhc3QgICAgICB8IHBnX3R5cGVvZiB8ICAgICAgeG1sY2FzdCAgICAgIHwgcGdfdHlw ZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgNDI3MzUz NTQyMDE2MjAyMSB8IGJpZ2ludCAgICB8IDQyNzM1MzU0MjAxNjIwMjEgfCBiaWdpbnQgICAg fCAtNDI3MzUzNTQyMDE2MjAyMSB8IGJpZ2ludAorKDEgcm93KQorCitTRUxFQ1QKKyAgeG1s Y2FzdCgoeHBhdGgoJy8vYm9vbDEvQGF0dCcsIGRhdGEpKVsxXSBBUyBib29sZWFuKSwgcGdf dHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wxL0BhdHQnLCBkYXRhKSlbMV0gQVMgYm9v bGVhbikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9ib29sMi9AYXR0JywgZGF0YSkpWzFdIEFT IGJvb2xlYW4pLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vYm9vbDEvQGF0dCcsIGRh dGEpKVsxXSBBUyBib29sZWFuKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworIHht bGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQorIHQgICAgICAgfCBib29sZWFuICAg fCBmICAgICAgIHwgYm9vbGVhbgorKDEgcm93KQorCitTRUxFQ1QgeG1sY2FzdCgoeHBhdGgo Jy8vZW1wdHkvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpLCBwZ190eXBlb2YoeG1sY2Fz dCgoeHBhdGgoJy8vZW1wdHkvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpKQorRlJPTSB4 bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1sY2FzdCB8IHBnX3R5cGVvZiAKKy0tLS0tLS0t LSstLS0tLS0tLS0tLQorICAgICAgICAgfCB0ZXh0CisoMSByb3cpCisKKy0tIHhtbGNhc3Qg dGVzdHMgZm9yICJYTUwgdG8gWE1MIiBleHByZXNzaW9ucworU0VMRUNUCisgIHhtbGNhc3Qo KHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBBUyB4bWwpLCBwZ190eXBlb2Yo eG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHhtbCkpLAor ICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgeG1sKSwg cGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsxXSBB UyB4bWwpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFd IEFTIHhtbCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBk YXRhKSlbMV0gQVMgeG1sKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworIHhtbGNh c3QgfCBwZ190eXBlb2YgfCAgICAgICB4bWxjYXN0ICAgICAgIHwgcGdfdHlwZW9mIHwgICAg ICAgICB4bWxjYXN0ICAgICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBmb28gYmFyIHwgeG1sICAgICAgIHwgICAgICAgIGZv byBiYXIgICAgICB8IHhtbCAgICAgICB8IGZvbyAmYW1wOyAmbHQ7ImJhciImZ3Q7IHwgeG1s CisoMSByb3cpCisKKy0tIHhtbGNhc3QgdGVzdHMgZm9yICJub24tWE1MIHRvIFhNTCIgZXhw cmVzc2lvbnMKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KE5VTEwgQVMg eG1sKSB0KGopOworIGogfCBwZ190eXBlb2YgCistLS0rLS0tLS0tLS0tLS0KKyAgIHwgeG1s CisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCdmb28n IEFTIHhtbCkgdChqKTsKKyAgaiAgfCBwZ190eXBlb2YgCistLS0tLSstLS0tLS0tLS0tLQor IGZvbyB8IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1s Y2FzdCgnJzo6dGV4dCBBUyB4bWwpIHQoaik7CisgaiB8IHBnX3R5cGVvZiAKKy0tLSstLS0t LS0tLS0tLQorICAgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBG Uk9NIHhtbGNhc3QoTlVMTDo6dGV4dCBBUyB4bWwpIHQoaik7CisgaiB8IHBnX3R5cGVvZiAK Ky0tLSstLS0tLS0tLS0tLQorICAgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5 cGVvZihqKSBGUk9NIHhtbGNhc3QoJyc6OnhtbCBBUyB0ZXh0KSB0KGopOworIGogfCBwZ190 eXBlb2YgCistLS0rLS0tLS0tLS0tLS0KKyAgIHwgdGV4dAorKDEgcm93KQorCitTRUxFQ1Qg aiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdChOVUxMOjp4bWwgQVMgdGV4dCkgdChqKTsK KyBqIHwgcGdfdHlwZW9mIAorLS0tKy0tLS0tLS0tLS0tCisgICB8IHRleHQKKygxIHJvdykK KworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoJ2ZvbyAmIDwiYmFyIj4n Ojp0ZXh0IEFTIHhtbCkgdChqKTsKKyAgICAgICAgICAgICAgICAgaiAgICAgICAgICAgICAg ICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIGZvbyAmYW1wOyAmbHQ7JnF1b3Q7YmFyJnF1b3Q7Jmd0OyB8IHhtbAor KDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnZm9vICYg PCJiYXIiPic6OnZhcmNoYXIgQVMgeG1sKSB0KGopOworICAgICAgICAgICAgICAgICBqICAg ICAgICAgICAgICAgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsm Z3Q7IHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxj YXN0KCdmb28gJiA8ImJhciI+Jzo6bmFtZSBBUyB4bWwpIHQoaik7CisgICAgICAgICAgICAg ICAgIGogICAgICAgICAgICAgICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBmb28gJmFtcDsgJmx0OyZxdW90O2Jh ciZxdW90OyZndDsgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBG Uk9NIHhtbGNhc3QoeG1sdGV4dChFJ2ZvbyAmIDwiYmFyIj5ccicpIEFTIHRleHQpIHQoaik7 CisgICAgICAgIGogICAgICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBmb28gJiA8ImJhciI+XHIgfCB0ZXh0CisoMSByb3cpCisKK1NFTEVDVCBq LCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KHhtbGNhc3QoRSdmb28gJiA8ImJhciI+XHIn IEFTIHhtbCkgQVMgdGV4dCkgdChqKTsKKyAgICAgICAgaiAgICAgICAgfCBwZ190eXBlb2Yg CistLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIGZvbyAmIDwiYmFyIj5cciB8IHRl eHQKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QodG9f ZGF0ZSgnMjkvMDUvMjAyNCcsJ2RkL21tL3l5eXknKSBBUyB4bWwpIHQoaik7CisgICAgIGog ICAgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIDIwMjQtMDUt MjkgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6dGltZXN0YW1wIHdpdGggdGlt ZSB6b25lIEFTIHhtbCkgdChqKTsKKyAgICAgICAgICAgICAgICBqICAgICAgICAgICAgICAg ICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyAyMDI0LTA1LTI5VDAzOjA0OjEwLjcwMzU4NS0wNzowMCB8IHhtbAorKDEg cm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnMjAyNC0wNS0y OSAxMjowNDoxMC43MDM1ODUrMDInOjp0aW1lc3RhbXAgd2l0aG91dCB0aW1lIHpvbmUgQVMg eG1sKSB0KGopOworICAgICAgICAgICAgIGogICAgICAgICAgICAgIHwgcGdfdHlwZW9mIAor LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIDIwMjQtMDUtMjlU MTI6MDQ6MTAuNzAzNTg1IHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2Yo aikgRlJPTSB4bWxjYXN0KCcxIHllYXIgMiBtb250aHMgMyBkYXlzIDQgaG91cnMgNSBtaW51 dGVzIDYgc2Vjb25kcyc6OmludGVydmFsIEFTIHhtbCkgdChqKTsKKyAgICAgICBqICAgICAg ICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBQMVkyTTNE VDRINU02UyB8IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00g eG1sY2FzdCg0MjczNTM1NDIgQVMgeG1sKSB0KGopOworICAgICBqICAgICB8IHBnX3R5cGVv ZiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgNDI3MzUzNTQyIHwgeG1sCisoMSByb3cp CisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQyNzM1MzU0MjAxNjIw MjEgQVMgeG1sKSB0KGopOworICAgICAgICBqICAgICAgICAgfCBwZ190eXBlb2YgCistLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyA0MjczNTM1NDIwMTYyMDIxIHwgeG1sCiso MSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQyLjAwNzMx MjM0NTY3ODkxMCBBUyB4bWwpIHQoaik7CisgICAgICAgICBqICAgICAgICAgIHwgcGdfdHlw ZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyA0Mi4wMDczMTIzNDU2 Nzg5MTAgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHht bGNhc3QoNDIuMDA3MzEyMzQ1Njc4OTEwOjpkb3VibGUgcHJlY2lzaW9uIEFTIHhtbCkgdChq KTsKKyAgICAgICAgIGogICAgICAgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyA0Mi4wMDczMTIzNDU2Nzg5MSB8IHhtbAorKDEgcm93KQorCitT RUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCh0cnVlIEFTIHhtbCkgdChqKTsK KyAgaiAgIHwgcGdfdHlwZW9mIAorLS0tLS0tKy0tLS0tLS0tLS0tCisgdHJ1ZSB8IHhtbAor KDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdChmYWxzZSBB UyB4bWwpIHQoaik7CisgICBqICAgfCBwZ190eXBlb2YgCistLS0tLS0tKy0tLS0tLS0tLS0t CisgZmFsc2UgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9N IHhtbGNhc3QoNDIgPSA3MyBBUyB4bWwpIHQoaik7CisgICBqICAgfCBwZ190eXBlb2YgCist LS0tLS0tKy0tLS0tLS0tLS0tCisgZmFsc2UgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGos IHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoNDIgPD4gNzMgQVMgeG1sKSB0KGopOworICBq ICAgfCBwZ190eXBlb2YgCistLS0tLS0rLS0tLS0tLS0tLS0KKyB0cnVlIHwgeG1sCisoMSBy b3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcxMToxMToxMS41 Jzo6dGltZSBBUyB4bWwpIHQoaik7CisgICAgIGogICAgICB8IHBnX3R5cGVvZiAKKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIDExOjExOjExLjUgfCB4bWwKKygxIHJvdykKKworU0VM RUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoJzExOjExOjExLjUnOjp0aW1lIHdp dGggdGltZSB6b25lIEFTIHhtbCkgdChqKTsKKyAgICAgICBqICAgICAgIHwgcGdfdHlwZW9m IAorLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgMTE6MTE6MTEuNS0wOCB8IHhtbAor KDEgcm93KQorCistLSBDb252ZXJ0IGFuIFhNTCBzdHJpbmcgdG8gYnl0ZWEgYW5kIGJhY2sg dG8geG1sCitTRUxFQ1QgeG1sY2FzdChjb252ZXJ0X2Zyb20oeG1sY2FzdCgnJmx0OyZxdW90 O2ZvbyZhbXA7YmFyJnF1b3Q7Jmd0Oyc6OnhtbCBBUyBieXRlYSksJ1VURjgnKTo6eG1sIEFT IHRleHQpOworICAgeG1sY2FzdCAgIAorLS0tLS0tLS0tLS0tLQorIDwiZm9vJmJhciI+Ciso MSByb3cpCisKK1NFVCB4bWxiaW5hcnkgVE8gaGV4OworU0VMRUNUIHhtbGNhc3QoRSdcXHhE RUFEQkVFRic6OmJ5dGVhIEFTIHhtbCk7CisgeG1sY2FzdCAgCistLS0tLS0tLS0tCisgREVB REJFRUYKKygxIHJvdykKKworU0VUIHhtbGJpbmFyeSBUTyBiYXNlNjQ7CitTRUxFQ1QgeG1s Y2FzdChFJ1xceERFQURCRUVGJzo6Ynl0ZWEgQVMgeG1sKTsKKyB4bWxjYXN0ICAKKy0tLS0t LS0tLS0KKyAzcTIrN3c9PQorKDEgcm93KQorCistLSBUaGUgQlkgUkVGIGFuZCBCWSBWQUxV RSBjbGF1c2VzIGFyZSBhY2NlcHRlZCBidXQgaWdub3JlZC4KKy0tIFRoaXMgY2hlY2tzIGlm IHRoZSByZXN1bHRzIGFyZSBpbmRlZWQgdGhlIHNhbWUgYXMgd2l0aG91dCB0aGUgY2xhdXNl cy4KK1NFTEVDVAorICB4bWxjYXN0KCdmb28nIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCdm b28nIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KCdmb28nIEFTIHhtbCk6OnRl eHQgPSB4bWxjYXN0KCdmb28nIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3Qo J2Zvbyc6OnhtbCBBUyB0ZXh0KSA9IHhtbGNhc3QoJ2Zvbyc6OnhtbCBBUyB0ZXh0IEJZIFJF RiksCisgIHhtbGNhc3QoJ2Zvbyc6OnhtbCBBUyB0ZXh0KSA9IHhtbGNhc3QoJ2Zvbyc6Onht bCBBUyB0ZXh0IEJZIFZBTFVFKTsKKyA/Y29sdW1uPyB8ID9jb2x1bW4/IHwgP2NvbHVtbj8g fCA/Y29sdW1uPyAKKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0t LS0KKyB0ICAgICAgICB8IHQgICAgICAgIHwgdCAgICAgICAgfCB0CisoMSByb3cpCisKK1NF TEVDVAorICB4bWxjYXN0KDQyIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KDQyIEFTIHhtbCBC WSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KDQyIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KDQy IEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJzQyJzo6eG1sIEFTIGludCkg PSB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnQgQlkgUkVGKSwKKyAgeG1sY2FzdCgnNDInOjp4 bWwgQVMgaW50KSA9IHhtbGNhc3QoJzQyJzo6eG1sIEFTIGludCBCWSBWQUxVRSk7CisgP2Nv bHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/IHwgP2NvbHVtbj8gCistLS0tLS0tLS0tKy0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgdCAgICAgICAgfCB0ICAgICAgICB8 IHQgICAgICAgIHwgdAorKDEgcm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCg0Mi43MyBBUyB4 bWwpOjp0ZXh0ID0geG1sY2FzdCg0Mi43MyBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1s Y2FzdCg0Mi43MyBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCg0Mi43MyBBUyB4bWwgQlkgVkFM VUUpOjp0ZXh0LAorICB4bWxjYXN0KCc0Mi43Myc6OnhtbCBBUyBudW1lcmljKSA9IHhtbGNh c3QoJzQyLjczJzo6eG1sIEFTIG51bWVyaWMgQlkgUkVGKSwKKyAgeG1sY2FzdCgnNDIuNzMn Ojp4bWwgQVMgbnVtZXJpYykgPSB4bWxjYXN0KCc0Mi43Myc6OnhtbCBBUyBudW1lcmljIEJZ IFZBTFVFKTsKKyA/Y29sdW1uPyB8ID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29sdW1uPyAK Ky0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyB0ICAgICAg ICB8IHQgICAgICAgIHwgdCAgICAgICAgfCB0CisoMSByb3cpCisKK1NFTEVDVAorICB4bWxj YXN0KCcyMDI0LTA4LTE0Jzo6ZGF0ZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMjAyNC0w OC0xNCc6OmRhdGUgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzIwMjQtMDgt MTQnOjpkYXRlIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6ZGF0ZSBB UyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6eG1sIEFT IGRhdGUpID0geG1sY2FzdCgnMjAyNC0wOC0xNCc6OnhtbCBBUyBkYXRlIEJZIFJFRiksCisg IHhtbGNhc3QoJzIwMjQtMDgtMTQnOjp4bWwgQVMgZGF0ZSkgPSB4bWxjYXN0KCcyMDI0LTA4 LTE0Jzo6eG1sIEFTIGRhdGUgQlkgVkFMVUUpOworID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/ Y29sdW1uPyB8ID9jb2x1bW4/IAorLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tLQorIHQgICAgICAgIHwgdCAgICAgICAgfCB0ICAgICAgICB8IHQKKygxIHJv dykKKworU0VMRUNUCisgIHhtbGNhc3QoJzEyOjMwOjQ1Jzo6dGltZSB3aXRob3V0IHRpbWUg em9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMTI6MzA6NDUnOjp0aW1lIHdpdGhvdXQg dGltZSB6b25lIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KCcxMjozMDo0NSc6 OnRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoJzEyOjMw OjQ1Jzo6dGltZSB3aXRob3V0IHRpbWUgem9uZSBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAor ICB4bWxjYXN0KCcxMjozMDo0NSc6OnhtbCBBUyB0aW1lIHdpdGhvdXQgdGltZSB6b25lKSA9 IHhtbGNhc3QoJzEyOjMwOjQ1Jzo6eG1sIEFTIHRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQlkg UkVGKSwKKyAgeG1sY2FzdCgnMTI6MzA6NDUnOjp4bWwgQVMgdGltZSB3aXRob3V0IHRpbWUg em9uZSkgPSB4bWxjYXN0KCcxMjozMDo0NSc6OnhtbCBBUyB0aW1lIHdpdGhvdXQgdGltZSB6 b25lIEJZIFZBTFVFKTsKKyA/Y29sdW1uPyB8ID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29s dW1uPyAKKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyB0 ICAgICAgICB8IHQgICAgICAgIHwgdCAgICAgICAgfCB0CisoMSByb3cpCisKK1NFTEVDVAor ICB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgeG1s KTo6dGV4dCA9IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6dGltZSB3aXRoIHRpbWUgem9u ZSBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp0 aW1lIHdpdGggdGltZSB6b25lIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcwOTozMDoxMCsw NjowMCc6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAg eG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSkg PSB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lIHdpdGggdGltZSB6b25l IEJZIFJFRiksCisgIHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUgd2l0 aCB0aW1lIHpvbmUpID0geG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3 aXRoIHRpbWUgem9uZSBCWSBWQUxVRSk7CisgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1 bW4/IHwgP2NvbHVtbj8gCistLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0t LS0tLS0tCisgdCAgICAgICAgfCB0ICAgICAgICB8IHQgICAgICAgIHwgdAorKDEgcm93KQor CitTRUxFQ1QKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMCAwOTozMDoxMCswNjowMCc6OnRpbWVz dGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMjAwMi0wNS0z MCAwOTozMDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwgQlkg UkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMCAwOTozMDoxMCswNjowMCc6OnRp bWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMjAwMi0w NS0zMCAwOTozMDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwg QlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMwOjEwKzA2OjAw Jzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgPSB4bWxjYXN0KCcyMDAyLTA1 LTMwVDA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBC WSBSRUYpLAorICB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMwOjEwKzA2OjAwJzo6eG1sIEFT IHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgPSB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMw OjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBCWSBWQUxVRSk7 CisgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/IHwgP2NvbHVtbj8gCistLS0tLS0t LS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgdCAgICAgICAgfCB0ICAg ICAgICB8IHQgICAgICAgIHwgdAorKDEgcm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgnMSB5 ZWFyIDIgbW9ucyc6OmludGVydmFsIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcxIHllYXIg MiBtb25zJzo6aW50ZXJ2YWwgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzEg eWVhciAyIG1vbnMnOjppbnRlcnZhbCBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMSB5ZWFy IDIgbW9ucyc6OmludGVydmFsIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3Qo JzEgeWVhciAyIG1vbnMnOjp4bWwgQVMgaW50ZXJ2YWwpID0geG1sY2FzdCgnMSB5ZWFyIDIg bW9ucyc6OnhtbCBBUyBpbnRlcnZhbCBCWSBSRUYpLAorICB4bWxjYXN0KCcxIHllYXIgMiBt b25zJzo6eG1sIEFTIGludGVydmFsKSA9IHhtbGNhc3QoJzEgeWVhciAyIG1vbnMnOjp4bWwg QVMgaW50ZXJ2YWwgQlkgVkFMVUUpOworID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29sdW1u PyB8ID9jb2x1bW4/IAorLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0t LS0tLQorIHQgICAgICAgIHwgdCAgICAgICAgfCB0ICAgICAgICB8IHQKKygxIHJvdykKKwor Q1JFQVRFIFZJRVcgdmlld194bWxjYXN0X3RvX3htbCBBUworU0VMRUNUCisgIHhtbGNhc3Qo TlVMTCBBUyB4bWwpIEFTIGMxLAorICB4bWxjYXN0KCdmb28nIEFTIHhtbCkgQVMgYzIsCisg IHhtbGNhc3QoJyc6OnRleHQgQVMgeG1sKSBBUyBjMywKKyAgeG1sY2FzdChOVUxMOjp0ZXh0 IEFTIHhtbCkgQVMgYzQsCisgIHhtbGNhc3QoJyc6OnhtbCBBUyB0ZXh0KSBBUyBjNSwKKyAg eG1sY2FzdChOVUxMOjp4bWwgQVMgdGV4dCkgYzYsCisgIHhtbGNhc3QoJ2ZvbyAmIDwiYmFy Ij4nOjp0ZXh0IEFTIHhtbCkgQVMgYzcsCisgIHhtbGNhc3QoJ2ZvbyAmIDwiYmFyIj4nOjp2 YXJjaGFyIEFTIHhtbCkgQVMgYzgsCisgIHhtbGNhc3QoJ2ZvbyAmIDwiYmFyIj4nOjpuYW1l IEFTIHhtbCkgQVMgYzksCisgIHhtbGNhc3QoeG1sdGV4dChFJ2ZvbyAmIDwiYmFyIj5ccicp IEFTIHRleHQpIEFTIGMxMCwKKyAgeG1sY2FzdCh4bWxjYXN0KEUnZm9vICYgPCJiYXIiPlxy JyBBUyB4bWwpIEFTIHRleHQpIEFTIGMxMSwKKyAgeG1sY2FzdCh0b19kYXRlKCcyOS8wNS8y MDI0JywnZGQvbW0veXl5eScpIEFTIHhtbCkgQVMgYzEyLAorICB4bWxjYXN0KCcyMDI0LTA1 LTI5IDEyOjA0OjEwLjcwMzU4NSswMic6OnRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4 bWwpIEFTIGMxMywKKyAgeG1sY2FzdCgnMjAyNC0wNS0yOSAxMjowNDoxMC43MDM1ODUrMDIn Ojp0aW1lc3RhbXAgd2l0aG91dCB0aW1lIHpvbmUgQVMgeG1sKSBBUyBjMTQsCisgIHhtbGNh c3QoJzEgeWVhciAyIG1vbnRocyAzIGRheXMgNCBob3VycyA1IG1pbnV0ZXMgNiBzZWNvbmRz Jzo6aW50ZXJ2YWwgQVMgeG1sKSBBUyBjMTUsCisgIHhtbGNhc3QoNDI3MzUzNTQyIEFTIHht bCkgQVMgYzE2LAorICB4bWxjYXN0KDQyNzM1MzU0MjAxNjIwMjEgQVMgeG1sKSBBUyBjMTcs CisgIHhtbGNhc3QoNDIuMDA3MzEyMzQ1Njc4OTEwIEFTIHhtbCkgQVMgYzE4LAorICB4bWxj YXN0KDQyLjAwNzMxMjM0NTY3ODkxMDo6ZG91YmxlIHByZWNpc2lvbiBBUyB4bWwpIEFTIGMx OSwKKyAgeG1sY2FzdCh0cnVlIEFTIHhtbCkgQVMgYzIwLAorICB4bWxjYXN0KGZhbHNlIEFT IHhtbCkgQVMgYzIxLAorICB4bWxjYXN0KDQyID0gNzMgQVMgeG1sKSBBUyBjMjIsCisgIHht bGNhc3QoNDIgPD4gNzMgQVMgeG1sKSBBUyBjMjMsCisgIHhtbGNhc3QoJzExOjExOjExLjUn Ojp0aW1lIEFTIHhtbCkgQVMgYzI0LAorICB4bWxjYXN0KCcxMToxMToxMS41Jzo6dGltZSB3 aXRoIHRpbWUgem9uZSBBUyB4bWwpIEFTIGMyNTsKK1xzdiB2aWV3X3htbGNhc3RfdG9feG1s CitDUkVBVEUgT1IgUkVQTEFDRSBWSUVXIHB1YmxpYy52aWV3X3htbGNhc3RfdG9feG1sIEFT CisgU0VMRUNUIFhNTENBU1QoTlVMTDo6dGV4dCBBUyB4bWwpOjp4bWwgQVMgYzEsCisgICAg WE1MQ0FTVCgnZm9vJzo6dGV4dCBBUyB4bWwpOjp4bWwgQVMgYzIsCisgICAgWE1MQ0FTVCgn Jzo6dGV4dCBBUyB4bWwpOjp4bWwgQVMgYzMsCisgICAgWE1MQ0FTVChOVUxMOjp0ZXh0IEFT IHhtbCk6OnhtbCBBUyBjNCwKKyAgICBYTUxDQVNUKCcnOjp4bWwgQVMgdGV4dCk6OnRleHQg QVMgYzUsCisgICAgWE1MQ0FTVChOVUxMOjp4bWwgQVMgdGV4dCk6OnRleHQgQVMgYzYsCisg ICAgWE1MQ0FTVCgnZm9vICYgPCJiYXIiPic6OnRleHQgQVMgeG1sKTo6eG1sIEFTIGM3LAor ICAgIFhNTENBU1QoJ2ZvbyAmIDwiYmFyIj4nOjpjaGFyYWN0ZXIgdmFyeWluZyBBUyB4bWwp Ojp4bWwgQVMgYzgsCisgICAgWE1MQ0FTVCgnZm9vICYgPCJiYXIiPic6Om5hbWU6OnRleHQg QVMgeG1sKTo6eG1sIEFTIGM5LAorICAgIFhNTENBU1QoeG1sdGV4dCgnZm9vICYgPCJiYXIi Pg0nOjp0ZXh0KSBBUyB0ZXh0KTo6dGV4dCBBUyBjMTAsCisgICAgWE1MQ0FTVChYTUxDQVNU KCdmb28gJiA8ImJhciI+DSc6OnRleHQgQVMgeG1sKTo6eG1sIEFTIHRleHQpOjp0ZXh0IEFT IGMxMSwKKyAgICBYTUxDQVNUKHRvX2RhdGUoJzI5LzA1LzIwMjQnOjp0ZXh0LCAnZGQvbW0v eXl5eSc6OnRleHQpIEFTIHhtbCk6OnhtbCBBUyBjMTIsCisgICAgWE1MQ0FTVCgnV2VkIE1h eSAyOSAwMzowNDoxMC43MDM1ODUgMjAyNCBQRFQnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpv bmUgQVMgeG1sKTo6eG1sIEFTIGMxMywKKyAgICBYTUxDQVNUKCdXZWQgTWF5IDI5IDEyOjA0 OjEwLjcwMzU4NSAyMDI0Jzo6dGltZXN0YW1wIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCk6 OnhtbCBBUyBjMTQsCisgICAgWE1MQ0FTVCgnQCAxIHllYXIgMiBtb25zIDMgZGF5cyA0IGhv dXJzIDUgbWlucyA2IHNlY3MnOjppbnRlcnZhbCBBUyB4bWwpOjp4bWwgQVMgYzE1LAorICAg IFhNTENBU1QoNDI3MzUzNTQyOjp0ZXh0IEFTIHhtbCk6OnhtbCBBUyBjMTYsCisgICAgWE1M Q0FTVCgnNDI3MzUzNTQyMDE2MjAyMSc6OmJpZ2ludDo6dGV4dCBBUyB4bWwpOjp4bWwgQVMg YzE3LAorICAgIFhNTENBU1QoNDIuMDA3MzEyMzQ1Njc4OTEwOjp0ZXh0IEFTIHhtbCk6Onht bCBBUyBjMTgsCisgICAgWE1MQ0FTVCg0Mi4wMDczMTIzNDU2Nzg5MTA6OmRvdWJsZSBwcmVj aXNpb246OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMxOSwKKyAgICBYTUxDQVNUKHRydWUgQVMg eG1sKTo6eG1sIEFTIGMyMCwKKyAgICBYTUxDQVNUKGZhbHNlIEFTIHhtbCk6OnhtbCBBUyBj MjEsCisgICAgWE1MQ0FTVCg0MiA9IDczIEFTIHhtbCk6OnhtbCBBUyBjMjIsCisgICAgWE1M Q0FTVCg0MiA8PiA3MyBBUyB4bWwpOjp4bWwgQVMgYzIzLAorICAgIFhNTENBU1QoJzExOjEx OjExLjUnOjp0aW1lIHdpdGhvdXQgdGltZSB6b25lOjp0ZXh0IEFTIHhtbCk6OnhtbCBBUyBj MjQsCisgICAgWE1MQ0FTVCgnMTE6MTE6MTEuNS0wOCc6OnRpbWUgd2l0aCB0aW1lIHpvbmU6 OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMyNQorU0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3Rf dG9feG1sOworIGMxIHwgYzIgIHwgYzMgfCBjNCB8IGM1IHwgYzYgfCAgICAgICAgICAgICAg ICBjNyAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICBjOCAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICBjOSAgICAgICAgICAgICAgICAgfCAgICAgICBjMTAgICAg ICAgfCAgICAgICBjMTEgICAgICAgfCAgICBjMTIgICAgIHwgICAgICAgICAgICAgICBjMTMg ICAgICAgICAgICAgICAgfCAgICAgICAgICAgIGMxNCAgICAgICAgICAgICB8ICAgICAgYzE1 ICAgICAgIHwgICAgYzE2ICAgIHwgICAgICAgYzE3ICAgICAgICB8ICAgICAgICBjMTggICAg ICAgICB8ICAgICAgICBjMTkgICAgICAgIHwgYzIwICB8ICBjMjEgIHwgIGMyMiAgfCBjMjMg IHwgICAgYzI0ICAgICB8ICAgICAgYzI1ICAgICAgCistLS0tKy0tLS0tKy0tLS0rLS0tLSst LS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LSstLS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0K KyAgICB8IGZvbyB8ICAgIHwgICAgfCAgICB8ICAgIHwgZm9vICZhbXA7ICZsdDsmcXVvdDti YXImcXVvdDsmZ3Q7IHwgZm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7IHwgZm9v ICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7IHwgZm9vICYgPCJiYXIiPlxyIHwgZm9v ICYgPCJiYXIiPlxyIHwgMjAyNC0wNS0yOSB8IDIwMjQtMDUtMjlUMDM6MDQ6MTAuNzAzNTg1 LTA3OjAwIHwgMjAyNC0wNS0yOVQxMjowNDoxMC43MDM1ODUgfCBQMVkyTTNEVDRINU02UyB8 IDQyNzM1MzU0MiB8IDQyNzM1MzU0MjAxNjIwMjEgfCA0Mi4wMDczMTIzNDU2Nzg5MTAgfCA0 Mi4wMDczMTIzNDU2Nzg5MSB8IHRydWUgfCBmYWxzZSB8IGZhbHNlIHwgdHJ1ZSB8IDExOjEx OjExLjUgfCAxMToxMToxMS41LTA4CisoMSByb3cpCisKK0NSRUFURSBWSUVXIHZpZXdfeG1s Y2FzdF9mcm9tX3htbCBBUworU0VMRUNUCisgIHhtbGNhc3QoJ1AxWTJNM0RUNEg1TTZTJzo6 eG1sIEFTIGludGVydmFsKSBBUyBjMSwKKyAgeG1sY2FzdCgnMSB5ZWFyIDIgbW9ucyAzIGRh eXMgNCBob3VycyA1IG1pbnV0ZXMgNiBzZWNvbmRzJzo6eG1sIEFTIGludGVydmFsKSBBUyBj MiwKKyAgeG1sY2FzdCgnMjAwMi0wOS0yNCc6OnhtbCBBUyBkYXRlKSBBUyBjMywKKyAgeG1s Y2FzdCgnMjAwMi0wOS0yNCswNjowMCc6OnhtbCBBUyBkYXRlKSBBUyBjNCwKKyAgeG1sY2Fz dCgnMDk6MzA6MTBaJzo6eG1sIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpIEFTIGM1LAorICB4 bWxjYXN0KCcwOTozMDoxMC0wNjowMCc6OnhtbCBBUyB0aW1lIHdpdGggdGltZSB6b25lKSBB UyBjNiwKKyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRp bWUgem9uZSkgQVMgYzcsCisgIHhtbGNhc3QoJzIwMDItMDUtMzBUMDk6MzA6MTBaJzo6eG1s IEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgQVMgYzgsCisgIHhtbGNhc3QoJzIwMDIt MDUtMzBUMDk6MzA6MTAtMDY6MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6b25l KSBBUyBjOSwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBB UyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUpIEFTIGMxMCwKKyAgeG1sY2FzdCgnZm9vIGJh cic6OnhtbCBBUyB0ZXh0KSBBUyBjMTEsCisgIHhtbGNhc3QoJyAgICAgICBmb28gYmFyICAg ICAnOjp4bWwgQVMgdmFyY2hhcikgQVMgYzEyLAorICB4bWxjYXN0KCdmb28gJmFtcDsgJmx0 OyZxdW90O2JhciZxdW90OyZndDsnOjp4bWwgQVMgdGV4dCkgQVMgYzEzLAorICB4bWxjYXN0 KCc0Mi43MzEyMzQ1Njc4OTEwJzo6eG1sIEFTIG51bWVyaWMpIEFTIGMxNCwKKyAgeG1sY2Fz dCgnKzQyLjczMTIzNDU2Nzg5MTAnOjp4bWwgQVMgbnVtZXJpYykgQVMgYzE1LAorICB4bWxj YXN0KCctNDIuNzMxMjM0NTY3ODkxMCc6OnhtbCBBUyBudW1lcmljKSBBUyBjMTYsCisgIHht bGNhc3QoJzQyJzo6eG1sIEFTIGludGVnZXIpIEFTIGMxNywKKyAgeG1sY2FzdCgnKzQyJzo6 eG1sIEFTIGludGVnZXIpIEFTIGMxOCwKKyAgeG1sY2FzdCgnLTQyJzo6eG1sIEFTIGludGVn ZXIpIEFTIGMxOSwKKyAgeG1sY2FzdCgnNDI3MzUzNTQyMDE2MjAyMSc6OnhtbCBBUyBiaWdp bnQpIEFTIGMyMCwKKyAgeG1sY2FzdCgnKzQyNzM1MzU0MjAxNjIwMjEnOjp4bWwgQVMgYmln aW50KSBBUyBjMjEsCisgIHhtbGNhc3QoJy00MjczNTM1NDIwMTYyMDIxJzo6eG1sIEFTIGJp Z2ludCkgQVMgYzIyLAorICB4bWxjYXN0KCd0cnVlJzo6eG1sIEFTIGJvb2xlYW4pIEFTIGMy MywKKyAgeG1sY2FzdCgnZmFsc2UnOjp4bWwgQVMgYm9vbGVhbikgQVMgYzI0LAorICB4bWxj YXN0KCcnOjp4bWwgQVMgY2hhcmFjdGVyIHZhcnlpbmcpIEFTIGMyNSwKKyAgeG1sY2FzdChO VUxMOjp4bWwgQVMgY2hhcmFjdGVyIHZhcnlpbmcpIEFTIGMyNjsKK1xzdiB2aWV3X3htbGNh c3RfZnJvbV94bWwKK0NSRUFURSBPUiBSRVBMQUNFIFZJRVcgcHVibGljLnZpZXdfeG1sY2Fz dF9mcm9tX3htbCBBUworIFNFTEVDVCBYTUxDQVNUKCdQMVkyTTNEVDRINU02Uyc6OnhtbCBB UyBpbnRlcnZhbCk6OmludGVydmFsIEFTIGMxLAorICAgIFhNTENBU1QoJzEgeWVhciAyIG1v bnMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYgc2Vjb25kcyc6OnhtbCBBUyBpbnRlcnZh bCk6OmludGVydmFsIEFTIGMyLAorICAgIFhNTENBU1QoJzIwMDItMDktMjQnOjp4bWwgQVMg ZGF0ZSk6OmRhdGUgQVMgYzMsCisgICAgWE1MQ0FTVCgnMjAwMi0wOS0yNCswNjowMCc6Onht bCBBUyBkYXRlKTo6ZGF0ZSBBUyBjNCwKKyAgICBYTUxDQVNUKCcwOTozMDoxMFonOjp4bWwg QVMgdGltZSB3aXRoIHRpbWUgem9uZSk6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgYzUsCisg ICAgWE1MQ0FTVCgnMDk6MzA6MTAtMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9u ZSk6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgYzYsCisgICAgWE1MQ0FTVCgnMDk6MzA6MTAr MDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSk6OnRpbWUgd2l0aCB0aW1lIHpv bmUgQVMgYzcsCisgICAgWE1MQ0FTVCgnMjAwMi0wNS0zMFQwOTozMDoxMFonOjp4bWwgQVMg dGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGggdGltZSB6b25lIEFT IGM4LAorICAgIFhNTENBU1QoJzIwMDItMDUtMzBUMDk6MzA6MTAtMDY6MDAnOjp4bWwgQVMg dGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGggdGltZSB6b25lIEFT IGM5LAorICAgIFhNTENBU1QoJzIwMDItMDUtMzBUMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMg dGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGggdGltZSB6b25lIEFT IGMxMCwKKyAgICBYTUxDQVNUKCdmb28gYmFyJzo6eG1sIEFTIHRleHQpOjp0ZXh0IEFTIGMx MSwKKyAgICBYTUxDQVNUKCcgICAgICAgZm9vIGJhciAgICAgJzo6eG1sIEFTIGNoYXJhY3Rl ciB2YXJ5aW5nKTo6Y2hhcmFjdGVyIHZhcnlpbmcgQVMgYzEyLAorICAgIFhNTENBU1QoJ2Zv byAmYW1wOyAmbHQ7JnF1b3Q7YmFyJnF1b3Q7Jmd0Oyc6OnhtbCBBUyB0ZXh0KTo6dGV4dCBB UyBjMTMsCisgICAgWE1MQ0FTVCgnNDIuNzMxMjM0NTY3ODkxMCc6OnhtbCBBUyBudW1lcmlj KTo6bnVtZXJpYyBBUyBjMTQsCisgICAgWE1MQ0FTVCgnKzQyLjczMTIzNDU2Nzg5MTAnOjp4 bWwgQVMgbnVtZXJpYyk6Om51bWVyaWMgQVMgYzE1LAorICAgIFhNTENBU1QoJy00Mi43MzEy MzQ1Njc4OTEwJzo6eG1sIEFTIG51bWVyaWMpOjpudW1lcmljIEFTIGMxNiwKKyAgICBYTUxD QVNUKCc0Mic6OnhtbCBBUyBpbnRlZ2VyKTo6aW50ZWdlciBBUyBjMTcsCisgICAgWE1MQ0FT VCgnKzQyJzo6eG1sIEFTIGludGVnZXIpOjppbnRlZ2VyIEFTIGMxOCwKKyAgICBYTUxDQVNU KCctNDInOjp4bWwgQVMgaW50ZWdlcik6OmludGVnZXIgQVMgYzE5LAorICAgIFhNTENBU1Qo JzQyNzM1MzU0MjAxNjIwMjEnOjp4bWwgQVMgYmlnaW50KTo6YmlnaW50IEFTIGMyMCwKKyAg ICBYTUxDQVNUKCcrNDI3MzUzNTQyMDE2MjAyMSc6OnhtbCBBUyBiaWdpbnQpOjpiaWdpbnQg QVMgYzIxLAorICAgIFhNTENBU1QoJy00MjczNTM1NDIwMTYyMDIxJzo6eG1sIEFTIGJpZ2lu dCk6OmJpZ2ludCBBUyBjMjIsCisgICAgWE1MQ0FTVCgndHJ1ZSc6OnhtbCBBUyBib29sZWFu KTo6Ym9vbGVhbiBBUyBjMjMsCisgICAgWE1MQ0FTVCgnZmFsc2UnOjp4bWwgQVMgYm9vbGVh bik6OmJvb2xlYW4gQVMgYzI0LAorICAgIFhNTENBU1QoJyc6OnhtbCBBUyBjaGFyYWN0ZXIg dmFyeWluZyk6OmNoYXJhY3RlciB2YXJ5aW5nIEFTIGMyNSwKKyAgICBYTUxDQVNUKE5VTEw6 OnhtbCBBUyBjaGFyYWN0ZXIgdmFyeWluZyk6OmNoYXJhY3RlciB2YXJ5aW5nIEFTIGMyNgor U0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3RfZnJvbV94bWw7CisgICAgICAgICAgICAgICAg ICAgICAgYzEgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICBj MiAgICAgICAgICAgICAgICAgICAgICB8ICAgICBjMyAgICAgfCAgICAgYzQgICAgIHwgICAg IGM1ICAgICAgfCAgICAgYzYgICAgICB8ICAgICBjNyAgICAgIHwgICAgICAgICAgICAgIGM4 ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICBjOSAgICAgICAgICAgICAgfCAgICAgICAg ICAgICBjMTAgICAgICAgICAgICAgIHwgICBjMTEgICB8ICAgICAgICAgYzEyICAgICAgICAg fCAgICAgIGMxMyAgICAgIHwgICAgICAgYzE0ICAgICAgICB8ICAgICAgIGMxNSAgICAgICAg fCAgICAgICAgYzE2ICAgICAgICB8IGMxNyB8IGMxOCB8IGMxOSB8ICAgICAgIGMyMCAgICAg ICAgfCAgICAgICBjMjEgICAgICAgIHwgICAgICAgIGMyMiAgICAgICAgfCBjMjMgfCBjMjQg fCBjMjUgfCBjMjYgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0rLS0tLS0rLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tCisgQCAxIHllYXIg MiBtb25zIDMgZGF5cyA0IGhvdXJzIDUgbWlucyA2IHNlY3MgfCBAIDEgeWVhciAyIG1vbnMg MyBkYXlzIDQgaG91cnMgNSBtaW5zIDYgc2VjcyB8IDA5LTI0LTIwMDIgfCAwOS0yNC0yMDAy IHwgMDk6MzA6MTArMDAgfCAwOTozMDoxMC0wNiB8IDA5OjMwOjEwKzA2IHwgVGh1IE1heSAz MCAwMjozMDoxMCAyMDAyIFBEVCB8IFRodSBNYXkgMzAgMDg6MzA6MTAgMjAwMiBQRFQgfCBX ZWQgTWF5IDI5IDIwOjMwOjEwIDIwMDIgUERUIHwgZm9vIGJhciB8ICAgICAgICBmb28gYmFy ICAgICAgfCBmb28gJiA8ImJhciI+IHwgNDIuNzMxMjM0NTY3ODkxMCB8IDQyLjczMTIzNDU2 Nzg5MTAgfCAtNDIuNzMxMjM0NTY3ODkxMCB8ICA0MiB8ICA0MiB8IC00MiB8IDQyNzM1MzU0 MjAxNjIwMjEgfCA0MjczNTM1NDIwMTYyMDIxIHwgLTQyNzM1MzU0MjAxNjIwMjEgfCB0ICAg fCBmICAgfCAgICAgfCAKKygxIHJvdykKKwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC94bWxfMS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3htbF8x Lm91dAppbmRleCA3NTA1YTE0MDc3Li5hMTgzMDZjNWZiIDEwMDY0NAotLS0gYS9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3htbF8xLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL3htbF8xLm91dApAQCAtMTQ4MiwzICsxNDgyLDQzMiBAQCBFUlJPUjogIHVuc3Vw cG9ydGVkIFhNTCBmZWF0dXJlCiBMSU5FIDE6IFNFTEVDVCB4bWx0ZXh0KCd4J3x8ICc8UD43 MzwvUD4nOjp4bWwgfHwgLjQyIHx8IHRydWUgfHwgJ2onOi4uLgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCiBERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMg dGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorLS0gZm9yIHht bGNhc3QoKSB0ZXN0cworSU5TRVJUIElOVE8geG1sdGVzdAorIFZBTFVFUyAoNDIsCisnPD94 bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKyA8eG1sY2FzdD4KKyAgPHBl cmlvZDE+UDFZMk0zRFQ0SDVNNlM8L3BlcmlvZDE+CisgIDxwZXJpb2QyPjEgeWVhciAyIG1v bnMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYgc2Vjb25kczwvcGVyaW9kMj4KKyAgPGRh dGUxPjIwMDItMDktMjQ8L2RhdGUxPgorICA8ZGF0ZTI+MjAwMi0wOS0yNCswNjowMDwvZGF0 ZTI+CisgIDx0aW1lPjA5OjMwOjEwLjU8L3RpbWU+CisgIDx0aW1lX3R6MT4wOTozMDoxMFo8 L3RpbWVfdHoxPgorICA8dGltZV90ejI+MDk6MzA6MTAtMDY6MDA8L3RpbWVfdHoyPgorICA8 dGltZV90ejM+MDk6MzA6MTArMDY6MDA8L3RpbWVfdHozPgorICA8dGltZXN0YW1wMT4yMDAy LTA1LTMwVDA5OjAwOjAwPC90aW1lc3RhbXAxPgorICA8dGltZXN0YW1wMj4yMDAyLTA1LTMw VDA5OjMwOjEwLjU8L3RpbWVzdGFtcDI+CisgIDx0aW1lc3RhbXBfdHoxPjIwMDItMDUtMzBU MDk6MzA6MTBaPC90aW1lc3RhbXBfdHoxPgorICA8dGltZXN0YW1wX3R6Mj4yMDAyLTA1LTMw VDA5OjMwOjEwLTA2OjAwPC90aW1lc3RhbXBfdHoyPgorICA8dGltZXN0YW1wX3R6Mz4yMDAy LTA1LTMwVDA5OjMwOjEwKzA2OjAwPC90aW1lc3RhbXBfdHozPgorICA8dGV4dDE+Zm9vIGJh cjwvdGV4dDE+CisgIDx0ZXh0Mj4gICAgICAgZm9vIGJhciAgICAgPC90ZXh0Mj4KKyAgPHRl eHQzPmZvbyAmYW1wOyAmbHQ7JnF1b3Q7YmFyJnF1b3Q7Jmd0OzwvdGV4dDM+CisgIDxkZWNp bWFsMT40Mi43MzEyMzQ1Njc4OTEwPC9kZWNpbWFsMT4KKyAgPGRlY2ltYWwyPis0Mi43MzEy MzQ1Njc4OTEwPC9kZWNpbWFsMj4KKyAgPGRlY2ltYWwzPi00Mi43MzEyMzQ1Njc4OTEwPC9k ZWNpbWFsMz4KKyAgPGludGVnZXIxPjQyPC9pbnRlZ2VyMT4KKyAgPGludGVnZXIyPis0Mjwv aW50ZWdlcjI+CisgIDxpbnRlZ2VyMz4tNDI8L2ludGVnZXIzPgorICA8bG9uZzE+NDI3MzUz NTQyMDE2MjAyMTwvbG9uZzE+CisgIDxsb25nMj4rNDI3MzUzNTQyMDE2MjAyMTwvbG9uZzI+ CisgIDxsb25nMz4tNDI3MzUzNTQyMDE2MjAyMTwvbG9uZzM+CisgIDxib29sMSBhdHQ9InRy dWUiPjQyPC9ib29sMT4KKyAgPGJvb2wyIGF0dD0iZmFsc2UiPjczPC9ib29sMj4KKyAgPGVt cHR5PjwvZW1wdHk+CisgPC94bWxjYXN0Pic6OnhtbAorKTsKK0VSUk9SOiAgdW5zdXBwb3J0 ZWQgWE1MIGZlYXR1cmUKK0xJTkUgMzogJzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9 InV0Zi04Ij8+CisgICAgICAgIF4KK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1 aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCistLSBU aGlzIHByZXZlbnRzIHRoZSB4bWxjYXN0IHJlZ3Jlc3Npb24gdGVzdHMgZnJvbSBmYWlsaW5n IGlmIHRoZSBzeXN0ZW0ncyB0aW1lem9uZSBoYXMgYmVlbiBjaGFuZ2VkLgorU0VUIHRpbWV6 b25lIFRPICdBbWVyaWNhL0xvc19BbmdlbGVzJzsKKy0tIHhtbGNhc3QgZXhjZXB0aW9ucwor XHNldCBWRVJCT1NJVFkgdGVyc2UKK1NFTEVDVCB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90 ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGV4dFtdKSBGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0 MjsKK0VSUk9SOiAgY2Fubm90IGNhc3QgZnJvbSAneG1sJyB0byAndGV4dFtdJyBhdCBjaGFy YWN0ZXIgOAorU0VMRUNUIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL2ludGVnZXIxKCknLCBk YXRhKSlbMV0gQVMgaW50W10pIEZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworRVJST1I6 ICBjYW5ub3QgY2FzdCBmcm9tICd4bWwnIHRvICdpbnRlZ2VyW10nIGF0IGNoYXJhY3RlciA4 CitTRUxFQ1QgeG1sY2FzdChOVUxMIEFTIHRleHQpOworRVJST1I6ICBjYW5ub3QgY2FzdCBm cm9tICd1bmtub3duJyB0byAndGV4dCcgYXQgY2hhcmFjdGVyIDgKK1NFTEVDVCB4bWxjYXN0 KCdmb28nOjp0ZXh0IEFTIHZhcmNoYXIpOworRVJST1I6ICBjYW5ub3QgY2FzdCBmcm9tICd0 ZXh0JyB0byAnY2hhcmFjdGVyIHZhcnlpbmcnIGF0IGNoYXJhY3RlciA4CitTRUxFQ1QgeG1s Y2FzdCg0MiBBUyB0ZXh0KTsKK0VSUk9SOiAgY2Fubm90IGNhc3QgZnJvbSAnaW50ZWdlcicg dG8gJ3RleHQnIGF0IGNoYXJhY3RlciA4CitTRUxFQ1QgeG1sY2FzdChhcnJheVsnZm9vJywn YmFyJ10gQVMgeG1sKTsKK0VSUk9SOiAgY2Fubm90IGNhc3QgZnJvbSAndGV4dFtdJyB0byAn eG1sJyBhdCBjaGFyYWN0ZXIgOAorXHNldCBWRVJCT1NJVFkgZGVmYXVsdAorLS0geG1sY2Fz dCB0ZXN0cyBmb3IgIlhNTCB0byBub24tWE1MIiBleHByZXNzaW9ucworU0VMRUNUCisgIHht bGNhc3QoKHhwYXRoKCcvL2RhdGUxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBkYXRlKSwgcGdf dHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RhdGUxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBk YXRlKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2RhdGUyL3RleHQoKScsIGRhdGEpKVsxXSBB UyBkYXRlKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RhdGUyL3RleHQoKScsIGRh dGEpKVsxXSBBUyBkYXRlKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworIHhtbGNh c3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0t LS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworU0VMRUNUCisgIHht bGNhc3QoKHhwYXRoKCcvL3BlcmlvZDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludGVydmFs KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3BlcmlvZDEvdGV4dCgpJywgZGF0YSkp WzFdIEFTIGludGVydmFsKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3BlcmlvZDIvdGV4dCgp JywgZGF0YSkpWzFdIEFTIGludGVydmFsKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcv L3BlcmlvZDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludGVydmFsKSkKK0ZST00geG1sdGVz dCBXSEVSRSBpZCA9IDQyOworIHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdf dHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQor KDAgcm93cykKKworU0VMRUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RpbWUvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIHRpbWUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGltZS90 ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1l X3R6MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5 cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMg dGltZSB3aXRoIHRpbWUgem9uZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6Mi90 ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4 bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3 aXRoIHRpbWUgem9uZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6My90ZXh0KCkn LCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4bWxjYXN0 KCh4cGF0aCgnLy90aW1lX3R6My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRp bWUgem9uZSkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4bWxjYXN0IHwgcGdf dHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4 bWxjYXN0IHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLSst LS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t CisoMCByb3dzKQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHRleHQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4 dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8v dGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpLCBwZ190eXBlb2YoeG1sY2FzdCgo eHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpKSwKKyAgeG1sY2Fz dCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQpLCBwZ190eXBl b2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRleHQp KQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1sY2FzdCB8IHBnX3R5cGVvZiB8 IHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIAorLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0t LS0KKygwIHJvd3MpCisKK1NFTEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhcikpLAorICB4bWxjYXN0KCh4 cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hhciksIHBnX3R5cGVv Zih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdmFyY2hh cikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMg dmFyY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBk YXRhKSlbMV0gQVMgdmFyY2hhcikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4 bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBw Z190eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworU0VMRUNUCisgIHhtbGNhc3Qo KHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1lKSwgcGdfdHlwZW9m KHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1lKSks CisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1l KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsx XSBBUyBuYW1lKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEp KVsxXSBBUyBuYW1lKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQo KScsIGRhdGEpKVsxXSBBUyBuYW1lKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOwor IHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8 IHBnX3R5cGVvZiAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisoMCByb3dzKQorCitTRUxFQ1QKKyAgeG1sY2Fz dCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hhciksIHBnX3R5 cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYnBj aGFyKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsxXSBB UyBicGNoYXIpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIGJwY2hhcikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgYnBjaGFyKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcv L3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBicGNoYXIpKQorRlJPTSB4bWx0ZXN0IFdI RVJFIGlkID0gNDI7CisgeG1sY2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBwZ190eXBl b2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK1NF TEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMS90ZXh0KCknLCBkYXRhKSlbMV0g QVMgbnVtZXJpYyksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMS90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgbnVtZXJpYykpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9kZWNp bWFsMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgbnVtZXJpYyksIHBnX3R5cGVvZih4bWxjYXN0 KCh4cGF0aCgnLy9kZWNpbWFsMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgbnVtZXJpYykpLAor ICB4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMgbnVt ZXJpYyksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMy90ZXh0KCknLCBk YXRhKSlbMV0gQVMgbnVtZXJpYykpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4 bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBw Z190eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworU0VMRUNUCisgIHhtbGNhc3Qo KHhwYXRoKCcvL2RlY2ltYWwxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBkb3VibGUgcHJlY2lz aW9uKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwxL3RleHQoKScsIGRh dGEpKVsxXSBBUyBkb3VibGUgcHJlY2lzaW9uKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2Rl Y2ltYWwyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBkb3VibGUgcHJlY2lzaW9uKSwgcGdfdHlw ZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBk b3VibGUgcHJlY2lzaW9uKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwzL3RleHQo KScsIGRhdGEpKVsxXSBBUyBkb3VibGUgcHJlY2lzaW9uKSwgcGdfdHlwZW9mKHhtbGNhc3Qo KHhwYXRoKCcvL2RlY2ltYWwzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBkb3VibGUgcHJlY2lz aW9uKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworIHhtbGNhc3QgfCBwZ190eXBl b2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiAKKy0tLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisoMCByb3dzKQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdl cjEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0 aCgnLy9pbnRlZ2VyMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgaW50KSksCisgIHhtbGNhc3Qo KHhwYXRoKCcvL2ludGVnZXIyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnQpLCBwZ190eXBl b2YoeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdlcjIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGlu dCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9pbnRlZ2VyMy90ZXh0KCknLCBkYXRhKSlbMV0g QVMgaW50KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2ludGVnZXIzL3RleHQoKScs IGRhdGEpKVsxXSBBUyBpbnQpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1s Y2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdf dHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK1NFTEVDVAorICB4bWxjYXN0KCh4 cGF0aCgnLy9sb25nMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYmlnaW50KSwgcGdfdHlwZW9m KHhtbGNhc3QoKHhwYXRoKCcvL2xvbmcxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBiaWdpbnQp KSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vbG9uZzIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJp Z2ludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9sb25nMi90ZXh0KCknLCBkYXRh KSlbMV0gQVMgYmlnaW50KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2xvbmczL3RleHQoKScs IGRhdGEpKVsxXSBBUyBiaWdpbnQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vbG9u ZzMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJpZ2ludCkpCitGUk9NIHhtbHRlc3QgV0hFUkUg aWQgPSA0MjsKKyB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiB8 IHhtbGNhc3QgfCBwZ190eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworU0VMRUNU CisgIHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wxL0BhdHQnLCBkYXRhKSlbMV0gQVMgYm9vbGVh biksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9ib29sMS9AYXR0JywgZGF0YSkpWzFd IEFTIGJvb2xlYW4pKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vYm9vbDIvQGF0dCcsIGRhdGEp KVsxXSBBUyBib29sZWFuKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wxL0Bh dHQnLCBkYXRhKSlbMV0gQVMgYm9vbGVhbikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0 MjsKKyB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiAKKy0tLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK1NF TEVDVCB4bWxjYXN0KCh4cGF0aCgnLy9lbXB0eS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGV4 dCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9lbXB0eS90ZXh0KCknLCBkYXRhKSlb MV0gQVMgdGV4dCkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4bWxjYXN0IHwg cGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisoMCByb3dzKQorCistLSB4bWxj YXN0IHRlc3RzIGZvciAiWE1MIHRvIFhNTCIgZXhwcmVzc2lvbnMKK1NFTEVDVAorICB4bWxj YXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgeG1sKSwgcGdfdHlw ZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBBUyB4bWwp KSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHht bCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRhKSlb MV0gQVMgeG1sKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEp KVsxXSBBUyB4bWwpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHhtbCkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKyB4 bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiB8IHhtbGNhc3QgfCBw Z190eXBlb2YgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0geG1sY2FzdCB0ZXN0cyBm b3IgIm5vbi1YTUwgdG8gWE1MIiBleHByZXNzaW9ucworU0VMRUNUIGosIHBnX3R5cGVvZihq KSBGUk9NIHhtbGNhc3QoTlVMTCBBUyB4bWwpIHQoaik7CisgaiB8IHBnX3R5cGVvZiAKKy0t LSstLS0tLS0tLS0tLQorICAgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVv ZihqKSBGUk9NIHhtbGNhc3QoJ2ZvbycgQVMgeG1sKSB0KGopOworRVJST1I6ICB1bnN1cHBv cnRlZCBYTUwgZmVhdHVyZQorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVz IHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBq LCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcnOjp0ZXh0IEFTIHhtbCkgdChqKTsKK0VS Uk9SOiAgdW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25h bGl0eSByZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBv cnQuCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdChOVUxMOjp0ZXh0IEFT IHhtbCkgdChqKTsKKyBqIHwgcGdfdHlwZW9mIAorLS0tKy0tLS0tLS0tLS0tCisgICB8IHht bAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnJzo6 eG1sIEFTIHRleHQpIHQoaik7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitM SU5FIDE6IFNFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcnOjp4bWwgQVMg dGV4dCkgdChqKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXgorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIg dG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190eXBlb2Yo aikgRlJPTSB4bWxjYXN0KE5VTEw6OnhtbCBBUyB0ZXh0KSB0KGopOworIGogfCBwZ190eXBl b2YgCistLS0rLS0tLS0tLS0tLS0KKyAgIHwgdGV4dAorKDEgcm93KQorCitTRUxFQ1Qgaiwg cGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnZm9vICYgPCJiYXIiPic6OnRleHQgQVMgeG1s KSB0KGopOworRVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVhdHVyZQorREVUQUlMOiAgVGhp cyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBs aWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCdm b28gJiA8ImJhciI+Jzo6dmFyY2hhciBBUyB4bWwpIHQoaik7CitFUlJPUjogIHVuc3VwcG9y dGVkIFhNTCBmZWF0dXJlCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMg dGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUIGos IHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoJ2ZvbyAmIDwiYmFyIj4nOjpuYW1lIEFTIHht bCkgdChqKTsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRo aXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGgg bGlieG1sIHN1cHBvcnQuCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCh4 bWx0ZXh0KEUnZm9vICYgPCJiYXIiPlxyJykgQVMgdGV4dCkgdChqKTsKK0VSUk9SOiAgdW5z dXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1 aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitTRUxF Q1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCh4bWxjYXN0KEUnZm9vICYgPCJiYXIi PlxyJyBBUyB4bWwpIEFTIHRleHQpIHQoaik7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBm ZWF0dXJlCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZl ciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUIGosIHBnX3R5cGVv ZihqKSBGUk9NIHhtbGNhc3QodG9fZGF0ZSgnMjkvMDUvMjAyNCcsJ2RkL21tL3l5eXknKSBB UyB4bWwpIHQoaik7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitERVRBSUw6 ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3 aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6dGltZXN0YW1wIHdpdGggdGlt ZSB6b25lIEFTIHhtbCkgdChqKTsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUK K0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJl IGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZS T00geG1sY2FzdCgnMjAyNC0wNS0yOSAxMjowNDoxMC43MDM1ODUrMDInOjp0aW1lc3RhbXAg d2l0aG91dCB0aW1lIHpvbmUgQVMgeG1sKSB0KGopOworRVJST1I6ICB1bnN1cHBvcnRlZCBY TUwgZmVhdHVyZQorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBz ZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190 eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcxIHllYXIgMiBtb250aHMgMyBkYXlzIDQgaG91cnMg NSBtaW51dGVzIDYgc2Vjb25kcyc6OmludGVydmFsIEFTIHhtbCkgdChqKTsKK0VSUk9SOiAg dW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSBy ZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitT RUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCg0MjczNTM1NDIgQVMgeG1sKSB0 KGopOworRVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVhdHVyZQorREVUQUlMOiAgVGhpcyBm dW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4 bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQyNzM1 MzU0MjAxNjIwMjEgQVMgeG1sKSB0KGopOworRVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVh dHVyZQorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIg dG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190eXBlb2Yo aikgRlJPTSB4bWxjYXN0KDQyLjAwNzMxMjM0NTY3ODkxMCBBUyB4bWwpIHQoaik7CitFUlJP UjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxp dHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0 LgorU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoNDIuMDA3MzEyMzQ1Njc4 OTEwOjpkb3VibGUgcHJlY2lzaW9uIEFTIHhtbCkgdChqKTsKK0VSUk9SOiAgdW5zdXBwb3J0 ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0 aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitTRUxFQ1Qgaiwg cGdfdHlwZW9mKGopIEZST00geG1sY2FzdCh0cnVlIEFTIHhtbCkgdChqKTsKK0VSUk9SOiAg dW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSBy ZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitT RUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdChmYWxzZSBBUyB4bWwpIHQoaik7 CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitERVRBSUw6ICBUaGlzIGZ1bmN0 aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBz dXBwb3J0LgorU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoNDIgPSA3MyBB UyB4bWwpIHQoaik7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitERVRBSUw6 ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3 aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoNDIgPD4gNzMgQVMgeG1sKSB0KGopOworRVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVh dHVyZQorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIg dG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1NFTEVDVCBqLCBwZ190eXBlb2Yo aikgRlJPTSB4bWxjYXN0KCcxMToxMToxMS41Jzo6dGltZSBBUyB4bWwpIHQoaik7CitFUlJP UjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxp dHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0 LgorU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoJzExOjExOjExLjUnOjp0 aW1lIHdpdGggdGltZSB6b25lIEFTIHhtbCkgdChqKTsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQg WE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0aGUg c2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCistLSBDb252ZXJ0IGFu IFhNTCBzdHJpbmcgdG8gYnl0ZWEgYW5kIGJhY2sgdG8geG1sCitTRUxFQ1QgeG1sY2FzdChj b252ZXJ0X2Zyb20oeG1sY2FzdCgnJmx0OyZxdW90O2ZvbyZhbXA7YmFyJnF1b3Q7Jmd0Oyc6 OnhtbCBBUyBieXRlYSksJ1VURjgnKTo6eG1sIEFTIHRleHQpOworRVJST1I6ICB1bnN1cHBv cnRlZCBYTUwgZmVhdHVyZQorTElORSAxOiBTRUxFQ1QgeG1sY2FzdChjb252ZXJ0X2Zyb20o eG1sY2FzdCgnJmx0OyZxdW90O2ZvbyZhbXA7YmFyJnEuLi4KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFs aXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9y dC4KK1NFVCB4bWxiaW5hcnkgVE8gaGV4OworU0VMRUNUIHhtbGNhc3QoRSdcXHhERUFEQkVF Ric6OmJ5dGVhIEFTIHhtbCk7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitE RVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBi dWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VUIHhtbGJpbmFyeSBUTyBiYXNlNjQ7CitT RUxFQ1QgeG1sY2FzdChFJ1xceERFQURCRUVGJzo6Ynl0ZWEgQVMgeG1sKTsKK0VSUk9SOiAg dW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSBy ZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCist LSBUaGUgQlkgUkVGIGFuZCBCWSBWQUxVRSBjbGF1c2VzIGFyZSBhY2NlcHRlZCBidXQgaWdu b3JlZC4KKy0tIFRoaXMgY2hlY2tzIGlmIHRoZSByZXN1bHRzIGFyZSBpbmRlZWQgdGhlIHNh bWUgYXMgd2l0aG91dCB0aGUgY2xhdXNlcy4KK1NFTEVDVAorICB4bWxjYXN0KCdmb28nIEFT IHhtbCk6OnRleHQgPSB4bWxjYXN0KCdmb28nIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4 bWxjYXN0KCdmb28nIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCdmb28nIEFTIHhtbCBCWSBW QUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJ2Zvbyc6OnhtbCBBUyB0ZXh0KSA9IHhtbGNhc3Qo J2Zvbyc6OnhtbCBBUyB0ZXh0IEJZIFJFRiksCisgIHhtbGNhc3QoJ2Zvbyc6OnhtbCBBUyB0 ZXh0KSA9IHhtbGNhc3QoJ2Zvbyc6OnhtbCBBUyB0ZXh0IEJZIFZBTFVFKTsKK0VSUk9SOiAg dW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUKK0xJTkUgNDogICB4bWxjYXN0KCdmb28nOjp4bWwg QVMgdGV4dCkgPSB4bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCBCLi4uCisgICAgICAgICAg ICAgICAgICBeCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNl cnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUCisgIHhtbGNh c3QoNDIgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIgQVMgeG1sIEJZIFJFRik6OnRleHQs CisgIHhtbGNhc3QoNDIgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIgQVMgeG1sIEJZIFZB TFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnNDInOjp4bWwgQVMgaW50KSA9IHhtbGNhc3QoJzQy Jzo6eG1sIEFTIGludCBCWSBSRUYpLAorICB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnQpID0g eG1sY2FzdCgnNDInOjp4bWwgQVMgaW50IEJZIFZBTFVFKTsKK0VSUk9SOiAgdW5zdXBwb3J0 ZWQgWE1MIGZlYXR1cmUKK0xJTkUgNDogICB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnQpID0g eG1sY2FzdCgnNDInOjp4bWwgQVMgaW50IEJZIFJFLi4uCisgICAgICAgICAgICAgICAgICBe CitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxpdHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBi ZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0LgorU0VMRUNUCisgIHhtbGNhc3QoNDIuNzMg QVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIuNzMgQVMgeG1sIEJZIFJFRik6OnRleHQsCisg IHhtbGNhc3QoNDIuNzMgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIuNzMgQVMgeG1sIEJZ IFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMgbnVtZXJpYykgPSB4 bWxjYXN0KCc0Mi43Myc6OnhtbCBBUyBudW1lcmljIEJZIFJFRiksCisgIHhtbGNhc3QoJzQy LjczJzo6eG1sIEFTIG51bWVyaWMpID0geG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMgbnVtZXJp YyBCWSBWQUxVRSk7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitMSU5FIDQ6 ICAgeG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMgbnVtZXJpYykgPSB4bWxjYXN0KCc0Mi43Myc6 OnhtbCBBUy4uLgorICAgICAgICAgICAgICAgICAgXgorREVUQUlMOiAgVGhpcyBmdW5jdGlv bmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3Vw cG9ydC4KK1NFTEVDVAorICB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6ZGF0ZSBBUyB4bWwpOjp0 ZXh0ID0geG1sY2FzdCgnMjAyNC0wOC0xNCc6OmRhdGUgQVMgeG1sIEJZIFJFRik6OnRleHQs CisgIHhtbGNhc3QoJzIwMjQtMDgtMTQnOjpkYXRlIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0 KCcyMDI0LTA4LTE0Jzo6ZGF0ZSBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0 KCcyMDI0LTA4LTE0Jzo6eG1sIEFTIGRhdGUpID0geG1sY2FzdCgnMjAyNC0wOC0xNCc6Onht bCBBUyBkYXRlIEJZIFJFRiksCisgIHhtbGNhc3QoJzIwMjQtMDgtMTQnOjp4bWwgQVMgZGF0 ZSkgPSB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6eG1sIEFTIGRhdGUgQlkgVkFMVUUpOworRVJS T1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVhdHVyZQorTElORSA0OiAgIHhtbGNhc3QoJzIwMjQt MDgtMTQnOjp4bWwgQVMgZGF0ZSkgPSB4bWxjYXN0KCcyMDI0LTA4LTE0JzouLi4KKyAgICAg ICAgICAgICAgICAgIF4KK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0 aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitTRUxFQ1QKKyAg eG1sY2FzdCgnMTI6MzA6NDUnOjp0aW1lIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCk6OnRl eHQgPSB4bWxjYXN0KCcxMjozMDo0NSc6OnRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQVMgeG1s IEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzEyOjMwOjQ1Jzo6dGltZSB3aXRob3V0IHRp bWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMTI6MzA6NDUnOjp0aW1lIHdpdGhv dXQgdGltZSB6b25lIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJzEyOjMw OjQ1Jzo6eG1sIEFTIHRpbWUgd2l0aG91dCB0aW1lIHpvbmUpID0geG1sY2FzdCgnMTI6MzA6 NDUnOjp4bWwgQVMgdGltZSB3aXRob3V0IHRpbWUgem9uZSBCWSBSRUYpLAorICB4bWxjYXN0 KCcxMjozMDo0NSc6OnhtbCBBUyB0aW1lIHdpdGhvdXQgdGltZSB6b25lKSA9IHhtbGNhc3Qo JzEyOjMwOjQ1Jzo6eG1sIEFTIHRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQlkgVkFMVUUpOwor RVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVhdHVyZQorTElORSA0OiAgIHhtbGNhc3QoJzEy OjMwOjQ1Jzo6eG1sIEFTIHRpbWUgd2l0aG91dCB0aW1lIHpvbmUpID0geG1sY2EuLi4KKyAg ICAgICAgICAgICAgICAgIF4KK0RFVEFJTDogIFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJl cyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdpdGggbGlieG1sIHN1cHBvcnQuCitTRUxFQ1QK KyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp0aW1lIHdpdGggdGltZSB6b25lIEFTIHht bCk6OnRleHQgPSB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnRpbWUgd2l0aCB0aW1lIHpv bmUgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6 dGltZSB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMDk6MzA6MTAr MDY6MDAnOjp0aW1lIHdpdGggdGltZSB6b25lIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisg IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUp ID0geG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9u ZSBCWSBSRUYpLAorICB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lIHdp dGggdGltZSB6b25lKSA9IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUg d2l0aCB0aW1lIHpvbmUgQlkgVkFMVUUpOworRVJST1I6ICB1bnN1cHBvcnRlZCBYTUwgZmVh dHVyZQorTElORSA0OiAgIHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUg d2l0aCB0aW1lIHpvbmUpID0geG0uLi4KKyAgICAgICAgICAgICAgICAgIF4KK0RFVEFJTDog IFRoaXMgZnVuY3Rpb25hbGl0eSByZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIGJ1aWx0IHdp dGggbGlieG1sIHN1cHBvcnQuCitTRUxFQ1QKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMCAwOToz MDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0g eG1sY2FzdCgnMjAwMi0wNS0zMCAwOTozMDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRoIHRp bWUgem9uZSBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMCAw OTozMDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0 ID0geG1sY2FzdCgnMjAwMi0wNS0zMCAwOTozMDoxMCswNjowMCc6OnRpbWVzdGFtcCB3aXRo IHRpbWUgem9uZSBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCcyMDAyLTA1 LTMwVDA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkg PSB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFt cCB3aXRoIHRpbWUgem9uZSBCWSBSRUYpLAorICB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMw OjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgPSB4bWxjYXN0 KCcyMDAyLTA1LTMwVDA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRp bWUgem9uZSBCWSBWQUxVRSk7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitM SU5FIDQ6ICAgeG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0 aW1lc3RhbXAgd2l0aC4uLgorICAgICAgICAgICAgICAgICAgXgorREVUQUlMOiAgVGhpcyBm dW5jdGlvbmFsaXR5IHJlcXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4 bWwgc3VwcG9ydC4KK1NFTEVDVAorICB4bWxjYXN0KCcxIHllYXIgMiBtb25zJzo6aW50ZXJ2 YWwgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoJzEgeWVhciAyIG1vbnMnOjppbnRlcnZhbCBB UyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgnMSB5ZWFyIDIgbW9ucyc6OmludGVy dmFsIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcxIHllYXIgMiBtb25zJzo6aW50ZXJ2YWwg QVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnMSB5ZWFyIDIgbW9ucyc6Onht bCBBUyBpbnRlcnZhbCkgPSB4bWxjYXN0KCcxIHllYXIgMiBtb25zJzo6eG1sIEFTIGludGVy dmFsIEJZIFJFRiksCisgIHhtbGNhc3QoJzEgeWVhciAyIG1vbnMnOjp4bWwgQVMgaW50ZXJ2 YWwpID0geG1sY2FzdCgnMSB5ZWFyIDIgbW9ucyc6OnhtbCBBUyBpbnRlcnZhbCBCWSBWQUxV RSk7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBmZWF0dXJlCitMSU5FIDQ6ICAgeG1sY2Fz dCgnMSB5ZWFyIDIgbW9ucyc6OnhtbCBBUyBpbnRlcnZhbCkgPSB4bWxjYXN0KCcxIHllYS4u LgorICAgICAgICAgICAgICAgICAgXgorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJl cXVpcmVzIHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK0NS RUFURSBWSUVXIHZpZXdfeG1sY2FzdF90b194bWwgQVMKK1NFTEVDVAorICB4bWxjYXN0KE5V TEwgQVMgeG1sKSBBUyBjMSwKKyAgeG1sY2FzdCgnZm9vJyBBUyB4bWwpIEFTIGMyLAorICB4 bWxjYXN0KCcnOjp0ZXh0IEFTIHhtbCkgQVMgYzMsCisgIHhtbGNhc3QoTlVMTDo6dGV4dCBB UyB4bWwpIEFTIGM0LAorICB4bWxjYXN0KCcnOjp4bWwgQVMgdGV4dCkgQVMgYzUsCisgIHht bGNhc3QoTlVMTDo6eG1sIEFTIHRleHQpIGM2LAorICB4bWxjYXN0KCdmb28gJiA8ImJhciI+ Jzo6dGV4dCBBUyB4bWwpIEFTIGM3LAorICB4bWxjYXN0KCdmb28gJiA8ImJhciI+Jzo6dmFy Y2hhciBBUyB4bWwpIEFTIGM4LAorICB4bWxjYXN0KCdmb28gJiA8ImJhciI+Jzo6bmFtZSBB UyB4bWwpIEFTIGM5LAorICB4bWxjYXN0KHhtbHRleHQoRSdmb28gJiA8ImJhciI+XHInKSBB UyB0ZXh0KSBBUyBjMTAsCisgIHhtbGNhc3QoeG1sY2FzdChFJ2ZvbyAmIDwiYmFyIj5ccicg QVMgeG1sKSBBUyB0ZXh0KSBBUyBjMTEsCisgIHhtbGNhc3QodG9fZGF0ZSgnMjkvMDUvMjAy NCcsJ2RkL21tL3l5eXknKSBBUyB4bWwpIEFTIGMxMiwKKyAgeG1sY2FzdCgnMjAyNC0wNS0y OSAxMjowNDoxMC43MDM1ODUrMDInOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1s KSBBUyBjMTMsCisgIHhtbGNhc3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6 dGltZXN0YW1wIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCkgQVMgYzE0LAorICB4bWxjYXN0 KCcxIHllYXIgMiBtb250aHMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYgc2Vjb25kcyc6 OmludGVydmFsIEFTIHhtbCkgQVMgYzE1LAorICB4bWxjYXN0KDQyNzM1MzU0MiBBUyB4bWwp IEFTIGMxNiwKKyAgeG1sY2FzdCg0MjczNTM1NDIwMTYyMDIxIEFTIHhtbCkgQVMgYzE3LAor ICB4bWxjYXN0KDQyLjAwNzMxMjM0NTY3ODkxMCBBUyB4bWwpIEFTIGMxOCwKKyAgeG1sY2Fz dCg0Mi4wMDczMTIzNDU2Nzg5MTA6OmRvdWJsZSBwcmVjaXNpb24gQVMgeG1sKSBBUyBjMTks CisgIHhtbGNhc3QodHJ1ZSBBUyB4bWwpIEFTIGMyMCwKKyAgeG1sY2FzdChmYWxzZSBBUyB4 bWwpIEFTIGMyMSwKKyAgeG1sY2FzdCg0MiA9IDczIEFTIHhtbCkgQVMgYzIyLAorICB4bWxj YXN0KDQyIDw+IDczIEFTIHhtbCkgQVMgYzIzLAorICB4bWxjYXN0KCcxMToxMToxMS41Jzo6 dGltZSBBUyB4bWwpIEFTIGMyNCwKKyAgeG1sY2FzdCgnMTE6MTE6MTEuNSc6OnRpbWUgd2l0 aCB0aW1lIHpvbmUgQVMgeG1sKSBBUyBjMjU7CitFUlJPUjogIHVuc3VwcG9ydGVkIFhNTCBm ZWF0dXJlCitMSU5FIDc6ICAgeG1sY2FzdCgnJzo6eG1sIEFTIHRleHQpIEFTIGM1LAorICAg ICAgICAgICAgICAgICAgXgorREVUQUlMOiAgVGhpcyBmdW5jdGlvbmFsaXR5IHJlcXVpcmVz IHRoZSBzZXJ2ZXIgdG8gYmUgYnVpbHQgd2l0aCBsaWJ4bWwgc3VwcG9ydC4KK1xzdiB2aWV3 X3htbGNhc3RfdG9feG1sCitFUlJPUjogIHJlbGF0aW9uICJ2aWV3X3htbGNhc3RfdG9feG1s IiBkb2VzIG5vdCBleGlzdAorU0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3RfdG9feG1sOwor RVJST1I6ICByZWxhdGlvbiAidmlld194bWxjYXN0X3RvX3htbCIgZG9lcyBub3QgZXhpc3QK K0xJTkUgMTogU0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3RfdG9feG1sOworICAgICAgICAg ICAgICAgICAgICAgIF4KK0NSRUFURSBWSUVXIHZpZXdfeG1sY2FzdF9mcm9tX3htbCBBUwor U0VMRUNUCisgIHhtbGNhc3QoJ1AxWTJNM0RUNEg1TTZTJzo6eG1sIEFTIGludGVydmFsKSBB UyBjMSwKKyAgeG1sY2FzdCgnMSB5ZWFyIDIgbW9ucyAzIGRheXMgNCBob3VycyA1IG1pbnV0 ZXMgNiBzZWNvbmRzJzo6eG1sIEFTIGludGVydmFsKSBBUyBjMiwKKyAgeG1sY2FzdCgnMjAw Mi0wOS0yNCc6OnhtbCBBUyBkYXRlKSBBUyBjMywKKyAgeG1sY2FzdCgnMjAwMi0wOS0yNCsw NjowMCc6OnhtbCBBUyBkYXRlKSBBUyBjNCwKKyAgeG1sY2FzdCgnMDk6MzA6MTBaJzo6eG1s IEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpIEFTIGM1LAorICB4bWxjYXN0KCcwOTozMDoxMC0w NjowMCc6OnhtbCBBUyB0aW1lIHdpdGggdGltZSB6b25lKSBBUyBjNiwKKyAgeG1sY2FzdCgn MDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSkgQVMgYzcsCisg IHhtbGNhc3QoJzIwMDItMDUtMzBUMDk6MzA6MTBaJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRo IHRpbWUgem9uZSkgQVMgYzgsCisgIHhtbGNhc3QoJzIwMDItMDUtMzBUMDk6MzA6MTAtMDY6 MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6b25lKSBBUyBjOSwKKyAgeG1sY2Fz dCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0 aW1lIHpvbmUpIEFTIGMxMCwKKyAgeG1sY2FzdCgnZm9vIGJhcic6OnhtbCBBUyB0ZXh0KSBB UyBjMTEsCisgIHhtbGNhc3QoJyAgICAgICBmb28gYmFyICAgICAnOjp4bWwgQVMgdmFyY2hh cikgQVMgYzEyLAorICB4bWxjYXN0KCdmb28gJmFtcDsgJmx0OyZxdW90O2JhciZxdW90OyZn dDsnOjp4bWwgQVMgdGV4dCkgQVMgYzEzLAorICB4bWxjYXN0KCc0Mi43MzEyMzQ1Njc4OTEw Jzo6eG1sIEFTIG51bWVyaWMpIEFTIGMxNCwKKyAgeG1sY2FzdCgnKzQyLjczMTIzNDU2Nzg5 MTAnOjp4bWwgQVMgbnVtZXJpYykgQVMgYzE1LAorICB4bWxjYXN0KCctNDIuNzMxMjM0NTY3 ODkxMCc6OnhtbCBBUyBudW1lcmljKSBBUyBjMTYsCisgIHhtbGNhc3QoJzQyJzo6eG1sIEFT IGludGVnZXIpIEFTIGMxNywKKyAgeG1sY2FzdCgnKzQyJzo6eG1sIEFTIGludGVnZXIpIEFT IGMxOCwKKyAgeG1sY2FzdCgnLTQyJzo6eG1sIEFTIGludGVnZXIpIEFTIGMxOSwKKyAgeG1s Y2FzdCgnNDI3MzUzNTQyMDE2MjAyMSc6OnhtbCBBUyBiaWdpbnQpIEFTIGMyMCwKKyAgeG1s Y2FzdCgnKzQyNzM1MzU0MjAxNjIwMjEnOjp4bWwgQVMgYmlnaW50KSBBUyBjMjEsCisgIHht bGNhc3QoJy00MjczNTM1NDIwMTYyMDIxJzo6eG1sIEFTIGJpZ2ludCkgQVMgYzIyLAorICB4 bWxjYXN0KCd0cnVlJzo6eG1sIEFTIGJvb2xlYW4pIEFTIGMyMywKKyAgeG1sY2FzdCgnZmFs c2UnOjp4bWwgQVMgYm9vbGVhbikgQVMgYzI0LAorICB4bWxjYXN0KCcnOjp4bWwgQVMgY2hh cmFjdGVyIHZhcnlpbmcpIEFTIGMyNSwKKyAgeG1sY2FzdChOVUxMOjp4bWwgQVMgY2hhcmFj dGVyIHZhcnlpbmcpIEFTIGMyNjsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQgWE1MIGZlYXR1cmUK K0xJTkUgMzogICB4bWxjYXN0KCdQMVkyTTNEVDRINU02Uyc6OnhtbCBBUyBpbnRlcnZhbCkg QVMgYzEsCisgICAgICAgICAgICAgICAgICBeCitERVRBSUw6ICBUaGlzIGZ1bmN0aW9uYWxp dHkgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBidWlsdCB3aXRoIGxpYnhtbCBzdXBwb3J0 LgorXHN2IHZpZXdfeG1sY2FzdF9mcm9tX3htbAorRVJST1I6ICByZWxhdGlvbiAidmlld194 bWxjYXN0X2Zyb21feG1sIiBkb2VzIG5vdCBleGlzdAorU0VMRUNUICogRlJPTSB2aWV3X3ht bGNhc3RfZnJvbV94bWw7CitFUlJPUjogIHJlbGF0aW9uICJ2aWV3X3htbGNhc3RfZnJvbV94 bWwiIGRvZXMgbm90IGV4aXN0CitMSU5FIDE6IFNFTEVDVCAqIEZST00gdmlld194bWxjYXN0 X2Zyb21feG1sOworICAgICAgICAgICAgICAgICAgICAgIF4KZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQveG1sXzIub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC94bWxfMi5vdXQKaW5kZXggYzA3ZWQyYjI2OS4uYTAyZjUxODIyNiAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC94bWxfMi5vdXQKKysrIGIvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC94bWxfMi5vdXQKQEAgLTE4NTksMyArMTg1OSw1NzAgQEAgU0VM RUNUIHhtbHRleHQoJ3gnfHwgJzxQPjczPC9QPic6OnhtbCB8fCAuNDIgfHwgdHJ1ZSB8fCAn aic6OmNoYXIpOwogIHgmbHQ7UCZndDs3MyZsdDsvUCZndDswLjQydHJ1ZWoKICgxIHJvdykK IAorLS0gZm9yIHhtbGNhc3QoKSB0ZXN0cworSU5TRVJUIElOVE8geG1sdGVzdAorIFZBTFVF UyAoNDIsCisnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KKyA8eG1s Y2FzdD4KKyAgPHBlcmlvZDE+UDFZMk0zRFQ0SDVNNlM8L3BlcmlvZDE+CisgIDxwZXJpb2Qy PjEgeWVhciAyIG1vbnMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYgc2Vjb25kczwvcGVy aW9kMj4KKyAgPGRhdGUxPjIwMDItMDktMjQ8L2RhdGUxPgorICA8ZGF0ZTI+MjAwMi0wOS0y NCswNjowMDwvZGF0ZTI+CisgIDx0aW1lPjA5OjMwOjEwLjU8L3RpbWU+CisgIDx0aW1lX3R6 MT4wOTozMDoxMFo8L3RpbWVfdHoxPgorICA8dGltZV90ejI+MDk6MzA6MTAtMDY6MDA8L3Rp bWVfdHoyPgorICA8dGltZV90ejM+MDk6MzA6MTArMDY6MDA8L3RpbWVfdHozPgorICA8dGlt ZXN0YW1wMT4yMDAyLTA1LTMwVDA5OjAwOjAwPC90aW1lc3RhbXAxPgorICA8dGltZXN0YW1w Mj4yMDAyLTA1LTMwVDA5OjMwOjEwLjU8L3RpbWVzdGFtcDI+CisgIDx0aW1lc3RhbXBfdHox PjIwMDItMDUtMzBUMDk6MzA6MTBaPC90aW1lc3RhbXBfdHoxPgorICA8dGltZXN0YW1wX3R6 Mj4yMDAyLTA1LTMwVDA5OjMwOjEwLTA2OjAwPC90aW1lc3RhbXBfdHoyPgorICA8dGltZXN0 YW1wX3R6Mz4yMDAyLTA1LTMwVDA5OjMwOjEwKzA2OjAwPC90aW1lc3RhbXBfdHozPgorICA8 dGV4dDE+Zm9vIGJhcjwvdGV4dDE+CisgIDx0ZXh0Mj4gICAgICAgZm9vIGJhciAgICAgPC90 ZXh0Mj4KKyAgPHRleHQzPmZvbyAmYW1wOyAmbHQ7JnF1b3Q7YmFyJnF1b3Q7Jmd0OzwvdGV4 dDM+CisgIDxkZWNpbWFsMT40Mi43MzEyMzQ1Njc4OTEwPC9kZWNpbWFsMT4KKyAgPGRlY2lt YWwyPis0Mi43MzEyMzQ1Njc4OTEwPC9kZWNpbWFsMj4KKyAgPGRlY2ltYWwzPi00Mi43MzEy MzQ1Njc4OTEwPC9kZWNpbWFsMz4KKyAgPGludGVnZXIxPjQyPC9pbnRlZ2VyMT4KKyAgPGlu dGVnZXIyPis0MjwvaW50ZWdlcjI+CisgIDxpbnRlZ2VyMz4tNDI8L2ludGVnZXIzPgorICA8 bG9uZzE+NDI3MzUzNTQyMDE2MjAyMTwvbG9uZzE+CisgIDxsb25nMj4rNDI3MzUzNTQyMDE2 MjAyMTwvbG9uZzI+CisgIDxsb25nMz4tNDI3MzUzNTQyMDE2MjAyMTwvbG9uZzM+CisgIDxi b29sMSBhdHQ9InRydWUiPjQyPC9ib29sMT4KKyAgPGJvb2wyIGF0dD0iZmFsc2UiPjczPC9i b29sMj4KKyAgPGVtcHR5PjwvZW1wdHk+CisgPC94bWxjYXN0Pic6OnhtbAorKTsKKy0tIFRo aXMgcHJldmVudHMgdGhlIHhtbGNhc3QgcmVncmVzc2lvbiB0ZXN0cyBmcm9tIGZhaWxpbmcg aWYgdGhlIHN5c3RlbSdzIHRpbWV6b25lIGhhcyBiZWVuIGNoYW5nZWQuCitTRVQgdGltZXpv bmUgVE8gJ0FtZXJpY2EvTG9zX0FuZ2VsZXMnOworLS0geG1sY2FzdCBleGNlcHRpb25zCitc c2V0IFZFUkJPU0lUWSB0ZXJzZQorU0VMRUNUIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3Rl eHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0W10pIEZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQy OworRVJST1I6ICBjYW5ub3QgY2FzdCBmcm9tICd4bWwnIHRvICd0ZXh0W10nIGF0IGNoYXJh Y3RlciA4CitTRUxFQ1QgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvaW50ZWdlcjEoKScsIGRh dGEpKVsxXSBBUyBpbnRbXSkgRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CitFUlJPUjog IGNhbm5vdCBjYXN0IGZyb20gJ3htbCcgdG8gJ2ludGVnZXJbXScgYXQgY2hhcmFjdGVyIDgK K1NFTEVDVCB4bWxjYXN0KE5VTEwgQVMgdGV4dCk7CitFUlJPUjogIGNhbm5vdCBjYXN0IGZy b20gJ3Vua25vd24nIHRvICd0ZXh0JyBhdCBjaGFyYWN0ZXIgOAorU0VMRUNUIHhtbGNhc3Qo J2Zvbyc6OnRleHQgQVMgdmFyY2hhcik7CitFUlJPUjogIGNhbm5vdCBjYXN0IGZyb20gJ3Rl eHQnIHRvICdjaGFyYWN0ZXIgdmFyeWluZycgYXQgY2hhcmFjdGVyIDgKK1NFTEVDVCB4bWxj YXN0KDQyIEFTIHRleHQpOworRVJST1I6ICBjYW5ub3QgY2FzdCBmcm9tICdpbnRlZ2VyJyB0 byAndGV4dCcgYXQgY2hhcmFjdGVyIDgKK1NFTEVDVCB4bWxjYXN0KGFycmF5Wydmb28nLCdi YXInXSBBUyB4bWwpOworRVJST1I6ICBjYW5ub3QgY2FzdCBmcm9tICd0ZXh0W10nIHRvICd4 bWwnIGF0IGNoYXJhY3RlciA4Citcc2V0IFZFUkJPU0lUWSBkZWZhdWx0CistLSB4bWxjYXN0 IHRlc3RzIGZvciAiWE1MIHRvIG5vbi1YTUwiIGV4cHJlc3Npb25zCitTRUxFQ1QKKyAgeG1s Y2FzdCgoeHBhdGgoJy8vZGF0ZTEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRhdGUpLCBwZ190 eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGF0ZTEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRh dGUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vZGF0ZTIvdGV4dCgpJywgZGF0YSkpWzFdIEFT IGRhdGUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGF0ZTIvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIGRhdGUpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgIHhtbGNh c3QgICB8IHBnX3R5cGVvZiB8ICB4bWxjYXN0ICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgMDktMjQtMjAwMiB8 IGRhdGUgICAgICB8IDA5LTI0LTIwMDIgfCBkYXRlCisoMSByb3cpCisKK1NFTEVDVAorICB4 bWxjYXN0KCh4cGF0aCgnLy9wZXJpb2QxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnRlcnZh bCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9wZXJpb2QxL3RleHQoKScsIGRhdGEp KVsxXSBBUyBpbnRlcnZhbCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9wZXJpb2QyL3RleHQo KScsIGRhdGEpKVsxXSBBUyBpbnRlcnZhbCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly9wZXJpb2QyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnRlcnZhbCkpCitGUk9NIHhtbHRl c3QgV0hFUkUgaWQgPSA0MjsKKyAgICAgICAgICAgICAgICAgICB4bWxjYXN0ICAgICAgICAg ICAgICAgICAgICB8IHBnX3R5cGVvZiB8ICAgICAgICAgICAgICAgICAgIHhtbGNhc3QgICAg ICAgICAgICAgICAgICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgQCAxIHllYXIgMiBt b25zIDMgZGF5cyA0IGhvdXJzIDUgbWlucyA2IHNlY3MgfCBpbnRlcnZhbCAgfCBAIDEgeWVh ciAyIG1vbnMgMyBkYXlzIDQgaG91cnMgNSBtaW5zIDYgc2VjcyB8IGludGVydmFsCisoMSBy b3cpCisKK1NFTEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lL3RleHQoKScsIGRhdGEp KVsxXSBBUyB0aW1lKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RpbWUvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHRpbWUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGltZV90ejEv dGV4dCgpJywgZGF0YSkpWzFdIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpLCBwZ190eXBlb2Yo eG1sY2FzdCgoeHBhdGgoJy8vdGltZV90ejEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRpbWUg d2l0aCB0aW1lIHpvbmUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGltZV90ejIvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpLCBwZ190eXBlb2YoeG1sY2Fz dCgoeHBhdGgoJy8vdGltZV90ejIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRpbWUgd2l0aCB0 aW1lIHpvbmUpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGltZV90ejMvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBh dGgoJy8vdGltZV90ejMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHRpbWUgd2l0aCB0aW1lIHpv bmUpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgIHhtbGNhc3QgICB8ICAgICAg IHBnX3R5cGVvZiAgICAgICAgfCAgIHhtbGNhc3QgICB8ICAgICAgcGdfdHlwZW9mICAgICAg fCAgIHhtbGNhc3QgICB8ICAgICAgcGdfdHlwZW9mICAgICAgfCAgIHhtbGNhc3QgICB8ICAg ICAgcGdfdHlwZW9mICAgICAgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgMDk6MzA6MTAuNSB8IHRpbWUgd2l0aG91dCB0aW1lIHpvbmUgfCAwOTozMDoxMCsw MCB8IHRpbWUgd2l0aCB0aW1lIHpvbmUgfCAwOTozMDoxMC0wNiB8IHRpbWUgd2l0aCB0aW1l IHpvbmUgfCAwOTozMDoxMCswNiB8IHRpbWUgd2l0aCB0aW1lIHpvbmUKKygxIHJvdykKKwor U0VMRUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBB UyB0ZXh0KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRh dGEpKVsxXSBBUyB0ZXh0KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScs IGRhdGEpKVsxXSBBUyB0ZXh0KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQy L3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3Rl eHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhw YXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSkKK0ZST00geG1sdGVz dCBXSEVSRSBpZCA9IDQyOworIHhtbGNhc3QgfCBwZ190eXBlb2YgfCAgICAgICB4bWxjYXN0 ICAgICAgIHwgcGdfdHlwZW9mIHwgICAgeG1sY2FzdCAgICB8IHBnX3R5cGVvZiAKKy0tLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vIGJhciB8IHRleHQgICAgICB8ICAgICAg ICBmb28gYmFyICAgICAgfCB0ZXh0ICAgICAgfCBmb28gJiA8ImJhciI+IHwgdGV4dAorKDEg cm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIHZhcmNoYXIpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEv dGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8v dGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpLCBwZ190eXBlb2YoeG1sY2Fz dCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpKSwKKyAg eG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIp LCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFd IEFTIHZhcmNoYXIpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1sY2FzdCB8 ICAgICBwZ190eXBlb2YgICAgIHwgICAgICAgeG1sY2FzdCAgICAgICB8ICAgICBwZ190eXBl b2YgICAgIHwgICAgeG1sY2FzdCAgICB8ICAgICBwZ190eXBlb2YgICAgIAorLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBmb28gYmFy IHwgY2hhcmFjdGVyIHZhcnlpbmcgfCAgICAgICAgZm9vIGJhciAgICAgIHwgY2hhcmFjdGVy IHZhcnlpbmcgfCBmb28gJiA8ImJhciI+IHwgY2hhcmFjdGVyIHZhcnlpbmcKKygxIHJvdykK KworU0VMRUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsx XSBBUyBuYW1lKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScs IGRhdGEpKVsxXSBBUyBuYW1lKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQo KScsIGRhdGEpKVsxXSBBUyBuYW1lKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3Rl eHQyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1lKSksCisgIHhtbGNhc3QoKHhwYXRoKCcv L3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1lKSwgcGdfdHlwZW9mKHhtbGNhc3Qo KHhwYXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBuYW1lKSkKK0ZST00geG1s dGVzdCBXSEVSRSBpZCA9IDQyOworIHhtbGNhc3QgfCBwZ190eXBlb2YgfCAgICAgICB4bWxj YXN0ICAgICAgIHwgcGdfdHlwZW9mIHwgICAgeG1sY2FzdCAgICB8IHBnX3R5cGVvZiAKKy0t LS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vIGJhciB8IG5hbWUgICAgICB8ICAg ICAgICBmb28gYmFyICAgICAgfCBuYW1lICAgICAgfCBmb28gJiA8ImJhciI+IHwgbmFtZQor KDEgcm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIGJwY2hhciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0 MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYnBjaGFyKSksCisgIHhtbGNhc3QoKHhwYXRoKCcv L3RleHQyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBicGNoYXIpLCBwZ190eXBlb2YoeG1sY2Fz dCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hhcikpLAorICB4 bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYnBjaGFyKSwg cGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBB UyBicGNoYXIpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgeG1sY2FzdCB8IHBn X3R5cGVvZiB8ICAgICAgIHhtbGNhc3QgICAgICAgfCBwZ190eXBlb2YgfCAgICB4bWxjYXN0 ICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBmb28g YmFyIHwgY2hhcmFjdGVyIHwgICAgICAgIGZvbyBiYXIgICAgICB8IGNoYXJhY3RlciB8IGZv byAmIDwiYmFyIj4gfCBjaGFyYWN0ZXIKKygxIHJvdykKKworU0VMRUNUCisgIHhtbGNhc3Qo KHhwYXRoKCcvL2RlY2ltYWwxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBudW1lcmljKSwgcGdf dHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwxL3RleHQoKScsIGRhdGEpKVsxXSBB UyBudW1lcmljKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwyL3RleHQoKScsIGRh dGEpKVsxXSBBUyBudW1lcmljKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2RlY2lt YWwyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBudW1lcmljKSksCisgIHhtbGNhc3QoKHhwYXRo KCcvL2RlY2ltYWwzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBudW1lcmljKSwgcGdfdHlwZW9m KHhtbGNhc3QoKHhwYXRoKCcvL2RlY2ltYWwzL3RleHQoKScsIGRhdGEpKVsxXSBBUyBudW1l cmljKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworICAgICB4bWxjYXN0ICAgICAg fCBwZ190eXBlb2YgfCAgICAgeG1sY2FzdCAgICAgIHwgcGdfdHlwZW9mIHwgICAgICB4bWxj YXN0ICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyA0Mi43MzEyMzQ1Njc4OTEwIHwgbnVtZXJpYyAgIHwgNDIuNzMxMjM0NTY3 ODkxMCB8IG51bWVyaWMgICB8IC00Mi43MzEyMzQ1Njc4OTEwIHwgbnVtZXJpYworKDEgcm93 KQorCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDEvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIGRvdWJsZSBwcmVjaXNpb24pLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgo Jy8vZGVjaW1hbDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRvdWJsZSBwcmVjaXNpb24pKSwK KyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRv dWJsZSBwcmVjaXNpb24pLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDIv dGV4dCgpJywgZGF0YSkpWzFdIEFTIGRvdWJsZSBwcmVjaXNpb24pKSwKKyAgeG1sY2FzdCgo eHBhdGgoJy8vZGVjaW1hbDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRvdWJsZSBwcmVjaXNp b24pLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDMvdGV4dCgpJywgZGF0 YSkpWzFdIEFTIGRvdWJsZSBwcmVjaXNpb24pKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0g NDI7CisgICAgIHhtbGNhc3QgICAgIHwgICAgcGdfdHlwZW9mICAgICB8ICAgICB4bWxjYXN0 ICAgICB8ICAgIHBnX3R5cGVvZiAgICAgfCAgICAgeG1sY2FzdCAgICAgIHwgICAgcGdfdHlw ZW9mICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLQorIDQyLjczMTIzNDU2Nzg5MSB8IGRvdWJsZSBwcmVjaXNpb24gfCA0 Mi43MzEyMzQ1Njc4OTEgfCBkb3VibGUgcHJlY2lzaW9uIHwgLTQyLjczMTIzNDU2Nzg5MSB8 IGRvdWJsZSBwcmVjaXNpb24KKygxIHJvdykKKworU0VMRUNUCisgIHhtbGNhc3QoKHhwYXRo KCcvL2ludGVnZXIxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnQpLCBwZ190eXBlb2YoeG1s Y2FzdCgoeHBhdGgoJy8vaW50ZWdlcjEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludCkpLAor ICB4bWxjYXN0KCh4cGF0aCgnLy9pbnRlZ2VyMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgaW50 KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2ludGVnZXIyL3RleHQoKScsIGRhdGEp KVsxXSBBUyBpbnQpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdlcjMvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIGludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9pbnRlZ2Vy My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgaW50KSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9 IDQyOworIHhtbGNhc3QgfCBwZ190eXBlb2YgfCB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1s Y2FzdCB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgICAgICA0MiB8IGludGVnZXIgICB8 ICAgICAgNDIgfCBpbnRlZ2VyICAgfCAgICAgLTQyIHwgaW50ZWdlcgorKDEgcm93KQorCitT RUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vbG9uZzEvdGV4dCgpJywgZGF0YSkpWzFdIEFT IGJpZ2ludCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9sb25nMS90ZXh0KCknLCBk YXRhKSlbMV0gQVMgYmlnaW50KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2xvbmcyL3RleHQo KScsIGRhdGEpKVsxXSBBUyBiaWdpbnQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8v bG9uZzIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJpZ2ludCkpLAorICB4bWxjYXN0KCh4cGF0 aCgnLy9sb25nMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYmlnaW50KSwgcGdfdHlwZW9mKHht bGNhc3QoKHhwYXRoKCcvL2xvbmczL3RleHQoKScsIGRhdGEpKVsxXSBBUyBiaWdpbnQpKQor RlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisgICAgIHhtbGNhc3QgICAgICB8IHBnX3R5 cGVvZiB8ICAgICB4bWxjYXN0ICAgICAgfCBwZ190eXBlb2YgfCAgICAgIHhtbGNhc3QgICAg ICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQorIDQyNzM1MzU0MjAxNjIwMjEgfCBiaWdpbnQgICAgfCA0MjczNTM1NDIwMTYyMDIxIHwg YmlnaW50ICAgIHwgLTQyNzM1MzU0MjAxNjIwMjEgfCBiaWdpbnQKKygxIHJvdykKKworU0VM RUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wxL0BhdHQnLCBkYXRhKSlbMV0gQVMgYm9v bGVhbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9ib29sMS9AYXR0JywgZGF0YSkp WzFdIEFTIGJvb2xlYW4pKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vYm9vbDIvQGF0dCcsIGRh dGEpKVsxXSBBUyBib29sZWFuKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wx L0BhdHQnLCBkYXRhKSlbMV0gQVMgYm9vbGVhbikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQg PSA0MjsKKyB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgeG1sY2FzdCB8IHBnX3R5cGVvZiAKKy0t LS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyB0ICAgICAgIHwg Ym9vbGVhbiAgIHwgZiAgICAgICB8IGJvb2xlYW4KKygxIHJvdykKKworU0VMRUNUIHhtbGNh c3QoKHhwYXRoKCcvL2VtcHR5L3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSwgcGdfdHlw ZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2VtcHR5L3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0 KSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworIHhtbGNhc3QgfCBwZ190eXBlb2Yg CistLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyAgICAgICAgIHwgdGV4dAorKDEgcm93KQorCist LSB4bWxjYXN0IHRlc3RzIGZvciAiWE1MIHRvIFhNTCIgZXhwcmVzc2lvbnMKK1NFTEVDVAor ICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgeG1sKSwg cGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBB UyB4bWwpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFd IEFTIHhtbCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBk YXRhKSlbMV0gQVMgeG1sKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQoKScs IGRhdGEpKVsxXSBBUyB4bWwpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMv dGV4dCgpJywgZGF0YSkpWzFdIEFTIHhtbCkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0 MjsKKyB4bWxjYXN0IHwgcGdfdHlwZW9mIHwgICAgICAgeG1sY2FzdCAgICAgICB8IHBnX3R5 cGVvZiB8ICAgICAgICAgeG1sY2FzdCAgICAgICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vIGJhciB8IHhtbCAgICAgICB8 ICAgICAgICBmb28gYmFyICAgICAgfCB4bWwgICAgICAgfCBmb28gJmFtcDsgJmx0OyJiYXIi Jmd0OyB8IHhtbAorKDEgcm93KQorCistLSB4bWxjYXN0IHRlc3RzIGZvciAibm9uLVhNTCB0 byBYTUwiIGV4cHJlc3Npb25zCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2Fz dChOVUxMIEFTIHhtbCkgdChqKTsKKyBqIHwgcGdfdHlwZW9mIAorLS0tKy0tLS0tLS0tLS0t CisgICB8IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1s Y2FzdCgnZm9vJyBBUyB4bWwpIHQoaik7CisgIGogIHwgcGdfdHlwZW9mIAorLS0tLS0rLS0t LS0tLS0tLS0KKyBmb28gfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihq KSBGUk9NIHhtbGNhc3QoJyc6OnRleHQgQVMgeG1sKSB0KGopOworIGogfCBwZ190eXBlb2Yg CistLS0rLS0tLS0tLS0tLS0KKyAgIHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190 eXBlb2YoaikgRlJPTSB4bWxjYXN0KE5VTEw6OnRleHQgQVMgeG1sKSB0KGopOworIGogfCBw Z190eXBlb2YgCistLS0rLS0tLS0tLS0tLS0KKyAgIHwgeG1sCisoMSByb3cpCisKK1NFTEVD VCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcnOjp4bWwgQVMgdGV4dCkgdChqKTsK KyBqIHwgcGdfdHlwZW9mIAorLS0tKy0tLS0tLS0tLS0tCisgICB8IHRleHQKKygxIHJvdykK KworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QoTlVMTDo6eG1sIEFTIHRl eHQpIHQoaik7CisgaiB8IHBnX3R5cGVvZiAKKy0tLSstLS0tLS0tLS0tLQorICAgfCB0ZXh0 CisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCdmb28g JiA8ImJhciI+Jzo6dGV4dCBBUyB4bWwpIHQoaik7CisgICAgICAgICAgICAgICAgIGogICAg ICAgICAgICAgICAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBmb28gJmFtcDsgJmx0OyZxdW90O2JhciZxdW90OyZn dDsgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoJ2ZvbyAmIDwiYmFyIj4nOjp2YXJjaGFyIEFTIHhtbCkgdChqKTsKKyAgICAgICAgICAg ICAgICAgaiAgICAgICAgICAgICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIGZvbyAmYW1wOyAmbHQ7JnF1b3Q7 YmFyJnF1b3Q7Jmd0OyB8IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGop IEZST00geG1sY2FzdCgnZm9vICYgPCJiYXIiPic6Om5hbWUgQVMgeG1sKSB0KGopOworICAg ICAgICAgICAgICAgICBqICAgICAgICAgICAgICAgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vICZhbXA7ICZs dDsmcXVvdDtiYXImcXVvdDsmZ3Q7IHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190 eXBlb2YoaikgRlJPTSB4bWxjYXN0KHhtbHRleHQoRSdmb28gJiA8ImJhciI+XHInKSBBUyB0 ZXh0KSB0KGopOworICAgICAgICBqICAgICAgICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgZm9vICYgPCJiYXIiPlxyIHwgdGV4dAorKDEgcm93KQor CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCh4bWxjYXN0KEUnZm9vICYg PCJiYXIiPlxyJyBBUyB4bWwpIEFTIHRleHQpIHQoaik7CisgICAgICAgIGogICAgICAgIHwg cGdfdHlwZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBmb28gJiA8ImJh ciI+XHIgfCB0ZXh0CisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4 bWxjYXN0KHRvX2RhdGUoJzI5LzA1LzIwMjQnLCdkZC9tbS95eXl5JykgQVMgeG1sKSB0KGop OworICAgICBqICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyAyMDI0LTA1LTI5IHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2Yoaikg RlJPTSB4bWxjYXN0KCcyMDI0LTA1LTI5IDEyOjA0OjEwLjcwMzU4NSswMic6OnRpbWVzdGFt cCB3aXRoIHRpbWUgem9uZSBBUyB4bWwpIHQoaik7CisgICAgICAgICAgICAgICAgaiAgICAg ICAgICAgICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgMjAyNC0wNS0yOVQwMzowNDoxMC43MDM1ODUtMDc6MDAg fCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3Qo JzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6dGltZXN0YW1wIHdpdGhvdXQgdGlt ZSB6b25lIEFTIHhtbCkgdChqKTsKKyAgICAgICAgICAgICBqICAgICAgICAgICAgICB8IHBn X3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyAy MDI0LTA1LTI5VDEyOjA0OjEwLjcwMzU4NSB8IHhtbAorKDEgcm93KQorCitTRUxFQ1Qgaiwg cGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnMSB5ZWFyIDIgbW9udGhzIDMgZGF5cyA0IGhv dXJzIDUgbWludXRlcyA2IHNlY29uZHMnOjppbnRlcnZhbCBBUyB4bWwpIHQoaik7CisgICAg ICAgaiAgICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t CisgUDFZMk0zRFQ0SDVNNlMgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVv ZihqKSBGUk9NIHhtbGNhc3QoNDI3MzUzNTQyIEFTIHhtbCkgdChqKTsKKyAgICAgaiAgICAg fCBwZ190eXBlb2YgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIDQyNzM1MzU0MiB8IHht bAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCg0Mjcz NTM1NDIwMTYyMDIxIEFTIHhtbCkgdChqKTsKKyAgICAgICAgaiAgICAgICAgIHwgcGdfdHlw ZW9mIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgNDI3MzUzNTQyMDE2MjAy MSB8IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2Fz dCg0Mi4wMDczMTIzNDU2Nzg5MTAgQVMgeG1sKSB0KGopOworICAgICAgICAgaiAgICAgICAg ICB8IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgNDIu MDA3MzEyMzQ1Njc4OTEwIHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2Yo aikgRlJPTSB4bWxjYXN0KDQyLjAwNzMxMjM0NTY3ODkxMDo6ZG91YmxlIHByZWNpc2lvbiBB UyB4bWwpIHQoaik7CisgICAgICAgICBqICAgICAgICAgfCBwZ190eXBlb2YgCistLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgNDIuMDA3MzEyMzQ1Njc4OTEgfCB4bWwKKygx IHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QodHJ1ZSBBUyB4 bWwpIHQoaik7CisgIGogICB8IHBnX3R5cGVvZiAKKy0tLS0tLSstLS0tLS0tLS0tLQorIHRy dWUgfCB4bWwKKygxIHJvdykKKworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoZmFsc2UgQVMgeG1sKSB0KGopOworICAgaiAgIHwgcGdfdHlwZW9mIAorLS0tLS0tLSst LS0tLS0tLS0tLQorIGZhbHNlIHwgeG1sCisoMSByb3cpCisKK1NFTEVDVCBqLCBwZ190eXBl b2YoaikgRlJPTSB4bWxjYXN0KDQyID0gNzMgQVMgeG1sKSB0KGopOworICAgaiAgIHwgcGdf dHlwZW9mIAorLS0tLS0tLSstLS0tLS0tLS0tLQorIGZhbHNlIHwgeG1sCisoMSByb3cpCisK K1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQyIDw+IDczIEFTIHhtbCkg dChqKTsKKyAgaiAgIHwgcGdfdHlwZW9mIAorLS0tLS0tKy0tLS0tLS0tLS0tCisgdHJ1ZSB8 IHhtbAorKDEgcm93KQorCitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgn MTE6MTE6MTEuNSc6OnRpbWUgQVMgeG1sKSB0KGopOworICAgICBqICAgICAgfCBwZ190eXBl b2YgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyAxMToxMToxMS41IHwgeG1sCisoMSBy b3cpCisKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcxMToxMToxMS41 Jzo6dGltZSB3aXRoIHRpbWUgem9uZSBBUyB4bWwpIHQoaik7CisgICAgICAgaiAgICAgICB8 IHBnX3R5cGVvZiAKKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIDExOjExOjExLjUt MDggfCB4bWwKKygxIHJvdykKKworLS0gQ29udmVydCBhbiBYTUwgc3RyaW5nIHRvIGJ5dGVh IGFuZCBiYWNrIHRvIHhtbAorU0VMRUNUIHhtbGNhc3QoY29udmVydF9mcm9tKHhtbGNhc3Qo JyZsdDsmcXVvdDtmb28mYW1wO2JhciZxdW90OyZndDsnOjp4bWwgQVMgYnl0ZWEpLCdVVEY4 Jyk6OnhtbCBBUyB0ZXh0KTsKKyAgIHhtbGNhc3QgICAKKy0tLS0tLS0tLS0tLS0KKyA8ImZv byZiYXIiPgorKDEgcm93KQorCitTRVQgeG1sYmluYXJ5IFRPIGhleDsKK1NFTEVDVCB4bWxj YXN0KEUnXFx4REVBREJFRUYnOjpieXRlYSBBUyB4bWwpOworIHhtbGNhc3QgIAorLS0tLS0t LS0tLQorIERFQURCRUVGCisoMSByb3cpCisKK1NFVCB4bWxiaW5hcnkgVE8gYmFzZTY0Owor U0VMRUNUIHhtbGNhc3QoRSdcXHhERUFEQkVFRic6OmJ5dGVhIEFTIHhtbCk7CisgeG1sY2Fz dCAgCistLS0tLS0tLS0tCisgM3EyKzd3PT0KKygxIHJvdykKKworLS0gVGhlIEJZIFJFRiBh bmQgQlkgVkFMVUUgY2xhdXNlcyBhcmUgYWNjZXB0ZWQgYnV0IGlnbm9yZWQuCistLSBUaGlz IGNoZWNrcyBpZiB0aGUgcmVzdWx0cyBhcmUgaW5kZWVkIHRoZSBzYW1lIGFzIHdpdGhvdXQg dGhlIGNsYXVzZXMuCitTRUxFQ1QKKyAgeG1sY2FzdCgnZm9vJyBBUyB4bWwpOjp0ZXh0ID0g eG1sY2FzdCgnZm9vJyBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgnZm9vJyBB UyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnZm9vJyBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAor ICB4bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCkgPSB4bWxjYXN0KCdmb28nOjp4bWwgQVMg dGV4dCBCWSBSRUYpLAorICB4bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCkgPSB4bWxjYXN0 KCdmb28nOjp4bWwgQVMgdGV4dCBCWSBWQUxVRSk7CisgP2NvbHVtbj8gfCA/Y29sdW1uPyB8 ID9jb2x1bW4/IHwgP2NvbHVtbj8gCistLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0tCisgdCAgICAgICAgfCB0ICAgICAgICB8IHQgICAgICAgIHwgdAorKDEg cm93KQorCitTRUxFQ1QKKyAgeG1sY2FzdCg0MiBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCg0 MiBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCg0MiBBUyB4bWwpOjp0ZXh0ID0g eG1sY2FzdCg0MiBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCc0Mic6Onht bCBBUyBpbnQpID0geG1sY2FzdCgnNDInOjp4bWwgQVMgaW50IEJZIFJFRiksCisgIHhtbGNh c3QoJzQyJzo6eG1sIEFTIGludCkgPSB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnQgQlkgVkFM VUUpOworID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/IAorLS0t LS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHQgICAgICAgIHwg dCAgICAgICAgfCB0ICAgICAgICB8IHQKKygxIHJvdykKKworU0VMRUNUCisgIHhtbGNhc3Qo NDIuNzMgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIuNzMgQVMgeG1sIEJZIFJFRik6OnRl eHQsCisgIHhtbGNhc3QoNDIuNzMgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoNDIuNzMgQVMg eG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMgbnVtZXJp YykgPSB4bWxjYXN0KCc0Mi43Myc6OnhtbCBBUyBudW1lcmljIEJZIFJFRiksCisgIHhtbGNh c3QoJzQyLjczJzo6eG1sIEFTIG51bWVyaWMpID0geG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMg bnVtZXJpYyBCWSBWQUxVRSk7CisgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/IHwg P2NvbHVtbj8gCistLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0t CisgdCAgICAgICAgfCB0ICAgICAgICB8IHQgICAgICAgIHwgdAorKDEgcm93KQorCitTRUxF Q1QKKyAgeG1sY2FzdCgnMjAyNC0wOC0xNCc6OmRhdGUgQVMgeG1sKTo6dGV4dCA9IHhtbGNh c3QoJzIwMjQtMDgtMTQnOjpkYXRlIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0 KCcyMDI0LTA4LTE0Jzo6ZGF0ZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMjAyNC0wOC0x NCc6OmRhdGUgQVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnMjAyNC0wOC0x NCc6OnhtbCBBUyBkYXRlKSA9IHhtbGNhc3QoJzIwMjQtMDgtMTQnOjp4bWwgQVMgZGF0ZSBC WSBSRUYpLAorICB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6eG1sIEFTIGRhdGUpID0geG1sY2Fz dCgnMjAyNC0wOC0xNCc6OnhtbCBBUyBkYXRlIEJZIFZBTFVFKTsKKyA/Y29sdW1uPyB8ID9j b2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29sdW1uPyAKKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tKy0tLS0tLS0tLS0KKyB0ICAgICAgICB8IHQgICAgICAgIHwgdCAgICAgICAg fCB0CisoMSByb3cpCisKK1NFTEVDVAorICB4bWxjYXN0KCcxMjozMDo0NSc6OnRpbWUgd2l0 aG91dCB0aW1lIHpvbmUgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoJzEyOjMwOjQ1Jzo6dGlt ZSB3aXRob3V0IHRpbWUgem9uZSBBUyB4bWwgQlkgUkVGKTo6dGV4dCwKKyAgeG1sY2FzdCgn MTI6MzA6NDUnOjp0aW1lIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCk6OnRleHQgPSB4bWxj YXN0KCcxMjozMDo0NSc6OnRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQVMgeG1sIEJZIFZBTFVF KTo6dGV4dCwKKyAgeG1sY2FzdCgnMTI6MzA6NDUnOjp4bWwgQVMgdGltZSB3aXRob3V0IHRp bWUgem9uZSkgPSB4bWxjYXN0KCcxMjozMDo0NSc6OnhtbCBBUyB0aW1lIHdpdGhvdXQgdGlt ZSB6b25lIEJZIFJFRiksCisgIHhtbGNhc3QoJzEyOjMwOjQ1Jzo6eG1sIEFTIHRpbWUgd2l0 aG91dCB0aW1lIHpvbmUpID0geG1sY2FzdCgnMTI6MzA6NDUnOjp4bWwgQVMgdGltZSB3aXRo b3V0IHRpbWUgem9uZSBCWSBWQUxVRSk7CisgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1 bW4/IHwgP2NvbHVtbj8gCistLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0t LS0tLS0tCisgdCAgICAgICAgfCB0ICAgICAgICB8IHQgICAgICAgIHwgdAorKDEgcm93KQor CitTRUxFQ1QKKyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp0aW1lIHdpdGggdGltZSB6 b25lIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnRpbWUgd2l0 aCB0aW1lIHpvbmUgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzA5OjMwOjEw KzA2OjAwJzo6dGltZSB3aXRoIHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgn MDk6MzA6MTArMDY6MDAnOjp0aW1lIHdpdGggdGltZSB6b25lIEFTIHhtbCBCWSBWQUxVRSk6 OnRleHQsCisgIHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUgd2l0aCB0 aW1lIHpvbmUpID0geG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRo IHRpbWUgem9uZSBCWSBSRUYpLAorICB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnhtbCBB UyB0aW1lIHdpdGggdGltZSB6b25lKSA9IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1s IEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUgQlkgVkFMVUUpOworID9jb2x1bW4/IHwgP2NvbHVt bj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/IAorLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLS0rLS0tLS0tLS0tLQorIHQgICAgICAgIHwgdCAgICAgICAgfCB0ICAgICAgICB8IHQK KygxIHJvdykKKworU0VMRUNUCisgIHhtbGNhc3QoJzIwMDItMDUtMzAgMDk6MzA6MTArMDY6 MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3Qo JzIwMDItMDUtMzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUg QVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzIwMDItMDUtMzAgMDk6MzA6MTAr MDY6MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKTo6dGV4dCA9IHhtbGNh c3QoJzIwMDItMDUtMzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpv bmUgQVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMFQwOToz MDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUpID0geG1sY2Fz dCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0 aW1lIHpvbmUgQlkgUkVGKSwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjow MCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUpID0geG1sY2FzdCgnMjAwMi0w NS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUg QlkgVkFMVUUpOworID9jb2x1bW4/IHwgP2NvbHVtbj8gfCA/Y29sdW1uPyB8ID9jb2x1bW4/ IAorLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHQgICAg ICAgIHwgdCAgICAgICAgfCB0ICAgICAgICB8IHQKKygxIHJvdykKKworU0VMRUNUCisgIHht bGNhc3QoJzEgeWVhciAyIG1vbnMnOjppbnRlcnZhbCBBUyB4bWwpOjp0ZXh0ID0geG1sY2Fz dCgnMSB5ZWFyIDIgbW9ucyc6OmludGVydmFsIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4 bWxjYXN0KCcxIHllYXIgMiBtb25zJzo6aW50ZXJ2YWwgQVMgeG1sKTo6dGV4dCA9IHhtbGNh c3QoJzEgeWVhciAyIG1vbnMnOjppbnRlcnZhbCBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAor ICB4bWxjYXN0KCcxIHllYXIgMiBtb25zJzo6eG1sIEFTIGludGVydmFsKSA9IHhtbGNhc3Qo JzEgeWVhciAyIG1vbnMnOjp4bWwgQVMgaW50ZXJ2YWwgQlkgUkVGKSwKKyAgeG1sY2FzdCgn MSB5ZWFyIDIgbW9ucyc6OnhtbCBBUyBpbnRlcnZhbCkgPSB4bWxjYXN0KCcxIHllYXIgMiBt b25zJzo6eG1sIEFTIGludGVydmFsIEJZIFZBTFVFKTsKKyA/Y29sdW1uPyB8ID9jb2x1bW4/ IHwgP2NvbHVtbj8gfCA/Y29sdW1uPyAKKy0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0tKy0tLS0tLS0tLS0KKyB0ICAgICAgICB8IHQgICAgICAgIHwgdCAgICAgICAgfCB0Ciso MSByb3cpCisKK0NSRUFURSBWSUVXIHZpZXdfeG1sY2FzdF90b194bWwgQVMKK1NFTEVDVAor ICB4bWxjYXN0KE5VTEwgQVMgeG1sKSBBUyBjMSwKKyAgeG1sY2FzdCgnZm9vJyBBUyB4bWwp IEFTIGMyLAorICB4bWxjYXN0KCcnOjp0ZXh0IEFTIHhtbCkgQVMgYzMsCisgIHhtbGNhc3Qo TlVMTDo6dGV4dCBBUyB4bWwpIEFTIGM0LAorICB4bWxjYXN0KCcnOjp4bWwgQVMgdGV4dCkg QVMgYzUsCisgIHhtbGNhc3QoTlVMTDo6eG1sIEFTIHRleHQpIGM2LAorICB4bWxjYXN0KCdm b28gJiA8ImJhciI+Jzo6dGV4dCBBUyB4bWwpIEFTIGM3LAorICB4bWxjYXN0KCdmb28gJiA8 ImJhciI+Jzo6dmFyY2hhciBBUyB4bWwpIEFTIGM4LAorICB4bWxjYXN0KCdmb28gJiA8ImJh ciI+Jzo6bmFtZSBBUyB4bWwpIEFTIGM5LAorICB4bWxjYXN0KHhtbHRleHQoRSdmb28gJiA8 ImJhciI+XHInKSBBUyB0ZXh0KSBBUyBjMTAsCisgIHhtbGNhc3QoeG1sY2FzdChFJ2ZvbyAm IDwiYmFyIj5ccicgQVMgeG1sKSBBUyB0ZXh0KSBBUyBjMTEsCisgIHhtbGNhc3QodG9fZGF0 ZSgnMjkvMDUvMjAyNCcsJ2RkL21tL3l5eXknKSBBUyB4bWwpIEFTIGMxMiwKKyAgeG1sY2Fz dCgnMjAyNC0wNS0yOSAxMjowNDoxMC43MDM1ODUrMDInOjp0aW1lc3RhbXAgd2l0aCB0aW1l IHpvbmUgQVMgeG1sKSBBUyBjMTMsCisgIHhtbGNhc3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAu NzAzNTg1KzAyJzo6dGltZXN0YW1wIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCkgQVMgYzE0 LAorICB4bWxjYXN0KCcxIHllYXIgMiBtb250aHMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVz IDYgc2Vjb25kcyc6OmludGVydmFsIEFTIHhtbCkgQVMgYzE1LAorICB4bWxjYXN0KDQyNzM1 MzU0MiBBUyB4bWwpIEFTIGMxNiwKKyAgeG1sY2FzdCg0MjczNTM1NDIwMTYyMDIxIEFTIHht bCkgQVMgYzE3LAorICB4bWxjYXN0KDQyLjAwNzMxMjM0NTY3ODkxMCBBUyB4bWwpIEFTIGMx OCwKKyAgeG1sY2FzdCg0Mi4wMDczMTIzNDU2Nzg5MTA6OmRvdWJsZSBwcmVjaXNpb24gQVMg eG1sKSBBUyBjMTksCisgIHhtbGNhc3QodHJ1ZSBBUyB4bWwpIEFTIGMyMCwKKyAgeG1sY2Fz dChmYWxzZSBBUyB4bWwpIEFTIGMyMSwKKyAgeG1sY2FzdCg0MiA9IDczIEFTIHhtbCkgQVMg YzIyLAorICB4bWxjYXN0KDQyIDw+IDczIEFTIHhtbCkgQVMgYzIzLAorICB4bWxjYXN0KCcx MToxMToxMS41Jzo6dGltZSBBUyB4bWwpIEFTIGMyNCwKKyAgeG1sY2FzdCgnMTE6MTE6MTEu NSc6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKSBBUyBjMjU7Citcc3Ygdmlld194bWxj YXN0X3RvX3htbAorQ1JFQVRFIE9SIFJFUExBQ0UgVklFVyBwdWJsaWMudmlld194bWxjYXN0 X3RvX3htbCBBUworIFNFTEVDVCBYTUxDQVNUKE5VTEw6OnRleHQgQVMgeG1sKTo6eG1sIEFT IGMxLAorICAgIFhNTENBU1QoJ2Zvbyc6OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMyLAorICAg IFhNTENBU1QoJyc6OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMzLAorICAgIFhNTENBU1QoTlVM TDo6dGV4dCBBUyB4bWwpOjp4bWwgQVMgYzQsCisgICAgWE1MQ0FTVCgnJzo6eG1sIEFTIHRl eHQpOjp0ZXh0IEFTIGM1LAorICAgIFhNTENBU1QoTlVMTDo6eG1sIEFTIHRleHQpOjp0ZXh0 IEFTIGM2LAorICAgIFhNTENBU1QoJ2ZvbyAmIDwiYmFyIj4nOjp0ZXh0IEFTIHhtbCk6Onht bCBBUyBjNywKKyAgICBYTUxDQVNUKCdmb28gJiA8ImJhciI+Jzo6Y2hhcmFjdGVyIHZhcnlp bmcgQVMgeG1sKTo6eG1sIEFTIGM4LAorICAgIFhNTENBU1QoJ2ZvbyAmIDwiYmFyIj4nOjpu YW1lOjp0ZXh0IEFTIHhtbCk6OnhtbCBBUyBjOSwKKyAgICBYTUxDQVNUKHhtbHRleHQoJ2Zv byAmIDwiYmFyIj4KKyc6OnRleHQpIEFTIHRleHQpOjp0ZXh0IEFTIGMxMCwKKyAgICBYTUxD QVNUKFhNTENBU1QoJ2ZvbyAmIDwiYmFyIj4KKyc6OnRleHQgQVMgeG1sKTo6eG1sIEFTIHRl eHQpOjp0ZXh0IEFTIGMxMSwKKyAgICBYTUxDQVNUKHRvX2RhdGUoJzI5LzA1LzIwMjQnOjp0 ZXh0LCAnZGQvbW0veXl5eSc6OnRleHQpIEFTIHhtbCk6OnhtbCBBUyBjMTIsCisgICAgWE1M Q0FTVCgnV2VkIE1heSAyOSAwMzowNDoxMC43MDM1ODUgMjAyNCBQRFQnOjp0aW1lc3RhbXAg d2l0aCB0aW1lIHpvbmUgQVMgeG1sKTo6eG1sIEFTIGMxMywKKyAgICBYTUxDQVNUKCdXZWQg TWF5IDI5IDEyOjA0OjEwLjcwMzU4NSAyMDI0Jzo6dGltZXN0YW1wIHdpdGhvdXQgdGltZSB6 b25lIEFTIHhtbCk6OnhtbCBBUyBjMTQsCisgICAgWE1MQ0FTVCgnQCAxIHllYXIgMiBtb25z IDMgZGF5cyA0IGhvdXJzIDUgbWlucyA2IHNlY3MnOjppbnRlcnZhbCBBUyB4bWwpOjp4bWwg QVMgYzE1LAorICAgIFhNTENBU1QoNDI3MzUzNTQyOjp0ZXh0IEFTIHhtbCk6OnhtbCBBUyBj MTYsCisgICAgWE1MQ0FTVCgnNDI3MzUzNTQyMDE2MjAyMSc6OmJpZ2ludDo6dGV4dCBBUyB4 bWwpOjp4bWwgQVMgYzE3LAorICAgIFhNTENBU1QoNDIuMDA3MzEyMzQ1Njc4OTEwOjp0ZXh0 IEFTIHhtbCk6OnhtbCBBUyBjMTgsCisgICAgWE1MQ0FTVCg0Mi4wMDczMTIzNDU2Nzg5MTA6 OmRvdWJsZSBwcmVjaXNpb246OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMxOSwKKyAgICBYTUxD QVNUKHRydWUgQVMgeG1sKTo6eG1sIEFTIGMyMCwKKyAgICBYTUxDQVNUKGZhbHNlIEFTIHht bCk6OnhtbCBBUyBjMjEsCisgICAgWE1MQ0FTVCg0MiA9IDczIEFTIHhtbCk6OnhtbCBBUyBj MjIsCisgICAgWE1MQ0FTVCg0MiA8PiA3MyBBUyB4bWwpOjp4bWwgQVMgYzIzLAorICAgIFhN TENBU1QoJzExOjExOjExLjUnOjp0aW1lIHdpdGhvdXQgdGltZSB6b25lOjp0ZXh0IEFTIHht bCk6OnhtbCBBUyBjMjQsCisgICAgWE1MQ0FTVCgnMTE6MTE6MTEuNS0wOCc6OnRpbWUgd2l0 aCB0aW1lIHpvbmU6OnRleHQgQVMgeG1sKTo6eG1sIEFTIGMyNQorU0VMRUNUICogRlJPTSB2 aWV3X3htbGNhc3RfdG9feG1sOworIGMxIHwgYzIgIHwgYzMgfCBjNCB8IGM1IHwgYzYgfCAg ICAgICAgICAgICAgICBjNyAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICBjOCAg ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICBjOSAgICAgICAgICAgICAgICAgfCAg ICAgICBjMTAgICAgICAgfCAgICAgICBjMTEgICAgICAgfCAgICBjMTIgICAgIHwgICAgICAg ICAgICAgICBjMTMgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIGMxNCAgICAgICAgICAg ICB8ICAgICAgYzE1ICAgICAgIHwgICAgYzE2ICAgIHwgICAgICAgYzE3ICAgICAgICB8ICAg ICAgICBjMTggICAgICAgICB8ICAgICAgICBjMTkgICAgICAgIHwgYzIwICB8ICBjMjEgIHwg IGMyMiAgfCBjMjMgIHwgICAgYzI0ICAgICB8ICAgICAgYzI1ICAgICAgCistLS0tKy0tLS0t Ky0tLS0rLS0tLSstLS0tKy0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0KKyAgICB8IGZvbyB8ICAgIHwgICAgfCAgICB8ICAgIHwgZm9vICZhbXA7 ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7IHwgZm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVv dDsmZ3Q7IHwgZm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7IHwgZm9vICYgPCJi YXIiPlxyIHwgZm9vICYgPCJiYXIiPlxyIHwgMjAyNC0wNS0yOSB8IDIwMjQtMDUtMjlUMDM6 MDQ6MTAuNzAzNTg1LTA3OjAwIHwgMjAyNC0wNS0yOVQxMjowNDoxMC43MDM1ODUgfCBQMVky TTNEVDRINU02UyB8IDQyNzM1MzU0MiB8IDQyNzM1MzU0MjAxNjIwMjEgfCA0Mi4wMDczMTIz NDU2Nzg5MTAgfCA0Mi4wMDczMTIzNDU2Nzg5MSB8IHRydWUgfCBmYWxzZSB8IGZhbHNlIHwg dHJ1ZSB8IDExOjExOjExLjUgfCAxMToxMToxMS41LTA4CisoMSByb3cpCisKK0NSRUFURSBW SUVXIHZpZXdfeG1sY2FzdF9mcm9tX3htbCBBUworU0VMRUNUCisgIHhtbGNhc3QoJ1AxWTJN M0RUNEg1TTZTJzo6eG1sIEFTIGludGVydmFsKSBBUyBjMSwKKyAgeG1sY2FzdCgnMSB5ZWFy IDIgbW9ucyAzIGRheXMgNCBob3VycyA1IG1pbnV0ZXMgNiBzZWNvbmRzJzo6eG1sIEFTIGlu dGVydmFsKSBBUyBjMiwKKyAgeG1sY2FzdCgnMjAwMi0wOS0yNCc6OnhtbCBBUyBkYXRlKSBB UyBjMywKKyAgeG1sY2FzdCgnMjAwMi0wOS0yNCswNjowMCc6OnhtbCBBUyBkYXRlKSBBUyBj NCwKKyAgeG1sY2FzdCgnMDk6MzA6MTBaJzo6eG1sIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUp IEFTIGM1LAorICB4bWxjYXN0KCcwOTozMDoxMC0wNjowMCc6OnhtbCBBUyB0aW1lIHdpdGgg dGltZSB6b25lKSBBUyBjNiwKKyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMg dGltZSB3aXRoIHRpbWUgem9uZSkgQVMgYzcsCisgIHhtbGNhc3QoJzIwMDItMDUtMzBUMDk6 MzA6MTBaJzo6eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgQVMgYzgsCisgIHht bGNhc3QoJzIwMDItMDUtMzBUMDk6MzA6MTAtMDY6MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdp dGggdGltZSB6b25lKSBBUyBjOSwKKyAgeG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCsw NjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUpIEFTIGMxMCwKKyAgeG1s Y2FzdCgnZm9vIGJhcic6OnhtbCBBUyB0ZXh0KSBBUyBjMTEsCisgIHhtbGNhc3QoJyAgICAg ICBmb28gYmFyICAgICAnOjp4bWwgQVMgdmFyY2hhcikgQVMgYzEyLAorICB4bWxjYXN0KCdm b28gJmFtcDsgJmx0OyZxdW90O2JhciZxdW90OyZndDsnOjp4bWwgQVMgdGV4dCkgQVMgYzEz LAorICB4bWxjYXN0KCc0Mi43MzEyMzQ1Njc4OTEwJzo6eG1sIEFTIG51bWVyaWMpIEFTIGMx NCwKKyAgeG1sY2FzdCgnKzQyLjczMTIzNDU2Nzg5MTAnOjp4bWwgQVMgbnVtZXJpYykgQVMg YzE1LAorICB4bWxjYXN0KCctNDIuNzMxMjM0NTY3ODkxMCc6OnhtbCBBUyBudW1lcmljKSBB UyBjMTYsCisgIHhtbGNhc3QoJzQyJzo6eG1sIEFTIGludGVnZXIpIEFTIGMxNywKKyAgeG1s Y2FzdCgnKzQyJzo6eG1sIEFTIGludGVnZXIpIEFTIGMxOCwKKyAgeG1sY2FzdCgnLTQyJzo6 eG1sIEFTIGludGVnZXIpIEFTIGMxOSwKKyAgeG1sY2FzdCgnNDI3MzUzNTQyMDE2MjAyMSc6 OnhtbCBBUyBiaWdpbnQpIEFTIGMyMCwKKyAgeG1sY2FzdCgnKzQyNzM1MzU0MjAxNjIwMjEn Ojp4bWwgQVMgYmlnaW50KSBBUyBjMjEsCisgIHhtbGNhc3QoJy00MjczNTM1NDIwMTYyMDIx Jzo6eG1sIEFTIGJpZ2ludCkgQVMgYzIyLAorICB4bWxjYXN0KCd0cnVlJzo6eG1sIEFTIGJv b2xlYW4pIEFTIGMyMywKKyAgeG1sY2FzdCgnZmFsc2UnOjp4bWwgQVMgYm9vbGVhbikgQVMg YzI0LAorICB4bWxjYXN0KCcnOjp4bWwgQVMgY2hhcmFjdGVyIHZhcnlpbmcpIEFTIGMyNSwK KyAgeG1sY2FzdChOVUxMOjp4bWwgQVMgY2hhcmFjdGVyIHZhcnlpbmcpIEFTIGMyNjsKK1xz diB2aWV3X3htbGNhc3RfZnJvbV94bWwKK0NSRUFURSBPUiBSRVBMQUNFIFZJRVcgcHVibGlj LnZpZXdfeG1sY2FzdF9mcm9tX3htbCBBUworIFNFTEVDVCBYTUxDQVNUKCdQMVkyTTNEVDRI NU02Uyc6OnhtbCBBUyBpbnRlcnZhbCk6OmludGVydmFsIEFTIGMxLAorICAgIFhNTENBU1Qo JzEgeWVhciAyIG1vbnMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYgc2Vjb25kcyc6Onht bCBBUyBpbnRlcnZhbCk6OmludGVydmFsIEFTIGMyLAorICAgIFhNTENBU1QoJzIwMDItMDkt MjQnOjp4bWwgQVMgZGF0ZSk6OmRhdGUgQVMgYzMsCisgICAgWE1MQ0FTVCgnMjAwMi0wOS0y NCswNjowMCc6OnhtbCBBUyBkYXRlKTo6ZGF0ZSBBUyBjNCwKKyAgICBYTUxDQVNUKCcwOToz MDoxMFonOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSk6OnRpbWUgd2l0aCB0aW1lIHpv bmUgQVMgYzUsCisgICAgWE1MQ0FTVCgnMDk6MzA6MTAtMDY6MDAnOjp4bWwgQVMgdGltZSB3 aXRoIHRpbWUgem9uZSk6OnRpbWUgd2l0aCB0aW1lIHpvbmUgQVMgYzYsCisgICAgWE1MQ0FT VCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSk6OnRpbWUg d2l0aCB0aW1lIHpvbmUgQVMgYzcsCisgICAgWE1MQ0FTVCgnMjAwMi0wNS0zMFQwOTozMDox MFonOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGgg dGltZSB6b25lIEFTIGM4LAorICAgIFhNTENBU1QoJzIwMDItMDUtMzBUMDk6MzA6MTAtMDY6 MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGgg dGltZSB6b25lIEFTIGM5LAorICAgIFhNTENBU1QoJzIwMDItMDUtMzBUMDk6MzA6MTArMDY6 MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6b25lKTo6dGltZXN0YW1wIHdpdGgg dGltZSB6b25lIEFTIGMxMCwKKyAgICBYTUxDQVNUKCdmb28gYmFyJzo6eG1sIEFTIHRleHQp Ojp0ZXh0IEFTIGMxMSwKKyAgICBYTUxDQVNUKCcgICAgICAgZm9vIGJhciAgICAgJzo6eG1s IEFTIGNoYXJhY3RlciB2YXJ5aW5nKTo6Y2hhcmFjdGVyIHZhcnlpbmcgQVMgYzEyLAorICAg IFhNTENBU1QoJ2ZvbyAmYW1wOyAmbHQ7JnF1b3Q7YmFyJnF1b3Q7Jmd0Oyc6OnhtbCBBUyB0 ZXh0KTo6dGV4dCBBUyBjMTMsCisgICAgWE1MQ0FTVCgnNDIuNzMxMjM0NTY3ODkxMCc6Onht bCBBUyBudW1lcmljKTo6bnVtZXJpYyBBUyBjMTQsCisgICAgWE1MQ0FTVCgnKzQyLjczMTIz NDU2Nzg5MTAnOjp4bWwgQVMgbnVtZXJpYyk6Om51bWVyaWMgQVMgYzE1LAorICAgIFhNTENB U1QoJy00Mi43MzEyMzQ1Njc4OTEwJzo6eG1sIEFTIG51bWVyaWMpOjpudW1lcmljIEFTIGMx NiwKKyAgICBYTUxDQVNUKCc0Mic6OnhtbCBBUyBpbnRlZ2VyKTo6aW50ZWdlciBBUyBjMTcs CisgICAgWE1MQ0FTVCgnKzQyJzo6eG1sIEFTIGludGVnZXIpOjppbnRlZ2VyIEFTIGMxOCwK KyAgICBYTUxDQVNUKCctNDInOjp4bWwgQVMgaW50ZWdlcik6OmludGVnZXIgQVMgYzE5LAor ICAgIFhNTENBU1QoJzQyNzM1MzU0MjAxNjIwMjEnOjp4bWwgQVMgYmlnaW50KTo6YmlnaW50 IEFTIGMyMCwKKyAgICBYTUxDQVNUKCcrNDI3MzUzNTQyMDE2MjAyMSc6OnhtbCBBUyBiaWdp bnQpOjpiaWdpbnQgQVMgYzIxLAorICAgIFhNTENBU1QoJy00MjczNTM1NDIwMTYyMDIxJzo6 eG1sIEFTIGJpZ2ludCk6OmJpZ2ludCBBUyBjMjIsCisgICAgWE1MQ0FTVCgndHJ1ZSc6Onht bCBBUyBib29sZWFuKTo6Ym9vbGVhbiBBUyBjMjMsCisgICAgWE1MQ0FTVCgnZmFsc2UnOjp4 bWwgQVMgYm9vbGVhbik6OmJvb2xlYW4gQVMgYzI0LAorICAgIFhNTENBU1QoJyc6OnhtbCBB UyBjaGFyYWN0ZXIgdmFyeWluZyk6OmNoYXJhY3RlciB2YXJ5aW5nIEFTIGMyNSwKKyAgICBY TUxDQVNUKE5VTEw6OnhtbCBBUyBjaGFyYWN0ZXIgdmFyeWluZyk6OmNoYXJhY3RlciB2YXJ5 aW5nIEFTIGMyNgorU0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3RfZnJvbV94bWw7CisgICAg ICAgICAgICAgICAgICAgICAgYzEgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICBjMiAgICAgICAgICAgICAgICAgICAgICB8ICAgICBjMyAgICAgfCAgICAg YzQgICAgIHwgICAgIGM1ICAgICAgfCAgICAgYzYgICAgICB8ICAgICBjNyAgICAgIHwgICAg ICAgICAgICAgIGM4ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICBjOSAgICAgICAgICAg ICAgfCAgICAgICAgICAgICBjMTAgICAgICAgICAgICAgIHwgICBjMTEgICB8ICAgICAgICAg YzEyICAgICAgICAgfCAgICAgIGMxMyAgICAgIHwgICAgICAgYzE0ICAgICAgICB8ICAgICAg IGMxNSAgICAgICAgfCAgICAgICAgYzE2ICAgICAgICB8IGMxNyB8IGMxOCB8IGMxOSB8ICAg ICAgIGMyMCAgICAgICAgfCAgICAgICBjMjEgICAgICAgIHwgICAgICAgIGMyMiAgICAgICAg fCBjMjMgfCBjMjQgfCBjMjUgfCBjMjYgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tKy0tLS0tKy0tLS0tKy0tLS0t CisgQCAxIHllYXIgMiBtb25zIDMgZGF5cyA0IGhvdXJzIDUgbWlucyA2IHNlY3MgfCBAIDEg eWVhciAyIG1vbnMgMyBkYXlzIDQgaG91cnMgNSBtaW5zIDYgc2VjcyB8IDA5LTI0LTIwMDIg fCAwOS0yNC0yMDAyIHwgMDk6MzA6MTArMDAgfCAwOTozMDoxMC0wNiB8IDA5OjMwOjEwKzA2 IHwgVGh1IE1heSAzMCAwMjozMDoxMCAyMDAyIFBEVCB8IFRodSBNYXkgMzAgMDg6MzA6MTAg MjAwMiBQRFQgfCBXZWQgTWF5IDI5IDIwOjMwOjEwIDIwMDIgUERUIHwgZm9vIGJhciB8ICAg ICAgICBmb28gYmFyICAgICAgfCBmb28gJiA8ImJhciI+IHwgNDIuNzMxMjM0NTY3ODkxMCB8 IDQyLjczMTIzNDU2Nzg5MTAgfCAtNDIuNzMxMjM0NTY3ODkxMCB8ICA0MiB8ICA0MiB8IC00 MiB8IDQyNzM1MzU0MjAxNjIwMjEgfCA0MjczNTM1NDIwMTYyMDIxIHwgLTQyNzM1MzU0MjAx NjIwMjEgfCB0ICAgfCBmICAgfCAgICAgfCAKKygxIHJvdykKKwpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwveG1sLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3htbC5z cWwKaW5kZXggYmFjMDM4OGFjMS4uZWVkOTI5OTA4NiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qv cmVncmVzcy9zcWwveG1sLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC94bWwuc3Fs CkBAIC02NzUsMyArNjc1LDI4MSBAQCBTRUxFQ1QgeG1sdGV4dCgnICAnKTsKIFNFTEVDVCB4 bWx0ZXh0KCdmb28gYCRfLSs/PSpeJSF8L1woKVtde30nKTsKIFNFTEVDVCB4bWx0ZXh0KCdm b28gJiA8ImJhciI+Jyk7CiBTRUxFQ1QgeG1sdGV4dCgneCd8fCAnPFA+NzM8L1A+Jzo6eG1s IHx8IC40MiB8fCB0cnVlIHx8ICdqJzo6Y2hhcik7CisKKy0tIGZvciB4bWxjYXN0KCkgdGVz dHMKK0lOU0VSVCBJTlRPIHhtbHRlc3QKKyBWQUxVRVMgKDQyLAorJzw/eG1sIHZlcnNpb249 IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+CisgPHhtbGNhc3Q+CisgIDxwZXJpb2QxPlAxWTJN M0RUNEg1TTZTPC9wZXJpb2QxPgorICA8cGVyaW9kMj4xIHllYXIgMiBtb25zIDMgZGF5cyA0 IGhvdXJzIDUgbWludXRlcyA2IHNlY29uZHM8L3BlcmlvZDI+CisgIDxkYXRlMT4yMDAyLTA5 LTI0PC9kYXRlMT4KKyAgPGRhdGUyPjIwMDItMDktMjQrMDY6MDA8L2RhdGUyPgorICA8dGlt ZT4wOTozMDoxMC41PC90aW1lPgorICA8dGltZV90ejE+MDk6MzA6MTBaPC90aW1lX3R6MT4K KyAgPHRpbWVfdHoyPjA5OjMwOjEwLTA2OjAwPC90aW1lX3R6Mj4KKyAgPHRpbWVfdHozPjA5 OjMwOjEwKzA2OjAwPC90aW1lX3R6Mz4KKyAgPHRpbWVzdGFtcDE+MjAwMi0wNS0zMFQwOTow MDowMDwvdGltZXN0YW1wMT4KKyAgPHRpbWVzdGFtcDI+MjAwMi0wNS0zMFQwOTozMDoxMC41 PC90aW1lc3RhbXAyPgorICA8dGltZXN0YW1wX3R6MT4yMDAyLTA1LTMwVDA5OjMwOjEwWjwv dGltZXN0YW1wX3R6MT4KKyAgPHRpbWVzdGFtcF90ejI+MjAwMi0wNS0zMFQwOTozMDoxMC0w NjowMDwvdGltZXN0YW1wX3R6Mj4KKyAgPHRpbWVzdGFtcF90ejM+MjAwMi0wNS0zMFQwOToz MDoxMCswNjowMDwvdGltZXN0YW1wX3R6Mz4KKyAgPHRleHQxPmZvbyBiYXI8L3RleHQxPgor ICA8dGV4dDI+ICAgICAgIGZvbyBiYXIgICAgIDwvdGV4dDI+CisgIDx0ZXh0Mz5mb28gJmFt cDsgJmx0OyZxdW90O2JhciZxdW90OyZndDs8L3RleHQzPgorICA8ZGVjaW1hbDE+NDIuNzMx MjM0NTY3ODkxMDwvZGVjaW1hbDE+CisgIDxkZWNpbWFsMj4rNDIuNzMxMjM0NTY3ODkxMDwv ZGVjaW1hbDI+CisgIDxkZWNpbWFsMz4tNDIuNzMxMjM0NTY3ODkxMDwvZGVjaW1hbDM+Cisg IDxpbnRlZ2VyMT40MjwvaW50ZWdlcjE+CisgIDxpbnRlZ2VyMj4rNDI8L2ludGVnZXIyPgor ICA8aW50ZWdlcjM+LTQyPC9pbnRlZ2VyMz4KKyAgPGxvbmcxPjQyNzM1MzU0MjAxNjIwMjE8 L2xvbmcxPgorICA8bG9uZzI+KzQyNzM1MzU0MjAxNjIwMjE8L2xvbmcyPgorICA8bG9uZzM+ LTQyNzM1MzU0MjAxNjIwMjE8L2xvbmczPgorICA8Ym9vbDEgYXR0PSJ0cnVlIj40MjwvYm9v bDE+CisgIDxib29sMiBhdHQ9ImZhbHNlIj43MzwvYm9vbDI+CisgIDxlbXB0eT48L2VtcHR5 PgorIDwveG1sY2FzdD4nOjp4bWwKKyk7CisKKy0tIFRoaXMgcHJldmVudHMgdGhlIHhtbGNh c3QgcmVncmVzc2lvbiB0ZXN0cyBmcm9tIGZhaWxpbmcgaWYgdGhlIHN5c3RlbSdzIHRpbWV6 b25lIGhhcyBiZWVuIGNoYW5nZWQuCitTRVQgdGltZXpvbmUgVE8gJ0FtZXJpY2EvTG9zX0Fu Z2VsZXMnOworCistLSB4bWxjYXN0IGV4Y2VwdGlvbnMKK1xzZXQgVkVSQk9TSVRZIHRlcnNl CitTRUxFQ1QgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFT IHRleHRbXSkgRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CitTRUxFQ1QgeG1sY2FzdCgo eHBhdGgoJy8vdGV4dDEvaW50ZWdlcjEoKScsIGRhdGEpKVsxXSBBUyBpbnRbXSkgRlJPTSB4 bWx0ZXN0IFdIRVJFIGlkID0gNDI7CitTRUxFQ1QgeG1sY2FzdChOVUxMIEFTIHRleHQpOwor U0VMRUNUIHhtbGNhc3QoJ2Zvbyc6OnRleHQgQVMgdmFyY2hhcik7CitTRUxFQ1QgeG1sY2Fz dCg0MiBBUyB0ZXh0KTsKK1NFTEVDVCB4bWxjYXN0KGFycmF5Wydmb28nLCdiYXInXSBBUyB4 bWwpOworXHNldCBWRVJCT1NJVFkgZGVmYXVsdAorCistLSB4bWxjYXN0IHRlc3RzIGZvciAi WE1MIHRvIG5vbi1YTUwiIGV4cHJlc3Npb25zCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgo Jy8vZGF0ZTEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRhdGUpLCBwZ190eXBlb2YoeG1sY2Fz dCgoeHBhdGgoJy8vZGF0ZTEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRhdGUpKSwKKyAgeG1s Y2FzdCgoeHBhdGgoJy8vZGF0ZTIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRhdGUpLCBwZ190 eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGF0ZTIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGRh dGUpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisKK1NFTEVDVAorICB4bWxjYXN0 KCh4cGF0aCgnLy9wZXJpb2QxL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnRlcnZhbCksIHBn X3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9wZXJpb2QxL3RleHQoKScsIGRhdGEpKVsxXSBB UyBpbnRlcnZhbCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9wZXJpb2QyL3RleHQoKScsIGRh dGEpKVsxXSBBUyBpbnRlcnZhbCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9wZXJp b2QyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnRlcnZhbCkpCitGUk9NIHhtbHRlc3QgV0hF UkUgaWQgPSA0MjsKKworU0VMRUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RpbWUvdGV4dCgp JywgZGF0YSkpWzFdIEFTIHRpbWUpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGlt ZS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90 aW1lX3R6MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBn X3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6MS90ZXh0KCknLCBkYXRhKSlbMV0g QVMgdGltZSB3aXRoIHRpbWUgem9uZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6 Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVv Zih4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGlt ZSB3aXRoIHRpbWUgem9uZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90aW1lX3R6My90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRoIHRpbWUgem9uZSksIHBnX3R5cGVvZih4bWxj YXN0KCh4cGF0aCgnLy90aW1lX3R6My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGltZSB3aXRo IHRpbWUgem9uZSkpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKworU0VMRUNUCisg IHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSwg cGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQoKScsIGRhdGEpKVsxXSBB UyB0ZXh0KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsx XSBBUyB0ZXh0KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScs IGRhdGEpKVsxXSBBUyB0ZXh0KSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQzL3RleHQo KScsIGRhdGEpKVsxXSBBUyB0ZXh0KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL3Rl eHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyB0ZXh0KSkKK0ZST00geG1sdGVzdCBXSEVSRSBp ZCA9IDQyOworCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIHZhcmNoYXIpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4 dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpKSwKKyAgeG1sY2FzdCgoeHBhdGgo Jy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpLCBwZ190eXBlb2YoeG1s Y2FzdCgoeHBhdGgoJy8vdGV4dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNoYXIpKSwK KyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHZhcmNo YXIpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkp WzFdIEFTIHZhcmNoYXIpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisKK1NFTEVD VAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgbmFt ZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCknLCBkYXRhKSlb MV0gQVMgbmFtZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRh KSlbMV0gQVMgbmFtZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0Mi90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgbmFtZSkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90 ZXh0KCknLCBkYXRhKSlbMV0gQVMgbmFtZSksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgn Ly90ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgbmFtZSkpCitGUk9NIHhtbHRlc3QgV0hF UkUgaWQgPSA0MjsKKworU0VMRUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQxL3RleHQo KScsIGRhdGEpKVsxXSBBUyBicGNoYXIpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8v dGV4dDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hhcikpLAorICB4bWxjYXN0KCh4cGF0 aCgnLy90ZXh0Mi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYnBjaGFyKSwgcGdfdHlwZW9mKHht bGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBicGNoYXIpKSwK KyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJwY2hh ciksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0My90ZXh0KCknLCBkYXRhKSlb MV0gQVMgYnBjaGFyKSkKK0ZST00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworCitTRUxFQ1QK KyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51 bWVyaWMpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDEvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIG51bWVyaWMpKSwKKyAgeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDIv dGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBh dGgoJy8vZGVjaW1hbDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMpKSwKKyAgeG1s Y2FzdCgoeHBhdGgoJy8vZGVjaW1hbDMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIG51bWVyaWMp LCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vZGVjaW1hbDMvdGV4dCgpJywgZGF0YSkp WzFdIEFTIG51bWVyaWMpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0gNDI7CisKK1NFTEVD VAorICB4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMg ZG91YmxlIHByZWNpc2lvbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFs MS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbikpLAorICB4bWxjYXN0 KCh4cGF0aCgnLy9kZWNpbWFsMi90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNp c2lvbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMi90ZXh0KCknLCBk YXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbikpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9k ZWNpbWFsMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMgZG91YmxlIHByZWNpc2lvbiksIHBnX3R5 cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9kZWNpbWFsMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMg ZG91YmxlIHByZWNpc2lvbikpCitGUk9NIHhtbHRlc3QgV0hFUkUgaWQgPSA0MjsKKworU0VM RUNUCisgIHhtbGNhc3QoKHhwYXRoKCcvL2ludGVnZXIxL3RleHQoKScsIGRhdGEpKVsxXSBB UyBpbnQpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vaW50ZWdlcjEvdGV4dCgpJywg ZGF0YSkpWzFdIEFTIGludCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9pbnRlZ2VyMi90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgaW50KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2lu dGVnZXIyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBpbnQpKSwKKyAgeG1sY2FzdCgoeHBhdGgo Jy8vaW50ZWdlcjMvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGludCksIHBnX3R5cGVvZih4bWxj YXN0KCh4cGF0aCgnLy9pbnRlZ2VyMy90ZXh0KCknLCBkYXRhKSlbMV0gQVMgaW50KSkKK0ZS T00geG1sdGVzdCBXSEVSRSBpZCA9IDQyOworCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgo Jy8vbG9uZzEvdGV4dCgpJywgZGF0YSkpWzFdIEFTIGJpZ2ludCksIHBnX3R5cGVvZih4bWxj YXN0KCh4cGF0aCgnLy9sb25nMS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgYmlnaW50KSksCisg IHhtbGNhc3QoKHhwYXRoKCcvL2xvbmcyL3RleHQoKScsIGRhdGEpKVsxXSBBUyBiaWdpbnQp LCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vbG9uZzIvdGV4dCgpJywgZGF0YSkpWzFd IEFTIGJpZ2ludCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy9sb25nMy90ZXh0KCknLCBkYXRh KSlbMV0gQVMgYmlnaW50KSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhwYXRoKCcvL2xvbmczL3Rl eHQoKScsIGRhdGEpKVsxXSBBUyBiaWdpbnQpKQorRlJPTSB4bWx0ZXN0IFdIRVJFIGlkID0g NDI7CisKK1NFTEVDVAorICB4bWxjYXN0KCh4cGF0aCgnLy9ib29sMS9AYXR0JywgZGF0YSkp WzFdIEFTIGJvb2xlYW4pLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vYm9vbDEvQGF0 dCcsIGRhdGEpKVsxXSBBUyBib29sZWFuKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL2Jvb2wy L0BhdHQnLCBkYXRhKSlbMV0gQVMgYm9vbGVhbiksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0 aCgnLy9ib29sMS9AYXR0JywgZGF0YSkpWzFdIEFTIGJvb2xlYW4pKQorRlJPTSB4bWx0ZXN0 IFdIRVJFIGlkID0gNDI7CisKK1NFTEVDVCB4bWxjYXN0KCh4cGF0aCgnLy9lbXB0eS90ZXh0 KCknLCBkYXRhKSlbMV0gQVMgdGV4dCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy9l bXB0eS90ZXh0KCknLCBkYXRhKSlbMV0gQVMgdGV4dCkpCitGUk9NIHhtbHRlc3QgV0hFUkUg aWQgPSA0MjsKKworLS0geG1sY2FzdCB0ZXN0cyBmb3IgIlhNTCB0byBYTUwiIGV4cHJlc3Np b25zCitTRUxFQ1QKKyAgeG1sY2FzdCgoeHBhdGgoJy8vdGV4dDEvdGV4dCgpJywgZGF0YSkp WzFdIEFTIHhtbCksIHBnX3R5cGVvZih4bWxjYXN0KCh4cGF0aCgnLy90ZXh0MS90ZXh0KCkn LCBkYXRhKSlbMV0gQVMgeG1sKSksCisgIHhtbGNhc3QoKHhwYXRoKCcvL3RleHQyL3RleHQo KScsIGRhdGEpKVsxXSBBUyB4bWwpLCBwZ190eXBlb2YoeG1sY2FzdCgoeHBhdGgoJy8vdGV4 dDIvdGV4dCgpJywgZGF0YSkpWzFdIEFTIHhtbCkpLAorICB4bWxjYXN0KCh4cGF0aCgnLy90 ZXh0My90ZXh0KCknLCBkYXRhKSlbMV0gQVMgeG1sKSwgcGdfdHlwZW9mKHhtbGNhc3QoKHhw YXRoKCcvL3RleHQzL3RleHQoKScsIGRhdGEpKVsxXSBBUyB4bWwpKQorRlJPTSB4bWx0ZXN0 IFdIRVJFIGlkID0gNDI7CisKKy0tIHhtbGNhc3QgdGVzdHMgZm9yICJub24tWE1MIHRvIFhN TCIgZXhwcmVzc2lvbnMKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KE5V TEwgQVMgeG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3Qo J2ZvbycgQVMgeG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNh c3QoJyc6OnRleHQgQVMgeG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9N IHhtbGNhc3QoTlVMTDo6dGV4dCBBUyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlwZW9m KGopIEZST00geG1sY2FzdCgnJzo6eG1sIEFTIHRleHQpIHQoaik7CitTRUxFQ1QgaiwgcGdf dHlwZW9mKGopIEZST00geG1sY2FzdChOVUxMOjp4bWwgQVMgdGV4dCkgdChqKTsKK1NFTEVD VCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCdmb28gJiA8ImJhciI+Jzo6dGV4dCBB UyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnZm9v ICYgPCJiYXIiPic6OnZhcmNoYXIgQVMgeG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVv ZihqKSBGUk9NIHhtbGNhc3QoJ2ZvbyAmIDwiYmFyIj4nOjpuYW1lIEFTIHhtbCkgdChqKTsK K1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KHhtbHRleHQoRSdmb28gJiA8 ImJhciI+XHInKSBBUyB0ZXh0KSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9N IHhtbGNhc3QoeG1sY2FzdChFJ2ZvbyAmIDwiYmFyIj5ccicgQVMgeG1sKSBBUyB0ZXh0KSB0 KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QodG9fZGF0ZSgnMjkv MDUvMjAyNCcsJ2RkL21tL3l5eXknKSBBUyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlw ZW9mKGopIEZST00geG1sY2FzdCgnMjAyNC0wNS0yOSAxMjowNDoxMC43MDM1ODUrMDInOjp0 aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5 cGVvZihqKSBGUk9NIHhtbGNhc3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6 dGltZXN0YW1wIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCkgdChqKTsKK1NFTEVDVCBqLCBw Z190eXBlb2YoaikgRlJPTSB4bWxjYXN0KCcxIHllYXIgMiBtb250aHMgMyBkYXlzIDQgaG91 cnMgNSBtaW51dGVzIDYgc2Vjb25kcyc6OmludGVydmFsIEFTIHhtbCkgdChqKTsKK1NFTEVD VCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQyNzM1MzU0MiBBUyB4bWwpIHQoaik7 CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCg0MjczNTM1NDIwMTYyMDIx IEFTIHhtbCkgdChqKTsKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxjYXN0KDQy LjAwNzMxMjM0NTY3ODkxMCBBUyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGop IEZST00geG1sY2FzdCg0Mi4wMDczMTIzNDU2Nzg5MTA6OmRvdWJsZSBwcmVjaXNpb24gQVMg eG1sKSB0KGopOworU0VMRUNUIGosIHBnX3R5cGVvZihqKSBGUk9NIHhtbGNhc3QodHJ1ZSBB UyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdChmYWxz ZSBBUyB4bWwpIHQoaik7CitTRUxFQ1QgaiwgcGdfdHlwZW9mKGopIEZST00geG1sY2FzdCg0 MiA9IDczIEFTIHhtbCkgdChqKTsKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJPTSB4bWxj YXN0KDQyIDw+IDczIEFTIHhtbCkgdChqKTsKK1NFTEVDVCBqLCBwZ190eXBlb2YoaikgRlJP TSB4bWxjYXN0KCcxMToxMToxMS41Jzo6dGltZSBBUyB4bWwpIHQoaik7CitTRUxFQ1Qgaiwg cGdfdHlwZW9mKGopIEZST00geG1sY2FzdCgnMTE6MTE6MTEuNSc6OnRpbWUgd2l0aCB0aW1l IHpvbmUgQVMgeG1sKSB0KGopOworCistLSBDb252ZXJ0IGFuIFhNTCBzdHJpbmcgdG8gYnl0 ZWEgYW5kIGJhY2sgdG8geG1sCitTRUxFQ1QgeG1sY2FzdChjb252ZXJ0X2Zyb20oeG1sY2Fz dCgnJmx0OyZxdW90O2ZvbyZhbXA7YmFyJnF1b3Q7Jmd0Oyc6OnhtbCBBUyBieXRlYSksJ1VU RjgnKTo6eG1sIEFTIHRleHQpOworCitTRVQgeG1sYmluYXJ5IFRPIGhleDsKK1NFTEVDVCB4 bWxjYXN0KEUnXFx4REVBREJFRUYnOjpieXRlYSBBUyB4bWwpOworU0VUIHhtbGJpbmFyeSBU TyBiYXNlNjQ7CitTRUxFQ1QgeG1sY2FzdChFJ1xceERFQURCRUVGJzo6Ynl0ZWEgQVMgeG1s KTsKKworLS0gVGhlIEJZIFJFRiBhbmQgQlkgVkFMVUUgY2xhdXNlcyBhcmUgYWNjZXB0ZWQg YnV0IGlnbm9yZWQuCistLSBUaGlzIGNoZWNrcyBpZiB0aGUgcmVzdWx0cyBhcmUgaW5kZWVk IHRoZSBzYW1lIGFzIHdpdGhvdXQgdGhlIGNsYXVzZXMuCitTRUxFQ1QKKyAgeG1sY2FzdCgn Zm9vJyBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnZm9vJyBBUyB4bWwgQlkgUkVGKTo6dGV4 dCwKKyAgeG1sY2FzdCgnZm9vJyBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnZm9vJyBBUyB4 bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCkgPSB4 bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCBCWSBSRUYpLAorICB4bWxjYXN0KCdmb28nOjp4 bWwgQVMgdGV4dCkgPSB4bWxjYXN0KCdmb28nOjp4bWwgQVMgdGV4dCBCWSBWQUxVRSk7CisK K1NFTEVDVAorICB4bWxjYXN0KDQyIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KDQyIEFTIHht bCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KDQyIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0 KDQyIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJzQyJzo6eG1sIEFTIGlu dCkgPSB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnQgQlkgUkVGKSwKKyAgeG1sY2FzdCgnNDIn Ojp4bWwgQVMgaW50KSA9IHhtbGNhc3QoJzQyJzo6eG1sIEFTIGludCBCWSBWQUxVRSk7CisK K1NFTEVDVAorICB4bWxjYXN0KDQyLjczIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KDQyLjcz IEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KDQyLjczIEFTIHhtbCk6OnRleHQg PSB4bWxjYXN0KDQyLjczIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJzQy LjczJzo6eG1sIEFTIG51bWVyaWMpID0geG1sY2FzdCgnNDIuNzMnOjp4bWwgQVMgbnVtZXJp YyBCWSBSRUYpLAorICB4bWxjYXN0KCc0Mi43Myc6OnhtbCBBUyBudW1lcmljKSA9IHhtbGNh c3QoJzQyLjczJzo6eG1sIEFTIG51bWVyaWMgQlkgVkFMVUUpOworCitTRUxFQ1QKKyAgeG1s Y2FzdCgnMjAyNC0wOC0xNCc6OmRhdGUgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoJzIwMjQt MDgtMTQnOjpkYXRlIEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KCcyMDI0LTA4 LTE0Jzo6ZGF0ZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMjAyNC0wOC0xNCc6OmRhdGUg QVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgnMjAyNC0wOC0xNCc6OnhtbCBB UyBkYXRlKSA9IHhtbGNhc3QoJzIwMjQtMDgtMTQnOjp4bWwgQVMgZGF0ZSBCWSBSRUYpLAor ICB4bWxjYXN0KCcyMDI0LTA4LTE0Jzo6eG1sIEFTIGRhdGUpID0geG1sY2FzdCgnMjAyNC0w OC0xNCc6OnhtbCBBUyBkYXRlIEJZIFZBTFVFKTsKKworU0VMRUNUCisgIHhtbGNhc3QoJzEy OjMwOjQ1Jzo6dGltZSB3aXRob3V0IHRpbWUgem9uZSBBUyB4bWwpOjp0ZXh0ID0geG1sY2Fz dCgnMTI6MzA6NDUnOjp0aW1lIHdpdGhvdXQgdGltZSB6b25lIEFTIHhtbCBCWSBSRUYpOjp0 ZXh0LAorICB4bWxjYXN0KCcxMjozMDo0NSc6OnRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQVMg eG1sKTo6dGV4dCA9IHhtbGNhc3QoJzEyOjMwOjQ1Jzo6dGltZSB3aXRob3V0IHRpbWUgem9u ZSBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4bWxjYXN0KCcxMjozMDo0NSc6OnhtbCBB UyB0aW1lIHdpdGhvdXQgdGltZSB6b25lKSA9IHhtbGNhc3QoJzEyOjMwOjQ1Jzo6eG1sIEFT IHRpbWUgd2l0aG91dCB0aW1lIHpvbmUgQlkgUkVGKSwKKyAgeG1sY2FzdCgnMTI6MzA6NDUn Ojp4bWwgQVMgdGltZSB3aXRob3V0IHRpbWUgem9uZSkgPSB4bWxjYXN0KCcxMjozMDo0NSc6 OnhtbCBBUyB0aW1lIHdpdGhvdXQgdGltZSB6b25lIEJZIFZBTFVFKTsKKworU0VMRUNUCisg IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6dGltZSB3aXRoIHRpbWUgem9uZSBBUyB4bWwp Ojp0ZXh0ID0geG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp0aW1lIHdpdGggdGltZSB6b25l IEFTIHhtbCBCWSBSRUYpOjp0ZXh0LAorICB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnRp bWUgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKTo6dGV4dCA9IHhtbGNhc3QoJzA5OjMwOjEwKzA2 OjAwJzo6dGltZSB3aXRoIHRpbWUgem9uZSBBUyB4bWwgQlkgVkFMVUUpOjp0ZXh0LAorICB4 bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lIHdpdGggdGltZSB6b25lKSA9 IHhtbGNhc3QoJzA5OjMwOjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUg QlkgUkVGKSwKKyAgeG1sY2FzdCgnMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZSB3aXRo IHRpbWUgem9uZSkgPSB4bWxjYXN0KCcwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lIHdp dGggdGltZSB6b25lIEJZIFZBTFVFKTsKKworU0VMRUNUCisgIHhtbGNhc3QoJzIwMDItMDUt MzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1sKTo6 dGV4dCA9IHhtbGNhc3QoJzIwMDItMDUtMzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3RhbXAg d2l0aCB0aW1lIHpvbmUgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzIwMDIt MDUtMzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1s KTo6dGV4dCA9IHhtbGNhc3QoJzIwMDItMDUtMzAgMDk6MzA6MTArMDY6MDAnOjp0aW1lc3Rh bXAgd2l0aCB0aW1lIHpvbmUgQVMgeG1sIEJZIFZBTFVFKTo6dGV4dCwKKyAgeG1sY2FzdCgn MjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1l IHpvbmUpID0geG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0 aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUgQlkgUkVGKSwKKyAgeG1sY2FzdCgnMjAwMi0wNS0z MFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1lIHpvbmUpID0g eG1sY2FzdCgnMjAwMi0wNS0zMFQwOTozMDoxMCswNjowMCc6OnhtbCBBUyB0aW1lc3RhbXAg d2l0aCB0aW1lIHpvbmUgQlkgVkFMVUUpOworCitTRUxFQ1QKKyAgeG1sY2FzdCgnMSB5ZWFy IDIgbW9ucyc6OmludGVydmFsIEFTIHhtbCk6OnRleHQgPSB4bWxjYXN0KCcxIHllYXIgMiBt b25zJzo6aW50ZXJ2YWwgQVMgeG1sIEJZIFJFRik6OnRleHQsCisgIHhtbGNhc3QoJzEgeWVh ciAyIG1vbnMnOjppbnRlcnZhbCBBUyB4bWwpOjp0ZXh0ID0geG1sY2FzdCgnMSB5ZWFyIDIg bW9ucyc6OmludGVydmFsIEFTIHhtbCBCWSBWQUxVRSk6OnRleHQsCisgIHhtbGNhc3QoJzEg eWVhciAyIG1vbnMnOjp4bWwgQVMgaW50ZXJ2YWwpID0geG1sY2FzdCgnMSB5ZWFyIDIgbW9u cyc6OnhtbCBBUyBpbnRlcnZhbCBCWSBSRUYpLAorICB4bWxjYXN0KCcxIHllYXIgMiBtb25z Jzo6eG1sIEFTIGludGVydmFsKSA9IHhtbGNhc3QoJzEgeWVhciAyIG1vbnMnOjp4bWwgQVMg aW50ZXJ2YWwgQlkgVkFMVUUpOworCitDUkVBVEUgVklFVyB2aWV3X3htbGNhc3RfdG9feG1s IEFTCitTRUxFQ1QKKyAgeG1sY2FzdChOVUxMIEFTIHhtbCkgQVMgYzEsCisgIHhtbGNhc3Qo J2ZvbycgQVMgeG1sKSBBUyBjMiwKKyAgeG1sY2FzdCgnJzo6dGV4dCBBUyB4bWwpIEFTIGMz LAorICB4bWxjYXN0KE5VTEw6OnRleHQgQVMgeG1sKSBBUyBjNCwKKyAgeG1sY2FzdCgnJzo6 eG1sIEFTIHRleHQpIEFTIGM1LAorICB4bWxjYXN0KE5VTEw6OnhtbCBBUyB0ZXh0KSBjNiwK KyAgeG1sY2FzdCgnZm9vICYgPCJiYXIiPic6OnRleHQgQVMgeG1sKSBBUyBjNywKKyAgeG1s Y2FzdCgnZm9vICYgPCJiYXIiPic6OnZhcmNoYXIgQVMgeG1sKSBBUyBjOCwKKyAgeG1sY2Fz dCgnZm9vICYgPCJiYXIiPic6Om5hbWUgQVMgeG1sKSBBUyBjOSwKKyAgeG1sY2FzdCh4bWx0 ZXh0KEUnZm9vICYgPCJiYXIiPlxyJykgQVMgdGV4dCkgQVMgYzEwLAorICB4bWxjYXN0KHht bGNhc3QoRSdmb28gJiA8ImJhciI+XHInIEFTIHhtbCkgQVMgdGV4dCkgQVMgYzExLAorICB4 bWxjYXN0KHRvX2RhdGUoJzI5LzA1LzIwMjQnLCdkZC9tbS95eXl5JykgQVMgeG1sKSBBUyBj MTIsCisgIHhtbGNhc3QoJzIwMjQtMDUtMjkgMTI6MDQ6MTAuNzAzNTg1KzAyJzo6dGltZXN0 YW1wIHdpdGggdGltZSB6b25lIEFTIHhtbCkgQVMgYzEzLAorICB4bWxjYXN0KCcyMDI0LTA1 LTI5IDEyOjA0OjEwLjcwMzU4NSswMic6OnRpbWVzdGFtcCB3aXRob3V0IHRpbWUgem9uZSBB UyB4bWwpIEFTIGMxNCwKKyAgeG1sY2FzdCgnMSB5ZWFyIDIgbW9udGhzIDMgZGF5cyA0IGhv dXJzIDUgbWludXRlcyA2IHNlY29uZHMnOjppbnRlcnZhbCBBUyB4bWwpIEFTIGMxNSwKKyAg eG1sY2FzdCg0MjczNTM1NDIgQVMgeG1sKSBBUyBjMTYsCisgIHhtbGNhc3QoNDI3MzUzNTQy MDE2MjAyMSBBUyB4bWwpIEFTIGMxNywKKyAgeG1sY2FzdCg0Mi4wMDczMTIzNDU2Nzg5MTAg QVMgeG1sKSBBUyBjMTgsCisgIHhtbGNhc3QoNDIuMDA3MzEyMzQ1Njc4OTEwOjpkb3VibGUg cHJlY2lzaW9uIEFTIHhtbCkgQVMgYzE5LAorICB4bWxjYXN0KHRydWUgQVMgeG1sKSBBUyBj MjAsCisgIHhtbGNhc3QoZmFsc2UgQVMgeG1sKSBBUyBjMjEsCisgIHhtbGNhc3QoNDIgPSA3 MyBBUyB4bWwpIEFTIGMyMiwKKyAgeG1sY2FzdCg0MiA8PiA3MyBBUyB4bWwpIEFTIGMyMywK KyAgeG1sY2FzdCgnMTE6MTE6MTEuNSc6OnRpbWUgQVMgeG1sKSBBUyBjMjQsCisgIHhtbGNh c3QoJzExOjExOjExLjUnOjp0aW1lIHdpdGggdGltZSB6b25lIEFTIHhtbCkgQVMgYzI1Owor Citcc3Ygdmlld194bWxjYXN0X3RvX3htbAorU0VMRUNUICogRlJPTSB2aWV3X3htbGNhc3Rf dG9feG1sOworCitDUkVBVEUgVklFVyB2aWV3X3htbGNhc3RfZnJvbV94bWwgQVMKK1NFTEVD VAorICB4bWxjYXN0KCdQMVkyTTNEVDRINU02Uyc6OnhtbCBBUyBpbnRlcnZhbCkgQVMgYzEs CisgIHhtbGNhc3QoJzEgeWVhciAyIG1vbnMgMyBkYXlzIDQgaG91cnMgNSBtaW51dGVzIDYg c2Vjb25kcyc6OnhtbCBBUyBpbnRlcnZhbCkgQVMgYzIsCisgIHhtbGNhc3QoJzIwMDItMDkt MjQnOjp4bWwgQVMgZGF0ZSkgQVMgYzMsCisgIHhtbGNhc3QoJzIwMDItMDktMjQrMDY6MDAn Ojp4bWwgQVMgZGF0ZSkgQVMgYzQsCisgIHhtbGNhc3QoJzA5OjMwOjEwWic6OnhtbCBBUyB0 aW1lIHdpdGggdGltZSB6b25lKSBBUyBjNSwKKyAgeG1sY2FzdCgnMDk6MzA6MTAtMDY6MDAn Ojp4bWwgQVMgdGltZSB3aXRoIHRpbWUgem9uZSkgQVMgYzYsCisgIHhtbGNhc3QoJzA5OjMw OjEwKzA2OjAwJzo6eG1sIEFTIHRpbWUgd2l0aCB0aW1lIHpvbmUpIEFTIGM3LAorICB4bWxj YXN0KCcyMDAyLTA1LTMwVDA5OjMwOjEwWic6OnhtbCBBUyB0aW1lc3RhbXAgd2l0aCB0aW1l IHpvbmUpIEFTIGM4LAorICB4bWxjYXN0KCcyMDAyLTA1LTMwVDA5OjMwOjEwLTA2OjAwJzo6 eG1sIEFTIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSkgQVMgYzksCisgIHhtbGNhc3QoJzIw MDItMDUtMzBUMDk6MzA6MTArMDY6MDAnOjp4bWwgQVMgdGltZXN0YW1wIHdpdGggdGltZSB6 b25lKSBBUyBjMTAsCisgIHhtbGNhc3QoJ2ZvbyBiYXInOjp4bWwgQVMgdGV4dCkgQVMgYzEx LAorICB4bWxjYXN0KCcgICAgICAgZm9vIGJhciAgICAgJzo6eG1sIEFTIHZhcmNoYXIpIEFT IGMxMiwKKyAgeG1sY2FzdCgnZm9vICZhbXA7ICZsdDsmcXVvdDtiYXImcXVvdDsmZ3Q7Jzo6 eG1sIEFTIHRleHQpIEFTIGMxMywKKyAgeG1sY2FzdCgnNDIuNzMxMjM0NTY3ODkxMCc6Onht bCBBUyBudW1lcmljKSBBUyBjMTQsCisgIHhtbGNhc3QoJys0Mi43MzEyMzQ1Njc4OTEwJzo6 eG1sIEFTIG51bWVyaWMpIEFTIGMxNSwKKyAgeG1sY2FzdCgnLTQyLjczMTIzNDU2Nzg5MTAn Ojp4bWwgQVMgbnVtZXJpYykgQVMgYzE2LAorICB4bWxjYXN0KCc0Mic6OnhtbCBBUyBpbnRl Z2VyKSBBUyBjMTcsCisgIHhtbGNhc3QoJys0Mic6OnhtbCBBUyBpbnRlZ2VyKSBBUyBjMTgs CisgIHhtbGNhc3QoJy00Mic6OnhtbCBBUyBpbnRlZ2VyKSBBUyBjMTksCisgIHhtbGNhc3Qo JzQyNzM1MzU0MjAxNjIwMjEnOjp4bWwgQVMgYmlnaW50KSBBUyBjMjAsCisgIHhtbGNhc3Qo Jys0MjczNTM1NDIwMTYyMDIxJzo6eG1sIEFTIGJpZ2ludCkgQVMgYzIxLAorICB4bWxjYXN0 KCctNDI3MzUzNTQyMDE2MjAyMSc6OnhtbCBBUyBiaWdpbnQpIEFTIGMyMiwKKyAgeG1sY2Fz dCgndHJ1ZSc6OnhtbCBBUyBib29sZWFuKSBBUyBjMjMsCisgIHhtbGNhc3QoJ2ZhbHNlJzo6 eG1sIEFTIGJvb2xlYW4pIEFTIGMyNCwKKyAgeG1sY2FzdCgnJzo6eG1sIEFTIGNoYXJhY3Rl ciB2YXJ5aW5nKSBBUyBjMjUsCisgIHhtbGNhc3QoTlVMTDo6eG1sIEFTIGNoYXJhY3RlciB2 YXJ5aW5nKSBBUyBjMjY7CisKK1xzdiB2aWV3X3htbGNhc3RfZnJvbV94bWwKK1NFTEVDVCAq IEZST00gdmlld194bWxjYXN0X2Zyb21feG1sOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp bGUKZGlmZiAtLWdpdCBhL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0IGIvc3Jj L3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKaW5kZXggOThhYjQ1YWRmYS4uMzczMWY0 M2FjNSAxMDA2NDQKLS0tIGEvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKKysr IGIvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKQEAgLTMyNzQsNiArMzI3NCw3 IEBAIFhpZFN0YXR1cwogWG1sRXhwcgogWG1sRXhwck9wCiBYbWxPcHRpb25UeXBlCitYbWxD YXN0CiBYbWxTZXJpYWxpemUKIFhtbFRhYmxlQnVpbGRlckRhdGEKIFlZTFRZUEUKLS0gCjIu MzQuMQoK --------------N5rKgGb0c6a5EB0izmOkzea7--