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 1uqlgr-00CnwM-8i for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Aug 2025 04:53:51 +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 1uqlgq-000sGj-D7 for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Aug 2025 04:53:49 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uqlgp-000sGb-Ul for pgsql-hackers@lists.postgresql.org; Tue, 26 Aug 2025 04:53:48 +0000 Received: from mail-ua1-x934.google.com ([2607:f8b0:4864:20::934]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1uqlgn-001tFO-2c for pgsql-hackers@lists.postgresql.org; Tue, 26 Aug 2025 04:53:48 +0000 Received: by mail-ua1-x934.google.com with SMTP id a1e0cc1a2514c-8921eb4be94so3489773241.2 for ; Mon, 25 Aug 2025 21:53:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1756184024; x=1756788824; 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=DYPlDEtslcoBVtXMwDsaSkNRO0ajAjxlZxOYCucC3Zk=; b=TJVYqZGQfeiKB4hNjMY+j7nDHHpoMWqhuA1Fo/OiUhSIKwvVQhS4qWxRjoxI31ScBv FwMhJaz/MiClNuuXbh4w7xABpRGnH8TqSgqqUjaDb2J/znDHxKBfkMOnH+uQPFA9HQwJ 9FR1oyeYFuIqKg9GG4WpfqNbXzKNXoh5gV1jpwzi0bSVzG5a8DBUUzSn0YkK74TNc0rf bqLZUenAv/v3LxIygkRYX4fSoHIqen/A1hRdxBQpOVwQcMOd6uxqDnA56gvRiSwWWlsi xwVpf5QmNR1RzXXXfLJwkcc3tvvExsAd2Iapukm5v9c5tJXmmYgN9Jn5CXFQCmh2gNgT N9gg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756184024; x=1756788824; 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=DYPlDEtslcoBVtXMwDsaSkNRO0ajAjxlZxOYCucC3Zk=; b=E5r4j+tX1Fm470GCbhb0B8nSrnmnUAhI89wWUk/H0vaHEBDLiNofaNUWkg/P5UWC52 LDgEazsvzdJeQAUIINliJfzAbkrNgfskfogqENSss1GAP9zIUWtA84i3td4IvkbMRWV7 aZtvU2rDCVgxBQWeeDceGYbGXttVsaa7sVfgxtKVAk13vfbb5Gj/meaD2Pxj0c06g5XB ZjxFo+cXGDpqdluQ2b3jSJi/mLsQ8ZiHGUP1J6vMMxKoZ9m/uw2b6S3RRLINsZRkwpdk kIgyqnTkInIhMOV49sYhFdPuyxtKFKwckLohrhxT6f0prPQJqlvnFrmFGIt19N5RsHoR KeUA== X-Forwarded-Encrypted: i=1; AJvYcCVYIyTWmpOLlZUMBRiP5T3m4B1EuL9xBd5MU4TeDZ8m8lqmsx5fpO+lYL/wCtRsgT8mQPCnErMqfzKkoupN@lists.postgresql.org X-Gm-Message-State: AOJu0YwA5+9RaO2jNThdzyu9Jh0R5q44kuE4RzDQ0hDFRCEzNEhPcgTp c/cFHStAU6Uj0r1IM5LrGFTNeGWegxRtTcdN0Kfw0PEUX1w3yhQnpVPhlBXwbHOBotXBLfpKi2W ozoP4orz0mqTfaNEXPPsswLAJImE9Av4= X-Gm-Gg: ASbGncsMkVTeX2tMZ2Q9rvflWlZaVifrYyV51pKekPAKx9q9pZV4AzhZQpvEB5BACaA cf3E0UuaDUpQTJjFGAF11NUmbM5v4Wvv/z68Sy2a4JzEFH4FEWgET1bmf+BkAkk1JeQRY7pR8js 4TReGpdtW0UL+fAjT0GsK2g7sXy6GIZyFpu0n9NxU+UOGjVLkAUSjzhqQlF5KANR8D8+YAOZ9OS pyFRtEpi0ELlzGHvQJ7CGlV0aTJxW6wxmuvjDopLgnBQEmnZXuNShgRgFgCIcbHF4xAAm0= X-Google-Smtp-Source: AGHT+IEFed5l4maDQIJXhpeg/fiBSQXWND5vtPtAg1BOciZHsgQlsEMDe6P7bWTWei9RNa6yhOzwDunqr19fTcq58+s= X-Received: by 2002:a05:6102:40d4:20b0:521:615:fc24 with SMTP id ada2fe7eead31-5210615ffa4mr1899168137.26.1756184023640; Mon, 25 Aug 2025 21:53:43 -0700 (PDT) MIME-Version: 1.0 References: <1898722.1732732780@sss.pgh.pa.us> <2007224.1732773174@sss.pgh.pa.us> <1075425.1732993688@sss.pgh.pa.us> <345c20e5-a6d7-477a-9598-982661bb5740@eisentraut.org> <1990479.1733256458@sss.pgh.pa.us> <499425.1733936916@sss.pgh.pa.us> In-Reply-To: From: jian he Date: Tue, 26 Aug 2025 12:53:07 +0800 X-Gm-Features: Ac12FXxMliRrjxiVuDt5SUv1JrXN9WLNNUBi9KuuVHF66IaZv1MYe4Vpr82AZqc Message-ID: Subject: Re: CREATE SCHEMA ... CREATE DOMAIN support To: Kirill Reshke Cc: Tom Lane , Peter Eisentraut , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000e3d97d063d3d74f7" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000e3d97d063d3d74f7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Aug 22, 2025 at 4:59=E2=80=AFPM Kirill Reshke wrote: > > > > > the full in 11.1 is: > > 11.1 > > > > ::=3D > > > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > | > > > I also added CREATE SCHEMA CREATE TYPE. > With these patches applied: > ``` > reshke=3D# create schema sh1 create type tp as (i text); > ERROR: unrecognized node type: 226 > ``` > Without patches it will be a syntax error. > This issue is solved in V7. > > Also we need a better error message in this: > "CREATE SCHEMA ... CREATE OBJECT currently not support for..." > > First of all, is it s/support/supported/ ? Also would vote for > something like "%s is not yet supported inside schema definition." > WDYT? > "%s is not yet supported inside schema definition." is good option, but how about ereport(ERROR, errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("CREATE SCHEMA ... CREATE %s currently not supported", asc_toupper(stringify_objtype(stmt->kind), strlen(stringify_objtype(stmt->kind))))) stringify_objtype will produce the object type name, then capitalize it. IMHO, now the error message would be more explicit. +--fail. only support collation object for DefineStmt node +CREATE SCHEMA regress_schema_4 AUTHORIZATION CURRENT_ROLE + CREATE AGGREGATE balk(int4)(SFUNC =3D int4_sum(int8, int4),STYPE =3D int8, PARALLEL =3D SAFE, INITCOND =3D '0'); +ERROR: CREATE SCHEMA ... CREATE AGGREGATE currently not supported not all CI test machine encoding is UTF8, CREATE COLLATION depends on encod= ing, if fail, error message may different on different machines, So we have to p= ut some of the tests to collate.icu.utf8.sql. Please check the latest attached. v7-0001-Don-t-try-to-re-order-the-subcommands-of-CREATE-SCHEMA.patch v7-0002-CREATE-SCHEMA-CREATE-DOMAIN.patch v7-0003-CREATE-SCHEMA-CREATE-COLLATION.patch v7-0004-CREATE-SCHEMA-CREATE-TYPE.patch --000000000000e3d97d063d3d74f7 Content-Type: text/x-patch; charset="US-ASCII"; name="v7-0002-CREATE-SCHEMA-CREATE-DOMAIN.patch" Content-Disposition: attachment; filename="v7-0002-CREATE-SCHEMA-CREATE-DOMAIN.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mes2iuav0 RnJvbSAyMzQ3OTZiYzE0YTNhZTg0MTM4MzM3MThhODZhZWZmYmMxMTBhZTQ4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMTggQXVnIDIwMjUgMTY6Mjg6MzcgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3 IDIvNF0gQ1JFQVRFIFNDSEVNQSBDUkVBVEUgRE9NQUlOCgpTUUwgc3RhbmRhcmQgYWxsb3cgZG9t YWluIHRvIGJlIHNwZWNpZmllZCB3aXRoIENSRUFURSBTQ0hFTUEKc3RhdGVtZW50LiBUaGlzIHBh dGNoIGFkZHMgc3VwcG9ydCBpbiBQb3N0Z3JlU1FMIGZvciB0aGF0LgoKRm9yIGV4YW1wbGU6CiAg ICBDUkVBVEUgU0NIRU1BIHNjaGVtYV9uYW1lIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiAg ICBjcmVhdGUgZG9tYWluIHNzIGFzIHRleHQgbm90IG51bGw7CgpUaGUgZG9tYWluIHdpbGwgYmUg Y3JlYXRlZCB3aXRoaW4gdGhlIHRvIGJlIGNyZWF0ZWQgc2NoZW1hLgpUaGUgZG9tYWluIG5hbWUg Y2FuIGJlIHNjaGVtYS1xdWFsaWZpZWQgb3IgZGF0YWJhc2UtcXVhbGlmaWVkLApob3dldmVyIGl0 J3Mgbm90IGFsbG93ZWQgdG8gbGV0IGRvbWFpbiBjcmVhdGUgd2l0aGluIGEgZGlmZmVyZW50IHNj aGVtYS4KCkF1dGhvcjogS2lyaWxsIFJlc2hrZSA8cmVzaGtla2lyaWxsQGdtYWlsLmNvbT4KQXV0 aG9yOiBKaWFuIEhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ClJldmlld2VkLWJ5OiBB bHZhcm8gSGVycmVyYSA8YWx2aGVycmVAYWx2aC5uby1pcC5vcmc+ClJldmlld2VkLWJ5OiBUb20g TGFuZSA8dGdsQHNzcy5wZ2gucGEudXM+CgpEaXNjdXNzaW9uOiBodHRwczovL3Bvc3Rnci5lcy9t L0NBTGRTU1BoNGpVU0RzV3UzSzU4aGpPNjB3blRSUjBEdU80Q0tSY3dhOEVWdU9TZlh4Z0BtYWls LmdtYWlsLmNvbQotLS0KIGRvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NjaGVtYS5zZ21sICAgICAg ICAgICB8ICA0ICstCiBzcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55ICAgICAgICAgICAgICAgICAg ICAgfCAgMSArCiBzcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jICAgICAgICAgICAg fCAyNSArKysrKysrKysKIHNyYy9iaW4vcHNxbC90YWItY29tcGxldGUuaW4uYyAgICAgICAgICAg ICAgICB8IDEyICsrLS0KIC4uLi9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dCAgICAgICAgICAg ICAgICB8ICA0ICstCiAuLi4vdGVzdF9kZGxfZGVwYXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwg ICAgfCAgMyArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dCAg IHwgNTYgKysrKysrKysrKysrKysrKysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3Nj aGVtYS5zcWwgICAgICAgIHwgMzUgKysrKysrKysrKysrCiA4IGZpbGVzIGNoYW5nZWQsIDEzMCBp bnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwv cmVmL2NyZWF0ZV9zY2hlbWEuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NjaGVtYS5z Z21sCmluZGV4IDYyNTc5M2E2YjY3Li43OTE4NmQyYjkzNiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVf c2NoZW1hLnNnbWwKQEAgLTEwMCw4ICsxMDAsOCBAQCBDUkVBVEUgU0NIRU1BIElGIE5PVCBFWElT VFMgQVVUSE9SSVpBVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cm9sZV9zcAog ICAgICAgPGxpc3RpdGVtPgogICAgICAgIDxwYXJhPgogICAgICAgICBBbiBTUUwgc3RhdGVtZW50 IGRlZmluaW5nIGFuIG9iamVjdCB0byBiZSBjcmVhdGVkIHdpdGhpbiB0aGUKLSAgICAgICAgc2No ZW1hLiBDdXJyZW50bHksIG9ubHkgPGNvbW1hbmQ+Q1JFQVRFCi0gICAgICAgIFRBQkxFPC9jb21t YW5kPiwgPGNvbW1hbmQ+Q1JFQVRFIFZJRVc8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUKKyAg ICAgICAgc2NoZW1hLiBDdXJyZW50bHksIG9ubHkgPGNvbW1hbmQ+Q1JFQVRFIERPTUFJTjwvY29t bWFuZD4KKyAgICAgICAgPGNvbW1hbmQ+Q1JFQVRFIFRBQkxFPC9jb21tYW5kPiwgPGNvbW1hbmQ+ Q1JFQVRFIFZJRVc8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUKICAgICAgICAgSU5ERVg8L2Nv bW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUgU0VRVUVOQ0U8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVB VEUKICAgICAgICAgVFJJR0dFUjwvY29tbWFuZD4gYW5kIDxjb21tYW5kPkdSQU5UPC9jb21tYW5k PiBhcmUgYWNjZXB0ZWQgYXMgY2xhdXNlcwogICAgICAgICB3aXRoaW4gPGNvbW1hbmQ+Q1JFQVRF IFNDSEVNQTwvY29tbWFuZD4uIE90aGVyIGtpbmRzIG9mIG9iamVjdHMgbWF5CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55IGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpp bmRleCBkYjQzMDM0YjlkYi4uM2FjYTUwOGIwOGYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3Bh cnNlci9ncmFtLnkKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpAQCAtMTYyNiw2ICsx NjI2LDcgQEAgc2NoZW1hX3N0bXQ6CiAJCQl8IENyZWF0ZVRyaWdTdG10CiAJCQl8IEdyYW50U3Rt dAogCQkJfCBWaWV3U3RtdAorCQkJfCBDcmVhdGVEb21haW5TdG10CiAJCTsKIAogCmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jIGIvc3JjL2JhY2tlbmQvcGFy c2VyL3BhcnNlX3V0aWxjbWQuYwppbmRleCA3NDY3MmE0NThkNS4uMjE4ZWM2ZjA5ODIgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKKysrIGIvc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYwpAQCAtNDE0Niw2ICs0MTQ2LDMxIEBAIHRyYW5zZm9y bUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKnNjaGVt YUVsdHMsCiAJCQkJZWxlbWVudHMgPSBsYXBwZW5kKGVsZW1lbnRzLCBlbGVtZW50KTsKIAkJCQli cmVhazsKIAorCQkJY2FzZSBUX0NyZWF0ZURvbWFpblN0bXQ6CisJCQkJeworCQkJCQljaGFyCSAg ICpkb21haW5fc2NoZW1hID0gTlVMTDsKKwkJCQkJQ3JlYXRlRG9tYWluU3RtdCAqZWxwID0gKENy ZWF0ZURvbWFpblN0bXQgKikgZWxlbWVudDsKKworCQkJCQkvKgorCQkJCQkgKiBUaGUgc2NoZW1h IG9mIHRoZSBET01BSU4gbXVzdCBtYXRjaCB0aGUgc2NoZW1hIGJlaW5nIGNyZWF0ZWQuCisJCQkJ CSAqIElmIHRoZSBkb21haW4gbmFtZSBsZW5ndGggZXhjZWVkcyAzLCBpdCB3aWxsIGZhaWwgaW4K KwkJCQkJICogRGVjb25zdHJ1Y3RRdWFsaWZpZWROYW1lLgorCQkJCQkqLworCQkJCQlpZiAobGlz dF9sZW5ndGgoZWxwLT5kb21haW5uYW1lKSA9PSAyKQorCQkJCQkJZG9tYWluX3NjaGVtYSA9IHN0 clZhbChsaXN0X250aChlbHAtPmRvbWFpbm5hbWUsIDApKTsKKwkJCQkJZWxzZSBpZiAobGlzdF9s ZW5ndGgoZWxwLT5kb21haW5uYW1lKSA9PSAzKQorCQkJCQkJZG9tYWluX3NjaGVtYSA9IHN0clZh bChsaXN0X250aChlbHAtPmRvbWFpbm5hbWUsIDEpKTsKKworCQkJCQlpZiAoZG9tYWluX3NjaGVt YSAhPSBOVUxMICYmIHN0cmNtcChkb21haW5fc2NoZW1hLCBzY2hlbWFOYW1lKSAhPSAwKQorCQkJ CQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCQkJZXJyY29kZShFUlJDT0RFX0lOVkFMSURfU0NIRU1B X0RFRklOSVRJT04pLAorCQkJCQkJCQllcnJtc2coIkNSRUFURSBzcGVjaWZpZXMgYSBzY2hlbWEg KCVzKSAiCisJCQkJCQkJCQkgICAiZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVk ICglcykiLAorCQkJCQkJCQkJICAgc2NoZW1hTmFtZSwgZG9tYWluX3NjaGVtYSkpOworCQkJCQll bGVtZW50cyA9IGxhcHBlbmQoZWxlbWVudHMsIGVsZW1lbnQpOworCQkJCX0KKwkJCQlicmVhazsK KwogCQkJZGVmYXVsdDoKIAkJCQllbG9nKEVSUk9SLCAidW5yZWNvZ25pemVkIG5vZGUgdHlwZTog JWQiLAogCQkJCQkgKGludCkgbm9kZVRhZyhlbGVtZW50KSk7CmRpZmYgLS1naXQgYS9zcmMvYmlu L3BzcWwvdGFiLWNvbXBsZXRlLmluLmMgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRlLmluLmMK aW5kZXggOGIxMGYyMzEzZjMuLmQ3YThjNzY5ZTM1IDEwMDY0NAotLS0gYS9zcmMvYmluL3BzcWwv dGFiLWNvbXBsZXRlLmluLmMKKysrIGIvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5pbi5jCkBA IC0yMTc4LDcgKzIxNzgsNyBAQCBtYXRjaF9wcmV2aW91c193b3JkcyhpbnQgcGF0dGVybl9pZCwK IAl7CiAJCS8qIG9ubHkgc29tZSBvYmplY3QgdHlwZXMgY2FuIGJlIGNyZWF0ZWQgYXMgcGFydCBv ZiBDUkVBVEUgU0NIRU1BICovCiAJCWlmIChIZWFkTWF0Y2hlcygiQ1JFQVRFIiwgIlNDSEVNQSIp KQotCQkJQ09NUExFVEVfV0lUSCgiVEFCTEUiLCAiVklFVyIsICJJTkRFWCIsICJTRVFVRU5DRSIs ICJUUklHR0VSIiwKKwkJCUNPTVBMRVRFX1dJVEgoIlRBQkxFIiwgIlZJRVciLCAiSU5ERVgiLCAi U0VRVUVOQ0UiLCAiVFJJR0dFUiIsICJET01BSU4iLAogCQkJLyogZm9yIElOREVYIGFuZCBUQUJM RS9TRVFVRU5DRSwgcmVzcGVjdGl2ZWx5ICovCiAJCQkJCQkgICJVTklRVUUiLCAiVU5MT0dHRUQi KTsKIAkJZWxzZQpAQCAtMzM5OSwxNSArMzM5OSwxNSBAQCBtYXRjaF9wcmV2aW91c193b3Jkcyhp bnQgcGF0dGVybl9pZCwKIAllbHNlIGlmIChNYXRjaGVzKCJDUkVBVEUiLCAiREFUQUJBU0UiLCBN YXRjaEFueSwgIlNUUkFURUdZIikpCiAJCUNPTVBMRVRFX1dJVEgoIldBTF9MT0ciLCAiRklMRV9D T1BZIik7CiAKLQkvKiBDUkVBVEUgRE9NQUlOICovCi0JZWxzZSBpZiAoTWF0Y2hlcygiQ1JFQVRF IiwgIkRPTUFJTiIsIE1hdGNoQW55KSkKKwkvKiBDUkVBVEUgRE9NQUlOIC0tLSBpcyBhbGxvd2Vk IGluc2lkZSBDUkVBVEUgU0NIRU1BLCBzbyB1c2UgVGFpbE1hdGNoZXMgKi8KKwllbHNlIGlmIChU YWlsTWF0Y2hlcygiQ1JFQVRFIiwgIkRPTUFJTiIsIE1hdGNoQW55KSkKIAkJQ09NUExFVEVfV0lU SCgiQVMiKTsKLQllbHNlIGlmIChNYXRjaGVzKCJDUkVBVEUiLCAiRE9NQUlOIiwgTWF0Y2hBbnks ICJBUyIpKQorCWVsc2UgaWYgKFRhaWxNYXRjaGVzKCJDUkVBVEUiLCAiRE9NQUlOIiwgTWF0Y2hB bnksICJBUyIpKQogCQlDT01QTEVURV9XSVRIX1NDSEVNQV9RVUVSWShRdWVyeV9mb3JfbGlzdF9v Zl9kYXRhdHlwZXMpOwotCWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJET01BSU4iLCBNYXRj aEFueSwgIkFTIiwgTWF0Y2hBbnkpKQorCWVsc2UgaWYgKFRhaWxNYXRjaGVzKCJDUkVBVEUiLCAi RE9NQUlOIiwgTWF0Y2hBbnksICJBUyIsIE1hdGNoQW55KSkKIAkJQ09NUExFVEVfV0lUSCgiQ09M TEFURSIsICJERUZBVUxUIiwgIkNPTlNUUkFJTlQiLAogCQkJCQkgICJOT1QgTlVMTCIsICJOVUxM IiwgIkNIRUNLICgiKTsKLQllbHNlIGlmIChNYXRjaGVzKCJDUkVBVEUiLCAiRE9NQUlOIiwgTWF0 Y2hBbnksICJDT0xMQVRFIikpCisJZWxzZSBpZiAoVGFpbE1hdGNoZXMoIkNSRUFURSIsICJET01B SU4iLCBNYXRjaEFueSwgIkNPTExBVEUiKSkKIAkJQ09NUExFVEVfV0lUSF9TQ0hFTUFfUVVFUlko UXVlcnlfZm9yX2xpc3Rfb2ZfY29sbGF0aW9ucyk7CiAKIAkvKiBDUkVBVEUgRVhURU5TSU9OICov CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQv Y3JlYXRlX3NjaGVtYS5vdXQgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhw ZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQKaW5kZXggOGFiNGViMDMzODUuLmQ3M2M0NzAyMDUxIDEw MDY0NAotLS0gYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQvY3Jl YXRlX3NjaGVtYS5vdXQKKysrIGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL2V4 cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0CkBAIC0xMyw3ICsxMyw5IEBAIENSRUFURSBTQ0hFTUEg SUYgTk9UIEVYSVNUUyBiYXo7CiBOT1RJQ0U6ICBzY2hlbWEgImJheiIgYWxyZWFkeSBleGlzdHMs IHNraXBwaW5nCiBDUkVBVEUgU0NIRU1BIGVsZW1lbnRfdGVzdAogICBDUkVBVEUgVEFCTEUgZm9v IChpZCBpbnQpCi0gIENSRUFURSBWSUVXIGJhciBBUyBTRUxFQ1QgKiBGUk9NIGZvbzsKKyAgQ1JF QVRFIFZJRVcgYmFyIEFTIFNFTEVDVCAqIEZST00gZm9vCisgIENSRUFURSBET01BSU4gZDEgQVMg SU5UOwogTk9USUNFOiAgRERMIHRlc3Q6IHR5cGUgc2ltcGxlLCB0YWcgQ1JFQVRFIFNDSEVNQQog Tk9USUNFOiAgRERMIHRlc3Q6IHR5cGUgc2ltcGxlLCB0YWcgQ1JFQVRFIFRBQkxFCiBOT1RJQ0U6 ICBEREwgdGVzdDogdHlwZSBzaW1wbGUsIHRhZyBDUkVBVEUgVklFVworTk9USUNFOiAgRERMIHRl c3Q6IHR5cGUgc2ltcGxlLCB0YWcgQ1JFQVRFIERPTUFJTgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv bW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL3NxbC9jcmVhdGVfc2NoZW1hLnNxbCBiL3NyYy90ZXN0 L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKaW5kZXggZjMx NGRjMmI4NDAuLjU3YWRhNDYyMDcwIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rf ZGRsX2RlcGFyc2Uvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsCisrKyBiL3NyYy90ZXN0L21vZHVsZXMv dGVzdF9kZGxfZGVwYXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKQEAgLTE0LDQgKzE0LDUgQEAg Q1JFQVRFIFNDSEVNQSBJRiBOT1QgRVhJU1RTIGJhejsKIAogQ1JFQVRFIFNDSEVNQSBlbGVtZW50 X3Rlc3QKICAgQ1JFQVRFIFRBQkxFIGZvbyAoaWQgaW50KQotICBDUkVBVEUgVklFVyBiYXIgQVMg U0VMRUNUICogRlJPTSBmb287CisgIENSRUFURSBWSUVXIGJhciBBUyBTRUxFQ1QgKiBGUk9NIGZv bworICBDUkVBVEUgRE9NQUlOIGQxIEFTIElOVDsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2NyZWF0ZV9zY2hlbWEub3V0CmluZGV4IDM4NTMwYzI4MmE5Li5kNjcxOGE5ZjUxOSAxMDA2NDQK LS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0CkBAIC0xMzEsNSArMTMx LDYxIEBAIENSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMSBBVVRIT1JJWkFUSU9OIENVUlJF TlRfUk9MRQogRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMSBDQVNDQURFOwogTk9USUNFOiAg ZHJvcCBjYXNjYWRlcyB0byB0YWJsZSByZWdyZXNzX3NjaGVtYV8xLnRhYgogUkVTRVQgUk9MRTsK Ky0tIENhc2VzIHdoZXJlIHRoZSBzY2hlbWEgY3JlYXRpb24gd2l0aCBkb21haW4uCistLWZhaWwu IGNhbm5vdCBDUkVBVEUgRE9NQUlOIHRvIG90aGVyIHNjaGVtYQorQ1JFQVRFIFNDSEVNQSByZWdy ZXNzX3NjaGVtYV8yIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFURSBET01BSU4g cHVibGljLnNzIEFTIFRFWFQgTk9UIE5VTEwgREVGQVVMVCAnaGVsbG8nIENPTlNUUkFJTlQgbm4g Q0hFQ0sgKFZBTFVFIDw+ICdoZWxsbycpCisgIENSRUFURSBUQUJMRSB0KGEgc3MpOworRVJST1I6 ICBDUkVBVEUgc3BlY2lmaWVzIGEgc2NoZW1hIChyZWdyZXNzX3NjaGVtYV8yKSBkaWZmZXJlbnQg ZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHB1YmxpYykKKy0tZmFpbC4gY2Fubm90IENSRUFU RSBET01BSU4gdG8gb3RoZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIg QVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJTiBwb3N0Z3Jlcy5wdWJs aWMuc3MgQVMgVEVYVCBOT1QgTlVMTCBDT05TVFJBSU5UIG5uIENIRUNLIChWQUxVRSA8PiAnaGVs bG8nKSBERUZBVUxUICdoZWxsbycKKyAgQ1JFQVRFIFRBQkxFIHQoYSBzcyk7CitFUlJPUjogIENS RUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHJlZ3Jlc3Nfc2NoZW1hXzIpIGRpZmZlcmVudCBmcm9t IHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocHVibGljKQorLS1mYWlsLiBpbXByb3BlciBxdWFsaWZp ZWQgbmFtZQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8yIENSRUFURSBET01BSU4gc3Mu cG9zdGdyZXMucmVncmVzc19zY2hlbWFfMi5zcyBBUyBURVhUOworRVJST1I6ICBpbXByb3BlciBx dWFsaWZpZWQgbmFtZSAodG9vIG1hbnkgZG90dGVkIG5hbWVzKTogc3MucG9zdGdyZXMucmVncmVz c19zY2hlbWFfMi5zcworLS1mYWlsLiBFeGVjdXRlIHN1YmNvbW1hbmRzIGluIG9yZGVyOyB3ZSBk byBub3QgaW1wbGljaXRseSByZW9yZGVyIHRoZW0uCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2No ZW1hXzIgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJTiBzczEgQVMg c3MKKyAgQ1JFQVRFIERPTUFJTiBzcyBBUyBURVhUOworRVJST1I6ICB0eXBlICJzcyIgZG9lcyBu b3QgZXhpc3QKK0xJTkUgMjogICBDUkVBVEUgRE9NQUlOIHNzMSBBUyBzcworICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KKy0tb2ssIHF1YWxpZmllZCBzY2hlbWEgbmFtZSBmb3IgZG9t YWluIHNob3VsZCBiZSBzYW1lIGFzIHRoZSBjcmVhdGVkIHNjaGVtYS4KK0NSRUFURSBTQ0hFTUEg cmVncmVzc19zY2hlbWFfMiBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQorICBDUkVBVEUgRE9N QUlOIHJlZ3Jlc3Nfc2NoZW1hXzIuc3MgQVMgVEVYVCBOT1QgTlVMTCBDT05TVFJBSU5UIG5uIENI RUNLIChWQUxVRSA8PiAnaGVsbG8nKSBERUZBVUxUICdoZWxsbycgQ09MTEFURSAiQyIKKyAgQ1JF QVRFIFRBQkxFIHQoYSByZWdyZXNzX3NjaGVtYV8yLnNzKTsKK1xkRCByZWdyZXNzX3NjaGVtYV8y LioKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBk b21haW5zCisgICAgICBTY2hlbWEgICAgICB8IE5hbWUgfCBUeXBlIHwgQ29sbGF0aW9uIHwgTnVs bGFibGUgfCAgICBEZWZhdWx0ICAgIHwgICAgICAgICAgICAgQ2hlY2sgICAgICAgICAgICAgIAor LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLSstLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyByZWdyZXNz X3NjaGVtYV8yIHwgc3MgICB8IHRleHQgfCBDICAgICAgICAgfCBub3QgbnVsbCB8ICdoZWxsbyc6 OnRleHQgfCBDSEVDSyAoVkFMVUUgPD4gJ2hlbGxvJzo6dGV4dCkKKygxIHJvdykKKworLS1vaywg bm8gcXVhbGlmaWVkIHNjaGVtYSBuYW1lIGZvciBkb21haW4uCitDUkVBVEUgU0NIRU1BIHJlZ3Jl c3Nfc2NoZW1hXzMgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJTiBz cyBBUyBURVhUICBDT05TVFJBSU5UIG5uIENIRUNLIChWQUxVRSA8PiAnaGVsbG8nKSBOT1QgTlVM TCBERUZBVUxUICdoZWxsbycKKyAgQ1JFQVRFIERPTUFJTiBzczEgQVMgc3MKKyAgQ1JFQVRFIFZJ RVcgdGVzdCBBUyBTRUxFQ1QgJ2hlbGxvJzo6c3MgQVMgdGVzdAorICBDUkVBVEUgVEFCTEUgdChh IHNzMSk7CitcZEQgcmVncmVzc19zY2hlbWFfMy4qCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBkb21haW5zCisgICAgICBTY2hlbWEg ICAgICB8IE5hbWUgfCAgICAgICAgVHlwZSAgICAgICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUg fCAgICBEZWZhdWx0ICAgIHwgICAgICAgICAgICAgQ2hlY2sgICAgICAgICAgICAgIAorLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyByZWdyZXNzX3NjaGVtYV8zIHwgc3MgICB8IHRleHQgICAgICAgICAgICAgICAgfCAgICAgICAg ICAgfCBub3QgbnVsbCB8ICdoZWxsbyc6OnRleHQgfCBDSEVDSyAoVkFMVUUgPD4gJ2hlbGxvJzo6 dGV4dCkKKyByZWdyZXNzX3NjaGVtYV8zIHwgc3MxICB8IHJlZ3Jlc3Nfc2NoZW1hXzMuc3MgfCAg ICAgICAgICAgfCAgICAgICAgICB8ICdoZWxsbyc6OnRleHQgfCAKKygyIHJvd3MpCisKK0RST1Ag U0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQ0FTQ0FERTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMg dG8gMiBvdGhlciBvYmplY3RzCitERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVz c19zY2hlbWFfMi5zcworZHJvcCBjYXNjYWRlcyB0byB0YWJsZSByZWdyZXNzX3NjaGVtYV8yLnQK K0RST1AgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzMgQ0FTQ0FERTsKK05PVElDRTogIGRyb3AgY2Fz Y2FkZXMgdG8gNCBvdGhlciBvYmplY3RzCitERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIHR5cGUg cmVncmVzc19zY2hlbWFfMy5zcworZHJvcCBjYXNjYWRlcyB0byB0eXBlIHJlZ3Jlc3Nfc2NoZW1h XzMuc3MxCitkcm9wIGNhc2NhZGVzIHRvIHZpZXcgcmVncmVzc19zY2hlbWFfMy50ZXN0Citkcm9w IGNhc2NhZGVzIHRvIHRhYmxlIHJlZ3Jlc3Nfc2NoZW1hXzMudAogLS0gQ2xlYW4gdXAKIERST1Ag Uk9MRSByZWdyZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3Jl Z3Jlc3Mvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRl X3NjaGVtYS5zcWwKaW5kZXggYjNkYzFjZmQ3NTguLjMwMjgxNDhlOTZiIDEwMDY0NAotLS0gYS9z cmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbApAQCAtNzEsNSArNzEsNDAgQEAgQ1JFQVRFIFNDSEVN QSByZWdyZXNzX3NjaGVtYV8xIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiBEUk9QIFNDSEVN QSByZWdyZXNzX3NjaGVtYV8xIENBU0NBREU7CiBSRVNFVCBST0xFOwogCistLSBDYXNlcyB3aGVy ZSB0aGUgc2NoZW1hIGNyZWF0aW9uIHdpdGggZG9tYWluLgorLS1mYWlsLiBjYW5ub3QgQ1JFQVRF IERPTUFJTiB0byBvdGhlciBzY2hlbWEKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBB VVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQorICBDUkVBVEUgRE9NQUlOIHB1YmxpYy5zcyBBUyBU RVhUIE5PVCBOVUxMIERFRkFVTFQgJ2hlbGxvJyBDT05TVFJBSU5UIG5uIENIRUNLIChWQUxVRSA8 PiAnaGVsbG8nKQorICBDUkVBVEUgVEFCTEUgdChhIHNzKTsKKy0tZmFpbC4gY2Fubm90IENSRUFU RSBET01BSU4gdG8gb3RoZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIg QVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJTiBwb3N0Z3Jlcy5wdWJs aWMuc3MgQVMgVEVYVCBOT1QgTlVMTCBDT05TVFJBSU5UIG5uIENIRUNLIChWQUxVRSA8PiAnaGVs bG8nKSBERUZBVUxUICdoZWxsbycKKyAgQ1JFQVRFIFRBQkxFIHQoYSBzcyk7CisKKy0tZmFpbC4g aW1wcm9wZXIgcXVhbGlmaWVkIG5hbWUKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBD UkVBVEUgRE9NQUlOIHNzLnBvc3RncmVzLnJlZ3Jlc3Nfc2NoZW1hXzIuc3MgQVMgVEVYVDsKKwor LS1mYWlsLiBFeGVjdXRlIHN1YmNvbW1hbmRzIGluIG9yZGVyOyB3ZSBkbyBub3QgaW1wbGljaXRs eSByZW9yZGVyIHRoZW0uCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQVVUSE9SSVpB VElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJTiBzczEgQVMgc3MKKyAgQ1JFQVRFIERP TUFJTiBzcyBBUyBURVhUOworCistLW9rLCBxdWFsaWZpZWQgc2NoZW1hIG5hbWUgZm9yIGRvbWFp biBzaG91bGQgYmUgc2FtZSBhcyB0aGUgY3JlYXRlZCBzY2hlbWEuCitDUkVBVEUgU0NIRU1BIHJl Z3Jlc3Nfc2NoZW1hXzIgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIERPTUFJ TiByZWdyZXNzX3NjaGVtYV8yLnNzIEFTIFRFWFQgTk9UIE5VTEwgQ09OU1RSQUlOVCBubiBDSEVD SyAoVkFMVUUgPD4gJ2hlbGxvJykgREVGQVVMVCAnaGVsbG8nIENPTExBVEUgIkMiCisgIENSRUFU RSBUQUJMRSB0KGEgcmVncmVzc19zY2hlbWFfMi5zcyk7CitcZEQgcmVncmVzc19zY2hlbWFfMi4q CisKKy0tb2ssIG5vIHF1YWxpZmllZCBzY2hlbWEgbmFtZSBmb3IgZG9tYWluLgorQ1JFQVRFIFND SEVNQSByZWdyZXNzX3NjaGVtYV8zIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFU RSBET01BSU4gc3MgQVMgVEVYVCAgQ09OU1RSQUlOVCBubiBDSEVDSyAoVkFMVUUgPD4gJ2hlbGxv JykgTk9UIE5VTEwgREVGQVVMVCAnaGVsbG8nCisgIENSRUFURSBET01BSU4gc3MxIEFTIHNzCisg IENSRUFURSBWSUVXIHRlc3QgQVMgU0VMRUNUICdoZWxsbyc6OnNzIEFTIHRlc3QKKyAgQ1JFQVRF IFRBQkxFIHQoYSBzczEpOworXGREIHJlZ3Jlc3Nfc2NoZW1hXzMuKgorCitEUk9QIFNDSEVNQSBy ZWdyZXNzX3NjaGVtYV8yIENBU0NBREU7CitEUk9QIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8zIENB U0NBREU7CisKIC0tIENsZWFuIHVwCiBEUk9QIFJPTEUgcmVncmVzc19jcmVhdGVfc2NoZW1hX3Jv bGU7Ci0tIAoyLjM0LjEKCg== --000000000000e3d97d063d3d74f7 Content-Type: text/x-patch; charset="US-ASCII"; name="v7-0003-CREATE-SCHEMA-CREATE-COLLATION.patch" Content-Disposition: attachment; filename="v7-0003-CREATE-SCHEMA-CREATE-COLLATION.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mes2iub61 RnJvbSBjZjk1YTQxNDI4YjAyMmU2MzYxZjlhNGEwZTAwYTFhOTQ3NGEzNGI2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IFR1ZSwgMjYgQXVnIDIwMjUgMTI6NDM6MTIgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3 IDMvNF0gQ1JFQVRFIFNDSEVNQSBDUkVBVEUgQ09MTEFUSU9OCgpTUUwgc3RhbmRhcmQgYWxsb3cg Y29sbGF0aW9uIHRvIGJlIHNwZWNpZmllZCB3aXRoIENSRUFURSBTQ0hFTUEKc3RhdGVtZW50LiBU aGlzIHBhdGNoIGFkZHMgc3VwcG9ydCBpbiBQb3N0Z3JlU1FMIGZvciB0aGF0LgoKRm9yIGV4YW1w bGU6CiAgICBDUkVBVEUgU0NIRU1BIHNjaGVtYV9uYW1lIENSRUFURSBDT0xMQVRJT04gY29sbF9p Y3VfdW5kIEZST00gInVuZC14LWljdSI7CgpUaGUgY29sbGF0aW9uIHdpbGwgYmUgY3JlYXRlZCB3 aXRoaW4gdGhlIHRvIGJlIGNyZWF0ZWQgc2NoZW1hLgpUaGUgY29sbGF0aW9uIG5hbWUgY2FuIGJl IHNjaGVtYS1xdWFsaWZpZWQgb3IgZGF0YWJhc2UtcXVhbGlmaWVkLApob3dldmVyIGl0J3Mgbm90 IGFsbG93ZWQgdG8gbGV0IGNvbGxhdGlvbiBjcmVhdGUgd2l0aGluIGEgZGlmZmVyZW50IHNjaGVt YS4KCk5vdGU6IHNyYy9iaW4vcHNxbC90YWItY29tcGxldGUuaW4uYyBjaGFuZ2VzIHNlZW1zIGlu Y29ycmVjdC4KCkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FMZFNTUGg0alVTRHNX dTNLNThoak82MHduVFJSMER1TzRDS1Jjd2E4RVZ1T1NmWHhnQG1haWwuZ21haWwuY29tCi0tLQog ZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwgICAgICAgICAgIHwgIDUgKystCiBz cmMvYmFja2VuZC9jYXRhbG9nL29iamVjdGFkZHJlc3MuYyAgICAgICAgICAgfCAxNiArKysrKysr CiBzcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55ICAgICAgICAgICAgICAgICAgICAgfCAgMSArCiBz cmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jICAgICAgICAgICAgfCAzMiArKysrKysr KysrKysrKwogc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5pbi5jICAgICAgICAgICAgICAgIHwg IDggKystLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9vYmplY3RhZGRyZXNzLmggICAgICAgICAgIHwg IDEgKwogLi4uL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0ICAgICAgICAgICAgICAgIHwgIDQg Ky0KIC4uLi90ZXN0X2RkbF9kZXBhcnNlL3NxbC9jcmVhdGVfc2NoZW1hLnNxbCAgICB8ICAzICst CiAuLi4vcmVncmVzcy9leHBlY3RlZC9jb2xsYXRlLmljdS51dGY4Lm91dCAgICAgfCAyMiArKysr KysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0ICAgfCA0 MyArKysrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9jb2xsYXRlLmljdS51 dGY4LnNxbCAgICAgfCAxMiArKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV9zY2hl bWEuc3FsICAgICAgICB8IDI3ICsrKysrKysrKysrKwogMTIgZmlsZXMgY2hhbmdlZCwgMTY2IGlu c2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3Jl Zi9jcmVhdGVfc2NoZW1hLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9zY2hlbWEuc2dt bAppbmRleCA3OTE4NmQyYjkzNi4uZmFmOTljMzM5OWQgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dt bC9yZWYvY3JlYXRlX3NjaGVtYS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3Nj aGVtYS5zZ21sCkBAIC0xMDAsOCArMTAwLDkgQEAgQ1JFQVRFIFNDSEVNQSBJRiBOT1QgRVhJU1RT IEFVVEhPUklaQVRJT04gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJvbGVfc3AKICAg ICAgIDxsaXN0aXRlbT4KICAgICAgICA8cGFyYT4KICAgICAgICAgQW4gU1FMIHN0YXRlbWVudCBk ZWZpbmluZyBhbiBvYmplY3QgdG8gYmUgY3JlYXRlZCB3aXRoaW4gdGhlCi0gICAgICAgIHNjaGVt YS4gQ3VycmVudGx5LCBvbmx5IDxjb21tYW5kPkNSRUFURSBET01BSU48L2NvbW1hbmQ+Ci0gICAg ICAgIDxjb21tYW5kPkNSRUFURSBUQUJMRTwvY29tbWFuZD4sIDxjb21tYW5kPkNSRUFURSBWSUVX PC9jb21tYW5kPiwgPGNvbW1hbmQ+Q1JFQVRFCisgICAgICAgIHNjaGVtYS4gQ3VycmVudGx5LCBv bmx5IDxjb21tYW5kPkNSRUFURSBDT0xMQVRJT048L2NvbW1hbmQ+LAorICAgICAgICA8Y29tbWFu ZD5DUkVBVEUgRE9NQUlOPC9jb21tYW5kPiwgPGNvbW1hbmQ+Q1JFQVRFIFRBQkxFPC9jb21tYW5k PiwKKyAgICAgICAgPGNvbW1hbmQ+Q1JFQVRFIFZJRVc8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVB VEUKICAgICAgICAgSU5ERVg8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUgU0VRVUVOQ0U8L2Nv bW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUKICAgICAgICAgVFJJR0dFUjwvY29tbWFuZD4gYW5kIDxj b21tYW5kPkdSQU5UPC9jb21tYW5kPiBhcmUgYWNjZXB0ZWQgYXMgY2xhdXNlcwogICAgICAgICB3 aXRoaW4gPGNvbW1hbmQ+Q1JFQVRFIFNDSEVNQTwvY29tbWFuZD4uIE90aGVyIGtpbmRzIG9mIG9i amVjdHMgbWF5CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL29iamVjdGFkZHJlc3Mu YyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvb2JqZWN0YWRkcmVzcy5jCmluZGV4IDAxMDJjOTk4NGU3 Li41NWI2NWRkMDhhMyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9vYmplY3RhZGRy ZXNzLmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9vYmplY3RhZGRyZXNzLmMKQEAgLTI2MjIs NiArMjYyMiwyMiBAQCByZWFkX29ianR5cGVfZnJvbV9zdHJpbmcoY29uc3QgY2hhciAqb2JqdHlw ZSkKIAlyZXR1cm4gLTE7CQkJCQkvKiBrZWVwIGNvbXBpbGVyIHF1aWV0ICovCiB9CiAKK2NvbnN0 IGNoYXIgKgorc3RyaW5naWZ5X29ianR5cGUoT2JqZWN0VHlwZSBvYmp0eXBlKQoreworCWludAkJ CWk7CisKKwlmb3IgKGkgPSAwOyBpIDwgbGVuZ3Rob2YoT2JqZWN0VHlwZU1hcCk7IGkrKykKKwl7 CisJCWlmIChPYmplY3RUeXBlTWFwW2ldLnRtX3R5cGUgPT0gb2JqdHlwZSkKKwkJCXJldHVybiBP YmplY3RUeXBlTWFwW2ldLnRtX25hbWU7CisJfQorCWVyZXBvcnQoRVJST1IsCisJCQllcnJjb2Rl KEVSUkNPREVfSU5WQUxJRF9QQVJBTUVURVJfVkFMVUUpLAorCQkJZXJybXNnKCJ1bnJlY29nbml6 ZWQgb2JqZWN0IHR5cGUgJWQiLCBvYmp0eXBlKSk7CisKKwlyZXR1cm4gTlVMTDsJCQkJCS8qIGtl ZXAgY29tcGlsZXIgcXVpZXQgKi8KK30KIC8qCiAgKiBJbnRlcmZhY2VzIHRvIHJlZmVyZW5jZSBm aWVsZHMgb2YgT2JqZWN0UHJvcGVydHlUeXBlCiAgKi8KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5k L3BhcnNlci9ncmFtLnkgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CmluZGV4IDNhY2E1MDhi MDhmLi4zMGM0YTU2NzUwMiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQor KysgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CkBAIC0xNjI3LDYgKzE2MjcsNyBAQCBzY2hl bWFfc3RtdDoKIAkJCXwgR3JhbnRTdG10CiAJCQl8IFZpZXdTdG10CiAJCQl8IENyZWF0ZURvbWFp blN0bXQKKwkJCXwgRGVmaW5lU3RtdAogCQk7CiAKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv cGFyc2VyL3BhcnNlX3V0aWxjbWQuYyBiL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21k LmMKaW5kZXggMjE4ZWM2ZjA5ODIuLjQzMTAyM2VlNzM0IDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jCisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91 dGlsY21kLmMKQEAgLTYxLDYgKzYxLDcgQEAKICNpbmNsdWRlICJyZXdyaXRlL3Jld3JpdGVNYW5p cC5oIgogI2luY2x1ZGUgInV0aWxzL2FjbC5oIgogI2luY2x1ZGUgInV0aWxzL2J1aWx0aW5zLmgi CisjaW5jbHVkZSAidXRpbHMvZm9ybWF0dGluZy5oIgogI2luY2x1ZGUgInV0aWxzL2xzeXNjYWNo ZS5oIgogI2luY2x1ZGUgInV0aWxzL3BhcnRjYWNoZS5oIgogI2luY2x1ZGUgInV0aWxzL3JlbC5o IgpAQCAtNDE3MSw2ICs0MTcyLDM3IEBAIHRyYW5zZm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50 cyhQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKnNjaGVtYUVsdHMsCiAJCQkJfQogCQkJCWJyZWFr OwogCisJCQljYXNlIFRfRGVmaW5lU3RtdDoKKwkJCQl7CisJCQkJCWNoYXIJICAgKmNvbGxfc2No ZW1hID0gTlVMTDsKKwkJCQkJY2hhcgkgICAqY29sbE5hbWU7CisJCQkJCURlZmluZVN0bXQgKnN0 bXQgPSAoRGVmaW5lU3RtdCAqKSBlbGVtZW50OworCisJCQkJCWlmIChzdG10LT5raW5kICE9IE9C SkVDVF9DT0xMQVRJT04pCisJCQkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJCQllcnJjb2RlKEVS UkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkJCQkJZXJybXNnKCJDUkVBVEUgU0NI RU1BIC4uLiBDUkVBVEUgJXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQiLAorCQkJCQkJCQkJICAg YXNjX3RvdXBwZXIoc3RyaW5naWZ5X29ianR5cGUoc3RtdC0+a2luZCksCisJCQkJCQkJCQkJCQkg ICBzdHJsZW4oc3RyaW5naWZ5X29ianR5cGUoc3RtdC0+a2luZCkpKSkpOworCisJCQkJCURlY29u c3RydWN0UXVhbGlmaWVkTmFtZShzdG10LT5kZWZuYW1lcywgJmNvbGxfc2NoZW1hLCAmY29sbE5h bWUpOworCQkJCQlpZiAoY29sbF9zY2hlbWEgJiYgc3RyY21wKGNvbGxfc2NoZW1hLCBzY2hlbWFO YW1lKSAhPSAwKQorCQkJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCQkJZXJyY29kZShFUlJDT0RF X0lOVkFMSURfU0NIRU1BX0RFRklOSVRJT04pLAorCQkJCQkJCQllcnJtc2coIkNSRUFURSBzcGVj aWZpZXMgYSBzY2hlbWEgKCVzKSAiCisJCQkJCQkJCQkgICAiZGlmZmVyZW50IGZyb20gdGhlIG9u ZSBiZWluZyBjcmVhdGVkICglcykiLAorCQkJCQkJCQkJICAgc2NoZW1hTmFtZSwgY29sbF9zY2hl bWEpKTsKKworCQkJCQllbGVtZW50cyA9IGxhcHBlbmQoZWxlbWVudHMsIGVsZW1lbnQpOworCQkJ CX0KKwkJCQlicmVhazsKKwkJCWNhc2UgVF9Db21wb3NpdGVUeXBlU3RtdDoKKwkJCWNhc2UgVF9D cmVhdGVFbnVtU3RtdDoKKwkJCWNhc2UgVF9DcmVhdGVSYW5nZVN0bXQ6CisJCQkJZXJlcG9ydChF UlJPUiwKKwkJCQkJCWVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJ CQkJZXJybXNnKCJDUkVBVEUgU0NIRU1BIC4uLiBDUkVBVEUgVFlQRSBjdXJyZW50bHkgbm90IHN1 cHBvcnRlZCIpKTsKKwkJCQlicmVhazsKIAkJCWRlZmF1bHQ6CiAJCQkJZWxvZyhFUlJPUiwgInVu cmVjb2duaXplZCBub2RlIHR5cGU6ICVkIiwKIAkJCQkJIChpbnQpIG5vZGVUYWcoZWxlbWVudCkp OwpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5pbi5jIGIvc3JjL2Jpbi9w c3FsL3RhYi1jb21wbGV0ZS5pbi5jCmluZGV4IGQ3YThjNzY5ZTM1Li5iNmJlYjg2OGViMiAxMDA2 NDQKLS0tIGEvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5pbi5jCisrKyBiL3NyYy9iaW4vcHNx bC90YWItY29tcGxldGUuaW4uYwpAQCAtMjE3OCw3ICsyMTc4LDcgQEAgbWF0Y2hfcHJldmlvdXNf d29yZHMoaW50IHBhdHRlcm5faWQsCiAJewogCQkvKiBvbmx5IHNvbWUgb2JqZWN0IHR5cGVzIGNh biBiZSBjcmVhdGVkIGFzIHBhcnQgb2YgQ1JFQVRFIFNDSEVNQSAqLwogCQlpZiAoSGVhZE1hdGNo ZXMoIkNSRUFURSIsICJTQ0hFTUEiKSkKLQkJCUNPTVBMRVRFX1dJVEgoIlRBQkxFIiwgIlZJRVci LCAiSU5ERVgiLCAiU0VRVUVOQ0UiLCAiVFJJR0dFUiIsICJET01BSU4iLAorCQkJQ09NUExFVEVf V0lUSCgiVEFCTEUiLCAiVklFVyIsICJJTkRFWCIsICJTRVFVRU5DRSIsICJUUklHR0VSIiwgIkRP TUFJTiIsICJDT0xMQVRJT04iLAogCQkJLyogZm9yIElOREVYIGFuZCBUQUJMRS9TRVFVRU5DRSwg cmVzcGVjdGl2ZWx5ICovCiAJCQkJCQkgICJVTklRVUUiLCAiVU5MT0dHRUQiKTsKIAkJZWxzZQpA QCAtMzM3MCwxMCArMzM3MCwxMCBAQCBtYXRjaF9wcmV2aW91c193b3JkcyhpbnQgcGF0dGVybl9p ZCwKIAllbHNlIGlmIChNYXRjaGVzKCJDUkVBVEUiLCAiQUNDRVNTIiwgIk1FVEhPRCIsIE1hdGNo QW55LCAiVFlQRSIsIE1hdGNoQW55KSkKIAkJQ09NUExFVEVfV0lUSCgiSEFORExFUiIpOwogCi0J LyogQ1JFQVRFIENPTExBVElPTiAqLwotCWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJDT0xM QVRJT04iLCBNYXRjaEFueSkpCisJLyogQ1JFQVRFIENPTExBVElPTiAtLS0gaXMgYWxsb3dlZCBp bnNpZGUgQ1JFQVRFIFNDSEVNQSwgc28gdXNlIFRhaWxNYXRjaGVzICovCisJZWxzZSBpZiAoVGFp bE1hdGNoZXMoIkNSRUFURSIsICJDT0xMQVRJT04iLCBNYXRjaEFueSkpCiAJCUNPTVBMRVRFX1dJ VEgoIigiLCAiRlJPTSIpOwotCWVsc2UgaWYgKE1hdGNoZXMoIkNSRUFURSIsICJDT0xMQVRJT04i LCBNYXRjaEFueSwgIkZST00iKSkKKwllbHNlIGlmIChUYWlsTWF0Y2hlcygiQ1JFQVRFIiwgIkNP TExBVElPTiIsIE1hdGNoQW55LCAiRlJPTSIpKQogCQlDT01QTEVURV9XSVRIX1NDSEVNQV9RVUVS WShRdWVyeV9mb3JfbGlzdF9vZl9jb2xsYXRpb25zKTsKIAllbHNlIGlmIChIZWFkTWF0Y2hlcygi Q1JFQVRFIiwgIkNPTExBVElPTiIsIE1hdGNoQW55LCAiKCoiKSkKIAl7CmRpZmYgLS1naXQgYS9z cmMvaW5jbHVkZS9jYXRhbG9nL29iamVjdGFkZHJlc3MuaCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cv b2JqZWN0YWRkcmVzcy5oCmluZGV4IDYzMDQzNGI3M2NmLi45NmU2YWJjOWZmZCAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9vYmplY3RhZGRyZXNzLmgKKysrIGIvc3JjL2luY2x1ZGUv Y2F0YWxvZy9vYmplY3RhZGRyZXNzLmgKQEAgLTc5LDYgKzc5LDcgQEAgZXh0ZXJuIGNoYXIgKmdl dE9iamVjdERlc2NyaXB0aW9uKGNvbnN0IE9iamVjdEFkZHJlc3MgKm9iamVjdCwKIGV4dGVybiBj aGFyICpnZXRPYmplY3REZXNjcmlwdGlvbk9pZHMoT2lkIGNsYXNzaWQsIE9pZCBvYmppZCk7CiAK IGV4dGVybiBpbnQJcmVhZF9vYmp0eXBlX2Zyb21fc3RyaW5nKGNvbnN0IGNoYXIgKm9ianR5cGUp OworZXh0ZXJuIGNvbnN0IGNoYXIgKnN0cmluZ2lmeV9vYmp0eXBlKE9iamVjdFR5cGUgb2JqdHlw ZSk7CiBleHRlcm4gY2hhciAqZ2V0T2JqZWN0VHlwZURlc2NyaXB0aW9uKGNvbnN0IE9iamVjdEFk ZHJlc3MgKm9iamVjdCwKIAkJCQkJCQkJCSAgYm9vbCBtaXNzaW5nX29rKTsKIGV4dGVybiBjaGFy ICpnZXRPYmplY3RJZGVudGl0eShjb25zdCBPYmplY3RBZGRyZXNzICpvYmplY3QsCmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQvY3JlYXRlX3Nj aGVtYS5vdXQgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQvY3Jl YXRlX3NjaGVtYS5vdXQKaW5kZXggZDczYzQ3MDIwNTEuLjJhOTA1YjI4NjAwIDEwMDY0NAotLS0g YS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQvY3JlYXRlX3NjaGVt YS5vdXQKKysrIGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL2V4cGVjdGVkL2Ny ZWF0ZV9zY2hlbWEub3V0CkBAIC0xNCw4ICsxNCwxMCBAQCBOT1RJQ0U6ICBzY2hlbWEgImJheiIg YWxyZWFkeSBleGlzdHMsIHNraXBwaW5nCiBDUkVBVEUgU0NIRU1BIGVsZW1lbnRfdGVzdAogICBD UkVBVEUgVEFCTEUgZm9vIChpZCBpbnQpCiAgIENSRUFURSBWSUVXIGJhciBBUyBTRUxFQ1QgKiBG Uk9NIGZvbwotICBDUkVBVEUgRE9NQUlOIGQxIEFTIElOVDsKKyAgQ1JFQVRFIERPTUFJTiBkMSBB UyBJTlQKKyAgQ1JFQVRFIENPTExBVElPTiBjb2xsIChMT0NBTEU9IkMiKTsKIE5PVElDRTogIERE TCB0ZXN0OiB0eXBlIHNpbXBsZSwgdGFnIENSRUFURSBTQ0hFTUEKIE5PVElDRTogIERETCB0ZXN0 OiB0eXBlIHNpbXBsZSwgdGFnIENSRUFURSBUQUJMRQogTk9USUNFOiAgRERMIHRlc3Q6IHR5cGUg c2ltcGxlLCB0YWcgQ1JFQVRFIFZJRVcKIE5PVElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBsZSwg dGFnIENSRUFURSBET01BSU4KK05PVElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBsZSwgdGFnIENS RUFURSBDT0xMQVRJT04KZGlmZiAtLWdpdCBhL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9kZGxfZGVw YXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2Rl cGFyc2Uvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsCmluZGV4IDU3YWRhNDYyMDcwLi45NTgxOTM1MTYw ZSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL3NxbC9jcmVh dGVfc2NoZW1hLnNxbAorKysgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2Uvc3Fs L2NyZWF0ZV9zY2hlbWEuc3FsCkBAIC0xNSw0ICsxNSw1IEBAIENSRUFURSBTQ0hFTUEgSUYgTk9U IEVYSVNUUyBiYXo7CiBDUkVBVEUgU0NIRU1BIGVsZW1lbnRfdGVzdAogICBDUkVBVEUgVEFCTEUg Zm9vIChpZCBpbnQpCiAgIENSRUFURSBWSUVXIGJhciBBUyBTRUxFQ1QgKiBGUk9NIGZvbwotICBD UkVBVEUgRE9NQUlOIGQxIEFTIElOVDsKKyAgQ1JFQVRFIERPTUFJTiBkMSBBUyBJTlQKKyAgQ1JF QVRFIENPTExBVElPTiBjb2xsIChMT0NBTEU9IkMiKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvY29sbGF0ZS5pY3UudXRmOC5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL2NvbGxhdGUuaWN1LnV0Zjgub3V0CmluZGV4IDY5ODA1ZDRiOWVjLi40YzMwMzM4NTQ0 NyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jb2xsYXRlLmljdS51dGY4 Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NvbGxhdGUuaWN1LnV0Zjgub3V0 CkBAIC0yNjkwLDYgKzI2OTAsMjggQEAgU0VMRUNUICogRlJPTSB0NSBPUkRFUiBCWSBjIEFTQywg YSBBU0M7CiAgMyB8IGQxIHwgZDEKICgzIHJvd3MpCiAKKy0tQ1JFQVRFIFNDSEVNQSBDUkVBVEUg Q09MTEFUSU9OCistLWZhaWwuIEV4ZWN1dGUgc3ViY29tbWFuZHMgaW4gb3JkZXI7IHdlIGRvIG5v dCBpbXBsaWNpdGx5IHJlb3JkZXIgdGhlbS4KK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFf NCBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQorICBDUkVBVEUgVEFCTEUgdHRzKGEgVEVYVCBD T0xMQVRFIGNvbGxfaWN1X3VuZCkKKyAgQ1JFQVRFIENPTExBVElPTiBjb2xsX2ljdV91bmQgRlJP TSAidW5kLXgtaWN1IjsKK0VSUk9SOiAgY29sbGF0aW9uICJjb2xsX2ljdV91bmQiIGZvciBlbmNv ZGluZyAiVVRGOCIgZG9lcyBub3QgZXhpc3QKK0xJTkUgMjogICBDUkVBVEUgVEFCTEUgdHRzKGEg VEVYVCBDT0xMQVRFIGNvbGxfaWN1X3VuZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQKKyAgQ1JFQVRFIENPTExBVElP TiBjb2xsX2ljdV91bmQgRlJPTSAidW5kLXgtaWN1IgorICBDUkVBVEUgVEFCTEUgdHRzKGEgVEVY VCBDT0xMQVRFIGNvbGxfaWN1X3VuZCk7CitcZE8gcmVncmVzc19zY2hlbWFfNC4qCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgY29sbGF0aW9ucworICAg ICAgU2NoZW1hICAgICAgfCAgICAgTmFtZSAgICAgfCBQcm92aWRlciB8IENvbGxhdGUgfCBDdHlw ZSB8IExvY2FsZSB8IElDVSBSdWxlcyB8IERldGVybWluaXN0aWM/IAorLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3Nfc2NoZW1hXzQgfCBjb2xsX2lj dV91bmQgfCBpY3UgICAgICB8ICAgICAgICAgfCAgICAgICB8IHVuZCAgICB8ICAgICAgICAgICB8 IHllcworKDEgcm93KQorCitEUk9QIFNDSEVNQSByZWdyZXNzX3NjaGVtYV80IENBU0NBREU7CitO T1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIDIgb3RoZXIgb2JqZWN0cworREVUQUlMOiAgZHJvcCBj YXNjYWRlcyB0byBjb2xsYXRpb24gcmVncmVzc19zY2hlbWFfNC5jb2xsX2ljdV91bmQKK2Ryb3Ag Y2FzY2FkZXMgdG8gdGFibGUgcmVncmVzc19zY2hlbWFfNC50dHMKIC0tIGNsZWFudXAKIFJFU0VU IHNlYXJjaF9wYXRoOwogU0VUIGNsaWVudF9taW5fbWVzc2FnZXMgVE8gd2FybmluZzsKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQgYi9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0CmluZGV4IGQ2NzE4YTlmNTE5 Li45MWY1ODY2MDZlNyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVh dGVfc2NoZW1hLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hl bWEub3V0CkBAIC0xNzcsNiArMTc3LDQxIEBAIENSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFf MyBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQogIHJlZ3Jlc3Nfc2NoZW1hXzMgfCBzczEgIHwg cmVncmVzc19zY2hlbWFfMy5zcyB8ICAgICAgICAgICB8ICAgICAgICAgIHwgJ2hlbGxvJzo6dGV4 dCB8IAogKDIgcm93cykKIAorLS0gQ2FzZXMgd2hlcmUgdGhlIHNjaGVtYSBjcmVhdGlvbiB3aXRo IGNvbGxhdGlvbnMKKy0tZmFpbC4gY2Fubm90IENSRUFURSBET01BSU4gdG8gb3RoZXIgc2NoZW1h CitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JP TEUKKyAgQ1JFQVRFIENPTExBVElPTiBwdWJsaWMuY29sbF9pY3VfdW5kIEZST00gInVuZC14LWlj dSI7CitFUlJPUjogIENSRUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHJlZ3Jlc3Nfc2NoZW1hXzQp IGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocHVibGljKQorLS1mYWlsLiBp bXByb3BlciBxdWFsaWZpZWQgbmFtZQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV80IEFV VEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFURSBDT0xMQVRJT04gcG9zdGdyZXMucHVi bGljLmNvbGxfaWN1X3VuZCBGUk9NICJ1bmQteC1pY3UiOworRVJST1I6ICBjcm9zcy1kYXRhYmFz ZSByZWZlcmVuY2VzIGFyZSBub3QgaW1wbGVtZW50ZWQ6IHBvc3RncmVzLnB1YmxpYy5jb2xsX2lj dV91bmQKKy0tZmFpbC4gb25seSBzdXBwb3J0IGNvbGxhdGlvbiBvYmplY3QgZm9yIERlZmluZVN0 bXQgbm9kZQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV80IEFVVEhPUklaQVRJT04gQ1VS UkVOVF9ST0xFCisgIENSRUFURSBBR0dSRUdBVEUgYmFsayhpbnQ0KShTRlVOQyA9IGludDRfc3Vt KGludDgsIGludDQpLFNUWVBFID0gaW50OCwgUEFSQUxMRUwgPSBTQUZFLCBJTklUQ09ORCA9ICcw Jyk7CitFUlJPUjogIENSRUFURSBTQ0hFTUEgLi4uIENSRUFURSBBR0dSRUdBVEUgY3VycmVudGx5 IG5vdCBzdXBwb3J0ZWQKKy0tb2ssIHF1YWxpZmllZCBzY2hlbWEgbmFtZSBmb3IgZG9tYWluIHNo b3VsZCBiZSBzYW1lIGFzIHRoZSBjcmVhdGVkIHNjaGVtYQorQ1JFQVRFIFNDSEVNQSByZWdyZXNz X3NjaGVtYV80IEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFURSBDT0xMQVRJT04g cmVncmVzc19zY2hlbWFfNC5jb2xsIChMT0NBTEU9IkMiKQorICBDUkVBVEUgVEFCTEUgdChhIFRF WFQgQ09MTEFURSByZWdyZXNzX3NjaGVtYV80LmNvbGwpOworXGRPIHJlZ3Jlc3Nfc2NoZW1hXzQu KgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2YgY29sbGF0aW9u cworICAgICAgU2NoZW1hICAgICAgfCBOYW1lIHwgUHJvdmlkZXIgfCBDb2xsYXRlIHwgQ3R5cGUg fCBMb2NhbGUgfCBJQ1UgUnVsZXMgfCBEZXRlcm1pbmlzdGljPyAKKy0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tCisgcmVncmVzc19zY2hlbWFfNCB8IGNvbGwgfCBsaWJjICAgICB8 IEMgICAgICAgfCBDICAgICB8ICAgICAgICB8ICAgICAgICAgICB8IHllcworKDEgcm93KQorCist LW9rLCBubyBxdWFsaWZpZWQgc2NoZW1hIG5hbWUgZm9yIGNvbGxhdGlvbgorQ1JFQVRFIFNDSEVN QSByZWdyZXNzX3NjaGVtYV81IEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFURSBD T0xMQVRJT04gY29sbCAoTE9DQUxFPSJDIikKKyAgQ1JFQVRFIFRBQkxFIHQoYSBURVhUIENPTExB VEUgY29sbCk7CitcZE8gcmVncmVzc19zY2hlbWFfNS4qCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTGlzdCBvZiBjb2xsYXRpb25zCisgICAgICBTY2hlbWEgICAgICB8IE5h bWUgfCBQcm92aWRlciB8IENvbGxhdGUgfCBDdHlwZSB8IExvY2FsZSB8IElDVSBSdWxlcyB8IERl dGVybWluaXN0aWM/IAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLSstLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0KKyByZWdy ZXNzX3NjaGVtYV81IHwgY29sbCB8IGxpYmMgICAgIHwgQyAgICAgICB8IEMgICAgIHwgICAgICAg IHwgICAgICAgICAgIHwgeWVzCisoMSByb3cpCisKIERST1AgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1h XzIgQ0FTQ0FERTsKIE5PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8gMiBvdGhlciBvYmplY3RzCiBE RVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hlbWFfMi5zcwpAQCAtMTg3 LDUgKzIyMiwxMyBAQCBERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hl bWFfMy5zcwogZHJvcCBjYXNjYWRlcyB0byB0eXBlIHJlZ3Jlc3Nfc2NoZW1hXzMuc3MxCiBkcm9w IGNhc2NhZGVzIHRvIHZpZXcgcmVncmVzc19zY2hlbWFfMy50ZXN0CiBkcm9wIGNhc2NhZGVzIHRv IHRhYmxlIHJlZ3Jlc3Nfc2NoZW1hXzMudAorRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNCBD QVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byAyIG90aGVyIG9iamVjdHMKK0RFVEFJ TDogIGRyb3AgY2FzY2FkZXMgdG8gY29sbGF0aW9uIHJlZ3Jlc3Nfc2NoZW1hXzQuY29sbAorZHJv cCBjYXNjYWRlcyB0byB0YWJsZSByZWdyZXNzX3NjaGVtYV80LnQKK0RST1AgU0NIRU1BIHJlZ3Jl c3Nfc2NoZW1hXzUgQ0FTQ0FERTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8gMiBvdGhlciBv YmplY3RzCitERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIGNvbGxhdGlvbiByZWdyZXNzX3NjaGVt YV81LmNvbGwKK2Ryb3AgY2FzY2FkZXMgdG8gdGFibGUgcmVncmVzc19zY2hlbWFfNS50CiAtLSBD bGVhbiB1cAogRFJPUCBST0xFIHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlOwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY29sbGF0ZS5pY3UudXRmOC5zcWwgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC9jb2xsYXRlLmljdS51dGY4LnNxbAppbmRleCBkYmMxOTAyMjdkMC4uMDZhNDY2 NjJmN2YgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NvbGxhdGUuaWN1LnV0Zjgu c3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NvbGxhdGUuaWN1LnV0Zjguc3FsCkBAIC05 OTcsNiArOTk3LDE4IEBAIElOU0VSVCBJTlRPIHQ1IChhLCBiKSB2YWx1ZXMgKDEsICdEMScpLCAo MiwgJ0QyJyksICgzLCAnZDEnKTsKIC0tIHJld3JpdGluZy4pCiBTRUxFQ1QgKiBGUk9NIHQ1IE9S REVSIEJZIGMgQVNDLCBhIEFTQzsKIAorLS1DUkVBVEUgU0NIRU1BIENSRUFURSBDT0xMQVRJT04K Ky0tZmFpbC4gRXhlY3V0ZSBzdWJjb21tYW5kcyBpbiBvcmRlcjsgd2UgZG8gbm90IGltcGxpY2l0 bHkgcmVvcmRlciB0aGVtLgorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV80IEFVVEhPUkla QVRJT04gQ1VSUkVOVF9ST0xFCisgIENSRUFURSBUQUJMRSB0dHMoYSBURVhUIENPTExBVEUgY29s bF9pY3VfdW5kKQorICBDUkVBVEUgQ09MTEFUSU9OIGNvbGxfaWN1X3VuZCBGUk9NICJ1bmQteC1p Y3UiOworCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQKKyAgQ1JFQVRFIENPTExBVElP TiBjb2xsX2ljdV91bmQgRlJPTSAidW5kLXgtaWN1IgorICBDUkVBVEUgVEFCTEUgdHRzKGEgVEVY VCBDT0xMQVRFIGNvbGxfaWN1X3VuZCk7CitcZE8gcmVncmVzc19zY2hlbWFfNC4qCitEUk9QIFND SEVNQSByZWdyZXNzX3NjaGVtYV80IENBU0NBREU7CisKIAogLS0gY2xlYW51cAogUkVTRVQgc2Vh cmNoX3BhdGg7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1h LnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsCmluZGV4IDMwMjgx NDhlOTZiLi42MDhkZWZjZDVlMiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3Jl YXRlX3NjaGVtYS5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3NjaGVtYS5z cWwKQEAgLTEwMyw4ICsxMDMsMzUgQEAgQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8zIEFV VEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiAgIENSRUFURSBUQUJMRSB0KGEgc3MxKTsKIFxkRCBy ZWdyZXNzX3NjaGVtYV8zLioKIAorLS0gQ2FzZXMgd2hlcmUgdGhlIHNjaGVtYSBjcmVhdGlvbiB3 aXRoIGNvbGxhdGlvbnMKKy0tZmFpbC4gY2Fubm90IENSRUFURSBET01BSU4gdG8gb3RoZXIgc2No ZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQgQVVUSE9SSVpBVElPTiBDVVJSRU5U X1JPTEUKKyAgQ1JFQVRFIENPTExBVElPTiBwdWJsaWMuY29sbF9pY3VfdW5kIEZST00gInVuZC14 LWljdSI7CisKKy0tZmFpbC4gaW1wcm9wZXIgcXVhbGlmaWVkIG5hbWUKK0NSRUFURSBTQ0hFTUEg cmVncmVzc19zY2hlbWFfNCBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQorICBDUkVBVEUgQ09M TEFUSU9OIHBvc3RncmVzLnB1YmxpYy5jb2xsX2ljdV91bmQgRlJPTSAidW5kLXgtaWN1IjsKKwor LS1mYWlsLiBvbmx5IHN1cHBvcnQgY29sbGF0aW9uIG9iamVjdCBmb3IgRGVmaW5lU3RtdCBub2Rl CitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JP TEUKKyAgQ1JFQVRFIEFHR1JFR0FURSBiYWxrKGludDQpKFNGVU5DID0gaW50NF9zdW0oaW50OCwg aW50NCksU1RZUEUgPSBpbnQ4LCBQQVJBTExFTCA9IFNBRkUsIElOSVRDT05EID0gJzAnKTsKKwor LS1vaywgcXVhbGlmaWVkIHNjaGVtYSBuYW1lIGZvciBkb21haW4gc2hvdWxkIGJlIHNhbWUgYXMg dGhlIGNyZWF0ZWQgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzQgQVVUSE9S SVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIENPTExBVElPTiByZWdyZXNzX3NjaGVtYV80 LmNvbGwgKExPQ0FMRT0iQyIpCisgIENSRUFURSBUQUJMRSB0KGEgVEVYVCBDT0xMQVRFIHJlZ3Jl c3Nfc2NoZW1hXzQuY29sbCk7CitcZE8gcmVncmVzc19zY2hlbWFfNC4qCisKKy0tb2ssIG5vIHF1 YWxpZmllZCBzY2hlbWEgbmFtZSBmb3IgY29sbGF0aW9uCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nf c2NoZW1hXzUgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKKyAgQ1JFQVRFIENPTExBVElPTiBj b2xsIChMT0NBTEU9IkMiKQorICBDUkVBVEUgVEFCTEUgdChhIFRFWFQgQ09MTEFURSBjb2xsKTsK K1xkTyByZWdyZXNzX3NjaGVtYV81LioKKwogRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBD QVNDQURFOwogRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMyBDQVNDQURFOworRFJPUCBTQ0hF TUEgcmVncmVzc19zY2hlbWFfNCBDQVNDQURFOworRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFf NSBDQVNDQURFOwogCiAtLSBDbGVhbiB1cAogRFJPUCBST0xFIHJlZ3Jlc3NfY3JlYXRlX3NjaGVt YV9yb2xlOwotLSAKMi4zNC4xCgo= --000000000000e3d97d063d3d74f7 Content-Type: text/x-patch; charset="US-ASCII"; name="v7-0004-CREATE-SCHEMA-CREATE-TYPE.patch" Content-Disposition: attachment; filename="v7-0004-CREATE-SCHEMA-CREATE-TYPE.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mes2iuba3 RnJvbSA4YzFhYWUxMDY5YTdiODUwN2MwZjI2YTcwNTYxZTQ0Njc1NTk5Yjg1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IFR1ZSwgMjYgQXVnIDIwMjUgMTI6Mjc6NTYgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3 IDQvNF0gQ1JFQVRFIFNDSEVNQSBDUkVBVEUgVFlQRQoKU1FMIHN0YW5kYXJkIGFsbG93IHR5cGUg dG8gYmUgc3BlY2lmaWVkIHdpdGggQ1JFQVRFIFNDSEVNQQpzdGF0ZW1lbnQuIFRoaXMgcGF0Y2gg YWRkcyBzdXBwb3J0IGluIFBvc3RncmVTUUwgZm9yIHRoYXQuCgpGb3IgZXhhbXBsZToKICAgIENS RUFURSBTQ0hFTUEgc2NoZW1hX25hbWUgQ1JFQVRFIFRZUEUgc3M7CgpUaGUgdHlwZSB3aWxsIGJl IGNyZWF0ZWQgd2l0aGluIHRoZSB0byBiZSBjcmVhdGVkIHNjaGVtYS4gIFRoZSB0eXBlIG5hbWUg Y2FuIGJlCnNjaGVtYS1xdWFsaWZpZWQgb3IgZGF0YWJhc2UtcXVhbGlmaWVkLCBob3dldmVyIGl0 J3Mgbm90IGFsbG93ZWQgdG8gbGV0IHR5cGUKY3JlYXRlIHdpdGhpbiBhIGRpZmZlcmVudCBzY2hl bWEuCgpUT0RPOiB0YWIgY29tcGxldGUgZm9yIENSRUFURSBTQ0hFTUEgLi4uIENSRUFURSBUWVBF IHNlZW1zIHRyaWNreQoKRGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQUxkU1NQaDRq VVNEc1d1M0s1OGhqTzYwd25UUlIwRHVPNENLUmN3YThFVnVPU2ZYeGdAbWFpbC5nbWFpbC5jb20K LS0tCiBkb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9zY2hlbWEuc2dtbCAgICAgICAgICAgfCAgMyAr LQogc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYyAgICAgICAgICAgIHwgNDQgKysr KysrKysrLQogLi4uL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0ICAgICAgICAgICAgICAgIHwg MTAgKystCiAuLi4vdGVzdF9kZGxfZGVwYXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwgICAgfCAg NiArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dCAgIHwgODMg KysrKysrKysrKysrKysrKysrKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfdHlw ZS5vdXQgICAgIHwgMTIgKysrCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNx bCAgICAgICAgfCAzOSArKysrKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV90eXBl LnNxbCAgICAgICAgICB8IDEyICsrKwogOCBmaWxlcyBjaGFuZ2VkLCAyMDIgaW5zZXJ0aW9ucygr KSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9z Y2hlbWEuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NjaGVtYS5zZ21sCmluZGV4IGZh Zjk5YzMzOTlkLi4yMzhmZDk0OTkzNCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9jcmVh dGVfc2NoZW1hLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfc2NoZW1hLnNnbWwK QEAgLTEwNCw3ICsxMDQsOCBAQCBDUkVBVEUgU0NIRU1BIElGIE5PVCBFWElTVFMgQVVUSE9SSVpB VElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cm9sZV9zcAogICAgICAgICA8Y29t bWFuZD5DUkVBVEUgRE9NQUlOPC9jb21tYW5kPiwgPGNvbW1hbmQ+Q1JFQVRFIFRBQkxFPC9jb21t YW5kPiwKICAgICAgICAgPGNvbW1hbmQ+Q1JFQVRFIFZJRVc8L2NvbW1hbmQ+LCA8Y29tbWFuZD5D UkVBVEUKICAgICAgICAgSU5ERVg8L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUgU0VRVUVOQ0U8 L2NvbW1hbmQ+LCA8Y29tbWFuZD5DUkVBVEUKLSAgICAgICAgVFJJR0dFUjwvY29tbWFuZD4gYW5k IDxjb21tYW5kPkdSQU5UPC9jb21tYW5kPiBhcmUgYWNjZXB0ZWQgYXMgY2xhdXNlcworICAgICAg ICBUUklHR0VSPC9jb21tYW5kPiwgPGNvbW1hbmQ+Q1JFQVRFIFRZUEU8L2NvbW1hbmQ+IGFuZAor ICAgICAgICA8Y29tbWFuZD5HUkFOVDwvY29tbWFuZD4gYXJlIGFjY2VwdGVkIGFzIGNsYXVzZXMK ICAgICAgICAgd2l0aGluIDxjb21tYW5kPkNSRUFURSBTQ0hFTUE8L2NvbW1hbmQ+LiBPdGhlciBr aW5kcyBvZiBvYmplY3RzIG1heQogICAgICAgICBiZSBjcmVhdGVkIGluIHNlcGFyYXRlIGNvbW1h bmRzIGFmdGVyIHRoZSBzY2hlbWEgaXMgY3JlYXRlZC4KICAgICAgICA8L3BhcmE+CmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jIGIvc3JjL2JhY2tlbmQvcGFy c2VyL3BhcnNlX3V0aWxjbWQuYwppbmRleCA0MzEwMjNlZTczNC4uZDNkOWEwOTI0MmYgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKKysrIGIvc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYwpAQCAtNDE3OCw3ICs0MTc4LDcgQEAgdHJhbnNmb3Jt Q3JlYXRlU2NoZW1hU3RtdEVsZW1lbnRzKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqc2NoZW1h RWx0cywKIAkJCQkJY2hhcgkgICAqY29sbE5hbWU7CiAJCQkJCURlZmluZVN0bXQgKnN0bXQgPSAo RGVmaW5lU3RtdCAqKSBlbGVtZW50OwogCi0JCQkJCWlmIChzdG10LT5raW5kICE9IE9CSkVDVF9D T0xMQVRJT04pCisJCQkJCWlmIChzdG10LT5raW5kICE9IE9CSkVDVF9DT0xMQVRJT04gJiYgc3Rt dC0+a2luZCAhPSBPQkpFQ1RfVFlQRSkKIAkJCQkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCQkJCWVy cmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAogCQkJCQkJCQllcnJtc2coIkNS RUFURSBTQ0hFTUEgLi4uIENSRUFURSAlcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZCIsCkBAIC00 MTk2LDEyICs0MTk2LDQ4IEBAIHRyYW5zZm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhQYXJz ZVN0YXRlICpwc3RhdGUsIExpc3QgKnNjaGVtYUVsdHMsCiAJCQkJCWVsZW1lbnRzID0gbGFwcGVu ZChlbGVtZW50cywgZWxlbWVudCk7CiAJCQkJfQogCQkJCWJyZWFrOworCiAJCQljYXNlIFRfQ29t cG9zaXRlVHlwZVN0bXQ6CisJCQkJeworCQkJCQlDb21wb3NpdGVUeXBlU3RtdCAqc3RtdCA9IChD b21wb3NpdGVUeXBlU3RtdCAqKSBlbGVtZW50OworCisJCQkJCWNoZWNrU2NoZW1hTmFtZShwc3Rh dGUsIHNjaGVtYU5hbWUsIHN0bXQtPnR5cGV2YXIpOworCQkJCQllbGVtZW50cyA9IGxhcHBlbmQo ZWxlbWVudHMsIGVsZW1lbnQpOworCQkJCX0KKwkJCQlicmVhazsKKwogCQkJY2FzZSBUX0NyZWF0 ZUVudW1TdG10OgorCQkJCXsKKwkJCQkJY2hhcgkgICAqc2NoZW1hID0gTlVMTDsKKwkJCQkJY2hh cgkgICAqdHlwbmFtZTsKKwkJCQkJQ3JlYXRlRW51bVN0bXQgKnN0bXQgPSAoQ3JlYXRlRW51bVN0 bXQgKikgZWxlbWVudDsKKwkJCQkJRGVjb25zdHJ1Y3RRdWFsaWZpZWROYW1lKHN0bXQtPnR5cGVO YW1lLCAmc2NoZW1hLCAmdHlwbmFtZSk7CisJCQkJCWlmIChzY2hlbWEgJiYgc3RyY21wKHNjaGVt YSwgc2NoZW1hTmFtZSkgIT0gMCkKKwkJCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkJCWVycmNv ZGUoRVJSQ09ERV9JTlZBTElEX1NDSEVNQV9ERUZJTklUSU9OKSwKKwkJCQkJCQkJZXJybXNnKCJD UkVBVEUgc3BlY2lmaWVzIGEgc2NoZW1hICglcykgIgorCQkJCQkJCQkJICAgImRpZmZlcmVudCBm cm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAoJXMpIiwKKwkJCQkJCQkJCSAgIHNjaGVtYU5hbWUs IHNjaGVtYSkpOworCisJCQkJCWVsZW1lbnRzID0gbGFwcGVuZChlbGVtZW50cywgZWxlbWVudCk7 CisJCQkJfQorCQkJCWJyZWFrOworCiAJCQljYXNlIFRfQ3JlYXRlUmFuZ2VTdG10OgotCQkJCWVy ZXBvcnQoRVJST1IsCi0JCQkJCQllcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVE KSwKLQkJCQkJCWVycm1zZygiQ1JFQVRFIFNDSEVNQSAuLi4gQ1JFQVRFIFRZUEUgY3VycmVudGx5 IG5vdCBzdXBwb3J0ZWQiKSk7CisJCQkJeworCQkJCQljaGFyCSAgICpzY2hlbWEgPSBOVUxMOwor CQkJCQljaGFyCSAgICp0eXBuYW1lOworCQkJCQlDcmVhdGVSYW5nZVN0bXQgKnN0bXQgPSAoQ3Jl YXRlUmFuZ2VTdG10ICopIGVsZW1lbnQ7CisJCQkJCURlY29uc3RydWN0UXVhbGlmaWVkTmFtZShz dG10LT50eXBlTmFtZSwgJnNjaGVtYSwgJnR5cG5hbWUpOworCQkJCQlpZiAoc2NoZW1hICYmIHN0 cmNtcChzY2hlbWEsIHNjaGVtYU5hbWUpICE9IDApCisJCQkJCQllcmVwb3J0KEVSUk9SLAorCQkJ CQkJCQllcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9TQ0hFTUFfREVGSU5JVElPTiksCisJCQkJCQkJ CWVycm1zZygiQ1JFQVRFIHNwZWNpZmllcyBhIHNjaGVtYSAoJXMpICIKKwkJCQkJCQkJCSAgICJk aWZmZXJlbnQgZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKCVzKSIsCisJCQkJCQkJCQkgICBz Y2hlbWFOYW1lLCBzY2hlbWEpKTsKKworCQkJCQllbGVtZW50cyA9IGxhcHBlbmQoZWxlbWVudHMs IGVsZW1lbnQpOworCQkJCX0KIAkJCQlicmVhazsKIAkJCWRlZmF1bHQ6CiAJCQkJZWxvZyhFUlJP UiwgInVucmVjb2duaXplZCBub2RlIHR5cGU6ICVkIiwKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L21v ZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dCBiL3NyYy90 ZXN0L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dApp bmRleCAyYTkwNWIyODYwMC4uYjJjODU2ODJiMjAgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L21vZHVs ZXMvdGVzdF9kZGxfZGVwYXJzZS9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dAorKysgYi9zcmMv dGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvZXhwZWN0ZWQvY3JlYXRlX3NjaGVtYS5vdXQK QEAgLTE1LDkgKzE1LDE3IEBAIENSRUFURSBTQ0hFTUEgZWxlbWVudF90ZXN0CiAgIENSRUFURSBU QUJMRSBmb28gKGlkIGludCkKICAgQ1JFQVRFIFZJRVcgYmFyIEFTIFNFTEVDVCAqIEZST00gZm9v CiAgIENSRUFURSBET01BSU4gZDEgQVMgSU5UCi0gIENSRUFURSBDT0xMQVRJT04gY29sbCAoTE9D QUxFPSJDIik7CisgIENSRUFURSBDT0xMQVRJT04gY29sbCAoTE9DQUxFPSJDIikKKyAgQ1JFQVRF IFRZUEUgZmxvYXRyYW5nZSBBUyBSQU5HRSAoc3VidHlwZSA9IGZsb2F0OCwgc3VidHlwZV9kaWZm ID0gZmxvYXQ4bWkpCisgIENSRUFURSBUWVBFIHNzIEFTIChhIGludCkKKyAgQ1JFQVRFIFRZUEUg c3NzCisgIENSRUFURSBUWVBFIHJhaW5ib3cgQVMgRU5VTSAoJ3JlZCcsICdvcmFuZ2UnKTsKIE5P VElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBsZSwgdGFnIENSRUFURSBTQ0hFTUEKIE5PVElDRTog IERETCB0ZXN0OiB0eXBlIHNpbXBsZSwgdGFnIENSRUFURSBUQUJMRQogTk9USUNFOiAgRERMIHRl c3Q6IHR5cGUgc2ltcGxlLCB0YWcgQ1JFQVRFIFZJRVcKIE5PVElDRTogIERETCB0ZXN0OiB0eXBl IHNpbXBsZSwgdGFnIENSRUFURSBET01BSU4KIE5PVElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBs ZSwgdGFnIENSRUFURSBDT0xMQVRJT04KK05PVElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBsZSwg dGFnIENSRUFURSBUWVBFCitOT1RJQ0U6ICBEREwgdGVzdDogdHlwZSBzaW1wbGUsIHRhZyBDUkVB VEUgVFlQRQorTk9USUNFOiAgRERMIHRlc3Q6IHR5cGUgc2ltcGxlLCB0YWcgQ1JFQVRFIFRZUEUK K05PVElDRTogIERETCB0ZXN0OiB0eXBlIHNpbXBsZSwgdGFnIENSRUFURSBUWVBFCmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2Uvc3FsL2NyZWF0ZV9zY2hlbWEu c3FsIGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL3NxbC9jcmVhdGVfc2NoZW1h LnNxbAppbmRleCA5NTgxOTM1MTYwZS4uNWNlNzliNTI0YmQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKKysrIGIvc3Jj L3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNlL3NxbC9jcmVhdGVfc2NoZW1hLnNxbApAQCAt MTYsNCArMTYsOCBAQCBDUkVBVEUgU0NIRU1BIGVsZW1lbnRfdGVzdAogICBDUkVBVEUgVEFCTEUg Zm9vIChpZCBpbnQpCiAgIENSRUFURSBWSUVXIGJhciBBUyBTRUxFQ1QgKiBGUk9NIGZvbwogICBD UkVBVEUgRE9NQUlOIGQxIEFTIElOVAotICBDUkVBVEUgQ09MTEFUSU9OIGNvbGwgKExPQ0FMRT0i QyIpOworICBDUkVBVEUgQ09MTEFUSU9OIGNvbGwgKExPQ0FMRT0iQyIpCisgIENSRUFURSBUWVBF IGZsb2F0cmFuZ2UgQVMgUkFOR0UgKHN1YnR5cGUgPSBmbG9hdDgsIHN1YnR5cGVfZGlmZiA9IGZs b2F0OG1pKQorICBDUkVBVEUgVFlQRSBzcyBBUyAoYSBpbnQpCisgIENSRUFURSBUWVBFIHNzcwor ICBDUkVBVEUgVFlQRSByYWluYm93IEFTIEVOVU0gKCdyZWQnLCAnb3JhbmdlJyk7CmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0IGIvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dAppbmRleCA5MWY1ODY2MDZlNy4u NjQwOWFlZTczNjEgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRl X3NjaGVtYS5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfc2NoZW1h Lm91dApAQCAtMjEyLDYgKzIxMiw3NiBAQCBDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzUg QVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKICByZWdyZXNzX3NjaGVtYV81IHwgY29sbCB8IGxp YmMgICAgIHwgQyAgICAgICB8IEMgICAgIHwgICAgICAgIHwgICAgICAgICAgIHwgeWVzCiAoMSBy b3cpCiAKKy0tLS0tQ1JFQVRFIFNDSEVNQSBDUkVBVEUgVFlQRQorLS1mYWlsLiBjYW5ub3QgQ1JF QVRFIFRZUEUgdG8gb3RoZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzYg Q1JFQVRFIFRZUEUgcHVibGljLnNzIEFTIChhIGludCk7CitFUlJPUjogIENSRUFURSBzcGVjaWZp ZXMgYSBzY2hlbWEgKHB1YmxpYykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVk IChyZWdyZXNzX3NjaGVtYV82KQorTElORSAxOiBDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1h XzYgQ1JFQVRFIFRZUEUgcHVibGljLnNzIEFTIChhIGkuLi4KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KK0NSRUFURSBTQ0hFTUEgcmVncmVzc19z Y2hlbWFfNiBDUkVBVEUgVFlQRSBwdWJsaWMuc3M7CitFUlJPUjogIENSRUFURSBzcGVjaWZpZXMg YSBzY2hlbWEgKHJlZ3Jlc3Nfc2NoZW1hXzYpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcg Y3JlYXRlZCAocHVibGljKQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82IENSRUFURSBU WVBFIHB1YmxpYy5yYWluYm93IEFTIEVOVU0gKCdyZWQnLCAnb3JhbmdlJyk7CitFUlJPUjogIENS RUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHJlZ3Jlc3Nfc2NoZW1hXzYpIGRpZmZlcmVudCBmcm9t IHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocHVibGljKQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3Nj aGVtYV82IENSRUFURSBUWVBFIHB1YmxpYy5mbG9hdHJhbmdlIEFTIFJBTkdFIChzdWJ0eXBlID0g ZmxvYXQ4LCBzdWJ0eXBlX2RpZmYgPSBmbG9hdDhtaSk7CitFUlJPUjogIENSRUFURSBzcGVjaWZp ZXMgYSBzY2hlbWEgKHJlZ3Jlc3Nfc2NoZW1hXzYpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVp bmcgY3JlYXRlZCAocHVibGljKQorLS1mYWlsLiBpbXByb3BlciBxdWFsaWZpZWQgbmFtZQorQ1JF QVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82IEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCisg IENSRUFURSBUWVBFIHBvc3RncmVzLnB1YmxpYy5mbG9hdHJhbmdlIEFTIFJBTkdFIChzdWJ0eXBl ID0gZmxvYXQ4LCBzdWJ0eXBlX2RpZmYgPSBmbG9hdDhtaSk7CitFUlJPUjogIGNyb3NzLWRhdGFi YXNlIHJlZmVyZW5jZXMgYXJlIG5vdCBpbXBsZW1lbnRlZDogcG9zdGdyZXMucHVibGljLmZsb2F0 cmFuZ2UKKy0tYWxsIHRoZSBmb2xsb3dpbmcgNCBzaG91bGQgZXJyb3IsIGJlY2F1c2Ugd2UgZXhl Y3V0ZSBzdWJjb21tYW5kcyBpbiBvcmRlcgorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82 IENSRUFURSBUQUJMRSB0dHMoYSBzcykgQ1JFQVRFIFRZUEUgc3M7CitFUlJPUjogIHR5cGUgInNz IiBkb2VzIG5vdCBleGlzdAorTElORSAxOiBDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzYg Q1JFQVRFIFRBQkxFIHR0cyhhIHNzKSBDUkVBVEUuLi4KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCitDUkVBVEUgU0NIRU1BIHJlZ3Jl c3Nfc2NoZW1hXzYgQ1JFQVRFIFRBQkxFIHR0cyhhIHNzKSBDUkVBVEUgVFlQRSBzcyBBUyAoYSBp bnQpOworRVJST1I6ICB0eXBlICJzcyIgZG9lcyBub3QgZXhpc3QKK0xJTkUgMTogQ1JFQVRFIFND SEVNQSByZWdyZXNzX3NjaGVtYV82IENSRUFURSBUQUJMRSB0dHMoYSBzcykgQ1JFQVRFLi4uCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82IENSRUFURSBUQUJMRSB0dHMoYSByYWlu Ym93KSBDUkVBVEUgVFlQRSByYWluYm93IEFTIEVOVU0gKCdyZWQnLCAnb3JhbmdlJyk7CitFUlJP UjogIHR5cGUgInJhaW5ib3ciIGRvZXMgbm90IGV4aXN0CitMSU5FIDE6IENSRUFURSBTQ0hFTUEg cmVncmVzc19zY2hlbWFfNiBDUkVBVEUgVEFCTEUgdHRzKGEgcmFpbmJvdykgQy4uLgorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KK0NS RUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNgorICBDUkVBVEUgVEFCTEUgdHRzKGEgZmxvYXRy YW5nZSkKKyAgQ1JFQVRFIFRZUEUgZmxvYXRyYW5nZSBBUyBSQU5HRSAoc3VidHlwZSA9IGZsb2F0 OCwgc3VidHlwZV9kaWZmID0gZmxvYXQ4bWkpOworRVJST1I6ICB0eXBlICJmbG9hdHJhbmdlIiBk b2VzIG5vdCBleGlzdAorTElORSAyOiAgIENSRUFURSBUQUJMRSB0dHMoYSBmbG9hdHJhbmdlKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCistLW9rCitDUkVBVEUgU0NIRU1BIHJlZ3Jl c3Nfc2NoZW1hXzYKKyAgQ1JFQVRFIFRZUEUgZmxvYXRyYW5nZSBBUyBSQU5HRSAoc3VidHlwZSA9 IGZsb2F0OCwgc3VidHlwZV9kaWZmID0gZmxvYXQ4bWkpCisgIENSRUFURSBUWVBFIHNzIEFTIChh IGludCkKKyAgQ1JFQVRFIFRZUEUgc3NzCisgIENSRUFURSBUWVBFIHJhaW5ib3cgQVMgRU5VTSAo J3JlZCcsICdvcmFuZ2UnKTsKK1xkVCByZWdyZXNzX3NjaGVtYV82LioKKyAgICAgICAgICAgICAg ICAgICAgICAgIExpc3Qgb2YgZGF0YSB0eXBlcworICAgICAgU2NoZW1hICAgICAgfCAgICAgICAg ICAgICAgIE5hbWUgICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uIAorLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLQorIHJl Z3Jlc3Nfc2NoZW1hXzYgfCByZWdyZXNzX3NjaGVtYV82LmZsb2F0bXVsdGlyYW5nZSB8IAorIHJl Z3Jlc3Nfc2NoZW1hXzYgfCByZWdyZXNzX3NjaGVtYV82LmZsb2F0cmFuZ2UgICAgICB8IAorIHJl Z3Jlc3Nfc2NoZW1hXzYgfCByZWdyZXNzX3NjaGVtYV82LnJhaW5ib3cgICAgICAgICB8IAorIHJl Z3Jlc3Nfc2NoZW1hXzYgfCByZWdyZXNzX3NjaGVtYV82LnNzICAgICAgICAgICAgICB8IAorIHJl Z3Jlc3Nfc2NoZW1hXzYgfCByZWdyZXNzX3NjaGVtYV82LnNzcyAgICAgICAgICAgICB8IAorKDUg cm93cykKKworLS1zY2hlbWEgcXVhbGlmaWVkLCBvaworQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3Nj aGVtYV83CisgIENSRUFURSBUWVBFIHJlZ3Jlc3Nfc2NoZW1hXzcuZmxvYXRyYW5nZSBBUyBSQU5H RSAoc3VidHlwZSA9IGZsb2F0OCwgc3VidHlwZV9kaWZmID0gZmxvYXQ4bWkpCisgIENSRUFURSBU WVBFIHJlZ3Jlc3Nfc2NoZW1hXzcuc3MgQVMgKGEgaW50KQorICBDUkVBVEUgVFlQRSByZWdyZXNz X3NjaGVtYV83LnNzcworICBDUkVBVEUgVFlQRSByZWdyZXNzX3NjaGVtYV83LnJhaW5ib3cgQVMg RU5VTSAoJ3JlZCcsICdvcmFuZ2UnKQorICBDUkVBVEUgVEFCTEUgdChhIGZsb2F0cmFuZ2UsIGIg c3MsIGMgcmFpbmJvdyk7CitcZFQgcmVncmVzc19zY2hlbWFfNy4qCisgICAgICAgICAgICAgICAg ICAgICAgICBMaXN0IG9mIGRhdGEgdHlwZXMKKyAgICAgIFNjaGVtYSAgICAgIHwgICAgICAgICAg ICAgICBOYW1lICAgICAgICAgICAgICAgfCBEZXNjcmlwdGlvbiAKKy0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0KKyByZWdy ZXNzX3NjaGVtYV83IHwgcmVncmVzc19zY2hlbWFfNy5mbG9hdG11bHRpcmFuZ2UgfCAKKyByZWdy ZXNzX3NjaGVtYV83IHwgcmVncmVzc19zY2hlbWFfNy5mbG9hdHJhbmdlICAgICAgfCAKKyByZWdy ZXNzX3NjaGVtYV83IHwgcmVncmVzc19zY2hlbWFfNy5yYWluYm93ICAgICAgICAgfCAKKyByZWdy ZXNzX3NjaGVtYV83IHwgcmVncmVzc19zY2hlbWFfNy5zcyAgICAgICAgICAgICAgfCAKKyByZWdy ZXNzX3NjaGVtYV83IHwgcmVncmVzc19zY2hlbWFfNy5zc3MgICAgICAgICAgICAgfCAKKyg1IHJv d3MpCisKIERST1AgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIgQ0FTQ0FERTsKIE5PVElDRTogIGRy b3AgY2FzY2FkZXMgdG8gMiBvdGhlciBvYmplY3RzCiBERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRv IHR5cGUgcmVncmVzc19zY2hlbWFfMi5zcwpAQCAtMjMwLDUgKzMwMCwxOCBAQCBEUk9QIFNDSEVN QSByZWdyZXNzX3NjaGVtYV81IENBU0NBREU7CiBOT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIDIg b3RoZXIgb2JqZWN0cwogREVUQUlMOiAgZHJvcCBjYXNjYWRlcyB0byBjb2xsYXRpb24gcmVncmVz c19zY2hlbWFfNS5jb2xsCiBkcm9wIGNhc2NhZGVzIHRvIHRhYmxlIHJlZ3Jlc3Nfc2NoZW1hXzUu dAorRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBj YXNjYWRlcyB0byA0IG90aGVyIG9iamVjdHMKK0RFVEFJTDogIGRyb3AgY2FzY2FkZXMgdG8gdHlw ZSByZWdyZXNzX3NjaGVtYV82LmZsb2F0cmFuZ2UKK2Ryb3AgY2FzY2FkZXMgdG8gdHlwZSByZWdy ZXNzX3NjaGVtYV82LnNzCitkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hlbWFfNi5z c3MKK2Ryb3AgY2FzY2FkZXMgdG8gdHlwZSByZWdyZXNzX3NjaGVtYV82LnJhaW5ib3cKK0RST1Ag U0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzcgQ0FTQ0FERTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMg dG8gNSBvdGhlciBvYmplY3RzCitERVRBSUw6ICBkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVz c19zY2hlbWFfNy5mbG9hdHJhbmdlCitkcm9wIGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hl bWFfNy5zcworZHJvcCBjYXNjYWRlcyB0byB0eXBlIHJlZ3Jlc3Nfc2NoZW1hXzcuc3NzCitkcm9w IGNhc2NhZGVzIHRvIHR5cGUgcmVncmVzc19zY2hlbWFfNy5yYWluYm93Citkcm9wIGNhc2NhZGVz IHRvIHRhYmxlIHJlZ3Jlc3Nfc2NoZW1hXzcudAogLS0gQ2xlYW4gdXAKIERST1AgUk9MRSByZWdy ZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvY3JlYXRlX3R5cGUub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVf dHlwZS5vdXQKaW5kZXggNTE4MWM0MjkwYjQuLjI4ZWFkY2RlMjBkIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV90eXBlLm91dAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL2NyZWF0ZV90eXBlLm91dApAQCAtMzUsNiArMzUsMTggQEAgQ1JFQVRFIEZV TkNUSU9OIGludDQ0b3V0KGNpdHlfYnVkZ2V0KQogTk9USUNFOiAgYXJndW1lbnQgdHlwZSBjaXR5 X2J1ZGdldCBpcyBvbmx5IGEgc2hlbGwKIExJTkUgMTogQ1JFQVRFIEZVTkNUSU9OIGludDQ0b3V0 KGNpdHlfYnVkZ2V0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorLS0tLS0g Q1JFQVRFIFNDSEVNQSBDUkVBVEUgVFlQRSB0ZXN0CistLWVycm9yLiBjYW5ub3QgQ1JFQVRFIFRZ UEUgdG8gb3RoZXIgc2NoZW1hCitDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzEKKyAgIENS RUFURSBUWVBFIHB1YmxpYy53aWRnZXQgKAorICAgICAgaW50ZXJuYWxsZW5ndGggPSAyNCwKKyAg ICAgIGlucHV0ID0gd2lkZ2V0X2luLAorICAgICAgb3V0cHV0ID0gd2lkZ2V0X291dCwKKyAgICAg IHR5cG1vZF9pbiA9IG51bWVyaWN0eXBtb2RpbiwKKyAgICAgIHR5cG1vZF9vdXQgPSBudW1lcmlj dHlwbW9kb3V0LAorICAgICAgYWxpZ25tZW50ID0gZG91YmxlCisgICApOworRVJST1I6ICBDUkVB VEUgc3BlY2lmaWVzIGEgc2NoZW1hIChyZWdyZXNzX3NjaGVtYV8xKSBkaWZmZXJlbnQgZnJvbSB0 aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHB1YmxpYykKIENSRUFURSBUWVBFIHdpZGdldCAoCiAgICBp bnRlcm5hbGxlbmd0aCA9IDI0LAogICAgaW5wdXQgPSB3aWRnZXRfaW4sCmRpZmYgLS1naXQgYS9z cmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL2NyZWF0ZV9zY2hlbWEuc3FsCmluZGV4IDYwOGRlZmNkNWUyLi42NDVmMzMwOGZiNiAxMDA2 NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKKysrIGIvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKQEAgLTEyOCwxMCArMTI4LDQ5IEBA IENSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNSBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9M RQogICBDUkVBVEUgVEFCTEUgdChhIFRFWFQgQ09MTEFURSBjb2xsKTsKIFxkTyByZWdyZXNzX3Nj aGVtYV81LioKIAorCistLS0tLUNSRUFURSBTQ0hFTUEgQ1JFQVRFIFRZUEUKKy0tZmFpbC4gY2Fu bm90IENSRUFURSBUWVBFIHRvIG90aGVyIHNjaGVtYQorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3Nj aGVtYV82IENSRUFURSBUWVBFIHB1YmxpYy5zcyBBUyAoYSBpbnQpOworQ1JFQVRFIFNDSEVNQSBy ZWdyZXNzX3NjaGVtYV82IENSRUFURSBUWVBFIHB1YmxpYy5zczsKK0NSRUFURSBTQ0hFTUEgcmVn cmVzc19zY2hlbWFfNiBDUkVBVEUgVFlQRSBwdWJsaWMucmFpbmJvdyBBUyBFTlVNICgncmVkJywg J29yYW5nZScpOworQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82IENSRUFURSBUWVBFIHB1 YmxpYy5mbG9hdHJhbmdlIEFTIFJBTkdFIChzdWJ0eXBlID0gZmxvYXQ4LCBzdWJ0eXBlX2RpZmYg PSBmbG9hdDhtaSk7CisKKy0tZmFpbC4gaW1wcm9wZXIgcXVhbGlmaWVkIG5hbWUKK0NSRUFURSBT Q0hFTUEgcmVncmVzc19zY2hlbWFfNiBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQorICBDUkVB VEUgVFlQRSBwb3N0Z3Jlcy5wdWJsaWMuZmxvYXRyYW5nZSBBUyBSQU5HRSAoc3VidHlwZSA9IGZs b2F0OCwgc3VidHlwZV9kaWZmID0gZmxvYXQ4bWkpOworCistLWFsbCB0aGUgZm9sbG93aW5nIDQg c2hvdWxkIGVycm9yLCBiZWNhdXNlIHdlIGV4ZWN1dGUgc3ViY29tbWFuZHMgaW4gb3JkZXIKK0NS RUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNiBDUkVBVEUgVEFCTEUgdHRzKGEgc3MpIENSRUFU RSBUWVBFIHNzOworQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV82IENSRUFURSBUQUJMRSB0 dHMoYSBzcykgQ1JFQVRFIFRZUEUgc3MgQVMgKGEgaW50KTsKK0NSRUFURSBTQ0hFTUEgcmVncmVz c19zY2hlbWFfNiBDUkVBVEUgVEFCTEUgdHRzKGEgcmFpbmJvdykgQ1JFQVRFIFRZUEUgcmFpbmJv dyBBUyBFTlVNICgncmVkJywgJ29yYW5nZScpOworQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVt YV82CisgIENSRUFURSBUQUJMRSB0dHMoYSBmbG9hdHJhbmdlKQorICBDUkVBVEUgVFlQRSBmbG9h dHJhbmdlIEFTIFJBTkdFIChzdWJ0eXBlID0gZmxvYXQ4LCBzdWJ0eXBlX2RpZmYgPSBmbG9hdDht aSk7CisKKy0tb2sKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNgorICBDUkVBVEUgVFlQ RSBmbG9hdHJhbmdlIEFTIFJBTkdFIChzdWJ0eXBlID0gZmxvYXQ4LCBzdWJ0eXBlX2RpZmYgPSBm bG9hdDhtaSkKKyAgQ1JFQVRFIFRZUEUgc3MgQVMgKGEgaW50KQorICBDUkVBVEUgVFlQRSBzc3MK KyAgQ1JFQVRFIFRZUEUgcmFpbmJvdyBBUyBFTlVNICgncmVkJywgJ29yYW5nZScpOworXGRUIHJl Z3Jlc3Nfc2NoZW1hXzYuKgorCistLXNjaGVtYSBxdWFsaWZpZWQsIG9rCitDUkVBVEUgU0NIRU1B IHJlZ3Jlc3Nfc2NoZW1hXzcKKyAgQ1JFQVRFIFRZUEUgcmVncmVzc19zY2hlbWFfNy5mbG9hdHJh bmdlIEFTIFJBTkdFIChzdWJ0eXBlID0gZmxvYXQ4LCBzdWJ0eXBlX2RpZmYgPSBmbG9hdDhtaSkK KyAgQ1JFQVRFIFRZUEUgcmVncmVzc19zY2hlbWFfNy5zcyBBUyAoYSBpbnQpCisgIENSRUFURSBU WVBFIHJlZ3Jlc3Nfc2NoZW1hXzcuc3NzCisgIENSRUFURSBUWVBFIHJlZ3Jlc3Nfc2NoZW1hXzcu cmFpbmJvdyBBUyBFTlVNICgncmVkJywgJ29yYW5nZScpCisgIENSRUFURSBUQUJMRSB0KGEgZmxv YXRyYW5nZSwgYiBzcywgYyByYWluYm93KTsKK1xkVCByZWdyZXNzX3NjaGVtYV83LioKKwogRFJP UCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMiBDQVNDQURFOwogRFJPUCBTQ0hFTUEgcmVncmVzc19z Y2hlbWFfMyBDQVNDQURFOwogRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNCBDQVNDQURFOwog RFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNSBDQVNDQURFOworRFJPUCBTQ0hFTUEgcmVncmVz c19zY2hlbWFfNiBDQVNDQURFOworRFJPUCBTQ0hFTUEgcmVncmVzc19zY2hlbWFfNyBDQVNDQURF OwogCiAtLSBDbGVhbiB1cAogRFJPUCBST0xFIHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlOwpk aWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3R5cGUuc3FsIGIvc3JjL3Rl c3QvcmVncmVzcy9zcWwvY3JlYXRlX3R5cGUuc3FsCmluZGV4IGMyNTAxODAyOWMyLi40MWI2Zjlh NzRlYyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3JlYXRlX3R5cGUuc3FsCisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV90eXBlLnNxbApAQCAtMzIsNiArMzIsMTgg QEAgQ1JFQVRFIEZVTkNUSU9OIGludDQ0b3V0KGNpdHlfYnVkZ2V0KQogICAgQVMgOidyZWdyZXNz bGliJwogICAgTEFOR1VBR0UgQyBTVFJJQ1QgSU1NVVRBQkxFOwogCistLS0tLSBDUkVBVEUgU0NI RU1BIENSRUFURSBUWVBFIHRlc3QKKy0tZXJyb3IuIGNhbm5vdCBDUkVBVEUgVFlQRSB0byBvdGhl ciBzY2hlbWEKK0NSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMQorICAgQ1JFQVRFIFRZUEUg cHVibGljLndpZGdldCAoCisgICAgICBpbnRlcm5hbGxlbmd0aCA9IDI0LAorICAgICAgaW5wdXQg PSB3aWRnZXRfaW4sCisgICAgICBvdXRwdXQgPSB3aWRnZXRfb3V0LAorICAgICAgdHlwbW9kX2lu ID0gbnVtZXJpY3R5cG1vZGluLAorICAgICAgdHlwbW9kX291dCA9IG51bWVyaWN0eXBtb2RvdXQs CisgICAgICBhbGlnbm1lbnQgPSBkb3VibGUKKyAgICk7CisKIENSRUFURSBUWVBFIHdpZGdldCAo CiAgICBpbnRlcm5hbGxlbmd0aCA9IDI0LAogICAgaW5wdXQgPSB3aWRnZXRfaW4sCi0tIAoyLjM0 LjEKCg== --000000000000e3d97d063d3d74f7 Content-Type: text/x-patch; charset="UTF-8"; name="v7-0001-Don-t-try-to-re-order-the-subcommands-of-CREATE-SCHEMA.patch" Content-Disposition: attachment; filename="v7-0001-Don-t-try-to-re-order-the-subcommands-of-CREATE-SCHEMA.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mes2iub82 RnJvbSBjMmIzNGExZWJjOGU0YWY0YTllNDExZDgzYjVlNjI5MTU0ZWJlMDQzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBUb20gTGFuZSA8dGdsQHNzcy5wZ2gucGEudXM+CkRhdGU6IFR1 ZSwgMTkgQXVnIDIwMjUgMTA6NTI6MDUgKzA4MDAKU3ViamVjdDogW1BBVENIIHY3IDEvNF0gRG9u J3QgdHJ5IHRvIHJlLW9yZGVyIHRoZSBzdWJjb21tYW5kcyBvZiBDUkVBVEUgU0NIRU1BCk1JTUUt VmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOApDb250 ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0Cgp0cmFuc2Zvcm1DcmVhdGVTY2hlbWFTdG10RWxl bWVudHMgaGFzIGFsd2F5cyBiZWxpZXZlZCB0aGF0IGl0IGlzCnN1cHBvc2VkIHRvIHJlLW9yZGVy IHRoZSBzdWJjb21tYW5kcyBvZiBDUkVBVEUgU0NIRU1BIGludG8gYSBzYWZlCmV4ZWN1dGlvbiBv cmRlci4gIEhvd2V2ZXIsIGl0IGlzIG5vd2hlcmUgbmVhciBiZWluZyBjYXBhYmxlIG9mIGRvaW5n CnRoYXQgY29ycmVjdGx5LiAgTm9yIGlzIHRoZXJlIHJlYXNvbiB0byB0aGluayB0aGF0IGl0IGV2 ZXIgd2lsbCBiZSwKb3IgdGhhdCB0aGF0IGlzIGEgd2VsbC1kZWZpbmVkIHJlcXVpcmVtZW50LCBv ciB0aGF0IHRoZXJlJ3MgYW55IGJhc2lzCmluIHRoZSBTUUwgc3RhbmRhcmQgZm9yIGl0LiAgTW9y ZW92ZXIsIHRoZSBwcm9ibGVtIHdpbGwgZ2V0IHdvcnNlIGFzCndlIGFkZCBtb3JlIHN1YmNvbW1h bmQgdHlwZXMuICBMZXQncyBqdXN0IGRyb3AgdGhlIHdob2xlIGlkZWEgYW5kCmV4ZWN1dGUgdGhl IGNvbW1hbmRzIGluIHRoZSBvcmRlciBnaXZlbiwgd2hpY2ggc2VlbXMgbGlrZSBhIG11Y2ggbGVz cwphc3RvbmlzaG1lbnQtcHJvbmUgZGVmaW5pdGlvbiBhbnl3YXkuCgpBbG9uZyB0aGUgd2F5LCBw YXNzIGRvd24gYSBQYXJzZVN0YXRlIHNvIHRoYXQgd2UgY2FuIHByb3ZpZGUgYW4KZXJyb3IgY3Vy c29yIGZvciB0aGUgIndyb25nIHNjaGVtYSBuYW1lIiBlcnJvciwgYW5kIGZpeAp0cmFuc2Zvcm1D cmVhdGVTY2hlbWFTdG10RWxlbWVudHMgc28gdGhhdCBpdCBkb2Vzbid0IHNjcmliYmxlCm9uIHRo ZSBwYXJzZXRyZWUgcGFzc2VkIHRvIGl0LgoKTm90ZTogVGhpcyB3aWxsIGNhdXNlIGNvbXBhdGli aWxpdHkgaXNzdWUsCmZvciBleGFtcGxlOgpDUkVBVEUgU0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIK ICBDUkVBVEUgVklFVyBhYmNkX3ZpZXcgQVMgU0VMRUNUIGEgRlJPTSBhYmNkCiAgQ1JFQVRFIFRB QkxFIGFiY2QgKGEgaW50KTsKCldpdGggdGhlIHBhdGNoLCBpdCB3aWxsIHRocm93IGFuIGVycm9y LCB3aGVyZWFzIG9uIEhFQUQgaXQgd29u4oCZdC4KCkRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdy LmVzL20vMTA3NTQyNS4xNzMyOTkzNjg4QHNzcy5wZ2gucGEudXMKLS0tCiBkb2Mvc3JjL3NnbWwv cmVmL2NyZWF0ZV9zY2hlbWEuc2dtbCAgICAgICAgIHwgIDEwICstCiBzcmMvYmFja2VuZC9jb21t YW5kcy9leHRlbnNpb24uYyAgICAgICAgICAgIHwgICA3ICstCiBzcmMvYmFja2VuZC9jb21tYW5k cy9zY2hlbWFjbWRzLmMgICAgICAgICAgIHwgIDE1ICsrLQogc3JjL2JhY2tlbmQvcGFyc2VyL3Bh cnNlX3V0aWxjbWQuYyAgICAgICAgICB8IDEzNSArKysrKysrKy0tLS0tLS0tLS0tLQogc3JjL2Jh Y2tlbmQvdGNvcC91dGlsaXR5LmMgICAgICAgICAgICAgICAgICB8ICAgMyArLQogc3JjL2luY2x1 ZGUvY29tbWFuZHMvc2NoZW1hY21kcy5oICAgICAgICAgICB8ICAgNyArLQogc3JjL2luY2x1ZGUv cGFyc2VyL3BhcnNlX3V0aWxjbWQuaCAgICAgICAgICB8ICAgMyArLQogc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dCB8ICAzNyArKysrKysKIHNyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvY3JlYXRlX3ZpZXcub3V0ICAgfCAgIDIgKwogc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9ldmVudF90cmlnZ2VyLm91dCB8ICAgMiArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9uYW1lc3BhY2Uub3V0ICAgICB8ICAgOSArLQogc3JjL3Rlc3QvcmVncmVzcy9zcWwvY3Jl YXRlX3NjaGVtYS5zcWwgICAgICB8ICAgNSArCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9uYW1lc3Bh Y2Uuc3FsICAgICAgICAgIHwgIDExICstCiBzcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlz dCAgICAgICAgICAgIHwgICAxIC0KIDE0IGZpbGVzIGNoYW5nZWQsIDEzMiBpbnNlcnRpb25zKCsp LCAxMTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVf c2NoZW1hLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9zY2hlbWEuc2dtbAppbmRleCBl ZDY5Mjk4Y2NjNi4uNjI1NzkzYTZiNjcgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvY3Jl YXRlX3NjaGVtYS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3NjaGVtYS5zZ21s CkBAIC0xOTMsMTIgKzE5MywxMCBAQCBDUkVBVEUgVklFVyBob2xseXdvb2Qud2lubmVycyBBUwog ICA8L3BhcmE+CiAKICAgPHBhcmE+Ci0gICBUaGUgU1FMIHN0YW5kYXJkIHNwZWNpZmllcyB0aGF0 IHRoZSBzdWJjb21tYW5kcyBpbiA8Y29tbWFuZD5DUkVBVEUKLSAgIFNDSEVNQTwvY29tbWFuZD4g Y2FuIGFwcGVhciBpbiBhbnkgb3JkZXIuICBUaGUgcHJlc2VudAotICAgPHByb2R1Y3RuYW1lPlBv c3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdAotICAgaGFuZGxl IGFsbCBjYXNlcyBvZiBmb3J3YXJkIHJlZmVyZW5jZXMgaW4gc3ViY29tbWFuZHM7IGl0IG1pZ2h0 Ci0gICBzb21ldGltZXMgYmUgbmVjZXNzYXJ5IHRvIHJlb3JkZXIgdGhlIHN1YmNvbW1hbmRzIGlu IG9yZGVyIHRvIGF2b2lkCi0gICBmb3J3YXJkIHJlZmVyZW5jZXMuCisgICA8cHJvZHVjdG5hbWU+ UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IGV4ZWN1dGVzIHRoZSBzdWJjb21tYW5kcworICAgaW4g PGNvbW1hbmQ+Q1JFQVRFIFNDSEVNQTwvY29tbWFuZD4gaW4gdGhlIG9yZGVyIGdpdmVuLiAgT3Ro ZXIKKyAgIGltcGxlbWVudGF0aW9ucyBtYXkgdHJ5IHRvIHJlYXJyYW5nZSB0aGUgc3ViY29tbWFu ZHMgaW50byBkZXBlbmRlbmN5CisgICBvcmRlciwgYnV0IHRoYXQgaXMgaGFyZCBpZiBub3QgaW1w b3NzaWJsZSB0byBkbyBjb3JyZWN0bHkuCiAgIDwvcGFyYT4KIAogICA8cGFyYT4KZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2V4dGVuc2lvbi5jIGIvc3JjL2JhY2tlbmQvY29tbWFu ZHMvZXh0ZW5zaW9uLmMKaW5kZXggZTZmOWFiNmRmZDYuLmFkNTc4YmM3NmY3IDEwMDY0NAotLS0g YS9zcmMvYmFja2VuZC9jb21tYW5kcy9leHRlbnNpb24uYworKysgYi9zcmMvYmFja2VuZC9jb21t YW5kcy9leHRlbnNpb24uYwpAQCAtMTc3MywxNCArMTc3MywxNyBAQCBDcmVhdGVFeHRlbnNpb25J bnRlcm5hbChjaGFyICpleHRlbnNpb25OYW1lLAogCiAJCWlmICghT2lkSXNWYWxpZChzY2hlbWFP aWQpKQogCQl7CisJCQlQYXJzZVN0YXRlICpwc3RhdGUgPSBtYWtlX3BhcnNlc3RhdGUoTlVMTCk7 CiAJCQlDcmVhdGVTY2hlbWFTdG10ICpjc3N0bXQgPSBtYWtlTm9kZShDcmVhdGVTY2hlbWFTdG10 KTsKIAorCQkJcHN0YXRlLT5wX3NvdXJjZXRleHQgPSAiKGdlbmVyYXRlZCBDUkVBVEUgU0NIRU1B IGNvbW1hbmQpIjsKKwogCQkJY3NzdG10LT5zY2hlbWFuYW1lID0gc2NoZW1hTmFtZTsKIAkJCWNz c3RtdC0+YXV0aHJvbGUgPSBOVUxMOwkvKiB3aWxsIGJlIGNyZWF0ZWQgYnkgY3VycmVudCB1c2Vy ICovCiAJCQljc3N0bXQtPnNjaGVtYUVsdHMgPSBOSUw7CiAJCQljc3N0bXQtPmlmX25vdF9leGlz dHMgPSBmYWxzZTsKLQkJCUNyZWF0ZVNjaGVtYUNvbW1hbmQoY3NzdG10LCAiKGdlbmVyYXRlZCBD UkVBVEUgU0NIRU1BIGNvbW1hbmQpIiwKLQkJCQkJCQkJLTEsIC0xKTsKKworCQkJQ3JlYXRlU2No ZW1hQ29tbWFuZChwc3RhdGUsIGNzc3RtdCwgLTEsIC0xKTsKIAogCQkJLyoKIAkJCSAqIENyZWF0 ZVNjaGVtYUNvbW1hbmQgaW5jbHVkZXMgQ29tbWFuZENvdW50ZXJJbmNyZW1lbnQsIHNvIG5ldwpk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc2NoZW1hY21kcy5jIGIvc3JjL2JhY2tl bmQvY29tbWFuZHMvc2NoZW1hY21kcy5jCmluZGV4IDBmMDNkOTc0M2QyLi5iMzI5MzUyMTVmOSAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc2NoZW1hY21kcy5jCisrKyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL3NjaGVtYWNtZHMuYwpAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgdm9p ZCBBbHRlclNjaGVtYU93bmVyX2ludGVybmFsKEhlYXBUdXBsZSB0dXAsIFJlbGF0aW9uIHJlbCwg T2lkIG5ld093bmVySQogICogYSBzdWJxdWVyeS4KICAqLwogT2lkCi1DcmVhdGVTY2hlbWFDb21t YW5kKENyZWF0ZVNjaGVtYVN0bXQgKnN0bXQsIGNvbnN0IGNoYXIgKnF1ZXJ5U3RyaW5nLAorQ3Jl YXRlU2NoZW1hQ29tbWFuZChQYXJzZVN0YXRlICpwc3RhdGUsIENyZWF0ZVNjaGVtYVN0bXQgKnN0 bXQsCiAJCQkJCWludCBzdG10X2xvY2F0aW9uLCBpbnQgc3RtdF9sZW4pCiB7CiAJY29uc3QgY2hh ciAqc2NoZW1hTmFtZSA9IHN0bXQtPnNjaGVtYW5hbWU7CkBAIC0xODksMTIgKzE4OSwxMyBAQCBD cmVhdGVTY2hlbWFDb21tYW5kKENyZWF0ZVNjaGVtYVN0bXQgKnN0bXQsIGNvbnN0IGNoYXIgKnF1 ZXJ5U3RyaW5nLAogCiAJLyoKIAkgKiBFeGFtaW5lIHRoZSBsaXN0IG9mIGNvbW1hbmRzIGVtYmVk ZGVkIGluIHRoZSBDUkVBVEUgU0NIRU1BIGNvbW1hbmQsIGFuZAotCSAqIHJlb3JnYW5pemUgdGhl bSBpbnRvIGEgc2VxdWVudGlhbGx5IGV4ZWN1dGFibGUgb3JkZXIgd2l0aCBubyBmb3J3YXJkCi0J ICogcmVmZXJlbmNlcy4gIE5vdGUgdGhhdCB0aGUgcmVzdWx0IGlzIHN0aWxsIGEgbGlzdCBvZiBy YXcgcGFyc2V0cmVlcyAtLS0KLQkgKiB3ZSBjYW5ub3QsIGluIGdlbmVyYWwsIHJ1biBwYXJzZSBh bmFseXNpcyBvbiBvbmUgc3RhdGVtZW50IHVudGlsIHdlCi0JICogaGF2ZSBhY3R1YWxseSBleGVj dXRlZCB0aGUgcHJpb3Igb25lcy4KKwkgKiBkbyBwcmVsaW1pbmFyeSB0cmFuc2Zvcm1hdGlvbnMg KG1vc3RseSwgdmVyaWZ5IHRoYXQgbm9uZSBhcmUgdHJ5aW5nIHRvCisJICogY3JlYXRlIG9iamVj dHMgb3V0c2lkZSB0aGUgbmV3IHNjaGVtYSkuICBOb3RlIHRoYXQgdGhlIHJlc3VsdCBpcyBzdGls bAorCSAqIGEgbGlzdCBvZiByYXcgcGFyc2V0cmVlcyAtLS0gd2UgY2Fubm90LCBpbiBnZW5lcmFs LCBydW4gcGFyc2UgYW5hbHlzaXMKKwkgKiBvbiBvbmUgc3RhdGVtZW50IHVudGlsIHdlIGhhdmUg YWN0dWFsbHkgZXhlY3V0ZWQgdGhlIHByaW9yIG9uZXMuCiAJICovCi0JcGFyc2V0cmVlX2xpc3Qg PSB0cmFuc2Zvcm1DcmVhdGVTY2hlbWFTdG10RWxlbWVudHMoc3RtdC0+c2NoZW1hRWx0cywKKwlw YXJzZXRyZWVfbGlzdCA9IHRyYW5zZm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhwc3RhdGUs CisJCQkJCQkJCQkJCQkJICAgc3RtdC0+c2NoZW1hRWx0cywKIAkJCQkJCQkJCQkJCQkgICBzY2hl bWFOYW1lKTsKIAogCS8qCkBAIC0yMTksNyArMjIwLDcgQEAgQ3JlYXRlU2NoZW1hQ29tbWFuZChD cmVhdGVTY2hlbWFTdG10ICpzdG10LCBjb25zdCBjaGFyICpxdWVyeVN0cmluZywKIAogCQkvKiBk byB0aGlzIHN0ZXAgKi8KIAkJUHJvY2Vzc1V0aWxpdHkod3JhcHBlciwKLQkJCQkJICAgcXVlcnlT dHJpbmcsCisJCQkJCSAgIHBzdGF0ZS0+cF9zb3VyY2V0ZXh0LAogCQkJCQkgICBmYWxzZSwKIAkJ CQkJICAgUFJPQ0VTU19VVElMSVRZX1NVQkNPTU1BTkQsCiAJCQkJCSAgIE5VTEwsCmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jIGIvc3JjL2JhY2tlbmQvcGFy c2VyL3BhcnNlX3V0aWxjbWQuYwppbmRleCBhZmNmNTQxNjljMy4uNzQ2NzJhNDU4ZDUgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKKysrIGIvc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYwpAQCAtOTUsMTggKzk1LDYgQEAgdHlwZWRlZiBzdHJ1 Y3QKIAlib29sCQlvZlR5cGU7CQkJLyogdHJ1ZSBpZiBzdGF0ZW1lbnQgY29udGFpbnMgT0YgdHlw ZW5hbWUgKi8KIH0gQ3JlYXRlU3RtdENvbnRleHQ7CiAKLS8qIFN0YXRlIHNoYXJlZCBieSB0cmFu c2Zvcm1DcmVhdGVTY2hlbWFTdG10RWxlbWVudHMgYW5kIGl0cyBzdWJyb3V0aW5lcyAqLwotdHlw ZWRlZiBzdHJ1Y3QKLXsKLQljb25zdCBjaGFyICpzY2hlbWFuYW1lOwkJLyogbmFtZSBvZiBzY2hl bWEgKi8KLQlMaXN0CSAgICpzZXF1ZW5jZXM7CQkvKiBDUkVBVEUgU0VRVUVOQ0UgaXRlbXMgKi8K LQlMaXN0CSAgICp0YWJsZXM7CQkJLyogQ1JFQVRFIFRBQkxFIGl0ZW1zICovCi0JTGlzdAkgICAq dmlld3M7CQkJLyogQ1JFQVRFIFZJRVcgaXRlbXMgKi8KLQlMaXN0CSAgICppbmRleGVzOwkJLyog Q1JFQVRFIElOREVYIGl0ZW1zICovCi0JTGlzdAkgICAqdHJpZ2dlcnM7CQkvKiBDUkVBVEUgVFJJ R0dFUiBpdGVtcyAqLwotCUxpc3QJICAgKmdyYW50czsJCQkvKiBHUkFOVCBpdGVtcyAqLwotfSBD cmVhdGVTY2hlbWFTdG10Q29udGV4dDsKLQogCiBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1Db2x1bW5E ZWZpbml0aW9uKENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsCiAJCQkJCQkJCQkgIENvbHVtbkRlZiAq Y29sdW1uKTsKQEAgLTEzMyw3ICsxMjEsOCBAQCBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1DaGVja0Nv bnN0cmFpbnRzKENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsCiBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1D b25zdHJhaW50QXR0cnMoQ3JlYXRlU3RtdENvbnRleHQgKmN4dCwKIAkJCQkJCQkJCSBMaXN0ICpj b25zdHJhaW50TGlzdCk7CiBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1Db2x1bW5UeXBlKENyZWF0ZVN0 bXRDb250ZXh0ICpjeHQsIENvbHVtbkRlZiAqY29sdW1uKTsKLXN0YXRpYyB2b2lkIHNldFNjaGVt YU5hbWUoY29uc3QgY2hhciAqY29udGV4dF9zY2hlbWEsIGNoYXIgKipzdG10X3NjaGVtYV9uYW1l KTsKK3N0YXRpYyB2b2lkIGNoZWNrU2NoZW1hTmFtZShQYXJzZVN0YXRlICpwc3RhdGUsIGNvbnN0 IGNoYXIgKmNvbnRleHRfc2NoZW1hLAorCQkJCQkJCVJhbmdlVmFyICpyZWxhdGlvbik7CiBzdGF0 aWMgdm9pZCB0cmFuc2Zvcm1QYXJ0aXRpb25DbWQoQ3JlYXRlU3RtdENvbnRleHQgKmN4dCwgUGFy dGl0aW9uQ21kICpjbWQpOwogc3RhdGljIExpc3QgKnRyYW5zZm9ybVBhcnRpdGlvblJhbmdlQm91 bmRzKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqYmxpc3QsCiAJCQkJCQkJCQkJICAgUmVsYXRp b24gcGFyZW50KTsKQEAgLTQwNzYsNTEgKzQwNjUsMzUgQEAgdHJhbnNmb3JtQ29sdW1uVHlwZShD cmVhdGVTdG10Q29udGV4dCAqY3h0LCBDb2x1bW5EZWYgKmNvbHVtbikKICAqIHRyYW5zZm9ybUNy ZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyAtCiAgKgkgIGFuYWx5emVzIHRoZSBlbGVtZW50cyBvZiBh IENSRUFURSBTQ0hFTUEgc3RhdGVtZW50CiAgKgotICogU3BsaXQgdGhlIHNjaGVtYSBlbGVtZW50 IGxpc3QgZnJvbSBhIENSRUFURSBTQ0hFTUEgc3RhdGVtZW50IGludG8KLSAqIGluZGl2aWR1YWwg Y29tbWFuZHMgYW5kIHBsYWNlIHRoZW0gaW4gdGhlIHJlc3VsdCBsaXN0IGluIGFuIG9yZGVyCi0g KiBzdWNoIHRoYXQgdGhlcmUgYXJlIG5vIGZvcndhcmQgcmVmZXJlbmNlcyAoZS5nLiBHUkFOVCB0 byBhIHRhYmxlCi0gKiBjcmVhdGVkIGxhdGVyIGluIHRoZSBsaXN0KS4gTm90ZSB0aGF0IHRoZSBs b2dpYyB3ZSB1c2UgZm9yIGRldGVybWluaW5nCi0gKiBmb3J3YXJkIHJlZmVyZW5jZXMgaXMgcHJl c2VudGx5IHF1aXRlIGluY29tcGxldGUuCisgKiBUaGlzIGlzIG5vdyBzb21ld2hhdCB2ZXN0aWdp YWw6IGl0cyBvbmx5IHJlYWwgcmVzcG9uc2liaWxpdHkgaXMgdG8gY29tcGxhaW4KKyAqIGlmIGFu eSBvZiB0aGUgZWxlbWVudHMgYXJlIHRyeWluZyB0byBjcmVhdGUgb2JqZWN0cyBvdXRzaWRlIHRo ZSBuZXcgc2NoZW1hLgorICogV2UgdXNlZCB0byB0cnkgdG8gcmUtb3JkZXIgdGhlIGNvbW1hbmRz IGluIGEgd2F5IHRoYXQgd291bGQgd29yayBldmVuIGlmCisgKiB0aGUgdXNlci13cml0dGVuIG9y ZGVyIHdvdWxkIG5vdCwgYnV0IHRoYXQncyB0b28gaGFyZCAocGVyaGFwcyBpbXBvc3NpYmxlKQor ICogdG8gZG8gY29ycmVjdGx5IHdpdGggbm90LXlldC1wYXJzZS1hbmFseXplZCBjb21tYW5kcy4g IE5vdyB3ZSdsbCBqdXN0CisgKiBleGVjdXRlIHRoZSBlbGVtZW50cyBpbiB0aGUgb3JkZXIgZ2l2 ZW4uCiAgKgogICogInNjaGVtYU5hbWUiIGlzIHRoZSBuYW1lIG9mIHRoZSBzY2hlbWEgdGhhdCB3 aWxsIGJlIHVzZWQgZm9yIHRoZSBjcmVhdGlvbgotICogb2YgdGhlIG9iamVjdHMgbGlzdGVkLCB0 aGF0IG1heSBiZSBjb21waWxlZCBmcm9tIHRoZSBzY2hlbWEgbmFtZSBkZWZpbmVkCisgKiBvZiB0 aGUgb2JqZWN0cyBsaXN0ZWQuICBJdCBtYXkgYmUgb2J0YWluZWQgZnJvbSB0aGUgc2NoZW1hIG5h bWUgZGVmaW5lZAogICogaW4gdGhlIHN0YXRlbWVudCBvciBhIHJvbGUgc3BlY2lmaWNhdGlvbi4K ICAqCi0gKiBTUUwgYWxzbyBhbGxvd3MgY29uc3RyYWludHMgdG8gbWFrZSBmb3J3YXJkIHJlZmVy ZW5jZXMsIHNvIHRodW1iIHRocm91Z2gKLSAqIHRoZSB0YWJsZSBjb2x1bW5zIGFuZCBtb3ZlIGZv cndhcmQgcmVmZXJlbmNlcyB0byBhIHBvc3RlcmlvciBhbHRlci10YWJsZQotICogY29tbWFuZC4K LSAqCiAgKiBUaGUgcmVzdWx0IGlzIGEgbGlzdCBvZiBwYXJzZSBub2RlcyB0aGF0IHN0aWxsIG5l ZWQgdG8gYmUgYW5hbHl6ZWQgLS0tCiAgKiBidXQgd2UgY2FuJ3QgYW5hbHl6ZSB0aGUgbGF0ZXIg Y29tbWFuZHMgdW50aWwgd2UndmUgZXhlY3V0ZWQgdGhlIGVhcmxpZXIKICAqIG9uZXMsIGJlY2F1 c2Ugb2YgcG9zc2libGUgaW50ZXItb2JqZWN0IHJlZmVyZW5jZXMuCi0gKgotICogTm90ZTogdGhp cyBicmVha3MgdGhlIHJ1bGVzIGEgbGl0dGxlIGJpdCBieSBtb2RpZnlpbmcgc2NoZW1hLW5hbWUg ZmllbGRzCi0gKiB3aXRoaW4gcGFzc2VkLWluIHN0cnVjdHMuICBIb3dldmVyLCB0aGUgdHJhbnNm b3JtYXRpb24gd291bGQgYmUgdGhlIHNhbWUKLSAqIGlmIGRvbmUgb3Zlciwgc28gaXQgc2hvdWxk IGJlIGFsbCByaWdodCB0byBzY3JpYmJsZSBvbiB0aGUgaW5wdXQgdG8gdGhpcwotICogZXh0ZW50 LgogICovCiBMaXN0ICoKLXRyYW5zZm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhMaXN0ICpz Y2hlbWFFbHRzLCBjb25zdCBjaGFyICpzY2hlbWFOYW1lKQordHJhbnNmb3JtQ3JlYXRlU2NoZW1h U3RtdEVsZW1lbnRzKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqc2NoZW1hRWx0cywKKwkJCQkJ CQkJICBjb25zdCBjaGFyICpzY2hlbWFOYW1lKQogewotCUNyZWF0ZVNjaGVtYVN0bXRDb250ZXh0 IGN4dDsKLQlMaXN0CSAgICpyZXN1bHQ7Ci0JTGlzdENlbGwgICAqZWxlbWVudHM7Ci0KLQljeHQu c2NoZW1hbmFtZSA9IHNjaGVtYU5hbWU7Ci0JY3h0LnNlcXVlbmNlcyA9IE5JTDsKLQljeHQudGFi bGVzID0gTklMOwotCWN4dC52aWV3cyA9IE5JTDsKLQljeHQuaW5kZXhlcyA9IE5JTDsKLQljeHQu dHJpZ2dlcnMgPSBOSUw7Ci0JY3h0LmdyYW50cyA9IE5JTDsKKwlMaXN0CSAgICplbGVtZW50cyA9 IE5JTDsKKwlMaXN0Q2VsbCAgICpsYzsKIAogCS8qCi0JICogUnVuIHRocm91Z2ggZWFjaCBzY2hl bWEgZWxlbWVudCBpbiB0aGUgc2NoZW1hIGVsZW1lbnQgbGlzdC4gU2VwYXJhdGUKLQkgKiBzdGF0 ZW1lbnRzIGJ5IHR5cGUsIGFuZCBkbyBwcmVsaW1pbmFyeSBhbmFseXNpcy4KKwkgKiBSdW4gdGhy b3VnaCBlYWNoIHNjaGVtYSBlbGVtZW50IGluIHRoZSBzY2hlbWEgZWxlbWVudCBsaXN0LiAgQ2hl Y2sKKwkgKiB0YXJnZXQgc2NoZW1hIG5hbWVzLCBhbmQgY29sbGVjdCB0aGUgbGlzdCBvZiBhY3Rp b25zIHRvIGJlIGRvbmUuCiAJICovCi0JZm9yZWFjaChlbGVtZW50cywgc2NoZW1hRWx0cykKKwlm b3JlYWNoKGxjLCBzY2hlbWFFbHRzKQogCXsKLQkJTm9kZQkgICAqZWxlbWVudCA9IGxmaXJzdChl bGVtZW50cyk7CisJCU5vZGUJICAgKmVsZW1lbnQgPSBsZmlyc3QobGMpOwogCiAJCXN3aXRjaCAo bm9kZVRhZyhlbGVtZW50KSkKIAkJewpAQCAtNDEyOCw4ICs0MTAxLDggQEAgdHJhbnNmb3JtQ3Jl YXRlU2NoZW1hU3RtdEVsZW1lbnRzKExpc3QgKnNjaGVtYUVsdHMsIGNvbnN0IGNoYXIgKnNjaGVt YU5hbWUpCiAJCQkJewogCQkJCQlDcmVhdGVTZXFTdG10ICplbHAgPSAoQ3JlYXRlU2VxU3RtdCAq KSBlbGVtZW50OwogCi0JCQkJCXNldFNjaGVtYU5hbWUoY3h0LnNjaGVtYW5hbWUsICZlbHAtPnNl cXVlbmNlLT5zY2hlbWFuYW1lKTsKLQkJCQkJY3h0LnNlcXVlbmNlcyA9IGxhcHBlbmQoY3h0LnNl cXVlbmNlcywgZWxlbWVudCk7CisJCQkJCWNoZWNrU2NoZW1hTmFtZShwc3RhdGUsIHNjaGVtYU5h bWUsIGVscC0+c2VxdWVuY2UpOworCQkJCQllbGVtZW50cyA9IGxhcHBlbmQoZWxlbWVudHMsIGVs ZW1lbnQpOwogCQkJCX0KIAkJCQlicmVhazsKIApAQCAtNDEzNywxMiArNDExMCw4IEBAIHRyYW5z Zm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhMaXN0ICpzY2hlbWFFbHRzLCBjb25zdCBjaGFy ICpzY2hlbWFOYW1lKQogCQkJCXsKIAkJCQkJQ3JlYXRlU3RtdCAqZWxwID0gKENyZWF0ZVN0bXQg KikgZWxlbWVudDsKIAotCQkJCQlzZXRTY2hlbWFOYW1lKGN4dC5zY2hlbWFuYW1lLCAmZWxwLT5y ZWxhdGlvbi0+c2NoZW1hbmFtZSk7Ci0KLQkJCQkJLyoKLQkJCQkJICogWFhYIHRvZG86IGRlYWwg d2l0aCBjb25zdHJhaW50cwotCQkJCQkgKi8KLQkJCQkJY3h0LnRhYmxlcyA9IGxhcHBlbmQoY3h0 LnRhYmxlcywgZWxlbWVudCk7CisJCQkJCWNoZWNrU2NoZW1hTmFtZShwc3RhdGUsIHNjaGVtYU5h bWUsIGVscC0+cmVsYXRpb24pOworCQkJCQllbGVtZW50cyA9IGxhcHBlbmQoZWxlbWVudHMsIGVs ZW1lbnQpOwogCQkJCX0KIAkJCQlicmVhazsKIApAQCAtNDE1MCwxMiArNDExOSw4IEBAIHRyYW5z Zm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhMaXN0ICpzY2hlbWFFbHRzLCBjb25zdCBjaGFy ICpzY2hlbWFOYW1lKQogCQkJCXsKIAkJCQkJVmlld1N0bXQgICAqZWxwID0gKFZpZXdTdG10ICop IGVsZW1lbnQ7CiAKLQkJCQkJc2V0U2NoZW1hTmFtZShjeHQuc2NoZW1hbmFtZSwgJmVscC0+dmll dy0+c2NoZW1hbmFtZSk7Ci0KLQkJCQkJLyoKLQkJCQkJICogWFhYIHRvZG86IGRlYWwgd2l0aCBy ZWZlcmVuY2VzIGJldHdlZW4gdmlld3MKLQkJCQkJICovCi0JCQkJCWN4dC52aWV3cyA9IGxhcHBl bmQoY3h0LnZpZXdzLCBlbGVtZW50KTsKKwkJCQkJY2hlY2tTY2hlbWFOYW1lKHBzdGF0ZSwgc2No ZW1hTmFtZSwgZWxwLT52aWV3KTsKKwkJCQkJZWxlbWVudHMgPSBsYXBwZW5kKGVsZW1lbnRzLCBl bGVtZW50KTsKIAkJCQl9CiAJCQkJYnJlYWs7CiAKQEAgLTQxNjMsOCArNDEyOCw4IEBAIHRyYW5z Zm9ybUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhMaXN0ICpzY2hlbWFFbHRzLCBjb25zdCBjaGFy ICpzY2hlbWFOYW1lKQogCQkJCXsKIAkJCQkJSW5kZXhTdG10ICAqZWxwID0gKEluZGV4U3RtdCAq KSBlbGVtZW50OwogCi0JCQkJCXNldFNjaGVtYU5hbWUoY3h0LnNjaGVtYW5hbWUsICZlbHAtPnJl bGF0aW9uLT5zY2hlbWFuYW1lKTsKLQkJCQkJY3h0LmluZGV4ZXMgPSBsYXBwZW5kKGN4dC5pbmRl eGVzLCBlbGVtZW50KTsKKwkJCQkJY2hlY2tTY2hlbWFOYW1lKHBzdGF0ZSwgc2NoZW1hTmFtZSwg ZWxwLT5yZWxhdGlvbik7CisJCQkJCWVsZW1lbnRzID0gbGFwcGVuZChlbGVtZW50cywgZWxlbWVu dCk7CiAJCQkJfQogCQkJCWJyZWFrOwogCkBAIC00MTcyLDEzICs0MTM3LDEzIEBAIHRyYW5zZm9y bUNyZWF0ZVNjaGVtYVN0bXRFbGVtZW50cyhMaXN0ICpzY2hlbWFFbHRzLCBjb25zdCBjaGFyICpz Y2hlbWFOYW1lKQogCQkJCXsKIAkJCQkJQ3JlYXRlVHJpZ1N0bXQgKmVscCA9IChDcmVhdGVUcmln U3RtdCAqKSBlbGVtZW50OwogCi0JCQkJCXNldFNjaGVtYU5hbWUoY3h0LnNjaGVtYW5hbWUsICZl bHAtPnJlbGF0aW9uLT5zY2hlbWFuYW1lKTsKLQkJCQkJY3h0LnRyaWdnZXJzID0gbGFwcGVuZChj eHQudHJpZ2dlcnMsIGVsZW1lbnQpOworCQkJCQljaGVja1NjaGVtYU5hbWUocHN0YXRlLCBzY2hl bWFOYW1lLCBlbHAtPnJlbGF0aW9uKTsKKwkJCQkJZWxlbWVudHMgPSBsYXBwZW5kKGVsZW1lbnRz LCBlbGVtZW50KTsKIAkJCQl9CiAJCQkJYnJlYWs7CiAKIAkJCWNhc2UgVF9HcmFudFN0bXQ6Ci0J CQkJY3h0LmdyYW50cyA9IGxhcHBlbmQoY3h0LmdyYW50cywgZWxlbWVudCk7CisJCQkJZWxlbWVu dHMgPSBsYXBwZW5kKGVsZW1lbnRzLCBlbGVtZW50KTsKIAkJCQlicmVhazsKIAogCQkJZGVmYXVs dDoKQEAgLTQxODcsMzIgKzQxNTIsNDAgQEAgdHJhbnNmb3JtQ3JlYXRlU2NoZW1hU3RtdEVsZW1l bnRzKExpc3QgKnNjaGVtYUVsdHMsIGNvbnN0IGNoYXIgKnNjaGVtYU5hbWUpCiAJCX0KIAl9CiAK LQlyZXN1bHQgPSBOSUw7Ci0JcmVzdWx0ID0gbGlzdF9jb25jYXQocmVzdWx0LCBjeHQuc2VxdWVu Y2VzKTsKLQlyZXN1bHQgPSBsaXN0X2NvbmNhdChyZXN1bHQsIGN4dC50YWJsZXMpOwotCXJlc3Vs dCA9IGxpc3RfY29uY2F0KHJlc3VsdCwgY3h0LnZpZXdzKTsKLQlyZXN1bHQgPSBsaXN0X2NvbmNh dChyZXN1bHQsIGN4dC5pbmRleGVzKTsKLQlyZXN1bHQgPSBsaXN0X2NvbmNhdChyZXN1bHQsIGN4 dC50cmlnZ2Vycyk7Ci0JcmVzdWx0ID0gbGlzdF9jb25jYXQocmVzdWx0LCBjeHQuZ3JhbnRzKTsK LQotCXJldHVybiByZXN1bHQ7CisJcmV0dXJuIGVsZW1lbnRzOwogfQogCiAvKgotICogc2V0U2No ZW1hTmFtZQotICoJCVNldCBvciBjaGVjayBzY2hlbWEgbmFtZSBpbiBhbiBlbGVtZW50IG9mIGEg Q1JFQVRFIFNDSEVNQSBjb21tYW5kCisgKiBjaGVja1NjaGVtYU5hbWUKKyAqCQlDaGVjayBzY2hl bWEgbmFtZSBpbiBhbiBlbGVtZW50IG9mIGEgQ1JFQVRFIFNDSEVNQSBjb21tYW5kCisgKgorICog SXQncyBva2F5IGlmIHRoZSBjb21tYW5kIGRvZXNuJ3Qgc3BlY2lmeSBhIHRhcmdldCBzY2hlbWEg bmFtZSwgYmVjYXVzZQorICogQ3JlYXRlU2NoZW1hQ29tbWFuZCB3aWxsIHNldCB1cCB0aGUgZGVm YXVsdCBjcmVhdGlvbiBzY2hlbWEgdG8gYmUgdGhlCisgKiBuZXcgc2NoZW1hLiAgQnV0IGlmIGEg dGFyZ2V0IHNjaGVtYSBuYW1lIGlzIGdpdmVuLCBpdCBoYWQgYmV0dGVyIG1hdGNoLgorICogV2Ug YWxzbyBoYXZlIHRvIGNoZWNrIHRoYXQgdGhlIGNvbW1hbmQgZG9lc24ndCBzYXkgQ1JFQVRFIFRF TVAsIHNpbmNlCisgKiB0aGF0IHdvdWxkIGxpa2V3aXNlIHB1dCB0aGUgb2JqZWN0IGludG8gdGhl IHdyb25nIHNjaGVtYS4KICAqLwogc3RhdGljIHZvaWQKLXNldFNjaGVtYU5hbWUoY29uc3QgY2hh ciAqY29udGV4dF9zY2hlbWEsIGNoYXIgKipzdG10X3NjaGVtYV9uYW1lKQorY2hlY2tTY2hlbWFO YW1lKFBhcnNlU3RhdGUgKnBzdGF0ZSwgY29uc3QgY2hhciAqY29udGV4dF9zY2hlbWEsCisJCQkJ UmFuZ2VWYXIgKnJlbGF0aW9uKQogewotCWlmICgqc3RtdF9zY2hlbWFfbmFtZSA9PSBOVUxMKQot CQkqc3RtdF9zY2hlbWFfbmFtZSA9IHVuY29uc3RpZnkoY2hhciAqLCBjb250ZXh0X3NjaGVtYSk7 Ci0JZWxzZSBpZiAoc3RyY21wKGNvbnRleHRfc2NoZW1hLCAqc3RtdF9zY2hlbWFfbmFtZSkgIT0g MCkKKwlpZiAocmVsYXRpb24tPnNjaGVtYW5hbWUgIT0gTlVMTCAmJgorCQlzdHJjbXAoY29udGV4 dF9zY2hlbWEsIHJlbGF0aW9uLT5zY2hlbWFuYW1lKSAhPSAwKQogCQllcmVwb3J0KEVSUk9SLAot CQkJCShlcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9TQ0hFTUFfREVGSU5JVElPTiksCi0JCQkJIGVy cm1zZygiQ1JFQVRFIHNwZWNpZmllcyBhIHNjaGVtYSAoJXMpICIKKwkJCQllcnJjb2RlKEVSUkNP REVfSU5WQUxJRF9TQ0hFTUFfREVGSU5JVElPTiksCisJCQkJZXJybXNnKCJDUkVBVEUgc3BlY2lm aWVzIGEgc2NoZW1hICglcykgIgogCQkJCQkJImRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcg Y3JlYXRlZCAoJXMpIiwKLQkJCQkJCSpzdG10X3NjaGVtYV9uYW1lLCBjb250ZXh0X3NjaGVtYSkp KTsKKwkJCQkJCXJlbGF0aW9uLT5zY2hlbWFuYW1lLCBjb250ZXh0X3NjaGVtYSksCisJCQkJcGFy c2VyX2VycnBvc2l0aW9uKHBzdGF0ZSwgcmVsYXRpb24tPmxvY2F0aW9uKSk7CisKKwlpZiAocmVs YXRpb24tPnJlbHBlcnNpc3RlbmNlID09IFJFTFBFUlNJU1RFTkNFX1RFTVApCisJeworCQkvKiBz cGVsbCB0aGlzIGVycm9yIHRoZSBzYW1lIGFzIGluIFJhbmdlVmFyQWRqdXN0UmVsYXRpb25QZXJz aXN0ZW5jZSAqLworCQllcmVwb3J0KEVSUk9SLAorCQkJCWVycmNvZGUoRVJSQ09ERV9JTlZBTElE X1RBQkxFX0RFRklOSVRJT04pLAorCQkJCWVycm1zZygiY2Fubm90IGNyZWF0ZSB0ZW1wb3Jhcnkg cmVsYXRpb24gaW4gbm9uLXRlbXBvcmFyeSBzY2hlbWEiKSwKKwkJCQlwYXJzZXJfZXJycG9zaXRp b24ocHN0YXRlLCByZWxhdGlvbi0+bG9jYXRpb24pKTsKKwl9CiB9CiAKIC8qCmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC90Y29wL3V0aWxpdHkuYyBiL3NyYy9iYWNrZW5kL3Rjb3AvdXRpbGl0eS5j CmluZGV4IDRmNDE5MWIwZWE2Li5lYzJiYmU1NTg3YyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv dGNvcC91dGlsaXR5LmMKKysrIGIvc3JjL2JhY2tlbmQvdGNvcC91dGlsaXR5LmMKQEAgLTExMTEs OCArMTExMSw3IEBAIFByb2Nlc3NVdGlsaXR5U2xvdyhQYXJzZVN0YXRlICpwc3RhdGUsCiAJCQkJ ICogcmVsYXRpb24gYW5kIGF0dHJpYnV0ZSBtYW5pcHVsYXRpb24KIAkJCQkgKi8KIAkJCWNhc2Ug VF9DcmVhdGVTY2hlbWFTdG10OgotCQkJCUNyZWF0ZVNjaGVtYUNvbW1hbmQoKENyZWF0ZVNjaGVt YVN0bXQgKikgcGFyc2V0cmVlLAotCQkJCQkJCQkJcXVlcnlTdHJpbmcsCisJCQkJQ3JlYXRlU2No ZW1hQ29tbWFuZChwc3RhdGUsIChDcmVhdGVTY2hlbWFTdG10ICopIHBhcnNldHJlZSwKIAkJCQkJ CQkJCXBzdG10LT5zdG10X2xvY2F0aW9uLAogCQkJCQkJCQkJcHN0bXQtPnN0bXRfbGVuKTsKIApk aWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvc2NoZW1hY21kcy5oIGIvc3JjL2luY2x1 ZGUvY29tbWFuZHMvc2NoZW1hY21kcy5oCmluZGV4IDg1NTcxNzZiNjZhLi44MzUyNjViYjY3YyAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvc2NoZW1hY21kcy5oCisrKyBiL3NyYy9p bmNsdWRlL2NvbW1hbmRzL3NjaGVtYWNtZHMuaApAQCAtMTYsMTIgKzE2LDkgQEAKICNkZWZpbmUg U0NIRU1BQ01EU19ICiAKICNpbmNsdWRlICJjYXRhbG9nL29iamVjdGFkZHJlc3MuaCIKLSNpbmNs dWRlICJub2Rlcy9wYXJzZW5vZGVzLmgiCi0KLWV4dGVybiBPaWQJQ3JlYXRlU2NoZW1hQ29tbWFu ZChDcmVhdGVTY2hlbWFTdG10ICpzdG10LAotCQkJCQkJCQljb25zdCBjaGFyICpxdWVyeVN0cmlu ZywKLQkJCQkJCQkJaW50IHN0bXRfbG9jYXRpb24sIGludCBzdG10X2xlbik7CisjaW5jbHVkZSAi cGFyc2VyL3BhcnNlX25vZGUuaCIKIAorZXh0ZXJuIE9pZAlDcmVhdGVTY2hlbWFDb21tYW5kKFBh cnNlU3RhdGUgKnBzdGF0ZSwgQ3JlYXRlU2NoZW1hU3RtdCAqc3RtdCwgaW50IHN0bXRfbG9jYXRp b24sIGludCBzdG10X2xlbik7CiBleHRlcm4gT2JqZWN0QWRkcmVzcyBSZW5hbWVTY2hlbWEoY29u c3QgY2hhciAqb2xkbmFtZSwgY29uc3QgY2hhciAqbmV3bmFtZSk7CiBleHRlcm4gT2JqZWN0QWRk cmVzcyBBbHRlclNjaGVtYU93bmVyKGNvbnN0IGNoYXIgKm5hbWUsIE9pZCBuZXdPd25lcklkKTsK IGV4dGVybiB2b2lkIEFsdGVyU2NoZW1hT3duZXJfb2lkKE9pZCBzY2hlbWFvaWQsIE9pZCBuZXdP d25lcklkKTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV91dGlsY21kLmgg Yi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2VfdXRpbGNtZC5oCmluZGV4IDlmMmI1OGRlNzk3Li5k YTUxNDE5OGNlZCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGFyc2VyL3BhcnNlX3V0aWxjbWQu aAorKysgYi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2VfdXRpbGNtZC5oCkBAIC0zMCw3ICszMCw4 IEBAIGV4dGVybiBDcmVhdGVTdGF0c1N0bXQgKnRyYW5zZm9ybVN0YXRzU3RtdChPaWQgcmVsaWQs IENyZWF0ZVN0YXRzU3RtdCAqc3RtdCwKIAkJCQkJCQkJCQkgICBjb25zdCBjaGFyICpxdWVyeVN0 cmluZyk7CiBleHRlcm4gdm9pZCB0cmFuc2Zvcm1SdWxlU3RtdChSdWxlU3RtdCAqc3RtdCwgY29u c3QgY2hhciAqcXVlcnlTdHJpbmcsCiAJCQkJCQkJICBMaXN0ICoqYWN0aW9ucywgTm9kZSAqKndo ZXJlQ2xhdXNlKTsKLWV4dGVybiBMaXN0ICp0cmFuc2Zvcm1DcmVhdGVTY2hlbWFTdG10RWxlbWVu dHMoTGlzdCAqc2NoZW1hRWx0cywKK2V4dGVybiBMaXN0ICp0cmFuc2Zvcm1DcmVhdGVTY2hlbWFT dG10RWxlbWVudHMoUGFyc2VTdGF0ZSAqcHN0YXRlLAorCQkJCQkJCQkJCQkgICBMaXN0ICpzY2hl bWFFbHRzLAogCQkJCQkJCQkJCQkgICBjb25zdCBjaGFyICpzY2hlbWFOYW1lKTsKIGV4dGVybiBQ YXJ0aXRpb25Cb3VuZFNwZWMgKnRyYW5zZm9ybVBhcnRpdGlvbkJvdW5kKFBhcnNlU3RhdGUgKnBz dGF0ZSwgUmVsYXRpb24gcGFyZW50LAogCQkJCQkJCQkJCQkJICAgUGFydGl0aW9uQm91bmRTcGVj ICpzcGVjKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3JlYXRlX3Nj aGVtYS5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NyZWF0ZV9zY2hlbWEub3V0Cmlu ZGV4IDkzMzAyYTA3ZWZjLi4zODUzMGMyODJhOSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9jcmVhdGVfc2NoZW1hLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVj dGVkL2NyZWF0ZV9zY2hlbWEub3V0CkBAIC05LDU1ICs5LDkyIEBAIENSRUFURSBST0xFIHJlZ3Jl c3NfY3JlYXRlX3NjaGVtYV9yb2xlIFNVUEVSVVNFUjsKIENSRUFURSBTQ0hFTUEgQVVUSE9SSVpB VElPTiByZWdyZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZQogICBDUkVBVEUgU0VRVUVOQ0Ugc2NoZW1h X25vdF9leGlzdGluZy5zZXE7CiBFUlJPUjogIENSRUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHNj aGVtYV9ub3RfZXhpc3RpbmcpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAo cmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGUpCitMSU5FIDI6ICAgQ1JFQVRFIFNFUVVFTkNFIHNj aGVtYV9ub3RfZXhpc3Rpbmcuc2VxOworICAgICAgICAgICAgICAgICAgICAgICAgICBeCiBDUkVB VEUgU0NIRU1BIEFVVEhPUklaQVRJT04gcmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGUKICAgQ1JF QVRFIFRBQkxFIHNjaGVtYV9ub3RfZXhpc3RpbmcudGFiIChpZCBpbnQpOwogRVJST1I6ICBDUkVB VEUgc3BlY2lmaWVzIGEgc2NoZW1hIChzY2hlbWFfbm90X2V4aXN0aW5nKSBkaWZmZXJlbnQgZnJv bSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlKQorTElO RSAyOiAgIENSRUFURSBUQUJMRSBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYiAoaWQgaW50KTsKKyAg ICAgICAgICAgICAgICAgICAgICAgXgogQ1JFQVRFIFNDSEVNQSBBVVRIT1JJWkFUSU9OIHJlZ3Jl c3NfY3JlYXRlX3NjaGVtYV9yb2xlCiAgIENSRUFURSBWSUVXIHNjaGVtYV9ub3RfZXhpc3Rpbmcu dmlldyBBUyBTRUxFQ1QgMTsKIEVSUk9SOiAgQ1JFQVRFIHNwZWNpZmllcyBhIHNjaGVtYSAoc2No ZW1hX25vdF9leGlzdGluZykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVkIChy ZWdyZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZSkKK0xJTkUgMjogICBDUkVBVEUgVklFVyBzY2hlbWFf bm90X2V4aXN0aW5nLnZpZXcgQVMgU0VMRUNUIDE7CisgICAgICAgICAgICAgICAgICAgICAgXgog Q1JFQVRFIFNDSEVNQSBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlCiAg IENSRUFURSBJTkRFWCBPTiBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYiAoaWQpOwogRVJST1I6ICBD UkVBVEUgc3BlY2lmaWVzIGEgc2NoZW1hIChzY2hlbWFfbm90X2V4aXN0aW5nKSBkaWZmZXJlbnQg ZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlKQor TElORSAyOiAgIENSRUFURSBJTkRFWCBPTiBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYiAoaWQpOwor ICAgICAgICAgICAgICAgICAgICAgICAgICBeCiBDUkVBVEUgU0NIRU1BIEFVVEhPUklaQVRJT04g cmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGUKICAgQ1JFQVRFIFRSSUdHRVIgc2NoZW1hX3RyaWcg QkVGT1JFIElOU0VSVCBPTiBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYgogICBFWEVDVVRFIEZVTkNU SU9OIHNjaGVtYV90cmlnLm5vX2Z1bmMoKTsKIEVSUk9SOiAgQ1JFQVRFIHNwZWNpZmllcyBhIHNj aGVtYSAoc2NoZW1hX25vdF9leGlzdGluZykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBj cmVhdGVkIChyZWdyZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZSkKK0xJTkUgMjogICBDUkVBVEUgVFJJ R0dFUiBzY2hlbWFfdHJpZyBCRUZPUkUgSU5TRVJUIE9OIHNjaGVtYV9ub3RfZXhpLi4uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCiAtLSBB Z2Fpbiwgd2l0aCBhIHJvbGUgc3BlY2lmaWNhdGlvbiBhbmQgbm8gc2NoZW1hIG5hbWVzLgogU0VU IFJPTEUgcmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGU7CiBDUkVBVEUgU0NIRU1BIEFVVEhPUkla QVRJT04gQ1VSUkVOVF9ST0xFCiAgIENSRUFURSBTRVFVRU5DRSBzY2hlbWFfbm90X2V4aXN0aW5n LnNlcTsKIEVSUk9SOiAgQ1JFQVRFIHNwZWNpZmllcyBhIHNjaGVtYSAoc2NoZW1hX25vdF9leGlz dGluZykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVkIChyZWdyZXNzX2NyZWF0 ZV9zY2hlbWFfcm9sZSkKK0xJTkUgMjogICBDUkVBVEUgU0VRVUVOQ0Ugc2NoZW1hX25vdF9leGlz dGluZy5zZXE7CisgICAgICAgICAgICAgICAgICAgICAgICAgIF4KIENSRUFURSBTQ0hFTUEgQVVU SE9SSVpBVElPTiBDVVJSRU5UX1JPTEUKICAgQ1JFQVRFIFRBQkxFIHNjaGVtYV9ub3RfZXhpc3Rp bmcudGFiIChpZCBpbnQpOwogRVJST1I6ICBDUkVBVEUgc3BlY2lmaWVzIGEgc2NoZW1hIChzY2hl bWFfbm90X2V4aXN0aW5nKSBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHJl Z3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlKQorTElORSAyOiAgIENSRUFURSBUQUJMRSBzY2hlbWFf bm90X2V4aXN0aW5nLnRhYiAoaWQgaW50KTsKKyAgICAgICAgICAgICAgICAgICAgICAgXgogQ1JF QVRFIFNDSEVNQSBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQogICBDUkVBVEUgVklFVyBzY2hl bWFfbm90X2V4aXN0aW5nLnZpZXcgQVMgU0VMRUNUIDE7CiBFUlJPUjogIENSRUFURSBzcGVjaWZp ZXMgYSBzY2hlbWEgKHNjaGVtYV9ub3RfZXhpc3RpbmcpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUg YmVpbmcgY3JlYXRlZCAocmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGUpCitMSU5FIDI6ICAgQ1JF QVRFIFZJRVcgc2NoZW1hX25vdF9leGlzdGluZy52aWV3IEFTIFNFTEVDVCAxOworICAgICAgICAg ICAgICAgICAgICAgIF4KIENSRUFURSBTQ0hFTUEgQVVUSE9SSVpBVElPTiBDVVJSRU5UX1JPTEUK ICAgQ1JFQVRFIElOREVYIE9OIHNjaGVtYV9ub3RfZXhpc3RpbmcudGFiIChpZCk7CiBFUlJPUjog IENSRUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHNjaGVtYV9ub3RfZXhpc3RpbmcpIGRpZmZlcmVu dCBmcm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocmVncmVzc19jcmVhdGVfc2NoZW1hX3JvbGUp CitMSU5FIDI6ICAgQ1JFQVRFIElOREVYIE9OIHNjaGVtYV9ub3RfZXhpc3RpbmcudGFiIChpZCk7 CisgICAgICAgICAgICAgICAgICAgICAgICAgIF4KIENSRUFURSBTQ0hFTUEgQVVUSE9SSVpBVElP TiBDVVJSRU5UX1JPTEUKICAgQ1JFQVRFIFRSSUdHRVIgc2NoZW1hX3RyaWcgQkVGT1JFIElOU0VS VCBPTiBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYgogICBFWEVDVVRFIEZVTkNUSU9OIHNjaGVtYV90 cmlnLm5vX2Z1bmMoKTsKIEVSUk9SOiAgQ1JFQVRFIHNwZWNpZmllcyBhIHNjaGVtYSAoc2NoZW1h X25vdF9leGlzdGluZykgZGlmZmVyZW50IGZyb20gdGhlIG9uZSBiZWluZyBjcmVhdGVkIChyZWdy ZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZSkKK0xJTkUgMjogICBDUkVBVEUgVFJJR0dFUiBzY2hlbWFf dHJpZyBCRUZPUkUgSU5TRVJUIE9OIHNjaGVtYV9ub3RfZXhpLi4uCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCiAtLSBBZ2Fpbiwgd2l0aCBh IHNjaGVtYSBuYW1lIGFuZCBhIHJvbGUgc3BlY2lmaWNhdGlvbi4KIENSRUFURSBTQ0hFTUEgcmVn cmVzc19zY2hlbWFfMSBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQogICBDUkVBVEUgU0VRVUVO Q0Ugc2NoZW1hX25vdF9leGlzdGluZy5zZXE7CiBFUlJPUjogIENSRUFURSBzcGVjaWZpZXMgYSBz Y2hlbWEgKHNjaGVtYV9ub3RfZXhpc3RpbmcpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcg Y3JlYXRlZCAocmVncmVzc19zY2hlbWFfMSkKK0xJTkUgMjogICBDUkVBVEUgU0VRVUVOQ0Ugc2No ZW1hX25vdF9leGlzdGluZy5zZXE7CisgICAgICAgICAgICAgICAgICAgICAgICAgIF4KIENSRUFU RSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMSBBVVRIT1JJWkFUSU9OIENVUlJFTlRfUk9MRQogICBD UkVBVEUgVEFCTEUgc2NoZW1hX25vdF9leGlzdGluZy50YWIgKGlkIGludCk7CiBFUlJPUjogIENS RUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHNjaGVtYV9ub3RfZXhpc3RpbmcpIGRpZmZlcmVudCBm cm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocmVncmVzc19zY2hlbWFfMSkKK0xJTkUgMjogICBD UkVBVEUgVEFCTEUgc2NoZW1hX25vdF9leGlzdGluZy50YWIgKGlkIGludCk7CisgICAgICAgICAg ICAgICAgICAgICAgIF4KIENSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMSBBVVRIT1JJWkFU SU9OIENVUlJFTlRfUk9MRQogICBDUkVBVEUgVklFVyBzY2hlbWFfbm90X2V4aXN0aW5nLnZpZXcg QVMgU0VMRUNUIDE7CiBFUlJPUjogIENSRUFURSBzcGVjaWZpZXMgYSBzY2hlbWEgKHNjaGVtYV9u b3RfZXhpc3RpbmcpIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgYmVpbmcgY3JlYXRlZCAocmVncmVz c19zY2hlbWFfMSkKK0xJTkUgMjogICBDUkVBVEUgVklFVyBzY2hlbWFfbm90X2V4aXN0aW5nLnZp ZXcgQVMgU0VMRUNUIDE7CisgICAgICAgICAgICAgICAgICAgICAgXgogQ1JFQVRFIFNDSEVNQSBy ZWdyZXNzX3NjaGVtYV8xIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9ST0xFCiAgIENSRUFURSBJTkRF WCBPTiBzY2hlbWFfbm90X2V4aXN0aW5nLnRhYiAoaWQpOwogRVJST1I6ICBDUkVBVEUgc3BlY2lm aWVzIGEgc2NoZW1hIChzY2hlbWFfbm90X2V4aXN0aW5nKSBkaWZmZXJlbnQgZnJvbSB0aGUgb25l IGJlaW5nIGNyZWF0ZWQgKHJlZ3Jlc3Nfc2NoZW1hXzEpCitMSU5FIDI6ICAgQ1JFQVRFIElOREVY IE9OIHNjaGVtYV9ub3RfZXhpc3RpbmcudGFiIChpZCk7CisgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KIENSRUFURSBTQ0hFTUEgcmVncmVzc19zY2hlbWFfMSBBVVRIT1JJWkFUSU9OIENVUlJF TlRfUk9MRQogICBDUkVBVEUgVFJJR0dFUiBzY2hlbWFfdHJpZyBCRUZPUkUgSU5TRVJUIE9OIHNj aGVtYV9ub3RfZXhpc3RpbmcudGFiCiAgIEVYRUNVVEUgRlVOQ1RJT04gc2NoZW1hX3RyaWcubm9f ZnVuYygpOwogRVJST1I6ICBDUkVBVEUgc3BlY2lmaWVzIGEgc2NoZW1hIChzY2hlbWFfbm90X2V4 aXN0aW5nKSBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIGJlaW5nIGNyZWF0ZWQgKHJlZ3Jlc3Nfc2No ZW1hXzEpCitMSU5FIDI6ICAgQ1JFQVRFIFRSSUdHRVIgc2NoZW1hX3RyaWcgQkVGT1JFIElOU0VS VCBPTiBzY2hlbWFfbm90X2V4aS4uLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgogUkVTRVQgUk9MRTsKKy0tZXJyb3IuIEZvcndhcmQgcmVm ZXJlbmNlIGlzIG5vdCBhbGxvd2VkLgorQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8yCisg IENSRUFURSBWSUVXIGFiY2RfdmlldyBBUyBTRUxFQ1QgYSBGUk9NIGFiY2QKKyAgQ1JFQVRFIFRB QkxFIGFiY2QgKGEgaW50KTsKK0VSUk9SOiAgcmVsYXRpb24gImFiY2QiIGRvZXMgbm90IGV4aXN0 CitMSU5FIDI6ICAgQ1JFQVRFIFZJRVcgYWJjZF92aWV3IEFTIFNFTEVDVCBhIEZST00gYWJjZAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KIC0tIENh c2VzIHdoZXJlIHRoZSBzY2hlbWEgY3JlYXRpb24gc3VjY2VlZHMuCiAtLSBUaGUgc2NoZW1hIGNy ZWF0ZWQgbWF0Y2hlcyB0aGUgcm9sZSBuYW1lLgogQ1JFQVRFIFNDSEVNQSBBVVRIT1JJWkFUSU9O IHJlZ3Jlc3NfY3JlYXRlX3NjaGVtYV9yb2xlCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL2NyZWF0ZV92aWV3Lm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY3Jl YXRlX3ZpZXcub3V0CmluZGV4IGY1NTE2MjRhZmIzLi5iMzA1Y2VlYTAzMyAxMDA2NDQKLS0tIGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jcmVhdGVfdmlldy5vdXQKKysrIGIvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9jcmVhdGVfdmlldy5vdXQKQEAgLTEyNiw2ICsxMjYsOCBAQCBFUlJP UjogIGNhbm5vdCBjcmVhdGUgdGVtcG9yYXJ5IHJlbGF0aW9uIGluIG5vbi10ZW1wb3Jhcnkgc2No ZW1hCiBDUkVBVEUgU0NIRU1BIHRlc3Rfdmlld19zY2hlbWEKICAgICBDUkVBVEUgVEVNUCBWSUVX IHRlc3R2aWV3IEFTIFNFTEVDVCAxOwogRVJST1I6ICBjYW5ub3QgY3JlYXRlIHRlbXBvcmFyeSBy ZWxhdGlvbiBpbiBub24tdGVtcG9yYXJ5IHNjaGVtYQorTElORSAyOiAgICAgQ1JFQVRFIFRFTVAg VklFVyB0ZXN0dmlldyBBUyBTRUxFQ1QgMTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgogLS0gam9pbnM6IGlmIGFueSBvZiB0aGUgam9pbiByZWxhdGlvbnMgYXJlIHRlbXBvcmFyeSwg dGhlIHZpZXcKIC0tIHNob3VsZCBhbHNvIGJlIHRlbXBvcmFyeQogLS0gc2hvdWxkIGJlIG5vbi10 ZW1wCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2V2ZW50X3RyaWdnZXIu b3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ldmVudF90cmlnZ2VyLm91dAppbmRleCA3 YjIxOThlYWM2Zi4uYmFmZGU4NzA2ZmUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvZXZlbnRfdHJpZ2dlci5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9l dmVudF90cmlnZ2VyLm91dApAQCAtNDExLDEyICs0MTEsMTIgQEAgTk9USUNFOiAgRU5EOiBjb21t YW5kX3RhZz1DUkVBVEUgVEFCTEUgdHlwZT10YWJsZSBpZGVudGl0eT1ldnR0cmlnLm9uZQogTk9U SUNFOiAgRU5EOiBjb21tYW5kX3RhZz1DUkVBVEUgSU5ERVggdHlwZT1pbmRleCBpZGVudGl0eT1l dnR0cmlnLm9uZV9wa2V5CiBOT1RJQ0U6ICBFTkQ6IGNvbW1hbmRfdGFnPUFMVEVSIFNFUVVFTkNF IHR5cGU9c2VxdWVuY2UgaWRlbnRpdHk9ZXZ0dHJpZy5vbmVfY29sX2Ffc2VxCiBOT1RJQ0U6ICBF TkQ6IGNvbW1hbmRfdGFnPUFMVEVSIFNFUVVFTkNFIHR5cGU9c2VxdWVuY2UgaWRlbnRpdHk9ZXZ0 dHJpZy5vbmVfY29sX2Nfc2VxCitOT1RJQ0U6ICBFTkQ6IGNvbW1hbmRfdGFnPUNSRUFURSBJTkRF WCB0eXBlPWluZGV4IGlkZW50aXR5PWV2dHRyaWcub25lX2lkeAogTk9USUNFOiAgRU5EOiBjb21t YW5kX3RhZz1DUkVBVEUgVEFCTEUgdHlwZT10YWJsZSBpZGVudGl0eT1ldnR0cmlnLnR3bwogTk9U SUNFOiAgRU5EOiBjb21tYW5kX3RhZz1BTFRFUiBUQUJMRSB0eXBlPXRhYmxlIGlkZW50aXR5PWV2 dHRyaWcudHdvCiBOT1RJQ0U6ICBFTkQ6IGNvbW1hbmRfdGFnPUNSRUFURSBTRVFVRU5DRSB0eXBl PXNlcXVlbmNlIGlkZW50aXR5PWV2dHRyaWcuaWRfY29sX2Rfc2VxCiBOT1RJQ0U6ICBFTkQ6IGNv bW1hbmRfdGFnPUNSRUFURSBUQUJMRSB0eXBlPXRhYmxlIGlkZW50aXR5PWV2dHRyaWcuaWQKIE5P VElDRTogIEVORDogY29tbWFuZF90YWc9QUxURVIgU0VRVUVOQ0UgdHlwZT1zZXF1ZW5jZSBpZGVu dGl0eT1ldnR0cmlnLmlkX2NvbF9kX3NlcQotTk9USUNFOiAgRU5EOiBjb21tYW5kX3RhZz1DUkVB VEUgSU5ERVggdHlwZT1pbmRleCBpZGVudGl0eT1ldnR0cmlnLm9uZV9pZHgKIC0tIFBhcnRpdGlv bmVkIHRhYmxlcyB3aXRoIGEgcGFydGl0aW9uZWQgaW5kZXgKIENSRUFURSBUQUJMRSBldnR0cmln LnBhcnRlZCAoCiAgICAgaWQgaW50IFBSSU1BUlkgS0VZKQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9uYW1lc3BhY2Uub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC9uYW1lc3BhY2Uub3V0CmluZGV4IGRiYmRhNzJkMzk1Li4yZTU4MmU3ODNjMiAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9uYW1lc3BhY2Uub3V0CisrKyBiL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvbmFtZXNwYWNlLm91dApAQCAtMTAsMTMgKzEwLDE0IEBAIFNFTEVD VCBwZ19jYXRhbG9nLnNldF9jb25maWcoJ3NlYXJjaF9wYXRoJywgJyAnLCBmYWxzZSk7CiAoMSBy b3cpCiAKIENSRUFURSBTQ0hFTUEgdGVzdF9uc19zY2hlbWFfMQorICAgICAgIENSRUFURSBUQUJM RSBhYmMgKAorICAgICAgICAgICAgICBhIHNlcmlhbCwKKyAgICAgICAgICAgICAgYiBpbnQgVU5J UVVFCisgICAgICAgKQogICAgICAgIENSRUFURSBVTklRVUUgSU5ERVggYWJjX2FfaWR4IE9OIGFi YyAoYSkKICAgICAgICBDUkVBVEUgVklFVyBhYmNfdmlldyBBUwogICAgICAgICAgICAgICBTRUxF Q1QgYSsxIEFTIGEsIGIrMSBBUyBiIEZST00gYWJjCi0gICAgICAgQ1JFQVRFIFRBQkxFIGFiYyAo Ci0gICAgICAgICAgICAgIGEgc2VyaWFsLAotICAgICAgICAgICAgICBiIGludCBVTklRVUUKLSAg ICAgICApOworOwogLS0gdmVyaWZ5IHRoYXQgdGhlIGNvcnJlY3Qgc2VhcmNoX3BhdGggcmVzdG9y ZWQgb24gYWJvcnQKIFNFVCBzZWFyY2hfcGF0aCB0byBwdWJsaWM7CiBCRUdJTjsKZGlmZiAtLWdp dCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2NyZWF0ZV9zY2hlbWEuc3FsIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvY3JlYXRlX3NjaGVtYS5zcWwKaW5kZXggMWI3MDY0MjQ3YTEuLmIzZGMxY2ZkNzU4 IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbAorKysg Yi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jcmVhdGVfc2NoZW1hLnNxbApAQCAtNDcsNiArNDcsMTEg QEAgQ1JFQVRFIFNDSEVNQSByZWdyZXNzX3NjaGVtYV8xIEFVVEhPUklaQVRJT04gQ1VSUkVOVF9S T0xFCiAgIEVYRUNVVEUgRlVOQ1RJT04gc2NoZW1hX3RyaWcubm9fZnVuYygpOwogUkVTRVQgUk9M RTsKIAorLS1lcnJvci4gRm9yd2FyZCByZWZlcmVuY2UgaXMgbm90IGFsbG93ZWQuCitDUkVBVEUg U0NIRU1BIHJlZ3Jlc3Nfc2NoZW1hXzIKKyAgQ1JFQVRFIFZJRVcgYWJjZF92aWV3IEFTIFNFTEVD VCBhIEZST00gYWJjZAorICBDUkVBVEUgVEFCTEUgYWJjZCAoYSBpbnQpOworCiAtLSBDYXNlcyB3 aGVyZSB0aGUgc2NoZW1hIGNyZWF0aW9uIHN1Y2NlZWRzLgogLS0gVGhlIHNjaGVtYSBjcmVhdGVk IG1hdGNoZXMgdGhlIHJvbGUgbmFtZS4KIENSRUFURSBTQ0hFTUEgQVVUSE9SSVpBVElPTiByZWdy ZXNzX2NyZWF0ZV9zY2hlbWFfcm9sZQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwv bmFtZXNwYWNlLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL25hbWVzcGFjZS5zcWwKaW5kZXgg MzA2Y2RjMmQ4YzYuLmE3NWQ0ZjU4MGQzIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9uYW1lc3BhY2Uuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL25hbWVzcGFjZS5zcWwK QEAgLTcsMTUgKzcsMTYgQEAKIFNFTEVDVCBwZ19jYXRhbG9nLnNldF9jb25maWcoJ3NlYXJjaF9w YXRoJywgJyAnLCBmYWxzZSk7CiAKIENSRUFURSBTQ0hFTUEgdGVzdF9uc19zY2hlbWFfMQorICAg ICAgIENSRUFURSBUQUJMRSBhYmMgKAorICAgICAgICAgICAgICBhIHNlcmlhbCwKKyAgICAgICAg ICAgICAgYiBpbnQgVU5JUVVFCisgICAgICAgKQorCiAgICAgICAgQ1JFQVRFIFVOSVFVRSBJTkRF WCBhYmNfYV9pZHggT04gYWJjIChhKQogCiAgICAgICAgQ1JFQVRFIFZJRVcgYWJjX3ZpZXcgQVMK ICAgICAgICAgICAgICAgU0VMRUNUIGErMSBBUyBhLCBiKzEgQVMgYiBGUk9NIGFiYwotCi0gICAg ICAgQ1JFQVRFIFRBQkxFIGFiYyAoCi0gICAgICAgICAgICAgIGEgc2VyaWFsLAotICAgICAgICAg ICAgICBiIGludCBVTklRVUUKLSAgICAgICApOworOwogCiAtLSB2ZXJpZnkgdGhhdCB0aGUgY29y cmVjdCBzZWFyY2hfcGF0aCByZXN0b3JlZCBvbiBhYm9ydAogU0VUIHNlYXJjaF9wYXRoIHRvIHB1 YmxpYzsKZGlmZiAtLWdpdCBhL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0IGIvc3Jj L3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QKaW5kZXggYTEzZTgxNjI4OTAuLmI4OWMzMjY5 YThkIDEwMDY0NAotLS0gYS9zcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdAorKysgYi9z cmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdApAQCAtNTU4LDcgKzU1OCw2IEBAIENyZWF0 ZVJhbmdlU3RtdAogQ3JlYXRlUmVwbGljYXRpb25TbG90Q21kCiBDcmVhdGVSb2xlU3RtdAogQ3Jl YXRlU2NoZW1hU3RtdAotQ3JlYXRlU2NoZW1hU3RtdENvbnRleHQKIENyZWF0ZVNlcVN0bXQKIENy ZWF0ZVN0YXRzU3RtdAogQ3JlYXRlU3RtdAotLSAKMi4zNC4xCgo= --000000000000e3d97d063d3d74f7--