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 1vaqwf-00EpZ8-1n for pgsql-hackers@arkaria.postgresql.org; Wed, 31 Dec 2025 07:48:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vaqwb-005bOl-2A for pgsql-hackers@arkaria.postgresql.org; Wed, 31 Dec 2025 07:48:34 +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.96) (envelope-from ) id 1vaqwb-005bOb-0A for pgsql-hackers@lists.postgresql.org; Wed, 31 Dec 2025 07:48:34 +0000 Received: from mail-ua1-x92e.google.com ([2607:f8b0:4864:20::92e]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vaqwZ-003Sqb-1D for pgsql-hackers@postgresql.org; Wed, 31 Dec 2025 07:48:32 +0000 Received: by mail-ua1-x92e.google.com with SMTP id a1e0cc1a2514c-93f5774571eso2645680241.1 for ; Tue, 30 Dec 2025 23:48:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1767167310; x=1767772110; 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=ibpsSRkoMYpcQe7unwgaIivZ3PjMpUjcykMBvK1lmG8=; b=lHwF6qLksCux8XUzuTIPpxGP3INXf/S28bb54w3VyJxTyXqSPuent1MlROFo0VzvHX 0umVul/MHs5iOcQFUgFsMKwPSubzDUBzj2GuzMh9f4ePqfVgEBegfu7YBv5dlmGxvB89 AehMC37sKYI+lUC+l5DKNthRaEgyTWZjQGc4p00dE7dY3T7kQUda63qAvk5u38EHj8sT EdBWpe9ZEAkt7+pDpyp0orkk6HZKkIZf7NAqt3ra7uVhgziuwaROAY0lA1XeluO1bY8k cTexOryg4N/O7YVWJUzOQegRgrqPXme5QFNDbmxP09R7WHmA5zHUhdm97/V4TvoRse1i 9BMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767167310; x=1767772110; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ibpsSRkoMYpcQe7unwgaIivZ3PjMpUjcykMBvK1lmG8=; b=L8WiMlzxjLy1zOLx1mklkU9yK3eJBCZQHy5GfBHzMt62wkqrC9aSypMNUS6TI8khDS hCvq9QqWFySiJDIfYI0RsSALbJVYDx9P7/wABTwRlJgF40+rGtb/WZzor7iaJnwQrXVw g0Ut7tEhOEgiBk2rXor7NmVhfsBbUJAymaQXoimsUJdY5/ugN+f/WlyOsLrlUOGuoeDY qsEr0Tcttv32g1OUYKO5JxoA6Ba2e9XKhbnFK3Y0v5fAT3I+kSBeuRzpz9QwOYPhl8CB jkaVQEghK0pDfhYmK4XWAxp40ahB2RuEv6HwIlqsS8ILnH2qEAntlQtH8WMhnsovsHAl Ux6g== X-Forwarded-Encrypted: i=1; AJvYcCXe4NKfuKG3zkpZDC00KsfH2qbvxnbtFAP9lcAjvrhMxdw2EPZ4w3jc2BOM+uRoGJ0WkGy9b0M+cBQwzt8a@postgresql.org X-Gm-Message-State: AOJu0YzrE5IEzmO7fIwJx4lbmKsOOT9TpFk1TAJLJ6qVrvV9xQXjsA05 PMkY6cUayNq22tno2/uWFUOpbPSiMRP8B1hQtQ88U4wLBej3DicEw1b9rg+PtZ4Vtlu+cCP05ND r2y+sRARSA0A81WPd7nZ+te0Ly3AnmMA= X-Gm-Gg: AY/fxX6Id5YTWE6Fn0pxq91V8xJXC9JTa6sIdSZlUTVTVlyY5fTSd+gO4E39jBQZZhK LB/Rvj2KVQd54Ohb7DkefX0Zk8hJlbefqkei7EnrktoJFTm1KBL8mSersBZFsFncfrZSiqlHIWC IQGJncn2emavQQjspOKjOeLfXWPOn/2CkEw+mxrLwDqmckV92nU7jPiqQcP4TZvEsC0VGpcasLb yQ9VL0xrsQ5MoAfVpFgSsr592UHD+FNUnrhcLC0y107cwpChlzES3FTLRsY2xhbhQwsCwJzBvEo PgwS9ZfPcUhRPUxF/ylPa7We5XvtUUCCrA+tMmMVjRiyS+e4arwdAxChlcYD4lNaA3oI4d/zos5 IN6dMLhrDxprdSLv+0yevdVc+slMnzrtOg7aPmYzfEd2GYTbbQ1ApzvoQ55pBAVY2kqlIHil0B1 hRA4yHOku/Cw== X-Google-Smtp-Source: AGHT+IEWR4ToaMNH7l59rMK+wIM9CtGWVmBA//WbiTm2SPgWnQf70M9LH65k25kF/eGbEzxDTgY3s2gJhCJKdNuA8Jo= X-Received: by 2002:a05:6102:3f14:b0:5e5:f9c:ddd5 with SMTP id ada2fe7eead31-5eb1a642602mr10464310137.14.1767167310076; Tue, 30 Dec 2025 23:48:30 -0800 (PST) MIME-Version: 1.0 References: <243365.1760371856@sss.pgh.pa.us> In-Reply-To: From: jian he Date: Wed, 31 Dec 2025 15:47:53 +0800 X-Gm-Features: AQt7F2p61nGVp4p-247j5Kjge0ItDz8lYHrwKIihnOBt7mZV-KjK6UMZYgqdGi0 Message-ID: Subject: Re: add function argument name to substring and substr To: Tom Lane Cc: Andrew Dunstan , "David G. Johnston" , Marcos Pegoraro , PostgreSQL-development Content-Type: multipart/mixed; boundary="000000000000c6ce2c06473ab383" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000c6ce2c06473ab383 Content-Type: text/plain; charset="UTF-8" hi. rebased, and rechecked it again. seems no changes to the citext extension are required, since the citext data type does not define specialized substring/substr function. -- jian https://www.enterprisedb.com --000000000000c6ce2c06473ab383 Content-Type: text/x-patch; charset="US-ASCII"; name="v10-0001-Add-argument-names-to-the-substr-functions.patch" Content-Disposition: attachment; filename="v10-0001-Add-argument-names-to-the-substr-functions.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mjtpp8n00 RnJvbSBkMzA1OTJmMTkwODYwY2M2OGQwOGY5NTZhYzY4NTNhYTJjNjBlMWJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMzEgRGVjIDIwMjUgMTU6MjY6MzEgKzA4MDAKU3ViamVjdDogW1BBVENIIHYx MCAxLzJdIEFkZCBhcmd1bWVudCBuYW1lcyB0byB0aGUgc3Vic3RyIGZ1bmN0aW9ucwoKVGhpcyBj aGFuZ2UgYWxsb3dzIHN1YnN0ciBmdW5jdGlvbiB0byBiZSBjYWxsZWQgdXNpbmcgbmFtZWQtYXJn dW1lbnQgbm90YXRpb24sCndoaWNoIGNhbiBiZSBoZWxwZnVsIGZvciByZWFkYWJpbGl0eSwgcGFy dGljdWxhcmx5IGZvciB0aGUgb25lcyB3aXRoIG1hbnkKYXJndW1lbnRzLgoKTm8gY2hhbmdlcyB0 byB0aGUgY2l0ZXh0IGV4dGVuc2lvbiBhcmUgcmVxdWlyZWQsIHNpbmNlIHRoZSBjaXRleHQgZGF0 YSB0eXBlIGRvZXMKbm90IGRlZmluZSBhIHNwZWNpYWxpemVkIHN1YnN0ciBmdW5jdGlvbi4KCmNv bW1pdGZlc3Q6IGh0dHBzOi8vY29tbWl0ZmVzdC5wb3N0Z3Jlc3FsLm9yZy9wYXRjaC81NTI0CkRp c2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FDSnVmeEhUQmt5bWgwNkQ0bUdLTmUxWWZS TkZOK2dGQnlibXlnV2s9UHRNcXUwMExRQG1haWwuZ21haWwuY29tCi0tLQogZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1iaW5hcnlzdHJpbmcuc2dtbCB8IDQgKystLQogZG9jL3NyYy9zZ21sL2Z1bmMv ZnVuYy1zdHJpbmcuc2dtbCAgICAgICB8IDQgKystLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19w cm9jLmRhdCAgICAgICAgICB8IDQgKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMo KyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1i aW5hcnlzdHJpbmcuc2dtbCBiL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtYmluYXJ5c3RyaW5nLnNn bWwKaW5kZXggYjI1NjM4MWUwMWYuLjU4MDUxNTk1MTI2IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3Nn bWwvZnVuYy9mdW5jLWJpbmFyeXN0cmluZy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9mdW5jL2Z1 bmMtYmluYXJ5c3RyaW5nLnNnbWwKQEAgLTU3MSwxMSArNTcxLDExIEBACiAgICAgICAgIDxpbmRl eHRlcm0+CiAgICAgICAgICA8cHJpbWFyeT5zdWJzdHI8L3ByaW1hcnk+CiAgICAgICAgIDwvaW5k ZXh0ZXJtPgotICAgICAgICA8ZnVuY3Rpb24+c3Vic3RyPC9mdW5jdGlvbj4gKCA8cGFyYW1ldGVy PmJ5dGVzPC9wYXJhbWV0ZXI+IDx0eXBlPmJ5dGVhPC90eXBlPiwgPHBhcmFtZXRlcj5zdGFydDwv cGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8b3B0aW9uYWw+LCA8cGFyYW1ldGVyPmNv dW50PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+ICkKKyAgICAg ICAgPGZ1bmN0aW9uPnN1YnN0cjwvZnVuY3Rpb24+ICggPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFt ZXRlcj4gPHR5cGU+Ynl0ZWE8L3R5cGU+LCA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0 eXBlPmludGVnZXI8L3R5cGU+IDxvcHRpb25hbD4sIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRl cj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRpb25hbD4gKQogICAgICAgICA8cmV0dXJudmFs dWU+Ynl0ZWE8L3JldHVybnZhbHVlPgogICAgICAgIDwvcGFyYT4KICAgICAgICA8cGFyYT4KLSAg ICAgICAgRXh0cmFjdHMgdGhlIHN1YnN0cmluZyBvZiA8cGFyYW1ldGVyPmJ5dGVzPC9wYXJhbWV0 ZXI+IHN0YXJ0aW5nIGF0CisgICAgICAgIEV4dHJhY3RzIHRoZSBzdWJzdHJpbmcgb2YgPHBhcmFt ZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gc3RhcnRpbmcgYXQKICAgICAgICAgdGhlIDxwYXJhbWV0 ZXI+c3RhcnQ8L3BhcmFtZXRlcj4ndGggYnl0ZSwKICAgICAgICAgYW5kIGV4dGVuZGluZyBmb3Ig PHBhcmFtZXRlcj5jb3VudDwvcGFyYW1ldGVyPiBieXRlcyBpZiB0aGF0IGlzCiAgICAgICAgIHNw ZWNpZmllZC4gIChTYW1lCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLXN0cmlu Zy5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1zdHJpbmcuc2dtbAppbmRleCA3YWQxNDM2 ZTVmOC4uMzMyNWFkZTA2NWEgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtc3Ry aW5nLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1zdHJpbmcuc2dtbApAQCAtMTM5 MCwxMSArMTM5MCwxMSBAQAogICAgICAgICA8aW5kZXh0ZXJtPgogICAgICAgICAgPHByaW1hcnk+ c3Vic3RyPC9wcmltYXJ5PgogICAgICAgICA8L2luZGV4dGVybT4KLSAgICAgICAgPGZ1bmN0aW9u PnN1YnN0cjwvZnVuY3Rpb24+ICggPHBhcmFtZXRlcj5zdHJpbmc8L3BhcmFtZXRlcj4gPHR5cGU+ dGV4dDwvdHlwZT4sIDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwv dHlwZT4gPG9wdGlvbmFsPiwgPHBhcmFtZXRlcj5jb3VudDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRl Z2VyPC90eXBlPiA8L29wdGlvbmFsPiApCisgICAgICAgIDxmdW5jdGlvbj5zdWJzdHI8L2Z1bmN0 aW9uPiAoIDxwYXJhbWV0ZXI+c291cmNlPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LCA8 cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDxvcHRpb25h bD4sIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9v cHRpb25hbD4gKQogICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+CiAgICAg ICAgPC9wYXJhPgogICAgICAgIDxwYXJhPgotICAgICAgICBFeHRyYWN0cyB0aGUgc3Vic3RyaW5n IG9mIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJhbWV0ZXI+IHN0YXJ0aW5nIGF0CisgICAgICAgIEV4 dHJhY3RzIHRoZSBzdWJzdHJpbmcgb2YgPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gc3Rh cnRpbmcgYXQKICAgICAgICAgdGhlIDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4ndGggY2hh cmFjdGVyLAogICAgICAgICBhbmQgZXh0ZW5kaW5nIGZvciA8cGFyYW1ldGVyPmNvdW50PC9wYXJh bWV0ZXI+IGNoYXJhY3RlcnMgaWYgdGhhdCBpcwogICAgICAgICBzcGVjaWZpZWQuICAoU2FtZQpk aWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHJvYy5kYXQKaW5kZXggNjBmN2NlNTAyZjYuLjZjNmYzMWY3MDQzIDEwMDY0 NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTM3MTgsNiArMzcxOCw3IEBACiAgIHByb3NyYyA9PiAn cnRyaW0nIH0sCiB7IG9pZCA9PiAnODc3JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBz dHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywgcHJv YXJndHlwZXMgPT4gJ3RleHQgaW50NCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzb3VyY2Us IHN0YXJ0LCBjb3VudH0nLAogICBwcm9zcmMgPT4gJ3RleHRfc3Vic3RyJyB9LAogeyBvaWQgPT4g Jzg3OCcsIGRlc2NyID0+ICdtYXAgYSBzZXQgb2YgY2hhcmFjdGVycyBhcHBlYXJpbmcgaW4gc3Ry aW5nJywKICAgcHJvbmFtZSA9PiAndHJhbnNsYXRlJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsIHBy b2FyZ3R5cGVzID0+ICd0ZXh0IHRleHQgdGV4dCcsCkBAIC0zNzM2LDYgKzM3MzcsNyBAQAogICBw cm9zcmMgPT4gJ3J0cmltMScgfSwKIHsgb2lkID0+ICc4ODMnLCBkZXNjciA9PiAnZXh0cmFjdCBw b3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cicsIHByb3JldHR5cGUgPT4g J3RleHQnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tz b3VyY2UsIHN0YXJ0fScsCiAgIHByb3NyYyA9PiAndGV4dF9zdWJzdHJfbm9fbGVuJyB9LAogeyBv aWQgPT4gJzg4NCcsIGRlc2NyID0+ICd0cmltIHNlbGVjdGVkIGNoYXJhY3RlcnMgZnJvbSBib3Ro IGVuZHMgb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9PiAnYnRyaW0nLCBwcm9yZXR0eXBlID0+ICd0 ZXh0JywgcHJvYXJndHlwZXMgPT4gJ3RleHQgdGV4dCcsCkBAIC02MzA2LDkgKzYzMDgsMTEgQEAK ICAgcHJvc3JjID0+ICdieXRlYV9zdWJzdHJfbm9fbGVuJyB9LAogeyBvaWQgPT4gJzIwODUnLCBk ZXNjciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0 cicsIHByb3JldHR5cGUgPT4gJ2J5dGVhJywgcHJvYXJndHlwZXMgPT4gJ2J5dGVhIGludDQgaW50 NCcsCisgIHByb2FyZ25hbWVzID0+ICd7c291cmNlLCBzdGFydCwgY291bnR9JywKICAgcHJvc3Jj ID0+ICdieXRlYV9zdWJzdHInIH0sCiB7IG9pZCA9PiAnMjA4NicsIGRlc2NyID0+ICdleHRyYWN0 IHBvcnRpb24gb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9PiAnc3Vic3RyJywgcHJvcmV0dHlwZSA9 PiAnYnl0ZWEnLCBwcm9hcmd0eXBlcyA9PiAnYnl0ZWEgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ ICd7c291cmNlLCBzdGFydH0nLAogICBwcm9zcmMgPT4gJ2J5dGVhX3N1YnN0cl9ub19sZW4nIH0s CiB7IG9pZCA9PiAnMjAxNCcsIGRlc2NyID0+ICdwb3NpdGlvbiBvZiBzdWJzdHJpbmcnLAogICBw cm9uYW1lID0+ICdwb3NpdGlvbicsIHByb3JldHR5cGUgPT4gJ2ludDQnLCBwcm9hcmd0eXBlcyA9 PiAnYnl0ZWEgYnl0ZWEnLAotLSAKMi4zNC4xCgo= --000000000000c6ce2c06473ab383 Content-Type: text/x-patch; charset="US-ASCII"; name="v10-0002-Add-argument-names-to-the-substring-functions.patch" Content-Disposition: attachment; filename="v10-0002-Add-argument-names-to-the-substring-functions.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mjtpp8n81 RnJvbSA4ZmU3MTgyODY3ZjgzM2FmOWJkYjI3MDRhMDFlYzM1ODYzM2ZiNWZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IFdlZCwgMzEgRGVjIDIwMjUgMTU6MjQ6NTQgKzA4MDAKU3ViamVjdDogW1BBVENIIHYx MCAyLzJdIEFkZCBhcmd1bWVudCBuYW1lcyB0byB0aGUgc3Vic3RyaW5nIGZ1bmN0aW9ucwoKVGhp cyBjaGFuZ2UgYWxsb3dzIHN1YnN0cmluZyBmdW5jdGlvbiB0byBiZSBjYWxsZWQgdXNpbmcgbmFt ZWQtYXJndW1lbnQKbm90YXRpb24sIHdoaWNoIGNhbiBiZSBoZWxwZnVsIGZvciByZWFkYWJpbGl0 eSwgcGFydGljdWxhcmx5IGZvciB0aGUgb25lcyB3aXRoCm1hbnkgYXJndW1lbnRzLgoKTm8gY2hh bmdlcyB0byB0aGUgY2l0ZXh0IGV4dGVuc2lvbiBhcmUgcmVxdWlyZWQsIHNpbmNlIHRoZSBjaXRl eHQgZGF0YSB0eXBlIGRvZXMKbm90IGRlZmluZSBhIHNwZWNpYWxpemVkIHN1YnN0cmluZyBmdW5j dGlvbi4KCmNvbW1pdGZlc3Q6IGh0dHBzOi8vY29tbWl0ZmVzdC5wb3N0Z3Jlc3FsLm9yZy9wYXRj aC81NTI0CkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FDSnVmeEhUQmt5bWgwNkQ0 bUdLTmUxWWZSTkZOK2dGQnlibXlnV2s9UHRNcXUwMExRQG1haWwuZ21haWwuY29tCi0tLQogZG9j L3NyYy9zZ21sL2Z1bmMvZnVuYy1iaW5hcnlzdHJpbmcuc2dtbCB8IDI5ICsrKysrKysrLS0KIGRv Yy9zcmMvc2dtbC9mdW5jL2Z1bmMtYml0c3RyaW5nLnNnbWwgICAgfCAyNyArKysrKysrKystCiBk b2Mvc3JjL3NnbWwvZnVuYy9mdW5jLW1hdGNoaW5nLnNnbWwgICAgIHwgMjggKysrKysrLS0tLQog ZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1zdHJpbmcuc2dtbCAgICAgICB8IDY5ICsrKysrKysrKysr KysrKysrKysrKy0tLQogc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbCB8 ICAyICstCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgIHwgIDggKysr CiA2IGZpbGVzIGNoYW5nZWQsIDE0MCBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLWJpbmFyeXN0cmluZy5zZ21sIGIvZG9j L3NyYy9zZ21sL2Z1bmMvZnVuYy1iaW5hcnlzdHJpbmcuc2dtbAppbmRleCA1ODA1MTU5NTEyNi4u NmYzYjZjNDBhNjIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtYmluYXJ5c3Ry aW5nLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1iaW5hcnlzdHJpbmcuc2dtbApA QCAtMjAwLDExICsyMDAsMTEgQEAKICAgICAgICAgPGluZGV4dGVybT4KICAgICAgICAgIDxwcmlt YXJ5PnN1YnN0cmluZzwvcHJpbWFyeT4KICAgICAgICAgPC9pbmRleHRlcm0+Ci0gICAgICAgIDxm dW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+Ynl0ZXM8L3BhcmFtZXRl cj4gPHR5cGU+Ynl0ZWE8L3R5cGU+IDxvcHRpb25hbD4gPGxpdGVyYWw+RlJPTTwvbGl0ZXJhbD4g PHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8L29wdGlv bmFsPiA8b3B0aW9uYWw+IDxsaXRlcmFsPkZPUjwvbGl0ZXJhbD4gPHBhcmFtZXRlcj5jb3VudDwv cGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8L29wdGlvbmFsPiApCisgICAgICAgIDxm dW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c291cmNlPC9wYXJhbWV0 ZXI+IDx0eXBlPmJ5dGVhPC90eXBlPiA8b3B0aW9uYWw+IDxsaXRlcmFsPkZST008L2xpdGVyYWw+ IDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRp b25hbD4gPG9wdGlvbmFsPiA8bGl0ZXJhbD5GT1I8L2xpdGVyYWw+IDxwYXJhbWV0ZXI+Y291bnQ8 L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRpb25hbD4gKQogICAgICAgICA8 cmV0dXJudmFsdWU+Ynl0ZWE8L3JldHVybnZhbHVlPgogICAgICAgIDwvcGFyYT4KICAgICAgICA8 cGFyYT4KLSAgICAgICAgRXh0cmFjdHMgdGhlIHN1YnN0cmluZyBvZiA8cGFyYW1ldGVyPmJ5dGVz PC9wYXJhbWV0ZXI+IHN0YXJ0aW5nIGF0CisgICAgICAgIEV4dHJhY3RzIHRoZSBzdWJzdHJpbmcg b2YgPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gc3RhcnRpbmcgYXQKICAgICAgICAgdGhl IDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4ndGggYnl0ZSBpZiB0aGF0IGlzIHNwZWNpZmll ZCwKICAgICAgICAgYW5kIHN0b3BwaW5nIGFmdGVyIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRl cj4gYnl0ZXMgaWYgdGhhdCBpcwogICAgICAgICBzcGVjaWZpZWQuICBQcm92aWRlIGF0IGxlYXN0 IG9uZSBvZiA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+CkBAIC0yMTYsNiArMjE2LDI5IEBA CiAgICAgICAgPC9wYXJhPjwvZW50cnk+CiAgICAgICA8L3Jvdz4KIAorICAgICAgPHJvdz4KKyAg ICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iZnVuY19zaWdu YXR1cmUiPgorICAgICAgICA8aW5kZXh0ZXJtPgorICAgICAgICAgPHByaW1hcnk+c3Vic3RyaW5n PC9wcmltYXJ5PgorICAgICAgICA8L2luZGV4dGVybT4KKyAgICAgICAgPGZ1bmN0aW9uPnN1YnN0 cmluZzwvZnVuY3Rpb24+ICgKKyAgICAgICAgICA8cGFyYW1ldGVyPnNvdXJjZTwvcGFyYW1ldGVy PiA8dHlwZT5ieXRlYTwvdHlwZT4sCisgICAgICAgICAgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1l dGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPgorICAgICAgICAgIDxvcHRpb25hbD4sIDxwYXJhbWV0 ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9vcHRpb25hbD4gKQor ICAgICAgICA8cmV0dXJudmFsdWU+Ynl0ZWE8L3JldHVybnZhbHVlPgorICAgICAgIDwvcGFyYT4K KyAgICAgICA8cGFyYT4KKyAgICAgICAgRXh0cmFjdHMgdGhlIHN1YnN0cmluZyBvZiA8cGFyYW1l dGVyPnNvdXJjZTwvcGFyYW1ldGVyPiBzdGFydGluZyBhdAorICAgICAgICB0aGUgPHBhcmFtZXRl cj5zdGFydDwvcGFyYW1ldGVyPid0aCBieXRlLAorICAgICAgICBhbmQgc3RvcHBpbmcgYWZ0ZXIg PHBhcmFtZXRlcj5jb3VudDwvcGFyYW1ldGVyPiBieXRlcyBpZiB0aGF0IGlzCisgICAgICAgIHNw ZWNpZmllZC4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIDxsaXRlcmFs PnN1YnN0cmluZyhzb3VyY2U9PidceDEyMzQ1Njc4OTAnOjpieXRlYSwgc3RhcnQ9PjMsIGNvdW50 PT4yKTwvbGl0ZXJhbD4KKyAgICAgICAgPHJldHVybnZhbHVlPlx4NTY3ODwvcmV0dXJudmFsdWU+ CisgICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgICA8L3Jvdz4KKwogICAgICAgPHJvdz4KICAg ICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iZnVuY19zaWdu YXR1cmUiPgogICAgICAgICA8aW5kZXh0ZXJtPgpAQCAtNTc5LDcgKzYwMiw3IEBACiAgICAgICAg IHRoZSA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+J3RoIGJ5dGUsCiAgICAgICAgIGFuZCBl eHRlbmRpbmcgZm9yIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gYnl0ZXMgaWYgdGhhdCBp cwogICAgICAgICBzcGVjaWZpZWQuICAoU2FtZQotICAgICAgICBhcyA8bGl0ZXJhbD5zdWJzdHJp bmcoPHBhcmFtZXRlcj5ieXRlczwvcGFyYW1ldGVyPgorICAgICAgICBhcyA8bGl0ZXJhbD5zdWJz dHJpbmcoPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4KICAgICAgICAgZnJvbSA8cGFyYW1l dGVyPnN0YXJ0PC9wYXJhbWV0ZXI+CiAgICAgICAgIGZvciA8cGFyYW1ldGVyPmNvdW50PC9wYXJh bWV0ZXI+KTwvbGl0ZXJhbD4uKQogICAgICAgIDwvcGFyYT4KZGlmZiAtLWdpdCBhL2RvYy9zcmMv c2dtbC9mdW5jL2Z1bmMtYml0c3RyaW5nLnNnbWwgYi9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLWJp dHN0cmluZy5zZ21sCmluZGV4IDNmNTlkZTQ2NGE0Li4yYzg1OTg5MjI4YyAxMDA2NDQKLS0tIGEv ZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1iaXRzdHJpbmcuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwv ZnVuYy9mdW5jLWJpdHN0cmluZy5zZ21sCkBAIC0yNzksMTEgKzI3OSwxMSBAQAogICAgICAgICA8 aW5kZXh0ZXJtPgogICAgICAgICAgPHByaW1hcnk+c3Vic3RyaW5nPC9wcmltYXJ5PgogICAgICAg ICA8L2luZGV4dGVybT4KLSAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICgg PHBhcmFtZXRlcj5iaXRzPC9wYXJhbWV0ZXI+IDx0eXBlPmJpdDwvdHlwZT4gPG9wdGlvbmFsPiA8 bGl0ZXJhbD5GUk9NPC9saXRlcmFsPiA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBl PmludGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+IDxvcHRpb25hbD4gPGxpdGVyYWw+Rk9SPC9saXRl cmFsPiA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDwv b3B0aW9uYWw+ICkKKyAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBh cmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+Yml0PC90eXBlPiA8b3B0aW9uYWw+IDxs aXRlcmFsPkZST008L2xpdGVyYWw+IDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4gPHR5cGU+ aW50ZWdlcjwvdHlwZT4gPC9vcHRpb25hbD4gPG9wdGlvbmFsPiA8bGl0ZXJhbD5GT1I8L2xpdGVy YWw+IDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4gPC9v cHRpb25hbD4gKQogICAgICAgICA8cmV0dXJudmFsdWU+Yml0PC9yZXR1cm52YWx1ZT4KICAgICAg ICA8L3BhcmE+CiAgICAgICAgPHBhcmE+Ci0gICAgICAgIEV4dHJhY3RzIHRoZSBzdWJzdHJpbmcg b2YgPHBhcmFtZXRlcj5iaXRzPC9wYXJhbWV0ZXI+IHN0YXJ0aW5nIGF0CisgICAgICAgIEV4dHJh Y3RzIHRoZSBzdWJzdHJpbmcgb2YgPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gc3RhcnRp bmcgYXQKICAgICAgICAgdGhlIDxwYXJhbWV0ZXI+c3RhcnQ8L3BhcmFtZXRlcj4ndGggYml0IGlm IHRoYXQgaXMgc3BlY2lmaWVkLAogICAgICAgICBhbmQgc3RvcHBpbmcgYWZ0ZXIgPHBhcmFtZXRl cj5jb3VudDwvcGFyYW1ldGVyPiBiaXRzIGlmIHRoYXQgaXMKICAgICAgICAgc3BlY2lmaWVkLiAg UHJvdmlkZSBhdCBsZWFzdCBvbmUgb2YgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPgpAQCAt Mjk1LDYgKzI5NSwyOSBAQAogICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICAgPC9yb3c+CiAK KyAgICAgIDxyb3c+CisgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJh IHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KKyAgICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgIDxw cmltYXJ5PnN1YnN0cmluZzwvcHJpbWFyeT4KKyAgICAgICAgPC9pbmRleHRlcm0+CisgICAgICAg IDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoCisgICAgICAgICAgPHBhcmFtZXRlcj5z b3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+Yml0PC90eXBlPiwKKyAgICAgICAgICA8cGFyYW1ldGVy PnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+CisgICAgICAgICAgPG9wdGlv bmFsPiwgPHBhcmFtZXRlcj5jb3VudDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPiA8 L29wdGlvbmFsPiApCisgICAgICAgIDxyZXR1cm52YWx1ZT5iaXQ8L3JldHVybnZhbHVlPgorICAg ICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXh0cmFjdHMgdGhlIHN1YnN0cmlu ZyBvZiA8cGFyYW1ldGVyPnNvdXJjZTwvcGFyYW1ldGVyPiBzdGFydGluZyBhdAorICAgICAgICB0 aGUgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPid0aCBiaXQsCisgICAgICAgIGFuZCBzdG9w cGluZyBhZnRlciA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IGJpdHMgaWYgdGhhdCBpcwor ICAgICAgICBzcGVjaWZpZWQuCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAg ICA8bGl0ZXJhbD5zdWJzdHJpbmcoc291cmNlPT5CJzExMDAxMDExMTExMScsIHN0YXJ0PT4zLCBj b3VudD0+Mik8L2xpdGVyYWw+CisgICAgICAgIDxyZXR1cm52YWx1ZT4wMDwvcmV0dXJudmFsdWU+ CisgICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgICA8L3Jvdz4KKwogICAgICAgPHJvdz4KICAg ICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iZnVuY19zaWdu YXR1cmUiPgogICAgICAgICA8aW5kZXh0ZXJtPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2Z1 bmMvZnVuYy1tYXRjaGluZy5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1tYXRjaGluZy5z Z21sCmluZGV4IGY0NjY4NjBkZGIwLi5mYjU3NGJiODNjYiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL2Z1bmMvZnVuYy1tYXRjaGluZy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMt bWF0Y2hpbmcuc2dtbApAQCAtMjM0LDEzICsyMzQsMTMgQEAKICAgIDwvaW5kZXh0ZXJtPgogCiA8 c3lub3BzaXM+Ci08cmVwbGFjZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4gU0lNSUxBUiBUTyA8 cmVwbGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFibGU+IDxvcHRpb25hbD5FU0NBUEUgPHJlcGxh Y2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3JlcGxhY2VhYmxlPjwvb3B0aW9uYWw+Ci08cmVwbGFj ZWFibGU+c3RyaW5nPC9yZXBsYWNlYWJsZT4gTk9UIFNJTUlMQVIgVE8gPHJlcGxhY2VhYmxlPnBh dHRlcm48L3JlcGxhY2VhYmxlPiA8b3B0aW9uYWw+RVNDQVBFIDxyZXBsYWNlYWJsZT5lc2NhcGUt Y2hhcmFjdGVyPC9yZXBsYWNlYWJsZT48L29wdGlvbmFsPgorPHJlcGxhY2VhYmxlPnNvdXJjZTwv cmVwbGFjZWFibGU+IFNJTUlMQVIgVE8gPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxl PiA8b3B0aW9uYWw+RVNDQVBFIDxyZXBsYWNlYWJsZT5lc2NhcGUtY2hhcmFjdGVyPC9yZXBsYWNl YWJsZT48L29wdGlvbmFsPgorPHJlcGxhY2VhYmxlPnNvdXJjZTwvcmVwbGFjZWFibGU+IE5PVCBT SU1JTEFSIFRPIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4gPG9wdGlvbmFsPkVT Q0FQRSA8cmVwbGFjZWFibGU+ZXNjYXBlLWNoYXJhY3RlcjwvcmVwbGFjZWFibGU+PC9vcHRpb25h bD4KIDwvc3lub3BzaXM+CiAKICAgIDxwYXJhPgogICAgIFRoZSA8ZnVuY3Rpb24+U0lNSUxBUiBU TzwvZnVuY3Rpb24+IG9wZXJhdG9yIHJldHVybnMgdHJ1ZSBvcgotICAgIGZhbHNlIGRlcGVuZGlu ZyBvbiB3aGV0aGVyIGl0cyBwYXR0ZXJuIG1hdGNoZXMgdGhlIGdpdmVuIHN0cmluZy4KKyAgICBm YWxzZSBkZXBlbmRpbmcgb24gd2hldGhlciBpdHMgcGF0dGVybiBtYXRjaGVzIHRoZSBnaXZlbiBz dHJpbmcgKHRoZSA8cmVwbGFjZWFibGU+c291cmNlPC9yZXBsYWNlYWJsZT4pLgogICAgIEl0IGlz IHNpbWlsYXIgdG8gPGZ1bmN0aW9uPkxJS0U8L2Z1bmN0aW9uPiwgZXhjZXB0IHRoYXQgaXQKICAg ICBpbnRlcnByZXRzIHRoZSBwYXR0ZXJuIHVzaW5nIHRoZSBTUUwgc3RhbmRhcmQncyBkZWZpbml0 aW9uIG9mIGEKICAgICByZWd1bGFyIGV4cHJlc3Npb24uICBTUUwgcmVndWxhciBleHByZXNzaW9u cyBhcmUgYSBjdXJpb3VzIGNyb3NzCkBAIC0zNjksMTUgKzM2OSwxNSBAQAogICAgIHJlZ3VsYXIg ZXhwcmVzc2lvbiBwYXR0ZXJuLiAgVGhlIGZ1bmN0aW9uIGNhbiBiZSB3cml0dGVuIGFjY29yZGlu ZwogICAgIHRvIHN0YW5kYXJkIFNRTCBzeW50YXg6CiA8c3lub3BzaXM+Ci1zdWJzdHJpbmcoPHJl cGxhY2VhYmxlPnN0cmluZzwvcmVwbGFjZWFibGU+IFNJTUlMQVIgPHJlcGxhY2VhYmxlPnBhdHRl cm48L3JlcGxhY2VhYmxlPiBFU0NBUEUgPHJlcGxhY2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3Jl cGxhY2VhYmxlPikKK3N1YnN0cmluZyg8cmVwbGFjZWFibGU+c291cmNlPC9yZXBsYWNlYWJsZT4g U0lNSUxBUiA8cmVwbGFjZWFibGU+cGF0dGVybjwvcmVwbGFjZWFibGU+IEVTQ0FQRSA8cmVwbGFj ZWFibGU+ZXNjYXBlPC9yZXBsYWNlYWJsZT4pCiA8L3N5bm9wc2lzPgogICAgIG9yIHVzaW5nIHRo ZSBub3cgb2Jzb2xldGUgU1FMOjE5OTkgc3ludGF4OgogPHN5bm9wc2lzPgotc3Vic3RyaW5nKDxy ZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBGUk9NIDxyZXBsYWNlYWJsZT5wYXR0ZXJu PC9yZXBsYWNlYWJsZT4gRk9SIDxyZXBsYWNlYWJsZT5lc2NhcGUtY2hhcmFjdGVyPC9yZXBsYWNl YWJsZT4pCitzdWJzdHJpbmcoPHJlcGxhY2VhYmxlPnNvdXJjZTwvcmVwbGFjZWFibGU+IEZST00g PHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiBGT1IgPHJlcGxhY2VhYmxlPmVzY2Fw ZTwvcmVwbGFjZWFibGU+KQogPC9zeW5vcHNpcz4KICAgICBvciBhcyBhIHBsYWluIHRocmVlLWFy Z3VtZW50IGZ1bmN0aW9uOgogPHN5bm9wc2lzPgotc3Vic3RyaW5nKDxyZXBsYWNlYWJsZT5zdHJp bmc8L3JlcGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxlPiwgPHJl cGxhY2VhYmxlPmVzY2FwZS1jaGFyYWN0ZXI8L3JlcGxhY2VhYmxlPikKK3N1YnN0cmluZyg8cmVw bGFjZWFibGU+c291cmNlPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBs YWNlYWJsZT4sIDxyZXBsYWNlYWJsZT5lc2NhcGU8L3JlcGxhY2VhYmxlPikKIDwvc3lub3BzaXM+ CiAgICAgQXMgd2l0aCA8bGl0ZXJhbD5TSU1JTEFSIFRPPC9saXRlcmFsPiwgdGhlCiAgICAgc3Bl Y2lmaWVkIHBhdHRlcm4gbXVzdCBtYXRjaCB0aGUgZW50aXJlIGRhdGEgc3RyaW5nLCBvciBlbHNl IHRoZQpAQCAtNTgxLDExICs1ODEsMTcgQEAgc3Vic3RyaW5nKCdmb29iYXInIFNJTUlMQVIgJyMi b19iIyIlJyBFU0NBUEUgJyMnKSAgICA8bGluZWFubm90YXRpb24+TlVMTDwvbGluZWEKICAgICA8 L3BhcmE+CiAKICAgICA8cGFyYT4KLSAgICAgVGhlIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0 aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBwYXJhbWV0ZXJzLAotICAgICA8ZnVuY3Rpb24+c3Vic3Ry aW5nKDxyZXBsYWNlYWJsZT5zdHJpbmc8L3JlcGxhY2VhYmxlPiBmcm9tCi0gICAgIDxyZXBsYWNl YWJsZT5wYXR0ZXJuPC9yZXBsYWNlYWJsZT4pPC9mdW5jdGlvbj4sIHByb3ZpZGVzIGV4dHJhY3Rp b24gb2YgYQotICAgICBzdWJzdHJpbmcKLSAgICAgdGhhdCBtYXRjaGVzIGEgUE9TSVggcmVndWxh ciBleHByZXNzaW9uIHBhdHRlcm4uICBJdCByZXR1cm5zIG51bGwgaWYKKyAgICAgVGhlIDxmdW5j dGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiBmdW5jdGlvbiB3aXRoIHR3byBwYXJhbWV0ZXJzIHBy b3ZpZGVzIGV4dHJhY3Rpb24gb2YgYQorICAgICBzdWJzdHJpbmcgdGhhdCBtYXRjaGVzIGEgPGFj cm9ueW0+UE9TSVg8L2Fjcm9ueW0+IHJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJuLgorICAgICBU aGUgZnVuY3Rpb24gY2FuIGJlIHdyaXR0ZW4gYWNjb3JkaW5nIHRvIHN0YW5kYXJkIDxhY3Jvbnlt PlNRTDwvYWNyb255bT4gc3ludGF4OgorPHN5bm9wc2lzPgorc3Vic3RyaW5nKDxyZXBsYWNlYWJs ZT5zb3VyY2U8L3JlcGxhY2VhYmxlPiBGUk9NIDxyZXBsYWNlYWJsZT5wYXR0ZXJuPC9yZXBsYWNl YWJsZT4pCis8L3N5bm9wc2lzPgorICAgICBJdCBjYW4gYWxzbyB3cml0dGVuIGFzIGEgcGxhaW4g dHdvLWFyZ3VtZW50IGZ1bmN0aW9uOgorPHN5bm9wc2lzPgorc3Vic3RyaW5nKDxyZXBsYWNlYWJs ZT5zb3VyY2U8L3JlcGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlPnBhdHRlcm48L3JlcGxhY2VhYmxl PikKKzwvc3lub3BzaXM+CisgICAgIEl0IHJldHVybnMgbnVsbCBpZgogICAgICB0aGVyZSBpcyBu byBtYXRjaCwgb3RoZXJ3aXNlIHRoZSBmaXJzdCBwb3J0aW9uIG9mIHRoZSB0ZXh0IHRoYXQgbWF0 Y2hlZCB0aGUKICAgICAgcGF0dGVybi4gIEJ1dCBpZiB0aGUgcGF0dGVybiBjb250YWlucyBhbnkg cGFyZW50aGVzZXMsIHRoZSBwb3J0aW9uCiAgICAgIG9mIHRoZSB0ZXh0IHRoYXQgbWF0Y2hlZCB0 aGUgZmlyc3QgcGFyZW50aGVzaXplZCBzdWJleHByZXNzaW9uICh0aGUKZGlmZiAtLWdpdCBhL2Rv Yy9zcmMvc2dtbC9mdW5jL2Z1bmMtc3RyaW5nLnNnbWwgYi9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5j LXN0cmluZy5zZ21sCmluZGV4IDMzMjVhZGUwNjVhLi40MTAzNWMxZThhZiAxMDA2NDQKLS0tIGEv ZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1zdHJpbmcuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZnVu Yy9mdW5jLXN0cmluZy5zZ21sCkBAIC00MDAsMTEgKzQwMCwxMSBAQAogICAgICAgICA8aW5kZXh0 ZXJtPgogICAgICAgICAgPHByaW1hcnk+c3Vic3RyaW5nPC9wcmltYXJ5PgogICAgICAgICA8L2lu ZGV4dGVybT4KLSAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFt ZXRlcj5zdHJpbmc8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4gPG9wdGlvbmFsPiA8bGl0 ZXJhbD5GUk9NPC9saXRlcmFsPiA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmlu dGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+IDxvcHRpb25hbD4gPGxpdGVyYWw+Rk9SPC9saXRlcmFs PiA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDwvb3B0 aW9uYWw+ICkKKyAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFt ZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4gPG9wdGlvbmFsPiA8bGl0 ZXJhbD5GUk9NPC9saXRlcmFsPiA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+IDx0eXBlPmlu dGVnZXI8L3R5cGU+IDwvb3B0aW9uYWw+IDxvcHRpb25hbD4gPGxpdGVyYWw+Rk9SPC9saXRlcmFs PiA8cGFyYW1ldGVyPmNvdW50PC9wYXJhbWV0ZXI+IDx0eXBlPmludGVnZXI8L3R5cGU+IDwvb3B0 aW9uYWw+ICkKICAgICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVybnZhbHVlPgogICAgICAg IDwvcGFyYT4KICAgICAgICA8cGFyYT4KLSAgICAgICAgRXh0cmFjdHMgdGhlIHN1YnN0cmluZyBv ZiA8cGFyYW1ldGVyPnN0cmluZzwvcGFyYW1ldGVyPiBzdGFydGluZyBhdAorICAgICAgICBFeHRy YWN0cyB0aGUgc3Vic3RyaW5nIG9mIDxwYXJhbWV0ZXI+c291cmNlPC9wYXJhbWV0ZXI+IHN0YXJ0 aW5nIGF0CiAgICAgICAgIHRoZSA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+J3RoIGNoYXJh Y3RlciBpZiB0aGF0IGlzIHNwZWNpZmllZCwKICAgICAgICAgYW5kIHN0b3BwaW5nIGFmdGVyIDxw YXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gY2hhcmFjdGVycyBpZiB0aGF0IGlzCiAgICAgICAg IHNwZWNpZmllZC4gIFByb3ZpZGUgYXQgbGVhc3Qgb25lIG9mIDxwYXJhbWV0ZXI+c3RhcnQ8L3Bh cmFtZXRlcj4KQEAgLTQyNiw3ICs0MjYsNyBAQAogCiAgICAgICA8cm93PgogICAgICAgIDxlbnRy eSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+Ci0g ICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5n PC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxsaXRlcmFsPkZST008L2xpdGVyYWw+IDxw YXJhbWV0ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90eXBlPiApCisgICAgICAg IDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c291cmNlPC9wYXJh bWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxsaXRlcmFsPkZST008L2xpdGVyYWw+IDxwYXJhbWV0 ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90eXBlPiApCiAgICAgICAgIDxyZXR1 cm52YWx1ZT50ZXh0PC9yZXR1cm52YWx1ZT4KICAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+ CkBAIC00NDEsMTEgKzQ0MSwxMSBAQAogCiAgICAgICA8cm93PgogICAgICAgIDxlbnRyeSByb2xl PSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+Ci0gICAgICAg IDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoIDxwYXJhbWV0ZXI+c3RyaW5nPC9wYXJh bWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxsaXRlcmFsPlNJTUlMQVI8L2xpdGVyYWw+IDxwYXJh bWV0ZXI+cGF0dGVybjwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90eXBlPiA8bGl0ZXJhbD5FU0NB UEU8L2xpdGVyYWw+IDxwYXJhbWV0ZXI+ZXNjYXBlPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5 cGU+ICkKKyAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFtZXRl cj5zb3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4gPGxpdGVyYWw+U0lNSUxBUjwv bGl0ZXJhbD4gPHBhcmFtZXRlcj5wYXR0ZXJuPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+ IDxsaXRlcmFsPkVTQ0FQRTwvbGl0ZXJhbD4gPHBhcmFtZXRlcj5lc2NhcGU8L3BhcmFtZXRlcj4g PHR5cGU+dGV4dDwvdHlwZT4gKQogICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFs dWU+CiAgICAgICAgPC9wYXJhPgogICAgICAgIDxwYXJhIHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4K LSAgICAgICAgPGZ1bmN0aW9uPnN1YnN0cmluZzwvZnVuY3Rpb24+ICggPHBhcmFtZXRlcj5zdHJp bmc8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4gPGxpdGVyYWw+RlJPTTwvbGl0ZXJhbD4g PHBhcmFtZXRlcj5wYXR0ZXJuPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+IDxsaXRlcmFs PkZPUjwvbGl0ZXJhbD4gPHBhcmFtZXRlcj5lc2NhcGU8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwv dHlwZT4gKQorICAgICAgICA8ZnVuY3Rpb24+c3Vic3RyaW5nPC9mdW5jdGlvbj4gKCA8cGFyYW1l dGVyPnNvdXJjZTwvcGFyYW1ldGVyPiA8dHlwZT50ZXh0PC90eXBlPiA8bGl0ZXJhbD5GUk9NPC9s aXRlcmFsPiA8cGFyYW1ldGVyPnBhdHRlcm48L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4g PGxpdGVyYWw+Rk9SPC9saXRlcmFsPiA8cGFyYW1ldGVyPmVzY2FwZTwvcGFyYW1ldGVyPiA8dHlw ZT50ZXh0PC90eXBlPiApCiAgICAgICAgIDxyZXR1cm52YWx1ZT50ZXh0PC9yZXR1cm52YWx1ZT4K ICAgICAgICA8L3BhcmE+CiAgICAgICAgPHBhcmE+CkBAIC0xMzk4LDcgKzEzOTgsNyBAQAogICAg ICAgICB0aGUgPHBhcmFtZXRlcj5zdGFydDwvcGFyYW1ldGVyPid0aCBjaGFyYWN0ZXIsCiAgICAg ICAgIGFuZCBleHRlbmRpbmcgZm9yIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gY2hhcmFj dGVycyBpZiB0aGF0IGlzCiAgICAgICAgIHNwZWNpZmllZC4gIChTYW1lCi0gICAgICAgIGFzIDxs aXRlcmFsPnN1YnN0cmluZyg8cGFyYW1ldGVyPnN0cmluZzwvcGFyYW1ldGVyPgorICAgICAgICBh cyA8bGl0ZXJhbD5zdWJzdHJpbmcoPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4KICAgICAg ICAgZnJvbSA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+CiAgICAgICAgIGZvciA8cGFyYW1l dGVyPmNvdW50PC9wYXJhbWV0ZXI+KTwvbGl0ZXJhbD4uKQogICAgICAgIDwvcGFyYT4KQEAgLTE0 MTIsNiArMTQxMiw2MyBAQAogICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICAgPC9yb3c+CiAK KyAgICAgIDxyb3c+CisgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJh IHJvbGU9ImZ1bmNfc2lnbmF0dXJlIj4KKyAgICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgIDxw cmltYXJ5PnN1YnN0cmluZzwvcHJpbWFyeT4KKyAgICAgICAgPC9pbmRleHRlcm0+CisgICAgICAg IDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoCisgICAgICAgICAgPHBhcmFtZXRlcj5z b3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4sCisgICAgICAgICAgPHBhcmFtZXRl cj5zdGFydDwvcGFyYW1ldGVyPiA8dHlwZT5pbnRlZ2VyPC90eXBlPgorICAgICAgICAgIDxvcHRp b25hbD4sIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gPHR5cGU+aW50ZWdlcjwvdHlwZT4g PC9vcHRpb25hbD4gKQorICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+Cisg ICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBFeHRyYWN0cyB0aGUgc3Vic3Ry aW5nIG9mIDxwYXJhbWV0ZXI+c291cmNlPC9wYXJhbWV0ZXI+IHN0YXJ0aW5nIGF0IHRoZQorICAg ICAgICA8cGFyYW1ldGVyPnN0YXJ0PC9wYXJhbWV0ZXI+J3RoIGNoYXJhY3RlciwgYW5kIHN0b3Bw aW5nIGFmdGVyCisgICAgICAgIDxwYXJhbWV0ZXI+Y291bnQ8L3BhcmFtZXRlcj4gY2hhcmFjdGVy cyBpZiB0aGF0IGlzIHNwZWNpZmllZC4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+Cisg ICAgICAgIDxsaXRlcmFsPnN1YnN0cmluZyhzb3VyY2U9PidUaG9tYXMnLCBzdGFydD0+MiwgY291 bnQ9PjMpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+aG9tPC9yZXR1cm52YWx1ZT4K KyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgorCisgICAgICA8cm93PgorICAg ICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJmdW5jX3NpZ25h dHVyZSI+CisgICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1bmN0aW9uPiAoCisgICAgICAg ICAgPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+dGV4dDwvdHlwZT4sCisgICAg ICAgICAgPHBhcmFtZXRlcj5wYXR0ZXJuPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+LAor ICAgICAgICAgIDxwYXJhbWV0ZXI+ZXNjYXBlPC9wYXJhbWV0ZXI+IDx0eXBlPnRleHQ8L3R5cGU+ KQorICAgICAgICA8cmV0dXJudmFsdWU+dGV4dDwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJh PgorICAgICAgIDxwYXJhPgorICAgICAgICBFeHRyYWN0cyB0aGUgZmlyc3Qgc3Vic3RyaW5nIG1h dGNoaW5nIDxhY3JvbnltPlNRTDwvYWNyb255bT4gcmVndWxhciBleHByZXNzaW9uOworICAgICAg ICBzZWUgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXNpbWlsYXJ0by1yZWdleHAiLz4uCisgICAg ICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICA8bGl0ZXJhbD5zdWJzdHJpbmcoJ1Ro b21hcycsICclIyJvX2EjIl8nLCAnIycpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+ b21hPC9yZXR1cm52YWx1ZT4KKyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93Pgor CisgICAgICA8cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJmdW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxmdW5jdGlvbj5zdWJzdHJpbmc8L2Z1 bmN0aW9uPiAoCisgICAgICAgICAgPHBhcmFtZXRlcj5zb3VyY2U8L3BhcmFtZXRlcj4gPHR5cGU+ dGV4dDwvdHlwZT4sCisgICAgICAgICAgPHBhcmFtZXRlcj5wYXR0ZXJuPC9wYXJhbWV0ZXI+IDx0 eXBlPnRleHQ8L3R5cGU+ICkKKyAgICAgICAgPHJldHVybnZhbHVlPnRleHQ8L3JldHVybnZhbHVl PgorICAgICAgIDwvcGFyYT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAgRXh0cmFjdHMgdGhlIGZp cnN0IHN1YnN0cmluZyBtYXRjaGluZyA8YWNyb255bT5QT1NJWDwvYWNyb255bT4gcmVndWxhciBl eHByZXNzaW9uOworICAgICAgICBzZWUgPHhyZWYgbGlua2VuZD0iZnVuY3Rpb25zLXBvc2l4LXJl Z2V4cCIvPi4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIDxsaXRlcmFs PnN1YnN0cmluZygnVGhvbWFzJywgJy4uLiQnKTwvbGl0ZXJhbD4KKyAgICAgICAgPHJldHVybnZh bHVlPm1hczwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgICA8L3Jv dz4KKwogICAgICAgPHJvdz4KICAgICAgICA8ZW50cnkgcm9sZT0iZnVuY190YWJsZV9lbnRyeSI+ PHBhcmEgcm9sZT0iZnVuY19zaWduYXR1cmUiPgogICAgICAgICA8aW5kZXh0ZXJtPgpkaWZmIC0t Z2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbCBiL3NyYy9iYWNr ZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwKaW5kZXggMmQ5NDZkNmQ5ZTkuLmYwODUw ZjllZjY0IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMu c3FsCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9ucy5zcWwKQEAgLTQy LDcgKzQyLDcgQEAgQ1JFQVRFIE9SIFJFUExBQ0UgRlVOQ1RJT04gcnBhZCh0ZXh0LCBpbnRlZ2Vy KQogIElNTVVUQUJMRSBQQVJBTExFTCBTQUZFIFNUUklDVCBDT1NUIDEKIFJFVFVSTiBycGFkKCQx LCAkMiwgJyAnKTsKIAotQ1JFQVRFIE9SIFJFUExBQ0UgRlVOQ1RJT04gInN1YnN0cmluZyIodGV4 dCwgdGV4dCwgdGV4dCkKK0NSRUFURSBPUiBSRVBMQUNFIEZVTkNUSU9OICJzdWJzdHJpbmciKHNv dXJjZSB0ZXh0LCBwYXR0ZXJuIHRleHQsIGVzY2FwZSB0ZXh0KQogIFJFVFVSTlMgdGV4dAogIExB TkdVQUdFIHNxbAogIElNTVVUQUJMRSBQQVJBTExFTCBTQUZFIFNUUklDVCBDT1NUIDEKZGlmZiAt LWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3Byb2MuZGF0CmluZGV4IDZjNmYzMWY3MDQzLi5hZWQwMzE5NTAxMiAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3Byb2MuZGF0CkBAIC0zNzQ4LDkgKzM3NDgsMTEgQEAKIAogeyBvaWQgPT4gJzkzNics IGRlc2NyID0+ICdleHRyYWN0IHBvcnRpb24gb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9PiAnc3Vi c3RyaW5nJywgcHJvcmV0dHlwZSA9PiAndGV4dCcsIHByb2FyZ3R5cGVzID0+ICd0ZXh0IGludDQg aW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7c291cmNlLCBzdGFydCwgY291bnR9JywKICAgcHJv c3JjID0+ICd0ZXh0X3N1YnN0cicgfSwKIHsgb2lkID0+ICc5MzcnLCBkZXNjciA9PiAnZXh0cmFj dCBwb3J0aW9uIG9mIHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmluZycsIHByb3JldHR5 cGUgPT4gJ3RleHQnLCBwcm9hcmd0eXBlcyA9PiAndGV4dCBpbnQ0JywKKyAgcHJvYXJnbmFtZXMg PT4gJ3tzb3VyY2UsIHN0YXJ0fScsCiAgIHByb3NyYyA9PiAndGV4dF9zdWJzdHJfbm9fbGVuJyB9 LAogeyBvaWQgPT4gJzIwODcnLAogICBkZXNjciA9PiAncmVwbGFjZSBhbGwgb2NjdXJyZW5jZXMg aW4gc3RyaW5nIG9mIG9sZF9zdWJzdHIgd2l0aCBuZXdfc3Vic3RyJywKQEAgLTQxNjgsNiArNDE3 MCw3IEBACiAgIHByb3NyYyA9PiAnYml0Y2F0JyB9LAogeyBvaWQgPT4gJzE2ODAnLCBkZXNjciA9 PiAnZXh0cmFjdCBwb3J0aW9uIG9mIGJpdHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmlu ZycsIHByb3JldHR5cGUgPT4gJ2JpdCcsIHByb2FyZ3R5cGVzID0+ICdiaXQgaW50NCBpbnQ0JywK KyAgcHJvYXJnbmFtZXMgPT4gJ3tzb3VyY2UsIHN0YXJ0LCBjb3VudH0nLAogICBwcm9zcmMgPT4g J2JpdHN1YnN0cicgfSwKIHsgb2lkID0+ICcxNjgxJywgZGVzY3IgPT4gJ2JpdHN0cmluZyBsZW5n dGgnLAogICBwcm9uYW1lID0+ICdsZW5ndGgnLCBwcm9yZXR0eXBlID0+ICdpbnQ0JywgcHJvYXJn dHlwZXMgPT4gJ2JpdCcsCkBAIC00MTk3LDYgKzQyMDAsNyBAQAogICBwcm9zcmMgPT4gJ2JpdHBv c2l0aW9uJyB9LAogeyBvaWQgPT4gJzE2OTknLCBkZXNjciA9PiAnZXh0cmFjdCBwb3J0aW9uIG9m IGJpdHN0cmluZycsCiAgIHByb25hbWUgPT4gJ3N1YnN0cmluZycsIHByb3JldHR5cGUgPT4gJ2Jp dCcsIHByb2FyZ3R5cGVzID0+ICdiaXQgaW50NCcsCisgIHByb2FyZ25hbWVzID0+ICd7c291cmNl LCBzdGFydH0nLAogICBwcm9zcmMgPT4gJ2JpdHN1YnN0cl9ub19sZW4nIH0sCiAKIHsgb2lkID0+ ICczMDMwJywgZGVzY3IgPT4gJ3N1YnN0aXR1dGUgcG9ydGlvbiBvZiBiaXRzdHJpbmcnLApAQCAt NjMwMiw5ICs2MzA2LDExIEBACiAgIHByb3NyYyA9PiAnYnl0ZWFjYXQnIH0sCiB7IG9pZCA9PiAn MjAxMicsIGRlc2NyID0+ICdleHRyYWN0IHBvcnRpb24gb2Ygc3RyaW5nJywKICAgcHJvbmFtZSA9 PiAnc3Vic3RyaW5nJywgcHJvcmV0dHlwZSA9PiAnYnl0ZWEnLAorICBwcm9hcmduYW1lcyA9PiAn e3NvdXJjZSwgc3RhcnQsIGNvdW50fScsCiAgIHByb2FyZ3R5cGVzID0+ICdieXRlYSBpbnQ0IGlu dDQnLCBwcm9zcmMgPT4gJ2J5dGVhX3N1YnN0cicgfSwKIHsgb2lkID0+ICcyMDEzJywgZGVzY3Ig PT4gJ2V4dHJhY3QgcG9ydGlvbiBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcn LCBwcm9yZXR0eXBlID0+ICdieXRlYScsIHByb2FyZ3R5cGVzID0+ICdieXRlYSBpbnQ0JywKKyAg cHJvYXJnbmFtZXMgPT4gJ3tzb3VyY2UsIHN0YXJ0fScsCiAgIHByb3NyYyA9PiAnYnl0ZWFfc3Vi c3RyX25vX2xlbicgfSwKIHsgb2lkID0+ICcyMDg1JywgZGVzY3IgPT4gJ2V4dHJhY3QgcG9ydGlv biBvZiBzdHJpbmcnLAogICBwcm9uYW1lID0+ICdzdWJzdHInLCBwcm9yZXR0eXBlID0+ICdieXRl YScsIHByb2FyZ3R5cGVzID0+ICdieXRlYSBpbnQ0IGludDQnLApAQCAtNjUwNCw5ICs2NTEwLDEx IEBACiAKIHsgb2lkID0+ICcyMDczJywgZGVzY3IgPT4gJ2V4dHJhY3QgdGV4dCBtYXRjaGluZyBy ZWd1bGFyIGV4cHJlc3Npb24nLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9yZXR0eXBl ID0+ICd0ZXh0JywgcHJvYXJndHlwZXMgPT4gJ3RleHQgdGV4dCcsCisgIHByb2FyZ25hbWVzID0+ ICd7c291cmNlLCBwYXR0ZXJufScsCiAgIHByb3NyYyA9PiAndGV4dHJlZ2V4c3Vic3RyJyB9LAog eyBvaWQgPT4gJzIwNzQnLCBkZXNjciA9PiAnZXh0cmFjdCB0ZXh0IG1hdGNoaW5nIFNRTCByZWd1 bGFyIGV4cHJlc3Npb24nLAogICBwcm9uYW1lID0+ICdzdWJzdHJpbmcnLCBwcm9sYW5nID0+ICdz cWwnLCBwcm9yZXR0eXBlID0+ICd0ZXh0JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3tzb3VyY2UsIHBh dHRlcm4sIGVzY2FwZX0nLAogICBwcm9hcmd0eXBlcyA9PiAndGV4dCB0ZXh0IHRleHQnLCBwcm9z cmMgPT4gJ3NlZSBzeXN0ZW1fZnVuY3Rpb25zLnNxbCcgfSwKIAogeyBvaWQgPT4gJzIwNzUnLCBk ZXNjciA9PiAnY29udmVydCBpbnQ4IHRvIGJpdHN0cmluZycsCi0tIAoyLjM0LjEKCg== --000000000000c6ce2c06473ab383--