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 030B41FF17C
	for <inbox@lore.proxmox.com>; Wed,  2 Apr 2025 18:32:32 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 498981F50D;
	Wed,  2 Apr 2025 18:32:21 +0200 (CEST)
Mime-Version: 1.0
Date: Wed, 02 Apr 2025 18:32:14 +0200
Message-Id: <D8WAPCS94G4A.1WS3C5TSFLL8R@proxmox.com>
To: "Proxmox VE development discussion" <pve-devel@lists.proxmox.com>
From: "Max Carrara" <m.carrara@proxmox.com>
X-Mailer: aerc 0.18.2-0-ge037c095a049
References: <20250326142059.261938-1-m.carrara@proxmox.com>
 <20250326142059.261938-8-m.carrara@proxmox.com>
 <1743431702.wltqcu20kr.astroid@yuna.none>
In-Reply-To: <1743431702.wltqcu20kr.astroid@yuna.none>
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.322 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_ASCII_DIVIDERS 0.8 Email that uses ascii formatting dividers and possible
 spam tricks
 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 v1 pve-storage 7/8] pluginbase: document
 volume operations
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>
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>

T24gTW9uIE1hciAzMSwgMjAyNSBhdCA1OjEyIFBNIENFU1QsIEZhYmlhbiBHcsO8bmJpY2hsZXIg
d3JvdGU6Cj4gT24gTWFyY2ggMjYsIDIwMjUgMzoyMCBwbSwgTWF4IENhcnJhcmEgd3JvdGU6Cj4g
PiBBZGQgZG9jc3RyaW5ncyBmb3IgdGhlIGZvbGxvd2luZyBtZXRob2RzOgo+ID4gLSBsaXN0X3Zv
bHVtZXMKPiA+IC0gZ2V0X3ZvbHVtZV9hdHRyaWJ1dGUKPiA+IC0gdXBkYXRlX3ZvbHVtZV9hdHRy
aWJ1dGUKPiA+IC0gdm9sdW1lX3NpemVfaW5mbwo+ID4gLSB2b2x1bWVfcmVzaXplCj4gPiAtIHZv
bHVtZV9zbmFwc2hvdAo+ID4gLSB2b2x1bWVfc25hcHNob3RfaW5mbwo+ID4gLSB2b2x1bWVfcm9s
bGJhY2tfaXNfcG9zc2libGUKPiA+IC0gdm9sdW1lX3NuYXBzaG90X3JvbGxiYWNrCj4gPiAtIHZv
bHVtZV9zbmFwc2hvdF9kZWxldGUKPiA+IC0gdm9sdW1lX3NuYXBzaG90X25lZWRzX2ZzZnJlZXpl
Cj4gPiAtIHN0b3JhZ2VfY2FuX3JlcGxpY2F0ZQo+ID4gLSB2b2x1bWVfaGFzX2ZlYXR1cmUKPiA+
IC0gbWFwX3ZvbHVtZQo+ID4gLSB1bm1hcF92b2x1bWUKPiA+IC0gYWN0aXZhdGVfdm9sdW1lCj4g
PiAtIGRlYWN0aXZhdGVfdm9sdW1lCj4gPiAtIHJlbmFtZV92b2x1bWUKPiA+IC0gcHJ1bmVfYmFj
a3Vwcwo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBNYXggQ2FycmFyYSA8bS5jYXJyYXJhQHByb3ht
b3guY29tPgo+ID4gQ28tYXV0aG9yZWQtYnk6IE1heGltaWxpYW5vIFNhbmRvdmFsIDxtLnNhbmRv
dmFsQHByb3htb3guY29tPgo+ID4gLS0tCj4gPiAgc3JjL1BWRS9TdG9yYWdlL1BsdWdpbkJhc2Uu
cG0gfCA0MDEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQo+ID4gIDEgZmlsZSBj
aGFuZ2VkLCAzODggaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYg
LS1naXQgYS9zcmMvUFZFL1N0b3JhZ2UvUGx1Z2luQmFzZS5wbSBiL3NyYy9QVkUvU3RvcmFnZS9Q
bHVnaW5CYXNlLnBtCj4gPiBpbmRleCAzN2IxNDcxLi5hMWJmYzhkIDEwMDY0NAo+ID4gLS0tIGEv
c3JjL1BWRS9TdG9yYWdlL1BsdWdpbkJhc2UucG0KPiA+ICsrKyBiL3NyYy9QVkUvU3RvcmFnZS9Q
bHVnaW5CYXNlLnBtCj4gPiBAQCAtODYxLDEwOCArODYxLDQ4MyBAQCBzdWIgZnJlZV9pbWFnZSB7
Cj4gPiAgCj4gPiAgPWN1dAo+ID4gIAo+ID4gKz1oZWFkMyAkcGx1Z2luLT5saXN0X3ZvbHVtZXMo
JHN0b3JlaWQsIFwlc2NmZywgJHZtaWQsIFxAY29udGVudF90eXBlcykKPiA+ICsKPiA+ICtCPFJF
UVVJUkVEOj4gTXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBldmVyeSBzdG9yYWdlIHBsdWdpbi4KPiA+
ICsKPiA+ICtSZXR1cm5zIGEgbGlzdCBvZiB2b2x1bWVzIGZvciB0aGUgZ2l2ZW4gZ3Vlc3Qgd2hv
c2UgY29udGVudCB0eXBlIGlzIHdpdGhpbiB0aGUKClVwZnJvbnQgbm90ZTogVW5sZXNzIEkgb3Ro
ZXJ3aXNlIGNvbW1lbnQgc29tZXRoaW5nLCBJIGFncmVlIHdpdGggeW91LgpKdXN0IHNwYXJpbmcg
bXlzZWxmIGZyb20gd3JpdGluZyBhbmQgeW91IGZyb20gcmVhZGluZyB0b28gbWFueSBBQ0tzIDpQ
Cgo+Cj4gdGhpcyBpcyB3cm9uZyAtIHdoYXQgaWYgJHZtaWQgaXMgbm90IHNldD8gb3IgaWYgY29u
dGVudCB0eXBlIGlzIHNuaXBwZXRzCj4gb3Igb25lIG9mIG90aGVyIG9uZXMgdGhhdCBkb24ndCBo
YXZlIGFuIGFzc29jaWF0ZWQgZ3Vlc3Qvb3duZXI/IG9yIHdoYXQKPiBpZiB0aGVyZSBpcyBubyAk
dm1pZCBnaXZlbiwgYXMgaW4gdGhlIGV4YW1wbGUgYmVsb3c/CgpSaWdodCwgdGhhbmtzIGZvciBz
cG90dGluZyB0aGlzIHRvby4KCj4KPiA+ICtnaXZlbiBDPFxAY29udGVudF90eXBlcz4uIElmIEM8
XEBjb250ZW50X3R5cGVzPiBpcyBlbXB0eSwgbm8gdm9sdW1lcyB3aWxsIGJlCj4gPiArcmV0dXJu
ZWQuIFNlZSBDPEw8PCBwbHVnaW5kYXRhKCl8LyIkcGx1Z2luLT5wbHVnaW5kYXRhKCkiID4+PiBm
b3IgYWxsIGNvbnRlbnQgdHlwZXMuCj4KPiBoZXJlIHdlIGFyZSBhY3R1YWxseSB0YWxraW5nIGFi
b3V0IGNvbnRlbnQgdHlwZXMgZm9yIG9uY2UgKGFuZCB0aGlzIGFsc28KPiB0cmFuc2xhdGVzIGZy
b20gY29udGVudCB0eXBlICJpbWFnZXMiIGFuZCAicm9vdGRpciIgdG8gdm9sdW1lIHR5cGUKPiAi
aW1hZ2VzIiEgaW4gUFZFOjpQbHVnaW4hKS4KPgo+ID4gKwo+ID4gKyAgICAjIExpc3QgYWxsIGJh
Y2t1cHMgZm9yIGEgZ3Vlc3QKPiA+ICsgICAgbXkgJGJhY2t1cHMgPSAkcGx1Z2luLT5saXN0X3Zv
bHVtZXMoJHN0b3JlaWQsICRzY2ZnLCAkdm1pZCwgWydiYWNrdXAnXSk7Cj4gPiArCj4gPiArICAg
ICMgTGlzdCBhbGwgY29udGFpbmVycyBhbmQgdmlydHVhbCBtYWNoaW5lcyBvbiB0aGUgc3RvcmFn
ZQo+ID4gKyAgICBteSAkZ3Vlc3RzID0gJHBsdWdpbi0+bGlzdF92b2x1bWVzKCRzdG9yZWlkLCAk
c2NmZywgdW5kZWYsIFsncm9vdGRpcicsICdpbWFnZXMnXSkKPgo+IGVoLCB0aGlzIGlzIGEgYmFk
IGV4YW1wbGU/IGl0IGRvZXNuJ3QgbGlzdCB0aGUgZ3Vlc3RzLCBpdCBsaXN0cyB0aGVpcgo+IHZv
bHVtZXMuLgo+Cj4gPiArCj4gPiArVGhlIHJldHVybmVkIGxpc3RyZWYgb2YgaGFzaHJlZnMgaGFz
IHRoZSBmb2xsb3dpbmcgc3RydWN0dXJlOgo+ID4gKwo+ID4gKyAgICBbCj4gPiArCXsKPiA+ICsJ
ICAgIGNvbnRlbnQgPT4gImltYWdlcyIsCj4gPiArCSAgICBjdGltZSA9PiAiMTcwMjI5ODAzOCIs
ICMgY3JlYXRpb24gdGltZSBhcyB1bml4IHRpbWVzdGFtcAo+ID4gKwkgICAgZm9ybWF0ID0+ICJy
YXciLAo+ID4gKwkgICAgc2l6ZSA9PiA5NjYzNjc2NDE2LCAjIGluIGJ5dGVzIQo+ID4gKwkgICAg
dm1pZCA9PiAxMDIsCj4gPiArCSAgICB2b2xpZCA9PiAibG9jYWwtbHZtOnZtLTEwMi1kaXNrLTAi
LAo+ID4gKwl9LAo+ID4gKwkjIFsuLi5dCj4gPiArICAgIF0KPiA+ICsKPiA+ICtCYWNrdXBzIHdp
bGwgYWxzbyBjb250YWluIGFkZGl0aW9uYWwga2V5czoKPiA+ICsKPiA+ICsgICAgWwo+ID4gKwl7
Cj4gPiArCSAgICBjb250ZW50ID0+ICJiYWNrdXAiLAo+ID4gKwkgICAgY3RpbWUgPT4gMTc0MjQw
NTA3MCwgIyBjcmVhdGlvbiB0aW1lIGFzIHVuaXggdGltZXN0YW1wCj4gPiArCSAgICBmb3JtYXQg
PT4gInRhci56c3QiLAo+ID4gKwkgICAgbm90ZXMgPT4gIi4uLiIsICMgY29tbWVudCB0aGF0IHdh
cyBlbnRlcmVkIHdoZW4gYmFja3VwIHdhcyBjcmVhdGVkCj4gPiArCSAgICBzaXplID0+IDMyODkw
Njg0MCwgIyBpbiBieXRlcyEKPiA+ICsJICAgIHN1YnR5cGUgPT4gImx4YyIsICMgImx4YyIgZm9y
IGNvbnRhaW5lcnMsICJxZW11IiBmb3IgVk1zCj4gPiArCSAgICB2bWlkID0+IDEwNiwKPiA+ICsJ
ICAgIHZvbGlkID0+ICJsb2NhbDpiYWNrdXAvdnpkdW1wLWx4Yy0xMDYtMjAyNV8wM18xOS0xOF8y
NF8zMC50YXIuenN0IiwKPiA+ICsJfSwKPiA+ICsJIyBbLi4uXQo+ID4gKyAgICBdCj4KPiBzb29v
by4uIHdoYXQgaXMgdGhlIGludGVyZmFjZSBoZXJlIGFnYWluPyAtPiBuZWVkcyBhIChjb21wbGV0
ZSkgc2NoZW1hCj4gZm9yIHRoZSByZXR1cm5lZCB0eXBlLCBlbHNlIGhvdyBhbSBJIHN1cHBvc2Vk
IHRvIGltcGxlbWVudCB0aGlzPwoKSSBtZWFuLCB3ZSBjb3VsZCBkZWZpbmUgb25lLiBJIGRpZG4n
dCB3YW50IHRvIGNsb2JiZXIgdGhlIGRvY3N0cmluZyB3aXRoCnRvbyBtYW55IGV4YW1wbGVzIC8g
dG9vIG11Y2ggdGV4dCBoZXJlLCBidXQgSSBhZ3JlZS4KCj4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiAr
Cj4gPiAgc3ViIGxpc3Rfdm9sdW1lcyB7Cj4gPiAgICAgIG15ICgkY2xhc3MsICRzdG9yZWlkLCAk
c2NmZywgJHZtaWQsICRjb250ZW50X3R5cGVzKSA9IEBfOwo+ID4gICAgICBjcm9hayAiaW1wbGVt
ZW50IG1lIGluIHN1Yi1jbGFzc1xuIjsKPiA+ICB9Cj4gPiAgCj4gPiAtIyBSZXR1cm5zIHVuZGVm
IGlmIHRoZSBhdHRyaWJ1dGUgaXMgbm90IHN1cHBvcnRlZCBmb3IgdGhlIHZvbHVtZS4KPiA+IC0j
IFNob3VsZCBkaWUgaWYgdGhlcmUgaXMgYW4gZXJyb3IgZmV0Y2hpbmcgdGhlIGF0dHJpYnV0ZS4K
PiA+IC0jIFBvc3NpYmxlIGF0dHJpYnV0ZXM6Cj4gPiAtIyBub3RlcyAgICAgLSB1c2VyLXByb3Zp
ZGVkIGNvbW1lbnRzL25vdGVzLgo+ID4gLSMgcHJvdGVjdGVkIC0gbm90IHRvIGJlIHJlbW92ZWQg
YnkgZnJlZV9pbWFnZSwgYW5kIGZvciBiYWNrdXBzLCBpZ25vcmVkIHdoZW4gcHJ1bmluZy4KPiA+
ICs9aGVhZDMgJHBsdWdpbi0+Z2V0X3ZvbHVtZV9hdHRyaWJ1dGUoXCVzY2ZnLCAkc3RvcmVpZCwg
JHZvbG5hbWUsICRhdHRyaWJ1dGUpCj4gPiArCj4gPiArPWhlYWQzICRwbHVnaW4tPmdldF92b2x1
bWVfYXR0cmlidXRlKC4uLikKPiA+ICsKPiA+ICtCPFJFUVVJUkVEOj4gTXVzdCBiZSBpbXBsZW1l
bnRlZCBpbiBldmVyeSBzdG9yYWdlIHBsdWdpbi4KPiA+ICsKPiA+ICtSZXR1cm5zIHRoZSB2YWx1
ZSBvZiB0aGUgZ2l2ZW4gQzwkYXR0cmlidXRlPiBmb3IgYSB2b2x1bWUuIElmIHRoZSBhdHRyaWJ1
dGUgaXNuJ3QKPiA+ICtzdXBwb3J0ZWQgZm9yIHRoZSB2b2x1bWUsIHJldHVybnMgQzx1bmRlZj4u
Cj4gPiArCj4gPiArQzxkaWU+cyBpZiB0aGVyZSBpcyBhbiBlcnJvciBmZXRjaGluZyB0aGUgYXR0
cmlidXRlLgo+ID4gKwo+ID4gK0I8UG9zc2libGUgYXR0cmlidXRlczo+Cj4gPiArCj4gPiArPW92
ZXIKPiA+ICsKPiA+ICs9aXRlbSAqIEM8bm90ZXM+IChyZXR1cm5zIHNjYWxhcikKPgo+IHNjYWxh
ciAqc3RyaW5nKiA/Cj4gPiArCj4gPiArVXNlci1wcm92aWRlZCBjb21tZW50cyAvIG5vdGVzLgo+
ID4gKwo+ID4gKz1pdGVtICogQzxwcm90ZWN0ZWQ+IChyZXR1cm5zIHNjYWxhcikKPgo+IHNjYWxh
ciAqYm9vbGVhbiogPwo+Cj4gPiArCj4gPiArV2hlbiBzZXQgdG8gQzwxPiwgdGhlIHZvbHVtZSBt
dXN0IG5vdCBiZSByZW1vdmVkIGJ5IEM8TDw8IGZyZWVfaW1hZ2UoKXwvIiRwbHVnaW4tPmZyZWVf
aW1hZ2UoLi4uKSIgPj4+Lgo+ID4gK0JhY2t1cHMgd2l0aCBDPHByb3RlY3RlZD4gc2V0IHRvIEM8
MT4gYXJlIGlnbm9yZWQgd2hlbiBwcnVuaW5nLgo+Cj4gQmFja3VwIHZvbHVtZXMgLi4gd2hlbiBj
YWxjdWxhdGluZyB3aGljaCBiYWNrdXAgdm9sdW1lcyB0byBwcnVuZS4KPgo+ID4gKwo+ID4gKz1i
YWNrCj4gPiArCj4gPiArPWN1dAo+ID4gKwo+ID4gIHN1YiBnZXRfdm9sdW1lX2F0dHJpYnV0ZSB7
Cj4gPiAgICAgIG15ICgkY2xhc3MsICRzY2ZnLCAkc3RvcmVpZCwgJHZvbG5hbWUsICRhdHRyaWJ1
dGUpID0gQF87Cj4gPiAgICAgIGNyb2FrICJpbXBsZW1lbnQgbWUgaW4gc3ViLWNsYXNzXG4iOwo+
ID4gIH0KPiA+ICAKPiA+IC0jIERpZXMgaWYgdGhlIGF0dHJpYnV0ZSBpcyBub3Qgc3VwcG9ydGVk
IGZvciB0aGUgdm9sdW1lLgo+ID4gKz1oZWFkMyAkcGx1Z2luLT51cGRhdGVfdm9sdW1lX2F0dHJp
YnV0ZShcJXNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJGF0dHJpYnV0ZSwgJHZhbHVlKQo+ID4g
Kwo+ID4gKz1oZWFkMyAkcGx1Z2luLT51cGRhdGVfdm9sdW1lX2F0dHJpYnV0ZSguLi4pCj4gPiAr
Cj4gPiArQjxSRVFVSVJFRDo+IE11c3QgYmUgaW1wbGVtZW50ZWQgaW4gZXZlcnkgc3RvcmFnZSBw
bHVnaW4uCj4gPiArCj4gPiArU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGdpdmVuIEM8JGF0dHJpYnV0
ZT4gZm9yIGEgdm9sdW1lIHRvIEM8JHZhbHVlPi4KPiA+ICsKPiA+ICtDPGRpZT5zIGlmIHRoZSBh
dHRyaWJ1dGUgaXNuJ3Qgc3VwcG9ydGVkIGZvciB0aGUgdm9sdW1lIChvciBzdG9yYWdlKS4KPiA+
ICsKPiA+ICtGb3IgYSBsaXN0IG9mIHN1cHBvcnRlZCBhdHRyaWJ1dGVzLCBzZWUgQzxMPDwgZ2V0
X3ZvbHVtZV9hdHRyaWJ1dGUoKXwvIiRwbHVnaW4tPmdldF92b2x1bWVfYXR0cmlidXRlKC4uLiki
ID4+Pi4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4gPiAgc3ViIHVwZGF0ZV92b2x1bWVfYXR0cmli
dXRlIHsKPiA+ICAgICAgbXkgKCRjbGFzcywgJHNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJGF0
dHJpYnV0ZSwgJHZhbHVlKSA9IEBfOwo+ID4gICAgICBjcm9hayAiaW1wbGVtZW50IG1lIGluIHN1
Yi1jbGFzc1xuIjsKPiA+ICB9Cj4gPiAgCj4gPiArPWhlYWQzICRwbHVnaW4tPnZvbHVtZV9zaXpl
X2luZm8oXCVzY2ZnLCAkc3RvcmVpZCwgJHZvbG5hbWUgWywgJHRpbWVvdXRdKQo+ID4gKwo+ID4g
K0I8UkVRVUlSRUQ6PiBNdXN0IGJlIGltcGxlbWVudGVkIGluIGV2ZXJ5IHN0b3JhZ2UgcGx1Z2lu
Lgo+ID4gKwo+ID4gK1JldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGdpdmVuIHZvbHVtZSdz
IHNpemUuIEluIHNjYWxhciBjb250ZXh0LCB0aGlzIHJldHVybnMKPiA+ICtqdXN0IHRoZSB2b2x1
bWUncyBzaXplIGluIGJ5dGVzOgo+ID4gKwo+ID4gKyAgICBteSAkc2l6ZSA9ICRwbHVnaW4tPnZv
bHVtZV9zaXplX2luZm8oJHNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJHRpbWVvdXQpCj4gPiAr
Cj4gPiArSW4gbGlzdCBjb250ZXh0LCByZXR1cm5zIGFuIGFycmF5IHdpdGggdGhlIGZvbGxvd2lu
ZyBzdHJ1Y3R1cmU6Cj4gPiArCj4gPiArICAgIG15ICgkc2l6ZSwgJGZvcm1hdCwgJHVzZWQsICRw
YXJlbnQsICRjdGltZSkgPSAkcGx1Z2luLT52b2x1bWVfc2l6ZV9pbmZvKAo+ID4gKwkkc2NmZywg
JHN0b3JlaWQsICR2b2xuYW1lLCAkdGltZW91dAo+ID4gKyAgICApCj4gPiArCj4gPiArd2hlcmUg
Qzwkc2l6ZT4gaXMgdGhlIHNpemUgb2YgdGhlIHZvbHVtZSBpbiBieXRlcywgQzwkZm9ybWF0PiBv
bmUgb2YgdGhlIHBvc3NpYmxlCj4gPiArTDw8IGZvcm1hdHMgbGlzdGVkIGluIEM8cGx1Z2luZGF0
YSgpPnwvIiRwbHVnaW4tPnBsdWdpbmRhdGEoKSIgPj4sIEM8JHVzZWQ+IHRoZQo+ID4gK2Ftb3Vu
dCBvZiBzcGFjZSB1c2VkIGluIGJ5dGVzLCBDPCRwYXJlbnQ+IHRoZSAob3B0aW9uYWwpIG5hbWUg
b2YgdGhlIGJhc2Ugdm9sdW1lCj4gPiArYW5kIEM8JGN0aW1lPiB0aGUgY3JlYXRpb24gdGltZSBh
cyB1bml4IHRpbWVzdGFtcC4KPiA+ICsKPiA+ICtPcHRpb25hbGx5LCBhIEM8JHRpbWVvdXQ+IG1h
eSBiZSBwcm92aWRlZCBhZnRlciB3aGljaCB0aGUgbWV0aG9kIHNob3VsZCBDPGRpZT4uCj4gPiAr
VGhpcyB0aW1lb3V0IGlzIGJlc3QgcGFzc2VkIHRvIG90aGVyIGhlbHBlcnMgd2hpY2ggYWxyZWFk
eSBzdXBwb3J0IHRpbWVvdXRzLAo+ID4gK3N1Y2ggYXMgQzxMPDwgUFZFOjpUb29sczo6cnVuX2Nv
bW1hbmR8UFZFOjpUb29scy9ydW5fY29tbWFuZCA+Pj4uCj4gPiArCj4gPiArU2VlIGFsc28gdGhl
IEM8TDw8IFBWRTo6U3RvcmFnZTo6UGx1Z2luOjpmaWxlX3NpemVfaW5mb3xQVkU6OlN0b3JhZ2U6
OlBsdWdpbi9maWxlX3NpemVfaW5mbyA+Pj4gaGVscGVyLgo+Cj4gUFZFOjpTdG9yYWdlOjpmaWxl
X3NpemVfaW5mbyAod2l0aG91dCBQbHVnaW46OikhCj4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4g
PiAgc3ViIHZvbHVtZV9zaXplX2luZm8gewo+ID4gICAgICBteSAoJGNsYXNzLCAkc2NmZywgJHN0
b3JlaWQsICR2b2xuYW1lLCAkdGltZW91dCkgPSBAXzsKPiA+ICAgICAgY3JvYWsgImltcGxlbWVu
dCBtZSBpbiBzdWItY2xhc3NcbiI7Cj4gPiAgfQo+ID4gIAo+ID4gKz1oZWFkMyAkcGx1Z2luLT52
b2x1bWVfcmVzaXplKFwlc2NmZywgJHN0b3JlaWQsICR2b2xuYW1lLCAkc2l6ZSBbLCAkcnVubmlu
Z10pCj4gPiArCj4gPiArQjxSRVFVSVJFRDo+IE11c3QgYmUgaW1wbGVtZW50ZWQgaW4gZXZlcnkg
c3RvcmFnZSBwbHVnaW4uCj4gPiArCj4gPiArUmVzaXplcyBhIHZvbHVtZSB0byB0aGUgbmV3IEM8
JHNpemU+IGluIGJ5dGVzLiBPcHRpb25hbGx5LCB0aGUgZ3Vlc3QgdGhhdCBvd25zCj4gPiArdGhl
IHZvbHVtZSBtYXkgYmUgQzwkcnVubmluZz4gKD0gQzwxPikuCj4KPiB0aGUgc2Vjb25kIHNlbnRl
bmNlIGRvZXNuJ3QgbWFrZSBhbnkgc2Vuc2UuCj4KPiBDPCRydW5uaW5nPiBpbmRpY2F0ZXMgdGhl
IGd1ZXN0IGlzIGN1cnJlbnRseSBydW5uaW5nLgo+Cj4gYnV0IHdoYXQgZG9lcyB0aGF0IG1lYW4v
d2h5IHNob3VsZCBhIHBsdWdpbiBjYXJlPwo+Cj4gPiArCj4gPiArQzxkaWU+cyBpbiBjYXNlIG9m
IGVycm9ycywgb3IgaWYgdGhlIHVuZGVybHlpbmcgc3RvcmFnZSBpbXBsZW1lbnRhdGlvbiBvciB0
aGUKPiA+ICt2b2x1bWUncyBmb3JtYXQgZG9lc24ndCBzdXBwb3J0IHJlc2l6aW5nLgo+ID4gKwo+
ID4gK1RoaXMgZnVuY3Rpb24gc2hvdWxkIG5vdCByZXR1cm4gYW55IHZhbHVlLiBJbiBwcmV2aW91
cyB2ZXJzaW9ucyB0aGUgcmV0dXJuZWQKPiA+ICt2YWx1ZSB3b3VsZCBiZSB1c2VkIHRvIGRldGVy
bWluZSB0aGUgbmV3IHNpemUgb2YgdGhlIHZvbHVtZSBvciB3aGV0aGVyIHRoZQo+ID4gK29wZXJh
dGlvbiBzdWNjZWVkZWQuCj4KPiBzbyBzaW5jZSB0aGlzIGRvY3VtZW50cyB0aGUgbmV3IHZlcnNp
b24uLiBzaG91bGRuJ3Qgd2UganVzdCBkcm9wIHRoZQo+IGxhc3QgcGFydD8KPgo+ID4gKwo+ID4g
Kz1jdXQKPiA+ICsKPiA+ICBzdWIgdm9sdW1lX3Jlc2l6ZSB7Cj4gPiAgICAgIG15ICgkY2xhc3Ms
ICRzY2ZnLCAkc3RvcmVpZCwgJHZvbG5hbWUsICRzaXplLCAkcnVubmluZykgPSBAXzsKPiA+ICAg
ICAgY3JvYWsgImltcGxlbWVudCBtZSBpbiBzdWItY2xhc3NcbiI7Cj4gPiAgfQo+ID4gIAo+ID4g
Kz1oZWFkMyAkcGx1Z2luLT52b2x1bWVfc25hcHNob3QoXCVzY2ZnLCAkc3RvcmVpZCwgJHZvbG5h
bWUsICRzbmFwKQo+ID4gKwo+ID4gK0I8T1BUSU9OQUw6PiBNYXkgYmUgaW1wbGVtZW50ZWQgaWYg
dGhlIHVuZGVybHlpbmcgc3RvcmFnZSBzdXBwb3J0cyBzbmFwc2hvdHMuCj4gPiArCj4gPiArVGFr
ZXMgYSBzbmFwc2hvdCBvZiBhIHZvbHVtZSBhbmQgZ2l2ZXMgaXQgdGhlIG5hbWUgcHJvdmlkZWQg
YnkgQzwkc25hcD4uCj4KPiB0aGlzIHNvdW5kcyBsaWtlIHRoaXMgaXMgYSB0d28tc3RlcCBwcm9j
ZXNzLi4KPgo+IFRha2VzIGEgc25hcHNob3QgY2FsbGVkIEM8JHNuYXA+IG9mIHRoZSB2b2x1bWUg
Qzwkdm9sbmFtZT4uCj4KPiA+ICsKPiA+ICtDPGRpZT5zIGlmIHRoZSB1bmRlcmx5aW5nIHN0b3Jy
YWdlIGRvZXNuJ3Qgc3VwcG9ydCBzbmFwc2hvdHMgb3IgYW4gZXJyb3IKPiA+ICtvY2N1cnMgd2hp
bGUgdGFraW5nIGEgc25hcHNob3QuCj4KPiBzL2EvdGhlCj4gcy9zdG9ycmFnZS9zdG9yYWdlCj4K
PiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4gPiAgc3ViIHZvbHVtZV9zbmFwc2hvdCB7Cj4gPiAgICAg
IG15ICgkY2xhc3MsICRzY2ZnLCAkc3RvcmVpZCwgJHZvbG5hbWUsICRzbmFwKSA9IEBfOwo+ID4g
ICAgICBjcm9hayAiaW1wbGVtZW50IG1lIGluIHN1Yi1jbGFzc1xuIjsKPiA+ICB9Cj4gPiAgCj4g
PiAtIyBSZXR1cm5zIGEgaGFzaCB3aXRoIHRoZSBzbmFwc2hvdCBuYW1lcyBhcyBrZXlzIGFuZCB0
aGUgZm9sbG93aW5nIGRhdGE6Cj4gPiAtIyBpZCAgICAgICAgLSBVbmlxdWUgaWQgdG8gZGlzdGlu
Z3Vpc2ggZGlmZmVyZW50IHNuYXBzaG90cyBldmVuIGlmIHRoZSBoYXZlIHRoZSBzYW1lIG5hbWUu
Cj4gPiAtIyB0aW1lc3RhbXAgLSBDcmVhdGlvbiB0aW1lIG9mIHRoZSBzbmFwc2hvdCAoc2Vjb25k
cyBzaW5jZSBlcG9jaCkuCj4gPiAtIyBSZXR1cm5zIGFuIGVtcHR5IGhhc2ggaWYgdGhlIHZvbHVt
ZSBkb2VzIG5vdCBleGlzdC4KPiA+ICs9aGVhZDMgJHBsdWdpbi0+dm9sdW1lX3NuYXBzaG90X2lu
Zm8oXCVzY2ZnLCAkc3RvcmVpZCwgJHZvbG5hbWUpCj4gPiArCj4gPiArUmV0dXJucyBhIGhhc2hy
ZWYgd2l0aCB0aGUgc25hcHNob3QgbmFtZXMgYXMga2V5cyBhbmQgdGhlIGZvbGxvd2luZyBzdHJ1
Y3R1cmU6Cj4gPiArCj4gPiArICAgIHsKPiA+ICsgICAgICAgIG15X3NuYXBzaG90ID0+IHsKPiA+
ICsgICAgICAgICAgICBpZCA9PiAiMDFiN2U2NjgtNThiNC02ZjQyLTlhNWUtMTk0NGMyODU1Yzg0
IiwgICMgVW5pcXVlIGlkIHRvIGRpc3Rpbmd1aXNoIGRpZmZlcmVudCBzbmFwc2hvdHMgd2l0aCB0
aGUgc2FtZSBuYW1lLgo+ID4gKyAgICAgICAgICAgIHRpbWVzdGFtcCA9PiAiMTcyOTg0MTgwNyIs
ICAjIENyZWF0aW9uIHRpbWUgb2YgdGhlIHNuYXBzaG90IChzZWNvbmRzIHNpbmNlIGVwb2NoKS4K
PiA+ICsgICAgICAgIH0sCj4gPiArCSMgWy4uLl0KPiA+ICsgICAgfQo+ID4gKwo+ID4gK1JldHVy
bnMgYW4gZW1wdHkgaGFzaHJlZiBpZiB0aGUgdm9sdW1lIGRvZXMgbm90IGV4aXN0Lgo+Cj4gb3Ig
ZGllcyBpZiByZXRyaWV2aW5nIHRoZSBzbmFwc2hvdCBpbmZvcm1hdGlvbiBmb3IgdGhlIGdpdmVu
IHZvbHVtZQo+IGZhaWxlZC4gPwo+Cj4gPiArCj4gPiArPWN1dAo+ID4gKwo+ID4gIHN1YiB2b2x1
bWVfc25hcHNob3RfaW5mbyB7Cj4gPiAgICAgIG15ICgkY2xhc3MsICRzY2ZnLCAkc3RvcmVpZCwg
JHZvbG5hbWUpID0gQF87Cj4gPiAgICAgIGNyb2FrICJpbXBsZW1lbnQgbWUgaW4gc3ViLWNsYXNz
XG4iOwo+ID4gIH0KPiA+ICAKPiA+IC0jIEFzc2VydHMgdGhhdCBhIHJvbGxiYWNrIHRvICRzbmFw
IG9uICR2b2xuYW1lIGlzIHBvc3NpYmxlLgo+ID4gLSMgSWYgY2VydGFpbiBzbmFwc2hvdHMgYXJl
IHByZXZlbnRpbmcgdGhlIHJvbGxiYWNrIGFuZCAkYmxvY2tlcnMgaXMgYW4gYXJyYXkKPiA+IC0j
IHJlZmVyZW5jZSwgdGhlIHNuYXBzaG90IG5hbWVzIGNhbiBiZSBwdXNoZWQgb250byAkYmxvY2tl
cnMgcHJpb3IgdG8gZHlpbmcuCj4gPiArPWhlYWQzICRwbHVnaW4tPnZvbHVtZV9yb2xsYmFja19p
c19wb3NzaWJsZShcJXNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJHNuYXAgWywgXEBibG9ja2Vy
c10pCj4gPiArCj4gPiArPWhlYWQzICRwbHVnaW4tPnZvbHVtZV9yb2xsYmFja19pc19wb3NzaWJs
ZSguLi4pCj4gPiArCj4gPiArQjxPUFRJT05BTDo+IE1heSBiZSBpbXBsZW1lbnRlZCBpZiB0aGUg
dW5kZXJseWluZyBzdG9yYWdlIHN1cHBvcnRzIHNuYXBzaG90cy4KPiA+ICsKPiA+ICtBc3NlcnRz
IHdoZXRoZXIgYSByb2xsYmFjayB0byBDPCRzbmFwPiBvbiBDPCR2b2xuYW1lPiBpcyBwb3NzaWJs
ZSwgQzxkaWU+cyBpZgo+ID4gK2l0IGlzbid0Lgo+ID4gKwo+ID4gK09wdGlvbmFsbHksIEM8XEBi
bG9ja2Vycz4gbWF5IGJlIHByb3ZpZGVkLCB3aGljaCBtYXkgY29udGFpbiB0aGUgbmFtZXMgb2YK
PiA+ICtzbmFwc2hvdHMgdGhhdCBhcmUgcHJldmVudGluZyB0aGUgcm9sbGJhY2suIFNob3VsZCBh
bnkgc3VjaCBzbmFwc2hvdHMgZXhpc3QsCj4gPiArdGhleSBzaG91bGQgYmUgcHVzaGVkIHRvIHRo
aXMgbGlzdHJlZiBwaW9yIHRvIEM8ZGllPi1pbmcuIFRoZSBjYWxsZXIgbWF5IHRoZW4KPiA+ICt1
c2UgdGhpcyBsaXN0cmVmIHdoZW4gaGFuZGxpbmcgZXJyb3JzLgo+Cj4gSWYgdGhlIG9wdGlvbmFs
IHBhcmFtYXRlciBDPFxAYmxvY2tlcnM+IGlzIHByb3ZpZGVkLCB0aGUgbmFtZXMgb2YgYW55Cj4g
c25hcHNob3RzIGJsb2NraW5nIHRoZSByb2xsYmFjayBzaG91bGQgYmUgYWRkZWQgdG8gdGhpcyBs
aXN0cmVmIHByaW9yIHRvCj4gQzxkaWU+LWluZy4KPgo+ID4gKwo+ID4gKz1jdXQKPiA+ICsKPiA+
ICBzdWIgdm9sdW1lX3JvbGxiYWNrX2lzX3Bvc3NpYmxlIHsKPiA+ICAgICAgbXkgKCRjbGFzcywg
JHNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJHNuYXAsICRibG9ja2VycykgPSBAXzsKPiA+ICAg
ICAgY3JvYWsgImltcGxlbWVudCBtZSBpbiBzdWItY2xhc3NcbiI7Cj4gPiAgfQo+ID4gIAo+ID4g
Kz1oZWFkMyAkcGx1Z2luLT52b2x1bWVfc25hcHNob3Rfcm9sbGJhY2soXCVzY2ZnLCAkc3RvcmVp
ZCwgJHZvbG5hbWUsICRzbmFwKQo+ID4gKwo+ID4gK1BlcmZvcm1zIGEgcm9sbGJhY2sgdG8gdGhl
IGdpdmVuIEM8JHNuYXA+c2hvdCBvbiBDPCR2b2xuYW1lPi4KPiA+ICsKPiA+ICtDPGRpZT5zIGlu
IGNhc2Ugb2YgZXJyb3JzLgo+ID4gKwo+ID4gKz1jdXQKPiA+ICsKPiA+ICBzdWIgdm9sdW1lX3Nu
YXBzaG90X3JvbGxiYWNrIHsKPiA+ICAgICAgbXkgKCRjbGFzcywgJHNjZmcsICRzdG9yZWlkLCAk
dm9sbmFtZSwgJHNuYXApID0gQF87Cj4gPiAgICAgIGNyb2FrICJpbXBsZW1lbnQgbWUgaW4gc3Vi
LWNsYXNzXG4iOwo+ID4gIH0KPiA+ICAKPiA+ICs9aGVhZDMgJHBsdWdpbi0+dm9sdW1lX3NuYXBz
aG90X2RlbGV0ZShcJXNjZmcsICRzdG9yZWlkLCAkdm9sbmFtZSwgJHNuYXAgWywgJHJ1bm5pbmdd
KQo+ID4gKwo+ID4gK0RlbGV0ZXMgdGhlIEM8JHNuYXA+c2hvdCBvZiBDPCR2b2xuYW1lPi4KPiA+
ICsKPiA+ICtDPGRpZT5zIGluIGNhc2Ugb2YgZXJyb3JzLgo+ID4gKwo+ID4gK09wdGlvbmFsbHks
IHRoZSBndWVzdCB0aGF0IG93bnMgdGhlIGdpdmVuIHZvbHVtZSBtYXkgYmUgQzwkcnVubmluZz4g
KD0gQzwxPikuCj4KPiBBZ2FpbiwgdGhpcyBpcyBwaHJhc2VkIHdlaXJkICphbmQqIGdpdmVzIG5v
IGluZm9ybWF0aW9uIHRvIGEgcG90ZW50aWFsCj4gaW1wbGVtZW50b3Igb2YgdGhpcyBBUEkuLiB3
aHkgc2hvdWxkIGEgcGx1Z2luIGNhcmU/Cj4KPiA+ICsKPiA+ICtCPERlcHJlY2F0ZWQ6PiBUaGUg
QzwkcnVubmluZz4gcGFyYW1ldGVyIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBv
biB0aGUKPiA+ICtuZXh0IEM8QVBJQUdFPiByZXNldC4KPgo+IGFuZCB0aGlzIG1ha2VzIGl0IGV2
ZW4gbW9yZSBjb25mdXNpbmchCj4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4gPiAgc3ViIHZvbHVt
ZV9zbmFwc2hvdF9kZWxldGUgewo+ID4gICAgICBteSAoJGNsYXNzLCAkc2NmZywgJHN0b3JlaWQs
ICR2b2xuYW1lLCAkc25hcCwgJHJ1bm5pbmcpID0gQF87Cj4gPiAgICAgIGNyb2FrICJpbXBsZW1l
bnQgbWUgaW4gc3ViLWNsYXNzXG4iOwo+ID4gIH0KPiA+ICAKPiA+ICs9aGVhZDMgJHBsdWdpbi0+
dm9sdW1lX3NuYXBzaG90X25lZWRzX2ZzZnJlZXplKCkKPiA+ICsKPiA+ICtSZXR1cm5zIHdoZXRo
ZXIgZmlsZXN5c3RlbXMgb24gdG9wIG9mIHRoZSB2b2x1bWUgbmVlZCB0byBmbHVzaCB0aGVpciBq
b3VybmFsIGZvcgo+ID4gK2NvbnNpc3RlbmN5IGJlZm9yZSBhIHNuYXBzaG90IGlzIHRha2VuLiBT
ZWUgTDxmc2ZyZWV6ZSg4KT4uCj4gPiArCj4gPiArVGhpcyBpcyBuZWVkZWQgZm9yIGNvbnRhaW5l
ciBtb3VudHBvaW50cy4KPgo+IHRoaXMgZG9lc24ndCByZWFsbHkgdGVsbCBtZSB3aGF0IEkgc2hv
dWxkIGRvIGhlcmUgZWl0aGVyLi4gKGFuZCBpdCdzCj4gYWxzbyBhIHJlYWxseSB1Z2x5IGludGVy
YWNlIHRoYXQgd2Ugc2VlbWluZ2x5IGludHJvZHVjZWQgYmVjYXVzZSBSQkQKPiBzbmFwc2hvdHMg
Y2Fubm90IGJlIG1vdW50ZWQgUk8gb3RoZXJ3aXNlPz8gZG9lcyB0aGlzIHJlYWxseSBuZWVkIHRv
IGJlCj4gcGFydCBvZiB0aGUgcGx1Z2luIGludGVyZmFjZT8gT28pCj4KPiA+ICsKPiA+ICs9Y3V0
Cj4gPiArCj4gPiAgc3ViIHZvbHVtZV9zbmFwc2hvdF9uZWVkc19mc2ZyZWV6ZSB7Cj4gPiAgICAg
IGNyb2FrICJpbXBsZW1lbnQgbWUgaW4gc3ViLWNsYXNzXG4iOwo+ID4gIH0KPiA+ICAKPiA+ICs9
aGVhZDMgJHBsdWdpbi0+c3RvcmFnZV9jYW5fcmVwbGljYXRlKFwlc2NmZywgJHN0b3JlaWQsICRm
b3JtYXQpCj4gPiArCj4gPiArUmV0dXJucyB3aGV0aGVyIHZvbHVtZXMgaW4gYSBnaXZlbiBDPCRm
b3JtYXQ+IHN1cHBvcnQgcmVwbGljYXRpb24uCj4gPiArCj4gPiArU2VlIEM8TDw8IHBsdWdpbmRh
dGEoKXwvIiRwbHVnaW4tPnBsdWdpbmRhdGEoKSIgPj4+IGZvciBhbGwgZGlzayBmb3JtYXRzLgo+
ID4gKwo+Cj4gc2hvdWxkIHByb2JhYmx5IG5vdGUgdGhhdCByZXBsaWNhdGlvbiBpcyBsaW1pdGVk
IHRvIFpGUyBhdCB0aGUgbW9tZW50IGluCj4gYW55IGNhc2U/Cj4KPiA+ICs9Y3V0Cj4gPiArCj4g
PiAgc3ViIHN0b3JhZ2VfY2FuX3JlcGxpY2F0ZSB7Cj4gPiAgICAgIG15ICgkY2xhc3MsICRzY2Zn
LCAkc3RvcmVpZCwgJGZvcm1hdCkgPSBAXzsKPiA+ICAgICAgY3JvYWsgImltcGxlbWVudCBtZSBp
biBzdWItY2xhc3NcbiI7Cj4gPiAgfQo+ID4gIAo+ID4gKz1oZWFkMyAkcGx1Z2luLT52b2x1bWVf
aGFzX2ZlYXR1cmUoXCVzY2ZnLCAkZmVhdHVyZSwgJHN0b3JlaWQsICR2b2xuYW1lLCAkc25hcG5h
bWUgWywgJHJ1bm5pbmcsIFwlb3B0c10pCj4gPiArCj4gPiArPWhlYWQzICRwbHVnaW4tPnZvbHVt
ZV9oYXNfZmVhdHVyZSguLi4pCj4gPiArCj4gPiArQjxSRVFVSVJFRDo+IE11c3QgYmUgaW1wbGVt
ZW50ZWQgaW4gZXZlcnkgc3RvcmFnZSBwbHVnaW4uCj4gPiArCj4gPiArQ2hlY2tzIHdoZXRoZXIg
YSB2b2x1bWUgQzwkdm9sbmFtZT4gb3IgaXRzIHNuYXBzaG90IEM8JHNuYXBuYW1lPiBzdXBwb3J0
cyB0aGUKPiA+ICtnaXZlbiBDPCRmZWF0dXJlPiwgcmV0dXJuaW5nIEM8MT4gaWYgaXQgZG9lcyBh
bmQgQzx1bmRlZj4gb3RoZXJ3aXNlLiBUaGUgZ3Vlc3QKPiA+ICtvd25pbmcgdGhlIHZvbHVtZSBt
YXkgb3B0aW9uYWxseSBiZSBDPCRydW5uaW5nPi4KPgo+IHRoYXQgbGFzdCBzZW50ZW5jZSBhZ2Fp
biBkb2Vzbid0IG1ha2UgYW55IHNlbnNlIHRoZSB3YXkgaXQgaXMgcGhyYXNlZC4uCj4KPiA+ICsK
PiA+ICtDPCRmZWF0dXJlPiBtYXkgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmc6Cj4gPiArCj4gPiAr
ICAgIGNsb25lICAgICAgIyBsaW5rZWQgY2xvbmUgaXMgcG9zc2libGUKPiA+ICsgICAgY29weSAg
ICAgICAjIGZ1bGwgY2xvbmUgaXMgcG9zc2libGUKPgo+IGFjdHVhbGx5LCB0aGlzIGlzICJiaXQt
d2lzZSBjb3B5aW5nIGZyb20iIGlzIHBvc3NpYmxlLCByaWdodD8KPgo+ID4gKyAgICByZXBsaWNh
dGUgICMgcmVwbGljYXRpb24gaXMgcG9zc2libGUKPiA+ICsgICAgc25hcHNob3QgICAjIHRha2lu
ZyBhIHNuYXBzaG90IGlzIHBvc3NpYmxlCj4gPiArICAgIHNwYXJzZWluaXQgIyB2b2x1bWUgaXMg
c3BhcnNlbHkgaW5pdGlhbGl6ZWQKPiA+ICsgICAgdGVtcGxhdGUgICAjIGNvbnZlcnNpb24gdG8g
YmFzZSBpbWFnZSBpcyBwb3NzaWJsZQo+ID4gKyAgICByZW5hbWUgICAgICMgcmVuYW1pbmcgdm9s
dW1lcyBpcyBwb3NzaWJsZQo+ID4gKwo+ID4gK1doaWNoIGZlYXR1cmVzIGFyZSBhdmFpbGFibGUg
dW5kZXIgd2hpY2ggY2lyY3Vtc3RhbmNlcyBkZXBlbmRzIG9uIG11bHRpcGxlCj4gPiArZmFjdG9y
cywgc3VjaCBhcyB0aGUgdW5kZXJseWluZyBzdG9yYWdlIGltcGxlbWVudGF0aW9uLCB0aGUgZm9y
bWF0IHVzZWQsIGV0Yy4KPgo+ICphbmQgd2hldGhlciB0aGUgY29ycmVzcG9uZGluZyBndWVzdCBp
cyBjdXJyZW50bHkgcnVubmluZyosIHdoaWNoIGlzIHRoZQo+IHdob2xlIHBvaW50IG9mIHRoYXQg
cGFyYW1ldGVyIDspCj4KPiB0aGlzIHJlYWxseSBuZWVkcyB0byBleHBsYWluIHdoYXQgdGhlIHZh
bHVlcyBmb3IgdGhvc2UgZmVhdHVyZSBrZXlzCj4gbWVhbi4uCgpDb3VsZCBhZGQgYSBzZXBhcmF0
ZSBzZWN0aW9uIGZvciB0aG9zZSBrZXlzIGFzIHdlbGwsIGFzIHdpdGggY29udGVudAp0eXBlcy4g
T3RoZXJ3aXNlLCB0aGlzIGRvY3N0cmluZyB3b3VsZCBwcm9iYWJseSBibG93IHVwLgoKPgo+ID4g
K0l0J3MgYmVzdCB0byBjaGVjayBvdXQgQzxMPFBWRTo6U3RvcmFnZTo6UGx1Z2luPj4gb3IgQzxM
PFBWRTo6U3RvcmFnZTo6WkZTUG9vbFBsdWdpbj4+Cj4gPiArZm9yIGV4YW1wbGVzIG9uIGhvdyB0
byBoYW5kbGUgZmVhdHVyZXMuCj4gPiArCj4gPiArQWRkaXRpb25hbCBrZXlzIGFyZSBnaXZlbiBp
biBDPFwlb3B0cz46Cj4gPiArCj4gPiArPW92ZXIKPiA+ICsKPiA+ICs9aXRlbSAqIEM8PCB2YWxp
ZF90YXJnZXRfZm9ybWF0cyA9PiBbLi4uXSA+Pgo+ID4gKwo+ID4gK0xpc3RyZWYgb2YgZm9ybWF0
cyBmb3IgdGhlIHRhcmdldCBvZiBhIGNvcHkvY2xvbmUgb3BlcmF0aW9uIHRoYXQgdGhlIGNhbGxl
cgo+ID4gK2NvdWxkIHdvcmsgd2l0aC4gVGhlIGZvcm1hdCBvZiB0aGUgZ2l2ZW4gdm9sdW1lIGlz
IGFsd2F5cyBjb25zaWRlcmVkIHZhbGlkIGFuZAo+ID4gK2lmIG5vIGxpc3QgaXMgc3BlY2lmaWVk
LCBhbGwgZm9ybWF0cyBhcmUgY29uc2lkZXJlZCB2YWxpZC4KPiA+ICsKPiA+ICs9YmFjawo+ID4g
Kwo+ID4gKz1jdXQKPiA+ICsKPiA+ICBzdWIgdm9sdW1lX2hhc19mZWF0dXJlIHsKPiA+ICAgICAg
bXkgKCRjbGFzcywgJHNjZmcsICRmZWF0dXJlLCAkc3RvcmVpZCwgJHZvbG5hbWUsICRzbmFwbmFt
ZSwgJHJ1bm5pbmcsICRvcHRzKSA9IEBfOwo+ID4gICAgICBjcm9hayAiaW1wbGVtZW50IG1lIGlu
IHN1Yi1jbGFzc1xuIjsKPiA+ICB9Cj4gPiAgCj4gPiArPWhlYWQzICRwbHVnaW4tPm1hcF92b2x1
bWUoJHN0b3JlaWQsIFwlc2NmZywgJHZvbG5hbWUgWywgJHNuYXBuYW1lXSkKPiA+ICsKPiA+ICtC
PE9QVElPTkFMOj4gTWF5IGJlIGltcGxlbWVudGVkIGluIGEgc3RvcmFnZSBwbHVnaW4uCj4gPiAr
Cj4gPiArTWFwcyB0aGUgZGV2aWNlIGFzc2NvaWF0ZWQgd2l0aCBhIHZvbHVtZSBvciBhIHZvbHVt
ZSdzIHNuYXBzaG90IHRvIGEgZmlsZXN5c3RlbQo+Cj4gYXNzb2NpYXRlZAo+Cj4gPiArcGF0aCwg
cmV0dXJuaW5nIHRoZSBwYXRoIG9uIGNvbXBsZXRpb24uIFRoaXMgbWV0aG9kIGlzIHVzZWQgYnkg
Y29udGFpbmVycy4KPgo+IHJldHVybmluZyB0aGUgcGF0aC4gKG9idmlvdXNseSBvbiBjb21wbGV0
aW9uLCBob3cgZWxzZT8pCj4KPiBpdCdzIG5vdCBvbmx5IHVzZWQgYnkgY29udGFpbmVycywgc28g
bWF5YmUgZHJvcCB0aGF0IHBhcnQgYW5kIGluc3RlYWQKPiBub3RlIHRoYXQgaXQgb25seSBuZWVk
cyB0byBiZSBpbXBsZW1lbnRlZCBpZiBgcGF0aGAgZG9lc24ndCAoYWx3YXlzKQo+IHJldHVybiBz
dWNoIGEgcGF0aCBhbnl3YXkuCj4KPiA+ICsKPiA+ICtDPGRpZT5zIGluIGNhc2Ugb2YgZXJyb3Jz
Lgo+ID4gKwo+ID4gK0M8TDw8IHVubWFwX3ZvbHVtZSgpfC8iJHBsdWdpbi0+dW5tYXBfdm9sdW1l
KC4uLikiID4+PiBjYW4gYmUgdXNlZCB0byBkZWNsYXJlCj4gPiAraG93IHRoZSBkZXZpY2Ugc2hv
dWxkIGJlIHVubWFwcGVkLgo+Cj4gbWF5YmUganVzdCBzYXkgdGhhdCBpZiB5b3UgaW1wbGVtZW50
IG1hcCwgeW91IHNob3VsZCBhbHNvIGltcGxlbWVudAo+IHVubWFwPwo+Cj4gPiArCj4gPiArPWN1
dAo+ID4gKwo+ID4gIHN1YiBtYXBfdm9sdW1lIHsKPiA+ICAgICAgbXkgKCRjbGFzcywgJHN0b3Jl
aWQsICRzY2ZnLCAkdm9sbmFtZSwgJHNuYXBuYW1lKSA9IEBfOwo+ID4gICAgICBjcm9hayAiaW1w
bGVtZW50IG1lIGluIHN1Yi1jbGFzc1xuIjsKPiA+ICB9Cj4gPiAgCj4gPiArPWhlYWQzICRwbHVn
aW4tPnVubWFwX3ZvbHVtZSgkc3RvcmVpZCwgXCVzY2ZnLCAkdm9sbmFtZSBbLCAkc25hcG5hbWVd
KQo+ID4gKwo+ID4gK0I8T1BUSU9OQUw6PiBNYXkgYmUgaW1wbGVtZW50ZWQgaW4gYSBzdG9yYWdl
IHBsdWdpbi4KPiA+ICsKPiA+ICtVbm1hcHMgdGhlIGRldmljZSBhc3NvY2lhdGVkIHRvIGEgdm9s
dW1lIG9yIGEgdm9sdW1lJ3Mgc25hcHNob3QuCj4gPiArCj4gPiArQzxkaWU+cyBpbiBjYXNlIG9m
IGVycm9ycy4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4gPiAgc3ViIHVubWFwX3ZvbHVtZSB7Cj4g
PiAgICAgIG15ICgkY2xhc3MsICRzdG9yZWlkLCAkc2NmZywgJHZvbG5hbWUsICRzbmFwbmFtZSkg
PSBAXzsKPiA+ICAgICAgY3JvYWsgImltcGxlbWVudCBtZSBpbiBzdWItY2xhc3NcbiI7Cj4gPiAg
fQo+ID4gIAo+ID4gKz1oZWFkMyAkcGx1Z2luLT5hY3RpdmF0ZV92b2x1bWUoJHN0b3JlaWQsIFwl
c2NmZywgJHZvbG5hbWUsICRzbmFwbmFtZSBbLCBcJWNhY2hlXSkKPiA+ICsKPiA+ICs9aGVhZDMg
JHBsdWdpbi0+YWN0aXZhdGVfdm9sdW1lKC4uLikKPiA+ICsKPiA+ICtCPFJFUVVJUkVEOj4gTXVz
dCBiZSBpbXBsZW1lbnRlZCBpbiBldmVyeSBzdG9yYWdlIHBsdWdpbi4KPiA+ICsKPiA+ICtBY3Rp
dmF0ZXMgYSB2b2x1bWUgb3IgaXRzIGFzc29jaWF0ZWQgc25hcHNob3QsIG1ha2luZyBpdCBhdmFp
bGFibGUgdG8gdGhlCj4gPiArc3lzdGVtIGZvciBmdXJ0aGVyIHVzZS4gRm9yIGV4YW1wbGUsIHRo
aXMgY291bGQgbWVhbiBhY3RpdmF0aW5nIGFuIExWTSB2b2x1bWUsCj4gPiArbW91bnRpbmcgYSBa
RlMgZGF0YXNldCwgY2hlY2tpbmcgd2hldGhlciB0aGUgdm9sdW1lJ3MgZmlsZSBwYXRoIGV4aXN0
cywgZXRjLgo+ID4gKwo+ID4gK0M8ZGllPnMgaW4gY2FzZSBvZiBlcnJvcnMgb3IgaWYgYW4gb3Bl
cmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQuCj4gPiArCj4gPiArSWYgdGhpcyBpc24ndCBuZWVkZWQs
IHRoZSBtZXRob2Qgc2hvdWxkIHNpbXBseSBiZSBhIG5vLW9wLgo+Cj4gSWYgbm8gYWN0aXZhdGlv
biBpcyBuZWVkZWQsIAo+Cj4gPiArCj4gPiArVGhpcyBtZXRob2QgbWF5IHJldXNlIEw8PCBjYWNo
ZWQgaW5mb3JtYXRpb24gdmlhIEM8XCVjYWNoZT58LyJDQUNISU5HIEVYUEVOU0lWRSBPUEVSQVRJ
T05TIiA+Pi4KPiA+ICsKPiA+ICs9Y3V0Cj4gPiArCj4gPiAgc3ViIGFjdGl2YXRlX3ZvbHVtZSB7
Cj4gPiAgICAgIG15ICgkY2xhc3MsICRzdG9yZWlkLCAkc2NmZywgJHZvbG5hbWUsICRzbmFwbmFt
ZSwgJGNhY2hlKSA9IEBfOwo+ID4gICAgICBjcm9hayAiaW1wbGVtZW50IG1lIGluIHN1Yi1jbGFz
c1xuIjsKPiA+ICB9Cj4gPiAgCj4gPiArPWhlYWQzICRwbHVnaW4tPmRlYWN0aXZhdGVfdm9sdW1l
KCRzdG9yZWlkLCBcJXNjZmcsICR2b2xuYW1lLCAkc25hcG5hbWUgWywgXCVjYWNoZV0pCj4gPiAr
Cj4gPiArPWhlYWQzIGRlYWN0aXZhdGVfdm9sdW1lKC4uLikKPiA+ICsKPiA+ICtCPFJFUVVJUkVE
Oj4gTXVzdCBiZSBpbXBsZW1lbnRlZCBpbiBldmVyeSBzdG9yYWdlIHBsdWdpbi4KPiA+ICsKPiA+
ICtEZWFjdGl2YXRlcyBhIHZvbHVtZSBvciBpdHMgYXNzb2NpYXRlZCBzbmFwc2hvdCwgbWFraW5n
IGl0IHVuYXZhaWxhYmxlIHRvCj4gPiArdGhlIHN5c3RlbS4gRm9yIGV4YW1wbGUsIHRoaXMgY291
bGQgbWVhbiBkZWFjdGl2YXRpbmcgYW4gTFZNIHZvbHVtZSwKPiA+ICt1bm1hcHBpbmcgYSBDZXBo
L1JCRCBkZXZpY2UsIGV0Yy4KPiA+ICsKPiA+ICtJZiB0aGlzIGlzbid0IG5lZWRlZCwgdGhlIG1l
dGhvZCBzaG91bGQgc2ltcGx5IGJlIGEgbm8tb3AuCj4KPiBJZiBkZWFjdGl2YXRpb24gaXMgbm90
IG5lZWRlZC9ub3QgcG9zc2libGUsCj4KPiBzaG91bGQgd2Ugbm90ZSBoZXJlIHRoYXQgZGVhY3Rp
dmF0aW9uIHdpbGwgbm90IGhhcHBlbiBmb3IgZXZlcnkKPiBhY3RpdmF0aW9uLCBidXQgb25seSB3
aGVuIHdlIGtub3cgZm9yIHN1cmUgdGhhdCB0aGUgdm9sdW1lIGlzIG5vIGxvbmdlcgo+IG5lZWRl
ZCwgc3VjaCBhcyBiZWZvcmUgaXQgaXMgcmVtb3ZlZCBvciB3aGVuIGl0cyBvd25lciBpcyBtaWdy
YXRlZCB0bwo+IGFub3RoZXIgbm9kZT8KCk9oLCB5ZXMuIFZlcnkgZ29vZCBwb2ludCEKCj4KPiA+
ICsKPiA+ICtUaGlzIG1ldGhvZCBtYXkgcmV1c2UgTDw8IGNhY2hlZCBpbmZvcm1hdGlvbiB2aWEg
QzxcJWNhY2hlPnwvIkNBQ0hJTkcgRVhQRU5TSVZFIE9QRVJBVElPTlMiID4+Lgo+ID4gKwo+ID4g
Kz1jdXQKPiA+ICsKPiA+ICBzdWIgZGVhY3RpdmF0ZV92b2x1bWUgewo+ID4gICAgICBteSAoJGNs
YXNzLCAkc3RvcmVpZCwgJHNjZmcsICR2b2xuYW1lLCAkc25hcG5hbWUsICRjYWNoZSkgPSBAXzsK
PiA+ICAgICAgY3JvYWsgImltcGxlbWVudCBtZSBpbiBzdWItY2xhc3NcbiI7Cj4gPiAgfQo+ID4g
IAo+ID4gKz1oZWFkMyAkcGx1Z2luLT5yZW5hbWVfdm9sdW1lKC4uLikKPiA+ICsKPiA+ICs9aGVh
ZDMgJHBsdWdpbi0+cmVuYW1lX3ZvbHVtZShcJXNjZmcsICRzdG9yZWlkLCAkc291cmNlX3ZvbG5h
bWUsICR0YXJnZXRfdm1pZCwgJHRhcmdldF92b2xuYW1lKQo+ID4gKwo+ID4gK0I8T1BUSU9OQUw6
PiBNYXkgYmUgaW1wbGVtZW50ZWQgaW4gYSBzdG9yYWdlIHBsdWdpbi4KPiA+ICsKPiA+ICtSZW5h
bWVzIHRoZSB2b2x1bWUgZ2l2ZW4gYnkgQzwkc291cmNlX3ZvbG5hbWU+IHRvIEM8JHRhcmdldF92
b2xuYW1lPiBhbmQgYXNzaWducwo+ID4gK2l0IHRvIHRoZSBndWVzdCBDPCR0YXJnZXRfdm1pZD4u
IFJldHVybnMgdGhlIHZvbHVtZSBJRCBvZiB0aGUgcmVuYW1lZCB2b2x1bWUuCj4gPiArCj4gPiAr
VGhpcyBtZXRob2QgaXMgbmVlZGVkIGZvciB0aGUgSTxDaGFuZ2UgT3duZXI+IGZlYXR1cmUuCj4g
PiArCj4gPiArQzxkaWU+cyBpZiB0aGUgcmVuYW1lIGZhaWxlZC4KPiA+ICsKPiA+ICs9Y3V0Cj4g
PiArCj4gPiAgc3ViIHJlbmFtZV92b2x1bWUgewo+ID4gICAgICBteSAoJGNsYXNzLCAkc2NmZywg
JHN0b3JlaWQsICRzb3VyY2Vfdm9sbmFtZSwgJHRhcmdldF92bWlkLCAkdGFyZ2V0X3ZvbG5hbWUp
ID0gQF87Cj4gPiAgICAgIGNyb2FrICJpbXBsZW1lbnQgbWUgaW4gc3ViLWNsYXNzXG4iOwo+ID4g
IH0KPiA+ICAKPiA+ICs9aGVhZDMgJHBsdWdpbi0+cHJ1bmVfYmFja3VwcyhcJXNjZmcsICRzdG9y
ZWlkIFssIFwla2VlcCwgJHZtaWQsICR0eXBlLCAkZHJ5cnVuLCBcJmxvZ2Z1bmNdKQo+ID4gKwo+
ID4gKz1oZWFkMyAkcGx1Z2luLT5wcnVuZV9iYWNrdXBzKC4uLikKPiA+ICsKPiA+ICtFeHBvcnQg
YSB2b2x1bWUgaW50byBhIGZpbGUgaGFuZGxlIGFzIGEgc3RyZWFtIHdpdGggYSBkZXNpcmVkIGZv
cm1hdC4KPgo+IGNvcHktcGFzdGUgbWlzdGFrZT8gOykKPgo+ID4gKwo+ID4gK0M8ZGllPnMgaWYg
dGhlcmUgYXJlIChncmF2ZSkgcHJvYmxlbXMgd2hpbGUgcHJ1bmluZy4KPiA+ICsKPiA+ICtUaGlz
IG1ldGhvZCBtYXkgdGFrZSBzZXZlcmFsIG9wdGlvbmFsIHBhcmFtZXRlcnM6Cj4gPiArCj4gPiAr
PW92ZXIKPiA+ICsKPiA+ICs9aXRlbSAqIEM8PCBcJWtlZXAgPj4KPiA+ICsKPiA+ICtBIGhhc2hy
ZWYgY29udGFpbmluZyBiYWNrdXAgcmV0ZW50aW9uIHBvbGljaWVzLiBJdCBoYXMgdGhlIGZvbGxv
d2luZyBzdHJ1Y3R1cmU6Cj4gPiArCj4gPiArICAgIHsKPiA+ICsJJ2tlZXAtYWxsJyAgICAgPT4g
MSAjIChvcHRpb25hbCkgV2hldGhlciB0byBrZWVwIGFsbCBiYWNrdXBzLgo+ID4gKwkgICAgICAg
ICAgICAgICAgICAgICMgQ29uZmxpY3RzIHdpdGggdGhlIG90aGVyIG9wdGlvbnMgd2hlbiB0cnVl
Lgo+ID4gKwkna2VlcC1sYXN0JyAgICA9PiBOICMgKG9wdGlvbmFsKSBLZWVwIHRoZSBsYXN0IE4g
YmFja3Vwcy4KPiA+ICsJJ2tlZXAtaG91cmx5JyAgPT4gTiAjIChvcHRpb25hbCkgS2VlcCBiYWNr
dXBzIGZvciB0aGUgbGFzdCBOIGRpZmZlcmVudCBob3Vycy4KPiA+ICsJCQkgICAgIyBJZiB0aGVy
ZSBpcyBtb3JlIHRoYW4gb25lIGJhY2t1cCBmb3IgYSBzaW5nbGUKPiA+ICsJCQkgICAgIyBob3Vy
LCBvbmx5IHRoZSBsYXRlc3Qgb25lIGlzIGtlcHQuCj4gPiArCSdrZWVwLWRhaWx5JyAgID0+IE4g
IyAob3B0aW9uYWwpIEtlZXAgYmFja3VwcyBmb3IgdGhlIGxhc3QgTiBkaWZmZXJlbnQgZGF5cy4K
PiA+ICsJCQkgICAgIyBJZiB0aGVyZSBpcyBtb3JlIHRoYW4gb25lIGJhY2t1cCBmb3IgYSBzaW5n
bGUKPiA+ICsJCQkgICAgIyBkYXksIG9ubHkgdGhlIGxhdGVzdCBvbmUgaXMga2VwdC4KPiA+ICsJ
J2tlZXAtd2Vla2x5JyAgPT4gTiAjIChvcHRpb25hbCkgS2VlcCBiYWNrdXBzIGZvciB0aGUgbGFz
dCBOIGRpZmZlcmVudCB3ZWVrcy4KPiA+ICsJCQkgICAgIyBJZiB0aGVyZSBpcyBtb3JlIHRoYW4g
b25lIGJhY2t1cCBmb3IgYSBzaW5nbGUKPiA+ICsJCQkgICAgIyB3ZWVrLCBvbmx5IHRoZSBsYXRl
c3Qgb25lIGlzIGtlcHQuCj4gPiArCSdrZWVwLW1vbnRobHknID0+IE4gIyAob3B0aW9uYWwpIEtl
ZXAgYmFja3VwcyBmb3IgdGhlIGxhc3QgTiBkaWZmZXJlbnQgbW9udGhzLgo+ID4gKwkJCSAgICAj
IElmIHRoZXJlIGlzIG1vcmUgdGhhbiBvbmUgYmFja3VwIGZvciBhIHNpbmdsZQo+ID4gKwkJCSAg
ICAjIG1vbnRoLCBvbmx5IHRoZSBsYXRlc3Qgb25lIGlzIGtlcHQuCj4gPiArCSdrZWVwLXllYXJs
eScgID0+IE4gIyAob3B0aW9uYWwpIEtlZXAgYmFja3VwcyBmb3IgdGhlIGxhc3QgTiBkaWZmZXJl
bnQgeWVhcnMuCj4gPiArCQkJICAgICMgSWYgdGhlcmUgaXMgbW9yZSB0aGFuIG9uZSBiYWNrdXAg
Zm9yIGEgc2luZ2xlCj4gPiArCQkJICAgICMgeWVhciwgb25seSB0aGUgbGF0ZXN0IG9uZSBpcyBr
ZXB0Lgo+ID4gKyAgICB9Cj4KPiBzaG91bGQgd2UgYWRkIGEgcG9pbnRlciB0byBkb2NzIGhlcmU/
IG9yIHRvCj4gUFZFOjpTdG9yYWdlOjpwcnVuZV9tYXJrX2JhY2t1cF9ncm91cD8gYW5kIHNob3Vs
ZCB0aGF0IG9yIGl0cyBib2R5IGJlCj4gbW92ZWQgc29tZXdoZXJlIGVsc2U/CgpZZWFoLCBJJ2xs
IHNlZSB3aGF0IEkgY2FuIGRvIGhlcmUhCgo+Cj4gPiArCj4gPiArPWl0ZW0gKiBDPDwgJHZtaWQg
Pj4KPiA+ICsKPiA+ICtUaGUgZ3Vlc3QncyBJRC4KPiA+ICsKPiA+ICs9aXRlbSAqIEM8PCAkdHlw
ZSA+Pgo+ID4gKwo+ID4gK1RoZSB0eXBlIG9mIGd1ZXN0LiBXaGVuIEM8ZGVmaW5lZD4sIGl0IGNh
biBiZSBvbmUgb2YgQzwicWVtdSI+IG9yIEM8Imx4YyI+Lgo+ID4gK0lmIEM8dW5kZWZpbmVkPiwg
Ym90aCB0eXBlcyBvZiBiYWNrdXBzIHdpbGwgYmUgcHJ1bmVkLgo+ID4gKwo+ID4gKz1pdGVtICog
Qzw8ICRkcnlfcnVuID4+Cj4gPiArCj4gPiArV2hldGhlciB0aGlzIGlzIGEgZHJ5IHJ1bi4gSWYg
c2V0IHRvIEM8MT4gdGhlcmUgd29uJ3QgYmUgYW55IGNoYW5nZSBvbiB0aGUKPiA+ICt1bmRlcmx5
aW5nIHN0b3JhZ2UuCj4gPiArCj4gPiArPWl0ZW0gKiBDPDwgXCZsb2dmdW5jID4+Cj4gPiArCj4g
PiArQSBzdWJyb3V0aW5lIHJlZiB0aGF0IGNhbiBiZSB1c2VkIHRvIGxvZyBtZXNzYWdlcyB3aXRo
IHRoZSBmb2xsb3dpbmcgc2lnbmF0dXJlOgo+ID4gKwo+ID4gKyAgICAkbG9nZnVuYy0+KCRzZXZl
cml0eSwgJG1lc3NhZ2UpCj4gPiArCj4gPiArd2hlcmUgJHNldmVyaXR5IGNhbiBiZSBvbmUgb2Yg
QzwiaW5mbyI+LCBDPCJlcnIiPiwgb3IgQzwid2FybiI+Lgo+ID4gKwo+ID4gKz1iYWNrCj4gPiAr
Cj4gPiArPWN1dAo+ID4gKwo+ID4gIHN1YiBwcnVuZV9iYWNrdXBzIHsKPiA+ICAgICAgbXkgKCRj
bGFzcywgJHNjZmcsICRzdG9yZWlkLCAka2VlcCwgJHZtaWQsICR0eXBlLCAkZHJ5cnVuLCAkbG9n
ZnVuYykgPSBAXzsKPiA+ICAgICAgY3JvYWsgImltcGxlbWVudCBtZSBpbiBzdWItY2xhc3NcbiI7
Cj4gPiAtLSAKPiA+IDIuMzkuNQo+ID4gCj4gPiAKPiA+IAo+ID4gX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+IHB2ZS1kZXZlbCBtYWlsaW5nIGxpc3QK
PiA+IHB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQo+ID4gaHR0cHM6Ly9saXN0cy5wcm94bW94
LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vcHZlLWRldmVsCj4gPiAKPiA+IAo+ID4gCj4K
Pgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gcHZl
LWRldmVsIG1haWxpbmcgbGlzdAo+IHB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQo+IGh0dHBz
Oi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJpbi9tYWlsbWFuL2xpc3RpbmZvL3B2ZS1kZXZlbAoK
CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdmUtZGV2
ZWwgbWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3Rz
LnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wdmUtZGV2ZWwK