From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
	by lore.proxmox.com (Postfix) with ESMTPS id C33331FF16F
	for <inbox@lore.proxmox.com>; Fri, 15 Nov 2024 13:12:54 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id EC83412AFB;
	Fri, 15 Nov 2024 13:12:14 +0100 (CET)
From: Stefan Hanreich <s.hanreich@proxmox.com>
To: pve-devel@lists.proxmox.com
Date: Fri, 15 Nov 2024 13:10:58 +0100
Message-Id: <20241115121109.170200-8-s.hanreich@proxmox.com>
X-Mailer: git-send-email 2.39.5
In-Reply-To: <20241115121109.170200-1-s.hanreich@proxmox.com>
References: <20241115121109.170200-1-s.hanreich@proxmox.com>
MIME-Version: 1.0
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.282 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DMARC_MISSING             0.1 Missing DMARC policy
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 KAM_LAZY_DOMAIN_SECURITY 1 Sending domain does not have any anti-forgery
 methods
 PROLO_LEO1                0.1 Meta Catches all Leo drug variations so far
 RDNS_NONE 0.793 Delivered to internal network by a host with no rDNS
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_NONE                0.001 SPF: sender does not publish an SPF Record
Subject: [pve-devel] [PATCH proxmox-firewall v4 07/18] sdn: create forward
 firewall rules
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Cc: Wolfgang Bumiller <w.bumiller@proxmox.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

U2lnbmVkLW9mZi1ieTogU3RlZmFuIEhhbnJlaWNoIDxzLmhhbnJlaWNoQHByb3htb3guY29tPgpS
ZXZpZXdlZC1ieTogV29sZmdhbmcgQnVtaWxsZXIgPHcuYnVtaWxsZXJAcHJveG1veC5jb20+ClRl
c3RlZC1ieTogSGFubmVzIETDvHJyIDxoLmR1ZXJyQHByb3htb3guY29tPgotLS0KIC4uLi9yZXNv
dXJjZXMvcHJveG1veC1maXJld2FsbC5uZnQgICAgICAgICAgICB8ICA1NCArKysrKysrKwogcHJv
eG1veC1maXJld2FsbC9zcmMvZmlyZXdhbGwucnMgICAgICAgICAgICAgIHwgMTIyICsrKysrKysr
KysrKysrKysrLQogcHJveG1veC1maXJld2FsbC9zcmMvcnVsZS5ycyAgICAgICAgICAgICAgICAg
IHwgICA1ICstCiAuLi4vaW50ZWdyYXRpb25fdGVzdHNfX2ZpcmV3YWxsLnNuYXAgICAgICAgICAg
fCAgODYgKysrKysrKysrKysrCiBwcm94bW94LW5mdGFibGVzL3NyYy9leHByZXNzaW9uLnJzICAg
ICAgICAgICAgfCAgIDggKysKIHByb3htb3gtbmZ0YWJsZXMvc3JjL3R5cGVzLnJzICAgICAgICAg
ICAgICAgICB8ICAgNiArCiA2IGZpbGVzIGNoYW5nZWQsIDI3NSBpbnNlcnRpb25zKCspLCA2IGRl
bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Byb3htb3gtZmlyZXdhbGwvcmVzb3VyY2VzL3Byb3ht
b3gtZmlyZXdhbGwubmZ0IGIvcHJveG1veC1maXJld2FsbC9yZXNvdXJjZXMvcHJveG1veC1maXJl
d2FsbC5uZnQKaW5kZXggZjQyMjU1Yy4uYWY5NDU0ZCAxMDA2NDQKLS0tIGEvcHJveG1veC1maXJl
d2FsbC9yZXNvdXJjZXMvcHJveG1veC1maXJld2FsbC5uZnQKKysrIGIvcHJveG1veC1maXJld2Fs
bC9yZXNvdXJjZXMvcHJveG1veC1maXJld2FsbC5uZnQKQEAgLTIwLDggKzIwLDEyIEBAIGFkZCBj
aGFpbiBpbmV0IHByb3htb3gtZmlyZXdhbGwgYWxsb3ctaWNtcAogYWRkIGNoYWluIGluZXQgcHJv
eG1veC1maXJld2FsbCBsb2ctZHJvcC1zbXVyZnMKIGFkZCBjaGFpbiBpbmV0IHByb3htb3gtZmly
ZXdhbGwgZGVmYXVsdC1pbgogYWRkIGNoYWluIGluZXQgcHJveG1veC1maXJld2FsbCBkZWZhdWx0
LW91dAorYWRkIGNoYWluIGluZXQgcHJveG1veC1maXJld2FsbCBiZWZvcmUtYnJpZGdlCithZGQg
Y2hhaW4gaW5ldCBwcm94bW94LWZpcmV3YWxsIGhvc3QtYnJpZGdlLWlucHV0IHt0eXBlIGZpbHRl
ciBob29rIGlucHV0IHByaW9yaXR5IGZpbHRlciAtIDE7IHBvbGljeSBhY2NlcHQ7fQorYWRkIGNo
YWluIGluZXQgcHJveG1veC1maXJld2FsbCBob3N0LWJyaWRnZS1vdXRwdXQge3R5cGUgZmlsdGVy
IGhvb2sgb3V0cHV0IHByaW9yaXR5IGZpbHRlciArIDE7IHBvbGljeSBhY2NlcHQ7fQogYWRkIGNo
YWluIGluZXQgcHJveG1veC1maXJld2FsbCBpbnB1dCB7dHlwZSBmaWx0ZXIgaG9vayBpbnB1dCBw
cmlvcml0eSBmaWx0ZXI7IHBvbGljeSBkcm9wO30KIGFkZCBjaGFpbiBpbmV0IHByb3htb3gtZmly
ZXdhbGwgb3V0cHV0IHt0eXBlIGZpbHRlciBob29rIG91dHB1dCBwcmlvcml0eSBmaWx0ZXI7IHBv
bGljeSBhY2NlcHQ7fQorYWRkIGNoYWluIGluZXQgcHJveG1veC1maXJld2FsbCBmb3J3YXJkIHt0
eXBlIGZpbHRlciBob29rIGZvcndhcmQgcHJpb3JpdHkgZmlsdGVyOyBwb2xpY3kgYWNjZXB0O30K
IAogYWRkIGNoYWluIGJyaWRnZSBwcm94bW94LWZpcmV3YWxsLWd1ZXN0cyBhbGxvdy1kaGNwLWlu
CiBhZGQgY2hhaW4gYnJpZGdlIHByb3htb3gtZmlyZXdhbGwtZ3Vlc3RzIGFsbG93LWRoY3Atb3V0
CkBAIC0zOSw2ICs0Myw4IEBAIGFkZCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVz
dHMgcHJlLXZtLW91dAogYWRkIGNoYWluIGJyaWRnZSBwcm94bW94LWZpcmV3YWxsLWd1ZXN0cyB2
bS1vdXQge3R5cGUgZmlsdGVyIGhvb2sgcHJlcm91dGluZyBwcmlvcml0eSAwOyBwb2xpY3kgYWNj
ZXB0O30KIGFkZCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVzdHMgcHJlLXZtLWlu
CiBhZGQgY2hhaW4gYnJpZGdlIHByb3htb3gtZmlyZXdhbGwtZ3Vlc3RzIHZtLWluIHt0eXBlIGZp
bHRlciBob29rIHBvc3Ryb3V0aW5nIHByaW9yaXR5IDA7IHBvbGljeSBhY2NlcHQ7fQorYWRkIGNo
YWluIGJyaWRnZSBwcm94bW94LWZpcmV3YWxsLWd1ZXN0cyBiZWZvcmUtYnJpZGdlCithZGQgY2hh
aW4gYnJpZGdlIHByb3htb3gtZmlyZXdhbGwtZ3Vlc3RzIGZvcndhcmQge3R5cGUgZmlsdGVyIGhv
b2sgZm9yd2FyZCBwcmlvcml0eSAwOyBwb2xpY3kgYWNjZXB0O30KIAogZmx1c2ggY2hhaW4gaW5l
dCBwcm94bW94LWZpcmV3YWxsIGRvLXJlamVjdAogZmx1c2ggY2hhaW4gaW5ldCBwcm94bW94LWZp
cmV3YWxsIGFjY2VwdC1tYW5hZ2VtZW50CkBAIC01NSw4ICs2MSwxMiBAQCBmbHVzaCBjaGFpbiBp
bmV0IHByb3htb3gtZmlyZXdhbGwgYWxsb3ctaWNtcAogZmx1c2ggY2hhaW4gaW5ldCBwcm94bW94
LWZpcmV3YWxsIGxvZy1kcm9wLXNtdXJmcwogZmx1c2ggY2hhaW4gaW5ldCBwcm94bW94LWZpcmV3
YWxsIGRlZmF1bHQtaW4KIGZsdXNoIGNoYWluIGluZXQgcHJveG1veC1maXJld2FsbCBkZWZhdWx0
LW91dAorZmx1c2ggY2hhaW4gaW5ldCBwcm94bW94LWZpcmV3YWxsIGJlZm9yZS1icmlkZ2UKK2Zs
dXNoIGNoYWluIGluZXQgcHJveG1veC1maXJld2FsbCBob3N0LWJyaWRnZS1pbnB1dAorZmx1c2gg
Y2hhaW4gaW5ldCBwcm94bW94LWZpcmV3YWxsIGhvc3QtYnJpZGdlLW91dHB1dAogZmx1c2ggY2hh
aW4gaW5ldCBwcm94bW94LWZpcmV3YWxsIGlucHV0CiBmbHVzaCBjaGFpbiBpbmV0IHByb3htb3gt
ZmlyZXdhbGwgb3V0cHV0CitmbHVzaCBjaGFpbiBpbmV0IHByb3htb3gtZmlyZXdhbGwgZm9yd2Fy
ZAogCiBmbHVzaCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVzdHMgYWxsb3ctZGhj
cC1pbgogZmx1c2ggY2hhaW4gYnJpZGdlIHByb3htb3gtZmlyZXdhbGwtZ3Vlc3RzIGFsbG93LWRo
Y3Atb3V0CkBAIC03NCw2ICs4NCw4IEBAIGZsdXNoIGNoYWluIGJyaWRnZSBwcm94bW94LWZpcmV3
YWxsLWd1ZXN0cyBwcmUtdm0tb3V0CiBmbHVzaCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2Fs
bC1ndWVzdHMgdm0tb3V0CiBmbHVzaCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVz
dHMgcHJlLXZtLWluCiBmbHVzaCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVzdHMg
dm0taW4KK2ZsdXNoIGNoYWluIGJyaWRnZSBwcm94bW94LWZpcmV3YWxsLWd1ZXN0cyBiZWZvcmUt
YnJpZGdlCitmbHVzaCBjaGFpbiBicmlkZ2UgcHJveG1veC1maXJld2FsbC1ndWVzdHMgZm9yd2Fy
ZAogCiB0YWJsZSBpbmV0IHByb3htb3gtZmlyZXdhbGwgewogICAgIGNoYWluIGRvLXJlamVjdCB7
CkBAIC0yMjMsNiArMjM1LDI1IEBAIHRhYmxlIGluZXQgcHJveG1veC1maXJld2FsbCB7CiAgICAg
Y2hhaW4gb3B0aW9uLWluIHt9CiAgICAgY2hhaW4gb3B0aW9uLW91dCB7fQogCisgICAgbWFwIGJy
aWRnZS1tYXAgeworICAgICAgICB0eXBlIGlmbmFtZSA6IHZlcmRpY3QKKyAgICB9CisKKyAgICBj
aGFpbiBiZWZvcmUtYnJpZGdlIHsKKyAgICAgICAgbWV0YSBwcm90b2NvbCBhcnAgYWNjZXB0Cisg
ICAgICAgIG1ldGEgcHJvdG9jb2wgIT0gYXJwIGN0IHN0YXRlIHZtYXAgeyBlc3RhYmxpc2hlZCA6
IGFjY2VwdCwgcmVsYXRlZCA6IGFjY2VwdCwgaW52YWxpZCA6IGRyb3AgfQorICAgIH0KKworICAg
IGNoYWluIGhvc3QtYnJpZGdlLWlucHV0IHsKKyAgICAgICAgdHlwZSBmaWx0ZXIgaG9vayBpbnB1
dCBwcmlvcml0eSBmaWx0ZXIgLSAxOyBwb2xpY3kgYWNjZXB0OworICAgICAgICBtZXRhIGlpZm5h
bWUgdm1hcCBAYnJpZGdlLW1hcAorICAgIH0KKworICAgIGNoYWluIGhvc3QtYnJpZGdlLW91dHB1
dCB7CisgICAgICAgIHR5cGUgZmlsdGVyIGhvb2sgb3V0cHV0IHByaW9yaXR5IGZpbHRlciArIDE7
IHBvbGljeSBhY2NlcHQ7CisgICAgICAgIG1ldGEgb2lmbmFtZSB2bWFwIEBicmlkZ2UtbWFwCisg
ICAgfQorCiAgICAgY2hhaW4gaW5wdXQgewogICAgICAgICB0eXBlIGZpbHRlciBob29rIGlucHV0
IHByaW9yaXR5IGZpbHRlcjsgcG9saWN5IGFjY2VwdDsKICAgICAgICAganVtcCBkZWZhdWx0LWlu
CkBAIC0yNDAsMTIgKzI3MSwyMSBAQCB0YWJsZSBpbmV0IHByb3htb3gtZmlyZXdhbGwgewogICAg
ICAgICBqdW1wIGNsdXN0ZXItb3V0CiAgICAgfQogCisgICAgY2hhaW4gZm9yd2FyZCB7CisgICAg
ICAgIHR5cGUgZmlsdGVyIGhvb2sgZm9yd2FyZCBwcmlvcml0eSBmaWx0ZXI7IHBvbGljeSBhY2Nl
cHQ7CisgICAgICAgIGp1bXAgaG9zdC1mb3J3YXJkCisgICAgICAgIGp1bXAgY2x1c3Rlci1mb3J3
YXJkCisgICAgfQorCiAgICAgY2hhaW4gY2x1c3Rlci1pbiB7fQogICAgIGNoYWluIGNsdXN0ZXIt
b3V0IHt9CiAKICAgICBjaGFpbiBob3N0LWluIHt9CiAgICAgY2hhaW4gaG9zdC1vdXQge30KIAor
ICAgIGNoYWluIGNsdXN0ZXItZm9yd2FyZCB7fQorICAgIGNoYWluIGhvc3QtZm9yd2FyZCB7fQor
CiAgICAgY2hhaW4gY3QtaW4ge30KIH0KIApAQCAtMzM1LDQgKzM3NSwxOCBAQCB0YWJsZSBicmlk
Z2UgcHJveG1veC1maXJld2FsbC1ndWVzdHMgewogICAgICAgICBqdW1wIGFsbG93LWljbXAKICAg
ICAgICAgb2lmbmFtZSB2bWFwIEB2bS1tYXAtaW4KICAgICB9CisKKyAgICBtYXAgYnJpZGdlLW1h
cCB7CisgICAgICAgIHR5cGUgaWZuYW1lIC4gaWZuYW1lIDogdmVyZGljdAorICAgIH0KKworICAg
IGNoYWluIGJlZm9yZS1icmlkZ2UgeworICAgICAgICBtZXRhIHByb3RvY29sIGFycCBhY2NlcHQK
KyAgICAgICAgbWV0YSBwcm90b2NvbCAhPSBhcnAgY3Qgc3RhdGUgdm1hcCB7IGVzdGFibGlzaGVk
IDogYWNjZXB0LCByZWxhdGVkIDogYWNjZXB0LCBpbnZhbGlkIDogZHJvcCB9CisgICAgfQorCisg
ICAgY2hhaW4gZm9yd2FyZCB7CisgICAgICAgIHR5cGUgZmlsdGVyIGhvb2sgZm9yd2FyZCBwcmlv
cml0eSAwOyBwb2xpY3kgYWNjZXB0OworICAgICAgICBtZXRhIGlicm5hbWUgLiBtZXRhIG9icm5h
bWUgdm1hcCBAYnJpZGdlLW1hcAorICAgIH0KIH0KZGlmZiAtLWdpdCBhL3Byb3htb3gtZmlyZXdh
bGwvc3JjL2ZpcmV3YWxsLnJzIGIvcHJveG1veC1maXJld2FsbC9zcmMvZmlyZXdhbGwucnMKaW5k
ZXggMzQ3ZjNhZi4uYmI1NDAyMyAxMDA2NDQKLS0tIGEvcHJveG1veC1maXJld2FsbC9zcmMvZmly
ZXdhbGwucnMKKysrIGIvcHJveG1veC1maXJld2FsbC9zcmMvZmlyZXdhbGwucnMKQEAgLTEsNyAr
MSw3IEBACiB1c2Ugc3RkOjpjb2xsZWN0aW9uczo6QlRyZWVNYXA7CiB1c2Ugc3RkOjpmczsKIAot
dXNlIGFueWhvdzo6RXJyb3I7Cit1c2UgYW55aG93Ojp7YmFpbCwgRXJyb3J9OwogCiB1c2UgcHJv
eG1veF9uZnRhYmxlczo6Y29tbWFuZDo6e0FkZCwgQ29tbWFuZHMsIERlbGV0ZSwgRmx1c2h9Owog
dXNlIHByb3htb3hfbmZ0YWJsZXM6OmV4cHJlc3Npb246OntNZXRhLCBQYXlsb2FkfTsKQEAgLTEz
LDYgKzEzLDkgQEAgdXNlIHByb3htb3hfbmZ0YWJsZXM6OnR5cGVzOjp7CiB9OwogdXNlIHByb3ht
b3hfbmZ0YWJsZXM6OntFeHByZXNzaW9uLCBTdGF0ZW1lbnR9OwogCit1c2UgcHJveG1veF92ZV9j
b25maWc6Omhvc3Q6OnR5cGVzOjpCcmlkZ2VOYW1lOworCit1c2UgcHJveG1veF92ZV9jb25maWc6
OmZpcmV3YWxsOjpicmlkZ2U6OkNvbmZpZyBhcyBCcmlkZ2VDb25maWc7CiB1c2UgcHJveG1veF92
ZV9jb25maWc6OmZpcmV3YWxsOjpjdF9oZWxwZXI6OmdldF9jdGhlbHBlcjsKIHVzZSBwcm94bW94
X3ZlX2NvbmZpZzo6ZmlyZXdhbGw6Omd1ZXN0OjpDb25maWcgYXMgR3Vlc3RDb25maWc7CiB1c2Ug
cHJveG1veF92ZV9jb25maWc6OmZpcmV3YWxsOjpob3N0OjpDb25maWcgYXMgSG9zdENvbmZpZzsK
QEAgLTExMiw2ICsxMTUsMTQgQEAgaW1wbCBGaXJld2FsbCB7CiAgICAgICAgIENoYWluUGFydDo6
bmV3KFNlbGY6Omhvc3RfdGFibGUoKSwgImxvZy1zbXVyZnMiKQogICAgIH0KIAorICAgIGZuIGJy
aWRnZV92bWFwKHRhYmxlOiBUYWJsZVBhcnQpIC0+IFNldE5hbWUgeworICAgICAgICBTZXROYW1l
OjpuZXcodGFibGUsICJicmlkZ2UtbWFwIikKKyAgICB9CisKKyAgICBmbiBicmlkZ2VfY2hhaW4o
dGFibGU6IFRhYmxlUGFydCwgYnJpZGdlX25hbWU6ICZCcmlkZ2VOYW1lKSAtPiBDaGFpblBhcnQg
eworICAgICAgICBDaGFpblBhcnQ6Om5ldyh0YWJsZSwgZm9ybWF0ISgiYnJpZGdlLXticmlkZ2Vf
bmFtZX0iKSkKKyAgICB9CisKICAgICBmbiBkZWZhdWx0X2xvZ19saW1pdCgmc2VsZikgLT4gT3B0
aW9uPExvZ1JhdGVMaW1pdD4gewogICAgICAgICBzZWxmLmNvbmZpZy5jbHVzdGVyKCkubG9nX3Jh
dGVsaW1pdCgpCiAgICAgfQpAQCAtMTIwLDE0ICsxMzEsMTggQEAgaW1wbCBGaXJld2FsbCB7CiAg
ICAgICAgIGNvbW1hbmRzLmFwcGVuZCgmbXV0IHZlYyFbCiAgICAgICAgICAgICBGbHVzaDo6Y2hh
aW4oU2VsZjo6Y2x1c3Rlcl9jaGFpbihEaXJlY3Rpb246OkluKSksCiAgICAgICAgICAgICBGbHVz
aDo6Y2hhaW4oU2VsZjo6Y2x1c3Rlcl9jaGFpbihEaXJlY3Rpb246Ok91dCkpLAorICAgICAgICAg
ICAgRmx1c2g6OmNoYWluKFNlbGY6OmNsdXN0ZXJfY2hhaW4oRGlyZWN0aW9uOjpGb3J3YXJkKSks
CiAgICAgICAgICAgICBBZGQ6OmNoYWluKFNlbGY6Omhvc3RfY2hhaW4oRGlyZWN0aW9uOjpJbikp
LAogICAgICAgICAgICAgRmx1c2g6OmNoYWluKFNlbGY6Omhvc3RfY2hhaW4oRGlyZWN0aW9uOjpJ
bikpLAogICAgICAgICAgICAgRmx1c2g6OmNoYWluKFNlbGY6Omhvc3Rfb3B0aW9uX2NoYWluKERp
cmVjdGlvbjo6SW4pKSwKICAgICAgICAgICAgIEFkZDo6Y2hhaW4oU2VsZjo6aG9zdF9jaGFpbihE
aXJlY3Rpb246Ok91dCkpLAogICAgICAgICAgICAgRmx1c2g6OmNoYWluKFNlbGY6Omhvc3RfY2hh
aW4oRGlyZWN0aW9uOjpPdXQpKSwKICAgICAgICAgICAgIEZsdXNoOjpjaGFpbihTZWxmOjpob3N0
X29wdGlvbl9jaGFpbihEaXJlY3Rpb246Ok91dCkpLAorICAgICAgICAgICAgRmx1c2g6OmNoYWlu
KFNlbGY6Omhvc3RfY2hhaW4oRGlyZWN0aW9uOjpGb3J3YXJkKSksCiAgICAgICAgICAgICBGbHVz
aDo6bWFwKFNlbGY6Omd1ZXN0X3ZtYXAoRGlyZWN0aW9uOjpJbikpLAogICAgICAgICAgICAgRmx1
c2g6Om1hcChTZWxmOjpndWVzdF92bWFwKERpcmVjdGlvbjo6T3V0KSksCisgICAgICAgICAgICBG
bHVzaDo6bWFwKFNlbGY6OmJyaWRnZV92bWFwKFNlbGY6Omd1ZXN0X3RhYmxlKCkpKSwKKyAgICAg
ICAgICAgIEZsdXNoOjptYXAoU2VsZjo6YnJpZGdlX3ZtYXAoU2VsZjo6aG9zdF90YWJsZSgpKSks
CiAgICAgICAgICAgICBGbHVzaDo6Y2hhaW4oU2VsZjo6aG9zdF9jb25udHJhY2tfY2hhaW4oKSks
CiAgICAgICAgICAgICBGbHVzaDo6Y2hhaW4oU2VsZjo6c3luZmxvb2RfbGltaXRfY2hhaW4oKSks
CiAgICAgICAgICAgICBGbHVzaDo6Y2hhaW4oU2VsZjo6bG9nX2ludmFsaWRfdGNwX2NoYWluKCkp
LApAQCAtMTQ0LDggKzE1OSw4IEBAIGltcGwgRmlyZXdhbGwgewogICAgICAgICB9CiAgICAgICAg
ICovCiAKLSAgICAgICAgLy8gd2UgbmVlZCB0byByZW1vdmUgZ3Vlc3QgY2hhaW5zIGJlZm9yZSBn
cm91cCBjaGFpbnMKLSAgICAgICAgZm9yIHByZWZpeCBpbiBbImd1ZXN0LSIsICJncm91cC0iXSB7
CisgICAgICAgIC8vIHdlIG5lZWQgdG8gcmVtb3ZlIGd1ZXN0ICYgYnJpZGdlIGNoYWlucyBiZWZv
cmUgZ3JvdXAgY2hhaW5zCisgICAgICAgIGZvciBwcmVmaXggaW4gWyJndWVzdC0iLCAiYnJpZGdl
LSIsICJncm91cC0iXSB7CiAgICAgICAgICAgICBmb3IgKG5hbWUsIGNoYWluKSBpbiBzZWxmLmNv
bmZpZy5uZnRfY2hhaW5zKCkgewogICAgICAgICAgICAgICAgIGlmIG5hbWUuc3RhcnRzX3dpdGgo
cHJlZml4KSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzLnB1c2goRGVsZXRlOjpjaGFp
bihjaGFpbi5jbG9uZSgpKSkKQEAgLTI0NiwxMCArMjYxLDE4IEBAIGltcGwgRmlyZXdhbGwgewog
ICAgICAgICAgICAgICAgICAgICBuYW1lLAogICAgICAgICAgICAgICAgICAgICBEaXJlY3Rpb246
Ok91dCwKICAgICAgICAgICAgICAgICApPzsKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9n
cm91cF9jaGFpbigKKyAgICAgICAgICAgICAgICAgICAgJm11dCBjb21tYW5kcywKKyAgICAgICAg
ICAgICAgICAgICAgJmNsdXN0ZXJfaG9zdF90YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgZ3Jv
dXAsCisgICAgICAgICAgICAgICAgICAgIG5hbWUsCisgICAgICAgICAgICAgICAgICAgIERpcmVj
dGlvbjo6Rm9yd2FyZCwKKyAgICAgICAgICAgICAgICApPzsKICAgICAgICAgICAgIH0KIAogICAg
ICAgICAgICAgc2VsZi5jcmVhdGVfY2x1c3Rlcl9ydWxlcygmbXV0IGNvbW1hbmRzLCBEaXJlY3Rp
b246OkluKT87CiAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9jbHVzdGVyX3J1bGVzKCZtdXQgY29t
bWFuZHMsIERpcmVjdGlvbjo6T3V0KT87CisgICAgICAgICAgICBzZWxmLmNyZWF0ZV9jbHVzdGVy
X3J1bGVzKCZtdXQgY29tbWFuZHMsIERpcmVjdGlvbjo6Rm9yd2FyZCk/OwogCiAgICAgICAgICAg
ICBsb2c6OmRlYnVnISgiR2VuZXJhdGluZyBob3N0IGZpcmV3YWxsIGNvbmZpZyIpOwogCkBAIC0y
NTksNiArMjgyLDcgQEAgaW1wbCBGaXJld2FsbCB7CiAKICAgICAgICAgICAgIHNlbGYuY3JlYXRl
X2hvc3RfcnVsZXMoJm11dCBjb21tYW5kcywgRGlyZWN0aW9uOjpJbik/OwogICAgICAgICAgICAg
c2VsZi5jcmVhdGVfaG9zdF9ydWxlcygmbXV0IGNvbW1hbmRzLCBEaXJlY3Rpb246Ok91dCk/Owor
ICAgICAgICAgICAgc2VsZi5jcmVhdGVfaG9zdF9ydWxlcygmbXV0IGNvbW1hbmRzLCBEaXJlY3Rp
b246OkZvcndhcmQpPzsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGNvbW1hbmRzLnB1
c2goRGVsZXRlOjp0YWJsZShUYWJsZU5hbWU6OmZyb20oU2VsZjo6Y2x1c3Rlcl90YWJsZSgpKSkp
OwogICAgICAgICB9CkBAIC0yNzAsNyArMjk0LDE0IEBAIGltcGwgRmlyZXdhbGwgewogICAgICAg
ICAgICAgLmZpbHRlcih8KF8sIGNvbmZpZyl8IGNvbmZpZy5pc19lbmFibGVkKCkpCiAgICAgICAg
ICAgICAuY29sbGVjdCgpOwogCi0gICAgICAgIGlmICFlbmFibGVkX2d1ZXN0cy5pc19lbXB0eSgp
IHsKKyAgICAgICAgbGV0IGVuYWJsZWRfYnJpZGdlczogQlRyZWVNYXA8JkJyaWRnZU5hbWUsICZC
cmlkZ2VDb25maWc+ID0gc2VsZgorICAgICAgICAgICAgLmNvbmZpZworICAgICAgICAgICAgLmJy
aWRnZXMoKQorICAgICAgICAgICAgLml0ZXIoKQorICAgICAgICAgICAgLmZpbHRlcih8KF8sIGNv
bmZpZyl8IGNvbmZpZy5lbmFibGVkKCkpCisgICAgICAgICAgICAuY29sbGVjdCgpOworCisgICAg
ICAgIGlmICEoZW5hYmxlZF9ndWVzdHMuaXNfZW1wdHkoKSAmJiBlbmFibGVkX2JyaWRnZXMuaXNf
ZW1wdHkoKSkgewogICAgICAgICAgICAgbG9nOjppbmZvISgiY3JlYXRpbmcgZ3Vlc3QgY29uZmln
dXJhdGlvbiIpOwogCiAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9pcHNldHMoCkBAIC0yODMsNiAr
MzE0LDEzIEBAIGltcGwgRmlyZXdhbGwgewogICAgICAgICAgICAgZm9yIChuYW1lLCBncm91cCkg
aW4gc2VsZi5jb25maWcuY2x1c3RlcigpLmdyb3VwcygpIHsKICAgICAgICAgICAgICAgICBzZWxm
LmNyZWF0ZV9ncm91cF9jaGFpbigmbXV0IGNvbW1hbmRzLCAmZ3Vlc3RfdGFibGUsIGdyb3VwLCBu
YW1lLCBEaXJlY3Rpb246OkluKT87CiAgICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVfZ3JvdXBf
Y2hhaW4oJm11dCBjb21tYW5kcywgJmd1ZXN0X3RhYmxlLCBncm91cCwgbmFtZSwgRGlyZWN0aW9u
OjpPdXQpPzsKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9ncm91cF9jaGFpbigKKyAgICAg
ICAgICAgICAgICAgICAgJm11dCBjb21tYW5kcywKKyAgICAgICAgICAgICAgICAgICAgJmd1ZXN0
X3RhYmxlLAorICAgICAgICAgICAgICAgICAgICBncm91cCwKKyAgICAgICAgICAgICAgICAgICAg
bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgRGlyZWN0aW9uOjpGb3J3YXJkLAorICAgICAgICAg
ICAgICAgICk/OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
Y29tbWFuZHMucHVzaChEZWxldGU6OnRhYmxlKFRhYmxlTmFtZTo6ZnJvbShTZWxmOjpndWVzdF90
YWJsZSgpKSkpOwpAQCAtMzAyLDkgKzM0MCw4NCBAQCBpbXBsIEZpcmV3YWxsIHsKICAgICAgICAg
ICAgIHNlbGYuY3JlYXRlX2d1ZXN0X3J1bGVzKCZtdXQgY29tbWFuZHMsICp2bWlkLCBjb25maWcs
IERpcmVjdGlvbjo6T3V0KT87CiAgICAgICAgIH0KIAorICAgICAgICBmb3IgKGJyaWRnZV9uYW1l
LCBicmlkZ2VfY29uZmlnKSBpbiBlbmFibGVkX2JyaWRnZXMgeworICAgICAgICAgICAgc2VsZi5j
cmVhdGVfYnJpZGdlX2NoYWluKCZtdXQgY29tbWFuZHMsIGJyaWRnZV9uYW1lLCBicmlkZ2VfY29u
ZmlnKT87CisgICAgICAgIH0KKwogICAgICAgICBPayhjb21tYW5kcykKICAgICB9CiAKKyAgICBm
biBjcmVhdGVfYnJpZGdlX2NoYWluKAorICAgICAgICAmc2VsZiwKKyAgICAgICAgY29tbWFuZHM6
ICZtdXQgQ29tbWFuZHMsCisgICAgICAgIG5hbWU6ICZCcmlkZ2VOYW1lLAorICAgICAgICBjb25m
aWc6ICZCcmlkZ2VDb25maWcsCisgICAgKSAtPiBSZXN1bHQ8KCksIEVycm9yPiB7CisgICAgICAg
IGZvciB0YWJsZSBpbiBbU2VsZjo6aG9zdF90YWJsZSgpLCBTZWxmOjpndWVzdF90YWJsZSgpXSB7
CisgICAgICAgICAgICBsb2c6OmluZm8hKCJjcmVhdGluZyBicmlkZ2UgY2hhaW4ge25hbWV9IGlu
IHRhYmxlIHt9IiwgdGFibGUudGFibGUoKSk7CisKKyAgICAgICAgICAgIGxldCBjaGFpbiA9IFNl
bGY6OmJyaWRnZV9jaGFpbih0YWJsZS5jbG9uZSgpLCBuYW1lKTsKKworICAgICAgICAgICAgY29t
bWFuZHMuYXBwZW5kKCZtdXQgdmVjIVsKKyAgICAgICAgICAgICAgICBBZGQ6OmNoYWluKGNoYWlu
LmNsb25lKCkpLAorICAgICAgICAgICAgICAgIEZsdXNoOjpjaGFpbihjaGFpbi5jbG9uZSgpKSwK
KyAgICAgICAgICAgICAgICBBZGQ6OnJ1bGUoQWRkUnVsZTo6ZnJvbV9zdGF0ZW1lbnQoCisgICAg
ICAgICAgICAgICAgICAgIGNoYWluLmNsb25lKCksCisgICAgICAgICAgICAgICAgICAgIFN0YXRl
bWVudDo6anVtcCgiYmVmb3JlLWJyaWRnZSIpLAorICAgICAgICAgICAgICAgICkpLAorICAgICAg
ICAgICAgXSk7CisKKyAgICAgICAgICAgIGxldCBlbnYgPSBOZnRSdWxlRW52IHsKKyAgICAgICAg
ICAgICAgICBjaGFpbjogY2hhaW4uY2xvbmUoKSwKKyAgICAgICAgICAgICAgICBkaXJlY3Rpb246
IERpcmVjdGlvbjo6Rm9yd2FyZCwKKyAgICAgICAgICAgICAgICBmaXJld2FsbF9jb25maWc6ICZz
ZWxmLmNvbmZpZywKKyAgICAgICAgICAgICAgICB2bWlkOiBOb25lLAorICAgICAgICAgICAgfTsK
KworICAgICAgICAgICAgZm9yIGNvbmZpZ19ydWxlIGluIGNvbmZpZy5ydWxlcygpIHsKKyAgICAg
ICAgICAgICAgICBmb3IgcnVsZSBpbiBOZnRSdWxlOjpmcm9tX2NvbmZpZ19ydWxlKGNvbmZpZ19y
dWxlLCAmZW52KT8geworICAgICAgICAgICAgICAgICAgICBjb21tYW5kcy5wdXNoKEFkZDo6cnVs
ZShydWxlLmludG9fYWRkX3J1bGUoY2hhaW4uY2xvbmUoKSkpKTsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGxldCBkZWZhdWx0X3BvbGljeSA9IGNvbmZp
Zy5wb2xpY3lfZm9yd2FyZCgpOworCisgICAgICAgICAgICBzZWxmLmNyZWF0ZV9sb2dfcnVsZSgK
KyAgICAgICAgICAgICAgICBjb21tYW5kcywKKyAgICAgICAgICAgICAgICBjb25maWcubG9nX2xl
dmVsX2ZvcndhcmQoKSwKKyAgICAgICAgICAgICAgICBjaGFpbi5jbG9uZSgpLAorICAgICAgICAg
ICAgICAgIGRlZmF1bHRfcG9saWN5LAorICAgICAgICAgICAgICAgIE5vbmUsCisgICAgICAgICAg
ICApPzsKKworICAgICAgICAgICAgY29tbWFuZHMucHVzaChBZGQ6OnJ1bGUoQWRkUnVsZTo6ZnJv
bV9zdGF0ZW1lbnQoCisgICAgICAgICAgICAgICAgY2hhaW4uY2xvbmUoKSwKKyAgICAgICAgICAg
ICAgICBkZWZhdWx0X3BvbGljeSwKKyAgICAgICAgICAgICkpKTsKKworICAgICAgICAgICAgbGV0
IGtleSA9IGlmIHRhYmxlID09IFNlbGY6Omhvc3RfdGFibGUoKSB7CisgICAgICAgICAgICAgICAg
bmFtZS5pbnRvKCkKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgRXhwcmVz
c2lvbjo6Y29uY2F0KFtuYW1lLmludG8oKSwgbmFtZS5pbnRvKCldKQorICAgICAgICAgICAgfTsK
KworICAgICAgICAgICAgbGV0IG1hcF9lbGVtZW50ID0gQWRkRWxlbWVudDo6bWFwX2Zyb21fZXhw
cmVzc2lvbnMoCisgICAgICAgICAgICAgICAgU2VsZjo6YnJpZGdlX3ZtYXAodGFibGUpLAorICAg
ICAgICAgICAgICAgIFsoCisgICAgICAgICAgICAgICAgICAgIGtleSwKKyAgICAgICAgICAgICAg
ICAgICAgTWFwVmFsdWU6OmZyb20oVmVyZGljdDo6SnVtcCB7CisgICAgICAgICAgICAgICAgICAg
ICAgICB0YXJnZXQ6IGNoYWluLm5hbWUoKS50b19zdHJpbmcoKSwKKyAgICAgICAgICAgICAgICAg
ICAgfSksCisgICAgICAgICAgICAgICAgKV0KKyAgICAgICAgICAgICAgICAudG9fdmVjKCksCisg
ICAgICAgICAgICApOworCisgICAgICAgICAgICBjb21tYW5kcy5wdXNoKEFkZDo6ZWxlbWVudCht
YXBfZWxlbWVudCkpOworICAgICAgICB9CisKKyAgICAgICAgT2soKCkpCisgICAgfQorCiAgICAg
Zm4gaGFuZGxlX2hvc3Rfb3B0aW9ucygmc2VsZiwgY29tbWFuZHM6ICZtdXQgQ29tbWFuZHMpIC0+
IFJlc3VsdDwoKSwgRXJyb3I+IHsKICAgICAgICAgbG9nOjppbmZvISgic2V0dGluZyBob3N0IG9w
dGlvbnMiKTsKIApAQCAtNzgxLDYgKzg5NCw3IEBAIGltcGwgRmlyZXdhbGwgewogICAgICAgICBs
ZXQgcHJlX2NoYWluID0gbWF0Y2ggZGlyZWN0aW9uIHsKICAgICAgICAgICAgIERpcmVjdGlvbjo6
SW4gPT4gInByZS12bS1pbiIsCiAgICAgICAgICAgICBEaXJlY3Rpb246Ok91dCA9PiAicHJlLXZt
LW91dCIsCisgICAgICAgICAgICBEaXJlY3Rpb246OkZvcndhcmQgPT4gYmFpbCEoImNhbm5vdCBj
cmVhdGUgZ3Vlc3RfY2hhaW4gaW4gZGlyZWN0aW9uIGZvcndhcmQiKSwKICAgICAgICAgfTsKIAog
ICAgICAgICBjb21tYW5kcy5hcHBlbmQoJm11dCB2ZWMhWwpkaWZmIC0tZ2l0IGEvcHJveG1veC1m
aXJld2FsbC9zcmMvcnVsZS5ycyBiL3Byb3htb3gtZmlyZXdhbGwvc3JjL3J1bGUucnMKaW5kZXgg
MDJmOTY0ZS4uM2I5NDdmMCAxMDA2NDQKLS0tIGEvcHJveG1veC1maXJld2FsbC9zcmMvcnVsZS5y
cworKysgYi9wcm94bW94LWZpcmV3YWxsL3NyYy9ydWxlLnJzCkBAIC0xLDYgKzEsNiBAQAogdXNl
IHN0ZDo6b3BzOjp7RGVyZWYsIERlcmVmTXV0fTsKIAotdXNlIGFueWhvdzo6e2Zvcm1hdF9lcnIs
IEVycm9yfTsKK3VzZSBhbnlob3c6OntiYWlsLCBmb3JtYXRfZXJyLCBFcnJvcn07CiB1c2UgcHJv
eG1veF9uZnRhYmxlczo6ewogICAgIGV4cHJlc3Npb246OntDdCwgSXBGYW1pbHksIE1ldGEsIFBh
eWxvYWQsIFByZWZpeH0sCiAgICAgc3RhdGVtZW50Ojp7TG9nLCBMb2dMZXZlbCwgTWF0Y2gsIE9w
ZXJhdG9yfSwKQEAgLTE3OSw2ICsxNzksNyBAQCBmbiBoYW5kbGVfaWZhY2UocnVsZXM6ICZtdXQg
W05mdFJ1bGVdLCBlbnY6ICZOZnRSdWxlRW52LCBuYW1lOiAmc3RyKSAtPiBSZXN1bHQ8KAogICAg
ICAgICAoU29tZShfKSwgRGlyZWN0aW9uOjpPdXQpID0+ICJpaWZuYW1lIiwKICAgICAgICAgKE5v
bmUsIERpcmVjdGlvbjo6SW4pID0+ICJpaWZuYW1lIiwKICAgICAgICAgKE5vbmUsIERpcmVjdGlv
bjo6T3V0KSA9PiAib2lmbmFtZSIsCisgICAgICAgIChfLCBEaXJlY3Rpb246OkZvcndhcmQpID0+
IGJhaWwhKCJjYW5ub3QgZGVmaW5lIGludGVyZmFjZXMgZm9yIGZvcndhcmQgZGlyZWN0aW9uIiks
CiAgICAgfTsKIAogICAgIGxldCBpZmFjZV9uYW1lID0gZW52LmlmYWNlX25hbWUobmFtZSk7CkBA
IC02OTMsOCArNjk0LDggQEAgaW1wbCBUb05mdFJ1bGVzIGZvciBJcGZpbHRlcjwnXz4gewogICAg
ICAgICAgICAgICAgICAgICBydWxlcy5wdXNoKGJhc2VfcnVsZSk7CiAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgfQorICAgICAgICAgICAgRGlyZWN0aW9uOjpGb3J3YXJkID0+IGJhaWwh
KCJjYW5ub3QgZ2VuZXJhdGUgSVAgZmlsdGVyIGZvciBkaXJlY3Rpb24gZm9yd2FyZCIpLAogICAg
ICAgICB9Ci0KICAgICAgICAgT2soKCkpCiAgICAgfQogfQpkaWZmIC0tZ2l0IGEvcHJveG1veC1m
aXJld2FsbC90ZXN0cy9zbmFwc2hvdHMvaW50ZWdyYXRpb25fdGVzdHNfX2ZpcmV3YWxsLnNuYXAg
Yi9wcm94bW94LWZpcmV3YWxsL3Rlc3RzL3NuYXBzaG90cy9pbnRlZ3JhdGlvbl90ZXN0c19fZmly
ZXdhbGwuc25hcAppbmRleCBlMWI1OTljLi4wNmI2YmViIDEwMDY0NAotLS0gYS9wcm94bW94LWZp
cmV3YWxsL3Rlc3RzL3NuYXBzaG90cy9pbnRlZ3JhdGlvbl90ZXN0c19fZmlyZXdhbGwuc25hcAor
KysgYi9wcm94bW94LWZpcmV3YWxsL3Rlc3RzL3NuYXBzaG90cy9pbnRlZ3JhdGlvbl90ZXN0c19f
ZmlyZXdhbGwuc25hcApAQCAtMjIsNiArMjIsMTUgQEAgZXhwcmVzc2lvbjogImZpcmV3YWxsLmZ1
bGxfaG9zdF9mdygpLmV4cGVjdChcImZpcmV3YWxsIGNhbiBiZSBnZW5lcmF0ZWRcIikiCiAgICAg
ICAgIH0KICAgICAgIH0KICAgICB9LAorICAgIHsKKyAgICAgICJmbHVzaCI6IHsKKyAgICAgICAg
ImNoYWluIjogeworICAgICAgICAgICJmYW1pbHkiOiAiaW5ldCIsCisgICAgICAgICAgInRhYmxl
IjogInByb3htb3gtZmlyZXdhbGwiLAorICAgICAgICAgICJuYW1lIjogImNsdXN0ZXItZm9yd2Fy
ZCIKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCiAgICAgewogICAgICAgImFkZCI6IHsKICAg
ICAgICAgImNoYWluIjogewpAQCAtNzYsNiArODUsMTUgQEAgZXhwcmVzc2lvbjogImZpcmV3YWxs
LmZ1bGxfaG9zdF9mdygpLmV4cGVjdChcImZpcmV3YWxsIGNhbiBiZSBnZW5lcmF0ZWRcIikiCiAg
ICAgICAgIH0KICAgICAgIH0KICAgICB9LAorICAgIHsKKyAgICAgICJmbHVzaCI6IHsKKyAgICAg
ICAgImNoYWluIjogeworICAgICAgICAgICJmYW1pbHkiOiAiaW5ldCIsCisgICAgICAgICAgInRh
YmxlIjogInByb3htb3gtZmlyZXdhbGwiLAorICAgICAgICAgICJuYW1lIjogImhvc3QtZm9yd2Fy
ZCIKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCiAgICAgewogICAgICAgImZsdXNoIjogewog
ICAgICAgICAibWFwIjogewpAQCAtOTQsNiArMTEyLDI0IEBAIGV4cHJlc3Npb246ICJmaXJld2Fs
bC5mdWxsX2hvc3RfZncoKS5leHBlY3QoXCJmaXJld2FsbCBjYW4gYmUgZ2VuZXJhdGVkXCIpIgog
ICAgICAgICB9CiAgICAgICB9CiAgICAgfSwKKyAgICB7CisgICAgICAiZmx1c2giOiB7CisgICAg
ICAgICJtYXAiOiB7CisgICAgICAgICAgImZhbWlseSI6ICJicmlkZ2UiLAorICAgICAgICAgICJ0
YWJsZSI6ICJwcm94bW94LWZpcmV3YWxsLWd1ZXN0cyIsCisgICAgICAgICAgIm5hbWUiOiAiYnJp
ZGdlLW1hcCIKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgeworICAgICAgImZsdXNo
IjogeworICAgICAgICAibWFwIjogeworICAgICAgICAgICJmYW1pbHkiOiAiaW5ldCIsCisgICAg
ICAgICAgInRhYmxlIjogInByb3htb3gtZmlyZXdhbGwiLAorICAgICAgICAgICJuYW1lIjogImJy
aWRnZS1tYXAiCisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9LAogICAgIHsKICAgICAgICJmbHVz
aCI6IHsKICAgICAgICAgImNoYWluIjogewpAQCAtMTc4NCw2ICsxODIwLDI0IEBAIGV4cHJlc3Np
b246ICJmaXJld2FsbC5mdWxsX2hvc3RfZncoKS5leHBlY3QoXCJmaXJld2FsbCBjYW4gYmUgZ2Vu
ZXJhdGVkXCIpIgogICAgICAgICB9CiAgICAgICB9CiAgICAgfSwKKyAgICB7CisgICAgICAiYWRk
IjogeworICAgICAgICAiY2hhaW4iOiB7CisgICAgICAgICAgImZhbWlseSI6ICJpbmV0IiwKKyAg
ICAgICAgICAidGFibGUiOiAicHJveG1veC1maXJld2FsbCIsCisgICAgICAgICAgIm5hbWUiOiAi
Z3JvdXAtbmV0d29yazEtZm9yd2FyZCIKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAg
eworICAgICAgImZsdXNoIjogeworICAgICAgICAiY2hhaW4iOiB7CisgICAgICAgICAgImZhbWls
eSI6ICJpbmV0IiwKKyAgICAgICAgICAidGFibGUiOiAicHJveG1veC1maXJld2FsbCIsCisgICAg
ICAgICAgIm5hbWUiOiAiZ3JvdXAtbmV0d29yazEtZm9yd2FyZCIKKyAgICAgICAgfQorICAgICAg
fQorICAgIH0sCiAgICAgewogICAgICAgImFkZCI6IHsKICAgICAgICAgInJ1bGUiOiB7CkBAIC0x
ODc0LDYgKzE5MjgsMjAgQEAgZXhwcmVzc2lvbjogImZpcmV3YWxsLmZ1bGxfaG9zdF9mdygpLmV4
cGVjdChcImZpcmV3YWxsIGNhbiBiZSBnZW5lcmF0ZWRcIikiCiAgICAgICAgIH0KICAgICAgIH0K
ICAgICB9LAorICAgIHsKKyAgICAgICJhZGQiOiB7CisgICAgICAgICJydWxlIjogeworICAgICAg
ICAgICJmYW1pbHkiOiAiaW5ldCIsCisgICAgICAgICAgInRhYmxlIjogInByb3htb3gtZmlyZXdh
bGwiLAorICAgICAgICAgICJjaGFpbiI6ICJjbHVzdGVyLWZvcndhcmQiLAorICAgICAgICAgICJl
eHByIjogWworICAgICAgICAgICAgeworICAgICAgICAgICAgICAiYWNjZXB0IjogbnVsbAorICAg
ICAgICAgICAgfQorICAgICAgICAgIF0KKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCiAgICAg
ewogICAgICAgImFkZCI6IHsKICAgICAgICAgImN0IGhlbHBlciI6IHsKQEAgLTM4MTMsNiArMzg4
MSwyNCBAQCBleHByZXNzaW9uOiAiZmlyZXdhbGwuZnVsbF9ob3N0X2Z3KCkuZXhwZWN0KFwiZmly
ZXdhbGwgY2FuIGJlIGdlbmVyYXRlZFwiKSIKICAgICAgICAgfQogICAgICAgfQogICAgIH0sCisg
ICAgeworICAgICAgImFkZCI6IHsKKyAgICAgICAgImNoYWluIjogeworICAgICAgICAgICJmYW1p
bHkiOiAiYnJpZGdlIiwKKyAgICAgICAgICAidGFibGUiOiAicHJveG1veC1maXJld2FsbC1ndWVz
dHMiLAorICAgICAgICAgICJuYW1lIjogImdyb3VwLW5ldHdvcmsxLWZvcndhcmQiCisgICAgICAg
IH0KKyAgICAgIH0KKyAgICB9LAorICAgIHsKKyAgICAgICJmbHVzaCI6IHsKKyAgICAgICAgImNo
YWluIjogeworICAgICAgICAgICJmYW1pbHkiOiAiYnJpZGdlIiwKKyAgICAgICAgICAidGFibGUi
OiAicHJveG1veC1maXJld2FsbC1ndWVzdHMiLAorICAgICAgICAgICJuYW1lIjogImdyb3VwLW5l
dHdvcmsxLWZvcndhcmQiCisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9LAogICAgIHsKICAgICAg
ICJhZGQiOiB7CiAgICAgICAgICJjaGFpbiI6IHsKZGlmZiAtLWdpdCBhL3Byb3htb3gtbmZ0YWJs
ZXMvc3JjL2V4cHJlc3Npb24ucnMgYi9wcm94bW94LW5mdGFibGVzL3NyYy9leHByZXNzaW9uLnJz
CmluZGV4IGU1NmExNWMuLmU5ZWY5NGYgMTAwNjQ0Ci0tLSBhL3Byb3htb3gtbmZ0YWJsZXMvc3Jj
L2V4cHJlc3Npb24ucnMKKysrIGIvcHJveG1veC1uZnRhYmxlcy9zcmMvZXhwcmVzc2lvbi5ycwpA
QCAtMSw1ICsxLDYgQEAKIHVzZSBjcmF0ZTo6dHlwZXM6OntFbGVtQ29uZmlnLCBWZXJkaWN0fTsK
IHVzZSBwcm94bW94X3ZlX2NvbmZpZzo6ZmlyZXdhbGw6OnR5cGVzOjphZGRyZXNzOjpJcFJhbmdl
OwordXNlIHByb3htb3hfdmVfY29uZmlnOjpob3N0Ojp0eXBlczo6QnJpZGdlTmFtZTsKIHVzZSBz
ZXJkZTo6e0Rlc2VyaWFsaXplLCBTZXJpYWxpemV9OwogdXNlIHN0ZDo6bmV0Ojp7SXBBZGRyLCBJ
cHY0QWRkciwgSXB2NkFkZHJ9OwogCkBAIC0yNTksNiArMjYwLDEzIEBAIGltcGwgRnJvbTwmUG9y
dExpc3Q+IGZvciBFeHByZXNzaW9uIHsKICAgICB9CiB9CiAKKyNbY2ZnKGZlYXR1cmUgPSAiY29u
ZmlnLWV4dCIpXQoraW1wbCBGcm9tPCZCcmlkZ2VOYW1lPiBmb3IgRXhwcmVzc2lvbiB7CisgICAg
Zm4gZnJvbSh2YWx1ZTogJkJyaWRnZU5hbWUpIC0+IFNlbGYgeworICAgICAgICBFeHByZXNzaW9u
OjpTdHJpbmcodmFsdWUubmFtZSgpLnRvX3N0cmluZygpKQorICAgIH0KK30KKwogI1tkZXJpdmUo
Q2xvbmUsIERlYnVnLCBEZXNlcmlhbGl6ZSwgU2VyaWFsaXplKV0KIHB1YiBzdHJ1Y3QgTWV0YSB7
CiAgICAga2V5OiBTdHJpbmcsCmRpZmYgLS1naXQgYS9wcm94bW94LW5mdGFibGVzL3NyYy90eXBl
cy5ycyBiL3Byb3htb3gtbmZ0YWJsZXMvc3JjL3R5cGVzLnJzCmluZGV4IGQ4ZjNiNjIuLjMyMGM3
NTcgMTAwNjQ0Ci0tLSBhL3Byb3htb3gtbmZ0YWJsZXMvc3JjL3R5cGVzLnJzCisrKyBiL3Byb3ht
b3gtbmZ0YWJsZXMvc3JjL3R5cGVzLnJzCkBAIC03NDIsNiArNzQyLDEyIEBAIGltcGwgQWRkRWxl
bWVudCB7CiAgICAgfQogfQogCitpbXBsIEZyb208QWRkTWFwRWxlbWVudD4gZm9yIEFkZEVsZW1l
bnQgeworICAgIGZuIGZyb20odmFsdWU6IEFkZE1hcEVsZW1lbnQpIC0+IFNlbGYgeworICAgICAg
ICBBZGRFbGVtZW50OjpNYXAodmFsdWUpCisgICAgfQorfQorCiBpbXBsIEZyb208QWRkU2V0RWxl
bWVudD4gZm9yIEFkZEVsZW1lbnQgewogICAgIGZuIGZyb20odmFsdWU6IEFkZFNldEVsZW1lbnQp
IC0+IFNlbGYgewogICAgICAgICBBZGRFbGVtZW50OjpTZXQodmFsdWUpCi0tIAoyLjM5LjUKCgpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdmUtZGV2ZWwg
bWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnBy
b3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wdmUtZGV2ZWwK