From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: lewcreary@cs.com Newsgroups: gmane.emacs.bugs Subject: bug#15003: 24.3; Function run-python fails on MS-Windows 7 Date: Thu, 1 Aug 2013 17:13:11 -0400 (EDT) Message-ID: <8D05D130FFED31D-8E4-178DB@webmailstg-d03.sysops.aol.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="--------MB_8D05D130FFED31D_8E4_56836_webmailstg-d03.sysops.aol.com" X-Trace: ger.gmane.org 1375393001 807 80.91.229.3 (1 Aug 2013 21:36:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 1 Aug 2013 21:36:41 +0000 (UTC) To: 15003@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Aug 01 23:36:41 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1V50Y5-0003Dz-1U for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Aug 2013 23:36:41 +0200 Original-Received: from localhost ([::1]:35972 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50Y4-0004RG-LZ for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Aug 2013 17:36:40 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40695) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50Xb-0003nX-17 for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:36:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V50XT-0000Kc-Rx for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:36:10 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:40853) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50XT-0000KY-NQ for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:36:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1V50XT-00061H-Eh for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:36:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: lewcreary@cs.com Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 01 Aug 2013 21:36:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 15003 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.137539292723055 (code B ref -1); Thu, 01 Aug 2013 21:36:03 +0000 Original-Received: (at submit) by debbugs.gnu.org; 1 Aug 2013 21:35:27 +0000 Original-Received: from localhost ([127.0.0.1]:35165 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V50Ws-0005zh-Ep for submit@debbugs.gnu.org; Thu, 01 Aug 2013 17:35:26 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:37163) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V50TX-0005sT-Nk for submit@debbugs.gnu.org; Thu, 01 Aug 2013 17:32:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V50TL-00076T-5o for submit@debbugs.gnu.org; Thu, 01 Aug 2013 17:31:54 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:34203) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50TL-00076J-1f for submit@debbugs.gnu.org; Thu, 01 Aug 2013 17:31:47 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38798) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50TE-0002ZE-TU for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:31:46 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V50BO-0000KL-QD for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:13:24 -0400 Original-Received: from omr-m06.mx.aol.com ([64.12.143.80]:39599) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V50BO-0000Is-Ak for bug-gnu-emacs@gnu.org; Thu, 01 Aug 2013 17:13:14 -0400 Original-Received: from mtaomg-da03.r1000.mx.aol.com (mtaomg-da03.r1000.mx.aol.com [172.29.51.139]) by omr-m06.mx.aol.com (Outbound Mail Relay) with ESMTP id 542D2700308EB for ; Thu, 1 Aug 2013 17:13:12 -0400 (EDT) Original-Received: from core-mlc002a.r1000.mail.aol.com (core-mlc002.r1000.mail.aol.com [172.29.188.208]) by mtaomg-da03.r1000.mx.aol.com (OMAG/Core Interface) with ESMTP id 7BA7BE000089 for ; Thu, 1 Aug 2013 17:13:11 -0400 (EDT) X-MB-Message-Source: WebUI X-MB-Message-Type: User X-Mailer: Compuserve WebMail 37938-BASIC Original-Received: from 172.190.44.220 by webmailstg-d03.sysops.aol.com (205.188.103.153) with HTTP (WebMailUI); Thu, 01 Aug 2013 17:13:11 -0400 X-Originating-IP: [172.190.44.220] x-aol-global-disposition: G X-AOL-VSS-INFO: 5400.1158/92609 X-AOL-VSS-CODE: clean DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mx.aol.com; s=20121107; t=1375391591; bh=k/8v/xLuOesfSzkj4wirro5oM1HYRQ7FTHA3Nc2p8Qw=; h=From:To:Subject:Message-Id:Date:MIME-Version:Content-Type; b=FH5zb8yMrYi1nSZ/cIO/kP2pcLofZhtJU8LxZy6Aeckk0IIqlzmChn6dJHlKADJax DpvZGNwRuolD9asOK/NfXyVvtxNndzjITnRRNdYCZ2uLzPRJF9JjEVlcYHDd2Q/pSj mGfTqRZVcDYv/qg+XU3AzJ7xIZ5HZ1P5zU6Z7AJQ= x-aol-sid: 3039ac1d338b51facf676b89 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Mailman-Approved-At: Thu, 01 Aug 2013 17:35:23 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:76880 Archived-At: This is a multi-part message in MIME format. ----------MB_8D05D130FFED31D_8E4_56836_webmailstg-d03.sysops.aol.com Content-Type: multipart/alternative; boundary="--------MB_8D05D130FFED31D_8E4_56837_webmailstg-d03.sysops.aol.com" ----------MB_8D05D130FFED31D_8E4_56837_webmailstg-d03.sysops.aol.com Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="us-ascii" This bug report will be sent to the Bug-GNU-Emacs mailing list and the GNU= bug tracker at debbugs.gnu.org. ?Please check that the From: line contains= a valid email address. ?After a delay of up to one day, you should receive= an acknowledgment at that address. Please describe exactly what actions triggered the bug, and the precise sym= ptoms of the bug. ---------------------------------- Emacs-version: "GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601) ?of 2013-03-17 on MARVIN" ?(a pre-compiled version for MS-Windows) Operating System: Microsoft Windows 7 Professional (Copyright 2009) Function-definition (from python.el): ?(defun run-python (cmd &optional dedicated show) ?... ...) Typical invocation with Emacs running under MS-Windows 7: ?(run-python "c:/Program Files (x86)/Python/Python31/python.exe -i" nil t) [Note- I have successfully debugged and patched the bug to be described her= e; the facts reported below were ascertained during the debugging process.] This bug occurs whenever the function run-python is invoked, whether by a M= -x run-python command, or by C-c C-p or <menu-bar> <Python> <= ;Start interpreter> while editing a file in python-mode, provided that t= he first argument given to run-python has a pathname containing at least on= e space (see example invocation shown above -- this is typical when running= under MS-Windows 7). When run-python is invoked under these circumstances,= it fails with the error message "Spawning child process: invalid argument"= . The root cause of this failure is that the space-containing command pathnam= e in the first argument to function run-python is mangled during processing= in the function python-shell-make-comint, which is called by run-python. ?= This mangling occurs while processing the following line of code in python-= shell-make-comint: ? ? ? ? (let* ((cmdlist (split-string-and-unquote cmd)) Since the mangling is actually done in the function split-string-and-unquot= e, the solution is to avoid applying split-string-and-unquote to the (possi= bly) space-containing command pathname. ?The successful patch I have constr= ucted does this conservatively by changing the single line of code just dis= played to be ? ? ? ? (let* ((cmdlist (list-cmd-components cmd)) where list-cmd-components is a newly written function that first extracts t= he (possibly) space-containing command path from the command-string while p= reserving it unchanged, and then calls function split-string-and-unquote on= the remainder of the command-string (if any) to separate the command argum= ents (if any). I've attached to this e-mail a patch file, Emacs-Bugfix.el, containing the = revised definition of function python-shell-make-comint and the new definit= ion of function list-cmd-components. ?When loaded after python.el, this pat= ch file fixes the bug. ? -- ?Lew Creary ----------MB_8D05D130FFED31D_8E4_56837_webmailstg-d03.sysops.aol.com Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="us-ascii"
=20
This bug report will be sent to the Bug-GNU-Emacs mailing list and the= GNU bug tracker at debbugs.gnu.org.  Please check that the From: line= contains a valid email address.  After a delay of up to one day, you = should receive an acknowledgment at that address.

Please describe exactly what actions triggered the bug, and the precis= e symptoms of the bug.
----------------------------------

Emacs-version: "GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601)
 of 2013-03-17 on MARVIN"  (a pre-compiled version for MS-Wi= ndows)

Operating System: Microsoft Windows 7 Professional (Copyright 2009)

Function-definition (from python.el):
 (defun run-python (cmd &optional dedicated show)  ... .= ..)

Typical invocation with Emacs running under MS-Windows 7:
 (run-python "c:/Program Files (x86)/Python/Python31/python.exe -= i" nil t)

[Note- I have successfully debugged and patched the bug to be describe= d here; the facts reported below were ascertained during the debugging proc= ess.]

This bug occurs whenever the function run-python is invoked, whether b= y a M-x run-python command, or by C-c C-p or <menu-bar> <Python>= ; <Start interpreter> while editing a file in python-mode, provided t= hat the first argument given to run-python has a pathname containing at lea= st one space (see example invocation shown above -- this is typical when ru= nning under MS-Windows 7). When run-python is invoked under these circumsta= nces, it fails with the error message "Spawning child process: invalid argu= ment".

The root cause of this failure is that the space-containing command pa= thname in the first argument to function run-python is mangled during proce= ssing in the function python-shell-make-comint, which is called by run-pyth= on.  This mangling occurs while processing the following line of code = in python-shell-make-comint:

        (let* ((cmdlist (split-string-and-unquote = cmd))

Since the mangling is actually done in the function split-string-and-u= nquote, the solution is to avoid applying split-string-and-unquote to the (= possibly) space-containing command pathname.  The successful patch I h= ave constructed does this conservatively by changing the single line of cod= e just displayed to be

        (let* ((cmdlist (list-cmd-components cmd))=

where list-cmd-components is a newly written function that first extra= cts the (possibly) space-containing command path from the command-string wh= ile preserving it unchanged, and then calls function split-string-and-unquo= te on the remainder of the command-string (if any) to separate the command = arguments (if any).

I've attached to this e-mail a patch file, Emacs-Bugfix.el, containing= the revised definition of function python-shell-make-comint and the new de= finition of function list-cmd-components.  When loaded after python.el= , this patch file fixes the bug.

  --  Lew Creary

----------MB_8D05D130FFED31D_8E4_56837_webmailstg-d03.sysops.aol.com-- ----------MB_8D05D130FFED31D_8E4_56836_webmailstg-d03.sysops.aol.com Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Emacs-Bugfix.el" Content-Type: application/octet-stream; name="Emacs-Bugfix.el" OyAtKi1FbWFjcy1MaXNwLSotDQo7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ow0KOw0KOyBGaWxlOiAg ICAgICAgIEVtYWNzLUJ1Z2ZpeC5lbA0KOyBEZXNjcmlwdGlvbjogIE5ldyBkZWZ1bnMgdG8gZml4 IGEgYnVnIGluIGZ1bmN0aW9uIHB5dGhvbi1zaGVsbC1tYWtlLWNvbWludA0KOyBBdXRob3I6ICAg ICAgIExldyBDcmVhcnkNCjsgQ3JlYXRlZDogICAgICBTdW4gSnVsIDI4IDIxOjE3OjM0IDIwMTMN CjsgTW9kaWZpZWQ6ICAgICBUaHUgQXVnICAxIDAxOjUzOjIwIDIwMTMgKExldyBDcmVhcnkpIExl dyBDcmVhcnlASE9NRS1QQw0KOyBMYW5ndWFnZTogICAgIEdOVS1FbWFjcyBMaXNwIChHTlUtRW1h Y3MgdmVyc2lvbiAyNC4zLjEpDQo7DQo7IChjKSBDb3B5cmlnaHQgMjAxMywgTGV3aXMgRy4gQ3Jl YXJ5Ow0KOyAgICAgQWxsIHJpZ2h0cyBncmFudGVkIHRvIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgSW5jLg0KOyAgICAgQ29weWluZyBhbmQgZGlzdHJpYnV0aW9uIG9mIHRoaXMgZmlsZSwgd2l0 aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlDQo7ICAgICBwZXJtaXR0ZWQgcHJvdmlkZWQg dGhlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgbm90aWNlIGFyZSBwcmVzZXJ2ZWQuDQo7DQo7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ow0KDQo7IFRoaXMgZmlsZSBjb250YWlucyBkZWZpbml0aW9u cyBvZiB0d28gR05VLUVtYWNzIExpc3AgZnVuY3Rpb25zIChvbmUgbmV3LCBvbmUNCjsgcHJldmlv dXNseSBleGlzdGluZykgdGhhdCwgdG9nZXRoZXIsIGZpeCBhIGJ1ZyB3aXRoaW4gZnVuY3Rpb24g cnVuLXB5dGhvbiBpbg0KOyBHTlUtRW1hY3MsIHZlcnNpb24gMjQuMy4xLCBmaWxlOiBweXRob24u ZWwuICBNb3JlIHNwZWNpZmljYWxseSwgdGhlIGJ1Zw0KOyBvY2N1cnJlZCB3aXRoaW4gZnVuY3Rp b24gcHl0aG9uLXNoZWxsLW1ha2UtY29taW50LCB3aGljaCBpcyBjYWxsZWQgYnkNCjsgcnVuLXB5 dGhvbi4gIEJlY2F1c2UgZmlsZSBwYXRobmFtZXMgaW4gTVMtV2luZG93cyA3IChhbmQgb3RoZXIg dmVyc2lvbnMgb2YNCjsgTVMtV2luZG93cykgY2FuIGNvbnRhaW4gc3BhY2VzLCB0aGUgYnVnIGNh dXNlZCBzdWNoIHNwYWNlLWNvbnRhaW5pbmcNCjsgcGF0aG5hbWVzIHRvIGJlIG1hbmdsZWQgaW4g ZnVuY3Rpb24gcHl0aG9uLXNoZWxsLW1ha2UtY29taW50LCBsZWFkaW5nDQo7IHJ1bi1weXRob24g dG8gZmFpbCB3aXRoIHRoZSBlcnJvciBtZXNzYWdlICJTcGF3bmluZyBjaGlsZCBwcm9jZXNzOiBp bnZhbGlkDQo7IGFyZ3VtZW50Ii4NCg0KOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsNCg0KOyBUaGlz IGZ1bmN0aW9uIGlzIG5ld2x5IHdyaXR0ZW4sIGFuZCBpcyBjYWxsZWQgaW4gbGluZSA3NCBvZiB0 aGlzIGZpbGUsDQo7IHdpdGhpbiB0aGUgcmVkZWZpbmVkIGZ1bmN0aW9uIHB5dGhvbi1zaGVsbC1t YWtlLWNvbWludC4NCihkZWZ1biBsaXN0LWNtZC1jb21wb25lbnRzIChjbWQpDQogICJUaGlzIGZu IHNlcGFyYXRlcyB0aGUgYXJndW1lbnQgY29tbWFuZCBzdHJpbmcgaW50byBpdHMgc2VwYXJhdGUg Y29tcG9uZW50cywNCiAgIGFuZCByZXR1cm5zIGEgbGlzdCBvZiB0aG9zZSBjb21wb25lbnRzLiAg SXQgYXNzdW1lcyB0aGF0IHRoZSBhcmd1bWVudCBjbWQNCiAgIGNvbnRhaW5zIGF0IGxlYXN0IG9u ZSBjb21wb25lbnQsIHN0YXJ0aW5nIHdpdGggdGhlIHBhdGhuYW1lIGZvciBhbg0KICAgZXhlY3V0 YWJsZSBmaWxlIGVuZGluZyB3aXRoICcuZXhlJy4iDQogIChsZXQqICgoY21kLWxlbmd0aCAobGVu Z3RoIGNtZCkpDQoJIChwYXRoLWluZGV4IChzdHJpbmctbWF0Y2ggIlxcLmV4ZVxcKCBcXHxcXCdc XCkiIGNtZCkpDQoJIDsgVGhlIGFib3ZlIHBhdHRlcm4gbWF0Y2hlcyB0aGUgNC1jaGFyYWN0ZXIg c3RyaW5nICIuZXhlIiwgZm9sbG93ZWQNCgkgOyBpbW1lZGlhdGVseSBieSBlaXRoZXIgYSBzcGFj ZSwgb3IgdGhlIGVuZCBvZiB0aGUgY21kIHN0cmluZy4NCgkgKGNtZC1wYXRoIChzdWJzdHJpbmcg Y21kIDAgKCsgNCBwYXRoLWluZGV4KSkpDQoJIChjbWQtcmVtYWluZGVyIChpZiAoPiBjbWQtbGVu Z3RoICgrIDUgcGF0aC1pbmRleCkpDQoJCQkgIChzdWJzdHJpbmcgY21kICgrIDUgcGF0aC1pbmRl eCkpDQoJCQkgIG5pbCApKSApDQogICAgKGlmIGNtZC1yZW1haW5kZXINCiAgICAgIChhcHBlbmQg KGxpc3QgY21kLXBhdGgpIChzcGxpdC1zdHJpbmctYW5kLXVucXVvdGUgY21kLXJlbWFpbmRlcikp DQogICAgICAobGlzdCBjbWQtcGF0aCkgKSkpDQoNCjsgVHlwaWNhbCB1c2FnZSBvZiBweXRob24t c2hlbGwtbWFrZS1jb21pbnQ6DQo7IChweXRob24tc2hlbGwtbWFrZS1jb21pbnQNCjsgICAgICAi YzovUHJvZ3JhbSBGaWxlcyAoeDg2KS9QeXRob24vUHl0aG9uMzEvcHl0aG9uLmV4ZSAtaSIgIlB5 dGhvbiIgdCkNCg0KOyBUaGlzIGlzIGEgcmVkZWZpbml0aW9uIG9mIGEgcHJldmlvdXNseSBleGlz dGluZyBmdW5jdGlvbi4gIFRoZSBjaGFuZ2UNCjsgY29uc2lzdHMgc29sZWx5IG9mIGNoYW5naW5n IGEgc2luZ2xlIGZ1bmN0aW9uIGNhbGwgKGxpbmUgNzQgb2YgdGhpcyBmaWxlKQ0KOyBmcm9tIHNw bGl0LXN0cmluZy1hbmQtdW5xdW90ZSAodGhlIHByZXZpb3VzIGNhbGwpIHRvIHRoZSBuZXcgZnVu Y2lvbg0KOyBsaXN0LWNtZC1jb21wb25lbnRzICh3aGljaCBpbiB0dXJuIGNhbGxzIHNwbGl0LXN0 cmluZy1hbmQtdW5xdW90ZSkuDQooZGVmdW4gcHl0aG9uLXNoZWxsLW1ha2UtY29taW50IChjbWQg cHJvYy1uYW1lICZvcHRpb25hbCBwb3AgaW50ZXJuYWwpDQogICJDcmVhdGUgYSBweXRob24gc2hl bGwgY29taW50IGJ1ZmZlci4NCkNNRCBpcyB0aGUgcHl0aG9uIGNvbW1hbmQgdG8gYmUgZXhlY3V0 ZWQgYW5kIFBST0MtTkFNRSBpcyB0aGUNCnByb2Nlc3MgbmFtZSB0aGUgY29taW50IGJ1ZmZlciB3 aWxsIGdldC4gIEFmdGVyIHRoZSBjb21pbnQgYnVmZmVyDQppcyBjcmVhdGVkIHRoZSBgaW5mZXJp b3ItcHl0aG9uLW1vZGUnIGlzIGFjdGl2YXRlZC4gIFdoZW4NCm9wdGlvbmFsIGFyZ3VtZW50IFBP UCBpcyBub24tbmlsIHRoZSBidWZmZXIgaXMgc2hvd24uICBXaGVuDQpvcHRpb25hbCBhcmd1bWVu dCBJTlRFUk5BTCBpcyBub24tbmlsIHRoaXMgcHJvY2VzcyBpcyBydW4gb24gYQ0KYnVmZmVyIHdp dGggYSBuYW1lIHRoYXQgc3RhcnRzIHdpdGggYSBzcGFjZSwgZm9sbG93aW5nIHRoZSBFbWFjcw0K Y29udmVudGlvbiBmb3IgdGVtcG9yYXJ5L2ludGVybmFsIGJ1ZmZlcnMsIGFuZCBhbHNvIG1ha2Vz IHN1cmUNCnRoZSB1c2VyIGlzIG5vdCBxdWVyaWVkIGZvciBjb25maXJtYXRpb24gd2hlbiB0aGUg cHJvY2VzcyBpcw0Ka2lsbGVkLiINCiAgKHNhdmUtZXhjdXJzaW9uDQogICAgKGxldCogKChwcm9j LWJ1ZmZlci1uYW1lDQogICAgICAgICAgICAoZm9ybWF0IChpZiAobm90IGludGVybmFsKSAiKiVz KiIgIiAqJXMqIikgcHJvYy1uYW1lKSkNCiAgICAgICAgICAgKHByb2Nlc3MtZW52aXJvbm1lbnQg KHB5dGhvbi1zaGVsbC1jYWxjdWxhdGUtcHJvY2Vzcy1lbnZpcm9ubWVudCkpDQogICAgICAgICAg IChleGVjLXBhdGggKHB5dGhvbi1zaGVsbC1jYWxjdWxhdGUtZXhlYy1wYXRoKSkpDQogICAgICAo d2hlbiAobm90IChjb21pbnQtY2hlY2stcHJvYyBwcm9jLWJ1ZmZlci1uYW1lKSkNCiAgICAgICAg KGxldCogKChjbWRsaXN0IChsaXN0LWNtZC1jb21wb25lbnRzIGNtZCkpDQogICAgICAgICAgICAg ICAoYnVmZmVyIChhcHBseSAjJ21ha2UtY29taW50LWluLWJ1ZmZlciBwcm9jLW5hbWUgcHJvYy1i dWZmZXItbmFtZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNhciBjbWRsaXN0KSBu aWwgKGNkciBjbWRsaXN0KSkpDQogICAgICAgICAgICAgICAocHl0aG9uLXNoZWxsLS1wYXJlbnQt YnVmZmVyIChjdXJyZW50LWJ1ZmZlcikpDQogICAgICAgICAgICAgICAocHJvY2VzcyAoZ2V0LWJ1 ZmZlci1wcm9jZXNzIGJ1ZmZlcikpKQ0KICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1 ZmZlcg0KICAgICAgICAgICAgKGluZmVyaW9yLXB5dGhvbi1tb2RlKSkNCiAgICAgICAgICAoYWNj ZXB0LXByb2Nlc3Mtb3V0cHV0IHByb2Nlc3MpDQogICAgICAgICAgKGFuZCBwb3AgKHBvcC10by1i dWZmZXIgYnVmZmVyIHQpKQ0KICAgICAgICAgIChhbmQgaW50ZXJuYWwgKHNldC1wcm9jZXNzLXF1 ZXJ5LW9uLWV4aXQtZmxhZyBwcm9jZXNzIG5pbCkpKSkNCiAgICAgIHByb2MtYnVmZmVyLW5hbWUp KSkNCg0KOztUaGUgZm9sbG93aW5nIGNvbW1lbnRlZC1vdXQgZnVuY3Rpb24gZGVmaW5pdGlvbiBv ZiBzcGxpdC1zdHJpbmctYW5kLXVucXVvdGUNCjs7ICAocGxhY2VkIGhlcmUgZm9yIHJlZmVyZW5j ZSBvbmx5KSByZW1haW5zIHVuY2hhbmdlZC4NCjs7KGRlZnVuIHNwbGl0LXN0cmluZy1hbmQtdW5x dW90ZSAoc3RyaW5nICZvcHRpb25hbCBzZXBhcmF0b3IpDQo7OyAgIlNwbGl0IHRoZSBTVFJJTkcg aW50byBhIGxpc3Qgb2Ygc3RyaW5ncy4NCjs7SXQgdW5kZXJzdGFuZHMgRW1hY3MgTGlzcCBxdW90 aW5nIHdpdGhpbiBTVFJJTkcsIHN1Y2ggdGhhdA0KOzsgIChzcGxpdC1zdHJpbmctYW5kLXVucXVv dGUgKGNvbWJpbmUtYW5kLXF1b3RlLXN0cmluZ3Mgc3RycykpID09IHN0cnMNCjs7VGhlIFNFUEFS QVRPUiByZWdleHAgZGVmYXVsdHMgdG8gXCJcXHMtK1wiLiINCjs7ICAobGV0ICgoc2VwIChvciBz ZXBhcmF0b3IgIlxccy0rIikpDQo7OwkoaSAoc3RyaW5nLW1hdGNoICJcIiIgc3RyaW5nKSkpDQo7 OyAgICAoaWYgKG51bGwgaSkNCjs7CShzcGxpdC1zdHJpbmcgc3RyaW5nIHNlcCB0KQk7IG5vIHF1 b3Rpbmc6ICBlYXN5DQo7OyAgICAgIChhcHBlbmQgKHVubGVzcyAoZXEgaSAwKSAoc3BsaXQtc3Ry aW5nIChzdWJzdHJpbmcgc3RyaW5nIDAgaSkgc2VwIHQpKQ0KOzsJICAgICAgKGxldCAoKHJmcyAo cmVhZC1mcm9tLXN0cmluZyBzdHJpbmcgaSkpKQ0KOzsJCShjb25zIChjYXIgcmZzKQ0KOzsJCSAg ICAgIChzcGxpdC1zdHJpbmctYW5kLXVucXVvdGUgKHN1YnN0cmluZyBzdHJpbmcgKGNkciByZnMp KQ0KOzsJCQkJCQlzZXApKSkpKSkpDQoNCjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyAgRW5k IG9mIEVtYWNzLUJ1Z2ZpeC5lbCAgOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7DQo= ----------MB_8D05D130FFED31D_8E4_56836_webmailstg-d03.sysops.aol.com--