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.96) (envelope-from ) id 1wZVQY-0015xo-2o for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jun 2026 15:10:12 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wZVQX-000ud2-2S for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jun 2026 15:10:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wZVQX-000ucq-0D for pgsql-hackers@lists.postgresql.org; Tue, 16 Jun 2026 15:10:09 +0000 Received: from forward103a.mail.yandex.net ([2a02:6b8:c0e:500:1:45:d181:d103]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wZVQP-00000000khe-2pcq for pgsql-hackers@postgresql.org; Tue, 16 Jun 2026 15:10:08 +0000 Received: from mail-nwsmtp-smtp-production-main-68.vla.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-68.vla.yp-c.yandex.net [IPv6:2a02:6b8:c1f:638c:0:640:aae5:0]) by forward103a.mail.yandex.net (Yandex) with ESMTPS id C0B29805E0; Tue, 16 Jun 2026 18:09:58 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-68.vla.yp-c.yandex.net (smtp) with ESMTPSA id r9Sdh9ggKeA0-EQREDRau; Tue, 16 Jun 2026 18:09:57 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1781622598; bh=f/DKcbgTbwasdmWoKpEbrDXUffmq1gIX46kztFXwTO8=; h=In-Reply-To:Cc:Date:References:To:Subject:Message-ID:From; b=u6lwwL21wWZl8nUyxwlB3xN8E26IHSW7I5ygTQk2zxNI597CAO0axYMqVkWus3tef U4DslA1lvFp+xjn5TUm+yKDgrTaFUNSe0aE5psJFC/DZK9GZ0PRofoHukimvNG+Lt7 rRZZrjFtPg6EPBx4ccFwfZB2nQqbCFIamA0QST2g= Authentication-Results: mail-nwsmtp-smtp-production-main-68.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Content-Type: multipart/mixed; boundary="------------cx4n2j1e9pnEZYfCn5Fjuf0T" Message-ID: Date: Tue, 16 Jun 2026 18:09:53 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Vacuum statistics From: Alena Rybakina To: pgsql-hackers , Masahiko Sawada Cc: Amit Kapila , Jim Nasby , Bertrand Drouvot , Kirill Reshke , Masahiko Sawada , Melanie Plageman , jian he , Sami Imseih , vignesh C , Alexander Korotkov , Ilia Evdokimov , Andrey Borodin , Andrei Zubkov , Andrei Lepikhov References: <86f76aa5-1ab5-4e2e-9b15-405051852a2a@postgrespro.ru> <277ce149-4333-463d-bad6-ccd785606c7f@yandex.ru> <3f9c57bc-dc1f-4ad8-a2e1-5be15ac79264@yandex.ru> <77f1b8bc-b365-4e88-b87b-ced37fabbbf0@yandex.ru> <7a74d6af-85e2-4b48-9133-61309a965954@yandex.ru> <1885f257-46cc-4b90-8d90-41833eb62ea9@gmail.com> <0e84acdc-ba65-44fa-be1f-4d6a86bca2ac@yandex.ru> <8bd78e04-6efa-4fcf-b157-8ac3b92375c8@yandex.ru> <10BE6E39-94D2-4909-ACB8-24E1FA6580EE@yandex-team.ru> <877b2c60-6681-4471-ba72-86153f0b9286@yandex.ru> <69e99101-a308-468f-b895-8057305699bf@yandex.ru> <788e9ff4-3ed7-454c-8863-b40bc3288bc9@yandex.ru> <5bc44024-add6-40fd-a8e6-6c4559e09478@yandex.ru> <9d98562b-fa97-476b-9315-6fa2d736ab6b@yandex.ru> Content-Language: en-US In-Reply-To: <9d98562b-fa97-476b-9315-6fa2d736ab6b@yandex.ru> 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. --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: multipart/alternative; boundary="------------CuhUxyA0UbgKlR5rHFtu9llz" --------------CuhUxyA0UbgKlR5rHFtu9llz Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, all! Attached is a reworked version of the patch set. The main change is that the statistics are no longer exposed through a contrib extension; they are now built-in system views - pg_stat_vacuum_tables, pg_stat_vacuum_indexes and pg_stat_vacuum_database - backed by pg_stat_get_vacuum_*() functions and stored in the cumulative statistics system under a dedicated stats kind (PGSTAT_KIND_VACUUM_RELATION). Collection is controlled by a single track_vacuum_statistics GUC; the per-relation tracking list, the reset function and the shared-memory-size helper from the extension version are gone. The series is also split into smaller, self-contained commits - one per metric category (core heap/tuple counters, missed dead tuples/pages, visibility-map transitions, the buffer/WAL/timing sampling machinery, per-relation buffers, timing and the wraparound failsafe, and WAL) - with the documentation and tests growing inside each commit. Other changes: * index statistics are accumulated across the bulkdelete and cleanup passes and reported once per index, in both the serial and parallel paths; * index_vacuum_count is no longer exposed; * the regression coverage is now an in-core vacuum_stats test with deterministic checks and dedicated scenarios for the non-trivial paths (truncation, freeze, cost delay, WAL full-page images, index page deletion), an isolation test for recently_dead/missed_dead tuples, and a xid_wraparound TAP test for the failsafe counter. -- ----------- Best regards, Alena Rybakina Yandex Cloud --------------CuhUxyA0UbgKlR5rHFtu9llz Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit

Hi, all!

Attached is a reworked version of the patch set. The main change is that the
statistics are no longer exposed through a contrib extension; they are now
built-in system views - pg_stat_vacuum_tables, pg_stat_vacuum_indexes and
pg_stat_vacuum_database - backed by pg_stat_get_vacuum_*() functions and stored
in the cumulative statistics system under a dedicated stats kind
(PGSTAT_KIND_VACUUM_RELATION). Collection is controlled by a single
track_vacuum_statistics GUC; the per-relation tracking list, the reset
function and the shared-memory-size helper from the extension version are gone.

The series is also split into smaller, self-contained commits - one per metric
category (core heap/tuple counters, missed dead tuples/pages, visibility-map
transitions, the buffer/WAL/timing sampling machinery, per-relation buffers,
timing and the wraparound failsafe, and WAL) - with the documentation and
tests growing inside each commit.

Other changes:
  • index statistics are accumulated across the bulkdelete and cleanup passes and reported once per index, in both the serial and parallel paths;
  • index_vacuum_count is no longer exposed;
  • the regression coverage is now an in-core vacuum_stats test with deterministic checks and dedicated scenarios for the non-trivial paths (truncation, freeze, cost delay, WAL full-page images, index page deletion), an isolation test for recently_dead/missed_dead tuples, and a xid_wraparound TAP test for the failsafe counter.
-- 
-----------
Best regards,
Alena Rybakina
Yandex Cloud

--------------CuhUxyA0UbgKlR5rHFtu9llz-- --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0001-Track-table-VM-stability.patch" Content-Disposition: attachment; filename="0001-Track-table-VM-stability.patch" Content-Transfer-Encoding: base64 RnJvbSBiMjQxOTM1ZTY3MWZjM2FjZThmODAwMDk2ZjQ4ZDRjZmQ4NzZiNmJiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzMCBNYXIgMjAyNiAwOTowNzoyNCArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggMS84XSBUcmFjayB0YWJsZSBWTSBzdGFiaWxpdHkuCgpBZGQgcmV2X2Fs bF92aXNpYmxlX3BhZ2VzIGFuZCByZXZfYWxsX2Zyb3plbl9wYWdlcyBjb3VudGVycyB0bwpw Z19zdGF0X2FsbF90YWJsZXMgdHJhY2tpbmcgdGhlIG51bWJlciBvZiB0aW1lcyB0aGUgYWxs LXZpc2libGUgYW5kCmFsbC1mcm96ZW4gYml0cyBhcmUgY2xlYXJlZCBpbiB0aGUgdmlzaWJp bGl0eSBtYXAuIFRoZXNlIGJpdHMgYXJlIGNsZWFyZWQgYnkKYmFja2VuZCBwcm9jZXNzZXMg ZHVyaW5nIHJlZ3VsYXIgRE1MIG9wZXJhdGlvbnMuIEhlbmNlLCB0aGUgY291bnRlcnMgYXJl IHBsYWNlZAppbiB0YWJsZSBzdGF0aXN0aWMgZW50cnkuCgpBIGhpZ2ggcmV2X2FsbF92aXNp YmxlX3BhZ2VzIHJhdGUgcmVsYXRpdmUgdG8gRE1MIHZvbHVtZSBpbmRpY2F0ZXMKdGhhdCBt b2RpZmljYXRpb25zIGFyZSBzY2F0dGVyZWQgYWNyb3NzIHByZXZpb3VzbHktY2xlYW4gcGFn ZXMgcmF0aGVyCnRoYW4gY29uY2VudHJhdGVkIG9uIGFscmVhZHktZGlydHkgb25lcywgY2F1 c2luZyBpbmRleC1vbmx5IHNjYW5zIHRvCmZhbGwgYmFjayB0byBoZWFwIGZldGNoZXMuICBB IGhpZ2ggcmV2X2FsbF9mcm96ZW5fcGFnZXMgcmF0ZSBpbmRpY2F0ZXMKdGhhdCB2YWN1dW0n cyBmcmVlemluZyB3b3JrIGlzIGJlaW5nIGZyZXF1ZW50bHkgdW5kb25lIGJ5IGNvbmN1cnJl bnQKRE1MLgoKQXV0aG9yczogQWxlbmEgUnliYWtpbmEgPGxlbmEucmliYWNraW5hQHlhbmRl eC5ydT4sCiAgICAgICAgIEFuZHJlaSBMZXBpa2hvdiA8bGVwaWhvdkBnbWFpbC5jb20+LAog ICAgICAgICBBbmRyZWkgWnVia292IDxhLnp1YmtvdkBwb3N0Z3Jlc3Byby5ydT4KUmV2aWV3 ZWQtYnk6IERpbGlwIEt1bWFyIDxkaWxpcGJhbGF1dEBnbWFpbC5jb20+LAogICAgICAgICBN YXNhaGlrbyBTYXdhZGEgPHNhd2FkYS5tc2hrQGdtYWlsLmNvbT4sCiAgICAgICAgIElsaWEg RXZkb2tpbW92IDxpbHlhLmV2ZG9raW1vdkB0YW50b3JsYWJzLmNvbT4sCiAgICAgICAgIEpp YW4gSGUgPGppYW4udW5pdmVyc2FsaXR5QGdtYWlsLmNvbT4sCiAgICAgICAgIEtpcmlsbCBS ZXNoa2UgPHJlc2hrZWtpcmlsbEBnbWFpbC5jb20+LAogICAgICAgICBBbGV4YW5kZXIgS29y b3Rrb3YgPGFla29yb3Rrb3ZAZ21haWwuY29tPiwKICAgICAgICAgSmltIE5hc2J5IDxqbmFz YnlAdXBncmFkZS5jb20+LAogICAgICAgICBTYW1pIEltc2VpaCA8c2FtaW1zZWloQGdtYWls LmNvbT4sCiAgICAgICAgIEthcmluYSBMaXRza2V2aWNoIDxsaXRza2V2aWNoa2FyaW5hQGdt YWlsLmNvbT4sCiAgICAgICAgIEFuZHJleSBCb3JvZGluIDx4NG1tbUB5YW5kZXgtdGVhbS5y dT4KLS0tCiBkb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5zZ21sICAgICAgICAgICAgICAgICAg fCAgMzIgKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92aXNpYmlsaXR5bWFwLmMgICAg ICAgfCAgMTAgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsICAgICAg ICAgIHwgICA0ICstCiBzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfcmVsYXRp b24uYyAgfCAgIDIgKwogc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMgICAg ICAgICAgIHwgICA2ICsKIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAg ICAgICAgICB8ICAxMCArCiBzcmMvaW5jbHVkZS9wZ3N0YXQuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgMTcgKy0KIC4uLi9leHBlY3RlZC92YWN1dW0tZXh0ZW5kaW5nLWZyZWV6 ZS5vdXQgICAgICB8IDE4NSArKysrKysrKysrKysrKysrKysKIHNyYy90ZXN0L2lzb2xhdGlv bi9pc29sYXRpb25fc2NoZWR1bGUgICAgICAgICB8ICAgMiArCiAuLi4vc3BlY3MvdmFjdXVt LWV4dGVuZGluZy1mcmVlemUuc3BlYyAgICAgICAgfCAxMTcgKysrKysrKysrKysKIHNyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0ICAgICAgICAgICB8ICAxMiArLQogMTEg ZmlsZXMgY2hhbmdlZCwgMzkyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3ZhY3V1bS1leHRl bmRpbmctZnJlZXplLm91dAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L2lzb2xhdGlv bi9zcGVjcy92YWN1dW0tZXh0ZW5kaW5nLWZyZWV6ZS5zcGVjCgpkaWZmIC0tZ2l0IGEvZG9j L3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbCBiL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNn bWwKaW5kZXggMDhkNWI4MjQ1NS4uMzQ2N2FiZjZkOCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL21vbml0b3Jpbmcuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5zZ21s CkBAIC00Mzc3LDYgKzQzNzcsMzggQEAgZGVzY3JpcHRpb24gfCBXYWl0aW5nIGZvciBhIG5l d2x5IGluaXRpYWxpemVkIFdBTCBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZQogICAg ICAgPC9wYXJhPjwvZW50cnk+CiAgICAgIDwvcm93PgogCisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD52aXNpYmxlX3BhZ2VfbWFya3NfY2xl YXJlZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4K KyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiB0aW1lcyB0aGUgYWxsLXZpc2libGUg bWFyayBpbiB0aGUKKyAgICAgICA8bGluayBsaW5rZW5kPSJzdG9yYWdlLXZtIj52aXNpYmls aXR5IG1hcDwvbGluaz4gd2FzIGNsZWFyZWQgZm9yCisgICAgICAgcGFnZXMgb2YgdGhpcyB0 YWJsZS4gIFRoZSBhbGwtdmlzaWJsZSBtYXJrIG9mIGEgaGVhcCBwYWdlIGlzCisgICAgICAg Y2xlYXJlZCB3aGVuZXZlciBhIGJhY2tlbmQgcHJvY2VzcyBtb2RpZmllcyBhIHBhZ2UgdGhh dCB3YXMKKyAgICAgICBwcmV2aW91c2x5IG1hcmtlZCBhbGwtdmlzaWJsZSBieSB2YWN1dW0g YWN0aXZpdHkgKHdoZXRoZXIgbWFudWFsCisgICAgICAgPGNvbW1hbmQ+VkFDVVVNPC9jb21t YW5kPiBvciBhdXRvdmFjdXVtKS4gIFRoZSBwYWdlIG11c3QgdGhlbiBiZQorICAgICAgIHBy b2Nlc3NlZCBhZ2FpbiBieSB2YWN1dW0gb24gYSBzdWJzZXF1ZW50IHJ1bi4gIEEgaGlnaCBy YXRlIG9mCisgICAgICAgY2hhbmdlIGluIHRoaXMgY291bnRlciBtZWFucyB0aGF0IHZhY3V1 bSBoYXMgdG8gcmVwZWF0ZWRseQorICAgICAgIHJlLXByb2Nlc3MgcGFnZXMgb2YgdGhpcyB0 YWJsZS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93 PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9 ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+ZnJvemVuX3BhZ2Vf bWFya3NfY2xlYXJlZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAg IDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiB0aW1lcyB0aGUgYWxs LWZyb3plbiBtYXJrIGluIHRoZQorICAgICAgIDxsaW5rIGxpbmtlbmQ9InN0b3JhZ2Utdm0i PnZpc2liaWxpdHkgbWFwPC9saW5rPiB3YXMgY2xlYXJlZCBmb3IKKyAgICAgICBwYWdlcyBv ZiB0aGlzIHRhYmxlLiAgVGhlIGFsbC1mcm96ZW4gbWFyayBvZiBhIGhlYXAgcGFnZSBpcyBj bGVhcmVkCisgICAgICAgd2hlbmV2ZXIgYSBiYWNrZW5kIHByb2Nlc3MgbW9kaWZpZXMgYSBw YWdlIHRoYXQgd2FzIHByZXZpb3VzbHkKKyAgICAgICBtYXJrZWQgYWxsLWZyb3plbiBieSB2 YWN1dW0gYWN0aXZpdHkgKG1hbnVhbCA8Y29tbWFuZD5WQUNVVU08L2NvbW1hbmQ+CisgICAg ICAgb3IgYXV0b3ZhY3V1bSkuICBUaGUgcGFnZSBtdXN0IHRoZW4gYmUgcHJvY2Vzc2VkIGFn YWluIGJ5IHZhY3V1bSBvbgorICAgICAgIHRoZSBuZXh0IGZyZWV6ZSBydW4gZm9yIHRoaXMg dGFibGUuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKICAgICAgPHJv dz4KICAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xl PSJjb2x1bW5fZGVmaW5pdGlvbiI+CiAgICAgICAgPHN0cnVjdGZpZWxkPmxhc3RfdmFjdXVt PC9zdHJ1Y3RmaWVsZD4gPHR5cGU+dGltZXN0YW1wIHdpdGggdGltZSB6b25lPC90eXBlPgpk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmlzaWJpbGl0eW1hcC5jIGIv c3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmlzaWJpbGl0eW1hcC5jCmluZGV4IDRmZDQ3MDcw MmEuLmYwNTVlYzM4MTkgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3Zp c2liaWxpdHltYXAuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92aXNpYmlsaXR5 bWFwLmMKQEAgLTEwMiw2ICsxMDIsNyBAQAogI2luY2x1ZGUgImFjY2Vzcy94bG9naW5zZXJ0 LmgiCiAjaW5jbHVkZSAiYWNjZXNzL3hsb2d1dGlscy5oIgogI2luY2x1ZGUgIm1pc2NhZG1p bi5oIgorI2luY2x1ZGUgInBnc3RhdC5oIgogI2luY2x1ZGUgInBvcnQvcGdfYml0dXRpbHMu aCIKICNpbmNsdWRlICJzdG9yYWdlL2J1Zm1nci5oIgogI2luY2x1ZGUgInN0b3JhZ2Uvc21n ci5oIgpAQCAtMTczLDYgKzE3NCwxNSBAQCB2aXNpYmlsaXR5bWFwX2NsZWFyKFJlbGF0aW9u IHJlbCwgQmxvY2tOdW1iZXIgaGVhcEJsaywgQnVmZmVyIHZtYnVmLCB1aW50OCBmbGFncwog CiAJaWYgKG1hcFttYXBCeXRlXSAmIG1hc2spCiAJeworCQkvKgorCQkgKiBUcmFjayBob3cg b2Z0ZW4gYWxsLXZpc2libGUgb3IgYWxsLWZyb3plbiBiaXRzIGFyZSBjbGVhcmVkIGluIHRo ZQorCQkgKiB2aXNpYmlsaXR5IG1hcC4KKwkJICovCisJCWlmIChtYXBbbWFwQnl0ZV0gJiAo KGZsYWdzICYgVklTSUJJTElUWU1BUF9BTExfVklTSUJMRSkgPDwgbWFwT2Zmc2V0KSkKKwkJ CXBnc3RhdF9jb3VudF92aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZChyZWwpOworCQlpZiAo bWFwW21hcEJ5dGVdICYgKChmbGFncyAmIFZJU0lCSUxJVFlNQVBfQUxMX0ZST1pFTikgPDwg bWFwT2Zmc2V0KSkKKwkJCXBnc3RhdF9jb3VudF9mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVk KHJlbCk7CisKIAkJbWFwW21hcEJ5dGVdICY9IH5tYXNrOwogCiAJCU1hcmtCdWZmZXJEaXJ0 eSh2bWJ1Zik7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3 cy5zcWwgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKaW5kZXggOGYx MjliYWVjOS4uYjU3MTI4YmIxMiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9z eXN0ZW1fdmlld3Muc3FsCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdz LnNxbApAQCAtNzQ3LDcgKzc0Nyw5IEBAIENSRUFURSBWSUVXIHBnX3N0YXRfYWxsX3RhYmxl cyBBUwogICAgICAgICAgICAgcGdfc3RhdF9nZXRfdG90YWxfYXV0b3ZhY3V1bV90aW1lKEMu b2lkKSBBUyB0b3RhbF9hdXRvdmFjdXVtX3RpbWUsCiAgICAgICAgICAgICBwZ19zdGF0X2dl dF90b3RhbF9hbmFseXplX3RpbWUoQy5vaWQpIEFTIHRvdGFsX2FuYWx5emVfdGltZSwKICAg ICAgICAgICAgIHBnX3N0YXRfZ2V0X3RvdGFsX2F1dG9hbmFseXplX3RpbWUoQy5vaWQpIEFT IHRvdGFsX2F1dG9hbmFseXplX3RpbWUsCi0gICAgICAgICAgICBwZ19zdGF0X2dldF9zdGF0 X3Jlc2V0X3RpbWUoQy5vaWQpIEFTIHN0YXRzX3Jlc2V0CisgICAgICAgICAgICBwZ19zdGF0 X2dldF9zdGF0X3Jlc2V0X3RpbWUoQy5vaWQpIEFTIHN0YXRzX3Jlc2V0LAorICAgICAgICAg ICAgcGdfc3RhdF9nZXRfdmlzaWJsZV9wYWdlX21hcmtzX2NsZWFyZWQoQy5vaWQpIEFTIHZp c2libGVfcGFnZV9tYXJrc19jbGVhcmVkLAorICAgICAgICAgICAgcGdfc3RhdF9nZXRfZnJv emVuX3BhZ2VfbWFya3NfY2xlYXJlZChDLm9pZCkgQVMgZnJvemVuX3BhZ2VfbWFya3NfY2xl YXJlZAogICAgIEZST00gcGdfY2xhc3MgQyBMRUZUIEpPSU4KICAgICAgICAgIHBnX2luZGV4 IEkgT04gQy5vaWQgPSBJLmluZHJlbGlkCiAgICAgICAgICBMRUZUIEpPSU4gcGdfbmFtZXNw YWNlIE4gT04gKE4ub2lkID0gQy5yZWxuYW1lc3BhY2UpCmRpZmYgLS1naXQgYS9zcmMvYmFj a2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfcmVsYXRpb24uYyBiL3NyYy9iYWNrZW5kL3V0 aWxzL2FjdGl2aXR5L3Bnc3RhdF9yZWxhdGlvbi5jCmluZGV4IGIyY2EyOGY4M2IuLjkyZTFm NjBhMDggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9y ZWxhdGlvbi5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9yZWxh dGlvbi5jCkBAIC04ODEsNiArODgxLDggQEAgcGdzdGF0X3JlbGF0aW9uX2ZsdXNoX2NiKFBn U3RhdF9FbnRyeVJlZiAqZW50cnlfcmVmLCBib29sIG5vd2FpdCkKIAogCXRhYmVudHJ5LT5i bG9ja3NfZmV0Y2hlZCArPSBsc3RhdHMtPmNvdW50cy5ibG9ja3NfZmV0Y2hlZDsKIAl0YWJl bnRyeS0+YmxvY2tzX2hpdCArPSBsc3RhdHMtPmNvdW50cy5ibG9ja3NfaGl0OworCXRhYmVu dHJ5LT52aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZCArPSBsc3RhdHMtPmNvdW50cy52aXNp YmxlX3BhZ2VfbWFya3NfY2xlYXJlZDsKKwl0YWJlbnRyeS0+ZnJvemVuX3BhZ2VfbWFya3Nf Y2xlYXJlZCArPSBsc3RhdHMtPmNvdW50cy5mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkOwog CiAJLyogQ2xhbXAgbGl2ZV90dXBsZXMgaW4gY2FzZSBvZiBuZWdhdGl2ZSBkZWx0YV9saXZl X3R1cGxlcyAqLwogCXRhYmVudHJ5LT5saXZlX3R1cGxlcyA9IE1heCh0YWJlbnRyeS0+bGl2 ZV90dXBsZXMsIDApOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3Rh dGZ1bmNzLmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYwppbmRleCA2 ZjljOWM3MmRlLi42NDA5OTg3ZDY2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9h ZHQvcGdzdGF0ZnVuY3MuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVu Y3MuYwpAQCAtMTA4LDYgKzEwOCwxMiBAQCBQR19TVEFUX0dFVF9SRUxFTlRSWV9JTlQ2NCh0 dXBsZXNfdXBkYXRlZCkKIC8qIHBnX3N0YXRfZ2V0X3ZhY3V1bV9jb3VudCAqLwogUEdfU1RB VF9HRVRfUkVMRU5UUllfSU5UNjQodmFjdXVtX2NvdW50KQogCisvKiBwZ19zdGF0X2dldF92 aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZCAqLworUEdfU1RBVF9HRVRfUkVMRU5UUllfSU5U NjQodmlzaWJsZV9wYWdlX21hcmtzX2NsZWFyZWQpCisKKy8qIHBnX3N0YXRfZ2V0X2Zyb3pl bl9wYWdlX21hcmtzX2NsZWFyZWQgKi8KK1BHX1NUQVRfR0VUX1JFTEVOVFJZX0lOVDY0KGZy b3plbl9wYWdlX21hcmtzX2NsZWFyZWQpCisKICNkZWZpbmUgUEdfU1RBVF9HRVRfUkVMRU5U UllfRkxPQVQ4KHN0YXQpCQkJCQkJXAogRGF0dW0JCQkJCQkJCQkJCQkJCQlcCiBDcHBDb25j YXQocGdfc3RhdF9nZXRfLHN0YXQpKFBHX0ZVTkNUSU9OX0FSR1MpCQkJCQlcCmRpZmYgLS1n aXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1ZGUvY2F0 YWxvZy9wZ19wcm9jLmRhdAppbmRleCBiZTE1N2E1ZmJlLi4yOTFiMDM5ODU5IDEwMDY0NAot LS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTEyNjkzLDQgKzEyNjkzLDE0IEBACiAgIHByb25h bWUgPT4gJ2hhc2hvaWQ4ZXh0ZW5kZWQnLCBwcm9yZXR0eXBlID0+ICdpbnQ4JywKICAgcHJv YXJndHlwZXMgPT4gJ29pZDggaW50OCcsIHByb3NyYyA9PiAnaGFzaG9pZDhleHRlbmRlZCcg fSwKIAoreyBvaWQgPT4gJzgwMDInLAorICBkZXNjciA9PiAnc3RhdGlzdGljczogbnVtYmVy IG9mIHRpbWVzIHRoZSBhbGwtdmlzaWJsZSBtYXJrcyBpbiB0aGUgdmlzaWJpbGl0eSBtYXAg d2VyZSBjbGVhcmVkIGZvciBwYWdlcyBvZiB0aGlzIHRhYmxlJywKKyAgcHJvbmFtZSA9PiAn cGdfc3RhdF9nZXRfdmlzaWJsZV9wYWdlX21hcmtzX2NsZWFyZWQnLCBwcm92b2xhdGlsZSA9 PiAncycsCisgIHByb3BhcmFsbGVsID0+ICdyJywgcHJvcmV0dHlwZSA9PiAnaW50OCcsIHBy b2FyZ3R5cGVzID0+ICdvaWQnLAorICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3Zpc2libGVf cGFnZV9tYXJrc19jbGVhcmVkJyB9LAoreyBvaWQgPT4gJzgwMDMnLAorICBkZXNjciA9PiAn c3RhdGlzdGljczogbnVtYmVyIG9mIHRpbWVzIHRoZSBhbGwtZnJvemVuIG1hcmtzIGluIHRo ZSB2aXNpYmlsaXR5IG1hcCB3ZXJlIGNsZWFyZWQgZm9yIHBhZ2VzIG9mIHRoaXMgdGFibGUn LAorICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF9mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVk JywgcHJvdm9sYXRpbGUgPT4gJ3MnLAorICBwcm9wYXJhbGxlbCA9PiAncicsIHByb3JldHR5 cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvc3JjID0+ICdwZ19z dGF0X2dldF9mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkJyB9LAogXQpkaWZmIC0tZ2l0IGEv c3JjL2luY2x1ZGUvcGdzdGF0LmggYi9zcmMvaW5jbHVkZS9wZ3N0YXQuaAppbmRleCBkZmEy ZTgzNzYzLi43ZGIzNmNmOGFkIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9wZ3N0YXQuaAor KysgYi9zcmMvaW5jbHVkZS9wZ3N0YXQuaApAQCAtMTYwLDYgKzE2MCw4IEBAIHR5cGVkZWYg c3RydWN0IFBnU3RhdF9UYWJsZUNvdW50cwogCiAJUGdTdGF0X0NvdW50ZXIgYmxvY2tzX2Zl dGNoZWQ7CiAJUGdTdGF0X0NvdW50ZXIgYmxvY2tzX2hpdDsKKwlQZ1N0YXRfQ291bnRlciB2 aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZDsKKwlQZ1N0YXRfQ291bnRlciBmcm96ZW5fcGFn ZV9tYXJrc19jbGVhcmVkOwogfSBQZ1N0YXRfVGFibGVDb3VudHM7CiAKIC8qIC0tLS0tLS0t LS0KQEAgLTIxOCw3ICsyMjAsNyBAQCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfVGFibGVYYWN0 U3RhdHVzCiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KICAqLwogCi0jZGVmaW5lIFBHU1RBVF9GSUxFX0ZPUk1BVF9J RAkweDAxQTVCQ0JDCisjZGVmaW5lIFBHU1RBVF9GSUxFX0ZPUk1BVF9JRAkweDAxQTVCQ0JE CiAKIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9BcmNoaXZlclN0YXRzCiB7CkBAIC00NjksNiAr NDcxLDggQEAgdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X1N0YXRUYWJFbnRyeQogCiAJUGdTdGF0 X0NvdW50ZXIgYmxvY2tzX2ZldGNoZWQ7CiAJUGdTdGF0X0NvdW50ZXIgYmxvY2tzX2hpdDsK KwlQZ1N0YXRfQ291bnRlciB2aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZDsKKwlQZ1N0YXRf Q291bnRlciBmcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkOwogCiAJVGltZXN0YW1wVHogbGFz dF92YWN1dW1fdGltZTsJLyogdXNlciBpbml0aWF0ZWQgdmFjdXVtICovCiAJUGdTdGF0X0Nv dW50ZXIgdmFjdXVtX2NvdW50OwpAQCAtNzQ5LDYgKzc1MywxNyBAQCBleHRlcm4gdm9pZCBw Z3N0YXRfcmVwb3J0X2FuYWx5emUoUmVsYXRpb24gcmVsLAogCQlpZiAocGdzdGF0X3Nob3Vs ZF9jb3VudF9yZWxhdGlvbihyZWwpKQkJCQkJCVwKIAkJCShyZWwpLT5wZ3N0YXRfaW5mby0+ Y291bnRzLmJsb2Nrc19oaXQrKzsJCQkJXAogCX0gd2hpbGUgKDApCisvKiBjb3VudCByZXZv Y2F0aW9ucyBvZiBhbGwtdmlzaWJsZSBhbmQgYWxsLWZyb3plbiBtYXJrcyBpbiB2aXNpYmls aXR5IG1hcCAqLworI2RlZmluZSBwZ3N0YXRfY291bnRfdmlzaWJsZV9wYWdlX21hcmtzX2Ns ZWFyZWQocmVsKQkJCQkJXAorCWRvIHsJCQkJCQkJCQkJCQkJCQlcCisJCWlmIChwZ3N0YXRf c2hvdWxkX2NvdW50X3JlbGF0aW9uKHJlbCkpCQkJCQkJXAorCQkJKHJlbCktPnBnc3RhdF9p bmZvLT5jb3VudHMudmlzaWJsZV9wYWdlX21hcmtzX2NsZWFyZWQrKzsJXAorCX0gd2hpbGUg KDApCisjZGVmaW5lIHBnc3RhdF9jb3VudF9mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkKHJl bCkJCQkJCVwKKwlkbyB7CQkJCQkJCQkJCQkJCQkJXAorCQlpZiAocGdzdGF0X3Nob3VsZF9j b3VudF9yZWxhdGlvbihyZWwpKQkJCQkJCVwKKwkJCShyZWwpLT5wZ3N0YXRfaW5mby0+Y291 bnRzLmZyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQrKzsJXAorCX0gd2hpbGUgKDApCiAKIGV4 dGVybiB2b2lkIHBnc3RhdF9jb3VudF9oZWFwX2luc2VydChSZWxhdGlvbiByZWwsIFBnU3Rh dF9Db3VudGVyIG4pOwogZXh0ZXJuIHZvaWQgcGdzdGF0X2NvdW50X2hlYXBfdXBkYXRlKFJl bGF0aW9uIHJlbCwgYm9vbCBob3QsIGJvb2wgbmV3cGFnZSk7CmRpZmYgLS1naXQgYS9zcmMv dGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvdmFjdXVtLWV4dGVuZGluZy1mcmVlemUub3V0IGIv c3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3ZhY3V1bS1leHRlbmRpbmctZnJlZXplLm91 dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi45OTRhOGRmNTZkCi0t LSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3ZhY3V1bS1l eHRlbmRpbmctZnJlZXplLm91dApAQCAtMCwwICsxLDE4NSBAQAorUGFyc2VkIHRlc3Qgc3Bl YyB3aXRoIDIgc2Vzc2lvbnMKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMyX3ZhY3V1bV9m cmVlemUgczFfZ2V0X3NldF92bV9mbGFnc19zdGF0cyBzMV91cGRhdGVfdGFibGUgczFfZ2V0 X2NsZWFyZWRfdm1fZmxhZ3Nfc3RhdHMgczJfdmFjdXVtX2ZyZWV6ZSBzMV9nZXRfc2V0X3Zt X2ZsYWdzX3N0YXRzIHMyX3ZhY3V1bV9mcmVlemUgczFfc2VsZWN0X2Zyb21faW5kZXggczJf ZGVsZXRlX2Zyb21fdGFibGUgczFfZ2V0X2NsZWFyZWRfdm1fZmxhZ3Nfc3RhdHMgczJfdmFj dXVtX2ZyZWV6ZSBzMV9nZXRfc2V0X3ZtX2ZsYWdzX3N0YXRzIHMxX2NvbW1pdCBzMV9nZXRf Y2xlYXJlZF92bV9mbGFnc19zdGF0cworcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCistLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgIAorKDEgcm93 KQorCitzdGVwIHMyX3ZhY3V1bV9mcmVlemU6IAorICAgIFZBQ1VVTSBGUkVFWkUgdmVzdGF0 OworCitzdGVwIHMxX2dldF9zZXRfdm1fZmxhZ3Nfc3RhdHM6IAorICAgIFNFTEVDVCBwZ19z dGF0X2ZvcmNlX25leHRfZmx1c2goKTsKKworICAgIFNFTEVDVCBjLnJlbGFsbGZyb3plbiA+ IGZyb3plbl9mbGFnX2NvdW50IGFzIHJlbGFsbGZyb3plbiwgYy5yZWxhbGx2aXNpYmxlID4g YWxsX3Zpc2liaWxlX2ZsYWdfY291bnQgYXMgcmVsYWxsdmlzaWJsZQorICAgICAgICBGUk9N IHBnX2NsYXNzIGMsIHN0YXRzX3N0YXRlCisgICAgICAgIFdIRVJFIGMucmVsbmFtZSA9ICd2 ZXN0YXQnOworCisgICAgVVBEQVRFIHN0YXRzX3N0YXRlCisgICAgICAgIFNFVCBmcm96ZW5f ZmxhZ19jb3VudCA9IGMucmVsYWxsZnJvemVuLAorICAgICAgICAgICAgYWxsX3Zpc2liaWxl X2ZsYWdfY291bnQgPSBjLnJlbGFsbHZpc2libGUKKyAgICAgICAgRlJPTSBwZ19jbGFzcyBj CisgICAgICAgIFdIRVJFIGMucmVsbmFtZSA9ICd2ZXN0YXQnOworCitwZ19zdGF0X2ZvcmNl X25leHRfZmx1c2gKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAg ICAgICAgICAgCisoMSByb3cpCisKK3JlbGFsbGZyb3plbnxyZWxhbGx2aXNpYmxlCistLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLQordCAgICAgICAgICAgfHQgICAgICAgICAgICAKKygx IHJvdykKKworc3RlcCBzMV91cGRhdGVfdGFibGU6IAorICAgIFVQREFURSB2ZXN0YXQgU0VU IHggPSB4ICsgMTAwMSB3aGVyZSB4ID49IDI1MDA7CisgICAgU0VMRUNUIHBnX3N0YXRfZm9y Y2VfbmV4dF9mbHVzaCgpOworCitwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgCisoMSByb3cpCisK K3N0ZXAgczFfZ2V0X2NsZWFyZWRfdm1fZmxhZ3Nfc3RhdHM6IAorICAgIFNFTEVDVCBwZ19z dGF0X2ZvcmNlX25leHRfZmx1c2goKTsKKworICAgIFNFTEVDVCB2LnZpc2libGVfcGFnZV9t YXJrc19jbGVhcmVkID4gY2xlYXJlZF9hbGxfdmlzaWJpbGVfZmxhZ19jb3VudCBhcyB2aXNp YmxlX3BhZ2VfbWFya3NfY2xlYXJlZCwKKyAgICAgICAgICAgdi5mcm96ZW5fcGFnZV9tYXJr c19jbGVhcmVkID4gY2xlYXJlZF9mcm96ZW5fZmxhZ19jb3VudCBhcyBmcm96ZW5fcGFnZV9t YXJrc19jbGVhcmVkCisgICAgICAgIEZST00gcGdfc3RhdF9hbGxfdGFibGVzIHYsIHN0YXRz X3N0YXRlCisgICAgICAgIFdIRVJFIHYucmVsbmFtZSA9ICd2ZXN0YXQnOworCisgICAgVVBE QVRFIHN0YXRzX3N0YXRlCisgICAgICAgIFNFVCBjbGVhcmVkX2FsbF92aXNpYmlsZV9mbGFn X2NvdW50ID0gdi52aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZCwKKyAgICAgICAgICAgIGNs ZWFyZWRfZnJvemVuX2ZsYWdfY291bnQgPSB2LmZyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQK KyAgICAgICAgRlJPTSBwZ19zdGF0X2FsbF90YWJsZXMgdgorICAgICAgICBXSEVSRSB2LnJl bG5hbWUgPSAndmVzdGF0JzsKKworcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgICAgICAgICAgICAgIAorKDEgcm93KQor Cit2aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZHxmcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVk CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Cit0ICAgICAgICAgICAgICAgICAgICAgICAgIHx0ICAgICAgICAgICAgICAgICAgICAgICAg CisoMSByb3cpCisKK3N0ZXAgczJfdmFjdXVtX2ZyZWV6ZTogCisgICAgVkFDVVVNIEZSRUVa RSB2ZXN0YXQ7CisKK3N0ZXAgczFfZ2V0X3NldF92bV9mbGFnc19zdGF0czogCisgICAgU0VM RUNUIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaCgpOworCisgICAgU0VMRUNUIGMucmVsYWxs ZnJvemVuID4gZnJvemVuX2ZsYWdfY291bnQgYXMgcmVsYWxsZnJvemVuLCBjLnJlbGFsbHZp c2libGUgPiBhbGxfdmlzaWJpbGVfZmxhZ19jb3VudCBhcyByZWxhbGx2aXNpYmxlCisgICAg ICAgIEZST00gcGdfY2xhc3MgYywgc3RhdHNfc3RhdGUKKyAgICAgICAgV0hFUkUgYy5yZWxu YW1lID0gJ3Zlc3RhdCc7CisKKyAgICBVUERBVEUgc3RhdHNfc3RhdGUKKyAgICAgICAgU0VU IGZyb3plbl9mbGFnX2NvdW50ID0gYy5yZWxhbGxmcm96ZW4sCisgICAgICAgICAgICBhbGxf dmlzaWJpbGVfZmxhZ19jb3VudCA9IGMucmVsYWxsdmlzaWJsZQorICAgICAgICBGUk9NIHBn X2NsYXNzIGMKKyAgICAgICAgV0hFUkUgYy5yZWxuYW1lID0gJ3Zlc3RhdCc7CisKK3BnX3N0 YXRfZm9yY2VfbmV4dF9mbHVzaAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAg ICAgICAgICAgICAgICAgICAKKygxIHJvdykKKworcmVsYWxsZnJvemVufHJlbGFsbHZpc2li bGUKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tCit0ICAgICAgICAgICB8dCAgICAgICAg ICAgIAorKDEgcm93KQorCitzdGVwIHMyX3ZhY3V1bV9mcmVlemU6IAorICAgIFZBQ1VVTSBG UkVFWkUgdmVzdGF0OworCitzdGVwIHMxX3NlbGVjdF9mcm9tX2luZGV4OiAKKyAgICBCRUdJ TjsKKyAgICBTRUxFQ1QgY291bnQoeCkgRlJPTSB2ZXN0YXQgV0hFUkUgeCA+IDIwMDA7CisK K2NvdW50CistLS0tLQorIDMwMDAKKygxIHJvdykKKworc3RlcCBzMl9kZWxldGVfZnJvbV90 YWJsZTogCisgICAgREVMRVRFIEZST00gdmVzdGF0IFdIRVJFIHggPiA0OTMwOworCitzdGVw IHMxX2dldF9jbGVhcmVkX3ZtX2ZsYWdzX3N0YXRzOiAKKyAgICBTRUxFQ1QgcGdfc3RhdF9m b3JjZV9uZXh0X2ZsdXNoKCk7CisKKyAgICBTRUxFQ1Qgdi52aXNpYmxlX3BhZ2VfbWFya3Nf Y2xlYXJlZCA+IGNsZWFyZWRfYWxsX3Zpc2liaWxlX2ZsYWdfY291bnQgYXMgdmlzaWJsZV9w YWdlX21hcmtzX2NsZWFyZWQsCisgICAgICAgICAgIHYuZnJvemVuX3BhZ2VfbWFya3NfY2xl YXJlZCA+IGNsZWFyZWRfZnJvemVuX2ZsYWdfY291bnQgYXMgZnJvemVuX3BhZ2VfbWFya3Nf Y2xlYXJlZAorICAgICAgICBGUk9NIHBnX3N0YXRfYWxsX3RhYmxlcyB2LCBzdGF0c19zdGF0 ZQorICAgICAgICBXSEVSRSB2LnJlbG5hbWUgPSAndmVzdGF0JzsKKworICAgIFVQREFURSBz dGF0c19zdGF0ZQorICAgICAgICBTRVQgY2xlYXJlZF9hbGxfdmlzaWJpbGVfZmxhZ19jb3Vu dCA9IHYudmlzaWJsZV9wYWdlX21hcmtzX2NsZWFyZWQsCisgICAgICAgICAgICBjbGVhcmVk X2Zyb3plbl9mbGFnX2NvdW50ID0gdi5mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkCisgICAg ICAgIEZST00gcGdfc3RhdF9hbGxfdGFibGVzIHYKKyAgICAgICAgV0hFUkUgdi5yZWxuYW1l ID0gJ3Zlc3RhdCc7CisKK3BnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaAorLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgICAgICAgICAKKygxIHJvdykKKwordmlz aWJsZV9wYWdlX21hcmtzX2NsZWFyZWR8ZnJvemVuX3BhZ2VfbWFya3NfY2xlYXJlZAorLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorZiAg ICAgICAgICAgICAgICAgICAgICAgICB8ZiAgICAgICAgICAgICAgICAgICAgICAgIAorKDEg cm93KQorCitzdGVwIHMyX3ZhY3V1bV9mcmVlemU6IAorICAgIFZBQ1VVTSBGUkVFWkUgdmVz dGF0OworCitzdGVwIHMxX2dldF9zZXRfdm1fZmxhZ3Nfc3RhdHM6IAorICAgIFNFTEVDVCBw Z19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsKKworICAgIFNFTEVDVCBjLnJlbGFsbGZyb3pl biA+IGZyb3plbl9mbGFnX2NvdW50IGFzIHJlbGFsbGZyb3plbiwgYy5yZWxhbGx2aXNpYmxl ID4gYWxsX3Zpc2liaWxlX2ZsYWdfY291bnQgYXMgcmVsYWxsdmlzaWJsZQorICAgICAgICBG Uk9NIHBnX2NsYXNzIGMsIHN0YXRzX3N0YXRlCisgICAgICAgIFdIRVJFIGMucmVsbmFtZSA9 ICd2ZXN0YXQnOworCisgICAgVVBEQVRFIHN0YXRzX3N0YXRlCisgICAgICAgIFNFVCBmcm96 ZW5fZmxhZ19jb3VudCA9IGMucmVsYWxsZnJvemVuLAorICAgICAgICAgICAgYWxsX3Zpc2li aWxlX2ZsYWdfY291bnQgPSBjLnJlbGFsbHZpc2libGUKKyAgICAgICAgRlJPTSBwZ19jbGFz cyBjCisgICAgICAgIFdIRVJFIGMucmVsbmFtZSA9ICd2ZXN0YXQnOworCitwZ19zdGF0X2Zv cmNlX25leHRfZmx1c2gKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAg ICAgICAgICAgICAgCisoMSByb3cpCisKK3JlbGFsbGZyb3plbnxyZWxhbGx2aXNpYmxlCist LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorZiAgICAgICAgICAgfGYgICAgICAgICAgICAK KygxIHJvdykKKworc3RlcCBzMV9jb21taXQ6IAorICAgIENPTU1JVDsKKworc3RlcCBzMV9n ZXRfY2xlYXJlZF92bV9mbGFnc19zdGF0czogCisgICAgU0VMRUNUIHBnX3N0YXRfZm9yY2Vf bmV4dF9mbHVzaCgpOworCisgICAgU0VMRUNUIHYudmlzaWJsZV9wYWdlX21hcmtzX2NsZWFy ZWQgPiBjbGVhcmVkX2FsbF92aXNpYmlsZV9mbGFnX2NvdW50IGFzIHZpc2libGVfcGFnZV9t YXJrc19jbGVhcmVkLAorICAgICAgICAgICB2LmZyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQg PiBjbGVhcmVkX2Zyb3plbl9mbGFnX2NvdW50IGFzIGZyb3plbl9wYWdlX21hcmtzX2NsZWFy ZWQKKyAgICAgICAgRlJPTSBwZ19zdGF0X2FsbF90YWJsZXMgdiwgc3RhdHNfc3RhdGUKKyAg ICAgICAgV0hFUkUgdi5yZWxuYW1lID0gJ3Zlc3RhdCc7CisKKyAgICBVUERBVEUgc3RhdHNf c3RhdGUKKyAgICAgICAgU0VUIGNsZWFyZWRfYWxsX3Zpc2liaWxlX2ZsYWdfY291bnQgPSB2 LnZpc2libGVfcGFnZV9tYXJrc19jbGVhcmVkLAorICAgICAgICAgICAgY2xlYXJlZF9mcm96 ZW5fZmxhZ19jb3VudCA9IHYuZnJvemVuX3BhZ2VfbWFya3NfY2xlYXJlZAorICAgICAgICBG Uk9NIHBnX3N0YXRfYWxsX3RhYmxlcyB2CisgICAgICAgIFdIRVJFIHYucmVsbmFtZSA9ICd2 ZXN0YXQnOworCitwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2gKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQorICAgICAgICAgICAgICAgICAgICAgICAgCisoMSByb3cpCisKK3Zpc2libGVf cGFnZV9tYXJrc19jbGVhcmVkfGZyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK3QgICAgICAg ICAgICAgICAgICAgICAgICAgfHQgICAgICAgICAgICAgICAgICAgICAgICAKKygxIHJvdykK KwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL2lzb2xhdGlvbl9zY2hlZHVsZSBi L3NyYy90ZXN0L2lzb2xhdGlvbi9pc29sYXRpb25fc2NoZWR1bGUKaW5kZXggMTVjMzNmYWQ0 Yy4uM2Q1OWVlZjdhNyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvaXNvbGF0aW9uL2lzb2xhdGlv bl9zY2hlZHVsZQorKysgYi9zcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVkdWxl CkBAIC0xMDIsNiArMTAyLDcgQEAgdGVzdDogdGltZW91dHMKIHRlc3Q6IHZhY3V1bS1jb25j dXJyZW50LWRyb3AKIHRlc3Q6IHZhY3V1bS1jb25mbGljdAogdGVzdDogdmFjdXVtLXNraXAt bG9ja2VkCit0ZXN0OiB2YWN1dW0tZXh0ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkCiB0ZXN0 OiBzdGF0cwogdGVzdDogaG9yaXpvbnMKIHRlc3Q6IHByZWRpY2F0ZS1oYXNoCkBAIC0xMjcs MyArMTI4LDQgQEAgdGVzdDogbWF0dmlldy13cml0ZS1za2V3CiB0ZXN0OiBsb2NrLW5vd2Fp dAogdGVzdDogZm9yLXBvcnRpb24tb2YKIHRlc3Q6IGRkbC1kZXBlbmRlbmN5LWxvY2tpbmcK K3Rlc3Q6IHZhY3V1bS1leHRlbmRpbmctZnJlZXplCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9p c29sYXRpb24vc3BlY3MvdmFjdXVtLWV4dGVuZGluZy1mcmVlemUuc3BlYyBiL3NyYy90ZXN0 L2lzb2xhdGlvbi9zcGVjcy92YWN1dW0tZXh0ZW5kaW5nLWZyZWV6ZS5zcGVjCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjE3YzIwNGUyMzIKLS0tIC9kZXYvbnVs bAorKysgYi9zcmMvdGVzdC9pc29sYXRpb24vc3BlY3MvdmFjdXVtLWV4dGVuZGluZy1mcmVl emUuc3BlYwpAQCAtMCwwICsxLDExNyBAQAorIyBJbiBzaG9ydCwgdGhpcyB0ZXN0IHZhbGlk YXRlcyB0aGUgY29ycmVjdG5lc3MgYW5kIHN0YWJpbGl0eSBvZiBjdW11bGF0aXZlCisjIHZh Y3V1bSBzdGF0aXN0aWNzIGFjY291bnRpbmcgYXJvdW5kIGZyZWV6aW5nLCB2aXNpYmlsaXR5 LCBhbmQgcmV2aXNpb24KKyMgdHJhY2tpbmcgYWNyb3NzIFZBQ1VVTSBhbmQgYmFja2VuZCBv cGVyYXRpb25zLgorIyBJbiBhZGRpdGlvbiwgdGhlIHRlc3QgcHJvdmlkZXMgYSBzY2VuYXJp byB3aGVyZSBvbmUgcHJvY2VzcyBob2xkcyBhCisjIHRyYW5zYWN0aW9uIG9wZW4gd2hpbGUg YW5vdGhlciBwcm9jZXNzIGRlbGV0ZXMgdHVwbGVzLiBXZSBleHBlY3QgdGhhdAorIyBhIGJh Y2tlbmQgY2xlYXJzIHRoZSBhbGwtZnJvemVuIGFuZCBhbGwtdmlzaWJsZSBmbGFncywgd2hp Y2ggd2VyZSBzZXQKKyMgYnkgVkFDVVVNIGVhcmxpZXIsIG9ubHkgYWZ0ZXIgdGhlIGNvbW1p dHRpbmcgdHJhbnNhY3Rpb24gbWFrZXMgdGhlCisjIGRlbGV0aW9ucyB2aXNpYmxlLgorCitz ZXR1cAoreworICAgIENSRUFURSBUQUJMRSB2ZXN0YXQgKHggaW50LCB5IGludCkKKyAgICAg ICAgV0lUSCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gb2ZmLCBmaWxsZmFjdG9yID0gNzApOwor CisgICAgSU5TRVJUIElOVE8gdmVzdGF0CisgICAgICAgIFNFTEVDVCBpLCBpIEZST00gZ2Vu ZXJhdGVfc2VyaWVzKDEsIDUwMDApIEFTIGcoaSk7CisKKyAgICBDUkVBVEUgSU5ERVggdmVz dGF0X2lkeCBPTiB2ZXN0YXQgKHgpOworCisgICAgQ1JFQVRFIFRBQkxFIHN0YXRzX3N0YXRl IChmcm96ZW5fZmxhZ19jb3VudCBpbnQsIGFsbF92aXNpYmlsZV9mbGFnX2NvdW50IGludCwK KyAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyZWRfZnJvemVuX2ZsYWdfY291bnQgaW50 LCBjbGVhcmVkX2FsbF92aXNpYmlsZV9mbGFnX2NvdW50IGludCk7CisgICAgSU5TRVJUIElO VE8gc3RhdHNfc3RhdGUgVkFMVUVTICgwLDAsMCwwKTsKKyAgICBBTkFMWVpFIHZlc3RhdDsK KworICAgIC0tIEVuc3VyZSBzdGF0cyBhcmUgZmx1c2hlZCBiZWZvcmUgc3RhcnRpbmcgdGhl IHNjZW5hcmlvCisgICAgU0VMRUNUIHBnX3N0YXRfZm9yY2VfbmV4dF9mbHVzaCgpOworfQor Cit0ZWFyZG93bgoreworICAgIERST1AgVEFCTEUgSUYgRVhJU1RTIHZlc3RhdDsKKyAgICBS RVNFVCB2YWN1dW1fZnJlZXplX21pbl9hZ2U7CisgICAgUkVTRVQgdmFjdXVtX2ZyZWV6ZV90 YWJsZV9hZ2U7CisKK30KKworc2Vzc2lvbiBzMQorCitzdGVwIHMxX2dldF9zZXRfdm1fZmxh Z3Nfc3RhdHMKK3sKKyAgICBTRUxFQ1QgcGdfc3RhdF9mb3JjZV9uZXh0X2ZsdXNoKCk7CisK KyAgICBTRUxFQ1QgYy5yZWxhbGxmcm96ZW4gPiBmcm96ZW5fZmxhZ19jb3VudCBhcyByZWxh bGxmcm96ZW4sIGMucmVsYWxsdmlzaWJsZSA+IGFsbF92aXNpYmlsZV9mbGFnX2NvdW50IGFz IHJlbGFsbHZpc2libGUKKyAgICAgICAgRlJPTSBwZ19jbGFzcyBjLCBzdGF0c19zdGF0ZQor ICAgICAgICBXSEVSRSBjLnJlbG5hbWUgPSAndmVzdGF0JzsKKworICAgIFVQREFURSBzdGF0 c19zdGF0ZQorICAgICAgICBTRVQgZnJvemVuX2ZsYWdfY291bnQgPSBjLnJlbGFsbGZyb3pl biwKKyAgICAgICAgICAgIGFsbF92aXNpYmlsZV9mbGFnX2NvdW50ID0gYy5yZWxhbGx2aXNp YmxlCisgICAgICAgIEZST00gcGdfY2xhc3MgYworICAgICAgICBXSEVSRSBjLnJlbG5hbWUg PSAndmVzdGF0JzsKK30KKworc3RlcCBzMV9nZXRfY2xlYXJlZF92bV9mbGFnc19zdGF0cwor eworICAgIFNFTEVDVCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsKKworICAgIFNFTEVD VCB2LnZpc2libGVfcGFnZV9tYXJrc19jbGVhcmVkID4gY2xlYXJlZF9hbGxfdmlzaWJpbGVf ZmxhZ19jb3VudCBhcyB2aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJlZCwKKyAgICAgICAgICAg di5mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkID4gY2xlYXJlZF9mcm96ZW5fZmxhZ19jb3Vu dCBhcyBmcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkCisgICAgICAgIEZST00gcGdfc3RhdF9h bGxfdGFibGVzIHYsIHN0YXRzX3N0YXRlCisgICAgICAgIFdIRVJFIHYucmVsbmFtZSA9ICd2 ZXN0YXQnOworCisgICAgVVBEQVRFIHN0YXRzX3N0YXRlCisgICAgICAgIFNFVCBjbGVhcmVk X2FsbF92aXNpYmlsZV9mbGFnX2NvdW50ID0gdi52aXNpYmxlX3BhZ2VfbWFya3NfY2xlYXJl ZCwKKyAgICAgICAgICAgIGNsZWFyZWRfZnJvemVuX2ZsYWdfY291bnQgPSB2LmZyb3plbl9w YWdlX21hcmtzX2NsZWFyZWQKKyAgICAgICAgRlJPTSBwZ19zdGF0X2FsbF90YWJsZXMgdgor ICAgICAgICBXSEVSRSB2LnJlbG5hbWUgPSAndmVzdGF0JzsKK30KKworc3RlcCBzMV9zZWxl Y3RfZnJvbV9pbmRleAoreworICAgIEJFR0lOOworICAgIFNFTEVDVCBjb3VudCh4KSBGUk9N IHZlc3RhdCBXSEVSRSB4ID4gMjAwMDsKK30KKworc3RlcCBzMV9jb21taXQKK3sKKyAgICBD T01NSVQ7Cit9CisKK3Nlc3Npb24gczIKK3NldHVwCit7CisgICAgLS0gQ29uZmlndXJlIGFn Z3Jlc3NpdmUgZnJlZXppbmcgdmFjdXVtIGJlaGF2aW9yCisgICAgU0VUIHZhY3V1bV9mcmVl emVfbWluX2FnZSA9IDA7CisgICAgU0VUIHZhY3V1bV9mcmVlemVfdGFibGVfYWdlID0gMDsK K30KK3N0ZXAgczJfZGVsZXRlX2Zyb21fdGFibGUKK3sKKyAgICBERUxFVEUgRlJPTSB2ZXN0 YXQgV0hFUkUgeCA+IDQ5MzA7Cit9CitzdGVwIHMyX3ZhY3V1bV9mcmVlemUKK3sKKyAgICBW QUNVVU0gRlJFRVpFIHZlc3RhdDsKK30KKworc3RlcCBzMV91cGRhdGVfdGFibGUKK3sKKyAg ICBVUERBVEUgdmVzdGF0IFNFVCB4ID0geCArIDEwMDEgd2hlcmUgeCA+PSAyNTAwOworICAg IFNFTEVDVCBwZ19zdGF0X2ZvcmNlX25leHRfZmx1c2goKTsKK30KKworcGVybXV0YXRpb24K KyAgICBzMl92YWN1dW1fZnJlZXplCisgICAgczFfZ2V0X3NldF92bV9mbGFnc19zdGF0cwor ICAgIHMxX3VwZGF0ZV90YWJsZQorICAgIHMxX2dldF9jbGVhcmVkX3ZtX2ZsYWdzX3N0YXRz CisgICAgczJfdmFjdXVtX2ZyZWV6ZQorICAgIHMxX2dldF9zZXRfdm1fZmxhZ3Nfc3RhdHMK KyAgICBzMl92YWN1dW1fZnJlZXplCisgICAgczFfc2VsZWN0X2Zyb21faW5kZXgKKyAgICBz Ml9kZWxldGVfZnJvbV90YWJsZQorICAgIHMxX2dldF9jbGVhcmVkX3ZtX2ZsYWdzX3N0YXRz CisgICAgczJfdmFjdXVtX2ZyZWV6ZQorICAgIHMxX2dldF9zZXRfdm1fZmxhZ3Nfc3RhdHMK KyAgICBzMV9jb21taXQKKyAgICBzMV9nZXRfY2xlYXJlZF92bV9mbGFnc19zdGF0cwpcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnVsZXMub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5v dXQKaW5kZXggYTY1YTViZjBjNC4uMDk2ZTRmNzYzZiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9ydWxlcy5vdXQKQEAgLTE4NDYsNyArMTg0Niw5IEBAIHBnX3N0YXRfYWxsX3RhYmxl c3wgU0VMRUNUIGMub2lkIEFTIHJlbGlkLAogICAgIHBnX3N0YXRfZ2V0X3RvdGFsX2F1dG92 YWN1dW1fdGltZShjLm9pZCkgQVMgdG90YWxfYXV0b3ZhY3V1bV90aW1lLAogICAgIHBnX3N0 YXRfZ2V0X3RvdGFsX2FuYWx5emVfdGltZShjLm9pZCkgQVMgdG90YWxfYW5hbHl6ZV90aW1l LAogICAgIHBnX3N0YXRfZ2V0X3RvdGFsX2F1dG9hbmFseXplX3RpbWUoYy5vaWQpIEFTIHRv dGFsX2F1dG9hbmFseXplX3RpbWUsCi0gICAgcGdfc3RhdF9nZXRfc3RhdF9yZXNldF90aW1l KGMub2lkKSBBUyBzdGF0c19yZXNldAorICAgIHBnX3N0YXRfZ2V0X3N0YXRfcmVzZXRfdGlt ZShjLm9pZCkgQVMgc3RhdHNfcmVzZXQsCisgICAgcGdfc3RhdF9nZXRfdmlzaWJsZV9wYWdl X21hcmtzX2NsZWFyZWQoYy5vaWQpIEFTIHZpc2libGVfcGFnZV9tYXJrc19jbGVhcmVkLAor ICAgIHBnX3N0YXRfZ2V0X2Zyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQoYy5vaWQpIEFTIGZy b3plbl9wYWdlX21hcmtzX2NsZWFyZWQKICAgIEZST00gKChwZ19jbGFzcyBjCiAgICAgIExF RlQgSk9JTiBwZ19pbmRleCBpIE9OICgoYy5vaWQgPSBpLmluZHJlbGlkKSkpCiAgICAgIExF RlQgSk9JTiBwZ19uYW1lc3BhY2UgbiBPTiAoKG4ub2lkID0gYy5yZWxuYW1lc3BhY2UpKSkK QEAgLTIzNTcsNyArMjM1OSw5IEBAIHBnX3N0YXRfc3lzX3RhYmxlc3wgU0VMRUNUIHJlbGlk LAogICAgIHRvdGFsX2F1dG92YWN1dW1fdGltZSwKICAgICB0b3RhbF9hbmFseXplX3RpbWUs CiAgICAgdG90YWxfYXV0b2FuYWx5emVfdGltZSwKLSAgICBzdGF0c19yZXNldAorICAgIHN0 YXRzX3Jlc2V0LAorICAgIHZpc2libGVfcGFnZV9tYXJrc19jbGVhcmVkLAorICAgIGZyb3pl bl9wYWdlX21hcmtzX2NsZWFyZWQKICAgIEZST00gcGdfc3RhdF9hbGxfdGFibGVzCiAgIFdI RVJFICgoc2NoZW1hbmFtZSA9IEFOWSAoQVJSQVlbJ3BnX2NhdGFsb2cnOjpuYW1lLCAnaW5m b3JtYXRpb25fc2NoZW1hJzo6bmFtZV0pKSBPUiAoc2NoZW1hbmFtZSB+ICdecGdfdG9hc3Qn Ojp0ZXh0KSk7CiBwZ19zdGF0X3VzZXJfZnVuY3Rpb25zfCBTRUxFQ1QgcC5vaWQgQVMgZnVu Y2lkLApAQCAtMjQxMiw3ICsyNDE2LDkgQEAgcGdfc3RhdF91c2VyX3RhYmxlc3wgU0VMRUNU IHJlbGlkLAogICAgIHRvdGFsX2F1dG92YWN1dW1fdGltZSwKICAgICB0b3RhbF9hbmFseXpl X3RpbWUsCiAgICAgdG90YWxfYXV0b2FuYWx5emVfdGltZSwKLSAgICBzdGF0c19yZXNldAor ICAgIHN0YXRzX3Jlc2V0LAorICAgIHZpc2libGVfcGFnZV9tYXJrc19jbGVhcmVkLAorICAg IGZyb3plbl9wYWdlX21hcmtzX2NsZWFyZWQKICAgIEZST00gcGdfc3RhdF9hbGxfdGFibGVz CiAgIFdIRVJFICgoc2NoZW1hbmFtZSA8PiBBTEwgKEFSUkFZWydwZ19jYXRhbG9nJzo6bmFt ZSwgJ2luZm9ybWF0aW9uX3NjaGVtYSc6Om5hbWVdKSkgQU5EIChzY2hlbWFuYW1lICF+ICde cGdfdG9hc3QnOjp0ZXh0KSk7CiBwZ19zdGF0X3dhbHwgU0VMRUNUIHdhbF9yZWNvcmRzLAot LSAKMi4zOS41IChBcHBsZSBHaXQtMTU0KQoK --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0002-Extended-vacuum-statistics-core-heap-and-tuple-metri.patch" Content-Disposition: attachment; filename*0="0002-Extended-vacuum-statistics-core-heap-and-tuple-metri.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0MWU1YWVhYzdjMzQ0MzkxMmUwZTAyMDgxNmViMGNiYjY0OWMyZGJiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDowNjo1MyArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggMi84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogY29yZSBoZWFw IGFuZCB0dXBsZSBtZXRyaWNzCiBmb3IgdGFibGVzIGFuZCBpbmRleGVzCgpFeHBvc2UgdGhl IGNvcmUgcGVyLXRhYmxlIGhlYXAgYW5kIGRlYWQtdHVwbGUgbWV0cmljcyBvZiB0aGUgbGFz dApWQUNVVU0gdGhyb3VnaCB0aGUgbmV3IHBnX3N0YXRfdmFjdXVtX3RhYmxlcyB2aWV3IGFu ZApwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzKCkgZnVuY3Rpb24sIHdpdGggZG9jdW1lbnRh dGlvbiBhbmQgcmVncmVzc2lvbgpjb3ZlcmFnZToKCiAgcGFnZXNfc2Nhbm5lZCAgICAgICAg IGhlYXAgcGFnZXMgZXhhbWluZWQgKG5vdCBza2lwcGVkIHZpYSB0aGUgVk0pCiAgcGFnZXNf cmVtb3ZlZCAgICAgICAgIGhlYXAgcGFnZXMgYnkgd2hpY2ggc3RvcmFnZSB3YXMgdHJ1bmNh dGVkCiAgdHVwbGVzX2RlbGV0ZWQgICAgICAgIGRlYWQgdHVwbGVzIHJlbW92ZWQgYnkgdGhl IHZhY3V1bQogIHR1cGxlc19mcm96ZW4gICAgICAgICB0dXBsZXMgZnJvemVuIGJ5IHRoZSB2 YWN1dW0KICByZWNlbnRseV9kZWFkX3R1cGxlcyAgZGVhZCB0dXBsZXMgc3RpbGwgdmlzaWJs ZSB0byBzb21lIHRyYW5zYWN0aW9uIGFuZAogICAgICAgICAgICAgICAgICAgICAgICB0aGVy ZWZvcmUgbm90IHlldCByZW1vdmFibGUKClRoZSBtYXRjaGluZyBwZXItaW5kZXggY29yZSBt ZXRyaWNzIGFyZSBleHBvc2VkIGF0IHRoZSBzYW1lIHRpbWUgdGhyb3VnaCB0aGUKbmV3IHBn X3N0YXRfdmFjdXVtX2luZGV4ZXMgdmlldyBhbmQgcGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4 ZXMoKSBmdW5jdGlvbjoKCiAgcGFnZXNfZGVsZXRlZCAgIGluZGV4IHBhZ2VzIGRlbGV0ZWQg KG1hZGUgcmV1c2FibGUpIGJ5IHRoZSB2YWN1dW0KICB0dXBsZXNfZGVsZXRlZCAgaW5kZXgg ZW50cmllcyByZW1vdmVkIGJ5IHRoZSB2YWN1dW0KClRoaXMgZmlyc3QgY29tbWl0IGFsc28g YWRkcyB0aGUgaW5mcmFzdHJ1Y3R1cmUgdGhlIHJlc3Qgb2YgdGhlIHNlcmllcyBidWlsZHMK b24uICBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljcyBhcmUgc3RvcmVkIGluIHRoZSBjdW11 bGF0aXZlIHN0YXRpc3RpY3Mgc3lzdGVtCnVuZGVyIGEgZGVkaWNhdGVkIHN0YXRzIGtpbmQs IFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElPTiwga2VwdCBzZXBhcmF0ZSBmcm9tCnRoZSBy ZWd1bGFyIHJlbGF0aW9uIHN0YXRpc3RpY3MuIFRoZXkgYXJlIGNvbGxlY3RlZCBkdXJpbmcg dmFjdXVtIGFuZAphY2N1bXVsYXRlZCBwZXIgcmVsYXRpb24sIG9ubHkgd2hpbGUgdGhlIHRy YWNrX3ZhY3V1bV9zdGF0aXN0aWNzIEdVQyBpcwplbmFibGVkLiAgSW5kZXhlcyBhcmUgdHJh Y2tlZCB1bmRlciB0aGUgc2FtZSBzdGF0cyBraW5kLCB3aXRoIHRoZWlyIHRvdGFscwpyZXBv cnRlZCBvbmNlIHBlciBpbmRleCBhdCB0aGUgZW5kIG9mIHRoZSB2YWN1dW0uCgpUaGUgdmFj dXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZCBpc29sYXRpb24gdGVzdCBpcyBhZGRl ZCBoZXJlIHRvIGNvdmVyCnJlY2VudGx5X2RlYWRfdHVwbGVzOiBhIFJFUEVBVEFCTEUgUkVB RCB0cmFuc2FjdGlvbiBrZWVwcyByZWNlbnRseSBkZWxldGVkCnR1cGxlcyB2aXNpYmxlLCBz byBWQUNVVU0gY2Fubm90IHJlbW92ZSB0aGVtIGFuZCByZXBvcnRzIHRoZW0gYXMKcmVjZW50 bHlfZGVhZF90dXBsZXMgcmF0aGVyIHRoYW4gdHVwbGVzX2RlbGV0ZWQuCi0tLQogZG9jL3Ny Yy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sICAgICAgICAgICAgICAgIHwgMTkwICsrKysrKysr KysrKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jICAgICAg ICAgIHwgIDc5ICsrKysrKysrCiBzcmMvYmFja2VuZC9jYXRhbG9nL2hlYXAuYyAgICAgICAg ICAgICAgICAgICAgfCAgIDEgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmRleC5jICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIHNyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdz LnNxbCAgICAgICAgICB8ICAzNSArKysrCiBzcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW1w YXJhbGxlbC5jICAgICAgICAgfCAgMjcgKysrCiBzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0 eS9NYWtlZmlsZSAgICAgICAgICAgfCAgIDEgKwogc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvbWVzb24uYnVpbGQgICAgICAgIHwgICAxICsKIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2 aXR5L3Bnc3RhdC5jICAgICAgICAgICB8ICAxNSArLQogc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMgIHwgICA2ICsKIHNyYy9iYWNrZW5kL3V0aWxzL2Fj dGl2aXR5L3Bnc3RhdF92YWN1dW0uYyAgICB8IDEyNiArKysrKysrKysrKysKIHNyYy9iYWNr ZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jICAgICAgICAgICB8ICA4NCArKysrKysrKwog c3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9ndWNfcGFyYW1ldGVycy5kYXQgICAgIHwgICA2ICsK IHNyYy9iYWNrZW5kL3V0aWxzL21pc2MvcG9zdGdyZXNxbC5jb25mLnNhbXBsZSB8ICAgMSAr CiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgICAgICAgfCAgMTkg KysKIHNyYy9pbmNsdWRlL3Bnc3RhdC5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA4 MyArKysrKysrLQogc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFsLmggICAgICAg ICAgIHwgICA4ICsKIHNyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9raW5kLmggICAgICAgICAg ICAgICB8ICAgMyArLQogLi4uL3ZhY3V1bS1leHRlbmRpbmctaW4tcmVwZXRhYmxlLXJlYWQu b3V0ICAgIHwgIDM4ICsrKysKIC4uLi92YWN1dW0tZXh0ZW5kaW5nLWluLXJlcGV0YWJsZS1y ZWFkLnNwZWMgICB8ICA1MyArKysrKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxl cy5vdXQgICAgICAgICAgIHwgIDI1ICsrKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC92 YWN1dW1fc3RhdHMub3V0ICAgIHwgIDg3ICsrKysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL3Bh cmFsbGVsX3NjaGVkdWxlICAgICAgICAgICAgfCAgIDMgKwogc3JjL3Rlc3QvcmVncmVzcy9z cWwvdmFjdXVtX3N0YXRzLnNxbCAgICAgICAgIHwgIDY4ICsrKysrKysKIDI0IGZpbGVzIGNo YW5nZWQsIDk1NyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYwogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC92YWN1dW0tZXh0 ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkLm91dAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90 ZXN0L2lzb2xhdGlvbi9zcGVjcy92YWN1dW0tZXh0ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFk LnNwZWMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Zh Y3V1bV9zdGF0cy5vdXQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9yZWdyZXNzL3Nx bC92YWN1dW1fc3RhdHMuc3FsCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3N5c3RlbS12 aWV3cy5zZ21sIGIvZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sCmluZGV4IDJlYmVj NjkyOGQuLmJkY2Q4ZDlmNDcgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmll d3Muc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKQEAgLTU3ODIs NCArNTc4MiwxOTQgQEAgU0VMRUNUICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdf cHJlcGFyZWRfeGFjdHMgcHB4CiAgIDwvdGFibGU+CiAgPC9zZWN0MT4KIAorIDxzZWN0MSBp ZD0idmlldy1wZy1zdGF0LXZhY3V1bS10YWJsZXMiPgorICA8dGl0bGU+PHN0cnVjdG5hbWU+ cGdfc3RhdF92YWN1dW1fdGFibGVzPC9zdHJ1Y3RuYW1lPjwvdGl0bGU+CisKKyAgPGluZGV4 dGVybSB6b25lPSJ2aWV3LXBnLXN0YXQtdmFjdXVtLXRhYmxlcyI+CisgICA8cHJpbWFyeT5w Z19zdGF0X3ZhY3V1bV90YWJsZXM8L3ByaW1hcnk+CisgIDwvaW5kZXh0ZXJtPgorCisgIDxw YXJhPgorICAgVGhlIDxzdHJ1Y3RuYW1lPnBnX3N0YXRfdmFjdXVtX3RhYmxlczwvc3RydWN0 bmFtZT4gdmlldyB3aWxsIGNvbnRhaW4gb25lIHJvdworICAgZm9yIGVhY2ggdGFibGUgaW4g dGhlIGN1cnJlbnQgZGF0YWJhc2UsIHNob3dpbmcgZXh0ZW5kZWQgc3RhdGlzdGljcyBhYm91 dAorICAgdGhlIGFjdGl2aXR5IG9mIHRoZSBtb3N0IHJlY2VudCA8Y29tbWFuZD5WQUNVVU08 L2NvbW1hbmQ+IG9uIHRoYXQgdGFibGUuCisgICBUaGVzZSBzdGF0aXN0aWNzIGFyZSBhY2N1 bXVsYXRlZCBvbmx5IHdoaWxlCisgICA8dmFybmFtZT50cmFja192YWN1dW1fc3RhdGlzdGlj czwvdmFybmFtZT4gaXMgZW5hYmxlZC4KKyAgPC9wYXJhPgorCisgIDx0YWJsZSBpZD0idmll dy1wZy1zdGF0LXZhY3V1bS10YWJsZXMtY29scyI+CisgICA8dGl0bGU+PHN0cnVjdG5hbWU+ cGdfc3RhdF92YWN1dW1fdGFibGVzPC9zdHJ1Y3RuYW1lPiBDb2x1bW5zPC90aXRsZT4KKyAg IDx0Z3JvdXAgY29scz0iMSI+CisgICAgPHRoZWFkPgorICAgICA8cm93PgorICAgICAgPGVu dHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZp bml0aW9uIj4KKyAgICAgICBDb2x1bW4gVHlwZQorICAgICAgPC9wYXJhPgorICAgICAgPHBh cmE+CisgICAgICAgRGVzY3JpcHRpb24KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8 L3Jvdz4KKyAgICA8L3RoZWFkPgorCisgICAgPHRib2R5PgorICAgICA8cm93PgorICAgICAg PGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9k ZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+c2NoZW1hbmFtZTwvc3RydWN0Zmll bGQ+IDx0eXBlPm5hbWU8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAg ICAgICBOYW1lIG9mIHRoZSBzY2hlbWEgdGhhdCB0aGUgdGFibGUgaXMgaW4uCisgICAgICA8 L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkg cm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRp b24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5yZWxuYW1lPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+ bmFtZTwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE5hbWUg b2YgdGhlIHRhYmxlLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAg ICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJh IHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+cmVsaWQ8 L3N0cnVjdGZpZWxkPiA8dHlwZT5vaWQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8 cGFyYT4KKyAgICAgICBPSUQgb2YgdGhlIHRhYmxlLgorICAgICAgPC9wYXJhPjwvZW50cnk+ CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2df dGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8 c3RydWN0ZmllbGQ+cGFnZXNfc2Nhbm5lZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwv dHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBo ZWFwIHBhZ2VzIGV4YW1pbmVkIGJ5IHRoZSB2YWN1dW0gKHBhZ2VzIHRoYXQgd2VyZSBub3Qg c2tpcHBlZCB1c2luZyB0aGUgdmlzaWJpbGl0eSBtYXApLgorICAgICAgPC9wYXJhPjwvZW50 cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFs b2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAg ICA8c3RydWN0ZmllbGQ+cGFnZXNfcmVtb3ZlZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2lu dDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBv ZiBoZWFwIHBhZ2VzIGJ5IHdoaWNoIHRoZSB0YWJsZSdzIHN0b3JhZ2Ugd2FzIHBoeXNpY2Fs bHkgcmVkdWNlZCAodHJ1bmNhdGVkKSBieSB0aGUgdmFjdXVtLgorICAgICAgPC9wYXJhPjwv ZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNh dGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAg ICAgICA8c3RydWN0ZmllbGQ+dHVwbGVzX2RlbGV0ZWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5i aWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1i ZXIgb2YgZGVhZCB0dXBsZXMgcmVtb3ZlZCBieSB0aGUgdmFjdXVtLgorICAgICAgPC9wYXJh PjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9 ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4K KyAgICAgICA8c3RydWN0ZmllbGQ+dHVwbGVzX2Zyb3plbjwvc3RydWN0ZmllbGQ+IDx0eXBl PmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51 bWJlciBvZiB0dXBsZXMgZnJvemVuIGJ5IHRoZSB2YWN1dW0uCisgICAgICA8L3BhcmE+PC9l bnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAg ICAgIDxzdHJ1Y3RmaWVsZD5yZWNlbnRseV9kZWFkX3R1cGxlczwvc3RydWN0ZmllbGQ+IDx0 eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAg IE51bWJlciBvZiBkZWFkIHR1cGxlcyB0aGF0IGFyZSBzdGlsbCB2aXNpYmxlIHRvIHNvbWUg dHJhbnNhY3Rpb24gYW5kIHRoZXJlZm9yZSBjb3VsZCBub3QgeWV0IGJlIHJlbW92ZWQuCisg ICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgPC90Ym9keT4KKyAgIDwv dGdyb3VwPgorICA8L3RhYmxlPgorIDwvc2VjdDE+CisKKyA8c2VjdDEgaWQ9InZpZXctcGct c3RhdC12YWN1dW0taW5kZXhlcyI+CisgIDx0aXRsZT48c3RydWN0bmFtZT5wZ19zdGF0X3Zh Y3V1bV9pbmRleGVzPC9zdHJ1Y3RuYW1lPjwvdGl0bGU+CisKKyAgPGluZGV4dGVybSB6b25l PSJ2aWV3LXBnLXN0YXQtdmFjdXVtLWluZGV4ZXMiPgorICAgPHByaW1hcnk+cGdfc3RhdF92 YWN1dW1faW5kZXhlczwvcHJpbWFyeT4KKyAgPC9pbmRleHRlcm0+CisKKyAgPHBhcmE+Cisg ICBUaGUgPHN0cnVjdG5hbWU+cGdfc3RhdF92YWN1dW1faW5kZXhlczwvc3RydWN0bmFtZT4g dmlldyB3aWxsIGNvbnRhaW4gb25lIHJvdworICAgZm9yIGVhY2ggaW5kZXggaW4gdGhlIGN1 cnJlbnQgZGF0YWJhc2UsIHNob3dpbmcgZXh0ZW5kZWQgc3RhdGlzdGljcyBhYm91dAorICAg dGhlIGFjdGl2aXR5IG9mIHRoZSBtb3N0IHJlY2VudCA8Y29tbWFuZD5WQUNVVU08L2NvbW1h bmQ+IG9uIHRoYXQgaW5kZXguCisgICBUaGVzZSBzdGF0aXN0aWNzIGFyZSBhY2N1bXVsYXRl ZCBvbmx5IHdoaWxlCisgICA8dmFybmFtZT50cmFja192YWN1dW1fc3RhdGlzdGljczwvdmFy bmFtZT4gaXMgZW5hYmxlZC4KKyAgPC9wYXJhPgorCisgIDx0YWJsZSBpZD0idmlldy1wZy1z dGF0LXZhY3V1bS1pbmRleGVzLWNvbHMiPgorICAgPHRpdGxlPjxzdHJ1Y3RuYW1lPnBnX3N0 YXRfdmFjdXVtX2luZGV4ZXM8L3N0cnVjdG5hbWU+IENvbHVtbnM8L3RpdGxlPgorICAgPHRn cm91cCBjb2xzPSIxIj4KKyAgICA8dGhlYWQ+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkg cm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRp b24iPgorICAgICAgIENvbHVtbiBUeXBlCisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4K KyAgICAgICBEZXNjcmlwdGlvbgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93 PgorICAgIDwvdGhlYWQ+CisKKyAgICA8dGJvZHk+CisgICAgIDxyb3c+CisgICAgICA8ZW50 cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmlu aXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5yZWxpZDwvc3RydWN0ZmllbGQ+IDx0eXBl Pm9pZDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE9JRCBv ZiB0aGUgdGFibGUgdGhlIGluZGV4IGlzIG9uLgorICAgICAgPC9wYXJhPjwvZW50cnk+Cisg ICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFi bGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3Ry dWN0ZmllbGQ+aW5kZXhyZWxpZDwvc3RydWN0ZmllbGQ+IDx0eXBlPm9pZDwvdHlwZT4KKyAg ICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE9JRCBvZiB0aGUgaW5kZXguCisg ICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5zY2hlbWFuYW1lPC9zdHJ1Y3RmaWVs ZD4gPHR5cGU+bmFtZTwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAg ICAgIE5hbWUgb2YgdGhlIHNjaGVtYSB0aGF0IHRoZSB0YWJsZSBpcyBpbi4KKyAgICAgIDwv cGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSBy b2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlv biI+CisgICAgICAgPHN0cnVjdGZpZWxkPnJlbG5hbWU8L3N0cnVjdGZpZWxkPiA8dHlwZT5u YW1lPC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTmFtZSBv ZiB0aGUgdGFibGUuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAg IDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEg cm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5pbmRleHJl bG5hbWU8L3N0cnVjdGZpZWxkPiA8dHlwZT5uYW1lPC90eXBlPgorICAgICAgPC9wYXJhPgor ICAgICAgPHBhcmE+CisgICAgICAgTmFtZSBvZiB0aGUgaW5kZXguCisgICAgICA8L3BhcmE+ PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0i Y2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgor ICAgICAgIDxzdHJ1Y3RmaWVsZD5wYWdlc19kZWxldGVkPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+ YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTnVt YmVyIG9mIGluZGV4IHBhZ2VzIGRlbGV0ZWQgKG1hZGUgcmV1c2FibGUpIGJ5IHRoZSB2YWN1 dW0uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+Cisg ICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29s dW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD50dXBsZXNfZGVsZXRlZDwv c3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAg IDxwYXJhPgorICAgICAgIE51bWJlciBvZiBpbmRleCBlbnRyaWVzIHJlbW92ZWQgYnkgdGhl IHZhY3V1bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICA8L3Ri b2R5PgorICAgPC90Z3JvdXA+CisgIDwvdGFibGU+CisgPC9zZWN0MT4KKwogPC9jaGFwdGVy PgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jIGIv c3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jCmluZGV4IDM5Mzk1YWVkMGQu LjNjNDAzZTg2ZjAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1 bWxhenkuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMKQEAg LTI4Myw2ICsyODMsNyBAQCB0eXBlZGVmIHN0cnVjdCBMVlJlbFN0YXRlCiAJLyogRXJyb3Ig cmVwb3J0aW5nIHN0YXRlICovCiAJY2hhcgkgICAqZGJuYW1lOwogCWNoYXIJICAgKnJlbG5h bWVzcGFjZTsKKwlPaWQJCQlyZWxvaWQ7CiAJY2hhcgkgICAqcmVsbmFtZTsKIAljaGFyCSAg ICppbmRuYW1lOwkJLyogQ3VycmVudCBpbmRleCBuYW1lICovCiAJQmxvY2tOdW1iZXIgYmxr bm87CQkJLyogdXNlZCBvbmx5IGZvciBoZWFwIG9wZXJhdGlvbnMgKi8KQEAgLTQ4Myw2ICs0 ODQsOCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfdmFjdXVtX2Vycm9yX2luZm8oTFZSZWxTdGF0 ZSAqdmFjcmVsLAogCQkJCQkJCQkJIE9mZnNldE51bWJlciBvZmZudW0pOwogc3RhdGljIHZv aWQgcmVzdG9yZV92YWN1dW1fZXJyb3JfaW5mbyhMVlJlbFN0YXRlICp2YWNyZWwsCiAJCQkJ CQkJCQkgIGNvbnN0IExWU2F2ZWRFcnJJbmZvICpzYXZlZF92YWNyZWwpOworc3RhdGljIHZv aWQgYWNjdW11bGF0ZV9oZWFwX3ZhY3V1bV9zdGF0aXN0aWNzKExWUmVsU3RhdGUgKnZhY3Jl bCwKKwkJCQkJCQkJCQkJICBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKmV4dFZhY1N0 YXRzKTsKIAogCiAKQEAgLTYwOSw2ICs2MTIsNjQgQEAgaGVhcF92YWN1dW1fZWFnZXJfc2Nh bl9zZXR1cChMVlJlbFN0YXRlICp2YWNyZWwsIGNvbnN0IFZhY3V1bVBhcmFtcyAqcGFyYW1z KQogCQlmaXJzdF9yZWdpb25fcmF0aW87CiB9CiAKKy8qCisgKiBGaWxsIHRoZSBleHRlbmRl ZCB2YWN1dW0gc3RhdGlzdGljcyByZXBvcnQgZm9yIGEgaGVhcCByZWxhdGlvbiB3aXRoIHRo ZQorICogY291bnRlcnMgdGhhdCBhcmUgZGVyaXZlZCBkaXJlY3RseSBmcm9tIHRoZSBMVlJl bFN0YXRlLiAgQnVmZmVyLCBXQUwgYW5kCisgKiB0aW1pbmcgY291bnRlcnMgcmVxdWlyZSBz YW1wbGluZyByZXNvdXJjZSB1c2FnZSBhcm91bmQgdGhlIHZhY3V1bSBhbmQgYXJlCisgKiBn YXRoZXJlZCBzZXBhcmF0ZWx5OyB0aGV5IGFyZSBub3QgdG91Y2hlZCBoZXJlLgorICovCitz dGF0aWMgdm9pZAorYWNjdW11bGF0ZV9oZWFwX3ZhY3V1bV9zdGF0aXN0aWNzKExWUmVsU3Rh dGUgKnZhY3JlbCwKKwkJCQkJCQkJICBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKmV4 dFZhY1N0YXRzKQoreworCWlmICghcGdzdGF0X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzKQor CQlyZXR1cm47CisKKwlleHRWYWNTdGF0cy0+dHlwZSA9IFBHU1RBVF9FWFRWQUNfVEFCTEU7 CisJZXh0VmFjU3RhdHMtPnRhYmxlLnBhZ2VzX3NjYW5uZWQgPSB2YWNyZWwtPnNjYW5uZWRf cGFnZXM7CisJZXh0VmFjU3RhdHMtPnRhYmxlLnBhZ2VzX3JlbW92ZWQgPSB2YWNyZWwtPnJl bW92ZWRfcGFnZXM7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi50dXBsZXNfZGVsZXRlZCA9IHZh Y3JlbC0+dHVwbGVzX2RlbGV0ZWQ7CisJZXh0VmFjU3RhdHMtPnRhYmxlLnR1cGxlc19mcm96 ZW4gPSB2YWNyZWwtPnR1cGxlc19mcm96ZW47CisJZXh0VmFjU3RhdHMtPnRhYmxlLnJlY2Vu dGx5X2RlYWRfdHVwbGVzID0gdmFjcmVsLT5yZWNlbnRseV9kZWFkX3R1cGxlczsKK30KKwor LyoKKyAqIFJlcG9ydCB0aGUgcGVyLWluZGV4IGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNz LCBvbmUgcmVwb3J0IHBlciBpbmRleC4KKyAqCisgKiBUaGUgcGVyLWluZGV4IGNvdW50ZXJz IChwYWdlc19kZWxldGVkIGFuZCB0aGUgbnVtYmVyIG9mIHJlbW92ZWQgaW5kZXgKKyAqIGVu dHJpZXMpIGFyZSBkZXJpdmVkIGRpcmVjdGx5IGZyb20gZWFjaCBpbmRleCdzIGZpbmFsIElu ZGV4QnVsa0RlbGV0ZVJlc3VsdCwKKyAqIHdoaWNoIGFscmVhZHkgaG9sZHMgdGhlIHRvdGFs cyBhY2N1bXVsYXRlZCBhY3Jvc3MgYWxsIGJ1bGtkZWxldGUgYW5kIGNsZWFudXAKKyAqIHBh c3NlcyAtLSBzbyBubyBwZXItcGFzcyBzYW1wbGluZyBpcyBuZWVkZWQgaGVyZS4gIFVzZWQg YnkgdGhlIG5vbi1wYXJhbGxlbAorICogcGF0aCBvbmx5OyB0aGUgcGFyYWxsZWwgcGF0aCBy ZXBvcnRzIGl0cyBEU00tcmVzaWRlbnQgcmVzdWx0cyBmcm9tCisgKiBwYXJhbGxlbF92YWN1 dW1fZW5kKCkuCisgKi8KK3N0YXRpYyB2b2lkCityZXBvcnRfaW5kZXhfdmFjdXVtX2V4dHN0 YXRzKExWUmVsU3RhdGUgKnZhY3JlbCkKK3sKKwlpZiAoIXBnc3RhdF90cmFja192YWN1dW1f c3RhdGlzdGljcykKKwkJcmV0dXJuOworCisJZm9yIChpbnQgaWR4ID0gMDsgaWR4IDwgdmFj cmVsLT5uaW5kZXhlczsgaWR4KyspCisJeworCQlSZWxhdGlvbglpbmRyZWwgPSB2YWNyZWwt PmluZHJlbHNbaWR4XTsKKwkJSW5kZXhCdWxrRGVsZXRlUmVzdWx0ICppc3RhdCA9IHZhY3Jl bC0+aW5kc3RhdHNbaWR4XTsKKwkJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzIHJlcG9y dDsKKworCQkvKiBTa2lwIGluZGV4ZXMgdGhhdCB0aGlzIHZhY3V1bSBkaWQgbm90IHByb2Nl c3MgKi8KKwkJaWYgKGlzdGF0ID09IE5VTEwpCisJCQljb250aW51ZTsKKworCQltZW1zZXQo JnJlcG9ydCwgMCwgc2l6ZW9mKHJlcG9ydCkpOworCQlyZXBvcnQudHlwZSA9IFBHU1RBVF9F WFRWQUNfSU5ERVg7CisJCXJlcG9ydC5jb21tb24udHVwbGVzX2RlbGV0ZWQgPSBpc3RhdC0+ dHVwbGVzX3JlbW92ZWQ7CisJCXJlcG9ydC5pbmRleC5wYWdlc19kZWxldGVkID0gaXN0YXQt PnBhZ2VzX2RlbGV0ZWQ7CisKKwkJcGdzdGF0X3JlcG9ydF92YWN1dW1fZXh0c3RhdHMoUmVs YXRpb25HZXRSZWxpZChpbmRyZWwpLAorCQkJCQkJCQkJICBpbmRyZWwtPnJkX3JlbC0+cmVs aXNzaGFyZWQsCisJCQkJCQkJCQkgICZyZXBvcnQpOworCX0KK30KKwogLyoKICAqCWhlYXBf dmFjdXVtX3JlbCgpIC0tIHBlcmZvcm0gVkFDVVVNIGZvciBvbmUgaGVhcCByZWxhdGlvbgog ICoKQEAgLTY0Myw2ICs3MDQsMTAgQEAgaGVhcF92YWN1dW1fcmVsKFJlbGF0aW9uIHJlbCwg Y29uc3QgVmFjdXVtUGFyYW1zICpwYXJhbXMsCiAJRXJyb3JDb250ZXh0Q2FsbGJhY2sgZXJy Y2FsbGJhY2s7CiAJY2hhcgkgICoqaW5kbmFtZXMgPSBOVUxMOwogCVNpemUJCWRlYWRfaXRl bXNfbWF4X2J5dGVzID0gMDsKKwlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgZXh0VmFj UmVwb3J0OworCisJLyogSW5pdGlhbGl6ZSB0aGUgZXh0ZW5kZWQgdmFjdXVtIHN0YXRpc3Rp Y3MgcmVwb3J0ICovCisJbWVtc2V0KCZleHRWYWNSZXBvcnQsIDAsIHNpemVvZihQZ1N0YXRf VmFjdXVtUmVsYXRpb25Db3VudHMpKTsKIAogCXZlcmJvc2UgPSAocGFyYW1zLT5vcHRpb25z ICYgVkFDT1BUX1ZFUkJPU0UpICE9IDA7CiAJaW5zdHJ1bWVudCA9ICh2ZXJib3NlIHx8IChB bUF1dG9WYWN1dW1Xb3JrZXJQcm9jZXNzKCkgJiYKQEAgLTY4Niw2ICs3NTEsNyBAQCBoZWFw X3ZhY3V1bV9yZWwoUmVsYXRpb24gcmVsLCBjb25zdCBWYWN1dW1QYXJhbXMgKnBhcmFtcywK IAl2YWNyZWwgPSBwYWxsb2MwX29iamVjdChMVlJlbFN0YXRlKTsKIAl2YWNyZWwtPmRibmFt ZSA9IGdldF9kYXRhYmFzZV9uYW1lKE15RGF0YWJhc2VJZCk7CiAJdmFjcmVsLT5yZWxuYW1l c3BhY2UgPSBnZXRfbmFtZXNwYWNlX25hbWUoUmVsYXRpb25HZXROYW1lc3BhY2UocmVsKSk7 CisJdmFjcmVsLT5yZWxvaWQgPSBSZWxhdGlvbkdldFJlbGlkKHJlbCk7CiAJdmFjcmVsLT5y ZWxuYW1lID0gcHN0cmR1cChSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWwpKTsKIAl2YWNy ZWwtPmluZG5hbWUgPSBOVUxMOwogCXZhY3JlbC0+cGhhc2UgPSBWQUNVVU1fRVJSQ0JfUEhB U0VfVU5LTk9XTjsKQEAgLTcwMCw2ICs3NjYsNyBAQCBoZWFwX3ZhY3V1bV9yZWwoUmVsYXRp b24gcmVsLCBjb25zdCBWYWN1dW1QYXJhbXMgKnBhcmFtcywKIAl2YWNfb3Blbl9pbmRleGVz KHZhY3JlbC0+cmVsLCBSb3dFeGNsdXNpdmVMb2NrLCAmdmFjcmVsLT5uaW5kZXhlcywKIAkJ CQkJICZ2YWNyZWwtPmluZHJlbHMpOwogCXZhY3JlbC0+YnN0cmF0ZWd5ID0gYnN0cmF0ZWd5 OworCiAJaWYgKGluc3RydW1lbnQgJiYgdmFjcmVsLT5uaW5kZXhlcyA+IDApCiAJewogCQkv KiBDb3B5IGluZGV4IG5hbWVzIHVzZWQgYnkgaW5zdHJ1bWVudGF0aW9uIChub3QgZXJyb3Ig cmVwb3J0aW5nKSAqLwpAQCAtOTg1LDYgKzEwNTIsOSBAQCBoZWFwX3ZhY3V1bV9yZWwoUmVs YXRpb24gcmVsLCBjb25zdCBWYWN1dW1QYXJhbXMgKnBhcmFtcywKIAkgKiBzb29uIGluIGNh c2VzIHdoZXJlIHRoZSBmYWlsc2FmZSBwcmV2ZW50ZWQgc2lnbmlmaWNhbnQgYW1vdW50cyBv ZiBoZWFwCiAJICogdmFjdXVtaW5nLgogCSAqLworCWFjY3VtdWxhdGVfaGVhcF92YWN1dW1f c3RhdGlzdGljcyh2YWNyZWwsICZleHRWYWNSZXBvcnQpOworCXBnc3RhdF9yZXBvcnRfdmFj dXVtX2V4dHN0YXRzKHZhY3JlbC0+cmVsb2lkLCByZWwtPnJkX3JlbC0+cmVsaXNzaGFyZWQs CisJCQkJCQkJCSAgJmV4dFZhY1JlcG9ydCk7CiAJcGdzdGF0X3JlcG9ydF92YWN1dW0ocmVs LAogCQkJCQkJIE1heCh2YWNyZWwtPm5ld19saXZlX3R1cGxlcywgMCksCiAJCQkJCQkgdmFj cmVsLT5yZWNlbnRseV9kZWFkX3R1cGxlcyArCkBAIC0xNjE4LDYgKzE2ODgsMTUgQEAgbGF6 eV9zY2FuX2hlYXAoTFZSZWxTdGF0ZSAqdmFjcmVsKQogCS8qIERvIGZpbmFsIGluZGV4IGNs ZWFudXAgKGNhbGwgZWFjaCBpbmRleCdzIGFtdmFjdXVtY2xlYW51cCByb3V0aW5lKSAqLwog CWlmICh2YWNyZWwtPm5pbmRleGVzID4gMCAmJiB2YWNyZWwtPmRvX2luZGV4X2NsZWFudXAp CiAJCWxhenlfY2xlYW51cF9hbGxfaW5kZXhlcyh2YWNyZWwpOworCisJLyoKKwkgKiBSZXBv cnQgdGhlIHBlci1pbmRleCBleHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljcyBhY2N1bXVsYXRl ZCBvdmVyIGFsbAorCSAqIGJ1bGtkZWxldGUgYW5kIGNsZWFudXAgcGFzc2VzLCBleGFjdGx5 IG9uY2UgcGVyIGluZGV4LiAgVGhlIHBhcmFsbGVsCisJICogcGF0aCByZXBvcnRzIGl0cyBE U00tcmVzaWRlbnQgdG90YWxzIGZyb20gcGFyYWxsZWxfdmFjdXVtX2VuZCgpIGluc3RlYWQs CisJICogc28gb25seSBkbyBpdCBoZXJlIHdoZW4gaW5kZXggdmFjdXVtaW5nIHJhbiBpbiB0 aGUgbGVhZGVyLgorCSAqLworCWlmICh2YWNyZWwtPm5pbmRleGVzID4gMCAmJiAhUGFyYWxs ZWxWYWN1dW1Jc0FjdGl2ZSh2YWNyZWwpKQorCQlyZXBvcnRfaW5kZXhfdmFjdXVtX2V4dHN0 YXRzKHZhY3JlbCk7CiB9CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9n L2hlYXAuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCmluZGV4IDg4MDg3NjU0ZGUu LjcwOWZlMzNlNjEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCisr KyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCkBAIC0xOTAzLDYgKzE5MDMsNyBAQCBo ZWFwX2Ryb3Bfd2l0aF9jYXRhbG9nKE9pZCByZWxpZCkKIAogCS8qIGVuc3VyZSB0aGF0IHN0 YXRzIGFyZSBkcm9wcGVkIGlmIHRyYW5zYWN0aW9uIGNvbW1pdHMgKi8KIAlwZ3N0YXRfZHJv cF9yZWxhdGlvbihyZWwpOworCXBnc3RhdF92YWN1dW1fcmVsYXRpb25fZGVsZXRlX3BlbmRp bmdfY2IoUmVsYXRpb25HZXRSZWxpZChyZWwpKTsKIAogCS8qCiAJICogQ2xvc2UgcmVsY2Fj aGUgZW50cnksIGJ1dCAqa2VlcCogQWNjZXNzRXhjbHVzaXZlTG9jayBvbiB0aGUgcmVsYXRp b24KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvaW5kZXguYyBiL3NyYy9iYWNr ZW5kL2NhdGFsb2cvaW5kZXguYwppbmRleCA5NDA3YzM1N2YyLi5mOTg2Mjc2Njc3IDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL2luZGV4LmMKKysrIGIvc3JjL2JhY2tlbmQv Y2F0YWxvZy9pbmRleC5jCkBAIC0yMzQ1LDYgKzIzNDUsNyBAQCBpbmRleF9kcm9wKE9pZCBp bmRleElkLCBib29sIGNvbmN1cnJlbnQsIGJvb2wgY29uY3VycmVudF9sb2NrX21vZGUpCiAK IAkvKiBlbnN1cmUgdGhhdCBzdGF0cyBhcmUgZHJvcHBlZCBpZiB0cmFuc2FjdGlvbiBjb21t aXRzICovCiAJcGdzdGF0X2Ryb3BfcmVsYXRpb24odXNlckluZGV4UmVsYXRpb24pOworCXBn c3RhdF92YWN1dW1fcmVsYXRpb25fZGVsZXRlX3BlbmRpbmdfY2IoUmVsYXRpb25HZXRSZWxp ZCh1c2VySW5kZXhSZWxhdGlvbikpOwogCiAJLyoKIAkgKiBDbG9zZSBhbmQgZmx1c2ggdGhl IGluZGV4J3MgcmVsY2FjaGUgZW50cnksIHRvIGVuc3VyZSByZWxjYWNoZSBkb2Vzbid0CmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwgYi9zcmMv YmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKaW5kZXggYjU3MTI4YmIxMi4uMDE0 ODdmMTY2NSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Mu c3FsCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbApAQCAtMTU1 OSwzICsxNTU5LDM4IEBAIENSRUFURSBWSUVXIHBnX2Fpb3MgQVMKICAgICBTRUxFQ1QgKiBG Uk9NIHBnX2dldF9haW9zKCk7CiBSRVZPS0UgQUxMIE9OIHBnX2Fpb3MgRlJPTSBQVUJMSUM7 CiBHUkFOVCBTRUxFQ1QgT04gcGdfYWlvcyBUTyBwZ19yZWFkX2FsbF9zdGF0czsKKworQ1JF QVRFIFZJRVcgcGdfc3RhdF92YWN1dW1fdGFibGVzIEFTCisgICAgU0VMRUNUCisgICAgICAg IE4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAorICAgICAgICBDLnJlbG5hbWUgQVMgcmVsbmFt ZSwKKyAgICAgICAgUy5yZWxpZCBBUyByZWxpZCwKKworICAgICAgICBTLnBhZ2VzX3NjYW5u ZWQgQVMgcGFnZXNfc2Nhbm5lZCwKKyAgICAgICAgUy5wYWdlc19yZW1vdmVkIEFTIHBhZ2Vz X3JlbW92ZWQsCisgICAgICAgIFMudHVwbGVzX2RlbGV0ZWQgQVMgdHVwbGVzX2RlbGV0ZWQs CisgICAgICAgIFMudHVwbGVzX2Zyb3plbiBBUyB0dXBsZXNfZnJvemVuLAorICAgICAgICBT LnJlY2VudGx5X2RlYWRfdHVwbGVzIEFTIHJlY2VudGx5X2RlYWRfdHVwbGVzCisKKyAgICBG Uk9NIHBnX2NsYXNzIEMgSk9JTgorICAgICAgICAgICAgcGdfbmFtZXNwYWNlIE4gT04gTi5v aWQgPSBDLnJlbG5hbWVzcGFjZSwKKyAgICAgICAgICAgIExBVEVSQUwgcGdfc3RhdF9nZXRf dmFjdXVtX3RhYmxlcyhDLm9pZCkgUworICAgIFdIRVJFIEMucmVsa2luZCBJTiAoJ3InLCAn dCcsICdtJyk7CisKK0NSRUFURSBWSUVXIHBnX3N0YXRfdmFjdXVtX2luZGV4ZXMgQVMKKyAg ICBTRUxFQ1QKKyAgICAgICAgICAgIEMub2lkIEFTIHJlbGlkLAorICAgICAgICAgICAgSS5v aWQgQVMgaW5kZXhyZWxpZCwKKyAgICAgICAgICAgIE4ubnNwbmFtZSBBUyBzY2hlbWFuYW1l LAorICAgICAgICAgICAgQy5yZWxuYW1lIEFTIHJlbG5hbWUsCisgICAgICAgICAgICBJLnJl bG5hbWUgQVMgaW5kZXhyZWxuYW1lLAorCisgICAgICAgICAgICBTLnBhZ2VzX2RlbGV0ZWQg QVMgcGFnZXNfZGVsZXRlZCwKKyAgICAgICAgICAgIFMudHVwbGVzX2RlbGV0ZWQgQVMgdHVw bGVzX2RlbGV0ZWQKKyAgICBGUk9NCisgICAgICAgICAgICBwZ19jbGFzcyBDIEpPSU4KKyAg ICAgICAgICAgIHBnX2luZGV4IFggT04gQy5vaWQgPSBYLmluZHJlbGlkIEpPSU4KKyAgICAg ICAgICAgIHBnX2NsYXNzIEkgT04gSS5vaWQgPSBYLmluZGV4cmVsaWQKKyAgICAgICAgICAg IExFRlQgSk9JTiBwZ19uYW1lc3BhY2UgTiBPTiAoTi5vaWQgPSBDLnJlbG5hbWVzcGFjZSks CisgICAgICAgICAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKEkub2lk KSBTCisgICAgV0hFUkUgQy5yZWxraW5kIElOICgncicsICd0JywgJ20nKTsKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMgYi9zcmMvYmFja2Vu ZC9jb21tYW5kcy92YWN1dW1wYXJhbGxlbC5jCmluZGV4IDQxY2VmY2ZkZTUuLjc3MjVjNGVj YzEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMK KysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVtcGFyYWxsZWwuYwpAQCAtNTM1LDYg KzUzNSwzMyBAQCBwYXJhbGxlbF92YWN1dW1fZW5kKFBhcmFsbGVsVmFjdXVtU3RhdGUgKnB2 cywgSW5kZXhCdWxrRGVsZXRlUmVzdWx0ICoqaXN0YXRzKQogCURlc3Ryb3lQYXJhbGxlbENv bnRleHQocHZzLT5wY3h0KTsKIAlFeGl0UGFyYWxsZWxNb2RlKCk7CiAKKwkvKgorCSAqIFJl cG9ydCB0aGUgcGVyLWluZGV4IGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNzLCBvbmUgcmVw b3J0IHBlciBpbmRleCwKKwkgKiBkZXJpdmVkIGRpcmVjdGx5IGZyb20gZWFjaCBpbmRleCdz IGZpbmFsIEluZGV4QnVsa0RlbGV0ZVJlc3VsdC4gIFRoZQorCSAqIGluZGV4ZXMgYXJlIHN0 aWxsIG9wZW4gaGVyZSAocHZzLT5pbmRyZWxzIGlzIHRoZSBsZWFkZXIncyBvd24gYXJyYXks IG5vdAorCSAqIGluIHRoZSBub3ctZGVzdHJveWVkIERTTSkuCisJICovCisJaWYgKHBnc3Rh dF90cmFja192YWN1dW1fc3RhdGlzdGljcykKKwl7CisJCWZvciAoaW50IGkgPSAwOyBpIDwg cHZzLT5uaW5kZXhlczsgaSsrKQorCQl7CisJCQlSZWxhdGlvbglpbmRyZWwgPSBwdnMtPmlu ZHJlbHNbaV07CisJCQlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgcmVwb3J0OworCisJ CQlpZiAoaXN0YXRzW2ldID09IE5VTEwpCisJCQkJY29udGludWU7CisKKwkJCW1lbXNldCgm cmVwb3J0LCAwLCBzaXplb2YocmVwb3J0KSk7CisJCQlyZXBvcnQudHlwZSA9IFBHU1RBVF9F WFRWQUNfSU5ERVg7CisJCQlyZXBvcnQuY29tbW9uLnR1cGxlc19kZWxldGVkID0gaXN0YXRz W2ldLT50dXBsZXNfcmVtb3ZlZDsKKwkJCXJlcG9ydC5pbmRleC5wYWdlc19kZWxldGVkID0g aXN0YXRzW2ldLT5wYWdlc19kZWxldGVkOworCisJCQlwZ3N0YXRfcmVwb3J0X3ZhY3V1bV9l eHRzdGF0cyhSZWxhdGlvbkdldFJlbGlkKGluZHJlbCksCisJCQkJCQkJCQkJICBpbmRyZWwt PnJkX3JlbC0+cmVsaXNzaGFyZWQsCisJCQkJCQkJCQkJICAmcmVwb3J0KTsKKwkJfQorCX0K KwogCWlmIChBbUF1dG9WYWN1dW1Xb3JrZXJQcm9jZXNzKCkpCiAJCXB2X3NoYXJlZF9jb3N0 X3BhcmFtcyA9IE5VTEw7CiAKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2 aXR5L01ha2VmaWxlIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvTWFrZWZpbGUKaW5k ZXggY2EzZWY4OWJmNS4uYjdkYjljMDM0YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvTWFrZWZpbGUKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkv TWFrZWZpbGUKQEAgLTI4LDYgKzI4LDcgQEAgT0JKUyA9IFwKIAlwZ3N0YXRfaW8ubyBcCiAJ cGdzdGF0X2xvY2subyBcCiAJcGdzdGF0X3JlbGF0aW9uLm8gXAorCXBnc3RhdF92YWN1dW0u byBcCiAJcGdzdGF0X3JlcGxzbG90Lm8gXAogCXBnc3RhdF9zaG1lbS5vIFwKIAlwZ3N0YXRf c2xydS5vIFwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29u LmJ1aWxkIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvbWVzb24uYnVpbGQKaW5kZXgg MWFhN2VjZTUyOS4uMmEwYjUwZDA3ZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMv YWN0aXZpdHkvbWVzb24uYnVpbGQKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkv bWVzb24uYnVpbGQKQEAgLTE3LDYgKzE3LDcgQEAgYmFja2VuZF9zb3VyY2VzICs9IGZpbGVz KAogICAncGdzdGF0X3NobWVtLmMnLAogICAncGdzdGF0X3NscnUuYycsCiAgICdwZ3N0YXRf c3Vic2NyaXB0aW9uLmMnLAorICAncGdzdGF0X3ZhY3V1bS5jJywKICAgJ3Bnc3RhdF93YWwu YycsCiAgICdwZ3N0YXRfeGFjdC5jJywKICkKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0 aWxzL2FjdGl2aXR5L3Bnc3RhdC5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdz dGF0LmMKaW5kZXggYjY3ZGE4OGM3ZC4uNGU5NTA2NzJlMiAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0LmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMv YWN0aXZpdHkvcGdzdGF0LmMKQEAgLTIwNCw3ICsyMDQsNyBAQCBzdGF0aWMgaW5saW5lIGJv b2wgcGdzdGF0X2lzX2tpbmRfdmFsaWQoUGdTdGF0X0tpbmQga2luZCk7CiAKIGJvb2wJCXBn c3RhdF90cmFja19jb3VudHMgPSBmYWxzZTsKIGludAkJCXBnc3RhdF9mZXRjaF9jb25zaXN0 ZW5jeSA9IFBHU1RBVF9GRVRDSF9DT05TSVNURU5DWV9DQUNIRTsKLQorYm9vbAkJcGdzdGF0 X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzID0gZmFsc2U7CiAKIC8qIC0tLS0tLS0tLS0KICAq IHN0YXRlIHNoYXJlZCB3aXRoIHBnc3RhdF8qLmMKQEAgLTUwMCw2ICs1MDAsMTkgQEAgc3Rh dGljIGNvbnN0IFBnU3RhdF9LaW5kSW5mbyBwZ3N0YXRfa2luZF9idWlsdGluX2luZm9zW1BH U1RBVF9LSU5EX0JVSUxUSU5fU0laRV0KIAkJLnJlc2V0X2FsbF9jYiA9IHBnc3RhdF93YWxf cmVzZXRfYWxsX2NiLAogCQkuc25hcHNob3RfY2IgPSBwZ3N0YXRfd2FsX3NuYXBzaG90X2Ni LAogCX0sCisJW1BHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElPTl0gPSB7CisJCS5uYW1lID0g InZhY3V1bSBzdGF0aXN0aWNzIiwKKworCQkuZml4ZWRfYW1vdW50ID0gZmFsc2UsCisJCS53 cml0ZV90b19maWxlID0gdHJ1ZSwKKworCQkuc2hhcmVkX3NpemUgPSBzaXplb2YoUGdTdGF0 U2hhcmVkX1ZhY3V1bVJlbGF0aW9uKSwKKwkJLnNoYXJlZF9kYXRhX29mZiA9IG9mZnNldG9m KFBnU3RhdFNoYXJlZF9WYWN1dW1SZWxhdGlvbiwgc3RhdHMpLAorCQkuc2hhcmVkX2RhdGFf bGVuID0gc2l6ZW9mKCgoUGdTdGF0U2hhcmVkX1ZhY3V1bVJlbGF0aW9uICopIDApLT5zdGF0 cyksCisJCS5wZW5kaW5nX3NpemUgPSBzaXplb2YoUGdTdGF0X1JlbGF0aW9uVmFjdXVtUGVu ZGluZyksCisKKwkJLmZsdXNoX3BlbmRpbmdfY2IgPSBwZ3N0YXRfdmFjdXVtX3JlbGF0aW9u X2ZsdXNoX2NiCisJfSwKIH07CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGls cy9hY3Rpdml0eS9wZ3N0YXRfcmVsYXRpb24uYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2 aXR5L3Bnc3RhdF9yZWxhdGlvbi5jCmluZGV4IDkyZTFmNjBhMDguLjE0MWUyYWY2MDcgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9yZWxhdGlvbi5j CisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9yZWxhdGlvbi5jCkBA IC05MDQsNiArOTA0LDEyIEBAIHBnc3RhdF9yZWxhdGlvbl9mbHVzaF9jYihQZ1N0YXRfRW50 cnlSZWYgKmVudHJ5X3JlZiwgYm9vbCBub3dhaXQpCiAJcmV0dXJuIHRydWU7CiB9CiAKK3Zv aWQKK3Bnc3RhdF92YWN1dW1fcmVsYXRpb25fZGVsZXRlX3BlbmRpbmdfY2IoT2lkIHJlbGlk KQoreworCXBnc3RhdF9kcm9wX3RyYW5zYWN0aW9uYWwoUEdTVEFUX0tJTkRfVkFDVVVNX1JF TEFUSU9OLCByZWxpZCwgSW52YWxpZE9pZCk7Cit9CisKIHZvaWQKIHBnc3RhdF9yZWxhdGlv bl9kZWxldGVfcGVuZGluZ19jYihQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3JlZikKIHsKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYyBi L3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi41YTYyNTEzMmRkCi0tLSAvZGV2L251bGwK KysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jCkBAIC0w LDAgKzEsMTI2IEBACisvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogcGdzdGF0X3Zh Y3V1bS5jCisgKgkgIEltcGxlbWVudGF0aW9uIG9mIGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0 aWNzLgorICoKKyAqIFRoaXMgZmlsZSBjb250YWlucyB0aGUgaW1wbGVtZW50YXRpb24gb2Yg ZXh0ZW5kZWQgdmFjdXVtIHN0YXRpc3RpY3MuIEl0IGlzCisgKiBrZXB0IHNlcGFyYXRlIGZy b20gcGdzdGF0X3JlbGF0aW9uLmMgYW5kIHBnc3RhdF9kYXRhYmFzZS5jIHRvIHJlZHVjZSB0 aGUKKyAqIG1lbW9yeSBmb290cHJpbnQgb2YgdGhlIHJlZ3VsYXIgcmVsYXRpb24gYW5kIGRh dGFiYXNlIHN0YXRpc3RpY3M6IHZhY3V1bQorICogbWV0cmljcyByZXF1aXJlIHNpZ25pZmlj YW50bHkgbW9yZSBzcGFjZSBwZXIgcmVsYXRpb24sIHNvIHRoZXkgbGl2ZSBpbiB0aGVpcgor ICogb3duIFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElPTiBzdGF0cyBraW5kLgorICoKKyAq IENvcHlyaWdodCAoYykgMjAwMS0yMDI2LCBQb3N0Z3JlU1FMIEdsb2JhbCBEZXZlbG9wbWVu dCBHcm91cAorICoKKyAqIElERU5USUZJQ0FUSU9OCisgKgkgIHNyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYworICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICov CisKKyNpbmNsdWRlICJwb3N0Z3Jlcy5oIgorCisjaW5jbHVkZSAicGdzdGF0LmgiCisjaW5j bHVkZSAidXRpbHMvbWVtdXRpbHMuaCIKKyNpbmNsdWRlICJ1dGlscy9wZ3N0YXRfaW50ZXJu YWwuaCIKKworI2RlZmluZSBBQ0NVTVVMQVRFX1NVQkZJRUxEKHN1YnN0cnVjdCwgZmllbGQp IChkc3QtPnN1YnN0cnVjdC5maWVsZCArPSBzcmMtPnN1YnN0cnVjdC5maWVsZCkKKworLyoK KyAqIEFjY3VtdWxhdGUgdGhlIHBlci10YWJsZSBleHRlbmRlZCB2YWN1dW0gY291bnRlcnMg Y29sbGVjdGVkIHNvIGZhci4KKyAqCisgKiBPbmx5IHRoZSBjb3VudGVycyBkZXJpdmVkIGRp cmVjdGx5IGZyb20gdGhlIHZhY3V1bSdzIG93biBib29ra2VlcGluZyBhcmUKKyAqIHN1bW1l ZCBoZXJlLiAgVGhlIGJ1ZmZlciwgV0FMIGFuZCB0aW1pbmcgY291bnRlcnMgKGFuZCB0aGUg cGVyLWluZGV4CisgKiBjb3VudGVycykgYXJlIGFjY3VtdWxhdGVkIGJ5IGFkZGl0aW9uYWwg Y29kZSBhZGRlZCB0b2dldGhlciB3aXRoIHRoZQorICogaGVscGVycyB0aGF0IGdhdGhlciB0 aGVtLgorICovCitzdGF0aWMgdm9pZAorcGdzdGF0X2FjY3VtdWxhdGVfZXh0dmFjX3N0YXRz X3JlbGF0aW9ucyhQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKmRzdCwKKwkJCQkJCQkJ CQkgUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICpzcmMpCit7CisJaWYgKCFwZ3N0YXRf dHJhY2tfdmFjdXVtX3N0YXRpc3RpY3MpCisJCXJldHVybjsKKworCWlmIChkc3QtPnR5cGUg PT0gUEdTVEFUX0VYVFZBQ19JTlZBTElEKQorCQlkc3QtPnR5cGUgPSBzcmMtPnR5cGU7CisK KwlBc3NlcnQoc3JjLT50eXBlICE9IFBHU1RBVF9FWFRWQUNfSU5WQUxJRCAmJgorCQkgICBz cmMtPnR5cGUgIT0gUEdTVEFUX0VYVFZBQ19EQiAmJgorCQkgICBzcmMtPnR5cGUgPT0gZHN0 LT50eXBlKTsKKworCUFDQ1VNVUxBVEVfU1VCRklFTEQoY29tbW9uLCB0dXBsZXNfZGVsZXRl ZCk7CisKKwlpZiAoZHN0LT50eXBlID09IFBHU1RBVF9FWFRWQUNfVEFCTEUpCisJeworCQlB Q0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCBwYWdlc19zY2FubmVkKTsKKwkJQUNDVU1VTEFU RV9TVUJGSUVMRCh0YWJsZSwgcGFnZXNfcmVtb3ZlZCk7CisJCUFDQ1VNVUxBVEVfU1VCRklF TEQodGFibGUsIHR1cGxlc19mcm96ZW4pOworCQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxl LCByZWNlbnRseV9kZWFkX3R1cGxlcyk7CisJfQorCWVsc2UgaWYgKGRzdC0+dHlwZSA9PSBQ R1NUQVRfRVhUVkFDX0lOREVYKQorCXsKKwkJQUNDVU1VTEFURV9TVUJGSUVMRChpbmRleCwg cGFnZXNfZGVsZXRlZCk7CisJfQorfQorCisvKgorICogUmVwb3J0IHRoYXQgdGhlIHJlbGF0 aW9uIHdhcyBqdXN0IHZhY3V1bWVkLCBhY2N1bXVsYXRpbmcgaXRzIGV4dGVuZGVkCisgKiBz dGF0aXN0aWNzIGludG8gdGhlIHBlci1yZWxhdGlvbiBlbnRyeS4KKyAqLwordm9pZAorcGdz dGF0X3JlcG9ydF92YWN1dW1fZXh0c3RhdHMoT2lkIHRhYmxlb2lkLCBib29sIHNoYXJlZCwK KwkJCQkJCQkgIFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqcGFyYW1zKQoreworCVBn U3RhdF9FbnRyeVJlZiAqZW50cnlfcmVmOworCVBnU3RhdFNoYXJlZF9WYWN1dW1SZWxhdGlv biAqc2h0YWJlbnRyeTsKKwlPaWQJCQlkYm9pZCA9IChzaGFyZWQgPyBJbnZhbGlkT2lkIDog TXlEYXRhYmFzZUlkKTsKKworCWlmICghcGdzdGF0X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNz KQorCQlyZXR1cm47CisKKwllbnRyeV9yZWYgPSBwZ3N0YXRfZ2V0X2VudHJ5X3JlZl9sb2Nr ZWQoUEdTVEFUX0tJTkRfVkFDVVVNX1JFTEFUSU9OLAorCQkJCQkJCQkJCQlkYm9pZCwgdGFi bGVvaWQsIGZhbHNlKTsKKwlzaHRhYmVudHJ5ID0gKFBnU3RhdFNoYXJlZF9WYWN1dW1SZWxh dGlvbiAqKSBlbnRyeV9yZWYtPnNoYXJlZF9zdGF0czsKKwlwZ3N0YXRfYWNjdW11bGF0ZV9l eHR2YWNfc3RhdHNfcmVsYXRpb25zKCZzaHRhYmVudHJ5LT5zdGF0cywgcGFyYW1zKTsKKwlw Z3N0YXRfdW5sb2NrX2VudHJ5KGVudHJ5X3JlZik7Cit9CisKKy8qCisgKiBGbHVzaCBvdXQg cGVuZGluZyBwZXItcmVsYXRpb24gZXh0ZW5kZWQgdmFjdXVtIHN0YXRzIGZvciB0aGUgZW50 cnkuCisgKgorICogSWYgbm93YWl0IGlzIHRydWUsIHRoaXMgZnVuY3Rpb24gcmV0dXJucyBm YWxzZSBpZiB0aGUgbG9jayBjb3VsZCBub3QgYmUKKyAqIGFjcXVpcmVkIGltbWVkaWF0ZWx5 LCBvdGhlcndpc2UgdHJ1ZSBpcyByZXR1cm5lZC4KKyAqLworYm9vbAorcGdzdGF0X3ZhY3V1 bV9yZWxhdGlvbl9mbHVzaF9jYihQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3JlZiwgYm9vbCBu b3dhaXQpCit7CisJUGdTdGF0U2hhcmVkX1ZhY3V1bVJlbGF0aW9uICpzaHRhYnN0YXRzOwor CVBnU3RhdF9SZWxhdGlvblZhY3V1bVBlbmRpbmcgKnBlbmRpbmdlbnQ7CisKKwlwZW5kaW5n ZW50ID0gKFBnU3RhdF9SZWxhdGlvblZhY3V1bVBlbmRpbmcgKikgZW50cnlfcmVmLT5wZW5k aW5nOworCXNodGFic3RhdHMgPSAoUGdTdGF0U2hhcmVkX1ZhY3V1bVJlbGF0aW9uICopIGVu dHJ5X3JlZi0+c2hhcmVkX3N0YXRzOworCisJLyogSWdub3JlIGVudHJpZXMgdGhhdCBkaWRu J3QgYWNjdW11bGF0ZSBhbnkgYWN0dWFsIGNvdW50cy4gKi8KKwlpZiAocGdfbWVtb3J5X2lz X2FsbF96ZXJvcyhwZW5kaW5nZW50LAorCQkJCQkJCSAgIHNpemVvZihQZ1N0YXRfUmVsYXRp b25WYWN1dW1QZW5kaW5nKSkpCisJCXJldHVybiB0cnVlOworCisJaWYgKCFwZ3N0YXRfbG9j a19lbnRyeShlbnRyeV9yZWYsIG5vd2FpdCkpCisJCXJldHVybiBmYWxzZTsKKworCXBnc3Rh dF9hY2N1bXVsYXRlX2V4dHZhY19zdGF0c19yZWxhdGlvbnMoJnNodGFic3RhdHMtPnN0YXRz LAorCQkJCQkJCQkJCQkgJnBlbmRpbmdlbnQtPmNvdW50cyk7CisKKwlwZ3N0YXRfdW5sb2Nr X2VudHJ5KGVudHJ5X3JlZik7CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworLyoKKyAqIFN1cHBv cnQgZnVuY3Rpb24gZm9yIHRoZSBTUUwtY2FsbGFibGUgcGdzdGF0KiBmdW5jdGlvbnMuIFJl dHVybnMgdGhlIHZhY3V1bQorICogY29sbGVjdGVkIHN0YXRpc3RpY3MgZm9yIG9uZSByZWxh dGlvbiBvciBOVUxMLgorICovCitQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKgorcGdz dGF0X2ZldGNoX3N0YXRfdmFjdXVtX3RhYmVudHJ5KE9pZCByZWxpZCwgT2lkIGRiaWQpCit7 CisJcmV0dXJuIChQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKikKKwkJcGdzdGF0X2Zl dGNoX2VudHJ5KFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElPTiwgZGJpZCwgcmVsaWQsIE5V TEwpOworfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNz LmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYwppbmRleCA2NDA5OTg3 ZDY2Li5kNjkyN2Q5NDVkIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdz dGF0ZnVuY3MuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYwpA QCAtMjM2NywzICsyMzY3LDg3IEBAIHBnX3N0YXRfaGF2ZV9zdGF0cyhQR19GVU5DVElPTl9B UkdTKQogCiAJUEdfUkVUVVJOX0JPT0wocGdzdGF0X2hhdmVfZW50cnkoa2luZCwgZGJvaWQs IG9iamlkKSk7CiB9CisKKy8qCisgKiBHZXQgdGhlIGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0 aWNzIGZvciBhIGhlYXAgdGFibGUuCisgKi8KK0RhdHVtCitwZ19zdGF0X2dldF92YWN1dW1f dGFibGVzKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VV TV9UQUJMRVNfU1RBVFNfQ09MUyA2CisKKwlPaWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQo MCk7CisJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICpleHR2YWN1dW07CisJVHVwbGVE ZXNjCXR1cGRlc2M7CisJRGF0dW0JCXZhbHVlc1tQR19TVEFUX0dFVF9WQUNVVU1fVEFCTEVT X1NUQVRTX0NPTFNdID0gezB9OworCWJvb2wJCW51bGxzW1BHX1NUQVRfR0VUX1ZBQ1VVTV9U QUJMRVNfU1RBVFNfQ09MU10gPSB7MH07CisJaW50CQkJaSA9IDA7CisKKwkvKiBCdWlsZCBh IHR1cGxlIGRlc2NyaXB0b3IgZm9yIG91ciByZXN1bHQgdHlwZSAqLworCWlmIChnZXRfY2Fs bF9yZXN1bHRfdHlwZShmY2luZm8sIE5VTEwsICZ0dXBkZXNjKSAhPSBUWVBFRlVOQ19DT01Q T1NJVEUpCisJCWVsb2coRVJST1IsICJyZXR1cm4gdHlwZSBtdXN0IGJlIGEgcm93IHR5cGUi KTsKKworCWV4dHZhY3V1bSA9IHBnc3RhdF9mZXRjaF9zdGF0X3ZhY3V1bV90YWJlbnRyeShy ZWxpZCwgTXlEYXRhYmFzZUlkKTsKKwlpZiAoIWV4dHZhY3V1bSkKKwl7CisJCS8qIFJldHJ5 IGFzIGEgc2hhcmVkIHJlbGF0aW9uIGJlZm9yZSBnaXZpbmcgdXAuICovCisJCWV4dHZhY3V1 bSA9IHBnc3RhdF9mZXRjaF9zdGF0X3ZhY3V1bV90YWJlbnRyeShyZWxpZCwgSW52YWxpZE9p ZCk7CisJCWlmICghZXh0dmFjdXVtKQorCQl7CisJCQlJbml0TWF0ZXJpYWxpemVkU1JGKGZj aW5mbywgMCk7CisJCQlQR19SRVRVUk5fVk9JRCgpOworCQl9CisJfQorCisJdmFsdWVzW2kr K10gPSBPYmplY3RJZEdldERhdHVtKHJlbGlkKTsKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0 RGF0dW0oZXh0dmFjdXVtLT50YWJsZS5wYWdlc19zY2FubmVkKTsKKwl2YWx1ZXNbaSsrXSA9 IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS5wYWdlc19yZW1vdmVkKTsKKwl2YWx1 ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24udHVwbGVzX2RlbGV0 ZWQpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPnRhYmxlLnR1 cGxlc19mcm96ZW4pOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0t PnRhYmxlLnJlY2VudGx5X2RlYWRfdHVwbGVzKTsKKworCUFzc2VydChpID09IFBHX1NUQVRf R0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyk7CisKKwkvKiBSZXR1cm5zIHRoZSByZWNv cmQgYXMgRGF0dW0gKi8KKwlQR19SRVRVUk5fREFUVU0oSGVhcFR1cGxlR2V0RGF0dW0oaGVh cF9mb3JtX3R1cGxlKHR1cGRlc2MsIHZhbHVlcywgbnVsbHMpKSk7Cit9CisKKy8qCisgKiBH ZXQgdGhlIGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNzIGZvciBhbiBpbmRleC4KKyAqLwor RGF0dW0KK3BnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCit7 CisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9JTkRFWF9TVEFUU19DT0xTIDMKKworCU9p ZAkJCXJlbGlkID0gUEdfR0VUQVJHX09JRCgwKTsKKwlQZ1N0YXRfVmFjdXVtUmVsYXRpb25D b3VudHMgKmV4dHZhY3V1bTsKKwlUdXBsZURlc2MJdHVwZGVzYzsKKwlEYXR1bQkJdmFsdWVz W1BHX1NUQVRfR0VUX1ZBQ1VVTV9JTkRFWF9TVEFUU19DT0xTXSA9IHswfTsKKwlib29sCQlu dWxsc1tQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MU10gPSB7MH07CisJaW50 CQkJaSA9IDA7CisKKwlpZiAoZ2V0X2NhbGxfcmVzdWx0X3R5cGUoZmNpbmZvLCBOVUxMLCAm dHVwZGVzYykgIT0gVFlQRUZVTkNfQ09NUE9TSVRFKQorCQllbG9nKEVSUk9SLCAicmV0dXJu IHR5cGUgbXVzdCBiZSBhIHJvdyB0eXBlIik7CisKKwlleHR2YWN1dW0gPSBwZ3N0YXRfZmV0 Y2hfc3RhdF92YWN1dW1fdGFiZW50cnkocmVsaWQsIE15RGF0YWJhc2VJZCk7CisJaWYgKCFl eHR2YWN1dW0pCisJeworCQlleHR2YWN1dW0gPSBwZ3N0YXRfZmV0Y2hfc3RhdF92YWN1dW1f dGFiZW50cnkocmVsaWQsIEludmFsaWRPaWQpOworCQlpZiAoIWV4dHZhY3V1bSkKKwkJewor CQkJSW5pdE1hdGVyaWFsaXplZFNSRihmY2luZm8sIDApOworCQkJUEdfUkVUVVJOX1ZPSUQo KTsKKwkJfQorCX0KKworCXZhbHVlc1tpKytdID0gT2JqZWN0SWRHZXREYXR1bShyZWxpZCk7 CisKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5pbmRleC5wYWdl c19kZWxldGVkKTsKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5j b21tb24udHVwbGVzX2RlbGV0ZWQpOworCisJQXNzZXJ0KGkgPT0gUEdfU1RBVF9HRVRfVkFD VVVNX0lOREVYX1NUQVRTX0NPTFMpOworCisJLyogUmV0dXJucyB0aGUgcmVjb3JkIGFzIERh dHVtICovCisJUEdfUkVUVVJOX0RBVFVNKEhlYXBUdXBsZUdldERhdHVtKGhlYXBfZm9ybV90 dXBsZSh0dXBkZXNjLCB2YWx1ZXMsIG51bGxzKSkpOworfQpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvdXRpbHMvbWlzYy9ndWNfcGFyYW1ldGVycy5kYXQgYi9zcmMvYmFja2VuZC91dGls cy9taXNjL2d1Y19wYXJhbWV0ZXJzLmRhdAppbmRleCBhZmFhMDU4YjA0Li5iYjhlYjQxMzk0 IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Y19wYXJhbWV0ZXJzLmRh dAorKysgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Y19wYXJhbWV0ZXJzLmRhdApAQCAt MzIyMCw2ICszMjIwLDEyIEBACiAgIGJvb3RfdmFsID0+ICdmYWxzZScsCiB9LAogCit7IG5h bWUgPT4gJ3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzJywgdHlwZSA9PiAnYm9vbCcsIGNvbnRl eHQgPT4gJ1BHQ19TVVNFVCcsIGdyb3VwID0+ICdTVEFUU19DVU1VTEFUSVZFJywKKyAgc2hv cnRfZGVzYyA9PiAnQ29sbGVjdHMgdmFjdXVtIHN0YXRpc3RpY3MgZm9yIHZhY3V1bSBhY3Rp dml0eS4nLAorICB2YXJpYWJsZSA9PiAncGdzdGF0X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNz JywKKyAgYm9vdF92YWwgPT4gJ2ZhbHNlJywKK30sCisKIHsgbmFtZSA9PiAndHJhY2tfd2Fs X2lvX3RpbWluZycsIHR5cGUgPT4gJ2Jvb2wnLCBjb250ZXh0ID0+ICdQR0NfU1VTRVQnLCBn cm91cCA9PiAnU1RBVFNfQ1VNVUxBVElWRScsCiAgIHNob3J0X2Rlc2MgPT4gJ0NvbGxlY3Rz IHRpbWluZyBzdGF0aXN0aWNzIGZvciBXQUwgSS9PIGFjdGl2aXR5LicsCiAgIHZhcmlhYmxl ID0+ICd0cmFja193YWxfaW9fdGltaW5nJywKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0 aWxzL21pc2MvcG9zdGdyZXNxbC5jb25mLnNhbXBsZSBiL3NyYy9iYWNrZW5kL3V0aWxzL21p c2MvcG9zdGdyZXNxbC5jb25mLnNhbXBsZQppbmRleCBhYzM4Y2RkYWFmLi40Y2YyOGYwZjJl IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9taXNjL3Bvc3RncmVzcWwuY29uZi5z YW1wbGUKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9wb3N0Z3Jlc3FsLmNvbmYuc2Ft cGxlCkBAIC03MDIsNiArNzAyLDcgQEAKICN0cmFja193YWxfaW9fdGltaW5nID0gb2ZmCiAj dHJhY2tfZnVuY3Rpb25zID0gbm9uZSAgICAgICAgICAgICAgICAgIyBub25lLCBwbCwgYWxs CiAjc3RhdHNfZmV0Y2hfY29uc2lzdGVuY3kgPSBjYWNoZSAgICAgICAgIyBjYWNoZSwgbm9u ZSwgc25hcHNob3QKKyN0cmFja192YWN1dW1fc3RhdGlzdGljcyA9IG9mZgogCiAKICMgLSBN b25pdG9yaW5nIC0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5k YXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4IDI5MWIwMzk4NTku LjZiYzNiZDkwOWIgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5k YXQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdApAQCAtMTI2MzgsNiAr MTI2MzgsMTYgQEAKICAgcHJvYXJnbmFtZXMgPT4gJ3twaWQsaW9faWQsaW9fZ2VuZXJhdGlv bixzdGF0ZSxvcGVyYXRpb24sb2ZmLGxlbmd0aCx0YXJnZXQsaGFuZGxlX2RhdGFfbGVuLHJh d19yZXN1bHQscmVzdWx0LHRhcmdldF9kZXNjLGZfc3luYyxmX2xvY2FsbWVtLGZfYnVmZmVy ZWR9JywKICAgcHJvc3JjID0+ICdwZ19nZXRfYWlvcycsIHByb2FjbCA9PiAne1BPU1RHUkVT PVgscGdfcmVhZF9hbGxfc3RhdHM9WH0nIH0sCiAKK3sgb2lkID0+ICc4MDAxJywKKyAgZGVz Y3IgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMgcmV0dXJucyB2YWN1dW0gc3RhdHMg dmFsdWVzIGZvciB0YWJsZScsCisgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV90 YWJsZXMnLCBwcm9yb3dzID0+IDEwMDAsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcmV0dHlw ZSA9PiAncmVjb3JkJywgcHJvaXNzdHJpY3QgPT4gJ2YnLAorICBwcm9yZXRzZXQgPT4gJ3Qn LAorICBwcm9hcmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvYWxsYXJndHlwZXMgPT4gJ3tvaWQs b2lkLGludDgsaW50OCxpbnQ4LGludDgsaW50OH0nLAorICBwcm9hcmdtb2RlcyA9PiAne2ks byxvLG8sbyxvLG99JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tyZWxvaWQscmVsaWQscGFnZXNf c2Nhbm5lZCxwYWdlc19yZW1vdmVkLHR1cGxlc19kZWxldGVkLHR1cGxlc19mcm96ZW4scmVj ZW50bHlfZGVhZF90dXBsZXN9JywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF92YWN1dW1f dGFibGVzJyB9CisKICMgb2lkOCByZWxhdGVkIGZ1bmN0aW9ucwogeyBvaWQgPT4gJzY0MzYn LCBkZXNjciA9PiAnY29udmVydCBvaWQgdG8gb2lkOCcsCiAgIHByb25hbWUgPT4gJ29pZDgn LCBwcm9yZXR0eXBlID0+ICdvaWQ4JywgcHJvYXJndHlwZXMgPT4gJ29pZCcsCkBAIC0xMjcw Myw0ICsxMjcxMywxMyBAQAogICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF9mcm96ZW5fcGFn ZV9tYXJrc19jbGVhcmVkJywgcHJvdm9sYXRpbGUgPT4gJ3MnLAogICBwcm9wYXJhbGxlbCA9 PiAncicsIHByb3JldHR5cGUgPT4gJ2ludDgnLCBwcm9hcmd0eXBlcyA9PiAnb2lkJywKICAg cHJvc3JjID0+ICdwZ19zdGF0X2dldF9mcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkJyB9LAor eyBvaWQgPT4gJzgwMDQnLAorICBkZXNjciA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4 ZXMgcmV0dXJucyB2YWN1dW0gc3RhdHMgdmFsdWVzIGZvciBpbmRleCcsCisgIHByb25hbWUg PT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzJywgcHJvcm93cyA9PiAxMDAwLCBwcm92 b2xhdGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ3JlY29yZCcsIHByb2lzc3RyaWN0ID0+ ICdmJywKKyAgcHJvcmV0c2V0ID0+ICd0JywKKyAgcHJvYXJndHlwZXMgPT4gJ29pZCcsCisg IHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ4LGludDh9JywKKyAgcHJvYXJnbW9k ZXMgPT4gJ3tpLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7cmVsb2lkLHJlbGlkLHBh Z2VzX2RlbGV0ZWQsdHVwbGVzX2RlbGV0ZWR9JywKKyAgcHJvc3JjID0+ICdwZ19zdGF0X2dl dF92YWN1dW1faW5kZXhlcycgfSwKIF0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3Bnc3Rh dC5oIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgKaW5kZXggN2RiMzZjZjhhZC4uNDA0ZTdkMDI5 NyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGdzdGF0LmgKKysrIGIvc3JjL2luY2x1ZGUv cGdzdGF0LmgKQEAgLTExOCw2ICsxMTgsMTUgQEAgdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X0Jh Y2tlbmRTdWJFbnRyeQogCVBnU3RhdF9Db3VudGVyIGNvbmZsaWN0X2NvdW50W0NPTkZMSUNU X05VTV9UWVBFU107CiB9IFBnU3RhdF9CYWNrZW5kU3ViRW50cnk7CiAKKy8qIFR5cGUgb2Yg RXh0VmFjUmVwb3J0ICovCit0eXBlZGVmIGVudW0gRXh0VmFjUmVwb3J0VHlwZQoreworCVBH U1RBVF9FWFRWQUNfSU5WQUxJRCA9IDAsCisJUEdTVEFUX0VYVFZBQ19UQUJMRSA9IDEsCisJ UEdTVEFUX0VYVFZBQ19JTkRFWCA9IDIsCisJUEdTVEFUX0VYVFZBQ19EQiA9IDMsCit9CQkJ RXh0VmFjUmVwb3J0VHlwZTsKKwogLyogLS0tLS0tLS0tLQogICogUGdTdGF0X1RhYmxlQ291 bnRzCQkJVGhlIGFjdHVhbCBwZXItdGFibGUgY291bnRzIGtlcHQgYnkgYSBiYWNrZW5kCiAg KgpAQCAtMTY0LDYgKzE3Myw2NiBAQCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfVGFibGVDb3Vu dHMKIAlQZ1N0YXRfQ291bnRlciBmcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVkOwogfSBQZ1N0 YXRfVGFibGVDb3VudHM7CiAKK3R5cGVkZWYgc3RydWN0IFBnU3RhdF9Db21tb25Db3VudHMK K3sKKwkvKiB0dXBsZXMgKi8KKwlpbnQ2NAkJdHVwbGVzX2RlbGV0ZWQ7Cit9CQkJUGdTdGF0 X0NvbW1vbkNvdW50czsKKworLyogLS0tLS0tLS0tLQorICoKKyAqIFBnU3RhdF9WYWN1dW1S ZWxhdGlvbkNvdW50cworICoKKyAqIEFkZGl0aW9uYWwgc3RhdGlzdGljcyBvZiB2YWN1dW0g cHJvY2Vzc2luZyBvdmVyIGEgcmVsYXRpb24uICBDb3VudGVycyB0aGF0CisgKiByZXF1aXJl IHNhbXBsaW5nIGJ1ZmZlci9XQUwvdGltaW5nIHVzYWdlLCBhbmQgdGhlIHBlci1pbmRleCBj b3VudGVycywgYXJlCisgKiBhZGRlZCB0byB0aGUgY29tbW9uIGFuZCBwZXItdHlwZSBtZW1i ZXJzIGxhdGVyLCB0b2dldGhlciB3aXRoIHRoZSBjb2RlIHRoYXQKKyAqIGdhdGhlcnMgdGhl bS4KKyAqIC0tLS0tLS0tLS0KKyAqLwordHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X1ZhY3V1bVJl bGF0aW9uQ291bnRzCit7CisJUGdTdGF0X0NvbW1vbkNvdW50cyBjb21tb247CisKKwlFeHRW YWNSZXBvcnRUeXBlIHR5cGU7CQkvKiBoZWFwLCBpbmRleCwgZXRjLiAqLworCisJLyogLS0t LS0tLS0tLQorCSAqCisJICogVGhlcmUgYXJlIHNlcGFyYXRlIG1ldHJpY3Mgb2Ygc3RhdGlz dGljIGZvciB0YWJsZXMgYW5kIGluZGV4ZXMsCisJICogd2hpY2ggY29sbGVjdCBkdXJpbmcg dmFjdXVtLgorCSAqIFRoZSB1bmlvbiBvcGVyYXRvciBhbGxvd3MgdG8gY29tYmluZSB0aGVz ZSBzdGF0aXN0aWNzCisJICogc28gdGhhdCBlYWNoIG1ldHJpYyBpcyBhc3NpZ25lZCB0byBh IHNwZWNpZmljIGNsYXNzIG9mIGNvbGxlY3RlZCBzdGF0aXN0aWNzLgorCSAqIFN1Y2ggYSBj b21iaW5lZCBzdHJ1Y3R1cmUgd2FzIGNhbGxlZCBwZXJfdHlwZV9zdGF0cy4KKwkgKiBUaGUg bmFtZSBvZiB0aGUgc3RydWN0dXJlIGl0c2VsZiBpcyBub3QgdXNlZCBhbnl3aGVyZSwKKwkg KiBpdCBleGlzdHMgb25seSBmb3IgdW5kZXJzdGFuZGluZyB0aGUgY29kZS4KKwkgKiAtLS0t LS0tLS0tCisJKi8KKwl1bmlvbgorCXsKKwkJc3RydWN0CisJCXsKKwkJCWludDY0CQl0dXBs ZXNfZnJvemVuOwkvKiB0dXBsZXMgZnJvemVuIHVwIGJ5IHZhY3V1bSAqLworCQkJaW50NjQJ CXJlY2VudGx5X2RlYWRfdHVwbGVzOwkvKiBkZWxldGVkIHR1cGxlcyB0aGF0IGFyZQorCQkJ CQkJCQkJCQkJICogc3RpbGwgdmlzaWJsZSB0byBzb21lCisJCQkJCQkJCQkJCQkgKiB0cmFu c2FjdGlvbiAqLworCQkJaW50NjQJCXBhZ2VzX3NjYW5uZWQ7CS8qIGhlYXAgcGFnZXMgZXhh bWluZWQgKG5vdCBza2lwcGVkIGJ5CisJCQkJCQkJCQkJICogVk0pICovCisJCQlpbnQ2NAkJ cGFnZXNfcmVtb3ZlZDsJLyogaGVhcCBwYWdlcyByZW1vdmVkIGJ5IHZhY3V1bQorCQkJCQkJ CQkJCSAqICJ0cnVuY2F0aW9uIiAqLworCQl9CQkJdGFibGU7CisJCXN0cnVjdAorCQl7CisJ CQlpbnQ2NAkJcGFnZXNfZGVsZXRlZDsJLyogbnVtYmVyIG9mIHBhZ2VzIGRlbGV0ZWQgYnkg dmFjdXVtICovCisJCX0JCQlpbmRleDsKKwl9IC8qIHBlcl90eXBlX3N0YXRzICovIDsKK30J CQlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHM7CisKK3R5cGVkZWYgc3RydWN0IFBnU3Rh dF9WYWN1dW1SZWxhdGlvblN0YXR1cworeworCU9pZAkJCWlkOwkJCQkvKiB0YWJsZSdzIE9J RCAqLworCWJvb2wJCXNoYXJlZDsJCQkvKiBpcyBpdCBhIHNoYXJlZCBjYXRhbG9nPyAqLwor CVBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyBjb3VudHM7IC8qIGV2ZW50IGNvdW50cyB0 byBiZSBzZW50ICovCit9CQkJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uU3RhdHVzOworCiAvKiAt LS0tLS0tLS0tCiAgKiBQZ1N0YXRfVGFibGVTdGF0dXMJCQlQZXItdGFibGUgc3RhdHVzIHdp dGhpbiBhIGJhY2tlbmQKICAqCkBAIC0xODgsNiArMjU3LDEyIEBAIHR5cGVkZWYgc3RydWN0 IFBnU3RhdF9UYWJsZVN0YXR1cwogCVJlbGF0aW9uCXJlbGF0aW9uOwkJLyogcmVsIHRoYXQg aXMgdXNpbmcgdGhpcyBlbnRyeSAqLwogfSBQZ1N0YXRfVGFibGVTdGF0dXM7CiAKK3R5cGVk ZWYgc3RydWN0IFBnU3RhdF9SZWxhdGlvblZhY3V1bVBlbmRpbmcKK3sKKwlPaWQJCQlpZDsJ CQkJLyogdGFibGUncyBPSUQgKi8KKwlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgY291 bnRzOyAvKiBldmVudCBjb3VudHMgdG8gYmUgc2VudCAqLworfQkJCVBnU3RhdF9SZWxhdGlv blZhY3V1bVBlbmRpbmc7CisKIC8qIC0tLS0tLS0tLS0KICAqIFBnU3RhdF9UYWJsZVhhY3RT dGF0dXMJCVBlci10YWJsZSwgcGVyLXN1YnRyYW5zYWN0aW9uIHN0YXR1cwogICogLS0tLS0t LS0tLQpAQCAtODM4LDYgKzkxMywxMiBAQCBleHRlcm4gaW50CXBnc3RhdF9nZXRfdHJhbnNh Y3Rpb25hbF9kcm9wcyhib29sIGlzQ29tbWl0LCBzdHJ1Y3QgeGxfeGFjdF9zdGF0c19pdAog ZXh0ZXJuIHZvaWQgcGdzdGF0X2V4ZWN1dGVfdHJhbnNhY3Rpb25hbF9kcm9wcyhpbnQgbmRy b3BzLCBzdHJ1Y3QgeGxfeGFjdF9zdGF0c19pdGVtICppdGVtcywgYm9vbCBpc19yZWRvKTsK IAogCitleHRlcm4gdm9pZCBwZ3N0YXRfdmFjdXVtX3JlbGF0aW9uX2RlbGV0ZV9wZW5kaW5n X2NiKE9pZCByZWxpZCk7CitleHRlcm4gdm9pZAorCQkJcGdzdGF0X3JlcG9ydF92YWN1dW1f ZXh0c3RhdHMoT2lkIHRhYmxlb2lkLCBib29sIHNoYXJlZCwKKwkJCQkJCQkJCQkgIFBnU3Rh dF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqIHBhcmFtcyk7CitleHRlcm4gUGdTdGF0X1ZhY3V1 bVJlbGF0aW9uQ291bnRzICogcGdzdGF0X2ZldGNoX3N0YXRfdmFjdXVtX3RhYmVudHJ5KE9p ZCByZWxpZCwgT2lkIGRiaWQpOworCiAvKgogICogRnVuY3Rpb25zIGluIHBnc3RhdF93YWwu YwogICovCkBAIC04NTQsNyArOTM1LDcgQEAgZXh0ZXJuIFBnU3RhdF9XYWxTdGF0cyAqcGdz dGF0X2ZldGNoX3N0YXRfd2FsKHZvaWQpOwogZXh0ZXJuIFBHRExMSU1QT1JUIGJvb2wgcGdz dGF0X3RyYWNrX2NvdW50czsKIGV4dGVybiBQR0RMTElNUE9SVCBpbnQgcGdzdGF0X3RyYWNr X2Z1bmN0aW9uczsKIGV4dGVybiBQR0RMTElNUE9SVCBpbnQgcGdzdGF0X2ZldGNoX2NvbnNp c3RlbmN5OwotCitleHRlcm4gUEdETExJTVBPUlQgYm9vbCBwZ3N0YXRfdHJhY2tfdmFjdXVt X3N0YXRpc3RpY3M7CiAKIC8qCiAgKiBWYXJpYWJsZXMgaW4gcGdzdGF0X2Jnd3JpdGVyLmMK ZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9pbnRlcm5hbC5oIGIvc3Jj L2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFsLmgKaW5kZXggZmU0NjNmYWFmNi4uNDZh MTI3YWYyYiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFs LmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFsLmgKQEAgLTUwNyw2 ICs1MDcsMTIgQEAgdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0U2hhcmVkX1JlbGF0aW9uCiAJUGdT dGF0X1N0YXRUYWJFbnRyeSBzdGF0czsKIH0gUGdTdGF0U2hhcmVkX1JlbGF0aW9uOwogCit0 eXBlZGVmIHN0cnVjdCBQZ1N0YXRTaGFyZWRfVmFjdXVtUmVsYXRpb24KK3sKKwlQZ1N0YXRT aGFyZWRfQ29tbW9uIGhlYWRlcjsKKwlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgc3Rh dHM7Cit9CQkJUGdTdGF0U2hhcmVkX1ZhY3V1bVJlbGF0aW9uOworCiB0eXBlZGVmIHN0cnVj dCBQZ1N0YXRTaGFyZWRfRnVuY3Rpb24KIHsKIAlQZ1N0YXRTaGFyZWRfQ29tbW9uIGhlYWRl cjsKQEAgLTY4OSw2ICs2OTUsOCBAQCBleHRlcm4gdm9pZCAqcGdzdGF0X2ZldGNoX2VudHJ5 KFBnU3RhdF9LaW5kIGtpbmQsIE9pZCBkYm9pZCwgdWludDY0IG9iamlkLAogCQkJCQkJCQli b29sICptYXlfZnJlZSk7CiBleHRlcm4gdm9pZCBwZ3N0YXRfc25hcHNob3RfZml4ZWQoUGdT dGF0X0tpbmQga2luZCk7CiAKK2V4dGVybiBib29sIHBnc3RhdF92YWN1dW1fcmVsYXRpb25f Zmx1c2hfY2IoUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYsIGJvb2wgbm93YWl0KTsKKwog CiAvKgogICogRnVuY3Rpb25zIGluIHBnc3RhdF9hcmNoaXZlci5jCmRpZmYgLS1naXQgYS9z cmMvaW5jbHVkZS91dGlscy9wZ3N0YXRfa2luZC5oIGIvc3JjL2luY2x1ZGUvdXRpbHMvcGdz dGF0X2tpbmQuaAppbmRleCAyZDc4YTAyOTY4Li5mOTIxNDkwNjZjIDEwMDY0NAotLS0gYS9z cmMvaW5jbHVkZS91dGlscy9wZ3N0YXRfa2luZC5oCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxz L3Bnc3RhdF9raW5kLmgKQEAgLTM5LDkgKzM5LDEwIEBACiAjZGVmaW5lIFBHU1RBVF9LSU5E X0xPQ0sJMTEKICNkZWZpbmUgUEdTVEFUX0tJTkRfU0xSVQkxMgogI2RlZmluZSBQR1NUQVRf S0lORF9XQUwJMTMKKyNkZWZpbmUgUEdTVEFUX0tJTkRfVkFDVVVNX1JFTEFUSU9OCTE0CiAK ICNkZWZpbmUgUEdTVEFUX0tJTkRfQlVJTFRJTl9NSU4gUEdTVEFUX0tJTkRfREFUQUJBU0UK LSNkZWZpbmUgUEdTVEFUX0tJTkRfQlVJTFRJTl9NQVggUEdTVEFUX0tJTkRfV0FMCisjZGVm aW5lIFBHU1RBVF9LSU5EX0JVSUxUSU5fTUFYIFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElP TgogI2RlZmluZSBQR1NUQVRfS0lORF9CVUlMVElOX1NJWkUgKFBHU1RBVF9LSU5EX0JVSUxU SU5fTUFYICsgMSkKIAogLyogQ3VzdG9tIHN0YXRzIGtpbmRzICovCmRpZmYgLS1naXQgYS9z cmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvdmFjdXVtLWV4dGVuZGluZy1pbi1yZXBldGFi bGUtcmVhZC5vdXQgYi9zcmMvdGVzdC9pc29sYXRpb24vZXhwZWN0ZWQvdmFjdXVtLWV4dGVu ZGluZy1pbi1yZXBldGFibGUtcmVhZC5vdXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMC4uYTlkOTc3YzUyMAotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0L2lz b2xhdGlvbi9leHBlY3RlZC92YWN1dW0tZXh0ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkLm91 dApAQCAtMCwwICsxLDM4IEBACitQYXJzZWQgdGVzdCBzcGVjIHdpdGggMiBzZXNzaW9ucwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFfYmVnaW5fcmVwZWF0YWJsZV9yZWFkIHMyX2Rl bGV0ZSBzMl92YWN1dW0gczJfcHJpbnRfdmFjdXVtX3N0YXRzX3RhYmxlIHMxX2NvbW1pdCBz Ml92YWN1dW0gczJfcHJpbnRfdmFjdXVtX3N0YXRzX3RhYmxlCitzdGVwIHMxX2JlZ2luX3Jl cGVhdGFibGVfcmVhZDogCisgIEJFR0lOIFRSQU5TQUNUSU9OIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CisgIFNFTEVDVCBjb3VudCgqKSBGUk9NIHRlc3RfdmFjdXVtX3N0 YXRfaXNvbGF0aW9uOworCitjb3VudAorLS0tLS0KKyAgIDUwCisoMSByb3cpCisKK3N0ZXAg czJfZGVsZXRlOiBERUxFVEUgRlJPTSB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlvbiBXSEVS RSBpZCA8PSAxMDsKK3N0ZXAgczJfdmFjdXVtOiBWQUNVVU0gdGVzdF92YWN1dW1fc3RhdF9p c29sYXRpb247CitzdGVwIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJsZTogCisgICAgU0VM RUNUCisgICAgdnQucmVsbmFtZSwgdnQudHVwbGVzX2RlbGV0ZWQsIHZ0LnJlY2VudGx5X2Rl YWRfdHVwbGVzCisgICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgdnQsIHBnX2NsYXNz IGMKKyAgICBXSEVSRSB2dC5yZWxuYW1lID0gJ3Rlc3RfdmFjdXVtX3N0YXRfaXNvbGF0aW9u JyBBTkQgdnQucmVsaWQgPSBjLm9pZDsKKworcmVsbmFtZSAgICAgICAgICAgICAgICAgICB8 dHVwbGVzX2RlbGV0ZWR8cmVjZW50bHlfZGVhZF90dXBsZXMKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tCit0ZXN0X3Zh Y3V1bV9zdGF0X2lzb2xhdGlvbnwgICAgICAgICAgICAgMHwgICAgICAgICAgICAgICAgICAx MAorKDEgcm93KQorCitzdGVwIHMxX2NvbW1pdDogQ09NTUlUOworc3RlcCBzMl92YWN1dW06 IFZBQ1VVTSB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlvbjsKK3N0ZXAgczJfcHJpbnRfdmFj dXVtX3N0YXRzX3RhYmxlOiAKKyAgICBTRUxFQ1QKKyAgICB2dC5yZWxuYW1lLCB2dC50dXBs ZXNfZGVsZXRlZCwgdnQucmVjZW50bHlfZGVhZF90dXBsZXMKKyAgICBGUk9NIHBnX3N0YXRf dmFjdXVtX3RhYmxlcyB2dCwgcGdfY2xhc3MgYworICAgIFdIRVJFIHZ0LnJlbG5hbWUgPSAn dGVzdF92YWN1dW1fc3RhdF9pc29sYXRpb24nIEFORCB2dC5yZWxpZCA9IGMub2lkOworCity ZWxuYW1lICAgICAgICAgICAgICAgICAgIHx0dXBsZXNfZGVsZXRlZHxyZWNlbnRseV9kZWFk X3R1cGxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0KK3Rlc3RfdmFjdXVtX3N0YXRfaXNvbGF0aW9ufCAgICAgICAg ICAgIDEwfCAgICAgICAgICAgICAgICAgIDEwCisoMSByb3cpCisKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L2lzb2xhdGlvbi9zcGVjcy92YWN1dW0tZXh0ZW5kaW5nLWluLXJlcGV0YWJsZS1y ZWFkLnNwZWMgYi9zcmMvdGVzdC9pc29sYXRpb24vc3BlY3MvdmFjdXVtLWV4dGVuZGluZy1p bi1yZXBldGFibGUtcmVhZC5zcGVjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAuLjUwYjc5NzE1ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdC9pc29sYXRp b24vc3BlY3MvdmFjdXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZC5zcGVjCkBAIC0w LDAgKzEsNTMgQEAKKyMgVGVzdCBmb3IgcmVjZW50bHlfZGVhZF90dXBsZXMgaW4gcGdfc3Rh dF92YWN1dW1fdGFibGVzLgorIworIyBBIHR1cGxlIGRlbGV0ZWQgd2hpbGUgYW4gb2xkZXIg c25hcHNob3QgY2FuIHN0aWxsIHNlZSBpdCBpcyBjb3VudGVkIGFzCisjIHJlY2VudGx5X2Rl YWRfdHVwbGVzLCBiZWNhdXNlIFZBQ1VVTSBpcyBub3QgYWxsb3dlZCB0byByZW1vdmUgaXQg eWV0OyBvbmNlCisjIHRoZSBvbGRlciBzbmFwc2hvdCBpcyBnb25lLCB0aGUgbmV4dCBWQUNV VU0gcmVtb3ZlcyBpdCBhbmQgY291bnRzIGl0IGluCisjIHR1cGxlc19kZWxldGVkIGluc3Rl YWQuCisKK3NldHVwCit7CisgICAgQ1JFQVRFIFRBQkxFIHRlc3RfdmFjdXVtX3N0YXRfaXNv bGF0aW9uIChpZCBpbnQsIGl2YWwgaW50KQorICAgICAgV0lUSCAoYXV0b3ZhY3V1bV9lbmFi bGVkID0gb2ZmKTsKKyAgICBJTlNFUlQgSU5UTyB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlv bgorICAgICAgU0VMRUNUIGksIGkgRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIGk7Cisg ICAgU0VUIHRyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzIFRPICdvbic7Cit9CisKK3RlYXJkb3du Cit7CisgICAgRFJPUCBUQUJMRSB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlvbiBDQVNDQURF OworICAgIFJFU0VUIHRyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzOworfQorCisjIFJlYWRlciBo b2xkaW5nIGFuIG9sZCBzbmFwc2hvdCwgc28gZGVsZXRlZCB0dXBsZXMgc3RheSByZWNlbnRs eSBkZWFkOgorc2Vzc2lvbiBzMQorc2V0dXAJCXsgU0VUIHRyYWNrX3ZhY3V1bV9zdGF0aXN0 aWNzIFRPICdvbic7IH0KK3N0ZXAgczFfYmVnaW5fcmVwZWF0YWJsZV9yZWFkCit7CisgIEJF R0lOIFRSQU5TQUNUSU9OIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CisgIFNF TEVDVCBjb3VudCgqKSBGUk9NIHRlc3RfdmFjdXVtX3N0YXRfaXNvbGF0aW9uOworfQorc3Rl cCBzMV9jb21taXQJCQl7IENPTU1JVDsgfQorCisjIFBlcmZvcm1zIHRoZSBETUwsIHRoZSB2 YWN1dW1zIGFuZCBwcmludHMgdGhlIGNvbGxlY3RlZCBzdGF0aXN0aWNzOgorc2Vzc2lvbiBz Mgorc2V0dXAJCXsgU0VUIHRyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzIFRPICdvbic7IH0KK3N0 ZXAgczJfZGVsZXRlCQkJeyBERUxFVEUgRlJPTSB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlv biBXSEVSRSBpZCA8PSAxMDsgfQorc3RlcCBzMl92YWN1dW0JCQl7IFZBQ1VVTSB0ZXN0X3Zh Y3V1bV9zdGF0X2lzb2xhdGlvbjsgfQorc3RlcCBzMl9wcmludF92YWN1dW1fc3RhdHNfdGFi bGUKK3sKKyAgICBTRUxFQ1QKKyAgICB2dC5yZWxuYW1lLCB2dC50dXBsZXNfZGVsZXRlZCwg dnQucmVjZW50bHlfZGVhZF90dXBsZXMKKyAgICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxl cyB2dCwgcGdfY2xhc3MgYworICAgIFdIRVJFIHZ0LnJlbG5hbWUgPSAndGVzdF92YWN1dW1f c3RhdF9pc29sYXRpb24nIEFORCB2dC5yZWxpZCA9IGMub2lkOworfQorCitwZXJtdXRhdGlv bgorICAgIHMxX2JlZ2luX3JlcGVhdGFibGVfcmVhZAorICAgIHMyX2RlbGV0ZQorICAgIHMy X3ZhY3V1bQorICAgIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJsZQorICAgIHMxX2NvbW1p dAorICAgIHMyX3ZhY3V1bQorICAgIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJsZQpkaWZm IC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgYi9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dAppbmRleCAwOTZlNGY3NjNmLi40MGM2YWNh OTZlIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dAor KysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dApAQCAtMjQyMSw2ICsy NDIxLDMxIEBAIHBnX3N0YXRfdXNlcl90YWJsZXN8IFNFTEVDVCByZWxpZCwKICAgICBmcm96 ZW5fcGFnZV9tYXJrc19jbGVhcmVkCiAgICBGUk9NIHBnX3N0YXRfYWxsX3RhYmxlcwogICBX SEVSRSAoKHNjaGVtYW5hbWUgPD4gQUxMIChBUlJBWVsncGdfY2F0YWxvZyc6Om5hbWUsICdp bmZvcm1hdGlvbl9zY2hlbWEnOjpuYW1lXSkpIEFORCAoc2NoZW1hbmFtZSAhfiAnXnBnX3Rv YXN0Jzo6dGV4dCkpOworcGdfc3RhdF92YWN1dW1faW5kZXhlc3wgU0VMRUNUIGMub2lkIEFT IHJlbGlkLAorICAgIGkub2lkIEFTIGluZGV4cmVsaWQsCisgICAgbi5uc3BuYW1lIEFTIHNj aGVtYW5hbWUsCisgICAgYy5yZWxuYW1lLAorICAgIGkucmVsbmFtZSBBUyBpbmRleHJlbG5h bWUsCisgICAgcy5wYWdlc19kZWxldGVkLAorICAgIHMudHVwbGVzX2RlbGV0ZWQKKyAgIEZS T00gKCgocGdfY2xhc3MgYworICAgICBKT0lOIHBnX2luZGV4IHggT04gKChjLm9pZCA9IHgu aW5kcmVsaWQpKSkKKyAgICAgSk9JTiBwZ19jbGFzcyBpIE9OICgoaS5vaWQgPSB4LmluZGV4 cmVsaWQpKSkKKyAgICAgTEVGVCBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBj LnJlbG5hbWVzcGFjZSkpKSwKKyAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRl eGVzKGkub2lkKSBzKHJlbGlkLCBwYWdlc19kZWxldGVkLCB0dXBsZXNfZGVsZXRlZCkKKyAg V0hFUkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0Jzo6ImNoYXIi LCAnbSc6OiJjaGFyIl0pKTsKK3BnX3N0YXRfdmFjdXVtX3RhYmxlc3wgU0VMRUNUIG4ubnNw bmFtZSBBUyBzY2hlbWFuYW1lLAorICAgIGMucmVsbmFtZSwKKyAgICBzLnJlbGlkLAorICAg IHMucGFnZXNfc2Nhbm5lZCwKKyAgICBzLnBhZ2VzX3JlbW92ZWQsCisgICAgcy50dXBsZXNf ZGVsZXRlZCwKKyAgICBzLnR1cGxlc19mcm96ZW4sCisgICAgcy5yZWNlbnRseV9kZWFkX3R1 cGxlcworICAgRlJPTSAocGdfY2xhc3MgYworICAgICBKT0lOIHBnX25hbWVzcGFjZSBuIE9O ICgobi5vaWQgPSBjLnJlbG5hbWVzcGFjZSkpKSwKKyAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0 X3ZhY3V1bV90YWJsZXMoYy5vaWQpIHMocmVsaWQsIHBhZ2VzX3NjYW5uZWQsIHBhZ2VzX3Jl bW92ZWQsIHR1cGxlc19kZWxldGVkLCB0dXBsZXNfZnJvemVuLCByZWNlbnRseV9kZWFkX3R1 cGxlcykKKyAgV0hFUkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0 Jzo6ImNoYXIiLCAnbSc6OiJjaGFyIl0pKTsKIHBnX3N0YXRfd2FsfCBTRUxFQ1Qgd2FsX3Jl Y29yZHMsCiAgICAgd2FsX2ZwaSwKICAgICB3YWxfYnl0ZXMsCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQgYi9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMC4uYzMwNzllMzM3OQotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dApAQCAtMCwwICsxLDg3IEBACist LQorLS0gRXh0ZW5kZWQgdmFjdXVtIHN0YXRpc3RpY3Mgdmlld3MgKHBnX3N0YXRfdmFjdXVt X3RhYmxlcywgX2luZGV4ZXMsIF9kYXRhYmFzZSkKKy0tCitTRVQgdHJhY2tfdmFjdXVtX3N0 YXRpc3RpY3MgPSBvbjsKK0NSRUFURSBUQUJMRSB2YWNzdGF0X3QgKGlkIGludCBQUklNQVJZ IEtFWSwgdiB0ZXh0KQorICBXSVRIIChhdXRvdmFjdXVtX2VuYWJsZWQgPSBvZmYpOworSU5T RVJUIElOVE8gdmFjc3RhdF90IFNFTEVDVCBnLCByZXBlYXQoJ3gnLCAyMCkgRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMSwgMTAwMCkgZzsKK0RFTEVURSBGUk9NIHZhY3N0YXRfdCBXSEVSRSBp ZCAlIDIgPSAwOworVkFDVVVNIHZhY3N0YXRfdDsKKy0tIGNvcmUgaGVhcC1wYWdlIGFuZCBk ZWFkLXR1cGxlIG1ldHJpY3MuICBUaGlzIFZBQ1VVTSBydW5zIHdpdGhvdXQgY29uY3VycmVu dAorLS0gYWN0aXZpdHk6IGV2ZXJ5IGRlbGV0ZWQgdHVwbGUgaXMgZnVsbHkgcmVtb3ZhYmxl IChyZWNlbnRseV9kZWFkX3R1cGxlcyA9IDApLAorLS0gdGhlIHN1cnZpdmluZyB0dXBsZXMg YXJlIHRvbyBmcmVzaCB0byBiZSBmcm96ZW4gKHR1cGxlc19mcm96ZW4gPSAwKSwgYW5kIHRo ZQorLS0gaW50ZXJsZWF2ZWQgZGVsZXRpb25zIGxlYXZlIG5vIHRyYWlsaW5nIGVtcHR5IHBh Z2VzIHRvIHRydW5jYXRlCistLSAocGFnZXNfcmVtb3ZlZCA9IDApLiAgVGhlIHJlY2VudGx5 X2RlYWRfdHVwbGVzIG5vbi16ZXJvIHBhdGggaXMgY292ZXJlZCBieQorLS0gdGhlIHZhY3V1 bS1leHRlbmRpbmctaW4tcmVwZXRhYmxlLXJlYWQgaXNvbGF0aW9uIHRlc3QuCitTRUxFQ1Qg cGFnZXNfc2Nhbm5lZCA+IDAgQVMgcGFnZXNfc2Nhbm5lZCwKKyAgICAgICBwYWdlc19yZW1v dmVkID0gMCBBUyBwYWdlc19yZW1vdmVkLAorICAgICAgIHR1cGxlc19kZWxldGVkID0gNTAw IEFTIHR1cGxlc19kZWxldGVkLAorICAgICAgIHR1cGxlc19mcm96ZW4gPSAwIEFTIHR1cGxl c19mcm96ZW4sCisgICAgICAgcmVjZW50bHlfZGVhZF90dXBsZXMgPSAwIEFTIHJlY2VudGx5 X2RlYWRfdHVwbGVzCisgIEZST00gcGdfc3RhdF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5h bWUgPSAndmFjc3RhdF90JzsKKyBwYWdlc19zY2FubmVkIHwgcGFnZXNfcmVtb3ZlZCB8IHR1 cGxlc19kZWxldGVkIHwgdHVwbGVzX2Zyb3plbiB8IHJlY2VudGx5X2RlYWRfdHVwbGVzIAor LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgdCAgICAgICAgICAgICB8IHQg ICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgfCB0CisoMSBy b3cpCisKKy0tIHBhZ2VzX3JlbW92ZWQgcGF0aDogZGVsZXRpbmcgZXZlcnkgdHVwbGUgbGV0 cyBWQUNVVU0gdHJ1bmNhdGUgdGhlIG5vdy1lbXB0eQorLS0gdHJhaWxpbmcgaGVhcCBwYWdl cywgc28gcGFnZXNfcmVtb3ZlZCBhZHZhbmNlcy4KK0NSRUFURSBUQUJMRSB2YWNzdGF0X3Ry dW5jIChpZCBpbnQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9IG9mZik7CitJTlNF UlQgSU5UTyB2YWNzdGF0X3RydW5jIFNFTEVDVCBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwMDAp OworREVMRVRFIEZST00gdmFjc3RhdF90cnVuYzsKK1ZBQ1VVTSB2YWNzdGF0X3RydW5jOwor U0VMRUNUIHBhZ2VzX3JlbW92ZWQgPiAwIEFTIHBhZ2VzX3JlbW92ZWQsCisgICAgICAgdHVw bGVzX2RlbGV0ZWQgPSAxMDAwMCBBUyB0dXBsZXNfZGVsZXRlZAorICBGUk9NIHBnX3N0YXRf dmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfdHJ1bmMnOworIHBhZ2Vz X3JlbW92ZWQgfCB0dXBsZXNfZGVsZXRlZCAKKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tCisgdCAgICAgICAgICAgICB8IHQKKygxIHJvdykKKworRFJPUCBUQUJMRSB2YWNz dGF0X3RydW5jOworLS0gdHVwbGVzX2Zyb3plbiBwYXRoOiBhbiBhZ2dyZXNzaXZlIFZBQ1VV TSAoRlJFRVpFKSBmcmVlemVzIGFsbCBsaXZlIHR1cGxlcywKKy0tIHNvIHR1cGxlc19mcm96 ZW4gYWR2YW5jZXMuCitDUkVBVEUgVEFCTEUgdmFjc3RhdF9mcmVlemUgKHggaW50KQorICBX SVRIIChhdXRvdmFjdXVtX2VuYWJsZWQgPSBvZmYpOworSU5TRVJUIElOVE8gdmFjc3RhdF9m cmVlemUgU0VMRUNUIGdlbmVyYXRlX3NlcmllcygxLCAxMDAwKTsKK1ZBQ1VVTSAoRlJFRVpF KSB2YWNzdGF0X2ZyZWV6ZTsKK1NFTEVDVCB0dXBsZXNfZnJvemVuID4gMCBBUyB0dXBsZXNf ZnJvemVuCisgIEZST00gcGdfc3RhdF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAn dmFjc3RhdF9mcmVlemUnOworIHR1cGxlc19mcm96ZW4gCistLS0tLS0tLS0tLS0tLS0KKyB0 CisoMSByb3cpCisKK0RST1AgVEFCTEUgdmFjc3RhdF9mcmVlemU7CistLSBwZXItaW5kZXgg dmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4IGlzIHByb2Nlc3NlZCBieSB0aGUgc2FtZSBW QUNVVU0uCistLSBObyBidHJlZSBsZWFmIGVtcHRpZXMgb3V0IChpbnRlcmxlYXZlZCBkZWxl dGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0gMCwKKy0tIHdoaWxlIGV2ZXJ5IGluZGV4IGVu dHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBsZSBpcyBkZWxldGVkLgorU0VMRUNUIGluZGV4 cmVsbmFtZSwKKyAgICAgICBwYWdlc19kZWxldGVkID0gMCBBUyBwYWdlc19kZWxldGVkLAor ICAgICAgIHR1cGxlc19kZWxldGVkID0gNTAwIEFTIHR1cGxlc19kZWxldGVkCisgIEZST00g cGdfc3RhdF92YWN1dW1faW5kZXhlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfdCcgT1JE RVIgQlkgaW5kZXhyZWxuYW1lOworICBpbmRleHJlbG5hbWUgIHwgcGFnZXNfZGVsZXRlZCB8 IHR1cGxlc19kZWxldGVkIAorLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLQorIHZhY3N0YXRfdF9wa2V5IHwgdCAgICAgICAgICAgICB8IHQKKygx IHJvdykKKworLS0gaW5kZXggcGFnZS1kZWxldGlvbiBwYXRoOiBkZWxldGluZyBhIGNvbnRp Z3VvdXMga2V5IHJhbmdlIGVtcHRpZXMgd2hvbGUKKy0tIGJ0cmVlIGxlYWYgcGFnZXMsIHdo aWNoIFZBQ1VVTSB0aGVuIGRlbGV0ZXMgKHBhZ2VzX2RlbGV0ZWQgPiAwKSwgYW5kIGV2ZXJ5 CistLSByZW1vdmVkIGluZGV4IGVudHJ5IGlzIGNvdW50ZWQgKHR1cGxlc19kZWxldGVkKS4K K0NSRUFURSBUQUJMRSB2YWNzdGF0X2lkeGRlbCAoaWQgaW50IFBSSU1BUlkgS0VZLCB2IHRl eHQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9IG9mZik7CitJTlNFUlQgSU5UTyB2 YWNzdGF0X2lkeGRlbCBTRUxFQ1QgZywgcmVwZWF0KCd4JywgMjApIEZST00gZ2VuZXJhdGVf c2VyaWVzKDEsIDEwMDAwKSBnOworVkFDVVVNIHZhY3N0YXRfaWR4ZGVsOworREVMRVRFIEZS T00gdmFjc3RhdF9pZHhkZWwgV0hFUkUgaWQgPD0gOTAwMDsKK1ZBQ1VVTSB2YWNzdGF0X2lk eGRlbDsKK1NFTEVDVCBpbmRleHJlbG5hbWUsCisgICAgICAgcGFnZXNfZGVsZXRlZCA+IDAg QVMgcGFnZXNfZGVsZXRlZCwKKyAgICAgICB0dXBsZXNfZGVsZXRlZCA9IDkwMDAgQVMgdHVw bGVzX2RlbGV0ZWQKKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV9pbmRleGVzIFdIRVJFIHJlbG5h bWUgPSAndmFjc3RhdF9pZHhkZWwnIE9SREVSIEJZIGluZGV4cmVsbmFtZTsKKyAgICBpbmRl eHJlbG5hbWUgICAgIHwgcGFnZXNfZGVsZXRlZCB8IHR1cGxlc19kZWxldGVkIAorLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tCisgdmFj c3RhdF9pZHhkZWxfcGtleSB8IHQgICAgICAgICAgICAgfCB0CisoMSByb3cpCisKK0RST1Ag VEFCTEUgdmFjc3RhdF9pZHhkZWw7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3Bh cmFsbGVsX3NjaGVkdWxlIGIvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZQpp bmRleCA4ZmEwYTZjNDdmLi4zYzczMjA3YTlmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdy ZXNzL3BhcmFsbGVsX3NjaGVkdWxlCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxf c2NoZWR1bGUKQEAgLTkxLDYgKzkxLDkgQEAgdGVzdDogc2VsZWN0X3BhcmFsbGVsCiB0ZXN0 OiB3cml0ZV9wYXJhbGxlbAogdGVzdDogdmFjdXVtX3BhcmFsbGVsCiAKKyMgZXh0ZW5kZWQg dmFjdXVtIHN0YXRpc3RpY3Mgdmlld3MKK3Rlc3Q6IHZhY3V1bV9zdGF0cworCiAjIFJ1biB0 aGlzIGFsb25lLCBiZWNhdXNlIGNvbmN1cnJlbnQgRFJPUCBUQUJMRSB3b3VsZCBtYWtlIG5v bi1zdXBlcnVzZXIKICMgIkFOQUxZWkU7IiBmYWlsIHdpdGggInJlbGF0aW9uIHdpdGggT0lE ICRuIGRvZXMgbm90IGV4aXN0Ii4KIHRlc3Q6IG1haW50YWluX2V2ZXJ5CmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwLi4wNDY5NmVkODI0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbApAQCAtMCwwICsxLDY4IEBACistLQorLS0gRXh0 ZW5kZWQgdmFjdXVtIHN0YXRpc3RpY3Mgdmlld3MgKHBnX3N0YXRfdmFjdXVtX3RhYmxlcywg X2luZGV4ZXMsIF9kYXRhYmFzZSkKKy0tCitTRVQgdHJhY2tfdmFjdXVtX3N0YXRpc3RpY3Mg PSBvbjsKKworQ1JFQVRFIFRBQkxFIHZhY3N0YXRfdCAoaWQgaW50IFBSSU1BUlkgS0VZLCB2 IHRleHQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9IG9mZik7CitJTlNFUlQgSU5U TyB2YWNzdGF0X3QgU0VMRUNUIGcsIHJlcGVhdCgneCcsIDIwKSBGUk9NIGdlbmVyYXRlX3Nl cmllcygxLCAxMDAwKSBnOworREVMRVRFIEZST00gdmFjc3RhdF90IFdIRVJFIGlkICUgMiA9 IDA7CitWQUNVVU0gdmFjc3RhdF90OworCistLSBjb3JlIGhlYXAtcGFnZSBhbmQgZGVhZC10 dXBsZSBtZXRyaWNzLiAgVGhpcyBWQUNVVU0gcnVucyB3aXRob3V0IGNvbmN1cnJlbnQKKy0t IGFjdGl2aXR5OiBldmVyeSBkZWxldGVkIHR1cGxlIGlzIGZ1bGx5IHJlbW92YWJsZSAocmVj ZW50bHlfZGVhZF90dXBsZXMgPSAwKSwKKy0tIHRoZSBzdXJ2aXZpbmcgdHVwbGVzIGFyZSB0 b28gZnJlc2ggdG8gYmUgZnJvemVuICh0dXBsZXNfZnJvemVuID0gMCksIGFuZCB0aGUKKy0t IGludGVybGVhdmVkIGRlbGV0aW9ucyBsZWF2ZSBubyB0cmFpbGluZyBlbXB0eSBwYWdlcyB0 byB0cnVuY2F0ZQorLS0gKHBhZ2VzX3JlbW92ZWQgPSAwKS4gIFRoZSByZWNlbnRseV9kZWFk X3R1cGxlcyBub24temVybyBwYXRoIGlzIGNvdmVyZWQgYnkKKy0tIHRoZSB2YWN1dW0tZXh0 ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkIGlzb2xhdGlvbiB0ZXN0LgorU0VMRUNUIHBhZ2Vz X3NjYW5uZWQgPiAwIEFTIHBhZ2VzX3NjYW5uZWQsCisgICAgICAgcGFnZXNfcmVtb3ZlZCA9 IDAgQVMgcGFnZXNfcmVtb3ZlZCwKKyAgICAgICB0dXBsZXNfZGVsZXRlZCA9IDUwMCBBUyB0 dXBsZXNfZGVsZXRlZCwKKyAgICAgICB0dXBsZXNfZnJvemVuID0gMCBBUyB0dXBsZXNfZnJv emVuLAorICAgICAgIHJlY2VudGx5X2RlYWRfdHVwbGVzID0gMCBBUyByZWNlbnRseV9kZWFk X3R1cGxlcworICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0g J3ZhY3N0YXRfdCc7CisKKy0tIHBhZ2VzX3JlbW92ZWQgcGF0aDogZGVsZXRpbmcgZXZlcnkg dHVwbGUgbGV0cyBWQUNVVU0gdHJ1bmNhdGUgdGhlIG5vdy1lbXB0eQorLS0gdHJhaWxpbmcg aGVhcCBwYWdlcywgc28gcGFnZXNfcmVtb3ZlZCBhZHZhbmNlcy4KK0NSRUFURSBUQUJMRSB2 YWNzdGF0X3RydW5jIChpZCBpbnQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9IG9m Zik7CitJTlNFUlQgSU5UTyB2YWNzdGF0X3RydW5jIFNFTEVDVCBnZW5lcmF0ZV9zZXJpZXMo MSwgMTAwMDApOworREVMRVRFIEZST00gdmFjc3RhdF90cnVuYzsKK1ZBQ1VVTSB2YWNzdGF0 X3RydW5jOworU0VMRUNUIHBhZ2VzX3JlbW92ZWQgPiAwIEFTIHBhZ2VzX3JlbW92ZWQsCisg ICAgICAgdHVwbGVzX2RlbGV0ZWQgPSAxMDAwMCBBUyB0dXBsZXNfZGVsZXRlZAorICBGUk9N IHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfdHJ1bmMn OworRFJPUCBUQUJMRSB2YWNzdGF0X3RydW5jOworCistLSB0dXBsZXNfZnJvemVuIHBhdGg6 IGFuIGFnZ3Jlc3NpdmUgVkFDVVVNIChGUkVFWkUpIGZyZWV6ZXMgYWxsIGxpdmUgdHVwbGVz LAorLS0gc28gdHVwbGVzX2Zyb3plbiBhZHZhbmNlcy4KK0NSRUFURSBUQUJMRSB2YWNzdGF0 X2ZyZWV6ZSAoeCBpbnQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9IG9mZik7CitJ TlNFUlQgSU5UTyB2YWNzdGF0X2ZyZWV6ZSBTRUxFQ1QgZ2VuZXJhdGVfc2VyaWVzKDEsIDEw MDApOworVkFDVVVNIChGUkVFWkUpIHZhY3N0YXRfZnJlZXplOworU0VMRUNUIHR1cGxlc19m cm96ZW4gPiAwIEFTIHR1cGxlc19mcm96ZW4KKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJs ZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X2ZyZWV6ZSc7CitEUk9QIFRBQkxFIHZhY3N0 YXRfZnJlZXplOworCistLSBwZXItaW5kZXggdmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4 IGlzIHByb2Nlc3NlZCBieSB0aGUgc2FtZSBWQUNVVU0uCistLSBObyBidHJlZSBsZWFmIGVt cHRpZXMgb3V0IChpbnRlcmxlYXZlZCBkZWxldGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0g MCwKKy0tIHdoaWxlIGV2ZXJ5IGluZGV4IGVudHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBs ZSBpcyBkZWxldGVkLgorU0VMRUNUIGluZGV4cmVsbmFtZSwKKyAgICAgICBwYWdlc19kZWxl dGVkID0gMCBBUyBwYWdlc19kZWxldGVkLAorICAgICAgIHR1cGxlc19kZWxldGVkID0gNTAw IEFTIHR1cGxlc19kZWxldGVkCisgIEZST00gcGdfc3RhdF92YWN1dW1faW5kZXhlcyBXSEVS RSByZWxuYW1lID0gJ3ZhY3N0YXRfdCcgT1JERVIgQlkgaW5kZXhyZWxuYW1lOworCistLSBp bmRleCBwYWdlLWRlbGV0aW9uIHBhdGg6IGRlbGV0aW5nIGEgY29udGlndW91cyBrZXkgcmFu Z2UgZW1wdGllcyB3aG9sZQorLS0gYnRyZWUgbGVhZiBwYWdlcywgd2hpY2ggVkFDVVVNIHRo ZW4gZGVsZXRlcyAocGFnZXNfZGVsZXRlZCA+IDApLCBhbmQgZXZlcnkKKy0tIHJlbW92ZWQg aW5kZXggZW50cnkgaXMgY291bnRlZCAodHVwbGVzX2RlbGV0ZWQpLgorQ1JFQVRFIFRBQkxF IHZhY3N0YXRfaWR4ZGVsIChpZCBpbnQgUFJJTUFSWSBLRVksIHYgdGV4dCkKKyAgV0lUSCAo YXV0b3ZhY3V1bV9lbmFibGVkID0gb2ZmKTsKK0lOU0VSVCBJTlRPIHZhY3N0YXRfaWR4ZGVs IFNFTEVDVCBnLCByZXBlYXQoJ3gnLCAyMCkgRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAw MDApIGc7CitWQUNVVU0gdmFjc3RhdF9pZHhkZWw7CitERUxFVEUgRlJPTSB2YWNzdGF0X2lk eGRlbCBXSEVSRSBpZCA8PSA5MDAwOworVkFDVVVNIHZhY3N0YXRfaWR4ZGVsOworU0VMRUNU IGluZGV4cmVsbmFtZSwKKyAgICAgICBwYWdlc19kZWxldGVkID4gMCBBUyBwYWdlc19kZWxl dGVkLAorICAgICAgIHR1cGxlc19kZWxldGVkID0gOTAwMCBBUyB0dXBsZXNfZGVsZXRlZAor ICBGUk9NIHBnX3N0YXRfdmFjdXVtX2luZGV4ZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0 X2lkeGRlbCcgT1JERVIgQlkgaW5kZXhyZWxuYW1lOworRFJPUCBUQUJMRSB2YWNzdGF0X2lk eGRlbDsKLS0gCjIuMzkuNSAoQXBwbGUgR2l0LTE1NCkKCg== --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0003-Extended-vacuum-statistics-missed-dead-tuples-and-pa.patch" Content-Disposition: attachment; filename*0="0003-Extended-vacuum-statistics-missed-dead-tuples-and-pa.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAzYWJiNzVkZGMxMjFhY2VjMDk3MGM3ZjQ2OTQxN2YwZWY2MzdkZmEyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo0MToyNCArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggMy84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogbWlzc2VkIGRl YWQgdHVwbGVzIGFuZCBwYWdlcwogZm9yIHRhYmxlcwoKRXhwb3NlIHRoZSBjb3VudGVycyBm b3IgZGVhZCB0dXBsZXMgdGhhdCBWQUNVVU0gY291bGQgbm90IHJlbW92ZSBiZWNhdXNlIGl0 CmZhaWxlZCB0byBhY3F1aXJlIGEgY2xlYW51cCBsb2NrIG9uIHRoZWlyIGhlYXAgcGFnZSwg d2l0aCBkb2N1bWVudGF0aW9uIGFuZApyZWdyZXNzaW9uIGNvdmVyYWdlOgoKICBtaXNzZWRf ZGVhZF90dXBsZXMgIGRlYWQgdHVwbGVzIHNraXBwZWQgYmVjYXVzZSB0aGVpciBwYWdlIGNv dWxkIG5vdCBiZQogICAgICAgICAgICAgICAgICAgICAgY2xlYW51cC1sb2NrZWQKICBtaXNz ZWRfZGVhZF9wYWdlcyAgIGhlYXAgcGFnZXMgdGhhdCBjb250YWluZWQgc3VjaCBza2lwcGVk IGRlYWQgdHVwbGVzCi0tLQogZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sICAgICAg ICAgICAgICAgIHwgMTYgKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVt bGF6eS5jICAgICAgICAgIHwgIDIgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmll d3Muc3FsICAgICAgICAgIHwgIDQgKy0KIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bn c3RhdF92YWN1dW0uYyAgICB8ICAyICsKIHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRm dW5jcy5jICAgICAgICAgICB8ICA0ICstCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2Mu ZGF0ICAgICAgICAgICAgICAgfCAgNiArLS0KIHNyYy9pbmNsdWRlL3Bnc3RhdC5oICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICA0ICsrCiAuLi4vdmFjdXVtLWV4dGVuZGluZy1pbi1y ZXBldGFibGUtcmVhZC5vdXQgICAgfCA0NiArKysrKysrKysrKysrKystLS0tCiAuLi4vdmFj dXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZC5zcGVjICAgfCAyOCArKysrKysrKyst LQogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgICAgICAgICAgIHwgIDYg KystCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQgICAgfCAx MiArKysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbCAgICAgICAg IHwgIDggKysrKwogMTIgZmlsZXMgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMoKyksIDIyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dt bCBiL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbAppbmRleCBiZGNkOGQ5ZjQ3Li5i OTZjNjUzOTI5IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwK KysrIGIvZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sCkBAIC01ODc2LDYgKzU4NzYs MjIgQEAgU0VMRUNUICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRf eGFjdHMgcHB4CiAgICAgICAgTnVtYmVyIG9mIGRlYWQgdHVwbGVzIHRoYXQgYXJlIHN0aWxs IHZpc2libGUgdG8gc29tZSB0cmFuc2FjdGlvbiBhbmQgdGhlcmVmb3JlIGNvdWxkIG5vdCB5 ZXQgYmUgcmVtb3ZlZC4KICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KKyAg ICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPm1pc3Nl ZF9kZWFkX3BhZ2VzPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAg PC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTnVtYmVyIG9mIGhlYXAgcGFnZXMgY29u dGFpbmluZyBkZWFkIHR1cGxlcyB0aGF0IHRoZSB2YWN1dW0gY291bGQgbm90IHJlbW92ZSBi ZWNhdXNlIGl0IGZhaWxlZCB0byBhY3F1aXJlIGEgY2xlYW51cCBsb2NrLgorICAgICAgPC9w YXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJv bGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9u Ij4KKyAgICAgICA8c3RydWN0ZmllbGQ+bWlzc2VkX2RlYWRfdHVwbGVzPC9zdHJ1Y3RmaWVs ZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+Cisg ICAgICAgTnVtYmVyIG9mIGRlYWQgdHVwbGVzIHRoYXQgdGhlIHZhY3V1bSBjb3VsZCBub3Qg cmVtb3ZlIGJlY2F1c2UgaXQgZmFpbGVkIHRvIGFjcXVpcmUgYSBjbGVhbnVwIGxvY2sgb24g dGhlaXIgcGFnZS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KICAgICA8 L3Rib2R5PgogICAgPC90Z3JvdXA+CiAgIDwvdGFibGU+CmRpZmYgLS1naXQgYS9zcmMvYmFj a2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaGVh cC92YWN1dW1sYXp5LmMKaW5kZXggM2M0MDNlODZmMC4uN2FiYzgzZGJmZCAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jCisrKyBiL3NyYy9iYWNr ZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYwpAQCAtNjMxLDYgKzYzMSw4IEBAIGFjY3Vt dWxhdGVfaGVhcF92YWN1dW1fc3RhdGlzdGljcyhMVlJlbFN0YXRlICp2YWNyZWwsCiAJZXh0 VmFjU3RhdHMtPmNvbW1vbi50dXBsZXNfZGVsZXRlZCA9IHZhY3JlbC0+dHVwbGVzX2RlbGV0 ZWQ7CiAJZXh0VmFjU3RhdHMtPnRhYmxlLnR1cGxlc19mcm96ZW4gPSB2YWNyZWwtPnR1cGxl c19mcm96ZW47CiAJZXh0VmFjU3RhdHMtPnRhYmxlLnJlY2VudGx5X2RlYWRfdHVwbGVzID0g dmFjcmVsLT5yZWNlbnRseV9kZWFkX3R1cGxlczsKKwlleHRWYWNTdGF0cy0+dGFibGUubWlz c2VkX2RlYWRfcGFnZXMgPSB2YWNyZWwtPm1pc3NlZF9kZWFkX3BhZ2VzOworCWV4dFZhY1N0 YXRzLT50YWJsZS5taXNzZWRfZGVhZF90dXBsZXMgPSB2YWNyZWwtPm1pc3NlZF9kZWFkX3R1 cGxlczsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVt X3ZpZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRl eCAwMTQ4N2YxNjY1Li42ZjY5N2FiMzkwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRh bG9nL3N5c3RlbV92aWV3cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1f dmlld3Muc3FsCkBAIC0xNTcwLDcgKzE1NzAsOSBAQCBDUkVBVEUgVklFVyBwZ19zdGF0X3Zh Y3V1bV90YWJsZXMgQVMKICAgICAgICAgUy5wYWdlc19yZW1vdmVkIEFTIHBhZ2VzX3JlbW92 ZWQsCiAgICAgICAgIFMudHVwbGVzX2RlbGV0ZWQgQVMgdHVwbGVzX2RlbGV0ZWQsCiAgICAg ICAgIFMudHVwbGVzX2Zyb3plbiBBUyB0dXBsZXNfZnJvemVuLAotICAgICAgICBTLnJlY2Vu dGx5X2RlYWRfdHVwbGVzIEFTIHJlY2VudGx5X2RlYWRfdHVwbGVzCisgICAgICAgIFMucmVj ZW50bHlfZGVhZF90dXBsZXMgQVMgcmVjZW50bHlfZGVhZF90dXBsZXMsCisgICAgICAgIFMu bWlzc2VkX2RlYWRfcGFnZXMgQVMgbWlzc2VkX2RlYWRfcGFnZXMsCisgICAgICAgIFMubWlz c2VkX2RlYWRfdHVwbGVzIEFTIG1pc3NlZF9kZWFkX3R1cGxlcwogCiAgICAgRlJPTSBwZ19j bGFzcyBDIEpPSU4KICAgICAgICAgICAgIHBnX25hbWVzcGFjZSBOIE9OIE4ub2lkID0gQy5y ZWxuYW1lc3BhY2UsCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9w Z3N0YXRfdmFjdXVtLmMgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFj dXVtLmMKaW5kZXggNWE2MjUxMzJkZC4uOGNjNTA1ZWE4NiAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jCisrKyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYwpAQCAtNTQsNiArNTQsOCBAQCBwZ3N0 YXRfYWNjdW11bGF0ZV9leHR2YWNfc3RhdHNfcmVsYXRpb25zKFBnU3RhdF9WYWN1dW1SZWxh dGlvbkNvdW50cyAqZHN0LAogCQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCBwYWdlc19y ZW1vdmVkKTsKIAkJQUNDVU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgdHVwbGVzX2Zyb3plbik7 CiAJCUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIHJlY2VudGx5X2RlYWRfdHVwbGVzKTsK KwkJQUNDVU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgbWlzc2VkX2RlYWRfcGFnZXMpOworCQlB Q0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCBtaXNzZWRfZGVhZF90dXBsZXMpOwogCX0KIAll bHNlIGlmIChkc3QtPnR5cGUgPT0gUEdTVEFUX0VYVFZBQ19JTkRFWCkKIAl7CmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCmluZGV4IGQ2OTI3ZDk0NWQuLjc0MmY0OTc0ZDUg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCisrKyBi L3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCkBAIC0yMzc0LDcgKzIzNzQs NyBAQCBwZ19zdGF0X2hhdmVfc3RhdHMoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19z dGF0X2dldF92YWN1dW1fdGFibGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0jZGVmaW5lIFBH X1NUQVRfR0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyA2CisjZGVmaW5lIFBHX1NUQVRf R0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyA4CiAKIAlPaWQJCQlyZWxpZCA9IFBHX0dF VEFSR19PSUQoMCk7CiAJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICpleHR2YWN1dW07 CkBAIC0yNDA1LDYgKzI0MDUsOCBAQCBwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzKFBHX0ZV TkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+ Y29tbW9uLnR1cGxlc19kZWxldGVkKTsKIAl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0o ZXh0dmFjdXVtLT50YWJsZS50dXBsZXNfZnJvemVuKTsKIAl2YWx1ZXNbaSsrXSA9IEludDY0 R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS5yZWNlbnRseV9kZWFkX3R1cGxlcyk7CisJdmFs dWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+dGFibGUubWlzc2VkX2RlYWRf cGFnZXMpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPnRhYmxl Lm1pc3NlZF9kZWFkX3R1cGxlcyk7CiAKIAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNV VU1fVEFCTEVTX1NUQVRTX0NPTFMpOwogCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAppbmRl eCA2YmMzYmQ5MDliLi42ZDY4MzQxM2E0IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQK QEAgLTEyNjQzLDkgKzEyNjQzLDkgQEAKICAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdmFj dXVtX3RhYmxlcycsIHByb3Jvd3MgPT4gMTAwMCwgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9y ZXR0eXBlID0+ICdyZWNvcmQnLCBwcm9pc3N0cmljdCA9PiAnZicsCiAgIHByb3JldHNldCA9 PiAndCcsCiAgIHByb2FyZ3R5cGVzID0+ICdvaWQnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAn e29pZCxvaWQsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4fScsCi0gIHByb2FyZ21vZGVzID0+ ICd7aSxvLG8sbyxvLG8sb30nLAotICBwcm9hcmduYW1lcyA9PiAne3JlbG9pZCxyZWxpZCxw YWdlc19zY2FubmVkLHBhZ2VzX3JlbW92ZWQsdHVwbGVzX2RlbGV0ZWQsdHVwbGVzX2Zyb3pl bixyZWNlbnRseV9kZWFkX3R1cGxlc30nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxv aWQsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OH0nLAorICBwcm9hcmdtb2Rl cyA9PiAne2ksbyxvLG8sbyxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7cmVsb2lk LHJlbGlkLHBhZ2VzX3NjYW5uZWQscGFnZXNfcmVtb3ZlZCx0dXBsZXNfZGVsZXRlZCx0dXBs ZXNfZnJvemVuLHJlY2VudGx5X2RlYWRfdHVwbGVzLG1pc3NlZF9kZWFkX3BhZ2VzLG1pc3Nl ZF9kZWFkX3R1cGxlc30nLAogICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV90YWJs ZXMnIH0KIAogIyBvaWQ4IHJlbGF0ZWQgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9wZ3N0YXQuaCBiL3NyYy9pbmNsdWRlL3Bnc3RhdC5oCmluZGV4IDQwNGU3ZDAyOTcu LmJkY2Y3NTg0NDEgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oCisrKyBiL3Ny Yy9pbmNsdWRlL3Bnc3RhdC5oCkBAIC0yMTgsNiArMjE4LDEwIEBAIHR5cGVkZWYgc3RydWN0 IFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cwogCQkJCQkJCQkJCSAqIFZNKSAqLwogCQkJ aW50NjQJCXBhZ2VzX3JlbW92ZWQ7CS8qIGhlYXAgcGFnZXMgcmVtb3ZlZCBieSB2YWN1dW0K IAkJCQkJCQkJCQkgKiAidHJ1bmNhdGlvbiIgKi8KKwkJCWludDY0CQltaXNzZWRfZGVhZF9w YWdlczsJLyogcGFnZXMgd2l0aCBtaXNzZWQgZGVhZCB0dXBsZXMgKi8KKwkJCWludDY0CQlt aXNzZWRfZGVhZF90dXBsZXM7IC8qIHR1cGxlcyBub3QgcHJ1bmVkIGJ5IHZhY3V1bSBkdWUK KwkJCQkJCQkJCQkJICogdG8gZmFpbHVyZSB0byBnZXQgYSBjbGVhbnVwCisJCQkJCQkJCQkJ CSAqIGxvY2sgKi8KIAkJfQkJCXRhYmxlOwogCQlzdHJ1Y3QKIAkJewpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3ZhY3V1bS1leHRlbmRpbmctaW4tcmVwZXRh YmxlLXJlYWQub3V0IGIvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVjdGVkL3ZhY3V1bS1leHRl bmRpbmctaW4tcmVwZXRhYmxlLXJlYWQub3V0CmluZGV4IGE5ZDk3N2M1MjAuLjNlYjAzOGI5 YWQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC92YWN1dW0tZXh0 ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkLm91dAorKysgYi9zcmMvdGVzdC9pc29sYXRpb24v ZXhwZWN0ZWQvdmFjdXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZC5vdXQKQEAgLTEs NiArMSw2IEBACi1QYXJzZWQgdGVzdCBzcGVjIHdpdGggMiBzZXNzaW9ucworUGFyc2VkIHRl c3Qgc3BlYyB3aXRoIDMgc2Vzc2lvbnMKIAotc3RhcnRpbmcgcGVybXV0YXRpb246IHMxX2Jl Z2luX3JlcGVhdGFibGVfcmVhZCBzMl9kZWxldGUgczJfdmFjdXVtIHMyX3ByaW50X3ZhY3V1 bV9zdGF0c190YWJsZSBzMV9jb21taXQgczJfdmFjdXVtIHMyX3ByaW50X3ZhY3V1bV9zdGF0 c190YWJsZQorc3RhcnRpbmcgcGVybXV0YXRpb246IHMxX2JlZ2luX3JlcGVhdGFibGVfcmVh ZCBzMl9kZWxldGUgczJfdmFjdXVtIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJsZSBzMV9j b21taXQgcGluaG9sZGVyX2N1cnNvciBzMl92YWN1dW0gczJfcHJpbnRfdmFjdXVtX3N0YXRz X3RhYmxlIHBpbmhvbGRlcl9jb21taXQgczJfdmFjdXVtIHMyX3ByaW50X3ZhY3V1bV9zdGF0 c190YWJsZQogc3RlcCBzMV9iZWdpbl9yZXBlYXRhYmxlX3JlYWQ6IAogICBCRUdJTiBUUkFO U0FDVElPTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOwogICBTRUxFQ1QgY291 bnQoKikgRlJPTSB0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlvbjsKQEAgLTE0LDI1ICsxNCw1 MSBAQCBzdGVwIHMyX2RlbGV0ZTogREVMRVRFIEZST00gdGVzdF92YWN1dW1fc3RhdF9pc29s YXRpb24gV0hFUkUgaWQgPD0gMTA7CiBzdGVwIHMyX3ZhY3V1bTogVkFDVVVNIHRlc3RfdmFj dXVtX3N0YXRfaXNvbGF0aW9uOwogc3RlcCBzMl9wcmludF92YWN1dW1fc3RhdHNfdGFibGU6 IAogICAgIFNFTEVDVAotICAgIHZ0LnJlbG5hbWUsIHZ0LnR1cGxlc19kZWxldGVkLCB2dC5y ZWNlbnRseV9kZWFkX3R1cGxlcworICAgIHZ0LnJlbG5hbWUsIHZ0LnR1cGxlc19kZWxldGVk LCB2dC5yZWNlbnRseV9kZWFkX3R1cGxlcywKKyAgICB2dC5taXNzZWRfZGVhZF90dXBsZXMs IHZ0Lm1pc3NlZF9kZWFkX3BhZ2VzCiAgICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMg dnQsIHBnX2NsYXNzIGMKICAgICBXSEVSRSB2dC5yZWxuYW1lID0gJ3Rlc3RfdmFjdXVtX3N0 YXRfaXNvbGF0aW9uJyBBTkQgdnQucmVsaWQgPSBjLm9pZDsKIAotcmVsbmFtZSAgICAgICAg ICAgICAgICAgICB8dHVwbGVzX2RlbGV0ZWR8cmVjZW50bHlfZGVhZF90dXBsZXMKLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tCi10ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlvbnwgICAgICAgICAgICAgMHwgICAgICAg ICAgICAgICAgICAxMAorcmVsbmFtZSAgICAgICAgICAgICAgICAgICB8dHVwbGVzX2RlbGV0 ZWR8cmVjZW50bHlfZGVhZF90dXBsZXN8bWlzc2VkX2RlYWRfdHVwbGVzfG1pc3NlZF9kZWFk X3BhZ2VzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0K K3Rlc3RfdmFjdXVtX3N0YXRfaXNvbGF0aW9ufCAgICAgICAgICAgICAwfCAgICAgICAgICAg ICAgICAgIDEwfCAgICAgICAgICAgICAgICAgMHwgICAgICAgICAgICAgICAgMAogKDEgcm93 KQogCiBzdGVwIHMxX2NvbW1pdDogQ09NTUlUOworc3RlcCBwaW5ob2xkZXJfY3Vyc29yOiAK KyAgQkVHSU47CisgIERFQ0xBUkUgYyBDVVJTT1IgRk9SIFNFTEVDVCAxIEFTIGR1bW15IEZS T00gdGVzdF92YWN1dW1fc3RhdF9pc29sYXRpb247CisgIEZFVENIIE5FWFQgRlJPTSBjOwor CitkdW1teQorLS0tLS0KKyAgICAxCisoMSByb3cpCisKK3N0ZXAgczJfdmFjdXVtOiBWQUNV VU0gdGVzdF92YWN1dW1fc3RhdF9pc29sYXRpb247CitzdGVwIHMyX3ByaW50X3ZhY3V1bV9z dGF0c190YWJsZTogCisgICAgU0VMRUNUCisgICAgdnQucmVsbmFtZSwgdnQudHVwbGVzX2Rl bGV0ZWQsIHZ0LnJlY2VudGx5X2RlYWRfdHVwbGVzLAorICAgIHZ0Lm1pc3NlZF9kZWFkX3R1 cGxlcywgdnQubWlzc2VkX2RlYWRfcGFnZXMKKyAgICBGUk9NIHBnX3N0YXRfdmFjdXVtX3Rh YmxlcyB2dCwgcGdfY2xhc3MgYworICAgIFdIRVJFIHZ0LnJlbG5hbWUgPSAndGVzdF92YWN1 dW1fc3RhdF9pc29sYXRpb24nIEFORCB2dC5yZWxpZCA9IGMub2lkOworCityZWxuYW1lICAg ICAgICAgICAgICAgICAgIHx0dXBsZXNfZGVsZXRlZHxyZWNlbnRseV9kZWFkX3R1cGxlc3xt aXNzZWRfZGVhZF90dXBsZXN8bWlzc2VkX2RlYWRfcGFnZXMKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLQordGVzdF92YWN1dW1fc3RhdF9pc29sYXRp b258ICAgICAgICAgICAgIDB8ICAgICAgICAgICAgICAgICAgMTB8ICAgICAgICAgICAgICAg IDEwfCAgICAgICAgICAgICAgICAxCisoMSByb3cpCisKK3N0ZXAgcGluaG9sZGVyX2NvbW1p dDogQ09NTUlUOwogc3RlcCBzMl92YWN1dW06IFZBQ1VVTSB0ZXN0X3ZhY3V1bV9zdGF0X2lz b2xhdGlvbjsKIHN0ZXAgczJfcHJpbnRfdmFjdXVtX3N0YXRzX3RhYmxlOiAKICAgICBTRUxF Q1QKLSAgICB2dC5yZWxuYW1lLCB2dC50dXBsZXNfZGVsZXRlZCwgdnQucmVjZW50bHlfZGVh ZF90dXBsZXMKKyAgICB2dC5yZWxuYW1lLCB2dC50dXBsZXNfZGVsZXRlZCwgdnQucmVjZW50 bHlfZGVhZF90dXBsZXMsCisgICAgdnQubWlzc2VkX2RlYWRfdHVwbGVzLCB2dC5taXNzZWRf ZGVhZF9wYWdlcwogICAgIEZST00gcGdfc3RhdF92YWN1dW1fdGFibGVzIHZ0LCBwZ19jbGFz cyBjCiAgICAgV0hFUkUgdnQucmVsbmFtZSA9ICd0ZXN0X3ZhY3V1bV9zdGF0X2lzb2xhdGlv bicgQU5EIHZ0LnJlbGlkID0gYy5vaWQ7CiAKLXJlbG5hbWUgICAgICAgICAgICAgICAgICAg fHR1cGxlc19kZWxldGVkfHJlY2VudGx5X2RlYWRfdHVwbGVzCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLQotdGVzdF92 YWN1dW1fc3RhdF9pc29sYXRpb258ICAgICAgICAgICAgMTB8ICAgICAgICAgICAgICAgICAg MTAKK3JlbG5hbWUgICAgICAgICAgICAgICAgICAgfHR1cGxlc19kZWxldGVkfHJlY2VudGx5 X2RlYWRfdHVwbGVzfG1pc3NlZF9kZWFkX3R1cGxlc3xtaXNzZWRfZGVhZF9wYWdlcworLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tCit0ZXN0X3ZhY3V1 bV9zdGF0X2lzb2xhdGlvbnwgICAgICAgICAgICAxMHwgICAgICAgICAgICAgICAgICAxMHwg ICAgICAgICAgICAgICAgMTB8ICAgICAgICAgICAgICAgIDEKICgxIHJvdykKIApkaWZmIC0t Z2l0IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL3NwZWNzL3ZhY3V1bS1leHRlbmRpbmctaW4tcmVw ZXRhYmxlLXJlYWQuc3BlYyBiL3NyYy90ZXN0L2lzb2xhdGlvbi9zcGVjcy92YWN1dW0tZXh0 ZW5kaW5nLWluLXJlcGV0YWJsZS1yZWFkLnNwZWMKaW5kZXggNTBiNzk3MTVmMy4uMzM0ODQ2 MTkzZCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvaXNvbGF0aW9uL3NwZWNzL3ZhY3V1bS1leHRl bmRpbmctaW4tcmVwZXRhYmxlLXJlYWQuc3BlYworKysgYi9zcmMvdGVzdC9pc29sYXRpb24v c3BlY3MvdmFjdXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZC5zcGVjCkBAIC0xLDkg KzEsMTEgQEAKLSMgVGVzdCBmb3IgcmVjZW50bHlfZGVhZF90dXBsZXMgaW4gcGdfc3RhdF92 YWN1dW1fdGFibGVzLgorIyBUZXN0IGZvciByZWNlbnRseV9kZWFkX3R1cGxlcyBhbmQgbWlz c2VkX2RlYWRfdHVwbGVzL21pc3NlZF9kZWFkX3BhZ2VzIGluCisjIHBnX3N0YXRfdmFjdXVt X3RhYmxlcy4KICMKICMgQSB0dXBsZSBkZWxldGVkIHdoaWxlIGFuIG9sZGVyIHNuYXBzaG90 IGNhbiBzdGlsbCBzZWUgaXQgaXMgY291bnRlZCBhcwotIyByZWNlbnRseV9kZWFkX3R1cGxl cywgYmVjYXVzZSBWQUNVVU0gaXMgbm90IGFsbG93ZWQgdG8gcmVtb3ZlIGl0IHlldDsgb25j ZQotIyB0aGUgb2xkZXIgc25hcHNob3QgaXMgZ29uZSwgdGhlIG5leHQgVkFDVVVNIHJlbW92 ZXMgaXQgYW5kIGNvdW50cyBpdCBpbgotIyB0dXBsZXNfZGVsZXRlZCBpbnN0ZWFkLgorIyBy ZWNlbnRseV9kZWFkX3R1cGxlcywgYmVjYXVzZSBWQUNVVU0gaXMgbm90IGFsbG93ZWQgdG8g cmVtb3ZlIGl0IHlldC4gIE9uY2UKKyMgdGhlIHR1cGxlIGJlY29tZXMgcmVtb3ZhYmxlIGJ1 dCBWQUNVVU0gY2Fubm90IGFjcXVpcmUgYSBjbGVhbnVwIGxvY2sgb24gaXRzCisjIGhlYXAg cGFnZSAoYmVjYXVzZSBhbm90aGVyIHNlc3Npb24gcGlucyB0aGUgcGFnZSksIGl0IGlzIGNv dW50ZWQgaW5zdGVhZCBhcworIyBtaXNzZWRfZGVhZF90dXBsZXMsIGFuZCBpdHMgaGVhcCBw YWdlIGFzIG1pc3NlZF9kZWFkX3BhZ2VzLgogCiBzZXR1cAogewpAQCAtMzAsNiArMzIsMTcg QEAgc3RlcCBzMV9iZWdpbl9yZXBlYXRhYmxlX3JlYWQKIH0KIHN0ZXAgczFfY29tbWl0CQkJ eyBDT01NSVQ7IH0KIAorIyBIb2xkcyBhIHBpbiBvbiB0aGUgdGFibGUncyBzaW5nbGUgaGVh cCBwYWdlLCBzbyBWQUNVVU0gY2Fubm90IGdldCBhCisjIGNsZWFudXAgbG9jayBvbiBpdDoK K3Nlc3Npb24gcGluaG9sZGVyCitzdGVwIHBpbmhvbGRlcl9jdXJzb3IKK3sKKyAgQkVHSU47 CisgIERFQ0xBUkUgYyBDVVJTT1IgRk9SIFNFTEVDVCAxIEFTIGR1bW15IEZST00gdGVzdF92 YWN1dW1fc3RhdF9pc29sYXRpb247CisgIEZFVENIIE5FWFQgRlJPTSBjOworfQorc3RlcCBw aW5ob2xkZXJfY29tbWl0CXsgQ09NTUlUOyB9CisKICMgUGVyZm9ybXMgdGhlIERNTCwgdGhl IHZhY3V1bXMgYW5kIHByaW50cyB0aGUgY29sbGVjdGVkIHN0YXRpc3RpY3M6CiBzZXNzaW9u IHMyCiBzZXR1cAkJeyBTRVQgdHJhY2tfdmFjdXVtX3N0YXRpc3RpY3MgVE8gJ29uJzsgfQpA QCAtMzgsNyArNTEsOCBAQCBzdGVwIHMyX3ZhY3V1bQkJCXsgVkFDVVVNIHRlc3RfdmFjdXVt X3N0YXRfaXNvbGF0aW9uOyB9CiBzdGVwIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJsZQog ewogICAgIFNFTEVDVAotICAgIHZ0LnJlbG5hbWUsIHZ0LnR1cGxlc19kZWxldGVkLCB2dC5y ZWNlbnRseV9kZWFkX3R1cGxlcworICAgIHZ0LnJlbG5hbWUsIHZ0LnR1cGxlc19kZWxldGVk LCB2dC5yZWNlbnRseV9kZWFkX3R1cGxlcywKKyAgICB2dC5taXNzZWRfZGVhZF90dXBsZXMs IHZ0Lm1pc3NlZF9kZWFkX3BhZ2VzCiAgICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMg dnQsIHBnX2NsYXNzIGMKICAgICBXSEVSRSB2dC5yZWxuYW1lID0gJ3Rlc3RfdmFjdXVtX3N0 YXRfaXNvbGF0aW9uJyBBTkQgdnQucmVsaWQgPSBjLm9pZDsKIH0KQEAgLTQ5LDUgKzYzLDkg QEAgcGVybXV0YXRpb24KICAgICBzMl92YWN1dW0KICAgICBzMl9wcmludF92YWN1dW1fc3Rh dHNfdGFibGUKICAgICBzMV9jb21taXQKKyAgICBwaW5ob2xkZXJfY3Vyc29yCisgICAgczJf dmFjdXVtCisgICAgczJfcHJpbnRfdmFjdXVtX3N0YXRzX3RhYmxlCisgICAgcGluaG9sZGVy X2NvbW1pdAogICAgIHMyX3ZhY3V1bQogICAgIHMyX3ByaW50X3ZhY3V1bV9zdGF0c190YWJs ZQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgYi9z cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dAppbmRleCA0MGM2YWNhOTZlLi5h MmIwNDcyYTJkIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVz Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dApAQCAtMjQ0 MSwxMCArMjQ0MSwxMiBAQCBwZ19zdGF0X3ZhY3V1bV90YWJsZXN8IFNFTEVDVCBuLm5zcG5h bWUgQVMgc2NoZW1hbmFtZSwKICAgICBzLnBhZ2VzX3JlbW92ZWQsCiAgICAgcy50dXBsZXNf ZGVsZXRlZCwKICAgICBzLnR1cGxlc19mcm96ZW4sCi0gICAgcy5yZWNlbnRseV9kZWFkX3R1 cGxlcworICAgIHMucmVjZW50bHlfZGVhZF90dXBsZXMsCisgICAgcy5taXNzZWRfZGVhZF9w YWdlcywKKyAgICBzLm1pc3NlZF9kZWFkX3R1cGxlcwogICAgRlJPTSAocGdfY2xhc3MgYwog ICAgICBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBjLnJlbG5hbWVzcGFjZSkp KSwKLSAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoYy5vaWQpIHMocmVs aWQsIHBhZ2VzX3NjYW5uZWQsIHBhZ2VzX3JlbW92ZWQsIHR1cGxlc19kZWxldGVkLCB0dXBs ZXNfZnJvemVuLCByZWNlbnRseV9kZWFkX3R1cGxlcykKKyAgICBMQVRFUkFMIHBnX3N0YXRf Z2V0X3ZhY3V1bV90YWJsZXMoYy5vaWQpIHMocmVsaWQsIHBhZ2VzX3NjYW5uZWQsIHBhZ2Vz X3JlbW92ZWQsIHR1cGxlc19kZWxldGVkLCB0dXBsZXNfZnJvemVuLCByZWNlbnRseV9kZWFk X3R1cGxlcywgbWlzc2VkX2RlYWRfcGFnZXMsIG1pc3NlZF9kZWFkX3R1cGxlcykKICAgV0hF UkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0Jzo6ImNoYXIiLCAn bSc6OiJjaGFyIl0pKTsKIHBnX3N0YXRfd2FsfCBTRUxFQ1Qgd2FsX3JlY29yZHMsCiAgICAg d2FsX2ZwaSwKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVt X3N0YXRzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91 dAppbmRleCBjMzA3OWUzMzc5Li5mMzQyZjcxYzU3IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC92YWN1dW1fc3RhdHMub3V0CkBAIC01NCw2ICs1NCwxOCBAQCBTRUxFQ1Qg dHVwbGVzX2Zyb3plbiA+IDAgQVMgdHVwbGVzX2Zyb3plbgogKDEgcm93KQogCiBEUk9QIFRB QkxFIHZhY3N0YXRfZnJlZXplOworLS0gZGVhZCB0dXBsZXMvcGFnZXMgdGhhdCBjb3VsZCBu b3QgYmUgcmVtb3ZlZCBiZWNhdXNlIHRoZSBwYWdlIHdhcyBwaW5uZWQgYnkKKy0tIGFub3Ro ZXIgYmFja2VuZCAoY2xlYW51cCBsb2NrIG5vdCBhY3F1aXJlZCk7IG5vbmUgaGVyZSwgc2lu Y2UgdGhpcyBWQUNVVU0KKy0tIHJ1bnMgd2l0aG91dCBjb25jdXJyZW50IGFjdGl2aXR5LiAg VGhlIG5vbi16ZXJvIHBhdGggaXMgY292ZXJlZCBieSB0aGUKKy0tIHZhY3V1bS1leHRlbmRp bmctaW4tcmVwZXRhYmxlLXJlYWQgaXNvbGF0aW9uIHRlc3QuCitTRUxFQ1QgbWlzc2VkX2Rl YWRfcGFnZXMgPSAwIEFTIG1pc3NlZF9kZWFkX3BhZ2VzLAorICAgICAgIG1pc3NlZF9kZWFk X3R1cGxlcyA9IDAgQVMgbWlzc2VkX2RlYWRfdHVwbGVzCisgIEZST00gcGdfc3RhdF92YWN1 dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JzsKKyBtaXNzZWRfZGVhZF9w YWdlcyB8IG1pc3NlZF9kZWFkX3R1cGxlcyAKKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0KKyB0ICAgICAgICAgICAgICAgICB8IHQKKygxIHJvdykKKwogLS0g cGVyLWluZGV4IHZpZXc6IHRoZSBwcmltYXJ5IGtleSBpbmRleCBpcyBwcm9jZXNzZWQgYnkg dGhlIHNhbWUgVkFDVVVNLgogLS0gTm8gYnRyZWUgbGVhZiBlbXB0aWVzIG91dCAoaW50ZXJs ZWF2ZWQgZGVsZXRpb25zKSwgc28gcGFnZXNfZGVsZXRlZCA9IDAsCiAtLSB3aGlsZSBldmVy eSBpbmRleCBlbnRyeSBmb3IgYSByZW1vdmVkIGhlYXAgdHVwbGUgaXMgZGVsZXRlZC4KZGlm ZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwgYi9zcmMv dGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsCmluZGV4IDA0Njk2ZWQ4MjQuLmI2 ZjBmNTVhZjAgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0 cy5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbApAQCAt NDQsNiArNDQsMTQgQEAgU0VMRUNUIHR1cGxlc19mcm96ZW4gPiAwIEFTIHR1cGxlc19mcm96 ZW4KICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNz dGF0X2ZyZWV6ZSc7CiBEUk9QIFRBQkxFIHZhY3N0YXRfZnJlZXplOwogCistLSBkZWFkIHR1 cGxlcy9wYWdlcyB0aGF0IGNvdWxkIG5vdCBiZSByZW1vdmVkIGJlY2F1c2UgdGhlIHBhZ2Ug d2FzIHBpbm5lZCBieQorLS0gYW5vdGhlciBiYWNrZW5kIChjbGVhbnVwIGxvY2sgbm90IGFj cXVpcmVkKTsgbm9uZSBoZXJlLCBzaW5jZSB0aGlzIFZBQ1VVTQorLS0gcnVucyB3aXRob3V0 IGNvbmN1cnJlbnQgYWN0aXZpdHkuICBUaGUgbm9uLXplcm8gcGF0aCBpcyBjb3ZlcmVkIGJ5 IHRoZQorLS0gdmFjdXVtLWV4dGVuZGluZy1pbi1yZXBldGFibGUtcmVhZCBpc29sYXRpb24g dGVzdC4KK1NFTEVDVCBtaXNzZWRfZGVhZF9wYWdlcyA9IDAgQVMgbWlzc2VkX2RlYWRfcGFn ZXMsCisgICAgICAgbWlzc2VkX2RlYWRfdHVwbGVzID0gMCBBUyBtaXNzZWRfZGVhZF90dXBs ZXMKKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNz dGF0X3QnOworCiAtLSBwZXItaW5kZXggdmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4IGlz IHByb2Nlc3NlZCBieSB0aGUgc2FtZSBWQUNVVU0uCiAtLSBObyBidHJlZSBsZWFmIGVtcHRp ZXMgb3V0IChpbnRlcmxlYXZlZCBkZWxldGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0gMCwK IC0tIHdoaWxlIGV2ZXJ5IGluZGV4IGVudHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBsZSBp cyBkZWxldGVkLgotLSAKMi4zOS41IChBcHBsZSBHaXQtMTU0KQoK --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0004-Extended-vacuum-statistics-visibility-map-page-trans.patch" Content-Disposition: attachment; filename*0="0004-Extended-vacuum-statistics-visibility-map-page-trans.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA3YWNhZWEzNTQzZjAyNzZiY2U3M2FjNWZkOTIwODc0NDAzNWVhMmE1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo0ODoxNyArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggNC84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogdmlzaWJpbGl0 eS1tYXAgcGFnZQogdHJhbnNpdGlvbnMgZm9yIHRhYmxlcwoKRXhwb3NlIHRoZSBjb3VudGVy cyB0aGF0IHRyYWNrIGhvdyB0aGUgdmFjdXVtIHVwZGF0ZWQgdGhlIHZpc2liaWxpdHkgbWFw IG9mCnRoZSB0YWJsZSwgd2l0aCBkb2N1bWVudGF0aW9uIGFuZCByZWdyZXNzaW9uIGNvdmVy YWdlOgoKICB2bV9uZXdfZnJvemVuX3BhZ2VzICAgICAgICAgIHBhZ2VzIG5ld2x5IG1hcmtl ZCBhbGwtZnJvemVuIGluIHRoZSBWTQogIHZtX25ld192aXNpYmxlX3BhZ2VzICAgICAgICAg cGFnZXMgbmV3bHkgbWFya2VkIGFsbC12aXNpYmxlIGluIHRoZSBWTQogIHZtX25ld192aXNp YmxlX2Zyb3plbl9wYWdlcyAgcGFnZXMgbmV3bHkgbWFya2VkIGFsbC12aXNpYmxlIGFuZCBh bGwtZnJvemVuCi0tLQogZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sICAgICAgICAg ICAgIHwgMjQgKysrKysrKysrKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFj dXVtbGF6eS5jICAgICAgIHwgIDMgKysKIHNyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3Zp ZXdzLnNxbCAgICAgICB8ICA1ICsrKy0KIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bn c3RhdF92YWN1dW0uYyB8ICAzICsrCiBzcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVu Y3MuYyAgICAgICAgfCAgNSArKystCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0 ICAgICAgICAgICAgfCAgNiArKy0tCiBzcmMvaW5jbHVkZS9wZ3N0YXQuaCAgICAgICAgICAg ICAgICAgICAgICAgfCAgNyArKysrKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxl cy5vdXQgICAgICAgIHwgIDcgKysrLS0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFj dXVtX3N0YXRzLm91dCB8IDMzICsrKysrKysrKysrKysrKysrKysrKysKIHNyYy90ZXN0L3Jl Z3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwgICAgICB8IDI1ICsrKysrKysrKysrKysrKysK IDEwIGZpbGVzIGNoYW5nZWQsIDExMSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbCBiL2RvYy9zcmMv c2dtbC9zeXN0ZW0tdmlld3Muc2dtbAppbmRleCBiOTZjNjUzOTI5Li43MDRkOWU4NWViIDEw MDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKKysrIGIvZG9jL3Ny Yy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sCkBAIC01ODkyLDYgKzU4OTIsMzAgQEAgU0VMRUNU ICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRfeGFjdHMgcHB4CiAg ICAgICAgTnVtYmVyIG9mIGRlYWQgdHVwbGVzIHRoYXQgdGhlIHZhY3V1bSBjb3VsZCBub3Qg cmVtb3ZlIGJlY2F1c2UgaXQgZmFpbGVkIHRvIGFjcXVpcmUgYSBjbGVhbnVwIGxvY2sgb24g dGhlaXIgcGFnZS4KICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KKyAgICAg PHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSBy b2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnZtX25ld19m cm96ZW5fcGFnZXM8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8 L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2YgaGVhcCBwYWdlcyBuZXds eSBtYXJrZWQgYWxsLWZyb3plbiBpbiB0aGUgdmlzaWJpbGl0eSBtYXAgYnkgdGhlIHZhY3V1 bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAg ICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1 bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnZtX25ld192aXNpYmxlX3Bh Z2VzPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgor ICAgICAgPHBhcmE+CisgICAgICAgTnVtYmVyIG9mIGhlYXAgcGFnZXMgbmV3bHkgbWFya2Vk IGFsbC12aXNpYmxlIGluIHRoZSB2aXNpYmlsaXR5IG1hcCBieSB0aGUgdmFjdXVtLgorICAg ICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVu dHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZp bml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+dm1fbmV3X3Zpc2libGVfZnJvemVuX3Bh Z2VzPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgor ICAgICAgPHBhcmE+CisgICAgICAgTnVtYmVyIG9mIGhlYXAgcGFnZXMgbmV3bHkgbWFya2Vk IGJvdGggYWxsLXZpc2libGUgYW5kIGFsbC1mcm96ZW4gaW4gdGhlIHZpc2liaWxpdHkgbWFw IGJ5IHRoZSB2YWN1dW0uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CiAg ICAgPC90Ym9keT4KICAgIDwvdGdyb3VwPgogICA8L3RhYmxlPgpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jIGIvc3JjL2JhY2tlbmQvYWNjZXNz L2hlYXAvdmFjdXVtbGF6eS5jCmluZGV4IDdhYmM4M2RiZmQuLjkxYjZkOWE5ZDkgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYworKysgYi9zcmMv YmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMKQEAgLTYzMyw2ICs2MzMsOSBAQCBh Y2N1bXVsYXRlX2hlYXBfdmFjdXVtX3N0YXRpc3RpY3MoTFZSZWxTdGF0ZSAqdmFjcmVsLAog CWV4dFZhY1N0YXRzLT50YWJsZS5yZWNlbnRseV9kZWFkX3R1cGxlcyA9IHZhY3JlbC0+cmVj ZW50bHlfZGVhZF90dXBsZXM7CiAJZXh0VmFjU3RhdHMtPnRhYmxlLm1pc3NlZF9kZWFkX3Bh Z2VzID0gdmFjcmVsLT5taXNzZWRfZGVhZF9wYWdlczsKIAlleHRWYWNTdGF0cy0+dGFibGUu bWlzc2VkX2RlYWRfdHVwbGVzID0gdmFjcmVsLT5taXNzZWRfZGVhZF90dXBsZXM7CisJZXh0 VmFjU3RhdHMtPnRhYmxlLnZtX25ld19mcm96ZW5fcGFnZXMgPSB2YWNyZWwtPm5ld19hbGxf ZnJvemVuX3BhZ2VzOworCWV4dFZhY1N0YXRzLT50YWJsZS52bV9uZXdfdmlzaWJsZV9wYWdl cyA9IHZhY3JlbC0+bmV3X2FsbF92aXNpYmxlX3BhZ2VzOworCWV4dFZhY1N0YXRzLT50YWJs ZS52bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMgPSB2YWNyZWwtPm5ld19hbGxfdmlzaWJs ZV9hbGxfZnJvemVuX3BhZ2VzOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv Y2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1f dmlld3Muc3FsCmluZGV4IDZmNjk3YWIzOTAuLjIxZmE4NDFmNWEgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAorKysgYi9zcmMvYmFja2VuZC9j YXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKQEAgLTE1NzIsNyArMTU3MiwxMCBAQCBDUkVBVEUg VklFVyBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgQVMKICAgICAgICAgUy50dXBsZXNfZnJvemVu IEFTIHR1cGxlc19mcm96ZW4sCiAgICAgICAgIFMucmVjZW50bHlfZGVhZF90dXBsZXMgQVMg cmVjZW50bHlfZGVhZF90dXBsZXMsCiAgICAgICAgIFMubWlzc2VkX2RlYWRfcGFnZXMgQVMg bWlzc2VkX2RlYWRfcGFnZXMsCi0gICAgICAgIFMubWlzc2VkX2RlYWRfdHVwbGVzIEFTIG1p c3NlZF9kZWFkX3R1cGxlcworICAgICAgICBTLm1pc3NlZF9kZWFkX3R1cGxlcyBBUyBtaXNz ZWRfZGVhZF90dXBsZXMsCisgICAgICAgIFMudm1fbmV3X2Zyb3plbl9wYWdlcyBBUyB2bV9u ZXdfZnJvemVuX3BhZ2VzLAorICAgICAgICBTLnZtX25ld192aXNpYmxlX3BhZ2VzIEFTIHZt X25ld192aXNpYmxlX3BhZ2VzLAorICAgICAgICBTLnZtX25ld192aXNpYmxlX2Zyb3plbl9w YWdlcyBBUyB2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMKIAogICAgIEZST00gcGdfY2xh c3MgQyBKT0lOCiAgICAgICAgICAgICBwZ19uYW1lc3BhY2UgTiBPTiBOLm9pZCA9IEMucmVs bmFtZXNwYWNlLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdz dGF0X3ZhY3V1bS5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1 bS5jCmluZGV4IDhjYzUwNWVhODYuLjRmNmNiZmQ1NDAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYworKysgYi9zcmMvYmFja2VuZC91 dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMKQEAgLTU2LDYgKzU2LDkgQEAgcGdzdGF0 X2FjY3VtdWxhdGVfZXh0dmFjX3N0YXRzX3JlbGF0aW9ucyhQZ1N0YXRfVmFjdXVtUmVsYXRp b25Db3VudHMgKmRzdCwKIAkJQUNDVU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgcmVjZW50bHlf ZGVhZF90dXBsZXMpOwogCQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCBtaXNzZWRfZGVh ZF9wYWdlcyk7CiAJCUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIG1pc3NlZF9kZWFkX3R1 cGxlcyk7CisJCUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIHZtX25ld19mcm96ZW5fcGFn ZXMpOworCQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCB2bV9uZXdfdmlzaWJsZV9wYWdl cyk7CisJCUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIHZtX25ld192aXNpYmxlX2Zyb3pl bl9wYWdlcyk7CiAJfQogCWVsc2UgaWYgKGRzdC0+dHlwZSA9PSBQR1NUQVRfRVhUVkFDX0lO REVYKQogCXsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5j cy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKaW5kZXggNzQyZjQ5 NzRkNS4uM2FjZjBhNzM5MSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bn c3RhdGZ1bmNzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMK QEAgLTIzNzQsNyArMjM3NCw3IEBAIHBnX3N0YXRfaGF2ZV9zdGF0cyhQR19GVU5DVElPTl9B UkdTKQogRGF0dW0KIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoUEdfRlVOQ1RJT05fQVJH UykKIHsKLSNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19TVEFUU19DT0xTIDgK KyNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19TVEFUU19DT0xTIDExCiAKIAlP aWQJCQlyZWxpZCA9IFBHX0dFVEFSR19PSUQoMCk7CiAJUGdTdGF0X1ZhY3V1bVJlbGF0aW9u Q291bnRzICpleHR2YWN1dW07CkBAIC0yNDA3LDYgKzI0MDcsOSBAQCBwZ19zdGF0X2dldF92 YWN1dW1fdGFibGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKGV4dHZhY3V1bS0+dGFibGUucmVjZW50bHlfZGVhZF90dXBsZXMpOwogCXZhbHVl c1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPnRhYmxlLm1pc3NlZF9kZWFkX3Bh Z2VzKTsKIAl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS5t aXNzZWRfZGVhZF90dXBsZXMpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2 YWN1dW0tPnRhYmxlLnZtX25ld19mcm96ZW5fcGFnZXMpOworCXZhbHVlc1tpKytdID0gSW50 NjRHZXREYXR1bShleHR2YWN1dW0tPnRhYmxlLnZtX25ld192aXNpYmxlX3BhZ2VzKTsKKwl2 YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS52bV9uZXdfdmlz aWJsZV9mcm96ZW5fcGFnZXMpOwogCiAJQXNzZXJ0KGkgPT0gUEdfU1RBVF9HRVRfVkFDVVVN X1RBQkxFU19TVEFUU19DT0xTKTsKIApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKaW5kZXgg NmQ2ODM0MTNhNC4uN2Q4N2IwMzIzOSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBA IC0xMjY0Myw5ICsxMjY0Myw5IEBACiAgIHByb25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1 bV90YWJsZXMnLCBwcm9yb3dzID0+IDEwMDAsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcmV0 dHlwZSA9PiAncmVjb3JkJywgcHJvaXNzdHJpY3QgPT4gJ2YnLAogICBwcm9yZXRzZXQgPT4g J3QnLAogICBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvYWxsYXJndHlwZXMgPT4gJ3tv aWQsb2lkLGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDh9JywKLSAgcHJvYXJn bW9kZXMgPT4gJ3tpLG8sbyxvLG8sbyxvLG8sb30nLAotICBwcm9hcmduYW1lcyA9PiAne3Jl bG9pZCxyZWxpZCxwYWdlc19zY2FubmVkLHBhZ2VzX3JlbW92ZWQsdHVwbGVzX2RlbGV0ZWQs dHVwbGVzX2Zyb3plbixyZWNlbnRseV9kZWFkX3R1cGxlcyxtaXNzZWRfZGVhZF9wYWdlcyxt aXNzZWRfZGVhZF90dXBsZXN9JywKKyAgcHJvYWxsYXJndHlwZXMgPT4gJ3tvaWQsb2lkLGlu dDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDh9JywKKyAg cHJvYXJnbW9kZXMgPT4gJ3tpLG8sbyxvLG8sbyxvLG8sbyxvLG8sb30nLAorICBwcm9hcmdu YW1lcyA9PiAne3JlbG9pZCxyZWxpZCxwYWdlc19zY2FubmVkLHBhZ2VzX3JlbW92ZWQsdHVw bGVzX2RlbGV0ZWQsdHVwbGVzX2Zyb3plbixyZWNlbnRseV9kZWFkX3R1cGxlcyxtaXNzZWRf ZGVhZF9wYWdlcyxtaXNzZWRfZGVhZF90dXBsZXMsdm1fbmV3X2Zyb3plbl9wYWdlcyx2bV9u ZXdfdmlzaWJsZV9wYWdlcyx2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXN9JywKICAgcHJv c3JjID0+ICdwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzJyB9CiAKICMgb2lkOCByZWxhdGVk IGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvcGdzdGF0LmggYi9zcmMvaW5j bHVkZS9wZ3N0YXQuaAppbmRleCBiZGNmNzU4NDQxLi5mMmJkZWYxNDYzIDEwMDY0NAotLS0g YS9zcmMvaW5jbHVkZS9wZ3N0YXQuaAorKysgYi9zcmMvaW5jbHVkZS9wZ3N0YXQuaApAQCAt MjIyLDYgKzIyMiwxMyBAQCB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfVmFjdXVtUmVsYXRpb25D b3VudHMKIAkJCWludDY0CQltaXNzZWRfZGVhZF90dXBsZXM7IC8qIHR1cGxlcyBub3QgcHJ1 bmVkIGJ5IHZhY3V1bSBkdWUKIAkJCQkJCQkJCQkJICogdG8gZmFpbHVyZSB0byBnZXQgYSBj bGVhbnVwCiAJCQkJCQkJCQkJCSAqIGxvY2sgKi8KKwkJCWludDY0CQl2bV9uZXdfZnJvemVu X3BhZ2VzOwkvKiBwYWdlcyBtYXJrZWQgaW4gVk0gYXMKKwkJCQkJCQkJCQkJCSAqIGZyb3pl biAqLworCQkJaW50NjQJCXZtX25ld192aXNpYmxlX3BhZ2VzOwkvKiBwYWdlcyBtYXJrZWQg aW4gVk0gYXMKKwkJCQkJCQkJCQkJCSAqIGFsbC12aXNpYmxlICovCisJCQlpbnQ2NAkJdm1f bmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzOwkvKiBwYWdlcyBtYXJrZWQgaW4gVk0gYXMKKwkJ CQkJCQkJCQkJCQkJICogYWxsLXZpc2libGUgYW5kCisJCQkJCQkJCQkJCQkJCSAqIGZyb3pl biAqLwogCQl9CQkJdGFibGU7CiAJCXN0cnVjdAogCQl7CmRpZmYgLS1naXQgYS9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvcnVsZXMub3V0CmluZGV4IGEyYjA0NzJhMmQuLmMzMGZmNmM3MmYgMTAwNjQ0Ci0tLSBh L3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0CisrKyBiL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0CkBAIC0yNDQzLDEwICsyNDQzLDEzIEBAIHBnX3N0 YXRfdmFjdXVtX3RhYmxlc3wgU0VMRUNUIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAogICAg IHMudHVwbGVzX2Zyb3plbiwKICAgICBzLnJlY2VudGx5X2RlYWRfdHVwbGVzLAogICAgIHMu bWlzc2VkX2RlYWRfcGFnZXMsCi0gICAgcy5taXNzZWRfZGVhZF90dXBsZXMKKyAgICBzLm1p c3NlZF9kZWFkX3R1cGxlcywKKyAgICBzLnZtX25ld19mcm96ZW5fcGFnZXMsCisgICAgcy52 bV9uZXdfdmlzaWJsZV9wYWdlcywKKyAgICBzLnZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdl cwogICAgRlJPTSAocGdfY2xhc3MgYwogICAgICBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgo bi5vaWQgPSBjLnJlbG5hbWVzcGFjZSkpKSwKLSAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3Zh Y3V1bV90YWJsZXMoYy5vaWQpIHMocmVsaWQsIHBhZ2VzX3NjYW5uZWQsIHBhZ2VzX3JlbW92 ZWQsIHR1cGxlc19kZWxldGVkLCB0dXBsZXNfZnJvemVuLCByZWNlbnRseV9kZWFkX3R1cGxl cywgbWlzc2VkX2RlYWRfcGFnZXMsIG1pc3NlZF9kZWFkX3R1cGxlcykKKyAgICBMQVRFUkFM IHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoYy5vaWQpIHMocmVsaWQsIHBhZ2VzX3NjYW5u ZWQsIHBhZ2VzX3JlbW92ZWQsIHR1cGxlc19kZWxldGVkLCB0dXBsZXNfZnJvemVuLCByZWNl bnRseV9kZWFkX3R1cGxlcywgbWlzc2VkX2RlYWRfcGFnZXMsIG1pc3NlZF9kZWFkX3R1cGxl cywgdm1fbmV3X2Zyb3plbl9wYWdlcywgdm1fbmV3X3Zpc2libGVfcGFnZXMsIHZtX25ld192 aXNpYmxlX2Zyb3plbl9wYWdlcykKICAgV0hFUkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlb J3InOjoiY2hhciIsICd0Jzo6ImNoYXIiLCAnbSc6OiJjaGFyIl0pKTsKIHBnX3N0YXRfd2Fs fCBTRUxFQ1Qgd2FsX3JlY29yZHMsCiAgICAgd2FsX2ZwaSwKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dCBiL3NyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dAppbmRleCBmMzQyZjcxYzU3Li4wYjMzNTRj ZmZmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0 cy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC92YWN1dW1fc3RhdHMub3V0 CkBAIC02Niw2ICs2NiwzOSBAQCBTRUxFQ1QgbWlzc2VkX2RlYWRfcGFnZXMgPSAwIEFTIG1p c3NlZF9kZWFkX3BhZ2VzLAogIHQgICAgICAgICAgICAgICAgIHwgdAogKDEgcm93KQogCist LSB2aXNpYmlsaXR5LW1hcCBwYWdlIHRyYW5zaXRpb25zLiAgUmVtb3ZpbmcgdGhlIGludGVy bGVhdmVkIGRlYWQgdHVwbGVzIGxldHMKKy0tIFZBQ1VVTSBtYXJrIGV2ZXJ5IGhlYXAgcGFn ZSBhbGwtdmlzaWJsZSAodm1fbmV3X3Zpc2libGVfcGFnZXMgPiAwKS4gIFdoZXRoZXIKKy0t IFZBQ1VVTSBhbHNvIGZyZWV6ZXMgdGhvc2UgcGFnZXMgKHZtX25ld19mcm96ZW5fcGFnZXMg LworLS0gdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzKSBkZXBlbmRzIG9uIG9wcG9ydHVu aXN0aWMgZnJlZXppbmcsIHdoaWNoIGlzIG5vdAorLS0gZGV0ZXJtaW5pc3RpYyBoZXJlLCBz byB0aG9zZSBhcmUgb25seSBjaGVja2VkIGZvciBiZWluZyBub24tbmVnYXRpdmU7IHRoZQor LS0gcG9zaXRpdmUgZnJlZXplIHBhdGggaXMgY292ZXJlZCBieSB0aGUgZGVkaWNhdGVkIFZB Q1VVTSAoRlJFRVpFKSBzY2VuYXJpbworLS0gYmVsb3cuCitTRUxFQ1Qgdm1fbmV3X2Zyb3pl bl9wYWdlcyA+PSAwIEFTIHZtX25ld19mcm96ZW5fcGFnZXMsCisgICAgICAgdm1fbmV3X3Zp c2libGVfcGFnZXMgPiAwIEFTIHZtX25ld192aXNpYmxlX3BhZ2VzLAorICAgICAgIHZtX25l d192aXNpYmxlX2Zyb3plbl9wYWdlcyA+PSAwIEFTIHZtX25ld192aXNpYmxlX2Zyb3plbl9w YWdlcworICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3Zh Y3N0YXRfdCc7Cisgdm1fbmV3X2Zyb3plbl9wYWdlcyB8IHZtX25ld192aXNpYmxlX3BhZ2Vz IHwgdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyB0ICAgICAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgICAgICAgfCB0CisoMSBy b3cpCisKKy0tIGZyZWV6ZSBwYXRoOiBhIGRlZGljYXRlZCBWQUNVVU0gKEZSRUVaRSkgbWFy a3MgZnJlc2hseS1sb2FkZWQgaGVhcCBwYWdlcworLS0gYWxsLXZpc2libGUgYW5kIGFsbC1m cm96ZW4gaW4gb25lIHBhc3MsIHNvIHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcworLS0g YWR2YW5jZXMuICBUaGlzIHJlc3RvcmVzIHRoZSBjb3ZlcmFnZSBvZiB0aGUgZm9ybWVyCist LSAwNTNfdmFjdXVtX2V4dGVuZGluZ19mcmVlemUgVEFQIHRlc3QuCitDUkVBVEUgVEFCTEUg dmFjc3RhdF9mcnogKHggaW50KQorICBXSVRIIChhdXRvdmFjdXVtX2VuYWJsZWQgPSBvZmYs IGZpbGxmYWN0b3IgPSAxMCk7CitJTlNFUlQgSU5UTyB2YWNzdGF0X2ZyeiBTRUxFQ1QgZyBG Uk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDAwKSBnOworVkFDVVVNIChGUkVFWkUpIHZhY3N0 YXRfZnJ6OworU0VMRUNUIHZtX25ld192aXNpYmxlX3BhZ2VzID4gMCBBUyB2bV9uZXdfdmlz aWJsZV9wYWdlcywKKyAgICAgICB2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMgPiAwIEFT IHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcworICBGUk9NIHBnX3N0YXRfdmFjdXVtX3Rh YmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfZnJ6JzsKKyB2bV9uZXdfdmlzaWJsZV9w YWdlcyB8IHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcyAKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB0ICAgICAgICAgICAgICAg ICAgICB8IHQKKygxIHJvdykKKworRFJPUCBUQUJMRSB2YWNzdGF0X2ZyejsKIC0tIHBlci1p bmRleCB2aWV3OiB0aGUgcHJpbWFyeSBrZXkgaW5kZXggaXMgcHJvY2Vzc2VkIGJ5IHRoZSBz YW1lIFZBQ1VVTS4KIC0tIE5vIGJ0cmVlIGxlYWYgZW1wdGllcyBvdXQgKGludGVybGVhdmVk IGRlbGV0aW9ucyksIHNvIHBhZ2VzX2RlbGV0ZWQgPSAwLAogLS0gd2hpbGUgZXZlcnkgaW5k ZXggZW50cnkgZm9yIGEgcmVtb3ZlZCBoZWFwIHR1cGxlIGlzIGRlbGV0ZWQuCmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsIGIvc3JjL3Rlc3Qv cmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbAppbmRleCBiNmYwZjU1YWYwLi5kYjgwZWNm NmExIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3Fs CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwKQEAgLTUyLDYg KzUyLDMxIEBAIFNFTEVDVCBtaXNzZWRfZGVhZF9wYWdlcyA9IDAgQVMgbWlzc2VkX2RlYWRf cGFnZXMsCiAgICAgICAgbWlzc2VkX2RlYWRfdHVwbGVzID0gMCBBUyBtaXNzZWRfZGVhZF90 dXBsZXMKICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2 YWNzdGF0X3QnOwogCistLSB2aXNpYmlsaXR5LW1hcCBwYWdlIHRyYW5zaXRpb25zLiAgUmVt b3ZpbmcgdGhlIGludGVybGVhdmVkIGRlYWQgdHVwbGVzIGxldHMKKy0tIFZBQ1VVTSBtYXJr IGV2ZXJ5IGhlYXAgcGFnZSBhbGwtdmlzaWJsZSAodm1fbmV3X3Zpc2libGVfcGFnZXMgPiAw KS4gIFdoZXRoZXIKKy0tIFZBQ1VVTSBhbHNvIGZyZWV6ZXMgdGhvc2UgcGFnZXMgKHZtX25l d19mcm96ZW5fcGFnZXMgLworLS0gdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzKSBkZXBl bmRzIG9uIG9wcG9ydHVuaXN0aWMgZnJlZXppbmcsIHdoaWNoIGlzIG5vdAorLS0gZGV0ZXJt aW5pc3RpYyBoZXJlLCBzbyB0aG9zZSBhcmUgb25seSBjaGVja2VkIGZvciBiZWluZyBub24t bmVnYXRpdmU7IHRoZQorLS0gcG9zaXRpdmUgZnJlZXplIHBhdGggaXMgY292ZXJlZCBieSB0 aGUgZGVkaWNhdGVkIFZBQ1VVTSAoRlJFRVpFKSBzY2VuYXJpbworLS0gYmVsb3cuCitTRUxF Q1Qgdm1fbmV3X2Zyb3plbl9wYWdlcyA+PSAwIEFTIHZtX25ld19mcm96ZW5fcGFnZXMsCisg ICAgICAgdm1fbmV3X3Zpc2libGVfcGFnZXMgPiAwIEFTIHZtX25ld192aXNpYmxlX3BhZ2Vz LAorICAgICAgIHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcyA+PSAwIEFTIHZtX25ld192 aXNpYmxlX2Zyb3plbl9wYWdlcworICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVS RSByZWxuYW1lID0gJ3ZhY3N0YXRfdCc7CisKKy0tIGZyZWV6ZSBwYXRoOiBhIGRlZGljYXRl ZCBWQUNVVU0gKEZSRUVaRSkgbWFya3MgZnJlc2hseS1sb2FkZWQgaGVhcCBwYWdlcworLS0g YWxsLXZpc2libGUgYW5kIGFsbC1mcm96ZW4gaW4gb25lIHBhc3MsIHNvIHZtX25ld192aXNp YmxlX2Zyb3plbl9wYWdlcworLS0gYWR2YW5jZXMuICBUaGlzIHJlc3RvcmVzIHRoZSBjb3Zl cmFnZSBvZiB0aGUgZm9ybWVyCistLSAwNTNfdmFjdXVtX2V4dGVuZGluZ19mcmVlemUgVEFQ IHRlc3QuCitDUkVBVEUgVEFCTEUgdmFjc3RhdF9mcnogKHggaW50KQorICBXSVRIIChhdXRv dmFjdXVtX2VuYWJsZWQgPSBvZmYsIGZpbGxmYWN0b3IgPSAxMCk7CitJTlNFUlQgSU5UTyB2 YWNzdGF0X2ZyeiBTRUxFQ1QgZyBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDAwKSBnOwor VkFDVVVNIChGUkVFWkUpIHZhY3N0YXRfZnJ6OworU0VMRUNUIHZtX25ld192aXNpYmxlX3Bh Z2VzID4gMCBBUyB2bV9uZXdfdmlzaWJsZV9wYWdlcywKKyAgICAgICB2bV9uZXdfdmlzaWJs ZV9mcm96ZW5fcGFnZXMgPiAwIEFTIHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcworICBG Uk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfZnJ6 JzsKK0RST1AgVEFCTEUgdmFjc3RhdF9mcno7CisKIC0tIHBlci1pbmRleCB2aWV3OiB0aGUg cHJpbWFyeSBrZXkgaW5kZXggaXMgcHJvY2Vzc2VkIGJ5IHRoZSBzYW1lIFZBQ1VVTS4KIC0t IE5vIGJ0cmVlIGxlYWYgZW1wdGllcyBvdXQgKGludGVybGVhdmVkIGRlbGV0aW9ucyksIHNv IHBhZ2VzX2RlbGV0ZWQgPSAwLAogLS0gd2hpbGUgZXZlcnkgaW5kZXggZW50cnkgZm9yIGEg cmVtb3ZlZCBoZWFwIHR1cGxlIGlzIGRlbGV0ZWQuCi0tIAoyLjM5LjUgKEFwcGxlIEdpdC0x NTQpCgo= --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0005-Extended-vacuum-statistics-buffer-WAL-timing-machine.patch" Content-Disposition: attachment; filename*0="0005-Extended-vacuum-statistics-buffer-WAL-timing-machine.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAyMWViZjA0ZWZlMmYxOTc5NDE2MWQ0NjAzMDJkM2M4NDkxZGQ2NzMyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo1MToyNSArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggNS84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogYnVmZmVyL1dB TC90aW1pbmcgbWFjaGluZXJ5CiBhbmQgdG90YWwgYnVmZmVyIGNvdW50ZXJzCk1JTUUtVmVy c2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOApDb250 ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpJbnRyb2R1Y2UgdGhlIHJlc291cmNlLXVz YWdlIHNhbXBsaW5nIG1hY2hpbmVyeSBmb3IgZXh0ZW5kZWQgdmFjdXVtCnN0YXRpc3RpY3Ms IHRoZSBkYXRhYmFzZS13aWRlIGFnZ3JlZ2F0ZSwgYW5kIHRoZSBmaXJzdCBjb3VudGVycyB0 aGF0IGRlcGVuZApvbiB0aGUgc2FtcGxpbmcuCgpUaGlzIGNvbW1pdCBpbnRyb2R1Y2VzIHRo ZSByZXNvdXJjZS11c2FnZSBzYW1wbGluZyB0aGF0IHRoZSBidWZmZXIsIFdBTCBhbmQKdGlt aW5nIG1ldHJpY3MgcmVseSBvbi4gIEFyb3VuZCB0aGUgcHJvY2Vzc2luZyBvZiBlYWNoIHJl bGF0aW9uLCB2YWN1dW0Kc25hcHNob3RzIFdBTCwgYnVmZmVyIGFuZCB0aW1pbmcgdXNhZ2Ug YW5kIHJlY29yZHMgdGhlIGRpZmZlcmVuY2UsIHNvIGV2ZXJ5CnNhbXBsZWQgbWV0cmljIHJl ZmxlY3RzIG9ubHkgdGhhdCB2YWN1dW0ncyB3b3JrLiAgSW5kZXggcHJvY2Vzc2luZyBpcyBz YW1wbGVkCm9uIGl0cyBvd24g4oCUIGluY2x1ZGluZyBpbiBwYXJhbGxlbCB3b3JrZXJzIOKA lCBhbmQgaXRzIHVzYWdlIGlzIGtlcHQgb3V0IG9mIHRoZQpwYXJlbnQgdGFibGUncyBmaWd1 cmVzLCBzbyBoZWFwIGFuZCBpbmRleCB3b3JrIGFyZSBhY2NvdW50ZWQgc2VwYXJhdGVseS4K ClRoZSBQR1NUQVRfS0lORF9WQUNVVU1fREIgc3RhdHMga2luZCBpcyBhZGRlZCBoZXJlIGFz IHdlbGw6IGl0IGFnZ3JlZ2F0ZXMgdGhlCmNvbW1vbiAoYnVmZmVyL1dBTC90aW1pbmcpIGNv dW50ZXJzIG9mIGV2ZXJ5IHJlbGF0aW9uIHZhY3V1bWVkIGluIHRoZQpkYXRhYmFzZS4gIHBn c3RhdF9hY2N1bXVsYXRlX2NvbW1vbigpIC0tIHdoaWNoIHN1bXMgdGhvc2UgY291bnRlcnMg LS0gaXMKaW50cm9kdWNlZCB0b2dldGhlciB3aXRoIGl0LCBzaW5jZSBpdCBpcyBvbmx5IG1l YW5pbmdmdWwgb25jZSB0aGUgc2FtcGxpbmcKZXhpc3RzLgoKVGhpcyBjb21taXQgYWxzbyBj cmVhdGVzIHRoZSB0d28gcmVtYWluaW5nIHZpZXdzLCBwZ19zdGF0X3ZhY3V1bV9pbmRleGVz IGFuZApwZ19zdGF0X3ZhY3V1bV9kYXRhYmFzZSwgYWxvbmdzaWRlIHBnX3N0YXRfdmFjdXVt X3RhYmxlcy4gIFRoZXkgYXJlIGludHJvZHVjZWQKaGVyZSBiZWNhdXNlIHRoZXkgZXhwb3Nl IHRoZSBjb21tb24gKGJ1ZmZlci9XQUwvdGltaW5nKSBjb3VudGVycyBwcm9kdWNlZCBieQp0 aGUgc2FtcGxpbmcgbWFjaGluZXJ5OyBsaWtlIHRoZSB0YWJsZSB2aWV3LCB0aGV5IHRoZW4g Z3JvdyBjb2x1bW4gYnkgY29sdW1uCmluIHRoZSBmb2xsb3dpbmcgY29tbWl0cyBhcyBlYWNo IG1ldHJpYyBjYXRlZ29yeSBpcyBhZGRlZC4gIFRoZSBwZXItaW5kZXggdmlldwphbHNvIGV4 cG9zZXMgdGhlIGluZGV4LXNwZWNpZmljIHBhZ2VzX2RlbGV0ZWQgYW5kIHR1cGxlc19kZWxl dGVkIGNvdW50ZXJzIGZyb20KdGhlIHN0YXJ0LgoKVGhpcyBjb21taXQgZXhwb3NlcyB0aGUg c2hhcmVkLWJ1ZmZlciBhY2Nlc3MgY291bnRlcnMgaW4gYWxsIHRocmVlIHZpZXdzLAp3aXRo IGRvY3VtZW50YXRpb24gYW5kIHJlZ3Jlc3Npb24gY292ZXJhZ2U6CgogIHRvdGFsX2Jsa3Nf cmVhZCAgICAgc2hhcmVkIGJ1ZmZlciBibG9ja3MgbWlzc2VkIChyZWFkIGZyb20gZGlzaykK ICB0b3RhbF9ibGtzX2hpdCAgICAgIHNoYXJlZCBidWZmZXIgYmxvY2tzIGZvdW5kIGluIHRo ZSBidWZmZXIgY2FjaGUgKGhpdHMpCiAgdG90YWxfYmxrc19kaXJ0aWVkICBzaGFyZWQgYnVm ZmVyIGJsb2NrcyBkaXJ0aWVkIGJ5IHRoaXMgdmFjdXVtCiAgdG90YWxfYmxrc193cml0dGVu ICBzaGFyZWQgYnVmZmVyIGJsb2NrcyB3cml0dGVuIG91dAoKVGhlc2UgY291bnRlcnMgYXJl IGNvbW1vbiB0byB0YWJsZXMsIGluZGV4ZXMgYW5kIHRoZSBkYXRhYmFzZSBhZ2dyZWdhdGUK KHdoZXJlIHRoZSBmaXJzdCB0d28gYXJlIG5hbWVkIGRiX2Jsa3NfcmVhZC9kYl9ibGtzX2hp dCk7IHRvdGFsX2Jsa3NfZGlydGllZApjb3VudHMgb25seSB0aGUgcGFnZXMgZGlydGllZCBi eSB0aGlzIHZhY3V1bS4KLS0tCiBkb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwgICAg ICAgICAgICAgICB8IDI0NSArKysrKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAv dmFjdXVtbGF6eS5jICAgICAgICAgfCA0MjYgKysrKysrKysrKysrKysrLS0tLQogc3JjL2Jh Y2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsICAgICAgICAgfCAgMjggKy0KIHNyYy9i YWNrZW5kL2NvbW1hbmRzL2RiY29tbWFuZHMuYyAgICAgICAgICAgIHwgICAxICsKIHNyYy9i YWNrZW5kL2NvbW1hbmRzL3ZhY3V1bS5jICAgICAgICAgICAgICAgIHwgICA0ICsKIHNyYy9i YWNrZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMgICAgICAgIHwgICAxICsKIHNyYy9i YWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdC5jICAgICAgICAgIHwgIDE1ICsKIHNyYy9i YWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9kYXRhYmFzZS5jIHwgICA5ICsKIHNyYy9i YWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYyAgIHwgMTA2ICsrKystCiBz cmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYyAgICAgICAgICB8ICA1MyArKy0K IHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAgICAgICAgIHwgIDIxICst CiBzcmMvaW5jbHVkZS9jb21tYW5kcy92YWN1dW0uaCAgICAgICAgICAgICAgICB8ICAyOSAr Kwogc3JjL2luY2x1ZGUvcGdzdGF0LmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTYg Kwogc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2ludGVybmFsLmggICAgICAgICAgfCAgIDcg Kwogc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0X2tpbmQuaCAgICAgICAgICAgICAgfCAgIDMg Ky0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0ICAgICAgICAgIHwgIDI1 ICstCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQgICB8ICA0 NSArLQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbCAgICAgICAgfCAg MzEgKy0KIDE4IGZpbGVzIGNoYW5nZWQsIDk0NSBpbnNlcnRpb25zKCspLCAxMjAgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sIGIv ZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sCmluZGV4IDcwNGQ5ZTg1ZWIuLjA4OGI1 MzJlNWMgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbAorKysg Yi9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKQEAgLTU5MTYsNiArNTkxNiwyNTEg QEAgU0VMRUNUICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRfeGFj dHMgcHB4CiAgICAgICAgTnVtYmVyIG9mIGhlYXAgcGFnZXMgbmV3bHkgbWFya2VkIGJvdGgg YWxsLXZpc2libGUgYW5kIGFsbC1mcm96ZW4gaW4gdGhlIHZpc2liaWxpdHkgbWFwIGJ5IHRo ZSB2YWN1dW0uCiAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgPC9yb3c+CisgICAgIDxy b3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9s ZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD50b3RhbF9ibGtz X3JlYWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+ CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2Ygc2hhcmVkIGJ1ZmZlciBibG9ja3Mg bWlzc2VkIChyZWFkIGZyb20gZGlzaykgYnkgdGhlIHZhY3V1bS4KKyAgICAgIDwvcGFyYT48 L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJj YXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+Cisg ICAgICAgPHN0cnVjdGZpZWxkPnRvdGFsX2Jsa3NfaGl0PC9zdHJ1Y3RmaWVsZD4gPHR5cGU+ YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTnVt YmVyIG9mIHNoYXJlZCBidWZmZXIgYmxvY2tzIGZvdW5kIGluIHRoZSBidWZmZXIgY2FjaGUg KGhpdHMpIGJ5IHRoZSB2YWN1dW0uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9y b3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRy eSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVs ZD50b3RhbF9ibGtzX2RpcnRpZWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+ CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2Ygc2hhcmVk IGJ1ZmZlciBibG9ja3MgZGlydGllZCBieSB0aGUgdmFjdXVtLgorICAgICAgPC9wYXJhPjwv ZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNh dGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAg ICAgICA8c3RydWN0ZmllbGQ+dG90YWxfYmxrc193cml0dGVuPC9zdHJ1Y3RmaWVsZD4gPHR5 cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAg TnVtYmVyIG9mIHNoYXJlZCBidWZmZXIgYmxvY2tzIHdyaXR0ZW4gb3V0IGJ5IHRoZSB2YWN1 dW0uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgPC90Ym9keT4K KyAgIDwvdGdyb3VwPgorICA8L3RhYmxlPgorIDwvc2VjdDE+CisKKyA8c2VjdDEgaWQ9InZp ZXctcGctc3RhdC12YWN1dW0taW5kZXhlcyI+CisgIDx0aXRsZT48c3RydWN0bmFtZT5wZ19z dGF0X3ZhY3V1bV9pbmRleGVzPC9zdHJ1Y3RuYW1lPjwvdGl0bGU+CisKKyAgPGluZGV4dGVy bSB6b25lPSJ2aWV3LXBnLXN0YXQtdmFjdXVtLWluZGV4ZXMiPgorICAgPHByaW1hcnk+cGdf c3RhdF92YWN1dW1faW5kZXhlczwvcHJpbWFyeT4KKyAgPC9pbmRleHRlcm0+CisKKyAgPHBh cmE+CisgICBUaGUgPHN0cnVjdG5hbWU+cGdfc3RhdF92YWN1dW1faW5kZXhlczwvc3RydWN0 bmFtZT4gdmlldyB3aWxsIGNvbnRhaW4gb25lIHJvdworICAgZm9yIGVhY2ggaW5kZXggaW4g dGhlIGN1cnJlbnQgZGF0YWJhc2UsIHNob3dpbmcgZXh0ZW5kZWQgc3RhdGlzdGljcyBhYm91 dAorICAgdGhlIGFjdGl2aXR5IG9mIHRoZSBtb3N0IHJlY2VudCA8Y29tbWFuZD5WQUNVVU08 L2NvbW1hbmQ+IG9uIHRoYXQgaW5kZXguCisgICBUaGVzZSBzdGF0aXN0aWNzIGFyZSBhY2N1 bXVsYXRlZCBvbmx5IHdoaWxlCisgICA8dmFybmFtZT50cmFja192YWN1dW1fc3RhdGlzdGlj czwvdmFybmFtZT4gaXMgZW5hYmxlZC4KKyAgPC9wYXJhPgorCisgIDx0YWJsZSBpZD0idmll dy1wZy1zdGF0LXZhY3V1bS1pbmRleGVzLWNvbHMiPgorICAgPHRpdGxlPjxzdHJ1Y3RuYW1l PnBnX3N0YXRfdmFjdXVtX2luZGV4ZXM8L3N0cnVjdG5hbWU+IENvbHVtbnM8L3RpdGxlPgor ICAgPHRncm91cCBjb2xzPSIxIj4KKyAgICA8dGhlYWQ+CisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIENvbHVtbiBUeXBlCisgICAgICA8L3BhcmE+CisgICAgICA8 cGFyYT4KKyAgICAgICBEZXNjcmlwdGlvbgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAg IDwvcm93PgorICAgIDwvdGhlYWQ+CisKKyAgICA8dGJvZHk+CisgICAgIDxyb3c+CisgICAg ICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1u X2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5yZWxpZDwvc3RydWN0ZmllbGQ+ IDx0eXBlPm9pZDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAg IE9JRCBvZiB0aGUgdGFibGUgdGhlIGluZGV4IGlzIG9uLgorICAgICAgPC9wYXJhPjwvZW50 cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFs b2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAg ICA8c3RydWN0ZmllbGQ+aW5kZXhyZWxpZDwvc3RydWN0ZmllbGQ+IDx0eXBlPm9pZDwvdHlw ZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE9JRCBvZiB0aGUgaW5k ZXguCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+Cisg ICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29s dW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5zY2hlbWFuYW1lPC9zdHJ1 Y3RmaWVsZD4gPHR5cGU+bmFtZTwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJh PgorICAgICAgIE5hbWUgb2YgdGhlIHNjaGVtYSB0aGF0IHRoZSB0YWJsZSBpcyBpbi4KKyAg ICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxl bnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVm aW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnJlbG5hbWU8L3N0cnVjdGZpZWxkPiA8 dHlwZT5uYW1lPC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAg TmFtZSBvZiB0aGUgdGFibGUuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+ CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+ PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5p bmRleHJlbG5hbWU8L3N0cnVjdGZpZWxkPiA8dHlwZT5uYW1lPC90eXBlPgorICAgICAgPC9w YXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTmFtZSBvZiB0aGUgaW5kZXguCisgICAgICA8 L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkg cm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRp b24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5wYWdlc19kZWxldGVkPC9zdHJ1Y3RmaWVsZD4g PHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAg ICAgTnVtYmVyIG9mIGluZGV4IHBhZ2VzIGRlbGV0ZWQgKG1hZGUgcmV1c2FibGUpIGJ5IHRo ZSB2YWN1dW0uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxy b3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9s ZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD50dXBsZXNfZGVs ZXRlZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4K KyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBpbmRleCBlbnRyaWVzIHJlbW92ZWQg YnkgdGhlIHZhY3V1bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAg ICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnRvdGFs X2Jsa3NfcmVhZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwv cGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBzaGFyZWQgYnVmZmVyIGJs b2NrcyByZWFkIHdoaWxlIHZhY3V1bWluZyB0aGUgaW5kZXguCisgICAgICA8L3BhcmE+PC9l bnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAg ICAgIDxzdHJ1Y3RmaWVsZD50b3RhbF9ibGtzX2hpdDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJp Z2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJl ciBvZiBzaGFyZWQgYnVmZmVyIGJsb2NrIGhpdHMgd2hpbGUgdmFjdXVtaW5nIHRoZSBpbmRl eC4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAg ICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1 bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnRvdGFsX2Jsa3NfZGlydGll ZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAg ICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBzaGFyZWQgYnVmZmVyIGJsb2NrcyBkaXJ0 aWVkIHdoaWxlIHZhY3V1bWluZyB0aGUgaW5kZXguCisgICAgICA8L3BhcmE+PC9lbnRyeT4K KyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190 YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxz dHJ1Y3RmaWVsZD50b3RhbF9ibGtzX3dyaXR0ZW48L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdp bnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIg b2Ygc2hhcmVkIGJ1ZmZlciBibG9ja3Mgd3JpdHRlbiBvdXQgd2hpbGUgdmFjdXVtaW5nIHRo ZSBpbmRleC4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICA8L3Ri b2R5PgorICAgPC90Z3JvdXA+CisgIDwvdGFibGU+CisgPC9zZWN0MT4KKworIDxzZWN0MSBp ZD0idmlldy1wZy1zdGF0LXZhY3V1bS1kYXRhYmFzZSI+CisgIDx0aXRsZT48c3RydWN0bmFt ZT5wZ19zdGF0X3ZhY3V1bV9kYXRhYmFzZTwvc3RydWN0bmFtZT48L3RpdGxlPgorCisgIDxp bmRleHRlcm0gem9uZT0idmlldy1wZy1zdGF0LXZhY3V1bS1kYXRhYmFzZSI+CisgICA8cHJp bWFyeT5wZ19zdGF0X3ZhY3V1bV9kYXRhYmFzZTwvcHJpbWFyeT4KKyAgPC9pbmRleHRlcm0+ CisKKyAgPHBhcmE+CisgICBUaGUgPHN0cnVjdG5hbWU+cGdfc3RhdF92YWN1dW1fZGF0YWJh c2U8L3N0cnVjdG5hbWU+IHZpZXcgd2lsbCBjb250YWluIG9uZSByb3cKKyAgIGZvciBlYWNo IGRhdGFiYXNlLCBzaG93aW5nIGV4dGVuZGVkIHN0YXRpc3RpY3MgYWdncmVnYXRlZCBvdmVy IGFsbAorICAgPGNvbW1hbmQ+VkFDVVVNPC9jb21tYW5kPiBhY3Rpdml0eSBpbiB0aGF0IGRh dGFiYXNlLiAgVGhlc2Ugc3RhdGlzdGljcyBhcmUKKyAgIGFjY3VtdWxhdGVkIG9ubHkgd2hp bGUgPHZhcm5hbWU+dHJhY2tfdmFjdXVtX3N0YXRpc3RpY3M8L3Zhcm5hbWU+IGlzIGVuYWJs ZWQuCisgIDwvcGFyYT4KKworICA8dGFibGUgaWQ9InZpZXctcGctc3RhdC12YWN1dW0tZGF0 YWJhc2UtY29scyI+CisgICA8dGl0bGU+PHN0cnVjdG5hbWU+cGdfc3RhdF92YWN1dW1fZGF0 YWJhc2U8L3N0cnVjdG5hbWU+IENvbHVtbnM8L3RpdGxlPgorICAgPHRncm91cCBjb2xzPSIx Ij4KKyAgICA8dGhlYWQ+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxv Z190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAg IENvbHVtbiBUeXBlCisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBEZXNj cmlwdGlvbgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgIDwvdGhl YWQ+CisKKyAgICA8dGJvZHk+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAg ICAgIDxzdHJ1Y3RmaWVsZD5kYm9pZDwvc3RydWN0ZmllbGQ+IDx0eXBlPm9pZDwvdHlwZT4K KyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE9JRCBvZiB0aGUgZGF0YWJh c2UuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+Cisg ICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29s dW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5kYm5hbWU8L3N0cnVjdGZp ZWxkPiA8dHlwZT5uYW1lPC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+Cisg ICAgICAgTmFtZSBvZiB0aGUgZGF0YWJhc2UuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAg ICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJs ZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1 Y3RmaWVsZD5lcnJvcnM8L3N0cnVjdGZpZWxkPiA8dHlwZT5pbnRlZ2VyPC90eXBlPgorICAg ICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgTnVtYmVyIG9mIHZhY3V1bSBvcGVy YXRpb25zIGluIHRoaXMgZGF0YWJhc2UgdGhhdCBmYWlsZWQgd2l0aCBhbiBlcnJvci4KKyAg ICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxl bnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVm aW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPmRiX2Jsa3NfcmVhZDwvc3RydWN0Zmll bGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgor ICAgICAgIE51bWJlciBvZiBzaGFyZWQgYnVmZmVyIGJsb2NrcyByZWFkIGJ5IHZhY3V1bSBv cGVyYXRpb25zIGluIHRoaXMgZGF0YWJhc2UuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAg ICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJs ZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1 Y3RmaWVsZD5kYl9ibGtzX2hpdDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4K KyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBzaGFyZWQg YnVmZmVyIGJsb2NrIGhpdHMgYnkgdmFjdXVtIG9wZXJhdGlvbnMgaW4gdGhpcyBkYXRhYmFz ZS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAg ICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1 bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnRvdGFsX2Jsa3NfZGlydGll ZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAg ICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBzaGFyZWQgYnVmZmVyIGJsb2NrcyBkaXJ0 aWVkIGJ5IHZhY3V1bSBvcGVyYXRpb25zIGluIHRoaXMgZGF0YWJhc2UuCisgICAgICA8L3Bh cmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9s ZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24i PgorICAgICAgIDxzdHJ1Y3RmaWVsZD50b3RhbF9ibGtzX3dyaXR0ZW48L3N0cnVjdGZpZWxk PiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAg ICAgICBOdW1iZXIgb2Ygc2hhcmVkIGJ1ZmZlciBibG9ja3Mgd3JpdHRlbiBvdXQgYnkgdmFj dXVtIG9wZXJhdGlvbnMgaW4gdGhpcyBkYXRhYmFzZS4KKyAgICAgIDwvcGFyYT48L2VudHJ5 PgorICAgICA8L3Jvdz4KICAgICA8L3Rib2R5PgogICAgPC90Z3JvdXA+CiAgIDwvdGFibGU+ CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMgYi9z cmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMKaW5kZXggOTFiNmQ5YTlkOS4u OWM1MjQ5MDlmZSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVt bGF6eS5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYwpAQCAt NDExLDYgKzQxMSwyNSBAQCB0eXBlZGVmIHN0cnVjdCBMVlJlbFN0YXRlCiAJICogYmVlbiBw ZXJtYW5lbnRseSBkaXNhYmxlZC4KIAkgKi8KIAlCbG9ja051bWJlciBlYWdlcl9zY2FuX3Jl bWFpbmluZ19mYWlsczsKKworCWludDMyCQl3cmFwYXJvdW5kX2ZhaWxzYWZlX2NvdW50Owkv KiBudW1iZXIgb2YgZW1lcmdlbmN5IHZhY3V1bXMgdG8KKwkJCQkJCQkJCQkJICogcHJldmVu dCBhbnRpLXdyYXBhcm91bmQKKwkJCQkJCQkJCQkJICogc2h1dGRvd24gKi8KKworCVBnU3Rh dF9WYWN1dW1SZWxhdGlvbkNvdW50cyBleHRWYWNSZXBvcnRJZHg7CisKKwkvKgorCSAqIFBl ci1pbmRleCBhY2N1bXVsYXRlZCBleHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljcy4gIFZBQ1VV TSBtYXkgcHJvY2VzcyBhbgorCSAqIGluZGV4IHNldmVyYWwgdGltZXMgKGEgYnVsa2RlbGV0 ZSBwYXNzIHBlciBpbmRleCBzY2FuIHBsdXMgYSBmaW5hbAorCSAqIGNsZWFudXAgcGFzcyk7 IHdlIHN1bSB0aG9zZSBwYXNzZXMgaGVyZSBhbmQgcmVwb3J0IHRoZW0gdG8gdGhlCisJICog Y3VtdWxhdGl2ZSBzdGF0cyBzeXN0ZW0gZXhhY3RseSBvbmNlIHBlciBpbmRleCBhdCB0aGUg ZW5kIG9mIHRoZSB2YWN1dW0uCisJICogT25seSB1c2VkIGJ5IHRoZSBub24tcGFyYWxsZWwg cGF0aCAtLSBwYXJhbGxlbCBpbmRleCB2YWN1dW1pbmcga2VlcHMgdGhlCisJICogZXF1aXZh bGVudCBydW5uaW5nIHRvdGFscyBpbiB0aGUgRFNNIGFuZCByZXBvcnRzIGZyb20KKwkgKiBw YXJhbGxlbF92YWN1dW1fZW5kKCkuICBTaXplZCB2YWNyZWwtPm5pbmRleGVzOyBOVUxMIGlm IHRoZXJlIGFyZSBubworCSAqIGluZGV4ZXMuCisJICovCisJUGdTdGF0X1ZhY3V1bVJlbGF0 aW9uQ291bnRzICpleHRWYWNJZHhSZXBvcnRzOworCWJvb2wJICAgKmV4dFZhY0lkeFRvdWNo ZWQ7CS8qIHdhcyB0aGUgbWF0Y2hpbmcgaW5kZXggcHJvY2Vzc2VkPyAqLwogfSBMVlJlbFN0 YXRlOwogCiAKQEAgLTQyMiw3ICs0NDEsNiBAQCB0eXBlZGVmIHN0cnVjdCBMVlNhdmVkRXJy SW5mbwogCVZhY0VyclBoYXNlIHBoYXNlOwogfSBMVlNhdmVkRXJySW5mbzsKIAotCiAvKiBu b24tZXhwb3J0IGZ1bmN0aW9uIHByb3RvdHlwZXMgKi8KIHN0YXRpYyB2b2lkIGxhenlfc2Nh bl9oZWFwKExWUmVsU3RhdGUgKnZhY3JlbCk7CiBzdGF0aWMgdm9pZCBoZWFwX3ZhY3V1bV9l YWdlcl9zY2FuX3NldHVwKExWUmVsU3RhdGUgKnZhY3JlbCwKQEAgLTQ1MiwxMiArNDcwLDEy IEBAIHN0YXRpYyB2b2lkIGxhenlfY2xlYW51cF9hbGxfaW5kZXhlcyhMVlJlbFN0YXRlICp2 YWNyZWwpOwogc3RhdGljIEluZGV4QnVsa0RlbGV0ZVJlc3VsdCAqbGF6eV92YWN1dW1fb25l X2luZGV4KFJlbGF0aW9uIGluZHJlbCwKIAkJCQkJCQkJCQkJCQlJbmRleEJ1bGtEZWxldGVS ZXN1bHQgKmlzdGF0LAogCQkJCQkJCQkJCQkJCWRvdWJsZSByZWx0dXBsZXMsCi0JCQkJCQkJ CQkJCQkJTFZSZWxTdGF0ZSAqdmFjcmVsKTsKKwkJCQkJCQkJCQkJCQlMVlJlbFN0YXRlICp2 YWNyZWwsIGludCBpZHgpOwogc3RhdGljIEluZGV4QnVsa0RlbGV0ZVJlc3VsdCAqbGF6eV9j bGVhbnVwX29uZV9pbmRleChSZWxhdGlvbiBpbmRyZWwsCiAJCQkJCQkJCQkJCQkJIEluZGV4 QnVsa0RlbGV0ZVJlc3VsdCAqaXN0YXQsCiAJCQkJCQkJCQkJCQkJIGRvdWJsZSByZWx0dXBs ZXMsCiAJCQkJCQkJCQkJCQkJIGJvb2wgZXN0aW1hdGVkX2NvdW50LAotCQkJCQkJCQkJCQkJ CSBMVlJlbFN0YXRlICp2YWNyZWwpOworCQkJCQkJCQkJCQkJCSBMVlJlbFN0YXRlICp2YWNy ZWwsIGludCBpZHgpOwogc3RhdGljIGJvb2wgc2hvdWxkX2F0dGVtcHRfdHJ1bmNhdGlvbihM VlJlbFN0YXRlICp2YWNyZWwpOwogc3RhdGljIHZvaWQgbGF6eV90cnVuY2F0ZV9oZWFwKExW UmVsU3RhdGUgKnZhY3JlbCk7CiBzdGF0aWMgQmxvY2tOdW1iZXIgY291bnRfbm9uZGVsZXRh YmxlX3BhZ2VzKExWUmVsU3RhdGUgKnZhY3JlbCwKQEAgLTQ4NCw5ICs1MDIsMjIzIEBAIHN0 YXRpYyB2b2lkIHVwZGF0ZV92YWN1dW1fZXJyb3JfaW5mbyhMVlJlbFN0YXRlICp2YWNyZWws CiAJCQkJCQkJCQkgT2Zmc2V0TnVtYmVyIG9mZm51bSk7CiBzdGF0aWMgdm9pZCByZXN0b3Jl X3ZhY3V1bV9lcnJvcl9pbmZvKExWUmVsU3RhdGUgKnZhY3JlbCwKIAkJCQkJCQkJCSAgY29u c3QgTFZTYXZlZEVyckluZm8gKnNhdmVkX3ZhY3JlbCk7Ci1zdGF0aWMgdm9pZCBhY2N1bXVs YXRlX2hlYXBfdmFjdXVtX3N0YXRpc3RpY3MoTFZSZWxTdGF0ZSAqdmFjcmVsLAotCQkJCQkJ CQkJCQkgIFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqZXh0VmFjU3RhdHMpOwogCisv KiAtLS0tLS0tLS0tCisgKiBleHR2YWNfc3RhdHNfc3RhcnQoKSAtCisgKgorICogU2F2ZSBj dXQtb2ZmIHZhbHVlcyBvZiBleHRlbmRlZCB2YWN1dW0gY291bnRlcnMgYmVmb3JlIHN0YXJ0 IG9mIGEgcmVsYXRpb24KKyAqIHByb2Nlc3NpbmcuCisgKiAtLS0tLS0tLS0tCisgKi8KK3N0 YXRpYyB2b2lkCitleHR2YWNfc3RhdHNfc3RhcnQoUmVsYXRpb24gcmVsLCBMVkV4dFN0YXRD b3VudGVycyAqIGNvdW50ZXJzKQoreworCVRpbWVzdGFtcFR6IHN0YXJ0dGltZTsKKworCWlm ICghcGdzdGF0X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzKQorCQlyZXR1cm47CisKKwltZW1z ZXQoY291bnRlcnMsIDAsIHNpemVvZihMVkV4dFN0YXRDb3VudGVycykpOworCisJc3RhcnR0 aW1lID0gR2V0Q3VycmVudFRpbWVzdGFtcCgpOworCisJY291bnRlcnMtPnN0YXJ0dGltZSA9 IHN0YXJ0dGltZTsKKwljb3VudGVycy0+d2FsdXNhZ2UgPSBwZ1dhbFVzYWdlOworCWNvdW50 ZXJzLT5idWZ1c2FnZSA9IHBnQnVmZmVyVXNhZ2U7CisJY291bnRlcnMtPlZhY3V1bURlbGF5 VGltZSA9IFZhY3V1bURlbGF5VGltZTsKKwljb3VudGVycy0+YmxvY2tzX2ZldGNoZWQgPSAw OworCWNvdW50ZXJzLT5ibG9ja3NfaGl0ID0gMDsKKworCWlmICghcmVsLT5wZ3N0YXRfaW5m byB8fCAhcGdzdGF0X3RyYWNrX2NvdW50cykKKworCQkvKgorCQkgKiBpZiBzb21ldGhpbmcg Z29lcyB3cm9uZyBvciB1c2VyIGRvZXNuJ3Qgd2FudCB0byB0cmFjayBhIGRhdGFiYXNlCisJ CSAqIGFjdGl2aXR5IC0ganVzdCBzdXBwcmVzcyBpdC4KKwkJICovCisJCXJldHVybjsKKwor CWNvdW50ZXJzLT5ibG9ja3NfZmV0Y2hlZCA9IHJlbC0+cGdzdGF0X2luZm8tPmNvdW50cy5i bG9ja3NfZmV0Y2hlZDsKKwljb3VudGVycy0+YmxvY2tzX2hpdCA9IHJlbC0+cGdzdGF0X2lu Zm8tPmNvdW50cy5ibG9ja3NfaGl0OworfQorCisvKiAtLS0tLS0tLS0tCisgKiBleHR2YWNf c3RhdHNfZW5kKCkgLQorICoKKyAqCUNhbGxlZCB0byBmaW5pc2ggYW4gZXh0ZW5kZWQgdmFj dXVtIHN0YXRpc3RpYyBnYXRoZXJpbmcgYW5kIGZvcm0gYSByZXBvcnQuCisgKiAtLS0tLS0t LS0tCisgKi8KK3N0YXRpYyB2b2lkCitleHR2YWNfc3RhdHNfZW5kKFJlbGF0aW9uIHJlbCwg TFZFeHRTdGF0Q291bnRlcnMgKiBjb3VudGVycywKKwkJCQkgUGdTdGF0X0NvbW1vbkNvdW50 cyAqIHJlcG9ydCkKK3sKKwlCdWZmZXJVc2FnZSBidWZ1c2FnZTsKKworCWlmICghcGdzdGF0 X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzKQorCQlyZXR1cm47CisKKwltZW1zZXQocmVwb3J0 LCAwLCBzaXplb2YoUGdTdGF0X0NvbW1vbkNvdW50cykpOworCisJLyogQ2FsY3VsYXRlIGRp ZmZzIG9mIGdsb2JhbCBzdGF0IHBhcmFtZXRlcnMgb24gYnVmZmVyIHVzYWdlLiAqLworCW1l bXNldCgmYnVmdXNhZ2UsIDAsIHNpemVvZihCdWZmZXJVc2FnZSkpOworCUJ1ZmZlclVzYWdl QWNjdW1EaWZmKCZidWZ1c2FnZSwgJnBnQnVmZmVyVXNhZ2UsICZjb3VudGVycy0+YnVmdXNh Z2UpOworCisJLyoKKwkgKiBGaWxsIGFkZGl0aW9uYWwgc3RhdGlzdGljcyBvbiBhIHZhY3V1 bSBwcm9jZXNzaW5nIG9wZXJhdGlvbi4KKwkgKi8KKwlyZXBvcnQtPnRvdGFsX2Jsa3NfcmVh ZCArPSBidWZ1c2FnZS5sb2NhbF9ibGtzX3JlYWQgKyBidWZ1c2FnZS5zaGFyZWRfYmxrc19y ZWFkOworCXJlcG9ydC0+dG90YWxfYmxrc19oaXQgKz0gYnVmdXNhZ2UubG9jYWxfYmxrc19o aXQgKyBidWZ1c2FnZS5zaGFyZWRfYmxrc19oaXQ7CisJcmVwb3J0LT50b3RhbF9ibGtzX2Rp cnRpZWQgKz0gYnVmdXNhZ2UubG9jYWxfYmxrc19kaXJ0aWVkICsgYnVmdXNhZ2Uuc2hhcmVk X2Jsa3NfZGlydGllZDsKKwlyZXBvcnQtPnRvdGFsX2Jsa3Nfd3JpdHRlbiArPSBidWZ1c2Fn ZS5zaGFyZWRfYmxrc193cml0dGVuOworfQorCit2b2lkCitleHR2YWNfc3RhdHNfc3RhcnRf aWR4KFJlbGF0aW9uIHJlbCwgSW5kZXhCdWxrRGVsZXRlUmVzdWx0ICpzdGF0cywKKwkJCQkJ ICAgTFZFeHRTdGF0Q291bnRlcnNJZHggKiBjb3VudGVycykKK3sKKwlpZiAoIXBnc3RhdF90 cmFja192YWN1dW1fc3RhdGlzdGljcykKKwkJcmV0dXJuOworCisJLyogU2V0IGluaXRpYWwg dmFsdWVzIGZvciBjb21tb24gaGVhcCBhbmQgaW5kZXggc3RhdGlzdGljcyAqLworCWV4dHZh Y19zdGF0c19zdGFydChyZWwsICZjb3VudGVycy0+Y29tbW9uKTsKKwljb3VudGVycy0+cGFn ZXNfZGVsZXRlZCA9IGNvdW50ZXJzLT50dXBsZXNfcmVtb3ZlZCA9IDA7CisKKwlpZiAoc3Rh dHMgIT0gTlVMTCkKKwl7CisJCS8qCisJCSAqIFhYWDogV2h5IGRvIHdlIG5lZWQgdGhpcyBj b2RlIGhlcmU/IElmIGl0IGlzIG5lZWRlZCwgSSBmZWVsIGxhY2sgb2YKKwkJICogY29tbWVu dHMsIGRlc2NyaWJpbmcgdGhlIHJlYXNvbi4KKwkJICovCisJCWNvdW50ZXJzLT50dXBsZXNf cmVtb3ZlZCA9IHN0YXRzLT50dXBsZXNfcmVtb3ZlZDsKKwkJY291bnRlcnMtPnBhZ2VzX2Rl bGV0ZWQgPSBzdGF0cy0+cGFnZXNfZGVsZXRlZDsKKwl9Cit9CisKK3ZvaWQKK2V4dHZhY19z dGF0c19lbmRfaWR4KFJlbGF0aW9uIHJlbCwgSW5kZXhCdWxrRGVsZXRlUmVzdWx0ICpzdGF0 cywKKwkJCQkJIExWRXh0U3RhdENvdW50ZXJzSWR4ICogY291bnRlcnMsIFBnU3RhdF9WYWN1 dW1SZWxhdGlvbkNvdW50cyAqIHJlcG9ydCkKK3sKKwlpZiAoIXBnc3RhdF90cmFja192YWN1 dW1fc3RhdGlzdGljcykKKwkJcmV0dXJuOworCisJbWVtc2V0KHJlcG9ydCwgMCwgc2l6ZW9m KFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cykpOworCisJZXh0dmFjX3N0YXRzX2VuZChy ZWwsICZjb3VudGVycy0+Y29tbW9uLCAmcmVwb3J0LT5jb21tb24pOworCisJcmVwb3J0LT50 eXBlID0gUEdTVEFUX0VYVFZBQ19JTkRFWDsKKworCWlmIChzdGF0cyAhPSBOVUxMKQorCXsK KwkJLyoKKwkJICogaWYgc29tZXRoaW5nIGdvZXMgd3Jvbmcgb3IgYW4gdXNlciBkb2Vzbid0 IHdhbnQgdG8gdHJhY2sgYSBkYXRhYmFzZQorCQkgKiBhY3Rpdml0eSAtIGp1c3Qgc3VwcHJl c3MgaXQuCisJCSAqLworCisJCS8qIEZpbGwgaW5kZXgtc3BlY2lmaWMgZXh0ZW5kZWQgc3Rh dHMgZmllbGRzICovCisJCXJlcG9ydC0+Y29tbW9uLnR1cGxlc19kZWxldGVkID0KKwkJCXN0 YXRzLT50dXBsZXNfcmVtb3ZlZCAtIGNvdW50ZXJzLT50dXBsZXNfcmVtb3ZlZDsKKwkJcmVw b3J0LT5pbmRleC5wYWdlc19kZWxldGVkID0KKwkJCXN0YXRzLT5wYWdlc19kZWxldGVkIC0g Y291bnRlcnMtPnBhZ2VzX2RlbGV0ZWQ7CisJfQorfQorCisvKiBBY2N1bXVsYXRlIHZhY3V1 bSBzdGF0aXN0aWNzIGZvciBoZWFwLgorICoKKyAgKiBCZWNhdXNlIG9mIGNvbXBsZXhpdHkg b2YgdmFjdXVtIHByb2Nlc3Npbmc6IGl0IHN3aXRjaCBwcm9jZXNpbmcgYmV0d2VlbgorICAq IHRoZSBoZWFwIHJlbGF0aW9uIHRvIGluZGV4IHJlbGF0aW9ucyBhbmQgdmlzYSB2ZXJzYSwg d2UgbmVlZCB0byBzdG9yZQorICAqIGdhdGhlcmVkIHN0YXRpc3RpY3MgaW5mb3JtYXRpb24g Zm9yIGhlYXAgcmVsYXRpb25zIHNldmVyYWwgdGltZXMgYmVmb3JlCisgICogdGhlIHZhY3V1 bSBzdGFydHMgcHJvY2Vzc2luZyB0aGUgaW5kZXhlcyBhZ2Fpbi4KKyAgKgorICAqIEl0IGlz IG5lY2Vzc2FyeSB0byBnYXRoZXIgY29ycmVjdCBzdGF0aXN0aWNzIGluZm9ybWF0aW9uIGZv ciBoZWFwIGFuZCBpbmRleGVzCisgICogb3RoZXJ3aWNlIHRoZSBpbmRleCBzdGF0aXN0aWNz IGluZm9ybWF0aW9uIHdvdWxkIGJlIGFkZGVkIHRvIGhpcyBwYXJlbnQgaGVhcAorICAqIHN0 YXRpc3RpY3MgaW5mb3JtYXRpb24gYW5kIGl0IHdvdWxkIGJlIGRpZmZpY3VsdCB0byBhbmFs eXplIGl0IGxhdGVyLgorICAqCisgICogV2UgY2FuJ3Qgc3VidHJhY3QgdW5pb24gdmFjdXVt IHN0YXRpc3RpY3MgaW5mb3JtYXRpb24gZm9yIGluZGV4IGZyb20gdGhlIGhlYXAgcmVsYXRp b25zCisgICogYmVjYXVzZSBvZiB0b3RhbCBhbmQgZGVsYXkgdGltZSB0aW1lIHN0YXRpc3Rp Y3MgY29sbGVjdGluZyBkdXJpbmcgcGFyYWxsZWwgdmFjdXVtCisgICogcHJvY3VkdXJlLgor Ki8KK3N0YXRpYyB2b2lkCithY2N1bXVsYXRlX2hlYXBfdmFjdXVtX3N0YXRpc3RpY3MoTFZS ZWxTdGF0ZSAqdmFjcmVsLCBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKiBleHRWYWNT dGF0cykKK3sKKwlpZiAoIXBnc3RhdF90cmFja192YWN1dW1fc3RhdGlzdGljcykKKwkJcmV0 dXJuOworCisJLyogRmlsbCBoZWFwLXNwZWNpZmljIGV4dGVuZGVkIHN0YXRzIGZpZWxkcyAq LworCWV4dFZhY1N0YXRzLT50eXBlID0gUEdTVEFUX0VYVFZBQ19UQUJMRTsKKwlleHRWYWNT dGF0cy0+dGFibGUucGFnZXNfc2Nhbm5lZCA9IHZhY3JlbC0+c2Nhbm5lZF9wYWdlczsKKwll eHRWYWNTdGF0cy0+dGFibGUucGFnZXNfcmVtb3ZlZCA9IHZhY3JlbC0+cmVtb3ZlZF9wYWdl czsKKwlleHRWYWNTdGF0cy0+dGFibGUudm1fbmV3X2Zyb3plbl9wYWdlcyA9IHZhY3JlbC0+ bmV3X2FsbF9mcm96ZW5fcGFnZXM7CisJZXh0VmFjU3RhdHMtPnRhYmxlLnZtX25ld192aXNp YmxlX3BhZ2VzID0gdmFjcmVsLT5uZXdfYWxsX3Zpc2libGVfcGFnZXM7CisJZXh0VmFjU3Rh dHMtPnRhYmxlLnZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcyA9IHZhY3JlbC0+bmV3X2Fs bF92aXNpYmxlX2FsbF9mcm96ZW5fcGFnZXM7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi50dXBs ZXNfZGVsZXRlZCA9IHZhY3JlbC0+dHVwbGVzX2RlbGV0ZWQ7CisJZXh0VmFjU3RhdHMtPnRh YmxlLnR1cGxlc19mcm96ZW4gPSB2YWNyZWwtPnR1cGxlc19mcm96ZW47CisJZXh0VmFjU3Rh dHMtPnRhYmxlLnJlY2VudGx5X2RlYWRfdHVwbGVzID0gdmFjcmVsLT5yZWNlbnRseV9kZWFk X3R1cGxlczsKKwlleHRWYWNTdGF0cy0+dGFibGUubWlzc2VkX2RlYWRfdHVwbGVzID0gdmFj cmVsLT5taXNzZWRfZGVhZF90dXBsZXM7CisJZXh0VmFjU3RhdHMtPnRhYmxlLm1pc3NlZF9k ZWFkX3BhZ2VzID0gdmFjcmVsLT5taXNzZWRfZGVhZF9wYWdlczsKKworCWV4dFZhY1N0YXRz LT5jb21tb24udG90YWxfYmxrc19kaXJ0aWVkIC09IHZhY3JlbC0+ZXh0VmFjUmVwb3J0SWR4 LmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQ7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi50b3Rh bF9ibGtzX2hpdCAtPSB2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxr c19oaXQ7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi50b3RhbF9ibGtzX3JlYWQgLT0gdmFjcmVs LT5leHRWYWNSZXBvcnRJZHguY29tbW9uLnRvdGFsX2Jsa3NfcmVhZDsKKwlleHRWYWNTdGF0 cy0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbiAtPSB2YWNyZWwtPmV4dFZhY1JlcG9ydElk eC5jb21tb24udG90YWxfYmxrc193cml0dGVuOworfQorCitzdGF0aWMgdm9pZAorYWNjdW11 bGF0ZV9pZHhzX3ZhY3V1bV9zdGF0aXN0aWNzKExWUmVsU3RhdGUgKnZhY3JlbCwgUGdTdGF0 X1ZhY3V1bVJlbGF0aW9uQ291bnRzICogZXh0VmFjSWR4U3RhdHMpCit7CisJLyogRmlsbCBo ZWFwLXNwZWNpZmljIGV4dGVuZGVkIHN0YXRzIGZpZWxkcyAqLworCXZhY3JlbC0+ZXh0VmFj UmVwb3J0SWR4LmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQgKz0gZXh0VmFjSWR4U3RhdHMt PmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQ7CisJdmFjcmVsLT5leHRWYWNSZXBvcnRJZHgu Y29tbW9uLnRvdGFsX2Jsa3NfaGl0ICs9IGV4dFZhY0lkeFN0YXRzLT5jb21tb24udG90YWxf Ymxrc19oaXQ7CisJdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9uLnRvdGFsX2Jsa3Nf cmVhZCArPSBleHRWYWNJZHhTdGF0cy0+Y29tbW9uLnRvdGFsX2Jsa3NfcmVhZDsKKwl2YWNy ZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxrc193cml0dGVuICs9IGV4dFZh Y0lkeFN0YXRzLT5jb21tb24udG90YWxfYmxrc193cml0dGVuOworfQorCisvKgorICogQWNj dW11bGF0ZSBvbmUgaW5kZXggZXh0ZW5kZWQtdmFjdXVtIHJlcG9ydCBpbnRvIGEgcGVyLWlu ZGV4IHJ1bm5pbmcgdG90YWwuCisgKgorICogVkFDVVVNIG1heSB0b3VjaCBhbiBpbmRleCBt b3JlIHRoYW4gb25jZTogYSBidWxrZGVsZXRlIHBhc3MgZm9yIGV2ZXJ5IGluZGV4CisgKiBz Y2FuLCBwbHVzIGEgZmluYWwgY2xlYW51cCBwYXNzLiAgUmF0aGVyIHRoYW4gcmVwb3J0aW5n IHRvIHRoZSBjdW11bGF0aXZlCisgKiBzdGF0cyBzeXN0ZW0gb24gZXZlcnkgcGFzcywgY2Fs bGVycyBzdW0gdGhlIHBhc3NlcyBoZXJlIGFuZCByZXBvcnQgdGhlCisgKiB0b3RhbHMgZXhh Y3RseSBvbmNlIHBlciBpbmRleCBhdCB0aGUgZW5kIG9mIHRoZSB2YWN1dW0uICBTaGFyZWQg YmV0d2VlbiB0aGUKKyAqIG5vbi1wYXJhbGxlbCBwYXRoIChhY2N1bXVsYXRpbmcgaW4gdmFj cmVsKSBhbmQgdGhlIHBhcmFsbGVsIHBhdGgKKyAqIChhY2N1bXVsYXRpbmcgaW4gdGhlIERT TSksIGhlbmNlIG5vdCBzdGF0aWMuCisgKi8KK3ZvaWQKK2V4dHZhY19hY2N1bXVsYXRlX2lk eF9yZXBvcnQoUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICogZHN0LAorCQkJCQkJCSBj b25zdCBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKiBzcmMpCit7CisJZHN0LT50eXBl ID0gUEdTVEFUX0VYVFZBQ19JTkRFWDsKKworCWRzdC0+Y29tbW9uLnRvdGFsX2Jsa3NfcmVh ZCArPSBzcmMtPmNvbW1vbi50b3RhbF9ibGtzX3JlYWQ7CisJZHN0LT5jb21tb24udG90YWxf Ymxrc19oaXQgKz0gc3JjLT5jb21tb24udG90YWxfYmxrc19oaXQ7CisJZHN0LT5jb21tb24u dG90YWxfYmxrc19kaXJ0aWVkICs9IHNyYy0+Y29tbW9uLnRvdGFsX2Jsa3NfZGlydGllZDsK Kwlkc3QtPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4gKz0gc3JjLT5jb21tb24udG90YWxf Ymxrc193cml0dGVuOworCWRzdC0+Y29tbW9uLnR1cGxlc19kZWxldGVkICs9IHNyYy0+Y29t bW9uLnR1cGxlc19kZWxldGVkOworCisJZHN0LT5pbmRleC5wYWdlc19kZWxldGVkICs9IHNy Yy0+aW5kZXgucGFnZXNfZGVsZXRlZDsKK30KKworLyoKKyAqIFJlcG9ydCB0aGUgYWNjdW11 bGF0ZWQgcGVyLWluZGV4IGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNzLCBvbmUgcmVwb3J0 IHBlcgorICogaW5kZXguICBVc2VkIGJ5IHRoZSBub24tcGFyYWxsZWwgcGF0aCBvbmx5OyB0 aGUgcGFyYWxsZWwgcGF0aCByZXBvcnRzIGl0cworICogRFNNLXJlc2lkZW50IHRvdGFscyBm cm9tIHBhcmFsbGVsX3ZhY3V1bV9lbmQoKS4KKyAqLworc3RhdGljIHZvaWQKK3JlcG9ydF9p bmRleF92YWN1dW1fZXh0c3RhdHMoTFZSZWxTdGF0ZSAqdmFjcmVsKQoreworCWlmICghcGdz dGF0X3RyYWNrX3ZhY3V1bV9zdGF0aXN0aWNzKQorCQlyZXR1cm47CisKKwlmb3IgKGludCBp ZHggPSAwOyBpZHggPCB2YWNyZWwtPm5pbmRleGVzOyBpZHgrKykKKwl7CisJCVJlbGF0aW9u CWluZHJlbCA9IHZhY3JlbC0+aW5kcmVsc1tpZHhdOworCisJCWlmICghdmFjcmVsLT5leHRW YWNJZHhUb3VjaGVkW2lkeF0pCisJCQljb250aW51ZTsKKworCQlwZ3N0YXRfcmVwb3J0X3Zh Y3V1bV9leHRzdGF0cyhSZWxhdGlvbkdldFJlbGlkKGluZHJlbCksCisJCQkJCQkJCQkgIGlu ZHJlbC0+cmRfcmVsLT5yZWxpc3NoYXJlZCwKKwkJCQkJCQkJCSAgJnZhY3JlbC0+ZXh0VmFj SWR4UmVwb3J0c1tpZHhdKTsKKwl9Cit9CiAKIAogLyoKQEAgLTYxMiw2OSArODQ0LDYgQEAg aGVhcF92YWN1dW1fZWFnZXJfc2Nhbl9zZXR1cChMVlJlbFN0YXRlICp2YWNyZWwsIGNvbnN0 IFZhY3V1bVBhcmFtcyAqcGFyYW1zKQogCQlmaXJzdF9yZWdpb25fcmF0aW87CiB9CiAKLS8q Ci0gKiBGaWxsIHRoZSBleHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljcyByZXBvcnQgZm9yIGEg aGVhcCByZWxhdGlvbiB3aXRoIHRoZQotICogY291bnRlcnMgdGhhdCBhcmUgZGVyaXZlZCBk aXJlY3RseSBmcm9tIHRoZSBMVlJlbFN0YXRlLiAgQnVmZmVyLCBXQUwgYW5kCi0gKiB0aW1p bmcgY291bnRlcnMgcmVxdWlyZSBzYW1wbGluZyByZXNvdXJjZSB1c2FnZSBhcm91bmQgdGhl IHZhY3V1bSBhbmQgYXJlCi0gKiBnYXRoZXJlZCBzZXBhcmF0ZWx5OyB0aGV5IGFyZSBub3Qg dG91Y2hlZCBoZXJlLgotICovCi1zdGF0aWMgdm9pZAotYWNjdW11bGF0ZV9oZWFwX3ZhY3V1 bV9zdGF0aXN0aWNzKExWUmVsU3RhdGUgKnZhY3JlbCwKLQkJCQkJCQkJICBQZ1N0YXRfVmFj dXVtUmVsYXRpb25Db3VudHMgKmV4dFZhY1N0YXRzKQotewotCWlmICghcGdzdGF0X3RyYWNr X3ZhY3V1bV9zdGF0aXN0aWNzKQotCQlyZXR1cm47Ci0KLQlleHRWYWNTdGF0cy0+dHlwZSA9 IFBHU1RBVF9FWFRWQUNfVEFCTEU7Ci0JZXh0VmFjU3RhdHMtPnRhYmxlLnBhZ2VzX3NjYW5u ZWQgPSB2YWNyZWwtPnNjYW5uZWRfcGFnZXM7Ci0JZXh0VmFjU3RhdHMtPnRhYmxlLnBhZ2Vz X3JlbW92ZWQgPSB2YWNyZWwtPnJlbW92ZWRfcGFnZXM7Ci0JZXh0VmFjU3RhdHMtPmNvbW1v bi50dXBsZXNfZGVsZXRlZCA9IHZhY3JlbC0+dHVwbGVzX2RlbGV0ZWQ7Ci0JZXh0VmFjU3Rh dHMtPnRhYmxlLnR1cGxlc19mcm96ZW4gPSB2YWNyZWwtPnR1cGxlc19mcm96ZW47Ci0JZXh0 VmFjU3RhdHMtPnRhYmxlLnJlY2VudGx5X2RlYWRfdHVwbGVzID0gdmFjcmVsLT5yZWNlbnRs eV9kZWFkX3R1cGxlczsKLQlleHRWYWNTdGF0cy0+dGFibGUubWlzc2VkX2RlYWRfcGFnZXMg PSB2YWNyZWwtPm1pc3NlZF9kZWFkX3BhZ2VzOwotCWV4dFZhY1N0YXRzLT50YWJsZS5taXNz ZWRfZGVhZF90dXBsZXMgPSB2YWNyZWwtPm1pc3NlZF9kZWFkX3R1cGxlczsKLQlleHRWYWNT dGF0cy0+dGFibGUudm1fbmV3X2Zyb3plbl9wYWdlcyA9IHZhY3JlbC0+bmV3X2FsbF9mcm96 ZW5fcGFnZXM7Ci0JZXh0VmFjU3RhdHMtPnRhYmxlLnZtX25ld192aXNpYmxlX3BhZ2VzID0g dmFjcmVsLT5uZXdfYWxsX3Zpc2libGVfcGFnZXM7Ci0JZXh0VmFjU3RhdHMtPnRhYmxlLnZt X25ld192aXNpYmxlX2Zyb3plbl9wYWdlcyA9IHZhY3JlbC0+bmV3X2FsbF92aXNpYmxlX2Fs bF9mcm96ZW5fcGFnZXM7Ci19Ci0KLS8qCi0gKiBSZXBvcnQgdGhlIHBlci1pbmRleCBleHRl bmRlZCB2YWN1dW0gc3RhdGlzdGljcywgb25lIHJlcG9ydCBwZXIgaW5kZXguCi0gKgotICog VGhlIHBlci1pbmRleCBjb3VudGVycyAocGFnZXNfZGVsZXRlZCBhbmQgdGhlIG51bWJlciBv ZiByZW1vdmVkIGluZGV4Ci0gKiBlbnRyaWVzKSBhcmUgZGVyaXZlZCBkaXJlY3RseSBmcm9t IGVhY2ggaW5kZXgncyBmaW5hbCBJbmRleEJ1bGtEZWxldGVSZXN1bHQsCi0gKiB3aGljaCBh bHJlYWR5IGhvbGRzIHRoZSB0b3RhbHMgYWNjdW11bGF0ZWQgYWNyb3NzIGFsbCBidWxrZGVs ZXRlIGFuZCBjbGVhbnVwCi0gKiBwYXNzZXMgLS0gc28gbm8gcGVyLXBhc3Mgc2FtcGxpbmcg aXMgbmVlZGVkIGhlcmUuICBVc2VkIGJ5IHRoZSBub24tcGFyYWxsZWwKLSAqIHBhdGggb25s eTsgdGhlIHBhcmFsbGVsIHBhdGggcmVwb3J0cyBpdHMgRFNNLXJlc2lkZW50IHJlc3VsdHMg ZnJvbQotICogcGFyYWxsZWxfdmFjdXVtX2VuZCgpLgotICovCi1zdGF0aWMgdm9pZAotcmVw b3J0X2luZGV4X3ZhY3V1bV9leHRzdGF0cyhMVlJlbFN0YXRlICp2YWNyZWwpCi17Ci0JaWYg KCFwZ3N0YXRfdHJhY2tfdmFjdXVtX3N0YXRpc3RpY3MpCi0JCXJldHVybjsKLQotCWZvciAo aW50IGlkeCA9IDA7IGlkeCA8IHZhY3JlbC0+bmluZGV4ZXM7IGlkeCsrKQotCXsKLQkJUmVs YXRpb24JaW5kcmVsID0gdmFjcmVsLT5pbmRyZWxzW2lkeF07Ci0JCUluZGV4QnVsa0RlbGV0 ZVJlc3VsdCAqaXN0YXQgPSB2YWNyZWwtPmluZHN0YXRzW2lkeF07Ci0JCVBnU3RhdF9WYWN1 dW1SZWxhdGlvbkNvdW50cyByZXBvcnQ7Ci0KLQkJLyogU2tpcCBpbmRleGVzIHRoYXQgdGhp cyB2YWN1dW0gZGlkIG5vdCBwcm9jZXNzICovCi0JCWlmIChpc3RhdCA9PSBOVUxMKQotCQkJ Y29udGludWU7Ci0KLQkJbWVtc2V0KCZyZXBvcnQsIDAsIHNpemVvZihyZXBvcnQpKTsKLQkJ cmVwb3J0LnR5cGUgPSBQR1NUQVRfRVhUVkFDX0lOREVYOwotCQlyZXBvcnQuY29tbW9uLnR1 cGxlc19kZWxldGVkID0gaXN0YXQtPnR1cGxlc19yZW1vdmVkOwotCQlyZXBvcnQuaW5kZXgu cGFnZXNfZGVsZXRlZCA9IGlzdGF0LT5wYWdlc19kZWxldGVkOwotCi0JCXBnc3RhdF9yZXBv cnRfdmFjdXVtX2V4dHN0YXRzKFJlbGF0aW9uR2V0UmVsaWQoaW5kcmVsKSwKLQkJCQkJCQkJ CSAgaW5kcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkLAotCQkJCQkJCQkJICAmcmVwb3J0KTsK LQl9Ci19Ci0KIC8qCiAgKgloZWFwX3ZhY3V1bV9yZWwoKSAtLSBwZXJmb3JtIFZBQ1VVTSBm b3Igb25lIGhlYXAgcmVsYXRpb24KICAqCkBAIC03MDEsNyArODcwLDYgQEAgaGVhcF92YWN1 dW1fcmVsKFJlbGF0aW9uIHJlbCwgY29uc3QgVmFjdXVtUGFyYW1zICpwYXJhbXMsCiAJCQkJ bmV3X3JlbF9hbGx2aXNpYmxlLAogCQkJCW5ld19yZWxfYWxsZnJvemVuOwogCVBHUlVzYWdl CXJ1MDsKLQlUaW1lc3RhbXBUeiBzdGFydHRpbWUgPSAwOwogCVBnU3RhdF9Db3VudGVyIHN0 YXJ0cmVhZHRpbWUgPSAwLAogCQkJCXN0YXJ0d3JpdGV0aW1lID0gMDsKIAlXYWxVc2FnZQlz dGFydHdhbHVzYWdlID0gcGdXYWxVc2FnZTsKQEAgLTcwOSw5ICs4NzcsMTAgQEAgaGVhcF92 YWN1dW1fcmVsKFJlbGF0aW9uIHJlbCwgY29uc3QgVmFjdXVtUGFyYW1zICpwYXJhbXMsCiAJ RXJyb3JDb250ZXh0Q2FsbGJhY2sgZXJyY2FsbGJhY2s7CiAJY2hhcgkgICoqaW5kbmFtZXMg PSBOVUxMOwogCVNpemUJCWRlYWRfaXRlbXNfbWF4X2J5dGVzID0gMDsKKwlMVkV4dFN0YXRD b3VudGVycyBleHRWYWNDb3VudGVyczsKIAlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMg ZXh0VmFjUmVwb3J0OwogCi0JLyogSW5pdGlhbGl6ZSB0aGUgZXh0ZW5kZWQgdmFjdXVtIHN0 YXRpc3RpY3MgcmVwb3J0ICovCisJLyogSW5pdGlhbGl6ZSB2YWN1dW0gc3RhdGlzdGljcyAq LwogCW1lbXNldCgmZXh0VmFjUmVwb3J0LCAwLCBzaXplb2YoUGdTdGF0X1ZhY3V1bVJlbGF0 aW9uQ291bnRzKSk7CiAKIAl2ZXJib3NlID0gKHBhcmFtcy0+b3B0aW9ucyAmIFZBQ09QVF9W RVJCT1NFKSAhPSAwOwpAQCAtNzI3LDggKzg5Niw3IEBAIGhlYXBfdmFjdXVtX3JlbChSZWxh dGlvbiByZWwsIGNvbnN0IFZhY3V1bVBhcmFtcyAqcGFyYW1zLAogCQl9CiAJfQogCi0JLyog VXNlZCBmb3IgaW5zdHJ1bWVudGF0aW9uIGFuZCBzdGF0cyByZXBvcnQgKi8KLQlzdGFydHRp bWUgPSBHZXRDdXJyZW50VGltZXN0YW1wKCk7CisJZXh0dmFjX3N0YXRzX3N0YXJ0KHJlbCwg JmV4dFZhY0NvdW50ZXJzKTsKIAogCXBnc3RhdF9wcm9ncmVzc19zdGFydF9jb21tYW5kKFBS T0dSRVNTX0NPTU1BTkRfVkFDVVVNLAogCQkJCQkJCQkgIFJlbGF0aW9uR2V0UmVsaWQocmVs KSk7CkBAIC03NTYsOCArOTI0LDggQEAgaGVhcF92YWN1dW1fcmVsKFJlbGF0aW9uIHJlbCwg Y29uc3QgVmFjdXVtUGFyYW1zICpwYXJhbXMsCiAJdmFjcmVsID0gcGFsbG9jMF9vYmplY3Qo TFZSZWxTdGF0ZSk7CiAJdmFjcmVsLT5kYm5hbWUgPSBnZXRfZGF0YWJhc2VfbmFtZShNeURh dGFiYXNlSWQpOwogCXZhY3JlbC0+cmVsbmFtZXNwYWNlID0gZ2V0X25hbWVzcGFjZV9uYW1l KFJlbGF0aW9uR2V0TmFtZXNwYWNlKHJlbCkpOwotCXZhY3JlbC0+cmVsb2lkID0gUmVsYXRp b25HZXRSZWxpZChyZWwpOwogCXZhY3JlbC0+cmVsbmFtZSA9IHBzdHJkdXAoUmVsYXRpb25H ZXRSZWxhdGlvbk5hbWUocmVsKSk7CisJdmFjcmVsLT5yZWxvaWQgPSBSZWxhdGlvbkdldFJl bGlkKHJlbCk7CiAJdmFjcmVsLT5pbmRuYW1lID0gTlVMTDsKIAl2YWNyZWwtPnBoYXNlID0g VkFDVVVNX0VSUkNCX1BIQVNFX1VOS05PV047CiAJdmFjcmVsLT52ZXJib3NlID0gdmVyYm9z ZTsKQEAgLTc2NiwxMiArOTM0LDI2IEBAIGhlYXBfdmFjdXVtX3JlbChSZWxhdGlvbiByZWws IGNvbnN0IFZhY3V1bVBhcmFtcyAqcGFyYW1zLAogCWVycmNhbGxiYWNrLnByZXZpb3VzID0g ZXJyb3JfY29udGV4dF9zdGFjazsKIAllcnJvcl9jb250ZXh0X3N0YWNrID0gJmVycmNhbGxi YWNrOwogCisJbWVtc2V0KCZ2YWNyZWwtPmV4dFZhY1JlcG9ydElkeCwgMCwgc2l6ZW9mKFBn U3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cykpOworCW1lbXNldCgmZXh0VmFjUmVwb3J0LmNv bW1vbiwgMCwgc2l6ZW9mKFBnU3RhdF9Db21tb25Db3VudHMpKTsKKwogCS8qIFNldCB1cCBo aWdoIGxldmVsIHN0dWZmIGFib3V0IHJlbCBhbmQgaXRzIGluZGV4ZXMgKi8KIAl2YWNyZWwt PnJlbCA9IHJlbDsKIAl2YWNfb3Blbl9pbmRleGVzKHZhY3JlbC0+cmVsLCBSb3dFeGNsdXNp dmVMb2NrLCAmdmFjcmVsLT5uaW5kZXhlcywKIAkJCQkJICZ2YWNyZWwtPmluZHJlbHMpOwog CXZhY3JlbC0+YnN0cmF0ZWd5ID0gYnN0cmF0ZWd5OwogCisJLyoKKwkgKiBBbGxvY2F0ZSBw ZXItaW5kZXggYWNjdW11bGF0b3JzIGZvciBleHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljcy4g IEluZGV4CisJICogcGFzc2VzIGFkZCBpbnRvIHRoZXNlIGFuZCB0aGUgdG90YWxzIGFyZSBy ZXBvcnRlZCBvbmNlIHBlciBpbmRleCBhdCB0aGUKKwkgKiBlbmQgb2YgdGhlIHZhY3V1bSAo c2VlIHJlcG9ydF9pbmRleF92YWN1dW1fZXh0c3RhdHMoKSkuCisJICovCisJaWYgKHZhY3Jl bC0+bmluZGV4ZXMgPiAwKQorCXsKKwkJdmFjcmVsLT5leHRWYWNJZHhSZXBvcnRzID0KKwkJ CXBhbGxvYzBfYXJyYXkoUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzLCB2YWNyZWwtPm5p bmRleGVzKTsKKwkJdmFjcmVsLT5leHRWYWNJZHhUb3VjaGVkID0gcGFsbG9jMF9hcnJheShi b29sLCB2YWNyZWwtPm5pbmRleGVzKTsKKwl9CiAJaWYgKGluc3RydW1lbnQgJiYgdmFjcmVs LT5uaW5kZXhlcyA+IDApCiAJewogCQkvKiBDb3B5IGluZGV4IG5hbWVzIHVzZWQgYnkgaW5z dHJ1bWVudGF0aW9uIChub3QgZXJyb3IgcmVwb3J0aW5nKSAqLwpAQCAtODc0LDYgKzEwNTYs NyBAQCBoZWFwX3ZhY3V1bV9yZWwoUmVsYXRpb24gcmVsLCBjb25zdCBWYWN1dW1QYXJhbXMg KnBhcmFtcywKIAl2YWNyZWwtPmFnZ3Jlc3NpdmUgPSB2YWN1dW1fZ2V0X2N1dG9mZnMocmVs LCBwYXJhbXMsICZ2YWNyZWwtPmN1dG9mZnMpOwogCXZhY3JlbC0+cmVsX3BhZ2VzID0gb3Jp Z19yZWxfcGFnZXMgPSBSZWxhdGlvbkdldE51bWJlck9mQmxvY2tzKHJlbCk7CiAJdmFjcmVs LT52aXN0ZXN0ID0gR2xvYmFsVmlzVGVzdEZvcihyZWwpOworCXZhY3JlbC0+d3JhcGFyb3Vu ZF9mYWlsc2FmZV9jb3VudCA9IDA7CiAKIAkvKiBJbml0aWFsaXplIHN0YXRlIHVzZWQgdG8g dHJhY2sgb2xkZXN0IGV4dGFudCBYSUQvTVhJRCAqLwogCXZhY3JlbC0+TmV3UmVsZnJvemVu WGlkID0gdmFjcmVsLT5jdXRvZmZzLk9sZGVzdFhtaW47CkBAIC0xMDU3LDE0ICsxMjQwLDE5 IEBAIGhlYXBfdmFjdXVtX3JlbChSZWxhdGlvbiByZWwsIGNvbnN0IFZhY3V1bVBhcmFtcyAq cGFyYW1zLAogCSAqIHNvb24gaW4gY2FzZXMgd2hlcmUgdGhlIGZhaWxzYWZlIHByZXZlbnRl ZCBzaWduaWZpY2FudCBhbW91bnRzIG9mIGhlYXAKIAkgKiB2YWN1dW1pbmcuCiAJICovCisK KwkvKgorCSAqIE1ha2UgZ2VuZXJpYyBleHRlbmRlZCB2YWN1dW0gc3RhdHMgcmVwb3J0IGFu ZCBmaWxsIGhlYXAtc3BlY2lmaWMKKwkgKiBleHRlbmRlZCBzdGF0cyBmaWVsZHMuCisJICov CisJZXh0dmFjX3N0YXRzX2VuZCh2YWNyZWwtPnJlbCwgJmV4dFZhY0NvdW50ZXJzLCAmZXh0 VmFjUmVwb3J0LmNvbW1vbik7CiAJYWNjdW11bGF0ZV9oZWFwX3ZhY3V1bV9zdGF0aXN0aWNz KHZhY3JlbCwgJmV4dFZhY1JlcG9ydCk7Ci0JcGdzdGF0X3JlcG9ydF92YWN1dW1fZXh0c3Rh dHModmFjcmVsLT5yZWxvaWQsIHJlbC0+cmRfcmVsLT5yZWxpc3NoYXJlZCwKLQkJCQkJCQkJ ICAmZXh0VmFjUmVwb3J0KTsKKwlwZ3N0YXRfcmVwb3J0X3ZhY3V1bV9leHRzdGF0cyh2YWNy ZWwtPnJlbG9pZCwgcmVsLT5yZF9yZWwtPnJlbGlzc2hhcmVkLCAmZXh0VmFjUmVwb3J0KTsK IAlwZ3N0YXRfcmVwb3J0X3ZhY3V1bShyZWwsCiAJCQkJCQkgTWF4KHZhY3JlbC0+bmV3X2xp dmVfdHVwbGVzLCAwKSwKIAkJCQkJCSB2YWNyZWwtPnJlY2VudGx5X2RlYWRfdHVwbGVzICsK IAkJCQkJCSB2YWNyZWwtPm1pc3NlZF9kZWFkX3R1cGxlcywKLQkJCQkJCSBzdGFydHRpbWUp OworCQkJCQkJIGV4dFZhY0NvdW50ZXJzLnN0YXJ0dGltZSk7CiAJcGdzdGF0X3Byb2dyZXNz X2VuZF9jb21tYW5kKCk7CiAKIAlpZiAoaW5zdHJ1bWVudCkKQEAgLTEwNzIsNyArMTI2MCw3 IEBAIGhlYXBfdmFjdXVtX3JlbChSZWxhdGlvbiByZWwsIGNvbnN0IFZhY3V1bVBhcmFtcyAq cGFyYW1zLAogCQlUaW1lc3RhbXBUeiBlbmR0aW1lID0gR2V0Q3VycmVudFRpbWVzdGFtcCgp OwogCiAJCWlmICh2ZXJib3NlIHx8IHBhcmFtcy0+bG9nX3ZhY3V1bV9taW5fZHVyYXRpb24g PT0gMCB8fAotCQkJVGltZXN0YW1wRGlmZmVyZW5jZUV4Y2VlZHMoc3RhcnR0aW1lLCBlbmR0 aW1lLAorCQkJVGltZXN0YW1wRGlmZmVyZW5jZUV4Y2VlZHMoZXh0VmFjQ291bnRlcnMuc3Rh cnR0aW1lLCBlbmR0aW1lLAogCQkJCQkJCQkJICAgcGFyYW1zLT5sb2dfdmFjdXVtX21pbl9k dXJhdGlvbikpCiAJCXsKIAkJCWxvbmcJCXNlY3NfZHVyOwpAQCAtMTA4OCw3ICsxMjc2LDcg QEAgaGVhcF92YWN1dW1fcmVsKFJlbGF0aW9uIHJlbCwgY29uc3QgVmFjdXVtUGFyYW1zICpw YXJhbXMsCiAJCQlpbnQ2NAkJdG90YWxfYmxrc19yZWFkOwogCQkJaW50NjQJCXRvdGFsX2Js a3NfZGlydGllZDsKIAotCQkJVGltZXN0YW1wRGlmZmVyZW5jZShzdGFydHRpbWUsIGVuZHRp bWUsICZzZWNzX2R1ciwgJnVzZWNzX2R1cik7CisJCQlUaW1lc3RhbXBEaWZmZXJlbmNlKGV4 dFZhY0NvdW50ZXJzLnN0YXJ0dGltZSwgZW5kdGltZSwgJnNlY3NfZHVyLCAmdXNlY3NfZHVy KTsKIAkJCW1lbXNldCgmd2FsdXNhZ2UsIDAsIHNpemVvZihXYWxVc2FnZSkpOwogCQkJV2Fs VXNhZ2VBY2N1bURpZmYoJndhbHVzYWdlLCAmcGdXYWxVc2FnZSwgJnN0YXJ0d2FsdXNhZ2Up OwogCQkJbWVtc2V0KCZidWZmZXJ1c2FnZSwgMCwgc2l6ZW9mKEJ1ZmZlclVzYWdlKSk7CkBA IC0xNjk4LDcgKzE4ODYsOCBAQCBsYXp5X3NjYW5faGVhcChMVlJlbFN0YXRlICp2YWNyZWwp CiAJICogUmVwb3J0IHRoZSBwZXItaW5kZXggZXh0ZW5kZWQgdmFjdXVtIHN0YXRpc3RpY3Mg YWNjdW11bGF0ZWQgb3ZlciBhbGwKIAkgKiBidWxrZGVsZXRlIGFuZCBjbGVhbnVwIHBhc3Nl cywgZXhhY3RseSBvbmNlIHBlciBpbmRleC4gIFRoZSBwYXJhbGxlbAogCSAqIHBhdGggcmVw b3J0cyBpdHMgRFNNLXJlc2lkZW50IHRvdGFscyBmcm9tIHBhcmFsbGVsX3ZhY3V1bV9lbmQo KSBpbnN0ZWFkLAotCSAqIHNvIG9ubHkgZG8gaXQgaGVyZSB3aGVuIGluZGV4IHZhY3V1bWlu ZyByYW4gaW4gdGhlIGxlYWRlci4KKwkgKiBzbyBvbmx5IGRvIGl0IGhlcmUgd2hlbiBpbmRl eCB2YWN1dW1pbmcgcmFuIGluIHRoZSBsZWFkZXIuICBwdnMgaXMgc3RpbGwKKwkgKiBhbGl2 ZSBhdCB0aGlzIHBvaW50IChpdCBpcyB0b3JuIGRvd24gbGF0ZXIgaW4gZGVhZF9pdGVtc19j bGVhbnVwKCkpLgogCSAqLwogCWlmICh2YWNyZWwtPm5pbmRleGVzID4gMCAmJiAhUGFyYWxs ZWxWYWN1dW1Jc0FjdGl2ZSh2YWNyZWwpKQogCQlyZXBvcnRfaW5kZXhfdmFjdXVtX2V4dHN0 YXRzKHZhY3JlbCk7CkBAIC0yNjE5LDcgKzI4MDgsNyBAQCBsYXp5X3ZhY3V1bV9hbGxfaW5k ZXhlcyhMVlJlbFN0YXRlICp2YWNyZWwpCiAKIAkJCXZhY3JlbC0+aW5kc3RhdHNbaWR4XSA9 IGxhenlfdmFjdXVtX29uZV9pbmRleChpbmRyZWwsIGlzdGF0LAogCQkJCQkJCQkJCQkJCQkg IG9sZF9saXZlX3R1cGxlcywKLQkJCQkJCQkJCQkJCQkJICB2YWNyZWwpOworCQkJCQkJCQkJ CQkJCQkgIHZhY3JlbCwgaWR4KTsKIAogCQkJLyogUmVwb3J0IHRoZSBudW1iZXIgb2YgaW5k ZXhlcyB2YWN1dW1lZCAqLwogCQkJcGdzdGF0X3Byb2dyZXNzX3VwZGF0ZV9wYXJhbShQUk9H UkVTU19WQUNVVU1fSU5ERVhFU19QUk9DRVNTRUQsCkBAIC0yNjM1LDExICsyODI0LDIxIEBA IGxhenlfdmFjdXVtX2FsbF9pbmRleGVzKExWUmVsU3RhdGUgKnZhY3JlbCkKIAl9CiAJZWxz ZQogCXsKKwkJTFZFeHRTdGF0Q291bnRlcnMgY291bnRlcnM7CisJCVBnU3RhdF9WYWN1dW1S ZWxhdGlvbkNvdW50cyBleHRWYWNSZXBvcnQ7CisKKwkJbWVtc2V0KCZleHRWYWNSZXBvcnQu Y29tbW9uLCAwLCBzaXplb2YoUGdTdGF0X0NvbW1vbkNvdW50cykpOworCisJCWV4dHZhY19z dGF0c19zdGFydCh2YWNyZWwtPnJlbCwgJmNvdW50ZXJzKTsKKwogCQkvKiBPdXRzb3VyY2Ug ZXZlcnl0aGluZyB0byBwYXJhbGxlbCB2YXJpYW50ICovCiAJCXBhcmFsbGVsX3ZhY3V1bV9i dWxrZGVsX2FsbF9pbmRleGVzKHZhY3JlbC0+cHZzLCBvbGRfbGl2ZV90dXBsZXMsCiAJCQkJ CQkJCQkJCXZhY3JlbC0+bnVtX2luZGV4X3NjYW5zLAogCQkJCQkJCQkJCQkmKHZhY3JlbC0+ d29ya2VyX3VzYWdlLnZhY3V1bSkpOwogCisJCWV4dHZhY19zdGF0c19lbmQodmFjcmVsLT5y ZWwsICZjb3VudGVycywgJmV4dFZhY1JlcG9ydC5jb21tb24pOworCQlhY2N1bXVsYXRlX2lk eHNfdmFjdXVtX3N0YXRpc3RpY3ModmFjcmVsLCAmZXh0VmFjUmVwb3J0KTsKKwogCQkvKgog CQkgKiBEbyBhIHBvc3RjaGVjayB0byBjb25zaWRlciBhcHBseWluZyB3cmFwYXJvdW5kIGZh aWxzYWZlIG5vdy4gIE5vdGUKIAkJICogdGhhdCBwYXJhbGxlbCBWQUNVVU0gb25seSBnZXRz IHRoZSBwcmVjaGVjayBhbmQgdGhpcyBwb3N0Y2hlY2suCkBAIC0yOTg3LDYgKzMxODYsNyBA QCBsYXp5X2NoZWNrX3dyYXBhcm91bmRfZmFpbHNhZmUoTFZSZWxTdGF0ZSAqdmFjcmVsKQog CQlpbnQ2NAkJcHJvZ3Jlc3NfdmFsWzNdID0gezAsIDAsIFBST0dSRVNTX1ZBQ1VVTV9NT0RF X0ZBSUxTQUZFfTsKIAogCQlWYWN1dW1GYWlsc2FmZUFjdGl2ZSA9IHRydWU7CisJCXZhY3Jl bC0+d3JhcGFyb3VuZF9mYWlsc2FmZV9jb3VudCsrOwogCiAJCS8qCiAJCSAqIEFiYW5kb24g dXNlIG9mIGEgYnVmZmVyIGFjY2VzcyBzdHJhdGVneSB0byBhbGxvdyB1c2Ugb2YgYWxsIG9m CkBAIC0zMDYwLDcgKzMyNjAsNyBAQCBsYXp5X2NsZWFudXBfYWxsX2luZGV4ZXMoTFZSZWxT dGF0ZSAqdmFjcmVsKQogCiAJCQl2YWNyZWwtPmluZHN0YXRzW2lkeF0gPQogCQkJCWxhenlf Y2xlYW51cF9vbmVfaW5kZXgoaW5kcmVsLCBpc3RhdCwgcmVsdHVwbGVzLAotCQkJCQkJCQkJ ICAgZXN0aW1hdGVkX2NvdW50LCB2YWNyZWwpOworCQkJCQkJCQkJICAgZXN0aW1hdGVkX2Nv dW50LCB2YWNyZWwsIGlkeCk7CiAKIAkJCS8qIFJlcG9ydCB0aGUgbnVtYmVyIG9mIGluZGV4 ZXMgY2xlYW5lZCB1cCAqLwogCQkJcGdzdGF0X3Byb2dyZXNzX3VwZGF0ZV9wYXJhbShQUk9H UkVTU19WQUNVVU1fSU5ERVhFU19QUk9DRVNTRUQsCkBAIC0zMDY5LDExICszMjY5LDIxIEBA IGxhenlfY2xlYW51cF9hbGxfaW5kZXhlcyhMVlJlbFN0YXRlICp2YWNyZWwpCiAJfQogCWVs c2UKIAl7CisJCUxWRXh0U3RhdENvdW50ZXJzIGNvdW50ZXJzOworCQlQZ1N0YXRfVmFjdXVt UmVsYXRpb25Db3VudHMgZXh0VmFjUmVwb3J0OworCisJCW1lbXNldCgmZXh0VmFjUmVwb3J0 LmNvbW1vbiwgMCwgc2l6ZW9mKFBnU3RhdF9Db21tb25Db3VudHMpKTsKKworCQlleHR2YWNf c3RhdHNfc3RhcnQodmFjcmVsLT5yZWwsICZjb3VudGVycyk7CisKIAkJLyogT3V0c291cmNl IGV2ZXJ5dGhpbmcgdG8gcGFyYWxsZWwgdmFyaWFudCAqLwogCQlwYXJhbGxlbF92YWN1dW1f Y2xlYW51cF9hbGxfaW5kZXhlcyh2YWNyZWwtPnB2cywgcmVsdHVwbGVzLAogCQkJCQkJCQkJ CQl2YWNyZWwtPm51bV9pbmRleF9zY2FucywKIAkJCQkJCQkJCQkJZXN0aW1hdGVkX2NvdW50 LAogCQkJCQkJCQkJCQkmKHZhY3JlbC0+d29ya2VyX3VzYWdlLmNsZWFudXApKTsKKworCQll eHR2YWNfc3RhdHNfZW5kKHZhY3JlbC0+cmVsLCAmY291bnRlcnMsICZleHRWYWNSZXBvcnQu Y29tbW9uKTsKKwkJYWNjdW11bGF0ZV9pZHhzX3ZhY3V1bV9zdGF0aXN0aWNzKHZhY3JlbCwg JmV4dFZhY1JlcG9ydCk7CiAJfQogCiAJLyogUmVzZXQgdGhlIHByb2dyZXNzIGNvdW50ZXJz ICovCkBAIC0zMDk1LDEwICszMzA1LDIyIEBAIGxhenlfY2xlYW51cF9hbGxfaW5kZXhlcyhM VlJlbFN0YXRlICp2YWNyZWwpCiAgKi8KIHN0YXRpYyBJbmRleEJ1bGtEZWxldGVSZXN1bHQg KgogbGF6eV92YWN1dW1fb25lX2luZGV4KFJlbGF0aW9uIGluZHJlbCwgSW5kZXhCdWxrRGVs ZXRlUmVzdWx0ICppc3RhdCwKLQkJCQkJICBkb3VibGUgcmVsdHVwbGVzLCBMVlJlbFN0YXRl ICp2YWNyZWwpCisJCQkJCSAgZG91YmxlIHJlbHR1cGxlcywgTFZSZWxTdGF0ZSAqdmFjcmVs LCBpbnQgaWR4KQogewogCUluZGV4VmFjdXVtSW5mbyBpdmluZm87CiAJTFZTYXZlZEVycklu Zm8gc2F2ZWRfZXJyX2luZm87CisJTFZFeHRTdGF0Q291bnRlcnNJZHggZXh0VmFjQ291bnRl cnM7CisJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzIGV4dFZhY1JlcG9ydDsKKworCS8q CisJICogWmVybyB0aGUgcmVwb3J0IHVwIGZyb250OiBleHR2YWNfc3RhdHNfZW5kX2lkeCgp IGxlYXZlcyBpdCB1bnRvdWNoZWQKKwkgKiB3aGVuIHN0YXRpc3RpY3MgdHJhY2tpbmcgaXMg ZGlzYWJsZWQsIGJ1dCB0aGUgYWNjdW11bGF0b3JzIGJlbG93IHJlYWQgaXQKKwkgKiB1bmNv bmRpdGlvbmFsbHkuCisJICovCisJbWVtc2V0KCZleHRWYWNSZXBvcnQsIDAsIHNpemVvZihQ Z1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMpKTsKKworCS8qIFNldCBpbml0aWFsIHN0YXRp c3RpY3MgdmFsdWVzIHRvIGdhdGhlciB2YWN1dW0gc3RhdGlzdGljcyBmb3IgdGhlIGluZGV4 ICovCisJZXh0dmFjX3N0YXRzX3N0YXJ0X2lkeChpbmRyZWwsIGlzdGF0LCAmZXh0VmFjQ291 bnRlcnMpOwogCiAJaXZpbmZvLmluZGV4ID0gaW5kcmVsOwogCWl2aW5mby5oZWFwcmVsID0g dmFjcmVsLT5yZWw7CkBAIC0zMTI1LDYgKzMzNDcsMTkgQEAgbGF6eV92YWN1dW1fb25lX2lu ZGV4KFJlbGF0aW9uIGluZHJlbCwgSW5kZXhCdWxrRGVsZXRlUmVzdWx0ICppc3RhdCwKIAlp c3RhdCA9IHZhY19idWxrZGVsX29uZV9pbmRleCgmaXZpbmZvLCBpc3RhdCwgdmFjcmVsLT5k ZWFkX2l0ZW1zLAogCQkJCQkJCQkgIHZhY3JlbC0+ZGVhZF9pdGVtc19pbmZvKTsKIAorCS8q IE1ha2UgZXh0ZW5kZWQgdmFjdXVtIHN0YXRzIHJlcG9ydCBmb3IgaW5kZXggKi8KKwlleHR2 YWNfc3RhdHNfZW5kX2lkeChpbmRyZWwsIGlzdGF0LCAmZXh0VmFjQ291bnRlcnMsICZleHRW YWNSZXBvcnQpOworCisJLyogVGhpcyBpbmRleCdzIHRpbWUgbXVzdCBiZSBleGNsdWRlZCBm cm9tIHRoZSBwYXJlbnQgaGVhcCdzIHRvdGFscyAqLworCWFjY3VtdWxhdGVfaWR4c192YWN1 dW1fc3RhdGlzdGljcyh2YWNyZWwsICZleHRWYWNSZXBvcnQpOworCisJLyoKKwkgKiBBY2N1 bXVsYXRlIHRoaXMgcGFzcyBpbnRvIHRoZSBpbmRleCdzIHJ1bm5pbmcgdG90YWxzLiAgVGhl eSBhcmUgcmVwb3J0ZWQKKwkgKiB0byB0aGUgY3VtdWxhdGl2ZSBzdGF0cyBzeXN0ZW0gb25j ZSBwZXIgaW5kZXggYXQgdGhlIGVuZCBvZiB0aGUgdmFjdXVtLgorCSAqLworCWV4dHZhY19h Y2N1bXVsYXRlX2lkeF9yZXBvcnQoJnZhY3JlbC0+ZXh0VmFjSWR4UmVwb3J0c1tpZHhdLCAm ZXh0VmFjUmVwb3J0KTsKKwl2YWNyZWwtPmV4dFZhY0lkeFRvdWNoZWRbaWR4XSA9IHRydWU7 CisKIAkvKiBSZXZlcnQgdG8gdGhlIHByZXZpb3VzIHBoYXNlIGluZm9ybWF0aW9uIGZvciBl cnJvciB0cmFjZWJhY2sgKi8KIAlyZXN0b3JlX3ZhY3V1bV9lcnJvcl9pbmZvKHZhY3JlbCwg JnNhdmVkX2Vycl9pbmZvKTsKIAlwZnJlZSh2YWNyZWwtPmluZG5hbWUpOwpAQCAtMzE0NSwx MCArMzM4MCwyMiBAQCBsYXp5X3ZhY3V1bV9vbmVfaW5kZXgoUmVsYXRpb24gaW5kcmVsLCBJ bmRleEJ1bGtEZWxldGVSZXN1bHQgKmlzdGF0LAogc3RhdGljIEluZGV4QnVsa0RlbGV0ZVJl c3VsdCAqCiBsYXp5X2NsZWFudXBfb25lX2luZGV4KFJlbGF0aW9uIGluZHJlbCwgSW5kZXhC dWxrRGVsZXRlUmVzdWx0ICppc3RhdCwKIAkJCQkJICAgZG91YmxlIHJlbHR1cGxlcywgYm9v bCBlc3RpbWF0ZWRfY291bnQsCi0JCQkJCSAgIExWUmVsU3RhdGUgKnZhY3JlbCkKKwkJCQkJ ICAgTFZSZWxTdGF0ZSAqdmFjcmVsLCBpbnQgaWR4KQogewogCUluZGV4VmFjdXVtSW5mbyBp dmluZm87CiAJTFZTYXZlZEVyckluZm8gc2F2ZWRfZXJyX2luZm87CisJTFZFeHRTdGF0Q291 bnRlcnNJZHggZXh0VmFjQ291bnRlcnM7CisJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRz IGV4dFZhY1JlcG9ydDsKKworCS8qCisJICogWmVybyB0aGUgcmVwb3J0IHVwIGZyb250OiBl eHR2YWNfc3RhdHNfZW5kX2lkeCgpIGxlYXZlcyBpdCB1bnRvdWNoZWQKKwkgKiB3aGVuIHN0 YXRpc3RpY3MgdHJhY2tpbmcgaXMgZGlzYWJsZWQsIGJ1dCB0aGUgYWNjdW11bGF0b3JzIGJl bG93IHJlYWQgaXQKKwkgKiB1bmNvbmRpdGlvbmFsbHkuCisJICovCisJbWVtc2V0KCZleHRW YWNSZXBvcnQsIDAsIHNpemVvZihQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMpKTsKKwor CS8qIFNldCBpbml0aWFsIHN0YXRpc3RpY3MgdmFsdWVzIHRvIGdhdGhlciB2YWN1dW0gc3Rh dGlzdGljcyBmb3IgdGhlIGluZGV4ICovCisJZXh0dmFjX3N0YXRzX3N0YXJ0X2lkeChpbmRy ZWwsIGlzdGF0LCAmZXh0VmFjQ291bnRlcnMpOwogCiAJaXZpbmZvLmluZGV4ID0gaW5kcmVs OwogCWl2aW5mby5oZWFwcmVsID0gdmFjcmVsLT5yZWw7CkBAIC0zMTc0LDYgKzM0MjEsMTkg QEAgbGF6eV9jbGVhbnVwX29uZV9pbmRleChSZWxhdGlvbiBpbmRyZWwsIEluZGV4QnVsa0Rl bGV0ZVJlc3VsdCAqaXN0YXQsCiAKIAlpc3RhdCA9IHZhY19jbGVhbnVwX29uZV9pbmRleCgm aXZpbmZvLCBpc3RhdCk7CiAKKwkvKiBNYWtlIGV4dGVuZGVkIHZhY3V1bSBzdGF0cyByZXBv cnQgZm9yIGluZGV4ICovCisJZXh0dmFjX3N0YXRzX2VuZF9pZHgoaW5kcmVsLCBpc3RhdCwg JmV4dFZhY0NvdW50ZXJzLCAmZXh0VmFjUmVwb3J0KTsKKworCS8qIFRoaXMgaW5kZXgncyB0 aW1lIG11c3QgYmUgZXhjbHVkZWQgZnJvbSB0aGUgcGFyZW50IGhlYXAncyB0b3RhbHMgKi8K KwlhY2N1bXVsYXRlX2lkeHNfdmFjdXVtX3N0YXRpc3RpY3ModmFjcmVsLCAmZXh0VmFjUmVw b3J0KTsKKworCS8qCisJICogQWNjdW11bGF0ZSB0aGlzIHBhc3MgaW50byB0aGUgaW5kZXgn cyBydW5uaW5nIHRvdGFscy4gIFRoZXkgYXJlIHJlcG9ydGVkCisJICogdG8gdGhlIGN1bXVs YXRpdmUgc3RhdHMgc3lzdGVtIG9uY2UgcGVyIGluZGV4IGF0IHRoZSBlbmQgb2YgdGhlIHZh Y3V1bS4KKwkgKi8KKwlleHR2YWNfYWNjdW11bGF0ZV9pZHhfcmVwb3J0KCZ2YWNyZWwtPmV4 dFZhY0lkeFJlcG9ydHNbaWR4XSwgJmV4dFZhY1JlcG9ydCk7CisJdmFjcmVsLT5leHRWYWNJ ZHhUb3VjaGVkW2lkeF0gPSB0cnVlOworCiAJLyogUmV2ZXJ0IHRvIHRoZSBwcmV2aW91cyBw aGFzZSBpbmZvcm1hdGlvbiBmb3IgZXJyb3IgdHJhY2ViYWNrICovCiAJcmVzdG9yZV92YWN1 dW1fZXJyb3JfaW5mbyh2YWNyZWwsICZzYXZlZF9lcnJfaW5mbyk7CiAJcGZyZWUodmFjcmVs LT5pbmRuYW1lKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3Zp ZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRleCAy MWZhODQxZjVhLi5iNGZkOGY5MGM2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9n L3N5c3RlbV92aWV3cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmll d3Muc3FsCkBAIC0xNTc1LDcgKzE1NzUsMTEgQEAgQ1JFQVRFIFZJRVcgcGdfc3RhdF92YWN1 dW1fdGFibGVzIEFTCiAgICAgICAgIFMubWlzc2VkX2RlYWRfdHVwbGVzIEFTIG1pc3NlZF9k ZWFkX3R1cGxlcywKICAgICAgICAgUy52bV9uZXdfZnJvemVuX3BhZ2VzIEFTIHZtX25ld19m cm96ZW5fcGFnZXMsCiAgICAgICAgIFMudm1fbmV3X3Zpc2libGVfcGFnZXMgQVMgdm1fbmV3 X3Zpc2libGVfcGFnZXMsCi0gICAgICAgIFMudm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2Vz IEFTIHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcworICAgICAgICBTLnZtX25ld192aXNp YmxlX2Zyb3plbl9wYWdlcyBBUyB2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMsCisgICAg ICAgIFMudG90YWxfYmxrc19yZWFkIEFTIHRvdGFsX2Jsa3NfcmVhZCwKKyAgICAgICAgUy50 b3RhbF9ibGtzX2hpdCBBUyB0b3RhbF9ibGtzX2hpdCwKKyAgICAgICAgUy50b3RhbF9ibGtz X2RpcnRpZWQgQVMgdG90YWxfYmxrc19kaXJ0aWVkLAorICAgICAgICBTLnRvdGFsX2Jsa3Nf d3JpdHRlbiBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4KIAogICAgIEZST00gcGdfY2xhc3MgQyBK T0lOCiAgICAgICAgICAgICBwZ19uYW1lc3BhY2UgTiBPTiBOLm9pZCA9IEMucmVsbmFtZXNw YWNlLApAQCAtMTU5MSw3ICsxNTk1LDEyIEBAIENSRUFURSBWSUVXIHBnX3N0YXRfdmFjdXVt X2luZGV4ZXMgQVMKICAgICAgICAgICAgIEkucmVsbmFtZSBBUyBpbmRleHJlbG5hbWUsCiAK ICAgICAgICAgICAgIFMucGFnZXNfZGVsZXRlZCBBUyBwYWdlc19kZWxldGVkLAotICAgICAg ICAgICAgUy50dXBsZXNfZGVsZXRlZCBBUyB0dXBsZXNfZGVsZXRlZAorICAgICAgICAgICAg Uy50dXBsZXNfZGVsZXRlZCBBUyB0dXBsZXNfZGVsZXRlZCwKKworICAgICAgICAgICAgUy50 b3RhbF9ibGtzX3JlYWQgQVMgdG90YWxfYmxrc19yZWFkLAorICAgICAgICAgICAgUy50b3Rh bF9ibGtzX2hpdCBBUyB0b3RhbF9ibGtzX2hpdCwKKyAgICAgICAgICAgIFMudG90YWxfYmxr c19kaXJ0aWVkIEFTIHRvdGFsX2Jsa3NfZGlydGllZCwKKyAgICAgICAgICAgIFMudG90YWxf Ymxrc193cml0dGVuIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbgogICAgIEZST00KICAgICAgICAg ICAgIHBnX2NsYXNzIEMgSk9JTgogICAgICAgICAgICAgcGdfaW5kZXggWCBPTiBDLm9pZCA9 IFguaW5kcmVsaWQgSk9JTgpAQCAtMTU5OSwzICsxNjA4LDE4IEBAIENSRUFURSBWSUVXIHBn X3N0YXRfdmFjdXVtX2luZGV4ZXMgQVMKICAgICAgICAgICAgIExFRlQgSk9JTiBwZ19uYW1l c3BhY2UgTiBPTiAoTi5vaWQgPSBDLnJlbG5hbWVzcGFjZSksCiAgICAgICAgICAgICBMQVRF UkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKEkub2lkKSBTCiAgICAgV0hFUkUgQy5y ZWxraW5kIElOICgncicsICd0JywgJ20nKTsKKworQ1JFQVRFIFZJRVcgcGdfc3RhdF92YWN1 dW1fZGF0YWJhc2UgQVMKKyAgICBTRUxFQ1QKKyAgICAgICAgICAgIEQub2lkIEFTIGRib2lk LAorICAgICAgICAgICAgRC5kYXRuYW1lIEFTIGRibmFtZSwKKworICAgICAgICAgICAgUy5l cnJvcnMgQVMgZXJyb3JzLAorCisgICAgICAgICAgICBTLmRiX2Jsa3NfcmVhZCBBUyBkYl9i bGtzX3JlYWQsCisgICAgICAgICAgICBTLmRiX2Jsa3NfaGl0IEFTIGRiX2Jsa3NfaGl0LAor ICAgICAgICAgICAgUy50b3RhbF9ibGtzX2RpcnRpZWQgQVMgdG90YWxfYmxrc19kaXJ0aWVk LAorICAgICAgICAgICAgUy50b3RhbF9ibGtzX3dyaXR0ZW4gQVMgdG90YWxfYmxrc193cml0 dGVuCisgICAgRlJPTQorICAgICAgICAgICAgcGdfZGF0YWJhc2UgRCwKKyAgICAgICAgICAg IExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlKEQub2lkKSBTOwpkaWZmIC0t Z2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvZGJjb21tYW5kcy5jIGIvc3JjL2JhY2tlbmQv Y29tbWFuZHMvZGJjb21tYW5kcy5jCmluZGV4IGYwODE5ZDE1YWIuLjQ5YzNiNDBjMzUgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2RiY29tbWFuZHMuYworKysgYi9zcmMv YmFja2VuZC9jb21tYW5kcy9kYmNvbW1hbmRzLmMKQEAgLTE4MzAsNiArMTgzMCw3IEBAIGRy b3BkYihjb25zdCBjaGFyICpkYm5hbWUsIGJvb2wgbWlzc2luZ19vaywgYm9vbCBmb3JjZSkK IAkgKiBUZWxsIHRoZSBjdW11bGF0aXZlIHN0YXRzIHN5c3RlbSB0byBmb3JnZXQgaXQgaW1t ZWRpYXRlbHksIHRvby4KIAkgKi8KIAlwZ3N0YXRfZHJvcF9kYXRhYmFzZShkYl9pZCk7CisJ cGdzdGF0X2Ryb3BfdmFjdXVtX2RhdGFiYXNlKGRiX2lkKTsKIAogCS8qCiAJICogRXhjZXB0 IGZvciB0aGUgZGVsZXRpb24gb2YgdGhlIGNhdGFsb2cgcm93LCBzdWJzZXF1ZW50IGFjdGlv bnMgYXJlIG5vdApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVtLmMg Yi9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYwppbmRleCBhNGFiYjI5Y2Y2Li5hYWNl Y2VlNThhIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYworKysg Yi9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW0uYwpAQCAtMTE4LDYgKzExOCw5IEBAIHBn X2F0b21pY191aW50MzIgKlZhY3V1bVNoYXJlZENvc3RCYWxhbmNlID0gTlVMTDsKIHBnX2F0 b21pY191aW50MzIgKlZhY3V1bUFjdGl2ZU5Xb3JrZXJzID0gTlVMTDsKIGludAkJCVZhY3V1 bUNvc3RCYWxhbmNlTG9jYWwgPSAwOwogCisvKiBDdW11bGF0aXZlIHN0b3JhZ2UgdG8gcmVw b3J0IHRvdGFsIHZhY3V1bSBkZWxheSB0aW1lLiAqLworZG91YmxlCQlWYWN1dW1EZWxheVRp bWUgPSAwOwkvKiBtc2VjLiAqLworCiAvKiBub24tZXhwb3J0IGZ1bmN0aW9uIHByb3RvdHlw ZXMgKi8KIHN0YXRpYyBMaXN0ICpleHBhbmRfdmFjdXVtX3JlbChWYWN1dW1SZWxhdGlvbiAq dnJlbCwKIAkJCQkJCQkgICBNZW1vcnlDb250ZXh0IHZhY19jb250ZXh0LCBpbnQgb3B0aW9u cyk7CkBAIC0yNTY2LDYgKzI1NjksNyBAQCB2YWN1dW1fZGVsYXlfcG9pbnQoYm9vbCBpc19h bmFseXplKQogCQkJZXhpdCgxKTsKIAogCQlWYWN1dW1Db3N0QmFsYW5jZSA9IDA7CisJCVZh Y3V1bURlbGF5VGltZSArPSBtc2VjOwogCiAJCS8qCiAJCSAqIEJhbGFuY2UgYW5kIHVwZGF0 ZSBsaW1pdCB2YWx1ZXMgZm9yIGF1dG92YWN1dW0gd29ya2Vycy4gV2UgbXVzdCBkbwpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVtcGFyYWxsZWwuYyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMKaW5kZXggNzcyNWM0ZWNjMS4uNmMy Mjk1NjRlMCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmFjdXVtcGFyYWxs ZWwuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1dW1wYXJhbGxlbC5jCkBAIC0x MzAzLDYgKzEzMDMsNyBAQCBwYXJhbGxlbF92YWN1dW1fbWFpbihkc21fc2VnbWVudCAqc2Vn LCBzaG1fdG9jICp0b2MpCiAJCVZhY3V1bVVwZGF0ZUNvc3RzKCk7CiAKIAlWYWN1dW1Db3N0 QmFsYW5jZSA9IDA7CisJVmFjdXVtRGVsYXlUaW1lID0gMDsKIAlWYWN1dW1Db3N0QmFsYW5j ZUxvY2FsID0gMDsKIAlWYWN1dW1TaGFyZWRDb3N0QmFsYW5jZSA9ICYoc2hhcmVkLT5jb3N0 X2JhbGFuY2UpOwogCVZhY3V1bUFjdGl2ZU5Xb3JrZXJzID0gJihzaGFyZWQtPmFjdGl2ZV9u d29ya2Vycyk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0 YXQuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdC5jCmluZGV4IDRlOTUw NjcyZTIuLjM3NDFlNGU1NGEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2 aXR5L3Bnc3RhdC5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdC5j CkBAIC01MDAsNiArNTAwLDIxIEBAIHN0YXRpYyBjb25zdCBQZ1N0YXRfS2luZEluZm8gcGdz dGF0X2tpbmRfYnVpbHRpbl9pbmZvc1tQR1NUQVRfS0lORF9CVUlMVElOX1NJWkVdCiAJCS5y ZXNldF9hbGxfY2IgPSBwZ3N0YXRfd2FsX3Jlc2V0X2FsbF9jYiwKIAkJLnNuYXBzaG90X2Ni ID0gcGdzdGF0X3dhbF9zbmFwc2hvdF9jYiwKIAl9LAorCVtQR1NUQVRfS0lORF9WQUNVVU1f REJdID0geworCQkubmFtZSA9ICJ2YWN1dW0gc3RhdGlzdGljcyIsCisKKwkJLmZpeGVkX2Ft b3VudCA9IGZhbHNlLAorCQkud3JpdGVfdG9fZmlsZSA9IHRydWUsCisJCS8qIHNvIHBnX3N0 YXRfZGF0YWJhc2UgZW50cmllcyBjYW4gYmUgc2VlbiBpbiBhbGwgZGF0YWJhc2VzICovCisJ CS5hY2Nlc3NlZF9hY3Jvc3NfZGF0YWJhc2VzID0gdHJ1ZSwKKworCQkuc2hhcmVkX3NpemUg PSBzaXplb2YoUGdTdGF0U2hhcmVkX1ZhY3V1bURCKSwKKwkJLnNoYXJlZF9kYXRhX29mZiA9 IG9mZnNldG9mKFBnU3RhdFNoYXJlZF9WYWN1dW1EQiwgc3RhdHMpLAorCQkuc2hhcmVkX2Rh dGFfbGVuID0gc2l6ZW9mKCgoUGdTdGF0U2hhcmVkX1ZhY3V1bURCICopIDApLT5zdGF0cyks CisJCS5wZW5kaW5nX3NpemUgPSBzaXplb2YoUGdTdGF0X1ZhY3V1bURCQ291bnRzKSwKKwor CQkuZmx1c2hfcGVuZGluZ19jYiA9IHBnc3RhdF92YWN1dW1fZGJfZmx1c2hfY2IsCisJfSwK IAlbUEdTVEFUX0tJTkRfVkFDVVVNX1JFTEFUSU9OXSA9IHsKIAkJLm5hbWUgPSAidmFjdXVt IHN0YXRpc3RpY3MiLAogCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0 eS9wZ3N0YXRfZGF0YWJhc2UuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3Rh dF9kYXRhYmFzZS5jCmluZGV4IDdmM2JjMDE2NTkuLmNkZmY2MTkyMDAgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9kYXRhYmFzZS5jCisrKyBiL3Ny Yy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9kYXRhYmFzZS5jCkBAIC00Niw2ICs0 NiwxNSBAQCBwZ3N0YXRfZHJvcF9kYXRhYmFzZShPaWQgZGF0YWJhc2VpZCkKIAlwZ3N0YXRf ZHJvcF90cmFuc2FjdGlvbmFsKFBHU1RBVF9LSU5EX0RBVEFCQVNFLCBkYXRhYmFzZWlkLCBJ bnZhbGlkT2lkKTsKIH0KIAorLyoKKyAqIFJlbW92ZSBlbnRyeSBmb3IgdGhlIGRhdGFiYXNl IGJlaW5nIGRyb3BwZWQuCisgKi8KK3ZvaWQKK3Bnc3RhdF9kcm9wX3ZhY3V1bV9kYXRhYmFz ZShPaWQgZGF0YWJhc2VpZCkKK3sKKwlwZ3N0YXRfZHJvcF90cmFuc2FjdGlvbmFsKFBHU1RB VF9LSU5EX1ZBQ1VVTV9EQiwgZGF0YWJhc2VpZCwgSW52YWxpZE9pZCk7Cit9CisKIC8qCiAg KiBDYWxsZWQgZnJvbSBhdXRvdmFjdXVtLmMgdG8gcmVwb3J0IHN0YXJ0dXAgb2YgYW4gYXV0 b3ZhY3V1bSBwcm9jZXNzLgogICogV2UgYXJlIGNhbGxlZCBiZWZvcmUgSW5pdFBvc3RncmVz IGlzIGRvbmUsIHNvIGNhbid0IHJlbHkgb24gTXlEYXRhYmFzZUlkOwpkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jIGIvc3JjL2JhY2tl bmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jCmluZGV4IDRmNmNiZmQ1NDAuLjIx Njc4YmY2NDYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3Rh dF92YWN1dW0uYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFj dXVtLmMKQEAgLTcsNyArNyw3IEBACiAgKiBrZXB0IHNlcGFyYXRlIGZyb20gcGdzdGF0X3Jl bGF0aW9uLmMgYW5kIHBnc3RhdF9kYXRhYmFzZS5jIHRvIHJlZHVjZSB0aGUKICAqIG1lbW9y eSBmb290cHJpbnQgb2YgdGhlIHJlZ3VsYXIgcmVsYXRpb24gYW5kIGRhdGFiYXNlIHN0YXRp c3RpY3M6IHZhY3V1bQogICogbWV0cmljcyByZXF1aXJlIHNpZ25pZmljYW50bHkgbW9yZSBz cGFjZSBwZXIgcmVsYXRpb24sIHNvIHRoZXkgbGl2ZSBpbiB0aGVpcgotICogb3duIFBHU1RB VF9LSU5EX1ZBQ1VVTV9SRUxBVElPTiBzdGF0cyBraW5kLgorICogb3duIFBHU1RBVF9LSU5E X1ZBQ1VVTV9SRUxBVElPTiBhbmQgUEdTVEFUX0tJTkRfVkFDVVVNX0RCIHN0YXRzIGtpbmRz LgogICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDI2LCBQb3N0Z3JlU1FMIEdsb2JhbCBE ZXZlbG9wbWVudCBHcm91cAogICoKQEAgLTIyLDE1ICsyMiwzMiBAQAogI2luY2x1ZGUgInV0 aWxzL21lbXV0aWxzLmgiCiAjaW5jbHVkZSAidXRpbHMvcGdzdGF0X2ludGVybmFsLmgiCiAK Ky8qIC0tLS0tLS0tLS0KKyAqIEdVQyBwYXJhbWV0ZXJzCisgKiAtLS0tLS0tLS0tCisgKi8K K2Jvb2wJCXBnc3RhdF90cmFja192YWN1dW1fc3RhdGlzdGljc19mb3JfcmVsYXRpb25zID0g ZmFsc2U7CisKKyNkZWZpbmUgQUNDVU1VTEFURV9GSUVMRChmaWVsZCkgKGRzdC0+ZmllbGQg Kz0gc3JjLT5maWVsZCkKICNkZWZpbmUgQUNDVU1VTEFURV9TVUJGSUVMRChzdWJzdHJ1Y3Qs IGZpZWxkKSAoZHN0LT5zdWJzdHJ1Y3QuZmllbGQgKz0gc3JjLT5zdWJzdHJ1Y3QuZmllbGQp CiAKIC8qCi0gKiBBY2N1bXVsYXRlIHRoZSBwZXItdGFibGUgZXh0ZW5kZWQgdmFjdXVtIGNv dW50ZXJzIGNvbGxlY3RlZCBzbyBmYXIuCi0gKgotICogT25seSB0aGUgY291bnRlcnMgZGVy aXZlZCBkaXJlY3RseSBmcm9tIHRoZSB2YWN1dW0ncyBvd24gYm9va2tlZXBpbmcgYXJlCi0g KiBzdW1tZWQgaGVyZS4gIFRoZSBidWZmZXIsIFdBTCBhbmQgdGltaW5nIGNvdW50ZXJzIChh bmQgdGhlIHBlci1pbmRleAotICogY291bnRlcnMpIGFyZSBhY2N1bXVsYXRlZCBieSBhZGRp dGlvbmFsIGNvZGUgYWRkZWQgdG9nZXRoZXIgd2l0aCB0aGUKLSAqIGhlbHBlcnMgdGhhdCBn YXRoZXIgdGhlbS4KKyAqIEFjY3VtdWxhdGUgdGhlIGNvdW50ZXJzIHRoYXQgYXJlIGNvbW1v biB0byBoZWFwIHJlbGF0aW9ucywgaW5kZXhlcyBhbmQKKyAqIGRhdGFiYXNlcy4KKyAqLwor c3RhdGljIHZvaWQKK3Bnc3RhdF9hY2N1bXVsYXRlX2NvbW1vbihQZ1N0YXRfQ29tbW9uQ291 bnRzICpkc3QsIGNvbnN0IFBnU3RhdF9Db21tb25Db3VudHMgKnNyYykKK3sKKwlBQ0NVTVVM QVRFX0ZJRUxEKHRvdGFsX2Jsa3NfcmVhZCk7CisJQUNDVU1VTEFURV9GSUVMRCh0b3RhbF9i bGtzX2hpdCk7CisJQUNDVU1VTEFURV9GSUVMRCh0b3RhbF9ibGtzX2RpcnRpZWQpOworCUFD Q1VNVUxBVEVfRklFTEQodG90YWxfYmxrc193cml0dGVuKTsKKworCUFDQ1VNVUxBVEVfRklF TEQodHVwbGVzX2RlbGV0ZWQpOworfQorCisvKgorICogQWNjdW11bGF0ZSBwZXItcmVsYXRp b24gKGhlYXAgb3IgaW5kZXgpIGV4dGVuZGVkIHZhY3V1bSBjb3VudGVycy4KICAqLwogc3Rh dGljIHZvaWQKIHBnc3RhdF9hY2N1bXVsYXRlX2V4dHZhY19zdGF0c19yZWxhdGlvbnMoUGdT dGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICpkc3QsCkBAIC00NiwxOSArNjMsMTkgQEAgcGdz dGF0X2FjY3VtdWxhdGVfZXh0dmFjX3N0YXRzX3JlbGF0aW9ucyhQZ1N0YXRfVmFjdXVtUmVs YXRpb25Db3VudHMgKmRzdCwKIAkJICAgc3JjLT50eXBlICE9IFBHU1RBVF9FWFRWQUNfREIg JiYKIAkJICAgc3JjLT50eXBlID09IGRzdC0+dHlwZSk7CiAKLQlBQ0NVTVVMQVRFX1NVQkZJ RUxEKGNvbW1vbiwgdHVwbGVzX2RlbGV0ZWQpOworCXBnc3RhdF9hY2N1bXVsYXRlX2NvbW1v bigmZHN0LT5jb21tb24sICZzcmMtPmNvbW1vbik7CiAKIAlpZiAoZHN0LT50eXBlID09IFBH U1RBVF9FWFRWQUNfVEFCTEUpCiAJewogCQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCBw YWdlc19zY2FubmVkKTsKIAkJQUNDVU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgcGFnZXNfcmVt b3ZlZCk7Ci0JCUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIHR1cGxlc19mcm96ZW4pOwot CQlBQ0NVTVVMQVRFX1NVQkZJRUxEKHRhYmxlLCByZWNlbnRseV9kZWFkX3R1cGxlcyk7Ci0J CUFDQ1VNVUxBVEVfU1VCRklFTEQodGFibGUsIG1pc3NlZF9kZWFkX3BhZ2VzKTsKLQkJQUND VU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgbWlzc2VkX2RlYWRfdHVwbGVzKTsKLQkJQUNDVU1V TEFURV9TVUJGSUVMRCh0YWJsZSwgdm1fbmV3X2Zyb3plbl9wYWdlcyk7CisJCQkJQUNDVU1V TEFURV9TVUJGSUVMRCh0YWJsZSwgdm1fbmV3X2Zyb3plbl9wYWdlcyk7CiAJCUFDQ1VNVUxB VEVfU1VCRklFTEQodGFibGUsIHZtX25ld192aXNpYmxlX3BhZ2VzKTsKIAkJQUNDVU1VTEFU RV9TVUJGSUVMRCh0YWJsZSwgdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzKTsKKwkJQUND VU1VTEFURV9TVUJGSUVMRCh0YWJsZSwgbWlzc2VkX2RlYWRfcGFnZXMpOworCQkJQUNDVU1V TEFURV9TVUJGSUVMRCh0YWJsZSwgdHVwbGVzX2Zyb3plbik7CisJCUFDQ1VNVUxBVEVfU1VC RklFTEQodGFibGUsIHJlY2VudGx5X2RlYWRfdHVwbGVzKTsKKwkJQUNDVU1VTEFURV9TVUJG SUVMRCh0YWJsZSwgbWlzc2VkX2RlYWRfdHVwbGVzKTsKIAl9CiAJZWxzZSBpZiAoZHN0LT50 eXBlID09IFBHU1RBVF9FWFRWQUNfSU5ERVgpCiAJewpAQCAtNjcsOCArODQsMjIgQEAgcGdz dGF0X2FjY3VtdWxhdGVfZXh0dmFjX3N0YXRzX3JlbGF0aW9ucyhQZ1N0YXRfVmFjdXVtUmVs YXRpb25Db3VudHMgKmRzdCwKIH0KIAogLyoKLSAqIFJlcG9ydCB0aGF0IHRoZSByZWxhdGlv biB3YXMganVzdCB2YWN1dW1lZCwgYWNjdW11bGF0aW5nIGl0cyBleHRlbmRlZAotICogc3Rh dGlzdGljcyBpbnRvIHRoZSBwZXItcmVsYXRpb24gZW50cnkuCisgKiBBY2N1bXVsYXRlIHBl ci1kYXRhYmFzZSBleHRlbmRlZCB2YWN1dW0gY291bnRlcnMuCisgKi8KK3N0YXRpYyB2b2lk CitwZ3N0YXRfYWNjdW11bGF0ZV9leHR2YWNfc3RhdHNfZGIoUGdTdGF0X1ZhY3V1bURCQ291 bnRzICpkc3QsCisJCQkJCQkJCSAgUGdTdGF0X1ZhY3V1bURCQ291bnRzICpzcmMpCit7CisJ aWYgKCFwZ3N0YXRfdHJhY2tfdmFjdXVtX3N0YXRpc3RpY3MpCisJCXJldHVybjsKKworCXBn c3RhdF9hY2N1bXVsYXRlX2NvbW1vbigmZHN0LT5jb21tb24sICZzcmMtPmNvbW1vbik7CisJ ZHN0LT5lcnJvcnMgKz0gc3JjLT5lcnJvcnM7Cit9CisKKy8qCisgKiBSZXBvcnQgdGhhdCB0 aGUgcmVsYXRpb24gd2FzIGp1c3QgdmFjdXVtZWQsIGFjY3VtdWxhdGluZyBib3RoIGl0cyBv d24KKyAqIGV4dGVuZGVkIHN0YXRpc3RpY3MgYW5kIHRoZSBkYXRhYmFzZS13aWRlIGFnZ3Jl Z2F0ZS4KICAqLwogdm9pZAogcGdzdGF0X3JlcG9ydF92YWN1dW1fZXh0c3RhdHMoT2lkIHRh Ymxlb2lkLCBib29sIHNoYXJlZCwKQEAgLTc2LDE2ICsxMDcsMjUgQEAgcGdzdGF0X3JlcG9y dF92YWN1dW1fZXh0c3RhdHMoT2lkIHRhYmxlb2lkLCBib29sIHNoYXJlZCwKIHsKIAlQZ1N0 YXRfRW50cnlSZWYgKmVudHJ5X3JlZjsKIAlQZ1N0YXRTaGFyZWRfVmFjdXVtUmVsYXRpb24g KnNodGFiZW50cnk7CisJUGdTdGF0U2hhcmVkX1ZhY3V1bURCICpzaGRiZW50cnk7CiAJT2lk CQkJZGJvaWQgPSAoc2hhcmVkID8gSW52YWxpZE9pZCA6IE15RGF0YWJhc2VJZCk7CiAKIAlp ZiAoIXBnc3RhdF90cmFja192YWN1dW1fc3RhdGlzdGljcykKIAkJcmV0dXJuOwogCisJLyog UGVyLXJlbGF0aW9uIGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNzICovCiAJZW50cnlfcmVm ID0gcGdzdGF0X2dldF9lbnRyeV9yZWZfbG9ja2VkKFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxB VElPTiwKIAkJCQkJCQkJCQkJZGJvaWQsIHRhYmxlb2lkLCBmYWxzZSk7CiAJc2h0YWJlbnRy eSA9IChQZ1N0YXRTaGFyZWRfVmFjdXVtUmVsYXRpb24gKikgZW50cnlfcmVmLT5zaGFyZWRf c3RhdHM7CiAJcGdzdGF0X2FjY3VtdWxhdGVfZXh0dmFjX3N0YXRzX3JlbGF0aW9ucygmc2h0 YWJlbnRyeS0+c3RhdHMsIHBhcmFtcyk7CiAJcGdzdGF0X3VubG9ja19lbnRyeShlbnRyeV9y ZWYpOworCisJLyogRGF0YWJhc2Utd2lkZSBhZ2dyZWdhdGUgb2YgdGhlIHNhbWUgd29yayAq LworCWVudHJ5X3JlZiA9IHBnc3RhdF9nZXRfZW50cnlfcmVmX2xvY2tlZChQR1NUQVRfS0lO RF9WQUNVVU1fREIsCisJCQkJCQkJCQkJCWRib2lkLCBJbnZhbGlkT2lkLCBmYWxzZSk7CisJ c2hkYmVudHJ5ID0gKFBnU3RhdFNoYXJlZF9WYWN1dW1EQiAqKSBlbnRyeV9yZWYtPnNoYXJl ZF9zdGF0czsKKwlwZ3N0YXRfYWNjdW11bGF0ZV9jb21tb24oJnNoZGJlbnRyeS0+c3RhdHMu Y29tbW9uLCAmcGFyYW1zLT5jb21tb24pOworCXBnc3RhdF91bmxvY2tfZW50cnkoZW50cnlf cmVmKTsKIH0KIAogLyoKQEAgLTExOSw2ICsxNTksMzEgQEAgcGdzdGF0X3ZhY3V1bV9yZWxh dGlvbl9mbHVzaF9jYihQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3JlZiwgYm9vbCBub3dhaXQp CiAJcmV0dXJuIHRydWU7CiB9CiAKKy8qCisgKiBGbHVzaCBvdXQgcGVuZGluZyBwZXItZGF0 YWJhc2UgZXh0ZW5kZWQgdmFjdXVtIHN0YXRzIGZvciB0aGUgZW50cnkuCisgKi8KK2Jvb2wK K3Bnc3RhdF92YWN1dW1fZGJfZmx1c2hfY2IoUGdTdGF0X0VudHJ5UmVmICplbnRyeV9yZWYs IGJvb2wgbm93YWl0KQoreworCVBnU3RhdFNoYXJlZF9WYWN1dW1EQiAqc2hhcmVkZW50Owor CVBnU3RhdF9WYWN1dW1EQkNvdW50cyAqcGVuZGluZ2VudDsKKworCXBlbmRpbmdlbnQgPSAo UGdTdGF0X1ZhY3V1bURCQ291bnRzICopIGVudHJ5X3JlZi0+cGVuZGluZzsKKwlzaGFyZWRl bnQgPSAoUGdTdGF0U2hhcmVkX1ZhY3V1bURCICopIGVudHJ5X3JlZi0+c2hhcmVkX3N0YXRz OworCisJaWYgKHBnX21lbW9yeV9pc19hbGxfemVyb3MocGVuZGluZ2VudCwgc2l6ZW9mKFBn U3RhdF9WYWN1dW1EQkNvdW50cykpKQorCQlyZXR1cm4gdHJ1ZTsKKworCWlmICghcGdzdGF0 X2xvY2tfZW50cnkoZW50cnlfcmVmLCBub3dhaXQpKQorCQlyZXR1cm4gZmFsc2U7CisKKwlw Z3N0YXRfYWNjdW11bGF0ZV9leHR2YWNfc3RhdHNfZGIoJnNoYXJlZGVudC0+c3RhdHMsIHBl bmRpbmdlbnQpOworCisJcGdzdGF0X3VubG9ja19lbnRyeShlbnRyeV9yZWYpOworCisJcmV0 dXJuIHRydWU7Cit9CisKIC8qCiAgKiBTdXBwb3J0IGZ1bmN0aW9uIGZvciB0aGUgU1FMLWNh bGxhYmxlIHBnc3RhdCogZnVuY3Rpb25zLiBSZXR1cm5zIHRoZSB2YWN1dW0KICAqIGNvbGxl Y3RlZCBzdGF0aXN0aWNzIGZvciBvbmUgcmVsYXRpb24gb3IgTlVMTC4KQEAgLTEyOSwzICsx OTQsMTQgQEAgcGdzdGF0X2ZldGNoX3N0YXRfdmFjdXVtX3RhYmVudHJ5KE9pZCByZWxpZCwg T2lkIGRiaWQpCiAJcmV0dXJuIChQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKikKIAkJ cGdzdGF0X2ZldGNoX2VudHJ5KFBHU1RBVF9LSU5EX1ZBQ1VVTV9SRUxBVElPTiwgZGJpZCwg cmVsaWQsIE5VTEwpOwogfQorCisvKgorICogU3VwcG9ydCBmdW5jdGlvbiBmb3IgdGhlIFNR TC1jYWxsYWJsZSBwZ3N0YXQqIGZ1bmN0aW9ucy4gUmV0dXJucyB0aGUgdmFjdXVtCisgKiBj b2xsZWN0ZWQgc3RhdGlzdGljcyBmb3Igb25lIGRhdGFiYXNlIG9yIE5VTEwuCisgKi8KK1Bn U3RhdF9WYWN1dW1EQkNvdW50cyAqCitwZ3N0YXRfZmV0Y2hfc3RhdF92YWN1dW1fZGJlbnRy eShPaWQgZGJpZCkKK3sKKwlyZXR1cm4gKFBnU3RhdF9WYWN1dW1EQkNvdW50cyAqKQorCQlw Z3N0YXRfZmV0Y2hfZW50cnkoUEdTVEFUX0tJTkRfVkFDVVVNX0RCLCBkYmlkLCBJbnZhbGlk T2lkLCBOVUxMKTsKK30KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0 YXRmdW5jcy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMKaW5kZXgg M2FjZjBhNzM5MS4uZmMzMmIyMDg1MCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMv YWR0L3Bnc3RhdGZ1bmNzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1 bmNzLmMKQEAgLTIzNzQsNyArMjM3NCw3IEBAIHBnX3N0YXRfaGF2ZV9zdGF0cyhQR19GVU5D VElPTl9BUkdTKQogRGF0dW0KIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoUEdfRlVOQ1RJ T05fQVJHUykKIHsKLSNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19TVEFUU19D T0xTIDExCisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyAx NQogCiAJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDApOwogCVBnU3RhdF9WYWN1dW1S ZWxhdGlvbkNvdW50cyAqZXh0dmFjdXVtOwpAQCAtMjQxMCw2ICsyNDEwLDEwIEBAIHBnX3N0 YXRfZ2V0X3ZhY3V1bV90YWJsZXMoUEdfRlVOQ1RJT05fQVJHUykKIAl2YWx1ZXNbaSsrXSA9 IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS52bV9uZXdfZnJvemVuX3BhZ2VzKTsK IAl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT50YWJsZS52bV9uZXdf dmlzaWJsZV9wYWdlcyk7CiAJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1 bS0+dGFibGUudm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzKTsKKwl2YWx1ZXNbaSsrXSA9 IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24udG90YWxfYmxrc19yZWFkKTsKKwl2 YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24udG90YWxfYmxr c19oaXQpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1v bi50b3RhbF9ibGtzX2RpcnRpZWQpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShl eHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4pOwogCiAJQXNzZXJ0KGkgPT0g UEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19TVEFUU19DT0xTKTsKIApAQCAtMjQyMyw3ICsy NDI3LDcgQEAgcGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhQR19GVU5DVElPTl9BUkdTKQog RGF0dW0KIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiB7 Ci0jZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9JTkRFWF9TVEFUU19DT0xTIDMKKyNkZWZp bmUgUEdfU1RBVF9HRVRfVkFDVVVNX0lOREVYX1NUQVRTX0NPTFMgNwogCiAJT2lkCQkJcmVs aWQgPSBQR19HRVRBUkdfT0lEKDApOwogCVBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAq ZXh0dmFjdXVtOwpAQCAtMjQ1MSw4ICsyNDU1LDUzIEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV9p bmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVt KGV4dHZhY3V1bS0+aW5kZXgucGFnZXNfZGVsZXRlZCk7CiAJdmFsdWVzW2krK10gPSBJbnQ2 NEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLnR1cGxlc19kZWxldGVkKTsKIAorCXZhbHVl c1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3Jl YWQpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50 b3RhbF9ibGtzX2hpdCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1 bS0+Y29tbW9uLnRvdGFsX2Jsa3NfZGlydGllZCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbik7CisKIAlBc3Nl cnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyk7CiAKIAkvKiBS ZXR1cm5zIHRoZSByZWNvcmQgYXMgRGF0dW0gKi8KIAlQR19SRVRVUk5fREFUVU0oSGVhcFR1 cGxlR2V0RGF0dW0oaGVhcF9mb3JtX3R1cGxlKHR1cGRlc2MsIHZhbHVlcywgbnVsbHMpKSk7 CiB9CisKKy8qCisgKiBHZXQgdGhlIGV4dGVuZGVkIHZhY3V1bSBzdGF0aXN0aWNzIGZvciBh IGRhdGFiYXNlLgorICovCitEYXR1bQorcGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlKFBH X0ZVTkNUSU9OX0FSR1MpCit7CisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9EQVRBQkFT RV9TVEFUU19DT0xTIDYKKworCU9pZAkJCWRiaWQgPSBQR19HRVRBUkdfT0lEKDApOworCVBn U3RhdF9WYWN1dW1EQkNvdW50cyAqZXh0dmFjdXVtOworCVR1cGxlRGVzYwl0dXBkZXNjOwor CURhdHVtCQl2YWx1ZXNbUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFCQVNFX1NUQVRTX0NPTFNd ID0gezB9OworCWJvb2wJCW51bGxzW1BHX1NUQVRfR0VUX1ZBQ1VVTV9EQVRBQkFTRV9TVEFU U19DT0xTXSA9IHswfTsKKwlpbnQJCQlpID0gMDsKKworCWlmIChnZXRfY2FsbF9yZXN1bHRf dHlwZShmY2luZm8sIE5VTEwsICZ0dXBkZXNjKSAhPSBUWVBFRlVOQ19DT01QT1NJVEUpCisJ CWVsb2coRVJST1IsICJyZXR1cm4gdHlwZSBtdXN0IGJlIGEgcm93IHR5cGUiKTsKKworCWV4 dHZhY3V1bSA9IE9pZElzVmFsaWQoZGJpZCkgPyBwZ3N0YXRfZmV0Y2hfc3RhdF92YWN1dW1f ZGJlbnRyeShkYmlkKSA6IE5VTEw7CisJaWYgKCFleHR2YWN1dW0pCisJeworCQlJbml0TWF0 ZXJpYWxpemVkU1JGKGZjaW5mbywgMCk7CisJCVBHX1JFVFVSTl9WT0lEKCk7CisJfQorCisJ dmFsdWVzW2krK10gPSBPYmplY3RJZEdldERhdHVtKGRiaWQpOworCisJdmFsdWVzW2krK10g PSBJbnQzMkdldERhdHVtKGV4dHZhY3V1bS0+ZXJyb3JzKTsKKworCXZhbHVlc1tpKytdID0g SW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3JlYWQpOworCXZh bHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtz X2hpdCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9u LnRvdGFsX2Jsa3NfZGlydGllZCk7CisJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4 dHZhY3V1bS0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbik7CisKKwlBc3NlcnQoaSA9PSBQ R19TVEFUX0dFVF9WQUNVVU1fREFUQUJBU0VfU1RBVFNfQ09MUyk7CisKKwkvKiBSZXR1cm5z IHRoZSByZWNvcmQgYXMgRGF0dW0gKi8KKwlQR19SRVRVUk5fREFUVU0oSGVhcFR1cGxlR2V0 RGF0dW0oaGVhcF9mb3JtX3R1cGxlKHR1cGRlc2MsIHZhbHVlcywgbnVsbHMpKSk7Cit9CmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1 ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAppbmRleCA3ZDg3YjAzMjM5Li5lZGYzY2M4YjYyIDEw MDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTEyNjQzLDkgKzEyNjQzLDkgQEAKICAg cHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcycsIHByb3Jvd3MgPT4gMTAw MCwgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLCBwcm9pc3N0 cmljdCA9PiAnZicsCiAgIHByb3JldHNldCA9PiAndCcsCiAgIHByb2FyZ3R5cGVzID0+ICdv aWQnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxpbnQ4LGludDgsaW50 OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OH0nLAotICBwcm9hcmdtb2RlcyA9PiAn e2ksbyxvLG8sbyxvLG8sbyxvLG8sbyxvfScsCi0gIHByb2FyZ25hbWVzID0+ICd7cmVsb2lk LHJlbGlkLHBhZ2VzX3NjYW5uZWQscGFnZXNfcmVtb3ZlZCx0dXBsZXNfZGVsZXRlZCx0dXBs ZXNfZnJvemVuLHJlY2VudGx5X2RlYWRfdHVwbGVzLG1pc3NlZF9kZWFkX3BhZ2VzLG1pc3Nl ZF9kZWFkX3R1cGxlcyx2bV9uZXdfZnJvemVuX3BhZ2VzLHZtX25ld192aXNpYmxlX3BhZ2Vz LHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlc30nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAn e29pZCxvaWQsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgs aW50OCxpbnQ4LGludDgsaW50OCxpbnQ4fScsCisgIHByb2FyZ21vZGVzID0+ICd7aSxvLG8s byxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAne3JlbG9p ZCxyZWxpZCxwYWdlc19zY2FubmVkLHBhZ2VzX3JlbW92ZWQsdHVwbGVzX2RlbGV0ZWQsdHVw bGVzX2Zyb3plbixyZWNlbnRseV9kZWFkX3R1cGxlcyxtaXNzZWRfZGVhZF9wYWdlcyxtaXNz ZWRfZGVhZF90dXBsZXMsdm1fbmV3X2Zyb3plbl9wYWdlcyx2bV9uZXdfdmlzaWJsZV9wYWdl cyx2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMsdG90YWxfYmxrc19yZWFkLHRvdGFsX2Js a3NfaGl0LHRvdGFsX2Jsa3NfZGlydGllZCx0b3RhbF9ibGtzX3dyaXR0ZW59JywKICAgcHJv c3JjID0+ICdwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzJyB9CiAKICMgb2lkOCByZWxhdGVk IGZ1bmN0aW9ucwpAQCAtMTI3MTgsOCArMTI3MTgsMTcgQEAKICAgcHJvbmFtZSA9PiAncGdf c3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMnLCBwcm9yb3dzID0+IDEwMDAsIHByb3ZvbGF0aWxl ID0+ICdzJywgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywgcHJvaXNzdHJpY3QgPT4gJ2YnLAog ICBwcm9yZXRzZXQgPT4gJ3QnLAogICBwcm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvYWxs YXJndHlwZXMgPT4gJ3tvaWQsb2lkLGludDgsaW50OH0nLAotICBwcm9hcmdtb2RlcyA9PiAn e2ksbyxvLG99JywKLSAgcHJvYXJnbmFtZXMgPT4gJ3tyZWxvaWQscmVsaWQscGFnZXNfZGVs ZXRlZCx0dXBsZXNfZGVsZXRlZH0nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQs aW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDh9JywKKyAgcHJvYXJnbW9kZXMgPT4gJ3tp LG8sbyxvLG8sbyxvLG99JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tyZWxvaWQscmVsaWQscGFn ZXNfZGVsZXRlZCx0dXBsZXNfZGVsZXRlZCx0b3RhbF9ibGtzX3JlYWQsdG90YWxfYmxrc19o aXQsdG90YWxfYmxrc19kaXJ0aWVkLHRvdGFsX2Jsa3Nfd3JpdHRlbn0nLAogICBwcm9zcmMg PT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzJyB9LAoreyBvaWQgPT4gJzgwMDUnLAor ICBkZXNjciA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlIHJldHVybnMgdmFjdXVt IHN0YXRzIHZhbHVlcyBmb3IgZGF0YWJhc2UnLAorICBwcm9uYW1lID0+ICdwZ19zdGF0X2dl dF92YWN1dW1fZGF0YWJhc2UnLCBwcm9yb3dzID0+IDEwMDAsIHByb3ZvbGF0aWxlID0+ICdz JywgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywgcHJvaXNzdHJpY3QgPT4gJ2YnLAorICBwcm9y ZXRzZXQgPT4gJ3QnLAorICBwcm9hcmd0eXBlcyA9PiAnb2lkJywKKyAgcHJvYWxsYXJndHlw ZXMgPT4gJ3tvaWQsb2lkLGludDQsaW50OCxpbnQ4LGludDgsaW50OH0nLAorICBwcm9hcmdt b2RlcyA9PiAne2ksbyxvLG8sbyxvLG99JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tkYmlkLGRi b2lkLGVycm9ycyxkYl9ibGtzX3JlYWQsZGJfYmxrc19oaXQsdG90YWxfYmxrc19kaXJ0aWVk LHRvdGFsX2Jsa3Nfd3JpdHRlbn0nLAorICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1 bV9kYXRhYmFzZScgfSwKIF0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3Zh Y3V1bS5oIGIvc3JjL2luY2x1ZGUvY29tbWFuZHMvdmFjdXVtLmgKaW5kZXggOTU2ZDljZWEz Ni4uZjBkMDhlMWE2NCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvdmFjdXVt LmgKKysrIGIvc3JjL2luY2x1ZGUvY29tbWFuZHMvdmFjdXVtLmgKQEAgLTIxLDkgKzIxLDEx IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19jbGFzcy5oIgogI2luY2x1ZGUgImNhdGFsb2cv cGdfc3RhdGlzdGljLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190eXBlLmgiCisjaW5jbHVk ZSAiZXhlY3V0b3IvaW5zdHJ1bWVudC5oIgogI2luY2x1ZGUgInBhcnNlci9wYXJzZV9ub2Rl LmgiCiAjaW5jbHVkZSAic3RvcmFnZS9idWYuaCIKICNpbmNsdWRlICJ1dGlscy9yZWxjYWNo ZS5oIgorI2luY2x1ZGUgInBnc3RhdC5oIgogCiAvKgogICogRmxhZ3MgZm9yIGFtcGFyYWxs ZWx2YWN1dW1vcHRpb25zIHRvIGNvbnRyb2wgdGhlIHBhcnRpY2lwYXRpb24gb2YgYnVsa2Rl bGV0ZQpAQCAtMzIxLDYgKzMyMywyNiBAQCB0eXBlZGVmIHN0cnVjdCBQVldvcmtlclVzYWdl CiAJUFZXb3JrZXJTdGF0cyBjbGVhbnVwOwogfSBQVldvcmtlclVzYWdlOwogCisvKgorICog Q291bnRlcnMgYW5kIHVzYWdlIGRhdGEgZm9yIGV4dGVuZGVkIHN0YXRzIHRyYWNraW5nLgor ICovCit0eXBlZGVmIHN0cnVjdCBMVkV4dFN0YXRDb3VudGVycworeworCVRpbWVzdGFtcFR6 IHN0YXJ0dGltZTsKKwlXYWxVc2FnZQl3YWx1c2FnZTsKKwlCdWZmZXJVc2FnZSBidWZ1c2Fn ZTsKKwlkb3VibGUJCVZhY3V1bURlbGF5VGltZTsKKwlQZ1N0YXRfQ291bnRlciBibG9ja3Nf ZmV0Y2hlZDsKKwlQZ1N0YXRfQ291bnRlciBibG9ja3NfaGl0OworfQkJCUxWRXh0U3RhdENv dW50ZXJzOworCit0eXBlZGVmIHN0cnVjdCBMVkV4dFN0YXRDb3VudGVyc0lkeAoreworCUxW RXh0U3RhdENvdW50ZXJzIGNvbW1vbjsKKwlpbnQ2NAkJcGFnZXNfZGVsZXRlZDsKKwlpbnQ2 NAkJdHVwbGVzX3JlbW92ZWQ7Cit9CQkJTFZFeHRTdGF0Q291bnRlcnNJZHg7CisKIC8qIEdV QyBwYXJhbWV0ZXJzICovCiBleHRlcm4gUEdETExJTVBPUlQgaW50IGRlZmF1bHRfc3RhdGlz dGljc190YXJnZXQ7CS8qIFBHRExMSU1QT1JUIGZvciBQb3N0R0lTICovCiBleHRlcm4gUEdE TExJTVBPUlQgaW50IHZhY3V1bV9mcmVlemVfbWluX2FnZTsKQEAgLTM1Myw2ICszNzUsNyBA QCBleHRlcm4gUEdETExJTVBPUlQgZG91YmxlIHZhY3V1bV9tYXhfZWFnZXJfZnJlZXplX2Zh aWx1cmVfcmF0ZTsKIGV4dGVybiBQR0RMTElNUE9SVCBwZ19hdG9taWNfdWludDMyICpWYWN1 dW1TaGFyZWRDb3N0QmFsYW5jZTsKIGV4dGVybiBQR0RMTElNUE9SVCBwZ19hdG9taWNfdWlu dDMyICpWYWN1dW1BY3RpdmVOV29ya2VyczsKIGV4dGVybiBQR0RMTElNUE9SVCBpbnQgVmFj dXVtQ29zdEJhbGFuY2VMb2NhbDsKK2V4dGVybiBQR0RMTElNUE9SVCBkb3VibGUgVmFjdXVt RGVsYXlUaW1lOwogCiBleHRlcm4gUEdETExJTVBPUlQgYm9vbCBWYWN1dW1GYWlsc2FmZUFj dGl2ZTsKIGV4dGVybiBQR0RMTElNUE9SVCBkb3VibGUgdmFjdXVtX2Nvc3RfZGVsYXk7CkBA IC00MzksNCArNDYyLDEwIEBAIGV4dGVybiBkb3VibGUgYW5sX3JhbmRvbV9mcmFjdCh2b2lk KTsKIGV4dGVybiBkb3VibGUgYW5sX2luaXRfc2VsZWN0aW9uX3N0YXRlKGludCBuKTsKIGV4 dGVybiBkb3VibGUgYW5sX2dldF9uZXh0X1MoZG91YmxlIHQsIGludCBuLCBkb3VibGUgKnN0 YXRlcHRyKTsKIAorZXh0ZXJuIHZvaWQgZXh0dmFjX3N0YXRzX3N0YXJ0X2lkeChSZWxhdGlv biByZWwsIEluZGV4QnVsa0RlbGV0ZVJlc3VsdCAqc3RhdHMsCisJCQkJCQkJCSAgIExWRXh0 U3RhdENvdW50ZXJzSWR4ICogY291bnRlcnMpOworZXh0ZXJuIHZvaWQgZXh0dmFjX3N0YXRz X2VuZF9pZHgoUmVsYXRpb24gcmVsLCBJbmRleEJ1bGtEZWxldGVSZXN1bHQgKnN0YXRzLAor CQkJCQkJCQkgTFZFeHRTdGF0Q291bnRlcnNJZHggKiBjb3VudGVycywgUGdTdGF0X1ZhY3V1 bVJlbGF0aW9uQ291bnRzICogcmVwb3J0KTsKK2V4dGVybiB2b2lkIGV4dHZhY19hY2N1bXVs YXRlX2lkeF9yZXBvcnQoUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICogZHN0LAorCQkJ CQkJCQkJCSBjb25zdCBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKiBzcmMpOwogI2Vu ZGlmCQkJCQkJCS8qIFZBQ1VVTV9IICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wZ3N0 YXQuaCBiL3NyYy9pbmNsdWRlL3Bnc3RhdC5oCmluZGV4IGYyYmRlZjE0NjMuLjZhOWM5ODAw YjcgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oCisrKyBiL3NyYy9pbmNsdWRl L3Bnc3RhdC5oCkBAIC0xNzUsNiArMTc1LDEyIEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9U YWJsZUNvdW50cwogCiB0eXBlZGVmIHN0cnVjdCBQZ1N0YXRfQ29tbW9uQ291bnRzCiB7CisJ LyogYmxvY2tzICovCisJaW50NjQJCXRvdGFsX2Jsa3NfcmVhZDsKKwlpbnQ2NAkJdG90YWxf Ymxrc19oaXQ7CisJaW50NjQJCXRvdGFsX2Jsa3NfZGlydGllZDsKKwlpbnQ2NAkJdG90YWxf Ymxrc193cml0dGVuOworCiAJLyogdHVwbGVzICovCiAJaW50NjQJCXR1cGxlc19kZWxldGVk OwogfQkJCVBnU3RhdF9Db21tb25Db3VudHM7CkBAIC0yNDQsNiArMjUwLDEzIEBAIHR5cGVk ZWYgc3RydWN0IFBnU3RhdF9WYWN1dW1SZWxhdGlvblN0YXR1cwogCVBnU3RhdF9WYWN1dW1S ZWxhdGlvbkNvdW50cyBjb3VudHM7IC8qIGV2ZW50IGNvdW50cyB0byBiZSBzZW50ICovCiB9 CQkJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uU3RhdHVzOwogCit0eXBlZGVmIHN0cnVjdCBQZ1N0 YXRfVmFjdXVtREJDb3VudHMKK3sKKwlPaWQJCQlkYmppZDsKKwlQZ1N0YXRfQ29tbW9uQ291 bnRzIGNvbW1vbjsKKwlpbnQzMgkJZXJyb3JzOworfQkJCVBnU3RhdF9WYWN1dW1EQkNvdW50 czsKKwogLyogLS0tLS0tLS0tLQogICogUGdTdGF0X1RhYmxlU3RhdHVzCQkJUGVyLXRhYmxl IHN0YXR1cyB3aXRoaW4gYSBiYWNrZW5kCiAgKgpAQCAtOTI0LDExICs5MzcsMTMgQEAgZXh0 ZXJuIGludAlwZ3N0YXRfZ2V0X3RyYW5zYWN0aW9uYWxfZHJvcHMoYm9vbCBpc0NvbW1pdCwg c3RydWN0IHhsX3hhY3Rfc3RhdHNfaXQKIGV4dGVybiB2b2lkIHBnc3RhdF9leGVjdXRlX3Ry YW5zYWN0aW9uYWxfZHJvcHMoaW50IG5kcm9wcywgc3RydWN0IHhsX3hhY3Rfc3RhdHNfaXRl bSAqaXRlbXMsIGJvb2wgaXNfcmVkbyk7CiAKIAorZXh0ZXJuIHZvaWQgcGdzdGF0X2Ryb3Bf dmFjdXVtX2RhdGFiYXNlKE9pZCBkYXRhYmFzZWlkKTsKIGV4dGVybiB2b2lkIHBnc3RhdF92 YWN1dW1fcmVsYXRpb25fZGVsZXRlX3BlbmRpbmdfY2IoT2lkIHJlbGlkKTsKIGV4dGVybiB2 b2lkCiAJCQlwZ3N0YXRfcmVwb3J0X3ZhY3V1bV9leHRzdGF0cyhPaWQgdGFibGVvaWQsIGJv b2wgc2hhcmVkLAogCQkJCQkJCQkJCSAgUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRzICog cGFyYW1zKTsKIGV4dGVybiBQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKiBwZ3N0YXRf ZmV0Y2hfc3RhdF92YWN1dW1fdGFiZW50cnkoT2lkIHJlbGlkLCBPaWQgZGJpZCk7CitleHRl cm4gUGdTdGF0X1ZhY3V1bURCQ291bnRzICogcGdzdGF0X2ZldGNoX3N0YXRfdmFjdXVtX2Ri ZW50cnkoT2lkIGRiaWQpOwogCiAvKgogICogRnVuY3Rpb25zIGluIHBnc3RhdF93YWwuYwpA QCAtOTQ3LDYgKzk2Miw3IEBAIGV4dGVybiBQR0RMTElNUE9SVCBib29sIHBnc3RhdF90cmFj a19jb3VudHM7CiBleHRlcm4gUEdETExJTVBPUlQgaW50IHBnc3RhdF90cmFja19mdW5jdGlv bnM7CiBleHRlcm4gUEdETExJTVBPUlQgaW50IHBnc3RhdF9mZXRjaF9jb25zaXN0ZW5jeTsK IGV4dGVybiBQR0RMTElNUE9SVCBib29sIHBnc3RhdF90cmFja192YWN1dW1fc3RhdGlzdGlj czsKK2V4dGVybiBQR0RMTElNUE9SVCBib29sIHBnc3RhdF90cmFja192YWN1dW1fc3RhdGlz dGljc19mb3JfcmVsYXRpb25zOwogCiAvKgogICogVmFyaWFibGVzIGluIHBnc3RhdF9iZ3dy aXRlci5jCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91dGlscy9wZ3N0YXRfaW50ZXJuYWwu aCBiL3NyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9pbnRlcm5hbC5oCmluZGV4IDQ2YTEyN2Fm MmIuLmEyMzRjNzk3ZTAgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9p bnRlcm5hbC5oCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9pbnRlcm5hbC5oCkBA IC01MDcsNiArNTA3LDEyIEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdFNoYXJlZF9SZWxhdGlv bgogCVBnU3RhdF9TdGF0VGFiRW50cnkgc3RhdHM7CiB9IFBnU3RhdFNoYXJlZF9SZWxhdGlv bjsKIAordHlwZWRlZiBzdHJ1Y3QgUGdTdGF0U2hhcmVkX1ZhY3V1bURCCit7CisJUGdTdGF0 U2hhcmVkX0NvbW1vbiBoZWFkZXI7CisJUGdTdGF0X1ZhY3V1bURCQ291bnRzIHN0YXRzOwor fQkJCVBnU3RhdFNoYXJlZF9WYWN1dW1EQjsKKwogdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0U2hh cmVkX1ZhY3V1bVJlbGF0aW9uCiB7CiAJUGdTdGF0U2hhcmVkX0NvbW1vbiBoZWFkZXI7CkBA IC02OTUsNiArNzAxLDcgQEAgZXh0ZXJuIHZvaWQgKnBnc3RhdF9mZXRjaF9lbnRyeShQZ1N0 YXRfS2luZCBraW5kLCBPaWQgZGJvaWQsIHVpbnQ2NCBvYmppZCwKIAkJCQkJCQkJYm9vbCAq bWF5X2ZyZWUpOwogZXh0ZXJuIHZvaWQgcGdzdGF0X3NuYXBzaG90X2ZpeGVkKFBnU3RhdF9L aW5kIGtpbmQpOwogCitib29sCQlwZ3N0YXRfdmFjdXVtX2RiX2ZsdXNoX2NiKFBnU3RhdF9F bnRyeVJlZiAqZW50cnlfcmVmLCBib29sIG5vd2FpdCk7CiBleHRlcm4gYm9vbCBwZ3N0YXRf dmFjdXVtX3JlbGF0aW9uX2ZsdXNoX2NiKFBnU3RhdF9FbnRyeVJlZiAqZW50cnlfcmVmLCBi b29sIG5vd2FpdCk7CiAKIApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0 X2tpbmQuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL3Bnc3RhdF9raW5kLmgKaW5kZXggZjkyMTQ5 MDY2Yy4uNTJkOTM2N2ZiZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvcGdzdGF0 X2tpbmQuaAorKysgYi9zcmMvaW5jbHVkZS91dGlscy9wZ3N0YXRfa2luZC5oCkBAIC00MCw5 ICs0MCwxMCBAQAogI2RlZmluZSBQR1NUQVRfS0lORF9TTFJVCTEyCiAjZGVmaW5lIFBHU1RB VF9LSU5EX1dBTAkxMwogI2RlZmluZSBQR1NUQVRfS0lORF9WQUNVVU1fUkVMQVRJT04JMTQK KyNkZWZpbmUgUEdTVEFUX0tJTkRfVkFDVVVNX0RCCTE1CiAKICNkZWZpbmUgUEdTVEFUX0tJ TkRfQlVJTFRJTl9NSU4gUEdTVEFUX0tJTkRfREFUQUJBU0UKLSNkZWZpbmUgUEdTVEFUX0tJ TkRfQlVJTFRJTl9NQVggUEdTVEFUX0tJTkRfVkFDVVVNX1JFTEFUSU9OCisjZGVmaW5lIFBH U1RBVF9LSU5EX0JVSUxUSU5fTUFYIFBHU1RBVF9LSU5EX1ZBQ1VVTV9EQgogI2RlZmluZSBQ R1NUQVRfS0lORF9CVUlMVElOX1NJWkUgKFBHU1RBVF9LSU5EX0JVSUxUSU5fTUFYICsgMSkK IAogLyogQ3VzdG9tIHN0YXRzIGtpbmRzICovCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3J1bGVzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVs ZXMub3V0CmluZGV4IGMzMGZmNmM3MmYuLjdiNjdmZTcyYTYgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvcnVsZXMub3V0CkBAIC0yNDIxLDE4ICsyNDIxLDMxIEBAIHBnX3N0YXRfdXNl cl90YWJsZXN8IFNFTEVDVCByZWxpZCwKICAgICBmcm96ZW5fcGFnZV9tYXJrc19jbGVhcmVk CiAgICBGUk9NIHBnX3N0YXRfYWxsX3RhYmxlcwogICBXSEVSRSAoKHNjaGVtYW5hbWUgPD4g QUxMIChBUlJBWVsncGdfY2F0YWxvZyc6Om5hbWUsICdpbmZvcm1hdGlvbl9zY2hlbWEnOjpu YW1lXSkpIEFORCAoc2NoZW1hbmFtZSAhfiAnXnBnX3RvYXN0Jzo6dGV4dCkpOworcGdfc3Rh dF92YWN1dW1fZGF0YWJhc2V8IFNFTEVDVCBkLm9pZCBBUyBkYm9pZCwKKyAgICBkLmRhdG5h bWUgQVMgZGJuYW1lLAorICAgIHMuZXJyb3JzLAorICAgIHMuZGJfYmxrc19yZWFkLAorICAg IHMuZGJfYmxrc19oaXQsCisgICAgcy50b3RhbF9ibGtzX2RpcnRpZWQsCisgICAgcy50b3Rh bF9ibGtzX3dyaXR0ZW4KKyAgIEZST00gcGdfZGF0YWJhc2UgZCwKKyAgICBMQVRFUkFMIHBn X3N0YXRfZ2V0X3ZhY3V1bV9kYXRhYmFzZShkLm9pZCkgcyhkYm9pZCwgZXJyb3JzLCBkYl9i bGtzX3JlYWQsIGRiX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Jsa3Nf d3JpdHRlbik7CiBwZ19zdGF0X3ZhY3V1bV9pbmRleGVzfCBTRUxFQ1QgYy5vaWQgQVMgcmVs aWQsCiAgICAgaS5vaWQgQVMgaW5kZXhyZWxpZCwKICAgICBuLm5zcG5hbWUgQVMgc2NoZW1h bmFtZSwKICAgICBjLnJlbG5hbWUsCiAgICAgaS5yZWxuYW1lIEFTIGluZGV4cmVsbmFtZSwK ICAgICBzLnBhZ2VzX2RlbGV0ZWQsCi0gICAgcy50dXBsZXNfZGVsZXRlZAorICAgIHMudHVw bGVzX2RlbGV0ZWQsCisgICAgcy50b3RhbF9ibGtzX3JlYWQsCisgICAgcy50b3RhbF9ibGtz X2hpdCwKKyAgICBzLnRvdGFsX2Jsa3NfZGlydGllZCwKKyAgICBzLnRvdGFsX2Jsa3Nfd3Jp dHRlbgogICAgRlJPTSAoKChwZ19jbGFzcyBjCiAgICAgIEpPSU4gcGdfaW5kZXggeCBPTiAo KGMub2lkID0geC5pbmRyZWxpZCkpKQogICAgICBKT0lOIHBnX2NsYXNzIGkgT04gKChpLm9p ZCA9IHguaW5kZXhyZWxpZCkpKQogICAgICBMRUZUIEpPSU4gcGdfbmFtZXNwYWNlIG4gT04g KChuLm9pZCA9IGMucmVsbmFtZXNwYWNlKSkpLAotICAgIExBVEVSQUwgcGdfc3RhdF9nZXRf dmFjdXVtX2luZGV4ZXMoaS5vaWQpIHMocmVsaWQsIHBhZ2VzX2RlbGV0ZWQsIHR1cGxlc19k ZWxldGVkKQorICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMoaS5vaWQp IHMocmVsaWQsIHBhZ2VzX2RlbGV0ZWQsIHR1cGxlc19kZWxldGVkLCB0b3RhbF9ibGtzX3Jl YWQsIHRvdGFsX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Jsa3Nfd3Jp dHRlbikKICAgV0hFUkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0 Jzo6ImNoYXIiLCAnbSc6OiJjaGFyIl0pKTsKIHBnX3N0YXRfdmFjdXVtX3RhYmxlc3wgU0VM RUNUIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAogICAgIGMucmVsbmFtZSwKQEAgLTI0NDYs MTAgKzI0NTksMTQgQEAgcGdfc3RhdF92YWN1dW1fdGFibGVzfCBTRUxFQ1Qgbi5uc3BuYW1l IEFTIHNjaGVtYW5hbWUsCiAgICAgcy5taXNzZWRfZGVhZF90dXBsZXMsCiAgICAgcy52bV9u ZXdfZnJvemVuX3BhZ2VzLAogICAgIHMudm1fbmV3X3Zpc2libGVfcGFnZXMsCi0gICAgcy52 bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMKKyAgICBzLnZtX25ld192aXNpYmxlX2Zyb3pl bl9wYWdlcywKKyAgICBzLnRvdGFsX2Jsa3NfcmVhZCwKKyAgICBzLnRvdGFsX2Jsa3NfaGl0 LAorICAgIHMudG90YWxfYmxrc19kaXJ0aWVkLAorICAgIHMudG90YWxfYmxrc193cml0dGVu CiAgICBGUk9NIChwZ19jbGFzcyBjCiAgICAgIEpPSU4gcGdfbmFtZXNwYWNlIG4gT04gKChu Lm9pZCA9IGMucmVsbmFtZXNwYWNlKSkpLAotICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFj dXVtX3RhYmxlcyhjLm9pZCkgcyhyZWxpZCwgcGFnZXNfc2Nhbm5lZCwgcGFnZXNfcmVtb3Zl ZCwgdHVwbGVzX2RlbGV0ZWQsIHR1cGxlc19mcm96ZW4sIHJlY2VudGx5X2RlYWRfdHVwbGVz LCBtaXNzZWRfZGVhZF9wYWdlcywgbWlzc2VkX2RlYWRfdHVwbGVzLCB2bV9uZXdfZnJvemVu X3BhZ2VzLCB2bV9uZXdfdmlzaWJsZV9wYWdlcywgdm1fbmV3X3Zpc2libGVfZnJvemVuX3Bh Z2VzKQorICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhjLm9pZCkgcyhy ZWxpZCwgcGFnZXNfc2Nhbm5lZCwgcGFnZXNfcmVtb3ZlZCwgdHVwbGVzX2RlbGV0ZWQsIHR1 cGxlc19mcm96ZW4sIHJlY2VudGx5X2RlYWRfdHVwbGVzLCBtaXNzZWRfZGVhZF9wYWdlcywg bWlzc2VkX2RlYWRfdHVwbGVzLCB2bV9uZXdfZnJvemVuX3BhZ2VzLCB2bV9uZXdfdmlzaWJs ZV9wYWdlcywgdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzLCB0b3RhbF9ibGtzX3JlYWQs IHRvdGFsX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Jsa3Nfd3JpdHRl bikKICAgV0hFUkUgKGMucmVsa2luZCA9IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0Jzo6 ImNoYXIiLCAnbSc6OiJjaGFyIl0pKTsKIHBnX3N0YXRfd2FsfCBTRUxFQ1Qgd2FsX3JlY29y ZHMsCiAgICAgd2FsX2ZwaSwKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvdmFjdXVtX3N0YXRzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVt X3N0YXRzLm91dAppbmRleCAwYjMzNTRjZmZmLi42YzQ2MjM5ZWI2IDEwMDY0NAotLS0gYS9z cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQKKysrIGIvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC92YWN1dW1fc3RhdHMub3V0CkBAIC05OSwxNiArOTksMzcg QEAgU0VMRUNUIHZtX25ld192aXNpYmxlX3BhZ2VzID4gMCBBUyB2bV9uZXdfdmlzaWJsZV9w YWdlcywKICgxIHJvdykKIAogRFJPUCBUQUJMRSB2YWNzdGF0X2ZyejsKKy0tIHRvdGFsIGJ1 ZmZlciBhY2Nlc3MgY291bnRlcnMuICBUaGUgdmFjdXVtIGFsd2F5cyB0b3VjaGVzIHRoZSB0 YWJsZSdzIHBhZ2VzCistLSB0aHJvdWdoIHRoZSBidWZmZXIgY2FjaGUgKHRvdGFsX2Jsa3Nf aGl0ID4gMCkgYW5kIGRpcnRpZXMgc29tZSBvZiB0aGVtIHdoaWxlCistLSByZW1vdmluZyBk ZWFkIHR1cGxlcyAodG90YWxfYmxrc19kaXJ0aWVkID4gMCkuICB0b3RhbF9ibGtzX3JlYWQg YW5kCistLSB0b3RhbF9ibGtzX3dyaXR0ZW4gZGVwZW5kIG9uIHRoZSBidWZmZXItY2FjaGUg YW5kIGNoZWNrcG9pbnQgc3RhdGUgYXQgcnVuCistLSB0aW1lLCBzbyB0aGV5IGFyZSBvbmx5 IGNoZWNrZWQgZm9yIGJlaW5nIG5vbi1uZWdhdGl2ZS4KK1NFTEVDVCB0b3RhbF9ibGtzX3Jl YWQgPj0gMCBBUyB0b3RhbF9ibGtzX3JlYWQsCisgICAgICAgdG90YWxfYmxrc19oaXQgPiAw IEFTIHRvdGFsX2Jsa3NfaGl0LAorICAgICAgIHRvdGFsX2Jsa3NfZGlydGllZCA+IDAgQVMg dG90YWxfYmxrc19kaXJ0aWVkLAorICAgICAgIHRvdGFsX2Jsa3Nfd3JpdHRlbiA+PSAwIEFT IHRvdGFsX2Jsa3Nfd3JpdHRlbgorICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVS RSByZWxuYW1lID0gJ3ZhY3N0YXRfdCc7CisgdG90YWxfYmxrc19yZWFkIHwgdG90YWxfYmxr c19oaXQgfCB0b3RhbF9ibGtzX2RpcnRpZWQgfCB0b3RhbF9ibGtzX3dyaXR0ZW4gCistLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tCisgdCAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAg fCB0ICAgICAgICAgICAgICAgICAgfCB0CisoMSByb3cpCisKIC0tIHBlci1pbmRleCB2aWV3 OiB0aGUgcHJpbWFyeSBrZXkgaW5kZXggaXMgcHJvY2Vzc2VkIGJ5IHRoZSBzYW1lIFZBQ1VV TS4KIC0tIE5vIGJ0cmVlIGxlYWYgZW1wdGllcyBvdXQgKGludGVybGVhdmVkIGRlbGV0aW9u cyksIHNvIHBhZ2VzX2RlbGV0ZWQgPSAwLAotLS0gd2hpbGUgZXZlcnkgaW5kZXggZW50cnkg Zm9yIGEgcmVtb3ZlZCBoZWFwIHR1cGxlIGlzIGRlbGV0ZWQuCistLSB3aGlsZSBldmVyeSBp bmRleCBlbnRyeSBmb3IgYSByZW1vdmVkIGhlYXAgdHVwbGUgaXMgZGVsZXRlZC4gIFRoZSBp bmRleCBpcworLS0gcmVhZCB0aHJvdWdoIHRoZSBidWZmZXIgY2FjaGUgKHRvdGFsX2Jsa3Nf aGl0ID4gMCk7IHRoZSByZWFkL3dyaXR0ZW4vZGlydGllZAorLS0gY291bnRlcnMgZGVwZW5k IG9uIHJ1bi10aW1lIGNhY2hlIHN0YXRlLgogU0VMRUNUIGluZGV4cmVsbmFtZSwKICAgICAg ICBwYWdlc19kZWxldGVkID0gMCBBUyBwYWdlc19kZWxldGVkLAotICAgICAgIHR1cGxlc19k ZWxldGVkID0gNTAwIEFTIHR1cGxlc19kZWxldGVkCisgICAgICAgdHVwbGVzX2RlbGV0ZWQg PSA1MDAgQVMgdHVwbGVzX2RlbGV0ZWQsCisgICAgICAgdG90YWxfYmxrc19yZWFkID49IDAg QVMgdG90YWxfYmxrc19yZWFkLAorICAgICAgIHRvdGFsX2Jsa3NfaGl0ID4gMCBBUyB0b3Rh bF9ibGtzX2hpdCwKKyAgICAgICB0b3RhbF9ibGtzX2RpcnRpZWQgPj0gMCBBUyB0b3RhbF9i bGtzX2RpcnRpZWQsCisgICAgICAgdG90YWxfYmxrc193cml0dGVuID49IDAgQVMgdG90YWxf Ymxrc193cml0dGVuCiAgIEZST00gcGdfc3RhdF92YWN1dW1faW5kZXhlcyBXSEVSRSByZWxu YW1lID0gJ3ZhY3N0YXRfdCcgT1JERVIgQlkgaW5kZXhyZWxuYW1lOwotICBpbmRleHJlbG5h bWUgIHwgcGFnZXNfZGVsZXRlZCB8IHR1cGxlc19kZWxldGVkIAotLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLQotIHZhY3N0YXRfdF9wa2V5IHwg dCAgICAgICAgICAgICB8IHQKKyAgaW5kZXhyZWxuYW1lICB8IHBhZ2VzX2RlbGV0ZWQgfCB0 dXBsZXNfZGVsZXRlZCB8IHRvdGFsX2Jsa3NfcmVhZCB8IHRvdGFsX2Jsa3NfaGl0IHwgdG90 YWxfYmxrc19kaXJ0aWVkIHwgdG90YWxfYmxrc193cml0dGVuIAorLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tCisgdmFjc3RhdF90X3BrZXkgfCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAg fCB0ICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAg ICB8IHQKICgxIHJvdykKIAogLS0gaW5kZXggcGFnZS1kZWxldGlvbiBwYXRoOiBkZWxldGlu ZyBhIGNvbnRpZ3VvdXMga2V5IHJhbmdlIGVtcHRpZXMgd2hvbGUKQEAgLTEzMCwzICsxNTEs MTcgQEAgU0VMRUNUIGluZGV4cmVsbmFtZSwKICgxIHJvdykKIAogRFJPUCBUQUJMRSB2YWNz dGF0X2lkeGRlbDsKKy0tIHBlci1kYXRhYmFzZSBhZ2dyZWdhdGUgdmlldzogbm8gdmFjdXVt IGVycm9ycyBvY2N1cnJlZCBpbiB0aGlzIGRhdGFiYXNlLCBhbmQKKy0tIHRoZSB2YWN1dW1z IGluIHRoaXMgZGF0YWJhc2UgdG91Y2hlZCBwYWdlcyB0aHJvdWdoIHRoZSBidWZmZXIgY2Fj aGUKKy0tIChkYl9ibGtzX2hpdCA+IDApLgorU0VMRUNUIGVycm9ycyA9IDAgQVMgZXJyb3Jz LAorICAgICAgIGRiX2Jsa3NfcmVhZCA+PSAwIEFTIGRiX2Jsa3NfcmVhZCwKKyAgICAgICBk Yl9ibGtzX2hpdCA+IDAgQVMgZGJfYmxrc19oaXQsCisgICAgICAgdG90YWxfYmxrc19kaXJ0 aWVkID49IDAgQVMgdG90YWxfYmxrc19kaXJ0aWVkLAorICAgICAgIHRvdGFsX2Jsa3Nfd3Jp dHRlbiA+PSAwIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbgorICBGUk9NIHBnX3N0YXRfdmFjdXVt X2RhdGFiYXNlIFdIRVJFIGRibmFtZSA9IGN1cnJlbnRfZGF0YWJhc2UoKTsKKyBlcnJvcnMg fCBkYl9ibGtzX3JlYWQgfCBkYl9ibGtzX2hpdCB8IHRvdGFsX2Jsa3NfZGlydGllZCB8IHRv dGFsX2Jsa3Nfd3JpdHRlbiAKKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB0ICAgICAg fCB0ICAgICAgICAgICAgfCB0ICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICB8IHQK KygxIHJvdykKKwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0 YXRzLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwKaW5kZXgg ZGI4MGVjZjZhMS4uOTEwNzk3NTllYSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9z cWwvdmFjdXVtX3N0YXRzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC92YWN1dW1f c3RhdHMuc3FsCkBAIC03NywxMiArNzcsMjkgQEAgU0VMRUNUIHZtX25ld192aXNpYmxlX3Bh Z2VzID4gMCBBUyB2bV9uZXdfdmlzaWJsZV9wYWdlcywKICAgRlJPTSBwZ19zdGF0X3ZhY3V1 bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X2Zyeic7CiBEUk9QIFRBQkxFIHZh Y3N0YXRfZnJ6OwogCistLSB0b3RhbCBidWZmZXIgYWNjZXNzIGNvdW50ZXJzLiAgVGhlIHZh Y3V1bSBhbHdheXMgdG91Y2hlcyB0aGUgdGFibGUncyBwYWdlcworLS0gdGhyb3VnaCB0aGUg YnVmZmVyIGNhY2hlICh0b3RhbF9ibGtzX2hpdCA+IDApIGFuZCBkaXJ0aWVzIHNvbWUgb2Yg dGhlbSB3aGlsZQorLS0gcmVtb3ZpbmcgZGVhZCB0dXBsZXMgKHRvdGFsX2Jsa3NfZGlydGll ZCA+IDApLiAgdG90YWxfYmxrc19yZWFkIGFuZAorLS0gdG90YWxfYmxrc193cml0dGVuIGRl cGVuZCBvbiB0aGUgYnVmZmVyLWNhY2hlIGFuZCBjaGVja3BvaW50IHN0YXRlIGF0IHJ1bgor LS0gdGltZSwgc28gdGhleSBhcmUgb25seSBjaGVja2VkIGZvciBiZWluZyBub24tbmVnYXRp dmUuCitTRUxFQ1QgdG90YWxfYmxrc19yZWFkID49IDAgQVMgdG90YWxfYmxrc19yZWFkLAor ICAgICAgIHRvdGFsX2Jsa3NfaGl0ID4gMCBBUyB0b3RhbF9ibGtzX2hpdCwKKyAgICAgICB0 b3RhbF9ibGtzX2RpcnRpZWQgPiAwIEFTIHRvdGFsX2Jsa3NfZGlydGllZCwKKyAgICAgICB0 b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4KKyAgRlJPTSBw Z19zdGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X3QnOworCiAt LSBwZXItaW5kZXggdmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4IGlzIHByb2Nlc3NlZCBi eSB0aGUgc2FtZSBWQUNVVU0uCiAtLSBObyBidHJlZSBsZWFmIGVtcHRpZXMgb3V0IChpbnRl cmxlYXZlZCBkZWxldGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0gMCwKLS0tIHdoaWxlIGV2 ZXJ5IGluZGV4IGVudHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBsZSBpcyBkZWxldGVkLgor LS0gd2hpbGUgZXZlcnkgaW5kZXggZW50cnkgZm9yIGEgcmVtb3ZlZCBoZWFwIHR1cGxlIGlz IGRlbGV0ZWQuICBUaGUgaW5kZXggaXMKKy0tIHJlYWQgdGhyb3VnaCB0aGUgYnVmZmVyIGNh Y2hlICh0b3RhbF9ibGtzX2hpdCA+IDApOyB0aGUgcmVhZC93cml0dGVuL2RpcnRpZWQKKy0t IGNvdW50ZXJzIGRlcGVuZCBvbiBydW4tdGltZSBjYWNoZSBzdGF0ZS4KIFNFTEVDVCBpbmRl eHJlbG5hbWUsCiAgICAgICAgcGFnZXNfZGVsZXRlZCA9IDAgQVMgcGFnZXNfZGVsZXRlZCwK LSAgICAgICB0dXBsZXNfZGVsZXRlZCA9IDUwMCBBUyB0dXBsZXNfZGVsZXRlZAorICAgICAg IHR1cGxlc19kZWxldGVkID0gNTAwIEFTIHR1cGxlc19kZWxldGVkLAorICAgICAgIHRvdGFs X2Jsa3NfcmVhZCA+PSAwIEFTIHRvdGFsX2Jsa3NfcmVhZCwKKyAgICAgICB0b3RhbF9ibGtz X2hpdCA+IDAgQVMgdG90YWxfYmxrc19oaXQsCisgICAgICAgdG90YWxfYmxrc19kaXJ0aWVk ID49IDAgQVMgdG90YWxfYmxrc19kaXJ0aWVkLAorICAgICAgIHRvdGFsX2Jsa3Nfd3JpdHRl biA+PSAwIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbgogICBGUk9NIHBnX3N0YXRfdmFjdXVtX2lu ZGV4ZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X3QnIE9SREVSIEJZIGluZGV4cmVsbmFt ZTsKIAogLS0gaW5kZXggcGFnZS1kZWxldGlvbiBwYXRoOiBkZWxldGluZyBhIGNvbnRpZ3Vv dXMga2V5IHJhbmdlIGVtcHRpZXMgd2hvbGUKQEAgLTk5LDMgKzExNiwxMyBAQCBTRUxFQ1Qg aW5kZXhyZWxuYW1lLAogICAgICAgIHR1cGxlc19kZWxldGVkID0gOTAwMCBBUyB0dXBsZXNf ZGVsZXRlZAogICBGUk9NIHBnX3N0YXRfdmFjdXVtX2luZGV4ZXMgV0hFUkUgcmVsbmFtZSA9 ICd2YWNzdGF0X2lkeGRlbCcgT1JERVIgQlkgaW5kZXhyZWxuYW1lOwogRFJPUCBUQUJMRSB2 YWNzdGF0X2lkeGRlbDsKKworLS0gcGVyLWRhdGFiYXNlIGFnZ3JlZ2F0ZSB2aWV3OiBubyB2 YWN1dW0gZXJyb3JzIG9jY3VycmVkIGluIHRoaXMgZGF0YWJhc2UsIGFuZAorLS0gdGhlIHZh Y3V1bXMgaW4gdGhpcyBkYXRhYmFzZSB0b3VjaGVkIHBhZ2VzIHRocm91Z2ggdGhlIGJ1ZmZl ciBjYWNoZQorLS0gKGRiX2Jsa3NfaGl0ID4gMCkuCitTRUxFQ1QgZXJyb3JzID0gMCBBUyBl cnJvcnMsCisgICAgICAgZGJfYmxrc19yZWFkID49IDAgQVMgZGJfYmxrc19yZWFkLAorICAg ICAgIGRiX2Jsa3NfaGl0ID4gMCBBUyBkYl9ibGtzX2hpdCwKKyAgICAgICB0b3RhbF9ibGtz X2RpcnRpZWQgPj0gMCBBUyB0b3RhbF9ibGtzX2RpcnRpZWQsCisgICAgICAgdG90YWxfYmxr c193cml0dGVuID49IDAgQVMgdG90YWxfYmxrc193cml0dGVuCisgIEZST00gcGdfc3RhdF92 YWN1dW1fZGF0YWJhc2UgV0hFUkUgZGJuYW1lID0gY3VycmVudF9kYXRhYmFzZSgpOwotLSAK Mi4zOS41IChBcHBsZSBHaXQtMTU0KQoK --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0006-Extended-vacuum-statistics-per-relation-buffer-acces.patch" Content-Disposition: attachment; filename*0="0006-Extended-vacuum-statistics-per-relation-buffer-acces.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA3OTFkYWNmMWNjODExMDU5NzFhZGQzZTdkZWU0NTAxNmM0YmM3Yzc5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo1MjoxMSArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggNi84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogcGVyLXJlbGF0 aW9uIGJ1ZmZlciBhY2Nlc3MKIGZvciB0YWJsZXMgYW5kIGluZGV4ZXMKCkV4cG9zZSB0aGUg cGVyLXJlbGF0aW9uIGJ1ZmZlciBhY2Nlc3MgY291bnRlcnMgaW4gcGdfc3RhdF92YWN1dW1f dGFibGVzIGFuZApwZ19zdGF0X3ZhY3V1bV9pbmRleGVzLCB3aXRoIGRvY3VtZW50YXRpb24g YW5kIHJlZ3Jlc3Npb24gY292ZXJhZ2U6CgogIHJlbF9ibGtzX3JlYWQgIHRoaXMgcmVsYXRp b24ncyBibG9ja3MgcmVhZCBmcm9tIGRpc2sgYnkgdGhlIHZhY3V1bQogIHJlbF9ibGtzX2hp dCAgIHRoaXMgcmVsYXRpb24ncyBibG9ja3MgZm91bmQgaW4gc2hhcmVkIGJ1ZmZlcnMKClVu bGlrZSB0b3RhbF9ibGtzXyosIHdoaWNoIGNvdW50IGFsbCBzaGFyZWQtYnVmZmVyIGFjY2Vz cyBkdXJpbmcgdGhlIHZhY3V1bSwKdGhlc2UgYXJlIHJlc3RyaWN0ZWQgdG8gdGhlIHRhcmdl dCByZWxhdGlvbidzIG93biBibG9ja3MuCi0tLQogZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3 cy5zZ21sICAgICAgICAgICAgIHwgMzIgKysrKysrKysrKysrKysrKysrKysrKwogc3JjL2Jh Y2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jICAgICAgIHwgMTUgKysrKysrKysrKwog c3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsICAgICAgIHwgIDkgKysrKy0t CiBzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMgfCAgMyArKwog c3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMgICAgICAgIHwgIDkgKysrKy0t CiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgICAgfCAxMiArKysr LS0tLQogc3JjL2luY2x1ZGUvcGdzdGF0LmggICAgICAgICAgICAgICAgICAgICAgIHwgIDQg KysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dCAgICAgICAgfCAxMiAr KysrKy0tLQogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC92YWN1dW1fc3RhdHMub3V0IHwg MjAgKysrKysrKysrKystLS0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5z cWwgICAgICB8IDEwICsrKysrKy0KIDEwIGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25z KCspLCAxOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvc3lzdGVt LXZpZXdzLnNnbWwgYi9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKaW5kZXggMDg4 YjUzMmU1Yy4uOGU4MGRiM2UwMyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3N5c3RlbS12 aWV3cy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbApAQCAtNTk0 OCw2ICs1OTQ4LDIyIEBAIFNFTEVDVCAqIEZST00gcGdfbG9ja3MgcGwgTEVGVCBKT0lOIHBn X3ByZXBhcmVkX3hhY3RzIHBweAogICAgICAgIE51bWJlciBvZiBzaGFyZWQgYnVmZmVyIGJs b2NrcyB3cml0dGVuIG91dCBieSB0aGUgdmFjdXVtLgogICAgICAgPC9wYXJhPjwvZW50cnk+ CiAgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2df dGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8 c3RydWN0ZmllbGQ+cmVsX2Jsa3NfcmVhZDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwv dHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiB0 aGlzIHJlbGF0aW9uJ3MgYmxvY2tzIHJlYWQgZnJvbSBkaXNrIGJ5IHRoZSB2YWN1dW0uCisg ICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5yZWxfYmxrc19oaXQ8L3N0cnVjdGZp ZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4K KyAgICAgICBOdW1iZXIgb2YgdGhpcyByZWxhdGlvbidzIGJsb2NrcyBmb3VuZCBpbiBzaGFy ZWQgYnVmZmVycyBieSB0aGUgdmFjdXVtLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAg IDwvcm93PgogICAgIDwvdGJvZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KQEAgLTYw NzEsNiArNjA4NywyMiBAQCBTRUxFQ1QgKiBGUk9NIHBnX2xvY2tzIHBsIExFRlQgSk9JTiBw Z19wcmVwYXJlZF94YWN0cyBwcHgKICAgICAgICBOdW1iZXIgb2Ygc2hhcmVkIGJ1ZmZlciBi bG9ja3Mgd3JpdHRlbiBvdXQgd2hpbGUgdmFjdXVtaW5nIHRoZSBpbmRleC4KICAgICAgIDwv cGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSBy b2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlv biI+CisgICAgICAgPHN0cnVjdGZpZWxkPnJlbF9ibGtzX3JlYWQ8L3N0cnVjdGZpZWxkPiA8 dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAg ICBOdW1iZXIgb2YgYmxvY2tzIG9mIHRoaXMgaW5kZXggcmVhZCBmcm9tIGRpc2sgYnkgdGhl IHZhY3V1bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJv dz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xl PSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnJlbF9ibGtzX2hp dDwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAg ICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBibG9jayBoaXRzIHdpdGhpbiB0aGlzIGlu ZGV4IGR1cmluZyB0aGUgdmFjdXVtLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwv cm93PgogICAgIDwvdGJvZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYyBiL3NyYy9iYWNrZW5k L2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYwppbmRleCA5YzUyNDkwOWZlLi5mZGQ3MDY1M2Uz IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMKKysr IGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jCkBAIC01NjksNiArNTY5 LDE5IEBAIGV4dHZhY19zdGF0c19lbmQoUmVsYXRpb24gcmVsLCBMVkV4dFN0YXRDb3VudGVy cyAqIGNvdW50ZXJzLAogCXJlcG9ydC0+dG90YWxfYmxrc19oaXQgKz0gYnVmdXNhZ2UubG9j YWxfYmxrc19oaXQgKyBidWZ1c2FnZS5zaGFyZWRfYmxrc19oaXQ7CiAJcmVwb3J0LT50b3Rh bF9ibGtzX2RpcnRpZWQgKz0gYnVmdXNhZ2UubG9jYWxfYmxrc19kaXJ0aWVkICsgYnVmdXNh Z2Uuc2hhcmVkX2Jsa3NfZGlydGllZDsKIAlyZXBvcnQtPnRvdGFsX2Jsa3Nfd3JpdHRlbiAr PSBidWZ1c2FnZS5zaGFyZWRfYmxrc193cml0dGVuOworCisJaWYgKCFyZWwtPnBnc3RhdF9p bmZvIHx8ICFwZ3N0YXRfdHJhY2tfY291bnRzKQorCisJCS8qCisJCSAqIGlmIHNvbWV0aGlu ZyBnb2VzIHdyb25nIG9yIGFuIHVzZXIgZG9lc24ndCB3YW50IHRvIHRyYWNrIGEgZGF0YWJh c2UKKwkJICogYWN0aXZpdHkgLSBqdXN0IHN1cHByZXNzIGl0LgorCQkgKi8KKwkJcmV0dXJu OworCisJcmVwb3J0LT5ibGtzX2ZldGNoZWQgKz0KKwkJcmVsLT5wZ3N0YXRfaW5mby0+Y291 bnRzLmJsb2Nrc19mZXRjaGVkIC0gY291bnRlcnMtPmJsb2Nrc19mZXRjaGVkOworCXJlcG9y dC0+Ymxrc19oaXQgKz0KKwkJcmVsLT5wZ3N0YXRfaW5mby0+Y291bnRzLmJsb2Nrc19oaXQg LSBjb3VudGVycy0+YmxvY2tzX2hpdDsKIH0KIAogdm9pZApAQCAtNjkxLDYgKzcwNCw4IEBA IGV4dHZhY19hY2N1bXVsYXRlX2lkeF9yZXBvcnQoUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291 bnRzICogZHN0LAogCWRzdC0+Y29tbW9uLnRvdGFsX2Jsa3NfaGl0ICs9IHNyYy0+Y29tbW9u LnRvdGFsX2Jsa3NfaGl0OwogCWRzdC0+Y29tbW9uLnRvdGFsX2Jsa3NfZGlydGllZCArPSBz cmMtPmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQ7CiAJZHN0LT5jb21tb24udG90YWxfYmxr c193cml0dGVuICs9IHNyYy0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbjsKKwlkc3QtPmNv bW1vbi5ibGtzX2ZldGNoZWQgKz0gc3JjLT5jb21tb24uYmxrc19mZXRjaGVkOworCWRzdC0+ Y29tbW9uLmJsa3NfaGl0ICs9IHNyYy0+Y29tbW9uLmJsa3NfaGl0OwogCWRzdC0+Y29tbW9u LnR1cGxlc19kZWxldGVkICs9IHNyYy0+Y29tbW9uLnR1cGxlc19kZWxldGVkOwogCiAJZHN0 LT5pbmRleC5wYWdlc19kZWxldGVkICs9IHNyYy0+aW5kZXgucGFnZXNfZGVsZXRlZDsKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCBiL3NyYy9i YWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRleCBiNGZkOGY5MGM2Li5lN2Q0 MTY1ODQ0IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5z cWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsCkBAIC0xNTc5 LDcgKzE1NzksOSBAQCBDUkVBVEUgVklFVyBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgQVMKICAg ICAgICAgUy50b3RhbF9ibGtzX3JlYWQgQVMgdG90YWxfYmxrc19yZWFkLAogICAgICAgICBT LnRvdGFsX2Jsa3NfaGl0IEFTIHRvdGFsX2Jsa3NfaGl0LAogICAgICAgICBTLnRvdGFsX2Js a3NfZGlydGllZCBBUyB0b3RhbF9ibGtzX2RpcnRpZWQsCi0gICAgICAgIFMudG90YWxfYmxr c193cml0dGVuIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbgorICAgICAgICBTLnRvdGFsX2Jsa3Nf d3JpdHRlbiBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4sCisgICAgICAgIFMucmVsX2Jsa3NfcmVh ZCBBUyByZWxfYmxrc19yZWFkLAorICAgICAgICBTLnJlbF9ibGtzX2hpdCBBUyByZWxfYmxr c19oaXQKIAogICAgIEZST00gcGdfY2xhc3MgQyBKT0lOCiAgICAgICAgICAgICBwZ19uYW1l c3BhY2UgTiBPTiBOLm9pZCA9IEMucmVsbmFtZXNwYWNlLApAQCAtMTYwMCw3ICsxNjAyLDEw IEBAIENSRUFURSBWSUVXIHBnX3N0YXRfdmFjdXVtX2luZGV4ZXMgQVMKICAgICAgICAgICAg IFMudG90YWxfYmxrc19yZWFkIEFTIHRvdGFsX2Jsa3NfcmVhZCwKICAgICAgICAgICAgIFMu dG90YWxfYmxrc19oaXQgQVMgdG90YWxfYmxrc19oaXQsCiAgICAgICAgICAgICBTLnRvdGFs X2Jsa3NfZGlydGllZCBBUyB0b3RhbF9ibGtzX2RpcnRpZWQsCi0gICAgICAgICAgICBTLnRv dGFsX2Jsa3Nfd3JpdHRlbiBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4KKyAgICAgICAgICAgIFMu dG90YWxfYmxrc193cml0dGVuIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbiwKKworICAgICAgICAg ICAgUy5yZWxfYmxrc19yZWFkIEFTIHJlbF9ibGtzX3JlYWQsCisgICAgICAgICAgICBTLnJl bF9ibGtzX2hpdCBBUyByZWxfYmxrc19oaXQKICAgICBGUk9NCiAgICAgICAgICAgICBwZ19j bGFzcyBDIEpPSU4KICAgICAgICAgICAgIHBnX2luZGV4IFggT04gQy5vaWQgPSBYLmluZHJl bGlkIEpPSU4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3Rh dF92YWN1dW0uYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0u YwppbmRleCAyMTY3OGJmNjQ2Li45YjFlYWYwZjRhIDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jCkBAIC00Myw2ICs0Myw5IEBAIHBnc3RhdF9h Y2N1bXVsYXRlX2NvbW1vbihQZ1N0YXRfQ29tbW9uQ291bnRzICpkc3QsIGNvbnN0IFBnU3Rh dF9Db21tb25Db3VudHMgKnNyCiAJQUNDVU1VTEFURV9GSUVMRCh0b3RhbF9ibGtzX2RpcnRp ZWQpOwogCUFDQ1VNVUxBVEVfRklFTEQodG90YWxfYmxrc193cml0dGVuKTsKIAorCUFDQ1VN VUxBVEVfRklFTEQoYmxrc19mZXRjaGVkKTsKKwlBQ0NVTVVMQVRFX0ZJRUxEKGJsa3NfaGl0 KTsKKwogCUFDQ1VNVUxBVEVfRklFTEQodHVwbGVzX2RlbGV0ZWQpOwogfQogCmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCmluZGV4IGZjMzJiMjA4NTAuLjRmMGJlNjY2MjEg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCisrKyBi L3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCkBAIC0yMzc0LDcgKzIzNzQs NyBAQCBwZ19zdGF0X2hhdmVfc3RhdHMoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19z dGF0X2dldF92YWN1dW1fdGFibGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0jZGVmaW5lIFBH X1NUQVRfR0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyAxNQorI2RlZmluZSBQR19TVEFU X0dFVF9WQUNVVU1fVEFCTEVTX1NUQVRTX0NPTFMgMTcKIAogCU9pZAkJCXJlbGlkID0gUEdf R0VUQVJHX09JRCgwKTsKIAlQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudHMgKmV4dHZhY3V1 bTsKQEAgLTI0MTQsNiArMjQxNCw4IEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoUEdf RlVOQ1RJT05fQVJHUykKIAl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVt LT5jb21tb24udG90YWxfYmxrc19oaXQpOwogCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1 bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQpOwogCXZhbHVlc1tpKytd ID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4p OworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi5ibGtz X2ZldGNoZWQgLSBleHR2YWN1dW0tPmNvbW1vbi5ibGtzX2hpdCk7CisJdmFsdWVzW2krK10g PSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmJsa3NfaGl0KTsKIAogCUFzc2Vy dChpID09IFBHX1NUQVRfR0VUX1ZBQ1VVTV9UQUJMRVNfU1RBVFNfQ09MUyk7CiAKQEAgLTI0 MjcsNyArMjQyOSw3IEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoUEdfRlVOQ1RJT05f QVJHUykKIERhdHVtCiBwZ19zdGF0X2dldF92YWN1dW1faW5kZXhlcyhQR19GVU5DVElPTl9B UkdTKQogewotI2RlZmluZSBQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyA3 CisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9JTkRFWF9TVEFUU19DT0xTIDkKIAogCU9p ZAkJCXJlbGlkID0gUEdfR0VUQVJHX09JRCgwKTsKIAlQZ1N0YXRfVmFjdXVtUmVsYXRpb25D b3VudHMgKmV4dHZhY3V1bTsKQEAgLTI0NjAsNiArMjQ2Miw5IEBAIHBnX3N0YXRfZ2V0X3Zh Y3V1bV9pbmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBJbnQ2NEdl dERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLnRvdGFsX2Jsa3NfZGlydGllZCk7CiAJdmFsdWVz W2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3Jp dHRlbik7CiAKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21t b24uYmxrc19mZXRjaGVkIC0gZXh0dmFjdXVtLT5jb21tb24uYmxrc19oaXQpOworCXZhbHVl c1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi5ibGtzX2hpdCk7CisK IAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyk7CiAK IAkvKiBSZXR1cm5zIHRoZSByZWNvcmQgYXMgRGF0dW0gKi8KZGlmZiAtLWdpdCBhL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3By b2MuZGF0CmluZGV4IGVkZjNjYzhiNjIuLjE0ZjA3MGE5NDEgMTAwNjQ0Ci0tLSBhL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdApAQCAtMTI2NDMsOSArMTI2NDMsOSBAQAogICBwcm9uYW1lID0+ICdwZ19z dGF0X2dldF92YWN1dW1fdGFibGVzJywgcHJvcm93cyA9PiAxMDAwLCBwcm92b2xhdGlsZSA9 PiAncycsIHByb3JldHR5cGUgPT4gJ3JlY29yZCcsIHByb2lzc3RyaWN0ID0+ICdmJywKICAg cHJvcmV0c2V0ID0+ICd0JywKICAgcHJvYXJndHlwZXMgPT4gJ29pZCcsCi0gIHByb2FsbGFy Z3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4 LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDh9JywKLSAgcHJvYXJnbW9kZXMg PT4gJ3tpLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvfScsCi0gIHByb2FyZ25hbWVz ID0+ICd7cmVsb2lkLHJlbGlkLHBhZ2VzX3NjYW5uZWQscGFnZXNfcmVtb3ZlZCx0dXBsZXNf ZGVsZXRlZCx0dXBsZXNfZnJvemVuLHJlY2VudGx5X2RlYWRfdHVwbGVzLG1pc3NlZF9kZWFk X3BhZ2VzLG1pc3NlZF9kZWFkX3R1cGxlcyx2bV9uZXdfZnJvemVuX3BhZ2VzLHZtX25ld192 aXNpYmxlX3BhZ2VzLHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcyx0b3RhbF9ibGtzX3Jl YWQsdG90YWxfYmxrc19oaXQsdG90YWxfYmxrc19kaXJ0aWVkLHRvdGFsX2Jsa3Nfd3JpdHRl bn0nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxpbnQ4LGludDgsaW50 OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGlu dDgsaW50OH0nLAorICBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sbyxvLG8sbyxvLG8sbyxv LG8sbyxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7cmVsb2lkLHJlbGlkLHBhZ2Vz X3NjYW5uZWQscGFnZXNfcmVtb3ZlZCx0dXBsZXNfZGVsZXRlZCx0dXBsZXNfZnJvemVuLHJl Y2VudGx5X2RlYWRfdHVwbGVzLG1pc3NlZF9kZWFkX3BhZ2VzLG1pc3NlZF9kZWFkX3R1cGxl cyx2bV9uZXdfZnJvemVuX3BhZ2VzLHZtX25ld192aXNpYmxlX3BhZ2VzLHZtX25ld192aXNp YmxlX2Zyb3plbl9wYWdlcyx0b3RhbF9ibGtzX3JlYWQsdG90YWxfYmxrc19oaXQsdG90YWxf Ymxrc19kaXJ0aWVkLHRvdGFsX2Jsa3Nfd3JpdHRlbixyZWxfYmxrc19yZWFkLHJlbF9ibGtz X2hpdH0nLAogICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMnIH0KIAog IyBvaWQ4IHJlbGF0ZWQgZnVuY3Rpb25zCkBAIC0xMjcxOCw5ICsxMjcxOCw5IEBACiAgIHBy b25hbWUgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzJywgcHJvcm93cyA9PiAxMDAw LCBwcm92b2xhdGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ3JlY29yZCcsIHByb2lzc3Ry aWN0ID0+ICdmJywKICAgcHJvcmV0c2V0ID0+ICd0JywKICAgcHJvYXJndHlwZXMgPT4gJ29p ZCcsCi0gIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ4LGludDgsaW50OCxpbnQ4 LGludDgsaW50OH0nLAotICBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sbyxvLG8sb30nLAot ICBwcm9hcmduYW1lcyA9PiAne3JlbG9pZCxyZWxpZCxwYWdlc19kZWxldGVkLHR1cGxlc19k ZWxldGVkLHRvdGFsX2Jsa3NfcmVhZCx0b3RhbF9ibGtzX2hpdCx0b3RhbF9ibGtzX2RpcnRp ZWQsdG90YWxfYmxrc193cml0dGVufScsCisgIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9p ZCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDh9JywKKyAgcHJvYXJn bW9kZXMgPT4gJ3tpLG8sbyxvLG8sbyxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7 cmVsb2lkLHJlbGlkLHBhZ2VzX2RlbGV0ZWQsdHVwbGVzX2RlbGV0ZWQsdG90YWxfYmxrc19y ZWFkLHRvdGFsX2Jsa3NfaGl0LHRvdGFsX2Jsa3NfZGlydGllZCx0b3RhbF9ibGtzX3dyaXR0 ZW4scmVsX2Jsa3NfcmVhZCxyZWxfYmxrc19oaXR9JywKICAgcHJvc3JjID0+ICdwZ19zdGF0 X2dldF92YWN1dW1faW5kZXhlcycgfSwKIHsgb2lkID0+ICc4MDA1JywKICAgZGVzY3IgPT4g J3BnX3N0YXRfZ2V0X3ZhY3V1bV9kYXRhYmFzZSByZXR1cm5zIHZhY3V1bSBzdGF0cyB2YWx1 ZXMgZm9yIGRhdGFiYXNlJywKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oIGIv c3JjL2luY2x1ZGUvcGdzdGF0LmgKaW5kZXggNmE5Yzk4MDBiNy4uZGUzODk0OWQxMiAxMDA2 NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGdzdGF0LmgKKysrIGIvc3JjL2luY2x1ZGUvcGdzdGF0 LmgKQEAgLTE4MSw2ICsxODEsMTAgQEAgdHlwZWRlZiBzdHJ1Y3QgUGdTdGF0X0NvbW1vbkNv dW50cwogCWludDY0CQl0b3RhbF9ibGtzX2RpcnRpZWQ7CiAJaW50NjQJCXRvdGFsX2Jsa3Nf d3JpdHRlbjsKIAorCS8qIGhlYXAgYmxvY2tzICovCisJaW50NjQJCWJsa3NfZmV0Y2hlZDsK KwlpbnQ2NAkJYmxrc19oaXQ7CisKIAkvKiB0dXBsZXMgKi8KIAlpbnQ2NAkJdHVwbGVzX2Rl bGV0ZWQ7CiB9CQkJUGdTdGF0X0NvbW1vbkNvdW50czsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9ydWxlcy5vdXQKaW5kZXggN2I2N2ZlNzJhNi4uMGIyOGUyZmZjMyAxMDA2NDQKLS0tIGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKQEAgLTI0NDAsMTIgKzI0NDAsMTQgQEAgcGdfc3Rh dF92YWN1dW1faW5kZXhlc3wgU0VMRUNUIGMub2lkIEFTIHJlbGlkLAogICAgIHMudG90YWxf Ymxrc19yZWFkLAogICAgIHMudG90YWxfYmxrc19oaXQsCiAgICAgcy50b3RhbF9ibGtzX2Rp cnRpZWQsCi0gICAgcy50b3RhbF9ibGtzX3dyaXR0ZW4KKyAgICBzLnRvdGFsX2Jsa3Nfd3Jp dHRlbiwKKyAgICBzLnJlbF9ibGtzX3JlYWQsCisgICAgcy5yZWxfYmxrc19oaXQKICAgIEZS T00gKCgocGdfY2xhc3MgYwogICAgICBKT0lOIHBnX2luZGV4IHggT04gKChjLm9pZCA9IHgu aW5kcmVsaWQpKSkKICAgICAgSk9JTiBwZ19jbGFzcyBpIE9OICgoaS5vaWQgPSB4LmluZGV4 cmVsaWQpKSkKICAgICAgTEVGVCBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBj LnJlbG5hbWVzcGFjZSkpKSwKLSAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRl eGVzKGkub2lkKSBzKHJlbGlkLCBwYWdlc19kZWxldGVkLCB0dXBsZXNfZGVsZXRlZCwgdG90 YWxfYmxrc19yZWFkLCB0b3RhbF9ibGtzX2hpdCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3Rh bF9ibGtzX3dyaXR0ZW4pCisgICAgTEFURVJBTCBwZ19zdGF0X2dldF92YWN1dW1faW5kZXhl cyhpLm9pZCkgcyhyZWxpZCwgcGFnZXNfZGVsZXRlZCwgdHVwbGVzX2RlbGV0ZWQsIHRvdGFs X2Jsa3NfcmVhZCwgdG90YWxfYmxrc19oaXQsIHRvdGFsX2Jsa3NfZGlydGllZCwgdG90YWxf Ymxrc193cml0dGVuLCByZWxfYmxrc19yZWFkLCByZWxfYmxrc19oaXQpCiAgIFdIRVJFIChj LnJlbGtpbmQgPSBBTlkgKEFSUkFZWydyJzo6ImNoYXIiLCAndCc6OiJjaGFyIiwgJ20nOjoi Y2hhciJdKSk7CiBwZ19zdGF0X3ZhY3V1bV90YWJsZXN8IFNFTEVDVCBuLm5zcG5hbWUgQVMg c2NoZW1hbmFtZSwKICAgICBjLnJlbG5hbWUsCkBAIC0yNDYzLDEwICsyNDY1LDEyIEBAIHBn X3N0YXRfdmFjdXVtX3RhYmxlc3wgU0VMRUNUIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAog ICAgIHMudG90YWxfYmxrc19yZWFkLAogICAgIHMudG90YWxfYmxrc19oaXQsCiAgICAgcy50 b3RhbF9ibGtzX2RpcnRpZWQsCi0gICAgcy50b3RhbF9ibGtzX3dyaXR0ZW4KKyAgICBzLnRv dGFsX2Jsa3Nfd3JpdHRlbiwKKyAgICBzLnJlbF9ibGtzX3JlYWQsCisgICAgcy5yZWxfYmxr c19oaXQKICAgIEZST00gKHBnX2NsYXNzIGMKICAgICAgSk9JTiBwZ19uYW1lc3BhY2UgbiBP TiAoKG4ub2lkID0gYy5yZWxuYW1lc3BhY2UpKSksCi0gICAgTEFURVJBTCBwZ19zdGF0X2dl dF92YWN1dW1fdGFibGVzKGMub2lkKSBzKHJlbGlkLCBwYWdlc19zY2FubmVkLCBwYWdlc19y ZW1vdmVkLCB0dXBsZXNfZGVsZXRlZCwgdHVwbGVzX2Zyb3plbiwgcmVjZW50bHlfZGVhZF90 dXBsZXMsIG1pc3NlZF9kZWFkX3BhZ2VzLCBtaXNzZWRfZGVhZF90dXBsZXMsIHZtX25ld19m cm96ZW5fcGFnZXMsIHZtX25ld192aXNpYmxlX3BhZ2VzLCB2bV9uZXdfdmlzaWJsZV9mcm96 ZW5fcGFnZXMsIHRvdGFsX2Jsa3NfcmVhZCwgdG90YWxfYmxrc19oaXQsIHRvdGFsX2Jsa3Nf ZGlydGllZCwgdG90YWxfYmxrc193cml0dGVuKQorICAgIExBVEVSQUwgcGdfc3RhdF9nZXRf dmFjdXVtX3RhYmxlcyhjLm9pZCkgcyhyZWxpZCwgcGFnZXNfc2Nhbm5lZCwgcGFnZXNfcmVt b3ZlZCwgdHVwbGVzX2RlbGV0ZWQsIHR1cGxlc19mcm96ZW4sIHJlY2VudGx5X2RlYWRfdHVw bGVzLCBtaXNzZWRfZGVhZF9wYWdlcywgbWlzc2VkX2RlYWRfdHVwbGVzLCB2bV9uZXdfZnJv emVuX3BhZ2VzLCB2bV9uZXdfdmlzaWJsZV9wYWdlcywgdm1fbmV3X3Zpc2libGVfZnJvemVu X3BhZ2VzLCB0b3RhbF9ibGtzX3JlYWQsIHRvdGFsX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2Rp cnRpZWQsIHRvdGFsX2Jsa3Nfd3JpdHRlbiwgcmVsX2Jsa3NfcmVhZCwgcmVsX2Jsa3NfaGl0 KQogICBXSEVSRSAoYy5yZWxraW5kID0gQU5ZIChBUlJBWVsncic6OiJjaGFyIiwgJ3QnOjoi Y2hhciIsICdtJzo6ImNoYXIiXSkpOwogcGdfc3RhdF93YWx8IFNFTEVDVCB3YWxfcmVjb3Jk cywKICAgICB3YWxfZnBpLApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC92YWN1dW1fc3RhdHMub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC92YWN1dW1f c3RhdHMub3V0CmluZGV4IDZjNDYyMzllYjYuLmJmMmZiYzc2MjYgMTAwNjQ0Ci0tLSBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dAorKysgYi9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQKQEAgLTExNCw2ICsxMTQsMTYg QEAgU0VMRUNUIHRvdGFsX2Jsa3NfcmVhZCA+PSAwIEFTIHRvdGFsX2Jsa3NfcmVhZCwKICB0 ICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICB8 IHQKICgxIHJvdykKIAorLS0gcGVyLXJlbGF0aW9uIGJ1ZmZlciBhY2Nlc3MuICBUaGUgaGVh cCBpcyByZWFkIHRocm91Z2ggdGhlIGJ1ZmZlciBjYWNoZQorLS0gKHJlbF9ibGtzX2hpdCA+ IDApOyByZWxfYmxrc19yZWFkIGRlcGVuZHMgb24gdGhlIHJ1bi10aW1lIGNhY2hlIHN0YXRl LgorU0VMRUNUIHJlbF9ibGtzX3JlYWQgPj0gMCBBUyByZWxfYmxrc19yZWFkLAorICAgICAg IHJlbF9ibGtzX2hpdCA+IDAgQVMgcmVsX2Jsa3NfaGl0CisgIEZST00gcGdfc3RhdF92YWN1 dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JzsKKyByZWxfYmxrc19yZWFk IHwgcmVsX2Jsa3NfaGl0IAorLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tCisgdCAg ICAgICAgICAgICB8IHQKKygxIHJvdykKKwogLS0gcGVyLWluZGV4IHZpZXc6IHRoZSBwcmlt YXJ5IGtleSBpbmRleCBpcyBwcm9jZXNzZWQgYnkgdGhlIHNhbWUgVkFDVVVNLgogLS0gTm8g YnRyZWUgbGVhZiBlbXB0aWVzIG91dCAoaW50ZXJsZWF2ZWQgZGVsZXRpb25zKSwgc28gcGFn ZXNfZGVsZXRlZCA9IDAsCiAtLSB3aGlsZSBldmVyeSBpbmRleCBlbnRyeSBmb3IgYSByZW1v dmVkIGhlYXAgdHVwbGUgaXMgZGVsZXRlZC4gIFRoZSBpbmRleCBpcwpAQCAtMTI1LDExICsx MzUsMTMgQEAgU0VMRUNUIGluZGV4cmVsbmFtZSwKICAgICAgICB0b3RhbF9ibGtzX3JlYWQg Pj0gMCBBUyB0b3RhbF9ibGtzX3JlYWQsCiAgICAgICAgdG90YWxfYmxrc19oaXQgPiAwIEFT IHRvdGFsX2Jsa3NfaGl0LAogICAgICAgIHRvdGFsX2Jsa3NfZGlydGllZCA+PSAwIEFTIHRv dGFsX2Jsa3NfZGlydGllZCwKLSAgICAgICB0b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0 b3RhbF9ibGtzX3dyaXR0ZW4KKyAgICAgICB0b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0 b3RhbF9ibGtzX3dyaXR0ZW4sCisgICAgICAgcmVsX2Jsa3NfcmVhZCA+PSAwIEFTIHJlbF9i bGtzX3JlYWQsCisgICAgICAgcmVsX2Jsa3NfaGl0ID4gMCBBUyByZWxfYmxrc19oaXQKICAg RlJPTSBwZ19zdGF0X3ZhY3V1bV9pbmRleGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90 JyBPUkRFUiBCWSBpbmRleHJlbG5hbWU7Ci0gIGluZGV4cmVsbmFtZSAgfCBwYWdlc19kZWxl dGVkIHwgdHVwbGVzX2RlbGV0ZWQgfCB0b3RhbF9ibGtzX3JlYWQgfCB0b3RhbF9ibGtzX2hp dCB8IHRvdGFsX2Jsa3NfZGlydGllZCB8IHRvdGFsX2Jsa3Nfd3JpdHRlbiAKLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLQotIHZhY3N0YXRfdF9wa2V5IHwgdCAgICAgICAgICAgICB8IHQgICAgICAg ICAgICAgIHwgdCAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgfCB0ICAgICAgICAg ICAgICAgICAgfCB0CisgIGluZGV4cmVsbmFtZSAgfCBwYWdlc19kZWxldGVkIHwgdHVwbGVz X2RlbGV0ZWQgfCB0b3RhbF9ibGtzX3JlYWQgfCB0b3RhbF9ibGtzX2hpdCB8IHRvdGFsX2Js a3NfZGlydGllZCB8IHRvdGFsX2Jsa3Nfd3JpdHRlbiB8IHJlbF9ibGtzX3JlYWQgfCByZWxf Ymxrc19oaXQgCistLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tCisgdmFjc3RhdF90X3BrZXkgfCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAg ICAgfCB0ICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAg ICAgICB8IHQgICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgfCB0CiAoMSByb3cp CiAKIC0tIGluZGV4IHBhZ2UtZGVsZXRpb24gcGF0aDogZGVsZXRpbmcgYSBjb250aWd1b3Vz IGtleSByYW5nZSBlbXB0aWVzIHdob2xlCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNz L3NxbC92YWN1dW1fc3RhdHMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0 YXRzLnNxbAppbmRleCA5MTA3OTc1OWVhLi40OWVkM2I0MDYzIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jl c3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwKQEAgLTg4LDYgKzg4LDEyIEBAIFNFTEVDVCB0b3Rh bF9ibGtzX3JlYWQgPj0gMCBBUyB0b3RhbF9ibGtzX3JlYWQsCiAgICAgICAgdG90YWxfYmxr c193cml0dGVuID49IDAgQVMgdG90YWxfYmxrc193cml0dGVuCiAgIEZST00gcGdfc3RhdF92 YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JzsKIAorLS0gcGVyLXJl bGF0aW9uIGJ1ZmZlciBhY2Nlc3MuICBUaGUgaGVhcCBpcyByZWFkIHRocm91Z2ggdGhlIGJ1 ZmZlciBjYWNoZQorLS0gKHJlbF9ibGtzX2hpdCA+IDApOyByZWxfYmxrc19yZWFkIGRlcGVu ZHMgb24gdGhlIHJ1bi10aW1lIGNhY2hlIHN0YXRlLgorU0VMRUNUIHJlbF9ibGtzX3JlYWQg Pj0gMCBBUyByZWxfYmxrc19yZWFkLAorICAgICAgIHJlbF9ibGtzX2hpdCA+IDAgQVMgcmVs X2Jsa3NfaGl0CisgIEZST00gcGdfc3RhdF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUg PSAndmFjc3RhdF90JzsKKwogLS0gcGVyLWluZGV4IHZpZXc6IHRoZSBwcmltYXJ5IGtleSBp bmRleCBpcyBwcm9jZXNzZWQgYnkgdGhlIHNhbWUgVkFDVVVNLgogLS0gTm8gYnRyZWUgbGVh ZiBlbXB0aWVzIG91dCAoaW50ZXJsZWF2ZWQgZGVsZXRpb25zKSwgc28gcGFnZXNfZGVsZXRl ZCA9IDAsCiAtLSB3aGlsZSBldmVyeSBpbmRleCBlbnRyeSBmb3IgYSByZW1vdmVkIGhlYXAg dHVwbGUgaXMgZGVsZXRlZC4gIFRoZSBpbmRleCBpcwpAQCAtOTksNyArMTA1LDkgQEAgU0VM RUNUIGluZGV4cmVsbmFtZSwKICAgICAgICB0b3RhbF9ibGtzX3JlYWQgPj0gMCBBUyB0b3Rh bF9ibGtzX3JlYWQsCiAgICAgICAgdG90YWxfYmxrc19oaXQgPiAwIEFTIHRvdGFsX2Jsa3Nf aGl0LAogICAgICAgIHRvdGFsX2Jsa3NfZGlydGllZCA+PSAwIEFTIHRvdGFsX2Jsa3NfZGly dGllZCwKLSAgICAgICB0b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dy aXR0ZW4KKyAgICAgICB0b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dy aXR0ZW4sCisgICAgICAgcmVsX2Jsa3NfcmVhZCA+PSAwIEFTIHJlbF9ibGtzX3JlYWQsCisg ICAgICAgcmVsX2Jsa3NfaGl0ID4gMCBBUyByZWxfYmxrc19oaXQKICAgRlJPTSBwZ19zdGF0 X3ZhY3V1bV9pbmRleGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JyBPUkRFUiBCWSBp bmRleHJlbG5hbWU7CiAKIC0tIGluZGV4IHBhZ2UtZGVsZXRpb24gcGF0aDogZGVsZXRpbmcg YSBjb250aWd1b3VzIGtleSByYW5nZSBlbXB0aWVzIHdob2xlCi0tIAoyLjM5LjUgKEFwcGxl IEdpdC0xNTQpCgo= --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0007-Extended-vacuum-statistics-timing-metrics-and-failsa.patch" Content-Disposition: attachment; filename*0="0007-Extended-vacuum-statistics-timing-metrics-and-failsa.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0MmRmZmE4NzU0YmMyYTU1NGJlYzVhOTY2MmY1YWZkYmIzNzlkNmYyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo1MzowMyArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggNy84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogdGltaW5nIG1l dHJpY3MgYW5kIGZhaWxzYWZlCiBmb3IgdGFibGVzLCBpbmRleGVzIGFuZCBkYXRhYmFzZQoK RXhwb3NlIHRoZSB0aW1pbmcgY291bnRlcnMgYW5kIHRoZSB3cmFwYXJvdW5kIGZhaWxzYWZl IGNvdW50IGluCnBnX3N0YXRfdmFjdXVtX3RhYmxlcywgcGdfc3RhdF92YWN1dW1faW5kZXhl cyBhbmQgcGdfc3RhdF92YWN1dW1fZGF0YWJhc2UsCndpdGggZG9jdW1lbnRhdGlvbiBhbmQg cmVncmVzc2lvbiBjb3ZlcmFnZToKCiAgYmxrX3JlYWRfdGltZSAgIHRpbWUgc3BlbnQgcmVh ZGluZyBibG9ja3MgKHdpdGggdHJhY2tfaW9fdGltaW5nKQogIGJsa193cml0ZV90aW1lICB0 aW1lIHNwZW50IHdyaXRpbmcgYmxvY2tzICh3aXRoIHRyYWNrX2lvX3RpbWluZykKICBkZWxh eV90aW1lICAgICAgdGltZSBzcGVudCBpbiB2YWN1dW0gY29zdC1iYXNlZCBkZWxheQogIHRv dGFsX3RpbWUgICAgICB0b3RhbCB3YWxsLWNsb2NrIHRpbWUgb2YgdGhlIHZhY3V1bQoKICB3 cmFwYXJvdW5kX2ZhaWxzYWZlICBudW1iZXIgb2YgdmFjdXVtcyB0aGF0IGVuZ2FnZWQgdGhl IHdyYXBhcm91bmQKICAgICAgICAgICAgICAgICAgICAgICBmYWlsc2FmZSAodGFibGVzIGV4 cG9zZSBpdCBhcyBhIHBlci1yZWxhdGlvbiBmbGFnLAogICAgICAgICAgICAgICAgICAgICAg IHRoZSBkYXRhYmFzZSBhZ2dyZWdhdGUgYXMgYSBjb3VudCkKCnRvdGFsX3RpbWUgaXMgYWx3 YXlzIHBvc2l0aXZlOyB0aGUgcmVncmVzc2lvbiB0ZXN0IGFsc28gZXhlcmNpc2VzIHRoZQpw b3NpdGl2ZSBkZWxheV90aW1lIHBhdGggd2l0aCBhIGRlZGljYXRlZCBjb3N0LWRlbGF5ZWQg dmFjdXVtLiAgVGhlIHBvc2l0aXZlCndyYXBhcm91bmRfZmFpbHNhZmUgcGF0aCByZXF1aXJl cyByZWFjaGluZyB0aGUgZmFpbHNhZmUgWElEIGFnZSBhbmQgaXMgY292ZXJlZApieSBhIHNl cGFyYXRlIFRBUCB0ZXN0IHVuZGVyIHNyYy90ZXN0L21vZHVsZXMveGlkX3dyYXBhcm91bmQu Ci0tLQogZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sICAgICAgICAgICAgICAgIHwg MTEyICsrKysrKysrKysrKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVt bGF6eS5jICAgICAgICAgIHwgIDI4ICsrKysrCiBzcmMvYmFja2VuZC9jYXRhbG9nL3N5c3Rl bV92aWV3cy5zcWwgICAgICAgICAgfCAgMjMgKysrLQogc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvcGdzdGF0X3ZhY3V1bS5jICAgIHwgICA2ICsKIHNyYy9iYWNrZW5kL3V0aWxzL2Fk dC9wZ3N0YXRmdW5jcy5jICAgICAgICAgICB8ICAyMyArKystCiBzcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3Byb2MuZGF0ICAgICAgICAgICAgICAgfCAgMTggKy0tCiBzcmMvaW5jbHVkZS9w Z3N0YXQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKysKIHNyYy90ZXN0L21v ZHVsZXMveGlkX3dyYXBhcm91bmQvbWVzb24uYnVpbGQgICB8ICAgMSArCiAuLi4vdC8wMDVf dmFjdXVtX3N0YXRzX2ZhaWxzYWZlLnBsICAgICAgICAgICAgfCAgNjYgKysrKysrKysrKysK IHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnVsZXMub3V0ICAgICAgICAgICB8ICAyNiAr KystCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQgICAgfCAg NjIgKysrKysrKystLQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbCAg ICAgICAgIHwgIDQyICsrKysrKy0KIDEyIGZpbGVzIGNoYW5nZWQsIDM4NSBpbnNlcnRpb25z KCspLCAzMSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9tb2R1 bGVzL3hpZF93cmFwYXJvdW5kL3QvMDA1X3ZhY3V1bV9zdGF0c19mYWlsc2FmZS5wbAoKZGlm ZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbCBiL2RvYy9zcmMvc2dt bC9zeXN0ZW0tdmlld3Muc2dtbAppbmRleCA4ZTgwZGIzZTAzLi4wNDQzY2JhZDQwIDEwMDY0 NAotLS0gYS9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKKysrIGIvZG9jL3NyYy9z Z21sL3N5c3RlbS12aWV3cy5zZ21sCkBAIC01OTY0LDYgKzU5NjQsNDYgQEAgU0VMRUNUICog RlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRfeGFjdHMgcHB4CiAgICAg ICAgTnVtYmVyIG9mIHRoaXMgcmVsYXRpb24ncyBibG9ja3MgZm91bmQgaW4gc2hhcmVkIGJ1 ZmZlcnMgYnkgdGhlIHZhY3V1bS4KICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jv dz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5 Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxk PmJsa19yZWFkX3RpbWU8L3N0cnVjdGZpZWxkPiA8dHlwZT5kb3VibGUgcHJlY2lzaW9uPC90 eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVGltZSBzcGVudCBy ZWFkaW5nIGJsb2NrcyBieSB0aGUgdmFjdXVtLCBpbiBtaWxsaXNlY29uZHMgKHdoZW4gPHZh cm5hbWU+dHJhY2tfaW9fdGltaW5nPC92YXJuYW1lPiBpcyBlbmFibGVkKS4KKyAgICAgIDwv cGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSBy b2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlv biI+CisgICAgICAgPHN0cnVjdGZpZWxkPmJsa193cml0ZV90aW1lPC9zdHJ1Y3RmaWVsZD4g PHR5cGU+ZG91YmxlIHByZWNpc2lvbjwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxw YXJhPgorICAgICAgIFRpbWUgc3BlbnQgd3JpdGluZyAoZmx1c2hpbmcpIGJsb2NrcyBieSB0 aGUgdmFjdXVtLCBpbiBtaWxsaXNlY29uZHM7IHJlbWFpbnMgemVybyBpZiBubyBmbHVzaGVz IG9jY3VycmVkLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8 cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJv bGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+ZGVsYXlfdGlt ZTwvc3RydWN0ZmllbGQ+IDx0eXBlPmRvdWJsZSBwcmVjaXNpb248L3R5cGU+CisgICAgICA8 L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBUb3RhbCB0aW1lIHRoZSB2YWN1dW0gc3Bl bnQgc2xlZXBpbmcgaW4gdmFjdXVtIGRlbGF5IHBvaW50cywgaW4gbWlsbGlzZWNvbmRzLgor ICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAg PGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9k ZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+dG90YWxfdGltZTwvc3RydWN0Zmll bGQ+IDx0eXBlPmRvdWJsZSBwcmVjaXNpb248L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAg ICA8cGFyYT4KKyAgICAgICBUb3RhbCB3YWxsLWNsb2NrIHRpbWUgb2YgdGhlIHZhY3V1bSwg aW4gbWlsbGlzZWNvbmRzLCBpbmNsdWRpbmcgdGltZSBzcGVudCB3YWl0aW5nIGZvciBJL08g YW5kIGxvY2tzLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorICAgICA8 cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJv bGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+d3JhcGFyb3Vu ZF9mYWlsc2FmZTwvc3RydWN0ZmllbGQ+IDx0eXBlPmludGVnZXI8L3R5cGU+CisgICAgICA8 L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2YgdGltZXMgdGhlIGZhaWxz YWZlIG1lY2hhbmlzbSB3YXMgdHJpZ2dlcmVkIHRvIHByZXZlbnQgdHJhbnNhY3Rpb24gSUQg d3JhcGFyb3VuZCBkdXJpbmcgdGhlIHZhY3V1bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5Pgor ICAgICA8L3Jvdz4KICAgICA8L3Rib2R5PgogICAgPC90Z3JvdXA+CiAgIDwvdGFibGU+CkBA IC02MTAzLDYgKzYxNDMsMzggQEAgU0VMRUNUICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpP SU4gcGdfcHJlcGFyZWRfeGFjdHMgcHB4CiAgICAgICAgTnVtYmVyIG9mIGJsb2NrIGhpdHMg d2l0aGluIHRoaXMgaW5kZXggZHVyaW5nIHRoZSB2YWN1dW0uCiAgICAgICA8L3BhcmE+PC9l bnRyeT4KICAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAg ICAgIDxzdHJ1Y3RmaWVsZD5ibGtfcmVhZF90aW1lPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+ZG91 YmxlIHByZWNpc2lvbjwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAg ICAgIFRpbWUgc3BlbnQgcmVhZGluZyBpbmRleCBibG9ja3MsIGluIG1pbGxpc2Vjb25kcyAo aWYgPHZhcm5hbWU+dHJhY2tfaW9fdGltaW5nPC92YXJuYW1lPiBpcyBlbmFibGVkKS4KKyAg ICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxl bnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVm aW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPmJsa193cml0ZV90aW1lPC9zdHJ1Y3Rm aWVsZD4gPHR5cGU+ZG91YmxlIHByZWNpc2lvbjwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAg ICAgIDxwYXJhPgorICAgICAgIFRpbWUgc3BlbnQgd3JpdGluZyBpbmRleCBibG9ja3MsIGlu IG1pbGxpc2Vjb25kcyAoaWYgPHZhcm5hbWU+dHJhY2tfaW9fdGltaW5nPC92YXJuYW1lPiBp cyBlbmFibGVkKS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAg PHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSBy b2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPmRlbGF5X3Rp bWU8L3N0cnVjdGZpZWxkPiA8dHlwZT5kb3VibGUgcHJlY2lzaW9uPC90eXBlPgorICAgICAg PC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVGltZSBzcGVudCBpbiB2YWN1dW0gY29z dC1iYXNlZCBkZWxheSB3aGlsZSBwcm9jZXNzaW5nIHRoaXMgaW5kZXgsIGluIG1pbGxpc2Vj b25kcy4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4K KyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJj b2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnRvdGFsX3RpbWU8L3N0 cnVjdGZpZWxkPiA8dHlwZT5kb3VibGUgcHJlY2lzaW9uPC90eXBlPgorICAgICAgPC9wYXJh PgorICAgICAgPHBhcmE+CisgICAgICAgVG90YWwgdGltZSBzcGVudCB2YWN1dW1pbmcgdGhp cyBpbmRleCwgaW4gbWlsbGlzZWNvbmRzLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAg IDwvcm93PgogICAgIDwvdGJvZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KQEAgLTYx OTMsNiArNjI2NSw0NiBAQCBTRUxFQ1QgKiBGUk9NIHBnX2xvY2tzIHBsIExFRlQgSk9JTiBw Z19wcmVwYXJlZF94YWN0cyBwcHgKICAgICAgICBOdW1iZXIgb2Ygc2hhcmVkIGJ1ZmZlciBi bG9ja3Mgd3JpdHRlbiBvdXQgYnkgdmFjdXVtIG9wZXJhdGlvbnMgaW4gdGhpcyBkYXRhYmFz ZS4KICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAg ICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1 bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPndyYXBhcm91bmRfZmFpbHNh ZmU8L3N0cnVjdGZpZWxkPiA8dHlwZT5pbnRlZ2VyPC90eXBlPgorICAgICAgPC9wYXJhPgor ICAgICAgPHBhcmE+CisgICAgICAgTnVtYmVyIG9mIHZhY3V1bSBvcGVyYXRpb25zIGluIHRo aXMgZGF0YWJhc2UgdGhhdCBlbmdhZ2VkIHRoZSB3cmFwYXJvdW5kIGZhaWxzYWZlIG1lY2hh bmlzbS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4K KyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJj b2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPmJsa19yZWFkX3RpbWU8 L3N0cnVjdGZpZWxkPiA8dHlwZT5kb3VibGUgcHJlY2lzaW9uPC90eXBlPgorICAgICAgPC9w YXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVGltZSBzcGVudCByZWFkaW5nIGJsb2NrcyBi eSB2YWN1dW0gb3BlcmF0aW9ucyBpbiB0aGlzIGRhdGFiYXNlLCBpbiBtaWxsaXNlY29uZHMg KGlmIDx2YXJuYW1lPnRyYWNrX2lvX3RpbWluZzwvdmFybmFtZT4gaXMgZW5hYmxlZCkuCisg ICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5ibGtfd3JpdGVfdGltZTwvc3RydWN0 ZmllbGQ+IDx0eXBlPmRvdWJsZSBwcmVjaXNpb248L3R5cGU+CisgICAgICA8L3BhcmE+Cisg ICAgICA8cGFyYT4KKyAgICAgICBUaW1lIHNwZW50IHdyaXRpbmcgYmxvY2tzIGJ5IHZhY3V1 bSBvcGVyYXRpb25zIGluIHRoaXMgZGF0YWJhc2UsIGluIG1pbGxpc2Vjb25kcyAoaWYgPHZh cm5hbWU+dHJhY2tfaW9fdGltaW5nPC92YXJuYW1lPiBpcyBlbmFibGVkKS4KKyAgICAgIDwv cGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSBy b2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlv biI+CisgICAgICAgPHN0cnVjdGZpZWxkPmRlbGF5X3RpbWU8L3N0cnVjdGZpZWxkPiA8dHlw ZT5kb3VibGUgcHJlY2lzaW9uPC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+ CisgICAgICAgVGltZSBzcGVudCBpbiB2YWN1dW0gY29zdC1iYXNlZCBkZWxheSBieSB2YWN1 dW0gb3BlcmF0aW9ucyBpbiB0aGlzIGRhdGFiYXNlLCBpbiBtaWxsaXNlY29uZHMuCisgICAg ICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50 cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmlu aXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD50b3RhbF90aW1lPC9zdHJ1Y3RmaWVsZD4g PHR5cGU+ZG91YmxlIHByZWNpc2lvbjwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxw YXJhPgorICAgICAgIFRvdGFsIHRpbWUgc3BlbnQgYnkgdmFjdXVtIG9wZXJhdGlvbnMgaW4g dGhpcyBkYXRhYmFzZSwgaW4gbWlsbGlzZWNvbmRzLgorICAgICAgPC9wYXJhPjwvZW50cnk+ CisgICAgIDwvcm93PgogICAgIDwvdGJvZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4K ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYwppbmRleCBmZGQ3MDY1M2UzLi45 OTdlYWJmMWVjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC92YWN1dW1s YXp5LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVtbGF6eS5jCkBAIC01 NTIsNiArNTUyLDkgQEAgZXh0dmFjX3N0YXRzX2VuZChSZWxhdGlvbiByZWwsIExWRXh0U3Rh dENvdW50ZXJzICogY291bnRlcnMsCiAJCQkJIFBnU3RhdF9Db21tb25Db3VudHMgKiByZXBv cnQpCiB7CiAJQnVmZmVyVXNhZ2UgYnVmdXNhZ2U7CisJVGltZXN0YW1wVHogZW5kdGltZTsK Kwlsb25nCQlzZWNzOworCWludAkJCXVzZWNzOwogCiAJaWYgKCFwZ3N0YXRfdHJhY2tfdmFj dXVtX3N0YXRpc3RpY3MpCiAJCXJldHVybjsKQEAgLTU2Miw2ICs1NjUsOSBAQCBleHR2YWNf c3RhdHNfZW5kKFJlbGF0aW9uIHJlbCwgTFZFeHRTdGF0Q291bnRlcnMgKiBjb3VudGVycywK IAltZW1zZXQoJmJ1ZnVzYWdlLCAwLCBzaXplb2YoQnVmZmVyVXNhZ2UpKTsKIAlCdWZmZXJV c2FnZUFjY3VtRGlmZigmYnVmdXNhZ2UsICZwZ0J1ZmZlclVzYWdlLCAmY291bnRlcnMtPmJ1 ZnVzYWdlKTsKIAorCWVuZHRpbWUgPSBHZXRDdXJyZW50VGltZXN0YW1wKCk7CisJVGltZXN0 YW1wRGlmZmVyZW5jZShjb3VudGVycy0+c3RhcnR0aW1lLCBlbmR0aW1lLCAmc2VjcywgJnVz ZWNzKTsKKwogCS8qCiAJICogRmlsbCBhZGRpdGlvbmFsIHN0YXRpc3RpY3Mgb24gYSB2YWN1 dW0gcHJvY2Vzc2luZyBvcGVyYXRpb24uCiAJICovCkBAIC01NzAsNiArNTc2LDE0IEBAIGV4 dHZhY19zdGF0c19lbmQoUmVsYXRpb24gcmVsLCBMVkV4dFN0YXRDb3VudGVycyAqIGNvdW50 ZXJzLAogCXJlcG9ydC0+dG90YWxfYmxrc19kaXJ0aWVkICs9IGJ1ZnVzYWdlLmxvY2FsX2Js a3NfZGlydGllZCArIGJ1ZnVzYWdlLnNoYXJlZF9ibGtzX2RpcnRpZWQ7CiAJcmVwb3J0LT50 b3RhbF9ibGtzX3dyaXR0ZW4gKz0gYnVmdXNhZ2Uuc2hhcmVkX2Jsa3Nfd3JpdHRlbjsKIAor CXJlcG9ydC0+YmxrX3JlYWRfdGltZSArPSBJTlNUUl9USU1FX0dFVF9NSUxMSVNFQyhidWZ1 c2FnZS5sb2NhbF9ibGtfcmVhZF90aW1lKTsKKwlyZXBvcnQtPmJsa19yZWFkX3RpbWUgKz0g SU5TVFJfVElNRV9HRVRfTUlMTElTRUMoYnVmdXNhZ2Uuc2hhcmVkX2Jsa19yZWFkX3RpbWUp OworCXJlcG9ydC0+YmxrX3dyaXRlX3RpbWUgKz0gSU5TVFJfVElNRV9HRVRfTUlMTElTRUMo YnVmdXNhZ2UubG9jYWxfYmxrX3dyaXRlX3RpbWUpOworCXJlcG9ydC0+YmxrX3dyaXRlX3Rp bWUgKz0gSU5TVFJfVElNRV9HRVRfTUlMTElTRUMoYnVmdXNhZ2Uuc2hhcmVkX2Jsa193cml0 ZV90aW1lKTsKKwlyZXBvcnQtPmRlbGF5X3RpbWUgKz0gVmFjdXVtRGVsYXlUaW1lIC0gY291 bnRlcnMtPlZhY3V1bURlbGF5VGltZTsKKworCXJlcG9ydC0+dG90YWxfdGltZSArPSBzZWNz ICogMTAwMC4gKyB1c2VjcyAvIDEwMDAuOworCiAJaWYgKCFyZWwtPnBnc3RhdF9pbmZvIHx8 ICFwZ3N0YXRfdHJhY2tfY291bnRzKQogCiAJCS8qCkBAIC02NjcsMjEgKzY4MSwzMSBAQCBh Y2N1bXVsYXRlX2hlYXBfdmFjdXVtX3N0YXRpc3RpY3MoTFZSZWxTdGF0ZSAqdmFjcmVsLCBQ Z1N0YXRfVmFjdXVtUmVsYXRpb25Db3VudAogCWV4dFZhY1N0YXRzLT50YWJsZS5yZWNlbnRs eV9kZWFkX3R1cGxlcyA9IHZhY3JlbC0+cmVjZW50bHlfZGVhZF90dXBsZXM7CiAJZXh0VmFj U3RhdHMtPnRhYmxlLm1pc3NlZF9kZWFkX3R1cGxlcyA9IHZhY3JlbC0+bWlzc2VkX2RlYWRf dHVwbGVzOwogCWV4dFZhY1N0YXRzLT50YWJsZS5taXNzZWRfZGVhZF9wYWdlcyA9IHZhY3Jl bC0+bWlzc2VkX2RlYWRfcGFnZXM7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi53cmFwYXJvdW5k X2ZhaWxzYWZlX2NvdW50ID0gdmFjcmVsLT53cmFwYXJvdW5kX2ZhaWxzYWZlX2NvdW50Owog CisJZXh0VmFjU3RhdHMtPmNvbW1vbi5ibGtfcmVhZF90aW1lIC09IHZhY3JlbC0+ZXh0VmFj UmVwb3J0SWR4LmNvbW1vbi5ibGtfcmVhZF90aW1lOworCWV4dFZhY1N0YXRzLT5jb21tb24u YmxrX3dyaXRlX3RpbWUgLT0gdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9uLmJsa193 cml0ZV90aW1lOwogCWV4dFZhY1N0YXRzLT5jb21tb24udG90YWxfYmxrc19kaXJ0aWVkIC09 IHZhY3JlbC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQ7CiAJ ZXh0VmFjU3RhdHMtPmNvbW1vbi50b3RhbF9ibGtzX2hpdCAtPSB2YWNyZWwtPmV4dFZhY1Jl cG9ydElkeC5jb21tb24udG90YWxfYmxrc19oaXQ7CiAJZXh0VmFjU3RhdHMtPmNvbW1vbi50 b3RhbF9ibGtzX3JlYWQgLT0gdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9uLnRvdGFs X2Jsa3NfcmVhZDsKIAlleHRWYWNTdGF0cy0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbiAt PSB2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxrc193cml0dGVuOwor CisJZXh0VmFjU3RhdHMtPmNvbW1vbi50b3RhbF90aW1lIC09IHZhY3JlbC0+ZXh0VmFjUmVw b3J0SWR4LmNvbW1vbi50b3RhbF90aW1lOworCWV4dFZhY1N0YXRzLT5jb21tb24uZGVsYXlf dGltZSAtPSB2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24uZGVsYXlfdGltZTsKIH0K IAogc3RhdGljIHZvaWQKIGFjY3VtdWxhdGVfaWR4c192YWN1dW1fc3RhdGlzdGljcyhMVlJl bFN0YXRlICp2YWNyZWwsIFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqIGV4dFZhY0lk eFN0YXRzKQogewogCS8qIEZpbGwgaGVhcC1zcGVjaWZpYyBleHRlbmRlZCBzdGF0cyBmaWVs ZHMgKi8KKwl2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24uYmxrX3JlYWRfdGltZSAr PSBleHRWYWNJZHhTdGF0cy0+Y29tbW9uLmJsa19yZWFkX3RpbWU7CisJdmFjcmVsLT5leHRW YWNSZXBvcnRJZHguY29tbW9uLmJsa193cml0ZV90aW1lICs9IGV4dFZhY0lkeFN0YXRzLT5j b21tb24uYmxrX3dyaXRlX3RpbWU7CiAJdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9u LnRvdGFsX2Jsa3NfZGlydGllZCArPSBleHRWYWNJZHhTdGF0cy0+Y29tbW9uLnRvdGFsX2Js a3NfZGlydGllZDsKIAl2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxr c19oaXQgKz0gZXh0VmFjSWR4U3RhdHMtPmNvbW1vbi50b3RhbF9ibGtzX2hpdDsKIAl2YWNy ZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxrc19yZWFkICs9IGV4dFZhY0lk eFN0YXRzLT5jb21tb24udG90YWxfYmxrc19yZWFkOwogCXZhY3JlbC0+ZXh0VmFjUmVwb3J0 SWR4LmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4gKz0gZXh0VmFjSWR4U3RhdHMtPmNvbW1v bi50b3RhbF9ibGtzX3dyaXR0ZW47CisJdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9u LmRlbGF5X3RpbWUgKz0gZXh0VmFjSWR4U3RhdHMtPmNvbW1vbi5kZWxheV90aW1lOworCXZh Y3JlbC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi50b3RhbF90aW1lICs9IGV4dFZhY0lkeFN0 YXRzLT5jb21tb24udG90YWxfdGltZTsKIH0KIAogLyoKQEAgLTcwNiw2ICs3MzAsMTAgQEAg ZXh0dmFjX2FjY3VtdWxhdGVfaWR4X3JlcG9ydChQZ1N0YXRfVmFjdXVtUmVsYXRpb25Db3Vu dHMgKiBkc3QsCiAJZHN0LT5jb21tb24udG90YWxfYmxrc193cml0dGVuICs9IHNyYy0+Y29t bW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbjsKIAlkc3QtPmNvbW1vbi5ibGtzX2ZldGNoZWQgKz0g c3JjLT5jb21tb24uYmxrc19mZXRjaGVkOwogCWRzdC0+Y29tbW9uLmJsa3NfaGl0ICs9IHNy Yy0+Y29tbW9uLmJsa3NfaGl0OworCWRzdC0+Y29tbW9uLmJsa19yZWFkX3RpbWUgKz0gc3Jj LT5jb21tb24uYmxrX3JlYWRfdGltZTsKKwlkc3QtPmNvbW1vbi5ibGtfd3JpdGVfdGltZSAr PSBzcmMtPmNvbW1vbi5ibGtfd3JpdGVfdGltZTsKKwlkc3QtPmNvbW1vbi5kZWxheV90aW1l ICs9IHNyYy0+Y29tbW9uLmRlbGF5X3RpbWU7CisJZHN0LT5jb21tb24udG90YWxfdGltZSAr PSBzcmMtPmNvbW1vbi50b3RhbF90aW1lOwogCWRzdC0+Y29tbW9uLnR1cGxlc19kZWxldGVk ICs9IHNyYy0+Y29tbW9uLnR1cGxlc19kZWxldGVkOwogCiAJZHN0LT5pbmRleC5wYWdlc19k ZWxldGVkICs9IHNyYy0+aW5kZXgucGFnZXNfZGVsZXRlZDsKZGlmZiAtLWdpdCBhL3NyYy9i YWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cv c3lzdGVtX3ZpZXdzLnNxbAppbmRleCBlN2Q0MTY1ODQ0Li4xMTEzNTczM2MyIDEwMDY0NAot LS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKKysrIGIvc3JjL2Jh Y2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsCkBAIC0xNTgxLDcgKzE1ODEsMTIgQEAg Q1JFQVRFIFZJRVcgcGdfc3RhdF92YWN1dW1fdGFibGVzIEFTCiAgICAgICAgIFMudG90YWxf Ymxrc19kaXJ0aWVkIEFTIHRvdGFsX2Jsa3NfZGlydGllZCwKICAgICAgICAgUy50b3RhbF9i bGtzX3dyaXR0ZW4gQVMgdG90YWxfYmxrc193cml0dGVuLAogICAgICAgICBTLnJlbF9ibGtz X3JlYWQgQVMgcmVsX2Jsa3NfcmVhZCwKLSAgICAgICAgUy5yZWxfYmxrc19oaXQgQVMgcmVs X2Jsa3NfaGl0CisgICAgICAgIFMucmVsX2Jsa3NfaGl0IEFTIHJlbF9ibGtzX2hpdCwKKyAg ICAgICAgUy5ibGtfcmVhZF90aW1lIEFTIGJsa19yZWFkX3RpbWUsCisgICAgICAgIFMuYmxr X3dyaXRlX3RpbWUgQVMgYmxrX3dyaXRlX3RpbWUsCisgICAgICAgIFMuZGVsYXlfdGltZSBB UyBkZWxheV90aW1lLAorICAgICAgICBTLnRvdGFsX3RpbWUgQVMgdG90YWxfdGltZSwKKyAg ICAgICAgUy53cmFwYXJvdW5kX2ZhaWxzYWZlIEFTIHdyYXBhcm91bmRfZmFpbHNhZmUKIAog ICAgIEZST00gcGdfY2xhc3MgQyBKT0lOCiAgICAgICAgICAgICBwZ19uYW1lc3BhY2UgTiBP TiBOLm9pZCA9IEMucmVsbmFtZXNwYWNlLApAQCAtMTYwNSw3ICsxNjEwLDEyIEBAIENSRUFU RSBWSUVXIHBnX3N0YXRfdmFjdXVtX2luZGV4ZXMgQVMKICAgICAgICAgICAgIFMudG90YWxf Ymxrc193cml0dGVuIEFTIHRvdGFsX2Jsa3Nfd3JpdHRlbiwKIAogICAgICAgICAgICAgUy5y ZWxfYmxrc19yZWFkIEFTIHJlbF9ibGtzX3JlYWQsCi0gICAgICAgICAgICBTLnJlbF9ibGtz X2hpdCBBUyByZWxfYmxrc19oaXQKKyAgICAgICAgICAgIFMucmVsX2Jsa3NfaGl0IEFTIHJl bF9ibGtzX2hpdCwKKworICAgICAgICAgICAgUy5ibGtfcmVhZF90aW1lIEFTIGJsa19yZWFk X3RpbWUsCisgICAgICAgICAgICBTLmJsa193cml0ZV90aW1lIEFTIGJsa193cml0ZV90aW1l LAorICAgICAgICAgICAgUy5kZWxheV90aW1lIEFTIGRlbGF5X3RpbWUsCisgICAgICAgICAg ICBTLnRvdGFsX3RpbWUgQVMgdG90YWxfdGltZQogICAgIEZST00KICAgICAgICAgICAgIHBn X2NsYXNzIEMgSk9JTgogICAgICAgICAgICAgcGdfaW5kZXggWCBPTiBDLm9pZCA9IFguaW5k cmVsaWQgSk9JTgpAQCAtMTYyNCw3ICsxNjM0LDE0IEBAIENSRUFURSBWSUVXIHBnX3N0YXRf dmFjdXVtX2RhdGFiYXNlIEFTCiAgICAgICAgICAgICBTLmRiX2Jsa3NfcmVhZCBBUyBkYl9i bGtzX3JlYWQsCiAgICAgICAgICAgICBTLmRiX2Jsa3NfaGl0IEFTIGRiX2Jsa3NfaGl0LAog ICAgICAgICAgICAgUy50b3RhbF9ibGtzX2RpcnRpZWQgQVMgdG90YWxfYmxrc19kaXJ0aWVk LAotICAgICAgICAgICAgUy50b3RhbF9ibGtzX3dyaXR0ZW4gQVMgdG90YWxfYmxrc193cml0 dGVuCisgICAgICAgICAgICBTLnRvdGFsX2Jsa3Nfd3JpdHRlbiBBUyB0b3RhbF9ibGtzX3dy aXR0ZW4sCisKKyAgICAgICAgICAgIFMud3JhcGFyb3VuZF9mYWlsc2FmZSBBUyB3cmFwYXJv dW5kX2ZhaWxzYWZlLAorCisgICAgICAgICAgICBTLmJsa19yZWFkX3RpbWUgQVMgYmxrX3Jl YWRfdGltZSwKKyAgICAgICAgICAgIFMuYmxrX3dyaXRlX3RpbWUgQVMgYmxrX3dyaXRlX3Rp bWUsCisgICAgICAgICAgICBTLmRlbGF5X3RpbWUgQVMgZGVsYXlfdGltZSwKKyAgICAgICAg ICAgIFMudG90YWxfdGltZSBBUyB0b3RhbF90aW1lCiAgICAgRlJPTQogICAgICAgICAgICAg cGdfZGF0YWJhc2UgRCwKICAgICAgICAgICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVt X2RhdGFiYXNlKEQub2lkKSBTOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvcGdzdGF0X3ZhY3V1bS5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdz dGF0X3ZhY3V1bS5jCmluZGV4IDliMWVhZjBmNGEuLmQwZTJlZWEyNTggMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYworKysgYi9zcmMv YmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMKQEAgLTQ2LDcgKzQ2LDEz IEBAIHBnc3RhdF9hY2N1bXVsYXRlX2NvbW1vbihQZ1N0YXRfQ29tbW9uQ291bnRzICpkc3Qs IGNvbnN0IFBnU3RhdF9Db21tb25Db3VudHMgKnNyCiAJQUNDVU1VTEFURV9GSUVMRChibGtz X2ZldGNoZWQpOwogCUFDQ1VNVUxBVEVfRklFTEQoYmxrc19oaXQpOwogCisJQUNDVU1VTEFU RV9GSUVMRChibGtfcmVhZF90aW1lKTsKKwlBQ0NVTVVMQVRFX0ZJRUxEKGJsa193cml0ZV90 aW1lKTsKKwlBQ0NVTVVMQVRFX0ZJRUxEKGRlbGF5X3RpbWUpOworCUFDQ1VNVUxBVEVfRklF TEQodG90YWxfdGltZSk7CisKIAlBQ0NVTVVMQVRFX0ZJRUxEKHR1cGxlc19kZWxldGVkKTsK KwlBQ0NVTVVMQVRFX0ZJRUxEKHdyYXBhcm91bmRfZmFpbHNhZmVfY291bnQpOwogfQogCiAv KgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3Bnc3RhdGZ1bmNzLmMgYi9z cmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYwppbmRleCA0ZjBiZTY2NjIxLi43 NWViZmY2ZDY4IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVu Y3MuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYwpAQCAtMjM3 NCw3ICsyMzc0LDcgQEAgcGdfc3RhdF9oYXZlX3N0YXRzKFBHX0ZVTkNUSU9OX0FSR1MpCiBE YXR1bQogcGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhQR19GVU5DVElPTl9BUkdTKQogewot I2RlZmluZSBQR19TVEFUX0dFVF9WQUNVVU1fVEFCTEVTX1NUQVRTX0NPTFMgMTcKKyNkZWZp bmUgUEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19TVEFUU19DT0xTIDIyCiAKIAlPaWQJCQly ZWxpZCA9IFBHX0dFVEFSR19PSUQoMCk7CiAJUGdTdGF0X1ZhY3V1bVJlbGF0aW9uQ291bnRz ICpleHR2YWN1dW07CkBAIC0yNDE2LDYgKzI0MTYsMTEgQEAgcGdfc3RhdF9nZXRfdmFjdXVt X3RhYmxlcyhQR19GVU5DVElPTl9BUkdTKQogCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1 bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4pOwogCXZhbHVlc1tpKytd ID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi5ibGtzX2ZldGNoZWQgLSBleHR2 YWN1dW0tPmNvbW1vbi5ibGtzX2hpdCk7CiAJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVt KGV4dHZhY3V1bS0+Y29tbW9uLmJsa3NfaGl0KTsKKwl2YWx1ZXNbaSsrXSA9IEZsb2F0OEdl dERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmJsa19yZWFkX3RpbWUpOworCXZhbHVlc1tpKytd ID0gRmxvYXQ4R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24uYmxrX3dyaXRlX3RpbWUpOwor CXZhbHVlc1tpKytdID0gRmxvYXQ4R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24uZGVsYXlf dGltZSk7CisJdmFsdWVzW2krK10gPSBGbG9hdDhHZXREYXR1bShleHR2YWN1dW0tPmNvbW1v bi50b3RhbF90aW1lKTsKKwl2YWx1ZXNbaSsrXSA9IEludDMyR2V0RGF0dW0oZXh0dmFjdXVt LT5jb21tb24ud3JhcGFyb3VuZF9mYWlsc2FmZV9jb3VudCk7CiAKIAlBc3NlcnQoaSA9PSBQ R19TVEFUX0dFVF9WQUNVVU1fVEFCTEVTX1NUQVRTX0NPTFMpOwogCkBAIC0yNDI5LDcgKzI0 MzQsNyBAQCBwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiBE YXR1bQogcGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMoUEdfRlVOQ1RJT05fQVJHUykKIHsK LSNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX0lOREVYX1NUQVRTX0NPTFMgOQorI2RlZmlu ZSBQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyAxMwogCiAJT2lkCQkJcmVs aWQgPSBQR19HRVRBUkdfT0lEKDApOwogCVBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAq ZXh0dmFjdXVtOwpAQCAtMjQ2NSw2ICsyNDcwLDExIEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV9p bmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBJbnQ2NEdldERhdHVt KGV4dHZhY3V1bS0+Y29tbW9uLmJsa3NfZmV0Y2hlZCAtIGV4dHZhY3V1bS0+Y29tbW9uLmJs a3NfaGl0KTsKIAl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21t b24uYmxrc19oaXQpOwogCisJdmFsdWVzW2krK10gPSBGbG9hdDhHZXREYXR1bShleHR2YWN1 dW0tPmNvbW1vbi5ibGtfcmVhZF90aW1lKTsKKwl2YWx1ZXNbaSsrXSA9IEZsb2F0OEdldERh dHVtKGV4dHZhY3V1bS0+Y29tbW9uLmJsa193cml0ZV90aW1lKTsKKwl2YWx1ZXNbaSsrXSA9 IEZsb2F0OEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmRlbGF5X3RpbWUpOworCXZhbHVl c1tpKytdID0gRmxvYXQ4R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24udG90YWxfdGltZSk7 CisKIAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyk7 CiAKIAkvKiBSZXR1cm5zIHRoZSByZWNvcmQgYXMgRGF0dW0gKi8KQEAgLTI0NzcsNyArMjQ4 Nyw3IEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKFBHX0ZVTkNUSU9OX0FSR1MpCiBE YXR1bQogcGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlKFBHX0ZVTkNUSU9OX0FSR1MpCiB7 Ci0jZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9EQVRBQkFTRV9TVEFUU19DT0xTIDYKKyNk ZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFCQVNFX1NUQVRTX0NPTFMgMTEKIAogCU9p ZAkJCWRiaWQgPSBQR19HRVRBUkdfT0lEKDApOwogCVBnU3RhdF9WYWN1dW1EQkNvdW50cyAq ZXh0dmFjdXVtOwpAQCAtMjUwNSw2ICsyNTE1LDEzIEBAIHBnX3N0YXRfZ2V0X3ZhY3V1bV9k YXRhYmFzZShQR19GVU5DVElPTl9BUkdTKQogCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1 bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX2RpcnRpZWQpOwogCXZhbHVlc1tpKytd ID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW4p OwogCisJdmFsdWVzW2krK10gPSBJbnQzMkdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLndy YXBhcm91bmRfZmFpbHNhZmVfY291bnQpOworCisJdmFsdWVzW2krK10gPSBGbG9hdDhHZXRE YXR1bShleHR2YWN1dW0tPmNvbW1vbi5ibGtfcmVhZF90aW1lKTsKKwl2YWx1ZXNbaSsrXSA9 IEZsb2F0OEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmJsa193cml0ZV90aW1lKTsKKwl2 YWx1ZXNbaSsrXSA9IEZsb2F0OEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmRlbGF5X3Rp bWUpOworCXZhbHVlc1tpKytdID0gRmxvYXQ4R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24u dG90YWxfdGltZSk7CisKIAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1fREFUQUJB U0VfU1RBVFNfQ09MUyk7CiAKIAkvKiBSZXR1cm5zIHRoZSByZWNvcmQgYXMgRGF0dW0gKi8K ZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4IDE0ZjA3MGE5NDEuLjc1ZDZlMmIzMjkg MTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKKysrIGIvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdApAQCAtMTI2NDMsOSArMTI2NDMsOSBAQAog ICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzJywgcHJvcm93cyA9PiAx MDAwLCBwcm92b2xhdGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ3JlY29yZCcsIHByb2lz c3RyaWN0ID0+ICdmJywKICAgcHJvcmV0c2V0ID0+ICd0JywKICAgcHJvYXJndHlwZXMgPT4g J29pZCcsCi0gIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ4LGludDgsaW50OCxp bnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgs aW50OCxpbnQ4fScsCi0gIHByb2FyZ21vZGVzID0+ICd7aSxvLG8sbyxvLG8sbyxvLG8sbyxv LG8sbyxvLG8sbyxvLG99JywKLSAgcHJvYXJnbmFtZXMgPT4gJ3tyZWxvaWQscmVsaWQscGFn ZXNfc2Nhbm5lZCxwYWdlc19yZW1vdmVkLHR1cGxlc19kZWxldGVkLHR1cGxlc19mcm96ZW4s cmVjZW50bHlfZGVhZF90dXBsZXMsbWlzc2VkX2RlYWRfcGFnZXMsbWlzc2VkX2RlYWRfdHVw bGVzLHZtX25ld19mcm96ZW5fcGFnZXMsdm1fbmV3X3Zpc2libGVfcGFnZXMsdm1fbmV3X3Zp c2libGVfZnJvemVuX3BhZ2VzLHRvdGFsX2Jsa3NfcmVhZCx0b3RhbF9ibGtzX2hpdCx0b3Rh bF9ibGtzX2RpcnRpZWQsdG90YWxfYmxrc193cml0dGVuLHJlbF9ibGtzX3JlYWQscmVsX2Js a3NfaGl0fScsCisgIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ4LGludDgsaW50 OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGlu dDgsaW50OCxpbnQ4LGZsb2F0OCxmbG9hdDgsZmxvYXQ4LGZsb2F0OCxpbnQ0fScsCisgIHBy b2FyZ21vZGVzID0+ICd7aSxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxv LG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7cmVsb2lkLHJlbGlkLHBhZ2VzX3NjYW5u ZWQscGFnZXNfcmVtb3ZlZCx0dXBsZXNfZGVsZXRlZCx0dXBsZXNfZnJvemVuLHJlY2VudGx5 X2RlYWRfdHVwbGVzLG1pc3NlZF9kZWFkX3BhZ2VzLG1pc3NlZF9kZWFkX3R1cGxlcyx2bV9u ZXdfZnJvemVuX3BhZ2VzLHZtX25ld192aXNpYmxlX3BhZ2VzLHZtX25ld192aXNpYmxlX2Zy b3plbl9wYWdlcyx0b3RhbF9ibGtzX3JlYWQsdG90YWxfYmxrc19oaXQsdG90YWxfYmxrc19k aXJ0aWVkLHRvdGFsX2Jsa3Nfd3JpdHRlbixyZWxfYmxrc19yZWFkLHJlbF9ibGtzX2hpdCxi bGtfcmVhZF90aW1lLGJsa193cml0ZV90aW1lLGRlbGF5X3RpbWUsdG90YWxfdGltZSx3cmFw YXJvdW5kX2ZhaWxzYWZlfScsCiAgIHByb3NyYyA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX3Rh YmxlcycgfQogCiAjIG9pZDggcmVsYXRlZCBmdW5jdGlvbnMKQEAgLTEyNzE4LDE3ICsxMjcx OCwxNyBAQAogICBwcm9uYW1lID0+ICdwZ19zdGF0X2dldF92YWN1dW1faW5kZXhlcycsIHBy b3Jvd3MgPT4gMTAwMCwgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9yZXR0eXBlID0+ICdyZWNv cmQnLCBwcm9pc3N0cmljdCA9PiAnZicsCiAgIHByb3JldHNldCA9PiAndCcsCiAgIHByb2Fy Z3R5cGVzID0+ICdvaWQnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxp bnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4fScsCi0gIHByb2FyZ21vZGVzID0+ ICd7aSxvLG8sbyxvLG8sbyxvLG8sb30nLAotICBwcm9hcmduYW1lcyA9PiAne3JlbG9pZCxy ZWxpZCxwYWdlc19kZWxldGVkLHR1cGxlc19kZWxldGVkLHRvdGFsX2Jsa3NfcmVhZCx0b3Rh bF9ibGtzX2hpdCx0b3RhbF9ibGtzX2RpcnRpZWQsdG90YWxfYmxrc193cml0dGVuLHJlbF9i bGtzX3JlYWQscmVsX2Jsa3NfaGl0fScsCisgIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9p ZCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsZmxvYXQ4LGZsb2F0 OCxmbG9hdDgsZmxvYXQ4fScsCisgIHByb2FyZ21vZGVzID0+ICd7aSxvLG8sbyxvLG8sbyxv LG8sbyxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7cmVsb2lkLHJlbGlkLHBhZ2Vz X2RlbGV0ZWQsdHVwbGVzX2RlbGV0ZWQsdG90YWxfYmxrc19yZWFkLHRvdGFsX2Jsa3NfaGl0 LHRvdGFsX2Jsa3NfZGlydGllZCx0b3RhbF9ibGtzX3dyaXR0ZW4scmVsX2Jsa3NfcmVhZCxy ZWxfYmxrc19oaXQsYmxrX3JlYWRfdGltZSxibGtfd3JpdGVfdGltZSxkZWxheV90aW1lLHRv dGFsX3RpbWV9JywKICAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF92YWN1dW1faW5kZXhlcycg fSwKIHsgb2lkID0+ICc4MDA1JywKICAgZGVzY3IgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1bV9k YXRhYmFzZSByZXR1cm5zIHZhY3V1bSBzdGF0cyB2YWx1ZXMgZm9yIGRhdGFiYXNlJywKICAg cHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlJywgcHJvcm93cyA9PiAx MDAwLCBwcm92b2xhdGlsZSA9PiAncycsIHByb3JldHR5cGUgPT4gJ3JlY29yZCcsIHByb2lz c3RyaWN0ID0+ICdmJywKICAgcHJvcmV0c2V0ID0+ICd0JywKICAgcHJvYXJndHlwZXMgPT4g J29pZCcsCi0gIHByb2FsbGFyZ3R5cGVzID0+ICd7b2lkLG9pZCxpbnQ0LGludDgsaW50OCxp bnQ4LGludDh9JywKLSAgcHJvYXJnbW9kZXMgPT4gJ3tpLG8sbyxvLG8sbyxvfScsCi0gIHBy b2FyZ25hbWVzID0+ICd7ZGJpZCxkYm9pZCxlcnJvcnMsZGJfYmxrc19yZWFkLGRiX2Jsa3Nf aGl0LHRvdGFsX2Jsa3NfZGlydGllZCx0b3RhbF9ibGtzX3dyaXR0ZW59JywKKyAgcHJvYWxs YXJndHlwZXMgPT4gJ3tvaWQsb2lkLGludDQsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ0LGZs b2F0OCxmbG9hdDgsZmxvYXQ4LGZsb2F0OH0nLAorICBwcm9hcmdtb2RlcyA9PiAne2ksbyxv LG8sbyxvLG8sbyxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7ZGJpZCxkYm9pZCxl cnJvcnMsZGJfYmxrc19yZWFkLGRiX2Jsa3NfaGl0LHRvdGFsX2Jsa3NfZGlydGllZCx0b3Rh bF9ibGtzX3dyaXR0ZW4sd3JhcGFyb3VuZF9mYWlsc2FmZSxibGtfcmVhZF90aW1lLGJsa193 cml0ZV90aW1lLGRlbGF5X3RpbWUsdG90YWxfdGltZX0nLAogICBwcm9zcmMgPT4gJ3BnX3N0 YXRfZ2V0X3ZhY3V1bV9kYXRhYmFzZScgfSwKIF0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRl L3Bnc3RhdC5oIGIvc3JjL2luY2x1ZGUvcGdzdGF0LmgKaW5kZXggZGUzODk0OWQxMi4uYmZj Mjk5NTM4OSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGdzdGF0LmgKKysrIGIvc3JjL2lu Y2x1ZGUvcGdzdGF0LmgKQEAgLTE4NSw4ICsxODUsMTcgQEAgdHlwZWRlZiBzdHJ1Y3QgUGdT dGF0X0NvbW1vbkNvdW50cwogCWludDY0CQlibGtzX2ZldGNoZWQ7CiAJaW50NjQJCWJsa3Nf aGl0OwogCisJLyogVGltZSAqLworCWRvdWJsZQkJYmxrX3JlYWRfdGltZTsKKwlkb3VibGUJ CWJsa193cml0ZV90aW1lOworCWRvdWJsZQkJZGVsYXlfdGltZTsKKwlkb3VibGUJCXRvdGFs X3RpbWU7CisKIAkvKiB0dXBsZXMgKi8KIAlpbnQ2NAkJdHVwbGVzX2RlbGV0ZWQ7CisKKwkv KiBmYWlsc2FmZSAqLworCWludDMyCQl3cmFwYXJvdW5kX2ZhaWxzYWZlX2NvdW50OwogfQkJ CVBnU3RhdF9Db21tb25Db3VudHM7CiAKIC8qIC0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L21vZHVsZXMveGlkX3dyYXBhcm91bmQvbWVzb24uYnVpbGQgYi9zcmMvdGVzdC9t b2R1bGVzL3hpZF93cmFwYXJvdW5kL21lc29uLmJ1aWxkCmluZGV4IDk3Y2U2NzBmOWEuLjky MjRlNTlkMWQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L21vZHVsZXMveGlkX3dyYXBhcm91bmQv bWVzb24uYnVpbGQKKysrIGIvc3JjL3Rlc3QvbW9kdWxlcy94aWRfd3JhcGFyb3VuZC9tZXNv bi5idWlsZApAQCAtMzEsNiArMzEsNyBAQCB0ZXN0cyArPSB7CiAgICAgICAndC8wMDJfbGlt aXRzLnBsJywKICAgICAgICd0LzAwM193cmFwYXJvdW5kcy5wbCcsCiAgICAgICAndC8wMDRf bm90aWZ5X2ZyZWV6ZS5wbCcsCisgICAgICAndC8wMDVfdmFjdXVtX3N0YXRzX2ZhaWxzYWZl LnBsJywKICAgICBdLAogICB9LAogfQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvbW9kdWxlcy94 aWRfd3JhcGFyb3VuZC90LzAwNV92YWN1dW1fc3RhdHNfZmFpbHNhZmUucGwgYi9zcmMvdGVz dC9tb2R1bGVzL3hpZF93cmFwYXJvdW5kL3QvMDA1X3ZhY3V1bV9zdGF0c19mYWlsc2FmZS5w bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5lZmY3N2ZlODc2Ci0t LSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvbW9kdWxlcy94aWRfd3JhcGFyb3VuZC90LzAw NV92YWN1dW1fc3RhdHNfZmFpbHNhZmUucGwKQEAgLTAsMCArMSw2NiBAQAorIyBDb3B5cmln aHQgKGMpIDIwMjQtMjAyNiwgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQgR3JvdXAK KworIyBUZXN0IHRoYXQgdGhlIHdyYXBhcm91bmQgZmFpbHNhZmUgY291bnRlciBleHBvc2Vk IGJ5IHRoZSBleHRlbmRlZCB2YWN1dW0KKyMgc3RhdGlzdGljcyB2aWV3cyBhZHZhbmNlcyB3 aGVuIGEgVkFDVVVNIGVuZ2FnZXMgdGhlIHdyYXBhcm91bmQgZmFpbHNhZmUuCisjCisjIFRo ZSBmYWlsc2FmZSBvbmx5IHRyaWdnZXJzIG9uY2UgYSByZWxhdGlvbidzIGFnZSBleGNlZWRz CisjIG1heCh2YWN1dW1fZmFpbHNhZmVfYWdlLCBhdXRvdmFjdXVtX2ZyZWV6ZV9tYXhfYWdl ICogMS4wNSksIHdoaWNoIGNhbm5vdCBiZQorIyByZWFjaGVkIGJ5IGFuIG9yZGluYXJ5IHJl Z3Jlc3Npb24gdGVzdC4gIEhlcmUgd2UgbG93ZXIKKyMgYXV0b3ZhY3V1bV9mcmVlemVfbWF4 X2FnZSB0byBpdHMgbWluaW11bSBhbmQgdXNlIHRoZSB4aWRfd3JhcGFyb3VuZAorIyBleHRl bnNpb24gdG8gYnVybiBlbm91Z2ggdHJhbnNhY3Rpb24gSURzIHRvIGFnZSB0aGUgdGFibGUg cGFzdCB0aGF0CisjIHRocmVzaG9sZCwgdGhlbiBjaGVjayB0aGF0IHRoZSB3cmFwYXJvdW5k X2ZhaWxzYWZlIGNvdW50ZXJzIGFkdmFuY2UuCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2Fybmlu Z3MgRkFUQUwgPT4gJ2FsbCc7Cit1c2UgUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3RlcjsKK3Vz ZSBQb3N0Z3JlU1FMOjpUZXN0OjpVdGlsczsKK3VzZSBUZXN0OjpNb3JlOworCitpZiAoISRF TlZ7UEdfVEVTVF9FWFRSQX0gfHwgJEVOVntQR19URVNUX0VYVFJBfSAhfiAvXGJ4aWRfd3Jh cGFyb3VuZFxiLykKK3sKKwlwbGFuIHNraXBfYWxsID0+ICJ0ZXN0IHhpZF93cmFwYXJvdW5k IG5vdCBlbmFibGVkIGluIFBHX1RFU1RfRVhUUkEiOworfQorCitteSAkbm9kZSA9IFBvc3Rn cmVTUUw6OlRlc3Q6OkNsdXN0ZXItPm5ldygnbWFpbicpOworJG5vZGUtPmluaXQ7Ciskbm9k ZS0+YXBwZW5kX2NvbmYoCisJJ3Bvc3RncmVzcWwuY29uZicsIHFxWworYXV0b3ZhY3V1bSA9 IG9mZgordHJhY2tfdmFjdXVtX3N0YXRpc3RpY3MgPSBvbgorIyBMb3dlciB0aGUgd3JhcGFy b3VuZC1mYWlsc2FmZSB0aHJlc2hvbGQgYXMgZmFyIGFzIHBvc3NpYmxlIHNvIHRoYXQgYSBt b2Rlc3QKKyMgbnVtYmVyIG9mIGNvbnN1bWVkIFhJRHMgaXMgZW5vdWdoIHRvIGVuZ2FnZSB0 aGUgZmFpbHNhZmUuCithdXRvdmFjdXVtX2ZyZWV6ZV9tYXhfYWdlID0gMTAwMDAwCit2YWN1 dW1fZmFpbHNhZmVfYWdlID0gMAorXSk7Ciskbm9kZS0+c3RhcnQ7Ciskbm9kZS0+c2FmZV9w c3FsKCdwb3N0Z3JlcycsICdDUkVBVEUgRVhURU5TSU9OIHhpZF93cmFwYXJvdW5kJyk7CisK KyMgQSB0YWJsZSB3aG9zZSByZWxmcm96ZW54aWQgYWdlIHdlIHdpbGwgcHVzaCBwYXN0IHRo ZSBmYWlsc2FmZSB0aHJlc2hvbGQuCiskbm9kZS0+c2FmZV9wc3FsKAorCSdwb3N0Z3Jlcycs IHFxWworQ1JFQVRFIFRBQkxFIGZzX3RhYiAoaWQgaW50KSBXSVRIIChhdXRvdmFjdXVtX2Vu YWJsZWQgPSBvZmYpOworSU5TRVJUIElOVE8gZnNfdGFiIFNFTEVDVCBnZW5lcmF0ZV9zZXJp ZXMoMSwgMTAwMCk7CitdKTsKKworIyBBZHZhbmNlIHRoZSBYSUQgY291bnRlciB3ZWxsIHBh c3QgdGhlIGZhaWxzYWZlIHRocmVzaG9sZC4KKyRub2RlLT5zYWZlX3BzcWwoJ3Bvc3RncmVz JywgJ1NFTEVDVCBjb25zdW1lX3hpZHMoMjAwMDAwKScpOworCisjIFRoaXMgVkFDVVVNIG11 c3QgZW5nYWdlIHRoZSB3cmFwYXJvdW5kIGZhaWxzYWZlLgorJG5vZGUtPnNhZmVfcHNxbCgn cG9zdGdyZXMnLCAnVkFDVVVNIGZzX3RhYicpOworCisjIFRoZSBwZXItdGFibGUgdmlldyBy ZWNvcmRzIHRoYXQgdGhlIGZhaWxzYWZlIHdhcyBlbmdhZ2VkIGZvciB0aGlzIHJlbGF0aW9u LgorbXkgJHRhYiA9ICRub2RlLT5zYWZlX3BzcWwoCisJJ3Bvc3RncmVzJywgcXFbCitTRUxF Q1Qgd3JhcGFyb3VuZF9mYWlsc2FmZSA+IDAKKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJs ZXMgV0hFUkUgcmVsbmFtZSA9ICdmc190YWInXSk7CitpcygkdGFiLCAndCcsICd3cmFwYXJv dW5kX2ZhaWxzYWZlIGFkdmFuY2VkIGluIHBnX3N0YXRfdmFjdXVtX3RhYmxlcycpOworCisj IFRoZSBwZXItZGF0YWJhc2UgYWdncmVnYXRlIGNvdW50cyB0aGUgZmFpbHNhZmUgYXMgd2Vs bC4KK215ICRkYiA9ICRub2RlLT5zYWZlX3BzcWwoCisJJ3Bvc3RncmVzJywgcXFbCitTRUxF Q1Qgd3JhcGFyb3VuZF9mYWlsc2FmZSA+IDAKKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV9kYXRh YmFzZSBXSEVSRSBkYm5hbWUgPSBjdXJyZW50X2RhdGFiYXNlKCldKTsKK2lzKCRkYiwgJ3Qn LCAnd3JhcGFyb3VuZF9mYWlsc2FmZSBhZHZhbmNlZCBpbiBwZ19zdGF0X3ZhY3V1bV9kYXRh YmFzZScpOworCiskbm9kZS0+c3RvcDsKK2RvbmVfdGVzdGluZygpOwpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3J1bGVzLm91dAppbmRleCAwYjI4ZTJmZmMzLi45NTIzOTJmNjZkIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dAorKysgYi9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dApAQCAtMjQyNyw5ICsyNDI3LDE0IEBA IHBnX3N0YXRfdmFjdXVtX2RhdGFiYXNlfCBTRUxFQ1QgZC5vaWQgQVMgZGJvaWQsCiAgICAg cy5kYl9ibGtzX3JlYWQsCiAgICAgcy5kYl9ibGtzX2hpdCwKICAgICBzLnRvdGFsX2Jsa3Nf ZGlydGllZCwKLSAgICBzLnRvdGFsX2Jsa3Nfd3JpdHRlbgorICAgIHMudG90YWxfYmxrc193 cml0dGVuLAorICAgIHMud3JhcGFyb3VuZF9mYWlsc2FmZSwKKyAgICBzLmJsa19yZWFkX3Rp bWUsCisgICAgcy5ibGtfd3JpdGVfdGltZSwKKyAgICBzLmRlbGF5X3RpbWUsCisgICAgcy50 b3RhbF90aW1lCiAgICBGUk9NIHBnX2RhdGFiYXNlIGQsCi0gICAgTEFURVJBTCBwZ19zdGF0 X2dldF92YWN1dW1fZGF0YWJhc2UoZC5vaWQpIHMoZGJvaWQsIGVycm9ycywgZGJfYmxrc19y ZWFkLCBkYl9ibGtzX2hpdCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3RhbF9ibGtzX3dyaXR0 ZW4pOworICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlKGQub2lkKSBz KGRib2lkLCBlcnJvcnMsIGRiX2Jsa3NfcmVhZCwgZGJfYmxrc19oaXQsIHRvdGFsX2Jsa3Nf ZGlydGllZCwgdG90YWxfYmxrc193cml0dGVuLCB3cmFwYXJvdW5kX2ZhaWxzYWZlLCBibGtf cmVhZF90aW1lLCBibGtfd3JpdGVfdGltZSwgZGVsYXlfdGltZSwgdG90YWxfdGltZSk7CiBw Z19zdGF0X3ZhY3V1bV9pbmRleGVzfCBTRUxFQ1QgYy5vaWQgQVMgcmVsaWQsCiAgICAgaS5v aWQgQVMgaW5kZXhyZWxpZCwKICAgICBuLm5zcG5hbWUgQVMgc2NoZW1hbmFtZSwKQEAgLTI0 NDIsMTIgKzI0NDcsMTYgQEAgcGdfc3RhdF92YWN1dW1faW5kZXhlc3wgU0VMRUNUIGMub2lk IEFTIHJlbGlkLAogICAgIHMudG90YWxfYmxrc19kaXJ0aWVkLAogICAgIHMudG90YWxfYmxr c193cml0dGVuLAogICAgIHMucmVsX2Jsa3NfcmVhZCwKLSAgICBzLnJlbF9ibGtzX2hpdAor ICAgIHMucmVsX2Jsa3NfaGl0LAorICAgIHMuYmxrX3JlYWRfdGltZSwKKyAgICBzLmJsa193 cml0ZV90aW1lLAorICAgIHMuZGVsYXlfdGltZSwKKyAgICBzLnRvdGFsX3RpbWUKICAgIEZS T00gKCgocGdfY2xhc3MgYwogICAgICBKT0lOIHBnX2luZGV4IHggT04gKChjLm9pZCA9IHgu aW5kcmVsaWQpKSkKICAgICAgSk9JTiBwZ19jbGFzcyBpIE9OICgoaS5vaWQgPSB4LmluZGV4 cmVsaWQpKSkKICAgICAgTEVGVCBKT0lOIHBnX25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBj LnJlbG5hbWVzcGFjZSkpKSwKLSAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRl eGVzKGkub2lkKSBzKHJlbGlkLCBwYWdlc19kZWxldGVkLCB0dXBsZXNfZGVsZXRlZCwgdG90 YWxfYmxrc19yZWFkLCB0b3RhbF9ibGtzX2hpdCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3Rh bF9ibGtzX3dyaXR0ZW4sIHJlbF9ibGtzX3JlYWQsIHJlbF9ibGtzX2hpdCkKKyAgICBMQVRF UkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKGkub2lkKSBzKHJlbGlkLCBwYWdlc19k ZWxldGVkLCB0dXBsZXNfZGVsZXRlZCwgdG90YWxfYmxrc19yZWFkLCB0b3RhbF9ibGtzX2hp dCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3RhbF9ibGtzX3dyaXR0ZW4sIHJlbF9ibGtzX3Jl YWQsIHJlbF9ibGtzX2hpdCwgYmxrX3JlYWRfdGltZSwgYmxrX3dyaXRlX3RpbWUsIGRlbGF5 X3RpbWUsIHRvdGFsX3RpbWUpCiAgIFdIRVJFIChjLnJlbGtpbmQgPSBBTlkgKEFSUkFZWydy Jzo6ImNoYXIiLCAndCc6OiJjaGFyIiwgJ20nOjoiY2hhciJdKSk7CiBwZ19zdGF0X3ZhY3V1 bV90YWJsZXN8IFNFTEVDVCBuLm5zcG5hbWUgQVMgc2NoZW1hbmFtZSwKICAgICBjLnJlbG5h bWUsCkBAIC0yNDY3LDEwICsyNDc2LDE1IEBAIHBnX3N0YXRfdmFjdXVtX3RhYmxlc3wgU0VM RUNUIG4ubnNwbmFtZSBBUyBzY2hlbWFuYW1lLAogICAgIHMudG90YWxfYmxrc19kaXJ0aWVk LAogICAgIHMudG90YWxfYmxrc193cml0dGVuLAogICAgIHMucmVsX2Jsa3NfcmVhZCwKLSAg ICBzLnJlbF9ibGtzX2hpdAorICAgIHMucmVsX2Jsa3NfaGl0LAorICAgIHMuYmxrX3JlYWRf dGltZSwKKyAgICBzLmJsa193cml0ZV90aW1lLAorICAgIHMuZGVsYXlfdGltZSwKKyAgICBz LnRvdGFsX3RpbWUsCisgICAgcy53cmFwYXJvdW5kX2ZhaWxzYWZlCiAgICBGUk9NIChwZ19j bGFzcyBjCiAgICAgIEpPSU4gcGdfbmFtZXNwYWNlIG4gT04gKChuLm9pZCA9IGMucmVsbmFt ZXNwYWNlKSkpLAotICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhjLm9p ZCkgcyhyZWxpZCwgcGFnZXNfc2Nhbm5lZCwgcGFnZXNfcmVtb3ZlZCwgdHVwbGVzX2RlbGV0 ZWQsIHR1cGxlc19mcm96ZW4sIHJlY2VudGx5X2RlYWRfdHVwbGVzLCBtaXNzZWRfZGVhZF9w YWdlcywgbWlzc2VkX2RlYWRfdHVwbGVzLCB2bV9uZXdfZnJvemVuX3BhZ2VzLCB2bV9uZXdf dmlzaWJsZV9wYWdlcywgdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzLCB0b3RhbF9ibGtz X3JlYWQsIHRvdGFsX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Jsa3Nf d3JpdHRlbiwgcmVsX2Jsa3NfcmVhZCwgcmVsX2Jsa3NfaGl0KQorICAgIExBVEVSQUwgcGdf c3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhjLm9pZCkgcyhyZWxpZCwgcGFnZXNfc2Nhbm5lZCwg cGFnZXNfcmVtb3ZlZCwgdHVwbGVzX2RlbGV0ZWQsIHR1cGxlc19mcm96ZW4sIHJlY2VudGx5 X2RlYWRfdHVwbGVzLCBtaXNzZWRfZGVhZF9wYWdlcywgbWlzc2VkX2RlYWRfdHVwbGVzLCB2 bV9uZXdfZnJvemVuX3BhZ2VzLCB2bV9uZXdfdmlzaWJsZV9wYWdlcywgdm1fbmV3X3Zpc2li bGVfZnJvemVuX3BhZ2VzLCB0b3RhbF9ibGtzX3JlYWQsIHRvdGFsX2Jsa3NfaGl0LCB0b3Rh bF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Jsa3Nfd3JpdHRlbiwgcmVsX2Jsa3NfcmVhZCwgcmVs X2Jsa3NfaGl0LCBibGtfcmVhZF90aW1lLCBibGtfd3JpdGVfdGltZSwgZGVsYXlfdGltZSwg dG90YWxfdGltZSwgd3JhcGFyb3VuZF9mYWlsc2FmZSkKICAgV0hFUkUgKGMucmVsa2luZCA9 IEFOWSAoQVJSQVlbJ3InOjoiY2hhciIsICd0Jzo6ImNoYXIiLCAnbSc6OiJjaGFyIl0pKTsK IHBnX3N0YXRfd2FsfCBTRUxFQ1Qgd2FsX3JlY29yZHMsCiAgICAgd2FsX2ZwaSwKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dCBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdmFjdXVtX3N0YXRzLm91dAppbmRleCBiZjJmYmM3 NjI2Li5iNWJhZTk5OTQ2IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3ZhY3V1bV9zdGF0cy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC92YWN1 dW1fc3RhdHMub3V0CkBAIC0xMjQsNiArMTI0LDQzIEBAIFNFTEVDVCByZWxfYmxrc19yZWFk ID49IDAgQVMgcmVsX2Jsa3NfcmVhZCwKICB0ICAgICAgICAgICAgIHwgdAogKDEgcm93KQog CistLSB0aW1pbmcgbWV0cmljcyBhbmQgZmFpbHNhZmUuICBUaGUgdmFjdXVtIGFsd2F5cyB0 YWtlcyBzb21lIHdhbGwtY2xvY2sgdGltZQorLS0gKHRvdGFsX3RpbWUgPiAwKSBhbmQgZG9l cyBub3QgZW5nYWdlIHRoZSB3cmFwYXJvdW5kIGZhaWxzYWZlIHVuZGVyIG5vcm1hbAorLS0g Y29uZGl0aW9ucyAod3JhcGFyb3VuZF9mYWlsc2FmZSA9IDApLiAgYmxrX3JlYWRfdGltZS9i bGtfd3JpdGVfdGltZSBhcmUgb25seQorLS0gbm9uLXplcm8gd2hlbiB0cmFja19pb190aW1p bmcgaXMgZW5hYmxlZCwgYW5kIGRlbGF5X3RpbWUgb25seSB3aGVuIGEgdmFjdXVtCistLSBj b3N0IGRlbGF5IGlzIGNvbmZpZ3VyZWQsIHNvIHRob3NlIGFyZSBtZXJlbHkgY2hlY2tlZCBm b3IgYmVpbmcKKy0tIG5vbi1uZWdhdGl2ZTsgdGhlIHBvc2l0aXZlIGRlbGF5X3RpbWUgcGF0 aCBpcyBleGVyY2lzZWQgc2VwYXJhdGVseSBiZWxvdy4KK1NFTEVDVCBibGtfcmVhZF90aW1l ID49IDAgQVMgYmxrX3JlYWRfdGltZSwKKyAgICAgICBibGtfd3JpdGVfdGltZSA+PSAwIEFT IGJsa193cml0ZV90aW1lLAorICAgICAgIGRlbGF5X3RpbWUgPj0gMCBBUyBkZWxheV90aW1l LAorICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUsCisgICAgICAgd3JhcGFy b3VuZF9mYWlsc2FmZSA9IDAgQVMgd3JhcGFyb3VuZF9mYWlsc2FmZQorICBGUk9NIHBnX3N0 YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfdCc7CisgYmxrX3Jl YWRfdGltZSB8IGJsa193cml0ZV90aW1lIHwgZGVsYXlfdGltZSB8IHRvdGFsX3RpbWUgfCB3 cmFwYXJvdW5kX2ZhaWxzYWZlIAorLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB0ICAg ICAgICAgICAgIHwgdCAgICAgICAgICAgICAgfCB0ICAgICAgICAgIHwgdCAgICAgICAgICB8 IHQKKygxIHJvdykKKworLS0gZGVsYXkgcGF0aDogd2l0aCBhIHZhY3V1bSBjb3N0IGRlbGF5 IGNvbmZpZ3VyZWQsIGEgdmFjdXVtIHRoYXQgYWNjcnVlcyBjb3N0CistLSBzbGVlcHMsIHNv IGRlbGF5X3RpbWUgYWR2YW5jZXMuCitDUkVBVEUgVEFCTEUgdmFjc3RhdF9kZWxheSAoaWQg aW50IFBSSU1BUlkgS0VZLCB2IHRleHQpCisgIFdJVEggKGF1dG92YWN1dW1fZW5hYmxlZCA9 IG9mZiwgZmlsbGZhY3RvciA9IDEwKTsKK0lOU0VSVCBJTlRPIHZhY3N0YXRfZGVsYXkgU0VM RUNUIGcsIHJlcGVhdCgneCcsIDEwMCkgRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzAwMCkg ZzsKK0RFTEVURSBGUk9NIHZhY3N0YXRfZGVsYXkgV0hFUkUgaWQgJSAyID0gMDsKK1NFVCB2 YWN1dW1fY29zdF9kZWxheSA9ICcxbXMnOworU0VUIHZhY3V1bV9jb3N0X2xpbWl0ID0gMTsK K1ZBQ1VVTSB2YWNzdGF0X2RlbGF5OworUkVTRVQgdmFjdXVtX2Nvc3RfZGVsYXk7CitSRVNF VCB2YWN1dW1fY29zdF9saW1pdDsKK1NFTEVDVCBkZWxheV90aW1lID4gMCBBUyBkZWxheV90 aW1lLAorICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUKKyAgRlJPTSBwZ19z dGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X2RlbGF5JzsKKyBk ZWxheV90aW1lIHwgdG90YWxfdGltZSAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyB0 ICAgICAgICAgIHwgdAorKDEgcm93KQorCitEUk9QIFRBQkxFIHZhY3N0YXRfZGVsYXk7CiAt LSBwZXItaW5kZXggdmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4IGlzIHByb2Nlc3NlZCBi eSB0aGUgc2FtZSBWQUNVVU0uCiAtLSBObyBidHJlZSBsZWFmIGVtcHRpZXMgb3V0IChpbnRl cmxlYXZlZCBkZWxldGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0gMCwKIC0tIHdoaWxlIGV2 ZXJ5IGluZGV4IGVudHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBsZSBpcyBkZWxldGVkLiAg VGhlIGluZGV4IGlzCkBAIC0xMzcsMTEgKzE3NCwxNSBAQCBTRUxFQ1QgaW5kZXhyZWxuYW1l LAogICAgICAgIHRvdGFsX2Jsa3NfZGlydGllZCA+PSAwIEFTIHRvdGFsX2Jsa3NfZGlydGll ZCwKICAgICAgICB0b3RhbF9ibGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dyaXR0 ZW4sCiAgICAgICAgcmVsX2Jsa3NfcmVhZCA+PSAwIEFTIHJlbF9ibGtzX3JlYWQsCi0gICAg ICAgcmVsX2Jsa3NfaGl0ID4gMCBBUyByZWxfYmxrc19oaXQKKyAgICAgICByZWxfYmxrc19o aXQgPiAwIEFTIHJlbF9ibGtzX2hpdCwKKyAgICAgICBibGtfcmVhZF90aW1lID49IDAgQVMg YmxrX3JlYWRfdGltZSwKKyAgICAgICBibGtfd3JpdGVfdGltZSA+PSAwIEFTIGJsa193cml0 ZV90aW1lLAorICAgICAgIGRlbGF5X3RpbWUgPj0gMCBBUyBkZWxheV90aW1lLAorICAgICAg IHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUKICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV9p bmRleGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JyBPUkRFUiBCWSBpbmRleHJlbG5h bWU7Ci0gIGluZGV4cmVsbmFtZSAgfCBwYWdlc19kZWxldGVkIHwgdHVwbGVzX2RlbGV0ZWQg fCB0b3RhbF9ibGtzX3JlYWQgfCB0b3RhbF9ibGtzX2hpdCB8IHRvdGFsX2Jsa3NfZGlydGll ZCB8IHRvdGFsX2Jsa3Nfd3JpdHRlbiB8IHJlbF9ibGtzX3JlYWQgfCByZWxfYmxrc19oaXQg Ci0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tCi0g dmFjc3RhdF90X3BrZXkgfCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgfCB0ICAg ICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICB8IHQg ICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgfCB0CisgIGluZGV4cmVsbmFtZSAg fCBwYWdlc19kZWxldGVkIHwgdHVwbGVzX2RlbGV0ZWQgfCB0b3RhbF9ibGtzX3JlYWQgfCB0 b3RhbF9ibGtzX2hpdCB8IHRvdGFsX2Jsa3NfZGlydGllZCB8IHRvdGFsX2Jsa3Nfd3JpdHRl biB8IHJlbF9ibGtzX3JlYWQgfCByZWxfYmxrc19oaXQgfCBibGtfcmVhZF90aW1lIHwgYmxr X3dyaXRlX3RpbWUgfCBkZWxheV90aW1lIHwgdG90YWxfdGltZSAKKy0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIHZhY3N0YXRfdF9w a2V5IHwgdCAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAg IHwgdCAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAg ICAgICAgfCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAgIHwgdCAgICAgICAgICAgICB8 IHQgICAgICAgICAgICAgIHwgdCAgICAgICAgICB8IHQKICgxIHJvdykKIAogLS0gaW5kZXgg cGFnZS1kZWxldGlvbiBwYXRoOiBkZWxldGluZyBhIGNvbnRpZ3VvdXMga2V5IHJhbmdlIGVt cHRpZXMgd2hvbGUKQEAgLTE3MCwxMCArMjExLDE1IEBAIFNFTEVDVCBlcnJvcnMgPSAwIEFT IGVycm9ycywKICAgICAgICBkYl9ibGtzX3JlYWQgPj0gMCBBUyBkYl9ibGtzX3JlYWQsCiAg ICAgICAgZGJfYmxrc19oaXQgPiAwIEFTIGRiX2Jsa3NfaGl0LAogICAgICAgIHRvdGFsX2Js a3NfZGlydGllZCA+PSAwIEFTIHRvdGFsX2Jsa3NfZGlydGllZCwKLSAgICAgICB0b3RhbF9i bGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4KKyAgICAgICB0b3RhbF9i bGtzX3dyaXR0ZW4gPj0gMCBBUyB0b3RhbF9ibGtzX3dyaXR0ZW4sCisgICAgICAgd3JhcGFy b3VuZF9mYWlsc2FmZSA9IDAgQVMgd3JhcGFyb3VuZF9mYWlsc2FmZSwKKyAgICAgICBibGtf cmVhZF90aW1lID49IDAgQVMgYmxrX3JlYWRfdGltZSwKKyAgICAgICBibGtfd3JpdGVfdGlt ZSA+PSAwIEFTIGJsa193cml0ZV90aW1lLAorICAgICAgIGRlbGF5X3RpbWUgPj0gMCBBUyBk ZWxheV90aW1lLAorICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUKICAgRlJP TSBwZ19zdGF0X3ZhY3V1bV9kYXRhYmFzZSBXSEVSRSBkYm5hbWUgPSBjdXJyZW50X2RhdGFi YXNlKCk7Ci0gZXJyb3JzIHwgZGJfYmxrc19yZWFkIHwgZGJfYmxrc19oaXQgfCB0b3RhbF9i bGtzX2RpcnRpZWQgfCB0b3RhbF9ibGtzX3dyaXR0ZW4gCi0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tCi0gdCAgICAgIHwgdCAgICAgICAgICAgIHwgdCAgICAgICAgICAgfCB0ICAgICAg ICAgICAgICAgICAgfCB0CisgZXJyb3JzIHwgZGJfYmxrc19yZWFkIHwgZGJfYmxrc19oaXQg fCB0b3RhbF9ibGtzX2RpcnRpZWQgfCB0b3RhbF9ibGtzX3dyaXR0ZW4gfCB3cmFwYXJvdW5k X2ZhaWxzYWZlIHwgYmxrX3JlYWRfdGltZSB8IGJsa193cml0ZV90aW1lIHwgZGVsYXlfdGlt ZSB8IHRvdGFsX3RpbWUgCistLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tCisgdCAgICAgIHwgdCAgICAgICAgICAgIHwgdCAgICAgICAgICAg fCB0ICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAg ICAgICAgICAgIHwgdCAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgIHwgdCAgICAgICAg ICB8IHQKICgxIHJvdykKIApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFj dXVtX3N0YXRzLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwK aW5kZXggNDllZDNiNDA2My4uZWU1MTdkNmY0NCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC92 YWN1dW1fc3RhdHMuc3FsCkBAIC05NCw2ICs5NCwzNSBAQCBTRUxFQ1QgcmVsX2Jsa3NfcmVh ZCA+PSAwIEFTIHJlbF9ibGtzX3JlYWQsCiAgICAgICAgcmVsX2Jsa3NfaGl0ID4gMCBBUyBy ZWxfYmxrc19oaXQKICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgV0hFUkUgcmVsbmFt ZSA9ICd2YWNzdGF0X3QnOwogCistLSB0aW1pbmcgbWV0cmljcyBhbmQgZmFpbHNhZmUuICBU aGUgdmFjdXVtIGFsd2F5cyB0YWtlcyBzb21lIHdhbGwtY2xvY2sgdGltZQorLS0gKHRvdGFs X3RpbWUgPiAwKSBhbmQgZG9lcyBub3QgZW5nYWdlIHRoZSB3cmFwYXJvdW5kIGZhaWxzYWZl IHVuZGVyIG5vcm1hbAorLS0gY29uZGl0aW9ucyAod3JhcGFyb3VuZF9mYWlsc2FmZSA9IDAp LiAgYmxrX3JlYWRfdGltZS9ibGtfd3JpdGVfdGltZSBhcmUgb25seQorLS0gbm9uLXplcm8g d2hlbiB0cmFja19pb190aW1pbmcgaXMgZW5hYmxlZCwgYW5kIGRlbGF5X3RpbWUgb25seSB3 aGVuIGEgdmFjdXVtCistLSBjb3N0IGRlbGF5IGlzIGNvbmZpZ3VyZWQsIHNvIHRob3NlIGFy ZSBtZXJlbHkgY2hlY2tlZCBmb3IgYmVpbmcKKy0tIG5vbi1uZWdhdGl2ZTsgdGhlIHBvc2l0 aXZlIGRlbGF5X3RpbWUgcGF0aCBpcyBleGVyY2lzZWQgc2VwYXJhdGVseSBiZWxvdy4KK1NF TEVDVCBibGtfcmVhZF90aW1lID49IDAgQVMgYmxrX3JlYWRfdGltZSwKKyAgICAgICBibGtf d3JpdGVfdGltZSA+PSAwIEFTIGJsa193cml0ZV90aW1lLAorICAgICAgIGRlbGF5X3RpbWUg Pj0gMCBBUyBkZWxheV90aW1lLAorICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3Rp bWUsCisgICAgICAgd3JhcGFyb3VuZF9mYWlsc2FmZSA9IDAgQVMgd3JhcGFyb3VuZF9mYWls c2FmZQorICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3Zh Y3N0YXRfdCc7CisKKy0tIGRlbGF5IHBhdGg6IHdpdGggYSB2YWN1dW0gY29zdCBkZWxheSBj b25maWd1cmVkLCBhIHZhY3V1bSB0aGF0IGFjY3J1ZXMgY29zdAorLS0gc2xlZXBzLCBzbyBk ZWxheV90aW1lIGFkdmFuY2VzLgorQ1JFQVRFIFRBQkxFIHZhY3N0YXRfZGVsYXkgKGlkIGlu dCBQUklNQVJZIEtFWSwgdiB0ZXh0KQorICBXSVRIIChhdXRvdmFjdXVtX2VuYWJsZWQgPSBv ZmYsIGZpbGxmYWN0b3IgPSAxMCk7CitJTlNFUlQgSU5UTyB2YWNzdGF0X2RlbGF5IFNFTEVD VCBnLCByZXBlYXQoJ3gnLCAxMDApIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDMwMDApIGc7 CitERUxFVEUgRlJPTSB2YWNzdGF0X2RlbGF5IFdIRVJFIGlkICUgMiA9IDA7CitTRVQgdmFj dXVtX2Nvc3RfZGVsYXkgPSAnMW1zJzsKK1NFVCB2YWN1dW1fY29zdF9saW1pdCA9IDE7CitW QUNVVU0gdmFjc3RhdF9kZWxheTsKK1JFU0VUIHZhY3V1bV9jb3N0X2RlbGF5OworUkVTRVQg dmFjdXVtX2Nvc3RfbGltaXQ7CitTRUxFQ1QgZGVsYXlfdGltZSA+IDAgQVMgZGVsYXlfdGlt ZSwKKyAgICAgICB0b3RhbF90aW1lID4gMCBBUyB0b3RhbF90aW1lCisgIEZST00gcGdfc3Rh dF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF9kZWxheSc7CitEUk9Q IFRBQkxFIHZhY3N0YXRfZGVsYXk7CisKIC0tIHBlci1pbmRleCB2aWV3OiB0aGUgcHJpbWFy eSBrZXkgaW5kZXggaXMgcHJvY2Vzc2VkIGJ5IHRoZSBzYW1lIFZBQ1VVTS4KIC0tIE5vIGJ0 cmVlIGxlYWYgZW1wdGllcyBvdXQgKGludGVybGVhdmVkIGRlbGV0aW9ucyksIHNvIHBhZ2Vz X2RlbGV0ZWQgPSAwLAogLS0gd2hpbGUgZXZlcnkgaW5kZXggZW50cnkgZm9yIGEgcmVtb3Zl ZCBoZWFwIHR1cGxlIGlzIGRlbGV0ZWQuICBUaGUgaW5kZXggaXMKQEAgLTEwNyw3ICsxMzYs MTEgQEAgU0VMRUNUIGluZGV4cmVsbmFtZSwKICAgICAgICB0b3RhbF9ibGtzX2RpcnRpZWQg Pj0gMCBBUyB0b3RhbF9ibGtzX2RpcnRpZWQsCiAgICAgICAgdG90YWxfYmxrc193cml0dGVu ID49IDAgQVMgdG90YWxfYmxrc193cml0dGVuLAogICAgICAgIHJlbF9ibGtzX3JlYWQgPj0g MCBBUyByZWxfYmxrc19yZWFkLAotICAgICAgIHJlbF9ibGtzX2hpdCA+IDAgQVMgcmVsX2Js a3NfaGl0CisgICAgICAgcmVsX2Jsa3NfaGl0ID4gMCBBUyByZWxfYmxrc19oaXQsCisgICAg ICAgYmxrX3JlYWRfdGltZSA+PSAwIEFTIGJsa19yZWFkX3RpbWUsCisgICAgICAgYmxrX3dy aXRlX3RpbWUgPj0gMCBBUyBibGtfd3JpdGVfdGltZSwKKyAgICAgICBkZWxheV90aW1lID49 IDAgQVMgZGVsYXlfdGltZSwKKyAgICAgICB0b3RhbF90aW1lID4gMCBBUyB0b3RhbF90aW1l CiAgIEZST00gcGdfc3RhdF92YWN1dW1faW5kZXhlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0 YXRfdCcgT1JERVIgQlkgaW5kZXhyZWxuYW1lOwogCiAtLSBpbmRleCBwYWdlLWRlbGV0aW9u IHBhdGg6IGRlbGV0aW5nIGEgY29udGlndW91cyBrZXkgcmFuZ2UgZW1wdGllcyB3aG9sZQpA QCAtMTMyLDUgKzE2NSwxMCBAQCBTRUxFQ1QgZXJyb3JzID0gMCBBUyBlcnJvcnMsCiAgICAg ICAgZGJfYmxrc19yZWFkID49IDAgQVMgZGJfYmxrc19yZWFkLAogICAgICAgIGRiX2Jsa3Nf aGl0ID4gMCBBUyBkYl9ibGtzX2hpdCwKICAgICAgICB0b3RhbF9ibGtzX2RpcnRpZWQgPj0g MCBBUyB0b3RhbF9ibGtzX2RpcnRpZWQsCi0gICAgICAgdG90YWxfYmxrc193cml0dGVuID49 IDAgQVMgdG90YWxfYmxrc193cml0dGVuCisgICAgICAgdG90YWxfYmxrc193cml0dGVuID49 IDAgQVMgdG90YWxfYmxrc193cml0dGVuLAorICAgICAgIHdyYXBhcm91bmRfZmFpbHNhZmUg PSAwIEFTIHdyYXBhcm91bmRfZmFpbHNhZmUsCisgICAgICAgYmxrX3JlYWRfdGltZSA+PSAw IEFTIGJsa19yZWFkX3RpbWUsCisgICAgICAgYmxrX3dyaXRlX3RpbWUgPj0gMCBBUyBibGtf d3JpdGVfdGltZSwKKyAgICAgICBkZWxheV90aW1lID49IDAgQVMgZGVsYXlfdGltZSwKKyAg ICAgICB0b3RhbF90aW1lID4gMCBBUyB0b3RhbF90aW1lCiAgIEZST00gcGdfc3RhdF92YWN1 dW1fZGF0YWJhc2UgV0hFUkUgZGJuYW1lID0gY3VycmVudF9kYXRhYmFzZSgpOwotLSAKMi4z OS41IChBcHBsZSBHaXQtMTU0KQoK --------------cx4n2j1e9pnEZYfCn5Fjuf0T Content-Type: text/plain; charset=UTF-8; name="0008-Extended-vacuum-statistics-WAL-metrics-for-tables-in.patch" Content-Disposition: attachment; filename*0="0008-Extended-vacuum-statistics-WAL-metrics-for-tables-in.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4NjhmNDUxMmIwZjczZjhiYjE4NjllN2JlMzNlZjBkNjAzNTMzMmIzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVuYSBSeWJha2luYSA8YWxlbmthLnJ5YmFraW5h QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyNiAxMDo1Mzo0OSArMDMwMApTdWJq ZWN0OiBbUEFUQ0ggOC84XSBFeHRlbmRlZCB2YWN1dW0gc3RhdGlzdGljczogV0FMIG1ldHJp Y3MgZm9yIHRhYmxlcywKIGluZGV4ZXMgYW5kIGRhdGFiYXNlCgpFeHBvc2UgdGhlIFdBTCBn ZW5lcmF0aW9uIGNvdW50ZXJzIGluIHBnX3N0YXRfdmFjdXVtX3RhYmxlcywKcGdfc3RhdF92 YWN1dW1faW5kZXhlcyBhbmQgcGdfc3RhdF92YWN1dW1fZGF0YWJhc2UsIHdpdGggZG9jdW1l bnRhdGlvbiBhbmQKcmVncmVzc2lvbiBjb3ZlcmFnZToKCiAgd2FsX3JlY29yZHMgIG51bWJl ciBvZiBXQUwgcmVjb3JkcyBnZW5lcmF0ZWQgYnkgdGhlIHZhY3V1bQogIHdhbF9mcGkgICAg ICBudW1iZXIgb2YgV0FMIGZ1bGwgcGFnZSBpbWFnZXMgZ2VuZXJhdGVkIGJ5IHRoZSB2YWN1 dW0KICB3YWxfYnl0ZXMgICAgdG90YWwgYW1vdW50IG9mIFdBTCBnZW5lcmF0ZWQgYnkgdGhl IHZhY3V1bSwgaW4gYnl0ZXMKCkEgdmFjdXVtIHRoYXQgcmVtb3ZlcyB0dXBsZXMgYWx3YXlz IGVtaXRzIFdBTCwgc28gd2FsX3JlY29yZHMgYW5kIHdhbF9ieXRlcwphcmUgcG9zaXRpdmUu ICB3YWxfZnBpIGRlcGVuZHMgb24gY2hlY2twb2ludCB0aW1pbmc7IHRoZSByZWdyZXNzaW9u IHRlc3QKZXhlcmNpc2VzIGl0cyBwb3NpdGl2ZSBwYXRoIHdpdGggYSBkZWRpY2F0ZWQgdmFj dXVtIHJ1biByaWdodCBhZnRlciBhCkNIRUNLUE9JTlQuCgpUaGlzIGNvbXBsZXRlcyB0aGUg ZXh0ZW5kZWQgdmFjdXVtIHN0YXRpc3RpY3Mgdmlld3M6IGV2ZXJ5IG1ldHJpYyBjYXRlZ29y eSBpcwpub3cgcmVwb3J0ZWQgZm9yIHRhYmxlcywgaW5kZXhlcyBhbmQgdGhlIGRhdGFiYXNl IGFnZ3JlZ2F0ZS4KLS0tCiBkb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwgICAgICAg ICAgICAgfCA3MiArKysrKysrKysrKysrKysrKysrKysrCiBzcmMvYmFja2VuZC9hY2Nlc3Mv aGVhcC92YWN1dW1sYXp5LmMgICAgICAgfCAxOSArKysrKy0KIHNyYy9iYWNrZW5kL2NhdGFs b2cvc3lzdGVtX3ZpZXdzLnNxbCAgICAgICB8IDE3ICsrKystCiBzcmMvYmFja2VuZC91dGls cy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMgfCAgNCArKwogc3JjL2JhY2tlbmQvdXRpbHMv YWR0L3Bnc3RhdGZ1bmNzLmMgICAgICAgIHwgMzIgKysrKysrKysrLQogc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdCAgICAgICAgICAgIHwgMTggKysrLS0tCiBzcmMvaW5jbHVk ZS9wZ3N0YXQuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgNSArKwogc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgICAgICAgIHwgMjEgKysrKystLQogc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC92YWN1dW1fc3RhdHMub3V0IHwgNTQgKysrKysrKysrKysrKy0t LQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvdmFjdXVtX3N0YXRzLnNxbCAgICAgIHwgMzQgKysr KysrKysrLQogMTAgZmlsZXMgY2hhbmdlZCwgMjQ0IGluc2VydGlvbnMoKyksIDMyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbCBi L2RvYy9zcmMvc2dtbC9zeXN0ZW0tdmlld3Muc2dtbAppbmRleCAwNDQzY2JhZDQwLi41MGZj YzNhYTdkIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvc3lzdGVtLXZpZXdzLnNnbWwKKysr IGIvZG9jL3NyYy9zZ21sL3N5c3RlbS12aWV3cy5zZ21sCkBAIC02MDA0LDYgKzYwMDQsMzAg QEAgU0VMRUNUICogRlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRfeGFj dHMgcHB4CiAgICAgICAgTnVtYmVyIG9mIHRpbWVzIHRoZSBmYWlsc2FmZSBtZWNoYW5pc20g d2FzIHRyaWdnZXJlZCB0byBwcmV2ZW50IHRyYW5zYWN0aW9uIElEIHdyYXBhcm91bmQgZHVy aW5nIHRoZSB2YWN1dW0uCiAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgPC9yb3c+Cisg ICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBh cmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD53YWxf cmVjb3Jkczwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAgIDwvcGFy YT4KKyAgICAgIDxwYXJhPgorICAgICAgIFRvdGFsIG51bWJlciBvZiBXQUwgcmVjb3JkcyBn ZW5lcmF0ZWQgYnkgdGhlIHZhY3V1bS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8 L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2Vu dHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZp ZWxkPndhbF9mcGk8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8 L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBUb3RhbCBudW1iZXIgb2YgV0FMIGZ1bGwg cGFnZSBpbWFnZXMgZ2VuZXJhdGVkIGJ5IHRoZSB2YWN1dW0uCisgICAgICA8L3BhcmE+PC9l bnRyeT4KKyAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0 YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAg ICAgIDxzdHJ1Y3RmaWVsZD53YWxfYnl0ZXM8L3N0cnVjdGZpZWxkPiA8dHlwZT5udW1lcmlj PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVG90YWwgYW1v dW50IG9mIFdBTCBnZW5lcmF0ZWQgYnkgdGhlIHZhY3V1bSwgaW4gYnl0ZXMuCisgICAgICA8 L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CiAgICAgPC90Ym9keT4KICAgIDwvdGdyb3Vw PgogICA8L3RhYmxlPgpAQCAtNjE3NSw2ICs2MTk5LDMwIEBAIFNFTEVDVCAqIEZST00gcGdf bG9ja3MgcGwgTEVGVCBKT0lOIHBnX3ByZXBhcmVkX3hhY3RzIHBweAogICAgICAgIFRvdGFs IHRpbWUgc3BlbnQgdmFjdXVtaW5nIHRoaXMgaW5kZXgsIGluIG1pbGxpc2Vjb25kcy4KICAg ICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxl bnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVm aW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPndhbF9yZWNvcmRzPC9zdHJ1Y3RmaWVs ZD4gPHR5cGU+YmlnaW50PC90eXBlPgorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+Cisg ICAgICAgTnVtYmVyIG9mIFdBTCByZWNvcmRzIGdlbmVyYXRlZCB3aGlsZSB2YWN1dW1pbmcg dGhpcyBpbmRleC4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAg PHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSBy b2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPndhbF9mcGk8 L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAg ICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2YgV0FMIGZ1bGwgcGFnZSBpbWFnZXMgZ2VuZXJh dGVkIHdoaWxlIHZhY3V1bWluZyB0aGlzIGluZGV4LgorICAgICAgPC9wYXJhPjwvZW50cnk+ CisgICAgIDwvcm93PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2df dGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8 c3RydWN0ZmllbGQ+d2FsX2J5dGVzPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+bnVtZXJpYzwvdHlw ZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIFRvdGFsIGFtb3VudCBv ZiBXQUwgZ2VuZXJhdGVkIHdoaWxlIHZhY3V1bWluZyB0aGlzIGluZGV4LCBpbiBieXRlcy4K KyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KICAgICA8L3Rib2R5PgogICAg PC90Z3JvdXA+CiAgIDwvdGFibGU+CkBAIC02MzA1LDYgKzYzNTMsMzAgQEAgU0VMRUNUICog RlJPTSBwZ19sb2NrcyBwbCBMRUZUIEpPSU4gcGdfcHJlcGFyZWRfeGFjdHMgcHB4CiAgICAg ICAgVG90YWwgdGltZSBzcGVudCBieSB2YWN1dW0gb3BlcmF0aW9ucyBpbiB0aGlzIGRhdGFi YXNlLCBpbiBtaWxsaXNlY29uZHMuCiAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgPC9y b3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRy eSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVs ZD53YWxfcmVjb3Jkczwvc3RydWN0ZmllbGQ+IDx0eXBlPmJpZ2ludDwvdHlwZT4KKyAgICAg IDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIE51bWJlciBvZiBXQUwgcmVjb3JkcyBn ZW5lcmF0ZWQgYnkgdmFjdXVtIG9wZXJhdGlvbnMgaW4gdGhpcyBkYXRhYmFzZS4KKyAgICAg IDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICAgPHJvdz4KKyAgICAgIDxlbnRy eSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5p dGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPndhbF9mcGk8L3N0cnVjdGZpZWxkPiA8dHlw ZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBO dW1iZXIgb2YgV0FMIGZ1bGwgcGFnZSBpbWFnZXMgZ2VuZXJhdGVkIGJ5IHZhY3V1bSBvcGVy YXRpb25zIGluIHRoaXMgZGF0YWJhc2UuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAg PC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9l bnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3Rm aWVsZD53YWxfYnl0ZXM8L3N0cnVjdGZpZWxkPiA8dHlwZT5udW1lcmljPC90eXBlPgorICAg ICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVG90YWwgYW1vdW50IG9mIFdBTCBn ZW5lcmF0ZWQgYnkgdmFjdXVtIG9wZXJhdGlvbnMgaW4gdGhpcyBkYXRhYmFzZSwgaW4gYnl0 ZXMuCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CiAgICAgPC90Ym9keT4K ICAgIDwvdGdyb3VwPgogICA8L3RhYmxlPgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNj ZXNzL2hlYXAvdmFjdXVtbGF6eS5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvdmFjdXVt bGF6eS5jCmluZGV4IDk5N2VhYmYxZWMuLjhjMmU1OTVhMTMgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxhenkuYworKysgYi9zcmMvYmFja2VuZC9hY2Nl c3MvaGVhcC92YWN1dW1sYXp5LmMKQEAgLTU1MSw2ICs1NTEsNyBAQCBzdGF0aWMgdm9pZAog ZXh0dmFjX3N0YXRzX2VuZChSZWxhdGlvbiByZWwsIExWRXh0U3RhdENvdW50ZXJzICogY291 bnRlcnMsCiAJCQkJIFBnU3RhdF9Db21tb25Db3VudHMgKiByZXBvcnQpCiB7CisJV2FsVXNh Z2UJd2FsdXNhZ2U7CiAJQnVmZmVyVXNhZ2UgYnVmdXNhZ2U7CiAJVGltZXN0YW1wVHogZW5k dGltZTsKIAlsb25nCQlzZWNzOwpAQCAtNTYxLDcgKzU2MiwxMCBAQCBleHR2YWNfc3RhdHNf ZW5kKFJlbGF0aW9uIHJlbCwgTFZFeHRTdGF0Q291bnRlcnMgKiBjb3VudGVycywKIAogCW1l bXNldChyZXBvcnQsIDAsIHNpemVvZihQZ1N0YXRfQ29tbW9uQ291bnRzKSk7CiAKLQkvKiBD YWxjdWxhdGUgZGlmZnMgb2YgZ2xvYmFsIHN0YXQgcGFyYW1ldGVycyBvbiBidWZmZXIgdXNh Z2UuICovCisJLyogQ2FsY3VsYXRlIGRpZmZzIG9mIGdsb2JhbCBzdGF0IHBhcmFtZXRlcnMg b24gV0FMIGFuZCBidWZmZXIgdXNhZ2UuICovCisJbWVtc2V0KCZ3YWx1c2FnZSwgMCwgc2l6 ZW9mKFdhbFVzYWdlKSk7CisJV2FsVXNhZ2VBY2N1bURpZmYoJndhbHVzYWdlLCAmcGdXYWxV c2FnZSwgJmNvdW50ZXJzLT53YWx1c2FnZSk7CisKIAltZW1zZXQoJmJ1ZnVzYWdlLCAwLCBz aXplb2YoQnVmZmVyVXNhZ2UpKTsKIAlCdWZmZXJVc2FnZUFjY3VtRGlmZigmYnVmdXNhZ2Us ICZwZ0J1ZmZlclVzYWdlLCAmY291bnRlcnMtPmJ1ZnVzYWdlKTsKIApAQCAtNTc2LDYgKzU4 MCwxMCBAQCBleHR2YWNfc3RhdHNfZW5kKFJlbGF0aW9uIHJlbCwgTFZFeHRTdGF0Q291bnRl cnMgKiBjb3VudGVycywKIAlyZXBvcnQtPnRvdGFsX2Jsa3NfZGlydGllZCArPSBidWZ1c2Fn ZS5sb2NhbF9ibGtzX2RpcnRpZWQgKyBidWZ1c2FnZS5zaGFyZWRfYmxrc19kaXJ0aWVkOwog CXJlcG9ydC0+dG90YWxfYmxrc193cml0dGVuICs9IGJ1ZnVzYWdlLnNoYXJlZF9ibGtzX3dy aXR0ZW47CiAKKwlyZXBvcnQtPndhbF9yZWNvcmRzICs9IHdhbHVzYWdlLndhbF9yZWNvcmRz OworCXJlcG9ydC0+d2FsX2ZwaSArPSB3YWx1c2FnZS53YWxfZnBpOworCXJlcG9ydC0+d2Fs X2J5dGVzICs9IHdhbHVzYWdlLndhbF9ieXRlczsKKwogCXJlcG9ydC0+YmxrX3JlYWRfdGlt ZSArPSBJTlNUUl9USU1FX0dFVF9NSUxMSVNFQyhidWZ1c2FnZS5sb2NhbF9ibGtfcmVhZF90 aW1lKTsKIAlyZXBvcnQtPmJsa19yZWFkX3RpbWUgKz0gSU5TVFJfVElNRV9HRVRfTUlMTElT RUMoYnVmdXNhZ2Uuc2hhcmVkX2Jsa19yZWFkX3RpbWUpOwogCXJlcG9ydC0+YmxrX3dyaXRl X3RpbWUgKz0gSU5TVFJfVElNRV9HRVRfTUlMTElTRUMoYnVmdXNhZ2UubG9jYWxfYmxrX3dy aXRlX3RpbWUpOwpAQCAtNjg5LDYgKzY5Nyw5IEBAIGFjY3VtdWxhdGVfaGVhcF92YWN1dW1f c3RhdGlzdGljcyhMVlJlbFN0YXRlICp2YWNyZWwsIFBnU3RhdF9WYWN1dW1SZWxhdGlvbkNv dW50CiAJZXh0VmFjU3RhdHMtPmNvbW1vbi50b3RhbF9ibGtzX2hpdCAtPSB2YWNyZWwtPmV4 dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxrc19oaXQ7CiAJZXh0VmFjU3RhdHMtPmNv bW1vbi50b3RhbF9ibGtzX3JlYWQgLT0gdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9u LnRvdGFsX2Jsa3NfcmVhZDsKIAlleHRWYWNTdGF0cy0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3Jp dHRlbiAtPSB2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24udG90YWxfYmxrc193cml0 dGVuOworCWV4dFZhY1N0YXRzLT5jb21tb24ud2FsX2J5dGVzIC09IHZhY3JlbC0+ZXh0VmFj UmVwb3J0SWR4LmNvbW1vbi53YWxfYnl0ZXM7CisJZXh0VmFjU3RhdHMtPmNvbW1vbi53YWxf ZnBpIC09IHZhY3JlbC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi53YWxfZnBpOworCWV4dFZh Y1N0YXRzLT5jb21tb24ud2FsX3JlY29yZHMgLT0gdmFjcmVsLT5leHRWYWNSZXBvcnRJZHgu Y29tbW9uLndhbF9yZWNvcmRzOwogCiAJZXh0VmFjU3RhdHMtPmNvbW1vbi50b3RhbF90aW1l IC09IHZhY3JlbC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi50b3RhbF90aW1lOwogCWV4dFZh Y1N0YXRzLT5jb21tb24uZGVsYXlfdGltZSAtPSB2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5j b21tb24uZGVsYXlfdGltZTsKQEAgLTcwNCw2ICs3MTUsOSBAQCBhY2N1bXVsYXRlX2lkeHNf dmFjdXVtX3N0YXRpc3RpY3MoTFZSZWxTdGF0ZSAqdmFjcmVsLCBQZ1N0YXRfVmFjdXVtUmVs YXRpb25Db3VudAogCXZhY3JlbC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi50b3RhbF9ibGtz X2hpdCArPSBleHRWYWNJZHhTdGF0cy0+Y29tbW9uLnRvdGFsX2Jsa3NfaGl0OwogCXZhY3Jl bC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi50b3RhbF9ibGtzX3JlYWQgKz0gZXh0VmFjSWR4 U3RhdHMtPmNvbW1vbi50b3RhbF9ibGtzX3JlYWQ7CiAJdmFjcmVsLT5leHRWYWNSZXBvcnRJ ZHguY29tbW9uLnRvdGFsX2Jsa3Nfd3JpdHRlbiArPSBleHRWYWNJZHhTdGF0cy0+Y29tbW9u LnRvdGFsX2Jsa3Nfd3JpdHRlbjsKKwl2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24u d2FsX2J5dGVzICs9IGV4dFZhY0lkeFN0YXRzLT5jb21tb24ud2FsX2J5dGVzOworCXZhY3Jl bC0+ZXh0VmFjUmVwb3J0SWR4LmNvbW1vbi53YWxfZnBpICs9IGV4dFZhY0lkeFN0YXRzLT5j b21tb24ud2FsX2ZwaTsKKwl2YWNyZWwtPmV4dFZhY1JlcG9ydElkeC5jb21tb24ud2FsX3Jl Y29yZHMgKz0gZXh0VmFjSWR4U3RhdHMtPmNvbW1vbi53YWxfcmVjb3JkczsKIAl2YWNyZWwt PmV4dFZhY1JlcG9ydElkeC5jb21tb24uZGVsYXlfdGltZSArPSBleHRWYWNJZHhTdGF0cy0+ Y29tbW9uLmRlbGF5X3RpbWU7CiAJdmFjcmVsLT5leHRWYWNSZXBvcnRJZHguY29tbW9uLnRv dGFsX3RpbWUgKz0gZXh0VmFjSWR4U3RhdHMtPmNvbW1vbi50b3RhbF90aW1lOwogfQpAQCAt NzMwLDYgKzc0NCw5IEBAIGV4dHZhY19hY2N1bXVsYXRlX2lkeF9yZXBvcnQoUGdTdGF0X1Zh Y3V1bVJlbGF0aW9uQ291bnRzICogZHN0LAogCWRzdC0+Y29tbW9uLnRvdGFsX2Jsa3Nfd3Jp dHRlbiArPSBzcmMtPmNvbW1vbi50b3RhbF9ibGtzX3dyaXR0ZW47CiAJZHN0LT5jb21tb24u Ymxrc19mZXRjaGVkICs9IHNyYy0+Y29tbW9uLmJsa3NfZmV0Y2hlZDsKIAlkc3QtPmNvbW1v bi5ibGtzX2hpdCArPSBzcmMtPmNvbW1vbi5ibGtzX2hpdDsKKwlkc3QtPmNvbW1vbi53YWxf cmVjb3JkcyArPSBzcmMtPmNvbW1vbi53YWxfcmVjb3JkczsKKwlkc3QtPmNvbW1vbi53YWxf ZnBpICs9IHNyYy0+Y29tbW9uLndhbF9mcGk7CisJZHN0LT5jb21tb24ud2FsX2J5dGVzICs9 IHNyYy0+Y29tbW9uLndhbF9ieXRlczsKIAlkc3QtPmNvbW1vbi5ibGtfcmVhZF90aW1lICs9 IHNyYy0+Y29tbW9uLmJsa19yZWFkX3RpbWU7CiAJZHN0LT5jb21tb24uYmxrX3dyaXRlX3Rp bWUgKz0gc3JjLT5jb21tb24uYmxrX3dyaXRlX3RpbWU7CiAJZHN0LT5jb21tb24uZGVsYXlf dGltZSArPSBzcmMtPmNvbW1vbi5kZWxheV90aW1lOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Muc3FsIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0 ZW1fdmlld3Muc3FsCmluZGV4IDExMTM1NzMzYzIuLjMxYzk3MTIwYjYgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAorKysgYi9zcmMvYmFja2Vu ZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKQEAgLTE1ODYsNyArMTU4NiwxMCBAQCBDUkVB VEUgVklFVyBwZ19zdGF0X3ZhY3V1bV90YWJsZXMgQVMKICAgICAgICAgUy5ibGtfd3JpdGVf dGltZSBBUyBibGtfd3JpdGVfdGltZSwKICAgICAgICAgUy5kZWxheV90aW1lIEFTIGRlbGF5 X3RpbWUsCiAgICAgICAgIFMudG90YWxfdGltZSBBUyB0b3RhbF90aW1lLAotICAgICAgICBT LndyYXBhcm91bmRfZmFpbHNhZmUgQVMgd3JhcGFyb3VuZF9mYWlsc2FmZQorICAgICAgICBT LndyYXBhcm91bmRfZmFpbHNhZmUgQVMgd3JhcGFyb3VuZF9mYWlsc2FmZSwKKyAgICAgICAg Uy53YWxfcmVjb3JkcyBBUyB3YWxfcmVjb3JkcywKKyAgICAgICAgUy53YWxfZnBpIEFTIHdh bF9mcGksCisgICAgICAgIFMud2FsX2J5dGVzIEFTIHdhbF9ieXRlcwogCiAgICAgRlJPTSBw Z19jbGFzcyBDIEpPSU4KICAgICAgICAgICAgIHBnX25hbWVzcGFjZSBOIE9OIE4ub2lkID0g Qy5yZWxuYW1lc3BhY2UsCkBAIC0xNjE1LDcgKzE2MTgsMTEgQEAgQ1JFQVRFIFZJRVcgcGdf c3RhdF92YWN1dW1faW5kZXhlcyBBUwogICAgICAgICAgICAgUy5ibGtfcmVhZF90aW1lIEFT IGJsa19yZWFkX3RpbWUsCiAgICAgICAgICAgICBTLmJsa193cml0ZV90aW1lIEFTIGJsa193 cml0ZV90aW1lLAogICAgICAgICAgICAgUy5kZWxheV90aW1lIEFTIGRlbGF5X3RpbWUsCi0g ICAgICAgICAgICBTLnRvdGFsX3RpbWUgQVMgdG90YWxfdGltZQorICAgICAgICAgICAgUy50 b3RhbF90aW1lIEFTIHRvdGFsX3RpbWUsCisKKyAgICAgICAgICAgIFMud2FsX3JlY29yZHMg QVMgd2FsX3JlY29yZHMsCisgICAgICAgICAgICBTLndhbF9mcGkgQVMgd2FsX2ZwaSwKKyAg ICAgICAgICAgIFMud2FsX2J5dGVzIEFTIHdhbF9ieXRlcwogICAgIEZST00KICAgICAgICAg ICAgIHBnX2NsYXNzIEMgSk9JTgogICAgICAgICAgICAgcGdfaW5kZXggWCBPTiBDLm9pZCA9 IFguaW5kcmVsaWQgSk9JTgpAQCAtMTY0MSw3ICsxNjQ4LDExIEBAIENSRUFURSBWSUVXIHBn X3N0YXRfdmFjdXVtX2RhdGFiYXNlIEFTCiAgICAgICAgICAgICBTLmJsa19yZWFkX3RpbWUg QVMgYmxrX3JlYWRfdGltZSwKICAgICAgICAgICAgIFMuYmxrX3dyaXRlX3RpbWUgQVMgYmxr X3dyaXRlX3RpbWUsCiAgICAgICAgICAgICBTLmRlbGF5X3RpbWUgQVMgZGVsYXlfdGltZSwK LSAgICAgICAgICAgIFMudG90YWxfdGltZSBBUyB0b3RhbF90aW1lCisgICAgICAgICAgICBT LnRvdGFsX3RpbWUgQVMgdG90YWxfdGltZSwKKworICAgICAgICAgICAgUy53YWxfcmVjb3Jk cyBBUyB3YWxfcmVjb3JkcywKKyAgICAgICAgICAgIFMud2FsX2ZwaSBBUyB3YWxfZnBpLAor ICAgICAgICAgICAgUy53YWxfYnl0ZXMgQVMgd2FsX2J5dGVzCiAgICAgRlJPTQogICAgICAg ICAgICAgcGdfZGF0YWJhc2UgRCwKICAgICAgICAgICAgIExBVEVSQUwgcGdfc3RhdF9nZXRf dmFjdXVtX2RhdGFiYXNlKEQub2lkKSBTOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvcGdzdGF0X3ZhY3V1bS5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvcGdzdGF0X3ZhY3V1bS5jCmluZGV4IGQwZTJlZWEyNTguLmMwYTZiZjllOTcgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF92YWN1dW0uYworKysg Yi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9wZ3N0YXRfdmFjdXVtLmMKQEAgLTQ2LDYg KzQ2LDEwIEBAIHBnc3RhdF9hY2N1bXVsYXRlX2NvbW1vbihQZ1N0YXRfQ29tbW9uQ291bnRz ICpkc3QsIGNvbnN0IFBnU3RhdF9Db21tb25Db3VudHMgKnNyCiAJQUNDVU1VTEFURV9GSUVM RChibGtzX2ZldGNoZWQpOwogCUFDQ1VNVUxBVEVfRklFTEQoYmxrc19oaXQpOwogCisJQUND VU1VTEFURV9GSUVMRCh3YWxfcmVjb3Jkcyk7CisJQUNDVU1VTEFURV9GSUVMRCh3YWxfZnBp KTsKKwlBQ0NVTVVMQVRFX0ZJRUxEKHdhbF9ieXRlcyk7CisKIAlBQ0NVTVVMQVRFX0ZJRUxE KGJsa19yZWFkX3RpbWUpOwogCUFDQ1VNVUxBVEVfRklFTEQoYmxrX3dyaXRlX3RpbWUpOwog CUFDQ1VNVUxBVEVfRklFTEQoZGVsYXlfdGltZSk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2Vu ZC91dGlscy9hZHQvcGdzdGF0ZnVuY3MuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0 YXRmdW5jcy5jCmluZGV4IDc1ZWJmZjZkNjguLmEwM2I3ZWYxN2IgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0 aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCkBAIC0yMzc0LDEzICsyMzc0LDE0IEBAIHBnX3N0YXRf aGF2ZV9zdGF0cyhQR19GVU5DVElPTl9BUkdTKQogRGF0dW0KIHBnX3N0YXRfZ2V0X3ZhY3V1 bV90YWJsZXMoUEdfRlVOQ1RJT05fQVJHUykKIHsKLSNkZWZpbmUgUEdfU1RBVF9HRVRfVkFD VVVNX1RBQkxFU19TVEFUU19DT0xTIDIyCisjZGVmaW5lIFBHX1NUQVRfR0VUX1ZBQ1VVTV9U QUJMRVNfU1RBVFNfQ09MUyAyNQogCiAJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lEKDAp OwogCVBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqZXh0dmFjdXVtOwogCVR1cGxlRGVz Ywl0dXBkZXNjOwogCURhdHVtCQl2YWx1ZXNbUEdfU1RBVF9HRVRfVkFDVVVNX1RBQkxFU19T VEFUU19DT0xTXSA9IHswfTsKIAlib29sCQludWxsc1tQR19TVEFUX0dFVF9WQUNVVU1fVEFC TEVTX1NUQVRTX0NPTFNdID0gezB9OworCWNoYXIJCWJ1ZlsyNTZdOwogCWludAkJCWkgPSAw OwogCiAJLyogQnVpbGQgYSB0dXBsZSBkZXNjcmlwdG9yIGZvciBvdXIgcmVzdWx0IHR5cGUg Ki8KQEAgLTI0MjEsNiArMjQyMiwxMyBAQCBwZ19zdGF0X2dldF92YWN1dW1fdGFibGVzKFBH X0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBGbG9hdDhHZXREYXR1bShleHR2YWN1 dW0tPmNvbW1vbi5kZWxheV90aW1lKTsKIAl2YWx1ZXNbaSsrXSA9IEZsb2F0OEdldERhdHVt KGV4dHZhY3V1bS0+Y29tbW9uLnRvdGFsX3RpbWUpOwogCXZhbHVlc1tpKytdID0gSW50MzJH ZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi53cmFwYXJvdW5kX2ZhaWxzYWZlX2NvdW50KTsK Kwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24ud2FsX3Jl Y29yZHMpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNvbW1v bi53YWxfZnBpKTsKKwlzbnByaW50ZihidWYsIHNpemVvZiBidWYsIFVJTlQ2NF9GT1JNQVQs IGV4dHZhY3V1bS0+Y29tbW9uLndhbF9ieXRlcyk7CisJdmFsdWVzW2krK10gPSBEaXJlY3RG dW5jdGlvbkNhbGwzKG51bWVyaWNfaW4sCisJCQkJCQkJCQkgIENTdHJpbmdHZXREYXR1bShi dWYpLAorCQkJCQkJCQkJICBPYmplY3RJZEdldERhdHVtKDApLAorCQkJCQkJCQkJICBJbnQz MkdldERhdHVtKC0xKSk7CiAKIAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1fVEFC TEVTX1NUQVRTX0NPTFMpOwogCkBAIC0yNDM0LDEzICsyNDQyLDE0IEBAIHBnX3N0YXRfZ2V0 X3ZhY3V1bV90YWJsZXMoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19zdGF0X2dldF92 YWN1dW1faW5kZXhlcyhQR19GVU5DVElPTl9BUkdTKQogewotI2RlZmluZSBQR19TVEFUX0dF VF9WQUNVVU1fSU5ERVhfU1RBVFNfQ09MUyAxMworI2RlZmluZSBQR19TVEFUX0dFVF9WQUNV VU1fSU5ERVhfU1RBVFNfQ09MUyAxNgogCiAJT2lkCQkJcmVsaWQgPSBQR19HRVRBUkdfT0lE KDApOwogCVBnU3RhdF9WYWN1dW1SZWxhdGlvbkNvdW50cyAqZXh0dmFjdXVtOwogCVR1cGxl RGVzYwl0dXBkZXNjOwogCURhdHVtCQl2YWx1ZXNbUEdfU1RBVF9HRVRfVkFDVVVNX0lOREVY X1NUQVRTX0NPTFNdID0gezB9OwogCWJvb2wJCW51bGxzW1BHX1NUQVRfR0VUX1ZBQ1VVTV9J TkRFWF9TVEFUU19DT0xTXSA9IHswfTsKKwljaGFyCQlidWZbMjU2XTsKIAlpbnQJCQlpID0g MDsKIAogCWlmIChnZXRfY2FsbF9yZXN1bHRfdHlwZShmY2luZm8sIE5VTEwsICZ0dXBkZXNj KSAhPSBUWVBFRlVOQ19DT01QT1NJVEUpCkBAIC0yNDc1LDYgKzI0ODQsMTQgQEAgcGdfc3Rh dF9nZXRfdmFjdXVtX2luZGV4ZXMoUEdfRlVOQ1RJT05fQVJHUykKIAl2YWx1ZXNbaSsrXSA9 IEZsb2F0OEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLmRlbGF5X3RpbWUpOwogCXZhbHVl c1tpKytdID0gRmxvYXQ4R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24udG90YWxfdGltZSk7 CiAKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24ud2Fs X3JlY29yZHMpOworCXZhbHVlc1tpKytdID0gSW50NjRHZXREYXR1bShleHR2YWN1dW0tPmNv bW1vbi53YWxfZnBpKTsKKwlzbnByaW50ZihidWYsIHNpemVvZiBidWYsIFVJTlQ2NF9GT1JN QVQsIGV4dHZhY3V1bS0+Y29tbW9uLndhbF9ieXRlcyk7CisJdmFsdWVzW2krK10gPSBEaXJl Y3RGdW5jdGlvbkNhbGwzKG51bWVyaWNfaW4sCisJCQkJCQkJCQkgIENTdHJpbmdHZXREYXR1 bShidWYpLAorCQkJCQkJCQkJICBPYmplY3RJZEdldERhdHVtKDApLAorCQkJCQkJCQkJICBJ bnQzMkdldERhdHVtKC0xKSk7CisKIAlBc3NlcnQoaSA9PSBQR19TVEFUX0dFVF9WQUNVVU1f SU5ERVhfU1RBVFNfQ09MUyk7CiAKIAkvKiBSZXR1cm5zIHRoZSByZWNvcmQgYXMgRGF0dW0g Ki8KQEAgLTI0ODcsMTMgKzI1MDQsMTQgQEAgcGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMo UEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19zdGF0X2dldF92YWN1dW1fZGF0YWJhc2Uo UEdfRlVOQ1RJT05fQVJHUykKIHsKLSNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFC QVNFX1NUQVRTX0NPTFMgMTEKKyNkZWZpbmUgUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFCQVNF X1NUQVRTX0NPTFMgMTQKIAogCU9pZAkJCWRiaWQgPSBQR19HRVRBUkdfT0lEKDApOwogCVBn U3RhdF9WYWN1dW1EQkNvdW50cyAqZXh0dmFjdXVtOwogCVR1cGxlRGVzYwl0dXBkZXNjOwog CURhdHVtCQl2YWx1ZXNbUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFCQVNFX1NUQVRTX0NPTFNd ID0gezB9OwogCWJvb2wJCW51bGxzW1BHX1NUQVRfR0VUX1ZBQ1VVTV9EQVRBQkFTRV9TVEFU U19DT0xTXSA9IHswfTsKKwljaGFyCQlidWZbMjU2XTsKIAlpbnQJCQlpID0gMDsKIAogCWlm IChnZXRfY2FsbF9yZXN1bHRfdHlwZShmY2luZm8sIE5VTEwsICZ0dXBkZXNjKSAhPSBUWVBF RlVOQ19DT01QT1NJVEUpCkBAIC0yNTIyLDYgKzI1NDAsMTQgQEAgcGdfc3RhdF9nZXRfdmFj dXVtX2RhdGFiYXNlKFBHX0ZVTkNUSU9OX0FSR1MpCiAJdmFsdWVzW2krK10gPSBGbG9hdDhH ZXREYXR1bShleHR2YWN1dW0tPmNvbW1vbi5kZWxheV90aW1lKTsKIAl2YWx1ZXNbaSsrXSA9 IEZsb2F0OEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLnRvdGFsX3RpbWUpOwogCisJdmFs dWVzW2krK10gPSBJbnQ2NEdldERhdHVtKGV4dHZhY3V1bS0+Y29tbW9uLndhbF9yZWNvcmRz KTsKKwl2YWx1ZXNbaSsrXSA9IEludDY0R2V0RGF0dW0oZXh0dmFjdXVtLT5jb21tb24ud2Fs X2ZwaSk7CisJc25wcmludGYoYnVmLCBzaXplb2YgYnVmLCBVSU5UNjRfRk9STUFULCBleHR2 YWN1dW0tPmNvbW1vbi53YWxfYnl0ZXMpOworCXZhbHVlc1tpKytdID0gRGlyZWN0RnVuY3Rp b25DYWxsMyhudW1lcmljX2luLAorCQkJCQkJCQkJICBDU3RyaW5nR2V0RGF0dW0oYnVmKSwK KwkJCQkJCQkJCSAgT2JqZWN0SWRHZXREYXR1bSgwKSwKKwkJCQkJCQkJCSAgSW50MzJHZXRE YXR1bSgtMSkpOworCiAJQXNzZXJ0KGkgPT0gUEdfU1RBVF9HRVRfVkFDVVVNX0RBVEFCQVNF X1NUQVRTX0NPTFMpOwogCiAJLyogUmV0dXJucyB0aGUgcmVjb3JkIGFzIERhdHVtICovCmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1 ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAppbmRleCA3NWQ2ZTJiMzI5Li40ZTY0ZjQyMDQyIDEw MDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTEyNjQzLDkgKzEyNjQzLDkgQEAKICAg cHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcycsIHByb3Jvd3MgPT4gMTAw MCwgcHJvdm9sYXRpbGUgPT4gJ3MnLCBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLCBwcm9pc3N0 cmljdCA9PiAnZicsCiAgIHByb3JldHNldCA9PiAndCcsCiAgIHByb2FyZ3R5cGVzID0+ICdv aWQnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxpbnQ4LGludDgsaW50 OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGlu dDgsaW50OCxmbG9hdDgsZmxvYXQ4LGZsb2F0OCxmbG9hdDgsaW50NH0nLAotICBwcm9hcmdt b2RlcyA9PiAne2ksbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8s b30nLAotICBwcm9hcmduYW1lcyA9PiAne3JlbG9pZCxyZWxpZCxwYWdlc19zY2FubmVkLHBh Z2VzX3JlbW92ZWQsdHVwbGVzX2RlbGV0ZWQsdHVwbGVzX2Zyb3plbixyZWNlbnRseV9kZWFk X3R1cGxlcyxtaXNzZWRfZGVhZF9wYWdlcyxtaXNzZWRfZGVhZF90dXBsZXMsdm1fbmV3X2Zy b3plbl9wYWdlcyx2bV9uZXdfdmlzaWJsZV9wYWdlcyx2bV9uZXdfdmlzaWJsZV9mcm96ZW5f cGFnZXMsdG90YWxfYmxrc19yZWFkLHRvdGFsX2Jsa3NfaGl0LHRvdGFsX2Jsa3NfZGlydGll ZCx0b3RhbF9ibGtzX3dyaXR0ZW4scmVsX2Jsa3NfcmVhZCxyZWxfYmxrc19oaXQsYmxrX3Jl YWRfdGltZSxibGtfd3JpdGVfdGltZSxkZWxheV90aW1lLHRvdGFsX3RpbWUsd3JhcGFyb3Vu ZF9mYWlsc2FmZX0nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxpbnQ4 LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50 OCxpbnQ4LGludDgsaW50OCxmbG9hdDgsZmxvYXQ4LGZsb2F0OCxmbG9hdDgsaW50NCxpbnQ4 LGludDgsbnVtZXJpY30nLAorICBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sbyxvLG8sbyxv LG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9 PiAne3JlbG9pZCxyZWxpZCxwYWdlc19zY2FubmVkLHBhZ2VzX3JlbW92ZWQsdHVwbGVzX2Rl bGV0ZWQsdHVwbGVzX2Zyb3plbixyZWNlbnRseV9kZWFkX3R1cGxlcyxtaXNzZWRfZGVhZF9w YWdlcyxtaXNzZWRfZGVhZF90dXBsZXMsdm1fbmV3X2Zyb3plbl9wYWdlcyx2bV9uZXdfdmlz aWJsZV9wYWdlcyx2bV9uZXdfdmlzaWJsZV9mcm96ZW5fcGFnZXMsdG90YWxfYmxrc19yZWFk LHRvdGFsX2Jsa3NfaGl0LHRvdGFsX2Jsa3NfZGlydGllZCx0b3RhbF9ibGtzX3dyaXR0ZW4s cmVsX2Jsa3NfcmVhZCxyZWxfYmxrc19oaXQsYmxrX3JlYWRfdGltZSxibGtfd3JpdGVfdGlt ZSxkZWxheV90aW1lLHRvdGFsX3RpbWUsd3JhcGFyb3VuZF9mYWlsc2FmZSx3YWxfcmVjb3Jk cyx3YWxfZnBpLHdhbF9ieXRlc30nLAogICBwcm9zcmMgPT4gJ3BnX3N0YXRfZ2V0X3ZhY3V1 bV90YWJsZXMnIH0KIAogIyBvaWQ4IHJlbGF0ZWQgZnVuY3Rpb25zCkBAIC0xMjcxOCwxNyAr MTI3MTgsMTcgQEAKICAgcHJvbmFtZSA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMn LCBwcm9yb3dzID0+IDEwMDAsIHByb3ZvbGF0aWxlID0+ICdzJywgcHJvcmV0dHlwZSA9PiAn cmVjb3JkJywgcHJvaXNzdHJpY3QgPT4gJ2YnLAogICBwcm9yZXRzZXQgPT4gJ3QnLAogICBw cm9hcmd0eXBlcyA9PiAnb2lkJywKLSAgcHJvYWxsYXJndHlwZXMgPT4gJ3tvaWQsb2lkLGlu dDgsaW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDgsaW50OCxmbG9hdDgsZmxvYXQ4LGZs b2F0OCxmbG9hdDh9JywKLSAgcHJvYXJnbW9kZXMgPT4gJ3tpLG8sbyxvLG8sbyxvLG8sbyxv LG8sbyxvLG99JywKLSAgcHJvYXJnbmFtZXMgPT4gJ3tyZWxvaWQscmVsaWQscGFnZXNfZGVs ZXRlZCx0dXBsZXNfZGVsZXRlZCx0b3RhbF9ibGtzX3JlYWQsdG90YWxfYmxrc19oaXQsdG90 YWxfYmxrc19kaXJ0aWVkLHRvdGFsX2Jsa3Nfd3JpdHRlbixyZWxfYmxrc19yZWFkLHJlbF9i bGtzX2hpdCxibGtfcmVhZF90aW1lLGJsa193cml0ZV90aW1lLGRlbGF5X3RpbWUsdG90YWxf dGltZX0nLAorICBwcm9hbGxhcmd0eXBlcyA9PiAne29pZCxvaWQsaW50OCxpbnQ4LGludDgs aW50OCxpbnQ4LGludDgsaW50OCxpbnQ4LGZsb2F0OCxmbG9hdDgsZmxvYXQ4LGZsb2F0OCxp bnQ4LGludDgsbnVtZXJpY30nLAorICBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sbyxvLG8s byxvLG8sbyxvLG8sbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAne3JlbG9pZCxyZWxp ZCxwYWdlc19kZWxldGVkLHR1cGxlc19kZWxldGVkLHRvdGFsX2Jsa3NfcmVhZCx0b3RhbF9i bGtzX2hpdCx0b3RhbF9ibGtzX2RpcnRpZWQsdG90YWxfYmxrc193cml0dGVuLHJlbF9ibGtz X3JlYWQscmVsX2Jsa3NfaGl0LGJsa19yZWFkX3RpbWUsYmxrX3dyaXRlX3RpbWUsZGVsYXlf dGltZSx0b3RhbF90aW1lLHdhbF9yZWNvcmRzLHdhbF9mcGksd2FsX2J5dGVzfScsCiAgIHBy b3NyYyA9PiAncGdfc3RhdF9nZXRfdmFjdXVtX2luZGV4ZXMnIH0sCiB7IG9pZCA9PiAnODAw NScsCiAgIGRlc2NyID0+ICdwZ19zdGF0X2dldF92YWN1dW1fZGF0YWJhc2UgcmV0dXJucyB2 YWN1dW0gc3RhdHMgdmFsdWVzIGZvciBkYXRhYmFzZScsCiAgIHByb25hbWUgPT4gJ3BnX3N0 YXRfZ2V0X3ZhY3V1bV9kYXRhYmFzZScsIHByb3Jvd3MgPT4gMTAwMCwgcHJvdm9sYXRpbGUg PT4gJ3MnLCBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLCBwcm9pc3N0cmljdCA9PiAnZicsCiAg IHByb3JldHNldCA9PiAndCcsCiAgIHByb2FyZ3R5cGVzID0+ICdvaWQnLAotICBwcm9hbGxh cmd0eXBlcyA9PiAne29pZCxvaWQsaW50NCxpbnQ4LGludDgsaW50OCxpbnQ4LGludDQsZmxv YXQ4LGZsb2F0OCxmbG9hdDgsZmxvYXQ4fScsCi0gIHByb2FyZ21vZGVzID0+ICd7aSxvLG8s byxvLG8sbyxvLG8sbyxvLG99JywKLSAgcHJvYXJnbmFtZXMgPT4gJ3tkYmlkLGRib2lkLGVy cm9ycyxkYl9ibGtzX3JlYWQsZGJfYmxrc19oaXQsdG90YWxfYmxrc19kaXJ0aWVkLHRvdGFs X2Jsa3Nfd3JpdHRlbix3cmFwYXJvdW5kX2ZhaWxzYWZlLGJsa19yZWFkX3RpbWUsYmxrX3dy aXRlX3RpbWUsZGVsYXlfdGltZSx0b3RhbF90aW1lfScsCisgIHByb2FsbGFyZ3R5cGVzID0+ ICd7b2lkLG9pZCxpbnQ0LGludDgsaW50OCxpbnQ4LGludDgsaW50NCxmbG9hdDgsZmxvYXQ4 LGZsb2F0OCxmbG9hdDgsaW50OCxpbnQ4LG51bWVyaWN9JywKKyAgcHJvYXJnbW9kZXMgPT4g J3tpLG8sbyxvLG8sbyxvLG8sbyxvLG8sbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAn e2RiaWQsZGJvaWQsZXJyb3JzLGRiX2Jsa3NfcmVhZCxkYl9ibGtzX2hpdCx0b3RhbF9ibGtz X2RpcnRpZWQsdG90YWxfYmxrc193cml0dGVuLHdyYXBhcm91bmRfZmFpbHNhZmUsYmxrX3Jl YWRfdGltZSxibGtfd3JpdGVfdGltZSxkZWxheV90aW1lLHRvdGFsX3RpbWUsd2FsX3JlY29y ZHMsd2FsX2ZwaSx3YWxfYnl0ZXN9JywKICAgcHJvc3JjID0+ICdwZ19zdGF0X2dldF92YWN1 dW1fZGF0YWJhc2UnIH0sCiBdCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wZ3N0YXQuaCBi L3NyYy9pbmNsdWRlL3Bnc3RhdC5oCmluZGV4IGJmYzI5OTUzODkuLjg4ZjJiMDI3YWYgMTAw NjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3Bnc3RhdC5oCisrKyBiL3NyYy9pbmNsdWRlL3Bnc3Rh dC5oCkBAIC0xODUsNiArMTg1LDExIEBAIHR5cGVkZWYgc3RydWN0IFBnU3RhdF9Db21tb25D b3VudHMKIAlpbnQ2NAkJYmxrc19mZXRjaGVkOwogCWludDY0CQlibGtzX2hpdDsKIAorCS8q IFdBTCAqLworCWludDY0CQl3YWxfcmVjb3JkczsKKwlpbnQ2NAkJd2FsX2ZwaTsKKwl1aW50 NjQJCXdhbF9ieXRlczsKKwogCS8qIFRpbWUgKi8KIAlkb3VibGUJCWJsa19yZWFkX3RpbWU7 CiAJZG91YmxlCQlibGtfd3JpdGVfdGltZTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvcnVsZXMub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxl cy5vdXQKaW5kZXggOTUyMzkyZjY2ZC4uZDBkMjEzNWMwNiAxMDA2NDQKLS0tIGEvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9ydWxlcy5vdXQKQEAgLTI0MzIsOSArMjQzMiwxMiBAQCBwZ19zdGF0X3ZhY3V1 bV9kYXRhYmFzZXwgU0VMRUNUIGQub2lkIEFTIGRib2lkLAogICAgIHMuYmxrX3JlYWRfdGlt ZSwKICAgICBzLmJsa193cml0ZV90aW1lLAogICAgIHMuZGVsYXlfdGltZSwKLSAgICBzLnRv dGFsX3RpbWUKKyAgICBzLnRvdGFsX3RpbWUsCisgICAgcy53YWxfcmVjb3JkcywKKyAgICBz LndhbF9mcGksCisgICAgcy53YWxfYnl0ZXMKICAgIEZST00gcGdfZGF0YWJhc2UgZCwKLSAg ICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9kYXRhYmFzZShkLm9pZCkgcyhkYm9pZCwg ZXJyb3JzLCBkYl9ibGtzX3JlYWQsIGRiX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQs IHRvdGFsX2Jsa3Nfd3JpdHRlbiwgd3JhcGFyb3VuZF9mYWlsc2FmZSwgYmxrX3JlYWRfdGlt ZSwgYmxrX3dyaXRlX3RpbWUsIGRlbGF5X3RpbWUsIHRvdGFsX3RpbWUpOworICAgIExBVEVS QUwgcGdfc3RhdF9nZXRfdmFjdXVtX2RhdGFiYXNlKGQub2lkKSBzKGRib2lkLCBlcnJvcnMs IGRiX2Jsa3NfcmVhZCwgZGJfYmxrc19oaXQsIHRvdGFsX2Jsa3NfZGlydGllZCwgdG90YWxf Ymxrc193cml0dGVuLCB3cmFwYXJvdW5kX2ZhaWxzYWZlLCBibGtfcmVhZF90aW1lLCBibGtf d3JpdGVfdGltZSwgZGVsYXlfdGltZSwgdG90YWxfdGltZSwgd2FsX3JlY29yZHMsIHdhbF9m cGksIHdhbF9ieXRlcyk7CiBwZ19zdGF0X3ZhY3V1bV9pbmRleGVzfCBTRUxFQ1QgYy5vaWQg QVMgcmVsaWQsCiAgICAgaS5vaWQgQVMgaW5kZXhyZWxpZCwKICAgICBuLm5zcG5hbWUgQVMg c2NoZW1hbmFtZSwKQEAgLTI0NTEsMTIgKzI0NTQsMTUgQEAgcGdfc3RhdF92YWN1dW1faW5k ZXhlc3wgU0VMRUNUIGMub2lkIEFTIHJlbGlkLAogICAgIHMuYmxrX3JlYWRfdGltZSwKICAg ICBzLmJsa193cml0ZV90aW1lLAogICAgIHMuZGVsYXlfdGltZSwKLSAgICBzLnRvdGFsX3Rp bWUKKyAgICBzLnRvdGFsX3RpbWUsCisgICAgcy53YWxfcmVjb3JkcywKKyAgICBzLndhbF9m cGksCisgICAgcy53YWxfYnl0ZXMKICAgIEZST00gKCgocGdfY2xhc3MgYwogICAgICBKT0lO IHBnX2luZGV4IHggT04gKChjLm9pZCA9IHguaW5kcmVsaWQpKSkKICAgICAgSk9JTiBwZ19j bGFzcyBpIE9OICgoaS5vaWQgPSB4LmluZGV4cmVsaWQpKSkKICAgICAgTEVGVCBKT0lOIHBn X25hbWVzcGFjZSBuIE9OICgobi5vaWQgPSBjLnJlbG5hbWVzcGFjZSkpKSwKLSAgICBMQVRF UkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV9pbmRleGVzKGkub2lkKSBzKHJlbGlkLCBwYWdlc19k ZWxldGVkLCB0dXBsZXNfZGVsZXRlZCwgdG90YWxfYmxrc19yZWFkLCB0b3RhbF9ibGtzX2hp dCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3RhbF9ibGtzX3dyaXR0ZW4sIHJlbF9ibGtzX3Jl YWQsIHJlbF9ibGtzX2hpdCwgYmxrX3JlYWRfdGltZSwgYmxrX3dyaXRlX3RpbWUsIGRlbGF5 X3RpbWUsIHRvdGFsX3RpbWUpCisgICAgTEFURVJBTCBwZ19zdGF0X2dldF92YWN1dW1faW5k ZXhlcyhpLm9pZCkgcyhyZWxpZCwgcGFnZXNfZGVsZXRlZCwgdHVwbGVzX2RlbGV0ZWQsIHRv dGFsX2Jsa3NfcmVhZCwgdG90YWxfYmxrc19oaXQsIHRvdGFsX2Jsa3NfZGlydGllZCwgdG90 YWxfYmxrc193cml0dGVuLCByZWxfYmxrc19yZWFkLCByZWxfYmxrc19oaXQsIGJsa19yZWFk X3RpbWUsIGJsa193cml0ZV90aW1lLCBkZWxheV90aW1lLCB0b3RhbF90aW1lLCB3YWxfcmVj b3Jkcywgd2FsX2ZwaSwgd2FsX2J5dGVzKQogICBXSEVSRSAoYy5yZWxraW5kID0gQU5ZIChB UlJBWVsncic6OiJjaGFyIiwgJ3QnOjoiY2hhciIsICdtJzo6ImNoYXIiXSkpOwogcGdfc3Rh dF92YWN1dW1fdGFibGVzfCBTRUxFQ1Qgbi5uc3BuYW1lIEFTIHNjaGVtYW5hbWUsCiAgICAg Yy5yZWxuYW1lLApAQCAtMjQ4MSwxMCArMjQ4NywxMyBAQCBwZ19zdGF0X3ZhY3V1bV90YWJs ZXN8IFNFTEVDVCBuLm5zcG5hbWUgQVMgc2NoZW1hbmFtZSwKICAgICBzLmJsa193cml0ZV90 aW1lLAogICAgIHMuZGVsYXlfdGltZSwKICAgICBzLnRvdGFsX3RpbWUsCi0gICAgcy53cmFw YXJvdW5kX2ZhaWxzYWZlCisgICAgcy53cmFwYXJvdW5kX2ZhaWxzYWZlLAorICAgIHMud2Fs X3JlY29yZHMsCisgICAgcy53YWxfZnBpLAorICAgIHMud2FsX2J5dGVzCiAgICBGUk9NIChw Z19jbGFzcyBjCiAgICAgIEpPSU4gcGdfbmFtZXNwYWNlIG4gT04gKChuLm9pZCA9IGMucmVs bmFtZXNwYWNlKSkpLAotICAgIExBVEVSQUwgcGdfc3RhdF9nZXRfdmFjdXVtX3RhYmxlcyhj Lm9pZCkgcyhyZWxpZCwgcGFnZXNfc2Nhbm5lZCwgcGFnZXNfcmVtb3ZlZCwgdHVwbGVzX2Rl bGV0ZWQsIHR1cGxlc19mcm96ZW4sIHJlY2VudGx5X2RlYWRfdHVwbGVzLCBtaXNzZWRfZGVh ZF9wYWdlcywgbWlzc2VkX2RlYWRfdHVwbGVzLCB2bV9uZXdfZnJvemVuX3BhZ2VzLCB2bV9u ZXdfdmlzaWJsZV9wYWdlcywgdm1fbmV3X3Zpc2libGVfZnJvemVuX3BhZ2VzLCB0b3RhbF9i bGtzX3JlYWQsIHRvdGFsX2Jsa3NfaGl0LCB0b3RhbF9ibGtzX2RpcnRpZWQsIHRvdGFsX2Js a3Nfd3JpdHRlbiwgcmVsX2Jsa3NfcmVhZCwgcmVsX2Jsa3NfaGl0LCBibGtfcmVhZF90aW1l LCBibGtfd3JpdGVfdGltZSwgZGVsYXlfdGltZSwgdG90YWxfdGltZSwgd3JhcGFyb3VuZF9m YWlsc2FmZSkKKyAgICBMQVRFUkFMIHBnX3N0YXRfZ2V0X3ZhY3V1bV90YWJsZXMoYy5vaWQp IHMocmVsaWQsIHBhZ2VzX3NjYW5uZWQsIHBhZ2VzX3JlbW92ZWQsIHR1cGxlc19kZWxldGVk LCB0dXBsZXNfZnJvemVuLCByZWNlbnRseV9kZWFkX3R1cGxlcywgbWlzc2VkX2RlYWRfcGFn ZXMsIG1pc3NlZF9kZWFkX3R1cGxlcywgdm1fbmV3X2Zyb3plbl9wYWdlcywgdm1fbmV3X3Zp c2libGVfcGFnZXMsIHZtX25ld192aXNpYmxlX2Zyb3plbl9wYWdlcywgdG90YWxfYmxrc19y ZWFkLCB0b3RhbF9ibGtzX2hpdCwgdG90YWxfYmxrc19kaXJ0aWVkLCB0b3RhbF9ibGtzX3dy aXR0ZW4sIHJlbF9ibGtzX3JlYWQsIHJlbF9ibGtzX2hpdCwgYmxrX3JlYWRfdGltZSwgYmxr X3dyaXRlX3RpbWUsIGRlbGF5X3RpbWUsIHRvdGFsX3RpbWUsIHdyYXBhcm91bmRfZmFpbHNh ZmUsIHdhbF9yZWNvcmRzLCB3YWxfZnBpLCB3YWxfYnl0ZXMpCiAgIFdIRVJFIChjLnJlbGtp bmQgPSBBTlkgKEFSUkFZWydyJzo6ImNoYXIiLCAndCc6OiJjaGFyIiwgJ20nOjoiY2hhciJd KSk7CiBwZ19zdGF0X3dhbHwgU0VMRUNUIHdhbF9yZWNvcmRzLAogICAgIHdhbF9mcGksCmRp ZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ZhY3V1bV9zdGF0cy5vdXQKaW5kZXggYjVi YWU5OTk0Ni4uMzBmYWRkMWU2YSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC92YWN1dW1fc3RhdHMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv dmFjdXVtX3N0YXRzLm91dApAQCAtMTYxLDYgKzE2MSwzOCBAQCBTRUxFQ1QgZGVsYXlfdGlt ZSA+IDAgQVMgZGVsYXlfdGltZSwKICgxIHJvdykKIAogRFJPUCBUQUJMRSB2YWNzdGF0X2Rl bGF5OworLS0gV0FMIG1ldHJpY3MuICBBIHZhY3V1bSB0aGF0IHJlbW92ZXMgdHVwbGVzIGFs d2F5cyBlbWl0cyBXQUwKKy0tICh3YWxfcmVjb3JkcyA+IDAsIHdhbF9ieXRlcyA+IDApLiAg d2FsX2ZwaSBkZXBlbmRzIG9uIHdoZXRoZXIgYSBjaGVja3BvaW50CistLSBoYXBwZW5lZCBy ZWNlbnRseSwgc28gaXQgaXMgb25seSBjaGVja2VkIGZvciBiZWluZyBub24tbmVnYXRpdmUg aGVyZTsgdGhlCistLSBwb3NpdGl2ZSB3YWxfZnBpIHBhdGggaXMgZXhlcmNpc2VkIHNlcGFy YXRlbHkgYmVsb3cuCitTRUxFQ1Qgd2FsX3JlY29yZHMgPiAwIEFTIHdhbF9yZWNvcmRzLAor ICAgICAgIHdhbF9mcGkgPj0gMCBBUyB3YWxfZnBpLAorICAgICAgIHdhbF9ieXRlcyA+IDAg QVMgd2FsX2J5dGVzCisgIEZST00gcGdfc3RhdF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5h bWUgPSAndmFjc3RhdF90JzsKKyB3YWxfcmVjb3JkcyB8IHdhbF9mcGkgfCB3YWxfYnl0ZXMg CistLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQorIHQgICAgICAgICAgIHwg dCAgICAgICB8IHQKKygxIHJvdykKKworLS0gV0FMIGZ1bGwtcGFnZS1pbWFnZSBwYXRoOiBh IENIRUNLUE9JTlQgaW1tZWRpYXRlbHkgYmVmb3JlIHRoZSB2YWN1dW0gZm9yY2VzCistLSB0 aGUgZmlyc3QgbW9kaWZpY2F0aW9uIG9mIGVhY2ggcGFnZSB0byBlbWl0IGEgZnVsbCBwYWdl IGltYWdlLCBzbyB3YWxfZnBpCistLSBhZHZhbmNlcy4KK0NSRUFURSBUQUJMRSB2YWNzdGF0 X2ZwaSAoaWQgaW50IFBSSU1BUlkgS0VZLCB2IHRleHQpCisgIFdJVEggKGF1dG92YWN1dW1f ZW5hYmxlZCA9IG9mZik7CitJTlNFUlQgSU5UTyB2YWNzdGF0X2ZwaSBTRUxFQ1QgZywgcmVw ZWF0KCd4JywgMjApIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMDApIGc7CitERUxFVEUg RlJPTSB2YWNzdGF0X2ZwaSBXSEVSRSBpZCAlIDIgPSAwOworQ0hFQ0tQT0lOVDsKK1ZBQ1VV TSB2YWNzdGF0X2ZwaTsKK1NFTEVDVCB3YWxfcmVjb3JkcyA+IDAgQVMgd2FsX3JlY29yZHMs CisgICAgICAgd2FsX2ZwaSA+IDAgQVMgd2FsX2ZwaSwKKyAgICAgICB3YWxfYnl0ZXMgPiAw IEFTIHdhbF9ieXRlcworICBGUk9NIHBnX3N0YXRfdmFjdXVtX3RhYmxlcyBXSEVSRSByZWxu YW1lID0gJ3ZhY3N0YXRfZnBpJzsKKyB3YWxfcmVjb3JkcyB8IHdhbF9mcGkgfCB3YWxfYnl0 ZXMgCistLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQorIHQgICAgICAgICAg IHwgdCAgICAgICB8IHQKKygxIHJvdykKKworRFJPUCBUQUJMRSB2YWNzdGF0X2ZwaTsKIC0t IHBlci1pbmRleCB2aWV3OiB0aGUgcHJpbWFyeSBrZXkgaW5kZXggaXMgcHJvY2Vzc2VkIGJ5 IHRoZSBzYW1lIFZBQ1VVTS4KIC0tIE5vIGJ0cmVlIGxlYWYgZW1wdGllcyBvdXQgKGludGVy bGVhdmVkIGRlbGV0aW9ucyksIHNvIHBhZ2VzX2RlbGV0ZWQgPSAwLAogLS0gd2hpbGUgZXZl cnkgaW5kZXggZW50cnkgZm9yIGEgcmVtb3ZlZCBoZWFwIHR1cGxlIGlzIGRlbGV0ZWQuICBU aGUgaW5kZXggaXMKQEAgLTE3OCwxMSArMjEwLDE0IEBAIFNFTEVDVCBpbmRleHJlbG5hbWUs CiAgICAgICAgYmxrX3JlYWRfdGltZSA+PSAwIEFTIGJsa19yZWFkX3RpbWUsCiAgICAgICAg YmxrX3dyaXRlX3RpbWUgPj0gMCBBUyBibGtfd3JpdGVfdGltZSwKICAgICAgICBkZWxheV90 aW1lID49IDAgQVMgZGVsYXlfdGltZSwKLSAgICAgICB0b3RhbF90aW1lID4gMCBBUyB0b3Rh bF90aW1lCisgICAgICAgdG90YWxfdGltZSA+IDAgQVMgdG90YWxfdGltZSwKKyAgICAgICB3 YWxfcmVjb3JkcyA+IDAgQVMgd2FsX3JlY29yZHMsCisgICAgICAgd2FsX2ZwaSA+PSAwIEFT IHdhbF9mcGksCisgICAgICAgd2FsX2J5dGVzID4gMCBBUyB3YWxfYnl0ZXMKICAgRlJPTSBw Z19zdGF0X3ZhY3V1bV9pbmRleGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF90JyBPUkRF UiBCWSBpbmRleHJlbG5hbWU7Ci0gIGluZGV4cmVsbmFtZSAgfCBwYWdlc19kZWxldGVkIHwg dHVwbGVzX2RlbGV0ZWQgfCB0b3RhbF9ibGtzX3JlYWQgfCB0b3RhbF9ibGtzX2hpdCB8IHRv dGFsX2Jsa3NfZGlydGllZCB8IHRvdGFsX2Jsa3Nfd3JpdHRlbiB8IHJlbF9ibGtzX3JlYWQg fCByZWxfYmxrc19oaXQgfCBibGtfcmVhZF90aW1lIHwgYmxrX3dyaXRlX3RpbWUgfCBkZWxh eV90aW1lIHwgdG90YWxfdGltZSAKLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLQotIHZhY3N0YXRfdF9wa2V5IHwgdCAgICAgICAgICAg ICB8IHQgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAg fCB0ICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAg ICAgIHwgdCAgICAgICAgICAgIHwgdCAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgIHwg dCAgICAgICAgICB8IHQKKyAgaW5kZXhyZWxuYW1lICB8IHBhZ2VzX2RlbGV0ZWQgfCB0dXBs ZXNfZGVsZXRlZCB8IHRvdGFsX2Jsa3NfcmVhZCB8IHRvdGFsX2Jsa3NfaGl0IHwgdG90YWxf Ymxrc19kaXJ0aWVkIHwgdG90YWxfYmxrc193cml0dGVuIHwgcmVsX2Jsa3NfcmVhZCB8IHJl bF9ibGtzX2hpdCB8IGJsa19yZWFkX3RpbWUgfCBibGtfd3JpdGVfdGltZSB8IGRlbGF5X3Rp bWUgfCB0b3RhbF90aW1lIHwgd2FsX3JlY29yZHMgfCB3YWxfZnBpIHwgd2FsX2J5dGVzIAor LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgdmFjc3RhdF90X3BrZXkg fCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgICAgfCB0 ICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAg ICB8IHQgICAgICAgICAgICAgfCB0ICAgICAgICAgICAgfCB0ICAgICAgICAgICAgIHwgdCAg ICAgICAgICAgICAgfCB0ICAgICAgICAgIHwgdCAgICAgICAgICB8IHQgICAgICAgICAgIHwg dCAgICAgICB8IHQKICgxIHJvdykKIAogLS0gaW5kZXggcGFnZS1kZWxldGlvbiBwYXRoOiBk ZWxldGluZyBhIGNvbnRpZ3VvdXMga2V5IHJhbmdlIGVtcHRpZXMgd2hvbGUKQEAgLTIxNiwx MCArMjUxLDEzIEBAIFNFTEVDVCBlcnJvcnMgPSAwIEFTIGVycm9ycywKICAgICAgICBibGtf cmVhZF90aW1lID49IDAgQVMgYmxrX3JlYWRfdGltZSwKICAgICAgICBibGtfd3JpdGVfdGlt ZSA+PSAwIEFTIGJsa193cml0ZV90aW1lLAogICAgICAgIGRlbGF5X3RpbWUgPj0gMCBBUyBk ZWxheV90aW1lLAotICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUKKyAgICAg ICB0b3RhbF90aW1lID4gMCBBUyB0b3RhbF90aW1lLAorICAgICAgIHdhbF9yZWNvcmRzID4g MCBBUyB3YWxfcmVjb3JkcywKKyAgICAgICB3YWxfZnBpID49IDAgQVMgd2FsX2ZwaSwKKyAg ICAgICB3YWxfYnl0ZXMgPiAwIEFTIHdhbF9ieXRlcwogICBGUk9NIHBnX3N0YXRfdmFjdXVt X2RhdGFiYXNlIFdIRVJFIGRibmFtZSA9IGN1cnJlbnRfZGF0YWJhc2UoKTsKLSBlcnJvcnMg fCBkYl9ibGtzX3JlYWQgfCBkYl9ibGtzX2hpdCB8IHRvdGFsX2Jsa3NfZGlydGllZCB8IHRv dGFsX2Jsa3Nfd3JpdHRlbiB8IHdyYXBhcm91bmRfZmFpbHNhZmUgfCBibGtfcmVhZF90aW1l IHwgYmxrX3dyaXRlX3RpbWUgfCBkZWxheV90aW1lIHwgdG90YWxfdGltZSAKLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KLSB0ICAgICAg fCB0ICAgICAgICAgICAgfCB0ICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICB8IHQg ICAgICAgICAgICAgICAgICB8IHQgICAgICAgICAgICAgICAgICAgfCB0ICAgICAgICAgICAg IHwgdCAgICAgICAgICAgICAgfCB0ICAgICAgICAgIHwgdAorIGVycm9ycyB8IGRiX2Jsa3Nf cmVhZCB8IGRiX2Jsa3NfaGl0IHwgdG90YWxfYmxrc19kaXJ0aWVkIHwgdG90YWxfYmxrc193 cml0dGVuIHwgd3JhcGFyb3VuZF9mYWlsc2FmZSB8IGJsa19yZWFkX3RpbWUgfCBibGtfd3Jp dGVfdGltZSB8IGRlbGF5X3RpbWUgfCB0b3RhbF90aW1lIHwgd2FsX3JlY29yZHMgfCB3YWxf ZnBpIHwgd2FsX2J5dGVzIAorLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLQor IHQgICAgICB8IHQgICAgICAgICAgICB8IHQgICAgICAgICAgIHwgdCAgICAgICAgICAgICAg ICAgIHwgdCAgICAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgICAgICB8IHQgICAg ICAgICAgICAgfCB0ICAgICAgICAgICAgICB8IHQgICAgICAgICAgfCB0ICAgICAgICAgIHwg dCAgICAgICAgICAgfCB0ICAgICAgIHwgdAogKDEgcm93KQogCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9z cWwvdmFjdXVtX3N0YXRzLnNxbAppbmRleCBlZTUxN2Q2ZjQ0Li4yYTM2NmViZGY3IDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC92YWN1dW1fc3RhdHMuc3FsCisrKyBiL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3ZhY3V1bV9zdGF0cy5zcWwKQEAgLTEyMyw2ICsxMjMsMzAg QEAgU0VMRUNUIGRlbGF5X3RpbWUgPiAwIEFTIGRlbGF5X3RpbWUsCiAgIEZST00gcGdfc3Rh dF92YWN1dW1fdGFibGVzIFdIRVJFIHJlbG5hbWUgPSAndmFjc3RhdF9kZWxheSc7CiBEUk9Q IFRBQkxFIHZhY3N0YXRfZGVsYXk7CiAKKy0tIFdBTCBtZXRyaWNzLiAgQSB2YWN1dW0gdGhh dCByZW1vdmVzIHR1cGxlcyBhbHdheXMgZW1pdHMgV0FMCistLSAod2FsX3JlY29yZHMgPiAw LCB3YWxfYnl0ZXMgPiAwKS4gIHdhbF9mcGkgZGVwZW5kcyBvbiB3aGV0aGVyIGEgY2hlY2tw b2ludAorLS0gaGFwcGVuZWQgcmVjZW50bHksIHNvIGl0IGlzIG9ubHkgY2hlY2tlZCBmb3Ig YmVpbmcgbm9uLW5lZ2F0aXZlIGhlcmU7IHRoZQorLS0gcG9zaXRpdmUgd2FsX2ZwaSBwYXRo IGlzIGV4ZXJjaXNlZCBzZXBhcmF0ZWx5IGJlbG93LgorU0VMRUNUIHdhbF9yZWNvcmRzID4g MCBBUyB3YWxfcmVjb3JkcywKKyAgICAgICB3YWxfZnBpID49IDAgQVMgd2FsX2ZwaSwKKyAg ICAgICB3YWxfYnl0ZXMgPiAwIEFTIHdhbF9ieXRlcworICBGUk9NIHBnX3N0YXRfdmFjdXVt X3RhYmxlcyBXSEVSRSByZWxuYW1lID0gJ3ZhY3N0YXRfdCc7CisKKy0tIFdBTCBmdWxsLXBh Z2UtaW1hZ2UgcGF0aDogYSBDSEVDS1BPSU5UIGltbWVkaWF0ZWx5IGJlZm9yZSB0aGUgdmFj dXVtIGZvcmNlcworLS0gdGhlIGZpcnN0IG1vZGlmaWNhdGlvbiBvZiBlYWNoIHBhZ2UgdG8g ZW1pdCBhIGZ1bGwgcGFnZSBpbWFnZSwgc28gd2FsX2ZwaQorLS0gYWR2YW5jZXMuCitDUkVB VEUgVEFCTEUgdmFjc3RhdF9mcGkgKGlkIGludCBQUklNQVJZIEtFWSwgdiB0ZXh0KQorICBX SVRIIChhdXRvdmFjdXVtX2VuYWJsZWQgPSBvZmYpOworSU5TRVJUIElOVE8gdmFjc3RhdF9m cGkgU0VMRUNUIGcsIHJlcGVhdCgneCcsIDIwKSBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAx MDAwKSBnOworREVMRVRFIEZST00gdmFjc3RhdF9mcGkgV0hFUkUgaWQgJSAyID0gMDsKK0NI RUNLUE9JTlQ7CitWQUNVVU0gdmFjc3RhdF9mcGk7CitTRUxFQ1Qgd2FsX3JlY29yZHMgPiAw IEFTIHdhbF9yZWNvcmRzLAorICAgICAgIHdhbF9mcGkgPiAwIEFTIHdhbF9mcGksCisgICAg ICAgd2FsX2J5dGVzID4gMCBBUyB3YWxfYnl0ZXMKKyAgRlJPTSBwZ19zdGF0X3ZhY3V1bV90 YWJsZXMgV0hFUkUgcmVsbmFtZSA9ICd2YWNzdGF0X2ZwaSc7CitEUk9QIFRBQkxFIHZhY3N0 YXRfZnBpOworCiAtLSBwZXItaW5kZXggdmlldzogdGhlIHByaW1hcnkga2V5IGluZGV4IGlz IHByb2Nlc3NlZCBieSB0aGUgc2FtZSBWQUNVVU0uCiAtLSBObyBidHJlZSBsZWFmIGVtcHRp ZXMgb3V0IChpbnRlcmxlYXZlZCBkZWxldGlvbnMpLCBzbyBwYWdlc19kZWxldGVkID0gMCwK IC0tIHdoaWxlIGV2ZXJ5IGluZGV4IGVudHJ5IGZvciBhIHJlbW92ZWQgaGVhcCB0dXBsZSBp cyBkZWxldGVkLiAgVGhlIGluZGV4IGlzCkBAIC0xNDAsNyArMTY0LDEwIEBAIFNFTEVDVCBp bmRleHJlbG5hbWUsCiAgICAgICAgYmxrX3JlYWRfdGltZSA+PSAwIEFTIGJsa19yZWFkX3Rp bWUsCiAgICAgICAgYmxrX3dyaXRlX3RpbWUgPj0gMCBBUyBibGtfd3JpdGVfdGltZSwKICAg ICAgICBkZWxheV90aW1lID49IDAgQVMgZGVsYXlfdGltZSwKLSAgICAgICB0b3RhbF90aW1l ID4gMCBBUyB0b3RhbF90aW1lCisgICAgICAgdG90YWxfdGltZSA+IDAgQVMgdG90YWxfdGlt ZSwKKyAgICAgICB3YWxfcmVjb3JkcyA+IDAgQVMgd2FsX3JlY29yZHMsCisgICAgICAgd2Fs X2ZwaSA+PSAwIEFTIHdhbF9mcGksCisgICAgICAgd2FsX2J5dGVzID4gMCBBUyB3YWxfYnl0 ZXMKICAgRlJPTSBwZ19zdGF0X3ZhY3V1bV9pbmRleGVzIFdIRVJFIHJlbG5hbWUgPSAndmFj c3RhdF90JyBPUkRFUiBCWSBpbmRleHJlbG5hbWU7CiAKIC0tIGluZGV4IHBhZ2UtZGVsZXRp b24gcGF0aDogZGVsZXRpbmcgYSBjb250aWd1b3VzIGtleSByYW5nZSBlbXB0aWVzIHdob2xl CkBAIC0xNzAsNSArMTk3LDggQEAgU0VMRUNUIGVycm9ycyA9IDAgQVMgZXJyb3JzLAogICAg ICAgIGJsa19yZWFkX3RpbWUgPj0gMCBBUyBibGtfcmVhZF90aW1lLAogICAgICAgIGJsa193 cml0ZV90aW1lID49IDAgQVMgYmxrX3dyaXRlX3RpbWUsCiAgICAgICAgZGVsYXlfdGltZSA+ PSAwIEFTIGRlbGF5X3RpbWUsCi0gICAgICAgdG90YWxfdGltZSA+IDAgQVMgdG90YWxfdGlt ZQorICAgICAgIHRvdGFsX3RpbWUgPiAwIEFTIHRvdGFsX3RpbWUsCisgICAgICAgd2FsX3Jl Y29yZHMgPiAwIEFTIHdhbF9yZWNvcmRzLAorICAgICAgIHdhbF9mcGkgPj0gMCBBUyB3YWxf ZnBpLAorICAgICAgIHdhbF9ieXRlcyA+IDAgQVMgd2FsX2J5dGVzCiAgIEZST00gcGdfc3Rh dF92YWN1dW1fZGF0YWJhc2UgV0hFUkUgZGJuYW1lID0gY3VycmVudF9kYXRhYmFzZSgpOwot LSAKMi4zOS41IChBcHBsZSBHaXQtMTU0KQoK --------------cx4n2j1e9pnEZYfCn5Fjuf0T--