Subject: (help needed) using a dmesg from linux to work out the corrent
To: None <port-i386@netbsd.org>
From: George Michaelson <ggm@apnic.net>
List: port-i386
Date: 08/19/2007 16:42:28
--MP_O6WuD9yA/Unuop1bEutUO/y
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


Attached is a dmesg from kernel.2x00 for an IBM 8363, GEODE based
system. Its the only clue "in" to this box I have.
I have an IBM 2200 aka 8363, a GEODE based 486 diskless system which
can boot from CF. It boots into a runnable linux, with working X11 and
ethernet. I'd love to be in BSDland on it.

Also attached is a GEODE prototype config file, based on the one for a
soekris. I used this as the starting point, to get the basics.

This kernel can be placed in an ext2fs CF card, called by the non-std
bios as /kernel.2x00 and boots (sorta) but then hangs. Before any
diagnostic text alas. And, there is no serial console, and its USB
kb/mouse. So doing any work on it at DDB state is not possible, until
it gets beyond this level of boot :-(

The box doesn't do console text unless its in vesa mode (apparently)
which is the config file tries to bind wscons to vesafb. I hoped that
would flip me into 80x24 mode via VESA. But it just paints the top of
screen as digital noise and then hangs. unpingable.

If anyone can supply clue to take me further, I'd love suggestions
what to do. the dmesg is what I used to prune back the config.

I have tried objdump on the kernel, and on a normal BSD kernel, to see
if I can spot something immediately obvious. I'm a bit worried that I
need to know specific low-memory area to avoid, and/or to stipulate as
a start address (the commented-out TEXTAREA is what I gathered from
the linux kernel but that was a 2.4 edition: 2.6 had only one rwx area
and no start address to speak of)

clue needed..

(all help greatfully received.)

-G
--MP_O6WuD9yA/Unuop1bEutUO/y
Content-Type: application/octet-stream; name=dmesg.2200
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=dmesg.2200

TGludXggdmVyc2lvbiAyLjQuMjEgKHJvb3RAZmlkaTIpIChnY2MgdmVyc2lvbiAyLjk1LjQgMjAw
MTEwMDIgKERlYmlhbiBwcmVyZWxlYXNlKSkgIzMgRGllIE3kciAxIDE3OjAwOjM3IENFVCAyMDA1
CkJJT1MtcHJvdmlkZWQgcGh5c2ljYWwgUkFNIG1hcDoKIEJJT1MtZTgwMTogMDAwMDAwMDAwMDAw
MDAwMCAtIDAwMDAwMDAwMDAwOWYwMDAgKHVzYWJsZSkKIEJJT1MtZTgwMTogMDAwMDAwMDAwMDEw
MDAwMCAtIDAwMDAwMDAwMTFjZjAwMDAgKHVzYWJsZSkKMjg0TUIgTE9XTUVNIGF2YWlsYWJsZS4K
T24gbm9kZSAwIHRvdGFscGFnZXM6IDcyOTQ0CnpvbmUoMCk6IDQwOTYgcGFnZXMuCnpvbmUoMSk6
IDY4ODQ4IHBhZ2VzLgp6b25lKDIpOiAwIHBhZ2VzLgpLZXJuZWwgY29tbWFuZCBsaW5lOiBybyBy
b290PS9kZXYvaGRhMSBWPTEwMjR4NzY4IEQ9MTYgaXA9MTkyLjE2OC4xLjc6MC4wLjAuMDoxOTIu
MTY4LjEuMToyNTUuMjU1LjI1NS4wOmxvY2FsaG9zdDpldGgwIGxvYWRfcmFtZGlzaz0xIG4xPTAu
MC4wLjAgbjI9MC4wLjAuMCBwZj0yIHZnYT00Ck5vIGxvY2FsIEFQSUMgcHJlc2VudCBvciBoYXJk
d2FyZSBkaXNhYmxlZApJbml0aWFsaXppbmcgQ1BVIzAKV29ya2luZyBhcm91bmQgQ3lyaXggTWVk
aWFHWCB2aXJ0dWFsIERNQSBidWdzLgpEZXRlY3RlZCAyMzMuODY1IE1IeiBwcm9jZXNzb3IuCkNv
bnNvbGU6IGNvbG91ciBkdW1teSBkZXZpY2UgODB4MjUKQ2FsaWJyYXRpbmcgZGVsYXkgbG9vcC4u
LiA0NjYuOTQgQm9nb01JUFMKTWVtb3J5OiAyODU4MzZrLzI5MTc3NmsgYXZhaWxhYmxlICgxMjI2
ayBrZXJuZWwgY29kZSwgNTU1MmsgcmVzZXJ2ZWQsIDUwMmsgZGF0YSwgMTA0ayBpbml0LCAwayBo
aWdobWVtKQpDaGVja2luZyBpZiB0aGlzIHByb2Nlc3NvciBob25vdXJzIHRoZSBXUCBiaXQgZXZl
biBpbiBzdXBlcnZpc29yIG1vZGUuLi4gT2suCkRlbnRyeSBjYWNoZSBoYXNoIHRhYmxlIGVudHJp
ZXM6IDY1NTM2IChvcmRlcjogNywgNTI0Mjg4IGJ5dGVzKQpJbm9kZSBjYWNoZSBoYXNoIHRhYmxl
IGVudHJpZXM6IDMyNzY4IChvcmRlcjogNiwgMjYyMTQ0IGJ5dGVzKQpNb3VudCBjYWNoZSBoYXNo
IHRhYmxlIGVudHJpZXM6IDUxMiAob3JkZXI6IDAsIDQwOTYgYnl0ZXMpCkJ1ZmZlci1jYWNoZSBo
YXNoIHRhYmxlIGVudHJpZXM6IDE2Mzg0IChvcmRlcjogNCwgNjU1MzYgYnl0ZXMpClBhZ2UtY2Fj
aGUgaGFzaCB0YWJsZSBlbnRyaWVzOiAxMzEwNzIgKG9yZGVyOiA3LCA1MjQyODggYnl0ZXMpCldv
cmtpbmcgYXJvdW5kIEN5cml4IE1lZGlhR1ggdmlydHVhbCBETUEgYnVncy4KQ1BVOiAgICAgQWZ0
ZXIgZ2VuZXJpYywgY2FwczogMDA4MDgxMzEgMDA4MTgxMzEgMDAwMDAwMDAgMDAwMDAwMDEKQ1BV
OiAgICAgICAgICAgICBDb21tb24gY2FwczogMDA4MDgxMzEgMDA4MTgxMzEgMDAwMDAwMDAgMDAw
MDAwMDEKQ1BVOiBDeXJpeCBNZWRpYUdYdG0gTU1YdG0gRW5oYW5jZWQgc3RlcHBpbmcgMDQKQ2hl
Y2tpbmcgJ2hsdCcgaW5zdHJ1Y3Rpb24uLi4gT0suClBPU0lYIGNvbmZvcm1hbmNlIHRlc3Rpbmcg
YnkgVU5JRklYCm10cnI6IHYxLjQwICgyMDAxMDMyNykgUmljaGFyZCBHb29jaCAocmdvb2NoQGF0
bmYuY3Npcm8uYXUpCm10cnI6IGRldGVjdGVkIG10cnIgdHlwZTogbm9uZQpQQ0k6IFVzaW5nIGNv
bmZpZ3VyYXRpb24gdHlwZSAxClBDSTogUHJvYmluZyBQQ0kgaGFyZHdhcmUKUENJOiBGaXh1cCBm
b3IgTWVkaWFHWC9HZW9kZSBTbGF2ZSBEaXNjb25uZWN0IEJvdW5kYXJ5ICgweDQxPTB4OWMpCmlz
YXBucDogU2Nhbm5pbmcgZm9yIFBuUCBjYXJkcy4uLgppc2FwbnA6IE5vIFBsdWcgJiBQbGF5IGRl
dmljZSBmb3VuZApMaW51eCBORVQ0LjAgZm9yIExpbnV4IDIuNApCYXNlZCB1cG9uIFN3YW5zZWEg
VW5pdmVyc2l0eSBDb21wdXRlciBTb2NpZXR5IE5FVDMuMDM5CkluaXRpYWxpemluZyBSVCBuZXRs
aW5rIHNvY2tldAphcG06IEJJT1Mgbm90IGZvdW5kLgpTdGFydGluZyBrc3dhcGQKSm91cm5hbGxl
ZCBCbG9jayBEZXZpY2UgZHJpdmVyIGxvYWRlZApkZXZmczogdjEuMTJjICgyMDAyMDgxOCkgUmlj
aGFyZCBHb29jaCAocmdvb2NoQGF0bmYuY3Npcm8uYXUpCmRldmZzOiBib290X29wdGlvbnM6IDB4
MQp2ZXNhZmI6IGZyYW1lYnVmZmVyIGF0IDB4NDA4MDAwMDAsIG1hcHBlZCB0byAweGQyODBkMDAw
LCBzaXplIDYxNDRrCnZlc2FmYjogbW9kZSBpcyAxMDI0eDc2OHg4LCBsaW5lbGVuZ3RoPTEwMjQs
IHBhZ2VzPTcKdmVzYWZiOiBzY3JvbGxpbmc6IHJlZHJhdwpDb25zb2xlOiBzd2l0Y2hpbmcgdG8g
Y29sb3VyIGZyYW1lIGJ1ZmZlciBkZXZpY2UgMTI4eDQ4CmZiMDogVkVTQSBWR0EgZnJhbWUgYnVm
ZmVyIGRldmljZQpwdHk6IDI1NiBVbml4OTggcHR5cyBjb25maWd1cmVkClNlcmlhbCBkcml2ZXIg
dmVyc2lvbiA1LjA1YyAoMjAwMS0wNy0wOCkgd2l0aCBNQU5ZX1BPUlRTIFNIQVJFX0lSUSBTRVJJ
QUxfUENJIElTQVBOUCBlbmFibGVkCmxvb3A6IGxvYWRlZCAobWF4IDggZGV2aWNlcykKc2lzOTAw
LmM6IHYxLjA4LjA2IDkvMjQvMjAwMgpQQ0k6IEVuYWJsaW5nIGRldmljZSAwMDowZS4wICgwMDA1
IC0+IDAwMDcpClBDSTogU2V0dGluZyBsYXRlbmN5IHRpbWVyIG9mIGRldmljZSAwMDowZS4wIHRv
IDY0CmV0aDA6IFNpUyA5MDAgSW50ZXJuYWwgTUlJIFBIWSB0cmFuc2NlaXZlciBmb3VuZCBhdCBh
ZGRyZXNzIDEuCmV0aDA6IFVzaW5nIHRyYW5zY2VpdmVyIGZvdW5kIGF0IGFkZHJlc3MgMSBhcyBk
ZWZhdWx0CmV0aDA6IFNpUyA5MDAgUENJIEZhc3QgRXRoZXJuZXQgYXQgMHhjMDAwLCBJUlEgMTAs
IDAwOjAyOjU1Ojc1OjRlOmY1LgpMaW51eCBhZ3BnYXJ0IGludGVyZmFjZSB2MC45OSAoYykgSmVm
ZiBIYXJ0bWFubgphZ3BnYXJ0OiBNYXhpbXVtIG1haW4gbWVtb3J5IHRvIHVzZSBmb3IgYWdwIG1l
bW9yeTogMjI5TQphZ3BnYXJ0OiBubyBzdXBwb3J0ZWQgZGV2aWNlcyBmb3VuZC4KVW5pZm9ybSBN
dWx0aS1QbGF0Zm9ybSBFLUlERSBkcml2ZXIgUmV2aXNpb246IDcuMDBiZXRhNC0yLjQKaWRlOiBB
c3N1bWluZyAzM01IeiBzeXN0ZW0gYnVzIHNwZWVkIGZvciBQSU8gbW9kZXM7IG92ZXJyaWRlIHdp
dGggaWRlYnVzPXh4CmhkYjogQy9IL1M9MC8wLzAgZnJvbSBCSU9TIGlnbm9yZWQKaGRhOiBUT1NI
SUJBIFRITkNGMTI4TU1HLCBDRkEgRElTSyBkcml2ZQppZGUwIGF0IDB4MWYwLTB4MWY3LDB4M2Y2
IG9uIGlycSAxNApoZGE6IGF0dGFjaGVkIGlkZS1kaXNrIGRyaXZlci4KaGRhOiB0YXNrX25vX2Rh
dGFfaW50cjogc3RhdHVzPTB4NTEgeyBEcml2ZVJlYWR5IFNlZWtDb21wbGV0ZSBFcnJvciB9Cmhk
YTogdGFza19ub19kYXRhX2ludHI6IGVycm9yPTB4MDQgeyBEcml2ZVN0YXR1c0Vycm9yIH0KaGRh
OiAyNTAzNjggc2VjdG9ycyAoMTI4IE1CKSB3LzJLaUIgQ2FjaGUsIENIUz0xOTU2LzQvMzIKUGFy
dGl0aW9uIGNoZWNrOgogL2Rldi9pZGUvaG9zdDAvYnVzMC90YXJnZXQwL2x1bjA6IHAxCnVzYi5j
OiByZWdpc3RlcmVkIG5ldyBkcml2ZXIgdXNiZGV2ZnMKdXNiLmM6IHJlZ2lzdGVyZWQgbmV3IGRy
aXZlciBodWIKaG9zdC91c2ItdWhjaS5jOiAkUmV2aXNpb246IDEuMjc1ICQgdGltZSAxNzowMDo0
MyBNYXIgIDEgMjAwNQpob3N0L3VzYi11aGNpLmM6IEhpZ2ggYmFuZHdpZHRoIG1vZGUgZW5hYmxl
ZApob3N0L3VzYi11aGNpLmM6IHYxLjI3NTpVU0IgVW5pdmVyc2FsIEhvc3QgQ29udHJvbGxlciBJ
bnRlcmZhY2UgZHJpdmVyClBDSTogU2V0dGluZyBsYXRlbmN5IHRpbWVyIG9mIGRldmljZSAwMDox
My4wIHRvIDY0Cmhvc3QvdXNiLW9oY2kuYzogVVNCIE9IQ0kgYXQgbWVtYmFzZSAweGQyZTEwMDAw
LCBJUlEgMTEKaG9zdC91c2Itb2hjaS5jOiB1c2ItMDA6MTMuMCwgQ29tcGFxIENvbXB1dGVyIENv
cnBvcmF0aW9uIFpGTWljcm8gQ2hpcHNldCBVU0IKdXNiLmM6IG5ldyBVU0IgYnVzIHJlZ2lzdGVy
ZWQsIGFzc2lnbmVkIGJ1cyBudW1iZXIgMQpodWIuYzogVVNCIGh1YiBmb3VuZApodWIuYzogMiBw
b3J0cyBkZXRlY3RlZAp1c2IuYzogcmVnaXN0ZXJlZCBuZXcgZHJpdmVyIGhpZApoaWQtY29yZS5j
OiB2MS44LjEgQW5kcmVhcyBHYWwsIFZvanRlY2ggUGF2bGlrIDx2b2p0ZWNoQHN1c2UuY3o+Cmhp
ZC1jb3JlLmM6IFVTQiBISUQgc3VwcG9ydCBkcml2ZXJzCnVzYi5jOiByZWdpc3RlcmVkIG5ldyBk
cml2ZXIgc2VyaWFsCnVzYnNlcmlhbC5jOiBVU0IgU2VyaWFsIHN1cHBvcnQgcmVnaXN0ZXJlZCBm
b3IgR2VuZXJpYwp1c2JzZXJpYWwuYzogVVNCIFNlcmlhbCBEcml2ZXIgY29yZSB2MS40CnVzYnNl
cmlhbC5jOiBVU0IgU2VyaWFsIHN1cHBvcnQgcmVnaXN0ZXJlZCBmb3IgS2V5c3BhbiBQREEKdXNi
c2VyaWFsLmM6IFVTQiBTZXJpYWwgc3VwcG9ydCByZWdpc3RlcmVkIGZvciBLZXlzcGFuIFBEQSAt
IChwcmVyZW51bWVyYXRpb24pCmtleXNwYW5fcGRhLmM6IFVTQiBLZXlzcGFuIFBEQSBDb252ZXJ0
ZXIgZHJpdmVyIHYxLjEKdXNic2VyaWFsLmM6IFVTQiBTZXJpYWwgc3VwcG9ydCByZWdpc3RlcmVk
IGZvciBCZWxraW4gLyBQZXJhY29tIC8gR29IdWJzIFVTQiBTZXJpYWwgQWRhcHRlcgpiZWxraW5f
c2EuYzogVVNCIEJlbGtpbiBTZXJpYWwgY29udmVydGVyIGRyaXZlciB2MS4yCm1pY2U6IFBTLzIg
bW91c2UgZGV2aWNlIGNvbW1vbiBmb3IgYWxsIG1pY2UKTkVUNDogTGludXggVENQL0lQIDEuMCBm
b3IgTkVUNC4wCklQIFByb3RvY29sczogSUNNUCwgVURQLCBUQ1AKSVA6IHJvdXRpbmcgY2FjaGUg
aGFzaCB0YWJsZSBvZiAyMDQ4IGJ1Y2tldHMsIDE2S2J5dGVzClRDUDogSGFzaCB0YWJsZXMgY29u
ZmlndXJlZCAoZXN0YWJsaXNoZWQgMzI3NjggYmluZCAzMjc2OCkKSVAtQ29uZmlnOiBDb21wbGV0
ZToKICAgICAgZGV2aWNlPWV0aDAsIGFkZHI9MTkyLjE2OC4xLjcsIG1hc2s9MjU1LjI1NS4yNTUu
MCwgZ3c9MTkyLjE2OC4xLjEsCiAgICAgaG9zdD1sb2NhbGhvc3QsIGRvbWFpbj0sIG5pcy1kb21h
aW49KG5vbmUpLAogICAgIGJvb3RzZXJ2ZXI9MjU1LjI1NS4yNTUuMjU1LCByb290c2VydmVyPTI1
NS4yNTUuMjU1LjI1NSwgcm9vdHBhdGg9Ck5FVDQ6IFVuaXggZG9tYWluIHNvY2tldHMgMS4wL1NN
UCBmb3IgTGludXggTkVUNC4wLgogL2Rldi9pZGUvaG9zdDAvYnVzMC90YXJnZXQwL2x1bjA6IHAx
CiAvZGV2L2lkZS9ob3N0MC9idXMwL3RhcmdldDAvbHVuMDogcDEKIC9kZXYvaWRlL2hvc3QwL2J1
czAvdGFyZ2V0MC9sdW4wOiBwMQogL2Rldi9pZGUvaG9zdDAvYnVzMC90YXJnZXQwL2x1bjA6IHAx
ClZGUzogTW91bnRlZCByb290IChleHQyIGZpbGVzeXN0ZW0pIHJlYWRvbmx5LgpNb3VudGVkIGRl
dmZzIG9uIC9kZXYKRnJlZWluZyB1bnVzZWQga2VybmVsIG1lbW9yeTogMTA0ayBmcmVlZApodWIu
YzogbmV3IFVTQiBkZXZpY2UgMDA6MTMuMC0xLCBhc3NpZ25lZCBhZGRyZXNzIDIKRVhUMi1mcyB3
YXJuaW5nOiBtb3VudGluZyB1bmNoZWNrZWQgZnMsIHJ1bm5pbmcgZTJmc2NrIGlzIHJlY29tbWVu
ZGVkCmlucHV0MDogVVNCIEhJRCB2MS4wMCBLZXlib2FyZCBbMDRiMzozMDAxXSBvbiB1c2IxOjIu
MAppbnB1dDE6IFVTQiBISUQgdjEuMDAgTW91c2UgWzA0YjM6MzAwMV0gb24gdXNiMToyLjEKZXRo
MDogTWVkaWEgTGluayBPbiAxMDBtYnBzIGZ1bGwtZHVwbGV4IApSQU1ESVNLIGRyaXZlciBpbml0
aWFsaXplZDogMTYgUkFNIGRpc2tzIG9mIDUwMDAwSyBzaXplIDEwMjQgYmxvY2tzaXplCmV4dDM6
IE5vIGpvdXJuYWwgb24gZmlsZXN5c3RlbSBvbiByYW1kaXNrKDEsMSkKU291bmRibGFzdGVyIGF1
ZGlvIGRyaXZlciBDb3B5cmlnaHQgKEMpIGJ5IEhhbm51IFNhdm9sYWluZW4gMTk5My0xOTk2CnNi
OiBObyBJU0FQblAgY2FyZHMgZm91bmQsIHRyeWluZyBzdGFuZGFyZCBvbmVzLi4uClNCIDQuMTIg
ZGV0ZWN0ZWQgT0sgKDIyMCkKVkZTOiBidXN5IGlub2RlcyBvbiBjaGFuZ2VkIG1lZGlhLgpWRlM6
IGJ1c3kgaW5vZGVzIG9uIGNoYW5nZWQgbWVkaWEuClZGUzogRGlzayBjaGFuZ2UgZGV0ZWN0ZWQg
b24gZGV2aWNlIDAzOjAwCiAvZGV2L2lkZS9ob3N0MC9idXMwL3RhcmdldDAvbHVuMDogcDEK

--MP_O6WuD9yA/Unuop1bEutUO/y
Content-Type: application/octet-stream; name=GEODE
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=GEODE

CmluY2x1ZGUgCSJhcmNoL2kzODYvY29uZi9zdGQuaTM4NiIKCm9wdGlvbnMgCUlOQ0xVREVfQ09O
RklHX0ZJTEUJIyBlbWJlZCBjb25maWcgZmlsZSBpbiBrZXJuZWwgYmluYXJ5CgojaWRlbnQgCQki
SUJNMjIwMC0kUmV2aXNpb246IDEuODQwICQiCgptYXh1c2VycwkzMgkJIyBlc3RpbWF0ZWQgbnVt
YmVyIG9mIHVzZXJzCgojIENQVSBzdXBwb3J0LiAgQXQgbGVhc3Qgb25lIGlzIFJFUVVJUkVELgpv
cHRpb25zIAlJNDg2X0NQVQoKbWFrZW9wdGlvbnMJQ1BVRkxBR1M9Ii1tYXJjaD1pNDg2ICAtbXR1
bmU9aTQ4NiIKbWFrZW9wdGlvbnMgICAgIENPUFRTPSItT3MiCiNtYWtlb3B0aW9ucwlURVhUQURE
Uj0iMHhjMDEwNTAwMCIKCm9wdGlvbnMgCU1VTFRJQk9PVAkjIE11bHRpYm9vdCBzdXBwb3J0IChz
ZWUgbXVsdGlib290KDgpKQoKIyBtZW1vcnkgaWYgdGhlIGV4dGVuZGVkIEJJT1MgZGF0YSBhcmVh
IGlzIGxvY2F0ZWQgYXQgdGhlIHRvcCBvZiBiYXNlIG1lbW9yeQojIChhcyBpcyB0aGUgY2FzZSBv
biBtb3N0IHJlY2VudCBzeXN0ZW1zKS4KI29wdGlvbnMgCVJFQUxCQVNFTUVNPTYzOQkJIyBzaXpl
IG9mIGJhc2UgbWVtb3J5IChpbiBLQikKI29wdGlvbnMgCVJFQUxFWFRNRU09MTUzNjAJIyBzaXpl
IG9mIGV4dGVuZGVkIG1lbW9yeSAoaW4gS0IpCgojIFN0YW5kYXJkIHN5c3RlbSBvcHRpb25zCm9w
dGlvbnMgCUlOU0VDVVJFCSMgZGlzYWJsZSBrZXJuZWwgc2VjdXJpdHkgbGV2ZWxzIC0gWCBuZWVk
cyB0aGlzCm9wdGlvbnMgCVJUQ19PRkZTRVQ9MAkjIGhhcmR3YXJlIGNsb2NrIGlzIHRoaXMgbWFu
eSBtaW5zLiB3ZXN0IG9mIEdNVAoKb3B0aW9ucyAJTlRQCQkjIE5UUCBwaGFzZS9mcmVxdWVuY3kg
bG9ja2VkIGxvb3AKI29wdGlvbnMgCU5PX1RTQ19USU1FCSMgRG9uJ3QgdXNlIFRTQyBtaWNyb3Rp
bWUsIGV2ZW4gaWYgYXZhaWxhYmxlLgoJCQkJIyBJbXByb3ZlcyB0aW1lIGJlaGF2aW9yIHVuZGVy
IFZNd2FyZS4Kb3B0aW9ucyAJS1RSQUNFCQkjIHN5c3RlbSBjYWxsIHRyYWNpbmcgdmlhIGt0cmFj
ZSgxKQoKb3B0aW9ucyAJU1lTVk1TRwkJIyBTeXN0ZW0gVi1saWtlIG1lc3NhZ2UgcXVldWVzCm9w
dGlvbnMgCVNZU1ZTRU0JCSMgU3lzdGVtIFYtbGlrZSBzZW1hcGhvcmVzCiNvcHRpb25zIAlTRU1N
Tkk9MTAJIyBudW1iZXIgb2Ygc2VtYXBob3JlIGlkZW50aWZpZXJzCiNvcHRpb25zIAlTRU1NTlM9
NjAJIyBudW1iZXIgb2Ygc2VtYXBob3JlcyBpbiBzeXN0ZW0KI29wdGlvbnMgCVNFTVVNRT0xMAkj
IG1heCBudW1iZXIgb2YgdW5kbyBlbnRyaWVzIHBlciBwcm9jZXNzCiNvcHRpb25zIAlTRU1NTlU9
MzAJIyBudW1iZXIgb2YgdW5kbyBzdHJ1Y3R1cmVzIGluIHN5c3RlbQpvcHRpb25zIAlTWVNWU0hN
CQkjIFN5c3RlbSBWLWxpa2UgbWVtb3J5IHNoYXJpbmcKI29wdGlvbnMgCVNITU1BWFBHUz0yMDQ4
CSMgMjA0OCBwYWdlcyBpcyB0aGUgZGVmYXVsdAojb3B0aW9ucyAJUDEwMDNfMUJfU0VNQVBIT1JF
CSMgcDEwMDMuMWIgc2VtYXBob3JlIHN1cHBvcnQKCm9wdGlvbnMgCUxLTQkJIyBsb2FkYWJsZSBr
ZXJuZWwgbW9kdWxlcwoKb3B0aW9ucyAJVVNFUkNPTkYJIyB1c2VyY29uZig0KSBzdXBwb3J0CiNv
cHRpb25zIAlQSVBFX1NPQ0tFVFBBSVIJIyBzbWFsbGVyLCBidXQgc2xvd2VyIHBpcGUoMikKI29w
dGlvbnMgCVNZU0NUTF9JTkNMVURFX0RFU0NSCSMgSW5jbHVkZSBzeXNjdGwgZGVzY3JpcHRpb25z
IGluIGtlcm5lbAoKIyBEaWFnbm9zdGljL2RlYnVnZ2luZyBzdXBwb3J0IG9wdGlvbnMKI29wdGlv
bnMgCURJQUdOT1NUSUMJIyBleHBlbnNpdmUga2VybmVsIGNvbnNpc3RlbmN5IGNoZWNrcwojb3B0
aW9ucyAJREVCVUcJCSMgZXhwZW5zaXZlIGRlYnVnZ2luZyBjaGVja3Mvc3VwcG9ydAojb3B0aW9u
cyAJS01FTVNUQVRTCSMga2VybmVsIG1lbW9yeSBzdGF0aXN0aWNzICh2bXN0YXQgLW0pCm9wdGlv
bnMgCUREQgkJIyBpbi1rZXJuZWwgZGVidWdnZXIKI29wdGlvbnMgCUREQl9PTlBBTklDPTEJIyBz
ZWUgYWxzbyBzeXNjdGwoOCk6IGBkZGIub25wYW5pYycKb3B0aW9ucyAJRERCX0hJU1RPUllfU0la
RT01MTIJIyBlbmFibGUgaGlzdG9yeSBlZGl0aW5nIGluIEREQgojb3B0aW9ucyAJS0dEQgkJIyBy
ZW1vdGUgZGVidWdnZXIKI29wdGlvbnMgCUtHREJfREVWTkFNRT0iXCJjb21cIiIsS0dEQl9ERVZB
RERSPTB4M2Y4LEtHREJfREVWUkFURT05NjAwCiNtYWtlb3B0aW9ucwlERUJVRz0iLWciCSMgY29t
cGlsZSBmdWxsIHN5bWJvbCB0YWJsZQoKIyBDb21wYXRpYmlsaXR5IG9wdGlvbnMKb3B0aW9ucyAJ
Q09NUEFUX05PTUlECSMgTmV0QlNEIDAuOCwgMzg2QlNELCBhbmQgQlNESQpvcHRpb25zIAlDT01Q
QVRfMDkJIyBOZXRCU0QgMC45Cm9wdGlvbnMgCUNPTVBBVF8xMAkjIE5ldEJTRCAxLjAKb3B0aW9u
cyAJQ09NUEFUXzExCSMgTmV0QlNEIDEuMQpvcHRpb25zIAlDT01QQVRfMTIJIyBOZXRCU0QgMS4y
LCAzODZCU0QsIGFuZCBCU0RJCm9wdGlvbnMgCUNPTVBBVF8xMwkjIE5ldEJTRCAxLjMsIDM4NkJT
RCwgYW5kIEJTREkKb3B0aW9ucyAJQ09NUEFUXzE0CSMgTmV0QlNEIDEuNApvcHRpb25zIAlDT01Q
QVRfMTUJIyBOZXRCU0QgMS41Cm9wdGlvbnMgCUNPTVBBVF8xNgkjIE5ldEJTRCAxLjYKb3B0aW9u
cyAJQ09NUEFUXzIwCSMgTmV0QlNEIDIuMApvcHRpb25zIAlDT01QQVRfMzAJIyBOZXRCU0QgMy4w
Cm9wdGlvbnMgCUNPTVBBVF80MAkjIE5ldEJTRCA0LjAKb3B0aW9ucyAJQ09NUEFUXzQzCSMgNC4z
QlNELCAzODZCU0QsIGFuZCBCU0RJCiNvcHRpb25zIAlDT01QQVRfMzg2QlNEX01CUlBBUlQgIyBy
ZWNvZ25pemUgb2xkIHBhcnRpdGlvbiBJRAojb3B0aW9ucyAJVENQX0NPTVBBVF80MgkjIDQuMkJT
RCBUQ1AvSVAgYnVnIGNvbXBhdC4gTm90IHJlY29tbWVuZGVkLgoKI29wdGlvbnMgCUNPTVBBVF9T
VlI0CSMgYmluYXJ5IGNvbXBhdGliaWxpdHkgd2l0aCBTVlI0CiNvcHRpb25zIAlDT01QQVRfSUJD
UzIJIyBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIFNDTyBhbmQgSVNDCiNvcHRpb25zIAlDT01Q
QVRfTElOVVgJIyBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIExpbnV4CiNvcHRpb25zIAlDT01Q
QVRfRlJFRUJTRAkjIGJpbmFyeSBjb21wYXRpYmlsaXR5IHdpdGggRnJlZUJTRAojb3B0aW9ucyAJ
Q09NUEFUX01BQ0gJIyBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIE1hY2ggYmluYXJpZXMKI29w
dGlvbnMgCUNPTVBBVF9EQVJXSU4JIyBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIERhcndpbiBi
aW5hcmllcwojb3B0aW9ucyAJRVhFQ19NQUNITwkjIGV4ZWMgTUFDSC1PIGJpbmFyaWVzCiNvcHRp
b25zIAlDT01QQVRfTkRJUwkjIE5ESVMgbmV0d29yayBkcml2ZXIKI29wdGlvbnMgCUNPTVBBVF9Q
RUNPRkYJIyBrZXJuZWwgc3VwcG9ydCB0byBydW4gV2luMzIgYXBwcwpvcHRpb25zIAlDT01QQVRf
QlNEUFRZCSMgL2Rldi9bcHRddHk/PyBwdHlzLgoKIyBGaWxlIHN5c3RlbXMKZmlsZS1zeXN0ZW0g
CUZGUwkJIyBVRlMKZmlsZS1zeXN0ZW0gCUVYVDJGUwkJIyBzZWNvbmQgZXh0ZW5kZWQgZmlsZSBz
eXN0ZW0gKGxpbnV4KQpmaWxlLXN5c3RlbSAJTEZTCQkjIGxvZy1zdHJ1Y3R1cmVkIGZpbGUgc3lz
dGVtCmZpbGUtc3lzdGVtIAlNRlMJCSMgbWVtb3J5IGZpbGUgc3lzdGVtCiNmaWxlLXN5c3RlbSAJ
TkZTCQkjIE5ldHdvcmsgRmlsZSBTeXN0ZW0gY2xpZW50CiNmaWxlLXN5c3RlbSAJTlRGUwkJIyBX
aW5kb3dzL05UIGZpbGUgc3lzdGVtIChleHBlcmltZW50YWwpCmZpbGUtc3lzdGVtIAlDRDk2NjAJ
CSMgSVNPIDk2NjAgKyBSb2NrIFJpZGdlIGZpbGUgc3lzdGVtCmZpbGUtc3lzdGVtIAlNU0RPU0ZT
CQkjIE1TLURPUyBmaWxlIHN5c3RlbQpmaWxlLXN5c3RlbSAJRkRFU0MJCSMgL2Rldi9mZApmaWxl
LXN5c3RlbSAJS0VSTkZTCQkjIC9rZXJuCmZpbGUtc3lzdGVtIAlOVUxMRlMJCSMgbG9vcGJhY2sg
ZmlsZSBzeXN0ZW0KZmlsZS1zeXN0ZW0gCU9WRVJMQVkJCSMgb3ZlcmxheSBmaWxlIHN5c3RlbQoj
ZmlsZS1zeXN0ZW0gCVBPUlRBTAkJIyBwb3J0YWwgZmlsZXN5c3RlbSAoc3RpbGwgZXhwZXJpbWVu
dGFsKQpmaWxlLXN5c3RlbSAJUFJPQ0ZTCQkjIC9wcm9jCmZpbGUtc3lzdGVtIAlVTUFQRlMJCSMg
TlVMTEZTICsgdWlkIGFuZCBnaWQgcmVtYXBwaW5nCmZpbGUtc3lzdGVtIAlVTklPTgkJIyB1bmlv
biBmaWxlIHN5c3RlbQojZmlsZS1zeXN0ZW0JQ09EQQkJIyBDb2RhIEZpbGUgU3lzdGVtOyBhbHNv
IG5lZWRzIHZjb2RhIChiZWxvdykKI2ZpbGUtc3lzdGVtCVNNQkZTCQkjIGV4cGVyaW1lbnRhbCAt
IENJRlM7IGFsc28gbmVlZHMgbnNtYiAoYmVsb3cpCmZpbGUtc3lzdGVtCVBUWUZTCQkjIC9kZXYv
cHRtIHN1cHBvcnQKZmlsZS1zeXN0ZW0JVE1QRlMJCSMgRWZmaWNpZW50IG1lbW9yeSBmaWxlLXN5
c3RlbQojZmlsZS1zeXN0ZW0JVURGCQkjIGV4cGVyaW1lbnRhbCAtIE9TVEEgVURGIENEL0RWRCBm
aWxlLXN5c3RlbQojZmlsZS1zeXN0ZW0JSEZTCQkjIGV4cGVyaW1lbnRhbCAtIEFwcGxlIEhGUysg
KHJlYWQtb25seSkKCiMgRmlsZSBzeXN0ZW0gb3B0aW9ucwojb3B0aW9ucyAJUVVPVEEJCSMgVUZT
IHF1b3Rhcwojb3B0aW9ucyAJRkZTX0VJCQkjIEZGUyBFbmRpYW4gSW5kZXBlbmRlbnQgc3VwcG9y
dApvcHRpb25zIAlTT0ZUREVQCQkjIEZGUyBzb2Z0IHVwZGF0ZXMgc3VwcG9ydC4KIyBOb3RlIHRo
YXQgVUZTX0RJUkhBU0ggaXMgc3VzcGVjdGVkIG9mIGNhdXNpbmcga2VybmVsIG1lbW9yeSBjb3Jy
dXB0aW9uLgojIEl0IGlzIG5vdCByZWNvbW1lbmRlZCBmb3IgZ2VuZXJhbCB1c2UuCiNvcHRpb25z
IAlVRlNfRElSSEFTSAkjIFVGUyBMYXJnZSBEaXJlY3RvcnkgSGFzaGluZyAtIEV4cGVyaW1lbnRh
bAojb3B0aW9ucyAJTkZTU0VSVkVSCSMgTmV0d29yayBGaWxlIFN5c3RlbSBzZXJ2ZXIKI29wdGlv
bnMgCUZGU19OT19TTkFQU0hPVAkjIE5vIEZGUyBzbmFwc2hvdCBzdXBwb3J0Cm9wdGlvbnMgCUVY
VDJGU19TWVNURU1fRkxBR1MgIyBtYWtlcyBleHQyZnMgZmlsZSBmbGFncyAoYXBwZW5kIGFuZAoJ
CQkJIyBpbW11dGFibGUpIGJlaGF2ZSBhcyBzeXN0ZW0gZmxhZ3MuCgojIE5ldHdvcmtpbmcgb3B0
aW9ucwojb3B0aW9ucyAJR0FURVdBWQkJIyBwYWNrZXQgZm9yd2FyZGluZwpvcHRpb25zIAlJTkVU
CQkjIElQICsgSUNNUCArIFRDUCArIFVEUApvcHRpb25zIAlJTkVUNgkJIyBJUFY2CiNvcHRpb25z
IAlJUFNFQwkJIyBJUCBzZWN1cml0eQojb3B0aW9ucyAJSVBTRUNfRVNQCSMgSVAgc2VjdXJpdHkg
KGVuY3J5cHRpb24gcGFydDsgZGVmaW5lIHcvSVBTRUMpCiNvcHRpb25zIAlJUFNFQ19OQVRfVAkj
IElQc2VjIE5BVCB0cmF2ZXJzYWwgKE5BVC1UKQojb3B0aW9ucyAJSVBTRUNfREVCVUcJIyBkZWJ1
ZyBmb3IgSVAgc2VjdXJpdHkKI29wdGlvbnMgCU1ST1VUSU5HCSMgSVAgbXVsdGljYXN0IHJvdXRp
bmcKI29wdGlvbnMgCVBJTQkJIyBQcm90b2NvbCBJbmRlcGVuZGVudCBNdWx0aWNhc3QKI29wdGlv
bnMgCUlTTyxUUElQCSMgT1NJCiNvcHRpb25zIAlFT04JCSMgT1NJIHR1bm5lbGluZyBvdmVyIElQ
CiNvcHRpb25zIAlORVRBVEFMSwkjIEFwcGxlVGFsayBuZXR3b3JraW5nIHByb3RvY29scwojb3B0
aW9ucyAJUFBQX0JTRENPTVAJIyBCU0QtQ29tcHJlc3MgY29tcHJlc3Npb24gc3VwcG9ydCBmb3Ig
UFBQCiNvcHRpb25zIAlQUFBfREVGTEFURQkjIERlZmxhdGUgY29tcHJlc3Npb24gc3VwcG9ydCBm
b3IgUFBQCiNvcHRpb25zIAlQUFBfRklMVEVSCSMgQWN0aXZlIGZpbHRlciBzdXBwb3J0IGZvciBQ
UFAgKHJlcXVpcmVzIGJwZikKI29wdGlvbnMgCVBGSUxfSE9PS1MJIyBwZmlsKDkpIHBhY2tldCBm
aWx0ZXIgaG9va3MKI29wdGlvbnMgCUlQRklMVEVSX0xPRwkjIGlwbW9uKDgpIGxvZyBzdXBwb3J0
CiNvcHRpb25zIAlJUEZJTFRFUl9MT09LVVAJIyBpcHBvb2woOCkgc3VwcG9ydAojb3B0aW9ucyAJ
SVBGSUxURVJfREVGQVVMVF9CTE9DSwkjIGJsb2NrIGFsbCBwYWNrZXRzIGJ5IGRlZmF1bHQKI29w
dGlvbnMgCVRDUF9ERUJVRwkjIFJlY29yZCBsYXN0IFRDUF9OREVCVUcgcGFja2V0cyB3aXRoIFNP
X0RFQlVHCgojb3B0aW9ucyAJQUxUUQkJIyBNYW5pcHVsYXRlIG5ldHdvcmsgaW50ZXJmYWNlcycg
b3V0cHV0IHF1ZXVlcwojb3B0aW9ucyAJQUxUUV9CTFVFCSMgU3RvY2hhc3RpYyBGYWlyIEJsdWUK
I29wdGlvbnMgCUFMVFFfQ0JRCSMgQ2xhc3MtQmFzZWQgUXVldWVpbmcKI29wdGlvbnMgCUFMVFFf
Q0ROUgkjIERpZmZzZXJ2IFRyYWZmaWMgQ29uZGl0aW9uZXIKI29wdGlvbnMgCUFMVFFfRklGT1EJ
IyBGaXJzdC1JbiBGaXJzdC1PdXQgUXVldWUKI29wdGlvbnMgCUFMVFFfRkxPV1ZBTFZFCSMgUkVE
L2Zsb3ctdmFsdmUgKHJlZC1wZW5hbHR5LWJveCkKI29wdGlvbnMgCUFMVFFfSEZTQwkjIEhpZXJh
cmNoaWNhbCBGYWlyIFNlcnZpY2UgQ3VydmUKI29wdGlvbnMgCUFMVFFfTE9DQUxRCSMgTG9jYWwg
cXVldWVpbmcgZGlzY2lwbGluZQojb3B0aW9ucyAJQUxUUV9QUklRCSMgUHJpb3JpdHkgUXVldWVp
bmcKI29wdGlvbnMgCUFMVFFfUkVECSMgUmFuZG9tIEVhcmx5IERldGVjdGlvbgojb3B0aW9ucyAJ
QUxUUV9SSU8JIyBSRUQgd2l0aCBJTi9PVVQKI29wdGlvbnMgCUFMVFFfV0ZRCSMgV2VpZ2h0ZWQg
RmFpciBRdWV1ZWluZwoKIyBUaGVzZSBvcHRpb25zIGVuYWJsZSB2ZXJib3NlIG1lc3NhZ2VzIGZv
ciBzZXZlcmFsIHN1YnN5c3RlbXMuCiMgV2FybmluZywgdGhlc2UgbWF5IGNvbXBpbGUgbGFyZ2Ug
c3RyaW5nIHRhYmxlcyBpbnRvIHRoZSBrZXJuZWwhCiNvcHRpb25zIAlBQ1BJVkVSQk9TRQkjIHZl
cmJvc2UgQUNQSSBkZXZpY2UgYXV0b2NvbmZpZyBtZXNzYWdlcwojb3B0aW9ucyAJRUlTQVZFUkJP
U0UJIyB2ZXJib3NlIEVJU0EgZGV2aWNlIGF1dG9jb25maWcgbWVzc2FnZXMKb3B0aW9ucyAJTUlJ
VkVSQk9TRQkjIHZlcmJvc2UgUEhZIGF1dG9jb25maWcgbWVzc2FnZXMKb3B0aW9ucyAJUENJVkVS
Qk9TRQkjIHZlcmJvc2UgUENJIGRldmljZSBhdXRvY29uZmlnIG1lc3NhZ2VzCm9wdGlvbnMgCVBD
SV9DT05GSUdfRFVNUAkjIHZlcmJvc2VseSBkdW1wIFBDSSBjb25maWcgc3BhY2UKI29wdGlvbnMg
CVBDTUNJQVZFUkJPU0UJIyB2ZXJib3NlIFBDTUNJQSBjb25maWd1cmF0aW9uIG1lc3NhZ2VzCiNv
cHRpb25zIAlTQ1NJVkVSQk9TRQkjIGh1bWFuIHJlYWRhYmxlIFNDU0kgZXJyb3IgbWVzc2FnZXMK
b3B0aW9ucyAJVVNCVkVSQk9TRQkjIHZlcmJvc2UgVVNCIGRldmljZSBhdXRvY29uZmlnIG1lc3Nh
Z2VzCiNvcHRpb25zIAlQTlBCSU9TVkVSQk9TRQkjIHZlcmJvc2UgUG5QIEJJT1MgbWVzc2FnZXMK
I29wdGlvbnMgCVBOUEJJT1NERUJVRwkjIG1vcmUgZnVsc29tZSBQblAgQklPUyBkZWJ1Z2dpbmcg
bWVzc2FnZXMKI29wdGlvbnMgCU1DQVZFUkJPU0UJIyB2ZXJib3NlIE1DQSBkZXZpY2UgYXV0b2Nv
bmZpZyBtZXNzYWdlcwoKI29wdGlvbnMgCU5GU19CT09UX0RIQ1AsTkZTX0JPT1RfQk9PVFBBUkFN
CgojCiMgd3Njb25zIG9wdGlvbnMKIwojIGJ1aWx0aW4gdGVybWluYWwgZW11bGF0aW9ucwojb3B0
aW9ucyAJV1NFTVVMX1NVTgkJIyBzdW4gdGVybWluYWwgZW11bGF0aW9uCm9wdGlvbnMgCVdTRU1V
TF9WVDEwMAkJIyBWVDEwMCAvIFZUMjIwIGVtdWxhdGlvbgojIGN1c3RvbWl6YXRpb24gb2YgY29u
c29sZSBhbmQga2VybmVsIG91dHB1dCAtIHNlZSBkZXYvd3Njb25zL3dzZGlzcGxheXZhci5oCm9w
dGlvbnMgCVdTRElTUExBWV9DVVNUT01fT1VUUFVUCSMgY29sb3IgY3VzdG9taXphdGlvbiBmcm9t
IHdzY29uc2N0bCg4KQojb3B0aW9ucyAJV1NfREVGQVVMVF9GRz1XU0NPTF9XSElURQojb3B0aW9u
cyAJV1NfREVGQVVMVF9CRz1XU0NPTF9CTEFDSwojb3B0aW9ucyAJV1NfREVGQVVMVF9DT0xBVFRS
PSIoMCkiCiNvcHRpb25zIAlXU19ERUZBVUxUX01PTk9BVFRSPSIoMCkiCm9wdGlvbnMgCVdTX0tF
Uk5FTF9GRz1XU0NPTF9HUkVFTgojb3B0aW9ucyAJV1NfS0VSTkVMX0JHPVdTQ09MX0JMQUNLCiNv
cHRpb25zIAlXU19LRVJORUxfQ09MQVRUUj0iIgojb3B0aW9ucyAJV1NfS0VSTkVMX01PTk9BVFRS
PSIiCiMgY3VzdG9taXphdGlvbiBvZiBjb25zb2xlIGJvcmRlciBjb2xvcgpvcHRpb25zIAlXU0RJ
U1BMQVlfQ1VTVE9NX0JPUkRFUgkjIGN1c3RvbSBib3JkZXIgY29sb3JzIHZpYSB3c2NvbnNjdGwo
OCkKI29wdGlvbnMgCVdTRElTUExBWV9CT1JERVJfQ09MT1I9V1NDT0xfQkxVRQkjIGRlZmF1bHQg
Y29sb3IKIyBjb21wYXRpYmlsaXR5IHRvIG90aGVyIGNvbnNvbGUgZHJpdmVycwpvcHRpb25zIAlX
U0RJU1BMQVlfQ09NUEFUX1BDVlQJCSMgZW11bGF0ZSBzb21lIGlvY3RscwpvcHRpb25zIAlXU0RJ
U1BMQVlfQ09NUEFUX1NZU0NPTlMJIyBlbXVsYXRlIHNvbWUgaW9jdGxzCm9wdGlvbnMgCVdTRElT
UExBWV9DT01QQVRfVVNMCQkjIFZUIGhhbmRsaW5nCm9wdGlvbnMgCVdTRElTUExBWV9DT01QQVRf
UkFXS0JECQkjIGNhbiBnZXQgcmF3IHNjYW5jb2Rlcwojb3B0aW9ucyAJV1NLQkRfRVZFTlRfQVVU
T1JFUEVBVAkJIyBhdXRvIHJlcGVhdCBpbiBldmVudCBtb2RlCiNvcHRpb25zIAlXU0tCRF9VU09O
TFkJCQkjIHN0cmlwIG9mZiBub24tVVMga2V5bWFwcwojIGRvbid0IGF0dGFjaCBwY2tiZCBhcyB0
aGUgY29uc29sZSBpZiBubyBQUy8yIGtleWJvYXJkIGlzIGZvdW5kCm9wdGlvbnMgCVBDS0JEX0NO
QVRUQUNIX01BWV9GQUlMCiMgc2VlIGRldi9wY2ticG9ydC93c2tiZG1hcF9tZmlpLmMgZm9yIGlt
cGxlbWVudGVkIGxheW91dHMKI29wdGlvbnMgCVBDS0JEX0xBWU9VVD0iKEtCX0RFIHwgS0JfTk9E
RUFEKSIgIyBmb3IgcGNrYmQgZHJpdmVyCiNvcHRpb25zIAlVS0JEX0xBWU9VVD0iKEtCX0RFIHwg
S0JfTk9ERUFEKSIgICMgZm9yIHVrYmQgZHJpdmVyCiMgYWxsb2NhdGUgYSBudW1iZXIgb2Ygdmly
dHVhbCBzY3JlZW5zIGF0IGF1dG9jb25maWd1cmF0aW9uIHRpbWUKI29wdGlvbnMgCVdTRElTUExB
WV9ERUZBVUxUU0NSRUVOUz00CiMgdXNlIGEgbGFyZ2Ugc29mdHdhcmUgY3Vyc29yIHRoYXQgZG9l
c24ndCBibGluawpvcHRpb25zIAlQQ0RJU1BMQVlfU09GVENVUlNPUgojIG1vZGlmeSB0aGUgc2Ny
ZWVuIHR5cGUgb2YgdGhlIGNvbnNvbGU7IGRlZmF1bHRzIHRvICI4MHgyNSIKI29wdGlvbnMgCVZH
QV9DT05TT0xFX1NDUkVFTlRZUEU9IlwiODB4MjRcIiIKIyB3b3JrIGFyb3VuZCBhIGhhcmR3YXJl
IGJ1ZyB0aGF0IGxvYWRlZCBmb250cyBkb24ndCB3b3JrOyBmb3VuZCBvbiBBVEkgY2FyZHMKI29w
dGlvbnMgCVZHQV9DT05TT0xFX0FUSV9CUk9LRU5fRk9OVFNFTAojIGNvbnNvbGUgc2Nyb2xsaW5n
IHN1cHBvcnQuCm9wdGlvbnMgCVdTRElTUExBWV9TQ1JPTExTVVBQT1JUCiMgZW5hYmxlIFZHQSBy
YXN0ZXIgbW9kZSBjYXBhYmxlIG9mIGRpc3BsYXlpbmcgbXVsdGlsaW5ndWFsIHRleHQgb24gY29u
c29sZQojb3B0aW9ucyAJVkdBX1JBU1RFUkNPTlNPTEUKIyBlbmFibGUgc3BsYXNoIHNjcmVlbiBz
dXBwb3J0OyByZXF1aXJlcyBodyBkcml2ZXIgc3VwcG9ydAojb3B0aW9ucyAJU1BMQVNIU0NSRUVO
CiNvcHRpb25zIAlTUExBU0hTQ1JFRU5fUFJPR1JFU1MKCiMgS2VybmVsIHJvb3QgZmlsZSBzeXN0
ZW0gYW5kIGR1bXAgY29uZmlndXJhdGlvbi4KY29uZmlnCQluZXRic2QJcm9vdCBvbiA/IHR5cGUg
PwojY29uZmlnCQluZXRic2QJcm9vdCBvbiBzZDBhIHR5cGUgZmZzCiNjb25maWcJCW5ldGJzZAly
b290IG9uID8gdHlwZSBuZnMKCiMKIyBEZXZpY2UgY29uZmlndXJhdGlvbgojCgptYWluYnVzMCBh
dCByb290CgpjcHUqIGF0IG1haW5idXM/CgojIEJhc2ljIEJ1cyBTdXBwb3J0CgojIElERSBjb250
cm9sbGVyIG9uIFRvc2hpYmEgUG9ydGVnZSAzMDAwIHNlcmllcyAoY3JpcHBsZWQgUENJIGRldmlj
ZSkKI3BjaWlkZSogCWF0IHBucGJpb3M/IGluZGV4ID8KCiMgUENJIGJ1cyBzdXBwb3J0CnBjaSoJ
YXQgbWFpbmJ1cz8gYnVzID8KcGNpKglhdCBwY2hiPyBidXMgPwpwY2kqCWF0IHBwYj8gYnVzID8K
Cm9wdGlvbnMJR0VPREVfREVCVUcKCiMgQ29uZmlndXJlIFBDSSB1c2luZyBCSU9TIGluZm9ybWF0
aW9uCiNvcHRpb25zIAlQQ0lCSU9TCQkJIyBQQ0kgQklPUyBzdXBwb3J0CiNvcHRpb25zIAlQQ0lC
SU9TVkVSQk9TRQkJIyBQQ0kgQklPUyB2ZXJib3NlIGluZm8KI29wdGlvbnMgCVBDSUJJT1NfSVJR
U19ISU5UPTB4MGEwMCAjIFBDSSBpbnRlcnJ1cHRzIGhpbnQuIElSUSA5IG9yIDExCiNvcHRpb25z
IAlQQ0lCSU9TX0lOVFJfR1VFU1MJIyBzZWUgcGNpYmlvcyg0KQojb3B0aW9ucyAJUENJQklPU19M
SUJSRVRUT19GSVhVUAkjIHRoaXMgY29kZSBtYWtlcyB0aGUgVG9zaGliYSBMaWJyZXR0bwoJCQkJ
CSMgTDIvTDMgd29yaywgYnV0IHNob3VsZCBub3QgYmUgZW5hYmxlZAoJCQkJCSMgb24gYW55dGhp
bmcgZWxzZS4KI29wdGlvbnMgCVBDSUJJT1NfU0hBUlBfTU0yMF9GSVhVUCAjIHRoaXMgY29kZSBt
YWtlcyB0aGUgU2hhcnAgTU0gMjAKCQkJCQkjIHdvcmssIGJ1dCBzaG91bGQgbm90IGJlIGVuYWJs
ZWQKCQkJCQkjIG9uIGFueXRoaW5nIGVsc2UuCiNvcHRpb25zIAlQQ0lJTlRSX0RFQlVHCQkjIHN1
cGVyLXZlcmJvc2UgUENJIGludGVycnVwdCBmaXh1cAoKIyBQQ0kgZml4dXBzLCBmb3IgYm90aCBQ
Q0lCSU9TIGFuZCBBQ1BJCiNvcHRpb25zIAlQQ0lfQUREUl9GSVhVUAkJIyBmaXh1cCBQQ0kgSS9P
IGFkZHJlc3Nlcwojb3B0aW9ucyAJUENJX0JVU19GSVhVUAkJIyBmaXh1cCBQQ0kgYnVzIG51bWJl
cmluZwojb3B0aW9ucyAJUENJX0lOVFJfRklYVVAJCSMgZml4dXAgUENJIGludGVycnVwdCByb3V0
aW5nCgojIFN5c3RlbSBDb250cm9sbGVycwplbGFuc2MqIGF0IHBjaT8gZGV2ID8gZnVuY3Rpb24g
PwkjIEFNRCBFbGFuIFNDNTIwIFN5c3RlbSBDb250cm9sbGVyCmdwaW8qIAlhdCBlbGFuc2M/Cgoj
IFBDSSBicmlkZ2VzCiNpY2hscGNpYiogYXQgcGNpPyBkZXYgPyBmdW5jdGlvbiA/CSMgSW50ZWwg
SUNIIFBDSS1JU0Egdy8gd2F0Y2hkb2cgYW5kCgkJCQkJIyBTcGVlZFN0ZXAgc3VwcG9ydApwaWl4
cGNpYiogYXQgcGNpPyBkZXYgPyBmdW5jdGlvbiA/CSMgSW50ZWwgUElJWDQgUENJLUlTQSB3LyBT
cGVlZFN0ZXAKI2dzY3BjaWIqIGF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkjIE5TIEdlb2RlIFBD
SS1JU0Egdy8gR1BJTyBzdXBwb3J0CiN2aWFwY2liKiBhdCBwY2k/IGRldiA/IGZ1bmN0aW9uID8J
IyBWSUEgVlQ4MjM1IFBDSS1JU0Egdy8gU01CdXMgc3VwcG9ydAojaWljKglhdCB2aWFwY2liPwpw
Y2hiKglhdCBwY2k/IGRldiA/IGZ1bmN0aW9uID8JIyBQQ0ktSG9zdCBicmlkZ2VzCnBjZWIqCWF0
IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkjIFBDSS1FSVNBIGJyaWRnZXMKcGNpYioJYXQgcGNpPyBk
ZXYgPyBmdW5jdGlvbiA/CSMgUENJLUlTQSBicmlkZ2VzCnBjbWIqCWF0IHBjaT8gZGV2ID8gZnVu
Y3Rpb24gPwkjIFBDSS1NQ0EgYnJpZGdlcwpwcGIqCWF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkj
IFBDSS1QQ0kgYnJpZGdlcwojIFhYWCAncHVjJ3MgYXJlbid0IHJlYWxseSBicmlkZ2VzLCBidXQg
dGhlcmUncyBubyBiZXR0ZXIgcGxhY2UgZm9yIHRoZW0gaGVyZQpwdWMqCWF0IHBjaT8gZGV2ID8g
ZnVuY3Rpb24gPwkjIFBDSSAidW5pdmVyc2FsIiBjb21tLiBjYXJkcwoKYWdwKiAJYXQgcGNoYj8K
CgojIEVJU0EgYnVzIHN1cHBvcnQKI2Vpc2EwCWF0IG1haW5idXM/CiNlaXNhMAlhdCBwY2ViPwoK
IyBJU0EgYnVzIHN1cHBvcnQKI2lzYTAJYXQgaWNobHBjaWI/CmlzYTAJYXQgcGlpeHBjaWI/CiNp
c2EwCWF0IGdzY3BjaWI/CiNpc2EwCWF0IHZpYXBjaWI/CmlzYTAJYXQgbWFpbmJ1cz8KaXNhMAlh
dCBwY2ViPwppc2EwCWF0IHBjaWI/CgojIFBDTUNJQSBidXMgc3VwcG9ydApwY21jaWEqIGF0IHBj
aWM/IGNvbnRyb2xsZXIgPyBzb2NrZXQgPwpwY21jaWEqIGF0IHRjaWM/IGNvbnRyb2xsZXIgPyBz
b2NrZXQgPwoKIyBNQ0EgYnVzIHN1cHBvcnQKbWNhMAlhdCBtYWluYnVzPwoKIyBJU0EgUENNQ0lB
IGNvbnRyb2xsZXJzCnBjaWMwCWF0IGlzYT8gcG9ydCAweDNlMCBpb21lbSAweGQwMDAwIGlvc2l6
IDB4MTAwMDAKcGNpYzEJYXQgaXNhPyBwb3J0IDB4M2UyIGlvbWVtIDB4ZTAwMDAgaW9zaXogMHg0
MDAwCnBjaWMyCWF0IGlzYT8gcG9ydCAweDNlNCBpb21lbSAweGUwMDAwIGlvc2l6IDB4NDAwMAp0
Y2ljMAlhdCBpc2E/IHBvcnQgMHgyNDAgaW9tZW0gMHhkMDAwMCBpb3NpeiAweDEwMDAwCgojIFBD
SSBQQ01DSUEgY29udHJvbGxlcnMKcGNpYzAJYXQgcGNpPyBkZXY/IGZ1bmN0aW9uID8KCiMgSVNB
IFBsdWctYW5kLVBsYXkgYnVzIHN1cHBvcnQKaXNhcG5wMCBhdCBpc2E/CgojIElTQSBQbHVnLWFu
ZC1QbGF5IFBDTUNJQSBjb250cm9sbGVycwpwY2ljKglhdCBpc2FwbnA/CgojIENhcmRCdXMgYnJp
ZGdlIHN1cHBvcnQKY2JiKgkJYXQgcGNpPyBkZXYgPyBmdW5jdGlvbiA/CmNhcmRzbG90KglhdCBj
YmI/CgojIENhcmRCdXMgYnVzIHN1cHBvcnQKY2FyZGJ1cyoJYXQgY2FyZHNsb3Q/CnBjbWNpYSog
CWF0IGNhcmRzbG90PwoKIyBDb3Byb2Nlc3NvciBTdXBwb3J0CgojIE1hdGggQ29wcm9jZXNzb3Ig
c3VwcG9ydApucHgwCWF0IGlzYT8gcG9ydCAweGYwIGlycSAxMwkjIHg4NiBtYXRoIGNvcHJvY2Vz
c29yCgojIENvbnNvbGUgRGV2aWNlcwoKIyBJU0EgY29uc29sZQojcGMwCWF0IGlzYT8gcG9ydCAw
eDYwIGlycSAxCQkjIHBjY29ucyBnZW5lcmljIFBDIGNvbnNvbGUgZHJpdmVyCiMgS2V5Ym9hcmQg
bGF5b3V0IGNvbmZpZ3VyYXRpb24gZm9yIHBjY29ucwojb3B0aW9ucyAJRlJFTkNIX0tCRAojb3B0
aW9ucyAJRklOTklTSF9LQkQKI29wdGlvbnMgCUdFUk1BTl9LQkQKI29wdGlvbnMgCU5PUldFR0lB
Tl9LQkQKCgojIFZFU0EgZnJhbWVidWZmZXIgY29uc29sZQpvcHRpb25zIAlLVk04NgkJCSMgcmVx
dWlyZWQgZm9yIHZlc2FiaW9zCnZlc2FiaW9zKglhdCB2ZXNhYmlvc2J1cz8KdmVzYWZiKiAJYXQg
dmVzYWJpb3M/Cm9wdGlvbnMgCVZFU0FGQl9XSURUSD02NDAKb3B0aW9ucyAJVkVTQUZCX0hFSUdI
VD00ODAKb3B0aW9ucyAJVkVTQUZCX0RFUFRIPTgKb3B0aW9ucyAJVkVTQUZCX1BNCQkjIHBvd2Vy
IG1hbmFnZW1lbnQgc3VwcG9ydAp3c2Rpc3BsYXkqCWF0IHZlc2FmYj8gY29uc29sZSA/CgphdHRp
bWVyMAlhdCBpc2E/CnBjcHBpMAkJYXQgaXNhPwpzeXNiZWVwMAlhdCBwY3BwaT8KCiMgU2VyaWFs
IERldmljZXMKCiMgSURFIGFuZCByZWxhdGVkIGRldmljZXMKIyBQQ0kgSURFIGNvbnRyb2xsZXJz
IC0gc2VlIHBjaWlkZSg0KSBmb3Igc3VwcG9ydGVkIGhhcmR3YXJlLgojIFRoZSAweDAwMDEgZmxh
ZyBmb3JjZSB0aGUgZHJpdmVyIHRvIHVzZSBETUEsIGV2ZW4gaWYgdGhlIGRyaXZlciBkb2Vzbid0
IGtub3cKIyBob3cgdG8gc2V0IHVwIERNQSBtb2RlcyBmb3IgdGhpcyBjaGlwLiBUaGlzIG1heSB3
b3JrLCBvciBtYXkgY2F1c2UKIyBhIG1hY2hpbmUgaGFuZyB3aXRoIHNvbWUgY29udHJvbGxlcnMu
CnBjaWlkZSogCWF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPyBmbGFncyAweDAwMDAJIyBHRU5FUklD
IHBjaWlkZSBkcml2ZXIKZ2VvZGVpZGUqIAlhdCBwY2k/IGRldiA/IGZ1bmN0aW9uID8JIyBBTUQg
R2VvZGUgSURFIGNvbnRyb2xsZXJzCnNpc2lkZSogCWF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkj
IFNpUyBJREUgY29udHJvbGxlcnMKdmlhaWRlKiAJYXQgcGNpPyBkZXYgPyBmdW5jdGlvbiA/CSMg
VklBL0FNRC9OdmlkaWEgSURFIGNvbnRyb2xsZXJzCgojIElTQSBQbHVnLWFuZC1QbGF5IElERSBj
b250cm9sbGVycwp3ZGMqCWF0IGlzYXBucD8KCiMgSVNBIFNUNTA2LCBFU0RJLCBhbmQgSURFIGNv
bnRyb2xsZXJzCiMgVXNlIGZsYWdzIDB4MDEgaWYgeW91IHdhbnQgdG8gdHJ5IHRvIHVzZSAzMmJp
dHMgZGF0YSBJL08gKHRoZSBkcml2ZXIgd2lsbAojIGZhbGwgYmFjayB0byAxNmJpdHMgSS9PIGlm
IDMyYml0cyBJL08gYXJlIG5vdCBmdW5jdGlvbmFsKS4KIyBTb21lIGNvbnRyb2xsZXJzIHBhc3Mg
dGhlIGluaXRpYWwgMzJiaXQgdGVzdCwgYnV0IHdpbGwgZmFpbCBsYXRlci4Kd2RjMAlhdCBpc2E/
IHBvcnQgMHgxZjAgaXJxIDE0IGZsYWdzIDB4MDAKd2RjMQlhdCBpc2E/IHBvcnQgMHgxNzAgaXJx
IDE1IGZsYWdzIDB4MDAKCiMgQVRBIChJREUpIGJ1cyBzdXBwb3J0CmF0YWJ1cyogYXQgYXRhPwpv
cHRpb25zCUFUQURFQlVHCgojIElERSBkcml2ZXMKIyBGbGFncyBhcmUgdXNlZCBvbmx5IHdpdGgg
Y29udHJvbGxlcnMgdGhhdCBzdXBwb3J0IERNQSBvcGVyYXRpb25zCiMgYW5kIG1vZGUgc2V0dGlu
Z3MgKGUuZy4gc29tZSBwY2lpZGUgY29udHJvbGxlcnMpCiMgVGhlIGxvd2VzdCBvcmRlciBmb3Vy
IGJpdHMgKHJpZ2h0bW9zdCBkaWdpdCkgb2YgdGhlIGZsYWdzIGRlZmluZSB0aGUgUElPCiMgbW9k
ZSB0byB1c2UsIHRoZSBuZXh0IHNldCBvZiBmb3VyIGJpdHMgdGhlIERNQSBtb2RlIGFuZCB0aGUg
dGhpcmQgc2V0IHRoZQojIFVsdHJhRE1BIG1vZGUuIEZvciBlYWNoIHNldCBvZiBmb3VyIGJpdHMs
IHRoZSAzIGxvd2VyIGJpdHMgZGVmaW5lIHRoZSBtb2RlCiMgdG8gdXNlLCBhbmQgdGhlIGxhc3Qg
Yml0IG11c3QgYmUgMSBmb3IgdGhpcyBzZXR0aW5nIHRvIGJlIHVzZWQuCiMgRm9yIERNQSBhbmQg
VURNQSwgMHhmICgxMTExKSBtZWFucyAnZGlzYWJsZScuCiMgMHgwZmFjIG1lYW5zICd1c2UgUElP
IG1vZGUgNCwgRE1BIG1vZGUgMiwgZGlzYWJsZSBVbHRyYURNQScuCiMgKDB4Yz0xMTAwLCAweGE9
MTAxMCwgMHhmPTExMTEpCiMgMHgwMDAwIG1lYW5zICJ1c2Ugd2hhdGV2ZXIgdGhlIGRyaXZlIGNs
YWltcyB0byBzdXBwb3J0Ii4Kd2QqCWF0IGF0YWJ1cz8gZHJpdmUgPyBmbGFncyAweDAwMDAKCiMg
UENJIG5ldHdvcmsgaW50ZXJmYWNlcwpzaXAqCWF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkjIFNp
UyA5MDAvRFA4MzgxNSBFdGhlcm5ldAoKIyBNSUkvUEhZIHN1cHBvcnQKdWtwaHkqCWF0IG1paT8g
cGh5ID8JCQkjIGdlbmVyaWMgdW5rbm93biBQSFlzCgoKIyBVU0IgQ29udHJvbGxlciBhbmQgRGV2
aWNlcwoKIyBQQ0kgVVNCIGNvbnRyb2xsZXJzCiNnY3NjZWhjaSogYXQgcGNpPyBkZXYgPyBmdW5j
dGlvbiA/CSMgRW5oYW5jZWQgSG9zdCBDb250cm9sbGVyIChHZW9kZSBDU0MpCm9oY2kqCWF0IHBj
aT8JZGV2ID8gZnVuY3Rpb24gPwkjIE9wZW4gSG9zdCBDb250cm9sbGVyCnVoY2kqCWF0IHBjaT8J
ZGV2ID8gZnVuY3Rpb24gPwkjIFVuaXZlcnNhbCBIb3N0IENvbnRyb2xsZXIgKEludGVsKQoKIyBV
U0IgYnVzIHN1cHBvcnQKI3VzYioJYXQgZ2NzY2VoY2k/CnVzYioJYXQgb2hjaT8KdXNiKglhdCB1
aGNpPwoKIyBVU0IgSHVicwp1aHViKglhdCB1c2I/CnVodWIqCWF0IHVodWI/IHBvcnQgPwoKIyBV
U0IgSElEIGRldmljZQp1aGlkZXYqCWF0IHVodWI/IHBvcnQgPyBjb25maWd1cmF0aW9uID8gaW50
ZXJmYWNlID8KCiMgVVNCIE1pY2UKdW1zKglhdCB1aGlkZXY/IHJlcG9ydGlkID8Kd3Ntb3VzZSog
YXQgdW1zPyBtdXggMAoKIyBVU0IgS2V5Ym9hcmRzCnVrYmQqCWF0IHVoaWRldj8gcmVwb3J0aWQg
Pwp3c2tiZCoJYXQgdWtiZD8gY29uc29sZSA/IG11eCAxCgojIFVTQiBHZW5lcmljIEhJRCBkZXZp
Y2VzCnVoaWQqCWF0IHVoaWRldj8gcmVwb3J0aWQgPwoKIyBVU0IgUHJpbnRlcgp1bHB0KglhdCB1
aHViPyBwb3J0ID8gY29uZmlndXJhdGlvbiA/IGludGVyZmFjZSA/CgojIFVTQiBNb2RlbQp1bW9k
ZW0qCWF0IHVodWI/IHBvcnQgPyBjb25maWd1cmF0aW9uID8KdWNvbSoJYXQgdW1vZGVtPwoKIyBV
U0IgTWFzcyBTdG9yYWdlCnVtYXNzKglhdCB1aHViPyBwb3J0ID8gY29uZmlndXJhdGlvbiA/IGlu
dGVyZmFjZSA/CndkKglhdCB1bWFzcz8KCnVwbGNvbSogYXQgdWh1Yj8gcG9ydCA/IAkjIEkvTyBE
QVRBIFVTQi1SU0FRMiBzZXJpYWwgYWRhcHRlcgp1Y29tKglhdCB1cGxjb20/IHBvcnRubyA/Cgoj
IFRvcGZpZWxkIFRGNTAwMFBWUiByYW5nZSBvZiBEVkIgcmVjb3JkZXJzCnV0b3BweSoJYXQgdWh1
Yj8gcG9ydCA/CgojIFVTQiBHZW5lcmljIGRyaXZlcgp1Z2VuKglhdCB1aHViPyBwb3J0ID8KIyBP
biB1Z2VuIGJ1bGsgZW5kcG9pbnRzLCBwZXJmb3JtIHJlYWQtYWhlYWQgYW5kIHdyaXRlLWJlaGlu
ZC4Kb3B0aW9ucyBVR0VOX0JVTEtfUkFfV0IKCgojIEF1ZGlvIERldmljZXMKCiMgSVNBIFBsdWct
YW5kLVBsYXkgYXVkaW8gZGV2aWNlcwpzYioJYXQgaXNhcG5wPwkJCSMgU291bmRCbGFzdGVyLWNv
bXBhdGlibGUgYXVkaW8KCiMgSVNBIGF1ZGlvIGRldmljZXMKc2IwCWF0IGlzYT8gcG9ydCAweDIy
MCBpcnEgNSBkcnEgMSBkcnEyIDUJIyBTb3VuZEJsYXN0ZXIKCiMgT1BMWzIzXSBGTSBzeW50aGVz
aXplcnMKI29wbDAJYXQgaXNhPyBwb3J0IDB4Mzg4CSMgdXNlIG9ubHkgaWYgbm90IGF0dGFjaGVk
IHRvIHNvdW5kIGNhcmQKb3BsKglhdCBzYj8KCiMgQXVkaW8gc3VwcG9ydAphdWRpbyoJYXQgYXVk
aW9idXM/CgojIE1QVSA0MDEgVUFSVHMKI21wdSoJYXQgaXNhPyBwb3J0IDB4MzMwIGlycSA5CSMg
TVBVNDAxIG9yIGNvbXBhdGlibGUgY2FyZAptcHUqCWF0IGlzYXBucD8KbXB1KglhdCBzYj8KCiMg
VGhlIHNwa3IgZHJpdmVyIHByb3ZpZGVzIGEgc2ltcGxlIHRvbmUgaW50ZXJmYWNlIHRvIHRoZSBi
dWlsdCBpbiBzcGVha2VyLgpzcGtyMAlhdCBwY3BwaT8JCSMgUEMgc3BlYWtlcgoKIyBDcnlwdG9n
cmFwaGljIERldmljZXMKCiMgUENJIGNyeXB0b2dyYXBoaWMgZGV2aWNlcwpnbHhzYioJYXQgcGNp
PyBkZXYgPyBmdW5jdGlvbiA/CSMgQU1EIEdlb2RlIExYIFNlY3VyaXR5IEJsb2NrCgojIE1pc2Nl
bGxhbmVvdXMgRGV2aWNlcwpnZW9kZWdjYiogIGF0IHBjaT8gZGV2ID8gZnVuY3Rpb24gPwkjIEdl
b2RlIEdDQiBhcmVhCmdlb2Rld2RvZyogYXQgZ2VvZGVnY2I/IAkJIyBBTUQgR2VvZGUgU0MxMTAw
IHdhdGNoZG9nIHRpbWVyCmdlb2RlY250ciogYXQgZ2VvZGVnY2I/IAkJIyBBTUQgR2VvZGUgU0Mx
MTAwIGhpZ2ggcmVzLiBjb3VudGVyCgojIFB1bGwgaW4gb3B0aW9uYWwgbG9jYWwgY29uZmlndXJh
dGlvbgppbmNsdWRlCSJhcmNoL2kzODYvY29uZi9HRU5FUklDLmxvY2FsIgoKIyBQc2V1ZG8tRGV2
aWNlcwoKcHNldWRvLWRldmljZSAJY3J5cHRvCQkjIC9kZXYvY3J5cHRvIGRldmljZQpwc2V1ZG8t
ZGV2aWNlCXN3Y3J5cHRvCSMgc29mdHdhcmUgY3J5cHRvIGltcGxlbWVudGF0aW9uCgojIGRpc2sv
bWFzcyBzdG9yYWdlIHBzZXVkby1kZXZpY2VzCiNwc2V1ZG8tZGV2aWNlCWJpbwkJCSMgUkFJRCBj
b250cm9sIGRldmljZSBkcml2ZXIKI3BzZXVkby1kZXZpY2UJY2NkCQk0CSMgY29uY2F0ZW5hdGVk
L3N0cmlwZWQgZGlzayBkZXZpY2VzCiNwc2V1ZG8tZGV2aWNlCWNnZAkJNAkjIGNyeXB0b2dyYXBo
aWMgZGlzayBkZXZpY2VzCiNwc2V1ZG8tZGV2aWNlCXJhaWQJCTgJIyBSQUlEZnJhbWUgZGlzayBk
cml2ZXIKI29wdGlvbnMgCVJBSURfQVVUT0NPTkZJRwkJIyBhdXRvLWNvbmZpZ3VyYXRpb24gb2Yg
UkFJRCBjb21wb25lbnRzCiMgT3B0aW9ucyB0byBlbmFibGUgdmFyaW91cyBvdGhlciBSQUlEZnJh
bWUgUkFJRCB0eXBlcy4KI29wdGlvbnMgCVJGX0lOQ0xVREVfRVZFTk9ERD0xCiNvcHRpb25zIAlS
Rl9JTkNMVURFX1JBSUQ1X1JTPTEKI29wdGlvbnMgCVJGX0lOQ0xVREVfUEFSSVRZTE9HR0lORz0x
CiNvcHRpb25zIAlSRl9JTkNMVURFX0NIQUlOREVDTFVTVEVSPTEKI29wdGlvbnMgCVJGX0lOQ0xV
REVfSU5URVJERUNMVVNURVI9MQojb3B0aW9ucyAJUkZfSU5DTFVERV9QQVJJVFlfREVDTFVTVEVS
SU5HPTEKI29wdGlvbnMgCVJGX0lOQ0xVREVfUEFSSVRZX0RFQ0xVU1RFUklOR19EUz0xCiNwc2V1
ZG8tZGV2aWNlCWZzcwkJNAkjIGZpbGUgc3lzdGVtIHNuYXBzaG90IGRldmljZQoKcHNldWRvLWRl
dmljZQltZAkJMQkjIG1lbW9yeSBkaXNrIGRldmljZSAocmFtZGlzaykKcHNldWRvLWRldmljZQl2
bmQJCQkjIGRpc2stbGlrZSBpbnRlcmZhY2UgdG8gZmlsZXMKb3B0aW9ucyAJVk5EX0NPTVBSRVNT
SU9OCQkjIGNvbXByZXNzZWQgdm5kKDQpCgojIG5ldHdvcmsgcHNldWRvLWRldmljZXMKcHNldWRv
LWRldmljZQlicGZpbHRlcgkJIyBCZXJrZWxleSBwYWNrZXQgZmlsdGVyCiNwc2V1ZG8tZGV2aWNl
CWNhcnAJCQkjIENvbW1vbiBBZGRyZXNzIFJlZHVuZGFuY3kgUHJvdG9jb2wKcHNldWRvLWRldmlj
ZQlpcGZpbHRlcgkJIyBJUCBmaWx0ZXIgKGZpcmV3YWxsKSBhbmQgTkFUCnBzZXVkby1kZXZpY2UJ
bG9vcAkJCSMgbmV0d29yayBsb29wYmFjawojcHNldWRvLWRldmljZQlwcHAJCQkjIFBvaW50LXRv
LVBvaW50IFByb3RvY29sCiNwc2V1ZG8tZGV2aWNlCXBwcG9lCQkJIyBQUFAgb3ZlciBFdGhlcm5l
dCAoUkZDIDI1MTYpCiNwc2V1ZG8tZGV2aWNlCXNsCQkJIyBTZXJpYWwgTGluZSBJUAojcHNldWRv
LWRldmljZQlzdHJpcAkJCSMgU3Rhcm1vZGUgUmFkaW8gSVAgKE1ldHJpY29tKQojcHNldWRvLWRl
dmljZQlpcmZyYW1ldHR5CQkjIElyREEgZnJhbWUgbGluZSBkaXNjaXBsaW5lCiNwc2V1ZG8tZGV2
aWNlCXRhcAkJCSMgdmlydHVhbCBFdGhlcm5ldAojcHNldWRvLWRldmljZQl0dW4JCQkjIG5ldHdv
cmsgdHVubmVsaW5nIG92ZXIgdHR5CiNwc2V1ZG8tZGV2aWNlCWdyZQkJCSMgZ2VuZXJpYyBMMyBv
dmVyIElQIHR1bm5lbAojcHNldWRvLWRldmljZQlnaWYJCQkjIElQdls0Nl0gb3ZlciBJUHZbNDZd
IHR1bm5lbCAoUkZDMTkzMykKI3BzZXVkby1kZXZpY2UJZmFpdGgJCQkjIElQdls0Nl0gdGNwIHJl
bGF5IHRyYW5zbGF0aW9uIGkvZgojcHNldWRvLWRldmljZQlzdGYJCQkjIDZ0bzQgSVB2NiBvdmVy
IElQdjQgZW5jYXBzdWxhdGlvbgojcHNldWRvLWRldmljZQl2bGFuCQkJIyBJRUVFIDgwMi4xcSBl
bmNhcHN1bGF0aW9uCiNwc2V1ZG8tZGV2aWNlCWJyaWRnZQkJCSMgc2ltcGxlIGludGVyLW5ldHdv
cmsgYnJpZGdpbmcKI29wdGlvbnMgCUJSSURHRV9JUEYJCSMgYnJpZGdlIHVzZXMgSVAvSVB2NiBw
ZmlsIGhvb2tzIHRvbwojcHNldWRvLWRldmljZQlhZ3IJCQkjIElFRUUgODAyLjNhZCBsaW5rIGFn
Z3JlZ2F0aW9uCiNwc2V1ZG8tZGV2aWNlCXBmCQkJIyBQRiBwYWNrZXQgZmlsdGVyCiNwc2V1ZG8t
ZGV2aWNlCXBmbG9nCQkJIyBQRiBsb2cgaWYKIyBzcnQgaXMgRVhQRVJJTUVOVEFMCiNwc2V1ZG8t
ZGV2aWNlCXNydAkJCSMgc291cmNlLWFkZHJlc3MtYmFzZWQgcm91dGluZwoKIyBtaXNjZWxsYW5l
b3VzIHBzZXVkby1kZXZpY2VzCnBzZXVkby1kZXZpY2UJcHR5CQkJIyBwc2V1ZG8tdGVybWluYWxz
CiNwc2V1ZG8tZGV2aWNlCXNlcXVlbmNlcgkxCSMgTUlESSBzZXF1ZW5jZXIKIyBybmQgd29ya3M7
IFJORF9DT00gZG9lcyBub3Qgb24gcG9ydCBpMzg2IHlldC4KcHNldWRvLWRldmljZQlybmQJCQkj
IC9kZXYvcmFuZG9tIGFuZCBpbi1rZXJuZWwgZ2VuZXJhdG9yCiNvcHRpb25zIAlSTkRfQ09NCQkJ
IyB1c2UgImNvbSIgcmFuZG9tbmVzcyBhcyB3ZWxsIChCUk9LRU4pCnBzZXVkby1kZXZpY2UJY2xv
Y2tjdGwJCSMgdXNlciBjb250cm9sIG9mIGNsb2NrIHN1YnN5c3RlbQpwc2V1ZG8tZGV2aWNlCWtz
eW1zCQkJIyAvZGV2L2tzeW1zCnBzZXVkby1kZXZpY2UJbG9ja3N0YXQJCSMgbG9jayBwcm9maWxp
bmcKCiMgYSBwc2V1ZG8gZGV2aWNlIG5lZWRlZCBmb3IgQ29kYQkjIGFsc28gbmVlZHMgQ09EQSAo
YWJvdmUpCiNwc2V1ZG8tZGV2aWNlCXZjb2RhCQk0CSMgY29kYSBtaW5pY2FjaGUgPC0+IHZlbnVz
IGNvbW0uCgojIGEgcHNldWRvIGRldmljZSBuZWVkZWQgZm9yIFNNQkZTCiNwc2V1ZG8tZGV2aWNl
CW5zbWIJCQkjIGV4cGVyaW1lbnRhbCAtIFNNQiByZXF1ZXN0ZXIKCiMgd3Njb25zIHBzZXVkby1k
ZXZpY2VzCnBzZXVkby1kZXZpY2UJd3NtdXgJCQkjIG1vdXNlICYga2V5Ym9hcmQgbXVsdGlwbGV4
b3IKcHNldWRvLWRldmljZQl3c2ZvbnQKCiNvcHRpb25zIAlGSUxFQVNTT0MJCSMgZmlsZWFzc29j
KDkpIC0gcmVxdWlyZWQgZm9yIFZlcmlleGVjCgojIFZlcmlleGVjCiNwc2V1ZG8tZGV2aWNlCXZl
cmlleGVjCiMKIyBVbmNvbW1lbnQgdGhlIGZpbmdlcnByaW50IG1ldGhvZHMgYmVsb3cgdGhhdCBh
cmUgZGVzaXJlZC4gTm90ZSB0aGF0CiMgcmVtb3ZpbmcgZmluZ2VycHJpbnQgbWV0aG9kcyB3aWxs
IGhhdmUgYWxtb3N0IG5vIGltcGFjdCBvbiB0aGUga2VybmVsCiMgY29kZSBzaXplLgojCiNvcHRp
b25zIFZFUklGSUVEX0VYRUNfRlBfUk1EMTYwCiNvcHRpb25zIFZFUklGSUVEX0VYRUNfRlBfU0hB
MjU2CiNvcHRpb25zIFZFUklGSUVEX0VYRUNfRlBfU0hBMzg0CiNvcHRpb25zIFZFUklGSUVEX0VY
RUNfRlBfU0hBNTEyCiNvcHRpb25zIFZFUklGSUVEX0VYRUNfRlBfU0hBMQojb3B0aW9ucyBWRVJJ
RklFRF9FWEVDX0ZQX01ENQoKI29wdGlvbnMgUEFYX01QUk9URUNUPTAJCQkjIFBhWCBtcHJvdGVj
dCgyKSByZXN0cmljdGlvbnMK

--MP_O6WuD9yA/Unuop1bEutUO/y--