Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 02 May 2011 17:00:05 -0400
From:      Nikolai Lifanov <lifanov@mail.lifanov.com>
To:        svn-src-head@freebsd.org
Subject:   Re: svn-src-head Digest, Vol 88, Issue 2
Message-ID:  <5alg8t0yj1ngqaan4tsr1xyj.1304370005205@email.android.com>

next in thread | raw e-mail | index | archive | help
Cgpzdm4tc3JjLWhlYWQtcmVxdWVzdEBmcmVlYnNkLm9yZyB3cm90ZToKCj5TZW5kIHN2bi1zcmMt
aGVhZCBtYWlsaW5nIGxpc3Qgc3VibWlzc2lvbnMgdG8KPglzdm4tc3JjLWhlYWRAZnJlZWJzZC5v
cmcKPgo+VG8gc3Vic2NyaWJlIG9yIHVuc3Vic2NyaWJlIHZpYSB0aGUgV29ybGQgV2lkZSBXZWIs
IHZpc2l0Cj4JaHR0cDovL2xpc3RzLmZyZWVic2Qub3JnL21haWxtYW4vbGlzdGluZm8vc3ZuLXNy
Yy1oZWFkCj5vciwgdmlhIGVtYWlsLCBzZW5kIGEgbWVzc2FnZSB3aXRoIHN1YmplY3Qgb3IgYm9k
eSAnaGVscCcgdG8KPglzdm4tc3JjLWhlYWQtcmVxdWVzdEBmcmVlYnNkLm9yZwo+Cj5Zb3UgY2Fu
IHJlYWNoIHRoZSBwZXJzb24gbWFuYWdpbmcgdGhlIGxpc3QgYXQKPglzdm4tc3JjLWhlYWQtb3du
ZXJAZnJlZWJzZC5vcmcKPgo+V2hlbiByZXBseWluZywgcGxlYXNlIGVkaXQgeW91ciBTdWJqZWN0
IGxpbmUgc28gaXQgaXMgbW9yZSBzcGVjaWZpYwo+dGhhbiAiUmU6IENvbnRlbnRzIG9mIHN2bi1z
cmMtaGVhZCBkaWdlc3QuLi4iCj4KPlRvZGF5J3MgVG9waWNzOgo+Cj4gICAxLiBzdm4gY29tbWl0
OiByMjIxMzAwIC0gaGVhZC9zeXMvY29uZiAoQmVybmhhcmQgU2NobWlkdCkKPiAgIDIuIHN2biBj
b21taXQ6IHIyMjEzMDEgLSBoZWFkL3N5cy9jb25mIChCZXJuaGFyZCBTY2htaWR0KQo+ICAgMy4g
UmU6IHN2biBjb21taXQ6IHIyMjEzMDEgLSBoZWFkL3N5cy9jb25mIChOYXRoYW4gV2hpdGVob3Ju
KQo+ICAgNC4gc3ZuIGNvbW1pdDogcjIyMTMwMyAtIGhlYWQvdXNyLmJpbi9tYW4gKFVscmljaCBT
cG9lcmxlaW4pCj4gICA1LiBSZTogc3ZuIGNvbW1pdDogcjIyMTMwMSAtIGhlYWQvc3lzL2NvbmYg
KEJlcm5oYXJkIFNjaG1pZHQpCj4gICA2LiBzdm4gY29tbWl0OiByMjIxMzA0IC0gaGVhZC9zYmlu
L3JlY292ZXJkaXNrIChVbHJpY2ggU3BvZXJsZWluKQo+ICAgNy4gc3ZuIGNvbW1pdDogcjIyMTMw
NSAtIGhlYWQvc2hhcmUvbWFuL21hbjQgKENocmlzdGlhbiBCcnVlZmZlcikKPiAgIDguIHN2biBj
b21taXQ6IHIyMjEzMDYgLSBpbiBoZWFkL3N5czogZnMvbmZzIG5mcyAoUmljayBNYWNrbGVtKQo+
ICAgOS4gc3ZuIGNvbW1pdDogcjIyMTMwNyAtIGhlYWQvc3lzL21pcHMvYXRoZXJvcyAoQWRyaWFu
IENoYWRkKQo+ICAxMC4gc3ZuIGNvbW1pdDogcjIyMTMwOCAtIGhlYWQvdXNyLmJpbi9uZnNzdGF0
IChSaWNrIE1hY2tsZW0pCj4gIDExLiBzdm4gY29tbWl0OiByMjIxMzA5IC0gaGVhZC91c3IuYmlu
L25mc3N0YXQgKFJpY2sgTWFja2xlbSkKPiAgMTIuIHN2biBjb21taXQ6IHIyMjEzMTIgLSBoZWFk
L3N5cy9jb25mIChBZHJpYW4gQ2hhZGQpCj4gIDEzLiBSZTogc3ZuIGNvbW1pdDogcjIyMTMwMSAt
IGhlYWQvc3lzL2NvbmYgKEFkcmlhbiBDaGFkZCkKPiAgMTQuIHN2biBjb21taXQ6IHIyMjEzMTkg
LSBoZWFkL3NoYXJlL21pc2MgKE1heGltIEtvbm92YWxvdikKPiAgMTUuIHN2biBjb21taXQ6IHIy
MjEzMjAgLSBoZWFkL3N5cy9jb25mIChCcnVjZSBDcmFuKQo+ICAxNi4gc3ZuIGNvbW1pdDogcjIy
MTMyMSAtIGhlYWQvc3lzL21pcHMvY29uZiAoQWRyaWFuIENoYWRkKQo+ICAxNy4gUmU6IHN2biBj
b21taXQ6IHIyMjEzMjAgLSBoZWFkL3N5cy9jb25mIChBbGV4YW5kZXIgQmVzdCkKPiAgMTguIFJl
OiBzdm4gY29tbWl0OiByMjIxMjE0IC0gaGVhZC9zeXMveDg2L3g4NiAoRGltaXRyeSBBbmRyaWMp
Cj4gIDE5LiBzdm4gY29tbWl0OiByMjIxMzI0IC0gaW4gaGVhZC9zeXM6IGFtZDY0L3BjaSBkZXYv
YWNwaWNhCj4gICAgICBkZXYvcGNpCWkzODYvcGNpIHg4Ni94ODYgKEpvaG4gQmFsZHdpbikKPiAg
MjAuIHN2biBjb21taXQ6IHIyMjEzMjYgLSBoZWFkL3N5cy9kZXYvcHVjIChKb2huIEJhbGR3aW4p
Cj4gIDIxLiBSZTogc3ZuIGNvbW1pdDogcjIyMTMwMSAtIGhlYWQvc3lzL2NvbmYgKEpvaG4gQmFs
ZHdpbikKPiAgMjIuIHN2biBjb21taXQ6IHIyMjEzMjcgLSBoZWFkL3N5cy9kZXYvY2FyZGJ1cyAo
Sm9obiBCYWxkd2luKQo+ICAyMy4gc3ZuIGNvbW1pdDogcjIyMTMyOCAtIGhlYWQvc3lzL25ldGlu
ZXQgKE1pY2hhZWwgVHVleGVuKQo+ICAyNC4gc3ZuIGNvbW1pdDogcjIyMTMyOSAtIGhlYWQvc3lz
L2kzODYvY29uZiAoQmVybmhhcmQgU2NobWlkdCkKPiAgMjUuIFJlOiBzdm4gY29tbWl0OiByMjIx
MzAxIC0gaGVhZC9zeXMvY29uZiAoQmVybmhhcmQgU2NobWlkdCkKPiAgMjYuIHN2biBjb21taXQ6
IHIyMjEzMzEgLSBoZWFkL3N5cy94ODYveDg2IChKdW5nLXVrIEtpbSkKPiAgMjcuIFJlOiBzdm4g
Y29tbWl0OiByMjIxMjE0IC0gaGVhZC9zeXMveDg2L3g4NiAoSnVuZy11ayBLaW0pCj4gIDI4LiBS
ZTogc3ZuIGNvbW1pdDogcjIyMTMwMSAtIGhlYWQvc3lzL2NvbmYgKEpvaG4gQmFsZHdpbikKPiAg
MjkuIHN2biBjb21taXQ6IHIyMjEzMzMgLSBoZWFkIChEaW1pdHJ5IEFuZHJpYykKPiAgMzAuIHN2
biBjb21taXQ6IHIyMjEzMzQgLSBoZWFkL3N5cy9pYTY0L2luY2x1ZGUgKE1hcmNlbCBNb29sZW5h
YXIpCj4gIDMxLiBzdm4gY29tbWl0OiByMjIxMzM1IC0gaGVhZC9zeXMvZGV2L2NvcmV0ZW1wIChY
aW4gTEkpCj4gIDMyLiBzdm4gY29tbWl0OiByMjIxMzM2IC0gaGVhZC9zeXMvZGV2L2FjcGljYSAo
Sm9obiBCYWxkd2luKQo+Cj5BdXRob3I6IGJzY2htaWR0Cj5EYXRlOiBTdW4gTWF5ICAxIDE4OjQy
OjU2IDIwMTEKPk5ldyBSZXZpc2lvbjogMjIxMzAwCj5VUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5v
cmcvY2hhbmdlc2V0L2Jhc2UvMjIxMzAwCj4KPkxvZzoKPiAgQWRkIGZpbGVzIGZvciB3cGkoNCkK
Pgo+TW9kaWZpZWQ6Cj4gIGhlYWQvc3lzL2NvbmYvZmlsZXMKPgo+TW9kaWZpZWQ6IGhlYWQvc3lz
L2NvbmYvZmlsZXMKPj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+LS0tIGhlYWQvc3lzL2NvbmYvZmls
ZXMJU3VuIE1heSAgMSAxODo0MTo1NyAyMDExCShyMjIxMjk5KQo+KysrIGhlYWQvc3lzL2NvbmYv
ZmlsZXMJU3VuIE1heSAgMSAxODo0Mjo1NiAyMDExCShyMjIxMzAwKQo+QEAgLTE5OTUsNiArMTk5
NSw3IEBAIGRldi93aS9pZl93aS5jCQkJb3B0aW9uYWwgd2kKPiBkZXYvd2kvaWZfd2lfcGNjYXJk
LmMJCW9wdGlvbmFsIHdpIHBjY2FyZAo+IGRldi93aS9pZl93aV9wY2kuYwkJb3B0aW9uYWwgd2kg
cGNpCj4gZGV2L3dsL2lmX3dsLmMJCQlvcHRpb25hbCB3bCBpc2EKPitkZXYvd3BpL2lmX3dwaS5j
CQlvcHRpb25hbCB3cGkgcGNpCj4gd3BpZncuYwkJCW9wdGlvbmFsIHdwaWZ3CQkJCQlcCj4gCWNv
bXBpbGUtd2l0aAkiJHtBV0t9IC1mICRTL3Rvb2xzL2Z3X3N0dWIuYXdrIHdwaS5mdzp3cGlmdzox
NTMyMjkgLW13cGkgLWMkey5UQVJHRVR9IiBcCj4gCW5vLWltcGxpY2l0LXJ1bGUgYmVmb3JlLWRl
cGVuZCBsb2NhbAkJCQlcCj4KPgo+QXV0aG9yOiBic2NobWlkdAo+RGF0ZTogU3VuIE1heSAgMSAx
OTowNTo1NCAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMwMQo+VVJMOiBodHRwOi8vc3ZuLmZyZWVi
c2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwMQo+Cj5Mb2c6Cj4gIFRoZXNlIGFyZSBvZiBjb3Vy
c2UgaTM4Ni9hbWQ2NCBvbmx5Lgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvY29uZi9OT1RFUwo+
Cj5Nb2RpZmllZDogaGVhZC9zeXMvY29uZi9OT1RFUwo+PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4t
LS0gaGVhZC9zeXMvY29uZi9OT1RFUwlTdW4gTWF5ICAxIDE4OjQyOjU2IDIwMTEJKHIyMjEzMDAp
Cj4rKysgaGVhZC9zeXMvY29uZi9OT1RFUwlTdW4gTWF5ICAxIDE5OjA1OjU0IDIwMTEJKHIyMjEz
MDEpCj5AQCAtMTkzNSw5ICsxOTM1LDYgQEAgZGV2aWNlCQl4bXBoeQkJIyBYYVF0aSBYTUFDIElJ
Cj4gIwkoaGludCBvZiBwcmVmZXJfaW9tYXAgY2FuIGJlIGRvbmUgdG8gcHJlZmVyIEkvTyBpbnN0
ZWFkIG9mIE1lbSBtYXBwaW5nKQo+ICMgZ2VtOiAgQXBwbGUgR01BQy9TdW4gRVJJL1N1biBHRU0K
PiAjIGhtZTogIFN1biBITUUgKEhhcHB5IE1lYWwgRXRoZXJuZXQpCj4tIyBpcHc6ICBJbnRlbCAy
MTAwIHdpcmVsZXNzIE5JQ3MuCj4tIyBpd2k6ICBJbnRlbCAyMjAwQkcvMjIyNUJHLzI5MTVBQkcg
d2lyZWxlc3MgTklDcy4KPi0jIGl3bjogIEludGVsIDQ5NjUvMTAwMC81MDAwLzYwMDAgd2lyZWxl
c3MgTklDcy4KPiAjIGptZTogIEpNaWNyb24gSk1DMjYwIEZhc3QgRXRoZXJuZXQvSk1DMjUwIEdp
Z2FiaXQgRXRoZXJuZXQgYmFzZWQgYWRhcHRlcnMuCj4gIyBsZTogICBBTUQgQW03OTAwIExBTkNF
IGFuZCBBbTc5Qzl4eCBQQ25ldAo+ICMgbGdlOglTdXBwb3J0IGZvciBQQ0kgZ2lnYWJpdCBldGhl
cm5ldCBhZGFwdGVycyBiYXNlZCBvbiB0aGUgTGV2ZWwgMQo+QEAgLTIwMTYsNyArMjAxMyw2IEBA
IGRldmljZQkJeG1waHkJCSMgWGFRdGkgWE1BQyBJSQo+ICMgd2k6ICAgTHVjZW50IFdhdmVMQU4v
SUVFRSA4MDIuMTEgUENNQ0lBIGFkYXB0ZXJzLiBOb3RlOiB0aGlzIHN1cHBvcnRzIGJvdGgKPiAj
ICAgICAgIHRoZSBQQ01DSUEgYW5kIElTQSBjYXJkczogdGhlIElTQSBjYXJkIGlzIHJlYWxseSBh
IFBDTUNJQSB0byBJU0EKPiAjICAgICAgIGJyaWRnZSB3aXRoIGEgUENNQ0lBIGFkYXB0ZXIgcGx1
Z2dlZCBpbnRvIGl0Lgo+LSMgd3BpOiAgSW50ZWwgMzk0NUFCRyB3aXJlbGVzcyBOSUNzLgo+ICMg
eGU6ICAgWGlyY29tL0ludGVsIEV0aGVyRXhwcmVzcyBQcm8xMDAvMTYgUEMgQ2FyZCBldGhlcm5l
dCBjb250cm9sbGVyLAo+ICMgICAgICAgQWNjdG9uIEZhc3QgRXRoZXJDYXJkLTE2LCBDb21wYXEg
TmV0ZWxsaWdlbnQgMTAvMTAwIFBDIENhcmQsCj4gIyAgICAgICBUb3NoaWJhIDEwLzEwMCBFdGhl
cm5ldCBQQyBDYXJkLCBYaXJjb20gMTYtYml0IEV0aGVybmV0ICsgTW9kZW0gNTYKPkBAIC0yMTM3
LDEzICsyMTMzLDkgQEAgb3B0aW9ucwkgICAJQUhfUlhDRkdfU0RNQU1XXzRCWVRFUwo+IGRldmlj
ZQkJYXRoX3JhdGVfc2FtcGxlCSMgU2FtcGxlUmF0ZSB0eCByYXRlIGNvbnRyb2wgZm9yIGF0aAo+
IGRldmljZQkJYndpCQkjIEJyb2FkY29tIEJDTTQzMCogQkNNNDMxKgo+IGRldmljZQkJYnduCQkj
IEJyb2FkY29tIEJDTTQzeHgKPi1kZXZpY2UJCWlwdwkJIyBJbnRlbCAyMTAwIHdpcmVsZXNzIE5J
Q3MuCj4tZGV2aWNlCQlpd2kJCSMgSW50ZWwgMjIwMEJHLzIyMjVCRy8yOTE1QUJHIHdpcmVsZXNz
IE5JQ3MuCj4tZGV2aWNlCQlpd24JCSMgSW50ZWwgNDk2NS8xMDAwLzUwMDAvNjAwMCB3aXJlbGVz
cyBOSUNzLgo+IGRldmljZQkJbWFsbwkJIyBNYXJ2ZWxsIExpYmVydGFzIHdpcmVsZXNzIE5JQ3Mu
Cj4gZGV2aWNlCQltd2wJCSMgTWFydmVsbCA4OFc4MzYzIDgwMi4xMW4gd2lyZWxlc3MgTklDcy4K
PiBkZXZpY2UJCXJhbAkJIyBSYWxpbmsgVGVjaG5vbG9neSBSVDI1MDAgd2lyZWxlc3MgTklDcy4K
Pi1kZXZpY2UJCXdwaQkJIyBJbnRlbCAzOTQ1QUJHIHdpcmVsZXNzIE5JQ3MuCj4gCj4gIyBVc2Ug
InByaXZhdGUiIGp1bWJvIGJ1ZmZlcnMgYWxsb2NhdGVkIGV4Y2x1c2l2ZWx5IGZvciB0aGUgdGko
NCkgZHJpdmVyLgo+ICMgVGhpcyBvcHRpb24gaXMgaW5jb21wYXRpYmxlIHdpdGggdGhlIFRJX0pV
TUJPX0hEUlNQTElUIG9wdGlvbiBiZWxvdy4KPgo+Cj5PbiAwNS8wMS8xMSAxNDowNSwgQmVybmhh
cmQgU2NobWlkdCB3cm90ZToKPj4gQXV0aG9yOiBic2NobWlkdAo+PiBEYXRlOiBTdW4gTWF5ICAx
IDE5OjA1OjU0IDIwMTEKPj4gTmV3IFJldmlzaW9uOiAyMjEzMDEKPj4gVVJMOiBodHRwOi8vc3Zu
LmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwMQo+Pgo+PiBMb2c6Cj4+ICAgIFRoZXNl
IGFyZSBvZiBjb3Vyc2UgaTM4Ni9hbWQ2NCBvbmx5Lgo+Cj4KPkknbSBub3Qgc3VyZSB0aGF0J3Mg
aW50cmluc2ljYWxseSB0cnVlLiBFdmVuIGlmIHRoZXkgbW9zdGx5IG9ubHkgc2hpcCAKPndpdGgg
SW50ZWwgbW90aGVyYm9hcmRzLCBtYW55IG9mIHRoZXNlIGFyZSBNaW5pLVBDSSBwYXJ0cyB3aGlj
aCBjb3VsZCBiZSAKPnB1dCBpbnRvIG5vbi14ODYgc3lzdGVtcy4KPi1OYXRoYW4KPgo+Cj5BdXRo
b3I6IHVxcwo+RGF0ZTogU3VuIE1heSAgMSAxOTo0NzozNCAyMDExCj5OZXcgUmV2aXNpb246IDIy
MTMwMwo+VVJMOiBodHRwOi8vc3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwMwo+
Cj5Mb2c6Cj4gIExldCB1c2VycycgUEFUSCBkZWNpZGUgd2hpY2ggZ3JvZmYgc3VpdGUgdG8gcGlj
ayB1cC4KPiAgCj4gIExldCBncm9mZiBwYXNzIHRoZSAtYyBmbGFnIHRvIGdyb3R0eSwgd2hpY2gg
d2lsbCB0dXJuIG9mZiBBTlNJCj4gIHNlcXVlbmNlcy4gV2hpbGUgdGhlc2UgYXJlIG5vdCBhIHBy
b2JsZW0gZm9yIG91ciBtb3JlL2xlc3MsIHRoZXkgZ2V0Cj4gIG1hbmdsZWQgYnkgY29sKDEpIGFu
ZCB0aGlzIHdpbGwgcmVzdWx0IGluIGdhcmJhZ2Ugb3V0cHV0Lgo+ICAKPiAgVGhpcyBtYWtlcyBt
YW4oMSkgd29yayB0b2dldGhlciB3aXRoIHRleHRwcm9jL2dyb2ZmLCBpbiBjYXNlIHRoZQo+ICB1
c2VyIGRlY2lkZWQgdG8gZGVsZXRlIHRoZSBvbGQgZ3JvZmYgZnJvbSBiYXNlICgtRFdJVEhPVVRf
R1JPRkYpLgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC91c3IuYmluL21hbi9tYW4uc2gKPgo+TW9kaWZp
ZWQ6IGhlYWQvdXNyLmJpbi9tYW4vbWFuLnNoCj49PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPi0tLSBo
ZWFkL3Vzci5iaW4vbWFuL21hbi5zaAlTdW4gTWF5ICAxIDE5OjI0OjUxIDIwMTEJKHIyMjEzMDIp
Cj4rKysgaGVhZC91c3IuYmluL21hbi9tYW4uc2gJU3VuIE1heSAgMSAxOTo0NzozNCAyMDExCShy
MjIxMzAzKQo+QEAgLTg4OSwxNiArODg5LDE4IEBAIGRvX3doYXRpcygpIHsKPiAJc2VhcmNoX3do
YXRpcyB3aGF0aXMgIiRAIgo+IH0KPiAKPi1FUU49L3Vzci9iaW4vZXFuCj4rIyBVc2VyJ3MgUEFU
SCBzZXR0aW5nIGRlY2lkZXMgb24gdGhlIGdyb2ZmLXN1aXRlIHRvIHBpY2sgdXAuCj4rRVFOPWVx
bgo+K05ST0ZGPSdncm9mZiAtUyAtUC1jIC1XYWxsIC1tdHR5LWNoYXIgLW1hbicKPitQSUM9cGlj
Cj4rUkVGRVI9cmVmZXIKPitUQkw9dGJsCj4rVFJPRkY9J2dyb2ZmIC1TIC1QLWMgLW1hbicKPitW
R1JJTkQ9dmdyaW5kCj4rCj4gQ09MPS91c3IvYmluL2NvbAo+IExPQ0FMRT0vdXNyL2Jpbi9sb2Nh
bGUKPi1OUk9GRj0nL3Vzci9iaW4vZ3JvZmYgLVMgLVdhbGwgLW10dHktY2hhciAtbWFuJwo+LVBJ
Qz0vdXNyL2Jpbi9waWMKPiBTWVNDVEw9L3NiaW4vc3lzY3RsCj4tVEJMPS91c3IvYmluL3RibAo+
LVRST0ZGPScvdXNyL2Jpbi9ncm9mZiAtUyAtbWFuJwo+LVJFRkVSPS91c3IvYmluL3JlZmVyCj4t
VkdSSU5EPS91c3IvYmluL3ZncmluZAo+IAo+IGRlYnVnPTAKPiBtYW5fZGVmYXVsdF9zZWN0aW9u
cz0nMToxYW91dDo4OjI6MzpuOjQ6NTo2Ojc6OTpsJwo+Cj4KPk9uIFN1bmRheSAwMSBNYXkgMjAx
MSAyMToyODoyOCBOYXRoYW4gV2hpdGVob3JuIHdyb3RlOgo+PiBPbiAwNS8wMS8xMSAxNDowNSwg
QmVybmhhcmQgU2NobWlkdCB3cm90ZToKPj4gPiBBdXRob3I6IGJzY2htaWR0Cj4+ID4gRGF0ZTog
U3VuIE1heSAgMSAxOTowNTo1NCAyMDExCj4+ID4gTmV3IFJldmlzaW9uOiAyMjEzMDEKPj4gPiBV
Ukw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jhc2UvMjIxMzAxCj4+ID4KPj4g
PiBMb2c6Cj4+ID4gICAgVGhlc2UgYXJlIG9mIGNvdXJzZSBpMzg2L2FtZDY0IG9ubHkuCj4+IAo+
PiAKPj4gSSdtIG5vdCBzdXJlIHRoYXQncyBpbnRyaW5zaWNhbGx5IHRydWUuIEV2ZW4gaWYgdGhl
eSBtb3N0bHkgb25seSBzaGlwIAo+PiB3aXRoIEludGVsIG1vdGhlcmJvYXJkcywgbWFueSBvZiB0
aGVzZSBhcmUgTWluaS1QQ0kgcGFydHMgd2hpY2ggY291bGQgYmUgCj4+IHB1dCBpbnRvIG5vbi14
ODYgc3lzdGVtcy4KPgo+WWVzLCBpbmRlZWQuIFRob3NlIG1pZ2h0IG9mIGNvdXJzZSBiZSB1c2Vk
IG9uIG90aGVyIHBsYXRmb3JtcyB0b28KPih3ZWxsIGF0IGxlYXN0IGl0IGZpdHMgaW50byB0aGUg
c2xvdCwgSSBrbm93IHRoYXQgY2VydGFpbiBmZWF0dXJlcwo+YXJlIG5vdCBldmVuIGF2YWlsYWJs
ZSBvbiBBTUQgcGxhdGZvcm1zKS4gSSdtIGp1c3Qgbm90IGF3YXJlIHRoYXQKPmFueW9uZSBldmVy
IHRyaWVkIG9uZSBvZiBpdCBvbiBtaXBzIGZvciBleGFtcGxlLgo+Cj5JIGRvbid0IG1pbmQgYmVp
bmcgcHJvdmVuIHdyb25nIGFuZCBpZiBzbyBtb3ZlIHRoZSBlbnRyaWVzIGJhY2sgdG8KPmEgbW9y
ZSBnZW5lcmljIGxvY2F0aW9uLiBDdXJyZW50bHkgSSdtIGp1c3QgdHJ5aW5nIG1pbWljIHRoZSBt
b2R1bGUKPmJlaGF2aW91ciBpbiBzeXMvbW9kdWxlcy9NYWtlZmlsZS4KPgo+LS0gCj5CZXJuaGFy
ZAo+Cj4KPkF1dGhvcjogdXFzCj5EYXRlOiBTdW4gTWF5ICAxIDIwOjE0OjEwIDIwMTEKPk5ldyBS
ZXZpc2lvbjogMjIxMzA0Cj5VUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jh
c2UvMjIxMzA0Cj4KPkxvZzoKPiAgcmVjb3ZlcmRpc2soOCk6IHRyZWF0IG91dHB1dCBmaWxlIGNv
bnNpc3RlbnRseSBhbmQgYWJvcnQgb24gRUlOVkFMCj4gIAo+ICBUaGlzIGltcHJvdmVzIHVzYWJp
bGl0eSBhIGxpdHRsZSBhcyB3ZSBubyBsb25nZXIgcmVxdWlyZSB1c2luZyB0b3VjaC4KPiAgQWxz
byByZXdvcmQgdGhlIG1hbnBhZ2Ugd3J0LiBwYXJhbWV0ZXJzIGFuZCBmaXggdXNhZ2UoKSBbMV0K
PiAgCj4gIFdpdGggbm8gbWVkaWEgaW4gYSBjZCg0KSBkcml2ZSwgdGhlIHJlYWRzIHdpbGwgbG9v
cCBwcm9kdWNpbmcgRUlOVkFMLAo+ICBhYm9ydCBpbiB0aGF0IGNhc2UgWzJdLgo+ICAKPiAgRG9j
dW1lbnQgdGhlIHNob3J0Y29taW5nIG9mIHNlY3RvcnNpemUgYW5kIE1BWFBIWVMgKGEgcXVpY2sg
c29sdXRpb24KPiAgdG8gdGhpcyBtaWdodCBiZSBoYXZpbmcgTUFYUEhZUyBhcyB0aGUgImJpZ3Np
emUiLCBpbiBzaG9ydCB0ZXN0aW5nIGl0Cj4gIGRpZG4ndCBtYWtlIGEgZGlmZmVyZW5jZSBvbiB0
aHJvdWdocHV0KS4KPiAgCj4gIFN1Ym1pdHRlZCBieToJYXJ1bmRlbCBbMV0KPiAgUFI6CQliaW4v
MTU0NTI4IFsyXQo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zYmluL3JlY292ZXJkaXNrL3JlY292ZXJk
aXNrLjEKPiAgaGVhZC9zYmluL3JlY292ZXJkaXNrL3JlY292ZXJkaXNrLmMKPgo+TW9kaWZpZWQ6
IGhlYWQvc2Jpbi9yZWNvdmVyZGlzay9yZWNvdmVyZGlzay4xCj49PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KPi0tLSBoZWFkL3NiaW4vcmVjb3ZlcmRpc2svcmVjb3ZlcmRpc2suMQlTdW4gTWF5ICAxIDE5
OjQ3OjM0IDIwMTEJKHIyMjEzMDMpCj4rKysgaGVhZC9zYmluL3JlY292ZXJkaXNrL3JlY292ZXJk
aXNrLjEJU3VuIE1heSAgMSAyMDoxNDoxMCAyMDExCShyMjIxMzA0KQo+QEAgLTI0LDcgKzI0LDcg
QEAKPiAuXCIKPiAuXCIgJEZyZWVCU0QkCj4gLlwiCj4tLkRkIE1heSA2LCAyMDA2Cj4rLkRkIE1h
eSAxLCAyMDExCj4gLkR0IFJFQ09WRVJESVNLIDEKPiAuT3MKPiAuU2ggTkFNRQo+QEAgLTMzLDE3
ICszMywyMCBAQAo+IC5TaCBTWU5PUFNJUwo+IC5ObQo+IC5PcCBGbCBiIEFyIGJpZ3NpemUKPi0u
T3AgRmwgciBBciBybGlzdAo+LS5PcCBGbCBzIEFyIHNuYXBzaG90Cj4tLk9wIEZsIHcgQXIgd2xp
c3QKPi0uQXIgc3BlY2lhbAo+LS5PcCBBciBmaWxlCj4rLk9wIEZsIHIgQXIgcmVhZGxpc3QKPisu
T3AgRmwgcyBBciBpbnRlcnZhbAo+Ky5PcCBGbCB3IEFyIHdyaXRlbGlzdAo+Ky5BciBzb3VyY2UK
PisuT3AgQXIgZGVzdGluYXRpb24KPiAuU2ggREVTQ1JJUFRJT04KPiBUaGUKPiAuTm0KPiB1dGls
aXR5IHJlYWRzIGRhdGEgZnJvbSB0aGUKPi0uQXIgc3BlY2lhbAo+Ky5BciBzb3VyY2UKPiBmaWxl
IHVudGlsIGFsbCBibG9ja3MgY291bGQgYmUgc3VjY2Vzc2Z1bGx5IHJlYWQuCj4rSWYKPisuQXIg
ZGVzdGluYXRpb24KPit3YXMgc3BlY2lmaWVkIGFsbCBkYXRhIGlzIGJlaW5nIHdyaXR0ZW4gdG8g
dGhhdCBmaWxlLgo+IEl0IHN0YXJ0cyByZWFkaW5nIGluIG11bHRpcGxlcyBvZiB0aGUgc2VjdG9y
IHNpemUuCj4gV2hlbmV2ZXIgYSBibG9jayBmYWlscywgaXQgaXMgcHV0IHRvIHRoZSBlbmQgb2Yg
dGhlIHdvcmtpbmcgcXVldWUgYW5kIHdpbGwgYmUKPiByZWFkIGFnYWluLCBwb3NzaWJseSB3aXRo
IGEgc21hbGxlciByZWFkIHNpemUuCj5AQCAtNTksMTMgKzYyLDEzIEBAIFRoZSBvcHRpb25zIGFy
ZSBhcyBmb2xsb3dzOgo+IFRoZSBzaXplIG9mIHJlYWRzIGF0dGVtcHRlZCBmaXJzdC4KPiBUaGUg
bWlkZGxlIHBhc3MgaXMgcm91Z2hseSB0aGUgbG9nYXJpdGhtaWMgYXZlcmFnZSBvZiB0aGUgYmln
c2l6ZSBhbmQKPiB0aGUgc2VjdG9yc2l6ZS4KPi0uSXQgRmwgciBBciBybGlzdAo+Ky5JdCBGbCBy
IEFyIHJlYWRsaXN0Cj4gUmVhZCB0aGUgbGlzdCBvZiBibG9ja3MgYW5kIGJsb2NrIHNpemVzIHRv
IHJlYWQgZnJvbSB0aGUgc3BlY2lmaWVkIGZpbGUuCj4tLkl0IEZsIHMgQXIgc25hcHNob3QKPi1I
b3cgb2Z0ZW4gd2Ugc2hvdWxkIHVwZGF0ZSB0aGUgd29ya2xpc3QgZmlsZSB3aGlsZSB0aGluZ3Mg
Z28gT0suCj4tVGhlIGRlZmF1bHQgaXMgNjAgYW5kIHRoZSB1bml0cyBpcyAicHJvZ3Jlc3MgbWVz
c2FnZXMiIHNvIGlmIHRoaW5ncwo+Ky5JdCBGbCBzIEFyIGludGVydmFsCj4rSG93IG9mdGVuIHdl
IHNob3VsZCB1cGRhdGUgdGhlIHdyaXRlbGlzdCBmaWxlIHdoaWxlIHRoaW5ncyBnbyBPSy4KPitU
aGUgZGVmYXVsdCBpcyA2MCBhbmQgdGhlIHVuaXQgaXMgInByb2dyZXNzIG1lc3NhZ2VzIiBzbyBp
ZiB0aGluZ3MKPiBnbyB3ZWxsLCB0aGlzIGlzIHRoZSBzYW1lIGFzIG9uY2UgcGVyIG1pbnV0ZS4K
Pi0uSXQgRmwgdyBBciB3bGlzdAo+Ky5JdCBGbCB3IEFyIHdyaXRlbGlzdAo+IFdyaXRlIHRoZSBs
aXN0IG9mIHJlbWFpbmluZyBibG9ja3MgdG8gcmVhZCB0byB0aGUgc3BlY2lmaWVkIGZpbGUgaWYK
PiAuTm0KPiBpcyBhYm9ydGVkIHZpYQo+QEAgLTEwMiwyMCArMTA1LDE5IEBAIFBlcmNlbnQgY29t
cGxldGUuCj4gLlNoIEVYQU1QTEVTCj4gLkJkIC1saXRlcmFsCj4gIyByZWNvdmVyIGRhdGEgZnJv
bSBmYWlsaW5nIGhhcmQgZHJpdmUgYWQzCj4tdG91Y2ggL2RhdGEvbG90c19vZl9zcGFjZQo+LXJl
Y292ZXJkaXNrIC9kZXYvYWQzIC9kYXRhL2xvdHNfb2Zfc3BhY2UKPityZWNvdmVyZGlzayAvZGV2
L2FkMyAvZGF0YS9kaXNrLmltZwo+IAo+ICMgY2xvbmUgYSBoYXJkIGRpc2sKPiByZWNvdmVyZGlz
ayAvZGV2L2FkMyAvZGV2L2FkNAo+IAo+ICMgcmVhZCBhbiBJU08gaW1hZ2UgZnJvbSBhIENELVJP
TQo+LXRvdWNoIC9kYXRhL2NkLmlzbzsgcmVjb3ZlcmRpc2sgL2Rldi9hY2QwIC9kYXRhL2NkLmlz
bwo+K3JlY292ZXJkaXNrIC9kZXYvY2QwIC9kYXRhL2NkLmlzbwo+IAo+ICMgY29udGludWUgcmVh
ZGluZyBmcm9tIGEgYnJva2VuIENEIGFuZCB1cGRhdGUgdGhlIGV4aXN0aW5nIHdvcmtsaXN0Cj4t
cmVjb3ZlcmRpc2sgLXIgd29ya2xpc3QgLXcgd29ya2xpc3QgL2Rldi9hY2QwIC9kYXRhL2NkLmlz
bwo+K3JlY292ZXJkaXNrIC1yIHdvcmtsaXN0IC13IHdvcmtsaXN0IC9kZXYvY2QwIC9kYXRhL2Nk
Lmlzbwo+IAo+ICMgcmVjb3ZlciBhIHNpbmdsZSBmaWxlIGZyb20gdGhlIHVucmVhZGFibGUgbWVk
aWEKPi10b3VjaCBmaWxlLmF2aTsgcmVjb3ZlcmRpc2sgL2Nkcm9tL2ZpbGUuYXZpIGZpbGUuYXZp
Cj4rcmVjb3ZlcmRpc2sgL2Nkcm9tL2ZpbGUuYXZpIGZpbGUuYXZpCj4gCj4gIyBJZiB0aGUgZGlz
ayBoYW5ncyB0aGUgc3lzdGVtIG9uIHJlYWQtZXJyb3JzIHRyeToKPiByZWNvdmVyZGlzayAtYiAw
IC9kZXYvYWQzIC9zb21ld2hlcmUKPkBAIC0xMzMsNyArMTM1LDcgQEAgdXRpbGl0eSBmaXJzdCBh
cHBlYXJlZCBpbgo+IFRoZSBvcmlnaW5hbCBpbXBsZW1lbnRhdGlvbiB3YXMgZG9uZSBieQo+IC5B
biBQb3VsLUhlbm5pbmcgS2FtcCBBcSBwaGtARnJlZUJTRC5vcmcKPiB3aXRoIG1pbm9yIGltcHJv
dmVtZW50cyBmcm9tCj4tLkFuIFVscmljaCBTcFwoOm9ybGVpbiBBcSB1c3BvZXJsZWluQGdtYWls
LmNvbSAuCj4rLkFuIFVscmljaCBTcFwoOm9ybGVpbiBBcSB1cXNARnJlZUJTRC5vcmcgLgo+IC5Q
cAo+IFRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4gYnkKPiAuQW4gVWxyaWNoIFNwXCg6b3Js
ZWluIC4KPkBAIC0xNDQsNCArMTQ2LDEzIEBAIFRoaXMgaXMgZHVlIHRvIHRoZSBETUEgcmVhZHMg
YmVpbmcgc3BsaXQKPiBUaGVzZSByZWFkcyB0aGVuIGZhaWwgaWYgdGhlIHNlY3RvcnNpemUgaXMg
bm90IGEgZGl2aXNvciBvZiAxMjhrQi4KPiBXaGVuIHJlYWRpbmcgYSBmdWxsIHJhdyBhdWRpbyBD
RCwgdGhpcyBsZWFkcyB0byByb3VnaGx5IDcwMCBlcnJvciBtZXNzYWdlcwo+IGZseWluZyBieS4K
Pi1UaGlzIGlzIGhhcm1sZXNzLgo+K1RoaXMgaXMgaGFybWxlc3MgYW5kIGNhbiBiZSBhdm9pZGVk
IGJ5IHNldHRpbmcKPisuRmwgYgo+K3RvIG5vIG1vcmUgdGhhbiAxMjhrQi4KPisuXCIuUHAKPisu
XCJXaGVuIHJlYWRpbmcgZnJvbSBvcHRpY2FsIG1lZGlhLCBhIGJ1ZyBpbiB0aGUgR0VPTSBmcmFt
ZXdvcmsgd2lsbAo+Ky5cInByZXZlbnQgaXQgZnJvbSBzZWVpbmcgdGhhdCB0aGUgbWVkaWEgaGFz
IGJlZW4gcmVtb3ZlZC4KPisuXCJUaGUgZGV2aWNlIGNhbiBzdGlsbCBiZSBvcGVuZWQsIGJ1dCBh
bGwgcmVhZHMgd2lsbCBmYWlsLgo+Ky5cIlRoaXMgaXMgdXN1YWxseSBoYXJtbGVzcywgYnV0IHdp
bGwgc2VuZAo+Ky5cIi5ObQo+Ky5cImludG8gYW4gaW5maW5pdGUgbG9vcC4KPgo+TW9kaWZpZWQ6
IGhlYWQvc2Jpbi9yZWNvdmVyZGlzay9yZWNvdmVyZGlzay5jCj49PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KPi0tLSBoZWFkL3NiaW4vcmVjb3ZlcmRpc2svcmVjb3ZlcmRpc2suYwlTdW4gTWF5ICAxIDE5
OjQ3OjM0IDIwMTEJKHIyMjEzMDMpCj4rKysgaGVhZC9zYmluL3JlY292ZXJkaXNrL3JlY292ZXJk
aXNrLmMJU3VuIE1heSAgMSAyMDoxNDoxMCAyMDExCShyMjIxMzA0KQo+QEAgLTg2LDcgKzg2LDcg
QEAgc2F2ZV93b3JrbGlzdCh2b2lkKQo+IAkJaWYgKGZpbGUgPT0gTlVMTCkKPiAJCQllcnIoMSwg
IkVycm9yIG9wZW5pbmcgZmlsZSAlcyIsIHd3b3JrbGlzdCk7Cj4gCj4tCQlUQUlMUV9GT1JFQUNI
KGxscCwgJmx1bXBzLCBsaXN0KSAKPisJCVRBSUxRX0ZPUkVBQ0gobGxwLCAmbHVtcHMsIGxpc3Qp
Cj4gCQkJZnByaW50ZihmaWxlLCAiJWpkICVqZCAlZFxuIiwKPiAJCQkgICAgKGludG1heF90KWxs
cC0+c3RhcnQsIChpbnRtYXhfdClsbHAtPmxlbiwKPiAJCQkgICAgbGxwLT5zdGF0ZSk7Cj5AQCAt
MTM0LDggKzEzNCw4IEBAIHJlYWRfd29ya2xpc3Qob2ZmX3QgdCkKPiBzdGF0aWMgdm9pZAo+IHVz
YWdlKHZvaWQpCj4gewo+LQkodm9pZClmcHJpbnRmKHN0ZGVyciwKPi0gICAgInVzYWdlOiByZWNv
dmVyZGlzayBbLXIgd29ya2xpc3RdIFstdyB3b3JrbGlzdF0gc291cmNlLWRyaXZlIFtkZXN0aW5h
dGlvbl1cbiIpOwo+Kwkodm9pZClmcHJpbnRmKHN0ZGVyciwgInVzYWdlOiByZWNvdmVyZGlzayBb
LWIgYmlnc2l6ZV0gWy1yIHJlYWRsaXN0XSAiCj4rCSAgICAiWy1zIGludGVydmFsXSBbLXcgd3Jp
dGVsaXN0XSBzb3VyY2UgW2Rlc3RpbmF0aW9uXVxuIik7Cj4gCWV4aXQoMSk7Cj4gfQo+IAo+QEAg
LTE1Myw3ICsxNTMsNyBAQCBtYWluKGludCBhcmdjLCBjaGFyICogY29uc3QgYXJndltdKQo+IAlp
bnQgZmRyLCBmZHc7Cj4gCW9mZl90IHQsIGQsIHN0YXJ0LCBsZW47Cj4gCXNpemVfdCBpLCBqOwo+
LQlpbnQgZXJyb3IsIGZsYWdzLCBzdGF0ZTsKPisJaW50IGVycm9yLCBzdGF0ZTsKPiAJdV9jaGFy
ICpidWY7Cj4gCXVfaW50IHNlY3RvcnNpemU7Cj4gCXRpbWVfdCB0MSwgdDI7Cj5AQCAtMTk2LDcg
KzE5Niw2IEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiBjb25zdCBhcmd2W10pCj4gCWVycm9yID0g
ZnN0YXQoZmRyLCAmc2IpOwo+IAlpZiAoZXJyb3IgPCAwKQo+IAkJZXJyKDEsICJmc3RhdCBmYWls
ZWQiKTsKPi0JZmxhZ3MgPSBPX1dST05MWTsKPiAJaWYgKFNfSVNCTEsoc2Iuc3RfbW9kZSkgfHwg
U19JU0NIUihzYi5zdF9tb2RlKSkgewo+IAkJZXJyb3IgPSBpb2N0bChmZHIsIERJT0NHU0VDVE9S
U0laRSwgJnNlY3RvcnNpemUpOwo+IAkJaWYgKGVycm9yIDwgMCkKPkBAIC0yMTAsNyArMjA5LDYg
QEAgbWFpbihpbnQgYXJnYywgY2hhciAqIGNvbnN0IGFyZ3ZbXSkKPiAJCQllcnIoMSwgIkRJT0NH
TUVESUFTSVpFIGZhaWxlZCIpOwo+IAl9IGVsc2Ugewo+IAkJdCA9IHNiLnN0X3NpemU7Cj4tCQlm
bGFncyB8PSBPX0NSRUFUIHwgT19UUlVOQzsKPiAJfQo+IAo+IAlpZiAoYmlnc2l6ZSA8IG1pbnNp
emUpCj5AQCAtMjI5LDkgKzIyNywxMiBAQCBtYWluKGludCBhcmdjLCBjaGFyICogY29uc3QgYXJn
dltdKQo+IAkJZXJyKDEsICJDYW5ub3QgYWxsb2NhdGUgJXp1IGJ5dGVzIGJ1ZmZlciIsIGJpZ3Np
emUpOwo+IAo+IAlpZiAoYXJnYyA+IDEpIHsKPi0JCWZkdyA9IG9wZW4oYXJndlsxXSwgZmxhZ3Ms
IERFRkZJTEVNT0RFKTsKPisJCWZkdyA9IG9wZW4oYXJndlsxXSwgT19XUk9OTFkgfCBPX0NSRUFU
LCBERUZGSUxFTU9ERSk7Cj4gCQlpZiAoZmR3IDwgMCkKPiAJCQllcnIoMSwgIkNhbm5vdCBvcGVu
IHdyaXRlIGRlc2NyaXB0b3IgJXMiLCBhcmd2WzFdKTsKPisJCWlmIChmdHJ1bmNhdGUoZmR3LCB0
KSA8IDApCj4rCQkJZXJyKDEsICJDYW5ub3QgdHJ1bmNhdGUgb3V0cHV0ICVzIHRvICVqZCBieXRl
cyIsCj4rCQkJICAgIGFyZ3ZbMV0sIChpbnRtYXhfdCl0KTsKPiAJfSBlbHNlCj4gCQlmZHcgPSAt
MTsKPiAKPkBAIC0yOTIsNiArMjkzLDEwIEBAIG1haW4oaW50IGFyZ2MsIGNoYXIgKiBjb25zdCBh
cmd2W10pCj4gCQkJfQo+IAkJCXByaW50ZigiXG4lamQgJXp1IGZhaWxlZCAoJXMpXG4iLAo+IAkJ
CSAgICBscC0+c3RhcnQsIGksIHN0cmVycm9yKGVycm5vKSk7Cj4rCQkJaWYgKGVycm5vID09IEVJ
TlZBTCkgewo+KwkJCQlwcmludGYoInJlYWQoKSBzaXplIHRvbyBiaWc/IFRyeSB3aXRoIC1iIDEz
MTA3MiIpOwo+KwkJCQlhYm9ydGluZyA9IDE7Cj4rCQkJfQo+IAkJCWlmIChlcnJubyA9PSBFTlhJ
TykKPiAJCQkJYWJvcnRpbmcgPSAxOwo+IAkJCW5ld19sdW1wKGxwLT5zdGFydCwgaSwgbHAtPnN0
YXRlICsgMSk7Cj4KPgo+QXV0aG9yOiBicnVlZmZlcgo+RGF0ZTogU3VuIE1heSAgMSAyMDo0Njoz
NyAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMwNQo+VVJMOiBodHRwOi8vc3ZuLmZyZWVic2Qub3Jn
L2NoYW5nZXNldC9iYXNlLzIyMTMwNQo+Cj5Mb2c6Cj4gIE1pbm9yIGNsZWFudXAuCj4KPk1vZGlm
aWVkOgo+ICBoZWFkL3NoYXJlL21hbi9tYW40L3Z4Z2UuNAo+Cj5Nb2RpZmllZDogaGVhZC9zaGFy
ZS9tYW4vbWFuNC92eGdlLjQKPj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+LS0tIGhlYWQvc2hhcmUv
bWFuL21hbjQvdnhnZS40CVN1biBNYXkgIDEgMjA6MTQ6MTAgMjAxMQkocjIyMTMwNCkKPisrKyBo
ZWFkL3NoYXJlL21hbi9tYW40L3Z4Z2UuNAlTdW4gTWF5ICAxIDIwOjQ2OjM3IDIwMTEJKHIyMjEz
MDUpCj5AQCAtNDksMTMgKzQ5LDEyIEBAIFRoZQo+IC5ObQo+IGRyaXZlciBwcm92aWRlcyBzdXBw
b3J0IGZvciBOZXRlcmlvbiBYMzEwMCBhZGFwdGVycy4KPiBUaGUgZHJpdmVyIHN1cHBvcnRzIFRD
UCBTZWdtZW50YXRpb24gT2ZmbG9hZCAoVFNPL0xTTyksIAo+LUxhcmdlIFJlY2VpdmUgT2ZmbGFv
ZCAoTFJPKSwgSnVtYm8gRnJhbWVzLCBSZWNlaXZlIFRyYWZmaWMgSGFzaCAoUlRIKSwKPitMYXJn
ZSBSZWNlaXZlIE9mZmxvYWQgKExSTyksIEp1bWJvIEZyYW1lcywgUmVjZWl2ZSBUcmFmZmljIEhh
c2ggKFJUSCksCj4gVkxBTiwgUHJvbWlzY3VvdXMgbW9kZSBhbmQgTXVsdGkgZnVuY3Rpb24gbW9k
ZS4KPiAuUHAKPi0KPiBUaGUKPiAuTm0KPi1kcml2ZXIgc3VwcG9ydHMgZm9sbG93aW5nIGZ1bmN0
aW9uIG1vZGVzOgo+K2RyaXZlciBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uIG1vZGVz
Ogo+IC5CZCAtcmFnZ2VkIC1vZmZzZXQgaW5kZW50Cj4gLkNkICJTRjFfVlAxNyAtIDEgZnVuY3Rp
b24gd2l0aCAxNyBWUEFUSHMiCj4gLkVkCj4KPgo+QXV0aG9yOiBybWFja2xlbQo+RGF0ZTogU3Vu
IE1heSAgMSAyMjoxOTo1MiAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMwNgo+VVJMOiBodHRwOi8v
c3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwNgo+Cj5Mb2c6Cj4gIEFkZCB0aGUg
a2VybmVsIHN1cHBvcnQgbmVlZGVkIHRvIHplcm8gb3V0IHRoZSBuZnNzdGF0cwo+ICBzdHJ1Y3R1
cmUgZm9yIHRoZSBuZXcgTkZTIHN1YnN5c3RlbS4gVGhpcyB3aWxsIGJlIHVzZWQKPiAgYnkgbmZz
c3RhdHMuYyB0byBpbXBsZW1lbnQgdGhlICIteiIgb3B0aW9uLgo+ICAKPiAgTUZDIGFmdGVyOgky
IHdlZWtzCj4KPk1vZGlmaWVkOgo+ICBoZWFkL3N5cy9mcy9uZnMvbmZzX2NvbW1vbnBvcnQuYwo+
ICBoZWFkL3N5cy9uZnMvbmZzc3ZjLmgKPgo+TW9kaWZpZWQ6IGhlYWQvc3lzL2ZzL25mcy9uZnNf
Y29tbW9ucG9ydC5jCj49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPi0tLSBoZWFkL3N5cy9mcy9uZnMv
bmZzX2NvbW1vbnBvcnQuYwlTdW4gTWF5ICAxIDIwOjQ2OjM3IDIwMTEJKHIyMjEzMDUpCj4rKysg
aGVhZC9zeXMvZnMvbmZzL25mc19jb21tb25wb3J0LmMJU3VuIE1heSAgMSAyMjoxOTo1MiAyMDEx
CShyMjIxMzA2KQo+QEAgLTQwNCw2ICs0MDQsOCBAQCBuZnNzdmNfY2FsbChzdHJ1Y3QgdGhyZWFk
ICpwLCBzdHJ1Y3QgbmZzCj4gCX0gZWxzZSBpZiAodWFwLT5mbGFnICYgTkZTU1ZDX0dFVFNUQVRT
KSB7Cj4gCQllcnJvciA9IGNvcHlvdXQoJm5ld25mc3N0YXRzLAo+IAkJICAgIENBU1RfVVNFUl9B
RERSX1QodWFwLT5hcmdwKSwgc2l6ZW9mIChuZXduZnNzdGF0cykpOwo+KwkJaWYgKCh1YXAtPmZs
YWcgJiBORlNTVkNfWkVST1NUQVRTKSAhPSAwICYmIGVycm9yID09IDApCj4rCQkJYnplcm8oJm5l
d25mc3N0YXRzLCBzaXplb2YobmV3bmZzc3RhdHMpKTsKPiAJCXJldHVybiAoZXJyb3IpOwo+IAl9
IGVsc2UgaWYgKHVhcC0+ZmxhZyAmIE5GU1NWQ19ORlNVU0VSRFBPUlQpIHsKPiAJCXVfc2hvcnQg
c29ja3BvcnQ7Cj4KPk1vZGlmaWVkOiBoZWFkL3N5cy9uZnMvbmZzc3ZjLmgKPj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQo+LS0tIGhlYWQvc3lzL25mcy9uZnNzdmMuaAlTdW4gTWF5ICAxIDIwOjQ2OjM3
IDIwMTEJKHIyMjEzMDUpCj4rKysgaGVhZC9zeXMvbmZzL25mc3N2Yy5oCVN1biBNYXkgIDEgMjI6
MTk6NTIgMjAxMQkocjIyMTMwNikKPkBAIC02NCw1ICs2NCw2IEBACj4gI2RlZmluZQlORlNTVkNf
Q0JBRERTT0NLCTB4MDAyMDAwMDAKPiAjZGVmaW5lCU5GU1NWQ19HRVRTVEFUUwkJMHgwMDQwMDAw
MAo+ICNkZWZpbmUJTkZTU1ZDX0JBQ0tVUFNUQUJMRQkweDAwODAwMDAwCj4rI2RlZmluZQlORlNT
VkNfWkVST1NUQVRTCTB4MDEwMDAwMDAJLyogbW9kaWZpZXIgZm9yIEdFVFNUQVRTICovCj4gCj4g
I2VuZGlmIC8qIF9ORlNfTkZTU1ZDX0ggKi8KPgo+Cj5BdXRob3I6IGFkcmlhbgo+RGF0ZTogU3Vu
IE1heSAgMSAyMzozMjozNyAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMwNwo+VVJMOiBodHRwOi8v
c3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwNwo+Cj5Mb2c6Cj4gIFNvbWUgQVI3
MjR4IFBDSWUgZml4ZXMsIHdoaWNoIHNob3VsZCB3cmFwIHVwIHRoZSBmaXJzdCByb3VuZAo+ICBv
ZiBlbmRpYW4tbmVzcyBpc3N1ZXMgd2l0aCB0aGUgQVI3MjR4Lgo+ICAKPiAgRnJvbSBMdWl6Ogo+
ICAKPiAgKiBGaXggdGhlIGJ1cyBzcGFjZSB0YWcgdXNlZCBzbyBlbmRpYW4tbmVzcyBpcyBjb3Jy
ZWN0bHkgaGFuZGxlZDsKPiAgKiBPbmx5IGRvIHRoZSB3b3JrYXJvdW5kIGZvciB0aGUgQVI3MjQw
OyBBUjcyNDEvQVI3MjQyIChQQjkyKQo+ICAgIGRvbid0IHJlcXVpcmUgdGhpcwo+ICAKPiAgRnJv
bSBtZToKPiAgCj4gICogQWRkIGEgcmVhZCBmbHVzaCBmcm9tIG9wZW53cnQKPiAgCj4gIFN1Ym1p
dHRlZCBieToJTHVpeiBPdGF2aW8gTyBTb3V6YQo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvbWlw
cy9hdGhlcm9zL2FyNzI0eF9wY2kuYwo+Cj5Nb2RpZmllZDogaGVhZC9zeXMvbWlwcy9hdGhlcm9z
L2FyNzI0eF9wY2kuYwo+PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvbWlwcy9h
dGhlcm9zL2FyNzI0eF9wY2kuYwlTdW4gTWF5ICAxIDIyOjE5OjUyIDIwMTEJKHIyMjEzMDYpCj4r
KysgaGVhZC9zeXMvbWlwcy9hdGhlcm9zL2FyNzI0eF9wY2kuYwlTdW4gTWF5ICAxIDIzOjMyOjM3
IDIwMTEJKHIyMjEzMDcpCj5AQCAtNTcsOCArNTcsNyBAQCBfX0ZCU0RJRCgiJEZyZWVCU0QkIik7
Cj4gI2luY2x1ZGUgPG1pcHMvYXRoZXJvcy9hcjcxeHhyZWcuaD4KPiAjaW5jbHVkZSA8bWlwcy9h
dGhlcm9zL2FyNzI0eHJlZy5oPgo+ICNpbmNsdWRlIDxtaXBzL2F0aGVyb3MvYXI3MXh4X3NldHVw
Lmg+Cj4tI2luY2x1ZGUgPG1pcHMvYXRoZXJvcy9hcjcxeHhfcGNpX2J1c19zcGFjZS5oPgkJLyog
WFhYICovCj4tI2luY2x1ZGUgPG1pcHMvYXRoZXJvcy9hcjcxeHhfYnVzX3NwYWNlX3JldmVyc2Vk
Lmg+CS8qIFhYWCAqLwo+KyNpbmNsdWRlIDxtaXBzL2F0aGVyb3MvYXI3MXh4X3BjaV9idXNfc3Bh
Y2UuaD4KPiAKPiAjaW5jbHVkZSA8bWlwcy9hdGhlcm9zL2FyNzF4eF9jcHVkZWYuaD4KPiAKPkBA
IC0xMTMsNyArMTEyLDcgQEAgc3RhdGljIHVpbnQzMl90Cj4gYXI3MjR4X3BjaV9yZWFkX2NvbmZp
ZyhkZXZpY2VfdCBkZXYsIHVfaW50IGJ1cywgdV9pbnQgc2xvdCwgdV9pbnQgZnVuYywgCj4gICAg
IHVfaW50IHJlZywgaW50IGJ5dGVzKQo+IHsKPi0JdWludDMyX3QgY21kLCBkYXRhLCBzaGlmdCwg
bWFzazsKPisJdWludDMyX3QgZGF0YSwgc2hpZnQsIG1hc2s7Cj4gCj4gCS8qIFJlZ2lzdGVyIGFj
Y2VzcyBpcyAzMi1iaXQgYWxpZ25lZCAqLwo+IAlzaGlmdCA9IChyZWcgJiAzKSAqIDg7Cj5AQCAt
MTI1LDE4ICsxMjQsOSBAQCBhcjcyNHhfcGNpX3JlYWRfY29uZmlnKGRldmljZV90IGRldiwgdV9p
Cj4gCWRwcmludGYoIiVzOiB0YWcgKCV4LCAleCwgJXgpIHJlZyAlZCglZClcbiIsIF9fZnVuY19f
LCBidXMsIHNsb3QsCj4gCSAgICBmdW5jLCByZWcsIGJ5dGVzKTsKPiAKPi0JaWYgKChidXMgPT0g
MCkgJiYgKHNsb3QgPT0gMCkgJiYgKGZ1bmMgPT0gMCkpIHsKPisJaWYgKChidXMgPT0gMCkgJiYg
KHNsb3QgPT0gMCkgJiYgKGZ1bmMgPT0gMCkpCj4gCQlkYXRhID0gQVRIX1JFQURfUkVHKEFSNzI0
WF9QQ0lfQ0ZHX0JBU0UgKyAocmVnICYgfjMpKTsKPi0JCS8qCj4tCQkgKiBXQVIgZm9yIEJBUiBp
c3N1ZSAtIFdlIGFyZSB1bmFibGUgdG8gYWNjZXNzIHRoZSBQQ0kgZGV2aWNlCj4tCQkgKiBzcGFj
ZSBpZiB3ZSBzZXQgdGhlIEJBUiB3aXRoIHByb3BlciBiYXNlIGFkZHJlc3MuCj4tCQkgKi8KPi0J
CWlmIChyZWcgPT0gUENJUl9CQVIoMCkgJiYgYnl0ZXMgPT0gNCkgewo+LQkJCWNtZCA9IChhcjcx
eHhfc29jID09IEFSNzFYWF9TT0NfQVI3MjQwKSA/Cj4tCQkJICAgIDB4ZmZmZiA6IDB4MTAwMGZm
ZmY7Cj4tCQkJYXI3MjR4X3BjaV93cml0ZShBUjcyNFhfUENJX0NGR19CQVNFLCByZWcsIGNtZCwg
Ynl0ZXMpOwo+LQkJfQo+LQl9IGVsc2UKPisJZWxzZQo+IAkJZGF0YSA9IC0xOwo+IAo+IAkvKiBH
ZXQgcmVxdWVzdCBieXRlcyBmcm9tIDMyLWJpdCB3b3JkICovCj5AQCAtMTU4LDE0ICsxNDgsMTQg
QEAgYXI3MjR4X3BjaV93cml0ZV9jb25maWcoZGV2aWNlX3QgZGV2LCB1Xwo+IAlpZiAoKGJ1cyAh
PSAwKSB8fCAoc2xvdCAhPSAwKSB8fCAoZnVuYyAhPSAwKSkKPiAJCXJldHVybjsKPiAKPi0JYXI3
MjR4X3BjaV93cml0ZShBUjcyNFhfUENJX0NGR19CQVNFLCByZWcsIGRhdGEsIGJ5dGVzKTsKPiAJ
LyoKPi0JICogV0FSIGZvciBCQVIgaXNzdWUgLSBXZSBhcmUgdW5hYmxlIHRvIGFjY2VzcyB0aGUg
UENJIGRldmljZSBzcGFjZQo+LQkgKiBpZiB3ZSBzZXQgdGhlIEJBUiB3aXRoIHByb3BlciBiYXNl
IGFkZHJlc3MuCj4tCSAqIEZvcmNlIGEgZmx1c2ggaGVyZSAoYXQgcmVnaXN0ZXIgd3JpdGluZyku
Cj4rCSAqIFdBUiBmb3IgQkFSIGlzc3VlIG9uIEFSNzI0MCAtIFdlIGFyZSB1bmFibGUgdG8gYWNj
ZXNzIHRoZSBQQ0kgZGV2aWNlCj4rCSAqIHNwYWNlIGlmIHdlIHNldCB0aGUgQkFSIHdpdGggcHJv
cGVyIGJhc2UgYWRkcmVzcy4KPiAJICovCj4tCWlmIChyZWcgPT0gUENJUl9CQVIoMCkgJiYgYnl0
ZXMgPT0gNCkKPi0JCSh2b2lkKWFyNzI0eF9wY2lfcmVhZF9jb25maWcoZGV2LCBidXMsIHNsb3Qs
IGZ1bmMsIHJlZywgYnl0ZXMpOwo+KwlpZiAocmVnID09IFBDSVJfQkFSKDApICYmIGJ5dGVzID09
IDQgJiYgYXI3MXh4X3NvYyA9PSBBUjcxWFhfU09DX0FSNzI0MCkKPisJCWFyNzI0eF9wY2lfd3Jp
dGUoQVI3MjRYX1BDSV9DRkdfQkFTRSwgcmVnLCAweGZmZmYsIGJ5dGVzKTsKPisJZWxzZQo+KwkJ
YXI3MjR4X3BjaV93cml0ZShBUjcyNFhfUENJX0NGR19CQVNFLCByZWcsIGRhdGEsIGJ5dGVzKTsK
PiB9Cj4gCj4gc3RhdGljIHZvaWQgCj5AQCAtMjMyLDYgKzIyMiw5IEBAIGFyNzI0eF9wY2lfc2V0
dXAoZGV2aWNlX3QgZGV2KQo+IAllbHNlCj4gCQlyZWcgPSAweDFmZmMxOwo+IAlBVEhfV1JJVEVf
UkVHKEFSNzI0WF9QQ0lfQVBQLCByZWcpOwo+KwkvKiBGbHVzaCB3cml0ZSAqLwo+Kwkodm9pZCkg
QVRIX1JFQURfUkVHKEFSNzI0WF9QQ0lfQVBQKTsKPisKPiAJREVMQVkoMTAwMCk7Cj4gCj4gCXJl
ZyA9IEFUSF9SRUFEX1JFRyhBUjcyNFhfUENJX1JFU0VUKTsKPkBAIC00NTcsMTAgKzQ1MCw3IEBA
IGFyNzI0eF9wY2lfYWN0aXZhdGVfcmVzb3VyY2UoZGV2aWNlX3QgYnUKPiAJCWNhc2UgU1lTX1JF
U19NRU1PUlk6Cj4gCQljYXNlIFNZU19SRVNfSU9QT1JUOgo+IAo+LQkJCS8qIFhYWCAqLwo+LQkJ
CS8vcm1hbl9zZXRfYnVzdGFnKHIsIGFyNzF4eF9idXNfc3BhY2VfcGNpbWVtKTsKPi0JCQkvL3Jt
YW5fc2V0X2J1c3RhZyhyLCBtaXBzX2J1c19zcGFjZV9nZW5lcmljKTsKPi0JCQlybWFuX3NldF9i
dXN0YWcociwgYXI3MXh4X2J1c19zcGFjZV9yZXZlcnNlZCk7Cj4rCQkJcm1hbl9zZXRfYnVzdGFn
KHIsIGFyNzF4eF9idXNfc3BhY2VfcGNpbWVtKTsKPiAJCQlicmVhazsKPiAJCX0KPiAJfQo+Cj4K
PkF1dGhvcjogcm1hY2tsZW0KPkRhdGU6IFN1biBNYXkgIDEgMjM6NDE6MzUgMjAxMQo+TmV3IFJl
dmlzaW9uOiAyMjEzMDgKPlVSTDogaHR0cDovL3N2bi5mcmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFz
ZS8yMjEzMDgKPgo+TG9nOgo+ICBGaXggbmZzc3RhdCBzbyB0aGF0IHRoZSAiLXoiIG9wdGlvbiB3
b3JrcyBmb3IgdGhlCj4gIG5ldyBORlMgc3Vic3lzdGVtLgo+ICAKPiAgTUZDIGFmdGVyOgkyIHdl
ZWtzCj4KPk1vZGlmaWVkOgo+ICBoZWFkL3Vzci5iaW4vbmZzc3RhdC9uZnNzdGF0LmMKPgo+TW9k
aWZpZWQ6IGhlYWQvdXNyLmJpbi9uZnNzdGF0L25mc3N0YXQuYwo+PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Cj4tLS0gaGVhZC91c3IuYmluL25mc3N0YXQvbmZzc3RhdC5jCVN1biBNYXkgIDEgMjM6MzI6
MzcgMjAxMQkocjIyMTMwNykKPisrKyBoZWFkL3Vzci5iaW4vbmZzc3RhdC9uZnNzdGF0LmMJU3Vu
IE1heSAgMSAyMzo0MTozNSAyMDExCShyMjIxMzA4KQo+QEAgLTg1LDYgKzg1LDcgQEAgc3RhdGlj
IGludCB6ZmxhZyA9IDA7Cj4gc3RhdGljIGludCBydW5fdjQgPSAwOwo+IHN0YXRpYyBpbnQgcHJp
bnR0aXRsZSA9IDE7Cj4gc3RhdGljIHN0cnVjdCBleHRfbmZzc3RhdHMgZXh0X25mc3N0YXRzOwo+
K3N0YXRpYyBpbnQgbmZzc3ZjX2ZsYWc7Cj4gCj4gdm9pZCBpbnRwcihpbnQsIGludCk7Cj4gdm9p
ZCBwcmludGhkcihpbnQsIGludCk7Cj5AQCAtMTA3LDYgKzEwOCw3IEBAIG1haW4oaW50IGFyZ2Ms
IGNoYXIgKiphcmd2KQo+IAljaGFyICptZW1mLCAqbmxpc3RmOwo+IAljaGFyIGVycmJ1ZltfUE9T
SVgyX0xJTkVfTUFYXTsKPiAKPisJbmZzc3ZjX2ZsYWcgPSBORlNTVkNfR0VUU1RBVFM7Cj4gCWlu
dGVydmFsID0gMDsKPiAJbWVtZiA9IG5saXN0ZiA9IE5VTEw7Cj4gCXdoaWxlICgoY2ggPSBnZXRv
cHQoYXJnYywgYXJndiwgImNlc1dNOk46dzp6IikpICE9IC0xKQo+QEAgLTEzNSw2ICsxMzcsNyBA
QCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKPiAJCQlicmVhazsKPiAJCWNhc2UgJ3onOgo+
IAkJCXpmbGFnID0gMTsKPisJCQluZnNzdmNfZmxhZyB8PSBORlNTVkNfWkVST1NUQVRTOwo+IAkJ
CWJyZWFrOwo+IAkJY2FzZSAnZSc6Cj4gCQkJcnVuX3Y0ID0gMTsKPkBAIC0xNjEsNyArMTY0LDcg
QEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCj4gCQllcnJ4KDEsICJleHBlcmltZW50YWwg
Y2xpZW50L3NlcnZlciBub3QgbG9hZGVkIik7Cj4gCj4gCWlmIChydW5fdjQgIT0gMCkgewo+LQkJ
aWYgKG5mc3N2YyhORlNTVkNfR0VUU1RBVFMsICZleHRfbmZzc3RhdHMpIDwgMCkKPisJCWlmIChu
ZnNzdmMobmZzc3ZjX2ZsYWcsICZleHRfbmZzc3RhdHMpIDwgMCkKPiAJCQllcnIoMSwgIkNhbid0
IGdldCBzdGF0cyIpOwo+IAl9IGVsc2UgaWYgKG5saXN0ZiAhPSBOVUxMIHx8IG1lbWYgIT0gTlVM
TCkgewo+IAkJZGVhZGtlcm5lbCA9IDE7Cj5AQCAtNzkzLDEzICs3OTYsMTMgQEAgZXhwX3NpZGV3
YXlzaW50cHIodV9pbnQgaW50ZXJ2YWwsIGludCBjbAo+IAlpbnQgaGRyY250ID0gMTsKPiAKPiAJ
ZXh0X25mc3N0YXRzcCA9ICZsYXN0c3Q7Cj4tCWlmIChuZnNzdmMoTkZTU1ZDX0dFVFNUQVRTLCBl
eHRfbmZzc3RhdHNwKSA8IDApCj4rCWlmIChuZnNzdmMobmZzc3ZjX2ZsYWcsIGV4dF9uZnNzdGF0
c3ApIDwgMCkKPiAJCWVycigxLCAiQ2FuJ3QgZ2V0IHN0YXRzIik7Cj4gCXNsZWVwKGludGVydmFs
KTsKPiAKPiAJZm9yICg7Oykgewo+IAkJZXh0X25mc3N0YXRzcCA9ICZuZnNzdGF0czsKPi0JCWlm
IChuZnNzdmMoTkZTU1ZDX0dFVFNUQVRTLCBleHRfbmZzc3RhdHNwKSA8IDApCj4rCQlpZiAobmZz
c3ZjKG5mc3N2Y19mbGFnLCBleHRfbmZzc3RhdHNwKSA8IDApCj4gCQkJZXJyKDEsICJDYW4ndCBn
ZXQgc3RhdHMiKTsKPiAKPiAJCWlmICgtLWhkcmNudCA9PSAwKSB7Cj4KPgo+QXV0aG9yOiBybWFj
a2xlbQo+RGF0ZTogU3VuIE1heSAgMSAyMzo1NTo1NiAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMw
OQo+VVJMOiBodHRwOi8vc3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMwOQo+Cj5M
b2c6Cj4gIEZpeCBuZnNzdGF0LjEgdG8gaW5kaWNhdGUgdGhhdCAiLXoiIG5vdyB3b3JrcyBmb3IK
PiAgdGhlIG5ldyBORlMgc3Vic3lzdGVtcyBhZnRlciByMjIxMzA4Lgo+ICBUaGlzIGlzIGEgY29u
dGVudCBjaGFuZ2UuCj4gIAo+ICBNRkMgYWZ0ZXI6CTIgd2Vla3MKPgo+TW9kaWZpZWQ6Cj4gIGhl
YWQvdXNyLmJpbi9uZnNzdGF0L25mc3N0YXQuMQo+Cj5Nb2RpZmllZDogaGVhZC91c3IuYmluL25m
c3N0YXQvbmZzc3RhdC4xCj49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPi0tLSBoZWFkL3Vzci5iaW4v
bmZzc3RhdC9uZnNzdGF0LjEJU3VuIE1heSAgMSAyMzo0MTozNSAyMDExCShyMjIxMzA4KQo+Kysr
IGhlYWQvdXNyLmJpbi9uZnNzdGF0L25mc3N0YXQuMQlTdW4gTWF5ICAxIDIzOjU1OjU2IDIwMTEJ
KHIyMjEzMDkpCj5AQCAtMjgsNyArMjgsNyBAQAo+IC5cIiAgICAgRnJvbTogQCgjKW5mc3N0YXQu
MQk4LjEgKEJlcmtlbGV5KSA2LzYvOTMKPiAuXCIgJEZyZWVCU0QkCj4gLlwiCj4tLkRkIE9jdG9i
ZXIgMTgsIDIwMDcKPisuRGQgTWF5IDEsIDIwMTEKPiAuRHQgTkZTU1RBVCAxCj4gLk9zCj4gLlNo
IE5BTUUKPkBAIC03OCw3ICs3OCw2IEBAIGFjdGl2aXR5IGZvciBib3RoIHRoZSBjbGllbnQgYW5k
IHNlcnZlciAKPiBzZWNvbmQgaW50ZXJ2YWxzLgo+IC5JdCBGbCB6Cj4gUmVzZXQgc3RhdGlzdGlj
cyBhZnRlciBkaXNwbGF5aW5nIHRoZW0uCj4tKE5vdCBjdXJyZW50bHkgc3VwcG9ydGVkIGJ5IHRo
ZSBleHBlcmltZW50YWwgbmZzIHN1YnN5c3RlbS4pCj4gLkl0IEZsIGUKPiBHYXRoZXIgc3RhdGlz
dGljcyBmcm9tIHRoZSBleHBlcmltZW50YWwgbmZzIHN1YnN5c3RlbSB0aGF0IGluY2x1ZGVzCj4g
c3VwcG9ydCBmb3IgTkZTdjQgaW5zdGVhZCBvZiB0aGUgcmVndWxhciBuZnMgc3Vic3lzdGVtLgo+
Cj4KPkF1dGhvcjogYWRyaWFuCj5EYXRlOiBNb24gTWF5ICAyIDA1OjM5OjQzIDIwMTEKPk5ldyBS
ZXZpc2lvbjogMjIxMzEyCj5VUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jh
c2UvMjIxMzEyCj4KPkxvZzoKPiAgQWRkIGRvY3VtZW50YXRpb24gdG8gc3lzL2NvbmYvb3B0aW9u
cyBwb2ludGluZyBvdXQgdGhhdCBBSF9TVVBQT1JUX0FSOTEzMAo+ICBzaG91bGRuJ3QgYmUgZW5h
YmxlZCBieSBkZWZhdWx0IHVubGVzcyB5b3UncmUgdHJ1ZWx5IGJ1aWxkaW5nIGZvciB0aGUKPiAg
QVI5MTN4IHBsYXRmb3JtLgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvY29uZi9vcHRpb25zCj4K
Pk1vZGlmaWVkOiBoZWFkL3N5cy9jb25mL29wdGlvbnMKPj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+
LS0tIGhlYWQvc3lzL2NvbmYvb3B0aW9ucwlNb24gTWF5ICAyIDAxOjAxOjAzIDIwMTEJKHIyMjEz
MTEpCj4rKysgaGVhZC9zeXMvY29uZi9vcHRpb25zCU1vbiBNYXkgIDIgMDU6Mzk6NDMgMjAxMQko
cjIyMTMxMikKPkBAIC03NzUsNiArNzc1LDggQEAgQVRIX0VOQUJMRV8xMU4JCW9wdF9haC5oCj4g
Cj4gIyBvcHRpb25zIGZvciB0aGUgQXRoZXJvcyBoYWwKPiBBSF9TVVBQT1JUX0FSNTQxNglvcHRf
YWguaAo+KyMgWFhYIEZvciBub3csIHRoaXMgYnJlYWtzIG5vbi1BUjkxMzAgY2hpcHNldHMsIHNv
IG9ubHkgdXNlIGl0Cj4rIyBYWFggd2hlbiBhY3R1YWxseSB0YXJnZXR0aW5nIEFSOTEzMC4KPiBB
SF9TVVBQT1JUX0FSOTEzMAlvcHRfYWguaAo+IAo+IEFIX0RFQlVHCQlvcHRfYWguaAo+QEAgLTc5
MSw2ICs3OTMsNyBAQCBBSF9NQVhDSEFOCQlvcHRfYWguaAo+IEFIX1JYQ0ZHX1NETUFNV180QllU
RVMJb3B0X2FoLmgKPiAKPiAjIEFSNTQxNiBhbmQgbGF0ZXIgaW50ZXJydXB0IG1pdGlnYXRpb24K
PisjIFhYWCBkbyBub3QgdXNlIHRoaXMgZm9yIEFSOTEzMAo+IEFIX0FSNTQxNl9JTlRFUlJVUFRf
TUlUSUdBVElPTglvcHRfYWguaAo+IAo+ICMgb3B0aW9ucyBmb3IgdGhlIEJyb2FkY29tIEJDTTQz
eHggZHJpdmVyIChid2kpCj4KPgo+T24gMiBNYXkgMjAxMSAwMzo1NCwgQmVybmhhcmQgU2NobWlk
dCA8YnNjaG1pZHRAZnJlZWJzZC5vcmc+IHdyb3RlOgo+Cj4+PiBJJ20gbm90IHN1cmUgdGhhdCdz
IGludHJpbnNpY2FsbHkgdHJ1ZS4gRXZlbiBpZiB0aGV5IG1vc3RseSBvbmx5IHNoaXAKPj4+IHdp
dGggSW50ZWwgbW90aGVyYm9hcmRzLCBtYW55IG9mIHRoZXNlIGFyZSBNaW5pLVBDSSBwYXJ0cyB3
aGljaCBjb3VsZCBiZQo+Pj4gcHV0IGludG8gbm9uLXg4NiBzeXN0ZW1zLgo+Pgo+PiBZZXMsIGlu
ZGVlZC4gVGhvc2UgbWlnaHQgb2YgY291cnNlIGJlIHVzZWQgb24gb3RoZXIgcGxhdGZvcm1zIHRv
bwo+PiAod2VsbCBhdCBsZWFzdCBpdCBmaXRzIGludG8gdGhlIHNsb3QsIEkga25vdyB0aGF0IGNl
cnRhaW4gZmVhdHVyZXMKPj4gYXJlIG5vdCBldmVuIGF2YWlsYWJsZSBvbiBBTUQgcGxhdGZvcm1z
KS4gSSdtIGp1c3Qgbm90IGF3YXJlIHRoYXQKPj4gYW55b25lIGV2ZXIgdHJpZWQgb25lIG9mIGl0
IG9uIG1pcHMgZm9yIGV4YW1wbGUuCj4+Cj4+IEkgZG9uJ3QgbWluZCBiZWluZyBwcm92ZW4gd3Jv
bmcgYW5kIGlmIHNvIG1vdmUgdGhlIGVudHJpZXMgYmFjayB0bwo+PiBhIG1vcmUgZ2VuZXJpYyBs
b2NhdGlvbi4gQ3VycmVudGx5IEknbSBqdXN0IHRyeWluZyBtaW1pYyB0aGUgbW9kdWxlCj4+IGJl
aGF2aW91ciBpbiBzeXMvbW9kdWxlcy9NYWtlZmlsZS4KPgo+SSdtIGxpa2VseSB0byB0cnkgdGhl
IGludGVsIG1pbmktcGNpZSBzdHVmZiBvbiB0aGUgYXRoZXJvcyBQQjkyIHJlZgo+Ym9hcmQgKEFS
NzI0MiBNSVBTKS4gSnVzdCBub3QgeWV0Lgo+Cj5JJ2xsIGxldCB5b3Uga25vdyBob3cgaXQgZ29l
cyB3aGVuIGkndmUgZG9uZSBpdC4KPgo+Cj4KPkFkaXJhbgo+Cj4KPkF1dGhvcjogbWF4aW0KPkRh
dGU6IE1vbiBNYXkgIDIgMDk6NDc6MTMgMjAxMQo+TmV3IFJldmlzaW9uOiAyMjEzMTkKPlVSTDog
aHR0cDovL3N2bi5mcmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMTkKPgo+TG9nOgo+ICBv
IE9wZW5CU0QgNC45IGFkZGVkLgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zaGFyZS9taXNjL2JzZC1m
YW1pbHktdHJlZQo+Cj5Nb2RpZmllZDogaGVhZC9zaGFyZS9taXNjL2JzZC1mYW1pbHktdHJlZQo+
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zaGFyZS9taXNjL2JzZC1mYW1pbHktdHJl
ZQlNb24gTWF5ICAyIDA4OjMzOjIwIDIwMTEJKHIyMjEzMTgpCj4rKysgaGVhZC9zaGFyZS9taXNj
L2JzZC1mYW1pbHktdHJlZQlNb24gTWF5ICAyIDA5OjQ3OjEzIDIwMTEJKHIyMjEzMTkpCj5AQCAt
MjQ2LDcgKzI0Niw3IEBAIEZyZWVCU0QgNS4yICAgICAgICAgICB8ICAgICAgfCAgICAgICAgICAK
PiAgfCAgICAgfCAgICAgICAgfCAgICAgfCAgICAgIHwgTmV0QlNEIDUuMSAgICAgIHwgICAgICAg
ICAgICAgICAgICAgICAgIHwKPiAgfCAgRnJlZUJTRCAgRnJlZUJTRCAgfCAgICAgIHwgICAgICAg
ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHwKPiAgfCAgICA4LjIgICAgICA3LjQg
ICAgfCAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICBEcmFnb25GbHkgMi4x
MC4xCj4tIHwgICAgIHYgICAgICAgICAgICAgIHwgICAgICB8ICAgICAgICAgICAgICAgICB8ICAg
ICAgICAgICAgICAgICAgICAgICB8Cj4rIHwgICAgIHYgICAgICAgICAgICAgIHwgICAgICB8ICAg
ICAgICAgICAgIE9wZW5CU0QgNC45ICAgICAgICAgICAgICAgICB8Cj4gIHwgICAgICAgICAgICAg
ICAgICAgIHwgICAgICB8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8
Cj4gRnJlZUJTRCA5IC1jdXJyZW50ICAgIHwgIE5ldEJTRCAtY3VycmVudCAgT3BlbkJTRCAtY3Vy
cmVudCAgICAgICAgICAgICB8Cj4gIHwgICAgICAgICAgICAgICAgICAgIHwgICAgICB8ICAgICAg
ICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8Cj5AQCAtNTMzLDYgKzUzMyw3IEBA
IE5ldEJTRCA1LjEJCTIwMTAtMTEtMTkgW05CRF0KPiBGcmVlQlNEIDcuNAkJMjAxMS0wMi0yNCBb
RkJEXQo+IEZyZWVCU0QgOC4yCQkyMDExLTAyLTI0IFtGQkRdCj4gRHJhZ29uRmx5IDIuMTAuMQky
MDExLTA0LTI2IFtERkJdCj4rT3BlbkJTRCA0LjkJCTIwMTEtMDUtMDEgW09CRF0KPiAKPiBCaWJs
aW9ncmFwaHkKPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPgo+Cj5BdXRob3I6IGJydWNlYwo+
RGF0ZTogTW9uIE1heSAgMiAxMDozNToyNyAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMyMAo+VVJM
OiBodHRwOi8vc3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMyMAo+Cj5Mb2c6Cj4g
IEFkZCAtV21pc3NpbmctaW5jbHVkZS1kaXJzIHRvIENXQVJORkxBR1MsIHNvIHRpbmRlcmJveCB3
aWxsIHB1bmlzaCB0aG9zZQo+ICBkZXZlbG9wZXJzIGNvbW1pdHRpbmcgbmV3IGNvZGUgd2l0aCBi
cm9rZW4gaW5jbHVkZSBkaXJlY3Rvcmllcy4KPiAgRml4IGEgZmV3IHdoaXRlc3BhY2UgaXNzdWVz
Lgo+ICBJbXByb3ZlIGEgY291cGxlIG9mIGNvbW1lbnRzLgo+ICAtVyBpcyBub3cgZGVwcmVjYXRl
ZCBhbmQgaXMgcmVmZXJyZWQgdG8gYXMgLVdleHRyYSAoc2VlIGdjYygxKSkuCj4gIAo+ICBTdWJt
aXR0ZWQgYnk6CWFydW5kZWwKPgo+TW9kaWZpZWQ6Cj4gIGhlYWQvc3lzL2NvbmYva2Vybi5tawo+
Cj5Nb2RpZmllZDogaGVhZC9zeXMvY29uZi9rZXJuLm1rCj49PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
Pi0tLSBoZWFkL3N5cy9jb25mL2tlcm4ubWsJTW9uIE1heSAgMiAwOTo0NzoxMyAyMDExCShyMjIx
MzE5KQo+KysrIGhlYWQvc3lzL2NvbmYva2Vybi5tawlNb24gTWF5ICAyIDEwOjM1OjI3IDIwMTEJ
KHIyMjEzMjApCj5AQCAtMywyNCArMywyNSBAQAo+ICMKPiAjIFdhcm5pbmcgZmxhZ3MgZm9yIGNv
bXBpbGluZyB0aGUga2VybmVsIGFuZCBjb21wb25lbnRzIG9mIHRoZSBrZXJuZWwuCj4gIwo+LSMg
Tm90ZSB0aGF0IHRoZSBuZXdseSBhZGRlZCAtV2Nhc3QtcXVhbCBpcyByZXNwb25zaWJsZSBmb3Ig
Z2VuZXJhdGluZyAKPisjIE5vdGUgdGhhdCB0aGUgbmV3bHkgYWRkZWQgLVdjYXN0LXF1YWwgaXMg
cmVzcG9uc2libGUgZm9yIGdlbmVyYXRpbmcKPiAjIG1vc3Qgb2YgdGhlIHJlbWFpbmluZyB3YXJu
aW5ncy4gIFdhcm5pbmdzIGludHJvZHVjZWQgd2l0aCAtV2FsbCB3aWxsCj4gIyBhbHNvIHBvcCB1
cCwgYnV0IGFyZSBlYXNpZXIgdG8gZml4Lgo+IENXQVJORkxBR1M/PQktV2FsbCAtV3JlZHVuZGFu
dC1kZWNscyAtV25lc3RlZC1leHRlcm5zIC1Xc3RyaWN0LXByb3RvdHlwZXMgXAo+IAkJLVdtaXNz
aW5nLXByb3RvdHlwZXMgLVdwb2ludGVyLWFyaXRoIC1XaW5saW5lIC1XY2FzdC1xdWFsIFwKPi0J
CS1XdW5kZWYgLVduby1wb2ludGVyLXNpZ24gLWZmb3JtYXQtZXh0ZW5zaW9ucwo+KwkJLVd1bmRl
ZiAtV25vLXBvaW50ZXItc2lnbiAtZmZvcm1hdC1leHRlbnNpb25zIFwKPisJCS1XbWlzc2luZy1p
bmNsdWRlLWRpcnMKPiAjCj4gIyBUaGUgZm9sbG93aW5nIGZsYWdzIGFyZSBuZXh0IHVwIGZvciB3
b3JraW5nIG9uOgo+LSMJLVcKPisjCS1XZXh0cmEKPiAKPiAjCj4tIyBPbiB0aGUgaTM4NiwgZG8g
bm90IGFsaWduIHRoZSBzdGFjayB0byAxNi1ieXRlIGJvdW5kYXJpZXMuICBPdGhlcndpc2UgR0ND
Cj4tIyAyLjk1IGFkZHMgY29kZSB0byB0aGUgZW50cnkgYW5kIGV4aXQgcG9pbnQgb2YgZXZlcnkg
ZnVuY3Rpb24gdG8gYWxpZ24gdGhlCj4rIyBPbiBpMzg2LCBkbyBub3QgYWxpZ24gdGhlIHN0YWNr
IHRvIDE2LWJ5dGUgYm91bmRhcmllcy4gIE90aGVyd2lzZSBHQ0MgMi45NQo+KyMgYW5kIGFib3Zl
IGFkZHMgY29kZSB0byB0aGUgZW50cnkgYW5kIGV4aXQgcG9pbnQgb2YgZXZlcnkgZnVuY3Rpb24g
dG8gYWxpZ24gdGhlCj4gIyBzdGFjayB0byAxNi1ieXRlIGJvdW5kYXJpZXMgLS0gdGh1cyB3YXN0
aW5nIGFwcHJveGltYXRlbHkgMTIgYnl0ZXMgb2Ygc3RhY2sKPi0jIHBlciBmdW5jdGlvbiBjYWxs
LiAgV2hpbGUgdGhlIDE2LWJ5dGUgYWxpZ25tZW50IG1heSBiZW5lZml0IG1pY3JvIGJlbmNobWFy
a3MsIAo+KyMgcGVyIGZ1bmN0aW9uIGNhbGwuICBXaGlsZSB0aGUgMTYtYnl0ZSBhbGlnbm1lbnQg
bWF5IGJlbmVmaXQgbWljcm8gYmVuY2htYXJrcywKPiAjIGl0IGlzIHByb2JhYmx5IGFuIG92ZXJh
bGwgbG9zcyBhcyBpdCBtYWtlcyB0aGUgY29kZSBiaWdnZXIgKGxlc3MgZWZmaWNpZW50Cj4gIyB1
c2Ugb2YgY29kZSBjYWNoZSB0YWcgbGluZXMpIGFuZCB1c2VzIG1vcmUgc3RhY2sgKGxlc3MgZWZm
aWNpZW50IHVzZSBvZiBkYXRhCj4tIyBjYWNoZSB0YWcgbGluZXMpLiAgRXhwbGljaXRseSBwcm9o
aWJpdCB0aGUgdXNlIG9mIFNTRSBhbmQgb3RoZXIgU0lNRAo+KyMgY2FjaGUgdGFnIGxpbmVzKS4g
IEV4cGxpY2l0bHkgcHJvaGliaXQgdGhlIHVzZSBvZiBGUFUsIFNTRSBhbmQgb3RoZXIgU0lNRAo+
ICMgb3BlcmF0aW9ucyBpbnNpZGUgdGhlIGtlcm5lbCBpdHNlbGYuICBUaGVzZSBvcGVyYXRpb25z
IGFyZSBleGNsdXNpdmVseQo+ICMgcmVzZXJ2ZWQgZm9yIHVzZXIgYXBwbGljYXRpb25zLgo+ICMK
PkBAIC0zNSw2ICszNiw3IEBAIElOTElORV9MSU1JVD89CTgwMDAKPiAuaWYgJHtNQUNISU5FX0NQ
VUFSQ0h9ID09ICJhcm0iCj4gSU5MSU5FX0xJTUlUPz0JODAwMAo+IC5lbmRpZgo+Kwo+ICMKPiAj
IEZvciBJQS02NCwgd2UgdXNlIHIxMyBmb3IgdGhlIGtlcm5lbCBnbG9iYWxzIHBvaW50ZXIgYW5k
IHdlIG9ubHkgdXNlCj4gIyBhIHZlcnkgc21hbGwgc3Vic2V0IG9mIGZsb2F0IHJlZ2lzdGVycyBm
b3IgaW50ZWdlciBkaXZpZGVzLgo+QEAgLTk4LDcgKzEwMCw3IEBAIElOTElORV9MSU1JVD89CTgw
MDAKPiBDRkxBR1MrPQktZmZyZWVzdGFuZGluZwo+IAo+ICMKPi0jIEdDQyBTU1Agc3VwcG9ydC4K
PisjIEdDQyBTU1Agc3VwcG9ydAo+ICMKPiAuaWYgJHtNS19TU1B9ICE9ICJubyIgJiYgJHtNQUNI
SU5FX0NQVUFSQ0h9ICE9ICJpYTY0IiAmJiBcCj4gICAgICR7TUFDSElORV9DUFVBUkNIfSAhPSAi
YXJtIiAmJiAke01BQ0hJTkVfQ1BVQVJDSH0gIT0gIm1pcHMiCj5AQCAtMTA2LDkgKzEwOCw4IEBA
IENGTEFHUys9CS1mc3RhY2stcHJvdGVjdG9yCj4gLmVuZGlmCj4gCj4gIwo+LSMgRW5hYmxlIENU
RiBjb252ZXJzYXRpb24gb24gcmVxdWVzdC4KPisjIEVuYWJsZSBDVEYgY29udmVyc2F0aW9uIG9u
IHJlcXVlc3QKPiAjCj4gLmlmIGRlZmluZWQoV0lUSF9DVEYpCj4gLnVuZGVmIE5PX0NURgo+IC5l
bmRpZgo+LQo+Cj4KPkF1dGhvcjogYWRyaWFuCj5EYXRlOiBNb24gTWF5ICAyIDEwOjQyOjE5IDIw
MTEKPk5ldyBSZXZpc2lvbjogMjIxMzIxCj5VUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hh
bmdlc2V0L2Jhc2UvMjIxMzIxCj4KPkxvZzoKPiAgQWRkIGluIHRoZSB3b3JrLWFyb3VuZCBmb3Ig
dGhlIEFSODMxNiBnaWdlIHN3aXRjaCBQSFkuCj4gIAo+ICBUaGlzIGFsbG93cyB0aGUgZXRoZXJu
ZXQgdG8gZnVuY3Rpb24gb24gdGhlIFBCOTIgYm9hcmQuCj4gIAo+ICBTdWJtaXR0ZWQgYnk6CUx1
aXogT3RhdmlvIE8gU291emEKPgo+TW9kaWZpZWQ6Cj4gIGhlYWQvc3lzL21pcHMvY29uZi9QQjky
LmhpbnRzCj4KPk1vZGlmaWVkOiBoZWFkL3N5cy9taXBzL2NvbmYvUEI5Mi5oaW50cwo+PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvbWlwcy9jb25mL1BCOTIuaGludHMJTW9uIE1h
eSAgMiAxMDozNToyNyAyMDExCShyMjIxMzIwKQo+KysrIGhlYWQvc3lzL21pcHMvY29uZi9QQjky
LmhpbnRzCU1vbiBNYXkgIDIgMTA6NDI6MTkgMjAxMQkocjIyMTMyMSkKPkBAIC0zMCw3ICszMCwx
MSBAQCBoaW50LmFyZ2UuMC5hdD0ibmV4dXMwIgo+IGhpbnQuYXJnZS4wLm1hZGRyPTB4MTkwMDAw
MDAKPiBoaW50LmFyZ2UuMC5tc2l6ZT0weDEwMDAKPiBoaW50LmFyZ2UuMC5pcnE9Mgo+LWhpbnQu
YXJnZS4wLnBoeW1hc2s9MHgxCj4rCj4rIyBBUjgzMTYgd29ya2Fyb3VuZCBmb3Igbm93Cj4raGlu
dC5hcmdlLjAubWVkaWE9MTAwMAo+K2hpbnQuYXJnZS4wLmZkdXBsZXg9MQo+K2hpbnQuYXJnZS4w
LnBoeW1hc2s9MHgzCj4gCj4gIyBHUElPCj4gaGludC5ncGlvLjAuYXQ9ImFwYjAiCj4KPgo+T24g
TW9uIE1heSAgMiAxMSwgQnJ1Y2UgQ3JhbiB3cm90ZToKPj4gQXV0aG9yOiBicnVjZWMKPj4gRGF0
ZTogTW9uIE1heSAgMiAxMDozNToyNyAyMDExCj4+IE5ldyBSZXZpc2lvbjogMjIxMzIwCj4+IFVS
TDogaHR0cDovL3N2bi5mcmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMjAKPj4gCj4+IExv
ZzoKPj4gICBBZGQgLVdtaXNzaW5nLWluY2x1ZGUtZGlycyB0byBDV0FSTkZMQUdTLCBzbyB0aW5k
ZXJib3ggd2lsbCBwdW5pc2ggdGhvc2UKPj4gICBkZXZlbG9wZXJzIGNvbW1pdHRpbmcgbmV3IGNv
ZGUgd2l0aCBicm9rZW4gaW5jbHVkZSBkaXJlY3Rvcmllcy4KPgo+QnJ1Y2UgYWxyZWFkeSBjb21t
aXR0ZWQgcjIyMDcxMiBpbiBvcmRlciB0byBtYWtlIHRoZSBjdXJyZW50IHRyZWUgd29yayB3aXRo
Cj4tV21pc3NpbmctaW5jbHVkZS1kaXJzLiBTbyBob3BlZnVsbHkgdGluZGVyYm94IHdpbGwgbm90
IGNvbXBsYWluIGZvciBhbnkgQVJDSC4KPgo+UGxlYXNlIGFsc28gbm90ZSB0aGF0IGN1cnJlbnRs
eSAtV21pc3NpbmctaW5jbHVkZS1kaXJzIGlzIGEgbm9vcCBpbiBjbGFuZy4gT25jZQo+aXQgZ2V0
cyBpbXBsZW1lbnRlZCB3ZSB3aWxsIGhvcGVmdWxseSBiZW5lZml0IGZyb20gaXQgdmlhIHRoZSB2
ZW5kb3IgaW1wb3J0Lgo+Cj5UaGFua3MgYWdhaW4gQnJ1Y2UgZm9yIHRha2luZyBjYXJlISA6KQo+
Cj4+ICAgRml4IGEgZmV3IHdoaXRlc3BhY2UgaXNzdWVzLgo+PiAgIEltcHJvdmUgYSBjb3VwbGUg
b2YgY29tbWVudHMuCj4+ICAgLVcgaXMgbm93IGRlcHJlY2F0ZWQgYW5kIGlzIHJlZmVycmVkIHRv
IGFzIC1XZXh0cmEgKHNlZSBnY2MoMSkpLgo+PiAgIAo+PiAgIFN1Ym1pdHRlZCBieToJYXJ1bmRl
bAo+PiAKPj4gTW9kaWZpZWQ6Cj4+ICAgaGVhZC9zeXMvY29uZi9rZXJuLm1rCj4+IAo+PiBNb2Rp
ZmllZDogaGVhZC9zeXMvY29uZi9rZXJuLm1rCj4+ID09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+PiAt
LS0gaGVhZC9zeXMvY29uZi9rZXJuLm1rCU1vbiBNYXkgIDIgMDk6NDc6MTMgMjAxMQkocjIyMTMx
OSkKPj4gKysrIGhlYWQvc3lzL2NvbmYva2Vybi5tawlNb24gTWF5ICAyIDEwOjM1OjI3IDIwMTEJ
KHIyMjEzMjApCj4+IEBAIC0zLDI0ICszLDI1IEBACj4+ICAjCj4+ICAjIFdhcm5pbmcgZmxhZ3Mg
Zm9yIGNvbXBpbGluZyB0aGUga2VybmVsIGFuZCBjb21wb25lbnRzIG9mIHRoZSBrZXJuZWwuCj4+
ICAjCj4+IC0jIE5vdGUgdGhhdCB0aGUgbmV3bHkgYWRkZWQgLVdjYXN0LXF1YWwgaXMgcmVzcG9u
c2libGUgZm9yIGdlbmVyYXRpbmcgCj4+ICsjIE5vdGUgdGhhdCB0aGUgbmV3bHkgYWRkZWQgLVdj
YXN0LXF1YWwgaXMgcmVzcG9uc2libGUgZm9yIGdlbmVyYXRpbmcKPj4gICMgbW9zdCBvZiB0aGUg
cmVtYWluaW5nIHdhcm5pbmdzLiAgV2FybmluZ3MgaW50cm9kdWNlZCB3aXRoIC1XYWxsIHdpbGwK
Pj4gICMgYWxzbyBwb3AgdXAsIGJ1dCBhcmUgZWFzaWVyIHRvIGZpeC4KPj4gIENXQVJORkxBR1M/
PQktV2FsbCAtV3JlZHVuZGFudC1kZWNscyAtV25lc3RlZC1leHRlcm5zIC1Xc3RyaWN0LXByb3Rv
dHlwZXMgXAo+PiAgCQktV21pc3NpbmctcHJvdG90eXBlcyAtV3BvaW50ZXItYXJpdGggLVdpbmxp
bmUgLVdjYXN0LXF1YWwgXAo+PiAtCQktV3VuZGVmIC1Xbm8tcG9pbnRlci1zaWduIC1mZm9ybWF0
LWV4dGVuc2lvbnMKPj4gKwkJLVd1bmRlZiAtV25vLXBvaW50ZXItc2lnbiAtZmZvcm1hdC1leHRl
bnNpb25zIFwKPj4gKwkJLVdtaXNzaW5nLWluY2x1ZGUtZGlycwo+PiAgIwo+PiAgIyBUaGUgZm9s
bG93aW5nIGZsYWdzIGFyZSBuZXh0IHVwIGZvciB3b3JraW5nIG9uOgo+PiAtIwktVwo+PiArIwkt
V2V4dHJhCj4+ICAKPj4gICMKPj4gLSMgT24gdGhlIGkzODYsIGRvIG5vdCBhbGlnbiB0aGUgc3Rh
Y2sgdG8gMTYtYnl0ZSBib3VuZGFyaWVzLiAgT3RoZXJ3aXNlIEdDQwo+PiAtIyAyLjk1IGFkZHMg
Y29kZSB0byB0aGUgZW50cnkgYW5kIGV4aXQgcG9pbnQgb2YgZXZlcnkgZnVuY3Rpb24gdG8gYWxp
Z24gdGhlCj4+ICsjIE9uIGkzODYsIGRvIG5vdCBhbGlnbiB0aGUgc3RhY2sgdG8gMTYtYnl0ZSBi
b3VuZGFyaWVzLiAgT3RoZXJ3aXNlIEdDQyAyLjk1Cj4+ICsjIGFuZCBhYm92ZSBhZGRzIGNvZGUg
dG8gdGhlIGVudHJ5IGFuZCBleGl0IHBvaW50IG9mIGV2ZXJ5IGZ1bmN0aW9uIHRvIGFsaWduIHRo
ZQo+PiAgIyBzdGFjayB0byAxNi1ieXRlIGJvdW5kYXJpZXMgLS0gdGh1cyB3YXN0aW5nIGFwcHJv
eGltYXRlbHkgMTIgYnl0ZXMgb2Ygc3RhY2sKPj4gLSMgcGVyIGZ1bmN0aW9uIGNhbGwuICBXaGls
ZSB0aGUgMTYtYnl0ZSBhbGlnbm1lbnQgbWF5IGJlbmVmaXQgbWljcm8gYmVuY2htYXJrcywgCj4+
ICsjIHBlciBmdW5jdGlvbiBjYWxsLiAgV2hpbGUgdGhlIDE2LWJ5dGUgYWxpZ25tZW50IG1heSBi
ZW5lZml0IG1pY3JvIGJlbmNobWFya3MsCj4+ICAjIGl0IGlzIHByb2JhYmx5IGFuIG92ZXJhbGwg
bG9zcyBhcyBpdCBtYWtlcyB0aGUgY29kZSBiaWdnZXIgKGxlc3MgZWZmaWNpZW50Cj4+ICAjIHVz
ZSBvZiBjb2RlIGNhY2hlIHRhZyBsaW5lcykgYW5kIHVzZXMgbW9yZSBzdGFjayAobGVzcyBlZmZp
Y2llbnQgdXNlIG9mIGRhdGEKPj4gLSMgY2FjaGUgdGFnIGxpbmVzKS4gIEV4cGxpY2l0bHkgcHJv
aGliaXQgdGhlIHVzZSBvZiBTU0UgYW5kIG90aGVyIFNJTUQKPj4gKyMgY2FjaGUgdGFnIGxpbmVz
KS4gIEV4cGxpY2l0bHkgcHJvaGliaXQgdGhlIHVzZSBvZiBGUFUsIFNTRSBhbmQgb3RoZXIgU0lN
RAo+PiAgIyBvcGVyYXRpb25zIGluc2lkZSB0aGUga2VybmVsIGl0c2VsZi4gIFRoZXNlIG9wZXJh
dGlvbnMgYXJlIGV4Y2x1c2l2ZWx5Cj4+ICAjIHJlc2VydmVkIGZvciB1c2VyIGFwcGxpY2F0aW9u
cy4KPj4gICMKPj4gQEAgLTM1LDYgKzM2LDcgQEAgSU5MSU5FX0xJTUlUPz0JODAwMAo+PiAgLmlm
ICR7TUFDSElORV9DUFVBUkNIfSA9PSAiYXJtIgo+PiAgSU5MSU5FX0xJTUlUPz0JODAwMAo+PiAg
LmVuZGlmCj4+ICsKPj4gICMKPj4gICMgRm9yIElBLTY0LCB3ZSB1c2UgcjEzIGZvciB0aGUga2Vy
bmVsIGdsb2JhbHMgcG9pbnRlciBhbmQgd2Ugb25seSB1c2UKPj4gICMgYSB2ZXJ5IHNtYWxsIHN1
YnNldCBvZiBmbG9hdCByZWdpc3RlcnMgZm9yIGludGVnZXIgZGl2aWRlcy4KPj4gQEAgLTk4LDcg
KzEwMCw3IEBAIElOTElORV9MSU1JVD89CTgwMDAKPj4gIENGTEFHUys9CS1mZnJlZXN0YW5kaW5n
Cj4+ICAKPj4gICMKPj4gLSMgR0NDIFNTUCBzdXBwb3J0Lgo+PiArIyBHQ0MgU1NQIHN1cHBvcnQK
Pj4gICMKPj4gIC5pZiAke01LX1NTUH0gIT0gIm5vIiAmJiAke01BQ0hJTkVfQ1BVQVJDSH0gIT0g
ImlhNjQiICYmIFwKPj4gICAgICAke01BQ0hJTkVfQ1BVQVJDSH0gIT0gImFybSIgJiYgJHtNQUNI
SU5FX0NQVUFSQ0h9ICE9ICJtaXBzIgo+PiBAQCAtMTA2LDkgKzEwOCw4IEBAIENGTEFHUys9CS1m
c3RhY2stcHJvdGVjdG9yCj4+ICAuZW5kaWYKPj4gIAo+PiAgIwo+PiAtIyBFbmFibGUgQ1RGIGNv
bnZlcnNhdGlvbiBvbiByZXF1ZXN0Lgo+PiArIyBFbmFibGUgQ1RGIGNvbnZlcnNhdGlvbiBvbiBy
ZXF1ZXN0Cj4+ICAjCj4+ICAuaWYgZGVmaW5lZChXSVRIX0NURikKPj4gIC51bmRlZiBOT19DVEYK
Pj4gIC5lbmRpZgo+PiAtCj4KPi0tIAo+YTEzeAo+Cj4KPk9uIDIwMTEtMDQtMjkgMjA6MjAsIEp1
bmctdWsgS2ltIHdyb3RlOgo+Li4uCj4+ICtzdGF0aWMgX19pbmxpbmUgdm9pZAo+PiArdm13YXJl
X2h2Y2FsbCh1X2ludCBjbWQsIHVfaW50ICpwKQo+PiArewo+PiArCj4+ICsJX19hc20gX192b2xh
dGlsZSgiaW5sICglJWR4KSIKPj4gKwk6ICI9YSIgKHBbMF0pLCAiPWIiIChwWzFdKSwgIj1jIiAo
cFsyXSksICI9ZCIgKHBbM10pCj4+ICsJOiAiMCIgKFZNV19IVk1BR0lDKSwgIjEiIChVSU5UX01B
WCksICIyIiAoY21kKSwgIjMiIChWTVdfSFZQT1JUKQo+PiArCTogIm1lbW9yeSIpOwo+PiArfQo+
Cj5UaGlzIHVwc2V0cyBjbGFuZydzIGludGVncmF0ZWQgYXNzZW1ibGVyLCBhbmQgSSB0aGluayBp
dCdzIHJpZ2h0IGluIHRoaXMKPmNhc2U6Cj4KPnN5cy94ODYveDg2L3RzYy5jOjEwMzoxOTogZXJy
b3I6IGludmFsaWQgb3BlcmFuZCBmb3IgaW5zdHJ1Y3Rpb24KPiAgICAgICAgIF9fYXNtIF9fdm9s
YXRpbGUoImlubCAoJSVkeCkiCj4gICAgICAgICAgICAgICAgICAgICAgICAgIF4KPjxpbmxpbmUg
YXNtPjoxOjY6IG5vdGU6IGluc3RhbnRpYXRlZCBpbnRvIGFzc2VtYmx5IGhlcmUKPiAgICAgICAg
IGlubCAoJWR4KQo+ICAgICAgICAgICAgIF4KPgo+Q2FuIHdlIHBsZWFzZSBhZGQgYW4gZXhwbGlj
aXQgJSVlYXggYXMgc2Vjb25kIGFyZ3VtZW50IGhlcmU/ICBFLmcuOgo+Cj5kaWZmIC0tZ2l0IGEv
c3lzL3g4Ni94ODYvdHNjLmMgYi9zeXMveDg2L3g4Ni90c2MuYwo+aW5kZXggMGI3NTEwYy4uOTYz
ODE2NyAxMDA2NDQKPi0tLSBhL3N5cy94ODYveDg2L3RzYy5jCj4rKysgYi9zeXMveDg2L3g4Ni90
c2MuYwo+QEAgLTEwMCw3ICsxMDAsNyBAQCBzdGF0aWMgX19pbmxpbmUgdm9pZAo+ICB2bXdhcmVf
aHZjYWxsKHVfaW50IGNtZCwgdV9pbnQgKnApCj4gIHsKPiAgCj4tCV9fYXNtIF9fdm9sYXRpbGUo
ImlubCAoJSVkeCkiCj4rCV9fYXNtIF9fdm9sYXRpbGUoImlubCAoJSVkeCksICUlZWF4Igo+ICAJ
OiAiPWEiIChwWzBdKSwgIj1iIiAocFsxXSksICI9YyIgKHBbMl0pLCAiPWQiIChwWzNdKQo+ICAJ
OiAiMCIgKFZNV19IVk1BR0lDKSwgIjEiIChVSU5UX01BWCksICIyIiAoY21kKSwgIjMiIChWTVdf
SFZQT1JUKQo+ICAJOiAibWVtb3J5Iik7Cj4KPgo+QXV0aG9yOiBqaGIKPkRhdGU6IE1vbiBNYXkg
IDIgMTQ6MTM6MTIgMjAxMQo+TmV3IFJldmlzaW9uOiAyMjEzMjQKPlVSTDogaHR0cDovL3N2bi5m
cmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMjQKPgo+TG9nOgo+ICBBZGQgaW1wbGVtZW50
YXRpb25zIG9mIEJVU19BREpVU1RfUkVTT1VSQ0UoKSB0byB0aGUgUENJIGJ1cyBkcml2ZXIsCj4g
IGdlbmVyaWMgUENJLVBDSSBicmlkZ2UgZHJpdmVyLCB4ODYgbmV4dXMgZHJpdmVyLCBhbmQgeDg2
IEhvc3QgdG8gUENJIGJyaWRnZQo+ICBkcml2ZXJzLgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMv
YW1kNjQvcGNpL3BjaV9idXMuYwo+ICBoZWFkL3N5cy9kZXYvYWNwaWNhL2FjcGlfcGNpYl9hY3Bp
LmMKPiAgaGVhZC9zeXMvZGV2L3BjaS9wY2kuYwo+ICBoZWFkL3N5cy9kZXYvcGNpL3BjaV9wY2ku
Ywo+ICBoZWFkL3N5cy9pMzg2L3BjaS9wY2lfYnVzLmMKPiAgaGVhZC9zeXMveDg2L3g4Ni9tcHRh
YmxlX3BjaS5jCj4gIGhlYWQvc3lzL3g4Ni94ODYvbmV4dXMuYwo+Cj5Nb2RpZmllZDogaGVhZC9z
eXMvYW1kNjQvcGNpL3BjaV9idXMuYwo+PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9z
eXMvYW1kNjQvcGNpL3BjaV9idXMuYwlNb24gTWF5ICAyIDEzOjU4OjQwIDIwMTEJKHIyMjEzMjMp
Cj4rKysgaGVhZC9zeXMvYW1kNjQvcGNpL3BjaV9idXMuYwlNb24gTWF5ICAyIDE0OjEzOjEyIDIw
MTEJKHIyMjEzMjQpCj5AQCAtMzQ4LDYgKzM0OCw3IEBAIHN0YXRpYyBkZXZpY2VfbWV0aG9kX3Qg
bGVnYWN5X3BjaWJfbWV0aG8KPiAJREVWTUVUSE9EKGJ1c19yZWFkX2l2YXIsCWxlZ2FjeV9wY2li
X3JlYWRfaXZhciksCj4gCURFVk1FVEhPRChidXNfd3JpdGVfaXZhciwJbGVnYWN5X3BjaWJfd3Jp
dGVfaXZhciksCj4gCURFVk1FVEhPRChidXNfYWxsb2NfcmVzb3VyY2UsCWxlZ2FjeV9wY2liX2Fs
bG9jX3Jlc291cmNlKSwKPisJREVWTUVUSE9EKGJ1c19hZGp1c3RfcmVzb3VyY2UsCWJ1c19nZW5l
cmljX2FkanVzdF9yZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfcmVsZWFzZV9yZXNvdXJjZSwJ
YnVzX2dlbmVyaWNfcmVsZWFzZV9yZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfYWN0aXZhdGVf
cmVzb3VyY2UsIGJ1c19nZW5lcmljX2FjdGl2YXRlX3Jlc291cmNlKSwKPiAJREVWTUVUSE9EKGJ1
c19kZWFjdGl2YXRlX3Jlc291cmNlLCBidXNfZ2VuZXJpY19kZWFjdGl2YXRlX3Jlc291cmNlKSwK
Pgo+TW9kaWZpZWQ6IGhlYWQvc3lzL2Rldi9hY3BpY2EvYWNwaV9wY2liX2FjcGkuYwo+PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvZGV2L2FjcGljYS9hY3BpX3BjaWJfYWNwaS5j
CU1vbiBNYXkgIDIgMTM6NTg6NDAgMjAxMQkocjIyMTMyMykKPisrKyBoZWFkL3N5cy9kZXYvYWNw
aWNhL2FjcGlfcGNpYl9hY3BpLmMJTW9uIE1heSAgMiAxNDoxMzoxMiAyMDExCShyMjIxMzI0KQo+
QEAgLTEwMCw2ICsxMDAsNyBAQCBzdGF0aWMgZGV2aWNlX21ldGhvZF90IGFjcGlfcGNpYl9hY3Bp
X21lCj4gICAgIERFVk1FVEhPRChidXNfcmVhZF9pdmFyLAkJYWNwaV9wY2liX3JlYWRfaXZhciks
Cj4gICAgIERFVk1FVEhPRChidXNfd3JpdGVfaXZhciwJCWFjcGlfcGNpYl93cml0ZV9pdmFyKSwK
PiAgICAgREVWTUVUSE9EKGJ1c19hbGxvY19yZXNvdXJjZSwJYWNwaV9wY2liX2FjcGlfYWxsb2Nf
cmVzb3VyY2UpLAo+KyAgICBERVZNRVRIT0QoYnVzX2FkanVzdF9yZXNvdXJjZSwJYnVzX2dlbmVy
aWNfYWRqdXN0X3Jlc291cmNlKSwKPiAgICAgREVWTUVUSE9EKGJ1c19yZWxlYXNlX3Jlc291cmNl
LAlidXNfZ2VuZXJpY19yZWxlYXNlX3Jlc291cmNlKSwKPiAgICAgREVWTUVUSE9EKGJ1c19hY3Rp
dmF0ZV9yZXNvdXJjZSwJYnVzX2dlbmVyaWNfYWN0aXZhdGVfcmVzb3VyY2UpLAo+ICAgICBERVZN
RVRIT0QoYnVzX2RlYWN0aXZhdGVfcmVzb3VyY2UsCWJ1c19nZW5lcmljX2RlYWN0aXZhdGVfcmVz
b3VyY2UpLAo+Cj5Nb2RpZmllZDogaGVhZC9zeXMvZGV2L3BjaS9wY2kuYwo+PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvZGV2L3BjaS9wY2kuYwlNb24gTWF5ICAyIDEzOjU4OjQw
IDIwMTEJKHIyMjEzMjMpCj4rKysgaGVhZC9zeXMvZGV2L3BjaS9wY2kuYwlNb24gTWF5ICAyIDE0
OjEzOjEyIDIwMTEJKHIyMjEzMjQpCj5AQCAtMTQyLDYgKzE0Miw3IEBAIHN0YXRpYyBkZXZpY2Vf
bWV0aG9kX3QgcGNpX21ldGhvZHNbXSA9IHsKPiAJREVWTUVUSE9EKGJ1c19nZXRfcmVzb3VyY2Us
CWJ1c19nZW5lcmljX3JsX2dldF9yZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfZGVsZXRlX3Jl
c291cmNlLAlwY2lfZGVsZXRlX3Jlc291cmNlKSwKPiAJREVWTUVUSE9EKGJ1c19hbGxvY19yZXNv
dXJjZSwJcGNpX2FsbG9jX3Jlc291cmNlKSwKPisJREVWTUVUSE9EKGJ1c19hZGp1c3RfcmVzb3Vy
Y2UsCWJ1c19nZW5lcmljX2FkanVzdF9yZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfcmVsZWFz
ZV9yZXNvdXJjZSwJYnVzX2dlbmVyaWNfcmxfcmVsZWFzZV9yZXNvdXJjZSksCj4gCURFVk1FVEhP
RChidXNfYWN0aXZhdGVfcmVzb3VyY2UsIHBjaV9hY3RpdmF0ZV9yZXNvdXJjZSksCj4gCURFVk1F
VEhPRChidXNfZGVhY3RpdmF0ZV9yZXNvdXJjZSwgcGNpX2RlYWN0aXZhdGVfcmVzb3VyY2UpLAo+
Cj5Nb2RpZmllZDogaGVhZC9zeXMvZGV2L3BjaS9wY2lfcGNpLmMKPj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQo+LS0tIGhlYWQvc3lzL2Rldi9wY2kvcGNpX3BjaS5jCU1vbiBNYXkgIDIgMTM6NTg6NDAg
MjAxMQkocjIyMTMyMykKPisrKyBoZWFkL3N5cy9kZXYvcGNpL3BjaV9wY2kuYwlNb24gTWF5ICAy
IDE0OjEzOjEyIDIwMTEJKHIyMjEzMjQpCj5AQCAtNzMsNiArNzMsNyBAQCBzdGF0aWMgZGV2aWNl
X21ldGhvZF90IHBjaWJfbWV0aG9kc1tdID0gCj4gICAgIERFVk1FVEhPRChidXNfcmVhZF9pdmFy
LAkJcGNpYl9yZWFkX2l2YXIpLAo+ICAgICBERVZNRVRIT0QoYnVzX3dyaXRlX2l2YXIsCQlwY2li
X3dyaXRlX2l2YXIpLAo+ICAgICBERVZNRVRIT0QoYnVzX2FsbG9jX3Jlc291cmNlLAlwY2liX2Fs
bG9jX3Jlc291cmNlKSwKPisgICAgREVWTUVUSE9EKGJ1c19hZGp1c3RfcmVzb3VyY2UsCWJ1c19n
ZW5lcmljX2FkanVzdF9yZXNvdXJjZSksCj4gICAgIERFVk1FVEhPRChidXNfcmVsZWFzZV9yZXNv
dXJjZSwJYnVzX2dlbmVyaWNfcmVsZWFzZV9yZXNvdXJjZSksCj4gICAgIERFVk1FVEhPRChidXNf
YWN0aXZhdGVfcmVzb3VyY2UsCWJ1c19nZW5lcmljX2FjdGl2YXRlX3Jlc291cmNlKSwKPiAgICAg
REVWTUVUSE9EKGJ1c19kZWFjdGl2YXRlX3Jlc291cmNlLAlidXNfZ2VuZXJpY19kZWFjdGl2YXRl
X3Jlc291cmNlKSwKPgo+TW9kaWZpZWQ6IGhlYWQvc3lzL2kzODYvcGNpL3BjaV9idXMuYwo+PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvaTM4Ni9wY2kvcGNpX2J1cy5jCU1vbiBN
YXkgIDIgMTM6NTg6NDAgMjAxMQkocjIyMTMyMykKPisrKyBoZWFkL3N5cy9pMzg2L3BjaS9wY2lf
YnVzLmMJTW9uIE1heSAgMiAxNDoxMzoxMiAyMDExCShyMjIxMzI0KQo+QEAgLTU2NSw2ICs1NjUs
NyBAQCBzdGF0aWMgZGV2aWNlX21ldGhvZF90IGxlZ2FjeV9wY2liX21ldGhvCj4gCURFVk1FVEhP
RChidXNfcmVhZF9pdmFyLAlsZWdhY3lfcGNpYl9yZWFkX2l2YXIpLAo+IAlERVZNRVRIT0QoYnVz
X3dyaXRlX2l2YXIsCWxlZ2FjeV9wY2liX3dyaXRlX2l2YXIpLAo+IAlERVZNRVRIT0QoYnVzX2Fs
bG9jX3Jlc291cmNlLAlsZWdhY3lfcGNpYl9hbGxvY19yZXNvdXJjZSksCj4rCURFVk1FVEhPRChi
dXNfYWRqdXN0X3Jlc291cmNlLAlidXNfZ2VuZXJpY19hZGp1c3RfcmVzb3VyY2UpLAo+IAlERVZN
RVRIT0QoYnVzX3JlbGVhc2VfcmVzb3VyY2UsCWJ1c19nZW5lcmljX3JlbGVhc2VfcmVzb3VyY2Up
LAo+IAlERVZNRVRIT0QoYnVzX2FjdGl2YXRlX3Jlc291cmNlLCBidXNfZ2VuZXJpY19hY3RpdmF0
ZV9yZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfZGVhY3RpdmF0ZV9yZXNvdXJjZSwgYnVzX2dl
bmVyaWNfZGVhY3RpdmF0ZV9yZXNvdXJjZSksCj4KPk1vZGlmaWVkOiBoZWFkL3N5cy94ODYveDg2
L21wdGFibGVfcGNpLmMKPj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+LS0tIGhlYWQvc3lzL3g4Ni94
ODYvbXB0YWJsZV9wY2kuYwlNb24gTWF5ICAyIDEzOjU4OjQwIDIwMTEJKHIyMjEzMjMpCj4rKysg
aGVhZC9zeXMveDg2L3g4Ni9tcHRhYmxlX3BjaS5jCU1vbiBNYXkgIDIgMTQ6MTM6MTIgMjAxMQko
cjIyMTMyNCkKPkBAIC0xMTYsNiArMTE2LDcgQEAgc3RhdGljIGRldmljZV9tZXRob2RfdCBtcHRh
YmxlX2hvc3RiX21ldAo+IAlERVZNRVRIT0QoYnVzX3JlYWRfaXZhciwJbGVnYWN5X3BjaWJfcmVh
ZF9pdmFyKSwKPiAJREVWTUVUSE9EKGJ1c193cml0ZV9pdmFyLAlsZWdhY3lfcGNpYl93cml0ZV9p
dmFyKSwKPiAJREVWTUVUSE9EKGJ1c19hbGxvY19yZXNvdXJjZSwJbGVnYWN5X3BjaWJfYWxsb2Nf
cmVzb3VyY2UpLAo+KwlERVZNRVRIT0QoYnVzX2FkanVzdF9yZXNvdXJjZSwJYnVzX2dlbmVyaWNf
YWRqdXN0X3Jlc291cmNlKSwKPiAJREVWTUVUSE9EKGJ1c19yZWxlYXNlX3Jlc291cmNlLAlidXNf
Z2VuZXJpY19yZWxlYXNlX3Jlc291cmNlKSwKPiAJREVWTUVUSE9EKGJ1c19hY3RpdmF0ZV9yZXNv
dXJjZSwgYnVzX2dlbmVyaWNfYWN0aXZhdGVfcmVzb3VyY2UpLAo+IAlERVZNRVRIT0QoYnVzX2Rl
YWN0aXZhdGVfcmVzb3VyY2UsIGJ1c19nZW5lcmljX2RlYWN0aXZhdGVfcmVzb3VyY2UpLAo+Cj5N
b2RpZmllZDogaGVhZC9zeXMveDg2L3g4Ni9uZXh1cy5jCj49PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
Pi0tLSBoZWFkL3N5cy94ODYveDg2L25leHVzLmMJTW9uIE1heSAgMiAxMzo1ODo0MCAyMDExCShy
MjIxMzIzKQo+KysrIGhlYWQvc3lzL3g4Ni94ODYvbmV4dXMuYwlNb24gTWF5ICAyIDE0OjEzOjEy
IDIwMTEJKHIyMjEzMjQpCj5AQCAtMTAwLDYgKzEwMCw4IEBAIHN0YXRpYyBkZXZpY2VfdCBuZXh1
c19hZGRfY2hpbGQoZGV2aWNlX3QKPiAJCQkJaW50IHVuaXQpOwo+IHN0YXRpYwlzdHJ1Y3QgcmVz
b3VyY2UgKm5leHVzX2FsbG9jX3Jlc291cmNlKGRldmljZV90LCBkZXZpY2VfdCwgaW50LCBpbnQg
KiwKPiAJCQkJCSAgICAgIHVfbG9uZywgdV9sb25nLCB1X2xvbmcsIHVfaW50KTsKPitzdGF0aWMJ
aW50IG5leHVzX2FkanVzdF9yZXNvdXJjZShkZXZpY2VfdCwgZGV2aWNlX3QsIGludCwgc3RydWN0
IHJlc291cmNlICosCj4rCQkJCSAgdV9sb25nLCB1X2xvbmcpOwo+ICNpZmRlZiBTTVAKPiBzdGF0
aWMJaW50IG5leHVzX2JpbmRfaW50cihkZXZpY2VfdCwgZGV2aWNlX3QsIHN0cnVjdCByZXNvdXJj
ZSAqLCBpbnQpOwo+ICNlbmRpZgo+QEAgLTE0NCw2ICsxNDYsNyBAQCBzdGF0aWMgZGV2aWNlX21l
dGhvZF90IG5leHVzX21ldGhvZHNbXSA9Cj4gCURFVk1FVEhPRChidXNfcHJpbnRfY2hpbGQsCW5l
eHVzX3ByaW50X2NoaWxkKSwKPiAJREVWTUVUSE9EKGJ1c19hZGRfY2hpbGQsCW5leHVzX2FkZF9j
aGlsZCksCj4gCURFVk1FVEhPRChidXNfYWxsb2NfcmVzb3VyY2UsCW5leHVzX2FsbG9jX3Jlc291
cmNlKSwKPisJREVWTUVUSE9EKGJ1c19hZGp1c3RfcmVzb3VyY2UsCW5leHVzX2FkanVzdF9yZXNv
dXJjZSksCj4gCURFVk1FVEhPRChidXNfcmVsZWFzZV9yZXNvdXJjZSwJbmV4dXNfcmVsZWFzZV9y
ZXNvdXJjZSksCj4gCURFVk1FVEhPRChidXNfYWN0aXZhdGVfcmVzb3VyY2UsIG5leHVzX2FjdGl2
YXRlX3Jlc291cmNlKSwKPiAJREVWTUVUSE9EKGJ1c19kZWFjdGl2YXRlX3Jlc291cmNlLCBuZXh1
c19kZWFjdGl2YXRlX3Jlc291cmNlKSwKPkBAIC0zMzIsNiArMzM1LDIzIEBAIG5leHVzX2FkZF9j
aGlsZChkZXZpY2VfdCBidXMsIHVfaW50IG9yZGUKPiAJcmV0dXJuKGNoaWxkKTsKPiB9Cj4gCj4r
c3RhdGljIHN0cnVjdCBybWFuICoKPituZXh1c19ybWFuKGludCB0eXBlKQo+K3sKPisJc3dpdGNo
ICh0eXBlKSB7Cj4rCWNhc2UgU1lTX1JFU19JUlE6Cj4rCQlyZXR1cm4gKCZpcnFfcm1hbik7Cj4r
CWNhc2UgU1lTX1JFU19EUlE6Cj4rCQlyZXR1cm4gKCZkcnFfcm1hbik7Cj4rCWNhc2UgU1lTX1JF
U19JT1BPUlQ6Cj4rCQlyZXR1cm4gKCZwb3J0X3JtYW4pOwo+KwljYXNlIFNZU19SRVNfTUVNT1JZ
Ogo+KwkJcmV0dXJuICgmbWVtX3JtYW4pOwo+KwlkZWZhdWx0Ogo+KwkJcmV0dXJuIChOVUxMKTsK
PisJfQo+K30KPisKPiAvKgo+ICAqIEFsbG9jYXRlIGEgcmVzb3VyY2Ugb24gYmVoYWxmIG9mIGNo
aWxkLiAgTkI6IGNoaWxkIGlzIHVzdWFsbHkgZ29pbmcgdG8gYmUgYQo+ICAqIGNoaWxkIG9mIG9u
ZSBvZiBvdXIgZGVzY2VuZGFudHMsIG5vdCBhIGRpcmVjdCBjaGlsZCBvZiBuZXh1czAuCj5AQCAt
MzY0LDI3ICszODQsOSBAQCBuZXh1c19hbGxvY19yZXNvdXJjZShkZXZpY2VfdCBidXMsIGRldmlj
Cj4gCX0KPiAKPiAJZmxhZ3MgJj0gflJGX0FDVElWRTsKPi0KPi0Jc3dpdGNoICh0eXBlKSB7Cj4t
CWNhc2UgU1lTX1JFU19JUlE6Cj4tCQlybSA9ICZpcnFfcm1hbjsKPi0JCWJyZWFrOwo+LQo+LQlj
YXNlIFNZU19SRVNfRFJROgo+LQkJcm0gPSAmZHJxX3JtYW47Cj4tCQlicmVhazsKPi0KPi0JY2Fz
ZSBTWVNfUkVTX0lPUE9SVDoKPi0JCXJtID0gJnBvcnRfcm1hbjsKPi0JCWJyZWFrOwo+LQo+LQlj
YXNlIFNZU19SRVNfTUVNT1JZOgo+LQkJcm0gPSAmbWVtX3JtYW47Cj4tCQlicmVhazsKPi0KPi0J
ZGVmYXVsdDoKPi0JCXJldHVybiAwOwo+LQl9Cj4rCXJtID0gbmV4dXNfcm1hbih0eXBlKTsKPisJ
aWYgKHJtID09IE5VTEwpCj4rCQlyZXR1cm4gKE5VTEwpOwo+IAo+IAlydiA9IHJtYW5fcmVzZXJ2
ZV9yZXNvdXJjZShybSwgc3RhcnQsIGVuZCwgY291bnQsIGZsYWdzLCBjaGlsZCk7Cj4gCWlmIChy
diA9PSAwKQo+QEAgLTQwMiw2ICs0MDQsMjAgQEAgbmV4dXNfYWxsb2NfcmVzb3VyY2UoZGV2aWNl
X3QgYnVzLCBkZXZpYwo+IH0KPiAKPiBzdGF0aWMgaW50Cj4rbmV4dXNfYWRqdXN0X3Jlc291cmNl
KGRldmljZV90IGJ1cywgZGV2aWNlX3QgY2hpbGQsIGludCB0eXBlLAo+KyAgICBzdHJ1Y3QgcmVz
b3VyY2UgKnIsIHVfbG9uZyBzdGFydCwgdV9sb25nIGVuZCkKPit7Cj4rCXN0cnVjdCBybWFuICpy
bTsKPisKPisJcm0gPSBuZXh1c19ybWFuKHR5cGUpOwo+KwlpZiAocm0gPT0gTlVMTCkKPisJCXJl
dHVybiAoRU5YSU8pOwo+KwlpZiAoIXJtYW5faXNfcmVnaW9uX21hbmFnZXIociwgcm0pKQo+KwkJ
cmV0dXJuIChFSU5WQUwpOwo+KwlyZXR1cm4gKHJtYW5fYWRqdXN0X3Jlc291cmNlKHIsIHN0YXJ0
LCBlbmQpKTsKPit9Cj4rCj4rc3RhdGljIGludAo+IG5leHVzX2FjdGl2YXRlX3Jlc291cmNlKGRl
dmljZV90IGJ1cywgZGV2aWNlX3QgY2hpbGQsIGludCB0eXBlLCBpbnQgcmlkLAo+IAkJCXN0cnVj
dCByZXNvdXJjZSAqcikKPiB7Cj4KPgo+QXV0aG9yOiBqaGIKPkRhdGU6IE1vbiBNYXkgIDIgMTQ6
MzQ6MDMgMjAxMQo+TmV3IFJldmlzaW9uOiAyMjEzMjYKPlVSTDogaHR0cDovL3N2bi5mcmVlYnNk
Lm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMjYKPgo+TG9nOgo+ICBBZGQgYW4gZW50cnkgZm9yIHRo
ZSBLdXJvdXRvc2hpa291IFNFUklBTDRQLUxQUENJMiB3aGljaCB1c2VzIGFuIE94Zm9yZAo+ICA0
IHBvcnQgY2hpcCBidXQgd2l0aCBhIG5vbnN0YW5kYXJkIGNsb2NrLgo+ICAKPiAgUFI6CQlrZXJu
LzEwNDIxMgo+ICBTdWJtaXR0ZWQgYnk6CVNodWljaGkgS0lUQUdVQ0hJICBraXQgb2YgeXNuYiBu
ZXQKPiAgTUZDIGFmdGVyOgkxIHdlZWsKPgo+TW9kaWZpZWQ6Cj4gIGhlYWQvc3lzL2Rldi9wdWMv
cHVjZGF0YS5jCj4KPk1vZGlmaWVkOiBoZWFkL3N5cy9kZXYvcHVjL3B1Y2RhdGEuYwo+PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvZGV2L3B1Yy9wdWNkYXRhLmMJTW9uIE1heSAg
MiAxNDoyMzozNiAyMDExCShyMjIxMzI1KQo+KysrIGhlYWQvc3lzL2Rldi9wdWMvcHVjZGF0YS5j
CU1vbiBNYXkgIDIgMTQ6MzQ6MDMgMjAxMQkocjIyMTMyNikKPkBAIC02MzgsNiArNjM4LDEyIEBA
IGNvbnN0IHN0cnVjdCBwdWNfY2ZnIHB1Y19wY2lfZGV2aWNlc1tdID0KPiAJICAgIFBVQ19QT1JU
XzRTLCAweDEwLCAwLCA4LAo+IAl9LAo+IAo+Kwl7ICAgMHgxNDE1LCAweDk1MDEsIDB4MTRkYiwg
MHgyMTUwLAo+KwkgICAgIkt1cm91dG9zaGlrb3UgU0VSSUFMNFAtTFBQQ0kyIiwKPisJICAgIERF
RkFVTFRfUkNMSyAqIDEwLAo+KwkgICAgUFVDX1BPUlRfNFMsIDB4MTAsIDAsIDgsCj4rCX0sCj4r
Cj4gCXsgICAweDE0MTUsIDB4OTUwMSwgMHhmZmZmLCAwLAo+IAkgICAgIk94Zm9yZCBTZW1pY29u
ZHVjdG9yIE9YMTZQQ0k5NTQgVUFSVHMiLAo+IAkgICAgREVGQVVMVF9SQ0xLLAo+Cj4KPk9uIFN1
bmRheSwgTWF5IDAxLCAyMDExIDM6MDU6NTQgcG0gQmVybmhhcmQgU2NobWlkdCB3cm90ZToKPj4g
QXV0aG9yOiBic2NobWlkdAo+PiBEYXRlOiBTdW4gTWF5ICAxIDE5OjA1OjU0IDIwMTEKPj4gTmV3
IFJldmlzaW9uOiAyMjEzMDEKPj4gVVJMOiBodHRwOi8vc3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNl
dC9iYXNlLzIyMTMwMQo+PiAKPj4gTG9nOgo+PiAgIFRoZXNlIGFyZSBvZiBjb3Vyc2UgaTM4Ni9h
bWQ2NCBvbmx5Lgo+PiAKPj4gTW9kaWZpZWQ6Cj4+ICAgaGVhZC9zeXMvY29uZi9OT1RFUwo+Cj5Q
bGVhc2UgcHV0IHRoZW0gaW4gaTM4Ni9jb25mL05PVEVTIGFuZCBhbWQ2NC9jb25mL05PVEVTLiAg
QWxsIGRyaXZlcnMgc2hvdWxkIAo+YmUgaW4gYXBwcm9wcmlhdGUgTk9URVMgZmlsZXMuCj4KPi0t
IAo+Sm9obiBCYWxkd2luCj4KPgo+QXV0aG9yOiBqaGIKPkRhdGU6IE1vbiBNYXkgIDIgMTU6MDE6
MjggMjAxMQo+TmV3IFJldmlzaW9uOiAyMjEzMjcKPlVSTDogaHR0cDovL3N2bi5mcmVlYnNkLm9y
Zy9jaGFuZ2VzZXQvYmFzZS8yMjEzMjcKPgo+TG9nOgo+ICBEb24ndCBleHBsaWNpdGx5IGxpc3Qg
cGNpX3dyaXRlX2l2YXIoKSBmb3IgYnVzX3dyaXRlX2l2YXIsIHRoZSBtZXRob2QgaXMKPiAgYWxy
ZWFkeSBpbmhlcml0ZWQgZnJvbSB0aGUgUENJIGJ1cyBkcml2ZXIuCj4KPk1vZGlmaWVkOgo+ICBo
ZWFkL3N5cy9kZXYvY2FyZGJ1cy9jYXJkYnVzLmMKPgo+TW9kaWZpZWQ6IGhlYWQvc3lzL2Rldi9j
YXJkYnVzL2NhcmRidXMuYwo+PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvZGV2
L2NhcmRidXMvY2FyZGJ1cy5jCU1vbiBNYXkgIDIgMTQ6MzQ6MDMgMjAxMQkocjIyMTMyNikKPisr
KyBoZWFkL3N5cy9kZXYvY2FyZGJ1cy9jYXJkYnVzLmMJTW9uIE1heSAgMiAxNTowMToyOCAyMDEx
CShyMjIxMzI3KQo+QEAgLTMxNyw3ICszMTcsNiBAQCBzdGF0aWMgZGV2aWNlX21ldGhvZF90IGNh
cmRidXNfbWV0aG9kc1tdCj4gCj4gCS8qIEJ1cyBpbnRlcmZhY2UgKi8KPiAJREVWTUVUSE9EKGJ1
c19yZWFkX2l2YXIsCWNhcmRidXNfcmVhZF9pdmFyKSwKPi0JREVWTUVUSE9EKGJ1c193cml0ZV9p
dmFyLAlwY2lfd3JpdGVfaXZhciksCj4gCURFVk1FVEhPRChidXNfZHJpdmVyX2FkZGVkLAljYXJk
YnVzX2RyaXZlcl9hZGRlZCksCj4gCj4gCS8qIENhcmQgSW50ZXJmYWNlICovCj4KPgo+QXV0aG9y
OiB0dWV4ZW4KPkRhdGU6IE1vbiBNYXkgIDIgMTU6NTM6MDAgMjAxMQo+TmV3IFJldmlzaW9uOiAy
MjEzMjgKPlVSTDogaHR0cDovL3N2bi5mcmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMjgK
Pgo+TG9nOgo+ICBTb21lIG1vcmUgY2xlYW51cHMgcmVsYXRlZCB0byBhbiBrZXJuZWwgd2l0aG91
dCBJTkVULgo+ICAKPiAgTUZDIGFmdGVyOiAxIHdlZWsKPgo+TW9kaWZpZWQ6Cj4gIGhlYWQvc3lz
L25ldGluZXQvc2N0cHV0aWwuYwo+ICBoZWFkL3N5cy9uZXRpbmV0L3NjdHB1dGlsLmgKPgo+TW9k
aWZpZWQ6IGhlYWQvc3lzL25ldGluZXQvc2N0cHV0aWwuYwo+PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Cj4tLS0gaGVhZC9zeXMvbmV0aW5ldC9zY3RwdXRpbC5jCU1vbiBNYXkgIDIgMTU6MDE6MjggMjAx
MQkocjIyMTMyNykKPisrKyBoZWFkL3N5cy9uZXRpbmV0L3NjdHB1dGlsLmMJTW9uIE1heSAgMiAx
NTo1MzowMCAyMDExCShyMjIxMzI4KQo+QEAgLTI4NDQsOSArMjg0NCwxMSBAQCBzY3RwX25vdGlm
eV9wZWVyX2FkZHJfY2hhbmdlKHN0cnVjdCBzY3RwCj4gCXNwYy0+c3BjX2ZsYWdzID0gMDsKPiAJ
c3BjLT5zcGNfbGVuZ3RoID0gc2l6ZW9mKHN0cnVjdCBzY3RwX3BhZGRyX2NoYW5nZSk7Cj4gCXN3
aXRjaCAoc2EtPnNhX2ZhbWlseSkgewo+KyNpZmRlZiBJTkVUCj4gCWNhc2UgQUZfSU5FVDoKPiAJ
CW1lbWNweSgmc3BjLT5zcGNfYWFkZHIsIHNhLCBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSk7
Cj4gCQlicmVhazsKPisjZW5kaWYKPiAjaWZkZWYgSU5FVDYKPiAJY2FzZSBBRl9JTkVUNjoKPiAJ
CXsKPkBAIC00MDg0LDYgKzQwODYsNyBAQCBzY3RwX2NtcGFkZHIoc3RydWN0IHNvY2thZGRyICpz
YTEsIHN0cnVjCj4gCQkJICAgIHNpbjZfMikpOwo+IAkJfQo+ICNlbmRpZgo+KyNpZmRlZiBJTkVU
Cj4gCWNhc2UgQUZfSU5FVDoKPiAJCXsKPiAJCQkvKiBJUHY0IGFkZHJlc3NlcyAqLwo+QEAgLTQw
OTMsNiArNDA5Niw3IEBAIHNjdHBfY21wYWRkcihzdHJ1Y3Qgc29ja2FkZHIgKnNhMSwgc3RydWMK
PiAJCQlzaW5fMiA9IChzdHJ1Y3Qgc29ja2FkZHJfaW4gKilzYTI7Cj4gCQkJcmV0dXJuIChzaW5f
MS0+c2luX2FkZHIuc19hZGRyID09IHNpbl8yLT5zaW5fYWRkci5zX2FkZHIpOwo+IAkJfQo+KyNl
bmRpZgo+IAlkZWZhdWx0Ogo+IAkJLyogd2UgZG9uJ3QgZG8gdGhlc2UuLi4gKi8KPiAJCXJldHVy
biAoMCk7Cj5AQCAtNDEyMiw2ICs0MTI2LDcgQEAgc2N0cF9wcmludF9hZGRyZXNzKHN0cnVjdCBz
b2NrYWRkciAqc2EpCj4gCQkJYnJlYWs7Cj4gCQl9Cj4gI2VuZGlmCj4rI2lmZGVmIElORVQKPiAJ
Y2FzZSBBRl9JTkVUOgo+IAkJewo+IAkJCXN0cnVjdCBzb2NrYWRkcl9pbiAqc2luOwo+QEAgLTQx
MzMsNiArNDEzOCw3IEBAIHNjdHBfcHJpbnRfYWRkcmVzcyhzdHJ1Y3Qgc29ja2FkZHIgKnNhKQo+
IAkJCSAgICBwWzBdLCBwWzFdLCBwWzJdLCBwWzNdLCBudG9ocyhzaW4tPnNpbl9wb3J0KSk7Cj4g
CQkJYnJlYWs7Cj4gCQl9Cj4rI2VuZGlmCj4gCWRlZmF1bHQ6Cj4gCQlTQ1RQX1BSSU5URigiP1xu
Iik7Cj4gCQlicmVhazsKPkBAIC00MTQzLDYgKzQxNDksNyBAQCB2b2lkCj4gc2N0cF9wcmludF9h
ZGRyZXNzX3BrdChzdHJ1Y3QgaXAgKmlwaCwgc3RydWN0IHNjdHBoZHIgKnNoKQo+IHsKPiAJc3dp
dGNoIChpcGgtPmlwX3YpIHsKPisjaWZkZWYgSU5FVAo+IAljYXNlIElQVkVSU0lPTjoKPiAJCXsK
PiAJCQlzdHJ1Y3Qgc29ja2FkZHJfaW4gbHNhLCBmc2E7Cj5AQCAtNDE2Myw2ICs0MTcwLDcgQEAg
c2N0cF9wcmludF9hZGRyZXNzX3BrdChzdHJ1Y3QgaXAgKmlwaCwgcwo+IAkJCXNjdHBfcHJpbnRf
YWRkcmVzcygoc3RydWN0IHNvY2thZGRyICopJmZzYSk7Cj4gCQkJYnJlYWs7Cj4gCQl9Cj4rI2Vu
ZGlmCj4gI2lmZGVmIElORVQ2Cj4gCWNhc2UgSVBWNl9WRVJTSU9OID4+IDQ6Cj4gCQl7Cj5AQCAt
NDg2MiwyMiArNDg3MCwzMyBAQCBzY3RwX2ZpbmRfaWZhX2luX2VwKHN0cnVjdCBzY3RwX2lucGNi
ICppCj4gdWludDMyX3QKPiBzY3RwX2dldF9pZmFfaGFzaF92YWwoc3RydWN0IHNvY2thZGRyICph
ZGRyKQo+IHsKPi0JaWYgKGFkZHItPnNhX2ZhbWlseSA9PSBBRl9JTkVUKSB7Cj4tCQlzdHJ1Y3Qg
c29ja2FkZHJfaW4gKnNpbjsKPisJc3dpdGNoIChhZGRyLT5zYV9mYW1pbHkpIHsKPisjaWZkZWYg
SU5FVAo+KwljYXNlIEFGX0lORVQ6Cj4rCQl7Cj4rCQkJc3RydWN0IHNvY2thZGRyX2luICpzaW47
Cj4gCj4tCQlzaW4gPSAoc3RydWN0IHNvY2thZGRyX2luICopYWRkcjsKPi0JCXJldHVybiAoc2lu
LT5zaW5fYWRkci5zX2FkZHIgXiAoc2luLT5zaW5fYWRkci5zX2FkZHIgPj4gMTYpKTsKPi0JfSBl
bHNlIGlmIChhZGRyLT5zYV9mYW1pbHkgPT0gQUZfSU5FVDYpIHsKPi0JCXN0cnVjdCBzb2NrYWRk
cl9pbjYgKnNpbjY7Cj4tCQl1aW50MzJfdCBoYXNoX29mX2FkZHI7Cj4rCQkJc2luID0gKHN0cnVj
dCBzb2NrYWRkcl9pbiAqKWFkZHI7Cj4rCQkJcmV0dXJuIChzaW4tPnNpbl9hZGRyLnNfYWRkciBe
IChzaW4tPnNpbl9hZGRyLnNfYWRkciA+PiAxNikpOwo+KwkJfQo+KyNlbmRpZgo+KyNpZmRlZiBJ
TkVUNgo+KwljYXNlIElORVQ2Ogo+KwkJewo+KwkJCXN0cnVjdCBzb2NrYWRkcl9pbjYgKnNpbjY7
Cj4rCQkJdWludDMyX3QgaGFzaF9vZl9hZGRyOwo+IAo+LQkJc2luNiA9IChzdHJ1Y3Qgc29ja2Fk
ZHJfaW42ICopYWRkcjsKPi0JCWhhc2hfb2ZfYWRkciA9IChzaW42LT5zaW42X2FkZHIuczZfYWRk
cjMyWzBdICsKPi0JCSAgICBzaW42LT5zaW42X2FkZHIuczZfYWRkcjMyWzFdICsKPi0JCSAgICBz
aW42LT5zaW42X2FkZHIuczZfYWRkcjMyWzJdICsKPi0JCSAgICBzaW42LT5zaW42X2FkZHIuczZf
YWRkcjMyWzNdKTsKPi0JCWhhc2hfb2ZfYWRkciA9IChoYXNoX29mX2FkZHIgXiAoaGFzaF9vZl9h
ZGRyID4+IDE2KSk7Cj4tCQlyZXR1cm4gKGhhc2hfb2ZfYWRkcik7Cj4rCQkJc2luNiA9IChzdHJ1
Y3Qgc29ja2FkZHJfaW42ICopYWRkcjsKPisJCQloYXNoX29mX2FkZHIgPSAoc2luNi0+c2luNl9h
ZGRyLnM2X2FkZHIzMlswXSArCj4rCQkJICAgIHNpbjYtPnNpbjZfYWRkci5zNl9hZGRyMzJbMV0g
Kwo+KwkJCSAgICBzaW42LT5zaW42X2FkZHIuczZfYWRkcjMyWzJdICsKPisJCQkgICAgc2luNi0+
c2luNl9hZGRyLnM2X2FkZHIzMlszXSk7Cj4rCQkJaGFzaF9vZl9hZGRyID0gKGhhc2hfb2ZfYWRk
ciBeIChoYXNoX29mX2FkZHIgPj4gMTYpKTsKPisJCQlyZXR1cm4gKGhhc2hfb2ZfYWRkcik7Cj4r
CQl9Cj4rI2VuZGlmCj4rCWRlZmF1bHQ6Cj4rCQlicmVhazsKPiAJfQo+IAlyZXR1cm4gKDApOwo+
IH0KPkBAIC02MjUwLDcgKzYyNjksOSBAQCBzY3RwX2Nvbm5lY3R4X2hlbHBlcl9hZGQoc3RydWN0
IHNjdHBfdGNiCj4gCWlucCA9IHN0Y2ItPnNjdHBfZXA7Cj4gCSplcnJvciA9IDA7Cj4gCWZvciAo
aSA9IDA7IGkgPCB0b3RhZGRyOyBpKyspIHsKPi0JCWlmIChzYS0+c2FfZmFtaWx5ID09IEFGX0lO
RVQpIHsKPisJCXN3aXRjaCAoc2EtPnNhX2ZhbWlseSkgewo+KyNpZmRlZiBJTkVUCj4rCQljYXNl
IEFGX0lORVQ6Cj4gCQkJaW5jciA9IHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pOwo+IAkJCWlm
IChzY3RwX2FkZF9yZW1vdGVfYWRkcihzdGNiLCBzYSwgU0NUUF9ET05PVF9TRVRTQ09QRSwgU0NU
UF9BRERSX0lTX0NPTkZJUk1FRCkpIHsKPiAJCQkJLyogYXNzb2MgZ29uZSBubyB1bi1sb2NrICov
Cj5AQCAtNjI2MCw3ICs2MjgxLDEwIEBAIHNjdHBfY29ubmVjdHhfaGVscGVyX2FkZChzdHJ1Y3Qg
c2N0cF90Y2IKPiAJCQkJZ290byBvdXRfbm93Owo+IAkJCX0KPiAJCQlhZGRlZCsrOwo+LQkJfSBl
bHNlIGlmIChzYS0+c2FfZmFtaWx5ID09IEFGX0lORVQ2KSB7Cj4rCQkJYnJlYWs7Cj4rI2VuZGlm
Cj4rI2lmZGVmIElORVQ2Cj4rCQljYXNlIEFGX0lORVQ2Ogo+IAkJCWluY3IgPSBzaXplb2Yoc3Ry
dWN0IHNvY2thZGRyX2luNik7Cj4gCQkJaWYgKHNjdHBfYWRkX3JlbW90ZV9hZGRyKHN0Y2IsIHNh
LCBTQ1RQX0RPTk9UX1NFVFNDT1BFLCBTQ1RQX0FERFJfSVNfQ09ORklSTUVEKSkgewo+IAkJCQkv
KiBhc3NvYyBnb25lIG5vIHVuLWxvY2sgKi8KPkBAIC02MjcwLDYgKzYyOTQsMTAgQEAgc2N0cF9j
b25uZWN0eF9oZWxwZXJfYWRkKHN0cnVjdCBzY3RwX3RjYgo+IAkJCQlnb3RvIG91dF9ub3c7Cj4g
CQkJfQo+IAkJCWFkZGVkKys7Cj4rCQkJYnJlYWs7Cj4rI2VuZGlmCj4rCQlkZWZhdWx0Ogo+KwkJ
CWJyZWFrOwo+IAkJfQo+IAkJc2EgPSAoc3RydWN0IHNvY2thZGRyICopKChjYWRkcl90KXNhICsg
aW5jcik7Cj4gCX0KPkBAIC02Mjg4LDEwICs2MzE2LDEzIEBAIHNjdHBfY29ubmVjdHhfaGVscGVy
X2ZpbmQoc3RydWN0IHNjdHBfaW4KPiAKPiAJYXQgPSBpbmNyID0gMDsKPiAJc2EgPSBhZGRyOwo+
Kwo+IAkqZXJyb3IgPSAqbnVtX3Y2ID0gKm51bV92NCA9IDA7Cj4gCS8qIGFjY291bnQgYW5kIHZh
bGlkYXRlIGFkZHJlc3NlcyAqLwo+IAlmb3IgKGkgPSAwOyBpIDwgKHNpemVfdCkqdG90YWRkcjsg
aSsrKSB7Cj4tCQlpZiAoc2EtPnNhX2ZhbWlseSA9PSBBRl9JTkVUKSB7Cj4rCQlzd2l0Y2ggKHNh
LT5zYV9mYW1pbHkpIHsKPisjaWZkZWYgSU5FVAo+KwkJY2FzZSBBRl9JTkVUOgo+IAkJCSgqbnVt
X3Y0KSArPSAxOwo+IAkJCWluY3IgPSBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKTsKPiAJCQlp
ZiAoc2EtPnNhX2xlbiAhPSBpbmNyKSB7Cj5AQCAtNjMwMCwzMCArNjMzMSw0MCBAQCBzY3RwX2Nv
bm5lY3R4X2hlbHBlcl9maW5kKHN0cnVjdCBzY3RwX2luCj4gCQkJCSpiYWRfYWRkciA9IDE7Cj4g
CQkJCXJldHVybiAoTlVMTCk7Cj4gCQkJfQo+LQkJfSBlbHNlIGlmIChzYS0+c2FfZmFtaWx5ID09
IEFGX0lORVQ2KSB7Cj4tCQkJc3RydWN0IHNvY2thZGRyX2luNiAqc2luNjsKPi0KPi0JCQlzaW42
ID0gKHN0cnVjdCBzb2NrYWRkcl9pbjYgKilzYTsKPi0JCQlpZiAoSU42X0lTX0FERFJfVjRNQVBQ
RUQoJnNpbjYtPnNpbjZfYWRkcikpIHsKPi0JCQkJLyogTXVzdCBiZSBub24tbWFwcGVkIGZvciBj
b25uZWN0eCAqLwo+LQkJCQlTQ1RQX0xUUkFDRV9FUlJfUkVUKGlucCwgTlVMTCwgTlVMTCwgU0NU
UF9GUk9NX1NDVFBVVElMLCBFSU5WQUwpOwo+LQkJCQkqZXJyb3IgPSBFSU5WQUw7Cj4tCQkJCSpi
YWRfYWRkciA9IDE7Cj4tCQkJCXJldHVybiAoTlVMTCk7Cj4tCQkJfQo+LQkJCSgqbnVtX3Y2KSAr
PSAxOwo+LQkJCWluY3IgPSBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luNik7Cj4tCQkJaWYgKHNh
LT5zYV9sZW4gIT0gaW5jcikgewo+LQkJCQlTQ1RQX0xUUkFDRV9FUlJfUkVUKGlucCwgTlVMTCwg
TlVMTCwgU0NUUF9GUk9NX1NDVFBVVElMLCBFSU5WQUwpOwo+LQkJCQkqZXJyb3IgPSBFSU5WQUw7
Cj4tCQkJCSpiYWRfYWRkciA9IDE7Cj4tCQkJCXJldHVybiAoTlVMTCk7Cj4rCQkJYnJlYWs7Cj4r
I2VuZGlmCj4rI2lmZGVmIElORVQ2Cj4rCQljYXNlIEFGX0lORVQ2Ogo+KwkJCXsKPisJCQkJc3Ry
dWN0IHNvY2thZGRyX2luNiAqc2luNjsKPisKPisJCQkJc2luNiA9IChzdHJ1Y3Qgc29ja2FkZHJf
aW42ICopc2E7Cj4rCQkJCWlmIChJTjZfSVNfQUREUl9WNE1BUFBFRCgmc2luNi0+c2luNl9hZGRy
KSkgewo+KwkJCQkJLyogTXVzdCBiZSBub24tbWFwcGVkIGZvciBjb25uZWN0eCAqLwo+KwkJCQkJ
U0NUUF9MVFJBQ0VfRVJSX1JFVChpbnAsIE5VTEwsIE5VTEwsIFNDVFBfRlJPTV9TQ1RQVVRJTCwg
RUlOVkFMKTsKPisJCQkJCSplcnJvciA9IEVJTlZBTDsKPisJCQkJCSpiYWRfYWRkciA9IDE7Cj4r
CQkJCQlyZXR1cm4gKE5VTEwpOwo+KwkJCQl9Cj4rCQkJCSgqbnVtX3Y2KSArPSAxOwo+KwkJCQlp
bmNyID0gc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9pbjYpOwo+KwkJCQlpZiAoc2EtPnNhX2xlbiAh
PSBpbmNyKSB7Cj4rCQkJCQlTQ1RQX0xUUkFDRV9FUlJfUkVUKGlucCwgTlVMTCwgTlVMTCwgU0NU
UF9GUk9NX1NDVFBVVElMLCBFSU5WQUwpOwo+KwkJCQkJKmVycm9yID0gRUlOVkFMOwo+KwkJCQkJ
KmJhZF9hZGRyID0gMTsKPisJCQkJCXJldHVybiAoTlVMTCk7Cj4rCQkJCX0KPisJCQkJYnJlYWs7
Cj4gCQkJfQo+LQkJfSBlbHNlIHsKPisjZW5kaWYKPisJCWRlZmF1bHQ6Cj4gCQkJKnRvdGFkZHIg
PSBpOwo+IAkJCS8qIHdlIGFyZSBkb25lICovCj4gCQkJYnJlYWs7Cj4gCQl9Cj4rCQlpZiAoaSA9
PSAoc2l6ZV90KSp0b3RhZGRyKSB7Cj4rCQkJYnJlYWs7Cj4rCQl9Cj4gCQlTQ1RQX0lOUF9JTkNS
X1JFRihpbnApOwo+IAkJc3RjYiA9IHNjdHBfZmluZGFzc29jaWF0aW9uX2VwX2FkZHIoJmlucCwg
c2EsIE5VTEwsIE5VTEwsIE5VTEwpOwo+IAkJaWYgKHN0Y2IgIT0gTlVMTCkgewo+QEAgLTYzNjQs
NyArNjQwNSw3IEBAIHNjdHBfYmluZHhfYWRkX2FkZHJlc3Moc3RydWN0IHNvY2tldCAqc28KPiAJ
CXJldHVybjsKPiAJfQo+IAlhZGRyX3RvdXNlID0gc2E7Cj4tI2lmIGRlZmluZWQoSU5FVDYpICYm
ICFkZWZpbmVkKF9fVXNlcnNwYWNlX18pCS8qIFRPRE8gcG9ydCBpbjZfc2luNl8yX3NpbiAqLwo+
KyNpZmRlZiBJTkVUNgo+IAlpZiAoc2EtPnNhX2ZhbWlseSA9PSBBRl9JTkVUNikgewo+IAkJc3Ry
dWN0IHNvY2thZGRyX2luNiAqc2luNjsKPiAKPkBAIC02MzkzLDYgKzY0MzQsNyBAQCBzY3RwX2Jp
bmR4X2FkZF9hZGRyZXNzKHN0cnVjdCBzb2NrZXQgKnNvCj4gCQl9Cj4gCX0KPiAjZW5kaWYKPisj
aWZkZWYgSU5FVAo+IAlpZiAoc2EtPnNhX2ZhbWlseSA9PSBBRl9JTkVUKSB7Cj4gCQlpZiAoc2Et
PnNhX2xlbiAhPSBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSkgewo+IAkJCVNDVFBfTFRSQUNF
X0VSUl9SRVQoaW5wLCBOVUxMLCBOVUxMLCBTQ1RQX0ZST01fU0NUUFVUSUwsIEVJTlZBTCk7Cj5A
QCAtNjQwNyw2ICs2NDQ5LDcgQEAgc2N0cF9iaW5keF9hZGRfYWRkcmVzcyhzdHJ1Y3Qgc29ja2V0
ICpzbwo+IAkJCXJldHVybjsKPiAJCX0KPiAJfQo+KyNlbmRpZgo+IAlpZiAoaW5wLT5zY3RwX2Zs
YWdzICYgU0NUUF9QQ0JfRkxBR1NfVU5CT1VORCkgewo+IAkJaWYgKHAgPT0gTlVMTCkgewo+IAkJ
CS8qIENhbid0IGdldCBwcm9jIGZvciBOZXQvT3BlbiBCU0QgKi8KPkBAIC02NTE5LDYgKzY1NjIs
NyBAQCBzY3RwX2JpbmR4X2RlbGV0ZV9hZGRyZXNzKHN0cnVjdCBzb2NrZXQgCj4gCQl9Cj4gCX0K
PiAjZW5kaWYKPisjaWZkZWYgSU5FVAo+IAlpZiAoc2EtPnNhX2ZhbWlseSA9PSBBRl9JTkVUKSB7
Cj4gCQlpZiAoc2EtPnNhX2xlbiAhPSBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSkgewo+IAkJ
CVNDVFBfTFRSQUNFX0VSUl9SRVQoaW5wLCBOVUxMLCBOVUxMLCBTQ1RQX0ZST01fU0NUUFVUSUws
IEVJTlZBTCk7Cj5AQCAtNjUzMyw2ICs2NTc3LDcgQEAgc2N0cF9iaW5keF9kZWxldGVfYWRkcmVz
cyhzdHJ1Y3Qgc29ja2V0IAo+IAkJCXJldHVybjsKPiAJCX0KPiAJfQo+KyNlbmRpZgo+IAkvKgo+
IAkgKiBObyBsb2NrIHJlcXVpcmVkIG1nbXRfZXBfc2EgZG9lcyBpdHMgb3duIGxvY2tpbmcuIElm
IHRoZSBGSVg6Cj4gCSAqIGJlbG93IGlzIGV2ZXIgY2hhbmdlZCB3ZSBtYXkgbmVlZCB0byBsb2Nr
IGJlZm9yZSBjYWxsaW5nCj5AQCAtNjU5OSw2ICs2NjQ0LDcgQEAgc2N0cF9sb2NhbF9hZGRyX2Nv
dW50KHN0cnVjdCBzY3RwX3RjYiAqcwo+IAkJCQlpZiAoc2N0cF9pc19hZGRyX3Jlc3RyaWN0ZWQo
c3RjYiwgc2N0cF9pZmEpKQo+IAkJCQkJY29udGludWU7Cj4gCQkJCXN3aXRjaCAoc2N0cF9pZmEt
PmFkZHJlc3Muc2Euc2FfZmFtaWx5KSB7Cj4rI2lmZGVmIElORVQKPiAJCQkJY2FzZSBBRl9JTkVU
Ogo+IAkJCQkJaWYgKGlwdjRfYWRkcl9sZWdhbCkgewo+IAkJCQkJCXN0cnVjdCBzb2NrYWRkcl9p
biAqc2luOwo+QEAgLTY2MjEsNiArNjY2Nyw3IEBAIHNjdHBfbG9jYWxfYWRkcl9jb3VudChzdHJ1
Y3Qgc2N0cF90Y2IgKnMKPiAJCQkJCQljb250aW51ZTsKPiAJCQkJCX0KPiAJCQkJCWJyZWFrOwo+
KyNlbmRpZgo+ICNpZmRlZiBJTkVUNgo+IAkJCQljYXNlIEFGX0lORVQ2Ogo+IAkJCQkJaWYgKGlw
djZfYWRkcl9sZWdhbCkgewo+QEAgLTY3MTUsNiArNjc2Miw4IEBAIHNjdHBfbG9nX3RyYWNlKHVp
bnQzMl90IHN1YnN5cywgY29uc3QgY2gKPiB9Cj4gCj4gI2VuZGlmCj4rLyogWFhYOiBSZW1vdmUg
dGhlICNpZmRlZiBhZnRlciB0dW5uZWxpbmcgb3ZlciBJUHY2IHdvcmtzIGFsc28gb24gRnJlZUJT
RC4gKi8KPisjaWZkZWYgSU5FVAo+IC8qIFdlIHdpbGwgbmVlZCB0byBhZGQgc3VwcG9ydAo+ICAq
IHRvIGJpbmQgdGhlIHBvcnRzIGFuZCBzdWNoIGhlcmUKPiAgKiBzbyB3ZSBjYW4gZG8gVURQIHR1
bm5lbGluZy4gSW4KPkBAIC02ODE2LDcgKzY4NjUsNyBAQCBvdXQ6Cj4gCW1fZnJlZW0obSk7Cj4g
fQo+IAo+LXZvaWQgCj4rdm9pZAo+IHNjdHBfb3Zlcl91ZHBfc3RvcCh2b2lkKQo+IHsKPiAJc3Ry
dWN0IHNvY2tldCAqc29wOwo+QEAgLTY4MzMsNyArNjg4Miw4IEBAIHNjdHBfb3Zlcl91ZHBfc3Rv
cCh2b2lkKQo+IAlzb2Nsb3NlKHNvcCk7Cj4gCVNDVFBfQkFTRV9JTkZPKHVkcF90dW5fc29ja2V0
KSA9IE5VTEw7Cj4gfQo+LWludCAKPisKPitpbnQKPiBzY3RwX292ZXJfdWRwX3N0YXJ0KHZvaWQp
Cj4gewo+IAl1aW50MTZfdCBwb3J0Owo+QEAgLTY4ODYsMyArNjkzNiw1IEBAIGV4aXRfc3RhZ2Vf
bGVmdDoKPiAJICovCj4gCXJldHVybiAoMCk7Cj4gfQo+Kwo+KyNlbmRpZgo+Cj5Nb2RpZmllZDog
aGVhZC9zeXMvbmV0aW5ldC9zY3RwdXRpbC5oCj49PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPi0tLSBo
ZWFkL3N5cy9uZXRpbmV0L3NjdHB1dGlsLmgJTW9uIE1heSAgMiAxNTowMToyOCAyMDExCShyMjIx
MzI3KQo+KysrIGhlYWQvc3lzL25ldGluZXQvc2N0cHV0aWwuaAlNb24gTWF5ICAyIDE1OjUzOjAw
IDIwMTEJKHIyMjEzMjgpCj5AQCAtMzEzLDEwICszMTMsMTQgQEAgZG8geyBcCj4gCX0gXAo+IH0g
d2hpbGUgKDApCj4gCj4tLyogbmV3IGZ1bmN0aW9ucyB0byBzdGFydC9zdG9wIHVkcCB0dW5uZWxp
bmcgKi8KPisvKiBmdW5jdGlvbnMgdG8gc3RhcnQvc3RvcCB1ZHAgdHVubmVsaW5nICovCj4rLyog
WFhYOiBSZW1vdmUgdGhlICNpZmRlZiBhZnRlciB0dW5uZWxpbmcgb3ZlciBJUHY2IHdvcmtzIGFs
c28gb24gRnJlZUJTRC4gKi8KPisjaWZkZWYgSU5FVAo+IHZvaWQgc2N0cF9vdmVyX3VkcF9zdG9w
KHZvaWQpOwo+IGludCBzY3RwX292ZXJfdWRwX3N0YXJ0KHZvaWQpOwo+IAo+KyNlbmRpZgo+Kwo+
IGludAo+IHNjdHBfc29yZWNlaXZlKHN0cnVjdCBzb2NrZXQgKnNvLCBzdHJ1Y3Qgc29ja2FkZHIg
Kipwc2EsCj4gICAgIHN0cnVjdCB1aW8gKnVpbywKPgo+Cj5BdXRob3I6IGJzY2htaWR0Cj5EYXRl
OiBNb24gTWF5ICAyIDE2OjUxOjAyIDIwMTEKPk5ldyBSZXZpc2lvbjogMjIxMzI5Cj5VUkw6IGh0
dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jhc2UvMjIxMzI5Cj4KPkxvZzoKPiAgQWxs
IFBDSSBiYXNlZCB3aXJlbGVzcyBkcml2ZXJzIHNlZW0gdG8gYmUgZXhwbGljaXRseSByZW1vdmVk
IGZyb20gdGhlCj4gIFBBRSBrZXJuZWwgY29uZmlnLCBkbyB0aGF0IGFsc28gZm9yIHRob3NlIGFk
ZGVkIHRvIEdFTkVSSUMgbGF0ZWx5Lgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvaTM4Ni9jb25m
L1BBRQo+Cj5Nb2RpZmllZDogaGVhZC9zeXMvaTM4Ni9jb25mL1BBRQo+PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Cj4tLS0gaGVhZC9zeXMvaTM4Ni9jb25mL1BBRQlNb24gTWF5ICAyIDE1OjUzOjAwIDIw
MTEJKHIyMjEzMjgpCj4rKysgaGVhZC9zeXMvaTM4Ni9jb25mL1BBRQlNb24gTWF5ICAyIDE2OjUx
OjAyIDIwMTEJKHIyMjEzMjkpCj5AQCAtNzcsNSArNzcsMTEgQEAgbm9kZXZpY2UJYXRoCQkjIEF0
aGVyb3MgcGNpL2NhcmRidXMgTklDJwo+IG5vZGV2aWNlCWF0aF9wY2kKPiBub2RldmljZQlhdGhf
aGFsCj4gbm9kZXZpY2UJYXRoX3JhdGVfc2FtcGxlCSMgU2FtcGxlUmF0ZSB0eCByYXRlIGNvbnRy
b2wgZm9yIGF0aAo+K25vZGV2aWNlCWlwdwo+K25vZGV2aWNlCWl3aQo+K25vZGV2aWNlCWl3bgo+
K25vZGV2aWNlCW1hbG8KPitub2RldmljZQltd2wKPiBub2RldmljZQlyYWwKPiBub2RldmljZQl3
aQo+K25vZGV2aWNlCXdwaQo+Cj4KPk9uIE1vbmRheSAwMiBNYXkgMjAxMSAxNDozOTo1NyBKb2hu
IEJhbGR3aW4gd3JvdGU6Cj4+IE9uIFN1bmRheSwgTWF5IDAxLCAyMDExIDM6MDU6NTQgcG0gQmVy
bmhhcmQgU2NobWlkdCB3cm90ZToKPj4gPiBBdXRob3I6IGJzY2htaWR0Cj4+ID4gRGF0ZTogU3Vu
IE1heSAgMSAxOTowNTo1NCAyMDExCj4+ID4gTmV3IFJldmlzaW9uOiAyMjEzMDEKPj4gPiBVUkw6
IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jhc2UvMjIxMzAxCj4+ID4gCj4+ID4g
TG9nOgo+PiA+ICAgVGhlc2UgYXJlIG9mIGNvdXJzZSBpMzg2L2FtZDY0IG9ubHkuCj4+ID4gCj4+
ID4gTW9kaWZpZWQ6Cj4+ID4gICBoZWFkL3N5cy9jb25mL05PVEVTCj4+IAo+PiBQbGVhc2UgcHV0
IHRoZW0gaW4gaTM4Ni9jb25mL05PVEVTIGFuZCBhbWQ2NC9jb25mL05PVEVTLiAgQWxsIGRyaXZl
cnMgc2hvdWxkIAo+PiBiZSBpbiBhcHByb3ByaWF0ZSBOT1RFUyBmaWxlcy4KPgo+VGhleSBhY3R1
YWxseSBhcmUuIE15IGZhdWx0IHdhcyB0byBub3QgY2hlY2sgdGhvc2UgMiBmaWxlcyBpbiB0aGUK
PmZpcnN0IHBsYWNlLgo+Cj5Tb3JyeSB0aGUgbm9pc2UgdGhpcyBoYXMgY2F1c2VkLgo+Cj4tLSAK
PkJlcm5oYXJkCj4KPgo+QXV0aG9yOiBqa2ltCj5EYXRlOiBNb24gTWF5ICAyIDE3OjA4OjM2IDIw
MTEKPk5ldyBSZXZpc2lvbjogMjIxMzMxCj5VUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hh
bmdlc2V0L2Jhc2UvMjIxMzMxCj4KPkxvZzoKPiAgRml4IGJ1aWxkIHdpdGggY2xhbmcuICBQbGVh
c2Ugbm90ZSB0aGVyZSBpcyBhbiBMTFZNL0NsYW5nIFBSOgo+ICAKPiAgaHR0cDovL2xsdm0ub3Jn
L2J1Z3Mvc2hvd19idWcuY2dpP2lkPTkzNzkKPiAgCj4gIFJlcG9ydGVkIGJ5OglycGF1bG8sIGRp
bQo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMveDg2L3g4Ni90c2MuYwo+Cj5Nb2RpZmllZDogaGVh
ZC9zeXMveDg2L3g4Ni90c2MuYwo+PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMv
eDg2L3g4Ni90c2MuYwlNb24gTWF5ICAyIDE3OjA0OjA5IDIwMTEJKHIyMjEzMzApCj4rKysgaGVh
ZC9zeXMveDg2L3g4Ni90c2MuYwlNb24gTWF5ICAyIDE3OjA4OjM2IDIwMTEJKHIyMjEzMzEpCj5A
QCAtMTAwLDcgKzEwMCw3IEBAIHN0YXRpYyBfX2lubGluZSB2b2lkCj4gdm13YXJlX2h2Y2FsbCh1
X2ludCBjbWQsIHVfaW50ICpwKQo+IHsKPiAKPi0JX19hc20gX192b2xhdGlsZSgiaW5sICglJWR4
KSIKPisJX19hc20gX192b2xhdGlsZSgiaW5sICV3MywgJTAiCj4gCTogIj1hIiAocFswXSksICI9
YiIgKHBbMV0pLCAiPWMiIChwWzJdKSwgIj1kIiAocFszXSkKPiAJOiAiMCIgKFZNV19IVk1BR0lD
KSwgIjEiIChVSU5UX01BWCksICIyIiAoY21kKSwgIjMiIChWTVdfSFZQT1JUKQo+IAk6ICJtZW1v
cnkiKTsKPgo+Cj5PbiBNb25kYXkgMDIgTWF5IDIwMTEgMDc6MDggYW0sIERpbWl0cnkgQW5kcmlj
IHdyb3RlOgo+PiBPbiAyMDExLTA0LTI5IDIwOjIwLCBKdW5nLXVrIEtpbSB3cm90ZToKPj4gLi4u
Cj4+Cj4+ID4gK3N0YXRpYyBfX2lubGluZSB2b2lkCj4+ID4gK3Ztd2FyZV9odmNhbGwodV9pbnQg
Y21kLCB1X2ludCAqcCkKPj4gPiArewo+PiA+ICsKPj4gPiArCV9fYXNtIF9fdm9sYXRpbGUoImlu
bCAoJSVkeCkiCj4+ID4gKwk6ICI9YSIgKHBbMF0pLCAiPWIiIChwWzFdKSwgIj1jIiAocFsyXSks
ICI9ZCIgKHBbM10pCj4+ID4gKwk6ICIwIiAoVk1XX0hWTUFHSUMpLCAiMSIgKFVJTlRfTUFYKSwg
IjIiIChjbWQpLCAiMyIKPj4gPiAoVk1XX0hWUE9SVCkgKwk6ICJtZW1vcnkiKTsKPj4gPiArfQo+
Pgo+PiBUaGlzIHVwc2V0cyBjbGFuZydzIGludGVncmF0ZWQgYXNzZW1ibGVyLCBhbmQgSSB0aGlu
ayBpdCdzIHJpZ2h0IGluCj4+IHRoaXMgY2FzZToKPj4KPj4gc3lzL3g4Ni94ODYvdHNjLmM6MTAz
OjE5OiBlcnJvcjogaW52YWxpZCBvcGVyYW5kIGZvciBpbnN0cnVjdGlvbgo+PiAgICAgICAgICBf
X2FzbSBfX3ZvbGF0aWxlKCJpbmwgKCUlZHgpIgo+PiAgICAgICAgICAgICAgICAgICAgICAgICAg
IF4KPj4gPGlubGluZSBhc20+OjE6Njogbm90ZTogaW5zdGFudGlhdGVkIGludG8gYXNzZW1ibHkg
aGVyZQo+PiAgICAgICAgICBpbmwgKCVkeCkKPj4gICAgICAgICAgICAgIF4KPj4KPj4gQ2FuIHdl
IHBsZWFzZSBhZGQgYW4gZXhwbGljaXQgJSVlYXggYXMgc2Vjb25kIGFyZ3VtZW50IGhlcmU/ICBF
LmcuOgo+Pgo+PiBkaWZmIC0tZ2l0IGEvc3lzL3g4Ni94ODYvdHNjLmMgYi9zeXMveDg2L3g4Ni90
c2MuYwo+PiBpbmRleCAwYjc1MTBjLi45NjM4MTY3IDEwMDY0NAo+PiAtLS0gYS9zeXMveDg2L3g4
Ni90c2MuYwo+PiArKysgYi9zeXMveDg2L3g4Ni90c2MuYwo+PiBAQCAtMTAwLDcgKzEwMCw3IEBA
IHN0YXRpYyBfX2lubGluZSB2b2lkCj4+ICAgdm13YXJlX2h2Y2FsbCh1X2ludCBjbWQsIHVfaW50
ICpwKQo+PiAgIHsKPj4KPj4gLQlfX2FzbSBfX3ZvbGF0aWxlKCJpbmwgKCUlZHgpIgo+PiArCV9f
YXNtIF9fdm9sYXRpbGUoImlubCAoJSVkeCksICUlZWF4Igo+Pgo+PiAgIAk6ICI9YSIgKHBbMF0p
LCAiPWIiIChwWzFdKSwgIj1jIiAocFsyXSksICI9ZCIgKHBbM10pCj4+ICAgCTogIjAiIChWTVdf
SFZNQUdJQyksICIxIiAoVUlOVF9NQVgpLCAiMiIgKGNtZCksICIzIiAoVk1XX0hWUE9SVCkKPj4g
ICAJOiAibWVtb3J5Iik7Cj4KPkZpeGVkIGluIHIyMjEzMzEuCj4KPlNvcnJ5IGZvciB0aGUgYnJl
YWthZ2UuCj4KPkp1bmctdWsgS2ltCj4KPgo+T24gTW9uZGF5LCBNYXkgMDIsIDIwMTEgMTI6NTM6
MjIgcG0gQmVybmhhcmQgU2NobWlkdCB3cm90ZToKPj4gT24gTW9uZGF5IDAyIE1heSAyMDExIDE0
OjM5OjU3IEpvaG4gQmFsZHdpbiB3cm90ZToKPj4gPiBPbiBTdW5kYXksIE1heSAwMSwgMjAxMSAz
OjA1OjU0IHBtIEJlcm5oYXJkIFNjaG1pZHQgd3JvdGU6Cj4+ID4gPiBBdXRob3I6IGJzY2htaWR0
Cj4+ID4gPiBEYXRlOiBTdW4gTWF5ICAxIDE5OjA1OjU0IDIwMTEKPj4gPiA+IE5ldyBSZXZpc2lv
bjogMjIxMzAxCj4+ID4gPiBVUkw6IGh0dHA6Ly9zdm4uZnJlZWJzZC5vcmcvY2hhbmdlc2V0L2Jh
c2UvMjIxMzAxCj4+ID4gPiAKPj4gPiA+IExvZzoKPj4gPiA+ICAgVGhlc2UgYXJlIG9mIGNvdXJz
ZSBpMzg2L2FtZDY0IG9ubHkuCj4+ID4gPiAKPj4gPiA+IE1vZGlmaWVkOgo+PiA+ID4gICBoZWFk
L3N5cy9jb25mL05PVEVTCj4+ID4gCj4+ID4gUGxlYXNlIHB1dCB0aGVtIGluIGkzODYvY29uZi9O
T1RFUyBhbmQgYW1kNjQvY29uZi9OT1RFUy4gIEFsbCBkcml2ZXJzIHNob3VsZCAKPj4gPiBiZSBp
biBhcHByb3ByaWF0ZSBOT1RFUyBmaWxlcy4KPj4gCj4+IFRoZXkgYWN0dWFsbHkgYXJlLiBNeSBm
YXVsdCB3YXMgdG8gbm90IGNoZWNrIHRob3NlIDIgZmlsZXMgaW4gdGhlCj4+IGZpcnN0IHBsYWNl
Lgo+PiAKPj4gU29ycnkgdGhlIG5vaXNlIHRoaXMgaGFzIGNhdXNlZC4KPgo+QWgsIHdob29wcy4g
OikKPgo+VGhlcmUgYXJlIG1hbnkgZHJpdmVycyBtaXNzaW5nIGZyb20gdGhlIE5PVEVTIGZpbGVz
LCBzbyBJIGp1c3QgYXNzdW1lZCB0aGV5Cj5oYWQgYmVlbiBtaXNzaW5nLiA6LVAKPgo+SSB3cm90
ZSBhIHB5dGhvbiBzY3JpcHQgdG8gbG9vayBmb3IgbWlzc2luZyBkcml2ZXJzIGFuZCBvcHRpb25z
LCBpdCdzIGF0Cj5zcmMvdG9vbHMvdG9vbHMvbm90ZXNjaGVjay9ub3Rlc2NoZWNrLnB5LiAgSSBo
YXZlbid0IGhhZCB0aW1lIHRvIHNpdCBkb3duCj5hbmQgZml4IGFsbCB0aGUgbWlzc2luZyBlbnRy
aWVzIHRob3VnaC4KPgo+LS0gCj5Kb2huIEJhbGR3aW4KPgo+Cj5BdXRob3I6IGRpbQo+RGF0ZTog
TW9uIE1heSAgMiAxNzo0Njo1OSAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMzMwo+VVJMOiBodHRw
Oi8vc3ZuLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMzMwo+Cj5Mb2c6Cj4gIFJlbW92
ZSB1c3IvaW5jbHVkZS9uZnMva3JwYy5oIGFuZCB1c3IvaW5jbHVkZS9uZnMvbmZzZGlza2xlc3Mu
aCBmcm9tCj4gIE9ic29sZXRlRmlsZXMuaW5jLCBzaW5jZSB0aGVzZSBmaWxlcyBoYXZlIGJlZW4g
cmVpbmNhcm5hdGVkIGluIHRoZSBuZXcKPiAgTkZTIGltcGxlbWVudGF0aW9uLgo+ICAKPiAgUmV2
aWV3ZWQgYnk6CXJtYWNrbGVtCj4KPk1vZGlmaWVkOgo+ICBoZWFkL09ic29sZXRlRmlsZXMuaW5j
Cj4KPk1vZGlmaWVkOiBoZWFkL09ic29sZXRlRmlsZXMuaW5jCj49PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KPi0tLSBoZWFkL09ic29sZXRlRmlsZXMuaW5jCU1vbiBNYXkgIDIgMTc6MTM6NDAgMjAxMQko
cjIyMTMzMikKPisrKyBoZWFkL09ic29sZXRlRmlsZXMuaW5jCU1vbiBNYXkgIDIgMTc6NDY6NTkg
MjAxMQkocjIyMTMzMykKPkBAIC00ODc0LDkgKzQ4NzQsNyBAQCBPTERfRklMRVMrPXVzci9pbmNs
dWRlL25ldG5zL3NwaWRwLmgKPiBPTERfRklMRVMrPXVzci9pbmNsdWRlL25ldG5zL3NwcF9kZWJ1
Zy5oCj4gT0xEX0ZJTEVTKz11c3IvaW5jbHVkZS9uZXRucy9zcHBfdGltZXIuaAo+IE9MRF9GSUxF
Uys9dXNyL2luY2x1ZGUvbmV0bnMvc3BwX3Zhci5oCj4tT0xEX0ZJTEVTKz11c3IvaW5jbHVkZS9u
ZnMva3JwYy5oCj4gT0xEX0ZJTEVTKz11c3IvaW5jbHVkZS9uZnMvbmZzLmgKPi1PTERfRklMRVMr
PXVzci9pbmNsdWRlL25mcy9uZnNkaXNrbGVzcy5oCj4gT0xEX0ZJTEVTKz11c3IvaW5jbHVkZS9u
ZnMvbmZzbV9zdWJzLmgKPiBPTERfRklMRVMrPXVzci9pbmNsdWRlL25mcy9uZnNtb3VudC5oCj4g
T0xEX0ZJTEVTKz11c3IvaW5jbHVkZS9uZnMvbmZzbm9kZS5oCj4KPgo+QXV0aG9yOiBtYXJjZWwK
PkRhdGU6IE1vbiBNYXkgIDIgMTc6NDk6MDUgMjAxMQo+TmV3IFJldmlzaW9uOiAyMjEzMzQKPlVS
TDogaHR0cDovL3N2bi5mcmVlYnNkLm9yZy9jaGFuZ2VzZXQvYmFzZS8yMjEzMzQKPgo+TG9nOgo+
ICBEb24ndCB1c2UgdGhlIHdob2xlIHJlZ2lvbiA1IGZvciBLVkEsIGJlY2F1c2UgdGhlIENQVSBt
YXkgbm90IGltcGxlbWVudCBhbGwKPiAgb2YgdGhlIDYxIGJpdHMgYXZhaWxhYmxlIHdpdGhpbiB0
aGUgcmVnaW9uIGZvciB2aXJ0dWFsIGFkZHJlc3NpbmcuICBTaW5jZQo+ICB0aGVyZSdzIG5vIGdv
b2Qgd2F5IGZvciB1cyB0byBtYXAgb3V0IHRoZSBnYXAgaW4gdGhlIHZpcnR1YWwgYWRkcmVzcyBz
cGFjZSwKPiAgbGltaXQgS1ZBIHRvIHRoZSBhcmNoaXRlY3R1cmFsIG1pbmltdW0gaW1wbGVtZW50
ZWQgYWRkcmVzcyBiaXRzLiBUaGlzIHN0aWxsCj4gIGdpdmVzIHVzIDEgcGV0YWJ5dGUgb2YgS1ZB
LCBzbyBubyB3b3JyaWVzLgo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvaWE2NC9pbmNsdWRlL3Zt
cGFyYW0uaAo+Cj5Nb2RpZmllZDogaGVhZC9zeXMvaWE2NC9pbmNsdWRlL3ZtcGFyYW0uaAo+PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Cj4tLS0gaGVhZC9zeXMvaWE2NC9pbmNsdWRlL3ZtcGFyYW0uaAlN
b24gTWF5ICAyIDE3OjQ2OjU5IDIwMTEJKHIyMjEzMzMpCj4rKysgaGVhZC9zeXMvaWE2NC9pbmNs
dWRlL3ZtcGFyYW0uaAlNb24gTWF5ICAyIDE3OjQ5OjA1IDIwMTEJKHIyMjEzMzQpCj5AQCAtMTgy
LDcgKzE4Miw4IEBACj4gI2RlZmluZQlWTV9NSU5fQUREUkVTUwkJMAo+ICNkZWZpbmUJVk1fTUFY
VVNFUl9BRERSRVNTCUlBNjRfUlJfQkFTRShJQTY0X1ZNX01JTktFUk5fUkVHSU9OKQo+ICNkZWZp
bmUJVk1fTUlOX0tFUk5FTF9BRERSRVNTCUlBNjRfUlJfQkFTRShJQTY0X1ZNX01JTktFUk5fUkVH
SU9OICsgMSkKPi0jZGVmaW5lCVZNX01BWF9LRVJORUxfQUREUkVTUwkoSUE2NF9SUl9CQVNFKElB
NjRfVk1fTUlOS0VSTl9SRUdJT04gKyAyKSAtIDEpCj4rI2RlZmluZQlWTV9NQVhfS0VSTkVMX0FE
RFJFU1MJXAo+KwkJKFZNX01JTl9LRVJORUxfQUREUkVTUyArIElBNjRfUkVHSU9OX0dBUF9TVEFS
VCAtIDEpCj4gI2RlZmluZQlWTV9NQVhfQUREUkVTUwkJfjBVTAo+IAo+ICNkZWZpbmUJS0VSTkJB
U0UJCVZNX01BWFVTRVJfQUREUkVTUwo+Cj4KPkF1dGhvcjogZGVscGhpago+RGF0ZTogTW9uIE1h
eSAgMiAxODo0MTo1NCAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMzNQo+VVJMOiBodHRwOi8vc3Zu
LmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzIyMTMzNQo+Cj5Mb2c6Cj4gIENvcnJlY3QgYSB0
eXBvLiAgQWNjb3JkaW5nIHRvIEludGVsIGRvY3VtZW50IDMxODkxNCwgdGhlIFRqKG1heCkgZm9y
IENvcmUgMgo+ICBEdW8gTW9iaWxlIENQVXMgc2hvdWxkIGJlIDEwNS4KPiAgCj4gIE5vdGljZWQg
Ynk6CU1hcmsgSm9obnN0b24gPG1hcmtqZGIgZ21haWwuY29tPgo+ICBNRkMgYWZ0ZXI6CTMgZGF5
cwo+Cj5Nb2RpZmllZDoKPiAgaGVhZC9zeXMvZGV2L2NvcmV0ZW1wL2NvcmV0ZW1wLmMKPgo+TW9k
aWZpZWQ6IGhlYWQvc3lzL2Rldi9jb3JldGVtcC9jb3JldGVtcC5jCj49PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KPi0tLSBoZWFkL3N5cy9kZXYvY29yZXRlbXAvY29yZXRlbXAuYwlNb24gTWF5ICAyIDE3
OjQ5OjA1IDIwMTEJKHIyMjEzMzQpCj4rKysgaGVhZC9zeXMvZGV2L2NvcmV0ZW1wL2NvcmV0ZW1w
LmMJTW9uIE1heSAgMiAxODo0MTo1NCAyMDExCShyMjIxMzM1KQo+QEAgLTE5Miw3ICsxOTIsNyBA
QCBjb3JldGVtcF9hdHRhY2goZGV2aWNlX3QgZGV2KQo+IAl9IGVsc2UgaWYgKGNwdV9tb2RlbCA9
PSAweDE3KSB7Cj4gCQlzd2l0Y2ggKGNwdV9zdGVwcGluZykgewo+IAkJY2FzZSAweDY6CS8qIE1v
YmlsZSBDb3JlIDIgRHVvICovCj4tCQkJc2MtPnNjX3RqbWF4ID0gMTA0Owo+KwkJCXNjLT5zY190
am1heCA9IDEwNTsKPiAJCQlicmVhazsKPiAJCWRlZmF1bHQ6CS8qIFVua25vd24gc3RlcHBpbmcg
Ki8KPiAJCQlicmVhazsKPgo+Cj5BdXRob3I6IGpoYgo+RGF0ZTogTW9uIE1heSAgMiAxOTowMjoz
MCAyMDExCj5OZXcgUmV2aXNpb246IDIyMTMzNgo+VVJMOiBodHRwOi8vc3ZuLmZyZWVic2Qub3Jn
L2NoYW5nZXNldC9iYXNlLzIyMTMzNgo+Cj5Mb2c6Cj4gIFRoZSBBQ1BJIEhvc3QtUENJIGJyaWRn
ZSBkcml2ZXIgYWN0dWFsbHkgc3VwcG9ydHMgbXVsdGlwbGUgZG9tYWlucyB2aWEKPiAgdGhlIG9w
dGlvbmFsIF9TRUcgZnVuY3Rpb24uICBSZXR1cm4gdGhhdCB2YWx1ZSAoYXAtPnNlZ21lbnQpIHJh
dGhlciB0aGFuCj4gIDAgZm9yIHRoZSBwY2liIGRvbWFpbiBpdmFyLgo+Cj5Nb2RpZmllZDoKPiAg
aGVhZC9zeXMvZGV2L2FjcGljYS9hY3BpX3BjaWJfYWNwaS5jCj4KPk1vZGlmaWVkOiBoZWFkL3N5
cy9kZXYvYWNwaWNhL2FjcGlfcGNpYl9hY3BpLmMKPj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo+LS0t
IGhlYWQvc3lzL2Rldi9hY3BpY2EvYWNwaV9wY2liX2FjcGkuYwlNb24gTWF5ICAyIDE4OjQxOjU0
IDIwMTEJKHIyMjEzMzUpCj4rKysgaGVhZC9zeXMvZGV2L2FjcGljYS9hY3BpX3BjaWJfYWNwaS5j
CU1vbiBNYXkgIDIgMTk6MDI6MzAgMjAxMQkocjIyMTMzNikKPkBAIC0yNjgsNyArMjY4LDcgQEAg
YWNwaV9wY2liX3JlYWRfaXZhcihkZXZpY2VfdCBkZXYsIGRldmljZQo+IAo+ICAgICBzd2l0Y2gg
KHdoaWNoKSB7Cj4gICAgIGNhc2UgUENJQl9JVkFSX0RPTUFJTjoKPi0JKnJlc3VsdCA9IDA7Cj4r
CSpyZXN1bHQgPSBzYy0+YXBfc2VnbWVudDsKPiAJcmV0dXJuICgwKTsKPiAgICAgY2FzZSBQQ0lC
X0lWQVJfQlVTOgo+IAkqcmVzdWx0ID0gc2MtPmFwX2J1czsKPgo+Cj5fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+c3ZuLXNyYy1oZWFkQGZyZWVic2Qub3Jn
IG1haWxpbmcgbGlzdAo+aHR0cDovL2xpc3RzLmZyZWVic2Qub3JnL21haWxtYW4vbGlzdGluZm8v
c3ZuLXNyYy1oZWFkCj5UbyB1bnN1YnNjcmliZSwgc2VuZCBhbnkgbWFpbCB0byAic3ZuLXNyYy1o
ZWFkLXVuc3Vic2NyaWJlQGZyZWVic2Qub3JnIg==




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5alg8t0yj1ngqaan4tsr1xyj.1304370005205>