Return-Path: Delivered-To: apmail-httpd-users-archive@www.apache.org Received: (qmail 91504 invoked from network); 29 Dec 2004 21:30:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 29 Dec 2004 21:30:05 -0000 Received: (qmail 74051 invoked by uid 500); 29 Dec 2004 21:29:47 -0000 Delivered-To: apmail-httpd-users-archive@httpd.apache.org Received: (qmail 74035 invoked by uid 500); 29 Dec 2004 21:29:46 -0000 Mailing-List: contact users-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: users@httpd.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list users@httpd.apache.org Received: (qmail 74021 invoked by uid 99); 29 Dec 2004 21:29:46 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE X-Spam-Check-By: apache.org Received-SPF: pass (hermes.apache.org: local policy) Received: from stratech.com (HELO rduex02.corp.stratech.com) (216.26.242.2) by apache.org (qpsmtpd/0.28) with ESMTP; Wed, 29 Dec 2004 13:29:43 -0800 X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C4EDED.6CEFD7CA" Date: Wed, 29 Dec 2004 16:29:06 -0500 Message-ID: X-MS-Has-Attach: yes X-MS-TNEF-Correlator: Thread-Topic: httpd.conf Thread-Index: AcTt7Yhfsl8PHcWESG+HEHRiZHrR/w== From: "Plantier, Spencer" To: X-Virus-Checked: Checked Subject: [users@httpd] httpd.conf X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N ------_=_NextPart_001_01C4EDED.6CEFD7CA Content-Type: multipart/alternative; boundary="----_=_NextPart_002_01C4EDED.6CEFD7CA" ------_=_NextPart_002_01C4EDED.6CEFD7CA Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I am trying to start apache 1.3.33. I think I have it installed correctly using mod_ssl. I get this error: # apache start Syntax error on line 205 of /usr/local/apache/conf/httpd.conf: Invalid command 'LoadModule', perhaps mis-spelled or defined by a module not included in the server configuration /usr/local/bin/apache start: httpd could not be started =20 I have looked on line 205 but don't see a loadmodule command. =20 I am attaching my httpd.conf file any help would be appreciated. =20 Thanks.=20 Spencer Plantier System Network Administrator =20 301 Gregson Dr Cary, NC 27511 Office 919-379-8513 Cell 919-272-8833 spencer.plantier@stratech.com =20 ------_=_NextPart_002_01C4EDED.6CEFD7CA Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

I am trying to start apache 1.3.33. I think I have it installed correctly using mod_ssl. I get this error:

# apache start

Syntax error on line 205 of /usr/local/apache/conf/httpd.conf:

Invalid command 'LoadModule', perhaps mis-spelled or = defined by a module not included in the server configuration

/usr/local/bin/apache start: httpd could not be = started

 

I have looked on line 205 but don’t see a = loadmodule command.

 

I am attaching my httpd.conf file any help would be appreciated.

 

Thanks.

Spencer Plantier

System Network Administrator

 

301 Gregson Dr

Cary, NC  27511

Office 919-379-8513

Cell    919-272-8833

spencer.plantier@stratech.com

 

------_=_NextPart_002_01C4EDED.6CEFD7CA-- ------_=_NextPart_001_01C4EDED.6CEFD7CA Content-Type: application/octet-stream; name="httpd.conf" Content-Transfer-Encoding: base64 Content-Description: httpd.conf Content-Disposition: attachment; filename="httpd.conf" IyMKIyMgaHR0cGQuY29uZiAtLSBBcGFjaGUgSFRUUCBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxl CiMjCgojCiMgQmFzZWQgdXBvbiB0aGUgTkNTQSBzZXJ2ZXIgY29uZmlndXJhdGlvbiBmaWxlcyBv cmlnaW5hbGx5IGJ5IFJvYiBNY0Nvb2wuCiMKIyBUaGlzIGlzIHRoZSBtYWluIEFwYWNoZSBzZXJ2 ZXIgY29uZmlndXJhdGlvbiBmaWxlLiAgSXQgY29udGFpbnMgdGhlCiMgY29uZmlndXJhdGlvbiBk aXJlY3RpdmVzIHRoYXQgZ2l2ZSB0aGUgc2VydmVyIGl0cyBpbnN0cnVjdGlvbnMuCiMgU2VlIDxV Ukw6aHR0cDovL3d3dy5hcGFjaGUub3JnL2RvY3MvPiBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24g YWJvdXQKIyB0aGUgZGlyZWN0aXZlcy4KIwojIERvIE5PVCBzaW1wbHkgcmVhZCB0aGUgaW5zdHJ1 Y3Rpb25zIGluIGhlcmUgd2l0aG91dCB1bmRlcnN0YW5kaW5nCiMgd2hhdCB0aGV5IGRvLiAgVGhl eSdyZSBoZXJlIG9ubHkgYXMgaGludHMgb3IgcmVtaW5kZXJzLiAgSWYgeW91IGFyZSB1bnN1cmUK IyBjb25zdWx0IHRoZSBvbmxpbmUgZG9jcy4gWW91IGhhdmUgYmVlbiB3YXJuZWQuICAKIwojIEFm dGVyIHRoaXMgZmlsZSBpcyBwcm9jZXNzZWQsIHRoZSBzZXJ2ZXIgd2lsbCBsb29rIGZvciBhbmQg cHJvY2VzcwojIC91c3IvbG9jYWwvYXBhY2hlL2NvbmYvc3JtLmNvbmYgYW5kIHRoZW4gL3Vzci9s b2NhbC9hcGFjaGUvY29uZi9hY2Nlc3MuY29uZgojIHVubGVzcyB5b3UgaGF2ZSBvdmVycmlkZGVu IHRoZXNlIHdpdGggUmVzb3VyY2VDb25maWcgYW5kL29yCiMgQWNjZXNzQ29uZmlnIGRpcmVjdGl2 ZXMgaGVyZS4KIwojIFRoZSBjb25maWd1cmF0aW9uIGRpcmVjdGl2ZXMgYXJlIGdyb3VwZWQgaW50 byB0aHJlZSBiYXNpYyBzZWN0aW9uczoKIyAgMS4gRGlyZWN0aXZlcyB0aGF0IGNvbnRyb2wgdGhl IG9wZXJhdGlvbiBvZiB0aGUgQXBhY2hlIHNlcnZlciBwcm9jZXNzIGFzIGEKIyAgICAgd2hvbGUg KHRoZSAnZ2xvYmFsIGVudmlyb25tZW50JykuCiMgIDIuIERpcmVjdGl2ZXMgdGhhdCBkZWZpbmUg dGhlIHBhcmFtZXRlcnMgb2YgdGhlICdtYWluJyBvciAnZGVmYXVsdCcgc2VydmVyLAojICAgICB3 aGljaCByZXNwb25kcyB0byByZXF1ZXN0cyB0aGF0IGFyZW4ndCBoYW5kbGVkIGJ5IGEgdmlydHVh bCBob3N0LgojICAgICBUaGVzZSBkaXJlY3RpdmVzIGFsc28gcHJvdmlkZSBkZWZhdWx0IHZhbHVl cyBmb3IgdGhlIHNldHRpbmdzCiMgICAgIG9mIGFsbCB2aXJ0dWFsIGhvc3RzLgojICAzLiBTZXR0 aW5ncyBmb3IgdmlydHVhbCBob3N0cywgd2hpY2ggYWxsb3cgV2ViIHJlcXVlc3RzIHRvIGJlIHNl bnQgdG8KIyAgICAgZGlmZmVyZW50IElQIGFkZHJlc3NlcyBvciBob3N0bmFtZXMgYW5kIGhhdmUg dGhlbSBoYW5kbGVkIGJ5IHRoZQojICAgICBzYW1lIEFwYWNoZSBzZXJ2ZXIgcHJvY2Vzcy4KIwoj IENvbmZpZ3VyYXRpb24gYW5kIGxvZ2ZpbGUgbmFtZXM6IElmIHRoZSBmaWxlbmFtZXMgeW91IHNw ZWNpZnkgZm9yIG1hbnkKIyBvZiB0aGUgc2VydmVyJ3MgY29udHJvbCBmaWxlcyBiZWdpbiB3aXRo ICIvIiAob3IgImRyaXZlOi8iIGZvciBXaW4zMiksIHRoZQojIHNlcnZlciB3aWxsIHVzZSB0aGF0 IGV4cGxpY2l0IHBhdGguICBJZiB0aGUgZmlsZW5hbWVzIGRvICpub3QqIGJlZ2luCiMgd2l0aCAi LyIsIHRoZSB2YWx1ZSBvZiBTZXJ2ZXJSb290IGlzIHByZXBlbmRlZCAtLSBzbyAibG9ncy9mb28u bG9nIgojIHdpdGggU2VydmVyUm9vdCBzZXQgdG8gIi91c3IvbG9jYWwvYXBhY2hlIiB3aWxsIGJl IGludGVycHJldGVkIGJ5IHRoZQojIHNlcnZlciBhcyAiL3Vzci9sb2NhbC9hcGFjaGUvbG9ncy9m b28ubG9nIi4KIwoKIyMjIFNlY3Rpb24gMTogR2xvYmFsIEVudmlyb25tZW50CiMKIyBUaGUgZGly ZWN0aXZlcyBpbiB0aGlzIHNlY3Rpb24gYWZmZWN0IHRoZSBvdmVyYWxsIG9wZXJhdGlvbiBvZiBB cGFjaGUsCiMgc3VjaCBhcyB0aGUgbnVtYmVyIG9mIGNvbmN1cnJlbnQgcmVxdWVzdHMgaXQgY2Fu IGhhbmRsZSBvciB3aGVyZSBpdAojIGNhbiBmaW5kIGl0cyBjb25maWd1cmF0aW9uIGZpbGVzLgoj CgojCiMgU2VydmVyVHlwZSBpcyBlaXRoZXIgaW5ldGQsIG9yIHN0YW5kYWxvbmUuICBJbmV0ZCBt b2RlIGlzIG9ubHkgc3VwcG9ydGVkIG9uCiMgVW5peCBwbGF0Zm9ybXMuCiMKU2VydmVyVHlwZSBz dGFuZGFsb25lCgojCiMgU2VydmVyUm9vdDogVGhlIHRvcCBvZiB0aGUgZGlyZWN0b3J5IHRyZWUg dW5kZXIgd2hpY2ggdGhlIHNlcnZlcidzCiMgY29uZmlndXJhdGlvbiwgZXJyb3IsIGFuZCBsb2cg ZmlsZXMgYXJlIGtlcHQuCiMKIyBOT1RFISAgSWYgeW91IGludGVuZCB0byBwbGFjZSB0aGlzIG9u IGFuIE5GUyAob3Igb3RoZXJ3aXNlIG5ldHdvcmspCiMgbW91bnRlZCBmaWxlc3lzdGVtIHRoZW4g cGxlYXNlIHJlYWQgdGhlIExvY2tGaWxlIGRvY3VtZW50YXRpb24KIyAoYXZhaWxhYmxlIGF0IDxV Ukw6aHR0cDovL3d3dy5hcGFjaGUub3JnL2RvY3MvbW9kL2NvcmUuaHRtbCNsb2NrZmlsZT4pOwoj IHlvdSB3aWxsIHNhdmUgeW91cnNlbGYgYSBsb3Qgb2YgdHJvdWJsZS4KIwpTZXJ2ZXJSb290ICIv dXNyL2xvY2FsL2FwYWNoZSIKCiMKIyBUaGUgTG9ja0ZpbGUgZGlyZWN0aXZlIHNldHMgdGhlIHBh dGggdG8gdGhlIGxvY2tmaWxlIHVzZWQgd2hlbiBBcGFjaGUKIyBpcyBjb21waWxlZCB3aXRoIGVp dGhlciBVU0VfRkNOVExfU0VSSUFMSVpFRF9BQ0NFUFQgb3IKIyBVU0VfRkxPQ0tfU0VSSUFMSVpF RF9BQ0NFUFQuIFRoaXMgZGlyZWN0aXZlIHNob3VsZCBub3JtYWxseSBiZSBsZWZ0IGF0CiMgaXRz IGRlZmF1bHQgdmFsdWUuIFRoZSBtYWluIHJlYXNvbiBmb3IgY2hhbmdpbmcgaXQgaXMgaWYgdGhl IGxvZ3MKIyBkaXJlY3RvcnkgaXMgTkZTIG1vdW50ZWQsIHNpbmNlIHRoZSBsb2NrZmlsZSBNVVNU IEJFIFNUT1JFRCBPTiBBIExPQ0FMCiMgRElTSy4gVGhlIFBJRCBvZiB0aGUgbWFpbiBzZXJ2ZXIg cHJvY2VzcyBpcyBhdXRvbWF0aWNhbGx5IGFwcGVuZGVkIHRvCiMgdGhlIGZpbGVuYW1lLiAKIwoj TG9ja0ZpbGUgL3Vzci9sb2NhbC9hcGFjaGUvbG9ncy9odHRwZC5sb2NrCgojCiMgUGlkRmlsZTog VGhlIGZpbGUgaW4gd2hpY2ggdGhlIHNlcnZlciBzaG91bGQgcmVjb3JkIGl0cyBwcm9jZXNzCiMg aWRlbnRpZmljYXRpb24gbnVtYmVyIHdoZW4gaXQgc3RhcnRzLgojClBpZEZpbGUgL3Vzci9sb2Nh bC9hcGFjaGUvbG9ncy9odHRwZC5waWQKCiMKIyBTY29yZUJvYXJkRmlsZTogRmlsZSB1c2VkIHRv IHN0b3JlIGludGVybmFsIHNlcnZlciBwcm9jZXNzIGluZm9ybWF0aW9uLgojIE5vdCBhbGwgYXJj aGl0ZWN0dXJlcyByZXF1aXJlIHRoaXMuICBCdXQgaWYgeW91cnMgZG9lcyAoeW91J2xsIGtub3cg YmVjYXVzZQojIHRoaXMgZmlsZSB3aWxsIGJlICBjcmVhdGVkIHdoZW4geW91IHJ1biBBcGFjaGUp IHRoZW4geW91ICptdXN0KiBlbnN1cmUgdGhhdAojIG5vIHR3byBpbnZvY2F0aW9ucyBvZiBBcGFj aGUgc2hhcmUgdGhlIHNhbWUgc2NvcmVib2FyZCBmaWxlLgojClNjb3JlQm9hcmRGaWxlIC91c3Iv bG9jYWwvYXBhY2hlL2xvZ3MvaHR0cGQuc2NvcmVib2FyZAoKIwojIEluIHRoZSBzdGFuZGFyZCBj b25maWd1cmF0aW9uLCB0aGUgc2VydmVyIHdpbGwgcHJvY2VzcyBodHRwZC5jb25mICh0aGlzIAoj IGZpbGUsIHNwZWNpZmllZCBieSB0aGUgLWYgY29tbWFuZCBsaW5lIG9wdGlvbiksIHNybS5jb25m LCBhbmQgYWNjZXNzLmNvbmYgCiMgaW4gdGhhdCBvcmRlci4gIFRoZSBsYXR0ZXIgdHdvIGZpbGVz IGFyZSBub3cgZGlzdHJpYnV0ZWQgZW1wdHksIGFzIGl0IGlzIAojIHJlY29tbWVuZGVkIHRoYXQg YWxsIGRpcmVjdGl2ZXMgYmUga2VwdCBpbiBhIHNpbmdsZSBmaWxlIGZvciBzaW1wbGljaXR5LiAg CiMgVGhlIGNvbW1lbnRlZC1vdXQgdmFsdWVzIGJlbG93IGFyZSB0aGUgYnVpbHQtaW4gZGVmYXVs dHMuICBZb3UgY2FuIGhhdmUgdGhlIAojIHNlcnZlciBpZ25vcmUgdGhlc2UgZmlsZXMgYWx0b2dl dGhlciBieSB1c2luZyAiL2Rldi9udWxsIiAoZm9yIFVuaXgpIG9yCiMgIm51bCIgKGZvciBXaW4z MikgZm9yIHRoZSBhcmd1bWVudHMgdG8gdGhlIGRpcmVjdGl2ZXMuCiMKI1Jlc291cmNlQ29uZmln IGNvbmYvc3JtLmNvbmYKI0FjY2Vzc0NvbmZpZyBjb25mL2FjY2Vzcy5jb25mCgojCiMgVGltZW91 dDogVGhlIG51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSByZWNlaXZlcyBhbmQgc2VuZHMgdGltZSBv dXQuCiMKVGltZW91dCAzMDAKCiMKIyBLZWVwQWxpdmU6IFdoZXRoZXIgb3Igbm90IHRvIGFsbG93 IHBlcnNpc3RlbnQgY29ubmVjdGlvbnMgKG1vcmUgdGhhbgojIG9uZSByZXF1ZXN0IHBlciBjb25u ZWN0aW9uKS4gU2V0IHRvICJPZmYiIHRvIGRlYWN0aXZhdGUuCiMKS2VlcEFsaXZlIE9uCgojCiMg TWF4S2VlcEFsaXZlUmVxdWVzdHM6IFRoZSBtYXhpbXVtIG51bWJlciBvZiByZXF1ZXN0cyB0byBh bGxvdwojIGR1cmluZyBhIHBlcnNpc3RlbnQgY29ubmVjdGlvbi4gU2V0IHRvIDAgdG8gYWxsb3cg YW4gdW5saW1pdGVkIGFtb3VudC4KIyBXZSByZWNvbW1lbmQgeW91IGxlYXZlIHRoaXMgbnVtYmVy IGhpZ2gsIGZvciBtYXhpbXVtIHBlcmZvcm1hbmNlLgojCk1heEtlZXBBbGl2ZVJlcXVlc3RzIDEw MAoKIwojIEtlZXBBbGl2ZVRpbWVvdXQ6IE51bWJlciBvZiBzZWNvbmRzIHRvIHdhaXQgZm9yIHRo ZSBuZXh0IHJlcXVlc3QgZnJvbSB0aGUKIyBzYW1lIGNsaWVudCBvbiB0aGUgc2FtZSBjb25uZWN0 aW9uLgojCktlZXBBbGl2ZVRpbWVvdXQgMTUKCiMKIyBTZXJ2ZXItcG9vbCBzaXplIHJlZ3VsYXRp b24uICBSYXRoZXIgdGhhbiBtYWtpbmcgeW91IGd1ZXNzIGhvdyBtYW55CiMgc2VydmVyIHByb2Nl c3NlcyB5b3UgbmVlZCwgQXBhY2hlIGR5bmFtaWNhbGx5IGFkYXB0cyB0byB0aGUgbG9hZCBpdAoj IHNlZXMgLS0tIHRoYXQgaXMsIGl0IHRyaWVzIHRvIG1haW50YWluIGVub3VnaCBzZXJ2ZXIgcHJv Y2Vzc2VzIHRvCiMgaGFuZGxlIHRoZSBjdXJyZW50IGxvYWQsIHBsdXMgYSBmZXcgc3BhcmUgc2Vy dmVycyB0byBoYW5kbGUgdHJhbnNpZW50CiMgbG9hZCBzcGlrZXMgKGUuZy4sIG11bHRpcGxlIHNp bXVsdGFuZW91cyByZXF1ZXN0cyBmcm9tIGEgc2luZ2xlCiMgTmV0c2NhcGUgYnJvd3NlcikuCiMK IyBJdCBkb2VzIHRoaXMgYnkgcGVyaW9kaWNhbGx5IGNoZWNraW5nIGhvdyBtYW55IHNlcnZlcnMg YXJlIHdhaXRpbmcKIyBmb3IgYSByZXF1ZXN0LiAgSWYgdGhlcmUgYXJlIGZld2VyIHRoYW4gTWlu U3BhcmVTZXJ2ZXJzLCBpdCBjcmVhdGVzCiMgYSBuZXcgc3BhcmUuICBJZiB0aGVyZSBhcmUgbW9y ZSB0aGFuIE1heFNwYXJlU2VydmVycywgc29tZSBvZiB0aGUKIyBzcGFyZXMgZGllIG9mZi4gIFRo ZSBkZWZhdWx0IHZhbHVlcyBhcmUgcHJvYmFibHkgT0sgZm9yIG1vc3Qgc2l0ZXMuCiMKTWluU3Bh cmVTZXJ2ZXJzIDUKTWF4U3BhcmVTZXJ2ZXJzIDEwCgojCiMgTnVtYmVyIG9mIHNlcnZlcnMgdG8g c3RhcnQgaW5pdGlhbGx5IC0tLSBzaG91bGQgYmUgYSByZWFzb25hYmxlIGJhbGxwYXJrCiMgZmln dXJlLgojClN0YXJ0U2VydmVycyA1CgojCiMgTGltaXQgb24gdG90YWwgbnVtYmVyIG9mIHNlcnZl cnMgcnVubmluZywgaS5lLiwgbGltaXQgb24gdGhlIG51bWJlcgojIG9mIGNsaWVudHMgd2hvIGNh biBzaW11bHRhbmVvdXNseSBjb25uZWN0IC0tLSBpZiB0aGlzIGxpbWl0IGlzIGV2ZXIKIyByZWFj aGVkLCBjbGllbnRzIHdpbGwgYmUgTE9DS0VEIE9VVCwgc28gaXQgc2hvdWxkIE5PVCBCRSBTRVQg VE9PIExPVy4KIyBJdCBpcyBpbnRlbmRlZCBtYWlubHkgYXMgYSBicmFrZSB0byBrZWVwIGEgcnVu YXdheSBzZXJ2ZXIgZnJvbSB0YWtpbmcKIyB0aGUgc3lzdGVtIHdpdGggaXQgYXMgaXQgc3BpcmFs cyBkb3duLi4uCiMKTWF4Q2xpZW50cyAxNTAKCiMKIyBNYXhSZXF1ZXN0c1BlckNoaWxkOiB0aGUg bnVtYmVyIG9mIHJlcXVlc3RzIGVhY2ggY2hpbGQgcHJvY2VzcyBpcwojIGFsbG93ZWQgdG8gcHJv Y2VzcyBiZWZvcmUgdGhlIGNoaWxkIGRpZXMuICBUaGUgY2hpbGQgd2lsbCBleGl0IHNvCiMgYXMg dG8gYXZvaWQgcHJvYmxlbXMgYWZ0ZXIgcHJvbG9uZ2VkIHVzZSB3aGVuIEFwYWNoZSAoYW5kIG1h eWJlIHRoZQojIGxpYnJhcmllcyBpdCB1c2VzKSBsZWFrIG1lbW9yeSBvciBvdGhlciByZXNvdXJj ZXMuICBPbiBtb3N0IHN5c3RlbXMsIHRoaXMKIyBpc24ndCByZWFsbHkgbmVlZGVkLCBidXQgYSBm ZXcgKHN1Y2ggYXMgU29sYXJpcykgZG8gaGF2ZSBub3RhYmxlIGxlYWtzCiMgaW4gdGhlIGxpYnJh cmllcy4gRm9yIHRoZXNlIHBsYXRmb3Jtcywgc2V0IHRvIHNvbWV0aGluZyBsaWtlIDEwMDAwCiMg b3Igc287IGEgc2V0dGluZyBvZiAwIG1lYW5zIHVubGltaXRlZC4KIwojIE5PVEU6IFRoaXMgdmFs dWUgZG9lcyBub3QgaW5jbHVkZSBrZWVwYWxpdmUgcmVxdWVzdHMgYWZ0ZXIgdGhlIGluaXRpYWwK IyAgICAgICByZXF1ZXN0IHBlciBjb25uZWN0aW9uLiBGb3IgZXhhbXBsZSwgaWYgYSBjaGlsZCBw cm9jZXNzIGhhbmRsZXMKIyAgICAgICBhbiBpbml0aWFsIHJlcXVlc3QgYW5kIDEwIHN1YnNlcXVl bnQgImtlcHRhbGl2ZSIgcmVxdWVzdHMsIGl0CiMgICAgICAgd291bGQgb25seSBjb3VudCBhcyAx IHJlcXVlc3QgdG93YXJkcyB0aGlzIGxpbWl0LgojCk1heFJlcXVlc3RzUGVyQ2hpbGQgMAoKIwoj IExpc3RlbjogQWxsb3dzIHlvdSB0byBiaW5kIEFwYWNoZSB0byBzcGVjaWZpYyBJUCBhZGRyZXNz ZXMgYW5kL29yCiMgcG9ydHMsIGluIGFkZGl0aW9uIHRvIHRoZSBkZWZhdWx0LiBTZWUgYWxzbyB0 aGUgPFZpcnR1YWxIb3N0PgojIGRpcmVjdGl2ZS4KIwojTGlzdGVuIDMwMDAKI0xpc3RlbiAxMi4z NC41Ni43ODo4MAoKIwojIEJpbmRBZGRyZXNzOiBZb3UgY2FuIHN1cHBvcnQgdmlydHVhbCBob3N0 cyB3aXRoIHRoaXMgb3B0aW9uLiBUaGlzIGRpcmVjdGl2ZQojIGlzIHVzZWQgdG8gdGVsbCB0aGUg c2VydmVyIHdoaWNoIElQIGFkZHJlc3MgdG8gbGlzdGVuIHRvLiBJdCBjYW4gZWl0aGVyCiMgY29u dGFpbiAiKiIsIGFuIElQIGFkZHJlc3MsIG9yIGEgZnVsbHkgcXVhbGlmaWVkIEludGVybmV0IGRv bWFpbiBuYW1lLgojIFNlZSBhbHNvIHRoZSA8VmlydHVhbEhvc3Q+IGFuZCBMaXN0ZW4gZGlyZWN0 aXZlcy4KIwojQmluZEFkZHJlc3MgKgoKIwojIER5bmFtaWMgU2hhcmVkIE9iamVjdCAoRFNPKSBT dXBwb3J0CiMKIyBUbyBiZSBhYmxlIHRvIHVzZSB0aGUgZnVuY3Rpb25hbGl0eSBvZiBhIG1vZHVs ZSB3aGljaCB3YXMgYnVpbHQgYXMgYSBEU08geW91CiMgaGF2ZSB0byBwbGFjZSBjb3JyZXNwb25k aW5nIGBMb2FkTW9kdWxlJyBsaW5lcyBhdCB0aGlzIGxvY2F0aW9uIHNvIHRoZQojIGRpcmVjdGl2 ZXMgY29udGFpbmVkIGluIGl0IGFyZSBhY3R1YWxseSBhdmFpbGFibGUgX2JlZm9yZV8gdGhleSBh cmUgdXNlZC4KIyBQbGVhc2UgcmVhZCB0aGUgZmlsZSBodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9k b2NzL2Rzby5odG1sIGZvciBtb3JlCiMgZGV0YWlscyBhYm91dCB0aGUgRFNPIG1lY2hhbmlzbSBh bmQgcnVuIGBodHRwZCAtbCcgZm9yIHRoZSBsaXN0IG9mIGFscmVhZHkKIyBidWlsdC1pbiAoc3Rh dGljYWxseSBsaW5rZWQgYW5kIHRodXMgYWx3YXlzIGF2YWlsYWJsZSkgbW9kdWxlcyBpbiB5b3Vy IGh0dHBkCiMgYmluYXJ5LgojCiMgTm90ZTogVGhlIG9yZGVyIGluIHdoaWNoIG1vZHVsZXMgYXJl IGxvYWRlZCBpcyBpbXBvcnRhbnQuICBEb24ndCBjaGFuZ2UKIyB0aGUgb3JkZXIgYmVsb3cgd2l0 aG91dCBleHBlcnQgYWR2aWNlLgojCiMgRXhhbXBsZToKIyBMb2FkTW9kdWxlIGZvb19tb2R1bGUg bGliZXhlYy9tb2RfZm9vLnNvCkxvYWRNb2R1bGUgbW1hcF9zdGF0aWNfbW9kdWxlIGxpYmV4ZWMv bW9kX21tYXBfc3RhdGljLnNvCkxvYWRNb2R1bGUgdmhvc3RfYWxpYXNfbW9kdWxlIGxpYmV4ZWMv bW9kX3Zob3N0X2FsaWFzLnNvCkxvYWRNb2R1bGUgZW52X21vZHVsZSAgICAgICAgIGxpYmV4ZWMv bW9kX2Vudi5zbwpMb2FkTW9kdWxlIGNvbmZpZ19sb2dfbW9kdWxlICBsaWJleGVjL21vZF9sb2df Y29uZmlnLnNvCkxvYWRNb2R1bGUgYWdlbnRfbG9nX21vZHVsZSAgIGxpYmV4ZWMvbW9kX2xvZ19h Z2VudC5zbwpMb2FkTW9kdWxlIHJlZmVyZXJfbG9nX21vZHVsZSBsaWJleGVjL21vZF9sb2dfcmVm ZXJlci5zbwpMb2FkTW9kdWxlIG1pbWVfbWFnaWNfbW9kdWxlICBsaWJleGVjL21vZF9taW1lX21h Z2ljLnNvCkxvYWRNb2R1bGUgbWltZV9tb2R1bGUgICAgICAgIGxpYmV4ZWMvbW9kX21pbWUuc28K TG9hZE1vZHVsZSBuZWdvdGlhdGlvbl9tb2R1bGUgbGliZXhlYy9tb2RfbmVnb3RpYXRpb24uc28K TG9hZE1vZHVsZSBzdGF0dXNfbW9kdWxlICAgICAgbGliZXhlYy9tb2Rfc3RhdHVzLnNvCkxvYWRN b2R1bGUgaW5mb19tb2R1bGUgICAgICAgIGxpYmV4ZWMvbW9kX2luZm8uc28KTG9hZE1vZHVsZSBp bmNsdWRlc19tb2R1bGUgICAgbGliZXhlYy9tb2RfaW5jbHVkZS5zbwpMb2FkTW9kdWxlIGF1dG9p bmRleF9tb2R1bGUgICBsaWJleGVjL21vZF9hdXRvaW5kZXguc28KTG9hZE1vZHVsZSBkaXJfbW9k dWxlICAgICAgICAgbGliZXhlYy9tb2RfZGlyLnNvCkxvYWRNb2R1bGUgY2dpX21vZHVsZSAgICAg ICAgIGxpYmV4ZWMvbW9kX2NnaS5zbwpMb2FkTW9kdWxlIGFzaXNfbW9kdWxlICAgICAgICBsaWJl eGVjL21vZF9hc2lzLnNvCkxvYWRNb2R1bGUgaW1hcF9tb2R1bGUgICAgICAgIGxpYmV4ZWMvbW9k X2ltYXAuc28KTG9hZE1vZHVsZSBhY3Rpb25fbW9kdWxlICAgICAgbGliZXhlYy9tb2RfYWN0aW9u cy5zbwpMb2FkTW9kdWxlIHNwZWxpbmdfbW9kdWxlICAgICBsaWJleGVjL21vZF9zcGVsaW5nLnNv CkxvYWRNb2R1bGUgdXNlcmRpcl9tb2R1bGUgICAgIGxpYmV4ZWMvbW9kX3VzZXJkaXIuc28KTG9h ZE1vZHVsZSBhbGlhc19tb2R1bGUgICAgICAgbGliZXhlYy9tb2RfYWxpYXMuc28KTG9hZE1vZHVs ZSByZXdyaXRlX21vZHVsZSAgICAgbGliZXhlYy9tb2RfcmV3cml0ZS5zbwpMb2FkTW9kdWxlIGFj Y2Vzc19tb2R1bGUgICAgICBsaWJleGVjL21vZF9hY2Nlc3Muc28KTG9hZE1vZHVsZSBhdXRoX21v ZHVsZSAgICAgICAgbGliZXhlYy9tb2RfYXV0aC5zbwpMb2FkTW9kdWxlIGFub25fYXV0aF9tb2R1 bGUgICBsaWJleGVjL21vZF9hdXRoX2Fub24uc28KTG9hZE1vZHVsZSBkYm1fYXV0aF9tb2R1bGUg ICAgbGliZXhlYy9tb2RfYXV0aF9kYm0uc28KTG9hZE1vZHVsZSBkaWdlc3RfbW9kdWxlICAgICAg bGliZXhlYy9tb2RfZGlnZXN0LnNvCkxvYWRNb2R1bGUgcHJveHlfbW9kdWxlICAgICAgIGxpYmV4 ZWMvbGlicHJveHkuc28KTG9hZE1vZHVsZSBjZXJuX21ldGFfbW9kdWxlICAgbGliZXhlYy9tb2Rf Y2Vybl9tZXRhLnNvCkxvYWRNb2R1bGUgZXhwaXJlc19tb2R1bGUgICAgIGxpYmV4ZWMvbW9kX2V4 cGlyZXMuc28KTG9hZE1vZHVsZSBoZWFkZXJzX21vZHVsZSAgICAgbGliZXhlYy9tb2RfaGVhZGVy cy5zbwpMb2FkTW9kdWxlIHVzZXJ0cmFja19tb2R1bGUgICBsaWJleGVjL21vZF91c2VydHJhY2su c28KTG9hZE1vZHVsZSBleGFtcGxlX21vZHVsZSAgICAgbGliZXhlYy9tb2RfZXhhbXBsZS5zbwpM b2FkTW9kdWxlIHVuaXF1ZV9pZF9tb2R1bGUgICBsaWJleGVjL21vZF91bmlxdWVfaWQuc28KTG9h ZE1vZHVsZSBzZXRlbnZpZl9tb2R1bGUgICAgbGliZXhlYy9tb2Rfc2V0ZW52aWYuc28KTG9hZE1v ZHVsZSBzc2xfbW9kdWxlICAgICAgICAgbGliZXhlYy9saWJzc2wuc28KCiMgIFJlY29uc3RydWN0 aW9uIG9mIHRoZSBjb21wbGV0ZSBtb2R1bGUgbGlzdCBmcm9tIGFsbCBhdmFpbGFibGUgbW9kdWxl cwojICAoc3RhdGljIGFuZCBzaGFyZWQgb25lcykgdG8gYWNoaWV2ZSBjb3JyZWN0IG1vZHVsZSBl eGVjdXRpb24gb3JkZXIuCiMgIFtXSEVORVZFUiBZT1UgQ0hBTkdFIFRIRSBMT0FETU9EVUxFIFNF Q1RJT04gQUJPVkUgVVBEQVRFIFRISVMsIFRPT10KQ2xlYXJNb2R1bGVMaXN0CkFkZE1vZHVsZSBt b2RfbW1hcF9zdGF0aWMuYwpBZGRNb2R1bGUgbW9kX3Zob3N0X2FsaWFzLmMKQWRkTW9kdWxlIG1v ZF9lbnYuYwpBZGRNb2R1bGUgbW9kX2xvZ19jb25maWcuYwpBZGRNb2R1bGUgbW9kX2xvZ19hZ2Vu dC5jCkFkZE1vZHVsZSBtb2RfbG9nX3JlZmVyZXIuYwpBZGRNb2R1bGUgbW9kX21pbWVfbWFnaWMu YwpBZGRNb2R1bGUgbW9kX21pbWUuYwpBZGRNb2R1bGUgbW9kX25lZ290aWF0aW9uLmMKQWRkTW9k dWxlIG1vZF9zdGF0dXMuYwpBZGRNb2R1bGUgbW9kX2luZm8uYwpBZGRNb2R1bGUgbW9kX2luY2x1 ZGUuYwpBZGRNb2R1bGUgbW9kX2F1dG9pbmRleC5jCkFkZE1vZHVsZSBtb2RfZGlyLmMKQWRkTW9k dWxlIG1vZF9jZ2kuYwpBZGRNb2R1bGUgbW9kX2FzaXMuYwpBZGRNb2R1bGUgbW9kX2ltYXAuYwpB ZGRNb2R1bGUgbW9kX2FjdGlvbnMuYwpBZGRNb2R1bGUgbW9kX3NwZWxpbmcuYwpBZGRNb2R1bGUg bW9kX3VzZXJkaXIuYwpBZGRNb2R1bGUgbW9kX2FsaWFzLmMKQWRkTW9kdWxlIG1vZF9yZXdyaXRl LmMKQWRkTW9kdWxlIG1vZF9hY2Nlc3MuYwpBZGRNb2R1bGUgbW9kX2F1dGguYwpBZGRNb2R1bGUg bW9kX2F1dGhfYW5vbi5jCkFkZE1vZHVsZSBtb2RfYXV0aF9kYm0uYwpBZGRNb2R1bGUgbW9kX2Rp Z2VzdC5jCkFkZE1vZHVsZSBtb2RfcHJveHkuYwpBZGRNb2R1bGUgbW9kX2Nlcm5fbWV0YS5jCkFk ZE1vZHVsZSBtb2RfZXhwaXJlcy5jCkFkZE1vZHVsZSBtb2RfaGVhZGVycy5jCkFkZE1vZHVsZSBt b2RfdXNlcnRyYWNrLmMKQWRkTW9kdWxlIG1vZF9leGFtcGxlLmMKQWRkTW9kdWxlIG1vZF91bmlx dWVfaWQuYwpBZGRNb2R1bGUgbW9kX3NvLmMKQWRkTW9kdWxlIG1vZF9zZXRlbnZpZi5jCkFkZE1v ZHVsZSBtb2Rfc3NsLmMKCiMKIyBFeHRlbmRlZFN0YXR1cyBjb250cm9scyB3aGV0aGVyIEFwYWNo ZSB3aWxsIGdlbmVyYXRlICJmdWxsIiBzdGF0dXMKIyBpbmZvcm1hdGlvbiAoRXh0ZW5kZWRTdGF0 dXMgT24pIG9yIGp1c3QgYmFzaWMgaW5mb3JtYXRpb24gKEV4dGVuZGVkU3RhdHVzCiMgT2ZmKSB3 aGVuIHRoZSAic2VydmVyLXN0YXR1cyIgaGFuZGxlciBpcyBjYWxsZWQuIFRoZSBkZWZhdWx0IGlz IE9mZi4KIwojRXh0ZW5kZWRTdGF0dXMgT24KCiMjIyBTZWN0aW9uIDI6ICdNYWluJyBzZXJ2ZXIg Y29uZmlndXJhdGlvbgojCiMgVGhlIGRpcmVjdGl2ZXMgaW4gdGhpcyBzZWN0aW9uIHNldCB1cCB0 aGUgdmFsdWVzIHVzZWQgYnkgdGhlICdtYWluJwojIHNlcnZlciwgd2hpY2ggcmVzcG9uZHMgdG8g YW55IHJlcXVlc3RzIHRoYXQgYXJlbid0IGhhbmRsZWQgYnkgYQojIDxWaXJ0dWFsSG9zdD4gZGVm aW5pdGlvbi4gIFRoZXNlIHZhbHVlcyBhbHNvIHByb3ZpZGUgZGVmYXVsdHMgZm9yCiMgYW55IDxW aXJ0dWFsSG9zdD4gY29udGFpbmVycyB5b3UgbWF5IGRlZmluZSBsYXRlciBpbiB0aGUgZmlsZS4K IwojIEFsbCBvZiB0aGVzZSBkaXJlY3RpdmVzIG1heSBhcHBlYXIgaW5zaWRlIDxWaXJ0dWFsSG9z dD4gY29udGFpbmVycywKIyBpbiB3aGljaCBjYXNlIHRoZXNlIGRlZmF1bHQgc2V0dGluZ3Mgd2ls bCBiZSBvdmVycmlkZGVuIGZvciB0aGUKIyB2aXJ0dWFsIGhvc3QgYmVpbmcgZGVmaW5lZC4KIwoK IwojIElmIHlvdXIgU2VydmVyVHlwZSBkaXJlY3RpdmUgKHNldCBlYXJsaWVyIGluIHRoZSAnR2xv YmFsIEVudmlyb25tZW50JwojIHNlY3Rpb24pIGlzIHNldCB0byAiaW5ldGQiLCB0aGUgbmV4dCBm ZXcgZGlyZWN0aXZlcyBkb24ndCBoYXZlIGFueQojIGVmZmVjdCBzaW5jZSB0aGVpciBzZXR0aW5n cyBhcmUgZGVmaW5lZCBieSB0aGUgaW5ldGQgY29uZmlndXJhdGlvbi4KIyBTa2lwIGFoZWFkIHRv IHRoZSBTZXJ2ZXJBZG1pbiBkaXJlY3RpdmUuCiMKCiMKIyBQb3J0OiBUaGUgcG9ydCB0byB3aGlj aCB0aGUgc3RhbmRhbG9uZSBzZXJ2ZXIgbGlzdGVucy4gRm9yCiMgcG9ydHMgPCAxMDIzLCB5b3Ug d2lsbCBuZWVkIGh0dHBkIHRvIGJlIHJ1biBhcyByb290IGluaXRpYWxseS4KIwpQb3J0IDgwODAK CiMKIyBJZiB5b3Ugd2lzaCBodHRwZCB0byBydW4gYXMgYSBkaWZmZXJlbnQgdXNlciBvciBncm91 cCwgeW91IG11c3QgcnVuCiMgaHR0cGQgYXMgcm9vdCBpbml0aWFsbHkgYW5kIGl0IHdpbGwgc3dp dGNoLiAgCiMKIyBVc2VyL0dyb3VwOiBUaGUgbmFtZSAob3IgI251bWJlcikgb2YgdGhlIHVzZXIv Z3JvdXAgdG8gcnVuIGh0dHBkIGFzLgojICAuIE9uIFNDTyAoT0RUIDMpIHVzZSAiVXNlciBub3Vz ZXIiIGFuZCAiR3JvdXAgbm9ncm91cCIuCiMgIC4gT24gSFBVWCB5b3UgbWF5IG5vdCBiZSBhYmxl IHRvIHVzZSBzaGFyZWQgbWVtb3J5IGFzIG5vYm9keSwgYW5kIHRoZQojICAgIHN1Z2dlc3RlZCB3 b3JrYXJvdW5kIGlzIHRvIGNyZWF0ZSBhIHVzZXIgd3d3IGFuZCB1c2UgdGhhdCB1c2VyLgojICBO T1RFIHRoYXQgc29tZSBrZXJuZWxzIHJlZnVzZSB0byBzZXRnaWQoR3JvdXApIG9yIHNlbWN0bChJ UENfU0VUKQojICB3aGVuIHRoZSB2YWx1ZSBvZiAodW5zaWduZWQpR3JvdXAgaXMgYWJvdmUgNjAw MDA7IAojICBkb24ndCB1c2UgR3JvdXAgbm9ib2R5IG9uIHRoZXNlIHN5c3RlbXMhCiMKVXNlciBu b2JvZHkKR3JvdXAgbm9ib2R5CgojCiMgU2VydmVyQWRtaW46IFlvdXIgYWRkcmVzcywgd2hlcmUg cHJvYmxlbXMgd2l0aCB0aGUgc2VydmVyIHNob3VsZCBiZQojIGUtbWFpbGVkLiAgVGhpcyBhZGRy ZXNzIGFwcGVhcnMgb24gc29tZSBzZXJ2ZXItZ2VuZXJhdGVkIHBhZ2VzLCBzdWNoCiMgYXMgZXJy b3IgZG9jdW1lbnRzLgojClNlcnZlckFkbWluIHNwZW5jZXIucGxhbnRpZXJAc3RyYXRlY2guY29t CgojCiMgU2VydmVyTmFtZSBhbGxvd3MgeW91IHRvIHNldCBhIGhvc3QgbmFtZSB3aGljaCBpcyBz ZW50IGJhY2sgdG8gY2xpZW50cyBmb3IKIyB5b3VyIHNlcnZlciBpZiBpdCdzIGRpZmZlcmVudCB0 aGFuIHRoZSBvbmUgdGhlIHByb2dyYW0gd291bGQgZ2V0IChpLmUuLCB1c2UKIyAid3d3IiBpbnN0 ZWFkIG9mIHRoZSBob3N0J3MgcmVhbCBuYW1lKS4KIwojIE5vdGU6IFlvdSBjYW5ub3QganVzdCBp bnZlbnQgaG9zdCBuYW1lcyBhbmQgaG9wZSB0aGV5IHdvcmsuIFRoZSBuYW1lIHlvdSAKIyBkZWZp bmUgaGVyZSBtdXN0IGJlIGEgdmFsaWQgRE5TIG5hbWUgZm9yIHlvdXIgaG9zdC4gSWYgeW91IGRv bid0IHVuZGVyc3RhbmQKIyB0aGlzLCBhc2sgeW91ciBuZXR3b3JrIGFkbWluaXN0cmF0b3IuCiMg SWYgeW91ciBob3N0IGRvZXNuJ3QgaGF2ZSBhIHJlZ2lzdGVyZWQgRE5TIG5hbWUsIGVudGVyIGl0 cyBJUCBhZGRyZXNzIGhlcmUuCiMgWW91IHdpbGwgaGF2ZSB0byBhY2Nlc3MgaXQgYnkgaXRzIGFk ZHJlc3MgKGUuZy4sIGh0dHA6Ly8xMjMuNDUuNjcuODkvKQojIGFueXdheSwgYW5kIHRoaXMgd2ls bCBtYWtlIHJlZGlyZWN0aW9ucyB3b3JrIGluIGEgc2Vuc2libGUgd2F5LgojCiMgMTI3LjAuMC4x IGlzIHRoZSBUQ1AvSVAgbG9jYWwgbG9vcC1iYWNrIGFkZHJlc3MsIG9mdGVuIG5hbWVkIGxvY2Fs aG9zdC4gWW91ciAKIyBtYWNoaW5lIGFsd2F5cyBrbm93cyBpdHNlbGYgYnkgdGhpcyBhZGRyZXNz LiBJZiB5b3UgdXNlIEFwYWNoZSBzdHJpY3RseSBmb3IgCiMgbG9jYWwgdGVzdGluZyBhbmQgZGV2 ZWxvcG1lbnQsIHlvdSBtYXkgdXNlIDEyNy4wLjAuMSBhcyB0aGUgc2VydmVyIG5hbWUuCiMKU2Vy dmVyTmFtZSAxNzIuMzAuMTYuMTIKCiMKIyBEb2N1bWVudFJvb3Q6IFRoZSBkaXJlY3Rvcnkgb3V0 IG9mIHdoaWNoIHlvdSB3aWxsIHNlcnZlIHlvdXIKIyBkb2N1bWVudHMuIEJ5IGRlZmF1bHQsIGFs bCByZXF1ZXN0cyBhcmUgdGFrZW4gZnJvbSB0aGlzIGRpcmVjdG9yeSwgYnV0CiMgc3ltYm9saWMg bGlua3MgYW5kIGFsaWFzZXMgbWF5IGJlIHVzZWQgdG8gcG9pbnQgdG8gb3RoZXIgbG9jYXRpb25z LgojCkRvY3VtZW50Um9vdCAiL3Vzci9sb2NhbC9hcGFjaGUvaHRkb2NzIgoKIwojIEVhY2ggZGly ZWN0b3J5IHRvIHdoaWNoIEFwYWNoZSBoYXMgYWNjZXNzLCBjYW4gYmUgY29uZmlndXJlZCB3aXRo IHJlc3BlY3QKIyB0byB3aGljaCBzZXJ2aWNlcyBhbmQgZmVhdHVyZXMgYXJlIGFsbG93ZWQgYW5k L29yIGRpc2FibGVkIGluIHRoYXQKIyBkaXJlY3RvcnkgKGFuZCBpdHMgc3ViZGlyZWN0b3JpZXMp LiAKIwojIEZpcnN0LCB3ZSBjb25maWd1cmUgdGhlICJkZWZhdWx0IiB0byBiZSBhIHZlcnkgcmVz dHJpY3RpdmUgc2V0IG9mIAojIHBlcm1pc3Npb25zLiAgCiMKPERpcmVjdG9yeSAvPgogICAgT3B0 aW9ucyBGb2xsb3dTeW1MaW5rcwogICAgQWxsb3dPdmVycmlkZSBOb25lCjwvRGlyZWN0b3J5PgoK IwojIE5vdGUgdGhhdCBmcm9tIHRoaXMgcG9pbnQgZm9yd2FyZCB5b3UgbXVzdCBzcGVjaWZpY2Fs bHkgYWxsb3cKIyBwYXJ0aWN1bGFyIGZlYXR1cmVzIHRvIGJlIGVuYWJsZWQgLSBzbyBpZiBzb21l dGhpbmcncyBub3Qgd29ya2luZyBhcwojIHlvdSBtaWdodCBleHBlY3QsIG1ha2Ugc3VyZSB0aGF0 IHlvdSBoYXZlIHNwZWNpZmljYWxseSBlbmFibGVkIGl0CiMgYmVsb3cuCiMKCiMKIyBUaGlzIHNo b3VsZCBiZSBjaGFuZ2VkIHRvIHdoYXRldmVyIHlvdSBzZXQgRG9jdW1lbnRSb290IHRvLgojCjxE aXJlY3RvcnkgIi91c3IvbG9jYWwvYXBhY2hlL2h0ZG9jcyI+CgojCiMgVGhpcyBtYXkgYWxzbyBi ZSAiTm9uZSIsICJBbGwiLCBvciBhbnkgY29tYmluYXRpb24gb2YgIkluZGV4ZXMiLAojICJJbmNs dWRlcyIsICJGb2xsb3dTeW1MaW5rcyIsICJFeGVjQ0dJIiwgb3IgIk11bHRpVmlld3MiLgojCiMg Tm90ZSB0aGF0ICJNdWx0aVZpZXdzIiBtdXN0IGJlIG5hbWVkICpleHBsaWNpdGx5KiAtLS0gIk9w dGlvbnMgQWxsIgojIGRvZXNuJ3QgZ2l2ZSBpdCB0byB5b3UuCiMKICAgIE9wdGlvbnMgSW5kZXhl cyBGb2xsb3dTeW1MaW5rcyBNdWx0aVZpZXdzCgojCiMgVGhpcyBjb250cm9scyB3aGljaCBvcHRp b25zIHRoZSAuaHRhY2Nlc3MgZmlsZXMgaW4gZGlyZWN0b3JpZXMgY2FuCiMgb3ZlcnJpZGUuIENh biBhbHNvIGJlICJBbGwiLCBvciBhbnkgY29tYmluYXRpb24gb2YgIk9wdGlvbnMiLCAiRmlsZUlu Zm8iLCAKIyAiQXV0aENvbmZpZyIsIGFuZCAiTGltaXQiCiMKICAgIEFsbG93T3ZlcnJpZGUgTm9u ZQoKIwojIENvbnRyb2xzIHdobyBjYW4gZ2V0IHN0dWZmIGZyb20gdGhpcyBzZXJ2ZXIuCiMKICAg IE9yZGVyIGFsbG93LGRlbnkKICAgIEFsbG93IGZyb20gYWxsCjwvRGlyZWN0b3J5PgoKIwojIFVz ZXJEaXI6IFRoZSBuYW1lIG9mIHRoZSBkaXJlY3Rvcnkgd2hpY2ggaXMgYXBwZW5kZWQgb250byBh IHVzZXIncyBob21lCiMgZGlyZWN0b3J5IGlmIGEgfnVzZXIgcmVxdWVzdCBpcyByZWNlaXZlZC4K Iwo8SWZNb2R1bGUgbW9kX3VzZXJkaXIuYz4KICAgIFVzZXJEaXIgcHVibGljX2h0bWwKPC9JZk1v ZHVsZT4KCiMKIyBDb250cm9sIGFjY2VzcyB0byBVc2VyRGlyIGRpcmVjdG9yaWVzLiAgVGhlIGZv bGxvd2luZyBpcyBhbiBleGFtcGxlCiMgZm9yIGEgc2l0ZSB3aGVyZSB0aGVzZSBkaXJlY3Rvcmll cyBhcmUgcmVzdHJpY3RlZCB0byByZWFkLW9ubHkuCiMKIzxEaXJlY3RvcnkgL2hvbWUvKi9wdWJs aWNfaHRtbD4KIyAgICBBbGxvd092ZXJyaWRlIEZpbGVJbmZvIEF1dGhDb25maWcgTGltaXQKIyAg ICBPcHRpb25zIE11bHRpVmlld3MgSW5kZXhlcyBTeW1MaW5rc0lmT3duZXJNYXRjaCBJbmNsdWRl c05vRXhlYwojICAgIDxMaW1pdCBHRVQgUE9TVCBPUFRJT05TIFBST1BGSU5EPgojICAgICAgICBP cmRlciBhbGxvdyxkZW55CiMgICAgICAgIEFsbG93IGZyb20gYWxsCiMgICAgPC9MaW1pdD4KIyAg ICA8TGltaXRFeGNlcHQgR0VUIFBPU1QgT1BUSU9OUyBQUk9QRklORD4KIyAgICAgICAgT3JkZXIg ZGVueSxhbGxvdwojICAgICAgICBEZW55IGZyb20gYWxsCiMgICAgPC9MaW1pdEV4Y2VwdD4KIzwv RGlyZWN0b3J5PgoKIwojIERpcmVjdG9yeUluZGV4OiBOYW1lIG9mIHRoZSBmaWxlIG9yIGZpbGVz IHRvIHVzZSBhcyBhIHByZS13cml0dGVuIEhUTUwKIyBkaXJlY3RvcnkgaW5kZXguICBTZXBhcmF0 ZSBtdWx0aXBsZSBlbnRyaWVzIHdpdGggc3BhY2VzLgojCjxJZk1vZHVsZSBtb2RfZGlyLmM+CiAg ICBEaXJlY3RvcnlJbmRleCBpbmRleC5odG1sCjwvSWZNb2R1bGU+CgojCiMgQWNjZXNzRmlsZU5h bWU6IFRoZSBuYW1lIG9mIHRoZSBmaWxlIHRvIGxvb2sgZm9yIGluIGVhY2ggZGlyZWN0b3J5CiMg Zm9yIGFjY2VzcyBjb250cm9sIGluZm9ybWF0aW9uLgojCkFjY2Vzc0ZpbGVOYW1lIC5odGFjY2Vz cwoKIwojIFRoZSBmb2xsb3dpbmcgbGluZXMgcHJldmVudCAuaHRhY2Nlc3MgZmlsZXMgZnJvbSBi ZWluZyB2aWV3ZWQgYnkKIyBXZWIgY2xpZW50cy4gIFNpbmNlIC5odGFjY2VzcyBmaWxlcyBvZnRl biBjb250YWluIGF1dGhvcml6YXRpb24KIyBpbmZvcm1hdGlvbiwgYWNjZXNzIGlzIGRpc2FsbG93 ZWQgZm9yIHNlY3VyaXR5IHJlYXNvbnMuICBDb21tZW50CiMgdGhlc2UgbGluZXMgb3V0IGlmIHlv dSB3YW50IFdlYiB2aXNpdG9ycyB0byBzZWUgdGhlIGNvbnRlbnRzIG9mCiMgLmh0YWNjZXNzIGZp bGVzLiAgSWYgeW91IGNoYW5nZSB0aGUgQWNjZXNzRmlsZU5hbWUgZGlyZWN0aXZlIGFib3ZlLAoj IGJlIHN1cmUgdG8gbWFrZSB0aGUgY29ycmVzcG9uZGluZyBjaGFuZ2VzIGhlcmUuCiMKIyBBbHNv LCBmb2xrcyB0ZW5kIHRvIHVzZSBuYW1lcyBzdWNoIGFzIC5odHBhc3N3ZCBmb3IgcGFzc3dvcmQK IyBmaWxlcywgc28gdGhpcyB3aWxsIHByb3RlY3QgdGhvc2UgYXMgd2VsbC4KIwo8RmlsZXMgfiAi XlwuaHQiPgogICAgT3JkZXIgYWxsb3csZGVueQogICAgRGVueSBmcm9tIGFsbAogICAgU2F0aXNm eSBBbGwKPC9GaWxlcz4KCiMKIyBDYWNoZU5lZ290aWF0ZWREb2NzOiBCeSBkZWZhdWx0LCBBcGFj aGUgc2VuZHMgIlByYWdtYTogbm8tY2FjaGUiIHdpdGggZWFjaAojIGRvY3VtZW50IHRoYXQgd2Fz IG5lZ290aWF0ZWQgb24gdGhlIGJhc2lzIG9mIGNvbnRlbnQuIFRoaXMgYXNrcyBwcm94eQojIHNl cnZlcnMgbm90IHRvIGNhY2hlIHRoZSBkb2N1bWVudC4gVW5jb21tZW50aW5nIHRoZSBmb2xsb3dp bmcgbGluZSBkaXNhYmxlcwojIHRoaXMgYmVoYXZpb3IsIGFuZCBwcm94aWVzIHdpbGwgYmUgYWxs b3dlZCB0byBjYWNoZSB0aGUgZG9jdW1lbnRzLgojCiNDYWNoZU5lZ290aWF0ZWREb2NzCgojCiMg VXNlQ2Fub25pY2FsTmFtZTogIChuZXcgZm9yIDEuMykgIFdpdGggdGhpcyBzZXR0aW5nIHR1cm5l ZCBvbiwgd2hlbmV2ZXIKIyBBcGFjaGUgbmVlZHMgdG8gY29uc3RydWN0IGEgc2VsZi1yZWZlcmVu Y2luZyBVUkwgKGEgVVJMIHRoYXQgcmVmZXJzIGJhY2sKIyB0byB0aGUgc2VydmVyIHRoZSByZXNw b25zZSBpcyBjb21pbmcgZnJvbSkgaXQgd2lsbCB1c2UgU2VydmVyTmFtZSBhbmQKIyBQb3J0IHRv IGZvcm0gYSAiY2Fub25pY2FsIiBuYW1lLiAgV2l0aCB0aGlzIHNldHRpbmcgb2ZmLCBBcGFjaGUg d2lsbAojIHVzZSB0aGUgaG9zdG5hbWU6cG9ydCB0aGF0IHRoZSBjbGllbnQgc3VwcGxpZWQsIHdo ZW4gcG9zc2libGUuICBUaGlzCiMgYWxzbyBhZmZlY3RzIFNFUlZFUl9OQU1FIGFuZCBTRVJWRVJf UE9SVCBpbiBDR0kgc2NyaXB0cy4KIwpVc2VDYW5vbmljYWxOYW1lIE9uCgojCiMgVHlwZXNDb25m aWcgZGVzY3JpYmVzIHdoZXJlIHRoZSBtaW1lLnR5cGVzIGZpbGUgKG9yIGVxdWl2YWxlbnQpIGlz CiMgdG8gYmUgZm91bmQuCiMKPElmTW9kdWxlIG1vZF9taW1lLmM+CiAgICBUeXBlc0NvbmZpZyAv dXNyL2xvY2FsL2FwYWNoZS9jb25mL21pbWUudHlwZXMKPC9JZk1vZHVsZT4KCiMKIyBEZWZhdWx0 VHlwZSBpcyB0aGUgZGVmYXVsdCBNSU1FIHR5cGUgdGhlIHNlcnZlciB3aWxsIHVzZSBmb3IgYSBk b2N1bWVudAojIGlmIGl0IGNhbm5vdCBvdGhlcndpc2UgZGV0ZXJtaW5lIG9uZSwgc3VjaCBhcyBm cm9tIGZpbGVuYW1lIGV4dGVuc2lvbnMuCiMgSWYgeW91ciBzZXJ2ZXIgY29udGFpbnMgbW9zdGx5 IHRleHQgb3IgSFRNTCBkb2N1bWVudHMsICJ0ZXh0L3BsYWluIiBpcwojIGEgZ29vZCB2YWx1ZS4g IElmIG1vc3Qgb2YgeW91ciBjb250ZW50IGlzIGJpbmFyeSwgc3VjaCBhcyBhcHBsaWNhdGlvbnMK IyBvciBpbWFnZXMsIHlvdSBtYXkgd2FudCB0byB1c2UgImFwcGxpY2F0aW9uL29jdGV0LXN0cmVh bSIgaW5zdGVhZCB0bwojIGtlZXAgYnJvd3NlcnMgZnJvbSB0cnlpbmcgdG8gZGlzcGxheSBiaW5h cnkgZmlsZXMgYXMgdGhvdWdoIHRoZXkgYXJlCiMgdGV4dC4KIwpEZWZhdWx0VHlwZSB0ZXh0L3Bs YWluCgojCiMgVGhlIG1vZF9taW1lX21hZ2ljIG1vZHVsZSBhbGxvd3MgdGhlIHNlcnZlciB0byB1 c2UgdmFyaW91cyBoaW50cyBmcm9tIHRoZQojIGNvbnRlbnRzIG9mIHRoZSBmaWxlIGl0c2VsZiB0 byBkZXRlcm1pbmUgaXRzIHR5cGUuICBUaGUgTUlNRU1hZ2ljRmlsZQojIGRpcmVjdGl2ZSB0ZWxs cyB0aGUgbW9kdWxlIHdoZXJlIHRoZSBoaW50IGRlZmluaXRpb25zIGFyZSBsb2NhdGVkLgojIG1v ZF9taW1lX21hZ2ljIGlzIG5vdCBwYXJ0IG9mIHRoZSBkZWZhdWx0IHNlcnZlciAoeW91IGhhdmUg dG8gYWRkCiMgaXQgeW91cnNlbGYgd2l0aCBhIExvYWRNb2R1bGUgW3NlZSB0aGUgRFNPIHBhcmFn cmFwaCBpbiB0aGUgJ0dsb2JhbAojIEVudmlyb25tZW50JyBzZWN0aW9uXSwgb3IgcmVjb21waWxl IHRoZSBzZXJ2ZXIgYW5kIGluY2x1ZGUgbW9kX21pbWVfbWFnaWMKIyBhcyBwYXJ0IG9mIHRoZSBj b25maWd1cmF0aW9uKSwgc28gaXQncyBlbmNsb3NlZCBpbiBhbiA8SWZNb2R1bGU+IGNvbnRhaW5l ci4KIyBUaGlzIG1lYW5zIHRoYXQgdGhlIE1JTUVNYWdpY0ZpbGUgZGlyZWN0aXZlIHdpbGwgb25s eSBiZSBwcm9jZXNzZWQgaWYgdGhlCiMgbW9kdWxlIGlzIHBhcnQgb2YgdGhlIHNlcnZlci4KIwo8 SWZNb2R1bGUgbW9kX21pbWVfbWFnaWMuYz4KICAgIE1JTUVNYWdpY0ZpbGUgL3Vzci9sb2NhbC9h cGFjaGUvY29uZi9tYWdpYwo8L0lmTW9kdWxlPgoKIwojIEhvc3RuYW1lTG9va3VwczogTG9nIHRo ZSBuYW1lcyBvZiBjbGllbnRzIG9yIGp1c3QgdGhlaXIgSVAgYWRkcmVzc2VzCiMgZS5nLiwgd3d3 LmFwYWNoZS5vcmcgKG9uKSBvciAyMDQuNjIuMTI5LjEzMiAob2ZmKS4KIyBUaGUgZGVmYXVsdCBp cyBvZmYgYmVjYXVzZSBpdCdkIGJlIG92ZXJhbGwgYmV0dGVyIGZvciB0aGUgbmV0IGlmIHBlb3Bs ZQojIGhhZCB0byBrbm93aW5nbHkgdHVybiB0aGlzIGZlYXR1cmUgb24sIHNpbmNlIGVuYWJsaW5n IGl0IG1lYW5zIHRoYXQKIyBlYWNoIGNsaWVudCByZXF1ZXN0IHdpbGwgcmVzdWx0IGluIEFUIExF QVNUIG9uZSBsb29rdXAgcmVxdWVzdCB0byB0aGUKIyBuYW1lc2VydmVyLgojCkhvc3RuYW1lTG9v a3VwcyBPZmYKCiMKIyBFcnJvckxvZzogVGhlIGxvY2F0aW9uIG9mIHRoZSBlcnJvciBsb2cgZmls ZS4KIyBJZiB5b3UgZG8gbm90IHNwZWNpZnkgYW4gRXJyb3JMb2cgZGlyZWN0aXZlIHdpdGhpbiBh IDxWaXJ0dWFsSG9zdD4KIyBjb250YWluZXIsIGVycm9yIG1lc3NhZ2VzIHJlbGF0aW5nIHRvIHRo YXQgdmlydHVhbCBob3N0IHdpbGwgYmUKIyBsb2dnZWQgaGVyZS4gIElmIHlvdSAqZG8qIGRlZmlu ZSBhbiBlcnJvciBsb2dmaWxlIGZvciBhIDxWaXJ0dWFsSG9zdD4KIyBjb250YWluZXIsIHRoYXQg aG9zdCdzIGVycm9ycyB3aWxsIGJlIGxvZ2dlZCB0aGVyZSBhbmQgbm90IGhlcmUuCiMKRXJyb3JM b2cgL3Vzci9sb2NhbC9hcGFjaGUvbG9ncy9lcnJvcl9sb2cKCiMKIyBMb2dMZXZlbDogQ29udHJv bCB0aGUgbnVtYmVyIG9mIG1lc3NhZ2VzIGxvZ2dlZCB0byB0aGUgZXJyb3JfbG9nLgojIFBvc3Np YmxlIHZhbHVlcyBpbmNsdWRlOiBkZWJ1ZywgaW5mbywgbm90aWNlLCB3YXJuLCBlcnJvciwgY3Jp dCwKIyBhbGVydCwgZW1lcmcuCiMKTG9nTGV2ZWwgd2FybgoKIwojIFRoZSBmb2xsb3dpbmcgZGly ZWN0aXZlcyBkZWZpbmUgc29tZSBmb3JtYXQgbmlja25hbWVzIGZvciB1c2Ugd2l0aAojIGEgQ3Vz dG9tTG9nIGRpcmVjdGl2ZSAoc2VlIGJlbG93KS4KIwpMb2dGb3JtYXQgIiVoICVsICV1ICV0IFwi JXJcIiAlPnMgJWIgXCIle1JlZmVyZXJ9aVwiIFwiJXtVc2VyLUFnZW50fWlcIiIgY29tYmluZWQK TG9nRm9ybWF0ICIlaCAlbCAldSAldCBcIiVyXCIgJT5zICViIiBjb21tb24KTG9nRm9ybWF0ICIl e1JlZmVyZXJ9aSAtPiAlVSIgcmVmZXJlcgpMb2dGb3JtYXQgIiV7VXNlci1hZ2VudH1pIiBhZ2Vu dAoKIwojIFRoZSBsb2NhdGlvbiBhbmQgZm9ybWF0IG9mIHRoZSBhY2Nlc3MgbG9nZmlsZSAoQ29t bW9uIExvZ2ZpbGUgRm9ybWF0KS4KIyBJZiB5b3UgZG8gbm90IGRlZmluZSBhbnkgYWNjZXNzIGxv Z2ZpbGVzIHdpdGhpbiBhIDxWaXJ0dWFsSG9zdD4KIyBjb250YWluZXIsIHRoZXkgd2lsbCBiZSBs b2dnZWQgaGVyZS4gIENvbnRyYXJpd2lzZSwgaWYgeW91ICpkbyoKIyBkZWZpbmUgcGVyLTxWaXJ0 dWFsSG9zdD4gYWNjZXNzIGxvZ2ZpbGVzLCB0cmFuc2FjdGlvbnMgd2lsbCBiZQojIGxvZ2dlZCB0 aGVyZWluIGFuZCAqbm90KiBpbiB0aGlzIGZpbGUuCiMKQ3VzdG9tTG9nIC91c3IvbG9jYWwvYXBh Y2hlL2xvZ3MvYWNjZXNzX2xvZyBjb21tb24KCiMKIyBJZiB5b3Ugd291bGQgbGlrZSB0byBoYXZl IGFnZW50IGFuZCByZWZlcmVyIGxvZ2ZpbGVzLCB1bmNvbW1lbnQgdGhlCiMgZm9sbG93aW5nIGRp cmVjdGl2ZXMuCiMKI0N1c3RvbUxvZyAvdXNyL2xvY2FsL2FwYWNoZS9sb2dzL3JlZmVyZXJfbG9n IHJlZmVyZXIKI0N1c3RvbUxvZyAvdXNyL2xvY2FsL2FwYWNoZS9sb2dzL2FnZW50X2xvZyBhZ2Vu dAoKIwojIElmIHlvdSBwcmVmZXIgYSBzaW5nbGUgbG9nZmlsZSB3aXRoIGFjY2VzcywgYWdlbnQs IGFuZCByZWZlcmVyIGluZm9ybWF0aW9uCiMgKENvbWJpbmVkIExvZ2ZpbGUgRm9ybWF0KSB5b3Ug Y2FuIHVzZSB0aGUgZm9sbG93aW5nIGRpcmVjdGl2ZS4KIwojQ3VzdG9tTG9nIC91c3IvbG9jYWwv YXBhY2hlL2xvZ3MvYWNjZXNzX2xvZyBjb21iaW5lZAoKIwojIE9wdGlvbmFsbHkgYWRkIGEgbGlu ZSBjb250YWluaW5nIHRoZSBzZXJ2ZXIgdmVyc2lvbiBhbmQgdmlydHVhbCBob3N0CiMgbmFtZSB0 byBzZXJ2ZXItZ2VuZXJhdGVkIHBhZ2VzIChlcnJvciBkb2N1bWVudHMsIEZUUCBkaXJlY3Rvcnkg bGlzdGluZ3MsCiMgbW9kX3N0YXR1cyBhbmQgbW9kX2luZm8gb3V0cHV0IGV0Yy4sIGJ1dCBub3Qg Q0dJIGdlbmVyYXRlZCBkb2N1bWVudHMpLgojIFNldCB0byAiRU1haWwiIHRvIGFsc28gaW5jbHVk ZSBhIG1haWx0bzogbGluayB0byB0aGUgU2VydmVyQWRtaW4uCiMgU2V0IHRvIG9uZSBvZjogIE9u IHwgT2ZmIHwgRU1haWwKIwpTZXJ2ZXJTaWduYXR1cmUgT24KCiMgRUJDRElDIGNvbmZpZ3VyYXRp b246CiMgKG9ubHkgZm9yIG1haW5mcmFtZXMgdXNpbmcgdGhlIEVCQ0RJQyBjb2Rlc2V0LCBjdXJy ZW50bHkgb25lIG9mOgojIEZ1aml0c3UtU2llbWVucycgQlMyMDAwL09TRCwgSUJNJ3MgT1MvMzkw IGFuZCBJQk0ncyBUUEYpISEKIyBUaGUgZm9sbG93aW5nIGRlZmF1bHQgY29uZmlndXJhdGlvbiBh c3N1bWVzIHRoYXQgInRleHQgZmlsZXMiCiMgYXJlIHN0b3JlZCBpbiBFQkNESUMgKHNvIHRoYXQg eW91IGNhbiBvcGVyYXRlIG9uIHRoZW0gdXNpbmcgdGhlCiMgbm9ybWFsIFBPU0lYIHRvb2xzIGxp a2UgZ3JlcCBhbmQgc29ydCkgd2hpbGUgImJpbmFyeSBmaWxlcyIgYXJlCiMgc3RvcmVkIHdpdGgg aWRlbnRpY2FsIG9jdGV0cyBhcyBvbiBhbiBBU0NJSSBtYWNoaW5lLgojCiMgVGhlIGRpcmVjdGl2 ZXMgYXJlIGV2YWx1YXRlZCBpbiBjb25maWd1cmF0aW9uIGZpbGUgb3JkZXIsIHdpdGgKIyB0aGUg RUJDRElDQ29udmVydCBkaXJlY3RpdmVzIGFwcGxpZWQgYmVmb3JlIEVCQ0RJQ0NvbnZlcnRCeVR5 cGUuCiMKIyBJZiB5b3Ugd2FudCB0byBoYXZlIEFTQ0lJIEhUTUwgZG9jdW1lbnRzIGFuZCBFQkNE SUMgSFRNTCBkb2N1bWVudHMKIyBhdCB0aGUgc2FtZSB0aW1lLCB5b3UgY2FuIHVzZSB0aGUgZmls ZSBleHRlbnNpb24gdG8gZm9yY2UKIyBjb252ZXJzaW9uIG9mZiBmb3IgdGhlIEFTQ0lJIGRvY3Vt ZW50czoKIyA+IEFkZFR5cGUgICAgICAgdGV4dC9odG1sIC5haHRtbAojID4gRUJDRElDQ29udmVy dCBPZmY9SW5PdXQgLmFodG1sCiMKIyBFQkNESUNDb252ZXJ0QnlUeXBlICBPbj1Jbk91dCB0ZXh0 LyogbWVzc2FnZS8qIG11bHRpcGFydC8qCiMgRUJDRElDQ29udmVydEJ5VHlwZSAgT249SW4gICAg YXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkCiMgRUJDRElDQ29udmVydEJ5VHlwZSAg T249SW5PdXQgYXBwbGljYXRpb24vcG9zdHNjcmlwdCBtb2RlbC92cm1sCiMgRUJDRElDQ29udmVy dEJ5VHlwZSBPZmY9SW5PdXQgKi8qCgoKIwojIEFsaWFzZXM6IEFkZCBoZXJlIGFzIG1hbnkgYWxp YXNlcyBhcyB5b3UgbmVlZCAod2l0aCBubyBsaW1pdCkuIFRoZSBmb3JtYXQgaXMgCiMgQWxpYXMg ZmFrZW5hbWUgcmVhbG5hbWUKIwo8SWZNb2R1bGUgbW9kX2FsaWFzLmM+CgogICAgIwogICAgIyBO b3RlIHRoYXQgaWYgeW91IGluY2x1ZGUgYSB0cmFpbGluZyAvIG9uIGZha2VuYW1lIHRoZW4gdGhl IHNlcnZlciB3aWxsCiAgICAjIHJlcXVpcmUgaXQgdG8gYmUgcHJlc2VudCBpbiB0aGUgVVJMLiAg U28gIi9pY29ucyIgaXNuJ3QgYWxpYXNlZCBpbiB0aGlzCiAgICAjIGV4YW1wbGUsIG9ubHkgIi9p Y29ucy8iLiAgSWYgdGhlIGZha2VuYW1lIGlzIHNsYXNoLXRlcm1pbmF0ZWQsIHRoZW4gdGhlIAog ICAgIyByZWFsbmFtZSBtdXN0IGFsc28gYmUgc2xhc2ggdGVybWluYXRlZCwgYW5kIGlmIHRoZSBm YWtlbmFtZSBvbWl0cyB0aGUgCiAgICAjIHRyYWlsaW5nIHNsYXNoLCB0aGUgcmVhbG5hbWUgbXVz dCBhbHNvIG9taXQgaXQuCiAgICAjCiAgICBBbGlhcyAvaWNvbnMvICIvdXNyL2xvY2FsL2FwYWNo ZS9pY29ucy8iCgogICAgPERpcmVjdG9yeSAiL3Vzci9sb2NhbC9hcGFjaGUvaWNvbnMiPgogICAg ICAgIE9wdGlvbnMgSW5kZXhlcyBNdWx0aVZpZXdzCiAgICAgICAgQWxsb3dPdmVycmlkZSBOb25l CiAgICAgICAgT3JkZXIgYWxsb3csZGVueQogICAgICAgIEFsbG93IGZyb20gYWxsCiAgICA8L0Rp cmVjdG9yeT4KCiAgICAjIFRoaXMgQWxpYXMgd2lsbCBwcm9qZWN0IHRoZSBvbi1saW5lIGRvY3Vt ZW50YXRpb24gdHJlZSB1bmRlciAvbWFudWFsLwogICAgIyBldmVuIGlmIHlvdSBjaGFuZ2UgdGhl IERvY3VtZW50Um9vdC4gQ29tbWVudCBpdCBpZiB5b3UgZG9uJ3Qgd2FudCB0byAKICAgICMgcHJv dmlkZSBhY2Nlc3MgdG8gdGhlIG9uLWxpbmUgZG9jdW1lbnRhdGlvbi4KICAgICMKICAgIEFsaWFz IC9tYW51YWwvICIvdXNyL2xvY2FsL2FwYWNoZS9odGRvY3MvbWFudWFsLyIKCiAgICA8RGlyZWN0 b3J5ICIvdXNyL2xvY2FsL2FwYWNoZS9odGRvY3MvbWFudWFsIj4KICAgICAgICBPcHRpb25zIElu ZGV4ZXMgRm9sbG93U3ltbGlua3MgTXVsdGlWaWV3cwogICAgICAgIEFsbG93T3ZlcnJpZGUgTm9u ZQogICAgICAgIE9yZGVyIGFsbG93LGRlbnkKICAgICAgICBBbGxvdyBmcm9tIGFsbAogICAgPC9E aXJlY3Rvcnk+CgogICAgIwogICAgIyBTY3JpcHRBbGlhczogVGhpcyBjb250cm9scyB3aGljaCBk aXJlY3RvcmllcyBjb250YWluIHNlcnZlciBzY3JpcHRzLgogICAgIyBTY3JpcHRBbGlhc2VzIGFy ZSBlc3NlbnRpYWxseSB0aGUgc2FtZSBhcyBBbGlhc2VzLCBleGNlcHQgdGhhdAogICAgIyBkb2N1 bWVudHMgaW4gdGhlIHJlYWxuYW1lIGRpcmVjdG9yeSBhcmUgdHJlYXRlZCBhcyBhcHBsaWNhdGlv bnMgYW5kCiAgICAjIHJ1biBieSB0aGUgc2VydmVyIHdoZW4gcmVxdWVzdGVkIHJhdGhlciB0aGFu IGFzIGRvY3VtZW50cyBzZW50IHRvIHRoZSBjbGllbnQuCiAgICAjIFRoZSBzYW1lIHJ1bGVzIGFi b3V0IHRyYWlsaW5nICIvIiBhcHBseSB0byBTY3JpcHRBbGlhcyBkaXJlY3RpdmVzIGFzIHRvCiAg ICAjIEFsaWFzLgogICAgIwogICAgU2NyaXB0QWxpYXMgL2NnaS1iaW4vICIvdXNyL2xvY2FsL2Fw YWNoZS9jZ2ktYmluLyIKCiAgICAjCiAgICAjICIvdXNyL2xvY2FsL2FwYWNoZS9jZ2ktYmluIiBz aG91bGQgYmUgY2hhbmdlZCB0byB3aGF0ZXZlciB5b3VyIFNjcmlwdEFsaWFzZWQKICAgICMgQ0dJ IGRpcmVjdG9yeSBleGlzdHMsIGlmIHlvdSBoYXZlIHRoYXQgY29uZmlndXJlZC4KICAgICMKICAg IDxEaXJlY3RvcnkgIi91c3IvbG9jYWwvYXBhY2hlL2NnaS1iaW4iPgogICAgICAgIEFsbG93T3Zl cnJpZGUgTm9uZQogICAgICAgIE9wdGlvbnMgTm9uZQogICAgICAgIE9yZGVyIGFsbG93LGRlbnkK ICAgICAgICBBbGxvdyBmcm9tIGFsbAogICAgPC9EaXJlY3Rvcnk+Cgo8L0lmTW9kdWxlPgojIEVu ZCBvZiBhbGlhc2VzLgoKIwojIFJlZGlyZWN0IGFsbG93cyB5b3UgdG8gdGVsbCBjbGllbnRzIGFi b3V0IGRvY3VtZW50cyB3aGljaCB1c2VkIHRvIGV4aXN0IGluCiMgeW91ciBzZXJ2ZXIncyBuYW1l c3BhY2UsIGJ1dCBkbyBub3QgYW55bW9yZS4gVGhpcyBhbGxvd3MgeW91IHRvIHRlbGwgdGhlCiMg Y2xpZW50cyB3aGVyZSB0byBsb29rIGZvciB0aGUgcmVsb2NhdGVkIGRvY3VtZW50LgojIEZvcm1h dDogUmVkaXJlY3Qgb2xkLVVSSSBuZXctVVJMCiMKCiMKIyBEaXJlY3RpdmVzIGNvbnRyb2xsaW5n IHRoZSBkaXNwbGF5IG9mIHNlcnZlci1nZW5lcmF0ZWQgZGlyZWN0b3J5IGxpc3RpbmdzLgojCjxJ Zk1vZHVsZSBtb2RfYXV0b2luZGV4LmM+CgogICAgIwogICAgIyBGYW5jeUluZGV4aW5nIGlzIHdo ZXRoZXIgeW91IHdhbnQgZmFuY3kgZGlyZWN0b3J5IGluZGV4aW5nIG9yIHN0YW5kYXJkCiAgICAj CiAgICBJbmRleE9wdGlvbnMgRmFuY3lJbmRleGluZwoKICAgICMKICAgICMgQWRkSWNvbiogZGly ZWN0aXZlcyB0ZWxsIHRoZSBzZXJ2ZXIgd2hpY2ggaWNvbiB0byBzaG93IGZvciBkaWZmZXJlbnQK ICAgICMgZmlsZXMgb3IgZmlsZW5hbWUgZXh0ZW5zaW9ucy4gIFRoZXNlIGFyZSBvbmx5IGRpc3Bs YXllZCBmb3IKICAgICMgRmFuY3lJbmRleGVkIGRpcmVjdG9yaWVzLgogICAgIwogICAgQWRkSWNv bkJ5RW5jb2RpbmcgKENNUCwvaWNvbnMvY29tcHJlc3NlZC5naWYpIHgtY29tcHJlc3MgeC1nemlw CgogICAgQWRkSWNvbkJ5VHlwZSAoVFhULC9pY29ucy90ZXh0LmdpZikgdGV4dC8qCiAgICBBZGRJ Y29uQnlUeXBlIChJTUcsL2ljb25zL2ltYWdlMi5naWYpIGltYWdlLyoKICAgIEFkZEljb25CeVR5 cGUgKFNORCwvaWNvbnMvc291bmQyLmdpZikgYXVkaW8vKgogICAgQWRkSWNvbkJ5VHlwZSAoVklE LC9pY29ucy9tb3ZpZS5naWYpIHZpZGVvLyoKCiAgICBBZGRJY29uIC9pY29ucy9iaW5hcnkuZ2lm IC5iaW4gLmV4ZQogICAgQWRkSWNvbiAvaWNvbnMvYmluaGV4LmdpZiAuaHF4CiAgICBBZGRJY29u IC9pY29ucy90YXIuZ2lmIC50YXIKICAgIEFkZEljb24gL2ljb25zL3dvcmxkMi5naWYgLndybCAu d3JsLmd6IC52cm1sIC52cm0gLml2CiAgICBBZGRJY29uIC9pY29ucy9jb21wcmVzc2VkLmdpZiAu WiAueiAudGd6IC5neiAuemlwCiAgICBBZGRJY29uIC9pY29ucy9hLmdpZiAucHMgLmFpIC5lcHMK ICAgIEFkZEljb24gL2ljb25zL2xheW91dC5naWYgLmh0bWwgLnNodG1sIC5odG0gLnBkZgogICAg QWRkSWNvbiAvaWNvbnMvdGV4dC5naWYgLnR4dAogICAgQWRkSWNvbiAvaWNvbnMvYy5naWYgLmMK ICAgIEFkZEljb24gL2ljb25zL3AuZ2lmIC5wbCAucHkKICAgIEFkZEljb24gL2ljb25zL2YuZ2lm IC5mb3IKICAgIEFkZEljb24gL2ljb25zL2R2aS5naWYgLmR2aQogICAgQWRkSWNvbiAvaWNvbnMv dXVlbmNvZGVkLmdpZiAudXUKICAgIEFkZEljb24gL2ljb25zL3NjcmlwdC5naWYgLmNvbmYgLnNo IC5zaGFyIC5jc2ggLmtzaCAudGNsCiAgICBBZGRJY29uIC9pY29ucy90ZXguZ2lmIC50ZXgKICAg IEFkZEljb24gL2ljb25zL2JvbWIuZ2lmIGNvcmUKCiAgICBBZGRJY29uIC9pY29ucy9iYWNrLmdp ZiAuLgogICAgQWRkSWNvbiAvaWNvbnMvaGFuZC5yaWdodC5naWYgUkVBRE1FCiAgICBBZGRJY29u IC9pY29ucy9mb2xkZXIuZ2lmIF5eRElSRUNUT1JZXl4KICAgIEFkZEljb24gL2ljb25zL2JsYW5r LmdpZiBeXkJMQU5LSUNPTl5eCgogICAgIwogICAgIyBEZWZhdWx0SWNvbiBpcyB3aGljaCBpY29u IHRvIHNob3cgZm9yIGZpbGVzIHdoaWNoIGRvIG5vdCBoYXZlIGFuIGljb24KICAgICMgZXhwbGlj aXRseSBzZXQuCiAgICAjCiAgICBEZWZhdWx0SWNvbiAvaWNvbnMvdW5rbm93bi5naWYKCiAgICAj CiAgICAjIEFkZERlc2NyaXB0aW9uIGFsbG93cyB5b3UgdG8gcGxhY2UgYSBzaG9ydCBkZXNjcmlw dGlvbiBhZnRlciBhIGZpbGUgaW4KICAgICMgc2VydmVyLWdlbmVyYXRlZCBpbmRleGVzLiAgVGhl c2UgYXJlIG9ubHkgZGlzcGxheWVkIGZvciBGYW5jeUluZGV4ZWQKICAgICMgZGlyZWN0b3JpZXMu CiAgICAjIEZvcm1hdDogQWRkRGVzY3JpcHRpb24gImRlc2NyaXB0aW9uIiBmaWxlbmFtZQogICAg IwogICAgI0FkZERlc2NyaXB0aW9uICJHWklQIGNvbXByZXNzZWQgZG9jdW1lbnQiIC5negogICAg I0FkZERlc2NyaXB0aW9uICJ0YXIgYXJjaGl2ZSIgLnRhcgogICAgI0FkZERlc2NyaXB0aW9uICJH WklQIGNvbXByZXNzZWQgdGFyIGFyY2hpdmUiIC50Z3oKCiAgICAjCiAgICAjIFJlYWRtZU5hbWUg aXMgdGhlIG5hbWUgb2YgdGhlIFJFQURNRSBmaWxlIHRoZSBzZXJ2ZXIgd2lsbCBsb29rIGZvciBi eQogICAgIyBkZWZhdWx0LCBhbmQgYXBwZW5kIHRvIGRpcmVjdG9yeSBsaXN0aW5ncy4KICAgICMK ICAgICMgSGVhZGVyTmFtZSBpcyB0aGUgbmFtZSBvZiBhIGZpbGUgd2hpY2ggc2hvdWxkIGJlIHBy ZXBlbmRlZCB0bwogICAgIyBkaXJlY3RvcnkgaW5kZXhlcy4gCiAgICAjCiAgICAjIElmIE11bHRp Vmlld3MgYXJlIGFtb25nc3QgdGhlIE9wdGlvbnMgaW4gZWZmZWN0LCB0aGUgc2VydmVyIHdpbGwK ICAgICMgZmlyc3QgbG9vayBmb3IgbmFtZS5odG1sIGFuZCBpbmNsdWRlIGl0IGlmIGZvdW5kLiAg SWYgbmFtZS5odG1sCiAgICAjIGRvZXNuJ3QgZXhpc3QsIHRoZSBzZXJ2ZXIgd2lsbCB0aGVuIGxv b2sgZm9yIG5hbWUudHh0IGFuZCBpbmNsdWRlCiAgICAjIGl0IGFzIHBsYWludGV4dCBpZiBmb3Vu ZC4KICAgICMKICAgIFJlYWRtZU5hbWUgUkVBRE1FCiAgICBIZWFkZXJOYW1lIEhFQURFUgoKICAg ICMKICAgICMgSW5kZXhJZ25vcmUgaXMgYSBzZXQgb2YgZmlsZW5hbWVzIHdoaWNoIGRpcmVjdG9y eSBpbmRleGluZyBzaG91bGQgaWdub3JlCiAgICAjIGFuZCBub3QgaW5jbHVkZSBpbiB0aGUgbGlz dGluZy4gIFNoZWxsLXN0eWxlIHdpbGRjYXJkaW5nIGlzIHBlcm1pdHRlZC4KICAgICMKICAgIElu ZGV4SWdub3JlIC4/PyogKn4gKiMgSEVBREVSKiBSRUFETUUqIFJDUyBDVlMgKix2ICosdAoKPC9J Zk1vZHVsZT4KIyBFbmQgb2YgaW5kZXhpbmcgZGlyZWN0aXZlcy4KCiMKIyBEb2N1bWVudCB0eXBl cy4KIwo8SWZNb2R1bGUgbW9kX21pbWUuYz4KCiAgICAjCiAgICAjIEFkZEVuY29kaW5nIGFsbG93 cyB5b3UgdG8gaGF2ZSBjZXJ0YWluIGJyb3dzZXJzIChNb3NhaWMvWCAyLjErKSB1bmNvbXByZXNz CiAgICAjIGluZm9ybWF0aW9uIG9uIHRoZSBmbHkuIE5vdGU6IE5vdCBhbGwgYnJvd3NlcnMgc3Vw cG9ydCB0aGlzLgogICAgIyBEZXNwaXRlIHRoZSBuYW1lIHNpbWlsYXJpdHksIHRoZSBmb2xsb3dp bmcgQWRkKiBkaXJlY3RpdmVzIGhhdmUgbm90aGluZwogICAgIyB0byBkbyB3aXRoIHRoZSBGYW5j eUluZGV4aW5nIGN1c3RvbWl6YXRpb24gZGlyZWN0aXZlcyBhYm92ZS4KICAgICMKICAgIEFkZEVu Y29kaW5nIHgtY29tcHJlc3MgWgogICAgQWRkRW5jb2RpbmcgeC1nemlwIGd6IHRnegoKICAgICMK ICAgICMgQWRkTGFuZ3VhZ2UgYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHRoZSBsYW5ndWFnZSBvZiBh IGRvY3VtZW50LiBZb3UgY2FuCiAgICAjIHRoZW4gdXNlIGNvbnRlbnQgbmVnb3RpYXRpb24gdG8g Z2l2ZSBhIGJyb3dzZXIgYSBmaWxlIGluIGEgbGFuZ3VhZ2UKICAgICMgaXQgY2FuIHVuZGVyc3Rh bmQuICAKICAgICMKICAgICMgTm90ZSAxOiBUaGUgc3VmZml4IGRvZXMgbm90IGhhdmUgdG8gYmUg dGhlIHNhbWUgYXMgdGhlIGxhbmd1YWdlIAogICAgIyBrZXl3b3JkIC0tLSB0aG9zZSB3aXRoIGRv Y3VtZW50cyBpbiBQb2xpc2ggKHdob3NlIG5ldC1zdGFuZGFyZCAKICAgICMgbGFuZ3VhZ2UgY29k ZSBpcyBwbCkgbWF5IHdpc2ggdG8gdXNlICJBZGRMYW5ndWFnZSBwbCAucG8iIHRvIAogICAgIyBh dm9pZCB0aGUgYW1iaWd1aXR5IHdpdGggdGhlIGNvbW1vbiBzdWZmaXggZm9yIHBlcmwgc2NyaXB0 cy4KICAgICMKICAgICMgTm90ZSAyOiBUaGUgZXhhbXBsZSBlbnRyaWVzIGJlbG93IGlsbHVzdHJh dGUgdGhhdCBpbiBxdWl0ZQogICAgIyBzb21lIGNhc2VzIHRoZSB0d28gY2hhcmFjdGVyICdMYW5n dWFnZScgYWJicmV2aWF0aW9uIGlzIG5vdAogICAgIyBpZGVudGljYWwgdG8gdGhlIHR3byBjaGFy YWN0ZXIgJ0NvdW50cnknIGNvZGUgZm9yIGl0cyBjb3VudHJ5LAogICAgIyBFLmcuICdEYW5tYXJr L2RrJyB2ZXJzdXMgJ0RhbmlzaC9kYScuCiAgICAjCiAgICAjIE5vdGUgMzogSW4gdGhlIGNhc2Ug b2YgJ2x0eicgd2UgdmlvbGF0ZSB0aGUgUkZDIGJ5IHVzaW5nIGEgdGhyZWUgY2hhciAKICAgICMg c3BlY2lmaWVyLiBCdXQgdGhlcmUgaXMgJ3dvcmsgaW4gcHJvZ3Jlc3MnIHRvIGZpeCB0aGlzIGFu ZCBnZXQgCiAgICAjIHRoZSByZWZlcmVuY2UgZGF0YSBmb3IgcmZjMTc2NiBjbGVhbmVkIHVwLgog ICAgIwogICAgIyBEYW5pc2ggKGRhKSAtIER1dGNoIChubCkgLSBFbmdsaXNoIChlbikgLSBFc3Rv bmlhbiAoZWUpCiAgICAjIEZyZW5jaCAoZnIpIC0gR2VybWFuIChkZSkgLSBHcmVlay1Nb2Rlcm4g KGVsKQogICAgIyBJdGFsaWFuIChpdCkgLSBLb3JlYW4gKGtyKSAtIE5vcndlZ2lhbiAobm8pIC0g Tm9yd2VnaWFuIE55bm9yc2sgKG5uKQogICAgIyBQb3J0dWdlc2UgKHB0KSAtIEx1eGVtYm91cmdl b2lzKiAobHR6KQogICAgIyBTcGFuaXNoIChlcykgLSBTd2VkaXNoIChzdikgLSBDYXRhbGFuIChj YSkgLSBDemVjaChjeikKICAgICMgUG9saXNoIChwbCkgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSAo cHQtYnIpIC0gSmFwYW5lc2UgKGphKQogICAgIyBSdXNzaWFuIChydSkKICAgICMKICAgIEFkZExh bmd1YWdlIGRhIC5kawogICAgQWRkTGFuZ3VhZ2UgbmwgLm5sCiAgICBBZGRMYW5ndWFnZSBlbiAu ZW4KICAgIEFkZExhbmd1YWdlIGV0IC5lZQogICAgQWRkTGFuZ3VhZ2UgZnIgLmZyCiAgICBBZGRM YW5ndWFnZSBkZSAuZGUKICAgIEFkZExhbmd1YWdlIGVsIC5lbAogICAgQWRkTGFuZ3VhZ2UgaGUg LmhlCiAgICBBZGRDaGFyc2V0IElTTy04ODU5LTggLmlzbzg4NTktOAogICAgQWRkTGFuZ3VhZ2Ug aXQgLml0CiAgICBBZGRMYW5ndWFnZSBqYSAuamEKICAgIEFkZENoYXJzZXQgSVNPLTIwMjItSlAg LmppcwogICAgQWRkTGFuZ3VhZ2Uga3IgLmtyCiAgICBBZGRDaGFyc2V0IElTTy0yMDIyLUtSIC5p c28ta3IKICAgIEFkZExhbmd1YWdlIG5uIC5ubgogICAgQWRkTGFuZ3VhZ2Ugbm8gLm5vCiAgICBB ZGRMYW5ndWFnZSBwbCAucG8KICAgIEFkZENoYXJzZXQgSVNPLTg4NTktMiAuaXNvLXBsCiAgICBB ZGRMYW5ndWFnZSBwdCAucHQKICAgIEFkZExhbmd1YWdlIHB0LWJyIC5wdC1icgogICAgQWRkTGFu Z3VhZ2UgbHR6IC5sdQogICAgQWRkTGFuZ3VhZ2UgY2EgLmNhCiAgICBBZGRMYW5ndWFnZSBlcyAu ZXMKICAgIEFkZExhbmd1YWdlIHN2IC5zdgogICAgQWRkTGFuZ3VhZ2UgY3ogLmN6CiAgICBBZGRM YW5ndWFnZSBydSAucnUKICAgIEFkZExhbmd1YWdlIHpoLXR3IC50dwogICAgQWRkTGFuZ3VhZ2Ug dHcgLnR3CiAgICBBZGRDaGFyc2V0IEJpZzUgICAgICAgICAuQmlnNSAgICAuYmlnNQogICAgQWRk Q2hhcnNldCBXSU5ET1dTLTEyNTEgLmNwLTEyNTEKICAgIEFkZENoYXJzZXQgQ1A4NjYgICAgICAg IC5jcDg2NgogICAgQWRkQ2hhcnNldCBJU08tODg1OS01ICAgLmlzby1ydQogICAgQWRkQ2hhcnNl dCBLT0k4LVIgICAgICAgLmtvaTgtcgogICAgQWRkQ2hhcnNldCBVQ1MtMiAgICAgICAgLnVjczIK ICAgIEFkZENoYXJzZXQgVUNTLTQgICAgICAgIC51Y3M0CiAgICBBZGRDaGFyc2V0IFVURi04ICAg ICAgICAudXRmOAoKICAgICMgTGFuZ3VhZ2VQcmlvcml0eSBhbGxvd3MgeW91IHRvIGdpdmUgcHJl Y2VkZW5jZSB0byBzb21lIGxhbmd1YWdlcwogICAgIyBpbiBjYXNlIG9mIGEgdGllIGR1cmluZyBj b250ZW50IG5lZ290aWF0aW9uLgogICAgIwogICAgIyBKdXN0IGxpc3QgdGhlIGxhbmd1YWdlcyBp biBkZWNyZWFzaW5nIG9yZGVyIG9mIHByZWZlcmVuY2UuIFdlIGhhdmUKICAgICMgbW9yZSBvciBs ZXNzIGFscGhhYmV0aXplZCB0aGVtIGhlcmUuIFlvdSBwcm9iYWJseSB3YW50IHRvIGNoYW5nZSB0 aGlzLgogICAgIwogICAgPElmTW9kdWxlIG1vZF9uZWdvdGlhdGlvbi5jPgogICAgICAgIExhbmd1 YWdlUHJpb3JpdHkgZW4gZGEgbmwgZXQgZnIgZGUgZWwgaXQgamEga3Igbm8gcGwgcHQgcHQtYnIg cnUgbHR6IGNhIGVzIHN2IHR3CiAgICA8L0lmTW9kdWxlPgoKICAgICMKICAgICMgQWRkVHlwZSBh bGxvd3MgeW91IHRvIHR3ZWFrIG1pbWUudHlwZXMgd2l0aG91dCBhY3R1YWxseSBlZGl0aW5nIGl0 LCBvciB0bwogICAgIyBtYWtlIGNlcnRhaW4gZmlsZXMgdG8gYmUgY2VydGFpbiB0eXBlcy4KICAg ICMKICAgIEFkZFR5cGUgYXBwbGljYXRpb24veC10YXIgLnRnegoKICAgICMKICAgICMgQWRkSGFu ZGxlciBhbGxvd3MgeW91IHRvIG1hcCBjZXJ0YWluIGZpbGUgZXh0ZW5zaW9ucyB0byAiaGFuZGxl cnMiLAogICAgIyBhY3Rpb25zIHVucmVsYXRlZCB0byBmaWxldHlwZS4gVGhlc2UgY2FuIGJlIGVp dGhlciBidWlsdCBpbnRvIHRoZSBzZXJ2ZXIKICAgICMgb3IgYWRkZWQgd2l0aCB0aGUgQWN0aW9u IGNvbW1hbmQgKHNlZSBiZWxvdykKICAgICMKICAgICMgSWYgeW91IHdhbnQgdG8gdXNlIHNlcnZl ciBzaWRlIGluY2x1ZGVzLCBvciBDR0kgb3V0c2lkZQogICAgIyBTY3JpcHRBbGlhc2VkIGRpcmVj dG9yaWVzLCB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lcy4KICAgICMKICAgICMgVG8gdXNl IENHSSBzY3JpcHRzOgogICAgIwogICAgI0FkZEhhbmRsZXIgY2dpLXNjcmlwdCAuY2dpCgogICAg IwogICAgIyBUbyB1c2Ugc2VydmVyLXBhcnNlZCBIVE1MIGZpbGVzCiAgICAjCiAgICAjQWRkVHlw ZSB0ZXh0L2h0bWwgLnNodG1sCiAgICAjQWRkSGFuZGxlciBzZXJ2ZXItcGFyc2VkIC5zaHRtbAoK ICAgICMKICAgICMgVW5jb21tZW50IHRoZSBmb2xsb3dpbmcgbGluZSB0byBlbmFibGUgQXBhY2hl J3Mgc2VuZC1hc2lzIEhUVFAgZmlsZQogICAgIyBmZWF0dXJlCiAgICAjCiAgICAjQWRkSGFuZGxl ciBzZW5kLWFzLWlzIGFzaXMKCiAgICAjCiAgICAjIElmIHlvdSB3aXNoIHRvIHVzZSBzZXJ2ZXIt cGFyc2VkIGltYWdlbWFwIGZpbGVzLCB1c2UKICAgICMKICAgICNBZGRIYW5kbGVyIGltYXAtZmls ZSBtYXAKCiAgICAjCiAgICAjIFRvIGVuYWJsZSB0eXBlIG1hcHMsIHlvdSBtaWdodCB3YW50IHRv IHVzZQogICAgIwogICAgI0FkZEhhbmRsZXIgdHlwZS1tYXAgdmFyCgo8L0lmTW9kdWxlPgojIEVu ZCBvZiBkb2N1bWVudCB0eXBlcy4KCiMKIyBBY3Rpb24gbGV0cyB5b3UgZGVmaW5lIG1lZGlhIHR5 cGVzIHRoYXQgd2lsbCBleGVjdXRlIGEgc2NyaXB0IHdoZW5ldmVyCiMgYSBtYXRjaGluZyBmaWxl IGlzIGNhbGxlZC4gVGhpcyBlbGltaW5hdGVzIHRoZSBuZWVkIGZvciByZXBlYXRlZCBVUkwKIyBw YXRobmFtZXMgZm9yIG9mdC11c2VkIENHSSBmaWxlIHByb2Nlc3NvcnMuCiMgRm9ybWF0OiBBY3Rp b24gbWVkaWEvdHlwZSAvY2dpLXNjcmlwdC9sb2NhdGlvbgojIEZvcm1hdDogQWN0aW9uIGhhbmRs ZXItbmFtZSAvY2dpLXNjcmlwdC9sb2NhdGlvbgojCgojCiMgTWV0YURpcjogc3BlY2lmaWVzIHRo ZSBuYW1lIG9mIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggQXBhY2hlIGNhbiBmaW5kCiMgbWV0YSBp bmZvcm1hdGlvbiBmaWxlcy4gVGhlc2UgZmlsZXMgY29udGFpbiBhZGRpdGlvbmFsIEhUVFAgaGVh ZGVycwojIHRvIGluY2x1ZGUgd2hlbiBzZW5kaW5nIHRoZSBkb2N1bWVudAojCiNNZXRhRGlyIC53 ZWIKCiMKIyBNZXRhU3VmZml4OiBzcGVjaWZpZXMgdGhlIGZpbGUgbmFtZSBzdWZmaXggZm9yIHRo ZSBmaWxlIGNvbnRhaW5pbmcgdGhlCiMgbWV0YSBpbmZvcm1hdGlvbi4KIwojTWV0YVN1ZmZpeCAu bWV0YQoKIwojIEN1c3RvbWl6YWJsZSBlcnJvciByZXNwb25zZSAoQXBhY2hlIHN0eWxlKQojICB0 aGVzZSBjb21lIGluIHRocmVlIGZsYXZvcnMKIwojICAgIDEpIHBsYWluIHRleHQKI0Vycm9yRG9j dW1lbnQgNTAwICJUaGUgc2VydmVyIG1hZGUgYSBib28gYm9vLgojICBuLmIuICB0aGUgc2luZ2xl IGxlYWRpbmcgKCIpIG1hcmtzIGl0IGFzIHRleHQsIGl0IGRvZXMgbm90IGdldCBvdXRwdXQKIwoj ICAgIDIpIGxvY2FsIHJlZGlyZWN0cwojRXJyb3JEb2N1bWVudCA0MDQgL21pc3NpbmcuaHRtbAoj ICB0byByZWRpcmVjdCB0byBsb2NhbCBVUkwgL21pc3NpbmcuaHRtbAojRXJyb3JEb2N1bWVudCA0 MDQgL2NnaS1iaW4vbWlzc2luZ19oYW5kbGVyLnBsCiMgIE4uQi46IFlvdSBjYW4gcmVkaXJlY3Qg dG8gYSBzY3JpcHQgb3IgYSBkb2N1bWVudCB1c2luZyBzZXJ2ZXItc2lkZS1pbmNsdWRlcy4KIwoj ICAgIDMpIGV4dGVybmFsIHJlZGlyZWN0cwojRXJyb3JEb2N1bWVudCA0MDIgaHR0cDovL3NvbWUu b3RoZXItc2VydmVyLmNvbS9zdWJzY3JpcHRpb25faW5mby5odG1sCiMgIE4uQi46IE1hbnkgb2Yg dGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyBhc3NvY2lhdGVkIHdpdGggdGhlIG9yaWdpbmFsCiMg IHJlcXVlc3Qgd2lsbCAqbm90KiBiZSBhdmFpbGFibGUgdG8gc3VjaCBhIHNjcmlwdC4KCiMKIyBD dXN0b21pemUgYmVoYXZpb3VyIGJhc2VkIG9uIHRoZSBicm93c2VyCiMKPElmTW9kdWxlIG1vZF9z ZXRlbnZpZi5jPgoKICAgICMKICAgICMgVGhlIGZvbGxvd2luZyBkaXJlY3RpdmVzIG1vZGlmeSBu b3JtYWwgSFRUUCByZXNwb25zZSBiZWhhdmlvci4KICAgICMgVGhlIGZpcnN0IGRpcmVjdGl2ZSBk aXNhYmxlcyBrZWVwYWxpdmUgZm9yIE5ldHNjYXBlIDIueCBhbmQgYnJvd3NlcnMgdGhhdAogICAg IyBzcG9vZiBpdC4gVGhlcmUgYXJlIGtub3duIHByb2JsZW1zIHdpdGggdGhlc2UgYnJvd3NlciBp bXBsZW1lbnRhdGlvbnMuCiAgICAjIFRoZSBzZWNvbmQgZGlyZWN0aXZlIGlzIGZvciBNaWNyb3Nv ZnQgSW50ZXJuZXQgRXhwbG9yZXIgNC4wYjIKICAgICMgd2hpY2ggaGFzIGEgYnJva2VuIEhUVFAv MS4xIGltcGxlbWVudGF0aW9uIGFuZCBkb2VzIG5vdCBwcm9wZXJseQogICAgIyBzdXBwb3J0IGtl ZXBhbGl2ZSB3aGVuIGl0IGlzIHVzZWQgb24gMzAxIG9yIDMwMiAocmVkaXJlY3QpIHJlc3BvbnNl cy4KICAgICMKICAgIEJyb3dzZXJNYXRjaCAiTW96aWxsYS8yIiBub2tlZXBhbGl2ZQogICAgQnJv d3Nlck1hdGNoICJNU0lFIDRcLjBiMjsiIG5va2VlcGFsaXZlIGRvd25ncmFkZS0xLjAgZm9yY2Ut cmVzcG9uc2UtMS4wCgogICAgIwogICAgIyBUaGUgZm9sbG93aW5nIGRpcmVjdGl2ZSBkaXNhYmxl cyBIVFRQLzEuMSByZXNwb25zZXMgdG8gYnJvd3NlcnMgd2hpY2gKICAgICMgYXJlIGluIHZpb2xh dGlvbiBvZiB0aGUgSFRUUC8xLjAgc3BlYyBieSBub3QgYmVpbmcgYWJsZSB0byBncm9rIGEKICAg ICMgYmFzaWMgMS4xIHJlc3BvbnNlLgogICAgIwogICAgQnJvd3Nlck1hdGNoICJSZWFsUGxheWVy IDRcLjAiIGZvcmNlLXJlc3BvbnNlLTEuMAogICAgQnJvd3Nlck1hdGNoICJKYXZhLzFcLjAiIGZv cmNlLXJlc3BvbnNlLTEuMAogICAgQnJvd3Nlck1hdGNoICJKREsvMVwuMCIgZm9yY2UtcmVzcG9u c2UtMS4wCgo8L0lmTW9kdWxlPgojIEVuZCBvZiBicm93c2VyIGN1c3RvbWl6YXRpb24gZGlyZWN0 aXZlcwoKIwojIEFsbG93IHNlcnZlciBzdGF0dXMgcmVwb3J0cywgd2l0aCB0aGUgVVJMIG9mIGh0 dHA6Ly9zZXJ2ZXJuYW1lL3NlcnZlci1zdGF0dXMKIyBDaGFuZ2UgdGhlICIueW91ci1kb21haW4u Y29tIiB0byBtYXRjaCB5b3VyIGRvbWFpbiB0byBlbmFibGUuCiMKIzxMb2NhdGlvbiAvc2VydmVy LXN0YXR1cz4KIyAgICBTZXRIYW5kbGVyIHNlcnZlci1zdGF0dXMKIyAgICBPcmRlciBkZW55LGFs bG93CiMgICAgRGVueSBmcm9tIGFsbAojICAgIEFsbG93IGZyb20gLnlvdXItZG9tYWluLmNvbQoj PC9Mb2NhdGlvbj4KCiMKIyBBbGxvdyByZW1vdGUgc2VydmVyIGNvbmZpZ3VyYXRpb24gcmVwb3J0 cywgd2l0aCB0aGUgVVJMIG9mCiMgaHR0cDovL3NlcnZlcm5hbWUvc2VydmVyLWluZm8gKHJlcXVp cmVzIHRoYXQgbW9kX2luZm8uYyBiZSBsb2FkZWQpLgojIENoYW5nZSB0aGUgIi55b3VyLWRvbWFp bi5jb20iIHRvIG1hdGNoIHlvdXIgZG9tYWluIHRvIGVuYWJsZS4KIwo8TG9jYXRpb24gL3NlcnZl ci1pbmZvPgogICAgU2V0SGFuZGxlciBzZXJ2ZXItaW5mbwojICAgIE9yZGVyIGRlbnksYWxsb3cK IyAgICBEZW55IGZyb20gYWxsCiMgICAgQWxsb3cgZnJvbSAueW91ci1kb21haW4uY29tCjwvTG9j YXRpb24+CgojCiMgVGhlcmUgaGF2ZSBiZWVuIHJlcG9ydHMgb2YgcGVvcGxlIHRyeWluZyB0byBh YnVzZSBhbiBvbGQgYnVnIGZyb20gcHJlLTEuMQojIGRheXMuICBUaGlzIGJ1ZyBpbnZvbHZlZCBh IENHSSBzY3JpcHQgZGlzdHJpYnV0ZWQgYXMgYSBwYXJ0IG9mIEFwYWNoZS4KIyBCeSB1bmNvbW1l bnRpbmcgdGhlc2UgbGluZXMgeW91IGNhbiByZWRpcmVjdCB0aGVzZSBhdHRhY2tzIHRvIGEgbG9n Z2luZyAKIyBzY3JpcHQgb24gcGhmLmFwYWNoZS5vcmcuICBPciwgeW91IGNhbiByZWNvcmQgdGhl bSB5b3Vyc2VsZiwgdXNpbmcgdGhlIHNjcmlwdAojIHN1cHBvcnQvcGhmX2FidXNlX2xvZy5jZ2ku CiMKIzxMb2NhdGlvbiAvY2dpLWJpbi9waGYqPgojICAgIERlbnkgZnJvbSBhbGwKIyAgICBFcnJv ckRvY3VtZW50IDQwMyBodHRwOi8vcGhmLmFwYWNoZS5vcmcvcGhmX2FidXNlX2xvZy5jZ2kKIzwv TG9jYXRpb24+CgojCiMgUHJveHkgU2VydmVyIGRpcmVjdGl2ZXMuIFVuY29tbWVudCB0aGUgZm9s bG93aW5nIGxpbmVzIHRvCiMgZW5hYmxlIHRoZSBwcm94eSBzZXJ2ZXI6CiMKIzxJZk1vZHVsZSBt b2RfcHJveHkuYz4KIyAgICBQcm94eVJlcXVlc3RzIE9uCgojICAgIDxEaXJlY3RvcnkgcHJveHk6 Kj4KIyAgICAgICAgT3JkZXIgZGVueSxhbGxvdwojICAgICAgICBEZW55IGZyb20gYWxsCiMgICAg ICAgIEFsbG93IGZyb20gLnlvdXItZG9tYWluLmNvbQojICAgIDwvRGlyZWN0b3J5PgoKICAgICMK ICAgICMgRW5hYmxlL2Rpc2FibGUgdGhlIGhhbmRsaW5nIG9mIEhUVFAvMS4xICJWaWE6IiBoZWFk ZXJzLgogICAgIyAoIkZ1bGwiIGFkZHMgdGhlIHNlcnZlciB2ZXJzaW9uOyAiQmxvY2siIHJlbW92 ZXMgYWxsIG91dGdvaW5nIFZpYTogaGVhZGVycykKICAgICMgU2V0IHRvIG9uZSBvZjogT2ZmIHwg T24gfCBGdWxsIHwgQmxvY2sKICAgICMKIyAgICBQcm94eVZpYSBPbgoKICAgICMKICAgICMgVG8g ZW5hYmxlIHRoZSBjYWNoZSBhcyB3ZWxsLCBlZGl0IGFuZCB1bmNvbW1lbnQgdGhlIGZvbGxvd2lu ZyBsaW5lczoKICAgICMgKG5vIGNhY2hlaW5nIHdpdGhvdXQgQ2FjaGVSb290KQogICAgIwojICAg IENhY2hlUm9vdCAiL3Vzci9sb2NhbC9hcGFjaGUvcHJveHkiCiMgICAgQ2FjaGVTaXplIDUKIyAg ICBDYWNoZUdjSW50ZXJ2YWwgNAojICAgIENhY2hlTWF4RXhwaXJlIDI0CiMgICAgQ2FjaGVMYXN0 TW9kaWZpZWRGYWN0b3IgMC4xCiMgICAgQ2FjaGVEZWZhdWx0RXhwaXJlIDEKIyAgICBOb0NhY2hl IGEtZG9tYWluLmNvbSBhbm90aGVyLWRvbWFpbi5lZHUgam9lcy5nYXJhZ2Utc2FsZS5jb20KCiM8 L0lmTW9kdWxlPgojIEVuZCBvZiBwcm94eSBkaXJlY3RpdmVzLgoKIyMjIFNlY3Rpb24gMzogVmly dHVhbCBIb3N0cwojCiMgVmlydHVhbEhvc3Q6IElmIHlvdSB3YW50IHRvIG1haW50YWluIG11bHRp cGxlIGRvbWFpbnMvaG9zdG5hbWVzIG9uIHlvdXIKIyBtYWNoaW5lIHlvdSBjYW4gc2V0dXAgVmly dHVhbEhvc3QgY29udGFpbmVycyBmb3IgdGhlbS4gTW9zdCBjb25maWd1cmF0aW9ucwojIHVzZSBv bmx5IG5hbWUtYmFzZWQgdmlydHVhbCBob3N0cyBzbyB0aGUgc2VydmVyIGRvZXNuJ3QgbmVlZCB0 byB3b3JyeSBhYm91dAojIElQIGFkZHJlc3Nlcy4gVGhpcyBpcyBpbmRpY2F0ZWQgYnkgdGhlIGFz dGVyaXNrcyBpbiB0aGUgZGlyZWN0aXZlcyBiZWxvdy4KIwojIFBsZWFzZSBzZWUgdGhlIGRvY3Vt ZW50YXRpb24gYXQgPFVSTDpodHRwOi8vd3d3LmFwYWNoZS5vcmcvZG9jcy92aG9zdHMvPgojIGZv ciBmdXJ0aGVyIGRldGFpbHMgYmVmb3JlIHlvdSB0cnkgdG8gc2V0dXAgdmlydHVhbCBob3N0cy4K IwojIFlvdSBtYXkgdXNlIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uICctUycgdG8gdmVyaWZ5IHlv dXIgdmlydHVhbCBob3N0CiMgY29uZmlndXJhdGlvbi4KCiMKIyBVc2UgbmFtZS1iYXNlZCB2aXJ0 dWFsIGhvc3RpbmcuCiMKI05hbWVWaXJ0dWFsSG9zdCAqCgojCiMgVmlydHVhbEhvc3QgZXhhbXBs ZToKIyBBbG1vc3QgYW55IEFwYWNoZSBkaXJlY3RpdmUgbWF5IGdvIGludG8gYSBWaXJ0dWFsSG9z dCBjb250YWluZXIuCiMgVGhlIGZpcnN0IFZpcnR1YWxIb3N0IHNlY3Rpb24gaXMgdXNlZCBmb3Ig cmVxdWVzdHMgd2l0aG91dCBhIGtub3duCiMgc2VydmVyIG5hbWUuCiMKIzxWaXJ0dWFsSG9zdCAq PgojICAgIFNlcnZlckFkbWluIHdlYm1hc3RlckBkdW1teS1ob3N0LmV4YW1wbGUuY29tCiMgICAg RG9jdW1lbnRSb290IC93d3cvZG9jcy9kdW1teS1ob3N0LmV4YW1wbGUuY29tCiMgICAgU2VydmVy TmFtZSBkdW1teS1ob3N0LmV4YW1wbGUuY29tCiMgICAgRXJyb3JMb2cgbG9ncy9kdW1teS1ob3N0 LmV4YW1wbGUuY29tLWVycm9yX2xvZwojICAgIEN1c3RvbUxvZyBsb2dzL2R1bW15LWhvc3QuZXhh bXBsZS5jb20tYWNjZXNzX2xvZyBjb21tb24KIzwvVmlydHVhbEhvc3Q+Cg== ------_=_NextPart_001_01C4EDED.6CEFD7CA Content-Type: text/plain; charset=us-ascii --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See for more info. To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org " from the digest: users-digest-unsubscribe@httpd.apache.org For additional commands, e-mail: users-help@httpd.apache.org ------_=_NextPart_001_01C4EDED.6CEFD7CA--