Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 5 May 2018 22:31:24 +0200
From:      "O. Hartmann" <o.hartmann@walstatt.org>
To:        Matthew Macy <mmacy@freebsd.org>
Cc:        bde@freebsd.org, svn-src-head@freebsd.org, Stephen Hurd <shurd@freebsd.org>, "O. Hartmann" <ohartmann@walstatt.org>
Subject:   Re: svn commit: r333175 - in head/sys: kern net netinet netinet6 sys: TRAP 12
Message-ID:  <20180505223151.580b6522@thor.intern.walstatt.dynvpn.de>
In-Reply-To: <CAPrugNp5zXeG50aUN5gEHp-Z5Db7y%2BiSRNGO-r%2BW5xzjhsqp7Q@mail.gmail.com>
References:  <201805021936.w42JaTlq039053@repo.freebsd.org> <20180503213206.7fba052c@thor.intern.walstatt.dynvpn.de> <CAHM0Q_OeFG5bKiUMqi5G3roGNnjUHJ_W2KmQeCCkSnW8zCW_RQ@mail.gmail.com> <20180503222419.4228e8e8@thor.intern.walstatt.dynvpn.de> <20180505110138.6cae0f75@thor.intern.walstatt.dynvpn.de> <CAPrugNp5zXeG50aUN5gEHp-Z5Db7y%2BiSRNGO-r%2BW5xzjhsqp7Q@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KSGFzaDogU0hBNTEyDQoNCkFtIFNh
dCwgNSBNYXkgMjAxOCAxMToyMTo0NyAtMDcwMA0KTWF0dGhldyBNYWN5IDxtbWFjeUBmcmVlYnNk
Lm9yZz4gc2NocmllYjoNCg0KPiBwaG9AIGFuZCBzYnJ1bm9AIHRlc3RlZCB0aGUgcGF0Y2ggYmVm
b3JlIGNvbW1pdCwgSSBjYW4ndCByZWFkaWx5DQo+IHJlcHJvZHVjZSBldmVuIHRob3VnaCB0aGUg
ZGV0YWNoIHBhdGggc2hvdWxkIGJlIGNvbW1vbiBlbm91Z2guIFBsZWFzZQ0KPiB0ZWxsIG1lIGlm
IHRoaXMgaGVscHM6DQo+IA0KPiBodHRwczovL3Blb3BsZS5mcmVlYnNkLm9yZy9+bW1hY3kvaW5w
Y2IuZGlmZg0KPiANCj4gDQo+IFRoYW5rcy4NCj4gDQoNCg0KVGhlIHByaXZpZGVkIHBhdGNoIHNl
ZW1pbmdseSB3b3JrIHNvIGZhciAoRnJlZUJTRCAxMi4wLUNVUlJFTlQgIzQgcjMzMzI3NE06IFNh
dCBNYXkgIDUNCjIyOjE5OjA0IENFU1QgMjAxOCBhbWQ2NCkuIEkganVzdCByZWNvbXBpbGUgd29y
bGQgYW5kIGtlcm5lbCBvZiByZXZpc2lvbiAzMzMyNzYgYW5kIHRyeQ0KdG8gcHVzaCB0aGUgYm94
IHdpdGggbmUgdHJhZmZpYyAoTkZTIG1vc3RseSkuDQoNCk1heSBJIGFzayBvbiB3aGF0IGhhcmR3
YXJlIHRoZSBtZW50aW9uZWQgdGVzdHMgb2YgeW91cnMgaGFzIGJlZW4gcGVyZm9ybWVkPyBJIGNh
biB0ZWxsLA0KdGhhdCBBTEwoISkgYm94ZXMgZXF1aXB0ZWQgd2l0aCBJbnRlbCdzIGkzNTAgTklD
cyBhcmUgc3VmZmVyaW5nIHRoZSB2ZXJ5IHNhbWUgcHJvYmxlbS4gSQ0KZGlkbid0IGRhcmUgdG8g
bW92ZSBvbiBvbiB0aGUgb3RoZXIgc3lzdGVtcyB3aXRoIGkyMTAsIGkyMTcgb3IgaTIxOSwgYnV0
IHdpdGggdGhlIHBhdGNoDQpwcm92aWRlZCB3b3JraW5nIHNvIGZhciwgSSdsbCB0ZXN0Lg0KDQpU
aGFua3MuDQoNCj4gDQo+IE9uIFNhdCwgTWF5IDUsIDIwMTggYXQgMjowMSBBTSwgTy4gSGFydG1h
bm4gPG8uaGFydG1hbm5Ad2Fsc3RhdHQub3JnPiB3cm90ZToNCj4gPiAtLS0tLUJFR0lOIFBHUCBT
SUdORUQgTUVTU0FHRS0tLS0tDQo+ID4gSGFzaDogU0hBNTEyDQo+ID4NCj4gPiBBbSBUaHUsIDMg
TWF5IDIwMTggMjI6MjM6NTIgKzAyMDANCj4gPiAiTy4gSGFydG1hbm4iIDxvaGFydG1hbm5Ad2Fs
c3RhdHQub3JnPiBzY2hyaWViOg0KPiA+DQo+ID4NCj4gPiBJJ20gbm90IGZhbWlsaWFyIHdpdGgg
a2VybmVsIGRlYnVnZ2luZywgc28gdGhlcmUgYXJlIHNvbWUgc3RydWdnbGVzLg0KPiA+DQo+ID4g
QWZ0ZXIgY29tcGlsaW5nIGEgZGVidWdnaW5nIGtlcm5lbCBvbg0KPiA+DQo+ID4gVmVyc2lvbiBT
dHJpbmc6IEZyZWVCU0QgMTIuMC1DVVJSRU5UICMyIHIzMzMyNjk6IFNhdCBNYXkgIDUgMDg6MTA6
MzIgQ0VTVCAyMDE4DQo+ID4NCj4gPiBQYW5pYyBTdHJpbmc6IExvY2sgdGNwIG5vdCBleGNsdXNp
dmVseSBsb2NrZWQgQCAvdXNyL3NyYy9zeXMvbmV0aW5ldC9pbl9wY2IuYzoxMzkxDQo+ID4NCj4g
Pg0KPiA+IEFuZCB0aGlzIGlzIHdoYXQgSSBjYW4gcHJvdmlkZSB5b3Ugd2l0aDoNCj4gPg0KPiA+
DQo+ID4gUmVhZGluZyBzeW1ib2xzDQo+ID4gZnJvbSAvdXNyL29iai91c3Ivc3JjL2FtZDY0LmFt
ZDY0L3N5cy9XQUxIQUxMLURFQlVHL2tlcm5lbC5mdWxsLi4uZG9uZS4NCj4gPg0KPiA+IFVucmVh
ZCBwb3J0aW9uIG9mIHRoZSBrZXJuZWwgbWVzc2FnZSBidWZmZXI6DQo+ID4gcGFuaWM6IExvY2sg
dGNwIG5vdCBleGNsdXNpdmVseSBsb2NrZWQgQCAvdXNyL3NyYy9zeXMvbmV0aW5ldC9pbl9wY2Iu
YzoxMzkxDQo+ID4NCj4gPiBjcHVpZCA9IDQNCj4gPiB0aW1lID0gMTUyNTUxMDI5MQ0KPiA+IEtE
Qjogc3RhY2sgYmFja3RyYWNlOg0KPiA+IGRiX3RyYWNlX3NlbGZfd3JhcHBlcigpIGF0IGRiX3Ry
YWNlX3NlbGZfd3JhcHBlcisweDJiL2ZyYW1lIDB4ZmZmZmZlMDBlNDg1ZTY3MA0KPiA+IHZwYW5p
YygpIGF0IHZwYW5pYysweDFhMy9mcmFtZSAweGZmZmZmZTAwZTQ4NWU2ZDANCj4gPiBwYW5pYygp
IGF0IHBhbmljKzB4NDMvZnJhbWUgMHhmZmZmZmUwMGU0ODVlNzMwDQo+ID4gX3J3X3d1bmxvY2tf
Y29va2llKCkgYXQgX3J3X3d1bmxvY2tfY29va2llKzB4MTM3L2ZyYW1lIDB4ZmZmZmZlMDBlNDg1
ZTc2MA0KPiA+IGluX3BjYmZyZWUoKSBhdCBpbl9wY2JmcmVlKzB4NTFhL2ZyYW1lIDB4ZmZmZmZl
MDBlNDg1ZTdiMA0KPiA+IHRjcF91c3JfZGV0YWNoKCkgYXQgdGNwX3Vzcl9kZXRhY2grMHgxNWUv
ZnJhbWUgMHhmZmZmZmUwMGU0ODVlN2YwDQo+ID4gc29mcmVlKCkgYXQgc29mcmVlKzB4MmY0L2Zy
YW1lIDB4ZmZmZmZlMDBlNDg1ZTg0MA0KPiA+IHNvY2xvc2UoKSBhdCBzb2Nsb3NlKzB4Mzg3L2Zy
YW1lIDB4ZmZmZmZlMDBlNDg1ZThiMA0KPiA+IGNsb3NlZigpIGF0IGNsb3NlZisweDFmNS9mcmFt
ZSAweGZmZmZmZTAwZTQ4NWU5NDANCj4gPiBjbG9zZWZwKCkgYXQgY2xvc2VmcCsweGEwL2ZyYW1l
IDB4ZmZmZmZlMDBlNDg1ZTk4MA0KPiA+IGFtZDY0X3N5c2NhbGwoKSBhdCBhbWQ2NF9zeXNjYWxs
KzB4NmQzL2ZyYW1lIDB4ZmZmZmZlMDBlNDg1ZWFiMA0KPiA+IGZhc3Rfc3lzY2FsbF9jb21tb24o
KSBhdCBmYXN0X3N5c2NhbGxfY29tbW9uKzB4MTAxL2ZyYW1lIDB4ZmZmZmZlMDBlNDg1ZWFiMA0K
PiA+IC0gLS0tIHN5c2NhbGwgKDYsIEZyZWVCU0QgRUxGNjQsIHN5c19jbG9zZSksIHJpcCA9IDB4
ODAxMTFhZGRhLCByc3AgPSAweDdmZmZkZjNmNzIyOCwNCj4gPiByYnAgPSAweDdmZmZkZjNmNzI0
MCAtLS0gS0RCOiBlbnRlcjogcGFuaWMNCj4gPg0KPiA+IF9fY3VydGhyZWFkICgpIGF0IC4vbWFj
aGluZS9wY3B1Lmg6MjMxDQo+ID4gMjMxICAgICAgICAgICAgIF9fYXNtKCJtb3ZxICUlZ3M6JTEs
JTAiIDogIj1yIiAodGQpDQo+ID4gKGtnZGIpIGJ0DQo+ID4gKGtnZGIpIGJ0DQo+ID4gIzAgIF9f
Y3VydGhyZWFkICgpIGF0IC4vbWFjaGluZS9wY3B1Lmg6MjMxDQo+ID4gIzEgIGRvYWR1bXAgKHRl
eHRkdW1wPTApIGF0IC91c3Ivc3JjL3N5cy9rZXJuL2tlcm5fc2h1dGRvd24uYzozNjUNCj4gPiAj
MiAgMHhmZmZmZmZmZjgwNTk3ZDViIGluIGRiX2R1bXAgKGR1bW15PTxvcHRpbWl6ZWQgb3V0Piwg
ZHVtbXkyPTx1bmF2YWlsYWJsZT4sDQo+ID4gZHVtbXkzPTx1bmF2YWlsYWJsZT4sIGR1bW15ND08
dW5hdmFpbGFibGU+KSBhdCAvdXNyL3NyYy9zeXMvZGRiL2RiX2NvbW1hbmQuYzo1NzQNCj4gPiAj
MyAgMHhmZmZmZmZmZjgwNTk3YWU2IGluIGRiX2NvbW1hbmQgKGxhc3RfY21kcD08b3B0aW1pemVk
IG91dD4sDQo+ID4gY21kX3RhYmxlPTxvcHRpbWl6ZWQgIA0KPiA+IG91dD4sIGRvcGFnZXI9PG9w
dGltaXplZCBvdXQ+KSBhdCAvdXNyL3NyYy9zeXMvZGRiL2RiX2NvbW1hbmQuYzo0ODEgIzQNCj4g
PiBvdXQ+MHhmZmZmZmZmZjgwNTk3ODE0IGluIGRiX2NvbW1hbmRfbG9vcCAoKSBhdCAvdXNyL3Ny
Yy9zeXMvZGRiL2RiX2NvbW1hbmQuYzo1MzQgIA0KPiA+ICM1ICAweGZmZmZmZmZmODA1OWIwNGYg
aW4gZGJfdHJhcCAodHlwZT08b3B0aW1pemVkIG91dD4sIGNvZGU9PG9wdGltaXplZCBvdXQ+KQ0K
PiA+IGF0IC91c3Ivc3JjL3N5cy9kZGIvZGJfbWFpbi5jOjI1MCAjNiAgMHhmZmZmZmZmZjgwOTI0
NDYzIGluIGtkYl90cmFwICh0eXBlPTMsDQo+ID4gY29kZT0tNjE0NTYsIHRmPTxvcHRpbWl6ZWQg
b3V0PikgYXQgL3Vzci9zcmMvc3lzL2tlcm4vc3Vicl9rZGIuYzo2OTcgIzcNCj4gPiAweGZmZmZm
ZmZmODBjODBhYjcgaW4gdHJhcCAoZnJhbWU9MHhmZmZmZmUwMGU0ODVlNWEwKQ0KPiA+IGF0IC91
c3Ivc3JjL3N5cy9hbWQ2NC9hbWQ2NC90cmFwLmM6NTUwICM4ICA8c2lnbmFsIGhhbmRsZXIgY2Fs
bGVkPiAjOSAga2RiX2VudGVyDQo+ID4gKHdoeT0weGZmZmZmZmZmODBkZDdiNTQgInBhbmljIiwg
bXNnPTxvcHRpbWl6ZWQgb3V0PikNCj4gPiBhdCAvdXNyL3NyYy9zeXMva2Vybi9zdWJyX2tkYi5j
OjQ3OSAjMTAgMHhmZmZmZmZmZjgwOGRiNTAwIGluIHZwYW5pYyAoZm10PTxvcHRpbWl6ZWQNCj4g
PiBvdXQ+LCBhcD0weGZmZmZmZTAwZTQ4NWU3MTApIGF0IC91c3Ivc3JjL3N5cy9rZXJuL2tlcm5f
c2h1dGRvd24uYzo4NTEgIzExDQo+ID4gb3V0PjB4ZmZmZmZmZmY4MDhkYjU5MyBpbiBwYW5pYw0K
PiA+IChmbXQ9MHhmZmZmZmZmZjgxMjViYmQ4IDxjbnB1dHNfbXR4PiAiXDI1MVwzMTJcMzMyXDIw
MFwzNzdcMzc3XDM3N1wzNzciKQ0KPiA+IGF0IC91c3Ivc3JjL3N5cy9rZXJuL2tlcm5fc2h1dGRv
d24uYzo3ODkgIzEyIDB4ZmZmZmZmZmY4MDhkNjViNyBpbiBfX3J3X2Fzc2VydA0KPiA+IChjPTB4
ZmZmZmZlMDAxMTFlZTY1MCwgd2hhdD00LCBmaWxlPTB4ZmZmZmZmZmY4MGRjNTE1Nw0KPiA+ICIv
dXNyL3NyYy9zeXMvbmV0aW5ldC9pbl9wY2IuYyIsIGxpbmU9MTM5MSkgYXQgL3Vzci9zcmMvc3lz
L2tlcm4va2Vybl9yd2xvY2suYzoxNDI2DQo+ID4gIzEzIF9yd193dW5sb2NrX2Nvb2tpZSAoYz0w
eGZmZmZmZTAwMTExZWU2NTAsIGZpbGU9MHhmZmZmZmZmZjgwZGM1MTU3DQo+ID4gIi91c3Ivc3Jj
L3N5cy9uZXRpbmV0L2luX3BjYi5jIiwgbGluZT0xMzkxKSBhdCAvdXNyL3NyYy9zeXMva2Vybi9r
ZXJuX3J3bG9jay5jOjM2Mg0KPiA+ICMxNCAweGZmZmZmZmZmODBhNjhjYWEgaW4gaW5fcGNiZnJl
ZSAoaW5wPTB4ZmZmZmY4MDA2NjA1OGIxMCkNCj4gPiBhdCAvdXNyL3NyYy9zeXMvbmV0aW5ldC9p
bl9wY2IuYzoxMzkxICMxNSAweGZmZmZmZmZmODBiMDlhNmUgaW4gdGNwX2RldGFjaA0KPiA+IChz
bz08b3B0aW1pemVkIG91dD4sIGlucD08b3B0aW1pemVkIG91dD4pIGF0IC91c3Ivc3JjL3N5cy9u
ZXRpbmV0L3RjcF91c3JyZXEuYzoyNTgNCj4gPiAjMTYgdGNwX3Vzcl9kZXRhY2ggKHNvPTxvcHRp
bWl6ZWQgb3V0PikgYXQgL3Vzci9zcmMvc3lzL25ldGluZXQvdGNwX3VzcnJlcS5jOjI4OSAjMTcN
Cj4gPiAweGZmZmZmZmZmODA5N2MzOTQgaW4gc29mcmVlIChzbz0weGZmZmZmODAwMTk4OGQzNTgp
DQo+ID4gYXQgL3Vzci9zcmMvc3lzL2tlcm4vdWlwY19zb2NrZXQuYzoxMDMyICMxOCAweGZmZmZm
ZmZmODA5N2Q0ODcgaW4gc29jbG9zZQ0KPiA+IChzbz0weGZmZmZmODAwMTk4OGQzNTgpIGF0IC91
c3Ivc3JjL3N5cy9rZXJuL3VpcGNfc29ja2V0LmM6MTEyNiAjMTkNCj4gPiAweGZmZmZmZmZmODA4
ODVhZDUgaW4gZm9fY2xvc2UgKGZwPTxvcHRpbWl6ZWQgb3V0PiwgdGQ9PG9wdGltaXplZCBvdXQ+
KQ0KPiA+IGF0IC91c3Ivc3JjL3N5cy9zeXMvZmlsZS5oOjM0OCAjMjAgX2Zkcm9wIChmcD08b3B0
aW1pemVkIG91dD4sIHRkPTxvcHRpbWl6ZWQgb3V0PikNCj4gPiBhdCAvdXNyL3NyYy9zeXMva2Vy
bi9rZXJuX2Rlc2NyaXAuYzoyOTU3ICMyMSBjbG9zZWYgKGZwPTB4ZmZmZmY4MDAwNGVmNGViMCwN
Cj4gPiB0ZD0weGZmZmZmODAwMTk4OTE1NjApIGF0IC91c3Ivc3JjL3N5cy9rZXJuL2tlcm5fZGVz
Y3JpcC5jOjI1MzggIzIyDQo+ID4gMHhmZmZmZmZmZjgwODgyOTIwIGluIGNsb3NlZnAgKGZkcD0w
eGZmZmZmODAwMTk1NTM0NTAsIGZkPTEyLCBmcD0weGZmZmZmODAwMDRlZjRlYjAsDQo+ID4gdGQ9
MHhmZmZmZjgwMDE5ODkxNTYwLCBob2xkbGVhZGVycz0wKSBhdCAvdXNyL3NyYy9zeXMva2Vybi9r
ZXJuX2Rlc2NyaXAuYzoxMjA4ICMyMw0KPiA+IDB4ZmZmZmZmZmY4MGM4MjAzMyBpbiBzeXNjYWxs
ZW50ZXIgKHRkPTB4ZmZmZmY4MDAxOTg5MTU2MCkNCj4gPiBhdCAvdXNyL3NyYy9zeXMvYW1kNjQv
YW1kNjQvLi4vLi4va2Vybi9zdWJyX3N5c2NhbGwuYzoxMzUgIzI0IGFtZDY0X3N5c2NhbGwNCj4g
PiAodGQ9MHhmZmZmZjgwMDE5ODkxNTYwLCB0cmFjZWQ9MCkgYXQgL3Vzci9zcmMvc3lzL2FtZDY0
L2FtZDY0L3RyYXAuYzo5NDUgIzI1IDxzaWduYWwNCj4gPiBoYW5kbGVyIGNhbGxlZD4gIzI2IDB4
MDAwMDAwMDgwMTExYWRkYSBpbiA/PyAoKSBCYWNrdHJhY2Ugc3RvcHBlZDogQ2Fubm90IGFjY2Vz
cw0KPiA+IG1lbW9yeSBhdCBhZGRyZXNzIDB4N2ZmZmRmM2Y3MjI4IChrZ2RiKQ0KPiA+DQo+ID4N
Cj4gPg0KPiA+ICANCj4gPj4gLS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KPiA+
PiBIYXNoOiBTSEE1MTINCj4gPj4NCj4gPj4gQW0gVGh1LCAzIE1heSAyMDE4IDEyOjUzOjA1IC0w
NzAwDQo+ID4+ICJLLiBNYWN5IiA8a21hY3lAZnJlZWJzZC5vcmc+IHNjaHJpZWI6DQo+ID4+ICAN
Cj4gPj4gPiBDYW4geW91IGdpdmUgYW55IGNvbnRleHQgb24gd2hhdCB0aGV5J3JlIGRvaW5nPyBJ
biBhZGRpdGlvbiAtIGV2ZW4gb24NCj4gPj4gPiBhIHByb2R1Y3Rpb24ga2VybmVsIGl0J3MgcG9z
c2libGUgdG8gY29tcGlsZSBpbiBEREIgdG8gYXQgbGVhc3QgZ2V0IGENCj4gPj4gPiBiYWNrdHJh
Y2UuIFlvdXIgcmVwb3J0IG9ubHkgZ2l2ZXMgdXMgZW5vdWdoIGluZm9ybWF0aW9uIHRvIGtub3cg
dGhhdCAgDQo+ID4+DQo+ID4+IE5vdCBhdCB0aGUgbW9tZW50LiBUaGUgaW1tZWRpYXRlIGNyYXNo
IGNvcnJ1cHRlZCB0aGUgL3Vzci9zcmMgZmlsZXN5c3RlbSBzbyBJIGNhbiBub3QNCj4gPj4gcmVj
b21waWxlIGEga2VybmVsLiBFdmVyeSBhdHRlbXB0IHRvIC9ldGMvbmV0c3RhcnQgdGhlIG5ldHdv
cmsgb24gdGhlIGJ1Z2d5IGtlcm5lbA0KPiA+PiBlbmRzIHVwIGluIGEgZnVydGhlciBkZXN0cnVj
dGlvbiwgc28gSSBzdG9wcGVkIGF0IHRoaXMgdmVyeSBtb21lbnQgYW5kIGhvcGVmdWxseSBJDQo+
ID4+IGNhbiBjb3B5IC91c3Ivc3JjIGZyb20gYSByMzMxNTMgYm94IChyMzMzMTUzIGlzIGZvciBt
ZSB0aGUgbGFzdCB3b3JraW5nIHJldmlzaW9uKQ0KPiA+PiB2aWEgVVNCIGZsYXNoIGRyaXZlIGFu
ZCByZWNvbXBpbGUgdGhlIGtlcm5lbC4gQnV0IEknbGwgZ28gZm9yIHIzMzMxNTMgZmlyc3Qgc2lu
Y2UgSQ0KPiA+PiBuZWVkIHRoZSBzZXJ2ZXIgdXAgdG9tb3Jyb3cgYW5kIEknbGwgdHJ5IG9uIHRo
ZSBvdGhlciBib3ggd2hpY2ggaXMgYWxzbyBhZmZlY3RlZCwNCj4gPj4gYnV0IGFsc28gZXF1aXB0
ZWQgd2l0aCB0aGUgaTM1MCBOSUMgb24gd2hpY2ggdGhlIHByb2JsZW0gb2NjdXJzIHZlcnkgcXVp
Y2tseS4NCj4gPj4gIA0KPiA+PiA+IHRoZXJlIGlzIF9hbl8gaXNzdWUuIEl0J3MgZGlmZmljdWx0
IHRvIHByb2NlZWQgb24gdGhpcyBhbG9uZS4gSSBkbw0KPiA+PiA+IGhhdmUgYSByZXBvcnQgZnJv
bSB0aGUgRnJlZUJTRCBDSSBpbmZyYXN0cnVjdHVyZSB0aGF0IHdlJ3JlIGxvb2tpbmcgaW4NCj4g
Pj4gPiB0byBub3cuICBXaXRoIGx1Y2sgdGhhdCBpcyB0aGUgc2FtZSBpc3N1ZS4NCj4gPj4gPg0K
PiA+PiA+IC1NDQo+ID4+ID4NCj4gPj4gPiBPbiBUaHUsIE1heSAzLCAyMDE4IGF0IDEyOjMxIFBN
LCBPLiBIYXJ0bWFubiA8b2hhcnRtYW5uQHdhbHN0YXR0Lm9yZz4gd3JvdGU6ICANCj4gPj4gPiA+
IC0tLS0tQkVHSU4gUEdQIFNJR05FRCBNRVNTQUdFLS0tLS0NCj4gPj4gPiA+IEhhc2g6IFNIQTUx
Mg0KPiA+PiA+ID4NCj4gPj4gPiA+IEFtIFdlZCwgMiBNYXkgMjAxOCAxOTozNjoyOSArMDAwMCAo
VVRDKQ0KPiA+PiA+ID4gU3RlcGhlbiBIdXJkIDxzaHVyZEBGcmVlQlNELm9yZz4gc2NocmllYjoN
Cj4gPj4gPiA+ICANCj4gPj4gPiA+PiBBdXRob3I6IHNodXJkDQo+ID4+ID4gPj4gRGF0ZTogV2Vk
IE1heSAgMiAxOTozNjoyOSAyMDE4DQo+ID4+ID4gPj4gTmV3IFJldmlzaW9uOiAzMzMxNzUNCj4g
Pj4gPiA+PiBVUkw6IGh0dHBzOi8vc3Zud2ViLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzMz
MzE3NQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gTG9nOg0KPiA+PiA+ID4+ICAgU2VwYXJhdGUgbGlz
dCBtYW5pcHVsYXRpb24gbG9ja2luZyBmcm9tIHN0YXRlIGNoYW5nZSBpbiBtdWx0aWNhc3QNCj4g
Pj4gPiA+Pg0KPiA+PiA+ID4+ICAgTXVsdGljYXN0IGluY29ycmVjdGx5IGNhbGxzIGluIHRvIGRy
aXZlcnMgd2l0aCBhIG11dGV4IGhlbGQgY2F1c2luZyBkcml2ZXJzDQo+ID4+ID4gPj4gICB0byBo
YXZlIHRvIGdvIHRocm91Z2ggYWxsIG1hbm5lciBvZiBjb250b3J0aW9ucyB0byB1c2UgYSBub24g
c2xlZXBhYmxlIGxvY2suDQo+ID4+ID4gPj4gICBTZXJpYWxpemUgbXVsdGljYXN0IHVwZGF0ZXMg
aW5zdGVhZC4NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgU3VibWl0dGVkIGJ5OiAgICAgICBtbWFj
eSA8bW1hY3lAbWF0dG1hY3kuaW8+DQo+ID4+ID4gPj4gICBSZXZpZXdlZCBieTogICAgICAgIHNo
dXJkLCBzYnJ1bm8NCj4gPj4gPiA+PiAgIFNwb25zb3JlZCBieTogICAgICAgTGltZWxpZ2h0IE5l
dHdvcmtzDQo+ID4+ID4gPj4gICBEaWZmZXJlbnRpYWwgUmV2aXNpb246ICAgICAgaHR0cHM6Ly9y
ZXZpZXdzLmZyZWVic2Qub3JnL0QxNDk2OQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gTW9kaWZpZWQ6
DQo+ID4+ID4gPj4gICBoZWFkL3N5cy9rZXJuL3N1YnJfZ3Rhc2txdWV1ZS5jDQo+ID4+ID4gPj4g
ICBoZWFkL3N5cy9rZXJuL3N1YnJfd2l0bmVzcy5jDQo+ID4+ID4gPj4gICBoZWFkL3N5cy9uZXQv
aWYuYw0KPiA+PiA+ID4+ICAgaGVhZC9zeXMvbmV0aW5ldC9pZ21wLmMNCj4gPj4gPiA+PiAgIGhl
YWQvc3lzL25ldGluZXQvaWdtcF92YXIuaA0KPiA+PiA+ID4+ICAgaGVhZC9zeXMvbmV0aW5ldC9p
bi5jDQo+ID4+ID4gPj4gICBoZWFkL3N5cy9uZXRpbmV0L2luX21jYXN0LmMNCj4gPj4gPiA+PiAg
IGhlYWQvc3lzL25ldGluZXQvaW5fcGNiLmMNCj4gPj4gPiA+PiAgIGhlYWQvc3lzL25ldGluZXQv
aW5fdmFyLmgNCj4gPj4gPiA+PiAgIGhlYWQvc3lzL25ldGluZXQvaXBfY2FycC5jDQo+ID4+ID4g
Pj4gICBoZWFkL3N5cy9uZXRpbmV0Ni9pbjYuYw0KPiA+PiA+ID4+ICAgaGVhZC9zeXMvbmV0aW5l
dDYvaW42X2lmYXR0YWNoLmMNCj4gPj4gPiA+PiAgIGhlYWQvc3lzL25ldGluZXQ2L2luNl9tY2Fz
dC5jDQo+ID4+ID4gPj4gICBoZWFkL3N5cy9uZXRpbmV0Ni9pbjZfcGNiLmMNCj4gPj4gPiA+PiAg
IGhlYWQvc3lzL25ldGluZXQ2L2luNl92YXIuaA0KPiA+PiA+ID4+ICAgaGVhZC9zeXMvbmV0aW5l
dDYvbWxkNi5jDQo+ID4+ID4gPj4gICBoZWFkL3N5cy9uZXRpbmV0Ni9tbGQ2X3Zhci5oDQo+ID4+
ID4gPj4gICBoZWFkL3N5cy9zeXMvZ3Rhc2txdWV1ZS5oDQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBN
b2RpZmllZDogaGVhZC9zeXMva2Vybi9zdWJyX2d0YXNrcXVldWUuYw0KPiA+PiA+ID4+ID09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQ0KPiA+PiA+ID4+IC0tLSBoZWFkL3N5cy9rZXJuL3N1YnJfZ3Rhc2tx
dWV1ZS5jICAgV2VkIE1heSAgMiAxNzo0MTowMCAyMDE4ICAgICAgICAocjMzMzE3NCkNCj4gPj4g
PiA+PiArKysgaGVhZC9zeXMva2Vybi9zdWJyX2d0YXNrcXVldWUuYyAgIFdlZCBNYXkgIDIgMTk6
MzY6MjkgMjAxOCAgICAgICAgKHIzMzMxNzUpDQo+ID4+ID4gPj4gQEAgLTUzLDYgKzUzLDcgQEAg
c3RhdGljIHZvaWQgZ3Rhc2txdWV1ZV90aHJlYWRfZW5xdWV1ZSh2b2lkICopOw0KPiA+PiA+ID4+
ICBzdGF0aWMgdm9pZCAgZ3Rhc2txdWV1ZV90aHJlYWRfbG9vcCh2b2lkICphcmcpOw0KPiA+PiA+
ID4+DQo+ID4+ID4gPj4gIFRBU0tRR1JPVVBfREVGSU5FKHNvZnRpcnEsIG1wX25jcHVzLCAxKTsN
Cj4gPj4gPiA+PiArVEFTS1FHUk9VUF9ERUZJTkUoY29uZmlnLCAxLCAxKTsNCj4gPj4gPiA+Pg0K
PiA+PiA+ID4+ICBzdHJ1Y3QgZ3Rhc2txdWV1ZV9idXN5IHsNCj4gPj4gPiA+PiAgICAgICBzdHJ1
Y3QgZ3Rhc2sgICAgKnRiX3J1bm5pbmc7DQo+ID4+ID4gPj4gQEAgLTY2Miw3ICs2NjMsNyBAQCBT
WVNJTklUKHRxZ19yZWNvcmRfc21wX3N0YXJ0ZWQsIFNJX1NVQl9TTVAsIFNJX09SREVSX0YNCj4g
Pj4gPiA+Pg0KPiA+PiA+ID4+ICB2b2lkDQo+ID4+ID4gPj4gIHRhc2txZ3JvdXBfYXR0YWNoKHN0
cnVjdCB0YXNrcWdyb3VwICpxZ3JvdXAsIHN0cnVjdCBncm91cHRhc2sgKmd0YXNrLA0KPiA+PiA+
ID4+IC0gICAgdm9pZCAqdW5pcSwgaW50IGlycSwgY2hhciAqbmFtZSkNCj4gPj4gPiA+PiArICAg
IHZvaWQgKnVuaXEsIGludCBpcnEsIGNvbnN0IGNoYXIgKm5hbWUpDQo+ID4+ID4gPj4gIHsNCj4g
Pj4gPiA+PiAgICAgICBjcHVzZXRfdCBtYXNrOw0KPiA+PiA+ID4+ICAgICAgIGludCBxaWQsIGVy
cm9yOw0KPiA+PiA+ID4+IEBAIC05NzYsNCArOTc3LDEzIEBAIHZvaWQNCj4gPj4gPiA+PiAgdGFz
a3Fncm91cF9kZXN0cm95KHN0cnVjdCB0YXNrcWdyb3VwICpxZ3JvdXApDQo+ID4+ID4gPj4gIHsN
Cj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICt9DQo+ID4+ID4gPj4gKw0KPiA+PiA+ID4+ICt2b2lkDQo+
ID4+ID4gPj4gK3Rhc2txZ3JvdXBfY29uZmlnX2d0YXNrX2luaXQodm9pZCAqY3R4LCBzdHJ1Y3Qg
Z3JvdXB0YXNrICpndGFzaywgZ3Rhc2tfZm5fdA0KPiA+PiA+ID4+ICpmbiwNCj4gPj4gPiA+PiAr
ICAgICBjb25zdCBjaGFyICpuYW1lKQ0KPiA+PiA+ID4+ICt7DQo+ID4+ID4gPj4gKw0KPiA+PiA+
ID4+ICsgICAgIEdST1VQVEFTS19JTklUKGd0YXNrLCAwLCBmbiwgY3R4KTsNCj4gPj4gPiA+PiAr
ICAgICB0YXNrcWdyb3VwX2F0dGFjaChxZ3JvdXBfY29uZmlnLCBndGFzaywgZ3Rhc2ssIC0xLCBu
YW1lKTsNCj4gPj4gPiA+PiAgfQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gTW9kaWZpZWQ6IGhlYWQv
c3lzL2tlcm4vc3Vicl93aXRuZXNzLmMNCj4gPj4gPiA+PiA9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N
Cj4gPj4gPiA+PiAtLS0gaGVhZC9zeXMva2Vybi9zdWJyX3dpdG5lc3MuYyAgICAgIFdlZCBNYXkg
IDIgMTc6NDE6MDAgMjAxOCAgICAgICAgKHIzMzMxNzQpDQo+ID4+ID4gPj4gKysrIGhlYWQvc3lz
L2tlcm4vc3Vicl93aXRuZXNzLmMgICAgICBXZWQgTWF5ICAyIDE5OjM2OjI5IDIwMTggICAgICAg
IChyMzMzMTc1KQ0KPiA+PiA+ID4+IEBAIC01MzIsMTggKzUzMiwyMiBAQCBzdGF0aWMgc3RydWN0
IHdpdG5lc3Nfb3JkZXJfbGlzdF9lbnRyeSBvcmRlcl9saXN0c1tdID0NCj4gPj4gPiA+PiAgICAg
ICAgKiBJUHY0IG11bHRpY2FzdDoNCj4gPj4gPiA+PiAgICAgICAgKiBwcm90b2NvbCBsb2NrcyBi
ZWZvcmUgaW50ZXJmYWNlIGxvY2tzLCBhZnRlciBVRFAgbG9ja3MuDQo+ID4+ID4gPj4gICAgICAg
ICovDQo+ID4+ID4gPj4gKyAgICAgeyAiaW5fbXVsdGlfc3giLCAmbG9ja19jbGFzc19zeCB9LA0K
PiA+PiA+ID4+ICAgICAgIHsgInVkcGlucCIsICZsb2NrX2NsYXNzX3J3IH0sDQo+ID4+ID4gPj4g
LSAgICAgeyAiaW5fbXVsdGlfbXR4IiwgJmxvY2tfY2xhc3NfbXR4X3NsZWVwIH0sDQo+ID4+ID4g
Pj4gKyAgICAgeyAiaW5fbXVsdGlfbGlzdF9tdHgiLCAmbG9ja19jbGFzc19tdHhfc2xlZXAgfSwN
Cj4gPj4gPiA+PiAgICAgICB7ICJpZ21wX210eCIsICZsb2NrX2NsYXNzX210eF9zbGVlcCB9LA0K
PiA+PiA+ID4+ICsgICAgIHsgImlmbmV0X3J3IiwgJmxvY2tfY2xhc3NfcncgfSwNCj4gPj4gPiA+
PiAgICAgICB7ICJpZl9hZGRyX2xvY2siLCAmbG9ja19jbGFzc19ydyB9LA0KPiA+PiA+ID4+ICAg
ICAgIHsgTlVMTCwgTlVMTCB9LA0KPiA+PiA+ID4+ICAgICAgIC8qDQo+ID4+ID4gPj4gICAgICAg
ICogSVB2NiBtdWx0aWNhc3Q6DQo+ID4+ID4gPj4gICAgICAgICogcHJvdG9jb2wgbG9ja3MgYmVm
b3JlIGludGVyZmFjZSBsb2NrcywgYWZ0ZXIgVURQIGxvY2tzLg0KPiA+PiA+ID4+ICAgICAgICAq
Lw0KPiA+PiA+ID4+ICsgICAgIHsgImluNl9tdWx0aV9zeCIsICZsb2NrX2NsYXNzX3N4IH0sDQo+
ID4+ID4gPj4gICAgICAgeyAidWRwaW5wIiwgJmxvY2tfY2xhc3NfcncgfSwNCj4gPj4gPiA+PiAt
ICAgICB7ICJpbjZfbXVsdGlfbXR4IiwgJmxvY2tfY2xhc3NfbXR4X3NsZWVwIH0sDQo+ID4+ID4g
Pj4gKyAgICAgeyAiaW42X211bHRpX2xpc3RfbXR4IiwgJmxvY2tfY2xhc3NfbXR4X3NsZWVwIH0s
DQo+ID4+ID4gPj4gICAgICAgeyAibWxkX210eCIsICZsb2NrX2NsYXNzX210eF9zbGVlcCB9LA0K
PiA+PiA+ID4+ICsgICAgIHsgImlmbmV0X3J3IiwgJmxvY2tfY2xhc3NfcncgfSwNCj4gPj4gPiA+
PiAgICAgICB7ICJpZl9hZGRyX2xvY2siLCAmbG9ja19jbGFzc19ydyB9LA0KPiA+PiA+ID4+ICAg
ICAgIHsgTlVMTCwgTlVMTCB9LA0KPiA+PiA+ID4+ICAgICAgIC8qDQo+ID4+ID4gPj4NCj4gPj4g
PiA+PiBNb2RpZmllZDogaGVhZC9zeXMvbmV0L2lmLmMNCj4gPj4gPiA+PiA9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0NCj4gPj4gPiA+PiAtLS0gaGVhZC9zeXMvbmV0L2lmLmMgV2VkIE1heSAgMiAxNzo0
MTowMCAyMDE4ICAgICAgICAocjMzMzE3NCkNCj4gPj4gPiA+PiArKysgaGVhZC9zeXMvbmV0L2lm
LmMgV2VkIE1heSAgMiAxOTozNjoyOSAyMDE4ICAgICAgICAocjMzMzE3NSkNCj4gPj4gPiA+PiBA
QCAtOTg1LDExICs5ODUsMTMgQEAgc3RhdGljIHZvaWQNCj4gPj4gPiA+PiAgaWZfcHVyZ2VtYWRk
cnMoc3RydWN0IGlmbmV0ICppZnApDQo+ID4+ID4gPj4gIHsNCj4gPj4gPiA+PiAgICAgICBzdHJ1
Y3QgaWZtdWx0aWFkZHIgKmlmbWE7DQo+ID4+ID4gPj4gLSAgICAgc3RydWN0IGlmbXVsdGlhZGRy
ICpuZXh0Ow0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgSUZfQUREUl9XTE9DSyhpZnApOw0K
PiA+PiA+ID4+IC0gICAgIFRBSUxRX0ZPUkVBQ0hfU0FGRShpZm1hLCAmaWZwLT5pZl9tdWx0aWFk
ZHJzLCBpZm1hX2xpbmssIG5leHQpDQo+ID4+ID4gPj4gKyAgICAgd2hpbGUgKCFUQUlMUV9FTVBU
WSgmaWZwLT5pZl9tdWx0aWFkZHJzKSkgew0KPiA+PiA+ID4+ICsgICAgICAgICAgICAgaWZtYSA9
IFRBSUxRX0ZJUlNUKCZpZnAtPmlmX211bHRpYWRkcnMpOw0KPiA+PiA+ID4+ICsgICAgICAgICAg
ICAgVEFJTFFfUkVNT1ZFKCZpZnAtPmlmX211bHRpYWRkcnMsIGlmbWEsIGlmbWFfbGluayk7DQo+
ID4+ID4gPj4gICAgICAgICAgICAgICBpZl9kZWxtdWx0aV9sb2NrZWQoaWZwLCBpZm1hLCAxKTsN
Cj4gPj4gPiA+PiArICAgICB9DQo+ID4+ID4gPj4gICAgICAgSUZfQUREUl9XVU5MT0NLKGlmcCk7
DQo+ID4+ID4gPj4gIH0NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IEBAIC0zNDI5LDYgKzM0MzEsMTIg
QEAgaWZfYWRkbXVsdGkoc3RydWN0IGlmbmV0ICppZnAsIHN0cnVjdCBzb2NrYWRkciAqc2EsDQo+
ID4+ID4gPj4gICAgICAgc3RydWN0IHNvY2thZGRyX2RsIHNkbDsNCj4gPj4gPiA+PiAgICAgICBp
bnQgZXJyb3I7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiArI2lmZGVmIElORVQNCj4gPj4gPiA+PiAr
ICAgICBJTl9NVUxUSV9MSVNUX1VOTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArI2VuZGlmDQo+
ID4+ID4gPj4gKyNpZmRlZiBJTkVUNg0KPiA+PiA+ID4+ICsgICAgIElONl9NVUxUSV9MSVNUX1VO
TE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArI2VuZGlmDQo+ID4+ID4gPj4gICAgICAgLyoNCj4g
Pj4gPiA+PiAgICAgICAgKiBJZiB0aGUgYWRkcmVzcyBpcyBhbHJlYWR5IHByZXNlbnQsIHJldHVy
biBhIG5ldyByZWZlcmVuY2UgdG8gaXQ7DQo+ID4+ID4gPj4gICAgICAgICogb3RoZXJ3aXNlLCBh
bGxvY2F0ZSBzdG9yYWdlIGFuZCBzZXQgdXAgYSBuZXcgYWRkcmVzcy4NCj4gPj4gPiA+PiBAQCAt
MzYxMCw2ICszNjE4LDkgQEAgaWZfZGVsbXVsdGlfaWZtYShzdHJ1Y3QgaWZtdWx0aWFkZHIgKmlm
bWEpDQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGlmbmV0ICppZnA7DQo+ID4+ID4gPj4gICAgICAg
aW50IGxhc3RyZWY7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiArI2lmZGVmIElORVQNCj4gPj4gPiA+
PiArICAgICBJTl9NVUxUSV9MSVNUX1VOTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArI2VuZGlm
DQo+ID4+ID4gPj4gICAgICAgaWZwID0gaWZtYS0+aWZtYV9pZnA7DQo+ID4+ID4gPj4gICNpZmRl
ZiBESUFHTk9TVElDDQo+ID4+ID4gPj4gICAgICAgaWYgKGlmcCA9PSBOVUxMKSB7DQo+ID4+ID4g
Pj4gQEAgLTM3MTEsOCArMzcyMiw3IEBAIGlmX2RlbG11bHRpX2xvY2tlZChzdHJ1Y3QgaWZuZXQg
KmlmcCwgc3RydWN0IGlmbXVsdGlhZA0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICAgICAgICBp
Zl9mcmVlbXVsdGkobGxfaWZtYSk7DQo+ID4+ID4gPj4gICAgICAgICAgICAgICB9DQo+ID4+ID4g
Pj4gICAgICAgfQ0KPiA+PiA+ID4+IC0NCj4gPj4gPiA+PiAtICAgICBpZiAoaWZwICE9IE5VTEwp
DQo+ID4+ID4gPj4gKyAgICAgaWYgKGlmcCAhPSBOVUxMICYmIGRldGFjaGluZyA9PSAwKQ0KPiA+
PiA+ID4+ICAgICAgICAgICAgICAgVEFJTFFfUkVNT1ZFKCZpZnAtPmlmX211bHRpYWRkcnMsIGlm
bWEsIGlmbWFfbGluayk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBpZl9mcmVlbXVsdGko
aWZtYSk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBNb2RpZmllZDogaGVhZC9zeXMvbmV0aW5ldC9p
Z21wLmMNCj4gPj4gPiA+PiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gPj4gPiA+PiAtLS0gaGVh
ZC9zeXMvbmV0aW5ldC9pZ21wLmMgICBXZWQgTWF5ICAyIDE3OjQxOjAwIDIwMTggICAgICAgIChy
MzMzMTc0KQ0KPiA+PiA+ID4+ICsrKyBoZWFkL3N5cy9uZXRpbmV0L2lnbXAuYyAgIFdlZCBNYXkg
IDIgMTk6MzY6MjkgMjAxOCAgICAgICAgKHIzMzMxNzUpDQo+ID4+ID4gPj4gQEAgLTEzNiw3ICsx
MzYsNyBAQCBzdGF0aWMgaW50ICAgICAgICBpZ21wX3YzX2VucXVldWVfZ3JvdXBfcmVjb3JkKHN0
cnVjdCBtYnVmcQ0KPiA+PiA+ID4+ICogc3RydWN0IGluX211bHRpICosIGNvbnN0IGludCwgY29u
c3QgaW50LCBjb25zdCBpbnQpOw0KPiA+PiA+ID4+ICBzdGF0aWMgaW50ICAgaWdtcF92M19lbnF1
ZXVlX2ZpbHRlcl9jaGFuZ2Uoc3RydWN0IG1idWZxICosDQo+ID4+ID4gPj4gICAgICAgICAgICAg
ICAgICAgc3RydWN0IGluX211bHRpICopOw0KPiA+PiA+ID4+IC1zdGF0aWMgdm9pZCAgaWdtcF92
M19wcm9jZXNzX2dyb3VwX3RpbWVycyhzdHJ1Y3QgaWdtcF9pZnNvZnRjICosDQo+ID4+ID4gPj4g
K3N0YXRpYyB2b2lkICBpZ21wX3YzX3Byb2Nlc3NfZ3JvdXBfdGltZXJzKHN0cnVjdCBpbl9tdWx0
aV9oZWFkICosDQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgc3RydWN0IG1idWZxICosIHN0
cnVjdCBtYnVmcSAqLCBzdHJ1Y3QgaW5fbXVsdGkgKiwNCj4gPj4gPiA+PiAgICAgICAgICAgICAg
ICAgICBjb25zdCBpbnQpOw0KPiA+PiA+ID4+ICBzdGF0aWMgaW50ICAgaWdtcF92M19tZXJnZV9z
dGF0ZV9jaGFuZ2VzKHN0cnVjdCBpbl9tdWx0aSAqLA0KPiA+PiA+ID4+IEBAIC0xNjIsMTIgKzE2
MiwxMiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG5ldGlzcl9oYW5kbGVyIGlnbXBfbmggPSB7DQo+
ID4+ID4gPj4gICAqIHRoZW1zZWx2ZXMgYXJlIG5vdCB2aXJ0dWFsaXplZC4NCj4gPj4gPiA+PiAg
ICoNCj4gPj4gPiA+PiAgICogTG9ja2luZzoNCj4gPj4gPiA+PiAtICogICogVGhlIHBlcm1pdHRl
ZCBsb2NrIG9yZGVyIGlzOiBJTl9NVUxUSV9MT0NLLCBJR01QX0xPQ0ssIElGX0FERFJfTE9DSy4N
Cj4gPj4gPiA+PiArICogICogVGhlIHBlcm1pdHRlZCBsb2NrIG9yZGVyIGlzOiBJTl9NVUxUSV9M
SVNUX0xPQ0ssIElHTVBfTE9DSywgSUZfQUREUl9MT0NLLg0KPiA+PiA+ID4+ICAgKiAgICBBbnkg
bWF5IGJlIHRha2VuIGluZGVwZW5kZW50bHk7IGlmIGFueSBhcmUgaGVsZCBhdCB0aGUgc2FtZQ0K
PiA+PiA+ID4+ICAgKiAgICB0aW1lLCB0aGUgYWJvdmUgbG9jayBvcmRlciBtdXN0IGJlIGZvbGxv
d2VkLg0KPiA+PiA+ID4+ICAgKiAgKiBBbGwgb3V0cHV0IGlzIGRlbGVnYXRlZCB0byB0aGUgbmV0
aXNyLg0KPiA+PiA+ID4+ICAgKiAgICBOb3cgdGhhdCBHaWFudCBoYXMgYmVlbiBlbGltaW5hdGVk
LCB0aGUgbmV0aXNyIG1heSBiZSBpbmxpbmVkLg0KPiA+PiA+ID4+IC0gKiAgKiBJTl9NVUxUSV9M
T0NLIGNvdmVycyBpbl9tdWx0aS4NCj4gPj4gPiA+PiArICogICogSU5fTVVMVElfTElTVF9MT0NL
IGNvdmVycyBpbl9tdWx0aS4NCj4gPj4gPiA+PiAgICogICogSUdNUF9MT0NLIGNvdmVycyBpZ21w
X2lmc29mdGMgYW5kIGFueSBnbG9iYWwgdmFyaWFibGVzIGluIHRoaXMgZmlsZSwNCj4gPj4gPiA+
PiAgICogICAgaW5jbHVkaW5nIHRoZSBvdXRwdXQgcXVldWUuDQo+ID4+ID4gPj4gICAqICAqIElG
X0FERFJfTE9DSyBjb3ZlcnMgaWZfbXVsdGlhZGRycywgd2hpY2ggaXMgdXNlZCBmb3IgYSB2YXJp
ZXR5IG9mDQo+ID4+ID4gPj4gQEAgLTQ0MSw3ICs0NDEsNyBAQCBzeXNjdGxfaWdtcF9pZmluZm8o
U1lTQ1RMX0hBTkRMRVJfQVJHUykNCj4gPj4gPiA+PiAgICAgICBpZiAoZXJyb3IpDQo+ID4+ID4g
Pj4gICAgICAgICAgICAgICByZXR1cm4gKGVycm9yKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0g
ICAgIElOX01VTFRJX0xPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0so
KTsNCj4gPj4gPiA+PiAgICAgICBJR01QX0xPQ0soKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAg
ICAgIGlmIChuYW1lWzBdIDw9IDAgfHwgbmFtZVswXSA+IFZfaWZfaW5kZXgpIHsNCj4gPj4gPiA+
PiBAQCAtNDc1LDcgKzQ3NSw3IEBAIHN5c2N0bF9pZ21wX2lmaW5mbyhTWVNDVExfSEFORExFUl9B
UkdTKQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gIG91dF9sb2NrZWQ6DQo+ID4+ID4gPj4gICAgICAg
SUdNUF9VTkxPQ0soKTsNCj4gPj4gPiA+PiAtICAgICBJTl9NVUxUSV9VTkxPQ0soKTsNCj4gPj4g
PiA+PiArICAgICBJTl9NVUxUSV9MSVNUX1VOTE9DSygpOw0KPiA+PiA+ID4+ICAgICAgIHJldHVy
biAoZXJyb3IpOw0KPiA+PiA+ID4+ICB9DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBAQCAtNTg2LDcg
KzU4Niw2IEBAIGlnaV9hbGxvY19sb2NrZWQoLypjb25zdCovIHN0cnVjdCBpZm5ldCAqaWZwKQ0K
PiA+PiA+ID4+ICAgICAgIGlnaS0+aWdpX3FpID0gSUdNUF9RSV9JTklUOw0KPiA+PiA+ID4+ICAg
ICAgIGlnaS0+aWdpX3FyaSA9IElHTVBfUVJJX0lOSVQ7DQo+ID4+ID4gPj4gICAgICAgaWdpLT5p
Z2lfdXJpID0gSUdNUF9VUklfSU5JVDsNCj4gPj4gPiA+PiAtICAgICBTTElTVF9JTklUKCZpZ2kt
PmlnaV9yZWxpbm1oZWFkKTsNCj4gPj4gPiA+PiAgICAgICBtYnVmcV9pbml0KCZpZ2ktPmlnaV9n
cSwgSUdNUF9NQVhfUkVTUE9OU0VfUEFDS0VUUyk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAg
ICBMSVNUX0lOU0VSVF9IRUFEKCZWX2lnaV9oZWFkLCBpZ2ksIGlnaV9saW5rKTsNCj4gPj4gPiA+
PiBAQCAtNjEyLDExICs2MTEsMTIgQEAgaWdtcF9pZmRldGFjaChzdHJ1Y3QgaWZuZXQgKmlmcCkN
Cj4gPj4gPiA+PiAgew0KPiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpZ21wX2lmc29mdGMgICAgICpp
Z2k7DQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGlmbXVsdGlhZGRyICAgICAgKmlmbWE7DQo+ID4+
ID4gPj4gLSAgICAgc3RydWN0IGluX211bHRpICAgICAgICAgKmlubSwgKnRpbm07DQo+ID4+ID4g
Pj4gLQ0KPiA+PiA+ID4+ICsgICAgIHN0cnVjdCBpbl9tdWx0aSAgICAgICAgICppbm07DQo+ID4+
ID4gPj4gKyAgICAgc3RydWN0IGluX211bHRpX2hlYWQgaW5tX2ZyZWVfdG1wOw0KPiA+PiA+ID4+
ICAgICAgIENUUjMoS1RSX0lHTVBWMywgIiVzOiBjYWxsZWQgZm9yIGlmcCAlcCglcykiLCBfX2Z1
bmNfXywgaWZwLA0KPiA+PiA+ID4+ICAgICAgICAgICBpZnAtPmlmX3huYW1lKTsNCj4gPj4gPiA+
Pg0KPiA+PiA+ID4+ICsgICAgIFNMSVNUX0lOSVQoJmlubV9mcmVlX3RtcCk7DQo+ID4+ID4gPj4g
ICAgICAgSUdNUF9MT0NLKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBpZ2kgPSAoKHN0
cnVjdCBpbl9pZmluZm8gKilpZnAtPmlmX2FmZGF0YVtBRl9JTkVUXSktPmlpX2lnbXA7DQo+ID4+
ID4gPj4gQEAgLTYzMSwyNCArNjMxLDE1IEBAIGlnbXBfaWZkZXRhY2goc3RydWN0IGlmbmV0ICpp
ZnApDQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAoIiVzOiBpZm1hX3Byb3Rv
c3BlYyBpcyBOVUxMIiwgX19mdW5jX18pKTsNCj4gPj4gPiA+PiAgI2VuZGlmDQo+ID4+ID4gPj4g
ICAgICAgICAgICAgICAgICAgICAgIGlubSA9IChzdHJ1Y3QgaW5fbXVsdGkgKilpZm1hLT5pZm1h
X3Byb3Rvc3BlYzsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgaWYgKGlubS0+aW5t
X3N0YXRlID09IElHTVBfTEVBVklOR19NRU1CRVIpIHsNCj4gPj4gPiA+PiAtICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBTTElTVF9JTlNFUlRfSEVBRCgmaWdpLT5pZ2lfcmVsaW5taGVhZCwN
Cj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5tLCBpbm1fbnJl
bGUpOw0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgICAgICB9DQo+ID4+ID4gPj4gKyAgICAg
ICAgICAgICAgICAgICAgIGlmIChpbm0tPmlubV9zdGF0ZSA9PSBJR01QX0xFQVZJTkdfTUVNQkVS
KQ0KPiA+PiA+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlubV9yZWxlX2xvY2tl
ZCgmaW5tX2ZyZWVfdG1wLCBpbm0pOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICAgICAgICBp
bm1fY2xlYXJfcmVjb3JkZWQoaW5tKTsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIH0NCj4gPj4g
PiA+PiAgICAgICAgICAgICAgIElGX0FERFJfUlVOTE9DSyhpZnApOw0KPiA+PiA+ID4+IC0gICAg
ICAgICAgICAgLyoNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAqIEZyZWUgdGhlIGluX211bHRp
IHJlZmVyZW5jZShzKSBmb3IgdGhpcyBJR01QIGxpZmVjeWNsZS4NCj4gPj4gPiA+PiAtICAgICAg
ICAgICAgICAqLw0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgU0xJU1RfRk9SRUFDSF9TQUZFKGlu
bSwgJmlnaS0+aWdpX3JlbGlubWhlYWQsIGlubV9ucmVsZSwNCj4gPj4gPiA+PiAtICAgICAgICAg
ICAgICAgICB0aW5tKSB7DQo+ID4+ID4gPj4gLSAgICAgICAgICAgICAgICAgICAgIFNMSVNUX1JF
TU9WRV9IRUFEKCZpZ2ktPmlnaV9yZWxpbm1oZWFkLCBpbm1fbnJlbGUpOw0KPiA+PiA+ID4+IC0g
ICAgICAgICAgICAgICAgICAgICBpbm1fcmVsZWFzZV9sb2NrZWQoaW5tKTsNCj4gPj4gPiA+PiAt
ICAgICAgICAgICAgIH0NCj4gPj4gPiA+PiArICAgICAgICAgICAgIGlubV9yZWxlYXNlX2xpc3Rf
ZGVmZXJyZWQoJmlubV9mcmVlX3RtcCk7DQo+ID4+ID4gPj4gICAgICAgfQ0KPiA+PiA+ID4+IC0N
Cj4gPj4gPiA+PiAgICAgICBJR01QX1VOTE9DSygpOw0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiAg
fQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gQEAgLTY4NCwxMSArNjc1LDYg
QEAgaWdpX2RlbGV0ZV9sb2NrZWQoY29uc3Qgc3RydWN0IGlmbmV0ICppZnApDQo+ID4+ID4gPj4g
ICAgICAgICAgICAgICAgICAgICAgIG1idWZxX2RyYWluKCZpZ2ktPmlnaV9ncSk7DQo+ID4+ID4g
Pj4NCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAgICAgICAgTElTVF9SRU1PVkUoaWdpLCBpZ2lf
bGluayk7DQo+ID4+ID4gPj4gLQ0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgICAgICBLQVNT
RVJUKFNMSVNUX0VNUFRZKCZpZ2ktPmlnaV9yZWxpbm1oZWFkKSwNCj4gPj4gPiA+PiAtICAgICAg
ICAgICAgICAgICAgICAgICAgICgiJXM6IHRoZXJlIGFyZSBkYW5nbGluZyBpbl9tdWx0aSByZWZl
cmVuY2VzIiwNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgIF9fZnVuY19fKSk7
DQo+ID4+ID4gPj4gLQ0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICAgICAgICBmcmVlKGlnaSwg
TV9JR01QKTsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOw0KPiA+PiA+
ID4+ICAgICAgICAgICAgICAgfQ0KPiA+PiA+ID4+IEBAIC03MjIsNyArNzA4LDcgQEAgaWdtcF9p
bnB1dF92MV9xdWVyeShzdHJ1Y3QgaWZuZXQgKmlmcCwgY29uc3Qgc3RydWN0IGlwDQo+ID4+ID4g
Pj4gICAgICAgfQ0KPiA+PiA+ID4+ICAgICAgIElHTVBTVEFUX0lOQyhpZ3BzX3Jjdl9nZW5fcXVl
cmllcyk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAtICAgICBJTl9NVUxUSV9MT0NLKCk7DQo+ID4+
ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLKCk7DQo+ID4+ID4gPj4gICAgICAgSUdNUF9M
T0NLKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBpZ2kgPSAoKHN0cnVjdCBpbl9pZmlu
Zm8gKilpZnAtPmlmX2FmZGF0YVtBRl9JTkVUXSktPmlpX2lnbXA7DQo+ID4+ID4gPj4gQEAgLTc3
OCw3ICs3NjQsNyBAQCBpZ21wX2lucHV0X3YxX3F1ZXJ5KHN0cnVjdCBpZm5ldCAqaWZwLCBjb25z
dCBzdHJ1Y3QgaXANCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICBvdXRfbG9ja2VkOg0KPiA+PiA+ID4+
ICAgICAgIElHTVBfVU5MT0NLKCk7DQo+ID4+ID4gPj4gLSAgICAgSU5fTVVMVElfVU5MT0NLKCk7
DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9VTkxPQ0soKTsNCj4gPj4gPiA+Pg0KPiA+
PiA+ID4+ICAgICAgIHJldHVybiAoMCk7DQo+ID4+ID4gPj4gIH0NCj4gPj4gPiA+PiBAQCAtODE2
LDcgKzgwMiw3IEBAIGlnbXBfaW5wdXRfdjJfcXVlcnkoc3RydWN0IGlmbmV0ICppZnAsIGNvbnN0
IHN0cnVjdCBpcA0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgSUdNUFNUQVRfSU5DKGlncHNfcmN2
X2dyb3VwX3F1ZXJpZXMpOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+
IC0gICAgIElOX01VTFRJX0xPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xP
Q0soKTsNCj4gPj4gPiA+PiAgICAgICBJR01QX0xPQ0soKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+
ICAgICAgIGlnaSA9ICgoc3RydWN0IGluX2lmaW5mbyAqKWlmcC0+aWZfYWZkYXRhW0FGX0lORVRd
KS0+aWlfaWdtcDsNCj4gPj4gPiA+PiBAQCAtODcyLDcgKzg1OCw3IEBAIGlnbXBfaW5wdXRfdjJf
cXVlcnkoc3RydWN0IGlmbmV0ICppZnAsIGNvbnN0IHN0cnVjdCBpcA0KPiA+PiA+ID4+DQo+ID4+
ID4gPj4gIG91dF9sb2NrZWQ6DQo+ID4+ID4gPj4gICAgICAgSUdNUF9VTkxPQ0soKTsNCj4gPj4g
PiA+PiAtICAgICBJTl9NVUxUSV9VTkxPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9M
SVNUX1VOTE9DSygpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgcmV0dXJuICgwKTsNCj4g
Pj4gPiA+PiAgfQ0KPiA+PiA+ID4+IEBAIC04OTksNyArODg1LDcgQEAgaWdtcF92Ml91cGRhdGVf
Z3JvdXAoc3RydWN0IGluX211bHRpICppbm0sIGNvbnN0IGludCB0DQo+ID4+ID4gPj4gICAgICAg
Q1RSNChLVFJfSUdNUFYzLCAiMHglMDh4OiAlcy8lcyB0aW1lcj0lZCIsIF9fZnVuY19fLA0KPiA+
PiA+ID4+ICAgICAgICAgICBudG9obChpbm0tPmlubV9hZGRyLnNfYWRkciksIGlubS0+aW5tX2lm
cC0+aWZfeG5hbWUsIHRpbWVyKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJ
X0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VS
VCgpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgc3dpdGNoIChpbm0tPmlubV9zdGF0ZSkg
ew0KPiA+PiA+ID4+ICAgICAgIGNhc2UgSUdNUF9OT1RfTUVNQkVSOg0KPiA+PiA+ID4+IEBAIC0x
MDExLDcgKzk5Nyw3IEBAIGlnbXBfaW5wdXRfdjNfcXVlcnkoc3RydWN0IGlmbmV0ICppZnAsIGNv
bnN0IHN0cnVjdCBpcA0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICAgICAgICBJR01QU1RBVF9J
TkMoaWdwc19yY3ZfZ3NyX3F1ZXJpZXMpOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+Pg0K
PiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxU
SV9MSVNUX0xPQ0soKTsNCj4gPj4gPiA+PiAgICAgICBJR01QX0xPQ0soKTsNCj4gPj4gPiA+Pg0K
PiA+PiA+ID4+ICAgICAgIGlnaSA9ICgoc3RydWN0IGluX2lmaW5mbyAqKWlmcC0+aWZfYWZkYXRh
W0FGX0lORVRdKS0+aWlfaWdtcDsNCj4gPj4gPiA+PiBAQCAtMTA5Miw3ICsxMDc4LDcgQEAgaWdt
cF9pbnB1dF92M19xdWVyeShzdHJ1Y3QgaWZuZXQgKmlmcCwgY29uc3Qgc3RydWN0IGlwDQo+ID4+
ID4gPj4NCj4gPj4gPiA+PiAgb3V0X2xvY2tlZDoNCj4gPj4gPiA+PiAgICAgICBJR01QX1VOTE9D
SygpOw0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX1VOTE9DSygpOw0KPiA+PiA+ID4+ICsgICAg
IElOX01VTFRJX0xJU1RfVU5MT0NLKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICByZXR1
cm4gKDApOw0KPiA+PiA+ID4+ICB9DQo+ID4+ID4gPj4gQEAgLTExMDksNyArMTA5NSw3IEBAIGln
bXBfaW5wdXRfdjNfZ3JvdXBfcXVlcnkoc3RydWN0IGluX211bHRpICppbm0sIHN0cnVjdA0KPiA+
PiA+ID4+ICAgICAgIGludCAgICAgICAgICAgICAgICAgICAgICByZXR2YWw7DQo+ID4+ID4gPj4g
ICAgICAgdWludDE2X3QgICAgICAgICAgICAgICAgIG5zcmM7DQo+ID4+ID4gPj4NCj4gPj4gPiA+
PiAtICAgICBJTl9NVUxUSV9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+ICsgICAgIElOX01VTFRJ
X0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiAgICAgICBJR01QX0xPQ0tfQVNTRVJUKCk7
DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICByZXR2YWwgPSAwOw0KPiA+PiA+ID4+IEBAIC0x
MjQ2LDcgKzEyMzIsNyBAQCBpZ21wX2lucHV0X3YxX3JlcG9ydChzdHJ1Y3QgaWZuZXQgKmlmcCwg
Lypjb25zdCovIHN0cnUNCj4gPj4gPiA+PiAgICAgICAgKiBJZiB3ZSBhcmUgYSBtZW1iZXIgb2Yg
dGhpcyBncm91cCwgYW5kIG91ciBtZW1iZXJzaGlwIHNob3VsZCBiZQ0KPiA+PiA+ID4+ICAgICAg
ICAqIHJlcG9ydGVkLCBzdG9wIG91ciBncm91cCB0aW1lciBhbmQgdHJhbnNpdGlvbiB0byB0aGUg
J2xhenknIHN0YXRlLg0KPiA+PiA+ID4+ICAgICAgICAqLw0KPiA+PiA+ID4+IC0gICAgIElOX01V
TFRJX0xPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0soKTsNCj4gPj4g
PiA+PiAgICAgICBpbm0gPSBpbm1fbG9va3VwKGlmcCwgaWdtcC0+aWdtcF9ncm91cCk7DQo+ID4+
ID4gPj4gICAgICAgaWYgKGlubSAhPSBOVUxMKSB7DQo+ID4+ID4gPj4gICAgICAgICAgICAgICBz
dHJ1Y3QgaWdtcF9pZnNvZnRjICppZ2k7DQo+ID4+ID4gPj4gQEAgLTEzMDUsNyArMTI5MSw3IEBA
IGlnbXBfaW5wdXRfdjFfcmVwb3J0KHN0cnVjdCBpZm5ldCAqaWZwLCAvKmNvbnN0Ki8gc3RydQ0K
PiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICBvdXRfbG9ja2VkOg0KPiA+
PiA+ID4+IC0gICAgIElOX01VTFRJX1VOTE9DSygpOw0KPiA+PiA+ID4+ICsgICAgIElOX01VTFRJ
X0xJU1RfVU5MT0NLKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICByZXR1cm4gKDApOw0K
PiA+PiA+ID4+ICB9DQo+ID4+ID4gPj4gQEAgLTEzNzMsNyArMTM1OSw3IEBAIGlnbXBfaW5wdXRf
djJfcmVwb3J0KHN0cnVjdCBpZm5ldCAqaWZwLCAvKmNvbnN0Ki8gc3RydQ0KPiA+PiA+ID4+ICAg
ICAgICAqIHJlcG9ydGVkLCBhbmQgb3VyIGdyb3VwIHRpbWVyIGlzIHBlbmRpbmcgb3IgYWJvdXQg
dG8gYmUgcmVzZXQsDQo+ID4+ID4gPj4gICAgICAgICogc3RvcCBvdXIgZ3JvdXAgdGltZXIgYnkg
dHJhbnNpdGlvbmluZyB0byB0aGUgJ2xhenknIHN0YXRlLg0KPiA+PiA+ID4+ICAgICAgICAqLw0K
PiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0soKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxU
SV9MSVNUX0xPQ0soKTsNCj4gPj4gPiA+PiAgICAgICBpbm0gPSBpbm1fbG9va3VwKGlmcCwgaWdt
cC0+aWdtcF9ncm91cCk7DQo+ID4+ID4gPj4gICAgICAgaWYgKGlubSAhPSBOVUxMKSB7DQo+ID4+
ID4gPj4gICAgICAgICAgICAgICBzdHJ1Y3QgaWdtcF9pZnNvZnRjICppZ2k7DQo+ID4+ID4gPj4g
QEAgLTE0MTgsNyArMTQwNCw3IEBAIGlnbXBfaW5wdXRfdjJfcmVwb3J0KHN0cnVjdCBpZm5ldCAq
aWZwLCAvKmNvbnN0Ki8gc3RydQ0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+Pg0KPiA+PiA+
ID4+ICBvdXRfbG9ja2VkOg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX1VOTE9DSygpOw0KPiA+
PiA+ID4+ICsgICAgIElOX01VTFRJX0xJU1RfVU5MT0NLKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+
PiAgICAgICByZXR1cm4gKDApOw0KPiA+PiA+ID4+ICB9DQo+ID4+ID4gPj4gQEAgLTE2NDcsNiAr
MTYzMyw3IEBAIGlnbXBfZmFzdHRpbW9fdm5ldCh2b2lkKQ0KPiA+PiA+ID4+ICAgICAgIHN0cnVj
dCBpZ21wX2lmc29mdGMgICAgICppZ2k7DQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGlmbXVsdGlh
ZGRyICAgICAgKmlmbWE7DQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGluX211bHRpICAgICAgICAg
KmlubTsNCj4gPj4gPiA+PiArICAgICBzdHJ1Y3QgaW5fbXVsdGlfaGVhZCBpbm1fZnJlZV90bXA7
DQo+ID4+ID4gPj4gICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAgIGxvb3AsIHVyaV9mYXN0
aHo7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBsb29wID0gMDsNCj4gPj4gPiA+PiBAQCAt
MTY2Miw3ICsxNjQ5LDggQEAgaWdtcF9mYXN0dGltb192bmV0KHZvaWQpDQo+ID4+ID4gPj4gICAg
ICAgICAgICFWX3N0YXRlX2NoYW5nZV90aW1lcnNfcnVubmluZykNCj4gPj4gPiA+PiAgICAgICAg
ICAgICAgIHJldHVybjsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0so
KTsNCj4gPj4gPiA+PiArICAgICBTTElTVF9JTklUKCZpbm1fZnJlZV90bXApOw0KPiA+PiA+ID4+
ICsgICAgIElOX01VTFRJX0xJU1RfTE9DSygpOw0KPiA+PiA+ID4+ICAgICAgIElHTVBfTE9DSygp
Ow0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgLyoNCj4gPj4gPiA+PiBAQCAtMTcyMCw3ICsx
NzA4LDcgQEAgaWdtcF9mYXN0dGltb192bmV0KHZvaWQpDQo+ID4+ID4gPj4gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGlnaS0+aWdpX3ZlcnNpb24pOw0KPiA+PiA+ID4+ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAg
ICAgICAgICBjYXNlIElHTVBfVkVSU0lPTl8zOg0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGlnbXBfdjNfcHJvY2Vzc19ncm91cF90aW1lcnMoaWdpLCAmcXJxLA0KPiA+
PiA+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbXBfdjNfcHJvY2Vzc19ncm91
cF90aW1lcnMoJmlubV9mcmVlX3RtcCwgJnFycSwNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnNjcSwgaW5tLCB1cmlfZmFzdGh6KTsNCj4gPj4gPiA+PiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCj4gPj4gPiA+PiAgICAgICAgICAgICAg
ICAgICAgICAgfQ0KPiA+PiA+ID4+IEBAIC0xNzI4LDggKzE3MTYsNiBAQCBpZ21wX2Zhc3R0aW1v
X3ZuZXQodm9pZCkNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIElGX0FERFJfUlVOTE9DSyhpZnAp
Ow0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgICAgICAgICBpZiAoaWdpLT5pZ2lfdmVyc2lv
biA9PSBJR01QX1ZFUlNJT05fMykgew0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgICAgICBz
dHJ1Y3QgaW5fbXVsdGkgICAgICAgICAqdGlubTsNCj4gPj4gPiA+PiAtDQo+ID4+ID4gPj4gICAg
ICAgICAgICAgICAgICAgICAgIGlnbXBfZGlzcGF0Y2hfcXVldWUoJnFycSwgMCwgbG9vcCk7DQo+
ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgIGlnbXBfZGlzcGF0Y2hfcXVldWUoJnNjcSwg
MCwgbG9vcCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiBAQCAtMTczNywxOCArMTcyMywxMyBAQCBp
Z21wX2Zhc3R0aW1vX3ZuZXQodm9pZCkNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAgICAgICAg
ICogRnJlZSB0aGUgaW5fbXVsdGkgcmVmZXJlbmNlKHMpIGZvciB0aGlzDQo+ID4+ID4gPj4gICAg
ICAgICAgICAgICAgICAgICAgICAqIElHTVAgbGlmZWN5Y2xlLg0KPiA+PiA+ID4+ICAgICAgICAg
ICAgICAgICAgICAgICAgKi8NCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgU0xJU1Rf
Rk9SRUFDSF9TQUZFKGlubSwgJmlnaS0+aWdpX3JlbGlubWhlYWQsDQo+ID4+ID4gPj4gLSAgICAg
ICAgICAgICAgICAgICAgICAgICBpbm1fbnJlbGUsIHRpbm0pIHsNCj4gPj4gPiA+PiAtICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBTTElTVF9SRU1PVkVfSEVBRCgmaWdpLT5pZ2lfcmVsaW5t
aGVhZCwNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5tX25y
ZWxlKTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbm1fcmVsZWFz
ZV9sb2NrZWQoaW5tKTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgfQ0KPiA+PiA+
ID4+ICsgICAgICAgICAgICAgICAgICAgICBpbm1fcmVsZWFzZV9saXN0X2RlZmVycmVkKCZpbm1f
ZnJlZV90bXApOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgfQ0KPiA+PiA+ID4+ICAgICAgIH0N
Cj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICBvdXRfbG9ja2VkOg0KPiA+PiA+ID4+ICAgICAgIElHTVBf
VU5MT0NLKCk7DQo+ID4+ID4gPj4gLSAgICAgSU5fTVVMVElfVU5MT0NLKCk7DQo+ID4+ID4gPj4g
KyAgICAgSU5fTVVMVElfTElTVF9VTkxPQ0soKTsNCj4gPj4gPiA+PiAgfQ0KPiA+PiA+ID4+DQo+
ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gQEAgLTE3NjAsNyArMTc0MSw3IEBAIGlnbXBfdjF2Ml9w
cm9jZXNzX2dyb3VwX3RpbWVyKHN0cnVjdCBpbl9tdWx0aSAqaW5tLCBjbw0KPiA+PiA+ID4+ICB7
DQo+ID4+ID4gPj4gICAgICAgaW50IHJlcG9ydF90aW1lcl9leHBpcmVkOw0KPiA+PiA+ID4+DQo+
ID4+ID4gPj4gLSAgICAgSU5fTVVMVElfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArICAgICBJ
Tl9NVUxUSV9MSVNUX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gICAgICAgSUdNUF9MT0NLX0FT
U0VSVCgpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgaWYgKGlubS0+aW5tX3RpbWVyID09
IDApIHsNCj4gPj4gPiA+PiBAQCAtMTgwMiwxNCArMTc4MywxNCBAQCBpZ21wX3YxdjJfcHJvY2Vz
c19ncm91cF90aW1lcihzdHJ1Y3QgaW5fbXVsdGkgKmlubSwgY28NCj4gPj4gPiA+PiAgICogTm90
ZTogVW5sb2NrZWQgcmVhZCBmcm9tIGlnaS4NCj4gPj4gPiA+PiAgICovDQo+ID4+ID4gPj4gIHN0
YXRpYyB2b2lkDQo+ID4+ID4gPj4gLWlnbXBfdjNfcHJvY2Vzc19ncm91cF90aW1lcnMoc3RydWN0
IGlnbXBfaWZzb2Z0YyAqaWdpLA0KPiA+PiA+ID4+ICtpZ21wX3YzX3Byb2Nlc3NfZ3JvdXBfdGlt
ZXJzKHN0cnVjdCBpbl9tdWx0aV9oZWFkICppbm1oLA0KPiA+PiA+ID4+ICAgICAgc3RydWN0IG1i
dWZxICpxcnEsIHN0cnVjdCBtYnVmcSAqc2NxLA0KPiA+PiA+ID4+ICAgICAgc3RydWN0IGluX211
bHRpICppbm0sIGNvbnN0IGludCB1cmlfZmFzdGh6KQ0KPiA+PiA+ID4+ICB7DQo+ID4+ID4gPj4g
ICAgICAgaW50IHF1ZXJ5X3Jlc3BvbnNlX3RpbWVyX2V4cGlyZWQ7DQo+ID4+ID4gPj4gICAgICAg
aW50IHN0YXRlX2NoYW5nZV9yZXRyYW5zbWl0X3RpbWVyX2V4cGlyZWQ7DQo+ID4+ID4gPj4NCj4g
Pj4gPiA+PiAtICAgICBJTl9NVUxUSV9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+ICsgICAgIElO
X01VTFRJX0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiAgICAgICBJR01QX0xPQ0tfQVNT
RVJUKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBxdWVyeV9yZXNwb25zZV90aW1lcl9l
eHBpcmVkID0gMDsNCj4gPj4gPiA+PiBAQCAtMTkwNyw4ICsxODg4LDcgQEAgaWdtcF92M19wcm9j
ZXNzX2dyb3VwX3RpbWVycyhzdHJ1Y3QgaWdtcF9pZnNvZnRjICppZ2ksDQo+ID4+ID4gPj4gICAg
ICAgICAgICAgICAgICAgICAgIGlmIChpbm0tPmlubV9zdGF0ZSA9PSBJR01QX0xFQVZJTkdfTUVN
QkVSICYmDQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgICAgICBpbm0tPmlubV9zY3J2
ID09IDApIHsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbm0tPmlu
bV9zdGF0ZSA9IElHTVBfTk9UX01FTUJFUjsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBTTElTVF9JTlNFUlRfSEVBRCgmaWdpLT5pZ2lfcmVsaW5taGVhZCwNCj4gPj4g
PiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5tLCBpbm1fbnJlbGUpOw0K
PiA+PiA+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlubV9yZWxlX2xvY2tlZChp
bm1oLCBpbm0pOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICAgICAgICB9DQo+ID4+ID4gPj4g
ICAgICAgICAgICAgICB9DQo+ID4+ID4gPj4gICAgICAgICAgICAgICBicmVhazsNCj4gPj4gPiA+
PiBAQCAtMTkyOSw3ICsxOTA5LDcgQEAgc3RhdGljIHZvaWQNCj4gPj4gPiA+PiAgaWdtcF92M19z
dXBwcmVzc19ncm91cF9yZWNvcmQoc3RydWN0IGluX211bHRpICppbm0pDQo+ID4+ID4gPj4gIHsN
Cj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0tfQVNTRVJUKCk7DQo+ID4+
ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+DQo+ID4+
ID4gPj4gICAgICAgS0FTU0VSVChpbm0tPmlubV9pZ2ktPmlnaV92ZXJzaW9uID09IElHTVBfVkVS
U0lPTl8zLA0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgKCIlczogbm90IElHTVB2MyBtb2RlIG9u
IGxpbmsiLCBfX2Z1bmNfXykpOw0KPiA+PiA+ID4+IEBAIC0yMDAzLDEzICsxOTgzLDE1IEBAIGln
bXBfdjNfY2FuY2VsX2xpbmtfdGltZXJzKHN0cnVjdCBpZ21wX2lmc29mdGMgKmlnaSkNCj4gPj4g
PiA+PiAgew0KPiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpZm11bHRpYWRkciAgICAgICppZm1hOw0K
PiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpZm5ldCAgICAgICAgICAgICppZnA7DQo+ID4+ID4gPj4g
LSAgICAgc3RydWN0IGluX211bHRpICAgICAgICAgKmlubSwgKnRpbm07DQo+ID4+ID4gPj4gKyAg
ICAgc3RydWN0IGluX211bHRpICAgICAgICAgKmlubTsNCj4gPj4gPiA+PiArICAgICBzdHJ1Y3Qg
aW5fbXVsdGlfaGVhZCBpbm1fZnJlZV90bXA7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBD
VFIzKEtUUl9JR01QVjMsICIlczogY2FuY2VsIHYzIHRpbWVycyBvbiBpZnAgJXAoJXMpIiwgX19m
dW5jX18sDQo+ID4+ID4gPj4gICAgICAgICAgIGlnaS0+aWdpX2lmcCwgaWdpLT5pZ2lfaWZwLT5p
Zl94bmFtZSk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAtICAgICBJTl9NVUxUSV9MT0NLX0FTU0VS
VCgpOw0KPiA+PiA+ID4+ICsgICAgIElOX01VTFRJX0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4g
PiA+PiAgICAgICBJR01QX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgU0xJU1RfSU5J
VCgmaW5tX2ZyZWVfdG1wKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAgIC8qDQo+ID4+ID4g
Pj4gICAgICAgICogU3RvcCB0aGUgdjMgR2VuZXJhbCBRdWVyeSBSZXNwb25zZSBvbiB0aGlzIGxp
bmsgc3RvbmUgZGVhZC4NCj4gPj4gPiA+PiBAQCAtMjA1MCw3ICsyMDMyLDcgQEAgaWdtcF92M19j
YW5jZWxfbGlua190aW1lcnMoc3RydWN0IGlnbXBfaWZzb2Z0YyAqaWdpKQ0KPiA+PiA+ID4+ICAg
ICAgICAgICAgICAgICAgICAgICAgKiBtZXNzYWdlIGlzIHNlbnQgdXBzdHJlYW0gdG8gdGhlIG9s
ZCBxdWVyaWVyIC0tDQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgICAqIHRyYW5zaXRp
b24gdG8gTk9UIHdvdWxkIGxvc2UgdGhlIGxlYXZlIGFuZCByYWNlLg0KPiA+PiA+ID4+ICAgICAg
ICAgICAgICAgICAgICAgICAgKi8NCj4gPj4gPiA+PiAtICAgICAgICAgICAgICAgICAgICAgU0xJ
U1RfSU5TRVJUX0hFQUQoJmlnaS0+aWdpX3JlbGlubWhlYWQsIGlubSwgaW5tX25yZWxlKTsNCj4g
Pj4gPiA+PiArICAgICAgICAgICAgICAgICAgICAgaW5tX3JlbGVfbG9ja2VkKCZpbm1fZnJlZV90
bXAsIGlubSk7DQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgIC8qIEZBTExUSFJPVUdI
ICovDQo+ID4+ID4gPj4gICAgICAgICAgICAgICBjYXNlIElHTVBfR19RVUVSWV9QRU5ESU5HX01F
TUJFUjoNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGNhc2UgSUdNUF9TR19RVUVSWV9QRU5ESU5H
X01FTUJFUjoNCj4gPj4gPiA+PiBAQCAtMjA2OSwxMCArMjA1MSw4IEBAIGlnbXBfdjNfY2FuY2Vs
X2xpbmtfdGltZXJzKHN0cnVjdCBpZ21wX2lmc29mdGMgKmlnaSkNCj4gPj4gPiA+PiAgICAgICAg
ICAgICAgIG1idWZxX2RyYWluKCZpbm0tPmlubV9zY3EpOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4g
Pj4gPiA+PiAgICAgICBJRl9BRERSX1JVTkxPQ0soaWZwKTsNCj4gPj4gPiA+PiAtICAgICBTTElT
VF9GT1JFQUNIX1NBRkUoaW5tLCAmaWdpLT5pZ2lfcmVsaW5taGVhZCwgaW5tX25yZWxlLCB0aW5t
KSB7DQo+ID4+ID4gPj4gLSAgICAgICAgICAgICBTTElTVF9SRU1PVkVfSEVBRCgmaWdpLT5pZ2lf
cmVsaW5taGVhZCwgaW5tX25yZWxlKTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgIGlubV9yZWxl
YXNlX2xvY2tlZChpbm0pOw0KPiA+PiA+ID4+IC0gICAgIH0NCj4gPj4gPiA+PiArDQo+ID4+ID4g
Pj4gKyAgICAgaW5tX3JlbGVhc2VfbGlzdF9kZWZlcnJlZCgmaW5tX2ZyZWVfdG1wKTsNCj4gPj4g
PiA+PiAgfQ0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gQEAgLTIxOTksNyAr
MjE3OSw3IEBAIGlnbXBfdjF2Ml9xdWV1ZV9yZXBvcnQoc3RydWN0IGluX211bHRpICppbm0sIGNv
bnN0IGludA0KPiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpcCAgICAgICAgICAgICAgICppcDsNCj4g
Pj4gPiA+PiAgICAgICBzdHJ1Y3QgbWJ1ZiAgICAgICAgICAgICAqbTsNCj4gPj4gPiA+Pg0KPiA+
PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgSU5f
TVVMVElfTElTVF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+ICAgICAgIElHTVBfTE9DS19BU1NF
UlQoKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAgIGlmcCA9IGlubS0+aW5tX2lmcDsNCj4g
Pj4gPiA+PiBAQCAtMjI3NiwxMCArMjI1Niw4IEBAIGlnbXBfY2hhbmdlX3N0YXRlKHN0cnVjdCBp
bl9tdWx0aSAqaW5tKQ0KPiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpZm5ldCAqaWZwOw0KPiA+PiA+
ID4+ICAgICAgIGludCBlcnJvcjsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJ
X0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gLQ0KPiA+PiA+ID4+ICAgICAgIGVycm9yID0gMDsN
Cj4gPj4gPiA+PiAtDQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTE9DS19BU1NFUlQoKTsNCj4g
Pj4gPiA+PiAgICAgICAvKg0KPiA+PiA+ID4+ICAgICAgICAqIFRyeSB0byBkZXRlY3QgaWYgdGhl
IHVwcGVyIGxheWVyIGp1c3QgYXNrZWQgdXMgdG8gY2hhbmdlIHN0YXRlDQo+ID4+ID4gPj4gICAg
ICAgICogZm9yIGFuIGludGVyZmFjZSB3aGljaCBoYXMgbm93IGdvbmUgYXdheS4NCj4gPj4gPiA+
PiBAQCAtMjM3OSw5ICsyMzU3LDEwIEBAIGlnbXBfaW5pdGlhbF9qb2luKHN0cnVjdCBpbl9tdWx0
aSAqaW5tLCBzdHJ1Y3QgaWdtcF9pZg0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgICogZ3JvdXAg
YXJvdW5kIGZvciB0aGUgZmluYWwgSU5DTFVERSB7fSBlbnF1ZXVlLg0KPiA+PiA+ID4+ICAgICAg
ICAgICAgICAgICovDQo+ID4+ID4gPj4gICAgICAgICAgICAgICBpZiAoaWdpLT5pZ2lfdmVyc2lv
biA9PSBJR01QX1ZFUlNJT05fMyAmJg0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgIGlubS0+
aW5tX3N0YXRlID09IElHTVBfTEVBVklOR19NRU1CRVIpDQo+ID4+ID4gPj4gLSAgICAgICAgICAg
ICAgICAgICAgIGlubV9yZWxlYXNlX2xvY2tlZChpbm0pOw0KPiA+PiA+ID4+IC0NCj4gPj4gPiA+
PiArICAgICAgICAgICAgICAgICBpbm0tPmlubV9zdGF0ZSA9PSBJR01QX0xFQVZJTkdfTUVNQkVS
KSB7DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICAgICAgICAgIE1QQVNTKGlubS0+aW5tX3JlZmNv
dW50ID4gMSk7DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICAgICAgICAgIGlubV9yZWxlX2xvY2tl
ZChOVUxMLCBpbm0pOw0KPiA+PiA+ID4+ICsgICAgICAgICAgICAgfQ0KPiA+PiA+ID4+ICAgICAg
ICAgICAgICAgaW5tLT5pbm1fc3RhdGUgPSBJR01QX1JFUE9SVElOR19NRU1CRVI7DQo+ID4+ID4g
Pj4NCj4gPj4gPiA+PiAgICAgICAgICAgICAgIHN3aXRjaCAoaWdpLT5pZ2lfdmVyc2lvbikgew0K
PiA+PiA+ID4+IEBAIC0yNDczLDcgKzI0NTIsNyBAQCBpZ21wX2hhbmRsZV9zdGF0ZV9jaGFuZ2Uo
c3RydWN0IGluX211bHRpICppbm0sIHN0cnVjdA0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAg
aWZwID0gaW5tLT5pbm1faWZwOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gLSAgICAgSU5fTVVMVElf
TE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0tfQVNTRVJU
KCk7DQo+ID4+ID4gPj4gICAgICAgSUdNUF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+DQo+ID4+
ID4gPj4gICAgICAgS0FTU0VSVChpZ2kgJiYgaWdpLT5pZ2lfaWZwID09IGlmcCwgKCIlczogaW5j
b25zaXN0ZW50IGlmcCIsIF9fZnVuY19fKSk7DQo+ID4+ID4gPj4gQEAgLTI1MzEsNyArMjUxMCw3
IEBAIGlnbXBfZmluYWxfbGVhdmUoc3RydWN0IGluX211bHRpICppbm0sIHN0cnVjdCBpZ21wX2lm
cw0KPiA+PiA+ID4+ICAgICAgICAgICBfX2Z1bmNfXywgbnRvaGwoaW5tLT5pbm1fYWRkci5zX2Fk
ZHIpLCBpbm0tPmlubV9pZnAsDQo+ID4+ID4gPj4gICAgICAgICAgIGlubS0+aW5tX2lmcC0+aWZf
eG5hbWUpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gLSAgICAgSU5fTVVMVElfTE9DS19BU1NFUlQo
KTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4g
Pj4gICAgICAgSUdNUF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAg
c3dpdGNoIChpbm0tPmlubV9zdGF0ZSkgew0KPiA+PiA+ID4+IEBAIC0yNjU4LDcgKzI2MzcsNyBA
QCBpZ21wX3YzX2VucXVldWVfZ3JvdXBfcmVjb3JkKHN0cnVjdCBtYnVmcSAqbXEsIHN0cnVjdA0K
PiA+PiA+ID4+ICAgICAgIGluX2FkZHJfdCAgICAgICAgICAgICAgICBuYWRkcjsNCj4gPj4gPiA+
PiAgICAgICB1aW50OF90ICAgICAgICAgICAgICAgICAgbW9kZTsNCj4gPj4gPiA+Pg0KPiA+PiA+
ID4+IC0gICAgIElOX01VTFRJX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVM
VElfTElTVF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgZXJyb3Ig
PSAwOw0KPiA+PiA+ID4+ICAgICAgIGlmcCA9IGlubS0+aW5tX2lmcDsNCj4gPj4gPiA+PiBAQCAt
MzAxOCw3ICsyOTk3LDcgQEAgaWdtcF92M19lbnF1ZXVlX2ZpbHRlcl9jaGFuZ2Uoc3RydWN0IG1i
dWZxICptcSwgc3RydWN0DQo+ID4+ID4gPj4gICAgICAgdWludDhfdCAgICAgICAgICAgICAgICAg
IG1vZGUsIG5vdywgdGhlbjsNCj4gPj4gPiA+PiAgICAgICByZWN0eXBlX3QgICAgICAgICAgICAg
ICAgY3J0LCBkcnQsIG5ydDsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xP
Q0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VSVCgp
Ow0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgaWYgKGlubS0+aW5tX25zcmMgPT0gMCB8fA0K
PiA+PiA+ID4+ICAgICAgICAgICAoaW5tLT5pbm1fc3RbMF0uaXNzX2FzbSA+IDAgJiYgaW5tLT5p
bm1fc3RbMV0uaXNzX2FzbSA+IDApKQ0KPiA+PiA+ID4+IEBAIC0zMjIxLDcgKzMyMDAsNyBAQCBp
Z21wX3YzX21lcmdlX3N0YXRlX2NoYW5nZXMoc3RydWN0IGluX211bHRpICppbm0sIHN0cnUNCj4g
Pj4gPiA+PiAgICAgICBkb21lcmdlID0gMDsNCj4gPj4gPiA+PiAgICAgICByZWNzbGVuID0gMDsN
Cj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0tfQVNTRVJUKCk7DQo+ID4+
ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+ICAgICAg
IElHTVBfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAgIC8qDQo+ID4+
ID4gPj4gQEAgLTMzMjAsNyArMzI5OSw3IEBAIGlnbXBfdjNfZGlzcGF0Y2hfZ2VuZXJhbF9xdWVy
eShzdHJ1Y3QgaWdtcF9pZnNvZnRjICppZw0KPiA+PiA+ID4+ICAgICAgIHN0cnVjdCBpbl9tdWx0
aSAgICAgICAgICppbm07DQo+ID4+ID4gPj4gICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAg
IHJldHZhbCwgbG9vcDsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0tf
QVNTRVJUKCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VSVCgpOw0K
PiA+PiA+ID4+ICAgICAgIElHTVBfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+
ICAgICAgIEtBU1NFUlQoaWdpLT5pZ2lfdmVyc2lvbiA9PSBJR01QX1ZFUlNJT05fMywNCj4gPj4g
PiA+PiBAQCAtMzYzMiw3ICszNjExLDYgQEAgREJfU0hPV19DT01NQU5EKGlnaV9saXN0LCBkYl9z
aG93X2lnaV9saXN0KQ0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgZGJfcHJpbnRmKCIgICAgcWkg
JXVcbiIsIGlnaS0+aWdpX3FpKTsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGRiX3ByaW50Zigi
ICAgIHFyaSAldVxuIiwgaWdpLT5pZ2lfcXJpKTsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGRi
X3ByaW50ZigiICAgIHVyaSAldVxuIiwgaWdpLT5pZ2lfdXJpKTsNCj4gPj4gPiA+PiAtICAgICAg
ICAgICAgIC8qIFNMSVNUX0hFQUQoLGluX211bHRpKSAgIGlnaV9yZWxpbm1oZWFkICovDQo+ID4+
ID4gPj4gICAgICAgICAgICAgICAvKiBzdHJ1Y3QgbWJ1ZnEgICAgaWdpX2dxOyAqLw0KPiA+PiA+
ID4+ICAgICAgICAgICAgICAgZGJfcHJpbnRmKCJcbiIpOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4g
Pj4gPiA+Pg0KPiA+PiA+ID4+IE1vZGlmaWVkOiBoZWFkL3N5cy9uZXRpbmV0L2lnbXBfdmFyLmgN
Cj4gPj4gPiA+PiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gPj4gPiA+PiAtLS0gaGVhZC9zeXMv
bmV0aW5ldC9pZ21wX3Zhci5oICAgICAgIFdlZCBNYXkgIDIgMTc6NDE6MDAgMjAxOCAgICAgICAg
KHIzMzMxNzQpDQo+ID4+ID4gPj4gKysrIGhlYWQvc3lzL25ldGluZXQvaWdtcF92YXIuaCAgICAg
ICBXZWQgTWF5ICAyIDE5OjM2OjI5IDIwMTggICAgICAgIChyMzMzMTc1KQ0KPiA+PiA+ID4+IEBA
IC0yMTQsNyArMjE0LDYgQEAgc3RydWN0IGlnbXBfaWZzb2Z0YyB7DQo+ID4+ID4gPj4gICAgICAg
dWludDMyX3QgaWdpX3FpOyAgICAgICAgLyogSUdNUHYzIFF1ZXJ5IEludGVydmFsIChzKSAqLw0K
PiA+PiA+ID4+ICAgICAgIHVpbnQzMl90IGlnaV9xcmk7ICAgICAgIC8qIElHTVB2MyBRdWVyeSBS
ZXNwb25zZSBJbnRlcnZhbCAocykgKi8NCj4gPj4gPiA+PiAgICAgICB1aW50MzJfdCBpZ2lfdXJp
OyAgICAgICAvKiBJR01QdjMgVW5zb2xpY2l0ZWQgUmVwb3J0IEludGVydmFsIChzKSAqLw0KPiA+
PiA+ID4+IC0gICAgIFNMSVNUX0hFQUQoLGluX211bHRpKSAgIGlnaV9yZWxpbm1oZWFkOyAvKiBy
ZWxlYXNlZCBncm91cHMgKi8NCj4gPj4gPiA+PiAgICAgICBzdHJ1Y3QgbWJ1ZnEgICAgaWdpX2dx
OyAgICAgICAgIC8qIGdlbmVyYWwgcXVlcnkgcmVzcG9uc2VzIHF1ZXVlICovDQo+ID4+ID4gPj4g
IH07DQo+ID4+ID4gPj4NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IE1vZGlmaWVkOiBoZWFkL3N5cy9u
ZXRpbmV0L2luLmMNCj4gPj4gPiA+PiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gPj4gPiA+PiAt
LS0gaGVhZC9zeXMvbmV0aW5ldC9pbi5jICAgICBXZWQgTWF5ICAyIDE3OjQxOjAwIDIwMTggICAg
ICAgIChyMzMzMTc0KQ0KPiA+PiA+ID4+ICsrKyBoZWFkL3N5cy9uZXRpbmV0L2luLmMgICAgIFdl
ZCBNYXkgIDIgMTk6MzY6MjkgMjAxOCAgICAgICAgKHIzMzMxNzUpDQo+ID4+ID4gPj4gQEAgLTYz
MiwxMiArNjMyLDEwIEBAIGluX2RpZmFkZHJfaW9jdGwodV9sb25nIGNtZCwgY2FkZHJfdCBkYXRh
LCBzdHJ1Y3QgaWZuZQ0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgc3RydWN0IGluX2lmaW5mbyAq
aWk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGlpID0gKChzdHJ1Y3QgaW5f
aWZpbmZvICopaWZwLT5pZl9hZmRhdGFbQUZfSU5FVF0pOw0KPiA+PiA+ID4+IC0gICAgICAgICAg
ICAgSU5fTVVMVElfTE9DSygpOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgaWYgKGlpLT5paV9h
bGxob3N0cykgew0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgICAgICAodm9pZClpbl9sZWF2
ZWdyb3VwX2xvY2tlZChpaS0+aWlfYWxsaG9zdHMsIE5VTEwpOw0KPiA+PiA+ID4+ICsgICAgICAg
ICAgICAgICAgICAgICAodm9pZClpbl9sZWF2ZWdyb3VwKGlpLT5paV9hbGxob3N0cywgTlVMTCk7
DQo+ID4+ID4gPj4gICAgICAgICAgICAgICAgICAgICAgIGlpLT5paV9hbGxob3N0cyA9IE5VTEw7
DQo+ID4+ID4gPj4gICAgICAgICAgICAgICB9DQo+ID4+ID4gPj4gLSAgICAgICAgICAgICBJTl9N
VUxUSV9VTkxPQ0soKTsNCj4gPj4gPiA+PiAgICAgICB9DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAg
ICAgICBJRl9BRERSX1dMT0NLKGlmcCk7DQo+ID4+ID4gPj4gQEAgLTk5NCwxMSArOTkyLDEyIEBA
IGluX2Jyb2FkY2FzdChzdHJ1Y3QgaW5fYWRkciBpbiwgc3RydWN0IGlmbmV0ICppZnApDQo+ID4+
ID4gPj4gIHZvaWQNCj4gPj4gPiA+PiAgaW5faWZkZXRhY2goc3RydWN0IGlmbmV0ICppZnApDQo+
ID4+ID4gPj4gIHsNCj4gPj4gPiA+PiAtDQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTE9DSygp
Ow0KPiA+PiA+ID4+ICAgICAgIGluX3BjYnB1cmdlaWYwKCZWX3JpcGNiaW5mbywgaWZwKTsNCj4g
Pj4gPiA+PiAgICAgICBpbl9wY2JwdXJnZWlmMCgmVl91ZGJpbmZvLCBpZnApOw0KPiA+PiA+ID4+
ICAgICAgIGluX3BjYnB1cmdlaWYwKCZWX3VsaXRlY2JpbmZvLCBpZnApOw0KPiA+PiA+ID4+ICAg
ICAgIGluX3B1cmdlbWFkZHJzKGlmcCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfVU5MT0NL
KCk7DQo+ID4+ID4gPj4gIH0NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAvKg0KPiA+PiA+ID4+IEBA
IC0xMDExLDEyICsxMDEwLDEyIEBAIGluX2lmZGV0YWNoKHN0cnVjdCBpZm5ldCAqaWZwKQ0KPiA+
PiA+ID4+ICBzdGF0aWMgdm9pZA0KPiA+PiA+ID4+ICBpbl9wdXJnZW1hZGRycyhzdHJ1Y3QgaWZu
ZXQgKmlmcCkNCj4gPj4gPiA+PiAgew0KPiA+PiA+ID4+IC0gICAgIExJU1RfSEVBRCgsaW5fbXVs
dGkpIHB1cmdlaW5tczsNCj4gPj4gPiA+PiAtICAgICBzdHJ1Y3QgaW5fbXVsdGkgICAgICAgICAq
aW5tLCAqdGlubTsNCj4gPj4gPiA+PiArICAgICBzdHJ1Y3QgaW5fbXVsdGlfaGVhZCBwdXJnZWlu
bXM7DQo+ID4+ID4gPj4gKyAgICAgc3RydWN0IGluX211bHRpICAgICAgICAgKmlubTsNCj4gPj4g
PiA+PiAgICAgICBzdHJ1Y3QgaWZtdWx0aWFkZHIgICAgICAqaWZtYTsNCj4gPj4gPiA+Pg0KPiA+
PiA+ID4+IC0gICAgIExJU1RfSU5JVCgmcHVyZ2Vpbm1zKTsNCj4gPj4gPiA+PiAtICAgICBJTl9N
VUxUSV9MT0NLKCk7DQo+ID4+ID4gPj4gKyAgICAgU0xJU1RfSU5JVCgmcHVyZ2Vpbm1zKTsNCj4g
Pj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0soKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+
ICAgICAgIC8qDQo+ID4+ID4gPj4gICAgICAgICogRXh0cmFjdCBsaXN0IG9mIGluX211bHRpIGFz
c29jaWF0ZWQgd2l0aCB0aGUgZGV0YWNoaW5nIGlmcA0KPiA+PiA+ID4+IEBAIC0xMDM0LDE3ICsx
MDMzLDEzIEBAIGluX3B1cmdlbWFkZHJzKHN0cnVjdCBpZm5ldCAqaWZwKQ0KPiA+PiA+ID4+ICAg
ICAgICAgICAgICAgICAgICgiJXM6IGlmbWFfcHJvdG9zcGVjIGlzIE5VTEwiLCBfX2Z1bmNfXykp
Ow0KPiA+PiA+ID4+ICAjZW5kaWYNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGlubSA9IChzdHJ1
Y3QgaW5fbXVsdGkgKilpZm1hLT5pZm1hX3Byb3Rvc3BlYzsNCj4gPj4gPiA+PiAtICAgICAgICAg
ICAgIExJU1RfSU5TRVJUX0hFQUQoJnB1cmdlaW5tcywgaW5tLCBpbm1fbGluayk7DQo+ID4+ID4g
Pj4gKyAgICAgICAgICAgICBpbm1fcmVsZV9sb2NrZWQoJnB1cmdlaW5tcywgaW5tKTsNCj4gPj4g
PiA+PiAgICAgICB9DQo+ID4+ID4gPj4gICAgICAgSUZfQUREUl9SVU5MT0NLKGlmcCk7DQo+ID4+
ID4gPj4NCj4gPj4gPiA+PiAtICAgICBMSVNUX0ZPUkVBQ0hfU0FGRShpbm0sICZwdXJnZWlubXMs
IGlubV9saW5rLCB0aW5tKSB7DQo+ID4+ID4gPj4gLSAgICAgICAgICAgICBMSVNUX1JFTU9WRShp
bm0sIGlubV9saW5rKTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgIGlubV9yZWxlYXNlX2xvY2tl
ZChpbm0pOw0KPiA+PiA+ID4+IC0gICAgIH0NCj4gPj4gPiA+PiArICAgICBpbm1fcmVsZWFzZV9s
aXN0X2RlZmVycmVkKCZwdXJnZWlubXMpOw0KPiA+PiA+ID4+ICAgICAgIGlnbXBfaWZkZXRhY2go
aWZwKTsNCj4gPj4gPiA+PiAtDQo+ID4+ID4gPj4gLSAgICAgSU5fTVVMVElfVU5MT0NLKCk7DQo+
ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9VTkxPQ0soKTsNCj4gPj4gPiA+PiAgfQ0KPiA+
PiA+ID4+DQo+ID4+ID4gPj4gIHN0cnVjdCBpbl9sbGVudHJ5IHsNCj4gPj4gPiA+Pg0KPiA+PiA+
ID4+IE1vZGlmaWVkOiBoZWFkL3N5cy9uZXRpbmV0L2luX21jYXN0LmMNCj4gPj4gPiA+PiA9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0NCj4gPj4gPiA+PiAtLS0gaGVhZC9zeXMvbmV0aW5ldC9pbl9tY2Fz
dC5jICAgICAgIFdlZCBNYXkgIDIgMTc6NDE6MDAgMjAxOCAgICAgICAgKHIzMzMxNzQpDQo+ID4+
ID4gPj4gKysrIGhlYWQvc3lzL25ldGluZXQvaW5fbWNhc3QuYyAgICAgICBXZWQgTWF5ICAyIDE5
OjM2OjI5IDIwMTggICAgICAgIChyMzMzMTc1KQ0KPiA+PiA+ID4+IEBAIC01MSw2ICs1MSw3IEBA
IF9fRkJTRElEKCIkRnJlZUJTRCQiKTsNCj4gPj4gPiA+PiAgI2luY2x1ZGUgPHN5cy9zeXNjdGwu
aD4NCj4gPj4gPiA+PiAgI2luY2x1ZGUgPHN5cy9rdHIuaD4NCj4gPj4gPiA+PiAgI2luY2x1ZGUg
PHN5cy90YXNrcXVldWUuaD4NCj4gPj4gPiA+PiArI2luY2x1ZGUgPHN5cy9ndGFza3F1ZXVlLmg+
DQo+ID4+ID4gPj4gICNpbmNsdWRlIDxzeXMvdHJlZS5oPg0KPiA+PiA+ID4+DQo+ID4+ID4gPj4g
ICNpbmNsdWRlIDxuZXQvaWYuaD4NCj4gPj4gPiA+PiBAQCAtNTksNiArNjAsOCBAQCBfX0ZCU0RJ
RCgiJEZyZWVCU0QkIik7DQo+ID4+ID4gPj4gICNpbmNsdWRlIDxuZXQvcm91dGUuaD4NCj4gPj4g
PiA+PiAgI2luY2x1ZGUgPG5ldC92bmV0Lmg+DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiArI2luY2x1
ZGUgPG5ldC9ldGhlcm5ldC5oPg0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiAgI2luY2x1ZGUgPG5l
dGluZXQvaW4uaD4NCj4gPj4gPiA+PiAgI2luY2x1ZGUgPG5ldGluZXQvaW5fc3lzdG0uaD4NCj4g
Pj4gPiA+PiAgI2luY2x1ZGUgPG5ldGluZXQvaW5fZmliLmg+DQo+ID4+ID4gPj4gQEAgLTkxLDE4
ICs5NCwyNCBAQCBzdGF0aWMgTUFMTE9DX0RFRklORShNX0lQTVNPVVJDRSwgImlwX21zb3VyY2Ui
LA0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gICAqIExvY2tpbmc6DQo+ID4+
ID4gPj4gLSAqIC0gTG9jayBvcmRlciBpczogR2lhbnQsIElOUF9XTE9DSywgSU5fTVVMVElfTE9D
SywgSUdNUF9MT0NLLCBJRl9BRERSX0xPQ0suDQo+ID4+ID4gPj4gKyAqIC0gTG9jayBvcmRlciBp
czogR2lhbnQsIElOUF9XTE9DSywgSU5fTVVMVElfTElTVF9MT0NLLCBJR01QX0xPQ0ssDQo+ID4+
ID4gPj4gSUZfQUREUl9MT0NLLg0KPiA+PiA+ID4+ICAgKiAtIFRoZSBJRl9BRERSX0xPQ0sgaXMg
aW1wbGljaXRseSB0YWtlbiBieSBpbm1fbG9va3VwKCkgZWFybGllciwgaG93ZXZlcg0KPiA+PiA+
ID4+ICAgKiAgIGl0IGNhbiBiZSB0YWtlbiBieSBjb2RlIGluIG5ldC9pZi5jIGFsc28uDQo+ID4+
ID4gPj4gICAqIC0gaXBfbW9wdGlvbnMgYW5kIGluX21maWx0ZXIgYXJlIGNvdmVyZWQgYnkgdGhl
IElOUF9XTE9DSy4NCj4gPj4gPiA+PiAgICoNCj4gPj4gPiA+PiAtICogc3RydWN0IGluX211bHRp
IGlzIGNvdmVyZWQgYnkgSU5fTVVMVElfTE9DSy4gVGhlcmUgaXNuJ3Qgc3RyaWN0bHkNCj4gPj4g
PiA+PiArICogc3RydWN0IGluX211bHRpIGlzIGNvdmVyZWQgYnkgSU5fTVVMVElfTElTVF9MT0NL
LiBUaGVyZSBpc24ndCBzdHJpY3RseQ0KPiA+PiA+ID4+ICAgKiBhbnkgbmVlZCBmb3IgaW5fbXVs
dGkgaXRzZWxmIHRvIGJlIHZpcnR1YWxpemVkIC0tIGl0IGlzIGJvdW5kIHRvIGFuIGlmcA0KPiA+
PiA+ID4+ICAgKiBhbnl3YXkgbm8gbWF0dGVyIHdoYXQgaGFwcGVucy4NCj4gPj4gPiA+PiAgICov
DQo+ID4+ID4gPj4gLXN0cnVjdCBtdHggaW5fbXVsdGlfbXR4Ow0KPiA+PiA+ID4+IC1NVFhfU1lT
SU5JVChpbl9tdWx0aV9tdHgsICZpbl9tdWx0aV9tdHgsICJpbl9tdWx0aV9tdHgiLCBNVFhfREVG
KTsNCj4gPj4gPiA+PiArc3RydWN0IG10eCBpbl9tdWx0aV9saXN0X210eDsNCj4gPj4gPiA+PiAr
TVRYX1NZU0lOSVQoaW5fbXVsdGlfbXR4LCAmaW5fbXVsdGlfbGlzdF9tdHgsICJpbl9tdWx0aV9s
aXN0X210eCIsIE1UWF9ERUYpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gK3N0cnVjdCBtdHggaW5f
bXVsdGlfZnJlZV9tdHg7DQo+ID4+ID4gPj4gK01UWF9TWVNJTklUKGluX211bHRpX2ZyZWVfbXR4
LCAmaW5fbXVsdGlfZnJlZV9tdHgsICJpbl9tdWx0aV9mcmVlX210eCIsDQo+ID4+ID4gPj4gTVRY
X0RFRik7ICsNCj4gPj4gPiA+PiArc3RydWN0IHN4IGluX211bHRpX3N4Ow0KPiA+PiA+ID4+ICtT
WF9TWVNJTklUKGluX211bHRpX3N4LCAmaW5fbXVsdGlfc3gsICJpbl9tdWx0aV9zeCIpOw0KPiA+
PiA+ID4+ICsNCj4gPj4gPiA+PiAgLyoNCj4gPj4gPiA+PiAgICogRnVuY3Rpb25zIHdpdGggbm9u
LXN0YXRpYyBsaW5rYWdlIGRlZmluZWQgaW4gdGhpcyBmaWxlIHNob3VsZCBiZQ0KPiA+PiA+ID4+
ICAgKiBkZWNsYXJlZCBpbiBpbl92YXIuaDoNCj4gPj4gPiA+PiBAQCAtMTUxLDYgKzE2MCw3IEBA
IHN0YXRpYyBpbnQgICAgICAgIGlubV9pc19pZnBfZGV0YWNoZWQoY29uc3Qgc3RydWN0IGluX211
bHRpDQo+ID4+ID4gPj4gKiBzdGF0aWMgaW50ICAgaW5tX21lcmdlKHN0cnVjdCBpbl9tdWx0aSAq
LCAvKmNvbnN0Ki8gc3RydWN0IGluX21maWx0ZXIgKik7DQo+ID4+ID4gPj4gIHN0YXRpYyB2b2lk
ICBpbm1fcHVyZ2Uoc3RydWN0IGluX211bHRpICopOw0KPiA+PiA+ID4+ICBzdGF0aWMgdm9pZCAg
aW5tX3JlYXAoc3RydWN0IGluX211bHRpICopOw0KPiA+PiA+ID4+ICtzdGF0aWMgdm9pZCBpbm1f
cmVsZWFzZShzdHJ1Y3QgaW5fbXVsdGkgKik7DQo+ID4+ID4gPj4gIHN0YXRpYyBzdHJ1Y3QgaXBf
bW9wdGlvbnMgKg0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgaW5wX2ZpbmRtb3B0aW9ucyhzdHJ1
Y3QgaW5wY2IgKik7DQo+ID4+ID4gPj4gIHN0YXRpYyB2b2lkICBpbnBfZnJlZW1vcHRpb25zX2lu
dGVybmFsKHN0cnVjdCBpcF9tb3B0aW9ucyAqKTsNCj4gPj4gPiA+PiBAQCAtMjE2LDYgKzIyNiw2
NSBAQCBpbm1faXNfaWZwX2RldGFjaGVkKGNvbnN0IHN0cnVjdCBpbl9tdWx0aSAqaW5tKQ0KPiA+
PiA+ID4+ICB9DQo+ID4+ID4gPj4gICNlbmRpZg0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gK3N0YXRp
YyBzdHJ1Y3QgZ3JvdXB0YXNrIGZyZWVfZ3Rhc2s7DQo+ID4+ID4gPj4gK3N0YXRpYyBzdHJ1Y3Qg
aW5fbXVsdGlfaGVhZCBpbm1fZnJlZV9saXN0Ow0KPiA+PiA+ID4+ICtzdGF0aWMgdm9pZCBpbm1f
cmVsZWFzZV90YXNrKHZvaWQgKmFyZyBfX3VudXNlZCk7DQo+ID4+ID4gPj4gK3N0YXRpYyB2b2lk
IGlubV9pbml0KHZvaWQpDQo+ID4+ID4gPj4gK3sNCj4gPj4gPiA+PiArICAgICBTTElTVF9JTklU
KCZpbm1fZnJlZV9saXN0KTsNCj4gPj4gPiA+PiArICAgICB0YXNrcWdyb3VwX2NvbmZpZ19ndGFz
a19pbml0KE5VTEwsICZmcmVlX2d0YXNrLCBpbm1fcmVsZWFzZV90YXNrLCAiaW5tDQo+ID4+ID4g
Pj4gcmVsZWFzZSB0YXNrIik7ICt9DQo+ID4+ID4gPj4gKw0KPiA+PiA+ID4+ICtTWVNJTklUKGlu
bV9pbml0LCBTSV9TVUJfU01QICsgMSwgU0lfT1JERVJfRklSU1QsDQo+ID4+ID4gPj4gKyAgICAg
aW5tX2luaXQsIE5VTEwpOw0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiArDQo+ID4+ID4gPj4gK3Zv
aWQNCj4gPj4gPiA+PiAraW5tX3JlbGVhc2VfbGlzdF9kZWZlcnJlZChzdHJ1Y3QgaW5fbXVsdGlf
aGVhZCAqaW5taCkNCj4gPj4gPiA+PiArew0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiArICAgICBp
ZiAoU0xJU1RfRU1QVFkoaW5taCkpDQo+ID4+ID4gPj4gKyAgICAgICAgICAgICByZXR1cm47DQo+
ID4+ID4gPj4gKyAgICAgbXR4X2xvY2soJmluX211bHRpX2ZyZWVfbXR4KTsNCj4gPj4gPiA+PiAr
ICAgICBTTElTVF9DT05DQVQoJmlubV9mcmVlX2xpc3QsIGlubWgsIGluX211bHRpLCBpbm1fbnJl
bGUpOw0KPiA+PiA+ID4+ICsgICAgIG10eF91bmxvY2soJmluX211bHRpX2ZyZWVfbXR4KTsNCj4g
Pj4gPiA+PiArICAgICBHUk9VUFRBU0tfRU5RVUVVRSgmZnJlZV9ndGFzayk7DQo+ID4+ID4gPj4g
K30NCj4gPj4gPiA+PiArDQo+ID4+ID4gPj4gK3ZvaWQNCj4gPj4gPiA+PiAraW5tX3JlbGVhc2Vf
ZGVmZXJyZWQoc3RydWN0IGluX211bHRpICppbm0pDQo+ID4+ID4gPj4gK3sNCj4gPj4gPiA+PiAr
ICAgICBzdHJ1Y3QgaW5fbXVsdGlfaGVhZCB0bXA7DQo+ID4+ID4gPj4gKw0KPiA+PiA+ID4+ICsg
ICAgIElOX01VTFRJX0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArICAgICBNUEFTUyhp
bm0tPmlubV9yZWZjb3VudCA+IDApOw0KPiA+PiA+ID4+ICsgICAgIGlmICgtLWlubS0+aW5tX3Jl
ZmNvdW50ID09IDApIHsNCj4gPj4gPiA+PiArICAgICAgICAgICAgIFNMSVNUX0lOSVQoJnRtcCk7
DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICBpbm0tPmlubV9pZm1hLT5pZm1hX3Byb3Rvc3BlYyA9
IE5VTEw7DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICBTTElTVF9JTlNFUlRfSEVBRCgmdG1wLCBp
bm0sIGlubV9ucmVsZSk7DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICBpbm1fcmVsZWFzZV9saXN0
X2RlZmVycmVkKCZ0bXApOw0KPiA+PiA+ID4+ICsgICAgIH0NCj4gPj4gPiA+PiArfQ0KPiA+PiA+
ID4+ICsNCj4gPj4gPiA+PiArc3RhdGljIHZvaWQNCj4gPj4gPiA+PiAraW5tX3JlbGVhc2VfdGFz
ayh2b2lkICphcmcgX191bnVzZWQpDQo+ID4+ID4gPj4gK3sNCj4gPj4gPiA+PiArICAgICBzdHJ1
Y3QgaW5fbXVsdGlfaGVhZCBpbm1fZnJlZV90bXA7DQo+ID4+ID4gPj4gKyAgICAgc3RydWN0IGlu
X211bHRpICppbm0sICp0aW5tOw0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiArICAgICBTTElTVF9J
TklUKCZpbm1fZnJlZV90bXApOw0KPiA+PiA+ID4+ICsgICAgIG10eF9sb2NrKCZpbl9tdWx0aV9m
cmVlX210eCk7DQo+ID4+ID4gPj4gKyAgICAgU0xJU1RfQ09OQ0FUKCZpbm1fZnJlZV90bXAsICZp
bm1fZnJlZV9saXN0LCBpbl9tdWx0aSwgaW5tX25yZWxlKTsNCj4gPj4gPiA+PiArICAgICBtdHhf
dW5sb2NrKCZpbl9tdWx0aV9mcmVlX210eCk7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTE9D
SygpOw0KPiA+PiA+ID4+ICsgICAgIFNMSVNUX0ZPUkVBQ0hfU0FGRShpbm0sICZpbm1fZnJlZV90
bXAsIGlubV9ucmVsZSwgdGlubSkgew0KPiA+PiA+ID4+ICsgICAgICAgICAgICAgU0xJU1RfUkVN
T1ZFX0hFQUQoJmlubV9mcmVlX3RtcCwgaW5tX25yZWxlKTsNCj4gPj4gPiA+PiArICAgICAgICAg
ICAgIE1QQVNTKGlubSk7DQo+ID4+ID4gPj4gKyAgICAgICAgICAgICBpbm1fcmVsZWFzZShpbm0p
Ow0KPiA+PiA+ID4+ICsgICAgIH0NCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9VTkxPQ0soKTsN
Cj4gPj4gPiA+PiArfQ0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiAgLyoNCj4gPj4gPiA+PiAgICog
SW5pdGlhbGl6ZSBhbiBpbl9tZmlsdGVyIHN0cnVjdHVyZSB0byBhIGtub3duIHN0YXRlIGF0IHQw
LCB0MQ0KPiA+PiA+ID4+ICAgKiB3aXRoIGFuIGVtcHR5IHNvdXJjZSBmaWx0ZXIgbGlzdC4NCj4g
Pj4gPiA+PiBAQCAtMjMyLDcgKzMwMSw3IEBAIGltZl9pbml0KHN0cnVjdCBpbl9tZmlsdGVyICpp
bWYsIGNvbnN0IGludCBzdDAsIGNvbnN0DQo+ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gICAqIEZ1
bmN0aW9uIGZvciBsb29raW5nIHVwIGFuIGluX211bHRpIHJlY29yZCBmb3IgYW4gSVB2NCBtdWx0
aWNhc3QgYWRkcmVzcw0KPiA+PiA+ID4+ICAgKiBvbiBhIGdpdmVuIGludGVyZmFjZS4gaWZwIG11
c3QgYmUgdmFsaWQuIElmIG5vIHJlY29yZCBmb3VuZCwgcmV0dXJuIE5VTEwuDQo+ID4+ID4gPj4g
LSAqIFRoZSBJTl9NVUxUSV9MT0NLIGFuZCBJRl9BRERSX0xPQ0sgb24gaWZwIG11c3QgYmUgaGVs
ZC4NCj4gPj4gPiA+PiArICogVGhlIElOX01VTFRJX0xJU1RfTE9DSyBhbmQgSUZfQUREUl9MT0NL
IG9uIGlmcCBtdXN0IGJlIGhlbGQuDQo+ID4+ID4gPj4gICAqLw0KPiA+PiA+ID4+ICBzdHJ1Y3Qg
aW5fbXVsdGkgKg0KPiA+PiA+ID4+ICBpbm1fbG9va3VwX2xvY2tlZChzdHJ1Y3QgaWZuZXQgKmlm
cCwgY29uc3Qgc3RydWN0IGluX2FkZHIgaW5hKQ0KPiA+PiA+ID4+IEBAIC0yNDAsNyArMzA5LDcg
QEAgaW5tX2xvb2t1cF9sb2NrZWQoc3RydWN0IGlmbmV0ICppZnAsIGNvbnN0IHN0cnVjdCBpbl9h
DQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGlmbXVsdGlhZGRyICppZm1hOw0KPiA+PiA+ID4+ICAg
ICAgIHN0cnVjdCBpbl9tdWx0aSAqaW5tOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gLSAgICAgSU5f
TVVMVElfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX0xPQ0tf
QVNTRVJUKCk7DQo+ID4+ID4gPj4gICAgICAgSUZfQUREUl9MT0NLX0FTU0VSVChpZnApOw0KPiA+
PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgaW5tID0gTlVMTDsNCj4gPj4gPiA+PiBAQCAtMjY0LDcg
KzMzMyw3IEBAIGlubV9sb29rdXAoc3RydWN0IGlmbmV0ICppZnAsIGNvbnN0IHN0cnVjdCBpbl9h
ZGRyIGluYQ0KPiA+PiA+ID4+ICB7DQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGluX211bHRpICpp
bm07DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAtICAgICBJTl9NVUxUSV9MT0NLX0FTU0VSVCgpOw0K
PiA+PiA+ID4+ICsgICAgIElOX01VTFRJX0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiAg
ICAgICBJRl9BRERSX1JMT0NLKGlmcCk7DQo+ID4+ID4gPj4gICAgICAgaW5tID0gaW5tX2xvb2t1
cF9sb2NrZWQoaWZwLCBpbmEpOw0KPiA+PiA+ID4+ICAgICAgIElGX0FERFJfUlVOTE9DSyhpZnAp
Ow0KPiA+PiA+ID4+IEBAIC00NTEsNyArNTIwLDcgQEAgaW5fZ2V0bXVsdGkoc3RydWN0IGlmbmV0
ICppZnAsIGNvbnN0IHN0cnVjdCBpbl9hZGRyICpnDQo+ID4+ID4gPj4gICAgICAgSU5fTVVMVElf
TE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAgIGlpID0gKHN0cnVjdCBp
bl9pZmluZm8gKilpZnAtPmlmX2FmZGF0YVtBRl9JTkVUXTsNCj4gPj4gPiA+PiAtDQo+ID4+ID4g
Pj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLKCk7DQo+ID4+ID4gPj4gICAgICAgaW5tID0gaW5t
X2xvb2t1cChpZnAsICpncm91cCk7DQo+ID4+ID4gPj4gICAgICAgaWYgKGlubSAhPSBOVUxMKSB7
DQo+ID4+ID4gPj4gICAgICAgICAgICAgICAvKg0KPiA+PiA+ID4+IEBAIC00NjAsMTEgKzUyOSwx
MyBAQCBpbl9nZXRtdWx0aShzdHJ1Y3QgaWZuZXQgKmlmcCwgY29uc3Qgc3RydWN0IGluX2FkZHIg
KmcNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICAqLw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAg
S0FTU0VSVChpbm0tPmlubV9yZWZjb3VudCA+PSAxLA0KPiA+PiA+ID4+ICAgICAgICAgICAgICAg
ICAgICgiJXM6IGJhZCByZWZjb3VudCAlZCIsIF9fZnVuY19fLCBpbm0tPmlubV9yZWZjb3VudCkp
Ow0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgKytpbm0tPmlubV9yZWZjb3VudDsNCj4gPj4gPiA+
PiArICAgICAgICAgICAgIGlubV9hY3F1aXJlX2xvY2tlZChpbm0pOw0KPiA+PiA+ID4+ICAgICAg
ICAgICAgICAgKnBpbm0gPSBpbm07DQo+ID4+ID4gPj4gLSAgICAgICAgICAgICByZXR1cm4gKDAp
Ow0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+PiAtDQo+ID4+ID4gPj4gKyAgICAgSU5fTVVM
VElfTElTVF9VTkxPQ0soKTsNCj4gPj4gPiA+PiArICAgICBpZiAoaW5tICE9IE5VTEwpDQo+ID4+
ID4gPj4gKyAgICAgICAgICAgICByZXR1cm4gKDApOw0KPiA+PiA+ID4+ICsNCj4gPj4gPiA+PiAg
ICAgICBtZW1zZXQoJmdzaW4sIDAsIHNpemVvZihnc2luKSk7DQo+ID4+ID4gPj4gICAgICAgZ3Np
bi5zaW5fZmFtaWx5ID0gQUZfSU5FVDsNCj4gPj4gPiA+PiAgICAgICBnc2luLnNpbl9sZW4gPSBz
aXplb2Yoc3RydWN0IHNvY2thZGRyX2luKTsNCj4gPj4gPiA+PiBAQCAtNDc5LDYgKzU1MCw3IEBA
IGluX2dldG11bHRpKHN0cnVjdCBpZm5ldCAqaWZwLCBjb25zdCBzdHJ1Y3QgaW5fYWRkciAqZw0K
PiA+PiA+ID4+ICAgICAgICAgICAgICAgcmV0dXJuIChlcnJvcik7DQo+ID4+ID4gPj4NCj4gPj4g
PiA+PiAgICAgICAvKiBYWFggaWZtYV9wcm90b3NwZWMgbXVzdCBiZSBjb3ZlcmVkIGJ5IElGX0FE
RFJfTE9DSyAqLw0KPiA+PiA+ID4+ICsgICAgIElOX01VTFRJX0xJU1RfTE9DSygpOw0KPiA+PiA+
ID4+ICAgICAgIElGX0FERFJfV0xPQ0soaWZwKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAg
IC8qDQo+ID4+ID4gPj4gQEAgLTUwNCwxMCArNTc2LDkgQEAgaW5fZ2V0bXVsdGkoc3RydWN0IGlm
bmV0ICppZnAsIGNvbnN0IHN0cnVjdCBpbl9hZGRyICpnDQo+ID4+ID4gPj4gICAgICAgICAgICAg
ICAgICAgICAgICAgICBfX2Z1bmNfXywgaWZtYSwgaW5tLCBpbmV0X250b2FfcigqZ3JvdXAsIGFk
ZHJidWYpKTsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIH0NCj4gPj4gPiA+PiAgI2VuZGlmDQo+
ID4+ID4gPj4gLSAgICAgICAgICAgICArK2lubS0+aW5tX3JlZmNvdW50Ow0KPiA+PiA+ID4+ICsg
ICAgICAgICAgICAgaW5tX2FjcXVpcmVfbG9ja2VkKGlubSk7DQo+ID4+ID4gPj4gICAgICAgICAg
ICAgICAqcGlubSA9IGlubTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgIElGX0FERFJfV1VOTE9D
SyhpZnApOw0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgcmV0dXJuICgwKTsNCj4gPj4gPiA+PiAr
ICAgICAgICAgICAgIGdvdG8gb3V0X2xvY2tlZDsNCj4gPj4gPiA+PiAgICAgICB9DQo+ID4+ID4g
Pj4NCj4gPj4gPiA+PiAgICAgICBJRl9BRERSX1dMT0NLX0FTU0VSVChpZnApOw0KPiA+PiA+ID4+
IEBAIC01MjIsNiArNTkzLDcgQEAgaW5fZ2V0bXVsdGkoc3RydWN0IGlmbmV0ICppZnAsIGNvbnN0
IHN0cnVjdCBpbl9hZGRyICpnDQo+ID4+ID4gPj4gICAgICAgaW5tID0gbWFsbG9jKHNpemVvZigq
aW5tKSwgTV9JUE1BRERSLCBNX05PV0FJVCB8IE1fWkVSTyk7DQo+ID4+ID4gPj4gICAgICAgaWYg
KGlubSA9PSBOVUxMKSB7DQo+ID4+ID4gPj4gICAgICAgICAgICAgICBJRl9BRERSX1dVTkxPQ0so
aWZwKTsNCj4gPj4gPiA+PiArICAgICAgICAgICAgIElOX01VTFRJX0xJU1RfVU5MT0NLKCk7DQo+
ID4+ID4gPj4gICAgICAgICAgICAgICBpZl9kZWxtdWx0aV9pZm1hKGlmbWEpOw0KPiA+PiA+ID4+
ICAgICAgICAgICAgICAgcmV0dXJuIChFTk9NRU0pOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4g
PiA+PiBAQCAtNTM5LDggKzYxMSw5IEBAIGluX2dldG11bHRpKHN0cnVjdCBpZm5ldCAqaWZwLCBj
b25zdCBzdHJ1Y3QgaW5fYWRkciAqZw0KPiA+PiA+ID4+ICAgICAgIGlmbWEtPmlmbWFfcHJvdG9z
cGVjID0gaW5tOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgKnBpbm0gPSBpbm07DQo+ID4+
ID4gPj4gLQ0KPiA+PiA+ID4+ICsgb3V0X2xvY2tlZDoNCj4gPj4gPiA+PiAgICAgICBJRl9BRERS
X1dVTkxPQ0soaWZwKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX1VOTE9DSygpOw0K
PiA+PiA+ID4+ICAgICAgIHJldHVybiAoMCk7DQo+ID4+ID4gPj4gIH0NCj4gPj4gPiA+Pg0KPiA+
PiA+ID4+IEBAIC01NTAsMzYgKzYyMywyOSBAQCBpbl9nZXRtdWx0aShzdHJ1Y3QgaWZuZXQgKmlm
cCwgY29uc3Qgc3RydWN0IGluX2FkZHIgKmcNCj4gPj4gPiA+PiAgICogSWYgdGhlIHJlZmNvdW50
IGRyb3BzIHRvIDAsIGZyZWUgdGhlIGluX211bHRpIHJlY29yZCBhbmQNCj4gPj4gPiA+PiAgICog
ZGVsZXRlIHRoZSB1bmRlcmx5aW5nIGxpbmstbGF5ZXIgbWVtYmVyc2hpcC4NCj4gPj4gPiA+PiAg
ICovDQo+ID4+ID4gPj4gLXZvaWQNCj4gPj4gPiA+PiAtaW5tX3JlbGVhc2VfbG9ja2VkKHN0cnVj
dCBpbl9tdWx0aSAqaW5tKQ0KPiA+PiA+ID4+ICtzdGF0aWMgdm9pZA0KPiA+PiA+ID4+ICtpbm1f
cmVsZWFzZShzdHJ1Y3QgaW5fbXVsdGkgKmlubSkNCj4gPj4gPiA+PiAgew0KPiA+PiA+ID4+ICAg
ICAgIHN0cnVjdCBpZm11bHRpYWRkciAqaWZtYTsNCj4gPj4gPiA+PiArICAgICBzdHJ1Y3QgaWZu
ZXQgKmlmcDsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+IC0gICAgIElOX01VTFRJX0xPQ0tfQVNTRVJU
KCk7DQo+ID4+ID4gPj4gLQ0KPiA+PiA+ID4+ICAgICAgIENUUjIoS1RSX0lHTVBWMywgIiVzOiBy
ZWZjb3VudCBpcyAlZCIsIF9fZnVuY19fLCBpbm0tPmlubV9yZWZjb3VudCk7DQo+ID4+ID4gPj4g
LQ0KPiA+PiA+ID4+IC0gICAgIGlmICgtLWlubS0+aW5tX3JlZmNvdW50ID4gMCkgew0KPiA+PiA+
ID4+IC0gICAgICAgICAgICAgQ1RSMihLVFJfSUdNUFYzLCAiJXM6IHJlZmNvdW50IGlzIG5vdyAl
ZCIsIF9fZnVuY19fLA0KPiA+PiA+ID4+IC0gICAgICAgICAgICAgICAgIGlubS0+aW5tX3JlZmNv
dW50KTsNCj4gPj4gPiA+PiAtICAgICAgICAgICAgIHJldHVybjsNCj4gPj4gPiA+PiAtICAgICB9
DQo+ID4+ID4gPj4gLQ0KPiA+PiA+ID4+ICsgICAgIE1QQVNTKGlubS0+aW5tX3JlZmNvdW50ID09
IDApOw0KPiA+PiA+ID4+ICAgICAgIENUUjIoS1RSX0lHTVBWMywgIiVzOiBmcmVlaW5nIGlubSAl
cCIsIF9fZnVuY19fLCBpbm0pOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgaWZtYSA9IGlu
bS0+aW5tX2lmbWE7DQo+ID4+ID4gPj4gKyAgICAgaWZwID0gaW5tLT5pbm1faWZwOw0KPiA+PiA+
ID4+DQo+ID4+ID4gPj4gICAgICAgLyogWFhYIHRoaXMgYWNjZXNzIGlzIG5vdCBjb3ZlcmVkIGJ5
IElGX0FERFJfTE9DSyAqLw0KPiA+PiA+ID4+ICAgICAgIENUUjIoS1RSX0lHTVBWMywgIiVzOiBw
dXJnaW5nIGlmbWEgJXAiLCBfX2Z1bmNfXywgaWZtYSk7DQo+ID4+ID4gPj4gLSAgICAgS0FTU0VS
VChpZm1hLT5pZm1hX3Byb3Rvc3BlYyA9PSBpbm0sDQo+ID4+ID4gPj4gLSAgICAgICAgICgiJXM6
IGlmbWFfcHJvdG9zcGVjICE9IGlubSIsIF9fZnVuY19fKSk7DQo+ID4+ID4gPj4gLSAgICAgaWZt
YS0+aWZtYV9wcm90b3NwZWMgPSBOVUxMOw0KPiA+PiA+ID4+IC0NCj4gPj4gPiA+PiArICAgICBp
ZiAoaWZwKQ0KPiA+PiA+ID4+ICsgICAgICAgICAgICAgQ1VSVk5FVF9TRVQoaWZwLT5pZl92bmV0
KTsNCj4gPj4gPiA+PiAgICAgICBpbm1fcHVyZ2UoaW5tKTsNCj4gPj4gPiA+PiAtDQo+ID4+ID4g
Pj4gICAgICAgZnJlZShpbm0sIE1fSVBNQUREUik7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAg
ICBpZl9kZWxtdWx0aV9pZm1hKGlmbWEpOw0KPiA+PiA+ID4+ICsgICAgIGlmIChpZnApDQo+ID4+
ID4gPj4gKyAgICAgICAgICAgICBDVVJWTkVUX1JFU1RPUkUoKTsNCj4gPj4gPiA+PiAgfQ0KPiA+
PiA+ID4+DQo+ID4+ID4gPj4gIC8qDQo+ID4+ID4gPj4gQEAgLTU5Miw3ICs2NTgsNyBAQCBpbm1f
Y2xlYXJfcmVjb3JkZWQoc3RydWN0IGluX211bHRpICppbm0pDQo+ID4+ID4gPj4gIHsNCj4gPj4g
PiA+PiAgICAgICBzdHJ1Y3QgaXBfbXNvdXJjZSAgICAgICAqaW1zOw0KPiA+PiA+ID4+DQo+ID4+
ID4gPj4gLSAgICAgSU5fTVVMVElfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+PiArICAgICBJTl9N
VUxUSV9MSVNUX0xPQ0tfQVNTRVJUKCk7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBSQl9G
T1JFQUNIKGltcywgaXBfbXNvdXJjZV90cmVlLCAmaW5tLT5pbm1fc3Jjcykgew0KPiA+PiA+ID4+
ICAgICAgICAgICAgICAgaWYgKGltcy0+aW1zX3N0cCkgew0KPiA+PiA+ID4+IEBAIC02MzIsNyAr
Njk4LDcgQEAgaW5tX3JlY29yZF9zb3VyY2Uoc3RydWN0IGluX211bHRpICppbm0sIGNvbnN0IGlu
X2FkZHJfDQo+ID4+ID4gPj4gICAgICAgc3RydWN0IGlwX21zb3VyY2UgICAgICAgIGZpbmQ7DQo+
ID4+ID4gPj4gICAgICAgc3RydWN0IGlwX21zb3VyY2UgICAgICAgKmltcywgKm5pbXM7DQo+ID4+
ID4gPj4NCj4gPj4gPiA+PiAtICAgICBJTl9NVUxUSV9MT0NLX0FTU0VSVCgpOw0KPiA+PiA+ID4+
ICsgICAgIElOX01VTFRJX0xJU1RfTE9DS19BU1NFUlQoKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+
ICAgICAgIGZpbmQuaW1zX2hhZGRyID0gbnRvaGwobmFkZHIpOw0KPiA+PiA+ID4+ICAgICAgIGlt
cyA9IFJCX0ZJTkQoaXBfbXNvdXJjZV90cmVlLCAmaW5tLT5pbm1fc3JjcywgJmZpbmQpOw0KPiA+
PiA+ID4+IEBAIC05NTksNiArMTAyNSw3IEBAIGlubV9tZXJnZShzdHJ1Y3QgaW5fbXVsdGkgKmlu
bSwgLypjb25zdCovIHN0cnVjdCBpbl9tZg0KPiA+PiA+ID4+ICAgICAgIHNjaGFuZ2VkID0gMDsN
Cj4gPj4gPiA+PiAgICAgICBlcnJvciA9IDA7DQo+ID4+ID4gPj4gICAgICAgbnNyYzEgPSBuc3Jj
MCA9IDA7DQo+ID4+ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9MT0NLX0FTU0VSVCgpOw0KPiA+
PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgLyoNCj4gPj4gPiA+PiAgICAgICAgKiBVcGRhdGUgdGhl
IHNvdXJjZSBmaWx0ZXJzIGZpcnN0LCBhcyB0aGlzIG1heSBmYWlsLg0KPiA+PiA+ID4+IEBAIC0x
MTY1LDYgKzEyMzIsNyBAQCBpbl9qb2luZ3JvdXBfbG9ja2VkKHN0cnVjdCBpZm5ldCAqaWZwLCBj
b25zdCBzdHJ1Y3QgaW4NCj4gPj4gPiA+PiAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAg
ZXJyb3I7DQo+ID4+ID4gPj4NCj4gPj4gPiA+PiAgICAgICBJTl9NVUxUSV9MT0NLX0FTU0VSVCgp
Ow0KPiA+PiA+ID4+ICsgICAgIElOX01VTFRJX0xJU1RfVU5MT0NLX0FTU0VSVCgpOw0KPiA+PiA+
ID4+DQo+ID4+ID4gPj4gICAgICAgQ1RSNChLVFJfSUdNUFYzLCAiJXM6IGpvaW4gMHglMDh4IG9u
ICVwKCVzKSkiLCBfX2Z1bmNfXywNCj4gPj4gPiA+PiAgICAgICAgICAgbnRvaGwoZ2luYS0+c19h
ZGRyKSwgaWZwLCBpZnAtPmlmX3huYW1lKTsNCj4gPj4gPiA+PiBAQCAtMTE4Niw3ICsxMjU0LDcg
QEAgaW5fam9pbmdyb3VwX2xvY2tlZChzdHJ1Y3QgaWZuZXQgKmlmcCwgY29uc3Qgc3RydWN0IGlu
DQo+ID4+ID4gPj4gICAgICAgICAgICAgICBDVFIxKEtUUl9JR01QVjMsICIlczogaW5fZ2V0bXVs
dGkoKSBmYWlsdXJlIiwgX19mdW5jX18pOw0KPiA+PiA+ID4+ICAgICAgICAgICAgICAgcmV0dXJu
IChlcnJvcik7DQo+ID4+ID4gPj4gICAgICAgfQ0KPiA+PiA+ID4+IC0NCj4gPj4gPiA+PiArICAg
ICBJTl9NVUxUSV9MSVNUX0xPQ0soKTsNCj4gPj4gPiA+PiAgICAgICBDVFIxKEtUUl9JR01QVjMs
ICIlczogbWVyZ2UgaW5tIHN0YXRlIiwgX19mdW5jX18pOw0KPiA+PiA+ID4+ICAgICAgIGVycm9y
ID0gaW5tX21lcmdlKGlubSwgaW1mKTsNCj4gPj4gPiA+PiAgICAgICBpZiAoZXJyb3IpIHsNCj4g
Pj4gPiA+PiBAQCAtMTIwMSwxMCArMTI2OSwxMiBAQCBpbl9qb2luZ3JvdXBfbG9ja2VkKHN0cnVj
dCBpZm5ldCAqaWZwLCBjb25zdCBzdHJ1Y3QgaW4NCj4gPj4gPiA+PiAgICAgICAgICAgICAgIGdv
dG8gb3V0X2lubV9yZWxlYXNlOw0KPiA+PiA+ID4+ICAgICAgIH0NCj4gPj4gPiA+Pg0KPiA+PiA+
ID4+IC1vdXRfaW5tX3JlbGVhc2U6DQo+ID4+ID4gPj4gKyBvdXRfaW5tX3JlbGVhc2U6DQo+ID4+
ID4gPj4gKyAgICAgSU5fTVVMVElfTElTVF9VTkxPQ0soKTsNCj4gPj4gPiA+PiAgICAgICBpZiAo
ZXJyb3IpIHsNCj4gPj4gPiA+PiArDQo+ID4+ID4gPj4gICAgICAgICAgICAgICBDVFIyKEtUUl9J
R01QVjMsICIlczogZHJvcHBpbmcgcmVmIG9uICVwIiwgX19mdW5jX18sIGlubSk7DQo+ID4+ID4g
Pj4gLSAgICAgICAgICAgICBpbm1fcmVsZWFzZV9sb2NrZWQoaW5tKTsNCj4gPj4gPiA+PiArICAg
ICAgICAgICAgIGlubV9yZWxlYXNlX2RlZmVycmVkKGlubSk7DQo+ID4+ID4gPj4gICAgICAgfSBl
bHNlIHsNCj4gPj4gPiA+PiAgICAgICAgICAgICAgICpwaW5tID0gaW5tOw0KPiA+PiA+ID4+ICAg
ICAgIH0NCj4gPj4gPiA+PiBAQCAtMTI0OSw2ICsxMzE5LDcgQEAgaW5fbGVhdmVncm91cF9sb2Nr
ZWQoc3RydWN0IGluX211bHRpICppbm0sIC8qY29uc3QqLyBzDQo+ID4+ID4gPj4gICAgICAgZXJy
b3IgPSAwOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAgICAgSU5fTVVMVElfTE9DS19BU1NFUlQo
KTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxUSV9MSVNUX1VOTE9DS19BU1NFUlQoKTsNCj4gPj4g
PiA+Pg0KPiA+PiA+ID4+ICAgICAgIENUUjUoS1RSX0lHTVBWMywgIiVzOiBsZWF2ZSBpbm0gJXAs
IDB4JTA4eC8lcywgaW1mICVwIiwgX19mdW5jX18sDQo+ID4+ID4gPj4gICAgICAgICAgIGlubSwg
bnRvaGwoaW5tLT5pbm1fYWRkci5zX2FkZHIpLA0KPiA+PiA+ID4+IEBAIC0xMjcyLDE4ICsxMzQz
LDIwIEBAIGluX2xlYXZlZ3JvdXBfbG9ja2VkKHN0cnVjdCBpbl9tdWx0aSAqaW5tLCAvKmNvbnN0
Ki8gcw0KPiA+PiA+ID4+ICAgICAgICAqIHRoZSB0cmFuc2FjdGlvbiwgaXQgTVVTVCBOT1QgZmFp
bC4NCj4gPj4gPiA+PiAgICAgICAgKi8NCj4gPj4gPiA+PiAgICAgICBDVFIxKEtUUl9JR01QVjMs
ICIlczogbWVyZ2UgaW5tIHN0YXRlIiwgX19mdW5jX18pOw0KPiA+PiA+ID4+ICsgICAgIElOX01V
TFRJX0xJU1RfTE9DSygpOw0KPiA+PiA+ID4+ICAgICAgIGVycm9yID0gaW5tX21lcmdlKGlubSwg
aW1mKTsNCj4gPj4gPiA+PiAgICAgICBLQVNTRVJUKGVycm9yID09IDAsICgiJXM6IGZhaWxlZCB0
byBtZXJnZSBpbm0gc3RhdGUiLCBfX2Z1bmNfXykpOw0KPiA+PiA+ID4+DQo+ID4+ID4gPj4gICAg
ICAgQ1RSMShLVFJfSUdNUFYzLCAiJXM6IGRvaW5nIGlnbXAgZG93bmNhbGwiLCBfX2Z1bmNfXyk7
DQo+ID4+ID4gPj4gICAgICAgQ1VSVk5FVF9TRVQoaW5tLT5pbm1faWZwLT5pZl92bmV0KTsNCj4g
Pj4gPiA+PiAgICAgICBlcnJvciA9IGlnbXBfY2hhbmdlX3N0YXRlKGlubSk7DQo+ID4+ID4gPj4g
KyAgICAgaW5tX3JlbGVhc2VfZGVmZXJyZWQoaW5tKTsNCj4gPj4gPiA+PiArICAgICBJTl9NVUxU
SV9MSVNUX1VOTE9DSygpOw0KPiA+PiA+ID4+ICAgICAgIENVUlZORVRfUkVTVE9SRSgpOw0KPiA+
PiA+ID4+ICAgICAgIGlmIChlcnJvcikNCj4gPj4gPiA+PiAgICAgICAgICAgICAgIENUUjEoS1RS
X0lHTVBWMywgIiVzOiBmYWlsZWQgaWdtcCBkb3duY2FsbCIsIF9fZnVuY19fKTsNCj4gPj4gPiA+
Pg0KPiA+PiA+ID4+ICAgICAgIENUUjIoS1RSX0lHTVBWMywgIiVzOiBkcm9wcGluZyByZWYgb24g
JXAiLCBfX2Z1bmNfXywgaW5tKTsNCj4gPj4gPiA+PiAtICAgICBpbm1fcmVsZWFzZV9sb2NrZWQo
aW5tKTsNCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICAgICAgIHJldHVybiAoZXJyb3IpOw0KPiA+PiA+
ID4+ICB9DQo+ID4+ID4gPj4gQEAgLTEzMTUsMTggKzEzODgsNiBAQCBpbl9hZGRtdWx0aShzdHJ1
Y3QgaW5fYWRkciAqYXAsIHN0cnVjdCBpZm5ldCAqaWZwKQ0KPiA+PiA+ID4+ICB9DQo+ID4+ID4g
Pj4NCj4gPj4gPiA+PiAgLyoNCj4gPj4gPiA+PiAtICogTGVhdmUgYW4gSVB2NCBtdWx0aWNhc3Qg
Z3JvdXAsIGFzc3VtZWQgdG8gYmUgaW4gZXhjbHVzaXZlICgqLEcpIG1vZGUuDQo+ID4+ID4gPj4g
LSAqIFRoaXMgS1BJIGlzIGZvciBsZWdhY3kga2VybmVsIGNvbnN1bWVycyBvbmx5Lg0KPiA+PiA+
ID4+IC0gKi8NCj4gPj4gPiA+Pg0KPiA+PiA+ID4+ICoqKiBESUZGIE9VVFBVVCBUUlVOQ0FURUQg
QVQgMTAwMCBMSU5FUyAqKioNCj4gPj4gPiA+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fXw0KPiA+PiA+ID4+IHN2bi1zcmMtaGVhZEBmcmVlYnNkLm9yZyBt
YWlsaW5nIGxpc3QNCj4gPj4gPiA+PiBodHRwczovL2xpc3RzLmZyZWVic2Qub3JnL21haWxtYW4v
bGlzdGluZm8vc3ZuLXNyYy1oZWFkDQo+ID4+ID4gPj4gVG8gdW5zdWJzY3JpYmUsIHNlbmQgYW55
IG1haWwgdG8gInN2bi1zcmMtaGVhZC11bnN1YnNjcmliZUBmcmVlYnNkLm9yZyIgIA0KPiA+PiA+
ID4NCj4gPj4gPiA+DQo+ID4+ID4gPiBBZnRlciAoYXJvdW5kISkgdGhpcyB1cGRhdGUsIHNvbWUg
Ym94ZXMgd2l0aCBpMzUwIGR1YWwgcG9ydCBOSUNzIGltbWVkaWF0ZWx5DQo+ID4+ID4gPiBjcmFz
aCB3aXRoIEZhdGFsIHRyYXAgMTI6IHBhZ2UgZmF1bHQgYW5kIHNvbWV0aGluZyB3aXRoDQo+ID4+
ID4gPg0KPiA+PiA+ID4gY3VycmVudCBwcm9jZXNzOiAoaXNjLXdvcmtlcjAwMDYpDQo+ID4+ID4g
Pg0KPiA+PiA+ID4gLi4uLg0KPiA+PiA+ID4NCj4gPj4gPiA+IFRob3NlIGJveGVzIGRvIG5vdCBo
YXZlIGRlYnVnZ2luZyBrZXJuZWwuIFRoZSBzeW1wdG9tYnMgYXJlIHRoZSBzYW1lLiBTaW5nbGUg
dXNlcg0KPiA+PiA+ID4ga2VybmVsIHdvcmtzLCBidXQgdGhlIG1vbWVudCBJIHBlcmZvcm0gL2V0
Yy9uZXRzdGFydCBhbmQgYW55IGtpbmQgb2YgbmV0IHRyYWZmaWMNCj4gPj4gPiA+IGVzdGFibGlz
aGVzLCB0aGlzIGNyYXAgYmFpbHMgb3V0Lg0KPiA+PiA+ID4NCj4gPj4gPiA+DQo+ID4+ID4gPiAt
IC0tDQo+ID4+ID4gPiBPLiBIYXJ0bWFubg0KPiA+PiA+ID4NCj4gPj4gPiA+IEljaCB3aWRlcnNw
cmVjaGUgZGVyIE51dHp1bmcgb2RlciDDnGJlcm1pdHRsdW5nIG1laW5lciBEYXRlbiBmw7xyDQo+
ID4+ID4gPiBXZXJiZXp3ZWNrZSBvZGVyIGbDvHIgZGllIE1hcmt0LSBvZGVyIE1laW51bmdzZm9y
c2NodW5nICjCpyAyOCBBYnMuIDQgQkRTRykuDQo+ID4+ID4gPiAtLS0tLUJFR0lOIFBHUCBTSUdO
QVRVUkUtLS0tLQ0KPiA+PiA+ID4NCj4gPj4gPiA+IGlMVUVBUk1LQUIwV0lRUVpWWk16QXR3QzJU
Lzg2VHJTNTI4ZnlGaFlsQVVDV3V0anRnQUtDUkRTNTI4ZnlGaFkNCj4gPj4gPiA+IGxBa3pBZjlQ
aGFGVHdOaFFEMnpGN3hTSEoyd2Z2THRvVUVqWmx6R3N1c0FDcDFwYTdKQWZ6MFB5ditsbStYTkoN
Cj4gPj4gPiA+IHZMRWxySWYxQ21EenVBOHlibFoveC93T1ZTSmtBZjlDKzUwRFZFdEdxNUgvYkhT
RE53em1xcmo4WWdCN1hwU3MNCj4gPj4gPiA+IFBNUlhjK0l3SWExSmdpMnlNKzZUQ1NOU3MxTjVi
RVVoVTlCaThlWHk2WTBGU2tBWmVWK3MNCj4gPj4gPiA+ID1TMGJDDQo+ID4+ID4gPiAtLS0tLUVO
RCBQR1AgU0lHTkFUVVJFLS0tLS0NCj4gPj4gPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fDQo+ID4+ID4gPiBzdm4tc3JjLWhlYWRAZnJlZWJzZC5vcmcg
bWFpbGluZyBsaXN0DQo+ID4+ID4gPiBodHRwczovL2xpc3RzLmZyZWVic2Qub3JnL21haWxtYW4v
bGlzdGluZm8vc3ZuLXNyYy1oZWFkDQo+ID4+ID4gPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhbnkg
bWFpbCB0byAic3ZuLXNyYy1oZWFkLXVuc3Vic2NyaWJlQGZyZWVic2Qub3JnIiAgDQo+ID4+DQo+
ID4+DQo+ID4+DQo+ID4+IC0gLS0NCj4gPj4gTy4gSGFydG1hbm4NCj4gPj4NCj4gPj4gSWNoIHdp
ZGVyc3ByZWNoZSBkZXIgTnV0enVuZyBvZGVyIMOcYmVybWl0dGx1bmcgbWVpbmVyIERhdGVuIGbD
vHINCj4gPj4gV2VyYmV6d2Vja2Ugb2RlciBmw7xyIGRpZSBNYXJrdC0gb2RlciBNZWludW5nc2Zv
cnNjaHVuZyAowqcgMjggQWJzLiA0IEJEU0cpLg0KPiA+PiAtLS0tLUJFR0lOIFBHUCBTSUdOQVRV
UkUtLS0tLQ0KPiA+Pg0KPiA+PiBpTFVFQVJNS0FCMFdJUVFaVlpNekF0d0MyVC84NlRyUzUyOGZ5
RmhZbEFVQ1d1dHY4d0FLQ1JEUzUyOGZ5RmhZDQo+ID4+IGxJZTFBZndPQ0FpZ3BYYXdaN0tBakxO
cFdqUlQ0RHNyemZxY0M1N01vemlWUXlLK1g5cW9RQTJ2MHBsVk5wUDANCj4gPj4gRkxxaDVka1JY
aWlPTHJ5cjlhdUlMVUt5TENOeUFmd0w3Y0ZlMVlSWDdWbnNLNXcvLzhYbTI1dEo3NENYQzhQMA0K
PiA+PiBnYW9TcXZEcUNLV1RqNmlOK1EvUGpvTm9oV29JSzc2dGlaQVdQamthSGV1RmJ5cFBhMkcr
DQo+ID4+ID1FcEphDQo+ID4+IC0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ0KPiA+PiBfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiA+PiBzdm4tc3Jj
LWhlYWRAZnJlZWJzZC5vcmcgbWFpbGluZyBsaXN0DQo+ID4+IGh0dHBzOi8vbGlzdHMuZnJlZWJz
ZC5vcmcvbWFpbG1hbi9saXN0aW5mby9zdm4tc3JjLWhlYWQNCj4gPj4gVG8gdW5zdWJzY3JpYmUs
IHNlbmQgYW55IG1haWwgdG8gInN2bi1zcmMtaGVhZC11bnN1YnNjcmliZUBmcmVlYnNkLm9yZyIg
IA0KPiA+DQo+ID4NCj4gPg0KPiA+IC0gLS0NCj4gPiBPLiBIYXJ0bWFubg0KPiA+DQo+ID4gSWNo
IHdpZGVyc3ByZWNoZSBkZXIgTnV0enVuZyBvZGVyIMOcYmVybWl0dGx1bmcgbWVpbmVyIERhdGVu
IGbDvHINCj4gPiBXZXJiZXp3ZWNrZSBvZGVyIGbDvHIgZGllIE1hcmt0LSBvZGVyIE1laW51bmdz
Zm9yc2NodW5nICjCpyAyOCBBYnMuIDQgQkRTRykuDQo+ID4gLS0tLS1CRUdJTiBQR1AgU0lHTkFU
VVJFLS0tLS0NCj4gPg0KPiA+IGlMVUVBUk1LQUIwV0lRUVpWWk16QXR3QzJULzg2VHJTNTI4ZnlG
aFlsQVVDV3UxeThnQUtDUkRTNTI4ZnlGaFkNCj4gPiBsRkVvQWY0aVcrNHRTQU9jRzBFUTEvWTJQ
TnFMQ1g0QW5wWVRsU2xhRUN4dEZsRFovWGJOT3czVHlWQjlSYlFDDQo+ID4gcUdFOVV4MnhRQkQ0
OGExTmIxSUhWVkM5amk3akFnQ0xPWHpLVXFtY1hrUE52alNnWldaK1NkeWQ1NUNob0xnWQ0KPiA+
IFNreVk4RlNVM0dFRG0yOFdnYVhqUTRvSmgrNy9GZjY5TnN1RFpsdDdpQzI0S1pkUktIMDANCj4g
PiA9NGJZKw0KPiA+IC0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLSAgDQo+IF9fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IHN2bi1zcmMtaGVhZEBmcmVl
YnNkLm9yZyBtYWlsaW5nIGxpc3QNCj4gaHR0cHM6Ly9saXN0cy5mcmVlYnNkLm9yZy9tYWlsbWFu
L2xpc3RpbmZvL3N2bi1zcmMtaGVhZA0KPiBUbyB1bnN1YnNjcmliZSwgc2VuZCBhbnkgbWFpbCB0
byAic3ZuLXNyYy1oZWFkLXVuc3Vic2NyaWJlQGZyZWVic2Qub3JnIg0KDQoNCg0KLSAtLSANCk8u
IEhhcnRtYW5uDQoNCkljaCB3aWRlcnNwcmVjaGUgZGVyIE51dHp1bmcgb2RlciDDnGJlcm1pdHRs
dW5nIG1laW5lciBEYXRlbiBmw7xyDQpXZXJiZXp3ZWNrZSBvZGVyIGbDvHIgZGllIE1hcmt0LSBv
ZGVyIE1laW51bmdzZm9yc2NodW5nICjCpyAyOCBBYnMuIDQgQkRTRykuDQotLS0tLUJFR0lOIFBH
UCBTSUdOQVRVUkUtLS0tLQ0KDQppTFVFQVJNS0FCMFdJUVFaVlpNekF0d0MyVC84NlRyUzUyOGZ5
RmhZbEFVQ1d1NFV0d0FLQ1JEUzUyOGZ5RmhZDQpsSXoyQWY5bnFyU0dRc2FOVlo5RGNTVFg0b3Jv
M1NSLzhlZnRiQzQxZGF0NjdnallJdWI5eERLVWxiZlVQSWtUDQpvR2RQUDl4TzM1K1hPbm16T0s2
eG1MeUpid3Y1QWdDWGU3WGJjQmNHZlEzODB6aEdnbWVaNWljaDJUZDFMZ3hvDQo4dDdpRm8reFR2
K1RpY1EyN3VScUN3S1BjWUViejA2VUtLZ3E5dHRZcWdYWlYxVUl6czVoDQo9L1VaZg0KLS0tLS1F
TkQgUEdQIFNJR05BVFVSRS0tLS0tDQo=



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