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 1sy1lc-00Dq2Y-Ae for pgsql-hackers@arkaria.postgresql.org; Tue, 08 Oct 2024 04:24:12 +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 1sy1lb-002ZeP-0L for pgsql-hackers@arkaria.postgresql.org; Tue, 08 Oct 2024 04:24:11 +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 1sy1la-002ZeH-KD for pgsql-hackers@lists.postgresql.org; Tue, 08 Oct 2024 04:24:10 +0000 Received: from mail-pf1-x42f.google.com ([2607:f8b0:4864:20::42f]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sy1lX-0038KM-Ug for pgsql-hackers@lists.postgresql.org; Tue, 08 Oct 2024 04:24:10 +0000 Received: by mail-pf1-x42f.google.com with SMTP id d2e1a72fcca58-71dec1cf48fso3015202b3a.0 for ; Mon, 07 Oct 2024 21:24:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728361446; x=1728966246; darn=lists.postgresql.org; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=6jzhM6aarKm49gM1Cd8L6tGHafcdY/vOAVvt1R+zk08=; b=K1prDkC9qwZNYziI5lEDxs0EQkKW9tpkWH27lDSJHk3JiG5/FqNtr+hI5EkI6tIrNZ wlSXYV3VKrZYl/KwBOMGXu5n6ZQuGb5x5THgwWjV4KEQqaJAWFtatA7u8+TZJ6U7Iyqo zpXdHnWsTMD54Ud1iabAbQKXMvv8P28rhzeIL9eBIpzIMoMoWkWjQCdnxTG4okjcpD8W bGBWvsrJbyoNUp+YmZozUOUpgyCwW3yNmnd8A8PeErLus7OLI7OY935eCw38EwyfdOZS xJ4uF3we3L1jpZattmHLL95hTCkQ9rEFNB3JPSlNmLKyANGhTndJ0LbNqCwHfh6lYaIU XU0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728361446; x=1728966246; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=6jzhM6aarKm49gM1Cd8L6tGHafcdY/vOAVvt1R+zk08=; b=iul+8HucPwj8BVdL56J4wZbUy8aLMFQVHf49LFpnKqA0Ln+MArW2QLPQsltZ+QUifL lz4WE+9kZimxUUUjb18/HNqjj72mFIlb20HSnIiR/cHOJf8/u5wdcuNoXBIpNyLHMveE h0JrUaygCnyiQBDZ/ypc0WRtF4+yku8Mw9btWc+EE3kce98+jGEdvgMw7janGRihmy/I pkTZqFLJ0TF7US96ojQSKfpFDiuYGHcIaCSqfFGKV6l8iBNXA2uf8mec6g8KFhLabCjO H7+uX2ElVaRx2M+Ddvv7WCaWlReTMudmkEnHF9M3cHgOBEHDGHzFOBVqVCkE0xYYxjQA 4rkQ== X-Gm-Message-State: AOJu0Yzd3cxCjmw4TvurhKLEn4NOG7OMnLyzGJIGIBOjmmSwuOR66ydF VgbbQ98L4fxULai2V9uM1Ukjzt7qoUPA92xrRKgpNHGCGA0K89khSZJPR7eFlTU= X-Google-Smtp-Source: AGHT+IH1/f91hQsj1Pk/JByzOOv8N30pszDy4qKva5VBuRg15ynowlDjvSVX3S9zV3DlVQND8Dt33Q== X-Received: by 2002:a05:6a20:4917:b0:1d6:e608:4d66 with SMTP id adf61e73a8af0-1d6e6084e6emr13591724637.15.1728361445547; Mon, 07 Oct 2024 21:24:05 -0700 (PDT) Received: from [10.10.20.99] (node-oie.pool-125-26.dynamic.totinternet.net. [125.26.124.22]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-71df0cbc48asm5231157b3a.21.2024.10.07.21.24.03 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 07 Oct 2024 21:24:04 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------CjvWACO0jSx0xA0zB4fhaAKu" Message-ID: Date: Tue, 8 Oct 2024 11:24:01 +0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Consider the number of columns in the sort cost model From: Andrei Lepikhov To: PostgreSQL Hackers References: <8742aaa8-9519-4a1f-91bd-364aec65f5cf@gmail.com> Content-Language: en-AU In-Reply-To: <8742aaa8-9519-4a1f-91bd-364aec65f5cf@gmail.com> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------CjvWACO0jSx0xA0zB4fhaAKu Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 8/23/24 01:46, Andrei Lepikhov wrote: Just a rebase onto current master to make cf-bot be happy. -- regards, Andrei Lepikhov --------------CjvWACO0jSx0xA0zB4fhaAKu Content-Type: text/x-patch; charset=UTF-8; name="v2-0001-Introduce-the-number-of-columns-in-the-cost-sort-.patch" Content-Disposition: attachment; filename*0="v2-0001-Introduce-the-number-of-columns-in-the-cost-sort-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA3MzQ3Mjg5NzQ0MjUxNmYwZGY0ZWQ5NDVjZGEyOGQxMjVkZjA4MTk3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmVpIFYuIExlcGlraG92IiA8bGVwaWhvdkBn bWFpbC5jb20+CkRhdGU6IFR1ZSwgOCBPY3QgMjAyNCAxMToyMDo0NiArMDcwMApTdWJqZWN0 OiBbUEFUQ0ggdjJdIEludHJvZHVjZSB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGNv c3Qtc29ydCBtb2RlbC4KClRoZSBzb3J0IG5vZGUgY2FsbHMgdGhlIGNvbXBhcmlzb24gb3Bl cmF0b3IgZm9yIGVhY2ggcGFpciBvZiBhdHRyaWJ1dGVzIGZvcgplYWNoIGNvdXBsZSBvZiB0 dXBsZXMuIEhvd2V2ZXIsIHRoZSBjdXJyZW50IGNvc3QgbW9kZWwgdXNlcwphICcyLjAqY3B1 X29wZXJhdG9yX2Nvc3QnIG11bHRpcGxpZXIsIHdoaWNoIHBlcmZvcm1zIHNvbWUgc29ydCBv ZiBhdmVyYWdpbmcuClRoaXMgdGVjaG5pcXVlIGNhbiBsZWFkIHRvIGluY29ycmVjdCBlc3Rp bWF0aW9ucyB3aGVuIHNvcnRpbmcgb24gdGhyZWUsIGZvdXIsCm9yIG1vcmUgY29sdW1ucywg cXVpdGUgY29tbW9uIGluIHByYWN0aWNlLgpNb3Jlb3ZlciwgZnVydGhlciBlbGFib3JhdGlv biBvZiB0aGUgb3B0aW1pc2VyIGZvcm1zIG1vcmUgc3RyaWN0IHJlcXVpcmVtZW50cwpmb3Ig dGhlIGJhbGFuY2Ugb2Ygc29ydGluZ3MsIGFzIGNhdXNlZCBieSBJbmNyZW1lbnRhbFNvcnQs IE1lcmdlQXBwZW5kLCBhbmQKTWVyZ2VKb2luLgpJbiB0aGlzIHBhdGNoLCB0aGUgbXVsdGlw bGllciBpcyBhIGxpbmVhciBmdW5jdGlvbiBvZiBhIG51bWJlciBvZiBjb2x1bW5zLgpNZW1i ZXIgMS4wIG5lZWRzIHRvIHNtb290aCB0aGUgZmFjdCB0aGF0IGRlcGVuZGVuY2Ugb24gdGhl IG51bWJlciBvZiBjb2x1bW5zIGlzCndlYWtlciB0aGFuIGxpbmVhci4KSXQgaXMgYW4gZXh0 cmVtZSBmb3JtdWxhLiBUaGUgbnVtYmVyIG9mIGNvbXBhcmlzb25zIGRlcGVuZHMgb24gdGhl IGRpc3RpbmN0CnZhbHVlcyBpbiBlYWNoIGNvbHVtbi4gQXMgYSBUT0RPLCB3ZSBjYW4gbmF0 aXZlbHkgZWxhYm9yYXRlIHRoaXMgbW9kZWwgYnkgdGhlCm5leHQgc3RlcCwgaW52b2x2aW5n IGRpc3RpbmN0IHN0YXRpc3RpY3MgdG8gbWFrZSBlc3RpbWF0aW9ucyBtb3JlIHByZWNpc2Uu Ci0tLQogLi4uL3Bvc3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0ICAgIHwg MTUgKysrLS0KIGNvbnRyaWIvcG9zdGdyZXNfZmR3L3Bvc3RncmVzX2Zkdy5jICAgICAgICAg ICB8ICAyICstCiBzcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGF0aC9jb3N0c2l6ZS5jICAgICAg ICAgfCAzNCArKysrKystLS0tCiBzcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9jcmVhdGVw bGFuLmMgICAgICAgfCAgMiArLQogc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vcGxhbm5l ci5jICAgICAgICAgIHwgIDIgKy0KIHNyYy9iYWNrZW5kL29wdGltaXplci9wcmVwL3ByZXB1 bmlvbi5jICAgICAgICB8ICAyICstCiBzcmMvYmFja2VuZC9vcHRpbWl6ZXIvdXRpbC9wYXRo bm9kZS5jICAgICAgICAgfCAgOCArLS0KIHNyYy9pbmNsdWRlL29wdGltaXplci9jb3N0Lmgg ICAgICAgICAgICAgICAgICB8ICAyICstCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Fn Z3JlZ2F0ZXMub3V0ICAgICAgfCAxMyArKy0tCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2pvaW4ub3V0ICAgICAgICAgICAgfCAyMCArKystLS0KIHNyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvcGFydGl0aW9uX2pvaW4ub3V0ICB8ICA4ICsrLQogc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC91bmlvbi5vdXQgICAgICAgICAgIHwgNjYgKysrKysrKysrLS0tLS0tLS0tLQog MTIgZmlsZXMgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwgNzkgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQvcG9zdGdyZXNfZmR3 Lm91dCBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVzX2Zkdy5vdXQK aW5kZXggZjJiY2Q2YWE5OC4uNWRhMzNhYjY5ZSAxMDA2NDQKLS0tIGEvY29udHJpYi9wb3N0 Z3Jlc19mZHcvZXhwZWN0ZWQvcG9zdGdyZXNfZmR3Lm91dAorKysgYi9jb250cmliL3Bvc3Rn cmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0CkBAIC05OTk1LDEzICs5OTk1LDE2 IEBAIFNFTEVDVCB0MS5hLHQyLmIsdDMuYyBGUk9NIGZwcnQxIHQxIElOTkVSIEpPSU4gZnBy dDIgdDIgT04gKHQxLmEgPSB0Mi5iKSBJTk5FUiBKCiAtLSBsZWZ0IG91dGVyIGpvaW4gKyBu dWxsYWJsZSBjbGF1c2UKIEVYUExBSU4gKFZFUkJPU0UsIENPU1RTIE9GRikKIFNFTEVDVCB0 MS5hLHQyLmIsdDIuYyBGUk9NIGZwcnQxIHQxIExFRlQgSk9JTiAoU0VMRUNUICogRlJPTSBm cHJ0MiBXSEVSRSBhIDwgMTApIHQyIE9OICh0MS5hID0gdDIuYiBhbmQgdDEuYiA9IHQyLmEp IFdIRVJFIHQxLmEgPCAxMCBPUkRFUiBCWSAxLDIsMzsKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBGb3JlaWduIFNjYW4K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIFNvcnQKICAgIE91dHB1 dDogdDEuYSwgZnBydDIuYiwgZnBydDIuYwotICAgUmVsYXRpb25zOiAocHVibGljLmZ0cHJ0 MV9wMSB0MSkgTEVGVCBKT0lOIChwdWJsaWMuZnRwcnQyX3AxIGZwcnQyKQotICAgUmVtb3Rl IFNRTDogU0VMRUNUIHI1LmEsIHI2LmIsIHI2LmMgRlJPTSAocHVibGljLmZwcnQxX3AxIHI1 IExFRlQgSk9JTiBwdWJsaWMuZnBydDJfcDEgcjYgT04gKCgocjUuYSA9IHI2LmIpKSBBTkQg KChyNS5iID0gcjYuYSkpIEFORCAoKHI2LmEgPCAxMCkpKSkgV0hFUkUgKChyNS5hIDwgMTAp KSBPUkRFUiBCWSByNS5hIEFTQyBOVUxMUyBMQVNULCByNi5iIEFTQyBOVUxMUyBMQVNULCBy Ni5jIEFTQyBOVUxMUyBMQVNUCi0oNCByb3dzKQorICAgU29ydCBLZXk6IHQxLmEsIGZwcnQy LmIsIGZwcnQyLmMKKyAgIC0+ICBGb3JlaWduIFNjYW4KKyAgICAgICAgIE91dHB1dDogdDEu YSwgZnBydDIuYiwgZnBydDIuYworICAgICAgICAgUmVsYXRpb25zOiAocHVibGljLmZ0cHJ0 MV9wMSB0MSkgTEVGVCBKT0lOIChwdWJsaWMuZnRwcnQyX3AxIGZwcnQyKQorICAgICAgICAg UmVtb3RlIFNRTDogU0VMRUNUIHI1LmEsIHI2LmIsIHI2LmMgRlJPTSAocHVibGljLmZwcnQx X3AxIHI1IExFRlQgSk9JTiBwdWJsaWMuZnBydDJfcDEgcjYgT04gKCgocjUuYSA9IHI2LmIp KSBBTkQgKChyNS5iID0gcjYuYSkpIEFORCAoKHI2LmEgPCAxMCkpKSkgV0hFUkUgKChyNS5h IDwgMTApKQorKDcgcm93cykKIAogU0VMRUNUIHQxLmEsdDIuYix0Mi5jIEZST00gZnBydDEg dDEgTEVGVCBKT0lOIChTRUxFQ1QgKiBGUk9NIGZwcnQyIFdIRVJFIGEgPCAxMCkgdDIgT04g KHQxLmEgPSB0Mi5iIGFuZCB0MS5iID0gdDIuYSkgV0hFUkUgdDEuYSA8IDEwIE9SREVSIEJZ IDEsMiwzOwogIGEgfCBiIHwgIGMgICAKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcG9zdGdyZXNf ZmR3L3Bvc3RncmVzX2Zkdy5jIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvcG9zdGdyZXNfZmR3 LmMKaW5kZXggYWRjNjI1NzZkMS4uZjlhMmU4OGExNyAxMDA2NDQKLS0tIGEvY29udHJpYi9w b3N0Z3Jlc19mZHcvcG9zdGdyZXNfZmR3LmMKKysrIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcv cG9zdGdyZXNfZmR3LmMKQEAgLTM2NjcsNyArMzY2Nyw3IEBAIGFkanVzdF9mb3JlaWduX2dy b3VwaW5nX3BhdGhfY29zdChQbGFubmVySW5mbyAqcm9vdCwKIAogCQljb3N0X3NvcnQoJnNv cnRfcGF0aCwKIAkJCQkgIHJvb3QsCi0JCQkJICBwYXRoa2V5cywKKwkJCQkgIGxpc3RfbGVu Z3RoKHBhdGhrZXlzKSwKIAkJCQkgIDAsCiAJCQkJICAqcF9zdGFydHVwX2Nvc3QgKyAqcF9y dW5fY29zdCwKIAkJCQkgIHJldHJpZXZlZF9yb3dzLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvb3B0aW1pemVyL3BhdGgvY29zdHNpemUuYyBiL3NyYy9iYWNrZW5kL29wdGltaXplci9w YXRoL2Nvc3RzaXplLmMKaW5kZXggZTE1MjNkMTVkZi4uYTRkNWU5NGI2NSAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BhdGgvY29zdHNpemUuYworKysgYi9zcmMvYmFj a2VuZC9vcHRpbWl6ZXIvcGF0aC9jb3N0c2l6ZS5jCkBAIC00OTMsNiArNDkzLDEwIEBAIGNv c3RfZ2F0aGVyX21lcmdlKEdhdGhlck1lcmdlUGF0aCAqcGF0aCwgUGxhbm5lckluZm8gKnJv b3QsCiAJQ29zdAkJY29tcGFyaXNvbl9jb3N0OwogCWRvdWJsZQkJTjsKIAlkb3VibGUJCWxv Z047CisJaW50CQkJbnBhdGhrZXlzID0gbGlzdF9sZW5ndGgoKChQYXRoICopIHBhdGgpLT5w YXRoa2V5cyk7CisJaW50CQkJY21wTXVsdGlwbGllciA9IG5wYXRoa2V5czsKKworCUFzc2Vy dChucGF0aGtleXMgPiAwKTsKIAogCS8qIE1hcmsgdGhlIHBhdGggd2l0aCB0aGUgY29ycmVj dCByb3cgZXN0aW1hdGUgKi8KIAlpZiAocm93cykKQEAgLTUxMiw3ICs1MTYsNyBAQCBjb3N0 X2dhdGhlcl9tZXJnZShHYXRoZXJNZXJnZVBhdGggKnBhdGgsIFBsYW5uZXJJbmZvICpyb290 LAogCWxvZ04gPSBMT0cyKE4pOwogCiAJLyogQXNzdW1lZCBjb3N0IHBlciB0dXBsZSBjb21w YXJpc29uICovCi0JY29tcGFyaXNvbl9jb3N0ID0gMi4wICogY3B1X29wZXJhdG9yX2Nvc3Q7 CisJY29tcGFyaXNvbl9jb3N0ID0gKDEuMCArIGNtcE11bHRpcGxpZXIpICogY3B1X29wZXJh dG9yX2Nvc3Q7CiAKIAkvKiBIZWFwIGNyZWF0aW9uIGNvc3QgKi8KIAlzdGFydHVwX2Nvc3Qg Kz0gY29tcGFyaXNvbl9jb3N0ICogTiAqIGxvZ047CkBAIC0xODk2LDcgKzE5MDAsNyBAQCBj b3N0X3JlY3Vyc2l2ZV91bmlvbihQYXRoICpydW5pb24sIFBhdGggKm5ydGVybSwgUGF0aCAq cnRlcm0pCiAgKi8KIHN0YXRpYyB2b2lkCiBjb3N0X3R1cGxlc29ydChDb3N0ICpzdGFydHVw X2Nvc3QsIENvc3QgKnJ1bl9jb3N0LAotCQkJICAgZG91YmxlIHR1cGxlcywgaW50IHdpZHRo LAorCQkJICAgZG91YmxlIHR1cGxlcywgaW50IHdpZHRoLCBpbnQgY21wTXVsdGlwbGllciwK IAkJCSAgIENvc3QgY29tcGFyaXNvbl9jb3N0LCBpbnQgc29ydF9tZW0sCiAJCQkgICBkb3Vi bGUgbGltaXRfdHVwbGVzKQogewpAQCAtMTkxMyw3ICsxOTE3LDcgQEAgY29zdF90dXBsZXNv cnQoQ29zdCAqc3RhcnR1cF9jb3N0LCBDb3N0ICpydW5fY29zdCwKIAkJdHVwbGVzID0gMi4w OwogCiAJLyogSW5jbHVkZSB0aGUgZGVmYXVsdCBjb3N0LXBlci1jb21wYXJpc29uICovCi0J Y29tcGFyaXNvbl9jb3N0ICs9IDIuMCAqIGNwdV9vcGVyYXRvcl9jb3N0OworCWNvbXBhcmlz b25fY29zdCArPSAoMS4wICsgY21wTXVsdGlwbGllcikgKiBjcHVfb3BlcmF0b3JfY29zdDsK IAogCS8qIERvIHdlIGhhdmUgYSB1c2VmdWwgTElNSVQ/ICovCiAJaWYgKGxpbWl0X3R1cGxl cyA+IDAgJiYgbGltaXRfdHVwbGVzIDwgdHVwbGVzKQpAQCAtMjA4Niw3ICsyMDkwLDkgQEAg Y29zdF9pbmNyZW1lbnRhbF9zb3J0KFBhdGggKnBhdGgsCiAJICogYXJlIGVxdWFsLgogCSAq LwogCWNvc3RfdHVwbGVzb3J0KCZncm91cF9zdGFydHVwX2Nvc3QsICZncm91cF9ydW5fY29z dCwKLQkJCQkgICBncm91cF90dXBsZXMsIHdpZHRoLCBjb21wYXJpc29uX2Nvc3QsIHNvcnRf bWVtLAorCQkJCSAgIGdyb3VwX3R1cGxlcywgd2lkdGgsCisJCQkJICAgbGlzdF9sZW5ndGgo cGF0aGtleXMpLAorCQkJCSAgIGNvbXBhcmlzb25fY29zdCwgc29ydF9tZW0sCiAJCQkJICAg bGltaXRfdHVwbGVzKTsKIAogCS8qCkBAIC0yMTEwLDcgKzIxMTYsNyBAQCBjb3N0X2luY3Jl bWVudGFsX3NvcnQoUGF0aCAqcGF0aCwKIAkgKiBkZXRlY3QgdGhlIHNvcnQgZ3JvdXBzLiBU aGlzIGlzIHJvdWdobHkgZXF1YWwgdG8gb25lIGV4dHJhIGNvcHkgYW5kCiAJICogY29tcGFy aXNvbiBwZXIgdHVwbGUuCiAJICovCi0JcnVuX2Nvc3QgKz0gKGNwdV90dXBsZV9jb3N0ICsg Y29tcGFyaXNvbl9jb3N0KSAqIGlucHV0X3R1cGxlczsKKwlydW5fY29zdCArPSAoY3B1X3R1 cGxlX2Nvc3QgKyAobGlzdF9sZW5ndGgocGF0aGtleXMpICsgMSkgKiBjb21wYXJpc29uX2Nv c3QpICogaW5wdXRfdHVwbGVzOwogCiAJLyoKIAkgKiBBZGRpdGlvbmFsbHksIHdlIGNoYXJn ZSBkb3VibGUgY3B1X3R1cGxlX2Nvc3QgZm9yIGVhY2ggaW5wdXQgZ3JvdXAgdG8KQEAgLTIx NDIsNyArMjE0OCw3IEBAIGNvc3RfaW5jcmVtZW50YWxfc29ydChQYXRoICpwYXRoLAogICov CiB2b2lkCiBjb3N0X3NvcnQoUGF0aCAqcGF0aCwgUGxhbm5lckluZm8gKnJvb3QsCi0JCSAg TGlzdCAqcGF0aGtleXMsIGludCBpbnB1dF9kaXNhYmxlZF9ub2RlcywKKwkJICBpbnQgbnBh dGhrZXlzLCBpbnQgaW5wdXRfZGlzYWJsZWRfbm9kZXMsCiAJCSAgQ29zdCBpbnB1dF9jb3N0 LCBkb3VibGUgdHVwbGVzLCBpbnQgd2lkdGgsCiAJCSAgQ29zdCBjb21wYXJpc29uX2Nvc3Qs IGludCBzb3J0X21lbSwKIAkJICBkb3VibGUgbGltaXRfdHVwbGVzKQpAQCAtMjE1MCw5ICsy MTU2LDEyIEBAIGNvc3Rfc29ydChQYXRoICpwYXRoLCBQbGFubmVySW5mbyAqcm9vdCwKIHsK IAlDb3N0CQlzdGFydHVwX2Nvc3Q7CiAJQ29zdAkJcnVuX2Nvc3Q7CisJaW50CQkJY21wTXVs dGlwbGllciA9IG5wYXRoa2V5czsKKworCUFzc2VydChucGF0aGtleXMgPiAwKTsKIAogCWNv c3RfdHVwbGVzb3J0KCZzdGFydHVwX2Nvc3QsICZydW5fY29zdCwKLQkJCQkgICB0dXBsZXMs IHdpZHRoLAorCQkJCSAgIHR1cGxlcywgd2lkdGgsIGNtcE11bHRpcGxpZXIsCiAJCQkJICAg Y29tcGFyaXNvbl9jb3N0LCBzb3J0X21lbSwKIAkJCQkgICBsaW1pdF90dXBsZXMpOwogCkBA IC0yMzIxLDcgKzIzMzAsNyBAQCBjb3N0X2FwcGVuZChBcHBlbmRQYXRoICphcGF0aCkKIAkJ CQkJICovCiAJCQkJCWNvc3Rfc29ydCgmc29ydF9wYXRoLAogCQkJCQkJCSAgTlVMTCwgLyog ZG9lc24ndCBjdXJyZW50bHkgbmVlZCByb290ICovCi0JCQkJCQkJICBwYXRoa2V5cywKKwkJ CQkJCQkgIGxpc3RfbGVuZ3RoKHBhdGhrZXlzKSwKIAkJCQkJCQkgIHN1YnBhdGgtPmRpc2Fi bGVkX25vZGVzLAogCQkJCQkJCSAgc3VicGF0aC0+dG90YWxfY29zdCwKIAkJCQkJCQkgIHN1 YnBhdGgtPnJvd3MsCkBAIC0yNDQwLDYgKzI0NDksOSBAQCBjb3N0X21lcmdlX2FwcGVuZChQ YXRoICpwYXRoLCBQbGFubmVySW5mbyAqcm9vdCwKIAlDb3N0CQljb21wYXJpc29uX2Nvc3Q7 CiAJZG91YmxlCQlOOwogCWRvdWJsZQkJbG9nTjsKKwlpbnQJCQljbXBNdWx0aXBsaWVyID0g bGlzdF9sZW5ndGgocGF0aGtleXMpOworCisJQXNzZXJ0KHBhdGhrZXlzICE9IE5JTCk7CiAK IAkvKgogCSAqIEF2b2lkIGxvZygwKS4uLgpAQCAtMjQ0OCw3ICsyNDYwLDcgQEAgY29zdF9t ZXJnZV9hcHBlbmQoUGF0aCAqcGF0aCwgUGxhbm5lckluZm8gKnJvb3QsCiAJbG9nTiA9IExP RzIoTik7CiAKIAkvKiBBc3N1bWVkIGNvc3QgcGVyIHR1cGxlIGNvbXBhcmlzb24gKi8KLQlj b21wYXJpc29uX2Nvc3QgPSAyLjAgKiBjcHVfb3BlcmF0b3JfY29zdDsKKwljb21wYXJpc29u X2Nvc3QgPSAoMS4wICsgY21wTXVsdGlwbGllcikgKiBjcHVfb3BlcmF0b3JfY29zdDsKIAog CS8qIEhlYXAgY3JlYXRpb24gY29zdCAqLwogCXN0YXJ0dXBfY29zdCArPSBjb21wYXJpc29u X2Nvc3QgKiBOICogbG9nTjsKQEAgLTM2ODQsNyArMzY5Niw3IEBAIGluaXRpYWxfY29zdF9t ZXJnZWpvaW4oUGxhbm5lckluZm8gKnJvb3QsIEpvaW5Db3N0V29ya3NwYWNlICp3b3Jrc3Bh Y2UsCiAJewogCQljb3N0X3NvcnQoJnNvcnRfcGF0aCwKIAkJCQkgIHJvb3QsCi0JCQkJICBv dXRlcnNvcnRrZXlzLAorCQkJCSAgbGlzdF9sZW5ndGgob3V0ZXJzb3J0a2V5cyksCiAJCQkJ ICBvdXRlcl9wYXRoLT5kaXNhYmxlZF9ub2RlcywKIAkJCQkgIG91dGVyX3BhdGgtPnRvdGFs X2Nvc3QsCiAJCQkJICBvdXRlcl9wYXRoX3Jvd3MsCkBAIC0zNzEzLDcgKzM3MjUsNyBAQCBp bml0aWFsX2Nvc3RfbWVyZ2Vqb2luKFBsYW5uZXJJbmZvICpyb290LCBKb2luQ29zdFdvcmtz cGFjZSAqd29ya3NwYWNlLAogCXsKIAkJY29zdF9zb3J0KCZzb3J0X3BhdGgsCiAJCQkJICBy b290LAotCQkJCSAgaW5uZXJzb3J0a2V5cywKKwkJCQkgIGxpc3RfbGVuZ3RoKGlubmVyc29y dGtleXMpLAogCQkJCSAgaW5uZXJfcGF0aC0+ZGlzYWJsZWRfbm9kZXMsCiAJCQkJICBpbm5l cl9wYXRoLT50b3RhbF9jb3N0LAogCQkJCSAgaW5uZXJfcGF0aF9yb3dzLApkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vY3JlYXRlcGxhbi5jIGIvc3JjL2JhY2tl bmQvb3B0aW1pemVyL3BsYW4vY3JlYXRlcGxhbi5jCmluZGV4IGJiNDVlZjMxOGYuLjM4MWZl MGVkNDUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL2NyZWF0ZXBs YW4uYworKysgYi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9jcmVhdGVwbGFuLmMKQEAg LTU0NTMsNyArNTQ1Myw3IEBAIGxhYmVsX3NvcnRfd2l0aF9jb3N0c2l6ZShQbGFubmVySW5m byAqcm9vdCwgU29ydCAqcGxhbiwgZG91YmxlIGxpbWl0X3R1cGxlcykKIAkgKi8KIAlBc3Nl cnQoSXNBKHBsYW4sIFNvcnQpKTsKIAotCWNvc3Rfc29ydCgmc29ydF9wYXRoLCByb290LCBO SUwsCisJY29zdF9zb3J0KCZzb3J0X3BhdGgsIHJvb3QsIGxpc3RfbGVuZ3RoKGxlZnR0cmVl LT50YXJnZXRsaXN0KSwKIAkJCSAgcGxhbi0+cGxhbi5kaXNhYmxlZF9ub2RlcywKIAkJCSAg bGVmdHRyZWUtPnRvdGFsX2Nvc3QsCiAJCQkgIGxlZnR0cmVlLT5wbGFuX3Jvd3MsCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFubmVyLmMgYi9zcmMvYmFj a2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFubmVyLmMKaW5kZXggZDkyZDQzYTE3ZS4uNzI4YWVj ZmQ2YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vcGxhbm5lci5j CisrKyBiL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL3BsYW5uZXIuYwpAQCAtNjg1NCw3 ICs2ODU0LDcgQEAgcGxhbl9jbHVzdGVyX3VzZV9zb3J0KE9pZCB0YWJsZU9pZCwgT2lkIGlu ZGV4T2lkKQogCiAJLyogRXN0aW1hdGUgdGhlIGNvc3Qgb2Ygc2VxIHNjYW4gKyBzb3J0ICov CiAJc2VxU2NhblBhdGggPSBjcmVhdGVfc2Vxc2Nhbl9wYXRoKHJvb3QsIHJlbCwgTlVMTCwg MCk7Ci0JY29zdF9zb3J0KCZzZXFTY2FuQW5kU29ydFBhdGgsIHJvb3QsIE5JTCwKKwljb3N0 X3NvcnQoJnNlcVNjYW5BbmRTb3J0UGF0aCwgcm9vdCwgcmVsLT5tYXhfYXR0ciwKIAkJCSAg c2VxU2NhblBhdGgtPmRpc2FibGVkX25vZGVzLAogCQkJICBzZXFTY2FuUGF0aC0+dG90YWxf Y29zdCwgcmVsLT50dXBsZXMsIHJlbC0+cmVsdGFyZ2V0LT53aWR0aCwKIAkJCSAgY29tcGFy aXNvbkNvc3QsIG1haW50ZW5hbmNlX3dvcmtfbWVtLCAtMS4wKTsKZGlmZiAtLWdpdCBhL3Ny Yy9iYWNrZW5kL29wdGltaXplci9wcmVwL3ByZXB1bmlvbi5jIGIvc3JjL2JhY2tlbmQvb3B0 aW1pemVyL3ByZXAvcHJlcHVuaW9uLmMKaW5kZXggYTBiYWY2ZDRhMS4uMGQ1MWUxZjYxMiAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3ByZXAvcHJlcHVuaW9uLmMKKysr IGIvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3ByZXAvcHJlcHVuaW9uLmMKQEAgLTEzNTgsNyAr MTM1OCw3IEBAIGNob29zZV9oYXNoZWRfc2V0b3AoUGxhbm5lckluZm8gKnJvb3QsIExpc3Qg Kmdyb3VwQ2xhdXNlcywKIAlzb3J0ZWRfcC5zdGFydHVwX2Nvc3QgPSBpbnB1dF9wYXRoLT5z dGFydHVwX2Nvc3Q7CiAJc29ydGVkX3AudG90YWxfY29zdCA9IGlucHV0X3BhdGgtPnRvdGFs X2Nvc3Q7CiAJLyogWFhYIGNvc3Rfc29ydCBkb2Vzbid0IGFjdHVhbGx5IGxvb2sgYXQgcGF0 aGtleXMsIHNvIGp1c3QgcGFzcyBOSUwgKi8KLQljb3N0X3NvcnQoJnNvcnRlZF9wLCByb290 LCBOSUwsIHNvcnRlZF9wLmRpc2FibGVkX25vZGVzLAorCWNvc3Rfc29ydCgmc29ydGVkX3As IHJvb3QsIGxpc3RfbGVuZ3RoKGlucHV0X3BhdGgtPnBhdGh0YXJnZXQtPmV4cHJzKSwgc29y dGVkX3AuZGlzYWJsZWRfbm9kZXMsCiAJCQkgIHNvcnRlZF9wLnRvdGFsX2Nvc3QsCiAJCQkg IGlucHV0X3BhdGgtPnJvd3MsIGlucHV0X3BhdGgtPnBhdGh0YXJnZXQtPndpZHRoLAogCQkJ ICAwLjAsIHdvcmtfbWVtLCAtMS4wKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL29wdGlt aXplci91dGlsL3BhdGhub2RlLmMgYi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvdXRpbC9wYXRo bm9kZS5jCmluZGV4IGZjOTdiZjZlZTIuLjM5M2Y5OTMxNzYgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL29wdGltaXplci91dGlsL3BhdGhub2RlLmMKKysrIGIvc3JjL2JhY2tlbmQvb3B0 aW1pemVyL3V0aWwvcGF0aG5vZGUuYwpAQCAtMTUzNyw3ICsxNTM3LDcgQEAgY3JlYXRlX21l cmdlX2FwcGVuZF9wYXRoKFBsYW5uZXJJbmZvICpyb290LAogCiAJCQljb3N0X3NvcnQoJnNv cnRfcGF0aCwKIAkJCQkJICByb290LAotCQkJCQkgIHBhdGhrZXlzLAorCQkJCQkgIGxpc3Rf bGVuZ3RoKHBhdGhrZXlzKSwKIAkJCQkJICBzdWJwYXRoLT5kaXNhYmxlZF9ub2RlcywKIAkJ CQkJICBzdWJwYXRoLT50b3RhbF9jb3N0LAogCQkJCQkgIHN1YnBhdGgtPnJvd3MsCkBAIC0x ODY2LDcgKzE4NjYsNyBAQCBjcmVhdGVfdW5pcXVlX3BhdGgoUGxhbm5lckluZm8gKnJvb3Qs IFJlbE9wdEluZm8gKnJlbCwgUGF0aCAqc3VicGF0aCwKIAkJLyoKIAkJICogRXN0aW1hdGUg Y29zdCBmb3Igc29ydCt1bmlxdWUgaW1wbGVtZW50YXRpb24KIAkJICovCi0JCWNvc3Rfc29y dCgmc29ydF9wYXRoLCByb290LCBOSUwsCisJCWNvc3Rfc29ydCgmc29ydF9wYXRoLCByb290 LCBsaXN0X2xlbmd0aChzdWJwYXRoLT5wYXRodGFyZ2V0LT5leHBycyksCiAJCQkJICBzdWJw YXRoLT5kaXNhYmxlZF9ub2RlcywKIAkJCQkgIHN1YnBhdGgtPnRvdGFsX2Nvc3QsCiAJCQkJ ICByZWwtPnJvd3MsCkBAIC0zMTAxLDcgKzMxMDEsNyBAQCBjcmVhdGVfc29ydF9wYXRoKFBs YW5uZXJJbmZvICpyb290LAogCiAJcGF0aG5vZGUtPnN1YnBhdGggPSBzdWJwYXRoOwogCi0J Y29zdF9zb3J0KCZwYXRobm9kZS0+cGF0aCwgcm9vdCwgcGF0aGtleXMsCisJY29zdF9zb3J0 KCZwYXRobm9kZS0+cGF0aCwgcm9vdCwgbGlzdF9sZW5ndGgocGF0aGtleXMpLAogCQkJICBz dWJwYXRoLT5kaXNhYmxlZF9ub2RlcywKIAkJCSAgc3VicGF0aC0+dG90YWxfY29zdCwKIAkJ CSAgc3VicGF0aC0+cm93cywKQEAgLTM0MzYsNyArMzQzNiw3IEBAIGNyZWF0ZV9ncm91cGlu Z3NldHNfcGF0aChQbGFubmVySW5mbyAqcm9vdCwKIAkJCWVsc2UKIAkJCXsKIAkJCQkvKiBB Y2NvdW50IGZvciBjb3N0IG9mIHNvcnQsIGJ1dCBkb24ndCBjaGFyZ2UgaW5wdXQgY29zdCBh Z2FpbiAqLwotCQkJCWNvc3Rfc29ydCgmc29ydF9wYXRoLCByb290LCBOSUwsIDAsCisJCQkJ Y29zdF9zb3J0KCZzb3J0X3BhdGgsIHJvb3QsIGxpc3RfbGVuZ3RoKHN1YnBhdGgtPnBhdGh0 YXJnZXQtPmV4cHJzKSwgMCwKIAkJCQkJCSAgMC4wLAogCQkJCQkJICBzdWJwYXRoLT5yb3dz LAogCQkJCQkJICBzdWJwYXRoLT5wYXRodGFyZ2V0LT53aWR0aCwKZGlmZiAtLWdpdCBhL3Ny Yy9pbmNsdWRlL29wdGltaXplci9jb3N0LmggYi9zcmMvaW5jbHVkZS9vcHRpbWl6ZXIvY29z dC5oCmluZGV4IDg1NGE3ODI5NDQuLmI4MTEzYjg3NDggMTAwNjQ0Ci0tLSBhL3NyYy9pbmNs dWRlL29wdGltaXplci9jb3N0LmgKKysrIGIvc3JjL2luY2x1ZGUvb3B0aW1pemVyL2Nvc3Qu aApAQCAtMTA4LDcgKzEwOCw3IEBAIGV4dGVybiB2b2lkIGNvc3RfcmVzdWx0c2NhbihQYXRo ICpwYXRoLCBQbGFubmVySW5mbyAqcm9vdCwKIAkJCQkJCQlSZWxPcHRJbmZvICpiYXNlcmVs LCBQYXJhbVBhdGhJbmZvICpwYXJhbV9pbmZvKTsKIGV4dGVybiB2b2lkIGNvc3RfcmVjdXJz aXZlX3VuaW9uKFBhdGggKnJ1bmlvbiwgUGF0aCAqbnJ0ZXJtLCBQYXRoICpydGVybSk7CiBl eHRlcm4gdm9pZCBjb3N0X3NvcnQoUGF0aCAqcGF0aCwgUGxhbm5lckluZm8gKnJvb3QsCi0J CQkJCSAgTGlzdCAqcGF0aGtleXMsIGludCBkaXNhYmxlZF9ub2RlcywKKwkJCQkJICBpbnQg bnBhdGhrZXlzLCBpbnQgZGlzYWJsZWRfbm9kZXMsCiAJCQkJCSAgQ29zdCBpbnB1dF9jb3N0 LCBkb3VibGUgdHVwbGVzLCBpbnQgd2lkdGgsCiAJCQkJCSAgQ29zdCBjb21wYXJpc29uX2Nv c3QsIGludCBzb3J0X21lbSwKIAkJCQkJICBkb3VibGUgbGltaXRfdHVwbGVzKTsKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYWdncmVnYXRlcy5vdXQgYi9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL2FnZ3JlZ2F0ZXMub3V0CmluZGV4IDhhYzEzYjU2MmMu LjI1MDNhZDAzZmIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYWdn cmVnYXRlcy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9hZ2dyZWdhdGVz Lm91dApAQCAtMzAxNiwxNyArMzAxNiwxOCBAQCBBTkFMWVpFIGFnZ19zb3J0X29yZGVyOwog RVhQTEFJTiAoQ09TVFMgT0ZGKQogU0VMRUNUIGFycmF5X2FnZyhjMSBPUkRFUiBCWSBjMiks YzIKIEZST00gYWdnX3NvcnRfb3JkZXIgV0hFUkUgYzIgPCAxMDAgR1JPVVAgQlkgYzEgT1JE RVIgQlkgMjsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFNvcnQK ICAgIFNvcnQgS2V5OiBjMgogICAgLT4gIEdyb3VwQWdncmVnYXRlCiAgICAgICAgICBHcm91 cCBLZXk6IGMxCi0gICAgICAgICAtPiAgU29ydAorICAgICAgICAgLT4gIEluY3JlbWVudGFs IFNvcnQKICAgICAgICAgICAgICAgIFNvcnQgS2V5OiBjMSwgYzIKLSAgICAgICAgICAgICAg IC0+ICBJbmRleCBTY2FuIHVzaW5nIGFnZ19zb3J0X29yZGVyX2MyX2lkeCBvbiBhZ2dfc29y dF9vcmRlcgotICAgICAgICAgICAgICAgICAgICAgSW5kZXggQ29uZDogKGMyIDwgMTAwKQot KDggcm93cykKKyAgICAgICAgICAgICAgIFByZXNvcnRlZCBLZXk6IGMxCisgICAgICAgICAg ICAgICAtPiAgSW5kZXggU2NhbiB1c2luZyBhZ2dfc29ydF9vcmRlcl9wa2V5IG9uIGFnZ19z b3J0X29yZGVyCisgICAgICAgICAgICAgICAgICAgICBGaWx0ZXI6IChjMiA8IDEwMCkKKyg5 IHJvd3MpCiAKIERST1AgVEFCTEUgYWdnX3NvcnRfb3JkZXIgQ0FTQ0FERTsKIERST1AgVEFC TEUgYnRnOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9qb2luLm91 dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvam9pbi5vdXQKaW5kZXggMTJhYmQzYTBl Ny4uZjZhMjk5MDVjYSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9q b2luLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2pvaW4ub3V0CkBAIC01 NzM2LDE4ICs1NzM2LDIwIEBAIHNlbGVjdCBkLiogZnJvbSBkIGxlZnQgam9pbiAoc2VsZWN0 ICogZnJvbSBiIGdyb3VwIGJ5IGIuaWQsIGIuY19pZCkgcwogZXhwbGFpbiAoY29zdHMgb2Zm KQogc2VsZWN0IGQuKiBmcm9tIGQgbGVmdCBqb2luIChzZWxlY3QgZGlzdGluY3QgKiBmcm9t IGIpIHMKICAgb24gZC5hID0gcy5pZDsKLSAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAg ICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIE1l cmdlIFJpZ2h0IEpvaW4KLSAgIE1lcmdlIENvbmQ6IChiLmlkID0gZC5hKQotICAgLT4gIFVu aXF1ZQotICAgICAgICAgLT4gIFNvcnQKLSAgICAgICAgICAgICAgIFNvcnQgS2V5OiBiLmlk LCBiLmNfaWQKLSAgICAgICAgICAgICAgIC0+ICBTZXEgU2NhbiBvbiBiCisgICAgICAgICAg ICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIE1lcmdlIExlZnQgSm9pbgorICAgTWVy Z2UgQ29uZDogKGQuYSA9IHMuaWQpCiAgICAtPiAgU29ydAogICAgICAgICAgU29ydCBLZXk6 IGQuYQogICAgICAgICAgLT4gIFNlcSBTY2FuIG9uIGQKLSg5IHJvd3MpCisgICAtPiAgU29y dAorICAgICAgICAgU29ydCBLZXk6IHMuaWQKKyAgICAgICAgIC0+ICBTdWJxdWVyeSBTY2Fu IG9uIHMKKyAgICAgICAgICAgICAgIC0+ICBIYXNoQWdncmVnYXRlCisgICAgICAgICAgICAg ICAgICAgICBHcm91cCBLZXk6IGIuaWQsIGIuY19pZAorICAgICAgICAgICAgICAgICAgICAg LT4gIFNlcSBTY2FuIG9uIGIKKygxMSByb3dzKQogCiAtLSBqb2luIHJlbW92YWwgaXMgbm90 IHBvc3NpYmxlIGhlcmUKIGV4cGxhaW4gKGNvc3RzIG9mZikKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcGFydGl0aW9uX2pvaW4ub3V0IGIvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9wYXJ0aXRpb25fam9pbi5vdXQKaW5kZXggMTA4ZjllY2I0NC4uODg2 ZGM1NTlhNSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wYXJ0aXRp b25fam9pbi5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wYXJ0aXRpb25f am9pbi5vdXQKQEAgLTEyNzQsOSArMTI3NCwxMSBAQCBFWFBMQUlOIChDT1NUUyBPRkYpCiBT RUxFQ1QgdDEuYSwgdDEuYywgdDIuYiwgdDIuYywgdDMuYSArIHQzLmIsIHQzLmMgRlJPTSAo cHJ0MSB0MSBMRUZUIEpPSU4gcHJ0MiB0MiBPTiB0MS5hID0gdDIuYikgUklHSFQgSk9JTiBw cnQxX2UgdDMgT04gKHQxLmEgPSAodDMuYSArIHQzLmIpLzIpIFdIRVJFIHQzLmMgPSAwIE9S REVSIEJZIHQxLmEsIHQyLmIsIHQzLmEgKyB0My5iOwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFNvcnQKKyBJbmNyZW1lbnRhbCBTb3J0CiAg ICBTb3J0IEtleTogdDEuYSwgdDIuYiwgKCh0My5hICsgdDMuYikpCi0gICAtPiAgQXBwZW5k CisgICBQcmVzb3J0ZWQgS2V5OiB0MS5hCisgICAtPiAgTWVyZ2UgQXBwZW5kCisgICAgICAg ICBTb3J0IEtleTogdDEuYQogICAgICAgICAgLT4gIE1lcmdlIExlZnQgSm9pbgogICAgICAg ICAgICAgICAgTWVyZ2UgQ29uZDogKHQxXzEuYSA9IHQyXzEuYikKICAgICAgICAgICAgICAg IC0+ICBTb3J0CkBAIC0xMzI1LDcgKzEzMjcsNyBAQCBTRUxFQ1QgdDEuYSwgdDEuYywgdDIu YiwgdDIuYywgdDMuYSArIHQzLmIsIHQzLmMgRlJPTSAocHJ0MSB0MSBMRUZUIEpPSU4gcHJ0 MiB0MgogICAgICAgICAgICAgICAgLT4gIFNvcnQKICAgICAgICAgICAgICAgICAgICAgIFNv cnQgS2V5OiB0Ml8zLmIKICAgICAgICAgICAgICAgICAgICAgIC0+ICBTZXEgU2NhbiBvbiBw cnQyX3AzIHQyXzMKLSg1MSByb3dzKQorKDUzIHJvd3MpCiAKIFNFTEVDVCB0MS5hLCB0MS5j LCB0Mi5iLCB0Mi5jLCB0My5hICsgdDMuYiwgdDMuYyBGUk9NIChwcnQxIHQxIExFRlQgSk9J TiBwcnQyIHQyIE9OIHQxLmEgPSB0Mi5iKSBSSUdIVCBKT0lOIHBydDFfZSB0MyBPTiAodDEu YSA9ICh0My5hICsgdDMuYikvMikgV0hFUkUgdDMuYyA9IDAgT1JERVIgQlkgdDEuYSwgdDIu YiwgdDMuYSArIHQzLmI7CiAgIGEgIHwgIGMgICB8ICBiICB8ICBjICAgfCA/Y29sdW1uPyB8 IGMgCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3VuaW9uLm91dCBi L3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdW5pb24ub3V0CmluZGV4IDA0NTZkNDhjOTMu LmVjNTIyMTVhZTQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdW5p b24ub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdW5pb24ub3V0CkBAIC0x MjI1LDE4ICsxMjI1LDE3IEBAIFNFTEVDVCAqIEZST00KICAgIFNFTEVDVCAyIEFTIHQsIDQg QVMgeCkgc3MKIFdIRVJFIHggPCA0CiBPUkRFUiBCWSB4OwotICAgICAgICAgICAgICAgICAg ICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICAgICAgIFFVRVJZ IFBMQU4gICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KICBTb3J0CiAgICBTb3J0IEtleTogKDIpCi0gICAtPiAgVW5pcXVl Ci0gICAgICAgICAtPiAgU29ydAotICAgICAgICAgICAgICAgU29ydCBLZXk6ICgxKSwgKDIp Ci0gICAgICAgICAgICAgICAtPiAgQXBwZW5kCi0gICAgICAgICAgICAgICAgICAgICAtPiAg UmVzdWx0Ci0gICAgICAgICAgICAgICAgICAgICAtPiAgUmVzdWx0Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICBPbmUtVGltZSBGaWx0ZXI6IGZhbHNlCi0oOSByb3dzKQorICAgLT4g IEhhc2hBZ2dyZWdhdGUKKyAgICAgICAgIEdyb3VwIEtleTogKDEpLCAoMikKKyAgICAgICAg IC0+ICBBcHBlbmQKKyAgICAgICAgICAgICAgIC0+ICBSZXN1bHQKKyAgICAgICAgICAgICAg IC0+ICBSZXN1bHQKKyAgICAgICAgICAgICAgICAgICAgIE9uZS1UaW1lIEZpbHRlcjogZmFs c2UKKyg4IHJvd3MpCiAKIFNFTEVDVCAqIEZST00KICAgKFNFTEVDVCAxIEFTIHQsIDIgQVMg eApAQCAtMTI5MCwxOSArMTI4OSwxOCBAQCBTRUxFQ1QgKiBGUk9NCiAgICBTRUxFQ1QgMiBB UyB0LCA0IEFTIHgpIHNzCiBXSEVSRSB4ID4gMwogT1JERVIgQlkgeDsKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAg U29ydAogICAgU29ydCBLZXk6IHNzLngKICAgIC0+ICBTdWJxdWVyeSBTY2FuIG9uIHNzCiAg ICAgICAgICBGaWx0ZXI6IChzcy54ID4gMykKLSAgICAgICAgIC0+ICBVbmlxdWUKLSAgICAg ICAgICAgICAgIC0+ICBTb3J0Ci0gICAgICAgICAgICAgICAgICAgICBTb3J0IEtleTogKDEp LCAoKChyYW5kb20oKSAqICczJzo6ZG91YmxlIHByZWNpc2lvbikpOjppbnRlZ2VyKQotICAg ICAgICAgICAgICAgICAgICAgLT4gIEFwcGVuZAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgLT4gIFJlc3VsdAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLT4gIFJlc3VsdAot KDEwIHJvd3MpCisgICAgICAgICAtPiAgSGFzaEFnZ3JlZ2F0ZQorICAgICAgICAgICAgICAg R3JvdXAgS2V5OiAoMSksICgoKHJhbmRvbSgpICogJzMnOjpkb3VibGUgcHJlY2lzaW9uKSk6 OmludGVnZXIpCisgICAgICAgICAgICAgICAtPiAgQXBwZW5kCisgICAgICAgICAgICAgICAg ICAgICAtPiAgUmVzdWx0CisgICAgICAgICAgICAgICAgICAgICAtPiAgUmVzdWx0CisoOSBy b3dzKQogCiBTRUxFQ1QgKiBGUk9NCiAgIChTRUxFQ1QgMSBBUyB0LCAocmFuZG9tKCkqMyk6 OmludCBBUyB4CkBAIC0xMzIzLDI0ICsxMzIxLDIyIEBAIHNlbGVjdCBkaXN0aW5jdCBxMSBm cm9tCiAgICB1bmlvbiBhbGwKICAgIHNlbGVjdCBkaXN0aW5jdCAqIGZyb20gaW50OF90Ymwg aTgyKSBzcwogd2hlcmUgcTIgPSBxMjsKLSAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZ IFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBVbmlxdWUKLSAgIC0+ICBN ZXJnZSBBcHBlbmQKLSAgICAgICAgIFNvcnQgS2V5OiAiKlNFTEVDVCogMSIucTEKKyAgICAg ICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAKKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBIYXNo QWdncmVnYXRlCisgICBHcm91cCBLZXk6ICIqU0VMRUNUKiAxIi5xMQorICAgLT4gIEFwcGVu ZAogICAgICAgICAgLT4gIFN1YnF1ZXJ5IFNjYW4gb24gIipTRUxFQ1QqIDEiCi0gICAgICAg ICAgICAgICAtPiAgVW5pcXVlCi0gICAgICAgICAgICAgICAgICAgICAtPiAgU29ydAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgU29ydCBLZXk6IGk4MS5xMSwgaTgxLnEyCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAtPiAgU2VxIFNjYW4gb24gaW50OF90YmwgaTgxCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaWx0ZXI6IChxMiBJUyBOT1QgTlVM TCkKKyAgICAgICAgICAgICAgIC0+ICBIYXNoQWdncmVnYXRlCisgICAgICAgICAgICAgICAg ICAgICBHcm91cCBLZXk6IGk4MS5xMSwgaTgxLnEyCisgICAgICAgICAgICAgICAgICAgICAt PiAgU2VxIFNjYW4gb24gaW50OF90YmwgaTgxCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBGaWx0ZXI6IChxMiBJUyBOT1QgTlVMTCkKICAgICAgICAgIC0+ICBTdWJxdWVyeSBTY2Fu IG9uICIqU0VMRUNUKiAyIgotICAgICAgICAgICAgICAgLT4gIFVuaXF1ZQotICAgICAgICAg ICAgICAgICAgICAgLT4gIFNvcnQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFNvcnQg S2V5OiBpODIucTEsIGk4Mi5xMgotICAgICAgICAgICAgICAgICAgICAgICAgICAgLT4gIFNl cSBTY2FuIG9uIGludDhfdGJsIGk4MgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgRmlsdGVyOiAocTIgSVMgTk9UIE5VTEwpCi0oMTUgcm93cykKKyAgICAgICAgICAgICAg IC0+ICBIYXNoQWdncmVnYXRlCisgICAgICAgICAgICAgICAgICAgICBHcm91cCBLZXk6IGk4 Mi5xMSwgaTgyLnEyCisgICAgICAgICAgICAgICAgICAgICAtPiAgU2VxIFNjYW4gb24gaW50 OF90YmwgaTgyCisgICAgICAgICAgICAgICAgICAgICAgICAgICBGaWx0ZXI6IChxMiBJUyBO T1QgTlVMTCkKKygxMyByb3dzKQogCiBzZWxlY3QgZGlzdGluY3QgcTEgZnJvbQogICAoc2Vs ZWN0IGRpc3RpbmN0ICogZnJvbSBpbnQ4X3RibCBpODEKLS0gCjIuMzkuNQoK --------------CjvWACO0jSx0xA0zB4fhaAKu--