Re: master: Perform local common subexpression elimination for some memory loads

Stas Boukarev <[email protected]> Tue, 4 Aug 2026 17:44:16 +0300
Newsgroups gmane.lisp.steel-bank.cvs,gmane.lisp.steel-bank.devel
Message-ID <CAF63=11aG9S2EAd-a_t5f3RiEOweTe60AA=J5yVWVJa5xaqpxg@mail.gmail.com>
PkVzcGVjaWFsbHkgYmVjYXVzZSBsb2NhbCBDU0UgZG9lcyBub3QgdHJpZ2dlciBvdGhlciBmcm9u
dCBlbmQgb3B0aW1pemF0aW9ucyBvciBpbXByb3ZlIHR5cGUgaW5mZXJlbmNlLgpJdCBhY3R1YWxs
eSBkb2VzIChvdGhlciB0aGluZ3MgY291bGQgZG8gdGhlIHNhbWUpLgpJdCBmb3VuZCB0aGlzIGJ1
ZzoKKGNvbmQgKChhbmQgc3RyaW5ncy1hbmQtZGVsYXlzCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5ncCAoZmlyc3QKc3RyaW5ncy1hbmQtZGVsYXlz
KSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldGYgKGZpcnN0
IHN0cmluZ3MtYW5kLWRlbGF5cykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAoY29uY2F0ZW5hdGUgKGZpcnN0CnN0cmluZ3MtYW5kLWRlbGF5cykgOzsgZGVy
aXZlZCBhcyBhIHN0cmluZywgbWlzc2luZyB0aGUgdHlwZSBhcmd1bWVudC4KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkLXN0cmlu
ZykpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHQKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocHVzaCBwYWQtc3RyaW5nIHN0cmluZ3Mt
YW5kLWRlbGF5cykpKQoKCk9uIFR1ZSwgQXVnIDQsIDIwMjYgYXQgMTozMOKAr1BNIENoYXJsZXMg
WmhhbmcgdmlhIFNiY2wtY29tbWl0cwo8c2JjbC1jb21taXRzQGxpc3RzLnNvdXJjZWZvcmdlLm5l
dD4gd3JvdGU6Cj4KPiBXb3VsZG7igJl0IHRoaXMgb3B0aW1pemF0aW9uIGJlIGJldHRlciBvZmYg
ZG9uZSBpbiBJUjI/IElmIHdlIGFyZSB3b3JraW5nIGhhcmQgdG8gYXBwcm94aW1hdGUgd2hhdCB0
aGUgdm9wcyBhbmQgbWVtb3J5IGxvYWRzIHdvdWxkIGVuZCB1cCBkb2luZy4KPgo+IE1hbnkgYWR2
YW50YWdlczoKPgo+IC0gUG9zc2libGUgdG8gZXN0aW1hdGUgd2hldGhlciBpdCB3b3VsZCBpbXBh
Y3Qgc3RhY2sgdXNhZ2UuCj4gLSBDb3N0IG1vZGVsIHdpdGggcmVnaXN0ZXIgYWxsb2NhdG9yIHBv
c3NpYmxlCj4gLSBBY2N1cmF0ZSB2b3AgY29zdHMKPiAtIE5vIHNoZW5hbmlnYW5zIGFyb3VuZCBk
aWZmZXJlbnQgbGFtYmRhIHJlcHJlc2VudGF0aW9ucwo+IC0gVE5zIGFyZSBtb3JlIGFtZW5hYmxl
IHRvIHZhbHVlIG51bWJlcmluZy4KPiAtIEVudmlyb25tZW50IGFuYWx5c2lzIGFscmVhZHkgZG9u
ZS4KPiAtIElyMSBvcHRpbWl6ZXJzIG5vdCBpbXBhY3RlZAo+IC0gVHlwZSBjaGVja2luZyBwb3Nz
aWJsZSB0byBDU0UKPgo+IEVzcGVjaWFsbHkgYmVjYXVzZSBsb2NhbCBDU0UgZG9lcyBub3QgdHJp
Z2dlciBvdGhlciBmcm9udCBlbmQgb3B0aW1pemF0aW9ucyBvciBpbXByb3ZlIHR5cGUgaW5mZXJl
bmNlLgo+Cj4gT24gVHVlc2RheSwgQXVndXN0IDQsIDIwMjYsIDY6MTggQU0sIFN0YXMgQm91a2Fy
ZXYgPHN0YXNzYXRzQGdtYWlsLmNvbT4gd3JvdGU6Cj4KPiAoZGVmdW4gajIgKHggbikKPiAgIChk
ZWNsYXJlIChvcHRpbWl6ZSAoZGVidWcgMCkpKQo+ICAgKGxldCAoKHkgKDErIHgpKSkKPiAgICAg
KGxpc3QgKDErIChjYXIgbikpCj4gICAgICAgICAgIChjYXIgbikKPiAgICAgICAgICAgKGNkciBu
KQo+ICAgICAgICAgICB5IHkpKSkKPiBpbmNyZWFzZXMgc3RhY2sgdXNhZ2UgZHVlIHRvIGhhdmlu
ZyB0byBzYXZlIHRoZSBuZXcgc2hhcmVkIHZhcmlhYmxlIG9uCj4gdGhlIHN0YWNrLgo+Cj4gT24g
VHVlLCBBdWcgNCwgMjAyNiBhdCA3OjA04oCvQU0gU3RhcyBCb3VrYXJldiA8c3Rhc3NhdHNAZ21h
aWwuY29tPiB3cm90ZToKPiA+Cj4gPiAoZGVmdW4gayAoeCBuKQo+ID4gIChsZXQgKCh5ICgxKyB4
KSkpCj4gPiAgICAodmFsdWVzIHkgeQo+ID4gICAgICAgICAgICAoZXEgKGNhciAoY29weS10cmVl
IG4pKQo+ID4gICAgICAgICAgICAgICAgKGNhciAoY29weS10cmVlIG4pKSkpKSkKPiA+ID0+Cj4g
PiAoayAxICcoKDEpKSkKPiA+ID0+Cj4gPiAyCj4gPiAyCj4gPiBUCj4gPgo+ID4gT24gVHVlLCBB
dWcgNCwgMjAyNiBhdCA2OjQ34oCvQU0gU3RhcyBCb3VrYXJldiA8c3Rhc3NhdHNAZ21haWwuY29t
PiB3cm90ZToKPiA+ID4KPiA+ID4gKGRlZnVuIGogKHgpCj4gPiA+ICAobGV0ICgoeSAoMSsgeCkp
KQo+ID4gPiAgICAodmFsdWVzIHkgeQo+ID4gPiAgICAgICAgICAgIChjYXIgKikKPiA+ID4gICAg
ICAgICAgICAoc2V0ZiAqICcoYikpCj4gPiA+ICAgICAgICAgICAgKGNhciAqKSkpKQo+ID4gPiAo
bGV0ICgoKiAnKGEpKSkgKGogMSkpCj4gPiA+ID0+Cj4gPiA+IDIKPiA+ID4gMgo+ID4gPiBBCj4g
PiA+IChCKQo+ID4gPiBBCj4gPiA+Cj4gPiA+IE9uIFR1ZSwgQXVnIDQsIDIwMjYgYXQgNDoyMuKA
r0FNIFN0YXMgQm91a2FyZXYgPHN0YXNzYXRzQGdtYWlsLmNvbT4gd3JvdGU6Cj4gPiA+ID4KPiA+
ID4gPiAoZGVmc3RydWN0IHMKPiA+ID4gPiAgKHggKG1ha2UtYXJyYXkgMykpKQo+ID4gPiA+Cj4g
PiA+ID4gKGxldCAoKikKPiA+ID4gPiAgKGxhbWJkYSAoKQo+ID4gPiA+ICAgIChsZXQqICgocyAj
LihtYWtlLXMpKQo+ID4gPiA+ICAgICAgICAgICAgKGEgKHMteCBzKSkKPiA+ID4gPiAgICAgICAg
ICAgIChiIChzLXggcykpKQo+ID4gPiA+ICAgICAgKHZhbHVlcyAoYXJlZiBhIDApCj4gPiA+ID4g
ICAgICAgICAgICAgIChhcmVmIGIgMCkpKSkpCj4gPiA+ID4KPiA+ID4gPgo+ID4gPiA+IGRlYnVn
Z2VyIGludm9rZWQgb24gYSBTQi1JTlQ6QlVHIEBCODAwN0I4NUFEIGluIHRocmVhZAo+ID4gPiA+
ICM8VEhSRUFEIHRpZD0xOTg2NDAyICJtYWluIHRocmVhZCIgUlVOTklORyB7MTIwMTRGMDAwM30+
Ogo+ID4gPiA+ICAgIGZhaWxlZCBBVkVSOiAoRVEgRU5WIChMQU1CREEtRU5WSVJPTk1FTlQgKExB
TUJEQS1WQVItSE9NRSBUSElORykpKQo+ID4gPiA+Cj4gPiA+ID4gT24gVHVlLCBBdWcgNCwgMjAy
NiBhdCAzOjU54oCvQU0gc251Z2xhcyB2aWEgU2JjbC1jb21taXRzCj4gPiA+ID4gPHNiY2wtY29t
bWl0c0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+IHdyb3RlOgo+ID4gPiA+ID4KPiA+ID4gPiA+IFRo
ZSBicmFuY2ggIm1hc3RlciIgaGFzIGJlZW4gdXBkYXRlZCBpbiBTQkNMOgo+ID4gPiA+ID4gICAg
ICAgIHZpYSAgMTAwYzljMmJkY2RjYjg0ZmYwNGM4ZmVlZjk4M2E1YjQ0Njk1Yzk3YSAoY29tbWl0
KQo+ID4gPiA+ID4gICAgICBmcm9tICBiNTQxZjJmMjViMTRiNjJmY2FiN2UxNGFhNTEyNGRiNWRk
MWQ2YjIwIChjb21taXQpCj4gPiA+ID4gPgo+ID4gPiA+ID4gLSBMb2cgLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4g
PiA+IGNvbW1pdCAxMDBjOWMyYmRjZGNiODRmZjA0YzhmZWVmOTgzYTViNDQ2OTVjOTdhCj4gPiA+
ID4gPiBBdXRob3I6IERvdWdsYXMgS2F0em1hbiA8ZG91Z2tAZ29vZ2xlLmNvbT4KPiA+ID4gPiA+
IERhdGU6ICBUdWUgQXVnIDQgMDA6NTg6MjEgMjAyNiArMDAwMAo+ID4gPiA+ID4KPiA+ID4gPiA+
ICAgIFBlcmZvcm0gbG9jYWwgY29tbW9uIHN1YmV4cHJlc3Npb24gZWxpbWluYXRpb24gZm9yIHNv
bWUgbWVtb3J5IGxvYWRzCj4gPiA+ID4gPgo+ID4gPiA+ID4gICAgVGhlIHRlY2huaXF1ZSBpcyB0
byBmaW5kICJlcXVpdmFsZW50IiBsb2FkcyBpbiBiZXR3ZWVuIHdoaWNoIHRoZXJlIGlzIG5vCj4g
PiA+ID4gPiAgICBjb21wdXRhdGlvbiB0aGF0IGFmZmVjdHMgdGhlIHJlc3VsdCBvZiB0aGUgbG9h
ZC4gQWxzbyBpdCBuZWVkcyBhIHN1cnJvdW5kaW5nCj4gPiA+ID4gPiAgICBMRVQsIHdoaWNoIGlz
IGF1Z21lbnRlZCB3aXRoIGEgbmV3IHRlbXAgdmFyaWFibGUgYXMgaWYgdGhlIHVzZXIgZGlkIHRo
YXQuCj4gPiA+ID4gPiAgICBUaGlzIGlzIHNsaWdodGx5IGRlZmljaWVudCBmb3IgdmFyaW91cyBy
ZWFzb25zOgo+ID4gPiA+ID4gICAgMS4gaXQgd29uJ3QgZG8gYW55dGhpbmcgd2l0aG91dCB0aGUg
TEVUCj4gPiA+ID4gPiAgICAyLiB0aGUgbW9yZSBraW5kcyBvZiBjb21tb24gc3ViZXhwcmVzc2lv
bnMgd2UgYWxsb3cgKHN1Y2ggYXMgbWF0aCksCj4gPiA+ID4gPiAgICAgICAgdGhlIHNsb3dlciBJ
UjEtT1BUSU1JWkUtQ09NQklOQVRJT04gaXMgZ29pbmcgdG8gcnVuCj4gPiA+ID4gPiAgICAzLiB0
aGVyZSBhcmUgcG9zc2libHkgb3RoZXIgbm9kZSB0eXBlcyB0aGF0IHNob3VsZCBiZSBhbGxvd2Vk
IHRvIGludGVydmVuZQo+ID4gPiA+ID4KPiA+ID4gPiA+ICAgIE9uIHRoZSBwbHVzIHNpZGUsIGl0
J3Mgbm90IGFsbCB0aGF0IGhhcmQgdG8gZXh0ZW5kIHRoZSBsb2dpYyB0byBhY2NlcHQKPiA+ID4g
PiA+ICAgIG90aGVyIGZ1bmN0aW9ucyBhcyBwYXJ0aWNpcGFudHMgaW4gY29tbW9uIHN1YmV4cHJl
c3Npb25zLgo+ID4gPiA+ID4KPiA+ID4gPiA+ICAgIEFsbCB0ZXN0IGNhc2VzIHBsdXMgYSBsaXR0
bGUgYml0IG9mIGFzc2lzdGFuY2UgZnJvbSBHZW1pbmkKPiA+ID4gPiA+IC0tLQo+ID4gPiA+ID4g
IHNyYy9jb21waWxlci9pcjFvcHQubGlzcCB8IDE3OSArKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysKPiA+ID4gPiA+ICB0ZXN0cy9sY3NlLnB1cmUubGlzcCAgICB8IDIzNCArKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gPiA+ID4gIHhw
ZXJmZWN0aGFzaDMwLmxpc3AtZXhwciB8ICAzICsKPiA+ID4gPiA+ICB4cGVyZmVjdGhhc2g2MS5s
aXNwLWV4cHIgfCAgMyArCj4gPiA+ID4gPiAgeHBlcmZlY3RoYXNoNjMubGlzcC1leHByIHwgIDMg
Kwo+ID4gPiA+ID4gIDUgZmlsZXMgY2hhbmdlZCwgNDIyIGluc2VydGlvbnMoKykKPiA+ID4gPiA+
Cj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvc3JjL2NvbXBpbGVyL2lyMW9wdC5saXNwIGIvc3JjL2Nv
bXBpbGVyL2lyMW9wdC5saXNwCj4gPiA+ID4gPiBpbmRleCA4NTU5ODI0ZjEuLmRhYzM5M2UzMSAx
MDA2NDQKPiA+ID4gPiA+IC0tLSBhL3NyYy9jb21waWxlci9pcjFvcHQubGlzcAo+ID4gPiA+ID4g
KysrIGIvc3JjL2NvbXBpbGVyL2lyMW9wdC5saXNwCj4gPiA+ID4gPiBAQCAtMTIyMCw2ICsxMjIw
LDE4MiBAQAo+ID4gPiA+ID4gICAgICAgICAgICAgIChzaG93LXR5cGUtZGVyaXZhdGlvbiBjb21i
aW5hdGlvbiByZXMpKQo+ID4gPiA+ID4gICAgICAgICAgICAoY29lcmNlLXRvLXZhbHVlcyByZXMp
KSkpKSkKPiA+ID4gPiA+Cj4gPiA+ID4gPiArKGRlZnVuIGNvbGxlY3QtbHZhci12YXJzIChsdmFy
KQo+ID4gPiA+ID4gKyAgKGRlY2xhcmUgKHR5cGUgbHZhciBsdmFyKSkKPiA+ID4gPiA+ICsgIChs
ZXQgKCh1c2UgKHByaW5jaXBhbC1sdmFyLXVzZSBsdmFyKSkpCj4gPiA+ID4gPiArICAgIChjb25k
ICgocmVmLXAgdXNlKQo+ID4gPiA+ID4gKyAgICAgICAgICAobGV0ICgobGVhZiAocmVmLWxlYWYg
dXNlKSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgKHdoZW4gKGxhbWJkYS12YXItcCBsZWFmKQo+
ID4gPiA+ID4gKyAgICAgICAgICAgICAgKGxpc3QgbGVhZikpKSkKPiA+ID4gPiA+ICsgICAgICAg
ICAgKChjb21iaW5hdGlvbi1wIHVzZSkKPiA+ID4gPiA+ICsgICAgICAgICAgKG1hcGNhbiAjJ2Nv
bGxlY3QtbHZhci12YXJzIChiYXNpYy1jb21iaW5hdGlvbi1hcmdzIHVzZSkpKQo+ID4gPiA+ID4g
KyAgICAgICAgICAodCBuaWwpKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArKGRlZnVuIGZpbmQt
YWN0aXZlLWxldC1sYW1iZGEgKG5vZGUpCj4gPiA+ID4gPiArICAoZGVjbGFyZSAodHlwZSBub2Rl
IG5vZGUpKQo+ID4gPiA+ID4gKyAgKGxvb3AgZm9yIGVudiA9IChub2RlLWxleGVudiBub2RlKSB0
aGVuIChsZXhlbnYtcGFyZW50IGVudikKPiA+ID4gPiA+ICsgICAgICAgIHdoaWxlIGVudgo+ID4g
PiA+ID4gKyAgICAgICAgZG8gKGxldCAoKGwgKGxleGVudi1sYW1iZGEgZW52KSkpCj4gPiA+ID4g
PiArICAgICAgICAgICAgKHdoZW4gKGFuZCBsCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAg
ICAgICAgKGZ1bmN0aW9uYWwta2luZC1lcSBsIGxldCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAg
ICAgICAgICAgICAobm90IChmdW5jdGlvbmFsLWtpbmQtZXEgbCB6b21iaWUpKSkKPiA+ID4gPiA+
ICsgICAgICAgICAgICAgIChyZXR1cm4gbCkpKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArKGRl
ZnVuIGFkZC12YXJpYWJsZS10by1sZXQtbGFtYmRhIChsZXQtbGFtYmRhIHYpCj4gPiA+ID4gPiAr
ICAoZGVjbGFyZSAodHlwZSBjbGFtYmRhIGxldC1sYW1iZGEpCj4gPiA+ID4gPiArICAgICAgICAg
ICh0eXBlIGxhbWJkYS12YXIgdikpCj4gPiA+ID4gPiArICAoc2V0ZiAobGFtYmRhLXZhci1ob21l
IHYpIGxldC1sYW1iZGEpCj4gPiA+ID4gPiArICAoc2V0ZiAobGFtYmRhLXZhcnMgbGV0LWxhbWJk
YSkgKGFwcGVuZCAobGFtYmRhLXZhcnMgbGV0LWxhbWJkYSkgKGxpc3QgdikpKQo+ID4gPiA+ID4g
KyAgOzsgVXBkYXRlIHRoZSBjYWxsIHRvIHRoZSBMRVQgbGFtYmRhCj4gPiA+ID4gPiArICAobGV0
KiAoKHJlZiAoY2FyIChsZWFmLXJlZnMgbGV0LWxhbWJkYSkpKQo+ID4gPiA+ID4gKyAgICAgICAg
KGNhbGwgKGFuZCByZWYKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgIChub2RlLWx2YXIg
cmVmKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgKGx2YXItZGVzdCAobm9kZS1sdmFy
IHJlZikpKSkpCj4gPiA+ID4gPiArICAgICh3aGVuIChhbmQgY2FsbCAoY29tYmluYXRpb24tcCBj
YWxsKSkKPiA+ID4gPiA+ICsgICAgICAobGV0ICgoZHVtbXktbHZhciAobWFrZS1sdmFyKSkpCj4g
PiA+ID4gPiArICAgICAgICAoc2V0ZiAobHZhci1kZXN0IGR1bW15LWx2YXIpIGNhbGwpCj4gPiA+
ID4gPiArICAgICAgICAoc2V0ZiAoYmFzaWMtY29tYmluYXRpb24tYXJncyBjYWxsKQo+ID4gPiA+
ID4gKyAgICAgICAgICAgICAgKGFwcGVuZCAoYmFzaWMtY29tYmluYXRpb24tYXJncyBjYWxsKSAo
bGlzdCBkdW1teS1sdmFyKSkpCj4gPiA+ID4gPiArICAgICAgICAoc2V0ZiAobHZhci1kZXN0IGR1
bW15LWx2YXIpIGNhbGwpKSkpKQo+ID4gPiA+ID4gKwo+ID4gPiA+ID4gKzs7IFJldXNlIG9mIFNZ
TUJPTC1WQUxVRSBvZiBhIHNwZWNpYWwgdmFyIHdvdWxkIGJlIG5pY2UsCj4gPiA+ID4gPiArOzsg
YnV0IFNZTUJPTC1WQUxVRSBpdCBpcyBub3QgcmVwcmVzZW50ZWQgYXMgYSBjYWxsIGluIElSMQo+
ID4gPiA+ID4gKyhkZWZpbmUtbG9hZC10aW1lLWdsb2JhbCAqZWxpZGFibGUtbWVtb3J5LWxvYWRz
Kgo+ID4gPiA+ID4gKyAgICAnKGNhciBjZHIgJWluc3RhbmNlLXJlZiAlcmF3LWluc3RhbmNlLXJl
Zi93b3JkICVyYXctaW5zdGFuY2UtcmVmL3NpZ25lZC13b3JkCj4gPiA+ID4gPiArICAgICAgc2Fw
LXJlZi0xNiBzaWduZWQtc2FwLXJlZi0xNiBzYi1zeXM6OiVzYXAtcmVmLTE2LWluZGV4ZWQgc2It
c3lzOjolc2lnbmVkLXNhcC1yZWYtMTYtaW5kZXhlZAo+ID4gPiA+ID4gKyAgICAgIHNhcC1yZWYt
MzIgc2lnbmVkLXNhcC1yZWYtMzIgc2Itc3lzOjolc2FwLXJlZi0zMi1pbmRleGVkIHNiLXN5czo6
JXNpZ25lZC1zYXAtcmVmLTMyLWluZGV4ZWQKPiA+ID4gPiA+ICsgICAgICBzYXAtcmVmLTY0IHNp
Z25lZC1zYXAtcmVmLTY0IHNiLXN5czo6JXNhcC1yZWYtNjQtaW5kZXhlZCBzYi1zeXM6OiVzaWdu
ZWQtc2FwLXJlZi02NC1pbmRleGVkCj4gPiA+ID4gPiArICAgICAgc2ItYWxpZW46ZGVyZWYKPiA+
ID4gPiA+ICsgICAgICBzYi1hbGllbjphbGllbi1zYXApKQo+ID4gPiA+ID4gKwo+ID4gPiA+ID4g
Kzs7OyBMb29rIGZvciBhbnkgbm9kZSBlcXVpdmFsZW50IHRvIE1BVENIIGNvbnNkZXJpbmcgbm9k
ZXMgaW4gcmV2ZXJzZSBzdGFydGluZyBhdCBGUk9NLgo+ID4gPiA+ID4gKzs7OyBNZW1vcnkgbG9h
ZHMgZnJvbSB0aGUgc2FtZSBvYmplY3Qrc2xvdCBvciBTQVArb2Zmc2V0IGNvdWxkIGJlIGVxdWl2
YWxlbnQuCj4gPiA+ID4gPiArOzs7IE5vdGhpbmcgZWxzZSBjYW4gYmUgZXF1aXZhbGVudCAodW50
aWwgSSBlbmhhbmNlIHRoaXMpCj4gPiA+ID4gPiArKGRlZnVuIGZpbmQtZXF1aXZhbGVudC1ub2Rl
LWJhY2t3YXJkcyAobWF0Y2ggZnJvbSkKPiA+ID4gPiA+ICsgIChsYWJlbHMgKChsdmFyLWVxdWl2
YWxlbnQtcCAobDEgbDIpCj4gPiA+ID4gPiArICAgICAgICAgICAgKGRlY2xhcmUgKHR5cGUgbHZh
ciBsMSBsMikpCj4gPiA+ID4gPiArICAgICAgICAgICAgKGNvbmQgKChlcSBsMSBsMikgdCkKPiA+
ID4gPiA+ICsgICAgICAgICAgICAgICAgICAoKGFuZCAoY29uc3RhbnQtbHZhci1wIGwxKSAoY29u
c3RhbnQtbHZhci1wIGwyKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgIChlcWwgKGx2
YXItdmFsdWUgbDEpIChsdmFyLXZhbHVlIGwyKSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAg
ICAgKHQKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgIChsZXQgKCh1MSAocHJpbmNpcGFs
LWx2YXItdXNlIGwxKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICh1MiAo
cHJpbmNpcGFsLWx2YXItdXNlIGwyKSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAg
IChjb25kICgoYW5kIChyZWYtcCB1MSkgKHJlZi1wIHUyKSkKPiA+ID4gPiA+ICsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKGVxIChyZWYtbGVhZiB1MSkgKHJlZi1sZWFmIHUyKSkpCj4gPiA+
ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoYW5kIChjb21iaW5hdGlvbi1wIHUx
KSAoY29tYmluYXRpb24tcCB1MikKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKGVxIChiYXNpYy1jb21iaW5hdGlvbi1raW5kIHUxKSA6a25vd24pCj4gPiA+ID4g
PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcSAoYmFzaWMtY29tYmluYXRp
b24ta2luZCB1MikgOmtub3duKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKGNvbWJpbmF0aW9uLWVxdWl2YWxlbnQtcCB1MSB1MikpCj4gPiA+ID4gPiArICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICh0IG5pbCkpKSkpKQo+ID4gPiA+ID4gKyAgICAgICAgICAoY29t
YmluYXRpb24tZXF1aXZhbGVudC1wIChjMSBjMikKPiA+ID4gPiA+ICsgICAgICAgICAgICAoZGVj
bGFyZSAodHlwZSBjb21iaW5hdGlvbiBjMSBjMikpCj4gPiA+ID4gPiArICAgICAgICAgICAgKGFu
ZCAoZXEgKGJhc2ljLWNvbWJpbmF0aW9uLWZ1bi1pbmZvIGMxKSAoYmFzaWMtY29tYmluYXRpb24t
ZnVuLWluZm8gYzIpKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgIChsZXQgKChhcmdzMSAo
YmFzaWMtY29tYmluYXRpb24tYXJncyBjMSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAg
ICAgICAgKGFyZ3MyIChiYXNpYy1jb21iaW5hdGlvbi1hcmdzIGMyKSkpCj4gPiA+ID4gPiArICAg
ICAgICAgICAgICAgICAgICAoYW5kICg9IChsZW5ndGggYXJnczEpIChsZW5ndGggYXJnczIpKQo+
ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIChldmVyeSAjJ2x2YXItZXF1aXZhbGVu
dC1wIGFyZ3MxIGFyZ3MyKSkpKSkpCj4gPiA+ID4gPiArICAgIChkbyAoKG5vZGUgZnJvbSAoY3Ry
YW4tdXNlIChub2RlLXByZXYgbm9kZSkpKSkgKChudWxsIG5vZGUpKQo+ID4gPiA+ID4gKyAgICAg
ICh3aGVuIChhbmQgKGNvbWJpbmF0aW9uLXAgbm9kZSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAg
ICAgKGVxIChjb21iaW5hdGlvbi1raW5kIG5vZGUpIDprbm93bikKPiA+ID4gPiA+ICsgICAgICAg
ICAgICAgICAgKG5vZGUtbHZhciBub2RlKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAoY29t
YmluYXRpb24tZXF1aXZhbGVudC1wIG5vZGUgbWF0Y2gpKQo+ID4gPiA+ID4gKyAgICAgICAgKHJl
dHVybiBub2RlKSkKPiA+ID4gPiA+ICsgICAgICAodHlwZWNhc2Ugbm9kZQo+ID4gPiA+ID4gKyAg
ICAgICAgKChvciBjc2V0IHJlZiBjYXN0IGNvbWJpbmF0aW9uIGNpZikpCj4gPiA+ID4gPiArICAg
ICAgICAodAo+ID4gPiA+ID4gKyAgICAgICAgOzsgUmV0dXJuIDpGQUlMIHRvIGFib3J0IHF1aWNr
bHkuIFRoaXMgY291bGQgY2hvb3NlIHRvIGZhaWwgaWYgYSBub24tZmx1c2hhYmxlCj4gPiA+ID4g
PiArICAgICAgICA7OyBjb21iaW5hdGlvbiBpcyBzZWVuLCBidXQgZm9yIG5vdyBJJ20gZGVmZXJy
aW5nIHRoYXQgc291bmRuZXNzIGNoZWNrLgo+ID4gPiA+ID4gKyAgICAgICAgKHJldHVybi1mcm9t
IGZpbmQtZXF1aXZhbGVudC1ub2RlLWJhY2t3YXJkcyA6ZmFpbCkpKSkpKQo+ID4gPiA+ID4gKwo+
ID4gPiA+ID4gKzs7OyBBdHRtcHQgdG8gZmluZCBhIENPTUJJTkFUSU9OIGVxdWl2YWxlbnQgdG8g
VEhJUyBwcmVjZWRpbmcgaXQgaW4gbm9kZSBvcmRlciwgdGhlIHZhbHVlCj4gPiA+ID4gPiArOzs7
IG9mIHdoaWNoIGNhbiBiZSBzdWJzdGl0dXRlZCBmb3IgdGhlIGNhbGwgdG8gVEhJUywgYWN0dWFs
bHkgbWFraW5nIHRoZSBzdWJzdGl0dXRpb24uCj4gPiA+ID4gPiArOzs7IExvb2tpbmcgYmFja3dh
cmRzIGF0IG1vc3QgYSBmZXcgYmxvY2tzIHRlbmRzIHRvIHdvcmsgd2VsbCBlbm91Z2gsIGFuZCBp
bnBvcnRhbnRseQo+ID4gPiA+ID4gKzs7OyBsaW1pdHMgdGhlIHdvcmsuIFNjYW5uaW5nIG9ubHkg
dGhlIGN1cnJlbnQgYmxvY2sgaXMgaW5hZGVxdWF0ZSBhcyB0aGUgZXhhbXBsZQo+ID4gPiA+ID4g
Kzs7OyBpbiA6TE9PUC1PVkVSLURFUkVGIHNob3dzLiBUaGUgaW1tZWRpYXRlIHByZWRlY2Vzc29y
IGlzIHN0aWxsIG5vdCBlbm91Z2gsIGJlY2F1c2UgdGhlCj4gPiA+ID4gPiArOzs7IHByZWRlY2Vz
c29yIGNvdWxkIGhhdmUgYmVlbiBzcGxpdCwgbGVhdmluZyBhIHRpbnkgYmxvY2sgd2hlcmUgdGhl
IG9ubHkgbm9kZSBpcwo+ID4gPiA+ID4gKzs7OyBhIHRyaXZpYWwgb3BlcmF0aW9uLgo+ID4gPiA+
ID4gKyhkZWZ1biB0cnktcmV1c2UtZXhwci12YWx1ZSAodGhpcykKPiA+ID4gPiA+ICsgIChkZWNs
YXJlICh0eXBlIGNvbWJpbmF0aW9uIHRoaXMpKQo+ID4gPiA+ID4gKyAgKGJpbmRpbmcqCj4gPiA+
ID4gPiArICAgICAgKChob21lLWxhbWJkYSAoZmluZC1hY3RpdmUtbGV0LWxhbWJkYSB0aGlzKSA6
ZXhpdC1pZi1udWxsKQo+ID4gPiA+ID4gKyAgICAgIChsb29rYmFjayAwKQo+ID4gPiA+ID4gKyAg
ICAgIChjMQo+ID4gPiA+ID4gKyAgICAgICAgOzsgSW4gdGhpcyBibG9jaywgZXhwbGljaXRseSBn
byBiYWNrIGEgbm9kZSBzbyB0aGF0IEZJTkQtQkFDS1dBUkRTIGRvZXNuJ3QgY29uc2lkZXIgVEhJ
Uwo+ID4gPiA+ID4gKyAgICAgICAgOzsgYXMgZXF1aXZhbGVudCB0byBpdHNlbGYuIEZhaWxpbmcg
dGhhdCwgdHJ5IHByZWRlY2Vzc29yIGJsb2NrcywgYnV0IG9ubHkgYXMgbG9uZyBhcwo+ID4gPiA+
ID4gKyAgICAgICAgOzsgcHJlZCBpcyB1bmlxdWUgc2luY2Ugd2UgaGF2ZSBubyBpbmZvcm1hdGlv
biBhYm91dCBub2RlcyB0aGF0IGRvbWluYXRlIFRISVMuCj4gPiA+ID4gPiArICAgICAgICAob3Ig
KGZpbmQtZXF1aXZhbGVudC1ub2RlLWJhY2t3YXJkcyB0aGlzIChjdHJhbi11c2UgKG5vZGUtcHJl
diB0aGlzKSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgKGRvICgocHJlZCAoYmxvY2stcHJlZCAo
bm9kZS1ibG9jayB0aGlzKSkpKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAoKG9yICg+IGxv
b2tiYWNrIDMpIChub3QgKHNpbmdsZXRvbi1wIHByZWQpKSkpCj4gPiA+ID4gPiArICAgICAgICAg
ICAgICAoaW5jZiBsb29rYmFjaykKPiA+ID4gPiA+ICsgICAgICAgICAgICAgIChsZXQgKChub2Rl
IChibG9jay1sYXN0IChjYXIgcHJlZCkpKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgKHdo
ZW4gKG51bGwgbm9kZSkgKHJldHVybikpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgIChhd2hl
biAoZmluZC1lcXVpdmFsZW50LW5vZGUtYmFja3dhcmRzIHRoaXMgbm9kZSkgKHJldHVybiBpdCkp
Cj4gPiA+ID4gPiArICAgICAgICAgICAgICAgIChzZXRxIHByZWQgKGJsb2NrLXByZWQgKG5vZGUt
YmxvY2sgbm9kZSkpKSkpKQo+ID4gPiA+ID4gKyAgICAgICAgOmV4aXQtaWYtbnVsbCkKPiA+ID4g
PiA+ICsgICAgICAodmFycyA7IGNhbid0IHVzZSA6ZXhpdC1pZi1udWxsIGhlcmUgYmVjYXVzZSBW
QVJTIGNhbiBiZSBhbmQgdXN1YWxseSBpcyBOSUwKPiA+ID4gPiA+ICsgICAgICAgICh1bmxlc3Mg
KGVxIGMxIDpmYWlsKQo+ID4gPiA+ID4gKyAgICAgICAgICAobWFwY2FuICMnY29sbGVjdC1sdmFy
LXZhcnMgKGJhc2ljLWNvbWJpbmF0aW9uLWFyZ3MgYzEpKSkpKQo+ID4gPiA+ID4gKyAgICAod2hl
biAoZXEgYzEgOmZhaWwpCj4gPiA+ID4gPiArICAgICAgKHJldHVybi1mcm9tIHRyeS1yZXVzZS1l
eHByLXZhbHVlIG5pbCkpCj4gPiA+ID4gPiArICAgIChsYWJlbHMgKChhbGwtZmx1c2hhYmxlIChj
dHJhbiBlbmQtbm9kZSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgIChkZWNsYXJlIChjdHJhbiBj
dHJhbikgKHR5cGUgKG9yIG5vZGUgbnVsbCkgZW5kLW5vZGUpKQo+ID4gPiA+ID4gKyAgICAgICAg
ICAgICAgKGxvb3AgKGxldCAoKG5vZGUgKGN0cmFuLW5leHQgY3RyYW4pKSkKPiA+ID4gPiA+ICsg
ICAgICAgICAgICAgICAgICAgICAgKGNvbmQgKChlcSBub2RlIGVuZC1ub2RlKSAocmV0dXJuIHQp
KQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKG5vdCAob2stdG8tZmx1
c2ggbm9kZSkpIChyZXR1cm4gbmlsKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKChhbmQgKG5vdCBlbmQtbm9kZSkgKG5vdCAobm9kZS1uZXh0IG5vZGUpKSkgKHJldHVy
biB0KSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgIChzZXRxIGN0cmFuIChub2Rl
LW5leHQgbm9kZSkpKSkpCj4gPiA+ID4gPiArICAgICAgICAgICAgKG9rLXRvLWZsdXNoIChub2Rl
KQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgKGNvbmQgKChzZXQtcCBub2RlKSAobm90IChtZW1i
ZXIgKHNldC12YXIgbm9kZSkgdmFycykpKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAg
KChjb21iaW5hdGlvbi1wIG5vZGUpIChmbHVzaGFibGUtY29tYmluYXRpb24tcCBub2RlKSkKPiA+
ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICgoYmFzaWMtY29tYmluYXRpb24tcCBub2RlKSBu
aWwpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAodCB0KSkpKSA7IGFueXRoaW5nIGVs
c2UgdGhlIGJhY2t3YXJkcyBzZWFyY2ggYWxsb3dlZCBpcyBvawo+ID4gPiA+ID4gKyAgICAgIDs7
IFdoZW4gbG9va2JhY2s+MCBpdCdzIHBvc3NpYmxlIGZvciB0aGUgZXF1aXZhbGVudCBub2RlIHRv
IGJlIHRoZSBmaW5hbCBub2RlCj4gPiA+ID4gPiArICAgICAgOzsgb2YgaXRzIGJsb2NrLCBpbiB3
aGljaCBjYXNlIGl0cyBOT0RFLU5FWFQgaXMgbnVsbC4KPiA+ID4gPiA+ICsgICAgICAobGV0KiAo
KHRoaXMtYmxvY2sgKG5vZGUtYmxvY2sgdGhpcykpCj4gPiA+ID4gPiArICAgICAgICAgICAgKHBy
ZWQgKGNhciAoYmxvY2stcHJlZCB0aGlzLWJsb2NrKSkpKQo+ID4gPiA+ID4gKyAgICAgICAgKHVu
bGVzcyAoaWYgKD0gbG9va2JhY2sgMCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgIChh
bGwtZmx1c2hhYmxlIChub2RlLW5leHQgYzEpIHRoaXMpCj4gPiA+ID4gPiArICAgICAgICAgICAg
ICAgICAgICAoYW5kCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICA7OyBDaGVjayBwcmV2
IGJsb2NrIGZyb20gQzEgdG8gaXRzIGVuZCBvZiBibG9jaywgYW5kIGN1cnJlbnQgYmxvY2sgdXAg
dG8gVEhJUwo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgKGFjb25kICgobm9kZS1uZXh0
IGMxKSAoYWxsLWZsdXNoYWJsZSBpdCBuaWwpKSAodCB0KSkKPiA+ID4gPiA+ICsgICAgICAgICAg
ICAgICAgICAgIChhbGwtZmx1c2hhYmxlIChibG9jay1zdGFydCB0aGlzLWJsb2NrKSB0aGlzKQo+
ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgOzsgQWxsIGNoZWNrIGFsbCBvZiBvbmUgb3Ig
Ym90aCBpbnRlcnZlbmluZyBibG9ja3MKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgIChv
ciAoPCBsb29rYmFjayAyKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIChhbGwt
Zmx1c2hhYmxlIChibG9jay1zdGFydCBwcmVkKSBuaWwpKQo+ID4gPiA+ID4gKyAgICAgICAgICAg
ICAgICAgICAgKG9yICg8IGxvb2tiYWNrIDMpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAg
ICAgICAgKGFsbC1mbHVzaGFibGUgKGJsb2NrLXN0YXJ0IChjYXIgKGJsb2NrLXByZWQgcHJlZCkp
KSBuaWwpKSkpCj4gPiA+ID4gPiArICAgICAgICAgIChyZXR1cm4tZnJvbSB0cnktcmV1c2UtZXhw
ci12YWx1ZSBuaWwpKSkpCj4gPiA+ID4gPiArICAgIDs7IFN1YnN0aXR1dGUgQzEncyByZXN1bHQg
aW4gZm9yIFRISVMKPiA+ID4gPiA+ICsgICAgKGJpbmRpbmcqICgobHZhci1jMSAobm9kZS1sdmFy
IGMxKSA6ZXhpdC1pZi1udWxsKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgKGNvbnN1bWVyLTEg
KGx2YXItZGVzdCBsdmFyLWMxKSA6ZXhpdC1pZi1udWxsKQo+ID4gPiA+ID4gKyAgICAgICAgICAg
ICAgKGMyIHRoaXMpCj4gPiA+ID4gPiArICAgICAgICAgICAgICAobHZhci1jMiAobm9kZS1sdmFy
IGMyKSA6ZXhpdC1pZi1udWxsKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgKHYgKG1ha2UtbGFt
YmRhLXZhciAoZ2Vuc3ltICJSRVVTRUQtVkFMIikKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgOnR5cGUgKHNpbmdsZS12YWx1ZS10eXBlIChub2RlLWRlcml2ZWQt
dHlwZSBjMSkpKSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgIChsdmFyLW5ldyAobWFrZS1sdmFy
KSkpCj4gPiA+ID4gPiArICAgICAgKGFkZC12YXJpYWJsZS10by1sZXQtbGFtYmRhIGhvbWUtbGFt
YmRhIHYpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArICAgICAgOzsgMS4gUmVkaXJlY3QgY29uc3Vt
ZXItMSB0byByZWFkIGZyb20gbHZhci1uZXcKPiA+ID4gPiA+ICsgICAgICAoc3Vic3RpdHV0ZS1s
dmFyIGx2YXItbmV3IGx2YXItYzEpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArICAgICAgKHdpdGgt
aXIxLWVudmlyb25tZW50LWZyb20tbm9kZSBjMQo+ID4gPiA+ID4gKyAgICAgICAgOzsgMi4gTWFr
ZSBDMSB3cml0ZSB0byBhIG5ldyBMVkFSLCBhbmQgbGluayBpdCB0byBhIENTRVQgb24gVgo+ID4g
PiA+ID4gKyAgICAgICAgKGxldCAoKGx2YXItYzEtbmV3IChtYWtlLWx2YXIpKSkKPiA+ID4gPiA+
ICsgICAgICAgICAgKCVkZWxldGUtbHZhci11c2UgYzEpCj4gPiA+ID4gPiArICAgICAgICAgICh1
c2UtbHZhciBjMSBsdmFyLWMxLW5ldykKPiA+ID4gPiA+ICsgICAgICAgICAgOzsgMy4gQ3JlYXRl
IFMxIChzZXQgViA9IGx2YXItYzEtbmV3KSBhbmQgaW5zZXJ0IGFmdGVyIEMxCj4gPiA+ID4gPiAr
ICAgICAgICAgIChsZXQgKChzMSAobWFrZS1zZXQgdiBsdmFyLWMxLW5ldykpKQo+ID4gPiA+ID4g
KyAgICAgICAgICAgIChzZXRmIChsdmFyLWRlc3QgbHZhci1jMS1uZXcpIHMxKQo+ID4gPiA+ID4g
KyAgICAgICAgICAgIChwdXNoIHMxIChiYXNpYy12YXItc2V0cyB2KSkKPiA+ID4gPiA+ICsgICAg
ICAgICAgICAoaW5zZXJ0LW5vZGUtYWZ0ZXIgYzEgczEpKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4g
PiArICAgICAgOzsgNC4gSW5zZXJ0IHJlZjEgYmVmb3JlIGNvbnN1bWVyLTEsIHdyaXRpbmcgdG8g
bHZhci1uZXcKPiA+ID4gPiA+ICsgICAgICAoaW5zZXJ0LXJlZi1iZWZvcmUgdiBjb25zdW1lci0x
IGx2YXItbmV3KQo+ID4gPiA+ID4gKyAgICAgIDs7IDUuIEluc2VydCByZWYyIGJlZm9yZSBDMiwg
c3RlYWxpbmcgQzIncyBsdmFyCj4gPiA+ID4gPiArICAgICAgKGluc2VydC1yZWYtYmVmb3JlIHYg
YzIgdCkKPiA+ID4gPiA+ICsgICAgICA7OyBDMiBpcyBub3cgZGVhZCBhbmQgd2lsbCBiZSBmbHVz
aGVkIGJ5IHRoZSBjYWxsZXIhCj4gPiA+ID4gPiArICAgICAgdCkpKQo+ID4gPiA+ID4gKwo+ID4g
PiA+ID4gIDs7OyBEbyBJUjEgb3B0aW1pemF0aW9ucyBvbiBhIENPTUJJTkFUSU9OIG5vZGUuCj4g
PiA+ID4gPiAgKGRlZnVuIGlyMS1vcHRpbWl6ZS1jb21iaW5hdGlvbiAobm9kZSAmYXV4IChzaG93
ICpzaG93LXRyYW5zZm9ybXMtcCopKQo+ID4gPiA+ID4gICAgKGRlY2xhcmUgKHR5cGUgY29tYmlu
YXRpb24gbm9kZSkpCj4gPiA+ID4gPiBAQCAtMTMwNSw2ICsxNDgxLDkgQEAKPiA+ID4gPiA+ICAg
ICAgICAgICAgICAgICAgICAgICAgKG5vdCAobm9kZS1sdmFyIG5vZGUpKSkKPiA+ID4gPiA+ICAg
ICAgICAgICAgICAgICAgICAocmV0dXJuLWZyb20gaXIxLW9wdGltaXplLWNvbWJpbmF0aW9uIChm
bHVzaC1ub2RlIG5vZGUpKSkKPiA+ID4gPiA+ICAgICAgICAgICAgICAgICAgKChmb2xkLWNhbGwt
ZGVyaXZlZC10by1jb25zdGFudCBub2RlKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgIChy
ZXR1cm4tZnJvbSBpcjEtb3B0aW1pemUtY29tYmluYXRpb24pKQo+ID4gPiA+ID4gKyAgICAgICAg
ICAgICAgICAoKGFuZCAoY29tYmluYXRpb24taXMgbm9kZSAqZWxpZGFibGUtbWVtb3J5LWxvYWRz
KikKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgKHRyeS1yZXVzZS1leHByLXZhbHVl
IG5vZGUpKQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgIChyZXR1cm4tZnJvbSBpcjEtb3B0
aW1pemUtY29tYmluYXRpb24pKSkKPiA+ID4gPiA+ICAgICAgICAgICAgKHdoZW4gKGFuZCAoaXIx
LWF0dHJpYnV0ZXAgKGZ1bi1pbmZvLWF0dHJpYnV0ZXMgaW5mbykgY29tbXV0YXRpdmUpCj4gPiA+
ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICg9IChsZW5ndGggYXJncykgMikKPiA+ID4gPiA+
IGRpZmYgLS1naXQgYS90ZXN0cy9sY3NlLnB1cmUubGlzcCBiL3Rlc3RzL2xjc2UucHVyZS5saXNw
Cj4gPiA+ID4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gPiA+ID4gaW5kZXggMDAwMDAwMDAw
Li40M2IzNGU5OTgKPiA+ID4gPiA+IC0tLSAvZGV2L251bGwKPiA+ID4gPiA+ICsrKyBiL3Rlc3Rz
L2xjc2UucHVyZS5saXNwCj4gPiA+ID4gPiBAQCAtMCwwICsxLDIzNCBAQAo+ID4gPiA+ID4gKzs7
OzsgVGhpcyBzb2Z0d2FyZSBpcyBwYXJ0IG9mIHRoZSBTQkNMIHN5c3RlbS4gU2VlIHRoZSBSRUFE
TUUgZmlsZSBmb3IKPiA+ID4gPiA+ICs7Ozs7IG1vcmUgaW5mb3JtYXRpb24uCj4gPiA+ID4gPiAr
Ozs7Owo+ID4gPiA+ID4gKzs7OzsgV2hpbGUgbW9zdCBvZiBTQkNMIGlzIGRlcml2ZWQgZnJvbSB0
aGUgQ01VIENMIHN5c3RlbSwgdGhlIHRlc3QKPiA+ID4gPiA+ICs7Ozs7IGZpbGVzIChsaWtlIHRo
aXMgb25lKSB3ZXJlIHdyaXR0ZW4gZnJvbSBzY3JhdGNoIGFmdGVyIHRoZSBmb3JrCj4gPiA+ID4g
PiArOzs7OyBmcm9tIENNVSBDTC4KPiA+ID4gPiA+ICs7Ozs7Cj4gPiA+ID4gPiArOzs7OyBUaGlz
IHNvZnR3YXJlIGlzIGluIHRoZSBwdWJsaWMgZG9tYWluIGFuZCBpcyBwcm92aWRlZCB3aXRoCj4g
PiA+ID4gPiArOzs7OyBhYnNvbHV0ZWx5IG5vIHdhcnJhbnR5LiBTZWUgdGhlIENPUFlJTkcgYW5k
IENSRURJVFMgZmlsZXMgZm9yCj4gPiA+ID4gPiArOzs7OyBtb3JlIGluZm9ybWF0aW9uLgo+ID4g
PiA+ID4gKwo+ID4gPiA+ID4gKzs7OzsgVGVzdHMgb2YgbG9jYWwgY29tbW9uIHN1YmV4cHJlc3Np
b24gZWxpbWluYXRpb24KPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsoaW1wb3J0ICcoY3R1Omluc3Bl
Y3QtaXIKPiA+ID4gPiA+ICsgICAgICAgICAgc2ItYzo6Y29tYmluYXRpb24tZnVuLWRlYnVnLW5h
bWUKPiA+ID4gPiA+ICsgICAgICAgICAgc2ItYzo6YmFzaWMtY29tYmluYXRpb24tcCkpCj4gPiA+
ID4gPiArCj4gPiA+ID4gPiArKGRlZnVuIGlyLWNhbGxzIChmb3JtKQo+ID4gPiA+ID4gKyAgKGxl
dCAoY2FsbHMpCj4gPiA+ID4gPiArICAgIChpbnNwZWN0LWlyCj4gPiA+ID4gPiArICAgIGZvcm0K
PiA+ID4gPiA+ICsgICAgKGxhbWJkYSAoY29tcG9uZW50KQo+ID4gPiA+ID4gKyAgICAgIChjdHU6
ZG8tYmxvY2tzIChibG9jayBjb21wb25lbnQpCj4gPiA+ID4gPiArICAgICAgICAoY3R1OmRvLW5v
ZGVzIChub2RlIG5pbCBibG9jaykKPiA+ID4gPiA+ICsgICAgICAgICAgKHdoZW4gKGJhc2ljLWNv
bWJpbmF0aW9uLXAgbm9kZSkKPiA+ID4gPiA+ICsgICAgICAgICAgICAocHVzaCBub2RlIGNhbGxz
KSkpKSkpCj4gPiA+ID4gPiArICAgIGNhbGxzKSkKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsoZGVm
bWFjcm8gYXNzZXJ0LWNhbGxzIChmdW4tbmFtZSBleHBlY3RlZC1jb3VudCAoJnJlc3QgbGFtYmRh
LWFyZ3MpICZib2R5IGJvZHkpCj4gPiA+ID4gPiArICAoc2ItaW50OmJpbmRpbmcqCj4gPiA+ID4g
PiArICAgICAgKCgoZm9ybXMgZGVjbHMpIChzYi1pbnQ6cGFyc2UtYm9keSBib2R5IG5pbCkpCj4g
PiA+ID4gPiArICAgICAgKGxleHByIGAobGFtYmRhICgsQGxhbWJkYS1hcmdzKQo+ID4gPiA+ID4g
KyAgICAgICAgICAgICAgICAsQGRlY2xzCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgOzsg
V2l0aG91dCBhIGNvbnRhaW5pbmcgTEVUIGZvcm0sIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9u
IG9mIENTRQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgIDs7IGlzIHVud2lsbGluZyB0byBi
aW5kIGEgdGVtcG9yYXJ5IGxhbWJkYSB2YXIgZm9yIHJldXNlLgo+ID4gPiA+ID4gKyAgICAgICAg
ICAgICAgICAgIChsZXQgKChhY3RpdmUtbGV0LXZhciAwKSkKPiA+ID4gPiA+ICsgICAgICAgICAg
ICAgICAgICAgIChwcmludCBhY3RpdmUtbGV0LXZhcikKPiA+ID4gPiA+ICsgICAgICAgICAgICAg
ICAgICAgIChpbmNmIGFjdGl2ZS1sZXQtdmFyIChyYW5kb20gNSkpCj4gPiA+ID4gPiArICAgICAg
ICAgICAgICAgICAgICAocHJpbnQgYWN0aXZlLWxldC12YXIpCj4gPiA+ID4gPiArICAgICAgICAg
ICAgICAgICAgICAsQGZvcm1zKSkpKQo+ID4gPiA+ID4gKyAgICBgKGFzc2VydCAoPSAoY291bnQg
JyxmdW4tbmFtZSAoaXItY2FsbHMgJyxsZXhwcikgOmtleSAjJ2NvbWJpbmF0aW9uLWZ1bi1kZWJ1
Zy1uYW1lKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAsZXhwZWN0ZWQtY291bnQpKSkpCj4g
PiA+ID4gPiArCj4gPiA+ID4gPiArOzs7IEJhc2ljIHRlc3RzOiBhIHNhbXBsaW5nIG9mIGVsaWRh
YmxlIGxvYWQgdHlwZSB3aXRoIHR3byBpZGVudGljYWwgbG9hZHMKPiA+ID4gPiA+ICsKPiA+ID4g
PiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6Y2FyKSkKPiA+ID4gPiA+ICsgIChhc3NlcnQt
Y2FsbHMgY2FyIDEgKGNvbnMpCj4gPiA+ID4gPiArICAgIChkZWNsYXJlICh0eXBlIGNvbnMgY29u
cykpCj4gPiA+ID4gPiArICAgIChpZiAoY2FyIGNvbnMpCj4gPiA+ID4gPiArICAgICAgICAocHJp
bmMgKGNhciBjb25zKSkKPiA+ID4gPiA+ICsgICAgICAgIChwcmluYyAoY2RyIGNvbnMpKSkpKQo+
ID4gPiA+ID4gKwo+ID4gPiA+ID4gKyh3aXRoLXRlc3QgKDpuYW1lICg6Y3NlIDpkaWZmZXJlbnQt
bmFtZXMtZm9yLXNhbWUtb2JqZWN0KSkKPiA+ID4gPiA+ICsgIDs7IFkgYW5kIFggcmVmZXIgdG8g
dGhlIHNhbWUgdGhpbmcsIGFuZCBpdCBkb2Vzbid0IG1hdHRlcgo+ID4gPiA+ID4gKyAgOzsgd2hv
c2UgQ0RSIHdlIHRha2UgZmlyc3QuIE9ubHkgb25lIENEUiBvcGVyYXRpb24gaXMgcGVyZm9ybWVk
Cj4gPiA+ID4gPiArICAoYXNzZXJ0LWNhbGxzIGNkciAxICh4KQo+ID4gPiA+ID4gKyAgICAoZGVj
bGFyZSAodHlwZSBjb25zIHgpKQo+ID4gPiA+ID4gKyAgICAobGV0ICgoeSB4KSkKPiA+ID4gPiA+
ICsgICAgICAobGlzdCAoY2RyIHkpIChjZHIgeCkpKSkKPiA+ID4gPiA+ICsgIChhc3NlcnQtY2Fs
bHMgY2RyIDEgKHgpCj4gPiA+ID4gPiArICAgIChkZWNsYXJlICh0eXBlIGNvbnMgeCkpCj4gPiA+
ID4gPiArICAgIChsZXQgKCh5IHgpKQo+ID4gPiA+ID4gKyAgICAgIChsaXN0IChjZHIgeCkgKGNk
ciB5KSkpKSkKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6
Y29tcG9zaXRpb24tb2YtY3hyKSkKPiA+ID4gPiA+ICsgIDs7IFRoZSBDQVIgZXh0cmFjdGlvbiB3
aGljaCBpcyBwYXJ0IG9mIHRoZSBDREFSIGZ1bmN0aW9uIGNhbiBiZQo+ID4gPiA+ID4gKyAgOzsg
cmV1c2VkIGJhc2VkIG9uIHRoZSBmYWN0IHRoYXQgd2UgZXZhbHVhdGVkIChMSVNUUCAoQ0FSIFgp
KQo+ID4gPiA+ID4gKyAgKGFzc2VydC1jYWxscyBjYXIgMSAoeCkKPiA+ID4gPiA+ICsgICAgKGlm
IChsaXN0cCAoY2FyIHgpKSAoY2RhciB4KSkpCj4gPiA+ID4gPiArICA7OyBuZWdhdGl2ZSB0ZXN0
IC0gQ0RBUiBvbiBhIGRpZmZlcmVudCBZIGlzIGFub3RoZXIgQ0FSIG9wZXJhdGlvbgo+ID4gPiA+
ID4gKyAgKGFzc2VydC1jYWxscyBjYXIgMiAoeCB5KQo+ID4gPiA+ID4gKyAgICAoaWYgKGxpc3Rw
IChjYXIgeCkpIChjZGFyIHkpKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArKGRlZnN0cnVjdCBj
c2UtdGVzdC1mb28gc2xvdCAod3Nsb3QgMCA6dHlwZSBzYi12bTp3b3JkKSkKPiA+ID4gPiA+ICso
d2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6aW5zdGFuY2UtcmVmKSkKPiA+ID4gPiA+ICsgIChhc3Nl
cnQtY2FsbHMgc2Ita2VybmVsOiVpbnN0YW5jZS1yZWYgMSAoeCkKPiA+ID4gPiA+ICsgICAgOzsg
RGVwZW5kaW5nIG9uIHdoYXQgVFJBTlNGT1JNLUlOU1RBTkNFLVRZUEVQIGRvZXMsIGl0IG1pZ2h0
IGFjY2VzcyBpbnN0YW5jZS1sYXlvdXQKPiA+ID4gPiA+ICsgICAgOzsgdXNpbmcgJUlOU1RBTkNF
LVJFRiB3aGljaCB3b3VsZCBoYXZlIHRvIGJlIGRpc2NvdW50ZWQgaW4gdGhlIGNhbGwgY291bnRp
bmcuCj4gPiA+ID4gPiArICAgIDs7IEp1c3QgYnJ1dGUtZm9yY2UgdGhlIHR5cGUgdG8gYXZvaWQg
dGhhdCBzaXR1YXRpb24uCj4gPiA+ID4gPiArICAgIChsZXQgKCh4ICh0cnVseS10aGUgY3NlLXRl
c3QtZm9vIHgpKSkKPiA+ID4gPiA+ICsgICAgICAoaWYgKGNzZS10ZXN0LWZvby1zbG90IHgpCj4g
PiA+ID4gPiArICAgICAgICAgIChwcmluYyAoY3NlLXRlc3QtZm9vLXNsb3QgeCkpCj4gPiA+ID4g
PiArICAgICAgICAgIG5pbCkpKSkKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsod2l0aC10ZXN0ICg6
bmFtZSAoOmNzZSA6cmF3LWluc3RhbmNlLXJlZi93b3JkKSkKPiA+ID4gPiA+ICsgIChhc3NlcnQt
Y2FsbHMgc2Ita2VybmVsOiVyYXctaW5zdGFuY2UtcmVmL3dvcmQgMSAoeCkKPiA+ID4gPiA+ICsg
ICAgKGRlY2xhcmUgKHR5cGUgY3NlLXRlc3QtZm9vIHgpKQo+ID4gPiA+ID4gKyAgICAoaWYgKGxv
Z3Rlc3QgKGNzZS10ZXN0LWZvby13c2xvdCB4KSAjeGZmMDAwKQo+ID4gPiA+ID4gKyAgICAgICAg
KHByaW5jIChjc2UtdGVzdC1mb28td3Nsb3QgeCkpCj4gPiA+ID4gPiArICAgICAgICBuaWwpKSkK
PiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6c2FwLXJlZi0z
MikpCj4gPiA+ID4gPiArICAoYXNzZXJ0LWNhbGxzIHNiLXN5czpzYXAtcmVmLTMyIDEgKHNhcCBv
ZmZzZXQpCj4gPiA+ID4gPiArICAgIChkZWNsYXJlICh0eXBlIHNiLXN5czpzeXN0ZW0tYXJlYS1w
b2ludGVyIHNhcCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAodHlwZSBzYi12bTp3b3JkIG9mZnNl
dCkpCj4gPiA+ID4gPiArICAgIChpZiAocGx1c3AgKHNiLXN5czpzYXAtcmVmLTMyIHNhcCBvZmZz
ZXQpKQo+ID4gPiA+ID4gKyAgICAgICAgKHByaW5jIChzYi1zeXM6c2FwLXJlZi0zMiBzYXAgb2Zm
c2V0KSkKPiA+ID4gPiA+ICsgICAgICAgIG5pbCkpCj4gPiA+ID4gPiArICAoYXNzZXJ0LWNhbGxz
IHNiLXN5czpzaWduZWQtc2FwLXJlZi0zMiAxIChzYXAgb2Zmc2V0KQo+ID4gPiA+ID4gKyAgICAo
ZGVjbGFyZSAodHlwZSBzYi1zeXM6c3lzdGVtLWFyZWEtcG9pbnRlciBzYXApCj4gPiA+ID4gPiAr
ICAgICAgICAgICAgKHR5cGUgc2Itdm06d29yZCBvZmZzZXQpKQo+ID4gPiA+ID4gKyAgICAoaWYg
KHBsdXNwIChzYi1zeXM6c2lnbmVkLXNhcC1yZWYtMzIgc2FwIG9mZnNldCkpCj4gPiA+ID4gPiAr
ICAgICAgICAocHJpbmMgKHNiLXN5czpzaWduZWQtc2FwLXJlZi0zMiBzYXAgb2Zmc2V0KSkKPiA+
ID4gPiA+ICsgICAgICAgIG5pbCkpKQo+ID4gPiA+ID4gKwo+ID4gPiA+ID4gKyh3aXRoLXRlc3Qg
KDpuYW1lICg6Y3NlIDpzYXAtcmVmLTY0KSA6c2tpcHBlZC1vbiAoOm5vdCA6NjQtYml0KSkKPiA+
ID4gPiA+ICsgIChhc3NlcnQtY2FsbHMgc2Itc3lzOnNhcC1yZWYtNjQgMSAoc2FwIG9mZnNldCkK
PiA+ID4gPiA+ICsgICAgKGRlY2xhcmUgKHR5cGUgc2Itc3lzOnN5c3RlbS1hcmVhLXBvaW50ZXIg
c2FwKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICh0eXBlIHNiLXZtOndvcmQgb2Zmc2V0KSkKPiA+
ID4gPiA+ICsgICAgKGlmIChwbHVzcCAoc2Itc3lzOnNhcC1yZWYtNjQgc2FwIG9mZnNldCkpCj4g
PiA+ID4gPiArICAgICAgICAocHJpbmMgKHNiLXN5czpzYXAtcmVmLTY0IHNhcCBvZmZzZXQpKQo+
ID4gPiA+ID4gKyAgICAgICAgbmlsKSkKPiA+ID4gPiA+ICsgIChhc3NlcnQtY2FsbHMgc2Itc3lz
OnNpZ25lZC1zYXAtcmVmLTY0IDEgKHNhcCBvZmZzZXQpCj4gPiA+ID4gPiArICAgIChkZWNsYXJl
ICh0eXBlIHNiLXN5czpzeXN0ZW0tYXJlYS1wb2ludGVyIHNhcCkKPiA+ID4gPiA+ICsgICAgICAg
ICAgICAodHlwZSBzYi12bTp3b3JkIG9mZnNldCkpCj4gPiA+ID4gPiArICAgIChpZiAocGx1c3Ag
KHNiLXN5czpzaWduZWQtc2FwLXJlZi02NCBzYXAgb2Zmc2V0KSkKPiA+ID4gPiA+ICsgICAgICAg
IChwcmluYyAoc2Itc3lzOnNpZ25lZC1zYXAtcmVmLTY0IHNhcCBvZmZzZXQpKQo+ID4gPiA+ID4g
KyAgICAgICAgbmlsKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArKHdpdGgtdGVzdCAoOm5hbWUg
KDpjc2UgOmxvb3Atb3Zlci1kZXJlZikpCj4gPiA+ID4gPiArICAobGV0ICgobGV4cHIKPiA+ID4g
PiA+ICsgICAgICAgICcobGFtYmRhIChmKQo+ID4gPiA+ID4gKyAgICAgICAgICAgIChkZWNsYXJl
IChvcHRpbWl6ZSAoc2ItYzo6YWxpZW4tZnVuY2FsbC1zYXZlcy1mcC1hbmQtcGMgMCkKPiA+ID4g
PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2ItYzo6dHlwZS1jaGVjayAwKSkp
Cj4gPiA+ID4gPiArICAgICAgICAgICAgOzsgRiByZXR1cm5zIGEgcG9pbnRlciB0byBhIG51bGwt
dGVybWluYXRlZCBhcnJheSBvZiB1bnNpZ25lZC1pbnQuCj4gPiA+ID4gPiArICAgICAgICAgICAg
OzsgVGhlIGRlcmVmIGZvciB0aGUgbG9vcCB0ZXJtaW5hdGlvbiB0ZXN0LCBhbmQgYWdhaW4gaW4g
dGhlIGJvZHkKPiA+ID4gPiA+ICsgICAgICAgICAgICA7OyBzaG91bGQgdXNlIGEgc2luZ2xlIG1l
bW9yeSBsb2FkLgo+ID4gPiA+ID4gKyAgICAgICAgICAgIChsZXQgKChhIChhbGllbi1mdW5jYWxs
ICh0aGUgKGFsaWVuIChmdW5jdGlvbiAoKiB1bnNpZ25lZCkpKSBmKSkpKQo+ID4gPiA+ID4gKyAg
ICAgICAgICAgICAgKGRvICgoaW5kZXggMCAoMSsgaW5kZXgpKSkKPiA+ID4gPiA+ICsgICAgICAg
ICAgICAgICAgICAoKHplcm9wIChkZXJlZiBhIGluZGV4KSkpCj4gPiA+ID4gPiArICAgICAgICAg
ICAgICAgIChwcmluYyAodGhlIGZpeG51bSAoZGVyZWYgYSBpbmRleCkpKSkpKSkpCj4gPiA+ID4g
PiArICAgIChhc3NlcnQgKD0gKGNvdW50ICMrKG9yIGFybTY0IHg4Ni02NCkgJ3NiLXN5czolc2Fw
LXJlZi02NC1pbmRleGVkCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICMtKG9yIGFy
bTY0IHg4Ni02NCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgKHByb2duICMrNjQt
Yml0ICdzYi1zeXM6c2FwLXJlZi02NCAjLTY0LWJpdCAnc2Itc3lzOnNhcC1yZWYtMzIpCj4gPiA+
ID4gPiArICAgICAgICAgICAgICAgICAgICAgIChpci1jYWxscyBsZXhwcikgOmtleSAjJ2NvbWJp
bmF0aW9uLWZ1bi1kZWJ1Zy1uYW1lKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgMSkpKSkKPiA+
ID4gPiA+ICsKPiA+ID4gPiA+ICs7OzsgU0VUUSBvZiBhIHZhcmlhYmxlIHVzZWQgYXMgYW4gYXJn
dW1lbnQgdG8gYW4gZWxpZGFibGUgbG9hZCBwcmV2ZW50cyBDU0UuCj4gPiA+ID4gPiArOzs7IFdo
ZW4gYSB2YXJpYWJsZSB0aGF0IHBhcnRpY2lwYXRlcyBpbiB0aGUgbG9hZCBleHByZXNzaW9uIChl
LmcuLCB0aGUgY29ucwo+ID4gPiA+ID4gKzs7OyBiZWluZyBDQVInZCkgaXMgYXNzaWduZWQgYmV0
d2VlbiB0d28gaWRlbnRpY2FsIGxvYWRzLCB0aGUgc2Vjb25kIGxvYWQKPiA+ID4gPiA+ICs7Ozsg
bXVzdCBub3QgYmUgZWxpbWluYXRlZCBiZWNhdXNlIHRoZSB2YXJpYWJsZSBtYXkgcmVmZXJlbmNl
IGEgZGlmZmVyZW50IG9iamVjdC4KPiA+ID4gPiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6
c2V0cS1vZi1sb2FkLWFyZy1wcmV2ZW50cy1jYXIpKQo+ID4gPiA+ID4gKyAgOzsgQ09OUyBpcyB0
aGUgYXJndW1lbnQgdG8gQ0FSLiBBc3NpZ25pbmcgQ09OUyBiZXR3ZWVuIHR3byAoQ0FSIENPTlMp
Cj4gPiA+ID4gPiArICA7OyBwcmV2ZW50cyBDU0UuCj4gPiA+ID4gPiArICAoYXNzZXJ0LWNhbGxz
IGNhciAyIChjb25zIG90aGVyKQo+ID4gPiA+ID4gKyAgICAoZGVjbGFyZSAodHlwZSBjb25zIGNv
bnMgb3RoZXIpKQo+ID4gPiA+ID4gKyAgICAobGV0ICgoYSAoY2FyIGNvbnMpKSkKPiA+ID4gPiA+
ICsgICAgICAoc2V0cSBjb25zIG90aGVyKQo+ID4gPiA+ID4gKyAgICAgIChsZXQgKChiIChjYXIg
Y29ucykpKQo+ID4gPiA+ID4gKyAgICAgICAgKGxpc3QgYSBiKSkpKSkKPiA+ID4gPiA+ICsKPiA+
ID4gPiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6c2V0cS1vZi1sb2FkLWFyZy1wcmV2ZW50
cy1jZHIpKQo+ID4gPiA+ID4gKyAgKGFzc2VydC1jYWxscyBjZHIgMiAoY29ucyBvdGhlcikKPiA+
ID4gPiA+ICsgICAgKGRlY2xhcmUgKHR5cGUgY29ucyBjb25zIG90aGVyKSkKPiA+ID4gPiA+ICsg
ICAgKGxldCAoKGEgKGNkciBjb25zKSkpCj4gPiA+ID4gPiArICAgICAgKHNldHEgY29ucyBvdGhl
cikKPiA+ID4gPiA+ICsgICAgICAobGV0ICgoYiAoY2RyIGNvbnMpKSkKPiA+ID4gPiA+ICsgICAg
ICAgIChsaXN0IGEgYikpKSkpCj4gPiA+ID4gPiArCj4gPiA+ID4gPiArKHdpdGgtdGVzdCAoOm5h
bWUgKDpjc2UgOnNldHEtb2YtbG9hZC1hcmctcHJldmVudHMtaW5zdGFuY2UtcmVmKSkKPiA+ID4g
PiA+ICsgIDs7IEFzc2lnbmluZyB0aGUgc3RydWN0IHZhcmlhYmxlIGJldHdlZW4gdHdvIHJlYWRz
IG9mIHRoZSBzYW1lIHNsb3QgcHJldmVudHMgQ1NFLgo+ID4gPiA+ID4gKyAgKGFzc2VydC1jYWxs
cyBzYi1rZXJuZWw6JWluc3RhbmNlLXJlZiAyICh4IHkpCj4gPiA+ID4gPiArICAgIChsZXQgKCh4
ICh0cnVseS10aGUgY3NlLXRlc3QtZm9vIHgpKQo+ID4gPiA+ID4gKyAgICAgICAgICAoeSAodHJ1
bHktdGhlIGNzZS10ZXN0LWZvbyB5KSkpCj4gPiA+ID4gPiArICAgICAgKGxldCAoKGEgKGNzZS10
ZXN0LWZvby1zbG90IHgpKSkKPiA+ID4gPiA+ICsgICAgICAgIChzZXRxIHggeSkKPiA+ID4gPiA+
ICsgICAgICAgIChsZXQgKChiIChjc2UtdGVzdC1mb28tc2xvdCB4KSkpCj4gPiA+ID4gPiArICAg
ICAgICAgIChsaXN0IGEgYikpKSkpKQo+ID4gPiA+ID4gKwo+ID4gPiA+ID4gKyh3aXRoLXRlc3Qg
KDpuYW1lICg6Y3NlIDpzZXRxLW9mLWxvYWQtYXJnLXByZXZlbnRzLXNhcC1yZWYpKQo+ID4gPiA+
ID4gKyAgOzsgQXNzaWduaW5nIHRoZSBTQVAgdmFyaWFibGUgYmV0d2VlbiB0d28gcmVhZHMgYXQg
dGhlIHNhbWUgb2Zmc2V0Cj4gPiA+ID4gPiArICA7OyBtdXN0IHByZXZlbnQgQ1NFIHNpbmNlIHRo
ZSBzZWNvbmQgcmVhZCBtYXkgdXNlIGEgZGlmZmVyZW50IFNBUC4KPiA+ID4gPiA+ICsgIChhc3Nl
cnQtY2FsbHMgc2Itc3lzOnNhcC1yZWYtMzIgMiAoc2FwMSBzYXAyIG9mZnNldCkKPiA+ID4gPiA+
ICsgICAgKGRlY2xhcmUgKHR5cGUgc2Itc3lzOnN5c3RlbS1hcmVhLXBvaW50ZXIgc2FwMSBzYXAy
KQo+ID4gPiA+ID4gKyAgICAgICAgICAgICh0eXBlIHNiLXZtOndvcmQgb2Zmc2V0KSkKPiA+ID4g
PiA+ICsgICAgKGxldCAoKGEgKHNiLXN5czpzYXAtcmVmLTMyIHNhcDEgb2Zmc2V0KSkpCj4gPiA+
ID4gPiArICAgICAgKHNldHEgc2FwMSBzYXAyKQo+ID4gPiA+ID4gKyAgICAgIChsZXQgKChiIChz
Yi1zeXM6c2FwLXJlZi0zMiBzYXAxIG9mZnNldCkpKQo+ID4gPiA+ID4gKyAgICAgICAgKGxpc3Qg
YSBiKSkpKSkKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICs7OzsgU0VUUSBvZiBhbiAqdW5yZWxhdGVk
KiB2YXJpYWJsZSBzaG91bGQgTk9UIHByZXZlbnQgQ1NFLgo+ID4gPiA+ID4gKzs7OyBPbmx5IG11
dGF0aW9ucyBvZiB2YXJpYWJsZXMgdGhhdCBwYXJ0aWNpcGF0ZSBpbiB0aGUgbG9hZCBtYXR0ZXIu
Cj4gPiA+ID4gPiArKHdpdGgtdGVzdCAoOm5hbWUgKDpjc2UgOnNldHEtb2YtdW5yZWxhdGVkLXZh
ci1hbGxvd3MtY3NlKSkKPiA+ID4gPiA+ICsgIDs7IFogaXMgbm90IGFuIGFyZ3VtZW50IHRvIENB
Uiwgc28gc2V0dGluZyBaIGRvZXMgbm90IGluaGliaXQgQ1NFLgo+ID4gPiA+ID4gKyAgKGFzc2Vy
dC1jYWxscyBjYXIgMSAoY29ucyB6KQo+ID4gPiA+ID4gKyAgICAoZGVjbGFyZSAodHlwZSBjb25z
IGNvbnMpKQo+ID4gPiA+ID4gKyAgICAobGV0ICgoYSAoY2FyIGNvbnMpKSkKPiA+ID4gPiA+ICsg
ICAgICAoc2V0cSB6IGEpCj4gPiA+ID4gPiArICAgICAgKGxldCAoKGIgKGNhciBjb25zKSkpCj4g
PiA+ID4gPiArICAgICAgICAobGlzdCB6IGIpKSkpKQo+ID4gPiA+ID4gKwo+ID4gPiA+ID4gKzs7
OyBTQi1USFJFQUQ6QkFSUklFUiBvZiBhbnkga2luZCBwcmV2ZW50cyBlbGlzaW9uIG9mIHRoZSBz
ZWNvbmQgbG9hZAo+ID4gPiA+ID4gKzs7OyBzaW5jZSB0aGUgbWVtb3J5IGJhcnJpZXJzIGlzIG5v
dCBmbHVzaGFibGUuIFRoaXMgaXMgdGhlIGNvbnNlcnZhdGl2ZSBzdGFuY2UuCj4gPiA+ID4gPiAr
Ozs7IFRoZSBhY3R1YWwgKGxvb3NlcikgcmVxdWlyZW1lbnRzIGFyZSBtb3JlIHN1YnRsZSB0aGFu
IEkgY2FyZSB0byBkZWFsIHdpdGguCj4gPiA+ID4gPiArKGRlZm1hY3JvIGJhcnJpZXItdGVzdCAo
a2luZCkKPiA+ID4gPiA+ICsgIGAod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6YmFycmllci1wcmV2
ZW50cy1jYXIgLGtpbmQpKQo+ID4gPiA+ID4gKyAgICAoYXNzZXJ0LWNhbGxzIGNhciAyIChjb25z
KQo+ID4gPiA+ID4gKyAgICAgIChkZWNsYXJlICh0eXBlIGNvbnMgY29ucykpCj4gPiA+ID4gPiAr
ICAgICAgKGxldCAoKGEgKGNhciBjb25zKSkpCj4gPiA+ID4gPiArICAgICAgICAoc2ItdGhyZWFk
OmJhcnJpZXIgKCxraW5kKSkKPiA+ID4gPiA+ICsgICAgICAgIChsZXQgKChiIChjYXIgY29ucykp
KQo+ID4gPiA+ID4gKyAgICAgICAgICAobGlzdCBhIGIpKSkpKSkKPiA+ID4gPiA+ICsoYmFycmll
ci10ZXN0IDpyZWFkKQo+ID4gPiA+ID4gKyhiYXJyaWVyLXRlc3QgOndyaXRlKQo+ID4gPiA+ID4g
KyhiYXJyaWVyLXRlc3QgOm1lbW9yeSkKPiA+ID4gPiA+ICsoYmFycmllci10ZXN0IDpjb21waWxl
cikKPiA+ID4gPiA+ICsoYmFycmllci10ZXN0IDpkYXRhLWRlcGVuZGVuY3kpCj4gPiA+ID4gPiAr
Cj4gPiA+ID4gPiArOzs7IEFueSBub24tZmx1c2hhYmxlIGNhbGwgYmV0d2VlbiB0d28gaWRlbnRp
Y2FsIGxvYWRzIHByZXZlbnRzIENTRQo+ID4gPiA+ID4gKzs7OyBiZWNhdXNlIHRoZSBjYWxsIG1h
eSBoYXZlIHNpZGUgZWZmZWN0cyB0aGF0IG1vZGlmeSB0aGUgbG9hZGVkIG1lbW9yeS4KPiA+ID4g
PiA+ICsKPiA+ID4gPiA+ICsod2l0aC10ZXN0ICg6bmFtZSAoOmNzZSA6bm9uLWZsdXNoYWJsZS1j
YWxsLXByZXZlbnRzLWNzZSkpCj4gPiA+ID4gPiArICA7OyBQUklOQyBpcyBhIG5vbi1mbHVzaGFi
bGUKPiA+ID4gPiA+ICsgIChhc3NlcnQtY2FsbHMgY2FyIDIgKGNvbnMpCj4gPiA+ID4gPiArICAg
IChkZWNsYXJlICh0eXBlIGNvbnMgY29ucykpCj4gPiA+ID4gPiArICAgIChsZXQgKChhIChjYXIg
Y29ucykpKQo+ID4gPiA+ID4gKyAgICAgIChwcmluYyA0MikKPiA+ID4gPiA+ICsgICAgICAobGV0
ICgoYiAoY2FyIGNvbnMpKSkKPiA+ID4gPiA+ICsgICAgICAgIChsaXN0IGEgYikpKSkpCj4gPiA+
ID4gPiArCj4gPiA+ID4gPiArOzs7IERpZmZlcmVudCBmdW5jdGlvbnMgb24gdGhlIHNhbWUgb2Jq
ZWN0IGFyZSBOT1QgY29uc2lkZXJlZCBjb21tb24gc3ViZXhwcmVzc2lvbnMuCj4gPiA+ID4gPiAr
Ozs7IChDQVIgeCkgYW5kIChDRFIgeCkgYXJlIGRpZmZlcmVudCBsb2FkcyBldmVuIGlmIHggaXMg
dGhlIHNhbWUuCj4gPiA+ID4gPiArKHdpdGgtdGVzdCAoOm5hbWUgKDpjc2UgOmRpZmZlcmVudC1h
Y2Nlc3NvcnMtbm90LWNzZSkpCj4gPiA+ID4gPiArICA7OyBCb3RoIENBUiBhbmQgQ0RSIHNob3Vs
ZCBhcHBlYXIsIGVhY2ggZXhhY3RseSBvbmNlLgo+ID4gPiA+ID4gKyAgKGFzc2VydC1jYWxscyBj
YXIgMSAoY29ucykKPiA+ID4gPiA+ICsgICAgKGRlY2xhcmUgKHR5cGUgY29ucyBjb25zKSkKPiA+
ID4gPiA+ICsgICAgKGlmIChjYXIgY29ucykKPiA+ID4gPiA+ICsgICAgICAgIChwcmluYyAoY2Ry
IGNvbnMpKQo+ID4gPiA+ID4gKyAgICAgICAgbmlsKSkKPiA+ID4gPiA+ICsgIChhc3NlcnQtY2Fs
bHMgY2RyIDEgKGNvbnMpCj4gPiA+ID4gPiArICAgIChkZWNsYXJlICh0eXBlIGNvbnMgY29ucykp
Cj4gPiA+ID4gPiArICAgIChpZiAoY2FyIGNvbnMpCj4gPiA+ID4gPiArICAgICAgICAocHJpbmMg
KGNkciBjb25zKSkKPiA+ID4gPiA+ICsgICAgICAgIG5pbCkpKQo+ID4gPiA+ID4gZGlmZiAtLWdp
dCBhL3hwZXJmZWN0aGFzaDMwLmxpc3AtZXhwciBiL3hwZXJmZWN0aGFzaDMwLmxpc3AtZXhwcgo+
ID4gPiA+ID4gaW5kZXggNmE1MDNhY2YwLi4xYjcyMjdjNzggMTAwNjQ0Cj4gPiA+ID4gPiAtLS0g
YS94cGVyZmVjdGhhc2gzMC5saXNwLWV4cHIKPiA+ID4gPiA+ICsrKyBiL3hwZXJmZWN0aGFzaDMw
Lmxpc3AtZXhwcgo+ID4gPiA+ID4gQEAgLTE1MDYsNiArMTUwNiw5IEBACj4gPiA+ID4gPiAgKCMo
MTBCRTcyNzcgMTIyMTRBRTggMTJFMkNCREEgMTk3Mzk1MzkgMUYzNTU2QzcgMUY2NDQzODcpCj4g
PiA+ID4gPiAgIihJTlRFR0VSIEJJR05VTSBTQi1WTTo6VU5TSUdORUQtQllURS0zMSBTQi1WTTo6
U0lHTkVELUJZVEUtMzIgRklYTlVNIFNCLVZNOjpQT1NJVElWRS1GSVhOVU0pIgo+ID4gPiA+ID4g
ICIoKCYgKF4gdmFsICg+PiB2YWwgMjIpKSA3KSkiKQo+ID4gPiA+ID4gKygjKDEwRDJFQTRFIDEy
MjRDNTU3IDE1QTU4RDg1IDE1QjVBMkI1IDE3NTI0QTc4IDE3NjlFNDE5IDE4OTA2RDA4KQo+ID4g
PiA+ID4gKyAiKFNCLUM6OkNTRVQgU0ItQzo6UkVGIERFTEFZIFNCLUM6OkFSUkFZLUlOREVYLUNB
U1QgQ0FTVCBTQi1DOjpDT01CSU5BVElPTiBTQi1DOjpDSUYpIgo+ID4gPiA+ID4gKyAiKCgmICgr
ICg+PiB2YWwgMSkgKD4+IHZhbCA5KSkgNykpIikKPiA+ID4gPiA+ICAoIygxMEQyRUE0RSAxMjI0
QzU1NyAxNUE1OEQ4NSAxNUI1QTJCNSAxNzUyNEE3OCAxNzY5RTQxOSAxODkwNkQwOCAxOTU3NzUz
OSAxQzA2NUNCOCAxRDY2QzkzMikKPiA+ID4gPiA+ICAiIygoKDpUWVBFIFNCLUM6OlJFRikpICgo
OlRZUEUgU0ItQzo6Q09NQklOQVRJT04pKSAoKDpUWVBFIFNCLUM6OkNJRikpICgoOlRZUEUgU0It
Qzo6Q1JFVFVSTikpICgoOlRZUEUgU0ItQzo6TVYtQ09NQklOQVRJT04pKSAoKDpUWVBFIEVYSVQp
KSAoKDpUWVBFIFNCLUM6OkNTRVQpKSAoKDpUWVBFIERFTEFZKSAoOlRZUEUgU0ItQzo6QVJSQVkt
SU5ERVgtQ0FTVCkgKDpUWVBFIENBU1QpKSkiCj4gPiA+ID4gPiAgIigobGV0ICgodGFiICNhKCg4
KSAodW5zaWduZWQtYnl0ZSA4KSAwIDUgMiA4IDEzIDMgMCAwKSkpCj4gPiA+ID4gPiBkaWZmIC0t
Z2l0IGEveHBlcmZlY3RoYXNoNjEubGlzcC1leHByIGIveHBlcmZlY3RoYXNoNjEubGlzcC1leHBy
Cj4gPiA+ID4gPiBpbmRleCA2ZWI3MjQ4NmIuLmIxYmMwMTRmYiAxMDA2NDQKPiA+ID4gPiA+IC0t
LSBhL3hwZXJmZWN0aGFzaDYxLmxpc3AtZXhwcgo+ID4gPiA+ID4gKysrIGIveHBlcmZlY3RoYXNo
NjEubGlzcC1leHByCj4gPiA+ID4gPiBAQCAtNDYzLDYgKzQ2Myw5IEBACj4gPiA+ID4gPiAgKCMo
OUEzMjBENCAzOUNBQTMzOSA0M0JCRUUxOCA0RDYxMzY4RiA1MzIyMkRGQiBCRkE4NjE4OSBFREEx
MDM3RiBGRUU5OUE5NSkKPiA+ID4gPiA+ICAiIygoKDpUWVBFIFNCLUM6OlJFRikpICgoOlRZUEUg
U0ItQzo6Q09NQklOQVRJT04pKSAoKDpUWVBFIFNCLUM6Ok1WLUNPTUJJTkFUSU9OKSkgKCg6VFlQ
RSBFWElUKSkgKCg6VFlQRSBTQi1DOjpDU0VUKSkgKCg6VFlQRSBERUxBWSkgKDpUWVBFIFNCLUM6
OkFSUkFZLUlOREVYLUNBU1QpICg6VFlQRSBDQVNUKSkpIgo+ID4gPiA+ID4gICIoKCYgKC0gKD4+
IHZhbCAzKSAoPj4gdmFsIDI5KSkgNykpIikKPiA+ID4gPiA+ICsoIyg5QTMyMEQ0IDM5Q0FBMzM5
IDQzQkJFRTE4IDUzMjIyREZCIDkzODA4MzdDIEJGQTg2MTg5IEZFRTk5QTk1KQo+ID4gPiA+ID4g
KyAiIygoKDpUWVBFIFNCLUM6OkNJRikgKDpUWVBFIFNCLUM6OkNPTUJJTkFUSU9OKSAoOlRZUEUg
REVMQVkpICg6VFlQRSBTQi1DOjpBUlJBWS1JTkRFWC1DQVNUKSAoOlRZUEUgQ0FTVCkgKDpUWVBF
IFNCLUM6OlJFRikgKDpUWVBFIFNCLUM6OkNTRVQpKSkiCj4gPiA+ID4gPiArICIoKCYgKCsgdmFs
ICg+PiB2YWwgMzEpKSA3KSkiKQo+ID4gPiA+ID4gICgjKDlBMzIwRDQgNDNCQkVFMTggNTMyMjJE
RkIgQThBNEM3RDIgQkZBODYxODkgRUFBM0RBNUMgRkVFOTlBOTUpCj4gPiA+ID4gPiAgIiMoKCg6
VFlQRSBTQi1DOjpSRUYpKSAoKDpUWVBFIERFTEFZKSAoOlRZUEUgU0ItQzo6QVJSQVktSU5ERVgt
Q0FTVCkgKDpUWVBFIENBU1QpKSAoKDpUWVBFIFNCLUM6OkNPTUJJTkFUSU9OKSkgKCg6VFlQRSBT
Qi1DOjpFTlRSWSkpICgoOlRZUEUgU0ItQzo6RU5DTE9TRSkpKSIKPiA+ID4gPiA+ICAiKCgmIChe
ICg+PiB2YWwgNykgKD4+IHZhbCAyMykpIDcpKSIpCj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEveHBl
cmZlY3RoYXNoNjMubGlzcC1leHByIGIveHBlcmZlY3RoYXNoNjMubGlzcC1leHByCj4gPiA+ID4g
PiBpbmRleCBjYzg2MWJiMzMuLjEzYmI1ZDg1ZCAxMDA2NDQKPiA+ID4gPiA+IC0tLSBhL3hwZXJm
ZWN0aGFzaDYzLmxpc3AtZXhwcgo+ID4gPiA+ID4gKysrIGIveHBlcmZlY3RoYXNoNjMubGlzcC1l
eHByCj4gPiA+ID4gPiBAQCAtODcwLDYgKzg3MCw5IEBACj4gPiA+ID4gPiAgKCMoMTIxMDY4REQg
NEQ2MTM2OEYgNTgxMTBFN0YgNjdFRTJEMUEgNkQ5QTg4M0QgNzQ1ODlEODIgODk3QjQ2NTYgQTY4
QTM5NjUpCj4gPiA+ID4gPiAgIiMoKCg6VFlQRSBTQi1DOjpSRUYpKSAoKDpUWVBFIFNCLUM6OkNP
TUJJTkFUSU9OKSkgKCg6VFlQRSBTQi1DOjpNVi1DT01CSU5BVElPTikpICgoOlRZUEUgRVhJVCkp
ICgoOlRZUEUgU0ItQzo6Q1NFVCkpICgoOlRZUEUgREVMQVkpICg6VFlQRSBTQi1DOjpBUlJBWS1J
TkRFWC1DQVNUKSAoOlRZUEUgQ0FTVCkpKSIKPiA+ID4gPiA+ICAiKCgmICgtICg+PiB2YWwgNCkg
KD4+IHZhbCAxNikpIDcpKSIpCj4gPiA+ID4gPiArKCMoMTIxMDY4REQgNTgxMTBFN0YgNjdFRTJE
MUEgNkQ5QTg4M0QgNzQyRDRDNTQgODk3QjQ2NTYgQTY4QTM5NjUpCj4gPiA+ID4gPiArICIjKCgo
OlRZUEUgU0ItQzo6Q0lGKSAoOlRZUEUgU0ItQzo6Q09NQklOQVRJT04pICg6VFlQRSBERUxBWSkg
KDpUWVBFIFNCLUM6OkFSUkFZLUlOREVYLUNBU1QpICg6VFlQRSBDQVNUKSAoOlRZUEUgU0ItQzo6
UkVGKSAoOlRZUEUgU0ItQzo6Q1NFVCkpKSIKPiA+ID4gPiA+ICsgIigoJiAoLSAoPj4gdmFsIDQp
ICg+PiB2YWwgMTYpKSA3KSkiKQo+ID4gPiA+ID4gICgjKDEyNkFEQjAyIDMxQjA5NUREIDQyRDgz
RkZCIDQzNDFGN0Q4IDYzQzk3MUQ3IDdBODBGMjAxIDdCNDA4ODgwIDhGNzkxMkQ2IEVCRDAxODcy
KQo+ID4gPiA+ID4gICIoOkFMTE9XLU9USEVSLUtFWVMgOlRZUEUgOlJFU1VMVC1TUEVDUyA6QVJH
LVNQRUNTIDpDQUxMRVIgOkRFUFMgOkZJUkVEIDpMRVhFTlYgOlNPVVJDRS1QQVRIKSIKPiA+ID4g
PiA+ICAiKChsZXQgKCh0YWIgI2EoKDgpICh1bnNpZ25lZC1ieXRlIDgpIDAgNSAwIDMgMCA1IDEy
IDYpKSkKPiA+ID4gPiA+Cj4gPiA+ID4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gPiA+ID4KPiA+ID4g
PiA+Cj4gPiA+ID4gPiBob29rcy9wb3N0LXJlY2VpdmUKPiA+ID4gPiA+IC0tCj4gPiA+ID4gPiBT
QkNMCj4gPiA+ID4gPgo+ID4gPiA+ID4KPiA+ID4gPiA+IF9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCj4gPiA+ID4gPiBTYmNsLWNvbW1pdHMgbWFpbGluZyBs
aXN0Cj4gPiA+ID4gPiBTYmNsLWNvbW1pdHNAbGlzdHMuc291cmNlZm9yZ2UubmV0Cj4gPiA+ID4g
PiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9zYmNsLWNvbW1p
dHMKPgo+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K
PiBTYmNsLWNvbW1pdHMgbWFpbGluZyBsaXN0Cj4gU2JjbC1jb21taXRzQGxpc3RzLnNvdXJjZWZv
cmdlLm5ldAo+IGh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3Ni
Y2wtY29tbWl0cwo+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KPiBTYmNsLWNvbW1pdHMgbWFpbGluZyBsaXN0Cj4gU2JjbC1jb21taXRzQGxpc3RzLnNv
dXJjZWZvcmdlLm5ldAo+IGh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3Rp
bmZvL3NiY2wtY29tbWl0cwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fClNiY2wtY29tbWl0cyBtYWlsaW5nIGxpc3QKU2JjbC1jb21taXRzQGxpc3RzLnNv
dXJjZWZvcmdlLm5ldApodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5m
by9zYmNsLWNvbW1pdHMK