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 1tH1Ln-002b2g-PJ for pgsql-hackers@arkaria.postgresql.org; Fri, 29 Nov 2024 13:48:04 +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 1tH1Lk-007waC-Sf for pgsql-hackers@arkaria.postgresql.org; Fri, 29 Nov 2024 13:48:02 +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 1tH1Lk-007wa3-AI for pgsql-hackers@lists.postgresql.org; Fri, 29 Nov 2024 13:48:01 +0000 Received: from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1tH1Lh-000AiC-N8 for pgsql-hackers@lists.postgresql.org; Fri, 29 Nov 2024 13:48:00 +0000 Received: by mail-ot1-x32b.google.com with SMTP id 46e09a7af769-71d551855c2so741590a34.3 for ; Fri, 29 Nov 2024 05:47:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1732888077; x=1733492877; darn=lists.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=Y2F9yJsUSfsqr4vXzg7NBCVG6tpbOu8/JyaBzZvNREE=; b=J1fLVIT3F+pJx3sz/+redJb0/KKVx6fv33q+776ZVS9pZEv5L3HLkoqRdOALdPJmQW HmYxRce3NoHGXJEm43sqe6Vipk982bOU78byqHi1Dhs4LDgHp92PiWWQmkspHVnkQYpi lOa5fBXNnoiQZEXMIhLMFd0MktauzgqEhkYXMVNbWL4oJYD6/nUqmbjnRPbuZ4+q7IOK T1pJr0OrM37ECJdvJ+iOw9oywcIfq7hKgEJHOa4+YohpuWiJ0b2Z52ibKfXIBHII4fqB qD3G8o5R1PguDiAsT1mmcg3/NClBR+F1Ojxx8gMlzW7i2BBBGKqYXyClMONHE/kmdccY RXag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732888077; x=1733492877; 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=Y2F9yJsUSfsqr4vXzg7NBCVG6tpbOu8/JyaBzZvNREE=; b=BiTmpbHy94D17lSjzYwDp00UatT/1bDtu5rK6DNMQgo3d+ts+GHxUzRb1/l6MkzOAi Pi7sxWgbBs9qFkilbYbPUdr1YR4vHVRXjlWdCPCg1MCSIZVNjY38HWaz2iE8BnFMfE3W c13vRVcsHovuqD2OxC3VaPCWuK/IMHhmPEv1oAlCN/muEOuHW00jGxemjqztwF3zkibG qYDwXvWzF0n4+Cnqz5oXmlBv9J+nR/xMWf+fUQ+p5Tp5T/PQIWZNiincCOrVWIO6ivh6 46SfKfqpMgF95Puyz1L6XrM+kli0k1ArMANw13+4cVfo75jucrPzDp3RLnJ4vkr+wPs4 EjYw== X-Forwarded-Encrypted: i=1; AJvYcCVJq2ueLKClGnmlPL4zVKbLqQfxVkvFim78r9MRT5Ul1pb7uAqr6c/F1x+VdTvyRJbELWWBClG90sRCLkUl@lists.postgresql.org X-Gm-Message-State: AOJu0YxCRMhi/SKwKEV78pjDNP54AmainzRIciY9uq+1DXkd4XRe+ftE FQtC6tAhWxBL1iyoR6cqlAgKin5IdSNsmW6ttaFrJoP/7GThsoe6U2feA/RckE4wJmTrvj7n8VP LFLY2UYo7AR+5BaCnKRh8yub7Yy0= X-Gm-Gg: ASbGncvXIgruoU/nEwwyuQbet1/pYdhyoswuFnKrdXA61NMC9wperLTTDw9UnS99zw8 I9HYQ6TBJhchy6hhJJaK8pl0xLcHt/w76 X-Google-Smtp-Source: AGHT+IHdtZDcO82C2B0lNCkxfkbuosdBINEIw6gnWCHhbdrjqlwGFzKk4a/+Lc1EVJzSyzPqz0FmTXPVtgSkl1UYcYQ= X-Received: by 2002:a05:6358:729:b0:1bc:d1b9:ccc8 with SMTP id e5c5f4694b2df-1cab16071c2mr541557455d.14.1732888076809; Fri, 29 Nov 2024 05:47:56 -0800 (PST) MIME-Version: 1.0 References: <1898722.1732732780@sss.pgh.pa.us> <2007224.1732773174@sss.pgh.pa.us> In-Reply-To: From: jian he Date: Fri, 29 Nov 2024 21:47:45 +0800 Message-ID: Subject: Re: CREATE SCHEMA ... CREATE DOMAIN support To: Kirill Reshke Cc: Tom Lane , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000412fc806280d7252" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000412fc806280d7252 Content-Type: text/plain; charset="UTF-8" new patch, add tab complete for it. --000000000000412fc806280d7252 Content-Type: text/x-patch; charset="US-ASCII"; name="v5-0001-support-CREATE-SCHEMA-CREATE-DOMAIN.patch" Content-Disposition: attachment; filename="v5-0001-support-CREATE-SCHEMA-CREATE-DOMAIN.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m42ssqe70 RnJvbSA5MWQwNWU1NDdjYTcyMmQ0NTM3ZmY3NDIwYjgyNDhhM2ZjY2UzYjU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IEZyaSwgMjkgTm92IDIwMjQgMjE6NDQ6NTQgKzA4MDAKU3ViamVjdDogW1BBVENIIHY1 IDEvMV0gc3VwcG9ydCBDUkVBVEUgU0NIRU1BIENSRUFURSBET01BSU4KClNRTCBzdGFuZGFyZCBh bGxvdyBkb21haW4gdG8gYmUgc3BlY2lmaWVkIHdpdGggQ1JFQVRFIFNDSEVNQQpzdGF0ZW1lbnQu IFRoaXMgcGF0Y2ggYWRkcyBzdXBwb3J0IGluIFBvc3RncmVTUUwgZm9yIHRoYXQuCgpGb3IgZXhh bXBsZToKICAgIENSRUFURSBTQ0hFTUEgc2NoZW1hX25hbWUgQVVUSE9SSVpBVElPTiBDVVJSRU5U X1JPTEUKICAgIGNyZWF0ZSB2aWV3IHRlc3QgYXMgc2VsZWN0ICdoZWxsbyc6OnNzIGFzIHRlc3QK ICAgIENSRUFURSB0YWJsZSB0KGEgc3MpCiAgICBjcmVhdGUgZG9tYWluIHNzIGFzIHRleHQgbm90 IG51bGw7CgpUaGUgZG9tYWluIHdpbGwgYmUgY3JlYXRlZCB3aXRoaW4gdGhlIHRvIGJlIGNyZWF0 ZWQgc2NoZW1hLgpUaGUgZG9tYWluIG5hbWUgY2FuIGJlIHNjaGVtYS1xdWFsaWZpZWQgb3IgZGF0 YWJhc2UtcXVhbGlmaWVkLApob3dldmVyIGl0J3Mgbm90IGFsbG93ZWQgdG8gbGV0IGRvbWFpbiBj cmVhdGUgd2l0aGluIGEgZGlmZmVyZW50IHNjaGVtYS4KCkF1dGhvcjogS2lyaWxsIFJlc2hrZSA8 cmVzaGtla2lyaWxsQGdtYWlsLmNvbT4KQXV0aG9yOiBKaWFuIEhlIDxqaWFuLnVuaXZlcnNhbGl0 eUBnbWFpbC5jb20+ClJldmlld2VkLWJ5OiBBbHZhcm8gSGVycmVyYSA8YWx2aGVycmVAYWx2aC5u by1pcC5vcmc+ClJldmlld2VkLWJ5OiBUb20gTGFuZSA8dGdsQHNzcy5wZ2gucGEudXM+Ci0tLQog ZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwgICAgICAgICB8ICAyICstCiBzcmMv YmFja2VuZC9wYXJzZXIvZ3JhbS55ICAgICAgICAgICAgICAgICAgIHwgIDEgKwogc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYyAgICAgICAgICB8IDI3ICsrKysrKysrKysrCiBzcmMv YmluL3BzcWwvdGFiLWNvbXBsZXRlLmluLmMgICAgICAgICAgICAgIHwgMTIgKystLS0KIHNyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQgfCA1MSArKysrKysrKysrKysr KysrKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsICAgICAgfCAz MyArKysrKysrKysrKysrCiA2IGZpbGVzIGNoYW5nZWQsIDExOSBpbnNlcnRpb25zKCspLCA3IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NjaGVtYS5z Z21sIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwKaW5kZXggZWQ2OTI5OGNj Yy4uMDZmNjMxNGE1YiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1h LnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwKQEAgLTEwMCw3 ICsxMDAsNyBAQCBDUkVBVEUgU0NIRU1BIElGIE5PVCBFWElTVFMgQVVUSE9SSVpBVElPTiA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cm9sZV9zcAogICAgICAgPGxpc3RpdGVtPgogICAg ICAgIDxwYXJhPgogICAgICAgICBBbiBTUUwgc3RhdGVtZW50IGRlZmluaW5nIGFuIG9iamVjdCB0 byBiZSBjcmVhdGVkIHdpdGhpbiB0aGUKLSAgICAgICAgc2NoZW1hLiBDdXJyZW50bHksIG9ubHkg PGNvbW1hbmQ+Q1JFQVRFCisgICAgICAgIHNjaGVtYS4gQ3VycmVudGx5LCBvbmx5IDxjb21tYW5k PkNSRUFURSBET01BSU48L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUKICAgICAgICAgVEFCTEU8 L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUgVklFVzwvY29tbWFuZD4sIDxjb21tYW5kPkNSRUFU RQogICAgICAgICBJTkRFWDwvY29tbWFuZD4sIDxjb21tYW5kPkNSRUFURSBTRVFVRU5DRTwvY29t bWFuZD4sIDxjb21tYW5kPkNSRUFURQogICAgICAgICBUUklHR0VSPC9jb21tYW5kPiBhbmQgPGNv bW1hbmQ+R1JBTlQ8L2NvbW1hbmQ+IGFyZSBhY2NlcHRlZCBhcyBjbGF1c2VzCmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55IGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpp bmRleCA2N2ViOTYzOTZhLi5hZDhkOTI3MGFjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wYXJz ZXIvZ3JhbS55CisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9ncmFtLnkKQEAgLTE1ODQsNiArMTU4 NCw3IEBAIHNjaGVtYV9zdG10OgogCQkJfCBDcmVhdGVUcmlnU3RtdAogCQkJfCBHcmFudFN0bXQK IAkJCXwgVmlld1N0bXQKKwkJCXwgQ3JlYXRlRG9tYWluU3RtdAogCQk7CiAKIApkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYyBiL3NyYy9iYWNrZW5kL3BhcnNl ci9wYXJzZV91dGlsY21kLmMKaW5kZXggMGYzMjRlZTRlMy4uNDUzMjhlZWExNiAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYworKysgYi9zcmMvYmFja2VuZC9w YXJzZXIvcGFyc2VfdXRpbGNtZC5jCkBAIC0xMDUsNiArMTA1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QK IAlMaXN0CSAgICppbmRleGVzOwkJLyogQ1JFQVRFIElOREVYIGl0ZW1zICovCiAJTGlzdAkgICAq dHJpZ2dlcnM7CQkvKiBDUkVBVEUgVFJJR0dFUiBpdGVtcyAqLwogCUxpc3QJICAgKmdyYW50czsJ CQkvKiBHUkFOVCBpdGVtcyAqLworCUxpc3QJICAgKmRvbWFpbnM7CQkvKiBET01BSU4gaXRlbXMg Ki8KIH0gQ3JlYXRlU2NoZW1hU3RtdENvbnRleHQ7CiAKIApAQCAtNDAzOSw2ICs0MDQwLDcgQEAg dHJhbnNmb3JtQ3JlYXRlU2NoZW1hU3RtdEVsZW1lbnRzKExpc3QgKnNjaGVtYUVsdHMsIGNvbnN0 IGNoYXIgKnNjaGVtYU5hbWUpCiAJY3h0LmluZGV4ZXMgPSBOSUw7CiAJY3h0LnRyaWdnZXJzID0g TklMOwogCWN4dC5ncmFudHMgPSBOSUw7CisJY3h0LmRvbWFpbnMgPSBOSUw7CiAKIAkvKgogCSAq IFJ1biB0aHJvdWdoIGVhY2ggc2NoZW1hIGVsZW1lbnQgaW4gdGhlIHNjaGVtYSBlbGVtZW50IGxp c3QuIFNlcGFyYXRlCkBAIC00MTA3LDYgKzQxMDksMzAgQEAgdHJhbnNmb3JtQ3JlYXRlU2NoZW1h U3RtdEVsZW1lbnRzKExpc3QgKnNjaGVtYUVsdHMsIGNvbnN0IGNoYXIgKnNjaGVtYU5hbWUpCiAJ CQkJY3h0LmdyYW50cyA9IGxhcHBlbmQoY3h0LmdyYW50cywgZWxlbWVudCk7CiAJCQkJYnJlYWs7 CiAKKwkJCWNhc2UgVF9DcmVhdGVEb21haW5TdG10OgorCQkJCXsKKwkJCQkJQ3JlYXRlRG9tYWlu U3RtdCAqZWxwID0gKENyZWF0ZURvbWFpblN0bXQgKikgZWxlbWVudDsKKwkJCQkJY2hhcgkgICAq ZG9tYWluX3NjaGVtYSA9IE5VTEw7CisKKwkJCQkJLyoKKwkJCQkJICogRE9NQUlOJ3Mgc2NoZW1h IG11c3QgdGhlIHNhbWUgYXMgdGhlIHRvIGJlIGNyZWF0ZWQKKwkJCQkJICogc2NoZW1hIGlmIGxl bmd0aCBvZiBkb21haW5uYW1lID4gMyB3aWxsIGZhaWwgYXQKKwkJCQkJICogRGVjb25zdHJ1Y3RR dWFsaWZpZWROYW1lLAorCQkJCQkgKi8KKwkJCQkJaWYgKGxpc3RfbGVuZ3RoKGVscC0+ZG9tYWlu bmFtZSkgPT0gMikKKwkJCQkJeworCQkJCQkJZG9tYWluX3NjaGVtYSA9IHN0clZhbChsaXN0X250 aChlbHAtPmRvbWFpbm5hbWUsIDApKTsKKwkJCQkJCXNldFNjaGVtYU5hbWUoY3h0LnNjaGVtYW5h bWUsICZkb21haW5fc2NoZW1hKTsKKwkJCQkJfQorCQkJCQllbHNlIGlmIChsaXN0X2xlbmd0aChl bHAtPmRvbWFpbm5hbWUpID09IDMpCisJCQkJCXsKKwkJCQkJCWRvbWFpbl9zY2hlbWEgPSBzdHJW YWwobGlzdF9udGgoZWxwLT5kb21haW5uYW1lLCAxKSk7CisJCQkJCQlzZXRTY2hlbWFOYW1lKGN4 dC5zY2hlbWFuYW1lLCAmZG9tYWluX3NjaGVtYSk7CisJCQkJCX0KKwkJCQkJY3h0LmRvbWFpbnMg PSBsYXBwZW5kKGN4dC5kb21haW5zLCBlbGVtZW50KTsKKwkJCQl9CisJCQkJYnJlYWs7CisKIAkJ CWRlZmF1bHQ6CiAJCQkJZWxvZyhFUlJPUiwgInVucmVjb2duaXplZCBub2RlIHR5cGU6ICVkIiwK IAkJCQkJIChpbnQpIG5vZGVUYWcoZWxlbWVudCkpOwpAQCAtNDExNCw2ICs0MTQwLDcgQEAgdHJh bnNmb3JtQ3JlYXRlU2NoZW1hU3RtdEVsZW1lbnRzKExpc3QgKnNjaGVtYUVsdHMsIGNvbnN0IGNo YXIgKnNjaGVtYU5hbWUpCiAJfQogCiAJcmVzdWx0ID0gTklMOworCXJlc3VsdCA9IGxpc3RfY29u Y2F0KHJlc3VsdCwgY3h0LmRvbWFpbnMpOwogCXJlc3VsdCA9IGxpc3RfY29uY2F0KHJlc3VsdCwg Y3h0LnNlcXVlbmNlcyk7CiAJcmVzdWx0ID0gbGlzdF9jb25jYXQocmVzdWx0LCBjeHQudGFibGVz KTsKIAlyZXN1bHQgPSBsaXN0X2NvbmNhdChyZXN1bHQsIGN4dC52aWV3cyk7CmRpZmYgLS1naXQg YS9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRlLmluLmMgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBs ZXRlLmluLmMKaW5kZXggYmJkMDg3NzBjMy4uNTQyNDI5NzEyYSAxMDA2NDQKLS0tIGEvc3JjL2Jp bi9wc3FsL3RhYi1jb21wbGV0ZS5pbi5jCisrKyBiL3NyYy9iaW4vcHNxbC90YWItY29tcGxldGUu aW4uYwpAQCAtMjEzNSw3ICsyMTM1LDcgQEAgbWF0Y2hfcHJldmlvdXNfd29yZHMoaW50IHBhdHRl cm5faWQsCiAJewogCQkvKiBvbmx5IHNvbWUgb2JqZWN0IHR5cGVzIGNhbiBiZSBjcmVhdGVkIGFz IHBhcnQgb2YgQ1JFQVRFIFNDSEVNQSAqLwogCQlpZiAoSGVhZE1hdGNoZXMoIkNSRUFURSIsICJT Q0hFTUEiKSkKLQkJCUNPTVBMRVRFX1dJVEgoIlRBQkxFIiwgIlZJRVciLCAiSU5ERVgiLCAiU0VR VUVOQ0UiLCAiVFJJR0dFUiIsCisJCQlDT01QTEVURV9XSVRIKCJUQUJMRSIsICJWSUVXIiwgIklO REVYIiwgIlNFUVVFTkNFIiwgIlRSSUdHRVIiLCAiRE9NQUlOIiwKIAkJCS8qIGZvciBJTkRFWCBh bmQgVEFCTEUvU0VRVUVOQ0UsIHJlc3BlY3RpdmVseSAqLwogCQkJCQkJICAiVU5JUVVFIiwgIlVO TE9HR0VEIik7CiAJCWVsc2UKQEAgLTMyOTMsMTUgKzMyOTMsMTUgQEAgbWF0Y2hfcHJldmlvdXNf d29yZHMoaW50IHBhdHRlcm5faWQsCiAJZWxzZSBpZiAoTWF0Y2hlcygiQ1JFQVRFIiwgIkRBVEFC QVNFIiwgTWF0Y2hBbnksICJTVFJBVEVHWSIpKQogCQlDT01QTEVURV9XSVRIKCJXQUxfTE9HIiwg IkZJTEVfQ09QWSIpOwogCi0JLyogQ1JFQVRFIERPTUFJTiAqLwotCWVsc2UgaWYgKE1hdGNoZXMo IkNSRUFURSIsICJET01BSU4iLCBNYXRjaEFueSkpCisJLyogQ1JFQVRFIERPTUFJTiAtLS0gaXMg YWxsb3dlZCBpbnNpZGUgQ1JFQVRFIFNDSEVNQSwgc28gdXNlIFRhaWxNYXRjaGVzICovCQorCWVs c2UgaWYgKFRhaWxNYXRjaGVzKCJDUkVBVEUiLCAiRE9NQUlOIiwgTWF0Y2hBbnkpKQogCQlDT01Q TEVURV9XSVRIKCJBUyIpOwotCWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJET01BSU4iLCBN YXRjaEFueSwgIkFTIikpCisJZWxzZSBpZiAoVGFpbE1hdGNoZXMoIkNSRUFURSIsICJET01BSU4i LCBNYXRjaEFueSwgIkFTIikpCiAJCUNPTVBMRVRFX1dJVEhfU0NIRU1BX1FVRVJZKFF1ZXJ5X2Zv cl9saXN0X29mX2RhdGF0eXBlcyk7Ci0JZWxzZSBpZiAoTWF0Y2hlcygiQ1JFQVRFIiwgIkRPTUFJ TiIsIE1hdGNoQW55LCAiQVMiLCBNYXRjaEFueSkpCisJZWxzZSBpZiAoVGFpbE1hdGNoZXMoIkNS RUFURSIsICJET01BSU4iLCBNYXRjaEFueSwgIkFTIiwgTWF0Y2hBbnkpKQogCQlDT01QTEVURV9X SVRIKCJDT0xMQVRFIiwgIkRFRkFVTFQiLCAiQ09OU1RSQUlOVCIsCiAJCQkJCSAgIk5PVCBOVUxM IiwgIk5VTEwiLCAiQ0hFQ0sgKCIpOwotCWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJET01B SU4iLCBNYXRjaEFueSwgIkNPTExBVEUiKSkKKwllbHNlIGlmIChUYWlsTWF0Y2hlcygiQ1JFQVRF IiwgIkRPTUFJTiIsIE1hdGNoQW55LCAiQ09MTEFURSIpKQogCQlDT01QTEVURV9XSVRIX1NDSEVN QV9RVUVSWShRdWVyeV9mb3JfbGlzdF9vZl9jb2xsYXRpb25zKTsKIAogCS8qIENSRUFURSBFWFRF TlNJT04gKi8KZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3Nj aGVtYS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0Cmlu ZGV4IDkzMzAyYTA3ZWYuLmQyYjk3OTExY2MgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9jcmVhdGVfc2NoZW1hLm91dApAQCAtNTgsNiArNTgsNTcgQEAgQ1JFQVRFIFNDSEVNQSByZWdy ZXNzX3NjaGVtYV8xIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiAgIEVYRUNVVEUgRlVOQ1RJ T04gc2NoZW1hX3RyaWcubm9fZnVuYygpOwogRVJST1I6ICBDUkVBVEUgc3BlY2lmaWVzIGEgc2No ZW1hIChzY2hlbWFfbm90X2V4aXN0aW5nKSBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIGJlaW5nIGNy ZWF0ZWQgKHJlZ3Jlc3Nfc2NoZW1hXzEpCiBSRVNFVCBST0xFOworLS0gQ2FzZXMgd2hlcmUgdGhl IHNjaGVtYSBjcmVhdGlvbiB3aXRoIGRvbWFpbi4KKy0tZmFpbC4gY2Fubm90IGNyZWF0ZSBkb21h aW4gdG8gb3RoZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9S SVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgY3JlYXRlIHRhYmxlIHQoYSBzcykKKyAgY3JlYXRlIGRv bWFpbiBwdWJsaWMuc3MgYXMgdGV4dCBub3QgbnVsbCBkZWZhdWx0ICdoZWxsbycgY29uc3RyYWlu dCBubiBjaGVjayAodmFsdWUgPD4gJ2hlbGxvJyk7CitFUlJPUjogIENSRUFURSBzcGVjaWZpZXMg YSBzY2hlbWEgKHB1YmxpYykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVkIChy ZWdyZXNzX3NjaGVtYV8yKQorLS1mYWlsLiBjYW5ub3QgY3JlYXRlIGRvbWFpbiB0byBvdGhlciBz Y2hlbWEKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBBVVRIT1JJWkFUSU9OIENVUlJF TlRfUk9MRQorICBjcmVhdGUgdGFibGUgdChhIHNzKQorICBjcmVhdGUgZG9tYWluIHBvc3RncmVz LnB1YmxpYy5zcyBhcyB0ZXh0IG5vdCBudWxsIGRlZmF1bHQgJ2hlbGxvJyBjb25zdHJhaW50IG5u IGNoZWNrICh2YWx1ZSA8PiAnaGVsbG8nKTsKK0VSUk9SOiAgQ1JFQVRFIHNwZWNpZmllcyBhIHNj aGVtYSAocHVibGljKSBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHJlZ3Jl c3Nfc2NoZW1hXzIpCistLWZhaWwuIGZvcndhcmQgcmVmZXJlbmNlcywgbmVlZCByZW9yZGVyLgor Q1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8yIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xF CisgIGNyZWF0ZSBkb21haW4gc3MxIGFzIHNzCisgIGNyZWF0ZSBkb21haW4gc3MgYXMgdGV4dDsK K0VSUk9SOiAgdHlwZSAic3MiIGRvZXMgbm90IGV4aXN0CistLW9rLCBxdWFsaWZpZWQgc2NoZW1h IG5hbWUgZm9yIGRvbWFpbiBzaG91bGQgYmUgc2FtZSBhcyB0aGUgY3JlYXRlZCBzY2hlbWEuCitD UkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUK KyAgY3JlYXRlIHRhYmxlIHQoYSByZWdyZXNzX3NjaGVtYV8yLnNzKQorICBjcmVhdGUgZG9tYWlu IHJlZ3Jlc3Nfc2NoZW1hXzIuc3MgYXMgdGV4dCBub3QgbnVsbDsKK1xkRCByZWdyZXNzX3NjaGVt YV8yLioKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBkb21haW5zCisgICAg ICBTY2hlbWEgICAgICB8IE5hbWUgfCBUeXBlIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZh dWx0IHwgQ2hlY2sgCistLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tCisgcmVncmVzc19zY2hlbWFfMiB8IHNzICAg fCB0ZXh0IHwgICAgICAgICAgIHwgbm90IG51bGwgfCAgICAgICAgIHwgCisoMSByb3cpCisKKy0t b2ssIG5vIHF1YWxpZmllZCBzY2hlbWEgbmFtZSBmb3IgZG9tYWluLgorQ1JFQVRFIFNDSEVNQSBy ZWdyZXNzX3NjaGVtYV8zIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIGNyZWF0ZSB2aWV3 IHRlc3QgYXMgc2VsZWN0ICdoZWxsbyc6OnNzIGFzIHRlc3QKKyAgY3JlYXRlIHRhYmxlIHQoYSBz czEpCisgIGNyZWF0ZSBkb21haW4gc3MgYXMgdGV4dCBub3QgbnVsbAorICBjcmVhdGUgZG9tYWlu IHNzMSBhcyBzczsKK1xkRCByZWdyZXNzX3NjaGVtYV8zLioKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIExpc3Qgb2YgZG9tYWlucworICAgICAgU2NoZW1hICAgICAgfCBOYW1l IHwgICAgICAgIFR5cGUgICAgICAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCB8 IENoZWNrIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLQorIHJlZ3Jlc3Nfc2NoZW1h XzMgfCBzcyAgIHwgdGV4dCAgICAgICAgICAgICAgICB8ICAgICAgICAgICB8IG5vdCBudWxsIHwg ICAgICAgICB8IAorIHJlZ3Jlc3Nfc2NoZW1hXzMgfCBzczEgIHwgcmVncmVzc19zY2hlbWFfMy5z cyB8ICAgICAgICAgICB8ICAgICAgICAgIHwgICAgICAgICB8IAorKDIgcm93cykKKworRFJPUCBT Q0hFTUEgcmVncmVzc19zY2hlbWFfMiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0 byAyIG90aGVyIG9iamVjdHMKK0RFVEFJTDogIGRyb3AgY2FzY2FkZXMgdG8gdHlwZSByZWdyZXNz X3NjaGVtYV8yLnNzCitkcm9wIGNhc2NhZGVzIHRvIHRhYmxlIHJlZ3Jlc3Nfc2NoZW1hXzIudAor RFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMyBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNj YWRlcyB0byA0IG90aGVyIG9iamVjdHMKK0RFVEFJTDogIGRyb3AgY2FzY2FkZXMgdG8gdHlwZSBy ZWdyZXNzX3NjaGVtYV8zLnNzCitkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hlbWFf My5zczEKK2Ryb3AgY2FzY2FkZXMgdG8gdGFibGUgcmVncmVzc19zY2hlbWFfMy50Citkcm9wIGNh c2NhZGVzIHRvIHZpZXcgcmVncmVzc19zY2hlbWFfMy50ZXN0CiAtLSBDYXNlcyB3aGVyZSB0aGUg c2NoZW1hIGNyZWF0aW9uIHN1Y2NlZWRzLgogLS0gVGhlIHNjaGVtYSBjcmVhdGVkIG1hdGNoZXMg dGhlIHJvbGUgbmFtZS4KIENSRUFURSBTQ0hFTUEgQVVUSE9SSVpBVElPTiByZWdyZXNzX2NyZWF0 ZV9zY2hlbWFfcm9sZQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3Nj aGVtYS5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbAppbmRleCAx YjcwNjQyNDdhLi40MjFhYWE0MjRlIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9j cmVhdGVfc2NoZW1hLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1h LnNxbApAQCAtNDcsNiArNDcsMzkgQEAgQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8xIEFV VEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiAgIEVYRUNVVEUgRlVOQ1RJT04gc2NoZW1hX3RyaWcu bm9fZnVuYygpOwogUkVTRVQgUk9MRTsKIAorLS0gQ2FzZXMgd2hlcmUgdGhlIHNjaGVtYSBjcmVh dGlvbiB3aXRoIGRvbWFpbi4KKworLS1mYWlsLiBjYW5ub3QgY3JlYXRlIGRvbWFpbiB0byBvdGhl ciBzY2hlbWEKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBBVVRIT1JJWkFUSU9OIENV UlJFTlRfUk9MRQorICBjcmVhdGUgdGFibGUgdChhIHNzKQorICBjcmVhdGUgZG9tYWluIHB1Ymxp Yy5zcyBhcyB0ZXh0IG5vdCBudWxsIGRlZmF1bHQgJ2hlbGxvJyBjb25zdHJhaW50IG5uIGNoZWNr ICh2YWx1ZSA8PiAnaGVsbG8nKTsKKy0tZmFpbC4gY2Fubm90IGNyZWF0ZSBkb21haW4gdG8gb3Ro ZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9SSVpBVElPTiBD VVJSRU5UX1JPTEUKKyAgY3JlYXRlIHRhYmxlIHQoYSBzcykKKyAgY3JlYXRlIGRvbWFpbiBwb3N0 Z3Jlcy5wdWJsaWMuc3MgYXMgdGV4dCBub3QgbnVsbCBkZWZhdWx0ICdoZWxsbycgY29uc3RyYWlu dCBubiBjaGVjayAodmFsdWUgPD4gJ2hlbGxvJyk7CisKKy0tZmFpbC4gZm9yd2FyZCByZWZlcmVu Y2VzLCBuZWVkIHJlb3JkZXIuCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9S SVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgY3JlYXRlIGRvbWFpbiBzczEgYXMgc3MKKyAgY3JlYXRl IGRvbWFpbiBzcyBhcyB0ZXh0OworCistLW9rLCBxdWFsaWZpZWQgc2NoZW1hIG5hbWUgZm9yIGRv bWFpbiBzaG91bGQgYmUgc2FtZSBhcyB0aGUgY3JlYXRlZCBzY2hlbWEuCitDUkVBVEUgU0NIRU1B IHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgY3JlYXRlIHRh YmxlIHQoYSByZWdyZXNzX3NjaGVtYV8yLnNzKQorICBjcmVhdGUgZG9tYWluIHJlZ3Jlc3Nfc2No ZW1hXzIuc3MgYXMgdGV4dCBub3QgbnVsbDsKK1xkRCByZWdyZXNzX3NjaGVtYV8yLioKKworLS1v aywgbm8gcXVhbGlmaWVkIHNjaGVtYSBuYW1lIGZvciBkb21haW4uCitDUkVBVEUgU0NIRU1BIHJl Z3Jlc3Nfc2NoZW1hXzMgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgY3JlYXRlIHZpZXcg dGVzdCBhcyBzZWxlY3QgJ2hlbGxvJzo6c3MgYXMgdGVzdAorICBjcmVhdGUgdGFibGUgdChhIHNz MSkKKyAgY3JlYXRlIGRvbWFpbiBzcyBhcyB0ZXh0IG5vdCBudWxsCisgIGNyZWF0ZSBkb21haW4g c3MxIGFzIHNzOworXGREIHJlZ3Jlc3Nfc2NoZW1hXzMuKgorCitEUk9QIFNDSEVNQSByZWdyZXNz X3NjaGVtYV8yIENBU0NBREU7CitEUk9QIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8zIENBU0NBREU7 CisKIC0tIENhc2VzIHdoZXJlIHRoZSBzY2hlbWEgY3JlYXRpb24gc3VjY2VlZHMuCiAtLSBUaGUg c2NoZW1hIGNyZWF0ZWQgbWF0Y2hlcyB0aGUgcm9sZSBuYW1lLgogQ1JFQVRFIFNDSEVNQSBBVVRI T1JJWkFUSU9OIHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlCi0tIAoyLjM0LjEKCg== --000000000000412fc806280d7252--