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 [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id 5EE2F1FF173
	for <inbox@lore.proxmox.com>; Mon, 10 Feb 2025 11:43:34 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 7C17A8528;
	Mon, 10 Feb 2025 11:43:32 +0100 (CET)
Date: Mon, 10 Feb 2025 11:43:25 +0100
From: Fabian =?iso-8859-1?q?Gr=FCnbichler?= <f.gruenbichler@proxmox.com>
To: Thomas Skinner <thomas@atskinner.net>
References: <20241224202429.3072813-1-thomas@atskinner.net>
 <20241224202429.3072813-4-thomas@atskinner.net>
 <1737710597.ns84scjebn.astroid@yuna.none>
 <CALn9RMe8dS2mMUP=3mqA6i4adQ-HvzXtiM_DxE4bORaDn8-D9A@mail.gmail.com>
In-Reply-To: <CALn9RMe8dS2mMUP=3mqA6i4adQ-HvzXtiM_DxE4bORaDn8-D9A@mail.gmail.com>
MIME-Version: 1.0
User-Agent: astroid/0.16.0 (https://github.com/astroidmail/astroid)
Message-Id: <1739183392.ck16962mrs.astroid@yuna.none>
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.046 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
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: Re: [pve-devel] [PATCH access-control v2 1/1] fix #4411: openid:
 add logic for openid groups support
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: Proxmox VE development discussion <pve-devel@lists.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>

T24gRmVicnVhcnkgNiwgMjAyNSA2OjA2IGFtLCBUaG9tYXMgU2tpbm5lciB3cm90ZToKPiBPbiBG
cmksIEphbiAyNCwgMjAyNSBhdCA0OjE44oCvQU0gRmFiaWFuIEdyw7xuYmljaGxlcgo+IDxmLmdy
dWVuYmljaGxlckBwcm94bW94LmNvbT4gd3JvdGU6Cj4+Cj4+IE9uIERlY2VtYmVyIDI0LCAyMDI0
IDk6MjQgcG0sIFRob21hcyBTa2lubmVyIHdyb3RlOgo+PiA+IFNpZ25lZC1vZmYtYnk6IFRob21h
cyBTa2lubmVyIDx0aG9tYXNAYXRza2lubmVyLm5ldD4KPj4gPiAtLS0KPj4gPiAgc3JjL1BWRS9B
UEkyL09wZW5JZC5wbSAgIHwgNjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKwo+PiA+ICBzcmMvUFZFL0FjY2Vzc0NvbnRyb2wucG0gfCAxMyArKysrKy0tLQo+PiA+ICBz
cmMvUFZFL0F1dGgvT3BlbklkLnBtICAgfCAzMCArKysrKysrKysrKysrKysrKysKPj4gPiAgMyBm
aWxlcyBjaGFuZ2VkLCAxMDcgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKPj4gPgo+PiA+
IGRpZmYgLS1naXQgYS9zcmMvUFZFL0FQSTIvT3BlbklkLnBtIGIvc3JjL1BWRS9BUEkyL09wZW5J
ZC5wbQo+PiA+IGluZGV4IDc3NDEwZTYuLjVjZmU1YTEgMTAwNjQ0Cj4+ID4gLS0tIGEvc3JjL1BW
RS9BUEkyL09wZW5JZC5wbQo+PiA+ICsrKyBiL3NyYy9QVkUvQVBJMi9PcGVuSWQucG0KPj4gPiBA
QCAtMTMsNiArMTMsNyBAQCB1c2UgUFZFOjpDbHVzdGVyIHF3KGNmc19yZWFkX2ZpbGUgY2ZzX3dy
aXRlX2ZpbGUpOwo+PiA+ICB1c2UgUFZFOjpBY2Nlc3NDb250cm9sOwo+PiA+ICB1c2UgUFZFOjpK
U09OU2NoZW1hIHF3KGdldF9zdGFuZGFyZF9vcHRpb24pOwo+PiA+ICB1c2UgUFZFOjpBdXRoOjpQ
bHVnaW47Cj4+ID4gK3VzZSBQVkU6OkF1dGg6Ok9wZW5JZDsKPj4gPgo+PiA+ICB1c2UgUFZFOjpS
RVNUSGFuZGxlcjsKPj4gPgo+PiA+IEBAIC0yMjAsNiArMjIxLDczIEBAIF9fUEFDS0FHRV9fLT5y
ZWdpc3Rlcl9tZXRob2QgKHsKPj4gPiAgICAgICAgICAgICAgICRycGNlbnYtPmNoZWNrX3VzZXJf
ZW5hYmxlZCgkdXNlcm5hbWUpOwo+PiA+ICAgICAgICAgICB9Cj4+ID4KPj4gPiArICAgICAgICAg
aWYgKGRlZmluZWQobXkgJGdyb3Vwc19jbGFpbSA9ICRjb25maWctPnsnZ3JvdXBzLWNsYWltJ30p
KSB7Cj4+ID4gKyAgICAgICAgICAgICBpZiAoZGVmaW5lZChteSAkZ3JvdXBzX2xpc3QgPSAkaW5m
by0+eyRncm91cHNfY2xhaW19KSkgewo+PiA+ICsgICAgICAgICAgICAgICAgIGlmIChyZWYoJGdy
b3Vwc19saXN0KSBlcSAnQVJSQVknKSB7Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAgIFBWRTo6
QWNjZXNzQ29udHJvbDo6bG9ja191c2VyX2NvbmZpZyhzdWIgewo+PiA+ICsgICAgICAgICAgICAg
ICAgICAgICAgICAgbXkgJHVzZXJjZmcgPSBjZnNfcmVhZF9maWxlKCJ1c2VyLmNmZyIpOwo+PiA+
ICsKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICMgcmVwbGFjZSBhbnkgaW52YWxpZCBj
aGFyYWN0ZXJzIHdpdGgKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIG15ICRyZXBsYWNl
X2NoYXJhY3RlciA9ICRjb25maWctPnsnZ3JvdXBzLXJlcGxhY2UtY2hhcmFjdGVyJ30gLy8gJ18n
Owo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgbXkgQG9pZGNfZ3JvdXBzX2xpc3QgPSBt
YXAgewo+Pgo+PiBzdHlsZSBuaXQ6IHdlIG1vc3RseSB1c2UgYXJyYXkgcmVmZXJlbmNlcyBpbiBv
dXIgY29kZSwgaS5lLgo+Pgo+PiBteSAkb2lkY19ncm91cF9saXN0ID0gWyBtYXAgLi4uIF07Cj4+
Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJF8gPX4gcy9bXiRQVkU6OkF1dGg6
Ok9wZW5JZDo6Z3JvdXBuYW1lX3JlZ2V4X2NoYXJzXS8kcmVwbGFjZV9jaGFyYWN0ZXIvZ3IKPj4g
PiArICAgICAgICAgICAgICAgICAgICAgICAgIH0gJGdyb3Vwc19saXN0LT5AKjsKPj4gPiArCj4+
ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAjIGxpc3QgZ3JvdXBzIHRoYXQgZXhpc3QgaW4g
cHZlCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICBteSBAZXhpc3RpbmdfZ3JvdXBzX2xp
c3QgPSBrZXlzICV7JHVzZXJjZmctPntncm91cHN9fTsKPj4KPj4gc2FtZSBoZXJlCj4+Cj4+ID4g
Kwo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgbXkgQGdyb3Vwc19pbnRlcnNlY3Q7Cj4+
Cj4+IGFuZCBoZXJlCj4+Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoICRjb25m
aWctPnsnZ3JvdXBzLWF1dG9jcmVhdGUnfSApIHsKPj4gPiArICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAjIHBvcHVsYXRlIGFsbCBncm91cHMgaW4gY2xhaW0KPj4gPiArICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBAZ3JvdXBzX2ludGVyc2VjdCA9IEBvaWRjX2dyb3Vwc19saXN0Owo+
Pgo+PiBhbmQgaGVyZSA7KQo+Pgo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgfQo+PiA+
ICsgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7Cj4+Cj4+IHN0eWxlIG5pdDogdGhlICd9
JyBhbmQgJ2Vsc2Ugeycgc2hvdWxkIGJlIG9uIGEgc2luZ2xlIGxpbmUKPj4KPj4gPiArICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAjIG9ubHkgcG9wdWxhdGUgZ3JvdXBzIHRoYXQgYXJlIGlu
IHRoZSBvaWRjIGxpc3QgYW5kIGV4aXN0IGluIHB2ZQo+PiA+ICsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIEBncm91cHNfaW50ZXJzZWN0ID0gQHtQVkU6OlRvb2xzOjphcnJheV9pbnRlcnNl
Y3QoCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxAb2lkY19ncm91cHNf
bGlzdCwKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXEBleGlzdGluZ19n
cm91cHNfbGlzdCwKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfTsKPj4KPj4g
dGhlbiB0aGlzIHNpbXBseSBiZWNvbWVzCj4+Cj4+ICRncm91cHNfaW50ZXJzZWN0ID0gUFZFOjpU
b29sczo6YXJyYXlfaW50ZXJzZWN0KCRvaWRjX2dyb3Vwc19saXN0LCAkZXhpc3RpbmdfZ3JvdXBz
X2xpc3QpOwo+IAo+IFVuZGVyc3Rvb2QgZm9yIGFsbCB0aGUgYWJvdmUgYW5kIHdpbGwgZml4LiBB
cG9sb2dpZXMgZm9yIG1pc3NpbmcgdGhlbQo+IHdoZW4gdGhleSBhcmUgY2xlYXJseSBpbiB0aGUg
c3R5bGUgZ3VpZGUuIElzIHRoZXJlIGFueSBsaW50aW5nIHNldHVwCj4gdGhhdCB5b3UnZCByZWNv
bW1lbmQgZm9yIG15IGRldiBlbnZpcm9ubWVudCB0aGF0IHdvdWxkIGhlbHAgY2F0Y2gKPiB0aGVz
ZSBmb3IgZnV0dXJlIHBhdGNoZXMgYmVmb3JlIEkgc2VuZCB0aGVtPyBJIGRvbid0IHdhbnQgdG8g
cmVjcmVhdGUKPiB0aGUgd2hlZWwgaWYgdGhlIFByb3htb3ggdGVhbSBhbHJlYWR5IGhhcyBzb21l
dGhpbmcgaW4tcGxhY2UgdGhhdAo+IGNvdWxkIGJlIHNoYXJlZC4KCnRoZXJlJ3MgcGVybGNyaXRp
YyB0aGF0IGNhbiBoZWxwIHdpdGggdGhpcyAoc2VlIGJvdHRvbSBwYXJ0IG9mIHRoZSBwZXJsCnN0
eWxlIGd1aWRlKSwgYnV0IGdpdmVuIHBlcmwncyBuYXR1cmUsIHRoZXJlIGlzbid0IHJlYWxseSBh
IHByb3BlciB0b29sCnRoYXQgcmVhbGx5IGhhbmRsZXMgZXZlcnl0aGluZy4uCgo+IAo+PiBidXQg
c2luY2UgdGhlIGV4aXN0aW5nIGdyb3VwcyBhcmUgYWxyZWFkeSBhIGhhc2gsIHlvdSBjb3VsZCBh
bHNvIGRvIHRoZQo+PiBpbnRlcnNlY3Rpb24gKyBjb252ZXJzaW9uIHRvIGEgaGFzaCBpbiBhIHNp
bmdsZSBnbyBoZXJlIChzZWUgYmVsb3cgZm9yCj4+IHdoeSBhIGhhc2ggaXMgbmljZXIgYW55d2F5
KToKPj4KPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkY29uZmlnLT57J2dyb3Vw
cy1hdXRvY3JlYXRlJ30pIHsKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHBv
cHVsYXRlIGFsbCBncm91cHMgaW4gY2xhaW0KPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAkZ3JvdXBzX2ludGVyc2VjdCA9IHsgbWFwIHsgJF8gPT4gMSB9ICRvaWRjX2dyb3Vwc19s
aXN0LT5AKiB9Owo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKPj4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHBvcHVsYXRlIG9ubHkgZXhpc3RpbmcgZ3Jv
dXBzCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIG15ICRncm91cCAoJG9p
ZGNfZ3JvdXBzX2xpc3QtPkAqKSB7Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICRncm91cHNfaW50ZXJzZWN0LT57JGdyb3VwfSA9IDEgaWYgJHVzZXJjZmctPntncm91cHN9
LT57JGdyb3VwfTsKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Cj4+ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9Cj4+Cj4+Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAg
ICAgICB9Cj4+ID4gKwo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIyBpZiBncm91cHMg
c2hvdWxkIGJlIG92ZXJ3cml0dGVuLCBmaW5kIGFuZCBkZWxldGUgdGhlIG9uZXMgdG8gcmVtb3Zl
Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoICRjb25maWctPnsnZ3JvdXBzLW92
ZXJ3cml0ZSd9ICkgewo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZ2V0IHRo
ZSBncm91cHMgdGhhdCBuZWVkIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgdXNlcgo+PiA+ICsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG15ICVncm91cHNfcmVtb3ZlX3VzZXI7Cj4+ID4gKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyb3Vwc19yZW1vdmVfdXNlcnsgJF8gfSA9IHVu
ZGVmCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBrZXlzICV7JHVz
ZXJjZmctPnt1c2Vyc30tPnskdXNlcm5hbWV9LT57Z3JvdXBzfX07Cj4+ID4gKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZGVsZXRlICRncm91cHNfcmVtb3ZlX3VzZXJ7ICRfIH0gZm9yIEBn
cm91cHNfaW50ZXJzZWN0Owo+PiA+ICsKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAjIGVuc3VyZSB1c2VyIGlzIG5vdCBhIG1lbWJlciBvZiB0aGVzZSBncm91cHMKPj4gPiArICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBQVkU6OkFjY2Vzc0NvbnRyb2w6OmRlbGV0ZV91c2Vy
X2dyb3VwX3NpbmdsZSgKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHVz
ZXJuYW1lLAo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdXNlcmNmZywK
Pj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJF8sCj4+ID4gKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKSBmb3Iga2V5cyAlZ3JvdXBzX3JlbW92ZV91c2VyOwo+PiA+
ICsgICAgICAgICAgICAgICAgICAgICAgICAgfQo+PiA+ICsKPj4gPiArICAgICAgICAgICAgICAg
ICAgICAgICAgICMgZ2V0IHRoZSBncm91cHMgdGhhdCBuZWVkIHRvIGJlIGFkZGVkIHRvIHRoZSB1
c2VyCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICBteSAlZ3JvdXBzX2FkZF91c2VyOwo+
PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgJGdyb3Vwc19hZGRfdXNlcnsgJF8gfSA9IHVu
ZGVmIGZvciBAZ3JvdXBzX2ludGVyc2VjdDsKPj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg
IGRlbGV0ZSAkZ3JvdXBzX2FkZF91c2VyeyAkXyB9Cj4+ID4gKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZm9yIGtleXMgJXskdXNlcmNmZy0+e3VzZXJzfS0+eyR1c2VybmFtZX0tPntncm91
cHN9fTsKPj4gPiArCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAjIGVuc3VyZSB1c2Vy
IGlzIGEgbWVtYmVyIG9mIHRoZXNlIGdyb3Vwcwo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAg
ICAgUFZFOjpBY2Nlc3NDb250cm9sOjphZGRfdXNlcl9ncm91cCgKPj4gPiArICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAkdXNlcm5hbWUsCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJHVzZXJjZmcsCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJF8KPj4g
PiArICAgICAgICAgICAgICAgICAgICAgICAgICkgZm9yIGtleXMgJWdyb3Vwc19hZGRfdXNlcjsK
Pj4gPiArCj4+Cj4+Cj4+IHdlIGRvbid0IGRvIHBvc3QtZm9yIGVpdGhlciA7KQo+Pgo+PiB5b3Ug
Y2FuIGp1c3QgZG8KPj4KPj4gIyBjb252ZXJ0cyBncm91cCBpbnRlcnNlY3Rpb24gdG8gaGFzaCAo
YnV0IHNlZSBhYm92ZSA7KSkKPj4gbXkgJGdyb3Vwc19pbnRlcnNlY3RfaGFzaCA9IHsgbWFwIHsg
JF8gPT4gMSB9ICRncm91cHNfaW50ZXJzZWN0LT5AIH07Cj4+Cj4+IGlmICgkY29uZmlnLT57J2dy
b3Vwcy1vdmVyd3JpdGUnfSkgewo+PiAgICAgbXkgJHVzZXJfZ3JvdXBzID0gJHVzZXJjZmctPnt1
c2Vyc30tPnskdXNlcm5hbWV9LT57Z3JvdXBzfTsKPj4gICAgIGZvciBteSAkZ3JvdXAgKGtleXMg
JHVzZXJfZ3JvdXBzLT4lKikgewo+PiAgICAgICAgIGRlbGV0ZSAkdXNlcl9ncm91cHMtPnskZ3Jv
dXB9IGlmICFncm91cHNfaW50ZXJzZWN0X2hhc2gtPnskZ3JvdXB9Owo+PiAgICAgfQo+PiB9Cj4+
Cj4+IGFuZCBzaW1pbGFybHkgZm9yIHRoZSBhZGRpdGlvbiwgYWx0aG91Z2ggd2l0aCBhZGRpdGlv
biwgeW91IGNvdWxkIGV2ZW4KPj4gZG8gaXQgdW5jb25kaXRpb25hbGx5IHNpbmNlIGl0IGlzIGJv
dGggY2hlYXAgYW5kIGlkZW1wb3RlbnQgKGl0IGp1c3QKPj4gc2V0cyB0d28gYm9vbGVhbnMgaW4g
dGhlICR1c2VyY2ZnIGhhc2gpLgo+Pgo+PiBvciB5b3UgY291bGQgbWFrZSBpdCBhIGJpdCBlYXNp
ZXIsIGFuZCBqdXN0IGRlbGV0ZSBhbGwgZ3JvdXBzIGFuZCB0aGVuCj4+IGFkZCBhbGwgdGhlIGdy
b3VwcyBpbiB0aGUgaW50ZXJzZWN0aW5nIHNldCwgd2hpY2ggd291bGQgYmUgc2ltaWxhciB0bwo+
PiBob3cgd2UgZG8gaXQgd2hlbiBkaXJlY3RseSBvdmVyd3JpdGluZyBhIHVzZXIncyBncm91cCB2
aWEgdGhlIEFQSS9wdmV1bToKPj4KPj4gaHR0cHM6Ly9naXQucHJveG1veC5jb20vP3A9cHZlLWFj
Y2Vzcy1jb250cm9sLmdpdDthPWJsb2I7Zj1zcmMvUFZFL0FQSTIvVXNlci5wbTtoPTUzNWU1OGUw
YjNkYmQ0YzhkOGM4ODJiNzg0NTE3MzQ4OTgwM2Q4ZDA7aGI9SEVBRCNsNDE3Cj4+Cj4+IHRoZSBj
aGFuZ2VzIHdpbGwgb25seSBwZXJzaXN0ZWQgb24tZGlzayBvbmNlIHlvdSBoaXQgdGhlIGNmc193
cml0ZSBpbiB0aGUKPj4gbmV4dCBsaW5lLCBzbyB0aGlzIHNob3VsZG4ndCBiZSBhbiBpc3N1ZS4K
PiAKPiBUaGUgcmVhc29uIHRoYXQgSSBtYWRlIGFuIGFkanVzdG1lbnQgdG8gdGhlIGJlaGF2aW9y
IHdhcyBwdXJlbHkgZm9yCj4gZnV0dXJlIGF1ZGl0aW5nIChvbmx5IHJlcG9ydCBncm91cHMgYWRk
ZWQvcmVtb3ZlZCksIHdoaWNoIHNwZWFrcyB0bwo+IHRoZSBiZWxvdyBjb21tZW50cyBhYm91dCBs
b2dnaW5nLiBIb3dldmVyLCBldmVuIGp1c3QgaGF2aW5nIGxvZ2dpbmcgb2YKPiBncm91cCBtZW1i
ZXJzaGlwIGNhdXNlZCBieSBPSURDIHdvdWxkIGJlIHN1ZmZpY2llbnQuIFBsdXMsIHNpbXBsaWZ5
aW5nCj4gdGhpcyBtYWtlcyBhIGxvdCBtb3JlIHNlbnNlIHRvIG1lIGluIGhpbmRzaWdodC4KPiAK
Pj4gc29tZSBoaWdoZXItbGV2ZWwgcXVlc3Rpb25zOgo+Pgo+PiBkbyB3ZSB3YW50IHRvIGhhdmUg
YSBiaXQgbW9yZSBsb2dnaW5nIGhlcmUsIGFsdGhvdWdoIGl0IHdvdWxkIG9ubHkgZW5kCj4+IHVw
IGluIHN5c2xvZy9qb3VybmFsLi4gbWF5YmUgYXQgbGVhc3QgZm9yIGdyb3VwcyB3aGljaCBhcmUg
Y3JlYXRlZD8KPiAKPiBJIGRvbid0IG1pbmQgYWRkaW5nIG1vcmUgbG9nZ2luZyBhdCBhbGwuIEkn
bSBhbGwgZm9yIHN1cHBvcnRpbmcgbW9yZQo+IGF1ZGl0YWJsZSBhY3Rpb25zLiBEbyB5b3UgaGF2
ZSBhbnkgb3RoZXIgc3VnZ2VzdGlvbnMgb2Ygd2hlcmUgbG9nZ2luZwo+IHdvdWxkIGJlIHVzZWZ1
bD8gTXkgY3VycmVudCB0aG91Z2h0cyBhcmU6IGdyb3VwcyBhdXRvIGNyZWF0ZWQsIHVzZXIKPiBy
ZW1vdmVkIGZyb20gZ3JvdXBzLCB1c2VyIGFkZGVkIHRvIGdyb3Vwcy4KCkkgdGhpbmsgZm9yIGdy
b3VwcyBiZWluZyBjcmVhdGVkIGl0IG1ha2VzIHNlbnNlLCB1c2VyIGdyb3VwCm1vZGlmaWNhdGlv
bnMgbWF5YmUgYXMgd2VsbCwgaWYgeW91IHdhbnQgdG8gc3RydWN0dXJlIHRoZSBjb2RlIGluIGEg
d2F5CnRoYXQgZ2l2ZXMgeW91IHRoYXQgaW5mb3JtYXRpb24gOykKCj4gCj4+IGRvIHdlIHdhbnQg
dG8gbWFuZ2xlIHRoZSBncm91cCBuYW1lcyB0byBpbmNsdWRlIHRoZSBPSURDLXJlYWxtIG5hbWUs
Cj4+IGxpa2Ugd2UgZG8gZm9yIExEQVAvQUQgc3luY2luZz8gdGhhdCB3YXkgaXQgaXMgbW9yZSBj
bGVhciB0aGF0IHRob3NlCj4+IGdyb3VwcyBvcmlnaW5hdGVkIGZyb20gT0lEQy4uIGRvd25zaWRl
IGlzIHRoYXQgeW91IGNhbid0IHVzZSBhIGdyb3VwCj4+IHNoYXJlZCBiZXR3ZWVuIE9JREMgYW5k
IG90aGVyIHJlYWxtcy4uCj4gCj4gWWVzLCB0aGlzIHdhcyB3aGF0IHdlbnQgdGhyb3VnaCBteSBt
aW5kIGluIGNvbnNpZGVyYXRpb24uIEFkZGluZyB0aGUKPiBwcmVmaXggZGVmaW5pdGVseSB3b3Vs
ZCBtYWtlIHRoZW0gbmVhcmx5IHVuaXF1ZSBhY3Jvc3MgcHJvdmlkZXJzLiBPbgo+IHRoZSBmbGlw
c2lkZSwgdGhlIGdyb3VwcyBuYW1lcyBzaG91bGQgYmUgYWJsZSB0byBiZSBjb250cm9sbGVkIGF0
IHRoZQo+IElkUC4gV2hhdCBkbyB5b3UgdGhpbmsgYWJvdXQgYWRkaW5nIGFuIGFkdmFuY2VkIG9w
dGlvbiBmb3IgYWRkaW5nIGEKPiBwcmVmaXggdG8gdGhlIGZyb250IG9mIHRoZSBncm91cCBuYW1l
IGFzIHRoZSByZWFsbSBuYW1lLCB0aGF0IHdheSB0aGUKPiB1c2VyIGNvdWxkIGhhdmUgYm90aCBv
cHRpb25zIChJJ20gdGhpbmtpbmcgYSBib29sZWFuIHRoYXQgYWRkcyB3aGF0Cj4geW91IHN1Z2dl
c3RlZCBhYm92ZSwgZGVmYXVsdCBvcHRlZCBvdXQpPyBBY3R1YWxseSBtaWdodCBub3QgYmUgYSBi
YWQKPiBpZGVhIGZvciBvdGhlciBhdXRoIHR5cGVzLCB0b28uCgp0aGUgbWFpbiByZWFzb24gdG8g
Im5hbWVzcGFjZSIgdGhlIGdyb3VwcyBpcyB0byBwcmV2ZW50IGFjY2lkZW50cyAoZ3JvdXAKYWxy
ZWFkeSBleGlzdHMgd2l0aCBkaWZmZXJlbnQgc2VtYW50aWNzIGFuZCBoYXMgQUNMcywgT0lEQyBh
ZGRzIHVzZXIgdG8KZ3JvdXAsIGFjY2lkZW50YWxseSBnYXZlIGFjY2VzcyB0byBzb21lIHJlc291
cmNlIGFzIGEgcmVzdWx0KQoKSSBkb24ndCB0aGluayB0aGVyZSBpcyBhIGh1Z2UgdXNlIGNhc2Ug
Zm9yIHRoZSBub24tbmFtZXNwYWNlZCB2YXJpYW50IC0KaWYgeW91IHdhbnQgdG8gcHJlLWNvbmZp
Z3VyZSBhIGdyb3VwIHRoYXQgaXMgcmVmZXJlbmNlZCB2aWEgT0lEQywgeW91CmNhbiBzdGlsbCBk
byB0aGF0IGFmdGVyIGFsbC4uCgo+IAo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgY2Zz
X3dyaXRlX2ZpbGUoInVzZXIuY2ZnIiwgJHVzZXJjZmcpOwo+PiA+ICsgICAgICAgICAgICAgICAg
ICAgICB9LCAib3BlbmlkIGdyb3VwIG1hcHBpbmcgZmFpbGVkIik7Cj4+ID4gKyAgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKPj4gPiArICAgICAgICAgICAgICAgICAgICAgc3lzbG9nKCdlcnInLCAi
Z3JvdXBzIGxpc3QgaXMgbm90IGFuIGFycmF5OyBncm91cHMgd2lsbCBub3QgYmUgdXBkYXRlZCIp
Owo+PiA+ICsgICAgICAgICAgICAgICAgIH0KPj4gPiArICAgICAgICAgICAgIH0gZWxzZSB7Cj4+
ID4gKyAgICAgICAgICAgICAgICAgc3lzbG9nKCdlcnInLCAiZ3JvdXBzIGNsYWltICckZ3JvdXBz
X2NsYWltJyBpcyBub3QgZm91bmQgaW4gY2xhaW1zIik7Cj4+ID4gKyAgICAgICAgICAgICB9Cj4+
ID4gKyAgICAgICAgIH0KPj4gPiArCj4+ID4gICAgICAgICAgIG15ICR0aWNrZXQgPSBQVkU6OkFj
Y2Vzc0NvbnRyb2w6OmFzc2VtYmxlX3RpY2tldCgkdXNlcm5hbWUpOwo+PiA+ICAgICAgICAgICBt
eSAkY3NyZnRva2VuID0gUFZFOjpBY2Nlc3NDb250cm9sOjphc3NlbWJsZV9jc3JmX3ByZXZlbnRp
b25fdG9rZW4oJHVzZXJuYW1lKTsKPj4gPiAgICAgICAgICAgbXkgJGNhcCA9ICRycGNlbnYtPmNv
bXB1dGVfYXBpX3Blcm1pc3Npb24oJHVzZXJuYW1lKTsKPj4gPiBkaWZmIC0tZ2l0IGEvc3JjL1BW
RS9BY2Nlc3NDb250cm9sLnBtIGIvc3JjL1BWRS9BY2Nlc3NDb250cm9sLnBtCj4+ID4gaW5kZXgg
NDdmMmQzOC4uZDY0M2EwMCAxMDA2NDQKPj4gPiAtLS0gYS9zcmMvUFZFL0FjY2Vzc0NvbnRyb2wu
cG0KPj4gPiArKysgYi9zcmMvUFZFL0FjY2Vzc0NvbnRyb2wucG0KPj4gPiBAQCAtOTkwLDEyICs5
OTAsMTcgQEAgc3ViIGRlbGV0ZV91c2VyX2dyb3VwIHsKPj4gPiAgICAgIG15ICgkdXNlcm5hbWUs
ICR1c2VyY2ZnKSA9IEBfOwo+PiA+Cj4+ID4gICAgICBmb3JlYWNoIG15ICRncm91cCAoa2V5cyAl
eyR1c2VyY2ZnLT57Z3JvdXBzfX0pIHsKPj4gPiAtCj4+ID4gLSAgICAgZGVsZXRlICgkdXNlcmNm
Zy0+e2dyb3Vwc30tPnskZ3JvdXB9LT57dXNlcnN9LT57JHVzZXJuYW1lfSkKPj4gPiAtICAgICAg
ICAgaWYgJHVzZXJjZmctPntncm91cHN9LT57JGdyb3VwfS0+e3VzZXJzfS0+eyR1c2VybmFtZX07
Cj4+ID4gKyAgICAgZGVsZXRlX3VzZXJfZ3JvdXBfc2luZ2xlKCR1c2VybmFtZSwgJHVzZXJjZmcs
ICRncm91cCk7Cj4+Cj4+IHRvIGJlIGhvbmVzdCBJIGFtIG5vdCBzdXJlIHdoeSB0aGF0IHBvc3Qt
aWYgaXMgdGhlcmUgaW4gdGhlIGZpcnN0IHBsYWNlLi4KPj4KPj4gd2hlbiBwYXJzaW5nIHRoZSBj
b25maWcsIHRoZSBncm91cCBpcyBpbml0aWFsaXplZCB3aXRoIGFuIGVtcHR5ICd1c2VycycKPj4g
aGFzaCBhcyBtZW1iZXJzIGJlZm9yZSBmaWxsaW5nIHVzaW5nIHRoZSBtZW1iZXIgbGlzdCwgc28g
dGhlcmUgaXMgbm8KPj4gcmlzayBvZiBhdXRvLXZpdmlmeWluZyBzb21ldGhpbmcgaGVyZS4uCj4+
Cj4+IGlmIHlvdSB3YW50IHRvIGRlbGV0ZSBhIHVzZXIncyBncm91cCBtZW1iZXJzaGlwLCB5b3Ug
Y2FuIGp1c3QKPj4KPj4gZGVsZXRlICR1c2VyY2ZnLT57Z3JvdXBzfS0+eyRncm91cH0tPnt1c2Vy
c30tPnskdXNlcm5hbWV9Owo+Pgo+PiBhbmQgd2UgZG9uJ3QgbmVlZCB0aGlzIHJlZmFjdG9yaW5n
Cj4gCj4gV2lsbCB1cGRhdGUgYW5kIHJlbW92ZSB0aGUgcmVmYWN0b3IuIFRoYW5rcyBmb3IgcG9p
bnRpbmcgdGhhdCBvdXQuCj4gCj4+ID4gICAgICB9Cj4+ID4gIH0KPj4gPgo+PiA+ICtzdWIgZGVs
ZXRlX3VzZXJfZ3JvdXBfc2luZ2xlIHsKPj4gPiArICAgIG15ICgkdXNlcm5hbWUsICR1c2VyY2Zn
LCAkZ3JvdXApID0gQF87Cj4+ID4gKwo+PiA+ICsgICAgZGVsZXRlICgkdXNlcmNmZy0+e2dyb3Vw
c30tPnskZ3JvdXB9LT57dXNlcnN9LT57JHVzZXJuYW1lfSkKPj4gPiArICAgICBpZiAkdXNlcmNm
Zy0+e2dyb3Vwc30tPnskZ3JvdXB9LT57dXNlcnN9LT57JHVzZXJuYW1lfTsKPj4gPiArfQo+PiA+
ICsKPj4gPiAgc3ViIGRlbGV0ZV91c2VyX2FjbCB7Cj4+ID4gICAgICBteSAoJHVzZXJuYW1lLCAk
dXNlcmNmZykgPSBAXzsKPj4gPgo+PiA+IEBAIC0xMjkzLDcgKzEyOTgsNyBAQCBQVkU6OkpTT05T
Y2hlbWE6OnJlZ2lzdGVyX2Zvcm1hdCgncHZlLWdyb3VwaWQnLCBcJnZlcmlmeV9ncm91cG5hbWUp
Owo+PiA+ICBzdWIgdmVyaWZ5X2dyb3VwbmFtZSB7Cj4+ID4gICAgICBteSAoJGdyb3VwbmFtZSwg
JG5vZXJyKSA9IEBfOwo+PiA+Cj4+ID4gLSAgICBpZiAoJGdyb3VwbmFtZSAhfiBtL15bQS1aYS16
MC05XC5cLV9dKyQvKSB7Cj4+ID4gKyAgICBpZiAoJGdyb3VwbmFtZSAhfiBtL15bJFBWRTo6QXV0
aDo6T3BlbklkOjpncm91cG5hbWVfcmVnZXhfY2hhcnNdKyQvKSB7Cj4+Cj4+IHNlZSBiZWxvdyA7
KSBpZiB0aGUgUkUgbW92ZXMgdGhlcmUsIHdlIGNvdWxkIGFjdHVhbGx5IG1vdmUgdGhlIHdob2xl
Cj4+IGhlbHBlciBhbmQgZm9ybWF0IHJlZ2lzdHJhdGlvbiAobWF5YmUgYXMgYSBzZXBhcmF0ZSBj
b21taXQvcGF0Y2g/KQo+IAo+IFdvdWxkIGEgc2VwYXJhdGUgcGF0Y2ggZm9yIHRoaXMgYmUgcHJl
ZmVycmVkPyBJIGRvbid0IG1pbmQgd29ya2luZyBpdAo+IGludG8gdGhpcyBvbmUgYXMgd2VsbC4K
CnllcywgdGhpcyBtYWtlcyBzZW5zZSBhcyBhIHN0YW5kYWxvbmUgcGF0Y2ggSU1ITy4KCj4+ID4K
Pj4gPiAgICAgICBkaWUgImdyb3VwIG5hbWUgJyRncm91cG5hbWUnIGNvbnRhaW5zIGludmFsaWQg
Y2hhcmFjdGVyc1xuIiBpZiAhJG5vZXJyOwo+PiA+Cj4+ID4gZGlmZiAtLWdpdCBhL3NyYy9QVkUv
QXV0aC9PcGVuSWQucG0gYi9zcmMvUFZFL0F1dGgvT3BlbklkLnBtCj4+ID4gaW5kZXggYzhlNGRi
OS4uZDdiNTU3NCAxMDA3NTUKPj4gPiAtLS0gYS9zcmMvUFZFL0F1dGgvT3BlbklkLnBtCj4+ID4g
KysrIGIvc3JjL1BWRS9BdXRoL09wZW5JZC5wbQo+PiA+IEBAIC05LDYgKzksOCBAQCB1c2UgUFZF
OjpDbHVzdGVyIHF3KGNmc19yZWdpc3Rlcl9maWxlIGNmc19yZWFkX2ZpbGUgY2ZzX3dyaXRlX2Zp
bGUgY2ZzX2xvY2tfZmlsZQo+PiA+Cj4+ID4gIHVzZSBiYXNlIHF3KFBWRTo6QXV0aDo6UGx1Z2lu
KTsKPj4gPgo+PiA+ICtvdXIgJGdyb3VwbmFtZV9yZWdleF9jaGFycyA9IHFyL0EtWmEtejAtOVwu
XC1fLzsKPj4KPj4gdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgaW4gUFZFOjpBdXRoOjpQbHVnaW4s
IHdoZXJlIHRoZSB1c2VyIGFuZCByZWFsbQo+PiBSRXMgYXJlIGFzIHdlbGwuCj4gCj4gSSdtIGp1
c3QgcmVjZW50bHkgZGl2aW5nIGludG8gcGx1Z2lucyBpbiBhbm90aGVyIHBhdGNoIEknbSB3b3Jr
aW5nIG9uCj4gYW5kIGRlZmluaXRlbHkgc2VlIHdoZXJlIHRoaXMgbWFrZXMgbW9yZSBzZW5zZS4K
PiAKPj4gPiArCj4+ID4gIHN1YiB0eXBlIHsKPj4gPiAgICAgIHJldHVybiAnb3BlbmlkJzsKPj4g
PiAgfQo+PiA+IEBAIC00Miw2ICs0NCwzMCBAQCBzdWIgcHJvcGVydGllcyB7Cj4+ID4gICAgICAg
ICAgIHR5cGUgPT4gJ3N0cmluZycsCj4+ID4gICAgICAgICAgIG9wdGlvbmFsID0+IDEsCj4+ID4g
ICAgICAgfSwKPj4gPiArICAgICAiZ3JvdXBzLWNsYWltIiA9PiB7Cj4+ID4gKyAgICAgICAgIGRl
c2NyaXB0aW9uID0+ICJPcGVuSUQgY2xhaW0gdXNlZCB0byByZXRyaWV2ZSBncm91cHMgd2l0aC4i
LAo+PiA+ICsgICAgICAgICB0eXBlID0+ICdzdHJpbmcnLAo+Pgo+PiB0aGlzIHNob3VsZCBwcm9i
YWJseSBiZSByZXN0cmljdGVkIChvdXIgdXN1YWwgc2FmZWlkIG1pZ2h0IGJlIHRvbwo+PiBzdHJp
Y3QgKEkga25vdyBzb21lIE9JREMgcHJvdmlkZXJzIGxpa2UgdG8gdXNlciB0aGluZ3MgbGlrZSBA
IGFuZCA6IGluCj4+IGF0dHJpYnV0ZXMsIHdvdWxkIGhhdmUgdG8gY2hlY2sgd2hhdCB0aGUgc3Bl
YyBzYXlzIGhlcmU/KSwgYnV0IHNvbWUKPj4gc2Vuc2libGUgc2V0IG9mIGNoYXJhY3RlcnMgYXQg
bGVhc3Qgd291bGQgYmUgbmljZSA7KSkKPiAKPiBJZiB0aGlzIGZpZWxkIG11c3QgYmUgcmVzdHJp
Y3RlZCwgdGhlbiBJJ2Qgc3VnZ2VzdCB3ZSBzdGFydCB3aXRoCj4gcHJpbnRhYmxlIEFTQ0lJIGNo
YXJhY3RlcnMgYXMgYSByZWFzb25hYmxlIGxpbWl0YXRpb24uIFRoYXQgd291bGQKPiBjb3ZlciBl
dmVyeXRoaW5nIHRoYXQgd291bGQgbGlrZWx5IGVuZCB1cCBpbiBhIEpXVC4gSWYgYW55dGhpbmcK
PiBvdXRzaWRlIG9mIHRoYXQgaXMgbmVlZGVkLCBhIHBhdGNoIGNvdWxkIGJlIHN1Ym1pdHRlZC4g
Q291bGQgc3RhcnQKPiB3aXRoIGEgMTI4IGNoYXJhY3RlciBsaW1pdCBvbiBsZW5ndGggYXMgd2Vs
bC4gVGhvdWdodHM/Cgpzb3VuZHMgc2Vuc2libGUuCgo+IAo+PiA+ICsgICAgICAgICBvcHRpb25h
bCA9PiAxLAo+PiA+ICsgICAgIH0sCj4+ID4gKyAgICAgImdyb3Vwcy1hdXRvY3JlYXRlIiA9PiB7
Cj4+ID4gKyAgICAgICAgIGRlc2NyaXB0aW9uID0+ICJBdXRvbWF0aWNhbGx5IGNyZWF0ZSBncm91
cHMgaWYgdGhleSBkbyBub3QgZXhpc3QuIiwKPj4gPiArICAgICAgICAgb3B0aW9uYWwgPT4gMSwK
Pj4gPiArICAgICAgICAgdHlwZSA9PiAnYm9vbGVhbicsCj4+ID4gKyAgICAgICAgIGRlZmF1bHQg
PT4gMCwKPj4gPiArICAgICB9LAo+PiA+ICsgICAgICJncm91cHMtb3ZlcndyaXRlIiA9PiB7Cj4+
ID4gKyAgICAgICAgIGRlc2NyaXB0aW9uID0+ICJBbGwgZ3JvdXBzIHdpbGwgYmUgb3ZlcndyaXR0
ZW4gZm9yIHRoZSB1c2VyIG9uIGxvZ2luLiIsCj4+ID4gKyAgICAgICAgIHR5cGUgPT4gJ2Jvb2xl
YW4nLAo+PiA+ICsgICAgICAgICBkZWZhdWx0ID0+IDAsCj4+ID4gKyAgICAgICAgIG9wdGlvbmFs
ID0+IDEsCj4+ID4gKyAgICAgfSwKPj4gPiArICAgICAiZ3JvdXBzLXJlcGxhY2UtY2hhcmFjdGVy
IiA9PiB7Cj4+ID4gKyAgICAgICAgIGRlc2NyaXB0aW9uID0+ICJDaGFyYWN0ZXIgdXNlZCB0byBy
ZXBsYWNlIGFueSBpbnZhbGlkIGNoYXJhY3RlcnMgaW4gZ3JvdXBzIGZyb20gcHJvdmlkZXIuIiwK
Pj4gPiArICAgICAgICAgdHlwZSA9PiAnc3RyaW5nJywKPj4gPiArICAgICAgICAgcGF0dGVybiA9
PiBxci9eWyRncm91cG5hbWVfcmVnZXhfY2hhcnNdJC8sCj4+ID4gKyAgICAgICAgIGRlZmF1bHQg
PT4gJ18nLAo+PiA+ICsgICAgICAgICBvcHRpb25hbCA9PiAxLAo+PiA+ICsgICAgIH0sCj4+ID4g
ICAgICAgcHJvbXB0ID0+IHsKPj4gPiAgICAgICAgICAgZGVzY3JpcHRpb24gPT4gIlNwZWNpZmll
cyB3aGV0aGVyIHRoZSBBdXRob3JpemF0aW9uIFNlcnZlciBwcm9tcHRzIHRoZSBFbmQtVXNlciBm
b3IiCj4+ID4gICAgICAgICAgICAgICAuIiByZWF1dGhlbnRpY2F0aW9uIGFuZCBjb25zZW50LiIs
Cj4+ID4gQEAgLTczLDYgKzk5LDEwIEBAIHN1YiBvcHRpb25zIHsKPj4gPiAgICAgICAiY2xpZW50
LWtleSIgPT4geyBvcHRpb25hbCA9PiAxIH0sCj4+ID4gICAgICAgYXV0b2NyZWF0ZSA9PiB7IG9w
dGlvbmFsID0+IDEgfSwKPj4gPiAgICAgICAidXNlcm5hbWUtY2xhaW0iID0+IHsgb3B0aW9uYWwg
PT4gMSwgZml4ZWQgPT4gMSB9LAo+PiA+ICsgICAgICJncm91cHMtY2xhaW0iID0+IHsgb3B0aW9u
YWwgPT4gMSB9LAo+PiA+ICsgICAgICJncm91cHMtYXV0b2NyZWF0ZSIgPT4geyBvcHRpb25hbCA9
PiAxIH0sCj4+ID4gKyAgICAgImdyb3Vwcy1vdmVyd3JpdGUiID0+IHsgb3B0aW9uYWwgPT4gMSB9
LAo+PiA+ICsgICAgICJncm91cHMtcmVwbGFjZS1jaGFyYWN0ZXIiID0+IHsgb3B0aW9uYWwgPT4g
MX0sCj4+ID4gICAgICAgcHJvbXB0ID0+IHsgb3B0aW9uYWwgPT4gMSB9LAo+PiA+ICAgICAgIHNj
b3BlcyA9PiB7IG9wdGlvbmFsID0+IDEgfSwKPj4gPiAgICAgICAiYWNyLXZhbHVlcyIgPT4geyBv
cHRpb25hbCA9PiAxIH0sCj4+ID4gLS0KPj4gPiAyLjM5LjUKPj4gPgo+PiA+Cj4+ID4gX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPj4gPiBwdmUtZGV2ZWwg
bWFpbGluZyBsaXN0Cj4+ID4gcHZlLWRldmVsQGxpc3RzLnByb3htb3guY29tCj4+ID4gaHR0cHM6
Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vcHZlLWRldmVsCj4+
ID4KPj4gPgo+PiA+Cj4+Cj4gCj4gCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX18KcHZlLWRldmVsIG1haWxpbmcgbGlzdApwdmUtZGV2ZWxAbGlzdHMucHJv
eG1veC5jb20KaHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGlu
Zm8vcHZlLWRldmVsCg==