delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/10/13/13:47:11

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Sun, 13 Oct 2002 23:46:13 +0600
From: Dmitry Suhodoev <iam AT raven DOT elk DOT ru>
X-Priority: 3 (Normal)
Message-ID: <14228166641.20021013234613@raven.elk.ru>
To: cygwin AT cygwin DOT com
Subject: cannot run apache with mod_php4
MIME-Version: 1.0
Note-from-DJ: This may be spam

------------7C62F4125AEBAE
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

hi, cygwin

when i'l trying start apache with mod_php4 they wan't work and write to log
this:

[Sun Oct 13 23:40:56 2002] [notice] Apache/1.3.24 (Cygwin) PHP/4.2.0 configured -- resuming normal operations
[Sun Oct 13 23:40:56 2002] [notice] Accept mutex: pthread (Default: pthread)
D:\work\cygwin\usr\sbin\httpd.exe: *** unable to remap D:\work\cygwin\bin\cygintl-1.dll to same address as parent -- 0xB60000
      8 [main] httpd 2248 sync_with_child: child 1920(0x6AC) died before initialization with status code 0x1
  31521 [main] httpd 2248 sync_with_child: *** child state child loading dlls
[Sun Oct 13 23:40:57 2002] [error] (11)Resource temporarily unavailable: fork: Unable to fork new process

my httpd.conf in attach. if i try remove lines

LoadModule php4_module        lib/apache/libphp4.dll
AddModule mod_php4.c

from my httpd.conf it works funny, but without php4 :( why they doesn't work?
what i must make for working with php4 under cygwin? please help me.

-- 
raVen, http://raven.elk.ru/, icq#550428

... knowledge brings fear
system uptime: 0d 7h 42m 52s 985ms
------------7C62F4125AEBAE
Content-Type: application/octet-stream; name="httpd.conf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="httpd.conf"

IyMKIyMgaHR0cGQuY29uZiAtLSBBcGFjaGUgSFRUUCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxl
CiMjCgojCiMgQmFzZWQgdXBvbiB0aGUgTkNTQSBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxlcyBv
cmlnaW5hbGx5IGJ5IFJvYiBNY0Nvb2wuCiMKIyBUaGlzIGlzIHRoZSBtYWluIEFwYWNoZSBzZXJ2
ZXIgY29uZmlndXJhdGlvbiBmaWxlLiAgSXQgY29udGFpbnMgdGhlCiMgY29uZmlndXJhdGlvbiBk
aXJlY3RpdmVzIHRoYXQgZ2l2ZSB0aGUgc2VydmVyIGl0cyBpbnN0cnVjdGlvbnMuCiMgU2VlIDxV
Ukw6aHR0cDovL3d3dy5hcGFjaGUub3JnL2RvY3MvPiBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24g
YWJvdXQKIyB0aGUgZGlyZWN0aXZlcy4KIwojIERvIE5PVCBzaW1wbHkgcmVhZCB0aGUgaW5zdHJ1
Y3Rpb25zIGluIGhlcmUgd2l0aG91dCB1bmRlcnN0YW5kaW5nCiMgd2hhdCB0aGV5IGRvLiAgVGhl
eSdyZSBoZXJlIG9ubHkgYXMgaGludHMgb3IgcmVtaW5kZXJzLiAgSWYgeW91IGFyZSB1bnN1cmUK
IyBjb25zdWx0IHRoZSBvbmxpbmUgZG9jcy4gWW91IGhhdmUgYmVlbiB3YXJuZWQuCiMKIyBBZnRl
ciB0aGlzIGZpbGUgaXMgcHJvY2Vzc2VkLCB0aGUgc2VydmVyIHdpbGwgbG9vayBmb3IgYW5kIHBy
b2Nlc3MKIyAvdXNyL2NvbmYvc3JtLmNvbmYgYW5kIHRoZW4gL3Vzci9jb25mL2FjY2Vzcy5jb25m
CiMgdW5sZXNzIHlvdSBoYXZlIG92ZXJyaWRkZW4gdGhlc2Ugd2l0aCBSZXNvdXJjZUNvbmZpZyBh
bmQvb3IKIyBBY2Nlc3NDb25maWcgZGlyZWN0aXZlcyBoZXJlLgojCiMgVGhlIGNvbmZpZ3VyYXRp
b24gZGlyZWN0aXZlcyBhcmUgZ3JvdXBlZCBpbnRvIHRocmVlIGJhc2ljIHNlY3Rpb25zOgojICAx
LiBEaXJlY3RpdmVzIHRoYXQgY29udHJvbCB0aGUgb3BlcmF0aW9uIG9mIHRoZSBBcGFjaGUgc2Vy
dmVyIHByb2Nlc3MgYXMgYQojICAgICB3aG9sZSAodGhlICdnbG9iYWwgZW52aXJvbm1lbnQnKS4K
IyAgMi4gRGlyZWN0aXZlcyB0aGF0IGRlZmluZSB0aGUgcGFyYW1ldGVycyBvZiB0aGUgJ21haW4n
IG9yICdkZWZhdWx0JyBzZXJ2ZXIsCiMgICAgIHdoaWNoIHJlc3BvbmRzIHRvIHJlcXVlc3RzIHRo
YXQgYXJlbid0IGhhbmRsZWQgYnkgYSB2aXJ0dWFsIGhvc3QuCiMgICAgIFRoZXNlIGRpcmVjdGl2
ZXMgYWxzbyBwcm92aWRlIGRlZmF1bHQgdmFsdWVzIGZvciB0aGUgc2V0dGluZ3MKIyAgICAgb2Yg
YWxsIHZpcnR1YWwgaG9zdHMuCiMgIDMuIFNldHRpbmdzIGZvciB2aXJ0dWFsIGhvc3RzLCB3aGlj
aCBhbGxvdyBXZWIgcmVxdWVzdHMgdG8gYmUgc2VudCB0bwojICAgICBkaWZmZXJlbnQgSVAgYWRk
cmVzc2VzIG9yIGhvc3RuYW1lcyBhbmQgaGF2ZSB0aGVtIGhhbmRsZWQgYnkgdGhlCiMgICAgIHNh
bWUgQXBhY2hlIHNlcnZlciBwcm9jZXNzLgojCiMgQ29uZmlndXJhdGlvbiBhbmQgbG9nZmlsZSBu
YW1lczogSWYgdGhlIGZpbGVuYW1lcyB5b3Ugc3BlY2lmeSBmb3IgbWFueQojIG9mIHRoZSBzZXJ2
ZXIncyBjb250cm9sIGZpbGVzIGJlZ2luIHdpdGggIi8iIChvciAiZHJpdmU6LyIgZm9yIFdpbjMy
KSwgdGhlCiMgc2VydmVyIHdpbGwgdXNlIHRoYXQgZXhwbGljaXQgcGF0aC4gIElmIHRoZSBmaWxl
bmFtZXMgZG8gKm5vdCogYmVnaW4KIyB3aXRoICIvIiwgdGhlIHZhbHVlIG9mIFNlcnZlclJvb3Qg
aXMgcHJlcGVuZGVkIC0tIHNvICJsb2dzL2Zvby5sb2ciCiMgd2l0aCBTZXJ2ZXJSb290IHNldCB0
byAiL3Vzci9sb2NhbC9hcGFjaGUiIHdpbGwgYmUgaW50ZXJwcmV0ZWQgYnkgdGhlCiMgc2VydmVy
IGFzICIvdXNyL2xvY2FsL2FwYWNoZS9sb2dzL2Zvby5sb2ciLgojCgojIyMgU2VjdGlvbiAxOiBH
bG9iYWwgRW52aXJvbm1lbnQKIwojIFRoZSBkaXJlY3RpdmVzIGluIHRoaXMgc2VjdGlvbiBhZmZl
Y3QgdGhlIG92ZXJhbGwgb3BlcmF0aW9uIG9mIEFwYWNoZSwKIyBzdWNoIGFzIHRoZSBudW1iZXIg
b2YgY29uY3VycmVudCByZXF1ZXN0cyBpdCBjYW4gaGFuZGxlIG9yIHdoZXJlIGl0CiMgY2FuIGZp
bmQgaXRzIGNvbmZpZ3VyYXRpb24gZmlsZXMuCiMKCiMKIyBTZXJ2ZXJUeXBlIGlzIGVpdGhlciBp
bmV0ZCwgb3Igc3RhbmRhbG9uZS4gIEluZXRkIG1vZGUgaXMgb25seSBzdXBwb3J0ZWQgb24KIyBV
bml4IHBsYXRmb3Jtcy4KIwpTZXJ2ZXJUeXBlIHN0YW5kYWxvbmUKCiMKIyBTZXJ2ZXJSb290OiBU
aGUgdG9wIG9mIHRoZSBkaXJlY3RvcnkgdHJlZSB1bmRlciB3aGljaCB0aGUgc2VydmVyJ3MKIyBj
b25maWd1cmF0aW9uLCBlcnJvciwgYW5kIGxvZyBmaWxlcyBhcmUga2VwdC4KIwojIE5PVEUhICBJ
ZiB5b3UgaW50ZW5kIHRvIHBsYWNlIHRoaXMgb24gYW4gTkZTIChvciBvdGhlcndpc2UgbmV0d29y
aykKIyBtb3VudGVkIGZpbGVzeXN0ZW0gdGhlbiBwbGVhc2UgcmVhZCB0aGUgTG9ja0ZpbGUgZG9j
dW1lbnRhdGlvbgojIChhdmFpbGFibGUgYXQgPFVSTDpodHRwOi8vd3d3LmFwYWNoZS5vcmcvZG9j
cy9tb2QvY29yZS5odG1sI2xvY2tmaWxlPik7CiMgeW91IHdpbGwgc2F2ZSB5b3Vyc2VsZiBhIGxv
dCBvZiB0cm91YmxlLgojClNlcnZlclJvb3QgIi91c3IiCgojCiMgVGhlIExvY2tGaWxlIGRpcmVj
dGl2ZSBzZXRzIHRoZSBwYXRoIHRvIHRoZSBsb2NrZmlsZSB1c2VkIHdoZW4gQXBhY2hlCiMgaXMg
Y29tcGlsZWQgd2l0aCBlaXRoZXIgVVNFX0ZDTlRMX1NFUklBTElaRURfQUNDRVBUIG9yCiMgVVNF
X0ZMT0NLX1NFUklBTElaRURfQUNDRVBULiBUaGlzIGRpcmVjdGl2ZSBzaG91bGQgbm9ybWFsbHkg
YmUgbGVmdCBhdAojIGl0cyBkZWZhdWx0IHZhbHVlLiBUaGUgbWFpbiByZWFzb24gZm9yIGNoYW5n
aW5nIGl0IGlzIGlmIHRoZSBsb2dzCiMgZGlyZWN0b3J5IGlzIE5GUyBtb3VudGVkLCBzaW5jZSB0
aGUgbG9ja2ZpbGUgTVVTVCBCRSBTVE9SRUQgT04gQSBMT0NBTAojIERJU0suIFRoZSBQSUQgb2Yg
dGhlIG1haW4gc2VydmVyIHByb2Nlc3MgaXMgYXV0b21hdGljYWxseSBhcHBlbmRlZCB0bwojIHRo
ZSBmaWxlbmFtZS4KIwpMb2NrRmlsZSAvdmFyL3J1bi9odHRwZC5sb2NrCgojCiMgUGlkRmlsZTog
VGhlIGZpbGUgaW4gd2hpY2ggdGhlIHNlcnZlciBzaG91bGQgcmVjb3JkIGl0cyBwcm9jZXNzCiMg
aWRlbnRpZmljYXRpb24gbnVtYmVyIHdoZW4gaXQgc3RhcnRzLgojClBpZEZpbGUgL3Zhci9ydW4v
aHR0cGQucGlkCgojCiMgU2NvcmVCb2FyZEZpbGU6IEZpbGUgdXNlZCB0byBzdG9yZSBpbnRlcm5h
bCBzZXJ2ZXIgcHJvY2VzcyBpbmZvcm1hdGlvbi4KIyBOb3QgYWxsIGFyY2hpdGVjdHVyZXMgcmVx
dWlyZSB0aGlzLiAgQnV0IGlmIHlvdXJzIGRvZXMgKHlvdSdsbCBrbm93IGJlY2F1c2UKIyB0aGlz
IGZpbGUgd2lsbCBiZSAgY3JlYXRlZCB3aGVuIHlvdSBydW4gQXBhY2hlKSB0aGVuIHlvdSAqbXVz
dCogZW5zdXJlIHRoYXQKIyBubyB0d28gaW52b2NhdGlvbnMgb2YgQXBhY2hlIHNoYXJlIHRoZSBz
YW1lIHNjb3JlYm9hcmQgZmlsZS4KIwpTY29yZUJvYXJkRmlsZSAvdmFyL3J1bi9odHRwZC5zY29y
ZWJvYXJkCgojCiMgSW4gdGhlIHN0YW5kYXJkIGNvbmZpZ3VyYXRpb24sIHRoZSBzZXJ2ZXIgd2ls
bCBwcm9jZXNzIGh0dHBkLmNvbmYgKHRoaXMKIyBmaWxlLCBzcGVjaWZpZWQgYnkgdGhlIC1mIGNv
bW1hbmQgbGluZSBvcHRpb24pLCBzcm0uY29uZiwgYW5kIGFjY2Vzcy5jb25mCiMgaW4gdGhhdCBv
cmRlci4gIFRoZSBsYXR0ZXIgdHdvIGZpbGVzIGFyZSBub3cgZGlzdHJpYnV0ZWQgZW1wdHksIGFz
IGl0IGlzCiMgcmVjb21tZW5kZWQgdGhhdCBhbGwgZGlyZWN0aXZlcyBiZSBrZXB0IGluIGEgc2lu
Z2xlIGZpbGUgZm9yIHNpbXBsaWNpdHkuCiMgVGhlIGNvbW1lbnRlZC1vdXQgdmFsdWVzIGJlbG93
IGFyZSB0aGUgYnVpbHQtaW4gZGVmYXVsdHMuICBZb3UgY2FuIGhhdmUgdGhlCiMgc2VydmVyIGln
bm9yZSB0aGVzZSBmaWxlcyBhbHRvZ2V0aGVyIGJ5IHVzaW5nICIvZGV2L251bGwiIChmb3IgVW5p
eCkgb3IKIyAibnVsIiAoZm9yIFdpbjMyKSBmb3IgdGhlIGFyZ3VtZW50cyB0byB0aGUgZGlyZWN0
aXZlcy4KIwojUmVzb3VyY2VDb25maWcgY29uZi9zcm0uY29uZgojQWNjZXNzQ29uZmlnIGNvbmYv
YWNjZXNzLmNvbmYKCiMKIyBUaW1lb3V0OiBUaGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIHJl
Y2VpdmVzIGFuZCBzZW5kcyB0aW1lIG91dC4KIwpUaW1lb3V0IDMwMAoKIwojIEtlZXBBbGl2ZTog
V2hldGhlciBvciBub3QgdG8gYWxsb3cgcGVyc2lzdGVudCBjb25uZWN0aW9ucyAobW9yZSB0aGFu
CiMgb25lIHJlcXVlc3QgcGVyIGNvbm5lY3Rpb24pLiBTZXQgdG8gIk9mZiIgdG8gZGVhY3RpdmF0
ZS4KIwpLZWVwQWxpdmUgT2ZmCgojCiMgTWF4S2VlcEFsaXZlUmVxdWVzdHM6IFRoZSBtYXhpbXVt
IG51bWJlciBvZiByZXF1ZXN0cyB0byBhbGxvdwojIGR1cmluZyBhIHBlcnNpc3RlbnQgY29ubmVj
dGlvbi4gU2V0IHRvIDAgdG8gYWxsb3cgYW4gdW5saW1pdGVkIGFtb3VudC4KIyBXZSByZWNvbW1l
bmQgeW91IGxlYXZlIHRoaXMgbnVtYmVyIGhpZ2gsIGZvciBtYXhpbXVtIHBlcmZvcm1hbmNlLgoj
Ck1heEtlZXBBbGl2ZVJlcXVlc3RzIDAKCiMKIyBLZWVwQWxpdmVUaW1lb3V0OiBOdW1iZXIgb2Yg
c2Vjb25kcyB0byB3YWl0IGZvciB0aGUgbmV4dCByZXF1ZXN0IGZyb20gdGhlCiMgc2FtZSBjbGll
bnQgb24gdGhlIHNhbWUgY29ubmVjdGlvbi4KIwpLZWVwQWxpdmVUaW1lb3V0IDAKCiMKIyBTZXJ2
ZXItcG9vbCBzaXplIHJlZ3VsYXRpb24uICBSYXRoZXIgdGhhbiBtYWtpbmcgeW91IGd1ZXNzIGhv
dyBtYW55CiMgc2VydmVyIHByb2Nlc3NlcyB5b3UgbmVlZCwgQXBhY2hlIGR5bmFtaWNhbGx5IGFk
YXB0cyB0byB0aGUgbG9hZCBpdAojIHNlZXMgLS0tIHRoYXQgaXMsIGl0IHRyaWVzIHRvIG1haW50
YWluIGVub3VnaCBzZXJ2ZXIgcHJvY2Vzc2VzIHRvCiMgaGFuZGxlIHRoZSBjdXJyZW50IGxvYWQs
IHBsdXMgYSBmZXcgc3BhcmUgc2VydmVycyB0byBoYW5kbGUgdHJhbnNpZW50CiMgbG9hZCBzcGlr
ZXMgKGUuZy4sIG11bHRpcGxlIHNpbXVsdGFuZW91cyByZXF1ZXN0cyBmcm9tIGEgc2luZ2xlCiMg
TmV0c2NhcGUgYnJvd3NlcikuCiMKIyBJdCBkb2VzIHRoaXMgYnkgcGVyaW9kaWNhbGx5IGNoZWNr
aW5nIGhvdyBtYW55IHNlcnZlcnMgYXJlIHdhaXRpbmcKIyBmb3IgYSByZXF1ZXN0LiAgSWYgdGhl
cmUgYXJlIGZld2VyIHRoYW4gTWluU3BhcmVTZXJ2ZXJzLCBpdCBjcmVhdGVzCiMgYSBuZXcgc3Bh
cmUuICBJZiB0aGVyZSBhcmUgbW9yZSB0aGFuIE1heFNwYXJlU2VydmVycywgc29tZSBvZiB0aGUK
IyBzcGFyZXMgZGllIG9mZi4gIFRoZSBkZWZhdWx0IHZhbHVlcyBhcmUgcHJvYmFibHkgT0sgZm9y
IG1vc3Qgc2l0ZXMuCiMKTWluU3BhcmVTZXJ2ZXJzIDAKTWF4U3BhcmVTZXJ2ZXJzIDAKCiMKIyBO
dW1iZXIgb2Ygc2VydmVycyB0byBzdGFydCBpbml0aWFsbHkgLS0tIHNob3VsZCBiZSBhIHJlYXNv
bmFibGUgYmFsbHBhcmsKIyBmaWd1cmUuCiMKU3RhcnRTZXJ2ZXJzIDAKCiMKIyBMaW1pdCBvbiB0
b3RhbCBudW1iZXIgb2Ygc2VydmVycyBydW5uaW5nLCBpLmUuLCBsaW1pdCBvbiB0aGUgbnVtYmVy
CiMgb2YgY2xpZW50cyB3aG8gY2FuIHNpbXVsdGFuZW91c2x5IGNvbm5lY3QgLS0tIGlmIHRoaXMg
bGltaXQgaXMgZXZlcgojIHJlYWNoZWQsIGNsaWVudHMgd2lsbCBiZSBMT0NLRUQgT1VULCBzbyBp
dCBzaG91bGQgTk9UIEJFIFNFVCBUT08gTE9XLgojIEl0IGlzIGludGVuZGVkIG1haW5seSBhcyBh
IGJyYWtlIHRvIGtlZXAgYSBydW5hd2F5IHNlcnZlciBmcm9tIHRha2luZwojIHRoZSBzeXN0ZW0g
d2l0aCBpdCBhcyBpdCBzcGlyYWxzIGRvd24uLi4KIwpNYXhDbGllbnRzIDAKCiMKIyBNYXhSZXF1
ZXN0c1BlckNoaWxkOiB0aGUgbnVtYmVyIG9mIHJlcXVlc3RzIGVhY2ggY2hpbGQgcHJvY2VzcyBp
cwojIGFsbG93ZWQgdG8gcHJvY2VzcyBiZWZvcmUgdGhlIGNoaWxkIGRpZXMuICBUaGUgY2hpbGQg
d2lsbCBleGl0IHNvCiMgYXMgdG8gYXZvaWQgcHJvYmxlbXMgYWZ0ZXIgcHJvbG9uZ2VkIHVzZSB3
aGVuIEFwYWNoZSAoYW5kIG1heWJlIHRoZQojIGxpYnJhcmllcyBpdCB1c2VzKSBsZWFrIG1lbW9y
eSBvciBvdGhlciByZXNvdXJjZXMuICBPbiBtb3N0IHN5c3RlbXMsIHRoaXMKIyBpc24ndCByZWFs
bHkgbmVlZGVkLCBidXQgYSBmZXcgKHN1Y2ggYXMgU29sYXJpcykgZG8gaGF2ZSBub3RhYmxlIGxl
YWtzCiMgaW4gdGhlIGxpYnJhcmllcy4gRm9yIHRoZXNlIHBsYXRmb3Jtcywgc2V0IHRvIHNvbWV0
aGluZyBsaWtlIDEwMDAwCiMgb3Igc287IGEgc2V0dGluZyBvZiAwIG1lYW5zIHVubGltaXRlZC4K
IwojIE5PVEU6IFRoaXMgdmFsdWUgZG9lcyBub3QgaW5jbHVkZSBrZWVwYWxpdmUgcmVxdWVzdHMg
YWZ0ZXIgdGhlIGluaXRpYWwKIyAgICAgICByZXF1ZXN0IHBlciBjb25uZWN0aW9uLiBGb3IgZXhh
bXBsZSwgaWYgYSBjaGlsZCBwcm9jZXNzIGhhbmRsZXMKIyAgICAgICBhbiBpbml0aWFsIHJlcXVl
c3QgYW5kIDEwIHN1YnNlcXVlbnQgImtlcHRhbGl2ZSIgcmVxdWVzdHMsIGl0CiMgICAgICAgd291
bGQgb25seSBjb3VudCBhcyAxIHJlcXVlc3QgdG93YXJkcyB0aGlzIGxpbWl0LgojCk1heFJlcXVl
c3RzUGVyQ2hpbGQgMQoKIwojIExpc3RlbjogQWxsb3dzIHlvdSB0byBiaW5kIEFwYWNoZSB0byBz
cGVjaWZpYyBJUCBhZGRyZXNzZXMgYW5kL29yCiMgcG9ydHMsIGluIGFkZGl0aW9uIHRvIHRoZSBk
ZWZhdWx0LiBTZWUgYWxzbyB0aGUgPFZpcnR1YWxIb3N0PgojIGRpcmVjdGl2ZS4KIwojTGlzdGVu
IDMwMDAKI0xpc3RlbiAxMi4zNC41Ni43ODo4MAoKIwojIEJpbmRBZGRyZXNzOiBZb3UgY2FuIHN1
cHBvcnQgdmlydHVhbCBob3N0cyB3aXRoIHRoaXMgb3B0aW9uLiBUaGlzIGRpcmVjdGl2ZQojIGlz
IHVzZWQgdG8gdGVsbCB0aGUgc2VydmVyIHdoaWNoIElQIGFkZHJlc3MgdG8gbGlzdGVuIHRvLiBJ
dCBjYW4gZWl0aGVyCiMgY29udGFpbiAiKiIsIGFuIElQIGFkZHJlc3MsIG9yIGEgZnVsbHkgcXVh
bGlmaWVkIEludGVybmV0IGRvbWFpbiBuYW1lLgojIFNlZSBhbHNvIHRoZSA8VmlydHVhbEhvc3Q+
IGFuZCBMaXN0ZW4gZGlyZWN0aXZlcy4KIwpCaW5kQWRkcmVzcyAxMjcuMC4wLjEKCiMKIyBEeW5h
bWljIFNoYXJlZCBPYmplY3QgKERTTykgU3VwcG9ydAojCiMgVG8gYmUgYWJsZSB0byB1c2UgdGhl
IGZ1bmN0aW9uYWxpdHkgb2YgYSBtb2R1bGUgd2hpY2ggd2FzIGJ1aWx0IGFzIGEgRFNPIHlvdQoj
IGhhdmUgdG8gcGxhY2UgY29ycmVzcG9uZGluZyBgTG9hZE1vZHVsZScgbGluZXMgYXQgdGhpcyBs
b2NhdGlvbiBzbyB0aGUKIyBkaXJlY3RpdmVzIGNvbnRhaW5lZCBpbiBpdCBhcmUgYWN0dWFsbHkg
YXZhaWxhYmxlIF9iZWZvcmVfIHRoZXkgYXJlIHVzZWQuCiMgUGxlYXNlIHJlYWQgdGhlIGZpbGUg
aHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvZG9jcy9kc28uaHRtbCBmb3IgbW9yZQojIGRldGFpbHMg
YWJvdXQgdGhlIERTTyBtZWNoYW5pc20gYW5kIHJ1biBgaHR0cGQgLWwnIGZvciB0aGUgbGlzdCBv
ZiBhbHJlYWR5CiMgYnVpbHQtaW4gKHN0YXRpY2FsbHkgbGlua2VkIGFuZCB0aHVzIGFsd2F5cyBh
dmFpbGFibGUpIG1vZHVsZXMgaW4geW91ciBodHRwZAojIGJpbmFyeS4KIwojIE5vdGU6IFRoZSBv
cmRlciBpbiB3aGljaCBtb2R1bGVzIGFyZSBsb2FkZWQgaXMgaW1wb3J0YW50LiAgRG9uJ3QgY2hh
bmdlCiMgdGhlIG9yZGVyIGJlbG93IHdpdGhvdXQgZXhwZXJ0IGFkdmljZS4KIwojIEV4YW1wbGU6
CiMgTG9hZE1vZHVsZSBmb29fbW9kdWxlIGxpYmV4ZWMvbW9kX2Zvby5zbwpMb2FkTW9kdWxlIHZo
b3N0X2FsaWFzX21vZHVsZSBsaWIvYXBhY2hlL21vZF92aG9zdF9hbGlhcy5kbGwKTG9hZE1vZHVs
ZSBlbnZfbW9kdWxlICAgICAgICAgbGliL2FwYWNoZS9tb2RfZW52LmRsbApMb2FkTW9kdWxlIGNv
bmZpZ19sb2dfbW9kdWxlICBsaWIvYXBhY2hlL21vZF9sb2dfY29uZmlnLmRsbApMb2FkTW9kdWxl
IG1pbWVfbWFnaWNfbW9kdWxlICBsaWIvYXBhY2hlL21vZF9taW1lX21hZ2ljLmRsbApMb2FkTW9k
dWxlIG1pbWVfbW9kdWxlICAgICAgICBsaWIvYXBhY2hlL21vZF9taW1lLmRsbApMb2FkTW9kdWxl
IG5lZ290aWF0aW9uX21vZHVsZSBsaWIvYXBhY2hlL21vZF9uZWdvdGlhdGlvbi5kbGwKTG9hZE1v
ZHVsZSBzdGF0dXNfbW9kdWxlICAgICAgbGliL2FwYWNoZS9tb2Rfc3RhdHVzLmRsbApMb2FkTW9k
dWxlIGluZm9fbW9kdWxlICAgICAgICBsaWIvYXBhY2hlL21vZF9pbmZvLmRsbApMb2FkTW9kdWxl
IGluY2x1ZGVzX21vZHVsZSAgICBsaWIvYXBhY2hlL21vZF9pbmNsdWRlLmRsbApMb2FkTW9kdWxl
IGF1dG9pbmRleF9tb2R1bGUgICBsaWIvYXBhY2hlL21vZF9hdXRvaW5kZXguZGxsCkxvYWRNb2R1
bGUgZGlyX21vZHVsZSAgICAgICAgIGxpYi9hcGFjaGUvbW9kX2Rpci5kbGwKTG9hZE1vZHVsZSBj
Z2lfbW9kdWxlICAgICAgICAgbGliL2FwYWNoZS9tb2RfY2dpLmRsbApMb2FkTW9kdWxlIGFzaXNf
bW9kdWxlICAgICAgICBsaWIvYXBhY2hlL21vZF9hc2lzLmRsbApMb2FkTW9kdWxlIGltYXBfbW9k
dWxlICAgICAgICBsaWIvYXBhY2hlL21vZF9pbWFwLmRsbApMb2FkTW9kdWxlIGFjdGlvbl9tb2R1
bGUgICAgICBsaWIvYXBhY2hlL21vZF9hY3Rpb25zLmRsbApMb2FkTW9kdWxlIHNwZWxpbmdfbW9k
dWxlICAgICBsaWIvYXBhY2hlL21vZF9zcGVsaW5nLmRsbApMb2FkTW9kdWxlIHVzZXJkaXJfbW9k
dWxlICAgICBsaWIvYXBhY2hlL21vZF91c2VyZGlyLmRsbApMb2FkTW9kdWxlIGFsaWFzX21vZHVs
ZSAgICAgICBsaWIvYXBhY2hlL21vZF9hbGlhcy5kbGwKTG9hZE1vZHVsZSByZXdyaXRlX21vZHVs
ZSAgICAgbGliL2FwYWNoZS9tb2RfcmV3cml0ZS5kbGwKTG9hZE1vZHVsZSBhY2Nlc3NfbW9kdWxl
ICAgICAgbGliL2FwYWNoZS9tb2RfYWNjZXNzLmRsbApMb2FkTW9kdWxlIGF1dGhfbW9kdWxlICAg
ICAgICBsaWIvYXBhY2hlL21vZF9hdXRoLmRsbApMb2FkTW9kdWxlIGFub25fYXV0aF9tb2R1bGUg
ICBsaWIvYXBhY2hlL21vZF9hdXRoX2Fub24uZGxsCkxvYWRNb2R1bGUgZGJtX2F1dGhfbW9kdWxl
ICAgIGxpYi9hcGFjaGUvbW9kX2F1dGhfZGJtLmRsbApMb2FkTW9kdWxlIGRpZ2VzdF9tb2R1bGUg
ICAgICBsaWIvYXBhY2hlL21vZF9kaWdlc3QuZGxsCkxvYWRNb2R1bGUgcHJveHlfbW9kdWxlICAg
ICAgIGxpYi9hcGFjaGUvbGlicHJveHkuZGxsCkxvYWRNb2R1bGUgY2Vybl9tZXRhX21vZHVsZSAg
IGxpYi9hcGFjaGUvbW9kX2Nlcm5fbWV0YS5kbGwKTG9hZE1vZHVsZSBleHBpcmVzX21vZHVsZSAg
ICAgbGliL2FwYWNoZS9tb2RfZXhwaXJlcy5kbGwKTG9hZE1vZHVsZSBoZWFkZXJzX21vZHVsZSAg
ICAgbGliL2FwYWNoZS9tb2RfaGVhZGVycy5kbGwKTG9hZE1vZHVsZSB1c2VydHJhY2tfbW9kdWxl
ICAgbGliL2FwYWNoZS9tb2RfdXNlcnRyYWNrLmRsbApMb2FkTW9kdWxlIHVuaXF1ZV9pZF9tb2R1
bGUgICBsaWIvYXBhY2hlL21vZF91bmlxdWVfaWQuZGxsCkxvYWRNb2R1bGUgc2V0ZW52aWZfbW9k
dWxlICAgIGxpYi9hcGFjaGUvbW9kX3NldGVudmlmLmRsbApMb2FkTW9kdWxlIHBocDRfbW9kdWxl
ICAgICAgICBsaWIvYXBhY2hlL2xpYnBocDQuZGxsCgojICBSZWNvbnN0cnVjdGlvbiBvZiB0aGUg
Y29tcGxldGUgbW9kdWxlIGxpc3QgZnJvbSBhbGwgYXZhaWxhYmxlIG1vZHVsZXMKIyAgKHN0YXRp
YyBhbmQgc2hhcmVkIG9uZXMpIHRvIGFjaGlldmUgY29ycmVjdCBtb2R1bGUgZXhlY3V0aW9uIG9y
ZGVyLgojICBbV0hFTkVWRVIgWU9VIENIQU5HRSBUSEUgTE9BRE1PRFVMRSBTRUNUSU9OIEFCT1ZF
IFVQREFURSBUSElTLCBUT09dCkNsZWFyTW9kdWxlTGlzdApBZGRNb2R1bGUgbW9kX3Zob3N0X2Fs
aWFzLmMKQWRkTW9kdWxlIG1vZF9lbnYuYwpBZGRNb2R1bGUgbW9kX2xvZ19jb25maWcuYwpBZGRN
b2R1bGUgbW9kX21pbWVfbWFnaWMuYwpBZGRNb2R1bGUgbW9kX21pbWUuYwpBZGRNb2R1bGUgbW9k
X25lZ290aWF0aW9uLmMKQWRkTW9kdWxlIG1vZF9zdGF0dXMuYwpBZGRNb2R1bGUgbW9kX2luZm8u
YwpBZGRNb2R1bGUgbW9kX2luY2x1ZGUuYwpBZGRNb2R1bGUgbW9kX2F1dG9pbmRleC5jCkFkZE1v
ZHVsZSBtb2RfZGlyLmMKQWRkTW9kdWxlIG1vZF9jZ2kuYwpBZGRNb2R1bGUgbW9kX2FzaXMuYwpB
ZGRNb2R1bGUgbW9kX2ltYXAuYwpBZGRNb2R1bGUgbW9kX2FjdGlvbnMuYwpBZGRNb2R1bGUgbW9k
X3NwZWxpbmcuYwpBZGRNb2R1bGUgbW9kX3VzZXJkaXIuYwpBZGRNb2R1bGUgbW9kX2FsaWFzLmMK
QWRkTW9kdWxlIG1vZF9yZXdyaXRlLmMKQWRkTW9kdWxlIG1vZF9hY2Nlc3MuYwpBZGRNb2R1bGUg
bW9kX2F1dGguYwpBZGRNb2R1bGUgbW9kX2F1dGhfYW5vbi5jCkFkZE1vZHVsZSBtb2RfYXV0aF9k
Ym0uYwpBZGRNb2R1bGUgbW9kX2RpZ2VzdC5jCkFkZE1vZHVsZSBtb2RfcHJveHkuYwpBZGRNb2R1
bGUgbW9kX2Nlcm5fbWV0YS5jCkFkZE1vZHVsZSBtb2RfZXhwaXJlcy5jCkFkZE1vZHVsZSBtb2Rf
aGVhZGVycy5jCkFkZE1vZHVsZSBtb2RfdXNlcnRyYWNrLmMKQWRkTW9kdWxlIG1vZF91bmlxdWVf
aWQuYwpBZGRNb2R1bGUgbW9kX3NvLmMKQWRkTW9kdWxlIG1vZF9zZXRlbnZpZi5jCkFkZE1vZHVs
ZSBtb2RfcGhwNC5jCgojCiMgRXh0ZW5kZWRTdGF0dXMgY29udHJvbHMgd2hldGhlciBBcGFjaGUg
d2lsbCBnZW5lcmF0ZSAiZnVsbCIgc3RhdHVzCiMgaW5mb3JtYXRpb24gKEV4dGVuZGVkU3RhdHVz
IE9uKSBvciBqdXN0IGJhc2ljIGluZm9ybWF0aW9uIChFeHRlbmRlZFN0YXR1cwojIE9mZikgd2hl
biB0aGUgInNlcnZlci1zdGF0dXMiIGhhbmRsZXIgaXMgY2FsbGVkLiBUaGUgZGVmYXVsdCBpcyBP
ZmYuCiMKI0V4dGVuZGVkU3RhdHVzIE9uCgojIyMgU2VjdGlvbiAyOiAnTWFpbicgc2VydmVyIGNv
bmZpZ3VyYXRpb24KIwojIFRoZSBkaXJlY3RpdmVzIGluIHRoaXMgc2VjdGlvbiBzZXQgdXAgdGhl
IHZhbHVlcyB1c2VkIGJ5IHRoZSAnbWFpbicKIyBzZXJ2ZXIsIHdoaWNoIHJlc3BvbmRzIHRvIGFu
eSByZXF1ZXN0cyB0aGF0IGFyZW4ndCBoYW5kbGVkIGJ5IGEKIyA8VmlydHVhbEhvc3Q+IGRlZmlu
aXRpb24uICBUaGVzZSB2YWx1ZXMgYWxzbyBwcm92aWRlIGRlZmF1bHRzIGZvcgojIGFueSA8Vmly
dHVhbEhvc3Q+IGNvbnRhaW5lcnMgeW91IG1heSBkZWZpbmUgbGF0ZXIgaW4gdGhlIGZpbGUuCiMK
IyBBbGwgb2YgdGhlc2UgZGlyZWN0aXZlcyBtYXkgYXBwZWFyIGluc2lkZSA8VmlydHVhbEhvc3Q+
IGNvbnRhaW5lcnMsCiMgaW4gd2hpY2ggY2FzZSB0aGVzZSBkZWZhdWx0IHNldHRpbmdzIHdpbGwg
YmUgb3ZlcnJpZGRlbiBmb3IgdGhlCiMgdmlydHVhbCBob3N0IGJlaW5nIGRlZmluZWQuCiMKCiMK
IyBJZiB5b3VyIFNlcnZlclR5cGUgZGlyZWN0aXZlIChzZXQgZWFybGllciBpbiB0aGUgJ0dsb2Jh
bCBFbnZpcm9ubWVudCcKIyBzZWN0aW9uKSBpcyBzZXQgdG8gImluZXRkIiwgdGhlIG5leHQgZmV3
IGRpcmVjdGl2ZXMgZG9uJ3QgaGF2ZSBhbnkKIyBlZmZlY3Qgc2luY2UgdGhlaXIgc2V0dGluZ3Mg
YXJlIGRlZmluZWQgYnkgdGhlIGluZXRkIGNvbmZpZ3VyYXRpb24uCiMgU2tpcCBhaGVhZCB0byB0
aGUgU2VydmVyQWRtaW4gZGlyZWN0aXZlLgojCgojCiMgUG9ydDogVGhlIHBvcnQgdG8gd2hpY2gg
dGhlIHN0YW5kYWxvbmUgc2VydmVyIGxpc3RlbnMuIEZvcgojIHBvcnRzIDwgMTAyMywgeW91IHdp
bGwgbmVlZCBodHRwZCB0byBiZSBydW4gYXMgcm9vdCBpbml0aWFsbHkuCiMKUG9ydCA4MAoKIwoj
IElmIHlvdSB3aXNoIGh0dHBkIHRvIHJ1biBhcyBhIGRpZmZlcmVudCB1c2VyIG9yIGdyb3VwLCB5
b3UgbXVzdCBydW4KIyBodHRwZCBhcyByb290IGluaXRpYWxseSBhbmQgaXQgd2lsbCBzd2l0Y2gu
CiMKIyBVc2VyL0dyb3VwOiBUaGUgbmFtZSAob3IgI251bWJlcikgb2YgdGhlIHVzZXIvZ3JvdXAg
dG8gcnVuIGh0dHBkIGFzLgojICAuIE9uIFNDTyAoT0RUIDMpIHVzZSAiVXNlciBub3VzZXIiIGFu
ZCAiR3JvdXAgbm9ncm91cCIuCiMgIC4gT24gSFBVWCB5b3UgbWF5IG5vdCBiZSBhYmxlIHRvIHVz
ZSBzaGFyZWQgbWVtb3J5IGFzIG5vYm9keSwgYW5kIHRoZQojICAgIHN1Z2dlc3RlZCB3b3JrYXJv
dW5kIGlzIHRvIGNyZWF0ZSBhIHVzZXIgd3d3IGFuZCB1c2UgdGhhdCB1c2VyLgojICBOT1RFIHRo
YXQgc29tZSBrZXJuZWxzIHJlZnVzZSB0byBzZXRnaWQoR3JvdXApIG9yIHNlbWN0bChJUENfU0VU
KQojICB3aGVuIHRoZSB2YWx1ZSBvZiAodW5zaWduZWQpR3JvdXAgaXMgYWJvdmUgNjAwMDA7CiMg
IGRvbid0IHVzZSBHcm91cCAjLTEgb24gdGhlc2Ugc3lzdGVtcyEKIwojVXNlciBub2JvZHkKI0dy
b3VwICMtMQoKIwojIFNlcnZlckFkbWluOiBZb3VyIGFkZHJlc3MsIHdoZXJlIHByb2JsZW1zIHdp
dGggdGhlIHNlcnZlciBzaG91bGQgYmUKIyBlLW1haWxlZC4gIFRoaXMgYWRkcmVzcyBhcHBlYXJz
IG9uIHNvbWUgc2VydmVyLWdlbmVyYXRlZCBwYWdlcywgc3VjaAojIGFzIGVycm9yIGRvY3VtZW50
cy4KIwpTZXJ2ZXJBZG1pbiByYXZlbkBmaWRvLnVyYy5hYy5ydQoKIwojIFNlcnZlck5hbWUgYWxs
b3dzIHlvdSB0byBzZXQgYSBob3N0IG5hbWUgd2hpY2ggaXMgc2VudCBiYWNrIHRvIGNsaWVudHMg
Zm9yCiMgeW91ciBzZXJ2ZXIgaWYgaXQncyBkaWZmZXJlbnQgdGhhbiB0aGUgb25lIHRoZSBwcm9n
cmFtIHdvdWxkIGdldCAoaS5lLiwgdXNlCiMgInd3dyIgaW5zdGVhZCBvZiB0aGUgaG9zdCdzIHJl
YWwgbmFtZSkuCiMKIyBOb3RlOiBZb3UgY2Fubm90IGp1c3QgaW52ZW50IGhvc3QgbmFtZXMgYW5k
IGhvcGUgdGhleSB3b3JrLiBUaGUgbmFtZSB5b3UKIyBkZWZpbmUgaGVyZSBtdXN0IGJlIGEgdmFs
aWQgRE5TIG5hbWUgZm9yIHlvdXIgaG9zdC4gSWYgeW91IGRvbid0IHVuZGVyc3RhbmQKIyB0aGlz
LCBhc2sgeW91ciBuZXR3b3JrIGFkbWluaXN0cmF0b3IuCiMgSWYgeW91ciBob3N0IGRvZXNuJ3Qg
aGF2ZSBhIHJlZ2lzdGVyZWQgRE5TIG5hbWUsIGVudGVyIGl0cyBJUCBhZGRyZXNzIGhlcmUuCiMg
WW91IHdpbGwgaGF2ZSB0byBhY2Nlc3MgaXQgYnkgaXRzIGFkZHJlc3MgKGUuZy4sIGh0dHA6Ly8x
MjMuNDUuNjcuODkvKQojIGFueXdheSwgYW5kIHRoaXMgd2lsbCBtYWtlIHJlZGlyZWN0aW9ucyB3
b3JrIGluIGEgc2Vuc2libGUgd2F5LgojCiMgMTI3LjAuMC4xIGlzIHRoZSBUQ1AvSVAgbG9jYWwg
bG9vcC1iYWNrIGFkZHJlc3MsIG9mdGVuIG5hbWVkIGxvY2FsaG9zdC4gWW91cgojIG1hY2hpbmUg
YWx3YXlzIGtub3dzIGl0c2VsZiBieSB0aGlzIGFkZHJlc3MuIElmIHlvdSB1c2UgQXBhY2hlIHN0
cmljdGx5IGZvcgojIGxvY2FsIHRlc3RpbmcgYW5kIGRldmVsb3BtZW50LCB5b3UgbWF5IHVzZSAx
MjcuMC4wLjEgYXMgdGhlIHNlcnZlciBuYW1lLgojClNlcnZlck5hbWUgMTkyLjE2OC4xLjIKCiMK
IyBEb2N1bWVudFJvb3Q6IFRoZSBkaXJlY3Rvcnkgb3V0IG9mIHdoaWNoIHlvdSB3aWxsIHNlcnZl
IHlvdXIKIyBkb2N1bWVudHMuIEJ5IGRlZmF1bHQsIGFsbCByZXF1ZXN0cyBhcmUgdGFrZW4gZnJv
bSB0aGlzIGRpcmVjdG9yeSwgYnV0CiMgc3ltYm9saWMgbGlua3MgYW5kIGFsaWFzZXMgbWF5IGJl
IHVzZWQgdG8gcG9pbnQgdG8gb3RoZXIgbG9jYXRpb25zLgojCkRvY3VtZW50Um9vdCAiL3Zhci93
d3cvaHRkb2NzIgoKIwojIEVhY2ggZGlyZWN0b3J5IHRvIHdoaWNoIEFwYWNoZSBoYXMgYWNjZXNz
LCBjYW4gYmUgY29uZmlndXJlZCB3aXRoIHJlc3BlY3QKIyB0byB3aGljaCBzZXJ2aWNlcyBhbmQg
ZmVhdHVyZXMgYXJlIGFsbG93ZWQgYW5kL29yIGRpc2FibGVkIGluIHRoYXQKIyBkaXJlY3Rvcnkg
KGFuZCBpdHMgc3ViZGlyZWN0b3JpZXMpLgojCiMgRmlyc3QsIHdlIGNvbmZpZ3VyZSB0aGUgImRl
ZmF1bHQiIHRvIGJlIGEgdmVyeSByZXN0cmljdGl2ZSBzZXQgb2YKIyBwZXJtaXNzaW9ucy4KIwo8
RGlyZWN0b3J5IC8+CiAgICBPcHRpb25zIEZvbGxvd1N5bUxpbmtzCiMgICAgQWxsb3dPdmVycmlk
ZSBOb25lCiAgICBPcHRpb25zICtJbmNsdWRlcwo8L0RpcmVjdG9yeT4KCiMKIyBOb3RlIHRoYXQg
ZnJvbSB0aGlzIHBvaW50IGZvcndhcmQgeW91IG11c3Qgc3BlY2lmaWNhbGx5IGFsbG93CiMgcGFy
dGljdWxhciBmZWF0dXJlcyB0byBiZSBlbmFibGVkIC0gc28gaWYgc29tZXRoaW5nJ3Mgbm90IHdv
cmtpbmcgYXMKIyB5b3UgbWlnaHQgZXhwZWN0LCBtYWtlIHN1cmUgdGhhdCB5b3UgaGF2ZSBzcGVj
aWZpY2FsbHkgZW5hYmxlZCBpdAojIGJlbG93LgojCgojCiMgVGhpcyBzaG91bGQgYmUgY2hhbmdl
ZCB0byB3aGF0ZXZlciB5b3Ugc2V0IERvY3VtZW50Um9vdCB0by4KIwo8RGlyZWN0b3J5ICIvdmFy
L3d3dy9odGRvY3MiPgoKIwojIFRoaXMgbWF5IGFsc28gYmUgIk5vbmUiLCAiQWxsIiwgb3IgYW55
IGNvbWJpbmF0aW9uIG9mICJJbmRleGVzIiwKIyAiSW5jbHVkZXMiLCAiRm9sbG93U3ltTGlua3Mi
LCAiRXhlY0NHSSIsIG9yICJNdWx0aVZpZXdzIi4KIwojIE5vdGUgdGhhdCAiTXVsdGlWaWV3cyIg
bXVzdCBiZSBuYW1lZCAqZXhwbGljaXRseSogLS0tICJPcHRpb25zIEFsbCIKIyBkb2Vzbid0IGdp
dmUgaXQgdG8geW91LgojCiAgICBPcHRpb25zIEluZGV4ZXMgRm9sbG93U3ltTGlua3MgTXVsdGlW
aWV3cwoKIwojIFRoaXMgY29udHJvbHMgd2hpY2ggb3B0aW9ucyB0aGUgLmh0YWNjZXNzIGZpbGVz
IGluIGRpcmVjdG9yaWVzIGNhbgojIG92ZXJyaWRlLiBDYW4gYWxzbyBiZSAiQWxsIiwgb3IgYW55
IGNvbWJpbmF0aW9uIG9mICJPcHRpb25zIiwgIkZpbGVJbmZvIiwKIyAiQXV0aENvbmZpZyIsIGFu
ZCAiTGltaXQiCiMKIyAgICBBbGxvd092ZXJyaWRlIE5vbmUKCiMKIyBDb250cm9scyB3aG8gY2Fu
IGdldCBzdHVmZiBmcm9tIHRoaXMgc2VydmVyLgojCiAgICBPcmRlciBhbGxvdyxkZW55CiAgICBB
bGxvdyBmcm9tIGFsbAo8L0RpcmVjdG9yeT4KCiMKIyBVc2VyRGlyOiBUaGUgbmFtZSBvZiB0aGUg
ZGlyZWN0b3J5IHdoaWNoIGlzIGFwcGVuZGVkIG9udG8gYSB1c2VyJ3MgaG9tZQojIGRpcmVjdG9y
eSBpZiBhIH51c2VyIHJlcXVlc3QgaXMgcmVjZWl2ZWQuCiMKPElmTW9kdWxlIG1vZF91c2VyZGly
LmM+CiAgICBVc2VyRGlyIHB1YmxpY19odG1sCjwvSWZNb2R1bGU+CgojCiMgQ29udHJvbCBhY2Nl
c3MgdG8gVXNlckRpciBkaXJlY3Rvcmllcy4gIFRoZSBmb2xsb3dpbmcgaXMgYW4gZXhhbXBsZQoj
IGZvciBhIHNpdGUgd2hlcmUgdGhlc2UgZGlyZWN0b3JpZXMgYXJlIHJlc3RyaWN0ZWQgdG8gcmVh
ZC1vbmx5LgojCiM8RGlyZWN0b3J5IC9ob21lLyovcHVibGljX2h0bWw+CiMgICAgQWxsb3dPdmVy
cmlkZSBGaWxlSW5mbyBBdXRoQ29uZmlnIExpbWl0CiMgICAgT3B0aW9ucyBNdWx0aVZpZXdzIElu
ZGV4ZXMgU3ltTGlua3NJZk93bmVyTWF0Y2ggSW5jbHVkZXNOb0V4ZWMKIyAgICA8TGltaXQgR0VU
IFBPU1QgT1BUSU9OUyBQUk9QRklORD4KIyAgICAgICAgT3JkZXIgYWxsb3csZGVueQojICAgICAg
ICBBbGxvdyBmcm9tIGFsbAojICAgIDwvTGltaXQ+CiMgICAgPExpbWl0RXhjZXB0IEdFVCBQT1NU
IE9QVElPTlMgUFJPUEZJTkQ+CiMgICAgICAgIE9yZGVyIGRlbnksYWxsb3cKIyAgICAgICAgRGVu
eSBmcm9tIGFsbAojICAgIDwvTGltaXRFeGNlcHQ+CiM8L0RpcmVjdG9yeT4KCiMKIyBEaXJlY3Rv
cnlJbmRleDogTmFtZSBvZiB0aGUgZmlsZSBvciBmaWxlcyB0byB1c2UgYXMgYSBwcmUtd3JpdHRl
biBIVE1MCiMgZGlyZWN0b3J5IGluZGV4LiAgU2VwYXJhdGUgbXVsdGlwbGUgZW50cmllcyB3aXRo
IHNwYWNlcy4KIwo8SWZNb2R1bGUgbW9kX2Rpci5jPgogICAgPElmTW9kdWxlIG1vZF9waHAzLmM+
CiAgICAgICAgPElmTW9kdWxlIG1vZF9waHA0LmM+CiAgICAgICAgICAgIERpcmVjdG9yeUluZGV4
IGluZGV4LnBocCBpbmRleC5waHAzIGluZGV4Lmh0bWwKICAgICAgICA8L0lmTW9kdWxlPgogICAg
ICAgIDxJZk1vZHVsZSAhbW9kX3BocDQuYz4KICAgICAgICAgICAgRGlyZWN0b3J5SW5kZXggaW5k
ZXgucGhwMyBpbmRleC5odG1sCiAgICAgICAgPC9JZk1vZHVsZT4KICAgIDwvSWZNb2R1bGU+CiAg
ICA8SWZNb2R1bGUgIW1vZF9waHAzLmM+CiAgICAgICAgPElmTW9kdWxlIG1vZF9waHA0LmM+CiAg
ICAgICAgICAgIERpcmVjdG9yeUluZGV4IGluZGV4LnBocCBpbmRleC5odG1sCiAgICAgICAgPC9J
Zk1vZHVsZT4KICAgICAgICA8SWZNb2R1bGUgIW1vZF9waHA0LmM+CiAgICAgICAgICAgIERpcmVj
dG9yeUluZGV4IGluZGV4Lmh0bWwKICAgICAgICA8L0lmTW9kdWxlPgogICAgPC9JZk1vZHVsZT4K
PC9JZk1vZHVsZT4KCiMKIyBBY2Nlc3NGaWxlTmFtZTogVGhlIG5hbWUgb2YgdGhlIGZpbGUgdG8g
bG9vayBmb3IgaW4gZWFjaCBkaXJlY3RvcnkKIyBmb3IgYWNjZXNzIGNvbnRyb2wgaW5mb3JtYXRp
b24uCiMKQWNjZXNzRmlsZU5hbWUgLmh0YWNjZXNzCgojCiMgVGhlIGZvbGxvd2luZyBsaW5lcyBw
cmV2ZW50IC5odGFjY2VzcyBmaWxlcyBmcm9tIGJlaW5nIHZpZXdlZCBieQojIFdlYiBjbGllbnRz
LiAgU2luY2UgLmh0YWNjZXNzIGZpbGVzIG9mdGVuIGNvbnRhaW4gYXV0aG9yaXphdGlvbgojIGlu
Zm9ybWF0aW9uLCBhY2Nlc3MgaXMgZGlzYWxsb3dlZCBmb3Igc2VjdXJpdHkgcmVhc29ucy4gIENv
bW1lbnQKIyB0aGVzZSBsaW5lcyBvdXQgaWYgeW91IHdhbnQgV2ViIHZpc2l0b3JzIHRvIHNlZSB0
aGUgY29udGVudHMgb2YKIyAuaHRhY2Nlc3MgZmlsZXMuICBJZiB5b3UgY2hhbmdlIHRoZSBBY2Nl
c3NGaWxlTmFtZSBkaXJlY3RpdmUgYWJvdmUsCiMgYmUgc3VyZSB0byBtYWtlIHRoZSBjb3JyZXNw
b25kaW5nIGNoYW5nZXMgaGVyZS4KIwojIEFsc28sIGZvbGtzIHRlbmQgdG8gdXNlIG5hbWVzIHN1
Y2ggYXMgLmh0cGFzc3dkIGZvciBwYXNzd29yZAojIGZpbGVzLCBzbyB0aGlzIHdpbGwgcHJvdGVj
dCB0aG9zZSBhcyB3ZWxsLgojCjxGaWxlcyB+ICJeXC5odCI+CiAgICBPcmRlciBhbGxvdyxkZW55
CiAgICBEZW55IGZyb20gYWxsCiAgICBTYXRpc2Z5IEFsbAo8L0ZpbGVzPgoKIwojIENhY2hlTmVn
b3RpYXRlZERvY3M6IEJ5IGRlZmF1bHQsIEFwYWNoZSBzZW5kcyAiUHJhZ21hOiBuby1jYWNoZSIg
d2l0aCBlYWNoCiMgZG9jdW1lbnQgdGhhdCB3YXMgbmVnb3RpYXRlZCBvbiB0aGUgYmFzaXMgb2Yg
Y29udGVudC4gVGhpcyBhc2tzIHByb3h5CiMgc2VydmVycyBub3QgdG8gY2FjaGUgdGhlIGRvY3Vt
ZW50LiBVbmNvbW1lbnRpbmcgdGhlIGZvbGxvd2luZyBsaW5lIGRpc2FibGVzCiMgdGhpcyBiZWhh
dmlvciwgYW5kIHByb3hpZXMgd2lsbCBiZSBhbGxvd2VkIHRvIGNhY2hlIHRoZSBkb2N1bWVudHMu
CiMKI0NhY2hlTmVnb3RpYXRlZERvY3MKCiMKIyBVc2VDYW5vbmljYWxOYW1lOiAgKG5ldyBmb3Ig
MS4zKSAgV2l0aCB0aGlzIHNldHRpbmcgdHVybmVkIG9uLCB3aGVuZXZlcgojIEFwYWNoZSBuZWVk
cyB0byBjb25zdHJ1Y3QgYSBzZWxmLXJlZmVyZW5jaW5nIFVSTCAoYSBVUkwgdGhhdCByZWZlcnMg
YmFjawojIHRvIHRoZSBzZXJ2ZXIgdGhlIHJlc3BvbnNlIGlzIGNvbWluZyBmcm9tKSBpdCB3aWxs
IHVzZSBTZXJ2ZXJOYW1lIGFuZAojIFBvcnQgdG8gZm9ybSBhICJjYW5vbmljYWwiIG5hbWUuICBX
aXRoIHRoaXMgc2V0dGluZyBvZmYsIEFwYWNoZSB3aWxsCiMgdXNlIHRoZSBob3N0bmFtZTpwb3J0
IHRoYXQgdGhlIGNsaWVudCBzdXBwbGllZCwgd2hlbiBwb3NzaWJsZS4gIFRoaXMKIyBhbHNvIGFm
ZmVjdHMgU0VSVkVSX05BTUUgYW5kIFNFUlZFUl9QT1JUIGluIENHSSBzY3JpcHRzLgojClVzZUNh
bm9uaWNhbE5hbWUgT24KCiMKIyBUeXBlc0NvbmZpZyBkZXNjcmliZXMgd2hlcmUgdGhlIG1pbWUu
dHlwZXMgZmlsZSAob3IgZXF1aXZhbGVudCkgaXMKIyB0byBiZSBmb3VuZC4KIwo8SWZNb2R1bGUg
bW9kX21pbWUuYz4KICAgIFR5cGVzQ29uZmlnIC9ldGMvYXBhY2hlL21pbWUudHlwZXMKPC9JZk1v
ZHVsZT4KCiMKIyBEZWZhdWx0VHlwZSBpcyB0aGUgZGVmYXVsdCBNSU1FIHR5cGUgdGhlIHNlcnZl
ciB3aWxsIHVzZSBmb3IgYSBkb2N1bWVudAojIGlmIGl0IGNhbm5vdCBvdGhlcndpc2UgZGV0ZXJt
aW5lIG9uZSwgc3VjaCBhcyBmcm9tIGZpbGVuYW1lIGV4dGVuc2lvbnMuCiMgSWYgeW91ciBzZXJ2
ZXIgY29udGFpbnMgbW9zdGx5IHRleHQgb3IgSFRNTCBkb2N1bWVudHMsICJ0ZXh0L3BsYWluIiBp
cwojIGEgZ29vZCB2YWx1ZS4gIElmIG1vc3Qgb2YgeW91ciBjb250ZW50IGlzIGJpbmFyeSwgc3Vj
aCBhcyBhcHBsaWNhdGlvbnMKIyBvciBpbWFnZXMsIHlvdSBtYXkgd2FudCB0byB1c2UgImFwcGxp
Y2F0aW9uL29jdGV0LXN0cmVhbSIgaW5zdGVhZCB0bwojIGtlZXAgYnJvd3NlcnMgZnJvbSB0cnlp
bmcgdG8gZGlzcGxheSBiaW5hcnkgZmlsZXMgYXMgdGhvdWdoIHRoZXkgYXJlCiMgdGV4dC4KIwpE
ZWZhdWx0VHlwZSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCiMKIyBUaGUgbW9kX21pbWVfbWFn
aWMgbW9kdWxlIGFsbG93cyB0aGUgc2VydmVyIHRvIHVzZSB2YXJpb3VzIGhpbnRzIGZyb20gdGhl
CiMgY29udGVudHMgb2YgdGhlIGZpbGUgaXRzZWxmIHRvIGRldGVybWluZSBpdHMgdHlwZS4gIFRo
ZSBNSU1FTWFnaWNGaWxlCiMgZGlyZWN0aXZlIHRlbGxzIHRoZSBtb2R1bGUgd2hlcmUgdGhlIGhp
bnQgZGVmaW5pdGlvbnMgYXJlIGxvY2F0ZWQuCiMgbW9kX21pbWVfbWFnaWMgaXMgbm90IHBhcnQg
b2YgdGhlIGRlZmF1bHQgc2VydmVyICh5b3UgaGF2ZSB0byBhZGQKIyBpdCB5b3Vyc2VsZiB3aXRo
IGEgTG9hZE1vZHVsZSBbc2VlIHRoZSBEU08gcGFyYWdyYXBoIGluIHRoZSAnR2xvYmFsCiMgRW52
aXJvbm1lbnQnIHNlY3Rpb25dLCBvciByZWNvbXBpbGUgdGhlIHNlcnZlciBhbmQgaW5jbHVkZSBt
b2RfbWltZV9tYWdpYwojIGFzIHBhcnQgb2YgdGhlIGNvbmZpZ3VyYXRpb24pLCBzbyBpdCdzIGVu
Y2xvc2VkIGluIGFuIDxJZk1vZHVsZT4gY29udGFpbmVyLgojIFRoaXMgbWVhbnMgdGhhdCB0aGUg
TUlNRU1hZ2ljRmlsZSBkaXJlY3RpdmUgd2lsbCBvbmx5IGJlIHByb2Nlc3NlZCBpZiB0aGUKIyBt
b2R1bGUgaXMgcGFydCBvZiB0aGUgc2VydmVyLgojCjxJZk1vZHVsZSBtb2RfbWltZV9tYWdpYy5j
PgogICAgTUlNRU1hZ2ljRmlsZSAvZXRjL2FwYWNoZS9tYWdpYwo8L0lmTW9kdWxlPgoKIwojIEhv
c3RuYW1lTG9va3VwczogTG9nIHRoZSBuYW1lcyBvZiBjbGllbnRzIG9yIGp1c3QgdGhlaXIgSVAg
YWRkcmVzc2VzCiMgZS5nLiwgd3d3LmFwYWNoZS5vcmcgKG9uKSBvciAyMDQuNjIuMTI5LjEzMiAo
b2ZmKS4KIyBUaGUgZGVmYXVsdCBpcyBvZmYgYmVjYXVzZSBpdCdkIGJlIG92ZXJhbGwgYmV0dGVy
IGZvciB0aGUgbmV0IGlmIHBlb3BsZQojIGhhZCB0byBrbm93aW5nbHkgdHVybiB0aGlzIGZlYXR1
cmUgb24sIHNpbmNlIGVuYWJsaW5nIGl0IG1lYW5zIHRoYXQKIyBlYWNoIGNsaWVudCByZXF1ZXN0
IHdpbGwgcmVzdWx0IGluIEFUIExFQVNUIG9uZSBsb29rdXAgcmVxdWVzdCB0byB0aGUKIyBuYW1l
c2VydmVyLgojCkhvc3RuYW1lTG9va3VwcyBPZmYKCiMKIyBFcnJvckxvZzogVGhlIGxvY2F0aW9u
IG9mIHRoZSBlcnJvciBsb2cgZmlsZS4KIyBJZiB5b3UgZG8gbm90IHNwZWNpZnkgYW4gRXJyb3JM
b2cgZGlyZWN0aXZlIHdpdGhpbiBhIDxWaXJ0dWFsSG9zdD4KIyBjb250YWluZXIsIGVycm9yIG1l
c3NhZ2VzIHJlbGF0aW5nIHRvIHRoYXQgdmlydHVhbCBob3N0IHdpbGwgYmUKIyBsb2dnZWQgaGVy
ZS4gIElmIHlvdSAqZG8qIGRlZmluZSBhbiBlcnJvciBsb2dmaWxlIGZvciBhIDxWaXJ0dWFsSG9z
dD4KIyBjb250YWluZXIsIHRoYXQgaG9zdCdzIGVycm9ycyB3aWxsIGJlIGxvZ2dlZCB0aGVyZSBh
bmQgbm90IGhlcmUuCiMKRXJyb3JMb2cgL3Zhci9sb2cvaHR0cGQvYXBhY2hlL2Vycm9ycy5sb2cK
CiMKIyBMb2dMZXZlbDogQ29udHJvbCB0aGUgbnVtYmVyIG9mIG1lc3NhZ2VzIGxvZ2dlZCB0byB0
aGUgZXJyb3JfbG9nLgojIFBvc3NpYmxlIHZhbHVlcyBpbmNsdWRlOiBkZWJ1ZywgaW5mbywgbm90
aWNlLCB3YXJuLCBlcnJvciwgY3JpdCwKIyBhbGVydCwgZW1lcmcuCiMKTG9nTGV2ZWwgd2FybgoK
IwojIFRoZSBmb2xsb3dpbmcgZGlyZWN0aXZlcyBkZWZpbmUgc29tZSBmb3JtYXQgbmlja25hbWVz
IGZvciB1c2Ugd2l0aAojIGEgQ3VzdG9tTG9nIGRpcmVjdGl2ZSAoc2VlIGJlbG93KS4KIwpMb2dG
b3JtYXQgIiVoICVsICV1ICV0IFwiJXJcIiAlPnMgJWIgXCIle1JlZmVyZXJ9aVwiIFwiJXtVc2Vy
LUFnZW50fWlcIiIgY29tYmluZWQKTG9nRm9ybWF0ICIlaCAlbCAldSAldCBcIiVyXCIgJT5zICVi
IiBjb21tb24KTG9nRm9ybWF0ICIle1JlZmVyZXJ9aSAtPiAlVSIgcmVmZXJlcgpMb2dGb3JtYXQg
IiV7VXNlci1hZ2VudH1pIiBhZ2VudAoKIwojIFRoZSBsb2NhdGlvbiBhbmQgZm9ybWF0IG9mIHRo
ZSBhY2Nlc3MgbG9nZmlsZSAoQ29tbW9uIExvZ2ZpbGUgRm9ybWF0KS4KIyBJZiB5b3UgZG8gbm90
IGRlZmluZSBhbnkgYWNjZXNzIGxvZ2ZpbGVzIHdpdGhpbiBhIDxWaXJ0dWFsSG9zdD4KIyBjb250
YWluZXIsIHRoZXkgd2lsbCBiZSBsb2dnZWQgaGVyZS4gIENvbnRyYXJpd2lzZSwgaWYgeW91ICpk
byoKIyBkZWZpbmUgcGVyLTxWaXJ0dWFsSG9zdD4gYWNjZXNzIGxvZ2ZpbGVzLCB0cmFuc2FjdGlv
bnMgd2lsbCBiZQojIGxvZ2dlZCB0aGVyZWluIGFuZCAqbm90KiBpbiB0aGlzIGZpbGUuCiMKQ3Vz
dG9tTG9nIC92YXIvbG9nL2h0dHBkL2FwYWNoZS9hY2Nlc3MubG9nIGNvbW1vbgoKIwojIElmIHlv
dSB3b3VsZCBsaWtlIHRvIGhhdmUgYWdlbnQgYW5kIHJlZmVyZXIgbG9nZmlsZXMsIHVuY29tbWVu
dCB0aGUKIyBmb2xsb3dpbmcgZGlyZWN0aXZlcy4KIwojQ3VzdG9tTG9nIC92YXIvbG9nL2FwYWNo
ZS9yZWZlcmVyX2xvZyByZWZlcmVyCiNDdXN0b21Mb2cgL3Zhci9sb2cvYXBhY2hlL2FnZW50X2xv
ZyBhZ2VudAoKIwojIElmIHlvdSBwcmVmZXIgYSBzaW5nbGUgbG9nZmlsZSB3aXRoIGFjY2Vzcywg
YWdlbnQsIGFuZCByZWZlcmVyIGluZm9ybWF0aW9uCiMgKENvbWJpbmVkIExvZ2ZpbGUgRm9ybWF0
KSB5b3UgY2FuIHVzZSB0aGUgZm9sbG93aW5nIGRpcmVjdGl2ZS4KIwojQ3VzdG9tTG9nIC92YXIv
bG9nL2FwYWNoZS9hY2Nlc3NfbG9nIGNvbWJpbmVkCgojCiMgT3B0aW9uYWxseSBhZGQgYSBsaW5l
IGNvbnRhaW5pbmcgdGhlIHNlcnZlciB2ZXJzaW9uIGFuZCB2aXJ0dWFsIGhvc3QKIyBuYW1lIHRv
IHNlcnZlci1nZW5lcmF0ZWQgcGFnZXMgKGVycm9yIGRvY3VtZW50cywgRlRQIGRpcmVjdG9yeSBs
aXN0aW5ncywKIyBtb2Rfc3RhdHVzIGFuZCBtb2RfaW5mbyBvdXRwdXQgZXRjLiwgYnV0IG5vdCBD
R0kgZ2VuZXJhdGVkIGRvY3VtZW50cykuCiMgU2V0IHRvICJFTWFpbCIgdG8gYWxzbyBpbmNsdWRl
IGEgbWFpbHRvOiBsaW5rIHRvIHRoZSBTZXJ2ZXJBZG1pbi4KIyBTZXQgdG8gb25lIG9mOiAgT24g
fCBPZmYgfCBFTWFpbAojClNlcnZlclNpZ25hdHVyZSBPbgoKIyBFQkNESUMgY29uZmlndXJhdGlv
bjoKIyAob25seSBmb3IgbWFpbmZyYW1lcyB1c2luZyB0aGUgRUJDRElDIGNvZGVzZXQsIGN1cnJl
bnRseSBvbmUgb2Y6CiMgRnVqaXRzdS1TaWVtZW5zJyBCUzIwMDAvT1NELCBJQk0ncyBPUy8zOTAg
YW5kIElCTSdzIFRQRikhIQojIFRoZSBmb2xsb3dpbmcgZGVmYXVsdCBjb25maWd1cmF0aW9uIGFz
c3VtZXMgdGhhdCAidGV4dCBmaWxlcyIKIyBhcmUgc3RvcmVkIGluIEVCQ0RJQyAoc28gdGhhdCB5
b3UgY2FuIG9wZXJhdGUgb24gdGhlbSB1c2luZyB0aGUKIyBub3JtYWwgUE9TSVggdG9vbHMgbGlr
ZSBncmVwIGFuZCBzb3J0KSB3aGlsZSAiYmluYXJ5IGZpbGVzIiBhcmUKIyBzdG9yZWQgd2l0aCBp
ZGVudGljYWwgb2N0ZXRzIGFzIG9uIGFuIEFTQ0lJIG1hY2hpbmUuCiMKIyBUaGUgZGlyZWN0aXZl
cyBhcmUgZXZhbHVhdGVkIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBvcmRlciwgd2l0aAojIHRoZSBF
QkNESUNDb252ZXJ0IGRpcmVjdGl2ZXMgYXBwbGllZCBiZWZvcmUgRUJDRElDQ29udmVydEJ5VHlw
ZS4KIwojIElmIHlvdSB3YW50IHRvIGhhdmUgQVNDSUkgSFRNTCBkb2N1bWVudHMgYW5kIEVCQ0RJ
QyBIVE1MIGRvY3VtZW50cwojIGF0IHRoZSBzYW1lIHRpbWUsIHlvdSBjYW4gdXNlIHRoZSBmaWxl
IGV4dGVuc2lvbiB0byBmb3JjZQojIGNvbnZlcnNpb24gb2ZmIGZvciB0aGUgQVNDSUkgZG9jdW1l
bnRzOgojID4gQWRkVHlwZSAgICAgICB0ZXh0L2h0bWwgLmFodG1sCiMgPiBFQkNESUNDb252ZXJ0
IE9mZj1Jbk91dCAuYWh0bWwKIwojIEVCQ0RJQ0NvbnZlcnRCeVR5cGUgIE9uPUluT3V0IHRleHQv
KiBtZXNzYWdlLyogbXVsdGlwYXJ0LyoKIyBFQkNESUNDb252ZXJ0QnlUeXBlICBPbj1JbiAgICBh
cHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQKIyBFQkNESUNDb252ZXJ0QnlUeXBlICBP
bj1Jbk91dCBhcHBsaWNhdGlvbi9wb3N0c2NyaXB0IG1vZGVsL3ZybWwKIyBFQkNESUNDb252ZXJ0
QnlUeXBlIE9mZj1Jbk91dCAqLyoKCgojCiMgQWxpYXNlczogQWRkIGhlcmUgYXMgbWFueSBhbGlh
c2VzIGFzIHlvdSBuZWVkICh3aXRoIG5vIGxpbWl0KS4gVGhlIGZvcm1hdCBpcwojIEFsaWFzIGZh
a2VuYW1lIHJlYWxuYW1lCiMKPElmTW9kdWxlIG1vZF9hbGlhcy5jPgoKICAgICMKICAgICMgTm90
ZSB0aGF0IGlmIHlvdSBpbmNsdWRlIGEgdHJhaWxpbmcgLyBvbiBmYWtlbmFtZSB0aGVuIHRoZSBz
ZXJ2ZXIgd2lsbAogICAgIyByZXF1aXJlIGl0IHRvIGJlIHByZXNlbnQgaW4gdGhlIFVSTC4gIFNv
ICIvaWNvbnMiIGlzbid0IGFsaWFzZWQgaW4gdGhpcwogICAgIyBleGFtcGxlLCBvbmx5ICIvaWNv
bnMvIi4gIElmIHRoZSBmYWtlbmFtZSBpcyBzbGFzaC10ZXJtaW5hdGVkLCB0aGVuIHRoZQogICAg
IyByZWFsbmFtZSBtdXN0IGFsc28gYmUgc2xhc2ggdGVybWluYXRlZCwgYW5kIGlmIHRoZSBmYWtl
bmFtZSBvbWl0cyB0aGUKICAgICMgdHJhaWxpbmcgc2xhc2gsIHRoZSByZWFsbmFtZSBtdXN0IGFs
c28gb21pdCBpdC4KICAgICMKICAgIEFsaWFzIC9pY29ucy8gIi92YXIvd3d3L2ljb25zLyIKCiAg
ICA8RGlyZWN0b3J5ICIvdmFyL3d3dy9pY29ucyI+CiAgICAgICAgT3B0aW9ucyBJbmRleGVzIE11
bHRpVmlld3MKICAgICAgICBBbGxvd092ZXJyaWRlIE5vbmUKICAgICAgICBPcmRlciBhbGxvdyxk
ZW55CiAgICAgICAgQWxsb3cgZnJvbSBhbGwKICAgIDwvRGlyZWN0b3J5PgoKICAgICMgVGhpcyBB
bGlhcyB3aWxsIHByb2plY3QgdGhlIG9uLWxpbmUgZG9jdW1lbnRhdGlvbiB0cmVlIHVuZGVyIC9t
YW51YWwvCiAgICAjIGV2ZW4gaWYgeW91IGNoYW5nZSB0aGUgRG9jdW1lbnRSb290LiBDb21tZW50
IGl0IGlmIHlvdSBkb24ndCB3YW50IHRvCiAgICAjIHByb3ZpZGUgYWNjZXNzIHRvIHRoZSBvbi1s
aW5lIGRvY3VtZW50YXRpb24uCiAgICAjCiAgICBBbGlhcyAvbWFudWFsLyAiL3Zhci93d3cvaHRk
b2NzL21hbnVhbC8iCgogICAgPERpcmVjdG9yeSAiL3Zhci93d3cvaHRkb2NzL21hbnVhbCI+CiAg
ICAgICAgT3B0aW9ucyBJbmRleGVzIEZvbGxvd1N5bWxpbmtzIE11bHRpVmlld3MKICAgICAgICBB
bGxvd092ZXJyaWRlIE5vbmUKICAgICAgICBPcmRlciBhbGxvdyxkZW55CiAgICAgICAgQWxsb3cg
ZnJvbSBhbGwKICAgIDwvRGlyZWN0b3J5PgoKICAgICMKICAgICMgU2NyaXB0QWxpYXM6IFRoaXMg
Y29udHJvbHMgd2hpY2ggZGlyZWN0b3JpZXMgY29udGFpbiBzZXJ2ZXIgc2NyaXB0cy4KICAgICMg
U2NyaXB0QWxpYXNlcyBhcmUgZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMgQWxpYXNlcywgZXhjZXB0
IHRoYXQKICAgICMgZG9jdW1lbnRzIGluIHRoZSByZWFsbmFtZSBkaXJlY3RvcnkgYXJlIHRyZWF0
ZWQgYXMgYXBwbGljYXRpb25zIGFuZAogICAgIyBydW4gYnkgdGhlIHNlcnZlciB3aGVuIHJlcXVl
c3RlZCByYXRoZXIgdGhhbiBhcyBkb2N1bWVudHMgc2VudCB0byB0aGUgY2xpZW50LgogICAgIyBU
aGUgc2FtZSBydWxlcyBhYm91dCB0cmFpbGluZyAiLyIgYXBwbHkgdG8gU2NyaXB0QWxpYXMgZGly
ZWN0aXZlcyBhcyB0bwogICAgIyBBbGlhcy4KICAgICMKICAgIFNjcmlwdEFsaWFzIC9jZ2ktYmlu
LyAiL3Zhci93d3cvY2dpLWJpbi8iCgogICAgIwogICAgIyAiL3Zhci93d3cvY2dpLWJpbiIgc2hv
dWxkIGJlIGNoYW5nZWQgdG8gd2hhdGV2ZXIgeW91ciBTY3JpcHRBbGlhc2VkCiAgICAjIENHSSBk
aXJlY3RvcnkgZXhpc3RzLCBpZiB5b3UgaGF2ZSB0aGF0IGNvbmZpZ3VyZWQuCiAgICAjCiAgICA8
RGlyZWN0b3J5ICIvdmFyL3d3dy9jZ2ktYmluIj4KICAgICAgICBBbGxvd092ZXJyaWRlIE5vbmUK
ICAgICAgICBPcHRpb25zICtFeGVjQ0dJCiAgICAgICAgT3JkZXIgYWxsb3csZGVueQogICAgICAg
IEFsbG93IGZyb20gYWxsCiAgICA8L0RpcmVjdG9yeT4KCjwvSWZNb2R1bGU+CiMgRW5kIG9mIGFs
aWFzZXMuCgojCiMgUmVkaXJlY3QgYWxsb3dzIHlvdSB0byB0ZWxsIGNsaWVudHMgYWJvdXQgZG9j
dW1lbnRzIHdoaWNoIHVzZWQgdG8gZXhpc3QgaW4KIyB5b3VyIHNlcnZlcidzIG5hbWVzcGFjZSwg
YnV0IGRvIG5vdCBhbnltb3JlLiBUaGlzIGFsbG93cyB5b3UgdG8gdGVsbCB0aGUKIyBjbGllbnRz
IHdoZXJlIHRvIGxvb2sgZm9yIHRoZSByZWxvY2F0ZWQgZG9jdW1lbnQuCiMgRm9ybWF0OiBSZWRp
cmVjdCBvbGQtVVJJIG5ldy1VUkwKIwoKIwojIERpcmVjdGl2ZXMgY29udHJvbGxpbmcgdGhlIGRp
c3BsYXkgb2Ygc2VydmVyLWdlbmVyYXRlZCBkaXJlY3RvcnkgbGlzdGluZ3MuCiMKPElmTW9kdWxl
IG1vZF9hdXRvaW5kZXguYz4KCiAgICAjCiAgICAjIEZhbmN5SW5kZXhpbmcgaXMgd2hldGhlciB5
b3Ugd2FudCBmYW5jeSBkaXJlY3RvcnkgaW5kZXhpbmcgb3Igc3RhbmRhcmQKICAgICMKICAgIElu
ZGV4T3B0aW9ucyBGYW5jeUluZGV4aW5nCgogICAgIwogICAgIyBBZGRJY29uKiBkaXJlY3RpdmVz
IHRlbGwgdGhlIHNlcnZlciB3aGljaCBpY29uIHRvIHNob3cgZm9yIGRpZmZlcmVudAogICAgIyBm
aWxlcyBvciBmaWxlbmFtZSBleHRlbnNpb25zLiAgVGhlc2UgYXJlIG9ubHkgZGlzcGxheWVkIGZv
cgogICAgIyBGYW5jeUluZGV4ZWQgZGlyZWN0b3JpZXMuCiAgICAjCiAgICBBZGRJY29uQnlFbmNv
ZGluZyAoQ01QLC9pY29ucy9jb21wcmVzc2VkLmdpZikgeC1jb21wcmVzcyB4LWd6aXAKCiAgICBB
ZGRJY29uQnlUeXBlIChUWFQsL2ljb25zL3RleHQuZ2lmKSB0ZXh0LyoKICAgIEFkZEljb25CeVR5
cGUgKElNRywvaWNvbnMvaW1hZ2UyLmdpZikgaW1hZ2UvKgogICAgQWRkSWNvbkJ5VHlwZSAoU05E
LC9pY29ucy9zb3VuZDIuZ2lmKSBhdWRpby8qCiAgICBBZGRJY29uQnlUeXBlIChWSUQsL2ljb25z
L21vdmllLmdpZikgdmlkZW8vKgoKICAgIEFkZEljb24gL2ljb25zL2JpbmFyeS5naWYgLmJpbiAu
ZXhlCiAgICBBZGRJY29uIC9pY29ucy9iaW5oZXguZ2lmIC5ocXgKICAgIEFkZEljb24gL2ljb25z
L3Rhci5naWYgLnRhcgogICAgQWRkSWNvbiAvaWNvbnMvd29ybGQyLmdpZiAud3JsIC53cmwuZ3og
LnZybWwgLnZybSAuaXYKICAgIEFkZEljb24gL2ljb25zL2NvbXByZXNzZWQuZ2lmIC5aIC56IC50
Z3ogLmd6IC56aXAKICAgIEFkZEljb24gL2ljb25zL2EuZ2lmIC5wcyAuYWkgLmVwcwogICAgQWRk
SWNvbiAvaWNvbnMvbGF5b3V0LmdpZiAuaHRtbCAuc2h0bWwgLmh0bSAucGRmCiAgICBBZGRJY29u
IC9pY29ucy90ZXh0LmdpZiAudHh0CiAgICBBZGRJY29uIC9pY29ucy9jLmdpZiAuYwogICAgQWRk
SWNvbiAvaWNvbnMvcC5naWYgLnBsIC5weQogICAgQWRkSWNvbiAvaWNvbnMvZi5naWYgLmZvcgog
ICAgQWRkSWNvbiAvaWNvbnMvZHZpLmdpZiAuZHZpCiAgICBBZGRJY29uIC9pY29ucy91dWVuY29k
ZWQuZ2lmIC51dQogICAgQWRkSWNvbiAvaWNvbnMvc2NyaXB0LmdpZiAuY29uZiAuc2ggLnNoYXIg
LmNzaCAua3NoIC50Y2wKICAgIEFkZEljb24gL2ljb25zL3RleC5naWYgLnRleAogICAgQWRkSWNv
biAvaWNvbnMvYm9tYi5naWYgY29yZQoKICAgIEFkZEljb24gL2ljb25zL2JhY2suZ2lmIC4uCiAg
ICBBZGRJY29uIC9pY29ucy9oYW5kLnJpZ2h0LmdpZiBSRUFETUUKICAgIEFkZEljb24gL2ljb25z
L2ZvbGRlci5naWYgXl5ESVJFQ1RPUlleXgogICAgQWRkSWNvbiAvaWNvbnMvYmxhbmsuZ2lmIF5e
QkxBTktJQ09OXl4KCiAgICAjCiAgICAjIERlZmF1bHRJY29uIGlzIHdoaWNoIGljb24gdG8gc2hv
dyBmb3IgZmlsZXMgd2hpY2ggZG8gbm90IGhhdmUgYW4gaWNvbgogICAgIyBleHBsaWNpdGx5IHNl
dC4KICAgICMKICAgIERlZmF1bHRJY29uIC9pY29ucy91bmtub3duLmdpZgoKICAgICMKICAgICMg
QWRkRGVzY3JpcHRpb24gYWxsb3dzIHlvdSB0byBwbGFjZSBhIHNob3J0IGRlc2NyaXB0aW9uIGFm
dGVyIGEgZmlsZSBpbgogICAgIyBzZXJ2ZXItZ2VuZXJhdGVkIGluZGV4ZXMuICBUaGVzZSBhcmUg
b25seSBkaXNwbGF5ZWQgZm9yIEZhbmN5SW5kZXhlZAogICAgIyBkaXJlY3Rvcmllcy4KICAgICMg
Rm9ybWF0OiBBZGREZXNjcmlwdGlvbiAiZGVzY3JpcHRpb24iIGZpbGVuYW1lCiAgICAjCiAgICAj
QWRkRGVzY3JpcHRpb24gIkdaSVAgY29tcHJlc3NlZCBkb2N1bWVudCIgLmd6CiAgICAjQWRkRGVz
Y3JpcHRpb24gInRhciBhcmNoaXZlIiAudGFyCiAgICAjQWRkRGVzY3JpcHRpb24gIkdaSVAgY29t
cHJlc3NlZCB0YXIgYXJjaGl2ZSIgLnRnegoKICAgICMKICAgICMgUmVhZG1lTmFtZSBpcyB0aGUg
bmFtZSBvZiB0aGUgUkVBRE1FIGZpbGUgdGhlIHNlcnZlciB3aWxsIGxvb2sgZm9yIGJ5CiAgICAj
IGRlZmF1bHQsIGFuZCBhcHBlbmQgdG8gZGlyZWN0b3J5IGxpc3RpbmdzLgogICAgIwogICAgIyBI
ZWFkZXJOYW1lIGlzIHRoZSBuYW1lIG9mIGEgZmlsZSB3aGljaCBzaG91bGQgYmUgcHJlcGVuZGVk
IHRvCiAgICAjIGRpcmVjdG9yeSBpbmRleGVzLgogICAgIwogICAgIyBJZiBNdWx0aVZpZXdzIGFy
ZSBhbW9uZ3N0IHRoZSBPcHRpb25zIGluIGVmZmVjdCwgdGhlIHNlcnZlciB3aWxsCiAgICAjIGZp
cnN0IGxvb2sgZm9yIG5hbWUuaHRtbCBhbmQgaW5jbHVkZSBpdCBpZiBmb3VuZC4gIElmIG5hbWUu
aHRtbAogICAgIyBkb2Vzbid0IGV4aXN0LCB0aGUgc2VydmVyIHdpbGwgdGhlbiBsb29rIGZvciBu
YW1lLnR4dCBhbmQgaW5jbHVkZQogICAgIyBpdCBhcyBwbGFpbnRleHQgaWYgZm91bmQuCiAgICAj
CiAgICBSZWFkbWVOYW1lIFJFQURNRQogICAgSGVhZGVyTmFtZSBIRUFERVIKCiAgICAjCiAgICAj
IEluZGV4SWdub3JlIGlzIGEgc2V0IG9mIGZpbGVuYW1lcyB3aGljaCBkaXJlY3RvcnkgaW5kZXhp
bmcgc2hvdWxkIGlnbm9yZQogICAgIyBhbmQgbm90IGluY2x1ZGUgaW4gdGhlIGxpc3RpbmcuICBT
aGVsbC1zdHlsZSB3aWxkY2FyZGluZyBpcyBwZXJtaXR0ZWQuCiAgICAjCiAgICBJbmRleElnbm9y
ZSAuPz8qICp+ICojIEhFQURFUiogUkVBRE1FKiBSQ1MgQ1ZTICosdiAqLHQKCjwvSWZNb2R1bGU+
CiMgRW5kIG9mIGluZGV4aW5nIGRpcmVjdGl2ZXMuCgojCiMgRG9jdW1lbnQgdHlwZXMuCiMKPElm
TW9kdWxlIG1vZF9taW1lLmM+CgogICAgIwogICAgIyBBZGRFbmNvZGluZyBhbGxvd3MgeW91IHRv
IGhhdmUgY2VydGFpbiBicm93c2VycyAoTW9zYWljL1ggMi4xKykgdW5jb21wcmVzcwogICAgIyBp
bmZvcm1hdGlvbiBvbiB0aGUgZmx5LiBOb3RlOiBOb3QgYWxsIGJyb3dzZXJzIHN1cHBvcnQgdGhp
cy4KICAgICMgRGVzcGl0ZSB0aGUgbmFtZSBzaW1pbGFyaXR5LCB0aGUgZm9sbG93aW5nIEFkZCog
ZGlyZWN0aXZlcyBoYXZlIG5vdGhpbmcKICAgICMgdG8gZG8gd2l0aCB0aGUgRmFuY3lJbmRleGlu
ZyBjdXN0b21pemF0aW9uIGRpcmVjdGl2ZXMgYWJvdmUuCiAgICAjCiAgICBBZGRFbmNvZGluZyB4
LWNvbXByZXNzIFoKICAgIEFkZEVuY29kaW5nIHgtZ3ppcCBneiB0Z3oKCiAgICAjCiAgICAjIEFk
ZExhbmd1YWdlIGFsbG93cyB5b3UgdG8gc3BlY2lmeSB0aGUgbGFuZ3VhZ2Ugb2YgYSBkb2N1bWVu
dC4gWW91IGNhbgogICAgIyB0aGVuIHVzZSBjb250ZW50IG5lZ290aWF0aW9uIHRvIGdpdmUgYSBi
cm93c2VyIGEgZmlsZSBpbiBhIGxhbmd1YWdlCiAgICAjIGl0IGNhbiB1bmRlcnN0YW5kLgogICAg
IwogICAgIyBOb3RlIDE6IFRoZSBzdWZmaXggZG9lcyBub3QgaGF2ZSB0byBiZSB0aGUgc2FtZSBh
cyB0aGUgbGFuZ3VhZ2UKICAgICMga2V5d29yZCAtLS0gdGhvc2Ugd2l0aCBkb2N1bWVudHMgaW4g
UG9saXNoICh3aG9zZSBuZXQtc3RhbmRhcmQKICAgICMgbGFuZ3VhZ2UgY29kZSBpcyBwbCkgbWF5
IHdpc2ggdG8gdXNlICJBZGRMYW5ndWFnZSBwbCAucG8iIHRvCiAgICAjIGF2b2lkIHRoZSBhbWJp
Z3VpdHkgd2l0aCB0aGUgY29tbW9uIHN1ZmZpeCBmb3IgcGVybCBzY3JpcHRzLgogICAgIwogICAg
IyBOb3RlIDI6IFRoZSBleGFtcGxlIGVudHJpZXMgYmVsb3cgaWxsdXN0cmF0ZSB0aGF0IGluIHF1
aXRlCiAgICAjIHNvbWUgY2FzZXMgdGhlIHR3byBjaGFyYWN0ZXIgJ0xhbmd1YWdlJyBhYmJyZXZp
YXRpb24gaXMgbm90CiAgICAjIGlkZW50aWNhbCB0byB0aGUgdHdvIGNoYXJhY3RlciAnQ291bnRy
eScgY29kZSBmb3IgaXRzIGNvdW50cnksCiAgICAjIEUuZy4gJ0Rhbm1hcmsvZGsnIHZlcnN1cyAn
RGFuaXNoL2RhJy4KICAgICMKICAgICMgTm90ZSAzOiBJbiB0aGUgY2FzZSBvZiAnbHR6JyB3ZSB2
aW9sYXRlIHRoZSBSRkMgYnkgdXNpbmcgYSB0aHJlZSBjaGFyCiAgICAjIHNwZWNpZmllci4gQnV0
IHRoZXJlIGlzICd3b3JrIGluIHByb2dyZXNzJyB0byBmaXggdGhpcyBhbmQgZ2V0CiAgICAjIHRo
ZSByZWZlcmVuY2UgZGF0YSBmb3IgcmZjMTc2NiBjbGVhbmVkIHVwLgogICAgIwogICAgIyBEYW5p
c2ggKGRhKSAtIER1dGNoIChubCkgLSBFbmdsaXNoIChlbikgLSBFc3RvbmlhbiAoZWUpCiAgICAj
IEZyZW5jaCAoZnIpIC0gR2VybWFuIChkZSkgLSBHcmVlay1Nb2Rlcm4gKGVsKQogICAgIyBJdGFs
aWFuIChpdCkgLSBLb3JlYW4gKGtyKSAtIE5vcndlZ2lhbiAobm8pIC0gTm9yd2VnaWFuIE55bm9y
c2sgKG5uKQogICAgIyBQb3J0dWdlc2UgKHB0KSAtIEx1eGVtYm91cmdlb2lzKiAobHR6KQogICAg
IyBTcGFuaXNoIChlcykgLSBTd2VkaXNoIChzdikgLSBDYXRhbGFuIChjYSkgLSBDemVjaChjeikK
ICAgICMgUG9saXNoIChwbCkgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSAocHQtYnIpIC0gSmFwYW5l
c2UgKGphKQogICAgIyBSdXNzaWFuIChydSkKICAgICMKICAgIEFkZExhbmd1YWdlIGRhIC5kawog
ICAgQWRkTGFuZ3VhZ2UgbmwgLm5sCiAgICBBZGRMYW5ndWFnZSBlbiAuZW4KICAgIEFkZExhbmd1
YWdlIGV0IC5lZQogICAgQWRkTGFuZ3VhZ2UgZnIgLmZyCiAgICBBZGRMYW5ndWFnZSBkZSAuZGUK
ICAgIEFkZExhbmd1YWdlIGVsIC5lbAogICAgQWRkTGFuZ3VhZ2UgaGUgLmhlCiAgICBBZGRDaGFy
c2V0IElTTy04ODU5LTggLmlzbzg4NTktOAogICAgQWRkTGFuZ3VhZ2UgaXQgLml0CiAgICBBZGRM
YW5ndWFnZSBqYSAuamEKICAgIEFkZENoYXJzZXQgSVNPLTIwMjItSlAgLmppcwogICAgQWRkTGFu
Z3VhZ2Uga3IgLmtyCiAgICBBZGRDaGFyc2V0IElTTy0yMDIyLUtSIC5pc28ta3IKICAgIEFkZExh
bmd1YWdlIG5uIC5ubgogICAgQWRkTGFuZ3VhZ2Ugbm8gLm5vCiAgICBBZGRMYW5ndWFnZSBwbCAu
cG8KICAgIEFkZENoYXJzZXQgSVNPLTg4NTktMiAuaXNvLXBsCiAgICBBZGRMYW5ndWFnZSBwdCAu
cHQKICAgIEFkZExhbmd1YWdlIHB0LWJyIC5wdC1icgogICAgQWRkTGFuZ3VhZ2UgbHR6IC5sdQog
ICAgQWRkTGFuZ3VhZ2UgY2EgLmNhCiAgICBBZGRMYW5ndWFnZSBlcyAuZXMKICAgIEFkZExhbmd1
YWdlIHN2IC5zdgogICAgQWRkTGFuZ3VhZ2UgY3ogLmN6CiAgICBBZGRMYW5ndWFnZSBydSAucnUK
ICAgIEFkZExhbmd1YWdlIHpoLXR3IC50dwogICAgQWRkTGFuZ3VhZ2UgdHcgLnR3CiAgICBBZGRD
aGFyc2V0IEJpZzUgICAgICAgICAuQmlnNSAgICAuYmlnNQogICAgQWRkQ2hhcnNldCBXSU5ET1dT
LTEyNTEgLmNwLTEyNTEKICAgIEFkZENoYXJzZXQgQ1A4NjYgICAgICAgIC5jcDg2NgogICAgQWRk
Q2hhcnNldCBJU08tODg1OS01ICAgLmlzby1ydQogICAgQWRkQ2hhcnNldCBLT0k4LVIgICAgICAg
LmtvaTgtcgogICAgQWRkQ2hhcnNldCBVQ1MtMiAgICAgICAgLnVjczIKICAgIEFkZENoYXJzZXQg
VUNTLTQgICAgICAgIC51Y3M0CiAgICBBZGRDaGFyc2V0IFVURi04ICAgICAgICAudXRmOAoKICAg
ICMgTGFuZ3VhZ2VQcmlvcml0eSBhbGxvd3MgeW91IHRvIGdpdmUgcHJlY2VkZW5jZSB0byBzb21l
IGxhbmd1YWdlcwogICAgIyBpbiBjYXNlIG9mIGEgdGllIGR1cmluZyBjb250ZW50IG5lZ290aWF0
aW9uLgogICAgIwogICAgIyBKdXN0IGxpc3QgdGhlIGxhbmd1YWdlcyBpbiBkZWNyZWFzaW5nIG9y
ZGVyIG9mIHByZWZlcmVuY2UuIFdlIGhhdmUKICAgICMgbW9yZSBvciBsZXNzIGFscGhhYmV0aXpl
ZCB0aGVtIGhlcmUuIFlvdSBwcm9iYWJseSB3YW50IHRvIGNoYW5nZSB0aGlzLgogICAgIwogICAg
PElmTW9kdWxlIG1vZF9uZWdvdGlhdGlvbi5jPgogICAgICAgIExhbmd1YWdlUHJpb3JpdHkgZW4g
ZGEgbmwgZXQgZnIgZGUgZWwgaXQgamEga3Igbm8gcGwgcHQgcHQtYnIgcnUgbHR6IGNhIGVzIHN2
IHR3CiAgICA8L0lmTW9kdWxlPgoKICAgICMKICAgICMgQWRkVHlwZSBhbGxvd3MgeW91IHRvIHR3
ZWFrIG1pbWUudHlwZXMgd2l0aG91dCBhY3R1YWxseSBlZGl0aW5nIGl0LCBvciB0bwogICAgIyBt
YWtlIGNlcnRhaW4gZmlsZXMgdG8gYmUgY2VydGFpbiB0eXBlcy4KICAgICMKICAgICMgRm9yIGV4
YW1wbGUsIHRoZSBQSFAgMy54IG1vZHVsZSAobm90IHBhcnQgb2YgdGhlIEFwYWNoZSBkaXN0cmli
dXRpb24gLSBzZWUKICAgICMgaHR0cDovL3d3dy5waHAubmV0KSB3aWxsIHR5cGljYWxseSB1c2U6
CiAgICAjCiAgICA8SWZNb2R1bGUgbW9kX3BocDMuYz4KICAgICAgICBBZGRUeXBlIGFwcGxpY2F0
aW9uL3gtaHR0cGQtcGhwMyAucGhwMwogICAgICAgIEFkZFR5cGUgYXBwbGljYXRpb24veC1odHRw
ZC1waHAzLXNvdXJjZSAucGhwM3MKICAgIDwvSWZNb2R1bGU+CiAgICAjCiAgICAjIEFuZCBmb3Ig
UEhQIDQueCwgdXNlOgogICAgIwogICAgPElmTW9kdWxlIG1vZF9waHA0LmM+CiAgICAgICAgQWRk
VHlwZSBhcHBsaWNhdGlvbi94LWh0dHBkLXBocCAucGhwCiAgICAgICAgQWRkVHlwZSBhcHBsaWNh
dGlvbi94LWh0dHBkLXBocC1zb3VyY2UgLnBocHMKICAgIDwvSWZNb2R1bGU+CgogICAgQWRkVHlw
ZSBhcHBsaWNhdGlvbi94LXRhciAudGd6CgogICAgIwogICAgIyBBZGRIYW5kbGVyIGFsbG93cyB5
b3UgdG8gbWFwIGNlcnRhaW4gZmlsZSBleHRlbnNpb25zIHRvICJoYW5kbGVycyIsCiAgICAjIGFj
dGlvbnMgdW5yZWxhdGVkIHRvIGZpbGV0eXBlLiBUaGVzZSBjYW4gYmUgZWl0aGVyIGJ1aWx0IGlu
dG8gdGhlIHNlcnZlcgogICAgIyBvciBhZGRlZCB3aXRoIHRoZSBBY3Rpb24gY29tbWFuZCAoc2Vl
IGJlbG93KQogICAgIwogICAgIyBJZiB5b3Ugd2FudCB0byB1c2Ugc2VydmVyIHNpZGUgaW5jbHVk
ZXMsIG9yIENHSSBvdXRzaWRlCiAgICAjIFNjcmlwdEFsaWFzZWQgZGlyZWN0b3JpZXMsIHVuY29t
bWVudCB0aGUgZm9sbG93aW5nIGxpbmVzLgogICAgIwogICAgIyBUbyB1c2UgQ0dJIHNjcmlwdHM6
CiAgICAjCiAgICAjQWRkSGFuZGxlciBjZ2ktc2NyaXB0IC5jZ2kKCiAgICAjCiAgICAjIFRvIHVz
ZSBzZXJ2ZXItcGFyc2VkIEhUTUwgZmlsZXMKICAgICMKICAgIEFkZFR5cGUgdGV4dC9odG1sIC5z
aHRtbAogICAgQWRkSGFuZGxlciBzZXJ2ZXItcGFyc2VkIC5zaHRtbAoKICAgICMKICAgICMgVW5j
b21tZW50IHRoZSBmb2xsb3dpbmcgbGluZSB0byBlbmFibGUgQXBhY2hlJ3Mgc2VuZC1hc2lzIEhU
VFAgZmlsZQogICAgIyBmZWF0dXJlCiAgICAjCiAgICAjQWRkSGFuZGxlciBzZW5kLWFzLWlzIGFz
aXMKCiAgICAjCiAgICAjIElmIHlvdSB3aXNoIHRvIHVzZSBzZXJ2ZXItcGFyc2VkIGltYWdlbWFw
IGZpbGVzLCB1c2UKICAgICMKICAgICNBZGRIYW5kbGVyIGltYXAtZmlsZSBtYXAKCiAgICAjCiAg
ICAjIFRvIGVuYWJsZSB0eXBlIG1hcHMsIHlvdSBtaWdodCB3YW50IHRvIHVzZQogICAgIwogICAg
I0FkZEhhbmRsZXIgdHlwZS1tYXAgdmFyCgo8L0lmTW9kdWxlPgojIEVuZCBvZiBkb2N1bWVudCB0
eXBlcy4KCiMKIyBBY3Rpb24gbGV0cyB5b3UgZGVmaW5lIG1lZGlhIHR5cGVzIHRoYXQgd2lsbCBl
eGVjdXRlIGEgc2NyaXB0IHdoZW5ldmVyCiMgYSBtYXRjaGluZyBmaWxlIGlzIGNhbGxlZC4gVGhp
cyBlbGltaW5hdGVzIHRoZSBuZWVkIGZvciByZXBlYXRlZCBVUkwKIyBwYXRobmFtZXMgZm9yIG9m
dC11c2VkIENHSSBmaWxlIHByb2Nlc3NvcnMuCiMgRm9ybWF0OiBBY3Rpb24gbWVkaWEvdHlwZSAv
Y2dpLXNjcmlwdC9sb2NhdGlvbgojIEZvcm1hdDogQWN0aW9uIGhhbmRsZXItbmFtZSAvY2dpLXNj
cmlwdC9sb2NhdGlvbgojCgojCiMgTWV0YURpcjogc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBk
aXJlY3RvcnkgaW4gd2hpY2ggQXBhY2hlIGNhbiBmaW5kCiMgbWV0YSBpbmZvcm1hdGlvbiBmaWxl
cy4gVGhlc2UgZmlsZXMgY29udGFpbiBhZGRpdGlvbmFsIEhUVFAgaGVhZGVycwojIHRvIGluY2x1
ZGUgd2hlbiBzZW5kaW5nIHRoZSBkb2N1bWVudAojCiNNZXRhRGlyIC53ZWIKCiMKIyBNZXRhU3Vm
Zml4OiBzcGVjaWZpZXMgdGhlIGZpbGUgbmFtZSBzdWZmaXggZm9yIHRoZSBmaWxlIGNvbnRhaW5p
bmcgdGhlCiMgbWV0YSBpbmZvcm1hdGlvbi4KIwojTWV0YVN1ZmZpeCAubWV0YQoKIwojIEN1c3Rv
bWl6YWJsZSBlcnJvciByZXNwb25zZSAoQXBhY2hlIHN0eWxlKQojICB0aGVzZSBjb21lIGluIHRo
cmVlIGZsYXZvcnMKIwojICAgIDEpIHBsYWluIHRleHQKI0Vycm9yRG9jdW1lbnQgNTAwICJUaGUg
c2VydmVyIG1hZGUgYSBib28gYm9vLgojICBuLmIuICB0aGUgc2luZ2xlIGxlYWRpbmcgKCIpIG1h
cmtzIGl0IGFzIHRleHQsIGl0IGRvZXMgbm90IGdldCBvdXRwdXQKIwojICAgIDIpIGxvY2FsIHJl
ZGlyZWN0cwojRXJyb3JEb2N1bWVudCA0MDQgL21pc3NpbmcuaHRtbAojICB0byByZWRpcmVjdCB0
byBsb2NhbCBVUkwgL21pc3NpbmcuaHRtbAojRXJyb3JEb2N1bWVudCA0MDQgL2NnaS1iaW4vbWlz
c2luZ19oYW5kbGVyLnBsCiMgIE4uQi46IFlvdSBjYW4gcmVkaXJlY3QgdG8gYSBzY3JpcHQgb3Ig
YSBkb2N1bWVudCB1c2luZyBzZXJ2ZXItc2lkZS1pbmNsdWRlcy4KIwojICAgIDMpIGV4dGVybmFs
IHJlZGlyZWN0cwojRXJyb3JEb2N1bWVudCA0MDIgaHR0cDovL3NvbWUub3RoZXJfc2VydmVyLmNv
bS9zdWJzY3JpcHRpb25faW5mby5odG1sCiMgIE4uQi46IE1hbnkgb2YgdGhlIGVudmlyb25tZW50
IHZhcmlhYmxlcyBhc3NvY2lhdGVkIHdpdGggdGhlIG9yaWdpbmFsCiMgIHJlcXVlc3Qgd2lsbCAq
bm90KiBiZSBhdmFpbGFibGUgdG8gc3VjaCBhIHNjcmlwdC4KCiMKIyBDdXN0b21pemUgYmVoYXZp
b3VyIGJhc2VkIG9uIHRoZSBicm93c2VyCiMKPElmTW9kdWxlIG1vZF9zZXRlbnZpZi5jPgoKICAg
ICMKICAgICMgVGhlIGZvbGxvd2luZyBkaXJlY3RpdmVzIG1vZGlmeSBub3JtYWwgSFRUUCByZXNw
b25zZSBiZWhhdmlvci4KICAgICMgVGhlIGZpcnN0IGRpcmVjdGl2ZSBkaXNhYmxlcyBrZWVwYWxp
dmUgZm9yIE5ldHNjYXBlIDIueCBhbmQgYnJvd3NlcnMgdGhhdAogICAgIyBzcG9vZiBpdC4gVGhl
cmUgYXJlIGtub3duIHByb2JsZW1zIHdpdGggdGhlc2UgYnJvd3NlciBpbXBsZW1lbnRhdGlvbnMu
CiAgICAjIFRoZSBzZWNvbmQgZGlyZWN0aXZlIGlzIGZvciBNaWNyb3NvZnQgSW50ZXJuZXQgRXhw
bG9yZXIgNC4wYjIKICAgICMgd2hpY2ggaGFzIGEgYnJva2VuIEhUVFAvMS4xIGltcGxlbWVudGF0
aW9uIGFuZCBkb2VzIG5vdCBwcm9wZXJseQogICAgIyBzdXBwb3J0IGtlZXBhbGl2ZSB3aGVuIGl0
IGlzIHVzZWQgb24gMzAxIG9yIDMwMiAocmVkaXJlY3QpIHJlc3BvbnNlcy4KICAgICMKICAgIEJy
b3dzZXJNYXRjaCAiTW96aWxsYS8yIiBub2tlZXBhbGl2ZQogICAgQnJvd3Nlck1hdGNoICJNU0lF
IDRcLjBiMjsiIG5va2VlcGFsaXZlIGRvd25ncmFkZS0xLjAgZm9yY2UtcmVzcG9uc2UtMS4wCgog
ICAgIwogICAgIyBUaGUgZm9sbG93aW5nIGRpcmVjdGl2ZSBkaXNhYmxlcyBIVFRQLzEuMSByZXNw
b25zZXMgdG8gYnJvd3NlcnMgd2hpY2gKICAgICMgYXJlIGluIHZpb2xhdGlvbiBvZiB0aGUgSFRU
UC8xLjAgc3BlYyBieSBub3QgYmVpbmcgYWJsZSB0byBncm9rIGEKICAgICMgYmFzaWMgMS4xIHJl
c3BvbnNlLgogICAgIwogICAgQnJvd3Nlck1hdGNoICJSZWFsUGxheWVyIDRcLjAiIGZvcmNlLXJl
c3BvbnNlLTEuMAogICAgQnJvd3Nlck1hdGNoICJKYXZhLzFcLjAiIGZvcmNlLXJlc3BvbnNlLTEu
MAogICAgQnJvd3Nlck1hdGNoICJKREsvMVwuMCIgZm9yY2UtcmVzcG9uc2UtMS4wCgo8L0lmTW9k
dWxlPgojIEVuZCBvZiBicm93c2VyIGN1c3RvbWl6YXRpb24gZGlyZWN0aXZlcwoKIwojIEFsbG93
IHNlcnZlciBzdGF0dXMgcmVwb3J0cywgd2l0aCB0aGUgVVJMIG9mIGh0dHA6Ly9zZXJ2ZXJuYW1l
L3NlcnZlci1zdGF0dXMKIyBDaGFuZ2UgdGhlICIueW91ci1kb21haW4uY29tIiB0byBtYXRjaCB5
b3VyIGRvbWFpbiB0byBlbmFibGUuCiMKIzxMb2NhdGlvbiAvc2VydmVyLXN0YXR1cz4KIyAgICBT
ZXRIYW5kbGVyIHNlcnZlci1zdGF0dXMKIyAgICBPcmRlciBkZW55LGFsbG93CiMgICAgRGVueSBm
cm9tIGFsbAojICAgIEFsbG93IGZyb20gLnlvdXItZG9tYWluLmNvbQojPC9Mb2NhdGlvbj4KCiMK
IyBBbGxvdyByZW1vdGUgc2VydmVyIGNvbmZpZ3VyYXRpb24gcmVwb3J0cywgd2l0aCB0aGUgVVJM
IG9mCiMgaHR0cDovL3NlcnZlcm5hbWUvc2VydmVyLWluZm8gKHJlcXVpcmVzIHRoYXQgbW9kX2lu
Zm8uYyBiZSBsb2FkZWQpLgojIENoYW5nZSB0aGUgIi55b3VyLWRvbWFpbi5jb20iIHRvIG1hdGNo
IHlvdXIgZG9tYWluIHRvIGVuYWJsZS4KIwojPExvY2F0aW9uIC9zZXJ2ZXItaW5mbz4KIyAgICBT
ZXRIYW5kbGVyIHNlcnZlci1pbmZvCiMgICAgT3JkZXIgZGVueSxhbGxvdwojICAgIERlbnkgZnJv
bSBhbGwKIyAgICBBbGxvdyBmcm9tIC55b3VyLWRvbWFpbi5jb20KIzwvTG9jYXRpb24+CgojCiMg
VGhlcmUgaGF2ZSBiZWVuIHJlcG9ydHMgb2YgcGVvcGxlIHRyeWluZyB0byBhYnVzZSBhbiBvbGQg
YnVnIGZyb20gcHJlLTEuMQojIGRheXMuICBUaGlzIGJ1ZyBpbnZvbHZlZCBhIENHSSBzY3JpcHQg
ZGlzdHJpYnV0ZWQgYXMgYSBwYXJ0IG9mIEFwYWNoZS4KIyBCeSB1bmNvbW1lbnRpbmcgdGhlc2Ug
bGluZXMgeW91IGNhbiByZWRpcmVjdCB0aGVzZSBhdHRhY2tzIHRvIGEgbG9nZ2luZwojIHNjcmlw
dCBvbiBwaGYuYXBhY2hlLm9yZy4gIE9yLCB5b3UgY2FuIHJlY29yZCB0aGVtIHlvdXJzZWxmLCB1
c2luZyB0aGUgc2NyaXB0CiMgc3VwcG9ydC9waGZfYWJ1c2VfbG9nLmNnaS4KIwojPExvY2F0aW9u
IC9jZ2ktYmluL3BoZio+CiMgICAgRGVueSBmcm9tIGFsbAojICAgIEVycm9yRG9jdW1lbnQgNDAz
IGh0dHA6Ly9waGYuYXBhY2hlLm9yZy9waGZfYWJ1c2VfbG9nLmNnaQojPC9Mb2NhdGlvbj4KCiMK
IyBQcm94eSBTZXJ2ZXIgZGlyZWN0aXZlcy4gVW5jb21tZW50IHRoZSBmb2xsb3dpbmcgbGluZXMg
dG8KIyBlbmFibGUgdGhlIHByb3h5IHNlcnZlcjoKIwojPElmTW9kdWxlIG1vZF9wcm94eS5jPgoj
ICAgIFByb3h5UmVxdWVzdHMgT24KCiMgICAgPERpcmVjdG9yeSBwcm94eToqPgojICAgICAgICBP
cmRlciBkZW55LGFsbG93CiMgICAgICAgIERlbnkgZnJvbSBhbGwKIyAgICAgICAgQWxsb3cgZnJv
bSAueW91ci1kb21haW4uY29tCiMgICAgPC9EaXJlY3Rvcnk+CgogICAgIwogICAgIyBFbmFibGUv
ZGlzYWJsZSB0aGUgaGFuZGxpbmcgb2YgSFRUUC8xLjEgIlZpYToiIGhlYWRlcnMuCiAgICAjICgi
RnVsbCIgYWRkcyB0aGUgc2VydmVyIHZlcnNpb247ICJCbG9jayIgcmVtb3ZlcyBhbGwgb3V0Z29p
bmcgVmlhOiBoZWFkZXJzKQogICAgIyBTZXQgdG8gb25lIG9mOiBPZmYgfCBPbiB8IEZ1bGwgfCBC
bG9jawogICAgIwojICAgIFByb3h5VmlhIE9uCgogICAgIwogICAgIyBUbyBlbmFibGUgdGhlIGNh
Y2hlIGFzIHdlbGwsIGVkaXQgYW5kIHVuY29tbWVudCB0aGUgZm9sbG93aW5nIGxpbmVzOgogICAg
IyAobm8gY2FjaGVpbmcgd2l0aG91dCBDYWNoZVJvb3QpCiAgICAjCiMgICAgQ2FjaGVSb290ICIv
dmFyL2NhY2hlL2FwYWNoZSIKIyAgICBDYWNoZVNpemUgNQojICAgIENhY2hlR2NJbnRlcnZhbCA0
CiMgICAgQ2FjaGVNYXhFeHBpcmUgMjQKIyAgICBDYWNoZUxhc3RNb2RpZmllZEZhY3RvciAwLjEK
IyAgICBDYWNoZURlZmF1bHRFeHBpcmUgMQojICAgIE5vQ2FjaGUgYS1kb21haW4uY29tIGFub3Ro
ZXItZG9tYWluLmVkdSBqb2VzLmdhcmFnZS1zYWxlLmNvbQoKIzwvSWZNb2R1bGU+CiMgRW5kIG9m
IHByb3h5IGRpcmVjdGl2ZXMuCgojIyMgU2VjdGlvbiAzOiBWaXJ0dWFsIEhvc3RzCiMKIyBWaXJ0
dWFsSG9zdDogSWYgeW91IHdhbnQgdG8gbWFpbnRhaW4gbXVsdGlwbGUgZG9tYWlucy9ob3N0bmFt
ZXMgb24geW91cgojIG1hY2hpbmUgeW91IGNhbiBzZXR1cCBWaXJ0dWFsSG9zdCBjb250YWluZXJz
IGZvciB0aGVtLiBNb3N0IGNvbmZpZ3VyYXRpb25zCiMgdXNlIG9ubHkgbmFtZS1iYXNlZCB2aXJ0
dWFsIGhvc3RzIHNvIHRoZSBzZXJ2ZXIgZG9lc24ndCBuZWVkIHRvIHdvcnJ5IGFib3V0CiMgSVAg
YWRkcmVzc2VzLiBUaGlzIGlzIGluZGljYXRlZCBieSB0aGUgYXN0ZXJpc2tzIGluIHRoZSBkaXJl
Y3RpdmVzIGJlbG93LgojCiMgUGxlYXNlIHNlZSB0aGUgZG9jdW1lbnRhdGlvbiBhdCA8VVJMOmh0
dHA6Ly93d3cuYXBhY2hlLm9yZy9kb2NzL3Zob3N0cy8+CiMgZm9yIGZ1cnRoZXIgZGV0YWlscyBi
ZWZvcmUgeW91IHRyeSB0byBzZXR1cCB2aXJ0dWFsIGhvc3RzLgojCiMgWW91IG1heSB1c2UgdGhl
IGNvbW1hbmQgbGluZSBvcHRpb24gJy1TJyB0byB2ZXJpZnkgeW91ciB2aXJ0dWFsIGhvc3QKIyBj
b25maWd1cmF0aW9uLgoKIwojIFVzZSBuYW1lLWJhc2VkIHZpcnR1YWwgaG9zdGluZy4KIwojTmFt
ZVZpcnR1YWxIb3N0ICoKCiMKIyBWaXJ0dWFsSG9zdCBleGFtcGxlOgojIEFsbW9zdCBhbnkgQXBh
Y2hlIGRpcmVjdGl2ZSBtYXkgZ28gaW50byBhIFZpcnR1YWxIb3N0IGNvbnRhaW5lci4KIyBUaGUg
Zmlyc3QgVmlydHVhbEhvc3Qgc2VjdGlvbiBpcyB1c2VkIGZvciByZXF1ZXN0cyB3aXRob3V0IGEg
a25vd24KIyBzZXJ2ZXIgbmFtZS4KIwojPFZpcnR1YWxIb3N0ICo+CiMgICAgU2VydmVyQWRtaW4g
d2VibWFzdGVyQGR1bW15LWhvc3QuZXhhbXBsZS5jb20KIyAgICBEb2N1bWVudFJvb3QgL3d3dy9k
b2NzL2R1bW15LWhvc3QuZXhhbXBsZS5jb20KIyAgICBTZXJ2ZXJOYW1lIGR1bW15LWhvc3QuZXhh
bXBsZS5jb20KIyAgICBFcnJvckxvZyBsb2dzL2R1bW15LWhvc3QuZXhhbXBsZS5jb20tZXJyb3Jf
bG9nCiMgICAgQ3VzdG9tTG9nIGxvZ3MvZHVtbXktaG9zdC5leGFtcGxlLmNvbS1hY2Nlc3NfbG9n
IGNvbW1vbgojPC9WaXJ0dWFsSG9zdD4KCk5hbWVWaXJ0dWFsSG9zdCAqCgojSW5jbHVkZSAiL2V0
Yy9hcGFjaGUvc3NsLmNvbmYiCkluY2x1ZGUgIi9ldGMvYXBhY2hlL3ZpcnR1YWxob3N0LmNvbmYi
Cg==


------------7C62F4125AEBAE
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
------------7C62F4125AEBAE--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019