From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mark Harig Newsgroups: gmane.lisp.guile.devel Subject: Re: Patch: New section "Invoking Guile" for chapter "Programming in Scheme" Date: Sun, 24 Apr 2011 16:36:12 -0400 Message-ID: <8CDD0D662A18273-1820-10289@webmail-m029.sysops.aol.com> References: <8CDD0063C9BEB29-FC8-5987@web-mmc-d08.sysops.aol.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="--------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com" X-Trace: dough.gmane.org 1303677421 18047 80.91.229.12 (24 Apr 2011 20:37:01 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 24 Apr 2011 20:37:01 +0000 (UTC) Cc: guile-devel@gnu.org To: wingo@pobox.com Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sun Apr 24 22:36:55 2011 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QE632-00080P-BX for guile-devel@m.gmane.org; Sun, 24 Apr 2011 22:36:53 +0200 Original-Received: from localhost ([::1]:55001 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QE631-0005GS-9a for guile-devel@m.gmane.org; Sun, 24 Apr 2011 16:36:51 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:51985) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QE62u-0005FQ-M3 for guile-devel@gnu.org; Sun, 24 Apr 2011 16:36:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QE62q-0006Da-6U for guile-devel@gnu.org; Sun, 24 Apr 2011 16:36:44 -0400 Original-Received: from imr-ma05.mx.aol.com ([64.12.100.31]:32879) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QE62q-0006D0-13 for guile-devel@gnu.org; Sun, 24 Apr 2011 16:36:40 -0400 Original-Received: from imo-ma02.mx.aol.com (imo-ma02.mx.aol.com [64.12.78.137]) by imr-ma05.mx.aol.com (8.14.1/8.14.1) with ESMTP id p3OKaPZj010412; Sun, 24 Apr 2011 16:36:25 -0400 Original-Received: from idirectscm@aim.com by imo-ma02.mx.aol.com (mail_out_v42.9.) id w.1046.5bc3947 (45501); Sun, 24 Apr 2011 16:36:16 -0400 (EDT) Original-Received: from smtprly-dd03.mx.aol.com (smtprly-dd03.mx.aol.com [205.188.84.131]) by cia-mc08.mx.aol.com (v129.10) with ESMTP id MAILCIAMC088-d4084db489bcf; Sun, 24 Apr 2011 16:36:16 -0400 Original-Received: from webmail-m029 (webmail-m029.sim.aol.com [64.12.101.212]) by smtprly-dd03.mx.aol.com (v129.10) with ESMTP id MAILSMTPRLYDD034-d4084db489bcf; Sun, 24 Apr 2011 16:36:12 -0400 X-AOL-IP: 98.185.24.91 In-Reply-To: X-MB-Message-Source: WebUI Original-Received: from 98.185.24.91 by webmail-m029.sysops.aol.com (64.12.101.212) with HTTP (WebMailUI); Sun, 24 Apr 2011 16:36:12 -0400 X-MB-Message-Type: User X-Mailer: AIM WebMail 33636-STANDARD X-AOL-VSS-CODE: clean X-AOL-VSS-INFO: 5400.1158/0 X-AOL-SENDER: idirectscm@aim.com X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 64.12.100.31 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:12330 Archived-At: ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com Content-Type: multipart/alternative; boundary="--------MB_8CDD0D662B6EEDC_1820_1C1C0_webmail-m029.sysops.aol.com" ----------MB_8CDD0D662B6EEDC_1820_1C1C0_webmail-m029.sysops.aol.com Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" On Sun, Apr 24, 2011 at 04:33:44PM +0200, Andy Wingo wrote: > On Sat 23 Apr 2011 21:46, Mark Harig writes: >=20 > > Here is a set of patches to add the new section "Invoking Guile" to > > the chapter "Programming in Scheme." >=20 > They look good in general, though I have some comments. I would like > Neil to look over them as well, or at least say he's OK with them. >=20 > First, your patches should be "atomic"; see > http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#patch-s= eries > for some commentary. In particular see point 3. The manual should be > working after each patch. >From that web page: "3. No patch introduces a regression: after applying any initial part of the series, the resulting project still compiles and works, and has no bugs that it didn=E2=80=99t have before." I have generated both a guile.info and a guile.dvi file for these changes and confirmed that there are no errors that prevent these files from being generated. Here are the versions of the tools that I used: $ makeinfo --version makeinfo (GNU texinfo) 4.13 $ texi2dvi --version texi2dvi (GNU Texinfo 4.13) 1.135 Patches 0004 and 0005 from my original message are atomic and may *each* be reviewed, and rejected or committed independent of the other patches. They corrected errors in other parts of the manual that I found while reviewing the changes I was making. >=20 > The commit logs are good. >=20 > > +@item -s @var{script} @var{arg...} > > +@cindex script mode > > +Read and evaluate Scheme source code from the file @var{script}, as= the > > +@code{load} function would. After loading @var{script}, exit. Any > > +command-line arguments @var{arg...} following @var{script} become the > > +script's arguments; the @code{command-line} function returns a list= of > > +strings of the form @code{(@var{script} @var{arg...})}. >=20 > The "-s" is actually optional, and only *needed* if your script starts > with a dash. So please document "guile foo.scm" as the default, and > just mention "-s" in case of the script starting with a dash, or if you > are writing some other shell script. OK. The description of "-s" was a copy of the original. I have written an updated description based on your comments. Please review the new description. > Use @itemx in this case, I think. After reading the description of @itemx in the Texinfo manual, I have left this unchanged. @itemx is to be used when there are more than a single table item for a given description. If you still think that this is needed, then I need additional clarification. >=20 > > +strings, even those that are written as numerals. (Note that here we > > +are referring to names and values that are defined in the operating > > +system shell from which Guile is invoked. This is not the same as a > > +Scheme environment that is defined within a running instance of guile= . >=20 > "Guile", I think. Corrected. >=20 > > +How to set environment variables before starting Guile depends on the > > +operating system, and especially the shell that you are using. For > > +example, here's how to set the environment variable @env{ORGANIZATION= } > > +to @samp{not very much} using Bash: > > + > > +@example > > +export ORGANIZATION=3D"not very much" > > +@end example > > + > > +@noindent > > +and here's how to do it in csh or tcsh: > > + > > +@example > > +setenv ORGANIZATION "not very much" > > +@end example >=20 > Perhaps the tcsh example is superfluous. Perhaps we should also mention > the way to set env vars for one invocation: "GUILE_AUTO_COMPILE=3D0 > guile". >=20 Deleted the tcsh example, added a Bash example, and updated the descriptive text. Please review. > > +If you wish to retrieve or change the value of the shell environment > > +variables that effect the run-time behavior of Guile from within a > > +running instance of guile, see @xref{Runtime Environment}. >=20 > "affect" >=20 Corrected. > > +@item GUILE_HUSH > > +@vindex GUILE_HUSH > > +The @code{#/} notation for lists provokes a warning message from Guil= e. > > +This syntax will be removed from Guile in the near future. > > + > > +To disable the warning message, set the @env{GUILE_HUSH} environment > > +variable to any non-empty value. >=20 > This variable does not exist. >=20 Deleted. > > +@item GUILE_INIT_MALLOC_LIMIT > > +@vindex GUILE_INIT_MALLOC_LIMIT > > +@item GUILE_MIN_YIELD_MALLOC > > +@vindex GUILE_MIN_YIELD_MALLOC > > +@cindex garbage collecting > > +@item GUILE_MAX_SEGMENT_SIZE > > +@vindex GUILE_MAX_SEGMENT_SIZE > > +@item GUILE_INIT_SEGMENT_SIZE_2 > > +@vindex GUILE_INIT_SEGMENT_SIZE_2 > > +@item GUILE_INIT_SEGMENT_SIZE_1 > > +@vindex GUILE_INIT_SEGMENT_SIZE_1 > > +@item GUILE_MIN_YIELD_2 > > +@vindex GUILE_MIN_YIELD_2 >=20 > Since switching to the BDW GC, these variables are not used any more. >=20 > GC_FREE_SPACE_DIVISOR is parsed by Guile though. The GC itself does > appear to do a number of getenv calls, but we can't really document > those in Guile I don't think. >=20 Deleted. > > +@item GUILE_SYSTEM_LOAD_COMPILED_PATH > > +@item GUILE_SYSTEM_PATH > > +@item GUILE_SYSTEM_LTDL_PATH >=20 > These are paths that Guile itself uses to look up .go, .scm, and .so > files, respectively. They have default values, relative to $prefix, but > can be overridden if you really know what you're doing. This is only > really useful when building Guile itself. >=20 Deleted. (From what you have written, it sounds as though someone knowledgeable about the Guile construction and installation process should document these elsewhere.) > > +@item GUILE_INIT_SEGMENT_SIZE_1 > > +@item GUILE_MIN_YIELD_1 > > +@item GUILE_INIT_SEGMENT_SIZE_2 > > +@item GUILE_MIN_YIELD_2 > > +@item GUILE_MAX_SEGMENT_SIZE > > +@item GUILE_INIT_HEAP_SIZE_1 > > +@item GUILE_INIT_HEAP_SIZE_2 >=20 > Not used any more. >=20 Deleted. > > +@item GUILE_WARN_DEPRECATED > > +@vindex GUILE_WARN_DEPRECATED > > +Please provide a description of me. >=20 > @ref to Deprecation. >=20 I wrote a description based on my understanding from the 'Deprecation' node. Please review. >=20 > Otherwise, looking very good. Thank you for this work, and looking > forward to the revised patchset :-) >=20 Please find the three revised patches attached. After checking in the changes, I generated the new patches with: git format-patch origin 0001-doc-ref-guile.texi-node-Programming-in-Scheme-Added-.patch 0002-doc-ref-scheme-scripts.texi-node-Guile-Scripting-Del.patch 0003-doc-ref-guile-invoke.texi-node-Invoking-Guile-Initia.patch Please also find attached an updated version of the plain text generated for the new node. -- ----------MB_8CDD0D662B6EEDC_1820_1C1C0_webmail-m029.sysops.aol.com Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="utf-8"

----------MB_8CDD0D662B6EEDC_1820_1C1C0_webmail-m029.sysops.aol.com-- ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-doc-ref-guile.texi-node-Programming-in-Scheme-Added-.patch" Content-Type: text/x-patch; name="0001-doc-ref-guile.texi-node-Programming-in-Scheme-Added-.patch"; charset="UTF-8" RnJvbSA2MGUzOTEzNmIwOTg2M2FjMDYyMjlhNGIwMGQzOTIzMmUwNTA1NWU1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIEhhcmlnIDxpZGlyZWN0c2NtQGFpbS5jb20+CkRhdGU6 IFN1biwgMjQgQXByIDIwMTEgMTU6NDc6NDggLTA0MDAKU3ViamVjdDogW1BBVENIIDEvM10gKiBk b2MvcmVmL2d1aWxlLnRleGkgKG5vZGUgUHJvZ3JhbW1pbmcgaW4gU2NoZW1lKTogQWRkZWQKIG1l bnUgZW50cnkgZm9yICAgdGhlIG5ldyBzZWN0aW9uICJJbnZva2luZyBHdWlsZSIgdG8KIHRoZSBj aGFwdGVyICJQcm9ncmFtbWluZyBpbiAgIFNjaGVtZSIuICBBZGRlZAogJ0BpbmNsdWRlJyB0byBh ZGQgdGhlIG5ldyBmaWxlICdndWlsZS1pbnZva2UudGV4aScsICAKIHdoaWNoIGhhcyB0aGUgbmV3 IHNlY3Rpb24uCgotLS0KIGRvYy9yZWYvZ3VpbGUudGV4aSB8ICAgMTAgKysrKysrLS0tLQogMSBm aWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZG9jL3JlZi9ndWlsZS50ZXhpIGIvZG9jL3JlZi9ndWlsZS50ZXhpCmluZGV4IGRmYWRkMTMu LjMwYjZkMTQgMTAwNjQ0Ci0tLSBhL2RvYy9yZWYvZ3VpbGUudGV4aQorKysgYi9kb2MvcmVmL2d1 aWxlLnRleGkKQEAgLTIxNywyMCArMjE3LDIyIEBAIEd1aWxlJ3MgY29yZSBsYW5ndWFnZSBpcyBT Y2hlbWUsIGFuZCBhIGxvdCBjYW4gYmUgYWNoaWV2ZWQgc2ltcGx5IGJ5IHVzaW5nIEd1aWxlCiB0 byB3cml0ZSBhbmQgcnVuIFNjaGVtZSBwcm9ncmFtcyAtLS0gYXMgb3Bwb3NlZCB0byBoYXZpbmcg dG8gZGl2ZSBpbnRvIEMgY29kZS4KIEluIHRoaXMgcGFydCBvZiB0aGUgbWFudWFsLCB3ZSBleHBs YWluIGhvdyB0byB1c2UgR3VpbGUgaW4gdGhpcyBtb2RlLCBhbmQKIGRlc2NyaWJlIHRoZSB0b29s cyB0aGF0IEd1aWxlIHByb3ZpZGVzIHRvIGhlbHAgeW91IHdpdGggc2NyaXB0IHdyaXRpbmcsCi1k ZWJ1Z2dpbmcgYW5kIHBhY2thZ2luZyB5b3VyIHByb2dyYW1zIGZvciBkaXN0cmlidXRpb24uCitk ZWJ1Z2dpbmcsIGFuZCBwYWNrYWdpbmcgeW91ciBwcm9ncmFtcyBmb3IgZGlzdHJpYnV0aW9uLgog Ci1Gb3IgZGV0YWlsZWQgcmVmZXJlbmNlIGluZm9ybWF0aW9uIG9uIHRoZSB2YXJpYWJsZXMsIGZ1 bmN0aW9ucwotZXRjLiB0aGF0IG1ha2UgdXAgR3VpbGUncyBhcHBsaWNhdGlvbiBwcm9ncmFtbWlu ZyBpbnRlcmZhY2UgKEFQSSksCi1AeHJlZntBUEkgUmVmZXJlbmNlfS4KK0ZvciBkZXRhaWxlZCBy ZWZlcmVuY2UgaW5mb3JtYXRpb24gb24gdGhlIHZhcmlhYmxlcywgZnVuY3Rpb25zLCBhbmQgc28K K29uIHRoYXQgbWFrZSB1cCBHdWlsZSdzIGFwcGxpY2F0aW9uIHByb2dyYW1taW5nIGludGVyZmFj ZSAoQVBJKSwgc2VlCitAcmVme0FQSSBSZWZlcmVuY2V9LgogCiBAbWVudQogKiBHdWlsZSBTY2hl bWU6OiAgICAgICAgICAgICAgICBHdWlsZSdzIGltcGxlbWVudGF0aW9uIG9mIFNjaGVtZS4KKyog SW52b2tpbmcgR3VpbGU6OiAgICAgICAgICAgICAgU2VsZWN0aW5nIG9wdGlvbmFsIGZlYXR1cmVz IHdoZW4gc3RhcnRpbmcgR3VpbGUuCiAqIEd1aWxlIFNjcmlwdGluZzo6ICAgICAgICAgICAgIEhv dyB0byB3cml0ZSBHdWlsZSBzY3JpcHRzLgogKiBVc2luZyBHdWlsZSBJbnRlcmFjdGl2ZWx5Ojog ICBHdWlsZSdzIFJFUEwgZmVhdHVyZXMuCiAqIFVzaW5nIEd1aWxlIGluIEVtYWNzOjogICAgICAg IEd1aWxlIGFuZCBFbWFjcy4KIEBlbmQgbWVudQogCiBAaW5jbHVkZSBzY2hlbWUtaW50cm8udGV4 aQorQGluY2x1ZGUgZ3VpbGUtaW52b2tlLnRleGkKIEBpbmNsdWRlIHNjaGVtZS1zY3JpcHRzLnRl eGkKIEBpbmNsdWRlIHNjaGVtZS11c2luZy50ZXhpCiAKLS0gCjEuNy40LjQKCg== ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0002-doc-ref-scheme-scripts.texi-node-Guile-Scripting-Del.patch" Content-Type: text/x-patch; name="0002-doc-ref-scheme-scripts.texi-node-Guile-Scripting-Del.patch"; charset="UTF-8" RnJvbSA0YjEwNjdmMDk4ZTI1Y2IxYmQ3YTY1NmVkZjdhYzg5M2M5MDBhYTdlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIEhhcmlnIDxpZGlyZWN0c2NtQGFpbS5jb20+CkRhdGU6 IFN1biwgMjQgQXByIDIwMTEgMTU6NDk6NDYgLTA0MDAKU3ViamVjdDogW1BBVENIIDIvM10gKiBk b2MvcmVmL3NjaGVtZS1zY3JpcHRzLnRleGkgKG5vZGUgR3VpbGUgU2NyaXB0aW5nKToKIERlbGV0 ZWQgdGhlIG1lbnUgICBlbnRyeSBmb3IgdGhlIHNlY3Rpb24gIkludm9raW5nCiBHdWlsZS4iICBE ZWxldGVkIHRoZSBub2RlIGFuZCAgIHN1YnNlY3Rpb24gIkludm9raW5nCiBHdWlsZS4iICBUaGlz IG5vZGUgaGFzIGJlZW4gbW92ZWQgdG8gdGhlIG5ldyBmaWxlICAKICdkb2MvcmVmL2d1aWxlLWlu dm9rZS50ZXhpJy4KCi0tLQogZG9jL3JlZi9zY2hlbWUtc2NyaXB0cy50ZXhpIHwgIDE2OCAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGVzIGNoYW5nZWQs IDAgaW5zZXJ0aW9ucygrKSwgMTY4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9yZWYv c2NoZW1lLXNjcmlwdHMudGV4aSBiL2RvYy9yZWYvc2NoZW1lLXNjcmlwdHMudGV4aQppbmRleCAw YWQxYmVjLi43NTUyZGJhIDEwMDY0NAotLS0gYS9kb2MvcmVmL3NjaGVtZS1zY3JpcHRzLnRleGkK KysrIGIvZG9jL3JlZi9zY2hlbWUtc2NyaXB0cy50ZXhpCkBAIC0xNCw3ICsxNCw2IEBAIHRoZW4g dGVsbHMgR3VpbGUgaG93IHRvIGhhbmRsZSB0aGUgU2NoZW1lIGNvZGUuCiAKIEBtZW51CiAqIFRo ZSBUb3Agb2YgYSBTY3JpcHQgRmlsZTo6ICAgIEhvdyB0byBzdGFydCBhIEd1aWxlIHNjcmlwdC4K LSogSW52b2tpbmcgR3VpbGU6OiAgICAgICAgICAgICAgQ29tbWFuZCBsaW5lIG9wdGlvbnMgdW5k ZXJzdG9vZCBieSBHdWlsZS4KICogVGhlIE1ldGEgU3dpdGNoOjogICAgICAgICAgICAgUGFzc2lu ZyBjb21wbGV4IGFyZ3VtZW50IGxpc3RzIHRvIEd1aWxlCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZyb20gc2hlbGwgc2NyaXB0cy4KICogQ29tbWFuZCBMaW5lIEhhbmRsaW5nOjog ICAgICAgQWNjZXNzaW5nIHRoZSBjb21tYW5kIGxpbmUgZnJvbSBhIHNjcmlwdC4KQEAgLTc2LDE3 MyArNzUsNiBAQCBUaGUgcmVzdCBvZiB0aGUgZmlsZSBzaG91bGQgYmUgYSBTY2hlbWUgcHJvZ3Jh bS4KIEd1aWxlIHJlYWRzIHRoZSBwcm9ncmFtLCBldmFsdWF0aW5nIGV4cHJlc3Npb25zIGluIHRo ZSBvcmRlciB0aGF0IHRoZXkKIGFwcGVhci4gIFVwb24gcmVhY2hpbmcgdGhlIGVuZCBvZiB0aGUg ZmlsZSwgR3VpbGUgZXhpdHMuCiAKLQotQG5vZGUgSW52b2tpbmcgR3VpbGUKLUBzdWJzZWN0aW9u IEludm9raW5nIEd1aWxlCi1AY2luZGV4IGludm9jYXRpb24KLQotSGVyZSB3ZSBkZXNjcmliZSBH dWlsZSdzIGNvbW1hbmQtbGluZSBwcm9jZXNzaW5nIGluIGRldGFpbC4gIEd1aWxlCi1wcm9jZXNz ZXMgaXRzIGFyZ3VtZW50cyBmcm9tIGxlZnQgdG8gcmlnaHQsIHJlY29nbml6aW5nIHRoZSBzd2l0 Y2hlcwotZGVzY3JpYmVkIGJlbG93LiAgRm9yIGV4YW1wbGVzLCBzZWUgQHJlZntTY3JpcHRpbmcg RXhhbXBsZXN9LgotCi1AdGFibGUgQGNvZGUKLQotQGl0ZW0gLXMgQHZhcntzY3JpcHR9IEB2YXJ7 YXJnLi4ufQotUmVhZCBhbmQgZXZhbHVhdGUgU2NoZW1lIHNvdXJjZSBjb2RlIGZyb20gdGhlIGZp bGUgQHZhcntzY3JpcHR9LCBhcyB0aGUKLUBjb2Rle2xvYWR9IGZ1bmN0aW9uIHdvdWxkLiAgQWZ0 ZXIgbG9hZGluZyBAdmFye3NjcmlwdH0sIGV4aXQuICBBbnkKLWNvbW1hbmQtbGluZSBhcmd1bWVu dHMgQHZhcnthcmcuLi59IGZvbGxvd2luZyBAdmFye3NjcmlwdH0gYmVjb21lIHRoZQotc2NyaXB0 J3MgYXJndW1lbnRzOyB0aGUgQGNvZGV7Y29tbWFuZC1saW5lfSBmdW5jdGlvbiByZXR1cm5zIGEg bGlzdCBvZgotc3RyaW5ncyBvZiB0aGUgZm9ybSBAY29kZXsoQHZhcntzY3JpcHR9IEB2YXJ7YXJn Li4ufSl9LgotCi1AaXRlbSAtYyBAdmFye2V4cHJ9IEB2YXJ7YXJnLi4ufQotRXZhbHVhdGUgQHZh cntleHByfSBhcyBTY2hlbWUgY29kZSwgYW5kIHRoZW4gZXhpdC4gIEFueSBjb21tYW5kLWxpbmUK LWFyZ3VtZW50cyBAdmFye2FyZy4uLn0gZm9sbG93aW5nIEB2YXJ7ZXhwcn0gYmVjb21lIGNvbW1h bmQtbGluZSBhcmd1bWVudHM7IHRoZQotQGNvZGV7Y29tbWFuZC1saW5lfSBmdW5jdGlvbiByZXR1 cm5zIGEgbGlzdCBvZiBzdHJpbmdzIG9mIHRoZSBmb3JtCi1AY29kZXsoQHZhcntndWlsZX0gQHZh cnthcmcuLi59KX0sIHdoZXJlIEB2YXJ7Z3VpbGV9IGlzIHRoZSBwYXRoIG9mIHRoZQotR3VpbGUg ZXhlY3V0YWJsZS4KLQotQGl0ZW0gLS0gQHZhcnthcmcuLi59Ci1SdW4gaW50ZXJhY3RpdmVseSwg cHJvbXB0aW5nIHRoZSB1c2VyIGZvciBleHByZXNzaW9ucyBhbmQgZXZhbHVhdGluZwotdGhlbS4g IEFueSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIEB2YXJ7YXJnLi4ufSBmb2xsb3dpbmcgdGhlIEBj b2Rley0tfQotYmVjb21lIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgZm9yIHRoZSBpbnRlcmFjdGl2 ZSBzZXNzaW9uOyB0aGUKLUBjb2Rle2NvbW1hbmQtbGluZX0gZnVuY3Rpb24gcmV0dXJucyBhIGxp c3Qgb2Ygc3RyaW5ncyBvZiB0aGUgZm9ybQotQGNvZGV7KEB2YXJ7Z3VpbGV9IEB2YXJ7YXJnLi4u fSl9LCB3aGVyZSBAdmFye2d1aWxlfSBpcyB0aGUgcGF0aCBvZiB0aGUKLUd1aWxlIGV4ZWN1dGFi bGUuCi0KLUBpdGVtIC1MIEB2YXJ7ZGlyZWN0b3J5fQotQWRkIEB2YXJ7ZGlyZWN0b3J5fSB0byB0 aGUgZnJvbnQgb2YgR3VpbGUncyBtb2R1bGUgbG9hZCBwYXRoLiAgVGhlCi1naXZlbiBkaXJlY3Rv cmllcyBhcmUgc2VhcmNoZWQgaW4gdGhlIG9yZGVyIGdpdmVuIG9uIHRoZSBjb21tYW5kIGxpbmUK LWFuZCBiZWZvcmUgYW55IGRpcmVjdG9yaWVzIGluIHRoZSBHVUlMRV9MT0FEX1BBVEggZW52aXJv bm1lbnQKLXZhcmlhYmxlLiAgUGF0aHMgYWRkZWQgaGVyZSBhcmUgQGVtcGh7bm90fSBpbiBlZmZl Y3QgZHVyaW5nIGV4ZWN1dGlvbgotb2YgdGhlIHVzZXIncyBAZmlsZXsuZ3VpbGV9IGZpbGUuCi0K LUBpdGVtIC14IEB2YXJ7ZXh0ZW5zaW9ufQotQWRkIEB2YXJ7ZXh0ZW5zaW9ufSB0byB0aGUgZnJv bnQgb2YgR3VpbGUncyBsb2FkIGV4dGVuc2lvbiBsaXN0Ci0oQHB4cmVme0xvYWRpbmcsIEBjb2Rl eyVsb2FkLWV4dGVuc2lvbnN9fSkuICBUaGUgc3BlY2lmaWVkIGV4dGVuc2lvbnMKLWFyZSB0cmll ZCBpbiB0aGUgb3JkZXIgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIGJlZm9yZSB0aGUg ZGVmYXVsdAotbG9hZCBleHRlbnNpb25zLiAgRXh0ZW5zaW9ucyBhZGRlZCBoZXJlIGFyZSBAZW1w aHtub3R9IGluIGVmZmVjdCBkdXJpbmcKLWV4ZWN1dGlvbiBvZiB0aGUgdXNlcidzIEBmaWxley5n dWlsZX0gZmlsZS4KLQotQGl0ZW0gLWwgQHZhcntmaWxlfQotTG9hZCBTY2hlbWUgc291cmNlIGNv ZGUgZnJvbSBAdmFye2ZpbGV9LCBhbmQgY29udGludWUgcHJvY2Vzc2luZyB0aGUKLWNvbW1hbmQg bGluZS4KLQotQGl0ZW0gLWUgQHZhcntmdW5jdGlvbn0KLU1ha2UgQHZhcntmdW5jdGlvbn0gdGhl IEBkZm57ZW50cnkgcG9pbnR9IG9mIHRoZSBzY3JpcHQuICBBZnRlciBsb2FkaW5nCi10aGUgc2Ny aXB0IGZpbGUgKHdpdGggQGNvZGV7LXN9KSBvciBldmFsdWF0aW5nIHRoZSBleHByZXNzaW9uICh3 aXRoCi1AY29kZXstY30pLCBhcHBseSBAdmFye2Z1bmN0aW9ufSB0byBhIGxpc3QgY29udGFpbmlu ZyB0aGUgcHJvZ3JhbSBuYW1lCi1hbmQgdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgLS0tIHRo ZSBsaXN0IHByb3ZpZGVkIGJ5IHRoZQotQGNvZGV7Y29tbWFuZC1saW5lfSBmdW5jdGlvbi4KLQot QSBAY29kZXstZX0gc3dpdGNoIGNhbiBhcHBlYXIgYW55d2hlcmUgaW4gdGhlIGFyZ3VtZW50IGxp c3QsIGJ1dCBHdWlsZQotYWx3YXlzIGludm9rZXMgdGhlIEB2YXJ7ZnVuY3Rpb259IGFzIHRoZSBA ZW1waHtsYXN0fSBhY3Rpb24gaXQgcGVyZm9ybXMuCi1UaGlzIGlzIHdlaXJkLCBidXQgYmVjYXVz ZSBvZiB0aGUgd2F5IHNjcmlwdCBpbnZvY2F0aW9uIHdvcmtzIHVuZGVyCi1QT1NJWCwgdGhlIEBj b2Rley1zfSBvcHRpb24gbXVzdCBhbHdheXMgY29tZSBsYXN0IGluIHRoZSBsaXN0LgotCi1UaGUg QHZhcntmdW5jdGlvbn0gaXMgbW9zdCBvZnRlbiBhIHNpbXBsZSBzeW1ib2wgdGhhdCBuYW1lcyBh IGZ1bmN0aW9uCi10aGF0IGlzIGRlZmluZWQgaW4gdGhlIHNjcmlwdC4gIEl0IGNhbiBhbHNvIGJl IG9mIHRoZSBmb3JtIEBjb2RleyhAQAotQHZhcnttb2R1bGUtbmFtZX0gQHZhcntzeW1ib2x9KX0g YW5kIGluIHRoYXQgY2FzZSwgdGhlIHN5bWJvbCBpcwotbG9va2VkIHVwIGluIHRoZSBtb2R1bGUg bmFtZWQgQHZhcnttb2R1bGUtbmFtZX0uCi0KLUZvciBjb21wYXRpYmlsaXR5IHdpdGggc29tZSB2 ZXJzaW9ucyBvZiBHdWlsZSAxLjQsIHlvdSBjYW4gYWxzbyB1c2UgdGhlCi1mb3JtIEBjb2Rleyhz eW1ib2wgLi4uKX0gKHRoYXQgaXMsIGEgbGlzdCBvZiBvbmx5IHN5bWJvbHMgdGhhdCBkb2Vzbid0 Ci1zdGFydCB3aXRoIEBjb2Rle0BAfSksIHdoaWNoIGlzIGVxdWl2YWxlbnQgdG8gQGNvZGV7KEBA IChzeW1ib2wgLi4uKQotbWFpbil9LCBvciBAY29kZXsoc3ltYm9sIC4uLikgIHN5bWJvbH0gKHRo YXQgaXMsIGEgbGlzdCBvZiBvbmx5IHN5bWJvbHMKLWZvbGxvd2VkIGJ5IGEgc3ltYm9sKSwgd2hp Y2ggaXMgZXF1aXZhbGVudCB0byBAY29kZXsoQEAgKHN5bWJvbCAuLi4pCi1zeW1ib2wpfS4gIFdl IHJlY29tbWVuZCB0byB1c2UgdGhlIGVxdWl2YWxlbnQgZm9ybXMgZGlyZWN0bHkgc2luY2UgdGhl eQotY29ycmVzcG9uZCB0byB0aGUgQGNvZGV7KEBAIC4uLil9ICByZWFkIHN5bnRheCB0aGF0IGNh biBiZSB1c2VkIGluCi1ub3JtYWwgY29kZSwgQHhyZWZ7VXNpbmcgR3VpbGUgTW9kdWxlc30uCi0K LUB4cmVme1NjcmlwdGluZyBFeGFtcGxlc30uCi0KLUBpdGVtIC1kcwotVHJlYXQgYSBmaW5hbCBA Y29kZXstc30gb3B0aW9uIGFzIGlmIGl0IG9jY3VycmVkIGF0IHRoaXMgcG9pbnQgaW4gdGhlCi1j b21tYW5kIGxpbmU7IGxvYWQgdGhlIHNjcmlwdCBoZXJlLgotCi1UaGlzIHN3aXRjaCBpcyBuZWNl c3NhcnkgYmVjYXVzZSwgYWx0aG91Z2ggdGhlIFBPU0lYIHNjcmlwdCBpbnZvY2F0aW9uCi1tZWNo YW5pc20gZWZmZWN0aXZlbHkgcmVxdWlyZXMgdGhlIEBjb2Rley1zfSBvcHRpb24gdG8gYXBwZWFy IGxhc3QsIHRoZQotcHJvZ3JhbW1lciBtYXkgd2VsbCB3YW50IHRvIHJ1biB0aGUgc2NyaXB0IGJl Zm9yZSBvdGhlciBhY3Rpb25zCi1yZXF1ZXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4gIEZvciBl eGFtcGxlcywgc2VlIEByZWZ7U2NyaXB0aW5nCi1FeGFtcGxlc30uCi0KLUBpdGVtIFwKLVJlYWQg bW9yZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzLCBzdGFydGluZyBmcm9tIHRoZSBzZWNvbmQgbGlu ZSBvZiB0aGUKLXNjcmlwdCBmaWxlLiAgQHhyZWZ7VGhlIE1ldGEgU3dpdGNofS4KLQotQGl0ZW0g LS11c2Utc3JmaT1AdmFye2xpc3R9Ci1UaGUgb3B0aW9uIEBjb2Rley0tdXNlLXNyZml9IGV4cGVj dHMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBudW1iZXJzLAotZWFjaCByZXByZXNlbnRpbmcg YSBTUkZJIG51bWJlciB0byBiZSBsb2FkZWQgaW50byB0aGUgaW50ZXJwcmV0ZXIKLWJlZm9yZSBz dGFydGluZyBldmFsdWF0aW5nIGEgc2NyaXB0IGZpbGUgb3IgdGhlIFJFUEwuICBBZGRpdGlvbmFs bHksCi10aGUgZmVhdHVyZSBpZGVudGlmaWVyIGZvciB0aGUgbG9hZGVkIFNSRklzIGlzIHJlY29n bml6ZWQgYnkKLWBjb25kLWV4cGFuZCcgd2hlbiB1c2luZyB0aGlzIG9wdGlvbi4KLQotQGV4YW1w bGUKLWd1aWxlIC0tdXNlLXNyZmk9OCwxMwotQGVuZCBleGFtcGxlCi0KLUBpdGVtIC0tZGVidWcK LVN0YXJ0IHdpdGggdGhlIGRlYnVnZ2luZyB2aXJ0dWFsIG1hY2hpbmUgZW5naW5lLiAgVXNpbmcg dGhlIGRlYnVnZ2luZyBWTQotd2lsbCBlbmFibGUgc3VwcG9ydCBmb3IgVk0gaG9va3MsIHdoaWNo IGFyZSBuZWVkZWQgZm9yIHRyYWNpbmcsCi1icmVha3BvaW50cywgYW5kIGFjY3VyYXRlIGNhbGwg Y291bnRzIHdoZW4gcHJvZmlsaW5nLiAgVGhlIGRlYnVnZ2luZyBWTQotaXMgc2xvd2VyIHRoYW4g dGhlIHJlZ3VsYXIgVk0sIHRob3VnaCwgYnkgYWJvdXQgMTAgcGVyY2VudC4gIEB4cmVme1ZNCi1I b29rc30sIGZvciBtb3JlIGluZm9ybWF0aW9uLgotCi1CeSBkZWZhdWx0LCB0aGUgZGVidWdnaW5n IFZNIGVuZ2luZSBpcyBvbmx5IHVzZWQgd2hlbiBlbnRlcmluZyBhbgotaW50ZXJhY3RpdmUgc2Vz c2lvbi4gIFdoZW4gZXhlY3V0aW5nIGEgc2NyaXB0IHdpdGggQGNvZGV7LXN9IG9yCi1AY29kZXst Y30sIHRoZSBub3JtYWwsIGZhc3RlciBWTSBpcyB1c2VkIGJ5IGRlZmF1bHQuCi0KLUB2bmV3ezEu OH0KLUBpdGVtIC0tbm8tZGVidWcKLURvIG5vdCB1c2UgdGhlIGRlYnVnZ2luZyBWTSBlbmdpbmUs IGV2ZW4gd2hlbiBlbnRlcmluZyBhbiBpbnRlcmFjdGl2ZQotc2Vzc2lvbi4KLQotQGl0ZW0gLXEK LURvIG5vdCB0aGUgbG9jYWwgaW5pdGlhbGl6YXRpb24gZmlsZSwgQGNvZGV7Lmd1aWxlfS4gIFRo aXMgb3B0aW9uIG9ubHkKLWhhcyBhbiBlZmZlY3Qgd2hlbiBydW5uaW5nIGludGVyYWN0aXZlbHk7 IHJ1bm5pbmcgc2NyaXB0cyBkb2VzIG5vdCBsb2FkCi10aGUgQGNvZGV7Lmd1aWxlfSBmaWxlLiAg QHhyZWZ7SW5pdCBGaWxlfS4KLQotQGl0ZW0gLS1saXN0ZW5bPUB2YXJ7cH1dCi1XaGlsZSB0aGlz IHByb2dyYW0gcnVucywgbGlzdGVuIG9uIGEgbG9jYWwgcG9ydCBvciBhIHBhdGggZm9yIFJFUEwK LWNsaWVudHMuICBJZiBAdmFye3B9IHN0YXJ0cyB3aXRoIGEgbnVtYmVyLCBpdCBpcyBhc3N1bWVk IHRvIGJlIGEgbG9jYWwKLXBvcnQgb24gd2hpY2ggdG8gbGlzdGVuLiAgSWYgaXQgc3RhcnRzIHdp dGggYSBmb3J3YXJkIHNsYXNoLCBpdCBpcwotYXNzdW1lZCB0byBiZSBhIHBhdGggdG8gYSBVTklY IGRvbWFpbiBzb2NrZXQgb24gd2hpY2ggdG8gbGlzdGVuLgotCi1JZiBAdmFye3B9IGlzIG5vdCBn aXZlbiwgdGhlIGRlZmF1bHQgaXMgbG9jYWwgcG9ydCAzNzE0Ni4gIElmIHlvdSBsb29rCi1hdCBp dCB1cHNpZGUgZG93biwgaXQgYWxtb3N0IHNwZWxscyBgYEd1aWxlJycuICBJZiB5b3UgaGF2ZSBu ZXRjYXQKLWluc3RhbGxlZCwgeW91IHNob3VsZCBiZSBhYmxlIHRvIEBrYmR7bmMgbG9jYWxob3N0 IDM3MTQ2fSBhbmQgZ2V0IGEKLUd1aWxlIHByb21wdC4gIEFsdGVybmF0ZWx5IHlvdSBjYW4gZmly ZSB1cCBFbWFjcyBhbmQgY29ubmVjdCB0byB0aGUKLXByb2Nlc3M7IHNlZSBAcmVme1VzaW5nIEd1 aWxlIGluIEVtYWNzfSBmb3IgbW9yZSBkZXRhaWxzLgotCi1Ob3RlIHRoYXQgb3BlbmluZyBhIHBv cnQgYWxsb3dzIGFueW9uZSB3aG8gY2FuIGNvbm5lY3QgdG8gdGhhdCBwb3J0LS0taW4KLXRoZSBU Q1AgY2FzZSwgYW55IGxvY2FsIHVzZXItLS10byBkbyBhbnl0aGluZyBHdWlsZSBjYW4gZG8sIGFz IHRoZSB1c2VyCi10aGF0IHRoZSBHdWlsZSBwcm9jZXNzIGlzIHJ1bm5pbmcgYXMuICBEb24ndCB1 c2UgQG9wdGlvbnstLWxpc3Rlbn0gb24KLW11bHRpLXVzZXIgbWFjaGluZXMuICBPZiBjb3Vyc2Us IGlmIHlvdSBkb24ndCBwYXNzIEBvcHRpb257LS1saXN0ZW59IHRvCi1HdWlsZSwgbm8gcG9ydCB3 aWxsIGJlIG9wZW5lZC4KLQotVGhhdCBzYWlkLCBAY29kZXstLWxpc3Rlbn0gaXMgZ3JlYXQgZm9y IGludGVyYWN0aXZlIGRlYnVnZ2luZyBhbmQKLWRldmVsb3BtZW50LgotCi1Adm5ld3syLjB9Ci0K LUBpdGVtIC0tYXV0by1jb21waWxlCi1Db21waWxlIHNvdXJjZSBmaWxlcyBhdXRvbWF0aWNhbGx5 IChkZWZhdWx0IGJlaGF2aW9yKS4KLQotQHZuZXd7Mi4wfQotCi1AaXRlbSAtLW5vLWF1dG8tY29t cGlsZQotRGlzYWJsZSBhdXRvbWF0aWMgc291cmNlIGZpbGUgY29tcGlsYXRpb24uCi0KLUB2bmV3 ezIuMH0KLQotQGl0ZW0gLWhAcnssIH0tLWhlbHAKLURpc3BsYXkgaGVscCBvbiBpbnZva2luZyBH dWlsZSwgYW5kIHRoZW4gZXhpdC4KLQotQGl0ZW0gLXZAcnssIH0tLXZlcnNpb24KLURpc3BsYXkg dGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBHdWlsZSwgYW5kIHRoZW4gZXhpdC4KLQotQGVuZCB0YWJs ZQotCi0KIEBub2RlIFRoZSBNZXRhIFN3aXRjaAogQHN1YnNlY3Rpb24gVGhlIE1ldGEgU3dpdGNo CiAKLS0gCjEuNy40LjQKCg== ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0003-doc-ref-guile-invoke.texi-node-Invoking-Guile-Initia.patch" Content-Type: text/x-patch; name="0003-doc-ref-guile-invoke.texi-node-Invoking-Guile-Initia.patch"; charset="UTF-8" RnJvbSAwMzEzNmFjMmE2NGMxMzQ1MTkzMmY2NTgxNjU2ZTM0YjlkYjA2NTY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJrIEhhcmlnIDxpZGlyZWN0c2NtQGFpbS5jb20+CkRhdGU6 IFN1biwgMjQgQXByIDIwMTEgMTU6NTI6MjcgLTA0MDAKU3ViamVjdDogW1BBVENIIDMvM10gKiBk b2MvcmVmL2d1aWxlLWludm9rZS50ZXhpIChub2RlIEludm9raW5nIEd1aWxlKToKIEluaXRpYWwg cmV2aXNpb24uICAgVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBmb3JtZXIKIHNlY3Rpb24gIkludm9r aW5nIEd1aWxlIiB0aGF0IHdhcyAgIGluY2x1ZGVkIGluIHRoZQogY2hhcHRlciAiUHJvZ3JhbW1p bmcgaW4gU2NoZW1lIiBhcyBhIHN1YnNlY3Rpb24gICBuYW1lZAogIkNvbW1hbmQtbGluZSBPcHRp b25zLiIgIEl0IGFsc28gaW5jbHVkZXMgYSBuZXcKIHN1YnNlY3Rpb24gICAiRW52aXJvbm1lbnQg VmFyaWFibGVzLCIgd2hpY2ggZGVzY3JpYmVzCiB0aG9zZSB2YXJpYWJsZXMgdGhhdCBjYW4gYmUg ICBzZXQgaW4gdGhlIG9wZXJhdGluZwogc3lzdGVtIGJlZm9yZSBHdWlsZSBpcyBzdGFydGVkIHdo aWNoIGFmZmVjdCAgIEd1aWxlJ3MKIHJ1bi10aW1lIGJlaGF2aW9yLgoKLS0tCiBkb2MvcmVmL2d1 aWxlLWludm9rZS50ZXhpIHwgIDM0NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKIDEgZmlsZXMgY2hhbmdlZCwgMzQ2IGluc2VydGlvbnMoKyksIDAgZGVsZXRp b25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgZG9jL3JlZi9ndWlsZS1pbnZva2UudGV4aQoKZGlm ZiAtLWdpdCBhL2RvYy9yZWYvZ3VpbGUtaW52b2tlLnRleGkgYi9kb2MvcmVmL2d1aWxlLWludm9r ZS50ZXhpCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2NzRhNzEKLS0tIC9k ZXYvbnVsbAorKysgYi9kb2MvcmVmL2d1aWxlLWludm9rZS50ZXhpCkBAIC0wLDAgKzEsMzQ2IEBA CitAYyAtKi10ZXhpbmZvLSotCitAYyBUaGlzIGlzIHBhcnQgb2YgdGhlIEdOVSBHdWlsZSBSZWZl cmVuY2UgTWFudWFsLgorQGMgQ29weXJpZ2h0IChDKSAgMTk5NiwgMTk5NywgMjAwMCwgMjAwMSwg MjAwMiwgMjAwMywgMjAwNCwgMjAwNSwgMjAxMCwgMjAxMQorQGMgICBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIEluYy4KK0BjIFNlZSB0aGUgZmlsZSBndWlsZS50ZXhpIGZvciBjb3B5aW5nIGNv bmRpdGlvbnMuCisKK0Bub2RlIEludm9raW5nIEd1aWxlCitAc2VjdGlvbiBJbnZva2luZyBHdWls ZQorQGNpbmRleCBpbnZvY2F0aW9uCisKK01hbnkgZmVhdHVyZXMgb2YgR3VpbGUgZGVwZW5kIG9u IGFuZCBjYW4gYmUgY2hhbmdlZCBieSBpbmZvcm1hdGlvbiB0aGF0Cit0aGUgdXNlciBwcm92aWRl cyBlaXRoZXIgYmVmb3JlIG9yIHdoZW4gR3VpbGUgaXMgc3RhcnRlZC4gIEJlbG93IGlzIGEKK2Rl c2NyaXB0aW9uIG9mIHdoYXQgaW5mb3JtYXRpb24gdG8gcHJvdmlkZSBhbmQgaG93IHRvIHByb3Zp ZGUgaXQuCisKK0BtZW51CisqIENvbW1hbmQtbGluZSBPcHRpb25zOjogICAgICAgIENvbW1hbmQt bGluZSBvcHRpb25zIHVuZGVyc3Rvb2QgYnkgR3VpbGUuCisqIEVudmlyb25tZW50IFZhcmlhYmxl czo6ICAgICAgIFZhcmlhYmxlcyB0aGF0IGFmZmVjdCBHdWlsZSdzIGJlaGF2aW9yLgorQGVuZCBt ZW51CisKK0Bub2RlIENvbW1hbmQtbGluZSBPcHRpb25zCitAc3Vic2VjdGlvbiBDb21tYW5kLWxp bmUgT3B0aW9ucworQGNpbmRleCBDb21tYW5kLWxpbmUgT3B0aW9ucworQGNpbmRleCBjb21tYW5k LWxpbmUgYXJndW1lbnRzCitAY2luZGV4IGFyZ3VtZW50cyAoY29tbWFuZCBsaW5lKQorQGNpbmRl eCBvcHRpb25zIChjb21tYW5kIGxpbmUpCitAY2luZGV4IHN3aXRjaGVzIChjb21tYW5kIGxpbmUp CitAY2luZGV4IHN0YXJ0dXAgKGNvbW1hbmQtbGluZSBhcmd1bWVudHMpCitAY2luZGV4IGludm9j YXRpb24gKGNvbW1hbmQtbGluZSBhcmd1bWVudHMpCisKK0hlcmUgd2UgZGVzY3JpYmUgR3VpbGUn cyBjb21tYW5kLWxpbmUgcHJvY2Vzc2luZyBpbiBkZXRhaWwuICBHdWlsZQorcHJvY2Vzc2VzIGl0 cyBhcmd1bWVudHMgZnJvbSBsZWZ0IHRvIHJpZ2h0LCByZWNvZ25pemluZyB0aGUgc3dpdGNoZXMK K2Rlc2NyaWJlZCBiZWxvdy4gIEZvciBleGFtcGxlcywgc2VlIEByZWZ7U2NyaXB0aW5nIEV4YW1w bGVzfS4KKworQHRhYmxlIEBjb2RlCisKK0BpdGVtIC1zIEB2YXJ7c2NyaXB0fSBAdmFye2FyZy4u Ln0KK0BjaW5kZXggc2NyaXB0IG1vZGUKK0J5IGRlZmF1bHQsIEd1aWxlIHdpbGwgcmVhZCBhIGZp bGUgbmFtZWQgb24gdGhlIGNvbW1hbmQgbGluZSBhcyBhCitzY3JpcHQuICBIb3dldmVyLCBpdCBp cyBwb3NzaWJsZSB0byBuYW1lIGEgZmlsZSB1c2luZyBhIGxlYWRpbmcgaHlwaGVuLAorZm9yIGV4 YW1wbGUsIEBmaWxley1teWZpbGUuc2NtfS4gIEluIHRoaXMgY2FzZSwgdGhlIGZpbGUgbmFtZSBt dXN0IGJlCitwcmVjZWRlZCBieSBAb3B0aW9uey1zfSB0byB0ZWxsIEd1aWxlIHRoYXQgYSAoc2Ny aXB0KSBmaWxlIGlzIGJlaW5nCituYW1lZC4gIEFueSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIEB2 YXJ7YXJnLi4ufSBmb2xsb3dpbmcgQHZhcntzY3JpcHR9CitiZWNvbWUgdGhlIHNjcmlwdCdzIGFy Z3VtZW50czsgdGhlIEBjb2Rle2NvbW1hbmQtbGluZX0gZnVuY3Rpb24gcmV0dXJucworYSBsaXN0 IG9mIHN0cmluZ3Mgb2YgdGhlIGZvcm0gQGNvZGV7KEB2YXJ7c2NyaXB0fSBAdmFye2FyZy4uLn0p fS4KK1NjcmlwdHMgYXJlIHJlYWQgYW5kIGV2YWx1YXRlZCBhcyBTY2hlbWUgc291cmNlIGNvZGUg anVzdCBhcyB0aGUKK0Bjb2Rle2xvYWR9IGZ1bmN0aW9uIHdvdWxkLiAgQWZ0ZXIgbG9hZGluZyBA dmFye3NjcmlwdH0sIEd1aWxlIGV4aXRzLgorCitAaXRlbSAtYyBAdmFye2V4cHJ9IEB2YXJ7YXJn Li4ufQorQGNpbmRleCBldmFsdWF0ZSBleHByZXNzaW9uLCBjb21tYW5kLWxpbmUgYXJndW1lbnQK K0V2YWx1YXRlIEB2YXJ7ZXhwcn0gYXMgU2NoZW1lIGNvZGUsIGFuZCB0aGVuIGV4aXQuICBBbnkg Y29tbWFuZC1saW5lCithcmd1bWVudHMgQHZhcnthcmcuLi59IGZvbGxvd2luZyBAdmFye2V4cHJ9 IGJlY29tZSBjb21tYW5kLWxpbmUKK2FyZ3VtZW50czsgdGhlIEBjb2Rle2NvbW1hbmQtbGluZX0g ZnVuY3Rpb24gcmV0dXJucyBhIGxpc3Qgb2Ygc3RyaW5ncyBvZgordGhlIGZvcm0gQGNvZGV7KEB2 YXJ7Z3VpbGV9IEB2YXJ7YXJnLi4ufSl9LCB3aGVyZSBAdmFye2d1aWxlfSBpcyB0aGUKK3BhdGgg b2YgdGhlIEd1aWxlIGV4ZWN1dGFibGUuCisKK0BpdGVtIC0tIEB2YXJ7YXJnLi4ufQorUnVuIGlu dGVyYWN0aXZlbHksIHByb21wdGluZyB0aGUgdXNlciBmb3IgZXhwcmVzc2lvbnMgYW5kIGV2YWx1 YXRpbmcKK3RoZW0uICBBbnkgY29tbWFuZC1saW5lIGFyZ3VtZW50cyBAdmFye2FyZy4uLn0gZm9s bG93aW5nIHRoZSBAb3B0aW9uey0tfQorYmVjb21lIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgZm9y IHRoZSBpbnRlcmFjdGl2ZSBzZXNzaW9uOyB0aGUKK0Bjb2Rle2NvbW1hbmQtbGluZX0gZnVuY3Rp b24gcmV0dXJucyBhIGxpc3Qgb2Ygc3RyaW5ncyBvZiB0aGUgZm9ybQorQGNvZGV7KEB2YXJ7Z3Vp bGV9IEB2YXJ7YXJnLi4ufSl9LCB3aGVyZSBAdmFye2d1aWxlfSBpcyB0aGUgcGF0aCBvZiB0aGUK K0d1aWxlIGV4ZWN1dGFibGUuCisKK0BpdGVtIC1MIEB2YXJ7ZGlyZWN0b3J5fQorQWRkIEB2YXJ7 ZGlyZWN0b3J5fSB0byB0aGUgZnJvbnQgb2YgR3VpbGUncyBtb2R1bGUgbG9hZCBwYXRoLiAgVGhl IGdpdmVuCitkaXJlY3RvcmllcyBhcmUgc2VhcmNoZWQgaW4gdGhlIG9yZGVyIGdpdmVuIG9uIHRo ZSBjb21tYW5kIGxpbmUgYW5kCitiZWZvcmUgYW55IGRpcmVjdG9yaWVzIGluIHRoZSBAZW52e0dV SUxFX0xPQURfUEFUSH0gZW52aXJvbm1lbnQKK3ZhcmlhYmxlLiAgUGF0aHMgYWRkZWQgaGVyZSBh cmUgQGVtcGh7bm90fSBpbiBlZmZlY3QgZHVyaW5nIGV4ZWN1dGlvbiBvZgordGhlIHVzZXIncyBA ZmlsZXsuZ3VpbGV9IGZpbGUuCisKK0BpdGVtIC14IEB2YXJ7ZXh0ZW5zaW9ufQorQWRkIEB2YXJ7 ZXh0ZW5zaW9ufSB0byB0aGUgZnJvbnQgb2YgR3VpbGUncyBsb2FkIGV4dGVuc2lvbiBsaXN0Ciso QHB4cmVme0xvYWRpbmcsIEBjb2RleyVsb2FkLWV4dGVuc2lvbnN9fSkuICBUaGUgc3BlY2lmaWVk IGV4dGVuc2lvbnMKK2FyZSB0cmllZCBpbiB0aGUgb3JkZXIgZ2l2ZW4gb24gdGhlIGNvbW1hbmQg bGluZSwgYW5kIGJlZm9yZSB0aGUgZGVmYXVsdAorbG9hZCBleHRlbnNpb25zLiAgRXh0ZW5zaW9u cyBhZGRlZCBoZXJlIGFyZSBAZW1waHtub3R9IGluIGVmZmVjdCBkdXJpbmcKK2V4ZWN1dGlvbiBv ZiB0aGUgdXNlcidzIEBmaWxley5ndWlsZX0gZmlsZS4KKworQGl0ZW0gLWwgQHZhcntmaWxlfQor TG9hZCBTY2hlbWUgc291cmNlIGNvZGUgZnJvbSBAdmFye2ZpbGV9LCBhbmQgY29udGludWUgcHJv Y2Vzc2luZyB0aGUKK2NvbW1hbmQgbGluZS4KKworQGl0ZW0gLWUgQHZhcntmdW5jdGlvbn0KK01h a2UgQHZhcntmdW5jdGlvbn0gdGhlIEBkZm57ZW50cnkgcG9pbnR9IG9mIHRoZSBzY3JpcHQuICBB ZnRlciBsb2FkaW5nCit0aGUgc2NyaXB0IGZpbGUgKHdpdGggQG9wdGlvbnstc30pIG9yIGV2YWx1 YXRpbmcgdGhlIGV4cHJlc3Npb24gKHdpdGgKK0BvcHRpb257LWN9KSwgYXBwbHkgQHZhcntmdW5j dGlvbn0gdG8gYSBsaXN0IGNvbnRhaW5pbmcgdGhlIHByb2dyYW0gbmFtZQorYW5kIHRoZSBjb21t YW5kLWxpbmUgYXJndW1lbnRzLS0tdGhlIGxpc3QgcHJvdmlkZWQgYnkgdGhlCitAY29kZXtjb21t YW5kLWxpbmV9IGZ1bmN0aW9uLgorCitBIEBvcHRpb257LWV9IHN3aXRjaCBjYW4gYXBwZWFyIGFu eXdoZXJlIGluIHRoZSBhcmd1bWVudCBsaXN0LCBidXQgR3VpbGUKK2Fsd2F5cyBpbnZva2VzIHRo ZSBAdmFye2Z1bmN0aW9ufSBhcyB0aGUgQGVtcGh7bGFzdH0gYWN0aW9uIGl0IHBlcmZvcm1zLgor VGhpcyBpcyB3ZWlyZCwgYnV0IGJlY2F1c2Ugb2YgdGhlIHdheSBzY3JpcHQgaW52b2NhdGlvbiB3 b3JrcyB1bmRlcgorUE9TSVgsIHRoZSBAb3B0aW9uey1zfSBvcHRpb24gbXVzdCBhbHdheXMgY29t ZSBsYXN0IGluIHRoZSBsaXN0LgorCitUaGUgQHZhcntmdW5jdGlvbn0gaXMgbW9zdCBvZnRlbiBh IHNpbXBsZSBzeW1ib2wgdGhhdCBuYW1lcyBhIGZ1bmN0aW9uCit0aGF0IGlzIGRlZmluZWQgaW4g dGhlIHNjcmlwdC4gIEl0IGNhbiBhbHNvIGJlIG9mIHRoZSBmb3JtIEBjb2RleyhAQAorQHZhcntt b2R1bGUtbmFtZX0gQHZhcntzeW1ib2x9KX0sIGFuZCBpbiB0aGF0IGNhc2UsIHRoZSBzeW1ib2wg aXMKK2xvb2tlZCB1cCBpbiB0aGUgbW9kdWxlIG5hbWVkIEB2YXJ7bW9kdWxlLW5hbWV9LgorCitG b3IgY29tcGF0aWJpbGl0eSB3aXRoIHNvbWUgdmVyc2lvbnMgb2YgR3VpbGUgMS40LCB5b3UgY2Fu IGFsc28gdXNlIHRoZQorZm9ybSBAY29kZXsoc3ltYm9sIC4uLil9ICh0aGF0IGlzLCBhIGxpc3Qg b2Ygb25seSBzeW1ib2xzIHRoYXQgZG9lc24ndAorc3RhcnQgd2l0aCBAY29kZXtAQH0pLCB3aGlj aCBpcyBlcXVpdmFsZW50IHRvIEBjb2RleyhAQCAoc3ltYm9sIC4uLikKK21haW4pfSwgb3IgQGNv ZGV7KHN5bWJvbCAuLi4pICBzeW1ib2x9ICh0aGF0IGlzLCBhIGxpc3Qgb2Ygb25seSBzeW1ib2xz Citmb2xsb3dlZCBieSBhIHN5bWJvbCksIHdoaWNoIGlzIGVxdWl2YWxlbnQgdG8gQGNvZGV7KEBA IChzeW1ib2wgLi4uKQorc3ltYm9sKX0uICBXZSByZWNvbW1lbmQgdG8gdXNlIHRoZSBlcXVpdmFs ZW50IGZvcm1zIGRpcmVjdGx5IHNpbmNlIHRoZXkKK2NvcnJlc3BvbmQgdG8gdGhlIEBjb2RleyhA QCAuLi4pfSAgcmVhZCBzeW50YXggdGhhdCBjYW4gYmUgdXNlZCBpbgorbm9ybWFsIGNvZGUuICBT ZWUgQHJlZntVc2luZyBHdWlsZSBNb2R1bGVzfSBhbmQgQHJlZntTY3JpcHRpbmcKK0V4YW1wbGVz fS4KKworQGl0ZW0gLWRzCitUcmVhdCBhIGZpbmFsIEBvcHRpb257LXN9IG9wdGlvbiBhcyBpZiBp dCBvY2N1cnJlZCBhdCB0aGlzIHBvaW50IGluIHRoZQorY29tbWFuZCBsaW5lOyBsb2FkIHRoZSBz Y3JpcHQgaGVyZS4KKworVGhpcyBzd2l0Y2ggaXMgbmVjZXNzYXJ5IGJlY2F1c2UsIGFsdGhvdWdo IHRoZSBQT1NJWCBzY3JpcHQgaW52b2NhdGlvbgorbWVjaGFuaXNtIGVmZmVjdGl2ZWx5IHJlcXVp cmVzIHRoZSBAb3B0aW9uey1zfSBvcHRpb24gdG8gYXBwZWFyIGxhc3QsIHRoZQorcHJvZ3JhbW1l ciBtYXkgd2VsbCB3YW50IHRvIHJ1biB0aGUgc2NyaXB0IGJlZm9yZSBvdGhlciBhY3Rpb25zCity ZXF1ZXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4gIEZvciBleGFtcGxlcywgc2VlIEByZWZ7U2Ny aXB0aW5nCitFeGFtcGxlc30uCisKK0BpdGVtIFwKK1JlYWQgbW9yZSBjb21tYW5kLWxpbmUgYXJn dW1lbnRzLCBzdGFydGluZyBmcm9tIHRoZSBzZWNvbmQgbGluZSBvZiB0aGUKK3NjcmlwdCBmaWxl LiAgQHhyZWZ7VGhlIE1ldGEgU3dpdGNofS4KKworQGl0ZW0gLS11c2Utc3JmaT1AdmFye2xpc3R9 CitAY2luZGV4IGxvYWRpbmcgc3JmaSBtb2R1bGVzIChjb21tYW5kIGxpbmUpCitUaGUgb3B0aW9u IEBvcHRpb257LS11c2Utc3JmaX0gZXhwZWN0cyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIG51 bWJlcnMsCitlYWNoIHJlcHJlc2VudGluZyBhIFNSRkkgbW9kdWxlIHRvIGJlIGxvYWRlZCBpbnRv IHRoZSBpbnRlcnByZXRlcgorYmVmb3JlIGV2YWx1YXRpbmcgYSBzY3JpcHQgZmlsZSBvciBzdGFy dGluZyB0aGUgUkVQTC4gIEFkZGl0aW9uYWxseSwKK3RoZSBmZWF0dXJlIGlkZW50aWZpZXIgZm9y IHRoZSBsb2FkZWQgU1JGSXMgaXMgcmVjb2duaXplZCBieQordGhlIHByb2NlZHVyZSBAY29kZXtj b25kLWV4cGFuZH0gd2hlbiB0aGlzIG9wdGlvbiBpcyB1c2VkLgorCitIZXJlIGlzIGFuIGV4YW1w bGUgdGhhdCBsb2FkcyB0aGUgbW9kdWxlcyBTUkZJLTggKCdyZWNlaXZlJykgYW5kIFNSRkktMTMK Kygnc3RyaW5nIGxpYnJhcnknKSBiZWZvcmUgdGhlIEdVSUxFIGludGVycHJldGVyIGlzIHN0YXJ0 ZWQ6CisKK0BleGFtcGxlCitndWlsZSAtLXVzZS1zcmZpPTgsMTMKK0BlbmQgZXhhbXBsZQorCitA aXRlbSAtLWRlYnVnCitAY2luZGV4IGRlYnVnZ2luZyB2aXJ0dWFsIG1hY2hpbmUgKGNvbW1hbmQg bGluZSkKK1N0YXJ0IHdpdGggdGhlIGRlYnVnZ2luZyB2aXJ0dWFsIG1hY2hpbmUgKFZNKSBlbmdp bmUuICBVc2luZyB0aGUKK2RlYnVnZ2luZyBWTSB3aWxsIGVuYWJsZSBzdXBwb3J0IGZvciBWTSBo b29rcywgd2hpY2ggYXJlIG5lZWRlZCBmb3IKK3RyYWNpbmcsIGJyZWFrcG9pbnRzLCBhbmQgYWNj dXJhdGUgY2FsbCBjb3VudHMgd2hlbiBwcm9maWxpbmcuICBUaGUKK2RlYnVnZ2luZyBWTSBpcyBz bG93ZXIgdGhhbiB0aGUgcmVndWxhciBWTSwgdGhvdWdoLCBieSBhYm91dCB0ZW4KK3BlcmNlbnQu ICBAeHJlZntWTSBIb29rc30sIGZvciBtb3JlIGluZm9ybWF0aW9uLgorCitCeSBkZWZhdWx0LCB0 aGUgZGVidWdnaW5nIFZNIGVuZ2luZSBpcyBvbmx5IHVzZWQgd2hlbiBlbnRlcmluZyBhbgoraW50 ZXJhY3RpdmUgc2Vzc2lvbi4gIFdoZW4gZXhlY3V0aW5nIGEgc2NyaXB0IHdpdGggQG9wdGlvbnst c30gb3IKK0BvcHRpb257LWN9LCB0aGUgbm9ybWFsLCBmYXN0ZXIgVk0gaXMgdXNlZCBieSBkZWZh dWx0LgorCitAdm5ld3sxLjh9CitAaXRlbSAtLW5vLWRlYnVnCitAY2luZGV4IGRlYnVnZ2luZyB2 aXJ0dWFsIG1hY2hpbmUgKGNvbW1hbmQgbGluZSkKK0RvIG5vdCB1c2UgdGhlIGRlYnVnZ2luZyBW TSBlbmdpbmUsIGV2ZW4gd2hlbiBlbnRlcmluZyBhbiBpbnRlcmFjdGl2ZQorc2Vzc2lvbi4KKwor QGl0ZW0gLXEKK0BjaW5kZXggaW5pdCBmaWxlLCBub3QgbG9hZGluZworQGNpbmRleCBAZmlsZXsu Z3VpbGV9IGZpbGUsIG5vdCBsb2FkaW5nCitEbyBub3QgbG9hZCB0aGUgaW5pdGlhbGl6YXRpb24g ZmlsZSwgQGZpbGV7Lmd1aWxlfS4gIFRoaXMgb3B0aW9uIG9ubHkKK2hhcyBhbiBlZmZlY3Qgd2hl biBydW5uaW5nIGludGVyYWN0aXZlbHk7IHJ1bm5pbmcgc2NyaXB0cyBkb2VzIG5vdCBsb2FkCit0 aGUgQGZpbGV7Lmd1aWxlfSBmaWxlLiAgQHhyZWZ7SW5pdCBGaWxlfS4KKworQGl0ZW0gLS1saXN0 ZW5bPUB2YXJ7cH1dCitXaGlsZSB0aGlzIHByb2dyYW0gcnVucywgbGlzdGVuIG9uIGEgbG9jYWwg cG9ydCBvciBhIHBhdGggZm9yIFJFUEwKK2NsaWVudHMuICBJZiBAdmFye3B9IHN0YXJ0cyB3aXRo IGEgbnVtYmVyLCBpdCBpcyBhc3N1bWVkIHRvIGJlIGEgbG9jYWwKK3BvcnQgb24gd2hpY2ggdG8g bGlzdGVuLiAgSWYgaXQgc3RhcnRzIHdpdGggYSBmb3J3YXJkIHNsYXNoLCBpdCBpcworYXNzdW1l ZCB0byBiZSBhIHBhdGggdG8gYSBVTklYIGRvbWFpbiBzb2NrZXQgb24gd2hpY2ggdG8gbGlzdGVu LgorCitJZiBAdmFye3B9IGlzIG5vdCBnaXZlbiwgdGhlIGRlZmF1bHQgaXMgbG9jYWwgcG9ydCAz NzE0Ni4gIElmIHlvdSBsb29rCithdCBpdCB1cHNpZGUgZG93biwgaXQgYWxtb3N0IHNwZWxscyBg YEd1aWxlJycuICBJZiB5b3UgaGF2ZSBuZXRjYXQKK2luc3RhbGxlZCwgeW91IHNob3VsZCBiZSBh YmxlIHRvIEBrYmR7bmMgbG9jYWxob3N0IDM3MTQ2fSBhbmQgZ2V0IGEKK0d1aWxlIHByb21wdC4g IEFsdGVybmF0ZWx5IHlvdSBjYW4gZmlyZSB1cCBFbWFjcyBhbmQgY29ubmVjdCB0byB0aGUKK3By b2Nlc3M7IHNlZSBAcmVme1VzaW5nIEd1aWxlIGluIEVtYWNzfSBmb3IgbW9yZSBkZXRhaWxzLgor CitOb3RlIHRoYXQgb3BlbmluZyBhIHBvcnQgYWxsb3dzIGFueW9uZSB3aG8gY2FuIGNvbm5lY3Qg dG8gdGhhdCBwb3J0LS0taW4KK3RoZSBUQ1AgY2FzZSwgYW55IGxvY2FsIHVzZXItLS10byBkbyBh bnl0aGluZyBHdWlsZSBjYW4gZG8sIGFzIHRoZSB1c2VyCit0aGF0IHRoZSBHdWlsZSBwcm9jZXNz IGlzIHJ1bm5pbmcgYXMuICBEbyBub3QgdXNlIEBvcHRpb257LS1saXN0ZW59IG9uCittdWx0aS11 c2VyIG1hY2hpbmVzLiAgT2YgY291cnNlLCBpZiB5b3UgZG8gbm90IHBhc3MgQG9wdGlvbnstLWxp c3Rlbn0gdG8KK0d1aWxlLCBubyBwb3J0IHdpbGwgYmUgb3BlbmVkLgorCitUaGF0IHNhaWQsIEBv cHRpb257LS1saXN0ZW59IGlzIGdyZWF0IGZvciBpbnRlcmFjdGl2ZSBkZWJ1Z2dpbmcgYW5kCitk ZXZlbG9wbWVudC4KKworQHZuZXd7Mi4wfQorCitAaXRlbSAtLWF1dG8tY29tcGlsZQorQ29tcGls ZSBzb3VyY2UgZmlsZXMgYXV0b21hdGljYWxseSAoZGVmYXVsdCBiZWhhdmlvcikuCisKK0B2bmV3 ezIuMH0KKworQGl0ZW0gLS1uby1hdXRvLWNvbXBpbGUKK0Rpc2FibGUgYXV0b21hdGljIHNvdXJj ZSBmaWxlIGNvbXBpbGF0aW9uLgorCitAdm5ld3syLjB9CisKK0BpdGVtIC1oQHJ7LCB9LS1oZWxw CitEaXNwbGF5IGhlbHAgb24gaW52b2tpbmcgR3VpbGUsIGFuZCB0aGVuIGV4aXQuCisKK0BpdGVt IC12QHJ7LCB9LS12ZXJzaW9uCitEaXNwbGF5IHRoZSBjdXJyZW50IHZlcnNpb24gb2YgR3VpbGUs IGFuZCB0aGVuIGV4aXQuCisKK0BlbmQgdGFibGUKKworQG5vZGUgRW52aXJvbm1lbnQgVmFyaWFi bGVzCitAc3Vic2VjdGlvbiBFbnZpcm9ubWVudCBWYXJpYWJsZXMKK0BjaW5kZXggZW52aXJvbm1l bnQgdmFyaWFibGVzCitAY2luZGV4IHNoZWxsCitAY2luZGV4IGluaXRpYWxpemF0aW9uCitUaGUg QGRmbntlbnZpcm9ubWVudH0gaXMgYSBmZWF0dXJlIG9mIHRoZSBvcGVyYXRpbmcgc3lzdGVtOyBp dCBjb25zaXN0cworb2YgYSBjb2xsZWN0aW9uIG9mIHZhcmlhYmxlcyB3aXRoIG5hbWVzIGFuZCB2 YWx1ZXMuICBFYWNoIHZhcmlhYmxlIGlzCitjYWxsZWQgYW4gQGRmbntlbnZpcm9ubWVudCB2YXJp YWJsZX0gKG9yLCBzb21ldGltZXMsIGEgYGBzaGVsbAordmFyaWFibGUnJyk7IGVudmlyb25tZW50 IHZhcmlhYmxlIG5hbWVzIGFyZSBjYXNlLXNlbnNpdGl2ZSwgYW5kIGl0IGlzCitjb252ZW50aW9u YWwgdG8gdXNlIHVwcGVyLWNhc2UgbGV0dGVycyBvbmx5LiAgVGhlIHZhbHVlcyBhcmUgYWxsIHRl eHQKK3N0cmluZ3MsIGV2ZW4gdGhvc2UgdGhhdCBhcmUgd3JpdHRlbiBhcyBudW1lcmFscy4gIChO b3RlIHRoYXQgaGVyZSB3ZQorYXJlIHJlZmVycmluZyB0byBuYW1lcyBhbmQgdmFsdWVzIHRoYXQg YXJlIGRlZmluZWQgaW4gdGhlIG9wZXJhdGluZworc3lzdGVtIHNoZWxsIGZyb20gd2hpY2ggR3Vp bGUgaXMgaW52b2tlZC4gIFRoaXMgaXMgbm90IHRoZSBzYW1lIGFzIGEKK1NjaGVtZSBlbnZpcm9u bWVudCB0aGF0IGlzIGRlZmluZWQgd2l0aGluIGEgcnVubmluZyBpbnN0YW5jZSBvZiBHdWlsZS4K K0ZvciBhIGRlc2NyaXB0aW9uIG9mIFNjaGVtZSBlbnZpcm9ubWVudHMsIEBweHJlZntBYm91dCBF bnZpcm9ubWVudHN9LikKKyAgIAorSG93IHRvIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYmVm b3JlIHN0YXJ0aW5nIEd1aWxlIGRlcGVuZHMgb24gdGhlCitvcGVyYXRpbmcgc3lzdGVtIGFuZCwg ZXNwZWNpYWxseSwgdGhlIHNoZWxsIHRoYXQgeW91IGFyZSB1c2luZy4gIEZvcgorZXhhbXBsZSwg aGVyZSBpcyBob3cgdG8gdGVsbCBHdWlsZSB0byBwcm92aWRlIGRldGFpbGVkIHdhcm5pbmcgbWVz c2FnZXMKK2Fib3V0IGRlcHJlY2F0ZWQgZmVhdHVyZXMgYnkgc2V0dGluZyBAZW52e0dVSUxFX1dB Uk5fREVQUkVDQVRFRH0gdXNpbmcKK0Jhc2g6CisKK0BleGFtcGxlCiskIGV4cG9ydCBHVUlMRV9X QVJOX0RFUFJFQ0FURUQ9ImRldGFpbGVkIgorJCBndWlsZQorQGVuZCBleGFtcGxlCisKK0Bub2lu ZGVudAorT3IsIGRldGFpbGVkIHdhcm5pbmdzIGNhbiBiZSB0dXJuZWQgb24gZm9yIGEgc2luZ2xl IGludm9jYXRpb24gdXNpbmc6CisKK0BleGFtcGxlCiskIGVudiBHVUlMRV9XQVJOX0RFUFJFQ0FU RUQ9ImRldGFpbGVkIiBndWlsZQorQGVuZCBleGFtcGxlCisKK0lmIHlvdSB3aXNoIHRvIHJldHJp ZXZlIG9yIGNoYW5nZSB0aGUgdmFsdWUgb2YgdGhlIHNoZWxsIGVudmlyb25tZW50Cit2YXJpYWJs ZXMgdGhhdCBhZmZlY3QgdGhlIHJ1bi10aW1lIGJlaGF2aW9yIG9mIEd1aWxlIGZyb20gd2l0aGlu IGEKK3J1bm5pbmcgaW5zdGFuY2Ugb2YgR3VpbGUsIHNlZSBAcmVme1J1bnRpbWUgRW52aXJvbm1l bnR9LgorCitIZXJlIGFyZSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgYWZmZWN0IHRo ZSBydW4tdGltZSBiZWhhdmlvciBvZgorR3VpbGU6CisKK0B0YWJsZSBAZW52CitAaXRlbSBHVUlM RV9BVVRPX0NPTVBJTEUKK0B2aW5kZXggR1VJTEVfQVVUT19DT01QSUxFCitUaGlzIGlzIGEgZmxh ZyB0aGF0IGNhbiBiZSB1c2VkIHRvIHRlbGwgR3VpbGUgd2hldGhlciBvciBub3QgdG8gY29tcGls ZQorU2NoZW1lIHNvdXJjZSBmaWxlcyBhdXRvbWF0aWNhbGx5LiAgU3RhcnRpbmcgd2l0aCBHdWls ZSAyLjAsIFNjaGVtZQorc291cmNlIGZpbGVzIHdpbGwgYmUgY29tcGlsZWQgYXV0b21hdGljYWxs eSwgYnkgZGVmYXVsdC4gIElmCitAZW52e0dVSUxFX0FVVE9fQ09NUElMRX0gaXMgc2V0IHRvIHpl cm8gKDApLCB0aGVuIFNjaGVtZSBmaWxlcyBhcmUgbm90Citjb21waWxlZCBhdXRvbWF0aWNhbGx5 LgorCitJZiBhIGNvbXBpbGVkIEBmaWxley5nb30gZmlsZSBjb3JyZXNwb25kaW5nIHRvIGEgQGZp bGV7LnNjbX0gZmlsZSBpcyBub3QKK2ZvdW5kIG9yIGlzIG5vdCBuZXdlciB0aGFuIHRoZSBAZmls ZXsuc2NtfSBmaWxlLCB0aGUgQGZpbGV7LnNjbX0gZmlsZQord2lsbCBiZSBjb21waWxlZCBvbiB0 aGUgZmx5LCBhbmQgdGhlIHJlc3VsdGluZyBAZmlsZXsuZ299IGZpbGUgc3RvcmVkCithd2F5LiAg QW4gYWR2aXNvcnkgbm90ZSB3aWxsIGJlIHByaW50ZWQgb24gdGhlIGNvbnNvbGUuCisKK05vdGUg dGhhdCB0aGlzIG1lY2hhbmlzbSBkZXBlbmRzIG9uIHRoZSB0aW1lc3RhbXAgb2YgdGhlIEBmaWxl ey5nb30gZmlsZQorYmVpbmcgbmV3ZXIgdGhhbiB0aGF0IG9mIHRoZSBAZmlsZXsuc2NtfSBmaWxl OyBpZiB0aGUgQGZpbGV7LnNjbX0gb3IKK0BmaWxley5nb30gZmlsZXMgYXJlIG1vdmVkIGFmdGVy IGluc3RhbGxhdGlvbiwgY2FyZSBzaG91bGQgYmUgdGFrZW4gdG8KK3ByZXNlcnZlIHRoZWlyIG9y aWdpbmFsIHRpbWVzdGFtcHMuCisKK0F1dG8tY29tcGlsZWQgZmlsZXMgd2lsbCBiZSBzdG9yZWQg aW4gdGhlIGRpcmVjdG9yeQorQGZpbGV7JFhER19DQUNIRV9IT01FL2d1aWxlL2NjYWNoZX0sIHdo ZXJlIEBlbnZ7WERHX0NBQ0hFX0hPTUV9IGRlZmF1bHRzCit0byB0aGUgZGlyZWN0b3J5IEBmaWxl eyRIT01FLy5jYWNoZX0uICBUaGlzIGRpcmVjdG9yeSB3aWxsIGJlIGNyZWF0ZWQgaWYKK2l0IGRv ZXMgbm90IGFscmVhZHkgZXhpc3QuCisKK1RvIGluaGliaXQgYXV0b21hdGljIGNvbXBpbGF0aW9u LCBzZXQgdGhlIEBlbnZ7R1VJTEVfQVVUT19DT01QSUxFfQorZW52aXJvbm1lbnQgdmFyaWFibGUg dG8gemVybyAoMCksIG9yIHBhc3MgQG9wdGlvbnstLW5vLWF1dG8tY29tcGlsZX0gb24KK3RoZSBH dWlsZSBjb21tYW5kIGxpbmUuCisKK0BpdGVtIEdVSUxFX0hJU1RPUlkKK0B2aW5kZXggR1VJTEVf SElTVE9SWQorVGhpcyB2YXJpYWJsZSBuYW1lcyB0aGUgZmlsZSB0aGF0IGhvbGRzIHRoZSBHdWls ZSBSRVBMIGNvbW1hbmQgaGlzdG9yeS4KK1lvdSBjYW4gc3BlY2lmeSBhIGRpZmZlcmVudCBoaXN0 b3J5IGZpbGUgYnkgc2V0dGluZyB0aGlzIGVudmlyb25tZW50Cit2YXJpYWJsZS4gIEJ5IGRlZmF1 bHQsIHRoZSBoaXN0b3J5IGZpbGUgaXMgQGZpbGV7JEhPTUUvLmd1aWxlX2hpc3Rvcnl9LgorCitA aXRlbSBHVUlMRV9MT0FEX0NPTVBJTEVEX1BBVEgKK0B2aW5kZXggR1VJTEVfTE9BRF9DT01QSUxF RF9QQVRICitUaGlzIHZhcmlhYmxlIG1heSBiZSB1c2VkIHRvIGF1Z21lbnQgdGhlIHBhdGggdGhh dCBpcyBzZWFyY2hlZCBmb3IKK2NvbXBpbGVkIFNjaGVtZSBmaWxlcyAoQGZpbGV7LmdvfSBmaWxl cykgd2hlbiBsb2FkaW5nLiAgSXRzIHZhbHVlIHNob3VsZAorYmUgYSBjb2xvbi1zZXBhcmF0ZWQg bGlzdCBvZiBkaXJlY3Rvcmllcywgd2hpY2ggd2lsbCBiZSBwcmVmaXhlZCB0byB0aGUKK3ZhbHVl IG9mIHRoZSBkZWZhdWx0IHNlYXJjaCBwYXRoIHN0b3JlZCBpbiBAY29kZXslbG9hZC1jb21waWxl ZC1wYXRofS4KKworSGVyZSBpcyBhbiBleGFtcGxlIHVzaW5nIHRoZSBCYXNoIHNoZWxsIHRoYXQg YWRkcyB0aGUgY3VycmVudCBkaXJlY3RvcnksCitAZmlsZXsufSwgYW5kIHRoZSByZWxhdGl2ZSBk aXJlY3RvcnkgQGZpbGV7Li4vbXktbGlicmFyeX0gdG8KK0Bjb2RleyVsb2FkLWNvbXBpbGVkLXBh dGh9OgorCitAZXhhbXBsZQorJCBleHBvcnQgR1VJTEVfTE9BRF9DT01QSUxFRF9QQVRIPSIuOi4u L215LWxpYnJhcnkiCiskIGd1aWxlIC1jICcoZGlzcGxheSAlbG9hZC1jb21waWxlZC1wYXRoKSAo bmV3bGluZSknCisoLiAuLi9teS1saWJyYXJ5IC91c3IvbG9jYWwvbGliL2d1aWxlLzIuMC9jY2Fj aGUpCitAZW5kIGV4YW1wbGUKKworQGl0ZW0gR1VJTEVfTE9BRF9QQVRICitAdmluZGV4IEdVSUxF X0xPQURfUEFUSAorVGhpcyB2YXJpYWJsZSBtYXkgYmUgdXNlZCB0byBhdWdtZW50IHRoZSBwYXRo IHRoYXQgaXMgc2VhcmNoZWQgZm9yCitTY2hlbWUgZmlsZXMgd2hlbiBsb2FkaW5nLiAgSXRzIHZh bHVlIHNob3VsZCBiZSBhIGNvbG9uLXNlcGFyYXRlZCBsaXN0CitvZiBkaXJlY3Rvcmllcywgd2hp Y2ggd2lsbCBiZSBwcmVmaXhlZCB0byB0aGUgdmFsdWUgb2YgdGhlIGRlZmF1bHQKK3NlYXJjaCBw YXRoIHN0b3JlZCBpbiBAY29kZXslbG9hZC1wYXRofS4KKworSGVyZSBpcyBhbiBleGFtcGxlIHVz aW5nIHRoZSBCYXNoIHNoZWxsIHRoYXQgYWRkcyB0aGUgY3VycmVudCBkaXJlY3RvcnkKK2FuZCB0 aGUgcGFyZW50IG9mIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB0byBAY29kZXslbG9hZC1wYXRofToK KworQGV4YW1wbGUKKyQgZW52IEdVSUxFX0xPQURfUEFUSD0iLjouLiIgXAorZ3VpbGUgLWMgJyhk aXNwbGF5ICVsb2FkLXBhdGgpIChuZXdsaW5lKScKKyguIC4uIC91c3IvbG9jYWwvc2hhcmUvZ3Vp bGUvMi4wIFwKKy91c3IvbG9jYWwvc2hhcmUvZ3VpbGUvc2l0ZS8yLjAgXAorL3Vzci9sb2NhbC9z aGFyZS9ndWlsZS9zaXRlIC91c3IvbG9jYWwvc2hhcmUvZ3VpbGUpCitAZW5kIGV4YW1wbGUKKwor KE5vdGU6IFRoZSBsaW5lIGJyZWFrcywgYWJvdmUsIGFyZSBmb3IgZG9jdW1lbnRhdGlvbiBwdXJw b3NlcyBvbmx5LCBhbmQKK25vdCByZXF1aXJlZCBpbiB0aGUgYWN0dWFsIGV4YW1wbGUuKQorCitA aXRlbSBHVUlMRV9XQVJOX0RFUFJFQ0FURUQKK0B2aW5kZXggR1VJTEVfV0FSTl9ERVBSRUNBVEVE CitBcyBHdWlsZSBldm9sdmVzLCBzb21lIGZlYXR1cmVzIHdpbGwgYmUgZWxpbWluYXRlZCBvciBy ZXBsYWNlZCBieSBuZXdlcgorZmVhdHVyZXMuICBUbyBoZWxwIHVzZXJzIG1pZ3JhdGUgdGhlaXIg Y29kZSBhcyB0aGlzIGV2b2x1dGlvbiBvY2N1cnMsCitHdWlsZSB3aWxsIGlzc3VlIHdhcm5pbmcg bWVzc2FnZXMgYWJvdXQgY29kZSB0aGF0IHVzZXMgZmVhdHVyZXMgdGhhdAoraGF2ZSBiZWVuIG1h cmtlZCBmb3IgZXZlbnR1YWwgZWxpbWluYXRpb24uICBAZW52e0dVSUxFX1dBUk5fREVQUkVDQVRF RH0KK2NhbiBiZSBzZXQgdG8gYGBubycnIHRvIHRlbGwgR3VpbGUgbm90IHRvIGRpc3BsYXkgdGhl c2Ugd2FybmluZworbWVzc2FnZXMsIG9yIHNldCB0byBgYGRldGFpbGVkJycgdG8gdGVsbCBHdWls ZSB0byBkaXNwbGF5IG1vcmUgbGVuZ3RoeQorbWVzc2FnZXMgZGVzY3JpYmluZyB0aGUgd2Fybmlu Zy4gIEB4cmVme0RlcHJlY2F0aW9ufS4KKworQGl0ZW0gSE9NRQorQHZpbmRleCBIT01FCitHdWls ZSB1c2VzIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBAZW52e0hPTUV9LCB0aGUgbmFtZSBvZiB5 b3VyIGhvbWUKK2RpcmVjdG9yeSwgdG8gbG9jYXRlIHZhcmlvdXMgZmlsZXMsIHN1Y2ggYXMgQGZp bGV7Lmd1aWxlfSBvcgorQGZpbGV7Lmd1aWxlX2hpc3Rvcnl9LgorCitAaXRlbSBMVERMX0xJQlJB UllfUEFUSAorQHZpbmRleCBMVERMX0xJQlJBUllfUEFUSAorR3VpbGUgbm93IGFkZHMgaXRzIGlu c3RhbGwgcHJlZml4IHRvIHRoZSBAZW52e0xURExfTElCUkFSWV9QQVRIfS4KKworVXNlcnMgbWF5 IG5vdyBpbnN0YWxsIEd1aWxlIGluIG5vbi1zdGFuZGFyZCBkaXJlY3RvcmllcyBhbmQgcnVuCitg L3BhdGgvdG8vYmluL2d1aWxlJywgd2l0aG91dCBoYXZpbmcgYWxzbyB0byBzZXQgQGVudntMVERM X0xJQlJBUllfUEFUSH0KK3RvIGluY2x1ZGUgYC9wYXRoL3RvL2xpYicuCisKK0BlbmQgdGFibGUK KworQGMgTG9jYWwgVmFyaWFibGVzOiAKK0BjIG1vZGU6IHRleGluZm8KK0BjIFRlWC1tYXN0ZXI6 ICJndWlsZSIKK0BjIEVuZDogCi0tIAoxLjcuNC40Cgo= ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="guile-section42.txt" Content-Type: text/plain; name="guile-section42.txt"; charset="UTF-8" NC4yIEludm9raW5nIEd1aWxlCj09PT09PT09PT09PT09PT09PQoKTWFueSBmZWF0dXJlcyBvZiBH dWlsZSBkZXBlbmQgb24gYW5kIGNhbiBiZSBjaGFuZ2VkIGJ5IGluZm9ybWF0aW9uIHRoYXQKdGhl IHVzZXIgcHJvdmlkZXMgZWl0aGVyIGJlZm9yZSBvciB3aGVuIEd1aWxlIGlzIHN0YXJ0ZWQuICBC ZWxvdyBpcyBhCmRlc2NyaXB0aW9uIG9mIHdoYXQgaW5mb3JtYXRpb24gdG8gcHJvdmlkZSBhbmQg aG93IHRvIHByb3ZpZGUgaXQuCgo0LjIuMSBDb21tYW5kLWxpbmUgT3B0aW9ucwotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQoKSGVyZSB3ZSBkZXNjcmliZSBHdWlsZSdzIGNvbW1hbmQtbGluZSBw cm9jZXNzaW5nIGluIGRldGFpbC4gIEd1aWxlCnByb2Nlc3NlcyBpdHMgYXJndW1lbnRzIGZyb20g bGVmdCB0byByaWdodCwgcmVjb2duaXppbmcgdGhlIHN3aXRjaGVzCmRlc2NyaWJlZCBiZWxvdy4g IEZvciBleGFtcGxlcywgc2VlICpub3RlIFNjcmlwdGluZyBFeGFtcGxlczo6LgoKYC1zIFNDUklQ VCBBUkcuLi4nCiAgICAgQnkgZGVmYXVsdCwgR3VpbGUgd2lsbCByZWFkIGEgZmlsZSBuYW1lZCBv biB0aGUgY29tbWFuZCBsaW5lIGFzIGEKICAgICBzY3JpcHQuICBIb3dldmVyLCBpdCBpcyBwb3Nz aWJsZSB0byBuYW1lIGEgZmlsZSB1c2luZyBhIGxlYWRpbmcKICAgICBoeXBoZW4sIGZvciBleGFt cGxlLCBgLW15ZmlsZS5zY20nLiAgSW4gdGhpcyBjYXNlLCB0aGUgZmlsZSBuYW1lCiAgICAgbXVz dCBiZSBwcmVjZWRlZCBieSBgLXMnIHRvIHRlbGwgR3VpbGUgdGhhdCBhIChzY3JpcHQpIGZpbGUg aXMKICAgICBiZWluZyBuYW1lZC4gIEFueSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIEFSRy4uLiBm b2xsb3dpbmcgU0NSSVBUCiAgICAgYmVjb21lIHRoZSBzY3JpcHQncyBhcmd1bWVudHM7IHRoZSBg Y29tbWFuZC1saW5lJyBmdW5jdGlvbiByZXR1cm5zCiAgICAgYSBsaXN0IG9mIHN0cmluZ3Mgb2Yg dGhlIGZvcm0gYChTQ1JJUFQgQVJHLi4uKScuICBTY3JpcHRzIGFyZSByZWFkCiAgICAgYW5kIGV2 YWx1YXRlZCBhcyBTY2hlbWUgc291cmNlIGNvZGUganVzdCBhcyB0aGUgYGxvYWQnIGZ1bmN0aW9u CiAgICAgd291bGQuICBBZnRlciBsb2FkaW5nIFNDUklQVCwgR3VpbGUgZXhpdHMuCgpgLWMgRVhQ UiBBUkcuLi4nCiAgICAgRXZhbHVhdGUgRVhQUiBhcyBTY2hlbWUgY29kZSwgYW5kIHRoZW4gZXhp dC4gIEFueSBjb21tYW5kLWxpbmUKICAgICBhcmd1bWVudHMgQVJHLi4uIGZvbGxvd2luZyBFWFBS IGJlY29tZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzOyB0aGUKICAgICBgY29tbWFuZC1saW5lJyBm dW5jdGlvbiByZXR1cm5zIGEgbGlzdCBvZiBzdHJpbmdzIG9mIHRoZSBmb3JtCiAgICAgYChHVUlM RSBBUkcuLi4pJywgd2hlcmUgR1VJTEUgaXMgdGhlIHBhdGggb2YgdGhlIEd1aWxlIGV4ZWN1dGFi bGUuCgpgLS0gQVJHLi4uJwogICAgIFJ1biBpbnRlcmFjdGl2ZWx5LCBwcm9tcHRpbmcgdGhlIHVz ZXIgZm9yIGV4cHJlc3Npb25zIGFuZAogICAgIGV2YWx1YXRpbmcgdGhlbS4gIEFueSBjb21tYW5k LWxpbmUgYXJndW1lbnRzIEFSRy4uLiBmb2xsb3dpbmcgdGhlCiAgICAgYC0tJyBiZWNvbWUgY29t bWFuZC1saW5lIGFyZ3VtZW50cyBmb3IgdGhlIGludGVyYWN0aXZlIHNlc3Npb247IHRoZQogICAg IGBjb21tYW5kLWxpbmUnIGZ1bmN0aW9uIHJldHVybnMgYSBsaXN0IG9mIHN0cmluZ3Mgb2YgdGhl IGZvcm0KICAgICBgKEdVSUxFIEFSRy4uLiknLCB3aGVyZSBHVUlMRSBpcyB0aGUgcGF0aCBvZiB0 aGUgR3VpbGUgZXhlY3V0YWJsZS4KCmAtTCBESVJFQ1RPUlknCiAgICAgQWRkIERJUkVDVE9SWSB0 byB0aGUgZnJvbnQgb2YgR3VpbGUncyBtb2R1bGUgbG9hZCBwYXRoLiAgVGhlIGdpdmVuCiAgICAg ZGlyZWN0b3JpZXMgYXJlIHNlYXJjaGVkIGluIHRoZSBvcmRlciBnaXZlbiBvbiB0aGUgY29tbWFu ZCBsaW5lIGFuZAogICAgIGJlZm9yZSBhbnkgZGlyZWN0b3JpZXMgaW4gdGhlIGBHVUlMRV9MT0FE X1BBVEgnIGVudmlyb25tZW50CiAgICAgdmFyaWFibGUuICBQYXRocyBhZGRlZCBoZXJlIGFyZSBf bm90XyBpbiBlZmZlY3QgZHVyaW5nIGV4ZWN1dGlvbiBvZgogICAgIHRoZSB1c2VyJ3MgYC5ndWls ZScgZmlsZS4KCmAteCBFWFRFTlNJT04nCiAgICAgQWRkIEVYVEVOU0lPTiB0byB0aGUgZnJvbnQg b2YgR3VpbGUncyBsb2FkIGV4dGVuc2lvbiBsaXN0ICgqbm90ZQogICAgIGAlbG9hZC1leHRlbnNp b25zJzogTG9hZGluZy4pLiAgVGhlIHNwZWNpZmllZCBleHRlbnNpb25zIGFyZSB0cmllZAogICAg IGluIHRoZSBvcmRlciBnaXZlbiBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgYmVmb3JlIHRoZSBk ZWZhdWx0CiAgICAgbG9hZCBleHRlbnNpb25zLiAgRXh0ZW5zaW9ucyBhZGRlZCBoZXJlIGFyZSBf bm90XyBpbiBlZmZlY3QgZHVyaW5nCiAgICAgZXhlY3V0aW9uIG9mIHRoZSB1c2VyJ3MgYC5ndWls ZScgZmlsZS4KCmAtbCBGSUxFJwogICAgIExvYWQgU2NoZW1lIHNvdXJjZSBjb2RlIGZyb20gRklM RSwgYW5kIGNvbnRpbnVlIHByb2Nlc3NpbmcgdGhlCiAgICAgY29tbWFuZCBsaW5lLgoKYC1lIEZV TkNUSU9OJwogICAgIE1ha2UgRlVOQ1RJT04gdGhlICJlbnRyeSBwb2ludCIgb2YgdGhlIHNjcmlw dC4gIEFmdGVyIGxvYWRpbmcgdGhlCiAgICAgc2NyaXB0IGZpbGUgKHdpdGggYC1zJykgb3IgZXZh bHVhdGluZyB0aGUgZXhwcmVzc2lvbiAod2l0aCBgLWMnKSwKICAgICBhcHBseSBGVU5DVElPTiB0 byBhIGxpc3QgY29udGFpbmluZyB0aGUgcHJvZ3JhbSBuYW1lIGFuZCB0aGUKICAgICBjb21tYW5k LWxpbmUgYXJndW1lbnRzLS10aGUgbGlzdCBwcm92aWRlZCBieSB0aGUgYGNvbW1hbmQtbGluZScK ICAgICBmdW5jdGlvbi4KCiAgICAgQSBgLWUnIHN3aXRjaCBjYW4gYXBwZWFyIGFueXdoZXJlIGlu IHRoZSBhcmd1bWVudCBsaXN0LCBidXQgR3VpbGUKICAgICBhbHdheXMgaW52b2tlcyB0aGUgRlVO Q1RJT04gYXMgdGhlIF9sYXN0XyBhY3Rpb24gaXQgcGVyZm9ybXMuCiAgICAgVGhpcyBpcyB3ZWly ZCwgYnV0IGJlY2F1c2Ugb2YgdGhlIHdheSBzY3JpcHQgaW52b2NhdGlvbiB3b3JrcyB1bmRlcgog ICAgIFBPU0lYLCB0aGUgYC1zJyBvcHRpb24gbXVzdCBhbHdheXMgY29tZSBsYXN0IGluIHRoZSBs aXN0LgoKICAgICBUaGUgRlVOQ1RJT04gaXMgbW9zdCBvZnRlbiBhIHNpbXBsZSBzeW1ib2wgdGhh dCBuYW1lcyBhIGZ1bmN0aW9uCiAgICAgdGhhdCBpcyBkZWZpbmVkIGluIHRoZSBzY3JpcHQuICBJ dCBjYW4gYWxzbyBiZSBvZiB0aGUgZm9ybSBgKEAKICAgICBNT0RVTEUtTkFNRSBTWU1CT0wpJywg YW5kIGluIHRoYXQgY2FzZSwgdGhlIHN5bWJvbCBpcyBsb29rZWQgdXAgaW4KICAgICB0aGUgbW9k dWxlIG5hbWVkIE1PRFVMRS1OQU1FLgoKICAgICBGb3IgY29tcGF0aWJpbGl0eSB3aXRoIHNvbWUg dmVyc2lvbnMgb2YgR3VpbGUgMS40LCB5b3UgY2FuIGFsc28KICAgICB1c2UgdGhlIGZvcm0gYChz eW1ib2wgLi4uKScgKHRoYXQgaXMsIGEgbGlzdCBvZiBvbmx5IHN5bWJvbHMgdGhhdAogICAgIGRv ZXNuJ3Qgc3RhcnQgd2l0aCBgQCcpLCB3aGljaCBpcyBlcXVpdmFsZW50IHRvIGAoQCAoc3ltYm9s IC4uLikKICAgICBtYWluKScsIG9yIGAoc3ltYm9sIC4uLikgIHN5bWJvbCcgKHRoYXQgaXMsIGEg bGlzdCBvZiBvbmx5IHN5bWJvbHMKICAgICBmb2xsb3dlZCBieSBhIHN5bWJvbCksIHdoaWNoIGlz IGVxdWl2YWxlbnQgdG8gYChAIChzeW1ib2wgLi4uKQogICAgIHN5bWJvbCknLiAgV2UgcmVjb21t ZW5kIHRvIHVzZSB0aGUgZXF1aXZhbGVudCBmb3JtcyBkaXJlY3RseSBzaW5jZQogICAgIHRoZXkg Y29ycmVzcG9uZCB0byB0aGUgYChAIC4uLiknICByZWFkIHN5bnRheCB0aGF0IGNhbiBiZSB1c2Vk IGluCiAgICAgbm9ybWFsIGNvZGUuICBTZWUgKm5vdGUgVXNpbmcgR3VpbGUgTW9kdWxlczo6IGFu ZCAqbm90ZSBTY3JpcHRpbmcKICAgICBFeGFtcGxlczo6LgoKYC1kcycKICAgICBUcmVhdCBhIGZp bmFsIGAtcycgb3B0aW9uIGFzIGlmIGl0IG9jY3VycmVkIGF0IHRoaXMgcG9pbnQgaW4gdGhlCiAg ICAgY29tbWFuZCBsaW5lOyBsb2FkIHRoZSBzY3JpcHQgaGVyZS4KCiAgICAgVGhpcyBzd2l0Y2gg aXMgbmVjZXNzYXJ5IGJlY2F1c2UsIGFsdGhvdWdoIHRoZSBQT1NJWCBzY3JpcHQKICAgICBpbnZv Y2F0aW9uIG1lY2hhbmlzbSBlZmZlY3RpdmVseSByZXF1aXJlcyB0aGUgYC1zJyBvcHRpb24gdG8K ICAgICBhcHBlYXIgbGFzdCwgdGhlIHByb2dyYW1tZXIgbWF5IHdlbGwgd2FudCB0byBydW4gdGhl IHNjcmlwdCBiZWZvcmUKICAgICBvdGhlciBhY3Rpb25zIHJlcXVlc3RlZCBvbiB0aGUgY29tbWFu ZCBsaW5lLiAgRm9yIGV4YW1wbGVzLCBzZWUKICAgICAqbm90ZSBTY3JpcHRpbmcgRXhhbXBsZXM6 Oi4KCmBcJwogICAgIFJlYWQgbW9yZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzLCBzdGFydGluZyBm cm9tIHRoZSBzZWNvbmQgbGluZSBvZgogICAgIHRoZSBzY3JpcHQgZmlsZS4gICpOb3RlIFRoZSBN ZXRhIFN3aXRjaDo6LgoKYC0tdXNlLXNyZmk9TElTVCcKICAgICBUaGUgb3B0aW9uIGAtLXVzZS1z cmZpJyBleHBlY3RzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgbnVtYmVycywKICAgICBlYWNo IHJlcHJlc2VudGluZyBhIFNSRkkgbW9kdWxlIHRvIGJlIGxvYWRlZCBpbnRvIHRoZSBpbnRlcnBy ZXRlcgogICAgIGJlZm9yZSBldmFsdWF0aW5nIGEgc2NyaXB0IGZpbGUgb3Igc3RhcnRpbmcgdGhl IFJFUEwuCiAgICAgQWRkaXRpb25hbGx5LCB0aGUgZmVhdHVyZSBpZGVudGlmaWVyIGZvciB0aGUg bG9hZGVkIFNSRklzIGlzCiAgICAgcmVjb2duaXplZCBieSB0aGUgcHJvY2VkdXJlIGBjb25kLWV4 cGFuZCcgd2hlbiB0aGlzIG9wdGlvbiBpcyB1c2VkLgoKICAgICBIZXJlIGlzIGFuIGV4YW1wbGUg dGhhdCBsb2FkcyB0aGUgbW9kdWxlcyBTUkZJLTggKCdyZWNlaXZlJykgYW5kCiAgICAgU1JGSS0x MyAoJ3N0cmluZyBsaWJyYXJ5JykgYmVmb3JlIHRoZSBHVUlMRSBpbnRlcnByZXRlciBpcyBzdGFy dGVkOgoKICAgICAgICAgIGd1aWxlIC0tdXNlLXNyZmk9OCwxMwoKYC0tZGVidWcnCiAgICAgU3Rh cnQgd2l0aCB0aGUgZGVidWdnaW5nIHZpcnR1YWwgbWFjaGluZSAoVk0pIGVuZ2luZS4gIFVzaW5n IHRoZQogICAgIGRlYnVnZ2luZyBWTSB3aWxsIGVuYWJsZSBzdXBwb3J0IGZvciBWTSBob29rcywg d2hpY2ggYXJlIG5lZWRlZCBmb3IKICAgICB0cmFjaW5nLCBicmVha3BvaW50cywgYW5kIGFjY3Vy YXRlIGNhbGwgY291bnRzIHdoZW4gcHJvZmlsaW5nLiAgVGhlCiAgICAgZGVidWdnaW5nIFZNIGlz IHNsb3dlciB0aGFuIHRoZSByZWd1bGFyIFZNLCB0aG91Z2gsIGJ5IGFib3V0IHRlbgogICAgIHBl cmNlbnQuICAqTm90ZSBWTSBIb29rczo6LCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KCiAgICAgQnkg ZGVmYXVsdCwgdGhlIGRlYnVnZ2luZyBWTSBlbmdpbmUgaXMgb25seSB1c2VkIHdoZW4gZW50ZXJp bmcgYW4KICAgICBpbnRlcmFjdGl2ZSBzZXNzaW9uLiAgV2hlbiBleGVjdXRpbmcgYSBzY3JpcHQg d2l0aCBgLXMnIG9yIGAtYycsCiAgICAgdGhlIG5vcm1hbCwgZmFzdGVyIFZNIGlzIHVzZWQgYnkg ZGVmYXVsdC4KCmAtLW5vLWRlYnVnJwogICAgIERvIG5vdCB1c2UgdGhlIGRlYnVnZ2luZyBWTSBl bmdpbmUsIGV2ZW4gd2hlbiBlbnRlcmluZyBhbgogICAgIGludGVyYWN0aXZlIHNlc3Npb24uCgpg LXEnCiAgICAgRG8gbm90IGxvYWQgdGhlIGluaXRpYWxpemF0aW9uIGZpbGUsIGAuZ3VpbGUnLiAg VGhpcyBvcHRpb24gb25seQogICAgIGhhcyBhbiBlZmZlY3Qgd2hlbiBydW5uaW5nIGludGVyYWN0 aXZlbHk7IHJ1bm5pbmcgc2NyaXB0cyBkb2VzIG5vdAogICAgIGxvYWQgdGhlIGAuZ3VpbGUnIGZp bGUuICAqTm90ZSBJbml0IEZpbGU6Oi4KCmAtLWxpc3Rlbls9UF0nCiAgICAgV2hpbGUgdGhpcyBw cm9ncmFtIHJ1bnMsIGxpc3RlbiBvbiBhIGxvY2FsIHBvcnQgb3IgYSBwYXRoIGZvciBSRVBMCiAg ICAgY2xpZW50cy4gIElmIFAgc3RhcnRzIHdpdGggYSBudW1iZXIsIGl0IGlzIGFzc3VtZWQgdG8g YmUgYSBsb2NhbAogICAgIHBvcnQgb24gd2hpY2ggdG8gbGlzdGVuLiAgSWYgaXQgc3RhcnRzIHdp dGggYSBmb3J3YXJkIHNsYXNoLCBpdCBpcwogICAgIGFzc3VtZWQgdG8gYmUgYSBwYXRoIHRvIGEg VU5JWCBkb21haW4gc29ja2V0IG9uIHdoaWNoIHRvIGxpc3Rlbi4KCiAgICAgSWYgUCBpcyBub3Qg Z2l2ZW4sIHRoZSBkZWZhdWx0IGlzIGxvY2FsIHBvcnQgMzcxNDYuICBJZiB5b3UgbG9vawogICAg IGF0IGl0IHVwc2lkZSBkb3duLCBpdCBhbG1vc3Qgc3BlbGxzICJHdWlsZSIuICBJZiB5b3UgaGF2 ZSBuZXRjYXQKICAgICBpbnN0YWxsZWQsIHlvdSBzaG91bGQgYmUgYWJsZSB0byBgbmMgbG9jYWxo b3N0IDM3MTQ2JyBhbmQgZ2V0IGEKICAgICBHdWlsZSBwcm9tcHQuICBBbHRlcm5hdGVseSB5b3Ug Y2FuIGZpcmUgdXAgRW1hY3MgYW5kIGNvbm5lY3QgdG8gdGhlCiAgICAgcHJvY2Vzczsgc2VlICpu b3RlIFVzaW5nIEd1aWxlIGluIEVtYWNzOjogZm9yIG1vcmUgZGV0YWlscy4KCiAgICAgTm90ZSB0 aGF0IG9wZW5pbmcgYSBwb3J0IGFsbG93cyBhbnlvbmUgd2hvIGNhbiBjb25uZWN0IHRvIHRoYXQK ICAgICBwb3J0LS1pbiB0aGUgVENQIGNhc2UsIGFueSBsb2NhbCB1c2VyLS10byBkbyBhbnl0aGlu ZyBHdWlsZSBjYW4KICAgICBkbywgYXMgdGhlIHVzZXIgdGhhdCB0aGUgR3VpbGUgcHJvY2VzcyBp cyBydW5uaW5nIGFzLiAgRG8gbm90IHVzZQogICAgIGAtLWxpc3Rlbicgb24gbXVsdGktdXNlciBt YWNoaW5lcy4gIE9mIGNvdXJzZSwgaWYgeW91IGRvIG5vdCBwYXNzCiAgICAgYC0tbGlzdGVuJyB0 byBHdWlsZSwgbm8gcG9ydCB3aWxsIGJlIG9wZW5lZC4KCiAgICAgVGhhdCBzYWlkLCBgLS1saXN0 ZW4nIGlzIGdyZWF0IGZvciBpbnRlcmFjdGl2ZSBkZWJ1Z2dpbmcgYW5kCiAgICAgZGV2ZWxvcG1l bnQuCgpgLS1hdXRvLWNvbXBpbGUnCiAgICAgQ29tcGlsZSBzb3VyY2UgZmlsZXMgYXV0b21hdGlj YWxseSAoZGVmYXVsdCBiZWhhdmlvcikuCgpgLS1uby1hdXRvLWNvbXBpbGUnCiAgICAgRGlzYWJs ZSBhdXRvbWF0aWMgc291cmNlIGZpbGUgY29tcGlsYXRpb24uCgpgLWgsIC0taGVscCcKICAgICBE aXNwbGF5IGhlbHAgb24gaW52b2tpbmcgR3VpbGUsIGFuZCB0aGVuIGV4aXQuCgpgLXYsIC0tdmVy c2lvbicKICAgICBEaXNwbGF5IHRoZSBjdXJyZW50IHZlcnNpb24gb2YgR3VpbGUsIGFuZCB0aGVu IGV4aXQuCgoKNC4yLjIgRW52aXJvbm1lbnQgVmFyaWFibGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQoKVGhlICJlbnZpcm9ubWVudCIgaXMgYSBmZWF0dXJlIG9mIHRoZSBvcGVyYXRpbmcg c3lzdGVtOyBpdCBjb25zaXN0cyBvZgphIGNvbGxlY3Rpb24gb2YgdmFyaWFibGVzIHdpdGggbmFt ZXMgYW5kIHZhbHVlcy4gIEVhY2ggdmFyaWFibGUgaXMKY2FsbGVkIGFuICJlbnZpcm9ubWVudCB2 YXJpYWJsZSIgKG9yLCBzb21ldGltZXMsIGEgInNoZWxsIHZhcmlhYmxlIik7CmVudmlyb25tZW50 IHZhcmlhYmxlIG5hbWVzIGFyZSBjYXNlLXNlbnNpdGl2ZSwgYW5kIGl0IGlzIGNvbnZlbnRpb25h bAp0byB1c2UgdXBwZXItY2FzZSBsZXR0ZXJzIG9ubHkuICBUaGUgdmFsdWVzIGFyZSBhbGwgdGV4 dCBzdHJpbmdzLCBldmVuCnRob3NlIHRoYXQgYXJlIHdyaXR0ZW4gYXMgbnVtZXJhbHMuICAoTm90 ZSB0aGF0IGhlcmUgd2UgYXJlIHJlZmVycmluZwp0byBuYW1lcyBhbmQgdmFsdWVzIHRoYXQgYXJl IGRlZmluZWQgaW4gdGhlIG9wZXJhdGluZyBzeXN0ZW0gc2hlbGwgZnJvbQp3aGljaCBHdWlsZSBp cyBpbnZva2VkLiAgVGhpcyBpcyBub3QgdGhlIHNhbWUgYXMgYSBTY2hlbWUgZW52aXJvbm1lbnQK dGhhdCBpcyBkZWZpbmVkIHdpdGhpbiBhIHJ1bm5pbmcgaW5zdGFuY2Ugb2YgR3VpbGUuICBGb3Ig YSBkZXNjcmlwdGlvbgpvZiBTY2hlbWUgZW52aXJvbm1lbnRzLCAqbm90ZSBBYm91dCBFbnZpcm9u bWVudHM6Oi4pCgogICBIb3cgdG8gc2V0IGVudmlyb25tZW50IHZhcmlhYmxlcyBiZWZvcmUgc3Rh cnRpbmcgR3VpbGUgZGVwZW5kcyBvbiB0aGUKb3BlcmF0aW5nIHN5c3RlbSBhbmQsIGVzcGVjaWFs bHksIHRoZSBzaGVsbCB0aGF0IHlvdSBhcmUgdXNpbmcuICBGb3IKZXhhbXBsZSwgaGVyZSBpcyBo b3cgdG8gdGVsbCBHdWlsZSB0byBwcm92aWRlIGRldGFpbGVkIHdhcm5pbmcgbWVzc2FnZXMKYWJv dXQgZGVwcmVjYXRlZCBmZWF0dXJlcyBieSBzZXR0aW5nIGBHVUlMRV9XQVJOX0RFUFJFQ0FURUQn IHVzaW5nIEJhc2g6CgogICAgICQgZXhwb3J0IEdVSUxFX1dBUk5fREVQUkVDQVRFRD0iZGV0YWls ZWQiCiAgICAgJCBndWlsZQoKT3IsIGRldGFpbGVkIHdhcm5pbmdzIGNhbiBiZSB0dXJuZWQgb24g Zm9yIGEgc2luZ2xlIGludm9jYXRpb24gdXNpbmc6CgogICAgICQgZW52IEdVSUxFX1dBUk5fREVQ UkVDQVRFRD0iZGV0YWlsZWQiIGd1aWxlCgogICBJZiB5b3Ugd2lzaCB0byByZXRyaWV2ZSBvciBj aGFuZ2UgdGhlIHZhbHVlIG9mIHRoZSBzaGVsbCBlbnZpcm9ubWVudAp2YXJpYWJsZXMgdGhhdCBh ZmZlY3QgdGhlIHJ1bi10aW1lIGJlaGF2aW9yIG9mIEd1aWxlIGZyb20gd2l0aGluIGEKcnVubmlu ZyBpbnN0YW5jZSBvZiBHdWlsZSwgc2VlICpub3RlIFJ1bnRpbWUgRW52aXJvbm1lbnQ6Oi4KCiAg IEhlcmUgYXJlIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdGhhdCBhZmZlY3QgdGhlIHJ1bi10 aW1lIGJlaGF2aW9yCm9mIEd1aWxlOgoKYEdVSUxFX0FVVE9fQ09NUElMRScKICAgICBUaGlzIGlz IGEgZmxhZyB0aGF0IGNhbiBiZSB1c2VkIHRvIHRlbGwgR3VpbGUgd2hldGhlciBvciBub3QgdG8K ICAgICBjb21waWxlIFNjaGVtZSBzb3VyY2UgZmlsZXMgYXV0b21hdGljYWxseS4gIFN0YXJ0aW5n IHdpdGggR3VpbGUKICAgICAyLjAsIFNjaGVtZSBzb3VyY2UgZmlsZXMgd2lsbCBiZSBjb21waWxl ZCBhdXRvbWF0aWNhbGx5LCBieQogICAgIGRlZmF1bHQuICBJZiBgR1VJTEVfQVVUT19DT01QSUxF JyBpcyBzZXQgdG8gemVybyAoMCksIHRoZW4gU2NoZW1lCiAgICAgZmlsZXMgYXJlIG5vdCBjb21w aWxlZCBhdXRvbWF0aWNhbGx5LgoKICAgICBJZiBhIGNvbXBpbGVkIGAuZ28nIGZpbGUgY29ycmVz cG9uZGluZyB0byBhIGAuc2NtJyBmaWxlIGlzIG5vdAogICAgIGZvdW5kIG9yIGlzIG5vdCBuZXdl ciB0aGFuIHRoZSBgLnNjbScgZmlsZSwgdGhlIGAuc2NtJyBmaWxlIHdpbGwKICAgICBiZSBjb21w aWxlZCBvbiB0aGUgZmx5LCBhbmQgdGhlIHJlc3VsdGluZyBgLmdvJyBmaWxlIHN0b3JlZCBhd2F5 LgogICAgIEFuIGFkdmlzb3J5IG5vdGUgd2lsbCBiZSBwcmludGVkIG9uIHRoZSBjb25zb2xlLgoK ICAgICBOb3RlIHRoYXQgdGhpcyBtZWNoYW5pc20gZGVwZW5kcyBvbiB0aGUgdGltZXN0YW1wIG9m IHRoZSBgLmdvJyBmaWxlCiAgICAgYmVpbmcgbmV3ZXIgdGhhbiB0aGF0IG9mIHRoZSBgLnNjbScg ZmlsZTsgaWYgdGhlIGAuc2NtJyBvciBgLmdvJwogICAgIGZpbGVzIGFyZSBtb3ZlZCBhZnRlciBp bnN0YWxsYXRpb24sIGNhcmUgc2hvdWxkIGJlIHRha2VuIHRvCiAgICAgcHJlc2VydmUgdGhlaXIg b3JpZ2luYWwgdGltZXN0YW1wcy4KCiAgICAgQXV0by1jb21waWxlZCBmaWxlcyB3aWxsIGJlIHN0 b3JlZCBpbiB0aGUgZGlyZWN0b3J5CiAgICAgYCRYREdfQ0FDSEVfSE9NRS9ndWlsZS9jY2FjaGUn LCB3aGVyZSBgWERHX0NBQ0hFX0hPTUUnIGRlZmF1bHRzIHRvCiAgICAgdGhlIGRpcmVjdG9yeSBg JEhPTUUvLmNhY2hlJy4gIFRoaXMgZGlyZWN0b3J5IHdpbGwgYmUgY3JlYXRlZCBpZgogICAgIGl0 IGRvZXMgbm90IGFscmVhZHkgZXhpc3QuCgogICAgIFRvIGluaGliaXQgYXV0b21hdGljIGNvbXBp bGF0aW9uLCBzZXQgdGhlIGBHVUlMRV9BVVRPX0NPTVBJTEUnCiAgICAgZW52aXJvbm1lbnQgdmFy aWFibGUgdG8gemVybyAoMCksIG9yIHBhc3MgYC0tbm8tYXV0by1jb21waWxlJyBvbgogICAgIHRo ZSBHdWlsZSBjb21tYW5kIGxpbmUuCgpgR1VJTEVfSElTVE9SWScKICAgICBUaGlzIHZhcmlhYmxl IG5hbWVzIHRoZSBmaWxlIHRoYXQgaG9sZHMgdGhlIEd1aWxlIFJFUEwgY29tbWFuZAogICAgIGhp c3RvcnkuICBZb3UgY2FuIHNwZWNpZnkgYSBkaWZmZXJlbnQgaGlzdG9yeSBmaWxlIGJ5IHNldHRp bmcgdGhpcwogICAgIGVudmlyb25tZW50IHZhcmlhYmxlLiAgQnkgZGVmYXVsdCwgdGhlIGhpc3Rv cnkgZmlsZSBpcwogICAgIGAkSE9NRS8uZ3VpbGVfaGlzdG9yeScuCgpgR1VJTEVfTE9BRF9DT01Q SUxFRF9QQVRIJwogICAgIFRoaXMgdmFyaWFibGUgbWF5IGJlIHVzZWQgdG8gYXVnbWVudCB0aGUg cGF0aCB0aGF0IGlzIHNlYXJjaGVkIGZvcgogICAgIGNvbXBpbGVkIFNjaGVtZSBmaWxlcyAoYC5n bycgZmlsZXMpIHdoZW4gbG9hZGluZy4gIEl0cyB2YWx1ZSBzaG91bGQKICAgICBiZSBhIGNvbG9u LXNlcGFyYXRlZCBsaXN0IG9mIGRpcmVjdG9yaWVzLCB3aGljaCB3aWxsIGJlIHByZWZpeGVkCiAg ICAgdG8gdGhlIHZhbHVlIG9mIHRoZSBkZWZhdWx0IHNlYXJjaCBwYXRoIHN0b3JlZCBpbgogICAg IGAlbG9hZC1jb21waWxlZC1wYXRoJy4KCiAgICAgSGVyZSBpcyBhbiBleGFtcGxlIHVzaW5nIHRo ZSBCYXNoIHNoZWxsIHRoYXQgYWRkcyB0aGUgY3VycmVudAogICAgIGRpcmVjdG9yeSwgYC4nLCBh bmQgdGhlIHJlbGF0aXZlIGRpcmVjdG9yeSBgLi4vbXktbGlicmFyeScgdG8KICAgICBgJWxvYWQt Y29tcGlsZWQtcGF0aCc6CgogICAgICAgICAgJCBleHBvcnQgR1VJTEVfTE9BRF9DT01QSUxFRF9Q QVRIPSIuOi4uL215LWxpYnJhcnkiCiAgICAgICAgICAkIGd1aWxlIC1jICcoZGlzcGxheSAlbG9h ZC1jb21waWxlZC1wYXRoKSAobmV3bGluZSknCiAgICAgICAgICAoLiAuLi9teS1saWJyYXJ5IC91 c3IvbG9jYWwvbGliL2d1aWxlLzIuMC9jY2FjaGUpCgpgR1VJTEVfTE9BRF9QQVRIJwogICAgIFRo aXMgdmFyaWFibGUgbWF5IGJlIHVzZWQgdG8gYXVnbWVudCB0aGUgcGF0aCB0aGF0IGlzIHNlYXJj aGVkIGZvcgogICAgIFNjaGVtZSBmaWxlcyB3aGVuIGxvYWRpbmcuICBJdHMgdmFsdWUgc2hvdWxk IGJlIGEgY29sb24tc2VwYXJhdGVkCiAgICAgbGlzdCBvZiBkaXJlY3Rvcmllcywgd2hpY2ggd2ls bCBiZSBwcmVmaXhlZCB0byB0aGUgdmFsdWUgb2YgdGhlCiAgICAgZGVmYXVsdCBzZWFyY2ggcGF0 aCBzdG9yZWQgaW4gYCVsb2FkLXBhdGgnLgoKICAgICBIZXJlIGlzIGFuIGV4YW1wbGUgdXNpbmcg dGhlIEJhc2ggc2hlbGwgdGhhdCBhZGRzIHRoZSBjdXJyZW50CiAgICAgZGlyZWN0b3J5IGFuZCB0 aGUgcGFyZW50IG9mIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB0byBgJWxvYWQtcGF0aCc6CgogICAg ICAgICAgJCBlbnYgR1VJTEVfTE9BRF9QQVRIPSIuOi4uIiBcCiAgICAgICAgICBndWlsZSAtYyAn KGRpc3BsYXkgJWxvYWQtcGF0aCkgKG5ld2xpbmUpJwogICAgICAgICAgKC4gLi4gL3Vzci9sb2Nh bC9zaGFyZS9ndWlsZS8yLjAgXAogICAgICAgICAgL3Vzci9sb2NhbC9zaGFyZS9ndWlsZS9zaXRl LzIuMCBcCiAgICAgICAgICAvdXNyL2xvY2FsL3NoYXJlL2d1aWxlL3NpdGUgL3Vzci9sb2NhbC9z aGFyZS9ndWlsZSkKCiAgICAgKE5vdGU6IFRoZSBsaW5lIGJyZWFrcywgYWJvdmUsIGFyZSBmb3Ig ZG9jdW1lbnRhdGlvbiBwdXJwb3NlcwogICAgIG9ubHksIGFuZCBub3QgcmVxdWlyZWQgaW4gdGhl IGFjdHVhbCBleGFtcGxlLikKCmBHVUlMRV9XQVJOX0RFUFJFQ0FURUQnCiAgICAgQXMgR3VpbGUg ZXZvbHZlcywgc29tZSBmZWF0dXJlcyB3aWxsIGJlIGVsaW1pbmF0ZWQgb3IgcmVwbGFjZWQgYnkK ICAgICBuZXdlciBmZWF0dXJlcy4gIFRvIGhlbHAgdXNlcnMgbWlncmF0ZSB0aGVpciBjb2RlIGFz IHRoaXMKICAgICBldm9sdXRpb24gb2NjdXJzLCBHdWlsZSB3aWxsIGlzc3VlIHdhcm5pbmcgbWVz c2FnZXMgYWJvdXQgY29kZQogICAgIHRoYXQgdXNlcyBmZWF0dXJlcyB0aGF0IGhhdmUgYmVlbiBt YXJrZWQgZm9yIGV2ZW50dWFsIGVsaW1pbmF0aW9uLgogICAgIGBHVUlMRV9XQVJOX0RFUFJFQ0FU RUQnIGNhbiBiZSBzZXQgdG8gIm5vIiB0byB0ZWxsIEd1aWxlIG5vdCB0bwogICAgIGRpc3BsYXkg dGhlc2Ugd2FybmluZyBtZXNzYWdlcywgb3Igc2V0IHRvICJkZXRhaWxlZCIgdG8gdGVsbCBHdWls ZQogICAgIHRvIGRpc3BsYXkgbW9yZSBsZW5ndGh5IG1lc3NhZ2VzIGRlc2NyaWJpbmcgdGhlIHdh cm5pbmcuICAqTm90ZQogICAgIERlcHJlY2F0aW9uOjouCgpgSE9NRScKICAgICBHdWlsZSB1c2Vz IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBgSE9NRScsIHRoZSBuYW1lIG9mIHlvdXIgaG9tZQog ICAgIGRpcmVjdG9yeSwgdG8gbG9jYXRlIHZhcmlvdXMgZmlsZXMsIHN1Y2ggYXMgYC5ndWlsZScg b3IKICAgICBgLmd1aWxlX2hpc3RvcnknLgoKYExURExfTElCUkFSWV9QQVRIJwogICAgIEd1aWxl IG5vdyBhZGRzIGl0cyBpbnN0YWxsIHByZWZpeCB0byB0aGUgYExURExfTElCUkFSWV9QQVRIJy4K CiAgICAgVXNlcnMgbWF5IG5vdyBpbnN0YWxsIEd1aWxlIGluIG5vbi1zdGFuZGFyZCBkaXJlY3Rv cmllcyBhbmQgcnVuCiAgICAgYC9wYXRoL3RvL2Jpbi9ndWlsZScsIHdpdGhvdXQgaGF2aW5nIGFs c28gdG8gc2V0CiAgICAgYExURExfTElCUkFSWV9QQVRIJyB0byBpbmNsdWRlIGAvcGF0aC90by9s aWInLgoK ----------MB_8CDD0D662B6EEDC_1820_1C1BF_webmail-m029.sysops.aol.com--