drm: Branch 'master' - 10 commits

[email protected] (GitLab Mirror) Thu, 4 Oct 2018 14:14:28 +0000 (UTC)
Newsgroups gmane.comp.video.dri.patches
Message-ID <[email protected]>
IC5naXRsYWItY2kueW1sICAgICAgICAgICAgICAgICAgIHwgICAxOSArCiBBbmRyb2lkLmNvbW1v
bi5tayAgICAgICAgICAgICAgICB8ICAgIDEgCiBhbWRncHUvTWFrZWZpbGUuYW0gICAgICAgICAg
ICAgICB8ICAgIDEgCiBhbWRncHUvYW1kZ3B1LXN5bWJvbC1jaGVjayAgICAgICB8ICAgIDIgCiBj
b25maWd1cmUuYWMgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgCiBldG5hdml2L01ha2VmaWxl
LmFtICAgICAgICAgICAgICB8ICAgIDEgCiBldG5hdml2L2V0bmF2aXYtc3ltYm9sLWNoZWNrICAg
ICB8ICAgIDIgCiBleHlub3MvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICB8ICAgIDEgCiBleHlu
b3MvZXh5bm9zLXN5bWJvbC1jaGVjayAgICAgICB8ICAgIDIgCiBmcmVlZHJlbm8vTWFrZWZpbGUu
YW0gICAgICAgICAgICB8ICAgIDEgCiBmcmVlZHJlbm8vZnJlZWRyZW5vLXN5bWJvbC1jaGVjayB8
ICAgIDIgCiBpbmNsdWRlL2RybS9hbWRncHVfZHJtLmggICAgICAgICB8ICAgNDcgKysrCiBpbmNs
dWRlL2RybS9kcm0uaCAgICAgICAgICAgICAgICB8ICAgMTYgKwogaW5jbHVkZS9kcm0vZHJtX2Zv
dXJjYy5oICAgICAgICAgfCAgMjE1ICsrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2RybS9kcm1f
bW9kZS5oICAgICAgICAgICB8ICAgMzUgKysKIGluY2x1ZGUvZHJtL2k5MTVfZHJtLmggICAgICAg
ICAgIHwgICAyMiArCiBpbmNsdWRlL2RybS9xeGxfZHJtLmggICAgICAgICAgICB8ICAgIDIgCiBp
bmNsdWRlL2RybS90ZWdyYV9kcm0uaCAgICAgICAgICB8ICA0OTIgKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKystCiBpbmNsdWRlL2RybS92YzRfZHJtLmggICAgICAgICAgICB8
ICAgMTMgLQogaW50ZWwvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAgICAxIAogaW50ZWwv
aW50ZWwtc3ltYm9sLWNoZWNrICAgICAgICAgfCAgICAyIAogbGlia21zL01ha2VmaWxlLmFtICAg
ICAgICAgICAgICAgfCAgICAxIAogbGlia21zL2ttcy1zeW1ib2wtY2hlY2sgICAgICAgICAgfCAg
ICAyIAogbWVzb24uYnVpbGQgICAgICAgICAgICAgICAgICAgICAgfCAgICAyIAogbm91dmVhdS9N
YWtlZmlsZS5hbSAgICAgICAgICAgICAgfCAgICAxIAogbm91dmVhdS9ub3V2ZWF1LXN5bWJvbC1j
aGVjayAgICAgfCAgICAyIAogb21hcC9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgfCAgICAx
IAogb21hcC9vbWFwLXN5bWJvbC1jaGVjayAgICAgICAgICAgfCAgICAyIAogcmFkZW9uL01ha2Vm
aWxlLmFtICAgICAgICAgICAgICAgfCAgICAxIAogcmFkZW9uL3JhZGVvbi1zeW1ib2wtY2hlY2sg
ICAgICAgfCAgICAyIAogdGVncmEvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAgICAxIAog
dGVncmEvdGVncmEtc3ltYm9sLWNoZWNrICAgICAgICAgfCAgICAyIAogdGVzdHMvbW9kZXByaW50
L01ha2VmaWxlLmFtICAgICAgfCAgICAxIAogdGVzdHMvbW9kZXByaW50L21lc29uLmJ1aWxkICAg
ICAgfCAgICAyIAogdGVzdHMvbW9kZXByaW50L21vZGVwcmludC5jICAgICAgfCAgIDUxICstLS0K
IHRlc3RzL3V0aWwva21zLmMgICAgICAgICAgICAgICAgIHwgICAgMSAKIDM2IGZpbGVzIGNoYW5n
ZWQsIDg5MiBpbnNlcnRpb25zKCspLCA1OSBkZWxldGlvbnMoLSkKCk5ldyBjb21taXRzOgpjb21t
aXQgNmU1MGEzMDlhZmIzNDAwODhkN2RhNzYyZjQ0MzRkNDA5MjE2Y2FmMgpBdXRob3I6IEVtaWwg
VmVsaWtvdiA8ZW1pbC52ZWxpa292QGNvbGxhYm9yYS5jb20+CkRhdGU6ICAgVGh1IE9jdCA0IDE1
OjA4OjE3IDIwMTggKzAxMDAKCiAgICBCdW1wIHRvIHZlcnNpb24gMi40Ljk1CiAgICAKICAgIFNp
Z25lZC1vZmYtYnk6IEVtaWwgVmVsaWtvdiA8ZW1pbC5sLnZlbGlrb3ZAZ21haWwuY29tPgoKZGlm
ZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwppbmRleCA3YzgwOTNiMi4uMDE1
NmQ4YjkgMTAwNjQ0Ci0tLSBhL2NvbmZpZ3VyZS5hYworKysgYi9jb25maWd1cmUuYWMKQEAgLTIw
LDcgKzIwLDcgQEAKIAogQUNfUFJFUkVRKFsyLjYzXSkKIEFDX0lOSVQoW2xpYmRybV0sCi0gICAg
ICAgIFsyLjQuOTRdLAorICAgICAgICBbMi40Ljk1XSwKICAgICAgICAgW2h0dHBzOi8vYnVncy5m
cmVlZGVza3RvcC5vcmcvZW50ZXJfYnVnLmNnaT9wcm9kdWN0PURSSV0sCiAgICAgICAgIFtsaWJk
cm1dKQogCmRpZmYgLS1naXQgYS9tZXNvbi5idWlsZCBiL21lc29uLmJ1aWxkCmluZGV4IDgwZDUw
MTg4Li5iZTUwNzUzYiAxMDA2NDQKLS0tIGEvbWVzb24uYnVpbGQKKysrIGIvbWVzb24uYnVpbGQK
QEAgLTIxLDcgKzIxLDcgQEAKIHByb2plY3QoCiAgICdsaWJkcm0nLAogICBbJ2MnXSwKLSAgdmVy
c2lvbiA6ICcyLjQuOTQnLAorICB2ZXJzaW9uIDogJzIuNC45NScsCiAgIGxpY2Vuc2UgOiAnTUlU
JywKICAgbWVzb25fdmVyc2lvbiA6ICc+PSAwLjQzJywKICAgZGVmYXVsdF9vcHRpb25zIDogWydi
dWlsZHR5cGU9ZGVidWdvcHRpbWl6ZWQnLCAnY19zdGQ9Z251OTknXSwKY29tbWl0IDFiMThmNTA4
Yzg5YzU3NGE5ZDRlYjkzNDdjNjA4ZmQ3ZThiZWFiMzEKQXV0aG9yOiBBeWFuIEt1bWFyIEhhbGRl
ciA8YXlhbi5oYWxkZXJAYXJtLmNvbT4KRGF0ZTogICBNb24gT2N0IDEgMTY6MDk6MTggMjAxOCAr
MDEwMAoKICAgIGxpYmRybTogaGVhZGVyczogU3luYyB3aXRoIGRybS1uZXh0CiAgICAKICAgIEdl
bmVyYXRlZCB1c2luZyBtYWtlIGhlYWRlcnNfaW5zdGFsbCBmcm9tIHRoZSBkcm0tbmV4dAogICAg
dHJlZSAtIGdpdDovL2Fub25naXQuZnJlZWRlc2t0b3Aub3JnL2RybS9kcm0KICAgIGJyYW5jaCAt
IGRybS1uZXh0CiAgICBjb21taXQgLSAyZGM3YmFkNzFjZDMxMGRjOTRkMWM5OTA3OTA5MzI0ZGQy
YjA2MThmCiAgICAKICAgIFRoZSBjaGFuZ2VzIHdlcmUgYXMgZm9sbG93cyA6LQogICAgCiAgICAg
IGNvcmU6IChkcm0uaCwgZHJtX2ZvdXJjYy5oLCBkcm1fbW9kZS5oKQogICAgICAgIC0gQWRkZWQg
Y2xpZW50IGNhcGFiaWxpdGllcyBmb3IgQVNQRUNUX1JBVElPIGFuZCBXUklURUJBQ0tfQ09OTkVD
VE9SUwogICAgICAgIC0gQWRkZWQgQXJtIEFGQkMgbW9kaWZpZXJzCiAgICAgICAgLSBBZGRlZCBC
Uk9BRENPTSdzIFNBTkQgYW5kIFVJRiBtb2RpZmllcnMKICAgICAgICAtIEFkZGVkIFF1YWxjb21t
J3MgbW9kaWZpZXJzCiAgICAgICAgLSBBZGRlZCBzb21lIHBpY3R1cmUgYXNwZWN0IHJhdGlvIGFu
ZCBjb250ZW50IHR5cGUgb3B0aW9ucwogICAgICAgIC0gQWRkZWQgc29tZSBkcm0gbW9kZSBmbGFn
cwogICAgICAgIC0gQWRkZWQgd3JpdGViYWNrIGNvbm5lY3RvciBpZAogICAgCiAgICAgIGFtZGdw
dToKICAgICAgICAtIEFkZGVkIEdFTSBkb21haW4gbWFzawogICAgICAgIC0gQWRkZWQgc29tZSBH
RU0gZmxhZ3MKICAgICAgICAtIEFkZGVkIHNvbWUgaGFyZHdhcmUgaXAgZmxhZ3MKICAgICAgICAt
IEFkZGVkIGNodW5rIGlkIGFuZCBJQiBmZW5jZS4KICAgICAgICAtIEFkZGVkIHNvbWUgcXVlcnkg
aWRzCiAgICAKICAgICAgaTkxNToKICAgICAgICAtQWRkZWQgYW4gSU9DVEwgKEk5MTVfUEFSQU1f
TU1BUF9HVFRfQ09IRVJFTlQpCiAgICAKICAgICAgcXhsOgogICAgICAgIC0gTWlub3IgY2hhbmdl
cwogICAgCiAgICAgIHRlZ3JhOgogICAgICAgIC0gQWRkZWQgc29tZSBjb21tZW50cyBhYm91dCBz
dHJ1Y3QgZHJtX3RlZ3JhKiBtZW1iZXJzCiAgICAgICAgLSBNb2RpZmllZCBEUk1fSU9DVExfVEVH
UkFfQ0xPU0VfQ0hBTk5FTAogICAgCiAgICAgIHZjNDoKICAgICAgICAtIEFkZGVkIHNvbWUgbWVt
YmVycyBmb3IgJ3N0cnVjdCBkcm1fdmM0X3N1Ym1pdF9jbCcKICAgIAogICAgQ2hhbmdlcyBpbiB2
MjoKICAgICAgICAtIE1lbnRpb25lZCAnbGliZHJtJyBpbiB0aGUgY29tbWl0IGhlYWRlci4KICAg
IAogICAgQ2hhbmdlcyBpbiB2MzoKICAgICAgICAtIFJlbW92ZWQgdGhlIGNoYW5nZXMgdG8gcmFk
ZW9uX2RybS5oLCBzaXNfZHJtLmggYW5kIHZpYV9kcm0uaCBhcyBzdWdnZXN0ZWQgYnkKICAgICAg
ICAgIEVtaWwgVmVsaWtvdiA8ZW1pbC5sLnZlbGlrb3ZAZ21haWwuY29tPgogICAgCiAgICBDaGFu
Z2VzIGluIHY0OgogICAgICAgIC0gUmVtb3ZlZCB0aGUgY2hhbmdlcyB0byB2bXdnZnhfZHJtLmgg
YXMgaXQgY2F1c2VkIGEgYnVpbGQgYnJlYWsgaWUKICAgICAgICAgICdtYWtlIGNoZWNrJyBmYWls
ZWQuCiAgICAKICAgIENoYW5nZS1JZDogSTAxOGEwNmY2NWJmNGE2YTY4NDAwYWIyNTJiOWNkMDVk
MDQxMjk5YjMKICAgIFNpZ25lZC1vZmYtYnk6IEF5YW4gS3VtYXIgaGFsZGVyIDxheWFuLmhhbGRl
ckBhcm0uY29tPgogICAgUmV2aWV3ZWQtYnk6IEVtaWwgVmVsaWtvdiA8ZW1pbC5sLnZlbGlrb3ZA
Z21haWwuY29tPgoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2FtZGdwdV9kcm0uaCBiL2luY2x1
ZGUvZHJtL2FtZGdwdV9kcm0uaAppbmRleCBjMzYzYjY3Zi4uMWNlZWM1NmQgMTAwNjQ0Ci0tLSBh
L2luY2x1ZGUvZHJtL2FtZGdwdV9kcm0uaAorKysgYi9pbmNsdWRlL2RybS9hbWRncHVfZHJtLmgK
QEAgLTcyLDEyICs3Miw0MSBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgRFJNX0lPQ1RMX0FNREdQ
VV9GRU5DRV9UT19IQU5ETEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9BTURHUFVf
RkVOQ0VfVE9fSEFORExFLCB1bmlvbiBkcm1fYW1kZ3B1X2ZlbmNlX3RvX2hhbmRsZSkKICNkZWZp
bmUgRFJNX0lPQ1RMX0FNREdQVV9TQ0hFRAkJRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJN
X0FNREdQVV9TQ0hFRCwgdW5pb24gZHJtX2FtZGdwdV9zY2hlZCkKIAorLyoqCisgKiBET0M6IG1l
bW9yeSBkb21haW5zCisgKgorICogJUFNREdQVV9HRU1fRE9NQUlOX0NQVQlTeXN0ZW0gbWVtb3J5
IHRoYXQgaXMgbm90IEdQVSBhY2Nlc3NpYmxlLgorICogTWVtb3J5IGluIHRoaXMgcG9vbCBjb3Vs
ZCBiZSBzd2FwcGVkIG91dCB0byBkaXNrIGlmIHRoZXJlIGlzIHByZXNzdXJlLgorICoKKyAqICVB
TURHUFVfR0VNX0RPTUFJTl9HVFQJR1BVIGFjY2Vzc2libGUgc3lzdGVtIG1lbW9yeSwgbWFwcGVk
IGludG8gdGhlCisgKiBHUFUncyB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgdmlhIGdhcnQuIEdhcnQg
bWVtb3J5IGxpbmVhcml6ZXMgbm9uLWNvbnRpZ3VvdXMKKyAqIHBhZ2VzIG9mIHN5c3RlbSBtZW1v
cnksIGFsbG93cyBHUFUgYWNjZXNzIHN5c3RlbSBtZW1vcnkgaW4gYSBsaW5lenJpemVkCisgKiBm
YXNoaW9uLgorICoKKyAqICVBTURHUFVfR0VNX0RPTUFJTl9WUkFNCUxvY2FsIHZpZGVvIG1lbW9y
eS4gRm9yIEFQVXMsIGl0IGlzIG1lbW9yeQorICogY2FydmVkIG91dCBieSB0aGUgQklPUy4KKyAq
CisgKiAlQU1ER1BVX0dFTV9ET01BSU5fR0RTCUdsb2JhbCBvbi1jaGlwIGRhdGEgc3RvcmFnZSB1
c2VkIHRvIHNoYXJlIGRhdGEKKyAqIGFjcm9zcyBzaGFkZXIgdGhyZWFkcy4KKyAqCisgKiAlQU1E
R1BVX0dFTV9ET01BSU5fR1dTCUdsb2JhbCB3YXZlIHN5bmMsIHVzZWQgdG8gc3luY2hyb25pemUg
dGhlCisgKiBleGVjdXRpb24gb2YgYWxsIHRoZSB3YXZlcyBvbiBhIGRldmljZS4KKyAqCisgKiAl
QU1ER1BVX0dFTV9ET01BSU5fT0EJT3JkZXJlZCBhcHBlbmQsIHVzZWQgYnkgM0Qgb3IgQ29tcHV0
ZSBlbmdpbmVzCisgKiBmb3IgYXBwZW5kaW5nIGRhdGEuCisgKi8KICNkZWZpbmUgQU1ER1BVX0dF
TV9ET01BSU5fQ1BVCQkweDEKICNkZWZpbmUgQU1ER1BVX0dFTV9ET01BSU5fR1RUCQkweDIKICNk
ZWZpbmUgQU1ER1BVX0dFTV9ET01BSU5fVlJBTQkJMHg0CiAjZGVmaW5lIEFNREdQVV9HRU1fRE9N
QUlOX0dEUwkJMHg4CiAjZGVmaW5lIEFNREdQVV9HRU1fRE9NQUlOX0dXUwkJMHgxMAogI2RlZmlu
ZSBBTURHUFVfR0VNX0RPTUFJTl9PQQkJMHgyMAorI2RlZmluZSBBTURHUFVfR0VNX0RPTUFJTl9N
QVNLCQkoQU1ER1BVX0dFTV9ET01BSU5fQ1BVIHwgXAorCQkJCQkgQU1ER1BVX0dFTV9ET01BSU5f
R1RUIHwgXAorCQkJCQkgQU1ER1BVX0dFTV9ET01BSU5fVlJBTSB8IFwKKwkJCQkJIEFNREdQVV9H
RU1fRE9NQUlOX0dEUyB8IFwKKwkJCQkJIEFNREdQVV9HRU1fRE9NQUlOX0dXUyB8IFwKKwkJCQkJ
IEFNREdQVV9HRU1fRE9NQUlOX09BKQogCiAvKiBGbGFnIHRoYXQgQ1BVIGFjY2VzcyB3aWxsIGJl
IHJlcXVpcmVkIGZvciB0aGUgY2FzZSBvZiBWUkFNIGRvbWFpbiAqLwogI2RlZmluZSBBTURHUFVf
R0VNX0NSRUFURV9DUFVfQUNDRVNTX1JFUVVJUkVECSgxIDw8IDApCkBAIC05NSw2ICsxMjQsMTAg
QEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIEFNREdQVV9HRU1fQ1JFQVRFX1ZNX0FMV0FZU19WQUxJ
RAkoMSA8PCA2KQogLyogRmxhZyB0aGF0IEJPIHNoYXJpbmcgd2lsbCBiZSBleHBsaWNpdGx5IHN5
bmNocm9uaXplZCAqLwogI2RlZmluZSBBTURHUFVfR0VNX0NSRUFURV9FWFBMSUNJVF9TWU5DCQko
MSA8PCA3KQorLyogRmxhZyB0aGF0IGluZGljYXRlcyBhbGxvY2F0aW5nIE1RRCBnYXJ0IG9uIEdG
WDksIHdoZXJlIHRoZSBtdHlwZQorICogZm9yIHRoZSBzZWNvbmQgcGFnZSBvbndhcmQgc2hvdWxk
IGJlIHNldCB0byBOQy4KKyAqLworI2RlZmluZSBBTURHUFVfR0VNX0NSRUFURV9NUURfR0ZYOQkJ
KDEgPDwgOCkKIAogc3RydWN0IGRybV9hbWRncHVfZ2VtX2NyZWF0ZV9pbiAgewogCS8qKiB0aGUg
cmVxdWVzdGVkIG1lbW9yeSBzaXplICovCkBAIC00NzMsNyArNTA2LDggQEAgc3RydWN0IGRybV9h
bWRncHVfZ2VtX3ZhIHsKICNkZWZpbmUgQU1ER1BVX0hXX0lQX1VWRF9FTkMgICAgICA1CiAjZGVm
aW5lIEFNREdQVV9IV19JUF9WQ05fREVDICAgICAgNgogI2RlZmluZSBBTURHUFVfSFdfSVBfVkNO
X0VOQyAgICAgIDcKLSNkZWZpbmUgQU1ER1BVX0hXX0lQX05VTSAgICAgICAgICA4CisjZGVmaW5l
IEFNREdQVV9IV19JUF9WQ05fSlBFRyAgICAgOAorI2RlZmluZSBBTURHUFVfSFdfSVBfTlVNICAg
ICAgICAgIDkKIAogI2RlZmluZSBBTURHUFVfSFdfSVBfSU5TVEFOQ0VfTUFYX0NPVU5UIDEKIApA
QCAtNDgyLDYgKzUxNiw3IEBAIHN0cnVjdCBkcm1fYW1kZ3B1X2dlbV92YSB7CiAjZGVmaW5lIEFN
REdQVV9DSFVOS19JRF9ERVBFTkRFTkNJRVMJMHgwMwogI2RlZmluZSBBTURHUFVfQ0hVTktfSURf
U1lOQ09CSl9JTiAgICAgIDB4MDQKICNkZWZpbmUgQU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfT1VU
ICAgICAweDA1CisjZGVmaW5lIEFNREdQVV9DSFVOS19JRF9CT19IQU5ETEVTICAgICAgMHgwNgog
CiBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVuayB7CiAJX191MzIJCWNodW5rX2lkOwpAQCAtNTIw
LDYgKzU1NSwxMCBAQCB1bmlvbiBkcm1fYW1kZ3B1X2NzIHsKIC8qIFByZWVtcHQgZmxhZywgSUIg
c2hvdWxkIHNldCBQcmVfZW5iIGJpdCBpZiBQUkVFTVBUIGZsYWcgZGV0ZWN0ZWQgKi8KICNkZWZp
bmUgQU1ER1BVX0lCX0ZMQUdfUFJFRU1QVCAoMTw8MikKIAorLyogVGhlIElCIGZlbmNlIHNob3Vs
ZCBkbyB0aGUgTDIgd3JpdGViYWNrIGJ1dCBub3QgaW52YWxpZGF0ZSBhbnkgc2hhZGVyCisgKiBj
YWNoZXMgKEwyL3ZMMS9zTDEvSSQpLiAqLworI2RlZmluZSBBTURHUFVfSUJfRkxBR19UQ19XQl9O
T1RfSU5WQUxJREFURSAoMSA8PCAzKQorCiBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19pYiB7
CiAJX191MzIgX3BhZDsKIAkvKiogQU1ER1BVX0lCX0ZMQUdfKiAqLwpAQCAtNjIwLDYgKzY1OSwx
MiBAQCBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19kYXRhIHsKIAkjZGVmaW5lIEFNREdQVV9J
TkZPX0ZXX0FTRAkJMHgwZAogCS8qIFN1YnF1ZXJ5IGlkOiBRdWVyeSBWQ04gZmlybXdhcmUgdmVy
c2lvbiAqLwogCSNkZWZpbmUgQU1ER1BVX0lORk9fRldfVkNOCQkweDBlCisJLyogU3VicXVlcnkg
aWQ6IFF1ZXJ5IEdGWCBSTEMgU1JMQyBmaXJtd2FyZSB2ZXJzaW9uICovCisJI2RlZmluZSBBTURH
UFVfSU5GT19GV19HRlhfUkxDX1JFU1RPUkVfTElTVF9DTlRMIDB4MGYKKwkvKiBTdWJxdWVyeSBp
ZDogUXVlcnkgR0ZYIFJMQyBTUkxHIGZpcm13YXJlIHZlcnNpb24gKi8KKwkjZGVmaW5lIEFNREdQ
VV9JTkZPX0ZXX0dGWF9STENfUkVTVE9SRV9MSVNUX0dQTV9NRU0gMHgxMAorCS8qIFN1YnF1ZXJ5
IGlkOiBRdWVyeSBHRlggUkxDIFNSTFMgZmlybXdhcmUgdmVyc2lvbiAqLworCSNkZWZpbmUgQU1E
R1BVX0lORk9fRldfR0ZYX1JMQ19SRVNUT1JFX0xJU1RfU1JNX01FTSAweDExCiAvKiBudW1iZXIg
b2YgYnl0ZXMgbW92ZWQgZm9yIFRUTSBtaWdyYXRpb24gKi8KICNkZWZpbmUgQU1ER1BVX0lORk9f
TlVNX0JZVEVTX01PVkVECQkweDBmCiAvKiB0aGUgdXNlZCBWUkFNIHNpemUgKi8KZGlmZiAtLWdp
dCBhL2luY2x1ZGUvZHJtL2RybS5oIGIvaW5jbHVkZS9kcm0vZHJtLmgKaW5kZXggZjBiZDkxZGUu
Ljg1YzY4NWEyIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm0uaAorKysgYi9pbmNsdWRlL2Ry
bS9kcm0uaApAQCAtNjc0LDYgKzY3NCwyMiBAQCBzdHJ1Y3QgZHJtX2dldF9jYXAgewogICovCiAj
ZGVmaW5lIERSTV9DTElFTlRfQ0FQX0FUT01JQwkzCiAKKy8qKgorICogRFJNX0NMSUVOVF9DQVBf
QVNQRUNUX1JBVElPCisgKgorICogSWYgc2V0IHRvIDEsIHRoZSBEUk0gY29yZSB3aWxsIHByb3Zp
ZGUgYXNwZWN0IHJhdGlvIGluZm9ybWF0aW9uIGluIG1vZGVzLgorICovCisjZGVmaW5lIERSTV9D
TElFTlRfQ0FQX0FTUEVDVF9SQVRJTyAgICA0CisKKy8qKgorICogRFJNX0NMSUVOVF9DQVBfV1JJ
VEVCQUNLX0NPTk5FQ1RPUlMKKyAqCisgKiBJZiBzZXQgdG8gMSwgdGhlIERSTSBjb3JlIHdpbGwg
ZXhwb3NlIHNwZWNpYWwgY29ubmVjdG9ycyB0byBiZSB1c2VkIGZvcgorICogd3JpdGluZyBiYWNr
IHRvIG1lbW9yeSB0aGUgc2NlbmUgc2V0dXAgaW4gdGhlIGNvbW1pdC4gRGVwZW5kcyBvbiBjbGll
bnQKKyAqIGFsc28gc3VwcG9ydGluZyBEUk1fQ0xJRU5UX0NBUF9BVE9NSUMKKyAqLworI2RlZmlu
ZSBEUk1fQ0xJRU5UX0NBUF9XUklURUJBQ0tfQ09OTkVDVE9SUwk1CisKIC8qKiBEUk1fSU9DVExf
U0VUX0NMSUVOVF9DQVAgaW9jdGwgYXJndW1lbnQgdHlwZSAqLwogc3RydWN0IGRybV9zZXRfY2xp
ZW50X2NhcCB7CiAJX191NjQgY2FwYWJpbGl0eTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2Ry
bV9mb3VyY2MuaCBiL2luY2x1ZGUvZHJtL2RybV9mb3VyY2MuaAppbmRleCBlMDQ2MTNkMy4uMTM5
NjMyYjggMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9mb3VyY2MuaAorKysgYi9pbmNsdWRl
L2RybS9kcm1fZm91cmNjLmgKQEAgLTMwLDExICszMCw1MCBAQAogZXh0ZXJuICJDIiB7CiAjZW5k
aWYKIAorLyoqCisgKiBET0M6IG92ZXJ2aWV3CisgKgorICogSW4gdGhlIERSTSBzdWJzeXN0ZW0s
IGZyYW1lYnVmZmVyIHBpeGVsIGZvcm1hdHMgYXJlIGRlc2NyaWJlZCB1c2luZyB0aGUKKyAqIGZv
dXJjYyBjb2RlcyBkZWZpbmVkIGluIGBpbmNsdWRlL3VhcGkvZHJtL2RybV9mb3VyY2MuaGAuIElu
IGFkZGl0aW9uIHRvIHRoZQorICogZm91cmNjIGNvZGUsIGEgRm9ybWF0IE1vZGlmaWVyIG1heSBv
cHRpb25hbGx5IGJlIHByb3ZpZGVkLCBpbiBvcmRlciB0bworICogZnVydGhlciBkZXNjcmliZSB0
aGUgYnVmZmVyJ3MgZm9ybWF0IC0gZm9yIGV4YW1wbGUgdGlsaW5nIG9yIGNvbXByZXNzaW9uLgor
ICoKKyAqIEZvcm1hdCBNb2RpZmllcnMKKyAqIC0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBGb3Jt
YXQgbW9kaWZpZXJzIGFyZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYSBmb3VyY2MgY29kZSwg
Zm9ybWluZyBhCisgKiB1bmlxdWUgZm91cmNjOm1vZGlmaWVyIHBhaXIuIFRoaXMgZm9ybWF0Om1v
ZGlmaWVyIHBhaXIgbXVzdCBmdWxseSBkZWZpbmUgdGhlCisgKiBmb3JtYXQgYW5kIGRhdGEgbGF5
b3V0IG9mIHRoZSBidWZmZXIsIGFuZCBzaG91bGQgYmUgdGhlIG9ubHkgd2F5IHRvIGRlc2NyaWJl
CisgKiB0aGF0IHBhcnRpY3VsYXIgYnVmZmVyLgorICoKKyAqIEhhdmluZyBtdWx0aXBsZSBmb3Vy
Y2M6bW9kaWZpZXIgcGFpcnMgd2hpY2ggZGVzY3JpYmUgdGhlIHNhbWUgbGF5b3V0IHNob3VsZAor
ICogYmUgYXZvaWRlZCwgYXMgc3VjaCBhbGlhc2VzIHJ1biB0aGUgcmlzayBvZiBkaWZmZXJlbnQg
ZHJpdmVycyBleHBvc2luZworICogZGlmZmVyZW50IG5hbWVzIGZvciB0aGUgc2FtZSBkYXRhIGZv
cm1hdCwgZm9yY2luZyB1c2Vyc3BhY2UgdG8gdW5kZXJzdGFuZAorICogdGhhdCB0aGV5IGFyZSBh
bGlhc2VzLgorICoKKyAqIEZvcm1hdCBtb2RpZmllcnMgbWF5IGNoYW5nZSBhbnkgcHJvcGVydHkg
b2YgdGhlIGJ1ZmZlciwgaW5jbHVkaW5nIHRoZSBudW1iZXIKKyAqIG9mIHBsYW5lcyBhbmQvb3Ig
dGhlIHJlcXVpcmVkIGFsbG9jYXRpb24gc2l6ZS4gRm9ybWF0IG1vZGlmaWVycyBhcmUKKyAqIHZl
bmRvci1uYW1lc3BhY2VkLCBhbmQgYXMgc3VjaCB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gYSBm
b3VyY2MgY29kZSBhbmQgYQorICogbW9kaWZpZXIgaXMgc3BlY2lmaWMgdG8gdGhlIG1vZGlmZXIg
YmVpbmcgdXNlZC4gRm9yIGV4YW1wbGUsIHNvbWUgbW9kaWZpZXJzCisgKiBtYXkgcHJlc2VydmUg
bWVhbmluZyAtIHN1Y2ggYXMgbnVtYmVyIG9mIHBsYW5lcyAtIGZyb20gdGhlIGZvdXJjYyBjb2Rl
LAorICogd2hlcmVhcyBvdGhlcnMgbWF5IG5vdC4KKyAqCisgKiBWZW5kb3JzIHNob3VsZCBkb2N1
bWVudCB0aGVpciBtb2RpZmllciB1c2FnZSBpbiBhcyBtdWNoIGRldGFpbCBhcworICogcG9zc2li
bGUsIHRvIGVuc3VyZSBtYXhpbXVtIGNvbXBhdGliaWxpdHkgYWNyb3NzIGRldmljZXMsIGRyaXZl
cnMgYW5kCisgKiBhcHBsaWNhdGlvbnMuCisgKgorICogVGhlIGF1dGhvcml0YXRpdmUgbGlzdCBv
ZiBmb3JtYXQgbW9kaWZpZXIgY29kZXMgaXMgZm91bmQgaW4KKyAqIGBpbmNsdWRlL3VhcGkvZHJt
L2RybV9mb3VyY2MuaGAKKyAqLworCiAjZGVmaW5lIGZvdXJjY19jb2RlKGEsIGIsIGMsIGQpICgo
X191MzIpKGEpIHwgKChfX3UzMikoYikgPDwgOCkgfCBcCiAJCQkJICgoX191MzIpKGMpIDw8IDE2
KSB8ICgoX191MzIpKGQpIDw8IDI0KSkKIAogI2RlZmluZSBEUk1fRk9STUFUX0JJR19FTkRJQU4g
KDE8PDMxKSAvKiBmb3JtYXQgaXMgYmlnIGVuZGlhbiBpbnN0ZWFkIG9mIGxpdHRsZSBlbmRpYW4g
Ki8KIAorLyogUmVzZXJ2ZSAwIGZvciB0aGUgaW52YWxpZCBmb3JtYXQgc3BlY2lmaWVyICovCisj
ZGVmaW5lIERSTV9GT1JNQVRfSU5WQUxJRAkwCisKIC8qIGNvbG9yIGluZGV4ICovCiAjZGVmaW5l
IERSTV9GT1JNQVRfQzgJCWZvdXJjY19jb2RlKCdDJywgJzgnLCAnICcsICcgJykgLyogWzc6MF0g
QyAqLwogCkBAIC0xODMsNiArMjIyLDcgQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIERSTV9GT1JN
QVRfTU9EX1ZFTkRPUl9RQ09NICAgIDB4MDUKICNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9S
X1ZJVkFOVEUgMHgwNgogI2RlZmluZSBEUk1fRk9STUFUX01PRF9WRU5ET1JfQlJPQURDT00gMHgw
NworI2RlZmluZSBEUk1fRk9STUFUX01PRF9WRU5ET1JfQVJNICAgICAweDA4CiAvKiBhZGQgbW9y
ZSB0byB0aGUgZW5kIGFzIG5lZWRlZCAqLwogCiAjZGVmaW5lIERSTV9GT1JNQVRfUkVTRVJWRUQJ
ICAgICAgKCgxVUxMIDw8IDU2KSAtIDEpCkBAIC0yOTgsNiArMzM4LDE5IEBAIGV4dGVybiAiQyIg
ewogICovCiAjZGVmaW5lIERSTV9GT1JNQVRfTU9EX1NBTVNVTkdfNjRfMzJfVElMRQlmb3VyY2Nf
bW9kX2NvZGUoU0FNU1VORywgMSkKIAorLyoKKyAqIFF1YWxjb21tIENvbXByZXNzZWQgRm9ybWF0
CisgKgorICogUmVmZXJzIHRvIGEgY29tcHJlc3NlZCB2YXJpYW50IG9mIHRoZSBiYXNlIGZvcm1h
dCB0aGF0IGlzIGNvbXByZXNzZWQuCisgKiBJbXBsZW1lbnRhdGlvbiBtYXkgYmUgcGxhdGZvcm0g
YW5kIGJhc2UtZm9ybWF0IHNwZWNpZmljLgorICoKKyAqIEVhY2ggbWFjcm90aWxlIGNvbnNpc3Rz
IG9mIG0geCBuIChtb3N0bHkgNCB4IDQpIHRpbGVzLgorICogUGl4ZWwgZGF0YSBwaXRjaC9zdHJp
ZGUgaXMgYWxpZ25lZCB3aXRoIG1hY3JvdGlsZSB3aWR0aC4KKyAqIFBpeGVsIGRhdGEgaGVpZ2h0
IGlzIGFsaWduZWQgd2l0aCBtYWNyb3RpbGUgaGVpZ2h0LgorICogRW50aXJlIHBpeGVsIGRhdGEg
YnVmZmVyIGlzIGFsaWduZWQgd2l0aCA0ayhieXRlcykuCisgKi8KKyNkZWZpbmUgRFJNX0ZPUk1B
VF9NT0RfUUNPTV9DT01QUkVTU0VECWZvdXJjY19tb2RfY29kZShRQ09NLCAxKQorCiAvKiBWaXZh
bnRlIGZyYW1lYnVmZmVyIG1vZGlmaWVycyAqLwogCiAvKgpAQCAtMzg1LDYgKzQzOCwyMyBAQCBl
eHRlcm4gIkMiIHsKIAlmb3VyY2NfbW9kX2NvZGUoTlZJRElBLCAweDE1KQogCiAvKgorICogU29t
ZSBCcm9hZGNvbSBtb2RpZmllcnMgdGFrZSBwYXJhbWV0ZXJzLCBmb3IgZXhhbXBsZSB0aGUgbnVt
YmVyIG9mCisgKiB2ZXJ0aWNhbCBsaW5lcyBpbiB0aGUgaW1hZ2UuIFJlc2VydmUgdGhlIGxvd2Vy
IDMyIGJpdHMgZm9yIG1vZGlmaWVyCisgKiB0eXBlLCBhbmQgdGhlIG5leHQgMjQgYml0cyBmb3Ig
cGFyYW1ldGVycy4gVG9wIDggYml0cyBhcmUgdGhlCisgKiB2ZW5kb3IgY29kZS4KKyAqLworI2Rl
ZmluZSBfX2ZvdXJjY19tb2RfYnJvYWRjb21fcGFyYW1fc2hpZnQgOAorI2RlZmluZSBfX2ZvdXJj
Y19tb2RfYnJvYWRjb21fcGFyYW1fYml0cyA0OAorI2RlZmluZSBmb3VyY2NfbW9kX2Jyb2FkY29t
X2NvZGUodmFsLCBwYXJhbXMpIFwKKwlmb3VyY2NfbW9kX2NvZGUoQlJPQURDT00sICgoKChfX3U2
NClwYXJhbXMpIDw8IF9fZm91cmNjX21vZF9icm9hZGNvbV9wYXJhbV9zaGlmdCkgfCB2YWwpKQor
I2RlZmluZSBmb3VyY2NfbW9kX2Jyb2FkY29tX3BhcmFtKG0pIFwKKwkoKGludCkoKChtKSA+PiBf
X2ZvdXJjY19tb2RfYnJvYWRjb21fcGFyYW1fc2hpZnQpICYJXAorCSAgICAgICAoKDFVTEwgPDwg
X19mb3VyY2NfbW9kX2Jyb2FkY29tX3BhcmFtX2JpdHMpIC0gMSkpKQorI2RlZmluZSBmb3VyY2Nf
bW9kX2Jyb2FkY29tX21vZChtKSBcCisJKChtKSAmIH4oKCgxVUxMIDw8IF9fZm91cmNjX21vZF9i
cm9hZGNvbV9wYXJhbV9iaXRzKSAtIDEpIDw8CVwKKwkJIF9fZm91cmNjX21vZF9icm9hZGNvbV9w
YXJhbV9zaGlmdCkpCisKKy8qCiAgKiBCcm9hZGNvbSBWQzQgIlQiIGZvcm1hdAogICoKICAqIFRo
aXMgaXMgdGhlIHByaW1hcnkgbGF5b3V0IHRoYXQgdGhlIFYzRCBHUFUgY2FuIHRleHR1cmUgZnJv
bSAoaXQKQEAgLTQwNSw2ICs0NzUsMTUxIEBAIGV4dGVybiAiQyIgewogICovCiAjZGVmaW5lIERS
TV9GT1JNQVRfTU9EX0JST0FEQ09NX1ZDNF9UX1RJTEVEIGZvdXJjY19tb2RfY29kZShCUk9BRENP
TSwgMSkKIAorLyoKKyAqIEJyb2FkY29tIFNBTkQgZm9ybWF0CisgKgorICogVGhpcyBpcyB0aGUg
bmF0aXZlIGZvcm1hdCB0aGF0IHRoZSBILjI2NCBjb2RlYyBibG9jayB1c2VzLiAgRm9yIFZDNAor
ICogSFZTLCBpdCBpcyBvbmx5IHZhbGlkIGZvciBILjI2NCAoTlYxMi8yMSkgYW5kIFJHQkEgbW9k
ZXMuCisgKgorICogVGhlIGltYWdlIGNhbiBiZSBjb25zaWRlcmVkIHRvIGJlIHNwbGl0IGludG8g
Y29sdW1ucywgYW5kIHRoZQorICogY29sdW1ucyBhcmUgcGxhY2VkIGNvbnNlY3V0aXZlbHkgaW50
byBtZW1vcnkuICBUaGUgd2lkdGggb2YgdGhvc2UKKyAqIGNvbHVtbnMgY2FuIGJlIGVpdGhlciAz
MiwgNjQsIDEyOCwgb3IgMjU2IHBpeGVscywgYnV0IGluIHByYWN0aWNlCisgKiBvbmx5IDEyOCBw
aXhlbCBjb2x1bW5zIGFyZSB1c2VkLgorICoKKyAqIFRoZSBwaXRjaCBiZXR3ZWVuIHRoZSBzdGFy
dCBvZiBlYWNoIGNvbHVtbiBpcyBzZXQgdG8gb3B0aW1hbGx5CisgKiBzd2l0Y2ggYmV0d2VlbiBT
RFJBTSBiYW5rcy4gVGhpcyBpcyBwYXNzZWQgYXMgdGhlIG51bWJlciBvZiBsaW5lcworICogb2Yg
Y29sdW1uIHdpZHRoIGluIHRoZSBtb2RpZmllciAod2UgY2FuJ3QgdXNlIHRoZSBzdHJpZGUgdmFs
dWUgZHVlCisgKiB0byB2YXJpb3VzIGNvcmUgY2hlY2tzIHRoYXQgbG9vayBhdCBpdCAsIHNvIHlv
dSBzaG91bGQgc2V0IHRoZQorICogc3RyaWRlIHRvIHdpZHRoKmNwcCkuCisgKgorICogTm90ZSB0
aGF0IHRoZSBjb2x1bW4gaGVpZ2h0IGZvciB0aGlzIGZvcm1hdCBtb2RpZmllciBpcyB0aGUgc2Ft
ZQorICogZm9yIGFsbCBvZiB0aGUgcGxhbmVzLCBhc3N1bWluZyB0aGF0IGVhY2ggY29sdW1uIGNv
bnRhaW5zIGJvdGggWQorICogYW5kIFVWLiAgU29tZSBTQU5ELXVzaW5nIGhhcmR3YXJlIHN0b3Jl
cyBVViBpbiBhIHNlcGFyYXRlIHRpbGVkCisgKiBpbWFnZSBmcm9tIFkgdG8gcmVkdWNlIHRoZSBj
b2x1bW4gaGVpZ2h0LCB3aGljaCBpcyBub3Qgc3VwcG9ydGVkCisgKiB3aXRoIHRoZXNlIG1vZGlm
aWVycy4KKyAqLworCisjZGVmaW5lIERSTV9GT1JNQVRfTU9EX0JST0FEQ09NX1NBTkQzMl9DT0xf
SEVJR0hUKHYpIFwKKwlmb3VyY2NfbW9kX2Jyb2FkY29tX2NvZGUoMiwgdikKKyNkZWZpbmUgRFJN
X0ZPUk1BVF9NT0RfQlJPQURDT01fU0FORDY0X0NPTF9IRUlHSFQodikgXAorCWZvdXJjY19tb2Rf
YnJvYWRjb21fY29kZSgzLCB2KQorI2RlZmluZSBEUk1fRk9STUFUX01PRF9CUk9BRENPTV9TQU5E
MTI4X0NPTF9IRUlHSFQodikgXAorCWZvdXJjY19tb2RfYnJvYWRjb21fY29kZSg0LCB2KQorI2Rl
ZmluZSBEUk1fRk9STUFUX01PRF9CUk9BRENPTV9TQU5EMjU2X0NPTF9IRUlHSFQodikgXAorCWZv
dXJjY19tb2RfYnJvYWRjb21fY29kZSg1LCB2KQorCisjZGVmaW5lIERSTV9GT1JNQVRfTU9EX0JS
T0FEQ09NX1NBTkQzMiBcCisJRFJNX0ZPUk1BVF9NT0RfQlJPQURDT01fU0FORDMyX0NPTF9IRUlH
SFQoMCkKKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfQlJPQURDT01fU0FORDY0IFwKKwlEUk1fRk9S
TUFUX01PRF9CUk9BRENPTV9TQU5ENjRfQ09MX0hFSUdIVCgwKQorI2RlZmluZSBEUk1fRk9STUFU
X01PRF9CUk9BRENPTV9TQU5EMTI4IFwKKwlEUk1fRk9STUFUX01PRF9CUk9BRENPTV9TQU5EMTI4
X0NPTF9IRUlHSFQoMCkKKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfQlJPQURDT01fU0FORDI1NiBc
CisJRFJNX0ZPUk1BVF9NT0RfQlJPQURDT01fU0FORDI1Nl9DT0xfSEVJR0hUKDApCisKKy8qIEJy
b2FkY29tIFVJRiBmb3JtYXQKKyAqCisgKiBUaGlzIGlzIHRoZSBjb21tb24gZm9ybWF0IGZvciB0
aGUgY3VycmVudCBCcm9hZGNvbSBtdWx0aW1lZGlhCisgKiBibG9ja3MsIGluY2x1ZGluZyBWM0Qg
My54IGFuZCBuZXdlciwgbmV3ZXIgdmlkZW8gY29kZWNzLCBhbmQKKyAqIGRpc3BsYXlzLgorICoK
KyAqIFRoZSBpbWFnZSBjb25zaXN0cyBvZiB1dGlsZXMgKDY0YiBibG9ja3MpLCBVSUYgYmxvY2tz
ICgyeDIgdXRpbGVzKSwKKyAqIGFuZCBtYWNyb2Jsb2NrcyAoNHg0IFVJRiBibG9ja3MpLiAgVGhv
c2UgNHg0IFVJRiBibG9jayBncm91cHMgYXJlCisgKiBzdG9yZWQgaW4gY29sdW1ucywgd2l0aCBw
YWRkaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMgdG8gZW5zdXJlIHRoYXQKKyAqIG1vdmluZyBmcm9t
IG9uZSBjb2x1bW4gdG8gdGhlIG5leHQgZG9lc24ndCBoaXQgdGhlIHNhbWUgU0RSQU0gcGFnZQor
ICogYmFuay4KKyAqCisgKiBUbyBjYWxjdWxhdGUgdGhlIHBhZGRpbmcsIGl0IGlzIGFzc3VtZWQg
dGhhdCBlYWNoIGhhcmR3YXJlIGJsb2NrCisgKiBhbmQgdGhlIHNvZnR3YXJlIGRyaXZpbmcgaXQg
a25vd3MgdGhlIHBsYXRmb3JtJ3MgU0RSQU0gcGFnZSBzaXplLAorICogbnVtYmVyIG9mIGJhbmtz
LCBhbmQgWE9SIGFkZHJlc3MsIGFuZCB0aGF0IGl0J3MgaWRlbnRpY2FsIGJldHdlZW4KKyAqIGFs
bCBibG9ja3MgdXNpbmcgdGhlIGZvcm1hdC4gIFRoaXMgdGlsaW5nIG1vZGlmaWVyIHdpbGwgdXNl
IFhPUiBhcworICogbmVjZXNzYXJ5IHRvIHJlZHVjZSB0aGUgcGFkZGluZy4gIElmIGEgaGFyZHdh
cmUgYmxvY2sgY2FuJ3QgZG8gWE9SLAorICogdGhlIGFzc3VtcHRpb24gaXMgdGhhdCBhIG5vLVhP
UiB0aWxpbmcgbW9kaWZpZXIgd2lsbCBiZSBjcmVhdGVkLgorICovCisjZGVmaW5lIERSTV9GT1JN
QVRfTU9EX0JST0FEQ09NX1VJRiBmb3VyY2NfbW9kX2NvZGUoQlJPQURDT00sIDYpCisKKy8qCisg
KiBBcm0gRnJhbWVidWZmZXIgQ29tcHJlc3Npb24gKEFGQkMpIG1vZGlmaWVycworICoKKyAqIEFG
QkMgaXMgYSBwcm9wcmlldGFyeSBsb3NzbGVzcyBpbWFnZSBjb21wcmVzc2lvbiBwcm90b2NvbCBh
bmQgZm9ybWF0LgorICogSXQgcHJvdmlkZXMgZmluZS1ncmFpbmVkIHJhbmRvbSBhY2Nlc3MgYW5k
IG1pbmltaXplcyB0aGUgYW1vdW50IG9mIGRhdGEKKyAqIHRyYW5zZmVycmVkIGJldHdlZW4gSVAg
YmxvY2tzLgorICoKKyAqIEFGQkMgaGFzIHNldmVyYWwgZmVhdHVyZXMgd2hpY2ggbWF5IGJlIHN1
cHBvcnRlZCBhbmQvb3IgdXNlZCwgd2hpY2ggYXJlCisgKiByZXByZXNlbnRlZCB1c2luZyBiaXRz
IGluIHRoZSBtb2RpZmllci4gTm90IGFsbCBjb21iaW5hdGlvbnMgYXJlIHZhbGlkLAorICogYW5k
IGRpZmZlcmVudCBkZXZpY2VzIG9yIHVzZS1jYXNlcyBtYXkgc3VwcG9ydCBkaWZmZXJlbnQgY29t
YmluYXRpb25zLgorICovCisjZGVmaW5lIERSTV9GT1JNQVRfTU9EX0FSTV9BRkJDKF9fYWZiY19t
b2RlKQlmb3VyY2NfbW9kX2NvZGUoQVJNLCBfX2FmYmNfbW9kZSkKKworLyoKKyAqIEFGQkMgc3Vw
ZXJibG9jayBzaXplCisgKgorICogSW5kaWNhdGVzIHRoZSBzdXBlcmJsb2NrIHNpemUocykgdXNl
ZCBmb3IgdGhlIEFGQkMgYnVmZmVyLiBUaGUgYnVmZmVyCisgKiBzaXplIChpbiBwaXhlbHMpIG11
c3QgYmUgYWxpZ25lZCB0byBhIG11bHRpcGxlIG9mIHRoZSBzdXBlcmJsb2NrIHNpemUuCisgKiBG
b3VyIGxvd2VzdCBzaWduaWZpY2FudCBiaXRzKExTQnMpIGFyZSByZXNlcnZlZCBmb3IgYmxvY2sg
c2l6ZS4KKyAqLworI2RlZmluZSBBRkJDX0ZPUk1BVF9NT0RfQkxPQ0tfU0laRV9NQVNLICAgICAg
MHhmCisjZGVmaW5lIEFGQkNfRk9STUFUX01PRF9CTE9DS19TSVpFXzE2eDE2ICAgICAoMVVMTCkK
KyNkZWZpbmUgQUZCQ19GT1JNQVRfTU9EX0JMT0NLX1NJWkVfMzJ4OCAgICAgICgyVUxMKQorCisv
KgorICogQUZCQyBsb3NzbGVzcyBjb2xvcnNwYWNlIHRyYW5zZm9ybQorICoKKyAqIEluZGljYXRl
cyB0aGF0IHRoZSBidWZmZXIgbWFrZXMgdXNlIG9mIHRoZSBBRkJDIGxvc3NsZXNzIGNvbG9yc3Bh
Y2UKKyAqIHRyYW5zZm9ybS4KKyAqLworI2RlZmluZSBBRkJDX0ZPUk1BVF9NT0RfWVRSICAgICAo
MVVMTCA8PCAgNCkKKworLyoKKyAqIEFGQkMgYmxvY2stc3BsaXQKKyAqCisgKiBJbmRpY2F0ZXMg
dGhhdCB0aGUgcGF5bG9hZCBvZiBlYWNoIHN1cGVyYmxvY2sgaXMgc3BsaXQuIFRoZSBzZWNvbmQK
KyAqIGhhbGYgb2YgdGhlIHBheWxvYWQgaXMgcG9zaXRpb25lZCBhdCBhIHByZWRlZmluZWQgb2Zm
c2V0IGZyb20gdGhlIHN0YXJ0CisgKiBvZiB0aGUgc3VwZXJibG9jayBwYXlsb2FkLgorICovCisj
ZGVmaW5lIEFGQkNfRk9STUFUX01PRF9TUExJVCAgICgxVUxMIDw8ICA1KQorCisvKgorICogQUZC
QyBzcGFyc2UgbGF5b3V0CisgKgorICogVGhpcyBmbGFnIGluZGljYXRlcyB0aGF0IHRoZSBwYXls
b2FkIG9mIGVhY2ggc3VwZXJibG9jayBtdXN0IGJlIHN0b3JlZCBhdCBhCisgKiBwcmVkZWZpbmVk
IHBvc2l0aW9uIHJlbGF0aXZlIHRvIHRoZSBvdGhlciBzdXBlcmJsb2NrcyBpbiB0aGUgc2FtZSBB
RkJDCisgKiBidWZmZXIuIFRoaXMgb3JkZXIgaXMgdGhlIHNhbWUgb3JkZXIgdXNlZCBieSB0aGUg
aGVhZGVyIGJ1ZmZlci4gSW4gdGhpcyBtb2RlCisgKiBlYWNoIHN1cGVyYmxvY2sgaXMgZ2l2ZW4g
dGhlIHNhbWUgYW1vdW50IG9mIHNwYWNlIGFzIGFuIHVuY29tcHJlc3NlZAorICogc3VwZXJibG9j
ayBvZiB0aGUgcGFydGljdWxhciBmb3JtYXQgd291bGQgcmVxdWlyZSwgcm91bmRpbmcgdXAgdG8g
dGhlIG5leHQKKyAqIG11bHRpcGxlIG9mIDEyOCBieXRlcyBpbiBzaXplLgorICovCisjZGVmaW5l
IEFGQkNfRk9STUFUX01PRF9TUEFSU0UgICgxVUxMIDw8ICA2KQorCisvKgorICogQUZCQyBjb3B5
LWJsb2NrIHJlc3RyaWN0CisgKgorICogQnVmZmVycyB3aXRoIHRoaXMgZmxhZyBtdXN0IG9iZXkg
dGhlIGNvcHktYmxvY2sgcmVzdHJpY3Rpb24uIFRoZSByZXN0cmljdGlvbgorICogaXMgc3VjaCB0
aGF0IHRoZXJlIGFyZSBubyBjb3B5LWJsb2NrcyByZWZlcnJpbmcgYWNyb3NzIHRoZSBib3JkZXIg
b2YgOHg4CisgKiBibG9ja3MuIEZvciB0aGUgc3Vic2FtcGxlZCBkYXRhIHRoZSA4eDggbGltaXRh
dGlvbiBpcyBhbHNvIHN1YnNhbXBsZWQuCisgKi8KKyNkZWZpbmUgQUZCQ19GT1JNQVRfTU9EX0NC
UiAgICAgKDFVTEwgPDwgIDcpCisKKy8qCisgKiBBRkJDIHRpbGVkIGxheW91dAorICoKKyAqIFRo
ZSB0aWxlZCBsYXlvdXQgZ3JvdXBzIHN1cGVyYmxvY2tzIGluIDh4OCBvciA0eDQgdGlsZXMsIHdo
ZXJlIGFsbAorICogc3VwZXJibG9ja3MgaW5zaWRlIGEgdGlsZSBhcmUgc3RvcmVkIHRvZ2V0aGVy
IGluIG1lbW9yeS4gOHg4IHRpbGVzIGFyZSB1c2VkCisgKiBmb3IgcGl4ZWwgZm9ybWF0cyB1cCB0
byBhbmQgaW5jbHVkaW5nIDMyIGJwcCB3aGlsZSA0eDQgdGlsZXMgYXJlIHVzZWQgZm9yCisgKiBs
YXJnZXIgYnBwIGZvcm1hdHMuIFRoZSBvcmRlciBiZXR3ZWVuIHRoZSB0aWxlcyBpcyBzY2FuIGxp
bmUuCisgKiBXaGVuIHRoZSB0aWxlZCBsYXlvdXQgaXMgdXNlZCwgdGhlIGJ1ZmZlciBzaXplIChp
biBwaXhlbHMpIG11c3QgYmUgYWxpZ25lZAorICogdG8gdGhlIHRpbGUgc2l6ZS4KKyAqLworI2Rl
ZmluZSBBRkJDX0ZPUk1BVF9NT0RfVElMRUQgICAoMVVMTCA8PCAgOCkKKworLyoKKyAqIEFGQkMg
c29saWQgY29sb3IgYmxvY2tzCisgKgorICogSW5kaWNhdGVzIHRoYXQgdGhlIGJ1ZmZlciBtYWtl
cyB1c2Ugb2Ygc29saWQtY29sb3IgYmxvY2tzLCB3aGVyZWJ5IGJhbmR3aWR0aAorICogY2FuIGJl
IHJlZHVjZWQgaWYgYSB3aG9sZSBzdXBlcmJsb2NrIGlzIGEgc2luZ2xlIGNvbG9yLgorICovCisj
ZGVmaW5lIEFGQkNfRk9STUFUX01PRF9TQyAgICAgICgxVUxMIDw8ICA5KQorCiAjaWYgZGVmaW5l
ZChfX2NwbHVzcGx1cykKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX21v
ZGUuaCBiL2luY2x1ZGUvZHJtL2RybV9tb2RlLmgKaW5kZXggNWY5ZmFkYmQuLmQzZTBmZTMxIDEw
MDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fbW9kZS5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9t
b2RlLmgKQEAgLTQ2LDYgKzQ2LDEwIEBAIGV4dGVybiAiQyIgewogI2RlZmluZSBEUk1fTU9ERV9U
WVBFX1VTRVJERUYJKDE8PDUpCiAjZGVmaW5lIERSTV9NT0RFX1RZUEVfRFJJVkVSCSgxPDw2KQog
CisjZGVmaW5lIERSTV9NT0RFX1RZUEVfQUxMCShEUk1fTU9ERV9UWVBFX1BSRUZFUlJFRCB8CVwK
KwkJCQkgRFJNX01PREVfVFlQRV9VU0VSREVGIHwJXAorCQkJCSBEUk1fTU9ERV9UWVBFX0RSSVZF
UikKKwogLyogVmlkZW8gbW9kZSBmbGFncyAqLwogLyogYml0IGNvbXBhdGlibGUgd2l0aCB0aGUg
eHJhbmRyIFJSXyBkZWZpbml0aW9ucyAoYml0cyAwLTEzKQogICoKQEAgLTg5LDYgKzkzLDE1IEBA
IGV4dGVybiAiQyIgewogI2RlZmluZSBEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF9OT05FCQkwCiAj
ZGVmaW5lIERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzRfMwkJMQogI2RlZmluZSBEUk1fTU9ERV9Q
SUNUVVJFX0FTUEVDVF8xNl85CQkyCisjZGVmaW5lIERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzY0
XzI3CQkzCisjZGVmaW5lIERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzI1Nl8xMzUJCTQKKworLyog
Q29udGVudCB0eXBlIG9wdGlvbnMgKi8KKyNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9UWVBFX05P
X0RBVEEJCTAKKyNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9UWVBFX0dSQVBISUNTCQkxCisjZGVm
aW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9QSE9UTwkJMgorI2RlZmluZSBEUk1fTU9ERV9DT05U
RU5UX1RZUEVfQ0lORU1BCQkzCisjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HQU1FCQk0
CiAKIC8qIEFzcGVjdCByYXRpbyBmbGFnIGJpdG1hc2sgKDQgYml0cyAyMjoxOSkgKi8KICNkZWZp
bmUgRFJNX01PREVfRkxBR19QSUNfQVJfTUFTSwkJKDB4MEY8PDE5KQpAQCAtOTgsNiArMTExLDI0
IEBAIGV4dGVybiAiQyIgewogCQkJKERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzRfMzw8MTkpCiAj
ZGVmaW5lICBEUk1fTU9ERV9GTEFHX1BJQ19BUl8xNl85IFwKIAkJCShEUk1fTU9ERV9QSUNUVVJF
X0FTUEVDVF8xNl85PDwxOSkKKyNkZWZpbmUgIERSTV9NT0RFX0ZMQUdfUElDX0FSXzY0XzI3IFwK
KwkJCShEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF82NF8yNzw8MTkpCisjZGVmaW5lICBEUk1fTU9E
RV9GTEFHX1BJQ19BUl8yNTZfMTM1IFwKKwkJCShEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF8yNTZf
MTM1PDwxOSkKKworI2RlZmluZSAgRFJNX01PREVfRkxBR19BTEwJKERSTV9NT0RFX0ZMQUdfUEhT
WU5DIHwJCVwKKwkJCQkgRFJNX01PREVfRkxBR19OSFNZTkMgfAkJXAorCQkJCSBEUk1fTU9ERV9G
TEFHX1BWU1lOQyB8CQlcCisJCQkJIERSTV9NT0RFX0ZMQUdfTlZTWU5DIHwJCVwKKwkJCQkgRFJN
X01PREVfRkxBR19JTlRFUkxBQ0UgfAlcCisJCQkJIERSTV9NT0RFX0ZMQUdfREJMU0NBTiB8CVwK
KwkJCQkgRFJNX01PREVfRkxBR19DU1lOQyB8CQlcCisJCQkJIERSTV9NT0RFX0ZMQUdfUENTWU5D
IHwJCVwKKwkJCQkgRFJNX01PREVfRkxBR19OQ1NZTkMgfAkJXAorCQkJCSBEUk1fTU9ERV9GTEFH
X0hTS0VXIHwJCVwKKwkJCQkgRFJNX01PREVfRkxBR19EQkxDTEsgfAkJXAorCQkJCSBEUk1fTU9E
RV9GTEFHX0NMS0RJVjIgfAlcCisJCQkJIERSTV9NT0RFX0ZMQUdfM0RfTUFTSykKIAogLyogRFBN
UyBmbGFncyAqLwogLyogYml0IGNvbXBhdGlibGUgd2l0aCB0aGUgeG9yZyBkZWZpbml0aW9ucy4g
Ki8KQEAgLTE1NSw4ICsxODYsOSBAQCBleHRlcm4gIkMiIHsKIC8qCiAgKiBEUk1fTU9ERV9SRUZM
RUNUXzxheGlzPgogICoKLSAqIFNpZ25hbHMgdGhhdCB0aGUgY29udGVudHMgb2YgYSBkcm0gcGxh
bmUgaXMgcmVmbGVjdGVkIGluIHRoZSA8YXhpcz4gYXhpcywKKyAqIFNpZ25hbHMgdGhhdCB0aGUg
Y29udGVudHMgb2YgYSBkcm0gcGxhbmUgaXMgcmVmbGVjdGVkIGFsb25nIHRoZSA8YXhpcz4gYXhp
cywKICAqIGluIHRoZSBzYW1lIHdheSBhcyBtaXJyb3JpbmcuCisgKiBTZWUga2VybmVsZG9jIGNo
YXB0ZXIgIlBsYW5lIENvbXBvc2l0aW9uIFByb3BlcnRpZXMiIGZvciBtb3JlIGRldGFpbHMuCiAg
KgogICogVGhpcyBkZWZpbmUgaXMgcHJvdmlkZWQgYXMgYSBjb252ZW5pZW5jZSwgbG9va2luZyB1
cCB0aGUgcHJvcGVydHkgaWQKICAqIHVzaW5nIHRoZSBuYW1lLT5wcm9wIGlkIGxvb2t1cCBpcyB0
aGUgcHJlZmVycmVkIG1ldGhvZC4KQEAgLTMyMCw2ICszNTIsNyBAQCBlbnVtIGRybV9tb2RlX3N1
YmNvbm5lY3RvciB7CiAjZGVmaW5lIERSTV9NT0RFX0NPTk5FQ1RPUl9WSVJUVUFMICAgICAgMTUK
ICNkZWZpbmUgRFJNX01PREVfQ09OTkVDVE9SX0RTSQkJMTYKICNkZWZpbmUgRFJNX01PREVfQ09O
TkVDVE9SX0RQSQkJMTcKKyNkZWZpbmUgRFJNX01PREVfQ09OTkVDVE9SX1dSSVRFQkFDSwkxOAog
CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2Nvbm5lY3RvciB7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUv
ZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL2RybS9pOTE1X2RybS5oCmluZGV4IDE2ZTQ1MmFhLi4y
NjhiNTg1ZiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vaTkxNV9kcm0uaAorKysgYi9pbmNsdWRl
L2RybS9pOTE1X2RybS5oCkBAIC01MjksNiArNTI5LDI4IEBAIHR5cGVkZWYgc3RydWN0IGRybV9p
OTE1X2lycV93YWl0IHsKICAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0NTX1RJTUVTVEFNUF9GUkVR
VUVOQ1kgNTEKIAorLyoKKyAqIE9uY2UgdXBvbiBhIHRpbWUgd2Ugc3VwcG9zZWQgdGhhdCB3cml0
ZXMgdGhyb3VnaCB0aGUgR0dUVCB3b3VsZCBiZQorICogaW1tZWRpYXRlbHkgaW4gcGh5c2ljYWwg
bWVtb3J5IChvbmNlIGZsdXNoZWQgb3V0IG9mIHRoZSBDUFUgcGF0aCkuIEhvd2V2ZXIsCisgKiBv
biBhIGZldyBkaWZmZXJlbnQgcHJvY2Vzc29ycyBhbmQgY2hpcHNldHMsIHRoaXMgaXMgbm90IG5l
Y2Vzc2FyaWx5IHRoZSBjYXNlCisgKiBhcyB0aGUgd3JpdGVzIGFwcGVhciB0byBiZSBidWZmZXJl
ZCBpbnRlcm5hbGx5LiBUaHVzIGEgcmVhZCBvZiB0aGUgYmFja2luZworICogc3RvcmFnZSAocGh5
c2ljYWwgbWVtb3J5KSB2aWEgYSBkaWZmZXJlbnQgcGF0aCAod2l0aCBkaWZmZXJlbnQgcGh5c2lj
YWwgdGFncworICogdG8gdGhlIGluZGlyZWN0IHdyaXRlIHZpYSB0aGUgR0dUVCkgd2lsbCBzZWUg
c3RhbGUgdmFsdWVzIGZyb20gYmVmb3JlCisgKiB0aGUgR0dUVCB3cml0ZS4gSW5zaWRlIHRoZSBr
ZXJuZWwsIHdlIGNhbiBmb3IgdGhlIG1vc3QgcGFydCBrZWVwIHRyYWNrIG9mCisgKiB0aGUgZGlm
ZmVyZW50IHJlYWQvd3JpdGUgZG9tYWlucyBpbiB1c2UgKGUuZy4gc2V0LWRvbWFpbiksIGJ1dCB0
aGUgYXNzdW1wdGlvbgorICogb2YgY29oZXJlbmN5IGlzIGJha2VkIGludG8gdGhlIEFCSSwgaGVu
Y2UgcmVwb3J0aW5nIGl0cyB0cnVlIHN0YXRlIGluIHRoaXMKKyAqIHBhcmFtZXRlci4KKyAqCisg
KiBSZXBvcnRzIHRydWUgd2hlbiB3cml0ZXMgdmlhIG1tYXBfZ3R0IGFyZSBpbW1lZGlhdGVseSB2
aXNpYmxlIGZvbGxvd2luZyBhbgorICogbGZlbmNlIHRvIGZsdXNoIHRoZSBXQ0IuCisgKgorICog
UmVwb3J0cyBmYWxzZSB3aGVuIHdyaXRlcyB2aWEgbW1hcF9ndHQgYXJlIGluZGV0ZXJtaW5hdGVs
eSBkZWxheWVkIGluIGFuIGluCisgKiBpbnRlcm5hbCBidWZmZXIgYW5kIGFyZSBfbm90XyBpbW1l
ZGlhdGVseSB2aXNpYmxlIHRvIHRoaXJkIHBhcnRpZXMgYWNjZXNzaW5nCisgKiBkaXJlY3RseSB2
aWEgbW1hcF9jcHUvbW1hcF93Yy4gVXNlIG9mIG1tYXBfZ3R0IGFzIHBhcnQgb2YgYW4gSVBDCisg
KiBjb21tdW5pY2F0aW9ucyBjaGFubmVsIHdoZW4gcmVwb3J0aW5nIGZhbHNlIGlzIHN0cm9uZ2x5
IGRpc2FkdmlzZWQuCisgKi8KKyNkZWZpbmUgSTkxNV9QQVJBTV9NTUFQX0dUVF9DT0hFUkVOVAk1
MgorCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9nZXRwYXJhbSB7CiAJX19zMzIgcGFyYW07CiAJ
LyoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3F4bF9kcm0uaCBiL2luY2x1ZGUvZHJtL3F4bF9k
cm0uaAppbmRleCAzOGEwZGJkZi4uODgwOTk5ZDIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL3F4
bF9kcm0uaAorKysgYi9pbmNsdWRlL2RybS9xeGxfZHJtLmgKQEAgLTI0LDcgKzI0LDYgQEAKICNp
Zm5kZWYgUVhMX0RSTV9ICiAjZGVmaW5lIFFYTF9EUk1fSAogCi0jaW5jbHVkZSA8c3RkZGVmLmg+
CiAjaW5jbHVkZSAiZHJtLmgiCiAKICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQpAQCAtODksNyAr
ODgsNiBAQCBzdHJ1Y3QgZHJtX3F4bF9jb21tYW5kIHsKIAlfX3UzMiAgICAgICAgICAgICAgICBw
YWQ7CiB9OwogCi0vKiBYWFg6IGNhbGwgaXQgZHJtX3F4bF9jb21tYW5kcz8gKi8KIHN0cnVjdCBk
cm1fcXhsX2V4ZWNidWZmZXIgewogCV9fdTMyCQlmbGFnczsJCS8qIGZvciBmdXR1cmUgdXNlICov
CiAJX191MzIJCWNvbW1hbmRzX251bTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3RlZ3JhX2Ry
bS5oIGIvaW5jbHVkZS9kcm0vdGVncmFfZHJtLmgKaW5kZXggMTJmOWJmODQuLjZjMDc5MTljIDEw
MDY0NAotLS0gYS9pbmNsdWRlL2RybS90ZWdyYV9kcm0uaAorKysgYi9pbmNsdWRlL2RybS90ZWdy
YV9kcm0uaApAQCAtMzIsMTQzICszMiw2MTUgQEAgZXh0ZXJuICJDIiB7CiAjZGVmaW5lIERSTV9U
RUdSQV9HRU1fQ1JFQVRFX1RJTEVEICAgICAoMSA8PCAwKQogI2RlZmluZSBEUk1fVEVHUkFfR0VN
X0NSRUFURV9CT1RUT01fVVAgKDEgPDwgMSkKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX2dl
bV9jcmVhdGUgLSBwYXJhbWV0ZXJzIGZvciB0aGUgR0VNIG9iamVjdCBjcmVhdGlvbiBJT0NUTAor
ICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9jcmVhdGUgeworCS8qKgorCSAqIEBzaXplOgorCSAq
CisJICogVGhlIHNpemUsIGluIGJ5dGVzLCBvZiB0aGUgYnVmZmVyIG9iamVjdCB0byBiZSBjcmVh
dGVkLgorCSAqLwogCV9fdTY0IHNpemU7CisKKwkvKioKKwkgKiBAZmxhZ3M6CisJICoKKwkgKiBB
IGJpdG1hc2sgb2YgZmxhZ3MgdGhhdCBpbmZsdWVuY2UgdGhlIGNyZWF0aW9uIG9mIEdFTSBvYmpl
Y3RzOgorCSAqCisJICogRFJNX1RFR1JBX0dFTV9DUkVBVEVfVElMRUQKKwkgKiAgIFVzZSB0aGUg
MTZ4MTYgdGlsaW5nIGZvcm1hdCBmb3IgdGhpcyBidWZmZXIuCisJICoKKwkgKiBEUk1fVEVHUkFf
R0VNX0NSRUFURV9CT1RUT01fVVAKKwkgKiAgIFRoZSBidWZmZXIgaGFzIGEgYm90dG9tLXVwIGxh
eW91dC4KKwkgKi8KIAlfX3UzMiBmbGFnczsKKworCS8qKgorCSAqIEBoYW5kbGU6CisJICoKKwkg
KiBUaGUgaGFuZGxlIG9mIHRoZSBjcmVhdGVkIEdFTSBvYmplY3QuIFNldCBieSB0aGUga2VybmVs
IHVwb24KKwkgKiBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAqLwogCV9f
dTMyIGhhbmRsZTsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fbW1hcCAtIHBh
cmFtZXRlcnMgZm9yIHRoZSBHRU0gbW1hcCBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dl
bV9tbWFwIHsKKwkvKioKKwkgKiBAaGFuZGxlOgorCSAqCisJICogSGFuZGxlIG9mIHRoZSBHRU0g
b2JqZWN0IHRvIG9idGFpbiBhbiBtbWFwIG9mZnNldCBmb3IuCisJICovCiAJX191MzIgaGFuZGxl
OworCisJLyoqCisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVyZSBwYWRkaW5nIHRoYXQgbWF5
IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAqLwogCV9fdTMyIHBhZDsKKwor
CS8qKgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBUaGUgbW1hcCBvZmZzZXQgZm9yIHRoZSBnaXZl
biBHRU0gb2JqZWN0LiBTZXQgYnkgdGhlIGtlcm5lbCB1cG9uCisJICogc3VjY2Vzc2Z1bCBjb21w
bGV0aW9uIG9mIHRoZSBJT0NUTC4KKwkgKi8KIAlfX3U2NCBvZmZzZXQ7CiB9OwogCisvKioKKyAq
IHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3JlYWQgLSBwYXJhbWV0ZXJzIGZvciB0aGUgcmVhZCBz
eW5jcG9pbnQgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9zeW5jcHRfcmVhZCB7CisJLyoq
CisJICogQGlkOgorCSAqCisJICogSUQgb2YgdGhlIHN5bmNwb2ludCB0byByZWFkIHRoZSBjdXJy
ZW50IHZhbHVlIGZyb20uCisJICovCiAJX191MzIgaWQ7CisKKwkvKioKKwkgKiBAdmFsdWU6CisJ
ICoKKwkgKiBUaGUgY3VycmVudCBzeW5jcG9pbnQgdmFsdWUuIFNldCBieSB0aGUga2VybmVsIHVw
b24gc3VjY2Vzc2Z1bAorCSAqIGNvbXBsZXRpb24gb2YgdGhlIElPQ1RMLgorCSAqLwogCV9fdTMy
IHZhbHVlOwogfTsKIAorLyoqCisgKiBzdHJ1Y3QgZHJtX3RlZ3JhX3N5bmNwdF9pbmNyIC0gcGFy
YW1ldGVycyBmb3IgdGhlIGluY3JlbWVudCBzeW5jcG9pbnQgSU9DVEwKKyAqLwogc3RydWN0IGRy
bV90ZWdyYV9zeW5jcHRfaW5jciB7CisJLyoqCisJICogQGlkOgorCSAqCisJICogSUQgb2YgdGhl
IHN5bmNwb2ludCB0byBpbmNyZW1lbnQuCisJICovCiAJX191MzIgaWQ7CisKKwkvKioKKwkgKiBA
cGFkOgorCSAqCisJICogU3RydWN0dXJlIHBhZGRpbmcgdGhhdCBtYXkgYmUgdXNlZCBpbiB0aGUg
ZnV0dXJlLiBNdXN0IGJlIDAuCisJICovCiAJX191MzIgcGFkOwogfTsKIAorLyoqCisgKiBzdHJ1
Y3QgZHJtX3RlZ3JhX3N5bmNwdF93YWl0IC0gcGFyYW1ldGVycyBmb3IgdGhlIHdhaXQgc3luY3Bv
aW50IElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3dhaXQgeworCS8qKgorCSAq
IEBpZDoKKwkgKgorCSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgdG8gd2FpdCBvbi4KKwkgKi8KIAlf
X3UzMiBpZDsKKworCS8qKgorCSAqIEB0aHJlc2g6CisJICoKKwkgKiBUaHJlc2hvbGQgdmFsdWUg
Zm9yIHdoaWNoIHRvIHdhaXQuCisJICovCiAJX191MzIgdGhyZXNoOworCisJLyoqCisJICogQHRp
bWVvdXQ6CisJICoKKwkgKiBUaW1lb3V0LCBpbiBtaWxsaXNlY29uZHMsIHRvIHdhaXQuCisJICov
CiAJX191MzIgdGltZW91dDsKKworCS8qKgorCSAqIEB2YWx1ZToKKwkgKgorCSAqIFRoZSBuZXcg
c3luY3BvaW50IHZhbHVlIGFmdGVyIHRoZSB3YWl0LiBTZXQgYnkgdGhlIGtlcm5lbCB1cG9uCisJ
ICogc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIHRoZSBJT0NUTC4KKwkgKi8KIAlfX3UzMiB2YWx1
ZTsKIH07CiAKICNkZWZpbmUgRFJNX1RFR1JBX05PX1RJTUVPVVQJKDB4ZmZmZmZmZmYpCiAKKy8q
KgorICogc3RydWN0IGRybV90ZWdyYV9vcGVuX2NoYW5uZWwgLSBwYXJhbWV0ZXJzIGZvciB0aGUg
b3BlbiBjaGFubmVsIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFubmVsIHsK
KwkvKioKKwkgKiBAY2xpZW50OgorCSAqCisJICogVGhlIGNsaWVudCBJRCBmb3IgdGhpcyBjaGFu
bmVsLgorCSAqLwogCV9fdTMyIGNsaWVudDsKKworCS8qKgorCSAqIEBwYWQ6CisJICoKKwkgKiBT
dHJ1Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBmdXR1cmUuIE11c3QgYmUg
MC4KKwkgKi8KIAlfX3UzMiBwYWQ7CisKKwkvKioKKwkgKiBAY29udGV4dDoKKwkgKgorCSAqIFRo
ZSBhcHBsaWNhdGlvbiBjb250ZXh0IG9mIHRoaXMgY2hhbm5lbC4gU2V0IGJ5IHRoZSBrZXJuZWwg
dXBvbgorCSAqIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiB0aGUgSU9DVEwuIFRoaXMgY29udGV4
dCBuZWVkcyB0byBiZSBwYXNzZWQKKwkgKiB0byB0aGUgRFJNX1RFR1JBX0NIQU5ORUxfQ0xPU0Ug
b3IgdGhlIERSTV9URUdSQV9TVUJNSVQgSU9DVExzLgorCSAqLwogCV9fdTY0IGNvbnRleHQ7CiB9
OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfY2xvc2VfY2hhbm5lbCAtIHBhcmFtZXRlcnMg
Zm9yIHRoZSBjbG9zZSBjaGFubmVsIElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfY2xvc2Vf
Y2hhbm5lbCB7CisJLyoqCisJICogQGNvbnRleHQ6CisJICoKKwkgKiBUaGUgYXBwbGljYXRpb24g
Y29udGV4dCBvZiB0aGlzIGNoYW5uZWwuIFRoaXMgaXMgb2J0YWluZWQgZnJvbSB0aGUKKwkgKiBE
Uk1fVEVHUkFfT1BFTl9DSEFOTkVMIElPQ1RMLgorCSAqLwogCV9fdTY0IGNvbnRleHQ7CiB9Owog
CisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdCAtIHBhcmFtZXRlcnMgZm9yIHRo
ZSBnZXQgc3luY3BvaW50IElPQ1RMCisgKi8KIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdCB7
CisJLyoqCisJICogQGNvbnRleHQ6CisJICoKKwkgKiBUaGUgYXBwbGljYXRpb24gY29udGV4dCBp
ZGVudGlmeWluZyB0aGUgY2hhbm5lbCBmb3Igd2hpY2ggdG8gb2J0YWluCisJICogdGhlIHN5bmNw
b2ludCBJRC4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJLyoqCisJICogQGluZGV4OgorCSAq
CisJICogSW5kZXggb2YgdGhlIGNsaWVudCBzeW5jcG9pbnQgZm9yIHdoaWNoIHRvIG9idGFpbiB0
aGUgSUQuCisJICovCiAJX191MzIgaW5kZXg7CisKKwkvKioKKwkgKiBAaWQ6CisJICoKKwkgKiBU
aGUgSUQgb2YgdGhlIGdpdmVuIHN5bmNwb2ludC4gU2V0IGJ5IHRoZSBrZXJuZWwgdXBvbiBzdWNj
ZXNzZnVsCisJICogY29tcGxldGlvbiBvZiB0aGUgSU9DVEwuCisJICovCiAJX191MzIgaWQ7CiB9
OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdF9iYXNlIC0gcGFyYW1ldGVy
cyBmb3IgdGhlIGdldCB3YWl0IGJhc2UgSU9DVEwKKyAqLwogc3RydWN0IGRybV90ZWdyYV9nZXRf
c3luY3B0X2Jhc2UgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICogVGhlIGFwcGxpY2F0
aW9uIGNvbnRleHQgaWRlbnRpZnlpbmcgZm9yIHdoaWNoIGNoYW5uZWwgdG8gb2J0YWluIHRoZQor
CSAqIHdhaXQgYmFzZS4KKwkgKi8KIAlfX3U2NCBjb250ZXh0OworCisJLyoqCisJICogQHN5bmNw
dDoKKwkgKgorCSAqIElEIG9mIHRoZSBzeW5jcG9pbnQgZm9yIHdoaWNoIHRvIG9idGFpbiB0aGUg
d2FpdCBiYXNlLgorCSAqLwogCV9fdTMyIHN5bmNwdDsKKworCS8qKgorCSAqIEBpZDoKKwkgKgor
CSAqIFRoZSBJRCBvZiB0aGUgd2FpdCBiYXNlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNsaWVudCBz
eW5jcG9pbnQuIFNldAorCSAqIGJ5IHRoZSBrZXJuZWwgdXBvbiBzdWNjZXNzZnVsIGNvbXBsZXRp
b24gb2YgdGhlIElPQ1RMLgorCSAqLwogCV9fdTMyIGlkOwogfTsKIAorLyoqCisgKiBzdHJ1Y3Qg
ZHJtX3RlZ3JhX3N5bmNwdCAtIHN5bmNwb2ludCBpbmNyZW1lbnQgb3BlcmF0aW9uCisgKi8KIHN0
cnVjdCBkcm1fdGVncmFfc3luY3B0IHsKKwkvKioKKwkgKiBAaWQ6CisJICoKKwkgKiBJRCBvZiB0
aGUgc3luY3BvaW50IHRvIG9wZXJhdGUgb24uCisJICovCiAJX191MzIgaWQ7CisKKwkvKioKKwkg
KiBAaW5jcnM6CisJICoKKwkgKiBOdW1iZXIgb2YgaW5jcmVtZW50cyB0byBwZXJmb3JtIGZvciB0
aGUgc3luY3BvaW50LgorCSAqLwogCV9fdTMyIGluY3JzOwogfTsKIAorLyoqCisgKiBzdHJ1Y3Qg
ZHJtX3RlZ3JhX2NtZGJ1ZiAtIHN0cnVjdHVyZSBkZXNjcmliaW5nIGEgY29tbWFuZCBidWZmZXIK
KyAqLwogc3RydWN0IGRybV90ZWdyYV9jbWRidWYgeworCS8qKgorCSAqIEBoYW5kbGU6CisJICoK
KwkgKiBIYW5kbGUgdG8gYSBHRU0gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbW1hbmQgYnVmZmVy
LgorCSAqLwogCV9fdTMyIGhhbmRsZTsKKworCS8qKgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBP
ZmZzZXQsIGluIGJ5dGVzLCBpbnRvIHRoZSBHRU0gb2JqZWN0IGlkZW50aWZpZWQgYnkgQGhhbmRs
ZSBhdAorCSAqIHdoaWNoIHRoZSBjb21tYW5kIGJ1ZmZlciBzdGFydHMuCisJICovCiAJX191MzIg
b2Zmc2V0OworCisJLyoqCisJICogQHdvcmRzOgorCSAqCisJICogTnVtYmVyIG9mIDMyLWJpdCB3
b3JkcyBpbiB0aGlzIGNvbW1hbmQgYnVmZmVyLgorCSAqLwogCV9fdTMyIHdvcmRzOworCisJLyoq
CisJICogQHBhZDoKKwkgKgorCSAqIFN0cnVjdHVyZSBwYWRkaW5nIHRoYXQgbWF5IGJlIHVzZWQg
aW4gdGhlIGZ1dHVyZS4gTXVzdCBiZSAwLgorCSAqLwogCV9fdTMyIHBhZDsKIH07CiAKKy8qKgor
ICogc3RydWN0IGRybV90ZWdyYV9yZWxvYyAtIEdFTSBvYmplY3QgcmVsb2NhdGlvbiBzdHJ1Y3R1
cmUKKyAqLwogc3RydWN0IGRybV90ZWdyYV9yZWxvYyB7CiAJc3RydWN0IHsKKwkJLyoqCisJCSAq
IEBjbWRidWYuaGFuZGxlOgorCQkgKgorCQkgKiBIYW5kbGUgdG8gdGhlIEdFTSBvYmplY3QgY29u
dGFpbmluZyB0aGUgY29tbWFuZCBidWZmZXIgZm9yCisJCSAqIHdoaWNoIHRvIHBlcmZvcm0gdGhp
cyBHRU0gb2JqZWN0IHJlbG9jYXRpb24uCisJCSAqLwogCQlfX3UzMiBoYW5kbGU7CisKKwkJLyoq
CisJCSAqIEBjbWRidWYub2Zmc2V0OgorCQkgKgorCQkgKiBPZmZzZXQsIGluIGJ5dGVzLCBpbnRv
IHRoZSBjb21tYW5kIGJ1ZmZlciBhdCB3aGljaCB0bworCQkgKiBpbnNlcnQgdGhlIHJlbG9jYXRl
ZCBhZGRyZXNzLgorCQkgKi8KIAkJX191MzIgb2Zmc2V0OwogCX0gY21kYnVmOwogCXN0cnVjdCB7
CisJCS8qKgorCQkgKiBAdGFyZ2V0LmhhbmRsZToKKwkJICoKKwkJICogSGFuZGxlIHRvIHRoZSBH
RU0gb2JqZWN0IHRvIGJlIHJlbG9jYXRlZC4KKwkJICovCiAJCV9fdTMyIGhhbmRsZTsKKworCQkv
KioKKwkJICogQHRhcmdldC5vZmZzZXQ6CisJCSAqCisJCSAqIE9mZnNldCwgaW4gYnl0ZXMsIGlu
dG8gdGhlIHRhcmdldCBHRU0gb2JqZWN0IGF0IHdoaWNoIHRoZQorCQkgKiByZWxvY2F0ZWQgZGF0
YSBzdGFydHMuCisJCSAqLwogCQlfX3UzMiBvZmZzZXQ7CiAJfSB0YXJnZXQ7CisKKwkvKioKKwkg
KiBAc2hpZnQ6CisJICoKKwkgKiBUaGUgbnVtYmVyIG9mIGJpdHMgYnkgd2hpY2ggdG8gc2hpZnQg
cmVsb2NhdGVkIGFkZHJlc3Nlcy4KKwkgKi8KIAlfX3UzMiBzaGlmdDsKKworCS8qKgorCSAqIEBw
YWQ6CisJICoKKwkgKiBTdHJ1Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBm
dXR1cmUuIE11c3QgYmUgMC4KKwkgKi8KIAlfX3UzMiBwYWQ7CiB9OwogCisvKioKKyAqIHN0cnVj
dCBkcm1fdGVncmFfd2FpdGNoayAtIHdhaXQgY2hlY2sgc3RydWN0dXJlCisgKi8KIHN0cnVjdCBk
cm1fdGVncmFfd2FpdGNoayB7CisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhhbmRsZSB0
byB0aGUgR0VNIG9iamVjdCBjb250YWluaW5nIGEgY29tbWFuZCBzdHJlYW0gb24gd2hpY2ggdG8K
KwkgKiBwZXJmb3JtIHRoZSB3YWl0IGNoZWNrLgorCSAqLwogCV9fdTMyIGhhbmRsZTsKKworCS8q
KgorCSAqIEBvZmZzZXQ6CisJICoKKwkgKiBPZmZzZXQsIGluIGJ5dGVzLCBvZiB0aGUgbG9jYXRp
b24gaW4gdGhlIGNvbW1hbmQgc3RyZWFtIHRvIHBlcmZvcm0KKwkgKiB0aGUgd2FpdCBjaGVjayBv
bi4KKwkgKi8KIAlfX3UzMiBvZmZzZXQ7CisKKwkvKioKKwkgKiBAc3luY3B0OgorCSAqCisJICog
SUQgb2YgdGhlIHN5bmNwb2ludCB0byB3YWl0IGNoZWNrLgorCSAqLwogCV9fdTMyIHN5bmNwdDsK
KworCS8qKgorCSAqIEB0aHJlc2g6CisJICoKKwkgKiBUaHJlc2hvbGQgdmFsdWUgZm9yIHdoaWNo
IHRvIGNoZWNrLgorCSAqLwogCV9fdTMyIHRocmVzaDsKIH07CiAKKy8qKgorICogc3RydWN0IGRy
bV90ZWdyYV9zdWJtaXQgLSBqb2Igc3VibWlzc2lvbiBzdHJ1Y3R1cmUKKyAqLwogc3RydWN0IGRy
bV90ZWdyYV9zdWJtaXQgeworCS8qKgorCSAqIEBjb250ZXh0OgorCSAqCisJICogVGhlIGFwcGxp
Y2F0aW9uIGNvbnRleHQgaWRlbnRpZnlpbmcgdGhlIGNoYW5uZWwgdG8gdXNlIGZvciB0aGUKKwkg
KiBleGVjdXRpb24gb2YgdGhpcyBqb2IuCisJICovCiAJX191NjQgY29udGV4dDsKKworCS8qKgor
CSAqIEBudW1fc3luY3B0czoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2Ygc3luY3BvaW50cyBvcGVy
YXRlZCBvbiBieSB0aGlzIGpvYi4gVGhpcyBkZWZpbmVzIHRoZQorCSAqIGxlbmd0aCBvZiB0aGUg
YXJyYXkgcG9pbnRlZCB0byBieSBAc3luY3B0cy4KKwkgKi8KIAlfX3UzMiBudW1fc3luY3B0czsK
KworCS8qKgorCSAqIEBudW1fY21kYnVmczoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2YgY29tbWFu
ZCBidWZmZXJzIHRvIGV4ZWN1dGUgYXMgcGFydCBvZiB0aGlzIGpvYi4gVGhpcworCSAqIGRlZmlu
ZXMgdGhlIGxlbmd0aCBvZiB0aGUgYXJyYXkgcG9pbnRlZCB0byBieSBAY21kYnVmcy4KKwkgKi8K
IAlfX3UzMiBudW1fY21kYnVmczsKKworCS8qKgorCSAqIEBudW1fcmVsb2NzOgorCSAqCisJICog
VGhlIG51bWJlciBvZiByZWxvY2F0aW9ucyB0byBwZXJmb3JtIGJlZm9yZSBleGVjdXRpbmcgdGhp
cyBqb2IuCisJICogVGhpcyBkZWZpbmVzIHRoZSBsZW5ndGggb2YgdGhlIGFycmF5IHBvaW50ZWQg
dG8gYnkgQHJlbG9jcy4KKwkgKi8KIAlfX3UzMiBudW1fcmVsb2NzOworCisJLyoqCisJICogQG51
bV93YWl0Y2hrczoKKwkgKgorCSAqIFRoZSBudW1iZXIgb2Ygd2FpdCBjaGVja3MgdG8gcGVyZm9y
bSBhcyBwYXJ0IG9mIHRoaXMgam9iLiBUaGlzCisJICogZGVmaW5lcyB0aGUgbGVuZ3RoIG9mIHRo
ZSBhcnJheSBwb2ludGVkIHRvIGJ5IEB3YWl0Y2hrcy4KKwkgKi8KIAlfX3UzMiBudW1fd2FpdGNo
a3M7CisKKwkvKioKKwkgKiBAd2FpdGNoa19tYXNrOgorCSAqCisJICogQml0bWFzayBvZiB2YWxp
ZCB3YWl0IGNoZWNrcy4KKwkgKi8KIAlfX3UzMiB3YWl0Y2hrX21hc2s7CisKKwkvKioKKwkgKiBA
dGltZW91dDoKKwkgKgorCSAqIFRpbWVvdXQsIGluIG1pbGxpc2Vjb25kcywgYmVmb3JlIHRoaXMg
am9iIGlzIGNhbmNlbGxlZC4KKwkgKi8KIAlfX3UzMiB0aW1lb3V0OworCisJLyoqCisJICogQHN5
bmNwdHM6CisJICoKKwkgKiBBIHBvaW50ZXIgdG8gYW4gYXJyYXkgb2YgJnN0cnVjdCBkcm1fdGVn
cmFfc3luY3B0IHN0cnVjdHVyZXMgdGhhdAorCSAqIHNwZWNpZnkgdGhlIHN5bmNwb2ludCBvcGVy
YXRpb25zIHBlcmZvcm1lZCBhcyBwYXJ0IG9mIHRoaXMgam9iLgorCSAqIFRoZSBudW1iZXIgb2Yg
ZWxlbWVudHMgaW4gdGhlIGFycmF5IG11c3QgYmUgZXF1YWwgdG8gdGhlIHZhbHVlCisJICogZ2l2
ZW4gYnkgQG51bV9zeW5jcHRzLgorCSAqLwogCV9fdTY0IHN5bmNwdHM7CisKKwkvKioKKwkgKiBA
Y21kYnVmczoKKwkgKgorCSAqIEEgcG9pbnRlciB0byBhbiBhcnJheSBvZiAmc3RydWN0IGRybV90
ZWdyYV9jbWRidWYgc3RydWN0dXJlcyB0aGF0CisJICogZGVmaW5lIHRoZSBjb21tYW5kIGJ1ZmZl
cnMgdG8gZXhlY3V0ZSBhcyBwYXJ0IG9mIHRoaXMgam9iLiBUaGUKKwkgKiBudW1iZXIgb2YgZWxl
bWVudHMgaW4gdGhlIGFycmF5IG11c3QgYmUgZXF1YWwgdG8gdGhlIHZhbHVlIGdpdmVuCisJICog
YnkgQG51bV9zeW5jcHRzLgorCSAqLwogCV9fdTY0IGNtZGJ1ZnM7CisKKwkvKioKKwkgKiBAcmVs
b2NzOgorCSAqCisJICogQSBwb2ludGVyIHRvIGFuIGFycmF5IG9mICZzdHJ1Y3QgZHJtX3RlZ3Jh
X3JlbG9jIHN0cnVjdHVyZXMgdGhhdAorCSAqIHNwZWNpZnkgdGhlIHJlbG9jYXRpb25zIHRoYXQg
bmVlZCB0byBiZSBwZXJmb3JtZWQgYmVmb3JlIGV4ZWN1dGluZworCSAqIHRoaXMgam9iLiBUaGUg
bnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoZSBhcnJheSBtdXN0IGJlIGVxdWFsIHRvIHRoZQorCSAq
IHZhbHVlIGdpdmVuIGJ5IEBudW1fcmVsb2NzLgorCSAqLwogCV9fdTY0IHJlbG9jczsKKworCS8q
KgorCSAqIEB3YWl0Y2hrczoKKwkgKgorCSAqIEEgcG9pbnRlciB0byBhbiBhcnJheSBvZiAmc3Ry
dWN0IGRybV90ZWdyYV93YWl0Y2hrIHN0cnVjdHVyZXMgdGhhdAorCSAqIHNwZWNpZnkgdGhlIHdh
aXQgY2hlY2tzIHRvIGJlIHBlcmZvcm1lZCB3aGlsZSBleGVjdXRpbmcgdGhpcyBqb2IuCisJICog
VGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgYXJyYXkgbXVzdCBiZSBlcXVhbCB0byB0aGUg
dmFsdWUKKwkgKiBnaXZlbiBieSBAbnVtX3dhaXRjaGtzLgorCSAqLwogCV9fdTY0IHdhaXRjaGtz
OwotCV9fdTMyIGZlbmNlOwkJLyogUmV0dXJuIHZhbHVlICovCiAKLQlfX3UzMiByZXNlcnZlZFs1
XTsJLyogZnV0dXJlIGV4cGFuc2lvbiAqLworCS8qKgorCSAqIEBmZW5jZToKKwkgKgorCSAqIFRo
ZSB0aHJlc2hvbGQgb2YgdGhlIHN5bmNwb2ludCBhc3NvY2lhdGVkIHdpdGggdGhpcyBqb2IgYWZ0
ZXIgaXQKKwkgKiBoYXMgYmVlbiBjb21wbGV0ZWQuIFNldCBieSB0aGUga2VybmVsIHVwb24gc3Vj
Y2Vzc2Z1bCBjb21wbGV0aW9uIG9mCisJICogdGhlIElPQ1RMLiBUaGlzIGNhbiBiZSB1c2VkIHdp
dGggdGhlIERSTV9URUdSQV9TWU5DUFRfV0FJVCBJT0NUTCB0bworCSAqIHdhaXQgZm9yIHRoaXMg
am9iIHRvIGJlIGZpbmlzaGVkLgorCSAqLworCV9fdTMyIGZlbmNlOworCisJLyoqCisJICogQHJl
c2VydmVkOgorCSAqCisJICogVGhpcyBmaWVsZCBpcyByZXNlcnZlZCBmb3IgZnV0dXJlIHVzZS4g
TXVzdCBiZSAwLgorCSAqLworCV9fdTMyIHJlc2VydmVkWzVdOwogfTsKIAogI2RlZmluZSBEUk1f
VEVHUkFfR0VNX1RJTElOR19NT0RFX1BJVENIIDAKICNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJ
TkdfTU9ERV9USUxFRCAxCiAjZGVmaW5lIERSTV9URUdSQV9HRU1fVElMSU5HX01PREVfQkxPQ0sg
MgogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2VtX3NldF90aWxpbmcgLSBwYXJhbWV0ZXJz
IGZvciB0aGUgc2V0IHRpbGluZyBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9zZXRf
dGlsaW5nIHsKLQkvKiBpbnB1dCAqLworCS8qKgorCSAqIEBoYW5kbGU6CisJICoKKwkgKiBIYW5k
bGUgdG8gdGhlIEdFTSBvYmplY3QgZm9yIHdoaWNoIHRvIHNldCB0aGUgdGlsaW5nIHBhcmFtZXRl
cnMuCisJICovCiAJX191MzIgaGFuZGxlOworCisJLyoqCisJICogQG1vZGU6CisJICoKKwkgKiBU
aGUgdGlsaW5nIG1vZGUgdG8gc2V0LiBNdXN0IGJlIG9uZSBvZjoKKwkgKgorCSAqIERSTV9URUdS
QV9HRU1fVElMSU5HX01PREVfUElUQ0gKKwkgKiAgIHBpdGNoIGxpbmVhciBmb3JtYXQKKwkgKgor
CSAqIERSTV9URUdSQV9HRU1fVElMSU5HX01PREVfVElMRUQKKwkgKiAgIDE2eDE2IHRpbGluZyBm
b3JtYXQKKwkgKgorCSAqIERSTV9URUdSQV9HRU1fVElMSU5HX01PREVfQkxPQ0sKKwkgKiAgIDE2
QngyIHRpbGluZyBmb3JtYXQKKwkgKi8KIAlfX3UzMiBtb2RlOworCisJLyoqCisJICogQHZhbHVl
OgorCSAqCisJICogVGhlIHZhbHVlIHRvIHNldCBmb3IgdGhlIHRpbGluZyBtb2RlIHBhcmFtZXRl
ci4KKwkgKi8KIAlfX3UzMiB2YWx1ZTsKKworCS8qKgorCSAqIEBwYWQ6CisJICoKKwkgKiBTdHJ1
Y3R1cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBmdXR1cmUuIE11c3QgYmUgMC4K
KwkgKi8KIAlfX3UzMiBwYWQ7CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1fdGVncmFfZ2VtX2dl
dF90aWxpbmcgLSBwYXJhbWV0ZXJzIGZvciB0aGUgZ2V0IHRpbGluZyBJT0NUTAorICovCiBzdHJ1
Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfdGlsaW5nIHsKLQkvKiBpbnB1dCAqLworCS8qKgorCSAqIEBo
YW5kbGU6CisJICoKKwkgKiBIYW5kbGUgdG8gdGhlIEdFTSBvYmplY3QgZm9yIHdoaWNoIHRvIHF1
ZXJ5IHRoZSB0aWxpbmcgcGFyYW1ldGVycy4KKwkgKi8KIAlfX3UzMiBoYW5kbGU7Ci0JLyogb3V0
cHV0ICovCisKKwkvKioKKwkgKiBAbW9kZToKKwkgKgorCSAqIFRoZSB0aWxpbmcgbW9kZSBjdXJy
ZW50bHkgYXNzb2NpYXRlZCB3aXRoIHRoZSBHRU0gb2JqZWN0LiBTZXQgYnkKKwkgKiB0aGUga2Vy
bmVsIHVwb24gc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIHRoZSBJT0NUTC4KKwkgKi8KIAlfX3Uz
MiBtb2RlOworCisJLyoqCisJICogQHZhbHVlOgorCSAqCisJICogVGhlIHRpbGluZyBtb2RlIHBh
cmFtZXRlciBjdXJyZW50bHkgYXNzb2NpYXRlZCB3aXRoIHRoZSBHRU0gb2JqZWN0LgorCSAqIFNl
dCBieSB0aGUga2VybmVsIHVwb24gc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIHRoZSBJT0NUTC4K
KwkgKi8KIAlfX3UzMiB2YWx1ZTsKKworCS8qKgorCSAqIEBwYWQ6CisJICoKKwkgKiBTdHJ1Y3R1
cmUgcGFkZGluZyB0aGF0IG1heSBiZSB1c2VkIGluIHRoZSBmdXR1cmUuIE11c3QgYmUgMC4KKwkg
Ki8KIAlfX3UzMiBwYWQ7CiB9OwogCiAjZGVmaW5lIERSTV9URUdSQV9HRU1fQk9UVE9NX1VQCQko
MSA8PCAwKQogI2RlZmluZSBEUk1fVEVHUkFfR0VNX0ZMQUdTCQkoRFJNX1RFR1JBX0dFTV9CT1RU
T01fVVApCiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X2ZsYWdzIC0gcGFyYW1l
dGVycyBmb3IgdGhlIHNldCBmbGFncyBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9z
ZXRfZmxhZ3MgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAqIEhh
bmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gc2V0IHRoZSBmbGFncy4KKwkgKi8K
IAlfX3UzMiBoYW5kbGU7Ci0JLyogb3V0cHV0ICovCisKKwkvKioKKwkgKiBAZmxhZ3M6CisJICoK
KwkgKiBUaGUgZmxhZ3MgdG8gc2V0IGZvciB0aGUgR0VNIG9iamVjdC4KKwkgKi8KIAlfX3UzMiBm
bGFnczsKIH07CiAKKy8qKgorICogc3RydWN0IGRybV90ZWdyYV9nZW1fZ2V0X2ZsYWdzIC0gcGFy
YW1ldGVycyBmb3IgdGhlIGdldCBmbGFncyBJT0NUTAorICovCiBzdHJ1Y3QgZHJtX3RlZ3JhX2dl
bV9nZXRfZmxhZ3MgewotCS8qIGlucHV0ICovCisJLyoqCisJICogQGhhbmRsZToKKwkgKgorCSAq
IEhhbmRsZSB0byB0aGUgR0VNIG9iamVjdCBmb3Igd2hpY2ggdG8gcXVlcnkgdGhlIGZsYWdzLgor
CSAqLwogCV9fdTMyIGhhbmRsZTsKLQkvKiBvdXRwdXQgKi8KKworCS8qKgorCSAqIEBmbGFnczoK
KwkgKgorCSAqIFRoZSBmbGFncyBjdXJyZW50bHkgYXNzb2NpYXRlZCB3aXRoIHRoZSBHRU0gb2Jq
ZWN0LiBTZXQgYnkgdGhlCisJICoga2VybmVsIHVwb24gc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9m
IHRoZSBJT0NUTC4KKwkgKi8KIAlfX3UzMiBmbGFnczsKIH07CiAKQEAgLTE5Myw3ICs2NjUsNyBA
QCBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9nZXRfZmxhZ3MgewogI2RlZmluZSBEUk1fSU9DVExfVEVH
UkFfU1lOQ1BUX0lOQ1IgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9TWU5D
UFRfSU5DUiwgc3RydWN0IGRybV90ZWdyYV9zeW5jcHRfaW5jcikKICNkZWZpbmUgRFJNX0lPQ1RM
X1RFR1JBX1NZTkNQVF9XQUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFf
U1lOQ1BUX1dBSVQsIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3dhaXQpCiAjZGVmaW5lIERSTV9J
T0NUTF9URUdSQV9PUEVOX0NIQU5ORUwgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9U
RUdSQV9PUEVOX0NIQU5ORUwsIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFubmVsKQotI2RlZmlu
ZSBEUk1fSU9DVExfVEVHUkFfQ0xPU0VfQ0hBTk5FTCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNF
ICsgRFJNX1RFR1JBX0NMT1NFX0NIQU5ORUwsIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFubmVs
KQorI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfQ0xPU0VfQ0hBTk5FTCBEUk1fSU9XUihEUk1fQ09N
TUFORF9CQVNFICsgRFJNX1RFR1JBX0NMT1NFX0NIQU5ORUwsIHN0cnVjdCBkcm1fdGVncmFfY2xv
c2VfY2hhbm5lbCkKICNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX0dFVF9TWU5DUFQgRFJNX0lPV1Io
RFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9HRVRfU1lOQ1BULCBzdHJ1Y3QgZHJtX3RlZ3Jh
X2dldF9zeW5jcHQpCiAjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9TVUJNSVQgRFJNX0lPV1IoRFJN
X0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9TVUJNSVQsIHN0cnVjdCBkcm1fdGVncmFfc3VibWl0
KQogI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VUX1NZTkNQVF9CQVNFIERSTV9JT1dSKERSTV9D
T01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VUX1NZTkNQVF9CQVNFLCBzdHJ1Y3QgZHJtX3RlZ3Jh
X2dldF9zeW5jcHRfYmFzZSkKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3ZjNF9kcm0uaCBiL2lu
Y2x1ZGUvZHJtL3ZjNF9kcm0uaAppbmRleCA0MTE3MTE3Yi4uMzFmNTBkZTMgMTAwNjQ0Ci0tLSBh
L2luY2x1ZGUvZHJtL3ZjNF9kcm0uaAorKysgYi9pbmNsdWRlL2RybS92YzRfZHJtLmgKQEAgLTE4
MywxMCArMTgzLDE3IEBAIHN0cnVjdCBkcm1fdmM0X3N1Ym1pdF9jbCB7CiAJLyogSUQgb2YgdGhl
IHBlcmZtb24gdG8gYXR0YWNoIHRvIHRoaXMgam9iLiAwIG1lYW5zIG5vIHBlcmZtb24uICovCiAJ
X191MzIgcGVyZm1vbmlkOwogCi0JLyogVW51c2VkIGZpZWxkIHRvIGFsaWduIHRoaXMgc3RydWN0
IG9uIDY0IGJpdHMuIE11c3QgYmUgc2V0IHRvIDAuCi0JICogSWYgb25lIGV2ZXIgbmVlZHMgdG8g
YWRkIGFuIHUzMiBmaWVsZCB0byB0aGlzIHN0cnVjdCwgdGhpcyBmaWVsZAotCSAqIGNhbiBiZSB1
c2VkLgorCS8qIFN5bmNvYmogaGFuZGxlIHRvIHdhaXQgb24uIElmIHNldCwgcHJvY2Vzc2luZyBv
ZiB0aGlzIHJlbmRlciBqb2IKKwkgKiB3aWxsIG5vdCBzdGFydCB1bnRpbCB0aGUgc3luY29iaiBp
cyBzaWduYWxlZC4gMCBtZWFucyBpZ25vcmUuCiAJICovCisJX191MzIgaW5fc3luYzsKKworCS8q
IFN5bmNvYmogaGFuZGxlIHRvIGV4cG9ydCBmZW5jZSB0by4gSWYgc2V0LCB0aGUgZmVuY2UgaW4g
dGhlIHN5bmNvYmoKKwkgKiB3aWxsIGJlIHJlcGxhY2VkIHdpdGggYSBmZW5jZSB0aGF0IHNpZ25h
bHMgdXBvbiBjb21wbGV0aW9uIG9mIHRoaXMKKwkgKiByZW5kZXIgam9iLiAwIG1lYW5zIGlnbm9y
ZS4KKwkgKi8KKwlfX3UzMiBvdXRfc3luYzsKKwogCV9fdTMyIHBhZDI7CiB9OwogCmNvbW1pdCBl
MDhiN2YyMjM0NWYzYWFlNGMzNThiYzIzN2UyN2JlY2U4N2I1ZDEwCkF1dGhvcjogRW1pbCBWZWxp
a292IDxlbWlsLnZlbGlrb3ZAY29sbGFib3JhLmNvbT4KRGF0ZTogICBUdWUgU2VwIDI1IDE2OjE1
OjE4IDIwMTggKzAxMDAKCiAgICBnaXRsYWItY2k6IHBhc3MgdGhlIGNvcnJlY3QgdG9nZ2xlcyB0
byBjb25maWd1cmUKICAgIAogICAgVHJpdmlhbCB0eXBvcyAtIHMvYWRtZ3B1L2FtZGdwdS87cy92
bXdmZ3gvdm13Z2Z4LwogICAgCiAgICBGaXhlczogNGE5MDMwZGM4YjcgKCJhZGQgZ2l0bGFiLWNp
IGJ1aWxkcyBvZiBsaWJkcm0iKQogICAgQ2M6IEJyaWFuIFN0YXJrZXkgPGJyaWFuLnN0YXJrZXlA
YXJtLmNvbT4KICAgIFJlcG9ydGVkLWJ5OiBCcmlhbiBTdGFya2V5IDxicmlhbi5zdGFya2V5QGFy
bS5jb20+CiAgICBTaWduZWQtb2ZmLWJ5OiBFbWlsIFZlbGlrb3YgPGVtaWwudmVsaWtvdkBjb2xs
YWJvcmEuY29tPgogICAgUmV2aWV3ZWQtYnk6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNo
ZXJAYW1kLmNvbT4KICAgIFJldmlld2VkLWJ5OiBFcmljIEVuZ2VzdHJvbSA8ZXJpYy5lbmdlc3Ry
b21AaW50ZWwuY29tPgoKZGlmZiAtLWdpdCBhLy5naXRsYWItY2kueW1sIGIvLmdpdGxhYi1jaS55
bWwKaW5kZXggZmU5YjQ3ZGQuLmEwZWRmZGZmIDEwMDY0NAotLS0gYS8uZ2l0bGFiLWNpLnltbAor
KysgYi8uZ2l0bGFiLWNpLnltbApAQCAtNDAsOSArNDAsOSBAQAogICAgICAgLS1lbmFibGUtbGli
a21zCiAgICAgICAtLWVuYWJsZS1pbnRlbAogICAgICAgLS1lbmFibGUtcmFkZW9uCi0gICAgICAt
LWVuYWJsZS1hZG1ncHUKKyAgICAgIC0tZW5hYmxlLWFtZGdwdQogICAgICAgLS1lbmFibGUtbm91
dmVhdQotICAgICAgLS1lbmFibGUtdm13Zmd4CisgICAgICAtLWVuYWJsZS12bXdnZngKICAgICAg
IC0tZW5hYmxlLW9tYXAtZXhwZXJpbWVudGFsLWFwaQogICAgICAgLS1lbmFibGUtZXh5bm9zLWV4
cGVyaW1lbnRhbC1hcGkKICAgICAgIC0tZW5hYmxlLWZyZWVkcmVubwpjb21taXQgNTc3NTc0MWQx
NmRkNWUxOGUwMmVhMTI5ZWVmYjNmNDUyZGQwZGM3OApBdXRob3I6IEV6ZXF1aWVsIEdhcmNpYSA8
ZXplcXVpZWxAY29sbGFib3JhLmNvbT4KRGF0ZTogICBTYXQgU2VwIDIyIDEwOjI4OjM5IDIwMTgg
LTAzMDAKCiAgICB0ZXN0cy91dGlsOiBBZGQgc3VwcG9ydCBmb3Igc3VuNGktZHJtIGRyaXZlcgog
ICAgCiAgICBUaGlzIGlzIHRoZSBEUk0gZHJpdmVyIGZvciBhbGwgQWxsd2lubmVyIChzdW54aSkg
cGxhdGZvcm1zLgogICAgCiAgICBTaWduZWQtb2ZmLWJ5OiBFemVxdWllbCBHYXJjaWEgPGV6ZXF1
aWVsQGNvbGxhYm9yYS5jb20+CiAgICBSZXZpZXdlZC1ieTogRW1pbCBWZWxpa292IDxlbWlsLnZl
bGlrb3ZAY29sbGFib3JhLmNvbT4KCmRpZmYgLS1naXQgYS90ZXN0cy91dGlsL2ttcy5jIGIvdGVz
dHMvdXRpbC9rbXMuYwppbmRleCBhMmQxZDdiYS4uNWFmOGJmMjAgMTAwNjQ0Ci0tLSBhL3Rlc3Rz
L3V0aWwva21zLmMKKysrIGIvdGVzdHMvdXRpbC9rbXMuYwpAQCAtMTQ1LDYgKzE0NSw3IEBAIHN0
YXRpYyBjb25zdCBjaGFyICogY29uc3QgbW9kdWxlc1tdID0gewogCSJtZXNvbiIsCiAJInBsMTEx
IiwKIAkic3RtIiwKKwkic3VuNGktZHJtIiwKIH07CiAKIGludCB1dGlsX29wZW4oY29uc3QgY2hh
ciAqZGV2aWNlLCBjb25zdCBjaGFyICptb2R1bGUpCmNvbW1pdCBmNmI0NzM3ZTJmYTAwOTAyMGU0
YzIwNjJiYTUwZWIzNWFiOWQxNWFjCkF1dGhvcjogTHVjYXMgRGUgTWFyY2hpIDxsdWNhcy5kZW1h
cmNoaUBpbnRlbC5jb20+CkRhdGU6ICAgV2VkIFNlcCAxOSAyMzowNTo0OCAyMDE4IC0wNzAwCgog
ICAgYW5kcm9pZDogbWFrZSBzeW1ib2xzIGhpZGRlbiBieSBkZWZhdWx0CiAgICAKICAgIFNpZ25l
ZC1vZmYtYnk6IEx1Y2FzIERlIE1hcmNoaSA8bHVjYXMuZGVtYXJjaGlAaW50ZWwuY29tPgogICAg
UmV2aWV3ZWQtYnk6IEVyaWMgRW5nZXN0cm9tIDxlcmljLmVuZ2VzdHJvbUBpbnRlbC5jb20+CiAg
ICBSZXZpZXdlZC1ieTogRW1pbCBWZWxpa292IDxlbWlsLnZlbGlrb3ZAY29sbGFib3JhLmNvbT4K
CmRpZmYgLS1naXQgYS9BbmRyb2lkLmNvbW1vbi5tayBiL0FuZHJvaWQuY29tbW9uLm1rCmluZGV4
IGUzZGUxMDY5Li5kMGU1ZDU1OSAxMDA2NDQKLS0tIGEvQW5kcm9pZC5jb21tb24ubWsKKysrIGIv
QW5kcm9pZC5jb21tb24ubWsKQEAgLTIsNiArMiw3IEBACiBMT0NBTF9DRkxBR1MgKz0gXAogCS1E
TUFKT1JfSU5fU1lTTUFDUk9TPTEgXAogCS1ESEFWRV9WSVNJQklMSVRZPTEgXAorCS1mdmlzaWJp
bGl0eT1oaWRkZW4gXAogCS1ESEFWRV9MSUJEUk1fQVRPTUlDX1BSSU1JVElWRVM9MQogCiBMT0NB
TF9DRkxBR1MgKz0gXApjb21taXQgOTljMzU0MGRkNGEwNjZkMDI5NWE5YTFhYThkNGE0OWQ4NWFi
NTE3OApBdXRob3I6IEVtaWwgVmVsaWtvdiA8ZW1pbC52ZWxpa292QGNvbGxhYm9yYS5jb20+CkRh
dGU6ICAgVGh1IFNlcCA2IDE1OjUwOjU5IDIwMTggKzAxMDAKCiAgICAqLXN5bWJvbHMtY2hlY2s6
IGVycm9yIG91dCB3aGVuIHVzaW5nIHVuc2V0IHZhcmlhYmxlcwogICAgCiAgICBJdCB3aWxsIG1h
a2UgYnVncyBsaWtlIHRoZSBvbmUgZml4ZWQgd2l0aCBwcmV2aW91cyBwYXRjaCBkZWFkIG9idmlv
dXMuCiAgICAKICAgIFNpZ25lZC1vZmYtYnk6IEVtaWwgVmVsaWtvdiA8ZW1pbC52ZWxpa292QGNv
bGxhYm9yYS5jb20+CiAgICBSZXZpZXdlZC1ieTogRXJpYyBFbmdlc3Ryb20gPGVyaWMuZW5nZXN0
cm9tQGludGVsLmNvbT4KCmRpZmYgLS1naXQgYS9hbWRncHUvYW1kZ3B1LXN5bWJvbC1jaGVjayBi
L2FtZGdwdS9hbWRncHUtc3ltYm9sLWNoZWNrCmluZGV4IDU4NjQ2ZTg1Li42ZjVlMGY5NSAxMDA3
NTUKLS0tIGEvYW1kZ3B1L2FtZGdwdS1zeW1ib2wtY2hlY2sKKysrIGIvYW1kZ3B1L2FtZGdwdS1z
eW1ib2wtY2hlY2sKQEAgLTEsNSArMSw3IEBACiAjIS9iaW4vYmFzaAogCitzZXQgLXUKKwogIyBU
aGUgZm9sbG93aW5nIHN5bWJvbHMgKHBhc3QgdGhlIGZpcnN0IGZpdmUpIGFyZSB0YWtlbiBmcm9t
IHRoZSBwdWJsaWMgaGVhZGVycy4KICMgQSBsaXN0IG9mIHRoZSBsYXR0ZXIgc2hvdWxkIGJlIGF2
YWlsYWJsZSBNYWtlZmlsZS5hbS9saWJkcm1fYW1kZ3B1aW5jbHVkZV9IRUFERVJTCiAKZGlmZiAt
LWdpdCBhL2V0bmF2aXYvZXRuYXZpdi1zeW1ib2wtY2hlY2sgYi9ldG5hdml2L2V0bmF2aXYtc3lt
Ym9sLWNoZWNrCmluZGV4IGJjNTA5NjE1Li4xODkxMDY4OCAxMDA3NTUKLS0tIGEvZXRuYXZpdi9l
dG5hdml2LXN5bWJvbC1jaGVjaworKysgYi9ldG5hdml2L2V0bmF2aXYtc3ltYm9sLWNoZWNrCkBA
IC0xLDUgKzEsNyBAQAogIyEvYmluL2Jhc2gKIAorc2V0IC11CisKICMgVGhlIGZvbGxvd2luZyBz
eW1ib2xzIChwYXN0IHRoZSBmaXJzdCBmaXZlKSBhcmUgdGFrZW4gZnJvbSB0aGUgcHVibGljIGhl
YWRlcnMuCiAjIEEgbGlzdCBvZiB0aGUgbGF0dGVyIHNob3VsZCBiZSBhdmFpbGFibGUgTWFrZWZp
bGUuc291cmNlcy9MSUJEUk1fRVROQVZJVl9IX0ZJTEVTCiAKZGlmZiAtLWdpdCBhL2V4eW5vcy9l
eHlub3Mtc3ltYm9sLWNoZWNrIGIvZXh5bm9zL2V4eW5vcy1zeW1ib2wtY2hlY2sKaW5kZXggZTlm
MWIwNGQuLjQ5ZDYxMWU2IDEwMDc1NQotLS0gYS9leHlub3MvZXh5bm9zLXN5bWJvbC1jaGVjawor
KysgYi9leHlub3MvZXh5bm9zLXN5bWJvbC1jaGVjawpAQCAtMSw1ICsxLDcgQEAKICMhL2Jpbi9i
YXNoCiAKK3NldCAtdQorCiAjIFRoZSBmb2xsb3dpbmcgc3ltYm9scyAocGFzdCB0aGUgZmlyc3Qg
Zml2ZSkgYXJlIHRha2VuIGZyb20gdGhlIHB1YmxpYyBoZWFkZXJzLgogIyBBIGxpc3Qgb2YgdGhl
IGxhdHRlciBzaG91bGQgYmUgYXZhaWxhYmxlIE1ha2VmaWxlLmFtL2xpYmRybV9leHlub3MqX0hF
QURFUlMKIApkaWZmIC0tZ2l0IGEvZnJlZWRyZW5vL2ZyZWVkcmVuby1zeW1ib2wtY2hlY2sgYi9m
cmVlZHJlbm8vZnJlZWRyZW5vLXN5bWJvbC1jaGVjawppbmRleCBlNzMyYzk5NS4uNmRhOWQ2Njcg
MTAwNzU1Ci0tLSBhL2ZyZWVkcmVuby9mcmVlZHJlbm8tc3ltYm9sLWNoZWNrCisrKyBiL2ZyZWVk
cmVuby9mcmVlZHJlbm8tc3ltYm9sLWNoZWNrCkBAIC0xLDUgKzEsNyBAQAogIyEvYmluL2Jhc2gK
IAorc2V0IC11CisKICMgVGhlIGZvbGxvd2luZyBzeW1ib2xzIChwYXN0IHRoZSBmaXJzdCBmaXZl
KSBhcmUgdGFrZW4gZnJvbSB0aGUgcHVibGljIGhlYWRlcnMuCiAjIEEgbGlzdCBvZiB0aGUgbGF0
dGVyIHNob3VsZCBiZSBhdmFpbGFibGUgTWFrZWZpbGUuc291cmNlcy9MSUJEUk1fRlJFRURSRU5P
X0hfRklMRVMKIApkaWZmIC0tZ2l0IGEvaW50ZWwvaW50ZWwtc3ltYm9sLWNoZWNrIGIvaW50ZWwv
aW50ZWwtc3ltYm9sLWNoZWNrCmluZGV4IDRkMzBhNGIxLi5kZTM3N2JlZiAxMDA3NTUKLS0tIGEv
aW50ZWwvaW50ZWwtc3ltYm9sLWNoZWNrCisrKyBiL2ludGVsL2ludGVsLXN5bWJvbC1jaGVjawpA
QCAtMSw1ICsxLDcgQEAKICMhL2Jpbi9iYXNoCiAKK3NldCAtdQorCiAjIFRoZSBmb2xsb3dpbmcg
c3ltYm9scyAocGFzdCB0aGUgZmlyc3QgZml2ZSkgYXJlIHRha2VuIGZyb20gdGhlIHB1YmxpYyBo
ZWFkZXJzLgogIyBBIGxpc3Qgb2YgdGhlIGxhdHRlciBzaG91bGQgYmUgYXZhaWxhYmxlIE1ha2Vm
aWxlLnNvdXJjZXMvTElCRFJNX0lOVEVMX0hfRklMRVMKIApkaWZmIC0tZ2l0IGEvbGlia21zL2tt
cy1zeW1ib2wtY2hlY2sgYi9saWJrbXMva21zLXN5bWJvbC1jaGVjawppbmRleCBhNWMyMTIwZC4u
MzBmNDQ0ZjcgMTAwNzU1Ci0tLSBhL2xpYmttcy9rbXMtc3ltYm9sLWNoZWNrCisrKyBiL2xpYmtt
cy9rbXMtc3ltYm9sLWNoZWNrCkBAIC0xLDUgKzEsNyBAQAogIyEvYmluL2Jhc2gKIAorc2V0IC11
CisKICMgVGhlIGZvbGxvd2luZyBzeW1ib2xzIChwYXN0IHRoZSBmaXJzdCBmaXZlKSBhcmUgdGFr
ZW4gZnJvbSB0aGUgcHVibGljIGhlYWRlcnMuCiAjIEEgbGlzdCBvZiB0aGUgbGF0dGVyIHNob3Vs
ZCBiZSBhdmFpbGFibGUgTWFrZWZpbGUuc291cmNlcy9MSUJLTVNfSF9GSUxFUwogCmRpZmYgLS1n
aXQgYS9ub3V2ZWF1L25vdXZlYXUtc3ltYm9sLWNoZWNrIGIvbm91dmVhdS9ub3V2ZWF1LXN5bWJv
bC1jaGVjawppbmRleCBiM2EyNDEwMS4uNjI5NjI0NGMgMTAwNzU1Ci0tLSBhL25vdXZlYXUvbm91
dmVhdS1zeW1ib2wtY2hlY2sKKysrIGIvbm91dmVhdS9ub3V2ZWF1LXN5bWJvbC1jaGVjawpAQCAt
MSw1ICsxLDcgQEAKICMhL2Jpbi9iYXNoCiAKK3NldCAtdQorCiAjIFRoZSBmb2xsb3dpbmcgc3lt
Ym9scyAocGFzdCB0aGUgZmlyc3QgZml2ZSkgYXJlIHRha2VuIGZyb20gdGhlIHB1YmxpYyBoZWFk
ZXJzLgogIyBBIGxpc3Qgb2YgdGhlIGxhdHRlciBzaG91bGQgYmUgYXZhaWxhYmxlIE1ha2VmaWxl
LnNvdXJjZXMvTElCRFJNX05PVVZFQVVfSF9GSUxFUwogCmRpZmYgLS1naXQgYS9vbWFwL29tYXAt
c3ltYm9sLWNoZWNrIGIvb21hcC9vbWFwLXN5bWJvbC1jaGVjawppbmRleCAwZmI0YTBmMi4uMTZk
YTNjNDAgMTAwNzU1Ci0tLSBhL29tYXAvb21hcC1zeW1ib2wtY2hlY2sKKysrIGIvb21hcC9vbWFw
LXN5bWJvbC1jaGVjawpAQCAtMSw1ICsxLDcgQEAKICMhL2Jpbi9iYXNoCiAKK3NldCAtdQorCiAj
IFRoZSBmb2xsb3dpbmcgc3ltYm9scyAocGFzdCB0aGUgZmlyc3QgZml2ZSkgYXJlIHRha2VuIGZy
b20gdGhlIHB1YmxpYyBoZWFkZXJzLgogIyBBIGxpc3Qgb2YgdGhlIGxhdHRlciBzaG91bGQgYmUg
YXZhaWxhYmxlIE1ha2VmaWxlLmFtL2xpYmRybV9vbWFwKkhFQURFUlMKIApkaWZmIC0tZ2l0IGEv
cmFkZW9uL3JhZGVvbi1zeW1ib2wtY2hlY2sgYi9yYWRlb24vcmFkZW9uLXN5bWJvbC1jaGVjawpp
bmRleCA3ZDc5ZDkwMS4uZGE2MDViYjggMTAwNzU1Ci0tLSBhL3JhZGVvbi9yYWRlb24tc3ltYm9s
LWNoZWNrCisrKyBiL3JhZGVvbi9yYWRlb24tc3ltYm9sLWNoZWNrCkBAIC0xLDUgKzEsNyBAQAog
IyEvYmluL2Jhc2gKIAorc2V0IC11CisKICMgVGhlIGZvbGxvd2luZyBzeW1ib2xzIChwYXN0IHRo
ZSBmaXJzdCBmaXZlKSBhcmUgdGFrZW4gZnJvbSB0aGUgcHVibGljIGhlYWRlcnMuCiAjIEEgbGlz
dCBvZiB0aGUgbGF0dGVyIHNob3VsZCBiZSBhdmFpbGFibGUgTWFrZWZpbGUuc291cmNlcy9MSUJE
Uk1fUkFERU9OX0hfRklMRVMKIApkaWZmIC0tZ2l0IGEvdGVncmEvdGVncmEtc3ltYm9sLWNoZWNr
IGIvdGVncmEvdGVncmEtc3ltYm9sLWNoZWNrCmluZGV4IDUwOWI2NzhjLi44NTM5Yjk1YiAxMDA3
NTUKLS0tIGEvdGVncmEvdGVncmEtc3ltYm9sLWNoZWNrCisrKyBiL3RlZ3JhL3RlZ3JhLXN5bWJv
bC1jaGVjawpAQCAtMSw1ICsxLDcgQEAKICMhL2Jpbi9iYXNoCiAKK3NldCAtdQorCiAjIFRoZSBm
b2xsb3dpbmcgc3ltYm9scyAocGFzdCB0aGUgZmlyc3QgbmluZSkgYXJlIHRha2VuIGZyb20gdGVn
cmEuaC4KIAogRlVOQ1M9JCgkTk0gLUQgLS1mb3JtYXQ9YnNkIC0tZGVmaW5lZC1vbmx5ICR7MS0u
bGlicy9saWJkcm1fdGVncmEuc299IHwgYXdrICd7cHJpbnQgJDN9J3wgd2hpbGUgcmVhZCBmdW5j
OyBkbwpjb21taXQgNjYwNjQzZTQ5OGY2YzA4NGFjNDg4Zjk1YzQzOTJkMDJkZGU0OGE5OApBdXRo
b3I6IEVtaWwgVmVsaWtvdiA8ZW1pbC52ZWxpa292QGNvbGxhYm9yYS5jb20+CkRhdGU6ICAgVGh1
IFNlcCA2IDE1OjQ2OjE2IDIwMTggKzAxMDAKCiAgICBhdXRvbWFrZTogc2V0IE5NIGJlZm9yZSBy
dW5uaW5nIHRoZSB0ZXN0cwogICAgCiAgICBTZXQvZXhwb3J0IHRoZSBOTSB2YXJpYWJsZSBzaW5j
ZSBpdCBtYXkgbm90IGJlIHNldCBhbHJlYWR5LgogICAgCiAgICBGaXhlczogNGYwOGJmZTk2ZGEg
KCIqLXN5bWJvbC1jaGVjazogRG9uJ3QgaGFyZC1jb2RlIG5tIGV4ZWN1dGFibGUiKQogICAgQ2M6
IEhlaWtvIEJlY2tlciA8aGVpcmVja2FAZXhoZXJiby5vcmc+CiAgICBTaWduZWQtb2ZmLWJ5OiBF
bWlsIFZlbGlrb3YgPGVtaWwudmVsaWtvdkBjb2xsYWJvcmEuY29tPgogICAgUmV2aWV3ZWQtYnk6
IEVyaWMgRW5nZXN0cm9tIDxlcmljLmVuZ2VzdHJvbUBpbnRlbC5jb20+CgpkaWZmIC0tZ2l0IGEv
YW1kZ3B1L01ha2VmaWxlLmFtIGIvYW1kZ3B1L01ha2VmaWxlLmFtCmluZGV4IDcwNzA4MmYwLi5l
ZjhhYjA1NyAxMDA2NDQKLS0tIGEvYW1kZ3B1L01ha2VmaWxlLmFtCisrKyBiL2FtZGdwdS9NYWtl
ZmlsZS5hbQpAQCAtNDgsNSArNDgsNiBAQCBsaWJkcm1fYW1kZ3B1aW5jbHVkZV9IRUFERVJTID0g
JChMSUJEUk1fQU1ER1BVX0hfRklMRVMpCiBwa2djb25maWdkaXIgPSBAcGtnY29uZmlnZGlyQAog
cGtnY29uZmlnX0RBVEEgPSBsaWJkcm1fYW1kZ3B1LnBjCiAKK0FNX1RFU1RTX0VOVklST05NRU5U
ID0gTk09JyQoTk0pJwogVEVTVFMgPSBhbWRncHUtc3ltYm9sLWNoZWNrCiBFWFRSQV9ESVNUID0g
JChURVNUUykKZGlmZiAtLWdpdCBhL2V0bmF2aXYvTWFrZWZpbGUuYW0gYi9ldG5hdml2L01ha2Vm
aWxlLmFtCmluZGV4IDljMmEzZDdkLi42NDhlM2M1YiAxMDA2NDQKLS0tIGEvZXRuYXZpdi9NYWtl
ZmlsZS5hbQorKysgYi9ldG5hdml2L01ha2VmaWxlLmFtCkBAIC0yMyw1ICsyMyw2IEBAIGxpYmRy
bV9ldG5hdml2aW5jbHVkZV9IRUFERVJTID0gJChMSUJEUk1fRVROQVZJVl9IX0ZJTEVTKQogcGtn
Y29uZmlnZGlyID0gQHBrZ2NvbmZpZ2RpckAKIHBrZ2NvbmZpZ19EQVRBID0gbGliZHJtX2V0bmF2
aXYucGMKIAorQU1fVEVTVFNfRU5WSVJPTk1FTlQgPSBOTT0nJChOTSknCiBURVNUUyA9IGV0bmF2
aXYtc3ltYm9sLWNoZWNrCiBFWFRSQV9ESVNUID0gJChURVNUUykKZGlmZiAtLWdpdCBhL2V4eW5v
cy9NYWtlZmlsZS5hbSBiL2V4eW5vcy9NYWtlZmlsZS5hbQppbmRleCA5MThiOGQ4Mi4uNzZiMTg1
ZDMgMTAwNjQ0Ci0tLSBhL2V4eW5vcy9NYWtlZmlsZS5hbQorKysgYi9leHlub3MvTWFrZWZpbGUu
YW0KQEAgLTI0LDUgKzI0LDYgQEAgbGliZHJtX2V4eW5vc2luY2x1ZGVfSEVBREVSUyA9IGV4eW5v
c19kcm1pZi5oCiBwa2djb25maWdkaXIgPSBAcGtnY29uZmlnZGlyQAogcGtnY29uZmlnX0RBVEEg
PSBsaWJkcm1fZXh5bm9zLnBjCiAKK0FNX1RFU1RTX0VOVklST05NRU5UID0gTk09JyQoTk0pJwog
VEVTVFMgPSBleHlub3Mtc3ltYm9sLWNoZWNrCiBFWFRSQV9ESVNUID0gJChURVNUUykKZGlmZiAt
LWdpdCBhL2ZyZWVkcmVuby9NYWtlZmlsZS5hbSBiL2ZyZWVkcmVuby9NYWtlZmlsZS5hbQppbmRl
eCA0Y2I1NDJkMy4uMzc4NDUwMzUgMTAwNjQ0Ci0tLSBhL2ZyZWVkcmVuby9NYWtlZmlsZS5hbQor
KysgYi9mcmVlZHJlbm8vTWFrZWZpbGUuYW0KQEAgLTI4LDUgKzI4LDYgQEAgbGliZHJtX2ZyZWVk
cmVub2NvbW1vbmluY2x1ZGVfSEVBREVSUyA9ICQoTElCRFJNX0ZSRUVEUkVOT19IX0ZJTEVTKQog
cGtnY29uZmlnZGlyID0gQHBrZ2NvbmZpZ2RpckAKIHBrZ2NvbmZpZ19EQVRBID0gbGliZHJtX2Zy
ZWVkcmVuby5wYwogCitBTV9URVNUU19FTlZJUk9OTUVOVCA9IE5NPSckKE5NKScKIFRFU1RTID0g
ZnJlZWRyZW5vLXN5bWJvbC1jaGVjawogRVhUUkFfRElTVCA9ICQoVEVTVFMpCmRpZmYgLS1naXQg
YS9pbnRlbC9NYWtlZmlsZS5hbSBiL2ludGVsL01ha2VmaWxlLmFtCmluZGV4IDViMWYyZjU2Li5i
YWQ0NGY1ZiAxMDA2NDQKLS0tIGEvaW50ZWwvTWFrZWZpbGUuYW0KKysrIGIvaW50ZWwvTWFrZWZp
bGUuYW0KQEAgLTU3LDYgKzU3LDcgQEAgQkFUQ0hFUyA9IFwKIAl0ZXN0cy9nZW43LTJkLWNvcHku
YmF0Y2ggXAogCXRlc3RzL2dlbjctM2QuYmF0Y2gKIAorQU1fVEVTVFNfRU5WSVJPTk1FTlQgPSBO
TT0nJChOTSknCiBURVNUUyA9IFwKIAkkKEJBVENIRVM6LmJhdGNoPS5iYXRjaC5zaCkgXAogCWlu
dGVsLXN5bWJvbC1jaGVjawpkaWZmIC0tZ2l0IGEvbGlia21zL01ha2VmaWxlLmFtIGIvbGlia21z
L01ha2VmaWxlLmFtCmluZGV4IDVlMDhhMzgwLi5mZjRjMWIyYSAxMDA2NDQKLS0tIGEvbGlia21z
L01ha2VmaWxlLmFtCisrKyBiL2xpYmttcy9NYWtlZmlsZS5hbQpAQCAtNDAsNSArNDAsNiBAQCBs
aWJrbXNpbmNsdWRlX0hFQURFUlMgPSAkKExJQktNU19IX0ZJTEVTKQogcGtnY29uZmlnZGlyID0g
QHBrZ2NvbmZpZ2RpckAKIHBrZ2NvbmZpZ19EQVRBID0gbGlia21zLnBjCiAKK0FNX1RFU1RTX0VO
VklST05NRU5UID0gTk09JyQoTk0pJwogVEVTVFMgPSBrbXMtc3ltYm9sLWNoZWNrCiBFWFRSQV9E
SVNUID0gJChURVNUUykKZGlmZiAtLWdpdCBhL25vdXZlYXUvTWFrZWZpbGUuYW0gYi9ub3V2ZWF1
L01ha2VmaWxlLmFtCmluZGV4IDNjNGQwNDNiLi41NTc0ZmQ4ZiAxMDA2NDQKLS0tIGEvbm91dmVh
dS9NYWtlZmlsZS5hbQorKysgYi9ub3V2ZWF1L01ha2VmaWxlLmFtCkBAIC0zMCw1ICszMCw2IEBA
IGxpYmRybV9ub3V2ZWF1bnZpZmluY2x1ZGVfSEVBREVSUyA9IG52aWYvY2xhc3MuaCBcCiBwa2dj
b25maWdkaXIgPSBAcGtnY29uZmlnZGlyQAogcGtnY29uZmlnX0RBVEEgPSBsaWJkcm1fbm91dmVh
dS5wYwogCitBTV9URVNUU19FTlZJUk9OTUVOVCA9IE5NPSckKE5NKScKIFRFU1RTID0gbm91dmVh
dS1zeW1ib2wtY2hlY2sKIEVYVFJBX0RJU1QgPSAkKFRFU1RTKQpkaWZmIC0tZ2l0IGEvb21hcC9N
YWtlZmlsZS5hbSBiL29tYXAvTWFrZWZpbGUuYW0KaW5kZXggMjY5NzhhZTcuLjM4YTEwMDdiIDEw
MDY0NAotLS0gYS9vbWFwL01ha2VmaWxlLmFtCisrKyBiL29tYXAvTWFrZWZpbGUuYW0KQEAgLTIx
LDUgKzIxLDYgQEAgbGliZHJtX29tYXBpbmNsdWRlX0hFQURFUlMgPSBvbWFwX2RybWlmLmgKIHBr
Z2NvbmZpZ2RpciA9IEBwa2djb25maWdkaXJACiBwa2djb25maWdfREFUQSA9IGxpYmRybV9vbWFw
LnBjCiAKK0FNX1RFU1RTX0VOVklST05NRU5UID0gTk09JyQoTk0pJwogVEVTVFMgPSBvbWFwLXN5
bWJvbC1jaGVjawogRVhUUkFfRElTVCA9ICQoVEVTVFMpCmRpZmYgLS1naXQgYS9yYWRlb24vTWFr
ZWZpbGUuYW0gYi9yYWRlb24vTWFrZWZpbGUuYW0KaW5kZXggYzA3YjQ5MjIuLmU3MTJhNGFjIDEw
MDY0NAotLS0gYS9yYWRlb24vTWFrZWZpbGUuYW0KKysrIGIvcmFkZW9uL01ha2VmaWxlLmFtCkBA
IC00NCw1ICs0NCw2IEBAIGxpYmRybV9yYWRlb25pbmNsdWRlX0hFQURFUlMgPSAkKExJQkRSTV9S
QURFT05fSF9GSUxFUykKIHBrZ2NvbmZpZ2RpciA9IEBwa2djb25maWdkaXJACiBwa2djb25maWdf
REFUQSA9IGxpYmRybV9yYWRlb24ucGMKIAorQU1fVEVTVFNfRU5WSVJPTk1FTlQgPSBOTT0nJChO
TSknCiBURVNUUyA9IHJhZGVvbi1zeW1ib2wtY2hlY2sKIEVYVFJBX0RJU1QgPSAkKExJQkRSTV9S
QURFT05fQk9GX0ZJTEVTKSAkKFRFU1RTKQpkaWZmIC0tZ2l0IGEvdGVncmEvTWFrZWZpbGUuYW0g
Yi90ZWdyYS9NYWtlZmlsZS5hbQppbmRleCAwOGI1ZTdjNC4uNTMxMTk5NzAgMTAwNjQ0Ci0tLSBh
L3RlZ3JhL01ha2VmaWxlLmFtCisrKyBiL3RlZ3JhL01ha2VmaWxlLmFtCkBAIC0yMiw1ICsyMiw2
IEBAIGxpYmRybV90ZWdyYWluY2x1ZGVfSEVBREVSUyA9IHRlZ3JhLmgKIHBrZ2NvbmZpZ2RpciA9
IEBwa2djb25maWdkaXJACiBwa2djb25maWdfREFUQSA9IGxpYmRybV90ZWdyYS5wYwogCitBTV9U
RVNUU19FTlZJUk9OTUVOVCA9IE5NPSckKE5NKScKIFRFU1RTID0gdGVncmEtc3ltYm9sLWNoZWNr
CiBFWFRSQV9ESVNUID0gJChURVNUUykKY29tbWl0IDk0NmZhMjE5NjY2OThjNDU2ZDE5ZGU4YTIx
YWZhY2NlNGQyZGRmODcKQXV0aG9yOiBEYW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3JhLmNv
bT4KRGF0ZTogICBUaHUgU2VwIDYgMTE6MDE6MTcgMjAxOCArMDEwMAoKICAgIENJOiBDYXB0dXJl
IHRlc3QgbG9ncyBhcyBHaXRMYWIgYXJ0aWZhY3RzCiAgICAKICAgIEdpdExhYiBDSSBhbHJlYWR5
IGNhcHR1cmVzIGFsbCB0aGUgc3Rkb3V0L3N0ZGVyciBvdXRwdXQgZnJvbSB0aGUgYnVpbGQKICAg
IHByb2Nlc3MgYXMgdGhlIGxvZy4gSG93ZXZlciwgc29tZSBvdGhlciBpbXBvcnRhbnQgaW5mb3Jt
YXRpb24gaXMgaGlkZGVuCiAgICBpbiBvdGhlciBsb2cgZmlsZXMuCiAgICAKICAgIFRha2VuIGZy
b20gV2F5bGFuZCwgY2FwdHVyZSBsb2dzIGZyb20gdGhlIGNvbmZpZ3VyYXRpb24gcHJvY2VzcyBh
cyB3ZWxsCiAgICBhcyBmcm9tIGV2ZXJ5IGNoZWNrLgogICAgCiAgICBTaWduZWQtb2ZmLWJ5OiBE
YW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3JhLmNvbT4KICAgIENjOiBSb2RyaWdvIFZpdmkg
PHJvZHJpZ28udml2aUBnbWFpbC5jb20+CiAgICBDYzogTHVjYXMgRGUgTWFyY2hpIDxsdWNhcy5k
ZS5tYXJjaGlAZ21haWwuY29tPgogICAgQ2M6IEVyaWMgRW5nZXN0csO2bSA8ZXJpYy5lbmdlc3Ry
b21AaW50ZWwuY29tPgogICAgQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwu
Y2g+CiAgICBBY2tlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4K
ICAgIEFja2VkLWJ5OiBFcmljIEVuZ2VzdHJvbSA8ZXJpYy5lbmdlc3Ryb21AaW50ZWwuY29tPgog
ICAgW0VtaWw6IHVzZSB3aWxkY2FyZCB0byBtYXRjaCB0aGUgYXJ0ZWZhY3RzXQogICAgUmV2aWV3
ZWQtYnk6IEVtaWwgVmVsaWtvdiA8ZW1pbC52ZWxpa292QGNvbGxhYm9yYS5jb20+CgpkaWZmIC0t
Z2l0IGEvLmdpdGxhYi1jaS55bWwgYi8uZ2l0bGFiLWNpLnltbAppbmRleCAxZGM0MzRhNS4uZmU5
YjQ3ZGQgMTAwNjQ0Ci0tLSBhLy5naXRsYWItY2kueW1sCisrKyBiLy5naXRsYWItY2kueW1sCkBA
IC0xLDMgKzEsMTUgQEAKKy5hcnRpZmFjdHMtbWVzb246ICZhcnRpZmFjdHMtbWVzb24KKyAgd2hl
bjogYWx3YXlzCisgIHBhdGhzOgorICAgLSBfYnVpbGQvbWVzb24tbG9ncworCisuYXJ0aWZhY3Rz
LWF1dG90b29sczogJmFydGlmYWN0cy1hdXRvdG9vbHMKKyAgd2hlbjogYWx3YXlzCisgIHBhdGhz
OgorICAgIC0gX2J1aWxkLyoubG9nCisgICAgLSBfYnVpbGQvKi8qLmxvZworICAgIC0gX2J1aWxk
LyovKi8qLmxvZworCiAubWVzb24tYnVpbGQ6ICZtZXNvbi1idWlsZAogICAtIG1lc29uIF9idWls
ZAogICAgICAgLUQgYW1kZ3B1PXRydWUKQEAgLTU4LDYgKzcwLDcgQEAgbGF0ZXN0LW1lc29uOgog
bGF0ZXN0LWF1dG90b29sczoKICAgc3RhZ2U6IGJ1aWxkCiAgIGltYWdlOiBiYXNlL2FyY2hsaW51
eDpsYXRlc3QKKyAgYXJ0aWZhY3RzOiAqYXJ0aWZhY3RzLWF1dG90b29scwogICBiZWZvcmVfc2Ny
aXB0OgogICAgIC0gcGFjbWFuIC1TeXUgLS1ub2NvbmZpcm0gLS1uZWVkZWQKICAgICAgICAgYmFz
ZS1kZXZlbApAQCAtNzMsNiArODYsNyBAQCBsYXRlc3QtYXV0b3Rvb2xzOgogb2xkZXN0LW1lc29u
OgogICBzdGFnZTogYnVpbGQKICAgaW1hZ2U6IGRlYmlhbjpzdGFibGUKKyAgYXJ0aWZhY3RzOiAq
YXJ0aWZhY3RzLW1lc29uCiAgIGJlZm9yZV9zY3JpcHQ6CiAgICAgLSBwcmludGYgPiAvZXRjL2Rw
a2cvZHBrZy5jZmcuZC85OS1leGNsdWRlLWNydWZ0ICIlc1xuIgogICAgICAgICAncGF0aC1leGNs
dWRlPS91c3Ivc2hhcmUvZG9jLyonCkBAIC0xMDksNiArMTIzLDcgQEAgb2xkZXN0LW1lc29uOgog
b2xkZXN0LWF1dG90b29sczoKICAgc3RhZ2U6IGJ1aWxkCiAgIGltYWdlOiBkZWJpYW46c3RhYmxl
CisgIGFydGlmYWN0czogKmFydGlmYWN0cy1hdXRvdG9vbHMKICAgYmVmb3JlX3NjcmlwdDoKICAg
ICAtIHByaW50ZiA+IC9ldGMvZHBrZy9kcGtnLmNmZy5kLzk5LWV4Y2x1ZGUtY3J1ZnQgIiVzXG4i
CiAgICAgICAgICdwYXRoLWV4Y2x1ZGU9L3Vzci9zaGFyZS9kb2MvKicKY29tbWl0IDhkNDQ5MThh
N2Q1YWQ2NzdiMGYwZmI2Yjc4MDIzMThjOTVmNzgzZDAKQXV0aG9yOiBTdGVmYW4gQWduZXIgPHN0
ZWZhbkBhZ25lci5jaD4KRGF0ZTogICBXZWQgU2VwIDUgMTE6MDA6MjEgMjAxOCAtMDcwMAoKICAg
IG1vZGVwcmludDogcHJpbnQgZW5jb2RlciB0eXBlCiAgICAKICAgIFJldmlld2VkLWJ5OiBFbWls
IFZlbGlrb3YgPGVtaWwudmVsaWtvdkBjb2xsYWJvcmEuY29tPgoKZGlmZiAtLWdpdCBhL3Rlc3Rz
L21vZGVwcmludC9tb2RlcHJpbnQuYyBiL3Rlc3RzL21vZGVwcmludC9tb2RlcHJpbnQuYwppbmRl
eCAxZDYyMjcwZi4uYWQ3MjdlMTIgMTAwNjQ0Ci0tLSBhL3Rlc3RzL21vZGVwcmludC9tb2RlcHJp
bnQuYworKysgYi90ZXN0cy9tb2RlcHJpbnQvbW9kZXByaW50LmMKQEAgLTE4Niw3ICsxODYsMTMg
QEAgc3RhdGljIGludCBwcmludENvbm5lY3RvcihpbnQgZmQsIGRybU1vZGVSZXNQdHIgcmVzLCBk
cm1Nb2RlQ29ubmVjdG9yUHRyIGNvbm5lY3QKIAogc3RhdGljIGludCBwcmludEVuY29kZXIoaW50
IGZkLCBkcm1Nb2RlUmVzUHRyIHJlcywgZHJtTW9kZUVuY29kZXJQdHIgZW5jb2RlciwgdWludDMy
X3QgaWQpCiB7Ci0JcHJpbnRmKCJFbmNvZGVyXG4iKTsKKwljb25zdCBjaGFyICplbmNvZGVyX25h
bWU7CisKKwllbmNvZGVyX25hbWUgPSB1dGlsX2xvb2t1cF9lbmNvZGVyX3R5cGVfbmFtZShlbmNv
ZGVyLT5lbmNvZGVyX3R5cGUpOworCWlmIChlbmNvZGVyX25hbWUpCisJCXByaW50ZigiRW5jb2Rl
cjogJXNcbiIsIGVuY29kZXJfbmFtZSk7CisJZWxzZQorCQlwcmludGYoIkVuY29kZXJcbiIpOwog
CXByaW50ZigiXHRpZCAgICAgOiVpXG4iLCBpZCk7CiAJcHJpbnRmKCJcdGNydGNfaWQgICA6JWRc
biIsIGVuY29kZXItPmNydGNfaWQpOwogCXByaW50ZigiXHR0eXBlICAgOiVkXG4iLCBlbmNvZGVy
LT5lbmNvZGVyX3R5cGUpOwpjb21taXQgZWFlZDVjODgyNWExZDkwMWZmMjk1MjZiMTQ2MzY0M2Ji
Nzk3MGQ3ZApBdXRob3I6IFN0ZWZhbiBBZ25lciA8c3RlZmFuQGFnbmVyLmNoPgpEYXRlOiAgIFdl
ZCBTZXAgNSAxMTowMDoxOSAyMDE4IC0wNzAwCgogICAgbW9kZXByaW50OiB1c2UgbGlidXRpbCB0
byBsb29rdXAgc3RyaW5ncwogICAgCiAgICBVc2UgbGlidXRpbCB0byBsb29rdXAgY29ubmVjdG9y
IHR5cGUgbmFtZXMgYW5kIHN0YXRlLiBUaGlzIGFsc28KICAgIG1ha2VzIHN1cmUgdGhhdCB0aGUg
bGF0ZXN0IGNvbm5lY3RvciB0eXBlIGFkZGl0aW9uICJEUEkiIGdldHMKICAgIHByaW50ZWQgY29y
cmVjdGx5LgogICAgCiAgICBTaWduZWQtb2ZmLWJ5OiBTdGVmYW4gQWduZXIgPHN0ZWZhbkBhZ25l
ci5jaD4KICAgIFJldmlld2VkLWJ5OiBFbWlsIFZlbGlrb3YgPGVtaWwudmVsaWtvdkBjb2xsYWJv
cmEuY29tPgoKZGlmZiAtLWdpdCBhL3Rlc3RzL21vZGVwcmludC9NYWtlZmlsZS5hbSBiL3Rlc3Rz
L21vZGVwcmludC9NYWtlZmlsZS5hbQppbmRleCA4NGQ1OTkwYS4uNTY4MTg1ZjAgMTAwNjQ0Ci0t
LSBhL3Rlc3RzL21vZGVwcmludC9NYWtlZmlsZS5hbQorKysgYi90ZXN0cy9tb2RlcHJpbnQvTWFr
ZWZpbGUuYW0KQEAgLTE2LDQgKzE2LDUgQEAgZW5kaWYKIG1vZGVwcmludF9TT1VSQ0VTID0gXAog
CW1vZGVwcmludC5jCiBtb2RlcHJpbnRfTERBREQgPSBcCisJJCh0b3BfYnVpbGRkaXIpL3Rlc3Rz
L3V0aWwvbGlidXRpbC5sYSBcCiAJJCh0b3BfYnVpbGRkaXIpL2xpYmRybS5sYQpkaWZmIC0tZ2l0
IGEvdGVzdHMvbW9kZXByaW50L21lc29uLmJ1aWxkIGIvdGVzdHMvbW9kZXByaW50L21lc29uLmJ1
aWxkCmluZGV4IDg5OGZkMTgxLi4wODAxODA4YSAxMDA2NDQKLS0tIGEvdGVzdHMvbW9kZXByaW50
L21lc29uLmJ1aWxkCisrKyBiL3Rlc3RzL21vZGVwcmludC9tZXNvbi5idWlsZApAQCAtMjMsNyAr
MjMsNyBAQCBtb2RlcHJpbnQgPSBleGVjdXRhYmxlKAogICBmaWxlcygnbW9kZXByaW50LmMnKSwK
ICAgY19hcmdzIDogbGliZHJtX2NfYXJncywKICAgaW5jbHVkZV9kaXJlY3RvcmllcyA6IFtpbmNf
cm9vdCwgaW5jX3Rlc3RzLCBpbmNfZHJtXSwKLSAgbGlua193aXRoIDogbGliZHJtLAorICBsaW5r
X3dpdGggOiBbbGliZHJtLCBsaWJ1dGlsXSwKICAgZGVwZW5kZW5jaWVzIDogZGVwX3RocmVhZHMs
CiAgIGluc3RhbGwgOiB3aXRoX2luc3RhbGxfdGVzdHMsCiApCmRpZmYgLS1naXQgYS90ZXN0cy9t
b2RlcHJpbnQvbW9kZXByaW50LmMgYi90ZXN0cy9tb2RlcHJpbnQvbW9kZXByaW50LmMKaW5kZXgg
YzgxZGQ5MWQuLjFkNjIyNzBmIDEwMDY0NAotLS0gYS90ZXN0cy9tb2RlcHJpbnQvbW9kZXByaW50
LmMKKysrIGIvdGVzdHMvbW9kZXByaW50L21vZGVwcmludC5jCkBAIC00Miw2ICs0Miw3IEBACiAj
aW5jbHVkZSAieGY4NmRybU1vZGUuaCIKIAogI2luY2x1ZGUgInV0aWwvY29tbW9uLmgiCisjaW5j
bHVkZSAidXRpbC9rbXMuaCIKIAogaW50IGN1cnJlbnQ7CiBpbnQgY29ubmVjdG9yczsKQEAgLTU0
LDIwICs1NSw2IEBAIGludCBjcnRjczsKIGludCBmYnM7CiBjaGFyICptb2R1bGVfbmFtZTsKIAot
c3RhdGljIGNvbnN0IGNoYXIqIGdldENvbm5lY3Rpb25UZXh0KGRybU1vZGVDb25uZWN0aW9uIGNv
bm4pCi17Ci0Jc3dpdGNoIChjb25uKSB7Ci0JY2FzZSBEUk1fTU9ERV9DT05ORUNURUQ6Ci0JCXJl
dHVybiAiY29ubmVjdGVkIjsKLQljYXNlIERSTV9NT0RFX0RJU0NPTk5FQ1RFRDoKLQkJcmV0dXJu
ICJkaXNjb25uZWN0ZWQiOwotCWNhc2UgRFJNX01PREVfVU5LTk9XTkNPTk5FQ1RJT046Ci0JZGVm
YXVsdDoKLQkJcmV0dXJuICJ1bmtub3duIjsKLQl9Ci0KLX0KLQogc3RhdGljIGludCBwcmludE1v
ZGUoc3RydWN0IGRybV9tb2RlX21vZGVpbmZvICptb2RlKQogewogCWlmIChmdWxsX21vZGVzKSB7
CkBAIC0xNDEsNDAgKzEyOCwyNCBAQCBzdGF0aWMgaW50IHByaW50UHJvcGVydHkoaW50IGZkLCBk
cm1Nb2RlUmVzUHRyIHJlcywgZHJtTW9kZVByb3BlcnR5UHRyIHByb3BzLCB1aQogCXJldHVybiAw
OwogfQogCi1zdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IG91dHB1dF9uYW1lc1tdID0geyAiTm9u
ZSIsCi0JCQkJCSAgICAgIlZHQSIsCi0JCQkJCSAgICAgIkRWSS1JIiwKLQkJCQkJICAgICAiRFZJ
LUQiLAotCQkJCQkgICAgICJEVkktQSIsCi0JCQkJCSAgICAgIkNvbXBvc2l0ZSIsCi0JCQkJCSAg
ICAgIlNWSURFTyIsCi0JCQkJCSAgICAgIkxWRFMiLAotCQkJCQkgICAgICJDb21wb25lbnQiLAot
CQkJCQkgICAgICJESU4iLAotCQkJCQkgICAgICJEUCIsCi0JCQkJCSAgICAgIkhETUktQSIsCi0J
CQkJCSAgICAgIkhETUktQiIsCi0JCQkJCSAgICAgIlRWIiwKLQkJCQkJICAgICAiZURQIiwKLQkJ
CQkJICAgICAiVmlydHVhbCIsCi0JCQkJCSAgICAgIkRTSSIsCi19OwotCiBzdGF0aWMgaW50IHBy
aW50Q29ubmVjdG9yKGludCBmZCwgZHJtTW9kZVJlc1B0ciByZXMsIGRybU1vZGVDb25uZWN0b3JQ
dHIgY29ubmVjdG9yLCB1aW50MzJfdCBpZCkKIHsKIAlpbnQgaSA9IDA7CiAJc3RydWN0IGRybV9t
b2RlX21vZGVpbmZvICptb2RlID0gTlVMTDsKIAlkcm1Nb2RlUHJvcGVydHlQdHIgcHJvcHM7CisJ
Y29uc3QgY2hhciAqY29ubmVjdG9yX3R5cGVfbmFtZSA9IE5VTEw7CisKKwljb25uZWN0b3JfdHlw
ZV9uYW1lID0gdXRpbF9sb29rdXBfY29ubmVjdG9yX3R5cGVfbmFtZShjb25uZWN0b3ItPmNvbm5l
Y3Rvcl90eXBlKTsKIAotCWlmIChjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlIDwgQVJSQVlfU0la
RShvdXRwdXRfbmFtZXMpKQotCQlwcmludGYoIkNvbm5lY3RvcjogJXMtJWRcbiIsIG91dHB1dF9u
YW1lc1tjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlXSwKKwlpZiAoY29ubmVjdG9yX3R5cGVfbmFt
ZSkKKwkJcHJpbnRmKCJDb25uZWN0b3I6ICVzLSVkXG4iLCBjb25uZWN0b3JfdHlwZV9uYW1lLAog
CQkJY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZV9pZCk7CiAJZWxzZQogCQlwcmludGYoIkNvbm5l
Y3RvcjogJWQtJWRcbiIsIGNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUsCiAJCQljb25uZWN0b3It
PmNvbm5lY3Rvcl90eXBlX2lkKTsKIAlwcmludGYoIlx0aWQgICAgICAgICAgICAgOiAlaVxuIiwg
aWQpOwogCXByaW50ZigiXHRlbmNvZGVyIGlkICAgICA6ICVpXG4iLCBjb25uZWN0b3ItPmVuY29k
ZXJfaWQpOwotCXByaW50ZigiXHRjb25uICAgICAgICAgICA6ICVzXG4iLCBnZXRDb25uZWN0aW9u
VGV4dChjb25uZWN0b3ItPmNvbm5lY3Rpb24pKTsKKwlwcmludGYoIlx0Y29ubiAgICAgICAgICAg
OiAlc1xuIiwgdXRpbF9sb29rdXBfY29ubmVjdG9yX3N0YXR1c19uYW1lKGNvbm5lY3Rvci0+Y29u
bmVjdGlvbikpOwogCXByaW50ZigiXHRzaXplICAgICAgICAgICA6ICVpeCVpIChtbSlcbiIsIGNv
bm5lY3Rvci0+bW1XaWR0aCwgY29ubmVjdG9yLT5tbUhlaWdodCk7CiAJcHJpbnRmKCJcdGNvdW50
X21vZGVzICAgIDogJWlcbiIsIGNvbm5lY3Rvci0+Y291bnRfbW9kZXMpOwogCXByaW50ZigiXHRj
b3VudF9wcm9wcyAgICA6ICVpXG4iLCBjb25uZWN0b3ItPmNvdW50X3Byb3BzKTsKCgotLQpfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpEcmktcGF0Y2hlcyBt
YWlsaW5nIGxpc3QKRHJpLXBhdGNoZXNAbGlzdHMuc291cmNlZm9yZ2UubmV0Cmh0dHBzOi8vbGlz
dHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL2RyaS1wYXRjaGVzCg==