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 1v8JSa-00G8lX-A4 for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Oct 2025 14:23:36 +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 1v8JSW-0066pN-TY for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Oct 2025 14:23:33 +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 1v8JSW-0066pF-BU for pgsql-hackers@lists.postgresql.org; Mon, 13 Oct 2025 14:23:33 +0000 Received: from mail-vk1-xa2f.google.com ([2607:f8b0:4864:20::a2f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1v8JSU-001XeL-2Z for pgsql-hackers@postgresql.org; Mon, 13 Oct 2025 14:23:32 +0000 Received: by mail-vk1-xa2f.google.com with SMTP id 71dfb90a1353d-54a98bcdedeso1152107e0c.0 for ; Mon, 13 Oct 2025 07:23:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760365410; x=1760970210; 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=3poyC4JyTV0SkxfgV6kGEG+ctZWktC18ssYjW+NcTFw=; b=dBAxl7CSUymY0LcDAKGPSl1WH4oP+Pr4/zm8rddNPGwNb5NHR69Y92jtErl+g2jNSv IlHw1FBwtyV4P3nCprfgTQ1nwblJaq6tzJ1HIRPhcbuwfWlfR7E/h13u4D1uyek7TdCr ZO4SodwJwnbhaFSybUFZ5my2sb8Inql3YCQwuwbc0cjG6oho/fsCqh/RKI2YtPJvet3b f+zFaCyzLkqLKNqBWIEal4aWXKsQ9T05ybHsQhAKLOudVEU8JmAc/aGNNnnU1ruYg5DV P2h7KeBSNP+UGfuysG4KQ6Uc1tdXKKj/daaXZC+j+C393uaM6HJTVtx8W9nQNRiOKPlT OLfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760365410; x=1760970210; 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=3poyC4JyTV0SkxfgV6kGEG+ctZWktC18ssYjW+NcTFw=; b=vgNEgBJX1nJ01mnx7vgEqM3CChJ/OOiBGWXC3OwKPuLsBAMjN56wC27LTHQi/wIuGH AHsrdzp+JeQvT8LzqFG5BlrRxFMLqxYZNCRzR5hVBo6YP6L4HJmQ9cUdLPHJqCekXFq3 K4+xXwo34QE8YOFx/yuLuWKFXNH9IEeoFA30y2ut7A2zuu3jgtjFH/SDI7hfypju8PVc sBT/u5lJfu+/ZU0jpetGGPrEmmZbOKHPMfa7zzWZb/x3oxI1/+gWSLb6d0w24nDr9Yld pRkRBcXu6M6edT8Zhkt1h69h7Y4gQ2QJe4tA75EpAjGSmjR73XE2nuNcKJCZNFCIfT9Z jcvg== X-Forwarded-Encrypted: i=1; AJvYcCW7HnQKwxvs8iVbHx2TNaGC0MAvZv85UNBAwWsGn6AKspRlpb4zNWpCXQbTNr94Jb7KFXr3ZkOiR3O5OFVG@postgresql.org X-Gm-Message-State: AOJu0YxNSCNlC8OZ7QKVR4CQiPPwoWju25SI8hxPFCnoUobKaMEbaeyX F6b7CrkAqv49rDqJj+srsK/WUWR7Jf1VwlU6ktja3sB8Kfnxes0jjXvWHWBqap+stOlsVVgZt/6 GiXUDgtThUZEuU75yA4hbYnqmc6U0deA= X-Gm-Gg: ASbGncu9Amz/u5pi8oGv3wg0XYlUUo62+0KAFzvWrwFC4zuy3qfTFnvddWNho0F9xj9 ApsBjOeQIx6Zw8LrUL89O6kV35FTTaMZeZdY2tbcyKAnVnvwp17Z6iKPuStsKS/9+K9AlHLB3RM xOrdYHBSw8FIMgIQvGtcQvvYIspJ+PZUA4yYu0Ha54YOhcrzDpjhuBTLluRB0oyVw1qDe2Khbaq uTV58SWacuGAnZyYMXYvPa9Yj5phG5pnZ4JyIw9/ofO/8Ns6gGWX4TTi2k0+MSeIAzO/zE37ryo B0AOXmmh/2+YQOM3mMbjTANOfWv03i6zIwrKEJKcfxD+66zqiKOUd4bhugJ9u4KwQNBwUw3X9Xn DnJaRsX/yH2MJ9RCeo+QCkHgKTcqroQ6sipphAMyzE3k= X-Google-Smtp-Source: AGHT+IHAw54VbShOvmkwvjlaeufwKTlnCvnC2JPi3V8X/V9Af0FY2i1frhVsIh/SO5W5XM8/j7beUbIUVVopCLPDCkQ= X-Received: by 2002:a05:6122:328b:b0:549:f04a:6ea8 with SMTP id 71dfb90a1353d-554b8cb3837mr7255996e0c.9.1760365409926; Mon, 13 Oct 2025 07:23:29 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: jian he Date: Mon, 13 Oct 2025 22:22:24 +0800 X-Gm-Features: AS18NWCXjZx2teHq1N9UCRTncRo9oUAiwllzvlX20uKynns09KVX69euTgeV_8w Message-ID: Subject: Re: add function argument name to substring and substr To: "David G. Johnston" Cc: Marcos Pegoraro , PostgreSQL-development Content-Type: multipart/mixed; boundary="000000000000ef249206410b02e2" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000ef249206410b02e2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jul 21, 2025 at 2:31=E2=80=AFPM jian he wrote: > > actually, > section (9.7.3.) > https://www.postgresql.org/docs/current/functions-matching.html#FUNCTIONS= -POSIX-REGEXP > already have example, like: > substring('foobar' from 'o(.)b') > > new patch attached, split substr, substring to make review more easier. > v6-0001: add function argument name to function substr > v6-0002: add function argument name to function substring > > v6-0002 incorporated some of the changes in v5-0002-v3-delta.patch. > some of the changes in v5-0002-v3-delta.patch are not related to this thr= ead, > so I didn't incorporate them, right now. hi. rebased. --000000000000ef249206410b02e2 Content-Type: text/x-patch; charset="US-ASCII"; name="v7-0002-add-function-argument-name-to-function-substring.patch" Content-Disposition: attachment; filename="v7-0002-add-function-argument-name-to-function-substring.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mgp823fv0 RnJvbSA1YWZjNmYzY2UxYWIxNTQ1NzYwMDJjMWRmZTgyYTJkZDIyZDgwOTY0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMTMgT2N0IDIwMjUgMjE6MDQ6NDAgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3 IDIvMl0gYWRkIGZ1bmN0aW9uIGFyZ3VtZW50IG5hbWUgdG8gZnVuY3Rpb24gc3Vic3RyaW5nCgpI RUFEClxkZiBzdWJzdHIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZ1bmN0 aW9ucwogICBTY2hlbWEgICB8ICAgTmFtZSAgICB8IFJlc3VsdCBkYXRhIHR5cGUgfCAgIEFyZ3Vt ZW50IGRhdGEgdHlwZXMgICB8IFR5cGUKLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQogcGdfY2F0YWxvZyB8 IHN1YnN0cmluZyB8IGJpdCAgICAgICAgICAgICAgfCBiaXQsIGludGVnZXIgICAgICAgICAgICB8 IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJzdHJpbmcgfCBiaXQgICAgICAgICAgICAgIHwgYml0LCBp bnRlZ2VyLCBpbnRlZ2VyICAgfCBmdW5jCiBwZ19jYXRhbG9nIHwgc3Vic3RyaW5nIHwgYnl0ZWEg ICAgICAgICAgICB8IGJ5dGVhLCBpbnRlZ2VyICAgICAgICAgIHwgZnVuYwogcGdfY2F0YWxvZyB8 IHN1YnN0cmluZyB8IGJ5dGVhICAgICAgICAgICAgfCBieXRlYSwgaW50ZWdlciwgaW50ZWdlciB8 IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJzdHJpbmcgfCB0ZXh0ICAgICAgICAgICAgIHwgdGV4dCwg aW50ZWdlciAgICAgICAgICAgfCBmdW5jCiBwZ19jYXRhbG9nIHwgc3Vic3RyaW5nIHwgdGV4dCAg ICAgICAgICAgICB8IHRleHQsIGludGVnZXIsIGludGVnZXIgIHwgZnVuYwogcGdfY2F0YWxvZyB8 IHN1YnN0cmluZyB8IHRleHQgICAgICAgICAgICAgfCB0ZXh0LCB0ZXh0ICAgICAgICAgICAgICB8 IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJzdHJpbmcgfCB0ZXh0ICAgICAgICAgICAgIHwgdGV4dCwg dGV4dCwgdGV4dCAgICAgICAgfCBmdW5jCgp3aXRoIHBhdGNoIGFwcGxpZWQKClxkZiBzdWJzdHJp bmcKICBTY2hlbWEgICB8ICAgTmFtZSAgICB8IFJlc3VsdCBkYXRhIHR5cGUgfCAgICAgICAgICAg ICAgIEFyZ3VtZW50IGRhdGEgdHlwZXMgICAgICAgICAgICAgICAgfCBUeXBlCi0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tCiBwZ19jYXRhbG9nIHwgc3Vic3RyaW5n IHwgYml0ICAgICAgICAgICAgICB8IGJpdHMgYml0LCBzdGFydCBpbnRlZ2VyLCBjb3VudCBpbnRl Z2VyICAgICAgICAgICB8IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJzdHJpbmcgfCBieXRlYSAgICAg ICAgICAgIHwgYnl0ZXMgYnl0ZWEsIHN0YXJ0IGludGVnZXIgICAgICAgICAgICAgICAgICAgICAg IHwgZnVuYwogcGdfY2F0YWxvZyB8IHN1YnN0cmluZyB8IGJ5dGVhICAgICAgICAgICAgfCBieXRl cyBieXRlYSwgc3RhcnQgaW50ZWdlciwgY291bnQgaW50ZWdlciAgICAgICAgfCBmdW5jCiBwZ19j YXRhbG9nIHwgc3Vic3RyaW5nIHwgYml0ICAgICAgICAgICAgICB8IHN0cmluZyBiaXQsIHN0YXJ0 IGludGVnZXIgICAgICAgICAgICAgICAgICAgICAgICB8IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJz dHJpbmcgfCB0ZXh0ICAgICAgICAgICAgIHwgc3RyaW5nIHRleHQsIHBhdHRlcm4gdGV4dCAgICAg ICAgICAgICAgICAgICAgICAgIHwgZnVuYwogcGdfY2F0YWxvZyB8IHN1YnN0cmluZyB8IHRleHQg ICAgICAgICAgICAgfCBzdHJpbmcgdGV4dCwgcGF0dGVybiB0ZXh0LCBlc2NhcGVfY2hhcmFjdGVy IHRleHQgfCBmdW5jCiBwZ19jYXRhbG9nIHwgc3Vic3RyaW5nIHwgdGV4dCAgICAgICAgICAgICB8 IHN0cmluZyB0ZXh0LCBzdGFydCBpbnRlZ2VyICAgICAgICAgICAgICAgICAgICAgICB8IGZ1bmMK IHBnX2NhdGFsb2cgfCBzdWJzdHJpbmcgfCB0ZXh0ICAgICAgICAgICAgIHwgc3RyaW5nIHRleHQs IHN0YXJ0IGludGVnZXIsIGNvdW50IGludGVnZXIgICAgICAgIHwgZnVuYwooOCByb3dzKQoKZGlz Y3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQUNKdWZ4SFRCa3ltaDA2RDRtR0tOZTFZZlJO Rk4rZ0ZCeWJteWdXaz1QdE1xdTAwTFFAbWFpbC5nbWFpbC5jb20KLS0tCiBkb2Mvc3JjL3NnbWwv ZnVuYy9mdW5jLWJpbmFyeXN0cmluZy5zZ21sIHwgMjAgKysrKysrKysrKwogZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1iaXRzdHJpbmcuc2dtbCAgICB8IDIwICsrKysrKysrKysKIGRvYy9zcmMvc2dt bC9mdW5jL2Z1bmMtbWF0Y2hpbmcuc2dtbCAgICAgfCAxOCArKysrKystLS0KIGRvYy9zcmMvc2dt bC9mdW5jL2Z1bmMtc3RyaW5nLnNnbWwgICAgICAgfCA1MSArKysrKysrKysrKysrKysrKysrKysr KysKIHNyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwgfCAgMiArLQogc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCAgICAgICAgICB8ICA4ICsrKysKIDYgZmlsZXMg Y2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1iaW5hcnlzdHJpbmcuc2dtbCBiL2RvYy9zcmMvc2dtbC9m dW5jL2Z1bmMtYmluYXJ5c3RyaW5nLnNnbWwKaW5kZXggZGQ3MDM3ODExYWYuLjQ3ODZhMDk2ZGQ1 IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLWJpbmFyeXN0cmluZy5zZ21sCisr KyBiL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtYmluYXJ5c3RyaW5nLnNnbWwKQEAgLTIxNiw2ICsy MTYsMjYgQEAKICAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgIDwvcm93PgogCisgICAgICA8 cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJm dW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxpbmRleHRlcm0+CisgICAgICAgICA8cHJpbWFyeT5z dWJzdHJpbmc8L3ByaW1hcnk+CisgICAgICAgIDwvaW5kZXh0ZXJtPgorICAgICAgICA8ZnVuY3Rp b24+c3Vic3RyaW5nPC9mdW5jdGlvbj4gKCA8cGFyYW1ldGVyPmJ5dGVzPC9wYXJhbWV0ZXI+IDx0 eXBlPmJ5dGVhPC90eXBlPiwgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRl Z2VyPC90eXBlPiA8b3B0aW9uYWw+LCA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IDx0eXBl PmludGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+ICkKKyAgICAgICAgPHJldHVybnZhbHVlPmJ5dGVh PC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIEV4 dHJhY3RzIHRoZSBzdWJzdHJpbmcgb2YgPHBhcmFtZXRlcj5ieXRlczwvcGFyYW1ldGVyPiBzdGFy dGluZyBhdAorICAgICAgICB0aGUgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPid0aCBieXRl LAorICAgICAgICBhbmQgc3RvcHBpbmcgYWZ0ZXIgPHBhcmFtZXRlcj5jb3VudDwvcGFyYW1ldGVy PiBieXRlcyBpZiB0aGF0IGlzCisgICAgICAgIHNwZWNpZmllZC4KKyAgICAgICA8L3BhcmE+Cisg ICAgICAgPHBhcmE+CisgICAgICAgIDxsaXRlcmFsPnN1YnN0cmluZygnXHgxMjM0NTY3ODkwJzo6 Ynl0ZWEsIDMsIDIpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+XHg1Njc4PC9yZXR1 cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCiAgICAgICA8 cm93PgogICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJm dW5jX3NpZ25hdHVyZSI+CiAgICAgICAgIDxpbmRleHRlcm0+CmRpZmYgLS1naXQgYS9kb2Mvc3Jj L3NnbWwvZnVuYy9mdW5jLWJpdHN0cmluZy5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1i aXRzdHJpbmcuc2dtbAppbmRleCBmMDNkZDYzYWZjYy4uYzFkZTA5NjNlYzAgMTAwNjQ0Ci0tLSBh L2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtYml0c3RyaW5nLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1iaXRzdHJpbmcuc2dtbApAQCAtMjc0LDYgKzI3NCwyNiBAQAogICAgICAgIDwv cGFyYT48L2VudHJ5PgogICAgICAgPC9yb3c+CiAKKyAgICAgIDxyb3c+CisgICAgICAgPGVudHJ5 IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KKyAg ICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgIDxwcmltYXJ5PnN1YnN0cmluZzwvcHJpbWFyeT4K KyAgICAgICAgPC9pbmRleHRlcm0+CisgICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0 aW9uPiAoIDxwYXJhbWV0ZXI+Yml0czwvcGFyYW1ldGVyPiA8dHlwZT5iaXQ8L3R5cGU+LCA8cGFy YW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDxvcHRpb25hbD4s IDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRp b25hbD4gKQorICAgICAgICA8cmV0dXJudmFsdWU+Yml0PC9yZXR1cm52YWx1ZT4KKyAgICAgICA8 L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIEV4dHJhY3RzIHRoZSBzdWJzdHJpbmcgb2Yg PHBhcmFtZXRlcj5iaXRzPC9wYXJhbWV0ZXI+IHN0YXJ0aW5nIGF0CisgICAgICAgIHRoZSA8cGFy YW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+J3RoIGJpdCwKKyAgICAgICAgYW5kIHN0b3BwaW5nIGFm dGVyIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gYml0cyBpZiB0aGF0IGlzCisgICAgICAg IHNwZWNpZmllZC4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIDxsaXRl cmFsPnN1YnN0cmluZyhCJzExMDAxMDExMTExMScsIDMsIDIpPC9saXRlcmFsPgorICAgICAgICA8 cmV0dXJudmFsdWU+MDA8L3JldHVybnZhbHVlPgorICAgICAgIDwvcGFyYT48L2VudHJ5PgorICAg ICAgPC9yb3c+CisKICAgICAgIDxyb3c+CiAgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVf ZW50cnkiPjxwYXJhIHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KICAgICAgICAgPGluZGV4dGVybT4K ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtbWF0Y2hpbmcuc2dtbCBiL2RvYy9z cmMvc2dtbC9mdW5jL2Z1bmMtbWF0Y2hpbmcuc2dtbAppbmRleCBlYmUwYjIyYzhmNi4uMTQ1NGRi MDM3OGQgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtbWF0Y2hpbmcuc2dtbAor KysgYi9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLW1hdGNoaW5nLnNnbWwKQEAgLTM3Nyw3ICszNzcs NyBAQCBzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IGZyb20gPHJl cGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYgogPC9zeW5vcHNpcz4KICAgICBvciBhcyBhIHBs YWluIHRocmVlLWFyZ3VtZW50IGZ1bmN0aW9uOgogPHN5bm9wc2lzPgotc3Vic3RyaW5nKDxyZXBs YWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxh Y2VhYmxlPiwgPHJlcGxhY2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3JlcGxhY2VhYmxlPikKK3N1 YnN0cmluZyg8cmVwbGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5w YXR0ZXJuPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5lc2NhcGU8L3JlcGxhY2VhYmxlPikK IDwvc3lub3BzaXM+CiAgICAgQXMgd2l0aCA8bGl0ZXJhbD5TSU1JTEFSIFRPPC9saXRlcmFsPiwg dGhlCiAgICAgc3BlY2lmaWVkIHBhdHRlcm4gbXVzdCBtYXRjaCB0aGUgZW50aXJlIGRhdGEgc3Ry aW5nLCBvciBlbHNlIHRoZQpAQCAtNTgxLDExICs1ODEsMTcgQEAgc3Vic3RyaW5nKCdmb29iYXIn IHNpbWlsYXIgJyMib19iIyIlJyBlc2NhcGUgJyMnKSAgICA8bGluZWFubm90YXRpb24+TlVMTDwv bGluZWEKICAgICA8L3BhcmE+CiAKICAgICA8cGFyYT4KLSAgICAgVGhlIDxmdW5jdGlvbj5zdWJz dHJpbmc8L2Z1bmN0aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBwYXJhbWV0ZXJzLAotICAgICA8ZnVu Y3Rpb24+c3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBmcm9tCi0g ICAgIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4pPC9mdW5jdGlvbj4sIHByb3Zp ZGVzIGV4dHJhY3Rpb24gb2YgYQotICAgICBzdWJzdHJpbmcKLSAgICAgdGhhdCBtYXRjaGVzIGEg UE9TSVggcmVndWxhciBleHByZXNzaW9uIHBhdHRlcm4uICBJdCByZXR1cm5zIG51bGwgaWYKKyAg ICAgVGhlIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBw YXJhbWV0ZXJzIHByb3ZpZGVzIGV4dHJhY3Rpb24gb2YgYQorICAgICBzdWJzdHJpbmcgdGhhdCBt YXRjaGVzIGEgPGFjcm9ueW0+UE9TSVg8L2Fjcm9ueW0+IHJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0 ZXJuLgorICAgICBUaGUgZnVuY3Rpb24gY2FuIGJlIHdyaXR0ZW4gYWNjb3JkaW5nIHRvIHN0YW5k YXJkIDxhY3JvbnltPlNRTDwvYWNyb255bT4gc3ludGF4OgorPHN5bm9wc2lzPgorc3Vic3RyaW5n KDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBGUk9NIDxyZXBsYWNlYWJsZT5wYXR0 ZXJuPC9yZXBsYWNlYWJsZT4pCis8L3N5bm9wc2lzPgorICAgICBJdCBjYW4gYWxzbyB3cml0dGVu IGFzIGEgcGxhaW4gdHdvLWFyZ3VtZW50IGZ1bmN0aW9uOgorPHN5bm9wc2lzPgorc3Vic3RyaW5n KDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlPnBhdHRlcm48 L3JlcGxhY2VhYmxlPikKKzwvc3lub3BzaXM+CisgICAgIEl0IHJldHVybnMgbnVsbCBpZgogICAg ICB0aGVyZSBpcyBubyBtYXRjaCwgb3RoZXJ3aXNlIHRoZSBmaXJzdCBwb3J0aW9uIG9mIHRoZSB0 ZXh0IHRoYXQgbWF0Y2hlZCB0aGUKICAgICAgcGF0dGVybi4gIEJ1dCBpZiB0aGUgcGF0dGVybiBj b250YWlucyBhbnkgcGFyZW50aGVzZXMsIHRoZSBwb3J0aW9uCiAgICAgIG9mIHRoZSB0ZXh0IHRo YXQgbWF0Y2hlZCB0aGUgZmlyc3QgcGFyZW50aGVzaXplZCBzdWJleHByZXNzaW9uICh0aGUKZGlm ZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtc3RyaW5nLnNnbWwgYi9kb2Mvc3JjL3Nn bWwvZnVuYy9mdW5jLXN0cmluZy5zZ21sCmluZGV4IDAxY2M5NGMyMzRlLi4zNWQ2NTdlYjQxOCAx MDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1zdHJpbmcuc2dtbAorKysgYi9kb2Mv c3JjL3NnbWwvZnVuYy9mdW5jLXN0cmluZy5zZ21sCkBAIC0xNDEyLDYgKzE0MTIsNTcgQEAKICAg ICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgIDwvcm93PgogCisgICAgICA8cm93PgorICAgICAg IDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVy ZSI+CisgICAgICAgIDxpbmRleHRlcm0+CisgICAgICAgICA8cHJpbWFyeT5zdWJzdHJpbmc8L3By aW1hcnk+CisgICAgICAgIDwvaW5kZXh0ZXJtPgorICAgICAgICA8ZnVuY3Rpb24+c3Vic3RyaW5n PC9mdW5jdGlvbj4gKCA8cGFyYW1ldGVyPnN0cmluZzwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90 eXBlPiwgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8 b3B0aW9uYWw+LCA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5 cGU+IDwvb3B0aW9uYWw+ICkKKyAgICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVybnZhbHVl PgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXh0cmFjdHMgdGhlIHN1 YnN0cmluZyBvZiA8cGFyYW1ldGVyPnN0cmluZzwvcGFyYW1ldGVyPiBzdGFydGluZyBhdAorICAg ICAgICB0aGUgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPid0aCBjaGFyYWN0ZXIsCisgICAg ICAgIGFuZCBzdG9wcGluZyBhZnRlciA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IGNoYXJh Y3RlcnMgaWYgdGhhdCBpcworICAgICAgICBzcGVjaWZpZWQuCisgICAgICAgPC9wYXJhPgorICAg ICAgIDxwYXJhPgorICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoJ1Rob21hcycsIDIsIDMpPC9s aXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+aG9tPC9yZXR1cm52YWx1ZT4KKyAgICAgICA8 L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCisgICAgICA8cm93PgorICAgICAgIDxlbnRy eSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+Cisg ICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5n PC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LCA8cGFyYW1ldGVyPnBhdHRlcm48L3BhcmFt ZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4sIDxwYXJhbWV0ZXI+ZXNjYXBlPC9wYXJhbWV0ZXI+IDx0 eXBlPnRleHQ8L3R5cGU+KQorICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+ CisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFeHRyYWN0cyB0aGUgZmly c3Qgc3Vic3RyaW5nIG1hdGNoaW5nIDxhY3JvbnltPlNRTDwvYWNyb255bT4gcmVndWxhciBleHBy ZXNzaW9uOworICAgICAgICBzZWUgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXNpbWlsYXJ0by1y ZWdleHAiLz4uCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICA8bGl0ZXJh bD5zdWJzdHJpbmcoJ1Rob21hcycsICclIyJvX2EjIl8nLCAnIycpPC9saXRlcmFsPgorICAgICAg ICA8cmV0dXJudmFsdWU+b21hPC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4K KyAgICAgIDwvcm93PgorCisgICAgICA8cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3Rh YmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxmdW5jdGlv bj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IDx0 eXBlPnRleHQ8L3R5cGU+LCA8cGFyYW1ldGVyPnBhdHRlcm48L3BhcmFtZXRlcj4gPHR5cGU+dGV4 dDwvdHlwZT4gKQorICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+CisgICAg ICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFeHRyYWN0cyB0aGUgZmlyc3Qgc3Vi c3RyaW5nIG1hdGNoaW5nIDxhY3JvbnltPlBPU0lYPC9hY3JvbnltPiByZWd1bGFyIGV4cHJlc3Np b247IHNlZQorICAgICAgICA8eHJlZiBsaW5rZW5kPSJmdW5jdGlvbnMtcG9zaXgtcmVnZXhwIi8+ LgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgPGxpdGVyYWw+c3Vic3Ry aW5nKCdUaG9tYXMnLCAnLi4uJCcpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+bWFz PC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCisK ICAgICAgIDxyb3c+CiAgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJh IHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KICAgICAgICAgPGluZGV4dGVybT4KZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwgYi9zcmMvYmFja2VuZC9j YXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsCmluZGV4IDJkOTQ2ZDZkOWU5Li5kNWY4YmJkOTUz ZiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbAor KysgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsCkBAIC00Miw3ICs0 Miw3IEBAIENSRUFURSBPUiBSRVBMQUNFIEZVTkNUSU9OIHJwYWQodGV4dCwgaW50ZWdlcikKICBJ TU1VVEFCTEUgUEFSQUxMRUwgU0FGRSBTVFJJQ1QgQ09TVCAxCiBSRVRVUk4gcnBhZCgkMSwgJDIs ICcgJyk7CiAKLUNSRUFURSBPUiBSRVBMQUNFIEZVTkNUSU9OICJzdWJzdHJpbmciKHRleHQsIHRl eHQsIHRleHQpCitDUkVBVEUgT1IgUkVQTEFDRSBGVU5DVElPTiAic3Vic3RyaW5nIihzdHJpbmcg dGV4dCwgcGF0dGVybiB0ZXh0LCBlc2NhcGUgdGV4dCkKICBSRVRVUk5TIHRleHQKICBMQU5HVUFH RSBzcWwKICBJTU1VVEFCTEUgUEFSQUxMRUwgU0FGRSBTVFJJQ1QgQ09TVCAxCmRpZmYgLS1naXQg YS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdAppbmRleCBiNmQyMzMxNWU0Ni4uNDMyYTc1YjQxYjQgMTAwNjQ0Ci0tLSBhL3Ny Yy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdApAQCAtMzc0OCw5ICszNzQ4LDExIEBACiAKIHsgb2lkID0+ICc5MzYnLCBkZXNj ciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmlu ZycsIHByb3JldHR5cGUgPT4gJ3RleHQnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBpbnQ0IGludDQn LAorICBwcm9hcmduYW1lcyA9PiAne3N0cmluZywgc3RhcnQsIGNvdW50fScsCiAgIHByb3NyYyA9 PiAndGV4dF9zdWJzdHInIH0sCiB7IG9pZCA9PiAnOTM3JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9y dGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9yZXR0eXBlID0+ ICd0ZXh0JywgcHJvYXJndHlwZXMgPT4gJ3RleHQgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7 c3RyaW5nLCBzdGFydH0nLAogICBwcm9zcmMgPT4gJ3RleHRfc3Vic3RyX25vX2xlbicgfSwKIHsg b2lkID0+ICcyMDg3JywKICAgZGVzY3IgPT4gJ3JlcGxhY2UgYWxsIG9jY3VycmVuY2VzIGluIHN0 cmluZyBvZiBvbGRfc3Vic3RyIHdpdGggbmV3X3N1YnN0cicsCkBAIC00MTY4LDYgKzQxNzAsNyBA QAogICBwcm9zcmMgPT4gJ2JpdGNhdCcgfSwKIHsgb2lkID0+ICcxNjgwJywgZGVzY3IgPT4gJ2V4 dHJhY3QgcG9ydGlvbiBvZiBiaXRzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBw cm9yZXR0eXBlID0+ICdiaXQnLCBwcm9hcmd0eXBlcyA9PiAnYml0IGludDQgaW50NCcsCisgIHBy b2FyZ25hbWVzID0+ICd7Yml0cywgc3RhcnQsIGNvdW50fScsCiAgIHByb3NyYyA9PiAnYml0c3Vi c3RyJyB9LAogeyBvaWQgPT4gJzE2ODEnLCBkZXNjciA9PiAnYml0c3RyaW5nIGxlbmd0aCcsCiAg IHByb25hbWUgPT4gJ2xlbmd0aCcsIHByb3JldHR5cGUgPT4gJ2ludDQnLCBwcm9hcmd0eXBlcyA9 PiAnYml0JywKQEAgLTQxOTcsNiArNDIwMCw3IEBACiAgIHByb3NyYyA9PiAnYml0cG9zaXRpb24n IH0sCiB7IG9pZCA9PiAnMTY5OScsIGRlc2NyID0+ICdleHRyYWN0IHBvcnRpb24gb2YgYml0c3Ry aW5nJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyaW5nJywgcHJvcmV0dHlwZSA9PiAnYml0JywgcHJv YXJndHlwZXMgPT4gJ2JpdCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzdHJpbmcsIHN0YXJ0 fScsCiAgIHByb3NyYyA9PiAnYml0c3Vic3RyX25vX2xlbicgfSwKIAogeyBvaWQgPT4gJzMwMzAn LCBkZXNjciA9PiAnc3Vic3RpdHV0ZSBwb3J0aW9uIG9mIGJpdHN0cmluZycsCkBAIC02MzAyLDkg KzYzMDYsMTEgQEAKICAgcHJvc3JjID0+ICdieXRlYWNhdCcgfSwKIHsgb2lkID0+ICcyMDEyJywg ZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJz dHJpbmcnLCBwcm9yZXR0eXBlID0+ICdieXRlYScsCisgIHByb2FyZ25hbWVzID0+ICd7Ynl0ZXMs IHN0YXJ0LCBjb3VudH0nLAogICBwcm9hcmd0eXBlcyA9PiAnYnl0ZWEgaW50NCBpbnQ0JywgcHJv c3JjID0+ICdieXRlYV9zdWJzdHInIH0sCiB7IG9pZCA9PiAnMjAxMycsIGRlc2NyID0+ICdleHRy YWN0IHBvcnRpb24gb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyaW5nJywgcHJvcmV0 dHlwZSA9PiAnYnl0ZWEnLCBwcm9hcmd0eXBlcyA9PiAnYnl0ZWEgaW50NCcsCisgIHByb2FyZ25h bWVzID0+ICd7Ynl0ZXMsIHN0YXJ0fScsCiAgIHByb3NyYyA9PiAnYnl0ZWFfc3Vic3RyX25vX2xl bicgfSwKIHsgb2lkID0+ICcyMDg1JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJp bmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICdieXRlYScsIHByb2Fy Z3R5cGVzID0+ICdieXRlYSBpbnQ0IGludDQnLApAQCAtNjUwNCw5ICs2NTEwLDExIEBACiAKIHsg b2lkID0+ICcyMDczJywgZGVzY3IgPT4gJ2V4dHJhY3QgdGV4dCBtYXRjaGluZyByZWd1bGFyIGV4 cHJlc3Npb24nLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9yZXR0eXBlID0+ICd0ZXh0 JywgcHJvYXJndHlwZXMgPT4gJ3RleHQgdGV4dCcsCisgIHByb2FyZ25hbWVzID0+ICd7c3RyaW5n LCBwYXR0ZXJufScsCiAgIHByb3NyYyA9PiAndGV4dHJlZ2V4c3Vic3RyJyB9LAogeyBvaWQgPT4g JzIwNzQnLCBkZXNjciA9PiAnZXh0cmFjdCB0ZXh0IG1hdGNoaW5nIFNRTCByZWd1bGFyIGV4cHJl c3Npb24nLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9sYW5nID0+ICdzcWwnLCBwcm9y ZXR0eXBlID0+ICd0ZXh0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzdHJpbmcsIHBhdHRlcm4sIGVz Y2FwZX0nLAogICBwcm9hcmd0eXBlcyA9PiAndGV4dCB0ZXh0IHRleHQnLCBwcm9zcmMgPT4gJ3Nl ZSBzeXN0ZW1fZnVuY3Rpb25zLnNxbCcgfSwKIAogeyBvaWQgPT4gJzIwNzUnLCBkZXNjciA9PiAn Y29udmVydCBpbnQ4IHRvIGJpdHN0cmluZycsCi0tIAoyLjM0LjEKCg== --000000000000ef249206410b02e2 Content-Type: text/x-patch; charset="US-ASCII"; name="v7-0001-add-function-argument-name-to-substr.patch" Content-Disposition: attachment; filename="v7-0001-add-function-argument-name-to-substr.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mgp823g21 RnJvbSBlMThiYzkxMjNhNjViZDljMzBmYjg1NDFjYTQ2NGE0MDczNTFmY2NlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMjEgSnVsIDIwMjUgMTE6NTg6MzcgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3 IDEvMl0gYWRkIGZ1bmN0aW9uIGFyZ3VtZW50IG5hbWUgdG8gc3Vic3RyLgoKSEVBRApcZGYgc3Vi c3RyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIGZ1bmN0aW9ucwogICBTY2hl bWEgICB8ICBOYW1lICB8IFJlc3VsdCBkYXRhIHR5cGUgfCAgIEFyZ3VtZW50IGRhdGEgdHlwZXMg ICB8IFR5cGUKLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQogcGdfY2F0YWxvZyB8IHN1YnN0ciB8IGJ5dGVhICAg ICAgICAgICAgfCBieXRlYSwgaW50ZWdlciAgICAgICAgICB8IGZ1bmMKIHBnX2NhdGFsb2cgfCBz dWJzdHIgfCBieXRlYSAgICAgICAgICAgIHwgYnl0ZWEsIGludGVnZXIsIGludGVnZXIgfCBmdW5j CiBwZ19jYXRhbG9nIHwgc3Vic3RyIHwgdGV4dCAgICAgICAgICAgICB8IHRleHQsIGludGVnZXIg ICAgICAgICAgIHwgZnVuYwogcGdfY2F0YWxvZyB8IHN1YnN0ciB8IHRleHQgICAgICAgICAgICAg fCB0ZXh0LCBpbnRlZ2VyLCBpbnRlZ2VyICB8IGZ1bmMKCndpdGggcGF0Y2gKIFxkZiBzdWJzdHIK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgZnVuY3Rpb25zCiAg IFNjaGVtYSAgIHwgIE5hbWUgIHwgUmVzdWx0IGRhdGEgdHlwZSB8ICAgICAgICAgICAgQXJndW1l bnQgZGF0YSB0eXBlcyAgICAgICAgICAgIHwgVHlwZQotLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tCiBwZ19jYXRhbG9nIHwgc3Vic3RyIHwgYnl0ZWEgICAgICAgICAgICB8IGJ5dGVz IGJ5dGVhLCBzdGFydCBpbnRlZ2VyICAgICAgICAgICAgICAgIHwgZnVuYwogcGdfY2F0YWxvZyB8 IHN1YnN0ciB8IGJ5dGVhICAgICAgICAgICAgfCBieXRlcyBieXRlYSwgc3RhcnQgaW50ZWdlciwg Y291bnQgaW50ZWdlciB8IGZ1bmMKIHBnX2NhdGFsb2cgfCBzdWJzdHIgfCB0ZXh0ICAgICAgICAg ICAgIHwgc3RyaW5nIHRleHQsIHN0YXJ0IGludGVnZXIgICAgICAgICAgICAgICAgfCBmdW5jCiBw Z19jYXRhbG9nIHwgc3Vic3RyIHwgdGV4dCAgICAgICAgICAgICB8IHN0cmluZyB0ZXh0LCBzdGFy dCBpbnRlZ2VyLCBjb3VudCBpbnRlZ2VyIHwgZnVuYwoKZGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0 Z3IuZXMvbS9DQUNKdWZ4SFRCa3ltaDA2RDRtR0tOZTFZZlJORk4rZ0ZCeWJteWdXaz1QdE1xdTAw TFFAbWFpbC5nbWFpbC5jb20KLS0tCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IHwg NCArKysrCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJv Yy5kYXQKaW5kZXggYjUxZDJiMTczNzkuLmI2ZDIzMzE1ZTQ2IDEwMDY0NAotLS0gYS9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJv Yy5kYXQKQEAgLTM3MTgsNiArMzcxOCw3IEBACiAgIHByb3NyYyA9PiAncnRyaW0nIH0sCiB7IG9p ZCA9PiAnODc3JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBwcm9u YW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywgcHJvYXJndHlwZXMgPT4gJ3Rl eHQgaW50NCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzdHJpbmcsIHN0YXJ0LCBjb3VudH0n LAogICBwcm9zcmMgPT4gJ3RleHRfc3Vic3RyJyB9LAogeyBvaWQgPT4gJzg3OCcsIGRlc2NyID0+ ICdtYXAgYSBzZXQgb2YgY2hhcmFjdGVycyBhcHBlYXJpbmcgaW4gc3RyaW5nJywKICAgcHJvbmFt ZSA9PiAndHJhbnNsYXRlJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsIHByb2FyZ3R5cGVzID0+ICd0 ZXh0IHRleHQgdGV4dCcsCkBAIC0zNzM2LDYgKzM3MzcsNyBAQAogICBwcm9zcmMgPT4gJ3J0cmlt MScgfSwKIHsgb2lkID0+ICc4ODMnLCBkZXNjciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmlu ZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cicsIHByb3JldHR5cGUgPT4gJ3RleHQnLCBwcm9hcmd0 eXBlcyA9PiAndGV4dCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzdHJpbmcsIHN0YXJ0fScs CiAgIHByb3NyYyA9PiAndGV4dF9zdWJzdHJfbm9fbGVuJyB9LAogeyBvaWQgPT4gJzg4NCcsIGRl c2NyID0+ICd0cmltIHNlbGVjdGVkIGNoYXJhY3RlcnMgZnJvbSBib3RoIGVuZHMgb2Ygc3RyaW5n JywKICAgcHJvbmFtZSA9PiAnYnRyaW0nLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywgcHJvYXJndHlw ZXMgPT4gJ3RleHQgdGV4dCcsCkBAIC02MzA2LDkgKzYzMDgsMTEgQEAKICAgcHJvc3JjID0+ICdi eXRlYV9zdWJzdHJfbm9fbGVuJyB9LAogeyBvaWQgPT4gJzIwODUnLCBkZXNjciA9PiAnZXh0cmFj dCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cicsIHByb3JldHR5cGUg PT4gJ2J5dGVhJywgcHJvYXJndHlwZXMgPT4gJ2J5dGVhIGludDQgaW50NCcsCisgIHByb2FyZ25h bWVzID0+ICd7Ynl0ZXMsIHN0YXJ0LCBjb3VudH0nLAogICBwcm9zcmMgPT4gJ2J5dGVhX3N1YnN0 cicgfSwKIHsgb2lkID0+ICcyMDg2JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJp bmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICdieXRlYScsIHByb2Fy Z3R5cGVzID0+ICdieXRlYSBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tieXRlcywgc3RhcnR9 JywKICAgcHJvc3JjID0+ICdieXRlYV9zdWJzdHJfbm9fbGVuJyB9LAogeyBvaWQgPT4gJzIwMTQn LCBkZXNjciA9PiAncG9zaXRpb24gb2Ygc3Vic3RyaW5nJywKICAgcHJvbmFtZSA9PiAncG9zaXRp b24nLCBwcm9yZXR0eXBlID0+ICdpbnQ0JywgcHJvYXJndHlwZXMgPT4gJ2J5dGVhIGJ5dGVhJywK LS0gCjIuMzQuMQoK --000000000000ef249206410b02e2--