From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 10445 invoked from network); 3 Apr 2022 03:30:41 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 3 Apr 2022 03:30:41 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1648956641; b=fXeTymMKI3FQczAZfbp0mImeEWEXd2gNFIhv5UL3/3yAyTMAJ/GPq+LcgVZItUtYtgxbKbFj4G w+NPB9qsEqkoeunpuZqq9QvGXd1o2iNzeC258WxuMPngpc52gjsM87w7TkQXccsC1uVzFSUjC2 V4AWDb3+U6v7XVGg/FHM0+UbHKwN2wNkv4R/cF4gBDQwZMHTLgKOTKm6ODmPBKJP5DY+OPz2Mm 046UoRFHOxnMcepZ97EJ+eSCEC5rS2NQKal1loBKqUIuMYp4sVDtVPwOH2DjPgLPW40Bk19Bwg AT7EEDmki2xjjEXUwmL3cBvqr7+MREwI+8pIx1xvpRrDBA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (out1-smtp.messagingengine.com) smtp.remote-ip=66.111.4.25; dkim=pass header.d=dana.is header.s=fm1 header.a=rsa-sha256; dkim=pass header.d=messagingengine.com header.s=fm3 header.a=rsa-sha256; dmarc=none header.from=dana.is; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1648956641; bh=BYLS7+Q8ik6QINuJbLK55C5JWXwXaWRDosO8BBgppJw=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:Subject:To:From:Date:Message-ID:MIME-Version: DKIM-Signature:DKIM-Signature:DKIM-Signature; b=g7USbAZxRaxDp/S2RKI/KIs5OX3uP0eCu+rXmEXQvHJk77c4ykhKbNKUkTsLtEoKOxgaEyAs2S WyWqsco5K6GeOur5MzveXQEe1AqCvOdE9IRiM+GZVeQFxLPTzkuv6wn/JxkYhXRwKf1vgDoWIM HdbzNqW8RK1qGD/vsAcm4HUxeFkdHjy7pQn9rm7/r69AYg6uvs5vCl96kCOrP0cjMwVK8229CH HVul+/QQ6rp+k4RSiqy/5/7ZUopwN9Lt8bUVJMCPBIPWSn0+tHyGbQSIx+M9taoCYvhAukk4Cv EZXNVoQJg8dfmek9SfIcwGEvv2AHO4m2lPREhKc0pR3y8A==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:Subject:To:From:Date: Message-Id:Mime-Version:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References; bh=Gnm7+Oj5FoROM1A1fRaEaAnIa7gUB7QRQQQ+TesIiYY=; b=F/t5d0w5G6At+2U/HDyUEfs3q9 z+s+AGnJfeGQl6tTOmHcWm28llwDIilcHQYwSiTBujo3nYw+SK6dNynaWR8wHacWdt1cXrmjf3evS tr/CnFuozPqTxuXOFZuD2JbuXKWRFaAXE/KXtitvienyxAu5MsUy22ndI55faO7XF9rBTk5m4xO6r quiIo/SM7Jo/P80qhEZ2DInwOs7TMgan+SXd1NDO7sKzYKcYR0OqJCRvuZukLaHxYnRLrSpbfRwUL aYXVibgmeyDRE03rJcAreyj1he7SVOoKvPIU/4XpsbPC3HM9fD7/6Jq3scktwukF47/TQu85fOFdl JtSjJS9Q==; Received: from authenticated user by zero.zsh.org with local id 1naqwq-000GYE-9d; Sun, 03 Apr 2022 03:30:40 +0000 Authentication-Results: zsh.org; iprev=pass (out1-smtp.messagingengine.com) smtp.remote-ip=66.111.4.25; dkim=pass header.d=dana.is header.s=fm1 header.a=rsa-sha256; dkim=pass header.d=messagingengine.com header.s=fm3 header.a=rsa-sha256; dmarc=none header.from=dana.is; arc=none Received: from out1-smtp.messagingengine.com ([66.111.4.25]:56441) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1naqwW-000GDF-7a; Sun, 03 Apr 2022 03:30:21 +0000 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 1D0065C00AF for ; Sat, 2 Apr 2022 23:30:19 -0400 (EDT) Received: from imap50 ([10.202.2.100]) by compute5.internal (MEProxy); Sat, 02 Apr 2022 23:30:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dana.is; h=cc :content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; bh=G nm7+Oj5FoROM1A1fRaEaAnIa7gUB7QRQQQ+TesIiYY=; b=A4AfE9LllRPX4xqy3 QlNKx+b7jQZaZEg7Os+kSZx1FThwEMK2ZFmgNJ5HW3UVNr148CSKi0sAfogQ0y/M TfUATvSBBZAz5GiOntwPMLC7AHefGDpR06r1IsBoTyF19wazvYE3JwQp/9b2O4Ks 2cVjY1q+L1xG3anP2xzd2aJ+JJC4+7bak+7jIxPZSIh1HYSqTicYAPZD1Zbk3PBp X7fsazKs8UrrOzu5Rd4NQZzO+/kZFIr68eChemXYM0vVtn/hUujkDUzefCcOxeU5 Gcr3JRxeRqQt8u3WlAXUxz1GfbptkgJJIJVEDkahixPAQ8vhmALjVUCGLdOHcH9n MOULg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; bh=Gnm7+Oj5FoROM1A1fRaEaAnIa7gUB7QRQQQ+TesIi YY=; b=XfrqVHQ10yjbIZTHFUhHeZkW5lAeGYWKvJ1e672KqDv7o7l/HWlNcG1CI Xdiydot0ISRuuc3ojX/y14P+IZgg1TtlhjDW8M8hlzL8ZwQTmtksdOhb3J6cfjLC 6kmlOyM9PpVTIAfI1vD69pxDS44jiLgCmDCULmF522ndkyp+KtznSnqmB3+E1IxM LB8RM75UU20W7/1aH/0H3ezYs4HLBaDhpa3AZxwCug4Y5vaGMq7Gi3jXidEttgEH 1jAgUkD9dp1+uqiW3U07KdtQo7VrqOWs2sGrn09jb8/An+Qj+JXYzpZippsvB141 evStfWmQhZeSjINz+gYKG5MUzyf9Q== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudeiledgieejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucgoufhushhpvggtthffohhmrghinhculdegledmne cujfgurhepofgfggfkfffhvffutgesmhdtreerreerjeenucfhrhhomhepuggrnhgruceo uggrnhgrsegurghnrgdrihhsqeenucggtffrrghtthgvrhhnpeeukeeuhfdugeffueefff eiudegudelhfdtgeegtedtuefgieefhffgjefgtdejieenucffohhmrghinheplhhinhhu gihnvgifshdruggvpdhgohhoghhlvgdrtghomhenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpegurghnrgesuggrnhgrrdhish X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id B98C61920089; Sat, 2 Apr 2022 23:30:18 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.7.0-alpha0-382-g88b93171a9-fm-20220330.001-g88b93171 Mime-Version: 1.0 Message-Id: <6e5aae82-dc48-4763-953e-efb470508019@www.fastmail.com> Date: Sat, 02 Apr 2022 22:29:58 -0500 From: dana To: "Zsh hackers list" Subject: [PATCH] Change documentation, dedication, loose ends Content-Type: multipart/mixed; boundary=5b08b92f936441408ee0f8be97f36f0a X-Seq: 49958 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: --5b08b92f936441408ee0f8be97f36f0a Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable I've gone through the history since 5.8 and updated the documentation for all of the changes we missed before. Attaching the patch here just to make sure i've correctly understood what they all do. I've also attached a patch for the dedication we discussed off-list. And, unposted here, i've added the new -s option to _fc. Some other minor loose ends: * In workers/47922 Daniel had suggested some changes to the documentation for the CASE_PATHS option Bart added; these changes were never merged = or commented on. Are we satisfied with Bart's original documentation? * The ${name:offset:length} expansion documentation was not updated with Jun's change from workers/49853. Does it need to be? PS: Trying a different mail client, please let me know if it messes the text up. Patches also included as attachments just in case dana >From 200d3209e591839de391752d330575adb7ada8ea Mon Sep 17 00:00:00 2001 From: dana Date: Sat, 2 Apr 2022 22:19:04 -0500 Subject: [PATCH 1/2] NEWS/README: Add missing change documentation for 5= .9 This covers the following changes: users/24971: ${(-)var} sorts on signed integers 47704: POSIX export and readonly ignore "-p" when parameter names also a= ppear 47913: implement CASE_PATHS option to make NO_CASE_GLOB more sensible 48073: Add fc -s as POSIX way of rerunning command without starting edit= or 49307 with doc update: POSIX_TRAPS fix. 49528: allow multiple -D options to compadd 49561: add zformat -F option, similar to -f but ternary expressions chec= k for existence instead of doing math evaluation 49597: add a helper for completing numbers with unit suffixes and separa= te out defaults, ranges and units in completion descriptions 49611 based on 49590 (Martijn Dekker): disable Inf and NaN in math expre= ssions for sh emulation 49646: allow colors in WATCHFMT with %F/%K 49694 + doc: Allow using empty STTY=3D to freeze tty for a single command 49853 + 49882/49883: make "${arr[*]:off}" compatible with ksh/bash --- NEWS | 72 ++++++++++++++++++++++++++++++++++++++++++---------------- README | 33 +++++++++++++++++++-------- 2 files changed, 76 insertions(+), 29 deletions(-) diff --git a/NEWS b/NEWS index 8441610b0..61ee32ef1 100644 --- a/NEWS +++ b/NEWS @@ -4,25 +4,8 @@ CHANGES FROM PREVIOUS VERSIONS OF ZSH =20 Note also the list of incompatibilities in the README file. =20 -Changes since 5.8 ------------------ - -CVE-2021-45444: Some prompt expansion sequences, such as %F, support -'arguments' which are themselves expanded in case they contain colour -values, etc. This additional expansion would trigger PROMPT_SUBST -evaluation, if enabled. This could be abused to execute code the user -didn't expect. e.g., given a certain prompt configuration, an attacker -could trick a user into executing arbitrary code by having them check -out a Git branch with a specially crafted name. - -This is fixed in the shell itself by no longer performing PROMPT_SUBST -evaluation on these prompt-expansion arguments. - -Users who are concerned about an exploit but unable to update their -binaries may apply the partial work-around described in the file -Etc/CVE-2021-45444-VCS_Info-workaround.patch included with the shell -source. [ Reported by RyotaK . Additional thanks to -Marc Cornell=C3=A0 . ] +Changes since 5.8.1 +------------------- =20 When unsetting a hash element, the string enclosed in square brackets is interpreted literally after any normal command-line-argument expansions. @@ -54,6 +37,9 @@ fractional seconds. The option CLOBBER_EMPTY was added to enable the overwrite behaviour of CLOBBER for empty files only. It is disabled by default. =20 +A (-) expansion flag was added. It works like (n) but correctly sorts +negative numbers. + The compinit function learnt a -w option to explain why compdump runs. When run without the -i or -u options and compaudit discovers security issues, answering "y" to the "Ignore insecure ..." prompt removes the @@ -69,11 +55,37 @@ widgets. This corresponds to long-standing behavior= of other user ZLE widgets. Use the _complete_debug widget to capture XTRACE output, or use "functions -T" to enable tracing of specific completion functions. =20 +The fc builtin learnt an -s option which is a POSIX equivalent to the +`fc -e-` method of re-executing a command without invoking an editor. + +The option CASE_PATHS was added to control how NO_CASE_GLOB behaves. +NO_CASE_GLOB + NO_CASE_PATHS is equivalent to the current NO_CASE_GLOB +behaviour. NO_CASE_GLOB + CASE_PATHS treats only path components that +contain globbing characters as case-insensitive; this behaviour may +yield more predictable results on case-sensitive file systems. +NO_CASE_PATHS is the default. + With the new TYPESET_TO_UNSET option set, "typeset foo" leaves foo unse= t, in contrast to the default behavior which assigns foo=3D"". Any parame= ter attributes such as numeric type, sorting, and padding are retained until the parameter is explicitly unset or a conflicting value is assigned. -This is similar to default behavior of bash and ksh. +This is similar to default behavior of bash and ksh. This option is +disabled by default. + +The compadd builtin's -D option can now be specified more than once. + +The zsh/zutil module's zformat builtin learnt an -F option which behaves +like -f except that ternary expressions check for existence instead of +doing math evaluation. + +A _numbers helper function has been added to help completion functions +complete numbers with unit suffixes, etc. + +The WATCHFMT parameter now supports colours via the %F and %K escapes. + +The STTY parameter can now be set to an empty string before running a +command to automatically restore terminal settings after the command +finishes. =20 The "jobs" command and "$jobstates" and related parameters can report on parent shell jobs even in subshells. This is a snapshot of the parent @@ -81,6 +93,26 @@ state, frozen at the point the subshell started. How= ever, if a subshell starts its own background jobs, the parent state is discarded in order to report on those new jobs. =20 +Changes from 5.8 to 5.8.1 +------------------------- + +CVE-2021-45444: Some prompt expansion sequences, such as %F, support +'arguments' which are themselves expanded in case they contain colour +values, etc. This additional expansion would trigger PROMPT_SUBST +evaluation, if enabled. This could be abused to execute code the user +didn't expect. e.g., given a certain prompt configuration, an attacker +could trick a user into executing arbitrary code by having them check +out a Git branch with a specially crafted name. + +This is fixed in the shell itself by no longer performing PROMPT_SUBST +evaluation on these prompt-expansion arguments. + +Users who are concerned about an exploit but unable to update their +binaries may apply the partial work-around described in the file +Etc/CVE-2021-45444-VCS_Info-workaround.patch included with the shell +source. [ Reported by RyotaK . Additional thanks to +Marc Cornell=C3=A0 . ] + Changes from 5.7.1-test-3 to 5.8 -------------------------------- =20 diff --git a/README b/README index c27d6881a..21142e17c 100644 --- a/README +++ b/README @@ -5,11 +5,12 @@ THE Z SHELL (ZSH) Version ------- =20 -This is version 5.8.1 of the shell. This is a security and bugfix rele= ase. +This is version 5.9 of the shell. This is a security and feature relea= se. +There are several visible improvements since 5.8.1, as well as bug fixe= s. All zsh installations are encouraged to upgrade as soon as possible. =20 Note in particular the changes highlighted under "Incompatibilities sin= ce -5.8" below. See NEWS for more information. +5.8.1" below. See NEWS for more information. =20 Installing Zsh -------------- @@ -30,16 +31,13 @@ Zsh is a shell with lots of features. For a list of= some of these, see the file FEATURES, and for the latest changes see NEWS. For more details, see the documentation. =20 -Incompatibilities since 5.8 ---------------------------- +Incompatibilities since 5.8.1 +----------------------------- =20 compinit: A "y" response to the "Ignore ... and continue?" prompt remov= es insecure elements from the set of completion functions, where previously it ignored the compaudit result and included all elements. =20 -PROMPT_SUBST expansion is no longer performed on arguments to prompt- -expansion sequences such as %F. - Build-time change: The default value of the --enable-gdbm configure argument has changed from "yes" to "no". Thus, the zsh/db/gdbm module = will not be built unless --enable-gdbm is passed explicitly. @@ -105,11 +103,25 @@ emulate sh: When zsh emulates sh, the final comman= d in a pipeline is now run in a subshell. This differs from the behavior in the native (zsh) mode, b= ut is consistent with most other sh implementations. =20 +The export and readonly builtins now ignore the -p option when there are +operands given and POSIX_BUILTINS is enabled. This more closely matches= the +behaviour of bash and ksh. + getopts now calculates OPTIND in a similar manner to other shells when = the POSIX_BUILTINS option is enabled. =20 -Incompatibilities between 5.7.1 and 5.8 ---------------------------------------- +Ignored-signal traps are now inherited by subshells when the POSIX_TRAPS +option is enabled. + +emulate sh: Inf and NaN are now treated as parameter names in arithmetic +context when zsh is emulating sh. + +The ${name:offset:length} expansion syntax now behaves more similarly to +other shells in that the offset and length are applied as array indices +prior to scalar conversion in e.g. "${*:0:2}". + +Incompatibilities between 5.7.1 and 5.8.1 +----------------------------------------- =20 The history expansion !:1:t2 used to be interpreted such that the 2 was a separate character added after the history expansion. Now @@ -140,6 +152,9 @@ changes made in the course of fixing CVE-2019-20044.= Please report this to the zsh-workers mailing list if your system is affected. See NEWS f= or more. =20 +PROMPT_SUBST expansion is no longer performed on arguments to prompt- +expansion sequences such as %F. + Incompatibilities between 5.6.2 and 5.7.1 ----------------------------------------- =20 --=20 2.34.1 >From 1ffc4b86c4d76d91d18661bcf12d0b306deb472a Mon Sep 17 00:00:00 2001 From: dana Date: Sat, 2 Apr 2022 22:20:55 -0500 Subject: [PATCH 2/2] NEWS: Dedicate zsh 5.9 to Sven Guckes --- NEWS | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/NEWS b/NEWS index 61ee32ef1..6c9112ad6 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,11 @@ Note also the list of incompatibilities in the README f= ile. =20 Changes since 5.8.1 ------------------- +zsh 5.9 is dedicated in memory of Sven Guckes, who was, amongst other +things, a long-time zsh advocate. + + https://linuxnews.de/2022/02/sven-guckes-verstorben/ + https://groups.google.com/g/vim_announce/c/MJBKVd-xrEE/m/joVNaDgAAgAJ =20 When unsetting a hash element, the string enclosed in square brackets is interpreted literally after any normal command-line-argument expansions. --=20 2.34.1 --5b08b92f936441408ee0f8be97f36f0a Content-Disposition: attachment;filename="patch-1-changes.txt" Content-Type: text/plain; name="patch-1-changes.txt" Content-Transfer-Encoding: BASE64 RnJvbSAyMDBkMzIwOWU1OTE4MzlkZTM5MTc1MmQzMzA1NzVhZGI3YWRhOGVhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBkYW5hIDxkYW5hQGRhbmEuaXM+CkRhdGU6IFNhdCwg MiBBcHIgMjAyMiAyMjoxOTowNCAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMS8yXSBORVdTL1JF QURNRTogQWRkIG1pc3NpbmcgY2hhbmdlIGRvY3VtZW50YXRpb24gZm9yIDUuOQoKVGhpcyBj b3ZlcnMgdGhlIGZvbGxvd2luZyBjaGFuZ2VzOgoKdXNlcnMvMjQ5NzE6ICR7KC0pdmFyfSBz b3J0cyBvbiBzaWduZWQgaW50ZWdlcnMKCjQ3NzA0OiBQT1NJWCBleHBvcnQgYW5kIHJlYWRv bmx5IGlnbm9yZSAiLXAiIHdoZW4gcGFyYW1ldGVyIG5hbWVzIGFsc28gYXBwZWFyCgo0Nzkx MzogaW1wbGVtZW50IENBU0VfUEFUSFMgb3B0aW9uIHRvIG1ha2UgTk9fQ0FTRV9HTE9CIG1v cmUgc2Vuc2libGUKCjQ4MDczOiBBZGQgZmMgLXMgYXMgUE9TSVggd2F5IG9mIHJlcnVubmlu ZyBjb21tYW5kIHdpdGhvdXQgc3RhcnRpbmcgZWRpdG9yCgo0OTMwNyB3aXRoIGRvYyB1cGRh dGU6IFBPU0lYX1RSQVBTIGZpeC4KCjQ5NTI4OiBhbGxvdyBtdWx0aXBsZSAtRCBvcHRpb25z IHRvIGNvbXBhZGQKCjQ5NTYxOiBhZGQgemZvcm1hdCAtRiBvcHRpb24sIHNpbWlsYXIgdG8g LWYgYnV0IHRlcm5hcnkgZXhwcmVzc2lvbnMgY2hlY2sgZm9yCmV4aXN0ZW5jZSBpbnN0ZWFk IG9mIGRvaW5nIG1hdGggZXZhbHVhdGlvbgoKNDk1OTc6IGFkZCBhIGhlbHBlciBmb3IgY29t cGxldGluZyBudW1iZXJzIHdpdGggdW5pdCBzdWZmaXhlcyBhbmQgc2VwYXJhdGUgb3V0CmRl ZmF1bHRzLCByYW5nZXMgYW5kIHVuaXRzIGluIGNvbXBsZXRpb24gZGVzY3JpcHRpb25zCgo0 OTYxMSBiYXNlZCBvbiA0OTU5MCAoTWFydGlqbiBEZWtrZXIpOiBkaXNhYmxlIEluZiBhbmQg TmFOIGluIG1hdGggZXhwcmVzc2lvbnMKZm9yIHNoIGVtdWxhdGlvbgoKNDk2NDY6IGFsbG93 IGNvbG9ycyBpbiBXQVRDSEZNVCB3aXRoICVGLyVLCgo0OTY5NCArIGRvYzogQWxsb3cgdXNp bmcgZW1wdHkgU1RUWT0gdG8gZnJlZXplIHR0eSBmb3IgYSBzaW5nbGUgY29tbWFuZAoKNDk4 NTMgKyA0OTg4Mi80OTg4MzogbWFrZSAiJHthcnJbKl06b2ZmfSIgY29tcGF0aWJsZSB3aXRo IGtzaC9iYXNoCi0tLQogTkVXUyAgIHwgNzIgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQogUkVBRE1FIHwgMzMgKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyks IDI5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL05FV1MgYi9ORVdTCmluZGV4IDg0NDE2 MTBiMC4uNjFlZTMyZWYxIDEwMDY0NAotLS0gYS9ORVdTCisrKyBiL05FV1MKQEAgLTQsMjUg KzQsOCBAQCBDSEFOR0VTIEZST00gUFJFVklPVVMgVkVSU0lPTlMgT0YgWlNICiAKIE5vdGUg YWxzbyB0aGUgbGlzdCBvZiBpbmNvbXBhdGliaWxpdGllcyBpbiB0aGUgUkVBRE1FIGZpbGUu CiAKLUNoYW5nZXMgc2luY2UgNS44Ci0tLS0tLS0tLS0tLS0tLS0tLQotCi1DVkUtMjAyMS00 NTQ0NDogU29tZSBwcm9tcHQgZXhwYW5zaW9uIHNlcXVlbmNlcywgc3VjaCBhcyAlRiwgc3Vw cG9ydAotJ2FyZ3VtZW50cycgd2hpY2ggYXJlIHRoZW1zZWx2ZXMgZXhwYW5kZWQgaW4gY2Fz ZSB0aGV5IGNvbnRhaW4gY29sb3VyCi12YWx1ZXMsIGV0Yy4gVGhpcyBhZGRpdGlvbmFsIGV4 cGFuc2lvbiB3b3VsZCB0cmlnZ2VyIFBST01QVF9TVUJTVAotZXZhbHVhdGlvbiwgaWYgZW5h YmxlZC4gVGhpcyBjb3VsZCBiZSBhYnVzZWQgdG8gZXhlY3V0ZSBjb2RlIHRoZSB1c2VyCi1k aWRuJ3QgZXhwZWN0LiBlLmcuLCBnaXZlbiBhIGNlcnRhaW4gcHJvbXB0IGNvbmZpZ3VyYXRp b24sIGFuIGF0dGFja2VyCi1jb3VsZCB0cmljayBhIHVzZXIgaW50byBleGVjdXRpbmcgYXJi aXRyYXJ5IGNvZGUgYnkgaGF2aW5nIHRoZW0gY2hlY2sKLW91dCBhIEdpdCBicmFuY2ggd2l0 aCBhIHNwZWNpYWxseSBjcmFmdGVkIG5hbWUuCi0KLVRoaXMgaXMgZml4ZWQgaW4gdGhlIHNo ZWxsIGl0c2VsZiBieSBubyBsb25nZXIgcGVyZm9ybWluZyBQUk9NUFRfU1VCU1QKLWV2YWx1 YXRpb24gb24gdGhlc2UgcHJvbXB0LWV4cGFuc2lvbiBhcmd1bWVudHMuCi0KLVVzZXJzIHdo byBhcmUgY29uY2VybmVkIGFib3V0IGFuIGV4cGxvaXQgYnV0IHVuYWJsZSB0byB1cGRhdGUg dGhlaXIKLWJpbmFyaWVzIG1heSBhcHBseSB0aGUgcGFydGlhbCB3b3JrLWFyb3VuZCBkZXNj cmliZWQgaW4gdGhlIGZpbGUKLUV0Yy9DVkUtMjAyMS00NTQ0NC1WQ1NfSW5mby13b3JrYXJv dW5kLnBhdGNoIGluY2x1ZGVkIHdpdGggdGhlIHNoZWxsCi1zb3VyY2UuIFsgUmVwb3J0ZWQg YnkgUnlvdGFLIDxzZWN1cml0eUByeW90YWsubWU+LiBBZGRpdGlvbmFsIHRoYW5rcyB0bwot TWFyYyBDb3JuZWxsw6AgPGhlbGxvQG1jb3JuZWxsYS5jb20+LiBdCitDaGFuZ2VzIHNpbmNl IDUuOC4xCistLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFdoZW4gdW5zZXR0aW5nIGEgaGFzaCBl bGVtZW50LCB0aGUgc3RyaW5nIGVuY2xvc2VkIGluIHNxdWFyZSBicmFja2V0cyBpcwogaW50 ZXJwcmV0ZWQgbGl0ZXJhbGx5IGFmdGVyIGFueSBub3JtYWwgY29tbWFuZC1saW5lLWFyZ3Vt ZW50IGV4cGFuc2lvbnMuCkBAIC01NCw2ICszNyw5IEBAIGZyYWN0aW9uYWwgc2Vjb25kcy4K IFRoZSBvcHRpb24gQ0xPQkJFUl9FTVBUWSB3YXMgYWRkZWQgdG8gZW5hYmxlIHRoZSBvdmVy d3JpdGUgYmVoYXZpb3VyCiBvZiBDTE9CQkVSIGZvciBlbXB0eSBmaWxlcyBvbmx5LiBJdCBp cyBkaXNhYmxlZCBieSBkZWZhdWx0LgogCitBICgtKSBleHBhbnNpb24gZmxhZyB3YXMgYWRk ZWQuIEl0IHdvcmtzIGxpa2UgKG4pIGJ1dCBjb3JyZWN0bHkgc29ydHMKK25lZ2F0aXZlIG51 bWJlcnMuCisKIFRoZSBjb21waW5pdCBmdW5jdGlvbiBsZWFybnQgYSAtdyBvcHRpb24gdG8g ZXhwbGFpbiB3aHkgY29tcGR1bXAgcnVucy4KIFdoZW4gcnVuIHdpdGhvdXQgdGhlIC1pIG9y IC11IG9wdGlvbnMgYW5kIGNvbXBhdWRpdCBkaXNjb3ZlcnMgc2VjdXJpdHkKIGlzc3Vlcywg YW5zd2VyaW5nICJ5IiB0byB0aGUgIklnbm9yZSBpbnNlY3VyZSAuLi4iIHByb21wdCByZW1v dmVzIHRoZQpAQCAtNjksMTEgKzU1LDM3IEBAIHdpZGdldHMuICBUaGlzIGNvcnJlc3BvbmRz IHRvIGxvbmctc3RhbmRpbmcgYmVoYXZpb3Igb2Ygb3RoZXIgdXNlciBaTEUKIHdpZGdldHMu ICBVc2UgdGhlIF9jb21wbGV0ZV9kZWJ1ZyB3aWRnZXQgdG8gY2FwdHVyZSBYVFJBQ0Ugb3V0 cHV0LCBvcgogdXNlICJmdW5jdGlvbnMgLVQiIHRvIGVuYWJsZSB0cmFjaW5nIG9mIHNwZWNp ZmljIGNvbXBsZXRpb24gZnVuY3Rpb25zLgogCitUaGUgZmMgYnVpbHRpbiBsZWFybnQgYW4g LXMgb3B0aW9uIHdoaWNoIGlzIGEgUE9TSVggZXF1aXZhbGVudCB0byB0aGUKK2BmYyAtZS1g IG1ldGhvZCBvZiByZS1leGVjdXRpbmcgYSBjb21tYW5kIHdpdGhvdXQgaW52b2tpbmcgYW4g ZWRpdG9yLgorCitUaGUgb3B0aW9uIENBU0VfUEFUSFMgd2FzIGFkZGVkIHRvIGNvbnRyb2wg aG93IE5PX0NBU0VfR0xPQiBiZWhhdmVzLgorTk9fQ0FTRV9HTE9CICsgTk9fQ0FTRV9QQVRI UyBpcyBlcXVpdmFsZW50IHRvIHRoZSBjdXJyZW50IE5PX0NBU0VfR0xPQgorYmVoYXZpb3Vy LiBOT19DQVNFX0dMT0IgKyBDQVNFX1BBVEhTIHRyZWF0cyBvbmx5IHBhdGggY29tcG9uZW50 cyB0aGF0Citjb250YWluIGdsb2JiaW5nIGNoYXJhY3RlcnMgYXMgY2FzZS1pbnNlbnNpdGl2 ZTsgdGhpcyBiZWhhdmlvdXIgbWF5Cit5aWVsZCBtb3JlIHByZWRpY3RhYmxlIHJlc3VsdHMg b24gY2FzZS1zZW5zaXRpdmUgZmlsZSBzeXN0ZW1zLgorTk9fQ0FTRV9QQVRIUyBpcyB0aGUg ZGVmYXVsdC4KKwogV2l0aCB0aGUgbmV3IFRZUEVTRVRfVE9fVU5TRVQgb3B0aW9uIHNldCwg InR5cGVzZXQgZm9vIiBsZWF2ZXMgZm9vIHVuc2V0LAogaW4gY29udHJhc3QgdG8gdGhlIGRl ZmF1bHQgYmVoYXZpb3Igd2hpY2ggYXNzaWducyBmb289IiIuICBBbnkgcGFyYW1ldGVyCiBh dHRyaWJ1dGVzIHN1Y2ggYXMgbnVtZXJpYyB0eXBlLCBzb3J0aW5nLCBhbmQgcGFkZGluZyBh cmUgcmV0YWluZWQgdW50aWwKIHRoZSBwYXJhbWV0ZXIgaXMgZXhwbGljaXRseSB1bnNldCBv ciBhIGNvbmZsaWN0aW5nIHZhbHVlIGlzIGFzc2lnbmVkLgotVGhpcyBpcyBzaW1pbGFyIHRv IGRlZmF1bHQgYmVoYXZpb3Igb2YgYmFzaCBhbmQga3NoLgorVGhpcyBpcyBzaW1pbGFyIHRv IGRlZmF1bHQgYmVoYXZpb3Igb2YgYmFzaCBhbmQga3NoLiAgVGhpcyBvcHRpb24gaXMKK2Rp c2FibGVkIGJ5IGRlZmF1bHQuCisKK1RoZSBjb21wYWRkIGJ1aWx0aW4ncyAtRCBvcHRpb24g Y2FuIG5vdyBiZSBzcGVjaWZpZWQgbW9yZSB0aGFuIG9uY2UuCisKK1RoZSB6c2gvenV0aWwg bW9kdWxlJ3MgemZvcm1hdCBidWlsdGluIGxlYXJudCBhbiAtRiBvcHRpb24gd2hpY2ggYmVo YXZlcworbGlrZSAtZiBleGNlcHQgdGhhdCB0ZXJuYXJ5IGV4cHJlc3Npb25zIGNoZWNrIGZv ciBleGlzdGVuY2UgaW5zdGVhZCBvZgorZG9pbmcgbWF0aCBldmFsdWF0aW9uLgorCitBIF9u dW1iZXJzIGhlbHBlciBmdW5jdGlvbiBoYXMgYmVlbiBhZGRlZCB0byBoZWxwIGNvbXBsZXRp b24gZnVuY3Rpb25zCitjb21wbGV0ZSBudW1iZXJzIHdpdGggdW5pdCBzdWZmaXhlcywgZXRj LgorCitUaGUgV0FUQ0hGTVQgcGFyYW1ldGVyIG5vdyBzdXBwb3J0cyBjb2xvdXJzIHZpYSB0 aGUgJUYgYW5kICVLIGVzY2FwZXMuCisKK1RoZSBTVFRZIHBhcmFtZXRlciBjYW4gbm93IGJl IHNldCB0byBhbiBlbXB0eSBzdHJpbmcgYmVmb3JlIHJ1bm5pbmcgYQorY29tbWFuZCB0byBh dXRvbWF0aWNhbGx5IHJlc3RvcmUgdGVybWluYWwgc2V0dGluZ3MgYWZ0ZXIgdGhlIGNvbW1h bmQKK2ZpbmlzaGVzLgogCiBUaGUgImpvYnMiIGNvbW1hbmQgYW5kICIkam9ic3RhdGVzIiBh bmQgcmVsYXRlZCBwYXJhbWV0ZXJzIGNhbiByZXBvcnQgb24KIHBhcmVudCBzaGVsbCBqb2Jz IGV2ZW4gaW4gc3Vic2hlbGxzLiAgVGhpcyBpcyBhIHNuYXBzaG90IG9mIHRoZSBwYXJlbnQK QEAgLTgxLDYgKzkzLDI2IEBAIHN0YXRlLCBmcm96ZW4gYXQgdGhlIHBvaW50IHRoZSBzdWJz aGVsbCBzdGFydGVkLiAgSG93ZXZlciwgaWYgYSBzdWJzaGVsbAogc3RhcnRzIGl0cyBvd24g YmFja2dyb3VuZCBqb2JzLCB0aGUgcGFyZW50IHN0YXRlIGlzIGRpc2NhcmRlZCBpbiBvcmRl cgogdG8gcmVwb3J0IG9uIHRob3NlIG5ldyBqb2JzLgogCitDaGFuZ2VzIGZyb20gNS44IHRv IDUuOC4xCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0NWRS0yMDIxLTQ1NDQ0OiBT b21lIHByb21wdCBleHBhbnNpb24gc2VxdWVuY2VzLCBzdWNoIGFzICVGLCBzdXBwb3J0Cisn YXJndW1lbnRzJyB3aGljaCBhcmUgdGhlbXNlbHZlcyBleHBhbmRlZCBpbiBjYXNlIHRoZXkg Y29udGFpbiBjb2xvdXIKK3ZhbHVlcywgZXRjLiBUaGlzIGFkZGl0aW9uYWwgZXhwYW5zaW9u IHdvdWxkIHRyaWdnZXIgUFJPTVBUX1NVQlNUCitldmFsdWF0aW9uLCBpZiBlbmFibGVkLiBU aGlzIGNvdWxkIGJlIGFidXNlZCB0byBleGVjdXRlIGNvZGUgdGhlIHVzZXIKK2RpZG4ndCBl eHBlY3QuIGUuZy4sIGdpdmVuIGEgY2VydGFpbiBwcm9tcHQgY29uZmlndXJhdGlvbiwgYW4g YXR0YWNrZXIKK2NvdWxkIHRyaWNrIGEgdXNlciBpbnRvIGV4ZWN1dGluZyBhcmJpdHJhcnkg Y29kZSBieSBoYXZpbmcgdGhlbSBjaGVjaworb3V0IGEgR2l0IGJyYW5jaCB3aXRoIGEgc3Bl Y2lhbGx5IGNyYWZ0ZWQgbmFtZS4KKworVGhpcyBpcyBmaXhlZCBpbiB0aGUgc2hlbGwgaXRz ZWxmIGJ5IG5vIGxvbmdlciBwZXJmb3JtaW5nIFBST01QVF9TVUJTVAorZXZhbHVhdGlvbiBv biB0aGVzZSBwcm9tcHQtZXhwYW5zaW9uIGFyZ3VtZW50cy4KKworVXNlcnMgd2hvIGFyZSBj b25jZXJuZWQgYWJvdXQgYW4gZXhwbG9pdCBidXQgdW5hYmxlIHRvIHVwZGF0ZSB0aGVpcgor YmluYXJpZXMgbWF5IGFwcGx5IHRoZSBwYXJ0aWFsIHdvcmstYXJvdW5kIGRlc2NyaWJlZCBp biB0aGUgZmlsZQorRXRjL0NWRS0yMDIxLTQ1NDQ0LVZDU19JbmZvLXdvcmthcm91bmQucGF0 Y2ggaW5jbHVkZWQgd2l0aCB0aGUgc2hlbGwKK3NvdXJjZS4gWyBSZXBvcnRlZCBieSBSeW90 YUsgPHNlY3VyaXR5QHJ5b3Rhay5tZT4uIEFkZGl0aW9uYWwgdGhhbmtzIHRvCitNYXJjIENv cm5lbGzDoCA8aGVsbG9AbWNvcm5lbGxhLmNvbT4uIF0KKwogQ2hhbmdlcyBmcm9tIDUuNy4x LXRlc3QtMyB0byA1LjgKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKZGlm ZiAtLWdpdCBhL1JFQURNRSBiL1JFQURNRQppbmRleCBjMjdkNjg4MWEuLjIxMTQyZTE3YyAx MDA2NDQKLS0tIGEvUkVBRE1FCisrKyBiL1JFQURNRQpAQCAtNSwxMSArNSwxMiBAQCBUSEUg WiBTSEVMTCAoWlNIKQogVmVyc2lvbgogLS0tLS0tLQogCi1UaGlzIGlzIHZlcnNpb24gNS44 LjEgb2YgdGhlIHNoZWxsLiAgVGhpcyBpcyBhIHNlY3VyaXR5IGFuZCBidWdmaXggcmVsZWFz ZS4KK1RoaXMgaXMgdmVyc2lvbiA1Ljkgb2YgdGhlIHNoZWxsLiAgVGhpcyBpcyBhIHNlY3Vy aXR5IGFuZCBmZWF0dXJlIHJlbGVhc2UuCitUaGVyZSBhcmUgc2V2ZXJhbCB2aXNpYmxlIGlt cHJvdmVtZW50cyBzaW5jZSA1LjguMSwgYXMgd2VsbCBhcyBidWcgZml4ZXMuCiBBbGwgenNo IGluc3RhbGxhdGlvbnMgYXJlIGVuY291cmFnZWQgdG8gdXBncmFkZSBhcyBzb29uIGFzIHBv c3NpYmxlLgogCiBOb3RlIGluIHBhcnRpY3VsYXIgdGhlIGNoYW5nZXMgaGlnaGxpZ2h0ZWQg dW5kZXIgIkluY29tcGF0aWJpbGl0aWVzIHNpbmNlCi01LjgiIGJlbG93LiAgU2VlIE5FV1Mg Zm9yIG1vcmUgaW5mb3JtYXRpb24uCis1LjguMSIgYmVsb3cuICBTZWUgTkVXUyBmb3IgbW9y ZSBpbmZvcm1hdGlvbi4KIAogSW5zdGFsbGluZyBac2gKIC0tLS0tLS0tLS0tLS0tCkBAIC0z MCwxNiArMzEsMTMgQEAgWnNoIGlzIGEgc2hlbGwgd2l0aCBsb3RzIG9mIGZlYXR1cmVzLiAg Rm9yIGEgbGlzdCBvZiBzb21lIG9mIHRoZXNlLCBzZWUgdGhlCiBmaWxlIEZFQVRVUkVTLCBh bmQgZm9yIHRoZSBsYXRlc3QgY2hhbmdlcyBzZWUgTkVXUy4gIEZvciBtb3JlCiBkZXRhaWxz LCBzZWUgdGhlIGRvY3VtZW50YXRpb24uCiAKLUluY29tcGF0aWJpbGl0aWVzIHNpbmNlIDUu OAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitJbmNvbXBhdGliaWxpdGllcyBzaW5j ZSA1LjguMQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogY29tcGluaXQ6IEEg InkiIHJlc3BvbnNlIHRvIHRoZSAiSWdub3JlIC4uLiBhbmQgY29udGludWU/IiBwcm9tcHQg cmVtb3ZlcwogaW5zZWN1cmUgZWxlbWVudHMgZnJvbSB0aGUgc2V0IG9mIGNvbXBsZXRpb24g ZnVuY3Rpb25zLCB3aGVyZSBwcmV2aW91c2x5CiBpdCBpZ25vcmVkIHRoZSBjb21wYXVkaXQg cmVzdWx0IGFuZCBpbmNsdWRlZCBhbGwgZWxlbWVudHMuCiAKLVBST01QVF9TVUJTVCBleHBh bnNpb24gaXMgbm8gbG9uZ2VyIHBlcmZvcm1lZCBvbiBhcmd1bWVudHMgdG8gcHJvbXB0LQot ZXhwYW5zaW9uIHNlcXVlbmNlcyBzdWNoIGFzICVGLgotCiBCdWlsZC10aW1lIGNoYW5nZTog VGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlIC0tZW5hYmxlLWdkYm0gY29uZmlndXJlCiBhcmd1 bWVudCBoYXMgY2hhbmdlZCBmcm9tICJ5ZXMiIHRvICJubyIuICBUaHVzLCB0aGUgenNoL2Ri L2dkYm0gbW9kdWxlIHdpbGwKIG5vdCBiZSBidWlsdCB1bmxlc3MgLS1lbmFibGUtZ2RibSBp cyBwYXNzZWQgZXhwbGljaXRseS4KQEAgLTEwNSwxMSArMTAzLDI1IEBAIGVtdWxhdGUgc2g6 IFdoZW4genNoIGVtdWxhdGVzIHNoLCB0aGUgZmluYWwgY29tbWFuZCBpbiBhIHBpcGVsaW5l IGlzIG5vdyBydW4gaW4KIGEgc3Vic2hlbGwuICBUaGlzIGRpZmZlcnMgZnJvbSB0aGUgYmVo YXZpb3IgaW4gdGhlIG5hdGl2ZSAoenNoKSBtb2RlLCBidXQgaXMKIGNvbnNpc3RlbnQgd2l0 aCBtb3N0IG90aGVyIHNoIGltcGxlbWVudGF0aW9ucy4KIAorVGhlIGV4cG9ydCBhbmQgcmVh ZG9ubHkgYnVpbHRpbnMgbm93IGlnbm9yZSB0aGUgLXAgb3B0aW9uIHdoZW4gdGhlcmUgYXJl CitvcGVyYW5kcyBnaXZlbiBhbmQgUE9TSVhfQlVJTFRJTlMgaXMgZW5hYmxlZC4gVGhpcyBt b3JlIGNsb3NlbHkgbWF0Y2hlcyB0aGUKK2JlaGF2aW91ciBvZiBiYXNoIGFuZCBrc2guCisK IGdldG9wdHMgbm93IGNhbGN1bGF0ZXMgT1BUSU5EIGluIGEgc2ltaWxhciBtYW5uZXIgdG8g b3RoZXIgc2hlbGxzIHdoZW4gdGhlCiBQT1NJWF9CVUlMVElOUyBvcHRpb24gaXMgZW5hYmxl ZC4KIAotSW5jb21wYXRpYmlsaXRpZXMgYmV0d2VlbiA1LjcuMSBhbmQgNS44Ci0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0lnbm9yZWQtc2lnbmFsIHRyYXBz IGFyZSBub3cgaW5oZXJpdGVkIGJ5IHN1YnNoZWxscyB3aGVuIHRoZSBQT1NJWF9UUkFQUwor b3B0aW9uIGlzIGVuYWJsZWQuCisKK2VtdWxhdGUgc2g6IEluZiBhbmQgTmFOIGFyZSBub3cg dHJlYXRlZCBhcyBwYXJhbWV0ZXIgbmFtZXMgaW4gYXJpdGhtZXRpYworY29udGV4dCB3aGVu IHpzaCBpcyBlbXVsYXRpbmcgc2guCisKK1RoZSAke25hbWU6b2Zmc2V0Omxlbmd0aH0gZXhw YW5zaW9uIHN5bnRheCBub3cgYmVoYXZlcyBtb3JlIHNpbWlsYXJseSB0bworb3RoZXIgc2hl bGxzIGluIHRoYXQgdGhlIG9mZnNldCBhbmQgbGVuZ3RoIGFyZSBhcHBsaWVkIGFzIGFycmF5 IGluZGljZXMKK3ByaW9yIHRvIHNjYWxhciBjb252ZXJzaW9uIGluIGUuZy4gIiR7KjowOjJ9 Ii4KKworSW5jb21wYXRpYmlsaXRpZXMgYmV0d2VlbiA1LjcuMSBhbmQgNS44LjEKKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFRoZSBoaXN0b3J5IGV4 cGFuc2lvbiAhOjE6dDIgdXNlZCB0byBiZSBpbnRlcnByZXRlZCBzdWNoIHRoYXQgdGhlIDIK IHdhcyBhIHNlcGFyYXRlIGNoYXJhY3RlciBhZGRlZCBhZnRlciB0aGUgaGlzdG9yeSBleHBh bnNpb24uICBOb3cKQEAgLTE0MCw2ICsxNTIsOSBAQCBjaGFuZ2VzIG1hZGUgaW4gdGhlIGNv dXJzZSBvZiBmaXhpbmcgQ1ZFLTIwMTktMjAwNDQuICBQbGVhc2UgcmVwb3J0IHRoaXMKIHRv IHRoZSB6c2gtd29ya2VycyBtYWlsaW5nIGxpc3QgaWYgeW91ciBzeXN0ZW0gaXMgYWZmZWN0 ZWQuICBTZWUgTkVXUyBmb3IKIG1vcmUuCiAKK1BST01QVF9TVUJTVCBleHBhbnNpb24gaXMg bm8gbG9uZ2VyIHBlcmZvcm1lZCBvbiBhcmd1bWVudHMgdG8gcHJvbXB0LQorZXhwYW5zaW9u IHNlcXVlbmNlcyBzdWNoIGFzICVGLgorCiBJbmNvbXBhdGliaWxpdGllcyBiZXR3ZWVuIDUu Ni4yIGFuZCA1LjcuMQogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KIAotLSAKMi4zNC4xCg== --5b08b92f936441408ee0f8be97f36f0a Content-Disposition: attachment;filename="patch-2-dedication.txt" Content-Type: text/plain; name="patch-2-dedication.txt" Content-Transfer-Encoding: BASE64 RnJvbSAxZmZjNGI4NmM0ZDc2ZDkxZDE4NjYxYmNmMTJkMGIzMDZkZWI0NzJhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBkYW5hIDxkYW5hQGRhbmEuaXM+CkRhdGU6IFNhdCwg MiBBcHIgMjAyMiAyMjoyMDo1NSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMi8yXSBORVdTOiBE ZWRpY2F0ZSB6c2ggNS45IHRvIFN2ZW4gR3Vja2VzCgotLS0KIE5FV1MgfCA1ICsrKysrCiAx IGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvTkVXUyBiL05F V1MKaW5kZXggNjFlZTMyZWYxLi42YzkxMTJhZDYgMTAwNjQ0Ci0tLSBhL05FV1MKKysrIGIv TkVXUwpAQCAtNiw2ICs2LDExIEBAIE5vdGUgYWxzbyB0aGUgbGlzdCBvZiBpbmNvbXBhdGli aWxpdGllcyBpbiB0aGUgUkVBRE1FIGZpbGUuCiAKIENoYW5nZXMgc2luY2UgNS44LjEKIC0t LS0tLS0tLS0tLS0tLS0tLS0KK3pzaCA1LjkgaXMgZGVkaWNhdGVkIGluIG1lbW9yeSBvZiBT dmVuIEd1Y2tlcywgd2hvIHdhcywgYW1vbmdzdCBvdGhlcgordGhpbmdzLCBhIGxvbmctdGlt ZSB6c2ggYWR2b2NhdGUuCisKKyAgaHR0cHM6Ly9saW51eG5ld3MuZGUvMjAyMi8wMi9zdmVu LWd1Y2tlcy12ZXJzdG9yYmVuLworICBodHRwczovL2dyb3Vwcy5nb29nbGUuY29tL2cvdmlt X2Fubm91bmNlL2MvTUpCS1ZkLXhyRUUvbS9qb1ZOYURnQUFnQUoKIAogV2hlbiB1bnNldHRp bmcgYSBoYXNoIGVsZW1lbnQsIHRoZSBzdHJpbmcgZW5jbG9zZWQgaW4gc3F1YXJlIGJyYWNr ZXRzIGlzCiBpbnRlcnByZXRlZCBsaXRlcmFsbHkgYWZ0ZXIgYW55IG5vcm1hbCBjb21tYW5k LWxpbmUtYXJndW1lbnQgZXhwYW5zaW9ucy4KLS0gCjIuMzQuMQo= --5b08b92f936441408ee0f8be97f36f0a--