Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tzTjZ-002VWV-So for pgsql-hackers@arkaria.postgresql.org; Tue, 01 Apr 2025 05:00:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tzTjX-00G73E-O8 for pgsql-hackers@arkaria.postgresql.org; Tue, 01 Apr 2025 05:00:19 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tzTjX-00G736-5j for pgsql-hackers@lists.postgresql.org; Tue, 01 Apr 2025 05:00:19 +0000 Received: from mail-oa1-x33.google.com ([2001:4860:4864:20::33]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tzTjU-002Gfn-1f for pgsql-hackers@postgresql.org; Tue, 01 Apr 2025 05:00:18 +0000 Received: by mail-oa1-x33.google.com with SMTP id 586e51a60fabf-2bd2218ba4fso2004532fac.1 for ; Mon, 31 Mar 2025 22:00:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743483615; x=1744088415; darn=postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=IieiB5pIOusgbhL7j1H9EBiXSSqCIDrtwJxoF2gUlMc=; b=LTcogepojQ/pmBEpL0ZNyaCUkt8n3cAl0rEBfu8DPIomm/UrYzN/LDla+eZVmbSbJu FgYk8hr1d12EzKTHAe/D4INMw5YOvQbsD8uzOh0REONYdStxzW5sCWXXpWCO2Gg1nc/Z XVeS9+bj04vcuOh86+YE1JJ7mkvV3tQlP2NzlTL4Jha7ZufOXkzvlfF0/jxCAK2FvvCG akDqbJWKNy2VXP0CCKOPgn1MnI7KJNpOz5ZYEYXehySxz8OSToHugcx9MOY6Ju4KVJd6 lEtwTX6hyqNSkiSWPAUwiCQ35RTu4Yo3J3yZt14ksMGq2W4rmeZk1SDYtNpO2mpkZl4F djTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743483615; x=1744088415; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=IieiB5pIOusgbhL7j1H9EBiXSSqCIDrtwJxoF2gUlMc=; b=NBjpFupSN2gAJ9gGxRvpfCvaOSPGfvDzFadqy7ktuMddZQoWh2R0uA0H0wPmqkOnT3 E5yR0FM7YACKooFTPgDqS5/2SJwQ4F3pegPfBs8f6CruAx4Wv/enln85+thdJxHkCZYR umkyKhwBEX1v5qbn/S7E7EuMlcQPbnMxClaOmySoL4kMBWRKVlz3/A3ZOTwovlb85k7f +GISHQtimBFdQ7tcxxEw3w0RH/Q/N2RMC6lQud1Z7/oB79mvMjv6mKnaJOp0XLPVSz8G gud+0JSjwE/6V28Yd34ysMkKh5xtKcXsg6NIpAVSI6+ywSfrh3o4SRs7WmVYk1t97yl2 rsyQ== X-Gm-Message-State: AOJu0YzaxKuYmWoNAOSeC4tnJsuuvv4RaY4tXSi1ltVRrDO2bmVQRoJw xnLvw9czdzIgRru3Fgjd4RmyFZvlOYcQptP+OjcGrnB9D/sm1N/l/sV2ek/ufU1h4D1JXFtfyXI QV2PWr58E28n//slLYB4dgGustM8= X-Gm-Gg: ASbGnctfT14PZIaMTKvsqGBbybP5FQnKPfDv4FRvcQbXNLv/IxwQ3Ywxz9TqqUb4Vno YlLVjeXcZqKkOTu4RjXUQL5bNTAH89VxDhbs3JIJtBjey+MoPykWrNr0SGKR/dvCinWZwDn7CI7 KGp5WvWRPet5QglGzuDPLbTA== X-Google-Smtp-Source: AGHT+IFvGMs+GbokQpjeRBp/jnIqn6r2QID0ThAXZtOIe14jHtzgOlLuhI9L6QKf11Vd43DyrTd23WpgOelRkTXxuDU= X-Received: by 2002:a05:6870:c988:b0:2c2:542b:bce4 with SMTP id 586e51a60fabf-2cbcf46f0f0mr6314524fac.8.1743483615197; Mon, 31 Mar 2025 22:00:15 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: "David G. Johnston" Date: Mon, 31 Mar 2025 21:59:38 -0700 X-Gm-Features: AQ5f1JpeA0AJ2N2DUfS1ungOMlBUqsPuk62Zu0CHlDlAIYOTkCwuVwyKhFnPsAc Message-ID: Subject: Re: add function argument name to substring and substr To: jian he Cc: PostgreSQL-development Content-Type: multipart/mixed; boundary="0000000000008e61e90631b069cd" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000008e61e90631b069cd Content-Type: multipart/alternative; boundary="0000000000008e61e70631b069cb" --0000000000008e61e70631b069cb Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Mar 31, 2025 at 9:12=E2=80=AFPM jian he wrote: > On Tue, Apr 1, 2025 at 6:22=E2=80=AFAM David G. Johnston > wrote: > > > > On Tue, Mar 18, 2025 at 9:04=E2=80=AFPM jian he > wrote: > >> > >> > >> new patch attached. > >> > > > > I've done v4 with a delta patch. > > your v4-0001-v3-0001-substring.patch is not the same as my > v3-0001-add-argument-name-to-function-substring-and-subst.patch > > Sorry about that. v5 attached. Confirmed with diff the v3 and v5 0001 so we should be good. David J. --0000000000008e61e70631b069cb Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable --0000000000008e61e70631b069cb-- --0000000000008e61e90631b069cd Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0001-v3-0001-substring.patch" Content-Disposition: attachment; filename="v5-0001-v3-0001-substring.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m8y12k790 RnJvbSA1MDcwNjRlNjQzYjU0ZDJiZWJkNzY4OWFjZDNkZGU2MGQyMzBlMzI4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRGF2aWQgRy4gSm9obnN0b24iIDxEYXZpZC5HLkpvaG5zdG9u QEdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzMSBNYXIgMjAyNSAyMTozNjo0MiAtMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMS8yXSB2My0wMDAxIHN1YnN0cmluZwoKLS0tCiBkb2Mvc3JjL3NnbWwvZnVuYy5z Z21sICAgICAgICAgICAgICAgICAgIHwgMTExICsrKysrKysrKysrKysrKysrKysrKy0tCiBzcmMv YmFja2VuZC9jYXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsIHwgICAyICstCiBzcmMvaW5jbHVk ZS9jYXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgIHwgIDEyICsrKwogMyBmaWxlcyBjaGFuZ2Vk LCAxMTggaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3Jj L3NnbWwvZnVuYy5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMuc2dtbAppbmRleCBjNjQyZjFlYTRl Li5hMzU2OTk5NWYxIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sCisrKyBiL2Rv Yy9zcmMvc2dtbC9mdW5jLnNnbWwKQEAgLTM4MDYsNiArMzgwNiw1OCBAQCBTRUxFQ1QgTk9UKFJP Vyh0YWJsZS4qKSBJUyBOT1QgTlVMTCkgRlJPTSBUQUJMRTsgLS0gZGV0ZWN0IGF0IGxlYXN0IG9u ZSBudWxsIGluCiAgICAgICAgPC9wYXJhPjwvZW50cnk+CiAgICAgICA8L3Jvdz4KIAorCisgICAg ICA8cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xl PSJmdW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9u PiAoIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LCA8cGFy YW1ldGVyPnBhdHRlcm48L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4gKQorICAgICAgICA8 cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJhPgorICAgICAgIDxw YXJhPgorICAgICAgICBFeHRyYWN0cyB0aGUgZmlyc3Qgc3Vic3RyaW5nIG1hdGNoaW5nIFBPU0lY IHJlZ3VsYXIgZXhwcmVzc2lvbjsgc2VlCisgICAgICAgIDx4cmVmIGxpbmtlbmQ9ImZ1bmN0aW9u cy1wb3NpeC1yZWdleHAiLz4uCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAg ICA8bGl0ZXJhbD5zdWJzdHJpbmcoJ1Rob21hcycsICcuLi4kJyk8L2xpdGVyYWw+CisgICAgICAg IDxyZXR1cm52YWx1ZT5tYXM8L3JldHVybnZhbHVlPgorICAgICAgIDwvcGFyYT48L2VudHJ5Pgor ICAgICAgPC9yb3c+CisKKyAgICAgIDxyb3c+CisgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFi bGVfZW50cnkiPjxwYXJhIHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KKyAgICAgICAgPGZ1bmN0aW9u PnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFtZXRlcj5zdHJpbmc8L3BhcmFtZXRlcj4gPHR5 cGU+dGV4dDwvdHlwZT4sIDxwYXJhbWV0ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0 PC90eXBlPiwgPHBhcmFtZXRlcj5lc2NhcGVfY2hhcmFjdGVyIDwvcGFyYW1ldGVyPiA8dHlwZT50 ZXh0PC90eXBlPikKKyAgICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVybnZhbHVlPgorICAg ICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXh0cmFjdHMgdGhlIGZpcnN0IHN1 YnN0cmluZyBtYXRjaGluZyA8YWNyb255bT5TUUw8L2Fjcm9ueW0+IHJlZ3VsYXIgZXhwcmVzc2lv bjsKKyAgICAgICAgc2VlIDx4cmVmIGxpbmtlbmQ9ImZ1bmN0aW9ucy1zaW1pbGFydG8tcmVnZXhw Ii8+LgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgPGxpdGVyYWw+c3Vi c3RyaW5nKCdUaG9tYXMnLCAnJSMib19hIyJfJywgJyMnKTwvbGl0ZXJhbD4KKyAgICAgICAgPHJl dHVybnZhbHVlPm9tYTwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAg ICA8L3Jvdz4KKworICAgICAgPHJvdz4KKyAgICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9l bnRyeSI+PHBhcmEgcm9sZT0iZnVuY19zaWduYXR1cmUiPgorICAgICAgICA8aW5kZXh0ZXJtPgor ICAgICAgICAgPHByaW1hcnk+c3Vic3RyaW5nPC9wcmltYXJ5PgorICAgICAgICA8L2luZGV4dGVy bT4KKyAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFtZXRlcj5z dHJpbmc8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4sIDxwYXJhbWV0ZXI+c3RhcnQ8L3Bh cmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPG9wdGlvbmFsPiwgPHBhcmFtZXRlcj5jb3Vu dDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8L29wdGlvbmFsPiApCisgICAgICAg IDxyZXR1cm52YWx1ZT50ZXh0PC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+CisgICAgICAg PHBhcmE+CisgICAgICAgIEV4dHJhY3RzIHRoZSBzdWJzdHJpbmcgb2YgPHBhcmFtZXRlcj5zdHJp bmc8L3BhcmFtZXRlcj4gc3RhcnRpbmcgYXQKKyAgICAgICAgdGhlIDxwYXJhbWV0ZXI+c3RhcnQ8 L3BhcmFtZXRlcj4ndGggY2hhcmFjdGVyLAorICAgICAgICBhbmQgc3RvcHBpbmcgYWZ0ZXIgPHBh cmFtZXRlcj5jb3VudDwvcGFyYW1ldGVyPiBjaGFyYWN0ZXJzIGlmIHRoYXQgaXMKKyAgICAgICAg c3BlY2lmaWVkLgorICAgICAgIDwvcGFyYT4KKworICAgICAgIDxwYXJhPgorICAgICAgICA8bGl0 ZXJhbD5zdWJzdHJpbmcoJ1Rob21hcycsIDIsIDMpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJu dmFsdWU+aG9tPC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwv cm93PgorCiAgICAgICA8cm93PgogICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5 Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+CiAgICAgICAgIDxpbmRleHRlcm0+CkBAIC00 ODExLDYgKzQ4NjMsMjcgQEAgU0VMRUNUIGZvcm1hdCgnVGVzdGluZyAlMyRzLCAlMiRzLCAlcycs ICdvbmUnLCAndHdvJywgJ3RocmVlJyk7CiAgICAgICAgIDxyZXR1cm52YWx1ZT5ceDU2Nzg8L3Jl dHVybnZhbHVlPgogICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICAgPC9yb3c+CisKKyAgICAg IDxyb3c+CisgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9 ImZ1bmNfc2lnbmF0dXJlIj4KKyAgICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgIDxwcmltYXJ5 PnN1YnN0cmluZzwvcHJpbWFyeT4KKyAgICAgICAgPC9pbmRleHRlcm0+CisgICAgICAgIDxmdW5j dGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+Ynl0ZXM8L3BhcmFtZXRlcj4g PHR5cGU+Ynl0ZWE8L3R5cGU+LCA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmlu dGVnZXI8L3R5cGU+IDxvcHRpb25hbD4sIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5 cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRpb25hbD4gKQorICAgICAgICA8cmV0dXJudmFsdWU+Ynl0 ZWE8L3JldHVybnZhbHVlPgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAg RXh0cmFjdHMgdGhlIHN1YnN0cmluZyBvZiA8cGFyYW1ldGVyPmJ5dGVzPC9wYXJhbWV0ZXI+IHN0 YXJ0aW5nIGF0CisgICAgICAgIHRoZSA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+J3RoIGJ5 dGUsCisgICAgICAgIGFuZCBzdG9wcGluZyBhZnRlciA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0 ZXI+IGJ5dGVzIGlmIHRoYXQgaXMKKyAgICAgICAgc3BlY2lmaWVkLgorICAgICAgIDwvcGFyYT4K KyAgICAgICA8cGFyYT4KKyAgICAgICAgPGxpdGVyYWw+c3Vic3RyaW5nKCdceDEyMzQ1Njc4OTAn OjpieXRlYSwgMywgMik8L2xpdGVyYWw+CisgICAgICAgIDxyZXR1cm52YWx1ZT5ceDU2Nzg8L3Jl dHVybnZhbHVlPgorICAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICAgPC9yb3c+CisKICAgICA8 L3Rib2R5PgogICAgPC90Z3JvdXA+CiAgIDwvdGFibGU+CkBAIC01MzUzLDYgKzU0MjYsMjYgQEAg Y2FzdCgtMTIzNCBhcyBieXRlYSkgICAgICAgICAgIDxsaW5lYW5ub3RhdGlvbj5ceGZmZmZmYjJl PC9saW5lYW5ub3RhdGlvbj4KICAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgIDwvcm93Pgog CisgICAgICA8cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxpbmRleHRlcm0+CisgICAgICAgICA8 cHJpbWFyeT5zdWJzdHJpbmc8L3ByaW1hcnk+CisgICAgICAgIDwvaW5kZXh0ZXJtPgorICAgICAg ICA8ZnVuY3Rpb24+c3Vic3RyaW5nPC9mdW5jdGlvbj4gKCA8cGFyYW1ldGVyPmJpdHM8L3BhcmFt ZXRlcj4gPHR5cGU+Yml0PC90eXBlPiwgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPiA8dHlw ZT5pbnRlZ2VyPC90eXBlPiA8b3B0aW9uYWw+LCA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+ IDx0eXBlPmludGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+ICkKKyAgICAgICAgPHJldHVybnZhbHVl PmJpdDwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAg ICBFeHRyYWN0cyB0aGUgc3Vic3RyaW5nIG9mIDxwYXJhbWV0ZXI+Yml0czwvcGFyYW1ldGVyPiBz dGFydGluZyBhdAorICAgICAgICB0aGUgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPid0aCBi aXQsCisgICAgICAgIGFuZCBzdG9wcGluZyBhZnRlciA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0 ZXI+IGJpdHMgaWYgdGhhdCBpcworICAgICAgICBzcGVjaWZpZWQuCisgICAgICAgPC9wYXJhPgor ICAgICAgIDxwYXJhPgorICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoQicxMTAwMTAxMTExMTEn LCAzLCAyKTwvbGl0ZXJhbD4KKyAgICAgICAgPHJldHVybnZhbHVlPjAwPC9yZXR1cm52YWx1ZT4K KyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCiAgICAgICA8cm93PgogICAg ICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25h dHVyZSI+CiAgICAgICAgIDxpbmRleHRlcm0+CkBAIC01ODE2LDcgKzU5MDksNyBAQCBzdWJzdHJp bmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IGZyb20gPHJlcGxhY2VhYmxlPnBh dHRlcm48L3JlcGxhY2VhYgogPC9zeW5vcHNpcz4KICAgICBvciBhcyBhIHBsYWluIHRocmVlLWFy Z3VtZW50IGZ1bmN0aW9uOgogPHN5bm9wc2lzPgotc3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJp bmc8L3JlcGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiwgPHJl cGxhY2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3JlcGxhY2VhYmxlPikKK3N1YnN0cmluZyg8cmVw bGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBs YWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5lc2NhcGVfY2hhcmFjdGVyPC9yZXBsYWNlYWJsZT4pCiA8 L3N5bm9wc2lzPgogICAgIEFzIHdpdGggPGxpdGVyYWw+U0lNSUxBUiBUTzwvbGl0ZXJhbD4sIHRo ZQogICAgIHNwZWNpZmllZCBwYXR0ZXJuIG11c3QgbWF0Y2ggdGhlIGVudGlyZSBkYXRhIHN0cmlu Zywgb3IgZWxzZSB0aGUKQEAgLTYwMjAsMTEgKzYxMTMsMTcgQEAgc3Vic3RyaW5nKCdmb29iYXIn IHNpbWlsYXIgJyMib19iIyIlJyBlc2NhcGUgJyMnKSAgICA8bGluZWFubm90YXRpb24+TlVMTDwv bGluZWEKICAgICA8L3BhcmE+CiAKICAgICA8cGFyYT4KLSAgICAgVGhlIDxmdW5jdGlvbj5zdWJz dHJpbmc8L2Z1bmN0aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBwYXJhbWV0ZXJzLAotICAgICA8ZnVu Y3Rpb24+c3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBmcm9tCi0g ICAgIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4pPC9mdW5jdGlvbj4sIHByb3Zp ZGVzIGV4dHJhY3Rpb24gb2YgYQotICAgICBzdWJzdHJpbmcKLSAgICAgdGhhdCBtYXRjaGVzIGEg UE9TSVggcmVndWxhciBleHByZXNzaW9uIHBhdHRlcm4uICBJdCByZXR1cm5zIG51bGwgaWYKKyAg ICAgVGhlIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBw YXJhbWV0ZXJzIHByb3ZpZGVzIGV4dHJhY3Rpb24gb2YgYQorICAgICBzdWJzdHJpbmcgdGhhdCBt YXRjaGVzIGEgUE9TSVggcmVndWxhciBleHByZXNzaW9uIHBhdHRlcm4uCisgICAgIEl0IGhhcyBz eW50YXg6Cis8c3lub3BzaXM+CitzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFj ZWFibGU+IGZyb20gPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPikKKzwvc3lub3Bz aXM+CisgICAgIEl0IGNhbiBhbHNvIHdyaXR0ZW4gYXMgYSBwbGFpbiB0d28tYXJndW1lbnQgZnVu Y3Rpb246Cis8c3lub3BzaXM+CitzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFj ZWFibGU+LCA8cmVwbGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFibGU+KQorPC9zeW5vcHNpcz4K KyAgICAgSXQgcmV0dXJucyBudWxsIGlmCiAgICAgIHRoZXJlIGlzIG5vIG1hdGNoLCBvdGhlcndp c2UgdGhlIGZpcnN0IHBvcnRpb24gb2YgdGhlIHRleHQgdGhhdCBtYXRjaGVkIHRoZQogICAgICBw YXR0ZXJuLiAgQnV0IGlmIHRoZSBwYXR0ZXJuIGNvbnRhaW5zIGFueSBwYXJlbnRoZXNlcywgdGhl IHBvcnRpb24KICAgICAgb2YgdGhlIHRleHQgdGhhdCBtYXRjaGVkIHRoZSBmaXJzdCBwYXJlbnRo ZXNpemVkIHN1YmV4cHJlc3Npb24gKHRoZQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxv Zy9zeXN0ZW1fZnVuY3Rpb25zLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0 aW9ucy5zcWwKaW5kZXggNTY2ZjMwOGU0NC4uNWVhOWQ3ODZiNiAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbAorKysgYi9zcmMvYmFja2VuZC9jYXRh bG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsCkBAIC00Miw3ICs0Miw3IEBAIENSRUFURSBPUiBSRVBM QUNFIEZVTkNUSU9OIHJwYWQodGV4dCwgaW50ZWdlcikKICBJTU1VVEFCTEUgUEFSQUxMRUwgU0FG RSBTVFJJQ1QgQ09TVCAxCiBSRVRVUk4gcnBhZCgkMSwgJDIsICcgJyk7CiAKLUNSRUFURSBPUiBS RVBMQUNFIEZVTkNUSU9OICJzdWJzdHJpbmciKHRleHQsIHRleHQsIHRleHQpCitDUkVBVEUgT1Ig UkVQTEFDRSBGVU5DVElPTiAic3Vic3RyaW5nIihzdHJpbmcgdGV4dCwgcGF0dGVybiB0ZXh0LCBl c2NhcGVfY2hhcmFjdGVyIHRleHQpCiAgUkVUVVJOUyB0ZXh0CiAgTEFOR1VBR0Ugc3FsCiAgSU1N VVRBQkxFIFBBUkFMTEVMIFNBRkUgU1RSSUNUIENPU1QgMQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1 ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQK aW5kZXggMDczN2ViNzNjOS4uODdlMzAwNmZlZiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0 YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBA IC0zNjY4LDYgKzM2NjgsNyBAQAogICBwcm9zcmMgPT4gJ3J0cmltJyB9LAogeyBvaWQgPT4gJzg3 NycsIGRlc2NyID0+ICdleHRyYWN0IHBvcnRpb24gb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9PiAn c3Vic3RyJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsIHByb2FyZ3R5cGVzID0+ICd0ZXh0IGludDQg aW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7c3RyaW5nLCBzdGFydCwgY291bnR9JywKICAgcHJv c3JjID0+ICd0ZXh0X3N1YnN0cicgfSwKIHsgb2lkID0+ICc4NzgnLCBkZXNjciA9PiAnbWFwIGEg c2V0IG9mIGNoYXJhY3RlcnMgYXBwZWFyaW5nIGluIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3Ry YW5zbGF0ZScsIHByb3JldHR5cGUgPT4gJ3RleHQnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCB0ZXh0 IHRleHQnLApAQCAtMzY4Niw2ICszNjg3LDcgQEAKICAgcHJvc3JjID0+ICdydHJpbTEnIH0sCiB7 IG9pZCA9PiAnODgzJywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBw cm9uYW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywgcHJvYXJndHlwZXMgPT4g J3RleHQgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7c3RyaW5nLCBzdGFydH0nLAogICBwcm9z cmMgPT4gJ3RleHRfc3Vic3RyX25vX2xlbicgfSwKIHsgb2lkID0+ICc4ODQnLCBkZXNjciA9PiAn dHJpbSBzZWxlY3RlZCBjaGFyYWN0ZXJzIGZyb20gYm90aCBlbmRzIG9mIHN0cmluZycsCiAgIHBy b25hbWUgPT4gJ2J0cmltJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsIHByb2FyZ3R5cGVzID0+ICd0 ZXh0IHRleHQnLApAQCAtMzY5Niw5ICszNjk4LDExIEBACiAKIHsgb2lkID0+ICc5MzYnLCBkZXNj ciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmlu ZycsIHByb3JldHR5cGUgPT4gJ3RleHQnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBpbnQ0IGludDQn LAorICBwcm9hcmduYW1lcyA9PiAne3N0cmluZywgc3RhcnQsIGNvdW50fScsCiAgIHByb3NyYyA9 PiAndGV4dF9zdWJzdHInIH0sCiB7IG9pZCA9PiAnOTM3JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9y dGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9yZXR0eXBlID0+ ICd0ZXh0JywgcHJvYXJndHlwZXMgPT4gJ3RleHQgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7 c3RyaW5nLCBzdGFydH0nLAogICBwcm9zcmMgPT4gJ3RleHRfc3Vic3RyX25vX2xlbicgfSwKIHsg b2lkID0+ICcyMDg3JywKICAgZGVzY3IgPT4gJ3JlcGxhY2UgYWxsIG9jY3VycmVuY2VzIGluIHN0 cmluZyBvZiBvbGRfc3Vic3RyIHdpdGggbmV3X3N1YnN0cicsCkBAIC00MTE2LDYgKzQxMjAsNyBA QAogICBwcm9zcmMgPT4gJ2JpdGNhdCcgfSwKIHsgb2lkID0+ICcxNjgwJywgZGVzY3IgPT4gJ2V4 dHJhY3QgcG9ydGlvbiBvZiBiaXRzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBw cm9yZXR0eXBlID0+ICdiaXQnLCBwcm9hcmd0eXBlcyA9PiAnYml0IGludDQgaW50NCcsCisgIHBy b2FyZ25hbWVzID0+ICd7Yml0cywgc3RhcnQsIGNvdW50fScsCiAgIHByb3NyYyA9PiAnYml0c3Vi c3RyJyB9LAogeyBvaWQgPT4gJzE2ODEnLCBkZXNjciA9PiAnYml0c3RyaW5nIGxlbmd0aCcsCiAg IHByb25hbWUgPT4gJ2xlbmd0aCcsIHByb3JldHR5cGUgPT4gJ2ludDQnLCBwcm9hcmd0eXBlcyA9 PiAnYml0JywKQEAgLTQxNDUsNiArNDE1MCw3IEBACiAgIHByb3NyYyA9PiAnYml0cG9zaXRpb24n IH0sCiB7IG9pZCA9PiAnMTY5OScsIGRlc2NyID0+ICdleHRyYWN0IHBvcnRpb24gb2YgYml0c3Ry aW5nJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyaW5nJywgcHJvcmV0dHlwZSA9PiAnYml0JywgcHJv YXJndHlwZXMgPT4gJ2JpdCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tiaXRzLCBzdGFydH0n LAogICBwcm9zcmMgPT4gJ2JpdHN1YnN0cl9ub19sZW4nIH0sCiAKIHsgb2lkID0+ICczMDMwJywg ZGVzY3IgPT4gJ3N1YnN0aXR1dGUgcG9ydGlvbiBvZiBiaXRzdHJpbmcnLApAQCAtNjIzOSwxNSAr NjI0NSwxOSBAQAogICBwcm9zcmMgPT4gJ2J5dGVhY2F0JyB9LAogeyBvaWQgPT4gJzIwMTInLCBk ZXNjciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0 cmluZycsIHByb3JldHR5cGUgPT4gJ2J5dGVhJywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tieXRlcywg c3RhcnQsIGNvdW50fScsCiAgIHByb2FyZ3R5cGVzID0+ICdieXRlYSBpbnQ0IGludDQnLCBwcm9z cmMgPT4gJ2J5dGVhX3N1YnN0cicgfSwKIHsgb2lkID0+ICcyMDEzJywgZGVzY3IgPT4gJ2V4dHJh Y3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9yZXR0 eXBlID0+ICdieXRlYScsIHByb2FyZ3R5cGVzID0+ICdieXRlYSBpbnQ0JywKKyAgcHJvYXJnbmFt ZXMgPT4gJ3tieXRlcywgc3RhcnR9JywKICAgcHJvc3JjID0+ICdieXRlYV9zdWJzdHJfbm9fbGVu JyB9LAogeyBvaWQgPT4gJzIwODUnLCBkZXNjciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmlu ZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cicsIHByb3JldHR5cGUgPT4gJ2J5dGVhJywgcHJvYXJn dHlwZXMgPT4gJ2J5dGVhIGludDQgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7Ynl0ZXMsIHN0 YXJ0LCBjb3VudH0nLAogICBwcm9zcmMgPT4gJ2J5dGVhX3N1YnN0cicgfSwKIHsgb2lkID0+ICcy MDg2JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICdieXRlYScsIHByb2FyZ3R5cGVzID0+ICdieXRlYSBp bnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tieXRlcywgc3RhcnR9JywKICAgcHJvc3JjID0+ICdi eXRlYV9zdWJzdHJfbm9fbGVuJyB9LAogeyBvaWQgPT4gJzIwMTQnLCBkZXNjciA9PiAncG9zaXRp b24gb2Ygc3Vic3RyaW5nJywKICAgcHJvbmFtZSA9PiAncG9zaXRpb24nLCBwcm9yZXR0eXBlID0+ ICdpbnQ0JywgcHJvYXJndHlwZXMgPT4gJ2J5dGVhIGJ5dGVhJywKQEAgLTY0MzYsOSArNjQ0Niwx MSBAQAogCiB7IG9pZCA9PiAnMjA3MycsIGRlc2NyID0+ICdleHRyYWN0IHRleHQgbWF0Y2hpbmcg cmVndWxhciBleHByZXNzaW9uJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyaW5nJywgcHJvcmV0dHlw ZSA9PiAndGV4dCcsIHByb2FyZ3R5cGVzID0+ICd0ZXh0IHRleHQnLAorICBwcm9hcmduYW1lcyA9 PiAne3N0cmluZywgcGF0dGVybn0nLAogICBwcm9zcmMgPT4gJ3RleHRyZWdleHN1YnN0cicgfSwK IHsgb2lkID0+ICcyMDc0JywgZGVzY3IgPT4gJ2V4dHJhY3QgdGV4dCBtYXRjaGluZyBTUUwgcmVn dWxhciBleHByZXNzaW9uJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyaW5nJywgcHJvbGFuZyA9PiAn c3FsJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsCisgIHByb2FyZ25hbWVzID0+ICd7c3RyaW5nLCBw YXR0ZXJuLCBlc2NhcGVfY2hhcmFjdGVyfScsCiAgIHByb2FyZ3R5cGVzID0+ICd0ZXh0IHRleHQg dGV4dCcsIHByb3NyYyA9PiAnc2VlIHN5c3RlbV9mdW5jdGlvbnMuc3FsJyB9LAogCiB7IG9pZCA9 PiAnMjA3NScsIGRlc2NyID0+ICdjb252ZXJ0IGludDggdG8gYml0c3RyaW5nJywKLS0gCjIuMzQu MQoK --0000000000008e61e90631b069cd Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0002-v3-delta.patch" Content-Disposition: attachment; filename="v5-0002-v3-delta.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m8y12s6r1 RnJvbSA2ZWYzZmY0M2YxMzNkZDZiZTQyM2M0YTU2N2FmZGExMGYxYzY0OTg4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRGF2aWQgRy4gSm9obnN0b24iIDxEYXZpZC5HLkpvaG5zdG9u QEdtYWlsLmNvbT4KRGF0ZTogTW9uLCAzMSBNYXIgMjAyNSAyMTo1NDo0NCAtMDcwMApTdWJqZWN0 OiBbUEFUQ0ggMi8yXSB2MyBkZWx0YQoKLS0tCiBkb2Mvc3JjL3NnbWwvZnVuYy5zZ21sICAgICAg ICAgICAgICAgICAgIHwgNDYgKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiBzcmMvYmFja2VuZC9j YXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsIHwgIDIgKy0KIHNyYy9pbmNsdWRlL2NhdGFsb2cv cGdfcHJvYy5kYXQgICAgICAgICAgfCAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlv bnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9mdW5jLnNn bWwgYi9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sCmluZGV4IGEzNTY5OTk1ZjEuLmM5NTE2OTY2YzEg MTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2Z1 bmMuc2dtbApAQCAtMjgzNyw3ICsyODM3LDggQEAgU0VMRUNUIE5PVChST1codGFibGUuKikgSVMg Tk9UIE5VTEwpIEZST00gVEFCTEU7IC0tIGRldGVjdCBhdCBsZWFzdCBvbmUgbnVsbCBpbgogICAg ICAgIDwvcGFyYT4KICAgICAgICA8cGFyYT4KICAgICAgICAgRXh0cmFjdHMgdGhlIGZpcnN0IHN1 YnN0cmluZyBtYXRjaGluZyBQT1NJWCByZWd1bGFyIGV4cHJlc3Npb247IHNlZQotICAgICAgICA8 eHJlZiBsaW5rZW5kPSJmdW5jdGlvbnMtcG9zaXgtcmVnZXhwIi8+LgorICAgICAgICA8eHJlZiBs aW5rZW5kPSJmdW5jdGlvbnMtcG9zaXgtcmVnZXhwIi8+LiAgKFNhbWUgYXMKKyAgICAgICAgPGxp dGVyYWw+c3Vic3RyaW5nKHN0cmluZyB0ZXh0LCBwYXR0ZXJuIHRleHQpPC9saXRlcmFsPi4pCiAg ICAgICAgPC9wYXJhPgogICAgICAgIDxwYXJhPgogICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmco J1Rob21hcycgZnJvbSAnLi4uJCcpPC9saXRlcmFsPgpAQCAtMjg1MCwxOSArMjg1MSwxOCBAQCBT RUxFQ1QgTk9UKFJPVyh0YWJsZS4qKSBJUyBOT1QgTlVMTCkgRlJPTSBUQUJMRTsgLS0gZGV0ZWN0 IGF0IGxlYXN0IG9uZSBudWxsIGluCiAgICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0 aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxs aXRlcmFsPlNJTUlMQVI8L2xpdGVyYWw+IDxwYXJhbWV0ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8 dHlwZT50ZXh0PC90eXBlPiA8bGl0ZXJhbD5FU0NBUEU8L2xpdGVyYWw+IDxwYXJhbWV0ZXI+ZXNj YXBlPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+ICkKICAgICAgICAgPHJldHVybnZhbHVl PnRleHQ8L3JldHVybnZhbHVlPgogICAgICAgIDwvcGFyYT4KLSAgICAgICA8cGFyYSByb2xlPSJm dW5jX3NpZ25hdHVyZSI+Ci0gICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAo IDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxsaXRlcmFs PkZST008L2xpdGVyYWw+IDxwYXJhbWV0ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0 PC90eXBlPiA8bGl0ZXJhbD5GT1I8L2xpdGVyYWw+IDxwYXJhbWV0ZXI+ZXNjYXBlPC9wYXJhbWV0 ZXI+IDx0eXBlPnRleHQ8L3R5cGU+ICkKLSAgICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVy bnZhbHVlPgotICAgICAgIDwvcGFyYT4KICAgICAgICA8cGFyYT4KICAgICAgICAgRXh0cmFjdHMg dGhlIGZpcnN0IHN1YnN0cmluZyBtYXRjaGluZyA8YWNyb255bT5TUUw8L2Fjcm9ueW0+IHJlZ3Vs YXIgZXhwcmVzc2lvbjsKLSAgICAgICAgc2VlIDx4cmVmIGxpbmtlbmQ9ImZ1bmN0aW9ucy1zaW1p bGFydG8tcmVnZXhwIi8+LiAgVGhlIGZpcnN0IGZvcm0gaGFzCi0gICAgICAgIGJlZW4gc3BlY2lm aWVkIHNpbmNlIFNRTDoyMDAzOyB0aGUgc2Vjb25kIGZvcm0gd2FzIG9ubHkgaW4gU1FMOjE5OTkK LSAgICAgICAgYW5kIHNob3VsZCBiZSBjb25zaWRlcmVkIG9ic29sZXRlLgorICAgICAgICBzZWUg PHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXNpbWlsYXJ0by1yZWdleHAiLz4uICAoU2FtZSBhcwor ICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoc3RyaW5nIHRleHQsIHBhdHRlcm4gdGV4dCwgZXNj YXBlIHRleHQpPC9saXRlcmFsPi4pCiAgICAgICAgPC9wYXJhPgogICAgICAgIDxwYXJhPgogICAg ICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoJ1Rob21hcycgc2ltaWxhciAnJSMib19hIyJfJyBlc2Nh cGUgJyMnKTwvbGl0ZXJhbD4KICAgICAgICAgPHJldHVybnZhbHVlPm9tYTwvcmV0dXJudmFsdWU+ CisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBPYnNvbGVzY2VuY2Ugbm90 ZTogU1FMOjE5OTkgaW50cm9kdWNlZCB0aGlzIGZ1bmN0aW9uIHdpdGggPGxpdGVyYWw+RlJPTTwv bGl0ZXJhbD4KKyAgICAgICAgYW5kIDxsaXRlcmFsPkZPUjwvbGl0ZXJhbD4gYXMgdGhlIGtleXdv cmRzIGJ1dCBzd2l0Y2hlZCB0byB0aGlzIGluIFNRTDoyMDAzLgogICAgICAgIDwvcGFyYT48L2Vu dHJ5PgogICAgICAgPC9yb3c+CiAKQEAgLTM4MTQsNyArMzgxNCw4IEBAIFNFTEVDVCBOT1QoUk9X KHRhYmxlLiopIElTIE5PVCBOVUxMKSBGUk9NIFRBQkxFOyAtLSBkZXRlY3QgYXQgbGVhc3Qgb25l IG51bGwgaW4KICAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIEV4dHJhY3Rz IHRoZSBmaXJzdCBzdWJzdHJpbmcgbWF0Y2hpbmcgUE9TSVggcmVndWxhciBleHByZXNzaW9uOyBz ZWUKLSAgICAgICAgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXBvc2l4LXJlZ2V4cCIvPi4KKyAg ICAgICAgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXBvc2l4LXJlZ2V4cCIvPi4gIChTYW1lIGFz CisgICAgICAgIDxsaXRlcmFsPnN1YnN0cmluZyhzdHJpbmcgdGV4dCBGUk9NIHBhdHRlcm4gdGV4 dCk8L2xpdGVyYWw+LikKICAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CiAgICAgICAgIDxs aXRlcmFsPnN1YnN0cmluZygnVGhvbWFzJywgJy4uLiQnKTwvbGl0ZXJhbD4KQEAgLTM4MjQsMTIg KzM4MjUsMTMgQEAgU0VMRUNUIE5PVChST1codGFibGUuKikgSVMgTk9UIE5VTEwpIEZST00gVEFC TEU7IC0tIGRldGVjdCBhdCBsZWFzdCBvbmUgbnVsbCBpbgogCiAgICAgICA8cm93PgogICAgICAg IDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVy ZSI+Ci0gICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+ c3RyaW5nPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LCA8cGFyYW1ldGVyPnBhdHRlcm48 L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4sIDxwYXJhbWV0ZXI+ZXNjYXBlX2NoYXJhY3Rl ciA8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4pCisgICAgICAgIDxmdW5jdGlvbj5zdWJz dHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IDx0eXBlPnRl eHQ8L3R5cGU+LCA8cGFyYW1ldGVyPnBhdHRlcm48L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlw ZT4sIDxwYXJhbWV0ZXI+ZXNjYXBlIDwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90eXBlPikKICAg ICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVybnZhbHVlPgogICAgICAgIDwvcGFyYT4KICAg ICAgICA8cGFyYT4KICAgICAgICAgRXh0cmFjdHMgdGhlIGZpcnN0IHN1YnN0cmluZyBtYXRjaGlu ZyA8YWNyb255bT5TUUw8L2Fjcm9ueW0+IHJlZ3VsYXIgZXhwcmVzc2lvbjsKLSAgICAgICAgc2Vl IDx4cmVmIGxpbmtlbmQ9ImZ1bmN0aW9ucy1zaW1pbGFydG8tcmVnZXhwIi8+LgorICAgICAgICBz ZWUgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXNpbWlsYXJ0by1yZWdleHAiLz4uICAoU2FtZSBh cworICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoc3RyaW5nIHRleHQgU0lNSUxBUiBwYXR0ZXJu IHRleHQgRVNDQVBFIGVzY2FwZSB0ZXh0KTwvbGl0ZXJhbD4uKQogICAgICAgIDwvcGFyYT4KICAg ICAgICA8cGFyYT4KICAgICAgICAgPGxpdGVyYWw+c3Vic3RyaW5nKCdUaG9tYXMnLCAnJSMib19h IyJfJywgJyMnKTwvbGl0ZXJhbD4KQEAgLTU1OTMsOCArNTU5NSw4IEBAIGNhc3QoLTQ0IGFzIGJp dCgxMikpICAgICAgICAgICA8bGluZWFubm90YXRpb24+MTExMTExMDEwMTAwPC9saW5lYW5ub3Rh dGlvbj4KICAgIDwvaW5kZXh0ZXJtPgogCiA8c3lub3BzaXM+Ci08cmVwbGFjZWFibGU+c3RyaW5n PC9yZXBsYWNlYWJsZT4gTElLRSA8cmVwbGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFibGU+IDxv cHRpb25hbD5FU0NBUEUgPHJlcGxhY2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3JlcGxhY2VhYmxl Pjwvb3B0aW9uYWw+Ci08cmVwbGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4gTk9UIExJS0Ug PHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiA8b3B0aW9uYWw+RVNDQVBFIDxyZXBs YWNlYWJsZT5lc2NhcGUtY2hhcmFjdGVyPC9yZXBsYWNlYWJsZT48L29wdGlvbmFsPgorPHJlcGxh Y2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IExJS0UgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3Jl cGxhY2VhYmxlPiA8b3B0aW9uYWw+RVNDQVBFIDxyZXBsYWNlYWJsZT5lc2NhcGU8L3JlcGxhY2Vh YmxlPjwvb3B0aW9uYWw+Cis8cmVwbGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4gTk9UIExJ S0UgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiA8b3B0aW9uYWw+RVNDQVBFIDxy ZXBsYWNlYWJsZT5lc2NhcGU8L3JlcGxhY2VhYmxlPjwvb3B0aW9uYWw+CiA8L3N5bm9wc2lzPgog CiAgICAgPHBhcmE+CkBAIC01NzY2LDggKzU3NjgsOCBAQCBjYXN0KC00NCBhcyBiaXQoMTIpKSAg ICAgICAgICAgPGxpbmVhbm5vdGF0aW9uPjExMTExMTAxMDEwMDwvbGluZWFubm90YXRpb24+CiAg ICA8L2luZGV4dGVybT4KIAogPHN5bm9wc2lzPgotPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFj ZWFibGU+IFNJTUlMQVIgVE8gPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiA8b3B0 aW9uYWw+RVNDQVBFIDxyZXBsYWNlYWJsZT5lc2NhcGUtY2hhcmFjdGVyPC9yZXBsYWNlYWJsZT48 L29wdGlvbmFsPgotPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IE5PVCBTSU1JTEFS IFRPIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4gPG9wdGlvbmFsPkVTQ0FQRSA8 cmVwbGFjZWFibGU+ZXNjYXBlLWNoYXJhY3RlcjwvcmVwbGFjZWFibGU+PC9vcHRpb25hbD4KKzxy ZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBTSU1JTEFSIFRPIDxyZXBsYWNlYWJsZT5w YXR0ZXJuPC9yZXBsYWNlYWJsZT4gPG9wdGlvbmFsPkVTQ0FQRSA8cmVwbGFjZWFibGU+ZXNjYXBl PC9yZXBsYWNlYWJsZT48L29wdGlvbmFsPgorPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFi bGU+IE5PVCBTSU1JTEFSIFRPIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4gPG9w dGlvbmFsPkVTQ0FQRSA8cmVwbGFjZWFibGU+ZXNjYXBlPC9yZXBsYWNlYWJsZT48L29wdGlvbmFs PgogPC9zeW5vcHNpcz4KIAogICAgPHBhcmE+CkBAIC01OTAxLDE1ICs1OTAzLDExIEBAIGNhc3Qo LTQ0IGFzIGJpdCgxMikpICAgICAgICAgICA8bGluZWFubm90YXRpb24+MTExMTExMDEwMTAwPC9s aW5lYW5ub3RhdGlvbj4KICAgICByZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybi4gIFRoZSBmdW5j dGlvbiBjYW4gYmUgd3JpdHRlbiBhY2NvcmRpbmcKICAgICB0byBzdGFuZGFyZCBTUUwgc3ludGF4 OgogPHN5bm9wc2lzPgotc3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxl PiBzaW1pbGFyIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4gZXNjYXBlIDxyZXBs YWNlYWJsZT5lc2NhcGUtY2hhcmFjdGVyPC9yZXBsYWNlYWJsZT4pCi08L3N5bm9wc2lzPgotICAg IG9yIHVzaW5nIHRoZSBub3cgb2Jzb2xldGUgU1FMOjE5OTkgc3ludGF4OgotPHN5bm9wc2lzPgot c3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBmcm9tIDxyZXBsYWNl YWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4gZm9yIDxyZXBsYWNlYWJsZT5lc2NhcGUtY2hhcmFj dGVyPC9yZXBsYWNlYWJsZT4pCitzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFj ZWFibGU+IFNJTUlMQVIgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiBFU0NBUEUg PHJlcGxhY2VhYmxlPmVzY2FwZTwvcmVwbGFjZWFibGU+KQogPC9zeW5vcHNpcz4KLSAgICBvciBh cyBhIHBsYWluIHRocmVlLWFyZ3VtZW50IGZ1bmN0aW9uOgorICAgIEl0IGNhbiBhbHNvIHdyaXR0 ZW4gYXMgYSBwbGFpbiB0aHJlZS1hcmd1bWVudCBmdW5jdGlvbjoKIDxzeW5vcHNpcz4KLXN1YnN0 cmluZyg8cmVwbGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5wYXR0 ZXJuPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5lc2NhcGVfY2hhcmFjdGVyPC9yZXBsYWNl YWJsZT4pCitzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+LCA8cmVw bGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFibGU+LCA8cmVwbGFjZWFibGU+ZXNjYXBlPC9yZXBs YWNlYWJsZT4pCiA8L3N5bm9wc2lzPgogICAgIEFzIHdpdGggPGxpdGVyYWw+U0lNSUxBUiBUTzwv bGl0ZXJhbD4sIHRoZQogICAgIHNwZWNpZmllZCBwYXR0ZXJuIG11c3QgbWF0Y2ggdGhlIGVudGly ZSBkYXRhIHN0cmluZywgb3IgZWxzZSB0aGUKQEAgLTYxMTUsOSArNjExMyw5IEBAIHN1YnN0cmlu ZygnZm9vYmFyJyBzaW1pbGFyICcjIm9fYiMiJScgZXNjYXBlICcjJykgICAgPGxpbmVhbm5vdGF0 aW9uPk5VTEw8L2xpbmVhCiAgICAgPHBhcmE+CiAgICAgIFRoZSA8ZnVuY3Rpb24+c3Vic3RyaW5n PC9mdW5jdGlvbj4gZnVuY3Rpb24gd2l0aCB0d28gcGFyYW1ldGVycyBwcm92aWRlcyBleHRyYWN0 aW9uIG9mIGEKICAgICAgc3Vic3RyaW5nIHRoYXQgbWF0Y2hlcyBhIFBPU0lYIHJlZ3VsYXIgZXhw cmVzc2lvbiBwYXR0ZXJuLgotICAgICBJdCBoYXMgc3ludGF4OgorICAgICBUaGUgZnVuY3Rpb24g Y2FuIGJlIHdyaXR0ZW4gYWNjb3JkaW5nIHRvIHN0YW5kYXJkIFNRTCBzeW50YXg6CiA8c3lub3Bz aXM+Ci1zdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IGZyb20gPHJl cGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPikKK3N1YnN0cmluZyg8cmVwbGFjZWFibGU+ c3RyaW5nPC9yZXBsYWNlYWJsZT4gRlJPTSA8cmVwbGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFi bGU+KQogPC9zeW5vcHNpcz4KICAgICAgSXQgY2FuIGFsc28gd3JpdHRlbiBhcyBhIHBsYWluIHR3 by1hcmd1bWVudCBmdW5jdGlvbjoKIDxzeW5vcHNpcz4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5k L2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3Rl bV9mdW5jdGlvbnMuc3FsCmluZGV4IDVlYTlkNzg2YjYuLjU0NGI1NDlhZTcgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwKKysrIGIvc3JjL2JhY2tl bmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbApAQCAtNDIsNyArNDIsNyBAQCBDUkVBVEUg T1IgUkVQTEFDRSBGVU5DVElPTiBycGFkKHRleHQsIGludGVnZXIpCiAgSU1NVVRBQkxFIFBBUkFM TEVMIFNBRkUgU1RSSUNUIENPU1QgMQogUkVUVVJOIHJwYWQoJDEsICQyLCAnICcpOwogCi1DUkVB VEUgT1IgUkVQTEFDRSBGVU5DVElPTiAic3Vic3RyaW5nIihzdHJpbmcgdGV4dCwgcGF0dGVybiB0 ZXh0LCBlc2NhcGVfY2hhcmFjdGVyIHRleHQpCitDUkVBVEUgT1IgUkVQTEFDRSBGVU5DVElPTiAi c3Vic3RyaW5nIihzdHJpbmcgdGV4dCwgcGF0dGVybiB0ZXh0LCBlc2NhcGUgdGV4dCkKICBSRVRV Uk5TIHRleHQKICBMQU5HVUFHRSBzcWwKICBJTU1VVEFCTEUgUEFSQUxMRUwgU0FGRSBTVFJJQ1Qg Q09TVCAxCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAppbmRleCA4N2UzMDA2ZmVmLi44YmIyYjBkZTg5 IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTY0NTEsNiArNjQ1MSw3IEBACiB7IG9pZCA9 PiAnMjA3NCcsIGRlc2NyID0+ICdleHRyYWN0IHRleHQgbWF0Y2hpbmcgU1FMIHJlZ3VsYXIgZXhw cmVzc2lvbicsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmluZycsIHByb2xhbmcgPT4gJ3NxbCcsIHBy b3JldHR5cGUgPT4gJ3RleHQnLAogICBwcm9hcmduYW1lcyA9PiAne3N0cmluZywgcGF0dGVybiwg ZXNjYXBlX2NoYXJhY3Rlcn0nLAorICBwcm9hcmduYW1lcyA9PiAne3N0cmluZywgcGF0dGVybiwg ZXNjYXBlfScsCiAgIHByb2FyZ3R5cGVzID0+ICd0ZXh0IHRleHQgdGV4dCcsIHByb3NyYyA9PiAn c2VlIHN5c3RlbV9mdW5jdGlvbnMuc3FsJyB9LAogCiB7IG9pZCA9PiAnMjA3NScsIGRlc2NyID0+ ICdjb252ZXJ0IGludDggdG8gYml0c3RyaW5nJywKLS0gCjIuMzQuMQoK --0000000000008e61e90631b069cd--