<?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>58350</bug_id>
          
          <creation_ts>2004-07-25 20:26 0000</creation_ts>
          <short_desc>xemacs 21.4.15 fails to build after gdbm update.</short_desc>
          <delta_ts>2006-06-05 11:51:50 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>x86</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>jnials@thanesoft.com</reporter>
          <assigned_to>xemacs@gentoo.org</assigned_to>
          <cc>aaron@cs.tu-berlin.de</cc>
    
    <cc>carlo@gentoo.org</cc>
    
    <cc>fade@deepsky.com</cc>
    
    <cc>howard_b_golden@yahoo.com</cc>
    
    <cc>j.romildo@gmail.com</cc>
    
    <cc>mschulkind@gmail.com</cc>
    
    <cc>nigoro@gentoo.org</cc>
    
    <cc>richard.torkar@htu.se</cc>

      

      
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-07-25 20:26:58 0000</bug_when>
            <thetext>After emerge -u world ran, my xemacs failed to load all the shared libs so I rebuilt gdbm and ran 

revdep-rebuild --soname libgdbm.so.2

And xemacs would still not run after that.

So I unmerged it and tried to merge it and now I get a consistent error of 

checking for dbm_open in -lgdbm... no
Error: Required GNU DBM support cannot be provided.

!!! ERROR: app-editors/xemacs-21.4.15 failed.
!!! Function src_compile, Line 161, Exitcode 1
!!! (no error message)


I have tried running the ebuild by hand but it fails there as well.  I have walked through the relevant sounding bugs and forums and tried various solutions there (most having to do with athena widgets) and tried them and no go.

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

Actual Results:  
checking for dbm_open in -lgdbm... no
Error: Required GNU DBM support cannot be provided.

!!! ERROR: app-editors/xemacs-21.4.15 failed.
!!! Function src_compile, Line 161, Exitcode 1
!!! (no error message)


Expected Results:  
Successfully emerged xemacs and let me go back to work.


Portage 2.0.50-r9 (default-x86-1.4, gcc-3.3.4, glibc-2.3.4.20040619-r0,
2.4.22-gentoo-r1)
=================================================================
System uname: 2.4.22-gentoo-r1 i686 AMD Athlon(tm) processor
Gentoo Base System version 1.5.1
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CFLAGS=&quot;-march=athlon -O3 -pipe -m3dnow -mmmx&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
COMPILER=&quot;gcc3&quot;
CONFIG_PROTECT=&quot;/etc /etc/tomcat /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3.3/share/config
/usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control&quot;
CONFIG_PROTECT_MASK=&quot;/etc/afs/C /etc/afs/afsws /etc/gconf /etc/terminfo /etc/env.d&quot;
CXXFLAGS=&quot;-march=athlon -O3 -pipe -m3dnow -mmmx&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoaddcvs ccache sandbox&quot;
GENTOO_MIRRORS=&quot;http://gentoo.oregonstate.edu
http://distro.ibiblio.org/pub/Linux/distributions/gentoo&quot;
MAKEOPTS=&quot;-j5&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
PORTDIR_OVERLAY=&quot;/usr/local/portage&quot;
SYNC=&quot;rsync://rsync.gentoo.org/gentoo-portage&quot;
USE=&quot;X alsa apache2 apm arts athena avi berkdb bonobo cdr crypt cups doc encode
esd ethereal evo fbcon flash foomaticdb gd gdbm gif gnome gphoto2 gpm gtk gtk2
gtkhtml guile imap imlib java jikes jpeg junit kde lcms libg++ libgda libwww mad
mbox mikmod mmx motif mozilla mpeg mysql ncurses nls odbc oggvorbis opengl oss
pam pda pdflib perl pic plotutils png postgres python qt quicktime readline ruby
sasl sdl slang slp snmp spell ssl svga tcltk tcpd tetex tiff truetype usb wmf
x86 xml xml2 xmms xv zeo zlib&quot;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-07-25 20:31:01 0000</bug_when>
            <thetext>Created an attachment (id=36160)
config.log from failed ru n.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>florian-evers@gmx.de</who>
            <bug_when>2004-07-26 03:34:02 0000</bug_when>
            <thetext>Hi,

same problem here.
I came along from Bug 58220:
http://bugs.gentoo.org/show_bug.cgi?id=58220
&quot;libgdbm.so.2 with zero bytes size/ too short&quot;

which is fixed now, but still no chance
to emerge / re-emerge xemacs!
Same error, &quot;Required GNU DBM support cannot be provided.&quot;

Greetinge, Florian
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-07-26 07:52:53 0000</bug_when>
            <thetext>Yup.  Went through all the stuff in 58220 and it didn&apos;t help.

Please don&apos;t make this a dupe of that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>distler@kph.uni-mainz.de</who>
            <bug_when>2004-07-26 09:31:25 0000</bug_when>
            <thetext>I can offer you a (quick and dirty) way to compile xemacs.
On my system I found a zero byte libgdbm.so.2.0.0, so I got rid of it:
&gt; emerge gdbm unmerge;emerge --oneshot gdbm
Then emerge xemacs and stop (Ctrl-S) right after &apos;&gt;&gt;&gt; Source unpacked.&apos;
Edit line 4422f of configure.in in another window:
/var/tmp/portage/xemacs-21.4.15/work/xemacs-21.4.15/configure.in:4422:
  AC_CHECK_LIB(gdbm, gdbm_open, [
   with_database_gdbm=yes with_database_dbm=no libdbm=&quot;-lgdbm_compat -lgdbm&quot;], [
and run autoconf:
&gt; cd /var/tmp/portage/xemacs-21.4.15/work/xemacs-21.4.15;autoconf-2.13
Continue (Ctrl-Q) the emerge.

This hack gives a hint how to fix xemacs permanently. The old (version 2)
libgdbm had a function dbm_open (no &apos;g&apos;) which is now in libgdbm_compat.
The new (version 3) libgdbm only has a function gdbm_open and that is why configure fails to find dbm_open.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-07-26 19:39:04 0000</bug_when>
            <thetext>Hmmm.  That suggestion didnt&apos; work for me.  BUT it gave met he idea of doing the following: LIBS=&quot;-lgdbm_compat -lgdbm&quot; ebuild  /usr/portage/app-editors/xemacs/xemacs-21.4.15.ebuild compile (after the normal steps of course).

Still, it is a hack.  The proper fix ought to get implemented somewhere.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gl@cs.rmit.edu.au</who>
            <bug_when>2004-07-27 04:00:25 0000</bug_when>
            <thetext>Thanks, editing configure.in as suggested in comment #4 worked for me.

I used 

ebuild xemacs-21.4.15.ebuild unpack
cd /var/tmp/portage/xemacs-21.4.15/work/xemacs-21.4.15
edit configure.in as per comment #4
autoconf-2.13
ebuild xemacs-21.4.15.ebuild compile
ebuild xemacs-21.4.15.ebuild install
ebuild xemacs-21.4.15.ebuild qmerge
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gl@cs.rmit.edu.au</who>
            <bug_when>2004-07-27 16:43:07 0000</bug_when>
            <thetext>I forgot to add that I also did

emerge -C gdbm
emerge --oneshot gdbm
sudo emerge -C openoffice-bin
revdep-rebuild --soname libgdbm.so.2

took me a couple of iterations.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>howard_b_golden@yahoo.com</who>
            <bug_when>2004-07-29 00:45:10 0000</bug_when>
            <thetext>Re: Comment #4 and comment #6:

Following these things worked for me, too.

So I would suggest patching configure.in as in comment #4 and running autoconf-2.13 as in comment #6. I&apos;m not sure how to modify the ebuild to add these steps, but doing it by hand worked.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>smarks@nc.rr.com</who>
            <bug_when>2004-07-31 14:24:57 0000</bug_when>
            <thetext>Bug 32510 shows some work on this, as well as the problem of a zero-length libgdbm.so.2 showing up.

This work-around worked for me:
 emerge --nodeps --oneshot =gdbm-1.8.0-r5
 emerge xemacs
 emerge gdbm
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-08-01 13:42:08 0000</bug_when>
            <thetext>

*** This bug has been marked as a duplicate of 58220 ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-08-02 20:49:57 0000</bug_when>
            <thetext>This bug is NOT a dupe.  Please read down.  dbm_open has moved out of libgdbm into libgdbm_compat.  xemacs is not expecting it there, and requires the ebuild be hacked.

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>julian@quantumfyre.co.uk</who>
            <bug_when>2004-08-14 03:05:33 0000</bug_when>
            <thetext>Created an attachment (id=37403)
enable xemacs to build using libgdbm 1.8.3

This patch + calling autoconf-2.13 in the ebuild compile step should fix the
problem with needing libgdbm_compat.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>richard.torkar@htu.se</who>
            <bug_when>2004-08-20 06:37:16 0000</bug_when>
            <thetext>Well xemacs-21.4.12 still borks on me...


checking for dbm_open in -lgdbm... no
Error: Required GNU DBM support cannot be provided.

!!! ERROR: app-editors/xemacs-21.4.12 failed.
!!! Function src_compile, Line 157, Exitcode 1
!!! (no error message)



xyz@tux ~ $ emerge  -p gdbm

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] sys-libs/gdbm-1.8.3-r1


xyz@tux ~ $ ls -l /usr/lib/libgdbm*
-rw-r--r--  1 root root 33858 Aug 19 00:56 /usr/lib/libgdbm.a
-rwxr-xr-x  1 root root   699 Aug 19 00:56 /usr/lib/libgdbm.la
lrwxrwxrwx  1 root root    16 Aug 19 00:56 /usr/lib/libgdbm.so -&gt; libgdbm.so.3.0.0
lrwxrwxrwx  1 root root    16 Aug 19 00:56 /usr/lib/libgdbm.so.3 -&gt; libgdbm.so.3.0.0
-rwxr-xr-x  1 root root 25265 Aug 19 00:56 /usr/lib/libgdbm.so.3.0.0
-rw-r--r--  1 root root 16426 Aug 19 00:56 /usr/lib/libgdbm_compat.a
-rwxr-xr-x  1 root root   748 Aug 19 00:56 /usr/lib/libgdbm_compat.la
lrwxrwxrwx  1 root root    23 Aug 19 00:56 /usr/lib/libgdbm_compat.so -&gt; libgdbm_compat.so.3.0.0
lrwxrwxrwx  1 root root    23 Aug 19 00:56 /usr/lib/libgdbm_compat.so.3 -&gt; libgdbm_compat.so.3.0.0
-rwxr-xr-x  1 root root 12708 Aug 19 00:56 /usr/lib/libgdbm_compat.so.3.0.0
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>richard.torkar@htu.se</who>
            <bug_when>2004-08-20 06:38:03 0000</bug_when>
            <thetext>Haven&apos;t tried the fix though... Better w8 for xemacs in portage to get fixed.. :)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jnials@thanesoft.com</who>
            <bug_when>2004-08-21 21:56:02 0000</bug_when>
            <thetext>This is still broken on 21.4.15-r1.

Is anyone going to work on this?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nigoro@gentoo.org</who>
            <bug_when>2004-08-22 06:24:13 0000</bug_when>
            <thetext>*** Bug 61099 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gl@cs.rmit.edu.au</who>
            <bug_when>2004-08-24 18:36:59 0000</bug_when>
            <thetext>Created an attachment (id=38132)
updated patch for xemacs-21.4.15-r1 to enable xemacs to build using libgdbm
1.8.3
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gl@cs.rmit.edu.au</who>
            <bug_when>2004-08-24 19:23:19 0000</bug_when>
            <thetext>Created an attachment (id=38138)
applies patch to configure.in to allow libgdm to be used and then calls
autoconf-2.13
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gl@cs.rmit.edu.au</who>
            <bug_when>2004-08-24 19:34:06 0000</bug_when>
            <thetext>Ok so I created a &lt;a href=&quot;http://bugs.gentoo.org/attachment.cgi?id=38132&quot;&gt; patch&lt;/a&gt; for configure.in, put it in /usr/portage/app-editors/xemacs/files, also created a &lt;a href=&quot;http://bugs.gentoo.org/attachment.cgi?id=38138&quot;&gt;patch&lt;/a&gt; for the xemacs-21.4.15-r1 ebuild which applies the configure.in patch and calls autoconf-2.13. xemacs then emerges for me. 

However, I&apos;m not too clear on patch naming conventions, nor whether just calling autoconf-2.13 in the src_unpack as I did is ok (putting it in src_compile is suggested in comment 12, but that puts the ebuild changes in two places, and it was not clear to me that it was the better place). 

I would really like to be using the xemacs beta (currently at 21.5.17). Who knows, if I understand a little more of the ebuilds, others are interested and I&apos;m not standing on someone&apos;s toes, I may put together an ebuild for it. (bugzilla is probably the wrong place for this suggestion - should shift to the forums I guess).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>aaron@cs.tu-berlin.de</who>
            <bug_when>2004-08-25 03:41:53 0000</bug_when>
            <thetext>I can confirm that with this fix the ebuild emerges like a charm.
would like to see it in portage tree soon</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>richard.torkar@htu.se</who>
            <bug_when>2004-08-26 02:18:16 0000</bug_when>
            <thetext>I can confirm that with this fix the ebuild emerges like a charm.
would like to see it in portage tree soon</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>rac@gentoo.org</who>
            <bug_when>2004-08-27 17:48:53 0000</bug_when>
            <thetext>Included in -r2, thanks for all the help.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>2tcso6e02@sneakemail.com</who>
            <bug_when>2004-09-09 20:59:27 0000</bug_when>
            <thetext>Note this breaks app-editors/xemacs-21.4.15-r2 if it&apos;s installed with ~x86 but gdbm isn&apos;t, because the xemacs won&apos;t work with gdbm-1.8.0.  Could the ebuild be modified to make this explicit (that is, require sys-libs/gdbm-1.8.3)?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>rac@gentoo.org</who>
            <bug_when>2004-09-10 14:46:51 0000</bug_when>
            <thetext>Modified the gdbm patch so that it builds against either 1.8.0 or 1.8.3.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>paulphilippe@yahoo.com</who>
            <bug_when>2005-03-20 10:03:52 0000</bug_when>
            <thetext>Alright... I am having the same output error message and problems with xemacs 21.4.15-r3. I have been working on this for 3 days and It seems that the proposed are not applied during the configure process. How can I make sure that these patches are applied so that emerge works properly.

 Also, I upgraded to gdbm-1.8.3-r1. Dunno if that has anything to do with the problem. I am however able to manually compile and install the program. If do decide to excute the ebuild script manually, how do I unmerge the old version? 

Paul

emerge info

ortage 2.0.51.19 (default-linux/x86/2004.3, gcc-3.4.3-20050110, glibc-2.3.4.200
50125-r1, 2.6.10-gentoo-r7 i686)
=================================================================
System uname: 2.6.10-gentoo-r7 i686 AMD Athlon(tm) XP 2200+
Gentoo Base System version 1.6.10
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Mar 19 2005, 02:37:27)]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r6
sys-devel/libtool:   1.5.14
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CFLAGS=&quot;-march=athlon-xp -O3 -pipe -fomit-frame-pointer&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/
3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdow
n /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/sh
are/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /us
r/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/te
x/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /va
r/qmail/control&quot;
CONFIG_PROTECT_MASK=&quot;/etc/gconf /etc/terminfo /etc/env.d&quot;
CXXFLAGS=&quot;-march=athlon-xp -O3 -pipe -fomit-frame-pointer&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoaddcvs autoconfig ccache distlocks sandbox sfperms&quot;
GENTOO_MIRRORS=&quot;http://ftp-mirror.internap.com/pub/gentoo/ http://gentoo.llarian                  .net/ ftp:///ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.mirror.                  sdv.fr http://gentoo.tiscali.nl/gentoo/ http://www.gigaload.org/gentoo.org/&quot;
MAKEOPTS=&quot;-j2&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
SYNC=&quot;rsync://rsync.gentoo.org/gentoo-portage&quot;
USE=&quot;x86 X aalib alsa apm arts avi berkdb bitmap-fonts bonobo cdr crypt cups cur                  l directfb divx4linux dvd dvdr emacs emboss encode esd evo fam flac font-server                   foomaticdb fortran gdbm gif gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile i                  magemagick imlib ipv6 jack java jpeg kde libg++ libwww mad mikmod motif mozilla                   mp3 mpeg ncurses nls oggvorbis opengl oss pam pdflib perl png ppds python qt qui                  cktime readline sdl slang spell ssl svga tcltk tcpd tetex theora tiff truetype t                  ruetype-fonts type1-fonts wmf wxwindows xml xml2 xmms xv yahoo zlib&quot;
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mschulkind@gmail.com</who>
            <bug_when>2005-03-22 08:44:31 0000</bug_when>
            <thetext>Your problem looks to be entirely unrelated, it just happens to give this error message when it can&apos;t find libXm also. Try this:

emerge openmotif
rm -rf /usr/include/Xm
ln -s /usr/include/openmotif-2.2/Xm/ /usr/include/Xm
emerge xemacs</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jakub@gentoo.org</who>
            <bug_when>2006-06-05 11:51:50 0000</bug_when>
            <thetext>*** Bug 70999 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>36160</attachid>
            <date>2004-07-25 20:31 0000</date>
            <desc>config.log from failed ru n.</desc>
            <filename>config.log</filename>
            <type>text/plain</type>
            <data encoding="base64">VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp
bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz
IGEgbWlzdGFrZS4KCmNvbmZpZ3VyZTo4NTU6IGNoZWNraW5nIHdoZXRoZXIgbG4gLXMgd29ya3MK
Y29uZmlndXJlOjExMjA6IGNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUKY29uZmlndXJlOjE2NTg6
IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjE3NjI6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMg
Y29tcGlsZXIgKGdjYyAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICkgd29y
a3MKY29uZmlndXJlOjE3ODA6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgICAgICAgIGNvbmZ0ZXN0LmMgICAgICAgICAgIDE+JjUKY29u
ZmlndXJlOjE4MDg6IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgKGdjYyAtbWFyY2g9
YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICkgaXMgYSBjcm9zcy1jb21waWxlcgpjb25m
aWd1cmU6MTgxMzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgR05VIEMKY29uZmlndXJl
OjE4MjA6IGdjYyAtRSBjb25mdGVzdC5jCmNvbmZpZ3VyZToxODM4OiBjaGVja2luZyB3aGV0aGVy
IGdjYyBhY2NlcHRzIC1nCmNvbmZpZ3VyZToyMzAxOiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBD
IHByZXByb2Nlc3Nvcgpjb25maWd1cmU6MjMyMDogZ2NjIC1FICAgICAgIGNvbmZ0ZXN0LmMgPi9k
ZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MjM4MDogY2hlY2tpbmcgZm9yIEFJWApj
b25maWd1cmU6MjQwOTogY2hlY2tpbmcgZm9yIEdOVSBsaWJjCmNvbmZpZ3VyZToyNDIzOiBnY2Mg
LWMgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICBjb25mdGVzdC5j
IDE+JjUKY29uZmlndXJlOjI1MTY6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAt
cGlwZSAtbTNkbm93IC1tbW14ICAgICAgICAgICAgIGNvbmZ0ZXN0LmMgICAgICAgICAgIDE+JjUK
Y29uZmlndXJlOjI4MjM6IGNoZWNraW5nIGZvciBidWdneSBnY2MgdmVyc2lvbnMKY29uZmlndXJl
OjI5NzA6IGNoZWNraW5nIGZvciBkeW5vZHVtcApjb25maWd1cmU6MzI2MjogY2hlY2tpbmcgZm9y
IG1hbGxvY19zZXRfc3RhdGUKY29uZmlndXJlOjMyODg6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9
YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgICAgICAgIGNvbmZ0ZXN0LmMgICAg
ICAgICAgIDE+JjUKY29uZmlndXJlOjMzMDg6IGNoZWNraW5nIHdoZXRoZXIgX19hZnRlcl9tb3Jl
Y29yZV9ob29rIGV4aXN0cwpjb25maWd1cmU6MzMxNzogZ2NjIC1vIGNvbmZ0ZXN0IC1tYXJjaD1h
dGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgICAgICAgY29uZnRlc3QuYyAgICAg
ICAgICAgMT4mNQpjb25maWd1cmU6MzM3MzogY2hlY2tpbmcgZm9yIHJhbmxpYgpjb25maWd1cmU6
MzQyODogY2hlY2tpbmcgZm9yIGEgQlNEIGNvbXBhdGlibGUgaW5zdGFsbApjb25maWd1cmU6MzQ4
MjogY2hlY2tpbmcgZm9yIGJpc29uCmNvbmZpZ3VyZTozNTE0OiBjaGVja2luZyBmb3IgYS5vdXQu
aApjb25maWd1cmU6MzUyMjogZ2NjIC1FICAgICAgIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNv
bmZ0ZXN0Lm91dApjb25maWd1cmU6MzUxNDogY2hlY2tpbmcgZm9yIGVsZi5oCmNvbmZpZ3VyZToz
NTIyOiBnY2MgLUUgICAgICAgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNv
bmZpZ3VyZTozNTE0OiBjaGVja2luZyBmb3IgY3lnd2luL3ZlcnNpb24uaApjb25maWd1cmU6MzUy
MjogZ2NjIC1FICAgICAgIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25m
aWd1cmU6MzUxODoyODogY3lnd2luL3ZlcnNpb24uaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y
eQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMzUxNyAiY29uZmlndXJlIgoj
aW5jbHVkZSAiY29uZmRlZnMuaCIKI2luY2x1ZGUgPGN5Z3dpbi92ZXJzaW9uLmg+CmNvbmZpZ3Vy
ZTozNTE0OiBjaGVja2luZyBmb3IgZmNudGwuaApjb25maWd1cmU6MzUyMjogZ2NjIC1FICAgICAg
IGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MzUxNDogY2hl
Y2tpbmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjM1MjI6IGdjYyAtRSAgICAgICBjb25mdGVz
dC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjM1MTQ6IGNoZWNraW5nIGZv
ciBsaWJnZW4uaApjb25maWd1cmU6MzUyMjogZ2NjIC1FICAgICAgIGNvbmZ0ZXN0LmMgPi9kZXYv
bnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MzUxNDogY2hlY2tpbmcgZm9yIGxvY2FsZS5o
CmNvbmZpZ3VyZTozNTIyOiBnY2MgLUUgICAgICAgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29u
ZnRlc3Qub3V0CmNvbmZpZ3VyZTozNTE0OiBjaGVja2luZyBmb3IgbWFjaC9tYWNoLmgKY29uZmln
dXJlOjM1MjI6IGdjYyAtRSAgICAgICBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5v
dXQKY29uZmlndXJlOjM1MTg6MjM6IG1hY2gvbWFjaC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0
b3J5CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAzNTE3ICJjb25maWd1cmUi
CiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVkZSA8bWFjaC9tYWNoLmg+CmNvbmZpZ3VyZToz
NTE0OiBjaGVja2luZyBmb3Igc3lzL3BhcmFtLmgKY29uZmlndXJlOjM1MjI6IGdjYyAtRSAgICAg
ICBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjM1MTQ6IGNo
ZWNraW5nIGZvciBzeXMvcHN0YXQuaApjb25maWd1cmU6MzUyMjogZ2NjIC1FICAgICAgIGNvbmZ0
ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MzUxODoyMzogc3lzL3Bz
dGF0Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
bSB3YXM6CiNsaW5lIDM1MTcgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNs
dWRlIDxzeXMvcHN0YXQuaD4KY29uZmlndXJlOjM1MTQ6IGNoZWNraW5nIGZvciBzeXMvdGltZS5o
CmNvbmZpZ3VyZTozNTIyOiBnY2MgLUUgICAgICAgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29u
ZnRlc3Qub3V0CmNvbmZpZ3VyZTozNTE0OiBjaGVja2luZyBmb3Igc3lzL3RpbWViLmgKY29uZmln
dXJlOjM1MjI6IGdjYyAtRSAgICAgICBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5v
dXQKY29uZmlndXJlOjM1MTQ6IGNoZWNraW5nIGZvciBzeXMvdW4uaApjb25maWd1cmU6MzUyMjog
Z2NjIC1FICAgICAgIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1
cmU6MzUxNDogY2hlY2tpbmcgZm9yIHVsaW1pdC5oCmNvbmZpZ3VyZTozNTIyOiBnY2MgLUUgICAg
ICAgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTozNTE0OiBj
aGVja2luZyBmb3IgdW5pc3RkLmgKY29uZmlndXJlOjM1MjI6IGdjYyAtRSAgICAgICBjb25mdGVz
dC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjM1NTI6IGNoZWNraW5nIGZv
ciBzeXMvd2FpdC5oIHRoYXQgaXMgUE9TSVguMSBjb21wYXRpYmxlCmNvbmZpZ3VyZTozNTcxOiBn
Y2MgLWMgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICBjb25mdGVz
dC5jIDE+JjUKY29uZmlndXJlOjM1OTU6IGNoZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVz
CmNvbmZpZ3VyZTozNjA2OiBnY2MgLUUgICAgICAgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29u
ZnRlc3Qub3V0CmNvbmZpZ3VyZTozNjcwOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAt
TzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAgICAgICBjb25mdGVzdC5jICAgICAgICAgICAx
PiY1CmNvbmZpZ3VyZTozNjk2OiBjaGVja2luZyB3aGV0aGVyIHRpbWUuaCBhbmQgc3lzL3RpbWUu
aCBtYXkgYm90aCBiZSBpbmNsdWRlZApjb25maWd1cmU6MzcwODogZ2NjIC1jIC1tYXJjaD1hdGhs
b24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3Vy
ZTozNzMyOiBjaGVja2luZyBmb3Igc3lzX3NpZ2xpc3QgZGVjbGFyYXRpb24gaW4gc2lnbmFsLmgg
b3IgdW5pc3RkLmgKY29uZmlndXJlOjM3NDc6IGdjYyAtYyAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6IEluIGZ1bmN0
aW9uIGBtYWluJzoKY29uZmlndXJlOjM3NDM6IHdhcm5pbmc6IGluaXRpYWxpemF0aW9uIGRpc2Nh
cmRzIHF1YWxpZmllcnMgZnJvbSBwb2ludGVyIHRhcmdldCB0eXBlCmNvbmZpZ3VyZTozNzczOiBj
aGVja2luZyBmb3IgdXRpbWUKY29uZmlndXJlOjM3ODM6IGdjYyAtYyAtbWFyY2g9YXRobG9uIC1P
MyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6Mzg2
MDogY2hlY2tpbmcgcmV0dXJuIHR5cGUgb2Ygc2lnbmFsIGhhbmRsZXJzCmNvbmZpZ3VyZTozODgw
OiBnY2MgLWMgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICBjb25m
dGVzdC5jIDE+JjUKY29uZmlndXJlOjM5MDI6IGNoZWNraW5nIGZvciBzaXplX3QKY29uZmlndXJl
OjM5MzY6IGNoZWNraW5nIGZvciBwaWRfdApjb25maWd1cmU6Mzk3MDogY2hlY2tpbmcgZm9yIHVp
ZF90IGluIHN5cy90eXBlcy5oCmNvbmZpZ3VyZTo0MDA5OiBjaGVja2luZyBmb3IgbW9kZV90CmNv
bmZpZ3VyZTo0MDQzOiBjaGVja2luZyBmb3Igb2ZmX3QKY29uZmlndXJlOjQwNzc6IGNoZWNraW5n
IGZvciBzc2l6ZV90CmNvbmZpZ3VyZTo0MTEyOiBjaGVja2luZyBmb3Igc29ja2xlbl90CmNvbmZp
Z3VyZTo0MTI0OiBnY2MgLWMgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAg
ICAgICBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOjQxNzU6IGNoZWNraW5nIGZvciBzdHJ1Y3Qg
dGltZXZhbApjb25maWd1cmU6NDE5MzogZ2NjIC1jIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1t
M2Rub3cgLW1tbXggICAgICAgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo0MjE1OiBjaGVja2lu
ZyB3aGV0aGVyIHN0cnVjdCB0bSBpcyBpbiBzeXMvdGltZS5oIG9yIHRpbWUuaApjb25maWd1cmU6
NDIyNjogZ2NjIC1jIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAg
Y29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo0MjUwOiBjaGVja2luZyBmb3IgdG1fem9uZSBpbiBz
dHJ1Y3QgdG0KY29uZmlndXJlOjQyNjE6IGdjYyAtYyAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAt
bTNkbm93IC1tbW14ICAgICAgIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NDMyMzogY2hlY2tp
bmcgZm9yIHdvcmtpbmcgY29uc3QKY29uZmlndXJlOjQzNzU6IGdjYyAtYyAtbWFyY2g9YXRobG9u
IC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6
NDQwMDogY2hlY2tpbmcgd2hldGhlciBtYWtlIHNldHMgJHtNQUtFfQpjb25maWd1cmU6NDQyNTog
Y2hlY2tpbmcgd2hldGhlciBieXRlIG9yZGVyaW5nIGlzIGJpZ2VuZGlhbgpjb25maWd1cmU6NDQ0
MTogZ2NjIC1jIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgY29u
ZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZTo0NDU2OiBnY2MgLWMgLW1hcmNoPWF0aGxvbiAtTzMgLXBp
cGUgLW0zZG5vdyAtbW1teCAgICAgICBjb25mdGVzdC5jIDE+JjUKY29uZmlndXJlOiBJbiBmdW5j
dGlvbiBgbWFpbic6CmNvbmZpZ3VyZTo0NDUxOiBlcnJvcjogYG5vdCcgdW5kZWNsYXJlZCAoZmly
c3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCmNvbmZpZ3VyZTo0NDUxOiBlcnJvcjogKEVhY2ggdW5k
ZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVkIG9ubHkgb25jZQpjb25maWd1cmU6NDQ1MTog
ZXJyb3I6IGZvciBlYWNoIGZ1bmN0aW9uIGl0IGFwcGVhcnMgaW4uKQpjb25maWd1cmU6NDQ1MTog
ZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgImJpZyIKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
bSB3YXM6CiNsaW5lIDQ0NDUgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNs
dWRlIDxzeXMvdHlwZXMuaD4KI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgppbnQgbWFpbigpIHsKCiNp
ZiBCWVRFX09SREVSICE9IEJJR19FTkRJQU4KIG5vdCBiaWcgZW5kaWFuCiNlbmRpZgo7IHJldHVy
biAwOyB9CmNvbmZpZ3VyZTo0NTEzOiBjaGVja2luZyBzaXplIG9mIHNob3J0CmNvbmZpZ3VyZTo0
NTI3OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1t
eCAgICAgICAgICAgICBjb25mdGVzdC5jICAgICAgICAgICAxPiY1CmNvbmZpZ3VyZTo0NTU1OiBj
aGVja2luZyBzaXplIG9mIGludApjb25maWd1cmU6NDU2OTogZ2NjIC1vIGNvbmZ0ZXN0IC1tYXJj
aD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgICAgICAgY29uZnRlc3QuYyAg
ICAgICAgICAgMT4mNQpjb25maWd1cmU6NDU5MTogY2hlY2tpbmcgc2l6ZSBvZiBsb25nCmNvbmZp
Z3VyZTo0NjA1OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5v
dyAtbW1teCAgICAgICAgICAgICBjb25mdGVzdC5jICAgICAgICAgICAxPiY1CmNvbmZpZ3VyZTo0
NjI3OiBjaGVja2luZyBzaXplIG9mIGxvbmcgbG9uZwpjb25maWd1cmU6NDY0MTogZ2NjIC1vIGNv
bmZ0ZXN0IC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgICAgICAg
Y29uZnRlc3QuYyAgICAgICAgICAgMT4mNQpjb25maWd1cmU6NDY2MzogY2hlY2tpbmcgc2l6ZSBv
ZiB2b2lkICoKY29uZmlndXJlOjQ2Nzc6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1P
MyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgICAgICAgIGNvbmZ0ZXN0LmMgICAgICAgICAgIDE+
JjUKY29uZmlndXJlOjQ3MjY6IGNoZWNraW5nIGZvciBsb25nIGZpbGUgbmFtZXMKY29uZmlndXJl
OjQ3NzI6IGNoZWNraW5nIGZvciBzaW4KY29uZmlndXJlOjQ3OTg6IGdjYyAtbyBjb25mdGVzdCAt
bWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgICAgICAgIGNvbmZ0ZXN0
LmMgICAgICAgICAgIDE+JjUKY29uZmlndXJlOjQ3ODI6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5
cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiBgc2luJwovdmFyL3RtcC9wb3J0YWdlL3hlbWFjcy0y
MS40LjE1L3RlbXAvY2MwWWtyWjEubygudGV4dCsweGEpOiBJbiBmdW5jdGlvbiBgbWFpbic6Cjog
dW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgc2luJwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0
IHN0YXR1cwpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgNDc3NSAiY29uZmln
dXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19z
dHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAogICAgd2hpY2ggY2FuIGNv
bmZsaWN0IHdpdGggY2hhciBzaW4oKTsgYmVsb3cuICAqLwojaW5jbHVkZSA8YXNzZXJ0Lmg+Ci8q
IE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4g
ICovCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlw
ZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3
b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgc2luKCk7CgppbnQgbWFpbigpIHsKCi8qIFRoZSBH
TlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVu
dHMKICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlvbnMgYXJlIGFj
dHVhbGx5IG5hbWVkCiAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1h
bCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KI2lmIGRlZmluZWQgKF9fc3R1Yl9zaW4pIHx8IGRlZmlu
ZWQgKF9fc3R1Yl9fX3NpbikKY2hva2UgbWUKI2Vsc2UKc2luKCk7CiNlbmRpZgoKOyByZXR1cm4g
MDsgfQpjb25maWd1cmU6NDgxNjogY2hlY2tpbmcgZm9yIHNpbiBpbiAtbG0KY29uZmlndXJlOjQ4
MzI6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14
ICAgICAgICAgICAgIGNvbmZ0ZXN0LmMgICAtbG0gICAgICAgICAgMT4mNQpjb25maWd1cmU6NDgy
NTogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uIGBzaW4n
CmNvbmZpZ3VyZTo0ODgzOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUg
LW0zZG5vdyAtbW1teCAgICAgICAgICAgICBjb25mdGVzdC5jICAgICAgIC1sbSAgICAgMT4mNQpj
b25maWd1cmU6NDkwMDogY2hlY2tpbmcgdHlwZSBvZiBtYWlsIHNwb29sIGZpbGUgbG9ja2luZwpj
b25maWd1cmU6NDkwNDogY2hlY2tpbmcgZm9yIGxvY2tmCmNvbmZpZ3VyZTo0OTMwOiBnY2MgLW8g
Y29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAgICAg
ICBjb25mdGVzdC5jICAgICAgIC1sbSAgICAgMT4mNQpjb25maWd1cmU6NDkwNDogY2hlY2tpbmcg
Zm9yIGZsb2NrCmNvbmZpZ3VyZTo0OTMwOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAt
TzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAgICAgICBjb25mdGVzdC5jICAgICAgIC1sbSAg
ICAgMT4mNQpjb25maWd1cmU6NTA2NTogY2hlY2tpbmcgd2hldGhlciB0aGUgLXhpbGRvZmYgY29t
cGlsZXIgZmxhZyBpcyByZXF1aXJlZApjb25maWd1cmU6NTA4ODogY2hlY2tpbmcgZm9yIHNwZWNp
ZmllZCB3aW5kb3cgc3lzdGVtCmNvbmZpZ3VyZTo1NTQ3OiBjaGVja2luZyBmb3IgWApjb25maWd1
cmU6NTg2NjogY2hlY2tpbmcgZm9yIGRuZXRfbnRvYSBpbiAtbGRuZXQKY29uZmlndXJlOjU4ODI6
IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAg
ICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgIGNvbmZ0ZXN0LmMgICAtbGRuZXQgICAgICAt
bG0gICAgIDE+JjUKL3Vzci9saWIvZ2NjLWxpYi9pNjg2LXBjLWxpbnV4LWdudS8zLjMuNC8uLi8u
Li8uLi8uLi9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sZG5ldApjb2xs
ZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt
IHdhczoKI2xpbmUgNTg3MSAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogT3Zl
cnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8K
LyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9m
IGEgZ2NjMgogICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxk
IHN0aWxsIGFwcGx5LiAgKi8KY2hhciBkbmV0X250b2EoKTsKCmludCBtYWluKCkgewpkbmV0X250
b2EoKQo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo1OTA2OiBjaGVja2luZyBmb3IgZG5ldF9udG9h
IGluIC1sZG5ldF9zdHViCmNvbmZpZ3VyZTo1OTIyOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0
aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAg
ICAgICBjb25mdGVzdC5jICAgLWxkbmV0X3N0dWIgICAgICAtbG0gICAgIDE+JjUKL3Vzci9saWIv
Z2NjLWxpYi9pNjg2LXBjLWxpbnV4LWdudS8zLjMuNC8uLi8uLi8uLi8uLi9pNjg2LXBjLWxpbnV4
LWdudS9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sZG5ldF9zdHViCmNvbGxlY3QyOiBsZCByZXR1cm5l
ZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA1OTEx
ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBp
bnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBi
ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWls
dGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAq
LwpjaGFyIGRuZXRfbnRvYSgpOwoKaW50IG1haW4oKSB7CmRuZXRfbnRvYSgpCjsgcmV0dXJuIDA7
IH0KY29uZmlndXJlOjU5NTE6IGNoZWNraW5nIGZvciBnZXRob3N0YnluYW1lCmNvbmZpZ3VyZTo1
OTc3OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1t
eCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jICAgICAgIC1sbSAg
ICAgMT4mNQpjb25maWd1cmU6NjA0NDogY2hlY2tpbmcgZm9yIGNvbm5lY3QKY29uZmlndXJlOjYw
NzA6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14
ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgIGNvbmZ0ZXN0LmMgICAgICAgLWxtICAg
ICAxPiY1CmNvbmZpZ3VyZTo2MTMzOiBjaGVja2luZyBmb3IgcmVtb3ZlCmNvbmZpZ3VyZTo2MTU5
OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAg
ICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jICAgICAgIC1sbSAgICAg
MT4mNQpjb25maWd1cmU6NjIyMDogY2hlY2tpbmcgZm9yIHNobWF0CmNvbmZpZ3VyZTo2MjQ2OiBn
Y2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAg
ICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jICAgICAgIC1sbSAgICAgMT4m
NQpjb25maWd1cmU6NjMxOTogY2hlY2tpbmcgZm9yIEljZUNvbm5lY3Rpb25OdW1iZXIgaW4gLWxJ
Q0UKY29uZmlndXJlOjYzMzU6IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAtTC91c3IvWDExUjYv
bGliICAgICAgY29uZnRlc3QuYyAgIC1sSUNFICAgICAgLWxtICAgICAxPiY1CmNvbmZpZ3VyZTo2
MzgxOiBjaGVja2luZyBmb3IgWG0vWG0uaApjb25maWd1cmU6NjM4OTogZ2NjIC1FICAgICAgIC1J
L3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApj
b25maWd1cmU6NjQwNjogY2hlY2tpbmcgZm9yIFhtU3RyaW5nRnJlZSBpbiAtbFhtCmNvbmZpZ3Vy
ZTo2NDIyOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAt
bW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICBjb25mdGVzdC5jICAgLWxYbSAg
ICAgIC1sU00gLWxJQ0UgLWxtICAgICAxPiY1Ci91c3IvbGliL2djYy1saWIvaTY4Ni1wYy1saW51
eC1nbnUvMy4zLjQvLi4vLi4vLi4vLi4vaTY4Ni1wYy1saW51eC1nbnUvYmluL2xkOiBjYW5ub3Qg
ZmluZCAtbFhtCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTog
ZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA2NDExICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25m
ZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQg
YW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUg
cmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBw
cm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIFhtU3RyaW5nRnJlZSgpOwoKaW50
IG1haW4oKSB7ClhtU3RyaW5nRnJlZSgpCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjY1NzQ6IGNo
ZWNraW5nIGZvciBYIGRlZmluZXMgZXh0cmFjdGVkIGJ5IHhta21mCmNvbmZpZ3VyZTo2NjIzOiBj
aGVja2luZyBmb3IgWDExL0ludHJpbnNpYy5oCmNvbmZpZ3VyZTo2NjMxOiBnY2MgLUUgICAgICAg
LUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0
CmNvbmZpZ3VyZTo2NjU1OiBjaGVja2luZyBmb3IgWE9wZW5EaXNwbGF5IGluIC1sWDExCmNvbmZp
Z3VyZTo2NjcxOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5v
dyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgIC1ML3Vzci9YMTFSNi9saWIg
IGNvbmZ0ZXN0LmMgICAtbFgxMSAgICAgIC1sU00gLWxJQ0UgLWxtICAgICAxPiY1CmNvbmZpZ3Vy
ZTo2NzM5OiBjaGVja2luZyBmb3IgWFNoYXBlU2VsZWN0SW5wdXQgaW4gLWxYZXh0CmNvbmZpZ3Vy
ZTo2NzU1OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAt
bW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNv
bmZ0ZXN0LmMgICAtbFhleHQgICAtbFgxMSAgIC1sU00gLWxJQ0UgLWxtICAgICAxPiY1CmNvbmZp
Z3VyZTo2Nzc4OiBjaGVja2luZyBmb3IgWHRPcGVuRGlzcGxheSBpbiAtbFh0CmNvbmZpZ3VyZTo2
Nzk0OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1t
eCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0
ZXN0LmMgICAtbFh0ICAgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbG0gICAgIDE+JjUKY29u
ZmlndXJlOjY4MTc6IGNoZWNraW5nIHRoZSB2ZXJzaW9uIG9mIFgxMSBiZWluZyB1c2VkCmNvbmZp
Z3VyZTo2ODI0OiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5v
dyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgIC1ML3Vzci9YMTFSNi9saWIg
IGNvbmZ0ZXN0LmMgICAgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1sbSAgICAgMT4m
NQpjb25maWd1cmU6Njg1NTogY2hlY2tpbmcgZm9yIFhDb252ZXJ0Q2FzZQpjb25maWd1cmU6Njg4
MTogZ2NjIC1vIGNvbmZ0ZXN0IC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXgg
ICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVz
dC5jICAgIC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbG0gICAgIDE+JjUKY29uZmln
dXJlOjY5MTM6IGNoZWNraW5nIGZvciBYMTEvWGxvY2FsZS5oCmNvbmZpZ3VyZTo2OTIxOiBnY2Mg
LUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29u
ZnRlc3Qub3V0CmNvbmZpZ3VyZTo2OTU0OiBjaGVja2luZyBmb3IgWFJlZ2lzdGVySU1JbnN0YW50
aWF0ZUNhbGxiYWNrCmNvbmZpZ3VyZTo2OTgwOiBnY2MgLW8gY29uZnRlc3QgLW1hcmNoPWF0aGxv
biAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAg
IC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNN
IC1sSUNFIC1sbSAgICAgMT4mNQpjb25maWd1cmU6NzAwODogY2hlY2tpbmcgZm9yIHN0YW5kYXJk
IFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFjayBwcm90b3R5cGUKY29uZmlndXJlOjcwMjI6
IGdjYyAtYyAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vz
ci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6NzAxNTogZXJyb3I6IGNv
bmZsaWN0aW5nIHR5cGVzIGZvciBgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrJwovdXNy
L1gxMVI2L2luY2x1ZGUvWDExL1hsaWIuaDo0NzU3OiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRp
b24gb2YgYFhSZWdpc3RlcklNSW5zdGFudGlhdGVDYWxsYmFjaycKY29uZmlndXJlOiBmYWlsZWQg
cHJvZ3JhbSB3YXM6CiNsaW5lIDcwMTAgImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgi
CgojZGVmaW5lIE5lZWRGdW5jdGlvblByb3RvdHlwZXMgMQojaW5jbHVkZSA8WDExL1hsaWIuaD4K
ZXh0ZXJuIEJvb2wgWFJlZ2lzdGVySU1JbnN0YW50aWF0ZUNhbGxiYWNrKAogICBEaXNwbGF5Kiwg
c3RydWN0IF9Ycm1IYXNoQnVja2V0UmVjKiwgY2hhciosIGNoYXIqLCBYSU1Qcm9jLCBYUG9pbnRl
ciopOwoKaW50IG1haW4oKSB7Cgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZTo3MDQzOiBjaGVja2lu
ZyBmb3IgWG11UmVhZEJpdG1hcERhdGFGcm9tRmlsZSBpbiAtbFhtdQpjb25maWd1cmU6NzA1OTog
Z2NjIC1vIGNvbmZ0ZXN0IC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAg
ICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5j
ICAgLWxYbXUgICAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxtICAgICAxPiY1CmNv
bmZpZ3VyZTo3MDk4OiBjaGVja2luZyBmb3IgbWFpbiBpbiAtbFhic2QKY29uZmlndXJlOjcxMTA6
IGdjYyAtbyBjb25mdGVzdCAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAg
ICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3Qu
YyAgIC1sWGJzZCAgIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbG0gICAg
IDE+JjUKL3Vzci9saWIvZ2NjLWxpYi9pNjg2LXBjLWxpbnV4LWdudS8zLjMuNC8uLi8uLi8uLi8u
Li9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1sWGJzZApjb2xsZWN0Mjog
bGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK
I2xpbmUgNzEwMyAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKCmludCBtYWluKCkg
ewptYWluKCkKOyByZXR1cm4gMDsgfQpjb25maWd1cmU6NzM0ODogY2hlY2tpbmcgZm9yIFgxMS9l
eHRlbnNpb25zL3NoYXBlLmgKY29uZmlndXJlOjczNTY6IGdjYyAtRSAgICAgICAtSS91c3IvWDEx
UjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJl
Ojc0MDg6IGNoZWNraW5nIGZvciBXTV9DT01NQU5EIG9wdGlvbgpjb25maWd1cmU6NzQyMzogY2hl
Y2tpbmcgZm9yIFgxMS9YYXV0aC5oCmNvbmZpZ3VyZTo3NDMxOiBnY2MgLUUgICAgICAgLUkvdXNy
L1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZp
Z3VyZTo3NDU0OiBjaGVja2luZyBmb3IgWGF1R2V0QXV0aEJ5QWRkciBpbiAtbFhhdQpjb25maWd1
cmU6NzQ3MDogZ2NjIC1vIGNvbmZ0ZXN0IC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cg
LW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAtTC91c3IvWDExUjYvbGliICBj
b25mdGVzdC5jICAgLWxYYXUgICAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0Ug
LWxtICAgICAxPiY1CmNvbmZpZ3VyZTo3NTE1OiBjaGVja2luZyBmb3IgdHRfYy5oCmNvbmZpZ3Vy
ZTo3NTIzOiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rl
di9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTo3NTE5OjE4OiB0dF9jLmg6IE5vIHN1Y2gg
ZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDc1
MTggImNvbmZpZ3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDx0dF9jLmg+CmNv
bmZpZ3VyZTo3NTE1OiBjaGVja2luZyBmb3IgVHQvdHRfYy5oCmNvbmZpZ3VyZTo3NTIzOiBnY2Mg
LUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29u
ZnRlc3Qub3V0CmNvbmZpZ3VyZTo3NTE5OjIxOiBUdC90dF9jLmg6IE5vIHN1Y2ggZmlsZSBvciBk
aXJlY3RvcnkKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDc1MTggImNvbmZp
Z3VyZSIKI2luY2x1ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDxUdC90dF9jLmg+CmNvbmZpZ3Vy
ZTo3NTE1OiBjaGVja2luZyBmb3IgZGVza3RvcC90dF9jLmgKY29uZmlndXJlOjc1MjM6IGdjYyAt
RSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25m
dGVzdC5vdXQKY29uZmlndXJlOjc1MTk6MjY6IGRlc2t0b3AvdHRfYy5oOiBObyBzdWNoIGZpbGUg
b3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA3NTE4ICJj
b25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVkZSA8ZGVza3RvcC90dF9jLmg+
CmNvbmZpZ3VyZTo3NjMyOiBjaGVja2luZyBmb3IgRHQvRHQuaApjb25maWd1cmU6NzY0MDogZ2Nj
IC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNv
bmZ0ZXN0Lm91dApjb25maWd1cmU6NzYzNjoxOTogRHQvRHQuaDogTm8gc3VjaCBmaWxlIG9yIGRp
cmVjdG9yeQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgNzYzNSAiY29uZmln
dXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKI2luY2x1ZGUgPER0L0R0Lmg+CmNvbmZpZ3VyZTo3
NzcyOiBjaGVja2luZyBmb3IgTERBUApjb25maWd1cmU6ODA4NTogY2hlY2tpbmcgZm9yIFBvc3Rn
cmVTUUwKY29uZmlndXJlOjgwOTA6IGNoZWNraW5nIGZvciBsaWJwcS1mZS5oCmNvbmZpZ3VyZTo4
MDk4OiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9u
dWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTo4MTIyOiBjaGVja2luZyBmb3IgUFFjb25uZWN0
ZGIgaW4gLWxwcQpjb25maWd1cmU6ODEzODogZ2NjIC1vIGNvbmZ0ZXN0IC1tYXJjaD1hdGhsb24g
LU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAt
TC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgLWxwcSAgIC1sWG11IC1sWHQgLWxYZXh0IC1s
WDExICAgLWxTTSAtbElDRSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjgxNzE6IGNoZWNraW5nIGZv
ciBQUWNvbm5lY3RTdGFydCBpbiAtbHBxCmNvbmZpZ3VyZTo4MTg3OiBnY2MgLW8gY29uZnRlc3Qg
LW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYv
aW5jbHVkZSAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAtbHBxICAgLWxYbXUg
LWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1sbSAgICAgMT4mNQpjb25maWd1cmU6ODIz
NTogY2hlY2tpbmcgZm9yIGdyYXBoaWNzIGxpYnJhcmllcwpjb25maWd1cmU6ODI2MTogY2hlY2tp
bmcgZm9yIFhwbSAtIG5vIG9sZGVyIHRoYW4gMy40Zgpjb25maWd1cmU6ODI3MzogZ2NjIC1vIGNv
bmZ0ZXN0ICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vz
ci9YMTFSNi9pbmNsdWRlICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgIC1sWHBt
ICAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUK
Y29uZmlndXJlOjgzMTc6IGNoZWNraW5nIGZvciAiRk9SX01TVyIgeHBtCmNvbmZpZ3VyZTo4MzI3
OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14
ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25m
dGVzdC5jICAtbFhwbSAgLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNF
IC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZTo4NDUyOiBjaGVja2luZyBmb3IgaW5mbGF0ZSBp
biAtbGMKY29uZmlndXJlOjg0Njg6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8z
IC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1M
L3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAtbGMgICAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4
dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKL3Zhci90bXAvcG9ydGFnZS94
ZW1hY3MtMjEuNC4xNS90ZW1wL2NjVnpSWEtMLm8oLnRleHQrMHhhKTogSW4gZnVuY3Rpb24gYG1h
aW4nOgo6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGluZmxhdGUnCmNvbGxlY3QyOiBsZCByZXR1
cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSA4
NDU3ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBPdmVycmlkZSBhbnkgZ2Nj
MiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hh
ciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBi
dWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHku
ICAqLwpjaGFyIGluZmxhdGUoKTsKCmludCBtYWluKCkgewppbmZsYXRlKCkKOyByZXR1cm4gMDsg
fQpjb25maWd1cmU6ODQ4NzogY2hlY2tpbmcgZm9yIGluZmxhdGUgaW4gLWx6CmNvbmZpZ3VyZTo4
NTAzOiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1t
bW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBj
b25mdGVzdC5jICAgLWx6ICAgLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1s
SUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZTo4OTk0OiBjaGVja2luZyBmb3IgWDExIGdy
YXBoaWNzIGxpYnJhcmllcwpjb25maWd1cmU6ODk5OTogY2hlY2tpbmcgZm9yIHRoZSBBdGhlbmEg
d2lkZ2V0cwpjb25maWd1cmU6OTA5NDogY2hlY2tpbmcgZm9yIFhhdzNkQ29tcHV0ZUJvdHRvbVNo
YWRvd1JHQiBpbiAtbFhhdzNkCmNvbmZpZ3VyZTo5MTEwOiBnY2MgLW8gY29uZnRlc3QgICAtbWFy
Y2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNs
dWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgLWxYYXczZCAgIC1sdGlm
ZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAt
bElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6OTIzNzogY2hlY2tpbmcgZm9yIFgxMS9Y
YXczZC9YYXdJbml0LmgKY29uZmlndXJlOjkyNDU6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYv
aW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjky
NjI6IGNoZWNraW5nIGZvciBYMTEvWGF3M2QvVGhyZWVELmgKY29uZmlndXJlOjkyNzA6IGdjYyAt
RSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25m
dGVzdC5vdXQKY29uZmlndXJlOjk1Mzc6IGNoZWNraW5nIGZvciBYbS9YbS5oCmNvbmZpZ3VyZTo5
NTQ1OiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9u
dWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTo5NTYyOiBjaGVja2luZyBmb3IgWG1TdHJpbmdG
cmVlIGluIC1sWG0KY29uZmlndXJlOjk1Nzg6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhs
b24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAg
ICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAtbFhtICAgLWx0aWZmIC1scG5nIC1s
anBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEg
LWxtICAgICAxPiY1CmNvbmZpZ3VyZTo5NjA3OiBjaGVja2luZyBmb3IgTGVzc3RpZgpjb25maWd1
cmU6MTEwODk6IGNoZWNraW5nIGZvciBjYnJ0CmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0
ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3Iv
WDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhh
dzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDEx
ICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5n
IGZvciBjbG9zZWRpcgpjb25maWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1h
dGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUg
ICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxw
bmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0Ug
LWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgZHVwMgpjb25m
aWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1t
M2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFS
Ni9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhw
bSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUK
Y29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgZWFjY2Vzcwpjb25maWd1cmU6MTExMTU6IGdj
YyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAg
ICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0
LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1s
WGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKL3Zhci90bXAvcG9ydGFn
ZS94ZW1hY3MtMjEuNC4xNS90ZW1wL2NjZDlObTQyLm8oLnRleHQrMHhhKTogSW4gZnVuY3Rpb24g
YG1haW4nOgo6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8gYGVhY2Nlc3MnCmNvbGxlY3QyOiBsZCBy
ZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGlu
ZSAxMTA5MiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVtIGhlYWRl
ciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAog
ICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBlYWNjZXNzKCk7IGJlbG93LiAgKi8KI2lu
Y2x1ZGUgPGFzc2VydC5oPgovKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUg
dG8gYXZvaWQgYW4gZXJyb3IuICAqLwovKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBt
YXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBh
cmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwpjaGFyIGVhY2Nlc3MoKTsK
CmludCBtYWluKCkgewoKLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5j
dGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMu
ICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKICAgIHNvbWV0aGluZyBzdGFydGlu
ZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwojaWYgZGVmaW5l
ZCAoX19zdHViX2VhY2Nlc3MpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX2VhY2Nlc3MpCmNob2tlIG1l
CiNlbHNlCmVhY2Nlc3MoKTsKI2VuZGlmCgo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMTA4OTog
Y2hlY2tpbmcgZm9yIGZtb2QKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFy
Y2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNs
dWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZm
IC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1s
SUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIGZwYXRo
Y29uZgpjb25maWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8z
IC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1M
L3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVn
IC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0g
ICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgZnJleHAKY29uZmlndXJlOjEx
MTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1t
bW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBj
b25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUg
LWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3Vy
ZToxMTA4OTogY2hlY2tpbmcgZm9yIGZ0aW1lCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0
ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3Iv
WDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhh
dzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDEx
ICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5n
IGZvciBnZXRhZGRyaW5mbwpjb25maWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJj
aD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1
ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYg
LWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJ
Q0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgZ2V0aG9z
dG5hbWUKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1P
MyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAt
TC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBl
ZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxt
ICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIGdldG5hbWVpbmZvCmNvbmZp
Z3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0z
ZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2
L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBt
IC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpj
b25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZvciBnZXRwYWdlc2l6ZQpjb25maWd1cmU6MTExMTU6
IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXgg
ICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0
ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0
IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjEx
MDg5OiBjaGVja2luZyBmb3IgZ2V0dGltZW9mZGF5CmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNv
bmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91
c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAt
bFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1s
WDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNr
aW5nIGZvciBnZXRjd2QKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9
YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRl
ICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1s
cG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNF
IC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIGdldHdkCmNv
bmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUg
LW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gx
MVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1s
WHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4m
NQovdmFyL3RtcC9wb3J0YWdlL3hlbWFjcy0yMS40LjE1L3RlbXAvY2NIblFlU3gubygudGV4dCsw
eGEpOiBJbiBmdW5jdGlvbiBgbWFpbic6Cjogd2FybmluZzogdGhlIGBnZXR3ZCcgZnVuY3Rpb24g
aXMgZGFuZ2Vyb3VzIGFuZCBzaG91bGQgbm90IGJlIHVzZWQuCmNvbmZpZ3VyZToxMTA4OTogY2hl
Y2tpbmcgZm9yIGxvZ2IKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9
YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRl
ICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1s
cG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNF
IC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIGxyYW5kNDgK
Y29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3Iv
WDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHog
LWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAx
PiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIG1hdGhlcnIKY29uZmlndXJlOjExMTE1
OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14
ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25m
dGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxY
dCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZTox
MTA4OTogY2hlY2tpbmcgZm9yIG1rZGlyCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0
ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDEx
UjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNk
IC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAg
LWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZv
ciBta3RpbWUKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9u
IC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAg
ICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1s
anBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEg
LWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHBlcnJvcgpjb25maWd1
cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Ru
b3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9s
aWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAt
bFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29u
ZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgcG9sbApjb25maWd1cmU6MTExMTU6IGdjYyAtbyBj
b25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkv
dXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAg
LWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAt
bFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBjaGVj
a2luZyBmb3IgcmFuZG9tCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNo
PWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVk
ZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAt
bHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElD
RSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZvciByZW5hbWUK
Y29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3Iv
WDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHog
LWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAx
PiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHJlc19pbml0CmNvbmZpZ3VyZToxMTEx
NTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1t
eCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29u
ZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1s
WHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQovdmFyL3RtcC9w
b3J0YWdlL3hlbWFjcy0yMS40LjE1L3RlbXAvY2N1SWxTVFYubygudGV4dCsweGEpOiBJbiBmdW5j
dGlvbiBgbWFpbic6CjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgcmVzX2luaXQnCmNvbGxlY3Qy
OiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz
OgojbGluZSAxMTA5MiAiY29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKLyogU3lzdGVt
IGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5
cGVzLAogICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciByZXNfaW5pdCgpOyBiZWxvdy4g
ICovCiNpbmNsdWRlIDxhc3NlcnQuaD4KLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJv
dG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQg
bWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgogICAgYnVpbHRpbiBhbmQgdGhl
biBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KY2hhciByZXNf
aW5pdCgpOwoKaW50IG1haW4oKSB7CgovKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMg
Zm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAgICB0byBhbHdheXMgZmFpbCB3aXRo
IEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgc29tZXRoaW5n
IHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiNp
ZiBkZWZpbmVkIChfX3N0dWJfcmVzX2luaXQpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX3Jlc19pbml0
KQpjaG9rZSBtZQojZWxzZQpyZXNfaW5pdCgpOwojZW5kaWYKCjsgcmV0dXJuIDA7IH0KY29uZmln
dXJlOjExMDg5OiBjaGVja2luZyBmb3IgcmludApjb25maWd1cmU6MTExMTU6IGdjYyAtbyBjb25m
dGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNy
L1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxY
YXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgx
MSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBjaGVja2lu
ZyBmb3Igcm1kaXIKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRo
bG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAg
ICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5n
IC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1s
cHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHNlbGVjdApjb25m
aWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1t
M2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFS
Ni9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhw
bSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUK
Y29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3Igc2V0aXRpbWVyCmNvbmZpZ3VyZToxMTExNTog
Z2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAg
ICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRl
c3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQg
LWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEw
ODk6IGNoZWNraW5nIGZvciBzZXRwZ2lkCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0
ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDEx
UjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNk
IC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAg
LWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZv
ciBzZXRsb2NhbGUKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRo
bG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAg
ICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5n
IC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1s
cHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHNldHNpZApjb25m
aWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1t
M2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFS
Ni9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhw
bSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUK
Y29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3Igc2lnYmxvY2sKY29uZmlndXJlOjExMTE1OiBn
Y2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAg
ICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVz
dC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAt
bFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4
OTogY2hlY2tpbmcgZm9yIHNpZ2hvbGQKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3Qg
ICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFS
Ni9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2Qg
LWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAt
bFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9y
IHNpZ3Byb2NtYXNrCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0
aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAg
ICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBu
ZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAt
bHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZvciBzbnByaW50Zgpj
b25maWd1cmU6MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBl
IC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9Y
MTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAt
bFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+
JjUKY29uZmlndXJlOjExMDk5OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQt
aW4gZnVuY3Rpb24gYHNucHJpbnRmJwpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZvciBzdHBj
cHkKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAt
cGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91
c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAt
bHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAg
ICAxPiY1CmNvbmZpZ3VyZToxMTA5OTogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1
aWx0LWluIGZ1bmN0aW9uIGBzdHBjcHknCmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHN0
cmVycm9yCmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAt
TzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAg
LUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpw
ZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1s
bSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNraW5nIGZvciB0enNldApjb25maWd1cmU6
MTExMTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cg
LW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIg
IGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFht
dSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmln
dXJlOjExMDg5OiBjaGVja2luZyBmb3IgdWxpbWl0CmNvbmZpZ3VyZToxMTExNTogZ2NjIC1vIGNv
bmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91
c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAt
bFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1s
WDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEwODk6IGNoZWNr
aW5nIGZvciB1c2xlZXAKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9
YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRl
ICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1s
cG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNF
IC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHdhaXRwaWQK
Y29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlw
ZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3Iv
WDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHog
LWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAx
PiY1CmNvbmZpZ3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIHZzbnByaW50Zgpjb25maWd1cmU6MTEx
MTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1t
bXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNv
bmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAt
bFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJl
OjExMDk5OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24g
YHZzbnByaW50ZicKY29uZmlndXJlOjExMDg5OiBjaGVja2luZyBmb3IgZnN5bmMKY29uZmlndXJl
OjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93
IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGli
ICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxY
bXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZp
Z3VyZToxMTA4OTogY2hlY2tpbmcgZm9yIGZ0cnVuY2F0ZQpjb25maWd1cmU6MTExMTU6IGdjYyAt
byBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAg
LUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMg
ICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4
dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMDg5OiBj
aGVja2luZyBmb3IgdW1hc2sKY29uZmlndXJlOjExMTE1OiBnY2MgLW8gY29uZnRlc3QgICAtbWFy
Y2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNs
dWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZm
IC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1s
SUNFIC1scHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTE1NjogY2hlY2tpbmcgZm9yIGdldHB0
CmNvbmZpZ3VyZToxMTE4MjogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBp
cGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNy
L1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6
IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAg
MT4mNQpjb25maWd1cmU6MTExNTY6IGNoZWNraW5nIGZvciBfZ2V0cHR5CmNvbmZpZ3VyZToxMTE4
MjogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1t
eCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29u
ZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1s
WHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQovdmFyL3RtcC9w
b3J0YWdlL3hlbWFjcy0yMS40LjE1L3RlbXAvY2NDbUtDQWUubygudGV4dCsweGEpOiBJbiBmdW5j
dGlvbiBgbWFpbic6CjogdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX2dldHB0eScKY29sbGVjdDI6
IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
CiNsaW5lIDExMTU5ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgovKiBTeXN0ZW0g
aGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlw
ZXMsCiAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIF9nZXRwdHkoKTsgYmVsb3cuICAq
LwojaW5jbHVkZSA8YXNzZXJ0Lmg+Ci8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3Rv
dHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1p
Z2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4g
aXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgX2dldHB0
eSgpOwoKaW50IG1haW4oKSB7CgovKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9y
IGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVO
T1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgc29tZXRoaW5nIHN0
YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiNpZiBk
ZWZpbmVkIChfX3N0dWJfX2dldHB0eSkgfHwgZGVmaW5lZCAoX19zdHViX19fX2dldHB0eSkKY2hv
a2UgbWUKI2Vsc2UKX2dldHB0eSgpOwojZW5kaWYKCjsgcmV0dXJuIDA7IH0KY29uZmlndXJlOjEx
MTU2OiBjaGVja2luZyBmb3IgZ3JhbnRwdApjb25maWd1cmU6MTExODI6IGdjYyAtbyBjb25mdGVz
dCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gx
MVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXcz
ZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAg
IC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMTU2OiBjaGVja2luZyBm
b3IgdW5sb2NrcHQKY29uZmlndXJlOjExMTgyOiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRo
bG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAg
ICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5n
IC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1s
cHEgLWxtICAgICAxPiY1CmNvbmZpZ3VyZToxMTE1NjogY2hlY2tpbmcgZm9yIHB0c25hbWUKY29u
ZmlndXJlOjExMTgyOiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAt
bTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDEx
UjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxY
cG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgICAxPiY1
CmNvbmZpZ3VyZToxMTE1NjogY2hlY2tpbmcgZm9yIGtpbGxwZwpjb25maWd1cmU6MTExODI6IGdj
YyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAg
ICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0
LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1s
WGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMTU2
OiBjaGVja2luZyBmb3IgdGNnZXRwZ3JwCmNvbmZpZ3VyZToxMTE4MjogZ2NjIC1vIGNvbmZ0ZXN0
ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDEx
UjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNk
IC1sdGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAg
LWxTTSAtbElDRSAtbHBxIC1sbSAgICAgMT4mNQpjb25maWd1cmU6MTEyMTE6IGNoZWNraW5nIGZv
ciBvcGVucHR5CmNvbmZpZ3VyZToxMTIzNzogZ2NjIC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxv
biAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAg
ICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1sdGlmZiAtbHBuZyAt
bGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxTTSAtbElDRSAtbHBx
IC1sbSAgICAgMT4mNQovdmFyL3RtcC9wb3J0YWdlL3hlbWFjcy0yMS40LjE1L3RlbXAvY2NvR0RY
VkcubygudGV4dCsweGEpOiBJbiBmdW5jdGlvbiBgbWFpbic6CjogdW5kZWZpbmVkIHJlZmVyZW5j
ZSB0byBgb3BlbnB0eScKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln
dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExMjE0ICJjb25maWd1cmUiCiNpbmNsdWRl
ICJjb25mZGVmcy5oIgovKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFu
ZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCiAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBj
aGFyIG9wZW5wdHkoKTsgYmVsb3cuICAqLwojaW5jbHVkZSA8YXNzZXJ0Lmg+Ci8qIE92ZXJyaWRl
IGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdl
IHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdj
YzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGls
bCBhcHBseS4gICovCmNoYXIgb3BlbnB0eSgpOwoKaW50IG1haW4oKSB7CgovKiBUaGUgR05VIEMg
bGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAg
ICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxs
eSBuYW1lZAogICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFt
ZSBpcyBhbiBhbGlhcy4gICovCiNpZiBkZWZpbmVkIChfX3N0dWJfb3BlbnB0eSkgfHwgZGVmaW5l
ZCAoX19zdHViX19fb3BlbnB0eSkKY2hva2UgbWUKI2Vsc2UKb3BlbnB0eSgpOwojZW5kaWYKCjsg
cmV0dXJuIDA7IH0KY29uZmlndXJlOjExMjU2OiBjaGVja2luZyBmb3Igb3BlbnB0eSBpbiAtbHV0
aWwKY29uZmlndXJlOjExMjcyOiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAt
cGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91
c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgLWx1dGlsICAgLWxYYXczZCAtbHRpZmYgLWxwbmcg
LWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxw
cSAtbG0gICAgIDE+JjUKY29uZmlndXJlOjExMzA3OiBjaGVja2luZyBmb3IgcHR5LmgKY29uZmln
dXJlOjExMzE1OiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+
L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZToxMTM1MTogY2hlY2tpbmcgZm9yIHN0
cm9wdHMuaApjb25maWd1cmU6MTEzNTk6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVk
ZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjExMzkyOiBj
aGVja2luZyBmb3IgaXNhc3RyZWFtCmNvbmZpZ3VyZToxMTQxODogZ2NjIC1vIGNvbmZ0ZXN0ICAg
LW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAgICAtSS91c3IvWDExUjYv
aW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3QuYyAgICAtbFhhdzNkIC1s
dGlmZiAtbHBuZyAtbGpwZWcgLWx6IC1sWHBtIC1sWG11IC1sWHQgLWxYZXh0IC1sWDExICAgLWxT
TSAtbElDRSAtbHBxIC1sbSAgICAtbHV0aWwgIDE+JjUKY29uZmlndXJlOjExNDQ5OiBjaGVja2lu
ZyBmb3Igc3RydGlvLmgKY29uZmlndXJlOjExNDU3OiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2
L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTox
MTQ1MzoyMDogc3RydGlvLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBm
YWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExNDUyICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25m
ZGVmcy5oIgojaW5jbHVkZSA8c3RydGlvLmg+CmNvbmZpZ3VyZToxMTQ5NDogY2hlY2tpbmcgZm9y
IGdldGxvYWRhdmcKY29uZmlndXJlOjExNTIwOiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRo
bG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAg
ICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5n
IC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1s
cHEgLWxtICAgIC1sdXRpbCAgMT4mNQpjb25maWd1cmU6MTE1NTM6IGNoZWNraW5nIGZvciBzeXMv
bG9hZGF2Zy5oCmNvbmZpZ3VyZToxMTU2MTogZ2NjIC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNs
dWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MTE1NTc6
MjU6IHN5cy9sb2FkYXZnLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBm
YWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDExNTU2ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25m
ZGVmcy5oIgojaW5jbHVkZSA8c3lzL2xvYWRhdmcuaD4KY29uZmlndXJlOjExNzM4OiBjaGVja2lu
ZyB3aGV0aGVyIG5ldGRiIGRlY2xhcmVzIGhfZXJybm8KY29uZmlndXJlOjExNzQ3OiBnY2MgLW8g
Y29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1J
L3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAg
IC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQg
LWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgIC1sdXRpbCAgMT4mNQpjb25maWd1cmU6MTE3
Njc6IGNoZWNraW5nIGZvciBzaWdzZXRqbXAKY29uZmlndXJlOjExNzc2OiBnY2MgLWMgICAtbWFy
Y2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNs
dWRlIGNvbmZ0ZXN0LmMgMT4mNQpjb25maWd1cmU6MTE3OTY6IGNoZWNraW5nIHdoZXRoZXIgbG9j
YWx0aW1lIGNhY2hlcyBUWgpjb25maWd1cmU6MTE4MzU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJj
aD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1
ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYg
LWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJ
Q0UgLWxwcSAtbG0gICAgLWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMTg2NTogY2hlY2tpbmcgd2hl
dGhlciBnZXR0aW1lb2ZkYXkgYWNjZXB0cyBvbmUgb3IgdHdvIGFyZ3VtZW50cwpjb25maWd1cmU6
MTE4ODg6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cg
LW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIg
IGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFht
dSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgLWx1dGlsICAxPiY1
CmNvbmZpZ3VyZToxMTkxMDogY2hlY2tpbmcgZm9yIGlubGluZQpjb25maWd1cmU6MTE5MjI6IGdj
YyAtYyAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNy
L1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyAxPiY1CmNvbmZpZ3VyZToxMTk2MzogY2hlY2tpbmcg
Zm9yIHdvcmtpbmcgYWxsb2NhLmgKY29uZmlndXJlOjExOTczOiBnY2MgLW8gY29uZnRlc3QgICAt
bWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9p
bmNsdWRlICAgICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0
aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNN
IC1sSUNFIC1scHEgLWxtICAgIC1sdXRpbCAgMT4mNQpjb25maWd1cmU6MTE5OTc6IGNoZWNraW5n
IGZvciBhbGxvY2EKY29uZmlndXJlOjEyMDI4OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRo
bG9uIC1PMyAtcGlwZSAtbTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAg
ICAgICAtTC91c3IvWDExUjYvbGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5n
IC1sanBlZyAtbHogLWxYcG0gLWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1s
cHEgLWxtICAgIC1sdXRpbCAgMT4mNQpjb25maWd1cmU6MTIyMDI6IGNoZWNraW5nIGZvciB2Zm9y
ay5oCmNvbmZpZ3VyZToxMjIxMDogZ2NjIC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNv
bmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MTIyMDY6MTk6IHZm
b3JrLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
bSB3YXM6CiNsaW5lIDEyMjA1ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5oIgojaW5j
bHVkZSA8dmZvcmsuaD4KY29uZmlndXJlOjEyMjM4OiBjaGVja2luZyBmb3Igd29ya2luZyB2Zm9y
awpjb25maWd1cmU6MTIzMzY6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1w
aXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vz
ci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1s
eiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAg
LWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMjM2MjogY2hlY2tpbmcgZm9yIHdvcmtpbmcgc3RyY29s
bApjb25maWd1cmU6MTIzNzU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1w
aXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vz
ci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1s
eiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAg
LWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMjQwMzogY2hlY2tpbmcgZm9yIGdldHBncnAKY29uZmln
dXJlOjEyNDI5OiBnY2MgLW8gY29uZnRlc3QgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAtbTNk
bm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlICAgICAgICAtTC91c3IvWDExUjYv
bGliICBjb25mdGVzdC5jICAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0g
LWxYbXUgLWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1scHEgLWxtICAgIC1sdXRpbCAg
MT4mNQpjb25maWd1cmU6MTI0NTc6IGNoZWNraW5nIHdoZXRoZXIgZ2V0cGdycCB0YWtlcyBubyBh
cmd1bWVudApjb25maWd1cmU6MTI1MTU6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24g
LU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAg
IC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxq
cGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAt
bG0gICAgLWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMjU0MjogY2hlY2tpbmcgZm9yIHdvcmtpbmcg
bW1hcApjb25maWd1cmU6MTI1Nzg6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8z
IC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1M
L3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVn
IC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0g
ICAgLWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMjYwNzogY2hlY2tpbmcgZm9yIE1fTU1BUF9USFJF
U0hPTEQKY29uZmlndXJlOjEyNjIxOiBnY2MgLWMgICAtbWFyY2g9YXRobG9uIC1PMyAtcGlwZSAt
bTNkbm93IC1tbW14ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgMT4mNQpj
b25maWd1cmU6MTI2NDY6IGNoZWNraW5nIGZvciB0ZXJtaW9zLmgKY29uZmlndXJlOjEyNjU0OiBn
Y2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+
Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZToxMjczNzogY2hlY2tpbmcgZm9yIHNvY2tldApjb25maWd1
cmU6MTI3NjM6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Ru
b3cgLW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9s
aWIgIGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAt
bFhtdSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgLWx1dGlsICAx
PiY1CmNvbmZpZ3VyZToxMjc3ODogY2hlY2tpbmcgZm9yIG5ldGluZXQvaW4uaApjb25maWd1cmU6
MTI3ODY6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2
L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjEyODAzOiBjaGVja2luZyBmb3IgYXJwYS9p
bmV0LmgKY29uZmlndXJlOjEyODExOiBnY2MgLUUgICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUg
Y29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZToxMjgzNjogY2hl
Y2tpbmcgZm9yIHN1bl9sZW4gbWVtYmVyIGluIHN0cnVjdCBzb2NrYWRkcl91bgpjb25maWd1cmU6
MTI4NDk6IGdjYyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cg
LW1tbXggICAgICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIg
IGNvbmZ0ZXN0LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFht
dSAtbFh0IC1sWGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgLWx1dGlsICAxPiY1
CmNvbmZpZ3VyZTogSW4gZnVuY3Rpb24gYG1haW4nOgpjb25maWd1cmU6MTI4NDU6IGVycm9yOiBz
dHJ1Y3R1cmUgaGFzIG5vIG1lbWJlciBuYW1lZCBgc3VuX2xlbicKY29uZmlndXJlOiBmYWlsZWQg
cHJvZ3JhbSB3YXM6CiNsaW5lIDEyODM4ICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVmcy5o
IgoKI2luY2x1ZGUgPHN5cy90eXBlcy5oPgojaW5jbHVkZSA8c3lzL3NvY2tldC5oPgojaW5jbHVk
ZSA8c3lzL3VuLmg+CiAgICAgIAppbnQgbWFpbigpIHsKc3RhdGljIHN0cnVjdCBzb2NrYWRkcl91
biB4OyB4LnN1bl9sZW4gPSAxOwo7IHJldHVybiAwOyB9CmNvbmZpZ3VyZToxMjg2NzogY2hlY2tp
bmcgZm9yIGlwX21yZXEgc3RydWN0IGluIG5ldGluZXQvaW4uaApjb25maWd1cmU6MTI4Nzk6IGdj
YyAtbyBjb25mdGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAg
ICAgLUkvdXNyL1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0
LmMgICAgLWxYYXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1s
WGV4dCAtbFgxMSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgLWx1dGlsICAxPiY1CmNvbmZpZ3Vy
ZToxMjkxMDogY2hlY2tpbmcgZm9yIG1zZ2dldApjb25maWd1cmU6MTI5MzY6IGdjYyAtbyBjb25m
dGVzdCAgIC1tYXJjaD1hdGhsb24gLU8zIC1waXBlIC1tM2Rub3cgLW1tbXggICAgICAgLUkvdXNy
L1gxMVI2L2luY2x1ZGUgICAgICAgIC1ML3Vzci9YMTFSNi9saWIgIGNvbmZ0ZXN0LmMgICAgLWxY
YXczZCAtbHRpZmYgLWxwbmcgLWxqcGVnIC1seiAtbFhwbSAtbFhtdSAtbFh0IC1sWGV4dCAtbFgx
MSAgIC1sU00gLWxJQ0UgLWxwcSAtbG0gICAgLWx1dGlsICAxPiY1CmNvbmZpZ3VyZToxMjk1MTog
Y2hlY2tpbmcgZm9yIHN5cy9pcGMuaApjb25maWd1cmU6MTI5NTk6IGdjYyAtRSAgICAgICAtSS91
c3IvWDExUjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29u
ZmlndXJlOjEyOTc2OiBjaGVja2luZyBmb3Igc3lzL21zZy5oCmNvbmZpZ3VyZToxMjk4NDogZ2Nj
IC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNv
bmZ0ZXN0Lm91dApjb25maWd1cmU6MTMwMjI6IGNoZWNraW5nIGZvciBkaXJlbnQuaApjb25maWd1
cmU6MTMwMzA6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSBjb25mdGVzdC5jID4v
ZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjEzMDk4OiBjaGVja2luZyBmb3Igbmxp
c3QuaApjb25maWd1cmU6MTMxMDY6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYvaW5jbHVkZSBj
b25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjEzMTM2OiBjaGVj
a2luZyBmb3Igc291bmQgc3VwcG9ydApjb25maWd1cmU6MTMzMTU6IGNoZWNraW5nIGZvciBtYWNo
aW5lL3NvdW5kY2FyZC5oCmNvbmZpZ3VyZToxMzMyMzogZ2NjIC1FICAgICAgIC1JL3Vzci9YMTFS
Ni9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6
MTMzMTk6MzE6IG1hY2hpbmUvc291bmRjYXJkLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkK
Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEzMzE4ICJjb25maWd1cmUiCiNp
bmNsdWRlICJjb25mZGVmcy5oIgojaW5jbHVkZSA8bWFjaGluZS9zb3VuZGNhcmQuaD4KY29uZmln
dXJlOjEzMzE1OiBjaGVja2luZyBmb3Igc3lzL3NvdW5kY2FyZC5oCmNvbmZpZ3VyZToxMzMyMzog
Z2NjIC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAy
PmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MTMzNzc6IGNoZWNraW5nIGZvciBhdWRpby9hdWRpb2xp
Yi5oCmNvbmZpZ3VyZToxMzM4NTogZ2NjIC1FICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNv
bmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0Lm91dApjb25maWd1cmU6MTMzODE6Mjg6IGF1
ZGlvL2F1ZGlvbGliLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOiBmYWls
ZWQgcHJvZ3JhbSB3YXM6CiNsaW5lIDEzMzgwICJjb25maWd1cmUiCiNpbmNsdWRlICJjb25mZGVm
cy5oIgojaW5jbHVkZSA8YXVkaW8vYXVkaW9saWIuaD4KY29uZmlndXJlOjEzNTk1OiBjaGVja2lu
ZyBmb3IgVFRZLXJlbGF0ZWQgZmVhdHVyZXMKY29uZmlndXJlOjEzNjYwOiBjaGVja2luZyBmb3Ig
bmN1cnNlcy9jdXJzZXMuaApjb25maWd1cmU6MTM2Njg6IGdjYyAtRSAgICAgICAtSS91c3IvWDEx
UjYvaW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJl
OjEzNjY0OjI4OiBuY3Vyc2VzL2N1cnNlcy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNv
bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMzY2MyAiY29uZmlndXJlIgojaW5j
bHVkZSAiY29uZmRlZnMuaCIKI2luY2x1ZGUgPG5jdXJzZXMvY3Vyc2VzLmg+CmNvbmZpZ3VyZTox
MzY5MDogY2hlY2tpbmcgZm9yIG5jdXJzZXMvdGVybS5oCmNvbmZpZ3VyZToxMzY5ODogZ2NjIC1F
ICAgICAgIC1JL3Vzci9YMTFSNi9pbmNsdWRlIGNvbmZ0ZXN0LmMgPi9kZXYvbnVsbCAyPmNvbmZ0
ZXN0Lm91dApjb25maWd1cmU6MTM2OTQ6MjY6IG5jdXJzZXMvdGVybS5oOiBObyBzdWNoIGZpbGUg
b3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgojbGluZSAxMzY5MyAi
Y29uZmlndXJlIgojaW5jbHVkZSAiY29uZmRlZnMuaCIKI2luY2x1ZGUgPG5jdXJzZXMvdGVybS5o
Pgpjb25maWd1cmU6MTM3Mjg6IGNoZWNraW5nIGZvciBuY3Vyc2VzL2N1cnNlcy5oCmNvbmZpZ3Vy
ZToxMzczNjogZ2NjIC1FICAgLUkvdXNyL2luY2x1ZGUvbmN1cnNlcyAgICAgLUkvdXNyL1gxMVI2
L2luY2x1ZGUgY29uZnRlc3QuYyA+L2Rldi9udWxsIDI+Y29uZnRlc3Qub3V0CmNvbmZpZ3VyZTox
MzczMjoyODogbmN1cnNlcy9jdXJzZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25m
aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTM3MzEgImNvbmZpZ3VyZSIKI2luY2x1
ZGUgImNvbmZkZWZzLmgiCiNpbmNsdWRlIDxuY3Vyc2VzL2N1cnNlcy5oPgpjb25maWd1cmU6MTQw
Njg6IGNoZWNraW5nIGZvciBkYXRhYmFzZSBzdXBwb3J0CmNvbmZpZ3VyZToxNDA3MzogY2hlY2tp
bmcgZm9yIG5kYm0uaApjb25maWd1cmU6MTQwODE6IGdjYyAtRSAgICAgICAtSS91c3IvWDExUjYv
aW5jbHVkZSBjb25mdGVzdC5jID4vZGV2L251bGwgMj5jb25mdGVzdC5vdXQKY29uZmlndXJlOjE0
MTExOiBjaGVja2luZyBmb3IgZGJtX29wZW4gaW4gLWxnZGJtCmNvbmZpZ3VyZToxNDEyNzogZ2Nj
IC1vIGNvbmZ0ZXN0ICAgLW1hcmNoPWF0aGxvbiAtTzMgLXBpcGUgLW0zZG5vdyAtbW1teCAgICAg
ICAtSS91c3IvWDExUjYvaW5jbHVkZSAgICAgICAgLUwvdXNyL1gxMVI2L2xpYiAgY29uZnRlc3Qu
YyAgIC1sZ2RibSAgIC1sWGF3M2QgLWx0aWZmIC1scG5nIC1sanBlZyAtbHogLWxYcG0gLWxYbXUg
LWxYdCAtbFhleHQgLWxYMTEgICAtbFNNIC1sSUNFIC1sZ3BtIC1sbmN1cnNlcyAtbHBxIC1sbSAg
ICAtbHV0aWwgIDE+JjUKL3Zhci90bXAvcG9ydGFnZS94ZW1hY3MtMjEuNC4xNS90ZW1wL2NjT2V1
eVZaLm8oLnRleHQrMHhhKTogSW4gZnVuY3Rpb24gYG1haW4nOgo6IHVuZGVmaW5lZCByZWZlcmVu
Y2UgdG8gYGRibV9vcGVuJwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25m
aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKI2xpbmUgMTQxMTYgImNvbmZpZ3VyZSIKI2luY2x1
ZGUgImNvbmZkZWZzLmgiCi8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0
byBhdm9pZCBhbiBlcnJvci4gICovCi8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1h
dGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFy
Z3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCmNoYXIgZGJtX29wZW4oKTsK
CmludCBtYWluKCkgewpkYm1fb3BlbigpCjsgcmV0dXJuIDA7IH0K
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>37403</attachid>
            <date>2004-08-14 03:05 0000</date>
            <desc>enable xemacs to build using libgdbm 1.8.3</desc>
            <filename>xemacs-21.4.12-gdbm3.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIHhlbWFjcy0yMS40LjEyL2NvbmZpZ3VyZS5pbgkyMDAzLTAxLTA3IDAzOjU3OjAzLjAwMDAw
MDAwMCArMDAwMAorKysgeGVtYWNzLTIxLjQuMTItbW9kL2NvbmZpZ3VyZS5pbgkyMDA0LTA4LTE0
IDExOjU3OjE4LjI5NTg4OTY2NCArMDEwMApAQCAtNDM0Nyw5ICs0MzQ3LDkgQEAKIGlmIHRlc3Qg
IiR3aXRoX2RhdGFiYXNlX2dkYm0iICE9ICJubyI7IHRoZW4KICAgQUNfQ0hFQ0tfTElCKGdkYm0s
IGRibV9vcGVuLCBbCi0gICB3aXRoX2RhdGFiYXNlX2dkYm09eWVzIHdpdGhfZGF0YWJhc2VfZGJt
PW5vIGxpYmRibT0tbGdkYm1dLCBbCisgICB3aXRoX2RhdGFiYXNlX2dkYm09eWVzIHdpdGhfZGF0
YWJhc2VfZGJtPW5vIGxpYmRibT0iLWxnZGJtX2NvbXBhdCAtbGdkYm0iXSwgWwogICAgaWYgdGVz
dCAiJHdpdGhfZGF0YWJhc2VfZ2RibSIgPSAieWVzIjsgdGhlbgogICAgICBYRV9ESUUoIlJlcXVp
cmVkIEdOVSBEQk0gc3VwcG9ydCBjYW5ub3QgYmUgcHJvdmlkZWQuIikKICAgIGZpCi0gICB3aXRo
X2RhdGFiYXNlX2dkYm09bm9dKQorICAgd2l0aF9kYXRhYmFzZV9nZGJtPW5vXSwtbGdkYm1fY29t
cGF0KQogZmkKIAo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38132</attachid>
            <date>2004-08-24 18:36 0000</date>
            <desc>updated patch for xemacs-21.4.15-r1 to enable xemacs to build using libgdbm 1.8.3</desc>
            <filename>xemacs-21.4.15-r1.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIHhlbWFjcy0yMS40LjE1L2NvbmZpZ3VyZS5pbi5vcmlnCTIwMDQtMDEtMjQgMTU6Mzc6NTQu
MDAwMDAwMDAwICsxMTAwCisrKyB4ZW1hY3MtMjEuNC4xNS9jb25maWd1cmUuaW4JMjAwNC0wOC0y
NSAxMTowODozNy41MzI1OTE5NDQgKzEwMDAKQEAgLTQ0MjAsMTEgKzQ0MjAsMTEgQEAKIGRubCBD
aGVjayBmb3IgREJNIHN1cHBvcnQgaW4gbGliZ2RibS4KIGlmIHRlc3QgIiR3aXRoX2RhdGFiYXNl
X2dkYm0iICE9ICJubyI7IHRoZW4KICAgQUNfQ0hFQ0tfTElCKGdkYm0sIGRibV9vcGVuLCBbCi0g
ICB3aXRoX2RhdGFiYXNlX2dkYm09eWVzIHdpdGhfZGF0YWJhc2VfZGJtPW5vIGxpYmRibT0tbGdk
Ym1dLCBbCisgICB3aXRoX2RhdGFiYXNlX2dkYm09eWVzIHdpdGhfZGF0YWJhc2VfZGJtPW5vIGxp
YmRibT0iLWxnZGJtX2NvbXBhdCAtbGdkYm0iXSwgWwogICAgaWYgdGVzdCAiJHdpdGhfZGF0YWJh
c2VfZ2RibSIgPSAieWVzIjsgdGhlbgogICAgICBYRV9ESUUoIlJlcXVpcmVkIEdOVSBEQk0gc3Vw
cG9ydCBjYW5ub3QgYmUgcHJvdmlkZWQuIikKICAgIGZpCi0gICB3aXRoX2RhdGFiYXNlX2dkYm09
bm9dKQorICAgd2l0aF9kYXRhYmFzZV9nZGJtPW5vXSwtbGdkYm1fY29tcGF0KQogZmkKIAogZG5s
IENoZWNrIGZvciBEQk0gc3VwcG9ydCBpbiBsaWJjIGFuZCBsaWJkYm0uCg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38138</attachid>
            <date>2004-08-24 19:23 0000</date>
            <desc>applies patch to configure.in to allow libgdm to be used and then calls autoconf-2.13</desc>
            <filename>xemacs-21.4.15-r1.ebuild.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIHhlbWFjcy0yMS40LjE1LXIxLmVidWlsZC5vcmlnCTIwMDQtMDgtMjUgMTE6NDU6MDMuNTg5
MjYwODE2ICsxMDAwCisrKyB4ZW1hY3MtMjEuNC4xNS1yMS5lYnVpbGQJMjAwNC0wOC0yNSAxMjow
MDozMC42MDIzMzM0MDggKzEwMDAKQEAgLTU4LDYgKzU4LDEwIEBACiAJY2QgJHtTfQogCWVwYXRj
aCAke0ZJTEVTRElSfS9lbW9kdWxlcy5pbmZvLTIxLjQuOC1nZW50b28ucGF0Y2gKIAorCSMgcGF0
Y2ggZm9yIGdkYm0gcHJvYmxlbQorCWVwYXRjaCAke0ZJTEVTRElSfS94ZW1hY3MtMjEuNC4xNS1y
MS5wYXRjaAorCWF1dG9jb25mLTIuMTMKKwogCWVwYXRjaCAke0ZJTEVTRElSfS9xdWljay1maXgu
cGF0Y2gKIAkjIGNvcHkgTmV4dF9YRW1hY3MgaWNvbnMgaW50byB0b29sYmFyIGRpcgogCWNwICR7
V09SS0RJUn0vTmVYVC5YRW1hY3MveGVtYWNzLWljb25zLyogJHtTfS9ldGMvdG9vbGJhci8K
</data>        

          </attachment>
    </bug>

</bugzilla>