<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>66478</bug_id>
          
          <creation_ts>2004-10-05 18:02 0000</creation_ts>
          <short_desc>[PATCH] Proposal: use newest automake/autoconf by default</short_desc>
          <delta_ts>2004-11-13 21:46:58 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Core system</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>56670</dependson>
          <blocked>58791</blocked>
          
          <everconfirmed>1</everconfirmed>
          <reporter>greg_g@gentoo.org</reporter>
          <assigned_to>base-system@gentoo.org</assigned_to>
          <cc>carlo@gentoo.org</cc>
    
    <cc>dberkholz@gentoo.org</cc>
    
    <cc>motaboy@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:02:18 0000</bug_when>
            <thetext>The following patches change the ac-wrapper.pl and am-wrapper.pl scripts
to use by default the most recent version of auto* tools (autoconf-2.59,
automake-1.8 at the moment) instead of the ancient 2.13 and 1.4.

This has little impact on the packages in the portage tree, because the
wrappers do a very good job at detecting the version used to generate
configure and Makefile.in, automatically choosing the correct version
even without defining WANT_AUTOCONF/WANT_AUTOMAKE.

The default comes into play mainly for newly created projects, when autotools
run for the first time; since Gentoo is the platform of choice for a lot of 
software developers it is a good idea to stimulate the use of newer tools.

Moreover, bug 56670, bug 58255 and newly created bug 66446 can take advantage 
of this change, and the code in the wrappers is a bit simplified.

I did quite a lot of testing to ensure the rules are correct, while I found
the current versions are not rock solid, for instance the rule in 
ac-wrapper.pl

(cat_(&apos;configure&apos;) =~ /^# Generated by Autoconf (\S+)/m ? $1 : &apos;&apos;) gt &apos;2.13&apos;

is not correct (the text is a bit different and does not match).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:03:10 0000</bug_when>
            <thetext>Created an attachment (id=41191)
patch for ac-wrapper-4.pl
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:03:43 0000</bug_when>
            <thetext>Created an attachment (id=41192)
patch for am-wrapper.pl-1.8-v2
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:04:31 0000</bug_when>
            <thetext>Created an attachment (id=41193)
plain ac-wrapper.pl
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:04:54 0000</bug_when>
            <thetext>Created an attachment (id=41194)
plain am-wrapper.pl
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-05 18:09:08 0000</bug_when>
            <thetext>Created an attachment (id=41195)
patch for am-wrapper.pl-1.8-v2
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-20 18:03:24 0000</bug_when>
            <thetext>autoconf-2.59-r6+ does this now</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-23 05:00:21 0000</bug_when>
            <thetext>Out of curiosity:

the new masked autoconf-wrapper brings back to the old deprecated syntax:
WANT_AUTOCONF_2_1 (and changes WANT_AUTOCONF_2_5 to FORCE_AUTOCONF_2_5),
is this the intended behavior for the future or is it just a work in progress?

If the autoconf/automake stuff will be slotted, will it be responsability
of the ebuild writers to depend on the right version? Doesn&apos;t this defeat
the purpose of the autodetection logic?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-23 21:29:21 0000</bug_when>
            <thetext>the WANT_AUTOCONF= missing is a mistake, i grabbed the latest mdk wrapper since it handles things better but i missed the reversal of the envvar

i&apos;ll port the syntax from the older wrapper forward

as for the SLOTing thing, we may just make the wrapper DEPEND on all versions</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-10-25 10:14:47 0000</bug_when>
            <thetext>In concept I do not have a problem with this, but you will have to a clean
bootstrap &amp; emerge system &amp; emerge gnome kde whateverelse to verify that there
are no regressions ...

Mike, also please do not just use the latest MDK stuff .. we have a lot of
fixes that they do not ...
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-25 16:16:18 0000</bug_when>
            <thetext>like i mentioned before, i&apos;m quite weak at perl ;)

the new wrapper handled Bug 56670 correctly ... or it could just be because the new wrapper runs 2.5x by default ...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-26 02:41:53 0000</bug_when>
            <thetext>yes... as pointed out in comment #0

If anyone interested, I can repost my patches taking into account
the updated mdk scripts.
and now I&apos;m going do the bootstrap test...
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-10-26 12:21:39 0000</bug_when>
            <thetext>For interest sake, what is new in the latest MDK scripts btw?  They bitched
about me not sending them fixes, but then when I did never bothered to use
it.  Oh, and do they actually have an am-wrapper.pl now?  They did not use
to have ...
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-26 12:32:00 0000</bug_when>
            <thetext>i was only able to find an updated ac-wrapper via src rpms on some rpmfind sites ... wasnt able to find traces of am-wrapper anywhere at all, let alone an upstream cvs site or something

from what i could tell, ac-wrapper had these changed behaviors:
- better parsing for required versions
- no more support for WANT_AUTOCONF_#_#=1
- change the order of selection from newest to oldest instead of oldest to newest</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-10-27 10:56:41 0000</bug_when>
            <thetext>Mind attaching it to this bug?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-27 18:19:45 0000</bug_when>
            <thetext>Created an attachment (id=42738)
ac-wrapper.pl

http://rpm.pbone.net/index.php3/stat/4/idpl/1399863/com/autoconf2.5-2.59-6mdk.noarch.rpm.html

this was the best i could find, grabbed the ac-wrapper.pl out of it</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-10-29 10:30:54 0000</bug_when>
            <thetext>Seems they only really fix the check for the dubious:

  (cat_(&apos;configure&apos;) =~ /^# Generated by Autoconf (\S+)/m ? $1 : &apos;&apos;) gt &apos;2.13&apos;

and then they add some really nice error checking and consistent checking.

Gregorio, I do not know if you want to take a stab at integrating some of the
ideas in there, as it seems your perl might be better than mine (which is only
slightly better than Mike&apos;s I *think*) ?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-29 15:20:47 0000</bug_when>
            <thetext>Created an attachment (id=42882)
ac-wrapper-1.pl based on the mdk one

&gt; ... it seems your perl might be better than mine

I don&apos;t think so... anyway, here&apos;s a version of the mdk script
modified to respect the WANT_AUTOCONF=x.y syntax, and using a style
consistent with am-wrapper.pl (will attach that in a minute...)
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-10-29 15:31:05 0000</bug_when>
            <thetext>Created an attachment (id=42883)
am-wrapper-1.pl based on the mdk one

... and here&apos;s a new am-wrapper.pl, created from the old one using
the same style of ac-wrapper.pl, naturally using the WANT_AUTOMAKE=x.y syntax.

Both the scripts have passed a fair round of testing.

Note: I didn&apos;t reintroduce the code to stay comptible with the old 
WANT_AUTOCONF_x_y syntax. That could be added with no troubles, but I think
it is convinient to just remove support for that:
currently in the tree there are just two packages setting WANT_AUTOCONF_2_1: 
kde-functions.eclass and mozilla (a bunch of others use WANT_AUTOCONF_2_5, 
which is now useless), and there are 6 that use WANT_AUTOMAKE_1_x: 
kde-functions.eclass, cyrus-sasl, vlc, drip, texinfo, libtool; all these could 

be changed by hand in a minute.

But the decision is up to you.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-10-31 04:32:20 0000</bug_when>
            <thetext>Looks good.  I was thinking it might be a good idea to see if the old value
is in use, and then error out?  Should make sure it dies a good death.

Mike, can you possibly get time to fix the tree of the old syntax ?

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-31 11:19:37 0000</bug_when>
            <thetext>yep, i&apos;ll start checkin now</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-10-31 17:20:59 0000</bug_when>
            <thetext>all set now</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-11-04 20:27:50 0000</bug_when>
            <thetext>you know, someone just pointed out something that was kind of obvious ...

why dont we just rewrite this frickin things in bash ?

the wrapper is pretty simple, not a lot of hard logic here ... the core guys can all handle bash/awk/sed/etc... easily (instead of perl) ...
and, we wont have to try to keep our crap in sync with mdk ... it&apos;s already proven to be a hassle

so what do you guys think ?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-11-05 09:23:13 0000</bug_when>
            <thetext>Created an attachment (id=43350)
ac-wrapper-1.sh

Ok, what about this?

it calls perl to match the regexp, but it&apos;s just one line.
The same thing with awk will look like this:
 awk &apos;{ if (match($0, &quot;^# Generated (by (GNU )?Autoconf|automatically using
autoconf version) ([0-9].[0-9])&quot;, res)) { print res[3]; exit } }&apos; configure

ugly, isn&apos;t it?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>greg_g@gentoo.org</who>
            <bug_when>2004-11-05 09:23:44 0000</bug_when>
            <thetext>Created an attachment (id=43351)
am-wrapper-1.sh

and here&apos;s the brother script</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-11-05 10:27:11 0000</bug_when>
            <thetext>I am pretty sure it will be faster if we just used perl, instead of bash
calling perl (bash is slow to begin with, now you have it calling perl).

Just my thoughts anyhow ...
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-11-05 16:16:53 0000</bug_when>
            <thetext>that may be true, but in the larger scheme of things, how much of an overhead would it inflict ?

i&apos;m sure the large majority of time will be spent in the actual autoconf/automake scripts and the overhead for using bash instead of perl is negligible

the call to perl can be rewritten in &apos;proper&apos; shell (as pointed out by Gregorio) ... perhaps we could touch it up to make it less ugly :)

the biggest gain here is the level of competence required to fix the script ... simple fact, the core guys all know bash inside and out a lot less of us know perl (some even at all :p)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>azarah@gentoo.org</who>
            <bug_when>2004-11-08 10:19:41 0000</bug_when>
            <thetext>I guess I will be more comfortable with bash/awk as well.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-11-13 21:46:58 0000</bug_when>
            <thetext>ok, new bash versions are in cvs, thanks :)

please file new bugs if the new bash versions have bugs ... i&apos;m running some tests locally now</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41191</attachid>
            <date>2004-10-05 18:03 0000</date>
            <desc>patch for ac-wrapper-4.pl</desc>
            <filename>ac-wrapper.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGFjLXdyYXBwZXItNC5wbC5vcmlnCTIwMDQtMTAtMDYgMDI6NTQ6MzAuNzI2MjkwNjAwICsw
MjAwCisrKyBhYy13cmFwcGVyLTQucGwJMjAwNC0xMC0wNiAwMjo0ODozNS45MDkyMzA5OTIgKzAy
MDAKQEAgLTE1LDMxICsxNSwyNiBAQAogIwogIyBFeGVjdXRlcyB0aGUgY29ycmVjdCBhdXRvY29u
ZiB2ZXJzaW9uLgogIwotIyAtIGRlZmF1bHRzIHRvIGF1dG9jb25mLTIuMTMKLSMgLSBydW5zIGF1
dG9jb25mLTIuNXggaWYgaXQgZXhpc3RzIGFuZC4uLgotIyAgIC0gZW52dmFyIFdBTlRfQVVUT0NP
TkYgaXMgc2V0IHRvIGAyLjUnCisjIC0gZGVmYXVsdHMgdG8gYXV0b2NvbmYtMi41eAorIyAtIHJ1
bnMgYXV0b2NvbmYtMi4xMyBpZiBpdCBleGlzdHMgYW5kLi4uCisjICAgLSBlbnZ2YXIgV0FOVF9B
VVRPQ09ORiBpcyBzZXQgdG8gYDIuMScKICMgICAgIC1vci0KLSMgICAtIGNvbmZpZ3VyZS5hYyBp
cyBwcmVzZW50CisjICAgLSBgY29uZmlndXJlLmluJyBjb250YWlucyBBQ19QUkVSRVEgYW5kIHRo
ZSB2YWx1ZSdzIDIgZmlyc3QgbGV0dGVycworIyAgICAgYXJlIHN0cmluZ3dpc2UgZXF1YWwgdG8g
JzIuMScKICMgICAgIC1vci0KLSMgICAtIGBjb25maWd1cmUuaW4nIGNvbnRhaW5zIEFDX1BSRVJF
USBhbmQgdGhlIHZhbHVlJ3MgMyBmaXJzdCBsZXR0ZXJzCi0jICAgICBhcmUgc3RyaW5nd2lzZSBn
cmVhdGVyIHRoYW4gJzIuMTMnCi0jICAgICAtb3ItCi0jICAgLSBgY29uZmlndXJlJyBpcyBhbHJl
YWR5IHByZXNlbnQgYW5kIHdhcyBnZW5lcmF0ZWQgYnkgYXV0b2NvbmYgZ3JlYXRlciB0aGFuCisj
ICAgLSBgY29uZmlndXJlJyBpcyBhbHJlYWR5IHByZXNlbnQgYW5kIHdhcyBnZW5lcmF0ZWQgYnkg
YXV0b2NvbmYgZXF1YWwgdG8KICMgICAgICcyLjEzJwotIyAgICAgLW9yLQotIyAgIC0gYE1ha2Vm
aWxlLmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNiBvciBzdXBlcmlvciwgd2hpY2gK
LSMgICAgIHNwZWNpZmljYWxseSBuZWVkcyBhdXRvY29uZi0yLjV4CiAjCiAKICN1c2UgTURLOjpD
b21tb247CiAKIHN1YiBjYXRfIHsgbG9jYWwgKkY7IG9wZW4gRiwgJF9bMF0gb3IgcmV0dXJuOyBt
eSBAbCA9IDxGPjsgd2FudGFycmF5ID8gQGwgOiBqb2luICcnLCBAbCB9CiBzdWIgYWNfdmVyc2lv
biB7Ci0JcmV0dXJuICgoQHZlcnNpb25zID0gY2F0XyhzaGlmdCkgPX4gL15ccypcWz9BQ19QUkVS
RVFcKFxbPyhbXlwpXXszfVswLTldPylbXlwpXSpcXT9cKS9tZykgPyAoKHNvcnQgQHZlcnNpb25z
KVstMV0pIDogJycpOworCXJldHVybiAoKEB2ZXJzaW9ucyA9IGNhdF8oc2hpZnQpID1+IC9eXHMq
XFs/QUNfUFJFUkVRXChcWz8oW15cKV17Mn1bMC05XT8pW15cKV0qXF0/XCkvbWcpID8gKChzb3J0
IEB2ZXJzaW9ucylbLTFdKSA6ICcnKTsKIH0KIAotbXkgJGJpbmFyeSAgICAgPSAiJDAtMi4xMyI7
Ci1teSAkYmluYXJ5X25ldyA9ICIkMC0yLjV4IjsKK215ICRiaW5hcnlfb2xkID0gIiQwLTIuMTMi
OworbXkgJGJpbmFyeSAgICAgPSAiJDAtMi41eCI7CiAKICMgQXV0b2NvbmYgaXMgcmVhbGx5IGdl
dHRpbmcgb3V0IG9mIGhhbmQsIHNvIHJhdGhlciBzdGFydCBzdXBwb3J0aW5nCiAjIFdBTlRfQVVU
T0NPTkYgPSAiMi41IiB0aGUgbGlrZS4gIFVuZm9ydHVuYXRlbHkgaXQgb3ZlcnJpZGUgdGhlIG9s
ZApAQCAtNTIsMjAgKzQ3LDE3IEBACiAJfQogfQogCi1pZiAoJEVOVntXQU5UX0FVVE9DT05GfSBu
ZSAnMi4xJykgewotICAgIGlmICgoISAteCAkYmluYXJ5KSAgICAgICAgICAgICAgICAgICMgaGFu
ZGxlIHN0dWZmIGxpa2UgYXV0b200dGUsIHdoZXJlIG9ubHkgMi41eCBoYXZlIHRoZSBiaW5hcnkK
LQl8fCAoLXggJGJpbmFyeV9uZXcgICAgICAgICAgICAgICMgdXNlciBtYXkgaGF2ZSBvbmx5IDIu
MTMKLQkgICAgJiYgKCgkRU5We1dBTlRfQVVUT0NPTkZ9IGVxICcyLjUnKQotCSAgICAgICAgfHwg
LXIgJ2NvbmZpZ3VyZS5hYycKLQkJfHwgYWNfdmVyc2lvbignY29uZmlndXJlLmluJykgZ3QgJzIu
MTMnCi0JICAgICAgICB8fCAoY2F0XygnY29uZmlndXJlJykgPX4gL14jIEdlbmVyYXRlZCBieSBB
dXRvY29uZiAoXFMrKS9tID8gJDEgOiAnJykgZ3QgJzIuMTMnCi0JICAgICAgICB8fCAoY2F0Xygn
TWFrZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVcLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAo
XFMrKS8gPyAkMSA6ICcnKSBnZSAnMS42JwotCQl8fCBhY192ZXJzaW9uKCdhY2xvY2FsLm00Jykg
Z3QgJzIuMTMnKSkpIHsKLQkkRU5We1dBTlRfQVVUT0NPTkZ9ID0gJzIuNSc7ICAgICMgdG8gcHJl
dmVudCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUg
Y3dkIGV0YykKLQkkYmluYXJ5IAkgICAgPSAkYmluYXJ5X25ldzsKLSAgICB9IGVsc2UgewotCSRF
TlZ7V0FOVF9BVVRPQ09ORn0gPSAnMi4xJzsgICAgIyBmb3IgZnVydGhlciBjb25zaXN0ZW5jeQot
ICAgIH0KK2lmICgkRU5We1dBTlRfQVVUT0NPTkZ9IG5lICcyLjUnKSB7CisJaWYgKCgteCAkYmlu
YXJ5X29sZAorCSYmICgoJEVOVntXQU5UX0FVVE9DT05GfSBlcSAnMi4xJykKKwkgICAgfHwgYWNf
dmVyc2lvbignY29uZmlndXJlLmluJykgZXEgJzIuMScKKwkgICAgfHwgKGNhdF8oJ2NvbmZpZ3Vy
ZScpID1+IC9eIyBHZW5lcmF0ZWQgYXV0b21hdGljYWxseSB1c2luZyBhdXRvY29uZiB2ZXJzaW9u
IChcUyspL20gPyAkMSA6ICcnKSBlcSAnMi4xMycKKwkgICAgfHwgYWNfdmVyc2lvbignYWNsb2Nh
bC5tNCcpIGVxICcyLjEnKSkpIHsKKwkJJEVOVntXQU5UX0FVVE9DT05GfSA9ICcyLjEnOyAgICAj
IHRvIHByZXZlbnQgZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kgKHBv
c3NpYmxlIGN3ZCBldGMpCisJCSRiaW5hcnkgCSAgICA9ICRiaW5hcnlfb2xkOworCX0gZWxzZSB7
CisJCSRFTlZ7V0FOVF9BVVRPQ09ORn0gPSAnMi41JzsgICAgIyBmb3IgZnVydGhlciBjb25zaXN0
ZW5jeQorCX0KIH0KIAogIyBTZXQgQVVUT000VEUgdG8gdGhlIHByb3BlciB2ZXJzaW9uIChidWcg
IzQwOTgzKS4K
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41192</attachid>
            <date>2004-10-05 18:03 0000</date>
            <desc>patch for am-wrapper.pl-1.8-v2</desc>
            <filename>am-wrapper.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGFtLXdyYXBwZXIucGwtMS44LXYyLm9yaWcJMjAwNC0xMC0wNiAwMjo1MzowNS40NDAyNTYw
NDggKzAyMDAKKysrIGFtLXdyYXBwZXIucGwtMS44LXYyCTIwMDQtMTAtMDYgMDI6NTM6MjMuODg1
NDUxOTUyICswMjAwCkBAIC0xNiw2OCArMTYsNDggQEAKICMKICMgRXhlY3V0ZXMgdGhlIGNvcnJl
Y3QgYXV0b2NvbmYgdmVyc2lvbi4KICMKLSMgLSBkZWZhdWx0cyB0byBhdXRvbWFrZS0xLjQKLSMg
LSBydW5zIGF1dG9tYWtlLTEuOCBpZiBpdCBleGlzdHMgYW5kLi4uCi0jICAgLSBlbnZ2YXIgV0FO
VF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuOCcKLSMgICAgIC1vci0KLSMgICAtIGBNYWtlZmlsZS5p
bicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjggb3Igc3VwZXJpb3IsIHdoaWNoCi0jICAg
ICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS44Ci0jICAgICAtb3JfCi0jICAgLSAnYWNs
b2NhbC5tNCcgY29udGFpbiBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5aW5nIHRoZSB1c2Ug
b2YgMS44CisjIC0gZGVmYXVsdHMgdG8gYXV0b21ha2UtMS44CiAjIC0gcnVucyBhdXRvbWFrZS0x
LjcgaWYgaXQgZXhpc3RzIGFuZC4uLgogIyAgIC0gZW52dmFyIFdBTlRfQVVUT01BS0UgaXMgc2V0
IHRvIGAxLjcnCiAjICAgICAtb3ItCi0jICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQg
YnkgYXV0b21ha2UtMS43IG9yIHN1cGVyaW9yLCB3aGljaAorIyAgIC0gYE1ha2VmaWxlLmluJyB3
YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNywgd2hpY2gKICMgICAgIHNwZWNpZmljYWxseSBu
ZWVkcyBhdXRvbWFrZS0xLjcKICMgICAgIC1vci0KLSMgICAtICdhY2xvY2FsLm00JyBjb250YWlu
IEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNpZnlpbnQgdGhlIHVzZSBvZiAxLjcKLSMgICAgIC1v
ci0KKyMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNp
ZnlpbmcgdGhlIHVzZSBvZiAxLjcKICMgLSBydW5zIGF1dG9tYWtlLTEuNiBpZiBpdCBleGlzdHMg
YW5kLi4uCiAjICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuNicKICMgICAg
IC1vci0KLSMgICAtIGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjYg
b3Igc3VwZXJpb3IsIHdoaWNoCisjICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQgYnkg
YXV0b21ha2UtMS42LCB3aGljaAogIyAgICAgc3BlY2lmaWNhbGx5IG5lZWRzIGF1dG9tYWtlLTEu
NgogIyAgICAgLW9yLQotIyAgIC0gJ2FjbG9jYWwubTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVS
U0lPTiwgc3BlY2lmeWludCB0aGUgdXNlIG9mIDEuNgotIyAgICAgLW9yLQotIyAgIC0gYGNvbmZp
Z3VyZS5pbicgY29udGFpbnMgQUNfUFJFUkVRIGFuZCB0aGUgdmFsdWUncyAzIGZpcnN0IGxldHRl
cnMKLSMgICAgICBhcmUgc3RyaW5nd2lzZSBncmVhdGVyIHRoYW4gJzIuNTNjJwotIyAgICAgLW9y
LQotIyAgIC0gYGNvbmZpZ3VyZScgaXMgYWxyZWFkeSBwcmVzZW50IGFuZCB3YXMgZ2VuZXJhdGVk
IGJ5IGF1dG9jb25mIGdyZWF0ZXIgdGhhbgotIyAgICAgJzIuNTNjJworIyAgIC0gJ2FjbG9jYWwu
bTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVSU0lPTiwgc3BlY2lmeWluZyB0aGUgdXNlIG9mIDEu
NgogIyAtIHJ1bnMgYXV0b21ha2UtMS41IGlmIGl0IGV4aXN0cyBhbmQuLi4KICMgICAtIGVudnZh
ciBXQU5UX0FVVE9NQUtFIGlzIHNldCB0byBgMS41JwogIyAgICAgLW9yLQotIyAgIC0gY29uZmln
dXJlLmFjIGlzIHByZXNlbnQKKyMgICAtIGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBh
dXRvbWFrZS0xLjUsIHdoaWNoCisjICAgICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS41
CiAjICAgICAtb3ItCi0jICAgLSBgY29uZmlndXJlLmluJyBjb250YWlucyBBQ19QUkVSRVEgYW5k
IHRoZSB2YWx1ZSdzIDMgZmlyc3QgbGV0dGVycwotIyAgICAgIGFyZSBzdHJpbmd3aXNlIGdyZWF0
ZXIgdGhhbiAnMi4xMycKKyMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZF
UlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjUKKyMgLSBydW5zIGF1dG9tYWtlLTEuNCBp
ZiBpdCBleGlzdHMgYW5kLi4uCisjICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8g
YDEuNCcKICMgICAgIC1vci0KLSMgICAtIGBjb25maWd1cmUnIGlzIGFscmVhZHkgcHJlc2VudCBh
bmQgd2FzIGdlbmVyYXRlZCBieSBhdXRvY29uZiBncmVhdGVyIHRoYW4KLSMgICAgICcyLjEzJwor
IyAgIC0gYE1ha2VmaWxlLmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNCwgd2hpY2gK
KyMgICAgIHNwZWNpZmljYWxseSBuZWVkcyBhdXRvbWFrZS0xLjQKICMgICAgIC1vci0KLSMgICAt
IGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjUgb3Igc3VwZXJpb3Is
IHdoaWNoCi0jICAgICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS41CisjICAgLSAnYWNs
b2NhbC5tNCcgY29udGFpbiBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5aW5nIHRoZSB1c2Ug
b2YgMS40CiAjCiAjdXNlIE1ESzo6Q29tbW9uOwogCiBzdWIgY2F0XyB7IGxvY2FsICpGOyBvcGVu
IEYsICRfWzBdIG9yIHJldHVybjsgbXkgQGwgPSA8Rj47IHdhbnRhcnJheSA/IEBsIDogam9pbiAn
JywgQGwgfQogc3ViIGFtX3ZlcnNpb24gewotCW15ICRmaWxlID0gY2F0XyhzaGlmdCk7Ci0JcmV0
dXJuIChAdmVyc2lvbnMgPSAkZmlsZSA9fiAvXlxzKlxbP0FNX0FVVE9NQUtFX1ZFUlNJT05cKFxb
PyhbXlwpXXszfVswLTldPylbXlwpXSpcXT9cKS9tZykgPyAoKHNvcnQgQHZlcnNpb25zKVstMV0p
IDogJyc7Ci19Ci1zdWIgYWNfdmVyc2lvbiB7Ci0JbXkgJGZpbGUgPSBjYXRfKHNoaWZ0KTsKLQly
ZXR1cm4gKEB2ZXJzaW9ucyA9ICRmaWxlID1+IC9eXHMqXFs/QUNfUFJFUkVRXChcWz8oW15cKV17
M31bMC05XT8pW15cKV0qXF0/XCkvbWcpID8gKChzb3J0IEB2ZXJzaW9ucylbLTFdKSA6ICcnOwor
CXJldHVybiAoQHZlcnNpb25zID0gY2F0XyhzaGlmdCkgPX4gL15ccypcWz9BTV9BVVRPTUFLRV9W
RVJTSU9OXChcWz8oW15cKV17Mn1bMC05XT8pW15cKV0qXF0/XCkvbWcpID8gKChzb3J0IEB2ZXJz
aW9ucylbLTFdKSA6ICcnOwogfQogCi0KLQotbXkgJGJpbmFyeSAgICAgID0gIiQwLTEuNCI7Citt
eSAkYmluYXJ5XzFfNCAgPSAiJDAtMS40eCI7CiBteSAkYmluYXJ5XzFfNSAgPSAiJDAtMS41eCI7
CiBteSAkYmluYXJ5XzFfNiAgPSAiJDAtMS42eCI7CiBteSAkYmluYXJ5XzFfNyAgPSAiJDAtMS43
eCI7Ci1teSAkYmluYXJ5XzFfOCAgPSAiJDAtMS44eCI7CitteSAkYmluYXJ5ICAgICAgPSAiJDAt
MS44eCI7CiAKICMgQXV0b21ha2UgaXMgcmVhbGx5IGdldHRpbmcgb3V0IG9mIGhhbmQsIHNvIHJh
dGhlciBzdGFydCBzdXBwb3J0aW5nCiAjIFdBTlRfQVVUT01BS0UgPSAiMS43IiB0aGUgbGlrZS4g
IFVuZm9ydHVuYXRlbHkgaXQgb3ZlcnJpZGUgdGhlIG9sZApAQCAtODUsNjIgKzY1LDQ1IEBACiBp
ZiAoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAiIikgewogCWlmICgkRU5We1dBTlRfQVVUT01BS0Vf
MV80fSkgewogCQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNCc7Ci0JfSBlbHNpZiAoJEVOVntX
QU5UX0FVVE9NQUtFXzFfNn0pIHsKLQkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjYnOwogCX0g
ZWxzaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRV8xXzV9KSB7CiAJCSRFTlZ7V0FOVF9BVVRPTUFLRX0g
PSAnMS41JzsKKwl9IGVsc2lmICgkRU5We1dBTlRfQVVUT01BS0VfMV82fSkgeworCQkkRU5We1dB
TlRfQVVUT01BS0V9ID0gJzEuNic7CiAJfQogfQogCi0jIHF1ZXN0aW9uIGhlcmUgaXMgZG8gd2Ug
cmVhbGx5IHdhbnQgMS41IG9yIDEuNj8gIE91dCBvZiBhIEtERSBvdXRsb29rLCBpdAotIyBzaG91
bGQgcmF0aGVyIGJlIDEuNSwgYW5kIHNpbmNlIG1vc3QgcGVvcGxlIHdvdWxkIHJhdGhlciBoYXZl
IG1pZ3JhdGVkIHRvCi0jIDEuNSwgYW5kIHRoZW4gc3RheSB3aXRoIGl0IGZvciBhIGJpdCAodGhv
c2UgMS40IGRpZSBoYXJkcyAuLiksIG9ubHkgaGF2ZQotIyB0aGUgJ2NvbmZpZ3VyZS5hYycgdGVz
dCBmb3IgMS41IC4uLgotaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRX0gbmUgJzEuNCcpIHsKLQlpZiAo
LXggJGJpbmFyeV8xXzggICAgICAgICAgICAgICMgdXNlciBtYXkgbm90IGhhdmUgXzFfOCAuLi4K
LQkmJiAoKCRFTlZ7V0FOVF9BVVRPTUFLRX0gZXEgJzEuOCcpCi0JICAgIHx8IChjYXRfKCdNYWtl
ZmlsZS5pbicpID1+IC9eIyBNYWtlZmlsZVwuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIChcUysp
LyA/ICQxIDogJycpIGdlICcxLjgnCi0JICAgIHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL14j
IGFjbG9jYWwubTQgZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFMrKS8gPyAk
MSA6ICcnKSBnZSAnMS44JwotCSAgICB8fCBhbV92ZXJzaW9uKCdhY2xvY2FsLm00JykgZ2UgJzEu
OCcpKSB7Ci0JJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjgnOyAgICAjIHRvIHByZXZlbnQgZnVy
dGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kgKHBvc3NpYmxlIGN3ZCBldGMp
Ci0JJGJpbmFyeSAgICAgICAgID0gJGJpbmFyeV8xXzg7Ci0gICAgICAgIH0gZWxzaWYgKC14ICRi
aW5hcnlfMV83ICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjcgLi4uCitpZiAoJEVOVntX
QU5UX0FVVE9NQUtFfSBuZSAnMS44JykgeworCWlmICgteCAkYmluYXJ5XzFfNyAgICAgICAgICAg
ICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjcgLi4uCiAJJiYgKCgkRU5We1dBTlRfQVVUT01BS0V9
IGVxICcxLjcnKQotCSAgICB8fCAoY2F0XygnTWFrZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVc
LmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAoXFMrKS8gPyAkMSA6ICcnKSBnZSAnMS43JwotCSAg
ICB8fCAoY2F0XygnYWNsb2NhbC5tNCcpID1+IC9eIyBhY2xvY2FsLm00IGdlbmVyYXRlZCBhdXRv
bWF0aWNhbGx5IGJ5IGFjbG9jYWwgKFxTKykvID8gJDEgOiAnJykgZ2UgJzEuNycKLQkgICAgfHwg
YW1fdmVyc2lvbignYWNsb2NhbC5tNCcpIGdlICcxLjcnKSkgewotCSRFTlZ7V0FOVF9BVVRPTUFL
RX0gPSAnMS43JzsgICAgIyB0byBwcmV2ZW50IGZ1cnRoZXIgImNhdHMiIGFuZCB0byBlbmhhbmNl
IGNvbnNpc3RlbmN5IChwb3NzaWJsZSBjd2QgZXRjKQotCSRiaW5hcnkgICAgICAgICA9ICRiaW5h
cnlfMV83OworCSAgICB8fCAoY2F0XygnTWFrZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVcLmlu
IGdlbmVyYXRlZCBieSBhdXRvbWFrZSAoXFN7M30pLyA/ICQxIDogJycpIGVxICcxLjcnCisJICAg
IHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL2dlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGFj
bG9jYWwgKFxTezN9KS8gPyAkMSA6ICcnKSBlcSAnMS43JworCSAgICB8fCBhbV92ZXJzaW9uKCdh
Y2xvY2FsLm00JykgZXEgJzEuNycpKSB7CisJCSRFTlZ7V0FOVF9BVVRPTUFLRX0gPSAnMS43Jzsg
ICAgIyB0byBwcmV2ZW50IGZ1cnRoZXIgImNhdHMiIGFuZCB0byBlbmhhbmNlIGNvbnNpc3RlbmN5
IChwb3NzaWJsZSBjd2QgZXRjKQorCQkkYmluYXJ5ICAgICAgICAgPSAkYmluYXJ5XzFfNzsKIAl9
IGVsc2lmICgteCAkYmluYXJ5XzFfNiAgICAgICAgICMgdXNlciBtYXkgbm90IGhhdmUgMS42IC4u
LgogCSYmICgoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAnMS42JykKLQkgICAgfHwgKGNhdF8oJ01h
a2VmaWxlLmluJykgPX4gL14jIE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgKFxT
KykvID8gJDEgOiAnJykgZ2UgJzEuNicKLQkgICAgfHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAv
XiMgYWNsb2NhbC5tNCBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIChcUyspLyA/
ICQxIDogJycpIGdlICcxLjYnCi0JICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBnZSAn
MS42JwotCQkjIEF1dG9jb25mIDIuNTNkIGFuZCBsYXRlciBuZWVkIGF1dG9tYWtlLTEuNmMsIHNv
IGVuYWJsZSAxLjYgZm9yIDIuNTMKLQkJIyBhbmQgdXAgLi4uLi4KLQkgICAgfHwgYWNfdmVyc2lv
bignY29uZmlndXJlLmluJykgZ3QgJzIuNTInCi0JICAgIHx8IChjYXRfKCdjb25maWd1cmUnKSA9
fiAvXiMgR2VuZXJhdGVkIGJ5IEF1dG9jb25mIChcUyspL20gPyAkMSA6ICcnKSBndCAnMi41MicK
LQkgICAgfHwgYWNfdmVyc2lvbignYWNsb2NhbC5tNCcpIGd0ICcyLjUyJykpIHsKLQkkRU5We1dB
TlRfQVVUT01BS0V9ID0gJzEuNic7ICAgICMgdG8gcHJldmVudCBmdXJ0aGVyICJjYXRzIiBhbmQg
dG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dkIGV0YykKLQkkYmluYXJ5IAkJPSAk
YmluYXJ5XzFfNjsKLSAgICB9IGVsc2lmICgteCAkYmluYXJ5XzFfNSAgICAgICAgICMgdXNlciBt
YXkgaGF2ZSBvbmx5IDEuNCAuLi4KKwkgICAgfHwgKGNhdF8oJ01ha2VmaWxlLmluJykgPX4gL14j
IE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgKFxTezN9KS8gPyAkMSA6ICcnKSBl
cSAnMS42JworCSAgICB8fCAoY2F0XygnYWNsb2NhbC5tNCcpID1+IC9nZW5lcmF0ZWQgYXV0b21h
dGljYWxseSBieSBhY2xvY2FsIChcU3szfSkvID8gJDEgOiAnJykgZXEgJzEuNicKKwkgICAgfHwg
YW1fdmVyc2lvbignYWNsb2NhbC5tNCcpIGVxICcxLjYnKSkgeworCQkkRU5We1dBTlRfQVVUT01B
S0V9ID0gJzEuNic7ICAgICMgdG8gcHJldmVudCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5j
ZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dkIGV0YykKKwkJJGJpbmFyeSAgICAgICAgID0gJGJp
bmFyeV8xXzY7CisJfSBlbHNpZiAoLXggJGJpbmFyeV8xXzUgICAgICAgICAjIHVzZXIgbWF5IG5v
dCBoYXZlIDEuNSAuLi4KIAkmJiAoKCRFTlZ7V0FOVF9BVVRPTUFLRX0gZXEgJzEuNScpCi0JICAg
IHx8IC1yICdjb25maWd1cmUuYWMnCi0JICAgIHx8IChjYXRfKCdNYWtlZmlsZS5pbicpID1+IC9e
IyBNYWtlZmlsZVwuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIChcUyspLyA/ICQxIDogJycpIGdl
ICcxLjUnCi0JICAgIHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL14jIGFjbG9jYWwubTQgZ2Vu
ZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFMrKS8gPyAkMSA6ICcnKSBnZSAnMS41
JwotCSAgICB8fCBhY192ZXJzaW9uKCdjb25maWd1cmUuaW4nKSBndCAnMi4xMycKLQkgICAgfHwg
KGNhdF8oJ2NvbmZpZ3VyZScpID1+IC9eIyBHZW5lcmF0ZWQgYnkgQXV0b2NvbmYgKFxTKykvbSA/
ICQxIDogJycpIGd0ICcyLjEzJwotCSAgICB8fCBhY192ZXJzaW9uKCdhY2xvY2FsLm00JykgZ3Qg
JzIuMTMnKSkgewotCSRFTlZ7V0FOVF9BVVRPTUFLRX0gPSAnMS41JzsgICAgIyB0byBwcmV2ZW50
IGZ1cnRoZXIgImNhdHMiIGFuZCB0byBlbmhhbmNlIGNvbnNpc3RlbmN5IChwb3NzaWJsZSBjd2Qg
ZXRjKQotCSRiaW5hcnkgCQk9ICRiaW5hcnlfMV81OwotICAgIH0gZWxzZSB7Ci0JaWYgKC1yICdj
b25maWd1cmUuaW4nIHx8IC1yICdjb25maWd1cmUuYWMnKSB7Ci0JCSRFTlZ7V0FOVF9BVVRPTUFL
RX0gPSAnMS40JzsgICAgIyBmb3IgZnVydGhlciBjb25zaXN0ZW5jeQorCSAgICB8fCAoY2F0Xygn
TWFrZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVcLmluIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5
IGJ5IGF1dG9tYWtlIChcU3szfSkvID8gJDEgOiAnJykgZXEgJzEuNScKKwkgICAgfHwgKGNhdF8o
J2FjbG9jYWwubTQnKSA9fiAvZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFN7
M30pLyA/ICQxIDogJycpIGVxICcxLjUnCisJICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQn
KSBlcSAnMS41JykpIHsKKwkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjUnOyAgICAjIHRvIHBy
ZXZlbnQgZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kgKHBvc3NpYmxl
IGN3ZCBldGMpCisJCSRiaW5hcnkgCT0gJGJpbmFyeV8xXzU7CisJfSBlbHNpZiAoLXggJGJpbmFy
eV8xXzQgICAgICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjQgLi4uCisJJiYgKCgkRU5W
e1dBTlRfQVVUT01BS0V9IGVxICcxLjQnKQorCSAgICB8fCAoY2F0XygnTWFrZWZpbGUuaW4nKSA9
fiAvXiMgTWFrZWZpbGVcLmluIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGF1dG9tYWtlIChc
U3szfSkvID8gJDEgOiAnJykgZXEgJzEuNCcKKwkgICAgfHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9
fiAvZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFN7M30pLyA/ICQxIDogJycp
IGVxICcxLjQnCisJICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBlcSAnMS40JykpIHsK
KwkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjQnOyAgICAjIHRvIHByZXZlbnQgZnVydGhlciAi
Y2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kgKHBvc3NpYmxlIGN3ZCBldGMpCisJCSRi
aW5hcnkJCT0gJGJpbmFyeV8xXzQ7CiAJfSBlbHNlIHsKIAkJJEVOVntXQU5UX0FVVE9NQUtFfSA9
ICcxLjgnOwotCQkkYmluYXJ5ICAgICAgICAgPSAkYmluYXJ5XzFfODsKIAl9Ci0gICAgfQogfQog
CiAkRU5We1dBTlRfQU1XUkFQUEVSX0RFQlVHfSBhbmQgcHJpbnQgU1RERVJSICJhbS13cmFwcGVy
OiB3aWxsIGV4ZWN1dGUgPCRiaW5hcnk+XG4iOwo=
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>41193</attachid>
            <date>2004-10-05 18:04 0000</date>
            <desc>plain ac-wrapper.pl</desc>
            <filename>ac-wrapper.pl</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9wZXJsCiMKIwojIEd1aWxsYXVtZSBDb3R0ZW5jZWF1IChnY0BtYW5kcmFrZXNv
ZnQuY29tKQojCiMgQ29weXJpZ2h0IDIwMDEgTWFuZHJha2VTb2Z0CiMKIyBUaGlzIHNvZnR3YXJl
IG1heSBiZSBmcmVlbHkgcmVkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVQoj
IHB1YmxpYyBsaWNlbnNlLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0
aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsg
aWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDY3
NSBNYXNzIEF2ZSwgQ2FtYnJpZGdlLCBNQSAwMjEzOSwgVVNBLgojCiMKIyBFeGVjdXRlcyB0aGUg
Y29ycmVjdCBhdXRvY29uZiB2ZXJzaW9uLgojCiMgLSBkZWZhdWx0cyB0byBhdXRvY29uZi0yLjU5
CiMgLSBydW5zIGF1dG9jb25mLTIuMTMgaWYgaXQgZXhpc3RzIGFuZC4uLgojICAgLSBlbnZ2YXIg
V0FOVF9BVVRPQ09ORiBpcyBzZXQgdG8gYDIuMScKIyAgICAgLW9yLQojICAgLSBgY29uZmlndXJl
LmluJyBjb250YWlucyBBQ19QUkVSRVEgYW5kIHRoZSB2YWx1ZSdzIDIgZmlyc3QgbGV0dGVycwoj
ICAgICBhcmUgc3RyaW5nd2lzZSBlcXVhbCB0byAnMi4xJwojICAgICAtb3ItCiMgICAtIGBjb25m
aWd1cmUnIGlzIGFscmVhZHkgcHJlc2VudCBhbmQgd2FzIGdlbmVyYXRlZCBieSBhdXRvY29uZiBl
cXVhbCB0bwojICAgICAnMi4xMycKIwoKI3VzZSBNREs6OkNvbW1vbjsKCnN1YiBjYXRfIHsgbG9j
YWwgKkY7IG9wZW4gRiwgJF9bMF0gb3IgcmV0dXJuOyBteSBAbCA9IDxGPjsgd2FudGFycmF5ID8g
QGwgOiBqb2luICcnLCBAbCB9CnN1YiBhY192ZXJzaW9uIHsKCXJldHVybiAoKEB2ZXJzaW9ucyA9
IGNhdF8oc2hpZnQpID1+IC9eXHMqXFs/QUNfUFJFUkVRXChcWz8oW15cKV17Mn1bMC05XT8pW15c
KV0qXF0/XCkvbWcpID8gKChzb3J0IEB2ZXJzaW9ucylbLTFdKSA6ICcnKTsKfQoKbXkgJGJpbmFy
eV9vbGQgPSAiJDAtMi4xMyI7Cm15ICRiaW5hcnkgICAgID0gIiQwLTIuNTkiOwoKIyBBdXRvY29u
ZiBpcyByZWFsbHkgZ2V0dGluZyBvdXQgb2YgaGFuZCwgc28gcmF0aGVyIHN0YXJ0IHN1cHBvcnRp
bmcKIyBXQU5UX0FVVE9DT05GID0gIjIuNSIgdGhlIGxpa2UuICBVbmZvcnR1bmF0ZWx5IGl0IG92
ZXJyaWRlIHRoZSBvbGQKIyB2YXJpYWJsZXMsIHNvIGlmIG5vdCBzZXQsIGp1c3QgY29udmVydCB0
aGUgb2xkIHZhcmlhYmxlcyAuLi4uCmlmICgkRU5We1dBTlRfQVVUT0NPTkZ9IGVxICIiKSB7Cglp
ZiAoJEVOVntXQU5UX0FVVE9DT05GXzJfMX0pIHsKCQkkRU5We1dBTlRfQVVUT0NPTkZ9ID0gJzIu
MSc7Cgl9IGVsc2lmICgkRU5We1dBTlRfQVVUT0NPTkZfMl81fSkgewoJCSRFTlZ7V0FOVF9BVVRP
Q09ORn0gPSAnMi41JzsKCX0KfQoKaWYgKCRFTlZ7V0FOVF9BVVRPQ09ORn0gbmUgJzIuNScpIHsK
CWlmICgoLXggJGJpbmFyeV9vbGQKCSYmICgoJEVOVntXQU5UX0FVVE9DT05GfSBlcSAnMi4xJykK
CSAgICB8fCBhY192ZXJzaW9uKCdjb25maWd1cmUuaW4nKSBlcSAnMi4xJwoJICAgIHx8IChjYXRf
KCdjb25maWd1cmUnKSA9fiAvXiMgR2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgdXNpbmcgYXV0b2Nv
bmYgdmVyc2lvbiAoXFMrKS9tID8gJDEgOiAnJykgZXEgJzIuMTMnCgkgICAgfHwgYWNfdmVyc2lv
bignYWNsb2NhbC5tNCcpIGVxICcyLjEnKSkpIHsKCQkkRU5We1dBTlRfQVVUT0NPTkZ9ID0gJzIu
MSc7ICAgICMgdG8gcHJldmVudCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0
ZW5jeSAocG9zc2libGUgY3dkIGV0YykKCQkkYmluYXJ5IAkgICAgPSAkYmluYXJ5X29sZDsKCX0g
ZWxzZSB7CgkJJEVOVntXQU5UX0FVVE9DT05GfSA9ICcyLjUnOyAgICAjIGZvciBmdXJ0aGVyIGNv
bnNpc3RlbmN5Cgl9Cn0KCiMgU2V0IEFVVE9NNFRFIHRvIHRoZSBwcm9wZXIgdmVyc2lvbiAoYnVn
ICM0MDk4MykuCiMgRG8gbm90IHNldCBpdCBmb3IgMi4xMyB0aG91Z2gsIGFzIGl0IGRvZXMgbm90
IHNoaXAgYXV0b200dGUuCmlmKCgkRU5We0FVVE9NNFRFfSBlcSAiIikKICAgJiYgKCRFTlZ7V0FO
VF9BVVRPQ09ORn0gPSAnMi41JykKICAgJiYgKCQwIG5lICdhdXRvbTR0ZScpKSB7CgkkRU5We0FV
VE9NNFRFfSA9ICJhdXRvbTR0ZS0yLjU5IjsKfQoKJEVOVntXQU5UX0FDV1JBUFBFUl9ERUJVR30g
YW5kIHByaW50IFNUREVSUiAiYWMtd3JhcHBlcjogd2lsbCBleGVjdXRlIDwkYmluYXJ5PlxuIjsK
CmV4ZWMgJGJpbmFyeSwgQEFSR1Y7CgpkaWUgImFjLXdyYXBwZXI6IG91Y2gsIGNvdWxkbid0IGNh
bGwgYmluYXJ5ICgkYmluYXJ5KS5cbiI7Cg==
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>41194</attachid>
            <date>2004-10-05 18:04 0000</date>
            <desc>plain am-wrapper.pl</desc>
            <filename>am-wrapper.pl</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9wZXJsCiMKIwojIEF1dGhvcjogR3VpbGxhdW1lIENvdHRlbmNlYXUgKGdjQG1h
bmRyYWtlc29mdC5jb20pCiMgTW9kaWZpZWQgYnk6IE1hcnRpbiBTY2hsZW1tZXIgKGF6YXJhaEBn
ZW50b28ub3JnKQojCiMgQ29weXJpZ2h0IDIwMDEgTWFuZHJha2VTb2Z0CiMKIyBUaGlzIHNvZnR3
YXJlIG1heSBiZSBmcmVlbHkgcmVkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VQojIHB1YmxpYyBsaWNlbnNlLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh
bTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4s
IDY3NSBNYXNzIEF2ZSwgQ2FtYnJpZGdlLCBNQSAwMjEzOSwgVVNBLgojCiMKIyBFeGVjdXRlcyB0
aGUgY29ycmVjdCBhdXRvY29uZiB2ZXJzaW9uLgojCiMgLSBkZWZhdWx0cyB0byBhdXRvbWFrZS0x
LjgKIyAtIHJ1bnMgYXV0b21ha2UtMS43IGlmIGl0IGV4aXN0cyBhbmQuLi4KIyAgIC0gZW52dmFy
IFdBTlRfQVVUT01BS0UgaXMgc2V0IHRvIGAxLjcnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxl
LmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNywgd2hpY2gKIyAgICAgc3BlY2lmaWNh
bGx5IG5lZWRzIGF1dG9tYWtlLTEuNwojICAgICAtb3ItCiMgICAtICdhY2xvY2FsLm00JyBjb250
YWluIEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjcKIyAtIHJ1
bnMgYXV0b21ha2UtMS42IGlmIGl0IGV4aXN0cyBhbmQuLi4KIyAgIC0gZW52dmFyIFdBTlRfQVVU
T01BS0UgaXMgc2V0IHRvIGAxLjYnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxlLmluJyB3YXMg
Z2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNiwgd2hpY2gKIyAgICAgc3BlY2lmaWNhbGx5IG5lZWRz
IGF1dG9tYWtlLTEuNgojICAgICAtb3ItCiMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FV
VE9NQUtFX1ZFUlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjYKIyAtIHJ1bnMgYXV0b21h
a2UtMS41IGlmIGl0IGV4aXN0cyBhbmQuLi4KIyAgIC0gZW52dmFyIFdBTlRfQVVUT01BS0UgaXMg
c2V0IHRvIGAxLjUnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxlLmluJyB3YXMgZ2VuZXJhdGVk
IGJ5IGF1dG9tYWtlLTEuNSwgd2hpY2gKIyAgICAgc3BlY2lmaWNhbGx5IG5lZWRzIGF1dG9tYWtl
LTEuNQojICAgICAtb3ItCiMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZF
UlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjUKIyAtIHJ1bnMgYXV0b21ha2UtMS40IGlm
IGl0IGV4aXN0cyBhbmQuLi4KIyAgIC0gZW52dmFyIFdBTlRfQVVUT01BS0UgaXMgc2V0IHRvIGAx
LjQnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxlLmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9t
YWtlLTEuNCwgd2hpY2gKIyAgICAgc3BlY2lmaWNhbGx5IG5lZWRzIGF1dG9tYWtlLTEuNAojICAg
ICAtb3ItCiMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNw
ZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjQKIwojdXNlIE1ESzo6Q29tbW9uOwoKc3ViIGNhdF8geyBs
b2NhbCAqRjsgb3BlbiBGLCAkX1swXSBvciByZXR1cm47IG15IEBsID0gPEY+OyB3YW50YXJyYXkg
PyBAbCA6IGpvaW4gJycsIEBsIH0Kc3ViIGFtX3ZlcnNpb24gewoJcmV0dXJuIChAdmVyc2lvbnMg
PSBjYXRfKHNoaWZ0KSA9fiAvXlxzKlxbP0FNX0FVVE9NQUtFX1ZFUlNJT05cKFxbPyhbXlwpXXsy
fVswLTldPylbXlwpXSpcXT9cKS9tZykgPyAoKHNvcnQgQHZlcnNpb25zKVstMV0pIDogJyc7Cn0K
Cm15ICRiaW5hcnlfMV80ICA9ICIkMC0xLjQiOwpteSAkYmluYXJ5XzFfNSAgPSAiJDAtMS41IjsK
bXkgJGJpbmFyeV8xXzYgID0gIiQwLTEuNiI7Cm15ICRiaW5hcnlfMV83ICA9ICIkMC0xLjciOwpt
eSAkYmluYXJ5ICAgICAgPSAiJDAtMS44IjsKCiMgQXV0b21ha2UgaXMgcmVhbGx5IGdldHRpbmcg
b3V0IG9mIGhhbmQsIHNvIHJhdGhlciBzdGFydCBzdXBwb3J0aW5nCiMgV0FOVF9BVVRPTUFLRSA9
ICIxLjciIHRoZSBsaWtlLiAgVW5mb3J0dW5hdGVseSBpdCBvdmVycmlkZSB0aGUgb2xkCiMgdmFy
aWFibGVzLCBzbyBpZiBub3Qgc2V0LCBqdXN0IGNvbnZlcnQgdGhlIG9sZCB2YXJpYWJsZXMgLi4u
LgppZiAoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAiIikgewoJaWYgKCRFTlZ7V0FOVF9BVVRPTUFL
RV8xXzR9KSB7CgkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjQnOwoJfSBlbHNpZiAoJEVOVntX
QU5UX0FVVE9NQUtFXzFfNX0pIHsKCQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNSc7Cgl9IGVs
c2lmICgkRU5We1dBTlRfQVVUT01BS0VfMV82fSkgewoJCSRFTlZ7V0FOVF9BVVRPTUFLRX0gPSAn
MS42JzsKCX0KfQoKaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRX0gbmUgJzEuOCcpIHsKCWlmICgteCAk
YmluYXJ5XzFfNyAgICAgICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjcgLi4uCgkmJiAo
KCRFTlZ7V0FOVF9BVVRPTUFLRX0gZXEgJzEuNycpCgkgICAgfHwgKGNhdF8oJ01ha2VmaWxlLmlu
JykgPX4gL14jIE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgKFxTezN9KS8gPyAk
MSA6ICcnKSBlcSAnMS43JwoJICAgIHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL2dlbmVyYXRl
ZCBhdXRvbWF0aWNhbGx5IGJ5IGFjbG9jYWwgKFxTezN9KS8gPyAkMSA6ICcnKSBlcSAnMS43JwoJ
ICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBlcSAnMS43JykpIHsKCQkkRU5We1dBTlRf
QVVUT01BS0V9ID0gJzEuNyc7ICAgICMgdG8gcHJldmVudCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8g
ZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dkIGV0YykKCQkkYmluYXJ5ICAgICAgICAg
PSAkYmluYXJ5XzFfNzsKCX0gZWxzaWYgKC14ICRiaW5hcnlfMV82ICAgICAgICAgIyB1c2VyIG1h
eSBub3QgaGF2ZSAxLjYgLi4uCgkmJiAoKCRFTlZ7V0FOVF9BVVRPTUFLRX0gZXEgJzEuNicpCgkg
ICAgfHwgKGNhdF8oJ01ha2VmaWxlLmluJykgPX4gL14jIE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQg
YnkgYXV0b21ha2UgKFxTezN9KS8gPyAkMSA6ICcnKSBlcSAnMS42JwoJICAgIHx8IChjYXRfKCdh
Y2xvY2FsLm00JykgPX4gL2dlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGFjbG9jYWwgKFxTezN9
KS8gPyAkMSA6ICcnKSBlcSAnMS42JwoJICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBl
cSAnMS42JykpIHsKCQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNic7ICAgICMgdG8gcHJldmVu
dCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dk
IGV0YykKCQkkYmluYXJ5ICAgICAgICAgPSAkYmluYXJ5XzFfNjsKCX0gZWxzaWYgKC14ICRiaW5h
cnlfMV81ICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjUgLi4uCgkmJiAoKCRFTlZ7V0FO
VF9BVVRPTUFLRX0gZXEgJzEuNScpCgkgICAgfHwgKGNhdF8oJ01ha2VmaWxlLmluJykgPX4gL14j
IE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhdXRvbWFrZSAoXFN7M30p
LyA/ICQxIDogJycpIGVxICcxLjUnCgkgICAgfHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAvZ2Vu
ZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFN7M30pLyA/ICQxIDogJycpIGVxICcx
LjUnCgkgICAgfHwgYW1fdmVyc2lvbignYWNsb2NhbC5tNCcpIGVxICcxLjUnKSkgewoJCSRFTlZ7
V0FOVF9BVVRPTUFLRX0gPSAnMS41JzsgICAgIyB0byBwcmV2ZW50IGZ1cnRoZXIgImNhdHMiIGFu
ZCB0byBlbmhhbmNlIGNvbnNpc3RlbmN5IChwb3NzaWJsZSBjd2QgZXRjKQoJCSRiaW5hcnkgCT0g
JGJpbmFyeV8xXzU7Cgl9IGVsc2lmICgteCAkYmluYXJ5XzFfNCAgICAgICAgICAgICAjIHVzZXIg
bWF5IG5vdCBoYXZlIDEuNCAuLi4KCSYmICgoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAnMS40JykK
CSAgICB8fCAoY2F0XygnTWFrZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVcLmluIGdlbmVyYXRl
ZCBhdXRvbWF0aWNhbGx5IGJ5IGF1dG9tYWtlIChcU3szfSkvID8gJDEgOiAnJykgZXEgJzEuNCcK
CSAgICB8fCAoY2F0XygnYWNsb2NhbC5tNCcpID1+IC9nZW5lcmF0ZWQgYXV0b21hdGljYWxseSBi
eSBhY2xvY2FsIChcU3szfSkvID8gJDEgOiAnJykgZXEgJzEuNCcKCSAgICB8fCBhbV92ZXJzaW9u
KCdhY2xvY2FsLm00JykgZXEgJzEuNCcpKSB7CgkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjQn
OyAgICAjIHRvIHByZXZlbnQgZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVu
Y3kgKHBvc3NpYmxlIGN3ZCBldGMpCgkJJGJpbmFyeQkJPSAkYmluYXJ5XzFfNDsKCX0gZWxzZSB7
CgkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjgnOwoJfQp9CgokRU5We1dBTlRfQU1XUkFQUEVS
X0RFQlVHfSBhbmQgcHJpbnQgU1RERVJSICJhbS13cmFwcGVyOiB3aWxsIGV4ZWN1dGUgPCRiaW5h
cnk+XG4iOwoKZXhlYyAkYmluYXJ5LCBAQVJHVjsKCmRpZSAiYW0td3JhcHBlcjogb3VjaCwgY291
bGRuJ3QgY2FsbCBiaW5hcnkgKCRiaW5hcnkpLlxuIjsK
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41195</attachid>
            <date>2004-10-05 18:09 0000</date>
            <desc>patch for am-wrapper.pl-1.8-v2</desc>
            <filename>am-wrapper.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGFtLXdyYXBwZXIucGwtMS44LXYyLm9yaWcJMjAwNC0xMC0wNiAwMjo1MzowNS40NDAyNTYw
NDggKzAyMDAKKysrIGFtLXdyYXBwZXIucGwtMS44LXYyCTIwMDQtMTAtMDYgMDM6MDM6NDIuMDgz
NDcxNTY4ICswMjAwCkBAIC0xNiw2OCArMTYsNDggQEAKICMKICMgRXhlY3V0ZXMgdGhlIGNvcnJl
Y3QgYXV0b2NvbmYgdmVyc2lvbi4KICMKLSMgLSBkZWZhdWx0cyB0byBhdXRvbWFrZS0xLjQKLSMg
LSBydW5zIGF1dG9tYWtlLTEuOCBpZiBpdCBleGlzdHMgYW5kLi4uCi0jICAgLSBlbnZ2YXIgV0FO
VF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuOCcKLSMgICAgIC1vci0KLSMgICAtIGBNYWtlZmlsZS5p
bicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjggb3Igc3VwZXJpb3IsIHdoaWNoCi0jICAg
ICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS44Ci0jICAgICAtb3JfCi0jICAgLSAnYWNs
b2NhbC5tNCcgY29udGFpbiBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5aW5nIHRoZSB1c2Ug
b2YgMS44CisjIC0gZGVmYXVsdHMgdG8gYXV0b21ha2UtMS44CiAjIC0gcnVucyBhdXRvbWFrZS0x
LjcgaWYgaXQgZXhpc3RzIGFuZC4uLgogIyAgIC0gZW52dmFyIFdBTlRfQVVUT01BS0UgaXMgc2V0
IHRvIGAxLjcnCiAjICAgICAtb3ItCi0jICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQg
YnkgYXV0b21ha2UtMS43IG9yIHN1cGVyaW9yLCB3aGljaAorIyAgIC0gYE1ha2VmaWxlLmluJyB3
YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNywgd2hpY2gKICMgICAgIHNwZWNpZmljYWxseSBu
ZWVkcyBhdXRvbWFrZS0xLjcKICMgICAgIC1vci0KLSMgICAtICdhY2xvY2FsLm00JyBjb250YWlu
IEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNpZnlpbnQgdGhlIHVzZSBvZiAxLjcKLSMgICAgIC1v
ci0KKyMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNp
ZnlpbmcgdGhlIHVzZSBvZiAxLjcKICMgLSBydW5zIGF1dG9tYWtlLTEuNiBpZiBpdCBleGlzdHMg
YW5kLi4uCiAjICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuNicKICMgICAg
IC1vci0KLSMgICAtIGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjYg
b3Igc3VwZXJpb3IsIHdoaWNoCisjICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQgYnkg
YXV0b21ha2UtMS42LCB3aGljaAogIyAgICAgc3BlY2lmaWNhbGx5IG5lZWRzIGF1dG9tYWtlLTEu
NgogIyAgICAgLW9yLQotIyAgIC0gJ2FjbG9jYWwubTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVS
U0lPTiwgc3BlY2lmeWludCB0aGUgdXNlIG9mIDEuNgotIyAgICAgLW9yLQotIyAgIC0gYGNvbmZp
Z3VyZS5pbicgY29udGFpbnMgQUNfUFJFUkVRIGFuZCB0aGUgdmFsdWUncyAzIGZpcnN0IGxldHRl
cnMKLSMgICAgICBhcmUgc3RyaW5nd2lzZSBncmVhdGVyIHRoYW4gJzIuNTNjJwotIyAgICAgLW9y
LQotIyAgIC0gYGNvbmZpZ3VyZScgaXMgYWxyZWFkeSBwcmVzZW50IGFuZCB3YXMgZ2VuZXJhdGVk
IGJ5IGF1dG9jb25mIGdyZWF0ZXIgdGhhbgotIyAgICAgJzIuNTNjJworIyAgIC0gJ2FjbG9jYWwu
bTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVSU0lPTiwgc3BlY2lmeWluZyB0aGUgdXNlIG9mIDEu
NgogIyAtIHJ1bnMgYXV0b21ha2UtMS41IGlmIGl0IGV4aXN0cyBhbmQuLi4KICMgICAtIGVudnZh
ciBXQU5UX0FVVE9NQUtFIGlzIHNldCB0byBgMS41JwogIyAgICAgLW9yLQotIyAgIC0gY29uZmln
dXJlLmFjIGlzIHByZXNlbnQKKyMgICAtIGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBh
dXRvbWFrZS0xLjUsIHdoaWNoCisjICAgICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS41
CiAjICAgICAtb3ItCi0jICAgLSBgY29uZmlndXJlLmluJyBjb250YWlucyBBQ19QUkVSRVEgYW5k
IHRoZSB2YWx1ZSdzIDMgZmlyc3QgbGV0dGVycwotIyAgICAgIGFyZSBzdHJpbmd3aXNlIGdyZWF0
ZXIgdGhhbiAnMi4xMycKKyMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZF
UlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjUKKyMgLSBydW5zIGF1dG9tYWtlLTEuNCBp
ZiBpdCBleGlzdHMgYW5kLi4uCisjICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8g
YDEuNCcKICMgICAgIC1vci0KLSMgICAtIGBjb25maWd1cmUnIGlzIGFscmVhZHkgcHJlc2VudCBh
bmQgd2FzIGdlbmVyYXRlZCBieSBhdXRvY29uZiBncmVhdGVyIHRoYW4KLSMgICAgICcyLjEzJwor
IyAgIC0gYE1ha2VmaWxlLmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNCwgd2hpY2gK
KyMgICAgIHNwZWNpZmljYWxseSBuZWVkcyBhdXRvbWFrZS0xLjQKICMgICAgIC1vci0KLSMgICAt
IGBNYWtlZmlsZS5pbicgd2FzIGdlbmVyYXRlZCBieSBhdXRvbWFrZS0xLjUgb3Igc3VwZXJpb3Is
IHdoaWNoCi0jICAgICBzcGVjaWZpY2FsbHkgbmVlZHMgYXV0b21ha2UtMS41CisjICAgLSAnYWNs
b2NhbC5tNCcgY29udGFpbiBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5aW5nIHRoZSB1c2Ug
b2YgMS40CiAjCiAjdXNlIE1ESzo6Q29tbW9uOwogCiBzdWIgY2F0XyB7IGxvY2FsICpGOyBvcGVu
IEYsICRfWzBdIG9yIHJldHVybjsgbXkgQGwgPSA8Rj47IHdhbnRhcnJheSA/IEBsIDogam9pbiAn
JywgQGwgfQogc3ViIGFtX3ZlcnNpb24gewotCW15ICRmaWxlID0gY2F0XyhzaGlmdCk7Ci0JcmV0
dXJuIChAdmVyc2lvbnMgPSAkZmlsZSA9fiAvXlxzKlxbP0FNX0FVVE9NQUtFX1ZFUlNJT05cKFxb
PyhbXlwpXXszfVswLTldPylbXlwpXSpcXT9cKS9tZykgPyAoKHNvcnQgQHZlcnNpb25zKVstMV0p
IDogJyc7Ci19Ci1zdWIgYWNfdmVyc2lvbiB7Ci0JbXkgJGZpbGUgPSBjYXRfKHNoaWZ0KTsKLQly
ZXR1cm4gKEB2ZXJzaW9ucyA9ICRmaWxlID1+IC9eXHMqXFs/QUNfUFJFUkVRXChcWz8oW15cKV17
M31bMC05XT8pW15cKV0qXF0/XCkvbWcpID8gKChzb3J0IEB2ZXJzaW9ucylbLTFdKSA6ICcnOwor
CXJldHVybiAoQHZlcnNpb25zID0gY2F0XyhzaGlmdCkgPX4gL15ccypcWz9BTV9BVVRPTUFLRV9W
RVJTSU9OXChcWz8oW15cKV17Mn1bMC05XT8pW15cKV0qXF0/XCkvbWcpID8gKChzb3J0IEB2ZXJz
aW9ucylbLTFdKSA6ICcnOwogfQogCi0KLQotbXkgJGJpbmFyeSAgICAgID0gIiQwLTEuNCI7Citt
eSAkYmluYXJ5XzFfNCAgPSAiJDAtMS40IjsKIG15ICRiaW5hcnlfMV81ICA9ICIkMC0xLjV4IjsK
IG15ICRiaW5hcnlfMV82ICA9ICIkMC0xLjZ4IjsKIG15ICRiaW5hcnlfMV83ICA9ICIkMC0xLjd4
IjsKLW15ICRiaW5hcnlfMV84ICA9ICIkMC0xLjh4IjsKK215ICRiaW5hcnkgICAgICA9ICIkMC0x
Ljh4IjsKIAogIyBBdXRvbWFrZSBpcyByZWFsbHkgZ2V0dGluZyBvdXQgb2YgaGFuZCwgc28gcmF0
aGVyIHN0YXJ0IHN1cHBvcnRpbmcKICMgV0FOVF9BVVRPTUFLRSA9ICIxLjciIHRoZSBsaWtlLiAg
VW5mb3J0dW5hdGVseSBpdCBvdmVycmlkZSB0aGUgb2xkCkBAIC04NSw2MiArNjUsNDUgQEAKIGlm
ICgkRU5We1dBTlRfQVVUT01BS0V9IGVxICIiKSB7CiAJaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRV8x
XzR9KSB7CiAJCSRFTlZ7V0FOVF9BVVRPTUFLRX0gPSAnMS40JzsKLQl9IGVsc2lmICgkRU5We1dB
TlRfQVVUT01BS0VfMV82fSkgewotCQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNic7CiAJfSBl
bHNpZiAoJEVOVntXQU5UX0FVVE9NQUtFXzFfNX0pIHsKIAkJJEVOVntXQU5UX0FVVE9NQUtFfSA9
ICcxLjUnOworCX0gZWxzaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRV8xXzZ9KSB7CisJCSRFTlZ7V0FO
VF9BVVRPTUFLRX0gPSAnMS42JzsKIAl9CiB9CiAKLSMgcXVlc3Rpb24gaGVyZSBpcyBkbyB3ZSBy
ZWFsbHkgd2FudCAxLjUgb3IgMS42PyAgT3V0IG9mIGEgS0RFIG91dGxvb2ssIGl0Ci0jIHNob3Vs
ZCByYXRoZXIgYmUgMS41LCBhbmQgc2luY2UgbW9zdCBwZW9wbGUgd291bGQgcmF0aGVyIGhhdmUg
bWlncmF0ZWQgdG8KLSMgMS41LCBhbmQgdGhlbiBzdGF5IHdpdGggaXQgZm9yIGEgYml0ICh0aG9z
ZSAxLjQgZGllIGhhcmRzIC4uKSwgb25seSBoYXZlCi0jIHRoZSAnY29uZmlndXJlLmFjJyB0ZXN0
IGZvciAxLjUgLi4uCi1pZiAoJEVOVntXQU5UX0FVVE9NQUtFfSBuZSAnMS40JykgewotCWlmICgt
eCAkYmluYXJ5XzFfOCAgICAgICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSBfMV84IC4uLgot
CSYmICgoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAnMS44JykKLQkgICAgfHwgKGNhdF8oJ01ha2Vm
aWxlLmluJykgPX4gL14jIE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgKFxTKykv
ID8gJDEgOiAnJykgZ2UgJzEuOCcKLQkgICAgfHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAvXiMg
YWNsb2NhbC5tNCBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIChcUyspLyA/ICQx
IDogJycpIGdlICcxLjgnCi0JICAgIHx8IGFtX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBnZSAnMS44
JykpIHsKLQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuOCc7ICAgICMgdG8gcHJldmVudCBmdXJ0
aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dkIGV0YykK
LQkkYmluYXJ5ICAgICAgICAgPSAkYmluYXJ5XzFfODsKLSAgICAgICAgfSBlbHNpZiAoLXggJGJp
bmFyeV8xXzcgICAgICAgICAjIHVzZXIgbWF5IG5vdCBoYXZlIDEuNyAuLi4KK2lmICgkRU5We1dB
TlRfQVVUT01BS0V9IG5lICcxLjgnKSB7CisJaWYgKC14ICRiaW5hcnlfMV83ICAgICAgICAgICAg
ICAjIHVzZXIgbWF5IG5vdCBoYXZlIDEuNyAuLi4KIAkmJiAoKCRFTlZ7V0FOVF9BVVRPTUFLRX0g
ZXEgJzEuNycpCi0JICAgIHx8IChjYXRfKCdNYWtlZmlsZS5pbicpID1+IC9eIyBNYWtlZmlsZVwu
aW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIChcUyspLyA/ICQxIDogJycpIGdlICcxLjcnCi0JICAg
IHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL14jIGFjbG9jYWwubTQgZ2VuZXJhdGVkIGF1dG9t
YXRpY2FsbHkgYnkgYWNsb2NhbCAoXFMrKS8gPyAkMSA6ICcnKSBnZSAnMS43JwotCSAgICB8fCBh
bV92ZXJzaW9uKCdhY2xvY2FsLm00JykgZ2UgJzEuNycpKSB7Ci0JJEVOVntXQU5UX0FVVE9NQUtF
fSA9ICcxLjcnOyAgICAjIHRvIHByZXZlbnQgZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2Ug
Y29uc2lzdGVuY3kgKHBvc3NpYmxlIGN3ZCBldGMpCi0JJGJpbmFyeSAgICAgICAgID0gJGJpbmFy
eV8xXzc7CisJICAgIHx8IChjYXRfKCdNYWtlZmlsZS5pbicpID1+IC9eIyBNYWtlZmlsZVwuaW4g
Z2VuZXJhdGVkIGJ5IGF1dG9tYWtlIChcU3szfSkvID8gJDEgOiAnJykgZXEgJzEuNycKKwkgICAg
fHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAvZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNs
b2NhbCAoXFN7M30pLyA/ICQxIDogJycpIGVxICcxLjcnCisJICAgIHx8IGFtX3ZlcnNpb24oJ2Fj
bG9jYWwubTQnKSBlcSAnMS43JykpIHsKKwkJJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjcnOyAg
ICAjIHRvIHByZXZlbnQgZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kg
KHBvc3NpYmxlIGN3ZCBldGMpCisJCSRiaW5hcnkgICAgICAgICA9ICRiaW5hcnlfMV83OwogCX0g
ZWxzaWYgKC14ICRiaW5hcnlfMV82ICAgICAgICAgIyB1c2VyIG1heSBub3QgaGF2ZSAxLjYgLi4u
CiAJJiYgKCgkRU5We1dBTlRfQVVUT01BS0V9IGVxICcxLjYnKQotCSAgICB8fCAoY2F0XygnTWFr
ZWZpbGUuaW4nKSA9fiAvXiMgTWFrZWZpbGVcLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAoXFMr
KS8gPyAkMSA6ICcnKSBnZSAnMS42JwotCSAgICB8fCAoY2F0XygnYWNsb2NhbC5tNCcpID1+IC9e
IyBhY2xvY2FsLm00IGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGFjbG9jYWwgKFxTKykvID8g
JDEgOiAnJykgZ2UgJzEuNicKLQkgICAgfHwgYW1fdmVyc2lvbignYWNsb2NhbC5tNCcpIGdlICcx
LjYnCi0JCSMgQXV0b2NvbmYgMi41M2QgYW5kIGxhdGVyIG5lZWQgYXV0b21ha2UtMS42Yywgc28g
ZW5hYmxlIDEuNiBmb3IgMi41MwotCQkjIGFuZCB1cCAuLi4uLgotCSAgICB8fCBhY192ZXJzaW9u
KCdjb25maWd1cmUuaW4nKSBndCAnMi41MicKLQkgICAgfHwgKGNhdF8oJ2NvbmZpZ3VyZScpID1+
IC9eIyBHZW5lcmF0ZWQgYnkgQXV0b2NvbmYgKFxTKykvbSA/ICQxIDogJycpIGd0ICcyLjUyJwot
CSAgICB8fCBhY192ZXJzaW9uKCdhY2xvY2FsLm00JykgZ3QgJzIuNTInKSkgewotCSRFTlZ7V0FO
VF9BVVRPTUFLRX0gPSAnMS42JzsgICAgIyB0byBwcmV2ZW50IGZ1cnRoZXIgImNhdHMiIGFuZCB0
byBlbmhhbmNlIGNvbnNpc3RlbmN5IChwb3NzaWJsZSBjd2QgZXRjKQotCSRiaW5hcnkgCQk9ICRi
aW5hcnlfMV82OwotICAgIH0gZWxzaWYgKC14ICRiaW5hcnlfMV81ICAgICAgICAgIyB1c2VyIG1h
eSBoYXZlIG9ubHkgMS40IC4uLgorCSAgICB8fCAoY2F0XygnTWFrZWZpbGUuaW4nKSA9fiAvXiMg
TWFrZWZpbGVcLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAoXFN7M30pLyA/ICQxIDogJycpIGVx
ICcxLjYnCisJICAgIHx8IChjYXRfKCdhY2xvY2FsLm00JykgPX4gL2dlbmVyYXRlZCBhdXRvbWF0
aWNhbGx5IGJ5IGFjbG9jYWwgKFxTezN9KS8gPyAkMSA6ICcnKSBlcSAnMS42JworCSAgICB8fCBh
bV92ZXJzaW9uKCdhY2xvY2FsLm00JykgZXEgJzEuNicpKSB7CisJCSRFTlZ7V0FOVF9BVVRPTUFL
RX0gPSAnMS42JzsgICAgIyB0byBwcmV2ZW50IGZ1cnRoZXIgImNhdHMiIGFuZCB0byBlbmhhbmNl
IGNvbnNpc3RlbmN5IChwb3NzaWJsZSBjd2QgZXRjKQorCQkkYmluYXJ5ICAgICAgICAgPSAkYmlu
YXJ5XzFfNjsKKwl9IGVsc2lmICgteCAkYmluYXJ5XzFfNSAgICAgICAgICMgdXNlciBtYXkgbm90
IGhhdmUgMS41IC4uLgogCSYmICgoJEVOVntXQU5UX0FVVE9NQUtFfSBlcSAnMS41JykKLQkgICAg
fHwgLXIgJ2NvbmZpZ3VyZS5hYycKLQkgICAgfHwgKGNhdF8oJ01ha2VmaWxlLmluJykgPX4gL14j
IE1ha2VmaWxlXC5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgKFxTKykvID8gJDEgOiAnJykgZ2Ug
JzEuNScKLQkgICAgfHwgKGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAvXiMgYWNsb2NhbC5tNCBnZW5l
cmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIChcUyspLyA/ICQxIDogJycpIGdlICcxLjUn
Ci0JICAgIHx8IGFjX3ZlcnNpb24oJ2NvbmZpZ3VyZS5pbicpIGd0ICcyLjEzJwotCSAgICB8fCAo
Y2F0XygnY29uZmlndXJlJykgPX4gL14jIEdlbmVyYXRlZCBieSBBdXRvY29uZiAoXFMrKS9tID8g
JDEgOiAnJykgZ3QgJzIuMTMnCi0JICAgIHx8IGFjX3ZlcnNpb24oJ2FjbG9jYWwubTQnKSBndCAn
Mi4xMycpKSB7Ci0JJEVOVntXQU5UX0FVVE9NQUtFfSA9ICcxLjUnOyAgICAjIHRvIHByZXZlbnQg
ZnVydGhlciAiY2F0cyIgYW5kIHRvIGVuaGFuY2UgY29uc2lzdGVuY3kgKHBvc3NpYmxlIGN3ZCBl
dGMpCi0JJGJpbmFyeSAJCT0gJGJpbmFyeV8xXzU7Ci0gICAgfSBlbHNlIHsKLQlpZiAoLXIgJ2Nv
bmZpZ3VyZS5pbicgfHwgLXIgJ2NvbmZpZ3VyZS5hYycpIHsKLQkJJEVOVntXQU5UX0FVVE9NQUtF
fSA9ICcxLjQnOyAgICAjIGZvciBmdXJ0aGVyIGNvbnNpc3RlbmN5CisJICAgIHx8IChjYXRfKCdN
YWtlZmlsZS5pbicpID1+IC9eIyBNYWtlZmlsZVwuaW4gZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkg
YnkgYXV0b21ha2UgKFxTezN9KS8gPyAkMSA6ICcnKSBlcSAnMS41JworCSAgICB8fCAoY2F0Xygn
YWNsb2NhbC5tNCcpID1+IC9nZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIChcU3sz
fSkvID8gJDEgOiAnJykgZXEgJzEuNScKKwkgICAgfHwgYW1fdmVyc2lvbignYWNsb2NhbC5tNCcp
IGVxICcxLjUnKSkgeworCQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNSc7ICAgICMgdG8gcHJl
dmVudCBmdXJ0aGVyICJjYXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUg
Y3dkIGV0YykKKwkJJGJpbmFyeSAJPSAkYmluYXJ5XzFfNTsKKwl9IGVsc2lmICgteCAkYmluYXJ5
XzFfNCAgICAgICAgICAgICAjIHVzZXIgbWF5IG5vdCBoYXZlIDEuNCAuLi4KKwkmJiAoKCRFTlZ7
V0FOVF9BVVRPTUFLRX0gZXEgJzEuNCcpCisJICAgIHx8IChjYXRfKCdNYWtlZmlsZS5pbicpID1+
IC9eIyBNYWtlZmlsZVwuaW4gZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYXV0b21ha2UgKFxT
ezN9KS8gPyAkMSA6ICcnKSBlcSAnMS40JworCSAgICB8fCAoY2F0XygnYWNsb2NhbC5tNCcpID1+
IC9nZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIChcU3szfSkvID8gJDEgOiAnJykg
ZXEgJzEuNCcKKwkgICAgfHwgYW1fdmVyc2lvbignYWNsb2NhbC5tNCcpIGVxICcxLjQnKSkgewor
CQkkRU5We1dBTlRfQVVUT01BS0V9ID0gJzEuNCc7ICAgICMgdG8gcHJldmVudCBmdXJ0aGVyICJj
YXRzIiBhbmQgdG8gZW5oYW5jZSBjb25zaXN0ZW5jeSAocG9zc2libGUgY3dkIGV0YykKKwkJJGJp
bmFyeQkJPSAkYmluYXJ5XzFfNDsKIAl9IGVsc2UgewogCQkkRU5We1dBTlRfQVVUT01BS0V9ID0g
JzEuOCc7Ci0JCSRiaW5hcnkgICAgICAgICA9ICRiaW5hcnlfMV84OwogCX0KLSAgICB9CiB9CiAK
ICRFTlZ7V0FOVF9BTVdSQVBQRVJfREVCVUd9IGFuZCBwcmludCBTVERFUlIgImFtLXdyYXBwZXI6
IHdpbGwgZXhlY3V0ZSA8JGJpbmFyeT5cbiI7Cg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>42738</attachid>
            <date>2004-10-27 18:19 0000</date>
            <desc>ac-wrapper.pl</desc>
            <filename>ac-wrapper.pl</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9wZXJsCiMKIwojIEd1aWxsYXVtZSBDb3R0ZW5jZWF1IChnY0BtYW5kcmFrZXNv
ZnQuY29tKQojIEFiZWwgQ2hldW5nIChkZWFkZG9nQGRlYWRkb2cub3JnKQojCiMgQ29weXJpZ2h0
IDIwMDEtMjAwMiwgMjAwNCBNYW5kcmFrZVNvZnQKIwojIFRoaXMgc29mdHdhcmUgbWF5IGJlIGZy
ZWVseSByZWRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VCiMgcHVibGljIGxp
Y2Vuc2UuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdy
aXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNjc1IE1hc3MgQXZl
LCBDYW1icmlkZ2UsIE1BIDAyMTM5LCBVU0EuCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIEV4ZWN1dGVz
IHRoZSBjb3JyZWN0IGF1dG9jb25mIHZlcnNpb24uCiMKIyAtIGRlZmF1bHRzIHRvIGF1dG9jb25m
LTIuNXgKIyAtIHJ1bnMgYXV0b2NvbmYtMi4xMyBvbmx5IGlmOgojICAgLSBlbnZ2YXIgV0FOVF9B
VVRPQ09ORl8yXzEgaXMgc2V0IHRvIGAxJwojICAgICAtb3ItCiMgICAtIGBjb25maWd1cmUnIGlz
IGFscmVhZHkgcHJlc2VudCBhbmQgd2FzIGdlbmVyYXRlZCBieSBhdXRvY29uZiAyLjEzCiMKIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMKIwojIENoYW5nZUxvZzoKIyAKIyAqIEZyaSBNYXkgMTQgMjAwNAojIC0gVXNl
IGF1dG9jb25mIDIuNXggYnkgZGVmYXVsdCwgdW5sZXNzIGBjb25maWd1cmUnIGlzIGdlbmVyYXRl
ZCBieQojICAgYXV0b2NvbmYgMi4xMywgb3IgV0FOVF9BVVRPQ09ORl8yXzEgaXMgc2V0LgojIC0g
V0FOVF9BVVRPQ09ORl8yXzUgaGFzIG5vIGVmZmVjdCBub3cKIwojICogVGh1IE1heSAyNyAyMDA0
CiMgLSBBbG1vc3QgcmV3cml0ZQojIC0gSW50cm9kdWNlIEZPUkNFX0FVVE9DT05GXzJfNSAoYXZv
aWQgbWlzdXNlIHdpdGggV0FOVF8qKSwgd2hpY2ggY2FuIGJlIHVzZWQKIyAgIHdoZW4geW91IHdh
bnQgdG8gcGxheSB3aXRoIGZpcmUgOi0pCiMgLSBNb3JlIHZlcmJvc2UgYW5kIHVzZXIgb3JpZW50
ZWQgbWVzc2FnZXMgKGdjIGV0LiBhbC4pCiMKIyAqIFNhdCBKdWwgMDMgMjAwNAojIC0gcmVxdWly
ZSBhdXRvY29uZjIuMSBhbmQgcmVtb3ZlIHNwZWNpYWwgZXJyb3IgbWVzc2FnZQojIC0gYWxsb3cg
dXNlIG9mIHRvb2xzIHdpdGhvdXQgY29uZmlndXJlLmluIG9yIGNvbmZpZ3VyZS5hYyAoMi41IG9u
bHkpCiMgICByZXF1aXJlZCBmb3IgYXV0b2RldGVjdGlvbiBieSBhcHBzCgp1c2UgTURLOjpDb21t
b24gcXcoY2F0XyBiYXNlbmFtZSk7CnVzZSBzdHJpY3Q7CgpzdWIgZXJybXNnIHsKCW15ICRkdW1t
eSA9IDA7CglteSBAbXNnID0gQF87Cglmb3JlYWNoIChAbXNnKSB7CgkJcHJpbnQgU1RERVJSICgo
JGR1bW15KysgPT0gMCk/ICJhYy13cmFwcGVyOiAiIDogIiAgICAgICAgICAgICIpIC4gJF8gLiAi
XG4iOwoJfQoJZXhpdCAxOwp9CgplcnJtc2cgKCJEb24ndCBjYWxsIHRoaXMgc2NyaXB0IGRpcmVj
dGx5LiIpIGlmIChiYXNlbmFtZSgiJDAiKSBlcSAiYWMtd3JhcHBlci5wbCIpOwoKIwojIGdvIGF3
YXkgbmF1Z2h0eSBndXlzL2dhbHMKIwppZiAoKCRFTlZ7V0FOVF9BVVRPQ09ORl8yXzF9KSAmJiAo
JEVOVntGT1JDRV9BVVRPQ09ORl8yXzV9KSkgewoJZXJybXNnICgiWW91IGNhbiBvbmx5IHNldCBl
aXRoZXIgV0FOVF9BVVRPQ09ORl8yXzEgb3IgRk9SQ0VfQVVUT0NPTkZfMl81LCIsCgkJImJ1dCBu
b3QgYm90aC4iKTsKfQoKaWYgKCgkRU5We1dBTlRfQVVUT0NPTkZfMl8xfSkgJiYgKGJhc2VuYW1l
KCIkMCIpIGVxICJhdXRvbTR0ZSIpKSB7CgllcnJtc2cgKCJBdXRvY29uZiAyLjEzIGRvZXNuJ3Qg
Y29udGFpbiBhdXRvbTR0ZS4iLAoJCSJFaXRoZXIgdW5zZXQgV0FOVF9BVVRPQ09ORl8yXzEgb3Ig
ZG9uJ3QgZXhlY3V0ZSBhbnl0aGluZyIsCgkJInRoYXQgd291bGQgdXNlIGF1dG9tNHRlLiIpOwp9
CgpteSAkYmluYXJ5X25ldyA9ICIkMC0yLjV4IjsKbXkgJGJpbmFyeV9vbGQgPSAiJDAtMi4xMyI7
Cm15ICRiaW5hcnkgPSAkYmluYXJ5X25ldzsKbXkgJGNvbmZ2ZXJzaW9uID0gJ1VuZGV0ZWN0ZWQn
OwoKaWYgKCgtZiAiY29uZmlndXJlLmFjIikgfHwgKC1mICJjb25maWd1cmUuaW4iKSkgewojCiMg
YXV0b2RldGVjdCByb3V0aW5lCiMKCWlmICgkRU5We1dBTlRfQVVUT0NPTkZfMl8xfSkgewoJCWlm
ICgoLWYgImNvbmZpZ3VyZS5pbiIpICYmICghIC1mICJjb25maWd1cmUuYWMiKSkgewoJCQkkYmlu
YXJ5ID0gJGJpbmFyeV9vbGQ7CgkJfSBlbHNlIHsKCQkJZXJybXNnICgiU2luY2UgY29uZmlndXJl
LmFjIGlzIHByZXNlbnQsIGFjbG9jYWwgYWx3YXlzIHVzZSIsCgkJCQkiYXV0b2NvbmYgMi41eCwg
d2hpY2ggY29uZmxpY3RzIHdpdGggeW91ciBjaG9pY2UgYW5kIiwKCQkJCSJjYXVzZXMgZXJyb3Iu
IFlvdSBoYXZlIHR3byBvcHRpb25zOiIsCgkJCQkiMS4gVHJ5IGV4ZWN1dGUgY29tbWFuZCBhZ2Fp
biBhZnRlciByZW1vdmluZyBjb25maWd1cmUuYWMiLAoJCQkJIjIuIERvbid0IHNldCBXQU5UX0FV
VE9DT05GXzJfMSB2YXJpYWJsZSIpOwoJCX0KCX0gZWxzaWYgKCEoJEVOVntGT1JDRV9BVVRPQ09O
Rl8yXzV9KSkgewoJCSMgVSA+IFswLTldIGluIGxleGljb24gY29tcGFyaXNvbgoJCSRjb25mdmVy
c2lvbiA9IChjYXRfKCdjb25maWd1cmUnKSA9fiAvXiMgR2VuZXJhdGVkIChieSAoPzpHTlUgKT9B
dXRvY29uZnxhdXRvbWF0aWNhbGx5IHVzaW5nIGF1dG9jb25mIHZlcnNpb24pIChcUyspL20gPyAk
MiA6ICdVbmtub3duJyk7CgkKCQlpZiAoKCIkY29uZnZlcnNpb24iIGx0ICcyLjUnKSAmJiAoISAt
ZiAiY29uZmlndXJlLmFjIikpIHsKCQkJJGJpbmFyeSA9ICRiaW5hcnlfb2xkOwoJCX0KCX0KfQoK
aWYgKCRFTlZ7V0FOVF9BQ1dSQVBQRVJfREVCVUd9KSB7CglwcmludCBTVERFUlIgImFjLXdyYXBw
ZXI6IERFQlVHOiBEZXRlY3RlZCB2ZXJzaW9uIGlzICckY29uZnZlcnNpb24nXG4iOwoJcHJpbnQg
U1RERVJSICJhYy13cmFwcGVyOiBERUJVRzogV0FOVF9BVVRPQ09ORl8yXzEgaXMgc2V0XG4iIGlm
ICgkRU5We1dBTlRfQVVUT0NPTkZfMl8xfSk7CglwcmludCBTVERFUlIgImFjLXdyYXBwZXI6IERF
QlVHOiBGT1JDRV9BVVRPQ09ORl8yXzUgaXMgc2V0XG4iIGlmICgkRU5We0ZPUkNFX0FVVE9DT05G
XzJfNX0pOwoJcHJpbnQgU1RERVJSICJhYy13cmFwcGVyOiBERUJVRzogd2lsbCBleGVjdXRlIDwk
YmluYXJ5PlxuIjsKfQoKIwojIGZvciBmdXJ0aGVyIGNvbnNpc3RlbmN5CiMKJEVOVntXQU5UX0FV
VE9DT05GXzJfMX0gPSAxIGlmICgiJGJpbmFyeSIgZXEgIiRiaW5hcnlfb2xkIik7CiRFTlZ7Rk9S
Q0VfQVVUT0NPTkZfMl81fSA9IDEgaWYgKCIkYmluYXJ5IiBlcSAiJGJpbmFyeV9uZXciKTsKCmlm
ICghIC14ICIkYmluYXJ5IikgewoJIyB0aGlzIHNob3VsZG4ndCBoYXBwZW4KCWVycm1zZyAoIiRi
aW5hcnkgaXMgbWlzc2luZyBvciBub3QgZXhlY3V0YWJsZS4iLAoJCSJTb21ldGhpbmcgaXMgdmVy
eSB3cm9uZy4iKTsKfQoKZXhlYyAkYmluYXJ5LCBAQVJHVjsK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>42882</attachid>
            <date>2004-10-29 15:20 0000</date>
            <desc>ac-wrapper-1.pl based on the mdk one</desc>
            <filename>ac-wrapper-1.pl</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9wZXJsCiMKIwojIEd1aWxsYXVtZSBDb3R0ZW5jZWF1IChnY0BtYW5kcmFrZXNv
ZnQuY29tKQojIEFiZWwgQ2hldW5nIChkZWFkZG9nQGRlYWRkb2cub3JnKQojCiMgQ29weXJpZ2h0
IDIwMDEtMjAwMiwgMjAwNCBNYW5kcmFrZVNvZnQKIwojIFRoaXMgc29mdHdhcmUgbWF5IGJlIGZy
ZWVseSByZWRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VCiMgcHVibGljIGxp
Y2Vuc2UuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdy
aXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNjc1IE1hc3MgQXZl
LCBDYW1icmlkZ2UsIE1BIDAyMTM5LCBVU0EuCiMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIwojIEV4ZWN1dGVz
IHRoZSBjb3JyZWN0IGF1dG9jb25mIHZlcnNpb24uCiMKIyAtIGRlZmF1bHRzIHRvIGF1dG9jb25m
LTIuNTkKIyAtIHJ1bnMgYXV0b2NvbmYtMi4xMyBvbmx5IGlmOgojICAgLSBlbnZ2YXIgV0FOVF9B
VVRPQ09ORiBpcyBzZXQgdG8gYDIuMScKIyAgICAgLW9yLQojICAgLSBgY29uZmlndXJlJyBpcyBh
bHJlYWR5IHByZXNlbnQgYW5kIHdhcyBnZW5lcmF0ZWQgYnkgYXV0b2NvbmYgMi4xMwojCiMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjCgp1c2Ugc3RyaWN0OwoKc3ViIGJhc2VuYW1lIHsgbG9jYWwgJF8gPSBzaGlmdDsg
c3wvKlxzKiR8fDsgc3wuKi98fDsgJF8gfQpzdWIgY2F0XyB7IG9wZW4obXkgJEYsICRfWzBdKSBv
ciByZXR1cm47IG15IEBsID0gPCRGPjsgd2FudGFycmF5KCkgPyBAbCA6IGpvaW4gJycsIEBsIH0K
CnN1YiBlcnJtc2cgewoJbXkgJGR1bW15ID0gMDsKCW15IEBtc2cgPSBAXzsKCWZvcmVhY2ggKEBt
c2cpIHsKCQlwcmludCBTVERFUlIgKCgkZHVtbXkrKyA9PSAwKT8gImFjLXdyYXBwZXI6ICIgOiAi
ICAgICAgICAgICAgIikgLiAkXyAuICJcbiI7Cgl9CglleGl0IDE7Cn0KCmVycm1zZyAoIkRvbid0
IGNhbGwgdGhpcyBzY3JpcHQgZGlyZWN0bHkuIikgaWYgKGJhc2VuYW1lKCIkMCIpIGVxICJhYy13
cmFwcGVyLnBsIik7CgppZiAoKCRFTlZ7V0FOVF9BVVRPQ09ORn0gZXEgJzIuMScpICYmIChiYXNl
bmFtZSgiJDAiKSBlcSAiYXV0b200dGUiKSkgewoJZXJybXNnICgiQXV0b2NvbmYgMi4xMyBkb2Vz
bid0IGNvbnRhaW4gYXV0b200dGUuIiwKCQkiRWl0aGVyIHVuc2V0IFdBTlRfQVVUT0NPTkYgb3Ig
ZG9uJ3QgZXhlY3V0ZSBhbnl0aGluZyIsCgkJInRoYXQgd291bGQgdXNlIGF1dG9tNHRlLiIpOwp9
CgpteSAkYmluYXJ5X25ldyA9ICIkMC0yLjU5IjsKbXkgJGJpbmFyeV9vbGQgPSAiJDAtMi4xMyI7
Cm15ICRiaW5hcnkgPSAkYmluYXJ5X25ldzsKbXkgJGNvbmZ2ZXJzaW9uOwoKaWYgKCgtZiAiY29u
ZmlndXJlLmFjIikgfHwgKC1mICJjb25maWd1cmUuaW4iKSkgewojCiMgYXV0b2RldGVjdCByb3V0
aW5lCiMKCWlmICgkRU5We1dBTlRfQVVUT0NPTkZ9IG5lICcyLjUnKSB7CgkJaWYgKCRFTlZ7V0FO
VF9BVVRPQ09ORn0gZXEgJzIuMScpIHsKCQkJaWYgKCEgLWYgImNvbmZpZ3VyZS5hYyIpIHsKCQkJ
CSRiaW5hcnkgPSAkYmluYXJ5X29sZDsKCQkJfSBlbHNlIHsKCQkJCWVycm1zZyAoIlNpbmNlIGNv
bmZpZ3VyZS5hYyBpcyBwcmVzZW50LCBhY2xvY2FsIGFsd2F5cyB1c2UiLAoJCQkJCSJhdXRvY29u
ZiAyLjU5LCB3aGljaCBjb25mbGljdHMgd2l0aCB5b3VyIGNob2ljZSBhbmQiLAoJCQkJCSJjYXVz
ZXMgZXJyb3IuIFlvdSBoYXZlIHR3byBvcHRpb25zOiIsCgkJCQkJIjEuIFRyeSBleGVjdXRlIGNv
bW1hbmQgYWdhaW4gYWZ0ZXIgcmVtb3ZpbmcgY29uZmlndXJlLmFjIiwKCQkJCQkiMi4gRG9uJ3Qg
c2V0IFdBTlRfQVVUT0NPTkYiKTsKCQkJfQoJCX0gZWxzZSB7CgkJCSMgVSA+IFswLTldIGluIGxl
eGljb24gY29tcGFyaXNvbgoJCQkkY29uZnZlcnNpb24gPSAoY2F0XygnY29uZmlndXJlJykgPX4g
L14jIEdlbmVyYXRlZCAoYnkgKD86R05VICk/QXV0b2NvbmZ8YXV0b21hdGljYWxseSB1c2luZyBh
dXRvY29uZiB2ZXJzaW9uKSAoXFN7M30pL20gPyAkMiA6ICdVbmtub3duJyk7CgkKCQkJaWYgKCgi
JGNvbmZ2ZXJzaW9uIiBlcSAnMi4xJykgJiYgKCEgLWYgImNvbmZpZ3VyZS5hYyIpKSB7CgkJCQkk
YmluYXJ5ID0gJGJpbmFyeV9vbGQ7CgkJCX0KCQl9Cgl9Cn0KCmlmICgkRU5We1dBTlRfQUNXUkFQ
UEVSX0RFQlVHfSkgewoJcHJpbnQgU1RERVJSICJhYy13cmFwcGVyOiBERUJVRzogV0FOVF9BVVRP
Q09ORiBpcyBzZXQgdG8gJEVOVntXQU5UX0FVVE9DT05GfVxuIiBpZiAoJEVOVntXQU5UX0FVVE9D
T05GfSk7CglwcmludCBTVERFUlIgImFjLXdyYXBwZXI6IERFQlVHOiB3aWxsIGV4ZWN1dGUgPCRi
aW5hcnk+XG4iOwp9CgojCiMgZm9yIGZ1cnRoZXIgY29uc2lzdGVuY3kKIwokRU5We1dBTlRfQVVU
T0NPTkZ9ID0gJzIuNScgaWYgKCIkYmluYXJ5IiBlcSAiJGJpbmFyeV9uZXciKTsKJEVOVntXQU5U
X0FVVE9DT05GfSA9ICcyLjEnIGlmICgiJGJpbmFyeSIgZXEgIiRiaW5hcnlfb2xkIik7CgppZiAo
ISAteCAiJGJpbmFyeSIpIHsKCSMgdGhpcyBzaG91bGRuJ3QgaGFwcGVuCgllcnJtc2cgKCIkYmlu
YXJ5IGlzIG1pc3Npbmcgb3Igbm90IGV4ZWN1dGFibGUuIiwKCQkiUGxlYXNlIHRyeSBlbWVyZ2lu
ZyB0aGUgY29ycmVjdCB2ZXJzaW9uIG9mIGF1dG9jb25mLiIpOwp9CgpleGVjICRiaW5hcnksIEBB
UkdWOwoKZXJybXNnICgid2FzIHVuYWJsZSB0byBleGVjICRiaW5hcnkgIT8iKTsK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>42883</attachid>
            <date>2004-10-29 15:31 0000</date>
            <desc>am-wrapper-1.pl based on the mdk one</desc>
            <filename>am-wrapper-1.pl</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9wZXJsCiMKIwojIEF1dGhvcjogR3VpbGxhdW1lIENvdHRlbmNlYXUgKGdjQG1h
bmRyYWtlc29mdC5jb20pCiMgTW9kaWZpZWQgYnk6IE1hcnRpbiBTY2hsZW1tZXIgKGF6YXJhaEBn
ZW50b28ub3JnKQojCiMgQ29weXJpZ2h0IDIwMDEgTWFuZHJha2VTb2Z0CiMKIyBUaGlzIHNvZnR3
YXJlIG1heSBiZSBmcmVlbHkgcmVkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VQojIHB1YmxpYyBsaWNlbnNlLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh
bTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4s
IDY3NSBNYXNzIEF2ZSwgQ2FtYnJpZGdlLCBNQSAwMjEzOSwgVVNBLgojCiMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
CiMKIyBFeGVjdXRlcyB0aGUgY29ycmVjdCBhdXRvY29uZiB2ZXJzaW9uLgojCiMgLSBkZWZhdWx0
cyB0byBhdXRvbWFrZS0xLjgKIyAtIHJ1bnMgYXV0b21ha2UtMS43IGlmOgojICAgLSBlbnZ2YXIg
V0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuNycKIyAgICAgLW9yLQojICAgLSBgTWFrZWZpbGUu
aW4nIHdhcyBnZW5lcmF0ZWQgYnkgYXV0b21ha2UtMS43CiMgICAgIC1vci0KIyAgIC0gJ2FjbG9j
YWwubTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVSU0lPTiwgc3BlY2lmeWluZyB0aGUgdXNlIG9m
IDEuNwojIC0gcnVucyBhdXRvbWFrZS0xLjYgaWY6CiMgICAtIGVudnZhciBXQU5UX0FVVE9NQUtF
IGlzIHNldCB0byBgMS42JwojICAgICAtb3ItCiMgICAtIGBNYWtlZmlsZS5pbicKIyAgICAgLW9y
LQojICAgLSAnYWNsb2NhbC5tNCcgY29udGFpbiBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5
aW5nIHRoZSB1c2Ugb2YgMS42CiMgLSBydW5zIGF1dG9tYWtlLTEuNSBpZjoKIyAgIC0gZW52dmFy
IFdBTlRfQVVUT01BS0UgaXMgc2V0IHRvIGAxLjUnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxl
LmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlLTEuNQojICAgICAtb3ItCiMgICAtICdhY2xv
Y2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtFX1ZFUlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBv
ZiAxLjUKIyAtIHJ1bnMgYXV0b21ha2UtMS40IGlmOgojICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFL
RSBpcyBzZXQgdG8gYDEuNCcKIyAgICAgLW9yLQojICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5l
cmF0ZWQgYnkgYXV0b21ha2UtMS40CiMgICAgIC1vci0KIyAgIC0gJ2FjbG9jYWwubTQnIGNvbnRh
aW4gQU1fQVVUT01BS0VfVkVSU0lPTiwgc3BlY2lmeWluZyB0aGUgdXNlIG9mIDEuNAojCiMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjCgp1c2Ugc3RyaWN0OwoKc3ViIGJhc2VuYW1lIHsgbG9jYWwgJF8gPSBzaGlmdDsg
c3wvKlxzKiR8fDsgc3wuKi98fDsgJF8gfQpzdWIgY2F0XyB7IG9wZW4obXkgJEYsICRfWzBdKSBv
ciByZXR1cm47IG15IEBsID0gPCRGPjsgd2FudGFycmF5KCkgPyBAbCA6IGpvaW4gJycsIEBsIH0K
CnN1YiBlcnJtc2cgewoJbXkgJGR1bW15ID0gMDsKCW15IEBtc2cgPSBAXzsKCWZvcmVhY2ggKEBt
c2cpIHsKCQlwcmludCBTVERFUlIgKCgkZHVtbXkrKyA9PSAwKT8gImFtLXdyYXBwZXI6ICIgOiAi
ICAgICAgICAgICAgIikgLiAkXyAuICJcbiI7Cgl9CglleGl0IDE7Cn0KCmVycm1zZyAoIkRvbid0
IGNhbGwgdGhpcyBzY3JpcHQgZGlyZWN0bHkuIikgaWYgKGJhc2VuYW1lKCIkMCIpIGVxICJhbS13
cmFwcGVyLnBsIik7CgpteSAkYmluYXJ5XzFfNCAgPSAiJDAtMS40IjsKbXkgJGJpbmFyeV8xXzUg
ID0gIiQwLTEuNSI7Cm15ICRiaW5hcnlfMV82ICA9ICIkMC0xLjYiOwpteSAkYmluYXJ5XzFfNyAg
PSAiJDAtMS43IjsKbXkgJGJpbmFyeV8xXzggID0gIiQwLTEuOCI7Cm15ICRiaW5hcnkgPSAkYmlu
YXJ5XzFfODsKbXkgJGNvbmZ2ZXJzaW9uX21mOwpteSAkY29uZnZlcnNpb25fYWM7Cm15ICRjb25m
dmVyc2lvbl9hbTsKCiMKIyBhdXRvZGV0ZWN0IHJvdXRpbmUKIwppZiAoJEVOVntXQU5UX0FVVE9N
QUtFfSBuZSAnMS44JykgewoJaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRX0gZXEgJzEuNycpIHsKCQkk
YmluYXJ5ID0gJGJpbmFyeV8xXzc7Cgl9IGVsc2lmICgkRU5We1dBTlRfQVVUT01BS0V9IGVxICcx
LjYnKSB7CgkJJGJpbmFyeSA9ICRiaW5hcnlfMV82OwoJfSBlbHNpZiAoJEVOVntXQU5UX0FVVE9N
QUtFfSBlcSAnMS41JykgewoJCSRiaW5hcnkgPSAkYmluYXJ5XzFfNTsKCX0gZWxzaWYgKCRFTlZ7
V0FOVF9BVVRPTUFLRX0gZXEgJzEuNCcpIHsKCQkkYmluYXJ5ID0gJGJpbmFyeV8xXzQ7Cgl9IGVs
c2UgewoJCSRjb25mdmVyc2lvbl9tZiA9IGNhdF8oJ01ha2VmaWxlLmluJykgPX4gL14jIE1ha2Vm
aWxlXC5pbiBnZW5lcmF0ZWQgKD86YXV0b21hdGljYWxseSApP2J5IGF1dG9tYWtlIChcU3szfSkv
ID8gJDEgOiAnJzsKCQkkY29uZnZlcnNpb25fYWMgPSBjYXRfKCdhY2xvY2FsLm00JykgPX4gL2dl
bmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGFjbG9jYWwgKFxTezN9KS8gPyAkMSA6ICcnOwoJCSRj
b25mdmVyc2lvbl9hbSA9IGNhdF8oJ2FjbG9jYWwubTQnKSA9fiAvXlxzKlxbP0FNX0FVVE9NQUtF
X1ZFUlNJT05cKFxbPyhbXlwpXXsyfVswLTldPylbXlwpXSpcXT9cKS9tZyA/ICQxIDogJyc7CgoJ
CWlmICgkY29uZnZlcnNpb25fbWYgZXEgJzEuNycgfHwgJGNvbmZ2ZXJzaW9uX2FjIGVxICcxLjcn
IHx8ICRjb25mdmVyc2lvbl9hbSBlcSAnMS43JykgewoJCQkkYmluYXJ5ID0gJGJpbmFyeV8xXzc7
CgkJfSBlbHNpZiAoJGNvbmZ2ZXJzaW9uX21mIGVxICcxLjYnIHx8ICRjb25mdmVyc2lvbl9hYyBl
cSAnMS42JyB8fCAkY29uZnZlcnNpb25fYW0gZXEgJzEuNicpIHsKCQkJJGJpbmFyeSA9ICRiaW5h
cnlfMV82OwoJCX0gZWxzaWYgKCRjb25mdmVyc2lvbl9tZiBlcSAnMS41JyB8fCAkY29uZnZlcnNp
b25fYWMgZXEgJzEuNScgfHwgJGNvbmZ2ZXJzaW9uX2FtIGVxICcxLjUnKSB7CgkJCSRiaW5hcnkg
PSAkYmluYXJ5XzFfNTsKCQl9IGVsc2lmICgkY29uZnZlcnNpb25fbWYgZXEgJzEuNCcgfHwgJGNv
bmZ2ZXJzaW9uX2FjIGVxICcxLjQnIHx8ICRjb25mdmVyc2lvbl9hbSBlcSAnMS40JykgewoJCQkk
YmluYXJ5ID0gJGJpbmFyeV8xXzQ7CgkJfQoJfQp9CgppZiAoJEVOVntXQU5UX0FNV1JBUFBFUl9E
RUJVR30pIHsKCXByaW50IFNUREVSUiAiYW0td3JhcHBlcjogREVCVUc6IFdBTlRfQVVUT01BS0Ug
aXMgc2V0IHRvICRFTlZ7V0FOVF9BVVRPTUFLRX1cbiIgaWYgKCRFTlZ7V0FOVF9BVVRPTUFLRX0p
OwoJcHJpbnQgU1RERVJSICJhbS13cmFwcGVyOiBERUJVRzogd2lsbCBleGVjdXRlIDwkYmluYXJ5
PlxuIjsKfQoKIwojIGZvciBmdXJ0aGVyIGNvbnNpc3RlbmN5CiMKJEVOVntXQU5UX0FVVE9NQUtF
fSA9ICcxLjgnIGlmICgiJGJpbmFyeSIgZXEgIiRiaW5hcnlfMV84Iik7CiRFTlZ7V0FOVF9BVVRP
TUFLRX0gPSAnMS43JyBpZiAoIiRiaW5hcnkiIGVxICIkYmluYXJ5XzFfNyIpOwokRU5We1dBTlRf
QVVUT01BS0V9ID0gJzEuNicgaWYgKCIkYmluYXJ5IiBlcSAiJGJpbmFyeV8xXzYiKTsKJEVOVntX
QU5UX0FVVE9NQUtFfSA9ICcxLjUnIGlmICgiJGJpbmFyeSIgZXEgIiRiaW5hcnlfMV81Iik7CiRF
TlZ7V0FOVF9BVVRPTUFLRX0gPSAnMS40JyBpZiAoIiRiaW5hcnkiIGVxICIkYmluYXJ5XzFfNCIp
OwoKaWYgKCEgLXggIiRiaW5hcnkiKSB7CgkjIHRoaXMgc2hvdWxkbid0IGhhcHBlbgoJZXJybXNn
ICgiJGJpbmFyeSBpcyBtaXNzaW5nIG9yIG5vdCBleGVjdXRhYmxlLiIsCgkJIlBsZWFzZSB0cnkg
ZW1lcmdpbmcgdGhlIGNvcnJlY3QgdmVyc2lvbiBvZiBhdXRvY29uZi4iKTsKfQoKZXhlYyAkYmlu
YXJ5LCBAQVJHVjsKCmVycm1zZyAoIndhcyB1bmFibGUgdG8gZXhlYyAkYmluYXJ5ICE/Iik7Cg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>43350</attachid>
            <date>2004-11-05 09:23 0000</date>
            <desc>ac-wrapper-1.sh</desc>
            <filename>ac-wrapper-1.sh</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvYmluL3NoCiMKIyBCYXNlZCBvbiB0aGUgYWMtd3JhcHBlci5wbCBzY3JpcHQgcHJvdmlkZWQg
YnkgTWFuZHJha2VTb2Z0CiMKIyBUaGlzIHNvZnR3YXJlIG1heSBiZSBmcmVlbHkgcmVkaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVQojIHB1YmxpYyBsaWNlbnNlLgojCiMgWW91
IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJl
ZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDY3NSBNYXNzIEF2ZSwgQ2FtYnJpZGdlLCBN
QSAwMjEzOSwgVVNBLgojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBFeGVjdXRlcyB0aGUgY29ycmVjdCBh
dXRvY29uZiB2ZXJzaW9uLgojCiMgLSBkZWZhdWx0cyB0byBhdXRvY29uZi0yLjU5CiMgLSBydW5z
IGF1dG9jb25mLTIuMTMgb25seSBpZjoKIyAgIC0gZW52dmFyIFdBTlRfQVVUT0NPTkYgaXMgc2V0
IHRvIGAyLjEnCiMgICAgIC1vci0KIyAgIC0gYGNvbmZpZ3VyZScgaXMgYWxyZWFkeSBwcmVzZW50
IGFuZCB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9jb25mIDIuMTMKIwojIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKaWYg
WyAiJHswIyMqL30iID0gImFjLXdyYXBwZXIuc2giIF07IHRoZW4KCWVjaG8gIkRvbid0IGNhbGwg
dGhpcyBzY3JpcHQgZGlyZWN0bHkuIiA+JjIKCWV4aXQgMQpmaQoKaWYgWyAiJHtXQU5UX0FVVE9D
T05GfSIgPSAiMi4xIiAtYSAiJHswIyMqL30iID0gImF1dG9tNHRlIiBdOyB0aGVuCgllY2hvICJh
Yy13cmFwcGVyOiBBdXRvY29uZiAyLjEzIGRvZXNuJ3QgY29udGFpbiBhdXRvbTR0ZS4iID4mMgoJ
ZWNobyAiICAgICAgICAgICAgRWl0aGVyIHVuc2V0IFdBTlRfQVVUT0NPTkYgb3IgZG9uJ3QgZXhl
Y3V0ZSBhbnl0aGluZyIgPiYyCgllY2hvICIgICAgICAgICAgICB0aGF0IHdvdWxkIHVzZSBhdXRv
bTR0ZS4iID4mMgoJZXhpdCAxCmZpCgpiaW5hcnlfbmV3PSIkezB9LTIuNTkiCmJpbmFyeV9vbGQ9
IiR7MH0tMi4xMyIKYmluYXJ5PSIke2JpbmFyeV9uZXd9IgoKaWYgWyAtZiAiY29uZmlndXJlLmFj
IiAtbyAtZiAiY29uZmlndXJlLmluIiBdOyB0aGVuCiMKIyBhdXRvZGV0ZWN0IHJvdXRpbmUKIwoJ
aWYgWyAiJHtXQU5UX0FVVE9DT05GfSIgIT0gIjIuNSIgXTsgdGhlbiAKCQlpZiBbICIke1dBTlRf
QVVUT0NPTkZ9IiA9ICIyLjEiIF07IHRoZW4KCQkJaWYgWyAhIC1mICJjb25maWd1cmUuYWMiIF07
IHRoZW4KCQkJCWJpbmFyeT0iJHtiaW5hcnlfb2xkfSIKCQkJZWxzZQoJCQkJZWNobyAiYWMtd3Jh
cHBlcjogU2luY2UgY29uZmlndXJlLmFjIGlzIHByZXNlbnQsIGFjbG9jYWwgYWx3YXlzIHVzZSIg
PiYyCgkJCQllY2hvICIgICAgICAgICAgICBhdXRvY29uZiAyLjU5LCB3aGljaCBjb25mbGljdHMg
d2l0aCB5b3VyIGNob2ljZSBhbmQiID4mMgoJCQkJZWNobyAiICAgICAgICAgICAgY2F1c2VzIGVy
cm9yLiBZb3UgaGF2ZSB0d28gb3B0aW9uczoiID4mMgoJCQkJZWNobyAiICAgICAgICAgICAgMS4g
VHJ5IGV4ZWN1dGUgY29tbWFuZCBhZ2FpbiBhZnRlciByZW1vdmluZyBjb25maWd1cmUuYWMiID4m
MgoJCQkJZWNobyAiICAgICAgICAgICAgMi4gRG9uJ3Qgc2V0IFdBTlRfQVVUT0NPTkYiID4mMgoJ
CQkJZXhpdCAxCgkJCWZpCgkJZWxzZQoJCQlpZiBbIC1yICJjb25maWd1cmUiIF07IHRoZW4KCQkJ
CWNvbmZ2ZXJzaW9uPSQocGVybCAtbmUgJ2lmICgvXiMgR2VuZXJhdGVkICg/OmJ5ICg/OkdOVSAp
P0F1dG9jb25mfGF1dG9tYXRpY2FsbHkgdXNpbmcgYXV0b2NvbmYgdmVyc2lvbikgKFxTezN9KS8p
IHsgcHJpbnQgJDE7IGV4aXQ7IH0nIGNvbmZpZ3VyZSkKCQkJZmkKCQoJCQlpZiBbICIke2NvbmZ2
ZXJzaW9ufSIgPSAiMi4xIiAtYSAhIC1mICJjb25maWd1cmUuYWMiIF07IHRoZW4KCQkJCWJpbmFy
eT0iJHtiaW5hcnlfb2xkfSIKCQkJZmkKCQlmaQoJZmkKZmkKCmlmIFsgIiR7V0FOVF9BQ1dSQVBQ
RVJfREVCVUd9IiBdOyB0aGVuCglpZiBbICIke1dBTlRfQVVUT0NPTkZ9IiBdOyB0aGVuCgkJZWNo
byAiYWMtd3JhcHBlcjogREVCVUc6IFdBTlRfQVVUT0NPTkYgaXMgc2V0IHRvICR7V0FOVF9BVVRP
Q09ORn0iID4mMgoJZmkKCWVjaG8gImFjLXdyYXBwZXI6IERFQlVHOiB3aWxsIGV4ZWN1dGUgPCRi
aW5hcnk+IiA+JjIKZmkKCiMKIyBmb3IgZnVydGhlciBjb25zaXN0ZW5jeQojCmlmIFsgIiRiaW5h
cnkiID0gIiRiaW5hcnlfbmV3IiBdOyB0aGVuCglleHBvcnQgV0FOVF9BVVRPQ09ORj0iMi41Igpl
bGlmIFsgIiRiaW5hcnkiID0gIiRiaW5hcnlfb2xkIiBdOyB0aGVuCglleHBvcnQgV0FOVF9BVVRP
Q09ORj0iMi4xIgpmaQoKaWYgWyAhIC14ICIkYmluYXJ5IiBdOyB0aGVuCgkjIHRoaXMgc2hvdWxk
bid0IGhhcHBlbgoJZWNobyAiYWMtd3JhcHBlcjogJGJpbmFyeSBpcyBtaXNzaW5nIG9yIG5vdCBl
eGVjdXRhYmxlLiIgPiYyCgllY2hvICIgICAgICAgICAgICBQbGVhc2UgdHJ5IGVtZXJnaW5nIHRo
ZSBjb3JyZWN0IHZlcnNpb24gb2YgYXV0b2NvbmYuIiA+JjIKCWV4aXQgMQpmaQoKZXhlYyAiJGJp
bmFyeSIgIiRAIgoKZWNobyAiYWMtd3JhcHBlcjogd2FzIHVuYWJsZSB0byBleGVjICRiaW5hcnkg
IT8iID4mMgpleGl0IDEK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>43351</attachid>
            <date>2004-11-05 09:23 0000</date>
            <desc>am-wrapper-1.sh</desc>
            <filename>am-wrapper-1.sh</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvYmluL3NoCiMKIyBCYXNlZCBvbiB0aGUgYW0td3JhcHBlci5wbCBzY3JpcHQgcHJvdmlkZWQg
YnkgTWFuZHJha2VTb2Z0CiMKIyBUaGlzIHNvZnR3YXJlIG1heSBiZSBmcmVlbHkgcmVkaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVQojIHB1YmxpYyBsaWNlbnNlLgojCiMgWW91
IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJl
ZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDY3NSBNYXNzIEF2ZSwgQ2FtYnJpZGdlLCBN
QSAwMjEzOSwgVVNBLgojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMKIyBFeGVjdXRlcyB0aGUgY29ycmVjdCBh
dXRvY29uZiB2ZXJzaW9uLgojCiMgLSBkZWZhdWx0cyB0byBhdXRvbWFrZS0xLjgKIyAtIHJ1bnMg
YXV0b21ha2UtMS43IGlmOgojICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEu
NycKIyAgICAgLW9yLQojICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQgYnkgYXV0b21h
a2UtMS43CiMgICAgIC1vci0KIyAgIC0gJ2FjbG9jYWwubTQnIGNvbnRhaW4gQU1fQVVUT01BS0Vf
VkVSU0lPTiwgc3BlY2lmeWluZyB0aGUgdXNlIG9mIDEuNwojIC0gcnVucyBhdXRvbWFrZS0xLjYg
aWY6CiMgICAtIGVudnZhciBXQU5UX0FVVE9NQUtFIGlzIHNldCB0byBgMS42JwojICAgICAtb3It
CiMgICAtIGBNYWtlZmlsZS5pbicKIyAgICAgLW9yLQojICAgLSAnYWNsb2NhbC5tNCcgY29udGFp
biBBTV9BVVRPTUFLRV9WRVJTSU9OLCBzcGVjaWZ5aW5nIHRoZSB1c2Ugb2YgMS42CiMgLSBydW5z
IGF1dG9tYWtlLTEuNSBpZjoKIyAgIC0gZW52dmFyIFdBTlRfQVVUT01BS0UgaXMgc2V0IHRvIGAx
LjUnCiMgICAgIC1vci0KIyAgIC0gYE1ha2VmaWxlLmluJyB3YXMgZ2VuZXJhdGVkIGJ5IGF1dG9t
YWtlLTEuNQojICAgICAtb3ItCiMgICAtICdhY2xvY2FsLm00JyBjb250YWluIEFNX0FVVE9NQUtF
X1ZFUlNJT04sIHNwZWNpZnlpbmcgdGhlIHVzZSBvZiAxLjUKIyAtIHJ1bnMgYXV0b21ha2UtMS40
IGlmOgojICAgLSBlbnZ2YXIgV0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gYDEuNCcKIyAgICAgLW9y
LQojICAgLSBgTWFrZWZpbGUuaW4nIHdhcyBnZW5lcmF0ZWQgYnkgYXV0b21ha2UtMS40CiMgICAg
IC1vci0KIyAgIC0gJ2FjbG9jYWwubTQnIGNvbnRhaW4gQU1fQVVUT01BS0VfVkVSU0lPTiwgc3Bl
Y2lmeWluZyB0aGUgdXNlIG9mIDEuNAojCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgppZiBbICIkezAjIyovfSIg
PSAiYW0td3JhcHBlci5zaCIgXTsgdGhlbgoJZWNobyAiRG9uJ3QgY2FsbCB0aGlzIHNjcmlwdCBk
aXJlY3RseS4iID4mMgoJZXhpdCAxCmZpCgpiaW5hcnlfMV80PSIkezB9LTEuNCIKYmluYXJ5XzFf
NT0iJHswfS0xLjUiCmJpbmFyeV8xXzY9IiR7MH0tMS42IgpiaW5hcnlfMV83PSIkezB9LTEuNyIK
YmluYXJ5XzFfOD0iJHswfS0xLjgiCmJpbmFyeT0iJHtiaW5hcnlfMV84fSIKCiMKIyBhdXRvZGV0
ZWN0IHJvdXRpbmUKIwppZiBbICIke1dBTlRfQVVUT01BS0V9IiAhPSAiMS44IiBdOyB0aGVuCglp
ZiBbICIke1dBTlRfQVVUT01BS0V9IiA9ICIxLjciIF07IHRoZW4KCQliaW5hcnk9IiR7YmluYXJ5
XzFfN30iCgllbGlmIFsgIiR7V0FOVF9BVVRPTUFLRX0iID0gIjEuNiIgXTsgdGhlbgoJCWJpbmFy
eT0iJHtiaW5hcnlfMV82fSIKCWVsaWYgWyAiJHtXQU5UX0FVVE9NQUtFfSIgPSAiMS41IiBdOyB0
aGVuCgkJYmluYXJ5PSIke2JpbmFyeV8xXzV9IgoJZWxpZiBbICIke1dBTlRfQVVUT01BS0V9IiA9
ICIxLjQiIF07IHRoZW4KCQliaW5hcnk9IiR7YmluYXJ5XzFfNH0iCgllbHNlCgkJaWYgWyAtciAi
TWFrZWZpbGUuaW4iIF07IHRoZW4KCQkJY29uZnZlcnNpb25fbWY9JChwZXJsIC1uZSAnaWYgKC9e
IyBNYWtlZmlsZVwuaW4gZ2VuZXJhdGVkICg/OmF1dG9tYXRpY2FsbHkgKT9ieSBhdXRvbWFrZSAo
XFN7M30pLykgeyBwcmludCAkMTsgZXhpdDsgfScgTWFrZWZpbGUuaW4pCgkJZmkKCQlpZiBbIC1y
ICJhY2xvY2FsLm00IiBdOyB0aGVuCgkJCWNvbmZ2ZXJzaW9uX2FjPSQocGVybCAtbmUgJ2lmICgv
Z2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgYWNsb2NhbCAoXFN7M30pLykgeyBwcmludCAkMTsg
ZXhpdDsgfScgYWNsb2NhbC5tNCkKCQkJY29uZnZlcnNpb25fYW09JChwZXJsIC1uZSAnaWYgKC9e
XHMqXFs/QU1fQVVUT01BS0VfVkVSU0lPTlwoXFs/KFteXCldezJ9WzAtOV0/KVteXCldKlxdP1wp
LykgeyBwcmludCAkMTsgZXhpdDsgfScgYWNsb2NhbC5tNCkKCQlmaQoKCQlpZiBbICIke2NvbmZ2
ZXJzaW9uX21mfSIgPSAiMS43IiAtbyAiJHtjb25mdmVyc2lvbl9hY30iID0gIjEuNyIgLW8gIiR7
Y29uZnZlcnNpb25fYW19IiA9ICIxLjciIF07IHRoZW4KCQkJYmluYXJ5PSIke2JpbmFyeV8xXzd9
IgoJCWVsaWYgWyAiJHtjb25mdmVyc2lvbl9tZn0iID0gIjEuNiIgLW8gIiR7Y29uZnZlcnNpb25f
YWN9IiA9ICIxLjYiIC1vICIke2NvbmZ2ZXJzaW9uX2FtfSIgPSAiMS42IiBdOyB0aGVuCgkJCWJp
bmFyeT0iJHtiaW5hcnlfMV82fSIKCQllbGlmIFsgIiR7Y29uZnZlcnNpb25fbWZ9IiA9ICIxLjUi
IC1vICIke2NvbmZ2ZXJzaW9uX2FjfSIgPSAiMS41IiAtbyAiJHtjb25mdmVyc2lvbl9hbX0iID0g
IjEuNSIgXTsgdGhlbgoJCQliaW5hcnk9IiR7YmluYXJ5XzFfNX0iCgkJZWxpZiBbICIke2NvbmZ2
ZXJzaW9uX21mfSIgPSAiMS40IiAtbyAiJHtjb25mdmVyc2lvbl9hY30iID0gIjEuNCIgLW8gIiR7
Y29uZnZlcnNpb25fYW19IiA9ICIxLjQiIF07IHRoZW4KCQkJYmluYXJ5PSIke2JpbmFyeV8xXzR9
IgoJCWZpCglmaQpmaQoKaWYgWyAiJHtXQU5UX0FNV1JBUFBFUl9ERUJVR30iIF07IHRoZW4KCWlm
IFsgIiR7V0FOVF9BVVRPTUFLRX0iIF07IHRoZW4KCQllY2hvICJhbS13cmFwcGVyOiBERUJVRzog
V0FOVF9BVVRPTUFLRSBpcyBzZXQgdG8gJHtXQU5UX0FVVE9NQUtFfSIgPiYyCglmaQoJZWNobyAi
YW0td3JhcHBlcjogREVCVUc6IHdpbGwgZXhlY3V0ZSA8JGJpbmFyeT4iID4mMgpmaQoKIwojIGZv
ciBmdXJ0aGVyIGNvbnNpc3RlbmN5CiMKaWYgWyAiJHtiaW5hcnl9IiA9ICIke2JpbmFyeV8xXzh9
IiBdOyB0aGVuCglleHBvcnQgV0FOVF9BVVRPTUFLRT0iMS44IgplbGlmIFsgIiR7YmluYXJ5fSIg
PSAiJHtiaW5hcnlfMV83fSIgXTsgdGhlbgoJZXhwb3J0IFdBTlRfQVVUT01BS0U9IjEuNyIKZWxp
ZiBbICIke2JpbmFyeX0iID0gIiR7YmluYXJ5XzFfNn0iIF07IHRoZW4KCWV4cG9ydCBXQU5UX0FV
VE9NQUtFPSIxLjYiCmVsaWYgWyAiJHtiaW5hcnl9IiA9ICIke2JpbmFyeV8xXzV9IiBdOyB0aGVu
CglleHBvcnQgV0FOVF9BVVRPTUFLRT0iMS41IgplbGlmIFsgIiR7YmluYXJ5fSIgPSAiJHtiaW5h
cnlfMV80fSIgXTsgdGhlbgoJZXhwb3J0IFdBTlRfQVVUT01BS0U9IjEuNCIKZmkKCmlmIFsgISAt
eCAiJHtiaW5hcnl9IiBdOyB0aGVuCgkjIHRoaXMgc2hvdWxkbid0IGhhcHBlbgoJZWNobyAiYW0t
d3JhcHBlcjogJGJpbmFyeSBpcyBtaXNzaW5nIG9yIG5vdCBleGVjdXRhYmxlLiIgPiYyCgllY2hv
ICIgICAgICAgICAgICBQbGVhc2UgdHJ5IGVtZXJnaW5nIHRoZSBjb3JyZWN0IHZlcnNpb24gb2Yg
YXV0b21ha2UuIiA+JjIKCWV4aXQgMQpmaQoKZXhlYyAiJGJpbmFyeSIgIiRAIgoKZWNobyAiYW0t
d3JhcHBlcjogd2FzIHVuYWJsZSB0byBleGVjICRiaW5hcnkgIT8iID4mMgpleGl0IDEK
</data>        

          </attachment>
    </bug>

</bugzilla>