Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q603Y-00082Y-5J for pgsql-hackers@arkaria.postgresql.org; Mon, 05 Jun 2023 02:34:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1q603X-0002ul-2i for pgsql-hackers@arkaria.postgresql.org; Mon, 05 Jun 2023 02:34:51 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1q600W-0006aB-1K for pgsql-hackers@lists.postgresql.org; Mon, 05 Jun 2023 02:31:44 +0000 Received: from mail-qv1-xf32.google.com ([2607:f8b0:4864:20::f32]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1q600O-000IAx-OD for pgsql-hackers@postgresql.org; Mon, 05 Jun 2023 02:31:43 +0000 Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-6260f03b76dso36928446d6.1 for ; Sun, 04 Jun 2023 19:31:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ardentperf-com.20221208.gappssmtp.com; s=20221208; t=1685932295; x=1688524295; h=cc:to:subject:from:content-language:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=KZL9pCfq/7/acsne0AUgW6wYiJOsZs12RYuCtyMeGqs=; b=S4zO+zYqye/bsJ7B1vVgabBgf8J5GZX1kq3Y8WprtADRoahtNBjQaTfXlcuG5h9ANM Lb+SnKAaWKeCG9ohFHZbKWimh6uaBR0dqp6b6dBF+XthLz/cdd+9MhZlIl6wIas1gKt0 pirARN5gqHcguF1qhQVCz36FMSpvDPAvTAoTbC8CxZsIJ8p3ck5K3AHPba/bi+R76OQ/ NWQgYilidKbvEMOXrAadGgmi2EzYaPtQTn1iG64g9xaL1P2f27LIb9deX2fGiZEbes6B /y18hYrLMJmylcjnJYaG/90cuCcXSVPrKcxRI8zwxs7vRhAiGaRfoJCYLT+NZXVibqHJ IgFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685932295; x=1688524295; h=cc:to:subject:from:content-language:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KZL9pCfq/7/acsne0AUgW6wYiJOsZs12RYuCtyMeGqs=; b=Dqb9cjuSNA/USACwrNrdAoMqZUd/xm+mk74UT6YMNjtPymhJiWFQ/MsejgCBBONmtS tkTx3w6oeed4/YlO/p4nhOsE/iLdDqJgrssZOzka43HKeJXj9jCLXql5zkMwSrNp47Yy zPw2TKyPkqf530jVzBik+vizxJ7zY0H9ldXACATBQQ+2G87r8uekXASxFEXrOcGO8sBa kNlizcxmzp70twLHJx3247R/S1VlkAGA2Stt4H5i78+S4EBypNPpeKbt7qDvzCQ33kDT uhsHD+D+XwR69k2yh2W+tsCwnfbcpD6MEcULI8msWMMNnXBhTrV6fN73i5h/UCzqDJjx 7bEg== X-Gm-Message-State: AC+VfDwIq4eHrQ81eeNy5olVRh5zzXmu8BDyE9km6lp4vD5dphNw61sX YaRtHRbwJUmAMu1W/uQEiLQP2g== X-Google-Smtp-Source: ACHHUZ6Epg0yDhowRKhM+hFHubMfrssW4SPVAZ+2MAr1sFgDtCD+IgYnYlnX8NIw+OOG1xTzU/zXhg== X-Received: by 2002:a05:6214:cce:b0:62a:d17d:9a01 with SMTP id 14-20020a0562140cce00b0062ad17d9a01mr6657210qvx.52.1685932295174; Sun, 04 Jun 2023 19:31:35 -0700 (PDT) Received: from [192.168.27.31] ([205.251.233.178]) by smtp.gmail.com with ESMTPSA id b15-20020a170902d50f00b001ab25a19cfbsm5278441plg.139.2023.06.04.19.31.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 04 Jun 2023 19:31:34 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------kwTlcHK0tKkrUj0oE92IRp0n" Message-ID: <2e2dc1ce-5fa0-3101-d57d-73975012bd98@ardentperf.com> Date: Sun, 4 Jun 2023 19:31:33 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.2 Content-Language: en-US From: Jeremy Schneider Subject: collation settings table in v16 docs To: "Davis, Jeff" , Peter Eisentraut , "Jonathan S. Katz" , Robert Haas Cc: PostgreSQL-development List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------kwTlcHK0tKkrUj0oE92IRp0n Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Looking at the "collation settings" table in the v16 docs, I think some readers may have a little difficulty understanding what each row means. https://www.postgresql.org/docs/devel/collation.html#ICU-COLLATION-SETTINGS The "Key" column isn't meaningful and it's a bit arduous to read the whole description column for every row in the table, just to understand which keys I might be interested in. I like how Peter's recent blog used the alias to organize the keys. http://peter.eisentraut.org/blog/2023/05/16/overview-of-icu-collation-settings I'd suggest that we add a column to this table with the alias, and also have a consistent first sentence of each description, generally aligned with the description from the upstream XML that Peter also referenced in his blog. I have an example below (and patch attached); I think this would make the table a bit more understandable. -Jeremy === Key: ka Alias: colAlternate **<-added** Values: noignore, shifted Default: noignore Description: **Collation parameter key for alternate handling.** If set to shifted, causes some characters (e.g. punctuation or space) to be ignored in comparison. Key ks must be set to level3 or lower to take effect. Set key kv to control which character classes are ignored. === Key: kb Alias: colBackwards **<-added** Values: true, false Default: false Description: **Collation parameter key for backwards comparison of** the level 2 differences. For example, locale und-u-kb sorts 'àe' before 'aé'. -- http://about.me/jeremy_schneider --------------kwTlcHK0tKkrUj0oE92IRp0n Content-Type: text/plain; charset=UTF-8; name="01-doc-update-proposal.patch" Content-Disposition: attachment; filename="01-doc-update-proposal.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9jaGFyc2V0LnNnbWwgYi9kb2Mvc3JjL3NnbWwv Y2hhcnNldC5zZ21sCmluZGV4IGVkODQ0NjU5OTYuLjVmODFhZmRiODUgMTAwNjQ0Ci0tLSBh L2RvYy9zcmMvc2dtbC9jaGFyc2V0LnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2NoYXJzZXQu c2dtbApAQCAtMTI2OSwxMCArMTI2OSwxMiBAQCBTRUxFQ1QgJ3gteScgPSAneF95JyBDT0xM QVRFIGxldmVsNDsgLS0gZmFsc2UKICAgICAgICA8Y29sc3BlYyBjb2xuYW1lPSJjb2wxIiBj b2x3aWR0aD0iMSoiLz4KICAgICAgICA8Y29sc3BlYyBjb2xuYW1lPSJjb2wyIiBjb2x3aWR0 aD0iMioiLz4KICAgICAgICA8Y29sc3BlYyBjb2xuYW1lPSJjb2wzIiBjb2x3aWR0aD0iMioi Lz4KLSAgICAgICA8Y29sc3BlYyBjb2xuYW1lPSJjb2w0IiBjb2x3aWR0aD0iNSoiLz4KKyAg ICAgICA8Y29sc3BlYyBjb2xuYW1lPSJjb2w0IiBjb2x3aWR0aD0iMioiLz4KKyAgICAgICA8 Y29sc3BlYyBjb2xuYW1lPSJjb2w1IiBjb2x3aWR0aD0iNSoiLz4KICAgICAgICA8dGhlYWQ+ CiAgICAgICAgIDxyb3c+CiAgICAgICAgICA8ZW50cnk+S2V5PC9lbnRyeT4KKyAgICAgICAg IDxlbnRyeT5BbGlhczwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+VmFsdWVzPC9lbnRyeT4K ICAgICAgICAgIDxlbnRyeT5EZWZhdWx0PC9lbnRyeT4KICAgICAgICAgIDxlbnRyeT5EZXNj cmlwdGlvbjwvZW50cnk+CkBAIC0xMjgxLDYgKzEyODMsNyBAQCBTRUxFQ1QgJ3gteScgPSAn eF95JyBDT0xMQVRFIGxldmVsNDsgLS0gZmFsc2UKICAgICAgICA8dGJvZHk+CiAgICAgICAg IDxyb3c+CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+Y288L2xpdGVyYWw+PC9lbnRyeT4K KyAgICAgICAgIDxlbnRyeT48L2VudHJ5PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmVt b2ppPC9saXRlcmFsPiwgPGxpdGVyYWw+cGhvbmViazwvbGl0ZXJhbD4sIDxsaXRlcmFsPnN0 YW5kYXJkPC9saXRlcmFsPiwgPHJlcGxhY2VhYmxlPi4uLjwvcmVwbGFjZWFibGU+PC9lbnRy eT4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5zdGFuZGFyZDwvbGl0ZXJhbD48L2VudHJ5 PgogICAgICAgICAgPGVudHJ5PgpAQCAtMTI4OSw5ICsxMjkyLDExIEBAIFNFTEVDVCAneC15 JyA9ICd4X3knIENPTExBVEUgbGV2ZWw0OyAtLSBmYWxzZQogICAgICAgICA8L3Jvdz4KICAg ICAgICAgPHJvdz4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5rYTwvbGl0ZXJhbD48L2Vu dHJ5PgorICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmNvbEFsdGVybmF0ZTwvbGl0ZXJhbD48 L2VudHJ5PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPm5vaWdub3JlPC9saXRlcmFsPiwg PGxpdGVyYWw+c2hpZnRlZDwvbGl0ZXJhbD48L2VudHJ5PgogICAgICAgICAgPGVudHJ5Pjxs aXRlcmFsPm5vaWdub3JlPC9saXRlcmFsPjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+Cisg ICAgICAgICAgQ29sbGF0aW9uIHBhcmFtZXRlciBrZXkgZm9yIGFsdGVybmF0ZSBoYW5kbGlu Zy4KICAgICAgICAgICBJZiBzZXQgdG8gPGxpdGVyYWw+c2hpZnRlZDwvbGl0ZXJhbD4sIGNh dXNlcyBzb21lIGNoYXJhY3RlcnMKICAgICAgICAgICAoZS5nLiBwdW5jdHVhdGlvbiBvciBz cGFjZSkgdG8gYmUgaWdub3JlZCBpbiBjb21wYXJpc29uLiBLZXkKICAgICAgICAgICA8bGl0 ZXJhbD5rczwvbGl0ZXJhbD4gbXVzdCBiZSBzZXQgdG8gPGxpdGVyYWw+bGV2ZWwzPC9saXRl cmFsPiBvcgpAQCAtMTMwMSwyMCArMTMwNiwyNCBAQCBTRUxFQ1QgJ3gteScgPSAneF95JyBD T0xMQVRFIGxldmVsNDsgLS0gZmFsc2UKICAgICAgICAgPC9yb3c+CiAgICAgICAgIDxyb3c+ CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+a2I8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAg ICAgIDxlbnRyeT48bGl0ZXJhbD5jb2xCYWNrd2FyZHM8L2xpdGVyYWw+PC9lbnRyeT4KICAg ICAgICAgIDxlbnRyeT48bGl0ZXJhbD50cnVlPC9saXRlcmFsPiwgPGxpdGVyYWw+ZmFsc2U8 L2xpdGVyYWw+PC9lbnRyeT4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5mYWxzZTwvbGl0 ZXJhbD48L2VudHJ5PgogICAgICAgICAgPGVudHJ5PgotICAgICAgICAgIEJhY2t3YXJkcyBj b21wYXJpc29uIGZvciB0aGUgbGV2ZWwgMiBkaWZmZXJlbmNlcy4gRm9yIGV4YW1wbGUsCisg ICAgICAgICAgQ29sbGF0aW9uIHBhcmFtZXRlciBrZXkgZm9yCisgICAgICAgICAgYmFja3dh cmRzIGNvbXBhcmlzb24gb2YgdGhlIGxldmVsIDIgZGlmZmVyZW5jZXMuIEZvciBleGFtcGxl LAogICAgICAgICAgIGxvY2FsZSA8bGl0ZXJhbD51bmQtdS1rYjwvbGl0ZXJhbD4gc29ydHMg PGxpdGVyYWw+J8OgZSc8L2xpdGVyYWw+CiAgICAgICAgICAgYmVmb3JlIDxsaXRlcmFsPidh w6knPC9saXRlcmFsPi4KICAgICAgICAgIDwvZW50cnk+CiAgICAgICAgIDwvcm93PgogICAg ICAgICA8cm93PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmtjPC9saXRlcmFsPjwvZW50 cnk+CisgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+Y29sQ2FzZUxldmVsPC9saXRlcmFsPjwv ZW50cnk+CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4sIDxsaXRl cmFsPmZhbHNlPC9saXRlcmFsPjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+ ZmFsc2U8L2xpdGVyYWw+PC9lbnRyeT4KICAgICAgICAgIDxlbnRyeT4KICAgICAgICAgICA8 cGFyYT4KKyAgICAgICAgICAgQ29sbGF0aW9uIHBhcmFtZXRlciBrZXkgZm9yIGNhc2UgbGV2 ZWwuCiAgICAgICAgICAgIFNlcGFyYXRlcyBjYXNlIGludG8gYSAibGV2ZWwgMi41IiB0aGF0 IGZhbGxzIGJldHdlZW4gYWNjZW50cyBhbmQKICAgICAgICAgICAgb3RoZXIgbGV2ZWwgMyBm ZWF0dXJlcy4KICAgICAgICAgICA8L3BhcmE+CkBAIC0xMzI3LDEyICsxMzM2LDE0IEBAIFNF TEVDVCAneC15JyA9ICd4X3knIENPTExBVEUgbGV2ZWw0OyAtLSBmYWxzZQogICAgICAgICA8 L3Jvdz4KICAgICAgICAgPHJvdz4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5rZjwvbGl0 ZXJhbD48L2VudHJ5PgorICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmNvbENhc2VGaXJzdDwv bGl0ZXJhbD48L2VudHJ5PgogICAgICAgICAgPGVudHJ5PgogICAgICAgICAgIDxsaXRlcmFs PnVwcGVyPC9saXRlcmFsPiwgPGxpdGVyYWw+bG93ZXI8L2xpdGVyYWw+LAogICAgICAgICAg IDxsaXRlcmFsPmZhbHNlPC9saXRlcmFsPgogICAgICAgICAgPC9lbnRyeT4KICAgICAgICAg IDxlbnRyeT48bGl0ZXJhbD5mYWxzZTwvbGl0ZXJhbD48L2VudHJ5PgogICAgICAgICAgPGVu dHJ5PgorICAgICAgICAgIENvbGxhdGlvbiBwYXJhbWV0ZXIga2V5IGZvciBvcmRlcmluZyBi eSBjYXNlLgogICAgICAgICAgIElmIHNldCB0byA8bGl0ZXJhbD51cHBlcjwvbGl0ZXJhbD4s IHVwcGVyIGNhc2Ugc29ydHMgYmVmb3JlIGxvd2VyCiAgICAgICAgICAgY2FzZS4gSWYgc2V0 IHRvIDxsaXRlcmFsPmxvd2VyPC9saXRlcmFsPiwgbG93ZXIgY2FzZSBzb3J0cyBiZWZvcmUK ICAgICAgICAgICB1cHBlciBjYXNlLiBJZiBzZXQgdG8gPGxpdGVyYWw+ZmFsc2U8L2xpdGVy YWw+LCB0aGUgc29ydCBkZXBlbmRzIG9uCkBAIC0xMzQxLDkgKzEzNTIsMTEgQEAgU0VMRUNU ICd4LXknID0gJ3hfeScgQ09MTEFURSBsZXZlbDQ7IC0tIGZhbHNlCiAgICAgICAgIDwvcm93 PgogICAgICAgICA8cm93PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmtuPC9saXRlcmFs PjwvZW50cnk+CisgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+Y29sTnVtZXJpYzwvbGl0ZXJh bD48L2VudHJ5PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPnRydWU8L2xpdGVyYWw+LCA8 bGl0ZXJhbD5mYWxzZTwvbGl0ZXJhbD48L2VudHJ5PgogICAgICAgICAgPGVudHJ5PjxsaXRl cmFsPmZhbHNlPC9saXRlcmFsPjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+CisgICAgICAg ICAgQ29sbGF0aW9uIHBhcmFtZXRlciBrZXkgZm9yIG51bWVyaWMgaGFuZGxpbmcuCiAgICAg ICAgICAgSWYgc2V0IHRvIDxsaXRlcmFsPnRydWU8L2xpdGVyYWw+LCBudW1iZXJzIHdpdGhp biBhIHN0cmluZyBhcmUKICAgICAgICAgICB0cmVhdGVkIGFzIGEgc2luZ2xlIG51bWVyaWMg dmFsdWUgcmF0aGVyIHRoYW4gYSBzZXF1ZW5jZSBvZgogICAgICAgICAgIGRpZ2l0cy4gRm9y IGV4YW1wbGUsIDxsaXRlcmFsPidpZC00NSc8L2xpdGVyYWw+IHNvcnRzIGJlZm9yZQpAQCAt MTM1MiwxMSArMTM2NSwxMyBAQCBTRUxFQ1QgJ3gteScgPSAneF95JyBDT0xMQVRFIGxldmVs NDsgLS0gZmFsc2UKICAgICAgICAgPC9yb3c+CiAgICAgICAgIDxyb3c+CiAgICAgICAgICA8 ZW50cnk+PGxpdGVyYWw+a2s8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAgICAgIDxlbnRyeT48 bGl0ZXJhbD5jb2xOb3JtYWxpemF0aW9uPC9saXRlcmFsPjwvZW50cnk+CiAgICAgICAgICA8 ZW50cnk+PGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4sIDxsaXRlcmFsPmZhbHNlPC9saXRlcmFs PjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+ZmFsc2U8L2xpdGVyYWw+PC9l bnRyeT4KICAgICAgICAgIDxlbnRyeT4KICAgICAgICAgICA8cGFyYT4KLSAgICAgICAgICAg RW5hYmxlIGZ1bGwgbm9ybWFsaXphdGlvbjsgbWF5IGFmZmVjdCBwZXJmb3JtYW5jZS4gQmFz aWMKKyAgICAgICAgICAgQ29sbGF0aW9uIHBhcmFtZXRlciBrZXkgZm9yCisgICAgICAgICAg IGZ1bGwgbm9ybWFsaXphdGlvbjsgbWF5IGFmZmVjdCBwZXJmb3JtYW5jZS4gQmFzaWMKICAg ICAgICAgICAgbm9ybWFsaXphdGlvbiBpcyBwZXJmb3JtZWQgZXZlbiB3aGVuIHNldCB0bwog ICAgICAgICAgICA8bGl0ZXJhbD5mYWxzZTwvbGl0ZXJhbD4uIExvY2FsZXMgZm9yIGxhbmd1 YWdlcyB0aGF0IHJlcXVpcmUgZnVsbAogICAgICAgICAgICBub3JtYWxpemF0aW9uIHR5cGlj YWxseSBlbmFibGUgaXQgYnkgZGVmYXVsdC4KQEAgLTEzNzUsNiArMTM5MCw3IEBAIFNFTEVD VCAneC15JyA9ICd4X3knIENPTExBVEUgbGV2ZWw0OyAtLSBmYWxzZQogICAgICAgICA8L3Jv dz4KICAgICAgICAgPHJvdz4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5rcjwvbGl0ZXJh bD48L2VudHJ5PgorICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmNvbFJlb3JkZXI8L2xpdGVy YWw+PC9lbnRyeT4KICAgICAgICAgIDxlbnRyeT4KICAgICAgICAgICA8bGl0ZXJhbD5zcGFj ZTwvbGl0ZXJhbD4sIDxsaXRlcmFsPnB1bmN0PC9saXRlcmFsPiwKICAgICAgICAgICA8bGl0 ZXJhbD5zeW1ib2w8L2xpdGVyYWw+LCA8bGl0ZXJhbD5jdXJyZW5jeTwvbGl0ZXJhbD4sCkBA IC0xMzgzLDYgKzEzOTksNyBAQCBTRUxFQ1QgJ3gteScgPSAneF95JyBDT0xMQVRFIGxldmVs NDsgLS0gZmFsc2UKICAgICAgICAgIDxlbnRyeT48L2VudHJ5PgogICAgICAgICAgPGVudHJ5 PgogICAgICAgICAgIDxwYXJhPgorICAgICAgICAgICBDb2xsYXRpb24gcmVvcmRlciBjb2Rl cy4KICAgICAgICAgICAgU2V0IHRvIG9uZSBvciBtb3JlIG9mIHRoZSB2YWxpZCB2YWx1ZXMs IG9yIGFueSBCQ1AgNDcKICAgICAgICAgICAgPHJlcGxhY2VhYmxlPnNjcmlwdC1pZDwvcmVw bGFjZWFibGU+LCBlLmcuIDxsaXRlcmFsPmxhdG48L2xpdGVyYWw+CiAgICAgICAgICAgICgi TGF0aW4iKSBvciA8bGl0ZXJhbD5ncmVrPC9saXRlcmFsPiAoIkdyZWVrIikuIE11bHRpcGxl IHZhbHVlcyBhcmUKQEAgLTE0MDAsOSArMTQxNywxMSBAQCBTRUxFQ1QgJ3gteScgPSAneF95 JyBDT0xMQVRFIGxldmVsNDsgLS0gZmFsc2UKICAgICAgICAgPC9yb3c+CiAgICAgICAgIDxy b3c+CiAgICAgICAgICA8ZW50cnk+PGxpdGVyYWw+a3M8L2xpdGVyYWw+PC9lbnRyeT4KKyAg ICAgICAgIDxlbnRyeT48bGl0ZXJhbD5jb2xTdHJlbmd0aDwvbGl0ZXJhbD48L2VudHJ5Pgog ICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPmxldmVsMTwvbGl0ZXJhbD4sIDxsaXRlcmFsPmxl dmVsMjwvbGl0ZXJhbD4sIDxsaXRlcmFsPmxldmVsMzwvbGl0ZXJhbD4sIDxsaXRlcmFsPmxl dmVsNDwvbGl0ZXJhbD4sIDxsaXRlcmFsPmlkZW50aWM8L2xpdGVyYWw+PC9lbnRyeT4KICAg ICAgICAgIDxlbnRyeT48bGl0ZXJhbD5sZXZlbDM8L2xpdGVyYWw+PC9lbnRyeT4KICAgICAg ICAgIDxlbnRyeT4KKyAgICAgICAgICBDb2xsYXRpb24gcGFyYW1ldGVyIGtleSBmb3IgY29s bGF0aW9uIHN0cmVuZ3RoLgogICAgICAgICAgIFNlbnNpdGl2aXR5IChvciAic3RyZW5ndGgi KSB3aGVuIGRldGVybWluaW5nIGVxdWFsaXR5LCB3aXRoCiAgICAgICAgICAgPGxpdGVyYWw+ bGV2ZWwxPC9saXRlcmFsPiB0aGUgbGVhc3Qgc2Vuc2l0aXZlIHRvIGRpZmZlcmVuY2VzIGFu ZAogICAgICAgICAgIDxsaXRlcmFsPmlkZW50aWM8L2xpdGVyYWw+IHRoZSBtb3N0IHNlbnNp dGl2ZSB0byBkaWZmZXJlbmNlcy4gU2VlCkBAIC0xNDExLDEzICsxNDMwLDE2IEBAIFNFTEVD VCAneC15JyA9ICd4X3knIENPTExBVEUgbGV2ZWw0OyAtLSBmYWxzZQogICAgICAgICA8L3Jv dz4KICAgICAgICAgPHJvdz4KICAgICAgICAgIDxlbnRyeT48bGl0ZXJhbD5rdjwvbGl0ZXJh bD48L2VudHJ5PgorICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPm1heFZhcmlhYmxlPC9saXRl cmFsPjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+CiAgICAgICAgICAgPGxpdGVyYWw+c3Bh Y2U8L2xpdGVyYWw+LCA8bGl0ZXJhbD5wdW5jdDwvbGl0ZXJhbD4sCiAgICAgICAgICAgPGxp dGVyYWw+c3ltYm9sPC9saXRlcmFsPiwgPGxpdGVyYWw+Y3VycmVuY3k8L2xpdGVyYWw+CiAg ICAgICAgICA8L2VudHJ5PgogICAgICAgICAgPGVudHJ5PjxsaXRlcmFsPnB1bmN0PC9saXRl cmFsPjwvZW50cnk+CiAgICAgICAgICA8ZW50cnk+Ci0gICAgICAgICAgQ2xhc3NlcyBvZiBj aGFyYWN0ZXJzIGlnbm9yZWQgZHVyaW5nIGNvbXBhcmlzb24gYXQgbGV2ZWwgMy4gU2V0dGlu ZworICAgICAgICAgIENvbGxhdGlvbiBwYXJhbWV0ZXIga2V5IGZvciBtYXhWYXJpYWJsZSwg dGhlIGxhc3QgcmVvcmRlcmluZyBncm91cAorICAgICAgICAgIHRvIGJlIGFmZmVjdGVkIGJ5 IGthLXNoaWZ0ZWQuIFRoaXMgZGV0ZXJtaW5lcworICAgICAgICAgIGNsYXNzZXMgb2YgY2hh cmFjdGVycyBpZ25vcmVkIGR1cmluZyBjb21wYXJpc29uIGF0IGxldmVsIDMuIFNldHRpbmcK ICAgICAgICAgICB0byBhIGxhdGVyIHZhbHVlIGluY2x1ZGVzIGVhcmxpZXIgdmFsdWVzOwog ICAgICAgICAgIGUuZy4gPGxpdGVyYWw+c3ltYm9sPC9saXRlcmFsPiBhbHNvIGluY2x1ZGVz CiAgICAgICAgICAgPGxpdGVyYWw+cHVuY3Q8L2xpdGVyYWw+IGFuZCA8bGl0ZXJhbD5zcGFj ZTwvbGl0ZXJhbD4gaW4gdGhlCg== --------------kwTlcHK0tKkrUj0oE92IRp0n--