[UCLA-LUG] how to check console for errors?

loan tran loan_mis@yahoo.com
Sun, 5 Sep 1999 22:19:06 -0700 (PDT)


--0-719885386-936595146=:12667
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline


Hi Dan, Please tell me how to check console or errors.
and how can i telnet to port 80?
Is there any way that i can uninstall web apache server and install it
again?
I attach 2 files httpd.conf  /etc/hosts
see if you can find anything wrong.

oh, also my root got mail message like this: "
error occured while rotating /var/log/httpd/error_log "
I don't know if it relevant to the problem.

I highly appriciate your help.
Thank.
LOANTRAN

--- witten <witten@linux.ucla.edu> wrote:
> I'm not sure what might be wrong. Try checking the
> console for errors when
> you restart apache. Also, telnet to port 80 of the
> box with apache to see
> if you can actually connect. What did you change in
> the config files right
> before apache stopped working?
> 
> Dan
> 
> On Sun, 5 Sep 1999, loan tran wrote:
> 
> > 
> > I 'm using web apache sever on linux system.
> > 
> > I seted up different web sites on it.
> > They were working fine. It just happened recently
> after i restarted my
> > computer, i could not view the sites anymore.
> > I got the messages like this:
> > "Netscape 's network connection was refused by the
> server loantran.com
> > (my website). The server may not be accepting
> connection or may be
> > busy."
> > 
> > I check the apache/logs/error_log 
> > I got messages like this 
> > " apache/1.3.6 configued resuming mornal
> operation."
> > Anynone have any idea how could it happen and how
> to fix it.  Thank you.
> > __________________________________________________
> > Do You Yahoo!?
> > Bid and sell for free at http://auctions.yahoo.com
> > 
> > _______________________________________________
> > UCLALUG Linux mailing list - Linux@linux.ucla.edu
> > http://linux.ucla.edu/mailman/listinfo/linux
> > 
> 
> 
> _______________________________________________
> UCLALUG Linux mailing list - Linux@linux.ucla.edu
> http://linux.ucla.edu/mailman/listinfo/linux
> 
> 

__________________________________________________
Do You Yahoo!?
Bid and sell for free at http://auctions.yahoo.com
--0-719885386-936595146=:12667
Content-Type: application/x-unknown; name="httpd.conf"
Content-Transfer-Encoding: base64
Content-Description: httpd.conf
Content-Disposition: attachment; filename="httpd.conf"

IwojIEJhc2VkIHVwb24gdGhlIE5DU0Egc2VydmVyIGNvbmZpZ3VyYXRpb24g
ZmlsZXMgb3JpZ2luYWxseSBieSBSb2IgTWNDb29sLgojCiMgVGhpcyBpcyB0
aGUgbWFpbiBBcGFjaGUgc2VydmVyIGNvbmZpZ3VyYXRpb24gZmlsZS4gIEl0
IGNvbnRhaW5zIHRoZQojIGNvbmZpZ3VyYXRpb24gZGlyZWN0aXZlcyB0aGF0
IGdpdmUgdGhlIHNlcnZlciBpdHMgaW5zdHJ1Y3Rpb25zLgojIFNlZSA8VVJM
Omh0dHA6Ly93d3cuYXBhY2hlLm9yZy9kb2NzLz4gZm9yIGRldGFpbGVkIGlu
Zm9ybWF0aW9uIGFib3V0CiMgdGhlIGRpcmVjdGl2ZXMuCiMKIyBEbyBOT1Qg
c2ltcGx5IHJlYWQgdGhlIGluc3RydWN0aW9ucyBpbiBoZXJlIHdpdGhvdXQg
dW5kZXJzdGFuZGluZwojIHdoYXQgdGhleSBkby4gIFRoZXkncmUgaGVyZSBv
bmx5IGFzIGhpbnRzIG9yIHJlbWluZGVycy4gIElmIHlvdSBhcmUgdW5zdXJl
CiMgY29uc3VsdCB0aGUgb25saW5lIGRvY3MuIFlvdSBoYXZlIGJlZW4gd2Fy
bmVkLiAgCiMKIyBBZnRlciB0aGlzIGZpbGUgaXMgcHJvY2Vzc2VkLCB0aGUg
c2VydmVyIHdpbGwgbG9vayBmb3IgYW5kIHByb2Nlc3MKIyBAQFNlcnZlclJv
b3RAQC9jb25mL3NybS5jb25mIGFuZCB0aGVuIEBAU2VydmVyUm9vdEBAL2Nv
bmYvYWNjZXNzLmNvbmYKIyB1bmxlc3MgeW91IGhhdmUgb3ZlcnJpZGRlbiB0
aGVzZSB3aXRoIFJlc291cmNlQ29uZmlnIGFuZC9vcgojIEFjY2Vzc0NvbmZp
ZyBkaXJlY3RpdmVzIGhlcmUuCiMKIyBUaGUgY29uZmlndXJhdGlvbiBkaXJl
Y3RpdmVzIGFyZSBncm91cGVkIGludG8gdGhyZWUgYmFzaWMgc2VjdGlvbnM6
CiMgIDEuIERpcmVjdGl2ZXMgdGhhdCBjb250cm9sIHRoZSBvcGVyYXRpb24g
b2YgdGhlIEFwYWNoZSBzZXJ2ZXIgcHJvY2VzcyBhcyBhCiMgICAgIHdob2xl
ICh0aGUgJ2dsb2JhbCBlbnZpcm9ubWVudCcpLgojICAyLiBEaXJlY3RpdmVz
IHRoYXQgZGVmaW5lIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSAnbWFpbicgb3Ig
J2RlZmF1bHQnIHNlcnZlciwKIyAgICAgd2hpY2ggcmVzcG9uZHMgdG8gcmVx
dWVzdHMgdGhhdCBhcmVuJ3QgaGFuZGxlZCBieSBhIHZpcnR1YWwgaG9zdC4K
IyAgICAgVGhlc2UgZGlyZWN0aXZlcyBhbHNvIHByb3ZpZGUgZGVmYXVsdCB2
YWx1ZXMgZm9yIHRoZSBzZXR0aW5ncwojICAgICBvZiBhbGwgdmlydHVhbCBo
b3N0cy4KIyAgMy4gU2V0dGluZ3MgZm9yIHZpcnR1YWwgaG9zdHMsIHdoaWNo
IGFsbG93IFdlYiByZXF1ZXN0cyB0byBiZSBzZW50IHRvCiMgICAgIGRpZmZl
cmVudCBJUCBhZGRyZXNzZXMgb3IgaG9zdG5hbWVzIGFuZCBoYXZlIHRoZW0g
aGFuZGxlZCBieSB0aGUKIyAgICAgc2FtZSBBcGFjaGUgc2VydmVyIHByb2Nl
c3MuCiMKIyBDb25maWd1cmF0aW9uIGFuZCBsb2dmaWxlIG5hbWVzOiBJZiB0
aGUgZmlsZW5hbWVzIHlvdSBzcGVjaWZ5IGZvciBtYW55CiMgb2YgdGhlIHNl
cnZlcidzIGNvbnRyb2wgZmlsZXMgYmVnaW4gd2l0aCAiLyIgKG9yICJkcml2
ZTovIiBmb3IgV2luMzIpLCB0aGUKIyBzZXJ2ZXIgd2lsbCB1c2UgdGhhdCBl
eHBsaWNpdCBwYXRoLiAgSWYgdGhlIGZpbGVuYW1lcyBkbyAqbm90KiBiZWdp
bgojIHdpdGggIi8iLCB0aGUgdmFsdWUgb2YgU2VydmVyUm9vdCBpcyBwcmVw
ZW5kZWQgLS0gc28gImxvZ3MvZm9vLmxvZyIKIyB3aXRoIFNlcnZlclJvb3Qg
c2V0IHRvICIvdXNyL2xvY2FsL2FwYWNoZSIgd2lsbCBiZSBpbnRlcnByZXRl
ZCBieSB0aGUKIyBzZXJ2ZXIgYXMgIi91c3IvbG9jYWwvYXBhY2hlL2xvZ3Mv
Zm9vLmxvZyIuCiMKCiMjIyBTZWN0aW9uIDE6IEdsb2JhbCBFbnZpcm9ubWVu
dAojCiMgVGhlIGRpcmVjdGl2ZXMgaW4gdGhpcyBzZWN0aW9uIGFmZmVjdCB0
aGUgb3ZlcmFsbCBvcGVyYXRpb24gb2YgQXBhY2hlLAojIHN1Y2ggYXMgdGhl
IG51bWJlciBvZiBjb25jdXJyZW50IHJlcXVlc3RzIGl0IGNhbiBoYW5kbGUg
b3Igd2hlcmUgaXQKIyBjYW4gZmluZCBpdHMgY29uZmlndXJhdGlvbiBmaWxl
cy4KIwoKIwojIFNlcnZlclR5cGUgaXMgZWl0aGVyIGluZXRkLCBvciBzdGFu
ZGFsb25lLiAgSW5ldGQgbW9kZSBpcyBvbmx5IHN1cHBvcnRlZCBvbgojIFVu
aXggcGxhdGZvcm1zLgojClNlcnZlclR5cGUgc3RhbmRhbG9uZQoKIwojIFNl
cnZlclJvb3Q6IFRoZSB0b3Agb2YgdGhlIGRpcmVjdG9yeSB0cmVlIHVuZGVy
IHdoaWNoIHRoZSBzZXJ2ZXIncwojIGNvbmZpZ3VyYXRpb24sIGVycm9yLCBh
bmQgbG9nIGZpbGVzIGFyZSBrZXB0LgojCiMgTk9URSEgIElmIHlvdSBpbnRl
bmQgdG8gcGxhY2UgdGhpcyBvbiBhbiBORlMgKG9yIG90aGVyd2lzZSBuZXR3
b3JrKQojIG1vdW50ZWQgZmlsZXN5c3RlbSB0aGVuIHBsZWFzZSByZWFkIHRo
ZSBMb2NrRmlsZSBkb2N1bWVudGF0aW9uCiMgKGF2YWlsYWJsZSBhdCA8VVJM
Omh0dHA6Ly93d3cuYXBhY2hlLm9yZy9kb2NzL21vZC9jb3JlLmh0bWwjbG9j
a2ZpbGU+KTsKIyB5b3Ugd2lsbCBzYXZlIHlvdXJzZWxmIGEgbG90IG9mIHRy
b3VibGUuCiMKIyBEbyBOT1QgYWRkIGEgc2xhc2ggYXQgdGhlIGVuZCBvZiB0
aGUgZGlyZWN0b3J5IHBhdGguCiMKU2VydmVyUm9vdCAiL3Vzci9sb2NhbC9h
cGFjaGVfMS4zLjYiCgojCiMgVGhlIExvY2tGaWxlIGRpcmVjdGl2ZSBzZXRz
IHRoZSBwYXRoIHRvIHRoZSBsb2NrZmlsZSB1c2VkIHdoZW4gQXBhY2hlCiMg
aXMgY29tcGlsZWQgd2l0aCBlaXRoZXIgVVNFX0ZDTlRMX1NFUklBTElaRURf
QUNDRVBUIG9yCiMgVVNFX0ZMT0NLX1NFUklBTElaRURfQUNDRVBULiBUaGlz
IGRpcmVjdGl2ZSBzaG91bGQgbm9ybWFsbHkgYmUgbGVmdCBhdAojIGl0cyBk
ZWZhdWx0IHZhbHVlLiBUaGUgbWFpbiByZWFzb24gZm9yIGNoYW5naW5nIGl0
IGlzIGlmIHRoZSBsb2dzCiMgZGlyZWN0b3J5IGlzIE5GUyBtb3VudGVkLCBz
aW5jZSB0aGUgbG9ja2ZpbGUgTVVTVCBCRSBTVE9SRUQgT04gQSBMT0NBTAoj
IERJU0suIFRoZSBQSUQgb2YgdGhlIG1haW4gc2VydmVyIHByb2Nlc3MgaXMg
YXV0b21hdGljYWxseSBhcHBlbmRlZCB0bwojIHRoZSBmaWxlbmFtZS4gCiMK
I0xvY2tGaWxlIGxvZ3MvYWNjZXB0LmxvY2sKCiMKIyBQaWRGaWxlOiBUaGUg
ZmlsZSBpbiB3aGljaCB0aGUgc2VydmVyIHNob3VsZCByZWNvcmQgaXRzIHBy
b2Nlc3MKIyBpZGVudGlmaWNhdGlvbiBudW1iZXIgd2hlbiBpdCBzdGFydHMu
CiMKUGlkRmlsZSBsb2dzL2h0dHBkLnBpZAoKIwojIFNjb3JlQm9hcmRGaWxl
OiBGaWxlIHVzZWQgdG8gc3RvcmUgaW50ZXJuYWwgc2VydmVyIHByb2Nlc3Mg
aW5mb3JtYXRpb24uCiMgTm90IGFsbCBhcmNoaXRlY3R1cmVzIHJlcXVpcmUg
dGhpcy4gIEJ1dCBpZiB5b3VycyBkb2VzICh5b3UnbGwga25vdyBiZWNhdXNl
CiMgdGhpcyBmaWxlIHdpbGwgYmUgIGNyZWF0ZWQgd2hlbiB5b3UgcnVuIEFw
YWNoZSkgdGhlbiB5b3UgKm11c3QqIGVuc3VyZSB0aGF0CiMgbm8gdHdvIGlu
dm9jYXRpb25zIG9mIEFwYWNoZSBzaGFyZSB0aGUgc2FtZSBzY29yZWJvYXJk
IGZpbGUuCiMKU2NvcmVCb2FyZEZpbGUgbG9ncy9hcGFjaGVfcnVudGltZV9z
dGF0dXMKCiMKIyBJbiB0aGUgc3RhbmRhcmQgY29uZmlndXJhdGlvbiwgdGhl
IHNlcnZlciB3aWxsIHByb2Nlc3MgdGhpcyBmaWxlLAojIHNybS5jb25mLCBh
bmQgYWNjZXNzLmNvbmYgaW4gdGhhdCBvcmRlci4gIFRoZSBsYXR0ZXIgdHdv
IGZpbGVzIGFyZQojIG5vdyBkaXN0cmlidXRlZCBlbXB0eSwgYXMgaXQgaXMg
cmVjb21tZW5kZWQgdGhhdCBhbGwgZGlyZWN0aXZlcwojIGJlIGtlcHQgaW4g
YSBzaW5nbGUgZmlsZSBmb3Igc2ltcGxpY2l0eS4gIFRoZSBjb21tZW50ZWQt
b3V0IHZhbHVlcwojIGJlbG93IGFyZSB0aGUgYnVpbHQtaW4gZGVmYXVsdHMu
ICBZb3UgY2FuIGhhdmUgdGhlIHNlcnZlciBpZ25vcmUKIyB0aGVzZSBmaWxl
cyBhbHRvZ2V0aGVyIGJ5IHVzaW5nICIvZGV2L251bGwiIChmb3IgVW5peCkg
b3IKIyAibnVsIiAoZm9yIFdpbjMyKSBmb3IgdGhlIGFyZ3VtZW50cyB0byB0
aGUgZGlyZWN0aXZlcy4KIwojUmVzb3VyY2VDb25maWcgY29uZi9zcm0uY29u
ZgojQWNjZXNzQ29uZmlnIGNvbmYvYWNjZXNzLmNvbmYKCiMKIyBUaW1lb3V0
OiBUaGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIHJlY2VpdmVzIGFuZCBz
ZW5kcyB0aW1lIG91dC4KIwpUaW1lb3V0IDMwMAoKIwojIEtlZXBBbGl2ZTog
V2hldGhlciBvciBub3QgdG8gYWxsb3cgcGVyc2lzdGVudCBjb25uZWN0aW9u
cyAobW9yZSB0aGFuCiMgb25lIHJlcXVlc3QgcGVyIGNvbm5lY3Rpb24pLiBT
ZXQgdG8gIk9mZiIgdG8gZGVhY3RpdmF0ZS4KIwpLZWVwQWxpdmUgT24KCiMK
IyBNYXhLZWVwQWxpdmVSZXF1ZXN0czogVGhlIG1heGltdW0gbnVtYmVyIG9m
IHJlcXVlc3RzIHRvIGFsbG93CiMgZHVyaW5nIGEgcGVyc2lzdGVudCBjb25u
ZWN0aW9uLiBTZXQgdG8gMCB0byBhbGxvdyBhbiB1bmxpbWl0ZWQgYW1vdW50
LgojIFdlIHJlY29tbWVuZCB5b3UgbGVhdmUgdGhpcyBudW1iZXIgaGlnaCwg
Zm9yIG1heGltdW0gcGVyZm9ybWFuY2UuCiMKTWF4S2VlcEFsaXZlUmVxdWVz
dHMgMTAwCgojCiMgS2VlcEFsaXZlVGltZW91dDogTnVtYmVyIG9mIHNlY29u
ZHMgdG8gd2FpdCBmb3IgdGhlIG5leHQgcmVxdWVzdCBmcm9tIHRoZQojIHNh
bWUgY2xpZW50IG9uIHRoZSBzYW1lIGNvbm5lY3Rpb24uCiMKS2VlcEFsaXZl
VGltZW91dCAxNQoKIwojIFNlcnZlci1wb29sIHNpemUgcmVndWxhdGlvbi4g
IFJhdGhlciB0aGFuIG1ha2luZyB5b3UgZ3Vlc3MgaG93IG1hbnkKIyBzZXJ2
ZXIgcHJvY2Vzc2VzIHlvdSBuZWVkLCBBcGFjaGUgZHluYW1pY2FsbHkgYWRh
cHRzIHRvIHRoZSBsb2FkIGl0CiMgc2VlcyAtLS0gdGhhdCBpcywgaXQgdHJp
ZXMgdG8gbWFpbnRhaW4gZW5vdWdoIHNlcnZlciBwcm9jZXNzZXMgdG8KIyBo
YW5kbGUgdGhlIGN1cnJlbnQgbG9hZCwgcGx1cyBhIGZldyBzcGFyZSBzZXJ2
ZXJzIHRvIGhhbmRsZSB0cmFuc2llbnQKIyBsb2FkIHNwaWtlcyAoZS5nLiwg
bXVsdGlwbGUgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIGZyb20gYSBzaW5nbGUK
IyBOZXRzY2FwZSBicm93c2VyKS4KIwojIEl0IGRvZXMgdGhpcyBieSBwZXJp
b2RpY2FsbHkgY2hlY2tpbmcgaG93IG1hbnkgc2VydmVycyBhcmUgd2FpdGlu
ZwojIGZvciBhIHJlcXVlc3QuICBJZiB0aGVyZSBhcmUgZmV3ZXIgdGhhbiBN
aW5TcGFyZVNlcnZlcnMsIGl0IGNyZWF0ZXMKIyBhIG5ldyBzcGFyZS4gIElm
IHRoZXJlIGFyZSBtb3JlIHRoYW4gTWF4U3BhcmVTZXJ2ZXJzLCBzb21lIG9m
IHRoZQojIHNwYXJlcyBkaWUgb2ZmLiAgVGhlIGRlZmF1bHQgdmFsdWVzIGFy
ZSBwcm9iYWJseSBPSyBmb3IgbW9zdCBzaXRlcy4KIwpNaW5TcGFyZVNlcnZl
cnMgNQpNYXhTcGFyZVNlcnZlcnMgMTAKCiMKIyBOdW1iZXIgb2Ygc2VydmVy
cyB0byBzdGFydCBpbml0aWFsbHkgLS0tIHNob3VsZCBiZSBhIHJlYXNvbmFi
bGUgYmFsbHBhcmsKIyBmaWd1cmUuCiMKU3RhcnRTZXJ2ZXJzIDUKCiMKIyBM
aW1pdCBvbiB0b3RhbCBudW1iZXIgb2Ygc2VydmVycyBydW5uaW5nLCBpLmUu
LCBsaW1pdCBvbiB0aGUgbnVtYmVyCiMgb2YgY2xpZW50cyB3aG8gY2FuIHNp
bXVsdGFuZW91c2x5IGNvbm5lY3QgLS0tIGlmIHRoaXMgbGltaXQgaXMgZXZl
cgojIHJlYWNoZWQsIGNsaWVudHMgd2lsbCBiZSBMT0NLRUQgT1VULCBzbyBp
dCBzaG91bGQgTk9UIEJFIFNFVCBUT08gTE9XLgojIEl0IGlzIGludGVuZGVk
IG1haW5seSBhcyBhIGJyYWtlIHRvIGtlZXAgYSBydW5hd2F5IHNlcnZlciBm
cm9tIHRha2luZwojIHRoZSBzeXN0ZW0gd2l0aCBpdCBhcyBpdCBzcGlyYWxz
IGRvd24uLi4KIwpNYXhDbGllbnRzIDE1MAoKIwojIE1heFJlcXVlc3RzUGVy
Q2hpbGQ6IHRoZSBudW1iZXIgb2YgcmVxdWVzdHMgZWFjaCBjaGlsZCBwcm9j
ZXNzIGlzCiMgYWxsb3dlZCB0byBwcm9jZXNzIGJlZm9yZSB0aGUgY2hpbGQg
ZGllcy4gIFRoZSBjaGlsZCB3aWxsIGV4aXQgc28KIyBhcyB0byBhdm9pZCBw
cm9ibGVtcyBhZnRlciBwcm9sb25nZWQgdXNlIHdoZW4gQXBhY2hlIChhbmQg
bWF5YmUgdGhlCiMgbGlicmFyaWVzIGl0IHVzZXMpIGxlYWsgbWVtb3J5IG9y
IG90aGVyIHJlc291cmNlcy4gIE9uIG1vc3Qgc3lzdGVtcywgdGhpcwojIGlz
bid0IHJlYWxseSBuZWVkZWQsIGJ1dCBhIGZldyAoc3VjaCBhcyBTb2xhcmlz
KSBkbyBoYXZlIG5vdGFibGUgbGVha3MKIyBpbiB0aGUgbGlicmFyaWVzLgoj
Ck1heFJlcXVlc3RzUGVyQ2hpbGQgMzAKCiMKIyBMaXN0ZW46IEFsbG93cyB5
b3UgdG8gYmluZCBBcGFjaGUgdG8gc3BlY2lmaWMgSVAgYWRkcmVzc2VzIGFu
ZC9vcgojIHBvcnRzLCBpbiBhZGRpdGlvbiB0byB0aGUgZGVmYXVsdC4gU2Vl
IGFsc28gdGhlIDxWaXJ0dWFsSG9zdD4KIyBkaXJlY3RpdmUuCiMKI0xpc3Rl
biAzMDAwCiNMaXN0ZW4gMTIuMzQuNTYuNzg6ODAKCiMKIyBCaW5kQWRkcmVz
czogWW91IGNhbiBzdXBwb3J0IHZpcnR1YWwgaG9zdHMgd2l0aCB0aGlzIG9w
dGlvbi4gVGhpcyBkaXJlY3RpdmUKIyBpcyB1c2VkIHRvIHRlbGwgdGhlIHNl
cnZlciB3aGljaCBJUCBhZGRyZXNzIHRvIGxpc3RlbiB0by4gSXQgY2FuIGVp
dGhlcgojIGNvbnRhaW4gIioiLCBhbiBJUCBhZGRyZXNzLCBvciBhIGZ1bGx5
IHF1YWxpZmllZCBJbnRlcm5ldCBkb21haW4gbmFtZS4KIyBTZWUgYWxzbyB0
aGUgPFZpcnR1YWxIb3N0PiBhbmQgTGlzdGVuIGRpcmVjdGl2ZXMuCiMKI0Jp
bmRBZGRyZXNzICoKCiMKIyBEeW5hbWljIFNoYXJlZCBPYmplY3QgKERTTykg
U3VwcG9ydAojCiMgVG8gYmUgYWJsZSB0byB1c2UgdGhlIGZ1bmN0aW9uYWxp
dHkgb2YgYSBtb2R1bGUgd2hpY2ggd2FzIGJ1aWx0IGFzIGEgRFNPIHlvdQoj
IGhhdmUgdG8gcGxhY2UgY29ycmVzcG9uZGluZyBgTG9hZE1vZHVsZScgbGlu
ZXMgYXQgdGhpcyBsb2NhdGlvbiBzbyB0aGUKIyBkaXJlY3RpdmVzIGNvbnRh
aW5lZCBpbiBpdCBhcmUgYWN0dWFsbHkgYXZhaWxhYmxlIF9iZWZvcmVfIHRo
ZXkgYXJlIHVzZWQuCiMgUGxlYXNlIHJlYWQgdGhlIGZpbGUgUkVBRE1FLkRT
TyBpbiB0aGUgQXBhY2hlIDEuMyBkaXN0cmlidXRpb24gZm9yIG1vcmUKIyBk
ZXRhaWxzIGFib3V0IHRoZSBEU08gbWVjaGFuaXNtIGFuZCBydW4gYGh0dHBk
IC1sJyBmb3IgdGhlIGxpc3Qgb2YgYWxyZWFkeQojIGJ1aWx0LWluIChzdGF0
aWNhbGx5IGxpbmtlZCBhbmQgdGh1cyBhbHdheXMgYXZhaWxhYmxlKSBtb2R1
bGVzIGluIHlvdXIgaHR0cGQKIyBiaW5hcnkuCiMKIyBOb3RlOiBUaGUgb3Jk
ZXIgaXMgd2hpY2ggbW9kdWxlcyBhcmUgbG9hZGVkIGlzIGltcG9ydGFudC4g
IERvbid0IGNoYW5nZQojIHRoZSBvcmRlciBiZWxvdyB3aXRob3V0IGV4cGVy
dCBhZHZpY2UuCiMKIyBFeGFtcGxlOgojIExvYWRNb2R1bGUgZm9vX21vZHVs
ZSBsaWJleGVjL21vZF9mb28uc28KCiMKIyBFeHRlbmRlZFN0YXR1cyBjb250
cm9scyB3aGV0aGVyIEFwYWNoZSB3aWxsIGdlbmVyYXRlICJmdWxsIiBzdGF0
dXMKIyBpbmZvcm1hdGlvbiAoRXh0ZW5kZWRTdGF0dXMgT24pIG9yIGp1c3Qg
YmFzaWMgaW5mb3JtYXRpb24gKEV4dGVuZGVkU3RhdHVzCiMgT2ZmKSB3aGVu
IHRoZSAic2VydmVyLXN0YXR1cyIgaGFuZGxlciBpcyBjYWxsZWQuIFRoZSBk
ZWZhdWx0IGlzIE9mZi4KIwojRXh0ZW5kZWRTdGF0dXMgT24KCiMjIyBTZWN0
aW9uIDI6ICdNYWluJyBzZXJ2ZXIgY29uZmlndXJhdGlvbgojCiMgVGhlIGRp
cmVjdGl2ZXMgaW4gdGhpcyBzZWN0aW9uIHNldCB1cCB0aGUgdmFsdWVzIHVz
ZWQgYnkgdGhlICdtYWluJwojIHNlcnZlciwgd2hpY2ggcmVzcG9uZHMgdG8g
YW55IHJlcXVlc3RzIHRoYXQgYXJlbid0IGhhbmRsZWQgYnkgYQojIDxWaXJ0
dWFsSG9zdD4gZGVmaW5pdGlvbi4gIFRoZXNlIHZhbHVlcyBhbHNvIHByb3Zp
ZGUgZGVmYXVsdHMgZm9yCiMgYW55IDxWaXJ0dWFsSG9zdD4gY29udGFpbmVy
cyB5b3UgbWF5IGRlZmluZSBsYXRlciBpbiB0aGUgZmlsZS4KIwojIEFsbCBv
ZiB0aGVzZSBkaXJlY3RpdmVzIG1heSBhcHBlYXIgaW5zaWRlIDxWaXJ0dWFs
SG9zdD4gY29udGFpbmVycywKIyBpbiB3aGljaCBjYXNlIHRoZXNlIGRlZmF1
bHQgc2V0dGluZ3Mgd2lsbCBiZSBvdmVycmlkZGVuIGZvciB0aGUKIyB2aXJ0
dWFsIGhvc3QgYmVpbmcgZGVmaW5lZC4KIwoKIwojIElmIHlvdXIgU2VydmVy
VHlwZSBkaXJlY3RpdmUgKHNldCBlYXJsaWVyIGluIHRoZSAnR2xvYmFsIEVu
dmlyb25tZW50JwojIHNlY3Rpb24pIGlzIHNldCB0byAiaW5ldGQiLCB0aGUg
bmV4dCBmZXcgZGlyZWN0aXZlcyBkb24ndCBoYXZlIGFueQojIGVmZmVjdCBz
aW5jZSB0aGVpciBzZXR0aW5ncyBhcmUgZGVmaW5lZCBieSB0aGUgaW5ldGQg
Y29uZmlndXJhdGlvbi4KIyBTa2lwIGFoZWFkIHRvIHRoZSBTZXJ2ZXJBZG1p
biBkaXJlY3RpdmUuCiMKCiMKIyBQb3J0OiBUaGUgcG9ydCB0byB3aGljaCB0
aGUgc3RhbmRhbG9uZSBzZXJ2ZXIgbGlzdGVucy4gRm9yCiMgcG9ydHMgPCAx
MDIzLCB5b3Ugd2lsbCBuZWVkIGh0dHBkIHRvIGJlIHJ1biBhcyByb290IGlu
aXRpYWxseS4KIwpQb3J0IDgwCgojCiMgSWYgeW91IHdpc2ggaHR0cGQgdG8g
cnVuIGFzIGEgZGlmZmVyZW50IHVzZXIgb3IgZ3JvdXAsIHlvdSBtdXN0IHJ1
bgojIGh0dHBkIGFzIHJvb3QgaW5pdGlhbGx5IGFuZCBpdCB3aWxsIHN3aXRj
aC4gIAojCiMgVXNlci9Hcm91cDogVGhlIG5hbWUgKG9yICNudW1iZXIpIG9m
IHRoZSB1c2VyL2dyb3VwIHRvIHJ1biBodHRwZCBhcy4KIyAgLiBPbiBTQ08g
KE9EVCAzKSB1c2UgIlVzZXIgbm91c2VyIiBhbmQgIkdyb3VwIG5vZ3JvdXAi
LgojICAuIE9uIEhQVVggeW91IG1heSBub3QgYmUgYWJsZSB0byB1c2Ugc2hh
cmVkIG1lbW9yeSBhcyBub2JvZHksIGFuZCB0aGUKIyAgICBzdWdnZXN0ZWQg
d29ya2Fyb3VuZCBpcyB0byBjcmVhdGUgYSB1c2VyIHd3dyBhbmQgdXNlIHRo
YXQgdXNlci4KIyAgTk9URSB0aGF0IHNvbWUga2VybmVscyByZWZ1c2UgdG8g
c2V0Z2lkKEdyb3VwKSBvciBzZW1jdGwoSVBDX1NFVCkKIyAgd2hlbiB0aGUg
dmFsdWUgb2YgKHVuc2lnbmVkKUdyb3VwIGlzIGFib3ZlIDYwMDAwOyAKIyAg
ZG9uJ3QgdXNlIEdyb3VwICMtMSBvbiB0aGVzZSBzeXN0ZW1zIQojClVzZXIg
bm9ib2R5Ckdyb3VwICMtMQoKIwojIFNlcnZlckFkbWluOiBZb3VyIGFkZHJl
c3MsIHdoZXJlIHByb2JsZW1zIHdpdGggdGhlIHNlcnZlciBzaG91bGQgYmUK
IyBlLW1haWxlZC4gIFRoaXMgYWRkcmVzcyBhcHBlYXJzIG9uIHNvbWUgc2Vy
dmVyLWdlbmVyYXRlZCBwYWdlcywgc3VjaAojIGFzIGVycm9yIGRvY3VtZW50
cy4KIwpTZXJ2ZXJBZG1pbiB5b3VAeW91ci5hZGRyZXNzCgojCiMgU2VydmVy
TmFtZSBhbGxvd3MgeW91IHRvIHNldCBhIGhvc3QgbmFtZSB3aGljaCBpcyBz
ZW50IGJhY2sgdG8gY2xpZW50cyBmb3IKIyB5b3VyIHNlcnZlciBpZiBpdCdz
IGRpZmZlcmVudCB0aGFuIHRoZSBvbmUgdGhlIHByb2dyYW0gd291bGQgZ2V0
IChpLmUuLCB1c2UKIyAid3d3IiBpbnN0ZWFkIG9mIHRoZSBob3N0J3MgcmVh
bCBuYW1lKS4KIwojIE5vdGU6IFlvdSBjYW5ub3QganVzdCBpbnZlbnQgaG9z
dCBuYW1lcyBhbmQgaG9wZSB0aGV5IHdvcmsuIFRoZSBuYW1lIHlvdSAKIyBk
ZWZpbmUgaGVyZSBtdXN0IGJlIGEgdmFsaWQgRE5TIG5hbWUgZm9yIHlvdXIg
aG9zdC4gSWYgeW91IGRvbid0IHVuZGVyc3RhbmQKIyB0aGlzLCBhc2sgeW91
ciBuZXR3b3JrIGFkbWluaXN0cmF0b3IuCiMgSWYgeW91ciBob3N0IGRvZXNu
J3QgaGF2ZSBhIHJlZ2lzdGVyZWQgRE5TIG5hbWUsIGVudGVyIGl0cyBJUCBh
ZGRyZXNzIGhlcmUuCiMgWW91IHdpbGwgaGF2ZSB0byBhY2Nlc3MgaXQgYnkg
aXRzIGFkZHJlc3MgKGUuZy4sIGh0dHA6Ly8xMjMuNDUuNjcuODkvKQojIGFu
eXdheSwgYW5kIHRoaXMgd2lsbCBtYWtlIHJlZGlyZWN0aW9ucyB3b3JrIGlu
IGEgc2Vuc2libGUgd2F5LgojClNlcnZlck5hbWUgbG9jYWxob3N0IAoKCiMK
IyBEb2N1bWVudFJvb3Q6IFRoZSBkaXJlY3Rvcnkgb3V0IG9mIHdoaWNoIHlv
dSB3aWxsIHNlcnZlIHlvdXIKIyBkb2N1bWVudHMuIEJ5IGRlZmF1bHQsIGFs
bCByZXF1ZXN0cyBhcmUgdGFrZW4gZnJvbSB0aGlzIGRpcmVjdG9yeSwgYnV0
CiMgc3ltYm9saWMgbGlua3MgYW5kIGFsaWFzZXMgbWF5IGJlIHVzZWQgdG8g
cG9pbnQgdG8gb3RoZXIgbG9jYXRpb25zLgojCkRvY3VtZW50Um9vdCAiL3Vz
ci9sb2NhbC9hcGFjaGVfMS4zLjYvaHRkb2NzLyIKCiMKIyBFYWNoIGRpcmVj
dG9yeSB0byB3aGljaCBBcGFjaGUgaGFzIGFjY2VzcywgY2FuIGJlIGNvbmZp
Z3VyZWQgd2l0aCByZXNwZWN0CiMgdG8gd2hpY2ggc2VydmljZXMgYW5kIGZl
YXR1cmVzIGFyZSBhbGxvd2VkIGFuZC9vciBkaXNhYmxlZCBpbiB0aGF0CiMg
ZGlyZWN0b3J5IChhbmQgaXRzIHN1YmRpcmVjdG9yaWVzKS4gCiMKIyBGaXJz
dCwgd2UgY29uZmlndXJlIHRoZSAiZGVmYXVsdCIgdG8gYmUgYSB2ZXJ5IHJl
c3RyaWN0aXZlIHNldCBvZiAKIyBwZXJtaXNzaW9ucy4gIAojCjxEaXJlY3Rv
cnkgLz4KICAgIE9wdGlvbnMgRm9sbG93U3ltTGlua3MKICAgIEFsbG93T3Zl
cnJpZGUgTm9uZQo8L0RpcmVjdG9yeT4KCiMKIyBOb3RlIHRoYXQgZnJvbSB0
aGlzIHBvaW50IGZvcndhcmQgeW91IG11c3Qgc3BlY2lmaWNhbGx5IGFsbG93
CiMgcGFydGljdWxhciBmZWF0dXJlcyB0byBiZSBlbmFibGVkIC0gc28gaWYg
c29tZXRoaW5nJ3Mgbm90IHdvcmtpbmcgYXMKIyB5b3UgbWlnaHQgZXhwZWN0
LCBtYWtlIHN1cmUgdGhhdCB5b3UgaGF2ZSBzcGVjaWZpY2FsbHkgZW5hYmxl
ZCBpdAojIGJlbG93LgojCgojCiMgVGhpcyBzaG91bGQgYmUgY2hhbmdlZCB0
byB3aGF0ZXZlciB5b3Ugc2V0IERvY3VtZW50Um9vdCB0by4KIwo8RGlyZWN0
b3J5ICIvdXNyL2xvY2FsL2FwYWNoZV8xLjMuNi9odGRvY3MvIj4KCiMKIyBU
aGlzIG1heSBhbHNvIGJlICJOb25lIiwgIkFsbCIsIG9yIGFueSBjb21iaW5h
dGlvbiBvZiAiSW5kZXhlcyIsCiMgIkluY2x1ZGVzIiwgIkZvbGxvd1N5bUxp
bmtzIiwgIkV4ZWNDR0kiLCBvciAiTXVsdGlWaWV3cyIuCiMKIyBOb3RlIHRo
YXQgIk11bHRpVmlld3MiIG11c3QgYmUgbmFtZWQgKmV4cGxpY2l0bHkqIC0t
LSAiT3B0aW9ucyBBbGwiCiMgZG9lc24ndCBnaXZlIGl0IHRvIHlvdS4KIwog
ICAgT3B0aW9ucyBJbmRleGVzIEZvbGxvd1N5bUxpbmtzCgojCiMgVGhpcyBj
b250cm9scyB3aGljaCBvcHRpb25zIHRoZSAuaHRhY2Nlc3MgZmlsZXMgaW4g
ZGlyZWN0b3JpZXMgY2FuCiMgb3ZlcnJpZGUuIENhbiBhbHNvIGJlICJBbGwi
LCBvciBhbnkgY29tYmluYXRpb24gb2YgIk9wdGlvbnMiLCAiRmlsZUluZm8i
LCAKIyAiQXV0aENvbmZpZyIsIGFuZCAiTGltaXQiCiMKICAgIEFsbG93T3Zl
cnJpZGUgTm9uZQoKIwojIENvbnRyb2xzIHdobyBjYW4gZ2V0IHN0dWZmIGZy
b20gdGhpcyBzZXJ2ZXIuCiMKICAgIE9yZGVyIGFsbG93LGRlbnkKICAgIEFs
bG93IGZyb20gYWxsCjwvRGlyZWN0b3J5PgoKIwojIFVzZXJEaXI6IFRoZSBu
YW1lIG9mIHRoZSBkaXJlY3Rvcnkgd2hpY2ggaXMgYXBwZW5kZWQgb250byBh
IHVzZXIncyBob21lCiMgZGlyZWN0b3J5IGlmIGEgfnVzZXIgcmVxdWVzdCBp
cyByZWNlaXZlZC4KIwpVc2VyRGlyIHB1YmxpY19odG1sCgojCiMgQ29udHJv
bCBhY2Nlc3MgdG8gVXNlckRpciBkaXJlY3Rvcmllcy4gIFRoZSBmb2xsb3dp
bmcgaXMgYW4gZXhhbXBsZQojIGZvciBhIHNpdGUgd2hlcmUgdGhlc2UgZGly
ZWN0b3JpZXMgYXJlIHJlc3RyaWN0ZWQgdG8gcmVhZC1vbmx5LgojCiM8RGly
ZWN0b3J5IC8qL3B1YmxpY19odG1sPgojICAgIEFsbG93T3ZlcnJpZGUgRmls
ZUluZm8gQXV0aENvbmZpZyBMaW1pdAojICAgIE9wdGlvbnMgTXVsdGlWaWV3
cyBJbmRleGVzIFN5bUxpbmtzSWZPd25lck1hdGNoIEluY2x1ZGVzTm9FeGVj
CiMgICAgPExpbWl0IEdFVCBQT1NUIE9QVElPTlMgUFJPUEZJTkQ+CiMgICAg
ICAgIE9yZGVyIGFsbG93LGRlbnkKIyAgICAgICAgQWxsb3cgZnJvbSBhbGwK
IyAgICA8L0xpbWl0PgojICAgIDxMaW1pdCBQVVQgREVMRVRFIFBBVENIIFBS
T1BQQVRDSCBNS0NPTCBDT1BZIE1PVkUgTE9DSyBVTkxPQ0s+CgoKIyAgICAg
ICAgT3JkZXIgZGVueSxhbGxvdwojICAgICAgICBEZW55IGZyb20gYWxsCiMg
ICAgPC9MaW1pdD4KIzwvRGlyZWN0b3J5PgoKIwojIERpcmVjdG9yeUluZGV4
OiBOYW1lIG9mIHRoZSBmaWxlIG9yIGZpbGVzIHRvIHVzZSBhcyBhIHByZS13
cml0dGVuIEhUTUwKIyBkaXJlY3RvcnkgaW5kZXguICBTZXBhcmF0ZSBtdWx0
aXBsZSBlbnRyaWVzIHdpdGggc3BhY2VzLgojCkRpcmVjdG9yeUluZGV4IGlu
ZGV4Lmh0bWwKCiMKIyBBY2Nlc3NGaWxlTmFtZTogVGhlIG5hbWUgb2YgdGhl
IGZpbGUgdG8gbG9vayBmb3IgaW4gZWFjaCBkaXJlY3RvcnkKIyBmb3IgYWNj
ZXNzIGNvbnRyb2wgaW5mb3JtYXRpb24uCiMKQWNjZXNzRmlsZU5hbWUgLmh0
YWNjZXNzCgojCiMgVGhlIGZvbGxvd2luZyBsaW5lcyBwcmV2ZW50IC5odGFj
Y2VzcyBmaWxlcyBmcm9tIGJlaW5nIHZpZXdlZCBieQojIFdlYiBjbGllbnRz
LiAgU2luY2UgLmh0YWNjZXNzIGZpbGVzIG9mdGVuIGNvbnRhaW4gYXV0aG9y
aXphdGlvbgojIGluZm9ybWF0aW9uLCBhY2Nlc3MgaXMgZGlzYWxsb3dlZCBm
b3Igc2VjdXJpdHkgcmVhc29ucy4gIENvbW1lbnQKIyB0aGVzZSBsaW5lcyBv
dXQgaWYgeW91IHdhbnQgV2ViIHZpc2l0b3JzIHRvIHNlZSB0aGUgY29udGVu
dHMgb2YKIyAuaHRhY2Nlc3MgZmlsZXMuICBJZiB5b3UgY2hhbmdlIHRoZSBB
Y2Nlc3NGaWxlTmFtZSBkaXJlY3RpdmUgYWJvdmUsCiMgYmUgc3VyZSB0byBt
YWtlIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5nZXMgaGVyZS4KIwo8RmlsZXMg
Lmh0YWNjZXNzPgogICAgT3JkZXIgYWxsb3csZGVueQogICAgRGVueSBmcm9t
IGFsbAo8L0ZpbGVzPgoKIwojIENhY2hlTmVnb3RpYXRlZERvY3M6IEJ5IGRl
ZmF1bHQsIEFwYWNoZSBzZW5kcyAiUHJhZ21hOiBuby1jYWNoZSIgd2l0aCBl
YWNoCiMgZG9jdW1lbnQgdGhhdCB3YXMgbmVnb3RpYXRlZCBvbiB0aGUgYmFz
aXMgb2YgY29udGVudC4gVGhpcyBhc2tzIHByb3h5CiMgc2VydmVycyBub3Qg
dG8gY2FjaGUgdGhlIGRvY3VtZW50LiBVbmNvbW1lbnRpbmcgdGhlIGZvbGxv
d2luZyBsaW5lIGRpc2FibGVzCiMgdGhpcyBiZWhhdmlvciwgYW5kIHByb3hp
ZXMgd2lsbCBiZSBhbGxvd2VkIHRvIGNhY2hlIHRoZSBkb2N1bWVudHMuCiMK
I0NhY2hlTmVnb3RpYXRlZERvY3MKCiMKIyBVc2VDYW5vbmljYWxOYW1lOiAg
KG5ldyBmb3IgMS4zKSAgV2l0aCB0aGlzIHNldHRpbmcgdHVybmVkIG9uLCB3
aGVuZXZlcgojIEFwYWNoZSBuZWVkcyB0byBjb25zdHJ1Y3QgYSBzZWxmLXJl
ZmVyZW5jaW5nIFVSTCAoYSBVUkwgdGhhdCByZWZlcnMgYmFjawojIHRvIHRo
ZSBzZXJ2ZXIgdGhlIHJlc3BvbnNlIGlzIGNvbWluZyBmcm9tKSBpdCB3aWxs
IHVzZSBTZXJ2ZXJOYW1lIGFuZAojIFBvcnQgdG8gZm9ybSBhICJjYW5vbmlj
YWwiIG5hbWUuICBXaXRoIHRoaXMgc2V0dGluZyBvZmYsIEFwYWNoZSB3aWxs
CiMgdXNlIHRoZSBob3N0bmFtZTpwb3J0IHRoYXQgdGhlIGNsaWVudCBzdXBw
bGllZCwgd2hlbiBwb3NzaWJsZS4gIFRoaXMKIyBhbHNvIGFmZmVjdHMgU0VS
VkVSX05BTUUgYW5kIFNFUlZFUl9QT1JUIGluIENHSSBzY3JpcHRzLgojClVz
ZUNhbm9uaWNhbE5hbWUgT24KCiMKIyBUeXBlc0NvbmZpZyBkZXNjcmliZXMg
d2hlcmUgdGhlIG1pbWUudHlwZXMgZmlsZSAob3IgZXF1aXZhbGVudCkgaXMK
IyB0byBiZSBmb3VuZC4KIwpUeXBlc0NvbmZpZyBjb25mL21pbWUudHlwZXMK
CiMKIyBEZWZhdWx0VHlwZSBpcyB0aGUgZGVmYXVsdCBNSU1FIHR5cGUgdGhl
IHNlcnZlciB3aWxsIHVzZSBmb3IgYSBkb2N1bWVudAojIGlmIGl0IGNhbm5v
dCBvdGhlcndpc2UgZGV0ZXJtaW5lIG9uZSwgc3VjaCBhcyBmcm9tIGZpbGVu
YW1lIGV4dGVuc2lvbnMuCiMgSWYgeW91ciBzZXJ2ZXIgY29udGFpbnMgbW9z
dGx5IHRleHQgb3IgSFRNTCBkb2N1bWVudHMsICJ0ZXh0L3BsYWluIiBpcwoj
IGEgZ29vZCB2YWx1ZS4gIElmIG1vc3Qgb2YgeW91ciBjb250ZW50IGlzIGJp
bmFyeSwgc3VjaCBhcyBhcHBsaWNhdGlvbnMKIyBvciBpbWFnZXMsIHlvdSBt
YXkgd2FudCB0byB1c2UgImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIgaW5z
dGVhZCB0bwojIGtlZXAgYnJvd3NlcnMgZnJvbSB0cnlpbmcgdG8gZGlzcGxh
eSBiaW5hcnkgZmlsZXMgYXMgdGhvdWdoIHRoZXkgYXJlCiMgdGV4dC4KIwpE
ZWZhdWx0VHlwZSB0ZXh0L3BsYWluCgojCiMgVGhlIG1vZF9taW1lX21hZ2lj
IG1vZHVsZSBhbGxvd3MgdGhlIHNlcnZlciB0byB1c2UgdmFyaW91cyBoaW50
cyBmcm9tIHRoZQojIGNvbnRlbnRzIG9mIHRoZSBmaWxlIGl0c2VsZiB0byBk
ZXRlcm1pbmUgaXRzIHR5cGUuICBUaGUgTUlNRU1hZ2ljRmlsZQojIGRpcmVj
dGl2ZSB0ZWxscyB0aGUgbW9kdWxlIHdoZXJlIHRoZSBoaW50IGRlZmluaXRp
b25zIGFyZSBsb2NhdGVkLgojIG1vZF9taW1lX21hZ2ljIGlzIG5vdCBwYXJ0
IG9mIHRoZSBkZWZhdWx0IHNlcnZlciAoeW91IGhhdmUgdG8gYWRkCiMgaXQg
eW91cnNlbGYgd2l0aCBhIExvYWRNb2R1bGUgW3NlZSB0aGUgRFNPIHBhcmFn
cmFwaCBpbiB0aGUgJ0dsb2JhbAojIEVudmlyb25tZW50JyBzZWN0aW9uXSwg
b3IgcmVjb21waWxlIHRoZSBzZXJ2ZXIgYW5kIGluY2x1ZGUgbW9kX21pbWVf
bWFnaWMKIyBhcyBwYXJ0IG9mIHRoZSBjb25maWd1cmF0aW9uKSwgc28gaXQn
cyBlbmNsb3NlZCBpbiBhbiA8SWZNb2R1bGU+IGNvbnRhaW5lci4KIyBUaGlz
IG1lYW5zIHRoYXQgdGhlIE1JTUVNYWdpY0ZpbGUgZGlyZWN0aXZlIHdpbGwg
b25seSBiZSBwcm9jZXNzZWQgaWYgdGhlCiMgbW9kdWxlIGlzIHBhcnQgb2Yg
dGhlIHNlcnZlci4KIwo8SWZNb2R1bGUgbW9kX21pbWVfbWFnaWMuYz4KICAg
IE1JTUVNYWdpY0ZpbGUgY29uZi9tYWdpYwo8L0lmTW9kdWxlPgoKIwojIEhv
c3RuYW1lTG9va3VwczogTG9nIHRoZSBuYW1lcyBvZiBjbGllbnRzIG9yIGp1
c3QgdGhlaXIgSVAgYWRkcmVzc2VzCiMgZS5nLiwgd3d3LmFwYWNoZS5vcmcg
KG9uKSBvciAyMDQuNjIuMTI5LjEzMiAob2ZmKS4KIyBUaGUgZGVmYXVsdCBp
cyBvZmYgYmVjYXVzZSBpdCdkIGJlIG92ZXJhbGwgYmV0dGVyIGZvciB0aGUg
bmV0IGlmIHBlb3BsZQojIGhhZCB0byBrbm93aW5nbHkgdHVybiB0aGlzIGZl
YXR1cmUgb24sIHNpbmNlIGVuYWJsaW5nIGl0IG1lYW5zIHRoYXQKIyBlYWNo
IGNsaWVudCByZXF1ZXN0IHdpbGwgcmVzdWx0IGluIEFUIExFQVNUIG9uZSBs
b29rdXAgcmVxdWVzdCB0byB0aGUKIyBuYW1lc2VydmVyLgojCkhvc3RuYW1l
TG9va3VwcyBPZmYKCiMKIyBFcnJvckxvZzogVGhlIGxvY2F0aW9uIG9mIHRo
ZSBlcnJvciBsb2cgZmlsZS4KIyBJZiB5b3UgZG8gbm90IHNwZWNpZnkgYW4g
RXJyb3JMb2cgZGlyZWN0aXZlIHdpdGhpbiBhIDxWaXJ0dWFsSG9zdD4KIyBj
b250YWluZXIsIGVycm9yIG1lc3NhZ2VzIHJlbGF0aW5nIHRvIHRoYXQgdmly
dHVhbCBob3N0IHdpbGwgYmUKIyBsb2dnZWQgaGVyZS4gIElmIHlvdSAqZG8q
IGRlZmluZSBhbiBlcnJvciBsb2dmaWxlIGZvciBhIDxWaXJ0dWFsSG9zdD4K
IyBjb250YWluZXIsIHRoYXQgaG9zdCdzIGVycm9ycyB3aWxsIGJlIGxvZ2dl
ZCB0aGVyZSBhbmQgbm90IGhlcmUuCiMKRXJyb3JMb2cgbG9ncy9lcnJvcl9s
b2cKCiMKIyBMb2dMZXZlbDogQ29udHJvbCB0aGUgbnVtYmVyIG9mIG1lc3Nh
Z2VzIGxvZ2dlZCB0byB0aGUgZXJyb3JfbG9nLgojIFBvc3NpYmxlIHZhbHVl
cyBpbmNsdWRlOiBkZWJ1ZywgaW5mbywgbm90aWNlLCB3YXJuLCBlcnJvciwg
Y3JpdCwKIyBhbGVydCwgZW1lcmcuCiMKTG9nTGV2ZWwgd2FybgoKIwojIFRo
ZSBmb2xsb3dpbmcgZGlyZWN0aXZlcyBkZWZpbmUgc29tZSBmb3JtYXQgbmlj
a25hbWVzIGZvciB1c2Ugd2l0aAojIGEgQ3VzdG9tTG9nIGRpcmVjdGl2ZSAo
c2VlIGJlbG93KS4KIwpMb2dGb3JtYXQgIiVoICVsICV1ICV0IFwiJXJcIiAl
PnMgJWIgXCIle1JlZmVyZXJ9aVwiIFwiJXtVc2VyLUFnZW50fWlcIiIgY29t
YmluZWQKTG9nRm9ybWF0ICIlaCAlbCAldSAldCBcIiVyXCIgJT5zICViIiBj
b21tb24KTG9nRm9ybWF0ICIle1JlZmVyZXJ9aSAtPiAlVSIgcmVmZXJlcgpM
b2dGb3JtYXQgIiV7VXNlci1hZ2VudH1pIiBhZ2VudAoKIwojIFRoZSBsb2Nh
dGlvbiBhbmQgZm9ybWF0IG9mIHRoZSBhY2Nlc3MgbG9nZmlsZSAoQ29tbW9u
IExvZ2ZpbGUgRm9ybWF0KS4KIyBJZiB5b3UgZG8gbm90IGRlZmluZSBhbnkg
YWNjZXNzIGxvZ2ZpbGVzIHdpdGhpbiBhIDxWaXJ0dWFsSG9zdD4KIyBjb250
YWluZXIsIHRoZXkgd2lsbCBiZSBsb2dnZWQgaGVyZS4gIENvbnRyYXJpd2lz
ZSwgaWYgeW91ICpkbyoKIyBkZWZpbmUgcGVyLTxWaXJ0dWFsSG9zdD4gYWNj
ZXNzIGxvZ2ZpbGVzLCB0cmFuc2FjdGlvbnMgd2lsbCBiZQojIGxvZ2dlZCB0
aGVyZWluIGFuZCAqbm90KiBpbiB0aGlzIGZpbGUuCiMKQ3VzdG9tTG9nIGxv
Z3MvYWNjZXNzX2xvZyBjb21tb24KCiMKIyBJZiB5b3Ugd291bGQgbGlrZSB0
byBoYXZlIGFnZW50IGFuZCByZWZlcmVyIGxvZ2ZpbGVzLCB1bmNvbW1lbnQg
dGhlCiMgZm9sbG93aW5nIGRpcmVjdGl2ZXMuCiMKI0N1c3RvbUxvZyBsb2dz
L3JlZmVyZXJfbG9nIHJlZmVyZXIKI0N1c3RvbUxvZyBsb2dzL2FnZW50X2xv
ZyBhZ2VudAoKIwojIElmIHlvdSBwcmVmZXIgYSBzaW5nbGUgbG9nZmlsZSB3
aXRoIGFjY2VzcywgYWdlbnQsIGFuZCByZWZlcmVyIGluZm9ybWF0aW9uCiMg
KENvbWJpbmVkIExvZ2ZpbGUgRm9ybWF0KSB5b3UgY2FuIHVzZSB0aGUgZm9s
bG93aW5nIGRpcmVjdGl2ZS4KIwojQ3VzdG9tTG9nIGxvZ3MvYWNjZXNzX2xv
ZyBjb21iaW5lZAoKIwojIE9wdGlvbmFsbHkgYWRkIGEgbGluZSBjb250YWlu
aW5nIHRoZSBzZXJ2ZXIgdmVyc2lvbiBhbmQgdmlydHVhbCBob3N0CiMgbmFt
ZSB0byBzZXJ2ZXItZ2VuZXJhdGVkIHBhZ2VzIChlcnJvciBkb2N1bWVudHMs
IEZUUCBkaXJlY3RvcnkgbGlzdGluZ3MsCiMgbW9kX3N0YXR1cyBhbmQgbW9k
X2luZm8gb3V0cHV0IGV0Yy4sIGJ1dCBub3QgQ0dJIGdlbmVyYXRlZCBkb2N1
bWVudHMpLgojIFNldCB0byAiRU1haWwiIHRvIGFsc28gaW5jbHVkZSBhIG1h
aWx0bzogbGluayB0byB0aGUgU2VydmVyQWRtaW4uCiMgU2V0IHRvIG9uZSBv
ZjogIE9uIHwgT2ZmIHwgRU1haWwKIwpTZXJ2ZXJTaWduYXR1cmUgT24KCiMK
IyBBbGlhc2VzOiBBZGQgaGVyZSBhcyBtYW55IGFsaWFzZXMgYXMgeW91IG5l
ZWQgKHdpdGggbm8gbGltaXQpLiBUaGUgZm9ybWF0IGlzIAojIEFsaWFzIGZh
a2VuYW1lIHJlYWxuYW1lCiMKIyBOb3RlIHRoYXQgaWYgeW91IGluY2x1ZGUg
YSB0cmFpbGluZyAvIG9uIGZha2VuYW1lIHRoZW4gdGhlIHNlcnZlciB3aWxs
CiMgcmVxdWlyZSBpdCB0byBiZSBwcmVzZW50IGluIHRoZSBVUkwuICBTbyAi
L2ljb25zIiBpc24ndCBhbGlhc2VkIGluIHRoaXMKIyBleGFtcGxlLCBvbmx5
ICIvaWNvbnMvIi4uCiMKQWxpYXMgL2ljb25zLyAiL3Vzci9sb2NhbC9hcGFj
aGVfMS4zLjYvaWNvbnMvIgoKPERpcmVjdG9yeSAiL3Vzci9sb2NhbC9hcGFj
aGVfMS4zLjYvaWNvbnMiPgogICAgT3B0aW9ucyBJbmRleGVzIE11bHRpVmll
d3MKICAgIEFsbG93T3ZlcnJpZGUgTm9uZQogICAgT3JkZXIgYWxsb3csZGVu
eQogICAgQWxsb3cgZnJvbSBhbGwKPC9EaXJlY3Rvcnk+CgojCiMgU2NyaXB0
QWxpYXM6IFRoaXMgY29udHJvbHMgd2hpY2ggZGlyZWN0b3JpZXMgY29udGFp
biBzZXJ2ZXIgc2NyaXB0cy4KIyBTY3JpcHRBbGlhc2VzIGFyZSBlc3NlbnRp
YWxseSB0aGUgc2FtZSBhcyBBbGlhc2VzLCBleGNlcHQgdGhhdAojIGRvY3Vt
ZW50cyBpbiB0aGUgcmVhbG5hbWUgZGlyZWN0b3J5IGFyZSB0cmVhdGVkIGFz
IGFwcGxpY2F0aW9ucyBhbmQKIyBydW4gYnkgdGhlIHNlcnZlciB3aGVuIHJl
cXVlc3RlZCByYXRoZXIgdGhhbiBhcyBkb2N1bWVudHMgc2VudCB0byB0aGUg
Y2xpZW50LgojIFRoZSBzYW1lIHJ1bGVzIGFib3V0IHRyYWlsaW5nICIvIiBh
cHBseSB0byBTY3JpcHRBbGlhcyBkaXJlY3RpdmVzIGFzIHRvCiMgQWxpYXMu
CiMKU2NyaXB0QWxpYXMgL2NnaS1iaW4vICIvdXNyL2xvY2FsL2FwYWNoZV8x
LjMuNi9jZ2ktYmluLyIKCiMKIyAiQEBTZXJ2ZXJSb290QEAvY2dpLWJpbiIg
c2hvdWxkIGJlIGNoYW5nZWQgdG8gd2hhdGV2ZXIgeW91ciBTY3JpcHRBbGlh
c2VkCiMgQ0dJIGRpcmVjdG9yeSBleGlzdHMsIGlmIHlvdSBoYXZlIHRoYXQg
Y29uZmlndXJlZC4KIwo8RGlyZWN0b3J5ICIvdXNyL2xvY2FsL2FwYWNoZV8x
LjMuNi9jZ2ktYmluLyI+CiAgICBBbGxvd092ZXJyaWRlIE5vbmUKICAgIE9w
dGlvbnMgTm9uZQogICAgT3JkZXIgYWxsb3csZGVueQogICAgQWxsb3cgZnJv
bSBhbGwKPC9EaXJlY3Rvcnk+CgojCiMgUmVkaXJlY3QgYWxsb3dzIHlvdSB0
byB0ZWxsIGNsaWVudHMgYWJvdXQgZG9jdW1lbnRzIHdoaWNoIHVzZWQgdG8g
ZXhpc3QgaW4KIyB5b3VyIHNlcnZlcidzIG5hbWVzcGFjZSwgYnV0IGRvIG5v
dCBhbnltb3JlLiBUaGlzIGFsbG93cyB5b3UgdG8gdGVsbCB0aGUKIyBjbGll
bnRzIHdoZXJlIHRvIGxvb2sgZm9yIHRoZSByZWxvY2F0ZWQgZG9jdW1lbnQu
CiMgRm9ybWF0OiBSZWRpcmVjdCBvbGQtVVJJIG5ldy1VUkwKIwoKIwojIERp
cmVjdGl2ZXMgY29udHJvbGxpbmcgdGhlIGRpc3BsYXkgb2Ygc2VydmVyLWdl
bmVyYXRlZCBkaXJlY3RvcnkgbGlzdGluZ3MuCiMKCiMKIyBGYW5jeUluZGV4
aW5nIGlzIHdoZXRoZXIgeW91IHdhbnQgZmFuY3kgZGlyZWN0b3J5IGluZGV4
aW5nIG9yIHN0YW5kYXJkCiMKSW5kZXhPcHRpb25zIEZhbmN5SW5kZXhpbmcK
CiMKIyBBZGRJY29uKiBkaXJlY3RpdmVzIHRlbGwgdGhlIHNlcnZlciB3aGlj
aCBpY29uIHRvIHNob3cgZm9yIGRpZmZlcmVudAojIGZpbGVzIG9yIGZpbGVu
YW1lIGV4dGVuc2lvbnMuICBUaGVzZSBhcmUgb25seSBkaXNwbGF5ZWQgZm9y
CiMgRmFuY3lJbmRleGVkIGRpcmVjdG9yaWVzLgojCkFkZEljb25CeUVuY29k
aW5nIChDTVAsL2ljb25zL2NvbXByZXNzZWQuZ2lmKSB4LWNvbXByZXNzIHgt
Z3ppcAoKQWRkSWNvbkJ5VHlwZSAoVFhULC9pY29ucy90ZXh0LmdpZikgdGV4
dC8qCkFkZEljb25CeVR5cGUgKElNRywvaWNvbnMvaW1hZ2UyLmdpZikgaW1h
Z2UvKgpBZGRJY29uQnlUeXBlIChTTkQsL2ljb25zL3NvdW5kMi5naWYpIGF1
ZGlvLyoKQWRkSWNvbkJ5VHlwZSAoVklELC9pY29ucy9tb3ZpZS5naWYpIHZp
ZGVvLyoKCkFkZEljb24gL2ljb25zL2JpbmFyeS5naWYgLmJpbiAuZXhlCkFk
ZEljb24gL2ljb25zL2JpbmhleC5naWYgLmhxeApBZGRJY29uIC9pY29ucy90
YXIuZ2lmIC50YXIKQWRkSWNvbiAvaWNvbnMvd29ybGQyLmdpZiAud3JsIC53
cmwuZ3ogLnZybWwgLnZybSAuaXYKQWRkSWNvbiAvaWNvbnMvY29tcHJlc3Nl
ZC5naWYgLlogLnogLnRneiAuZ3ogLnppcApBZGRJY29uIC9pY29ucy9hLmdp
ZiAucHMgLmFpIC5lcHMKQWRkSWNvbiAvaWNvbnMvbGF5b3V0LmdpZiAuaHRt
bCAuc2h0bWwgLmh0bSAucGRmCkFkZEljb24gL2ljb25zL3RleHQuZ2lmIC50
eHQKQWRkSWNvbiAvaWNvbnMvYy5naWYgLmMKQWRkSWNvbiAvaWNvbnMvcC5n
aWYgLnBsIC5weQpBZGRJY29uIC9pY29ucy9mLmdpZiAuZm9yCkFkZEljb24g
L2ljb25zL2R2aS5naWYgLmR2aQpBZGRJY29uIC9pY29ucy91dWVuY29kZWQu
Z2lmIC51dQpBZGRJY29uIC9pY29ucy9zY3JpcHQuZ2lmIC5jb25mIC5zaCAu
c2hhciAuY3NoIC5rc2ggLnRjbApBZGRJY29uIC9pY29ucy90ZXguZ2lmIC50
ZXgKQWRkSWNvbiAvaWNvbnMvYm9tYi5naWYgY29yZQoKQWRkSWNvbiAvaWNv
bnMvYmFjay5naWYgLi4KQWRkSWNvbiAvaWNvbnMvaGFuZC5yaWdodC5naWYg
UkVBRE1FCkFkZEljb24gL2ljb25zL2ZvbGRlci5naWYgXl5ESVJFQ1RPUlle
XgpBZGRJY29uIC9pY29ucy9ibGFuay5naWYgXl5CTEFOS0lDT05eXgoKIwoj
IERlZmF1bHRJY29uIGlzIHdoaWNoIGljb24gdG8gc2hvdyBmb3IgZmlsZXMg
d2hpY2ggZG8gbm90IGhhdmUgYW4gaWNvbgojIGV4cGxpY2l0bHkgc2V0Lgoj
CkRlZmF1bHRJY29uIC9pY29ucy91bmtub3duLmdpZgoKIwojIEFkZERlc2Ny
aXB0aW9uIGFsbG93cyB5b3UgdG8gcGxhY2UgYSBzaG9ydCBkZXNjcmlwdGlv
biBhZnRlciBhIGZpbGUgaW4KIyBzZXJ2ZXItZ2VuZXJhdGVkIGluZGV4ZXMu
ICBUaGVzZSBhcmUgb25seSBkaXNwbGF5ZWQgZm9yIEZhbmN5SW5kZXhlZAoj
IGRpcmVjdG9yaWVzLgojIEZvcm1hdDogQWRkRGVzY3JpcHRpb24gImRlc2Ny
aXB0aW9uIiBmaWxlbmFtZQojCiNBZGREZXNjcmlwdGlvbiAiR1pJUCBjb21w
cmVzc2VkIGRvY3VtZW50IiAuZ3oKI0FkZERlc2NyaXB0aW9uICJ0YXIgYXJj
aGl2ZSIgLnRhcgojQWRkRGVzY3JpcHRpb24gIkdaSVAgY29tcHJlc3NlZCB0
YXIgYXJjaGl2ZSIgLnRnegoKIwojIFJlYWRtZU5hbWUgaXMgdGhlIG5hbWUg
b2YgdGhlIFJFQURNRSBmaWxlIHRoZSBzZXJ2ZXIgd2lsbCBsb29rIGZvciBi
eQojIGRlZmF1bHQsIGFuZCBhcHBlbmQgdG8gZGlyZWN0b3J5IGxpc3Rpbmdz
LgojCiMgSGVhZGVyTmFtZSBpcyB0aGUgbmFtZSBvZiBhIGZpbGUgd2hpY2gg
c2hvdWxkIGJlIHByZXBlbmRlZCB0bwojIGRpcmVjdG9yeSBpbmRleGVzLiAK
IwojIFRoZSBzZXJ2ZXIgd2lsbCBmaXJzdCBsb29rIGZvciBuYW1lLmh0bWwg
YW5kIGluY2x1ZGUgaXQgaWYgZm91bmQuCiMgSWYgbmFtZS5odG1sIGRvZXNu
J3QgZXhpc3QsIHRoZSBzZXJ2ZXIgd2lsbCB0aGVuIGxvb2sgZm9yIG5hbWUu
dHh0CiMgYW5kIGluY2x1ZGUgaXQgYXMgcGxhaW50ZXh0IGlmIGZvdW5kLgoj
ClJlYWRtZU5hbWUgUkVBRE1FCkhlYWRlck5hbWUgSEVBREVSCgojCiMgSW5k
ZXhJZ25vcmUgaXMgYSBzZXQgb2YgZmlsZW5hbWVzIHdoaWNoIGRpcmVjdG9y
eSBpbmRleGluZyBzaG91bGQgaWdub3JlCiMgYW5kIG5vdCBpbmNsdWRlIGlu
IHRoZSBsaXN0aW5nLiAgU2hlbGwtc3R5bGUgd2lsZGNhcmRpbmcgaXMgcGVy
bWl0dGVkLgojCkluZGV4SWdub3JlIC4/PyogKn4gKiMgSEVBREVSKiBSRUFE
TUUqIFJDUyBDVlMgKix2ICosdAoKIwojIEFkZEVuY29kaW5nIGFsbG93cyB5
b3UgdG8gaGF2ZSBjZXJ0YWluIGJyb3dzZXJzIChNb3NhaWMvWCAyLjErKSB1
bmNvbXByZXNzCiMgaW5mb3JtYXRpb24gb24gdGhlIGZseS4gTm90ZTogTm90
IGFsbCBicm93c2VycyBzdXBwb3J0IHRoaXMuCiMgRGVzcGl0ZSB0aGUgbmFt
ZSBzaW1pbGFyaXR5LCB0aGUgZm9sbG93aW5nIEFkZCogZGlyZWN0aXZlcyBo
YXZlIG5vdGhpbmcKIyB0byBkbyB3aXRoIHRoZSBGYW5jeUluZGV4aW5nIGN1
c3RvbWl6YXRpb24gZGlyZWN0aXZlcyBhYm92ZS4KIwpBZGRFbmNvZGluZyB4
LWNvbXByZXNzIFoKQWRkRW5jb2RpbmcgeC1nemlwIGd6CgojCiMgQWRkTGFu
Z3VhZ2UgYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHRoZSBsYW5ndWFnZSBvZiBh
IGRvY3VtZW50LiBZb3UgY2FuCiMgdGhlbiB1c2UgY29udGVudCBuZWdvdGlh
dGlvbiB0byBnaXZlIGEgYnJvd3NlciBhIGZpbGUgaW4gYSBsYW5ndWFnZQoj
IGl0IGNhbiB1bmRlcnN0YW5kLiAgTm90ZSB0aGF0IHRoZSBzdWZmaXggZG9l
cyBub3QgaGF2ZSB0byBiZSB0aGUgc2FtZQojIGFzIHRoZSBsYW5ndWFnZSBr
ZXl3b3JkIC0tLSB0aG9zZSB3aXRoIGRvY3VtZW50cyBpbiBQb2xpc2ggKHdo
b3NlCiMgbmV0LXN0YW5kYXJkIGxhbmd1YWdlIGNvZGUgaXMgcGwpIG1heSB3
aXNoIHRvIHVzZSAiQWRkTGFuZ3VhZ2UgcGwgLnBvIiAKIyB0byBhdm9pZCB0
aGUgYW1iaWd1aXR5IHdpdGggdGhlIGNvbW1vbiBzdWZmaXggZm9yIHBlcmwg
c2NyaXB0cy4KIwpBZGRMYW5ndWFnZSBlbiAuZW4KQWRkTGFuZ3VhZ2UgZnIg
LmZyCkFkZExhbmd1YWdlIGRlIC5kZQpBZGRMYW5ndWFnZSBkYSAuZGEKQWRk
TGFuZ3VhZ2UgZWwgLmVsCkFkZExhbmd1YWdlIGl0IC5pdAoKIwojIExhbmd1
YWdlUHJpb3JpdHkgYWxsb3dzIHlvdSB0byBnaXZlIHByZWNlZGVuY2UgdG8g
c29tZSBsYW5ndWFnZXMKIyBpbiBjYXNlIG9mIGEgdGllIGR1cmluZyBjb250
ZW50IG5lZ290aWF0aW9uLgojIEp1c3QgbGlzdCB0aGUgbGFuZ3VhZ2VzIGlu
IGRlY3JlYXNpbmcgb3JkZXIgb2YgcHJlZmVyZW5jZS4KIwpMYW5ndWFnZVBy
aW9yaXR5IGVuIGZyIGRlCgojCiMgQWRkVHlwZSBhbGxvd3MgeW91IHRvIHR3
ZWFrIG1pbWUudHlwZXMgd2l0aG91dCBhY3R1YWxseSBlZGl0aW5nIGl0LCBv
ciB0bwojIG1ha2UgY2VydGFpbiBmaWxlcyB0byBiZSBjZXJ0YWluIHR5cGVz
LgojCiMgRm9yIGV4YW1wbGUsIHRoZSBQSFAzIG1vZHVsZSAobm90IHBhcnQg
b2YgdGhlIEFwYWNoZSBkaXN0cmlidXRpb24gLSBzZWUKIyBodHRwOi8vd3d3
LnBocC5uZXQpIHdpbGwgdHlwaWNhbGx5IHVzZToKIwojQWRkVHlwZSBhcHBs
aWNhdGlvbi94LWh0dHBkLXBocDMgLnBocDMKI0FkZFR5cGUgYXBwbGljYXRp
b24veC1odHRwZC1waHAzLXNvdXJjZSAucGhwcwoKIwojIEFkZEhhbmRsZXIg
YWxsb3dzIHlvdSB0byBtYXAgY2VydGFpbiBmaWxlIGV4dGVuc2lvbnMgdG8g
ImhhbmRsZXJzIiwKIyBhY3Rpb25zIHVucmVsYXRlZCB0byBmaWxldHlwZS4g
VGhlc2UgY2FuIGJlIGVpdGhlciBidWlsdCBpbnRvIHRoZSBzZXJ2ZXIKIyBv
ciBhZGRlZCB3aXRoIHRoZSBBY3Rpb24gY29tbWFuZCAoc2VlIGJlbG93KQoj
CiMgSWYgeW91IHdhbnQgdG8gdXNlIHNlcnZlciBzaWRlIGluY2x1ZGVzLCBv
ciBDR0kgb3V0c2lkZQojIFNjcmlwdEFsaWFzZWQgZGlyZWN0b3JpZXMsIHVu
Y29tbWVudCB0aGUgZm9sbG93aW5nIGxpbmVzLgojCiMgVG8gdXNlIENHSSBz
Y3JpcHRzOgojCiNBZGRIYW5kbGVyIGNnaS1zY3JpcHQgLmNnaQoKIwojIFRv
IHVzZSBzZXJ2ZXItcGFyc2VkIEhUTUwgZmlsZXMKIwpBZGRUeXBlIHRleHQv
aHRtbCAuc2h0bWwKQWRkSGFuZGxlciBzZXJ2ZXItcGFyc2VkIC5zaHRtbAoK
IwojIFVuY29tbWVudCB0aGUgZm9sbG93aW5nIGxpbmUgdG8gZW5hYmxlIEFw
YWNoZSdzIHNlbmQtYXNpcyBIVFRQIGZpbGUKIyBmZWF0dXJlCiMKQWRkSGFu
ZGxlciBzZW5kLWFzLWlzIGFzaXMKCiMKIyBJZiB5b3Ugd2lzaCB0byB1c2Ug
c2VydmVyLXBhcnNlZCBpbWFnZW1hcCBmaWxlcywgdXNlCiMKQWRkSGFuZGxl
ciBpbWFwLWZpbGUgbWFwCgojCiMgVG8gZW5hYmxlIHR5cGUgbWFwcywgeW91
IG1pZ2h0IHdhbnQgdG8gdXNlCiMKQWRkSGFuZGxlciB0eXBlLW1hcCB2YXIK
CiMKIyBBY3Rpb24gbGV0cyB5b3UgZGVmaW5lIG1lZGlhIHR5cGVzIHRoYXQg
d2lsbCBleGVjdXRlIGEgc2NyaXB0IHdoZW5ldmVyCiMgYSBtYXRjaGluZyBm
aWxlIGlzIGNhbGxlZC4gVGhpcyBlbGltaW5hdGVzIHRoZSBuZWVkIGZvciBy
ZXBlYXRlZCBVUkwKIyBwYXRobmFtZXMgZm9yIG9mdC11c2VkIENHSSBmaWxl
IHByb2Nlc3NvcnMuCiMgRm9ybWF0OiBBY3Rpb24gbWVkaWEvdHlwZSAvY2dp
LXNjcmlwdC9sb2NhdGlvbgojIEZvcm1hdDogQWN0aW9uIGhhbmRsZXItbmFt
ZSAvY2dpLXNjcmlwdC9sb2NhdGlvbgojCgojCiMgTWV0YURpcjogc3BlY2lm
aWVzIHRoZSBuYW1lIG9mIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggQXBhY2hl
IGNhbiBmaW5kCiMgbWV0YSBpbmZvcm1hdGlvbiBmaWxlcy4gVGhlc2UgZmls
ZXMgY29udGFpbiBhZGRpdGlvbmFsIEhUVFAgaGVhZGVycwojIHRvIGluY2x1
ZGUgd2hlbiBzZW5kaW5nIHRoZSBkb2N1bWVudAojCiNNZXRhRGlyIC53ZWIK
CiMKIyBNZXRhU3VmZml4OiBzcGVjaWZpZXMgdGhlIGZpbGUgbmFtZSBzdWZm
aXggZm9yIHRoZSBmaWxlIGNvbnRhaW5pbmcgdGhlCiMgbWV0YSBpbmZvcm1h
dGlvbi4KIwojTWV0YVN1ZmZpeCAubWV0YQoKIwojIEN1c3RvbWl6YWJsZSBl
cnJvciByZXNwb25zZSAoQXBhY2hlIHN0eWxlKQojICB0aGVzZSBjb21lIGlu
IHRocmVlIGZsYXZvcnMKIwojICAgIDEpIHBsYWluIHRleHQKI0Vycm9yRG9j
dW1lbnQgNTAwICJUaGUgc2VydmVyIG1hZGUgYSBib28gYm9vLgojICBuLmIu
ICB0aGUgKCIpIG1hcmtzIGl0IGFzIHRleHQsIGl0IGRvZXMgbm90IGdldCBv
dXRwdXQKIwojICAgIDIpIGxvY2FsIHJlZGlyZWN0cwojRXJyb3JEb2N1bWVu
dCA0MDQgL21pc3NpbmcuaHRtbAojICB0byByZWRpcmVjdCB0byBsb2NhbCBV
UkwgL21pc3NpbmcuaHRtbAojRXJyb3JEb2N1bWVudCA0MDQgL2NnaS1iaW4v
bWlzc2luZ19oYW5kbGVyLnBsCiMgIE4uQi46IFlvdSBjYW4gcmVkaXJlY3Qg
dG8gYSBzY3JpcHQgb3IgYSBkb2N1bWVudCB1c2luZyBzZXJ2ZXItc2lkZS1p
bmNsdWRlcy4KIwojICAgIDMpIGV4dGVybmFsIHJlZGlyZWN0cwojRXJyb3JE
b2N1bWVudCA0MDIgaHR0cDovL3NvbWUub3RoZXJfc2VydmVyLmNvbS9zdWJz
Y3JpcHRpb25faW5mby5odG1sCiMgIE4uQi46IE1hbnkgb2YgdGhlIGVudmly
b25tZW50IHZhcmlhYmxlcyBhc3NvY2lhdGVkIHdpdGggdGhlIG9yaWdpbmFs
CiMgIHJlcXVlc3Qgd2lsbCAqbm90KiBiZSBhdmFpbGFibGUgdG8gc3VjaCBh
IHNjcmlwdC4KCiMKIyBUaGUgZm9sbG93aW5nIGRpcmVjdGl2ZXMgbW9kaWZ5
IG5vcm1hbCBIVFRQIHJlc3BvbnNlIGJlaGF2aW9yLgojIFRoZSBmaXJzdCBk
aXJlY3RpdmUgZGlzYWJsZXMga2VlcGFsaXZlIGZvciBOZXRzY2FwZSAyLngg
YW5kIGJyb3dzZXJzIHRoYXQKIyBzcG9vZiBpdC4gVGhlcmUgYXJlIGtub3du
IHByb2JsZW1zIHdpdGggdGhlc2UgYnJvd3NlciBpbXBsZW1lbnRhdGlvbnMu
CiMgVGhlIHNlY29uZCBkaXJlY3RpdmUgaXMgZm9yIE1pY3Jvc29mdCBJbnRl
cm5ldCBFeHBsb3JlciA0LjBiMgojIHdoaWNoIGhhcyBhIGJyb2tlbiBIVFRQ
LzEuMSBpbXBsZW1lbnRhdGlvbiBhbmQgZG9lcyBub3QgcHJvcGVybHkKIyBz
dXBwb3J0IGtlZXBhbGl2ZSB3aGVuIGl0IGlzIHVzZWQgb24gMzAxIG9yIDMw
MiAocmVkaXJlY3QpIHJlc3BvbnNlcy4KIwpCcm93c2VyTWF0Y2ggIk1vemls
bGEvMiIgbm9rZWVwYWxpdmUKQnJvd3Nlck1hdGNoICJNU0lFIDRcLjBiMjsi
IG5va2VlcGFsaXZlIGRvd25ncmFkZS0xLjAgZm9yY2UtcmVzcG9uc2UtMS4w
CgojCiMgVGhlIGZvbGxvd2luZyBkaXJlY3RpdmUgZGlzYWJsZXMgSFRUUC8x
LjEgcmVzcG9uc2VzIHRvIGJyb3dzZXJzIHdoaWNoCiMgYXJlIGluIHZpb2xh
dGlvbiBvZiB0aGUgSFRUUC8xLjAgc3BlYyBieSBub3QgYmVpbmcgYWJsZSB0
byBncm9rIGEKIyBiYXNpYyAxLjEgcmVzcG9uc2UuCiMKQnJvd3Nlck1hdGNo
ICJSZWFsUGxheWVyIDRcLjAiIGZvcmNlLXJlc3BvbnNlLTEuMApCcm93c2Vy
TWF0Y2ggIkphdmEvMVwuMCIgZm9yY2UtcmVzcG9uc2UtMS4wCkJyb3dzZXJN
YXRjaCAiSkRLLzFcLjAiIGZvcmNlLXJlc3BvbnNlLTEuMAoKIwojIEFsbG93
IHNlcnZlciBzdGF0dXMgcmVwb3J0cywgd2l0aCB0aGUgVVJMIG9mIGh0dHA6
Ly9zZXJ2ZXJuYW1lL3NlcnZlci1zdGF0dXMKIyBDaGFuZ2UgdGhlICIueW91
cl9kb21haW4uY29tIiB0byBtYXRjaCB5b3VyIGRvbWFpbiB0byBlbmFibGUu
CiMKIzxMb2NhdGlvbiAvc2VydmVyLXN0YXR1cz4KIyAgICBTZXRIYW5kbGVy
IHNlcnZlci1zdGF0dXMKIyAgICBPcmRlciBkZW55LGFsbG93CiMgICAgRGVu
eSBmcm9tIGFsbAojICAgIEFsbG93IGZyb20gLnlvdXJfZG9tYWluLmNvbQoj
PC9Mb2NhdGlvbj4KCiMKIyBBbGxvdyByZW1vdGUgc2VydmVyIGNvbmZpZ3Vy
YXRpb24gcmVwb3J0cywgd2l0aCB0aGUgVVJMIG9mCiMgIGh0dHA6Ly9zZXJ2
ZXJuYW1lL3NlcnZlci1pbmZvIChyZXF1aXJlcyB0aGF0IG1vZF9pbmZvLmMg
YmUgbG9hZGVkKS4KIyBDaGFuZ2UgdGhlICIueW91cl9kb21haW4uY29tIiB0
byBtYXRjaCB5b3VyIGRvbWFpbiB0byBlbmFibGUuCiMKIzxMb2NhdGlvbiAv
c2VydmVyLWluZm8+CiMgICAgU2V0SGFuZGxlciBzZXJ2ZXItaW5mbwojICAg
IE9yZGVyIGRlbnksYWxsb3cKIyAgICBEZW55IGZyb20gYWxsCiMgICAgQWxs
b3cgZnJvbSAueW91cl9kb21haW4uY29tCiM8L0xvY2F0aW9uPgoKIwojIFRo
ZXJlIGhhdmUgYmVlbiByZXBvcnRzIG9mIHBlb3BsZSB0cnlpbmcgdG8gYWJ1
c2UgYW4gb2xkIGJ1ZyBmcm9tIHByZS0xLjEKIyBkYXlzLiAgVGhpcyBidWcg
aW52b2x2ZWQgYSBDR0kgc2NyaXB0IGRpc3RyaWJ1dGVkIGFzIGEgcGFydCBv
ZiBBcGFjaGUuCiMgQnkgdW5jb21tZW50aW5nIHRoZXNlIGxpbmVzIHlvdSBj
YW4gcmVkaXJlY3QgdGhlc2UgYXR0YWNrcyB0byBhIGxvZ2dpbmcgCiMgc2Ny
aXB0IG9uIHBoZi5hcGFjaGUub3JnLiAgT3IsIHlvdSBjYW4gcmVjb3JkIHRo
ZW0geW91cnNlbGYsIHVzaW5nIHRoZSBzY3JpcHQKIyBzdXBwb3J0L3BoZl9h
YnVzZV9sb2cuY2dpLgojCiM8TG9jYXRpb24gL2NnaS1iaW4vcGhmKj4KIyAg
ICBEZW55IGZyb20gYWxsCiMgICAgRXJyb3JEb2N1bWVudCA0MDMgaHR0cDov
L3BoZi5hcGFjaGUub3JnL3BoZl9hYnVzZV9sb2cuY2dpCiM8L0xvY2F0aW9u
PgoKIwojIFByb3h5IFNlcnZlciBkaXJlY3RpdmVzLiBVbmNvbW1lbnQgdGhl
IGZvbGxvd2luZyBsaW5lcyB0bwojIGVuYWJsZSB0aGUgcHJveHkgc2VydmVy
OgojCiM8SWZNb2R1bGUgbW9kX3Byb3h5LmM+CiNQcm94eVJlcXVlc3RzIE9u
CiMKIzxEaXJlY3RvcnkgcHJveHk6Kj4KIyAgICBPcmRlciBkZW55LGFsbG93
CiMgICAgRGVueSBmcm9tIGFsbAojICAgIEFsbG93IGZyb20gLnlvdXJfZG9t
YWluLmNvbQojPC9EaXJlY3Rvcnk+CgojCiMgRW5hYmxlL2Rpc2FibGUgdGhl
IGhhbmRsaW5nIG9mIEhUVFAvMS4xICJWaWE6IiBoZWFkZXJzLgojICgiRnVs
bCIgYWRkcyB0aGUgc2VydmVyIHZlcnNpb247ICJCbG9jayIgcmVtb3ZlcyBh
bGwgb3V0Z29pbmcgVmlhOiBoZWFkZXJzKQojIFNldCB0byBvbmUgb2Y6IE9m
ZiB8IE9uIHwgRnVsbCB8IEJsb2NrCiMKI1Byb3h5VmlhIE9uCgojCiMgVG8g
ZW5hYmxlIHRoZSBjYWNoZSBhcyB3ZWxsLCBlZGl0IGFuZCB1bmNvbW1lbnQg
dGhlIGZvbGxvd2luZyBsaW5lczoKIyAobm8gY2FjaGVpbmcgd2l0aG91dCBD
YWNoZVJvb3QpCiMKI0NhY2hlUm9vdCAiQEBTZXJ2ZXJSb290QEAvcHJveHki
CiNDYWNoZVNpemUgNQojQ2FjaGVHY0ludGVydmFsIDQKI0NhY2hlTWF4RXhw
aXJlIDI0CiNDYWNoZUxhc3RNb2RpZmllZEZhY3RvciAwLjEKI0NhY2hlRGVm
YXVsdEV4cGlyZSAxCiNOb0NhY2hlIGFfZG9tYWluLmNvbSBhbm90aGVyX2Rv
bWFpbi5lZHUgam9lcy5nYXJhZ2Vfc2FsZS5jb20KCiM8L0lmTW9kdWxlPgoj
IEVuZCBvZiBwcm94eSBkaXJlY3RpdmVzLgoKIyMjIFNlY3Rpb24gMzogVmly
dHVhbCBIb3N0cwojCiMgVmlydHVhbEhvc3Q6IElmIHlvdSB3YW50IHRvIG1h
aW50YWluIG11bHRpcGxlIGRvbWFpbnMvaG9zdG5hbWVzIG9uIHlvdXIKIyBt
YWNoaW5lIHlvdSBjYW4gc2V0dXAgVmlydHVhbEhvc3QgY29udGFpbmVycyBm
b3IgdGhlbS4KIyBQbGVhc2Ugc2VlIHRoZSBkb2N1bWVudGF0aW9uIGF0IDxV
Ukw6aHR0cDovL3d3dy5hcGFjaGUub3JnL2RvY3Mvdmhvc3RzLz4KIyBmb3Ig
ZnVydGhlciBkZXRhaWxzIGJlZm9yZSB5b3UgdHJ5IHRvIHNldHVwIHZpcnR1
YWwgaG9zdHMuCiMgWW91IG1heSB1c2UgdGhlIGNvbW1hbmQgbGluZSBvcHRp
b24gJy1TJyB0byB2ZXJpZnkgeW91ciB2aXJ0dWFsIGhvc3QKIyBjb25maWd1
cmF0aW9uLgoKIwojIElmIHlvdSB3YW50IHRvIHVzZSBuYW1lLWJhc2VkIHZp
cnR1YWwgaG9zdHMgeW91IG5lZWQgdG8gZGVmaW5lIGF0CiMgbGVhc3Qgb25l
IElQIGFkZHJlc3MgKGFuZCBwb3J0IG51bWJlcikgZm9yIHRoZW0uCiMKI05h
bWVWaXJ0dWFsSG9zdCAxMi4zNC41Ni43ODo4MAojTmFtZVZpcnR1YWxIb3N0
IDEyLjM0LjU2Ljc4Ck5hbWVWaXJ0dWFsSG9zdCAxMjcuMC4wLjEKCiMKIyBW
aXJ0dWFsSG9zdCBleGFtcGxlOgojIEFsbW9zdCBhbnkgQXBhY2hlIGRpcmVj
dGl2ZSBtYXkgZ28gaW50byBhIFZpcnR1YWxIb3N0IGNvbnRhaW5lci4KIwoj
PFZpcnR1YWxIb3N0IGxvY2FsaG9zdD4KIyAgICBTZXJ2ZXJBZG1pbiB3ZWJt
YXN0ZXJAaG9zdC5zb21lX2RvbWFpbi5jb20KIyAgICBTZXJ2ZXJOYW1lIGhv
c3Quc29tZV9kb21haW4uY29tCiMgICAgRXJyb3JMb2cgbG9ncy9ob3N0LnNv
bWVfZG9tYWluLmNvbS1lcnJvcl9sb2cKIyAgICBDdXN0b21Mb2cgbG9ncy9o
b3N0LnNvbWVfZG9tYWluLmNvbS1hY2Nlc3NfbG9nIGNvbW1vbgojPC9WaXJ0
dWFsSG9zdD4KCgo8VmlydHVhbEhvc3QgMTI3LjAuMC4xPgogICBTZXJ2ZXJO
YW1lIGxvYW50cmFuLmNvbQogICBEb2N1bWVudFJvb3QgL3Vzci9sb2NhbC9h
cGFjaGVfMS4zLjYvaHRkb2NzL3RoYWkvCiAgIFNlcnZlckFkbWluIGxvYW50
cmFuckBsb2FudHJhbi5jb20KICAgIyBFcnJvckxvZyAvdmFyL2xvZ3MvaHR0
cGQvbG9hbnRyYW4uY29tLWVycm9yX2xvZwogICAjIEN1c3RvbUxvZyAvdmFy
L2xvZ3MvaHR0cGQvbG9hbnRyYW4uY29tLWFjY2Vzc19sb2cgY29tbW9uCjwv
VmlydHVhbEhvc3Q+CgoKPFZpcnR1YWxIb3N0IDEyNy4wLjAuMT4KICAgU2Vy
dmVyTmFtZSBvdXJzdGFmZnMuY29tCiAgIERvY3VtZW50Um9vdCAvdXNyL2xv
Y2FsL2FwYWNoZV8xLjMuNi9odGRvY3Mvb3Vyc3RhZmZzLwogICBTZXJ2ZXJB
ZG1pbiBsb2FudHJhbnJAbG9hbnRyYW4uY29tCiMgICAgRXJyb3JMb2cgL3Vz
ci9sb2NhbC9hcGFjaGVfMS4zLjYvbG9ncy9odHRwZC9vdXJzdGFmZnMuY29t
LWVycm9yX2xvZwojICAgIEN1c3RvbUxvZyAvdmFyL2xvZ3MvYXBhY2hlXzEu
My42L291cnN0YWZmcy5jb20tYWNjZXNzX2xvZyBjb21tb24KPC9WaXJ0dWFs
SG9zdD4KCjxWaXJ0dWFsSG9zdCAxMjcuMC4wLjE+CiAgIFNlcnZlck5hbWUg
ZXhjaGFuZ2Vib29rcy5uZXQKICAgRG9jdW1lbnRSb290IC91c3IvbG9jYWwv
YXBhY2hlXzEuMy42L2h0ZG9jcy9leGNoYW5nZWJvb2tzLwogICBTZXJ2ZXJB
ZG1pbiBsb2FudHJhbnJAbG9hbnRyYW4uY29tCiMgICAgRXJyb3JMb2cgL3Vz
ci9sb2NhbC9hcGFjaGVfMS4zLjYvbG9ncy9odHRwZC9vdXJzdGFmZnMuY29t
LWVycm9yX2xvZwojICAgIEN1c3RvbUxvZyAvdmFyL2xvZ3MvYXBhY2hlXzEu
My42L291cnN0YWZmcy5jb20tYWNjZXNzX2xvZyBjb21tb24KPC9WaXJ0dWFs
SG9zdD4KCgojPFZpcnR1YWxIb3N0IF9kZWZhdWx0XzoqPgojPC9WaXJ0dWFs
SG9zdD4K

--0-719885386-936595146=:12667
Content-Type: application/x-unknown; name=hosts
Content-Transfer-Encoding: base64
Content-Description: hosts
Content-Disposition: attachment; filename=hosts

MTI3LjAuMC4xCWxvY2FsaG9zdAoxMjcuMC4wLjEJbG9hbnRyYW4uY29tCQox
MjcuMC4wLjEJb3Vyc3RhZmZzLmNvbQkKMTI3LjAuMC4xICAgIGV4Y2hhbmdl
Ym9va3MubmV0Cgo=

--0-719885386-936595146=:12667--