<?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>153382</bug_id>
          
          <creation_ts>2006-10-29 17:36 0000</creation_ts>
          <short_desc>ocaml produces binaries with executable stacks</short_desc>
          <delta_ts>2008-01-27 15:24:04 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>Applications</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>120832</dependson>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>vapier@gentoo.org</reporter>
          <assigned_to>ml@gentoo.org</assigned_to>
          <cc>abraham@alumni.uv.es</cc>
    
    <cc>askwar@digitalprojects.com</cc>
    
    <cc>davidepesa@gmail.com</cc>
    
    <cc>gengor@gentoo.org</cc>
    
    <cc>philantrop@gentoo.org</cc>
    
    <cc>prote@fmi.uni-stuttgart.de</cc>
    
    <cc>rmihael@ukr.net</cc>
    
    <cc>stoile@anderedomain.de</cc>
    
    <cc>togge.gentoo@gmail.com</cc>

      

      
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-10-29 17:36:06 0000</bug_when>
            <thetext>$ cat hello.ml 
print_string &quot;Hello world!\n&quot;;;
$ ocamlopt -o hello hello.ml 
$ ./hello 
Hello world!
$ scanelf -a hello
 TYPE    PAX   STK/REL/PTL TEXTREL RPATH BIND FILE 
ET_EXEC ---xe- RWX --- RW-    -      -   LAZY hello 

i know nothing about ocaml so i dont really know where to start looking for the problem (the problem being that the stack is marked with +X)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-10-29 17:36:17 0000</bug_when>
            <thetext>*** Bug 134402 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-10-29 22:47:16 0000</bug_when>
            <thetext>As far as I know, the compiler is doing that by design, and there is no way to &quot;fix&quot; it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-10-30 08:26:59 0000</bug_when>
            <thetext>why dont you actually ask upstream first</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-10-30 18:40:17 0000</bug_when>
            <thetext>I was refering to bug #120832, since ocaml compiles itself and I assume mattam knows what he talks about. I&apos;ll post to the caml-list though, asking for clarifications.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-10-30 18:41:11 0000</bug_when>
            <thetext>*** Bug 116586 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-02 02:30:33 0000</bug_when>
            <thetext>So, I&apos;ve asked upstream here : http://caml.inria.fr/pub/ml-archives/caml-list/2006/11/d84db6c6073041b79a6005ff66328d24.en.html

Their answer, which should appear shortly on the archives, was that they were just unaware of the executable stacks problems and that we are welcome to help them fix it.
I&apos;ve taken a quick look at the compiler code and the ASM generation seems to happen in the file ocaml-3.09.3/asmcomp/i386/emit.mlp. We can easily add some asm at the end of the generated file, in the function end_assembly, and I can deal with the ocaml syntax, but I&apos;m not very sure of what exactly I should add, since it&apos;s none of the options discussed in http://www.gentoo.org/proj/en/hardened/gnu-stack.xml

Thanks for any help</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-11-02 08:59:19 0000</bug_when>
            <thetext>that&apos;s because that file is written in OCAML it looks like :)

i dont know OCAML, but i think you want to add a match for Config.system to &quot;linux_elf&quot; and have that output ` .section .note.GNU-stack,&quot;&quot;,%progbits\n&apos;; ... prob be best if you place it at the top of the end_assembly() function so that it appears before the .text section and you dont have to worry about saving/restoring section names ...

btw, this should be done for every arch, not just i386</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-02 09:22:36 0000</bug_when>
            <thetext>Created an attachment (id=101059)
Patch for i386

Thanks to julien cristau, I have been able to make a small patch that seems to solve the issue here, for i386 archs. Before sending it upstream, I&apos;m waiting for some review and I&apos;m also wondering about other archs. Is the code snippet for gnu as valid on all of them? If so, it will be trivial to patch all of them.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-11-02 09:27:02 0000</bug_when>
            <thetext>i dont really think you want to go changing .s to .S ... that could easily have unintended consequences

since Config.system already reports linux_elf, there is no need to go checking the __ELF__ preprocessor ... also, we want this section marking only on linux, not for all elf systems

proper exec stack markings are valid for anything that runs under the linux kernel</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-02 10:21:41 0000</bug_when>
            <thetext>Created an attachment (id=101061)
Patch for all archs

Sorry, I hadn&apos;t seen your answer. Here comes a new patch that basically does the same modification for every arch. I haven&apos;t tested it on any other arch than i386, though. I&apos;ve also moved .note.GNU-stack to the beginning of end_assembly, as you advised.

$ echo &quot;print_string \&quot;prout\n\&quot;&quot; &gt; prout.ml
$ ocamlopt -S -verbose -dstartup -o prout prout.ml             
+ as -o &apos;prout.o&apos; &apos;prout.S&apos;
+ as -o &apos;/tmp/camlstartupd95ee8.o&apos; &apos;/tmp/camlstartup754e7c.S&apos;
+ gcc   -o &apos;prout&apos; -I&apos;/usr/lib/ocaml&apos;  &apos;/tmp/camlstartupd95ee8.o&apos; &apos;/usr/lib/ocaml/std_exit.o&apos; &apos;prout.o&apos; &apos;/usr/lib/ocaml/stdlib.a&apos;  &apos;-L/usr/lib/ocaml&apos;  &apos;/usr/lib/ocaml/libasmrun.a&apos; -lm  -ldl
$  scanelf -e prout                                              
 TYPE   STK/REL/PTL FILE 
ET_EXEC RW- --- RW- prout


I&apos;ll send the patch upstream if it&apos;s ok with you.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-02 10:42:22 0000</bug_when>
            <thetext>Created an attachment (id=101063)
Patch for all archs

Oops, I had used &gt;&gt; instead of &gt; for creating the patch. Corrected now.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-11-02 11:13:21 0000</bug_when>
            <thetext>you&apos;re still doing __ELF__ though instead of checking Config.system for &quot;linux_elf&quot;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-03 01:50:05 0000</bug_when>
            <thetext>Created an attachment (id=101131)
Revised version of the patch

New version which doesn&apos;t change .s to .S and relies on Config.system instead. Also valid for all archs (untested elsewhere than i386 though).
I tried to avoid code duplication in asmcomp/${arch}/emit.mlp but it looks like asm can be added directly only in .mlp files since they are preprocessed during compilation.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-11-03 05:08:53 0000</bug_when>
            <thetext>afaictl, that one looks good ... this is of course assuming that all architectures dont actually leverage executable stacks ;)

i&apos;d send that one upstream and see what they think</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-11-03 07:45:03 0000</bug_when>
            <thetext>Created an attachment (id=101142)
Patch sent upstream

Here is the last version which I sent upstream. Diff is some archs dropped (mips and power-aix/power-rhapsody) plus different values of Config.system depending on the given arch.

I hope it&apos;ll be included in the next release and we won&apos;t have to patch it ourselves.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2006-12-13 15:51:36 0000</bug_when>
            <thetext>*** Bug 158035 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2007-02-27 22:33:09 0000</bug_when>
            <thetext>*** Bug 168538 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nattfodd@gentoo.org</who>
            <bug_when>2007-02-27 22:38:23 0000</bug_when>
            <thetext>Small update of this bug: I spoke to Xavier Leroy, the main maintainer of ocaml, and he said that this patch would probably be included for x86/amd64 in the next release of ocaml, but not on other arches, since they lack proper hardware for extensive testing. He also said that the patch looked ok.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>cla@gentoo.org</who>
            <bug_when>2007-08-13 17:32:26 0000</bug_when>
            <thetext>*** Bug 188733 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>davidepesa@gmail.com</who>
            <bug_when>2007-08-13 17:59:40 0000</bug_when>
            <thetext>ocaml-3.10.0 still has this problem... :(
Was the patch applied upstream? If so, it doesn&apos;t work here.

Portage 2.1.3.5 (default-linux/x86/2007.0/desktop, gcc-4.2.0, glibc-2.6.1-r0, 2.6.22-gentoo-r2 i686)
=================================================================
System uname: 2.6.22-gentoo-r2 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System release 2.0.0_rc2
Timestamp of tree: Mon, 13 Aug 2007 14:20:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17.50.0.18
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-O2 -march=prescott -pipe&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /var/bind&quot;
CONFIG_PROTECT_MASK=&quot;/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c&quot;
CXXFLAGS=&quot;-O2 -march=prescott -pipe&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox&quot;
GENTOO_MIRRORS=&quot;http://mirror.ing.unibo.it/gentoo/                  ftp://ftp.unina.it/pub/linux/distributions/gentoo/                  http://gentoo.osuosl.org/&quot;
LANG=&quot;it_IT.UTF-8&quot;
LC_ALL=&quot;it_IT.UTF-8&quot;
LDFLAGS=&quot;-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed&quot;
LINGUAS=&quot;it&quot;
MAKEOPTS=&quot;-j2&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_RSYNC_OPTS=&quot;--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
PORTDIR_OVERLAY=&quot;/usr/portage/local/pesa&quot;
SYNC=&quot;rsync://rsync.europe.gentoo.org/gentoo-portage&quot;
USE=&quot;X a52 aac acl acpi adns alsa audiofile avahi bash-completion berkdb bitmap-fonts bzip2 cairo caps cddb cdinstall cdparanoia cdr cli cracklib crypt cups curl curlwrappers dbus dri dts dv dvd dvdr dvdread emacs emboss encode evo exif expat fam fbcon ffmpeg fftw firefox flac ftp gd gdbm gif glut gnutls gpm graphviz hal iconv idn ieee1394 imagemagick imlib innodb isdnlog jabber jack javascript jbig jpeg jpeg2k kde kdeenablefinal kdexdeltas lcms ldap libsamplerate mad matroska midi mikmod mmap mmx mng mp3 mpeg mplayer msn mudflap mule musepack musicbrainz mysql mysqli ncurses nls nptl nptlonly nsplugin ocaml offensive ogg opengl openmp oss pam pcre pdf png pppd pulseaudio python qt3 qt3support qt4 quicktime readline reflection ruby samba sasl sdl session slang sndfile snmp socks5 speex spell spl sqlite sqlite3 sse sse2 ssl svg tcpd tetex theora threads tiff truetype truetype-fonts type1-fonts unicode vcd vorbis win32codecs wmf x264 x86 xcomposite xine xml xorg xosd xpm xv xvid zlib&quot; ALSA_CARDS=&quot;intel8x0&quot; ALSA_PCM_PLUGINS=&quot;adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol&quot; ELIBC=&quot;glibc&quot; INPUT_DEVICES=&quot;keyboard mouse evdev&quot; KERNEL=&quot;linux&quot; LCD_DEVICES=&quot;bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text&quot; LINGUAS=&quot;it&quot; USERLAND=&quot;GNU&quot; VIDEO_CARDS=&quot;nvidia nv vesa&quot;
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>philantrop@gentoo.org</who>
            <bug_when>2007-09-10 18:31:48 0000</bug_when>
            <thetext>If upstream approved of the patch, maybe we could just patch the beast downstream, remind upstream of the patch (possibly by re-submitting it) and be happy ever after? ;)

I&apos;ve just wasted hours on an ebuild till I thought of searching our own Bugzilla... :)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>aballier@gentoo.org</who>
            <bug_when>2008-01-27 15:24:04 0000</bug_when>
            <thetext>this had been fixed starting from ocaml-3.09.3-r1

about 3.10.0, this was due to a wrong check on x86 thus it was still not outputing the noxecstack stuff there (and has been fixed afterwards).</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101059</attachid>
            <date>2006-11-02 09:22 0000</date>
            <desc>Patch for i386</desc>
            <filename>ocaml-3.09.3-nx-stack.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9jYW1sLTMuMDkuMy9NYWtlZmlsZS5vbGQJMjAwNi0xMS0wMiAxNzozNTowMi4wMDAwMDAw
MDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9NYWtlZmlsZQkyMDA2LTExLTAyIDE3OjMzOjA4LjAw
MDAwMDAwMCArMDEwMApAQCAtMzM0LDcgKzMzNCw3IEBACiAgICAgICAgICAgICAtZSAnc3wlJU1P
REVMJSV8JChNT0RFTCl8JyBcCiAgICAgICAgICAgICAtZSAnc3wlJVNZU1RFTSUlfCQoU1lTVEVN
KXwnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX09CSiUlfC5vfCcgXAotICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfQVNNJSV8LnN8JyBcCisgICAgICAgICAgICAtZSAnc3wlJUVYVF9BU00lJXwu
U3wnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX0xJQiUlfC5hfCcgXAogICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfRExMJSV8LnNvfCcgXAogICAgICAgICAgICAgLWUgJ3N8JSVTWVNUSFJFQURf
U1VQUE9SVCUlfCQoU1lTVEhSRUFEX1NVUFBPUlQpfCcgXAotLS0gb2NhbWwtMy4wOS4zL2FzbWNv
bXAvaTM4Ni9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxNzozODowOC4wMDAwMDAwMDAgKzAxMDAK
KysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAJMjAwNi0xMS0wMiAxODoxNTox
NS4wMDAwMDAwMDAgKzAxMDAKQEAgLTkxNCw2ICs5MTQsMTIgQEAKICAgYAkuZGF0YVxuYDsKICAg
TGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUgc3RhY2sgYXMgbm9uLWV4ZWN1dGFi
bGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBfX0VMRl9fXG5gOworICBgLnNlY3Rp
b24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gOworICBgI2VuZGlmXG5gCisKICgq
IEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3Nl
bWJseSgpID0KQEAgLTk0Miw0ICs5NDgsNSBAQAogICBgCS5sb25nCXtlbWl0X2ludCAoTGlzdC5s
ZW5ndGggIWZyYW1lX2Rlc2NyaXB0b3JzKX1cbmA7CiAgIExpc3QuaXRlciBlbWl0X2ZyYW1lICFm
cmFtZV9kZXNjcmlwdG9yczsKICAgZnJhbWVfZGVzY3JpcHRvcnMgOj0gW107CisgIG54X3N0YWNr
KCk7CiAgIGlmIG1hY29zeCB0aGVuIGVtaXRfZXh0ZXJuYWxfc3ltYm9scyAoKQotLS0gb2NhbWwt
My4wOS4zL2FzbXJ1bi9pMzg2LlMub2xkCTIwMDYtMTEtMDIgMTg6MDU6NDguMDAwMDAwMDAwICsw
MTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtcnVuL2kzODYuUwkyMDA2LTExLTAyIDE4OjA1OjM1LjAw
MDAwMDAwMCArMDEwMApAQCAtMzY4LDMgKzM2OCw2IEBACiAjZWxzZQogICAgICAgICAuemVybyAg
IDY0CiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9fCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIi
LCVwcm9nYml0cworI2VuZGlmCg==
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101061</attachid>
            <date>2006-11-02 10:21 0000</date>
            <desc>Patch for all archs</desc>
            <filename>ocaml-3.09.3-nx-stack.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9jYW1sLTMuMDkuMy9NYWtlZmlsZS5vbGQJMjAwNi0xMS0wMiAxNzozNTowMi4wMDAwMDAw
MDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9NYWtlZmlsZQkyMDA2LTExLTAyIDE3OjMzOjA4LjAw
MDAwMDAwMCArMDEwMApAQCAtMzM0LDcgKzMzNCw3IEBACiAgICAgICAgICAgICAtZSAnc3wlJU1P
REVMJSV8JChNT0RFTCl8JyBcCiAgICAgICAgICAgICAtZSAnc3wlJVNZU1RFTSUlfCQoU1lTVEVN
KXwnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX09CSiUlfC5vfCcgXAotICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfQVNNJSV8LnN8JyBcCisgICAgICAgICAgICAtZSAnc3wlJUVYVF9BU00lJXwu
U3wnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX0xJQiUlfC5hfCcgXAogICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfRExMJSV8LnNvfCcgXAogICAgICAgICAgICAgLWUgJ3N8JSVTWVNUSFJFQURf
U1VQUE9SVCUlfCQoU1lTVEhSRUFEX1NVUFBPUlQpfCcgXAotLS0gb2NhbWwtMy4wOS4zL2FzbWNv
bXAvaTM4Ni9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxNzozODowOC4wMDAwMDAwMDAgKzAxMDAK
KysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAJMjAwNi0xMS0wMiAxODoxNTox
NS4wMDAwMDAwMDAgKzAxMDAKQEAgLTkxNCw2ICs5MTQsMTIgQEAKICAgYAkuZGF0YVxuYDsKICAg
TGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUgc3RhY2sgYXMgbm9uLWV4ZWN1dGFi
bGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBfX0VMRl9fXG5gOworICBgLnNlY3Rp
b24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gOworICBgI2VuZGlmXG5gCisKICgq
IEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3Nl
bWJseSgpID0KQEAgLTk0Miw0ICs5NDgsNSBAQAogICBgCS5sb25nCXtlbWl0X2ludCAoTGlzdC5s
ZW5ndGggIWZyYW1lX2Rlc2NyaXB0b3JzKX1cbmA7CiAgIExpc3QuaXRlciBlbWl0X2ZyYW1lICFm
cmFtZV9kZXNjcmlwdG9yczsKICAgZnJhbWVfZGVzY3JpcHRvcnMgOj0gW107CisgIG54X3N0YWNr
KCk7CiAgIGlmIG1hY29zeCB0aGVuIGVtaXRfZXh0ZXJuYWxfc3ltYm9scyAoKQotLS0gb2NhbWwt
My4wOS4zL2FzbXJ1bi9pMzg2LlMub2xkCTIwMDYtMTEtMDIgMTg6MDU6NDguMDAwMDAwMDAwICsw
MTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtcnVuL2kzODYuUwkyMDA2LTExLTAyIDE4OjA1OjM1LjAw
MDAwMDAwMCArMDEwMApAQCAtMzY4LDMgKzM2OCw2IEBACiAjZWxzZQogICAgICAgICAuemVybyAg
IDY0CiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9fCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIi
LCVwcm9nYml0cworI2VuZGlmCi0tLSBvY2FtbC0zLjA5LjMvTWFrZWZpbGUub2xkCTIwMDYtMTEt
MDIgMTc6MzU6MDIuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvTWFrZWZpbGUJMjAw
Ni0xMS0wMiAxNzozMzowOC4wMDAwMDAwMDAgKzAxMDAKQEAgLTMzNCw3ICszMzQsNyBAQAogICAg
ICAgICAgICAgLWUgJ3N8JSVNT0RFTCUlfCQoTU9ERUwpfCcgXAogICAgICAgICAgICAgLWUgJ3N8
JSVTWVNURU0lJXwkKFNZU1RFTSl8JyBcCiAgICAgICAgICAgICAtZSAnc3wlJUVYVF9PQkolJXwu
b3wnIFwKLSAgICAgICAgICAgIC1lICdzfCUlRVhUX0FTTSUlfC5zfCcgXAorICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfQVNNJSV8LlN8JyBcCiAgICAgICAgICAgICAtZSAnc3wlJUVYVF9MSUIlJXwu
YXwnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX0RMTCUlfC5zb3wnIFwKICAgICAgICAgICAg
IC1lICdzfCUlU1lTVEhSRUFEX1NVUFBPUlQlJXwkKFNZU1RIUkVBRF9TVVBQT1JUKXwnIFwKLS0t
IG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAw
MDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUwkyMDA2LTExLTAyIDE4
OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDM4LDMgKzQzOCw3IEBACiAgICAgICAgIC53b3Jk
ICAgLTEgICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4gdXNlIGNhbGxiYWNr
IGxpbmsgKi8KICAgICAgICAgLndvcmQgICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMgaGVy
ZSAqLwogICAgICAgICAuYWxpZ24gIDMKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5H
TlUtc3RhY2ssLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vYW1k
NjQuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMu
MDkuMy9hc21ydW4vYW1kNjQuUwkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMApA
QCAtMzM0LDMgKzMzNCw3IEBACiAgICAgICAgIC5hbGlnbiAgMTYKIGNhbWxfYWJzZl9tYXNrOgog
CS5xdWFkCTB4N0ZGRkZGRkZGRkZGRkZGRiwgMHhGRkZGRkZGRkZGRkZGRkZGCisjaWZkZWYgX19F
TEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBv
Y2FtbC0zLjA5LjMvYXNtcnVuL2FybS5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAw
MCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9hcm0uUwkyMDA2LTExLTAyIDE4OjUzOjEy
LjAwMDAwMDAwMCArMDEwMApAQCAtMzM3LDMgKzMzNyw3IEBACiAgICAgICAgIC5zaG9ydCAgLTEg
ICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4gdXNlIGNhbGxiYWNrIGxpbmsg
Ki8KICAgICAgICAgLnNob3J0ICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMgKi8KICAgICAg
ICAgLmFsaWduICAyCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCwl
cHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL2hwcGEuUy5vbGQJMjAw
Ni0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4v
aHBwYS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBAIC01MzIsMyArNTMy
LDcgQEAKICAgICAgICAgLmxvbmcgICBMMTA0ICsgMyAgICAgICAgLyogcmV0dXJuIGFkZHJlc3Mg
aW50byBjYWxsYmFjayAqLwogICAgICAgICAuc2hvcnQgIC0xICAgICAgICAgICAgICAvKiBuZWdh
dGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxsYmFjayBsaW5rICovCiAgICAgICAgIC5zaG9ydCAg
MCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzICovCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24g
Lm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNt
cnVuL2kzODYuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9j
YW1sLTMuMDkuMy9hc21ydW4vaTM4Ni5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC0zNzEsMyArMzcxLDcgQEAKICNpZmRlZiBfX0VMRl9fCiAJLnNlY3Rpb24gLm5vdGUu
R05VLXN0YWNrLCIiLCVwcm9nYml0cwogI2VuZGlmCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24g
Lm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNt
cnVuL2lhNjQuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9j
YW1sLTMuMDkuMy9hc21ydW4vaWE2NC5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC01MjgsMyArNTI4LDcgQEAKIAogICAgICAgICAuY29tbW9uIGNhbWxfc2F2ZWRfYnNw
IywgOCwgOAogICAgICAgICAuY29tbW9uIGNhbWxfc2F2ZWRfcm5hdCMsIDgsIDgKKyNpZmRlZiBf
X0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssLCVwcm9nYml0cworI2VuZGlmCisKLS0t
IG9jYW1sLTMuMDkuMy9hc21ydW4vbTY4ay5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAw
MDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9tNjhrLlMJMjAwNi0xMS0wMiAxODo1
MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTI0MiwzICsyNDIsNyBAQAogICAgICAgICAubG9uZyAg
IEwxMDcgICAgICAgICAgICB8IHJldHVybiBhZGRyZXNzIGludG8gY2FsbGJhY2sKICAgICAgICAg
LndvcmQgICAtMSAgICAgICAgICAgICAgfCBuZWdhdGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxs
YmFjayBsaW5rCiAgICAgICAgIC53b3JkICAgMCAgICAgICAgICAgICAgIHwgbm8gcm9vdHMgaGVy
ZQorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywsJXByb2diaXRzCisj
ZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1haXguUy5vbGQJMjAwNi0xMS0w
MiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vcG93ZXIt
YWl4LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTUxMSwzICs1MTEs
NyBAQAogICAgICAgICAuY3NlY3QgIGNhbWxfY2FsbGJhY2szX2V4bltEU10KIGNhbWxfY2FsbGJh
Y2szX2V4bjoKICAgICAgICAgLmxvbmcgICAuY2FtbF9jYWxsYmFjazNfZXhuLCBUT0NbdGMwXSwg
MAorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywsJXByb2diaXRzCisj
ZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1lbGYuUy5vbGQJMjAwNi0xMS0w
MiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vcG93ZXIt
ZWxmLlMJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTQxOSwzICs0MTks
NyBAQAogICAgICAgICAuc2hvcnQgIC0xICAgICAgICAgICAgICAvKiBuZWdhdGl2ZSBzaXplIGNv
dW50ID0+IHVzZSBjYWxsYmFjayBsaW5rICovCiAgICAgICAgIC5zaG9ydCAgMCAgICAgICAgICAg
ICAgIC8qIG5vIHJvb3RzIGhlcmUgKi8KIAorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3Rl
LkdOVS1zdGFjaywsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9w
b3dlci1yaGFwc29keS5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAor
Kysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1yaGFwc29keS5TCTIwMDYtMTEtMDIgMTg6NTM6
MTIuMDAwMDAwMDAwICswMTAwCkBAIC00MTQsMyArNDE0LDcgQEAKICAgICAgICAgLnNob3J0ICAt
MSAgICAgICAgICAgICAgLyogbmVnYXRpdmUgc2l6ZSBjb3VudCA9PiB1c2UgY2FsbGJhY2sgbGlu
ayAqLwogICAgICAgICAuc2hvcnQgIDAgICAgICAgICAgICAgICAvKiBubyByb290cyBoZXJlICov
CiAKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssLCVwcm9nYml0cwor
I2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vc3BhcmMuUy5vbGQJMjAwNi0xMS0wMiAx
ODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vc3BhcmMuUwky
MDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDA1LDMgKzQwNSw3IEBACiAg
ICAgICAgIC50eXBlIENhbWxfcmFpc2VfZXhjZXB0aW9uLCAjZnVuY3Rpb24KIAkudHlwZSBDYW1s
X3N5c3RlbV9fZnJhbWV0YWJsZSwgI29iamVjdAogI2VuZGlmCisjaWZkZWYgX19FTEZfXworLnNl
Y3Rpb24gLm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5
LjMvYXNtY29tcC9hcm0vZW1pdC5tbHAub2xkCTIwMDYtMTEtMDIgMTk6MDk6MjguMDAwMDAwMDAw
ICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9hcm0vZW1pdC5tbHAJMjAwNi0xMS0wMiAx
OTowOTo0MS4wMDAwMDAwMDAgKzAxMDAKQEAgLTY0Miw2ICs2NDIsMTIgQEAKICAgYAkuZGF0YVxu
YDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUgc3RhY2sgYXMgbm9uLWV4
ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBfX0VMRl9fXG5gOworICBg
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gOworICBgI2VuZGlmXG5g
CisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdp
bl9hc3NlbWJseSgpID0KQEAgLTY2MSw2ICs2NjcsNyBAQAogICBge2VtaXRfc3ltYm9sIGxibF9i
ZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkgPQorICBueF9zdGFjaygpOwogICBsZXQg
bGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29tZSAiY29kZV9lbmQiKSBpbgogICBg
CS50ZXh0XG5gOwogICBgCS5nbG9iYWwJe2VtaXRfc3ltYm9sIGxibF9lbmR9XG5gOwotLS0gb2Nh
bWwtMy4wOS4zL2FzbWNvbXAvaTM4Ni9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxNzozODowOC4w
MDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAJMjAw
Ni0xMS0wMiAxOTowNzoyMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTkxNCw2ICs5MTQsMTIgQEAKICAg
YAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUgc3RhY2sg
YXMgbm9uLWV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBfX0VMRl9f
XG5gOworICBgLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gOworICBg
I2VuZGlmXG5gCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAK
IGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTkyNyw2ICs5MzMsNyBAQAogICBge2VtaXRfc3lt
Ym9sIGxibF9iZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkoKSA9CisgIG54X3N0YWNrKCk7
CiAgIGxldCBsYmxfZW5kID0gQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2RlX2VuZCIp
IGluCiAgIGAJLnRleHRcbmA7CiAgIGAJLmdsb2JsCXtlbWl0X3N5bWJvbCBsYmxfZW5kfVxuYDsK
LS0tIG9jYW1sLTMuMDkuMy9hc21jb21wL2lhNjQvZW1pdC5tbHAub2xkCTIwMDYtMTEtMDIgMTk6
MTA6MTQuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0L2VtaXQu
bWxwCTIwMDYtMTEtMDIgMTk6MTA6MjUuMDAwMDAwMDAwICswMTAwCkBAIC0xMzA2LDYgKzEzMDYs
MTIgQEAKICAgYAkuYWxpZ24gOFxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNl
dCB0aGUgc3RhY2sgYXMgbm9uLWV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNp
ZmRlZiBfX0VMRl9fXG5gOworICBgLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2di
aXRzXG5gOworICBgI2VuZGlmXG5gCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJs
eSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTEzMTUsNiArMTMyMSw3IEBA
CiAgIGVtaXRfZGVmaW5lX3N5bWJvbCAoQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2Rl
X2JlZ2luIikpCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkgPQorICBueF9zdGFjaygpOwogICBgCS5k
YXRhXG5gOwogICBlbWl0X2RlZmluZV9zeW1ib2wgKENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29t
ZSAiZGF0YV9lbmQiKSk7CiAgIGAJLnRleHRcbmA7Ci0tLSBvY2FtbC0zLjA5LjMvYXNtY29tcC9o
cHBhL2VtaXQubWxwLm9sZAkyMDA2LTExLTAyIDE5OjA5OjUwLjAwMDAwMDAwMCArMDEwMAorKysg
b2NhbWwtMy4wOS4zL2FzbWNvbXAvaHBwYS9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjEwOjA0LjAw
MDAwMDAwMCArMDEwMApAQCAtOTk0LDYgKzk5NCwxMiBAQAogICBgCS5kYXRhXG5gOwogICBMaXN0
Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBhcyBub24tZXhlY3V0YWJsZSAq
KQorbGV0IG54X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7CisgIGAuc2VjdGlvbiAu
bm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZcbmAKKwogKCogQmVn
aW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5
KCkgPQpAQCAtMTAyMiw2ICsxMDI4LDcgQEAKIAogCiBsZXQgZW5kX2Fzc2VtYmx5KCkgPQorICBu
eF9zdGFjaygpOwogICBgCS5jb2RlXG5gOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtl
X3N5bWJvbCAoU29tZSAiY29kZV9lbmQiKSBpbgogICBkZWNsYXJlX2dsb2JhbCBsYmxfZW5kOwot
LS0gb2NhbWwtMy4wOS4zL2FzbWNvbXAvbWlwcy9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxOTox
MDozNi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL21pcHMvZW1pdC5t
bHAJMjAwNi0xMS0wMiAxOToxMDo0Ny4wMDAwMDAwMDAgKzAxMDAKQEAgLTU0Niw2ICs1NDYsMTIg
QEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUg
c3RhY2sgYXMgbm9uLWV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBf
X0VMRl9fXG5gOworICBgLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5g
OworICBgI2VuZGlmXG5gCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxl
ICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTU3NCw2ICs1ODAsNyBAQAogICBgCS5l
bmQJe2VtaXRfc3ltYm9sIGxibF9iZWdpbn1cbmAKIAogbGV0IGVuZF9hc3NlbWJseSAoKSA9Cisg
IG54X3N0YWNrKCk7CiAgIGxldCBsYmxfZW5kID0gQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21l
ICJjb2RlX2VuZCIpIGluCiAgIGAJLnRleHRcbmA7CiAgIGAJLmdsb2JsCXtlbWl0X3N5bWJvbCBs
YmxfZW5kfVxuYDsKLS0tIG9jYW1sLTMuMDkuMy9hc21jb21wL2FtZDY0L2VtaXQubWxwLm9sZAky
MDA2LTExLTAyIDE5OjA5OjA4LjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbWNv
bXAvYW1kNjQvZW1pdC5tbHAJMjAwNi0xMS0wMiAxOTowOToyMi4wMDAwMDAwMDAgKzAxMDAKQEAg
LTY1OCw2ICs2NTgsMTMgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBs
CiAKKworKCogU2V0IHRoZSBzdGFjayBhcyBub24tZXhlY3V0YWJsZSAqKQorbGV0IG54X3N0YWNr
KCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7CisgIGAuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ss
XCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZcbmAKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9m
IGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5KCkgPQpAQCAtNjcxLDYg
KzY3OCw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2JlZ2lufTpcbmAKIAogbGV0IGVuZF9hc3Nl
bWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0IGxibF9lbmQgPSBDb21waWxlbnYubWFrZV9z
eW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAgYAkudGV4dFxuYDsKICAgYAkuZ2xvYmwJe2Vt
aXRfc3ltYm9sIGxibF9lbmR9XG5gOwotLS0gb2NhbWwtMy4wOS4zL2FzbWNvbXAvYWxwaGEvZW1p
dC5tbHAub2xkCTIwMDYtMTEtMDIgMTk6MDg6MzUuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0z
LjA5LjMvYXNtY29tcC9hbHBoYS9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjA5OjAxLjAwMDAwMDAw
MCArMDEwMApAQCAtODExLDYgKzgxMSwxMyBAQAogICBgCS5kYXRhXG5gOwogICBMaXN0Lml0ZXIg
ZW1pdF9pdGVtIGwKIAorCisoKiBTZXQgdGhlIHN0YWNrIGFzIG5vbi1leGVjdXRhYmxlICopCits
ZXQgbnhfc3RhY2soKSA9CisgIGAjaWZkZWYgX19FTEZfX1xuYDsKKyAgYC5zZWN0aW9uIC5ub3Rl
LkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYDsKKyAgYCNlbmRpZlxuYAorCiAoKiBCZWdpbm5p
bmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9
CkBAIC04NDMsNiArODUwLDcgQEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBs
ZXQgZW5kX2Fzc2VtYmx5ICgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0IGxibF9lbmQgPSBDb21w
aWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAgYAkudGV4dFxuYDsKICAg
YAkuZ2xvYmwJe2VtaXRfc3ltYm9sIGxibF9lbmR9XG5gOwotLS0gb2NhbWwtMy4wOS4zL2FzbWNv
bXAvcG93ZXIvZW1pdC5tbHAub2xkCTIwMDYtMTEtMDIgMTk6MTA6NTQuMDAwMDAwMDAwICswMTAw
CisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9wb3dlci9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjEx
OjA4LjAwMDAwMDAwMCArMDEwMApAQCAtODc5LDYgKzg3OSwxMiBAQAogICBlbWl0X3N0cmluZyBk
YXRhX3NwYWNlOwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBh
cyBub24tZXhlY3V0YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19c
bmA7CisgIGAuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAj
ZW5kaWZcbmAKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAog
bGV0IGJlZ2luX2Fzc2VtYmx5KCkgPQpAQCAtODk4LDYgKzkwNCw3IEBACiAgIGB7ZW1pdF9zeW1i
b2wgbGJsX2JlZ2lufTpcbmAKIAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsK
ICAgKCogRW1pdCB0aGUganVtcCB0YWJsZSAqKQogICBpZiAhbnVtX2p1bXB0YmxfZW50cmllcyA+
IDAgdGhlbiBiZWdpbgogICAgIGVtaXRfc3RyaW5nIGNvZGVfc3BhY2U7Ci0tLSBvY2FtbC0zLjA5
LjMvYXNtY29tcC9zcGFyYy9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxOToxMToxMy4wMDAwMDAw
MDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL3NwYXJjL2VtaXQubWxwCTIwMDYtMTEt
MDIgMTk6MTE6MjQuMDAwMDAwMDAwICswMTAwCkBAIC03NDEsOSArNzQxLDE2IEBACiAgIGAJLmRh
dGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAogCisoKiBTZXQgdGhlIHN0YWNrIGFzIG5v
bi1leGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9CisgIGAjaWZkZWYgX19FTEZfX1xuYDsK
KyAgYC5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYDsKKyAgYCNlbmRp
ZlxuYAorCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAqKQogCiBsZXQg
YmVnaW5fYXNzZW1ibHkoKSA9CisgIG54X3N0YWNrKCk7CiAgIGxldCBsYmxfYmVnaW4gPSBDb21w
aWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImRhdGFfYmVnaW4iKSBpbgogICBgCS5kYXRhXG5gOwog
ICBgCS5nbG9iYWwJe2VtaXRfc3ltYm9sIGxibF9iZWdpbn1cbmA7Cg==
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101063</attachid>
            <date>2006-11-02 10:42 0000</date>
            <desc>Patch for all archs</desc>
            <filename>ocaml-3.09.3-nx-stack.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9jYW1sLTMuMDkuMy9NYWtlZmlsZS5vbGQJMjAwNi0xMS0wMiAxNzozNTowMi4wMDAwMDAw
MDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9NYWtlZmlsZQkyMDA2LTExLTAyIDE3OjMzOjA4LjAw
MDAwMDAwMCArMDEwMApAQCAtMzM0LDcgKzMzNCw3IEBACiAgICAgICAgICAgICAtZSAnc3wlJU1P
REVMJSV8JChNT0RFTCl8JyBcCiAgICAgICAgICAgICAtZSAnc3wlJVNZU1RFTSUlfCQoU1lTVEVN
KXwnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX09CSiUlfC5vfCcgXAotICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfQVNNJSV8LnN8JyBcCisgICAgICAgICAgICAtZSAnc3wlJUVYVF9BU00lJXwu
U3wnIFwKICAgICAgICAgICAgIC1lICdzfCUlRVhUX0xJQiUlfC5hfCcgXAogICAgICAgICAgICAg
LWUgJ3N8JSVFWFRfRExMJSV8LnNvfCcgXAogICAgICAgICAgICAgLWUgJ3N8JSVTWVNUSFJFQURf
U1VQUE9SVCUlfCQoU1lTVEhSRUFEX1NVUFBPUlQpfCcgXAotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1
bi9hbHBoYS5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2Nh
bWwtMy4wOS4zL2FzbXJ1bi9hbHBoYS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC00MzgsMyArNDM4LDcgQEAKICAgICAgICAgLndvcmQgICAtMSAgICAgICAgICAgICAg
LyogbmVnYXRpdmUgZnJhbWUgc2l6ZSA9PiB1c2UgY2FsbGJhY2sgbGluayAqLwogICAgICAgICAu
d29yZCAgIDAgICAgICAgICAgICAgICAvKiBubyByb290cyBoZXJlICovCiAgICAgICAgIC5hbGln
biAgMworI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywsJXByb2diaXRz
CisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9hbWQ2NC5TLm9sZAkyMDA2LTExLTAy
IDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9hbWQ2NC5T
CTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBAIC0zMzQsMyArMzM0LDcgQEAK
ICAgICAgICAgLmFsaWduICAxNgogY2FtbF9hYnNmX21hc2s6CiAJLnF1YWQJMHg3RkZGRkZGRkZG
RkZGRkZGLCAweEZGRkZGRkZGRkZGRkZGRkYKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90
ZS5HTlUtc3RhY2ssLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4v
YXJtLlMub2xkCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0z
LjA5LjMvYXNtcnVuL2FybS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBA
IC0zMzcsMyArMzM3LDcgQEAKICAgICAgICAgLnNob3J0ICAtMSAgICAgICAgICAgICAgLyogbmVn
YXRpdmUgZnJhbWUgc2l6ZSA9PiB1c2UgY2FsbGJhY2sgbGluayAqLwogICAgICAgICAuc2hvcnQg
IDAgICAgICAgICAgICAgICAvKiBubyByb290cyAqLwogICAgICAgICAuYWxpZ24gIDIKKyNpZmRl
ZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssLCVwcm9nYml0cworI2VuZGlmCisK
LS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vaHBwYS5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAw
MDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9ocHBhLlMJMjAwNi0xMS0wMiAx
ODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTUzMiwzICs1MzIsNyBAQAogICAgICAgICAubG9u
ZyAgIEwxMDQgKyAzICAgICAgICAvKiByZXR1cm4gYWRkcmVzcyBpbnRvIGNhbGxiYWNrICovCiAg
ICAgICAgIC5zaG9ydCAgLTEgICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4g
dXNlIGNhbGxiYWNrIGxpbmsgKi8KICAgICAgICAgLnNob3J0ICAwICAgICAgICAgICAgICAgLyog
bm8gcm9vdHMgKi8KKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssLCVw
cm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vaTM4Ni5TLm9sZAkyMDA2
LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9p
Mzg2LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTM3MSwzICszNzEs
NyBAQAogI2lmZGVmIF9fRUxGX18KIAkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2di
aXRzCiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssLCVw
cm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vaWE2NC5TLm9sZAkyMDA2
LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9p
YTY0LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTUyOCwzICs1Mjgs
NyBAQAogCiAgICAgICAgIC5jb21tb24gY2FtbF9zYXZlZF9ic3AjLCA4LCA4CiAgICAgICAgIC5j
b21tb24gY2FtbF9zYXZlZF9ybmF0IywgOCwgOAorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5u
b3RlLkdOVS1zdGFjaywsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1
bi9tNjhrLlMub2xkCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCisrKyBvY2Ft
bC0zLjA5LjMvYXNtcnVuL202OGsuUwkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEw
MApAQCAtMjQyLDMgKzI0Miw3IEBACiAgICAgICAgIC5sb25nICAgTDEwNyAgICAgICAgICAgIHwg
cmV0dXJuIGFkZHJlc3MgaW50byBjYWxsYmFjawogICAgICAgICAud29yZCAgIC0xICAgICAgICAg
ICAgICB8IG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4gdXNlIGNhbGxiYWNrIGxpbmsKICAgICAgICAg
LndvcmQgICAwICAgICAgICAgICAgICAgfCBubyByb290cyBoZXJlCisjaWZkZWYgX19FTEZfXwor
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0z
LjA5LjMvYXNtcnVuL3Bvd2VyLWFpeC5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAw
MCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1haXguUwkyMDA2LTExLTAyIDE4
OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNTExLDMgKzUxMSw3IEBACiAgICAgICAgIC5jc2Vj
dCAgY2FtbF9jYWxsYmFjazNfZXhuW0RTXQogY2FtbF9jYWxsYmFjazNfZXhuOgogICAgICAgICAu
bG9uZyAgIC5jYW1sX2NhbGxiYWNrM19leG4sIFRPQ1t0YzBdLCAwCisjaWZkZWYgX19FTEZfXwor
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0z
LjA5LjMvYXNtcnVuL3Bvd2VyLWVsZi5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAw
MCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1lbGYuUwkyMDA2LTExLTAyIDE4
OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDE5LDMgKzQxOSw3IEBACiAgICAgICAgIC5zaG9y
dCAgLTEgICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIHNpemUgY291bnQgPT4gdXNlIGNhbGxiYWNr
IGxpbmsgKi8KICAgICAgICAgLnNob3J0ICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMgaGVy
ZSAqLwogCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCwlcHJvZ2Jp
dHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL3Bvd2VyLXJoYXBzb2R5LlMub2xk
CTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNt
cnVuL3Bvd2VyLXJoYXBzb2R5LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAK
QEAgLTQxNCwzICs0MTQsNyBAQAogICAgICAgICAuc2hvcnQgIC0xICAgICAgICAgICAgICAvKiBu
ZWdhdGl2ZSBzaXplIGNvdW50ID0+IHVzZSBjYWxsYmFjayBsaW5rICovCiAgICAgICAgIC5zaG9y
dCAgMCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzIGhlcmUgKi8KIAorI2lmZGVmIF9fRUxGX18K
Ky5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwt
My4wOS4zL2FzbXJ1bi9zcGFyYy5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCAr
MDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9zcGFyYy5TCTIwMDYtMTEtMDIgMTg6NTM6MTIu
MDAwMDAwMDAwICswMTAwCkBAIC00MDUsMyArNDA1LDcgQEAKICAgICAgICAgLnR5cGUgQ2FtbF9y
YWlzZV9leGNlcHRpb24sICNmdW5jdGlvbgogCS50eXBlIENhbWxfc3lzdGVtX19mcmFtZXRhYmxl
LCAjb2JqZWN0CiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3Rh
Y2ssLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21jb21wL2FybS9lbWl0
Lm1scC5vbGQJMjAwNi0xMS0wMiAxOTowOToyOC4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMu
MDkuMy9hc21jb21wL2FybS9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjA5OjQxLjAwMDAwMDAwMCAr
MDEwMApAQCAtNjQyLDYgKzY0MiwxMiBAQAogICBgCS5kYXRhXG5gOwogICBMaXN0Lml0ZXIgZW1p
dF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBhcyBub24tZXhlY3V0YWJsZSAqKQorbGV0IG54
X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7CisgIGAuc2VjdGlvbiAubm90ZS5HTlUt
c3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZcbmAKKwogKCogQmVnaW5uaW5nIC8g
ZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5KCkgPQpAQCAt
NjYxLDYgKzY2Nyw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2JlZ2lufTpcbmAKIAogbGV0IGVu
ZF9hc3NlbWJseSAoKSA9CisgIG54X3N0YWNrKCk7CiAgIGxldCBsYmxfZW5kID0gQ29tcGlsZW52
Lm1ha2Vfc3ltYm9sIChTb21lICJjb2RlX2VuZCIpIGluCiAgIGAJLnRleHRcbmA7CiAgIGAJLmds
b2JhbAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1cbmA7Ci0tLSBvY2FtbC0zLjA5LjMvYXNtY29tcC9p
Mzg2L2VtaXQubWxwLm9sZAkyMDA2LTExLTAyIDE3OjM4OjA4LjAwMDAwMDAwMCArMDEwMAorKysg
b2NhbWwtMy4wOS4zL2FzbWNvbXAvaTM4Ni9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjA3OjIyLjAw
MDAwMDAwMCArMDEwMApAQCAtOTE0LDYgKzkxNCwxMiBAQAogICBgCS5kYXRhXG5gOwogICBMaXN0
Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBhcyBub24tZXhlY3V0YWJsZSAq
KQorbGV0IG54X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7CisgIGAuc2VjdGlvbiAu
bm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZcbmAKKwogKCogQmVn
aW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5
KCkgPQpAQCAtOTI3LDYgKzkzMyw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2JlZ2lufTpcbmAK
IAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0IGxibF9lbmQgPSBD
b21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAgYAkudGV4dFxuYDsK
ICAgYAkuZ2xvYmwJe2VtaXRfc3ltYm9sIGxibF9lbmR9XG5gOwotLS0gb2NhbWwtMy4wOS4zL2Fz
bWNvbXAvaWE2NC9lbWl0Lm1scC5vbGQJMjAwNi0xMS0wMiAxOToxMDoxNC4wMDAwMDAwMDAgKzAx
MDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2lhNjQvZW1pdC5tbHAJMjAwNi0xMS0wMiAxOTox
MDoyNS4wMDAwMDAwMDAgKzAxMDAKQEAgLTEzMDYsNiArMTMwNiwxMiBAQAogICBgCS5hbGlnbiA4
XG5gOwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBhcyBub24t
ZXhlY3V0YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7Cisg
IGAuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZc
bmAKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJl
Z2luX2Fzc2VtYmx5KCkgPQpAQCAtMTMxNSw2ICsxMzIxLDcgQEAKICAgZW1pdF9kZWZpbmVfc3lt
Ym9sIChDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfYmVnaW4iKSkKIAogbGV0IGVu
ZF9hc3NlbWJseSAoKSA9CisgIG54X3N0YWNrKCk7CiAgIGAJLmRhdGFcbmA7CiAgIGVtaXRfZGVm
aW5lX3N5bWJvbCAoQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJkYXRhX2VuZCIpKTsKICAg
YAkudGV4dFxuYDsKLS0tIG9jYW1sLTMuMDkuMy9hc21jb21wL2hwcGEvZW1pdC5tbHAub2xkCTIw
MDYtMTEtMDIgMTk6MDk6NTAuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29t
cC9ocHBhL2VtaXQubWxwCTIwMDYtMTEtMDIgMTk6MTA6MDQuMDAwMDAwMDAwICswMTAwCkBAIC05
OTQsNiArOTk0LDEyIEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAog
CisoKiBTZXQgdGhlIHN0YWNrIGFzIG5vbi1leGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9
CisgIGAjaWZkZWYgX19FTEZfX1xuYDsKKyAgYC5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwi
LCVwcm9nYml0c1xuYDsKKyAgYCNlbmRpZlxuYAorCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4g
YXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC0xMDIyLDYgKzEw
MjgsNyBAQAogCiAKIGxldCBlbmRfYXNzZW1ibHkoKSA9CisgIG54X3N0YWNrKCk7CiAgIGAJLmNv
ZGVcbmA7CiAgIGxldCBsYmxfZW5kID0gQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2Rl
X2VuZCIpIGluCiAgIGRlY2xhcmVfZ2xvYmFsIGxibF9lbmQ7Ci0tLSBvY2FtbC0zLjA5LjMvYXNt
Y29tcC9taXBzL2VtaXQubWxwLm9sZAkyMDA2LTExLTAyIDE5OjEwOjM2LjAwMDAwMDAwMCArMDEw
MAorKysgb2NhbWwtMy4wOS4zL2FzbWNvbXAvbWlwcy9lbWl0Lm1scAkyMDA2LTExLTAyIDE5OjEw
OjQ3LjAwMDAwMDAwMCArMDEwMApAQCAtNTQ2LDYgKzU0NiwxMiBAQAogICBgCS5kYXRhXG5gOwog
ICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogU2V0IHRoZSBzdGFjayBhcyBub24tZXhlY3V0
YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBgI2lmZGVmIF9fRUxGX19cbmA7CisgIGAuc2Vj
dGlvbiAubm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmA7CisgIGAjZW5kaWZcbmAKKwog
KCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fz
c2VtYmx5KCkgPQpAQCAtNTc0LDYgKzU4MCw3IEBACiAgIGAJLmVuZAl7ZW1pdF9zeW1ib2wgbGJs
X2JlZ2lufVxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5ICgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0
IGxibF9lbmQgPSBDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAg
YAkudGV4dFxuYDsKICAgYAkuZ2xvYmwJe2VtaXRfc3ltYm9sIGxibF9lbmR9XG5gOwotLS0gb2Nh
bWwtMy4wOS4zL2FzbWNvbXAvYW1kNjQvZW1pdC5tbHAub2xkCTIwMDYtMTEtMDIgMTk6MDk6MDgu
MDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scAky
MDA2LTExLTAyIDE5OjA5OjIyLjAwMDAwMDAwMCArMDEwMApAQCAtNjU4LDYgKzY1OCwxMyBAQAog
ICBgCS5kYXRhXG5gOwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorCisoKiBTZXQgdGhlIHN0
YWNrIGFzIG5vbi1leGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9CisgIGAjaWZkZWYgX19F
TEZfX1xuYDsKKyAgYC5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYDsK
KyAgYCNlbmRpZlxuYAorCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAq
KQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC02NzEsNiArNjc4LDcgQEAKICAgYHtlbWl0
X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5KCkgPQorICBueF9zdGFj
aygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29tZSAiY29kZV9l
bmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1c
bmA7Ci0tLSBvY2FtbC0zLjA5LjMvYXNtY29tcC9hbHBoYS9lbWl0Lm1scC5vbGQJMjAwNi0xMS0w
MiAxOTowODozNS4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2FscGhh
L2VtaXQubWxwCTIwMDYtMTEtMDIgMTk6MDk6MDEuMDAwMDAwMDAwICswMTAwCkBAIC04MTEsNiAr
ODExLDEzIEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAogCisKKygq
IFNldCB0aGUgc3RhY2sgYXMgbm9uLWV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAg
YCNpZmRlZiBfX0VMRl9fXG5gOworICBgLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXBy
b2diaXRzXG5gOworICBgI2VuZGlmXG5gCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3Nl
bWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTg0Myw2ICs4NTAsNyBA
QAogICBge2VtaXRfc3ltYm9sIGxibF9iZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkg
PQorICBueF9zdGFjaygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAo
U29tZSAiY29kZV9lbmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1i
b2wgbGJsX2VuZH1cbmA7Ci0tLSBvY2FtbC0zLjA5LjMvYXNtY29tcC9wb3dlci9lbWl0Lm1scC5v
bGQJMjAwNi0xMS0wMiAxOToxMDo1NC4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9h
c21jb21wL3Bvd2VyL2VtaXQubWxwCTIwMDYtMTEtMDIgMTk6MTE6MDguMDAwMDAwMDAwICswMTAw
CkBAIC04NzksNiArODc5LDEyIEBACiAgIGVtaXRfc3RyaW5nIGRhdGFfc3BhY2U7CiAgIExpc3Qu
aXRlciBlbWl0X2l0ZW0gbAogCisoKiBTZXQgdGhlIHN0YWNrIGFzIG5vbi1leGVjdXRhYmxlICop
CitsZXQgbnhfc3RhY2soKSA9CisgIGAjaWZkZWYgX19FTEZfX1xuYDsKKyAgYC5zZWN0aW9uIC5u
b3RlLkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYDsKKyAgYCNlbmRpZlxuYAorCiAoKiBCZWdp
bm5pbmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHko
KSA9CkBAIC04OTgsNiArOTA0LDcgQEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAog
CiBsZXQgZW5kX2Fzc2VtYmx5KCkgPQorICBueF9zdGFjaygpOwogICAoKiBFbWl0IHRoZSBqdW1w
IHRhYmxlICopCiAgIGlmICFudW1fanVtcHRibF9lbnRyaWVzID4gMCB0aGVuIGJlZ2luCiAgICAg
ZW1pdF9zdHJpbmcgY29kZV9zcGFjZTsKLS0tIG9jYW1sLTMuMDkuMy9hc21jb21wL3NwYXJjL2Vt
aXQubWxwLm9sZAkyMDA2LTExLTAyIDE5OjExOjEzLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwt
My4wOS4zL2FzbWNvbXAvc3BhcmMvZW1pdC5tbHAJMjAwNi0xMS0wMiAxOToxMToyNC4wMDAwMDAw
MDAgKzAxMDAKQEAgLTc0MSw5ICs3NDEsMTYgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVy
IGVtaXRfaXRlbSBsCiAKKygqIFNldCB0aGUgc3RhY2sgYXMgbm9uLWV4ZWN1dGFibGUgKikKK2xl
dCBueF9zdGFjaygpID0KKyAgYCNpZmRlZiBfX0VMRl9fXG5gOworICBgLnNlY3Rpb24gLm5vdGUu
R05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gOworICBgI2VuZGlmXG5gCisKICgqIEJlZ2lubmlu
ZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0K
KyAgbnhfc3RhY2soKTsKICAgbGV0IGxibF9iZWdpbiA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAo
U29tZSAiZGF0YV9iZWdpbiIpIGluCiAgIGAJLmRhdGFcbmA7CiAgIGAJLmdsb2JhbAl7ZW1pdF9z
eW1ib2wgbGJsX2JlZ2lufVxuYDsK
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101131</attachid>
            <date>2006-11-03 01:50 0000</date>
            <desc>Revised version of the patch</desc>
            <filename>prout</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUwkyMDA2LTExLTAy
IDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDM4LDMgKzQzOCw3IEBACiAgICAgICAgIC53
b3JkICAgLTEgICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4gdXNlIGNhbGxi
YWNrIGxpbmsgKi8KICAgICAgICAgLndvcmQgICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMg
aGVyZSAqLwogICAgICAgICAuYWxpZ24gIDMKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90
ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1
bi9hbWQ2NC5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2Nh
bWwtMy4wOS4zL2FzbXJ1bi9hbWQ2NC5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC0zMzQsMyArMzM0LDcgQEAKICAgICAgICAgLmFsaWduICAxNgogY2FtbF9hYnNmX21h
c2s6CiAJLnF1YWQJMHg3RkZGRkZGRkZGRkZGRkZGLCAweEZGRkZGRkZGRkZGRkZGRkYKKyNpZmRl
ZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYK
KwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9hcm0uUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vYXJtLlMJMjAwNi0xMS0wMiAx
ODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTMzNywzICszMzcsNyBAQAogICAgICAgICAuc2hv
cnQgIC0xICAgICAgICAgICAgICAvKiBuZWdhdGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxsYmFj
ayBsaW5rICovCiAgICAgICAgIC5zaG9ydCAgMCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzICov
CiAgICAgICAgIC5hbGlnbiAgMgorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1z
dGFjaywiIiwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL2hwcGEu
Uy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDku
My9hc21ydW4vaHBwYS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBAIC01
MzIsMyArNTMyLDcgQEAKICAgICAgICAgLmxvbmcgICBMMTA0ICsgMyAgICAgICAgLyogcmV0dXJu
IGFkZHJlc3MgaW50byBjYWxsYmFjayAqLwogICAgICAgICAuc2hvcnQgIC0xICAgICAgICAgICAg
ICAvKiBuZWdhdGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxsYmFjayBsaW5rICovCiAgICAgICAg
IC5zaG9ydCAgMCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzICovCisjaWZkZWYgX19FTEZfXwor
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIiLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1s
LTMuMDkuMy9hc21ydW4vaTM4Ni5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCAr
MDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9pMzg2LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKQEAgLTM3MSwzICszNzEsNyBAQAogI2lmZGVmIF9fRUxGX18KIAkuc2Vj
dGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9f
Cisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2Nh
bWwtMy4wOS4zL2FzbXJ1bi9pYTY0LlMub2xkCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAw
ICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtcnVuL2lhNjQuUwkyMDA2LTExLTAyIDE4OjUzOjEy
LjAwMDAwMDAwMCArMDEwMApAQCAtNTI4LDMgKzUyOCw3IEBACiAKICAgICAgICAgLmNvbW1vbiBj
YW1sX3NhdmVkX2JzcCMsIDgsIDgKICAgICAgICAgLmNvbW1vbiBjYW1sX3NhdmVkX3JuYXQjLCA4
LCA4CisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIiLCVwcm9nYml0
cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vbTY4ay5TLm9sZAkyMDA2LTExLTAy
IDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9tNjhrLlMJ
MjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTI0MiwzICsyNDIsNyBAQAog
ICAgICAgICAubG9uZyAgIEwxMDcgICAgICAgICAgICB8IHJldHVybiBhZGRyZXNzIGludG8gY2Fs
bGJhY2sKICAgICAgICAgLndvcmQgICAtMSAgICAgICAgICAgICAgfCBuZWdhdGl2ZSBmcmFtZSBz
aXplID0+IHVzZSBjYWxsYmFjayBsaW5rCiAgICAgICAgIC53b3JkICAgMCAgICAgICAgICAgICAg
IHwgbm8gcm9vdHMgaGVyZQorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1zdGFj
aywiIiwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL3Bvd2VyLWFp
eC5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4w
OS4zL2FzbXJ1bi9wb3dlci1haXguUwkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEw
MApAQCAtNTExLDMgKzUxMSw3IEBACiAgICAgICAgIC5jc2VjdCAgY2FtbF9jYWxsYmFjazNfZXhu
W0RTXQogY2FtbF9jYWxsYmFjazNfZXhuOgogICAgICAgICAubG9uZyAgIC5jYW1sX2NhbGxiYWNr
M19leG4sIFRPQ1t0YzBdLCAwCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0
YWNrLCIiLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vcG93ZXIt
ZWxmLlMub2xkCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0z
LjA5LjMvYXNtcnVuL3Bvd2VyLWVsZi5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC00MTksMyArNDE5LDcgQEAKICAgICAgICAgLnNob3J0ICAtMSAgICAgICAgICAgICAg
LyogbmVnYXRpdmUgc2l6ZSBjb3VudCA9PiB1c2UgY2FsbGJhY2sgbGluayAqLwogICAgICAgICAu
c2hvcnQgIDAgICAgICAgICAgICAgICAvKiBubyByb290cyBoZXJlICovCiAKKyNpZmRlZiBfX0VM
Rl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0g
b2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1yaGFwc29keS5TLm9sZAkyMDA2LTExLTAyIDE4OjUz
OjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9wb3dlci1yaGFwc29k
eS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBAIC00MTQsMyArNDE0LDcg
QEAKICAgICAgICAgLnNob3J0ICAtMSAgICAgICAgICAgICAgLyogbmVnYXRpdmUgc2l6ZSBjb3Vu
dCA9PiB1c2UgY2FsbGJhY2sgbGluayAqLwogICAgICAgICAuc2hvcnQgIDAgICAgICAgICAgICAg
ICAvKiBubyByb290cyBoZXJlICovCiAKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5H
TlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9z
cGFyYy5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwt
My4wOS4zL2FzbXJ1bi9zcGFyYy5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAw
CkBAIC00MDUsMyArNDA1LDcgQEAKICAgICAgICAgLnR5cGUgQ2FtbF9yYWlzZV9leGNlcHRpb24s
ICNmdW5jdGlvbgogCS50eXBlIENhbWxfc3lzdGVtX19mcmFtZXRhYmxlLCAjb2JqZWN0CiAjZW5k
aWYKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRz
CisjZW5kaWYKKwpkaWZmIC1ydSAuLi9yZWYvb2NhbWwtMy4wOS4zL2FzbWNvbXAvYWxwaGEvZW1p
dC5tbHAgb2NhbWwtMy4wOS4zL2FzbWNvbXAvYWxwaGEvZW1pdC5tbHAKLS0tIC4uL3JlZi9vY2Ft
bC0zLjA5LjMvYXNtY29tcC9hbHBoYS9lbWl0Lm1scAkyMDA2LTAzLTI5IDE2OjQ5OjE5LjAwMDAw
MDAwMCArMDIwMAorKysgb2NhbWwtMy4wOS4zL2FzbWNvbXAvYWxwaGEvZW1pdC5tbHAJMjAwNi0x
MS0wMyAxMDozNTo0MC4wMDAwMDAwMDAgKzAxMDAKQEAgLTgxMSw2ICs4MTEsMTIgQEAKICAgYAku
ZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIE1hcmsgc3RhY2sgYXMgbm9u
IGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgaWYgQ29uZmlnLnN5c3RlbSA9ICJs
aW51eF9lbGYiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwiLCVwcm9n
Yml0c1xuYAorCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAK
IGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTg0Myw2ICs4NDksNyBAQAogICBge2VtaXRfc3lt
Ym9sIGxibF9iZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkgPQorICBueF9zdGFjaygp
OwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29tZSAiY29kZV9lbmQi
KSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1cbmA7
CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scCBvY2Ft
bC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scAotLS0gLi4vcmVmL29jYW1sLTMuMDkuMy9h
c21jb21wL2FtZDY0L2VtaXQubWxwCTIwMDYtMDMtMjkgMTY6NDk6MTkuMDAwMDAwMDAwICswMjAw
CisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scAkyMDA2LTExLTAzIDEwOjM1
OjQ4LjAwMDAwMDAwMCArMDEwMApAQCAtNjU4LDYgKzY1OCwxMiBAQAogICBgCS5kYXRhXG5gOwog
ICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogTWFyayBzdGFjayBhcyBub24gZXhlY3V0YWJs
ZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBpZiBDb25maWcuc3lzdGVtID0gImxpbnV4X2VsZiIg
dGhlbgorICAgIGAJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gCisK
KwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2lu
X2Fzc2VtYmx5KCkgPQpAQCAtNjcxLDYgKzY3Nyw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2Jl
Z2lufTpcbmAKIAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0IGxi
bF9lbmQgPSBDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAgYAku
dGV4dFxuYDsKICAgYAkuZ2xvYmwJe2VtaXRfc3ltYm9sIGxibF9lbmR9XG5gOwpkaWZmIC1ydSAu
Li9yZWYvb2NhbWwtMy4wOS4zL2FzbWNvbXAvYXJtL2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21j
b21wL2FybS9lbWl0Lm1scAotLS0gLi4vcmVmL29jYW1sLTMuMDkuMy9hc21jb21wL2FybS9lbWl0
Lm1scAkyMDA0LTA1LTAzIDE0OjQ2OjUwLjAwMDAwMDAwMCArMDIwMAorKysgb2NhbWwtMy4wOS4z
L2FzbWNvbXAvYXJtL2VtaXQubWxwCTIwMDYtMTEtMDMgMTA6MzU6NTUuMDAwMDAwMDAwICswMTAw
CkBAIC02NDIsNiArNjQyLDEyIEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0
ZW0gbAogCisoKiBNYXJrIHN0YWNrIGFzIG5vbiBleGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2so
KSA9CisgIGlmIENvbmZpZy5zeXN0ZW0gPSAibGludXhfZWxmIiB0aGVuCisgICAgYAkuc2VjdGlv
biAubm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmAKKworCiAoKiBCZWdpbm5pbmcgLyBl
bmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC02
NjEsNiArNjY3LDcgQEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5k
X2Fzc2VtYmx5ICgpID0KKyAgbnhfc3RhY2soKTsKICAgbGV0IGxibF9lbmQgPSBDb21waWxlbnYu
bWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5kIikgaW4KICAgYAkudGV4dFxuYDsKICAgYAkuZ2xv
YmFsCXtlbWl0X3N5bWJvbCBsYmxfZW5kfVxuYDsKZGlmZiAtcnUgLi4vcmVmL29jYW1sLTMuMDku
My9hc21jb21wL2hwcGEvZW1pdC5tbHAgb2NhbWwtMy4wOS4zL2FzbWNvbXAvaHBwYS9lbWl0Lm1s
cAotLS0gLi4vcmVmL29jYW1sLTMuMDkuMy9hc21jb21wL2hwcGEvZW1pdC5tbHAJMjAwNi0wMy0y
OSAxNjo0OToxOS4wMDAwMDAwMDAgKzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2hwcGEv
ZW1pdC5tbHAJMjAwNi0xMS0wMyAxMDozNjowMy4wMDAwMDAwMDAgKzAxMDAKQEAgLTk5NCw2ICs5
OTQsMTIgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIE1h
cmsgc3RhY2sgYXMgbm9uIGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgaWYgQ29u
ZmlnLnN5c3RlbSA9ICJsaW51eF9lbGYiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdOVS1z
dGFjayxcIlwiLCVwcm9nYml0c1xuYAorCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3Nl
bWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTEwMjIsNiArMTAyOCw3
IEBACiAKIAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgYAkuY29kZVxu
YDsKICAgbGV0IGxibF9lbmQgPSBDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfZW5k
IikgaW4KICAgZGVjbGFyZV9nbG9iYWwgbGJsX2VuZDsKZGlmZiAtcnUgLi4vcmVmL29jYW1sLTMu
MDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAgb2NhbWwtMy4wOS4zL2FzbWNvbXAvaTM4Ni9lbWl0
Lm1scAotLS0gLi4vcmVmL29jYW1sLTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAJMjAwNi0w
My0yOSAxNjo0OToxOS4wMDAwMDAwMDAgKzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2kz
ODYvZW1pdC5tbHAJMjAwNi0xMS0wMyAxMDoyMTo0MS4wMDAwMDAwMDAgKzAxMDAKQEAgLTkxNCw2
ICs5MTQsMTEgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygq
IE1hcmsgc3RhY2sgYXMgbm9uIGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgaWYg
Q29uZmlnLnN5c3RlbSA9ICJsaW51eF9lbGYiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdO
VS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYAorCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4gYXNz
ZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC05MjcsNiArOTMyLDcg
QEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5KCkg
PQorICBueF9zdGFjaygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAo
U29tZSAiY29kZV9lbmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1i
b2wgbGJsX2VuZH1cbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0
L2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL2lhNjQvZW1pdC5tbHAKLS0tIC4uL3JlZi9v
Y2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0L2VtaXQubWxwCTIwMDQtMDctMTMgMTQ6MTg6NTMuMDAw
MDAwMDAwICswMjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0L2VtaXQubWxwCTIwMDYt
MTEtMDMgMTA6MzY6MTMuMDAwMDAwMDAwICswMTAwCkBAIC0xMzA2LDYgKzEzMDYsMTIgQEAKICAg
YAkuYWxpZ24gOFxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIE1hcmsgc3RhY2sg
YXMgbm9uIGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgaWYgQ29uZmlnLnN5c3Rl
bSA9ICJsaW51eF9lbGYiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwi
LCVwcm9nYml0c1xuYAorCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxl
ICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTEzMTUsNiArMTMyMSw3IEBACiAgIGVt
aXRfZGVmaW5lX3N5bWJvbCAoQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2RlX2JlZ2lu
IikpCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkgPQorICBueF9zdGFjaygpOwogICBgCS5kYXRhXG5g
OwogICBlbWl0X2RlZmluZV9zeW1ib2wgKENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29tZSAiZGF0
YV9lbmQiKSk7CiAgIGAJLnRleHRcbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNt
Y29tcC9taXBzL2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL21pcHMvZW1pdC5tbHAKLS0t
IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9taXBzL2VtaXQubWxwCTIwMDQtMDEtMDUgMjE6
MjU6NTYuMDAwMDAwMDAwICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9taXBzL2VtaXQu
bWxwCTIwMDYtMTEtMDMgMTA6MzY6MjIuMDAwMDAwMDAwICswMTAwCkBAIC01NDYsNiArNTQ2LDEy
IEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAogCisoKiBNYXJrIHN0
YWNrIGFzIG5vbiBleGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9CisgIGlmIENvbmZpZy5z
eXN0ZW0gPSAibGludXhfZWxmIiB0aGVuCisgICAgYAkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ss
XCJcIiwlcHJvZ2JpdHNcbmAKKworCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkg
ZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC01NzQsNiArNTgwLDcgQEAKICAg
YAkuZW5kCXtlbWl0X3N5bWJvbCBsYmxfYmVnaW59XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkg
PQorICBueF9zdGFjaygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAo
U29tZSAiY29kZV9lbmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1i
b2wgbGJsX2VuZH1cbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9wb3dl
ci9lbWl0Lm1scCBvY2FtbC0zLjA5LjMvYXNtY29tcC9wb3dlci9lbWl0Lm1scAotLS0gLi4vcmVm
L29jYW1sLTMuMDkuMy9hc21jb21wL3Bvd2VyL2VtaXQubWxwCTIwMDQtMDYtMTkgMTk6Mzk6MzQu
MDAwMDAwMDAwICswMjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9wb3dlci9lbWl0Lm1scAky
MDA2LTExLTAzIDEwOjM2OjI5LjAwMDAwMDAwMCArMDEwMApAQCAtODc5LDYgKzg3OSwxMiBAQAog
ICBlbWl0X3N0cmluZyBkYXRhX3NwYWNlOwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCog
TWFyayBzdGFjayBhcyBub24gZXhlY3V0YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBpZiBD
b25maWcuc3lzdGVtID0gImxpbnV4X2VsZiIgdGhlbgorICAgIGAJLnNlY3Rpb24gLm5vdGUuR05V
LXN0YWNrLFwiXCIsJXByb2diaXRzXG5gCisKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFz
c2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5KCkgPQpAQCAtODk4LDYgKzkwNCw3
IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2JlZ2lufTpcbmAKIAogbGV0IGVuZF9hc3NlbWJseSgp
ID0KKyAgbnhfc3RhY2soKTsKICAgKCogRW1pdCB0aGUganVtcCB0YWJsZSAqKQogICBpZiAhbnVt
X2p1bXB0YmxfZW50cmllcyA+IDAgdGhlbiBiZWdpbgogICAgIGVtaXRfc3RyaW5nIGNvZGVfc3Bh
Y2U7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9zcGFyYy9lbWl0Lm1scCBv
Y2FtbC0zLjA5LjMvYXNtY29tcC9zcGFyYy9lbWl0Lm1scAotLS0gLi4vcmVmL29jYW1sLTMuMDku
My9hc21jb21wL3NwYXJjL2VtaXQubWxwCTIwMDYtMDMtMjkgMTY6NDk6MTkuMDAwMDAwMDAwICsw
MjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9zcGFyYy9lbWl0Lm1scAkyMDA2LTExLTAzIDEw
OjM2OjM2LjAwMDAwMDAwMCArMDEwMApAQCAtNzQxLDYgKzc0MSwxMiBAQAogICBgCS5kYXRhXG5g
OwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogTWFyayBzdGFjayBhcyBub24gZXhlY3V0
YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBpZiBDb25maWcuc3lzdGVtID0gImxpbnV4X2Vs
ZiIgdGhlbgorICAgIGAJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5g
CisKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJl
Z2luX2Fzc2VtYmx5KCkgPQpAQCAtNzU0LDYgKzc2MCw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJs
X2JlZ2lufTpcbmAKIAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgYAku
dGV4dFxuYDsKICAgbGV0IGxibF9lbmQgPSBDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNv
ZGVfZW5kIikgaW4KICAgYAkuZ2xvYmFsCXtlbWl0X3N5bWJvbCBsYmxfZW5kfVxuYDsK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101142</attachid>
            <date>2006-11-03 07:45 0000</date>
            <desc>Patch sent upstream</desc>
            <filename>ocaml-3.09.3-nx-stack.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vYWxwaGEuUwkyMDA2LTExLTAy
IDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDM4LDMgKzQzOCw3IEBACiAgICAgICAgIC53
b3JkICAgLTEgICAgICAgICAgICAgIC8qIG5lZ2F0aXZlIGZyYW1lIHNpemUgPT4gdXNlIGNhbGxi
YWNrIGxpbmsgKi8KICAgICAgICAgLndvcmQgICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMg
aGVyZSAqLwogICAgICAgICAuYWxpZ24gIDMKKyNpZmRlZiBfX0VMRl9fCisuc2VjdGlvbiAubm90
ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1
bi9hbWQ2NC5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2Nh
bWwtMy4wOS4zL2FzbXJ1bi9hbWQ2NC5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICsw
MTAwCkBAIC0zMzQsMyArMzM0LDcgQEAKICAgICAgICAgLmFsaWduICAxNgogY2FtbF9hYnNmX21h
c2s6CiAJLnF1YWQJMHg3RkZGRkZGRkZGRkZGRkZGLCAweEZGRkZGRkZGRkZGRkZGRkYKKyNpZmRl
ZiBfX0VMRl9fCisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYK
KwotLS0gb2NhbWwtMy4wOS4zL2FzbXJ1bi9hcm0uUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vYXJtLlMJMjAwNi0xMS0wMiAx
ODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTMzNywzICszMzcsNyBAQAogICAgICAgICAuc2hv
cnQgIC0xICAgICAgICAgICAgICAvKiBuZWdhdGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxsYmFj
ayBsaW5rICovCiAgICAgICAgIC5zaG9ydCAgMCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzICov
CiAgICAgICAgIC5hbGlnbiAgMgorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1z
dGFjaywiIiwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL2hwcGEu
Uy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKKysrIG9jYW1sLTMuMDku
My9hc21ydW4vaHBwYS5TCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAwICswMTAwCkBAIC01
MzIsMyArNTMyLDcgQEAKICAgICAgICAgLmxvbmcgICBMMTA0ICsgMyAgICAgICAgLyogcmV0dXJu
IGFkZHJlc3MgaW50byBjYWxsYmFjayAqLwogICAgICAgICAuc2hvcnQgIC0xICAgICAgICAgICAg
ICAvKiBuZWdhdGl2ZSBmcmFtZSBzaXplID0+IHVzZSBjYWxsYmFjayBsaW5rICovCiAgICAgICAg
IC5zaG9ydCAgMCAgICAgICAgICAgICAgIC8qIG5vIHJvb3RzICovCisjaWZkZWYgX19FTEZfXwor
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIiLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9jYW1s
LTMuMDkuMy9hc21ydW4vaTM4Ni5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCAr
MDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9pMzg2LlMJMjAwNi0xMS0wMiAxODo1MzoxMi4w
MDAwMDAwMDAgKzAxMDAKQEAgLTM3MSwzICszNzEsNyBAQAogI2lmZGVmIF9fRUxGX18KIAkuc2Vj
dGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCiAjZW5kaWYKKyNpZmRlZiBfX0VMRl9f
Cisuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssIiIsJXByb2diaXRzCisjZW5kaWYKKwotLS0gb2Nh
bWwtMy4wOS4zL2FzbXJ1bi9pYTY0LlMub2xkCTIwMDYtMTEtMDIgMTg6NTM6MTIuMDAwMDAwMDAw
ICswMTAwCisrKyBvY2FtbC0zLjA5LjMvYXNtcnVuL2lhNjQuUwkyMDA2LTExLTAyIDE4OjUzOjEy
LjAwMDAwMDAwMCArMDEwMApAQCAtNTI4LDMgKzUyOCw3IEBACiAKICAgICAgICAgLmNvbW1vbiBj
YW1sX3NhdmVkX2JzcCMsIDgsIDgKICAgICAgICAgLmNvbW1vbiBjYW1sX3NhdmVkX3JuYXQjLCA4
LCA4CisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIiLCVwcm9nYml0
cworI2VuZGlmCisKLS0tIG9jYW1sLTMuMDkuMy9hc21ydW4vbTY4ay5TLm9sZAkyMDA2LTExLTAy
IDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4wOS4zL2FzbXJ1bi9tNjhrLlMJ
MjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTI0MiwzICsyNDIsNyBAQAog
ICAgICAgICAubG9uZyAgIEwxMDcgICAgICAgICAgICB8IHJldHVybiBhZGRyZXNzIGludG8gY2Fs
bGJhY2sKICAgICAgICAgLndvcmQgICAtMSAgICAgICAgICAgICAgfCBuZWdhdGl2ZSBmcmFtZSBz
aXplID0+IHVzZSBjYWxsYmFjayBsaW5rCiAgICAgICAgIC53b3JkICAgMCAgICAgICAgICAgICAg
IHwgbm8gcm9vdHMgaGVyZQorI2lmZGVmIF9fRUxGX18KKy5zZWN0aW9uIC5ub3RlLkdOVS1zdGFj
aywiIiwlcHJvZ2JpdHMKKyNlbmRpZgorCi0tLSBvY2FtbC0zLjA5LjMvYXNtcnVuL3Bvd2VyLWVs
Zi5TLm9sZAkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEwMAorKysgb2NhbWwtMy4w
OS4zL2FzbXJ1bi9wb3dlci1lbGYuUwkyMDA2LTExLTAyIDE4OjUzOjEyLjAwMDAwMDAwMCArMDEw
MApAQCAtNDE5LDMgKzQxOSw3IEBACiAgICAgICAgIC5zaG9ydCAgLTEgICAgICAgICAgICAgIC8q
IG5lZ2F0aXZlIHNpemUgY291bnQgPT4gdXNlIGNhbGxiYWNrIGxpbmsgKi8KICAgICAgICAgLnNo
b3J0ICAwICAgICAgICAgICAgICAgLyogbm8gcm9vdHMgaGVyZSAqLwogCisjaWZkZWYgX19FTEZf
XworLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCIiLCVwcm9nYml0cworI2VuZGlmCisKLS0tIG9j
YW1sLTMuMDkuMy9hc21ydW4vc3BhcmMuUy5vbGQJMjAwNi0xMS0wMiAxODo1MzoxMi4wMDAwMDAw
MDAgKzAxMDAKKysrIG9jYW1sLTMuMDkuMy9hc21ydW4vc3BhcmMuUwkyMDA2LTExLTAyIDE4OjUz
OjEyLjAwMDAwMDAwMCArMDEwMApAQCAtNDA1LDMgKzQwNSw3IEBACiAgICAgICAgIC50eXBlIENh
bWxfcmFpc2VfZXhjZXB0aW9uLCAjZnVuY3Rpb24KIAkudHlwZSBDYW1sX3N5c3RlbV9fZnJhbWV0
YWJsZSwgI29iamVjdAogI2VuZGlmCisjaWZkZWYgX19FTEZfXworLnNlY3Rpb24gLm5vdGUuR05V
LXN0YWNrLCIiLCVwcm9nYml0cworI2VuZGlmCisKZGlmZiAtcnUgLi4vcmVmL29jYW1sLTMuMDku
My9hc21jb21wL2FscGhhL2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL2FscGhhL2VtaXQu
bWxwCi0tLSAuLi9yZWYvb2NhbWwtMy4wOS4zL2FzbWNvbXAvYWxwaGEvZW1pdC5tbHAJMjAwNi0w
My0yOSAxNjo0OToxOS4wMDAwMDAwMDAgKzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL2Fs
cGhhL2VtaXQubWxwCTIwMDYtMTEtMDMgMTA6MzU6NDAuMDAwMDAwMDAwICswMTAwCkBAIC04MTEs
NiArODExLDEyIEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAogCiso
KiBNYXJrIHN0YWNrIGFzIG5vbiBleGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9CisgIGlm
IENvbmZpZy5zeXN0ZW0gPSAibGludXgiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdOVS1z
dGFjayxcIlwiLCVwcm9nYml0c1xuYAorCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3Nl
bWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTg0Myw2ICs4NDksNyBA
QAogICBge2VtaXRfc3ltYm9sIGxibF9iZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkgKCkg
PQorICBueF9zdGFjaygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAo
U29tZSAiY29kZV9lbmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1i
b2wgbGJsX2VuZH1cbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2
NC9lbWl0Lm1scCBvY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scAotLS0gLi4vcmVm
L29jYW1sLTMuMDkuMy9hc21jb21wL2FtZDY0L2VtaXQubWxwCTIwMDYtMDMtMjkgMTY6NDk6MTku
MDAwMDAwMDAwICswMjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9hbWQ2NC9lbWl0Lm1scAky
MDA2LTExLTAzIDEwOjM1OjQ4LjAwMDAwMDAwMCArMDEwMApAQCAtNjU4LDYgKzY1OCwxMiBAQAog
ICBgCS5kYXRhXG5gOwogICBMaXN0Lml0ZXIgZW1pdF9pdGVtIGwKIAorKCogTWFyayBzdGFjayBh
cyBub24gZXhlY3V0YWJsZSAqKQorbGV0IG54X3N0YWNrKCkgPQorICBpZiBDb25maWcuc3lzdGVt
ID0gImxpbnV4IiB0aGVuCisgICAgYAkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssXCJcIiwlcHJv
Z2JpdHNcbmAKKworCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4gYXNzZW1ibHkgZmlsZSAqKQog
CiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC02NzEsNiArNjc3LDcgQEAKICAgYHtlbWl0X3N5
bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5KCkgPQorICBueF9zdGFjaygp
OwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJvbCAoU29tZSAiY29kZV9lbmQi
KSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1cbmA7
CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9hcm0vZW1pdC5tbHAgb2NhbWwt
My4wOS4zL2FzbWNvbXAvYXJtL2VtaXQubWxwCi0tLSAuLi9yZWYvb2NhbWwtMy4wOS4zL2FzbWNv
bXAvYXJtL2VtaXQubWxwCTIwMDQtMDUtMDMgMTQ6NDY6NTAuMDAwMDAwMDAwICswMjAwCisrKyBv
Y2FtbC0zLjA5LjMvYXNtY29tcC9hcm0vZW1pdC5tbHAJMjAwNi0xMS0wMyAxMDozNTo1NS4wMDAw
MDAwMDAgKzAxMDAKQEAgLTY0Miw2ICs2NDIsMTIgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5p
dGVyIGVtaXRfaXRlbSBsCiAKKygqIE1hcmsgc3RhY2sgYXMgbm9uIGV4ZWN1dGFibGUgKikKK2xl
dCBueF9zdGFjaygpID0KKyAgaWYgQ29uZmlnLnN5c3RlbSA9ICJsaW51eCIgdGhlbgorICAgIGAJ
LnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIsJXByb2diaXRzXG5gCisKKwogKCogQmVnaW5u
aW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUgKikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5KCkg
PQpAQCAtNjYxLDYgKzY2Nyw3IEBACiAgIGB7ZW1pdF9zeW1ib2wgbGJsX2JlZ2lufTpcbmAKIAog
bGV0IGVuZF9hc3NlbWJseSAoKSA9CisgIG54X3N0YWNrKCk7CiAgIGxldCBsYmxfZW5kID0gQ29t
cGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2RlX2VuZCIpIGluCiAgIGAJLnRleHRcbmA7CiAg
IGAJLmdsb2JhbAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1cbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2Ft
bC0zLjA5LjMvYXNtY29tcC9ocHBhL2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL2hwcGEv
ZW1pdC5tbHAKLS0tIC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9ocHBhL2VtaXQubWxwCTIw
MDYtMDMtMjkgMTY6NDk6MTkuMDAwMDAwMDAwICswMjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29t
cC9ocHBhL2VtaXQubWxwCTIwMDYtMTEtMDMgMTA6MzY6MDMuMDAwMDAwMDAwICswMTAwCkBAIC05
OTQsNiArOTk0LDEyIEBACiAgIGAJLmRhdGFcbmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAog
CisoKiBNYXJrIHN0YWNrIGFzIG5vbiBleGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9Cisg
IGlmIENvbmZpZy5zeXN0ZW0gPSAibGludXgiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdO
VS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYAorCisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBh
c3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdpbl9hc3NlbWJseSgpID0KQEAgLTEwMjIsNiArMTAy
OCw3IEBACiAKIAogbGV0IGVuZF9hc3NlbWJseSgpID0KKyAgbnhfc3RhY2soKTsKICAgYAkuY29k
ZVxuYDsKICAgbGV0IGxibF9lbmQgPSBDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVf
ZW5kIikgaW4KICAgZGVjbGFyZV9nbG9iYWwgbGJsX2VuZDsKZGlmZiAtcnUgLi4vcmVmL29jYW1s
LTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAgb2NhbWwtMy4wOS4zL2FzbWNvbXAvaTM4Ni9l
bWl0Lm1scAotLS0gLi4vcmVmL29jYW1sLTMuMDkuMy9hc21jb21wL2kzODYvZW1pdC5tbHAJMjAw
Ni0wMy0yOSAxNjo0OToxOS4wMDAwMDAwMDAgKzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21w
L2kzODYvZW1pdC5tbHAJMjAwNi0xMS0wMyAxMDoyMTo0MS4wMDAwMDAwMDAgKzAxMDAKQEAgLTkx
NCw2ICs5MTQsMTEgQEAKICAgYAkuZGF0YVxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAK
KygqIE1hcmsgc3RhY2sgYXMgbm9uIGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAg
aWYgQ29uZmlnLnN5c3RlbSA9ICJsaW51eF9lbGYiIHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3Rl
LkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYAorCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4g
YXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC05MjcsNiArOTMy
LDcgQEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5
KCkgPQorICBueF9zdGFjaygpOwogICBsZXQgbGJsX2VuZCA9IENvbXBpbGVudi5tYWtlX3N5bWJv
bCAoU29tZSAiY29kZV9lbmQiKSBpbgogICBgCS50ZXh0XG5gOwogICBgCS5nbG9ibAl7ZW1pdF9z
eW1ib2wgbGJsX2VuZH1cbmA7CmRpZmYgLXJ1IC4uL3JlZi9vY2FtbC0zLjA5LjMvYXNtY29tcC9p
YTY0L2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL2lhNjQvZW1pdC5tbHAKLS0tIC4uL3Jl
Zi9vY2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0L2VtaXQubWxwCTIwMDQtMDctMTMgMTQ6MTg6NTMu
MDAwMDAwMDAwICswMjAwCisrKyBvY2FtbC0zLjA5LjMvYXNtY29tcC9pYTY0L2VtaXQubWxwCTIw
MDYtMTEtMDMgMTA6MzY6MTMuMDAwMDAwMDAwICswMTAwCkBAIC0xMzA2LDYgKzEzMDYsMTIgQEAK
ICAgYAkuYWxpZ24gOFxuYDsKICAgTGlzdC5pdGVyIGVtaXRfaXRlbSBsCiAKKygqIE1hcmsgc3Rh
Y2sgYXMgbm9uIGV4ZWN1dGFibGUgKikKK2xldCBueF9zdGFjaygpID0KKyAgaWYgQ29uZmlnLnN5
c3RlbSA9ICJsaW51eCIgdGhlbgorICAgIGAJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLFwiXCIs
JXByb2diaXRzXG5gCisKKwogKCogQmVnaW5uaW5nIC8gZW5kIG9mIGFuIGFzc2VtYmx5IGZpbGUg
KikKIAogbGV0IGJlZ2luX2Fzc2VtYmx5KCkgPQpAQCAtMTMxNSw2ICsxMzIxLDcgQEAKICAgZW1p
dF9kZWZpbmVfc3ltYm9sIChDb21waWxlbnYubWFrZV9zeW1ib2wgKFNvbWUgImNvZGVfYmVnaW4i
KSkKIAogbGV0IGVuZF9hc3NlbWJseSAoKSA9CisgIG54X3N0YWNrKCk7CiAgIGAJLmRhdGFcbmA7
CiAgIGVtaXRfZGVmaW5lX3N5bWJvbCAoQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJkYXRh
X2VuZCIpKTsKICAgYAkudGV4dFxuYDsKZGlmZiAtcnUgLi4vcmVmL29jYW1sLTMuMDkuMy9hc21j
b21wL3Bvd2VyL2VtaXQubWxwIG9jYW1sLTMuMDkuMy9hc21jb21wL3Bvd2VyL2VtaXQubWxwCi0t
LSAuLi9yZWYvb2NhbWwtMy4wOS4zL2FzbWNvbXAvcG93ZXIvZW1pdC5tbHAJMjAwNC0wNi0xOSAx
OTozOTozNC4wMDAwMDAwMDAgKzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL3Bvd2VyL2Vt
aXQubWxwCTIwMDYtMTEtMDMgMTA6MzY6MjkuMDAwMDAwMDAwICswMTAwCkBAIC04NzksNiArODc5
LDEyIEBACiAgIGVtaXRfc3RyaW5nIGRhdGFfc3BhY2U7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0g
bAogCisoKiBNYXJrIHN0YWNrIGFzIG5vbiBleGVjdXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9
CisgIGlmIENvbmZpZy5zeXN0ZW0gPSAiZWxmIiB0aGVuCisgICAgYAkuc2VjdGlvbiAubm90ZS5H
TlUtc3RhY2ssXCJcIiwlcHJvZ2JpdHNcbmAKKworCiAoKiBCZWdpbm5pbmcgLyBlbmQgb2YgYW4g
YXNzZW1ibHkgZmlsZSAqKQogCiBsZXQgYmVnaW5fYXNzZW1ibHkoKSA9CkBAIC04OTgsNiArOTA0
LDcgQEAKICAgYHtlbWl0X3N5bWJvbCBsYmxfYmVnaW59OlxuYAogCiBsZXQgZW5kX2Fzc2VtYmx5
KCkgPQorICBueF9zdGFjaygpOwogICAoKiBFbWl0IHRoZSBqdW1wIHRhYmxlICopCiAgIGlmICFu
dW1fanVtcHRibF9lbnRyaWVzID4gMCB0aGVuIGJlZ2luCiAgICAgZW1pdF9zdHJpbmcgY29kZV9z
cGFjZTsKZGlmZiAtcnUgLi4vcmVmL29jYW1sLTMuMDkuMy9hc21jb21wL3NwYXJjL2VtaXQubWxw
IG9jYW1sLTMuMDkuMy9hc21jb21wL3NwYXJjL2VtaXQubWxwCi0tLSAuLi9yZWYvb2NhbWwtMy4w
OS4zL2FzbWNvbXAvc3BhcmMvZW1pdC5tbHAJMjAwNi0wMy0yOSAxNjo0OToxOS4wMDAwMDAwMDAg
KzAyMDAKKysrIG9jYW1sLTMuMDkuMy9hc21jb21wL3NwYXJjL2VtaXQubWxwCTIwMDYtMTEtMDMg
MTA6MzY6MzYuMDAwMDAwMDAwICswMTAwCkBAIC03NDEsNiArNzQxLDEyIEBACiAgIGAJLmRhdGFc
bmA7CiAgIExpc3QuaXRlciBlbWl0X2l0ZW0gbAogCisoKiBNYXJrIHN0YWNrIGFzIG5vbiBleGVj
dXRhYmxlICopCitsZXQgbnhfc3RhY2soKSA9CisgIGlmIENvbmZpZy5zeXN0ZW0gPSAibGludXgi
IHRoZW4KKyAgICBgCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjayxcIlwiLCVwcm9nYml0c1xuYAor
CisKICgqIEJlZ2lubmluZyAvIGVuZCBvZiBhbiBhc3NlbWJseSBmaWxlICopCiAKIGxldCBiZWdp
bl9hc3NlbWJseSgpID0KQEAgLTc1NCw2ICs3NjAsNyBAQAogICBge2VtaXRfc3ltYm9sIGxibF9i
ZWdpbn06XG5gCiAKIGxldCBlbmRfYXNzZW1ibHkoKSA9CisgIG54X3N0YWNrKCk7CiAgIGAJLnRl
eHRcbmA7CiAgIGxldCBsYmxfZW5kID0gQ29tcGlsZW52Lm1ha2Vfc3ltYm9sIChTb21lICJjb2Rl
X2VuZCIpIGluCiAgIGAJLmdsb2JhbAl7ZW1pdF9zeW1ib2wgbGJsX2VuZH1cbmA7Cg==
</data>        

          </attachment>
    </bug>

</bugzilla>