X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-originating-ip:from:date:message-id:subject:to :content-type:x-gm-message-state; bh=pHT8KL45PdTS5gXf19jb3u91aIV+H2Wc6Ej286p5lxc=; b=Zw+DdOeBEx9eyZ1xhIVNzrtoczgPuKFS1TRJuRmJnN8U+8lDke3F/RMCk3oy2fujrh HR8yJKRnKfPcZNr0c22UPuBndSmemf2jDBPZFMiNgQ7dLCS62fhieYYXemCIhNga51p4 uSvL/JsBfxG8gIFaHNIpeX+8LZspZj7gLjiHybnTeguYfD/62O+eX+n0+G11XvGbaV0A hFBQlsiDoz2U5eFRlEp0AnyOyM7vt8kSfvQ3sN+ucjrm8k8camHZYgjToPs8YC+KwToD DptOBw4OIbr9glmXgcNvdI1tXgG2KovRVI0zo7z64nRbVX/02Tw/6xQBHpnb+ZCaMo9G rNPQ== MIME-Version: 1.0 From: martin Date: Fri, 15 Jun 2012 02:13:22 +0200 Message-ID: Subject: DenyHosts (as service) won't start/hangs @ cygwin 1.7.15-1 / Win7 x64 To: cygwin AT cygwin DOT com Content-Type: multipart/mixed; boundary=047d7b339b7367998f04c277b047 X-Gm-Message-State: ALoCoQlCpQMLuWiODL9l43W/X3Vx8hKPwNNNiRnUFNh05hpiET560uODBl/BP9IHpNGZPGhTE3fU Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com --047d7b339b7367998f04c277b047 Content-Type: text/plain; charset=ISO-8859-1 Hello, I have set up DenyHosts for my sshd running on Windows 7 x64 (cygwin 1.7.15-1) based on the guides I've found in the cygwin newsgroup archives, but I have reached a dead end. The steps I have followed: - install and config syslog-ng (working ok), python (working ok) - install denyhosts (ok) - configure denyhosts startup script and config file (both files attached) - install denyhosts as a service (cygrunsrv -I DenyHosts -p /usr/share/denyhosts/daemon-control -a start -d DenyHosts -f "DenyHosts 2.6" -y sshd -x /var/run/denyhosts.pid -o) - after first unsuccessful start of DenyHosts service, checked the logs, realized /etc/hosts.deny is missing, so created the file (touch /etc/hosts.deny) - tried to start the service again -> service hangs in "starting", even though it seems to be working (it has successfully created one new entry in /etc/hosts.deny parsing latest ssh attack in the syslog) And this is dead-end for me - don't know how to make it work "correctly". Why dead end? There's nothing more for me in the logs to catch on. Denyhosts logs show normal startup: starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py --daemon --config=/usr/share/denyhosts/denyhosts.cfg and no error in "denyhosts" logfile (the one without extension) - the file is also logging normal operations (even new entries in /etc/hosts.deny). The only thing I have to catch on is the startup log of DenyHosts service in syslog: Jun 14 17:23:03 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#1) Jun 14 17:23:04 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#2) Jun 14 17:23:05 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#3) Jun 14 17:23:06 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#4) Jun 14 17:23:07 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#5) Jun 14 17:23:08 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#6) Jun 14 17:23:09 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#7) Jun 14 17:23:10 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#8) Jun 14 17:23:11 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#9) Jun 14 17:23:12 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#10) Jun 14 17:23:13 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#11) Jun 14 17:23:14 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#12) Jun 14 17:23:15 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#13) Jun 14 17:23:16 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#14) Jun 14 17:23:17 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#15) Jun 14 17:23:18 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#16) Jun 14 17:23:19 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#17) Jun 14 17:23:20 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#18) Jun 14 17:23:21 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#19) Jun 14 17:23:22 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#20) Jun 14 17:23:23 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#21) Jun 14 17:23:24 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#22) Jun 14 17:23:25 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#23) Jun 14 17:23:26 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#24) Jun 14 17:23:27 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#25) Jun 14 17:23:28 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#26) Jun 14 17:23:29 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#27) Jun 14 17:23:30 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#28) Jun 14 17:23:31 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#29) Jun 14 17:23:32 NUTRIA DenyHosts: PID 7232: service `DenyHosts': waiting for fork of 5516 (#30) Jun 14 17:23:33 NUTRIA DenyHosts: PID 7232: service `DenyHosts': 5516 did not fork, sending SIGTERM Jun 14 17:23:39 NUTRIA DenyHosts: PID 7232: service `DenyHosts': 5516 did not terminate, sending SIGKILL SIGTERM and SIGKILL are sent out automatically, but have no effect (service is still running, reporting, it's trying to start), even though they have been clearly sent. Any ideas what could be wrong? I'd like to have denyhosts service running without any issues. Thanks in advance. Best regards, Martin --047d7b339b7367998f04c277b047 Content-Type: application/octet-stream; name=daemon-control Content-Disposition: attachment; filename=daemon-control Content-Transfer-Encoding: base64 X-Attachment-Id: f_h3ghg2qr0 IyEvdXNyL2Jpbi9lbnYgcHl0aG9uCiMgZGVueWhvc3RzICAgICBCcmluZyB1 cC9kb3duIHRoZSBEZW55SG9zdHMgZGFlbW9uCiMKIyBjaGtjb25maWc6IDIz NDUgOTggMDIKIyBkZXNjcmlwdGlvbjogQWN0aXZhdGVzL0RlYWN0aXZhdGVz IHRoZQojICAgIERlbnlIb3N0cyBkYWVtb24gdG8gYmxvY2sgc3NoIGF0dGVt cHRzCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjCiMjIyMgRWRpdCB0aGVzZSB0byBzdWl0IHlvdXIgY29u ZmlndXJhdGlvbiAjIyMjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCgpERU5ZSE9TVFNfQklOICAgPSAiL3Vzci9i aW4vZGVueWhvc3RzLnB5IgpERU5ZSE9TVFNfTE9DSyAgPSAiL3Zhci9ydW4v ZGVueWhvc3RzLnBpZCIKREVOWUhPU1RTX0NGRyAgID0gIi91c3Ivc2hhcmUv ZGVueWhvc3RzL2Rlbnlob3N0cy5jZmciCgpQWVRIT05fQklOICAgICAgPSAi L3Vzci9iaW4vZW52IHB5dGhvbiIKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMjIyMgICAgICAgICBEbyBub3Qg ZWRpdCBiZWxvdyAgICAgICAgICAgICAjIyMjCiMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpERU5ZSE9TVFNfQklO ID0gIiVzICVzIiAlIChQWVRIT05fQklOLCBERU5ZSE9TVFNfQklOKQoKaW1w b3J0IG9zLCBzeXMsIHNpZ25hbCwgdGltZQoKIyBtYWtlIHN1cmUgJ3BzJyBj b21tYW5kIGlzIGFjY2Vzc2libGUgKHdoaWNoIHNob3VsZCBiZQojIGluIGVp dGhlciAvdXNyL2JpbiBvciAvYmluLiAgTW9kaWZ5IHRoZSBQQVRIIHNvCiMg cG9wZW4gY2FuIGZpbmQgaXQKZW52ID0gb3MuZW52aXJvbi5nZXQoJ1BBVEgn LCAiIikKb3MuZW52aXJvblsnUEFUSCddID0gIi91c3IvYmluOi9iaW46JXMi ICUgZW52CgpTVEFURV9OT1RfUlVOTklORyA9IC0xClNUQVRFX0xPQ0tfRVhJ U1RTID0gLTIKCmRlZiB1c2FnZSgpOgogICAgcHJpbnQgIlVzYWdlOiAlcyB7 c3RhcnQgW2FyZ3MuLi5dIHwgc3RvcCB8IHJlc3RhcnQgW2FyZ3MuLi5dIHwg c3RhdHVzIHwgZGVidWcgfCBjb25kcmVzdGFydCBbYXJncy4uLl0gfSIgJSBz eXMuYXJndlswXQogICAgcHJpbnQKICAgIHByaW50ICJGb3IgYSBsaXN0IG9m IHZhbGlkICdhcmdzJyByZWZlciB0bzoiCiAgICBwcmludCAiJCBkZW55aG9z dHMucHkgLS1oZWxwIgogICAgcHJpbnQKICAgIHN5cy5leGl0KDApIAoKCmRl ZiBnZXRwaWQoKToKICAgIHRyeToKICAgICAgICBmcCA9IG9wZW4oREVOWUhP U1RTX0xPQ0ssICJyIikKICAgICAgICBwaWQgPSBpbnQoZnAucmVhZGxpbmUo KS5yc3RyaXAoKSkKICAgICAgICBmcC5jbG9zZSgpCiAgICBleGNlcHQgRXhj ZXB0aW9uLCBlOgogICAgICAgIHJldHVybiBTVEFURV9OT1RfUlVOTklORwoK ICAgIAogICAgaWYgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdmcmVl YnNkJykgYW5kIG9zLmFjY2VzcygiL3Byb2MiLCBvcy5GX09LKToKICAgICAg ICAjIHByb2MgZmlsZXN5c3RlbSBleGlzdHMsIGxvb2sgZm9yIHBpZAogICAg ICAgIGlmIG9zLmFjY2Vzcyhvcy5wYXRoLmpvaW4oIi9wcm9jIiwgc3RyKHBp ZCkpLCBvcy5GX09LKToKICAgICAgICAgICAgcmV0dXJuIHBpZAogICAgICAg IGVsc2U6CiAgICAgICAgICAgIHJldHVybiBTVEFURV9MT0NLX0VYSVNUUwog ICAgZWxzZToKICAgICAgICAjIHByb2MgZmlsZXN5c3RlbSBkb2Vzbid0IGV4 aXN0IChvciBpdCBkb2Vzbid0IGNvbnRhaW4gUElEcyksIHVzZSAncHMnCiAg ICAgICAgcCA9IG9zLnBvcGVuKCJwcyAtcCAlZCIgJSBwaWQsICJyIikKICAg ICAgICBwLnJlYWRsaW5lKCkgIyBnZXQgdGhlIGhlYWRlciBsaW5lCiAgICAg ICAgcGlkX3J1bm5pbmcgPSBwLnJlYWRsaW5lKCkgCiAgICAgICAgIyBwaWRf cnVubmluZyB3aWxsIGJlICcnIGlmIG5vIHByb2Nlc3MgaXMgZm91bmQKICAg ICAgICBpZiBwaWRfcnVubmluZzogCiAgICAgICAgICAgIHJldHVybiBwaWQK ICAgICAgICBlbHNlOiAKICAgICAgICAgICAgcmV0dXJuIFNUQVRFX0xPQ0tf RVhJU1RTCgoKZGVmIHN0YXJ0KCphcmdzKToKICAgIGNtZCA9ICIlcyAtLWRh ZW1vbiAiICUgREVOWUhPU1RTX0JJTgogICAgaWYgYXJnczogY21kICs9ICcg Jy5qb2luKGFyZ3MpCiAgICAgICAgCiAgICBwcmludCAic3RhcnRpbmcgRGVu eUhvc3RzOiAgICIsIGNtZAoKICAgIG9zLnN5c3RlbShjbWQpCgoKZGVmIHN0 b3AoKToKICAgIHBpZCA9IGdldHBpZCgpCiAgICBpZiBwaWQgPj0gMDoKICAg ICAgICBvcy5raWxsKHBpZCwgc2lnbmFsLlNJR1RFUk0pCiAgICAgICAgcHJp bnQgInNlbnQgRGVueUhvc3RzIFNJR1RFUk0iCiAgICBlbHNlOgogICAgICAg IHByaW50ICJEZW55SG9zdHMgaXMgbm90IHJ1bm5pbmciCgpkZWYgZGVidWco KToKICAgIHBpZCA9IGdldHBpZCgpCiAgICBpZiBwaWQgPj0gMDoKICAgICAg ICBvcy5raWxsKHBpZCwgc2lnbmFsLlNJR1VTUjEpCiAgICAgICAgcHJpbnQg InNlbnQgRGVueUhvc3RzIFNJR1VTUjEiCiAgICBlbHNlOgogICAgICAgIHBy aW50ICJEZW55SG9zdHMgaXMgbm90IHJ1bm5pbmciCiAgICAgICAgCmRlZiBz dGF0dXMoKToKICAgIHBpZCA9IGdldHBpZCgpCiAgICBpZiBwaWQgPT0gU1RB VEVfTE9DS19FWElTVFM6CiAgICAgICAgcHJpbnQgIiVzIGV4aXN0cyBidXQg RGVueUhvc3RzIGlzIG5vdCBydW5uaW5nIiAlIERFTllIT1NUU19MT0NLCiAg ICBlbGlmIHBpZCA9PSBTVEFURV9OT1RfUlVOTklORzoKICAgICAgICBwcmlu dCAiRGVueWhvc3RzIGlzIG5vdCBydW5uaW5nIgogICAgZWxzZToKICAgICAg ICBwcmludCAiRGVueUhvc3RzIGlzIHJ1bm5pbmcgd2l0aCBwaWQgPSAlZCIg JSBwaWQKCgpkZWYgY29uZHJlc3RhcnQoKmFyZ3MpOgogICAgcGlkID0gZ2V0 cGlkKCkKICAgIGlmIHBpZCA+PSAwOgogICAgICAgIHJlc3RhcnQoKmFyZ3Mp CiAgICAgICAgCgpkZWYgcmVzdGFydCgqYXJncyk6CiAgICBzdG9wKCkKICAg IHRpbWUuc2xlZXAoMSkKICAgIHN0YXJ0KCphcmdzKSAgCgoKaWYgX19uYW1l X18gPT0gJ19fbWFpbl9fJzoKICAgIGNhc2VzID0geydzdGFydCc6ICAgICAg IHN0YXJ0LAogICAgICAgICAgICAgJ3N0b3AnOiAgICAgICAgc3RvcCwKICAg ICAgICAgICAgICdkZWJ1Zyc6ICAgICAgIGRlYnVnLAogICAgICAgICAgICAg J3N0YXR1cyc6ICAgICAgc3RhdHVzLAogICAgICAgICAgICAgJ2NvbmRyZXN0 YXJ0JzogY29uZHJlc3RhcnQsCiAgICAgICAgICAgICAncmVzdGFydCc6ICAg ICByZXN0YXJ0fQogICAgCiAgICB0cnk6CiAgICAgICAgYXJncyA9IHN5cy5h cmd2WzI6XQogICAgZXhjZXB0OgogICAgICAgIGFyZ3MgPSBbXQoKICAgIHRy eToKICAgICAgICAjIGFyZyAxIHNob3VsZCBjb250YWluIG9uZSBvZiB0aGUg Y2FzZXMgYWJvdmUKICAgICAgICBvcHRpb24gPSBzeXMuYXJndlsxXQogICAg ZXhjZXB0OgogICAgICAgICMgdHJ5IHRvIGluZmVyIGNvbnRleHQgKGZyb20g YW4gL2V0Yy9pbml0LmQvIHNjcmlwdCwgcGVyaGFwcykKICAgICAgICBwcm9j bmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoc3lzLmFyZ3ZbMF0pCiAgICAgICAg aW5mZXJfZGljdCA9IHsnSyc6ICdzdG9wJywKICAgICAgICAgICAgICAgICAg ICAgICdTJzogJ3N0YXJ0J30KICAgICAgICBvcHRpb24gPSBpbmZlcl9kaWN0 LmdldChwcm9jbmFtZVswXSkKICAgICAgICBpZiBub3Qgb3B0aW9uOgogICAg ICAgICAgICB1c2FnZSgpCgogICAgdHJ5OgogICAgICAgIGlmIG9wdGlvbiBp biAoJ3N0YXJ0JywgJ3Jlc3RhcnQnLCAnY29uZHJlc3RhcnQnKToKICAgICAg ICAgICAgaWYgJy0tY29uZmlnJyBub3QgaW4gYXJncyBhbmQgJy1jJyBub3Qg aW4gYXJnczoKICAgICAgICAgICAgICAgIGFyZ3MuYXBwZW5kKCItLWNvbmZp Zz0lcyIgJSBERU5ZSE9TVFNfQ0ZHKQoKICAgICAgICBjbWQgPSBjYXNlc1tv cHRpb25dCiAgICAgICAgYXBwbHkoY21kLCBhcmdzKQogICAgZXhjZXB0Ogog ICAgICAgIHVzYWdlKCkKICAgIAoKCg== --047d7b339b7367998f04c277b047 Content-Type: application/octet-stream; name="denyhosts.cfg" Content-Disposition: attachment; filename="denyhosts.cfg" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h3ghg2qu1 ICAgICAgICMjIyMjIyMjIyMjIyBUSEVTRSBTRVRUSU5HUyBBUkUgUkVRVUlS RUQgIyMjIyMjIyMjIyMjCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK IwojIFNFQ1VSRV9MT0c6IHRoZSBsb2cgZmlsZSB0aGF0IGNvbnRhaW5zIHNz aGQgbG9nZ2luZyBpbmZvCiMgaWYgeW91IGFyZSBub3Qgc3VyZSwgZ3JlcCAi c3NoZDoiIC92YXIvbG9nLyoKIwojIFRoZSBmaWxlIHRvIHByb2Nlc3MgY2Fu IGJlIG92ZXJyaWRkZW4gd2l0aCB0aGUgLS1maWxlIGNvbW1hbmQgbGluZQoj IGFyZ3VtZW50CiMKIyBSZWRoYXQgb3IgRmVkb3JhIENvcmU6CiNTRUNVUkVf TE9HID0gL3Zhci9sb2cvc2VjdXJlCiMKIyBNYW5kcmFrZSwgRnJlZUJTRCBv ciBPcGVuQlNEOiAKI1NFQ1VSRV9MT0cgPSAvdmFyL2xvZy9hdXRoLmxvZwoj CiMgU3VTRToKU0VDVVJFX0xPRyA9IC92YXIvbG9nL21lc3NhZ2VzCiMKIyBN YWMgT1MgWCAodjEwLjQgb3IgZ3JlYXRlciAtIAojICAgYWxzbyByZWZlciB0 bzogICBodHRwOi8vd3d3LmRlbnlob3N0cy5uZXQvZmFxLmh0bWwjbWFjb3MK I1NFQ1VSRV9MT0cgPSAvcHJpdmF0ZS92YXIvbG9nL2FzbC5sb2cKIwojIE1h YyBPUyBYICh2MTAuMyBvciBlYXJsaWVyKToKI1NFQ1VSRV9MT0c9L3ByaXZh dGUvdmFyL2xvZy9zeXN0ZW0ubG9nCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIEhPU1RT X0RFTlk6IHRoZSBmaWxlIHdoaWNoIGNvbnRhaW5zIHJlc3RyaWN0ZWQgaG9z dCBhY2Nlc3MgaW5mb3JtYXRpb24KIwojIE1vc3Qgb3BlcmF0aW5nIHN5c3Rl bXM6CkhPU1RTX0RFTlkgPSAvZXRjL2hvc3RzLmRlbnkKIwojIFNvbWUgQlNE IChGcmVlQlNEKSBVbml4ZXM6CiNIT1NUU19ERU5ZID0gL2V0Yy9ob3N0cy5h bGxvdwojCiMgQW5vdGhlciBwb3NzaWJpbGl0eSAoYWxzbyBzZWUgdGhlIG5l eHQgb3B0aW9uKToKI0hPU1RTX0RFTlkgPSAvZXRjL2hvc3RzLmV2aWwKIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKIwojIFBVUkdFX0RFTlk6IHJlbW92ZWQgSE9TVFNfREVOWSBl bnRyaWVzIHRoYXQgYXJlIG9sZGVyIHRoYW4gdGhpcyB0aW1lCiMgICAgICAg ICAgICAgd2hlbiBEZW55SG9zdHMgaXMgaW52b2tlZCB3aXRoIHRoZSAtLXB1 cmdlIGZsYWcKIwojICAgICAgZm9ybWF0IGlzOiBpW2Rod215XQojICAgICAg V2hlcmUgJ2knIGlzIGFuIGludGVnZXIgKGVnLiA3KSAKIyAgICAgICAgICAg ICdtJyA9IG1pbnV0ZXMKIyAgICAgICAgICAgICdoJyA9IGhvdXJzCiMgICAg ICAgICAgICAnZCcgPSBkYXlzCiMgICAgICAgICAgICAndycgPSB3ZWVrcwoj ICAgICAgICAgICAgJ3knID0geWVhcnMKIwojIG5ldmVyIHB1cmdlOgpQVVJH RV9ERU5ZID0gCiMKIyBwdXJnZSBlbnRyaWVzIG9sZGVyIHRoYW4gMSB3ZWVr CiNQVVJHRV9ERU5ZID0gMXcKIwojIHB1cmdlIGVudHJpZXMgb2xkZXIgdGhh biA1IGRheXMKI1BVUkdFX0RFTlkgPSA1ZAojIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIFBVUkdF X1RIUkVTSE9MRDogZGVmaW5lcyB0aGUgbWF4aW11bSB0aW1lcyBhIGhvc3Qg d2lsbCBiZSBwdXJnZWQuICAKIyBPbmNlIHRoaXMgdmFsdWUgaGFzIGJlZW4g ZXhjZWVkZWQgdGhlbiB0aGlzIGhvc3Qgd2lsbCBub3QgYmUgcHVyZ2VkLiAK IyBTZXR0aW5nIHRoaXMgcGFyYW1ldGVyIHRvIDAgKHRoZSBkZWZhdWx0KSBk aXNhYmxlcyB0aGlzIGZlYXR1cmUuCiMKIyBkZWZhdWx0OiBhIGRlbmllZCBo b3N0IGNhbiBiZSBwdXJnZWQvcmUtYWRkZWQgaW5kZWZpbml0ZWx5CiNQVVJH RV9USFJFU0hPTEQgPSAwCiMKIyBhIGRlbmllZCBob3N0IHdpbGwgYmUgcHVy Z2VkIGF0IG1vc3QgMiB0aW1lcy4gCiNQVVJHRV9USFJFU0hPTEQgPSAyIAoj CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKIwojIEJMT0NLX1NFUlZJQ0U6IHRoZSBzZXJ2aWNlIG5h bWUgdGhhdCBzaG91bGQgYmUgYmxvY2tlZCBpbiBIT1NUU19ERU5ZCiMgCiMg bWFuIDUgaG9zdHNfYWNjZXNzIGZvciBkZXRhaWxzCiMKIyBlZy4gICBzc2hk OiAxMjcuMC4wLjEgICMgd2lsbCBibG9jayBzc2hkIGxvZ2lucyBmcm9tIDEy Ny4wLjAuMQojCiMgVG8gYmxvY2sgYWxsIHNlcnZpY2VzIGZvciB0aGUgb2Zm ZW5kaW5nIGhvc3Q6CiNCTE9DS19TRVJWSUNFID0gQUxMCiMgVG8gYmxvY2sg b25seSBzc2hkOgpCTE9DS19TRVJWSUNFICA9IHNzaGQKIyBUbyBvbmx5IHJl Y29yZCB0aGUgb2ZmZW5kaW5nIGhvc3QgYW5kIG5vdGhpbmcgZWxzZSAoaWYg dXNpbmcKIyBhbiBhdXhpbGFyeSBmaWxlIHRvIGxpc3QgdGhlIGhvc3RzKS4g IFJlZmVyIHRvOiAKIyBodHRwOi8vZGVueWhvc3RzLnNvdXJjZWZvcmdlLm5l dC9mYXEuaHRtbCNhdXgKI0JMT0NLX1NFUlZJQ0UgPSAgICAKIwojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjCiMKIyBERU5ZX1RIUkVTSE9MRF9JTlZBTElEOiBibG9jayBlYWNoIGhv c3QgYWZ0ZXIgdGhlIG51bWJlciBvZiBmYWlsZWQgbG9naW4gCiMgYXR0ZW1w dHMgaGFzIGV4Y2VlZGVkIHRoaXMgdmFsdWUuICBUaGlzIHZhbHVlIGFwcGxp ZXMgdG8gaW52YWxpZAojIHVzZXIgbG9naW4gYXR0ZW1wdHMgKGVnLiBub24t ZXhpc3RlbnQgdXNlciBhY2NvdW50cykKIwpERU5ZX1RIUkVTSE9MRF9JTlZB TElEID0gMgojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwojCiMgREVOWV9USFJFU0hPTERfVkFMSUQ6 IGJsb2NrIGVhY2ggaG9zdCBhZnRlciB0aGUgbnVtYmVyIG9mIGZhaWxlZCAK IyBsb2dpbiBhdHRlbXB0cyBoYXMgZXhjZWVkZWQgdGhpcyB2YWx1ZS4gIFRo aXMgdmFsdWUgYXBwbGllcyB0byB2YWxpZAojIHVzZXIgbG9naW4gYXR0ZW1w dHMgKGVnLiB1c2VyIGFjY291bnRzIHRoYXQgZXhpc3QgaW4gL2V0Yy9wYXNz d2QpIGV4Y2VwdAojIGZvciB0aGUgInJvb3QiIHVzZXIKIwpERU5ZX1RIUkVT SE9MRF9WQUxJRCA9IDMKIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoK IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIERFTllfVEhSRVNIT0xE X1JPT1Q6IGJsb2NrIGVhY2ggaG9zdCBhZnRlciB0aGUgbnVtYmVyIG9mIGZh aWxlZCAKIyBsb2dpbiBhdHRlbXB0cyBoYXMgZXhjZWVkZWQgdGhpcyB2YWx1 ZS4gIFRoaXMgdmFsdWUgYXBwbGllcyB0byAKIyAicm9vdCIgdXNlciBsb2dp biBhdHRlbXB0cyBvbmx5LgojCkRFTllfVEhSRVNIT0xEX1JPT1QgPSAxCiMK IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIwojCiMgREVOWV9USFJFU0hPTERfUkVTVFJJQ1RFRDogYmxv Y2sgZWFjaCBob3N0IGFmdGVyIHRoZSBudW1iZXIgb2YgZmFpbGVkIAojIGxv Z2luIGF0dGVtcHRzIGhhcyBleGNlZWRlZCB0aGlzIHZhbHVlLiAgVGhpcyB2 YWx1ZSBhcHBsaWVzIHRvIAojIHVzZXJuYW1lcyB0aGF0IGFwcGVhciBpbiB0 aGUgV09SS19ESVIvcmVzdHJpY3RlZC11c2VybmFtZXMgZmlsZSBvbmx5Lgoj CkRFTllfVEhSRVNIT0xEX1JFU1RSSUNURUQgPSAxCiMKIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoj CiMgV09SS19ESVI6IHRoZSBwYXRoIHRoYXQgRGVueUhvc3RzIHdpbGwgdXNl IGZvciB3cml0aW5nIGRhdGEgdG8KIyAoaXQgd2lsbCBiZSBjcmVhdGVkIGlm IGl0IGRvZXMgbm90IGFscmVhZHkgZXhpc3QpLiAgCiMKIyBOb3RlOiBpdCBp cyByZWNvbW1lbmRlZCB0aGF0IHlvdSB1c2UgYW4gYWJzb2x1dGUgcGF0aG5h bWUKIyBmb3IgdGhpcyB2YWx1ZSAoZWcuIC9ob21lL2Zvby9kZW55aG9zdHMv ZGF0YSkKIwpXT1JLX0RJUiA9IC91c3Ivc2hhcmUvZGVueWhvc3RzL2RhdGEK IwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKIwojIFNVU1BJQ0lPVVNfTE9HSU5fUkVQT1JUX0FMTE9X RURfSE9TVFMKIwojIFNVU1BJQ0lPVVNfTE9HSU5fUkVQT1JUX0FMTE9XRURf SE9TVFM9WUVTfE5PCiMgSWYgc2V0IHRvIFlFUywgaWYgYSBzdXNwaWNpb3Vz IGxvZ2luIGF0dGVtcHQgcmVzdWx0cyBmcm9tIGFuIGFsbG93ZWQtaG9zdAoj IHRoZW4gaXQgaXMgY29uc2lkZXJlZCBzdXNwaWNpb3VzLiAgSWYgdGhpcyBp cyBOTywgdGhlbiBzdXNwaWNpb3VzIGxvZ2lucyAKIyBmcm9tIGFsbG93ZWQt aG9zdHMgd2lsbCBub3QgYmUgcmVwb3J0ZWQuICBBbGwgc3VzcGljaW91cyBs b2dpbnMgZnJvbSAKIyBpcCBhZGRyZXNzZXMgdGhhdCBhcmUgbm90IGluIGFs bG93ZWQtaG9zdHMgd2lsbCBhbHdheXMgYmUgcmVwb3J0ZWQuCiMKU1VTUElD SU9VU19MT0dJTl9SRVBPUlRfQUxMT1dFRF9IT1NUUz1ZRVMKIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoj CiMgSE9TVE5BTUVfTE9PS1VQCiMKIyBIT1NUTkFNRV9MT09LVVA9WUVTfE5P CiMgSWYgc2V0IHRvIFlFUywgZm9yIGVhY2ggSVAgYWRkcmVzcyB0aGF0IGlz IHJlcG9ydGVkIGJ5IERlbnlob3N0cywKIyB0aGUgY29ycmVzcG9uZGluZyBo b3N0bmFtZSB3aWxsIGJlIGxvb2tlZCB1cCBhbmQgcmVwb3J0ZWQgYXMgd2Vs bAojIChpZiBhdmFpbGFibGUpLgojCkhPU1ROQU1FX0xPT0tVUD1ZRVMKIwoj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgoKIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIwojCiMgTE9DS19GSUxFCiMKIyBMT0NLX0ZJTEU9L3BhdGgvZGVu eWhvc3RzCiMgSWYgdGhpcyBmaWxlIGV4aXN0cyB3aGVuIERlbnlIb3N0cyBp cyBydW4sIHRoZW4gRGVueUhvc3RzIHdpbGwgZXhpdAojIGltbWVkaWF0ZWx5 LiAgT3RoZXJ3aXNlLCB0aGlzIGZpbGUgd2lsbCBiZSBjcmVhdGVkIHVwb24g aW52b2NhdGlvbgojIGFuZCBkZWxldGVkIHVwb24gZXhpdC4gIFRoaXMgZW5z dXJlcyB0aGF0IG9ubHkgb25lIGluc3RhbmNlIGlzCiMgcnVubmluZyBhdCBh IHRpbWUuCiMKIyBSZWRoYXQvRmVkb3JhOgojTE9DS19GSUxFID0gL3Zhci9s b2NrL3N1YnN5cy9kZW55aG9zdHMKIwojIERlYmlhbgpMT0NLX0ZJTEUgPSAv dmFyL3J1bi9kZW55aG9zdHMucGlkCiMKIyBNaXNjCiNMT0NLX0ZJTEUgPSAv dG1wL2Rlbnlob3N0cy5sb2NrCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IwoKCiAgICAgICAjIyMjIyMjIyMjIyMgVEhFU0UgU0VUVElOR1MgQVJFIE9Q VElPTkFMICMjIyMjIyMjIyMjIwoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjCiMKIyBBRE1JTl9FTUFJTDogaWYgeW91IHdvdWxkIGxpa2UgdG8gcmVj ZWl2ZSBlbWFpbHMgcmVnYXJkaW5nIG5ld2x5CiMgcmVzdHJpY3RlZCBob3N0 cyBhbmQgc3VzcGljaW91cyBsb2dpbnMsIHNldCB0aGlzIGFkZHJlc3MgdG8g CiMgbWF0Y2ggeW91ciBlbWFpbCBhZGRyZXNzLiAgSWYgeW91IGRvIG5vdCB3 YW50IHRvIHJlY2VpdmUgdGhlc2UgcmVwb3J0cwojIGxlYXZlIHRoaXMgZmll bGQgYmxhbmsgKG9yIHJ1biB3aXRoIHRoZSAtLW5vZW1haWwgb3B0aW9uKQoj CiMgTXVsdGlwbGUgZW1haWwgYWRkcmVzc2VzIGNhbiBiZSBkZWxpbWl0ZWQg YnkgYSBjb21tYSwgZWc6CiMgQURNSU5fRU1BSUwgPSBmb29AYmFyLmNvbSwg YmFyQGZvby5jb20sIGV0Y0Bmb29iYXIuY29tCiMKQURNSU5fRU1BSUwgPSAK IwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKIwojIFNNVFBfSE9TVCBhbmQgU01UUF9QT1JUOiBpZiBE ZW55SG9zdHMgaXMgY29uZmlndXJlZCB0byBlbWFpbCAKIyByZXBvcnRzIChz ZWUgQURNSU5fRU1BSUwpIHRoZW4gdGhlc2Ugc2V0dGluZ3Mgc3BlY2lmeSB0 aGUgCiMgZW1haWwgc2VydmVyIGFkZHJlc3MgKFNNVFBfSE9TVCkgYW5kIHRo ZSBzZXJ2ZXIgcG9ydCAoU01UUF9QT1JUKQojIAojClNNVFBfSE9TVCA9IGxv Y2FsaG9zdApTTVRQX1BPUlQgPSAyNQojCiMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIAojIFNNVFBf VVNFUk5BTUUgYW5kIFNNVFBfUEFTU1dPUkQ6IHNldCB0aGVzZSBwYXJhbWV0 ZXJzIGlmIHlvdXIgCiMgc210cCBlbWFpbCBzZXJ2ZXIgcmVxdWlyZXMgYXV0 aGVudGljYXRpb24KIwojU01UUF9VU0VSTkFNRT1mb28KI1NNVFBfUEFTU1dP UkQ9YmFyCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKIwojIFNNVFBfRlJPTTogeW91IGNhbiBzcGVj aWZ5IHRoZSAiRnJvbToiIGFkZHJlc3MgaW4gbWVzc2FnZXMgc2VudAojIGZy b20gRGVueUhvc3RzIHdoZW4gaXQgcmVwb3J0cyB0aHdhcnRlZCBhYnVzZSBh dHRlbXB0cwojClNNVFBfRlJPTSA9IERlbnlIb3N0cyA8bm9ib2R5QGxvY2Fs aG9zdD4KIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKIwojIFNNVFBfU1VCSkVDVDogeW91IGNhbiBz cGVjaWZ5IHRoZSAiU3ViamVjdDoiIG9mIG1lc3NhZ2VzIHNlbnQKIyBieSBE ZW55SG9zdHMgd2hlbiBpdCByZXBvcnRzIHRod2FydGVkIGFidXNlIGF0dGVt cHRzClNNVFBfU1VCSkVDVCA9IERlbnlIb3N0cyBSZXBvcnQKIwojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj CiMKIyBTTVRQX0RBVEVfRk9STUFUOiBzcGVjaWZpZXMgdGhlIGZvcm1hdCB1 c2VkIGZvciB0aGUgIkRhdGU6IiBoZWFkZXIKIyB3aGVuIHNlbmRpbmcgZW1h aWwgbWVzc2FnZXMuCiMKIyBmb3IgcG9zc2libGUgdmFsdWVzIGZvciB0aGlz IHBhcmFtZXRlciByZWZlciB0bzogbWFuIHN0cmZ0aW1lCiMKIyB0aGUgZGVm YXVsdDoKIwojU01UUF9EQVRFX0ZPUk1BVCA9ICVhLCAlZCAlYiAlWSAlSDol TTolUyAlegojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKIwojIFNZU0xPR19SRVBPUlQKIwojIFNZU0xP R19SRVBPUlQ9WUVTfE5PCiMgSWYgc2V0IHRvIHllcywgd2hlbiBkZW5pZWQg aG9zdHMgYXJlIHJlY29yZGVkIHRoZSByZXBvcnQgZGF0YQojIHdpbGwgYmUg c2VudCB0byBzeXNsb2cgKHN5c2xvZyBtdXN0IGJlIHByZXNlbnQgb24geW91 ciBzeXN0ZW0pLgojIFRoZSBkZWZhdWx0IGlzOiBOTwojCiNTWVNMT0dfUkVQ T1JUPU5PCiMKU1lTTE9HX1JFUE9SVD1ZRVMKIwojIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBBTExP V0VEX0hPU1RTX0hPU1ROQU1FX0xPT0tVUAojCiMgQUxMT1dFRF9IT1NUU19I T1NUTkFNRV9MT09LVVA9WUVTfE5PCiMgSWYgc2V0IHRvIFlFUywgZm9yIGVh Y2ggZW50cnkgaW4gdGhlIFdPUktfRElSL2FsbG93ZWQtaG9zdHMgZmlsZSwK IyB0aGUgaG9zdG5hbWUgd2lsbCBiZSBsb29rZWQgdXAuICBJZiB5b3VyIHZl cnNpb25zIG9mIHRjcF93cmFwcGVycwojIGFuZCBzc2hkIHNvbWV0aW1lcyBs b2cgaG9zdG5hbWVzIGluIGFkZGl0aW9uIHRvIGlwIGFkZHJlc3NlcwojIHRo ZW4geW91IG1heSB3aXNoIHRvIHNwZWNpZnkgdGhpcyBvcHRpb24uCiMgCiNB TExPV0VEX0hPU1RTX0hPU1ROQU1FX0xPT0tVUD1OTwojCiMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgCiMg CiMgQUdFX1JFU0VUX1ZBTElEOiBTcGVjaWZpZXMgdGhlIHBlcmlvZCBvZiB0 aW1lIGJldHdlZW4gZmFpbGVkIGxvZ2luCiMgYXR0ZW1wdHMgdGhhdCwgd2hl biBleGNlZWRlZCB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbGVkIGNvdW50IGZv ciAKIyB0aGlzIGhvc3QgdG8gYmUgcmVzZXQgdG8gMC4gIFRoaXMgdmFsdWUg YXBwbGllcyB0byBsb2dpbiBhdHRlbXB0cyAKIyB0byBhbGwgdmFsaWQgdXNl cnMgKHRob3NlIHdpdGhpbiAvZXRjL3Bhc3N3ZCkgd2l0aCB0aGUgCiMgZXhj ZXB0aW9uIG9mIHJvb3QuICBJZiBub3QgZGVmaW5lZCwgdGhpcyBjb3VudCB3 aWxsIG5ldmVyCiMgYmUgcmVzZXQuCiMKIyBTZWUgdGhlIGNvbW1lbnRzIGlu IHRoZSBQVVJHRV9ERU5ZIHNlY3Rpb24gKGFib3ZlKSAKIyBmb3IgZGV0YWls cyBvbiBzcGVjaWZ5aW5nIHRoaXMgdmFsdWUgb3IgZm9yIGNvbXBsZXRlIGRl dGFpbHMgCiMgcmVmZXIgdG86ICBodHRwOi8vZGVueWhvc3RzLnNvdXJjZWZv cmdlLm5ldC9mYXEuaHRtbCN0aW1lc3BlYwojCkFHRV9SRVNFVF9WQUxJRD01 ZAojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMgCiMgCiMgQUdFX1JFU0VUX1JPT1Q6IFNwZWNpZmllcyB0 aGUgcGVyaW9kIG9mIHRpbWUgYmV0d2VlbiBmYWlsZWQgbG9naW4KIyBhdHRl bXB0cyB0aGF0LCB3aGVuIGV4Y2VlZGVkIHdpbGwgcmVzdWx0IGluIHRoZSBm YWlsZWQgY291bnQgZm9yIAojIHRoaXMgaG9zdCB0byBiZSByZXNldCB0byAw LiAgVGhpcyB2YWx1ZSBhcHBsaWVzIHRvIGFsbCBsb2dpbiAKIyBhdHRlbXB0 cyB0byB0aGUgInJvb3QiIHVzZXIgYWNjb3VudC4gIElmIG5vdCBkZWZpbmVk LAojIHRoaXMgY291bnQgd2lsbCBuZXZlciBiZSByZXNldC4KIwojIFNlZSB0 aGUgY29tbWVudHMgaW4gdGhlIFBVUkdFX0RFTlkgc2VjdGlvbiAoYWJvdmUp IAojIGZvciBkZXRhaWxzIG9uIHNwZWNpZnlpbmcgdGhpcyB2YWx1ZSBvciBm b3IgY29tcGxldGUgZGV0YWlscyAKIyByZWZlciB0bzogIGh0dHA6Ly9kZW55 aG9zdHMuc291cmNlZm9yZ2UubmV0L2ZhcS5odG1sI3RpbWVzcGVjCiMKQUdF X1JFU0VUX1JPT1Q9MjVkCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoK IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAKIyAKIyBBR0VfUkVTRVRfUkVT VFJJQ1RFRDogU3BlY2lmaWVzIHRoZSBwZXJpb2Qgb2YgdGltZSBiZXR3ZWVu IGZhaWxlZCBsb2dpbgojIGF0dGVtcHRzIHRoYXQsIHdoZW4gZXhjZWVkZWQg d2lsbCByZXN1bHQgaW4gdGhlIGZhaWxlZCBjb3VudCBmb3IgCiMgdGhpcyBo b3N0IHRvIGJlIHJlc2V0IHRvIDAuICBUaGlzIHZhbHVlIGFwcGxpZXMgdG8g YWxsIGxvZ2luIAojIGF0dGVtcHRzIHRvIGVudHJpZXMgZm91bmQgaW4gdGhl IFdPUktfRElSL3Jlc3RyaWN0ZWQtdXNlcm5hbWVzIGZpbGUuICAKIyBJZiBu b3QgZGVmaW5lZCwgdGhlIGNvdW50IHdpbGwgbmV2ZXIgYmUgcmVzZXQuCiMK IyBTZWUgdGhlIGNvbW1lbnRzIGluIHRoZSBQVVJHRV9ERU5ZIHNlY3Rpb24g KGFib3ZlKSAKIyBmb3IgZGV0YWlscyBvbiBzcGVjaWZ5aW5nIHRoaXMgdmFs dWUgb3IgZm9yIGNvbXBsZXRlIGRldGFpbHMgCiMgcmVmZXIgdG86ICBodHRw Oi8vZGVueWhvc3RzLnNvdXJjZWZvcmdlLm5ldC9mYXEuaHRtbCN0aW1lc3Bl YwojCkFHRV9SRVNFVF9SRVNUUklDVEVEPTI1ZAojCiMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIAojIAoj IEFHRV9SRVNFVF9JTlZBTElEOiBTcGVjaWZpZXMgdGhlIHBlcmlvZCBvZiB0 aW1lIGJldHdlZW4gZmFpbGVkIGxvZ2luCiMgYXR0ZW1wdHMgdGhhdCwgd2hl biBleGNlZWRlZCB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbGVkIGNvdW50IGZv ciAKIyB0aGlzIGhvc3QgdG8gYmUgcmVzZXQgdG8gMC4gIFRoaXMgdmFsdWUg YXBwbGllcyB0byBsb2dpbiBhdHRlbXB0cyAKIyBtYWRlIHRvIGFueSBpbnZh bGlkIHVzZXJuYW1lICh0aG9zZSB0aGF0IGRvIG5vdCBhcHBlYXIgCiMgaW4g L2V0Yy9wYXNzd2QpLiAgSWYgbm90IGRlZmluZWQsIGNvdW50IHdpbGwgbmV2 ZXIgYmUgcmVzZXQuCiMKIyBTZWUgdGhlIGNvbW1lbnRzIGluIHRoZSBQVVJH RV9ERU5ZIHNlY3Rpb24gKGFib3ZlKSAKIyBmb3IgZGV0YWlscyBvbiBzcGVj aWZ5aW5nIHRoaXMgdmFsdWUgb3IgZm9yIGNvbXBsZXRlIGRldGFpbHMgCiMg cmVmZXIgdG86ICBodHRwOi8vZGVueWhvc3RzLnNvdXJjZWZvcmdlLm5ldC9m YXEuaHRtbCN0aW1lc3BlYwojCkFHRV9SRVNFVF9JTlZBTElEPTEwZAojCiMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCiMKIyBSRVNFVF9PTl9TVUNDRVNTOiBJZiB0aGlzIHBhcmFtZXRl ciBpcyBzZXQgdG8gInllcyIgdGhlbiB0aGUKIyBmYWlsZWQgY291bnQgZm9y IHRoZSByZXNwZWN0aXZlIGlwIGFkZHJlc3Mgd2lsbCBiZSByZXNldCB0byAw CiMgaWYgdGhlIGxvZ2luIGlzIHN1Y2Nlc3NmdWwuICAKIwojIFRoZSBkZWZh dWx0IGlzIFJFU0VUX09OX1NVQ0NFU1MgPSBubwojClJFU0VUX09OX1NVQ0NF U1MgPSB5ZXMKIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCgojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBQTFVHSU5fREVOWTogSWYgc2V0LCB0 aGlzIHZhbHVlIHNob3VsZCBwb2ludCB0byBhbiBleGVjdXRhYmxlCiMgcHJv Z3JhbSB0aGF0IHdpbGwgYmUgaW52b2tlZCB3aGVuIGEgaG9zdCBpcyBhZGRl ZCB0byB0aGUKIyBIT1NUU19ERU5ZIGZpbGUuICBUaGlzIGV4ZWN1dGFibGUg d2lsbCBiZSBwYXNzZWQgdGhlIGhvc3QKIyB0aGF0IHdpbGwgYmUgYWRkZWQg YXMgaXQncyBvbmx5IGFyZ3VtZW50LgojCiNQTFVHSU5fREVOWT0vdXNyL2Jp bi90cnVlCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKCiMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKIwojIFBMVUdJTl9QVVJHRTogSWYgc2V0LCB0 aGlzIHZhbHVlIHNob3VsZCBwb2ludCB0byBhbiBleGVjdXRhYmxlCiMgcHJv Z3JhbSB0aGF0IHdpbGwgYmUgaW52b2tlZCB3aGVuIGEgaG9zdCBpcyByZW1v dmVkIGZyb20gdGhlCiMgSE9TVFNfREVOWSBmaWxlLiAgVGhpcyBleGVjdXRh YmxlIHdpbGwgYmUgcGFzc2VkIHRoZSBob3N0CiMgdGhhdCBpcyB0byBiZSBw dXJnZWQgYXMgaXQncyBvbmx5IGFyZ3VtZW50LgojCiNQTFVHSU5fUFVSR0U9 L3Vzci9iaW4vdHJ1ZQojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIFVTRVJERUZfRkFJTEVEX0VO VFJZX1JFR0VYOiBpZiBzZXQsIHRoaXMgdmFsdWUgc2hvdWxkIGNvbnRhaW4K IyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGlk ZW50aWZ5IGFkZGl0aW9uYWwKIyBoYWNrZXJzIGZvciB5b3VyIHBhcnRpY3Vs YXIgc3NoIGNvbmZpZ3VyYXRpb24uICBUaGlzIGZ1bmN0aW9uYWxpdHkKIyBl eHRlbmRzIHRoZSBidWlsdC1pbiByZWd1bGFyIGV4cHJlc3Npb25zIHRoYXQg RGVueUhvc3RzIHVzZXMuCiMgVGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNp ZmllZCBtdWx0aXBsZSB0aW1lcy4KIyBTZWUgdGhpcyBmYXEgZW50cnkgZm9y IG1vcmUgZGV0YWlsczoKIyAgICBodHRwOi8vZGVueWhvc3RzLnNmLm5ldC9m YXEuaHRtbCN1c2VyZGVmX3JlZ2V4CiMKI1VTRVJERUZfRkFJTEVEX0VOVFJZ X1JFR0VYPQojCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKCgoKICAg IyMjIyMjIyMjIFRIRVNFIFNFVFRJTkdTIEFSRSBTUEVDSUZJQyBUTyBEQUVN T04gTU9ERSAgIyMjIyMjIyMjIwoKCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIwojCiMgREFFTU9OX0xPRzogd2hlbiBEZW55SG9zdHMgaXMgcnVuIGlu IGRhZW1vbiBtb2RlICgtLWRhZW1vbiBmbGFnKQojIHRoaXMgaXMgdGhlIGxv Z2ZpbGUgdGhhdCBEZW55SG9zdHMgdXNlcyB0byByZXBvcnQgaXQncyBzdGF0 dXMuCiMgVG8gZGlzYWJsZSBsb2dnaW5nLCBsZWF2ZSBibGFuay4gIChkZWZh dWx0IGlzOiAvdmFyL2xvZy9kZW55aG9zdHMpCiMKREFFTU9OX0xPRyA9IC92 YXIvbG9nL2Rlbnlob3N0cwojCiMgZGlzYWJsZSBsb2dnaW5nOgojREFFTU9O X0xPRyA9IAojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCiMgCiMgREFFTU9OX0xPR19USU1FX0ZPUk1B VDogd2hlbiBEZW55SG9zdHMgaXMgcnVuIGluIGRhZW1vbiBtb2RlIAojICgt LWRhZW1vbiBmbGFnKSB0aGlzIHNwZWNpZmllcyB0aGUgdGltZXN0YW1wIGZv cm1hdCBvZiAKIyB0aGUgREFFTU9OX0xPRyBtZXNzYWdlcyAoZGVmYXVsdCBp cyB0aGUgSVNPODA2MSBmb3JtYXQ6CiMgaWUuIDIwMDUtMDctMjIgMTA6Mzg6 MDEsNzQ1KQojCiMgZm9yIHBvc3NpYmxlIHZhbHVlcyBmb3IgdGhpcyBwYXJh bWV0ZXIgcmVmZXIgdG86IG1hbiBzdHJmdGltZQojCiMgSmFuIDEgMTM6MDU6 NTkgICAKREFFTU9OX0xPR19USU1FX0ZPUk1BVCA9ICViICVkICVIOiVNOiVT CiMKIyBKYW4gMSAwMTowNTo1OSAKI0RBRU1PTl9MT0dfVElNRV9GT1JNQVQg PSAlYiAlZCAlSTolTTolUwojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMg CgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIAojIERBRU1PTl9MT0df TUVTU0FHRV9GT1JNQVQ6IHdoZW4gRGVueUhvc3RzIGlzIHJ1biBpbiBkYWVt b24gbW9kZSAKIyAoLS1kYWVtb24gZmxhZykgdGhpcyBzcGVjaWZpZXMgdGhl IG1lc3NhZ2UgZm9ybWF0IG9mIGVhY2ggbG9nZ2VkCiMgZW50cnkuICBCeSBk ZWZhdWx0IHRoZSBmb2xsb3dpbmcgZm9ybWF0IGlzIHVzZWQ6CiMKIyAlKGFz Y3RpbWUpcyAtICUobmFtZSktMTJzOiAlKGxldmVsbmFtZSktOHMgJShtZXNz YWdlKXMKIwojIFdoZXJlIHRoZSAiJShhc2N0aW1lKXMiIHBvcnRpb24gaXMg ZXhwYW5kZWQgdG8gdGhlIGZvcm1hdAojIGRlZmluZWQgYnkgREFFTU9OX0xP R19USU1FX0ZPUk1BVAojCiMgVGhpcyBzdHJpbmcgaXMgcGFzc2VkIHRvIHB5 dGhvbidzIGxvZ2dpbmcuRm9ybWF0dGVyIGNvbnRzdHVjdG9yLgojIEZvciBk ZXRhaWxzIG9uIHRoZSBwb3NzaWJsZSBmb3JtYXQgdHlwZXMgcGxlYXNlIHJl ZmVyIHRvOgojIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvbGliL25vZGUzNTcu aHRtbAojCiMgVGhpcyBpcyB0aGUgZGVmYXVsdDoKI0RBRU1PTl9MT0dfTUVT U0FHRV9GT1JNQVQgPSAlKGFzY3RpbWUpcyAtICUobmFtZSktMTJzOiAlKGxl dmVsbmFtZSktOHMgJShtZXNzYWdlKXMKIwojCiMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMgCgogCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBE QUVNT05fU0xFRVA6IHdoZW4gRGVueUhvc3RzIGlzIHJ1biBpbiBkYWVtb24g bW9kZSAoLS1kYWVtb24gZmxhZykKIyB0aGlzIGlzIHRoZSBhbW91bnQgb2Yg dGltZSBEZW55SG9zdHMgd2lsbCBzbGVlcCBiZXR3ZWVuIHBvbGxpbmcKIyB0 aGUgU0VDVVJFX0xPRy4gIFNlZSB0aGUgY29tbWVudHMgaW4gdGhlIFBVUkdF X0RFTlkgc2VjdGlvbiAoYWJvdmUpCiMgZm9yIGRldGFpbHMgb24gc3BlY2lm eWluZyB0aGlzIHZhbHVlIG9yIGZvciBjb21wbGV0ZSBkZXRhaWxzCiMgcmVm ZXIgdG86ICAgIGh0dHA6Ly9kZW55aG9zdHMuc291cmNlZm9yZ2UubmV0L2Zh cS5odG1sI3RpbWVzcGVjCiMgCiMKREFFTU9OX1NMRUVQID0gMTVzCiMKIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCiMKIyBEQUVNT05fUFVSR0U6IEhvdyBvZnRlbiBzaG91bGQgRGVu eUhvc3RzLCB3aGVuIHJ1biBpbiBkYWVtb24gbW9kZSwKIyBydW4gdGhlIHB1 cmdlIG1lY2hhbmlzbSB0byBleHBpcmUgb2xkIGVudHJpZXMgaW4gSE9TVFNf REVOWQojIFRoaXMgaGFzIG5vIGVmZmVjdCBpZiBQVVJHRV9ERU5ZIGlzIGJs YW5rLgojCkRBRU1PTl9QVVJHRSA9IDFoCiMKIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKCgogICAjIyMjIyMjIyMgICBUSEVTRSBTRVRUSU5HUyBBUkUg U1BFQ0lGSUMgVE8gICAgICMjIyMjIyMjIyMKICAgIyMjIyMjIyMjICAgICAg IERBRU1PTiBTWU5DSFJPTklaQVRJT04gICAgICAgICAjIyMjIyMjIyMjCgoK IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIFN5bmNocm9uaXphdGlv biBtb2RlIGFsbG93cyB0aGUgRGVueUhvc3RzIGRhZW1vbiB0aGUgYWJpbGl0 eQojIHRvIHBlcmlvZGljYWxseSBzZW5kIGFuZCByZWNlaXZlIGRlbmllZCBo b3N0IGRhdGEgc3VjaCB0aGF0IAojIERlbnlIb3N0cyBkYWVtb25zIHdvcmxk d2lkZSBjYW4gYXV0b21hdGljYWxseSBpbmZvcm0gb25lCiMgYW5vdGhlciBy ZWdhcmRpbmcgYmFubmVkIGhvc3RzLiAgIFRoaXMgbW9kZSBpcyBkaXNhYmxl ZCBieQojIGRlZmF1bHQsIHlvdSBtdXN0IHVuY29tbWVudCBTWU5DX1NFUlZF UiB0byBlbmFibGUgdGhpcyBtb2RlLgojCiMgZm9yIG1vcmUgaW5mb3JtYXRp b24sIHBsZWFzZSByZWZlciB0bzogCiMgICAgICAgIGh0dHA6L2Rlbnlob3N0 cy5zb3VyY2Vmb3JnZS5uZXQvZmFxLmh0bWwjc3luYyAKIwojIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIwoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj CiMKIyBTWU5DX1NFUlZFUjogVGhlIGNlbnRyYWwgc2VydmVyIHRoYXQgY29t bXVuaWNhdGVzIHdpdGggRGVueUhvc3QKIyBkYWVtb25zLiAgQ3VycmVudGx5 LCBkZW55aG9zdHMubmV0IGlzIHRoZSBvbmx5IGF2YWlsYWJsZSBzZXJ2ZXIK IyBob3dldmVyLCBpbiB0aGUgZnV0dXJlLCBpdCBtYXkgYmUgcG9zc2libGUg Zm9yIG9yZ2FuaXphdGlvbnMgdG8KIyBpbnN0YWxsIHRoZWlyIG93biBzZXJ2 ZXIgZm9yIGludGVybmFsIG5ldHdvcmsgc3luY2hyb25pemF0aW9uCiMKIyBU byBkaXNhYmxlIHN5bmNocm9uaXphdGlvbiAodGhlIGRlZmF1bHQpLCBkbyBu b3RoaW5nLiAKIwojIFRvIGVuYWJsZSBzeW5jaHJvbml6YXRpb24sIHlvdSBt dXN0IHVuY29tbWVudCB0aGUgZm9sbG93aW5nIGxpbmU6ClNZTkNfU0VSVkVS ID0gaHR0cDovL3htbHJwYy5kZW55aG9zdHMubmV0Ojk5MTEKIwojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKIwojIFNZTkNfSU5URVJWQUw6IHRoZSBpbnRlcnZhbCBvZiB0aW1lIHRv IHBlcmZvcm0gc3luY2hyb25pemF0aW9ucyBpZgojIFNZTkNfU0VSVkVSIGhh cyBiZWVuIHVuY29tbWVudGVkLiAgVGhlIGRlZmF1bHQgaXMgMSBob3VyLgoj IApTWU5DX0lOVEVSVkFMID0gMWgKIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIwoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBTWU5DX1VQ TE9BRDogYWxsb3cgeW91ciBEZW55SG9zdHMgZGFlbW9uIHRvIHRyYW5zbWl0 IGhvc3RzIHRoYXQgaGF2ZQojIGJlZW4gZGVuaWVkPyAgVGhpcyBvcHRpb24g b25seSBhcHBsaWVzIGlmIFNZTkNfU0VSVkVSIGhhcwojIGJlZW4gdW5jb21t ZW50ZWQuCiMgVGhlIGRlZmF1bHQgaXMgU1lOQ19VUExPQUQgPSB5ZXMKIwoj U1lOQ19VUExPQUQgPSBubwpTWU5DX1VQTE9BRCA9IHllcwojCiMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKIwojIFNZTkNfRE9XTkxPQUQ6IGFsbG93IHlvdXIgRGVueUhvc3RzIGRh ZW1vbiB0byByZWNlaXZlIGhvc3RzIHRoYXQgaGF2ZQojIGJlZW4gZGVuaWVk IGJ5IG90aGVycz8gIFRoaXMgb3B0aW9uIG9ubHkgYXBwbGllcyBpZiBTWU5D X1NFUlZFUiBoYXMKIyBiZWVuIHVuY29tbWVudGVkLgojIFRoZSBkZWZhdWx0 IGlzIFNZTkNfRE9XTkxPQUQgPSB5ZXMKIwojU1lOQ19ET1dOTE9BRCA9IG5v ClNZTkNfRE9XTkxPQUQgPSB5ZXMKIwojCiMKIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBTWU5D X0RPV05MT0FEX1RIUkVTSE9MRDogSWYgU1lOQ19ET1dOTE9BRCBpcyBlbmFi bGVkIHRoaXMgcGFyYW1ldGVyCiMgZmlsdGVycyB0aGUgcmV0dXJuZWQgaG9z dHMgdG8gdGhvc2UgdGhhdCBoYXZlIGJlZW4gYmxvY2tlZCB0aGlzIG1hbnkK IyB0aW1lcyBieSBvdGhlcnMuICBUaGF0IGlzLCBpZiBzZXQgdG8gMSwgdGhl biBpZiBhIHNpbmdsZSBEZW55SG9zdHMKIyBzZXJ2ZXIgaGFzIGRlbmllZCBh biBpcCBhZGRyZXNzIHRoZW4geW91IHdpbGwgcmVjZWl2ZSB0aGUgZGVuaWVk IGhvc3QuCiMgCiMgU2VlIGFsc28gU1lOQ19ET1dOTE9BRF9SRVNJTElFTkNZ CiMKI1NZTkNfRE9XTkxPQURfVEhSRVNIT0xEID0gMTAKIwojIFRoZSBkZWZh dWx0IGlzIFNZTkNfRE9XTkxPQURfVEhSRVNIT0xEID0gMyAKIwpTWU5DX0RP V05MT0FEX1RIUkVTSE9MRCA9IDMKIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIFNZTkNfRE9X TkxPQURfUkVTSUxJRU5DWTogIElmIFNZTkNfRE9XTkxPQUQgaXMgZW5hYmxl ZCB0aGVuIHRoZQojIHZhbHVlIHNwZWNpZmllZCBmb3IgdGhpcyBvcHRpb24g bGltaXRzIHRoZSBkb3dubG9hZGVkIGRhdGEKIyB0byB0aGlzIHJlc2lsaWVu Y3kgcGVyaW9kIG9yIGdyZWF0ZXIuCiMKIyBSZXNpbGllbmN5IGlzIGRlZmlu ZWQgYXMgdGhlIHRpbWVzcGFuIGJldHdlZW4gYSBoYWNrZXJzIGZpcnN0IGtu b3duIAojIGF0dGFjayBhbmQgaXQncyBtb3N0IHJlY2VudCBhdHRhY2suICBF eGFtcGxlOgojIAojIElmIHRoZSBjZW50cmFsaXplZCAgIGRlbnlob3N0cy5u ZXQgc2VydmVyIHJlY29yZHMgYW4gYXR0YWNrIGF0IDIgUE0gCiMgYW5kIHRo ZW4gYWdhaW4gYXQgNSBQTSwgc3BlY2lmeWluZyBhIFNZTkNfRE9XTkxPQURf UkVTSUxJRU5DWSA9IDRoIAojIHdpbGwgbm90IGRvd25sb2FkIHRoaXMgaXAg YWRkcmVzcy4KIwojIEhvd2V2ZXIsIGlmIHRoZSBhdHRhY2tlciBpcyByZWNv cmRlZCBhZ2FpbiBhdCA2OjE1IFBNIHRoZW4gdGhlIAojIGlwIGFkZHJlc3Mg d2lsbCBiZSBkb3dubG9hZGVkIGJ5IHlvdXIgRGVueUhvc3RzIGluc3RhbmNl LiAgCiMKIyBUaGlzIHZhbHVlIGlzIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0 aCB0aGUgU1lOQ19ET1dOTE9BRF9USFJFU0hPTEQgCiMgYW5kIG9ubHkgaG9z dHMgdGhhdCBzYXRpc2Z5IGJvdGggdmFsdWVzIHdpbGwgYmUgZG93bmxvYWRl ZC4gIAojIFRoaXMgdmFsdWUgaGFzIG5vIGVmZmVjdCBpZiBTWU5DX0RPV05M T0FEX1RIUkVTSE9MRCA9IDEgCiMKIyBUaGUgZGVmYXVsdCBpcyBTWU5DX0RP V05MT0FEX1JFU0lMSUVOQ1kgPSA1aCAoNSBob3VycykKIwojIE9ubHkgb2J0 YWluIGhhY2tlcnMgdGhhdCBoYXZlIGJlZW4gYXQgaXQgZm9yIDIgZGF5cyBv ciBtb3JlOgojU1lOQ19ET1dOTE9BRF9SRVNJTElFTkNZID0gMmQKIwojIE9u bHkgb2J0YWluIGhhY2tlcnMgdGhhdCBoYXZlIGJlZW4gYXQgaXQgZm9yIDUg aG91cnMgb3IgbW9yZToKU1lOQ19ET1dOTE9BRF9SRVNJTElFTkNZID0gNWgK IwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoK --047d7b339b7367998f04c277b047 Content-Type: text/plain; charset=us-ascii -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple --047d7b339b7367998f04c277b047--