<?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>29658</bug_id>
          
          <creation_ts>2003-09-26 03:35 0000</creation_ts>
          <short_desc>app-arch/zoo-2.10 fails with gcc 3.3.x</short_desc>
          <delta_ts>2003-10-02 02:24:14 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>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>r.oosterling@gmail.com</reporter>
          <assigned_to>gcc-porting@gentoo.org</assigned_to>
          <cc>brandy@gentoo.org</cc>
    
    <cc>mr_bones_@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>r.oosterling@gmail.com</who>
            <bug_when>2003-09-26 03:35:03 0000</bug_when>
            <thetext>Using gcc 3.3.1-r3
&gt;&gt;&gt; Source unpacked.
In file included from prterror.c:30:
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/varargs.h:4:2: #error &quot;GCC no
longer implements &lt;varargs.h&gt;.&quot;
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/varargs.h:5:2: #error &quot;Revise
your code to use &lt;stdarg.h&gt;.&quot;
prterror.c:123: error: syntax error before &quot;va_dcl&quot;
prterror.c:125: error: syntax error before &apos;{&apos; token
prterror.c:136: warning: parameter names (without types) in function declaration
prterror.c:136: warning: data definition has no type or storage class
prterror.c:137: error: `args&apos; undeclared here (not in a function)
prterror.c:137: error: syntax error before &quot;int&quot;
prterror.c:138: error: conflicting types for `format&apos;
prterror.c:130: error: previous declaration of `format&apos;
prterror.c:138: error: `args&apos; undeclared here (not in a function)
prterror.c:138: error: syntax error before &quot;char&quot;
prterror.c:141: error: conflicting types for `string&apos;
prterror.c:127: error: previous declaration of `string&apos;
prterror.c:141: warning: data definition has no type or storage class
prterror.c:146: error: syntax error before string constant
prterror.c:146: warning: data definition has no type or storage class
prterror.c:154: error: syntax error before string constant
prterror.c:154: warning: data definition has no type or storage class
prterror.c:157: error: syntax error before string constant
prterror.c:157: warning: data definition has no type or storage class
prterror.c:163: warning: parameter names (without types) in function declaration
prterror.c:163: warning: data definition has no type or storage class
prterror.c:169: error: syntax error before &quot;void&quot;
prterror.c:171: warning: parameter names (without types) in function declaration
prterror.c:171: warning: data definition has no type or storage class
prterror.c:173: error: syntax error before &quot;if&quot;
distcc[13033] ERROR: compile on localhost failed
make[1]: *** [prterror.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [linux] Error 2

!!! ERROR: app-arch/zoo-2.10 failed.
!!! Function src_compile, Line 20, Exitcode 2
!!! (no error message)


Reproducible: Always
Steps to Reproduce:
1.
2.
3.




Portage 2.0.49-r6 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r1, 2.4.22)
=================================================================
System uname: 2.4.22 i686 AMD Athlon(tm) XP 2000+
distcc 2.11 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.2 [enabled]
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CFLAGS=&quot;-march=athlon-xp -mmmx -m3dnow -msse -mfpmath=sse,387 -O3 -pipe
-fomit-frame-pointer -funroll-loops -fforce-addr -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
COMPILER=&quot;gcc3&quot;
CONFIG_PROTECT=&quot;/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config
/usr/share/config&quot;
CONFIG_PROTECT_MASK=&quot;/etc/gconf /etc/env.d&quot;
CXXFLAGS=&quot;-march=athlon-xp -mmmx -m3dnow -msse -mfpmath=sse,387 -O3 -pipe
-fomit-frame-pointer -funroll-loops -fforce-addr -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4&quot;
DISTDIR=&quot;/home/portage/distfiles&quot;
FEATURES=&quot;autoaddcvs ccache prelink packages distcc sandbox buildpkg&quot;
GENTOO_MIRRORS=&quot;ftp://gentoo.mirrors.pair.com/ http://gentoo.mirrors.pair.com/
ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo&quot;
MAKEOPTS=&quot;-s -j3&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
PORTDIR_OVERLAY=&quot;/home/apps/ebuilds&quot;
SYNC=&quot;rsync://rsync.gentoo.org/gentoo-portage&quot;
USE=&quot;x86 oss apm avi crypt encode foomaticdb gif jpeg libg++ mad mikmod mmx mpeg
ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib directfb
gtkhtml alsa gdbm berkdb slang readline arts bonobo svga tcltk java guile X sdl
gpm tcpd pam libwww ssl perl python esd imlib oggvorbis gnome gtk qt kde motif
opengl mozilla gphoto2 cdr scanner cups jikes mozsvg exif pic sse&quot;

http://forums.gentoo.org/viewtopic.php?t=86209</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>r.oosterling@gmail.com</who>
            <bug_when>2003-09-26 05:06:33 0000</bug_when>
            <thetext>same thing happens with minimal optimisations in make.conf.
same thing with gcc 3.2.3</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>brandy@gentoo.org</who>
            <bug_when>2003-09-26 05:40:37 0000</bug_when>
            <thetext>Created an attachment (id=18360)
proposed zoo-2.10-gentoo patch

This patch extends and includes the currently used zoo-2.10pl1 patch.
It allows zoo to compile with both gcc-3.3.1 and gcc-3.2.3</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>r.oosterling@gmail.com</who>
            <bug_when>2003-09-26 08:04:16 0000</bug_when>
            <thetext>Thanks Brandy, the patch can be applied succesfully (= without errors), but
the compilation still fails:
&gt;&gt;&gt; Source unpacked.
In file included from prterror.c:30:
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/varargs.h:4:2: #error &quot;GCC
no longer implements &lt;varargs.                                          
           h&gt;.&quot;
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/include/varargs.h:5:2: #error &quot;Revise
your code to use &lt;stdarg.h&gt;                                             
        .&quot;
distcc[24785] ERROR: compile on rob1 failed
make[1]: *** [prterror.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [linux] Error 2

!!! ERROR: app-arch/zoo-2.10 failed.
!!! Function src_compile, Line 20, Exitcode 2
!!! (no error message)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>brandy@gentoo.org</who>
            <bug_when>2003-09-27 20:05:32 0000</bug_when>
            <thetext>AlterEgo, are you sure the new patch is being applied instead of the
old zoo-2.10pl1 patch?

After the patch has been applied, prterror.c contains the following
lines around line 30:

	26	# include &lt;stdarg.h&gt;
	27
	28	#ifdef NEED_VPRINTF
	29	static int zvfprintf();
	30	#endif
	31
	32	/* General error handler.  Input format:

There certainly isn&apos;t an #include statement on line 30.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>r.oosterling@gmail.com</who>
            <bug_when>2003-09-28 02:07:57 0000</bug_when>
            <thetext>I must have goofed somewhere patching the first time :-)
It&apos;s working nicely now.
Thanks again Brandy.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kumba@gentoo.org</who>
            <bug_when>2003-10-02 02:24:14 0000</bug_when>
            <thetext>Resolving as FIXED.  The gcc-3.3 patch has been added to CVS, and the older
zoo-2.10pl1 patch has been removed.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18360</attachid>
            <date>2003-09-26 05:40 0000</date>
            <desc>proposed zoo-2.10-gentoo patch</desc>
            <filename>zoo-2.10-gentoo.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXIgem9vL2FyLmggem9vLWdlbnRvby9hci5oCi0tLSB6b28vYXIuaAkyMDAzLTA5LTI2
IDIzOjUxOjIyLjAwMDAwMDAwMCArMTIwMAorKysgem9vLWdlbnRvby9hci5oCTIwMDMtMDktMjYg
MjM6NTg6NDMuMDAwMDAwMDAwICsxMjAwCkBAIC0xNSwxMSArMTUsOSBAQAogLyogdWNoYXIgc2hv
dWxkIGJlIDggYml0cyBvciBtb3JlICovCiAvKiB0eXBlZGVmIHVuc2lnbmVkIGNoYXIgIHVjaGFy
OyAgIC0tIGFscmVhZHkgaW4gem9vLmggKi8KIAotdHlwZWRlZiB1bnNpZ25lZCBpbnQgICB1aW50
OyAgICAvKiAxNiBiaXRzIG9yIG1vcmUgKi8KLSNpZiAhZGVmaW5lZChfXzM4NkJTRF9fKSB8fCAh
ZGVmaW5lZChfVFlQRVNfSF8pCi10eXBlZGVmIHVuc2lnbmVkIHNob3J0IHVzaG9ydDsgIC8qIDE2
IGJpdHMgb3IgbW9yZSAqLwotI2VuZGlmCi10eXBlZGVmIHVuc2lnbmVkIGxvbmcgIHVsb25nOyAg
IC8qIDMyIGJpdHMgb3IgbW9yZSAqLwordHlwZWRlZiB1bnNpZ25lZCBpbnQgICBteV91aW50OyAg
ICAvKiAxNiBiaXRzIG9yIG1vcmUgKi8KK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgbXlfdXNob3J0
OyAgLyogMTYgYml0cyBvciBtb3JlICovCit0eXBlZGVmIHVuc2lnbmVkIGxvbmcgIG15X3Vsb25n
OyAgIC8qIDMyIGJpdHMgb3IgbW9yZSAqLwogCiAvKiBUX1VJTlQxNiBtdXN0IGJlICNkZWZpbmVk
IGluIG9wdGlvbnMuaCB0byBiZSAKIGEgMTYtYml0IHVuc2lnbmVkIGludGVnZXIgdHlwZSAqLwpA
QCAtNDksNyArNDcsNyBAQAogLyogYXIuYyAqLwogCiBleHRlcm4gaW50IHVucGFja2FibGU7Ci1l
eHRlcm4gdWxvbmcgb3JpZ3NpemUsIGNvbXBzaXplOworZXh0ZXJuIG15X3Vsb25nIG9yaWdzaXpl
LCBjb21wc2l6ZTsKIAogLyogYWxsIHRoZSBwcm90b3R5cGVzIGZvbGxvdyBoZXJlIGZvciBhbGwg
ZmlsZXMgKi8KIApAQCAtNzgsNyArNzYsNyBAQAogCiAvKiBERUNPREUuQyAqLwogdm9pZCBkZWNv
ZGVfc3RhcnQgUEFSTVMoKHZvaWQgKSk7Ci1pbnQgZGVjb2RlIFBBUk1TKCh1aW50IGNvdW50ICwg
dWNoYXIgKmJ1ZmZlcikpOworaW50IGRlY29kZSBQQVJNUygodWludCBjb3VudCAsIHVjaGFyIGJ1
ZmZlciBbXSkpOwogCiAvKiBFTkNPREUuQyAqLwogdm9pZCBlbmNvZGUgUEFSTVMoKEZJTEUgKiwg
RklMRSAqKSk7CkBAIC04NywxNCArODUsMTQgQEAKIHZvaWQgb3V0cHV0IFBBUk1TKCh1aW50IGMg
LCB1aW50IHAgKSk7CiB2b2lkIGh1Zl9lbmNvZGVfc3RhcnQgUEFSTVMoKHZvaWQgKSk7CiB2b2lk
IGh1Zl9lbmNvZGVfZW5kIFBBUk1TKCh2b2lkICkpOwotdWludCBkZWNvZGVfYyBQQVJNUygodm9p
ZCApKTsKLXVpbnQgZGVjb2RlX3AgUEFSTVMoKHZvaWQgKSk7CitteV91aW50IGRlY29kZV9jIFBB
Uk1TKCh2b2lkICkpOworbXlfdWludCBkZWNvZGVfcCBQQVJNUygodm9pZCApKTsKIHZvaWQgaHVm
X2RlY29kZV9zdGFydCBQQVJNUygodm9pZCApKTsKIAogLyogSU8uQyAqLwogdm9pZCBtYWtlX2Ny
Y3RhYmxlIFBBUk1TKCh2b2lkICkpOwogdm9pZCBmaWxsYnVmIFBBUk1TKChpbnQgbiApKTsKLXVp
bnQgZ2V0Yml0cyBQQVJNUygoaW50IG4gKSk7CitteV91aW50IGdldGJpdHMgUEFSTVMoKGludCBu
ICkpOwogdm9pZCBwdXRiaXRzIFBBUk1TKChpbnQgbiAsIHVpbnQgeCApKTsKIGludCBmcmVhZF9j
cmMgUEFSTVMoKHVjaGFyICpwICwgaW50IG4gLCBGSUxFICpmICkpOwogdm9pZCBmd3JpdGVfY3Jj
IFBBUk1TKCh1Y2hhciAqcCAsIGludCBuICwgRklMRSAqZiApKTsKZGlmZiAtdXIgem9vL2Jhc2Vu
YW1lLmMgem9vLWdlbnRvby9iYXNlbmFtZS5jCi0tLSB6b28vYmFzZW5hbWUuYwkyMDAzLTA5LTI2
IDIzOjUxOjIyLjAwMDAwMDAwMCArMTIwMAorKysgem9vLWdlbnRvby9iYXNlbmFtZS5jCTIwMDMt
MDktMjYgMjM6NTk6MTIuMDAwMDAwMDAwICsxMjAwCkBAIC0xOCw3ICsxOCw3IEBACiAKIC8qIFRo
aXMgZnVuY3Rpb24gc3RyaXBzIGRldmljZS9kaXJlY3RvcnkgaW5mb3JtYXRpb24gZnJvbQogYSBw
YXRobmFtZSBhbmQgcmV0dXJucyBqdXN0IHRoZSBwbGFpbiBmaWxlbmFtZSAqLwotdm9pZCBiYXNl
bmFtZSAocGF0aG5hbWUsIGZuYW1lKQordm9pZCBteWJhc2VuYW1lIChwYXRobmFtZSwgZm5hbWUp
CiBjaGFyICpwYXRobmFtZTsKIGNoYXIgZm5hbWVbXTsKIHsKZGlmZiAtdXIgem9vL2JzZC5jIHpv
by1nZW50b28vYnNkLmMKLS0tIHpvby9ic2QuYwkyMDAzLTA5LTI2IDIzOjUxOjIyLjAwMDAwMDAw
MCArMTIwMAorKysgem9vLWdlbnRvby9ic2QuYwkyMDAzLTA5LTI3IDAwOjAwOjQ0LjAwMDAwMDAw
MCArMTIwMApAQCAtNzQsMjYgKzc0LDE0IEBACiAjZGVmaW5lIFNFQ19JTl9EQVkJKDI0TCAqIDYw
TCAqIDYwTCkKICNkZWZpbmUgSU5WX1ZBTFVFCQkoU0VDX0lOX0RBWSArIDFMKQogCXN0YXRpYyBs
b25nIHJldHZhbCA9IElOVl9WQUxVRTsJICAgICAvKiBjYWNoZSwgaW5pdCB0byBpbXBvc3NpYmxl
IHZhbHVlICovCi0jaWZuZGVmIF9fMzg2QlNEX18KICAgIHN0cnVjdCB0aW1ldmFsIHRwOwogICAg
c3RydWN0IHRpbWV6b25lIHR6cDsKLSNlbHNlCi0gICB0aW1lX3QgbHQ7Ci0gICBzdHJ1Y3QgdG0g
KnRtOwotI2VuZGlmCiAJaWYgKHJldHZhbCAhPSBJTlZfVkFMVUUpCQkJCSAvKiBpZiBoYXZlIGNh
Y2hlZCB2YWx1ZSwgcmV0dXJuIGl0ICovCiAJCXJldHVybiByZXR2YWw7Ci0jaWZuZGVmIF9fMzg2
QlNEX18KICAgIGdldHRpbWVvZmRheSAoJnRwLCAmdHpwKTsgICAgICAgICAgICAgIC8qIHNwZWNp
ZmljIHRvIDQuM0JTRCAqLwogICAgLyogcmV0dXJuICh0enAudHpfbWludXRlc3dlc3QgKiA2MCk7
ICovIC8qIG9sZCBpbmNvcnJlY3QgY29kZSAqLwogCS8qIFRpbWV6b25lIGZpeCB0aGFua3MgdG8g
QmlsbCBEYXZpZHNlbiA8d2VkdUBnZS1jcmQuQVJQQT4gKi8KLQkvKiAhISAtIGFjaGVAaHEuZGVt
b3Muc3UgKi8KLQlyZXR2YWwgPSB0enAudHpfbWludXRlc3dlc3QgKiA2MCAtICh0enAudHpfZHN0
dGltZSAhPSAwKSAqIDM2MDBMOwotI2Vsc2UKLQl0aW1lKCZsdCk7Ci0JdG0gPSBsb2NhbHRpbWUo
Jmx0KTsKLQlyZXR2YWwgPSAtdG0tPnRtX2dtdG9mZjsKLSNlbmRpZgorCXJldHZhbCA9IHR6cC50
el9taW51dGVzd2VzdCAqIDYwIC0gdHpwLnR6X2RzdHRpbWUgKiAzNjAwTDsKIAlyZXR1cm4gcmV0
dmFsOwogfQogCmRpZmYgLXVyIHpvby9kZWNvZGUuYyB6b28tZ2VudG9vL2RlY29kZS5jCi0tLSB6
b28vZGVjb2RlLmMJMjAwMy0wOS0yNiAyMzo1MToyMi4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1n
ZW50b28vZGVjb2RlLmMJMjAwMy0wOS0yNyAwMDowMjoxOC4wMDAwMDAwMDAgKzEyMDAKQEAgLTI3
LDggKzI3LDggQEAKICovCiAKIGludCBkZWNvZGUoY291bnQsIGJ1ZmZlcikKLXVpbnQgY291bnQ7
Ci11Y2hhciAqYnVmZmVyOworbXlfdWludCBjb3VudDsKK3VjaGFyIGJ1ZmZlcltdOwogCS8qIFRo
ZSBjYWxsaW5nIGZ1bmN0aW9uIG11c3Qga2VlcCB0aGUgbnVtYmVyIG9mCiAJICAgYnl0ZXMgdG8g
YmUgcHJvY2Vzc2VkLiAgVGhpcyBmdW5jdGlvbiBkZWNvZGVzCiAJICAgZWl0aGVyICdjb3VudCcg
Ynl0ZXMgb3IgJ0RJQ1NJWicgYnl0ZXMsIHdoaWNoZXZlcgpAQCAtMzcsOCArMzcsOCBAQAogCSAg
IENhbGwgZGVjb2RlX3N0YXJ0KCkgb25jZSBmb3IgZWFjaCBuZXcgZmlsZQogCSAgIGJlZm9yZSBj
YWxsaW5nIHRoaXMgZnVuY3Rpb24uICovCiB7Ci0Jc3RhdGljIHVpbnQgaTsKLQl1aW50IHIsIGM7
CisJc3RhdGljIG15X3VpbnQgaTsKKwlteV91aW50IHIsIGM7CiAKIAlyID0gMDsKIAl3aGlsZSAo
LS1qID49IDApIHsKZGlmZiAtdXIgem9vL2VuY29kZS5jIHpvby1nZW50b28vZW5jb2RlLmMKLS0t
IHpvby9lbmNvZGUuYwkyMDAzLTA5LTI2IDIzOjUxOjIyLjAwMDAwMDAwMCArMTIwMAorKysgem9v
LWdlbnRvby9lbmNvZGUuYwkyMDAzLTA5LTI3IDAwOjAyOjU2LjAwMDAwMDAwMCArMTIwMApAQCAt
NSwxMSArNSw2IEBACiBBZGFwdGVkIGZyb20gImFyIiBhcmNoaXZlciB3cml0dGVuIGJ5IEhhcnVo
aWtvIE9rdW11cmEuCiAqLwogCi0jaWZkZWYgQU5TSV9IRFJTCi0jIGluY2x1ZGUgPHN0ZGxpYi5o
PgotIyBpbmNsdWRlIDxzdHJpbmcuaD4KLSNlbmRpZgotCiAjaW5jbHVkZSAib3B0aW9ucy5oIgog
I2luY2x1ZGUgInpvby5oIgogI2luY2x1ZGUgImFyLmgiCkBAIC0yMCw2ICsxNSwxMSBAQAogCiAj
aW5jbHVkZSA8YXNzZXJ0Lmg+CiAKKyNpZmRlZiBBTlNJX0hEUlMKKyMgaW5jbHVkZSA8c3RkbGli
Lmg+CisjIGluY2x1ZGUgPHN0cmluZy5oPgorI2VuZGlmCisKICNpbmNsdWRlICJlcnJvcnMuaSIK
IAogRklMRSAqbHpoX2luZmlsZTsKZGlmZiAtdXIgem9vL2h1Zi5jIHpvby1nZW50b28vaHVmLmMK
LS0tIHpvby9odWYuYwkyMDAzLTA5LTI2IDIzOjUxOjIyLjAwMDAwMDAwMCArMTIwMAorKysgem9v
LWdlbnRvby9odWYuYwkyMDAzLTA5LTI3IDAwOjAzOjIwLjAwMDAwMDAwMCArMTIwMApAQCAtNSwx
MCArNSw2IEBACiAKIEFkYXB0ZWQgZnJvbSAiYXIiIGFyY2hpdmVyIHdyaXR0ZW4gYnkgSGFydWhp
a28gT2t1bXVyYS4KICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLwotI2lmZGVmIEFOU0lfSERSUwotIyBpbmNsdWRlIDxzdGRsaWIuaD4K
LSNlbmRpZgotCiAjaW5jbHVkZSAib3B0aW9ucy5oIgogI2luY2x1ZGUgInpvby5oIgogI2luY2x1
ZGUgImFyLmgiCkBAIC0xNyw2ICsxMywxMCBAQAogCiBleHRlcm4gdm9pZCBwcnRlcnJvcigpOwog
CisjaWZkZWYgQU5TSV9IRFJTCisjIGluY2x1ZGUgPHN0ZGxpYi5oPgorI2VuZGlmCisKICNkZWZp
bmUgTlAgKERJQ0JJVCArIDEpCiAjZGVmaW5lIE5UIChDT0RFX0JJVCArIDMpCiAjZGVmaW5lIFBC
SVQgNCAgLyogc21hbGxlc3QgaW50ZWdlciBzdWNoIHRoYXQgKDFVIDw8IFBCSVQpID4gTlAgKi8K
ZGlmZiAtdXIgem9vL2x6ZC5jIHpvby1nZW50b28vbHpkLmMKLS0tIHpvby9semQuYwkyMDAzLTA5
LTI2IDIzOjUxOjIyLjAwMDAwMDAwMCArMTIwMAorKysgem9vLWdlbnRvby9semQuYwkyMDAzLTA5
LTI3IDAwOjAzOjU0LjAwMDAwMDAwMCArMTIwMApAQCAtNTksNyArNTksNyBAQAogZXh0ZXJuIHVu
c2lnbmVkIGludCBmaWx0X2x6ZF93b3JkOwogI2VuZGlmIC8qIEZJTFRFUiAqLwogCi12b2lkIHh3
cl9kY2hhciBQQVJNUyAoKGludCkpOwordm9pZCB4d3JfZGNoYXIgUEFSTVMgKChjaGFyKSk7CiBz
dGF0aWMgaW50IGZpcnN0Y2hhciBQQVJNUyAoKGludCkpOwogc3RhdGljIHZvaWQgY2JmaWxsIFBB
Uk1TICgodm9pZCkpOwogCmRpZmYgLXVyIHpvby9semguYyB6b28tZ2VudG9vL2x6aC5jCi0tLSB6
b28vbHpoLmMJMjAwMy0wOS0yNiAyMzo1MToyMi4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1nZW50
b28vbHpoLmMJMjAwMy0wOS0yNyAwMDowNDo1Ni4wMDAwMDAwMDAgKzEyMDAKQEAgLTQ1LDE0ICs0
NSwxNCBAQAogCiAJZGVjb2RlX3N0YXJ0KCk7CiAJd2hpbGUgKCFkZWNvZGVkKSB7Ci0JCW4gPSBk
ZWNvZGUoKHVpbnQpIERJQ1NJWiwgKHVjaGFyICopb3V0X2J1Zl9hZHIpOyAvKiBuID0gY291bnQg
b2YgY2hhcnMgZGVjb2RlZCAqLworCQluID0gZGVjb2RlKChteV91aW50KSBESUNTSVosIG91dF9i
dWZfYWRyKTsgLyogbiA9IGNvdW50IG9mIGNoYXJzIGRlY29kZWQgKi8KICNpZmRlZiBDT1VOVF9C
WVRFUwogCQlieXRlc19kZWNvZGVkICs9IG47CS8qZGVidWcqLwogI2VuZGlmCiAjaWZkZWYgQ0hF
Q0tfQlJFQUsKIAkJY2hlY2tfYnJlYWsoKTsKICNlbmRpZgotCQlmd3JpdGVfY3JjKCh1Y2hhciAq
KW91dF9idWZfYWRyLCBuLCBvdXRmaWxlKTsKKwkJZndyaXRlX2NyYyhvdXRfYnVmX2Fkciwgbiwg
b3V0ZmlsZSk7CiAjaWZkZWYgU0hPV19ET1RTCiAJCSh2b2lkKSBwdXRjKCcuJywgc3RkZXJyKTsK
IAkJKHZvaWQpIGZmbHVzaChzdGRlcnIpOwpkaWZmIC11ciB6b28vbHpoLmggem9vLWdlbnRvby9s
emguaAotLS0gem9vL2x6aC5oCTIwMDMtMDktMjYgMjM6NTE6MjIuMDAwMDAwMDAwICsxMjAwCisr
KyB6b28tZ2VudG9vL2x6aC5oCTIwMDMtMDktMjcgMDA6MDU6MjEuMDAwMDAwMDAwICsxMjAwCkBA
IC0zNCw0ICszNCw0IEBACiAjZGVmaW5lIENCSVQgOSAgLyogJFxsZmxvb3IgXGxvZ18yIE5DIFxy
Zmxvb3IgKyAxJCAqLwogI2RlZmluZSBDT0RFX0JJVCAgMTYgIC8qIGNvZGV3b3JkIGxlbmd0aCAq
LwogCi1leHRlcm4gdXNob3J0IGxlZnRbXSwgcmlnaHRbXTsKK2V4dGVybiBteV91c2hvcnQgbGVm
dFtdLCByaWdodFtdOwpkaWZmIC11ciB6b28vbWFrZWZpbGUgem9vLWdlbnRvby9tYWtlZmlsZQot
LS0gem9vL21ha2VmaWxlCTIwMDMtMDktMjYgMjM6NTE6MjMuMDAwMDAwMDAwICsxMjAwCisrKyB6
b28tZ2VudG9vL21ha2VmaWxlCTIwMDMtMDktMjcgMDA6MDY6NTQuMDAwMDAwMDAwICsxMjAwCkBA
IC0xOCwxMyArMTgsMTMgQEAKIAogTUFLRSA9IG1ha2UJICAgICAgIyBuZWVkZWQgZm9yIHNvbWUg
c3lzdGVtcyBlLmcuIG9sZGVyIEJTRAogCi1DQyA9IGNjCitDQyA9IGdjYwogQ0ZMQUdTID0KIE1P
REVMID0KIEVYVFJBID0gLURCSUdfTUVNIC1ETkRFQlVHCiBMSU5URkxBR1MgPSAtRExJTlQKLU9Q
VElNID0gLU8KLURFU1RESVIgPSAvdXNyL2xvY2FsL2JpbgorT1BUSU0gPSAtTzMKK0RFU1RESVIg
PSAvdXNyL2JpbgogCiAjTGlzdCBvZiBhbGwgb2JqZWN0IGZpbGVzIGNyZWF0ZWQgZm9yIFpvbwog
Wk9PT0JKUyA9IGFkZGJmY3JjLm8gYWRkZm5hbWUubyBiYXNlbmFtZS5vIGNvbW1lbnQubyBjcmNk
ZWZzLm8gXApAQCAtNTAsNiArNTAsNyBAQAogCUBlY2hvICJnZW5lcmljOiAgICAgIGdlbmVyaWMg
KipJWCBlbnZpcm9ubWVudCwgbWluaW1hbCBmdW5jdGlvbmxpdHkiCiAJQGVjaG8gImJzZDogICAg
ICAgICAgNC4zQlNEIG9yIHJlYXNvbmFibGUgZXF1aXZhbGVudCIKIAlAZWNobyAiYnNkYW5zaTog
ICAgICA0LjNCU0Qgd2l0aCBBTlNJIEMiCisJQGVjaG8gImxpbnV4OgkgICAgIExpbnV4IGZvciBB
bHBoYSAmIGkzODYiCiAJQGVjaG8gInVsdHJpeDogICAgICAgVUxUUklYIDQuMSIKIAlAZWNobyAi
Y29udmV4OiAgICAgICBDb252ZXggQzIwMCBzZXJpZXMiCiAJQGVjaG8gInN5c3Y6ICAgICAgICAg
U3lzdGVtIFYgUmVsZWFzZSAyIG9yIDM7IG9yIFNDTyBYZW5peCIKQEAgLTEwNiw2ICsxMDcsMTAg
QEAKIGNvbnZleDoKIAkkKE1BS0UpIENGTEFHUz0iLWMgJChPUFRJTSkgLURCU0Q0XzMgLURBTlNJ
X0hEUlMiICQoVEFSR0VUUykKIAorIyBMaW51eAorbGludXg6CisJJChNQUtFKSBDRkxBR1M9Ii1j
ICQoT1BUSU0pIC1EU1lTX1YgLURBTlNJX0hEUlMgLURIQVZFX01LRElSIiAkKFRBUkdFVFMpCisK
ICMgU3lzVi4yLCBWLjMsIFNDTyBYZW5peAogc3lzdjoKIAkkKE1BS0UpIENGTEFHUz0iLWMgJChP
UFRJTSkgLURTWVNfViIgJChUQVJHRVRTKQpAQCAtMjM1LDcgKzI0MCw3IEBACiBwYXJzZS5vOiB6
b29mbnMuaCB6b29pby5oCiBwb3J0YWJsZS5vOiAvdXNyL2luY2x1ZGUvc3RkaW8uaCBhc3NlcnQu
aCBkZWJ1Zy5oIG1hY2hpbmUuaCBvcHRpb25zLmgKIHBvcnRhYmxlLm86IHBvcnRhYmxlLmggdmFy
aW91cy5oIHpvby5oIHpvb2Zucy5oIHpvb2lvLmgKLXBydGVycm9yLm86IC91c3IvaW5jbHVkZS9z
dGRpby5oIC91c3IvaW5jbHVkZS92YXJhcmdzLmggb3B0aW9ucy5oIHZhcmlvdXMuaAorcHJ0ZXJy
b3IubzogL3Vzci9pbmNsdWRlL3N0ZGlvLmggb3B0aW9ucy5oIHZhcmlvdXMuaAogcHJ0ZXJyb3Iu
bzogem9vZm5zLmggem9vaW8uaAogc3lzdi5vOiAvdXNyL2luY2x1ZGUvc3lzL3N0YXQuaCAvdXNy
L2luY2x1ZGUvc3lzL3R5cGVzLmggL3Vzci9pbmNsdWRlL3RpbWUuaAogc3lzdi5vOiBuaXhtb2Rl
Lmkgbml4dGltZS5pCmRpZmYgLXVyIHpvby9tYWtldGJsLmMgem9vLWdlbnRvby9tYWtldGJsLmMK
LS0tIHpvby9tYWtldGJsLmMJMjAwMy0wOS0yNiAyMzo1MToyMy4wMDAwMDAwMDAgKzEyMDAKKysr
IHpvby1nZW50b28vbWFrZXRibC5jCTIwMDMtMDktMjcgMDA6Mjc6MTUuMDAwMDAwMDAwICsxMjAw
CkBAIC0xNiwxMCArMTYsMTAgQEAKIGludCBuY2hhcjsKIHVjaGFyIGJpdGxlbltdOwogaW50IHRh
YmxlYml0czsKLXVzaG9ydCB0YWJsZVtdOworbXlfdXNob3J0IHRhYmxlW107CiB7Ci0JdXNob3J0
IGNvdW50WzE3XSwgd2VpZ2h0WzE3XSwgc3RhcnRbMThdLCAqcDsKLQl1aW50IGksIGssIGxlbiwg
Y2gsIGp1dGJpdHMsIGF2YWlsLCBuZXh0Y29kZSwgbWFzazsKKwlteV91c2hvcnQgY291bnRbMTdd
LCB3ZWlnaHRbMTddLCBzdGFydFsxOF0sICpwOworCW15X3VpbnQgaSwgaywgbGVuLCBjaCwganV0
Yml0cywgYXZhaWwsIG5leHRjb2RlLCBtYXNrOwogCiAJZm9yIChpID0gMTsgaSA8PSAxNjsgaSsr
KSBjb3VudFtpXSA9IDA7CiAJZm9yIChpID0gMDsgaSA8IG5jaGFyOyBpKyspIGNvdW50W2JpdGxl
bltpXV0rKzsKQEAgLTI3LDcgKzI3LDcgQEAKIAlzdGFydFsxXSA9IDA7CiAJZm9yIChpID0gMTsg
aSA8PSAxNjsgaSsrKQogCQlzdGFydFtpICsgMV0gPSBzdGFydFtpXSArIChjb3VudFtpXSA8PCAo
MTYgLSBpKSk7Ci0JaWYgKHN0YXJ0WzE3XSAhPSAodXNob3J0KSgodW5zaWduZWQpIDEgPDwgMTYp
KQorCWlmIChzdGFydFsxN10gIT0gKG15X3VzaG9ydCkoKHVuc2lnbmVkKSAxIDw8IDE2KSkKIAkJ
cHJ0ZXJyb3IoJ2YnLCAiQmFkIGRlY29kZSB0YWJsZVxuIik7CiAKIAlqdXRiaXRzID0gMTYgLSB0
YWJsZWJpdHM7CkBAIC00MSw3ICs0MSw3IEBACiAgICAgICAgIH0KIAogCWkgPSBzdGFydFt0YWJs
ZWJpdHMgKyAxXSA+PiBqdXRiaXRzOwotCWlmIChpICE9ICh1c2hvcnQpKCh1bnNpZ25lZCkgMSA8
PCAxNikpIHsKKwlpZiAoaSAhPSAobXlfdXNob3J0KSgodW5zaWduZWQpIDEgPDwgMTYpKSB7CiAJ
CWsgPSAxIDw8IHRhYmxlYml0czsKIAkJd2hpbGUgKGkgIT0gaykgdGFibGVbaSsrXSA9IDA7CiAJ
fQpkaWZmIC11ciB6b28vbWFrZXRyZWUuYyB6b28tZ2VudG9vL21ha2V0cmVlLmMKLS0tIHpvby9t
YWtldHJlZS5jCTIwMDMtMDktMjYgMjM6NTE6MjMuMDAwMDAwMDAwICsxMjAwCisrKyB6b28tZ2Vu
dG9vL21ha2V0cmVlLmMJMjAwMy0wOS0yNyAwMDowOTowNi4wMDAwMDAwMDAgKzEyMDAKQEAgLTEy
LDcgKzEyLDcgQEAKIAogc3RhdGljIGludCAgICBuLCBoZWFwc2l6ZTsKIHN0YXRpYyBzaG9ydCAg
aGVhcFtOQyArIDFdOwotc3RhdGljIHVzaG9ydCAqZnJlcSwgKnNvcnRwdHIsIGxlbl9jbnRbMTdd
Oworc3RhdGljIG15X3VzaG9ydCAqZnJlcSwgKnNvcnRwdHIsIGxlbl9jbnRbMTddOwogc3RhdGlj
IHVjaGFyICAqbGVuOwogCiBzdGF0aWMgdm9pZCBjb3VudF9sZW4oaSkgIC8qIGNhbGwgd2l0aCBp
ID0gcm9vdCAqLwpAQCAtMzMsNyArMzMsNyBAQAogaW50IHJvb3Q7CiB7CiAJaW50IGksIGs7Ci0J
dWludCBjdW07CisJbXlfdWludCBjdW07CiAKIAlmb3IgKGkgPSAwOyBpIDw9IDE2OyBpKyspIGxl
bl9jbnRbaV0gPSAwOwogCWNvdW50X2xlbihyb290KTsKQEAgLTc1LDEwICs3NSwxMCBAQAogc3Rh
dGljIHZvaWQgbWFrZV9jb2RlKGosIGxlbmd0aCwgY29kZSkKIGludCBqOwogdWNoYXIgbGVuZ3Ro
W107Ci11c2hvcnQgY29kZVtdOworbXlfdXNob3J0IGNvZGVbXTsKIHsKIAlpbnQgICAgaTsKLQl1
c2hvcnQgc3RhcnRbMThdOworCW15X3VzaG9ydCBzdGFydFsxOF07CiAKIAlzdGFydFsxXSA9IDA7
CiAJZm9yIChpID0gMTsgaSA8PSAxNjsgaSsrKQpAQCAtODgsOSArODgsOSBAQAogCiBpbnQgbWFr
ZV90cmVlKG5wYXJtLCBmcmVxcGFybSwgbGVucGFybSwgY29kZXBhcm0pCiBpbnQgbnBhcm07Ci11
c2hvcnQgZnJlcXBhcm1bXTsKK215X3VzaG9ydCBmcmVxcGFybVtdOwogdWNoYXIgbGVucGFybVtd
OwotdXNob3J0IGNvZGVwYXJtW107CitteV91c2hvcnQgY29kZXBhcm1bXTsKIAkvKiBtYWtlIHRy
ZWUsIGNhbGN1bGF0ZSBsZW5bXSwgcmV0dXJuIHJvb3QgKi8KIHsKIAlpbnQgaSwgaiwgaywgYXZh
aWw7CmRpZmYgLXVyIHpvby9vcHRpb25zLmggem9vLWdlbnRvby9vcHRpb25zLmgKLS0tIHpvby9v
cHRpb25zLmgJMjAwMy0wOS0yNiAyMzo1MToyMy4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1nZW50
b28vb3B0aW9ucy5oCTIwMDMtMDktMjcgMDA6MTI6MDcuMDAwMDAwMDAwICsxMjAwCkBAIC0zMSw3
ICszMSw3IEBACiAjZGVmaW5lIEdFVFRaCiAjZGVmaW5lIEZBVFRSCiAjZGVmaW5lIFRfU0lHTkFM
CXZvaWQKLSNkZWZpbmUgVkFSQVJHUworI2RlZmluZSBTVERBUkcKICNkZWZpbmUgTkVFRF9NRU1N
T1ZFCiAvKiAjZGVmaW5lIE5FRURfTUVNQ1BZICovCiAjZGVmaW5lIFRfVUlOVDE2CQl1bnNpZ25l
ZCBzaG9ydAkJLyogbXVzdCBiZSAxNiBiaXQgdW5zaWduZWQgKi8KQEAgLTczLDYgKzczLDcgQEAK
IC8qICNkZWZpbmUgVU5CVUZfTElNSVQJNTEyICovCiAjZGVmaW5lICBUX1NJR05BTCB2b2lkCiAj
ZGVmaW5lIERJUkVDVF9DT05WRVJUCisjZGVmaW5lIFNUREFSRwogI2RlZmluZSBDSEVDS19CUkVB
SwogI2RlZmluZSBjaGVja19icmVhayBrYmhpdAogI2RlZmluZSBIQVZFX0lTQVRUWQpAQCAtODgs
NiArODksNyBAQAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLwogCiAjaWZkZWYgQlNENF8zCisjZGVmaW5lIE5P
U1RSQ0hSIC8qIG5vdCByZWFsbHkgbmVlZGVkIGZvciA0LjNCU0QgKi8KICNkZWZpbmUgRklMVEVS
CiAjZGVmaW5lIElPX01BQ1JPUwogI2RlZmluZSBFWElTVFMoZikJCShhY2Nlc3MoZiwgMDApID09
IDApCkBAIC0xMDEsMjMgKzEwMywxMiBAQAogI2RlZmluZSBTRVRCVUYKICNkZWZpbmUgR0VUVFoK
ICNkZWZpbmUgRkFUVFIKLSNpZmRlZiBfX1NURENfXwotI2lmbmRlZiBBTlNJX0hEUlMKLSNkZWZp
bmUgQU5TSV9IRFJTCi0jZW5kaWYKLSNkZWZpbmUgVF9TSUdOQUwgICAgICAgIHZvaWQKLSNkZWZp
bmUgU1REQVJHCi0jZGVmaW5lIEFOU0lfUFJPVE8KLSNkZWZpbmUgVk9JRFBUUgkJdm9pZCAqCi0j
ZWxzZQotI2RlZmluZSBOT1NUUkNIUiAvKiBub3QgcmVhbGx5IG5lZWRlZCBmb3IgNC4zQlNEICov
CiAjZGVmaW5lIFRfU0lHTkFMCWludAogI2RlZmluZSBWQVJBUkdTCiAjZGVmaW5lIE5FRURfTUVN
TU9WRQotI2RlZmluZSBORUVEX1ZQUklOVEYJCS8qIG9sZGVyIEJTRHMgb25seTsgbmV3ZXIgb25l
cyBoYXZlIHZwcmludGYgKi8KLSNlbmRpZgogI2RlZmluZSBUX1VJTlQxNgkJdW5zaWduZWQgc2hv
cnQJCS8qIG11c3QgYmUgMTYgYml0IHVuc2lnbmVkICovCiAjZGVmaW5lIEhBVkVfSVNBVFRZCisj
ZGVmaW5lIE5FRURfVlBSSU5URgkJLyogb2xkZXIgQlNEcyBvbmx5OyBuZXdlciBvbmVzIGhhdmUg
dnByaW50ZiAqLwogI2VuZGlmIC8qIEJTRDRfMyAqLwogCiAvKiAgVWx0cml4IDQuMSAqLwpkaWZm
IC11ciB6b28vcHJ0ZXJyb3IuYyB6b28tZ2VudG9vL3BydGVycm9yLmMKLS0tIHpvby9wcnRlcnJv
ci5jCTIwMDMtMDktMjYgMjM6NTE6MjMuMDAwMDAwMDAwICsxMjAwCisrKyB6b28tZ2VudG9vL3By
dGVycm9yLmMJMjAwMy0wOS0yNyAwMDoyNjoxNS4wMDAwMDAwMDAgKzEyMDAKQEAgLTIzLDE1ICsy
Myw3IEBACiAjIGluY2x1ZGUgPGN0eXBlLmg+CS8qIGZvciBpc2RpZ2l0KCkgKi8KICNlbmRpZgog
Ci0jaWZkZWYgU1REQVJHCiAjIGluY2x1ZGUgPHN0ZGFyZy5oPgotI2Vsc2UKLSMgaWZkZWYgVkFS
QVJHUwotIyAgaW5jbHVkZSA8dmFyYXJncy5oPgotIyBlbHNlCi0jICBpbmNsdWRlICJNVVNUIERF
RklORSBTVERBUkcgT1IgVkFSQVJHUyIKLSMgZW5kaWYKLSNlbmRpZgogCiAjaWZkZWYgTkVFRF9W
UFJJTlRGCiBzdGF0aWMgaW50IHp2ZnByaW50ZigpOwpAQCAtMTE1LDI5ICsxMDcsMTEgQEAKIGNo
YXIgY291bGRfbm90X29wZW5bXSA9ICJDb3VsZCBub3Qgb3BlbiAlcy5cbiI7CiAjZW5kaWYKIAot
I2lmZGVmIFNUREFSRwotdm9pZCBwcnRlcnJvcihpbnQgbGV2ZWwsIGNoYXIgKmZvcm1hdCwgLi4u
KQotI2Vsc2UKLS8qVkFSQVJHUyovCi12b2lkIHBydGVycm9yKHZhX2FsaXN0KQotdmFfZGNsCi0j
ZW5kaWYKK3ZvaWQgcHJ0ZXJyb3IobGV2ZWwsIGZvcm1hdCwgYSwgYiwgYywgZCkKK3JlZ2lzdGVy
IGludCBsZXZlbDsKK2NoYXIgKmZvcm1hdCwgKmEsICpiLCAqYywgKmQ7CiB7Ci0JdmFfbGlzdCBh
cmdzOwogICAgY2hhciBzdHJpbmdbMTIwXTsgICAgICAgLyogbG9jYWwgZm9ybWF0IHN0cmluZyAq
LwotI2lmZGVmIFZBUkFSR1MKLQlpbnQgbGV2ZWw7Ci0JY2hhciAqZm9ybWF0OwotI2VuZGlmCi0K
LSNpZmRlZiBTVERBUkcKLQl2YV9zdGFydChhcmdzLCBmb3JtYXQpOwotI2Vsc2UKLQl2YV9zdGFy
dChhcmdzKTsKLQlsZXZlbCA9IHZhX2FyZyhhcmdzLCBpbnQpOwotCWZvcm1hdCA9IHZhX2FyZyhh
cmdzLCBjaGFyICopOwotI2VuZGlmCi0KICAgICpzdHJpbmcgPSAnXDAnOyAgICAgICAgIC8qIGdl
dCBhIG51bGwgc3RyaW5nIHRvIGJlZ2luIHdpdGggKi8KIAogI2lmZGVmIE9PWgpAQCAtMTQ5LDcg
KzEyMyw3IEBACiAgICBzd2l0Y2ggKGxldmVsKSB7CiAgICAgICBjYXNlICdNJzogKnN0cmluZyA9
ICdcMCc7ICAgICAgICAgICAgICAgICAgICAvKiBmYWxsIHRocm91Z2ggdG8gJ20nICovCiAgICAg
ICBjYXNlICdtJzogaWYgKHF1aWV0KSByZXR1cm47IGJyZWFrOwotICAgICAgY2FzZSAndyc6IAor
ICAgICAgY2FzZSAndyc6CiAJCQlpZiAocXVpZXQgPiAxKSByZXR1cm47CiAJCQlzdHJjYXQgKHN0
cmluZywgIldBUk5JTkc6ICAiKTsgYnJlYWs7CiAgICAgICBjYXNlICdlJzogCkBAIC0xNjMsMTIg
KzEzNyw4IEBACiAgICBzdHJjYXQgKHN0cmluZywgZm9ybWF0KTsgICAgICAvKiBqdXN0IGFwcGVu
ZCBzdXBwbGllZCBmb3JtYXQgc3RyaW5nICovCiAKIAkvKiBhbmQgcHJpbnQgdGhlIHdob2xlIHRo
aW5nICovCi0jaWZkZWYgTkVFRF9WUFJJTlRGCi0JKHZvaWQpIHp2ZnByaW50ZihzdGRvdXQsIHN0
cmluZywgYXJncyk7Ci0jZWxzZQotICAgKHZvaWQpIHZwcmludGYoc3RyaW5nLCBhcmdzKTsKLSNl
bmRpZgotCWZmbHVzaCAoc3Rkb3V0KTsKKyAgIHByaW50ZiAoc3RyaW5nLCBhLCBiLCBjLCBkKTsg
ICAvKiBhbmQgcHJpbnQgdGhlIHdob2xlIHRoaW5nICovCisgICAgICAgIGZmbHVzaCAoc3Rkb3V0
KTsKIAogICAgaWYgKGxldmVsID09ICdmJykgICAgICAgLyogYW5kIGFib3J0IG9uIGZhdGFsIGVy
cm9yICdmJyBidXQgbm90ICdGJyAqLwogICAgICAgem9vZXhpdCAoMSk7CmRpZmYgLXVyIHpvby9z
eXN2LmMgem9vLWdlbnRvby9zeXN2LmMKLS0tIHpvby9zeXN2LmMJMjAwMy0wOS0yNiAyMzo1MToy
My4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1nZW50b28vc3lzdi5jCTIwMDMtMDktMjcgMDA6MTM6
MDAuMDAwMDAwMDAwICsxMjAwCkBAIC0xMjksNiArMTI5LDcgQEAKIGV4aXN0cyBieSB0aGUgbmFt
ZSBvZiB0aGUgbmVlZGVkIGRpcmVjdG9yeS4KICovCiAKKyNpZm5kZWYgSEFWRV9NS0RJUgogaW50
IG1rZGlyKGRpcm5hbWUpCiBjaGFyICpkaXJuYW1lOwogewpAQCAtMTQwLDYgKzE0MSw3IEBACiAg
ICB9CiAJcmV0dXJuICgwKTsKIH0KKyNlbmRpZgogCiAvKiBObyBmaWxlIHRydW5jYXRlIHN5c3Rl
bSBjYWxsIGluIG9sZGVyIFN5c3RlbSBWLiAgSWYgeW91cnMgaGFzIG9uZSwKIGFkZCBpdCBoZXJl
IC0tIHNlZSBic2QuYyBmb3IgZXhhbXBsZS4gIEl0J3Mgb2sgZm9yIHpvb3RydW5jIHRvIGJlCmRp
ZmYgLXVyIHpvby96b28uMSB6b28tZ2VudG9vL3pvby4xCi0tLSB6b28vem9vLjEJMjAwMy0wOS0y
NiAyMzo1MToyMy4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1nZW50b28vem9vLjEJMjAwMy0wOS0y
NyAwMDo0MTowOC4wMDAwMDAwMDAgKzEyMDAKQEAgLTE3NiwxNSArMTc2LDE1IEBACiBOb3ZpY2VA
QEVxdWl2YWxlbnQKIENvbW1hbmRARGVzY3JpcHRpb25ARXhwZXJ0IENvbW1hbmQKIF8KLVwtYWRk
QGFkZCBmaWxlcyB0byBhcmNoaXZlQGFoUAorXC1hZGRAYWRkIGZpbGVzIHRvIGFyY2hpdmVAYVA6
CiBcLWV4dHJhY3RAZXh0cmFjdCBmaWxlcyBmcm9tIGFyY2hpdmVAeAotXC1tb3ZlQG1vdmUgZmls
ZXMgdG8gYXJjaGl2ZUBhaE1QCitcLW1vdmVAbW92ZSBmaWxlcyB0byBhcmNoaXZlQGFNUDoKIFwt
dGVzdEB0ZXN0IGFyY2hpdmUgaW50ZWdyaXR5QHhOZAogXC1wcmludEBleHRyYWN0IGZpbGVzIHRv
IHN0YW5kYXJkIG91dHB1dEB4cAogXC1kZWxldGVAZGVsZXRlIGZpbGVzIGZyb20gYXJjaGl2ZUBE
UAotXC1saXN0QGxpc3QgYXJjaGl2ZSBjb250ZW50c0BWbQotXC11cGRhdGVAYWRkIG5ldyBvciBu
ZXdlciBmaWxlc0BhaHVuUAotXC1mcmVzaGVuQGJ5IGFkZCBuZXdlciBmaWxlc0BhaHVQCitcLWxp
c3RAbGlzdCBhcmNoaXZlIGNvbnRlbnRzQFZDCitcLXVwZGF0ZUBhZGQgbmV3IG9yIG5ld2VyIGZp
bGVzQGF1blA6CitcLWZyZXNoZW5AYnkgYWRkIG5ld2VyIGZpbGVzQGF1UDoKIFwtY29tbWVudEBh
ZGQgY29tbWVudHMgdG8gZmlsZXNAYwogLlRFCiAuZmkKQEAgLTEwNDEsNyArMTA0MSw3IEBACiBN
YXRjaGVzIGFueSBzZXF1ZW5jZSBvZiB6ZXJvIG9yIG1vcmUgY2hhcmFjdGVycy4KIC5QUAogLlRQ
Ci0uQiA/CisuQiBcPwogTWF0Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3Rlci4KIC5zcCAxCiBBcmJp
dHJhcnkgY29tYmluYXRpb25zIG9mIApkaWZmIC11ciB6b28vem9vLmMgem9vLWdlbnRvby96b28u
YwotLS0gem9vL3pvby5jCTIwMDMtMDktMjYgMjM6NTE6MjMuMDAwMDAwMDAwICsxMjAwCisrKyB6
b28tZ2VudG9vL3pvby5jCTIwMDMtMDktMjcgMDA6NDI6MzQuMDAwMDAwMDAwICsxMjAwCkBAIC0y
MjUsMTcgKzIyNSwxNyBAQAogICAgaWYgKGNtZCAhPSBOT05FKSB7CiAgICAgICBzd2l0Y2ggKGNt
ZCkgewogCi0JIGNhc2UgQUREOiAgICAgIHpvb2FkZCAoem9vbmFtZSwgZmlsZWNvdW50LCAmYXJn
dlszXSwgImFoUCIpOyBicmVhazsKLQkgY2FzZSBGUkVTSEVOOiAgem9vYWRkICh6b29uYW1lLCBm
aWxlY291bnQsICZhcmd2WzNdLCAiYWh1UCIpOyBicmVhazsKLQkgY2FzZSBVUERBVEU6ICAgem9v
YWRkICh6b29uYW1lLCBmaWxlY291bnQsICZhcmd2WzNdLCAiYWh1blAiKTsgYnJlYWs7Ci0JIGNh
c2UgTU9WRTogICAgIHpvb2FkZCAoem9vbmFtZSwgZmlsZWNvdW50LCAmYXJndlszXSwgImFoTVAi
KTsgYnJlYWs7CisJIGNhc2UgQUREOiAgICAgIHpvb2FkZCAoem9vbmFtZSwgZmlsZWNvdW50LCAm
YXJndlszXSwgImFQOiIpOyBicmVhazsKKwkgY2FzZSBGUkVTSEVOOiAgem9vYWRkICh6b29uYW1l
LCBmaWxlY291bnQsICZhcmd2WzNdLCAiYXVQOiIpOyBicmVhazsKKwkgY2FzZSBVUERBVEU6ICAg
em9vYWRkICh6b29uYW1lLCBmaWxlY291bnQsICZhcmd2WzNdLCAiYXVuUDoiKTsgYnJlYWs7CisJ
IGNhc2UgTU9WRTogICAgIHpvb2FkZCAoem9vbmFtZSwgZmlsZWNvdW50LCAmYXJndlszXSwgImFN
UDoiKTsgYnJlYWs7CiAKICAgICAgICAgIGNhc2UgRVhUUkFDVDogIHpvb2V4dCAoem9vbmFtZSwg
IngiKTsgYnJlYWs7CiAgICAgICAgICBjYXNlIFRFU1Q6ICAgICB6b29leHQgKHpvb25hbWUsICJ4
TmQiKTsgYnJlYWs7CiAgICAgICAgICBjYXNlIFBSSU5UOiAgICB6b29leHQgKHpvb25hbWUsICJ4
cCIpOyBicmVhazsKIAogICAgICAgICAgY2FzZSBERUxFVEU6ICAgem9vZGVsICh6b29uYW1lLCAi
RFAiLDEpOyBicmVhazsKLQkgY2FzZSBMSVNUOiAgICAgem9vbGlzdCAoJmFyZ3ZbMl0sICJWbSIs
IGFyZ2MtMik7IGJyZWFrOworCSBjYXNlIExJU1Q6ICAgICB6b29saXN0ICgmYXJndlsyXSwgIlZD
IiwgYXJnYy0yKTsgYnJlYWs7CiAgICAgICAgICBjYXNlIENPTU1FTlQ6ICBjb21tZW50ICh6b29u
YW1lLCAiYyIpOyBicmVhazsKICAgICAgICAgIGRlZmF1bHQ6IGdvdG8gc2hvd191c2FnZTsKICAg
ICAgIH0KZGlmZiAtdXIgem9vL3pvby5oIHpvby1nZW50b28vem9vLmgKLS0tIHpvby96b28uaAky
MDAzLTA5LTI2IDIzOjUxOjIzLjAwMDAwMDAwMCArMTIwMAorKysgem9vLWdlbnRvby96b28uaAky
MDAzLTA5LTI3IDAwOjE5OjA2LjAwMDAwMDAwMCArMTIwMApAQCAtMSw5ICsxLDUgQEAKIC8qIGRl
cml2ZWQgZnJvbTogem9vLmggMi4xNiA4OC8wMS8yNyAyMzoyMTozNiAqLwogCi0jaWZuZGVmIFpP
T19ICi0KLSNkZWZpbmUgWk9PX0gKLQogLyoKIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgYXJl
IGhlcmVieSByZWxlYXNlZCB0byB0aGUgcHVibGljIGRvbWFpbi4KIApAQCAtMTMxLDcgKzEyNyw3
IEBACiAgICBjaGFyIGZuYW1lW0ZOQU1FU0laRV07IAkJLyogZmlsZW5hbWUgKi8KIAogICAgaW50
IHZhcl9kaXJfbGVuOyAgICAgICAgICAgLyogbGVuZ3RoIG9mIHZhcmlhYmxlIHBhcnQgb2YgZGly
IGVudHJ5ICovCi0gICBjaGFyIHR6OyAgICAgICAgICAgICAgICAgICAvKiB0aW1lem9uZSB3aGVy
ZSBmaWxlIHdhcyBhcmNoaXZlZCAqLworICAgdWNoYXIgdHo7ICAgICAgICAgICAgICAgICAgIC8q
IHRpbWV6b25lIHdoZXJlIGZpbGUgd2FzIGFyY2hpdmVkICovCiAgICB1bnNpZ25lZCBpbnQgZGly
X2NyYzsgICAgICAvKiBDUkMgb2YgZGlyZWN0b3J5IGVudHJ5ICovCiAKICAgIC8qIGZpZWxkcyBm
b3IgdmFyaWFibGUgcGFydCBvZiBkaXJlY3RvcnkgZW50cnkgZm9sbG93ICovCkBAIC0yNDQsNSAr
MjQwLDMgQEAKICNkZWZpbmUJTUFYR0VOCQkJCTB4MGYKIC8qIHZlcnNpb24gbWFzayB0byBwcnVu
ZSBkb3duIHRvIGNvcnJlY3Qgc2l6ZSBvbiBsYXJnZS13b3JkIG1hY2hpbmVzICovCiAjZGVmaW5l
IFZFUl9NQVNLCQkJCTB4ZmZmZgotCi0jZW5kaWYgIC8qIFpPT19IICovCmRpZmYgLXVyIHpvby96
b28ubWFuIHpvby1nZW50b28vem9vLm1hbgotLS0gem9vL3pvby5tYW4JMjAwMy0wOS0yNiAyMzo1
MToyMy4wMDAwMDAwMDAgKzEyMDAKKysrIHpvby1nZW50b28vem9vLm1hbgkyMDAzLTA5LTI3IDAw
OjIwOjMxLjAwMDAwMDAwMCArMTIwMApAQCAtMTIxLDE1ICsxMjEsMTUgQEAKICAgICAgTm92aWNl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVxdWl2YWxlbnQKICAgICAg
Q29tbWFuZCAgICBEZXNjcmlwdGlvbiAgICAgICAgICAgICAgICAgICAgICAgIEV4cGVydCBDb21t
YW5kCiAgICAgIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXwotICAgICAtYWRkICAgICAgIGFkZCBmaWxlcyB0byBhcmNoaXZlICAgICAg
ICAgICAgICAgYWhQCisgICAgIC1hZGQgICAgICAgYWRkIGZpbGVzIHRvIGFyY2hpdmUgICAgICAg
ICAgICAgICBhUAogICAgICAtZXh0cmFjdCAgIGV4dHJhY3QgZmlsZXMgZnJvbSBhcmNoaXZlICAg
ICAgICAgeAotICAgICAtbW92ZSAgICAgIG1vdmUgZmlsZXMgdG8gYXJjaGl2ZSAgICAgICAgICAg
ICAgYWhNUAorICAgICAtbW92ZSAgICAgIG1vdmUgZmlsZXMgdG8gYXJjaGl2ZSAgICAgICAgICAg
ICAgYU1QCiAgICAgIC10ZXN0ICAgICAgdGVzdCBhcmNoaXZlIGludGVncml0eSAgICAgICAgICAg
ICB4TmQKICAgICAgLXByaW50ICAgICBleHRyYWN0IGZpbGVzIHRvIHN0YW5kYXJkIG91dHB1dCAg
IHhwCiAgICAgIC1kZWxldGUgICAgZGVsZXRlIGZpbGVzIGZyb20gYXJjaGl2ZSAgICAgICAgICBE
UAotICAgICAtbGlzdCAgICAgIGxpc3QgYXJjaGl2ZSBjb250ZW50cyAgICAgICAgICAgICAgVm0K
LSAgICAgLXVwZGF0ZSAgICBhZGQgbmV3IG9yIG5ld2VyIGZpbGVzICAgICAgICAgICAgIGFodW5Q
Ci0gICAgIC1mcmVzaGVuICAgYnkgYWRkIG5ld2VyIGZpbGVzICAgICAgICAgICAgICAgICBhaHVQ
CisgICAgIC1saXN0ICAgICAgbGlzdCBhcmNoaXZlIGNvbnRlbnRzICAgICAgICAgICAgICBWQwor
ICAgICAtdXBkYXRlICAgIGFkZCBuZXcgb3IgbmV3ZXIgZmlsZXMgICAgICAgICAgICAgYXVuUAor
ICAgICAtZnJlc2hlbiAgIGJ5IGFkZCBuZXdlciBmaWxlcyAgICAgICAgICAgICAgICAgYXVQCiAg
ICAgIC1jb21tZW50ICAgYWRkIGNvbW1lbnRzIHRvIGZpbGVzICAgICAgICAgICAgICBjCiAKICAg
ICAgRXhwZXJ0IGNvbW1hbmRzCmRpZmYgLXVyIHpvby96b29hZGQuYyB6b28tZ2VudG9vL3pvb2Fk
ZC5jCi0tLSB6b28vem9vYWRkLmMJMjAwMy0wOS0yNiAyMzo1MToyMy4wMDAwMDAwMDAgKzEyMDAK
KysrIHpvby1nZW50b28vem9vYWRkLmMJMjAwMy0wOS0yNyAwMDoxNjoxMi4wMDAwMDAwMDAgKzEy
MDAKQEAgLTM0LDkgKzM0LDcgQEAKICAgICAgICAgICAgICAgIGludCAqLCBpbnQgKiwgaW50ICos
IGludCAqLCBpbnQgKiwgaW50ICosIGludCAqLCBpbnQgKikpOwogaW50IHZlcl90b29faGlnaCBQ
QVJNUyAoKHN0cnVjdCB6b29faGVhZGVyICopKTsKIHZvaWQgZ2V0X2NvbW1lbnQgUEFSTVMgKChz
dHJ1Y3QgZGlyZW50cnkgKiwgWk9PRklMRSwgY2hhciAqKSk7Ci0jaWZuZGVmIFBPUlRBQkxFCiB2
b2lkIGNvcHlmaWVsZHMgUEFSTVMgKChzdHJ1Y3QgZGlyZW50cnkgKiwgc3RydWN0IHRpbnlfaGVh
ZGVyICopKTsKLSNlbmRpZgogdm9pZCBzdG9yZWZuYW1lIFBBUk1TICgoc3RydWN0IGRpcmVudHJ5
ICosIGNoYXIgKiwgaW50KSk7CiBjaGFyICpjaG9vc2VmbmFtZSBQQVJNUyAoKHN0cnVjdCBkaXJl
bnRyeSAqKSk7CiAKQEAgLTEzNCw3ICsxMzIsNyBAQAogCiBpZiAoem9vX2ZpbGUgPT0gTk9GSUxF
KQogICAgcHJ0ZXJyb3IgKCdmJywgY291bGRfbm90X29wZW4sIHpvb19wYXRoKTsKLWJhc2VuYW1l
KHpvb19wYXRoLCB6b29fZm5hbWUpOyAgICAgIC8qIGdldCBiYXNlbmFtZSBvZiBhcmNoaXZlICov
CitteWJhc2VuYW1lKHpvb19wYXRoLCB6b29fZm5hbWUpOyAgICAgIC8qIGdldCBiYXNlbmFtZSBv
ZiBhcmNoaXZlICovCiByb290bmFtZSAoem9vX3BhdGgsIHpvb19iYWspOyAgICAgICAvKiBuYW1l
IHdpdGhvdXQgZXh0ZW5zaW9uICovCiBzdHJjYXQgKHpvb19iYWssIEJBQ0tVUF9FWFQpOyAgICAg
ICAvKiBuYW1lIG9mIGJhY2t1cCBvZiB0aGlzIGFyY2hpdmUgKi8KIApAQCAtMjI0LDcgKzIyMiw3
IEBACiAJCWJyZWFrOwogCX0KIAotICAgYmFzZW5hbWUgKHRoaXNfcGF0aCwgdGhpc19mbmFtZSk7
ICAgLyogZ2V0IGp1c3QgZmlsZW5hbWUgZm9yIGxhdGVyICovCisgICBteWJhc2VuYW1lICh0aGlz
X3BhdGgsIHRoaXNfZm5hbWUpOyAgIC8qIGdldCBqdXN0IGZpbGVuYW1lIGZvciBsYXRlciAqLwog
CiAgICB0aGlzX2ZpbGUgPSB6b29vcGVuKHRoaXNfcGF0aCwgWl9SRUFEKTsKICAgIGlmICh0aGlz
X2ZpbGUgPT0gTk9GSUxFKSB7CmRpZmYgLXVyIHpvby96b29hZGQyLmMgem9vLWdlbnRvby96b29h
ZGQyLmMKLS0tIHpvby96b29hZGQyLmMJMjAwMy0wOS0yNiAyMzo1MToyMy4wMDAwMDAwMDAgKzEy
MDAKKysrIHpvby1nZW50b28vem9vYWRkMi5jCTIwMDMtMDktMjcgMDA6MTU6MjcuMDAwMDAwMDAw
ICsxMjAwCkBAIC0yNjMsNyArMjYzLDcgQEAKICAgIGRpcmVudHJ5LT56b29fdGFnID0gWk9PX1RB
RzsKICAgIGRpcmVudHJ5LT50eXBlID0gMjsgICAgICAgICAgICAgICAgICAvKiB0eXBlIGlzIG5v
dyAyICovCiAjaWZkZWYgR0VUVFoKLQlkaXJlbnRyeS0+dHogPSBnZXR0eigpIC8gKDE1ICogNjAp
OyAvKiBzZWNvbmRzID0+IDE1LW1pbiB1bml0cyAqLworCWRpcmVudHJ5LT50eiA9ICh1Y2hhcikg
KGdldHR6KCkgLyAoMTUgKiA2MCkpOyAvKiBzZWNvbmRzID0+IDE1LW1pbiB1bml0cyAqLwogI2Vs
c2UKICAgIGRpcmVudHJ5LT50eiA9IE5PX1RaOyAgICAgICAgICAgICAgICAvKiB0aW1lem9uZSB1
bmtub3duICovCiAjZW5kaWYKZGlmZiAtdXIgem9vL3pvb2V4dC5jIHpvby1nZW50b28vem9vZXh0
LmMKLS0tIHpvby96b29leHQuYwkyMDAzLTA5LTI2IDIzOjUxOjIzLjAwMDAwMDAwMCArMTIwMAor
Kysgem9vLWdlbnRvby96b29leHQuYwkyMDAzLTA5LTI3IDAwOjE3OjI0LjAwMDAwMDAwMCArMTIw
MApAQCAtNjI2LDcgKzYyNiw3IEBACiAKIC8qIEN0cmxfYygpIGlzIGNhbGxlZCBpZiBeQyBpcyBo
aXQgd2hpbGUgYSBmaWxlIGlzIGJlaW5nIGV4dHJhY3RlZC4KICAgIEl0IGNsb3NlcyB0aGUgZmls
ZXMsIGRlbGV0ZXMgaXQsIGFuZCBleGl0cy4gKi8KLVRfU0lHTkFMIGN0cmxfYyhpbnQgZm9vKQor
VF9TSUdOQUwgY3RybF9jKCkKIHsKICNpZm5kZWYgTk9TSUdOQUwKICAgIHNpZ25hbCAoU0lHSU5U
LCBTSUdfSUdOKTsgICAgIC8qIGlnbm9yZSBhbnkgbW9yZSAqLwpkaWZmIC11ciB6b28vem9vZm5z
Lmggem9vLWdlbnRvby96b29mbnMuaAotLS0gem9vL3pvb2Zucy5oCTIwMDMtMDktMjYgMjM6NTE6
MjMuMDAwMDAwMDAwICsxMjAwCisrKyB6b28tZ2VudG9vL3pvb2Zucy5oCTIwMDMtMDktMjcgMDA6
MTg6MTQuMDAwMDAwMDAwICsxMjAwCkBAIC00MiwxMiArNDIsMTIgQEAKIGludCBjZmFjdG9yIFBB
Uk1TICgobG9uZywgbG9uZykpOwogaW50IGNobmFtZSBQQVJNUyAoKGNoYXIgKiwgY2hhciAqKSk7
CiBpbnQgY21wbnVtIFBBUk1TICgodW5zaWduZWQgaW50LCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVk
IGludCwgdW5zaWduZWQgaW50KSk7Ci1UX1NJR05BTCBjdHJsX2MgUEFSTVMgKChpbnQpKTsKK1Rf
U0lHTkFMIGN0cmxfYyBQQVJNUyAoKHZvaWQpKTsKIGludCBleGlzdHMgUEFSTVMgKChjaGFyICop
KTsKIGludCBnZXRmaWxlIFBBUk1TICgoWk9PRklMRSwgWk9PRklMRSwgbG9uZywgaW50KSk7CiBp
bnQgZ2V0dXRpbWUgUEFSTVMgKChjaGFyICosIHVuc2lnbmVkICosIHVuc2lnbmVkICopKTsKIGlu
dCBnZXR0aW1lIFBBUk1TICgoWk9PRklMRSwgdW5zaWduZWQgKiwgdW5zaWduZWQgKikpOwotVF9T
SUdOQUwgaGFuZGxlX2JyZWFrIFBBUk1TICgoaW50KSk7CitUX1NJR05BTCBoYW5kbGVfYnJlYWsg
UEFSTVMgKCh2b2lkKSk7CiAKICNpZmRlZiBVU0VfQVNDSUkKIGludCBpc3VwcGVyIFBBUk1TICgo
aW50KSk7CkBAIC04NSw3ICs4NSw3IEBACiB2b2lkIGFkZGZuYW1lIFBBUk1TICgoY2hhciAqLCBs
b25nLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCwgCiAJCQkJCQkJdW5zaWduZWQsIHVuc2ln
bmVkKSk7CiB2b2lkIGFkZF92ZXJzaW9uIFBBUk1TICgoY2hhciAqLCBzdHJ1Y3QgZGlyZW50cnkg
KikpOwotdm9pZCBiYXNlbmFtZSBQQVJNUyAoKGNoYXIgKiwgY2hhciBbXSkpOwordm9pZCBteWJh
c2VuYW1lIFBBUk1TICgoY2hhciAqLCBjaGFyIFtdKSk7CiB2b2lkIGJyZWFrX29mZiBQQVJNUyAo
KHZvaWQpKTsKIHZvaWQgY2xvc2VfZmlsZSBQQVJNUyAoKFpPT0ZJTEUpKTsKIHZvaWQgY29tbWVu
dCBQQVJNUyAoKGNoYXIgKiwgY2hhciAqKSk7CmRpZmYgLXVyIHpvby96b29pby5oIHpvby1nZW50
b28vem9vaW8uaAotLS0gem9vL3pvb2lvLmgJMjAwMy0wOS0yNiAyMzo1MToyMy4wMDAwMDAwMDAg
KzEyMDAKKysrIHpvby1nZW50b28vem9vaW8uaAkyMDAzLTA5LTI3IDAwOjE5OjQ5LjAwMDAwMDAw
MCArMTIwMApAQCAtMTIsOCArMTIsNiBAQAogI2RlZmluZQlPS19TVERJTwogI2VuZGlmCiAKLSNp
bmNsdWRlICJ6b28uaCIKLQogI2lmbmRlZiBQQVJNUwogI2lmZGVmIExJTlRfQVJHUwogI2RlZmlu
ZQlQQVJNUyh4KQkJeApkaWZmIC11ciB6b28vem9vcGFjay5jIHpvby1nZW50b28vem9vcGFjay5j
Ci0tLSB6b28vem9vcGFjay5jCTIwMDMtMDktMjYgMjM6NTE6MjMuMDAwMDAwMDAwICsxMjAwCisr
KyB6b28tZ2VudG9vL3pvb3BhY2suYwkyMDAzLTA5LTI3IDAwOjIxOjIxLjAwMDAwMDAwMCArMTIw
MApAQCAtMTcxLDcgKzE3MSw3IEBACiB9IGVsc2UgewogICAgc3RyY3B5ICh0ZW1wX2ZpbGUsIHhl
cyk7CiB9Ci1ta3RlbXAgKHRlbXBfZmlsZSk7ICAgICAgICAgICAgICAgICAgICAvKiAuLi4gYW5k
IG1ha2UgdW5pcXVlICovCitta3N0ZW1wICh0ZW1wX2ZpbGUpOyAgICAgICAgICAgICAgICAgICAg
LyogLi4uIGFuZCBtYWtlIHVuaXF1ZSAqLwogbmV3X2ZpbGUgPSB6b29jcmVhdGUgKHRlbXBfZmls
ZSk7CiBpZiAobmV3X2ZpbGUgPT0gTk9GSUxFKQogICAgcHJ0ZXJyb3IgKCdmJywgIkNvdWxkIG5v
dCBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUgJXMuXG4iLCB0ZW1wX2ZpbGUpOwpAQCAtMzg4LDcgKzM4
OCw3IEBACiAKIC8qIGhhbmRsZV9icmVhaygpICovCiAvKiBTZXRzIGJyZWFrX2hpdCB0byAxIHdo
ZW4gY2FsbGVkICovCi1UX1NJR05BTCBoYW5kbGVfYnJlYWsoaW50IGZvbykKK1RfU0lHTkFMIGhh
bmRsZV9icmVhaygpCiB7CiAjaWZuZGVmIE5PU0lHTkFMCiAgICBzaWduYWwgKFNJR0lOVCwgU0lH
X0lHTik7ICAgICAvKiBpZ25vcmUgZnV0dXJlIGNvbnRyb2wgXkNzIGZvciBub3cgKi8K
</data>        

          </attachment>
    </bug>

</bugzilla>