<?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>142565</bug_id>
          
          <creation_ts>2006-08-02 10:35 0000</creation_ts>
          <short_desc>app-text/hunspell-1.1.4-r1 compile failure</short_desc>
          <delta_ts>2006-08-05 18:27:16 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>2006.0</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>
          <dependson>142852</dependson>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jslootbeek@gmail.com</reporter>
          <assigned_to>kevquinn@gentoo.org</assigned_to>
          <cc>app-dicts@gentoo.org</cc>
    
    <cc>base-system@gentoo.org</cc>
    
    <cc>bugs.gentoo.org@gurganus.name</cc>
    
    <cc>maxposedon@gmail.com</cc>

      

      
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-02 10:35:25 0000</bug_when>
            <thetext>When emerging hunspell-1.1.4-r1 I recieve the following error.

make[1]: Leaving directory `/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/intl&apos;
Making install in po
make[1]: Entering directory `/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po&apos;
make[1]: MKINSTALLDIRS@: Command not found
make[1]: *** [install-data-yes] Error 127
make[1]: Leaving directory `/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po&apos;
make: *** [install-recursive] Error 1

!!! ERROR: app-text/hunspell-1.1.4-r1 failed.
Call stack:
  ebuild.sh, line 1543:   Called dyn_install
  ebuild.sh, line 1017:   Called src_install
  hunspell-1.1.4-r1.ebuild, line 61:   Called die

!!! make install failed
!!! If you need support, post the topmost build error, and the call stack if relevant.


emerge --info

Portage 2.1.1_pre4-r1 (default-linux/x86/2006.0, gcc-4.1.1/vanilla, glibc-2.4-r3, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 Intel(R) Pentium(R) 4 CPU 2.66GHz
Gentoo Base System version 1.12.4
ccache version 2.4 [enabled]
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r2
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.17
sys-devel/gcc-config: 2.0.0_rc1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-O2 -march=pentium4 -pipe -fomit-frame-pointer&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/share/X11/xkb /usr/share/config&quot;
CONFIG_PROTECT_MASK=&quot;/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo&quot;
CXXFLAGS=&quot;-O2 -march=pentium4 -pipe -fomit-frame-pointer&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoconfig ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict&quot;
GENTOO_MIRRORS=&quot;http://gentoo.osuosl.org/ ftp://gentoo.mirrored.ca http://adelie.polymtl.ca/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://mirrors.acm.cs.rpi.edu/gentoo/ http://gentoo.seren.com/gentoo&quot;
LINGUAS=&quot;en nl&quot;
MAKEOPTS=&quot;-j2&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_RSYNC_OPTS=&quot;--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=&apos;/distfiles&apos; --exclude=&apos;/local&apos; --exclude=&apos;/packages&apos;&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 apache2 apm avi bitmap-fonts cairo cli crypt cups dlloader dri emboss encode firefox foomaticdb gdbm gif gnome gpm gtk gtk2 imlib isdnlog java jpeg libg++ libwww mikmod mpeg ncurses nls no-seamonkey noaudio nptl nptlonly opengl pam pcre pdflib perl png pppd python qt quicktime readline reflection sdl session spell spl ssl tcpd truetype truetype-fonts type1-fonts udev unicode userlocales xml xmms xorg xv zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_en linguas_nl userland_GNU&quot;
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

I will attach the entire output in a file.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-02 10:36:33 0000</bug_when>
            <thetext>Created an attachment (id=93281)
complete emerge output

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-02 14:31:53 0000</bug_when>
            <thetext>Hmm; that&apos;s bizarre.  Your log output is missing a patch and the usual results of elibtoolize.  Could you check your copy of the hunspell-1.1.4-r1.ebuild file?  The src_unpack() function should contain:

    epatch &quot;${FILESDIR}/${P}-renameexes.patch&quot;

    # Makefile.am modified, libtool added, hence autoreconfi
    # and elibtoolize.
    WANT_AUTOMAKE=&quot;1.9&quot; eautoreconf
    elibtoolize

The failure looks like the result of something from autotools.


Adding base-system as I&apos;m not up to speed on what&apos;s happening with elibtoolize recently; any hints gratefully received, people.  I have autoconf-2.59-r7 rather than 2.60 - for comparison this is what the unpack phase looks like for me:

&gt;&gt;&gt; Unpacking source...
&gt;&gt;&gt; Unpacking hunspell-1.1.4.tar.gz to /data/g2/tmp/portage/hunspell-1.1.4-r1/work
 * Applying hunspell-1.1.4-libtool.patch ... 
 * Applying hunspell-1.1.4-renameexes.patch ...  
 * Running eautoreconf in &apos;/data/g2/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4&apos; ...
 * Running aclocal ...                
 * Running libtoolize --copy --force --automake ... 
 * Running aclocal ...                      
 * Running autoconf ...                       
 * Running autoheader ...                         
 * Running automake --add-missing --copy ...                                            
 * Running elibtoolize in: hunspell-1.1.4
 *   Applying max_cmd_len-1.5.0.patch ...
 *   Applying sed-1.5.6.patch ...
&gt;&gt;&gt; Source unpacked.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-02 16:30:09 0000</bug_when>
            <thetext>sure, i&apos;ll have to do this tomorrow (8/3) when i return to the office. I will check it first thing in the AM (8am EST)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jakub@gentoo.org</who>
            <bug_when>2006-08-03 03:31:36 0000</bug_when>
            <thetext>*** Bug 142628 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 05:11:21 0000</bug_when>
            <thetext>src_unpack() function of hunspell-1.1.4-r1.ebuild

src_unpack() {
        unpack ${A}
        cd ${S}
        sed -i -e &apos;s:tail +:tail -n +:&apos; ${S}/tests/test.sh ||\
                die &quot;Failed to fix-up tail for POSIX compliance&quot;
        # Rework to use libtool, so as to get shared libraries
        # where appropriate, instead of the archive-only approach
        # taken upstream.
        epatch &quot;${FILESDIR}/${P}-libtool.patch&quot;
        # Upstream package creates executables &apos;example&apos;, &apos;munch&apos;
        # and &apos;unmunch&apos; which are too generic to be placed in
        # /usr/bin - this patch prefixes them with &apos;hunspell-&apos;.
        # Also includes a small change for libtool.
        epatch &quot;${FILESDIR}/${P}-renameexes.patch&quot;

        # Makefile.am modified, libtool added, hence autoreconfi
        # and elibtoolize.
        WANT_AUTOMAKE=&quot;1.9&quot; eautoreconf
        elibtoolize
}

Another run (same failure) shows the same as what you posted.

&gt;&gt;&gt; Unpacking source...
&gt;&gt;&gt; Unpacking hunspell-1.1.4.tar.gz to /var/tmp/portage/hunspell-1.1.4-r1/work
 * Applying hunspell-1.1.4-libtool.patch ...                                                                                                                                                                                
 * Applying hunspell-1.1.4-renameexes.patch ...                                                                                                                                                                             
 * Running eautoreconf in &apos;/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4&apos; ...
 * Running aclocal ...                                                                                                                                                                                                      
 * Running libtoolize --copy --force --automake ...                                                                                                                                                                         
 * Running aclocal ...                                                                                                                                                                                                      
 * Running autoconf ...                                                                                                                                                                                                     
 * Running autoheader ...                                                                                                                                                                                                   
 * Running automake --add-missing --copy ...                                                                                                                                                                                   
 * Running elibtoolize in: hunspell-1.1.4
 *   Applying max_cmd_len-1.5.0.patch ...
 *   Applying sed-1.5.6.patch ...
&gt;&gt;&gt; Source unpacked.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>lorca_not_orca@me.by</who>
            <bug_when>2006-08-03 05:56:27 0000</bug_when>
            <thetext>same problem.
emerge --info
Portage 2.1.1_pre4-r2 (default-linux/x86/2006.0, gcc-4.1.1/vanilla, glibc-2.4-r3, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 Intel(R) Pentium(R) M processor 1.60GHz
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.17
sys-devel/gcc-config: [Not Present]
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r5
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-Os -march=pentium-m -fomit-frame-pointer&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config&quot;
CONFIG_PROTECT_MASK=&quot;/etc/env.d /etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c&quot;
CXXFLAGS=&quot;-Os -march=pentium-m -fomit-frame-pointer&quot;
DISTDIR=&quot;/usr/distfiles&quot;
FEATURES=&quot;autoconfig distlocks metadata-transfer sandbox sfperms strict&quot;
GENTOO_MIRRORS=&quot;http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo&quot;
LANG=&quot;ru_RU.UTF8&quot;
LC_ALL=&quot;&quot;
LINGUAS=&quot;en ru&quot;
MAKEOPTS=&quot;-j2&quot;
PKGDIR=&quot;/usr/packages&quot;
PORTAGE_RSYNC_OPTS=&quot;--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=&apos;/distfiles&apos; --exclude=&apos;/local&apos; --exclude=&apos;/packages&apos;&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 a52 aac aalib acpi alsa apm avi bash-completion berkdb bitmap-fonts bluetooth bzip2 cdr cli crypt cups dbus dlloader dri dvd dvdr dvdread emboss encode fbcon ffmpeg foomaticdb gif gpm gtk2 hal ieee1394 imagemagick imlib irda isdnlog jikes jpeg jpeg2k kde kdeenablefinal kdehiddenvisibility libcaca libg++ libwww live lm_sensors mad mikmod mmx mp3 mpeg multislot ncurses nls nptl nptlonly nsplugin ogg opengl pam pcmcia pcre pdf pdflib png pppd profile python qt qt3 quicktime readline real reflection rtc samba sasl sdl session spell spl sse sse2 ssl symlink tcpd tetex tga threads tiff truetype truetype-fonts type1-fonts udev unicode urandom usb userlocales vorbis wifi win32codecs wmf xcomposite xine xml xml2 xorg xosd xv xvid xvmc zlib elibc_glibc input_devices_mouse input_devices_keyboard input_devices_synaptics kernel_linux linguas_en linguas_ru userland_GNU video_cards_i810 video_cards_i915&quot;
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-03 11:52:26 0000</bug_when>
            <thetext>ok; tried autotools-2.60 and it still works fine here, so still can&apos;t reproduce.

Regarding what looked like a difference in output turned out to be an artifact of the web browser; your original attachment did include the data I expected, just missing some newlines for some reason.


Can you attach the following files from the working directory, please?

/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/config.log
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/aclocal.m4
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/configure
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po/Makefile.in
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po/Makefile

Thanks.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 12:01:04 0000</bug_when>
            <thetext>Created an attachment (id=93364)
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/config.log

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 12:01:33 0000</bug_when>
            <thetext>Created an attachment (id=93365)
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/aclocal.m4

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 12:02:13 0000</bug_when>
            <thetext>Created an attachment (id=93366)
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/configure

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 12:02:31 0000</bug_when>
            <thetext>Created an attachment (id=93367)
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po/Makefile.in

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 12:02:46 0000</bug_when>
            <thetext>Created an attachment (id=93368)
/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/po/Makefile

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-03 13:05:27 0000</bug_when>
            <thetext>I must admit to being somewhat stumped.  The files you attached confirm that autotools is indeed failing to expand MKINSTALLDIRS properly; for comparison Makefile here contains:

MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs

whereas yours has it unexpanded.  It&apos;s also missing entirely from your configure and aclocal.m4, whereas there&apos;s a whole bunch of stuff about it in mine (both files are supposed to be regenerated, btw).

A couple of wild guesses:

What filesystem do you have on /var/tmp/portage? (is it tmpfs?)
What version of sys-devel/gettext do you have installed?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-03 13:25:11 0000</bug_when>
            <thetext>Here are your answers: ext3 and 0.15 respectively:

jule@leiden ~ $ eix sys-devel/gettext
* sys-devel/gettext
     Available versions:  0.12.1-r2 0.14.1-r1 0.14.2 0.14.4 0.14.5 0.14.6 0.15
     Installed:           0.15
     Homepage:            http://www.gnu.org/software/gettext/gettext.html
     Description:         GNU locale utilities


Found 1 matches
jule@leiden ~ $ mount
/dev/hda3 on / type ext3 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-03 16:48:55 0000</bug_when>
            <thetext>Ahah!  Good news - well, sort of - updating gettext to 0.15 exposed the problem here.  Downgrade gettext to 0.14.5 (latest stable version) and it all works fine.

At this point I really need assistance from gettext and autotools people - basesystem that&apos;s you :)  I don&apos;t know whether it&apos;s an error in the stuff provided by gettext, or whether it&apos;s due to errors in the hunspell autoconf stuff.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>bugs.gentoo.org@gurganus.name</who>
            <bug_when>2006-08-04 03:39:24 0000</bug_when>
            <thetext>This is in the gettext info pages: 

13.4.7 `mkinstalldirs&apos; at top level
-----------------------------------

With earlier versions of GNU gettext, you needed to add the GNU
`mkinstalldirs&apos; script to your distribution.  This is not needed any
more.  You can remove it if you not also using an automake version
older than automake 1.9.

http://www.mail-archive.com/automake@gnu.org/msg11549.html seems to indicate that AC_CONFIG_AUX_DIR may not be set right.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-08-04 08:32:48 0000</bug_when>
            <thetext>the bug is that autotools.eclass doesnt respect ACLOCAL_AMFLAGS in Makefile.am

for now you need to set AT_M4DIR=&quot;${S}/m4&quot; before running eautoreconf</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-04 13:52:10 0000</bug_when>
            <thetext>Setting AT_M4DIR=&quot;${S}/m4&quot; did get MKINSTALLDIRS expanded, however now the makefile in the &apos;po&apos; subdirectory refers to it as &quot;./mkinstalldirs&quot; instead of &quot;.././mkinstalldirs&quot; (which is what it has with &lt;gettext-0.15 and without the AT_M4DIR assignment).  Copy mkinstalldirs to po/ works, but there has to be a cleaner way.

po/Makefile.in.in has:

srcdir = @srcdir@
top_srcdir = @top_srcdir@
MKINSTALLDIRS = @MKINSTALLDIRS@
mkinstalldirs = @MKINSTALLDIRS@

which becomes, in po/Makefile.in:

srcdir = .
top_srcdir = ..
MKINSTALLDIRS = ./mkinstalldirs
mkinstalldirs = ./mkinstalldirs

so the same in po/Makefile.  The top-level Makefile.in has:

srcdir = @srcdir@
top_srcdir = @top_srcdir@

which becomes:

srcdir = .
top_srcdir = .

so I&apos;m wondering if the top_srcdir from the top level Makefile is going to the mkinstalldirs definitions in po/Makefile{,.in} - elsewhere it seems mkinstalldirs is constructed as $(top_srcdir)/mkinstalldirs, but that&apos;s just from random greps through the various autofoo files.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-04 15:55:34 0000</bug_when>
            <thetext>I&apos;ve added the AT_M4DIR definition, and copied mkinstalldirs to po/, which fixes the issue for gettext-0.15; works here with that and with older gettext versions.  Version is 1.1.4-r1 (i.e. no rev-bump), CVS v1.8

Please test and report back here.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>bugs.gentoo.org@gurganus.name</who>
            <bug_when>2006-08-04 17:06:33 0000</bug_when>
            <thetext>Worked for me.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jslootbeek@gmail.com</who>
            <bug_when>2006-08-04 17:53:04 0000</bug_when>
            <thetext>Just ran emerge --sync and emerge -avuD hunspell...worked like a charm!
Thanks alot for the quick fix!</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-08-04 18:40:25 0000</bug_when>
            <thetext>nah, that&apos;s just a workaround</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2006-08-05 14:09:00 0000</bug_when>
            <thetext>ok, the correct fix here should be:
-       cp ${S}/mkinstalldirs ${S}/po/
+       autopoint -f || die

if that works for you Kevin, please commit, or i can do it ;)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kevquinn@gentoo.org</who>
            <bug_when>2006-08-05 18:27:16 0000</bug_when>
            <thetext>Checked ok against gettext-0.14.5 and 0.15; committed - thanks for the help, SpanKY :)
</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>93281</attachid>
            <date>2006-08-02 10:36 0000</date>
            <desc>complete emerge output</desc>
            <filename>hunspell</filename>
            <type>text/plain</type>
            <data encoding="base64">Pj4+IEVtZXJnaW5nICgxIG9mIDMpIGFwcC10ZXh0L2h1bnNwZWxsLTEuMS40LXIxIHRvIC8KICog
UHJldmlvdXNseSBmZXRjaGVkOiBodW5zcGVsbC0xLjEuNC50YXIuZ3ogTUQ1IDstKSAuLi4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogUHJl
dmlvdXNseSBmZXRjaGVkOiBodW5zcGVsbC0xLjEuNC50YXIuZ3ogUk1EMTYwIDstKSAuLi4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogUHJldmlv
dXNseSBmZXRjaGVkOiBodW5zcGVsbC0xLjEuNC50YXIuZ3ogU0hBMSA7LSkgLi4uICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogUHJldmlvdXNs
eSBmZXRjaGVkOiBodW5zcGVsbC0xLjEuNC50YXIuZ3ogU0hBMjU2IDstKSAuLi4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogUHJldmlvdXNseSBm
ZXRjaGVkOiBodW5zcGVsbC0xLjEuNC50YXIuZ3ogc2l6ZSA7LSkgLi4uICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogY2hlY2tpbmcgZWJ1aWxk
IGNoZWNrc3VtcyA7LSkgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogY2hlY2tpbmcgYXV4ZmlsZSBj
aGVja3N1bXMgOy0pIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogY2hlY2tpbmcgbWlzY2ZpbGUgY2hl
Y2tzdW1zIDstKSAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgWyBvayBdICogY2hlY2tpbmcgaHVuc3BlbGwtMS4xLjQu
dGFyLmd6IDstKSAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgWyBvayBdPj4+IFVucGFja2luZyBzb3VyY2UuLi4KPj4+IFVu
cGFja2luZyBodW5zcGVsbC0xLjEuNC50YXIuZ3ogdG8gL3Zhci90bXAvcG9ydGFnZS9odW5zcGVs
bC0xLjEuNC1yMS93b3JrCiAqIEFwcGx5aW5nIGh1bnNwZWxsLTEuMS40LWxpYnRvb2wucGF0Y2gg
Li4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFsgb2sgXSAqIEFwcGx5aW5nIGh1bnNwZWxsLTEuMS40LXJlbmFtZWV4ZXMucGF0Y2gg
Li4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFsgb2sgXSAqIFJ1bm5pbmcgZWF1dG9yZWNvbmYgaW4gJy92YXIvdG1wL3BvcnRhZ2UvaHVu
c3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNCcgLi4uCiAqIFJ1bm5pbmcgYWNsb2Nh
bCAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgbGlidG9vbGl6
ZSAtLWNvcHkgLS1mb3JjZSAtLWF1dG9tYWtlIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgYWNsb2NhbCAuLi4g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgYXV0b2NvbmYgLi4uICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgYXV0b2hlYWRlciAuLi4gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgYXV0b21ha2UgLS1hZGQtbWlzc2lu
ZyAtLWNvcHkgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFsgb2sgXSAqIFJ1bm5pbmcgZWxpYnRvb2xpemUgaW46IGh1bnNwZWxs
LTEuMS40CiAqICAgQXBwbHlpbmcgbWF4X2NtZF9sZW4tMS41LjAucGF0Y2ggLi4uCiAqICAgQXBw
bHlpbmcgc2VkLTEuNS42LnBhdGNoIC4uLgo+Pj4gU291cmNlIHVucGFja2VkLgo+Pj4gQ29tcGls
aW5nIHNvdXJjZSBpbiAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVu
c3BlbGwtMS4xLjQgLi4uCiAqIGVjb25mOiB1cGRhdGluZyBodW5zcGVsbC0xLjEuNC9jb25maWcu
c3ViIHdpdGggL3Vzci9zaGFyZS9nbnVjb25maWcvY29uZmlnLnN1YgogKiBlY29uZjogdXBkYXRp
bmcgaHVuc3BlbGwtMS4xLjQvY29uZmlnLmd1ZXNzIHdpdGggL3Vzci9zaGFyZS9nbnVjb25maWcv
Y29uZmlnLmd1ZXNzCi4vY29uZmlndXJlIC0tcHJlZml4PS91c3IgLS1ob3N0PWk2ODYtcGMtbGlu
dXgtZ251IC0tbWFuZGlyPS91c3Ivc2hhcmUvbWFuIC0taW5mb2Rpcj0vdXNyL3NoYXJlL2luZm8g
LS1kYXRhZGlyPS91c3Ivc2hhcmUgLS1zeXNjb25mZGlyPS9ldGMgLS1sb2NhbHN0YXRlZGlyPS92
YXIvbGliIC0taW5jbHVkZWRpcj0vdXNyL2luY2x1ZGUvaHVuc3BlbGwgLS13aXRoLXJlYWRsaW5l
IC0td2l0aC11aSAtLWJ1aWxkPWk2ODYtcGMtbGludXgtZ251CmNoZWNraW5nIGJ1aWxkIHN5c3Rl
bSB0eXBlLi4uIGk2ODYtcGMtbGludXgtZ251CmNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUuLi4g
aTY4Ni1wYy1saW51eC1nbnUKY2hlY2tpbmcgdGFyZ2V0IHN5c3RlbSB0eXBlLi4uIGk2ODYtcGMt
bGludXgtZ251CmNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwuLi4gL2Jpbi9p
bnN0YWxsIC1jCmNoZWNraW5nIHdoZXRoZXIgYnVpbGQgZW52aXJvbm1lbnQgaXMgc2FuZS4uLiB5
ZXMKY2hlY2tpbmcgZm9yIGdhd2suLi4gZ2F3awpjaGVja2luZyB3aGV0aGVyIG1ha2Ugc2V0cyAk
KE1BS0UpLi4uIHllcwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZysrLi4uIGk2ODYt
cGMtbGludXgtZ251LWcrKwpjaGVja2luZyBmb3IgQysrIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0
IGZpbGUgbmFtZS4uLiBhLm91dApjaGVja2luZyB3aGV0aGVyIHRoZSBDKysgY29tcGlsZXIgd29y
a3MuLi4geWVzCmNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZy4uLiBubwpj
aGVja2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzLi4uCmNoZWNraW5nIGZvciBzdWZmaXgg
b2Ygb2JqZWN0IGZpbGVzLi4uIG8KY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdO
VSBDKysgY29tcGlsZXIuLi4geWVzCmNoZWNraW5nIHdoZXRoZXIgaTY4Ni1wYy1saW51eC1nbnUt
ZysrIGFjY2VwdHMgLWcuLi4geWVzCmNoZWNraW5nIGZvciBzdHlsZSBvZiBpbmNsdWRlIHVzZWQg
YnkgbWFrZS4uLiBHTlUKY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiBpNjg2LXBjLWxpbnV4
LWdudS1nKysuLi4gZ2NjMwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZ2NjLi4uIGk2
ODYtcGMtbGludXgtZ251LWdjYwpjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V
IEMgY29tcGlsZXIuLi4geWVzCmNoZWNraW5nIHdoZXRoZXIgaTY4Ni1wYy1saW51eC1nbnUtZ2Nj
IGFjY2VwdHMgLWcuLi4geWVzCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1nY2Mgb3B0
aW9uIHRvIGFjY2VwdCBJU08gQzg5Li4uIG5vbmUgbmVlZGVkCmNoZWNraW5nIGRlcGVuZGVuY3kg
c3R5bGUgb2YgaTY4Ni1wYy1saW51eC1nbnUtZ2NjLi4uIGdjYzMKY2hlY2tpbmcgZm9yIGEgc2Vk
IHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0Li4uIC9iaW4vc2VkCmNoZWNraW5nIGZvciBn
cmVwIHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZS4uLiAvYmluL2dyZXAKY2hlY2tpbmcg
Zm9yIGVncmVwLi4uIC9iaW4vZ3JlcCAtRQpjaGVja2luZyBmb3IgbGQgdXNlZCBieSBpNjg2LXBj
LWxpbnV4LWdudS1nY2MuLi4gL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQKY2hlY2tpbmcg
aWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQpIGlzIEdOVSBsZC4u
LiB5ZXMKY2hlY2tpbmcgZm9yIC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xkIG9wdGlvbiB0
byByZWxvYWQgb2JqZWN0IGZpbGVzLi4uIC1yCmNoZWNraW5nIGZvciBCU0QtY29tcGF0aWJsZSBu
bS4uLiAvdXNyL2Jpbi9ubSAtQgpjaGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzLi4uIHllcwpj
aGVja2luZyBob3cgdG8gcmVjb2duaXNlIGRlcGVuZGVudCBsaWJyYXJpZXMuLi4gcGFzc19hbGwK
Y2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IuLi4gaTY4Ni1wYy1saW51eC1n
bnUtZ2NjIC1FCmNoZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzLi4uIHllcwpjaGVja2lu
ZyBmb3Igc3lzL3R5cGVzLmguLi4geWVzCmNoZWNraW5nIGZvciBzeXMvc3RhdC5oLi4uIHllcwpj
aGVja2luZyBmb3Igc3RkbGliLmguLi4geWVzCmNoZWNraW5nIGZvciBzdHJpbmcuaC4uLiB5ZXMK
Y2hlY2tpbmcgZm9yIG1lbW9yeS5oLi4uIHllcwpjaGVja2luZyBmb3Igc3RyaW5ncy5oLi4uIHll
cwpjaGVja2luZyBmb3IgaW50dHlwZXMuaC4uLiB5ZXMKY2hlY2tpbmcgZm9yIHN0ZGludC5oLi4u
IHllcwpjaGVja2luZyBmb3IgdW5pc3RkLmguLi4geWVzCmNoZWNraW5nIGRsZmNuLmggdXNhYmls
aXR5Li4uIHllcwpjaGVja2luZyBkbGZjbi5oIHByZXNlbmNlLi4uIHllcwpjaGVja2luZyBmb3Ig
ZGxmY24uaC4uLiB5ZXMKY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQysrIHByZXByb2Nlc3Nvci4u
LiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLUUKY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251
LWc3Ny4uLiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZjc3Li4uIG5vCmNoZWNr
aW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS14bGYuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMt
bGludXgtZ251LWZydC4uLiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtcGdmNzcu
Li4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWNmNzcuLi4gbm8KY2hlY2tpbmcg
Zm9yIGk2ODYtcGMtbGludXgtZ251LWZvcnQ3Ny4uLiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1s
aW51eC1nbnUtZmwzMi4uLiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtYWY3Ny4u
LiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZjkwLi4uIG5vCmNoZWNraW5nIGZv
ciBpNjg2LXBjLWxpbnV4LWdudS14bGY5MC4uLiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51
eC1nbnUtcGdmOTAuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LXBnaHBmLi4u
IG5vCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1lcGNmOTAuLi4gbm8KY2hlY2tpbmcg
Zm9yIGk2ODYtcGMtbGludXgtZ251LWdmb3J0cmFuLi4uIG5vCmNoZWNraW5nIGZvciBpNjg2LXBj
LWxpbnV4LWdudS1nOTUuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWY5NS4u
LiBubwpjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZm9ydC4uLiBubwpjaGVja2luZyBm
b3IgaTY4Ni1wYy1saW51eC1nbnUteGxmOTUuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGlu
dXgtZ251LWlmb3J0Li4uIG5vCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1pZmMuLi4g
bm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWVmYy4uLiBubwpjaGVja2luZyBmb3Ig
aTY4Ni1wYy1saW51eC1nbnUtcGdmOTUuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgt
Z251LWxmOTUuLi4gbm8KY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWZ0bi4uLiBubwpj
aGVja2luZyBmb3IgZzc3Li4uIG5vCmNoZWNraW5nIGZvciBmNzcuLi4gZjc3CmNoZWNraW5nIHdo
ZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgRm9ydHJhbiA3NyBjb21waWxlci4uLiBubwpjaGVj
a2luZyB3aGV0aGVyIGY3NyBhY2NlcHRzIC1nLi4uIG5vCmNoZWNraW5nIHRoZSBtYXhpbXVtIGxl
bmd0aCBvZiBjb21tYW5kIGxpbmUgYXJndW1lbnRzLi4uIDMyNzY4CmNoZWNraW5nIGNvbW1hbmQg
dG8gcGFyc2UgL3Vzci9iaW4vbm0gLUIgb3V0cHV0IGZyb20gaTY4Ni1wYy1saW51eC1nbnUtZ2Nj
IG9iamVjdC4uLiBvawpjaGVja2luZyBmb3Igb2JqZGlyLi4uIC5saWJzCmNoZWNraW5nIGZvciBp
Njg2LXBjLWxpbnV4LWdudS1hci4uLiBpNjg2LXBjLWxpbnV4LWdudS1hcgpjaGVja2luZyBmb3Ig
aTY4Ni1wYy1saW51eC1nbnUtcmFubGliLi4uIGk2ODYtcGMtbGludXgtZ251LXJhbmxpYgpjaGVj
a2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtc3RyaXAuLi4gaTY4Ni1wYy1saW51eC1nbnUtc3Ry
aXAKY2hlY2tpbmcgZm9yIGNvcnJlY3QgbHRtYWluLnNoIHZlcnNpb24uLi4geWVzCmNoZWNraW5n
IGlmIGk2ODYtcGMtbGludXgtZ251LWdjYyBzdXBwb3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRp
b25zLi4uIG5vCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1nY2Mgb3B0aW9uIHRvIHBy
b2R1Y2UgUElDLi4uIC1mUElDCmNoZWNraW5nIGlmIGk2ODYtcGMtbGludXgtZ251LWdjYyBQSUMg
ZmxhZyAtZlBJQyB3b3Jrcy4uLiB5ZXMKY2hlY2tpbmcgaWYgaTY4Ni1wYy1saW51eC1nbnUtZ2Nj
IHN0YXRpYyBmbGFnIC1zdGF0aWMgd29ya3MuLi4geWVzCmNoZWNraW5nIGlmIGk2ODYtcGMtbGlu
dXgtZ251LWdjYyBzdXBwb3J0cyAtYyAtbyBmaWxlLm8uLi4geWVzCmNoZWNraW5nIHdoZXRoZXIg
dGhlIGk2ODYtcGMtbGludXgtZ251LWdjYyBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUv
YmluL2xkKSBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzLi4uIHllcwpjaGVja2luZyB3aGV0aGVy
IC1sYyBzaG91bGQgYmUgZXhwbGljaXRseSBsaW5rZWQgaW4uLi4gbm8KY2hlY2tpbmcgZHluYW1p
YyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzLi4uIEdOVS9MaW51eCBsZC5zbwpjaGVja2luZyBob3cg
dG8gaGFyZGNvZGUgbGlicmFyeSBwYXRocyBpbnRvIHByb2dyYW1zLi4uIGltbWVkaWF0ZQpjaGVj
a2luZyB3aGV0aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMgcG9zc2libGUuLi4geWVzCmNoZWNr
aW5nIGlmIGxpYnRvb2wgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcy4uLiB5ZXMKY2hlY2tpbmcg
d2hldGhlciB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzLi4uIHllcwpjaGVja2luZyB3aGV0aGVy
IHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMuLi4geWVzCmNvbmZpZ3VyZTogY3JlYXRpbmcgbGli
dG9vbAphcHBlbmRpbmcgY29uZmlndXJhdGlvbiB0YWcgIkNYWCIgdG8gbGlidG9vbApjaGVja2lu
ZyBmb3IgbGQgdXNlZCBieSBpNjg2LXBjLWxpbnV4LWdudS1nKysuLi4gL3Vzci9pNjg2LXBjLWxp
bnV4LWdudS9iaW4vbGQKY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWxpbnV4
LWdudS9iaW4vbGQpIGlzIEdOVSBsZC4uLiB5ZXMKY2hlY2tpbmcgd2hldGhlciB0aGUgaTY4Ni1w
Yy1saW51eC1nbnUtZysrIGxpbmtlciAoL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQpIHN1
cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMuLi4geWVzCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4
LWdudS1nKysgb3B0aW9uIHRvIHByb2R1Y2UgUElDLi4uIC1mUElDCmNoZWNraW5nIGlmIGk2ODYt
cGMtbGludXgtZ251LWcrKyBQSUMgZmxhZyAtZlBJQyB3b3Jrcy4uLiB5ZXMKY2hlY2tpbmcgaWYg
aTY4Ni1wYy1saW51eC1nbnUtZysrIHN0YXRpYyBmbGFnIC1zdGF0aWMgd29ya3MuLi4geWVzCmNo
ZWNraW5nIGlmIGk2ODYtcGMtbGludXgtZ251LWcrKyBzdXBwb3J0cyAtYyAtbyBmaWxlLm8uLi4g
eWVzCmNoZWNraW5nIHdoZXRoZXIgdGhlIGk2ODYtcGMtbGludXgtZ251LWcrKyBsaW5rZXIgKC91
c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xkKSBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzLi4u
IHllcwpjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MuLi4gR05VL0xpbnV4
IGxkLnNvCmNoZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3Jh
bXMuLi4gaW1tZWRpYXRlCmFwcGVuZGluZyBjb25maWd1cmF0aW9uIHRhZyAiRjc3IiB0byBsaWJ0
b29sCmNoZWNraW5nIGlmIGxpYnRvb2wgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcy4uLiB5ZXMK
Y2hlY2tpbmcgd2hldGhlciB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzLi4uIHllcwpjaGVja2lu
ZyB3aGV0aGVyIHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMuLi4geWVzCmNoZWNraW5nIGZvciBm
Nzcgb3B0aW9uIHRvIHByb2R1Y2UgUElDLi4uIC1mUElDCmNoZWNraW5nIGlmIGY3NyBQSUMgZmxh
ZyAtZlBJQyB3b3Jrcy4uLiBubwpjaGVja2luZyBpZiBmNzcgc3RhdGljIGZsYWcgLXN0YXRpYyB3
b3Jrcy4uLiBubwpjaGVja2luZyBpZiBmNzcgc3VwcG9ydHMgLWMgLW8gZmlsZS5vLi4uIG5vCmNo
ZWNraW5nIHdoZXRoZXIgdGhlIGY3NyBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmlu
L2xkKSBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzLi4uIHllcwpjaGVja2luZyBkeW5hbWljIGxp
bmtlciBjaGFyYWN0ZXJpc3RpY3MuLi4gZ2NjLWNvbmZpZyBlcnJvcjogQ291bGQgbm90IHJ1bi9s
b2NhdGUgImc3NyIKR05VL0xpbnV4IGxkLnNvCmNoZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJy
YXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMuLi4gaW1tZWRpYXRlCmNoZWNraW5nIGZjbnRsLmggdXNh
YmlsaXR5Li4uIHllcwpjaGVja2luZyBmY250bC5oIHByZXNlbmNlLi4uIHllcwpjaGVja2luZyBm
b3IgZmNudGwuaC4uLiB5ZXMKY2hlY2tpbmcgbGliaW50bC5oIHVzYWJpbGl0eS4uLiB5ZXMKY2hl
Y2tpbmcgbGliaW50bC5oIHByZXNlbmNlLi4uIHllcwpjaGVja2luZyBmb3IgbGliaW50bC5oLi4u
IHllcwpjaGVja2luZyBsb2NhbGUuaCB1c2FiaWxpdHkuLi4geWVzCmNoZWNraW5nIGxvY2FsZS5o
IHByZXNlbmNlLi4uIHllcwpjaGVja2luZyBmb3IgbG9jYWxlLmguLi4geWVzCmNoZWNraW5nIGZv
ciB1bmlzdGQuaC4uLiAoY2FjaGVkKSB5ZXMKY2hlY2tpbmcgZXJyb3IuaCB1c2FiaWxpdHkuLi4g
eWVzCmNoZWNraW5nIGVycm9yLmggcHJlc2VuY2UuLi4geWVzCmNoZWNraW5nIGZvciBlcnJvci5o
Li4uIHllcwpjaGVja2luZyBmb3IgYW4gQU5TSSBDLWNvbmZvcm1pbmcgY29uc3QuLi4geWVzCmNo
ZWNraW5nIGZvciBpbmxpbmUuLi4gaW5saW5lCmNoZWNraW5nIGZvciBlcnJvcl9hdF9saW5lLi4u
IHllcwpjaGVja2luZyBmb3Igc3RkbGliLmguLi4gKGNhY2hlZCkgeWVzCmNoZWNraW5nIGZvciBH
TlUgbGliYyBjb21wYXRpYmxlIG1hbGxvYy4uLiB5ZXMKY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFk
ZXIgZmlsZXMuLi4gKGNhY2hlZCkgeWVzCmNoZWNraW5nIGZvciBtZW1jaHIuLi4geWVzCmNoZWNr
aW5nIGZvciBzZXRsb2NhbGUuLi4geWVzCmNoZWNraW5nIGZvciBzdHJjaHIuLi4geWVzCmNoZWNr
aW5nIGZvciBzdHJzdHIuLi4geWVzCmNoZWNraW5nIHdoZXRoZXIgTkxTIGlzIHJlcXVlc3RlZC4u
LiB5ZXMKY2hlY2tpbmcgZm9yIG1zZ2ZtdC4uLiAvdXNyL2Jpbi9tc2dmbXQKY2hlY2tpbmcgZm9y
IGdtc2dmbXQuLi4gL3Vzci9iaW4vZ21zZ2ZtdApjaGVja2luZyBmb3IgeGdldHRleHQuLi4gL3Vz
ci9iaW4veGdldHRleHQKY2hlY2tpbmcgZm9yIG1zZ21lcmdlLi4uIC91c3IvYmluL21zZ21lcmdl
CmNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBMaWJyYXJ5IDIgb3IgbmV3
ZXIuLi4geWVzCmNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1yYW5saWIuLi4gKGNhY2hl
ZCkgaTY4Ni1wYy1saW51eC1nbnUtcmFubGliCmNoZWNraW5nIGZvciBzaW1wbGUgdmlzaWJpbGl0
eSBkZWNsYXJhdGlvbnMuLi4geWVzCmNoZWNraW5nIGZvciBzaXplX3QuLi4geWVzCmNoZWNraW5n
IGZvciBzdGRpbnQuaC4uLiB5ZXMKY2hlY2tpbmcgZm9yIHdvcmtpbmcgYWxsb2NhLmguLi4geWVz
CmNoZWNraW5nIGZvciBhbGxvY2EuLi4geWVzCmNoZWNraW5nIGZvciBzdGRsaWIuaC4uLiAoY2Fj
aGVkKSB5ZXMKY2hlY2tpbmcgZm9yIHVuaXN0ZC5oLi4uIChjYWNoZWQpIHllcwpjaGVja2luZyBm
b3IgZ2V0cGFnZXNpemUuLi4geWVzCmNoZWNraW5nIGZvciB3b3JraW5nIG1tYXAuLi4geWVzCmNo
ZWNraW5nIHdoZXRoZXIgaW50ZWdlciBkaXZpc2lvbiBieSB6ZXJvIHJhaXNlcyBTSUdGUEUuLi4g
eWVzCmNoZWNraW5nIGZvciBpbnR0eXBlcy5oLi4uIHllcwpjaGVja2luZyBmb3IgdW5zaWduZWQg
bG9uZyBsb25nLi4uIHllcwpjaGVja2luZyBmb3IgaW50dHlwZXMuaC4uLiAoY2FjaGVkKSB5ZXMK
Y2hlY2tpbmcgd2hldGhlciB0aGUgaW50dHlwZXMuaCBQUkl4Tk4gbWFjcm9zIGFyZSBicm9rZW4u
Li4gbm8KY2hlY2tpbmcgZm9yIGxkIHVzZWQgYnkgR0NDLi4uIC91c3IvaTY4Ni1wYy1saW51eC1n
bnUvYmluL2xkCmNoZWNraW5nIGlmIHRoZSBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUv
YmluL2xkKSBpcyBHTlUgbGQuLi4geWVzCmNoZWNraW5nIGZvciBzaGFyZWQgbGlicmFyeSBydW4g
cGF0aCBvcmlnaW4uLi4gL2Jpbi9zaDogLi9jb25maWcucnBhdGg6IE5vIHN1Y2ggZmlsZSBvciBk
aXJlY3RvcnkKZG9uZQpjaGVja2luZyB3aGV0aGVyIGltcG9ydGVkIHN5bWJvbHMgY2FuIGJlIGRl
Y2xhcmVkIHdlYWsuLi4geWVzCmNoZWNraW5nIHB0aHJlYWQuaCB1c2FiaWxpdHkuLi4geWVzCmNo
ZWNraW5nIHB0aHJlYWQuaCBwcmVzZW5jZS4uLiB5ZXMKY2hlY2tpbmcgZm9yIHB0aHJlYWQuaC4u
LiB5ZXMKY2hlY2tpbmcgZm9yIHB0aHJlYWRfa2lsbCBpbiAtbHB0aHJlYWQuLi4geWVzCmNoZWNr
aW5nIGZvciBwdGhyZWFkX3J3bG9ja190Li4uIHllcwpjaGVja2luZyBmb3IgbXVsdGl0aHJlYWQg
QVBJIHRvIHVzZS4uLiBwb3NpeApjaGVja2luZyBhcmd6LmggdXNhYmlsaXR5Li4uIHllcwpjaGVj
a2luZyBhcmd6LmggcHJlc2VuY2UuLi4geWVzCmNoZWNraW5nIGZvciBhcmd6LmguLi4geWVzCmNo
ZWNraW5nIGxpbWl0cy5oIHVzYWJpbGl0eS4uLiB5ZXMKY2hlY2tpbmcgbGltaXRzLmggcHJlc2Vu
Y2UuLi4geWVzCmNoZWNraW5nIGZvciBsaW1pdHMuaC4uLiB5ZXMKY2hlY2tpbmcgZm9yIHVuaXN0
ZC5oLi4uIChjYWNoZWQpIHllcwpjaGVja2luZyBzeXMvcGFyYW0uaCB1c2FiaWxpdHkuLi4geWVz
CmNoZWNraW5nIHN5cy9wYXJhbS5oIHByZXNlbmNlLi4uIHllcwpjaGVja2luZyBmb3Igc3lzL3Bh
cmFtLmguLi4geWVzCmNoZWNraW5nIGZvciBnZXRjd2QuLi4geWVzCmNoZWNraW5nIGZvciBnZXRl
Z2lkLi4uIHllcwpjaGVja2luZyBmb3IgZ2V0ZXVpZC4uLiB5ZXMKY2hlY2tpbmcgZm9yIGdldGdp
ZC4uLiB5ZXMKY2hlY2tpbmcgZm9yIGdldHVpZC4uLiB5ZXMKY2hlY2tpbmcgZm9yIG1lbXBjcHku
Li4geWVzCmNoZWNraW5nIGZvciBtdW5tYXAuLi4geWVzCmNoZWNraW5nIGZvciBzdHBjcHkuLi4g
eWVzCmNoZWNraW5nIGZvciBzdHJjYXNlY21wLi4uIHllcwpjaGVja2luZyBmb3Igc3RyZHVwLi4u
IHllcwpjaGVja2luZyBmb3Igc3RydG91bC4uLiB5ZXMKY2hlY2tpbmcgZm9yIHRzZWFyY2guLi4g
eWVzCmNoZWNraW5nIGZvciBhcmd6X2NvdW50Li4uIHllcwpjaGVja2luZyBmb3IgYXJnel9zdHJp
bmdpZnkuLi4geWVzCmNoZWNraW5nIGZvciBhcmd6X25leHQuLi4geWVzCmNoZWNraW5nIGZvciBf
X2ZzZXRsb2NraW5nLi4uIHllcwpjaGVja2luZyB3aGV0aGVyIGZlb2ZfdW5sb2NrZWQgaXMgZGVj
bGFyZWQuLi4geWVzCmNoZWNraW5nIHdoZXRoZXIgZmdldHNfdW5sb2NrZWQgaXMgZGVjbGFyZWQu
Li4geWVzCmNoZWNraW5nIGZvciBpY29udi4uLiB5ZXMKY2hlY2tpbmcgZm9yIGljb252IGRlY2xh
cmF0aW9uLi4uCiAgICAgICAgIGV4dGVybiBzaXplX3QgaWNvbnYgKGljb252X3QgY2QsIGNoYXIg
KiAqaW5idWYsIHNpemVfdCAqaW5ieXRlc2xlZnQsIGNoYXIgKiAqb3V0YnVmLCBzaXplX3QgKm91
dGJ5dGVzbGVmdCk7CmNoZWNraW5nIGZvciBOTF9MT0NBTEVfTkFNRSBtYWNyby4uLiB5ZXMKY2hl
Y2tpbmcgZm9yIGJpc29uLi4uIGJpc29uCmNoZWNraW5nIHZlcnNpb24gb2YgYmlzb24uLi4gMi4y
LCBvawpjaGVja2luZyBmb3Igc2lnbmVkLi4uIHllcwpjaGVja2luZyBmb3IgbG9uZyBsb25nLi4u
IHllcwpjaGVja2luZyBmb3IgbG9uZyBkb3VibGUuLi4geWVzCmNoZWNraW5nIGZvciB3Y2hhcl90
Li4uIHllcwpjaGVja2luZyBmb3Igd2ludF90Li4uIHllcwpjaGVja2luZyBmb3IgaW50bWF4X3Qu
Li4geWVzCmNoZWNraW5nIHdoZXRoZXIgcHJpbnRmKCkgc3VwcG9ydHMgUE9TSVgvWFNJIGZvcm1h
dCBzdHJpbmdzLi4uIHllcwpjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMg
TGlicmFyeSAyLjEgb3IgbmV3ZXIuLi4geWVzCmNoZWNraW5nIGZvciBzdGRpbnQuaC4uLiAoY2Fj
aGVkKSB5ZXMKY2hlY2tpbmcgZm9yIFNJWkVfTUFYLi4uIHllcwpjaGVja2luZyBmb3Igc3RkaW50
LmguLi4gKGNhY2hlZCkgeWVzCmNoZWNraW5nIGZvciBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVl
Li4uIG5vCmNoZWNraW5nIGZvciBDRkxvY2FsZUNvcHlDdXJyZW50Li4uIG5vCmNoZWNraW5nIGZv
ciBwdHJkaWZmX3QuLi4geWVzCmNoZWNraW5nIHN0ZGRlZi5oIHVzYWJpbGl0eS4uLiB5ZXMKY2hl
Y2tpbmcgc3RkZGVmLmggcHJlc2VuY2UuLi4geWVzCmNoZWNraW5nIGZvciBzdGRkZWYuaC4uLiB5
ZXMKY2hlY2tpbmcgZm9yIHN0ZGxpYi5oLi4uIChjYWNoZWQpIHllcwpjaGVja2luZyBmb3Igc3Ry
aW5nLmguLi4gKGNhY2hlZCkgeWVzCmNoZWNraW5nIGZvciBhc3ByaW50Zi4uLiB5ZXMKY2hlY2tp
bmcgZm9yIGZ3cHJpbnRmLi4uIHllcwpjaGVja2luZyBmb3IgcHV0ZW52Li4uIHllcwpjaGVja2lu
ZyBmb3Igc2V0ZW52Li4uIHllcwpjaGVja2luZyBmb3Igc2V0bG9jYWxlLi4uIChjYWNoZWQpIHll
cwpjaGVja2luZyBmb3Igc25wcmludGYuLi4geWVzCmNoZWNraW5nIGZvciB3Y3NsZW4uLi4geWVz
CmNoZWNraW5nIHdoZXRoZXIgX3NucHJpbnRmIGlzIGRlY2xhcmVkLi4uIG5vCmNoZWNraW5nIHdo
ZXRoZXIgX3Nud3ByaW50ZiBpcyBkZWNsYXJlZC4uLiBubwpjaGVja2luZyB3aGV0aGVyIGdldGNf
dW5sb2NrZWQgaXMgZGVjbGFyZWQuLi4geWVzCmNoZWNraW5nIGZvciBubF9sYW5naW5mbyBhbmQg
Q09ERVNFVC4uLiB5ZXMKY2hlY2tpbmcgZm9yIExDX01FU1NBR0VTLi4uIHllcwpjaGVja2luZyBm
b3IgQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZS4uLiAoY2FjaGVkKSBubwpjaGVja2luZyBmb3Ig
Q0ZMb2NhbGVDb3B5Q3VycmVudC4uLiAoY2FjaGVkKSBubwpjaGVja2luZyB3aGV0aGVyIGluY2x1
ZGVkIGdldHRleHQgaXMgcmVxdWVzdGVkLi4uIG5vCmNoZWNraW5nIGZvciBHTlUgZ2V0dGV4dCBp
biBsaWJjLi4uIHllcwpjaGVja2luZyB3aGV0aGVyIHRvIHVzZSBOTFMuLi4geWVzCmNoZWNraW5n
IHdoZXJlIHRoZSBnZXR0ZXh0IGZ1bmN0aW9uIGNvbWVzIGZyb20uLi4gbGliYwpjaGVja2luZyBm
b3IgdHBhcm0gaW4gLWxuY3Vyc2Vzdy4uLiB5ZXMKQ29tcGlsaW5nIHdpdGggY3Vyc2VzIHVzZXIg
aW50ZXJmYWNlLgpjaGVja2luZyBmb3IgdHBhcm0gaW4gLWxjdXJzZXMuLi4geWVzCmNoZWNraW5n
IGZvciByZWFkbGluZSBpbiAtbHJlYWRsaW5lLi4uIHllcwpjaGVja2luZyByZWFkbGluZS9yZWFk
bGluZS5oIHVzYWJpbGl0eS4uLiB5ZXMKY2hlY2tpbmcgcmVhZGxpbmUvcmVhZGxpbmUuaCBwcmVz
ZW5jZS4uLiB5ZXMKY2hlY2tpbmcgZm9yIHJlYWRsaW5lL3JlYWRsaW5lLmguLi4geWVzClVzaW5n
IHRoZSByZWFkbGluZSBsaWJyYXJ5Lgpjb25maWd1cmU6IGNyZWF0aW5nIC4vY29uZmlnLnN0YXR1
cwpjb25maWcuc3RhdHVzOiBjcmVhdGluZyBNYWtlZmlsZQpjb25maWcuc3RhdHVzOiBjcmVhdGlu
ZyBtYW4vTWFrZWZpbGUKY29uZmlnLnN0YXR1czogY3JlYXRpbmcgbWFuL2h1L01ha2VmaWxlCmNv
bmZpZy5zdGF0dXM6IGNyZWF0aW5nIGludGwvTWFrZWZpbGUKY29uZmlnLnN0YXR1czogV0FSTklO
RzogIGludGwvTWFrZWZpbGUuaW4gc2VlbXMgdG8gaWdub3JlIHRoZSAtLWRhdGFyb290ZGlyIHNl
dHRpbmcKY29uZmlnLnN0YXR1czogY3JlYXRpbmcgcG8vTWFrZWZpbGUuaW4KY29uZmlnLnN0YXR1
czogV0FSTklORzogIHBvL01ha2VmaWxlLmluLmluIHNlZW1zIHRvIGlnbm9yZSB0aGUgLS1kYXRh
cm9vdGRpciBzZXR0aW5nCmNvbmZpZy5zdGF0dXM6IGNyZWF0aW5nIG00L01ha2VmaWxlCmNvbmZp
Zy5zdGF0dXM6IGNyZWF0aW5nIHNyYy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOiBjcmVhdGluZyBz
cmMvaHVuc3BlbGwvTWFrZWZpbGUKY29uZmlnLnN0YXR1czogY3JlYXRpbmcgc3JjL3BhcnNlcnMv
TWFrZWZpbGUKY29uZmlnLnN0YXR1czogY3JlYXRpbmcgc3JjL3Rvb2xzL01ha2VmaWxlCmNvbmZp
Zy5zdGF0dXM6IGNyZWF0aW5nIHRlc3RzL01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6IGNyZWF0aW5n
IGNvbmZpZy5oCmNvbmZpZy5zdGF0dXM6IGV4ZWN1dGluZyBkZXBmaWxlcyBjb21tYW5kcwpjb25m
aWcuc3RhdHVzOiBleGVjdXRpbmcgcG8tZGlyZWN0b3JpZXMgY29tbWFuZHMKY29uZmlnLnN0YXR1
czogY3JlYXRpbmcgcG8vUE9URklMRVMKY29uZmlnLnN0YXR1czogY3JlYXRpbmcgcG8vTWFrZWZp
bGUKbWFrZSAgYWxsLXJlY3Vyc2l2ZQptYWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIv
dG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNCcKTWFraW5n
IGFsbCBpbiBpbnRsCm1ha2VbMl06IEVudGVyaW5nIGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFn
ZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L2ludGwnCm1ha2VbMl06IE5v
dGhpbmcgdG8gYmUgZG9uZSBmb3IgYGFsbCcuCm1ha2VbMl06IExlYXZpbmcgZGlyZWN0b3J5IGAv
dmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQvaW50
bCcKTWFraW5nIGFsbCBpbiBwbwptYWtlWzJdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIvdG1w
L3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9wbycKbWFrZVsy
XTogTm90aGluZyB0byBiZSBkb25lIGZvciBgYWxsJy4KbWFrZVsyXTogTGVhdmluZyBkaXJlY3Rv
cnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEu
NC9wbycKTWFraW5nIGFsbCBpbiBzcmMKbWFrZVsyXTogRW50ZXJpbmcgZGlyZWN0b3J5IGAvdmFy
L3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQvc3JjJwpN
YWtpbmcgYWxsIGluIGh1bnNwZWxsCm1ha2VbM106IEVudGVyaW5nIGRpcmVjdG9yeSBgL3Zhci90
bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L3NyYy9odW5z
cGVsbCcKaWYgL2Jpbi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9Y29tcGlsZSBp
Njg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAgICAg
LU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgYWZmZW50
cnkubG8gLU1EIC1NUCAtTUYgIi5kZXBzL2FmZmVudHJ5LlRwbyIgLWMgLW8gYWZmZW50cnkubG8g
YWZmZW50cnkuY3h4OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvYWZmZW50cnkuVHBvIiAi
LmRlcHMvYWZmZW50cnkuUGxvIjsgZWxzZSBybSAtZiAiLmRlcHMvYWZmZW50cnkuVHBvIjsgZXhp
dCAxOyBmaQppZiAvYmluL3NoIC4uLy4uL2xpYnRvb2wgLS10YWc9Q1hYIC0tbW9kZT1jb21waWxl
IGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uICAg
ICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBhZmZp
eG1nci5sbyAtTUQgLU1QIC1NRiAiLmRlcHMvYWZmaXhtZ3IuVHBvIiAtYyAtbyBhZmZpeG1nci5s
byBhZmZpeG1nci5jeHg7IFwKICAgICAgICB0aGVuIG12IC1mICIuZGVwcy9hZmZpeG1nci5UcG8i
ICIuZGVwcy9hZmZpeG1nci5QbG8iOyBlbHNlIHJtIC1mICIuZGVwcy9hZmZpeG1nci5UcG8iOyBl
eGl0IDE7IGZpCm1rZGlyIC5saWJzCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJ
R19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFt
ZS1wb2ludGVyIC1NVCBhZmZpeG1nci5sbyAtTUQgLU1QIC1NRiAuZGVwcy9hZmZpeG1nci5UcG8g
LWMgYWZmaXhtZ3IuY3h4ICAtZlBJQyAtRFBJQyAtbyAubGlicy9hZmZpeG1nci5vCiBpNjg2LXBj
LWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNo
PXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBhZmZpeG1nci5sbyAtTUQg
LU1QIC1NRiAuZGVwcy9hZmZpeG1nci5UcG8gLWMgYWZmaXhtZ3IuY3h4IC1vIGFmZml4bWdyLm8g
Pi9kZXYvbnVsbCAyPiYxCmlmIC9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2Rl
PWNvbXBpbGUgaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1J
Li4vLi4gICAgIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIg
LU1UIGNzdXRpbC5sbyAtTUQgLU1QIC1NRiAiLmRlcHMvY3N1dGlsLlRwbyIgLWMgLW8gY3N1dGls
LmxvIGNzdXRpbC5jeHg7IFwKICAgICAgICB0aGVuIG12IC1mICIuZGVwcy9jc3V0aWwuVHBvIiAi
LmRlcHMvY3N1dGlsLlBsbyI7IGVsc2Ugcm0gLWYgIi5kZXBzL2NzdXRpbC5UcG8iOyBleGl0IDE7
IGZpCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8u
LiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBhZmZl
bnRyeS5sbyAtTUQgLU1QIC1NRiAuZGVwcy9hZmZlbnRyeS5UcG8gLWMgYWZmZW50cnkuY3h4ICAt
ZlBJQyAtRFBJQyAtbyAubGlicy9hZmZlbnRyeS5vCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURI
QVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1m
b21pdC1mcmFtZS1wb2ludGVyIC1NVCBhZmZlbnRyeS5sbyAtTUQgLU1QIC1NRiAuZGVwcy9hZmZl
bnRyeS5UcG8gLWMgYWZmZW50cnkuY3h4IC1vIGFmZmVudHJ5Lm8gPi9kZXYvbnVsbCAyPiYxCmlm
IC9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2RlPWNvbXBpbGUgaTY4Ni1wYy1s
aW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gICAgIC1PMiAtbWFy
Y2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIGRpY3RtZ3IubG8gLU1E
IC1NUCAtTUYgIi5kZXBzL2RpY3RtZ3IuVHBvIiAtYyAtbyBkaWN0bWdyLmxvIGRpY3RtZ3IuY3h4
OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvZGljdG1nci5UcG8iICIuZGVwcy9kaWN0bWdy
LlBsbyI7IGVsc2Ugcm0gLWYgIi5kZXBzL2RpY3RtZ3IuVHBvIjsgZXhpdCAxOyBmaQogaTY4Ni1w
Yy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgY3N1dGlsLmxvIC1NRCAt
TVAgLU1GIC5kZXBzL2NzdXRpbC5UcG8gLWMgY3N1dGlsLmN4eCAgLWZQSUMgLURQSUMgLW8gLmxp
YnMvY3N1dGlsLm8KIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1J
LiAtSS4uLy4uIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIg
LU1UIGNzdXRpbC5sbyAtTUQgLU1QIC1NRiAuZGVwcy9jc3V0aWwuVHBvIC1jIGNzdXRpbC5jeHgg
LW8gY3N1dGlsLm8gPi9kZXYvbnVsbCAyPiYxCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZF
X0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21p
dC1mcmFtZS1wb2ludGVyIC1NVCBkaWN0bWdyLmxvIC1NRCAtTVAgLU1GIC5kZXBzL2RpY3RtZ3Iu
VHBvIC1jIGRpY3RtZ3IuY3h4ICAtZlBJQyAtRFBJQyAtbyAubGlicy9kaWN0bWdyLm8KaWYgL2Jp
bi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9Y29tcGlsZSBpNjg2LXBjLWxpbnV4
LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAgICAgLU8yIC1tYXJjaD1w
ZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgaGFzaG1nci5sbyAtTUQgLU1Q
IC1NRiAiLmRlcHMvaGFzaG1nci5UcG8iIC1jIC1vIGhhc2htZ3IubG8gaGFzaG1nci5jeHg7IFwK
ICAgICAgICB0aGVuIG12IC1mICIuZGVwcy9oYXNobWdyLlRwbyIgIi5kZXBzL2hhc2htZ3IuUGxv
IjsgZWxzZSBybSAtZiAiLmRlcHMvaGFzaG1nci5UcG8iOyBleGl0IDE7IGZpCiBpNjg2LXBjLWxp
bnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBkaWN0bWdyLmxvIC1NRCAtTVAg
LU1GIC5kZXBzL2RpY3RtZ3IuVHBvIC1jIGRpY3RtZ3IuY3h4IC1vIGRpY3RtZ3IubyA+L2Rldi9u
dWxsIDI+JjEKaWYgL2Jpbi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9Y29tcGls
ZSBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAg
ICAgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgaHVu
c3BlbGwubG8gLU1EIC1NUCAtTUYgIi5kZXBzL2h1bnNwZWxsLlRwbyIgLWMgLW8gaHVuc3BlbGwu
bG8gaHVuc3BlbGwuY3h4OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvaHVuc3BlbGwuVHBv
IiAiLmRlcHMvaHVuc3BlbGwuUGxvIjsgZWxzZSBybSAtZiAiLmRlcHMvaHVuc3BlbGwuVHBvIjsg
ZXhpdCAxOyBmaQogaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUku
IC1JLi4vLi4gLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAt
TVQgaGFzaG1nci5sbyAtTUQgLU1QIC1NRiAuZGVwcy9oYXNobWdyLlRwbyAtYyBoYXNobWdyLmN4
eCAgLWZQSUMgLURQSUMgLW8gLmxpYnMvaGFzaG1nci5vCiBpNjg2LXBjLWxpbnV4LWdudS1nKysg
LURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBl
IC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBoYXNobWdyLmxvIC1NRCAtTVAgLU1GIC5kZXBzL2hh
c2htZ3IuVHBvIC1jIGhhc2htZ3IuY3h4IC1vIGhhc2htZ3IubyA+L2Rldi9udWxsIDI+JjEKaWYg
L2Jpbi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9Y29tcGlsZSBpNjg2LXBjLWxp
bnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAgICAgLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgc3VnZ2VzdG1nci5sbyAt
TUQgLU1QIC1NRiAiLmRlcHMvc3VnZ2VzdG1nci5UcG8iIC1jIC1vIHN1Z2dlc3RtZ3IubG8gc3Vn
Z2VzdG1nci5jeHg7IFwKICAgICAgICB0aGVuIG12IC1mICIuZGVwcy9zdWdnZXN0bWdyLlRwbyIg
Ii5kZXBzL3N1Z2dlc3RtZ3IuUGxvIjsgZWxzZSBybSAtZiAiLmRlcHMvc3VnZ2VzdG1nci5UcG8i
OyBleGl0IDE7IGZpCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAt
SS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVy
IC1NVCBodW5zcGVsbC5sbyAtTUQgLU1QIC1NRiAuZGVwcy9odW5zcGVsbC5UcG8gLWMgaHVuc3Bl
bGwuY3h4ICAtZlBJQyAtRFBJQyAtbyAubGlicy9odW5zcGVsbC5vCiBpNjg2LXBjLWxpbnV4LWdu
dS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00
IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBodW5zcGVsbC5sbyAtTUQgLU1QIC1NRiAu
ZGVwcy9odW5zcGVsbC5UcG8gLWMgaHVuc3BlbGwuY3h4IC1vIGh1bnNwZWxsLm8gPi9kZXYvbnVs
bCAyPiYxCmlmIC9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2RlPWNvbXBpbGUg
aTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gICAg
IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIHV0Zl9p
bmZvLmxvIC1NRCAtTVAgLU1GICIuZGVwcy91dGZfaW5mby5UcG8iIC1jIC1vIHV0Zl9pbmZvLmxv
IHV0Zl9pbmZvLmN4eDsgXAogICAgICAgIHRoZW4gbXYgLWYgIi5kZXBzL3V0Zl9pbmZvLlRwbyIg
Ii5kZXBzL3V0Zl9pbmZvLlBsbyI7IGVsc2Ugcm0gLWYgIi5kZXBzL3V0Zl9pbmZvLlRwbyI7IGV4
aXQgMTsgZmkKIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAt
SS4uLy4uIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1U
IHN1Z2dlc3RtZ3IubG8gLU1EIC1NUCAtTUYgLmRlcHMvc3VnZ2VzdG1nci5UcG8gLWMgc3VnZ2Vz
dG1nci5jeHggIC1mUElDIC1EUElDIC1vIC5saWJzL3N1Z2dlc3RtZ3IubwogaTY4Ni1wYy1saW51
eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gLU8yIC1tYXJjaD1wZW50
aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgc3VnZ2VzdG1nci5sbyAtTUQgLU1Q
IC1NRiAuZGVwcy9zdWdnZXN0bWdyLlRwbyAtYyBzdWdnZXN0bWdyLmN4eCAtbyBzdWdnZXN0bWdy
Lm8gPi9kZXYvbnVsbCAyPiYxCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19I
IC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1w
b2ludGVyIC1NVCB1dGZfaW5mby5sbyAtTUQgLU1QIC1NRiAuZGVwcy91dGZfaW5mby5UcG8gLWMg
dXRmX2luZm8uY3h4ICAtZlBJQyAtRFBJQyAtbyAubGlicy91dGZfaW5mby5vCiBpNjg2LXBjLWxp
bnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCB1dGZfaW5mby5sbyAtTUQgLU1Q
IC1NRiAuZGVwcy91dGZfaW5mby5UcG8gLWMgdXRmX2luZm8uY3h4IC1vIHV0Zl9pbmZvLm8gPi9k
ZXYvbnVsbCAyPiYxCi9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2RlPWxpbmsg
aTY4Ni1wYy1saW51eC1nbnUtZysrICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1m
cmFtZS1wb2ludGVyICAgLW8gbGliaHVuc3BlbGwubGEgLXJwYXRoIC91c3IvbGliICBhZmZlbnRy
eS5sbyBhZmZpeG1nci5sbyBjc3V0aWwubG8gZGljdG1nci5sbyBoYXNobWdyLmxvIGh1bnNwZWxs
LmxvIHN1Z2dlc3RtZ3IubG8gdXRmX2luZm8ubG8KaTY4Ni1wYy1saW51eC1nbnUtZysrIC1zaGFy
ZWQgLW5vc3RkbGliIC91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEuMS8uLi8uLi8u
Li9jcnRpLm8gL3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4xL2NydGJlZ2luUy5v
ICAubGlicy9hZmZlbnRyeS5vIC5saWJzL2FmZml4bWdyLm8gLmxpYnMvY3N1dGlsLm8gLmxpYnMv
ZGljdG1nci5vIC5saWJzL2hhc2htZ3IubyAubGlicy9odW5zcGVsbC5vIC5saWJzL3N1Z2dlc3Rt
Z3IubyAubGlicy91dGZfaW5mby5vICAtTC91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80
LjEuMSAtTC91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEuMS8uLi8uLi8uLi8uLi9p
Njg2LXBjLWxpbnV4LWdudS9saWIgLUwvdXNyL2xpYi9nY2MvaTY4Ni1wYy1saW51eC1nbnUvNC4x
LjEvLi4vLi4vLi4gLWxzdGRjKysgLWxtIC1sYyAtbGdjY19zIC91c3IvbGliL2djYy9pNjg2LXBj
LWxpbnV4LWdudS80LjEuMS9jcnRlbmRTLm8gL3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251
LzQuMS4xLy4uLy4uLy4uL2NydG4ubyAgLW1hcmNoPXBlbnRpdW00IC1XbCwtc29uYW1lIC1XbCxs
aWJodW5zcGVsbC5zby4wIC1vIC5saWJzL2xpYmh1bnNwZWxsLnNvLjAuMC4wCihjZCAubGlicyAm
JiBybSAtZiBsaWJodW5zcGVsbC5zby4wICYmIGxuIC1zIGxpYmh1bnNwZWxsLnNvLjAuMC4wIGxp
Ymh1bnNwZWxsLnNvLjApCihjZCAubGlicyAmJiBybSAtZiBsaWJodW5zcGVsbC5zbyAmJiBsbiAt
cyBsaWJodW5zcGVsbC5zby4wLjAuMCBsaWJodW5zcGVsbC5zbykKaTY4Ni1wYy1saW51eC1nbnUt
YXIgY3J1IC5saWJzL2xpYmh1bnNwZWxsLmEgIGFmZmVudHJ5Lm8gYWZmaXhtZ3IubyBjc3V0aWwu
byBkaWN0bWdyLm8gaGFzaG1nci5vIGh1bnNwZWxsLm8gc3VnZ2VzdG1nci5vIHV0Zl9pbmZvLm8K
aTY4Ni1wYy1saW51eC1nbnUtcmFubGliIC5saWJzL2xpYmh1bnNwZWxsLmEKY3JlYXRpbmcgbGli
aHVuc3BlbGwubGEKKGNkIC5saWJzICYmIHJtIC1mIGxpYmh1bnNwZWxsLmxhICYmIGxuIC1zIC4u
L2xpYmh1bnNwZWxsLmxhIGxpYmh1bnNwZWxsLmxhKQptYWtlWzNdOiBMZWF2aW5nIGRpcmVjdG9y
eSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40
L3NyYy9odW5zcGVsbCcKTWFraW5nIGFsbCBpbiBwYXJzZXJzCm1ha2VbM106IEVudGVyaW5nIGRp
cmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxs
LTEuMS40L3NyYy9wYXJzZXJzJwppZiAvYmluL3NoIC4uLy4uL2xpYnRvb2wgLS10YWc9Q1hYIC0t
bW9kZT1jb21waWxlIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1J
LiAtSS4uLy4uICAgICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2lu
dGVyIC1NVCBmaXJzdHBhcnNlci5sbyAtTUQgLU1QIC1NRiAiLmRlcHMvZmlyc3RwYXJzZXIuVHBv
IiAtYyAtbyBmaXJzdHBhcnNlci5sbyBmaXJzdHBhcnNlci5jeHg7IFwKICAgICAgICB0aGVuIG12
IC1mICIuZGVwcy9maXJzdHBhcnNlci5UcG8iICIuZGVwcy9maXJzdHBhcnNlci5QbG8iOyBlbHNl
IHJtIC1mICIuZGVwcy9maXJzdHBhcnNlci5UcG8iOyBleGl0IDE7IGZpCmlmIC9iaW4vc2ggLi4v
Li4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2RlPWNvbXBpbGUgaTY4Ni1wYy1saW51eC1nbnUtZysr
IC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gICAgIC1PMiAtbWFyY2g9cGVudGl1bTQg
LXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIGh0bWxwYXJzZXIubG8gLU1EIC1NUCAtTUYg
Ii5kZXBzL2h0bWxwYXJzZXIuVHBvIiAtYyAtbyBodG1scGFyc2VyLmxvIGh0bWxwYXJzZXIuY3h4
OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvaHRtbHBhcnNlci5UcG8iICIuZGVwcy9odG1s
cGFyc2VyLlBsbyI7IGVsc2Ugcm0gLWYgIi5kZXBzL2h0bWxwYXJzZXIuVHBvIjsgZXhpdCAxOyBm
aQpta2RpciAubGlicwogaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4g
LUkuIC1JLi4vLi4gLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRl
ciAtTVQgZmlyc3RwYXJzZXIubG8gLU1EIC1NUCAtTUYgLmRlcHMvZmlyc3RwYXJzZXIuVHBvIC1j
IGZpcnN0cGFyc2VyLmN4eCAgLWZQSUMgLURQSUMgLW8gLmxpYnMvZmlyc3RwYXJzZXIubwogaTY4
Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gLU8yIC1t
YXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgZmlyc3RwYXJzZXIu
bG8gLU1EIC1NUCAtTUYgLmRlcHMvZmlyc3RwYXJzZXIuVHBvIC1jIGZpcnN0cGFyc2VyLmN4eCAt
byBmaXJzdHBhcnNlci5vID4vZGV2L251bGwgMj4mMQppZiAvYmluL3NoIC4uLy4uL2xpYnRvb2wg
LS10YWc9Q1hYIC0tbW9kZT1jb21waWxlIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09O
RklHX0ggLUkuIC1JLiAtSS4uLy4uICAgICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21p
dC1mcmFtZS1wb2ludGVyIC1NVCBsYXRleHBhcnNlci5sbyAtTUQgLU1QIC1NRiAiLmRlcHMvbGF0
ZXhwYXJzZXIuVHBvIiAtYyAtbyBsYXRleHBhcnNlci5sbyBsYXRleHBhcnNlci5jeHg7IFwKICAg
ICAgICB0aGVuIG12IC1mICIuZGVwcy9sYXRleHBhcnNlci5UcG8iICIuZGVwcy9sYXRleHBhcnNl
ci5QbG8iOyBlbHNlIHJtIC1mICIuZGVwcy9sYXRleHBhcnNlci5UcG8iOyBleGl0IDE7IGZpCiBp
Njg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtTzIg
LW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBodG1scGFyc2Vy
LmxvIC1NRCAtTVAgLU1GIC5kZXBzL2h0bWxwYXJzZXIuVHBvIC1jIGh0bWxwYXJzZXIuY3h4ICAt
ZlBJQyAtRFBJQyAtbyAubGlicy9odG1scGFyc2VyLm8KIGk2ODYtcGMtbGludXgtZ251LWcrKyAt
REhBVkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIGh0bWxwYXJzZXIubG8gLU1EIC1NUCAtTUYgLmRlcHMv
aHRtbHBhcnNlci5UcG8gLWMgaHRtbHBhcnNlci5jeHggLW8gaHRtbHBhcnNlci5vID4vZGV2L251
bGwgMj4mMQppZiAvYmluL3NoIC4uLy4uL2xpYnRvb2wgLS10YWc9Q1hYIC0tbW9kZT1jb21waWxl
IGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uICAg
ICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBtYW5w
YXJzZXIubG8gLU1EIC1NUCAtTUYgIi5kZXBzL21hbnBhcnNlci5UcG8iIC1jIC1vIG1hbnBhcnNl
ci5sbyBtYW5wYXJzZXIuY3h4OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvbWFucGFyc2Vy
LlRwbyIgIi5kZXBzL21hbnBhcnNlci5QbG8iOyBlbHNlIHJtIC1mICIuZGVwcy9tYW5wYXJzZXIu
VHBvIjsgZXhpdCAxOyBmaQogaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAt
SS4gLUkuIC1JLi4vLi4gLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9p
bnRlciAtTVQgbWFucGFyc2VyLmxvIC1NRCAtTVAgLU1GIC5kZXBzL21hbnBhcnNlci5UcG8gLWMg
bWFucGFyc2VyLmN4eCAgLWZQSUMgLURQSUMgLW8gLmxpYnMvbWFucGFyc2VyLm8KIGk2ODYtcGMt
bGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uIC1PMiAtbWFyY2g9
cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIGxhdGV4cGFyc2VyLmxvIC1N
RCAtTVAgLU1GIC5kZXBzL2xhdGV4cGFyc2VyLlRwbyAtYyBsYXRleHBhcnNlci5jeHggIC1mUElD
IC1EUElDIC1vIC5saWJzL2xhdGV4cGFyc2VyLm8KIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhB
VkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZv
bWl0LWZyYW1lLXBvaW50ZXIgLU1UIG1hbnBhcnNlci5sbyAtTUQgLU1QIC1NRiAuZGVwcy9tYW5w
YXJzZXIuVHBvIC1jIG1hbnBhcnNlci5jeHggLW8gbWFucGFyc2VyLm8gPi9kZXYvbnVsbCAyPiYx
CiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAt
TzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBsYXRleHBh
cnNlci5sbyAtTUQgLU1QIC1NRiAuZGVwcy9sYXRleHBhcnNlci5UcG8gLWMgbGF0ZXhwYXJzZXIu
Y3h4IC1vIGxhdGV4cGFyc2VyLm8gPi9kZXYvbnVsbCAyPiYxCmlmIC9iaW4vc2ggLi4vLi4vbGli
dG9vbCAtLXRhZz1DWFggLS1tb2RlPWNvbXBpbGUgaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFW
RV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gICAgIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIHRleHRwYXJzZXIubG8gLU1EIC1NUCAtTUYgIi5kZXBz
L3RleHRwYXJzZXIuVHBvIiAtYyAtbyB0ZXh0cGFyc2VyLmxvIHRleHRwYXJzZXIuY3h4OyBcCiAg
ICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvdGV4dHBhcnNlci5UcG8iICIuZGVwcy90ZXh0cGFyc2Vy
LlBsbyI7IGVsc2Ugcm0gLWYgIi5kZXBzL3RleHRwYXJzZXIuVHBvIjsgZXhpdCAxOyBmaQppZiBp
Njg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAgICAg
LU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgdGVzdHBh
cnNlci5vIC1NRCAtTVAgLU1GICIuZGVwcy90ZXN0cGFyc2VyLlRwbyIgLWMgLW8gdGVzdHBhcnNl
ci5vIHRlc3RwYXJzZXIuY3h4OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvdGVzdHBhcnNl
ci5UcG8iICIuZGVwcy90ZXN0cGFyc2VyLlBvIjsgZWxzZSBybSAtZiAiLmRlcHMvdGVzdHBhcnNl
ci5UcG8iOyBleGl0IDE7IGZpCiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19I
IC1JLiAtSS4gLUkuLi8uLiAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1w
b2ludGVyIC1NVCB0ZXh0cGFyc2VyLmxvIC1NRCAtTVAgLU1GIC5kZXBzL3RleHRwYXJzZXIuVHBv
IC1jIHRleHRwYXJzZXIuY3h4ICAtZlBJQyAtRFBJQyAtbyAubGlicy90ZXh0cGFyc2VyLm8KIGk2
ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAtSS4uLy4uIC1PMiAt
bWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIHRleHRwYXJzZXIu
bG8gLU1EIC1NUCAtTUYgLmRlcHMvdGV4dHBhcnNlci5UcG8gLWMgdGV4dHBhcnNlci5jeHggLW8g
dGV4dHBhcnNlci5vID4vZGV2L251bGwgMj4mMQovYmluL3NoIC4uLy4uL2xpYnRvb2wgLS10YWc9
Q1hYIC0tbW9kZT1saW5rIGk2ODYtcGMtbGludXgtZ251LWcrKyAgLU8yIC1tYXJjaD1wZW50aXVt
NCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIC1vIGxpYnBhcnNlcnMubGEgLXJwYXRoIC91
c3IvbGliICBmaXJzdHBhcnNlci5sbyBodG1scGFyc2VyLmxvIGxhdGV4cGFyc2VyLmxvIG1hbnBh
cnNlci5sbyB0ZXh0cGFyc2VyLmxvIC4uL2h1bnNwZWxsL2xpYmh1bnNwZWxsLmxhCmk2ODYtcGMt
bGludXgtZ251LWcrKyAtc2hhcmVkIC1ub3N0ZGxpYiAvdXNyL2xpYi9nY2MvaTY4Ni1wYy1saW51
eC1nbnUvNC4xLjEvLi4vLi4vLi4vY3J0aS5vIC91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdu
dS80LjEuMS9jcnRiZWdpblMubyAgLmxpYnMvZmlyc3RwYXJzZXIubyAubGlicy9odG1scGFyc2Vy
Lm8gLmxpYnMvbGF0ZXhwYXJzZXIubyAubGlicy9tYW5wYXJzZXIubyAubGlicy90ZXh0cGFyc2Vy
Lm8gIC1XbCwtLXJwYXRoIC1XbCwvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dv
cmsvaHVuc3BlbGwtMS4xLjQvc3JjL2h1bnNwZWxsLy5saWJzIC4uL2h1bnNwZWxsLy5saWJzL2xp
Ymh1bnNwZWxsLnNvIC1ML3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4xIC1ML3Vz
ci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4xLy4uLy4uLy4uLy4uL2k2ODYtcGMtbGlu
dXgtZ251L2xpYiAtTC91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEuMS8uLi8uLi8u
LiAtbHN0ZGMrKyAtbG0gLWxjIC1sZ2NjX3MgL3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251
LzQuMS4xL2NydGVuZFMubyAvdXNyL2xpYi9nY2MvaTY4Ni1wYy1saW51eC1nbnUvNC4xLjEvLi4v
Li4vLi4vY3J0bi5vICAtbWFyY2g9cGVudGl1bTQgLVdsLC1zb25hbWUgLVdsLGxpYnBhcnNlcnMu
c28uMCAtbyAubGlicy9saWJwYXJzZXJzLnNvLjAuMC4wCihjZCAubGlicyAmJiBybSAtZiBsaWJw
YXJzZXJzLnNvLjAgJiYgbG4gLXMgbGlicGFyc2Vycy5zby4wLjAuMCBsaWJwYXJzZXJzLnNvLjAp
CihjZCAubGlicyAmJiBybSAtZiBsaWJwYXJzZXJzLnNvICYmIGxuIC1zIGxpYnBhcnNlcnMuc28u
MC4wLjAgbGlicGFyc2Vycy5zbykKaTY4Ni1wYy1saW51eC1nbnUtYXIgY3J1IC5saWJzL2xpYnBh
cnNlcnMuYSAgZmlyc3RwYXJzZXIubyBodG1scGFyc2VyLm8gbGF0ZXhwYXJzZXIubyBtYW5wYXJz
ZXIubyB0ZXh0cGFyc2VyLm8KaTY4Ni1wYy1saW51eC1nbnUtcmFubGliIC5saWJzL2xpYnBhcnNl
cnMuYQpjcmVhdGluZyBsaWJwYXJzZXJzLmxhCihjZCAubGlicyAmJiBybSAtZiBsaWJwYXJzZXJz
LmxhICYmIGxuIC1zIC4uL2xpYnBhcnNlcnMubGEgbGlicGFyc2Vycy5sYSkKL2Jpbi9zaCAuLi8u
Li9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9bGluayBpNjg2LXBjLWxpbnV4LWdudS1nKysgIC1P
MiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICAtbyB0ZXN0cGFy
c2VyICB0ZXN0cGFyc2VyLm8gbGlicGFyc2Vycy5sYQppNjg2LXBjLWxpbnV4LWdudS1nKysgLU8y
IC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtbyAubGlicy90ZXN0
cGFyc2VyIHRlc3RwYXJzZXIubyAgLi8ubGlicy9saWJwYXJzZXJzLnNvIC92YXIvdG1wL3BvcnRh
Z2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9zcmMvaHVuc3BlbGwvLmxp
YnMvbGliaHVuc3BlbGwuc28KY3JlYXRpbmcgdGVzdHBhcnNlcgptYWtlWzNdOiBMZWF2aW5nIGRp
cmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxs
LTEuMS40L3NyYy9wYXJzZXJzJwpNYWtpbmcgYWxsIGluIHRvb2xzCm1ha2VbM106IEVudGVyaW5n
IGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNw
ZWxsLTEuMS40L3NyYy90b29scycKaWYgaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1ESEFWRV9DT05G
SUdfSCAtSS4gLUkuIC1JLi4vLi4gLUkuLi8uLi9zcmMvaHVuc3BlbGwgLUkuLi8uLi9zcmMvcGFy
c2VycyAgICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1N
VCBtdW5jaC5vIC1NRCAtTVAgLU1GICIuZGVwcy9tdW5jaC5UcG8iIC1jIC1vIG11bmNoLm8gbXVu
Y2guYzsgXAogICAgICAgIHRoZW4gbXYgLWYgIi5kZXBzL211bmNoLlRwbyIgIi5kZXBzL211bmNo
LlBvIjsgZWxzZSBybSAtZiAiLmRlcHMvbXVuY2guVHBvIjsgZXhpdCAxOyBmaQppZiBpNjg2LXBj
LWxpbnV4LWdudS1nY2MgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAtSS4uLy4uL3Ny
Yy9odW5zcGVsbCAtSS4uLy4uL3NyYy9wYXJzZXJzICAgIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBp
cGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIHVubXVuY2gubyAtTUQgLU1QIC1NRiAiLmRlcHMv
dW5tdW5jaC5UcG8iIC1jIC1vIHVubXVuY2gubyB1bm11bmNoLmM7IFwKICAgICAgICB0aGVuIG12
IC1mICIuZGVwcy91bm11bmNoLlRwbyIgIi5kZXBzL3VubXVuY2guUG8iOyBlbHNlIHJtIC1mICIu
ZGVwcy91bm11bmNoLlRwbyI7IGV4aXQgMTsgZmkKaWYgaTY4Ni1wYy1saW51eC1nbnUtZysrIC1E
SEFWRV9DT05GSUdfSCAtSS4gLUkuIC1JLi4vLi4gLUkuLi8uLi9zcmMvaHVuc3BlbGwgLUkuLi8u
Li9zcmMvcGFyc2VycyAgICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1w
b2ludGVyIC1NVCBleGFtcGxlLm8gLU1EIC1NUCAtTUYgIi5kZXBzL2V4YW1wbGUuVHBvIiAtYyAt
byBleGFtcGxlLm8gZXhhbXBsZS5jeHg7IFwKICAgICAgICB0aGVuIG12IC1mICIuZGVwcy9leGFt
cGxlLlRwbyIgIi5kZXBzL2V4YW1wbGUuUG8iOyBlbHNlIHJtIC1mICIuZGVwcy9leGFtcGxlLlRw
byI7IGV4aXQgMTsgZmkKaWYgaTY4Ni1wYy1saW51eC1nbnUtZysrIC1ESEFWRV9DT05GSUdfSCAt
SS4gLUkuIC1JLi4vLi4gLUkuLi8uLi9zcmMvaHVuc3BlbGwgLUkuLi8uLi9zcmMvcGFyc2VycyAg
ICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyIC1NVCBodW5z
cGVsbC5vIC1NRCAtTVAgLU1GICIuZGVwcy9odW5zcGVsbC5UcG8iIC1jIC1vIGh1bnNwZWxsLm8g
aHVuc3BlbGwuY3h4OyBcCiAgICAgICAgdGhlbiBtdiAtZiAiLmRlcHMvaHVuc3BlbGwuVHBvIiAi
LmRlcHMvaHVuc3BlbGwuUG8iOyBlbHNlIHJtIC1mICIuZGVwcy9odW5zcGVsbC5UcG8iOyBleGl0
IDE7IGZpCmlmIGk2ODYtcGMtbGludXgtZ251LWcrKyAtREhBVkVfQ09ORklHX0ggLUkuIC1JLiAt
SS4uLy4uIC1JLi4vLi4vc3JjL2h1bnNwZWxsIC1JLi4vLi4vc3JjL3BhcnNlcnMgICAgLU8yIC1t
YXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtTVQgaHVubW9ycGgubyAt
TUQgLU1QIC1NRiAiLmRlcHMvaHVubW9ycGguVHBvIiAtYyAtbyBodW5tb3JwaC5vIGh1bm1vcnBo
LmN4eDsgXAogICAgICAgIHRoZW4gbXYgLWYgIi5kZXBzL2h1bm1vcnBoLlRwbyIgIi5kZXBzL2h1
bm1vcnBoLlBvIjsgZWxzZSBybSAtZiAiLmRlcHMvaHVubW9ycGguVHBvIjsgZXhpdCAxOyBmaQpp
ZiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLURIQVZFX0NPTkZJR19IIC1JLiAtSS4gLUkuLi8uLiAt
SS4uLy4uL3NyYy9odW5zcGVsbCAtSS4uLy4uL3NyYy9wYXJzZXJzICAgIC1PMiAtbWFyY2g9cGVu
dGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLU1UIGh1bnN0ZW0ubyAtTUQgLU1QIC1N
RiAiLmRlcHMvaHVuc3RlbS5UcG8iIC1jIC1vIGh1bnN0ZW0ubyBodW5zdGVtLmN4eDsgXAogICAg
ICAgIHRoZW4gbXYgLWYgIi5kZXBzL2h1bnN0ZW0uVHBvIiAiLmRlcHMvaHVuc3RlbS5QbyI7IGVs
c2Ugcm0gLWYgIi5kZXBzL2h1bnN0ZW0uVHBvIjsgZXhpdCAxOyBmaQovYmluL3NoIC4uLy4uL2xp
YnRvb2wgLS10YWc9Q0MgLS1tb2RlPWxpbmsgaTY4Ni1wYy1saW51eC1nbnUtZ2NjICAtTzIgLW1h
cmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgLW8gaHVuc3BlbGwtbXVu
Y2ggIG11bmNoLm8KL2Jpbi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNDIC0tbW9kZT1saW5rIGk2
ODYtcGMtbGludXgtZ251LWdjYyAgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJh
bWUtcG9pbnRlciAgIC1vIGh1bnNwZWxsLXVubXVuY2ggIHVubXVuY2gubwpta2RpciAubGlicwpp
Njg2LXBjLWxpbnV4LWdudS1nY2MgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJh
bWUtcG9pbnRlciAtbyBodW5zcGVsbC11bm11bmNoIHVubXVuY2gubwppNjg2LXBjLWxpbnV4LWdu
dS1nY2MgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtbyBo
dW5zcGVsbC1tdW5jaCBtdW5jaC5vCi9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFggLS1t
b2RlPWxpbmsgaTY4Ni1wYy1saW51eC1nbnUtZysrICAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBl
IC1mb21pdC1mcmFtZS1wb2ludGVyICAgLW8gaHVuc3BlbGwtZXhhbXBsZSAgZXhhbXBsZS5vIC4u
L2h1bnNwZWxsL2xpYmh1bnNwZWxsLmxhCi9iaW4vc2ggLi4vLi4vbGlidG9vbCAtLXRhZz1DWFgg
LS1tb2RlPWxpbmsgaTY4Ni1wYy1saW51eC1nbnUtZysrICAtTzIgLW1hcmNoPXBlbnRpdW00IC1w
aXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgLW8gaHVuc3BlbGwgIGh1bnNwZWxsLm8gLi4vaHVu
c3BlbGwvbGliaHVuc3BlbGwubGEgLi4vcGFyc2Vycy9saWJwYXJzZXJzLmxhIC1sbmN1cnNlc3cg
LWxyZWFkbGluZSAtbG5jdXJzZXMKaTY4Ni1wYy1saW51eC1nbnUtZysrIC1PMiAtbWFyY2g9cGVu
dGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgLW8gLmxpYnMvaHVuc3BlbGwtZXhhbXBs
ZSBleGFtcGxlLm8gIC4uL2h1bnNwZWxsLy5saWJzL2xpYmh1bnNwZWxsLnNvCmNyZWF0aW5nIGh1
bnNwZWxsLWV4YW1wbGUKL2Jpbi9zaCAuLi8uLi9saWJ0b29sIC0tdGFnPUNYWCAtLW1vZGU9bGlu
ayBpNjg2LXBjLWxpbnV4LWdudS1nKysgIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0
LWZyYW1lLXBvaW50ZXIgICAtbyBodW5tb3JwaCAgaHVubW9ycGgubyAuLi9odW5zcGVsbC9saWJo
dW5zcGVsbC5sYQppNjg2LXBjLWxpbnV4LWdudS1nKysgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlw
ZSAtZm9taXQtZnJhbWUtcG9pbnRlciAtbyAubGlicy9odW5tb3JwaCBodW5tb3JwaC5vICAuLi9o
dW5zcGVsbC8ubGlicy9saWJodW5zcGVsbC5zbwpjcmVhdGluZyBodW5tb3JwaAppNjg2LXBjLWxp
bnV4LWdudS1nKysgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRl
ciAtbyAubGlicy9odW5zcGVsbCBodW5zcGVsbC5vICAuLi9odW5zcGVsbC8ubGlicy9saWJodW5z
cGVsbC5zbyAuLi9wYXJzZXJzLy5saWJzL2xpYnBhcnNlcnMuc28gL3Zhci90bXAvcG9ydGFnZS9o
dW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L3NyYy9odW5zcGVsbC8ubGlicy9s
aWJodW5zcGVsbC5zbyAtbG5jdXJzZXN3IC1scmVhZGxpbmUgLWxuY3Vyc2VzCi9iaW4vc2ggLi4v
Li4vbGlidG9vbCAtLXRhZz1DWFggLS1tb2RlPWxpbmsgaTY4Ni1wYy1saW51eC1nbnUtZysrICAt
TzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgLW8gaHVuc3Rl
bSAgaHVuc3RlbS5vIC4uL2h1bnNwZWxsL2xpYmh1bnNwZWxsLmxhCmNyZWF0aW5nIGh1bnNwZWxs
Cmk2ODYtcGMtbGludXgtZ251LWcrKyAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1m
cmFtZS1wb2ludGVyIC1vIC5saWJzL2h1bnN0ZW0gaHVuc3RlbS5vICAuLi9odW5zcGVsbC8ubGli
cy9saWJodW5zcGVsbC5zbwpjcmVhdGluZyBodW5zdGVtCm1ha2VbM106IExlYXZpbmcgZGlyZWN0
b3J5IGAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4x
LjQvc3JjL3Rvb2xzJwptYWtlWzNdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRh
Z2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9zcmMnCm1ha2VbM106IE5v
dGhpbmcgdG8gYmUgZG9uZSBmb3IgYGFsbC1hbScuCm1ha2VbM106IExlYXZpbmcgZGlyZWN0b3J5
IGAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQv
c3JjJwptYWtlWzJdOiBMZWF2aW5nIGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVs
bC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L3NyYycKTWFraW5nIGFsbCBpbiBtYW4KbWFr
ZVsyXTogRW50ZXJpbmcgZGlyZWN0b3J5IGAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40
LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQvbWFuJwpNYWtpbmcgYWxsIGluIGh1Cm1ha2VbM106IEVu
dGVyaW5nIGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3Jr
L2h1bnNwZWxsLTEuMS40L21hbi9odScKbWFrZVszXTogTm90aGluZyB0byBiZSBkb25lIGZvciBg
YWxsJy4KbWFrZVszXTogTGVhdmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3Bl
bGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9tYW4vaHUnCm1ha2VbM106IEVudGVyaW5n
IGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNw
ZWxsLTEuMS40L21hbicKbWFrZVszXTogTm90aGluZyB0byBiZSBkb25lIGZvciBgYWxsLWFtJy4K
bWFrZVszXTogTGVhdmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4x
LjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9tYW4nCm1ha2VbMl06IExlYXZpbmcgZGlyZWN0b3J5
IGAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQv
bWFuJwpNYWtpbmcgYWxsIGluIG00Cm1ha2VbMl06IEVudGVyaW5nIGRpcmVjdG9yeSBgL3Zhci90
bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L200JwptYWtl
WzJdOiBOb3RoaW5nIHRvIGJlIGRvbmUgZm9yIGBhbGwnLgptYWtlWzJdOiBMZWF2aW5nIGRpcmVj
dG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEu
MS40L200JwpNYWtpbmcgYWxsIGluIHRlc3RzCm1ha2VbMl06IEVudGVyaW5nIGRpcmVjdG9yeSBg
L3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L3Rl
c3RzJwptYWtlWzJdOiBOb3RoaW5nIHRvIGJlIGRvbmUgZm9yIGBhbGwnLgptYWtlWzJdOiBMZWF2
aW5nIGRpcmVjdG9yeSBgL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1
bnNwZWxsLTEuMS40L3Rlc3RzJwptYWtlWzJdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIvdG1w
L3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNCcKbWFrZVsyXTog
Tm90aGluZyB0byBiZSBkb25lIGZvciBgYWxsLWFtJy4KbWFrZVsyXTogTGVhdmluZyBkaXJlY3Rv
cnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEu
NCcKbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwt
MS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNCcKPj4+IFNvdXJjZSBjb21waWxlZC4KPj4+IFRl
c3QgcGhhc2UgW25vdCBlbmFibGVkXTogYXBwLXRleHQvaHVuc3BlbGwtMS4xLjQtcjEKCj4+PiBJ
bnN0YWxsIGh1bnNwZWxsLTEuMS40LXIxIGludG8gL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0x
LjEuNC1yMS9pbWFnZS8gY2F0ZWdvcnkgYXBwLXRleHQKTWFraW5nIGluc3RhbGwgaW4gaW50bApt
YWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4x
LjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9pbnRsJwppZiB0ZXN0ICJodW5zcGVsbCIgPSAiZ2V0
dGV4dCIgXAogICAgICAgICAgICYmIHRlc3QgJycgPSAnaW50bC1jb21wYXQubyc7IHRoZW4gXAog
ICAgICAgICAgL2Jpbi9zaCBgY2FzZSAiQE1LSU5TVEFMTERJUlNAIiBpbiAvKikgZWNobyAiQE1L
SU5TVEFMTERJUlNAIiA7OyAqKSBlY2hvICIuLi9ATUtJTlNUQUxMRElSU0AiIDs7IGVzYWNgIC92
YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9saWIgL3Zhci90bXAv
cG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL2luY2x1ZGUvaHVuc3BlbGw7IFwK
ICAgICAgICAgIC9iaW4vaW5zdGFsbCAtYyAtbSA2NDQgbGliaW50bC5oIC92YXIvdG1wL3BvcnRh
Z2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9pbmNsdWRlL2h1bnNwZWxsL2xpYmludGwu
aDsgXAogICAgICAgICAgL2Jpbi9zaCAuLi9saWJ0b29sIC0tbW9kZT1pbnN0YWxsIFwKICAgICAg
ICAgICAgL2Jpbi9pbnN0YWxsIC1jIC1tIDY0NCBsaWJpbnRsLmEgL3Zhci90bXAvcG9ydGFnZS9o
dW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL2xpYi9saWJpbnRsLmE7IFwKICAgICAgICBlbHNl
IFwKICAgICAgICAgIDogOyBcCiAgICAgICAgZmkKaWYgdGVzdCAnbm8nID0geWVzOyB0aGVuIFwK
ICAgICAgICAgIHRlc3QgeWVzICE9IG5vIHx8IC9iaW4vc2ggYGNhc2UgIkBNS0lOU1RBTExESVJT
QCIgaW4gLyopIGVjaG8gIkBNS0lOU1RBTExESVJTQCIgOzsgKikgZWNobyAiLi4vQE1LSU5TVEFM
TERJUlNAIiA7OyBlc2FjYCAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL2ltYWdl
Ly91c3IvbGliOyBcCiAgICAgICAgICB0ZW1wPS92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4x
LjQtcjEvaW1hZ2UvL3Vzci9saWIvdC1jaGFyc2V0LmFsaWFzOyBcCiAgICAgICAgICBkZXN0PS92
YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9saWIvY2hhcnNldC5h
bGlhczsgXAogICAgICAgICAgaWYgdGVzdCAtZiAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEu
MS40LXIxL2ltYWdlLy91c3IvbGliL2NoYXJzZXQuYWxpYXM7IHRoZW4gXAogICAgICAgICAgICBv
cmlnPS92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9saWIvY2hh
cnNldC5hbGlhczsgXAogICAgICAgICAgICBzZWQgLWYgcmVmLWFkZC5zZWQgJG9yaWcgPiAkdGVt
cDsgXAogICAgICAgICAgICAvYmluL2luc3RhbGwgLWMgLW0gNjQ0ICR0ZW1wICRkZXN0OyBcCiAg
ICAgICAgICAgIHJtIC1mICR0ZW1wOyBcCiAgICAgICAgICBlbHNlIFwKICAgICAgICAgICAgaWYg
dGVzdCB5ZXMgPSBubzsgdGhlbiBcCiAgICAgICAgICAgICAgb3JpZz1jaGFyc2V0LmFsaWFzOyBc
CiAgICAgICAgICAgICAgc2VkIC1mIHJlZi1hZGQuc2VkICRvcmlnID4gJHRlbXA7IFwKICAgICAg
ICAgICAgICAvYmluL2luc3RhbGwgLWMgLW0gNjQ0ICR0ZW1wICRkZXN0OyBcCiAgICAgICAgICAg
ICAgcm0gLWYgJHRlbXA7IFwKICAgICAgICAgICAgZmk7IFwKICAgICAgICAgIGZpOyBcCiAgICAg
ICAgICAvYmluL3NoIGBjYXNlICJATUtJTlNUQUxMRElSU0AiIGluIC8qKSBlY2hvICJATUtJTlNU
QUxMRElSU0AiIDs7ICopIGVjaG8gIi4uL0BNS0lOU1RBTExESVJTQCIgOzsgZXNhY2AgL3Zhci90
bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL3NoYXJlL2xvY2FsZTsgXAog
ICAgICAgICAgdGVzdCAtZiAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL2ltYWdl
Ly91c3Ivc2hhcmUvbG9jYWxlL2xvY2FsZS5hbGlhcyBcCiAgICAgICAgICAgICYmIG9yaWc9L3Zh
ci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL3NoYXJlL2xvY2FsZS9s
b2NhbGUuYWxpYXMgXAogICAgICAgICAgICB8fCBvcmlnPS4vbG9jYWxlLmFsaWFzOyBcCiAgICAg
ICAgICB0ZW1wPS92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9z
aGFyZS9sb2NhbGUvdC1sb2NhbGUuYWxpYXM7IFwKICAgICAgICAgIGRlc3Q9L3Zhci90bXAvcG9y
dGFnZS9odW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL3NoYXJlL2xvY2FsZS9sb2NhbGUuYWxp
YXM7IFwKICAgICAgICAgIHNlZCAtZiByZWYtYWRkLnNlZCAkb3JpZyA+ICR0ZW1wOyBcCiAgICAg
ICAgICAvYmluL2luc3RhbGwgLWMgLW0gNjQ0ICR0ZW1wICRkZXN0OyBcCiAgICAgICAgICBybSAt
ZiAkdGVtcDsgXAogICAgICAgIGVsc2UgXAogICAgICAgICAgOiA7IFwKICAgICAgICBmaQppZiB0
ZXN0ICJodW5zcGVsbCIgPSAiZ2V0dGV4dCI7IHRoZW4gXAogICAgICAgICAgL2Jpbi9zaCBgY2Fz
ZSAiQE1LSU5TVEFMTERJUlNAIiBpbiAvKikgZWNobyAiQE1LSU5TVEFMTERJUlNAIiA7OyAqKSBl
Y2hvICIuLi9ATUtJTlNUQUxMRElSU0AiIDs7IGVzYWNgIC92YXIvdG1wL3BvcnRhZ2UvaHVuc3Bl
bGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9zaGFyZS9nZXR0ZXh0L2ludGw7IFwKICAgICAgICAgIC9i
aW4vaW5zdGFsbCAtYyAtbSA2NDQgVkVSU0lPTiAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEu
MS40LXIxL2ltYWdlLy91c3Ivc2hhcmUvZ2V0dGV4dC9pbnRsL1ZFUlNJT047IFwKICAgICAgICAg
IC9iaW4vaW5zdGFsbCAtYyAtbSA2NDQgQ2hhbmdlTG9nLmluc3QgL3Zhci90bXAvcG9ydGFnZS9o
dW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL3NoYXJlL2dldHRleHQvaW50bC9DaGFuZ2VMb2c7
IFwKICAgICAgICAgIGRpc3RzPSJDT1BZSU5HLkxJQi0yLjAgQ09QWUlORy5MSUItMi4xIE1ha2Vm
aWxlLmluIGNvbmZpZy5jaGFyc2V0IGxvY2FsZS5hbGlhcyByZWYtYWRkLnNpbiByZWYtZGVsLnNp
biBnbW8uaCBnZXR0ZXh0UC5oIGhhc2gtc3RyaW5nLmggcGx1cmFsLWV4cC5oIGV2YWwtcGx1cmFs
Lmggb3MyY29tcGF0LmggbGliZ251aW50bC5oIGxvYWRpbmZvLmggYmluZHRleHRkb20uYyBkY2dl
dHRleHQuYyBkZ2V0dGV4dC5jIGdldHRleHQuYyBmaW5kZG9tYWluLmMgbG9hZG1zZ2NhdC5jIGxv
Y2FsZWFsaWFzLmMgdGV4dGRvbWFpbi5jIGwxMG5mbGlzdC5jIGV4cGxvZGVuYW1lLmMgZGNpZ2V0
dGV4dC5jIGRjbmdldHRleHQuYyBkbmdldHRleHQuYyBuZ2V0dGV4dC5jIHBsdXJhbC55IHBsdXJh
bC1leHAuYyBsb2NhbGNoYXJzZXQuYyBsb2NhbGVuYW1lLmMgb3NkZXAuYyBvczJjb21wYXQuYyBp
bnRsLWNvbXBhdC5jIjsgXAogICAgICAgICAgZm9yIGZpbGUgaW4gJGRpc3RzOyBkbyBcCiAgICAg
ICAgICAgIC9iaW4vaW5zdGFsbCAtYyAtbSA2NDQgLi8kZmlsZSBcCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL2ltYWdlLy91c3Iv
c2hhcmUvZ2V0dGV4dC9pbnRsLyRmaWxlOyBcCiAgICAgICAgICBkb25lOyBcCiAgICAgICAgICBj
aG1vZCBhK3ggL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS9pbWFnZS8vdXNyL3No
YXJlL2dldHRleHQvaW50bC9jb25maWcuY2hhcnNldDsgXAogICAgICAgICAgZGlzdHM9InBsdXJh
bC5jIjsgXAogICAgICAgICAgZm9yIGZpbGUgaW4gJGRpc3RzOyBkbyBcCiAgICAgICAgICAgIGlm
IHRlc3QgLWYgJGZpbGU7IHRoZW4gZGlyPS47IGVsc2UgZGlyPS47IGZpOyBcCiAgICAgICAgICAg
IC9iaW4vaW5zdGFsbCAtYyAtbSA2NDQgJGRpci8kZmlsZSBcCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL2ltYWdlLy91c3Ivc2hh
cmUvZ2V0dGV4dC9pbnRsLyRmaWxlOyBcCiAgICAgICAgICBkb25lOyBcCiAgICAgICAgICBkaXN0
cz0ieG9wZW4tbXNnLnNlZCBsaW51eC1tc2cuc2VkIHBvMnRibC5zZWQuaW4gY2F0LWNvbXBhdC5j
IENPUFlJTkcuTElCLTIgZ2V0dGV4dC5oIGxpYmdldHRleHQuaCBwbHVyYWwtZXZhbC5jIjsgXAog
ICAgICAgICAgZm9yIGZpbGUgaW4gJGRpc3RzOyBkbyBcCiAgICAgICAgICAgIHJtIC1mIC92YXIv
dG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQtcjEvaW1hZ2UvL3Vzci9zaGFyZS9nZXR0ZXh0L2lu
dGwvJGZpbGU7IFwKICAgICAgICAgIGRvbmU7IFwKICAgICAgICBlbHNlIFwKICAgICAgICAgIDog
OyBcCiAgICAgICAgZmkKbWFrZVsxXTogTGVhdmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRh
Z2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9pbnRsJwpNYWtpbmcgaW5z
dGFsbCBpbiBwbwptYWtlWzFdOiBFbnRlcmluZyBkaXJlY3RvcnkgYC92YXIvdG1wL3BvcnRhZ2Uv
aHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9wbycKbWFrZVsxXTogTUtJTlNU
QUxMRElSU0A6IENvbW1hbmQgbm90IGZvdW5kCm1ha2VbMV06ICoqKiBbaW5zdGFsbC1kYXRhLXll
c10gRXJyb3IgMTI3Cm1ha2VbMV06IExlYXZpbmcgZGlyZWN0b3J5IGAvdmFyL3RtcC9wb3J0YWdl
L2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQvcG8nCm1ha2U6ICoqKiBbaW5z
dGFsbC1yZWN1cnNpdmVdIEVycm9yIDEKCiEhISBFUlJPUjogYXBwLXRleHQvaHVuc3BlbGwtMS4x
LjQtcjEgZmFpbGVkLgpDYWxsIHN0YWNrOgogIGVidWlsZC5zaCwgbGluZSAxNTQzOiAgIENhbGxl
ZCBkeW5faW5zdGFsbAogIGVidWlsZC5zaCwgbGluZSAxMDE3OiAgIENhbGxlZCBzcmNfaW5zdGFs
bAogIGh1bnNwZWxsLTEuMS40LXIxLmVidWlsZCwgbGluZSA2MTogICBDYWxsZWQgZGllCgohISEg
bWFrZSBpbnN0YWxsIGZhaWxlZAohISEgSWYgeW91IG5lZWQgc3VwcG9ydCwgcG9zdCB0aGUgdG9w
bW9zdCBidWlsZCBlcnJvciwgYW5kIHRoZSBjYWxsIHN0YWNrIGlmIHJlbGV2YW50LgoK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>93364</attachid>
            <date>2006-08-03 12:01 0000</date>
            <desc>/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/config.log</desc>
            <filename>config.log</filename>
            <type>text/plain</type>
            <data encoding="base64">VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp
bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz
IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IGh1bnNwZWxsIGNvbmZpZ3VyZSAxLjEuNCwg
d2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42MC4gIEludm9jYXRpb24gY29t
bWFuZCBsaW5lIHdhcwoKICAkIC4vY29uZmlndXJlIC0tcHJlZml4PS91c3IgLS1ob3N0PWk2ODYt
cGMtbGludXgtZ251IC0tbWFuZGlyPS91c3Ivc2hhcmUvbWFuIC0taW5mb2Rpcj0vdXNyL3NoYXJl
L2luZm8gLS1kYXRhZGlyPS91c3Ivc2hhcmUgLS1zeXNjb25mZGlyPS9ldGMgLS1sb2NhbHN0YXRl
ZGlyPS92YXIvbGliIC0taW5jbHVkZWRpcj0vdXNyL2luY2x1ZGUvaHVuc3BlbGwgLS13aXRob3V0
LXJlYWRsaW5lIC0td2l0aG91dC11aSAtLWJ1aWxkPWk2ODYtcGMtbGludXgtZ251CgojIyAtLS0t
LS0tLS0gIyMKIyMgUGxhdGZvcm0uICMjCiMjIC0tLS0tLS0tLSAjIwoKaG9zdG5hbWUgPSBsZWlk
ZW4KdW5hbWUgLW0gPSBpNjg2CnVuYW1lIC1yID0gMi42LjE3LWdlbnRvby1yNAp1bmFtZSAtcyA9
IExpbnV4CnVuYW1lIC12ID0gIzcgV2VkIEF1ZyAyIDEzOjM4OjUyIFVUQyAyMDA2CgovdXNyL2Jp
bi91bmFtZSAtcCA9IEludGVsKFIpIFBlbnRpdW0oUikgNCBDUFUgMi42NkdIegovYmluL3VuYW1l
IC1YICAgICA9IHVua25vd24KCi9iaW4vYXJjaCAgICAgICAgICAgICAgPSBpNjg2Ci91c3IvYmlu
L2FyY2ggLWsgICAgICAgPSB1bmtub3duCi91c3IvY29udmV4L2dldHN5c2luZm8gPSB1bmtub3du
Ci91c3IvYmluL2hvc3RpbmZvICAgICAgPSB1bmtub3duCi9iaW4vbWFjaGluZSAgICAgICAgICAg
PSB1bmtub3duCi91c3IvYmluL29zbGV2ZWwgICAgICAgPSB1bmtub3duCi9iaW4vdW5pdmVyc2Ug
ICAgICAgICAgPSB1bmtub3duCgpQQVRIOiAvdXNyL2xpYi9jY2FjaGUvYmluClBBVEg6IC91c3Iv
bG9jYWwvc2JpbgpQQVRIOiAvc2JpbgpQQVRIOiAvdXNyL3NiaW4KUEFUSDogL3Vzci9saWIvcG9y
dGFnZS9iaW4KUEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDogL2JpbgpQQVRIOiAvdXNyL2JpbgpQ
QVRIOiAvb3B0L2JpbgpQQVRIOiAvdXNyL2tkZS8zLjUvc2JpbgpQQVRIOiAvdXNyL2tkZS8zLjUv
YmluClBBVEg6IC91c3IvcXQvMy9iaW4KCgojIyAtLS0tLS0tLS0tLSAjIwojIyBDb3JlIHRlc3Rz
LiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjIwMTU6IGNoZWNraW5nIGJ1aWxkIHN5
c3RlbSB0eXBlCmNvbmZpZ3VyZToyMDMzOiByZXN1bHQ6IGk2ODYtcGMtbGludXgtZ251CmNvbmZp
Z3VyZToyMDU1OiBjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToyMDcwOiByZXN1
bHQ6IGk2ODYtcGMtbGludXgtZ251CmNvbmZpZ3VyZToyMDkyOiBjaGVja2luZyB0YXJnZXQgc3lz
dGVtIHR5cGUKY29uZmlndXJlOjIxMDc6IHJlc3VsdDogaTY4Ni1wYy1saW51eC1nbnUKY29uZmln
dXJlOjIxNTQ6IGNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJl
OjIyMTA6IHJlc3VsdDogL2Jpbi9pbnN0YWxsIC1jCmNvbmZpZ3VyZToyMjIxOiBjaGVja2luZyB3
aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUKY29uZmlndXJlOjIyNjQ6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToyMzI5OiBjaGVja2luZyBmb3IgZ2F3awpjb25maWd1cmU6MjM0NTogZm91
bmQgL2Jpbi9nYXdrCmNvbmZpZ3VyZToyMzU2OiByZXN1bHQ6IGdhd2sKY29uZmlndXJlOjIzNjc6
IGNoZWNraW5nIHdoZXRoZXIgbWFrZSBzZXRzICQoTUFLRSkKY29uZmlndXJlOjIzODg6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToyNTk0OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZysr
CmNvbmZpZ3VyZToyNjEwOiBmb3VuZCAvdXNyL2xpYi9jY2FjaGUvYmluL2k2ODYtcGMtbGludXgt
Z251LWcrKwpjb25maWd1cmU6MjYyMTogcmVzdWx0OiBpNjg2LXBjLWxpbnV4LWdudS1nKysKY29u
ZmlndXJlOjI2OTY6IGNoZWNraW5nIGZvciBDKysgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6
MjcwMzogaTY4Ni1wYy1saW51eC1nbnUtZysrIC0tdmVyc2lvbiA+JjUKaTY4Ni1wYy1saW51eC1n
bnUtZysrIChHQ0MpIDQuMS4xIChHZW50b28gNC4xLjEpCkNvcHlyaWdodCAoQykgMjAwNiBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhl
IHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk8Kd2FycmFudHk7IG5v
dCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UuCgpjb25maWd1cmU6MjcwNjogJD8gPSAwCmNvbmZpZ3VyZToyNzEzOiBpNjg2LXBjLWxp
bnV4LWdudS1nKysgLXYgPiY1ClVzaW5nIGJ1aWx0LWluIHNwZWNzLgpUYXJnZXQ6IGk2ODYtcGMt
bGludXgtZ251CkNvbmZpZ3VyZWQgd2l0aDogL3Zhci90bXAvcG9ydGFnZS9nY2MtNC4xLjEvd29y
ay9nY2MtNC4xLjEvY29uZmlndXJlIC0tcHJlZml4PS91c3IgLS1iaW5kaXI9L3Vzci9pNjg2LXBj
LWxpbnV4LWdudS9nY2MtYmluLzQuMS4xIC0taW5jbHVkZWRpcj0vdXNyL2xpYi9nY2MvaTY4Ni1w
Yy1saW51eC1nbnUvNC4xLjEvaW5jbHVkZSAtLWRhdGFkaXI9L3Vzci9zaGFyZS9nY2MtZGF0YS9p
Njg2LXBjLWxpbnV4LWdudS80LjEuMSAtLW1hbmRpcj0vdXNyL3NoYXJlL2djYy1kYXRhL2k2ODYt
cGMtbGludXgtZ251LzQuMS4xL21hbiAtLWluZm9kaXI9L3Vzci9zaGFyZS9nY2MtZGF0YS9pNjg2
LXBjLWxpbnV4LWdudS80LjEuMS9pbmZvIC0td2l0aC1neHgtaW5jbHVkZS1kaXI9L3Vzci9saWIv
Z2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4xL2luY2x1ZGUvZysrLXY0IC0taG9zdD1pNjg2LXBj
LWxpbnV4LWdudSAtLWJ1aWxkPWk2ODYtcGMtbGludXgtZ251IC0tZGlzYWJsZS1hbHRpdmVjIC0t
ZW5hYmxlLW5scyAtLXdpdGhvdXQtaW5jbHVkZWQtZ2V0dGV4dCAtLXdpdGgtc3lzdGVtLXpsaWIg
LS1kaXNhYmxlLWNoZWNraW5nIC0tZGlzYWJsZS13ZXJyb3IgLS1kaXNhYmxlLWxpYnVud2luZC1l
eGNlcHRpb25zIC0tZGlzYWJsZS1tdWx0aWxpYiAtLWRpc2FibGUtbGlibXVkZmxhcCAtLWRpc2Fi
bGUtbGlic3NwIC0tZGlzYWJsZS1saWJnY2ogLS1lbmFibGUtbGFuZ3VhZ2VzPWMsYysrIC0tZW5h
YmxlLXNoYXJlZCAtLWVuYWJsZS10aHJlYWRzPXBvc2l4IC0tZW5hYmxlLV9fY3hhX2F0ZXhpdCAt
LWVuYWJsZS1jbG9jYWxlPWdudQpUaHJlYWQgbW9kZWw6IHBvc2l4CmdjYyB2ZXJzaW9uIDQuMS4x
IChHZW50b28gNC4xLjEpCmNvbmZpZ3VyZToyNzE2OiAkPyA9IDAKY29uZmlndXJlOjI3MjM6IGk2
ODYtcGMtbGludXgtZ251LWcrKyAtViA+JjUKaTY4Ni1wYy1saW51eC1nbnUtZysrOiAnLVYnIG9w
dGlvbiBtdXN0IGhhdmUgYXJndW1lbnQKY29uZmlndXJlOjI3MjY6ICQ/ID0gMQpjb25maWd1cmU6
Mjc0OTogY2hlY2tpbmcgZm9yIEMrKyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUK
Y29uZmlndXJlOjI3NzY6IGk2ODYtcGMtbGludXgtZ251LWcrKyAtTzIgLW1hcmNoPXBlbnRpdW00
IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuY3BwICA+JjUKY29uZmlndXJl
OjI3Nzk6ICQ/ID0gMApjb25maWd1cmU6MjgyNTogcmVzdWx0OiBhLm91dApjb25maWd1cmU6Mjgz
MDogY2hlY2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZToyODQw
OiAuL2Eub3V0CmNvbmZpZ3VyZToyODQzOiAkPyA9IDAKY29uZmlndXJlOjI4NjA6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToyODY3OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBjcm9zcyBjb21waWxp
bmcKY29uZmlndXJlOjI4Njk6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4NzI6IGNoZWNraW5nIGZv
ciBzdWZmaXggb2YgZXhlY3V0YWJsZXMKY29uZmlndXJlOjI4Nzk6IGk2ODYtcGMtbGludXgtZ251
LWcrKyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1w
b2ludGVyICAgY29uZnRlc3QuY3BwICA+JjUKY29uZmlndXJlOjI4ODI6ICQ/ID0gMApjb25maWd1
cmU6MjkwNjogcmVzdWx0OiAKY29uZmlndXJlOjI5MTI6IGNoZWNraW5nIGZvciBzdWZmaXggb2Yg
b2JqZWN0IGZpbGVzCmNvbmZpZ3VyZToyOTM4OiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLWMgLU8y
IC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuY3Bw
ID4mNQpjb25maWd1cmU6Mjk0MTogJD8gPSAwCmNvbmZpZ3VyZToyOTY0OiByZXN1bHQ6IG8KY29u
ZmlndXJlOjI5Njg6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQysrIGNv
bXBpbGVyCmNvbmZpZ3VyZToyOTk3OiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLWMgLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuY3BwID4mNQpj
b25maWd1cmU6MzAwMzogJD8gPSAwCmNvbmZpZ3VyZTozMDEwOiB0ZXN0IC16ICIkYWNfY3h4X3dl
cnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTozMDEzOiAkPyA9
IDAKY29uZmlndXJlOjMwMjA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MzAyMzogJD8g
PSAwCmNvbmZpZ3VyZTozMDM3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MzA0MjogY2hlY2tpbmcg
d2hldGhlciBpNjg2LXBjLWxpbnV4LWdudS1nKysgYWNjZXB0cyAtZwpjb25maWd1cmU6MzA3Mjog
aTY4Ni1wYy1saW51eC1nbnUtZysrIC1jIC1nICBjb25mdGVzdC5jcHAgPiY1CmNvbmZpZ3VyZToz
MDc4OiAkPyA9IDAKY29uZmlndXJlOjMwODU6IHRlc3QgLXogIiRhY19jeHhfd2Vycm9yX2ZsYWci
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjMwODg6ICQ/ID0gMApjb25maWd1
cmU6MzA5NTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTozMDk4OiAkPyA9IDAKY29uZmln
dXJlOjMyMjg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMjYyOiBjaGVja2luZyBmb3Igc3R5bGUg
b2YgaW5jbHVkZSB1c2VkIGJ5IG1ha2UKY29uZmlndXJlOjMyOTA6IHJlc3VsdDogR05VCmNvbmZp
Z3VyZTozMzE4OiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mIGk2ODYtcGMtbGludXgtZ251
LWcrKwpjb25maWd1cmU6MzQwODogcmVzdWx0OiBnY2MzCmNvbmZpZ3VyZTozNDMzOiBjaGVja2lu
ZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZ2NjCmNvbmZpZ3VyZTozNDQ5OiBmb3VuZCAvdXNyL2xp
Yi9jY2FjaGUvYmluL2k2ODYtcGMtbGludXgtZ251LWdjYwpjb25maWd1cmU6MzQ2MDogcmVzdWx0
OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MKY29uZmlndXJlOjM3Mzg6IGNoZWNraW5nIGZvciBDIGNv
bXBpbGVyIHZlcnNpb24KY29uZmlndXJlOjM3NDU6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtLXZl
cnNpb24gPiY1Cmk2ODYtcGMtbGludXgtZ251LWdjYyAoR0NDKSA0LjEuMSAoR2VudG9vIDQuMS4x
KQpDb3B5cmlnaHQgKEMpIDIwMDYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuClRoaXMg
aXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4g
IFRoZXJlIGlzIE5PCndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLgoKY29uZmlndXJlOjM3NDg6ICQ/ID0gMApj
b25maWd1cmU6Mzc1NTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC12ID4mNQpVc2luZyBidWlsdC1p
biBzcGVjcy4KVGFyZ2V0OiBpNjg2LXBjLWxpbnV4LWdudQpDb25maWd1cmVkIHdpdGg6IC92YXIv
dG1wL3BvcnRhZ2UvZ2NjLTQuMS4xL3dvcmsvZ2NjLTQuMS4xL2NvbmZpZ3VyZSAtLXByZWZpeD0v
dXNyIC0tYmluZGlyPS91c3IvaTY4Ni1wYy1saW51eC1nbnUvZ2NjLWJpbi80LjEuMSAtLWluY2x1
ZGVkaXI9L3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4xL2luY2x1ZGUgLS1kYXRh
ZGlyPS91c3Ivc2hhcmUvZ2NjLWRhdGEvaTY4Ni1wYy1saW51eC1nbnUvNC4xLjEgLS1tYW5kaXI9
L3Vzci9zaGFyZS9nY2MtZGF0YS9pNjg2LXBjLWxpbnV4LWdudS80LjEuMS9tYW4gLS1pbmZvZGly
PS91c3Ivc2hhcmUvZ2NjLWRhdGEvaTY4Ni1wYy1saW51eC1nbnUvNC4xLjEvaW5mbyAtLXdpdGgt
Z3h4LWluY2x1ZGUtZGlyPS91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEuMS9pbmNs
dWRlL2crKy12NCAtLWhvc3Q9aTY4Ni1wYy1saW51eC1nbnUgLS1idWlsZD1pNjg2LXBjLWxpbnV4
LWdudSAtLWRpc2FibGUtYWx0aXZlYyAtLWVuYWJsZS1ubHMgLS13aXRob3V0LWluY2x1ZGVkLWdl
dHRleHQgLS13aXRoLXN5c3RlbS16bGliIC0tZGlzYWJsZS1jaGVja2luZyAtLWRpc2FibGUtd2Vy
cm9yIC0tZGlzYWJsZS1saWJ1bndpbmQtZXhjZXB0aW9ucyAtLWRpc2FibGUtbXVsdGlsaWIgLS1k
aXNhYmxlLWxpYm11ZGZsYXAgLS1kaXNhYmxlLWxpYnNzcCAtLWRpc2FibGUtbGliZ2NqIC0tZW5h
YmxlLWxhbmd1YWdlcz1jLGMrKyAtLWVuYWJsZS1zaGFyZWQgLS1lbmFibGUtdGhyZWFkcz1wb3Np
eCAtLWVuYWJsZS1fX2N4YV9hdGV4aXQgLS1lbmFibGUtY2xvY2FsZT1nbnUKVGhyZWFkIG1vZGVs
OiBwb3NpeApnY2MgdmVyc2lvbiA0LjEuMSAoR2VudG9vIDQuMS4xKQpjb25maWd1cmU6Mzc1ODog
JD8gPSAwCmNvbmZpZ3VyZTozNzY1OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLVYgPiY1Cmk2ODYt
cGMtbGludXgtZ251LWdjYzogJy1WJyBvcHRpb24gbXVzdCBoYXZlIGFyZ3VtZW50CmNvbmZpZ3Vy
ZTozNzY4OiAkPyA9IDEKY29uZmlndXJlOjM3NzE6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVz
aW5nIHRoZSBHTlUgQyBjb21waWxlcgpjb25maWd1cmU6MzgwMDogaTY4Ni1wYy1saW51eC1nbnUt
Z2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTozODA2OiAkPyA9IDAKY29uZmlndXJlOjM4MTM6IHRlc3Qg
LXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3Vy
ZTozODE2OiAkPyA9IDAKY29uZmlndXJlOjM4MjM6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1
cmU6MzgyNjogJD8gPSAwCmNvbmZpZ3VyZTozODQwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mzg0
NTogY2hlY2tpbmcgd2hldGhlciBpNjg2LXBjLWxpbnV4LWdudS1nY2MgYWNjZXB0cyAtZwpjb25m
aWd1cmU6Mzg3NTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1nICBjb25mdGVzdC5jID4mNQpj
b25maWd1cmU6Mzg4MTogJD8gPSAwCmNvbmZpZ3VyZTozODg4OiB0ZXN0IC16ICIkYWNfY193ZXJy
b3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6Mzg5MTogJD8gPSAw
CmNvbmZpZ3VyZTozODk4OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjM5MDE6ICQ/ID0g
MApjb25maWd1cmU6NDAzMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQwNDg6IGNoZWNraW5nIGZv
ciBpNjg2LXBjLWxpbnV4LWdudS1nY2Mgb3B0aW9uIHRvIGFjY2VwdCBJU08gQzg5CmNvbmZpZ3Vy
ZTo0MTIyOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBp
cGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0MTI4OiAk
PyA9IDAKY29uZmlndXJlOjQxMzU6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo0MTM4OiAkPyA9IDAKY29uZmlndXJlOjQxNDU6
IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NDE0ODogJD8gPSAwCmNvbmZpZ3VyZTo0MTY4
OiByZXN1bHQ6IG5vbmUgbmVlZGVkCmNvbmZpZ3VyZTo0MTg4OiBjaGVja2luZyBkZXBlbmRlbmN5
IHN0eWxlIG9mIGk2ODYtcGMtbGludXgtZ251LWdjYwpjb25maWd1cmU6NDI3ODogcmVzdWx0OiBn
Y2MzCmNvbmZpZ3VyZTo0MzY3OiBjaGVja2luZyBmb3IgYSBzZWQgdGhhdCBkb2VzIG5vdCB0cnVu
Y2F0ZSBvdXRwdXQKY29uZmlndXJlOjQ0MjE6IHJlc3VsdDogL2Jpbi9zZWQKY29uZmlndXJlOjQ0
MjQ6IGNoZWNraW5nIGZvciBncmVwIHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZQpjb25m
aWd1cmU6NDQ5ODogcmVzdWx0OiAvYmluL2dyZXAKY29uZmlndXJlOjQ1MDM6IGNoZWNraW5nIGZv
ciBlZ3JlcApjb25maWd1cmU6NDU4MTogcmVzdWx0OiAvYmluL2dyZXAgLUUKY29uZmlndXJlOjQ1
OTc6IGNoZWNraW5nIGZvciBsZCB1c2VkIGJ5IGk2ODYtcGMtbGludXgtZ251LWdjYwpjb25maWd1
cmU6NDY2NDogcmVzdWx0OiAvdXNyL2k2ODYtcGMtbGludXgtZ251L2Jpbi9sZApjb25maWd1cmU6
NDY3MzogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4v
bGQpIGlzIEdOVSBsZApjb25maWd1cmU6NDY4ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ2OTM6
IGNoZWNraW5nIGZvciAvdXNyL2k2ODYtcGMtbGludXgtZ251L2Jpbi9sZCBvcHRpb24gdG8gcmVs
b2FkIG9iamVjdCBmaWxlcwpjb25maWd1cmU6NDcwMDogcmVzdWx0OiAtcgpjb25maWd1cmU6NDcx
ODogY2hlY2tpbmcgZm9yIEJTRC1jb21wYXRpYmxlIG5tCmNvbmZpZ3VyZTo0NzY3OiByZXN1bHQ6
IC91c3IvYmluL25tIC1CCmNvbmZpZ3VyZTo0NzcxOiBjaGVja2luZyB3aGV0aGVyIGxuIC1zIHdv
cmtzCmNvbmZpZ3VyZTo0Nzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDc4MjogY2hlY2tpbmcg
aG93IHRvIHJlY29nbmlzZSBkZXBlbmRlbnQgbGlicmFyaWVzCmNvbmZpZ3VyZTo0OTU4OiByZXN1
bHQ6IHBhc3NfYWxsCmNvbmZpZ3VyZTo1MjA4OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHBy
ZXByb2Nlc3Nvcgpjb25maWd1cmU6NTI0ODogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1FICBjb25m
dGVzdC5jCmNvbmZpZ3VyZTo1MjU0OiAkPyA9IDAKY29uZmlndXJlOjUyOTI6IGk2ODYtcGMtbGlu
dXgtZ251LWdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjEwOjI4OiBlcnJvcjogYWNfbm9u
ZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6NTI5ODogJD8g
PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8
ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJodW5zcGVsbCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN
RSAiaHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuMS40Igp8ICNkZWZpbmUg
UEFDS0FHRV9TVFJJTkcgImh1bnNwZWxsIDEuMS40Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
UlQgIm5lbWV0aGxAZ3lvcnNwb3N0YS5odSIKfCAjZGVmaW5lIFBBQ0tBR0UgImh1bnNwZWxsIgp8
ICNkZWZpbmUgVkVSU0lPTiAiMS4xLjQiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs
dWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1cmU6NTMzODogcmVzdWx0OiBpNjg2LXBjLWxp
bnV4LWdudS1nY2MgLUUKY29uZmlndXJlOjUzNjc6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtRSAg
Y29uZnRlc3QuYwpjb25maWd1cmU6NTM3MzogJD8gPSAwCmNvbmZpZ3VyZTo1NDExOiBpNjg2LXBj
LWxpbnV4LWdudS1nY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoxMDoyODogZXJyb3I6IGFj
X25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjU0MTc6
ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAg
Ki8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiaHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1RB
Uk5BTUUgImh1bnNwZWxsIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIxLjEuNCIKfCAjZGVm
aW5lIFBBQ0tBR0VfU1RSSU5HICJodW5zcGVsbCAxLjEuNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH
UkVQT1JUICJuZW1ldGhsQGd5b3JzcG9zdGEuaHUiCnwgI2RlZmluZSBQQUNLQUdFICJodW5zcGVs
bCIKfCAjZGVmaW5lIFZFUlNJT04gIjEuMS40Igp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
aW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjU0NjI6IGNoZWNraW5nIGZvciBB
TlNJIEMgaGVhZGVyIGZpbGVzCmNvbmZpZ3VyZTo1NDkyOiBpNjg2LXBjLWxpbnV4LWdudS1nY2Mg
LWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRl
c3QuYyA+JjUKY29uZmlndXJlOjU0OTg6ICQ/ID0gMApjb25maWd1cmU6NTUwNTogdGVzdCAteiAi
JGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjU1
MDg6ICQ/ID0gMApjb25maWd1cmU6NTUxNTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo1
NTE4OiAkPyA9IDAKY29uZmlndXJlOjU2MTQ6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25m
dGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29u
ZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo1NjE3OiAkPyA9IDAKY29uZmlndXJlOjU2MjM6IC4vY29u
ZnRlc3QKY29uZmlndXJlOjU2MjY6ICQ/ID0gMApjb25maWd1cmU6NTY0MzogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjU2Njc6IGNoZWNraW5nIGZvciBzeXMvdHlwZXMuaApjb25maWd1cmU6NTY4ODog
aTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0
LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo1Njk0OiAkPyA9IDAKY29u
ZmlndXJlOjU3MDE6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZTo1NzA0OiAkPyA9IDAKY29uZmlndXJlOjU3MTE6IHRlc3QgLXMg
Y29uZnRlc3Qubwpjb25maWd1cmU6NTcxNDogJD8gPSAwCmNvbmZpZ3VyZTo1NzI3OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6NTY2NzogY2hlY2tpbmcgZm9yIHN5cy9zdGF0LmgKY29uZmlndXJlOjU2
ODg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1m
b21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NTY5NDogJD8gPSAw
CmNvbmZpZ3VyZTo1NzAxOiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTcwNDogJD8gPSAwCmNvbmZpZ3VyZTo1NzExOiB0ZXN0
IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjU3MTQ6ICQ/ID0gMApjb25maWd1cmU6NTcyNzogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjU2Njc6IGNoZWNraW5nIGZvciBzdGRsaWIuaApjb25maWd1cmU6
NTY4ODogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo1Njk0OiAkPyA9
IDAKY29uZmlndXJlOjU3MDE6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo1NzA0OiAkPyA9IDAKY29uZmlndXJlOjU3MTE6IHRl
c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NTcxNDogJD8gPSAwCmNvbmZpZ3VyZTo1NzI3OiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6NTY2NzogY2hlY2tpbmcgZm9yIHN0cmluZy5oCmNvbmZpZ3Vy
ZTo1Njg4OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlw
ZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjU2OTQ6ICQ/
ID0gMApjb25maWd1cmU6NTcwMTogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjU3MDQ6ICQ/ID0gMApjb25maWd1cmU6NTcxMTog
dGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo1NzE0OiAkPyA9IDAKY29uZmlndXJlOjU3Mjc6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1NjY3OiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmln
dXJlOjU2ODg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1w
aXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NTY5NDog
JD8gPSAwCmNvbmZpZ3VyZTo1NzAxOiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTcwNDogJD8gPSAwCmNvbmZpZ3VyZTo1NzEx
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjU3MTQ6ICQ/ID0gMApjb25maWd1cmU6NTcy
NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjU2Njc6IGNoZWNraW5nIGZvciBzdHJpbmdzLmgKY29u
ZmlndXJlOjU2ODg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00
IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6NTY5
NDogJD8gPSAwCmNvbmZpZ3VyZTo1NzAxOiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwg
dGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTcwNDogJD8gPSAwCmNvbmZpZ3VyZTo1
NzExOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjU3MTQ6ICQ/ID0gMApjb25maWd1cmU6
NTcyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjU2Njc6IGNoZWNraW5nIGZvciBpbnR0eXBlcy5o
CmNvbmZpZ3VyZTo1Njg4OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50
aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl
OjU2OTQ6ICQ/ID0gMApjb25maWd1cmU6NTcwMTogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWci
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjU3MDQ6ICQ/ID0gMApjb25maWd1
cmU6NTcxMTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo1NzE0OiAkPyA9IDAKY29uZmln
dXJlOjU3Mjc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1NjY3OiBjaGVja2luZyBmb3Igc3RkaW50
LmgKY29uZmlndXJlOjU2ODg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1
cmU6NTY5NDogJD8gPSAwCmNvbmZpZ3VyZTo1NzAxOiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxh
ZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTcwNDogJD8gPSAwCmNvbmZp
Z3VyZTo1NzExOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjU3MTQ6ICQ/ID0gMApjb25m
aWd1cmU6NTcyNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjU2Njc6IGNoZWNraW5nIGZvciB1bmlz
dGQuaApjb25maWd1cmU6NTY4ODogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9
cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZTo1Njk0OiAkPyA9IDAKY29uZmlndXJlOjU3MDE6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9m
bGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo1NzA0OiAkPyA9IDAKY29u
ZmlndXJlOjU3MTE6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NTcxNDogJD8gPSAwCmNv
bmZpZ3VyZTo1NzI3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NTc1NDogY2hlY2tpbmcgZGxmY24u
aCB1c2FiaWxpdHkKY29uZmlndXJlOjU3NzE6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIg
LW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4m
NQpjb25maWd1cmU6NTc3NzogJD8gPSAwCmNvbmZpZ3VyZTo1Nzg0OiB0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTc4NzogJD8g
PSAwCmNvbmZpZ3VyZTo1Nzk0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjU3OTc6ICQ/
ID0gMApjb25maWd1cmU6NTgwODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjU4MTI6IGNoZWNraW5n
IGRsZmNuLmggcHJlc2VuY2UKY29uZmlndXJlOjU4Mjc6IGk2ODYtcGMtbGludXgtZ251LWdjYyAt
RSAgY29uZnRlc3QuYwpjb25maWd1cmU6NTgzMzogJD8gPSAwCmNvbmZpZ3VyZTo1ODU0OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6NTg4NzogY2hlY2tpbmcgZm9yIGRsZmNuLmgKY29uZmlndXJlOjU4
OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1OTE4OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBD
KysgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTo1OTU0OiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLUUg
IGNvbmZ0ZXN0LmNwcApjb25maWd1cmU6NTk2MDogJD8gPSAwCmNvbmZpZ3VyZTo1OTk4OiBpNjg2
LXBjLWxpbnV4LWdudS1nKysgLUUgIGNvbmZ0ZXN0LmNwcApjb25mdGVzdC5jcHA6MjE6Mjg6IGVy
cm9yOiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3Vy
ZTo2MDA0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl
ZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImh1bnNwZWxsIgp8ICNkZWZpbmUgUEFD
S0FHRV9UQVJOQU1FICJodW5zcGVsbCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMS4xLjQi
CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiaHVuc3BlbGwgMS4xLjQiCnwgI2RlZmluZSBQQUNL
QUdFX0JVR1JFUE9SVCAibmVtZXRobEBneW9yc3Bvc3RhLmh1Igp8ICNkZWZpbmUgUEFDS0FHRSAi
aHVuc3BlbGwiCnwgI2RlZmluZSBWRVJTSU9OICIxLjEuNCIKfCAjZGVmaW5lIFNURENfSEVBREVS
UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf
SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8
ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl
ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgLyogZW5kIGNvbmZk
ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1cmU6NjA0NDog
cmVzdWx0OiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLUUKY29uZmlndXJlOjYwNzM6IGk2ODYtcGMt
bGludXgtZ251LWcrKyAtRSAgY29uZnRlc3QuY3BwCmNvbmZpZ3VyZTo2MDc5OiAkPyA9IDAKY29u
ZmlndXJlOjYxMTc6IGk2ODYtcGMtbGludXgtZ251LWcrKyAtRSAgY29uZnRlc3QuY3BwCmNvbmZ0
ZXN0LmNwcDoyMToyODogZXJyb3I6IGFjX25vbmV4aXN0ZW50Lmg6IE5vIHN1Y2ggZmlsZSBvciBk
aXJlY3RvcnkKY29uZmlndXJlOjYxMjM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt
IHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiaHVuc3Bl
bGwiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImh1bnNwZWxsIgp8ICNkZWZpbmUgUEFDS0FH
RV9WRVJTSU9OICIxLjEuNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJodW5zcGVsbCAxLjEu
NCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJuZW1ldGhsQGd5b3JzcG9zdGEuaHUiCnwg
I2RlZmluZSBQQUNLQUdFICJodW5zcGVsbCIKfCAjZGVmaW5lIFZFUlNJT04gIjEuMS40Igp8ICNk
ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9I
IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+
CmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZzc3CmNvbmZp
Z3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1w
Yy1saW51eC1nbnUtZjc3CmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5
OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUteGxmCmNvbmZpZ3VyZTo2MjA5OiByZXN1
bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZnJ0
CmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3Ig
aTY4Ni1wYy1saW51eC1nbnUtcGdmNzcKY29uZmlndXJlOjYyMDk6IHJlc3VsdDogbm8KY29uZmln
dXJlOjYxNzk6IGNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1jZjc3CmNvbmZpZ3VyZTo2
MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51
eC1nbnUtZm9ydDc3CmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBj
aGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZmwzMgpjb25maWd1cmU6NjIwOTogcmVzdWx0
OiBubwpjb25maWd1cmU6NjE3OTogY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWFmNzcK
Y29uZmlndXJlOjYyMDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjYxNzk6IGNoZWNraW5nIGZvciBp
Njg2LXBjLWxpbnV4LWdudS1mOTAKY29uZmlndXJlOjYyMDk6IHJlc3VsdDogbm8KY29uZmlndXJl
OjYxNzk6IGNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS14bGY5MApjb25maWd1cmU6NjIw
OTogcmVzdWx0OiBubwpjb25maWd1cmU6NjE3OTogY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgt
Z251LXBnZjkwCmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVj
a2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtcGdocGYKY29uZmlndXJlOjYyMDk6IHJlc3VsdDog
bm8KY29uZmlndXJlOjYxNzk6IGNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1lcGNmOTAK
Y29uZmlndXJlOjYyMDk6IHJlc3VsdDogbm8KY29uZmlndXJlOjYxNzk6IGNoZWNraW5nIGZvciBp
Njg2LXBjLWxpbnV4LWdudS1nZm9ydHJhbgpjb25maWd1cmU6NjIwOTogcmVzdWx0OiBubwpjb25m
aWd1cmU6NjE3OTogY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWc5NQpjb25maWd1cmU6
NjIwOTogcmVzdWx0OiBubwpjb25maWd1cmU6NjE3OTogY2hlY2tpbmcgZm9yIGk2ODYtcGMtbGlu
dXgtZ251LWY5NQpjb25maWd1cmU6NjIwOTogcmVzdWx0OiBubwpjb25maWd1cmU6NjE3OTogY2hl
Y2tpbmcgZm9yIGk2ODYtcGMtbGludXgtZ251LWZvcnQKY29uZmlndXJlOjYyMDk6IHJlc3VsdDog
bm8KY29uZmlndXJlOjYxNzk6IGNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS14bGY5NQpj
b25maWd1cmU6NjIwOTogcmVzdWx0OiBubwpjb25maWd1cmU6NjE3OTogY2hlY2tpbmcgZm9yIGk2
ODYtcGMtbGludXgtZ251LWlmb3J0CmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
ZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtaWZjCmNvbmZpZ3VyZTo2MjA5
OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1n
bnUtZWZjCmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2lu
ZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtcGdmOTUKY29uZmlndXJlOjYyMDk6IHJlc3VsdDogbm8K
Y29uZmlndXJlOjYxNzk6IGNoZWNraW5nIGZvciBpNjg2LXBjLWxpbnV4LWdudS1sZjk1CmNvbmZp
Z3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MTc5OiBjaGVja2luZyBmb3IgaTY4Ni1w
Yy1saW51eC1nbnUtZnRuCmNvbmZpZ3VyZTo2MjA5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2MjIz
OiBjaGVja2luZyBmb3IgZzc3CmNvbmZpZ3VyZTo2MjUzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2
MjIzOiBjaGVja2luZyBmb3IgZjc3CmNvbmZpZ3VyZTo2MjM5OiBmb3VuZCAvdXNyL2Jpbi9mNzcK
Y29uZmlndXJlOjYyNTA6IHJlc3VsdDogZjc3CmNvbmZpZ3VyZTo2MjgwOiBjaGVja2luZyBmb3Ig
Rm9ydHJhbiA3NyBjb21waWxlciB2ZXJzaW9uCmNvbmZpZ3VyZTo2Mjg3OiBmNzcgLS12ZXJzaW9u
ID4mNQpnY2MtY29uZmlnIGVycm9yOiBDb3VsZCBub3QgcnVuL2xvY2F0ZSAiZzc3Igpjb25maWd1
cmU6NjI5MDogJD8gPSAxCmNvbmZpZ3VyZTo2Mjk3OiBmNzcgLXYgPiY1CmdjYy1jb25maWcgZXJy
b3I6IENvdWxkIG5vdCBydW4vbG9jYXRlICJnNzciCmNvbmZpZ3VyZTo2MzAwOiAkPyA9IDEKY29u
ZmlndXJlOjYzMDc6IGY3NyAtViA+JjUKZ2NjLWNvbmZpZyBlcnJvcjogQ291bGQgbm90IHJ1bi9s
b2NhdGUgImc3NyIKY29uZmlndXJlOjYzMTA6ICQ/ID0gMQpjb25maWd1cmU6NjMxODogY2hlY2tp
bmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBGb3J0cmFuIDc3IGNvbXBpbGVyCmNvbmZp
Z3VyZTo2MzM3OiBmNzcgLWMgIGNvbmZ0ZXN0LkYgPiY1CmdjYy1jb25maWcgZXJyb3I6IENvdWxk
IG5vdCBydW4vbG9jYXRlICJnNzciCmNvbmZpZ3VyZTo2MzQzOiAkPyA9IDEKY29uZmlndXJlOiBm
YWlsZWQgcHJvZ3JhbSB3YXM6CnwgICAgICAgcHJvZ3JhbSBtYWluCnwgI2lmbmRlZiBfX0dOVUNf
Xwp8ICAgICAgICBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8ICAgICAgIGVuZApjb25maWd1cmU6NjM3
NzogcmVzdWx0OiBubwpjb25maWd1cmU6NjM4MzogY2hlY2tpbmcgd2hldGhlciBmNzcgYWNjZXB0
cyAtZwpjb25maWd1cmU6NjQwMDogZjc3IC1jIC1nIGNvbmZ0ZXN0LmYgPiY1CmdjYy1jb25maWcg
ZXJyb3I6IENvdWxkIG5vdCBydW4vbG9jYXRlICJnNzciCmNvbmZpZ3VyZTo2NDA2OiAkPyA9IDEK
Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgICAgICAgcHJvZ3JhbSBtYWluCnwgCnwg
ICAgICAgZW5kCmNvbmZpZ3VyZTo2NDM5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo2NDY5OiBjaGVj
a2luZyB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwpjb25maWd1
cmU6NjU3ODogcmVzdWx0OiAzMjc2OApjb25maWd1cmU6NjU4OTogY2hlY2tpbmcgY29tbWFuZCB0
byBwYXJzZSAvdXNyL2Jpbi9ubSAtQiBvdXRwdXQgZnJvbSBpNjg2LXBjLWxpbnV4LWdudS1nY2Mg
b2JqZWN0CmNvbmZpZ3VyZTo2Njk0OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29u
ZmlndXJlOjY2OTc6ICQ/ID0gMApjb25maWd1cmU6NjcwMTogL3Vzci9iaW4vbm0gLUIgY29uZnRl
c3QubyBcfCBzZWQgLW4gLWUgJ3MvXi4qWyAJXVwoW0FCQ0RHSVJTVFddW0FCQ0RHSVJTVFddKlwp
WyAJXVsgCV0qXChbX0EtWmEtel1bX0EtWmEtejAtOV0qXCkkL1wxIFwyIFwyL3AnIFw+IGNvbmZ0
ZXN0Lm5tCmNvbmZpZ3VyZTo2NzA0OiAkPyA9IDAKY29uZmlndXJlOjY3NTY6IGk2ODYtcGMtbGlu
dXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1m
cmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyBjb25mdHN0bS5vID4mNQpjb25maWd1cmU6Njc1OTog
JD8gPSAwCmNvbmZpZ3VyZTo2Nzk3OiByZXN1bHQ6IG9rCmNvbmZpZ3VyZTo2ODAxOiBjaGVja2lu
ZyBmb3Igb2JqZGlyCmNvbmZpZ3VyZTo2ODE2OiByZXN1bHQ6IC5saWJzCmNvbmZpZ3VyZTo2ODY4
OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtYXIKY29uZmlndXJlOjY4ODQ6IGZvdW5k
IC91c3IvYmluL2k2ODYtcGMtbGludXgtZ251LWFyCmNvbmZpZ3VyZTo2ODk1OiByZXN1bHQ6IGk2
ODYtcGMtbGludXgtZ251LWFyCmNvbmZpZ3VyZTo2OTY0OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1s
aW51eC1nbnUtcmFubGliCmNvbmZpZ3VyZTo2OTgwOiBmb3VuZCAvdXNyL2Jpbi9pNjg2LXBjLWxp
bnV4LWdudS1yYW5saWIKY29uZmlndXJlOjY5OTE6IHJlc3VsdDogaTY4Ni1wYy1saW51eC1nbnUt
cmFubGliCmNvbmZpZ3VyZTo3MDYwOiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtc3Ry
aXAKY29uZmlndXJlOjcwNzY6IGZvdW5kIC91c3IvYmluL2k2ODYtcGMtbGludXgtZ251LXN0cmlw
CmNvbmZpZ3VyZTo3MDg3OiByZXN1bHQ6IGk2ODYtcGMtbGludXgtZ251LXN0cmlwCmNvbmZpZ3Vy
ZTo3MzY0OiBjaGVja2luZyBmb3IgY29ycmVjdCBsdG1haW4uc2ggdmVyc2lvbgpjb25maWd1cmU6
NzQxNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjc0NzQ6IGNoZWNraW5nIGlmIGk2ODYtcGMtbGlu
dXgtZ251LWdjYyBzdXBwb3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zCmNvbmZpZ3VyZTo3
NDkyOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAt
Zm9taXQtZnJhbWUtcG9pbnRlciAgLWZuby1ydHRpIC1mbm8tZXhjZXB0aW9ucyBjb25mdGVzdC5j
ID4mNQpjYzE6IHdhcm5pbmc6IGNvbW1hbmQgbGluZSBvcHRpb24gIi1mbm8tcnR0aSIgaXMgdmFs
aWQgZm9yIEMrKy9PYmpDKysgYnV0IG5vdCBmb3IgQwpjYzE6IHdhcm5pbmc6IGNvbW1hbmQgbGlu
ZSBvcHRpb24gIi1mbm8tcnR0aSIgaXMgdmFsaWQgZm9yIEMrKy9PYmpDKysgYnV0IG5vdCBmb3Ig
Qwpjb25maWd1cmU6NzQ5NjogJD8gPSAwCmNvbmZpZ3VyZTo3NTA5OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZTo3NTI0OiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZ2NjIG9wdGlvbiB0byBw
cm9kdWNlIFBJQwpjb25maWd1cmU6NzczNDogcmVzdWx0OiAtZlBJQwpjb25maWd1cmU6Nzc0Mjog
Y2hlY2tpbmcgaWYgaTY4Ni1wYy1saW51eC1nbnUtZ2NjIFBJQyBmbGFnIC1mUElDIHdvcmtzCmNv
bmZpZ3VyZTo3NzYwOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVt
NCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgLWZQSUMgLURQSUMgY29uZnRlc3QuYyA+JjUK
Y29uZmlndXJlOjc3NjQ6ICQ/ID0gMApjb25maWd1cmU6Nzc3NzogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjc4MDU6IGNoZWNraW5nIGlmIGk2ODYtcGMtbGludXgtZ251LWdjYyBzdGF0aWMgZmxhZyAt
c3RhdGljIHdvcmtzCmNvbmZpZ3VyZTo3ODMzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6Nzg0Mzog
Y2hlY2tpbmcgaWYgaTY4Ni1wYy1saW51eC1nbnUtZ2NjIHN1cHBvcnRzIC1jIC1vIGZpbGUubwpj
b25maWd1cmU6Nzg2NDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1
bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIC1vIG91dC9jb25mdGVzdDIubyBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6Nzg2ODogJD8gPSAwCmNvbmZpZ3VyZTo3ODkwOiByZXN1bHQ6IHll
cwpjb25maWd1cmU6NzkxNjogY2hlY2tpbmcgd2hldGhlciB0aGUgaTY4Ni1wYy1saW51eC1nbnUt
Z2NjIGxpbmtlciAoL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQpIHN1cHBvcnRzIHNoYXJl
ZCBsaWJyYXJpZXMKY29uZmlndXJlOjg5MDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo4OTIzOiBj
aGVja2luZyB3aGV0aGVyIC1sYyBzaG91bGQgYmUgZXhwbGljaXRseSBsaW5rZWQgaW4KY29uZmln
dXJlOjg5Mjg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1w
aXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6ODkzMTog
JD8gPSAwCmNvbmZpZ3VyZTo4OTQ2OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLXNoYXJlZCBjb25m
dGVzdC5vICAtdiAtV2wsLXNvbmFtZSAtV2wsY29uZnRlc3QgLW8gY29uZnRlc3QgMlw+XCYxIFx8
IGdyZXAgIC1sYyAgXD4vZGV2L251bGwgMlw+XCYxCmNvbmZpZ3VyZTo4OTQ5OiAkPyA9IDAKY29u
ZmlndXJlOjg5NjE6IHJlc3VsdDogbm8KY29uZmlndXJlOjg5Njk6IGNoZWNraW5nIGR5bmFtaWMg
bGlua2VyIGNoYXJhY3RlcmlzdGljcwpjb25maWd1cmU6OTU5NDogcmVzdWx0OiBHTlUvTGludXgg
bGQuc28KY29uZmlndXJlOjk2MDM6IGNoZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBh
dGhzIGludG8gcHJvZ3JhbXMKY29uZmlndXJlOjk2Mjg6IHJlc3VsdDogaW1tZWRpYXRlCmNvbmZp
Z3VyZTo5NjQyOiBjaGVja2luZyB3aGV0aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMgcG9zc2li
bGUKY29uZmlndXJlOjk2NDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDU2MDogY2hlY2tpbmcg
aWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxMDU2MjogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjEwNTY1OiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHNoYXJl
ZCBsaWJyYXJpZXMKY29uZmlndXJlOjEwNTg2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTA1ODk6
IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc3RhdGljIGxpYnJhcmllcwpjb25maWd1cmU6MTA1
OTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDY4NTogY3JlYXRpbmcgbGlidG9vbApjb25maWd1
cmU6MTEyNzM6IGNoZWNraW5nIGZvciBsZCB1c2VkIGJ5IGk2ODYtcGMtbGludXgtZ251LWcrKwpj
b25maWd1cmU6MTEzNDA6IHJlc3VsdDogL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQKY29u
ZmlndXJlOjExMzQ5OiBjaGVja2luZyBpZiB0aGUgbGlua2VyICgvdXNyL2k2ODYtcGMtbGludXgt
Z251L2Jpbi9sZCkgaXMgR05VIGxkCmNvbmZpZ3VyZToxMTM2NDogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjExNDE1OiBjaGVja2luZyB3aGV0aGVyIHRoZSBpNjg2LXBjLWxpbnV4LWdudS1nKysgbGlu
a2VyICgvdXNyL2k2ODYtcGMtbGludXgtZ251L2Jpbi9sZCkgc3VwcG9ydHMgc2hhcmVkIGxpYnJh
cmllcwpjb25maWd1cmU6MTIzODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMjM5OTogaTY4Ni1w
Yy1saW51eC1nbnUtZysrIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1l
LXBvaW50ZXIgIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjEyNDAyOiAkPyA9IDAKY29uZmln
dXJlOjEyNTIxOiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtZysrIG9wdGlvbiB0byBw
cm9kdWNlIFBJQwpjb25maWd1cmU6MTI3OTU6IHJlc3VsdDogLWZQSUMKY29uZmlndXJlOjEyODAz
OiBjaGVja2luZyBpZiBpNjg2LXBjLWxpbnV4LWdudS1nKysgUElDIGZsYWcgLWZQSUMgd29ya3MK
Y29uZmlndXJlOjEyODIxOiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLWMgLU8yIC1tYXJjaD1wZW50
aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgLWZQSUMgLURQSUMgY29uZnRlc3QuY3Bw
ID4mNQpjb25maWd1cmU6MTI4MjU6ICQ/ID0gMApjb25maWd1cmU6MTI4Mzg6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxMjg2NjogY2hlY2tpbmcgaWYgaTY4Ni1wYy1saW51eC1nbnUtZysrIHN0YXRp
YyBmbGFnIC1zdGF0aWMgd29ya3MKY29uZmlndXJlOjEyODk0OiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MTI5MDQ6IGNoZWNraW5nIGlmIGk2ODYtcGMtbGludXgtZ251LWcrKyBzdXBwb3J0cyAtYyAt
byBmaWxlLm8KY29uZmlndXJlOjEyOTI1OiBpNjg2LXBjLWxpbnV4LWdudS1nKysgLWMgLU8yIC1t
YXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgLW8gb3V0L2NvbmZ0ZXN0
Mi5vIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjEyOTI5OiAkPyA9IDAKY29uZmlndXJlOjEy
OTUxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTI5Nzc6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGk2
ODYtcGMtbGludXgtZ251LWcrKyBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xk
KSBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxMzAwMjogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjEzMDY5OiBjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MK
Y29uZmlndXJlOjEzNjk0OiByZXN1bHQ6IEdOVS9MaW51eCBsZC5zbwpjb25maWd1cmU6MTM3MDM6
IGNoZWNraW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKY29u
ZmlndXJlOjEzNzI4OiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1cmU6MTQyNTQ6IGNoZWNraW5n
IGlmIGxpYnRvb2wgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcwpjb25maWd1cmU6MTQyNTY6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToxNDI1OTogY2hlY2tpbmcgd2hldGhlciB0byBidWlsZCBzaGFy
ZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxNDI3OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0Mjgy
OiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMKY29uZmlndXJlOjE0
Mjg2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQyOTY6IGNoZWNraW5nIGZvciBmNzcgb3B0aW9u
IHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZToxNDUwNjogcmVzdWx0OiAtZlBJQwpjb25maWd1cmU6
MTQ1MTQ6IGNoZWNraW5nIGlmIGY3NyBQSUMgZmxhZyAtZlBJQyB3b3Jrcwpjb25maWd1cmU6MTQ1
MzI6IGY3NyAtYyAgLWZQSUMgY29uZnRlc3QuZiA+JjUKZ2NjLWNvbmZpZyBlcnJvcjogQ291bGQg
bm90IHJ1bi9sb2NhdGUgImc3NyIKY29uZmlndXJlOjE0NTM2OiAkPyA9IDEKY29uZmlndXJlOjE0
NTQ5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDU3NzogY2hlY2tpbmcgaWYgZjc3IHN0YXRpYyBm
bGFnIC1zdGF0aWMgd29ya3MKY29uZmlndXJlOjE0NjA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTox
NDYxNTogY2hlY2tpbmcgaWYgZjc3IHN1cHBvcnRzIC1jIC1vIGZpbGUubwpjb25maWd1cmU6MTQ2
MzY6IGY3NyAtYyAgLW8gb3V0L2NvbmZ0ZXN0Mi5vIGNvbmZ0ZXN0LmYgPiY1CmdjYy1jb25maWcg
ZXJyb3I6IENvdWxkIG5vdCBydW4vbG9jYXRlICJnNzciCmNvbmZpZ3VyZToxNDY0MDogJD8gPSAx
CmNvbmZpZ3VyZToxNDY2MjogcmVzdWx0OiBubwpjb25maWd1cmU6MTQ2ODg6IGNoZWNraW5nIHdo
ZXRoZXIgdGhlIGY3NyBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xkKSBzdXBw
b3J0cyBzaGFyZWQgbGlicmFyaWVzCmNvbmZpZ3VyZToxNTY1NDogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE1NzIxOiBjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MKY29uZmln
dXJlOjE2MzQ2OiByZXN1bHQ6IEdOVS9MaW51eCBsZC5zbwpjb25maWd1cmU6MTYzNTU6IGNoZWNr
aW5nIGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKY29uZmlndXJl
OjE2MzgwOiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1cmU6MjAwMzA6IGNoZWNraW5nIGZjbnRs
LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyMDA0NzogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1P
MiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMg
PiY1CmNvbmZpZ3VyZToyMDA1MzogJD8gPSAwCmNvbmZpZ3VyZToyMDA2MDogdGVzdCAteiAiJGFj
X2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIwMDYz
OiAkPyA9IDAKY29uZmlndXJlOjIwMDcwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIw
MDczOiAkPyA9IDAKY29uZmlndXJlOjIwMDg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAwODg6
IGNoZWNraW5nIGZjbnRsLmggcHJlc2VuY2UKY29uZmlndXJlOjIwMTAzOiBpNjg2LXBjLWxpbnV4
LWdudS1nY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIwMTA5OiAkPyA9IDAKY29uZmlndXJl
OjIwMTMwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAxNjM6IGNoZWNraW5nIGZvciBmY250bC5o
CmNvbmZpZ3VyZToyMDE3MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwMDMwOiBjaGVja2luZyBs
aWJpbnRsLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyMDA0NzogaTY4Ni1wYy1saW51eC1nbnUtZ2Nj
IC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0
ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDA1MzogJD8gPSAwCmNvbmZpZ3VyZToyMDA2MDogdGVzdCAt
eiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJl
OjIwMDYzOiAkPyA9IDAKY29uZmlndXJlOjIwMDcwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmln
dXJlOjIwMDczOiAkPyA9IDAKY29uZmlndXJlOjIwMDg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjAwODg6IGNoZWNraW5nIGxpYmludGwuaCBwcmVzZW5jZQpjb25maWd1cmU6MjAxMDM6IGk2ODYt
cGMtbGludXgtZ251LWdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MjAxMDk6ICQ/ID0gMApj
b25maWd1cmU6MjAxMzA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDE2MzogY2hlY2tpbmcgZm9y
IGxpYmludGwuaApjb25maWd1cmU6MjAxNzE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDAzMDog
Y2hlY2tpbmcgbG9jYWxlLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyMDA0NzogaTY4Ni1wYy1saW51
eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50
ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDA1MzogJD8gPSAwCmNvbmZpZ3VyZToyMDA2
MDogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjIwMDYzOiAkPyA9IDAKY29uZmlndXJlOjIwMDcwOiB0ZXN0IC1zIGNvbmZ0ZXN0
Lm8KY29uZmlndXJlOjIwMDczOiAkPyA9IDAKY29uZmlndXJlOjIwMDg0OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MjAwODg6IGNoZWNraW5nIGxvY2FsZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMDEw
MzogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyMDEwOTog
JD8gPSAwCmNvbmZpZ3VyZToyMDEzMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwMTYzOiBjaGVj
a2luZyBmb3IgbG9jYWxlLmgKY29uZmlndXJlOjIwMTcxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjAwMjA6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MjAwMjY6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToyMDAzMDogY2hlY2tpbmcgZXJyb3IuaCB1c2FiaWxpdHkKY29uZmlndXJlOjIw
MDQ3OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAt
Zm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIwMDUzOiAkPyA9
IDAKY29uZmlndXJlOjIwMDYwOiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjAwNjM6ICQ/ID0gMApjb25maWd1cmU6MjAwNzA6
IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MjAwNzM6ICQ/ID0gMApjb25maWd1cmU6MjAw
ODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDA4ODogY2hlY2tpbmcgZXJyb3IuaCBwcmVzZW5j
ZQpjb25maWd1cmU6MjAxMDM6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtRSAgY29uZnRlc3QuYwpj
b25maWd1cmU6MjAxMDk6ICQ/ID0gMApjb25maWd1cmU6MjAxMzA6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToyMDE2MzogY2hlY2tpbmcgZm9yIGVycm9yLmgKY29uZmlndXJlOjIwMTcxOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MjAxODY6IGNoZWNraW5nIGZvciBhbiBBTlNJIEMtY29uZm9ybWluZyBj
b25zdApjb25maWd1cmU6MjAyNjE6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNo
PXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25m
aWd1cmU6MjAyNjc6ICQ/ID0gMApjb25maWd1cmU6MjAyNzQ6IHRlc3QgLXogIiRhY19jX3dlcnJv
cl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMDI3NzogJD8gPSAw
CmNvbmZpZ3VyZToyMDI4NDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMDI4NzogJD8g
PSAwCmNvbmZpZ3VyZToyMDI5OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwMzA5OiBjaGVja2lu
ZyBmb3IgaW5saW5lCmNvbmZpZ3VyZToyMDMzNTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1P
MiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMg
PiY1CmNvbmZpZ3VyZToyMDM0MTogJD8gPSAwCmNvbmZpZ3VyZToyMDM0ODogdGVzdCAteiAiJGFj
X2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIwMzUx
OiAkPyA9IDAKY29uZmlndXJlOjIwMzU4OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIw
MzYxOiAkPyA9IDAKY29uZmlndXJlOjIwMzc2OiByZXN1bHQ6IGlubGluZQpjb25maWd1cmU6MjAz
OTc6IGNoZWNraW5nIGZvciBlcnJvcl9hdF9saW5lCmNvbmZpZ3VyZToyMDQyMzogaTY4Ni1wYy1s
aW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0
LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIwNDI5OiAkPyA9IDAK
Y29uZmlndXJlOjIwNDM2OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjA0Mzk6ICQ/ID0gMApjb25maWd1cmU6MjA0NDY6IHRl
c3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjIwNDQ5OiAkPyA9IDAKY29uZmlndXJlOjIwNDYyOiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6MjA0Nzg6IGNoZWNraW5nIGZvciBzdGRsaWIuaApjb25maWd1
cmU6MjA0ODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDY0MjogY2hlY2tpbmcgZm9yIEdOVSBs
aWJjIGNvbXBhdGlibGUgbWFsbG9jCmNvbmZpZ3VyZToyMDY3NjogaTY4Ni1wYy1saW51eC1nbnUt
Z2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBv
aW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIwNjc5OiAkPyA9IDAKY29uZmlndXJl
OjIwNjg1OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMDY4ODogJD8gPSAwCmNvbmZpZ3VyZToyMDcw
NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwNzMyOiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRl
ciBmaWxlcwpjb25maWd1cmU6MjA5MTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMDkzMDogY2hl
Y2tpbmcgZm9yIG1lbWNocgpjb25maWd1cmU6MjA5ODY6IGk2ODYtcGMtbGludXgtZ251LWdjYyAt
byBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVy
ICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMDk5MjogJD8gPSAwCmNvbmZpZ3VyZToyMDk5
OTogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjIxMDAyOiAkPyA9IDAKY29uZmlndXJlOjIxMDA5OiB0ZXN0IC1zIGNvbmZ0ZXN0
CmNvbmZpZ3VyZToyMTAxMjogJD8gPSAwCmNvbmZpZ3VyZToyMTAyNjogcmVzdWx0OiB5ZXMKY29u
ZmlndXJlOjIwOTMwOiBjaGVja2luZyBmb3Igc2V0bG9jYWxlCmNvbmZpZ3VyZToyMDk4NjogaTY4
Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIwOTkyOiAk
PyA9IDAKY29uZmlndXJlOjIwOTk5OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjEwMDI6ICQ/ID0gMApjb25maWd1cmU6MjEw
MDk6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjIxMDEyOiAkPyA9IDAKY29uZmlndXJlOjIx
MDI2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjA5MzA6IGNoZWNraW5nIGZvciBzdHJjaHIKY29u
ZmlndXJlOjIwOTg2OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpj
b25mdGVzdC5jOjU0OiB3YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVu
Y3Rpb24gJ3N0cmNocicKY29uZmlndXJlOjIwOTkyOiAkPyA9IDAKY29uZmlndXJlOjIwOTk5OiB0
ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25m
aWd1cmU6MjEwMDI6ICQ/ID0gMApjb25maWd1cmU6MjEwMDk6IHRlc3QgLXMgY29uZnRlc3QKY29u
ZmlndXJlOjIxMDEyOiAkPyA9IDAKY29uZmlndXJlOjIxMDI2OiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MjA5MzA6IGNoZWNraW5nIGZvciBzdHJzdHIKY29uZmlndXJlOjIwOTg2OiBpNjg2LXBjLWxp
bnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQt
ZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25mdGVzdC5jOjU1OiB3YXJuaW5nOiBj
b25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3N0cnN0cicKY29uZmlndXJl
OjIwOTkyOiAkPyA9IDAKY29uZmlndXJlOjIwOTk5OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxh
ZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjEwMDI6ICQ/ID0gMApjb25m
aWd1cmU6MjEwMDk6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjIxMDEyOiAkPyA9IDAKY29u
ZmlndXJlOjIxMDI2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjEwMzg6IGNoZWNraW5nIHdoZXRo
ZXIgTkxTIGlzIHJlcXVlc3RlZApjb25maWd1cmU6MjEwNDc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToyMTA4NTogY2hlY2tpbmcgZm9yIG1zZ2ZtdApjb25maWd1cmU6IHRyeWluZyAvdXNyL2Jpbi9t
c2dmbXQuLi4KMCB0cmFuc2xhdGVkIG1lc3NhZ2VzLgpjb25maWd1cmU6MjExMTc6IHJlc3VsdDog
L3Vzci9iaW4vbXNnZm10CmNvbmZpZ3VyZToyMTEyNjogY2hlY2tpbmcgZm9yIGdtc2dmbXQKY29u
ZmlndXJlOjIxMTQ0OiBmb3VuZCAvdXNyL2Jpbi9nbXNnZm10CmNvbmZpZ3VyZToyMTE1NzogcmVz
dWx0OiAvdXNyL2Jpbi9nbXNnZm10CmNvbmZpZ3VyZToyMTIwODogY2hlY2tpbmcgZm9yIHhnZXR0
ZXh0CmNvbmZpZ3VyZTogdHJ5aW5nIC91c3IvYmluL3hnZXR0ZXh0Li4uCi91c3IvYmluL3hnZXR0
ZXh0OiB3YXJuaW5nOiBmaWxlIGAvZGV2L251bGwnIGV4dGVuc2lvbiBgJyBpcyB1bmtub3duOyB3
aWxsIHRyeSBDCmNvbmZpZ3VyZToyMTI0MDogcmVzdWx0OiAvdXNyL2Jpbi94Z2V0dGV4dApjb25m
aWd1cmU6MjEyODY6IGNoZWNraW5nIGZvciBtc2dtZXJnZQpjb25maWd1cmU6IHRyeWluZyAvdXNy
L2Jpbi9tc2dtZXJnZS4uLgpjb25maWd1cmU6MjEzMTc6IHJlc3VsdDogL3Vzci9iaW4vbXNnbWVy
Z2UKY29uZmlndXJlOjIxMzMyOiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V
IEMgTGlicmFyeSAyIG9yIG5ld2VyCmNvbmZpZ3VyZToyMTM2MzogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjIxMzcyOiBjaGVja2luZyBmb3IgaTY4Ni1wYy1saW51eC1nbnUtcmFubGliCmNvbmZpZ3Vy
ZToyMTM5OTogcmVzdWx0OiBpNjg2LXBjLWxpbnV4LWdudS1yYW5saWIKY29uZmlndXJlOjIxNDcw
OiBjaGVja2luZyBmb3Igc2ltcGxlIHZpc2liaWxpdHkgZGVjbGFyYXRpb25zCmNvbmZpZ3VyZToy
MTUwMjogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgLWZ2aXNpYmlsaXR5PWhpZGRlbiAgY29uZnRlc3QuYyA+JjUK
Y29uZmlndXJlOjIxNTA4OiAkPyA9IDAKY29uZmlndXJlOjIxNTE1OiB0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjE1MTg6ICQ/
ID0gMApjb25maWd1cmU6MjE1MjU6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MjE1Mjg6
ICQ/ID0gMApjb25maWd1cmU6MjE1NDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTU1NzogY2hl
Y2tpbmcgZm9yIHNpemVfdApjb25maWd1cmU6MjE1ODc6IGk2ODYtcGMtbGludXgtZ251LWdjYyAt
YyAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6MjE1OTM6ICQ/ID0gMApjb25maWd1cmU6MjE2MDA6IHRlc3QgLXog
IiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToy
MTYwMzogJD8gPSAwCmNvbmZpZ3VyZToyMTYxMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
ZToyMTYxMzogJD8gPSAwCmNvbmZpZ3VyZToyMTYyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIx
NjM4OiBjaGVja2luZyBmb3Igc3RkaW50LmgKY29uZmlndXJlOjIxNjY1OiBpNjg2LXBjLWxpbnV4
LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRl
ciAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxNjcxOiAkPyA9IDAKY29uZmlndXJlOjIxNjc4
OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
b25maWd1cmU6MjE2ODE6ICQ/ID0gMApjb25maWd1cmU6MjE2ODg6IHRlc3QgLXMgY29uZnRlc3Qu
bwpjb25maWd1cmU6MjE2OTE6ICQ/ID0gMApjb25maWd1cmU6MjE3MDM6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToyMTcxNTogY2hlY2tpbmcgZm9yIHdvcmtpbmcgYWxsb2NhLmgKY29uZmlndXJlOjIx
NzQyOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVt
NCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6
MjE3NDg6ICQ/ID0gMApjb25maWd1cmU6MjE3NTU6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFn
IiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMTc1ODogJD8gPSAwCmNvbmZp
Z3VyZToyMTc2NTogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjE3Njg6ICQ/ID0gMApjb25m
aWd1cmU6MjE3ODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTc5MTogY2hlY2tpbmcgZm9yIGFs
bG9jYQpjb25maWd1cmU6MjE4Mzg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAt
TzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3Qu
YyAgPiY1CmNvbmZpZ3VyZToyMTg0NDogJD8gPSAwCmNvbmZpZ3VyZToyMTg1MTogdGVzdCAteiAi
JGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIx
ODU0OiAkPyA9IDAKY29uZmlndXJlOjIxODYxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToy
MTg2NDogJD8gPSAwCmNvbmZpZ3VyZToyMTg3NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyMTI2
OiBjaGVja2luZyBmb3Igc3RkbGliLmgKY29uZmlndXJlOjIyMTMyOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MjIxMjY6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MjIxMzI6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToyMjI5NDogY2hlY2tpbmcgZm9yIGdldHBhZ2VzaXplCmNvbmZpZ3Vy
ZToyMjM1MDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVu
dGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmln
dXJlOjIyMzU2OiAkPyA9IDAKY29uZmlndXJlOjIyMzYzOiB0ZXN0IC16ICIkYWNfY193ZXJyb3Jf
ZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjIzNjY6ICQ/ID0gMApj
b25maWd1cmU6MjIzNzM6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjIyMzc2OiAkPyA9IDAK
Y29uZmlndXJlOjIyMzkwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI0MDA6IGNoZWNraW5nIGZv
ciB3b3JraW5nIG1tYXAKY29uZmlndXJlOjIyNTQ3OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8g
Y29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAg
IGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjI1NTA6ICQ/ID0gMApjb25maWd1cmU6MjI1NTY6
IC4vY29uZnRlc3QKY29uZmlndXJlOjIyNTU5OiAkPyA9IDAKY29uZmlndXJlOjIyNTc1OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MjI1ODg6IGNoZWNraW5nIHdoZXRoZXIgaW50ZWdlciBkaXZpc2lv
biBieSB6ZXJvIHJhaXNlcyBTSUdGUEUKY29uZmlndXJlOjIyNjU1OiBpNjg2LXBjLWxpbnV4LWdu
dS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUt
cG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjI2NTg6ICQ/ID0gMApjb25maWd1
cmU6MjI2NjQ6IC4vY29uZnRlc3QKY29uZmlndXJlOjIyNjY3OiAkPyA9IDAKY29uZmlndXJlOjIy
Njg0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI2OTc6IGNoZWNraW5nIGZvciBpbnR0eXBlcy5o
CmNvbmZpZ3VyZToyMjcyNDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVu
dGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy
ZToyMjczMDogJD8gPSAwCmNvbmZpZ3VyZToyMjczNzogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2Zs
YWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIyNzQwOiAkPyA9IDAKY29u
ZmlndXJlOjIyNzQ3OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIyNzUwOiAkPyA9IDAK
Y29uZmlndXJlOjIyNzYyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI3NzM6IGNoZWNraW5nIGZv
ciB1bnNpZ25lZCBsb25nIGxvbmcKY29uZmlndXJlOjIyODAwOiBpNjg2LXBjLWxpbnV4LWdudS1n
Y2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9p
bnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjI4MDY6ICQ/ID0gMApjb25maWd1cmU6
MjI4MTM6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyCmNvbmZpZ3VyZToyMjgxNjogJD8gPSAwCmNvbmZpZ3VyZToyMjgyMzogdGVzdCAtcyBjb25m
dGVzdApjb25maWd1cmU6MjI4MjY6ICQ/ID0gMApjb25maWd1cmU6MjI4Mzk6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToyMjg3MTogY2hlY2tpbmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjIyOTM4
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI5NTE6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGludHR5
cGVzLmggUFJJeE5OIG1hY3JvcyBhcmUgYnJva2VuCmNvbmZpZ3VyZToyMjk4MjogaTY4Ni1wYy1s
aW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBv
aW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjk4ODogJD8gPSAwCmNvbmZpZ3VyZToy
Mjk5NTogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5l
cnIKY29uZmlndXJlOjIyOTk4OiAkPyA9IDAKY29uZmlndXJlOjIzMDA1OiB0ZXN0IC1zIGNvbmZ0
ZXN0Lm8KY29uZmlndXJlOjIzMDA4OiAkPyA9IDAKY29uZmlndXJlOjIzMDIxOiByZXN1bHQ6IG5v
CmNvbmZpZ3VyZToyMzA3ODogY2hlY2tpbmcgZm9yIGxkIHVzZWQgYnkgR0NDCmNvbmZpZ3VyZToy
MzE0MjogcmVzdWx0OiAvdXNyL2k2ODYtcGMtbGludXgtZ251L2Jpbi9sZApjb25maWd1cmU6MjMx
NTE6IGNoZWNraW5nIGlmIHRoZSBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xk
KSBpcyBHTlUgbGQKY29uZmlndXJlOjIzMTY0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMxNzE6
IGNoZWNraW5nIGZvciBzaGFyZWQgbGlicmFyeSBydW4gcGF0aCBvcmlnaW4KY29uZmlndXJlOjIz
MTg0OiByZXN1bHQ6IGRvbmUKY29uZmlndXJlOjIzMjM2OiBjaGVja2luZyB3aGV0aGVyIGltcG9y
dGVkIHN5bWJvbHMgY2FuIGJlIGRlY2xhcmVkIHdlYWsKY29uZmlndXJlOjIzMjYxOiBpNjg2LXBj
LWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9t
aXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjMyNjc6ICQ/ID0g
MApjb25maWd1cmU6MjMyNzQ6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMzI3NzogJD8gPSAwCmNvbmZpZ3VyZToyMzI4NDog
dGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjMyODc6ICQ/ID0gMApjb25maWd1cmU6MjMyOTk6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzMxNjogY2hlY2tpbmcgcHRocmVhZC5oIHVzYWJpbGl0
eQpjb25maWd1cmU6MjMzMzM6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAtRF9SRUVOVFJBTlQgY29uZnRlc3Qu
YyA+JjUKY29uZmlndXJlOjIzMzM5OiAkPyA9IDAKY29uZmlndXJlOjIzMzQ2OiB0ZXN0IC16ICIk
YWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjMz
NDk6ICQ/ID0gMApjb25maWd1cmU6MjMzNTY6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6
MjMzNTk6ICQ/ID0gMApjb25maWd1cmU6MjMzNzA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzM3
NDogY2hlY2tpbmcgcHRocmVhZC5oIHByZXNlbmNlCmNvbmZpZ3VyZToyMzM4OTogaTY4Ni1wYy1s
aW51eC1nbnUtZ2NjIC1FICAtRF9SRUVOVFJBTlQgY29uZnRlc3QuYwpjb25maWd1cmU6MjMzOTU6
ICQ/ID0gMApjb25maWd1cmU6MjM0MTY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzQ0OTogY2hl
Y2tpbmcgZm9yIHB0aHJlYWQuaApjb25maWd1cmU6MjM0NTY6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToyMzUwOTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVu
dGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKL3Zhci90
bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS90ZW1wL2NjbzdsOWpsLm86IEluIGZ1bmN0aW9u
IGBtYWluJzoKY29uZnRlc3QuYzooLnRleHQrMHgyMik6IHVuZGVmaW5lZCByZWZlcmVuY2UgdG8g
YHB0aHJlYWRfbXV0ZXhhdHRyX2luaXQnCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3Rh
dHVzCmNvbmZpZ3VyZToyMzUxNTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz
Ogp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJodW5zcGVsbCIK
fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiaHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1ZF
UlNJT04gIjEuMS40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImh1bnNwZWxsIDEuMS40Igp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIm5lbWV0aGxAZ3lvcnNwb3N0YS5odSIKfCAjZGVm
aW5lIFBBQ0tBR0UgImh1bnNwZWxsIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4xLjQiCnwgI2RlZmlu
ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U
X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8
ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfTElCSU5UTF9IIDEKfCAjZGVm
aW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI
QVZFX0VSUk9SX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX01B
TExPQyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9NRU1DSFIgMQp8
ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZp
bmUgSEFWRV9TVFJTVFIgMQp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZIDEKfCAjZGVmaW5lIEhB
VkVfU1RESU5UX0hfV0lUSF9VSU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNk
ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFW
RV9NTUFQIDEKfCAjZGVmaW5lIElOVERJVjBfUkFJU0VTX1NJR0ZQRSAxCnwgI2RlZmluZSBIQVZF
X0lOVFRZUEVTX0hfV0lUSF9VSU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M
T05HIDEKfCAjZGVmaW5lIEhBVkVfVUlOVE1BWF9UIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf
SCAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNp
bmNsdWRlIDxwdGhyZWFkLmg+CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBwdGhyZWFkX211dGV4X2xv
Y2soKHB0aHJlYWRfbXV0ZXhfdCopMCk7CnwgICAgICAgICAgICBwdGhyZWFkX211dGV4YXR0cl9p
bml0KChwdGhyZWFkX211dGV4YXR0cl90KikwKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29u
ZmlndXJlOjIzNjQ4OiBjaGVja2luZyBmb3IgcHRocmVhZF9raWxsIGluIC1scHRocmVhZApjb25m
aWd1cmU6MjM2ODM6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNo
PXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAtbHB0aHJl
YWQgICA+JjUKY29uZmlndXJlOjIzNjg5OiAkPyA9IDAKY29uZmlndXJlOjIzNjk2OiB0ZXN0IC16
ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MjM2OTk6ICQ/ID0gMApjb25maWd1cmU6MjM3MDY6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJl
OjIzNzA5OiAkPyA9IDAKY29uZmlndXJlOjIzNzIzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjM4
Mzg6IGNoZWNraW5nIGZvciBwdGhyZWFkX3J3bG9ja190CmNvbmZpZ3VyZToyMzg2OTogaTY4Ni1w
Yy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1l
LXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzg3NTogJD8gPSAwCmNvbmZpZ3Vy
ZToyMzg4MjogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjIzODg1OiAkPyA9IDAKY29uZmlndXJlOjIzODkyOiB0ZXN0IC1zIGNv
bmZ0ZXN0Lm8KY29uZmlndXJlOjIzODk1OiAkPyA9IDAKY29uZmlndXJlOjIzOTA3OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MjM5NDM6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNo
PXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25m
aWd1cmU6MjM5NDk6ICQ/ID0gMApjb25maWd1cmU6MjM5NTY6IHRlc3QgLXogIiRhY19jX3dlcnJv
cl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMzk1OTogJD8gPSAw
CmNvbmZpZ3VyZToyMzk2NjogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMzk2OTogJD8g
PSAwCmNvbmZpZ3VyZToyNDYyMDogY2hlY2tpbmcgZm9yIG11bHRpdGhyZWFkIEFQSSB0byB1c2UK
Y29uZmlndXJlOjI0NjIyOiByZXN1bHQ6IHBvc2l4CmNvbmZpZ3VyZToyNTA0MzogaTY4Ni1wYy1s
aW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0
LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1MDQ5OiAkPyA9IDAK
Y29uZmlndXJlOjI1MDU2OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjUwNTk6ICQ/ID0gMApjb25maWd1cmU6MjUwNjY6IHRl
c3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI1MDY5OiAkPyA9IDAKY29uZmlndXJlOjI1MTA0OiBj
aGVja2luZyBhcmd6LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyNTEyMTogaTY4Ni1wYy1saW51eC1n
bnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTEyNzogJD8gPSAwCmNvbmZpZ3VyZToyNTEzNDog
dGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjI1MTM3OiAkPyA9IDAKY29uZmlndXJlOjI1MTQ0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjI1MTQ3OiAkPyA9IDAKY29uZmlndXJlOjI1MTU4OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MjUxNjI6IGNoZWNraW5nIGFyZ3ouaCBwcmVzZW5jZQpjb25maWd1cmU6MjUxNzc6IGk2
ODYtcGMtbGludXgtZ251LWdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MjUxODM6ICQ/ID0g
MApjb25maWd1cmU6MjUyMDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTIzNzogY2hlY2tpbmcg
Zm9yIGFyZ3ouaApjb25maWd1cmU6MjUyNDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTEwNDog
Y2hlY2tpbmcgbGltaXRzLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyNTEyMTogaTY4Ni1wYy1saW51
eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50
ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTEyNzogJD8gPSAwCmNvbmZpZ3VyZToyNTEz
NDogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjI1MTM3OiAkPyA9IDAKY29uZmlndXJlOjI1MTQ0OiB0ZXN0IC1zIGNvbmZ0ZXN0
Lm8KY29uZmlndXJlOjI1MTQ3OiAkPyA9IDAKY29uZmlndXJlOjI1MTU4OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MjUxNjI6IGNoZWNraW5nIGxpbWl0cy5oIHByZXNlbmNlCmNvbmZpZ3VyZToyNTE3
NzogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyNTE4Mzog
JD8gPSAwCmNvbmZpZ3VyZToyNTIwNDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1MjM3OiBjaGVj
a2luZyBmb3IgbGltaXRzLmgKY29uZmlndXJlOjI1MjQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjUwOTQ6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6MjUxMDA6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToyNTEwNDogY2hlY2tpbmcgc3lzL3BhcmFtLmggdXNhYmlsaXR5CmNvbmZpZ3Vy
ZToyNTEyMTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBp
cGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTEyNzog
JD8gPSAwCmNvbmZpZ3VyZToyNTEzNDogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MTM3OiAkPyA9IDAKY29uZmlndXJlOjI1
MTQ0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI1MTQ3OiAkPyA9IDAKY29uZmlndXJl
OjI1MTU4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUxNjI6IGNoZWNraW5nIHN5cy9wYXJhbS5o
IHByZXNlbmNlCmNvbmZpZ3VyZToyNTE3NzogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1FICBjb25m
dGVzdC5jCmNvbmZpZ3VyZToyNTE4MzogJD8gPSAwCmNvbmZpZ3VyZToyNTIwNDogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjI1MjM3OiBjaGVja2luZyBmb3Igc3lzL3BhcmFtLmgKY29uZmlndXJlOjI1
MjQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUyNzk6IGNoZWNraW5nIGZvciBnZXRjd2QKY29u
ZmlndXJlOjI1MzM1OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJj
aD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpj
b25maWd1cmU6MjUzNDE6ICQ/ID0gMApjb25maWd1cmU6MjUzNDg6IHRlc3QgLXogIiRhY19jX3dl
cnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNTM1MTogJD8g
PSAwCmNvbmZpZ3VyZToyNTM1ODogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjUzNjE6ICQ/
ID0gMApjb25maWd1cmU6MjUzNzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTI3OTogY2hlY2tp
bmcgZm9yIGdldGVnaWQKY29uZmlndXJlOjI1MzM1OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8g
Y29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAg
IGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjUzNDE6ICQ/ID0gMApjb25maWd1cmU6MjUzNDg6
IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNv
bmZpZ3VyZToyNTM1MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM1ODogdGVzdCAtcyBjb25mdGVzdApj
b25maWd1cmU6MjUzNjE6ICQ/ID0gMApjb25maWd1cmU6MjUzNzU6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToyNTI3OTogY2hlY2tpbmcgZm9yIGdldGV1aWQKY29uZmlndXJlOjI1MzM1OiBpNjg2LXBj
LWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9t
aXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjUzNDE6ICQ/ID0g
MApjb25maWd1cmU6MjUzNDg6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNTM1MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM1ODog
dGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjUzNjE6ICQ/ID0gMApjb25maWd1cmU6MjUzNzU6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTI3OTogY2hlY2tpbmcgZm9yIGdldGdpZApjb25maWd1
cmU6MjUzMzU6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZp
Z3VyZToyNTM0MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM0ODogdGVzdCAteiAiJGFjX2Nfd2Vycm9y
X2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MzUxOiAkPyA9IDAK
Y29uZmlndXJlOjI1MzU4OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTM2MTogJD8gPSAw
CmNvbmZpZ3VyZToyNTM3NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1Mjc5OiBjaGVja2luZyBm
b3IgZ2V0dWlkCmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0
ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25m
dGVzdC5jICA+JjUKY29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0
IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QKY29uZmln
dXJlOjI1MzYxOiAkPyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjUyNzk6IGNoZWNraW5nIGZvciBtZW1wY3B5CmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51
eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZy
YW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZnRlc3QuYzo4NDogd2FybmluZzogY29u
ZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdtZW1wY3B5Jwpjb25maWd1cmU6
MjUzNDE6ICQ/ID0gMApjb25maWd1cmU6MjUzNDg6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFn
IiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNTM1MTogJD8gPSAwCmNvbmZp
Z3VyZToyNTM1ODogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjUzNjE6ICQ/ID0gMApjb25m
aWd1cmU6MjUzNzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTI3OTogY2hlY2tpbmcgZm9yIG11
bm1hcApjb25maWd1cmU6MjUzMzU6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAt
TzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3Qu
YyAgPiY1CmNvbmZpZ3VyZToyNTM0MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM0ODogdGVzdCAteiAi
JGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1
MzUxOiAkPyA9IDAKY29uZmlndXJlOjI1MzU4OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToy
NTM2MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM3NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1Mjc5
OiBjaGVja2luZyBmb3Igc3RwY3B5CmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51eC1nbnUt
Z2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBv
aW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZnRlc3QuYzo4Njogd2FybmluZzogY29uZmxpY3Rp
bmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdzdHBjcHknCmNvbmZpZ3VyZToyNTM0MTog
JD8gPSAwCmNvbmZpZ3VyZToyNTM0ODogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MzUxOiAkPyA9IDAKY29uZmlndXJlOjI1
MzU4OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTM2MTogJD8gPSAwCmNvbmZpZ3VyZToy
NTM3NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1Mjc5OiBjaGVja2luZyBmb3Igc3RyY2FzZWNt
cApjb25maWd1cmU6MjUzMzU6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIg
LW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAg
PiY1CmNvbmZ0ZXN0LmM6ODc6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1p
biBmdW5jdGlvbiAnc3RyY2FzZWNtcCcKY29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJl
OjI1MzQ4OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
LmVycgpjb25maWd1cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29u
ZnRlc3QKY29uZmlndXJlOjI1MzYxOiAkPyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHll
cwpjb25maWd1cmU6MjUyNzk6IGNoZWNraW5nIGZvciBzdHJkdXAKY29uZmlndXJlOjI1MzM1OiBp
Njg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlw
ZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25mdGVzdC5jOjg4OiB3
YXJuaW5nOiBjb25mbGljdGluZyB0eXBlcyBmb3IgYnVpbHQtaW4gZnVuY3Rpb24gJ3N0cmR1cCcK
Y29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjUzNTE6ICQ/
ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI1MzYxOiAk
PyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUyNzk6IGNoZWNr
aW5nIGZvciBzdHJ0b3VsCmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1v
IGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIg
ICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4
OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
b25maWd1cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QK
Y29uZmlndXJlOjI1MzYxOiAkPyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MjUyNzk6IGNoZWNraW5nIGZvciB0c2VhcmNoCmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1w
Yy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZv
bWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1MzQxOiAkPyA9
IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1cmU6MjUzNTg6
IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI1MzYxOiAkPyA9IDAKY29uZmlndXJlOjI1Mzc1
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUyNzk6IGNoZWNraW5nIGZvciBhcmd6X2NvdW50CmNv
bmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFy
Y2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUK
Y29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjUzNTE6ICQ/
ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI1MzYxOiAk
PyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUyNzk6IGNoZWNr
aW5nIGZvciBhcmd6X3N0cmluZ2lmeQpjb25maWd1cmU6MjUzMzU6IGk2ODYtcGMtbGludXgtZ251
LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1w
b2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTM0MTogJD8gPSAwCmNvbmZpZ3Vy
ZToyNTM0ODogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjI1MzUxOiAkPyA9IDAKY29uZmlndXJlOjI1MzU4OiB0ZXN0IC1zIGNv
bmZ0ZXN0CmNvbmZpZ3VyZToyNTM2MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM3NTogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjI1Mjc5OiBjaGVja2luZyBmb3IgYXJnel9uZXh0CmNvbmZpZ3VyZToyNTMz
NTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQg
LXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1
MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1
cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI1MzYxOiAkPyA9IDAKY29uZmln
dXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUyNzk6IGNoZWNraW5nIGZvciBfX2Zz
ZXRsb2NraW5nCmNvbmZpZ3VyZToyNTMzNTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0
ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25m
dGVzdC5jICA+JjUKY29uZmlndXJlOjI1MzQxOiAkPyA9IDAKY29uZmlndXJlOjI1MzQ4OiB0ZXN0
IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6MjUzNTE6ICQ/ID0gMApjb25maWd1cmU6MjUzNTg6IHRlc3QgLXMgY29uZnRlc3QKY29uZmln
dXJlOjI1MzYxOiAkPyA9IDAKY29uZmlndXJlOjI1Mzc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjUzODc6IGNoZWNraW5nIHdoZXRoZXIgZmVvZl91bmxvY2tlZCBpcyBkZWNsYXJlZApjb25maWd1
cmU6MjU0MTc6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1w
aXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjU0MjM6
ICQ/ID0gMApjb25maWd1cmU6MjU0MzA6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNTQzMzogJD8gPSAwCmNvbmZpZ3VyZToy
NTQ0MDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNTQ0MzogJD8gPSAwCmNvbmZpZ3Vy
ZToyNTQ1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NDY5OiBjaGVja2luZyB3aGV0aGVyIGZn
ZXRzX3VubG9ja2VkIGlzIGRlY2xhcmVkCmNvbmZpZ3VyZToyNTQ5OTogaTY4Ni1wYy1saW51eC1n
bnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNTUwNTogJD8gPSAwCmNvbmZpZ3VyZToyNTUxMjog
dGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjI1NTE1OiAkPyA9IDAKY29uZmlndXJlOjI1NTIyOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjI1NTI1OiAkPyA9IDAKY29uZmlndXJlOjI1NTM3OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MjU1ODE6IGNoZWNraW5nIGZvciBpY29udgpjb25maWd1cmU6MjU2MTM6IGk2ODYtcGMt
bGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21p
dC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTYxOTogJD8gPSAw
CmNvbmZpZ3VyZToyNTYyNjogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1NjI5OiAkPyA9IDAKY29uZmlndXJlOjI1NjM2OiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTYzOTogJD8gPSAwCmNvbmZpZ3VyZToyNTcyMTog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1NzQ0OiBjaGVja2luZyBmb3IgaWNvbnYgZGVjbGFyYXRp
b24KY29uZmlndXJlOjI1NzgzOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1w
ZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29uZmln
dXJlOjI1Nzg5OiAkPyA9IDAKY29uZmlndXJlOjI1Nzk2OiB0ZXN0IC16ICIkYWNfY193ZXJyb3Jf
ZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjU3OTk6ICQ/ID0gMApj
b25maWd1cmU6MjU4MDY6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MjU4MDk6ICQ/ID0g
MApjb25maWd1cmU6MjU4MjU6IHJlc3VsdDogCiAgICAgICAgIGV4dGVybiBzaXplX3QgaWNvbnYg
KGljb252X3QgY2QsIGNoYXIgKiAqaW5idWYsIHNpemVfdCAqaW5ieXRlc2xlZnQsIGNoYXIgKiAq
b3V0YnVmLCBzaXplX3QgKm91dGJ5dGVzbGVmdCk7CmNvbmZpZ3VyZToyNTgzNjogY2hlY2tpbmcg
Zm9yIE5MX0xPQ0FMRV9OQU1FIG1hY3JvCmNvbmZpZ3VyZToyNTg2MzogaTY4Ni1wYy1saW51eC1n
bnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1l
LXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1ODY5OiAkPyA9IDAKY29uZmln
dXJlOjI1ODc2OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0
ZXN0LmVycgpjb25maWd1cmU6MjU4Nzk6ICQ/ID0gMApjb25maWd1cmU6MjU4ODY6IHRlc3QgLXMg
Y29uZnRlc3QKY29uZmlndXJlOjI1ODg5OiAkPyA9IDAKY29uZmlndXJlOjI1OTAzOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MjU5MTc6IGNoZWNraW5nIGZvciBiaXNvbgpjb25maWd1cmU6MjU5MzM6
IGZvdW5kIC91c3IvYmluL2Jpc29uCmNvbmZpZ3VyZToyNTk0NDogcmVzdWx0OiBiaXNvbgpjb25m
aWd1cmU6MjU5NTg6IGNoZWNraW5nIHZlcnNpb24gb2YgYmlzb24KY29uZmlndXJlOjI1OTY3OiBy
ZXN1bHQ6IDIuMiwgb2sKY29uZmlndXJlOjI1OTc1OiBjaGVja2luZyBmb3Igc2lnbmVkCmNvbmZp
Z3VyZToyNjAwMTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQg
LXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNjAw
NzogJD8gPSAwCmNvbmZpZ3VyZToyNjAxNDogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI2MDE3OiAkPyA9IDAKY29uZmlndXJl
OjI2MDI0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI2MDI3OiAkPyA9IDAKY29uZmln
dXJlOjI2MDM5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjYwNTA6IGNoZWNraW5nIGZvciBsb25n
IGxvbmcKY29uZmlndXJlOjI2MDc3OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3Qg
LU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0
LmMgID4mNQpjb25maWd1cmU6MjYwODM6ICQ/ID0gMApjb25maWd1cmU6MjYwOTA6IHRlc3QgLXog
IiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToy
NjA5MzogJD8gPSAwCmNvbmZpZ3VyZToyNjEwMDogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6
MjYxMDM6ICQ/ID0gMApjb25maWd1cmU6MjYxMTY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjEy
NzogY2hlY2tpbmcgZm9yIGxvbmcgZG91YmxlCmNvbmZpZ3VyZToyNjIwMDogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjI2MjExOiBjaGVja2luZyBmb3Igd2NoYXJfdApjb25maWd1cmU6MjYyMzg6IGk2
ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1m
cmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjYyNDQ6ICQ/ID0gMApjb25m
aWd1cmU6MjYyNTE6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZToyNjI1NDogJD8gPSAwCmNvbmZpZ3VyZToyNjI2MTogdGVzdCAt
cyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNjI2NDogJD8gPSAwCmNvbmZpZ3VyZToyNjI3NjogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjI2Mjg3OiBjaGVja2luZyBmb3Igd2ludF90CmNvbmZpZ3VyZToy
NjMxNDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNjMyMDogJD8g
PSAwCmNvbmZpZ3VyZToyNjMyNzogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI2MzMwOiAkPyA9IDAKY29uZmlndXJlOjI2MzM3
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI2MzQwOiAkPyA9IDAKY29uZmlndXJlOjI2
MzUyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjYzNjU6IGNoZWNraW5nIGZvciBpbnRtYXhfdApj
b25maWd1cmU6MjY0MDA6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRp
dW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6
MjY0MDY6ICQ/ID0gMApjb25maWd1cmU6MjY0MTM6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFn
IiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNjQxNjogJD8gPSAwCmNvbmZp
Z3VyZToyNjQyMzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNjQyNjogJD8gPSAwCmNv
bmZpZ3VyZToyNjQzODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2NDUwOiBjaGVja2luZyB3aGV0
aGVyIHByaW50ZigpIHN1cHBvcnRzIFBPU0lYL1hTSSBmb3JtYXQgc3RyaW5ncwpjb25maWd1cmU6
MjY1MDU6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRp
dW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy
ZToyNjUwODogJD8gPSAwCmNvbmZpZ3VyZToyNjUxNDogLi9jb25mdGVzdApjb25maWd1cmU6MjY1
MTc6ICQ/ID0gMApjb25maWd1cmU6MjY1MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjU0Nzog
Y2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIExpYnJhcnkgMi4xIG9yIG5l
d2VyCmNvbmZpZ3VyZToyNjU3ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2NTkwOiBjaGVja2lu
ZyBmb3Igc3RkaW50LmgKY29uZmlndXJlOjI2NTk2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjY3
NTQ6IGNoZWNraW5nIGZvciBTSVpFX01BWApjb25maWd1cmU6Mjc2NDc6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToyNzY2NTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCmNvbmZpZ3VyZToyNzY3MTogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjI3ODMxOiBjaGVja2luZyBmb3IgQ0ZQcmVmZXJlbmNlc0NvcHlB
cHBWYWx1ZQpjb25maWd1cmU6Mjc4NTk6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVz
dCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRl
c3QuYyAgLVdsLC1mcmFtZXdvcmsgLVdsLENvcmVGb3VuZGF0aW9uID4mNQpjb25mdGVzdC5jOjg1
OjQyOiBlcnJvcjogQ29yZUZvdW5kYXRpb24vQ0ZQcmVmZXJlbmNlcy5oOiBObyBzdWNoIGZpbGUg
b3IgZGlyZWN0b3J5CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzo4
OTogZXJyb3I6ICdOVUxMJyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikK
Y29uZnRlc3QuYzo4OTogZXJyb3I6IChFYWNoIHVuZGVjbGFyZWQgaWRlbnRpZmllciBpcyByZXBv
cnRlZCBvbmx5IG9uY2UKY29uZnRlc3QuYzo4OTogZXJyb3I6IGZvciBlYWNoIGZ1bmN0aW9uIGl0
IGFwcGVhcnMgaW4uKQpjb25maWd1cmU6Mjc4NjU6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi
aHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImh1bnNwZWxsIgp8ICNkZWZpbmUg
UEFDS0FHRV9WRVJTSU9OICIxLjEuNCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJodW5zcGVs
bCAxLjEuNCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJuZW1ldGhsQGd5b3JzcG9zdGEu
aHUiCnwgI2RlZmluZSBQQUNLQUdFICJodW5zcGVsbCIKfCAjZGVmaW5lIFZFUlNJT04gIjEuMS40
Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E
TEZDTl9IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0xJQklOVExf
SCAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9FUlJPUl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZp
bmUgSEFWRV9NQUxMT0MgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf
TUVNQ0hSIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0hS
IDEKfCAjZGVmaW5lIEhBVkVfU1RSU1RSIDEKfCAjZGVmaW5lIEhBVkVfVklTSUJJTElUWSAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IX1dJVEhfVUlOVE1BWCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D
QV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEKfCAj
ZGVmaW5lIEhBVkVfTU1BUCAxCnwgI2RlZmluZSBJTlRESVYwX1JBSVNFU19TSUdGUEUgMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IX1dJVEhfVUlOVE1BWCAxCnwgI2RlZmluZSBIQVZFX1VOU0lH
TkVEX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX1VJTlRNQVhfVCAxCnwgI2RlZmluZSBIQVZF
X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgVVNFX1BPU0lY
X1RIUkVBRFMgMQp8ICNkZWZpbmUgVVNFX1BPU0lYX1RIUkVBRFNfV0VBSyAxCnwgI2RlZmluZSBI
QVZFX1BUSFJFQURfUldMT0NLIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9NVVRFWF9SRUNVUlNJ
VkUgMQp8ICNkZWZpbmUgSEFWRV9CVUlMVElOX0VYUEVDVCAxCnwgI2RlZmluZSBIQVZFX0FSR1pf
SCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX0dFVENXRCAxCnwgI2Rl
ZmluZSBIQVZFX0dFVEVHSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRFVUlEIDEKfCAjZGVmaW5lIEhB
VkVfR0VUR0lEIDEKfCAjZGVmaW5lIEhBVkVfR0VUVUlEIDEKfCAjZGVmaW5lIEhBVkVfTUVNUENQ
WSAxCnwgI2RlZmluZSBIQVZFX01VTk1BUCAxCnwgI2RlZmluZSBIQVZFX1NUUENQWSAxCnwgI2Rl
ZmluZSBIQVZFX1NUUkNBU0VDTVAgMQp8ICNkZWZpbmUgSEFWRV9TVFJEVVAgMQp8ICNkZWZpbmUg
SEFWRV9TVFJUT1VMIDEKfCAjZGVmaW5lIEhBVkVfVFNFQVJDSCAxCnwgI2RlZmluZSBIQVZFX0FS
R1pfQ09VTlQgMQp8ICNkZWZpbmUgSEFWRV9BUkdaX1NUUklOR0lGWSAxCnwgI2RlZmluZSBIQVZF
X0FSR1pfTkVYVCAxCnwgI2RlZmluZSBIQVZFX19fRlNFVExPQ0tJTkcgMQp8ICNkZWZpbmUgSEFW
RV9ERUNMX0ZFT0ZfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0ZHRVRTX1VOTE9DS0VE
IDEKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmlu
ZSBIQVZFX05MX0xPQ0FMRV9OQU1FIDEKfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVm
aW5lIEhBVkVfTE9OR19ET1VCTEUgMQp8ICNkZWZpbmUgSEFWRV9XQ0hBUl9UIDEKfCAjZGVmaW5l
IEhBVkVfV0lOVF9UIDEKfCAjZGVmaW5lIEhBVkVfSU5UTUFYX1QgMQp8ICNkZWZpbmUgSEFWRV9Q
T1NJWF9QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RElOVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPENvcmVGb3VuZGF0
aW9uL0NGUHJlZmVyZW5jZXMuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IENGUHJlZmVyZW5jZXND
b3B5QXBwVmFsdWUoTlVMTCwgTlVMTCkKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJl
OjI3ODk5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyNzkwODogY2hlY2tpbmcgZm9yIENGTG9jYWxl
Q29weUN1cnJlbnQKY29uZmlndXJlOjI3OTM2OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29u
ZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNv
bmZ0ZXN0LmMgIC1XbCwtZnJhbWV3b3JrIC1XbCxDb3JlRm91bmRhdGlvbiA+JjUKY29uZnRlc3Qu
Yzo4NTozNzogZXJyb3I6IENvcmVGb3VuZGF0aW9uL0NGTG9jYWxlLmg6IE5vIHN1Y2ggZmlsZSBv
ciBkaXJlY3RvcnkKY29uZmlndXJlOjI3OTQyOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImh1
bnNwZWxsIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJodW5zcGVsbCIKfCAjZGVmaW5lIFBB
Q0tBR0VfVkVSU0lPTiAiMS4xLjQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiaHVuc3BlbGwg
MS4xLjQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibmVtZXRobEBneW9yc3Bvc3RhLmh1
Igp8ICNkZWZpbmUgUEFDS0FHRSAiaHVuc3BlbGwiCnwgI2RlZmluZSBWRVJTSU9OICIxLjEuNCIK
fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBI
QVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFW
RV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExG
Q05fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9MSUJJTlRMX0gg
MQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfRVJST1JfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l
IEhBVkVfTUFMTE9DIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX01F
TUNIUiAxCnwgI2RlZmluZSBIQVZFX1NFVExPQ0FMRSAxCnwgI2RlZmluZSBIQVZFX1NUUkNIUiAx
CnwgI2RlZmluZSBIQVZFX1NUUlNUUiAxCnwgI2RlZmluZSBIQVZFX1ZJU0lCSUxJVFkgMQp8ICNk
ZWZpbmUgSEFWRV9TVERJTlRfSF9XSVRIX1VJTlRNQVggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Ff
SCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCnwgI2Rl
ZmluZSBIQVZFX01NQVAgMQp8ICNkZWZpbmUgSU5URElWMF9SQUlTRVNfU0lHRlBFIDEKfCAjZGVm
aW5lIEhBVkVfSU5UVFlQRVNfSF9XSVRIX1VJTlRNQVggMQp8ICNkZWZpbmUgSEFWRV9VTlNJR05F
RF9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9VSU5UTUFYX1QgMQp8ICNkZWZpbmUgSEFWRV9J
TlRUWVBFU19IIDEKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFVTRV9QT1NJWF9U
SFJFQURTIDEKfCAjZGVmaW5lIFVTRV9QT1NJWF9USFJFQURTX1dFQUsgMQp8ICNkZWZpbmUgSEFW
RV9QVEhSRUFEX1JXTE9DSyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhfUkVDVVJTSVZF
IDEKfCAjZGVmaW5lIEhBVkVfQlVJTFRJTl9FWFBFQ1QgMQp8ICNkZWZpbmUgSEFWRV9BUkdaX0gg
MQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRDV0QgMQp8ICNkZWZp
bmUgSEFWRV9HRVRFR0lEIDEKfCAjZGVmaW5lIEhBVkVfR0VURVVJRCAxCnwgI2RlZmluZSBIQVZF
X0dFVEdJRCAxCnwgI2RlZmluZSBIQVZFX0dFVFVJRCAxCnwgI2RlZmluZSBIQVZFX01FTVBDUFkg
MQp8ICNkZWZpbmUgSEFWRV9NVU5NQVAgMQp8ICNkZWZpbmUgSEFWRV9TVFBDUFkgMQp8ICNkZWZp
bmUgSEFWRV9TVFJDQVNFQ01QIDEKfCAjZGVmaW5lIEhBVkVfU1RSRFVQIDEKfCAjZGVmaW5lIEhB
VkVfU1RSVE9VTCAxCnwgI2RlZmluZSBIQVZFX1RTRUFSQ0ggMQp8ICNkZWZpbmUgSEFWRV9BUkda
X0NPVU5UIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9TVFJJTkdJRlkgMQp8ICNkZWZpbmUgSEFWRV9B
UkdaX05FWFQgMQp8ICNkZWZpbmUgSEFWRV9fX0ZTRVRMT0NLSU5HIDEKfCAjZGVmaW5lIEhBVkVf
REVDTF9GRU9GX1VOTE9DS0VEIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAx
CnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUg
SEFWRV9OTF9MT0NBTEVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmlu
ZSBIQVZFX0xPTkdfRE9VQkxFIDEKfCAjZGVmaW5lIEhBVkVfV0NIQVJfVCAxCnwgI2RlZmluZSBI
QVZFX1dJTlRfVCAxCnwgI2RlZmluZSBIQVZFX0lOVE1BWF9UIDEKfCAjZGVmaW5lIEhBVkVfUE9T
SVhfUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ
TlRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxDb3JlRm91bmRhdGlv
bi9DRkxvY2FsZS5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgQ0ZMb2NhbGVDb3B5Q3VycmVudCgp
Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjc5NzY6IHJlc3VsdDogbm8KY29u
ZmlndXJlOjI3OTk2OiBjaGVja2luZyBmb3IgcHRyZGlmZl90CmNvbmZpZ3VyZToyODAyNjogaTY4
Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZy
YW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyODAzMjogJD8gPSAwCmNvbmZp
Z3VyZToyODAzOTogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnIKY29uZmlndXJlOjI4MDQyOiAkPyA9IDAKY29uZmlndXJlOjI4MDQ5OiB0ZXN0IC1z
IGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI4MDUyOiAkPyA9IDAKY29uZmlndXJlOjI4MDY0OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MjgwOTQ6IGNoZWNraW5nIHN0ZGRlZi5oIHVzYWJpbGl0eQpjb25m
aWd1cmU6MjgxMTE6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00
IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjgx
MTc6ICQ/ID0gMApjb25maWd1cmU6MjgxMjQ6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8
fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyODEyNzogJD8gPSAwCmNvbmZpZ3Vy
ZToyODEzNDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyODEzNzogJD8gPSAwCmNvbmZp
Z3VyZToyODE0ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4MTUyOiBjaGVja2luZyBzdGRkZWYu
aCBwcmVzZW5jZQpjb25maWd1cmU6MjgxNjc6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtRSAgY29u
ZnRlc3QuYwpjb25maWd1cmU6MjgxNzM6ICQ/ID0gMApjb25maWd1cmU6MjgxOTQ6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToyODIyNzogY2hlY2tpbmcgZm9yIHN0ZGRlZi5oCmNvbmZpZ3VyZToyODIz
NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4MDg0OiBjaGVja2luZyBmb3Igc3RkbGliLmgKY29u
ZmlndXJlOjI4MDkwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjgwODQ6IGNoZWNraW5nIGZvciBz
dHJpbmcuaApjb25maWd1cmU6MjgwOTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODI1ODogY2hl
Y2tpbmcgZm9yIGFzcHJpbnRmCmNvbmZpZ3VyZToyODMxNDogaTY4Ni1wYy1saW51eC1nbnUtZ2Nj
IC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50
ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI4MzIwOiAkPyA9IDAKY29uZmlndXJlOjI4
MzI3OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MjgzMzA6ICQ/ID0gMApjb25maWd1cmU6MjgzMzc6IHRlc3QgLXMgY29uZnRl
c3QKY29uZmlndXJlOjI4MzQwOiAkPyA9IDAKY29uZmlndXJlOjI4MzU0OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MjgyNTg6IGNoZWNraW5nIGZvciBmd3ByaW50Zgpjb25maWd1cmU6MjgzMTQ6IGk2
ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBl
IC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyODMyMDog
JD8gPSAwCmNvbmZpZ3VyZToyODMyNzogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI4MzMwOiAkPyA9IDAKY29uZmlndXJlOjI4
MzM3OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyODM0MDogJD8gPSAwCmNvbmZpZ3VyZToy
ODM1NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4MjU4OiBjaGVja2luZyBmb3IgcHV0ZW52CmNv
bmZpZ3VyZToyODMxNDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFy
Y2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUK
Y29uZmlndXJlOjI4MzIwOiAkPyA9IDAKY29uZmlndXJlOjI4MzI3OiB0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjgzMzA6ICQ/
ID0gMApjb25maWd1cmU6MjgzMzc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI4MzQwOiAk
PyA9IDAKY29uZmlndXJlOjI4MzU0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjgyNTg6IGNoZWNr
aW5nIGZvciBzZXRlbnYKY29uZmlndXJlOjI4MzE0OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8g
Y29uZnRlc3QgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAg
IGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjgzMjA6ICQ/ID0gMApjb25maWd1cmU6MjgzMjc6
IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNv
bmZpZ3VyZToyODMzMDogJD8gPSAwCmNvbmZpZ3VyZToyODMzNzogdGVzdCAtcyBjb25mdGVzdApj
b25maWd1cmU6MjgzNDA6ICQ/ID0gMApjb25maWd1cmU6MjgzNTQ6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToyODI1ODogY2hlY2tpbmcgZm9yIHNldGxvY2FsZQpjb25maWd1cmU6MjgzNTQ6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToyODI1ODogY2hlY2tpbmcgZm9yIHNucHJpbnRmCmNvbmZpZ3VyZToy
ODMxNDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1
bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZnRlc3Qu
YzoxMTY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBmdW5jdGlvbiAn
c25wcmludGYnCmNvbmZpZ3VyZToyODMyMDogJD8gPSAwCmNvbmZpZ3VyZToyODMyNzogdGVzdCAt
eiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJl
OjI4MzMwOiAkPyA9IDAKY29uZmlndXJlOjI4MzM3OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3Vy
ZToyODM0MDogJD8gPSAwCmNvbmZpZ3VyZToyODM1NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4
MjU4OiBjaGVja2luZyBmb3Igd2NzbGVuCmNvbmZpZ3VyZToyODMxNDogaTY4Ni1wYy1saW51eC1n
bnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1l
LXBvaW50ZXIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI4MzIwOiAkPyA9IDAKY29uZmln
dXJlOjI4MzI3OiB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0
ZXN0LmVycgpjb25maWd1cmU6MjgzMzA6ICQ/ID0gMApjb25maWd1cmU6MjgzMzc6IHRlc3QgLXMg
Y29uZnRlc3QKY29uZmlndXJlOjI4MzQwOiAkPyA9IDAKY29uZmlndXJlOjI4MzU0OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MjgzNjY6IGNoZWNraW5nIHdoZXRoZXIgX3NucHJpbnRmIGlzIGRlY2xh
cmVkCmNvbmZpZ3VyZToyODM5NjogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9
cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0
ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoxMDE6IGVycm9yOiAnX3NucHJp
bnRmJyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzox
MDE6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBv
bmNlCmNvbmZ0ZXN0LmM6MTAxOiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBp
bi4pCmNvbmZpZ3VyZToyODQwMjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz
Ogp8IC8qIGNvbmZkZWZzLmguICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJodW5zcGVsbCIK
fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiaHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1ZF
UlNJT04gIjEuMS40Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImh1bnNwZWxsIDEuMS40Igp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIm5lbWV0aGxAZ3lvcnNwb3N0YS5odSIKfCAjZGVm
aW5lIFBBQ0tBR0UgImh1bnNwZWxsIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4xLjQiCnwgI2RlZmlu
ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U
X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8
ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfTElCSU5UTF9IIDEKfCAjZGVm
aW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI
QVZFX0VSUk9SX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX01B
TExPQyAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9NRU1DSFIgMQp8
ICNkZWZpbmUgSEFWRV9TRVRMT0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZp
bmUgSEFWRV9TVFJTVFIgMQp8ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZIDEKfCAjZGVmaW5lIEhB
VkVfU1RESU5UX0hfV0lUSF9VSU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNk
ZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFW
RV9NTUFQIDEKfCAjZGVmaW5lIElOVERJVjBfUkFJU0VTX1NJR0ZQRSAxCnwgI2RlZmluZSBIQVZF
X0lOVFRZUEVTX0hfV0lUSF9VSU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19M
T05HIDEKfCAjZGVmaW5lIEhBVkVfVUlOVE1BWF9UIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf
SCAxCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBVU0VfUE9TSVhfVEhSRUFEUyAx
CnwgI2RlZmluZSBVU0VfUE9TSVhfVEhSRUFEU19XRUFLIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB
RF9SV0xPQ0sgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSAxCnwgI2Rl
ZmluZSBIQVZFX0JVSUxUSU5fRVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9IIDEKfCAjZGVm
aW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVf
R0VURUdJRCAxCnwgI2RlZmluZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHSUQg
MQp8ICNkZWZpbmUgSEFWRV9HRVRVSUQgMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVm
aW5lIEhBVkVfTVVOTUFQIDEKfCAjZGVmaW5lIEhBVkVfU1RQQ1BZIDEKfCAjZGVmaW5lIEhBVkVf
U1RSQ0FTRUNNUCAxCnwgI2RlZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NUUlRP
VUwgMQp8ICNkZWZpbmUgSEFWRV9UU0VBUkNIIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9DT1VOVCAx
CnwgI2RlZmluZSBIQVZFX0FSR1pfU1RSSU5HSUZZIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9ORVhU
IDEKfCAjZGVmaW5lIEhBVkVfX19GU0VUTE9DS0lORyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVP
Rl9VTkxPQ0tFRCAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZp
bmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEhBVkVfTkxf
TE9DQUxFX05BTUUgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9M
T05HX0RPVUJMRSAxCnwgI2RlZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9XSU5U
X1QgMQp8ICNkZWZpbmUgSEFWRV9JTlRNQVhfVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1BSSU5U
RiAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1BSSU5URiAxCnwgI2RlZmluZSBI
QVZFX0ZXUFJJTlRGIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VU
RU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYg
MQp8ICNkZWZpbmUgSEFWRV9XQ1NMRU4gMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j
bHVkZSA8c3RkaW8uaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICNpZm5kZWYgX3NucHJpbnRm
CnwgICBjaGFyICpwID0gKGNoYXIgKikgX3NucHJpbnRmOwp8ICNlbmRpZgp8IAp8ICAgOwp8ICAg
cmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjg0MzQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4NDQ4
OiBjaGVja2luZyB3aGV0aGVyIF9zbndwcmludGYgaXMgZGVjbGFyZWQKY29uZmlndXJlOjI4NDc4
OiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLWMgLU8yIC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9t
aXQtZnJhbWUtcG9pbnRlciAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24g
J21haW4nOgpjb25mdGVzdC5jOjEwMjogZXJyb3I6ICdfc253cHJpbnRmJyB1bmRlY2xhcmVkIChm
aXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzoxMDI6IGVycm9yOiAoRWFjaCB1
bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6MTAy
OiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmNvbmZpZ3VyZToyODQ4
NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu
ICAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJodW5zcGVsbCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VEFSTkFNRSAiaHVuc3BlbGwiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuMS40Igp8ICNk
ZWZpbmUgUEFDS0FHRV9TVFJJTkcgImh1bnNwZWxsIDEuMS40Igp8ICNkZWZpbmUgUEFDS0FHRV9C
VUdSRVBPUlQgIm5lbWV0aGxAZ3lvcnNwb3N0YS5odSIKfCAjZGVmaW5lIFBBQ0tBR0UgImh1bnNw
ZWxsIgp8ICNkZWZpbmUgVkVSU0lPTiAiMS4xLjQiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05U
TF9IIDEKfCAjZGVmaW5lIEhBVkVfTElCSU5UTF9IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0gg
MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk9SX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQyAxCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9NRU1DSFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRM
T0NBTEUgMQp8ICNkZWZpbmUgSEFWRV9TVFJDSFIgMQp8ICNkZWZpbmUgSEFWRV9TVFJTVFIgMQp8
ICNkZWZpbmUgSEFWRV9WSVNJQklMSVRZIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0hfV0lUSF9V
SU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Eg
MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NTUFQIDEKfCAjZGVmaW5l
IElOVERJVjBfUkFJU0VTX1NJR0ZQRSAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0hfV0lUSF9V
SU5UTUFYIDEKfCAjZGVmaW5lIEhBVkVfVU5TSUdORURfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhB
VkVfVUlOVE1BWF9UIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBfR05V
X1NPVVJDRSAxCnwgI2RlZmluZSBVU0VfUE9TSVhfVEhSRUFEUyAxCnwgI2RlZmluZSBVU0VfUE9T
SVhfVEhSRUFEU19XRUFLIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9SV0xPQ0sgMQp8ICNkZWZp
bmUgSEFWRV9QVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSAxCnwgI2RlZmluZSBIQVZFX0JVSUxUSU5f
RVhQRUNUIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0gg
MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEK
fCAjZGVmaW5lIEhBVkVfR0VUQ1dEIDEKfCAjZGVmaW5lIEhBVkVfR0VURUdJRCAxCnwgI2RlZmlu
ZSBIQVZFX0dFVEVVSUQgMQp8ICNkZWZpbmUgSEFWRV9HRVRHSUQgMQp8ICNkZWZpbmUgSEFWRV9H
RVRVSUQgMQp8ICNkZWZpbmUgSEFWRV9NRU1QQ1BZIDEKfCAjZGVmaW5lIEhBVkVfTVVOTUFQIDEK
fCAjZGVmaW5lIEhBVkVfU1RQQ1BZIDEKfCAjZGVmaW5lIEhBVkVfU1RSQ0FTRUNNUCAxCnwgI2Rl
ZmluZSBIQVZFX1NUUkRVUCAxCnwgI2RlZmluZSBIQVZFX1NUUlRPVUwgMQp8ICNkZWZpbmUgSEFW
RV9UU0VBUkNIIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9DT1VOVCAxCnwgI2RlZmluZSBIQVZFX0FS
R1pfU1RSSU5HSUZZIDEKfCAjZGVmaW5lIEhBVkVfQVJHWl9ORVhUIDEKfCAjZGVmaW5lIEhBVkVf
X19GU0VUTE9DS0lORyAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRkVPRl9VTkxPQ0tFRCAxCnwgI2Rl
ZmluZSBIQVZFX0RFQ0xfRkdFVFNfVU5MT0NLRUQgMQp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwg
I2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEhBVkVfTkxfTE9DQUxFX05BTUUgMQp8ICNk
ZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HX0RPVUJMRSAxCnwgI2Rl
ZmluZSBIQVZFX1dDSEFSX1QgMQp8ICNkZWZpbmUgSEFWRV9XSU5UX1QgMQp8ICNkZWZpbmUgSEFW
RV9JTlRNQVhfVCAxCnwgI2RlZmluZSBIQVZFX1BPU0lYX1BSSU5URiAxCnwgI2RlZmluZSBIQVZF
X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERE
RUZfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg
MQp8ICNkZWZpbmUgSEFWRV9BU1BSSU5URiAxCnwgI2RlZmluZSBIQVZFX0ZXUFJJTlRGIDEKfCAj
ZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhB
VkVfU0VUTE9DQUxFIDEKfCAjZGVmaW5lIEhBVkVfU05QUklOVEYgMQp8ICNkZWZpbmUgSEFWRV9X
Q1NMRU4gMQp8ICNkZWZpbmUgSEFWRV9ERUNMX19TTlBSSU5URiAwCnwgLyogZW5kIGNvbmZkZWZz
LmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgI2lm
bmRlZiBfc253cHJpbnRmCnwgICBjaGFyICpwID0gKGNoYXIgKikgX3Nud3ByaW50ZjsKfCAjZW5k
aWYKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI4NTE2OiByZXN1bHQ6IG5v
CmNvbmZpZ3VyZToyODUzMTogY2hlY2tpbmcgd2hldGhlciBnZXRjX3VubG9ja2VkIGlzIGRlY2xh
cmVkCmNvbmZpZ3VyZToyODU2MTogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1jIC1PMiAtbWFyY2g9
cGVudGl1bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToyODU2NzogJD8gPSAwCmNvbmZpZ3VyZToyODU3NDogdGVzdCAteiAiJGFjX2Nfd2Vycm9y
X2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI4NTc3OiAkPyA9IDAK
Y29uZmlndXJlOjI4NTg0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI4NTg3OiAkPyA9
IDAKY29uZmlndXJlOjI4NTk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjg2Mzg6IGNoZWNraW5n
IGZvciBubF9sYW5naW5mbyBhbmQgQ09ERVNFVApjb25maWd1cmU6Mjg2NjQ6IGk2ODYtcGMtbGlu
dXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1m
cmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyODY3MDogJD8gPSAwCmNv
bmZpZ3VyZToyODY3NzogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBj
b25mdGVzdC5lcnIKY29uZmlndXJlOjI4NjgwOiAkPyA9IDAKY29uZmlndXJlOjI4Njg3OiB0ZXN0
IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyODY5MDogJD8gPSAwCmNvbmZpZ3VyZToyODcwNDogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjI4NzE1OiBjaGVja2luZyBmb3IgTENfTUVTU0FHRVMKY29uZmln
dXJlOjI4NzQxOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8yIC1tYXJjaD1w
ZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m
aWd1cmU6Mjg3NDc6ICQ/ID0gMApjb25maWd1cmU6Mjg3NTQ6IHRlc3QgLXogIiRhY19jX3dlcnJv
cl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyODc1NzogJD8gPSAw
CmNvbmZpZ3VyZToyODc2NDogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6Mjg3Njc6ICQ/ID0g
MApjb25maWd1cmU6Mjg3ODA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODgyMDogY2hlY2tpbmcg
Zm9yIENGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUKY29uZmlndXJlOjI4ODg4OiByZXN1bHQ6IG5v
CmNvbmZpZ3VyZToyODg5NzogY2hlY2tpbmcgZm9yIENGTG9jYWxlQ29weUN1cnJlbnQKY29uZmln
dXJlOjI4OTY1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODk5NDogY2hlY2tpbmcgd2hldGhlciBp
bmNsdWRlZCBnZXR0ZXh0IGlzIHJlcXVlc3RlZApjb25maWd1cmU6MjkwMDQ6IHJlc3VsdDogbm8K
Y29uZmlndXJlOjI5MDE1OiBjaGVja2luZyBmb3IgR05VIGdldHRleHQgaW4gbGliYwpjb25maWd1
cmU6MjkwNDQ6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBl
bnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyICAgY29uZnRlc3QuYyAgPiY1CmNvbmZp
Z3VyZToyOTA1MDogJD8gPSAwCmNvbmZpZ3VyZToyOTA1NzogdGVzdCAteiAiJGFjX2Nfd2Vycm9y
X2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI5MDYwOiAkPyA9IDAK
Y29uZmlndXJlOjI5MDY3OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyOTA3MDogJD8gPSAw
CmNvbmZpZ3VyZToyOTA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI5NjczOiBjaGVja2luZyB3
aGV0aGVyIHRvIHVzZSBOTFMKY29uZmlndXJlOjI5Njc1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
Mjk2Nzg6IGNoZWNraW5nIHdoZXJlIHRoZSBnZXR0ZXh0IGZ1bmN0aW9uIGNvbWVzIGZyb20KY29u
ZmlndXJlOjI5Njg5OiByZXN1bHQ6IGxpYmMKY29uZmlndXJlOjI5Nzg1OiBjaGVja2luZyBmb3Ig
dHBhcm0gaW4gLWxuY3Vyc2Vzdwpjb25maWd1cmU6Mjk4MjA6IGk2ODYtcGMtbGludXgtZ251LWdj
YyAtbyBjb25mdGVzdCAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2lu
dGVyICAgY29uZnRlc3QuYyAtbG5jdXJzZXN3ICAgPiY1CmNvbmZpZ3VyZToyOTgyNjogJD8gPSAw
CmNvbmZpZ3VyZToyOTgzMzogdGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI5ODM2OiAkPyA9IDAKY29uZmlndXJlOjI5ODQzOiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyOTg0NjogJD8gPSAwCmNvbmZpZ3VyZToyOTg2MDog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwMDU4OiBjaGVja2luZyBmb3IgdHBhcm0gaW4gLWxjdXJz
ZXMKY29uZmlndXJlOjMwMDkzOiBpNjg2LXBjLWxpbnV4LWdudS1nY2MgLW8gY29uZnRlc3QgLU8y
IC1tYXJjaD1wZW50aXVtNCAtcGlwZSAtZm9taXQtZnJhbWUtcG9pbnRlciAgIGNvbmZ0ZXN0LmMg
LWxjdXJzZXMgICA+JjUKY29uZmlndXJlOjMwMDk5OiAkPyA9IDAKY29uZmlndXJlOjMwMTA2OiB0
ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25m
aWd1cmU6MzAxMDk6ICQ/ID0gMApjb25maWd1cmU6MzAxMTY6IHRlc3QgLXMgY29uZnRlc3QKY29u
ZmlndXJlOjMwMTE5OiAkPyA9IDAKY29uZmlndXJlOjMwMTMzOiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MzAyMjM6IGNoZWNraW5nIGZvciByZWFkbGluZSBpbiAtbHJlYWRsaW5lCmNvbmZpZ3VyZToz
MDI1ODogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1vIGNvbmZ0ZXN0IC1PMiAtbWFyY2g9cGVudGl1
bTQgLXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXIgICAtbG5jdXJzZXMgY29uZnRlc3QuYyAtbHJl
YWRsaW5lICAgPiY1CmNvbmZpZ3VyZTozMDI2NDogJD8gPSAwCmNvbmZpZ3VyZTozMDI3MTogdGVz
dCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjMwMjc0OiAkPyA9IDAKY29uZmlndXJlOjMwMjgxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZp
Z3VyZTozMDI4NDogJD8gPSAwCmNvbmZpZ3VyZTozMDI5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjMwMzExOiBjaGVja2luZyByZWFkbGluZS9yZWFkbGluZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6
MzAzMjg6IGk2ODYtcGMtbGludXgtZ251LWdjYyAtYyAtTzIgLW1hcmNoPXBlbnRpdW00IC1waXBl
IC1mb21pdC1mcmFtZS1wb2ludGVyICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MzAzMzQ6ICQ/
ID0gMApjb25maWd1cmU6MzAzNDE6IHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTozMDM0NDogJD8gPSAwCmNvbmZpZ3VyZTozMDM1
MTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTozMDM1NDogJD8gPSAwCmNvbmZpZ3VyZToz
MDM2NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjMwMzY5OiBjaGVja2luZyByZWFkbGluZS9yZWFk
bGluZS5oIHByZXNlbmNlCmNvbmZpZ3VyZTozMDM4NDogaTY4Ni1wYy1saW51eC1nbnUtZ2NjIC1F
ICBjb25mdGVzdC5jCmNvbmZpZ3VyZTozMDM5MDogJD8gPSAwCmNvbmZpZ3VyZTozMDQxMTogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjMwNDQ0OiBjaGVja2luZyBmb3IgcmVhZGxpbmUvcmVhZGxpbmUu
aApjb25maWd1cmU6MzA0NTE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMDYwMjogY3JlYXRpbmcg
Li9jb25maWcuc3RhdHVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIFJ1bm5pbmcg
Y29uZmlnLnN0YXR1cy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIwoKVGhpcyBmaWxl
IHdhcyBleHRlbmRlZCBieSBodW5zcGVsbCBjb25maWcuc3RhdHVzIDEuMS40LCB3aGljaCB3YXMK
Z2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjYwLiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUg
d2FzCgogIENPTkZJR19GSUxFUyAgICA9IAogIENPTkZJR19IRUFERVJTICA9IAogIENPTkZJR19M
SU5LUyAgICA9IAogIENPTkZJR19DT01NQU5EUyA9IAogICQgLi9jb25maWcuc3RhdHVzIAoKb24g
bGVpZGVuCgpjb25maWcuc3RhdHVzOjcxMTogY3JlYXRpbmcgTWFrZWZpbGUKY29uZmlnLnN0YXR1
czo3MTE6IGNyZWF0aW5nIG1hbi9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjcxMTogY3JlYXRpbmcg
bWFuL2h1L01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6NzExOiBjcmVhdGluZyBpbnRsL01ha2VmaWxl
CmNvbmZpZy5zdGF0dXM6ODQ2OiBXQVJOSU5HOiAgaW50bC9NYWtlZmlsZS5pbiBzZWVtcyB0byBp
Z25vcmUgdGhlIC0tZGF0YXJvb3RkaXIgc2V0dGluZwpjb25maWcuc3RhdHVzOjcxMTogY3JlYXRp
bmcgcG8vTWFrZWZpbGUuaW4KY29uZmlnLnN0YXR1czo4NDY6IFdBUk5JTkc6ICBwby9NYWtlZmls
ZS5pbi5pbiBzZWVtcyB0byBpZ25vcmUgdGhlIC0tZGF0YXJvb3RkaXIgc2V0dGluZwpjb25maWcu
c3RhdHVzOjcxMTogY3JlYXRpbmcgbTQvTWFrZWZpbGUKY29uZmlnLnN0YXR1czo3MTE6IGNyZWF0
aW5nIHNyYy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjcxMTogY3JlYXRpbmcgc3JjL2h1bnNwZWxs
L01ha2VmaWxlCmNvbmZpZy5zdGF0dXM6NzExOiBjcmVhdGluZyBzcmMvcGFyc2Vycy9NYWtlZmls
ZQpjb25maWcuc3RhdHVzOjcxMTogY3JlYXRpbmcgc3JjL3Rvb2xzL01ha2VmaWxlCmNvbmZpZy5z
dGF0dXM6NzExOiBjcmVhdGluZyB0ZXN0cy9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjcxMTogY3Jl
YXRpbmcgY29uZmlnLmgKY29uZmlnLnN0YXR1czoxMDc4OiBleGVjdXRpbmcgZGVwZmlsZXMgY29t
bWFuZHMKY29uZmlnLnN0YXR1czoxMDc4OiBleGVjdXRpbmcgcG8tZGlyZWN0b3JpZXMgY29tbWFu
ZHMKCiMjIC0tLS0tLS0tLS0tLS0tLS0gIyMKIyMgQ2FjaGUgdmFyaWFibGVzLiAjIwojIyAtLS0t
LS0tLS0tLS0tLS0tICMjCgphY19jdl9idWlsZD1pNjg2LXBjLWxpbnV4LWdudQphY19jdl9jX2Nv
bXBpbGVyX2dudT15ZXMKYWNfY3ZfY19jb25zdD15ZXMKYWNfY3ZfY19pbmxpbmU9aW5saW5lCmFj
X2N2X2N4eF9jb21waWxlcl9nbnU9eWVzCmFjX2N2X2Vudl9DQ0Nfc2V0PQphY19jdl9lbnZfQ0ND
X3ZhbHVlPQphY19jdl9lbnZfQ0Nfc2V0PQphY19jdl9lbnZfQ0NfdmFsdWU9CmFjX2N2X2Vudl9D
RkxBR1Nfc2V0PXNldAphY19jdl9lbnZfQ0ZMQUdTX3ZhbHVlPSctTzIgLW1hcmNoPXBlbnRpdW00
IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyJwphY19jdl9lbnZfQ1BQRkxBR1Nfc2V0PQphY19j
dl9lbnZfQ1BQRkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9DUFBfc2V0PQphY19jdl9lbnZfQ1BQX3Zh
bHVlPQphY19jdl9lbnZfQ1hYQ1BQX3NldD0KYWNfY3ZfZW52X0NYWENQUF92YWx1ZT0KYWNfY3Zf
ZW52X0NYWEZMQUdTX3NldD1zZXQKYWNfY3ZfZW52X0NYWEZMQUdTX3ZhbHVlPSctTzIgLW1hcmNo
PXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2ludGVyJwphY19jdl9lbnZfQ1hYX3NldD0K
YWNfY3ZfZW52X0NYWF92YWx1ZT0KYWNfY3ZfZW52X0Y3N19zZXQ9CmFjX2N2X2Vudl9GNzdfdmFs
dWU9CmFjX2N2X2Vudl9GRkxBR1Nfc2V0PQphY19jdl9lbnZfRkZMQUdTX3ZhbHVlPQphY19jdl9l
bnZfTERGTEFHU19zZXQ9CmFjX2N2X2Vudl9MREZMQUdTX3ZhbHVlPQphY19jdl9lbnZfYnVpbGRf
YWxpYXNfc2V0PXNldAphY19jdl9lbnZfYnVpbGRfYWxpYXNfdmFsdWU9aTY4Ni1wYy1saW51eC1n
bnUKYWNfY3ZfZW52X2hvc3RfYWxpYXNfc2V0PXNldAphY19jdl9lbnZfaG9zdF9hbGlhc192YWx1
ZT1pNjg2LXBjLWxpbnV4LWdudQphY19jdl9lbnZfdGFyZ2V0X2FsaWFzX3NldD0KYWNfY3ZfZW52
X3RhcmdldF9hbGlhc192YWx1ZT0KYWNfY3ZfZjc3X2NvbXBpbGVyX2dudT1ubwphY19jdl9mdW5j
X19fZnNldGxvY2tpbmc9eWVzCmFjX2N2X2Z1bmNfYWxsb2NhX3dvcmtzPXllcwphY19jdl9mdW5j
X2FyZ3pfY291bnQ9eWVzCmFjX2N2X2Z1bmNfYXJnel9uZXh0PXllcwphY19jdl9mdW5jX2FyZ3pf
c3RyaW5naWZ5PXllcwphY19jdl9mdW5jX2FzcHJpbnRmPXllcwphY19jdl9mdW5jX2Z3cHJpbnRm
PXllcwphY19jdl9mdW5jX2dldGN3ZD15ZXMKYWNfY3ZfZnVuY19nZXRlZ2lkPXllcwphY19jdl9m
dW5jX2dldGV1aWQ9eWVzCmFjX2N2X2Z1bmNfZ2V0Z2lkPXllcwphY19jdl9mdW5jX2dldHBhZ2Vz
aXplPXllcwphY19jdl9mdW5jX2dldHVpZD15ZXMKYWNfY3ZfZnVuY19tYWxsb2NfMF9ub25udWxs
PXllcwphY19jdl9mdW5jX21lbWNocj15ZXMKYWNfY3ZfZnVuY19tZW1wY3B5PXllcwphY19jdl9m
dW5jX21tYXBfZml4ZWRfbWFwcGVkPXllcwphY19jdl9mdW5jX211bm1hcD15ZXMKYWNfY3ZfZnVu
Y19wdXRlbnY9eWVzCmFjX2N2X2Z1bmNfc2V0ZW52PXllcwphY19jdl9mdW5jX3NldGxvY2FsZT15
ZXMKYWNfY3ZfZnVuY19zbnByaW50Zj15ZXMKYWNfY3ZfZnVuY19zdHBjcHk9eWVzCmFjX2N2X2Z1
bmNfc3RyY2FzZWNtcD15ZXMKYWNfY3ZfZnVuY19zdHJjaHI9eWVzCmFjX2N2X2Z1bmNfc3RyZHVw
PXllcwphY19jdl9mdW5jX3N0cnN0cj15ZXMKYWNfY3ZfZnVuY19zdHJ0b3VsPXllcwphY19jdl9m
dW5jX3RzZWFyY2g9eWVzCmFjX2N2X2Z1bmNfd2NzbGVuPXllcwphY19jdl9nbnVfbGlicmFyeV8y
PXllcwphY19jdl9nbnVfbGlicmFyeV8yXzE9eWVzCmFjX2N2X2hhdmVfZGVjbF9fc25wcmludGY9
bm8KYWNfY3ZfaGF2ZV9kZWNsX19zbndwcmludGY9bm8KYWNfY3ZfaGF2ZV9kZWNsX2Zlb2ZfdW5s
b2NrZWQ9eWVzCmFjX2N2X2hhdmVfZGVjbF9mZ2V0c191bmxvY2tlZD15ZXMKYWNfY3ZfaGF2ZV9k
ZWNsX2dldGNfdW5sb2NrZWQ9eWVzCmFjX2N2X2hlYWRlcl9hcmd6X2g9eWVzCmFjX2N2X2hlYWRl
cl9kbGZjbl9oPXllcwphY19jdl9oZWFkZXJfZXJyb3JfaD15ZXMKYWNfY3ZfaGVhZGVyX2ZjbnRs
X2g9eWVzCmFjX2N2X2hlYWRlcl9pbnR0eXBlc19oPXllcwphY19jdl9oZWFkZXJfbGliaW50bF9o
PXllcwphY19jdl9oZWFkZXJfbGltaXRzX2g9eWVzCmFjX2N2X2hlYWRlcl9sb2NhbGVfaD15ZXMK
YWNfY3ZfaGVhZGVyX21lbW9yeV9oPXllcwphY19jdl9oZWFkZXJfcHRocmVhZF9oPXllcwphY19j
dl9oZWFkZXJfcmVhZGxpbmVfcmVhZGxpbmVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGM9eWVzCmFj
X2N2X2hlYWRlcl9zdGRkZWZfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGludF9oPXllcwphY19jdl9o
ZWFkZXJfc3RkbGliX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdfaD15ZXMKYWNfY3ZfaGVhZGVy
X3N0cmluZ3NfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19wYXJhbV9oPXllcwphY19jdl9oZWFkZXJf
c3lzX3N0YXRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190eXBlc19oPXllcwphY19jdl9oZWFkZXJf
dW5pc3RkX2g9eWVzCmFjX2N2X2hvc3Q9aTY4Ni1wYy1saW51eC1nbnUKYWNfY3ZfbGliX2N1cnNl
c190cGFybT15ZXMKYWNfY3ZfbGliX2Vycm9yX2F0X2xpbmU9eWVzCmFjX2N2X2xpYl9uY3Vyc2Vz
d190cGFybT15ZXMKYWNfY3ZfbGliX3B0aHJlYWRfcHRocmVhZF9raWxsPXllcwphY19jdl9saWJf
cmVhZGxpbmVfcmVhZGxpbmU9eWVzCmFjX2N2X29iamV4dD1vCmFjX2N2X3BhdGhfRUdSRVA9Jy9i
aW4vZ3JlcCAtRScKYWNfY3ZfcGF0aF9HTVNHRk1UPS91c3IvYmluL2dtc2dmbXQKYWNfY3ZfcGF0
aF9HUkVQPS9iaW4vZ3JlcAphY19jdl9wYXRoX01TR0ZNVD0vdXNyL2Jpbi9tc2dmbXQKYWNfY3Zf
cGF0aF9NU0dNRVJHRT0vdXNyL2Jpbi9tc2dtZXJnZQphY19jdl9wYXRoX1hHRVRURVhUPS91c3Iv
YmluL3hnZXR0ZXh0CmFjX2N2X3BhdGhfaW5zdGFsbD0nL2Jpbi9pbnN0YWxsIC1jJwphY19jdl9w
cm9nX0FSPWk2ODYtcGMtbGludXgtZ251LWFyCmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJv
Z19DQz1pNjg2LXBjLWxpbnV4LWdudS1nY2MKYWNfY3ZfcHJvZ19DUFA9J2k2ODYtcGMtbGludXgt
Z251LWdjYyAtRScKYWNfY3ZfcHJvZ19DWFg9aTY4Ni1wYy1saW51eC1nbnUtZysrCmFjX2N2X3By
b2dfQ1hYQ1BQPSdpNjg2LXBjLWxpbnV4LWdudS1nKysgLUUnCmFjX2N2X3Byb2dfSU5UTEJJU09O
PWJpc29uCmFjX2N2X3Byb2dfUkFOTElCPWk2ODYtcGMtbGludXgtZ251LXJhbmxpYgphY19jdl9w
cm9nX1NUUklQPWk2ODYtcGMtbGludXgtZ251LXN0cmlwCmFjX2N2X3Byb2dfYWNfY3RfRjc3PWY3
NwphY19jdl9wcm9nX2NjX2M4OT0KYWNfY3ZfcHJvZ19jY19nPXllcwphY19jdl9wcm9nX2N4eF9n
PXllcwphY19jdl9wcm9nX2Y3N19nPW5vCmFjX2N2X3Byb2dfbWFrZV9tYWtlX3NldD15ZXMKYWNf
Y3ZfdGFyZ2V0PWk2ODYtcGMtbGludXgtZ251CmFjX2N2X3R5cGVfbG9uZ19sb25nPXllcwphY19j
dl90eXBlX3B0aHJlYWRfcndsb2NrX3Q9eWVzCmFjX2N2X3R5cGVfcHRyZGlmZl90PXllcwphY19j
dl90eXBlX3NpemVfdD15ZXMKYWNfY3ZfdHlwZV91bnNpZ25lZF9sb25nX2xvbmc9eWVzCmFjX2N2
X3dvcmtpbmdfYWxsb2NhX2g9eWVzCmFjbF9jdl9wYXRoX0xEPS91c3IvaTY4Ni1wYy1saW51eC1n
bnUvYmluL2xkCmFjbF9jdl9wcm9nX2dudV9sZD15ZXMKYWNsX2N2X3JwYXRoPWRvbmUKYW1fY3Zf
Q0NfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9Z2NjMwphbV9jdl9DWFhfZGVwZW5kZW5jaWVz
X2NvbXBpbGVyX3R5cGU9Z2NjMwphbV9jdl9mdW5jX2ljb252PXllcwphbV9jdl9sYW5naW5mb19j
b2Rlc2V0PXllcwphbV9jdl9saWJfaWNvbnY9bm8KYW1fY3ZfcHJvdG9faWNvbnY9J2V4dGVybiBz
aXplX3QgaWNvbnYgKGljb252X3QgY2QsIGNoYXIgKiAqaW5idWYsIHNpemVfdCAqaW5ieXRlc2xl
ZnQsIGNoYXIgKiAqb3V0YnVmLCBzaXplX3QgKm91dGJ5dGVzbGVmdCk7JwphbV9jdl9wcm90b19p
Y29udl9hcmcxPQpiaF9jdl9jX3NpZ25lZD15ZXMKZ2xfY3ZfY2NfdmlzaWJpbGl0eT15ZXMKZ2xf
Y3ZfaGVhZGVyX2ludHR5cGVzX2g9eWVzCmdsX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKZ3RfY3Zf
Y19pbnRtYXhfdD15ZXMKZ3RfY3ZfY19sb25nX2RvdWJsZT15ZXMKZ3RfY3ZfY193Y2hhcl90PXll
cwpndF9jdl9jX3dpbnRfdD15ZXMKZ3RfY3ZfZnVuY19DRkxvY2FsZUNvcHlDdXJyZW50PW5vCmd0
X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZT1ubwpndF9jdl9mdW5jX2dudWdldHRl
eHQxX2xpYmM9eWVzCmd0X2N2X2Z1bmNfcHJpbnRmX3Bvc2l4PXllcwpndF9jdl9pbnRfZGl2Ynl6
ZXJvX3NpZ2ZwZT15ZXMKZ3RfY3ZfaW50dHlwZXNfcHJpX2Jyb2tlbj1ubwpndF9jdl9ubF9sb2Nh
bGVfbmFtZT15ZXMKZ3RfY3ZfdmFsX0xDX01FU1NBR0VTPXllcwpsdF9jdl9kZXBsaWJzX2NoZWNr
X21ldGhvZD1wYXNzX2FsbApsdF9jdl9maWxlX21hZ2ljX2NtZD0nJE1BR0lDX0NNRCcKbHRfY3Zf
ZmlsZV9tYWdpY190ZXN0X2ZpbGU9Cmx0X2N2X2xkX3JlbG9hZF9mbGFnPS1yCmx0X2N2X29iamRp
cj0ubGlicwpsdF9jdl9wYXRoX0xEPS91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmluL2xkCmx0X2N2
X3BhdGhfTERDWFg9L3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQKbHRfY3ZfcGF0aF9OTT0n
L3Vzci9iaW4vbm0gLUInCmx0X2N2X3BhdGhfU0VEPS9iaW4vc2VkCmx0X2N2X3Byb2dfY29tcGls
ZXJfY19vPXllcwpsdF9jdl9wcm9nX2NvbXBpbGVyX2Nfb19DWFg9eWVzCmx0X2N2X3Byb2dfY29t
cGlsZXJfY19vX0Y3Nz1ubwpsdF9jdl9wcm9nX2NvbXBpbGVyX3J0dGlfZXhjZXB0aW9ucz1ubwps
dF9jdl9wcm9nX2dudV9sZD15ZXMKbHRfY3ZfcHJvZ19nbnVfbGRjeHg9eWVzCmx0X2N2X3N5c19n
bG9iYWxfc3ltYm9sX3BpcGU9J3NlZCAtbiAtZSAnXCcncy9eLipbIAldXChbQUJDREdJUlNUV11b
QUJDREdJUlNUV10qXClbIAldWyAJXSpcKFtfQS1aYS16XVtfQS1aYS16MC05XSpcKSQvXDEgXDIg
XDIvcCdcJycnCmx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPSdzZWQg
LW4gLWUgJ1wnJ3MvXjogXChbXiBdKlwpICQvICB7XCJcMVwiLCAobHRfcHRyKSAwfSwvcCdcJycg
LWUgJ1wnJ3MvXltCQ0RFR1JTVF0gXChbXiBdKlwpIFwoW14gXSpcKSQvICB7IlwyIiwgKGx0X3B0
cikgXCZcMn0sL3AnXCcnJwpsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0nc2VkIC1u
IC1lICdcJydzL14uIC4qIFwoLipcKSQvZXh0ZXJuIGludCBcMTsvcCdcJycnCmx0X2N2X3N5c19t
YXhfY21kX2xlbj0zMjc2OApsdF9sdF9jdl9wcm9nX2NvbXBpbGVyX2Nfbz0nInllcyInCmx0X2x0
X2N2X3Byb2dfY29tcGlsZXJfY19vX0NYWD0nInllcyInCmx0X2x0X2N2X3Byb2dfY29tcGlsZXJf
Y19vX0Y3Nz0nIm5vIicKbHRfbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZT0nInNlZCAtbiAt
ZSAnXCcncy9eLipbIAldXFwoW0FCQ0RHSVJTVFddW0FCQ0RHSVJTVFddKlxcKVsgCV1bIAldKlxc
KFtfQS1aYS16XVtfQS1aYS16MC05XSpcXClcJC9cXDEgXFwyIFxcMi9wJ1wnJyInCmx0X2x0X2N2
X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPScic2VkIC1uIC1lICdcJydzL146
IFxcKFteIF0qXFwpIFwkLyAge1xcXCJcXDFcXFwiLCAobHRfcHRyKSAwfSwvcCdcJycgLWUgJ1wn
J3MvXltCQ0RFR1JTVF0gXFwoW14gXSpcXCkgXFwoW14gXSpcXClcJC8gIHtcIlxcMlwiLCAobHRf
cHRyKSBcXCZcXDJ9LC9wJ1wnJyInCmx0X2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNs
PScic2VkIC1uIC1lICdcJydzL14uIC4qIFxcKC4qXFwpXCQvZXh0ZXJuIGludCBcXDE7L3AnXCcn
IicKbmxzX2N2X2ZvcmNlX3VzZV9nbnVfZ2V0dGV4dD1ubwpubHNfY3ZfaGVhZGVyX2ludGw9Cm5s
c19jdl9oZWFkZXJfbGliZ3Q9Cm5sc19jdl91c2VfZ251X2dldHRleHQ9bm8KCiMjIC0tLS0tLS0t
LS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMuICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0t
ICMjCgpBQ0xPQ0FMPScke1NIRUxMfSAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIx
L3dvcmsvaHVuc3BlbGwtMS4xLjQvbWlzc2luZyAtLXJ1biBhY2xvY2FsLTEuOScKQUxMT0NBPScn
CkFNREVQQkFDS1NMQVNIPSdcJwpBTURFUF9GQUxTRT0nIycKQU1ERVBfVFJVRT0nJwpBTVRBUj0n
JHtTSEVMTH0gL3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxs
LTEuMS40L21pc3NpbmcgLS1ydW4gdGFyJwpBUj0naTY4Ni1wYy1saW51eC1nbnUtYXInCkFVVE9D
T05GPScke1NIRUxMfSAvdmFyL3RtcC9wb3J0YWdlL2h1bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVu
c3BlbGwtMS4xLjQvbWlzc2luZyAtLXJ1biBhdXRvY29uZicKQVVUT0hFQURFUj0nJHtTSEVMTH0g
L3Zhci90bXAvcG9ydGFnZS9odW5zcGVsbC0xLjEuNC1yMS93b3JrL2h1bnNwZWxsLTEuMS40L21p
c3NpbmcgLS1ydW4gYXV0b2hlYWRlcicKQVVUT01BS0U9JyR7U0hFTEx9IC92YXIvdG1wL3BvcnRh
Z2UvaHVuc3BlbGwtMS4xLjQtcjEvd29yay9odW5zcGVsbC0xLjEuNC9taXNzaW5nIC0tcnVuIGF1
dG9tYWtlLTEuOScKQVdLPSdnYXdrJwpCVUlMRF9JTkNMVURFRF9MSUJJTlRMPSdubycKQ0FUT0JK
RVhUPScuZ21vJwpDQz0naTY4Ni1wYy1saW51eC1nbnUtZ2NjJwpDQ0RFUE1PREU9J2RlcG1vZGU9
Z2NjMycKQ0ZMQUdTPSctTzIgLW1hcmNoPXBlbnRpdW00IC1waXBlIC1mb21pdC1mcmFtZS1wb2lu
dGVyJwpDRkxBR19WSVNJQklMSVRZPSctZnZpc2liaWxpdHk9aGlkZGVuJwpDUFA9J2k2ODYtcGMt
bGludXgtZ251LWdjYyAtRScKQ1BQRkxBR1M9JycKQ1VSU0VTTElCPSctbG5jdXJzZXN3JwpDWFg9
J2k2ODYtcGMtbGludXgtZ251LWcrKycKQ1hYQ1BQPSdpNjg2LXBjLWxpbnV4LWdudS1nKysgLUUn
CkNYWERFUE1PREU9J2RlcG1vZGU9Z2NjMycKQ1hYRkxBR1M9Jy1PMiAtbWFyY2g9cGVudGl1bTQg
LXBpcGUgLWZvbWl0LWZyYW1lLXBvaW50ZXInCkNZR1BBVEhfVz0nZWNobycKREFUQURJUk5BTUU9
J3NoYXJlJwpERUZTPSctREhBVkVfQ09ORklHX0gnCkRFUERJUj0nLmRlcHMnCkVDSE89J2VjaG8n
CkVDSE9fQz0nJwpFQ0hPX049Jy1uJwpFQ0hPX1Q9JycKRUdSRVA9Jy9iaW4vZ3JlcCAtRScKRVhF
RVhUPScnCkY3Nz0nZjc3JwpGRkxBR1M9JycKR0VOQ0FUPSdnZW5jYXQnCkdMSUJDMjE9J3llcycK
R0xJQkMyPSd5ZXMnCkdNU0dGTVQ9Jy91c3IvYmluL2dtc2dmbXQnCkdNU0dGTVRfMDE1PScvdXNy
L2Jpbi9nbXNnZm10JwpHUkVQPScvYmluL2dyZXAnCkhBVkVfQVNQUklOVEY9JzEnCkhBVkVfUE9T
SVhfUFJJTlRGPScxJwpIQVZFX1NOUFJJTlRGPScxJwpIQVZFX1ZJU0lCSUxJVFk9JzEnCkhBVkVf
V1BSSU5URj0nMCcKSU5TVEFMTF9EQVRBPScke0lOU1RBTEx9IC1tIDY0NCcKSU5TVEFMTF9QUk9H
UkFNPScke0lOU1RBTEx9JwpJTlNUQUxMX1NDUklQVD0nJHtJTlNUQUxMfScKSU5TVEFMTF9TVFJJ
UF9QUk9HUkFNPScke1NIRUxMfSAkKGluc3RhbGxfc2gpIC1jIC1zJwpJTlNUT0JKRVhUPScubW8n
CklOVExCSVNPTj0nYmlzb24nCklOVExMSUJTPScnCklOVExPQkpTPScnCklOVExfTElCVE9PTF9T
VUZGSVhfUFJFRklYPScnCklOVExfTUFDT1NYX0xJQlM9JycKTERGTEFHUz0nJwpMSUJJQ09OVj0n
JwpMSUJJTlRMPScnCkxJQk1VTFRJVEhSRUFEPSctbHB0aHJlYWQnCkxJQk9CSlM9JycKTElCUFRI
PScnCkxJQlM9JycKTElCVEhSRUFEPScnCkxJQlRPT0w9JyQoU0hFTEwpICQodG9wX2J1aWxkZGly
KS9saWJ0b29sJwpMTl9TPSdsbiAtcycKTFRMSUJJQ09OVj0nJwpMVExJQklOVEw9JycKTFRMSUJN
VUxUSVRIUkVBRD0nLWxwdGhyZWFkJwpMVExJQk9CSlM9JycKTFRMSUJQVEg9JycKTFRMSUJUSFJF
QUQ9JycKTUFLRUlORk89JyR7U0hFTEx9IC92YXIvdG1wL3BvcnRhZ2UvaHVuc3BlbGwtMS4xLjQt
cjEvd29yay9odW5zcGVsbC0xLjEuNC9taXNzaW5nIC0tcnVuIG1ha2VpbmZvJwpNU0dGTVQ9Jy91
c3IvYmluL21zZ2ZtdCcKTVNHRk1UXzAxNT0nL3Vzci9iaW4vbXNnZm10JwpNU0dNRVJHRT0nL3Vz
ci9iaW4vbXNnbWVyZ2UnCk9CSkVYVD0nbycKUEFDS0FHRT0naHVuc3BlbGwnClBBQ0tBR0VfQlVH
UkVQT1JUPSduZW1ldGhsQGd5b3JzcG9zdGEuaHUnClBBQ0tBR0VfTkFNRT0naHVuc3BlbGwnClBB
Q0tBR0VfU1RSSU5HPSdodW5zcGVsbCAxLjEuNCcKUEFDS0FHRV9UQVJOQU1FPSdodW5zcGVsbCcK
UEFDS0FHRV9WRVJTSU9OPScxLjEuNCcKUEFUSF9TRVBBUkFUT1I9JzonClBPU1VCPSdwbycKUkFO
TElCPSdpNjg2LXBjLWxpbnV4LWdudS1yYW5saWInClJFQURMSU5FTElCPSctbHJlYWRsaW5lIC1s
bmN1cnNlcycKU0VUX01BS0U9JycKU0hFTEw9Jy9iaW4vc2gnClNUUklQPSdpNjg2LXBjLWxpbnV4
LWdudS1zdHJpcCcKVVNFX0lOQ0xVREVEX0xJQklOVEw9J25vJwpVU0VfTkxTPSd5ZXMnClZFUlNJ
T049JzEuMS40JwpXT0UzMkRMTD0nbm8nClhGQUlMRUQ9JycKWEdFVFRFWFQ9Jy91c3IvYmluL3hn
ZXR0ZXh0JwpYR0VUVEVYVF8wMTU9Jy91c3IvYmluL3hnZXR0ZXh0JwphY19jdF9DQz0nJwphY19j
dF9DWFg9JycKYWNfY3RfRjc3PSdmNzcnCmFtX19mYXN0ZGVwQ0NfRkFMU0U9JyMnCmFtX19mYXN0
ZGVwQ0NfVFJVRT0nJwphbV9fZmFzdGRlcENYWF9GQUxTRT0nIycKYW1fX2Zhc3RkZXBDWFhfVFJV
RT0nJwphbV9faW5jbHVkZT0naW5jbHVkZScKYW1fX2xlYWRpbmdfZG90PScuJwphbV9fcXVvdGU9
JycKYW1fX3Rhcj0nJHtBTVRBUn0gY2hvZiAtICIkJHRhcmRpciInCmFtX191bnRhcj0nJHtBTVRB
Un0geGYgLScKYmluZGlyPScke2V4ZWNfcHJlZml4fS9iaW4nCmJ1aWxkPSdpNjg2LXBjLWxpbnV4
LWdudScKYnVpbGRfYWxpYXM9J2k2ODYtcGMtbGludXgtZ251JwpidWlsZF9jcHU9J2k2ODYnCmJ1
aWxkX29zPSdsaW51eC1nbnUnCmJ1aWxkX3ZlbmRvcj0ncGMnCmRhdGFkaXI9Jy91c3Ivc2hhcmUn
CmRhdGFyb290ZGlyPScke3ByZWZpeH0vc2hhcmUnCmRvY2Rpcj0nJHtkYXRhcm9vdGRpcn0vZG9j
LyR7UEFDS0FHRV9UQVJOQU1FfScKZHZpZGlyPScke2RvY2Rpcn0nCmV4ZWNfcHJlZml4PScke3By
ZWZpeH0nCmhvc3Q9J2k2ODYtcGMtbGludXgtZ251Jwpob3N0X2FsaWFzPSdpNjg2LXBjLWxpbnV4
LWdudScKaG9zdF9jcHU9J2k2ODYnCmhvc3Rfb3M9J2xpbnV4LWdudScKaG9zdF92ZW5kb3I9J3Bj
JwpodG1sZGlyPScke2RvY2Rpcn0nCmluY2x1ZGVkaXI9Jy91c3IvaW5jbHVkZS9odW5zcGVsbCcK
aW5mb2Rpcj0nL3Vzci9zaGFyZS9pbmZvJwppbnN0YWxsX3NoPScvdmFyL3RtcC9wb3J0YWdlL2h1
bnNwZWxsLTEuMS40LXIxL3dvcmsvaHVuc3BlbGwtMS4xLjQvaW5zdGFsbC1zaCcKbGliZGlyPSck
e2V4ZWNfcHJlZml4fS9saWInCmxpYmV4ZWNkaXI9JyR7ZXhlY19wcmVmaXh9L2xpYmV4ZWMnCmxv
Y2FsZWRpcj0nJHtkYXRhcm9vdGRpcn0vbG9jYWxlJwpsb2NhbHN0YXRlZGlyPScvdmFyL2xpYicK
bWFuZGlyPScvdXNyL3NoYXJlL21hbicKbWtkaXJfcD0nbWtkaXIgLXAgLS0nCm9sZGluY2x1ZGVk
aXI9Jy91c3IvaW5jbHVkZScKcGRmZGlyPScke2RvY2Rpcn0nCnByZWZpeD0nL3VzcicKcHJvZ3Jh
bV90cmFuc2Zvcm1fbmFtZT0ncyx4LHgsJwpwc2Rpcj0nJHtkb2NkaXJ9JwpzYmluZGlyPScke2V4
ZWNfcHJlZml4fS9zYmluJwpzaGFyZWRzdGF0ZWRpcj0nJHtwcmVmaXh9L2NvbScKc3lzY29uZmRp
cj0nL2V0YycKdGFyZ2V0PSdpNjg2LXBjLWxpbnV4LWdudScKdGFyZ2V0X2FsaWFzPScnCnRhcmdl
dF9jcHU9J2k2ODYnCnRhcmdldF9vcz0nbGludXgtZ251Jwp0YXJnZXRfdmVuZG9yPSdwYycKCiMj
IC0tLS0tLS0tLS0tICMjCiMjIGNvbmZkZWZzLmguICMjCiMjIC0tLS0tLS0tLS0tICMjCgojZGVm
aW5lIFBBQ0tBR0VfTkFNRSAiaHVuc3BlbGwiCiNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJodW5z
cGVsbCIKI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjEuMS40IgojZGVmaW5lIFBBQ0tBR0VfU1RS
SU5HICJodW5zcGVsbCAxLjEuNCIKI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibmVtZXRobEBn
eW9yc3Bvc3RhLmh1IgojZGVmaW5lIFBBQ0tBR0UgImh1bnNwZWxsIgojZGVmaW5lIFZFUlNJT04g
IjEuMS40IgojZGVmaW5lIFNURENfSEVBREVSUyAxCiNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
CiNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKI2RlZmluZSBIQVZFX1NURExJQl9IIDEKI2RlZmlu
ZSBIQVZFX1NUUklOR19IIDEKI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKI2RlZmluZSBIQVZFX1NU
UklOR1NfSCAxCiNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKI2RlZmluZSBIQVZFX1NURElOVF9I
IDEKI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKI2RlZmluZSBIQVZFX0RMRkNOX0ggMQojZGVmaW5l
IEhBVkVfRkNOVExfSCAxCiNkZWZpbmUgSEFWRV9MSUJJTlRMX0ggMQojZGVmaW5lIEhBVkVfTE9D
QUxFX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfRVJST1JfSCAxCiNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCiNkZWZpbmUgSEFWRV9NQUxMT0MgMQojZGVmaW5lIFNURENf
SEVBREVSUyAxCiNkZWZpbmUgSEFWRV9NRU1DSFIgMQojZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEK
I2RlZmluZSBIQVZFX1NUUkNIUiAxCiNkZWZpbmUgSEFWRV9TVFJTVFIgMQojZGVmaW5lIEhBVkVf
VklTSUJJTElUWSAxCiNkZWZpbmUgSEFWRV9TVERJTlRfSF9XSVRIX1VJTlRNQVggMQojZGVmaW5l
IEhBVkVfQUxMT0NBX0ggMQojZGVmaW5lIEhBVkVfQUxMT0NBIDEKI2RlZmluZSBIQVZFX1NURExJ
Ql9IIDEKI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFIDEK
I2RlZmluZSBIQVZFX01NQVAgMQojZGVmaW5lIElOVERJVjBfUkFJU0VTX1NJR0ZQRSAxCiNkZWZp
bmUgSEFWRV9JTlRUWVBFU19IX1dJVEhfVUlOVE1BWCAxCiNkZWZpbmUgSEFWRV9VTlNJR05FRF9M
T05HX0xPTkcgMQojZGVmaW5lIEhBVkVfVUlOVE1BWF9UIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVT
X0ggMQojZGVmaW5lIF9HTlVfU09VUkNFIDEKI2RlZmluZSBVU0VfUE9TSVhfVEhSRUFEUyAxCiNk
ZWZpbmUgVVNFX1BPU0lYX1RIUkVBRFNfV0VBSyAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEX1JXTE9D
SyAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSAxCiNkZWZpbmUgSEFWRV9C
VUlMVElOX0VYUEVDVCAxCiNkZWZpbmUgSEFWRV9BUkdaX0ggMQojZGVmaW5lIEhBVkVfTElNSVRT
X0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQoj
ZGVmaW5lIEhBVkVfR0VUQ1dEIDEKI2RlZmluZSBIQVZFX0dFVEVHSUQgMQojZGVmaW5lIEhBVkVf
R0VURVVJRCAxCiNkZWZpbmUgSEFWRV9HRVRHSUQgMQojZGVmaW5lIEhBVkVfR0VUVUlEIDEKI2Rl
ZmluZSBIQVZFX01FTVBDUFkgMQojZGVmaW5lIEhBVkVfTVVOTUFQIDEKI2RlZmluZSBIQVZFX1NU
UENQWSAxCiNkZWZpbmUgSEFWRV9TVFJDQVNFQ01QIDEKI2RlZmluZSBIQVZFX1NUUkRVUCAxCiNk
ZWZpbmUgSEFWRV9TVFJUT1VMIDEKI2RlZmluZSBIQVZFX1RTRUFSQ0ggMQojZGVmaW5lIEhBVkVf
QVJHWl9DT1VOVCAxCiNkZWZpbmUgSEFWRV9BUkdaX1NUUklOR0lGWSAxCiNkZWZpbmUgSEFWRV9B
UkdaX05FWFQgMQojZGVmaW5lIEhBVkVfX19GU0VUTE9DS0lORyAxCiNkZWZpbmUgSEFWRV9ERUNM
X0ZFT0ZfVU5MT0NLRUQgMQojZGVmaW5lIEhBVkVfREVDTF9GR0VUU19VTkxPQ0tFRCAxCiNkZWZp
bmUgSEFWRV9JQ09OViAxCiNkZWZpbmUgSUNPTlZfQ09OU1QgCiNkZWZpbmUgSEFWRV9OTF9MT0NB
TEVfTkFNRSAxCiNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQojZGVmaW5lIEhBVkVfTE9OR19ET1VC
TEUgMQojZGVmaW5lIEhBVkVfV0NIQVJfVCAxCiNkZWZpbmUgSEFWRV9XSU5UX1QgMQojZGVmaW5l
IEhBVkVfSU5UTUFYX1QgMQojZGVmaW5lIEhBVkVfUE9TSVhfUFJJTlRGIDEKI2RlZmluZSBIQVZF
X1NURElOVF9IIDEKI2RlZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmluZSBIQVZFX1NURERFRl9I
IDEKI2RlZmluZSBIQVZFX1NURExJQl9IIDEKI2RlZmluZSBIQVZFX1NUUklOR19IIDEKI2RlZmlu
ZSBIQVZFX0FTUFJJTlRGIDEKI2RlZmluZSBIQVZFX0ZXUFJJTlRGIDEKI2RlZmluZSBIQVZFX1BV
VEVOViAxCiNkZWZpbmUgSEFWRV9TRVRFTlYgMQojZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKI2Rl
ZmluZSBIQVZFX1NOUFJJTlRGIDEKI2RlZmluZSBIQVZFX1dDU0xFTiAxCiNkZWZpbmUgSEFWRV9E
RUNMX19TTlBSSU5URiAwCiNkZWZpbmUgSEFWRV9ERUNMX19TTldQUklOVEYgMAojZGVmaW5lIEhB
VkVfREVDTF9HRVRDX1VOTE9DS0VEIDEKI2RlZmluZSBIQVZFX0xBTkdJTkZPX0NPREVTRVQgMQoj
ZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQojZGVmaW5lIEVOQUJMRV9OTFMgMQojZGVmaW5lIEhB
VkVfR0VUVEVYVCAxCiNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQojZGVmaW5lIEhBVkVfQ1VSU0VT
X0ggMQojZGVmaW5lIEhBVkVfTkNVUlNFU1dfSCAxCiNkZWZpbmUgSEFWRV9SRUFETElORSAxCgpj
b25maWd1cmU6IGV4aXQgMAo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>93365</attachid>
            <date>2006-08-03 12:01 0000</date>
            <desc>/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/aclocal.m4</desc>
            <filename>aclocal.m4</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBnZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBhY2xvY2FsIDEuOS42IC0qLSBBdXRvY29uZiAt
Ki0KCiMgQ29weXJpZ2h0IChDKSAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAy
MDAyLCAyMDAzLCAyMDA0LAojIDIwMDUgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgoj
IFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
CiMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBp
dCwKIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGlj
ZSBpcyBwcmVzZXJ2ZWQuCgojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w
ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWSwgdG8g
dGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3OyB3aXRob3V0CiMgZXZlbiB0aGUgaW1wbGllZCB3
YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQojIFBBUlRJQ1VMQVIg
UFVSUE9TRS4KCiMgY29kZXNldC5tNCBzZXJpYWwgQU0xIChnZXR0ZXh0LTAuMTAuNDApCmRubCBD
b3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5s
IFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
CmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRl
IGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBu
b3RpY2UgaXMgcHJlc2VydmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgoKQUNfREVGVU4oW0FN
X0xBTkdJTkZPX0NPREVTRVRdLApbCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBubF9sYW5naW5mbyBh
bmQgQ09ERVNFVF0sIGFtX2N2X2xhbmdpbmZvX2NvZGVzZXQsCiAgICBbQUNfVFJZX0xJTksoWyNp
bmNsdWRlIDxsYW5naW5mby5oPl0sCiAgICAgIFtjaGFyKiBjcyA9IG5sX2xhbmdpbmZvKENPREVT
RVQpO10sCiAgICAgIGFtX2N2X2xhbmdpbmZvX2NvZGVzZXQ9eWVzLAogICAgICBhbV9jdl9sYW5n
aW5mb19jb2Rlc2V0PW5vKQogICAgXSkKICBpZiB0ZXN0ICRhbV9jdl9sYW5naW5mb19jb2Rlc2V0
ID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoSEFWRV9MQU5HSU5GT19DT0RFU0VULCAxLAogICAg
ICBbRGVmaW5lIGlmIHlvdSBoYXZlIDxsYW5naW5mby5oPiBhbmQgbmxfbGFuZ2luZm8oQ09ERVNF
VCkuXSkKICBmaQpdKQoKIyBnZXR0ZXh0Lm00IHNlcmlhbCA1MyAoZ2V0dGV4dC0wLjE1KQpkbmwg
Q29weXJpZ2h0IChDKSAxOTk1LTIwMDYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRu
bCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0
ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMg
bm90aWNlIGlzIHByZXNlcnZlZC4KZG5sCmRubCBUaGlzIGZpbGUgY2FuIGNhbiBiZSB1c2VkIGlu
IHByb2plY3RzIHdoaWNoIGFyZSBub3QgYXZhaWxhYmxlIHVuZGVyCmRubCB0aGUgR05VIEdlbmVy
YWwgUHVibGljIExpY2Vuc2Ugb3IgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCmRubCBM
aWNlbnNlIGJ1dCB3aGljaCBzdGlsbCB3YW50IHRvIHByb3ZpZGUgc3VwcG9ydCBmb3IgdGhlIEdO
VSBnZXR0ZXh0CmRubCBmdW5jdGlvbmFsaXR5LgpkbmwgUGxlYXNlIG5vdGUgdGhhdCB0aGUgYWN0
dWFsIGNvZGUgb2YgdGhlIEdOVSBnZXR0ZXh0IGxpYnJhcnkgaXMgY292ZXJlZApkbmwgYnkgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIGFuZCB0aGUgcmVzdCBvZiB0aGUg
R05VCmRubCBnZXR0ZXh0IHBhY2thZ2UgcGFja2FnZSBpcyBjb3ZlcmVkIGJ5IHRoZSBHTlUgR2Vu
ZXJhbCBQdWJsaWMgTGljZW5zZS4KZG5sIFRoZXkgYXJlICpub3QqIGluIHRoZSBwdWJsaWMgZG9t
YWluLgoKZG5sIEF1dGhvcnM6CmRubCAgIFVscmljaCBEcmVwcGVyIDxkcmVwcGVyQGN5Z251cy5j
b20+LCAxOTk1LTIwMDAuCmRubCAgIEJydW5vIEhhaWJsZSA8aGFpYmxlQGNsaXNwLmNvbnMub3Jn
PiwgMjAwMC0yMDA1LgoKZG5sIE1hY3JvIHRvIGFkZCBmb3IgdXNpbmcgR05VIGdldHRleHQuCgpk
bmwgVXNhZ2U6IEFNX0dOVV9HRVRURVhUKFtJTlRMU1lNQk9MXSwgW05FRURTWU1CT0xdLCBbSU5U
TERJUl0pLgpkbmwgSU5UTFNZTUJPTCBjYW4gYmUgb25lIG9mICdleHRlcm5hbCcsICduby1saWJ0
b29sJywgJ3VzZS1saWJ0b29sJy4gVGhlCmRubCAgICBkZWZhdWx0IChpZiBpdCBpcyBub3Qgc3Bl
Y2lmaWVkIG9yIGVtcHR5KSBpcyAnbm8tbGlidG9vbCcuCmRubCAgICBJTlRMU1lNQk9MIHNob3Vs
ZCBiZSAnZXh0ZXJuYWwnIGZvciBwYWNrYWdlcyB3aXRoIG5vIGludGwgZGlyZWN0b3J5LApkbmwg
ICAgYW5kICduby1saWJ0b29sJyBvciAndXNlLWxpYnRvb2wnIGZvciBwYWNrYWdlcyB3aXRoIGFu
IGludGwgZGlyZWN0b3J5LgpkbmwgICAgSWYgSU5UTFNZTUJPTCBpcyAndXNlLWxpYnRvb2wnLCB0
aGVuIGEgbGlidG9vbCBsaWJyYXJ5CmRubCAgICAkKHRvcF9idWlsZGRpcikvaW50bC9saWJpbnRs
LmxhIHdpbGwgYmUgY3JlYXRlZCAoc2hhcmVkIGFuZC9vciBzdGF0aWMsCmRubCAgICBkZXBlbmRp
bmcgb24gLS17ZW5hYmxlLGRpc2FibGV9LXtzaGFyZWQsc3RhdGljfSBhbmQgb24gdGhlIHByZXNl
bmNlIG9mCmRubCAgICBBTS1ESVNBQkxFLVNIQVJFRCkuIElmIElOVExTWU1CT0wgaXMgJ25vLWxp
YnRvb2wnLCBhIHN0YXRpYyBsaWJyYXJ5CmRubCAgICAkKHRvcF9idWlsZGRpcikvaW50bC9saWJp
bnRsLmEgd2lsbCBiZSBjcmVhdGVkLgpkbmwgSWYgTkVFRFNZTUJPTCBpcyBzcGVjaWZpZWQgYW5k
IGlzICduZWVkLW5nZXR0ZXh0JywgdGhlbiBHTlUgZ2V0dGV4dApkbmwgICAgaW1wbGVtZW50YXRp
b25zIChpbiBsaWJjIG9yIGxpYmludGwpIHdpdGhvdXQgdGhlIG5nZXR0ZXh0KCkgZnVuY3Rpb24K
ZG5sICAgIHdpbGwgYmUgaWdub3JlZC4gIElmIE5FRURTWU1CT0wgaXMgc3BlY2lmaWVkIGFuZCBp
cwpkbmwgICAgJ25lZWQtZm9ybWF0c3RyaW5nLW1hY3JvcycsIHRoZW4gR05VIGdldHRleHQgaW1w
bGVtZW50YXRpb25zIHRoYXQgZG9uJ3QKZG5sICAgIHN1cHBvcnQgdGhlIElTTyBDIDk5IDxpbnR0
eXBlcy5oPiBmb3JtYXRzdHJpbmcgbWFjcm9zIHdpbGwgYmUgaWdub3JlZC4KZG5sIElOVExESVIg
aXMgdXNlZCB0byBmaW5kIHRoZSBpbnRsIGxpYnJhcmllcy4gIElmIGVtcHR5LApkbmwgICAgdGhl
IHZhbHVlIGAkKHRvcF9idWlsZGRpcikvaW50bC8nIGlzIHVzZWQuCmRubApkbmwgVGhlIHJlc3Vs
dCBvZiB0aGUgY29uZmlndXJhdGlvbiBpcyBvbmUgb2YgdGhyZWUgY2FzZXM6CmRubCAxKSBHTlUg
Z2V0dGV4dCwgYXMgaW5jbHVkZWQgaW4gdGhlIGludGwgc3ViZGlyZWN0b3J5LCB3aWxsIGJlIGNv
bXBpbGVkCmRubCAgICBhbmQgdXNlZC4KZG5sICAgIENhdGFsb2cgZm9ybWF0OiBHTlUgLS0+IGlu
c3RhbGwgaW4gJChkYXRhZGlyKQpkbmwgICAgQ2F0YWxvZyBleHRlbnNpb246IC5tbyBhZnRlciBp
bnN0YWxsYXRpb24sIC5nbW8gaW4gc291cmNlIHRyZWUKZG5sIDIpIEdOVSBnZXR0ZXh0IGhhcyBi
ZWVuIGZvdW5kIGluIHRoZSBzeXN0ZW0ncyBDIGxpYnJhcnkuCmRubCAgICBDYXRhbG9nIGZvcm1h
dDogR05VIC0tPiBpbnN0YWxsIGluICQoZGF0YWRpcikKZG5sICAgIENhdGFsb2cgZXh0ZW5zaW9u
OiAubW8gYWZ0ZXIgaW5zdGFsbGF0aW9uLCAuZ21vIGluIHNvdXJjZSB0cmVlCmRubCAzKSBObyBp
bnRlcm5hdGlvbmFsaXphdGlvbiwgYWx3YXlzIHVzZSBFbmdsaXNoIG1zZ2lkLgpkbmwgICAgQ2F0
YWxvZyBmb3JtYXQ6IG5vbmUKZG5sICAgIENhdGFsb2cgZXh0ZW5zaW9uOiBub25lCmRubCBJZiBJ
TlRMU1lNQk9MIGlzICdleHRlcm5hbCcsIG9ubHkgY2FzZXMgMiBhbmQgMyBjYW4gb2NjdXIuCmRu
bCBUaGUgdXNlIG9mIC5nbW8gaXMgaGlzdG9yaWNhbCAoaXQgd2FzIG5lZWRlZCB0byBhdm9pZCBv
dmVyd3JpdGluZyB0aGUKZG5sIEdOVSBmb3JtYXQgY2F0YWxvZ3Mgd2hlbiBidWlsZGluZyBvbiBh
IHBsYXRmb3JtIHdpdGggYW4gWC9PcGVuIGdldHRleHQpLApkbmwgYnV0IHdlIGtlZXAgaXQgaW4g
b3JkZXIgbm90IHRvIGZvcmNlIGlycmVsZXZhbnQgZmlsZW5hbWUgY2hhbmdlcyBvbiB0aGUKZG5s
IG1haW50YWluZXJzLgpkbmwKQUNfREVGVU4oW0FNX0dOVV9HRVRURVhUXSwKWwogIGRubCBBcmd1
bWVudCBjaGVja2luZy4KICBpZmVsc2UoWyQxXSwgW10sICwgW2lmZWxzZShbJDFdLCBbZXh0ZXJu
YWxdLCAsIFtpZmVsc2UoWyQxXSwgW25vLWxpYnRvb2xdLCAsIFtpZmVsc2UoWyQxXSwgW3VzZS1s
aWJ0b29sXSwgLAogICAgW2VycnByaW50KFtFUlJPUjogaW52YWxpZCBmaXJzdCBhcmd1bWVudCB0
byBBTV9HTlVfR0VUVEVYVApdKV0pXSldKV0pCiAgaWZlbHNlKFskMl0sIFtdLCAsIFtpZmVsc2Uo
WyQyXSwgW25lZWQtbmdldHRleHRdLCAsIFtpZmVsc2UoWyQyXSwgW25lZWQtZm9ybWF0c3RyaW5n
LW1hY3Jvc10sICwKICAgIFtlcnJwcmludChbRVJST1I6IGludmFsaWQgc2Vjb25kIGFyZ3VtZW50
IHRvIEFNX0dOVV9HRVRURVhUCl0pXSldKV0pCiAgZGVmaW5lKFtndF9pbmNsdWRlZF9pbnRsXSwg
aWZlbHNlKFskMV0sIFtleHRlcm5hbF0sIFtub10sIFt5ZXNdKSkKICBkZWZpbmUoW2d0X2xpYnRv
b2xfc3VmZml4X3ByZWZpeF0sIGlmZWxzZShbJDFdLCBbdXNlLWxpYnRvb2xdLCBbbF0sIFtdKSkK
CiAgQUNfUkVRVUlSRShbQU1fUE9fU1VCRElSU10pZG5sCiAgaWZlbHNlKGd0X2luY2x1ZGVkX2lu
dGwsIHllcywgWwogICAgQUNfUkVRVUlSRShbQU1fSU5UTF9TVUJESVJdKWRubAogIF0pCgogIGRu
bCBQcmVyZXF1aXNpdGVzIG9mIEFDX0xJQl9MSU5LRkxBR1NfQk9EWS4KICBBQ19SRVFVSVJFKFtB
Q19MSUJfUFJFUEFSRV9QUkVGSVhdKQogIEFDX1JFUVVJUkUoW0FDX0xJQl9SUEFUSF0pCgogIGRu
bCBTb21ldGltZXMgbGliaW50bCByZXF1aXJlcyBsaWJpY29udiwgc28gZmlyc3Qgc2VhcmNoIGZv
ciBsaWJpY29udi4KICBkbmwgSWRlYWxseSB3ZSB3b3VsZCBkbyB0aGlzIHNlYXJjaCBvbmx5IGFm
dGVyIHRoZQogIGRubCAgICAgIGlmIHRlc3QgIiRVU0VfTkxTIiA9ICJ5ZXMiOyB0aGVuCiAgZG5s
ICAgICAgICBpZiB0ZXN0ICIkZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0X2xpYmMiICE9ICJ5ZXMiOyB0
aGVuCiAgZG5sIHRlc3RzLiBCdXQgaWYgY29uZmlndXJlLmluIGludm9rZXMgQU1fSUNPTlYgYWZ0
ZXIgQU1fR05VX0dFVFRFWFQKICBkbmwgdGhlIGNvbmZpZ3VyZSBzY3JpcHQgd291bGQgbmVlZCB0
byBjb250YWluIHRoZSBzYW1lIHNoZWxsIGNvZGUKICBkbmwgYWdhaW4sIG91dHNpZGUgYW55ICdp
ZicuIFRoZXJlIGFyZSB0d28gc29sdXRpb25zOgogIGRubCAtIEludm9rZSBBTV9JQ09OVl9MSU5L
RkxBR1NfQk9EWSBoZXJlLCBvdXRzaWRlIGFueSAnaWYnLgogIGRubCAtIENvbnRyb2wgdGhlIGV4
cGFuc2lvbnMgaW4gbW9yZSBkZXRhaWwgdXNpbmcgQUNfUFJPVklERV9JRkVMU0UuCiAgZG5sIFNp
bmNlIEFDX1BST1ZJREVfSUZFTFNFIGlzIG9ubHkgaW4gYXV0b2NvbmYgPj0gMi41MiBhbmQgbm90
CiAgZG5sIGRvY3VtZW50ZWQsIHdlIGF2b2lkIGl0LgogIGlmZWxzZShndF9pbmNsdWRlZF9pbnRs
LCB5ZXMsICwgWwogICAgQUNfUkVRVUlSRShbQU1fSUNPTlZfTElOS0ZMQUdTX0JPRFldKQogIF0p
CgogIGRubCBTb21ldGltZXMsIG9uIE1hY09TIFgsIGxpYmludGwgcmVxdWlyZXMgbGlua2luZyB3
aXRoIENvcmVGb3VuZGF0aW9uLgogIGd0X0lOVExfTUFDT1NYCgogIGRubCBTZXQgVVNFX05MUy4K
ICBBQ19SRVFVSVJFKFtBTV9OTFNdKQoKICBpZmVsc2UoZ3RfaW5jbHVkZWRfaW50bCwgeWVzLCBb
CiAgICBCVUlMRF9JTkNMVURFRF9MSUJJTlRMPW5vCiAgICBVU0VfSU5DTFVERURfTElCSU5UTD1u
bwogIF0pCiAgTElCSU5UTD0KICBMVExJQklOVEw9CiAgUE9TVUI9CgogIGRubCBJZiB3ZSB1c2Ug
TkxTIGZpZ3VyZSBvdXQgd2hhdCBtZXRob2QKICBpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIjsg
dGhlbgogICAgZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0PW5vCiAgICBpZmVsc2UoZ3Rf
aW5jbHVkZWRfaW50bCwgeWVzLCBbCiAgICAgIEFDX01TR19DSEVDS0lORyhbd2hldGhlciBpbmNs
dWRlZCBnZXR0ZXh0IGlzIHJlcXVlc3RlZF0pCiAgICAgIEFDX0FSR19XSVRIKGluY2x1ZGVkLWdl
dHRleHQsCiAgICAgICAgWyAgLS13aXRoLWluY2x1ZGVkLWdldHRleHQgdXNlIHRoZSBHTlUgZ2V0
dGV4dCBsaWJyYXJ5IGluY2x1ZGVkIGhlcmVdLAogICAgICAgIG5sc19jdl9mb3JjZV91c2VfZ251
X2dldHRleHQ9JHdpdGh2YWwsCiAgICAgICAgbmxzX2N2X2ZvcmNlX3VzZV9nbnVfZ2V0dGV4dD1u
bykKICAgICAgQUNfTVNHX1JFU1VMVCgkbmxzX2N2X2ZvcmNlX3VzZV9nbnVfZ2V0dGV4dCkKCiAg
ICAgIG5sc19jdl91c2VfZ251X2dldHRleHQ9IiRubHNfY3ZfZm9yY2VfdXNlX2dudV9nZXR0ZXh0
IgogICAgICBpZiB0ZXN0ICIkbmxzX2N2X2ZvcmNlX3VzZV9nbnVfZ2V0dGV4dCIgIT0gInllcyI7
IHRoZW4KICAgIF0pCiAgICAgICAgZG5sIFVzZXIgZG9lcyBub3QgaW5zaXN0IG9uIHVzaW5nIEdO
VSBOTFMgbGlicmFyeS4gIEZpZ3VyZSBvdXQgd2hhdAogICAgICAgIGRubCB0byB1c2UuICBJZiBH
TlUgZ2V0dGV4dCBpcyBhdmFpbGFibGUgd2UgdXNlIHRoaXMuICBFbHNlIHdlIGhhdmUKICAgICAg
ICBkbmwgdG8gZmFsbCBiYWNrIHRvIEdOVSBOTFMgbGlicmFyeS4KCiAgICAgICAgZG5sIEFkZCBh
IHZlcnNpb24gbnVtYmVyIHRvIHRoZSBjYWNoZSBtYWNyb3MuCiAgICAgICAgZGVmaW5lKFtndF9h
cGlfdmVyc2lvbl0sIGlmZWxzZShbJDJdLCBbbmVlZC1mb3JtYXRzdHJpbmctbWFjcm9zXSwgMywg
aWZlbHNlKFskMl0sIFtuZWVkLW5nZXR0ZXh0XSwgMiwgMSkpKQogICAgICAgIGRlZmluZShbZ3Rf
Y3ZfZnVuY19nbnVnZXR0ZXh0X2xpYmNdLCBbZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0XWd0X2FwaV92
ZXJzaW9uW19saWJjXSkKICAgICAgICBkZWZpbmUoW2d0X2N2X2Z1bmNfZ251Z2V0dGV4dF9saWJp
bnRsXSwgW2d0X2N2X2Z1bmNfZ251Z2V0dGV4dF1ndF9hcGlfdmVyc2lvbltfbGliaW50bF0pCgog
ICAgICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgR05VIGdldHRleHQgaW4gbGliY10sIGd0X2N2X2Z1
bmNfZ251Z2V0dGV4dF9saWJjLAogICAgICAgICBbQUNfVFJZX0xJTksoWyNpbmNsdWRlIDxsaWJp
bnRsLmg+Cl1pZmVsc2UoWyQyXSwgW25lZWQtZm9ybWF0c3RyaW5nLW1hY3Jvc10sCltbI2lmbmRl
ZiBfX0dOVV9HRVRURVhUX1NVUFBPUlRFRF9SRVZJU0lPTgojZGVmaW5lIF9fR05VX0dFVFRFWFRf
U1VQUE9SVEVEX1JFVklTSU9OKG1ham9yKSAoKG1ham9yKSA9PSAwID8gMCA6IC0xKQojZW5kaWYK
dHlwZWRlZiBpbnQgYXJyYXkgWzIgKiAoX19HTlVfR0VUVEVYVF9TVVBQT1JURURfUkVWSVNJT04o
MCkgPj0gMSkgLSAxXTsKXV0sIFtdKVtleHRlcm4gaW50IF9ubF9tc2dfY2F0X2NudHI7CmV4dGVy
biBpbnQgKl9ubF9kb21haW5fYmluZGluZ3M7XSwKICAgICAgICAgICAgW2JpbmR0ZXh0ZG9tYWlu
ICgiIiwgIiIpOwpyZXR1cm4gKiBnZXR0ZXh0ICgiIildaWZlbHNlKFskMl0sIFtuZWVkLW5nZXR0
ZXh0XSwgWyArICogbmdldHRleHQgKCIiLCAiIiwgMCldLCBbXSlbICsgX25sX21zZ19jYXRfY250
ciArICpfbmxfZG9tYWluX2JpbmRpbmdzXSwKICAgICAgICAgICAgZ3RfY3ZfZnVuY19nbnVnZXR0
ZXh0X2xpYmM9eWVzLAogICAgICAgICAgICBndF9jdl9mdW5jX2dudWdldHRleHRfbGliYz1ubyld
KQoKICAgICAgICBpZiB0ZXN0ICIkZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0X2xpYmMiICE9ICJ5ZXMi
OyB0aGVuCiAgICAgICAgICBkbmwgU29tZXRpbWVzIGxpYmludGwgcmVxdWlyZXMgbGliaWNvbnYs
IHNvIGZpcnN0IHNlYXJjaCBmb3IgbGliaWNvbnYuCiAgICAgICAgICBpZmVsc2UoZ3RfaW5jbHVk
ZWRfaW50bCwgeWVzLCAsIFsKICAgICAgICAgICAgQU1fSUNPTlZfTElOSwogICAgICAgICAgXSkK
ICAgICAgICAgIGRubCBTZWFyY2ggZm9yIGxpYmludGwgYW5kIGRlZmluZSBMSUJJTlRMLCBMVExJ
QklOVEwgYW5kIElOQ0lOVEwKICAgICAgICAgIGRubCBhY2NvcmRpbmdseS4gRG9uJ3QgdXNlIEFD
X0xJQl9MSU5LRkxBR1NfQk9EWShbaW50bF0sW2ljb252XSkKICAgICAgICAgIGRubCBiZWNhdXNl
IHRoYXQgd291bGQgYWRkICItbGljb252IiB0byBMSUJJTlRMIGFuZCBMVExJQklOVEwKICAgICAg
ICAgIGRubCBldmVuIGlmIGxpYmljb252IGRvZXNuJ3QgZXhpc3QuCiAgICAgICAgICBBQ19MSUJf
TElOS0ZMQUdTX0JPRFkoW2ludGxdKQogICAgICAgICAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBHTlUg
Z2V0dGV4dCBpbiBsaWJpbnRsXSwKICAgICAgICAgICAgZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0X2xp
YmludGwsCiAgICAgICAgICAgW2d0X3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKICAgICAgICAg
ICAgQ1BQRkxBR1M9IiRDUFBGTEFHUyAkSU5DSU5UTCIKICAgICAgICAgICAgZ3Rfc2F2ZV9MSUJT
PSIkTElCUyIKICAgICAgICAgICAgTElCUz0iJExJQlMgJExJQklOVEwiCiAgICAgICAgICAgIGRu
bCBOb3cgc2VlIHdoZXRoZXIgbGliaW50bCBleGlzdHMgYW5kIGRvZXMgbm90IGRlcGVuZCBvbiBs
aWJpY29udi4KICAgICAgICAgICAgQUNfVFJZX0xJTksoWyNpbmNsdWRlIDxsaWJpbnRsLmg+Cl1p
ZmVsc2UoWyQyXSwgW25lZWQtZm9ybWF0c3RyaW5nLW1hY3Jvc10sCltbI2lmbmRlZiBfX0dOVV9H
RVRURVhUX1NVUFBPUlRFRF9SRVZJU0lPTgojZGVmaW5lIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVE
X1JFVklTSU9OKG1ham9yKSAoKG1ham9yKSA9PSAwID8gMCA6IC0xKQojZW5kaWYKdHlwZWRlZiBp
bnQgYXJyYXkgWzIgKiAoX19HTlVfR0VUVEVYVF9TVVBQT1JURURfUkVWSVNJT04oMCkgPj0gMSkg
LSAxXTsKXV0sIFtdKVtleHRlcm4gaW50IF9ubF9tc2dfY2F0X2NudHI7CmV4dGVybgojaWZkZWYg
X19jcGx1c3BsdXMKIkMiCiNlbmRpZgpjb25zdCBjaGFyICpfbmxfZXhwYW5kX2FsaWFzIChjb25z
dCBjaGFyICopO10sCiAgICAgICAgICAgICAgW2JpbmR0ZXh0ZG9tYWluICgiIiwgIiIpOwpyZXR1
cm4gKiBnZXR0ZXh0ICgiIildaWZlbHNlKFskMl0sIFtuZWVkLW5nZXR0ZXh0XSwgWyArICogbmdl
dHRleHQgKCIiLCAiIiwgMCldLCBbXSlbICsgX25sX21zZ19jYXRfY250ciArICpfbmxfZXhwYW5k
X2FsaWFzICgiIildLAogICAgICAgICAgICAgIGd0X2N2X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRs
PXllcywKICAgICAgICAgICAgICBndF9jdl9mdW5jX2dudWdldHRleHRfbGliaW50bD1ubykKICAg
ICAgICAgICAgZG5sIE5vdyBzZWUgd2hldGhlciBsaWJpbnRsIGV4aXN0cyBhbmQgZGVwZW5kcyBv
biBsaWJpY29udi4KICAgICAgICAgICAgaWYgdGVzdCAiJGd0X2N2X2Z1bmNfZ251Z2V0dGV4dF9s
aWJpbnRsIiAhPSB5ZXMgJiYgdGVzdCAtbiAiJExJQklDT05WIjsgdGhlbgogICAgICAgICAgICAg
IExJQlM9IiRMSUJTICRMSUJJQ09OViIKICAgICAgICAgICAgICBBQ19UUllfTElOSyhbI2luY2x1
ZGUgPGxpYmludGwuaD4KXWlmZWxzZShbJDJdLCBbbmVlZC1mb3JtYXRzdHJpbmctbWFjcm9zXSwK
W1sjaWZuZGVmIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVEX1JFVklTSU9OCiNkZWZpbmUgX19HTlVf
R0VUVEVYVF9TVVBQT1JURURfUkVWSVNJT04obWFqb3IpICgobWFqb3IpID09IDAgPyAwIDogLTEp
CiNlbmRpZgp0eXBlZGVmIGludCBhcnJheSBbMiAqIChfX0dOVV9HRVRURVhUX1NVUFBPUlRFRF9S
RVZJU0lPTigwKSA+PSAxKSAtIDFdOwpdXSwgW10pW2V4dGVybiBpbnQgX25sX21zZ19jYXRfY250
cjsKZXh0ZXJuCiNpZmRlZiBfX2NwbHVzcGx1cwoiQyIKI2VuZGlmCmNvbnN0IGNoYXIgKl9ubF9l
eHBhbmRfYWxpYXMgKGNvbnN0IGNoYXIgKik7XSwKICAgICAgICAgICAgICAgIFtiaW5kdGV4dGRv
bWFpbiAoIiIsICIiKTsKcmV0dXJuICogZ2V0dGV4dCAoIiIpXWlmZWxzZShbJDJdLCBbbmVlZC1u
Z2V0dGV4dF0sIFsgKyAqIG5nZXR0ZXh0ICgiIiwgIiIsIDApXSwgW10pWyArIF9ubF9tc2dfY2F0
X2NudHIgKyAqX25sX2V4cGFuZF9hbGlhcyAoIiIpXSwKICAgICAgICAgICAgICAgW0xJQklOVEw9
IiRMSUJJTlRMICRMSUJJQ09OViIKICAgICAgICAgICAgICAgIExUTElCSU5UTD0iJExUTElCSU5U
TCAkTFRMSUJJQ09OViIKICAgICAgICAgICAgICAgIGd0X2N2X2Z1bmNfZ251Z2V0dGV4dF9saWJp
bnRsPXllcwogICAgICAgICAgICAgICBdKQogICAgICAgICAgICBmaQogICAgICAgICAgICBDUFBG
TEFHUz0iJGd0X3NhdmVfQ1BQRkxBR1MiCiAgICAgICAgICAgIExJQlM9IiRndF9zYXZlX0xJQlMi
XSkKICAgICAgICBmaQoKICAgICAgICBkbmwgSWYgYW4gYWxyZWFkeSBwcmVzZW50IG9yIHByZWlu
c3RhbGxlZCBHTlUgZ2V0dGV4dCgpIGlzIGZvdW5kLAogICAgICAgIGRubCB1c2UgaXQuICBCdXQg
aWYgdGhpcyBtYWNybyBpcyB1c2VkIGluIEdOVSBnZXR0ZXh0LCBhbmQgR05VCiAgICAgICAgZG5s
IGdldHRleHQgaXMgYWxyZWFkeSBwcmVpbnN0YWxsZWQgaW4gbGliaW50bCwgd2UgdXBkYXRlIHRo
aXMKICAgICAgICBkbmwgbGliaW50bC4gIChDZi4gdGhlIGluc3RhbGwgcnVsZSBpbiBpbnRsL01h
a2VmaWxlLmluLikKICAgICAgICBpZiB0ZXN0ICIkZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0X2xpYmMi
ID0gInllcyIgXAogICAgICAgICAgIHx8IHsgdGVzdCAiJGd0X2N2X2Z1bmNfZ251Z2V0dGV4dF9s
aWJpbnRsIiA9ICJ5ZXMiIFwKICAgICAgICAgICAgICAgICYmIHRlc3QgIiRQQUNLQUdFIiAhPSBn
ZXR0ZXh0LXJ1bnRpbWUgXAogICAgICAgICAgICAgICAgJiYgdGVzdCAiJFBBQ0tBR0UiICE9IGdl
dHRleHQtdG9vbHM7IH07IHRoZW4KICAgICAgICAgIGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0
dGV4dD15ZXMKICAgICAgICBlbHNlCiAgICAgICAgICBkbmwgUmVzZXQgdGhlIHZhbHVlcyBzZXQg
Ynkgc2VhcmNoaW5nIGZvciBsaWJpbnRsLgogICAgICAgICAgTElCSU5UTD0KICAgICAgICAgIExU
TElCSU5UTD0KICAgICAgICAgIElOQ0lOVEw9CiAgICAgICAgZmkKCiAgICBpZmVsc2UoZ3RfaW5j
bHVkZWRfaW50bCwgeWVzLCBbCiAgICAgICAgaWYgdGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRf
Z251Z2V0dGV4dCIgIT0gInllcyI7IHRoZW4KICAgICAgICAgIGRubCBHTlUgZ2V0dGV4dCBpcyBu
b3QgZm91bmQgaW4gdGhlIEMgbGlicmFyeS4KICAgICAgICAgIGRubCBGYWxsIGJhY2sgb24gaW5j
bHVkZWQgR05VIGdldHRleHQgbGlicmFyeS4KICAgICAgICAgIG5sc19jdl91c2VfZ251X2dldHRl
eHQ9eWVzCiAgICAgICAgZmkKICAgICAgZmkKCiAgICAgIGlmIHRlc3QgIiRubHNfY3ZfdXNlX2du
dV9nZXR0ZXh0IiA9ICJ5ZXMiOyB0aGVuCiAgICAgICAgZG5sIE1hcmsgYWN0aW9ucyB1c2VkIHRv
IGdlbmVyYXRlIEdOVSBOTFMgbGlicmFyeS4KICAgICAgICBCVUlMRF9JTkNMVURFRF9MSUJJTlRM
PXllcwogICAgICAgIFVTRV9JTkNMVURFRF9MSUJJTlRMPXllcwogICAgICAgIExJQklOVEw9Imlm
ZWxzZShbJDNdLFtdLFwke3RvcF9idWlsZGRpcn0vaW50bCxbJDNdKS9saWJpbnRsLltdZ3RfbGli
dG9vbF9zdWZmaXhfcHJlZml4W11hICRMSUJJQ09OViAkTElCVEhSRUFEIgogICAgICAgIExUTElC
SU5UTD0iaWZlbHNlKFskM10sW10sXCR7dG9wX2J1aWxkZGlyfS9pbnRsLFskM10pL2xpYmludGwu
W11ndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXhbXWEgJExUTElCSUNPTlYgJExUTElCVEhSRUFEIgog
ICAgICAgIExJQlM9YGVjaG8gIiAkTElCUyAiIHwgc2VkIC1lICdzLyAtbGludGwgLyAvJyAtZSAn
cy9eIC8vJyAtZSAncy8gJC8vJ2AKICAgICAgZmkKCiAgICAgIENBVE9CSkVYVD0KICAgICAgaWYg
dGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dCIgPSAieWVzIiBcCiAgICAgICAg
IHx8IHRlc3QgIiRubHNfY3ZfdXNlX2dudV9nZXR0ZXh0IiA9ICJ5ZXMiOyB0aGVuCiAgICAgICAg
ZG5sIE1hcmsgYWN0aW9ucyB0byB1c2UgR05VIGdldHRleHQgdG9vbHMuCiAgICAgICAgQ0FUT0JK
RVhUPS5nbW8KICAgICAgZmkKICAgIF0pCgogICAgaWYgdGVzdCAtbiAiJElOVExfTUFDT1NYX0xJ
QlMiOyB0aGVuCiAgICAgIGlmIHRlc3QgIiRndF91c2VfcHJlaW5zdGFsbGVkX2dudWdldHRleHQi
ID0gInllcyIgXAogICAgICAgICB8fCB0ZXN0ICIkbmxzX2N2X3VzZV9nbnVfZ2V0dGV4dCIgPSAi
eWVzIjsgdGhlbgogICAgICAgIGRubCBTb21lIGV4dHJhIGZsYWdzIGFyZSBuZWVkZWQgZHVyaW5n
IGxpbmtpbmcuCiAgICAgICAgTElCSU5UTD0iJExJQklOVEwgJElOVExfTUFDT1NYX0xJQlMiCiAg
ICAgICAgTFRMSUJJTlRMPSIkTFRMSUJJTlRMICRJTlRMX01BQ09TWF9MSUJTIgogICAgICBmaQog
ICAgZmkKCiAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5
ZXMiIFwKICAgICAgIHx8IHRlc3QgIiRubHNfY3ZfdXNlX2dudV9nZXR0ZXh0IiA9ICJ5ZXMiOyB0
aGVuCiAgICAgIEFDX0RFRklORShFTkFCTEVfTkxTLCAxLAogICAgICAgIFtEZWZpbmUgdG8gMSBp
ZiB0cmFuc2xhdGlvbiBvZiBwcm9ncmFtIG1lc3NhZ2VzIHRvIHRoZSB1c2VyJ3MgbmF0aXZlIGxh
bmd1YWdlCiAgIGlzIHJlcXVlc3RlZC5dKQogICAgZWxzZQogICAgICBVU0VfTkxTPW5vCiAgICBm
aQogIGZpCgogIEFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byB1c2UgTkxTXSkKICBBQ19NU0df
UkVTVUxUKFskVVNFX05MU10pCiAgaWYgdGVzdCAiJFVTRV9OTFMiID0gInllcyI7IHRoZW4KICAg
IEFDX01TR19DSEVDS0lORyhbd2hlcmUgdGhlIGdldHRleHQgZnVuY3Rpb24gY29tZXMgZnJvbV0p
CiAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5ZXMiOyB0
aGVuCiAgICAgIGlmIHRlc3QgIiRndF9jdl9mdW5jX2dudWdldHRleHRfbGliaW50bCIgPSAieWVz
IjsgdGhlbgogICAgICAgIGd0X3NvdXJjZT0iZXh0ZXJuYWwgbGliaW50bCIKICAgICAgZWxzZQog
ICAgICAgIGd0X3NvdXJjZT0ibGliYyIKICAgICAgZmkKICAgIGVsc2UKICAgICAgZ3Rfc291cmNl
PSJpbmNsdWRlZCBpbnRsIGRpcmVjdG9yeSIKICAgIGZpCiAgICBBQ19NU0dfUkVTVUxUKFskZ3Rf
c291cmNlXSkKICBmaQoKICBpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIjsgdGhlbgoKICAgIGlm
IHRlc3QgIiRndF91c2VfcHJlaW5zdGFsbGVkX2dudWdldHRleHQiID0gInllcyI7IHRoZW4KICAg
ICAgaWYgdGVzdCAiJGd0X2N2X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsIiA9ICJ5ZXMiOyB0aGVu
CiAgICAgICAgQUNfTVNHX0NIRUNLSU5HKFtob3cgdG8gbGluayB3aXRoIGxpYmludGxdKQogICAg
ICAgIEFDX01TR19SRVNVTFQoWyRMSUJJTlRMXSkKICAgICAgICBBQ19MSUJfQVBQRU5EVE9WQVIo
W0NQUEZMQUdTXSwgWyRJTkNJTlRMXSkKICAgICAgZmkKCiAgICAgIGRubCBGb3IgYmFja3dhcmQg
Y29tcGF0aWJpbGl0eS4gU29tZSBwYWNrYWdlcyBtYXkgYmUgdXNpbmcgdGhpcy4KICAgICAgQUNf
REVGSU5FKEhBVkVfR0VUVEVYVCwgMSwKICAgICAgIFtEZWZpbmUgaWYgdGhlIEdOVSBnZXR0ZXh0
KCkgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50IG9yIHByZWluc3RhbGxlZC5dKQogICAgICBB
Q19ERUZJTkUoSEFWRV9EQ0dFVFRFWFQsIDEsCiAgICAgICBbRGVmaW5lIGlmIHRoZSBHTlUgZGNn
ZXR0ZXh0KCkgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50IG9yIHByZWluc3RhbGxlZC5dKQog
ICAgZmkKCiAgICBkbmwgV2UgbmVlZCB0byBwcm9jZXNzIHRoZSBwby8gZGlyZWN0b3J5LgogICAg
UE9TVUI9cG8KICBmaQoKICBpZmVsc2UoZ3RfaW5jbHVkZWRfaW50bCwgeWVzLCBbCiAgICBkbmwg
SWYgdGhpcyBpcyB1c2VkIGluIEdOVSBnZXR0ZXh0IHdlIGhhdmUgdG8gc2V0IEJVSUxEX0lOQ0xV
REVEX0xJQklOVEwKICAgIGRubCB0byAneWVzJyBiZWNhdXNlIHNvbWUgb2YgdGhlIHRlc3RzdWl0
ZSByZXF1aXJlcyBpdC4KICAgIGlmIHRlc3QgIiRQQUNLQUdFIiA9IGdldHRleHQtcnVudGltZSB8
fCB0ZXN0ICIkUEFDS0FHRSIgPSBnZXR0ZXh0LXRvb2xzOyB0aGVuCiAgICAgIEJVSUxEX0lOQ0xV
REVEX0xJQklOVEw9eWVzCiAgICBmaQoKICAgIGRubCBNYWtlIGFsbCB2YXJpYWJsZXMgd2UgdXNl
IGtub3duIHRvIGF1dG9jb25mLgogICAgQUNfU1VCU1QoQlVJTERfSU5DTFVERURfTElCSU5UTCkK
ICAgIEFDX1NVQlNUKFVTRV9JTkNMVURFRF9MSUJJTlRMKQogICAgQUNfU1VCU1QoQ0FUT0JKRVhU
KQoKICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBjb25maWd1cmUuaW5z
IG1heSBiZSB1c2luZyB0aGlzLgogICAgbmxzX2N2X2hlYWRlcl9pbnRsPQogICAgbmxzX2N2X2hl
YWRlcl9saWJndD0KCiAgICBkbmwgRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuIFNvbWUgTWFr
ZWZpbGVzIG1heSBiZSB1c2luZyB0aGlzLgogICAgREFUQURJUk5BTUU9c2hhcmUKICAgIEFDX1NV
QlNUKERBVEFESVJOQU1FKQoKICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29t
ZSBNYWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCiAgICBJTlNUT0JKRVhUPS5tbwogICAgQUNf
U1VCU1QoSU5TVE9CSkVYVCkKCiAgICBkbmwgRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuIFNv
bWUgTWFrZWZpbGVzIG1heSBiZSB1c2luZyB0aGlzLgogICAgR0VOQ0FUPWdlbmNhdAogICAgQUNf
U1VCU1QoR0VOQ0FUKQoKICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBN
YWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCiAgICBJTlRMT0JKUz0KICAgIGlmIHRlc3QgIiRV
U0VfSU5DTFVERURfTElCSU5UTCIgPSB5ZXM7IHRoZW4KICAgICAgSU5UTE9CSlM9IlwkKEdFVFRP
QkpTKSIKICAgIGZpCiAgICBBQ19TVUJTVChJTlRMT0JKUykKCiAgICBkbmwgRW5hYmxlIGxpYnRv
b2wgc3VwcG9ydCBpZiB0aGUgc3Vycm91bmRpbmcgcGFja2FnZSB3aXNoZXMgaXQuCiAgICBJTlRM
X0xJQlRPT0xfU1VGRklYX1BSRUZJWD1ndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXgKICAgIEFDX1NV
QlNUKElOVExfTElCVE9PTF9TVUZGSVhfUFJFRklYKQogIF0pCgogIGRubCBGb3IgYmFja3dhcmQg
Y29tcGF0aWJpbGl0eS4gU29tZSBNYWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCiAgSU5UTExJ
QlM9IiRMSUJJTlRMIgogIEFDX1NVQlNUKElOVExMSUJTKQoKICBkbmwgTWFrZSBhbGwgZG9jdW1l
bnRlZCB2YXJpYWJsZXMga25vd24gdG8gYXV0b2NvbmYuCiAgQUNfU1VCU1QoTElCSU5UTCkKICBB
Q19TVUJTVChMVExJQklOVEwpCiAgQUNfU1VCU1QoUE9TVUIpCl0pCgoKZG5sIENoZWNrcyBmb3Ig
YWxsIHByZXJlcXVpc2l0ZXMgb2YgdGhlIGludGwgc3ViZGlyZWN0b3J5LApkbmwgZXhjZXB0IGZv
ciBJTlRMX0xJQlRPT0xfU1VGRklYX1BSRUZJWCAoYW5kIHBvc3NpYmx5IExJQlRPT0wpLCBJTlRM
T0JKUywKZG5sICAgICAgICAgICAgVVNFX0lOQ0xVREVEX0xJQklOVEwsIEJVSUxEX0lOQ0xVREVE
X0xJQklOVEwuCkFDX0RFRlVOKFtBTV9JTlRMX1NVQkRJUl0sClsKICBBQ19SRVFVSVJFKFtBQ19Q
Uk9HX0lOU1RBTExdKWRubAogIEFDX1JFUVVJUkUoW0FNX1BST0dfTUtESVJfUF0pZG5sIGRlZmlu
ZWQgYnkgYXV0b21ha2UKICBBQ19SRVFVSVJFKFtBQ19QUk9HX0NDXSlkbmwKICBBQ19SRVFVSVJF
KFtBQ19DQU5PTklDQUxfSE9TVF0pZG5sCiAgQUNfUkVRVUlSRShbZ3RfR0xJQkMyXSlkbmwKICBB
Q19SRVFVSVJFKFtBQ19QUk9HX1JBTkxJQl0pZG5sCiAgQUNfUkVRVUlSRShbZ2xfVklTSUJJTElU
WV0pZG5sCiAgQUNfUkVRVUlSRShbZ3RfSU5UTF9TVUJESVJfQ09SRV0pZG5sCiAgQUNfUkVRVUlS
RShbYmhfQ19TSUdORURdKWRubAogIEFDX1JFUVVJUkUoW2dsX0FDX1RZUEVfTE9OR19MT05HXSlk
bmwKICBBQ19SRVFVSVJFKFtndF9UWVBFX0xPTkdET1VCTEVdKWRubAogIEFDX1JFUVVJUkUoW2d0
X1RZUEVfV0NIQVJfVF0pZG5sCiAgQUNfUkVRVUlSRShbZ3RfVFlQRV9XSU5UX1RdKWRubAogIEFD
X1JFUVVJUkUoW2dsX0FDX0hFQURFUl9JTlRUWVBFU19IXSkKICBBQ19SRVFVSVJFKFtndF9UWVBF
X0lOVE1BWF9UXSkKICBBQ19SRVFVSVJFKFtndF9QUklOVEZfUE9TSVhdKQogIEFDX1JFUVVJUkUo
W2dsX0dMSUJDMjFdKWRubAogIEFDX1JFUVVJUkUoW2dsX1hTSVpFXSlkbmwKICBBQ19SRVFVSVJF
KFtndF9JTlRMX01BQ09TWF0pZG5sCgogIEFDX0NIRUNLX1RZUEUoW3B0cmRpZmZfdF0sICwKICAg
IFtBQ19ERUZJTkUoW3B0cmRpZmZfdF0sIFtsb25nXSwKICAgICAgIFtEZWZpbmUgYXMgdGhlIHR5
cGUgb2YgdGhlIHJlc3VsdCBvZiBzdWJ0cmFjdGluZyB0d28gcG9pbnRlcnMsIGlmIHRoZSBzeXN0
ZW0gZG9lc24ndCBkZWZpbmUgaXQuXSkKICAgIF0pCiAgQUNfQ0hFQ0tfSEVBREVSUyhbc3RkZGVm
Lmggc3RkbGliLmggc3RyaW5nLmhdKQogIEFDX0NIRUNLX0ZVTkNTKFthc3ByaW50ZiBmd3ByaW50
ZiBwdXRlbnYgc2V0ZW52IHNldGxvY2FsZSBzbnByaW50ZiB3Y3NsZW5dKQoKICBkbmwgVXNlIHRo
ZSBfc25wcmludGYgZnVuY3Rpb24gb25seSBpZiBpdCBpcyBkZWNsYXJlZCAoYmVjYXVzZSBvbiBO
ZXRCU0QgaXQKICBkbmwgaXMgZGVmaW5lZCBhcyBhIHdlYWsgYWxpYXMgb2Ygc25wcmludGY7IHdl
IHByZWZlciB0byB1c2UgdGhlIGxhdHRlcikuCiAgZ3RfQ0hFQ0tfREVDTChfc25wcmludGYsIFsj
aW5jbHVkZSA8c3RkaW8uaD5dKQogIGd0X0NIRUNLX0RFQ0woX3Nud3ByaW50ZiwgWyNpbmNsdWRl
IDxzdGRpby5oPl0pCgogIGRubCBVc2UgdGhlICpfdW5sb2NrZWQgZnVuY3Rpb25zIG9ubHkgaWYg
dGhleSBhcmUgZGVjbGFyZWQuCiAgZG5sIChiZWNhdXNlIHNvbWUgb2YgdGhlbSB3ZXJlIGRlZmlu
ZWQgd2l0aG91dCBiZWluZyBkZWNsYXJlZCBpbiBTb2xhcmlzCiAgZG5sIDIuNS4xIGJ1dCB3ZXJl
IHJlbW92ZWQgaW4gU29sYXJpcyAyLjYsIHdoZXJlYXMgd2Ugd2FudCBiaW5hcmllcyBidWlsdAog
IGRubCBvbiBTb2xhcmlzIDIuNS4xIHRvIHJ1biBvbiBTb2xhcmlzIDIuNikuCiAgZG5sIERvbid0
IHVzZSBBQ19DSEVDS19ERUNMUyBiZWNhdXNlIGl0IGlzbid0IHN1cHBvcnRlZCBpbiBhdXRvY29u
Zi0yLjEzLgogIGd0X0NIRUNLX0RFQ0woZ2V0Y191bmxvY2tlZCwgWyNpbmNsdWRlIDxzdGRpby5o
Pl0pCgogIGNhc2UgJGd0X2N2X2Z1bmNfcHJpbnRmX3Bvc2l4IGluCiAgICAqeWVzKSBIQVZFX1BP
U0lYX1BSSU5URj0xIDs7CiAgICAqKSBIQVZFX1BPU0lYX1BSSU5URj0wIDs7CiAgZXNhYwogIEFD
X1NVQlNUKFtIQVZFX1BPU0lYX1BSSU5URl0pCiAgaWYgdGVzdCAiJGFjX2N2X2Z1bmNfYXNwcmlu
dGYiID0geWVzOyB0aGVuCiAgICBIQVZFX0FTUFJJTlRGPTEKICBlbHNlCiAgICBIQVZFX0FTUFJJ
TlRGPTAKICBmaQogIEFDX1NVQlNUKFtIQVZFX0FTUFJJTlRGXSkKICBpZiB0ZXN0ICIkYWNfY3Zf
ZnVuY19zbnByaW50ZiIgPSB5ZXM7IHRoZW4KICAgIEhBVkVfU05QUklOVEY9MQogIGVsc2UKICAg
IEhBVkVfU05QUklOVEY9MAogIGZpCiAgQUNfU1VCU1QoW0hBVkVfU05QUklOVEZdKQogIGlmIHRl
c3QgIiRhY19jdl9mdW5jX3dwcmludGYiID0geWVzOyB0aGVuCiAgICBIQVZFX1dQUklOVEY9MQog
IGVsc2UKICAgIEhBVkVfV1BSSU5URj0wCiAgZmkKICBBQ19TVUJTVChbSEFWRV9XUFJJTlRGXSkK
CiAgQU1fTEFOR0lORk9fQ09ERVNFVAogIGd0X0xDX01FU1NBR0VTCgogIGRubCBDb21waWxhdGlv
biBvbiBtaW5ndyBhbmQgQ3lnd2luIG5lZWRzIHNwZWNpYWwgTWFrZWZpbGUgcnVsZXMsIGJlY2F1
c2UKICBkbmwgMS4gd2hlbiB3ZSBpbnN0YWxsIGEgc2hhcmVkIGxpYnJhcnksIHdlIG11c3QgYXJy
YW5nZSB0byBleHBvcnQKICBkbmwgICAgYXV4aWxpYXJ5IHBvaW50ZXIgdmFyaWFibGVzIGZvciBl
dmVyeSBleHBvcnRlZCB2YXJpYWJsZSwKICBkbmwgMi4gd2hlbiB3ZSBpbnN0YWxsIGEgc2hhcmVk
IGxpYnJhcnkgYW5kIGEgc3RhdGljIGxpYnJhcnkgc2ltdWx0YW5lb3VzbHksCiAgZG5sICAgIHRo
ZSBpbmNsdWRlIGZpbGUgc3BlY2lmaWVzIF9fZGVjbHNwZWMoZGxsaW1wb3J0KSBhbmQgdGhlcmVm
b3JlIHdlCiAgZG5sICAgIG11c3QgYXJyYW5nZSB0byBkZWZpbmUgdGhlIGF1eGlsaWFyeSBwb2lu
dGVyIHZhcmlhYmxlcyBmb3IgdGhlCiAgZG5sICAgIGV4cG9ydGVkIHZhcmlhYmxlcyBfYWxzb18g
aW4gdGhlIHN0YXRpYyBsaWJyYXJ5LgogIGlmIHRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllczsg
dGhlbgogICAgY2FzZSAiJGhvc3Rfb3MiIGluCiAgICAgIGN5Z3dpbiopIGlzX3dvZTMyZGxsPXll
cyA7OwogICAgICAqKSBpc193b2UzMmRsbD1ubyA7OwogICAgZXNhYwogIGVsc2UKICAgIGlzX3dv
ZTMyZGxsPW5vCiAgZmkKICBXT0UzMkRMTD0kaXNfd29lMzJkbGwKICBBQ19TVUJTVChbV09FMzJE
TExdKQoKICBkbmwgUmVuYW1lIHNvbWUgbWFjcm9zIGFuZCBmdW5jdGlvbnMgdXNlZCBmb3IgbG9j
a2luZy4KICBBSF9CT1RUT00oWwojZGVmaW5lIF9fbGliY19sb2NrX3QgICAgICAgICAgICAgICAg
ICAgZ2xfbG9ja190CiNkZWZpbmUgX19saWJjX2xvY2tfZGVmaW5lICAgICAgICAgICAgICBnbF9s
b2NrX2RlZmluZQojZGVmaW5lIF9fbGliY19sb2NrX2RlZmluZV9pbml0aWFsaXplZCAgZ2xfbG9j
a19kZWZpbmVfaW5pdGlhbGl6ZWQKI2RlZmluZSBfX2xpYmNfbG9ja19pbml0ICAgICAgICAgICAg
ICAgIGdsX2xvY2tfaW5pdAojZGVmaW5lIF9fbGliY19sb2NrX2xvY2sgICAgICAgICAgICAgICAg
Z2xfbG9ja19sb2NrCiNkZWZpbmUgX19saWJjX2xvY2tfdW5sb2NrICAgICAgICAgICAgICBnbF9s
b2NrX3VubG9jawojZGVmaW5lIF9fbGliY19sb2NrX3JlY3Vyc2l2ZV90ICAgICAgICAgICAgICAg
ICAgIGdsX3JlY3Vyc2l2ZV9sb2NrX3QKI2RlZmluZSBfX2xpYmNfbG9ja19kZWZpbmVfcmVjdXJz
aXZlICAgICAgICAgICAgICBnbF9yZWN1cnNpdmVfbG9ja19kZWZpbmUKI2RlZmluZSBfX2xpYmNf
bG9ja19kZWZpbmVfaW5pdGlhbGl6ZWRfcmVjdXJzaXZlICBnbF9yZWN1cnNpdmVfbG9ja19kZWZp
bmVfaW5pdGlhbGl6ZWQKI2RlZmluZSBfX2xpYmNfbG9ja19pbml0X3JlY3Vyc2l2ZSAgICAgICAg
ICAgICAgICBnbF9yZWN1cnNpdmVfbG9ja19pbml0CiNkZWZpbmUgX19saWJjX2xvY2tfbG9ja19y
ZWN1cnNpdmUgICAgICAgICAgICAgICAgZ2xfcmVjdXJzaXZlX2xvY2tfbG9jawojZGVmaW5lIF9f
bGliY19sb2NrX3VubG9ja19yZWN1cnNpdmUgICAgICAgICAgICAgIGdsX3JlY3Vyc2l2ZV9sb2Nr
X3VubG9jawojZGVmaW5lIGdsdGhyZWFkX2luX3VzZSAgbGliaW50bF90aHJlYWRfaW5fdXNlCiNk
ZWZpbmUgZ2x0aHJlYWRfbG9ja19pbml0ICAgICBsaWJpbnRsX2xvY2tfaW5pdAojZGVmaW5lIGds
dGhyZWFkX2xvY2tfbG9jayAgICAgbGliaW50bF9sb2NrX2xvY2sKI2RlZmluZSBnbHRocmVhZF9s
b2NrX3VubG9jayAgIGxpYmludGxfbG9ja191bmxvY2sKI2RlZmluZSBnbHRocmVhZF9sb2NrX2Rl
c3Ryb3kgIGxpYmludGxfbG9ja19kZXN0cm95CiNkZWZpbmUgZ2x0aHJlYWRfcndsb2NrX2luaXQg
ICAgIGxpYmludGxfcndsb2NrX2luaXQKI2RlZmluZSBnbHRocmVhZF9yd2xvY2tfcmRsb2NrICAg
bGliaW50bF9yd2xvY2tfcmRsb2NrCiNkZWZpbmUgZ2x0aHJlYWRfcndsb2NrX3dybG9jayAgIGxp
YmludGxfcndsb2NrX3dybG9jawojZGVmaW5lIGdsdGhyZWFkX3J3bG9ja191bmxvY2sgICBsaWJp
bnRsX3J3bG9ja191bmxvY2sKI2RlZmluZSBnbHRocmVhZF9yd2xvY2tfZGVzdHJveSAgbGliaW50
bF9yd2xvY2tfZGVzdHJveQojZGVmaW5lIGdsdGhyZWFkX3JlY3Vyc2l2ZV9sb2NrX2luaXQgICAg
IGxpYmludGxfcmVjdXJzaXZlX2xvY2tfaW5pdAojZGVmaW5lIGdsdGhyZWFkX3JlY3Vyc2l2ZV9s
b2NrX2xvY2sgICAgIGxpYmludGxfcmVjdXJzaXZlX2xvY2tfbG9jawojZGVmaW5lIGdsdGhyZWFk
X3JlY3Vyc2l2ZV9sb2NrX3VubG9jayAgIGxpYmludGxfcmVjdXJzaXZlX2xvY2tfdW5sb2NrCiNk
ZWZpbmUgZ2x0aHJlYWRfcmVjdXJzaXZlX2xvY2tfZGVzdHJveSAgbGliaW50bF9yZWN1cnNpdmVf
bG9ja19kZXN0cm95CiNkZWZpbmUgZ2x0aHJlYWRfb25jZSAgICAgICAgICAgICAgICAgbGliaW50
bF9vbmNlCiNkZWZpbmUgZ2x0aHJlYWRfb25jZV9jYWxsICAgICAgICAgICAgbGliaW50bF9vbmNl
X2NhbGwKI2RlZmluZSBnbHRocmVhZF9vbmNlX3NpbmdsZXRocmVhZGVkICBsaWJpbnRsX29uY2Vf
c2luZ2xldGhyZWFkZWQKXSkKXSkKCgpkbmwgQ2hlY2tzIGZvciB0aGUgY29yZSBmaWxlcyBvZiB0
aGUgaW50bCBzdWJkaXJlY3Rvcnk6CmRubCAgIGRjaWdldHRleHQuYwpkbmwgICBldmFsLXBsdXJh
bC5oCmRubCAgIGV4cGxvZGVuYW1lLmMKZG5sICAgZmluZGRvbWFpbi5jCmRubCAgIGdldHRleHRQ
LmgKZG5sICAgZ21vLmgKZG5sICAgaGFzaC1zdHJpbmcuaCBoYXNoLXN0cmluZy5jCmRubCAgIGwx
MG5mbGlzdC5jCmRubCAgIGxpYmdudWludGwuaC5pbiAoZXhjZXB0IHRoZSAqcHJpbnRmIHN0dWZm
KQpkbmwgICBsb2FkaW5mby5oCmRubCAgIGxvYWRtc2djYXQuYwpkbmwgICBsb2NhbGVhbGlhcy5j
CmRubCAgIGxvZy5jCmRubCAgIHBsdXJhbC1leHAuaCBwbHVyYWwtZXhwLmMKZG5sICAgcGx1cmFs
LnkKZG5sIFVzZWQgYnkgbGliZ2xvY2FsZS4KQUNfREVGVU4oW2d0X0lOVExfU1VCRElSX0NPUkVd
LApbCiAgQUNfUkVRVUlSRShbQUNfQ19JTkxJTkVdKWRubAogIEFDX1JFUVVJUkUoW0FDX1RZUEVf
U0laRV9UXSlkbmwKICBBQ19SRVFVSVJFKFtnbF9BQ19IRUFERVJfU1RESU5UX0hdKQogIEFDX1JF
UVVJUkUoW0FDX0ZVTkNfQUxMT0NBXSlkbmwKICBBQ19SRVFVSVJFKFtBQ19GVU5DX01NQVBdKWRu
bAogIEFDX1JFUVVJUkUoW2d0X0lOVERJVjBdKWRubAogIEFDX1JFUVVJUkUoW2dsX0FDX1RZUEVf
VUlOVE1BWF9UXSlkbmwKICBBQ19SRVFVSVJFKFtnbF9IRUFERVJfSU5UVFlQRVNfSF0pZG5sCiAg
QUNfUkVRVUlSRShbZ3RfSU5UVFlQRVNfUFJJXSlkbmwKICBBQ19SRVFVSVJFKFtnbF9MT0NLXSlk
bmwKCiAgQUNfVFJZX0xJTksoCiAgICBbaW50IGZvbyAoaW50IGEpIHsgYSA9IF9fYnVpbHRpbl9l
eHBlY3QgKGEsIDEwKTsgcmV0dXJuIGEgPT0gMTAgPyAwIDogMTsgfV0sCiAgICBbXSwKICAgIFtB
Q19ERUZJTkUoW0hBVkVfQlVJTFRJTl9FWFBFQ1RdLCAxLAogICAgICAgW0RlZmluZSB0byAxIGlm
IHRoZSBjb21waWxlciB1bmRlcnN0YW5kcyBfX2J1aWx0aW5fZXhwZWN0Ll0pXSkKCiAgQUNfQ0hF
Q0tfSEVBREVSUyhbYXJnei5oIGxpbWl0cy5oIHVuaXN0ZC5oIHN5cy9wYXJhbS5oXSkKICBBQ19D
SEVDS19GVU5DUyhbZ2V0Y3dkIGdldGVnaWQgZ2V0ZXVpZCBnZXRnaWQgZ2V0dWlkIG1lbXBjcHkg
bXVubWFwIFwKICAgIHN0cGNweSBzdHJjYXNlY21wIHN0cmR1cCBzdHJ0b3VsIHRzZWFyY2ggYXJn
el9jb3VudCBhcmd6X3N0cmluZ2lmeSBcCiAgICBhcmd6X25leHQgX19mc2V0bG9ja2luZ10pCgog
IGRubCBVc2UgdGhlICpfdW5sb2NrZWQgZnVuY3Rpb25zIG9ubHkgaWYgdGhleSBhcmUgZGVjbGFy
ZWQuCiAgZG5sIChiZWNhdXNlIHNvbWUgb2YgdGhlbSB3ZXJlIGRlZmluZWQgd2l0aG91dCBiZWlu
ZyBkZWNsYXJlZCBpbiBTb2xhcmlzCiAgZG5sIDIuNS4xIGJ1dCB3ZXJlIHJlbW92ZWQgaW4gU29s
YXJpcyAyLjYsIHdoZXJlYXMgd2Ugd2FudCBiaW5hcmllcyBidWlsdAogIGRubCBvbiBTb2xhcmlz
IDIuNS4xIHRvIHJ1biBvbiBTb2xhcmlzIDIuNikuCiAgZG5sIERvbid0IHVzZSBBQ19DSEVDS19E
RUNMUyBiZWNhdXNlIGl0IGlzbid0IHN1cHBvcnRlZCBpbiBhdXRvY29uZi0yLjEzLgogIGd0X0NI
RUNLX0RFQ0woZmVvZl91bmxvY2tlZCwgWyNpbmNsdWRlIDxzdGRpby5oPl0pCiAgZ3RfQ0hFQ0tf
REVDTChmZ2V0c191bmxvY2tlZCwgWyNpbmNsdWRlIDxzdGRpby5oPl0pCgogIEFNX0lDT05WCgog
IGRubCBnbGliYyA+PSAyLjQgaGFzIGEgTkxfTE9DQUxFX05BTUUgbWFjcm8gd2hlbiBfR05VX1NP
VVJDRSBpcyBkZWZpbmVkLAogIGRubCBhbmQgYSBfTkxfTE9DQUxFX05BTUUgbWFjcm8gYWx3YXlz
LgogIEFDX0NBQ0hFX0NIRUNLKFtmb3IgTkxfTE9DQUxFX05BTUUgbWFjcm9dLCBndF9jdl9ubF9s
b2NhbGVfbmFtZSwKICAgIFtBQ19UUllfTElOSyhbI2luY2x1ZGUgPGxhbmdpbmZvLmg+CiNpbmNs
dWRlIDxsb2NhbGUuaD5dLAogICAgICBbY2hhciogY3MgPSBubF9sYW5naW5mbyhfTkxfTE9DQUxF
X05BTUUoTENfTUVTU0FHRVMpKTtdLAogICAgICBndF9jdl9ubF9sb2NhbGVfbmFtZT15ZXMsCiAg
ICAgIGd0X2N2X25sX2xvY2FsZV9uYW1lPW5vKQogICAgXSkKICBpZiB0ZXN0ICRndF9jdl9ubF9s
b2NhbGVfbmFtZSA9IHllczsgdGhlbgogICAgQUNfREVGSU5FKEhBVkVfTkxfTE9DQUxFX05BTUUs
IDEsCiAgICAgIFtEZWZpbmUgaWYgeW91IGhhdmUgPGxhbmdpbmZvLmg+IGFuZCBpdCBkZWZpbmVz
IHRoZSBOTF9MT0NBTEVfTkFNRSBtYWNybyBpZiBfR05VX1NPVVJDRSBpcyBkZWZpbmVkLl0pCiAg
ZmkKCiAgZG5sIGludGwvcGx1cmFsLmMgaXMgZ2VuZXJhdGVkIGZyb20gaW50bC9wbHVyYWwueS4g
SXQgcmVxdWlyZXMgYmlzb24sCiAgZG5sIGJlY2F1c2UgcGx1cmFsLnkgdXNlcyBiaXNvbiBzcGVj
aWZpYyBmZWF0dXJlcy4gSXQgcmVxdWlyZXMgYXQgbGVhc3QKICBkbmwgYmlzb24tMS4yNiBiZWNh
dXNlIGVhcmxpZXIgdmVyc2lvbnMgZ2VuZXJhdGUgYSBwbHVyYWwuYyB0aGF0IGRvZXNuJ3QKICBk
bmwgY29tcGlsZS4KICBkbmwgYmlzb24gaXMgb25seSBuZWVkZWQgZm9yIHRoZSBtYWludGFpbmVy
ICh3aG8gdG91Y2hlcyBwbHVyYWwueSkuIEJ1dCBpbgogIGRubCBvcmRlciB0byBhdm9pZCBzZXBh
cmF0ZSBNYWtlZmlsZXMgb3IgLS1lbmFibGUtbWFpbnRhaW5lci1tb2RlLCB3ZSBwdXQKICBkbmwg
dGhlIHJ1bGUgaW4gZ2VuZXJhbCBNYWtlZmlsZS4gTm93LCBzb21lIHBlb3BsZSBjYXJlbGVzc2x5
IHRvdWNoIHRoZQogIGRubCBmaWxlcyBvciBoYXZlIGEgYnJva2VuICJtYWtlIiBwcm9ncmFtLCBo
ZW5jZSB0aGUgcGx1cmFsLmMgcnVsZSB3aWxsCiAgZG5sIHNvbWV0aW1lcyBmaXJlLiBUbyBhdm9p
ZCBhbiBlcnJvciwgZGVmaW5lcyBCSVNPTiB0byAiOiIgaWYgaXQgaXMgbm90CiAgZG5sIHByZXNl
bnQgb3IgdG9vIG9sZC4KICBBQ19DSEVDS19QUk9HUyhbSU5UTEJJU09OXSwgW2Jpc29uXSkKICBp
ZiB0ZXN0IC16ICIkSU5UTEJJU09OIjsgdGhlbgogICAgYWNfdmVyY19mYWlsPXllcwogIGVsc2UK
ICAgIGRubCBGb3VuZCBpdCwgbm93IGNoZWNrIHRoZSB2ZXJzaW9uLgogICAgQUNfTVNHX0NIRUNL
SU5HKFt2ZXJzaW9uIG9mIGJpc29uXSkKY2hhbmdlcXVvdGUoPDwsPj4pZG5sCiAgICBhY19wcm9n
X3ZlcnNpb249YCRJTlRMQklTT04gLS12ZXJzaW9uIDI+JjEgfCBzZWQgLW4gJ3MvXi4qR05VIEJp
c29uLiogXChbMC05XSpcLlswLTkuXSpcKS4qJC9cMS9wJ2AKICAgIGNhc2UgJGFjX3Byb2dfdmVy
c2lvbiBpbgogICAgICAnJykgYWNfcHJvZ192ZXJzaW9uPSJ2LiA/Lj8/LCBiYWQiOyBhY192ZXJj
X2ZhaWw9eWVzOzsKICAgICAgMS4yWzYtOV0qIHwgMS5bMy05XVswLTldKiB8IFsyLTldLiopCmNo
YW5nZXF1b3RlKFssXSlkbmwKICAgICAgICAgYWNfcHJvZ192ZXJzaW9uPSIkYWNfcHJvZ192ZXJz
aW9uLCBvayI7IGFjX3ZlcmNfZmFpbD1ubzs7CiAgICAgICopIGFjX3Byb2dfdmVyc2lvbj0iJGFj
X3Byb2dfdmVyc2lvbiwgYmFkIjsgYWNfdmVyY19mYWlsPXllczs7CiAgICBlc2FjCiAgICBBQ19N
U0dfUkVTVUxUKFskYWNfcHJvZ192ZXJzaW9uXSkKICBmaQogIGlmIHRlc3QgJGFjX3ZlcmNfZmFp
bCA9IHllczsgdGhlbgogICAgSU5UTEJJU09OPToKICBmaQpdKQoKCmRubCBDaGVja3MgZm9yIHNw
ZWNpYWwgb3B0aW9ucyBuZWVkZWQgb24gTWFjT1MgWC4KZG5sIERlZmluZXMgSU5UTF9NQUNPU1hf
TElCUy4KQUNfREVGVU4oW2d0X0lOVExfTUFDT1NYXSwKWwogIGRubCBDaGVjayBmb3IgQVBJIGlu
dHJvZHVjZWQgaW4gTWFjT1MgWCAxMC4yLgogIEFDX0NBQ0hFX0NIRUNLKFtmb3IgQ0ZQcmVmZXJl
bmNlc0NvcHlBcHBWYWx1ZV0sCiAgICBndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFs
dWUsCiAgICBbZ3Rfc2F2ZV9MSUJTPSIkTElCUyIKICAgICBMSUJTPSIkTElCUyAtV2wsLWZyYW1l
d29yayAtV2wsQ29yZUZvdW5kYXRpb24iCiAgICAgQUNfVFJZX0xJTksoWyNpbmNsdWRlIDxDb3Jl
Rm91bmRhdGlvbi9DRlByZWZlcmVuY2VzLmg+XSwKICAgICAgIFtDRlByZWZlcmVuY2VzQ29weUFw
cFZhbHVlKE5VTEwsIE5VTEwpXSwKICAgICAgIFtndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5
QXBwVmFsdWU9eWVzXSwKICAgICAgIFtndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFs
dWU9bm9dKQogICAgIExJQlM9IiRndF9zYXZlX0xJQlMiXSkKICBpZiB0ZXN0ICRndF9jdl9mdW5j
X0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShbSEFW
RV9DRlBSRUZFUkVOQ0VTQ09QWUFQUFZBTFVFXSwgMSwKICAgICAgW0RlZmluZSB0byAxIGlmIHlv
dSBoYXZlIHRoZSBNYWNPUyBYIGZ1bmN0aW9uIENGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUgaW4g
dGhlIENvcmVGb3VuZGF0aW9uIGZyYW1ld29yay5dKQogIGZpCiAgZG5sIENoZWNrIGZvciBBUEkg
aW50cm9kdWNlZCBpbiBNYWNPUyBYIDEwLjMuCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBDRkxvY2Fs
ZUNvcHlDdXJyZW50XSwgZ3RfY3ZfZnVuY19DRkxvY2FsZUNvcHlDdXJyZW50LAogICAgW2d0X3Nh
dmVfTElCUz0iJExJQlMiCiAgICAgTElCUz0iJExJQlMgLVdsLC1mcmFtZXdvcmsgLVdsLENvcmVG
b3VuZGF0aW9uIgogICAgIEFDX1RSWV9MSU5LKFsjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ0ZM
b2NhbGUuaD5dLCBbQ0ZMb2NhbGVDb3B5Q3VycmVudCgpO10sCiAgICAgICBbZ3RfY3ZfZnVuY19D
RkxvY2FsZUNvcHlDdXJyZW50PXllc10sCiAgICAgICBbZ3RfY3ZfZnVuY19DRkxvY2FsZUNvcHlD
dXJyZW50PW5vXSkKICAgICBMSUJTPSIkZ3Rfc2F2ZV9MSUJTIl0pCiAgaWYgdGVzdCAkZ3RfY3Zf
ZnVuY19DRkxvY2FsZUNvcHlDdXJyZW50ID0geWVzOyB0aGVuCiAgICBBQ19ERUZJTkUoW0hBVkVf
Q0ZMT0NBTEVDT1BZQ1VSUkVOVF0sIDEsCiAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0
aGUgTWFjT1MgWCBmdW5jdGlvbiBDRkxvY2FsZUNvcHlDdXJyZW50IGluIHRoZSBDb3JlRm91bmRh
dGlvbiBmcmFtZXdvcmsuXSkKICBmaQogIElOVExfTUFDT1NYX0xJQlM9CiAgaWYgdGVzdCAkZ3Rf
Y3ZfZnVuY19DRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlID0geWVzIHx8IHRlc3QgJGd0X2N2X2Z1
bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudCA9IHllczsgdGhlbgogICAgSU5UTF9NQUNPU1hfTElCUz0i
LVdsLC1mcmFtZXdvcmsgLVdsLENvcmVGb3VuZGF0aW9uIgogIGZpCiAgQUNfU1VCU1QoW0lOVExf
TUFDT1NYX0xJQlNdKQpdKQoKCmRubCBndF9DSEVDS19ERUNMKEZVTkMsIElOQ0xVREVTKQpkbmwg
Q2hlY2sgd2hldGhlciBhIGZ1bmN0aW9uIGlzIGRlY2xhcmVkLgpBQ19ERUZVTihbZ3RfQ0hFQ0tf
REVDTF0sClsKICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciAkMSBpcyBkZWNsYXJlZF0sIGFjX2N2
X2hhdmVfZGVjbF8kMSwKICAgIFtBQ19UUllfQ09NUElMRShbJDJdLCBbCiNpZm5kZWYgJDEKICBj
aGFyICpwID0gKGNoYXIgKikgJDE7CiNlbmRpZgpdLCBhY19jdl9oYXZlX2RlY2xfJDE9eWVzLCBh
Y19jdl9oYXZlX2RlY2xfJDE9bm8pXSkKICBpZiB0ZXN0ICRhY19jdl9oYXZlX2RlY2xfJDEgPSB5
ZXM7IHRoZW4KICAgIGd0X3ZhbHVlPTEKICBlbHNlCiAgICBndF92YWx1ZT0wCiAgZmkKICBBQ19E
RUZJTkVfVU5RVU9URUQoW0hBVkVfREVDTF9ddHJhbnNsaXQoJDEsIFthLXpdLCBbQS1aXSksIFsk
Z3RfdmFsdWVdLAogICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBkZWNsYXJhdGlvbiBv
ZiBgJDEnLCBhbmQgdG8gMCBpZiB5b3UgZG9uJ3QuXSkKXSkKCgpkbmwgVXNhZ2U6IEFNX0dOVV9H
RVRURVhUX1ZFUlNJT04oW2dldHRleHQtdmVyc2lvbl0pCkFDX0RFRlVOKFtBTV9HTlVfR0VUVEVY
VF9WRVJTSU9OXSwgW10pCgojIGdsaWJjMi5tNCBzZXJpYWwgMQpkbmwgQ29weXJpZ2h0IChDKSAy
MDAwLTIwMDIsIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubCBUaGlzIGZp
bGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpkbmwgZ2l2
ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKZG5s
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlz
IHByZXNlcnZlZC4KCiMgVGVzdCBmb3IgdGhlIEdOVSBDIExpYnJhcnksIHZlcnNpb24gMi4wIG9y
IG5ld2VyLgojIEZyb20gQnJ1bm8gSGFpYmxlLgoKQUNfREVGVU4oW2d0X0dMSUJDMl0sCiAgWwog
ICAgQUNfQ0FDSEVfQ0hFQ0sod2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIExpYnJhcnkg
MiBvciBuZXdlciwKICAgICAgYWNfY3ZfZ251X2xpYnJhcnlfMiwKICAgICAgW0FDX0VHUkVQX0NQ
UChbTHVja3kgR05VIHVzZXJdLAoJWwojaW5jbHVkZSA8ZmVhdHVyZXMuaD4KI2lmZGVmIF9fR05V
X0xJQlJBUllfXwogI2lmIChfX0dMSUJDX18gPj0gMikKICBMdWNreSBHTlUgdXNlcgogI2VuZGlm
CiNlbmRpZgoJXSwKCWFjX2N2X2dudV9saWJyYXJ5XzI9eWVzLAoJYWNfY3ZfZ251X2xpYnJhcnlf
Mj1ubykKICAgICAgXQogICAgKQogICAgQUNfU1VCU1QoR0xJQkMyKQogICAgR0xJQkMyPSIkYWNf
Y3ZfZ251X2xpYnJhcnlfMiIKICBdCikKCiMgZ2xpYmMyMS5tNCBzZXJpYWwgMwpkbmwgQ29weXJp
Z2h0IChDKSAyMDAwLTIwMDIsIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRu
bCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0
ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMg
bm90aWNlIGlzIHByZXNlcnZlZC4KCiMgVGVzdCBmb3IgdGhlIEdOVSBDIExpYnJhcnksIHZlcnNp
b24gMi4xIG9yIG5ld2VyLgojIEZyb20gQnJ1bm8gSGFpYmxlLgoKQUNfREVGVU4oW2dsX0dMSUJD
MjFdLAogIFsKICAgIEFDX0NBQ0hFX0NIRUNLKHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUg
QyBMaWJyYXJ5IDIuMSBvciBuZXdlciwKICAgICAgYWNfY3ZfZ251X2xpYnJhcnlfMl8xLAogICAg
ICBbQUNfRUdSRVBfQ1BQKFtMdWNreSBHTlUgdXNlcl0sCglbCiNpbmNsdWRlIDxmZWF0dXJlcy5o
PgojaWZkZWYgX19HTlVfTElCUkFSWV9fCiAjaWYgKF9fR0xJQkNfXyA9PSAyICYmIF9fR0xJQkNf
TUlOT1JfXyA+PSAxKSB8fCAoX19HTElCQ19fID4gMikKICBMdWNreSBHTlUgdXNlcgogI2VuZGlm
CiNlbmRpZgoJXSwKCWFjX2N2X2dudV9saWJyYXJ5XzJfMT15ZXMsCglhY19jdl9nbnVfbGlicmFy
eV8yXzE9bm8pCiAgICAgIF0KICAgICkKICAgIEFDX1NVQlNUKEdMSUJDMjEpCiAgICBHTElCQzIx
PSIkYWNfY3ZfZ251X2xpYnJhcnlfMl8xIgogIF0KKQoKIyBpY29udi5tNCBzZXJpYWwgQU00IChn
ZXR0ZXh0LTAuMTEuMykKZG5sIENvcHlyaWdodCAoQykgMjAwMC0yMDAyIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNv
cHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
cywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCgpkbmwgRnJvbSBCcnVubyBI
YWlibGUuCgpBQ19ERUZVTihbQU1fSUNPTlZfTElOS0ZMQUdTX0JPRFldLApbCiAgZG5sIFByZXJl
cXVpc2l0ZXMgb2YgQUNfTElCX0xJTktGTEFHU19CT0RZLgogIEFDX1JFUVVJUkUoW0FDX0xJQl9Q
UkVQQVJFX1BSRUZJWF0pCiAgQUNfUkVRVUlSRShbQUNfTElCX1JQQVRIXSkKCiAgZG5sIFNlYXJj
aCBmb3IgbGliaWNvbnYgYW5kIGRlZmluZSBMSUJJQ09OViwgTFRMSUJJQ09OViBhbmQgSU5DSUNP
TlYKICBkbmwgYWNjb3JkaW5nbHkuCiAgQUNfTElCX0xJTktGTEFHU19CT0RZKFtpY29udl0pCl0p
CgpBQ19ERUZVTihbQU1fSUNPTlZfTElOS10sClsKICBkbmwgU29tZSBzeXN0ZW1zIGhhdmUgaWNv
bnYgaW4gbGliYywgc29tZSBoYXZlIGl0IGluIGxpYmljb252IChPU0YvMSBhbmQKICBkbmwgdGhv
c2Ugd2l0aCB0aGUgc3RhbmRhbG9uZSBwb3J0YWJsZSBHTlUgbGliaWNvbnYgaW5zdGFsbGVkKS4K
CiAgZG5sIFNlYXJjaCBmb3IgbGliaWNvbnYgYW5kIGRlZmluZSBMSUJJQ09OViwgTFRMSUJJQ09O
ViBhbmQgSU5DSUNPTlYKICBkbmwgYWNjb3JkaW5nbHkuCiAgQUNfUkVRVUlSRShbQU1fSUNPTlZf
TElOS0ZMQUdTX0JPRFldKQoKICBkbmwgQWRkICRJTkNJQ09OViB0byBDUFBGTEFHUyBiZWZvcmUg
cGVyZm9ybWluZyB0aGUgZm9sbG93aW5nIGNoZWNrcywKICBkbmwgYmVjYXVzZSBpZiB0aGUgdXNl
ciBoYXMgaW5zdGFsbGVkIGxpYmljb252IGFuZCBub3QgZGlzYWJsZWQgaXRzIHVzZQogIGRubCB2
aWEgLS13aXRob3V0LWxpYmljb252LXByZWZpeCwgaGUgd2FudHMgdG8gdXNlIGl0LiBUaGUgZmly
c3QKICBkbmwgQUNfVFJZX0xJTksgd2lsbCB0aGVuIGZhaWwsIHRoZSBzZWNvbmQgQUNfVFJZX0xJ
Tksgd2lsbCBzdWNjZWVkLgogIGFtX3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKICBBQ19MSUJf
QVBQRU5EVE9WQVIoW0NQUEZMQUdTXSwgWyRJTkNJQ09OVl0pCgogIEFDX0NBQ0hFX0NIRUNLKGZv
ciBpY29udiwgYW1fY3ZfZnVuY19pY29udiwgWwogICAgYW1fY3ZfZnVuY19pY29udj0ibm8sIGNv
bnNpZGVyIGluc3RhbGxpbmcgR05VIGxpYmljb252IgogICAgYW1fY3ZfbGliX2ljb252PW5vCiAg
ICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8aWNvbnYuaD5dLAog
ICAgICBbaWNvbnZfdCBjZCA9IGljb252X29wZW4oIiIsIiIpOwogICAgICAgaWNvbnYoY2QsTlVM
TCxOVUxMLE5VTEwsTlVMTCk7CiAgICAgICBpY29udl9jbG9zZShjZCk7XSwKICAgICAgYW1fY3Zf
ZnVuY19pY29udj15ZXMpCiAgICBpZiB0ZXN0ICIkYW1fY3ZfZnVuY19pY29udiIgIT0geWVzOyB0
aGVuCiAgICAgIGFtX3NhdmVfTElCUz0iJExJQlMiCiAgICAgIExJQlM9IiRMSUJTICRMSUJJQ09O
ViIKICAgICAgQUNfVFJZX0xJTksoWyNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPGljb252
Lmg+XSwKICAgICAgICBbaWNvbnZfdCBjZCA9IGljb252X29wZW4oIiIsIiIpOwogICAgICAgICBp
Y29udihjZCxOVUxMLE5VTEwsTlVMTCxOVUxMKTsKICAgICAgICAgaWNvbnZfY2xvc2UoY2QpO10s
CiAgICAgICAgYW1fY3ZfbGliX2ljb252PXllcwogICAgICAgIGFtX2N2X2Z1bmNfaWNvbnY9eWVz
KQogICAgICBMSUJTPSIkYW1fc2F2ZV9MSUJTIgogICAgZmkKICBdKQogIGlmIHRlc3QgIiRhbV9j
dl9mdW5jX2ljb252IiA9IHllczsgdGhlbgogICAgQUNfREVGSU5FKEhBVkVfSUNPTlYsIDEsIFtE
ZWZpbmUgaWYgeW91IGhhdmUgdGhlIGljb252KCkgZnVuY3Rpb24uXSkKICBmaQogIGlmIHRlc3Qg
IiRhbV9jdl9saWJfaWNvbnYiID0geWVzOyB0aGVuCiAgICBBQ19NU0dfQ0hFQ0tJTkcoW2hvdyB0
byBsaW5rIHdpdGggbGliaWNvbnZdKQogICAgQUNfTVNHX1JFU1VMVChbJExJQklDT05WXSkKICBl
bHNlCiAgICBkbmwgSWYgJExJQklDT05WIGRpZG4ndCBsZWFkIHRvIGEgdXNhYmxlIGxpYnJhcnks
IHdlIGRvbid0IG5lZWQgJElOQ0lDT05WCiAgICBkbmwgZWl0aGVyLgogICAgQ1BQRkxBR1M9IiRh
bV9zYXZlX0NQUEZMQUdTIgogICAgTElCSUNPTlY9CiAgICBMVExJQklDT05WPQogIGZpCiAgQUNf
U1VCU1QoTElCSUNPTlYpCiAgQUNfU1VCU1QoTFRMSUJJQ09OVikKXSkKCkFDX0RFRlVOKFtBTV9J
Q09OVl0sClsKICBBTV9JQ09OVl9MSU5LCiAgaWYgdGVzdCAiJGFtX2N2X2Z1bmNfaWNvbnYiID0g
eWVzOyB0aGVuCiAgICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBpY29udiBkZWNsYXJhdGlvbl0pCiAg
ICBBQ19DQUNIRV9WQUwoYW1fY3ZfcHJvdG9faWNvbnYsIFsKICAgICAgQUNfVFJZX0NPTVBJTEUo
WwojaW5jbHVkZSA8c3RkbGliLmg+CiNpbmNsdWRlIDxpY29udi5oPgpleHRlcm4KI2lmZGVmIF9f
Y3BsdXNwbHVzCiJDIgojZW5kaWYKI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19j
cGx1c3BsdXMpCnNpemVfdCBpY29udiAoaWNvbnZfdCBjZCwgY2hhciAqICppbmJ1Ziwgc2l6ZV90
ICppbmJ5dGVzbGVmdCwgY2hhciAqICpvdXRidWYsIHNpemVfdCAqb3V0Ynl0ZXNsZWZ0KTsKI2Vs
c2UKc2l6ZV90IGljb252KCk7CiNlbmRpZgpdLCBbXSwgYW1fY3ZfcHJvdG9faWNvbnZfYXJnMT0i
IiwgYW1fY3ZfcHJvdG9faWNvbnZfYXJnMT0iY29uc3QiKQogICAgICBhbV9jdl9wcm90b19pY29u
dj0iZXh0ZXJuIHNpemVfdCBpY29udiAoaWNvbnZfdCBjZCwgJGFtX2N2X3Byb3RvX2ljb252X2Fy
ZzEgY2hhciAqICppbmJ1Ziwgc2l6ZV90ICppbmJ5dGVzbGVmdCwgY2hhciAqICpvdXRidWYsIHNp
emVfdCAqb3V0Ynl0ZXNsZWZ0KTsiXSkKICAgIGFtX2N2X3Byb3RvX2ljb252PWBlY2hvICJbJF1h
bV9jdl9wcm90b19pY29udiIgfCB0ciAtcyAnICcgfCBzZWQgLWUgJ3MvKCAvKC8nYAogICAgQUNf
TVNHX1JFU1VMVChbJF17YWNfdDotCiAgICAgICAgIH1bJF1hbV9jdl9wcm90b19pY29udikKICAg
IEFDX0RFRklORV9VTlFVT1RFRChJQ09OVl9DT05TVCwgJGFtX2N2X3Byb3RvX2ljb252X2FyZzEs
CiAgICAgIFtEZWZpbmUgYXMgY29uc3QgaWYgdGhlIGRlY2xhcmF0aW9uIG9mIGljb252KCkgbmVl
ZHMgY29uc3QuXSkKICBmaQpdKQoKIyBpbnRkaXYwLm00IHNlcmlhbCAxIChnZXR0ZXh0LTAuMTEu
MykKZG5sIENvcHlyaWdodCAoQykgMjAwMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4K
ZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0
aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmli
dXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhp
cyBub3RpY2UgaXMgcHJlc2VydmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgoKQUNfREVGVU4o
W2d0X0lOVERJVjBdLApbCiAgQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pZG5sCiAgQUNfUkVRVUlS
RShbQUNfQ0FOT05JQ0FMX0hPU1RdKWRubAoKICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciBpbnRl
Z2VyIGRpdmlzaW9uIGJ5IHplcm8gcmFpc2VzIFNJR0ZQRV0sCiAgICBndF9jdl9pbnRfZGl2Ynl6
ZXJvX3NpZ2ZwZSwKICAgIFsKICAgICAgQUNfVFJZX1JVTihbCiNpbmNsdWRlIDxzdGRsaWIuaD4K
I2luY2x1ZGUgPHNpZ25hbC5oPgoKc3RhdGljIHZvaWQKI2lmZGVmIF9fY3BsdXNwbHVzCnNpZ2Zw
ZV9oYW5kbGVyIChpbnQgc2lnKQojZWxzZQpzaWdmcGVfaGFuZGxlciAoc2lnKSBpbnQgc2lnOwoj
ZW5kaWYKewogIC8qIEV4aXQgd2l0aCBjb2RlIDAgaWYgU0lHRlBFLCB3aXRoIGNvZGUgMSBpZiBh
bnkgb3RoZXIgc2lnbmFsLiAgKi8KICBleGl0IChzaWcgIT0gU0lHRlBFKTsKfQoKaW50IHggPSAx
OwppbnQgeSA9IDA7CmludCB6OwppbnQgbmFuOwoKaW50IG1haW4gKCkKewogIHNpZ25hbCAoU0lH
RlBFLCBzaWdmcGVfaGFuZGxlcik7Ci8qIElSSVggYW5kIEFJWCAod2hlbiAieGxjIC1xY2hlY2si
IGlzIHVzZWQpIHlpZWxkIHNpZ25hbCBTSUdUUkFQLiAgKi8KI2lmIChkZWZpbmVkIChfX3NnaSkg
fHwgZGVmaW5lZCAoX0FJWCkpICYmIGRlZmluZWQgKFNJR1RSQVApCiAgc2lnbmFsIChTSUdUUkFQ
LCBzaWdmcGVfaGFuZGxlcik7CiNlbmRpZgovKiBMaW51eC9TUEFSQyB5aWVsZHMgc2lnbmFsIFNJ
R0lMTC4gICovCiNpZiBkZWZpbmVkIChfX3NwYXJjX18pICYmIGRlZmluZWQgKF9fbGludXhfXykK
ICBzaWduYWwgKFNJR0lMTCwgc2lnZnBlX2hhbmRsZXIpOwojZW5kaWYKCiAgeiA9IHggLyB5Owog
IG5hbiA9IHkgLyB5OwogIGV4aXQgKDEpOwp9Cl0sIGd0X2N2X2ludF9kaXZieXplcm9fc2lnZnBl
PXllcywgZ3RfY3ZfaW50X2RpdmJ5emVyb19zaWdmcGU9bm8sCiAgICAgICAgWwogICAgICAgICAg
IyBHdWVzcyBiYXNlZCBvbiB0aGUgQ1BVLgogICAgICAgICAgY2FzZSAiJGhvc3RfY3B1IiBpbgog
ICAgICAgICAgICBhbHBoYSogfCBpWzM0NTY3XTg2IHwgbTY4ayB8IHMzOTAqKQogICAgICAgICAg
ICAgIGd0X2N2X2ludF9kaXZieXplcm9fc2lnZnBlPSJndWVzc2luZyB5ZXMiOzsKICAgICAgICAg
ICAgKikKICAgICAgICAgICAgICBndF9jdl9pbnRfZGl2Ynl6ZXJvX3NpZ2ZwZT0iZ3Vlc3Npbmcg
bm8iOzsKICAgICAgICAgIGVzYWMKICAgICAgICBdKQogICAgXSkKICBjYXNlICIkZ3RfY3ZfaW50
X2RpdmJ5emVyb19zaWdmcGUiIGluCiAgICAqeWVzKSB2YWx1ZT0xOzsKICAgICopIHZhbHVlPTA7
OwogIGVzYWMKICBBQ19ERUZJTkVfVU5RVU9URUQoSU5URElWMF9SQUlTRVNfU0lHRlBFLCAkdmFs
dWUsCiAgICBbRGVmaW5lIGlmIGludGVnZXIgZGl2aXNpb24gYnkgemVybyByYWlzZXMgc2lnbmFs
IFNJR0ZQRS5dKQpdKQoKIyBpbnRtYXgubTQgc2VyaWFsIDIgKGdldHRleHQtMC4xNC4yKQpkbmwg
Q29weXJpZ2h0IChDKSAyMDAyLTIwMDUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRu
bCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0
ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMg
bm90aWNlIGlzIHByZXNlcnZlZC4KCmRubCBGcm9tIEJydW5vIEhhaWJsZS4KZG5sIFRlc3Qgd2hl
dGhlciB0aGUgc3lzdGVtIGhhcyB0aGUgJ2ludG1heF90JyB0eXBlLCBidXQgZG9uJ3QgYXR0ZW1w
dCB0bwpkbmwgZmluZCBhIHJlcGxhY2VtZW50IGlmIGl0IGlzIGxhY2tpbmcuCgpBQ19ERUZVTihb
Z3RfVFlQRV9JTlRNQVhfVF0sClsKICBBQ19SRVFVSVJFKFtnbF9BQ19IRUFERVJfSU5UVFlQRVNf
SF0pCiAgQUNfUkVRVUlSRShbZ2xfQUNfSEVBREVSX1NURElOVF9IXSkKICBBQ19DQUNIRV9DSEVD
Syhmb3IgaW50bWF4X3QsIGd0X2N2X2NfaW50bWF4X3QsCiAgICBbQUNfVFJZX0NPTVBJTEUoWwoj
aW5jbHVkZSA8c3RkZGVmLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2lmIEhBVkVfU1RESU5UX0hf
V0lUSF9VSU5UTUFYCiNpbmNsdWRlIDxzdGRpbnQuaD4KI2VuZGlmCiNpZiBIQVZFX0lOVFRZUEVT
X0hfV0lUSF9VSU5UTUFYCiNpbmNsdWRlIDxpbnR0eXBlcy5oPgojZW5kaWYKXSwgW2ludG1heF90
IHggPSAtMTtdLCBndF9jdl9jX2ludG1heF90PXllcywgZ3RfY3ZfY19pbnRtYXhfdD1ubyldKQog
IGlmIHRlc3QgJGd0X2N2X2NfaW50bWF4X3QgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShIQVZF
X0lOVE1BWF9ULCAxLAogICAgICBbRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAnaW50bWF4X3QnIHR5
cGUgaW4gPHN0ZGludC5oPiBvciA8aW50dHlwZXMuaD4uXSkKICBmaQpdKQoKIyBpbnR0eXBlcy1o
Lm00IHNlcmlhbCAxIChnZXR0ZXh0LTAuMTUpCmRubCBDb3B5cmlnaHQgKEMpIDE5OTctMjAwMiwg
MjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVl
IHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0
ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVk
LgoKZG5sIEZyb20gUGF1bCBFZ2dlcnQuCgojIERlZmluZSBIQVZFX0lOVFRZUEVTX0ggaWYgPGlu
dHR5cGVzLmg+IGV4aXN0cyBhbmQgZG9lc24ndCBjbGFzaCB3aXRoCiMgPHN5cy90eXBlcy5oPi4K
CkFDX0RFRlVOKFtnbF9IRUFERVJfSU5UVFlQRVNfSF0sClsKICBBQ19DQUNIRV9DSEVDSyhbZm9y
IGludHR5cGVzLmhdLCBnbF9jdl9oZWFkZXJfaW50dHlwZXNfaCwKICBbCiAgICBBQ19UUllfQ09N
UElMRSgKICAgICAgWyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KI2luY2x1ZGUgPGludHR5cGVzLmg+
XSwKICAgICAgW10sIGdsX2N2X2hlYWRlcl9pbnR0eXBlc19oPXllcywgZ2xfY3ZfaGVhZGVyX2lu
dHR5cGVzX2g9bm8pCiAgXSkKICBpZiB0ZXN0ICRnbF9jdl9oZWFkZXJfaW50dHlwZXNfaCA9IHll
czsgdGhlbgogICAgQUNfREVGSU5FX1VOUVVPVEVEKEhBVkVfSU5UVFlQRVNfSCwgMSwKICAgICAg
W0RlZmluZSBpZiA8aW50dHlwZXMuaD4gZXhpc3RzIGFuZCBkb2Vzbid0IGNsYXNoIHdpdGggPHN5
cy90eXBlcy5oPi5dKQogIGZpCl0pCgojIGludHR5cGVzLXByaS5tNCBzZXJpYWwgMiAoZ2V0dGV4
dC0wLjE1KQpkbmwgQ29weXJpZ2h0IChDKSAxOTk3LTIwMDIsIDIwMDYgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuCmRubCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29w
eSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25z
LCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KCmRubCBGcm9tIEJydW5vIEhh
aWJsZS4KCiMgRGVmaW5lIFBSSV9NQUNST1NfQlJPS0VOIGlmIDxpbnR0eXBlcy5oPiBleGlzdHMg
YW5kIGRlZmluZXMgdGhlIFBSSSoKIyBtYWNyb3MgdG8gbm9uLXN0cmluZyB2YWx1ZXMuICBUaGlz
IGlzIHRoZSBjYXNlIG9uIEFJWCA0LjMuMy4KCkFDX0RFRlVOKFtndF9JTlRUWVBFU19QUkldLApb
CiAgQUNfUkVRVUlSRShbZ2xfSEVBREVSX0lOVFRZUEVTX0hdKQogIGlmIHRlc3QgJGdsX2N2X2hl
YWRlcl9pbnR0eXBlc19oID0geWVzOyB0aGVuCiAgICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciB0
aGUgaW50dHlwZXMuaCBQUkl4Tk4gbWFjcm9zIGFyZSBicm9rZW5dLAogICAgICBndF9jdl9pbnR0
eXBlc19wcmlfYnJva2VuLAogICAgICBbCiAgICAgICAgQUNfVFJZX0NPTVBJTEUoWyNpbmNsdWRl
IDxpbnR0eXBlcy5oPgojaWZkZWYgUFJJZDMyCmNoYXIgKnAgPSBQUklkMzI7CiNlbmRpZgpdLCBb
XSwgZ3RfY3ZfaW50dHlwZXNfcHJpX2Jyb2tlbj1ubywgZ3RfY3ZfaW50dHlwZXNfcHJpX2Jyb2tl
bj15ZXMpCiAgICAgIF0pCiAgZmkKICBpZiB0ZXN0ICIkZ3RfY3ZfaW50dHlwZXNfcHJpX2Jyb2tl
biIgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORV9VTlFVT1RFRChQUklfTUFDUk9TX0JST0tFTiwg
MSwKICAgICAgW0RlZmluZSBpZiA8aW50dHlwZXMuaD4gZXhpc3RzIGFuZCBkZWZpbmVzIHVudXNh
YmxlIFBSSSogbWFjcm9zLl0pCiAgZmkKXSkKCiMgaW50dHlwZXNfaC5tNCBzZXJpYWwgNgpkbmwg
Q29weXJpZ2h0IChDKSAxOTk3LTIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRu
bCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0
ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMg
bm90aWNlIGlzIHByZXNlcnZlZC4KCmRubCBGcm9tIFBhdWwgRWdnZXJ0LgoKIyBEZWZpbmUgSEFW
RV9JTlRUWVBFU19IX1dJVEhfVUlOVE1BWCBpZiA8aW50dHlwZXMuaD4gZXhpc3RzLAojIGRvZXNu
J3QgY2xhc2ggd2l0aCA8c3lzL3R5cGVzLmg+LCBhbmQgZGVjbGFyZXMgdWludG1heF90LgoKQUNf
REVGVU4oW2dsX0FDX0hFQURFUl9JTlRUWVBFU19IXSwKWwogIEFDX0NBQ0hFX0NIRUNLKFtmb3Ig
aW50dHlwZXMuaF0sIGdsX2N2X2hlYWRlcl9pbnR0eXBlc19oLAogIFtBQ19UUllfQ09NUElMRSgK
ICAgIFsjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiNpbmNsdWRlIDxpbnR0eXBlcy5oPl0sCiAgICBb
dWludG1heF90IGkgPSAodWludG1heF90KSAtMTtdLAogICAgZ2xfY3ZfaGVhZGVyX2ludHR5cGVz
X2g9eWVzLAogICAgZ2xfY3ZfaGVhZGVyX2ludHR5cGVzX2g9bm8pXSkKICBpZiB0ZXN0ICRnbF9j
dl9oZWFkZXJfaW50dHlwZXNfaCA9IHllczsgdGhlbgogICAgQUNfREVGSU5FX1VOUVVPVEVEKEhB
VkVfSU5UVFlQRVNfSF9XSVRIX1VJTlRNQVgsIDEsCiAgICAgIFtEZWZpbmUgaWYgPGludHR5cGVz
Lmg+IGV4aXN0cywgZG9lc24ndCBjbGFzaCB3aXRoIDxzeXMvdHlwZXMuaD4sCiAgICAgICBhbmQg
ZGVjbGFyZXMgdWludG1heF90LiBdKQogIGZpCl0pCgojIGxjbWVzc2FnZS5tNCBzZXJpYWwgNCAo
Z2V0dGV4dC0wLjE0LjIpCmRubCBDb3B5cmlnaHQgKEMpIDE5OTUtMjAwMiwgMjAwNC0yMDA1IEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdh
cmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVzIHVubGltaXRlZCBwZXJt
aXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCmRubApk
bmwgVGhpcyBmaWxlIGNhbiBjYW4gYmUgdXNlZCBpbiBwcm9qZWN0cyB3aGljaCBhcmUgbm90IGF2
YWlsYWJsZSB1bmRlcgpkbmwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIG9yIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpkbmwgTGljZW5zZSBidXQgd2hpY2ggc3RpbGwgd2Fu
dCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoZSBHTlUgZ2V0dGV4dApkbmwgZnVuY3Rpb25hbGl0
eS4KZG5sIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9mIHRoZSBHTlUgZ2V0dGV4
dCBsaWJyYXJ5IGlzIGNvdmVyZWQKZG5sIGJ5IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlLCBhbmQgdGhlIHJlc3Qgb2YgdGhlIEdOVQpkbmwgZ2V0dGV4dCBwYWNrYWdlIHBh
Y2thZ2UgaXMgY292ZXJlZCBieSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuCmRubCBU
aGV5IGFyZSAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KCmRubCBBdXRob3JzOgpkbmwgICBV
bHJpY2ggRHJlcHBlciA8ZHJlcHBlckBjeWdudXMuY29tPiwgMTk5NS4KCiMgQ2hlY2sgd2hldGhl
ciBMQ19NRVNTQUdFUyBpcyBhdmFpbGFibGUgaW4gPGxvY2FsZS5oPi4KCkFDX0RFRlVOKFtndF9M
Q19NRVNTQUdFU10sClsKICBBQ19DQUNIRV9DSEVDSyhbZm9yIExDX01FU1NBR0VTXSwgZ3RfY3Zf
dmFsX0xDX01FU1NBR0VTLAogICAgW0FDX1RSWV9MSU5LKFsjaW5jbHVkZSA8bG9jYWxlLmg+XSwg
W3JldHVybiBMQ19NRVNTQUdFU10sCiAgICAgICBndF9jdl92YWxfTENfTUVTU0FHRVM9eWVzLCBn
dF9jdl92YWxfTENfTUVTU0FHRVM9bm8pXSkKICBpZiB0ZXN0ICRndF9jdl92YWxfTENfTUVTU0FH
RVMgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShIQVZFX0xDX01FU1NBR0VTLCAxLAogICAgICBb
RGVmaW5lIGlmIHlvdXIgPGxvY2FsZS5oPiBmaWxlIGRlZmluZXMgTENfTUVTU0FHRVMuXSkKICBm
aQpdKQoKIyBsaWItbGQubTQgc2VyaWFsIDMgKGdldHRleHQtMC4xMykKZG5sIENvcHlyaWdodCAo
QykgMTk5Ni0yMDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxl
IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVz
IHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBw
cmVzZXJ2ZWQuCgpkbmwgU3Vicm91dGluZXMgb2YgbGlidG9vbC5tNCwKZG5sIHdpdGggcmVwbGFj
ZW1lbnRzIHMvQUNfL0FDX0xJQi8gYW5kIHMvbHRfY3YvYWNsX2N2LyB0byBhdm9pZCBjb2xsaXNp
b24KZG5sIHdpdGggbGlidG9vbC5tNC4KCmRubCBGcm9tIGxpYnRvb2wtMS40LiBTZXRzIHRoZSB2
YXJpYWJsZSB3aXRoX2dudV9sZCB0byB5ZXMgb3Igbm8uCkFDX0RFRlVOKFtBQ19MSUJfUFJPR19M
RF9HTlVdLApbQUNfQ0FDSEVfQ0hFQ0soW2lmIHRoZSBsaW5rZXIgKCRMRCkgaXMgR05VIGxkXSwg
YWNsX2N2X3Byb2dfZ251X2xkLApbIyBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24gaGVyZSwgYnV0
IGFwcGFyZW50bHkgc29tZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KY2FzZSBgJExEIC12IDI+
JjEgPC9kZXYvbnVsbGAgaW4KKkdOVSogfCAqJ3dpdGggQkZEJyopCiAgYWNsX2N2X3Byb2dfZ251
X2xkPXllcyA7OwoqKQogIGFjbF9jdl9wcm9nX2dudV9sZD1ubyA7Owplc2FjXSkKd2l0aF9nbnVf
bGQ9JGFjbF9jdl9wcm9nX2dudV9sZApdKQoKZG5sIEZyb20gbGlidG9vbC0xLjQuIFNldHMgdGhl
IHZhcmlhYmxlIExELgpBQ19ERUZVTihbQUNfTElCX1BST0dfTERdLApbQUNfQVJHX1dJVEgoZ251
LWxkLApbICAtLXdpdGgtZ251LWxkICAgICAgICAgICBhc3N1bWUgdGhlIEMgY29tcGlsZXIgdXNl
cyBHTlUgbGQgW2RlZmF1bHQ9bm9dXSwKdGVzdCAiJHdpdGh2YWwiID0gbm8gfHwgd2l0aF9nbnVf
bGQ9eWVzLCB3aXRoX2dudV9sZD1ubykKQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pZG5sCkFDX1JF
UVVJUkUoW0FDX0NBTk9OSUNBTF9IT1NUXSlkbmwKIyBQcmVwYXJlIFBBVEhfU0VQQVJBVE9SLgoj
IFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KaWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9
IiAhPSBzZXQ7IHRoZW4KICBlY2hvICIjISAvYmluL3NoIiA+Y29uZiQkLnNoCiAgZWNobyAgImV4
aXQgMCIgICA+PmNvbmYkJC5zaAogIGNobW9kICt4IGNvbmYkJC5zaAogIGlmIChQQVRIPSIvbm9u
ZXhpc3RlbnQ7LiI7IGNvbmYkJC5zaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgICBQQVRIX1NF
UEFSQVRPUj0nOycKICBlbHNlCiAgICBQQVRIX1NFUEFSQVRPUj06CiAgZmkKICBybSAtZiBjb25m
JCQuc2gKZmkKYWNfcHJvZz1sZAppZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICMgQ2hlY2sg
aWYgZ2NjIC1wcmludC1wcm9nLW5hbWU9bGQgZ2l2ZXMgYSBwYXRoLgogIEFDX01TR19DSEVDS0lO
RyhbZm9yIGxkIHVzZWQgYnkgR0NDXSkKICBjYXNlICRob3N0IGluCiAgKi0qLW1pbmd3KikKICAg
ICMgZ2NjIGxlYXZlcyBhIHRyYWlsaW5nIGNhcnJpYWdlIHJldHVybiB3aGljaCB1cHNldHMgbWlu
Z3cKICAgIGFjX3Byb2c9YCgkQ0MgLXByaW50LXByb2ctbmFtZT1sZCkgMj4mNSB8IHRyIC1kICdc
MDE1J2AgOzsKICAqKQogICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQtcHJvZy1uYW1lPWxkKSAyPiY1
YCA7OwogIGVzYWMKICBjYXNlICRhY19wcm9nIGluCiAgICAjIEFjY2VwdCBhYnNvbHV0ZSBwYXRo
cy4KICAgIFtbXFwvXSogfCBbQS1aYS16XTpbXFwvXSopXQogICAgICBbcmVfZGlyZWx0PScvW14v
XVteL10qL1wuXC4vJ10KICAgICAgIyBDYW5vbmljYWxpemUgdGhlIHBhdGggb2YgbGQKICAgICAg
YWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgc2VkICdzJVxcXFwlLyVnJ2AKICAgICAgd2hpbGUgZWNo
byAkYWNfcHJvZyB8IGdyZXAgIiRyZV9kaXJlbHQiID4gL2Rldi9udWxsIDI+JjE7IGRvCglhY19w
cm9nPWBlY2hvICRhY19wcm9nfCBzZWQgInMlJHJlX2RpcmVsdCUvJSJgCiAgICAgIGRvbmUKICAg
ICAgdGVzdCAteiAiJExEIiAmJiBMRD0iJGFjX3Byb2ciCiAgICAgIDs7CiAgIiIpCiAgICAjIElm
IGl0IGZhaWxzLCB0aGVuIHByZXRlbmQgd2UgYXJlbid0IHVzaW5nIEdDQy4KICAgIGFjX3Byb2c9
bGQKICAgIDs7CiAgKikKICAgICMgSWYgaXQgaXMgcmVsYXRpdmUsIHRoZW4gc2VhcmNoIGZvciB0
aGUgZmlyc3QgbGQgaW4gUEFUSC4KICAgIHdpdGhfZ251X2xkPXVua25vd24KICAgIDs7CiAgZXNh
YwplbGlmIHRlc3QgIiR3aXRoX2dudV9sZCIgPSB5ZXM7IHRoZW4KICBBQ19NU0dfQ0hFQ0tJTkco
W2ZvciBHTlUgbGRdKQplbHNlCiAgQUNfTVNHX0NIRUNLSU5HKFtmb3Igbm9uLUdOVSBsZF0pCmZp
CkFDX0NBQ0hFX1ZBTChhY2xfY3ZfcGF0aF9MRCwKW2lmIHRlc3QgLXogIiRMRCI7IHRoZW4KICBJ
RlM9IiR7SUZTPSAJfSI7IGFjX3NhdmVfaWZzPSIkSUZTIjsgSUZTPSIke0lGU30ke1BBVEhfU0VQ
QVJBVE9SLTp9IgogIGZvciBhY19kaXIgaW4gJFBBVEg7IGRvCiAgICB0ZXN0IC16ICIkYWNfZGly
IiAmJiBhY19kaXI9LgogICAgaWYgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyIgfHwgdGVzdCAt
ZiAiJGFjX2Rpci8kYWNfcHJvZyRhY19leGVleHQiOyB0aGVuCiAgICAgIGFjbF9jdl9wYXRoX0xE
PSIkYWNfZGlyLyRhY19wcm9nIgogICAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgcHJvZ3JhbSBp
cyBHTlUgbGQuICBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24sCiAgICAgICMgYnV0IGFwcGFyZW50
bHkgc29tZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KICAgICAgIyBCcmVhayBvbmx5IGlmIGl0
IHdhcyB0aGUgR05VL25vbi1HTlUgbGQgdGhhdCB3ZSBwcmVmZXIuCiAgICAgIGNhc2UgYCIkYWNs
X2N2X3BhdGhfTEQiIC12IDI+JjEgPCAvZGV2L251bGxgIGluCiAgICAgICpHTlUqIHwgKid3aXRo
IEJGRCcqKQoJdGVzdCAiJHdpdGhfZ251X2xkIiAhPSBubyAmJiBicmVhayA7OwogICAgICAqKQoJ
dGVzdCAiJHdpdGhfZ251X2xkIiAhPSB5ZXMgJiYgYnJlYWsgOzsKICAgICAgZXNhYwogICAgZmkK
ICBkb25lCiAgSUZTPSIkYWNfc2F2ZV9pZnMiCmVsc2UKICBhY2xfY3ZfcGF0aF9MRD0iJExEIiAj
IExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KZmldKQpMRD0iJGFj
bF9jdl9wYXRoX0xEIgppZiB0ZXN0IC1uICIkTEQiOyB0aGVuCiAgQUNfTVNHX1JFU1VMVCgkTEQp
CmVsc2UKICBBQ19NU0dfUkVTVUxUKG5vKQpmaQp0ZXN0IC16ICIkTEQiICYmIEFDX01TR19FUlJP
Uihbbm8gYWNjZXB0YWJsZSBsZCBmb3VuZCBpbiBcJFBBVEhdKQpBQ19MSUJfUFJPR19MRF9HTlUK
XSkKCiMgbGliLWxpbmsubTQgc2VyaWFsIDggKGdldHRleHQtMC4xNSkKZG5sIENvcHlyaWdodCAo
QykgMjAwMS0yMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxl
IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVz
IHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBw
cmVzZXJ2ZWQuCgpkbmwgRnJvbSBCcnVubyBIYWlibGUuCgpBQ19QUkVSRVEoMi41MCkKCmRubCBB
Q19MSUJfTElOS0ZMQUdTKG5hbWUgWywgZGVwZW5kZW5jaWVzXSkgc2VhcmNoZXMgZm9yIGxpYm5h
bWUgYW5kCmRubCB0aGUgbGlicmFyaWVzIGNvcnJlc3BvbmRpbmcgdG8gZXhwbGljaXQgYW5kIGlt
cGxpY2l0IGRlcGVuZGVuY2llcy4KZG5sIFNldHMgYW5kIEFDX1NVQlNUcyB0aGUgTElCJHtOQU1F
fSBhbmQgTFRMSUIke05BTUV9IHZhcmlhYmxlcyBhbmQKZG5sIGF1Z21lbnRzIHRoZSBDUFBGTEFH
UyB2YXJpYWJsZS4KQUNfREVGVU4oW0FDX0xJQl9MSU5LRkxBR1NdLApbCiAgQUNfUkVRVUlSRShb
QUNfTElCX1BSRVBBUkVfUFJFRklYXSkKICBBQ19SRVFVSVJFKFtBQ19MSUJfUlBBVEhdKQogIGRl
ZmluZShbTmFtZV0sW3RyYW5zbGl0KFskMV0sWy4vLV0sIFtfX19dKV0pCiAgZGVmaW5lKFtOQU1F
XSxbdHJhbnNsaXQoWyQxXSxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXouLy1dLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgW0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaX19fXSld
KQogIEFDX0NBQ0hFX0NIRUNLKFtob3cgdG8gbGluayB3aXRoIGxpYltdJDFdLCBbYWNfY3ZfbGli
W11OYW1lW11fbGlic10sIFsKICAgIEFDX0xJQl9MSU5LRkxBR1NfQk9EWShbJDFdLCBbJDJdKQog
ICAgYWNfY3ZfbGliW11OYW1lW11fbGlicz0iJExJQltdTkFNRSIKICAgIGFjX2N2X2xpYltdTmFt
ZVtdX2x0bGlicz0iJExUTElCW11OQU1FIgogICAgYWNfY3ZfbGliW11OYW1lW11fY3BwZmxhZ3M9
IiRJTkNbXU5BTUUiCiAgXSkKICBMSUJbXU5BTUU9IiRhY19jdl9saWJbXU5hbWVbXV9saWJzIgog
IExUTElCW11OQU1FPSIkYWNfY3ZfbGliW11OYW1lW11fbHRsaWJzIgogIElOQ1tdTkFNRT0iJGFj
X2N2X2xpYltdTmFtZVtdX2NwcGZsYWdzIgogIEFDX0xJQl9BUFBFTkRUT1ZBUihbQ1BQRkxBR1Nd
LCBbJElOQ11OQU1FKQogIEFDX1NVQlNUKFtMSUJdTkFNRSkKICBBQ19TVUJTVChbTFRMSUJdTkFN
RSkKICBkbmwgQWxzbyBzZXQgSEFWRV9MSUJbXU5BTUUgc28gdGhhdCBBQ19MSUJfSEFWRV9MSU5L
RkxBR1MgY2FuIHJldXNlIHRoZQogIGRubCByZXN1bHRzIG9mIHRoaXMgc2VhcmNoIHdoZW4gdGhp
cyBsaWJyYXJ5IGFwcGVhcnMgYXMgYSBkZXBlbmRlbmN5LgogIEhBVkVfTElCW11OQU1FPXllcwog
IHVuZGVmaW5lKFtOYW1lXSkKICB1bmRlZmluZShbTkFNRV0pCl0pCgpkbmwgQUNfTElCX0hBVkVf
TElOS0ZMQUdTKG5hbWUsIGRlcGVuZGVuY2llcywgaW5jbHVkZXMsIHRlc3Rjb2RlKQpkbmwgc2Vh
cmNoZXMgZm9yIGxpYm5hbWUgYW5kIHRoZSBsaWJyYXJpZXMgY29ycmVzcG9uZGluZyB0byBleHBs
aWNpdCBhbmQKZG5sIGltcGxpY2l0IGRlcGVuZGVuY2llcywgdG9nZXRoZXIgd2l0aCB0aGUgc3Bl
Y2lmaWVkIGluY2x1ZGUgZmlsZXMgYW5kCmRubCB0aGUgYWJpbGl0eSB0byBjb21waWxlIGFuZCBs
aW5rIHRoZSBzcGVjaWZpZWQgdGVzdGNvZGUuIElmIGZvdW5kLCBpdApkbmwgc2V0cyBhbmQgQUNf
U1VCU1RzIEhBVkVfTElCJHtOQU1FfT15ZXMgYW5kIHRoZSBMSUIke05BTUV9IGFuZApkbmwgTFRM
SUIke05BTUV9IHZhcmlhYmxlcyBhbmQgYXVnbWVudHMgdGhlIENQUEZMQUdTIHZhcmlhYmxlLCBh
bmQKZG5sICNkZWZpbmVzIEhBVkVfTElCJHtOQU1FfSB0byAxLiBPdGhlcndpc2UsIGl0IHNldHMg
YW5kIEFDX1NVQlNUcwpkbmwgSEFWRV9MSUIke05BTUV9PW5vIGFuZCBMSUIke05BTUV9IGFuZCBM
VExJQiR7TkFNRX0gdG8gZW1wdHkuCkFDX0RFRlVOKFtBQ19MSUJfSEFWRV9MSU5LRkxBR1NdLApb
CiAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfUFJFRklYXSkKICBBQ19SRVFVSVJFKFtBQ19M
SUJfUlBBVEhdKQogIGRlZmluZShbTmFtZV0sW3RyYW5zbGl0KFskMV0sWy4vLV0sIFtfX19dKV0p
CiAgZGVmaW5lKFtOQU1FXSxbdHJhbnNsaXQoWyQxXSxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4
eXouLy1dLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FCQ0RFRkdISUpLTE1OT1BR
UlNUVVZXWFlaX19fXSldKQoKICBkbmwgU2VhcmNoIGZvciBsaWJbXU5hbWUgYW5kIGRlZmluZSBM
SUJbXU5BTUUsIExUTElCW11OQU1FIGFuZCBJTkNbXU5BTUUKICBkbmwgYWNjb3JkaW5nbHkuCiAg
QUNfTElCX0xJTktGTEFHU19CT0RZKFskMV0sIFskMl0pCgogIGRubCBBZGQgJElOQ1tdTkFNRSB0
byBDUFBGTEFHUyBiZWZvcmUgcGVyZm9ybWluZyB0aGUgZm9sbG93aW5nIGNoZWNrcywKICBkbmwg
YmVjYXVzZSBpZiB0aGUgdXNlciBoYXMgaW5zdGFsbGVkIGxpYltdTmFtZSBhbmQgbm90IGRpc2Fi
bGVkIGl0cyB1c2UKICBkbmwgdmlhIC0td2l0aG91dC1saWJbXU5hbWUtcHJlZml4LCBoZSB3YW50
cyB0byB1c2UgaXQuCiAgYWNfc2F2ZV9DUFBGTEFHUz0iJENQUEZMQUdTIgogIEFDX0xJQl9BUFBF
TkRUT1ZBUihbQ1BQRkxBR1NdLCBbJElOQ11OQU1FKQoKICBBQ19DQUNIRV9DSEVDSyhbZm9yIGxp
YltdJDFdLCBbYWNfY3ZfbGliW11OYW1lXSwgWwogICAgYWNfc2F2ZV9MSUJTPSIkTElCUyIKICAg
IExJQlM9IiRMSUJTICRMSUJbXU5BTUUiCiAgICBBQ19UUllfTElOSyhbJDNdLCBbJDRdLCBbYWNf
Y3ZfbGliW11OYW1lPXllc10sIFthY19jdl9saWJbXU5hbWU9bm9dKQogICAgTElCUz0iJGFjX3Nh
dmVfTElCUyIKICBdKQogIGlmIHRlc3QgIiRhY19jdl9saWJbXU5hbWUiID0geWVzOyB0aGVuCiAg
ICBIQVZFX0xJQltdTkFNRT15ZXMKICAgIEFDX0RFRklORShbSEFWRV9MSUJdTkFNRSwgMSwgW0Rl
ZmluZSBpZiB5b3UgaGF2ZSB0aGUgJDEgbGlicmFyeS5dKQogICAgQUNfTVNHX0NIRUNLSU5HKFto
b3cgdG8gbGluayB3aXRoIGxpYltdJDFdKQogICAgQUNfTVNHX1JFU1VMVChbJExJQltdTkFNRV0p
CiAgZWxzZQogICAgSEFWRV9MSUJbXU5BTUU9bm8KICAgIGRubCBJZiAkTElCW11OQU1FIGRpZG4n
dCBsZWFkIHRvIGEgdXNhYmxlIGxpYnJhcnksIHdlIGRvbid0IG5lZWQKICAgIGRubCAkSU5DW11O
QU1FIGVpdGhlci4KICAgIENQUEZMQUdTPSIkYWNfc2F2ZV9DUFBGTEFHUyIKICAgIExJQltdTkFN
RT0KICAgIExUTElCW11OQU1FPQogIGZpCiAgQUNfU1VCU1QoW0hBVkVfTElCXU5BTUUpCiAgQUNf
U1VCU1QoW0xJQl1OQU1FKQogIEFDX1NVQlNUKFtMVExJQl1OQU1FKQogIHVuZGVmaW5lKFtOYW1l
XSkKICB1bmRlZmluZShbTkFNRV0pCl0pCgpkbmwgRGV0ZXJtaW5lIHRoZSBwbGF0Zm9ybSBkZXBl
bmRlbnQgcGFyYW1ldGVycyBuZWVkZWQgdG8gdXNlIHJwYXRoOgpkbmwgbGliZXh0LCBzaGxpYmV4
dCwgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwK
ZG5sIGhhcmRjb2RlX2RpcmVjdCwgaGFyZGNvZGVfbWludXNfTC4KQUNfREVGVU4oW0FDX0xJQl9S
UEFUSF0sClsKICBkbmwgVGVsbCBhdXRvbWFrZSA+PSAxLjEwIHRvIGNvbXBsYWluIGlmIGNvbmZp
Zy5ycGF0aCBpcyBtaXNzaW5nLgogIG00X2lmZGVmKFtBQ19SRVFVSVJFX0FVWF9GSUxFXSwgW0FD
X1JFUVVJUkVfQVVYX0ZJTEUoW2NvbmZpZy5ycGF0aF0pXSkKICBBQ19SRVFVSVJFKFtBQ19QUk9H
X0NDXSkgICAgICAgICAgICAgICAgZG5sIHdlIHVzZSAkQ0MsICRHQ0MsICRMREZMQUdTCiAgQUNf
UkVRVUlSRShbQUNfTElCX1BST0dfTERdKSAgICAgICAgICAgIGRubCB3ZSB1c2UgJExELCAkd2l0
aF9nbnVfbGQKICBBQ19SRVFVSVJFKFtBQ19DQU5PTklDQUxfSE9TVF0pICAgICAgICAgZG5sIHdl
IHVzZSAkaG9zdAogIEFDX1JFUVVJUkUoW0FDX0NPTkZJR19BVVhfRElSX0RFRkFVTFRdKSBkbmwg
d2UgdXNlICRhY19hdXhfZGlyCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBzaGFyZWQgbGlicmFyeSBy
dW4gcGF0aCBvcmlnaW5dLCBhY2xfY3ZfcnBhdGgsIFsKICAgIENDPSIkQ0MiIEdDQz0iJEdDQyIg
TERGTEFHUz0iJExERkxBR1MiIExEPSIkTEQiIHdpdGhfZ251X2xkPSIkd2l0aF9nbnVfbGQiIFwK
ICAgICR7Q09ORklHX1NIRUxMLS9iaW4vc2h9ICIkYWNfYXV4X2Rpci9jb25maWcucnBhdGgiICIk
aG9zdCIgPiBjb25mdGVzdC5zaAogICAgLiAuL2NvbmZ0ZXN0LnNoCiAgICBybSAtZiAuL2NvbmZ0
ZXN0LnNoCiAgICBhY2xfY3ZfcnBhdGg9ZG9uZQogIF0pCiAgd2w9IiRhY2xfY3Zfd2wiCiAgbGli
ZXh0PSIkYWNsX2N2X2xpYmV4dCIKICBzaGxpYmV4dD0iJGFjbF9jdl9zaGxpYmV4dCIKICBoYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjPSIkYWNsX2N2X2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMi
CiAgaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcj0iJGFjbF9jdl9oYXJkY29kZV9saWJkaXJfc2Vw
YXJhdG9yIgogIGhhcmRjb2RlX2RpcmVjdD0iJGFjbF9jdl9oYXJkY29kZV9kaXJlY3QiCiAgaGFy
ZGNvZGVfbWludXNfTD0iJGFjbF9jdl9oYXJkY29kZV9taW51c19MIgogIGRubCBEZXRlcm1pbmUg
d2hldGhlciB0aGUgdXNlciB3YW50cyBycGF0aCBoYW5kbGluZyBhdCBhbGwuCiAgQUNfQVJHX0VO
QUJMRShycGF0aCwKICAgIFsgIC0tZGlzYWJsZS1ycGF0aCAgICAgICAgIGRvIG5vdCBoYXJkY29k
ZSBydW50aW1lIGxpYnJhcnkgcGF0aHNdLAogICAgOiwgZW5hYmxlX3JwYXRoPXllcykKXSkKCmRu
bCBBQ19MSUJfTElOS0ZMQUdTX0JPRFkobmFtZSBbLCBkZXBlbmRlbmNpZXNdKSBzZWFyY2hlcyBm
b3IgbGlibmFtZSBhbmQKZG5sIHRoZSBsaWJyYXJpZXMgY29ycmVzcG9uZGluZyB0byBleHBsaWNp
dCBhbmQgaW1wbGljaXQgZGVwZW5kZW5jaWVzLgpkbmwgU2V0cyB0aGUgTElCJHtOQU1FfSwgTFRM
SUIke05BTUV9IGFuZCBJTkMke05BTUV9IHZhcmlhYmxlcy4KQUNfREVGVU4oW0FDX0xJQl9MSU5L
RkxBR1NfQk9EWV0sClsKICBBQ19SRVFVSVJFKFtBQ19MSUJfUFJFUEFSRV9NVUxUSUxJQl0pCiAg
ZGVmaW5lKFtOQU1FXSxbdHJhbnNsaXQoWyQxXSxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXou
Ly1dLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FCQ0RFRkdISUpLTE1OT1BRUlNU
VVZXWFlaX19fXSldKQogIGRubCBCeSBkZWZhdWx0LCBsb29rIGluICRpbmNsdWRlZGlyIGFuZCAk
bGliZGlyLgogIHVzZV9hZGRpdGlvbmFsPXllcwogIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChb
CiAgICBldmFsIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj1cIiRpbmNsdWRlZGlyXCIKICAgIGV2YWwg
YWRkaXRpb25hbF9saWJkaXI9XCIkbGliZGlyXCIKICBdKQogIEFDX0xJQl9BUkdfV0lUSChbbGli
JDEtcHJlZml4XSwKWyAgLS13aXRoLWxpYiQxLXByZWZpeFs9RElSXSAgc2VhcmNoIGZvciBsaWIk
MSBpbiBESVIvaW5jbHVkZSBhbmQgRElSL2xpYgogIC0td2l0aG91dC1saWIkMS1wcmVmaXggICAg
IGRvbid0IHNlYXJjaCBmb3IgbGliJDEgaW4gaW5jbHVkZWRpciBhbmQgbGliZGlyXSwKWwogICAg
aWYgdGVzdCAiWCR3aXRodmFsIiA9ICJYbm8iOyB0aGVuCiAgICAgIHVzZV9hZGRpdGlvbmFsPW5v
CiAgICBlbHNlCiAgICAgIGlmIHRlc3QgIlgkd2l0aHZhbCIgPSAiWCI7IHRoZW4KICAgICAgICBB
Q19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoWwogICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1
ZGVkaXI9XCIkaW5jbHVkZWRpclwiCiAgICAgICAgICBldmFsIGFkZGl0aW9uYWxfbGliZGlyPVwi
JGxpYmRpclwiCiAgICAgICAgXSkKICAgICAgZWxzZQogICAgICAgIGFkZGl0aW9uYWxfaW5jbHVk
ZWRpcj0iJHdpdGh2YWwvaW5jbHVkZSIKICAgICAgICBhZGRpdGlvbmFsX2xpYmRpcj0iJHdpdGh2
YWwvJGFjbF9saWJkaXJzdGVtIgogICAgICBmaQogICAgZmkKXSkKICBkbmwgU2VhcmNoIHRoZSBs
aWJyYXJ5IGFuZCBpdHMgZGVwZW5kZW5jaWVzIGluICRhZGRpdGlvbmFsX2xpYmRpciBhbmQKICBk
bmwgJExERkxBR1MuIFVzaW5nIGJyZWFkdGgtZmlyc3Qtc2VhY2guCiAgTElCW11OQU1FPQogIExU
TElCW11OQU1FPQogIElOQ1tdTkFNRT0KICBycGF0aGRpcnM9CiAgbHRycGF0aGRpcnM9CiAgbmFt
ZXNfYWxyZWFkeV9oYW5kbGVkPQogIG5hbWVzX25leHRfcm91bmQ9JyQxICQyJwogIHdoaWxlIHRl
c3QgLW4gIiRuYW1lc19uZXh0X3JvdW5kIjsgZG8KICAgIG5hbWVzX3RoaXNfcm91bmQ9IiRuYW1l
c19uZXh0X3JvdW5kIgogICAgbmFtZXNfbmV4dF9yb3VuZD0KICAgIGZvciBuYW1lIGluICRuYW1l
c190aGlzX3JvdW5kOyBkbwogICAgICBhbHJlYWR5X2hhbmRsZWQ9CiAgICAgIGZvciBuIGluICRu
YW1lc19hbHJlYWR5X2hhbmRsZWQ7IGRvCiAgICAgICAgaWYgdGVzdCAiJG4iID0gIiRuYW1lIjsg
dGhlbgogICAgICAgICAgYWxyZWFkeV9oYW5kbGVkPXllcwogICAgICAgICAgYnJlYWsKICAgICAg
ICBmaQogICAgICBkb25lCiAgICAgIGlmIHRlc3QgLXogIiRhbHJlYWR5X2hhbmRsZWQiOyB0aGVu
CiAgICAgICAgbmFtZXNfYWxyZWFkeV9oYW5kbGVkPSIkbmFtZXNfYWxyZWFkeV9oYW5kbGVkICRu
YW1lIgogICAgICAgIGRubCBTZWUgaWYgaXQgd2FzIGFscmVhZHkgbG9jYXRlZCBieSBhbiBlYXJs
aWVyIEFDX0xJQl9MSU5LRkxBR1MKICAgICAgICBkbmwgb3IgQUNfTElCX0hBVkVfTElOS0ZMQUdT
IGNhbGwuCiAgICAgICAgdXBwZXJuYW1lPWBlY2hvICIkbmFtZSIgfCBzZWQgLWUgJ3l8YWJjZGVm
Z2hpamtsbW5vcHFyc3R1dnd4eXouLy18QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpfX198J2AK
ICAgICAgICBldmFsIHZhbHVlPVwiXCRIQVZFX0xJQiR1cHBlcm5hbWVcIgogICAgICAgIGlmIHRl
c3QgLW4gIiR2YWx1ZSI7IHRoZW4KICAgICAgICAgIGlmIHRlc3QgIiR2YWx1ZSIgPSB5ZXM7IHRo
ZW4KICAgICAgICAgICAgZXZhbCB2YWx1ZT1cIlwkTElCJHVwcGVybmFtZVwiCiAgICAgICAgICAg
IHRlc3QgLXogIiR2YWx1ZSIgfHwgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTor
IH0kdmFsdWUiCiAgICAgICAgICAgIGV2YWwgdmFsdWU9XCJcJExUTElCJHVwcGVybmFtZVwiCiAg
ICAgICAgICAgIHRlc3QgLXogIiR2YWx1ZSIgfHwgTFRMSUJbXU5BTUU9IiR7TFRMSUJbXU5BTUV9
JHtMVExJQltdTkFNRTorIH0kdmFsdWUiCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGRubCBB
biBlYXJsaWVyIGNhbGwgdG8gQUNfTElCX0hBVkVfTElOS0ZMQUdTIGhhcyBkZXRlcm1pbmVkCiAg
ICAgICAgICAgIGRubCB0aGF0IHRoaXMgbGlicmFyeSBkb2Vzbid0IGV4aXN0LiBTbyBqdXN0IGRy
b3AgaXQuCiAgICAgICAgICAgIDoKICAgICAgICAgIGZpCiAgICAgICAgZWxzZQogICAgICAgICAg
ZG5sIFNlYXJjaCB0aGUgbGlicmFyeSBsaWIkbmFtZSBpbiAkYWRkaXRpb25hbF9saWJkaXIgYW5k
ICRMREZMQUdTCiAgICAgICAgICBkbmwgYW5kIHRoZSBhbHJlYWR5IGNvbnN0cnVjdGVkICRMSUJO
QU1FLyRMVExJQk5BTUUuCiAgICAgICAgICBmb3VuZF9kaXI9CiAgICAgICAgICBmb3VuZF9sYT0K
ICAgICAgICAgIGZvdW5kX3NvPQogICAgICAgICAgZm91bmRfYT0KICAgICAgICAgIGlmIHRlc3Qg
JHVzZV9hZGRpdGlvbmFsID0geWVzOyB0aGVuCiAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRzaGxp
YmV4dCIgJiYgdGVzdCAtZiAiJGFkZGl0aW9uYWxfbGliZGlyL2xpYiRuYW1lLiRzaGxpYmV4dCI7
IHRoZW4KICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRhZGRpdGlvbmFsX2xpYmRpciIKICAgICAg
ICAgICAgICBmb3VuZF9zbz0iJGFkZGl0aW9uYWxfbGliZGlyL2xpYiRuYW1lLiRzaGxpYmV4dCIK
ICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkYWRkaXRpb25hbF9saWJkaXIvbGliJG5hbWUubGEi
OyB0aGVuCiAgICAgICAgICAgICAgICBmb3VuZF9sYT0iJGFkZGl0aW9uYWxfbGliZGlyL2xpYiRu
YW1lLmxhIgogICAgICAgICAgICAgIGZpCiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICBp
ZiB0ZXN0IC1mICIkYWRkaXRpb25hbF9saWJkaXIvbGliJG5hbWUuJGxpYmV4dCI7IHRoZW4KICAg
ICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGFkZGl0aW9uYWxfbGliZGlyIgogICAgICAgICAgICAg
ICAgZm91bmRfYT0iJGFkZGl0aW9uYWxfbGliZGlyL2xpYiRuYW1lLiRsaWJleHQiCiAgICAgICAg
ICAgICAgICBpZiB0ZXN0IC1mICIkYWRkaXRpb25hbF9saWJkaXIvbGliJG5hbWUubGEiOyB0aGVu
CiAgICAgICAgICAgICAgICAgIGZvdW5kX2xhPSIkYWRkaXRpb25hbF9saWJkaXIvbGliJG5hbWUu
bGEiCiAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgIGZpCiAgICAgICAgICAgIGZpCiAg
ICAgICAgICBmaQogICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgiOyB0aGVuCiAg
ICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMVExJQltdTkFNRTsgZG8KICAgICAgICAgICAg
ICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoW2V2YWwgeD1cIiR4XCJdKQogICAgICAgICAgICAg
IGNhc2UgIiR4IiBpbgogICAgICAgICAgICAgICAgLUwqKQogICAgICAgICAgICAgICAgICBkaXI9
YGVjaG8gIlgkeCIgfCBzZWQgLWUgJ3MvXlgtTC8vJ2AKICAgICAgICAgICAgICAgICAgaWYgdGVz
dCAtbiAiJHNobGliZXh0IiAmJiB0ZXN0IC1mICIkZGlyL2xpYiRuYW1lLiRzaGxpYmV4dCI7IHRo
ZW4KICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCiAgICAgICAgICAgICAgICAg
ICAgZm91bmRfc289IiRkaXIvbGliJG5hbWUuJHNobGliZXh0IgogICAgICAgICAgICAgICAgICAg
IGlmIHRlc3QgLWYgIiRkaXIvbGliJG5hbWUubGEiOyB0aGVuCiAgICAgICAgICAgICAgICAgICAg
ICBmb3VuZF9sYT0iJGRpci9saWIkbmFtZS5sYSIKICAgICAgICAgICAgICAgICAgICBmaQogICAg
ICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci9s
aWIkbmFtZS4kbGliZXh0IjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIk
ZGlyIgogICAgICAgICAgICAgICAgICAgICAgZm91bmRfYT0iJGRpci9saWIkbmFtZS4kbGliZXh0
IgogICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci9saWIkbmFtZS5sYSI7IHRo
ZW4KICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfbGE9IiRkaXIvbGliJG5hbWUubGEiCiAg
ICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAg
ICAgICAgIGZpCiAgICAgICAgICAgICAgICAgIDs7CiAgICAgICAgICAgICAgZXNhYwogICAgICAg
ICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiAhPSAiWCI7IHRoZW4KICAgICAgICAgICAgICAg
IGJyZWFrCiAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgZG9uZQogICAgICAgICAgZmkKICAg
ICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiAhPSAiWCI7IHRoZW4KICAgICAgICAgICAgZG5s
IEZvdW5kIHRoZSBsaWJyYXJ5LgogICAgICAgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFN
RX0ke0xUTElCW11OQU1FOisgfS1MJGZvdW5kX2RpciAtbCRuYW1lIgogICAgICAgICAgICBpZiB0
ZXN0ICJYJGZvdW5kX3NvIiAhPSAiWCI7IHRoZW4KICAgICAgICAgICAgICBkbmwgTGlua2luZyB3
aXRoIGEgc2hhcmVkIGxpYnJhcnkuIFdlIGF0dGVtcHQgdG8gaGFyZGNvZGUgaXRzCiAgICAgICAg
ICAgICAgZG5sIGRpcmVjdG9yeSBpbnRvIHRoZSBleGVjdXRhYmxlJ3MgcnVucGF0aCwgdW5sZXNz
IGl0J3MgdGhlCiAgICAgICAgICAgICAgZG5sIHN0YW5kYXJkIC91c3IvbGliLgogICAgICAgICAg
ICAgIGlmIHRlc3QgIiRlbmFibGVfcnBhdGgiID0gbm8gfHwgdGVzdCAiWCRmb3VuZF9kaXIiID0g
IlgvdXNyLyRhY2xfbGliZGlyc3RlbSI7IHRoZW4KICAgICAgICAgICAgICAgIGRubCBObyBoYXJk
Y29kaW5nIGlzIG5lZWRlZC4KICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9
JHtMSUJbXU5BTUU6KyB9JGZvdW5kX3NvIgogICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAg
ICAgIGRubCBVc2UgYW4gZXhwbGljaXQgb3B0aW9uIHRvIGhhcmRjb2RlIERJUiBpbnRvIHRoZSBy
ZXN1bHRpbmcKICAgICAgICAgICAgICAgIGRubCBiaW5hcnkuCiAgICAgICAgICAgICAgICBkbmwg
UG90ZW50aWFsbHkgYWRkIERJUiB0byBsdHJwYXRoZGlycy4KICAgICAgICAgICAgICAgIGRubCBU
aGUgbHRycGF0aGRpcnMgd2lsbCBiZSBhcHBlbmRlZCB0byAkTFRMSUJOQU1FIGF0IHRoZSBlbmQu
CiAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAgICAgICAgICAgICBmb3IgeCBpbiAkbHRycGF0
aGRpcnM7IGRvCiAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWCRmb3VuZF9kaXIi
OyB0aGVuCiAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcwogICAgICAgICAgICAgICAgICAg
IGJyZWFrCiAgICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICBkb25lCiAgICAgICAg
ICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgogICAgICAgICAgICAgICAgICBsdHJw
YXRoZGlycz0iJGx0cnBhdGhkaXJzICRmb3VuZF9kaXIiCiAgICAgICAgICAgICAgICBmaQogICAg
ICAgICAgICAgICAgZG5sIFRoZSBoYXJkY29kaW5nIGludG8gJExJQk5BTUUgaXMgc3lzdGVtIGRl
cGVuZGVudC4KICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRoYXJkY29kZV9kaXJlY3QiID0geWVz
OyB0aGVuCiAgICAgICAgICAgICAgICAgIGRubCBVc2luZyBESVIvbGliTkFNRS5zbyBkdXJpbmcg
bGlua2luZyBoYXJkY29kZXMgRElSIGludG8gdGhlCiAgICAgICAgICAgICAgICAgIGRubCByZXN1
bHRpbmcgYmluYXJ5LgogICAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7
TElCW11OQU1FOisgfSRmb3VuZF9zbyIKICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAg
ICAgICAgaWYgdGVzdCAtbiAiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiICYmIHRlc3QgIiRo
YXJkY29kZV9taW51c19MIiA9IG5vOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgZG5sIFVzZSBh
biBleHBsaWNpdCBvcHRpb24gdG8gaGFyZGNvZGUgRElSIGludG8gdGhlIHJlc3VsdGluZwogICAg
ICAgICAgICAgICAgICAgIGRubCBiaW5hcnkuCiAgICAgICAgICAgICAgICAgICAgTElCW11OQU1F
PSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTorIH0kZm91bmRfc28iCiAgICAgICAgICAgICAgICAg
ICAgZG5sIFBvdGVudGlhbGx5IGFkZCBESVIgdG8gcnBhdGhkaXJzLgogICAgICAgICAgICAgICAg
ICAgIGRubCBUaGUgcnBhdGhkaXJzIHdpbGwgYmUgYXBwZW5kZWQgdG8gJExJQk5BTUUgYXQgdGhl
IGVuZC4KICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAgICAgICAgICAgICAgICAgZm9y
IHggaW4gJHJwYXRoZGlyczsgZG8KICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIg
PSAiWCRmb3VuZF9kaXIiOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMK
ICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAgICAgIGZpCiAg
ICAgICAgICAgICAgICAgICAgZG9uZQogICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRo
YXZlaXQiOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICBycGF0aGRpcnM9IiRycGF0aGRpcnMg
JGZvdW5kX2RpciIKICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICBlbHNl
CiAgICAgICAgICAgICAgICAgICAgZG5sIFJlbHkgb24gIi1MJGZvdW5kX2RpciIuCiAgICAgICAg
ICAgICAgICAgICAgZG5sIEJ1dCBkb24ndCBhZGQgaXQgaWYgaXQncyBhbHJlYWR5IGNvbnRhaW5l
ZCBpbiB0aGUgTERGTEFHUwogICAgICAgICAgICAgICAgICAgIGRubCBvciB0aGUgYWxyZWFkeSBj
b25zdHJ1Y3RlZCAkTElCTkFNRQogICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KICAgICAgICAg
ICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTElCW11OQU1FOyBkbwogICAgICAgICAgICAg
ICAgICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFsIHg9XCIkeFwiXSkKICAgICAg
ICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1MJGZvdW5kX2RpciI7IHRoZW4KICAg
ICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcwogICAgICAgICAgICAgICAgICAgICAgICBi
cmVhawogICAgICAgICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgICAgICBkb25lCiAg
ICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KICAgICAgICAgICAg
ICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9LUwkZm91bmRf
ZGlyIgogICAgICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAi
JGhhcmRjb2RlX21pbnVzX0wiICE9IG5vOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICBkbmwg
RklYTUU6IE5vdCBzdXJlIHdoZXRoZXIgd2Ugc2hvdWxkIHVzZQogICAgICAgICAgICAgICAgICAg
ICAgZG5sICItTCRmb3VuZF9kaXIgLWwkbmFtZSIgb3IgIi1MJGZvdW5kX2RpciAkZm91bmRfc28i
CiAgICAgICAgICAgICAgICAgICAgICBkbmwgaGVyZS4KICAgICAgICAgICAgICAgICAgICAgIExJ
QltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZvdW5kX3NvIgogICAgICAgICAg
ICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgIGRubCBXZSBjYW5ub3QgdXNlICRo
YXJkY29kZV9ydW5wYXRoX3ZhciBhbmQgTERfUlVOX1BBVEgKICAgICAgICAgICAgICAgICAgICAg
IGRubCBoZXJlLCBiZWNhdXNlIHRoaXMgZG9lc24ndCBmaXQgaW4gZmxhZ3MgcGFzc2VkIHRvIHRo
ZQogICAgICAgICAgICAgICAgICAgICAgZG5sIGNvbXBpbGVyLiBTbyBnaXZlIHVwLiBObyBoYXJk
Y29kaW5nLiBUaGlzIGFmZmVjdHMgb25seQogICAgICAgICAgICAgICAgICAgICAgZG5sIHZlcnkg
b2xkIHN5c3RlbXMuCiAgICAgICAgICAgICAgICAgICAgICBkbmwgRklYTUU6IE5vdCBzdXJlIHdo
ZXRoZXIgd2Ugc2hvdWxkIHVzZQogICAgICAgICAgICAgICAgICAgICAgZG5sICItTCRmb3VuZF9k
aXIgLWwkbmFtZSIgb3IgIi1MJGZvdW5kX2RpciAkZm91bmRfc28iCiAgICAgICAgICAgICAgICAg
ICAgICBkbmwgaGVyZS4KICAgICAgICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5B
TUV9JHtMSUJbXU5BTUU6KyB9LWwkbmFtZSIKICAgICAgICAgICAgICAgICAgICBmaQogICAgICAg
ICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICBmaQogICAgICAg
ICAgICBlbHNlCiAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9hIiAhPSAiWCI7IHRoZW4K
ICAgICAgICAgICAgICAgIGRubCBMaW5raW5nIHdpdGggYSBzdGF0aWMgbGlicmFyeS4KICAgICAg
ICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZvdW5kX2Ei
CiAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgZG5sIFdlIHNob3VsZG4ndCBjb21l
IGhlcmUsIGJ1dCBhbnl3YXkgaXQncyBnb29kIHRvIGhhdmUgYQogICAgICAgICAgICAgICAgZG5s
IGZhbGxiYWNrLgogICAgICAgICAgICAgICAgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltd
TkFNRTorIH0tTCRmb3VuZF9kaXIgLWwkbmFtZSIKICAgICAgICAgICAgICBmaQogICAgICAgICAg
ICBmaQogICAgICAgICAgICBkbmwgQXNzdW1lIHRoZSBpbmNsdWRlIGZpbGVzIGFyZSBuZWFyYnku
CiAgICAgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0KICAgICAgICAgICAgY2FzZSAiJGZv
dW5kX2RpciIgaW4KICAgICAgICAgICAgICAqLyRhY2xfbGliZGlyc3RlbSB8ICovJGFjbF9saWJk
aXJzdGVtLykKICAgICAgICAgICAgICAgIGJhc2VkaXI9YGVjaG8gIlgkZm91bmRfZGlyIiB8IHNl
ZCAtZSAncyxeWCwsJyAtZSAicywvJGFjbF9saWJkaXJzdGVtLyInKiQsLCdgCiAgICAgICAgICAg
ICAgICBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9IiRiYXNlZGlyL2luY2x1ZGUiCiAgICAgICAgICAg
ICAgICA7OwogICAgICAgICAgICBlc2FjCiAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25h
bF9pbmNsdWRlZGlyIiAhPSAiWCI7IHRoZW4KICAgICAgICAgICAgICBkbmwgUG90ZW50aWFsbHkg
YWRkICRhZGRpdGlvbmFsX2luY2x1ZGVkaXIgdG8gJElOQ05BTUUuCiAgICAgICAgICAgICAgZG5s
IEJ1dCBkb24ndCBhZGQgaXQKICAgICAgICAgICAgICBkbmwgICAxLiBpZiBpdCdzIHRoZSBzdGFu
ZGFyZCAvdXNyL2luY2x1ZGUsCiAgICAgICAgICAgICAgZG5sICAgMi4gaWYgaXQncyAvdXNyL2xv
Y2FsL2luY2x1ZGUgYW5kIHdlIGFyZSB1c2luZyBHQ0Mgb24gTGludXgsCiAgICAgICAgICAgICAg
ZG5sICAgMy4gaWYgaXQncyBhbHJlYWR5IHByZXNlbnQgaW4gJENQUEZMQUdTIG9yIHRoZSBhbHJl
YWR5CiAgICAgICAgICAgICAgZG5sICAgICAgY29uc3RydWN0ZWQgJElOQ05BTUUsCiAgICAgICAg
ICAgICAgZG5sICAgNC4gaWYgaXQgZG9lc24ndCBleGlzdCBhcyBhIGRpcmVjdG9yeS4KICAgICAg
ICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgIT0gIlgvdXNyL2luY2x1
ZGUiOyB0aGVuCiAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAgICAgICAgICAgICBpZiB0ZXN0
ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgPSAiWC91c3IvbG9jYWwvaW5jbHVkZSI7IHRoZW4K
ICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJEdDQyI7IHRoZW4KICAgICAgICAgICAgICAg
ICAgICBjYXNlICRob3N0X29zIGluCiAgICAgICAgICAgICAgICAgICAgICBsaW51eCogfCBnbnUq
IHwgaypic2QqLWdudSkgaGF2ZWl0PXllczs7CiAgICAgICAgICAgICAgICAgICAgZXNhYwogICAg
ICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgIGlmIHRl
c3QgLXogIiRoYXZlaXQiOyB0aGVuCiAgICAgICAgICAgICAgICAgIGZvciB4IGluICRDUFBGTEFH
UyAkSU5DW11OQU1FOyBkbwogICAgICAgICAgICAgICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BS
RUZJWChbZXZhbCB4PVwiJHhcIl0pCiAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9
ICJYLUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAg
aGF2ZWl0PXllcwogICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICAg
ICBmaQogICAgICAgICAgICAgICAgICBkb25lCiAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXog
IiRoYXZlaXQiOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9u
YWxfaW5jbHVkZWRpciI7IHRoZW4KICAgICAgICAgICAgICAgICAgICAgIGRubCBSZWFsbHkgYWRk
ICRhZGRpdGlvbmFsX2luY2x1ZGVkaXIgdG8gJElOQ05BTUUuCiAgICAgICAgICAgICAgICAgICAg
ICBJTkNbXU5BTUU9IiR7SU5DW11OQU1FfSR7SU5DW11OQU1FOisgfS1JJGFkZGl0aW9uYWxfaW5j
bHVkZWRpciIKICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICBmaQogICAg
ICAgICAgICAgICAgZmkKICAgICAgICAgICAgICBmaQogICAgICAgICAgICBmaQogICAgICAgICAg
ICBkbmwgTG9vayBmb3IgZGVwZW5kZW5jaWVzLgogICAgICAgICAgICBpZiB0ZXN0IC1uICIkZm91
bmRfbGEiOyB0aGVuCiAgICAgICAgICAgICAgZG5sIFJlYWQgdGhlIC5sYSBmaWxlLiBJdCBkZWZp
bmVzIHRoZSB2YXJpYWJsZXMKICAgICAgICAgICAgICBkbmwgZGxuYW1lLCBsaWJyYXJ5X25hbWVz
LCBvbGRfbGlicmFyeSwgZGVwZW5kZW5jeV9saWJzLCBjdXJyZW50LAogICAgICAgICAgICAgIGRu
bCBhZ2UsIHJldmlzaW9uLCBpbnN0YWxsZWQsIGRsb3BlbiwgZGxwcmVvcGVuLCBsaWJkaXIuCiAg
ICAgICAgICAgICAgc2F2ZV9saWJkaXI9IiRsaWJkaXIiCiAgICAgICAgICAgICAgY2FzZSAiJGZv
dW5kX2xhIiBpbgogICAgICAgICAgICAgICAgKi8qIHwgKlxcKikgLiAiJGZvdW5kX2xhIiA7Owog
ICAgICAgICAgICAgICAgKikgLiAiLi8kZm91bmRfbGEiIDs7CiAgICAgICAgICAgICAgZXNhYwog
ICAgICAgICAgICAgIGxpYmRpcj0iJHNhdmVfbGliZGlyIgogICAgICAgICAgICAgIGRubCBXZSB1
c2Ugb25seSBkZXBlbmRlbmN5X2xpYnMuCiAgICAgICAgICAgICAgZm9yIGRlcCBpbiAkZGVwZW5k
ZW5jeV9saWJzOyBkbwogICAgICAgICAgICAgICAgY2FzZSAiJGRlcCIgaW4KICAgICAgICAgICAg
ICAgICAgLUwqKQogICAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxfbGliZGlyPWBlY2hvICJY
JGRlcCIgfCBzZWQgLWUgJ3MvXlgtTC8vJ2AKICAgICAgICAgICAgICAgICAgICBkbmwgUG90ZW50
aWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0byAkTElCTkFNRSBhbmQgJExUTElCTkFNRS4K
ICAgICAgICAgICAgICAgICAgICBkbmwgQnV0IGRvbid0IGFkZCBpdAogICAgICAgICAgICAgICAg
ICAgIGRubCAgIDEuIGlmIGl0J3MgdGhlIHN0YW5kYXJkIC91c3IvbGliLAogICAgICAgICAgICAg
ICAgICAgIGRubCAgIDIuIGlmIGl0J3MgL3Vzci9sb2NhbC9saWIgYW5kIHdlIGFyZSB1c2luZyBH
Q0Mgb24gTGludXgsCiAgICAgICAgICAgICAgICAgICAgZG5sICAgMy4gaWYgaXQncyBhbHJlYWR5
IHByZXNlbnQgaW4gJExERkxBR1Mgb3IgdGhlIGFscmVhZHkKICAgICAgICAgICAgICAgICAgICBk
bmwgICAgICBjb25zdHJ1Y3RlZCAkTElCTkFNRSwKICAgICAgICAgICAgICAgICAgICBkbmwgICA0
LiBpZiBpdCBkb2Vzbid0IGV4aXN0IGFzIGEgZGlyZWN0b3J5LgogICAgICAgICAgICAgICAgICAg
IGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiICE9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0i
OyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAgICAgICAgICAgICAgICAg
ICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiA9ICJYL3Vzci9sb2NhbC8kYWNsX2xpYmRp
cnN0ZW0iOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRHQ0MiOyB0
aGVuCiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAkaG9zdF9vcyBpbgogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7
OwogICAgICAgICAgICAgICAgICAgICAgICAgIGVzYWMKICAgICAgICAgICAgICAgICAgICAgICAg
ZmkKICAgICAgICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0
IC16ICIkaGF2ZWl0IjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAg
ICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMSUJbXU5BTUU7IGRvCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFsIHg9XCIk
eFwiXSkKICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgtTCRhZGRp
dGlvbmFsX2xpYmRpciI7IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15
ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmkKICAgICAgICAgICAgICAgICAgICAgICAgZG9uZQogICAgICAgICAgICAgICAgICAg
ICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgICAg
IGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0byAkTElCTkFNRS4K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJb
XU5BTUU6KyB9LUwkYWRkaXRpb25hbF9saWJkaXIiCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmkKICAgICAgICAgICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgICAgICAgICAgaGF2
ZWl0PQogICAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTFRMSUJbXU5B
TUU7IGRvCiAgICAgICAgICAgICAgICAgICAgICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklY
KFtldmFsIHg9XCIkeFwiXSkKICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgi
ID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGhhdmVpdD15ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgICAgICAgICAgZG9uZQogICAgICAg
ICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgogICAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0
byAkTFRMSUJOQU1FLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRMSUJbXU5BTUU9IiR7
TFRMSUJbXU5BTUV9JHtMVExJQltdTkFNRTorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKICAgICAg
ICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICAgICAgICBmaQogICAgICAg
ICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAg
ICAgIDs7CiAgICAgICAgICAgICAgICAgIC1SKikKICAgICAgICAgICAgICAgICAgICBkaXI9YGVj
aG8gIlgkZGVwIiB8IHNlZCAtZSAncy9eWC1SLy8nYAogICAgICAgICAgICAgICAgICAgIGlmIHRl
c3QgIiRlbmFibGVfcnBhdGgiICE9IG5vOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICBkbmwg
UG90ZW50aWFsbHkgYWRkIERJUiB0byBycGF0aGRpcnMuCiAgICAgICAgICAgICAgICAgICAgICBk
bmwgVGhlIHJwYXRoZGlycyB3aWxsIGJlIGFwcGVuZGVkIHRvICRMSUJOQU1FIGF0IHRoZSBlbmQu
CiAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CiAgICAgICAgICAgICAgICAgICAgICBmb3Ig
eCBpbiAkcnBhdGhkaXJzOyBkbwogICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgi
ID0gIlgkZGlyIjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKICAg
ICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgICAgICAgICBmaQog
ICAgICAgICAgICAgICAgICAgICAgZG9uZQogICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAt
eiAiJGhhdmVpdCI7IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgcnBhdGhkaXJzPSIkcnBh
dGhkaXJzICRkaXIiCiAgICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICAg
ICAgZG5sIFBvdGVudGlhbGx5IGFkZCBESVIgdG8gbHRycGF0aGRpcnMuCiAgICAgICAgICAgICAg
ICAgICAgICBkbmwgVGhlIGx0cnBhdGhkaXJzIHdpbGwgYmUgYXBwZW5kZWQgdG8gJExUTElCTkFN
RSBhdCB0aGUgZW5kLgogICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQogICAgICAgICAgICAg
ICAgICAgICAgZm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbwogICAgICAgICAgICAgICAgICAgICAg
ICBpZiB0ZXN0ICJYJHgiID0gIlgkZGlyIjsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgICAg
IGhhdmVpdD15ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAg
ICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICAgICAgZG9uZQogICAgICAgICAgICAgICAg
ICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAg
bHRycGF0aGRpcnM9IiRsdHJwYXRoZGlycyAkZGlyIgogICAgICAgICAgICAgICAgICAgICAgZmkK
ICAgICAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgICAgIDs7CiAgICAgICAgICAg
ICAgICAgIC1sKikKICAgICAgICAgICAgICAgICAgICBkbmwgSGFuZGxlIHRoaXMgaW4gdGhlIG5l
eHQgcm91bmQuCiAgICAgICAgICAgICAgICAgICAgbmFtZXNfbmV4dF9yb3VuZD0iJG5hbWVzX25l
eHRfcm91bmQgImBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtbC8vJ2AKICAgICAgICAgICAg
ICAgICAgICA7OwogICAgICAgICAgICAgICAgICAqLmxhKQogICAgICAgICAgICAgICAgICAgIGRu
bCBIYW5kbGUgdGhpcyBpbiB0aGUgbmV4dCByb3VuZC4gVGhyb3cgYXdheSB0aGUgLmxhJ3MKICAg
ICAgICAgICAgICAgICAgICBkbmwgZGlyZWN0b3J5OyBpdCBpcyBhbHJlYWR5IGNvbnRhaW5lZCBp
biBhIHByZWNlZGluZyAtTAogICAgICAgICAgICAgICAgICAgIGRubCBvcHRpb24uCiAgICAgICAg
ICAgICAgICAgICAgbmFtZXNfbmV4dF9yb3VuZD0iJG5hbWVzX25leHRfcm91bmQgImBlY2hvICJY
JGRlcCIgfCBzZWQgLWUgJ3MsXlguKi8sLCcgLWUgJ3MsXmxpYiwsJyAtZSAncyxcLmxhJCwsJ2AK
ICAgICAgICAgICAgICAgICAgICA7OwogICAgICAgICAgICAgICAgICAqKQogICAgICAgICAgICAg
ICAgICAgIGRubCBNb3N0IGxpa2VseSBhbiBpbW1lZGlhdGUgbGlicmFyeSBuYW1lLgogICAgICAg
ICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGRlcCIK
ICAgICAgICAgICAgICAgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11O
QU1FOisgfSRkZXAiCiAgICAgICAgICAgICAgICAgICAgOzsKICAgICAgICAgICAgICAgIGVzYWMK
ICAgICAgICAgICAgICBkb25lCiAgICAgICAgICAgIGZpCiAgICAgICAgICBlbHNlCiAgICAgICAg
ICAgIGRubCBEaWRuJ3QgZmluZCB0aGUgbGlicmFyeTsgYXNzdW1lIGl0IGlzIGluIHRoZSBzeXN0
ZW0gZGlyZWN0b3JpZXMKICAgICAgICAgICAgZG5sIGtub3duIHRvIHRoZSBsaW5rZXIgYW5kIHJ1
bnRpbWUgbG9hZGVyLiAoQWxsIHRoZSBzeXN0ZW0KICAgICAgICAgICAgZG5sIGRpcmVjdG9yaWVz
IGtub3duIHRvIHRoZSBsaW5rZXIgc2hvdWxkIGFsc28gYmUga25vd24gdG8gdGhlCiAgICAgICAg
ICAgIGRubCBydW50aW1lIGxvYWRlciwgb3RoZXJ3aXNlIHRoZSBzeXN0ZW0gaXMgc2V2ZXJlbHkg
bWlzY29uZmlndXJlZC4pCiAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJb
XU5BTUU6KyB9LWwkbmFtZSIKICAgICAgICAgICAgTFRMSUJbXU5BTUU9IiR7TFRMSUJbXU5BTUV9
JHtMVExJQltdTkFNRTorIH0tbCRuYW1lIgogICAgICAgICAgZmkKICAgICAgICBmaQogICAgICBm
aQogICAgZG9uZQogIGRvbmUKICBpZiB0ZXN0ICJYJHJwYXRoZGlycyIgIT0gIlgiOyB0aGVuCiAg
ICBpZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRoZW4KICAgICAgZG5s
IFdlaXJkIHBsYXRmb3JtOiBvbmx5IHRoZSBsYXN0IC1ycGF0aCBvcHRpb24gY291bnRzLCB0aGUg
dXNlciBtdXN0CiAgICAgIGRubCBwYXNzIGFsbCBwYXRoIGVsZW1lbnRzIGluIG9uZSBvcHRpb24u
IFdlIGNhbiBhcnJhbmdlIHRoYXQgZm9yIGEKICAgICAgZG5sIHNpbmdsZSBsaWJyYXJ5LCBidXQg
bm90IHdoZW4gbW9yZSB0aGFuIG9uZSAkTElCTkFNRXMgYXJlIHVzZWQuCiAgICAgIGFsbGRpcnM9
CiAgICAgIGZvciBmb3VuZF9kaXIgaW4gJHJwYXRoZGlyczsgZG8KICAgICAgICBhbGxkaXJzPSIk
e2FsbGRpcnN9JHthbGxkaXJzOiskaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcn0kZm91bmRfZGly
IgogICAgICBkb25lCiAgICAgIGRubCBOb3RlOiBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIHVz
ZXMgJGxpYmRpciBhbmQgJHdsLgogICAgICBhY2xfc2F2ZV9saWJkaXI9IiRsaWJkaXIiCiAgICAg
IGxpYmRpcj0iJGFsbGRpcnMiCiAgICAgIGV2YWwgZmxhZz1cIiRoYXJkY29kZV9saWJkaXJfZmxh
Z19zcGVjXCIKICAgICAgbGliZGlyPSIkYWNsX3NhdmVfbGliZGlyIgogICAgICBMSUJbXU5BTUU9
IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfSRmbGFnIgogICAgZWxzZQogICAgICBkbmwgVGhl
IC1ycGF0aCBvcHRpb25zIGFyZSBjdW11bGF0aXZlLgogICAgICBmb3IgZm91bmRfZGlyIGluICRy
cGF0aGRpcnM7IGRvCiAgICAgICAgYWNsX3NhdmVfbGliZGlyPSIkbGliZGlyIgogICAgICAgIGxp
YmRpcj0iJGZvdW5kX2RpciIKICAgICAgICBldmFsIGZsYWc9XCIkaGFyZGNvZGVfbGliZGlyX2Zs
YWdfc3BlY1wiCiAgICAgICAgbGliZGlyPSIkYWNsX3NhdmVfbGliZGlyIgogICAgICAgIExJQltd
TkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZsYWciCiAgICAgIGRvbmUKICAgIGZp
CiAgZmkKICBpZiB0ZXN0ICJYJGx0cnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KICAgIGRubCBXaGVu
IHVzaW5nIGxpYnRvb2wsIHRoZSBvcHRpb24gdGhhdCB3b3JrcyBmb3IgYm90aCBsaWJyYXJpZXMg
YW5kCiAgICBkbmwgZXhlY3V0YWJsZXMgaXMgLVIuIFRoZSAtUiBvcHRpb25zIGFyZSBjdW11bGF0
aXZlLgogICAgZm9yIGZvdW5kX2RpciBpbiAkbHRycGF0aGRpcnM7IGRvCiAgICAgIExUTElCW11O
QU1FPSIke0xUTElCW11OQU1FfSR7TFRMSUJbXU5BTUU6KyB9LVIkZm91bmRfZGlyIgogICAgZG9u
ZQogIGZpCl0pCgpkbmwgQUNfTElCX0FQUEVORFRPVkFSKFZBUiwgQ09OVEVOVFMpIGFwcGVuZHMg
dGhlIGVsZW1lbnRzIG9mIENPTlRFTlRTIHRvIFZBUiwKZG5sIHVubGVzcyBhbHJlYWR5IHByZXNl
bnQgaW4gVkFSLgpkbmwgV29ya3Mgb25seSBmb3IgQ1BQRkxBR1MsIG5vdCBmb3IgTElCKiB2YXJp
YWJsZXMgYmVjYXVzZSB0aGF0IHNvbWV0aW1lcwpkbmwgY29udGFpbnMgdHdvIG9yIHRocmVlIGNv
bnNlY3V0aXZlIGVsZW1lbnRzIHRoYXQgYmVsb25nIHRvZ2V0aGVyLgpBQ19ERUZVTihbQUNfTElC
X0FQUEVORFRPVkFSXSwKWwogIGZvciBlbGVtZW50IGluIFskMl07IGRvCiAgICBoYXZlaXQ9CiAg
ICBmb3IgeCBpbiAkWyQxXTsgZG8KICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFs
IHg9XCIkeFwiXSkKICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGVsZW1lbnQiOyB0aGVuCiAgICAg
ICAgaGF2ZWl0PXllcwogICAgICAgIGJyZWFrCiAgICAgIGZpCiAgICBkb25lCiAgICBpZiB0ZXN0
IC16ICIkaGF2ZWl0IjsgdGhlbgogICAgICBbJDFdPSIke1skMV19JHtbJDFdOisgfSRlbGVtZW50
IgogICAgZmkKICBkb25lCl0pCgpkbmwgRm9yIHRob3NlIGNhc2VzIHdoZXJlIGEgdmFyaWFibGUg
Y29udGFpbnMgc2V2ZXJhbCAtTCBhbmQgLWwgb3B0aW9ucwpkbmwgcmVmZXJyaW5nIHRvIHVua25v
d24gbGlicmFyaWVzIGFuZCBkaXJlY3RvcmllcywgdGhpcyBtYWNybyBkZXRlcm1pbmVzIHRoZQpk
bmwgbmVjZXNzYXJ5IGFkZGl0aW9uYWwgbGlua2VyIG9wdGlvbnMgZm9yIHRoZSBydW50aW1lIHBh
dGguCmRubCBBQ19MSUJfTElOS0ZMQUdTX0ZST01fTElCUyhbTERBRERWQVJdLCBbTElCU1ZBTFVF
XSwgW1VTRS1MSUJUT09MXSkKZG5sIHNldHMgTERBRERWQVIgdG8gbGlua2VyIG9wdGlvbnMgbmVl
ZGVkIHRvZ2V0aGVyIHdpdGggTElCU1ZBTFVFLgpkbmwgSWYgVVNFLUxJQlRPT0wgZXZhbHVhdGVz
IHRvIG5vbi1lbXB0eSwgbGlua2luZyB3aXRoIGxpYnRvb2wgaXMgYXNzdW1lZCwKZG5sIG90aGVy
d2lzZSBsaW5raW5nIHdpdGhvdXQgbGlidG9vbCBpcyBhc3N1bWVkLgpBQ19ERUZVTihbQUNfTElC
X0xJTktGTEFHU19GUk9NX0xJQlNdLApbCiAgQUNfUkVRVUlSRShbQUNfTElCX1JQQVRIXSkKICBB
Q19SRVFVSVJFKFtBQ19MSUJfUFJFUEFSRV9NVUxUSUxJQl0pCiAgJDE9CiAgaWYgdGVzdCAiJGVu
YWJsZV9ycGF0aCIgIT0gbm87IHRoZW4KICAgIGlmIHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJf
ZmxhZ19zcGVjIiAmJiB0ZXN0ICIkaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhlbgogICAgICBk
bmwgVXNlIGFuIGV4cGxpY2l0IG9wdGlvbiB0byBoYXJkY29kZSBkaXJlY3RvcmllcyBpbnRvIHRo
ZSByZXN1bHRpbmcKICAgICAgZG5sIGJpbmFyeS4KICAgICAgcnBhdGhkaXJzPQogICAgICBuZXh0
PQogICAgICBmb3Igb3B0IGluICQyOyBkbwogICAgICAgIGlmIHRlc3QgLW4gIiRuZXh0IjsgdGhl
bgogICAgICAgICAgZGlyPSIkbmV4dCIKICAgICAgICAgIGRubCBObyBuZWVkIHRvIGhhcmRjb2Rl
IHRoZSBzdGFuZGFyZCAvdXNyL2xpYi4KICAgICAgICAgIGlmIHRlc3QgIlgkZGlyIiAhPSAiWC91
c3IvJGFjbF9saWJkaXJzdGVtIjsgdGhlbgogICAgICAgICAgICBycGF0aGRpcnM9IiRycGF0aGRp
cnMgJGRpciIKICAgICAgICAgIGZpCiAgICAgICAgICBuZXh0PQogICAgICAgIGVsc2UKICAgICAg
ICAgIGNhc2UgJG9wdCBpbgogICAgICAgICAgICAtTCkgbmV4dD15ZXMgOzsKICAgICAgICAgICAg
LUwqKSBkaXI9YGVjaG8gIlgkb3B0IiB8IHNlZCAtZSAncyxeWC1MLCwnYAogICAgICAgICAgICAg
ICAgIGRubCBObyBuZWVkIHRvIGhhcmRjb2RlIHRoZSBzdGFuZGFyZCAvdXNyL2xpYi4KICAgICAg
ICAgICAgICAgICBpZiB0ZXN0ICJYJGRpciIgIT0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbSI7IHRo
ZW4KICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRoZGlycyAkZGlyIgogICAgICAg
ICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICAgbmV4dD0gOzsKICAgICAgICAgICAgKikgbmV4
dD0gOzsKICAgICAgICAgIGVzYWMKICAgICAgICBmaQogICAgICBkb25lCiAgICAgIGlmIHRlc3Qg
IlgkcnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KICAgICAgICBpZiB0ZXN0IC1uICIiJDMiIjsgdGhl
bgogICAgICAgICAgZG5sIGxpYnRvb2wgaXMgdXNlZCBmb3IgbGlua2luZy4gVXNlIC1SIG9wdGlv
bnMuCiAgICAgICAgICBmb3IgZGlyIGluICRycGF0aGRpcnM7IGRvCiAgICAgICAgICAgICQxPSIk
eyQxfSR7JDE6KyB9LVIkZGlyIgogICAgICAgICAgZG9uZQogICAgICAgIGVsc2UKICAgICAgICAg
IGRubCBUaGUgbGlua2VyIGlzIHVzZWQgZm9yIGxpbmtpbmcgZGlyZWN0bHkuCiAgICAgICAgICBp
ZiB0ZXN0IC1uICIkaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRoZW4KICAgICAgICAgICAg
ZG5sIFdlaXJkIHBsYXRmb3JtOiBvbmx5IHRoZSBsYXN0IC1ycGF0aCBvcHRpb24gY291bnRzLCB0
aGUgdXNlcgogICAgICAgICAgICBkbmwgbXVzdCBwYXNzIGFsbCBwYXRoIGVsZW1lbnRzIGluIG9u
ZSBvcHRpb24uCiAgICAgICAgICAgIGFsbGRpcnM9CiAgICAgICAgICAgIGZvciBkaXIgaW4gJHJw
YXRoZGlyczsgZG8KICAgICAgICAgICAgICBhbGxkaXJzPSIke2FsbGRpcnN9JHthbGxkaXJzOisk
aGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcn0kZGlyIgogICAgICAgICAgICBkb25lCiAgICAgICAg
ICAgIGFjbF9zYXZlX2xpYmRpcj0iJGxpYmRpciIKICAgICAgICAgICAgbGliZGlyPSIkYWxsZGly
cyIKICAgICAgICAgICAgZXZhbCBmbGFnPVwiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNcIgog
ICAgICAgICAgICBsaWJkaXI9IiRhY2xfc2F2ZV9saWJkaXIiCiAgICAgICAgICAgICQxPSIkZmxh
ZyIKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgZG5sIFRoZSAtcnBhdGggb3B0aW9ucyBhcmUg
Y3VtdWxhdGl2ZS4KICAgICAgICAgICAgZm9yIGRpciBpbiAkcnBhdGhkaXJzOyBkbwogICAgICAg
ICAgICAgIGFjbF9zYXZlX2xpYmRpcj0iJGxpYmRpciIKICAgICAgICAgICAgICBsaWJkaXI9IiRk
aXIiCiAgICAgICAgICAgICAgZXZhbCBmbGFnPVwiJGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNc
IgogICAgICAgICAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xpYmRpciIKICAgICAgICAgICAgICAk
MT0iJHskMX0keyQxOisgfSRmbGFnIgogICAgICAgICAgICBkb25lCiAgICAgICAgICBmaQogICAg
ICAgIGZpCiAgICAgIGZpCiAgICBmaQogIGZpCiAgQUNfU1VCU1QoWyQxXSkKXSkKCiMgbGliLXBy
ZWZpeC5tNCBzZXJpYWwgNSAoZ2V0dGV4dC0wLjE1KQpkbmwgQ29weXJpZ2h0IChDKSAyMDAxLTIw
MDUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubCBUaGlzIGZpbGUgaXMgZnJlZSBz
b2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpkbmwgZ2l2ZXMgdW5saW1pdGVk
IHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKZG5sIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4K
CmRubCBGcm9tIEJydW5vIEhhaWJsZS4KCmRubCBBQ19MSUJfQVJHX1dJVEggaXMgc3lub255bW91
cyB0byBBQ19BUkdfV0lUSCBpbiBhdXRvY29uZi0yLjEzLCBhbmQKZG5sIHNpbWlsYXIgdG8gQUNf
QVJHX1dJVEggaW4gYXV0b2NvbmYgMi41Mi4uLjIuNTcgZXhjZXB0IHRoYXQgaXMgZG9lc24ndApk
bmwgcmVxdWlyZSBleGNlc3NpdmUgYnJhY2tldGluZy4KaWZkZWYoW0FDX0hFTFBfU1RSSU5HXSwK
W0FDX0RFRlVOKFtBQ19MSUJfQVJHX1dJVEhdLCBbQUNfQVJHX1dJVEgoWyQxXSxbWyQyXV0sWyQz
XSxbJDRdKV0pXSwKW0FDX0RFRlVOKFtBQ19dW0xJQl9BUkdfV0lUSF0sIFtBQ19BUkdfV0lUSChb
JDFdLFskMl0sWyQzXSxbJDRdKV0pXSkKCmRubCBBQ19MSUJfUFJFRklYIGFkZHMgdG8gdGhlIENQ
UEZMQUdTIGFuZCBMREZMQUdTIHRoZSBmbGFncyB0aGF0IGFyZSBuZWVkZWQKZG5sIHRvIGFjY2Vz
cyBwcmV2aW91c2x5IGluc3RhbGxlZCBsaWJyYXJpZXMuIFRoZSBiYXNpYyBhc3N1bXB0aW9uIGlz
IHRoYXQKZG5sIGEgdXNlciB3aWxsIHdhbnQgcGFja2FnZXMgdG8gdXNlIG90aGVyIHBhY2thZ2Vz
IGhlIHByZXZpb3VzbHkgaW5zdGFsbGVkCmRubCB3aXRoIHRoZSBzYW1lIC0tcHJlZml4IG9wdGlv
bi4KZG5sIFRoaXMgbWFjcm8gaXMgbm90IG5lZWRlZCBpZiBvbmx5IEFDX0xJQl9MSU5LRkxBR1Mg
aXMgdXNlZCB0byBsb2NhdGUKZG5sIGxpYnJhcmllcywgYnV0IGlzIG90aGVyd2lzZSB2ZXJ5IGNv
bnZlbmllbnQuCkFDX0RFRlVOKFtBQ19MSUJfUFJFRklYXSwKWwogIEFDX0JFRk9SRShbJDBdLCBb
QUNfTElCX0xJTktGTEFHU10pCiAgQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pCiAgQUNfUkVRVUlS
RShbQUNfQ0FOT05JQ0FMX0hPU1RdKQogIEFDX1JFUVVJUkUoW0FDX0xJQl9QUkVQQVJFX01VTFRJ
TElCXSkKICBBQ19SRVFVSVJFKFtBQ19MSUJfUFJFUEFSRV9QUkVGSVhdKQogIGRubCBCeSBkZWZh
dWx0LCBsb29rIGluICRpbmNsdWRlZGlyIGFuZCAkbGliZGlyLgogIHVzZV9hZGRpdGlvbmFsPXll
cwogIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbCiAgICBldmFsIGFkZGl0aW9uYWxfaW5jbHVk
ZWRpcj1cIiRpbmNsdWRlZGlyXCIKICAgIGV2YWwgYWRkaXRpb25hbF9saWJkaXI9XCIkbGliZGly
XCIKICBdKQogIEFDX0xJQl9BUkdfV0lUSChbbGliLXByZWZpeF0sClsgIC0td2l0aC1saWItcHJl
Zml4Wz1ESVJdIHNlYXJjaCBmb3IgbGlicmFyaWVzIGluIERJUi9pbmNsdWRlIGFuZCBESVIvbGli
CiAgLS13aXRob3V0LWxpYi1wcmVmaXggICAgZG9uJ3Qgc2VhcmNoIGZvciBsaWJyYXJpZXMgaW4g
aW5jbHVkZWRpciBhbmQgbGliZGlyXSwKWwogICAgaWYgdGVzdCAiWCR3aXRodmFsIiA9ICJYbm8i
OyB0aGVuCiAgICAgIHVzZV9hZGRpdGlvbmFsPW5vCiAgICBlbHNlCiAgICAgIGlmIHRlc3QgIlgk
d2l0aHZhbCIgPSAiWCI7IHRoZW4KICAgICAgICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoWwog
ICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9XCIkaW5jbHVkZWRpclwiCiAgICAg
ICAgICBldmFsIGFkZGl0aW9uYWxfbGliZGlyPVwiJGxpYmRpclwiCiAgICAgICAgXSkKICAgICAg
ZWxzZQogICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0iJHdpdGh2YWwvaW5jbHVkZSIKICAg
ICAgICBhZGRpdGlvbmFsX2xpYmRpcj0iJHdpdGh2YWwvJGFjbF9saWJkaXJzdGVtIgogICAgICBm
aQogICAgZmkKXSkKICBpZiB0ZXN0ICR1c2VfYWRkaXRpb25hbCA9IHllczsgdGhlbgogICAgZG5s
IFBvdGVudGlhbGx5IGFkZCAkYWRkaXRpb25hbF9pbmNsdWRlZGlyIHRvICRDUFBGTEFHUy4KICAg
IGRubCBCdXQgZG9uJ3QgYWRkIGl0CiAgICBkbmwgICAxLiBpZiBpdCdzIHRoZSBzdGFuZGFyZCAv
dXNyL2luY2x1ZGUsCiAgICBkbmwgICAyLiBpZiBpdCdzIGFscmVhZHkgcHJlc2VudCBpbiAkQ1BQ
RkxBR1MsCiAgICBkbmwgICAzLiBpZiBpdCdzIC91c3IvbG9jYWwvaW5jbHVkZSBhbmQgd2UgYXJl
IHVzaW5nIEdDQyBvbiBMaW51eCwKICAgIGRubCAgIDQuIGlmIGl0IGRvZXNuJ3QgZXhpc3QgYXMg
YSBkaXJlY3RvcnkuCiAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgIT0gIlgv
dXNyL2luY2x1ZGUiOyB0aGVuCiAgICAgIGhhdmVpdD0KICAgICAgZm9yIHggaW4gJENQUEZMQUdT
OyBkbwogICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbZXZhbCB4PVwiJHhcIl0pCiAg
ICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsgdGhlbgog
ICAgICAgICAgaGF2ZWl0PXllcwogICAgICAgICAgYnJlYWsKICAgICAgICBmaQogICAgICBkb25l
CiAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCiAgICAgICAgaWYgdGVzdCAiWCRhZGRp
dGlvbmFsX2luY2x1ZGVkaXIiID0gIlgvdXNyL2xvY2FsL2luY2x1ZGUiOyB0aGVuCiAgICAgICAg
ICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgogICAgICAgICAgICBjYXNlICRob3N0X29zIGluCiAg
ICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OwogICAg
ICAgICAgICBlc2FjCiAgICAgICAgICBmaQogICAgICAgIGZpCiAgICAgICAgaWYgdGVzdCAteiAi
JGhhdmVpdCI7IHRoZW4KICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2luY2x1ZGVk
aXIiOyB0aGVuCiAgICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2luY2x1ZGVk
aXIgdG8gJENQUEZMQUdTLgogICAgICAgICAgICBDUFBGTEFHUz0iJHtDUFBGTEFHU30ke0NQUEZM
QUdTOisgfS1JJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIKICAgICAgICAgIGZpCiAgICAgICAgZmkK
ICAgICAgZmkKICAgIGZpCiAgICBkbmwgUG90ZW50aWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRp
ciB0byAkTERGTEFHUy4KICAgIGRubCBCdXQgZG9uJ3QgYWRkIGl0CiAgICBkbmwgICAxLiBpZiBp
dCdzIHRoZSBzdGFuZGFyZCAvdXNyL2xpYiwKICAgIGRubCAgIDIuIGlmIGl0J3MgYWxyZWFkeSBw
cmVzZW50IGluICRMREZMQUdTLAogICAgZG5sICAgMy4gaWYgaXQncyAvdXNyL2xvY2FsL2xpYiBh
bmQgd2UgYXJlIHVzaW5nIEdDQyBvbiBMaW51eCwKICAgIGRubCAgIDQuIGlmIGl0IGRvZXNuJ3Qg
ZXhpc3QgYXMgYSBkaXJlY3RvcnkuCiAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiAh
PSAiWC91c3IvJGFjbF9saWJkaXJzdGVtIjsgdGhlbgogICAgICBoYXZlaXQ9CiAgICAgIGZvciB4
IGluICRMREZMQUdTOyBkbwogICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbZXZhbCB4
PVwiJHhcIl0pCiAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUwkYWRkaXRpb25hbF9saWJkaXIi
OyB0aGVuCiAgICAgICAgICBoYXZlaXQ9eWVzCiAgICAgICAgICBicmVhawogICAgICAgIGZpCiAg
ICAgIGRvbmUKICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KICAgICAgICBpZiB0ZXN0
ICJYJGFkZGl0aW9uYWxfbGliZGlyIiA9ICJYL3Vzci9sb2NhbC8kYWNsX2xpYmRpcnN0ZW0iOyB0
aGVuCiAgICAgICAgICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgogICAgICAgICAgICBjYXNlICRo
b3N0X29zIGluCiAgICAgICAgICAgICAgbGludXgqKSBoYXZlaXQ9eWVzOzsKICAgICAgICAgICAg
ZXNhYwogICAgICAgICAgZmkKICAgICAgICBmaQogICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQi
OyB0aGVuCiAgICAgICAgICBpZiB0ZXN0IC1kICIkYWRkaXRpb25hbF9saWJkaXIiOyB0aGVuCiAg
ICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0byAkTERGTEFHUy4K
ICAgICAgICAgICAgTERGTEFHUz0iJHtMREZMQUdTfSR7TERGTEFHUzorIH0tTCRhZGRpdGlvbmFs
X2xpYmRpciIKICAgICAgICAgIGZpCiAgICAgICAgZmkKICAgICAgZmkKICAgIGZpCiAgZmkKXSkK
CmRubCBBQ19MSUJfUFJFUEFSRV9QUkVGSVggY3JlYXRlcyB2YXJpYWJsZXMgYWNsX2ZpbmFsX3By
ZWZpeCwKZG5sIGFjbF9maW5hbF9leGVjX3ByZWZpeCwgY29udGFpbmluZyB0aGUgdmFsdWVzIHRv
IHdoaWNoICRwcmVmaXggYW5kCmRubCAkZXhlY19wcmVmaXggd2lsbCBleHBhbmQgYXQgdGhlIGVu
ZCBvZiB0aGUgY29uZmlndXJlIHNjcmlwdC4KQUNfREVGVU4oW0FDX0xJQl9QUkVQQVJFX1BSRUZJ
WF0sClsKICBkbmwgVW5mb3J0dW5hdGVseSwgcHJlZml4IGFuZCBleGVjX3ByZWZpeCBnZXQgb25s
eSBmaW5hbGx5IGRldGVybWluZWQKICBkbmwgYXQgdGhlIGVuZCBvZiBjb25maWd1cmUuCiAgaWYg
dGVzdCAiWCRwcmVmaXgiID0gIlhOT05FIjsgdGhlbgogICAgYWNsX2ZpbmFsX3ByZWZpeD0iJGFj
X2RlZmF1bHRfcHJlZml4IgogIGVsc2UKICAgIGFjbF9maW5hbF9wcmVmaXg9IiRwcmVmaXgiCiAg
ZmkKICBpZiB0ZXN0ICJYJGV4ZWNfcHJlZml4IiA9ICJYTk9ORSI7IHRoZW4KICAgIGFjbF9maW5h
bF9leGVjX3ByZWZpeD0nJHtwcmVmaXh9JwogIGVsc2UKICAgIGFjbF9maW5hbF9leGVjX3ByZWZp
eD0iJGV4ZWNfcHJlZml4IgogIGZpCiAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgogIHByZWZp
eD0iJGFjbF9maW5hbF9wcmVmaXgiCiAgZXZhbCBhY2xfZmluYWxfZXhlY19wcmVmaXg9XCIkYWNs
X2ZpbmFsX2V4ZWNfcHJlZml4XCIKICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCl0pCgpkbmwg
QUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtzdGF0ZW1lbnRdKSBldmFsdWF0ZXMgc3RhdGVtZW50
LCB3aXRoIHRoZQpkbmwgdmFyaWFibGVzIHByZWZpeCBhbmQgZXhlY19wcmVmaXggYm91bmQgdG8g
dGhlIHZhbHVlcyB0aGV5IHdpbGwgaGF2ZQpkbmwgYXQgdGhlIGVuZCBvZiB0aGUgY29uZmlndXJl
IHNjcmlwdC4KQUNfREVGVU4oW0FDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWF0sClsKICBhY2xfc2F2
ZV9wcmVmaXg9IiRwcmVmaXgiCiAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKICBhY2xfc2F2
ZV9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgogIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4
ZWNfcHJlZml4IgogICQxCiAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKICBw
cmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCl0pCgpkbmwgQUNfTElCX1BSRVBBUkVfTVVMVElMSUIg
Y3JlYXRlcyBhIHZhcmlhYmxlIGFjbF9saWJkaXJzdGVtLCBjb250YWluaW5nCmRubCB0aGUgYmFz
ZW5hbWUgb2YgdGhlIGxpYmRpciwgZWl0aGVyICJsaWIiIG9yICJsaWI2NCIuCkFDX0RFRlVOKFtB
Q19MSUJfUFJFUEFSRV9NVUxUSUxJQl0sClsKICBkbmwgVGhlcmUgaXMgbm8gZm9ybWFsIHN0YW5k
YXJkIHJlZ2FyZGluZyBsaWIgYW5kIGxpYjY0LiBUaGUgY3VycmVudAogIGRubCBwcmFjdGljZSBp
cyB0aGF0IG9uIGEgc3lzdGVtIHN1cHBvcnRpbmcgMzItYml0IGFuZCA2NC1iaXQgaW5zdHJ1Y3Rp
b24KICBkbmwgc2V0cyBvciBBQklzLCA2NC1iaXQgbGlicmFyaWVzIGdvIHVuZGVyICRwcmVmaXgv
bGliNjQgYW5kIDMyLWJpdAogIGRubCBsaWJyYXJpZXMgZ28gdW5kZXIgJHByZWZpeC9saWIuIFdl
IGRldGVybWluZSB0aGUgY29tcGlsZXIncyBkZWZhdWx0CiAgZG5sIG1vZGUgYnkgbG9va2luZyBh
dCB0aGUgY29tcGlsZXIncyBsaWJyYXJ5IHNlYXJjaCBwYXRoLiBJZiBhdCBsZWFzdAogIGRubCBv
ZiBpdHMgZWxlbWVudHMgZW5kcyBpbiAvbGliNjQgb3IgcG9pbnRzIHRvIGEgZGlyZWN0b3J5IHdo
b3NlIGFic29sdXRlCiAgZG5sIHBhdGhuYW1lIGVuZHMgaW4gL2xpYjY0LCB3ZSBhc3N1bWUgYSA2
NC1iaXQgQUJJLiBPdGhlcndpc2Ugd2UgdXNlIHRoZQogIGRubCBkZWZhdWx0LCBuYW1lbHkgImxp
YiIuCiAgYWNsX2xpYmRpcnN0ZW09bGliCiAgc2VhcmNocGF0aD1gKExDX0FMTD1DICRDQyAtcHJp
bnQtc2VhcmNoLWRpcnMpIDI+L2Rldi9udWxsIHwgc2VkIC1uIC1lICdzLF5saWJyYXJpZXM6ICws
cCcgfCBzZWQgLWUgJ3MsXj0sLCdgCiAgaWYgdGVzdCAtbiAiJHNlYXJjaHBhdGgiOyB0aGVuCiAg
ICBhY2xfc2F2ZV9JRlM9IiR7SUZTPSAJfSI7IElGUz0iOiIKICAgIGZvciBzZWFyY2hkaXIgaW4g
JHNlYXJjaHBhdGg7IGRvCiAgICAgIGlmIHRlc3QgLWQgIiRzZWFyY2hkaXIiOyB0aGVuCiAgICAg
ICAgY2FzZSAiJHNlYXJjaGRpciIgaW4KICAgICAgICAgICovbGliNjQvIHwgKi9saWI2NCApIGFj
bF9saWJkaXJzdGVtPWxpYjY0IDs7CiAgICAgICAgICAqKSBzZWFyY2hkaXI9YGNkICIkc2VhcmNo
ZGlyIiAmJiBwd2RgCiAgICAgICAgICAgICBjYXNlICIkc2VhcmNoZGlyIiBpbgogICAgICAgICAg
ICAgICAqL2xpYjY0ICkgYWNsX2xpYmRpcnN0ZW09bGliNjQgOzsKICAgICAgICAgICAgIGVzYWMg
OzsKICAgICAgICBlc2FjCiAgICAgIGZpCiAgICBkb25lCiAgICBJRlM9IiRhY2xfc2F2ZV9JRlMi
CiAgZmkKXSkKCiMgbGlidG9vbC5tNCAtIENvbmZpZ3VyZSBsaWJ0b29sIGZvciB0aGUgaG9zdCBz
eXN0ZW0uIC0qLUF1dG9jb25mLSotCgojIHNlcmlhbCA0OCBBQ19QUk9HX0xJQlRPT0wKCgojIEFD
X1BST1ZJREVfSUZFTFNFKE1BQ1JPLU5BTUUsIElGLVBST1ZJREVELCBJRi1OT1QtUFJPVklERUQp
CiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0KIyBJZiB0aGlzIG1hY3JvIGlzIG5vdCBkZWZpbmVkIGJ5IEF1dG9jb25mLCBkZWZpbmUg
aXQgaGVyZS4KbTRfaWZkZWYoW0FDX1BST1ZJREVfSUZFTFNFXSwKICAgICAgICAgW10sCiAgICAg
ICAgIFttNF9kZWZpbmUoW0FDX1BST1ZJREVfSUZFTFNFXSwKCSAgICAgICAgIFttNF9pZmRlZihb
QUNfUFJPVklERV8kMV0sCgkJICAgICAgICAgICBbJDJdLCBbJDNdKV0pXSkKCgojIEFDX1BST0df
TElCVE9PTAojIC0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihbQUNfUFJPR19MSUJUT09MXSwKW0FD
X1JFUVVJUkUoW19BQ19QUk9HX0xJQlRPT0xdKWRubApkbmwgSWYgQUNfUFJPR19DWFggaGFzIGFs
cmVhZHkgYmVlbiBleHBhbmRlZCwgcnVuIEFDX0xJQlRPT0xfQ1hYCmRubCBpbW1lZGlhdGVseSwg
b3RoZXJ3aXNlLCBob29rIGl0IGluIGF0IHRoZSBlbmQgb2YgQUNfUFJPR19DWFguCiAgQUNfUFJP
VklERV9JRkVMU0UoW0FDX1BST0dfQ1hYXSwKICAgIFtBQ19MSUJUT09MX0NYWF0sCiAgICBbZGVm
aW5lKFtBQ19QUk9HX0NYWF0sIGRlZm4oW0FDX1BST0dfQ1hYXSlbQUNfTElCVE9PTF9DWFgKICBd
KV0pCmRubCBBbmQgYSBzaW1pbGFyIHNldHVwIGZvciBGb3J0cmFuIDc3IHN1cHBvcnQKICBBQ19Q
Uk9WSURFX0lGRUxTRShbQUNfUFJPR19GNzddLAogICAgW0FDX0xJQlRPT0xfRjc3XSwKICAgIFtk
ZWZpbmUoW0FDX1BST0dfRjc3XSwgZGVmbihbQUNfUFJPR19GNzddKVtBQ19MSUJUT09MX0Y3Nwpd
KV0pCgpkbmwgUXVvdGUgQV1bTV9QUk9HX0dDSiBzbyB0aGF0IGFjbG9jYWwgZG9lc24ndCBicmlu
ZyBpdCBpbiBuZWVkbGVzc2x5LgpkbmwgSWYgZWl0aGVyIEFDX1BST0dfR0NKIG9yIEFdW01fUFJP
R19HQ0ogaGF2ZSBhbHJlYWR5IGJlZW4gZXhwYW5kZWQsIHJ1bgpkbmwgQUNfTElCVE9PTF9HQ0og
aW1tZWRpYXRlbHksIG90aGVyd2lzZSwgaG9vayBpdCBpbiBhdCB0aGUgZW5kIG9mIGJvdGguCiAg
QUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfR0NKXSwKICAgIFtBQ19MSUJUT09MX0dDSl0sCiAg
ICBbQUNfUFJPVklERV9JRkVMU0UoW0FdW01fUFJPR19HQ0pdLAogICAgICBbQUNfTElCVE9PTF9H
Q0pdLAogICAgICBbQUNfUFJPVklERV9JRkVMU0UoW0xUX0FDX1BST0dfR0NKXSwKCVtBQ19MSUJU
T09MX0dDSl0sCiAgICAgIFtpZmRlZihbQUNfUFJPR19HQ0pdLAoJICAgICBbZGVmaW5lKFtBQ19Q
Uk9HX0dDSl0sIGRlZm4oW0FDX1BST0dfR0NKXSlbQUNfTElCVE9PTF9HQ0pdKV0pCiAgICAgICBp
ZmRlZihbQV1bTV9QUk9HX0dDSl0sCgkgICAgIFtkZWZpbmUoW0FdW01fUFJPR19HQ0pdLCBkZWZu
KFtBXVtNX1BST0dfR0NKXSlbQUNfTElCVE9PTF9HQ0pdKV0pCiAgICAgICBpZmRlZihbTFRfQUNf
UFJPR19HQ0pdLAoJICAgICBbZGVmaW5lKFtMVF9BQ19QUk9HX0dDSl0sCgkJZGVmbihbTFRfQUNf
UFJPR19HQ0pdKVtBQ19MSUJUT09MX0dDSl0pXSldKV0pCl0pXSkjIEFDX1BST0dfTElCVE9PTAoK
CiMgX0FDX1BST0dfTElCVE9PTAojIC0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW19BQ19QUk9H
X0xJQlRPT0xdLApbQUNfUkVRVUlSRShbQUNfTElCVE9PTF9TRVRVUF0pZG5sCkFDX0JFRk9SRShb
JDBdLFtBQ19MSUJUT09MX0NYWF0pZG5sCkFDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX0Y3N10p
ZG5sCkFDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX0dDSl0pZG5sCgojIFRoaXMgY2FuIGJlIHVz
ZWQgdG8gcmVidWlsZCBsaWJ0b29sIHdoZW4gbmVlZGVkCkxJQlRPT0xfREVQUz0iJGFjX2F1eF9k
aXIvbHRtYWluLnNoIgoKIyBBbHdheXMgdXNlIG91ciBvd24gbGlidG9vbC4KTElCVE9PTD0nJChT
SEVMTCkgJCh0b3BfYnVpbGRkaXIpL2xpYnRvb2wnCkFDX1NVQlNUKExJQlRPT0wpZG5sCgojIFBy
ZXZlbnQgbXVsdGlwbGUgZXhwYW5zaW9uCmRlZmluZShbQUNfUFJPR19MSUJUT09MXSwgW10pCl0p
IyBfQUNfUFJPR19MSUJUT09MCgoKIyBBQ19MSUJUT09MX1NFVFVQCiMgLS0tLS0tLS0tLS0tLS0t
LQpBQ19ERUZVTihbQUNfTElCVE9PTF9TRVRVUF0sCltBQ19QUkVSRVEoMi41MClkbmwKQUNfUkVR
VUlSRShbQUNfRU5BQkxFX1NIQVJFRF0pZG5sCkFDX1JFUVVJUkUoW0FDX0VOQUJMRV9TVEFUSUNd
KWRubApBQ19SRVFVSVJFKFtBQ19FTkFCTEVfRkFTVF9JTlNUQUxMXSlkbmwKQUNfUkVRVUlSRShb
QUNfQ0FOT05JQ0FMX0hPU1RdKWRubApBQ19SRVFVSVJFKFtBQ19DQU5PTklDQUxfQlVJTERdKWRu
bApBQ19SRVFVSVJFKFtBQ19QUk9HX0NDXSlkbmwKQUNfUkVRVUlSRShbQUNfUFJPR19MRF0pZG5s
CkFDX1JFUVVJUkUoW0FDX1BST0dfTERfUkVMT0FEX0ZMQUddKWRubApBQ19SRVFVSVJFKFtBQ19Q
Uk9HX05NXSlkbmwKCkFDX1JFUVVJUkUoW0FDX1BST0dfTE5fU10pZG5sCkFDX1JFUVVJUkUoW0FD
X0RFUExJQlNfQ0hFQ0tfTUVUSE9EXSlkbmwKIyBBdXRvY29uZiAyLjEzJ3MgQUNfT0JKRVhUIGFu
ZCBBQ19FWEVFWFQgbWFjcm9zIG9ubHkgd29ya3MgZm9yIEMgY29tcGlsZXJzIQpBQ19SRVFVSVJF
KFtBQ19PQkpFWFRdKWRubApBQ19SRVFVSVJFKFtBQ19FWEVFWFRdKWRubApkbmwKCkFDX0xJQlRP
T0xfU1lTX01BWF9DTURfTEVOCkFDX0xJQlRPT0xfU1lTX0dMT0JBTF9TWU1CT0xfUElQRQpBQ19M
SUJUT09MX09CSkRJUgoKQUNfUkVRVUlSRShbX0xUX0FDX1NZU19DT01QSUxFUl0pZG5sCl9MVF9B
Q19QUk9HX0VDSE9fQkFDS1NMQVNICgpjYXNlICRob3N0X29zIGluCmFpeDMqKQogICMgQUlYIHNv
bWV0aW1lcyBoYXMgcHJvYmxlbXMgd2l0aCB0aGUgR0NDIGNvbGxlY3QyIHByb2dyYW0uICBGb3Ig
c29tZQogICMgcmVhc29uLCBpZiB3ZSBzZXQgdGhlIENPTExFQ1RfTkFNRVMgZW52aXJvbm1lbnQg
dmFyaWFibGUsIHRoZSBwcm9ibGVtcwogICMgdmFuaXNoIGluIGEgcHVmZiBvZiBzbW9rZS4KICBp
ZiB0ZXN0ICJYJHtDT0xMRUNUX05BTUVTK3NldH0iICE9IFhzZXQ7IHRoZW4KICAgIENPTExFQ1Rf
TkFNRVM9CiAgICBleHBvcnQgQ09MTEVDVF9OQU1FUwogIGZpCiAgOzsKZXNhYwoKIyBTZWQgc3Vi
c3RpdHV0aW9uIHRoYXQgaGVscHMgdXMgZG8gcm9idXN0IHF1b3RpbmcuICBJdCBiYWNrc2xhc2hp
ZmllcwojIG1ldGFjaGFyYWN0ZXJzIHRoYXQgYXJlIHN0aWxsIGFjdGl2ZSB3aXRoaW4gZG91Ymxl
LXF1b3RlZCBzdHJpbmdzLgpYc2VkPSdzZWQgLWUgMXMvXlgvLycKW3NlZF9xdW90ZV9zdWJzdD0n
cy9cKFtcXCJcXGAkXFxcXF1cKS9cXFwxL2cnXQoKIyBTYW1lIGFzIGFib3ZlLCBidXQgZG8gbm90
IHF1b3RlIHZhcmlhYmxlIHJlZmVyZW5jZXMuCltkb3VibGVfcXVvdGVfc3Vic3Q9J3MvXChbXFwi
XFxgXFxcXF1cKS9cXFwxL2cnXQoKIyBTZWQgc3Vic3RpdHV0aW9uIHRvIGRlbGF5IGV4cGFuc2lv
biBvZiBhbiBlc2NhcGVkIHNoZWxsIHZhcmlhYmxlIGluIGEKIyBkb3VibGVfcXVvdGVfc3Vic3Qn
ZWQgc3RyaW5nLgpkZWxheV92YXJpYWJsZV9zdWJzdD0ncy9cXFxcXFxcXFxcXCQvXFxcXFxcJC9n
JwoKIyBTZWQgc3Vic3RpdHV0aW9uIHRvIGF2b2lkIGFjY2lkZW50YWwgZ2xvYmJpbmcgaW4gZXZh
bGVkIGV4cHJlc3Npb25zCm5vX2dsb2Jfc3Vic3Q9J3MvXCovXFxcKi9nJwoKIyBDb25zdGFudHM6
CnJtPSJybSAtZiIKCiMgR2xvYmFsIHZhcmlhYmxlczoKZGVmYXVsdF9vZmlsZT1saWJ0b29sCmNh
bl9idWlsZF9zaGFyZWQ9eWVzCgojIEFsbCBrbm93biBsaW5rZXJzIHJlcXVpcmUgYSBgLmEnIGFy
Y2hpdmUgZm9yIHN0YXRpYyBsaW5raW5nIChleGNlcHQgTVNWQywKIyB3aGljaCBuZWVkcyAnLmxp
YicpLgpsaWJleHQ9YQpsdG1haW49IiRhY19hdXhfZGlyL2x0bWFpbi5zaCIKb2ZpbGU9IiRkZWZh
dWx0X29maWxlIgp3aXRoX2dudV9sZD0iJGx0X2N2X3Byb2dfZ251X2xkIgoKQUNfQ0hFQ0tfVE9P
TChBUiwgYXIsIGZhbHNlKQpBQ19DSEVDS19UT09MKFJBTkxJQiwgcmFubGliLCA6KQpBQ19DSEVD
S19UT09MKFNUUklQLCBzdHJpcCwgOikKCm9sZF9DQz0iJENDIgpvbGRfQ0ZMQUdTPSIkQ0ZMQUdT
IgoKIyBTZXQgc2FuZSBkZWZhdWx0cyBmb3IgdmFyaW91cyB2YXJpYWJsZXMKdGVzdCAteiAiJEFS
IiAmJiBBUj1hcgp0ZXN0IC16ICIkQVJfRkxBR1MiICYmIEFSX0ZMQUdTPWNydQp0ZXN0IC16ICIk
QVMiICYmIEFTPWFzCnRlc3QgLXogIiRDQyIgJiYgQ0M9Y2MKdGVzdCAteiAiJExUQ0MiICYmIExU
Q0M9JENDCnRlc3QgLXogIiRMVENGTEFHUyIgJiYgTFRDRkxBR1M9JENGTEFHUwp0ZXN0IC16ICIk
RExMVE9PTCIgJiYgRExMVE9PTD1kbGx0b29sCnRlc3QgLXogIiRMRCIgJiYgTEQ9bGQKdGVzdCAt
eiAiJExOX1MiICYmIExOX1M9ImxuIC1zIgp0ZXN0IC16ICIkTUFHSUNfQ01EIiAmJiBNQUdJQ19D
TUQ9ZmlsZQp0ZXN0IC16ICIkTk0iICYmIE5NPW5tCnRlc3QgLXogIiRTRUQiICYmIFNFRD1zZWQK
dGVzdCAteiAiJE9CSkRVTVAiICYmIE9CSkRVTVA9b2JqZHVtcAp0ZXN0IC16ICIkUkFOTElCIiAm
JiBSQU5MSUI9Ogp0ZXN0IC16ICIkU1RSSVAiICYmIFNUUklQPToKdGVzdCAteiAiJGFjX29iamV4
dCIgJiYgYWNfb2JqZXh0PW8KCiMgRGV0ZXJtaW5lIGNvbW1hbmRzIHRvIGNyZWF0ZSBvbGQtc3R5
bGUgc3RhdGljIGFyY2hpdmVzLgpvbGRfYXJjaGl2ZV9jbWRzPSckQVIgJEFSX0ZMQUdTICRvbGRs
aWIkb2xkb2JqcyRvbGRfZGVwbGlicycKb2xkX3Bvc3RpbnN0YWxsX2NtZHM9J2NobW9kIDY0NCAk
b2xkbGliJwpvbGRfcG9zdHVuaW5zdGFsbF9jbWRzPQoKaWYgdGVzdCAtbiAiJFJBTkxJQiI7IHRo
ZW4KICBjYXNlICRob3N0X29zIGluCiAgb3BlbmJzZCopCiAgICBvbGRfcG9zdGluc3RhbGxfY21k
cz0iJG9sZF9wb3N0aW5zdGFsbF9jbWRzflwkUkFOTElCIC10IFwkb2xkbGliIgogICAgOzsKICAq
KQogICAgb2xkX3Bvc3RpbnN0YWxsX2NtZHM9IiRvbGRfcG9zdGluc3RhbGxfY21kc35cJFJBTkxJ
QiBcJG9sZGxpYiIKICAgIDs7CiAgZXNhYwogIG9sZF9hcmNoaXZlX2NtZHM9IiRvbGRfYXJjaGl2
ZV9jbWRzflwkUkFOTElCIFwkb2xkbGliIgpmaQoKX0xUX0NDX0JBU0VOQU1FKFskY29tcGlsZXJd
KQoKIyBPbmx5IHBlcmZvcm0gdGhlIGNoZWNrIGZvciBmaWxlLCBpZiB0aGUgY2hlY2sgbWV0aG9k
IHJlcXVpcmVzIGl0CmNhc2UgJGRlcGxpYnNfY2hlY2tfbWV0aG9kIGluCmZpbGVfbWFnaWMqKQog
IGlmIHRlc3QgIiRmaWxlX21hZ2ljX2NtZCIgPSAnJE1BR0lDX0NNRCc7IHRoZW4KICAgIEFDX1BB
VEhfTUFHSUMKICBmaQogIDs7CmVzYWMKCkFDX1BST1ZJREVfSUZFTFNFKFtBQ19MSUJUT09MX0RM
T1BFTl0sIGVuYWJsZV9kbG9wZW49eWVzLCBlbmFibGVfZGxvcGVuPW5vKQpBQ19QUk9WSURFX0lG
RUxTRShbQUNfTElCVE9PTF9XSU4zMl9ETExdLAplbmFibGVfd2luMzJfZGxsPXllcywgZW5hYmxl
X3dpbjMyX2RsbD1ubykKCkFDX0FSR19FTkFCTEUoW2xpYnRvb2wtbG9ja10sCiAgICBbQUNfSEVM
UF9TVFJJTkcoWy0tZGlzYWJsZS1saWJ0b29sLWxvY2tdLAoJW2F2b2lkIGxvY2tpbmcgKG1pZ2h0
IGJyZWFrIHBhcmFsbGVsIGJ1aWxkcyldKV0pCnRlc3QgIngkZW5hYmxlX2xpYnRvb2xfbG9jayIg
IT0geG5vICYmIGVuYWJsZV9saWJ0b29sX2xvY2s9eWVzCgpBQ19BUkdfV0lUSChbcGljXSwKICAg
IFtBQ19IRUxQX1NUUklORyhbLS13aXRoLXBpY10sCglbdHJ5IHRvIHVzZSBvbmx5IFBJQy9ub24t
UElDIG9iamVjdHMgQDw6QGRlZmF1bHQ9dXNlIGJvdGhAOj5AXSldLAogICAgW3BpY19tb2RlPSIk
d2l0aHZhbCJdLAogICAgW3BpY19tb2RlPWRlZmF1bHRdKQp0ZXN0IC16ICIkcGljX21vZGUiICYm
IHBpY19tb2RlPWRlZmF1bHQKCiMgQ2hlY2sgaWYgd2UgaGF2ZSBhIHZlcnNpb24gbWlzbWF0Y2gg
YmV0d2VlbiBsaWJ0b29sLm00IGFuZCBsdG1haW4uc2guCiMKIyBOb3RlOiAgVGhpcyBzaG91bGQg
YmUgaW4gQUNfTElCVE9PTF9TRVRVUCwgX2FmdGVyXyAkbHRtYWluIGhhdmUgYmVlbiBkZWZpbmVk
LgojICAgICAgICBXZSBhbHNvIHNob3VsZCBkbyBpdCBfYmVmb3JlXyBBQ19MSUJUT09MX0xBTkdf
Q19DT05GSUcgdGhhdCBhY3R1YWxseQojICAgICAgICBjYWxscyBBQ19MSUJUT09MX0NPTkZJRyBh
bmQgY3JlYXRlcyBsaWJ0b29sLgojCl9MVF9WRVJTSU9OX0NIRUNLCgojIFVzZSBDIGZvciB0aGUg
ZGVmYXVsdCBjb25maWd1cmF0aW9uIGluIHRoZSBsaWJ0b29sIHNjcmlwdAp0YWduYW1lPQpBQ19M
SUJUT09MX0xBTkdfQ19DT05GSUcKX0xUX0FDX1RBR0NPTkZJRwpdKSMgQUNfTElCVE9PTF9TRVRV
UAoKCiMgX0xUX1ZFUlNJT05fQ0hFQ0sKIyAtLS0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihbX0xU
X1ZFUlNJT05fQ0hFQ0tdLApbQUNfTVNHX0NIRUNLSU5HKFtmb3IgY29ycmVjdCBsdG1haW4uc2gg
dmVyc2lvbl0pCmlmIHRlc3QgIngkbHRtYWluIiA9ICJ4IiA7IHRoZW4KICBBQ19NU0dfUkVTVUxU
KG5vKQogIEFDX01TR19FUlJPUihbCgoqKiogQDw6QEdlbnRvb0A6PkAgc2FuaXR5IGNoZWNrIGZh
aWxlZCEgKioqCioqKiBcJGx0bWFpbiBpcyBub3QgZGVmaW5lZCwgcGxlYXNlIGNoZWNrIHRoZSBw
YXRjaCBmb3IgY29uc2lzdGVuY3khICoqKgpdKQpmaQpnZW50b29fbHRfdmVyc2lvbj0iMS41LjIy
IgpnZW50b29fbHRtYWluX3ZlcnNpb249YHNlZCAtbiAnL15bWyAJXV0qVkVSU0lPTj0ve3MvXltb
IAldXSpWRVJTSU9OPS8vO3A7cTt9JyAiJGx0bWFpbiJgCmlmIHRlc3QgIngkZ2VudG9vX2x0X3Zl
cnNpb24iICE9ICJ4JGdlbnRvb19sdG1haW5fdmVyc2lvbiIgOyB0aGVuCiAgQUNfTVNHX1JFU1VM
VChubykKICBBQ19NU0dfRVJST1IoWwoKKioqIEA8OkBHZW50b29AOj5AIHNhbml0eSBjaGVjayBm
YWlsZWQhICoqKgoqKiogbGlidG9vbC5tNCBhbmQgbHRtYWluLnNoIGhhdmUgYSB2ZXJzaW9uIG1p
c21hdGNoISAqKioKKioqIChsaWJ0b29sLm00ID0gJGdlbnRvb19sdF92ZXJzaW9uLCBsdG1haW4u
c2ggPSAkZ2VudG9vX2x0bWFpbl92ZXJzaW9uKSAqKioKClBsZWFzZSBydW46CgogIGxpYnRvb2xp
emUgLS1jb3B5IC0tZm9yY2UKCmlmIGFwcHJvcHJpYXRlLCBwbGVhc2UgY29udGFjdCB0aGUgbWFp
bnRhaW5lciBvZiB0aGlzCnBhY2thZ2UgKG9yIHlvdXIgZGlzdHJpYnV0aW9uKSBmb3IgaGVscC4K
XSkKZWxzZQogIEFDX01TR19SRVNVTFQoeWVzKQpmaQpdKSMgX0xUX1ZFUlNJT05fQ0hFQ0sKCgoj
IF9MVF9BQ19TWVNfQ09NUElMRVIKIyAtLS0tLS0tLS0tLS0tLS0tLS0tCkFDX0RFRlVOKFtfTFRf
QUNfU1lTX0NPTVBJTEVSXSwKW0FDX1JFUVVJUkUoW0FDX1BST0dfQ0NdKWRubAoKIyBJZiBubyBD
IGNvbXBpbGVyIHdhcyBzcGVjaWZpZWQsIHVzZSBDQy4KTFRDQz0ke0xUQ0MtIiRDQyJ9CgojIElm
IG5vIEMgY29tcGlsZXIgZmxhZ3Mgd2VyZSBzcGVjaWZpZWQsIHVzZSBDRkxBR1MuCkxUQ0ZMQUdT
PSR7TFRDRkxBR1MtIiRDRkxBR1MifQoKIyBBbGxvdyBDQyB0byBiZSBhIHByb2dyYW0gbmFtZSB3
aXRoIGFyZ3VtZW50cy4KY29tcGlsZXI9JENDCl0pIyBfTFRfQUNfU1lTX0NPTVBJTEVSCgoKIyBf
TFRfQ0NfQkFTRU5BTUUoQ0MpCiMgLS0tLS0tLS0tLS0tLS0tLS0tLQojIENhbGN1bGF0ZSBjY19i
YXNlbmFtZS4gIFNraXAga25vd24gY29tcGlsZXIgd3JhcHBlcnMgYW5kIGNyb3NzLXByZWZpeC4K
QUNfREVGVU4oW19MVF9DQ19CQVNFTkFNRV0sCltmb3IgY2NfdGVtcCBpbiAkMSIiOyBkbwogIGNh
c2UgJGNjX3RlbXAgaW4KICAgIGNvbXBpbGUgfCAqW1tcXC9dXWNvbXBpbGUgfCBjY2FjaGUgfCAq
W1tcXC9dXWNjYWNoZSApIDs7CiAgICBkaXN0Y2MgfCAqW1tcXC9dXWRpc3RjYyB8IHB1cmlmeSB8
ICpbW1xcL11dcHVyaWZ5ICkgOzsKICAgIFwtKikgOzsKICAgICopIGJyZWFrOzsKICBlc2FjCmRv
bmUKY2NfYmFzZW5hbWU9YCRlY2hvICJYJGNjX3RlbXAiIHwgJFhzZWQgLWUgJ3MlLiovJSUnIC1l
ICJzJV4kaG9zdF9hbGlhcy0lJSJgCl0pCgoKIyBfTFRfQ09NUElMRVJfQk9JTEVSUExBVEUKIyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDaGVjayBmb3IgY29tcGlsZXIgYm9pbGVycGxhdGUg
b3V0cHV0IG9yIHdhcm5pbmdzIHdpdGgKIyB0aGUgc2ltcGxlIGNvbXBpbGVyIHRlc3QgY29kZS4K
QUNfREVGVU4oW19MVF9DT01QSUxFUl9CT0lMRVJQTEFURV0sClthY19vdXRmaWxlPWNvbmZ0ZXN0
LiRhY19vYmpleHQKcHJpbnRmICIkbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlIiA+Y29uZnRl
c3QuJGFjX2V4dApldmFsICIkYWNfY29tcGlsZSIgMj4mMSA+L2Rldi9udWxsIHwgJFNFRCAnL14k
L2Q7IC9eICorL2QnID5jb25mdGVzdC5lcnIKX2x0X2NvbXBpbGVyX2JvaWxlcnBsYXRlPWBjYXQg
Y29uZnRlc3QuZXJyYAokcm0gY29uZnRlc3QqCl0pIyBfTFRfQ09NUElMRVJfQk9JTEVSUExBVEUK
CgojIF9MVF9MSU5LRVJfQk9JTEVSUExBVEUKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hl
Y2sgZm9yIGxpbmtlciBib2lsZXJwbGF0ZSBvdXRwdXQgb3Igd2FybmluZ3Mgd2l0aAojIHRoZSBz
aW1wbGUgbGluayB0ZXN0IGNvZGUuCkFDX0RFRlVOKFtfTFRfTElOS0VSX0JPSUxFUlBMQVRFXSwK
W2FjX291dGZpbGU9Y29uZnRlc3QuJGFjX29iamV4dApwcmludGYgIiRsdF9zaW1wbGVfbGlua190
ZXN0X2NvZGUiID5jb25mdGVzdC4kYWNfZXh0CmV2YWwgIiRhY19saW5rIiAyPiYxID4vZGV2L251
bGwgfCAkU0VEICcvXiQvZDsgL14gKisvZCcgPmNvbmZ0ZXN0LmVycgpfbHRfbGlua2VyX2JvaWxl
cnBsYXRlPWBjYXQgY29uZnRlc3QuZXJyYAokcm0gY29uZnRlc3QqCl0pIyBfTFRfTElOS0VSX0JP
SUxFUlBMQVRFCgoKIyBfTFRfQUNfU1lTX0xJQlBBVEhfQUlYCiMgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQojIExpbmtzIGEgbWluaW1hbCBwcm9ncmFtIGFuZCBjaGVja3MgdGhlIGV4ZWN1dGFibGUK
IyBmb3IgdGhlIHN5c3RlbSBkZWZhdWx0IGhhcmRjb2RlZCBsaWJyYXJ5IHBhdGguIEluIG1vc3Qg
Y2FzZXMsCiMgdGhpcyBpcyAvdXNyL2xpYjovbGliLCBidXQgd2hlbiB0aGUgTVBJIGNvbXBpbGVy
cyBhcmUgdXNlZAojIHRoZSBsb2NhdGlvbiBvZiB0aGUgY29tbXVuaWNhdGlvbiBhbmQgTVBJIGxp
YnMgYXJlIGluY2x1ZGVkIHRvby4KIyBJZiB3ZSBkb24ndCBmaW5kIGFueXRoaW5nLCB1c2UgdGhl
IGRlZmF1bHQgbGlicmFyeSBwYXRoIGFjY29yZGluZwojIHRvIHRoZSBhaXggbGQgbWFudWFsLgpB
Q19ERUZVTihbX0xUX0FDX1NZU19MSUJQQVRIX0FJWF0sCltBQ19MSU5LX0lGRUxTRShBQ19MQU5H
X1BST0dSQU0sWwphaXhfbGlicGF0aD1gZHVtcCAtSCBjb25mdGVzdCRhY19leGVleHQgMj4vZGV2
L251bGwgfCAkU0VEIC1uIC1lICcvSW1wb3J0IEZpbGUgU3RyaW5ncy8sL14kLyB7IC9eMC8geyBz
L14wICAqXCguKlwpJC9cMS87IHA7IH0KfSdgCiMgQ2hlY2sgZm9yIGEgNjQtYml0IG9iamVjdCBp
ZiB3ZSBkaWRuJ3QgZmluZCBhbnl0aGluZy4KaWYgdGVzdCAteiAiJGFpeF9saWJwYXRoIjsgdGhl
biBhaXhfbGlicGF0aD1gZHVtcCAtSFg2NCBjb25mdGVzdCRhY19leGVleHQgMj4vZGV2L251bGwg
fCAkU0VEIC1uIC1lICcvSW1wb3J0IEZpbGUgU3RyaW5ncy8sL14kLyB7IC9eMC8geyBzL14wICAq
XCguKlwpJC9cMS87IHA7IH0KfSdgOyBmaV0sW10pCmlmIHRlc3QgLXogIiRhaXhfbGlicGF0aCI7
IHRoZW4gYWl4X2xpYnBhdGg9Ii91c3IvbGliOi9saWIiOyBmaQpdKSMgX0xUX0FDX1NZU19MSUJQ
QVRIX0FJWAoKCiMgX0xUX0FDX1NIRUxMX0lOSVQoQVJHKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KQUNfREVGVU4oW19MVF9BQ19TSEVMTF9JTklUXSwKW2lmZGVmKFtBQ19ESVZFUlNJT05fTk9U
SUNFXSwKCSAgICAgW0FDX0RJVkVSVF9QVVNIKEFDX0RJVkVSU0lPTl9OT1RJQ0UpXSwKCSBbQUNf
RElWRVJUX1BVU0goTk9USUNFKV0pCiQxCkFDX0RJVkVSVF9QT1AKXSkjIF9MVF9BQ19TSEVMTF9J
TklUCgoKIyBfTFRfQUNfUFJPR19FQ0hPX0JBQ0tTTEFTSAojIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCiMgQWRkIHNvbWUgY29kZSB0byB0aGUgc3RhcnQgb2YgdGhlIGdlbmVyYXRlZCBjb25m
aWd1cmUgc2NyaXB0IHdoaWNoCiMgd2lsbCBmaW5kIGFuIGVjaG8gY29tbWFuZCB3aGljaCBkb2Vz
bid0IGludGVycHJldCBiYWNrc2xhc2hlcy4KQUNfREVGVU4oW19MVF9BQ19QUk9HX0VDSE9fQkFD
S1NMQVNIXSwKW19MVF9BQ19TSEVMTF9JTklUKFsKIyBDaGVjayB0aGF0IHdlIGFyZSBydW5uaW5n
IHVuZGVyIHRoZSBjb3JyZWN0IHNoZWxsLgpTSEVMTD0ke0NPTkZJR19TSEVMTC0vYmluL3NofQoK
Y2FzZSBYJEVDSE8gaW4KWCotLWZhbGxiYWNrLWVjaG8pCiAgIyBSZW1vdmUgb25lIGxldmVsIG9m
IHF1b3RhdGlvbiAod2hpY2ggd2FzIHJlcXVpcmVkIGZvciBNYWtlKS4KICBFQ0hPPWBlY2hvICIk
RUNITyIgfCBzZWQgJ3MsXFxcXFxbJF1cXFskXTAsJ1skXTAnLCdgCiAgOzsKZXNhYwoKZWNobz0k
e0VDSE8tZWNob30KaWYgdGVzdCAiWFskXTEiID0gWC0tbm8tcmVleGVjOyB0aGVuCiAgIyBEaXNj
YXJkIHRoZSAtLW5vLXJlZXhlYyBmbGFnLCBhbmQgY29udGludWUuCiAgc2hpZnQKZWxpZiB0ZXN0
ICJYWyRdMSIgPSBYLS1mYWxsYmFjay1lY2hvOyB0aGVuCiAgIyBBdm9pZCBpbmxpbmUgZG9jdW1l
bnQgaGVyZSwgaXQgbWF5IGJlIGxlZnQgb3ZlcgogIDoKZWxpZiB0ZXN0ICJYYCgkZWNobyAnXHQn
KSAyPi9kZXYvbnVsbGAiID0gJ1hcdCcgOyB0aGVuCiAgIyBZaXBwZWUsICRlY2hvIHdvcmtzIQog
IDoKZWxzZQogICMgUmVzdGFydCB1bmRlciB0aGUgY29ycmVjdCBzaGVsbC4KICBleGVjICRTSEVM
TCAiWyRdMCIgLS1uby1yZWV4ZWMgJHsxKyJbJF1AIn0KZmkKCmlmIHRlc3QgIlhbJF0xIiA9IFgt
LWZhbGxiYWNrLWVjaG87IHRoZW4KICAjIHVzZWQgYXMgZmFsbGJhY2sgZWNobwogIHNoaWZ0CiAg
Y2F0IDw8RU9GClskXSoKRU9GCiAgZXhpdCAwCmZpCgojIFRoZSBIUC1VWCBrc2ggYW5kIFBPU0lY
IHNoZWxsIHByaW50IHRoZSB0YXJnZXQgZGlyZWN0b3J5IHRvIHN0ZG91dAojIGlmIENEUEFUSCBp
cyBzZXQuCih1bnNldCBDRFBBVEgpID4vZGV2L251bGwgMj4mMSAmJiB1bnNldCBDRFBBVEgKCmlm
IHRlc3QgLXogIiRFQ0hPIjsgdGhlbgppZiB0ZXN0ICJYJHtlY2hvX3Rlc3Rfc3RyaW5nK3NldH0i
ICE9IFhzZXQ7IHRoZW4KIyBmaW5kIGEgc3RyaW5nIGFzIGxhcmdlIGFzIHBvc3NpYmxlLCBhcyBs
b25nIGFzIHRoZSBzaGVsbCBjYW4gY29wZSB3aXRoIGl0CiAgZm9yIGNtZCBpbiAnc2VkIDUwcSAi
WyRdMCInICdzZWQgMjBxICJbJF0wIicgJ3NlZCAxMHEgIlskXTAiJyAnc2VkIDJxICJbJF0wIicg
J2VjaG8gdGVzdCc7IGRvCiAgICAjIGV4cGVjdGVkIHNpemVzOiBsZXNzIHRoYW4gMktiLCAxS2Is
IDUxMiBieXRlcywgMTYgYnl0ZXMsIC4uLgogICAgaWYgKGVjaG9fdGVzdF9zdHJpbmc9YGV2YWwg
JGNtZGApIDI+L2Rldi9udWxsICYmCiAgICAgICBlY2hvX3Rlc3Rfc3RyaW5nPWBldmFsICRjbWRg
ICYmCiAgICAgICAodGVzdCAiWCRlY2hvX3Rlc3Rfc3RyaW5nIiA9ICJYJGVjaG9fdGVzdF9zdHJp
bmciKSAyPi9kZXYvbnVsbAogICAgdGhlbgogICAgICBicmVhawogICAgZmkKICBkb25lCmZpCgpp
ZiB0ZXN0ICJYYCgkZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCcgJiYKICAgZWNob190
ZXN0aW5nX3N0cmluZz1gKCRlY2hvICIkZWNob190ZXN0X3N0cmluZyIpIDI+L2Rldi9udWxsYCAm
JgogICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0cmluZyI7
IHRoZW4KICA6CmVsc2UKICAjIFRoZSBTb2xhcmlzLCBBSVgsIGFuZCBEaWdpdGFsIFVuaXggZGVm
YXVsdCBlY2hvIHByb2dyYW1zIHVucXVvdGUKICAjIGJhY2tzbGFzaGVzLiAgVGhpcyBtYWtlcyBp
dCBpbXBvc3NpYmxlIHRvIHF1b3RlIGJhY2tzbGFzaGVzIHVzaW5nCiAgIyAgIGVjaG8gIiRzb21l
dGhpbmciIHwgc2VkICdzL1xcL1xcXFwvZycKICAjCiAgIyBTbywgZmlyc3Qgd2UgbG9vayBmb3Ig
YSB3b3JraW5nIGVjaG8gaW4gdGhlIHVzZXIncyBQQVRILgoKICBsdF9zYXZlX2lmcz0iJElGUyI7
IElGUz0kUEFUSF9TRVBBUkFUT1IKICBmb3IgZGlyIGluICRQQVRIIC91c3IvdWNiOyBkbwogICAg
SUZTPSIkbHRfc2F2ZV9pZnMiCiAgICBpZiAodGVzdCAtZiAkZGlyL2VjaG8gfHwgdGVzdCAtZiAk
ZGlyL2VjaG8kYWNfZXhlZXh0KSAmJgogICAgICAgdGVzdCAiWGAoJGRpci9lY2hvICdcdCcpIDI+
L2Rldi9udWxsYCIgPSAnWFx0JyAmJgogICAgICAgZWNob190ZXN0aW5nX3N0cmluZz1gKCRkaXIv
ZWNobyAiJGVjaG9fdGVzdF9zdHJpbmciKSAyPi9kZXYvbnVsbGAgJiYKICAgICAgIHRlc3QgIlgk
ZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRlY2hvX3Rlc3Rfc3RyaW5nIjsgdGhlbgogICAgICBl
Y2hvPSIkZGlyL2VjaG8iCiAgICAgIGJyZWFrCiAgICBmaQogIGRvbmUKICBJRlM9IiRsdF9zYXZl
X2lmcyIKCiAgaWYgdGVzdCAiWCRlY2hvIiA9IFhlY2hvOyB0aGVuCiAgICAjIFdlIGRpZG4ndCBm
aW5kIGEgYmV0dGVyIGVjaG8sIHNvIGxvb2sgZm9yIGFsdGVybmF0aXZlcy4KICAgIGlmIHRlc3Qg
IlhgKHByaW50IC1yICdcdCcpIDI+L2Rldi9udWxsYCIgPSAnWFx0JyAmJgogICAgICAgZWNob190
ZXN0aW5nX3N0cmluZz1gKHByaW50IC1yICIkZWNob190ZXN0X3N0cmluZyIpIDI+L2Rldi9udWxs
YCAmJgogICAgICAgdGVzdCAiWCRlY2hvX3Rlc3Rpbmdfc3RyaW5nIiA9ICJYJGVjaG9fdGVzdF9z
dHJpbmciOyB0aGVuCiAgICAgICMgVGhpcyBzaGVsbCBoYXMgYSBidWlsdGluIHByaW50IC1yIHRo
YXQgZG9lcyB0aGUgdHJpY2suCiAgICAgIGVjaG89J3ByaW50IC1yJwogICAgZWxpZiAodGVzdCAt
ZiAvYmluL2tzaCB8fCB0ZXN0IC1mIC9iaW4va3NoJGFjX2V4ZWV4dCkgJiYKCSB0ZXN0ICJYJENP
TkZJR19TSEVMTCIgIT0gWC9iaW4va3NoOyB0aGVuCiAgICAgICMgSWYgd2UgaGF2ZSBrc2gsIHRy
eSBydW5uaW5nIGNvbmZpZ3VyZSBhZ2FpbiB3aXRoIGl0LgogICAgICBPUklHSU5BTF9DT05GSUdf
U0hFTEw9JHtDT05GSUdfU0hFTEwtL2Jpbi9zaH0KICAgICAgZXhwb3J0IE9SSUdJTkFMX0NPTkZJ
R19TSEVMTAogICAgICBDT05GSUdfU0hFTEw9L2Jpbi9rc2gKICAgICAgZXhwb3J0IENPTkZJR19T
SEVMTAogICAgICBleGVjICRDT05GSUdfU0hFTEwgIlskXTAiIC0tbm8tcmVleGVjICR7MSsiWyRd
QCJ9CiAgICBlbHNlCiAgICAgICMgVHJ5IHVzaW5nIHByaW50Zi4KICAgICAgZWNobz0ncHJpbnRm
ICVzXG4nCiAgICAgIGlmIHRlc3QgIlhgKCRlY2hvICdcdCcpIDI+L2Rldi9udWxsYCIgPSAnWFx0
JyAmJgoJIGVjaG9fdGVzdGluZ19zdHJpbmc9YCgkZWNobyAiJGVjaG9fdGVzdF9zdHJpbmciKSAy
Pi9kZXYvbnVsbGAgJiYKCSB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190
ZXN0X3N0cmluZyI7IHRoZW4KCSMgQ29vbCwgcHJpbnRmIHdvcmtzCgk6CiAgICAgIGVsaWYgZWNo
b190ZXN0aW5nX3N0cmluZz1gKCRPUklHSU5BTF9DT05GSUdfU0hFTEwgIlskXTAiIC0tZmFsbGJh
Y2stZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAgJiYKCSAgIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0
cmluZyIgPSAnWFx0JyAmJgoJICAgZWNob190ZXN0aW5nX3N0cmluZz1gKCRPUklHSU5BTF9DT05G
SUdfU0hFTEwgIlskXTAiIC0tZmFsbGJhY2stZWNobyAiJGVjaG9fdGVzdF9zdHJpbmciKSAyPi9k
ZXYvbnVsbGAgJiYKCSAgIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRlY2hvX3Rl
c3Rfc3RyaW5nIjsgdGhlbgoJQ09ORklHX1NIRUxMPSRPUklHSU5BTF9DT05GSUdfU0hFTEwKCWV4
cG9ydCBDT05GSUdfU0hFTEwKCVNIRUxMPSIkQ09ORklHX1NIRUxMIgoJZXhwb3J0IFNIRUxMCgll
Y2hvPSIkQ09ORklHX1NIRUxMIFskXTAgLS1mYWxsYmFjay1lY2hvIgogICAgICBlbGlmIGVjaG9f
dGVzdGluZ19zdHJpbmc9YCgkQ09ORklHX1NIRUxMICJbJF0wIiAtLWZhbGxiYWNrLWVjaG8gJ1x0
JykgMj4vZGV2L251bGxgICYmCgkgICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gJ1hc
dCcgJiYKCSAgIGVjaG9fdGVzdGluZ19zdHJpbmc9YCgkQ09ORklHX1NIRUxMICJbJF0wIiAtLWZh
bGxiYWNrLWVjaG8gIiRlY2hvX3Rlc3Rfc3RyaW5nIikgMj4vZGV2L251bGxgICYmCgkgICB0ZXN0
ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0cmluZyI7IHRoZW4KCWVj
aG89IiRDT05GSUdfU0hFTEwgWyRdMCAtLWZhbGxiYWNrLWVjaG8iCiAgICAgIGVsc2UKCSMgbWF5
YmUgd2l0aCBhIHNtYWxsZXIgc3RyaW5nLi4uCglwcmV2PToKCglmb3IgY21kIGluICdlY2hvIHRl
c3QnICdzZWQgMnEgIlskXTAiJyAnc2VkIDEwcSAiWyRdMCInICdzZWQgMjBxICJbJF0wIicgJ3Nl
ZCA1MHEgIlskXTAiJzsgZG8KCSAgaWYgKHRlc3QgIlgkZWNob190ZXN0X3N0cmluZyIgPSAiWGBl
dmFsICRjbWRgIikgMj4vZGV2L251bGwKCSAgdGhlbgoJICAgIGJyZWFrCgkgIGZpCgkgIHByZXY9
IiRjbWQiCglkb25lCgoJaWYgdGVzdCAiJHByZXYiICE9ICdzZWQgNTBxICJbJF0wIic7IHRoZW4K
CSAgZWNob190ZXN0X3N0cmluZz1gZXZhbCAkcHJldmAKCSAgZXhwb3J0IGVjaG9fdGVzdF9zdHJp
bmcKCSAgZXhlYyAke09SSUdJTkFMX0NPTkZJR19TSEVMTC0ke0NPTkZJR19TSEVMTC0vYmluL3No
fX0gIlskXTAiICR7MSsiWyRdQCJ9CgllbHNlCgkgICMgT29wcy4gIFdlIGxvc3QgY29tcGxldGVs
eSwgc28ganVzdCBzdGljayB3aXRoIGVjaG8uCgkgIGVjaG89ZWNobwoJZmkKICAgICAgZmkKICAg
IGZpCiAgZmkKZmkKZmkKCiMgQ29weSBlY2hvIGFuZCBxdW90ZSB0aGUgY29weSBzdWl0YWJseSBm
b3IgcGFzc2luZyB0byBsaWJ0b29sIGZyb20KIyB0aGUgTWFrZWZpbGUsIGluc3RlYWQgb2YgcXVv
dGluZyB0aGUgb3JpZ2luYWwsIHdoaWNoIGlzIHVzZWQgbGF0ZXIuCkVDSE89JGVjaG8KaWYgdGVz
dCAiWCRFQ0hPIiA9ICJYJENPTkZJR19TSEVMTCBbJF0wIC0tZmFsbGJhY2stZWNobyI7IHRoZW4K
ICAgRUNITz0iJENPTkZJR19TSEVMTCBcXFwkXFskXTAgLS1mYWxsYmFjay1lY2hvIgpmaQoKQUNf
U1VCU1QoRUNITykKXSldKSMgX0xUX0FDX1BST0dfRUNIT19CQUNLU0xBU0gKCgojIF9MVF9BQ19M
T0NLCiMgLS0tLS0tLS0tLS0KQUNfREVGVU4oW19MVF9BQ19MT0NLXSwKW0FDX0FSR19FTkFCTEUo
W2xpYnRvb2wtbG9ja10sCiAgICBbQUNfSEVMUF9TVFJJTkcoWy0tZGlzYWJsZS1saWJ0b29sLWxv
Y2tdLAoJW2F2b2lkIGxvY2tpbmcgKG1pZ2h0IGJyZWFrIHBhcmFsbGVsIGJ1aWxkcyldKV0pCnRl
c3QgIngkZW5hYmxlX2xpYnRvb2xfbG9jayIgIT0geG5vICYmIGVuYWJsZV9saWJ0b29sX2xvY2s9
eWVzCgojIFNvbWUgZmxhZ3MgbmVlZCB0byBiZSBwcm9wYWdhdGVkIHRvIHRoZSBjb21waWxlciBv
ciBsaW5rZXIgZm9yIGdvb2QKIyBsaWJ0b29sIHN1cHBvcnQuCmNhc2UgJGhvc3QgaW4KaWE2NC0q
LWhwdXgqKQogICMgRmluZCBvdXQgd2hpY2ggQUJJIHdlIGFyZSB1c2luZy4KICBlY2hvICdpbnQg
aTsnID4gY29uZnRlc3QuJGFjX2V4dAogIGlmIEFDX1RSWV9FVkFMKGFjX2NvbXBpbGUpOyB0aGVu
CiAgICBjYXNlIGAvdXNyL2Jpbi9maWxlIGNvbmZ0ZXN0LiRhY19vYmpleHRgIGluCiAgICAqRUxG
LTMyKikKICAgICAgSFBVWF9JQTY0X01PREU9IjMyIgogICAgICA7OwogICAgKkVMRi02NCopCiAg
ICAgIEhQVVhfSUE2NF9NT0RFPSI2NCIKICAgICAgOzsKICAgIGVzYWMKICBmaQogIHJtIC1yZiBj
b25mdGVzdCoKICA7OwoqLSotaXJpeDYqKQogICMgRmluZCBvdXQgd2hpY2ggQUJJIHdlIGFyZSB1
c2luZy4KICBlY2hvICdbI11saW5lIF9fb2xpbmVfXyAiY29uZmlndXJlIicgPiBjb25mdGVzdC4k
YWNfZXh0CiAgaWYgQUNfVFJZX0VWQUwoYWNfY29tcGlsZSk7IHRoZW4KICAgaWYgdGVzdCAiJGx0
X2N2X3Byb2dfZ251X2xkIiA9IHllczsgdGhlbgogICAgY2FzZSBgL3Vzci9iaW4vZmlsZSBjb25m
dGVzdC4kYWNfb2JqZXh0YCBpbgogICAgKjMyLWJpdCopCiAgICAgIExEPSIke0xELWxkfSAtbWVs
ZjMyYnNtaXAiCiAgICAgIDs7CiAgICAqTjMyKikKICAgICAgTEQ9IiR7TEQtbGR9IC1tZWxmMzJi
bWlwbjMyIgogICAgICA7OwogICAgKjY0LWJpdCopCiAgICAgIExEPSIke0xELWxkfSAtbWVsZjY0
Ym1pcCIKICAgICAgOzsKICAgIGVzYWMKICAgZWxzZQogICAgY2FzZSBgL3Vzci9iaW4vZmlsZSBj
b25mdGVzdC4kYWNfb2JqZXh0YCBpbgogICAgKjMyLWJpdCopCiAgICAgIExEPSIke0xELWxkfSAt
MzIiCiAgICAgIDs7CiAgICAqTjMyKikKICAgICAgTEQ9IiR7TEQtbGR9IC1uMzIiCiAgICAgIDs7
CiAgICAqNjQtYml0KikKICAgICAgTEQ9IiR7TEQtbGR9IC02NCIKICAgICAgOzsKICAgIGVzYWMK
ICAgZmkKICBmaQogIHJtIC1yZiBjb25mdGVzdCoKICA7OwoKeDg2XzY0LSpsaW51eCp8cHBjKi0q
bGludXgqfHBvd2VycGMqLSpsaW51eCp8czM5MCotKmxpbnV4KnxzcGFyYyotKmxpbnV4KikKICAj
IEZpbmQgb3V0IHdoaWNoIEFCSSB3ZSBhcmUgdXNpbmcuCiAgZWNobyAnaW50IGk7JyA+IGNvbmZ0
ZXN0LiRhY19leHQKICBpZiBBQ19UUllfRVZBTChhY19jb21waWxlKTsgdGhlbgogICAgY2FzZSBg
L3Vzci9iaW4vZmlsZSBjb25mdGVzdC5vYCBpbgogICAgKjMyLWJpdCopCiAgICAgIGNhc2UgJGhv
c3QgaW4KICAgICAgICB4ODZfNjQtKmxpbnV4KikKICAgICAgICAgIExEPSIke0xELWxkfSAtbSBl
bGZfaTM4NiIKICAgICAgICAgIDs7CiAgICAgICAgcHBjNjQtKmxpbnV4Knxwb3dlcnBjNjQtKmxp
bnV4KikKICAgICAgICAgIExEPSIke0xELWxkfSAtbSBlbGYzMnBwY2xpbnV4IgogICAgICAgICAg
OzsKICAgICAgICBzMzkweC0qbGludXgqKQogICAgICAgICAgTEQ9IiR7TEQtbGR9IC1tIGVsZl9z
MzkwIgogICAgICAgICAgOzsKICAgICAgICBzcGFyYzY0LSpsaW51eCopCiAgICAgICAgICBMRD0i
JHtMRC1sZH0gLW0gZWxmMzJfc3BhcmMiCiAgICAgICAgICA7OwogICAgICBlc2FjCiAgICAgIDs7
CiAgICAqNjQtYml0KikKICAgICAgY2FzZSAkaG9zdCBpbgogICAgICAgIHg4Nl82NC0qbGludXgq
KQogICAgICAgICAgTEQ9IiR7TEQtbGR9IC1tIGVsZl94ODZfNjQiCiAgICAgICAgICA7OwogICAg
ICAgIHBwYyotKmxpbnV4Knxwb3dlcnBjKi0qbGludXgqKQogICAgICAgICAgTEQ9IiR7TEQtbGR9
IC1tIGVsZjY0cHBjIgogICAgICAgICAgOzsKICAgICAgICBzMzkwKi0qbGludXgqKQogICAgICAg
ICAgTEQ9IiR7TEQtbGR9IC1tIGVsZjY0X3MzOTAiCiAgICAgICAgICA7OwogICAgICAgIHNwYXJj
Ki0qbGludXgqKQogICAgICAgICAgTEQ9IiR7TEQtbGR9IC1tIGVsZjY0X3NwYXJjIgogICAgICAg
ICAgOzsKICAgICAgZXNhYwogICAgICA7OwogICAgZXNhYwogIGZpCiAgcm0gLXJmIGNvbmZ0ZXN0
KgogIDs7CgoqLSotc2NvMy4ydjUqKQogICMgT24gU0NPIE9wZW5TZXJ2ZXIgNSwgd2UgbmVlZCAt
YmVsZiB0byBnZXQgZnVsbC1mZWF0dXJlZCBiaW5hcmllcy4KICBTQVZFX0NGTEFHUz0iJENGTEFH
UyIKICBDRkxBR1M9IiRDRkxBR1MgLWJlbGYiCiAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgdGhl
IEMgY29tcGlsZXIgbmVlZHMgLWJlbGZdLCBsdF9jdl9jY19uZWVkc19iZWxmLAogICAgW0FDX0xB
TkdfUFVTSChDKQogICAgIEFDX1RSWV9MSU5LKFtdLFtdLFtsdF9jdl9jY19uZWVkc19iZWxmPXll
c10sW2x0X2N2X2NjX25lZWRzX2JlbGY9bm9dKQogICAgIEFDX0xBTkdfUE9QXSkKICBpZiB0ZXN0
IHgiJGx0X2N2X2NjX25lZWRzX2JlbGYiICE9IHgieWVzIjsgdGhlbgogICAgIyB0aGlzIGlzIHBy
b2JhYmx5IGdjYyAyLjguMCwgZWdjcyAxLjAgb3IgbmV3ZXI7IG5vIG5lZWQgZm9yIC1iZWxmCiAg
ICBDRkxBR1M9IiRTQVZFX0NGTEFHUyIKICBmaQogIDs7CnNwYXJjKi0qc29sYXJpcyopCiAgIyBG
aW5kIG91dCB3aGljaCBBQkkgd2UgYXJlIHVzaW5nLgogIGVjaG8gJ2ludCBpOycgPiBjb25mdGVz
dC4kYWNfZXh0CiAgaWYgQUNfVFJZX0VWQUwoYWNfY29tcGlsZSk7IHRoZW4KICAgIGNhc2UgYC91
c3IvYmluL2ZpbGUgY29uZnRlc3Qub2AgaW4KICAgICo2NC1iaXQqKQogICAgICBjYXNlICRsdF9j
dl9wcm9nX2dudV9sZCBpbgogICAgICB5ZXMqKSBMRD0iJHtMRC1sZH0gLW0gZWxmNjRfc3BhcmMi
IDs7CiAgICAgICopICAgIExEPSIke0xELWxkfSAtNjQiIDs7CiAgICAgIGVzYWMKICAgICAgOzsK
ICAgIGVzYWMKICBmaQogIHJtIC1yZiBjb25mdGVzdCoKICA7OwoKQUNfUFJPVklERV9JRkVMU0Uo
W0FDX0xJQlRPT0xfV0lOMzJfRExMXSwKWyotKi1jeWd3aW4qIHwgKi0qLW1pbmd3KiB8ICotKi1w
dzMyKikKICBBQ19DSEVDS19UT09MKERMTFRPT0wsIGRsbHRvb2wsIGZhbHNlKQogIEFDX0NIRUNL
X1RPT0woQVMsIGFzLCBmYWxzZSkKICBBQ19DSEVDS19UT09MKE9CSkRVTVAsIG9iamR1bXAsIGZh
bHNlKQogIDs7CiAgXSkKZXNhYwoKbmVlZF9sb2Nrcz0iJGVuYWJsZV9saWJ0b29sX2xvY2siCgpd
KSMgX0xUX0FDX0xPQ0sKCgojIEFDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OKE1FU1NBR0UsIFZB
UklBQkxFLU5BTUUsIEZMQUdTLAojCQlbT1VUUFVULUZJTEVdLCBbQUNUSU9OLVNVQ0NFU1NdLCBb
QUNUSU9OLUZBSUxVUkVdKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDaGVjayB3aGV0aGVyIHRoZSBnaXZlbiBjb21w
aWxlciBvcHRpb24gd29ya3MKQUNfREVGVU4oW0FDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OXSwK
W0FDX1JFUVVJUkUoW0xUX0FDX1BST0dfU0VEXSkKQUNfQ0FDSEVfQ0hFQ0soWyQxXSwgWyQyXSwK
ICBbJDI9bm8KICBpZmVsc2UoWyQ0XSwgLCBbYWNfb3V0ZmlsZT1jb25mdGVzdC4kYWNfb2JqZXh0
XSwgW2FjX291dGZpbGU9JDRdKQogICBwcmludGYgIiRsdF9zaW1wbGVfY29tcGlsZV90ZXN0X2Nv
ZGUiID4gY29uZnRlc3QuJGFjX2V4dAogICBsdF9jb21waWxlcl9mbGFnPSIkMyIKICAgIyBJbnNl
cnQgdGhlIG9wdGlvbiBlaXRoZXIgKDEpIGFmdGVyIHRoZSBsYXN0ICpGTEFHUyB2YXJpYWJsZSwg
b3IKICAgIyAoMikgYmVmb3JlIGEgd29yZCBjb250YWluaW5nICJjb25mdGVzdC4iLCBvciAoMykg
YXQgdGhlIGVuZC4KICAgIyBOb3RlIHRoYXQgJGFjX2NvbXBpbGUgaXRzZWxmIGRvZXMgbm90IGNv
bnRhaW4gYmFja3NsYXNoZXMgYW5kIGJlZ2lucwogICAjIHdpdGggYSBkb2xsYXIgc2lnbiAobm90
IGEgaHlwaGVuKSwgc28gdGhlIGVjaG8gc2hvdWxkIHdvcmsgY29ycmVjdGx5LgogICAjIFRoZSBv
cHRpb24gaXMgcmVmZXJlbmNlZCB2aWEgYSB2YXJpYWJsZSB0byBhdm9pZCBjb25mdXNpbmcgc2Vk
LgogICBsdF9jb21waWxlPWBlY2hvICIkYWNfY29tcGlsZSIgfCAkU0VEIFwKICAgLWUgJ3M6LipG
TEFHU31cezAsMVx9IDomJGx0X2NvbXBpbGVyX2ZsYWcgOjsgdCcgXAogICAtZSAnczogW1teIF1d
KmNvbmZ0ZXN0XC46ICRsdF9jb21waWxlcl9mbGFnJjo7IHQnIFwKICAgLWUgJ3M6JDogJGx0X2Nv
bXBpbGVyX2ZsYWc6J2AKICAgKGV2YWwgZWNobyAiXCJcJGFzX21lOl9fb2xpbmVfXzogJGx0X2Nv
bXBpbGVcIiIgPiZBU19NRVNTQUdFX0xPR19GRCkKICAgKGV2YWwgIiRsdF9jb21waWxlIiAyPmNv
bmZ0ZXN0LmVycikKICAgYWNfc3RhdHVzPSQ/CiAgIGNhdCBjb25mdGVzdC5lcnIgPiZBU19NRVNT
QUdFX0xPR19GRAogICBlY2hvICIkYXNfbWU6X19vbGluZV9fOiBcJD8gPSAkYWNfc3RhdHVzIiA+
JkFTX01FU1NBR0VfTE9HX0ZECiAgIGlmIChleGl0ICRhY19zdGF0dXMpICYmIHRlc3QgLXMgIiRh
Y19vdXRmaWxlIjsgdGhlbgogICAgICMgVGhlIGNvbXBpbGVyIGNhbiBvbmx5IHdhcm4gYW5kIGln
bm9yZSB0aGUgb3B0aW9uIGlmIG5vdCByZWNvZ25pemVkCiAgICAgIyBTbyBzYXkgbm8gaWYgdGhl
cmUgYXJlIHdhcm5pbmdzIG90aGVyIHRoYW4gdGhlIHVzdWFsIG91dHB1dC4KICAgICAkZWNobyAi
WCRfbHRfY29tcGlsZXJfYm9pbGVycGxhdGUiIHwgJFhzZWQgLWUgJy9eJC9kJyA+Y29uZnRlc3Qu
ZXhwCiAgICAgJFNFRCAnL14kL2Q7IC9eICorL2QnIGNvbmZ0ZXN0LmVyciA+Y29uZnRlc3QuZXIy
CiAgICAgaWYgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVyMiB8fCBkaWZmIGNvbmZ0ZXN0LmV4cCBjb25m
dGVzdC5lcjIgPi9kZXYvbnVsbDsgdGhlbgogICAgICAgJDI9eWVzCiAgICAgZmkKICAgZmkKICAg
JHJtIGNvbmZ0ZXN0KgpdKQoKaWYgdGVzdCB4IlskXSQyIiA9IHh5ZXM7IHRoZW4KICAgIGlmZWxz
ZShbJDVdLCAsIDosIFskNV0pCmVsc2UKICAgIGlmZWxzZShbJDZdLCAsIDosIFskNl0pCmZpCl0p
IyBBQ19MSUJUT09MX0NPTVBJTEVSX09QVElPTgoKCiMgQUNfTElCVE9PTF9MSU5LRVJfT1BUSU9O
KE1FU1NBR0UsIFZBUklBQkxFLU5BTUUsIEZMQUdTLAojICAgICAgICAgICAgICAgICAgICAgICAg
ICBbQUNUSU9OLVNVQ0NFU1NdLCBbQUNUSU9OLUZBSUxVUkVdKQojIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHdoZXRo
ZXIgdGhlIGdpdmVuIGNvbXBpbGVyIG9wdGlvbiB3b3JrcwpBQ19ERUZVTihbQUNfTElCVE9PTF9M
SU5LRVJfT1BUSU9OXSwKW0FDX0NBQ0hFX0NIRUNLKFskMV0sIFskMl0sCiAgWyQyPW5vCiAgIHNh
dmVfTERGTEFHUz0iJExERkxBR1MiCiAgIExERkxBR1M9IiRMREZMQUdTICQzIgogICBwcmludGYg
IiRsdF9zaW1wbGVfbGlua190ZXN0X2NvZGUiID4gY29uZnRlc3QuJGFjX2V4dAogICBpZiAoZXZh
bCAkYWNfbGluayAyPmNvbmZ0ZXN0LmVycikgJiYgdGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQ7
IHRoZW4KICAgICAjIFRoZSBsaW5rZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdub3JlIHRoZSBvcHRp
b24gaWYgbm90IHJlY29nbml6ZWQKICAgICAjIFNvIHNheSBubyBpZiB0aGVyZSBhcmUgd2Fybmlu
Z3MKICAgICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgICAgIyBBcHBlbmQgYW55
IGVycm9ycyB0byB0aGUgY29uZmlnLmxvZy4KICAgICAgIGNhdCBjb25mdGVzdC5lcnIgMT4mQVNf
TUVTU0FHRV9MT0dfRkQKICAgICAgICRlY2hvICJYJF9sdF9saW5rZXJfYm9pbGVycGxhdGUiIHwg
JFhzZWQgLWUgJy9eJC9kJyA+IGNvbmZ0ZXN0LmV4cAogICAgICAgJFNFRCAnL14kL2Q7IC9eICor
L2QnIGNvbmZ0ZXN0LmVyciA+Y29uZnRlc3QuZXIyCiAgICAgICBpZiBkaWZmIGNvbmZ0ZXN0LmV4
cCBjb25mdGVzdC5lcjIgPi9kZXYvbnVsbDsgdGhlbgogICAgICAgICAkMj15ZXMKICAgICAgIGZp
CiAgICAgZWxzZQogICAgICAgJDI9eWVzCiAgICAgZmkKICAgZmkKICAgJHJtIGNvbmZ0ZXN0Kgog
ICBMREZMQUdTPSIkc2F2ZV9MREZMQUdTIgpdKQoKaWYgdGVzdCB4IlskXSQyIiA9IHh5ZXM7IHRo
ZW4KICAgIGlmZWxzZShbJDRdLCAsIDosIFskNF0pCmVsc2UKICAgIGlmZWxzZShbJDVdLCAsIDos
IFskNV0pCmZpCl0pIyBBQ19MSUJUT09MX0xJTktFUl9PUFRJT04KCgojIEFDX0xJQlRPT0xfU1lT
X01BWF9DTURfTEVOCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW0FDX0xJ
QlRPT0xfU1lTX01BWF9DTURfTEVOXSwKWyMgZmluZCB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29t
bWFuZCBsaW5lIGFyZ3VtZW50cwpBQ19NU0dfQ0hFQ0tJTkcoW3RoZSBtYXhpbXVtIGxlbmd0aCBv
ZiBjb21tYW5kIGxpbmUgYXJndW1lbnRzXSkKQUNfQ0FDSEVfVkFMKFtsdF9jdl9zeXNfbWF4X2Nt
ZF9sZW5dLCBbZG5sCiAgaT0wCiAgdGVzdHN0cmluZz0iQUJDRCIKCiAgY2FzZSAkYnVpbGRfb3Mg
aW4KICBtc2Rvc2RqZ3BwKikKICAgICMgT24gREpHUFAsIHRoaXMgdGVzdCBjYW4gYmxvdyB1cCBw
cmV0dHkgYmFkbHkgZHVlIHRvIHByb2JsZW1zIGluIGxpYmMKICAgICMgKGFueSBzaW5nbGUgYXJn
dW1lbnQgZXhjZWVkaW5nIDIwMDAgYnl0ZXMgY2F1c2VzIGEgYnVmZmVyIG92ZXJydW4KICAgICMg
ZHVyaW5nIGdsb2IgZXhwYW5zaW9uKS4gIEV2ZW4gaWYgaXQgd2VyZSBmaXhlZCwgdGhlIHJlc3Vs
dCBvZiB0aGlzCiAgICAjIGNoZWNrIHdvdWxkIGJlIGxhcmdlciB0aGFuIGl0IHNob3VsZCBiZS4K
ICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj0xMjI4ODsgICAgIyAxMksgaXMgYWJvdXQgcmlnaHQK
ICAgIDs7CgogIGdudSopCiAgICAjIFVuZGVyIEdOVSBIdXJkLCB0aGlzIHRlc3QgaXMgbm90IHJl
cXVpcmVkIGJlY2F1c2UgdGhlcmUgaXMKICAgICMgbm8gbGltaXQgdG8gdGhlIGxlbmd0aCBvZiBj
b21tYW5kIGxpbmUgYXJndW1lbnRzLgogICAgIyBMaWJ0b29sIHdpbGwgaW50ZXJwcmV0IC0xIGFz
IG5vIGxpbWl0IHdoYXRzb2V2ZXIKICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj0tMTsKICAgIDs7
CgogIGN5Z3dpbiogfCBtaW5ndyopCiAgICAjIE9uIFdpbjl4L01FLCB0aGlzIHRlc3QgYmxvd3Mg
dXAgLS0gaXQgc3VjY2VlZHMsIGJ1dCB0YWtlcwogICAgIyBhYm91dCA1IG1pbnV0ZXMgYXMgdGhl
IHRlc3RzdHJpbmcgZ3Jvd3MgZXhwb25lbnRpYWxseS4KICAgICMgV29yc2UsIHNpbmNlIDl4L01F
IGFyZSBub3QgcHJlLWVtcHRpdmVseSBtdWx0aXRhc2tpbmcsCiAgICAjIHlvdSBlbmQgdXAgd2l0
aCBhICJmcm96ZW4iIGNvbXB1dGVyLCBldmVuIHRob3VnaCB3aXRoIHBhdGllbmNlCiAgICAjIHRo
ZSB0ZXN0IGV2ZW50dWFsbHkgc3VjY2VlZHMgKHdpdGggYSBtYXggbGluZSBsZW5ndGggb2YgMjU2
aykuCiAgICAjIEluc3RlYWQsIGxldCdzIGp1c3QgcHVudDogdXNlIHRoZSBtaW5pbXVtIGxpbmVs
ZW5ndGggcmVwb3J0ZWQgYnkKICAgICMgYWxsIG9mIHRoZSBzdXBwb3J0ZWQgcGxhdGZvcm1zOiA4
MTkyIChvbiBOVC8ySy9YUCkuCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49ODE5MjsKICAgIDs7
CgogIGFtaWdhb3MqKQogICAgIyBPbiBBbWlnYU9TIHdpdGggcGRrc2gsIHRoaXMgdGVzdCB0YWtl
cyBob3VycywgbGl0ZXJhbGx5LgogICAgIyBTbyB3ZSBqdXN0IHB1bnQgYW5kIHVzZSBhIG1pbmlt
dW0gbGluZSBsZW5ndGggb2YgODE5Mi4KICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj04MTkyOwog
ICAgOzsKCiAgbmV0YnNkKiB8IGZyZWVic2QqIHwgb3BlbmJzZCogfCBkYXJ3aW4qIHwgZHJhZ29u
Zmx5KikKICAgICMgVGhpcyBoYXMgYmVlbiBhcm91bmQgc2luY2UgMzg2QlNELCBhdCBsZWFzdC4g
IExpa2VseSBmdXJ0aGVyLgogICAgaWYgdGVzdCAteCAvc2Jpbi9zeXNjdGw7IHRoZW4KICAgICAg
bHRfY3Zfc3lzX21heF9jbWRfbGVuPWAvc2Jpbi9zeXNjdGwgLW4ga2Vybi5hcmdtYXhgCiAgICBl
bGlmIHRlc3QgLXggL3Vzci9zYmluL3N5c2N0bDsgdGhlbgogICAgICBsdF9jdl9zeXNfbWF4X2Nt
ZF9sZW49YC91c3Ivc2Jpbi9zeXNjdGwgLW4ga2Vybi5hcmdtYXhgCiAgICBlbHNlCiAgICAgIGx0
X2N2X3N5c19tYXhfY21kX2xlbj02NTUzNgkjIHVzYWJsZSBkZWZhdWx0IGZvciBhbGwgQlNEcwog
ICAgZmkKICAgICMgQW5kIGFkZCBhIHNhZmV0eSB6b25lCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9s
ZW49YGV4cHIgJGx0X2N2X3N5c19tYXhfY21kX2xlbiBcLyA0YAogICAgbHRfY3Zfc3lzX21heF9j
bWRfbGVuPWBleHByICRsdF9jdl9zeXNfbWF4X2NtZF9sZW4gXCogM2AKICAgIDs7CgogIGludGVy
aXgqKQogICAgIyBXZSBrbm93IHRoZSB2YWx1ZSAyNjIxNDQgYW5kIGhhcmRjb2RlIGl0IHdpdGgg
YSBzYWZldHkgem9uZSAobGlrZSBCU0QpCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49MTk2NjA4
CiAgICA7OwoKICBvc2YqKQogICAgIyBEci4gSGFucyBFa2tlaGFyZCBQbGVzc2VyIHJlcG9ydHMg
c2VlaW5nIGEga2VybmVsIHBhbmljIHJ1bm5pbmcgY29uZmlndXJlCiAgICAjIGR1ZSB0byB0aGlz
IHRlc3Qgd2hlbiBleGVjX2Rpc2FibGVfYXJnX2xpbWl0IGlzIDEgb24gVHJ1NjQuIEl0IGlzIG5v
dAogICAgIyBuaWNlIHRvIGNhdXNlIGtlcm5lbCBwYW5pY3Mgc28gbGV0cyBhdm9pZCB0aGUgbG9v
cCBiZWxvdy4KICAgICMgRmlyc3Qgc2V0IGEgcmVhc29uYWJsZSBkZWZhdWx0LgogICAgbHRfY3Zf
c3lzX21heF9jbWRfbGVuPTE2Mzg0CiAgICAjCiAgICBpZiB0ZXN0IC14IC9zYmluL3N5c2NvbmZp
ZzsgdGhlbgogICAgICBjYXNlIGAvc2Jpbi9zeXNjb25maWcgLXEgcHJvYyBleGVjX2Rpc2FibGVf
YXJnX2xpbWl0YCBpbgogICAgICAgICoxKikgbHRfY3Zfc3lzX21heF9jbWRfbGVuPS0xIDs7CiAg
ICAgIGVzYWMKICAgIGZpCiAgICA7OwogIHNjbzMuMnY1KikKICAgIGx0X2N2X3N5c19tYXhfY21k
X2xlbj0xMDI0MDAKICAgIDs7CiAgc3lzdjUqIHwgc2NvNXY2KiB8IHN5c3Y0LjJ1dzIqKQogICAg
a2FyZ21heD1gZ3JlcCBBUkdfTUFYIC9ldGMvY29uZi9jZi5kL3N0dW5lIDI+L2Rldi9udWxsYAog
ICAgaWYgdGVzdCAtbiAiJGthcmdtYXgiOyB0aGVuCiAgICAgIGx0X2N2X3N5c19tYXhfY21kX2xl
bj1gZWNobyAka2FyZ21heCB8IHNlZCAncy8uKltbIAldXS8vJ2AKICAgIGVsc2UKICAgICAgbHRf
Y3Zfc3lzX21heF9jbWRfbGVuPTMyNzY4CiAgICBmaQogICAgOzsKICAqKQogICAgIyBJZiB0ZXN0
IGlzIG5vdCBhIHNoZWxsIGJ1aWx0LWluLCB3ZSdsbCBwcm9iYWJseSBlbmQgdXAgY29tcHV0aW5n
IGEKICAgICMgbWF4aW11bSBsZW5ndGggdGhhdCBpcyBvbmx5IGhhbGYgb2YgdGhlIGFjdHVhbCBt
YXhpbXVtIGxlbmd0aCwgYnV0CiAgICAjIHdlIGNhbid0IHRlbGwuCiAgICBTSEVMTD0ke1NIRUxM
LSR7Q09ORklHX1NIRUxMLS9iaW4vc2h9fQogICAgd2hpbGUgKHRlc3QgIlgiYCRTSEVMTCBbJF0w
IC0tZmFsbGJhY2stZWNobyAiWCR0ZXN0c3RyaW5nIiAyPi9kZXYvbnVsbGAgXAoJICAgICAgID0g
IlhYJHRlc3RzdHJpbmciKSA+L2Rldi9udWxsIDI+JjEgJiYKCSAgICBuZXdfcmVzdWx0PWBleHBy
ICJYJHRlc3RzdHJpbmciIDogIi4qIiAyPiYxYCAmJgoJICAgIGx0X2N2X3N5c19tYXhfY21kX2xl
bj0kbmV3X3Jlc3VsdCAmJgoJICAgIHRlc3QgJGkgIT0gMTcgIyAxLzIgTUIgc2hvdWxkIGJlIGVu
b3VnaAogICAgZG8KICAgICAgaT1gZXhwciAkaSArIDFgCiAgICAgIHRlc3RzdHJpbmc9JHRlc3Rz
dHJpbmckdGVzdHN0cmluZwogICAgZG9uZQogICAgdGVzdHN0cmluZz0KICAgICMgQWRkIGEgc2ln
bmlmaWNhbnQgc2FmZXR5IGZhY3RvciBiZWNhdXNlIEMrKyBjb21waWxlcnMgY2FuIHRhY2sgb24g
bWFzc2l2ZQogICAgIyBhbW91bnRzIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIGJlZm9yZSBwYXNz
aW5nIHRoZW0gdG8gdGhlIGxpbmtlci4KICAgICMgSXQgYXBwZWFycyBhcyB0aG91Z2ggMS8yIGlz
IGEgdXNhYmxlIHZhbHVlLgogICAgbHRfY3Zfc3lzX21heF9jbWRfbGVuPWBleHByICRsdF9jdl9z
eXNfbWF4X2NtZF9sZW4gXC8gMmAKICAgIDs7CiAgZXNhYwpdKQppZiB0ZXN0IC1uICRsdF9jdl9z
eXNfbWF4X2NtZF9sZW4gOyB0aGVuCiAgQUNfTVNHX1JFU1VMVCgkbHRfY3Zfc3lzX21heF9jbWRf
bGVuKQplbHNlCiAgQUNfTVNHX1JFU1VMVChub25lKQpmaQpdKSMgQUNfTElCVE9PTF9TWVNfTUFY
X0NNRF9MRU4KCgojIF9MVF9BQ19DSEVDS19ETEZDTgojIC0tLS0tLS0tLS0tLS0tLS0tLQpBQ19E
RUZVTihbX0xUX0FDX0NIRUNLX0RMRkNOXSwKW0FDX0NIRUNLX0hFQURFUlMoZGxmY24uaClkbmwK
XSkjIF9MVF9BQ19DSEVDS19ETEZDTgoKCiMgX0xUX0FDX1RSWV9ETE9QRU5fU0VMRiAoQUNUSU9O
LUlGLVRSVUUsIEFDVElPTi1JRi1UUlVFLVctVVNDT1JFLAojICAgICAgICAgICAgICAgICAgICAg
ICAgICAgQUNUSU9OLUlGLUZBTFNFLCBBQ1RJT04tSUYtQ1JPU1MtQ09NUElMSU5HKQojIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQpBQ19ERUZVTihbX0xUX0FDX1RSWV9ETE9QRU5fU0VMRl0sCltBQ19SRVFVSVJFKFtf
TFRfQUNfQ0hFQ0tfRExGQ05dKWRubAppZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IHllczsg
dGhlbiA6CiAgWyQ0XQplbHNlCiAgbHRfZGx1bmtub3duPTA7IGx0X2Rsbm9fdXNjb3JlPTE7IGx0
X2RsbmVlZF91c2NvcmU9MgogIGx0X3N0YXR1cz0kbHRfZGx1bmtub3duCiAgY2F0ID4gY29uZnRl
c3QuJGFjX2V4dCA8PEVPRgpbI2xpbmUgX19vbGluZV9fICJjb25maWd1cmUiCiNpbmNsdWRlICJj
b25mZGVmcy5oIgoKI2lmIEhBVkVfRExGQ05fSAojaW5jbHVkZSA8ZGxmY24uaD4KI2VuZGlmCgoj
aW5jbHVkZSA8c3RkaW8uaD4KCiNpZmRlZiBSVExEX0dMT0JBTAojICBkZWZpbmUgTFRfRExHTE9C
QUwJCVJUTERfR0xPQkFMCiNlbHNlCiMgIGlmZGVmIERMX0dMT0JBTAojICAgIGRlZmluZSBMVF9E
TEdMT0JBTAkJRExfR0xPQkFMCiMgIGVsc2UKIyAgICBkZWZpbmUgTFRfRExHTE9CQUwJCTAKIyAg
ZW5kaWYKI2VuZGlmCgovKiBXZSBtYXkgaGF2ZSB0byBkZWZpbmUgTFRfRExMQVpZX09SX05PVyBp
biB0aGUgY29tbWFuZCBsaW5lIGlmIHdlCiAgIGZpbmQgb3V0IGl0IGRvZXMgbm90IHdvcmsgaW4g
c29tZSBwbGF0Zm9ybS4gKi8KI2lmbmRlZiBMVF9ETExBWllfT1JfTk9XCiMgIGlmZGVmIFJUTERf
TEFaWQojICAgIGRlZmluZSBMVF9ETExBWllfT1JfTk9XCQlSVExEX0xBWlkKIyAgZWxzZQojICAg
IGlmZGVmIERMX0xBWlkKIyAgICAgIGRlZmluZSBMVF9ETExBWllfT1JfTk9XCQlETF9MQVpZCiMg
ICAgZWxzZQojICAgICAgaWZkZWYgUlRMRF9OT1cKIyAgICAgICAgZGVmaW5lIExUX0RMTEFaWV9P
Ul9OT1cJUlRMRF9OT1cKIyAgICAgIGVsc2UKIyAgICAgICAgaWZkZWYgRExfTk9XCiMgICAgICAg
ICAgZGVmaW5lIExUX0RMTEFaWV9PUl9OT1cJRExfTk9XCiMgICAgICAgIGVsc2UKIyAgICAgICAg
ICBkZWZpbmUgTFRfRExMQVpZX09SX05PVwkwCiMgICAgICAgIGVuZGlmCiMgICAgICBlbmRpZgoj
ICAgIGVuZGlmCiMgIGVuZGlmCiNlbmRpZgoKI2lmZGVmIF9fY3BsdXNwbHVzCmV4dGVybiAiQyIg
dm9pZCBleGl0IChpbnQpOwojZW5kaWYKCnZvaWQgZm5vcmQoKSB7IGludCBpPTQyO30KaW50IG1h
aW4gKCkKewogIHZvaWQgKnNlbGYgPSBkbG9wZW4gKDAsIExUX0RMR0xPQkFMfExUX0RMTEFaWV9P
Ul9OT1cpOwogIGludCBzdGF0dXMgPSAkbHRfZGx1bmtub3duOwoKICBpZiAoc2VsZikKICAgIHsK
ICAgICAgaWYgKGRsc3ltIChzZWxmLCJmbm9yZCIpKSAgICAgICBzdGF0dXMgPSAkbHRfZGxub191
c2NvcmU7CiAgICAgIGVsc2UgaWYgKGRsc3ltKCBzZWxmLCJfZm5vcmQiKSkgc3RhdHVzID0gJGx0
X2RsbmVlZF91c2NvcmU7CiAgICAgIC8qIGRsY2xvc2UgKHNlbGYpOyAqLwogICAgfQogIGVsc2UK
ICAgIHB1dHMgKGRsZXJyb3IgKCkpOwoKICAgIGV4aXQgKHN0YXR1cyk7Cn1dCkVPRgogIGlmIEFD
X1RSWV9FVkFMKGFjX2xpbmspICYmIHRlc3QgLXMgY29uZnRlc3Qke2FjX2V4ZWV4dH0gMj4vZGV2
L251bGw7IHRoZW4KICAgICguL2NvbmZ0ZXN0OyBleGl0OyApID4mQVNfTUVTU0FHRV9MT0dfRkQg
Mj4vZGV2L251bGwKICAgIGx0X3N0YXR1cz0kPwogICAgY2FzZSB4JGx0X3N0YXR1cyBpbgogICAg
ICB4JGx0X2Rsbm9fdXNjb3JlKSAkMSA7OwogICAgICB4JGx0X2RsbmVlZF91c2NvcmUpICQyIDs7
CiAgICAgIHgkbHRfZGx1bmtub3dufHgqKSAkMyA7OwogICAgZXNhYwogIGVsc2UgOgogICAgIyBj
b21waWxhdGlvbiBmYWlsZWQKICAgICQzCiAgZmkKZmkKcm0gLWZyIGNvbmZ0ZXN0KgpdKSMgX0xU
X0FDX1RSWV9ETE9QRU5fU0VMRgoKCiMgQUNfTElCVE9PTF9ETE9QRU5fU0VMRgojIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW0FDX0xJQlRPT0xfRExPUEVOX1NFTEZdLApbQUNfUkVR
VUlSRShbX0xUX0FDX0NIRUNLX0RMRkNOXSlkbmwKaWYgdGVzdCAieCRlbmFibGVfZGxvcGVuIiAh
PSB4eWVzOyB0aGVuCiAgZW5hYmxlX2Rsb3Blbj11bmtub3duCiAgZW5hYmxlX2Rsb3Blbl9zZWxm
PXVua25vd24KICBlbmFibGVfZGxvcGVuX3NlbGZfc3RhdGljPXVua25vd24KZWxzZQogIGx0X2N2
X2Rsb3Blbj1ubwogIGx0X2N2X2Rsb3Blbl9saWJzPQoKICBjYXNlICRob3N0X29zIGluCiAgYmVv
cyopCiAgICBsdF9jdl9kbG9wZW49ImxvYWRfYWRkX29uIgogICAgbHRfY3ZfZGxvcGVuX2xpYnM9
CiAgICBsdF9jdl9kbG9wZW5fc2VsZj15ZXMKICAgIDs7CgogIG1pbmd3KiB8IHB3MzIqKQogICAg
bHRfY3ZfZGxvcGVuPSJMb2FkTGlicmFyeSIKICAgIGx0X2N2X2Rsb3Blbl9saWJzPQogICA7OwoK
ICBjeWd3aW4qKQogICAgbHRfY3ZfZGxvcGVuPSJkbG9wZW4iCiAgICBsdF9jdl9kbG9wZW5fbGli
cz0KICAgOzsKCiAgZGFyd2luKikKICAjIGlmIGxpYmRsIGlzIGluc3RhbGxlZCB3ZSBuZWVkIHRv
IGxpbmsgYWdhaW5zdCBpdAogICAgQUNfQ0hFQ0tfTElCKFtkbF0sIFtkbG9wZW5dLAoJCVtsdF9j
dl9kbG9wZW49ImRsb3BlbiIgbHRfY3ZfZGxvcGVuX2xpYnM9Ii1sZGwiXSxbCiAgICBsdF9jdl9k
bG9wZW49ImR5bGQiCiAgICBsdF9jdl9kbG9wZW5fbGlicz0KICAgIGx0X2N2X2Rsb3Blbl9zZWxm
PXllcwogICAgXSkKICAgOzsKCiAgKikKICAgIEFDX0NIRUNLX0ZVTkMoW3NobF9sb2FkXSwKCSAg
W2x0X2N2X2Rsb3Blbj0ic2hsX2xvYWQiXSwKICAgICAgW0FDX0NIRUNLX0xJQihbZGxkXSwgW3No
bF9sb2FkXSwKCSAgICBbbHRfY3ZfZGxvcGVuPSJzaGxfbG9hZCIgbHRfY3ZfZGxvcGVuX2xpYnM9
Ii1kbGQiXSwKCVtBQ19DSEVDS19GVU5DKFtkbG9wZW5dLAoJICAgICAgW2x0X2N2X2Rsb3Blbj0i
ZGxvcGVuIl0sCgkgIFtBQ19DSEVDS19MSUIoW2RsXSwgW2Rsb3Blbl0sCgkJW2x0X2N2X2Rsb3Bl
bj0iZGxvcGVuIiBsdF9jdl9kbG9wZW5fbGlicz0iLWxkbCJdLAoJICAgIFtBQ19DSEVDS19MSUIo
W3N2bGRdLCBbZGxvcGVuXSwKCQkgIFtsdF9jdl9kbG9wZW49ImRsb3BlbiIgbHRfY3ZfZGxvcGVu
X2xpYnM9Ii1sc3ZsZCJdLAoJICAgICAgW0FDX0NIRUNLX0xJQihbZGxkXSwgW2RsZF9saW5rXSwK
CQkgICAgW2x0X2N2X2Rsb3Blbj0iZGxkX2xpbmsiIGx0X2N2X2Rsb3Blbl9saWJzPSItZGxkIl0p
CgkgICAgICBdKQoJICAgIF0pCgkgIF0pCgldKQogICAgICBdKQogICAgOzsKICBlc2FjCgogIGlm
IHRlc3QgIngkbHRfY3ZfZGxvcGVuIiAhPSB4bm87IHRoZW4KICAgIGVuYWJsZV9kbG9wZW49eWVz
CiAgZWxzZQogICAgZW5hYmxlX2Rsb3Blbj1ubwogIGZpCgogIGNhc2UgJGx0X2N2X2Rsb3BlbiBp
bgogIGRsb3BlbikKICAgIHNhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKICAgIHRlc3QgIngkYWNf
Y3ZfaGVhZGVyX2RsZmNuX2giID0geHllcyAmJiBDUFBGTEFHUz0iJENQUEZMQUdTIC1ESEFWRV9E
TEZDTl9IIgoKICAgIHNhdmVfTERGTEFHUz0iJExERkxBR1MiCiAgICB3bD0kbHRfcHJvZ19jb21w
aWxlcl93bCBldmFsIExERkxBR1M9XCJcJExERkxBR1MgJGV4cG9ydF9keW5hbWljX2ZsYWdfc3Bl
Y1wiCgogICAgc2F2ZV9MSUJTPSIkTElCUyIKICAgIExJQlM9IiRsdF9jdl9kbG9wZW5fbGlicyAk
TElCUyIKCiAgICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciBhIHByb2dyYW0gY2FuIGRsb3BlbiBp
dHNlbGZdLAoJICBsdF9jdl9kbG9wZW5fc2VsZiwgW2RubAoJICBfTFRfQUNfVFJZX0RMT1BFTl9T
RUxGKAoJICAgIGx0X2N2X2Rsb3Blbl9zZWxmPXllcywgbHRfY3ZfZGxvcGVuX3NlbGY9eWVzLAoJ
ICAgIGx0X2N2X2Rsb3Blbl9zZWxmPW5vLCBsdF9jdl9kbG9wZW5fc2VsZj1jcm9zcykKICAgIF0p
CgogICAgaWYgdGVzdCAieCRsdF9jdl9kbG9wZW5fc2VsZiIgPSB4eWVzOyB0aGVuCiAgICAgIHds
PSRsdF9wcm9nX2NvbXBpbGVyX3dsIGV2YWwgTERGTEFHUz1cIlwkTERGTEFHUyAkbHRfcHJvZ19j
b21waWxlcl9zdGF0aWNcIgogICAgICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciBhIHN0YXRpY2Fs
bHkgbGlua2VkIHByb2dyYW0gY2FuIGRsb3BlbiBpdHNlbGZdLAogICAgCSAgbHRfY3ZfZGxvcGVu
X3NlbGZfc3RhdGljLCBbZG5sCgkgIF9MVF9BQ19UUllfRExPUEVOX1NFTEYoCgkgICAgbHRfY3Zf
ZGxvcGVuX3NlbGZfc3RhdGljPXllcywgbHRfY3ZfZGxvcGVuX3NlbGZfc3RhdGljPXllcywKCSAg
ICBsdF9jdl9kbG9wZW5fc2VsZl9zdGF0aWM9bm8sICBsdF9jdl9kbG9wZW5fc2VsZl9zdGF0aWM9
Y3Jvc3MpCiAgICAgIF0pCiAgICBmaQoKICAgIENQUEZMQUdTPSIkc2F2ZV9DUFBGTEFHUyIKICAg
IExERkxBR1M9IiRzYXZlX0xERkxBR1MiCiAgICBMSUJTPSIkc2F2ZV9MSUJTIgogICAgOzsKICBl
c2FjCgogIGNhc2UgJGx0X2N2X2Rsb3Blbl9zZWxmIGluCiAgeWVzfG5vKSBlbmFibGVfZGxvcGVu
X3NlbGY9JGx0X2N2X2Rsb3Blbl9zZWxmIDs7CiAgKikgZW5hYmxlX2Rsb3Blbl9zZWxmPXVua25v
d24gOzsKICBlc2FjCgogIGNhc2UgJGx0X2N2X2Rsb3Blbl9zZWxmX3N0YXRpYyBpbgogIHllc3xu
bykgZW5hYmxlX2Rsb3Blbl9zZWxmX3N0YXRpYz0kbHRfY3ZfZGxvcGVuX3NlbGZfc3RhdGljIDs7
CiAgKikgZW5hYmxlX2Rsb3Blbl9zZWxmX3N0YXRpYz11bmtub3duIDs7CiAgZXNhYwpmaQpdKSMg
QUNfTElCVE9PTF9ETE9QRU5fU0VMRgoKCiMgQUNfTElCVE9PTF9QUk9HX0NDX0NfTyhbVEFHTkFN
RV0pCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgdG8gc2VlIGlm
IG9wdGlvbnMgLWMgYW5kIC1vIGFyZSBzaW11bHRhbmVvdXNseSBzdXBwb3J0ZWQgYnkgY29tcGls
ZXIKQUNfREVGVU4oW0FDX0xJQlRPT0xfUFJPR19DQ19DX09dLApbQUNfUkVRVUlSRShbX0xUX0FD
X1NZU19DT01QSUxFUl0pZG5sCkFDX0NBQ0hFX0NIRUNLKFtpZiAkY29tcGlsZXIgc3VwcG9ydHMg
LWMgLW8gZmlsZS4kYWNfb2JqZXh0XSwKICBbX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBp
bGVyX2NfbywgJDEpXSwKICBbX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBpbGVyX2Nfbywg
JDEpPW5vCiAgICRybSAtciBjb25mdGVzdCAyPi9kZXYvbnVsbAogICBta2RpciBjb25mdGVzdAog
ICBjZCBjb25mdGVzdAogICBta2RpciBvdXQKICAgcHJpbnRmICIkbHRfc2ltcGxlX2NvbXBpbGVf
dGVzdF9jb2RlIiA+IGNvbmZ0ZXN0LiRhY19leHQKCiAgIGx0X2NvbXBpbGVyX2ZsYWc9Ii1vIG91
dC9jb25mdGVzdDIuJGFjX29iamV4dCIKICAgIyBJbnNlcnQgdGhlIG9wdGlvbiBlaXRoZXIgKDEp
IGFmdGVyIHRoZSBsYXN0ICpGTEFHUyB2YXJpYWJsZSwgb3IKICAgIyAoMikgYmVmb3JlIGEgd29y
ZCBjb250YWluaW5nICJjb25mdGVzdC4iLCBvciAoMykgYXQgdGhlIGVuZC4KICAgIyBOb3RlIHRo
YXQgJGFjX2NvbXBpbGUgaXRzZWxmIGRvZXMgbm90IGNvbnRhaW4gYmFja3NsYXNoZXMgYW5kIGJl
Z2lucwogICAjIHdpdGggYSBkb2xsYXIgc2lnbiAobm90IGEgaHlwaGVuKSwgc28gdGhlIGVjaG8g
c2hvdWxkIHdvcmsgY29ycmVjdGx5LgogICBsdF9jb21waWxlPWBlY2hvICIkYWNfY29tcGlsZSIg
fCAkU0VEIFwKICAgLWUgJ3M6LipGTEFHU31cezAsMVx9IDomJGx0X2NvbXBpbGVyX2ZsYWcgOjsg
dCcgXAogICAtZSAnczogW1teIF1dKmNvbmZ0ZXN0XC46ICRsdF9jb21waWxlcl9mbGFnJjo7IHQn
IFwKICAgLWUgJ3M6JDogJGx0X2NvbXBpbGVyX2ZsYWc6J2AKICAgKGV2YWwgZWNobyAiXCJcJGFz
X21lOl9fb2xpbmVfXzogJGx0X2NvbXBpbGVcIiIgPiZBU19NRVNTQUdFX0xPR19GRCkKICAgKGV2
YWwgIiRsdF9jb21waWxlIiAyPm91dC9jb25mdGVzdC5lcnIpCiAgIGFjX3N0YXR1cz0kPwogICBj
YXQgb3V0L2NvbmZ0ZXN0LmVyciA+JkFTX01FU1NBR0VfTE9HX0ZECiAgIGVjaG8gIiRhc19tZTpf
X29saW5lX186IFwkPyA9ICRhY19zdGF0dXMiID4mQVNfTUVTU0FHRV9MT0dfRkQKICAgaWYgKGV4
aXQgJGFjX3N0YXR1cykgJiYgdGVzdCAtcyBvdXQvY29uZnRlc3QyLiRhY19vYmpleHQKICAgdGhl
bgogICAgICMgVGhlIGNvbXBpbGVyIGNhbiBvbmx5IHdhcm4gYW5kIGlnbm9yZSB0aGUgb3B0aW9u
IGlmIG5vdCByZWNvZ25pemVkCiAgICAgIyBTbyBzYXkgbm8gaWYgdGhlcmUgYXJlIHdhcm5pbmdz
CiAgICAgJGVjaG8gIlgkX2x0X2NvbXBpbGVyX2JvaWxlcnBsYXRlIiB8ICRYc2VkIC1lICcvXiQv
ZCcgPiBvdXQvY29uZnRlc3QuZXhwCiAgICAgJFNFRCAnL14kL2Q7IC9eICorL2QnIG91dC9jb25m
dGVzdC5lcnIgPm91dC9jb25mdGVzdC5lcjIKICAgICBpZiB0ZXN0ICEgLXMgb3V0L2NvbmZ0ZXN0
LmVyMiB8fCBkaWZmIG91dC9jb25mdGVzdC5leHAgb3V0L2NvbmZ0ZXN0LmVyMiA+L2Rldi9udWxs
OyB0aGVuCiAgICAgICBfTFRfQUNfVEFHVkFSKGx0X2N2X3Byb2dfY29tcGlsZXJfY19vLCAkMSk9
eWVzCiAgICAgZmkKICAgZmkKICAgY2htb2QgdSt3IC4gMj4mQVNfTUVTU0FHRV9MT0dfRkQKICAg
JHJtIGNvbmZ0ZXN0KgogICAjIFNHSSBDKysgY29tcGlsZXIgd2lsbCBjcmVhdGUgZGlyZWN0b3J5
IG91dC9paV9maWxlcy8gZm9yCiAgICMgdGVtcGxhdGUgaW5zdGFudGlhdGlvbgogICB0ZXN0IC1k
IG91dC9paV9maWxlcyAmJiAkcm0gb3V0L2lpX2ZpbGVzLyogJiYgcm1kaXIgb3V0L2lpX2ZpbGVz
CiAgICRybSBvdXQvKiAmJiBybWRpciBvdXQKICAgY2QgLi4KICAgcm1kaXIgY29uZnRlc3QKICAg
JHJtIGNvbmZ0ZXN0KgpdKQpdKSMgQUNfTElCVE9PTF9QUk9HX0NDX0NfTwoKCiMgQUNfTElCVE9P
TF9TWVNfSEFSRF9MSU5LX0xPQ0tTKFtUQUdOQU1FXSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHRvIHNlZSBpZiB3ZSBjYW4gZG8gaGFyZCBsaW5r
cyB0byBsb2NrIHNvbWUgZmlsZXMgaWYgbmVlZGVkCkFDX0RFRlVOKFtBQ19MSUJUT09MX1NZU19I
QVJEX0xJTktfTE9DS1NdLApbQUNfUkVRVUlSRShbX0xUX0FDX0xPQ0tdKWRubAoKaGFyZF9saW5r
cz0ibm90dGVzdGVkIgppZiB0ZXN0ICIkX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBpbGVy
X2NfbywgJDEpIiA9IG5vICYmIHRlc3QgIiRuZWVkX2xvY2tzIiAhPSBubzsgdGhlbgogICMgZG8g
bm90IG92ZXJ3cml0ZSB0aGUgdmFsdWUgb2YgbmVlZF9sb2NrcyBwcm92aWRlZCBieSB0aGUgdXNl
cgogIEFDX01TR19DSEVDS0lORyhbaWYgd2UgY2FuIGxvY2sgd2l0aCBoYXJkIGxpbmtzXSkKICBo
YXJkX2xpbmtzPXllcwogICRybSBjb25mdGVzdCoKICBsbiBjb25mdGVzdC5hIGNvbmZ0ZXN0LmIg
Mj4vZGV2L251bGwgJiYgaGFyZF9saW5rcz1ubwogIHRvdWNoIGNvbmZ0ZXN0LmEKICBsbiBjb25m
dGVzdC5hIGNvbmZ0ZXN0LmIgMj4mNSB8fCBoYXJkX2xpbmtzPW5vCiAgbG4gY29uZnRlc3QuYSBj
b25mdGVzdC5iIDI+L2Rldi9udWxsICYmIGhhcmRfbGlua3M9bm8KICBBQ19NU0dfUkVTVUxUKFsk
aGFyZF9saW5rc10pCiAgaWYgdGVzdCAiJGhhcmRfbGlua3MiID0gbm87IHRoZW4KICAgIEFDX01T
R19XQVJOKFtgJENDJyBkb2VzIG5vdCBzdXBwb3J0IGAtYyAtbycsIHNvIGBtYWtlIC1qJyBtYXkg
YmUgdW5zYWZlXSkKICAgIG5lZWRfbG9ja3M9d2FybgogIGZpCmVsc2UKICBuZWVkX2xvY2tzPW5v
CmZpCl0pIyBBQ19MSUJUT09MX1NZU19IQVJEX0xJTktfTE9DS1MKCgojIEFDX0xJQlRPT0xfT0JK
RElSCiMgLS0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW0FDX0xJQlRPT0xfT0JKRElSXSwKW0FD
X0NBQ0hFX0NIRUNLKFtmb3Igb2JqZGlyXSwgW2x0X2N2X29iamRpcl0sCltybSAtZiAubGlicyAy
Pi9kZXYvbnVsbApta2RpciAubGlicyAyPi9kZXYvbnVsbAppZiB0ZXN0IC1kIC5saWJzOyB0aGVu
CiAgbHRfY3Zfb2JqZGlyPS5saWJzCmVsc2UKICAjIE1TLURPUyBkb2VzIG5vdCBhbGxvdyBmaWxl
bmFtZXMgdGhhdCBiZWdpbiB3aXRoIGEgZG90LgogIGx0X2N2X29iamRpcj1fbGlicwpmaQpybWRp
ciAubGlicyAyPi9kZXYvbnVsbF0pCm9iamRpcj0kbHRfY3Zfb2JqZGlyCl0pIyBBQ19MSUJUT09M
X09CSkRJUgoKCiMgQUNfTElCVE9PTF9QUk9HX0xEX0hBUkRDT0RFX0xJQlBBVEgoW1RBR05BTUVd
KQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDaGVj
ayBoYXJkY29kaW5nIGF0dHJpYnV0ZXMuCkFDX0RFRlVOKFtBQ19MSUJUT09MX1BST0dfTERfSEFS
RENPREVfTElCUEFUSF0sCltBQ19NU0dfQ0hFQ0tJTkcoW2hvdyB0byBoYXJkY29kZSBsaWJyYXJ5
IHBhdGhzIGludG8gcHJvZ3JhbXNdKQpfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEp
PQppZiB0ZXN0IC1uICIkX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAk
MSkiIHx8IFwKICAgdGVzdCAtbiAiJF9MVF9BQ19UQUdWQVIocnVucGF0aF92YXIsICQxKSIgfHwg
XAogICB0ZXN0ICJYJF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfYXV0b21hdGljLCAkMSkiID0gIlh5
ZXMiIDsgdGhlbgoKICAjIFdlIGNhbiBoYXJkY29kZSBub24tZXhpc3RhbnQgZGlyZWN0b3JpZXMu
CiAgaWYgdGVzdCAiJF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSkiICE9IG5vICYm
CiAgICAgIyBJZiB0aGUgb25seSBtZWNoYW5pc20gdG8gYXZvaWQgaGFyZGNvZGluZyBpcyBzaGxp
YnBhdGhfdmFyLCB3ZQogICAgICMgaGF2ZSB0byByZWxpbmssIG90aGVyd2lzZSB3ZSBtaWdodCBs
aW5rIHdpdGggYW4gaW5zdGFsbGVkIGxpYnJhcnkKICAgICAjIHdoZW4gd2Ugc2hvdWxkIGJlIGxp
bmtpbmcgd2l0aCBhIHlldC10by1iZS1pbnN0YWxsZWQgb25lCiAgICAgIyMgdGVzdCAiJF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpIiAhPSBubyAmJgogICAgIHRlc3Qg
IiRfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKSIgIT0gbm87IHRoZW4KICAgICMg
TGlua2luZyBhbHdheXMgaGFyZGNvZGVzIHRoZSB0ZW1wb3JhcnkgbGlicmFyeSBkaXJlY3Rvcnku
CiAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPXJlbGluawogIGVsc2UKICAg
ICMgV2UgY2FuIGxpbmsgd2l0aG91dCBoYXJkY29kaW5nLCBhbmQgd2UgY2FuIGhhcmRjb2RlIG5v
bmV4aXN0aW5nIGRpcnMuCiAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPWlt
bWVkaWF0ZQogIGZpCmVsc2UKICAjIFdlIGNhbm5vdCBoYXJkY29kZSBhbnl0aGluZywgb3IgZWxz
ZSB3ZSBjYW4gb25seSBoYXJkY29kZSBleGlzdGluZwogICMgZGlyZWN0b3JpZXMuCiAgX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9hY3Rpb24sICQxKT11bnN1cHBvcnRlZApmaQpBQ19NU0dfUkVTVUxU
KFskX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9hY3Rpb24sICQxKV0pCgppZiB0ZXN0ICIkX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9hY3Rpb24sICQxKSIgPSByZWxpbms7IHRoZW4KICAjIEZhc3QgaW5z
dGFsbGF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQKICBlbmFibGVfZmFzdF9pbnN0YWxsPW5vCmVsaWYg
dGVzdCAiJHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aCIgPSB5ZXMgfHwKICAgICB0ZXN0ICIk
ZW5hYmxlX3NoYXJlZCIgPSBubzsgdGhlbgogICMgRmFzdCBpbnN0YWxsYXRpb24gaXMgbm90IG5l
Y2Vzc2FyeQogIGVuYWJsZV9mYXN0X2luc3RhbGw9bmVlZGxlc3MKZmkKXSkjIEFDX0xJQlRPT0xf
UFJPR19MRF9IQVJEQ09ERV9MSUJQQVRICgoKIyBBQ19MSUJUT09MX1NZU19MSUJfU1RSSVAKIyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW0FDX0xJQlRPT0xfU1lTX0xJQl9TVFJJ
UF0sCltzdHJpcGxpYj0Kb2xkX3N0cmlwbGliPQpBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgc3Ry
aXBwaW5nIGxpYnJhcmllcyBpcyBwb3NzaWJsZV0pCmlmIHRlc3QgLW4gIiRTVFJJUCIgJiYgJFNU
UklQIC1WIDI+JjEgfCBncmVwICJHTlUgc3RyaXAiID4vZGV2L251bGw7IHRoZW4KICB0ZXN0IC16
ICIkb2xkX3N0cmlwbGliIiAmJiBvbGRfc3RyaXBsaWI9IiRTVFJJUCAtLXN0cmlwLWRlYnVnIgog
IHRlc3QgLXogIiRzdHJpcGxpYiIgJiYgc3RyaXBsaWI9IiRTVFJJUCAtLXN0cmlwLXVubmVlZGVk
IgogIEFDX01TR19SRVNVTFQoW3llc10pCmVsc2UKIyBGSVhNRSAtIGluc2VydCBzb21lIHJlYWwg
dGVzdHMsIGhvc3Rfb3MgaXNuJ3QgcmVhbGx5IGdvb2QgZW5vdWdoCiAgY2FzZSAkaG9zdF9vcyBp
bgogICBkYXJ3aW4qKQogICAgICAgaWYgdGVzdCAtbiAiJFNUUklQIiA7IHRoZW4KICAgICAgICAg
c3RyaXBsaWI9IiRTVFJJUCAteCIKICAgICAgICAgQUNfTVNHX1JFU1VMVChbeWVzXSkKICAgICAg
IGVsc2UKICBBQ19NU0dfUkVTVUxUKFtub10pCmZpCiAgICAgICA7OwogICAqKQogIEFDX01TR19S
RVNVTFQoW25vXSkKICAgIDs7CiAgZXNhYwpmaQpdKSMgQUNfTElCVE9PTF9TWVNfTElCX1NUUklQ
CgoKIyBBQ19MSUJUT09MX1NZU19EWU5BTUlDX0xJTktFUgojIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiMgUE9SVE1FIEZpbGwgaW4geW91ciBsZC5zbyBjaGFyYWN0ZXJpc3RpY3MKQUNf
REVGVU4oW0FDX0xJQlRPT0xfU1lTX0RZTkFNSUNfTElOS0VSXSwKW0FDX01TR19DSEVDS0lORyhb
ZHluYW1pYyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzXSkKbGlicmFyeV9uYW1lc19zcGVjPQpsaWJu
YW1lX3NwZWM9J2xpYiRuYW1lJwpzb25hbWVfc3BlYz0Kc2hyZXh0X2NtZHM9Ii5zbyIKcG9zdGlu
c3RhbGxfY21kcz0KcG9zdHVuaW5zdGFsbF9jbWRzPQpmaW5pc2hfY21kcz0KZmluaXNoX2V2YWw9
CnNobGlicGF0aF92YXI9CnNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD11bmtub3duCnZlcnNp
b25fdHlwZT1ub25lCmR5bmFtaWNfbGlua2VyPSIkaG9zdF9vcyBsZC5zbyIKc3lzX2xpYl9kbHNl
YXJjaF9wYXRoX3NwZWM9Ii9saWIgL3Vzci9saWIiCmlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVu
CiAgc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjPWAkQ0MgLXByaW50LXNlYXJjaC1kaXJzIHwgZ3Jl
cCAiXmxpYnJhcmllczoiIHwgJFNFRCAtZSAicy9ebGlicmFyaWVzOi8vIiAtZSAicyw9LywvLGci
YAogIGlmIGVjaG8gIiRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMiIHwgZ3JlcCAnOycgPi9kZXYv
bnVsbCA7IHRoZW4KICAgICMgaWYgdGhlIHBhdGggY29udGFpbnMgIjsiIHRoZW4gd2UgYXNzdW1l
IGl0IHRvIGJlIHRoZSBzZXBhcmF0b3IKICAgICMgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gdGhlIHN0
YW5kYXJkIHBhdGggc2VwYXJhdG9yIChpLmUuICI6IikgLSBpdCBpcwogICAgIyBhc3N1bWVkIHRo
YXQgbm8gcGFydCBvZiBhIG5vcm1hbCBwYXRobmFtZSBjb250YWlucyAiOyIgYnV0IHRoYXQgc2hv
dWxkCiAgICAjIG9rYXkgaW4gdGhlIHJlYWwgd29ybGQgd2hlcmUgIjsiIGluIGRpcnBhdGhzIGlz
IGl0c2VsZiBwcm9ibGVtYXRpYy4KICAgIHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz1gZWNobyAi
JHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYyIgfCAkU0VEIC1lICdzLzsvIC9nJ2AKICBlbHNlCiAg
ICBzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWM9YGVjaG8gIiRzeXNfbGliX3NlYXJjaF9wYXRoX3Nw
ZWMiIHwgJFNFRCAgLWUgInMvJFBBVEhfU0VQQVJBVE9SLyAvZyJgCiAgZmkKZWxzZQogIHN5c19s
aWJfc2VhcmNoX3BhdGhfc3BlYz0iL2xpYiAvdXNyL2xpYiAvdXNyL2xvY2FsL2xpYiIKZmkKbmVl
ZF9saWJfcHJlZml4PXVua25vd24KaGFyZGNvZGVfaW50b19saWJzPW5vCgojIHdoZW4geW91IHNl
dCBuZWVkX3ZlcnNpb24gdG8gbm8sIG1ha2Ugc3VyZSBpdCBkb2VzIG5vdCBjYXVzZSAtc2V0X3Zl
cnNpb24KIyBmbGFncyB0byBiZSBsZWZ0IHdpdGhvdXQgYXJndW1lbnRzCm5lZWRfdmVyc2lvbj11
bmtub3duCgpjYXNlICRob3N0X29zIGluCmFpeDMqKQogIHZlcnNpb25fdHlwZT1saW51eAogIGxp
YnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1
ZmZpeCAkbGlibmFtZS5hJwogIHNobGlicGF0aF92YXI9TElCUEFUSAoKICAjIEFJWCAzIGhhcyBu
byB2ZXJzaW9uaW5nIHN1cHBvcnQsIHNvIHdlIGFwcGVuZCBhIG1ham9yIHZlcnNpb24gdG8gdGhl
IG5hbWUuCiAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRt
YWpvcicKICA7OwoKYWl4NCogfCBhaXg1KikKICB2ZXJzaW9uX3R5cGU9bGludXgKICBuZWVkX2xp
Yl9wcmVmaXg9bm8KICBuZWVkX3ZlcnNpb249bm8KICBoYXJkY29kZV9pbnRvX2xpYnM9eWVzCiAg
aWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KICAgICMgQUlYIDUgc3VwcG9ydHMgSUE2
NAogICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4
dH0kbWFqb3IgJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1ZmZpeCAkbGli
bmFtZSR7c2hhcmVkX2V4dH0nCiAgICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAogIGVs
c2UKICAgICMgV2l0aCBHQ0MgdXAgdG8gMi45NS54LCBjb2xsZWN0MiB3b3VsZCBjcmVhdGUgYW4g
aW1wb3J0IGZpbGUKICAgICMgZm9yIGRlcGVuZGVuY2UgbGlicmFyaWVzLiAgVGhlIGltcG9ydCBm
aWxlIHdvdWxkIHN0YXJ0IHdpdGgKICAgICMgdGhlIGxpbmUgYCMhIC4nLiAgVGhpcyB3b3VsZCBj
YXVzZSB0aGUgZ2VuZXJhdGVkIGxpYnJhcnkgdG8KICAgICMgZGVwZW5kIG9uIGAuJywgYWx3YXlz
IGFuIGludmFsaWQgbGlicmFyeS4gIFRoaXMgd2FzIGZpeGVkIGluCiAgICAjIGRldmVsb3BtZW50
IHNuYXBzaG90cyBvZiBHQ0MgcHJpb3IgdG8gMy4wLgogICAgY2FzZSAkaG9zdF9vcyBpbgogICAg
ICBhaXg0IHwgYWl4NC5bWzAxXV0gfCBhaXg0LltbMDFdXS4qKQogICAgICBpZiB7IGVjaG8gJyNp
ZiBfX0dOVUNfXyA+IDIgfHwgKF9fR05VQ19fID09IDIgJiYgX19HTlVDX01JTk9SX18gPj0gOTcp
JwoJICAgZWNobyAnIHllcyAnCgkgICBlY2hvICcjZW5kaWYnOyB9IHwgJHtDQ30gLUUgLSB8IGdy
ZXAgeWVzID4gL2Rldi9udWxsOyB0aGVuCgk6CiAgICAgIGVsc2UKCWNhbl9idWlsZF9zaGFyZWQ9
bm8KICAgICAgZmkKICAgICAgOzsKICAgIGVzYWMKICAgICMgQUlYIChvbiBQb3dlciopIGhhcyBu
byB2ZXJzaW9uaW5nIHN1cHBvcnQsIHNvIGN1cnJlbnRseSB3ZSBjYW4gbm90IGhhcmRjb2RlIGNv
cnJlY3QKICAgICMgc29uYW1lIGludG8gZXhlY3V0YWJsZS4gUHJvYmFibHkgd2UgY2FuIGFkZCB2
ZXJzaW9uaW5nIHN1cHBvcnQgdG8KICAgICMgY29sbGVjdDIsIHNvIGFkZGl0aW9uYWwgbGlua3Mg
Y2FuIGJlIHVzZWZ1bCBpbiBmdXR1cmUuCiAgICBpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlu
a2luZyIgPSB5ZXM7IHRoZW4KICAgICAgIyBJZiB1c2luZyBydW4gdGltZSBsaW5raW5nIChvbiBB
SVggNC4yIG9yIGxhdGVyKSB1c2UgbGliPG5hbWU+LnNvCiAgICAgICMgaW5zdGVhZCBvZiBsaWI8
bmFtZT4uYSB0byBsZXQgcGVvcGxlIGtub3cgdGhhdCB0aGVzZSBhcmUgbm90CiAgICAgICMgdHlw
aWNhbCBBSVggc2hhcmVkIGxpYnJhcmllcy4KICAgICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xp
Ym5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVh
c2V9JHtzaGFyZWRfZXh0fSRtYWpvciAkbGlibmFtZSR7c2hhcmVkX2V4dH0nCiAgICBlbHNlCiAg
ICAgICMgV2UgcHJlc2VydmUgLmEgYXMgZXh0ZW5zaW9uIGZvciBzaGFyZWQgbGlicmFyaWVzIHRo
cm91Z2ggQUlYNC4yCiAgICAgICMgYW5kIGxhdGVyIHdoZW4gd2UgYXJlIG5vdCBkb2luZyBydW4g
dGltZSBsaW5raW5nLgogICAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVh
c2V9LmEgJGxpYm5hbWUuYScKICAgICAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9
JHtzaGFyZWRfZXh0fSRtYWpvcicKICAgIGZpCiAgICBzaGxpYnBhdGhfdmFyPUxJQlBBVEgKICBm
aQogIDs7CgphbWlnYW9zKikKICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lLml4bGlicmFy
eSAkbGlibmFtZS5hJwogICMgQ3JlYXRlICR7bGlibmFtZX1faXhsaWJyYXJ5LmEgZW50cmllcyBp
biAvc3lzL2xpYnMuCiAgZmluaXNoX2V2YWw9J2ZvciBsaWIgaW4gYGxzICRsaWJkaXIvKi5peGxp
YnJhcnkgMj4vZGV2L251bGxgOyBkbyBsaWJuYW1lPWAkZWNobyAiWCRsaWIiIHwgJFhzZWQgLWUg
J1wnJ3MlXi4qL1woW1teL11dKlwpXC5peGxpYnJhcnkkJVwxJSdcJydgOyB0ZXN0ICRybSAvc3lz
L2xpYnMvJHtsaWJuYW1lfV9peGxpYnJhcnkuYTsgJHNob3cgImNkIC9zeXMvbGlicyAmJiAkTE5f
UyAkbGliICR7bGlibmFtZX1faXhsaWJyYXJ5LmEiOyBjZCAvc3lzL2xpYnMgJiYgJExOX1MgJGxp
YiAke2xpYm5hbWV9X2l4bGlicmFyeS5hIHx8IGV4aXQgMTsgZG9uZScKICA7OwoKYmVvcyopCiAg
bGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtzaGFyZWRfZXh0fScKICBkeW5hbWljX2xp
bmtlcj0iJGhvc3Rfb3MgbGQuc28iCiAgc2hsaWJwYXRoX3Zhcj1MSUJSQVJZX1BBVEgKICA7OwoK
YnNkaVtbNDVdXSopCiAgdmVyc2lvbl90eXBlPWxpbnV4CiAgbmVlZF92ZXJzaW9uPW5vCiAgbGli
cmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3Vm
Zml4ICR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvciAkbGlibmFtZSR7c2hh
cmVkX2V4dH0nCiAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0
fSRtYWpvcicKICBmaW5pc2hfY21kcz0nUEFUSD0iXCRQQVRIOi9zYmluIiBsZGNvbmZpZyAkbGli
ZGlyJwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgc3lzX2xpYl9zZWFyY2hfcGF0
aF9zcGVjPSIvc2hsaWIgL3Vzci9saWIgL3Vzci9YMTEvbGliIC91c3IvY29udHJpYi9saWIgL2xp
YiAvdXNyL2xvY2FsL2xpYiIKICBzeXNfbGliX2Rsc2VhcmNoX3BhdGhfc3BlYz0iL3NobGliIC91
c3IvbGliIC91c3IvbG9jYWwvbGliIgogICMgdGhlIGRlZmF1bHQgbGQuc28uY29uZiBhbHNvIGNv
bnRhaW5zIC91c3IvY29udHJpYi9saWIgYW5kCiAgIyAvdXNyL1gxMVI2L2xpYiAoL3Vzci9YMTEg
aXMgYSBsaW5rIHRvIC91c3IvWDExUjYpLCBidXQgbGV0IHVzIGFsbG93CiAgIyBsaWJ0b29sIHRv
IGhhcmQtY29kZSB0aGVzZSBpbnRvIHByb2dyYW1zCiAgOzsKCmN5Z3dpbiogfCBtaW5ndyogfCBw
dzMyKikKICB2ZXJzaW9uX3R5cGU9d2luZG93cwogIHNocmV4dF9jbWRzPSIuZGxsIgogIG5lZWRf
dmVyc2lvbj1ubwogIG5lZWRfbGliX3ByZWZpeD1ubwoKICBjYXNlICRHQ0MsJGhvc3Rfb3MgaW4K
ICB5ZXMsY3lnd2luKiB8IHllcyxtaW5ndyogfCB5ZXMscHczMiopCiAgICBsaWJyYXJ5X25hbWVz
X3NwZWM9JyRsaWJuYW1lLmRsbC5hJwogICAgIyBETEwgaXMgaW5zdGFsbGVkIHRvICQobGliZGly
KS8uLi9iaW4gYnkgcG9zdGluc3RhbGxfY21kcwogICAgcG9zdGluc3RhbGxfY21kcz0nYmFzZV9m
aWxlPWBiYXNlbmFtZSBcJHtmaWxlfWB+CiAgICAgIGRscGF0aD1gJFNIRUxMIDI+JjEgLWMgJ1wn
Jy4gJGRpci8nXCcnXCR7YmFzZV9maWxlfSdcJydpO2VjaG8gXCRkbG5hbWUnXCcnYH4KICAgICAg
ZGxkaXI9JGRlc3RkaXIvYGRpcm5hbWUgXCRkbHBhdGhgfgogICAgICB0ZXN0IC1kIFwkZGxkaXIg
fHwgbWtkaXIgLXAgXCRkbGRpcn4KICAgICAgJGluc3RhbGxfcHJvZyAkZGlyLyRkbG5hbWUgXCRk
bGRpci8kZGxuYW1lfgogICAgICBjaG1vZCBhK3ggXCRkbGRpci8kZGxuYW1lJwogICAgcG9zdHVu
aW5zdGFsbF9jbWRzPSdkbGRsbD1gJFNIRUxMIDI+JjEgLWMgJ1wnJy4gJGZpbGU7IGVjaG8gXCRk
bG5hbWUnXCcnYH4KICAgICAgZGxwYXRoPSRkaXIvXCRkbGRsbH4KICAgICAgICRybSBcJGRscGF0
aCcKICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKCiAgICBjYXNlICRob3N0X29z
IGluCiAgICBjeWd3aW4qKQogICAgICAjIEN5Z3dpbiBETExzIHVzZSAnY3lnJyBwcmVmaXggcmF0
aGVyIHRoYW4gJ2xpYicKICAgICAgc29uYW1lX3NwZWM9J2BlY2hvICR7bGlibmFtZX0gfCBzZWQg
LWUgJ3MvXmxpYi9jeWcvJ2BgZWNobyAke3JlbGVhc2V9IHwgJFNFRCAtZSAncy9bWy5dXS8tL2cn
YCR7dmVyc3VmZml4fSR7c2hhcmVkX2V4dH0nCiAgICAgIHN5c19saWJfc2VhcmNoX3BhdGhfc3Bl
Yz0iL3Vzci9saWIgL2xpYi93MzJhcGkgL2xpYiAvdXNyL2xvY2FsL2xpYiIKICAgICAgOzsKICAg
IG1pbmd3KikKICAgICAgIyBNaW5HVyBETExzIHVzZSB0cmFkaXRpb25hbCAnbGliJyBwcmVmaXgK
ICAgICAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX1gZWNobyAke3JlbGVhc2V9IHwgJFNFRCAtZSAn
cy9bWy5dXS8tL2cnYCR7dmVyc3VmZml4fSR7c2hhcmVkX2V4dH0nCiAgICAgIHN5c19saWJfc2Vh
cmNoX3BhdGhfc3BlYz1gJENDIC1wcmludC1zZWFyY2gtZGlycyB8IGdyZXAgIl5saWJyYXJpZXM6
IiB8ICRTRUQgLWUgInMvXmxpYnJhcmllczovLyIgLWUgInMsPS8sLyxnImAKICAgICAgaWYgZWNo
byAiJHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYyIgfCBbZ3JlcCAnO1tjLXpDLVpdOi8nID4vZGV2
L251bGxdOyB0aGVuCiAgICAgICAgIyBJdCBpcyBtb3N0IHByb2JhYmx5IGEgV2luZG93cyBmb3Jt
YXQgUEFUSCBwcmludGVkIGJ5CiAgICAgICAgIyBtaW5ndyBnY2MsIGJ1dCB3ZSBhcmUgcnVubmlu
ZyBvbiBDeWd3aW4uIEdjYyBwcmludHMgaXRzIHNlYXJjaAogICAgICAgICMgcGF0aCB3aXRoIDsg
c2VwYXJhdG9ycywgYW5kIHdpdGggZHJpdmUgbGV0dGVycy4gV2UgY2FuIGhhbmRsZSB0aGUKICAg
ICAgICAjIGRyaXZlIGxldHRlcnMgKGN5Z3dpbiBmaWxldXRpbHMgdW5kZXJzdGFuZHMgdGhlbSks
IHNvIGxlYXZlIHRoZW0sCiAgICAgICAgIyBlc3BlY2lhbGx5IGFzIHdlIG1pZ2h0IHBhc3MgZmls
ZXMgZm91bmQgdGhlcmUgdG8gYSBtaW5ndyBvYmpkdW1wLAogICAgICAgICMgd2hpY2ggd291bGRu
J3QgdW5kZXJzdGFuZCBhIGN5Z3dpbmlmaWVkIHBhdGguIEFoaC4KICAgICAgICBzeXNfbGliX3Nl
YXJjaF9wYXRoX3NwZWM9YGVjaG8gIiRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMiIHwgJFNFRCAt
ZSAncy87LyAvZydgCiAgICAgIGVsc2UKICAgICAgICBzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWM9
YGVjaG8gIiRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMiIHwgJFNFRCAgLWUgInMvJFBBVEhfU0VQ
QVJBVE9SLyAvZyJgCiAgICAgIGZpCiAgICAgIDs7CiAgICBwdzMyKikKICAgICAgIyBwdzMyIERM
THMgdXNlICdwdycgcHJlZml4IHJhdGhlciB0aGFuICdsaWInCiAgICAgIGxpYnJhcnlfbmFtZXNf
c3BlYz0nYGVjaG8gJHtsaWJuYW1lfSB8IHNlZCAtZSAncy9ebGliL3B3LydgYGVjaG8gJHtyZWxl
YXNlfSB8ICRTRUQgLWUgJ3MvW1suXV0vLS9nJ2Ake3ZlcnN1ZmZpeH0ke3NoYXJlZF9leHR9Jwog
ICAgICA7OwogICAgZXNhYwogICAgOzsKCiAgbGludXgqKQogICAgaWYgJExEIC0taGVscCAyPiYx
IHwgZWdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVsbDsgdGhlbgog
ICAgICBhcmNoaXZlX2NtZHM9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxl
cl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAtbyAkbGliJwogICAgICBzdXBwb3J0c19h
bm9uX3ZlcnNpb25pbmc9bm8KICAgICAgY2FzZSBgJExEIC12IDI+L2Rldi9udWxsYCBpbgogICAg
ICAgICpcIFswMV0uKiB8ICpcIDIuW1swLTldXS4qIHwgKlwgMi4xMC4qKSA7OyAjIGNhdGNoIHZl
cnNpb25zIDwgMi4xMQogICAgICAgICpcIDIuMTEuOTMuMC4yXCAqKSBzdXBwb3J0c19hbm9uX3Zl
cnNpb25pbmc9eWVzIDs7ICMgUkg3LjMgLi4uCiAgICAgICAgKlwgMi4xMS45Mi4wLjEyXCAqKSBz
dXBwb3J0c19hbm9uX3ZlcnNpb25pbmc9eWVzIDs7ICMgTWFuZHJha2UgOC4yIC4uLgogICAgICAg
ICpcIDIuMTEuKikgOzsgIyBvdGhlciAyLjExIHZlcnNpb25zCiAgICAgICAgKikgc3VwcG9ydHNf
YW5vbl92ZXJzaW9uaW5nPXllcyA7OwogICAgICBlc2FjCiAgICAgIGlmIHRlc3QgJHN1cHBvcnRz
X2Fub25fdmVyc2lvbmluZyA9IHllczsgdGhlbgogICAgICAgIGFyY2hpdmVfZXhwc3ltX2NtZHM9
JyRlY2hvICJ7IGdsb2JhbDoiID4gJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUudmVyfgpjYXQgJGV4
cG9ydF9zeW1ib2xzIHwgc2VkIC1lICJzL1woLipcKS9cMTsvIiA+PiAkb3V0cHV0X29iamRpci8k
bGlibmFtZS52ZXJ+CiRlY2hvICJsb2NhbDogKjsgfTsiID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJu
YW1lLnZlcn4KICAgICAgICAkQ0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJf
ZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgJHt3bH0tdmVyc2lvbi1zY3JpcHQgJHt3bH0k
b3V0cHV0X29iamRpci8kbGlibmFtZS52ZXIgLW8gJGxpYicKICAgICAgZWxzZQogICAgICAgICRh
cmNoaXZlX2V4cHN5bV9jbWRzPSIkYXJjaGl2ZV9jbWRzIgogICAgICBmaQogICAgZWxzZQogICAg
ICBsZF9zaGxpYnM9bm8KICAgIGZpCiAgICA7OwoKICAqKQogICAgbGlicmFyeV9uYW1lc19zcGVj
PScke2xpYm5hbWV9YGVjaG8gJHtyZWxlYXNlfSB8ICRTRUQgLWUgJ3MvW1suXV0vLS9nJ2Ake3Zl
cnN1ZmZpeH0ke3NoYXJlZF9leHR9ICRsaWJuYW1lLmxpYicKICAgIDs7CiAgZXNhYwogIGR5bmFt
aWNfbGlua2VyPSdXaW4zMiBsZC5leGUnCiAgIyBGSVhNRTogZmlyc3Qgd2Ugc2hvdWxkIHNlYXJj
aCAuIGFuZCB0aGUgZGlyZWN0b3J5IHRoZSBleGVjdXRhYmxlIGlzIGluCiAgc2hsaWJwYXRoX3Zh
cj1QQVRICiAgOzsKCmRhcndpbiogfCByaGFwc29keSopCiAgZHluYW1pY19saW5rZXI9IiRob3N0
X29zIGR5bGQiCiAgdmVyc2lvbl90eXBlPWRhcndpbgogIG5lZWRfbGliX3ByZWZpeD1ubwogIG5l
ZWRfdmVyc2lvbj1ubwogIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0k
e3ZlcnN1ZmZpeH0kc2hhcmVkX2V4dCAke2xpYm5hbWV9JHtyZWxlYXNlfSR7bWFqb3J9JHNoYXJl
ZF9leHQgJHtsaWJuYW1lfSRzaGFyZWRfZXh0JwogIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHty
ZWxlYXNlfSR7bWFqb3J9JHNoYXJlZF9leHQnCiAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRo
PXllcwogIHNobGlicGF0aF92YXI9RFlMRF9MSUJSQVJZX1BBVEgKICBzaHJleHRfY21kcz0nYHRl
c3QgLiRtb2R1bGUgPSAueWVzICYmIGVjaG8gLnNvIHx8IGVjaG8gLmR5bGliYCcKICAjIEFwcGxl
J3MgZ2NjIHByaW50cyAnZ2NjIC1wcmludC1zZWFyY2gtZGlycycgZG9lc24ndCBvcGVyYXRlIHRo
ZSBzYW1lLgogIGlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCiAgICBzeXNfbGliX3NlYXJjaF9w
YXRoX3NwZWM9YCRDQyAtcHJpbnQtc2VhcmNoLWRpcnMgfCB0ciAiXG4iICIkUEFUSF9TRVBBUkFU
T1IiIHwgc2VkIC1lICdzL2xpYnJhcmllczovQGxpYnJhcmllczovJyB8IHRyICJAIiAiXG4iIHwg
Z3JlcCAiXmxpYnJhcmllczoiIHwgc2VkIC1lICJzL15saWJyYXJpZXM6Ly8iIC1lICJzLD0vLC8s
ZyIgLWUgInMsJFBBVEhfU0VQQVJBVE9SLCAsZyIgLWUgInMsLiosJiAvbGliIC91c3IvbGliIC91
c3IvbG9jYWwvbGliLGciYAogIGVsc2UKICAgIHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0nL2xp
YiAvdXNyL2xpYiAvdXNyL2xvY2FsL2xpYicKICBmaQogIHN5c19saWJfZGxzZWFyY2hfcGF0aF9z
cGVjPScvdXNyL2xvY2FsL2xpYiAvbGliIC91c3IvbGliJwogIDs7CgpkZ3V4KikKICB2ZXJzaW9u
X3R5cGU9bGludXgKICBuZWVkX2xpYl9wcmVmaXg9bm8KICBuZWVkX3ZlcnNpb249bm8KICBsaWJy
YXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJzdWZm
aXggJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICRsaWJuYW1lJHNoYXJl
ZF9leHQnCiAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRt
YWpvcicKICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAogIDs7CgpmcmVlYnNkMSopCiAg
ZHluYW1pY19saW5rZXI9bm8KICA7OwoKa2ZyZWVic2QqLWdudSkKICB2ZXJzaW9uX3R5cGU9bGlu
dXgKICBuZWVkX2xpYl9wcmVmaXg9bm8KICBuZWVkX3ZlcnNpb249bm8KICBsaWJyYXJ5X25hbWVz
X3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJzdWZmaXggJHtsaWJu
YW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICR7bGlibmFtZX0ke3NoYXJlZF9leHR9
JwogIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3In
CiAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BBVEgKICBzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1
bnBhdGg9bm8KICBoYXJkY29kZV9pbnRvX2xpYnM9eWVzCiAgZHluYW1pY19saW5rZXI9J0dOVSBs
ZC5zbycKICA7OwoKZnJlZWJzZCogfCBkcmFnb25mbHkqKQogICMgRHJhZ29uRmx5IGRvZXMgbm90
IGhhdmUgYW91dC4gIFdoZW4vaWYgdGhleSBpbXBsZW1lbnQgYSBuZXcKICAjIHZlcnNpb25pbmcg
bWVjaGFuaXNtLCBhZGp1c3QgdGhpcy4KICBpZiB0ZXN0IC14IC91c3IvYmluL29iamZvcm1hdDsg
dGhlbgogICAgb2JqZm9ybWF0PWAvdXNyL2Jpbi9vYmpmb3JtYXRgCiAgZWxzZQogICAgY2FzZSAk
aG9zdF9vcyBpbgogICAgZnJlZWJzZFtbMTIzXV0qKSBvYmpmb3JtYXQ9YW91dCA7OwogICAgKikg
b2JqZm9ybWF0PWVsZiA7OwogICAgZXNhYwogIGZpCiAgIyBIYW5kbGUgR2VudG9vL0ZyZWVCU0Qg
YXMgaXQgd2FzIExpbnV4CiAgY2FzZSAkaG9zdF92ZW5kb3IgaW4KICAgIGdlbnRvbykKICAgICAg
dmVyc2lvbl90eXBlPWxpbnV4IDs7CiAgICAqKQogICAgICB2ZXJzaW9uX3R5cGU9ZnJlZWJzZC0k
b2JqZm9ybWF0IDs7CiAgZXNhYwoKICBjYXNlICR2ZXJzaW9uX3R5cGUgaW4KICAgIGZyZWVic2Qt
ZWxmKikKICAgICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hh
cmVkX2V4dH0kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSAkbGli
bmFtZSR7c2hhcmVkX2V4dH0nCiAgICAgIG5lZWRfdmVyc2lvbj1ubwogICAgICBuZWVkX2xpYl9w
cmVmaXg9bm8KICAgICAgOzsKICAgIGZyZWVic2QtKikKICAgICAgbGlicmFyeV9uYW1lc19zcGVj
PScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICRsaWJuYW1lJHtz
aGFyZWRfZXh0fSR2ZXJzdWZmaXgnCiAgICAgIG5lZWRfdmVyc2lvbj15ZXMKICAgICAgOzsKICAg
IGxpbnV4KQogICAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtz
aGFyZWRfZXh0fSR2ZXJzdWZmaXggJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1h
am9yICR7bGlibmFtZX0ke3NoYXJlZF9leHR9JwogICAgICBzb25hbWVfc3BlYz0nJHtsaWJuYW1l
fSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yJwogICAgICBuZWVkX2xpYl9wcmVmaXg9bm8K
ICAgICAgbmVlZF92ZXJzaW9uPW5vCiAgICAgIDs7CiAgZXNhYwogIHNobGlicGF0aF92YXI9TERf
TElCUkFSWV9QQVRICiAgY2FzZSAkaG9zdF9vcyBpbgogIGZyZWVic2QyKikKICAgIHNobGlicGF0
aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKICAgIDs7CiAgZnJlZWJzZDMuW1swMV1dKiB8IGZyZWVi
c2RlbGYzLltbMDFdXSopCiAgICBzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9eWVzCiAgICBo
YXJkY29kZV9pbnRvX2xpYnM9eWVzCiAgICA7OwogIGZyZWVic2QzLltbMi05XV0qIHwgZnJlZWJz
ZGVsZjMuW1syLTldXSogfCBcCiAgZnJlZWJzZDQuW1swLTVdXSB8IGZyZWVic2RlbGY0LltbMC01
XV0gfCBmcmVlYnNkNC4xLjEgfCBmcmVlYnNkZWxmNC4xLjEpCiAgICBzaGxpYnBhdGhfb3ZlcnJp
ZGVzX3J1bnBhdGg9bm8KICAgIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKICAgIDs7CiAgZnJlZWJz
ZCopICMgZnJvbSA0LjYgb24KICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKICAg
IGhhcmRjb2RlX2ludG9fbGlicz15ZXMKICAgIDs7CiAgZXNhYwogIDs7CgpnbnUqKQogIHZlcnNp
b25fdHlwZT1saW51eAogIG5lZWRfbGliX3ByZWZpeD1ubwogIG5lZWRfdmVyc2lvbj1ubwogIGxp
YnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1
ZmZpeCAke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0ke21ham9yfSAke2xpYm5hbWV9
JHtzaGFyZWRfZXh0fScKICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJl
ZF9leHR9JG1ham9yJwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgaGFyZGNvZGVf
aW50b19saWJzPXllcwogIDs7CgpocHV4OSogfCBocHV4MTAqIHwgaHB1eDExKikKICAjIEdpdmUg
YSBzb25hbWUgY29ycmVzcG9uZGluZyB0byB0aGUgbWFqb3IgdmVyc2lvbiBzbyB0aGF0IGRsZC5z
bCByZWZ1c2VzIHRvCiAgIyBsaW5rIGFnYWluc3Qgb3RoZXIgdmVyc2lvbnMuCiAgdmVyc2lvbl90
eXBlPXN1bm9zCiAgbmVlZF9saWJfcHJlZml4PW5vCiAgbmVlZF92ZXJzaW9uPW5vCiAgY2FzZSAk
aG9zdF9jcHUgaW4KICBpYTY0KikKICAgIHNocmV4dF9jbWRzPScuc28nCiAgICBoYXJkY29kZV9p
bnRvX2xpYnM9eWVzCiAgICBkeW5hbWljX2xpbmtlcj0iJGhvc3Rfb3MgZGxkLnNvIgogICAgc2hs
aWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BBVEgKICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0
aD15ZXMgIyBVbmxlc3MgK25vZW52dmFyIGlzIHNwZWNpZmllZC4KICAgIGxpYnJhcnlfbmFtZXNf
c3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1ZmZpeCAke2xpYm5h
bWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3IgJGxpYm5hbWUke3NoYXJlZF9leHR9Jwog
ICAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvcicK
ICAgIGlmIHRlc3QgIlgkSFBVWF9JQTY0X01PREUiID0gWDMyOyB0aGVuCiAgICAgIHN5c19saWJf
c2VhcmNoX3BhdGhfc3BlYz0iL3Vzci9saWIvaHB1eDMyIC91c3IvbG9jYWwvbGliL2hwdXgzMiAv
dXNyL2xvY2FsL2xpYiIKICAgIGVsc2UKICAgICAgc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjPSIv
dXNyL2xpYi9ocHV4NjQgL3Vzci9sb2NhbC9saWIvaHB1eDY0IgogICAgZmkKICAgIHN5c19saWJf
ZGxzZWFyY2hfcGF0aF9zcGVjPSRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMKICAgIDs7CiAgIGhw
cGEqNjQqKQogICAgIHNocmV4dF9jbWRzPScuc2wnCiAgICAgaGFyZGNvZGVfaW50b19saWJzPXll
cwogICAgIGR5bmFtaWNfbGlua2VyPSIkaG9zdF9vcyBkbGQuc2wiCiAgICAgc2hsaWJwYXRoX3Zh
cj1MRF9MSUJSQVJZX1BBVEggIyBIb3cgc2hvdWxkIHdlIGhhbmRsZSBTSExJQl9QQVRICiAgICAg
c2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcyAjIFVubGVzcyArbm9lbnZ2YXIgaXMgc3Bl
Y2lmaWVkLgogICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3No
YXJlZF9leHR9JHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFq
b3IgJGxpYm5hbWUke3NoYXJlZF9leHR9JwogICAgIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHty
ZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3InCiAgICAgc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVj
PSIvdXNyL2xpYi9wYTIwXzY0IC91c3IvY2NzL2xpYi9wYTIwXzY0IgogICAgIHN5c19saWJfZGxz
ZWFyY2hfcGF0aF9zcGVjPSRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMKICAgICA7OwogICAqKQog
ICAgc2hyZXh0X2NtZHM9Jy5zbCcKICAgIGR5bmFtaWNfbGlua2VyPSIkaG9zdF9vcyBkbGQuc2wi
CiAgICBzaGxpYnBhdGhfdmFyPVNITElCX1BBVEgKICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVu
cGF0aD1ubyAjICtzIGlzIHJlcXVpcmVkIHRvIGVuYWJsZSBTSExJQl9QQVRICiAgICBsaWJyYXJ5
X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJzdWZmaXgg
JHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICRsaWJuYW1lJHtzaGFyZWRf
ZXh0fScKICAgIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0k
bWFqb3InCiAgICA7OwogIGVzYWMKICAjIEhQLVVYIHJ1bnMgKnJlYWxseSogc2xvd2x5IHVubGVz
cyBzaGFyZWQgbGlicmFyaWVzIGFyZSBtb2RlIDU1NS4KICBwb3N0aW5zdGFsbF9jbWRzPSdjaG1v
ZCA1NTUgJGxpYicKICA7OwoKaW50ZXJpeDMqKQogIHZlcnNpb25fdHlwZT1saW51eAogIG5lZWRf
bGliX3ByZWZpeD1ubwogIG5lZWRfdmVyc2lvbj1ubwogIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHts
aWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtyZWxl
YXNlfSR7c2hhcmVkX2V4dH0kbWFqb3IgJHtsaWJuYW1lfSR7c2hhcmVkX2V4dH0nCiAgc29uYW1l
X3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvcicKICBkeW5hbWlj
X2xpbmtlcj0nSW50ZXJpeCAzLnggbGQuc28uMSAoUEUsIGxpa2UgRUxGKScKICBzaGxpYnBhdGhf
dmFyPUxEX0xJQlJBUllfUEFUSAogIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1ubwogIGhh
cmRjb2RlX2ludG9fbGlicz15ZXMKICA7OwoKaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KikK
ICBjYXNlICRob3N0X29zIGluCiAgICBub25zdG9wdXgqKSB2ZXJzaW9uX3R5cGU9bm9uc3RvcHV4
IDs7CiAgICAqKQoJaWYgdGVzdCAiJGx0X2N2X3Byb2dfZ251X2xkIiA9IHllczsgdGhlbgoJCXZl
cnNpb25fdHlwZT1saW51eAoJZWxzZQoJCXZlcnNpb25fdHlwZT1pcml4CglmaSA7OwogIGVzYWMK
ICBuZWVkX2xpYl9wcmVmaXg9bm8KICBuZWVkX3ZlcnNpb249bm8KICBzb25hbWVfc3BlYz0nJHts
aWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yJwogIGxpYnJhcnlfbmFtZXNfc3Bl
Yz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1ZmZpeCAke2xpYm5hbWV9
JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3IgJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJl
ZF9leHR9ICRsaWJuYW1lJHtzaGFyZWRfZXh0fScKICBjYXNlICRob3N0X29zIGluCiAgaXJpeDUq
IHwgbm9uc3RvcHV4KikKICAgIGxpYnN1ZmY9IHNobGlic3VmZj0KICAgIDs7CiAgKikKICAgIGNh
c2UgJExEIGluICMgbGlidG9vbC5tNCB3aWxsIGFkZCBvbmUgb2YgdGhlc2Ugc3dpdGNoZXMgdG8g
TEQKICAgICotMzJ8KiItMzIgInwqLW1lbGYzMmJzbWlwfCoiLW1lbGYzMmJzbWlwICIpCiAgICAg
IGxpYnN1ZmY9IHNobGlic3VmZj0gbGlibWFnaWM9MzItYml0OzsKICAgICotbjMyfCoiLW4zMiAi
fCotbWVsZjMyYm1pcG4zMnwqIi1tZWxmMzJibWlwbjMyICIpCiAgICAgIGxpYnN1ZmY9MzIgc2hs
aWJzdWZmPU4zMiBsaWJtYWdpYz1OMzI7OwogICAgKi02NHwqIi02NCAifCotbWVsZjY0Ym1pcHwq
Ii1tZWxmNjRibWlwICIpCiAgICAgIGxpYnN1ZmY9NjQgc2hsaWJzdWZmPTY0IGxpYm1hZ2ljPTY0
LWJpdDs7CiAgICAqKSBsaWJzdWZmPSBzaGxpYnN1ZmY9IGxpYm1hZ2ljPW5ldmVyLW1hdGNoOzsK
ICAgIGVzYWMKICAgIDs7CiAgZXNhYwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWSR7c2hsaWJz
dWZmfV9QQVRICiAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPW5vCiAgc3lzX2xpYl9zZWFy
Y2hfcGF0aF9zcGVjPSIvdXNyL2xpYiR7bGlic3VmZn0gL2xpYiR7bGlic3VmZn0gL3Vzci9sb2Nh
bC9saWIke2xpYnN1ZmZ9IgogIHN5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjPSIvdXNyL2xpYiR7
bGlic3VmZn0gL2xpYiR7bGlic3VmZn0iCiAgaGFyZGNvZGVfaW50b19saWJzPXllcwogIDs7Cgoj
IE5vIHNoYXJlZCBsaWIgc3VwcG9ydCBmb3IgTGludXggb2xkbGQsIGFvdXQsIG9yIGNvZmYuCmxp
bnV4Km9sZGxkKiB8IGxpbnV4KmFvdXQqIHwgbGludXgqY29mZiopCiAgZHluYW1pY19saW5rZXI9
bm8KICA7OwoKIyBUaGlzIG11c3QgYmUgTGludXggRUxGLgpsaW51eCopCiAgdmVyc2lvbl90eXBl
PWxpbnV4CiAgbmVlZF9saWJfcHJlZml4PW5vCiAgbmVlZF92ZXJzaW9uPW5vCiAgbGlicmFyeV9u
YW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7
bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvciAkbGlibmFtZSR7c2hhcmVkX2V4
dH0nCiAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpv
cicKICBmaW5pc2hfY21kcz0nUEFUSD0iXCRQQVRIOi9zYmluIiBsZGNvbmZpZyAtbiAkbGliZGly
JwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgc2hsaWJwYXRoX292ZXJyaWRlc19y
dW5wYXRoPW5vCiAgIyBUaGlzIGltcGxpZXMgbm8gZmFzdF9pbnN0YWxsLCB3aGljaCBpcyB1bmFj
Y2VwdGFibGUuCiAgIyBTb21lIHJld29yayB3aWxsIGJlIG5lZWRlZCB0byBhbGxvdyBmb3IgZmFz
dF9pbnN0YWxsCiAgIyBiZWZvcmUgdGhpcyBjYW4gYmUgZW5hYmxlZC4KICBoYXJkY29kZV9pbnRv
X2xpYnM9eWVzCgogICMgQXBwZW5kIGxkLnNvLmNvbmYgY29udGVudHMgdG8gdGhlIHNlYXJjaCBw
YXRoCiAgaWYgdGVzdCAtZiAvZXRjL2xkLnNvLmNvbmY7IHRoZW4KICAgIGx0X2xkX2V4dHJhPWBh
d2sgJy9eaW5jbHVkZSAvIHsgc3lzdGVtKHNwcmludGYoImNkIC9ldGM7IGNhdCAlcyIsIFxbJF0y
KSk7IHNraXAgPSAxOyB9IHsgaWYgKCFza2lwKSBwcmludCBcWyRdMDsgc2tpcCA9IDA7IH0nIDwg
L2V0Yy9sZC5zby5jb25mIHwgJFNFRCAtZSAncy8jLiovLztzL1s6LAldLyAvZztzLz1bXj1dKiQv
LztzLz1bXj0gXSogLyAvZzsvXiQvZCcgfCB0ciAnXG4nICcgJ2AKICAgIHN5c19saWJfZGxzZWFy
Y2hfcGF0aF9zcGVjPSIvbGliIC91c3IvbGliICRsdF9sZF9leHRyYSIKICBmaQoKICAjIFdlIHVz
ZWQgdG8gdGVzdCBmb3IgL2xpYi9sZC5zby4xIGFuZCBkaXNhYmxlIHNoYXJlZCBsaWJyYXJpZXMg
b24KICAjIHBvd2VycGMsIGJlY2F1c2UgTWtMaW51eCBvbmx5IHN1cHBvcnRlZCBzaGFyZWQgbGli
cmFyaWVzIHdpdGggdGhlCiAgIyBHTlUgZHluYW1pYyBsaW5rZXIuICBTaW5jZSB0aGlzIHdhcyBi
cm9rZW4gd2l0aCBjcm9zcyBjb21waWxlcnMsCiAgIyBtb3N0IHBvd2VycGMtbGludXggYm94ZXMg
c3VwcG9ydCBkeW5hbWljIGxpbmtpbmcgdGhlc2UgZGF5cyBhbmQKICAjIHBlb3BsZSBjYW4gYWx3
YXlzIC0tZGlzYWJsZS1zaGFyZWQsIHRoZSB0ZXN0IHdhcyByZW1vdmVkLCBhbmQgd2UKICAjIGFz
c3VtZSB0aGUgR05VL0xpbnV4IGR5bmFtaWMgbGlua2VyIGlzIGluIHVzZS4KICBkeW5hbWljX2xp
bmtlcj0nR05VL0xpbnV4IGxkLnNvJwogIDs7CgprbmV0YnNkKi1nbnUpCiAgdmVyc2lvbl90eXBl
PWxpbnV4CiAgbmVlZF9saWJfcHJlZml4PW5vCiAgbmVlZF92ZXJzaW9uPW5vCiAgbGlicmFyeV9u
YW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7
bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvciAke2xpYm5hbWV9JHtzaGFyZWRf
ZXh0fScKICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1h
am9yJwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgc2hsaWJwYXRoX292ZXJyaWRl
c19ydW5wYXRoPW5vCiAgaGFyZGNvZGVfaW50b19saWJzPXllcwogIGR5bmFtaWNfbGlua2VyPSdH
TlUgbGQuc28nCiAgOzsKCm5ldGJzZCopCiAgdmVyc2lvbl90eXBlPXN1bm9zCiAgbmVlZF9saWJf
cHJlZml4PW5vCiAgbmVlZF92ZXJzaW9uPW5vCiAgaWYgZWNobyBfX0VMRl9fIHwgJENDIC1FIC0g
fCBncmVwIF9fRUxGX18gPi9kZXYvbnVsbDsgdGhlbgogICAgbGlicmFyeV9uYW1lc19zcGVjPSck
e2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGlibmFtZX0ke3No
YXJlZF9leHR9JHZlcnN1ZmZpeCcKICAgIGZpbmlzaF9jbWRzPSdQQVRIPSJcJFBBVEg6L3NiaW4i
IGxkY29uZmlnIC1tICRsaWJkaXInCiAgICBkeW5hbWljX2xpbmtlcj0nTmV0QlNEIChhLm91dCkg
bGQuc28nCiAgZWxzZQogICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNl
fSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0
fSRtYWpvciAke2xpYm5hbWV9JHtzaGFyZWRfZXh0fScKICAgIHNvbmFtZV9zcGVjPScke2xpYm5h
bWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3InCiAgICBkeW5hbWljX2xpbmtlcj0nTmV0
QlNEIGxkLmVsZl9zbycKICBmaQogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgc2hs
aWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcwogIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKICA7
OwoKbmV3c29zNikKICB2ZXJzaW9uX3R5cGU9bGludXgKICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7
bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJzdWZmaXggJHtsaWJuYW1lfSR7cmVs
ZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICRsaWJuYW1lJHtzaGFyZWRfZXh0fScKICBzaGxpYnBh
dGhfdmFyPUxEX0xJQlJBUllfUEFUSAogIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMK
ICA7OwoKbnRvLXFueCopCiAgdmVyc2lvbl90eXBlPWxpbnV4CiAgbmVlZF9saWJfcHJlZml4PW5v
CiAgbmVlZF92ZXJzaW9uPW5vCiAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxl
YXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRf
ZXh0fSRtYWpvciAkbGlibmFtZSR7c2hhcmVkX2V4dH0nCiAgc29uYW1lX3NwZWM9JyR7bGlibmFt
ZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvcicKICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJB
UllfUEFUSAogIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKICA7OwoKb3BlbmJzZCop
CiAgdmVyc2lvbl90eXBlPXN1bm9zCiAgc3lzX2xpYl9kbHNlYXJjaF9wYXRoX3NwZWM9Ii91c3Iv
bGliIgogIG5lZWRfbGliX3ByZWZpeD1ubwogICMgU29tZSBvbGRlciB2ZXJzaW9ucyBvZiBPcGVu
QlNEICgzLjMgYXQgbGVhc3QpICpkbyogbmVlZCB2ZXJzaW9uZWQgbGlicy4KICBjYXNlICRob3N0
X29zIGluCiAgICBvcGVuYnNkMy4zIHwgb3BlbmJzZDMuMy4qKSBuZWVkX3ZlcnNpb249eWVzIDs7
CiAgICAqKSAgICAgICAgICAgICAgICAgICAgICAgICBuZWVkX3ZlcnNpb249bm8gIDs7CiAgZXNh
YwogIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9
JHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtzaGFyZWRfZXh0fSR2ZXJzdWZmaXgnCiAgZmluaXNoX2Nt
ZHM9J1BBVEg9IlwkUEFUSDovc2JpbiIgbGRjb25maWcgLW0gJGxpYmRpcicKICBzaGxpYnBhdGhf
dmFyPUxEX0xJQlJBUllfUEFUSAogIGlmIHRlc3QgLXogImBlY2hvIF9fRUxGX18gfCAkQ0MgLUUg
LSB8IGdyZXAgX19FTEZfX2AiIHx8IHRlc3QgIiRob3N0X29zLSRob3N0X2NwdSIgPSAib3BlbmJz
ZDIuOC1wb3dlcnBjIjsgdGhlbgogICAgY2FzZSAkaG9zdF9vcyBpbgogICAgICBvcGVuYnNkMi5b
Wzg5XV0gfCBvcGVuYnNkMi5bWzg5XV0uKikKCXNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1u
bwoJOzsKICAgICAgKikKCXNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKCTs7CiAgICAg
IGVzYWMKICBlbHNlCiAgICBzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9eWVzCiAgZmkKICA7
OwoKb3MyKikKICBsaWJuYW1lX3NwZWM9JyRuYW1lJwogIHNocmV4dF9jbWRzPSIuZGxsIgogIG5l
ZWRfbGliX3ByZWZpeD1ubwogIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUke3NoYXJlZF9l
eHR9ICRsaWJuYW1lLmEnCiAgZHluYW1pY19saW5rZXI9J09TLzIgbGQuZXhlJwogIHNobGlicGF0
aF92YXI9TElCUEFUSAogIDs7Cgpvc2YzKiB8IG9zZjQqIHwgb3NmNSopCiAgdmVyc2lvbl90eXBl
PW9zZgogIG5lZWRfbGliX3ByZWZpeD1ubwogIG5lZWRfdmVyc2lvbj1ubwogIHNvbmFtZV9zcGVj
PScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3InCiAgbGlicmFyeV9uYW1l
c19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGli
bmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpvciAkbGlibmFtZSR7c2hhcmVkX2V4dH0n
CiAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BBVEgKICBzeXNfbGliX3NlYXJjaF9wYXRoX3Nw
ZWM9Ii91c3Ivc2hsaWIgL3Vzci9jY3MvbGliIC91c3IvbGliL2NtcGxycy9jYyAvdXNyL2xpYiAv
dXNyL2xvY2FsL2xpYiAvdmFyL3NobGliIgogIHN5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjPSIk
c3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjIgogIDs7Cgpzb2xhcmlzKikKICB2ZXJzaW9uX3R5cGU9
bGludXgKICBuZWVkX2xpYl9wcmVmaXg9bm8KICBuZWVkX3ZlcnNpb249bm8KICBsaWJyYXJ5X25h
bWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJzdWZmaXggJHts
aWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICRsaWJuYW1lJHtzaGFyZWRfZXh0
fScKICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9y
JwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgc2hsaWJwYXRoX292ZXJyaWRlc19y
dW5wYXRoPXllcwogIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKICAjIGxkZCBjb21wbGFpbnMgdW5s
ZXNzIGxpYnJhcmllcyBhcmUgZXhlY3V0YWJsZQogIHBvc3RpbnN0YWxsX2NtZHM9J2NobW9kICt4
ICRsaWInCiAgOzsKCnN1bm9zNCopCiAgdmVyc2lvbl90eXBlPXN1bm9zCiAgbGlicmFyeV9uYW1l
c19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3VmZml4ICR7bGli
bmFtZX0ke3NoYXJlZF9leHR9JHZlcnN1ZmZpeCcKICBmaW5pc2hfY21kcz0nUEFUSD0iXCRQQVRI
Oi91c3IvZXRjIiBsZGNvbmZpZyAkbGliZGlyJwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9Q
QVRICiAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcwogIGlmIHRlc3QgIiR3aXRoX2du
dV9sZCIgPSB5ZXM7IHRoZW4KICAgIG5lZWRfbGliX3ByZWZpeD1ubwogIGZpCiAgbmVlZF92ZXJz
aW9uPXllcwogIDs7CgpzeXN2NCB8IHN5c3Y0LjMqKQogIHZlcnNpb25fdHlwZT1saW51eAogIGxp
YnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JHZlcnN1
ZmZpeCAke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kbWFqb3IgJGxpYm5hbWUke3No
YXJlZF9leHR9JwogIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4
dH0kbWFqb3InCiAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BBVEgKICBjYXNlICRob3N0X3Zl
bmRvciBpbgogICAgc25pKQogICAgICBzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9bm8KICAg
ICAgbmVlZF9saWJfcHJlZml4PW5vCiAgICAgIGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYz0nJHt3
bH0tQmxhcmdlZHluc3ltJwogICAgICBydW5wYXRoX3Zhcj1MRF9SVU5fUEFUSAogICAgICA7Owog
ICAgc2llbWVucykKICAgICAgbmVlZF9saWJfcHJlZml4PW5vCiAgICAgIDs7CiAgICBtb3Rvcm9s
YSkKICAgICAgbmVlZF9saWJfcHJlZml4PW5vCiAgICAgIG5lZWRfdmVyc2lvbj1ubwogICAgICBz
aGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9bm8KICAgICAgc3lzX2xpYl9zZWFyY2hfcGF0aF9z
cGVjPScvbGliIC91c3IvbGliIC91c3IvY2NzL2xpYicKICAgICAgOzsKICBlc2FjCiAgOzsKCnN5
c3Y0Kk1QKikKICBpZiB0ZXN0IC1kIC91c3IvbmVjIDt0aGVuCiAgICB2ZXJzaW9uX3R5cGU9bGlu
dXgKICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUke3NoYXJlZF9leHR9LiR2ZXJzdWZm
aXggJGxpYm5hbWUke3NoYXJlZF9leHR9LiRtYWpvciAkbGlibmFtZSR7c2hhcmVkX2V4dH0nCiAg
ICBzb25hbWVfc3BlYz0nJGxpYm5hbWUke3NoYXJlZF9leHR9LiRtYWpvcicKICAgIHNobGlicGF0
aF92YXI9TERfTElCUkFSWV9QQVRICiAgZmkKICA7OwoKc3lzdjUqIHwgc2NvMy4ydjUqIHwgc2Nv
NXY2KiB8IHVuaXh3YXJlKiB8IE9wZW5VTklYKiB8IHN5c3Y0KnV3MiopCiAgdmVyc2lvbl90eXBl
PWZyZWVic2QtZWxmCiAgbmVlZF9saWJfcHJlZml4PW5vCiAgbmVlZF92ZXJzaW9uPW5vCiAgbGli
cmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfSR7c2hhcmVkX2V4dH0kdmVyc3Vm
Zml4ICR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSAkbGlibmFtZSR7c2hhcmVkX2V4
dH0nCiAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSRtYWpv
cicKICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAogIGhhcmRjb2RlX2ludG9fbGlicz15
ZXMKICBpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVzOyB0aGVuCiAgICBzeXNfbGliX3NlYXJj
aF9wYXRoX3NwZWM9Jy91c3IvbG9jYWwvbGliIC91c3IvZ251L2xpYiAvdXNyL2Njcy9saWIgL3Vz
ci9saWIgL2xpYicKICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1ubwogIGVsc2UKICAg
IHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0nL3Vzci9jY3MvbGliIC91c3IvbGliJwogICAgc2hs
aWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcwogICAgY2FzZSAkaG9zdF9vcyBpbgogICAgICBz
Y28zLjJ2NSopCiAgICAgICAgc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjPSIkc3lzX2xpYl9zZWFy
Y2hfcGF0aF9zcGVjIC9saWIiCgk7OwogICAgZXNhYwogIGZpCiAgc3lzX2xpYl9kbHNlYXJjaF9w
YXRoX3NwZWM9Jy91c3IvbGliJwogIDs7Cgp1dHM0KikKICB2ZXJzaW9uX3R5cGU9bGludXgKICBs
aWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9JHtzaGFyZWRfZXh0fSR2ZXJz
dWZmaXggJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9leHR9JG1ham9yICRsaWJuYW1lJHtz
aGFyZWRfZXh0fScKICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0ke3NoYXJlZF9l
eHR9JG1ham9yJwogIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICiAgOzsKCiopCiAgZHlu
YW1pY19saW5rZXI9bm8KICA7Owplc2FjCkFDX01TR19SRVNVTFQoWyRkeW5hbWljX2xpbmtlcl0p
CnRlc3QgIiRkeW5hbWljX2xpbmtlciIgPSBubyAmJiBjYW5fYnVpbGRfc2hhcmVkPW5vCgp2YXJp
YWJsZXNfc2F2ZWRfZm9yX3JlbGluaz0iUEFUSCAkc2hsaWJwYXRoX3ZhciAkcnVucGF0aF92YXIi
CmlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCiAgdmFyaWFibGVzX3NhdmVkX2Zvcl9yZWxpbms9
IiR2YXJpYWJsZXNfc2F2ZWRfZm9yX3JlbGluayBHQ0NfRVhFQ19QUkVGSVggQ09NUElMRVJfUEFU
SCBMSUJSQVJZX1BBVEgiCmZpCl0pIyBBQ19MSUJUT09MX1NZU19EWU5BTUlDX0xJTktFUgoKCiMg
X0xUX0FDX1RBR0NPTkZJRwojIC0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW19MVF9BQ19UQUdD
T05GSUddLApbQUNfQVJHX1dJVEgoW3RhZ3NdLAogICAgW0FDX0hFTFBfU1RSSU5HKFstLXdpdGgt
dGFnc0A8OkA9VEFHU0A6PkBdLAogICAgICAgIFtpbmNsdWRlIGFkZGl0aW9uYWwgY29uZmlndXJh
dGlvbnMgQDw6QGF1dG9tYXRpY0A6PkBdKV0sCiAgICBbdGFnbmFtZXM9IiR3aXRodmFsIl0pCgpp
ZiB0ZXN0IC1mICIkbHRtYWluIiAmJiB0ZXN0IC1uICIkdGFnbmFtZXMiOyB0aGVuCiAgaWYgdGVz
dCAhIC1mICIke29maWxlfSI7IHRoZW4KICAgIEFDX01TR19XQVJOKFtvdXRwdXQgZmlsZSBgJG9m
aWxlJyBkb2VzIG5vdCBleGlzdF0pCiAgZmkKCiAgaWYgdGVzdCAteiAiJExUQ0MiOyB0aGVuCiAg
ICBldmFsICJgJFNIRUxMICR7b2ZpbGV9IC0tY29uZmlnIHwgZ3JlcCAnXkxUQ0M9J2AiCiAgICBp
ZiB0ZXN0IC16ICIkTFRDQyI7IHRoZW4KICAgICAgQUNfTVNHX1dBUk4oW291dHB1dCBmaWxlIGAk
b2ZpbGUnIGRvZXMgbm90IGxvb2sgbGlrZSBhIGxpYnRvb2wgc2NyaXB0XSkKICAgIGVsc2UKICAg
ICAgQUNfTVNHX1dBUk4oW3VzaW5nIGBMVENDPSRMVENDJywgZXh0cmFjdGVkIGZyb20gYCRvZmls
ZSddKQogICAgZmkKICBmaQogIGlmIHRlc3QgLXogIiRMVENGTEFHUyI7IHRoZW4KICAgIGV2YWwg
ImAkU0hFTEwgJHtvZmlsZX0gLS1jb25maWcgfCBncmVwICdeTFRDRkxBR1M9J2AiCiAgZmkKCiAg
IyBFeHRyYWN0IGxpc3Qgb2YgYXZhaWxhYmxlIHRhZ2dlZCBjb25maWd1cmF0aW9ucyBpbiAkb2Zp
bGUuCiAgIyBOb3RlIHRoYXQgdGhpcyBhc3N1bWVzIHRoZSBlbnRpcmUgbGlzdCBpcyBvbiBvbmUg
bGluZS4KICBhdmFpbGFibGVfdGFncz1gZ3JlcCAiXmF2YWlsYWJsZV90YWdzPSIgIiR7b2ZpbGV9
IiB8ICRTRUQgLWUgJ3MvYXZhaWxhYmxlX3RhZ3M9XCguKiRcKS9cMS8nIC1lICdzL1wiLy9nJ2AK
CiAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9IiR7SUZTfSRQQVRIX1NFUEFSQVRPUiwiCiAgZm9y
IHRhZ25hbWUgaW4gJHRhZ25hbWVzOyBkbwogICAgSUZTPSIkbHRfc2F2ZV9pZnMiCiAgICAjIENo
ZWNrIHdoZXRoZXIgdGFnbmFtZSBjb250YWlucyBvbmx5IHZhbGlkIGNoYXJhY3RlcnMKICAgIGNh
c2UgYCRlY2hvICJYJHRhZ25hbWUiIHwgJFhzZWQgLWUgJ3M6W1stX0FCQ0RFRkdISUpLTE1OT1BR
UlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY3ODkwLC9dXTo6ZydgIGlu
CiAgICAiIikgOzsKICAgICopICBBQ19NU0dfRVJST1IoW2ludmFsaWQgdGFnIG5hbWU6ICR0YWdu
YW1lXSkKCTs7CiAgICBlc2FjCgogICAgaWYgZ3JlcCAiXiMgIyMjIEJFR0lOIExJQlRPT0wgVEFH
IENPTkZJRzogJHRhZ25hbWUkIiA8ICIke29maWxlfSIgPiAvZGV2L251bGwKICAgIHRoZW4KICAg
ICAgQUNfTVNHX0VSUk9SKFt0YWcgbmFtZSBcIiR0YWduYW1lXCIgYWxyZWFkeSBleGlzdHNdKQog
ICAgZmkKCiAgICAjIFVwZGF0ZSB0aGUgbGlzdCBvZiBhdmFpbGFibGUgdGFncy4KICAgIGlmIHRl
c3QgLW4gIiR0YWduYW1lIjsgdGhlbgogICAgICBlY2hvIGFwcGVuZGluZyBjb25maWd1cmF0aW9u
IHRhZyBcIiR0YWduYW1lXCIgdG8gJG9maWxlCgogICAgICBjYXNlICR0YWduYW1lIGluCiAgICAg
IENYWCkKCWlmIHRlc3QgLW4gIiRDWFgiICYmICggdGVzdCAiWCRDWFgiICE9ICJYbm8iICYmCgkg
ICAgKCAodGVzdCAiWCRDWFgiID0gIlhnKysiICYmIGBnKysgLXYgPi9kZXYvbnVsbCAyPiYxYCAp
IHx8CgkgICAgKHRlc3QgIlgkQ1hYIiAhPSAiWGcrKyIpKSkgOyB0aGVuCgkgIEFDX0xJQlRPT0xf
TEFOR19DWFhfQ09ORklHCgllbHNlCgkgIHRhZ25hbWU9IiIKCWZpCgk7OwoKICAgICAgRjc3KQoJ
aWYgdGVzdCAtbiAiJEY3NyIgJiYgdGVzdCAiWCRGNzciICE9ICJYbm8iOyB0aGVuCgkgIEFDX0xJ
QlRPT0xfTEFOR19GNzdfQ09ORklHCgllbHNlCgkgIHRhZ25hbWU9IiIKCWZpCgk7OwoKICAgICAg
R0NKKQoJaWYgdGVzdCAtbiAiJEdDSiIgJiYgdGVzdCAiWCRHQ0oiICE9ICJYbm8iOyB0aGVuCgkg
IEFDX0xJQlRPT0xfTEFOR19HQ0pfQ09ORklHCgllbHNlCgkgIHRhZ25hbWU9IiIKCWZpCgk7OwoK
ICAgICAgUkMpCglBQ19MSUJUT09MX0xBTkdfUkNfQ09ORklHCgk7OwoKICAgICAgKikKCUFDX01T
R19FUlJPUihbVW5zdXBwb3J0ZWQgdGFnIG5hbWU6ICR0YWduYW1lXSkKCTs7CiAgICAgIGVzYWMK
CiAgICAgICMgQXBwZW5kIHRoZSBuZXcgdGFnIG5hbWUgdG8gdGhlIGxpc3Qgb2YgYXZhaWxhYmxl
IHRhZ3MuCiAgICAgIGlmIHRlc3QgLW4gIiR0YWduYW1lIiA7IHRoZW4KICAgICAgYXZhaWxhYmxl
X3RhZ3M9IiRhdmFpbGFibGVfdGFncyAkdGFnbmFtZSIKICAgIGZpCiAgICBmaQogIGRvbmUKICBJ
RlM9IiRsdF9zYXZlX2lmcyIKCiAgIyBOb3cgc3Vic3RpdHV0ZSB0aGUgdXBkYXRlZCBsaXN0IG9m
IGF2YWlsYWJsZSB0YWdzLgogIGlmIGV2YWwgInNlZCAtZSAncy9eYXZhaWxhYmxlX3RhZ3M9Lipc
JC9hdmFpbGFibGVfdGFncz1cIiRhdmFpbGFibGVfdGFnc1wiLycgXCIkb2ZpbGVcIiA+IFwiJHtv
ZmlsZX1UXCIiOyB0aGVuCiAgICBtdiAiJHtvZmlsZX1UIiAiJG9maWxlIgogICAgY2htb2QgK3gg
IiRvZmlsZSIKICBlbHNlCiAgICBybSAtZiAiJHtvZmlsZX1UIgogICAgQUNfTVNHX0VSUk9SKFt1
bmFibGUgdG8gdXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHRhZ2dlZCBjb25maWd1cmF0aW9ucy5d
KQogIGZpCmZpCl0pIyBfTFRfQUNfVEFHQ09ORklHCgoKIyBBQ19MSUJUT09MX0RMT1BFTgojIC0t
LS0tLS0tLS0tLS0tLS0tCiMgZW5hYmxlIGNoZWNrcyBmb3IgZGxvcGVuIHN1cHBvcnQKQUNfREVG
VU4oW0FDX0xJQlRPT0xfRExPUEVOXSwKIFtBQ19CRUZPUkUoWyQwXSxbQUNfTElCVE9PTF9TRVRV
UF0pCl0pIyBBQ19MSUJUT09MX0RMT1BFTgoKCiMgQUNfTElCVE9PTF9XSU4zMl9ETEwKIyAtLS0t
LS0tLS0tLS0tLS0tLS0tLQojIGRlY2xhcmUgcGFja2FnZSBzdXBwb3J0IGZvciBidWlsZGluZyB3
aW4zMiBETExzCkFDX0RFRlVOKFtBQ19MSUJUT09MX1dJTjMyX0RMTF0sCltBQ19CRUZPUkUoWyQw
XSwgW0FDX0xJQlRPT0xfU0VUVVBdKQpdKSMgQUNfTElCVE9PTF9XSU4zMl9ETEwKCgojIEFDX0VO
QUJMRV9TSEFSRUQoW0RFRkFVTFRdKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIGlt
cGxlbWVudCB0aGUgLS1lbmFibGUtc2hhcmVkIGZsYWcKIyBERUZBVUxUIGlzIGVpdGhlciBgeWVz
JyBvciBgbm8nLiAgSWYgb21pdHRlZCwgaXQgZGVmYXVsdHMgdG8gYHllcycuCkFDX0RFRlVOKFtB
Q19FTkFCTEVfU0hBUkVEXSwKW2RlZmluZShbQUNfRU5BQkxFX1NIQVJFRF9ERUZBVUxUXSwgaWZl
bHNlKCQxLCBubywgbm8sIHllcykpZG5sCkFDX0FSR19FTkFCTEUoW3NoYXJlZF0sCiAgICBbQUNf
SEVMUF9TVFJJTkcoWy0tZW5hYmxlLXNoYXJlZEA8OkA9UEtHU0A6PkBdLAoJW2J1aWxkIHNoYXJl
ZCBsaWJyYXJpZXMgQDw6QGRlZmF1bHQ9XUFDX0VOQUJMRV9TSEFSRURfREVGQVVMVFtAOj5AXSld
LAogICAgW3A9JHtQQUNLQUdFLWRlZmF1bHR9CiAgICBjYXNlICRlbmFibGV2YWwgaW4KICAgIHll
cykgZW5hYmxlX3NoYXJlZD15ZXMgOzsKICAgIG5vKSBlbmFibGVfc2hhcmVkPW5vIDs7CiAgICAq
KQogICAgICBlbmFibGVfc2hhcmVkPW5vCiAgICAgICMgTG9vayBhdCB0aGUgYXJndW1lbnQgd2Ug
Z290LiAgV2UgdXNlIGFsbCB0aGUgY29tbW9uIGxpc3Qgc2VwYXJhdG9ycy4KICAgICAgbHRfc2F2
ZV9pZnM9IiRJRlMiOyBJRlM9IiR7SUZTfSRQQVRIX1NFUEFSQVRPUiwiCiAgICAgIGZvciBwa2cg
aW4gJGVuYWJsZXZhbDsgZG8KCUlGUz0iJGx0X3NhdmVfaWZzIgoJaWYgdGVzdCAiWCRwa2ciID0g
IlgkcCI7IHRoZW4KCSAgZW5hYmxlX3NoYXJlZD15ZXMKCWZpCiAgICAgIGRvbmUKICAgICAgSUZT
PSIkbHRfc2F2ZV9pZnMiCiAgICAgIDs7CiAgICBlc2FjXSwKICAgIFtlbmFibGVfc2hhcmVkPV1B
Q19FTkFCTEVfU0hBUkVEX0RFRkFVTFQpCl0pIyBBQ19FTkFCTEVfU0hBUkVECgoKIyBBQ19ESVNB
QkxFX1NIQVJFRAojIC0tLS0tLS0tLS0tLS0tLS0tCiMgc2V0IHRoZSBkZWZhdWx0IHNoYXJlZCBm
bGFnIHRvIC0tZGlzYWJsZS1zaGFyZWQKQUNfREVGVU4oW0FDX0RJU0FCTEVfU0hBUkVEXSwKW0FD
X0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NFVFVQXSlkbmwKQUNfRU5BQkxFX1NIQVJFRChubykK
XSkjIEFDX0RJU0FCTEVfU0hBUkVECgoKIyBBQ19FTkFCTEVfU1RBVElDKFtERUZBVUxUXSkKIyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBpbXBsZW1lbnQgdGhlIC0tZW5hYmxlLXN0YXRp
YyBmbGFnCiMgREVGQVVMVCBpcyBlaXRoZXIgYHllcycgb3IgYG5vJy4gIElmIG9taXR0ZWQsIGl0
IGRlZmF1bHRzIHRvIGB5ZXMnLgpBQ19ERUZVTihbQUNfRU5BQkxFX1NUQVRJQ10sCltkZWZpbmUo
W0FDX0VOQUJMRV9TVEFUSUNfREVGQVVMVF0sIGlmZWxzZSgkMSwgbm8sIG5vLCB5ZXMpKWRubApB
Q19BUkdfRU5BQkxFKFtzdGF0aWNdLAogICAgW0FDX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1zdGF0
aWNAPDpAPVBLR1NAOj5AXSwKCVtidWlsZCBzdGF0aWMgbGlicmFyaWVzIEA8OkBkZWZhdWx0PV1B
Q19FTkFCTEVfU1RBVElDX0RFRkFVTFRbQDo+QF0pXSwKICAgIFtwPSR7UEFDS0FHRS1kZWZhdWx0
fQogICAgY2FzZSAkZW5hYmxldmFsIGluCiAgICB5ZXMpIGVuYWJsZV9zdGF0aWM9eWVzIDs7CiAg
ICBubykgZW5hYmxlX3N0YXRpYz1ubyA7OwogICAgKikKICAgICBlbmFibGVfc3RhdGljPW5vCiAg
ICAgICMgTG9vayBhdCB0aGUgYXJndW1lbnQgd2UgZ290LiAgV2UgdXNlIGFsbCB0aGUgY29tbW9u
IGxpc3Qgc2VwYXJhdG9ycy4KICAgICAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9IiR7SUZTfSRQ
QVRIX1NFUEFSQVRPUiwiCiAgICAgIGZvciBwa2cgaW4gJGVuYWJsZXZhbDsgZG8KCUlGUz0iJGx0
X3NhdmVfaWZzIgoJaWYgdGVzdCAiWCRwa2ciID0gIlgkcCI7IHRoZW4KCSAgZW5hYmxlX3N0YXRp
Yz15ZXMKCWZpCiAgICAgIGRvbmUKICAgICAgSUZTPSIkbHRfc2F2ZV9pZnMiCiAgICAgIDs7CiAg
ICBlc2FjXSwKICAgIFtlbmFibGVfc3RhdGljPV1BQ19FTkFCTEVfU1RBVElDX0RFRkFVTFQpCl0p
IyBBQ19FTkFCTEVfU1RBVElDCgoKIyBBQ19ESVNBQkxFX1NUQVRJQwojIC0tLS0tLS0tLS0tLS0t
LS0tCiMgc2V0IHRoZSBkZWZhdWx0IHN0YXRpYyBmbGFnIHRvIC0tZGlzYWJsZS1zdGF0aWMKQUNf
REVGVU4oW0FDX0RJU0FCTEVfU1RBVElDXSwKW0FDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NF
VFVQXSlkbmwKQUNfRU5BQkxFX1NUQVRJQyhubykKXSkjIEFDX0RJU0FCTEVfU1RBVElDCgoKIyBB
Q19FTkFCTEVfRkFTVF9JTlNUQUxMKFtERUZBVUxUXSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KIyBpbXBsZW1lbnQgdGhlIC0tZW5hYmxlLWZhc3QtaW5zdGFsbCBmbGFnCiMg
REVGQVVMVCBpcyBlaXRoZXIgYHllcycgb3IgYG5vJy4gIElmIG9taXR0ZWQsIGl0IGRlZmF1bHRz
IHRvIGB5ZXMnLgpBQ19ERUZVTihbQUNfRU5BQkxFX0ZBU1RfSU5TVEFMTF0sCltkZWZpbmUoW0FD
X0VOQUJMRV9GQVNUX0lOU1RBTExfREVGQVVMVF0sIGlmZWxzZSgkMSwgbm8sIG5vLCB5ZXMpKWRu
bApBQ19BUkdfRU5BQkxFKFtmYXN0LWluc3RhbGxdLAogICAgW0FDX0hFTFBfU1RSSU5HKFstLWVu
YWJsZS1mYXN0LWluc3RhbGxAPDpAPVBLR1NAOj5AXSwKICAgIFtvcHRpbWl6ZSBmb3IgZmFzdCBp
bnN0YWxsYXRpb24gQDw6QGRlZmF1bHQ9XUFDX0VOQUJMRV9GQVNUX0lOU1RBTExfREVGQVVMVFtA
Oj5AXSldLAogICAgW3A9JHtQQUNLQUdFLWRlZmF1bHR9CiAgICBjYXNlICRlbmFibGV2YWwgaW4K
ICAgIHllcykgZW5hYmxlX2Zhc3RfaW5zdGFsbD15ZXMgOzsKICAgIG5vKSBlbmFibGVfZmFzdF9p
bnN0YWxsPW5vIDs7CiAgICAqKQogICAgICBlbmFibGVfZmFzdF9pbnN0YWxsPW5vCiAgICAgICMg
TG9vayBhdCB0aGUgYXJndW1lbnQgd2UgZ290LiAgV2UgdXNlIGFsbCB0aGUgY29tbW9uIGxpc3Qg
c2VwYXJhdG9ycy4KICAgICAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9IiR7SUZTfSRQQVRIX1NF
UEFSQVRPUiwiCiAgICAgIGZvciBwa2cgaW4gJGVuYWJsZXZhbDsgZG8KCUlGUz0iJGx0X3NhdmVf
aWZzIgoJaWYgdGVzdCAiWCRwa2ciID0gIlgkcCI7IHRoZW4KCSAgZW5hYmxlX2Zhc3RfaW5zdGFs
bD15ZXMKCWZpCiAgICAgIGRvbmUKICAgICAgSUZTPSIkbHRfc2F2ZV9pZnMiCiAgICAgIDs7CiAg
ICBlc2FjXSwKICAgIFtlbmFibGVfZmFzdF9pbnN0YWxsPV1BQ19FTkFCTEVfRkFTVF9JTlNUQUxM
X0RFRkFVTFQpCl0pIyBBQ19FTkFCTEVfRkFTVF9JTlNUQUxMCgoKIyBBQ19ESVNBQkxFX0ZBU1Rf
SU5TVEFMTAojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgc2V0IHRoZSBkZWZhdWx0IHRvIC0t
ZGlzYWJsZS1mYXN0LWluc3RhbGwKQUNfREVGVU4oW0FDX0RJU0FCTEVfRkFTVF9JTlNUQUxMXSwK
W0FDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NFVFVQXSlkbmwKQUNfRU5BQkxFX0ZBU1RfSU5T
VEFMTChubykKXSkjIEFDX0RJU0FCTEVfRkFTVF9JTlNUQUxMCgoKIyBBQ19MSUJUT09MX1BJQ01P
REUoW01PREVdKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgaW1wbGVtZW50IHRoZSAt
LXdpdGgtcGljIGZsYWcKIyBNT0RFIGlzIGVpdGhlciBgeWVzJyBvciBgbm8nLiAgSWYgb21pdHRl
ZCwgaXQgZGVmYXVsdHMgdG8gYGJvdGgnLgpBQ19ERUZVTihbQUNfTElCVE9PTF9QSUNNT0RFXSwK
W0FDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NFVFVQXSlkbmwKcGljX21vZGU9aWZlbHNlKCQj
LDEsJDEsZGVmYXVsdCkKXSkjIEFDX0xJQlRPT0xfUElDTU9ERQoKCiMgQUNfUFJPR19FR1JFUAoj
IC0tLS0tLS0tLS0tLS0KIyBUaGlzIGlzIHByZWRlZmluZWQgc3RhcnRpbmcgd2l0aCBBdXRvY29u
ZiAyLjU0LCBzbyB0aGlzIGNvbmRpdGlvbmFsCiMgZGVmaW5pdGlvbiBjYW4gYmUgcmVtb3ZlZCBv
bmNlIHdlIHJlcXVpcmUgQXV0b2NvbmYgMi41NCBvciBsYXRlci4KbTRfaWZuZGVmKFtBQ19QUk9H
X0VHUkVQXSwgW0FDX0RFRlVOKFtBQ19QUk9HX0VHUkVQXSwKW0FDX0NBQ0hFX0NIRUNLKFtmb3Ig
ZWdyZXBdLCBbYWNfY3ZfcHJvZ19lZ3JlcF0sCiAgIFtpZiBlY2hvIGEgfCAoZ3JlcCAtRSAnKGF8
YiknKSA+L2Rldi9udWxsIDI+JjEKICAgIHRoZW4gYWNfY3ZfcHJvZ19lZ3JlcD0nZ3JlcCAtRScK
ICAgIGVsc2UgYWNfY3ZfcHJvZ19lZ3JlcD0nZWdyZXAnCiAgICBmaV0pCiBFR1JFUD0kYWNfY3Zf
cHJvZ19lZ3JlcAogQUNfU1VCU1QoW0VHUkVQXSkKXSldKQoKCiMgQUNfUEFUSF9UT09MX1BSRUZJ
WAojIC0tLS0tLS0tLS0tLS0tLS0tLS0KIyBmaW5kIGEgZmlsZSBwcm9ncmFtIHdoaWNoIGNhbiBy
ZWNvZ25pc2Ugc2hhcmVkIGxpYnJhcnkKQUNfREVGVU4oW0FDX1BBVEhfVE9PTF9QUkVGSVhdLApb
QUNfUkVRVUlSRShbQUNfUFJPR19FR1JFUF0pZG5sCkFDX01TR19DSEVDS0lORyhbZm9yICQxXSkK
QUNfQ0FDSEVfVkFMKGx0X2N2X3BhdGhfTUFHSUNfQ01ELApbY2FzZSAkTUFHSUNfQ01EIGluCltb
XFwvKl0gfCAgPzpbXFwvXSpdKQogIGx0X2N2X3BhdGhfTUFHSUNfQ01EPSIkTUFHSUNfQ01EIiAj
IExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KICA7OwoqKQogIGx0
X3NhdmVfTUFHSUNfQ01EPSIkTUFHSUNfQ01EIgogIGx0X3NhdmVfaWZzPSIkSUZTIjsgSUZTPSRQ
QVRIX1NFUEFSQVRPUgpkbmwgJGFjX2R1bW15IGZvcmNlcyBzcGxpdHRpbmcgb24gY29uc3RhbnQg
dXNlci1zdXBwbGllZCBwYXRocy4KZG5sIFBPU0lYLjIgd29yZCBzcGxpdHRpbmcgaXMgZG9uZSBv
bmx5IG9uIHRoZSBvdXRwdXQgb2Ygd29yZCBleHBhbnNpb25zLApkbmwgbm90IGV2ZXJ5IHdvcmQu
ICBUaGlzIGNsb3NlcyBhIGxvbmdzdGFuZGluZyBzaCBzZWN1cml0eSBob2xlLgogIGFjX2R1bW15
PSJpZmVsc2UoWyQyXSwgLCAkUEFUSCwgWyQyXSkiCiAgZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7
IGRvCiAgICBJRlM9IiRsdF9zYXZlX2lmcyIKICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rp
cj0uCiAgICBpZiB0ZXN0IC1mICRhY19kaXIvJDE7IHRoZW4KICAgICAgbHRfY3ZfcGF0aF9NQUdJ
Q19DTUQ9IiRhY19kaXIvJDEiCiAgICAgIGlmIHRlc3QgLW4gIiRmaWxlX21hZ2ljX3Rlc3RfZmls
ZSI7IHRoZW4KCWNhc2UgJGRlcGxpYnNfY2hlY2tfbWV0aG9kIGluCgkiZmlsZV9tYWdpYyAiKikK
CSAgZmlsZV9tYWdpY19yZWdleD1gZXhwciAiJGRlcGxpYnNfY2hlY2tfbWV0aG9kIiA6ICJmaWxl
X21hZ2ljIFwoLipcKSJgCgkgIE1BR0lDX0NNRD0iJGx0X2N2X3BhdGhfTUFHSUNfQ01EIgoJICBp
ZiBldmFsICRmaWxlX21hZ2ljX2NtZCBcJGZpbGVfbWFnaWNfdGVzdF9maWxlIDI+IC9kZXYvbnVs
bCB8CgkgICAgJEVHUkVQICIkZmlsZV9tYWdpY19yZWdleCIgPiAvZGV2L251bGw7IHRoZW4KCSAg
ICA6CgkgIGVsc2UKCSAgICBjYXQgPDxFT0YgMT4mMgoKKioqIFdhcm5pbmc6IHRoZSBjb21tYW5k
IGxpYnRvb2wgdXNlcyB0byBkZXRlY3Qgc2hhcmVkIGxpYnJhcmllcywKKioqICRmaWxlX21hZ2lj
X2NtZCwgcHJvZHVjZXMgb3V0cHV0IHRoYXQgbGlidG9vbCBjYW5ub3QgcmVjb2duaXplLgoqKiog
VGhlIHJlc3VsdCBpcyB0aGF0IGxpYnRvb2wgbWF5IGZhaWwgdG8gcmVjb2duaXplIHNoYXJlZCBs
aWJyYXJpZXMKKioqIGFzIHN1Y2guICBUaGlzIHdpbGwgYWZmZWN0IHRoZSBjcmVhdGlvbiBvZiBs
aWJ0b29sIGxpYnJhcmllcyB0aGF0CioqKiBkZXBlbmQgb24gc2hhcmVkIGxpYnJhcmllcywgYnV0
IHByb2dyYW1zIGxpbmtlZCB3aXRoIHN1Y2ggbGlidG9vbAoqKiogbGlicmFyaWVzIHdpbGwgd29y
ayByZWdhcmRsZXNzIG9mIHRoaXMgcHJvYmxlbS4gIE5ldmVydGhlbGVzcywgeW91CioqKiBtYXkg
d2FudCB0byByZXBvcnQgdGhlIHByb2JsZW0gdG8geW91ciBzeXN0ZW0gbWFuYWdlciBhbmQvb3Ig
dG8KKioqIGJ1Zy1saWJ0b29sQGdudS5vcmcKCkVPRgoJICBmaSA7OwoJZXNhYwogICAgICBmaQog
ICAgICBicmVhawogICAgZmkKICBkb25lCiAgSUZTPSIkbHRfc2F2ZV9pZnMiCiAgTUFHSUNfQ01E
PSIkbHRfc2F2ZV9NQUdJQ19DTUQiCiAgOzsKZXNhY10pCk1BR0lDX0NNRD0iJGx0X2N2X3BhdGhf
TUFHSUNfQ01EIgppZiB0ZXN0IC1uICIkTUFHSUNfQ01EIjsgdGhlbgogIEFDX01TR19SRVNVTFQo
JE1BR0lDX0NNRCkKZWxzZQogIEFDX01TR19SRVNVTFQobm8pCmZpCl0pIyBBQ19QQVRIX1RPT0xf
UFJFRklYCgoKIyBBQ19QQVRIX01BR0lDCiMgLS0tLS0tLS0tLS0tLQojIGZpbmQgYSBmaWxlIHBy
b2dyYW0gd2hpY2ggY2FuIHJlY29nbmlzZSBhIHNoYXJlZCBsaWJyYXJ5CkFDX0RFRlVOKFtBQ19Q
QVRIX01BR0lDXSwKW0FDX1BBVEhfVE9PTF9QUkVGSVgoJHthY190b29sX3ByZWZpeH1maWxlLCAv
dXNyL2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRIKQppZiB0ZXN0IC16ICIkbHRfY3ZfcGF0aF9NQUdJ
Q19DTUQiOyB0aGVuCiAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgogICAgQUNf
UEFUSF9UT09MX1BSRUZJWChmaWxlLCAvdXNyL2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRIKQogIGVs
c2UKICAgIE1BR0lDX0NNRD06CiAgZmkKZmkKXSkjIEFDX1BBVEhfTUFHSUMKCgojIEFDX1BST0df
TEQKIyAtLS0tLS0tLS0tCiMgZmluZCB0aGUgcGF0aG5hbWUgdG8gdGhlIEdOVSBvciBub24tR05V
IGxpbmtlcgpBQ19ERUZVTihbQUNfUFJPR19MRF0sCltBQ19BUkdfV0lUSChbZ251LWxkXSwKICAg
IFtBQ19IRUxQX1NUUklORyhbLS13aXRoLWdudS1sZF0sCglbYXNzdW1lIHRoZSBDIGNvbXBpbGVy
IHVzZXMgR05VIGxkIEA8OkBkZWZhdWx0PW5vQDo+QF0pXSwKICAgIFt0ZXN0ICIkd2l0aHZhbCIg
PSBubyB8fCB3aXRoX2dudV9sZD15ZXNdLAogICAgW3dpdGhfZ251X2xkPW5vXSkKQUNfUkVRVUlS
RShbTFRfQUNfUFJPR19TRURdKWRubApBQ19SRVFVSVJFKFtBQ19QUk9HX0NDXSlkbmwKQUNfUkVR
VUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKWRubApBQ19SRVFVSVJFKFtBQ19DQU5PTklDQUxfQlVJ
TERdKWRubAphY19wcm9nPWxkCmlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCiAgIyBDaGVjayBp
ZiBnY2MgLXByaW50LXByb2ctbmFtZT1sZCBnaXZlcyBhIHBhdGguCiAgQUNfTVNHX0NIRUNLSU5H
KFtmb3IgbGQgdXNlZCBieSAkQ0NdKQogIGNhc2UgJGhvc3QgaW4KICAqLSotbWluZ3cqKQogICAg
IyBnY2MgbGVhdmVzIGEgdHJhaWxpbmcgY2FycmlhZ2UgcmV0dXJuIHdoaWNoIHVwc2V0cyBtaW5n
dwogICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQtcHJvZy1uYW1lPWxkKSAyPiY1IHwgdHIgLWQgJ1ww
MTUnYCA7OwogICopCiAgICBhY19wcm9nPWAoJENDIC1wcmludC1wcm9nLW5hbWU9bGQpIDI+JjVg
IDs7CiAgZXNhYwogIGNhc2UgJGFjX3Byb2cgaW4KICAgICMgQWNjZXB0IGFic29sdXRlIHBhdGhz
LgogICAgW1tcXC9dXSogfCA/OltbXFwvXV0qKQogICAgICByZV9kaXJlbHQ9Jy9bW14vXV1bW14v
XV0qL1wuXC4vJwogICAgICAjIENhbm9uaWNhbGl6ZSB0aGUgcGF0aG5hbWUgb2YgbGQKICAgICAg
YWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgJFNFRCAncyVcXFxcJS8lZydgCiAgICAgIHdoaWxlIGVj
aG8gJGFjX3Byb2cgfCBncmVwICIkcmVfZGlyZWx0IiA+IC9kZXYvbnVsbCAyPiYxOyBkbwoJYWNf
cHJvZz1gZWNobyAkYWNfcHJvZ3wgJFNFRCAicyUkcmVfZGlyZWx0JS8lImAKICAgICAgZG9uZQog
ICAgICB0ZXN0IC16ICIkTEQiICYmIExEPSIkYWNfcHJvZyIKICAgICAgOzsKICAiIikKICAgICMg
SWYgaXQgZmFpbHMsIHRoZW4gcHJldGVuZCB3ZSBhcmVuJ3QgdXNpbmcgR0NDLgogICAgYWNfcHJv
Zz1sZAogICAgOzsKICAqKQogICAgIyBJZiBpdCBpcyByZWxhdGl2ZSwgdGhlbiBzZWFyY2ggZm9y
IHRoZSBmaXJzdCBsZCBpbiBQQVRILgogICAgd2l0aF9nbnVfbGQ9dW5rbm93bgogICAgOzsKICBl
c2FjCmVsaWYgdGVzdCAiJHdpdGhfZ251X2xkIiA9IHllczsgdGhlbgogIEFDX01TR19DSEVDS0lO
RyhbZm9yIEdOVSBsZF0pCmVsc2UKICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBub24tR05VIGxkXSkK
ZmkKQUNfQ0FDSEVfVkFMKGx0X2N2X3BhdGhfTEQsCltpZiB0ZXN0IC16ICIkTEQiOyB0aGVuCiAg
bHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCiAgZm9yIGFjX2RpciBpbiAk
UEFUSDsgZG8KICAgIElGUz0iJGx0X3NhdmVfaWZzIgogICAgdGVzdCAteiAiJGFjX2RpciIgJiYg
YWNfZGlyPS4KICAgIGlmIHRlc3QgLWYgIiRhY19kaXIvJGFjX3Byb2ciIHx8IHRlc3QgLWYgIiRh
Y19kaXIvJGFjX3Byb2ckYWNfZXhlZXh0IjsgdGhlbgogICAgICBsdF9jdl9wYXRoX0xEPSIkYWNf
ZGlyLyRhY19wcm9nIgogICAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgcHJvZ3JhbSBpcyBHTlUg
bGQuICBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24sCiAgICAgICMgYnV0IGFwcGFyZW50bHkgc29t
ZSB2YXJpYW50cyBvZiBHTlUgbGQgb25seSBhY2NlcHQgLXYuCiAgICAgICMgQnJlYWsgb25seSBp
ZiBpdCB3YXMgdGhlIEdOVS9ub24tR05VIGxkIHRoYXQgd2UgcHJlZmVyLgogICAgICBjYXNlIGAi
JGx0X2N2X3BhdGhfTEQiIC12IDI+JjEgPC9kZXYvbnVsbGAgaW4KICAgICAgKkdOVSogfCAqJ3dp
dGggQkZEJyopCgl0ZXN0ICIkd2l0aF9nbnVfbGQiICE9IG5vICYmIGJyZWFrCgk7OwogICAgICAq
KQoJdGVzdCAiJHdpdGhfZ251X2xkIiAhPSB5ZXMgJiYgYnJlYWsKCTs7CiAgICAgIGVzYWMKICAg
IGZpCiAgZG9uZQogIElGUz0iJGx0X3NhdmVfaWZzIgplbHNlCiAgbHRfY3ZfcGF0aF9MRD0iJExE
IiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KZmldKQpMRD0i
JGx0X2N2X3BhdGhfTEQiCmlmIHRlc3QgLW4gIiRMRCI7IHRoZW4KICBBQ19NU0dfUkVTVUxUKCRM
RCkKZWxzZQogIEFDX01TR19SRVNVTFQobm8pCmZpCnRlc3QgLXogIiRMRCIgJiYgQUNfTVNHX0VS
Uk9SKFtubyBhY2NlcHRhYmxlIGxkIGZvdW5kIGluIFwkUEFUSF0pCkFDX1BST0dfTERfR05VCl0p
IyBBQ19QUk9HX0xECgoKIyBBQ19QUk9HX0xEX0dOVQojIC0tLS0tLS0tLS0tLS0tCkFDX0RFRlVO
KFtBQ19QUk9HX0xEX0dOVV0sCltBQ19SRVFVSVJFKFtBQ19QUk9HX0VHUkVQXSlkbmwKQUNfQ0FD
SEVfQ0hFQ0soW2lmIHRoZSBsaW5rZXIgKCRMRCkgaXMgR05VIGxkXSwgbHRfY3ZfcHJvZ19nbnVf
bGQsClsjIEknZCByYXRoZXIgdXNlIC0tdmVyc2lvbiBoZXJlLCBidXQgYXBwYXJlbnRseSBzb21l
IEdOVSBsZHMgb25seSBhY2NlcHQgLXYuCmNhc2UgYCRMRCAtdiAyPiYxIDwvZGV2L251bGxgIGlu
CipHTlUqIHwgKid3aXRoIEJGRCcqKQogIGx0X2N2X3Byb2dfZ251X2xkPXllcwogIDs7CiopCiAg
bHRfY3ZfcHJvZ19nbnVfbGQ9bm8KICA7Owplc2FjXSkKd2l0aF9nbnVfbGQ9JGx0X2N2X3Byb2df
Z251X2xkCl0pIyBBQ19QUk9HX0xEX0dOVQoKCiMgQUNfUFJPR19MRF9SRUxPQURfRkxBRwojIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBmaW5kIHJlbG9hZCBmbGFnIGZvciBsaW5rZXIKIyAgIC0t
IFBPUlRNRSBTb21lIGxpbmtlcnMgbWF5IG5lZWQgYSBkaWZmZXJlbnQgcmVsb2FkIGZsYWcuCkFD
X0RFRlVOKFtBQ19QUk9HX0xEX1JFTE9BRF9GTEFHXSwKW0FDX0NBQ0hFX0NIRUNLKFtmb3IgJExE
IG9wdGlvbiB0byByZWxvYWQgb2JqZWN0IGZpbGVzXSwKICBsdF9jdl9sZF9yZWxvYWRfZmxhZywK
ICBbbHRfY3ZfbGRfcmVsb2FkX2ZsYWc9Jy1yJ10pCnJlbG9hZF9mbGFnPSRsdF9jdl9sZF9yZWxv
YWRfZmxhZwpjYXNlICRyZWxvYWRfZmxhZyBpbgoiIiB8ICIgIiopIDs7CiopIHJlbG9hZF9mbGFn
PSIgJHJlbG9hZF9mbGFnIiA7Owplc2FjCnJlbG9hZF9jbWRzPSckTEQkcmVsb2FkX2ZsYWcgLW8g
JG91dHB1dCRyZWxvYWRfb2JqcycKY2FzZSAkaG9zdF9vcyBpbgogIGRhcndpbiopCiAgICBpZiB0
ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICAgICByZWxvYWRfY21kcz0nJExUQ0MgJExUQ0ZMQUdT
IC1ub3N0ZGxpYiAke3dsfS1yIC1vICRvdXRwdXQkcmVsb2FkX29ianMnCiAgICBlbHNlCiAgICAg
IHJlbG9hZF9jbWRzPSckTEQkcmVsb2FkX2ZsYWcgLW8gJG91dHB1dCRyZWxvYWRfb2JqcycKICAg
IGZpCiAgICA7Owplc2FjCl0pIyBBQ19QUk9HX0xEX1JFTE9BRF9GTEFHCgoKIyBBQ19ERVBMSUJT
X0NIRUNLX01FVEhPRAojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgaG93IHRvIGNoZWNrIGZv
ciBsaWJyYXJ5IGRlcGVuZGVuY2llcwojICAtLSBQT1JUTUUgZmlsbCBpbiB3aXRoIHRoZSBkeW5h
bWljIGxpYnJhcnkgY2hhcmFjdGVyaXN0aWNzCkFDX0RFRlVOKFtBQ19ERVBMSUJTX0NIRUNLX01F
VEhPRF0sCltBQ19DQUNIRV9DSEVDSyhbaG93IHRvIHJlY29nbmlzZSBkZXBlbmRlbnQgbGlicmFy
aWVzXSwKbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2QsCltsdF9jdl9maWxlX21hZ2ljX2NtZD0n
JE1BR0lDX0NNRCcKbHRfY3ZfZmlsZV9tYWdpY190ZXN0X2ZpbGU9Cmx0X2N2X2RlcGxpYnNfY2hl
Y2tfbWV0aG9kPSd1bmtub3duJwojIE5lZWQgdG8gc2V0IHRoZSBwcmVjZWRpbmcgdmFyaWFibGUg
b24gYWxsIHBsYXRmb3JtcyB0aGF0IHN1cHBvcnQKIyBpbnRlcmxpYnJhcnkgZGVwZW5kZW5jaWVz
LgojICdub25lJyAtLSBkZXBlbmRlbmNpZXMgbm90IHN1cHBvcnRlZC4KIyBgdW5rbm93bicgLS0g
c2FtZSBhcyBub25lLCBidXQgZG9jdW1lbnRzIHRoYXQgd2UgcmVhbGx5IGRvbid0IGtub3cuCiMg
J3Bhc3NfYWxsJyAtLSBhbGwgZGVwZW5kZW5jaWVzIHBhc3NlZCB3aXRoIG5vIGNoZWNrcy4KIyAn
dGVzdF9jb21waWxlJyAtLSBjaGVjayBieSBtYWtpbmcgdGVzdCBwcm9ncmFtLgojICdmaWxlX21h
Z2ljIFtbcmVnZXhdXScgLS0gY2hlY2sgYnkgbG9va2luZyBmb3IgZmlsZXMgaW4gbGlicmFyeSBw
YXRoCiMgd2hpY2ggcmVzcG9uZHMgdG8gdGhlICRmaWxlX21hZ2ljX2NtZCB3aXRoIGEgZ2l2ZW4g
ZXh0ZW5kZWQgcmVnZXguCiMgSWYgeW91IGhhdmUgYGZpbGUnIG9yIGVxdWl2YWxlbnQgb24geW91
ciBzeXN0ZW0gYW5kIHlvdSdyZSBub3Qgc3VyZQojIHdoZXRoZXIgYHBhc3NfYWxsJyB3aWxsICph
bHdheXMqIHdvcmssIHlvdSBwcm9iYWJseSB3YW50IHRoaXMgb25lLgoKY2FzZSAkaG9zdF9vcyBp
bgphaXg0KiB8IGFpeDUqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBhc3NfYWxsCiAg
OzsKCmJlb3MqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBhc3NfYWxsCiAgOzsKCmJz
ZGlbWzQ1XV0qKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIEVMRiBb
WzAtOV1dW1swLTldXSotYml0IFtbTUxdXVNCIChzaGFyZWQgb2JqZWN0fGR5bmFtaWMgbGliKScK
ICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nL3Vzci9iaW4vZmlsZSAtTCcKICBsdF9jdl9maWxlX21h
Z2ljX3Rlc3RfZmlsZT0vc2hsaWIvbGliYy5zbwogIDs7CgpjeWd3aW4qKQogICMgZnVuY193aW4z
Ml9saWJpZCBpcyBhIHNoZWxsIGZ1bmN0aW9uIGRlZmluZWQgaW4gbHRtYWluLnNoCiAgbHRfY3Zf
ZGVwbGlic19jaGVja19tZXRob2Q9J2ZpbGVfbWFnaWMgXng4NiBhcmNoaXZlIGltcG9ydHxeeDg2
IERMTCcKICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nZnVuY193aW4zMl9saWJpZCcKICA7OwoKbWlu
Z3cqIHwgcHczMiopCiAgIyBCYXNlIE1TWVMvTWluR1cgZG8gbm90IHByb3ZpZGUgdGhlICdmaWxl
JyBjb21tYW5kIG5lZWRlZCBieQogICMgZnVuY193aW4zMl9saWJpZCBzaGVsbCBmdW5jdGlvbiwg
c28gdXNlIGEgd2Vha2VyIHRlc3QgYmFzZWQgb24gJ29iamR1bXAnLgogIGx0X2N2X2RlcGxpYnNf
Y2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIGZpbGUgZm9ybWF0IHBlaSotaTM4NiguKmFyY2hpdGVj
dHVyZTogaTM4Nik/JwogIGx0X2N2X2ZpbGVfbWFnaWNfY21kPSckT0JKRFVNUCAtZicKICA7OwoK
ZGFyd2luKiB8IHJoYXBzb2R5KikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2Fs
bAogIDs7CgpmcmVlYnNkKiB8IGtmcmVlYnNkKi1nbnUgfCBkcmFnb25mbHkqKQogIGlmIGVjaG8g
X19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fID4gL2Rldi9udWxsOyB0aGVuCiAgICBj
YXNlICRob3N0X2NwdSBpbgogICAgaSo4NiApCiAgICAgICMgTm90IHN1cmUgd2hldGhlciB0aGUg
cHJlc2VuY2Ugb2YgT3BlbkJTRCBoZXJlIHdhcyBhIG1pc3Rha2UuCiAgICAgICMgTGV0J3MgYWNj
ZXB0IGJvdGggb2YgdGhlbSB1bnRpbCB0aGlzIGlzIGNsZWFyZWQgdXAuCiAgICAgIGx0X2N2X2Rl
cGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIChGcmVlQlNEfE9wZW5CU0R8RHJhZ29uRmx5
KS9pW1szLTldXTg2IChjb21wYWN0ICk/ZGVtYW5kIHBhZ2VkIHNoYXJlZCBsaWJyYXJ5JwogICAg
ICBsdF9jdl9maWxlX21hZ2ljX2NtZD0vdXNyL2Jpbi9maWxlCiAgICAgIGx0X2N2X2ZpbGVfbWFn
aWNfdGVzdF9maWxlPWBlY2hvIC91c3IvbGliL2xpYmMuc28uKmAKICAgICAgOzsKICAgIGVzYWMK
ICBlbHNlCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAogIGZpCiAgOzsK
CmdudSopCiAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKICA7OwoKaHB1eDEw
LjIwKiB8IGhwdXgxMSopCiAgbHRfY3ZfZmlsZV9tYWdpY19jbWQ9L3Vzci9iaW4vZmlsZQogIGNh
c2UgJGhvc3RfY3B1IGluCiAgaWE2NCopCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0n
ZmlsZV9tYWdpYyAoc1tbMC05XV1bWzAtOV1dW1swLTldXXxFTEYtW1swLTldXVtbMC05XV0pIHNo
YXJlZCBvYmplY3QgZmlsZSAtIElBNjQnCiAgICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0v
dXNyL2xpYi9ocHV4MzIvbGliYy5zbwogICAgOzsKICBocHBhKjY0KikKICAgIFtsdF9jdl9kZXBs
aWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyAoc1swLTldWzAtOV1bMC05XXxFTEYtWzAtOV1b
MC05XSkgc2hhcmVkIG9iamVjdCBmaWxlIC0gUEEtUklTQyBbMC05XS5bMC05XSddCiAgICBsdF9j
dl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0vdXNyL2xpYi9wYTIwXzY0L2xpYmMuc2wKICAgIDs7CiAg
KikKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIChzW1swLTldXVtb
MC05XV1bWzAtOV1dfFBBLVJJU0NbWzAtOV1dLltbMC05XV0pIHNoYXJlZCBsaWJyYXJ5JwogICAg
bHRfY3ZfZmlsZV9tYWdpY190ZXN0X2ZpbGU9L3Vzci9saWIvbGliYy5zbAogICAgOzsKICBlc2Fj
CiAgOzsKCmludGVyaXgzKikKICAjIFBJQyBjb2RlIGlzIGJyb2tlbiBvbiBJbnRlcml4IDMueCwg
dGhhdCdzIHdoeSB8XC5hIG5vdCB8X3BpY1wuYSBoZXJlCiAgbHRfY3ZfZGVwbGlic19jaGVja19t
ZXRob2Q9J21hdGNoX3BhdHRlcm4gL2xpYltbXi9dXSsoXC5zb3xcLmEpJCcKICA7OwoKaXJpeDUq
IHwgaXJpeDYqIHwgbm9uc3RvcHV4KikKICBjYXNlICRMRCBpbgogICotMzJ8KiItMzIgIikgbGli
bWFnaWM9MzItYml0OzsKICAqLW4zMnwqIi1uMzIgIikgbGlibWFnaWM9TjMyOzsKICAqLTY0fCoi
LTY0ICIpIGxpYm1hZ2ljPTY0LWJpdDs7CiAgKikgbGlibWFnaWM9bmV2ZXItbWF0Y2g7OwogIGVz
YWMKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAogIDs7CgojIFRoaXMgbXVz
dCBiZSBMaW51eCBFTEYuCmxpbnV4KikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNz
X2FsbAogIDs7CgpuZXRic2QqKQogIGlmIGVjaG8gX19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBf
X0VMRl9fID4gL2Rldi9udWxsOyB0aGVuCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0n
bWF0Y2hfcGF0dGVybiAvbGliW1teL11dKyhcLnNvXC5bWzAtOV1dK1wuW1swLTldXSt8X3BpY1wu
YSkkJwogIGVsc2UKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdtYXRjaF9wYXR0ZXJu
IC9saWJbW14vXV0rKFwuc298X3BpY1wuYSkkJwogIGZpCiAgOzsKCm5ld29zNiopCiAgbHRfY3Zf
ZGVwbGlic19jaGVja19tZXRob2Q9J2ZpbGVfbWFnaWMgRUxGIFtbMC05XV1bWzAtOV1dKi1iaXQg
W1tNTF1dU0IgKGV4ZWN1dGFibGV8ZHluYW1pYyBsaWIpJwogIGx0X2N2X2ZpbGVfbWFnaWNfY21k
PS91c3IvYmluL2ZpbGUKICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0vdXNyL2xpYi9saWJu
bHMuc28KICA7OwoKbnRvLXFueCopCiAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9dW5rbm93
bgogIDs7CgpvcGVuYnNkKikKICBpZiB0ZXN0IC16ICJgZWNobyBfX0VMRl9fIHwgJENDIC1FIC0g
fCBncmVwIF9fRUxGX19gIiB8fCB0ZXN0ICIkaG9zdF9vcy0kaG9zdF9jcHUiID0gIm9wZW5ic2Qy
LjgtcG93ZXJwYyI7IHRoZW4KICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdtYXRjaF9w
YXR0ZXJuIC9saWJbW14vXV0rKFwuc29cLltbMC05XV0rXC5bWzAtOV1dK3xcLnNvfF9waWNcLmEp
JCcKICBlbHNlCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nbWF0Y2hfcGF0dGVybiAv
bGliW1teL11dKyhcLnNvXC5bWzAtOV1dK1wuW1swLTldXSt8X3BpY1wuYSkkJwogIGZpCiAgOzsK
Cm9zZjMqIHwgb3NmNCogfCBvc2Y1KikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNz
X2FsbAogIDs7Cgpzb2xhcmlzKikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2Fs
bAogIDs7CgpzeXN2NCB8IHN5c3Y0LjMqKQogIGNhc2UgJGhvc3RfdmVuZG9yIGluCiAgbW90b3Jv
bGEpCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyBFTEYgW1swLTld
XVtbMC05XV0qLWJpdCBbW01MXV1TQiAoc2hhcmVkIG9iamVjdHxkeW5hbWljIGxpYikgTVtbMC05
XV1bWzAtOV1dKiBWZXJzaW9uIFtbMC05XV0nCiAgICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmls
ZT1gZWNobyAvdXNyL2xpYi9saWJjLnNvKmAKICAgIDs7CiAgbmNyKQogICAgbHRfY3ZfZGVwbGli
c19jaGVja19tZXRob2Q9cGFzc19hbGwKICAgIDs7CiAgc2VxdWVudCkKICAgIGx0X2N2X2ZpbGVf
bWFnaWNfY21kPScvYmluL2ZpbGUnCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmls
ZV9tYWdpYyBFTEYgW1swLTldXVtbMC05XV0qLWJpdCBbW0xNXV1TQiAoc2hhcmVkIG9iamVjdHxk
eW5hbWljIGxpYiApJwogICAgOzsKICBzbmkpCiAgICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nL2Jp
bi9maWxlJwogICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9ImZpbGVfbWFnaWMgRUxGIFtb
MC05XV1bWzAtOV1dKi1iaXQgW1tMTV1dU0IgZHluYW1pYyBsaWIiCiAgICBsdF9jdl9maWxlX21h
Z2ljX3Rlc3RfZmlsZT0vbGliL2xpYmMuc28KICAgIDs7CiAgc2llbWVucykKICAgIGx0X2N2X2Rl
cGxpYnNfY2hlY2tfbWV0aG9kPXBhc3NfYWxsCiAgICA7OwogIHBjKQogICAgbHRfY3ZfZGVwbGli
c19jaGVja19tZXRob2Q9cGFzc19hbGwKICAgIDs7CiAgZXNhYwogIDs7CgpzeXN2NSogfCBzY28z
LjJ2NSogfCBzY281djYqIHwgdW5peHdhcmUqIHwgT3BlblVOSVgqIHwgc3lzdjQqdXcyKikKICBs
dF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAogIDs7CmVzYWMKXSkKZmlsZV9tYWdp
Y19jbWQ9JGx0X2N2X2ZpbGVfbWFnaWNfY21kCmRlcGxpYnNfY2hlY2tfbWV0aG9kPSRsdF9jdl9k
ZXBsaWJzX2NoZWNrX21ldGhvZAp0ZXN0IC16ICIkZGVwbGlic19jaGVja19tZXRob2QiICYmIGRl
cGxpYnNfY2hlY2tfbWV0aG9kPXVua25vd24KXSkjIEFDX0RFUExJQlNfQ0hFQ0tfTUVUSE9ECgoK
IyBBQ19QUk9HX05NCiMgLS0tLS0tLS0tLQojIGZpbmQgdGhlIHBhdGhuYW1lIHRvIGEgQlNELWNv
bXBhdGlibGUgbmFtZSBsaXN0ZXIKQUNfREVGVU4oW0FDX1BST0dfTk1dLApbQUNfQ0FDSEVfQ0hF
Q0soW2ZvciBCU0QtY29tcGF0aWJsZSBubV0sIGx0X2N2X3BhdGhfTk0sCltpZiB0ZXN0IC1uICIk
Tk0iOyB0aGVuCiAgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCiAgbHRfY3ZfcGF0
aF9OTT0iJE5NIgplbHNlCiAgbHRfbm1fdG9fY2hlY2s9IiR7YWNfdG9vbF9wcmVmaXh9bm0iCiAg
aWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IiAmJiB0ZXN0ICIkYnVpbGQiID0gIiRob3N0Ijsg
dGhlbiAKICAgIGx0X25tX3RvX2NoZWNrPSIkbHRfbm1fdG9fY2hlY2sgbm0iCiAgZmkKICBmb3Ig
bHRfdG1wX25tIGluICRsdF9ubV90b19jaGVjazsgZG8KICAgIGx0X3NhdmVfaWZzPSIkSUZTIjsg
SUZTPSRQQVRIX1NFUEFSQVRPUgogICAgZm9yIGFjX2RpciBpbiAkUEFUSCAvdXNyL2Njcy9iaW4v
ZWxmIC91c3IvY2NzL2JpbiAvdXNyL3VjYiAvYmluOyBkbwogICAgICBJRlM9IiRsdF9zYXZlX2lm
cyIKICAgICAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KICAgICAgdG1wX25tPSIkYWNf
ZGlyLyRsdF90bXBfbm0iCiAgICAgIGlmIHRlc3QgLWYgIiR0bXBfbm0iIHx8IHRlc3QgLWYgIiR0
bXBfbm0kYWNfZXhlZXh0IiA7IHRoZW4KCSMgQ2hlY2sgdG8gc2VlIGlmIHRoZSBubSBhY2NlcHRz
IGEgQlNELWNvbXBhdCBmbGFnLgoJIyBBZGRpbmcgdGhlIGBzZWQgMXEnIHByZXZlbnRzIGZhbHNl
IHBvc2l0aXZlcyBvbiBIUC1VWCwgd2hpY2ggc2F5czoKCSMgICBubTogdW5rbm93biBvcHRpb24g
IkIiIGlnbm9yZWQKCSMgVHJ1NjQncyBubSBjb21wbGFpbnMgdGhhdCAvZGV2L251bGwgaXMgYW4g
aW52YWxpZCBvYmplY3QgZmlsZQoJY2FzZSBgIiR0bXBfbm0iIC1CIC9kZXYvbnVsbCAyPiYxIHwg
c2VkICcxcSdgIGluCgkqL2Rldi9udWxsKiB8IConSW52YWxpZCBmaWxlIG9yIG9iamVjdCB0eXBl
JyopCgkgIGx0X2N2X3BhdGhfTk09IiR0bXBfbm0gLUIiCgkgIGJyZWFrCgkgIDs7CgkqKQoJICBj
YXNlIGAiJHRtcF9ubSIgLXAgL2Rldi9udWxsIDI+JjEgfCBzZWQgJzFxJ2AgaW4KCSAgKi9kZXYv
bnVsbCopCgkgICAgbHRfY3ZfcGF0aF9OTT0iJHRtcF9ubSAtcCIKCSAgICBicmVhawoJICAgIDs7
CgkgICopCgkgICAgbHRfY3ZfcGF0aF9OTT0ke2x0X2N2X3BhdGhfTk09IiR0bXBfbm0ifSAjIGtl
ZXAgdGhlIGZpcnN0IG1hdGNoLCBidXQKCSAgICBjb250aW51ZSAjIHNvIHRoYXQgd2UgY2FuIHRy
eSB0byBmaW5kIG9uZSB0aGF0IHN1cHBvcnRzIEJTRCBmbGFncwoJICAgIDs7CgkgIGVzYWMKCSAg
OzsKCWVzYWMKICAgICAgZmkKICAgIGRvbmUKICAgIElGUz0iJGx0X3NhdmVfaWZzIgogIGRvbmUK
ICB0ZXN0IC16ICIkbHRfY3ZfcGF0aF9OTSIgJiYgbHRfY3ZfcGF0aF9OTT1ubQpmaV0pCk5NPSIk
bHRfY3ZfcGF0aF9OTSIKXSkjIEFDX1BST0dfTk0KCgojIEFDX0NIRUNLX0xJQk0KIyAtLS0tLS0t
LS0tLS0tCiMgY2hlY2sgZm9yIG1hdGggbGlicmFyeQpBQ19ERUZVTihbQUNfQ0hFQ0tfTElCTV0s
CltBQ19SRVFVSVJFKFtBQ19DQU5PTklDQUxfSE9TVF0pZG5sCkxJQk09CmNhc2UgJGhvc3QgaW4K
Ki0qLWJlb3MqIHwgKi0qLWN5Z3dpbiogfCAqLSotcHczMiogfCAqLSotZGFyd2luKikKICAjIFRo
ZXNlIHN5c3RlbSBkb24ndCBoYXZlIGxpYm0sIG9yIGRvbid0IG5lZWQgaXQKICA7OwoqLW5jci1z
eXN2NC4zKikKICBBQ19DSEVDS19MSUIobXcsIF9td3ZhbGlkY2hlY2tsLCBMSUJNPSItbG13IikK
ICBBQ19DSEVDS19MSUIobSwgY29zLCBMSUJNPSIkTElCTSAtbG0iKQogIDs7CiopCiAgQUNfQ0hF
Q0tfTElCKG0sIGNvcywgTElCTT0iLWxtIikKICA7Owplc2FjCl0pIyBBQ19DSEVDS19MSUJNCgoK
IyBBQ19MSUJMVERMX0NPTlZFTklFTkNFKFtESVJFQ1RPUlldKQojIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiMgc2V0cyBMSUJMVERMIHRvIHRoZSBsaW5rIGZsYWdzIGZvciB0
aGUgbGlibHRkbCBjb252ZW5pZW5jZSBsaWJyYXJ5IGFuZAojIExURExJTkNMIHRvIHRoZSBpbmNs
dWRlIGZsYWdzIGZvciB0aGUgbGlibHRkbCBoZWFkZXIgYW5kIGFkZHMKIyAtLWVuYWJsZS1sdGRs
LWNvbnZlbmllbmNlIHRvIHRoZSBjb25maWd1cmUgYXJndW1lbnRzLiAgTm90ZSB0aGF0CiMgQUNf
Q09ORklHX1NVQkRJUlMgaXMgbm90IGNhbGxlZCBoZXJlLiAgSWYgRElSRUNUT1JZIGlzIG5vdCBw
cm92aWRlZCwKIyBpdCBpcyBhc3N1bWVkIHRvIGJlIGBsaWJsdGRsJy4gIExJQkxUREwgd2lsbCBi
ZSBwcmVmaXhlZCB3aXRoCiMgJyR7dG9wX2J1aWxkZGlyfS8nIGFuZCBMVERMSU5DTCB3aWxsIGJl
IHByZWZpeGVkIHdpdGggJyR7dG9wX3NyY2Rpcn0vJwojIChub3RlIHRoZSBzaW5nbGUgcXVvdGVz
ISkuICBJZiB5b3VyIHBhY2thZ2UgaXMgbm90IGZsYXQgYW5kIHlvdSdyZSBub3QKIyB1c2luZyBh
dXRvbWFrZSwgZGVmaW5lIHRvcF9idWlsZGRpciBhbmQgdG9wX3NyY2RpciBhcHByb3ByaWF0ZWx5
IGluCiMgdGhlIE1ha2VmaWxlcy4KQUNfREVGVU4oW0FDX0xJQkxURExfQ09OVkVOSUVOQ0VdLApb
QUNfQkVGT1JFKFskMF0sW0FDX0xJQlRPT0xfU0VUVVBdKWRubAogIGNhc2UgJGVuYWJsZV9sdGRs
X2NvbnZlbmllbmNlIGluCiAgbm8pIEFDX01TR19FUlJPUihbdGhpcyBwYWNrYWdlIG5lZWRzIGEg
Y29udmVuaWVuY2UgbGlibHRkbF0pIDs7CiAgIiIpIGVuYWJsZV9sdGRsX2NvbnZlbmllbmNlPXll
cwogICAgICBhY19jb25maWd1cmVfYXJncz0iJGFjX2NvbmZpZ3VyZV9hcmdzIC0tZW5hYmxlLWx0
ZGwtY29udmVuaWVuY2UiIDs7CiAgZXNhYwogIExJQkxUREw9JyR7dG9wX2J1aWxkZGlyfS8naWZl
bHNlKCQjLDEsWyQxXSxbJ2xpYmx0ZGwnXSkvbGlibHRkbGMubGEKICBMVERMSU5DTD0nLUkke3Rv
cF9zcmNkaXJ9LydpZmVsc2UoJCMsMSxbJDFdLFsnbGlibHRkbCddKQogICMgRm9yIGJhY2t3YXJk
cyBub24tZ2V0dGV4dCBjb25zaXN0ZW50IGNvbXBhdGliaWxpdHkuLi4KICBJTkNMVERMPSIkTFRE
TElOQ0wiCl0pIyBBQ19MSUJMVERMX0NPTlZFTklFTkNFCgoKIyBBQ19MSUJMVERMX0lOU1RBTExB
QkxFKFtESVJFQ1RPUlldKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMg
c2V0cyBMSUJMVERMIHRvIHRoZSBsaW5rIGZsYWdzIGZvciB0aGUgbGlibHRkbCBpbnN0YWxsYWJs
ZSBsaWJyYXJ5IGFuZAojIExURExJTkNMIHRvIHRoZSBpbmNsdWRlIGZsYWdzIGZvciB0aGUgbGli
bHRkbCBoZWFkZXIgYW5kIGFkZHMKIyAtLWVuYWJsZS1sdGRsLWluc3RhbGwgdG8gdGhlIGNvbmZp
Z3VyZSBhcmd1bWVudHMuICBOb3RlIHRoYXQKIyBBQ19DT05GSUdfU1VCRElSUyBpcyBub3QgY2Fs
bGVkIGhlcmUuICBJZiBESVJFQ1RPUlkgaXMgbm90IHByb3ZpZGVkLAojIGFuZCBhbiBpbnN0YWxs
ZWQgbGlibHRkbCBpcyBub3QgZm91bmQsIGl0IGlzIGFzc3VtZWQgdG8gYmUgYGxpYmx0ZGwnLgoj
IExJQkxUREwgd2lsbCBiZSBwcmVmaXhlZCB3aXRoICcke3RvcF9idWlsZGRpcn0vJyMgYW5kIExU
RExJTkNMIHdpdGgKIyAnJHt0b3Bfc3JjZGlyfS8nIChub3RlIHRoZSBzaW5nbGUgcXVvdGVzISku
ICBJZiB5b3VyIHBhY2thZ2UgaXMgbm90CiMgZmxhdCBhbmQgeW91J3JlIG5vdCB1c2luZyBhdXRv
bWFrZSwgZGVmaW5lIHRvcF9idWlsZGRpciBhbmQgdG9wX3NyY2RpcgojIGFwcHJvcHJpYXRlbHkg
aW4gdGhlIE1ha2VmaWxlcy4KIyBJbiB0aGUgZnV0dXJlLCB0aGlzIG1hY3JvIG1heSBoYXZlIHRv
IGJlIGNhbGxlZCBhZnRlciBBQ19QUk9HX0xJQlRPT0wuCkFDX0RFRlVOKFtBQ19MSUJMVERMX0lO
U1RBTExBQkxFXSwKW0FDX0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NFVFVQXSlkbmwKICBBQ19D
SEVDS19MSUIobHRkbCwgbHRfZGxpbml0LAogIFt0ZXN0IHgiJGVuYWJsZV9sdGRsX2luc3RhbGwi
ICE9IHh5ZXMgJiYgZW5hYmxlX2x0ZGxfaW5zdGFsbD1ub10sCiAgW2lmIHRlc3QgeCIkZW5hYmxl
X2x0ZGxfaW5zdGFsbCIgPSB4bm87IHRoZW4KICAgICBBQ19NU0dfV0FSTihbbGlibHRkbCBub3Qg
aW5zdGFsbGVkLCBidXQgaW5zdGFsbGF0aW9uIGRpc2FibGVkXSkKICAgZWxzZQogICAgIGVuYWJs
ZV9sdGRsX2luc3RhbGw9eWVzCiAgIGZpCiAgXSkKICBpZiB0ZXN0IHgiJGVuYWJsZV9sdGRsX2lu
c3RhbGwiID0geCJ5ZXMiOyB0aGVuCiAgICBhY19jb25maWd1cmVfYXJncz0iJGFjX2NvbmZpZ3Vy
ZV9hcmdzIC0tZW5hYmxlLWx0ZGwtaW5zdGFsbCIKICAgIExJQkxUREw9JyR7dG9wX2J1aWxkZGly
fS8naWZlbHNlKCQjLDEsWyQxXSxbJ2xpYmx0ZGwnXSkvbGlibHRkbC5sYQogICAgTFRETElOQ0w9
Jy1JJHt0b3Bfc3JjZGlyfS8naWZlbHNlKCQjLDEsWyQxXSxbJ2xpYmx0ZGwnXSkKICBlbHNlCiAg
ICBhY19jb25maWd1cmVfYXJncz0iJGFjX2NvbmZpZ3VyZV9hcmdzIC0tZW5hYmxlLWx0ZGwtaW5z
dGFsbD1ubyIKICAgIExJQkxUREw9Ii1sbHRkbCIKICAgIExURExJTkNMPQogIGZpCiAgIyBGb3Ig
YmFja3dhcmRzIG5vbi1nZXR0ZXh0IGNvbnNpc3RlbnQgY29tcGF0aWJpbGl0eS4uLgogIElOQ0xU
REw9IiRMVERMSU5DTCIKXSkjIEFDX0xJQkxURExfSU5TVEFMTEFCTEUKCgojIEFDX0xJQlRPT0xf
Q1hYCiMgLS0tLS0tLS0tLS0tLS0KIyBlbmFibGUgc3VwcG9ydCBmb3IgQysrIGxpYnJhcmllcwpB
Q19ERUZVTihbQUNfTElCVE9PTF9DWFhdLApbQUNfUkVRVUlSRShbX0xUX0FDX0xBTkdfQ1hYXSkK
XSkjIEFDX0xJQlRPT0xfQ1hYCgoKIyBfTFRfQUNfTEFOR19DWFgKIyAtLS0tLS0tLS0tLS0tLS0K
QUNfREVGVU4oW19MVF9BQ19MQU5HX0NYWF0sCltBQ19SRVFVSVJFKFtBQ19QUk9HX0NYWF0pCkFD
X1JFUVVJUkUoW19MVF9BQ19QUk9HX0NYWENQUF0pCl9MVF9BQ19TSEVMTF9JTklUKFt0YWduYW1l
cz0ke3RhZ25hbWVzKyR7dGFnbmFtZXN9LH1DWFhdKQpdKSMgX0xUX0FDX0xBTkdfQ1hYCgojIF9M
VF9BQ19QUk9HX0NYWENQUAojIC0tLS0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihbX0xUX0FDX1BS
T0dfQ1hYQ1BQXSwKWwpBQ19SRVFVSVJFKFtBQ19QUk9HX0NYWF0pCmlmIHRlc3QgLW4gIiRDWFgi
ICYmICggdGVzdCAiWCRDWFgiICE9ICJYbm8iICYmCiAgICAoICh0ZXN0ICJYJENYWCIgPSAiWGcr
KyIgJiYgYGcrKyAtdiA+L2Rldi9udWxsIDI+JjFgICkgfHwKICAgICh0ZXN0ICJYJENYWCIgIT0g
IlhnKysiKSkpIDsgdGhlbgogIEFDX1BST0dfQ1hYQ1BQCmZpCl0pIyBfTFRfQUNfUFJPR19DWFhD
UFAKCiMgQUNfTElCVE9PTF9GNzcKIyAtLS0tLS0tLS0tLS0tLQojIGVuYWJsZSBzdXBwb3J0IGZv
ciBGb3J0cmFuIDc3IGxpYnJhcmllcwpBQ19ERUZVTihbQUNfTElCVE9PTF9GNzddLApbQUNfUkVR
VUlSRShbX0xUX0FDX0xBTkdfRjc3XSkKXSkjIEFDX0xJQlRPT0xfRjc3CgoKIyBfTFRfQUNfTEFO
R19GNzcKIyAtLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW19MVF9BQ19MQU5HX0Y3N10sCltBQ19S
RVFVSVJFKFtBQ19QUk9HX0Y3N10pCl9MVF9BQ19TSEVMTF9JTklUKFt0YWduYW1lcz0ke3RhZ25h
bWVzKyR7dGFnbmFtZXN9LH1GNzddKQpdKSMgX0xUX0FDX0xBTkdfRjc3CgoKIyBBQ19MSUJUT09M
X0dDSgojIC0tLS0tLS0tLS0tLS0tCiMgZW5hYmxlIHN1cHBvcnQgZm9yIEdDSiBsaWJyYXJpZXMK
QUNfREVGVU4oW0FDX0xJQlRPT0xfR0NKXSwKW0FDX1JFUVVJUkUoW19MVF9BQ19MQU5HX0dDSl0p
Cl0pIyBBQ19MSUJUT09MX0dDSgoKCiMgX0xUX0FDX0xBTkdfR0NKCiMgLS0tLS0tLS0tLS0tLS0t
CkFDX0RFRlVOKFtfTFRfQUNfTEFOR19HQ0pdLApbQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0df
R0NKXSxbXSwKICBbQUNfUFJPVklERV9JRkVMU0UoW0FdW01fUFJPR19HQ0pdLFtdLAogICAgW0FD
X1BST1ZJREVfSUZFTFNFKFtMVF9BQ19QUk9HX0dDSl0sW10sCiAgICAgIFtpZmRlZihbQUNfUFJP
R19HQ0pdLFtBQ19SRVFVSVJFKFtBQ19QUk9HX0dDSl0pXSwKCSBbaWZkZWYoW0FdW01fUFJPR19H
Q0pdLFtBQ19SRVFVSVJFKFtBXVtNX1BST0dfR0NKXSldLAoJICAgW0FDX1JFUVVJUkUoW0FdW0Nf
UFJPR19HQ0pfT1JfQV1bTV9QUk9HX0dDSl0pXSldKV0pXSldKQpfTFRfQUNfU0hFTExfSU5JVChb
dGFnbmFtZXM9JHt0YWduYW1lcyske3RhZ25hbWVzfSx9R0NKXSkKXSkjIF9MVF9BQ19MQU5HX0dD
SgoKCiMgQUNfTElCVE9PTF9SQwojIC0tLS0tLS0tLS0tLS0KIyBlbmFibGUgc3VwcG9ydCBmb3Ig
V2luZG93cyByZXNvdXJjZSBmaWxlcwpBQ19ERUZVTihbQUNfTElCVE9PTF9SQ10sCltBQ19SRVFV
SVJFKFtMVF9BQ19QUk9HX1JDXSkKX0xUX0FDX1NIRUxMX0lOSVQoW3RhZ25hbWVzPSR7dGFnbmFt
ZXMrJHt0YWduYW1lc30sfVJDXSkKXSkjIEFDX0xJQlRPT0xfUkMKCgojIEFDX0xJQlRPT0xfTEFO
R19DX0NPTkZJRwojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEVuc3VyZSB0aGF0IHRoZSBj
b25maWd1cmF0aW9uIHZhcnMgZm9yIHRoZSBDIGNvbXBpbGVyIGFyZQojIHN1aXRhYmx5IGRlZmlu
ZWQuICBUaG9zZSB2YXJpYWJsZXMgYXJlIHN1YnNlcXVlbnRseSB1c2VkIGJ5CiMgQUNfTElCVE9P
TF9DT05GSUcgdG8gd3JpdGUgdGhlIGNvbXBpbGVyIGNvbmZpZ3VyYXRpb24gdG8gYGxpYnRvb2wn
LgpBQ19ERUZVTihbQUNfTElCVE9PTF9MQU5HX0NfQ09ORklHXSwgW19MVF9BQ19MQU5HX0NfQ09O
RklHXSkKQUNfREVGVU4oW19MVF9BQ19MQU5HX0NfQ09ORklHXSwKW2x0X3NhdmVfQ0M9IiRDQyIK
QUNfTEFOR19QVVNIKEMpCgojIFNvdXJjZSBmaWxlIGV4dGVuc2lvbiBmb3IgQyB0ZXN0IHNvdXJj
ZXMuCmFjX2V4dD1jCgojIE9iamVjdCBmaWxlIGV4dGVuc2lvbiBmb3IgY29tcGlsZWQgQyB0ZXN0
IHNvdXJjZXMuCm9iamV4dD1vCl9MVF9BQ19UQUdWQVIob2JqZXh0LCAkMSk9JG9iamV4dAoKIyBD
b2RlIHRvIGJlIHVzZWQgaW4gc2ltcGxlIGNvbXBpbGUgdGVzdHMKbHRfc2ltcGxlX2NvbXBpbGVf
dGVzdF9jb2RlPSJpbnQgc29tZV92YXJpYWJsZSA9IDA7XG4iCgojIENvZGUgdG8gYmUgdXNlZCBp
biBzaW1wbGUgbGluayB0ZXN0cwpsdF9zaW1wbGVfbGlua190ZXN0X2NvZGU9J2ludCBtYWluKCl7
cmV0dXJuKDApO31cbicKCl9MVF9BQ19TWVNfQ09NUElMRVIKCiMgc2F2ZSB3YXJuaW5ncy9ib2ls
ZXJwbGF0ZSBvZiBzaW1wbGUgdGVzdCBjb2RlCl9MVF9DT01QSUxFUl9CT0lMRVJQTEFURQpfTFRf
TElOS0VSX0JPSUxFUlBMQVRFCgpBQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRUSSgkMSkK
QUNfTElCVE9PTF9QUk9HX0NPTVBJTEVSX1BJQygkMSkKQUNfTElCVE9PTF9QUk9HX0NDX0NfTygk
MSkKQUNfTElCVE9PTF9TWVNfSEFSRF9MSU5LX0xPQ0tTKCQxKQpBQ19MSUJUT09MX1BST0dfTERf
U0hMSUJTKCQxKQpBQ19MSUJUT09MX1NZU19EWU5BTUlDX0xJTktFUigkMSkKQUNfTElCVE9PTF9Q
Uk9HX0xEX0hBUkRDT0RFX0xJQlBBVEgoJDEpCkFDX0xJQlRPT0xfU1lTX0xJQl9TVFJJUApBQ19M
SUJUT09MX0RMT1BFTl9TRUxGCgojIFJlcG9ydCB3aGljaCBsaWJyYXJ5IHR5cGVzIHdpbGwgYWN0
dWFsbHkgYmUgYnVpbHQKQUNfTVNHX0NIRUNLSU5HKFtpZiBsaWJ0b29sIHN1cHBvcnRzIHNoYXJl
ZCBsaWJyYXJpZXNdKQpBQ19NU0dfUkVTVUxUKFskY2FuX2J1aWxkX3NoYXJlZF0pCgpBQ19NU0df
Q0hFQ0tJTkcoW3doZXRoZXIgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmllc10pCnRlc3QgIiRjYW5f
YnVpbGRfc2hhcmVkIiA9ICJubyIgJiYgZW5hYmxlX3NoYXJlZD1ubwoKIyBPbiBBSVgsIHNoYXJl
ZCBsaWJyYXJpZXMgYW5kIHN0YXRpYyBsaWJyYXJpZXMgdXNlIHRoZSBzYW1lIG5hbWVzcGFjZSwg
YW5kCiMgYXJlIGFsbCBidWlsdCBmcm9tIFBJQy4KY2FzZSAkaG9zdF9vcyBpbgphaXgzKikKICB0
ZXN0ICIkZW5hYmxlX3NoYXJlZCIgPSB5ZXMgJiYgZW5hYmxlX3N0YXRpYz1ubwogIGlmIHRlc3Qg
LW4gIiRSQU5MSUIiOyB0aGVuCiAgICBhcmNoaXZlX2NtZHM9IiRhcmNoaXZlX2NtZHN+XCRSQU5M
SUIgXCRsaWIiCiAgICBwb3N0aW5zdGFsbF9jbWRzPSckUkFOTElCICRsaWInCiAgZmkKICA7OwoK
YWl4NCogfCBhaXg1KikKICBpZiB0ZXN0ICIkaG9zdF9jcHUiICE9IGlhNjQgJiYgdGVzdCAiJGFp
eF91c2VfcnVudGltZWxpbmtpbmciID0gbm8gOyB0aGVuCiAgICB0ZXN0ICIkZW5hYmxlX3NoYXJl
ZCIgPSB5ZXMgJiYgZW5hYmxlX3N0YXRpYz1ubwogIGZpCiAgICA7Owplc2FjCkFDX01TR19SRVNV
TFQoWyRlbmFibGVfc2hhcmVkXSkKCkFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byBidWlsZCBz
dGF0aWMgbGlicmFyaWVzXSkKIyBNYWtlIHN1cmUgZWl0aGVyIGVuYWJsZV9zaGFyZWQgb3IgZW5h
YmxlX3N0YXRpYyBpcyB5ZXMuCnRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyB8fCBlbmFibGVf
c3RhdGljPXllcwpBQ19NU0dfUkVTVUxUKFskZW5hYmxlX3N0YXRpY10pCgpBQ19MSUJUT09MX0NP
TkZJRygkMSkKCkFDX0xBTkdfUE9QCkNDPSIkbHRfc2F2ZV9DQyIKXSkjIEFDX0xJQlRPT0xfTEFO
R19DX0NPTkZJRwoKCiMgQUNfTElCVE9PTF9MQU5HX0NYWF9DT05GSUcKIyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQojIEVuc3VyZSB0aGF0IHRoZSBjb25maWd1cmF0aW9uIHZhcnMgZm9yIHRo
ZSBDIGNvbXBpbGVyIGFyZQojIHN1aXRhYmx5IGRlZmluZWQuICBUaG9zZSB2YXJpYWJsZXMgYXJl
IHN1YnNlcXVlbnRseSB1c2VkIGJ5CiMgQUNfTElCVE9PTF9DT05GSUcgdG8gd3JpdGUgdGhlIGNv
bXBpbGVyIGNvbmZpZ3VyYXRpb24gdG8gYGxpYnRvb2wnLgpBQ19ERUZVTihbQUNfTElCVE9PTF9M
QU5HX0NYWF9DT05GSUddLCBbX0xUX0FDX0xBTkdfQ1hYX0NPTkZJRyhDWFgpXSkKQUNfREVGVU4o
W19MVF9BQ19MQU5HX0NYWF9DT05GSUddLApbQUNfTEFOR19QVVNIKEMrKykKQUNfUkVRVUlSRShb
QUNfUFJPR19DWFhdKQpBQ19SRVFVSVJFKFtfTFRfQUNfUFJPR19DWFhDUFBdKQoKX0xUX0FDX1RB
R1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpPW5vCl9MVF9BQ19UQUdWQVIoYWxsb3dfdW5k
ZWZpbmVkX2ZsYWcsICQxKT0KX0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQx
KT1ubwpfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0KX0xUX0FDX1RBR1ZB
UihleHBvcnRfZHluYW1pY19mbGFnX3NwZWMsICQxKT0KX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9k
aXJlY3QsICQxKT1ubwpfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQx
KT0KX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjX2xkLCAkMSk9Cl9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPQpfTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX21pbnVzX0wsICQxKT1ubwpfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92
YXIsICQxKT11bnN1cHBvcnRlZApfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2F1dG9tYXRpYywgJDEp
PW5vCl9MVF9BQ19UQUdWQVIobW9kdWxlX2NtZHMsICQxKT0KX0xUX0FDX1RBR1ZBUihtb2R1bGVf
ZXhwc3ltX2NtZHMsICQxKT0KX0xUX0FDX1RBR1ZBUihsaW5rX2FsbF9kZXBsaWJzLCAkMSk9dW5r
bm93bgpfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0kb2xkX2FyY2hpdmVfY21k
cwpfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9Cl9MVF9BQ19UQUdWQVIod2hv
bGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0KX0xUX0FDX1RBR1ZBUihlbmFibGVfc2hhcmVkX3dp
dGhfc3RhdGljX3J1bnRpbWVzLCAkMSk9bm8KCiMgRGVwZW5kZW5jaWVzIHRvIHBsYWNlIGJlZm9y
ZSBhbmQgYWZ0ZXIgdGhlIG9iamVjdCBiZWluZyBsaW5rZWQ6Cl9MVF9BQ19UQUdWQVIocHJlZGVw
X29iamVjdHMsICQxKT0KX0xUX0FDX1RBR1ZBUihwb3N0ZGVwX29iamVjdHMsICQxKT0KX0xUX0FD
X1RBR1ZBUihwcmVkZXBzLCAkMSk9Cl9MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKT0KX0xUX0FD
X1RBR1ZBUihjb21waWxlcl9saWJfc2VhcmNoX3BhdGgsICQxKT0KCiMgU291cmNlIGZpbGUgZXh0
ZW5zaW9uIGZvciBDKysgdGVzdCBzb3VyY2VzLgphY19leHQ9Y3BwCgojIE9iamVjdCBmaWxlIGV4
dGVuc2lvbiBmb3IgY29tcGlsZWQgQysrIHRlc3Qgc291cmNlcy4Kb2JqZXh0PW8KX0xUX0FDX1RB
R1ZBUihvYmpleHQsICQxKT0kb2JqZXh0CgojIENvZGUgdG8gYmUgdXNlZCBpbiBzaW1wbGUgY29t
cGlsZSB0ZXN0cwpsdF9zaW1wbGVfY29tcGlsZV90ZXN0X2NvZGU9ImludCBzb21lX3ZhcmlhYmxl
ID0gMDtcbiIKCiMgQ29kZSB0byBiZSB1c2VkIGluIHNpbXBsZSBsaW5rIHRlc3RzCmx0X3NpbXBs
ZV9saW5rX3Rlc3RfY29kZT0naW50IG1haW4oaW50LCBjaGFyICpbW11dKSB7IHJldHVybigwKTsg
fVxuJwoKIyBsdG1haW4gb25seSB1c2VzICRDQyBmb3IgdGFnZ2VkIGNvbmZpZ3VyYXRpb25zIHNv
IG1ha2Ugc3VyZSAkQ0MgaXMgc2V0LgpfTFRfQUNfU1lTX0NPTVBJTEVSCgojIHNhdmUgd2Fybmlu
Z3MvYm9pbGVycGxhdGUgb2Ygc2ltcGxlIHRlc3QgY29kZQpfTFRfQ09NUElMRVJfQk9JTEVSUExB
VEUKX0xUX0xJTktFUl9CT0lMRVJQTEFURQoKIyBBbGxvdyBDQyB0byBiZSBhIHByb2dyYW0gbmFt
ZSB3aXRoIGFyZ3VtZW50cy4KbHRfc2F2ZV9DQz0kQ0MKbHRfc2F2ZV9MRD0kTEQKbHRfc2F2ZV9H
Q0M9JEdDQwpHQ0M9JEdYWApsdF9zYXZlX3dpdGhfZ251X2xkPSR3aXRoX2dudV9sZApsdF9zYXZl
X3BhdGhfTEQ9JGx0X2N2X3BhdGhfTEQKaWYgdGVzdCAtbiAiJHtsdF9jdl9wcm9nX2dudV9sZGN4
eCtzZXR9IjsgdGhlbgogIGx0X2N2X3Byb2dfZ251X2xkPSRsdF9jdl9wcm9nX2dudV9sZGN4eApl
bHNlCiAgJGFzX3Vuc2V0IGx0X2N2X3Byb2dfZ251X2xkCmZpCmlmIHRlc3QgLW4gIiR7bHRfY3Zf
cGF0aF9MRENYWCtzZXR9IjsgdGhlbgogIGx0X2N2X3BhdGhfTEQ9JGx0X2N2X3BhdGhfTERDWFgK
ZWxzZQogICRhc191bnNldCBsdF9jdl9wYXRoX0xECmZpCnRlc3QgLXogIiR7TERDWFgrc2V0fSIg
fHwgTEQ9JExEQ1hYCkNDPSR7Q1hYLSJjKysifQpjb21waWxlcj0kQ0MKX0xUX0FDX1RBR1ZBUihj
b21waWxlciwgJDEpPSRDQwpfTFRfQ0NfQkFTRU5BTUUoWyRjb21waWxlcl0pCgojIFdlIGRvbid0
IHdhbnQgLWZuby1leGNlcHRpb24gd2VuIGNvbXBpbGluZyBDKysgY29kZSwgc28gc2V0IHRoZQoj
IG5vX2J1aWx0aW5fZmxhZyBzZXBhcmF0ZWx5CmlmIHRlc3QgIiRHWFgiID0geWVzOyB0aGVuCiAg
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0aW5fZmxhZywgJDEpPScgLWZu
by1idWlsdGluJwplbHNlCiAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0
aW5fZmxhZywgJDEpPQpmaQoKaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KICAjIFNldCB1cCBk
ZWZhdWx0IEdOVSBDKysgY29uZmlndXJhdGlvbgoKICBBQ19QUk9HX0xECgogICMgQ2hlY2sgaWYg
R05VIEMrKyB1c2VzIEdOVSBsZCBhcyB0aGUgdW5kZXJseWluZyBsaW5rZXIsIHNpbmNlIHRoZQog
ICMgYXJjaGl2aW5nIGNvbW1hbmRzIGJlbG93IGFzc3VtZSB0aGF0IEdOVSBsZCBpcyBiZWluZyB1
c2VkLgogIGlmIHRlc3QgIiR3aXRoX2dudV9sZCIgPSB5ZXM7IHRoZW4KICAgIF9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkIC1ub3N0ZGxpYiAkcHJlZGVwX29iamVj
dHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MgJHt3
bH0tc29uYW1lICR3bCRzb25hbWUgLW8gJGxpYicKICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9l
eHBzeW1fY21kcywgJDEpPSckQ0MgLXNoYXJlZCAtbm9zdGRsaWIgJHByZWRlcF9vYmplY3RzICRs
aWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNv
bmFtZSAkd2wkc29uYW1lICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUgJHdsJGV4cG9ydF9zeW1i
b2xzIC1vICRsaWInCgogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj
LCAkMSk9JyR7d2x9LS1ycGF0aCAke3dsfSRsaWJkaXInCiAgICBfTFRfQUNfVEFHVkFSKGV4cG9y
dF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS0tZXhwb3J0LWR5bmFtaWMnCgogICAgIyBJ
ZiBhcmNoaXZlX2NtZHMgcnVucyBMRCwgbm90IENDLCB3bGFyYyBzaG91bGQgYmUgZW1wdHkKICAg
ICMgWFhYIEkgdGhpbmsgd2xhcmMgY2FuIGJlIGVsaW1pbmF0ZWQgaW4gbHRjZi1jeHgsIGJ1dCBJ
IG5lZWQgdG8KICAgICMgICAgIGludmVzdGlnYXRlIGl0IGEgbGl0dGxlIGJpdCBtb3JlLiAoTU0p
CiAgICB3bGFyYz0nJHt3bH0nCgogICAgIyBhbmNpZW50IEdOVSBsZCBkaWRuJ3Qgc3VwcG9ydCAt
LXdob2xlLWFyY2hpdmUgZXQuIGFsLgogICAgaWYgZXZhbCAiYCRDQyAtcHJpbnQtcHJvZy1uYW1l
PWxkYCAtLWhlbHAgMj4mMSIgfCBcCglncmVwICduby13aG9sZS1hcmNoaXZlJyA+IC9kZXYvbnVs
bDsgdGhlbgogICAgICBfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9
IiR3bGFyYyInLS13aG9sZS1hcmNoaXZlJGNvbnZlbmllbmNlICciJHdsYXJjIictLW5vLXdob2xl
LWFyY2hpdmUnCiAgICBlbHNlCiAgICAgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9mbGFn
X3NwZWMsICQxKT0KICAgIGZpCiAgZWxzZQogICAgd2l0aF9nbnVfbGQ9bm8KICAgIHdsYXJjPQoK
ICAgICMgQSBnZW5lcmljIGFuZCB2ZXJ5IHNpbXBsZSBkZWZhdWx0IHNoYXJlZCBsaWJyYXJ5IGNy
ZWF0aW9uCiAgICAjIGNvbW1hbmQgZm9yIEdOVSBDKysgZm9yIHRoZSBjYXNlIHdoZXJlIGl0IHVz
ZXMgdGhlIG5hdGl2ZQogICAgIyBsaW5rZXIsIGluc3RlYWQgb2YgR05VIGxkLiAgSWYgcG9zc2li
bGUsIHRoaXMgc2V0dGluZyBzaG91bGQKICAgICMgb3ZlcnJpZGRlbiB0byB0YWtlIGFkdmFudGFn
ZSBvZiB0aGUgbmF0aXZlIGxpbmtlciBmZWF0dXJlcyBvbgogICAgIyB0aGUgcGxhdGZvcm0gaXQg
aXMgYmVpbmcgdXNlZCBvbi4KICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkIC1ub3N0ZGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBv
c3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MgLW8gJGxpYicKICBmaQoKICAjIENvbW1hbmRz
IHRvIG1ha2UgY29tcGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxpc3RzCiAgIyB3
aGF0ICJoaWRkZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBhcmUgdXNlZCB3
aGVuCiAgIyBsaW5raW5nIGEgc2hhcmVkIGxpYnJhcnkuCiAgb3V0cHV0X3ZlcmJvc2VfbGlua19j
bWQ9JyRDQyAtc2hhcmVkICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxIHwgZ3JlcCAi
XC1MIicKCmVsc2UKICBHWFg9bm8KICB3aXRoX2dudV9sZD1ubwogIHdsYXJjPQpmaQoKIyBQT1JU
TUU6IGZpbGwgaW4gYSBkZXNjcmlwdGlvbiBvZiB5b3VyIHN5c3RlbSdzIEMrKyBsaW5rIGNoYXJh
Y3RlcmlzdGljcwpBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgdGhlICRjb21waWxlciBsaW5rZXIg
KCRMRCkgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllc10pCl9MVF9BQ19UQUdWQVIobGRfc2hsaWJz
LCAkMSk9eWVzCmNhc2UgJGhvc3Rfb3MgaW4KICBhaXgzKikKICAgICMgRklYTUU6IGluc2VydCBw
cm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAogICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQx
KT1ubwogICAgOzsKICBhaXg0KiB8IGFpeDUqKQogICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlh
NjQ7IHRoZW4KICAgICAgIyBPbiBJQTY0LCB0aGUgbGlua2VyIGRvZXMgcnVuIHRpbWUgbGlua2lu
ZyBieSBkZWZhdWx0LCBzbyB3ZSBkb24ndAogICAgICAjIGhhdmUgdG8gZG8gYW55dGhpbmcgc3Bl
Y2lhbC4KICAgICAgYWl4X3VzZV9ydW50aW1lbGlua2luZz1ubwogICAgICBleHBfc3ltX2ZsYWc9
Jy1CZXhwb3J0JwogICAgICBub19lbnRyeV9mbGFnPSIiCiAgICBlbHNlCiAgICAgIGFpeF91c2Vf
cnVudGltZWxpbmtpbmc9bm8KCiAgICAgICMgVGVzdCBpZiB3ZSBhcmUgdHJ5aW5nIHRvIHVzZSBy
dW4gdGltZSBsaW5raW5nIG9yIG5vcm1hbAogICAgICAjIEFJWCBzdHlsZSBsaW5raW5nLiBJZiAt
YnJ0bCBpcyBzb21ld2hlcmUgaW4gTERGTEFHUywgd2UKICAgICAgIyBuZWVkIHRvIGRvIHJ1bnRp
bWUgbGlua2luZy4KICAgICAgY2FzZSAkaG9zdF9vcyBpbiBhaXg0LltbMjNdXXxhaXg0LltbMjNd
XS4qfGFpeDUqKQoJZm9yIGxkX2ZsYWcgaW4gJExERkxBR1M7IGRvCgkgIGNhc2UgJGxkX2ZsYWcg
aW4KCSAgKi1icnRsKikKCSAgICBhaXhfdXNlX3J1bnRpbWVsaW5raW5nPXllcwoJICAgIGJyZWFr
CgkgICAgOzsKCSAgZXNhYwoJZG9uZQoJOzsKICAgICAgZXNhYwoKICAgICAgZXhwX3N5bV9mbGFn
PSctYmV4cG9ydCcKICAgICAgbm9fZW50cnlfZmxhZz0nLWJub2VudHJ5JwogICAgZmkKCiAgICAj
IFdoZW4gbGFyZ2UgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIG9iamVjdHMgYXJlIGJ1aWx0LCBBSVgg
bGQgY2FuCiAgICAjIGhhdmUgcHJvYmxlbXMgY3JlYXRpbmcgdGhlIHRhYmxlIG9mIGNvbnRlbnRz
LiAgSWYgbGlua2luZyBhIGxpYnJhcnkKICAgICMgb3IgcHJvZ3JhbSByZXN1bHRzIGluICJlcnJv
ciBUT0Mgb3ZlcmZsb3ciIGFkZCAtbW1pbmltYWwtdG9jIHRvCiAgICAjIENYWEZMQUdTL0NGTEFH
UyBmb3IgZysrL2djYy4gIEluIHRoZSBjYXNlcyB3aGVyZSB0aGF0IGlzIG5vdAogICAgIyBlbm91
Z2ggdG8gZml4IHRoZSBwcm9ibGVtLCBhZGQgLVdsLC1iYmlndG9jIHRvIExERkxBR1MuCgogICAg
X0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJwogICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9kaXJlY3QsICQxKT15ZXMKICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3Nl
cGFyYXRvciwgJDEpPSc6JwogICAgX0xUX0FDX1RBR1ZBUihsaW5rX2FsbF9kZXBsaWJzLCAkMSk9
eWVzCgogICAgaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KICAgICAgY2FzZSAkaG9zdF9vcyBp
biBhaXg0LltbMDEyXV18YWl4NC5bWzAxMl1dLiopCiAgICAgICMgV2Ugb25seSB3YW50IHRvIGRv
IHRoaXMgb24gQUlYIDQuMiBhbmQgbG93ZXIsIHRoZSBjaGVjawogICAgICAjIGJlbG93IGZvciBi
cm9rZW4gY29sbGVjdDIgZG9lc24ndCB3b3JrIHVuZGVyIDQuMysKCWNvbGxlY3QybmFtZT1gJHtD
Q30gLXByaW50LXByb2ctbmFtZT1jb2xsZWN0MmAKCWlmIHRlc3QgLWYgIiRjb2xsZWN0Mm5hbWUi
ICYmIFwKCSAgIHN0cmluZ3MgIiRjb2xsZWN0Mm5hbWUiIHwgZ3JlcCByZXNvbHZlX2xpYl9uYW1l
ID4vZGV2L251bGwKCXRoZW4KCSAgIyBXZSBoYXZlIHJld29ya2VkIGNvbGxlY3QyCgkgIF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCgllbHNlCgkgICMgV2UgaGF2ZSBvbGQg
Y29sbGVjdDIKCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT11bnN1cHBvcnRl
ZAoJICAjIEl0IGZhaWxzIHRvIGZpbmQgdW5pbnN0YWxsZWQgbGlicmFyaWVzIHdoZW4gdGhlIHVu
aW5zdGFsbGVkCgkgICMgcGF0aCBpcyBub3QgbGlzdGVkIGluIHRoZSBsaWJwYXRoLiAgU2V0dGlu
ZyBoYXJkY29kZV9taW51c19MCgkgICMgdG8gdW5zdXBwb3J0ZWQgZm9yY2VzIHJlbGlua2luZwoJ
ICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKT15ZXMKCSAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1MJGxpYmRpcicKCSAgX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9CglmaQoJOzsKICAgICAgZXNhYwog
ICAgICBzaGFyZWRfZmxhZz0nLXNoYXJlZCcKICAgICAgaWYgdGVzdCAiJGFpeF91c2VfcnVudGlt
ZWxpbmtpbmciID0geWVzOyB0aGVuCglzaGFyZWRfZmxhZz0iJHNoYXJlZF9mbGFnICInJHt3bH0t
RycKICAgICAgZmkKICAgIGVsc2UKICAgICAgIyBub3QgdXNpbmcgZ2NjCiAgICAgIGlmIHRlc3Qg
IiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCgkjIFZpc3VhbEFnZSBDKyssIFZlcnNpb24gNS41IGZv
ciBBSVggNUwgZm9yIElBLTY0LCBCZXRhIDMgUmVsZWFzZQoJIyBjaG9rZXMgb24gLVdsLC1HLiBU
aGUgZm9sbG93aW5nIGxpbmUgaXMgY29ycmVjdDoKCXNoYXJlZF9mbGFnPSctRycKICAgICAgZWxz
ZQoJaWYgdGVzdCAiJGFpeF91c2VfcnVudGltZWxpbmtpbmciID0geWVzOyB0aGVuCgkgIHNoYXJl
ZF9mbGFnPScke3dsfS1HJwoJZWxzZQoJICBzaGFyZWRfZmxhZz0nJHt3bH0tYk06U1JFJwoJZmkK
ICAgICAgZmkKICAgIGZpCgogICAgIyBJdCBzZWVtcyB0aGF0IC1iZXhwYWxsIGRvZXMgbm90IGV4
cG9ydCBzeW1ib2xzIGJlZ2lubmluZyB3aXRoCiAgICAjIHVuZGVyc2NvcmUgKF8pLCBzbyBpdCBp
cyBiZXR0ZXIgdG8gZ2VuZXJhdGUgYSBsaXN0IG9mIHN5bWJvbHMgdG8gZXhwb3J0LgogICAgX0xU
X0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQxKT15ZXMKICAgIGlmIHRlc3QgIiRh
aXhfdXNlX3J1bnRpbWVsaW5raW5nIiA9IHllczsgdGhlbgogICAgICAjIFdhcm5pbmcgLSB3aXRo
b3V0IHVzaW5nIHRoZSBvdGhlciBydW50aW1lIGxvYWRpbmcgZmxhZ3MgKC1icnRsKSwKICAgICAg
IyAtYmVyb2sgd2lsbCBsaW5rIHdpdGhvdXQgZXJyb3IsIGJ1dCBtYXkgcHJvZHVjZSBhIGJyb2tl
biBsaWJyYXJ5LgogICAgICBfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9
Jy1iZXJvaycKICAgICAgIyBEZXRlcm1pbmUgdGhlIGRlZmF1bHQgbGlicGF0aCBmcm9tIHRoZSB2
YWx1ZSBlbmNvZGVkIGluIGFuIGVtcHR5IGV4ZWN1dGFibGUuCiAgICAgIF9MVF9BQ19TWVNfTElC
UEFUSF9BSVgKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAk
MSk9JyR7d2x9LWJsaWJwYXRoOiRsaWJkaXI6JyIkYWl4X2xpYnBhdGgiCgogICAgICBfTFRfQUNf
VEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0iXCRDQyInIC1vICRvdXRwdXRfb2JqZGly
LyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJyJcJHt3bH0kbm9fZW50cnlfZmxhZyInICRjb21w
aWxlcl9mbGFncyBgaWYgdGVzdCAieCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9IiAhPSAieCI7IHRo
ZW4gZWNobyAiJHt3bH0ke2FsbG93X3VuZGVmaW5lZF9mbGFnfSI7IGVsc2UgOjsgZmlgICciXCR7
d2x9JGV4cF9zeW1fZmxhZzpcJGV4cG9ydF9zeW1ib2xzICRzaGFyZWRfZmxhZyIKICAgICBlbHNl
CiAgICAgIGlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCglfTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tUiAkbGliZGlyOi91c3IvbGliOi9s
aWInCglfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9Ii16IG5vZGVmcyIK
CV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSJcJENDICRzaGFyZWRfZmxh
ZyInIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJyJcJHt3bH0k
bm9fZW50cnlfZmxhZyInICRjb21waWxlcl9mbGFncyAke3dsfSR7YWxsb3dfdW5kZWZpbmVkX2Zs
YWd9ICciXCR7d2x9JGV4cF9zeW1fZmxhZzpcJGV4cG9ydF9zeW1ib2xzIgogICAgICBlbHNlCgkj
IERldGVybWluZSB0aGUgZGVmYXVsdCBsaWJwYXRoIGZyb20gdGhlIHZhbHVlIGVuY29kZWQgaW4g
YW4gZW1wdHkgZXhlY3V0YWJsZS4KCV9MVF9BQ19TWVNfTElCUEFUSF9BSVgKCV9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ibGlicGF0aDokbGliZGly
OiciJGFpeF9saWJwYXRoIgoJIyBXYXJuaW5nIC0gd2l0aG91dCB1c2luZyB0aGUgb3RoZXIgcnVu
IHRpbWUgbG9hZGluZyBmbGFncywKCSMgLWJlcm9rIHdpbGwgbGluayB3aXRob3V0IGVycm9yLCBi
dXQgbWF5IHByb2R1Y2UgYSBicm9rZW4gbGlicmFyeS4KCV9MVF9BQ19UQUdWQVIobm9fdW5kZWZp
bmVkX2ZsYWcsICQxKT0nICR7d2x9LWJlcm5vdG9rJwoJX0xUX0FDX1RBR1ZBUihhbGxvd191bmRl
ZmluZWRfZmxhZywgJDEpPScgJHt3bH0tYmVyb2snCgkjIEV4cG9ydGVkIHN5bWJvbHMgY2FuIGJl
IHB1bGxlZCBpbnRvIHNoYXJlZCBvYmplY3RzIGZyb20gYXJjaGl2ZXMKCV9MVF9BQ19UQUdWQVIo
d2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0nJGNvbnZlbmllbmNlJwoJX0xUX0FDX1RBR1ZB
UihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpPXllcwoJIyBUaGlzIGlzIHNpbWlsYXIgdG8gaG93
IEFJWCB0cmFkaXRpb25hbGx5IGJ1aWxkcyBpdHMgc2hhcmVkIGxpYnJhcmllcy4KCV9MVF9BQ19U
QUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSJcJENDICRzaGFyZWRfZmxhZyInIC1vICRv
dXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJHt3bH0tYm5vZW50cnkgJGNv
bXBpbGVyX2ZsYWdzICR7d2x9LWJFOiRleHBvcnRfc3ltYm9scyR7YWxsb3dfdW5kZWZpbmVkX2Zs
YWd9fiRBUiAkQVJfRkxBR1MgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUkcmVsZWFzZS5hICRvdXRw
dXRfb2JqZGlyLyRzb25hbWUnCiAgICAgIGZpCiAgICBmaQogICAgOzsKCiAgYmVvcyopCiAgICBp
ZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVsZicgPiAv
ZGV2L251bGw7IHRoZW4KICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywg
JDEpPXVuc3VwcG9ydGVkCiAgICAgICMgSm9zZXBoIEJlY2tlbmJhY2ggPGpyYjNAYmVzdC5jb20+
IHNheXMgc29tZSByZWxlYXNlcyBvZiBnY2MKICAgICAgIyBzdXBwb3J0IC0tdW5kZWZpbmVkLiAg
VGhpcyBkZXNlcnZlcyBzb21lIGludmVzdGlnYXRpb24uICBGSVhNRQogICAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLW5vc3RhcnQgJGxpYm9ianMgJGRlcGxpYnMgJGNv
bXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCiAgICBlbHNlCiAg
ICAgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KICAgIGZpCiAgICA7OwoKICBjaG9y
dXMqKQogICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgKikKCSMgRklYTUU6IGluc2VydCBw
cm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1u
bwoJOzsKICAgIGVzYWMKICAgIDs7CgogIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKikKICAgICMg
X0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSkgaXMgYWN0dWFsbHkg
bWVhbmluZ2xlc3MsCiAgICAjIGFzIHRoZXJlIGlzIG5vIHNlYXJjaCBwYXRoIGZvciBETExzLgog
ICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1MJGxpYmRp
cicKICAgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT11bnN1cHBvcnRl
ZAogICAgX0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQxKT1ubwogICAgX0xU
X0FDX1RBR1ZBUihlbmFibGVfc2hhcmVkX3dpdGhfc3RhdGljX3J1bnRpbWVzLCAkMSk9eWVzCgog
ICAgaWYgJExEIC0taGVscCAyPiYxIHwgZ3JlcCAnYXV0by1pbXBvcnQnID4gL2Rldi9udWxsOyB0
aGVuCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkIC1u
b3N0ZGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0
cyAkY29tcGlsZXJfZmxhZ3MgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAke3dsfS0tZW5hYmxl
LWF1dG8taW1hZ2UtYmFzZSAtWGxpbmtlciAtLW91dC1pbXBsaWIgLVhsaW5rZXIgJGxpYicKICAg
ICAgIyBJZiB0aGUgZXhwb3J0LXN5bWJvbHMgZmlsZSBhbHJlYWR5IGlzIGEgLmRlZiBmaWxlICgx
c3QgbGluZQogICAgICAjIGlzIEVYUE9SVFMpLCB1c2UgaXQgYXMgaXM7IG90aGVyd2lzZSwgcHJl
cGVuZC4uLgogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0naWYg
dGVzdCAieGAkU0VEIDFxICRleHBvcnRfc3ltYm9sc2AiID0geEVYUE9SVFM7IHRoZW4KCWNwICRl
eHBvcnRfc3ltYm9scyAkb3V0cHV0X29iamRpci8kc29uYW1lLmRlZjsKICAgICAgZWxzZQoJZWNo
byBFWFBPUlRTID4gJG91dHB1dF9vYmpkaXIvJHNvbmFtZS5kZWY7CgljYXQgJGV4cG9ydF9zeW1i
b2xzID4+ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUuZGVmOwogICAgICBmaX4KICAgICAgJENDIC1z
aGFyZWQgLW5vc3RkbGliICRvdXRwdXRfb2JqZGlyLyRzb25hbWUuZGVmICRwcmVkZXBfb2JqZWN0
cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAtbyAk
b3V0cHV0X29iamRpci8kc29uYW1lICR7d2x9LS1lbmFibGUtYXV0by1pbWFnZS1iYXNlIC1YbGlu
a2VyIC0tb3V0LWltcGxpYiAtWGxpbmtlciAkbGliJwogICAgZWxzZQogICAgICBfTFRfQUNfVEFH
VkFSKGxkX3NobGlicywgJDEpPW5vCiAgICBmaQogIDs7CiAgICAgIGRhcndpbiogfCByaGFwc29k
eSopCiAgICAgICAgY2FzZSAkaG9zdF9vcyBpbgogICAgICAgIHJoYXBzb2R5KiB8IGRhcndpbjEu
W1swMTJdXSkKICAgICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEp
PScke3dsfS11bmRlZmluZWQgJHt3bH1zdXBwcmVzcycKICAgICAgICAgOzsKICAgICAgICopICMg
RGFyd2luIDEuMyBvbgogICAgICAgICBpZiB0ZXN0IC16ICR7TUFDT1NYX0RFUExPWU1FTlRfVEFS
R0VUfSA7IHRoZW4KICAgICAgICAgICBfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFn
LCAkMSk9JyR7d2x9LWZsYXRfbmFtZXNwYWNlICR7d2x9LXVuZGVmaW5lZCAke3dsfXN1cHByZXNz
JwogICAgICAgICBlbHNlCiAgICAgICAgICAgY2FzZSAke01BQ09TWF9ERVBMT1lNRU5UX1RBUkdF
VH0gaW4KICAgICAgICAgICAgIDEwLltbMDEyXV0pCiAgICAgICAgICAgICAgIF9MVF9BQ19UQUdW
QVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nJHt3bH0tZmxhdF9uYW1lc3BhY2UgJHt3bH0t
dW5kZWZpbmVkICR7d2x9c3VwcHJlc3MnCiAgICAgICAgICAgICAgIDs7CiAgICAgICAgICAgICAx
MC4qKQogICAgICAgICAgICAgICBfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAk
MSk9JyR7d2x9LXVuZGVmaW5lZCAke3dsfWR5bmFtaWNfbG9va3VwJwogICAgICAgICAgICAgICA7
OwogICAgICAgICAgIGVzYWMKICAgICAgICAgZmkKICAgICAgICAgOzsKICAgICAgICBlc2FjCiAg
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwogICAgICBfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPW5vCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfYXV0b21hdGljLCAkMSk9eWVzCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hs
aWJwYXRoX3ZhciwgJDEpPXVuc3VwcG9ydGVkCiAgICAgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJj
aGl2ZV9mbGFnX3NwZWMsICQxKT0nJwogICAgICBfTFRfQUNfVEFHVkFSKGxpbmtfYWxsX2RlcGxp
YnMsICQxKT15ZXMKCiAgICBpZiB0ZXN0ICIkR1hYIiA9IHllcyA7IHRoZW4KICAgICAgbHRfaW50
X2FwcGxlX2NjX3NpbmdsZV9tb2Q9bm8KICAgICAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J2Vj
aG8nCiAgICAgIGlmICRDQyAtZHVtcHNwZWNzIDI+JjEgfCAkRUdSRVAgJ3NpbmdsZV9tb2R1bGUn
ID4vZGV2L251bGwgOyB0aGVuCiAgICAgICBsdF9pbnRfYXBwbGVfY2Nfc2luZ2xlX21vZD15ZXMK
ICAgICAgZmkKICAgICAgaWYgdGVzdCAiWCRsdF9pbnRfYXBwbGVfY2Nfc2luZ2xlX21vZCIgPSBY
eWVzIDsgdGhlbgogICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1k
eW5hbWljbGliIC1zaW5nbGVfbW9kdWxlICRhbGxvd191bmRlZmluZWRfZmxhZyAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAtaW5zdGFsbF9uYW1lICRycGF0aC8kc29u
YW1lICR2ZXJzdHJpbmcnCiAgICAgIGVsc2UKICAgICAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2
ZV9jbWRzLCAkMSk9JyRDQyAtciAta2VlcF9wcml2YXRlX2V4dGVybnMgLW5vc3RkbGliIC1vICR7
bGlifS1tYXN0ZXIubyAkbGlib2Jqc34kQ0MgLWR5bmFtaWNsaWIgJGFsbG93X3VuZGVmaW5lZF9m
bGFnIC1vICRsaWIgJHtsaWJ9LW1hc3Rlci5vICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAtaW5z
dGFsbF9uYW1lICRycGF0aC8kc29uYW1lICR2ZXJzdHJpbmcnCiAgICAgICAgZmkKICAgICAgICBf
TFRfQUNfVEFHVkFSKG1vZHVsZV9jbWRzLCAkMSk9JyRDQyAkYWxsb3dfdW5kZWZpbmVkX2ZsYWcg
LW8gJGxpYiAtYnVuZGxlICRsaWJvYmpzICRkZXBsaWJzJGNvbXBpbGVyX2ZsYWdzJwogICAgICAg
ICMgRG9uJ3QgZml4IHRoaXMgYnkgdXNpbmcgdGhlIGxkIC1leHBvcnRlZF9zeW1ib2xzX2xpc3Qg
ZmxhZywgaXQgZG9lc24ndCBleGlzdCBpbiBvbGRlciBkYXJ3aW4gbGRzCiAgICAgICAgICBpZiB0
ZXN0ICJYJGx0X2ludF9hcHBsZV9jY19zaW5nbGVfbW9kIiA9IFh5ZXMgOyB0aGVuCiAgICAgICAg
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSdzZWQgLWUgInMsIy4q
LCwiIC1lICJzLF5bICAgIF0qLCwiIC1lICJzLF5cKC4uKlwpLF8mLCIgPCAkZXhwb3J0X3N5bWJv
bHMgPiAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJvbHMuZXhwc3ltfiRDQyAtZHluYW1p
Y2xpYiAtc2luZ2xlX21vZHVsZSAkYWxsb3dfdW5kZWZpbmVkX2ZsYWcgLW8gJGxpYiAkbGlib2Jq
cyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgLWluc3RhbGxfbmFtZSAkcnBhdGgvJHNvbmFtZSAk
dmVyc3RyaW5nfm5tZWRpdCAtcyAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJvbHMuZXhw
c3ltICR7bGlifScKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgX0xUX0FDX1RBR1ZBUihhcmNo
aXZlX2V4cHN5bV9jbWRzLCAkMSk9J3NlZCAtZSAicywjLiosLCIgLWUgInMsXlsgICAgXSosLCIg
LWUgInMsXlwoLi4qXCksXyYsIiA8ICRleHBvcnRfc3ltYm9scyA+ICRvdXRwdXRfb2JqZGlyLyR7
bGlibmFtZX0tc3ltYm9scy5leHBzeW1+JENDIC1yIC1rZWVwX3ByaXZhdGVfZXh0ZXJucyAtbm9z
dGRsaWIgLW8gJHtsaWJ9LW1hc3Rlci5vICRsaWJvYmpzfiRDQyAtZHluYW1pY2xpYiAkYWxsb3df
dW5kZWZpbmVkX2ZsYWcgLW8gJGxpYiAke2xpYn0tbWFzdGVyLm8gJGRlcGxpYnMgJGNvbXBpbGVy
X2ZsYWdzIC1pbnN0YWxsX25hbWUgJHJwYXRoLyRzb25hbWUgJHZlcnN0cmluZ35ubWVkaXQgLXMg
JG91dHB1dF9vYmpkaXIvJHtsaWJuYW1lfS1zeW1ib2xzLmV4cHN5bSAke2xpYn0nCiAgICAgICAg
ICBmaQogICAgICAgICAgICBfTFRfQUNfVEFHVkFSKG1vZHVsZV9leHBzeW1fY21kcywgJDEpPSdz
ZWQgLWUgInMsIy4qLCwiIC1lICJzLF5bICAgIF0qLCwiIC1lICJzLF5cKC4uKlwpLF8mLCIgPCAk
ZXhwb3J0X3N5bWJvbHMgPiAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJvbHMuZXhwc3lt
fiRDQyAkYWxsb3dfdW5kZWZpbmVkX2ZsYWcgIC1vICRsaWIgLWJ1bmRsZSAkbGlib2JqcyAkZGVw
bGlicyRjb21waWxlcl9mbGFnc35ubWVkaXQgLXMgJG91dHB1dF9vYmpkaXIvJHtsaWJuYW1lfS1z
eW1ib2xzLmV4cHN5bSAke2xpYn0nCiAgICAgIGVsc2UKICAgICAgY2FzZSAkY2NfYmFzZW5hbWUg
aW4KICAgICAgICB4bGMqKQogICAgICAgICBvdXRwdXRfdmVyYm9zZV9saW5rX2NtZD0nZWNobycK
ICAgICAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtcW1rc2hyb2Jq
ICR7d2x9LXNpbmdsZV9tb2R1bGUgJGFsbG93X3VuZGVmaW5lZF9mbGFnIC1vICRsaWIgJGxpYm9i
anMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LWluc3RhbGxfbmFtZSAke3dsfWBlY2hv
ICRycGF0aC8kc29uYW1lYCAkdmVyc3RyaW5nJwogICAgICAgICAgX0xUX0FDX1RBR1ZBUihtb2R1
bGVfY21kcywgJDEpPSckQ0MgJGFsbG93X3VuZGVmaW5lZF9mbGFnIC1vICRsaWIgLWJ1bmRsZSAk
bGlib2JqcyAkZGVwbGlicyRjb21waWxlcl9mbGFncycKICAgICAgICAgICMgRG9uJ3QgZml4IHRo
aXMgYnkgdXNpbmcgdGhlIGxkIC1leHBvcnRlZF9zeW1ib2xzX2xpc3QgZmxhZywgaXQgZG9lc24n
dCBleGlzdCBpbiBvbGRlciBkYXJ3aW4gbGRzCiAgICAgICAgICBfTFRfQUNfVEFHVkFSKGFyY2hp
dmVfZXhwc3ltX2NtZHMsICQxKT0nc2VkIC1lICJzLCMuKiwsIiAtZSAicyxeWyAgICBdKiwsIiAt
ZSAicyxeXCguLipcKSxfJiwiIDwgJGV4cG9ydF9zeW1ib2xzID4gJG91dHB1dF9vYmpkaXIvJHts
aWJuYW1lfS1zeW1ib2xzLmV4cHN5bX4kQ0MgLXFta3Nocm9iaiAke3dsfS1zaW5nbGVfbW9kdWxl
ICRhbGxvd191bmRlZmluZWRfZmxhZyAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxl
cl9mbGFncyAke3dsfS1pbnN0YWxsX25hbWUgJHt3bH0kcnBhdGgvJHNvbmFtZSAkdmVyc3RyaW5n
fm5tZWRpdCAtcyAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJvbHMuZXhwc3ltICR7bGli
fScKICAgICAgICAgIF9MVF9BQ19UQUdWQVIobW9kdWxlX2V4cHN5bV9jbWRzLCAkMSk9J3NlZCAt
ZSAicywjLiosLCIgLWUgInMsXlsgICAgXSosLCIgLWUgInMsXlwoLi4qXCksXyYsIiA8ICRleHBv
cnRfc3ltYm9scyA+ICRvdXRwdXRfb2JqZGlyLyR7bGlibmFtZX0tc3ltYm9scy5leHBzeW1+JEND
ICRhbGxvd191bmRlZmluZWRfZmxhZyAgLW8gJGxpYiAtYnVuZGxlICRsaWJvYmpzICRkZXBsaWJz
JGNvbXBpbGVyX2ZsYWdzfm5tZWRpdCAtcyAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJv
bHMuZXhwc3ltICR7bGlifScKICAgICAgICAgIDs7CiAgICAgICAqKQogICAgICAgICBfTFRfQUNf
VEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgICAgICA7OwogICAgICBlc2FjCiAgICAgIGZp
CiAgICAgICAgOzsKCiAgZGd1eCopCiAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBlYysr
KikKCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAoJX0xUX0FDX1RB
R1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJOzsKICAgICAgZ2hjeCopCgkjIEdyZWVuIEhpbGxzIEMr
KyBDb21waWxlcgoJIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0Cglf
TFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCgk7OwogICAgICAqKQoJIyBGSVhNRTogaW5z
ZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CglfTFRfQUNfVEFHVkFSKGxkX3NobGlicywg
JDEpPW5vCgk7OwogICAgZXNhYwogICAgOzsKICBmcmVlYnNkW1sxMl1dKikKICAgICMgQysrIHNo
YXJlZCBsaWJyYXJpZXMgcmVwb3J0ZWQgdG8gYmUgZmFpcmx5IGJyb2tlbiBiZWZvcmUgc3dpdGNo
IHRvIEVMRgogICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwogICAgOzsKICBmcmVl
YnNkLWVsZiopCiAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAkMSk9bm8K
ICAgIDs7CiAgZnJlZWJzZCogfCBrZnJlZWJzZCotZ251IHwgZHJhZ29uZmx5KikKICAgICMgRnJl
ZUJTRCAzIGFuZCBsYXRlciB1c2UgR05VIEMrKyBhbmQgR05VIGxkIHdpdGggc3RhbmRhcmQgRUxG
CiAgICAjIGNvbnZlbnRpb25zCiAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPXllcwog
ICAgOzsKICBnbnUqKQogICAgOzsKICBocHV4OSopCiAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2Rl
X2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0rYiAke3dsfSRsaWJkaXInCiAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CiAgICBfTFRfQUNfVEFHVkFS
KGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS1FJwogICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMKICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWlu
dXNfTCwgJDEpPXllcyAjIE5vdCBpbiB0aGUgc2VhcmNoIFBBVEgsCgkJCQkjIGJ1dCBhcyB0aGUg
ZGVmYXVsdAoJCQkJIyBsb2NhdGlvbiBvZiB0aGUgbGlicmFyeS4KCiAgICBjYXNlICRjY19iYXNl
bmFtZSBpbgogICAgQ0MqKQogICAgICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5
IHN1cHBvcnQKICAgICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwogICAgICA7Owog
ICAgYUNDKikKICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJHJtICRvdXRw
dXRfb2JqZGlyLyRzb25hbWV+JENDIC1iICR7d2x9K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIgLW8g
JG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMg
JHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3N+dGVzdCAkb3V0cHV0X29iamRpci8kc29u
YW1lID0gJGxpYiB8fCBtdiAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWInCiAgICAgICMgQ29t
bWFuZHMgdG8gbWFrZSBjb21waWxlciBwcm9kdWNlIHZlcmJvc2Ugb3V0cHV0IHRoYXQgbGlzdHMK
ICAgICAgIyB3aGF0ICJoaWRkZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBh
cmUgdXNlZCB3aGVuCiAgICAgICMgbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgogICAgICAjCiAg
ICAgICMgVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUgYSB3YXkgdG8gcHJldmVudCB0aGlzIGNv
bXBpbGVyIGZyb20KICAgICAgIyBleHBsaWNpdGx5IGxpbmtpbmcgc3lzdGVtIG9iamVjdCBmaWxl
cyBzbyB3ZSBuZWVkIHRvIHN0cmlwIHRoZW0KICAgICAgIyBmcm9tIHRoZSBvdXRwdXQgc28gdGhh
dCB0aGV5IGRvbid0IGdldCBpbmNsdWRlZCBpbiB0aGUgbGlicmFyeQogICAgICAjIGRlcGVuZGVu
Y2llcy4KICAgICAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J3RlbXBsaXN0PWAoJENDIC1iICRD
RkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxKSB8IGdyZXAgIltbLV1dTCJgOyBsaXN0PSIi
OyBmb3IgeiBpbiAkdGVtcGxpc3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4dCkgbGlz
dD0iJGxpc3QgJHoiOzsgKi4kb2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNhYzsgZG9u
ZTsgZWNobyAkbGlzdCcKICAgICAgOzsKICAgICopCiAgICAgIGlmIHRlc3QgIiRHWFgiID0geWVz
OyB0aGVuCiAgICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJHJtICRvdXRw
dXRfb2JqZGlyLyRzb25hbWV+JENDIC1zaGFyZWQgLW5vc3RkbGliIC1mUElDICR7d2x9K2IgJHt3
bH0kaW5zdGFsbF9saWJkaXIgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkcHJlZGVwX29iamVj
dHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3N+dGVz
dCAkb3V0cHV0X29iamRpci8kc29uYW1lID0gJGxpYiB8fCBtdiAkb3V0cHV0X29iamRpci8kc29u
YW1lICRsaWInCiAgICAgIGVsc2UKICAgICAgICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBs
aWJyYXJ5IHN1cHBvcnQKICAgICAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAg
ICAgIGZpCiAgICAgIDs7CiAgICBlc2FjCiAgICA7OwogIGhwdXgxMCp8aHB1eDExKikKICAgIGlm
IHRlc3QgJHdpdGhfZ251X2xkID0gbm87IHRoZW4KICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9K2IgJHt3bH0kbGliZGlyJwogICAgICBfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CgogICAgICBjYXNlICRo
b3N0X2NwdSBpbgogICAgICBocHBhKjY0KnxpYTY0KikKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVf
bGliZGlyX2ZsYWdfc3BlY19sZCwgJDEpPScrYiAkbGliZGlyJwogICAgICAgIDs7CiAgICAgICop
CglfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS1FJwog
ICAgICAgIDs7CiAgICAgIGVzYWMKICAgIGZpCiAgICBjYXNlICRob3N0X2NwdSBpbgogICAgaHBw
YSo2NCp8aWE2NCopCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9bm8K
ICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAg
OzsKICAgICopCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCiAg
ICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcyAjIE5vdCBpbiB0aGUg
c2VhcmNoIFBBVEgsCgkJCQkJICAgICAgIyBidXQgYXMgdGhlIGRlZmF1bHQKCQkJCQkgICAgICAj
IGxvY2F0aW9uIG9mIHRoZSBsaWJyYXJ5LgogICAgICA7OwogICAgZXNhYwoKICAgIGNhc2UgJGNj
X2Jhc2VuYW1lIGluCiAgICAgIENDKikKCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJh
cnkgc3VwcG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJOzsKICAgICAgYUND
KikKCWNhc2UgJGhvc3RfY3B1IGluCglocHBhKjY0KikKCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHMsICQxKT0nJENDIC1iICR7d2x9K2ggJHt3bH0kc29uYW1lIC1vICRsaWIgJHByZWRlcF9v
YmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdz
JwoJICA7OwoJaWE2NCopCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAt
YiAke3dsfStoICR7d2x9JHNvbmFtZSAke3dsfStub2RlZmF1bHRycGF0aCAtbyAkbGliICRwcmVk
ZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9m
bGFncycKCSAgOzsKCSopCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAt
YiAke3dsfStoICR7d2x9JHNvbmFtZSAke3dsfStiICR7d2x9JGluc3RhbGxfbGliZGlyIC1vICRs
aWIgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNv
bXBpbGVyX2ZsYWdzJwoJICA7OwoJZXNhYwoJIyBDb21tYW5kcyB0byBtYWtlIGNvbXBpbGVyIHBy
b2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwoJIyB3aGF0ICJoaWRkZW4iIGxpYnJhcmll
cywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBhcmUgdXNlZCB3aGVuCgkjIGxpbmtpbmcgYSBzaGFy
ZWQgbGlicmFyeS4KCSMKCSMgVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUgYSB3YXkgdG8gcHJl
dmVudCB0aGlzIGNvbXBpbGVyIGZyb20KCSMgZXhwbGljaXRseSBsaW5raW5nIHN5c3RlbSBvYmpl
Y3QgZmlsZXMgc28gd2UgbmVlZCB0byBzdHJpcCB0aGVtCgkjIGZyb20gdGhlIG91dHB1dCBzbyB0
aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5CgkjIGRlcGVuZGVuY2ll
cy4KCW91dHB1dF92ZXJib3NlX2xpbmtfY21kPSd0ZW1wbGlzdD1gKCRDQyAtYiAkQ0ZMQUdTIC12
IGNvbmZ0ZXN0LiRvYmpleHQgMj4mMSkgfCBncmVwICJcLUwiYDsgbGlzdD0iIjsgZm9yIHogaW4g
JHRlbXBsaXN0OyBkbyBjYXNlICR6IGluIGNvbmZ0ZXN0LiRvYmpleHQpIGxpc3Q9IiRsaXN0ICR6
Ijs7ICouJG9iamV4dCk7OyAqKSBsaXN0PSIkbGlzdCAkeiI7O2VzYWM7IGRvbmU7IGVjaG8gJGxp
c3QnCgk7OwogICAgICAqKQoJaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KCSAgaWYgdGVzdCAk
d2l0aF9nbnVfbGQgPSBubzsgdGhlbgoJICAgIGNhc2UgJGhvc3RfY3B1IGluCgkgICAgaHBwYSo2
NCopCgkgICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAt
bm9zdGRsaWIgLWZQSUMgJHt3bH0raCAke3dsfSRzb25hbWUgLW8gJGxpYiAkcHJlZGVwX29iamVj
dHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MnCgkg
ICAgICA7OwoJICAgIGlhNjQqKQoJICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQx
KT0nJENDIC1zaGFyZWQgLW5vc3RkbGliIC1mUElDICR7d2x9K2ggJHt3bH0kc29uYW1lICR7d2x9
K25vZGVmYXVsdHJwYXRoIC1vICRsaWIgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJz
ICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzJwoJICAgICAgOzsKCSAgICAqKQoJICAg
ICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5vc3RkbGli
IC1mUElDICR7d2x9K2ggJHt3bH0kc29uYW1lICR7d2x9K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIg
LW8gJGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0
cyAkY29tcGlsZXJfZmxhZ3MnCgkgICAgICA7OwoJICAgIGVzYWMKCSAgZmkKCWVsc2UKCSAgIyBG
SVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CgkgIF9MVF9BQ19UQUdWQVIo
bGRfc2hsaWJzLCAkMSk9bm8KCWZpCgk7OwogICAgZXNhYwogICAgOzsKICBpbnRlcml4MyopCiAg
ICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPW5vCiAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRoLCRsaWJkaXInCiAgICBfTFRfQUNf
VEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS1FJwogICAgIyBIYWNr
OiBPbiBJbnRlcml4IDMueCwgd2UgY2Fubm90IGNvbXBpbGUgUElDIGJlY2F1c2Ugb2YgYSBicm9r
ZW4gZ2NjLgogICAgIyBJbnN0ZWFkLCBzaGFyZWQgbGlicmFyaWVzIGFyZSBsb2FkZWQgYXQgYW4g
aW1hZ2UgYmFzZSAoMHgxMDAwMDAwMCBieQogICAgIyBkZWZhdWx0KSBhbmQgcmVsb2NhdGVkIGlm
IHRoZXkgY29uZmxpY3QsIHdoaWNoIGlzIGEgc2xvdyB2ZXJ5IG1lbW9yeQogICAgIyBjb25zdW1p
bmcgYW5kIGZyYWdtZW50aW5nIHByb2Nlc3MuICBUbyBhdm9pZCB0aGlzLCB3ZSBwaWNrIGEgcmFu
ZG9tLAogICAgIyAyNTYgS2lCLWFsaWduZWQgaW1hZ2UgYmFzZSBiZXR3ZWVuIDB4NTAwMDAwMDAg
YW5kIDB4NkZGQzAwMDAgYXQgbGluawogICAgIyB0aW1lLiAgTW92aW5nIHVwIGZyb20gMHgxMDAw
MDAwMCBhbHNvIGFsbG93cyBtb3JlIHNicmsoMikgc3BhY2UuCiAgICBfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkcGljX2ZsYWcgJGxpYm9ianMgJGRlcGxpYnMg
JGNvbXBpbGVyX2ZsYWdzICR7d2x9LWgsJHNvbmFtZSAke3dsfS0taW1hZ2UtYmFzZSxgZXhwciAk
e1JBTkRPTS0kJH0gJSA0MDk2IC8gMiBcKiAyNjIxNDQgKyAxMzQyMTc3MjgwYCAtbyAkbGliJwog
ICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9J3NlZCAicyxeLF8sIiAk
ZXhwb3J0X3N5bWJvbHMgPiRvdXRwdXRfb2JqZGlyLyRzb25hbWUuZXhwc3ltfiRDQyAtc2hhcmVk
ICRwaWNfZmxhZyAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0taCwkc29u
YW1lICR7d2x9LS1yZXRhaW4tc3ltYm9scy1maWxlLCRvdXRwdXRfb2JqZGlyLyRzb25hbWUuZXhw
c3ltICR7d2x9LS1pbWFnZS1iYXNlLGBleHByICR7UkFORE9NLSQkfSAlIDQwOTYgLyAyIFwqIDI2
MjE0NCArIDEzNDIxNzcyODBgIC1vICRsaWInCiAgICA7OwogIGlyaXg1KiB8IGlyaXg2KikKICAg
IGNhc2UgJGNjX2Jhc2VuYW1lIGluCiAgICAgIENDKikKCSMgU0dJIEMrKwoJX0xUX0FDX1RBR1ZB
UihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLWFsbCAtbXVsdGlnb3QgJHByZWRlcF9v
YmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdz
IC1zb25hbWUgJHNvbmFtZSBgdGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAtc2V0X3ZlcnNp
b24gJHZlcnN0cmluZ2AgLXVwZGF0ZV9yZWdpc3RyeSAke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0
aW9ucyAtbyAkbGliJwoKCSMgQXJjaGl2ZXMgY29udGFpbmluZyBDKysgb2JqZWN0IGZpbGVzIG11
c3QgYmUgY3JlYXRlZCB1c2luZwoJIyAiQ0MgLWFyIiwgd2hlcmUgIkNDIiBpcyB0aGUgSVJJWCBD
KysgY29tcGlsZXIuICBUaGlzIGlzCgkjIG5lY2Vzc2FyeSB0byBtYWtlIHN1cmUgaW5zdGFudGlh
dGVkIHRlbXBsYXRlcyBhcmUgaW5jbHVkZWQKCSMgaW4gdGhlIGFyY2hpdmUuCglfTFRfQUNfVEFH
VkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nJENDIC1hciAtV1IsLXUgLW8gJG9sZGxpYiAkb2xk
b2JqcycKCTs7CiAgICAgICopCglpZiB0ZXN0ICIkR1hYIiA9IHllczsgdGhlbgoJICBpZiB0ZXN0
ICIkd2l0aF9nbnVfbGQiID0gbm87IHRoZW4KCSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21k
cywgJDEpPSckQ0MgLXNoYXJlZCAtbm9zdGRsaWIgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRk
ZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAke3ds
fSRzb25hbWUgYHRlc3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24g
JHt3bH0kdmVyc3RyaW5nYCAke3dsfS11cGRhdGVfcmVnaXN0cnkgJHt3bH0ke291dHB1dF9vYmpk
aXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwoJICBlbHNlCgkgICAgX0xUX0FDX1RBR1ZBUihhcmNo
aXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5vc3RkbGliICRwcmVkZXBfb2JqZWN0cyAkbGli
b2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25h
bWUgJHt3bH0kc29uYW1lIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBlY2hvICR7d2x9LXNldF92
ZXJzaW9uICR7d2x9JHZlcnN0cmluZ2AgLW8gJGxpYicKCSAgZmkKCWZpCglfTFRfQUNfVEFHVkFS
KGxpbmtfYWxsX2RlcGxpYnMsICQxKT15ZXMKCTs7CiAgICBlc2FjCiAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tcnBhdGggJHt3bH0kbGliZGly
JwogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgogICAg
OzsKICBsaW51eCopCiAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBLQ0MqKQoJIyBLdWNr
IGFuZCBBc3NvY2lhdGVzLCBJbmMuIChLQUkpIEMrKyBDb21waWxlcgoKCSMgS0NDIHdpbGwgb25s
eSBjcmVhdGUgYSBzaGFyZWQgbGlicmFyeSBpZiB0aGUgb3V0cHV0IGZpbGUKCSMgZW5kcyB3aXRo
ICIuc28iIChvciAiLnNsIiBmb3IgSFAtVVgpLCBzbyByZW5hbWUgdGhlIGxpYnJhcnkKCSMgdG8g
aXRzIHByb3BlciBuYW1lICh3aXRoIHZlcnNpb24pIGFmdGVyIGxpbmtpbmcuCglfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSd0ZW1wZXh0PWBlY2hvICRzaGFyZWRfZXh0IHwgJFNFRCAt
ZSAnXCcncy9cKFtbXigpMC05QS1aYS16e31dXVwpL1xcXFxcMS9nJ1wnJ2A7IHRlbXBsaWI9YGVj
aG8gJGxpYiB8ICRTRUQgLWUgInMvXCR7dGVtcGV4dH1cLi4qLy5zby8iYDsgJENDICRwcmVkZXBf
b2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFn
cyAtLXNvbmFtZSAkc29uYW1lIC1vIFwkdGVtcGxpYjsgbXYgXCR0ZW1wbGliICRsaWInCglfTFRf
QUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0ndGVtcGV4dD1gZWNobyAkc2hhcmVk
X2V4dCB8ICRTRUQgLWUgJ1wnJ3MvXChbW14oKTAtOUEtWmEtent9XV1cKS9cXFxcXDEvZydcJydg
OyB0ZW1wbGliPWBlY2hvICRsaWIgfCAkU0VEIC1lICJzL1wke3RlbXBleHR9XC4uKi8uc28vImA7
ICRDQyAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAk
Y29tcGlsZXJfZmxhZ3MgLS1zb25hbWUgJHNvbmFtZSAtbyBcJHRlbXBsaWIgJHt3bH0tcmV0YWlu
LXN5bWJvbHMtZmlsZSwkZXhwb3J0X3N5bWJvbHM7IG12IFwkdGVtcGxpYiAkbGliJwoJIyBDb21t
YW5kcyB0byBtYWtlIGNvbXBpbGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwoJ
IyB3aGF0ICJoaWRkZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBhcmUgdXNl
ZCB3aGVuCgkjIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KCSMKCSMgVGhlcmUgZG9lc24ndCBh
cHBlYXIgdG8gYmUgYSB3YXkgdG8gcHJldmVudCB0aGlzIGNvbXBpbGVyIGZyb20KCSMgZXhwbGlj
aXRseSBsaW5raW5nIHN5c3RlbSBvYmplY3QgZmlsZXMgc28gd2UgbmVlZCB0byBzdHJpcCB0aGVt
CgkjIGZyb20gdGhlIG91dHB1dCBzbyB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRo
ZSBsaWJyYXJ5CgkjIGRlcGVuZGVuY2llcy4KCW91dHB1dF92ZXJib3NlX2xpbmtfY21kPSd0ZW1w
bGlzdD1gJENDICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAtbyBsaWJjb25mdGVzdCRzaGFy
ZWRfZXh0IDI+JjEgfCBncmVwICJsZCJgOyBybSAtZiBsaWJjb25mdGVzdCRzaGFyZWRfZXh0OyBs
aXN0PSIiOyBmb3IgeiBpbiAkdGVtcGxpc3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4
dCkgbGlzdD0iJGxpc3QgJHoiOzsgKi4kb2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNh
YzsgZG9uZTsgZWNobyAkbGlzdCcKCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFn
X3NwZWMsICQxKT0nJHt3bH0tLXJwYXRoLCRsaWJkaXInCglfTFRfQUNfVEFHVkFSKGV4cG9ydF9k
eW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS0tZXhwb3J0LWR5bmFtaWMnCgoJIyBBcmNoaXZl
cyBjb250YWluaW5nIEMrKyBvYmplY3QgZmlsZXMgbXVzdCBiZSBjcmVhdGVkIHVzaW5nCgkjICJD
QyAtQnN0YXRpYyIsIHdoZXJlICJDQyIgaXMgdGhlIEtBSSBDKysgY29tcGlsZXIuCglfTFRfQUNf
VEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nJENDIC1Cc3RhdGljIC1vICRvbGRsaWIgJG9s
ZG9ianMnCgk7OwogICAgICBpY3BjKikKCSMgSW50ZWwgQysrCgl3aXRoX2dudV9sZD15ZXMKCSMg
dmVyc2lvbiA4LjAgYW5kIGFib3ZlIG9mIGljcGMgY2hva2Ugb24gbXVsdGlwbHkgZGVmaW5lZCBz
eW1ib2xzCgkjIGlmIHdlIGFkZCAkcHJlZGVwX29iamVjdHMgYW5kICRwb3N0ZGVwX29iamVjdHMs
IGhvd2V2ZXIgNy4xIGFuZAoJIyBlYXJsaWVyIGRvIG5vdCBhZGQgdGhlIG9iamVjdHMgdGhlbXNl
bHZlcy4KCWNhc2UgYCRDQyAtViAyPiYxYCBpbgoJKiJWZXJzaW9uIDcuIiopCiAgCSAgX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHByZWRlcF9vYmplY3RzICRs
aWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNv
bmFtZSAkd2wkc29uYW1lIC1vICRsaWInCiAgCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5
bV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGli
cyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFt
ZSAke3dsfS1yZXRhaW4tc3ltYm9scy1maWxlICR3bCRleHBvcnRfc3ltYm9scyAtbyAkbGliJwoJ
ICA7OwoJKikgICMgVmVyc2lvbiA4LjAgb3IgbmV3ZXIKCSAgdG1wX2lkeW49CgkgIGNhc2UgJGhv
c3RfY3B1IGluCgkgICAgaWE2NCopIHRtcF9pZHluPScgLWlfZHluYW1pYyc7OwoJICBlc2FjCiAg
CSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQnIiR0bXBfaWR5
biInICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNv
bmFtZSAtbyAkbGliJwoJICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0n
JENDIC1zaGFyZWQnIiR0bXBfaWR5biInICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFn
cyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAke3dsfS1yZXRhaW4tc3ltYm9scy1maWxlICR3bCRl
eHBvcnRfc3ltYm9scyAtbyAkbGliJwoJICA7OwoJZXNhYwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHNfbmVlZF9sYywgJDEpPW5vCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFn
X3NwZWMsICQxKT0nJHt3bH0tcnBhdGgsJGxpYmRpcicKCV9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5
bmFtaWNfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LS1leHBvcnQtZHluYW1pYycKCV9MVF9BQ19UQUdW
QVIod2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0nJHt3bH0tLXdob2xlLWFyY2hpdmUkY29u
dmVuaWVuY2UgJHt3bH0tLW5vLXdob2xlLWFyY2hpdmUnCgk7OwogICAgICBwZ0NDKikKICAgICAg
ICAjIFBvcnRsYW5kIEdyb3VwIEMrKyBjb21waWxlcgoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2Nt
ZHMsICQxKT0nJENDIC1zaGFyZWQgJHBpY19mbGFnICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAk
ZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHt3
bH0kc29uYW1lIC1vICRsaWInCiAgCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywg
JDEpPSckQ0MgLXNoYXJlZCAkcGljX2ZsYWcgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBs
aWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAke3dsfSRz
b25hbWUgJHt3bH0tcmV0YWluLXN5bWJvbHMtZmlsZSAke3dsfSRleHBvcnRfc3ltYm9scyAtbyAk
bGliJwoKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3ds
fS0tcnBhdGggJHt3bH0kbGliZGlyJwoJX0xUX0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19mbGFn
X3NwZWMsICQxKT0nJHt3bH0tLWV4cG9ydC1keW5hbWljJwoJX0xUX0FDX1RBR1ZBUih3aG9sZV9h
cmNoaXZlX2ZsYWdfc3BlYywgJDEpPScke3dsfS0td2hvbGUtYXJjaGl2ZWBmb3IgY29udiBpbiAk
Y29udmVuaWVuY2VcIlwiOyBkbyB0ZXN0ICAtbiBcIiRjb252XCIgJiYgbmV3X2NvbnZlbmllbmNl
PVwiJG5ld19jb252ZW5pZW5jZSwkY29udlwiOyBkb25lOyAkZWNobyBcIiRuZXdfY29udmVuaWVu
Y2VcImAgJHt3bH0tLW5vLXdob2xlLWFyY2hpdmUnCiAgICAgICAgOzsKICAgICAgY3h4KikKCSMg
Q29tcGFxIEMrKwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQg
JHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBp
bGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCglfTFRfQUNfVEFHVkFS
KGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHByZWRlcF9vYmplY3RzICRs
aWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNv
bmFtZSAkd2wkc29uYW1lICAtbyAkbGliICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUgJHdsJGV4
cG9ydF9zeW1ib2xzJwoKCXJ1bnBhdGhfdmFyPUxEX1JVTl9QQVRICglfTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLXJwYXRoICRsaWJkaXInCglfTFRfQUNfVEFH
VkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CgoJIyBDb21tYW5kcyB0byBtYWtl
IGNvbXBpbGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwoJIyB3aGF0ICJoaWRk
ZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBhcmUgdXNlZCB3aGVuCgkjIGxp
bmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KCSMKCSMgVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUg
YSB3YXkgdG8gcHJldmVudCB0aGlzIGNvbXBpbGVyIGZyb20KCSMgZXhwbGljaXRseSBsaW5raW5n
IHN5c3RlbSBvYmplY3QgZmlsZXMgc28gd2UgbmVlZCB0byBzdHJpcCB0aGVtCgkjIGZyb20gdGhl
IG91dHB1dCBzbyB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5Cgkj
IGRlcGVuZGVuY2llcy4KCW91dHB1dF92ZXJib3NlX2xpbmtfY21kPSd0ZW1wbGlzdD1gJENDIC1z
aGFyZWQgJENGTEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0IDI+JjEgfCBncmVwICJsZCJgOyB0ZW1w
bGlzdD1gZWNobyAkdGVtcGxpc3QgfCAkU0VEICJzL1woXi4qbGQuKlwpXCggLipsZCAuKiRcKS9c
MS8iYDsgbGlzdD0iIjsgZm9yIHogaW4gJHRlbXBsaXN0OyBkbyBjYXNlICR6IGluIGNvbmZ0ZXN0
LiRvYmpleHQpIGxpc3Q9IiRsaXN0ICR6Ijs7ICouJG9iamV4dCk7OyAqKSBsaXN0PSIkbGlzdCAk
eiI7O2VzYWM7IGRvbmU7IGVjaG8gJGxpc3QnCgk7OwogICAgZXNhYwogICAgOzsKICBseW54b3Mq
KQogICAgIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CiAgICBfTFRf
QUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICA7OwogIG04OGsqKQogICAgIyBGSVhNRTog
aW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CiAgICBfTFRfQUNfVEFHVkFSKGxkX3No
bGlicywgJDEpPW5vCiAgICA7OwogIG12cyopCiAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAg
ICBjeHgqKQoJIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CglfTFRf
QUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCgk7OwogICAgICAqKQoJIyBGSVhNRTogaW5zZXJ0
IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0CglfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEp
PW5vCgk7OwogICAgZXNhYwogICAgOzsKICBuZXRic2QqKQogICAgaWYgZWNobyBfX0VMRl9fIHwg
JENDIC1FIC0gfCBncmVwIF9fRUxGX18gPi9kZXYvbnVsbDsgdGhlbgogICAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUJzaGFyZWFibGUgIC1vICRsaWIgJHByZWRlcF9v
YmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGxpbmtlcl9mbGFncycK
ICAgICAgd2xhcmM9CiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3Bl
YywgJDEpPSctUiRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAk
MSk9eWVzCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5v
CiAgICBmaQogICAgIyBXb3JrYXJvdW5kIHNvbWUgYnJva2VuIHByZS0xLjUgdG9vbGNoYWlucwog
ICAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9JyRDQyAtc2hhcmVkICRDRkxBR1MgLXYgY29uZnRl
c3QuJG9iamV4dCAyPiYxIHwgZ3JlcCBjb25mdGVzdC4kb2JqZXh0IHwgJFNFRCAtZSAiczotbGdj
YyAtbGMgLWxnY2M6OiInCiAgICA7OwogIG9wZW5ic2QyKikKICAgICMgQysrIHNoYXJlZCBsaWJy
YXJpZXMgYXJlIGZhaXJseSBicm9rZW4KICAgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9
bm8KICAgIDs7CiAgb3BlbmJzZCopCiAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwg
JDEpPXllcwogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8K
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRwaWNfZmxh
ZyAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29t
cGlsZXJfZmxhZ3MgLW8gJGxpYicKICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2Zs
YWdfc3BlYywgJDEpPScke3dsfS1ycGF0aCwkbGliZGlyJwogICAgaWYgdGVzdCAteiAiYGVjaG8g
X19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fYCIgfHwgdGVzdCAiJGhvc3Rfb3MtJGhv
c3RfY3B1IiA9ICJvcGVuYnNkMi44LXBvd2VycGMiOyB0aGVuCiAgICAgIF9MVF9BQ19UQUdWQVIo
YXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkcGljX2ZsYWcgJHByZWRlcF9v
YmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdz
ICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUsJGV4cG9ydF9zeW1ib2xzIC1vICRsaWInCiAgICAg
IF9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LUUnCiAg
ICAgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0iJHdsYXJjIict
LXdob2xlLWFyY2hpdmUkY29udmVuaWVuY2UgJyIkd2xhcmMiJy0tbm8td2hvbGUtYXJjaGl2ZScK
ICAgIGZpCiAgICBvdXRwdXRfdmVyYm9zZV9saW5rX2NtZD0nZWNobycKICAgIDs7CiAgb3NmMyop
CiAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBLQ0MqKQoJIyBLdWNrIGFuZCBBc3NvY2lh
dGVzLCBJbmMuIChLQUkpIEMrKyBDb21waWxlcgoKCSMgS0NDIHdpbGwgb25seSBjcmVhdGUgYSBz
aGFyZWQgbGlicmFyeSBpZiB0aGUgb3V0cHV0IGZpbGUKCSMgZW5kcyB3aXRoICIuc28iIChvciAi
LnNsIiBmb3IgSFAtVVgpLCBzbyByZW5hbWUgdGhlIGxpYnJhcnkKCSMgdG8gaXRzIHByb3BlciBu
YW1lICh3aXRoIHZlcnNpb24pIGFmdGVyIGxpbmtpbmcuCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
Y21kcywgJDEpPSd0ZW1wZXh0PWBlY2hvICRzaGFyZWRfZXh0IHwgJFNFRCAtZSAnXCcncy9cKFtb
XigpMC05QS1aYS16e31dXVwpL1xcXFxcMS9nJ1wnJ2A7IHRlbXBsaWI9YGVjaG8gJGxpYiB8ICRT
RUQgLWUgInMvXCR7dGVtcGV4dH1cLi4qLy5zby8iYDsgJENDICRwcmVkZXBfb2JqZWN0cyAkbGli
b2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAtLXNvbmFtZSAk
c29uYW1lIC1vIFwkdGVtcGxpYjsgbXYgXCR0ZW1wbGliICRsaWInCgoJX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRoLCRsaWJkaXInCglfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CgoJIyBBcmNoaXZlcyBj
b250YWluaW5nIEMrKyBvYmplY3QgZmlsZXMgbXVzdCBiZSBjcmVhdGVkIHVzaW5nCgkjICJDQyAt
QnN0YXRpYyIsIHdoZXJlICJDQyIgaXMgdGhlIEtBSSBDKysgY29tcGlsZXIuCglfTFRfQUNfVEFH
VkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nJENDIC1Cc3RhdGljIC1vICRvbGRsaWIgJG9sZG9i
anMnCgoJOzsKICAgICAgUkNDKikKCSMgUmF0aW9uYWwgQysrIDIuNC4xCgkjIEZJWE1FOiBpbnNl
cnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAk
MSk9bm8KCTs7CiAgICAgIGN4eCopCglfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFn
LCAkMSk9JyAke3dsfS1leHBlY3RfdW5yZXNvbHZlZCAke3dsfVwqJwoJX0xUX0FDX1RBR1ZBUihh
cmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQke2FsbG93X3VuZGVmaW5lZF9mbGFnfSAkcHJl
ZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJf
ZmxhZ3MgJHt3bH0tc29uYW1lICRzb25hbWUgYHRlc3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8g
JHt3bH0tc2V0X3ZlcnNpb24gJHZlcnN0cmluZ2AgLXVwZGF0ZV9yZWdpc3RyeSAke291dHB1dF9v
YmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwoKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGli
ZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCglfTFRfQUNfVEFH
VkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CgoJIyBDb21tYW5kcyB0byBtYWtl
IGNvbXBpbGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwoJIyB3aGF0ICJoaWRk
ZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVzIGFuZCBmbGFncyBhcmUgdXNlZCB3aGVuCgkjIGxp
bmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KCSMKCSMgVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUg
YSB3YXkgdG8gcHJldmVudCB0aGlzIGNvbXBpbGVyIGZyb20KCSMgZXhwbGljaXRseSBsaW5raW5n
IHN5c3RlbSBvYmplY3QgZmlsZXMgc28gd2UgbmVlZCB0byBzdHJpcCB0aGVtCgkjIGZyb20gdGhl
IG91dHB1dCBzbyB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5Cgkj
IGRlcGVuZGVuY2llcy4KCW91dHB1dF92ZXJib3NlX2xpbmtfY21kPSd0ZW1wbGlzdD1gJENDIC1z
aGFyZWQgJENGTEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0IDI+JjEgfCBncmVwICJsZCIgfCBncmVw
IC12ICJsZDoiYDsgdGVtcGxpc3Q9YGVjaG8gJHRlbXBsaXN0IHwgJFNFRCAicy9cKF4uKmxkLipc
KVwoIC4qbGQuKiRcKS9cMS8iYDsgbGlzdD0iIjsgZm9yIHogaW4gJHRlbXBsaXN0OyBkbyBjYXNl
ICR6IGluIGNvbmZ0ZXN0LiRvYmpleHQpIGxpc3Q9IiRsaXN0ICR6Ijs7ICouJG9iamV4dCk7OyAq
KSBsaXN0PSIkbGlzdCAkeiI7O2VzYWM7IGRvbmU7IGVjaG8gJGxpc3QnCgk7OwogICAgICAqKQoJ
aWYgdGVzdCAiJEdYWCIgPSB5ZXMgJiYgdGVzdCAiJHdpdGhfZ251X2xkIiA9IG5vOyB0aGVuCgkg
IF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nICR7d2x9LWV4cGVjdF91
bnJlc29sdmVkICR7d2x9XConCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkIC1ub3N0ZGxpYiAke2FsbG93X3VuZGVmaW5lZF9mbGFnfSAkcHJlZGVwX29iamVj
dHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MgJHt3
bH0tc29uYW1lICR7d2x9JHNvbmFtZSBgdGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAke3ds
fS1zZXRfdmVyc2lvbiAke3dsfSR2ZXJzdHJpbmdgICR7d2x9LXVwZGF0ZV9yZWdpc3RyeSAke3ds
fSR7b3V0cHV0X29iamRpcn0vc29fbG9jYXRpb25zIC1vICRsaWInCgoJICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tcnBhdGggJHt3bH0kbGliZGly
JwoJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06CgoJICAj
IENvbW1hbmRzIHRvIG1ha2UgY29tcGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxp
c3RzCgkgICMgd2hhdCAiaGlkZGVuIiBsaWJyYXJpZXMsIG9iamVjdCBmaWxlcyBhbmQgZmxhZ3Mg
YXJlIHVzZWQgd2hlbgoJICAjIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KCSAgb3V0cHV0X3Zl
cmJvc2VfbGlua19jbWQ9JyRDQyAtc2hhcmVkICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAy
PiYxIHwgZ3JlcCAiXC1MIicKCgllbHNlCgkgICMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxp
YnJhcnkgc3VwcG9ydAoJICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCglmaQoJOzsK
ICAgIGVzYWMKICAgIDs7CiAgb3NmNCogfCBvc2Y1KikKICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGlu
CiAgICAgIEtDQyopCgkjIEt1Y2sgYW5kIEFzc29jaWF0ZXMsIEluYy4gKEtBSSkgQysrIENvbXBp
bGVyCgoJIyBLQ0Mgd2lsbCBvbmx5IGNyZWF0ZSBhIHNoYXJlZCBsaWJyYXJ5IGlmIHRoZSBvdXRw
dXQgZmlsZQoJIyBlbmRzIHdpdGggIi5zbyIgKG9yICIuc2wiIGZvciBIUC1VWCksIHNvIHJlbmFt
ZSB0aGUgbGlicmFyeQoJIyB0byBpdHMgcHJvcGVyIG5hbWUgKHdpdGggdmVyc2lvbikgYWZ0ZXIg
bGlua2luZy4KCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9J3RlbXBleHQ9YGVjaG8g
JHNoYXJlZF9leHQgfCAkU0VEIC1lICdcJydzL1woW1teKCkwLTlBLVphLXp7fV1dXCkvXFxcXFwx
L2cnXCcnYDsgdGVtcGxpYj1gZWNobyAkbGliIHwgJFNFRCAtZSAicy9cJHt0ZW1wZXh0fVwuLiov
LnNvLyJgOyAkQ0MgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29i
amVjdHMgJGNvbXBpbGVyX2ZsYWdzIC0tc29uYW1lICRzb25hbWUgLW8gXCR0ZW1wbGliOyBtdiBc
JHRlbXBsaWIgJGxpYicKCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMs
ICQxKT0nJHt3bH0tcnBhdGgsJGxpYmRpcicKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X3NlcGFyYXRvciwgJDEpPToKCgkjIEFyY2hpdmVzIGNvbnRhaW5pbmcgQysrIG9iamVjdCBmaWxl
cyBtdXN0IGJlIGNyZWF0ZWQgdXNpbmcKCSMgdGhlIEtBSSBDKysgY29tcGlsZXIuCglfTFRfQUNf
VEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nJENDIC1vICRvbGRsaWIgJG9sZG9ianMnCgk7
OwogICAgICBSQ0MqKQoJIyBSYXRpb25hbCBDKysgMi40LjEKCSMgRklYTUU6IGluc2VydCBwcm9w
ZXIgQysrIGxpYnJhcnkgc3VwcG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJ
OzsKICAgICAgY3h4KikKCV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0n
IC1leHBlY3RfdW5yZXNvbHZlZCBcKicKCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9
JyRDQyAtc2hhcmVkJHthbGxvd191bmRlZmluZWRfZmxhZ30gJHByZWRlcF9vYmplY3RzICRsaWJv
YmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzIC1tc3ltIC1zb25h
bWUgJHNvbmFtZSBgdGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAtc2V0X3ZlcnNpb24gJHZl
cnN0cmluZ2AgLXVwZGF0ZV9yZWdpc3RyeSAke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0aW9ucyAt
byAkbGliJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9J2ZvciBpIGlu
IGBjYXQgJGV4cG9ydF9zeW1ib2xzYDsgZG8gcHJpbnRmICIlcyAlc1xcbiIgLWV4cG9ydGVkX3N5
bWJvbCAiXCRpIiA+PiAkbGliLmV4cDsgZG9uZX4KCSAgZWNobyAiLWhpZGRlbiI+PiAkbGliLmV4
cH4KCSAgJENDIC1zaGFyZWQkYWxsb3dfdW5kZWZpbmVkX2ZsYWcgJHByZWRlcF9vYmplY3RzICRs
aWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzIC1tc3ltIC1z
b25hbWUgJHNvbmFtZSAtV2wsLWlucHV0IC1XbCwkbGliLmV4cCAgYHRlc3QgLW4gIiR2ZXJzdHJp
bmciICYmIGVjaG8gLXNldF92ZXJzaW9uCSR2ZXJzdHJpbmdgIC11cGRhdGVfcmVnaXN0cnkgJHtv
dXRwdXRfb2JqZGlyfS9zb19sb2NhdGlvbnMgLW8gJGxpYn4KCSAgJHJtICRsaWIuZXhwJwoKCV9M
VF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctcnBhdGggJGxpYmRp
cicKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPToKCgkjIENv
bW1hbmRzIHRvIG1ha2UgY29tcGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxpc3Rz
CgkjIHdoYXQgImhpZGRlbiIgbGlicmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdzIGFyZSB1
c2VkIHdoZW4KCSMgbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgoJIwoJIyBUaGVyZSBkb2Vzbid0
IGFwcGVhciB0byBiZSBhIHdheSB0byBwcmV2ZW50IHRoaXMgY29tcGlsZXIgZnJvbQoJIyBleHBs
aWNpdGx5IGxpbmtpbmcgc3lzdGVtIG9iamVjdCBmaWxlcyBzbyB3ZSBuZWVkIHRvIHN0cmlwIHRo
ZW0KCSMgZnJvbSB0aGUgb3V0cHV0IHNvIHRoYXQgdGhleSBkb24ndCBnZXQgaW5jbHVkZWQgaW4g
dGhlIGxpYnJhcnkKCSMgZGVwZW5kZW5jaWVzLgoJb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J3Rl
bXBsaXN0PWAkQ0MgLXNoYXJlZCAkQ0ZMQUdTIC12IGNvbmZ0ZXN0LiRvYmpleHQgMj4mMSB8IGdy
ZXAgImxkIiB8IGdyZXAgLXYgImxkOiJgOyB0ZW1wbGlzdD1gZWNobyAkdGVtcGxpc3QgfCAkU0VE
ICJzL1woXi4qbGQuKlwpXCggLipsZC4qJFwpL1wxLyJgOyBsaXN0PSIiOyBmb3IgeiBpbiAkdGVt
cGxpc3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4dCkgbGlzdD0iJGxpc3QgJHoiOzsg
Ki4kb2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNhYzsgZG9uZTsgZWNobyAkbGlzdCcK
CTs7CiAgICAgICopCglpZiB0ZXN0ICIkR1hYIiA9IHllcyAmJiB0ZXN0ICIkd2l0aF9nbnVfbGQi
ID0gbm87IHRoZW4KCSAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPScg
JHt3bH0tZXhwZWN0X3VucmVzb2x2ZWQgJHt3bH1cKicKCSBfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
Y21kcywgJDEpPSckQ0MgLXNoYXJlZCAtbm9zdGRsaWIgJHthbGxvd191bmRlZmluZWRfZmxhZ30g
JHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBp
bGVyX2ZsYWdzICR7d2x9LW1zeW0gJHt3bH0tc29uYW1lICR7d2x9JHNvbmFtZSBgdGVzdCAtbiAi
JHZlcnN0cmluZyIgJiYgZWNobyAke3dsfS1zZXRfdmVyc2lvbiAke3dsfSR2ZXJzdHJpbmdgICR7
d2x9LXVwZGF0ZV9yZWdpc3RyeSAke3dsfSR7b3V0cHV0X29iamRpcn0vc29fbG9jYXRpb25zIC1v
ICRsaWInCgoJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0n
JHt3bH0tcnBhdGggJHt3bH0kbGliZGlyJwoJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRp
cl9zZXBhcmF0b3IsICQxKT06CgoJICAjIENvbW1hbmRzIHRvIG1ha2UgY29tcGlsZXIgcHJvZHVj
ZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxpc3RzCgkgICMgd2hhdCAiaGlkZGVuIiBsaWJyYXJpZXMs
IG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgoJICAjIGxpbmtpbmcgYSBzaGFy
ZWQgbGlicmFyeS4KCSAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9JyRDQyAtc2hhcmVkICRDRkxB
R1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxIHwgZ3JlcCAiXC1MIicKCgllbHNlCgkgICMgRklY
TUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAoJICBfTFRfQUNfVEFHVkFSKGxk
X3NobGlicywgJDEpPW5vCglmaQoJOzsKICAgIGVzYWMKICAgIDs7CiAgcHNvcyopCiAgICAjIEZJ
WE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKICAgIF9MVF9BQ19UQUdWQVIo
bGRfc2hsaWJzLCAkMSk9bm8KICAgIDs7CiAgc3Vub3M0KikKICAgIGNhc2UgJGNjX2Jhc2VuYW1l
IGluCiAgICAgIENDKikKCSMgU3VuIEMrKyA0LngKCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysr
IGxpYnJhcnkgc3VwcG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJOzsKICAg
ICAgbGNjKikKCSMgTHVjaWQKCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3Vw
cG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJOzsKICAgICAgKikKCSMgRklY
TUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAoJX0xUX0FDX1RBR1ZBUihsZF9z
aGxpYnMsICQxKT1ubwoJOzsKICAgIGVzYWMKICAgIDs7CiAgc29sYXJpcyopCiAgICBjYXNlICRj
Y19iYXNlbmFtZSBpbgogICAgICBDQyopCgkjIFN1biBDKysgNC4yLCA1LnggYW5kIENlbnRlcmxp
bmUgQysrCiAgICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywkMSk9eWVz
CglfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAtemRlZnMnCglfTFRfQUNf
VEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLUcke2FsbG93X3VuZGVmaW5lZF9mbGFnfSAg
LWgkc29uYW1lIC1vICRsaWIgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0
ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5
bV9jbWRzLCAkMSk9JyRlY2hvICJ7IGdsb2JhbDoiID4gJGxpYi5leHB+Y2F0ICRleHBvcnRfc3lt
Ym9scyB8ICRTRUQgLWUgInMvXCguKlwpL1wxOy8iID4+ICRsaWIuZXhwfiRlY2hvICJsb2NhbDog
KjsgfTsiID4+ICRsaWIuZXhwfgoJJENDIC1HJHthbGxvd191bmRlZmluZWRfZmxhZ30gICR7d2x9
LU0gJHt3bH0kbGliLmV4cCAtaCRzb25hbWUgLW8gJGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9i
anMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3N+JHJtICRsaWIuZXhw
JwoKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctUiRsaWJk
aXInCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwoJY2FzZSAk
aG9zdF9vcyBpbgoJICBzb2xhcmlzMi5bWzAtNV1dIHwgc29sYXJpczIuW1swLTVdXS4qKSA7OwoJ
ICAqKQoJICAgICMgVGhlIEMrKyBjb21waWxlciBpcyB1c2VkIGFzIGxpbmtlciBzbyB3ZSBtdXN0
IHVzZSAkd2wKCSAgICAjIGZsYWcgdG8gcGFzcyB0aGUgY29tbWFuZHMgdG8gdGhlIHVuZGVybHlp
bmcgc3lzdGVtCgkgICAgIyBsaW5rZXIuIFdlIG11c3QgYWxzbyBwYXNzIGVhY2ggY29udmllbmNl
IGxpYnJhcnkgdGhyb3VnaAoJICAgICMgdG8gdGhlIHN5c3RlbSBsaW5rZXIgYmV0d2VlbiBhbGxl
eHRyYWN0L2RlZmF1bHRleHRyYWN0LgoJICAgICMgVGhlIEMrKyBjb21waWxlciB3aWxsIGNvbWJp
bmUgbGlua2VyIG9wdGlvbnMgc28gd2UKCSAgICAjIGNhbm5vdCBqdXN0IHBhc3MgdGhlIGNvbnZp
ZW5jZSBsaWJyYXJ5IG5hbWVzIHRocm91Z2gKCSAgICAjIHdpdGhvdXQgJHdsLgoJICAgICMgU3Vw
cG9ydGVkIHNpbmNlIFNvbGFyaXMgMi42IChtYXliZSAyLjUuMT8pCgkgICAgX0xUX0FDX1RBR1ZB
Uih3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYywgJDEpPScke3dsfS16ICR7d2x9YWxsZXh0cmFjdGBm
b3IgY29udiBpbiAkY29udmVuaWVuY2VcIlwiOyBkbyB0ZXN0IC1uIFwiJGNvbnZcIiAmJiBuZXdf
Y29udmVuaWVuY2U9XCIkbmV3X2NvbnZlbmllbmNlLCRjb252XCI7IGRvbmU7ICRlY2hvIFwiJG5l
d19jb252ZW5pZW5jZVwiYCAke3dsfS16ICR7d2x9ZGVmYXVsdGV4dHJhY3QnCgkgICAgOzsKCWVz
YWMKCV9MVF9BQ19UQUdWQVIobGlua19hbGxfZGVwbGlicywgJDEpPXllcwoKCW91dHB1dF92ZXJi
b3NlX2xpbmtfY21kPSdlY2hvJwoKCSMgQXJjaGl2ZXMgY29udGFpbmluZyBDKysgb2JqZWN0IGZp
bGVzIG11c3QgYmUgY3JlYXRlZCB1c2luZwoJIyAiQ0MgLXhhciIsIHdoZXJlICJDQyIgaXMgdGhl
IFN1biBDKysgY29tcGlsZXIuICBUaGlzIGlzCgkjIG5lY2Vzc2FyeSB0byBtYWtlIHN1cmUgaW5z
dGFudGlhdGVkIHRlbXBsYXRlcyBhcmUgaW5jbHVkZWQKCSMgaW4gdGhlIGFyY2hpdmUuCglfTFRf
QUNfVEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nJENDIC14YXIgLW8gJG9sZGxpYiAkb2xk
b2JqcycKCTs7CiAgICAgIGdjeCopCgkjIEdyZWVuIEhpbGxzIEMrKyBDb21waWxlcgoJX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHByZWRlcF9vYmplY3RzICRs
aWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LWgg
JHdsJHNvbmFtZSAtbyAkbGliJwoKCSMgVGhlIEMrKyBjb21waWxlciBtdXN0IGJlIHVzZWQgdG8g
Y3JlYXRlIHRoZSBhcmNoaXZlLgoJX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAkMSk9
JyRDQyAkTERGTEFHUyAtYXJjaGl2ZSAtbyAkb2xkbGliICRvbGRvYmpzJwoJOzsKICAgICAgKikK
CSMgR05VIEMrKyBjb21waWxlciB3aXRoIFNvbGFyaXMgbGlua2VyCglpZiB0ZXN0ICIkR1hYIiA9
IHllcyAmJiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0gbm87IHRoZW4KCSAgX0xUX0FDX1RBR1ZBUihu
b191bmRlZmluZWRfZmxhZywgJDEpPScgJHt3bH0teiAke3dsfWRlZnMnCgkgIGlmICRDQyAtLXZl
cnNpb24gfCBncmVwIC12ICdeMlwuNycgPiAvZGV2L251bGw7IHRoZW4KCSAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAtbm9zdGRsaWIgJExERkxBR1MgJHBy
ZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVy
X2ZsYWdzICR7d2x9LWggJHdsJHNvbmFtZSAtbyAkbGliJwoJICAgIF9MVF9BQ19UQUdWQVIoYXJj
aGl2ZV9leHBzeW1fY21kcywgJDEpPSckZWNobyAieyBnbG9iYWw6IiA+ICRsaWIuZXhwfmNhdCAk
ZXhwb3J0X3N5bWJvbHMgfCAkU0VEIC1lICJzL1woLipcKS9cMTsvIiA+PiAkbGliLmV4cH4kZWNo
byAibG9jYWw6ICo7IH07IiA+PiAkbGliLmV4cH4KCQkkQ0MgLXNoYXJlZCAtbm9zdGRsaWIgJHt3
bH0tTSAkd2wkbGliLmV4cCAtbyAkbGliICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGli
cyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFnc34kcm0gJGxpYi5leHAnCgoJICAgICMg
Q29tbWFuZHMgdG8gbWFrZSBjb21waWxlciBwcm9kdWNlIHZlcmJvc2Ugb3V0cHV0IHRoYXQgbGlz
dHMKCSAgICAjIHdoYXQgImhpZGRlbiIgbGlicmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdz
IGFyZSB1c2VkIHdoZW4KCSAgICAjIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KCSAgICBvdXRw
dXRfdmVyYm9zZV9saW5rX2NtZD0iJENDIC1zaGFyZWQgJENGTEFHUyAtdiBjb25mdGVzdC4kb2Jq
ZXh0IDI+JjEgfCBncmVwIFwiXC1MXCIiCgkgIGVsc2UKCSAgICAjIGcrKyAyLjcgYXBwZWFycyB0
byByZXF1aXJlIGAtRycgTk9UIGAtc2hhcmVkJyBvbiB0aGlzCgkgICAgIyBwbGF0Zm9ybS4KCSAg
ICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLUcgLW5vc3RkbGliICRMREZM
QUdTICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRj
b21waWxlcl9mbGFncyAke3dsfS1oICR3bCRzb25hbWUgLW8gJGxpYicKCSAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJGVjaG8gInsgZ2xvYmFsOiIgPiAkbGliLmV4
cH5jYXQgJGV4cG9ydF9zeW1ib2xzIHwgJFNFRCAtZSAicy9cKC4qXCkvXDE7LyIgPj4gJGxpYi5l
eHB+JGVjaG8gImxvY2FsOiAqOyB9OyIgPj4gJGxpYi5leHB+CgkJJENDIC1HIC1ub3N0ZGxpYiAk
e3dsfS1NICR3bCRsaWIuZXhwIC1vICRsaWIgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBs
aWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzfiRybSAkbGliLmV4cCcKCgkgICAg
IyBDb21tYW5kcyB0byBtYWtlIGNvbXBpbGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBs
aXN0cwoJICAgICMgd2hhdCAiaGlkZGVuIiBsaWJyYXJpZXMsIG9iamVjdCBmaWxlcyBhbmQgZmxh
Z3MgYXJlIHVzZWQgd2hlbgoJICAgICMgbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgoJICAgIG91
dHB1dF92ZXJib3NlX2xpbmtfY21kPSIkQ0MgLUcgJENGTEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0
IDI+JjEgfCBncmVwIFwiXC1MXCIiCgkgIGZpCgoJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xp
YmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tUiAkd2wkbGliZGlyJwoJZmkKCTs7CiAgICBlc2Fj
CiAgICA7OwogIHN5c3Y0KnV3MiogfCBzeXN2NU9wZW5VTklYKiB8IHN5c3Y1VW5peFdhcmU3Lltb
MDFdXS5bWzEwXV0qIHwgdW5peHdhcmU3KiB8IHNjbzMuMnY1LjAuW1swMjRdXSopCiAgICBfTFRf
QUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9JyR7d2x9LXosdGV4dCcKICAgIF9MVF9B
Q19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwogICAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgIHJ1bnBhdGhfdmFyPSdMRF9SVU5fUEFU
SCcKCiAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBDQyopCglfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckQ0MgLUcgJHt3bH0taCwkc29uYW1lIC1vICRsaWIgJGxpYm9ianMg
JGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9j
bWRzLCAkMSk9JyRDQyAtRyAke3dsfS1CZXhwb3J0OiRleHBvcnRfc3ltYm9scyAke3dsfS1oLCRz
b25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCgk7OwogICAg
ICAqKQoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHt3bH0t
aCwkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJX0xU
X0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICR7d2x9LUJl
eHBvcnQ6JGV4cG9ydF9zeW1ib2xzICR7d2x9LWgsJHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRk
ZXBsaWJzICRjb21waWxlcl9mbGFncycKCTs7CiAgICBlc2FjCiAgICA7OwogIHN5c3Y1KiB8IHNj
bzMuMnY1KiB8IHNjbzV2NiopCiAgICAjIE5vdGU6IFdlIGNhbiBOT1QgdXNlIC16IGRlZnMgYXMg
d2UgbWlnaHQgZGVzaXJlLCBiZWNhdXNlIHdlIGRvIG5vdAogICAgIyBsaW5rIHdpdGggLWxjLCBh
bmQgdGhhdCB3b3VsZCBjYXVzZSBhbnkgc3ltYm9scyB1c2VkIGZyb20gbGliYyB0bwogICAgIyBh
bHdheXMgYmUgdW5yZXNvbHZlZCwgd2hpY2ggbWVhbnMganVzdCBhYm91dCBubyBsaWJyYXJ5IHdv
dWxkCiAgICAjIGV2ZXIgbGluayBjb3JyZWN0bHkuICBJZiB3ZSdyZSBub3QgdXNpbmcgR05VIGxk
IHdlIHVzZSAteiB0ZXh0CiAgICAjIHRob3VnaCwgd2hpY2ggZG9lcyBjYXRjaCBzb21lIGJhZCBz
eW1ib2xzIGJ1dCBpc24ndCBhcyBoZWF2eS1oYW5kZWQKICAgICMgYXMgLXogZGVmcy4KICAgICMg
Rm9yIHNlY3VyaXR5IHJlYXNvbnMsIGl0IGlzIGhpZ2hseSByZWNvbW1lbmRlZCB0aGF0IHlvdSBh
bHdheXMKICAgICMgdXNlIGFic29sdXRlIHBhdGhzIGZvciBuYW1pbmcgc2hhcmVkIGxpYnJhcmll
cywgYW5kIGV4Y2x1ZGUgdGhlCiAgICAjIERUX1JVTlBBVEggdGFnIGZyb20gZXhlY3V0YWJsZXMg
YW5kIGxpYnJhcmllcy4gIEJ1dCBkb2luZyBzbwogICAgIyByZXF1aXJlcyB0aGF0IHlvdSBjb21w
aWxlIGV2ZXJ5dGhpbmcgdHdpY2UsIHdoaWNoIGlzIGEgcGFpbi4KICAgICMgU28gdGhhdCBiZWhh
dmlvdXIgaXMgb25seSBlbmFibGVkIGlmIFNDT0FCU1BBVEggaXMgc2V0IHRvIGEKICAgICMgbm9u
LWVtcHR5IHZhbHVlIGluIHRoZSBlbnZpcm9ubWVudC4gIE1vc3QgbGlrZWx5IG9ubHkgdXNlZnVs
IGZvcgogICAgIyBjcmVhdGluZyBvZmZpY2lhbCBkaXN0cmlidXRpb25zIG9mIHBhY2thZ2VzLgog
ICAgIyBUaGlzIGlzIGEgaGFjayB1bnRpbCBsaWJ0b29sIG9mZmljaWFsbHkgc3VwcG9ydHMgYWJz
b2x1dGUgcGF0aAogICAgIyBuYW1lcyBmb3Igc2hhcmVkIGxpYnJhcmllcy4KICAgIF9MVF9BQ19U
QUdWQVIobm9fdW5kZWZpbmVkX2ZsYWcsICQxKT0nJHt3bH0teix0ZXh0JwogICAgX0xUX0FDX1RB
R1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPScke3dsfS16LG5vZGVmcycKICAgIF9MVF9B
Q19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwogICAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVf
bGliZGlyX2ZsYWdfc3BlYywgJDEpPSdgdGVzdCAteiAiJFNDT0FCU1BBVEgiICYmIGVjaG8gJHt3
bH0tUiwkbGliZGlyYCcKICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRv
ciwgJDEpPSc6JwogICAgX0xUX0FDX1RBR1ZBUihsaW5rX2FsbF9kZXBsaWJzLCAkMSk9eWVzCiAg
ICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS1CZXhw
b3J0JwogICAgcnVucGF0aF92YXI9J0xEX1JVTl9QQVRIJwoKICAgIGNhc2UgJGNjX2Jhc2VuYW1l
IGluCiAgICAgIENDKikKCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtRyAk
e3dsfS1oLFwke1NDT0FCU1BBVEg6KyR7aW5zdGFsbF9saWJkaXJ9L30kc29uYW1lIC1vICRsaWIg
JGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2V4cHN5bV9jbWRzLCAkMSk9JyRDQyAtRyAke3dsfS1CZXhwb3J0OiRleHBvcnRfc3ltYm9scyAk
e3dsfS1oLFwke1NDT0FCU1BBVEg6KyR7aW5zdGFsbF9saWJkaXJ9L30kc29uYW1lIC1vICRsaWIg
JGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJOzsKICAgICAgKikKCV9MVF9BQ19U
QUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICR7d2x9LWgsXCR7U0NPQUJTUEFU
SDorJHtpbnN0YWxsX2xpYmRpcn0vfSRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAk
Y29tcGlsZXJfZmxhZ3MnCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0n
JENDIC1zaGFyZWQgJHt3bH0tQmV4cG9ydDokZXhwb3J0X3N5bWJvbHMgJHt3bH0taCxcJHtTQ09B
QlNQQVRIOiske2luc3RhbGxfbGliZGlyfS99JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBs
aWJzICRjb21waWxlcl9mbGFncycKCTs7CiAgICBlc2FjCiAgICA7OwogIHRhbmRlbSopCiAgICBj
YXNlICRjY19iYXNlbmFtZSBpbgogICAgICBOQ0MqKQoJIyBOb25TdG9wLVVYIE5DQyAzLjIwCgkj
IEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKCV9MVF9BQ19UQUdWQVIo
bGRfc2hsaWJzLCAkMSk9bm8KCTs7CiAgICAgICopCgkjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMr
KyBsaWJyYXJ5IHN1cHBvcnQKCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KCTs7CiAg
ICBlc2FjCiAgICA7OwogIHZ4d29ya3MqKQogICAgIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysg
bGlicmFyeSBzdXBwb3J0CiAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICA7
OwogICopCiAgICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKICAg
IF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KICAgIDs7CmVzYWMKQUNfTVNHX1JFU1VM
VChbJF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSldKQp0ZXN0ICIkX0xUX0FDX1RBR1ZBUihs
ZF9zaGxpYnMsICQxKSIgPSBubyAmJiBjYW5fYnVpbGRfc2hhcmVkPW5vCgpfTFRfQUNfVEFHVkFS
KEdDQywgJDEpPSIkR1hYIgpfTFRfQUNfVEFHVkFSKExELCAkMSk9IiRMRCIKCkFDX0xJQlRPT0xf
UE9TVERFUF9QUkVERVAoJDEpCkFDX0xJQlRPT0xfUFJPR19DT01QSUxFUl9QSUMoJDEpCkFDX0xJ
QlRPT0xfUFJPR19DQ19DX08oJDEpCkFDX0xJQlRPT0xfU1lTX0hBUkRfTElOS19MT0NLUygkMSkK
QUNfTElCVE9PTF9QUk9HX0xEX1NITElCUygkMSkKQUNfTElCVE9PTF9TWVNfRFlOQU1JQ19MSU5L
RVIoJDEpCkFDX0xJQlRPT0xfUFJPR19MRF9IQVJEQ09ERV9MSUJQQVRIKCQxKQoKQUNfTElCVE9P
TF9DT05GSUcoJDEpCgpBQ19MQU5HX1BPUApDQz0kbHRfc2F2ZV9DQwpMRENYWD0kTEQKTEQ9JGx0
X3NhdmVfTEQKR0NDPSRsdF9zYXZlX0dDQwp3aXRoX2dudV9sZGN4eD0kd2l0aF9nbnVfbGQKd2l0
aF9nbnVfbGQ9JGx0X3NhdmVfd2l0aF9nbnVfbGQKbHRfY3ZfcGF0aF9MRENYWD0kbHRfY3ZfcGF0
aF9MRApsdF9jdl9wYXRoX0xEPSRsdF9zYXZlX3BhdGhfTEQKbHRfY3ZfcHJvZ19nbnVfbGRjeHg9
JGx0X2N2X3Byb2dfZ251X2xkCmx0X2N2X3Byb2dfZ251X2xkPSRsdF9zYXZlX3dpdGhfZ251X2xk
Cl0pIyBBQ19MSUJUT09MX0xBTkdfQ1hYX0NPTkZJRwoKIyBBQ19MSUJUT09MX1BPU1RERVBfUFJF
REVQKFtUQUdOQU1FXSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBG
aWd1cmUgb3V0ICJoaWRkZW4iIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZyb20gdmVyYm9zZQojIGNv
bXBpbGVyIG91dHB1dCB3aGVuIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KIyBQYXJzZSB0aGUg
Y29tcGlsZXIgb3V0cHV0IGFuZCBleHRyYWN0IHRoZSBuZWNlc3NhcnkKIyBvYmplY3RzLCBsaWJy
YXJpZXMgYW5kIGxpYnJhcnkgZmxhZ3MuCkFDX0RFRlVOKFtBQ19MSUJUT09MX1BPU1RERVBfUFJF
REVQXSxbCmRubCB3ZSBjYW4ndCB1c2UgdGhlIGx0X3NpbXBsZV9jb21waWxlX3Rlc3RfY29kZSBo
ZXJlLApkbmwgYmVjYXVzZSBpdCBjb250YWlucyBjb2RlIGludGVuZGVkIGZvciBhbiBleGVjdXRh
YmxlLApkbmwgbm90IGEgbGlicmFyeS4gIEl0J3MgcG9zc2libGUgd2Ugc2hvdWxkIGxldCBlYWNo
CmRubCB0YWcgZGVmaW5lIGEgbmV3IGx0Xz8/Pz9fbGlua190ZXN0X2NvZGUgdmFyaWFibGUsCmRu
bCBidXQgaXQncyBvbmx5IHVzZWQgaGVyZS4uLgppZmVsc2UoWyQxXSxbXSxbY2F0ID4gY29uZnRl
c3QuJGFjX2V4dCA8PEVPRgppbnQgYTsKdm9pZCBmb28gKHZvaWQpIHsgYSA9IDA7IH0KRU9GCl0s
WyQxXSxbQ1hYXSxbY2F0ID4gY29uZnRlc3QuJGFjX2V4dCA8PEVPRgpjbGFzcyBGb28KewpwdWJs
aWM6CiAgRm9vICh2b2lkKSB7IGEgPSAwOyB9CnByaXZhdGU6CiAgaW50IGE7Cn07CkVPRgpdLFsk
MV0sW0Y3N10sW2NhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxFT0YKICAgICAgc3Vicm91dGluZSBm
b28KICAgICAgaW1wbGljaXQgbm9uZQogICAgICBpbnRlZ2VyKjQgYQogICAgICBhPTAKICAgICAg
cmV0dXJuCiAgICAgIGVuZApFT0YKXSxbJDFdLFtHQ0pdLFtjYXQgPiBjb25mdGVzdC4kYWNfZXh0
IDw8RU9GCnB1YmxpYyBjbGFzcyBmb28gewogIHByaXZhdGUgaW50IGE7CiAgcHVibGljIHZvaWQg
YmFyICh2b2lkKSB7CiAgICBhID0gMDsKICB9Cn07CkVPRgpdKQpkbmwgUGFyc2UgdGhlIGNvbXBp
bGVyIG91dHB1dCBhbmQgZXh0cmFjdCB0aGUgbmVjZXNzYXJ5CmRubCBvYmplY3RzLCBsaWJyYXJp
ZXMgYW5kIGxpYnJhcnkgZmxhZ3MuCmlmIEFDX1RSWV9FVkFMKGFjX2NvbXBpbGUpOyB0aGVuCiAg
IyBQYXJzZSB0aGUgY29tcGlsZXIgb3V0cHV0IGFuZCBleHRyYWN0IHRoZSBuZWNlc3NhcnkKICAj
IG9iamVjdHMsIGxpYnJhcmllcyBhbmQgbGlicmFyeSBmbGFncy4KCiAgIyBTZW50aW5lbCB1c2Vk
IHRvIGtlZXAgdHJhY2sgb2Ygd2hldGhlciBvciBub3Qgd2UgYXJlIGJlZm9yZQogICMgdGhlIGNv
bmZ0ZXN0IG9iamVjdCBmaWxlLgogIHByZV90ZXN0X29iamVjdF9kZXBzX2RvbmU9bm8KCiAgIyBU
aGUgYConIGluIHRoZSBjYXNlIG1hdGNoZXMgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCB1c2UgYGNh
c2UnIGluCiAgIyAkb3V0cHV0X3ZlcmJvc2VfY21kIGNhbiB0cmlnZ2VyIGdsb2IgZXhwYW5zaW9u
IGR1cmluZyB0aGUgbG9vcAogICMgZXZhbCB3aXRob3V0IHRoaXMgc3Vic3RpdHV0aW9uLgogIG91
dHB1dF92ZXJib3NlX2xpbmtfY21kPWAkZWNobyAiWCRvdXRwdXRfdmVyYm9zZV9saW5rX2NtZCIg
fCAkWHNlZCAtZSAiJG5vX2dsb2Jfc3Vic3QiYAoKICBmb3IgcCBpbiBgZXZhbCAkb3V0cHV0X3Zl
cmJvc2VfbGlua19jbWRgOyBkbwogICAgY2FzZSAkcCBpbgoKICAgIC1MKiB8IC1SKiB8IC1sKikK
ICAgICAgICMgU29tZSBjb21waWxlcnMgcGxhY2Ugc3BhY2UgYmV0d2VlbiAiLXtMLFJ9IiBhbmQg
dGhlIHBhdGguCiAgICAgICAjIFJlbW92ZSB0aGUgc3BhY2UuCiAgICAgICBpZiB0ZXN0ICRwID0g
Ii1MIiBcCgkgIHx8IHRlc3QgJHAgPSAiLVIiOyB0aGVuCgkgcHJldj0kcAoJIGNvbnRpbnVlCiAg
ICAgICBlbHNlCgkgcHJldj0KICAgICAgIGZpCgogICAgICAgaWYgdGVzdCAiJHByZV90ZXN0X29i
amVjdF9kZXBzX2RvbmUiID0gbm87IHRoZW4KCSBjYXNlICRwIGluCgkgLUwqIHwgLVIqKQoJICAg
IyBJbnRlcm5hbCBjb21waWxlciBsaWJyYXJ5IHBhdGhzIHNob3VsZCBjb21lIGFmdGVyIHRob3Nl
CgkgICAjIHByb3ZpZGVkIHRoZSB1c2VyLiAgVGhlIHBvc3RkZXBzIGFscmVhZHkgY29tZSBhZnRl
ciB0aGUKCSAgICMgdXNlciBzdXBwbGllZCBsaWJzIHNvIHRoZXJlIGlzIG5vIG5lZWQgdG8gcHJv
Y2VzcyB0aGVtLgoJICAgaWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIoY29tcGlsZXJfbGliX3Nl
YXJjaF9wYXRoLCAkMSkiOyB0aGVuCgkgICAgIF9MVF9BQ19UQUdWQVIoY29tcGlsZXJfbGliX3Nl
YXJjaF9wYXRoLCAkMSk9IiR7cHJldn0ke3B9IgoJICAgZWxzZQoJICAgICBfTFRfQUNfVEFHVkFS
KGNvbXBpbGVyX2xpYl9zZWFyY2hfcGF0aCwgJDEpPSIke19MVF9BQ19UQUdWQVIoY29tcGlsZXJf
bGliX3NlYXJjaF9wYXRoLCAkMSl9ICR7cHJldn0ke3B9IgoJICAgZmkKCSAgIDs7CgkgIyBUaGUg
Ii1sIiBjYXNlIHdvdWxkIG5ldmVyIGNvbWUgYmVmb3JlIHRoZSBvYmplY3QgYmVpbmcKCSAjIGxp
bmtlZCwgc28gZG9uJ3QgYm90aGVyIGhhbmRsaW5nIHRoaXMgY2FzZS4KCSBlc2FjCiAgICAgICBl
bHNlCgkgaWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKSI7IHRoZW4KCSAg
IF9MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKT0iJHtwcmV2fSR7cH0iCgkgZWxzZQoJICAgX0xU
X0FDX1RBR1ZBUihwb3N0ZGVwcywgJDEpPSIke19MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKX0g
JHtwcmV2fSR7cH0iCgkgZmkKICAgICAgIGZpCiAgICAgICA7OwoKICAgICouJG9iamV4dCkKICAg
ICAgICMgVGhpcyBhc3N1bWVzIHRoYXQgdGhlIHRlc3Qgb2JqZWN0IGZpbGUgb25seSBzaG93cyB1
cAogICAgICAgIyBvbmNlIGluIHRoZSBjb21waWxlciBvdXRwdXQuCiAgICAgICBpZiB0ZXN0ICIk
cCIgPSAiY29uZnRlc3QuJG9iamV4dCI7IHRoZW4KCSBwcmVfdGVzdF9vYmplY3RfZGVwc19kb25l
PXllcwoJIGNvbnRpbnVlCiAgICAgICBmaQoKICAgICAgIGlmIHRlc3QgIiRwcmVfdGVzdF9vYmpl
Y3RfZGVwc19kb25lIiA9IG5vOyB0aGVuCgkgaWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIocHJl
ZGVwX29iamVjdHMsICQxKSI7IHRoZW4KCSAgIF9MVF9BQ19UQUdWQVIocHJlZGVwX29iamVjdHMs
ICQxKT0iJHAiCgkgZWxzZQoJICAgX0xUX0FDX1RBR1ZBUihwcmVkZXBfb2JqZWN0cywgJDEpPSIk
X0xUX0FDX1RBR1ZBUihwcmVkZXBfb2JqZWN0cywgJDEpICRwIgoJIGZpCiAgICAgICBlbHNlCgkg
aWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIocG9zdGRlcF9vYmplY3RzLCAkMSkiOyB0aGVuCgkg
ICBfTFRfQUNfVEFHVkFSKHBvc3RkZXBfb2JqZWN0cywgJDEpPSIkcCIKCSBlbHNlCgkgICBfTFRf
QUNfVEFHVkFSKHBvc3RkZXBfb2JqZWN0cywgJDEpPSIkX0xUX0FDX1RBR1ZBUihwb3N0ZGVwX29i
amVjdHMsICQxKSAkcCIKCSBmaQogICAgICAgZmkKICAgICAgIDs7CgogICAgKikgOzsgIyBJZ25v
cmUgdGhlIHJlc3QuCgogICAgZXNhYwogIGRvbmUKCiAgIyBDbGVhbiB1cC4KICBybSAtZiBhLm91
dCBhLmV4ZQplbHNlCiAgZWNobyAibGlidG9vbC5tNDogZXJyb3I6IHByb2JsZW0gY29tcGlsaW5n
ICQxIHRlc3QgcHJvZ3JhbSIKZmkKCiRybSAtZiBjb25mZXN0LiRvYmpleHQKCiMgUE9SVE1FOiBv
dmVycmlkZSBhYm92ZSB0ZXN0IG9uIHN5c3RlbXMgd2hlcmUgaXQgaXMgYnJva2VuCmlmZWxzZShb
JDFdLFtDWFhdLApbY2FzZSAkaG9zdF9vcyBpbgppbnRlcml4MyopCiAgIyBJbnRlcml4IDMuNSBp
bnN0YWxscyBjb21wbGV0ZWx5IGhvc2VkIC5sYSBmaWxlcyBmb3IgQysrLCBzbyByYXRoZXIgdGhh
bgogICMgaGFjayBhbGwgYXJvdW5kIGl0LCBsZXQncyBqdXN0IHRydXN0ICJnKysiIHRvIERUUlQu
CiAgX0xUX0FDX1RBR1ZBUihwcmVkZXBfb2JqZWN0cywkMSk9CiAgX0xUX0FDX1RBR1ZBUihwb3N0
ZGVwX29iamVjdHMsJDEpPQogIF9MVF9BQ19UQUdWQVIocG9zdGRlcHMsJDEpPQogIDs7Cgpzb2xh
cmlzKikKICBjYXNlICRjY19iYXNlbmFtZSBpbgogIENDKikKICAgICMgQWRkaW5nIHRoaXMgcmVx
dWlyZXMgYSBrbm93bi1nb29kIHNldHVwIG9mIHNoYXJlZCBsaWJyYXJpZXMgZm9yCiAgICAjIFN1
biBjb21waWxlciB2ZXJzaW9ucyBiZWZvcmUgNS42LCBlbHNlIFBJQyBvYmplY3RzIGZyb20gYW4g
b2xkCiAgICAjIGFyY2hpdmUgd2lsbCBiZSBsaW5rZWQgaW50byB0aGUgb3V0cHV0LCBsZWFkaW5n
IHRvIHN1YnRsZSBidWdzLgogICAgX0xUX0FDX1RBR1ZBUihwb3N0ZGVwcywkMSk9Jy1sQ3N0ZCAt
bENydW4nCiAgICA7OwogIGVzYWMKICA7Owplc2FjCl0pCgpjYXNlICIgJF9MVF9BQ19UQUdWQVIo
cG9zdGRlcHMsICQxKSAiIGluCioiIC1sYyAiKikgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNf
bmVlZF9sYywgJDEpPW5vIDs7CmVzYWMKXSkjIEFDX0xJQlRPT0xfUE9TVERFUF9QUkVERVAKCiMg
QUNfTElCVE9PTF9MQU5HX0Y3N19DT05GSUcKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoj
IEVuc3VyZSB0aGF0IHRoZSBjb25maWd1cmF0aW9uIHZhcnMgZm9yIHRoZSBDIGNvbXBpbGVyIGFy
ZQojIHN1aXRhYmx5IGRlZmluZWQuICBUaG9zZSB2YXJpYWJsZXMgYXJlIHN1YnNlcXVlbnRseSB1
c2VkIGJ5CiMgQUNfTElCVE9PTF9DT05GSUcgdG8gd3JpdGUgdGhlIGNvbXBpbGVyIGNvbmZpZ3Vy
YXRpb24gdG8gYGxpYnRvb2wnLgpBQ19ERUZVTihbQUNfTElCVE9PTF9MQU5HX0Y3N19DT05GSUdd
LCBbX0xUX0FDX0xBTkdfRjc3X0NPTkZJRyhGNzcpXSkKQUNfREVGVU4oW19MVF9BQ19MQU5HX0Y3
N19DT05GSUddLApbQUNfUkVRVUlSRShbQUNfUFJPR19GNzddKQpBQ19MQU5HX1BVU0goRm9ydHJh
biA3NykKCl9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwpfTFRfQUNf
VEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9Cl9MVF9BQ19UQUdWQVIoYWx3YXlzX2V4
cG9ydF9zeW1ib2xzLCAkMSk9bm8KX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAk
MSk9Cl9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjLCAkMSk9Cl9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9bm8KX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJk
aXJfZmxhZ19zcGVjLCAkMSk9Cl9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3Bl
Y19sZCwgJDEpPQpfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT0K
X0xUX0FDX1RBR1ZBUihoYXJkY29kZV9taW51c19MLCAkMSk9bm8KX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9hdXRvbWF0aWMsICQxKT1ubwpfTFRfQUNfVEFHVkFSKG1vZHVsZV9jbWRzLCAkMSk9Cl9M
VF9BQ19UQUdWQVIobW9kdWxlX2V4cHN5bV9jbWRzLCAkMSk9Cl9MVF9BQ19UQUdWQVIobGlua19h
bGxfZGVwbGlicywgJDEpPXVua25vd24KX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAk
MSk9JG9sZF9hcmNoaXZlX2NtZHMKX0xUX0FDX1RBR1ZBUihub191bmRlZmluZWRfZmxhZywgJDEp
PQpfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Cl9MVF9BQ19UQUdW
QVIoZW5hYmxlX3NoYXJlZF93aXRoX3N0YXRpY19ydW50aW1lcywgJDEpPW5vCgojIFNvdXJjZSBm
aWxlIGV4dGVuc2lvbiBmb3IgZjc3IHRlc3Qgc291cmNlcy4KYWNfZXh0PWYKCiMgT2JqZWN0IGZp
bGUgZXh0ZW5zaW9uIGZvciBjb21waWxlZCBmNzcgdGVzdCBzb3VyY2VzLgpvYmpleHQ9bwpfTFRf
QUNfVEFHVkFSKG9iamV4dCwgJDEpPSRvYmpleHQKCiMgQ29kZSB0byBiZSB1c2VkIGluIHNpbXBs
ZSBjb21waWxlIHRlc3RzCmx0X3NpbXBsZV9jb21waWxlX3Rlc3RfY29kZT0iICAgICAgc3Vicm91
dGluZSB0XG4gICAgICByZXR1cm5cbiAgICAgIGVuZFxuIgoKIyBDb2RlIHRvIGJlIHVzZWQgaW4g
c2ltcGxlIGxpbmsgdGVzdHMKbHRfc2ltcGxlX2xpbmtfdGVzdF9jb2RlPSIgICAgICBwcm9ncmFt
IHRcbiAgICAgIGVuZFxuIgoKIyBsdG1haW4gb25seSB1c2VzICRDQyBmb3IgdGFnZ2VkIGNvbmZp
Z3VyYXRpb25zIHNvIG1ha2Ugc3VyZSAkQ0MgaXMgc2V0LgpfTFRfQUNfU1lTX0NPTVBJTEVSCgoj
IHNhdmUgd2FybmluZ3MvYm9pbGVycGxhdGUgb2Ygc2ltcGxlIHRlc3QgY29kZQpfTFRfQ09NUElM
RVJfQk9JTEVSUExBVEUKX0xUX0xJTktFUl9CT0lMRVJQTEFURQoKIyBBbGxvdyBDQyB0byBiZSBh
IHByb2dyYW0gbmFtZSB3aXRoIGFyZ3VtZW50cy4KbHRfc2F2ZV9DQz0iJENDIgpDQz0ke0Y3Ny0i
Zjc3In0KY29tcGlsZXI9JENDCl9MVF9BQ19UQUdWQVIoY29tcGlsZXIsICQxKT0kQ0MKX0xUX0ND
X0JBU0VOQU1FKFskY29tcGlsZXJdKQoKQUNfTVNHX0NIRUNLSU5HKFtpZiBsaWJ0b29sIHN1cHBv
cnRzIHNoYXJlZCBsaWJyYXJpZXNdKQpBQ19NU0dfUkVTVUxUKFskY2FuX2J1aWxkX3NoYXJlZF0p
CgpBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmllc10pCnRl
c3QgIiRjYW5fYnVpbGRfc2hhcmVkIiA9ICJubyIgJiYgZW5hYmxlX3NoYXJlZD1ubwoKIyBPbiBB
SVgsIHNoYXJlZCBsaWJyYXJpZXMgYW5kIHN0YXRpYyBsaWJyYXJpZXMgdXNlIHRoZSBzYW1lIG5h
bWVzcGFjZSwgYW5kCiMgYXJlIGFsbCBidWlsdCBmcm9tIFBJQy4KY2FzZSAkaG9zdF9vcyBpbgph
aXgzKikKICB0ZXN0ICIkZW5hYmxlX3NoYXJlZCIgPSB5ZXMgJiYgZW5hYmxlX3N0YXRpYz1ubwog
IGlmIHRlc3QgLW4gIiRSQU5MSUIiOyB0aGVuCiAgICBhcmNoaXZlX2NtZHM9IiRhcmNoaXZlX2Nt
ZHN+XCRSQU5MSUIgXCRsaWIiCiAgICBwb3N0aW5zdGFsbF9jbWRzPSckUkFOTElCICRsaWInCiAg
ZmkKICA7OwphaXg0KiB8IGFpeDUqKQogIGlmIHRlc3QgIiRob3N0X2NwdSIgIT0gaWE2NCAmJiB0
ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSBubyA7IHRoZW4KICAgIHRlc3QgIiRlbmFi
bGVfc2hhcmVkIiA9IHllcyAmJiBlbmFibGVfc3RhdGljPW5vCiAgZmkKICA7Owplc2FjCkFDX01T
R19SRVNVTFQoWyRlbmFibGVfc2hhcmVkXSkKCkFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byBi
dWlsZCBzdGF0aWMgbGlicmFyaWVzXSkKIyBNYWtlIHN1cmUgZWl0aGVyIGVuYWJsZV9zaGFyZWQg
b3IgZW5hYmxlX3N0YXRpYyBpcyB5ZXMuCnRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyB8fCBl
bmFibGVfc3RhdGljPXllcwpBQ19NU0dfUkVTVUxUKFskZW5hYmxlX3N0YXRpY10pCgpfTFRfQUNf
VEFHVkFSKEdDQywgJDEpPSIkRzc3IgpfTFRfQUNfVEFHVkFSKExELCAkMSk9IiRMRCIKCkFDX0xJ
QlRPT0xfUFJPR19DT01QSUxFUl9QSUMoJDEpCkFDX0xJQlRPT0xfUFJPR19DQ19DX08oJDEpCkFD
X0xJQlRPT0xfU1lTX0hBUkRfTElOS19MT0NLUygkMSkKQUNfTElCVE9PTF9QUk9HX0xEX1NITElC
UygkMSkKQUNfTElCVE9PTF9TWVNfRFlOQU1JQ19MSU5LRVIoJDEpCkFDX0xJQlRPT0xfUFJPR19M
RF9IQVJEQ09ERV9MSUJQQVRIKCQxKQoKQUNfTElCVE9PTF9DT05GSUcoJDEpCgpBQ19MQU5HX1BP
UApDQz0iJGx0X3NhdmVfQ0MiCl0pIyBBQ19MSUJUT09MX0xBTkdfRjc3X0NPTkZJRwoKCiMgQUNf
TElCVE9PTF9MQU5HX0dDSl9DT05GSUcKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEVu
c3VyZSB0aGF0IHRoZSBjb25maWd1cmF0aW9uIHZhcnMgZm9yIHRoZSBDIGNvbXBpbGVyIGFyZQoj
IHN1aXRhYmx5IGRlZmluZWQuICBUaG9zZSB2YXJpYWJsZXMgYXJlIHN1YnNlcXVlbnRseSB1c2Vk
IGJ5CiMgQUNfTElCVE9PTF9DT05GSUcgdG8gd3JpdGUgdGhlIGNvbXBpbGVyIGNvbmZpZ3VyYXRp
b24gdG8gYGxpYnRvb2wnLgpBQ19ERUZVTihbQUNfTElCVE9PTF9MQU5HX0dDSl9DT05GSUddLCBb
X0xUX0FDX0xBTkdfR0NKX0NPTkZJRyhHQ0opXSkKQUNfREVGVU4oW19MVF9BQ19MQU5HX0dDSl9D
T05GSUddLApbQUNfTEFOR19TQVZFCgojIFNvdXJjZSBmaWxlIGV4dGVuc2lvbiBmb3IgSmF2YSB0
ZXN0IHNvdXJjZXMuCmFjX2V4dD1qYXZhCgojIE9iamVjdCBmaWxlIGV4dGVuc2lvbiBmb3IgY29t
cGlsZWQgSmF2YSB0ZXN0IHNvdXJjZXMuCm9iamV4dD1vCl9MVF9BQ19UQUdWQVIob2JqZXh0LCAk
MSk9JG9iamV4dAoKIyBDb2RlIHRvIGJlIHVzZWQgaW4gc2ltcGxlIGNvbXBpbGUgdGVzdHMKbHRf
c2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlPSJjbGFzcyBmb28ge31cbiIKCiMgQ29kZSB0byBiZSB1
c2VkIGluIHNpbXBsZSBsaW5rIHRlc3RzCmx0X3NpbXBsZV9saW5rX3Rlc3RfY29kZT0ncHVibGlj
IGNsYXNzIGNvbmZ0ZXN0IHsgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW1tdXSBhcmd2
KSB7fTsgfVxuJwoKIyBsdG1haW4gb25seSB1c2VzICRDQyBmb3IgdGFnZ2VkIGNvbmZpZ3VyYXRp
b25zIHNvIG1ha2Ugc3VyZSAkQ0MgaXMgc2V0LgpfTFRfQUNfU1lTX0NPTVBJTEVSCgojIHNhdmUg
d2FybmluZ3MvYm9pbGVycGxhdGUgb2Ygc2ltcGxlIHRlc3QgY29kZQpfTFRfQ09NUElMRVJfQk9J
TEVSUExBVEUKX0xUX0xJTktFUl9CT0lMRVJQTEFURQoKIyBBbGxvdyBDQyB0byBiZSBhIHByb2dy
YW0gbmFtZSB3aXRoIGFyZ3VtZW50cy4KbHRfc2F2ZV9DQz0iJENDIgpDQz0ke0dDSi0iZ2NqIn0K
Y29tcGlsZXI9JENDCl9MVF9BQ19UQUdWQVIoY29tcGlsZXIsICQxKT0kQ0MKX0xUX0NDX0JBU0VO
QU1FKFskY29tcGlsZXJdKQoKIyBHQ0ogZGlkIG5vdCBleGlzdCBhdCB0aGUgdGltZSBHQ0MgZGlk
bid0IGltcGxpY2l0bHkgbGluayBsaWJjIGluLgpfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19u
ZWVkX2xjLCAkMSk9bm8KCl9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfY21kcywgJDEpPSRvbGRf
YXJjaGl2ZV9jbWRzCgpBQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRUSSgkMSkKQUNfTElC
VE9PTF9QUk9HX0NPTVBJTEVSX1BJQygkMSkKQUNfTElCVE9PTF9QUk9HX0NDX0NfTygkMSkKQUNf
TElCVE9PTF9TWVNfSEFSRF9MSU5LX0xPQ0tTKCQxKQpBQ19MSUJUT09MX1BST0dfTERfU0hMSUJT
KCQxKQpBQ19MSUJUT09MX1NZU19EWU5BTUlDX0xJTktFUigkMSkKQUNfTElCVE9PTF9QUk9HX0xE
X0hBUkRDT0RFX0xJQlBBVEgoJDEpCgpBQ19MSUJUT09MX0NPTkZJRygkMSkKCkFDX0xBTkdfUkVT
VE9SRQpDQz0iJGx0X3NhdmVfQ0MiCl0pIyBBQ19MSUJUT09MX0xBTkdfR0NKX0NPTkZJRwoKCiMg
QUNfTElCVE9PTF9MQU5HX1JDX0NPTkZJRwojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBF
bnN1cmUgdGhhdCB0aGUgY29uZmlndXJhdGlvbiB2YXJzIGZvciB0aGUgV2luZG93cyByZXNvdXJj
ZSBjb21waWxlciBhcmUKIyBzdWl0YWJseSBkZWZpbmVkLiAgVGhvc2UgdmFyaWFibGVzIGFyZSBz
dWJzZXF1ZW50bHkgdXNlZCBieQojIEFDX0xJQlRPT0xfQ09ORklHIHRvIHdyaXRlIHRoZSBjb21w
aWxlciBjb25maWd1cmF0aW9uIHRvIGBsaWJ0b29sJy4KQUNfREVGVU4oW0FDX0xJQlRPT0xfTEFO
R19SQ19DT05GSUddLCBbX0xUX0FDX0xBTkdfUkNfQ09ORklHKFJDKV0pCkFDX0RFRlVOKFtfTFRf
QUNfTEFOR19SQ19DT05GSUddLApbQUNfTEFOR19TQVZFCgojIFNvdXJjZSBmaWxlIGV4dGVuc2lv
biBmb3IgUkMgdGVzdCBzb3VyY2VzLgphY19leHQ9cmMKCiMgT2JqZWN0IGZpbGUgZXh0ZW5zaW9u
IGZvciBjb21waWxlZCBSQyB0ZXN0IHNvdXJjZXMuCm9iamV4dD1vCl9MVF9BQ19UQUdWQVIob2Jq
ZXh0LCAkMSk9JG9iamV4dAoKIyBDb2RlIHRvIGJlIHVzZWQgaW4gc2ltcGxlIGNvbXBpbGUgdGVz
dHMKbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlPSdzYW1wbGUgTUVOVSB7IE1FTlVJVEVNICIm
U291cCIsIDEwMCwgQ0hFQ0tFRCB9XG4nCgojIENvZGUgdG8gYmUgdXNlZCBpbiBzaW1wbGUgbGlu
ayB0ZXN0cwpsdF9zaW1wbGVfbGlua190ZXN0X2NvZGU9IiRsdF9zaW1wbGVfY29tcGlsZV90ZXN0
X2NvZGUiCgojIGx0bWFpbiBvbmx5IHVzZXMgJENDIGZvciB0YWdnZWQgY29uZmlndXJhdGlvbnMg
c28gbWFrZSBzdXJlICRDQyBpcyBzZXQuCl9MVF9BQ19TWVNfQ09NUElMRVIKCiMgc2F2ZSB3YXJu
aW5ncy9ib2lsZXJwbGF0ZSBvZiBzaW1wbGUgdGVzdCBjb2RlCl9MVF9DT01QSUxFUl9CT0lMRVJQ
TEFURQpfTFRfTElOS0VSX0JPSUxFUlBMQVRFCgojIEFsbG93IENDIHRvIGJlIGEgcHJvZ3JhbSBu
YW1lIHdpdGggYXJndW1lbnRzLgpsdF9zYXZlX0NDPSIkQ0MiCkNDPSR7UkMtIndpbmRyZXMifQpj
b21waWxlcj0kQ0MKX0xUX0FDX1RBR1ZBUihjb21waWxlciwgJDEpPSRDQwpfTFRfQ0NfQkFTRU5B
TUUoWyRjb21waWxlcl0pCl9MVF9BQ19UQUdWQVIobHRfY3ZfcHJvZ19jb21waWxlcl9jX28sICQx
KT15ZXMKCkFDX0xJQlRPT0xfQ09ORklHKCQxKQoKQUNfTEFOR19SRVNUT1JFCkNDPSIkbHRfc2F2
ZV9DQyIKXSkjIEFDX0xJQlRPT0xfTEFOR19SQ19DT05GSUcKCgojIEFDX0xJQlRPT0xfQ09ORklH
KFtUQUdOQU1FXSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSWYgVEFHTkFNRSBp
cyBub3QgcGFzc2VkLCB0aGVuIGNyZWF0ZSBhbiBpbml0aWFsIGxpYnRvb2wgc2NyaXB0CiMgd2l0
aCBhIGRlZmF1bHQgY29uZmlndXJhdGlvbiBmcm9tIHRoZSB1bnRhZ2dlZCBjb25maWcgdmFycy4g
IE90aGVyd2lzZQojIGFkZCBjb2RlIHRvIGNvbmZpZy5zdGF0dXMgZm9yIGFwcGVuZGluZyB0aGUg
Y29uZmlndXJhdGlvbiBuYW1lZCBieQojIFRBR05BTUUgZnJvbSB0aGUgbWF0Y2hpbmcgdGFnZ2Vk
IGNvbmZpZyB2YXJzLgpBQ19ERUZVTihbQUNfTElCVE9PTF9DT05GSUddLApbIyBUaGUgZWxzZSBj
bGF1c2Ugc2hvdWxkIG9ubHkgZmlyZSB3aGVuIGJvb3RzdHJhcHBpbmcgdGhlCiMgbGlidG9vbCBk
aXN0cmlidXRpb24sIG90aGVyd2lzZSB5b3UgZm9yZ290IHRvIHNoaXAgbHRtYWluLnNoCiMgd2l0
aCB5b3VyIHBhY2thZ2UsIGFuZCB5b3Ugd2lsbCBnZXQgY29tcGxhaW50cyB0aGF0IHRoZXJlIGFy
ZQojIG5vIHJ1bGVzIHRvIGdlbmVyYXRlIGx0bWFpbi5zaC4KaWYgdGVzdCAtZiAiJGx0bWFpbiI7
IHRoZW4KICAjIFNlZSBpZiB3ZSBhcmUgcnVubmluZyBvbiB6c2gsIGFuZCBzZXQgdGhlIG9wdGlv
bnMgd2hpY2ggYWxsb3cgb3VyIGNvbW1hbmRzIHRocm91Z2gKICAjIHdpdGhvdXQgcmVtb3ZhbCBv
ZiBcIGVzY2FwZXMuCiAgaWYgdGVzdCAtbiAiJHtaU0hfVkVSU0lPTitzZXR9IiA7IHRoZW4KICAg
IHNldG9wdCBOT19HTE9CX1NVQlNUCiAgZmkKICAjIE5vdyBxdW90ZSBhbGwgdGhlIHRoaW5ncyB0
aGF0IG1heSBjb250YWluIG1ldGFjaGFyYWN0ZXJzIHdoaWxlIGJlaW5nCiAgIyBjYXJlZnVsIG5v
dCB0byBvdmVycXVvdGUgdGhlIEFDX1NVQlNUZWQgdmFsdWVzLiAgV2UgdGFrZSBjb3BpZXMgb2Yg
dGhlCiAgIyB2YXJpYWJsZXMgYW5kIHF1b3RlIHRoZSBjb3BpZXMgZm9yIGdlbmVyYXRpb24gb2Yg
dGhlIGxpYnRvb2wgc2NyaXB0LgogIGZvciB2YXIgaW4gZWNobyBvbGRfQ0Mgb2xkX0NGTEFHUyBB
UiBBUl9GTEFHUyBFR1JFUCBSQU5MSUIgTE5fUyBMVENDIExUQ0ZMQUdTIE5NIFwKICAgIFNFRCBT
SEVMTCBTVFJJUCBcCiAgICBsaWJuYW1lX3NwZWMgbGlicmFyeV9uYW1lc19zcGVjIHNvbmFtZV9z
cGVjIGV4dHJhY3RfZXhwc3ltc19jbWRzIFwKICAgIG9sZF9zdHJpcGxpYiBzdHJpcGxpYiBmaWxl
X21hZ2ljX2NtZCBmaW5pc2hfY21kcyBmaW5pc2hfZXZhbCBcCiAgICBkZXBsaWJzX2NoZWNrX21l
dGhvZCByZWxvYWRfZmxhZyByZWxvYWRfY21kcyBuZWVkX2xvY2tzIFwKICAgIGx0X2N2X3N5c19n
bG9iYWxfc3ltYm9sX3BpcGUgbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY2RlY2wgXAogICAg
bHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3MgXAogICAgc3lzX2xpYl9z
ZWFyY2hfcGF0aF9zcGVjIHN5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjIFwKICAgIG9sZF9wb3N0
aW5zdGFsbF9jbWRzIG9sZF9wb3N0dW5pbnN0YWxsX2NtZHMgXAogICAgX0xUX0FDX1RBR1ZBUihj
b21waWxlciwgJDEpIFwKICAgIF9MVF9BQ19UQUdWQVIoQ0MsICQxKSBcCiAgICBfTFRfQUNfVEFH
VkFSKExELCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSkg
XAogICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpIFwKICAgIF9MVF9B
Q19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfbm9fYnVpbHRpbl9mbGFnLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZB
UihleHBvcnRfZHluYW1pY19mbGFnX3NwZWMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKHRocmVh
ZF9zYWZlX2ZsYWdfc3BlYywgJDEpIFwKICAgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9m
bGFnX3NwZWMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKGVuYWJsZV9zaGFyZWRfd2l0aF9zdGF0
aWNfcnVudGltZXMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQx
KSBcCiAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2Zyb21fbmV3X2NtZHMsICQxKSBcCiAg
ICBfTFRfQUNfVEFHVkFSKHByZWRlcF9vYmplY3RzLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihw
b3N0ZGVwX29iamVjdHMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKHByZWRlcHMsICQxKSBcCiAg
ICBfTFRfQUNfVEFHVkFSKHBvc3RkZXBzLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihjb21waWxl
cl9saWJfc2VhcmNoX3BhdGgsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpIFwKICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpIFwKICAgIF9M
VF9BQ19UQUdWQVIocG9zdGluc3RhbGxfY21kcywgJDEpIFwKICAgIF9MVF9BQ19UQUdWQVIocG9z
dHVuaW5zdGFsbF9jbWRzLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9mcm9t
X2V4cHN5bXNfY21kcywgJDEpIFwKICAgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2Zs
YWcsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSkgXAogICAg
X0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjX2xkLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfc2VwYXJhdG9yLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9hdXRv
bWF0aWMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKG1vZHVsZV9jbWRzLCAkMSkgXAogICAgX0xU
X0FDX1RBR1ZBUihtb2R1bGVfZXhwc3ltX2NtZHMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKGx0
X2N2X3Byb2dfY29tcGlsZXJfY19vLCAkMSkgXAogICAgX0xUX0FDX1RBR1ZBUihleGNsdWRlX2V4
cHN5bXMsICQxKSBcCiAgICBfTFRfQUNfVEFHVkFSKGluY2x1ZGVfZXhwc3ltcywgJDEpOyBkbwoK
ICAgIGNhc2UgJHZhciBpbgogICAgX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAkMSkg
fCBcCiAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2Zyb21fbmV3X2NtZHMsICQxKSB8IFwK
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSkgfCBcCiAgICBfTFRfQUNfVEFHVkFS
KGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKSB8IFwKICAgIF9MVF9BQ19UQUdWQVIobW9kdWxlX2Nt
ZHMsICQxKSB8IFwKICAgIF9MVF9BQ19UQUdWQVIobW9kdWxlX2V4cHN5bV9jbWRzLCAkMSkgfCBc
CiAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2Zyb21fZXhwc3ltc19jbWRzLCAkMSkgfCBc
CiAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9zeW1ib2xzX2NtZHMsICQxKSB8IFwKICAgIGV4dHJh
Y3RfZXhwc3ltc19jbWRzIHwgcmVsb2FkX2NtZHMgfCBmaW5pc2hfY21kcyB8IFwKICAgIHBvc3Rp
bnN0YWxsX2NtZHMgfCBwb3N0dW5pbnN0YWxsX2NtZHMgfCBcCiAgICBvbGRfcG9zdGluc3RhbGxf
Y21kcyB8IG9sZF9wb3N0dW5pbnN0YWxsX2NtZHMgfCBcCiAgICBzeXNfbGliX3NlYXJjaF9wYXRo
X3NwZWMgfCBzeXNfbGliX2Rsc2VhcmNoX3BhdGhfc3BlYykKICAgICAgIyBEb3VibGUtcXVvdGUg
ZG91YmxlLWV2YWxlZCBzdHJpbmdzLgogICAgICBldmFsICJsdF8kdmFyPVxcXCJcYFwkZWNobyBc
IlhcJCR2YXJcIiB8IFwkWHNlZCAtZSBcIlwkZG91YmxlX3F1b3RlX3N1YnN0XCIgLWUgXCJcJHNl
ZF9xdW90ZV9zdWJzdFwiIC1lIFwiXCRkZWxheV92YXJpYWJsZV9zdWJzdFwiXGBcXFwiIgogICAg
ICA7OwogICAgKikKICAgICAgZXZhbCAibHRfJHZhcj1cXFwiXGBcJGVjaG8gXCJYXCQkdmFyXCIg
fCBcJFhzZWQgLWUgXCJcJHNlZF9xdW90ZV9zdWJzdFwiXGBcXFwiIgogICAgICA7OwogICAgZXNh
YwogIGRvbmUKCiAgY2FzZSAkbHRfZWNobyBpbgogIConXFskXTAgLS1mYWxsYmFjay1lY2hvIicp
CiAgICBsdF9lY2hvPWAkZWNobyAiWCRsdF9lY2hvIiB8ICRYc2VkIC1lICdzL1xcXFxcXFxbJF0w
IC0tZmFsbGJhY2stZWNobyJbJF0vWyRdMCAtLWZhbGxiYWNrLWVjaG8iLydgCiAgICA7OwogIGVz
YWMKCmlmZWxzZShbJDFdLCBbXSwKICBbY2ZnZmlsZT0iJHtvZmlsZX1UIgogIHRyYXAgIiRybSBc
IiRjZmdmaWxlXCI7IGV4aXQgMSIgMSAyIDE1CiAgJHJtIC1mICIkY2ZnZmlsZSIKICBBQ19NU0df
Tk9USUNFKFtjcmVhdGluZyAkb2ZpbGVdKV0sCiAgW2NmZ2ZpbGU9IiRvZmlsZSJdKQoKICBjYXQg
PDxfX0VPRl9fID4+ICIkY2ZnZmlsZSIKaWZlbHNlKFskMV0sIFtdLApbIyEgJFNIRUxMCgojIGAk
ZWNobyAiJGNmZ2ZpbGUiIHwgc2VkICdzJV4uKi8lJSdgIC0gUHJvdmlkZSBnZW5lcmFsaXplZCBs
aWJyYXJ5LWJ1aWxkaW5nIHN1cHBvcnQgc2VydmljZXMuCiMgR2VuZXJhdGVkIGF1dG9tYXRpY2Fs
bHkgYnkgJFBST0dSQU0gKEdOVSAkUEFDS0FHRSAkVkVSU0lPTiRUSU1FU1RBTVApCiMgTk9URTog
Q2hhbmdlcyBtYWRlIHRvIHRoaXMgZmlsZSB3aWxsIGJlIGxvc3Q6IGxvb2sgYXQgbHRtYWluLnNo
LgojCiMgQ29weXJpZ2h0IChDKSAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxCiMg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMKIyBUaGlzIGZpbGUgaXMgcGFydCBvZiBH
TlUgTGlidG9vbDoKIyBPcmlnaW5hbGx5IGJ5IEdvcmRvbiBNYXR6aWdrZWl0IDxnb3JkQGdudS5h
aS5taXQuZWR1PiwgMTk5NgojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj
YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9y
CiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBp
cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQKIyBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg
U2VlIHRoZSBHTlUKIyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMK
IyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRo
ZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBG
aWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCiMKIyBBcyBhIHNwZWNpYWwg
ZXhjZXB0aW9uIHRvIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgaWYgeW91CiMgZGlz
dHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBhIHByb2dyYW0gdGhhdCBjb250YWlucyBhCiMg
Y29uZmlndXJhdGlvbiBzY3JpcHQgZ2VuZXJhdGVkIGJ5IEF1dG9jb25mLCB5b3UgbWF5IGluY2x1
ZGUgaXQgdW5kZXIKIyB0aGUgc2FtZSBkaXN0cmlidXRpb24gdGVybXMgdGhhdCB5b3UgdXNlIGZv
ciB0aGUgcmVzdCBvZiB0aGF0IHByb2dyYW0uCgojIEEgc2VkIHByb2dyYW0gdGhhdCBkb2VzIG5v
dCB0cnVuY2F0ZSBvdXRwdXQuClNFRD0kbHRfU0VECgojIFNlZCB0aGF0IGhlbHBzIHVzIGF2b2lk
IGFjY2lkZW50YWxseSB0cmlnZ2VyaW5nIGVjaG8oMSkgb3B0aW9ucyBsaWtlIC1uLgpYc2VkPSIk
U0VEIC1lIDFzL15YLy8iCgojIFRoZSBIUC1VWCBrc2ggYW5kIFBPU0lYIHNoZWxsIHByaW50IHRo
ZSB0YXJnZXQgZGlyZWN0b3J5IHRvIHN0ZG91dAojIGlmIENEUEFUSCBpcyBzZXQuCih1bnNldCBD
RFBBVEgpID4vZGV2L251bGwgMj4mMSAmJiB1bnNldCBDRFBBVEgKCiMgVGhlIG5hbWVzIG9mIHRo
ZSB0YWdnZWQgY29uZmlndXJhdGlvbnMgc3VwcG9ydGVkIGJ5IHRoaXMgc2NyaXB0LgphdmFpbGFi
bGVfdGFncz0KCiMgIyMjIEJFR0lOIExJQlRPT0wgQ09ORklHXSwKWyMgIyMjIEJFR0lOIExJQlRP
T0wgVEFHIENPTkZJRzogJHRhZ25hbWVdKQoKIyBMaWJ0b29sIHdhcyBjb25maWd1cmVkIG9uIGhv
c3QgYChob3N0bmFtZSB8fCB1bmFtZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgOgoKIyBTaGVs
bCB0byB1c2Ugd2hlbiBpbnZva2luZyBzaGVsbCBzY3JpcHRzLgpTSEVMTD0kbHRfU0hFTEwKCiMg
V2hldGhlciBvciBub3QgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmllcy4KYnVpbGRfbGlidG9vbF9s
aWJzPSRlbmFibGVfc2hhcmVkCgojIFdoZXRoZXIgb3Igbm90IHRvIGJ1aWxkIHN0YXRpYyBsaWJy
YXJpZXMuCmJ1aWxkX29sZF9saWJzPSRlbmFibGVfc3RhdGljCgojIFdoZXRoZXIgb3Igbm90IHRv
IGFkZCAtbGMgZm9yIGJ1aWxkaW5nIHNoYXJlZCBsaWJyYXJpZXMuCmJ1aWxkX2xpYnRvb2xfbmVl
ZF9sYz0kX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpCgojIFdoZXRoZXIg
b3Igbm90IHRvIGRpc2FsbG93IHNoYXJlZCBsaWJzIHdoZW4gcnVudGltZSBsaWJzIGFyZSBzdGF0
aWMKYWxsb3dfbGlidG9vbF9saWJzX3dpdGhfc3RhdGljX3J1bnRpbWVzPSRfTFRfQUNfVEFHVkFS
KGVuYWJsZV9zaGFyZWRfd2l0aF9zdGF0aWNfcnVudGltZXMsICQxKQoKIyBXaGV0aGVyIG9yIG5v
dCB0byBvcHRpbWl6ZSBmb3IgZmFzdCBpbnN0YWxsYXRpb24uCmZhc3RfaW5zdGFsbD0kZW5hYmxl
X2Zhc3RfaW5zdGFsbAoKIyBUaGUgaG9zdCBzeXN0ZW0uCmhvc3RfYWxpYXM9JGhvc3RfYWxpYXMK
aG9zdD0kaG9zdApob3N0X29zPSRob3N0X29zCgojIFRoZSBidWlsZCBzeXN0ZW0uCmJ1aWxkX2Fs
aWFzPSRidWlsZF9hbGlhcwpidWlsZD0kYnVpbGQKYnVpbGRfb3M9JGJ1aWxkX29zCgojIEFuIGVj
aG8gcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGludGVycHJldCBiYWNrc2xhc2hlcy4KZWNobz0kbHRf
ZWNobwoKIyBUaGUgYXJjaGl2ZXIuCkFSPSRsdF9BUgpBUl9GTEFHUz0kbHRfQVJfRkxBR1MKCiMg
QSBDIGNvbXBpbGVyLgpMVENDPSRsdF9MVENDCgojIExUQ0MgY29tcGlsZXIgZmxhZ3MuCkxUQ0ZM
QUdTPSRsdF9MVENGTEFHUwoKIyBBIGxhbmd1YWdlLXNwZWNpZmljIGNvbXBpbGVyLgpDQz0kbHRf
W11fTFRfQUNfVEFHVkFSKGNvbXBpbGVyLCAkMSkKCiMgSXMgdGhlIGNvbXBpbGVyIHRoZSBHTlUg
QyBjb21waWxlcj8Kd2l0aF9nY2M9JF9MVF9BQ19UQUdWQVIoR0NDLCAkMSkKCiMgQW4gRVJFIG1h
dGNoZXIuCkVHUkVQPSRsdF9FR1JFUAoKIyBUaGUgbGlua2VyIHVzZWQgdG8gYnVpbGQgbGlicmFy
aWVzLgpMRD0kbHRfW11fTFRfQUNfVEFHVkFSKExELCAkMSkKCiMgV2hldGhlciB3ZSBuZWVkIGhh
cmQgb3Igc29mdCBsaW5rcy4KTE5fUz0kbHRfTE5fUwoKIyBBIEJTRC1jb21wYXRpYmxlIG5tIHBy
b2dyYW0uCk5NPSRsdF9OTQoKIyBBIHN5bWJvbCBzdHJpcHBpbmcgcHJvZ3JhbQpTVFJJUD0kbHRf
U1RSSVAKCiMgVXNlZCB0byBleGFtaW5lIGxpYnJhcmllcyB3aGVuIGZpbGVfbWFnaWNfY21kIGJl
Z2lucyAiZmlsZSIKTUFHSUNfQ01EPSRNQUdJQ19DTUQKCiMgVXNlZCBvbiBjeWd3aW46IERMTCBj
cmVhdGlvbiBwcm9ncmFtLgpETExUT09MPSIkRExMVE9PTCIKCiMgVXNlZCBvbiBjeWd3aW46IG9i
amVjdCBkdW1wZXIuCk9CSkRVTVA9IiRPQkpEVU1QIgoKIyBVc2VkIG9uIGN5Z3dpbjogYXNzZW1i
bGVyLgpBUz0iJEFTIgoKIyBUaGUgbmFtZSBvZiB0aGUgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMg
dGVtcG9yYXJ5IGxpYnRvb2wgZmlsZXMuCm9iamRpcj0kb2JqZGlyCgojIEhvdyB0byBjcmVhdGUg
cmVsb2FkYWJsZSBvYmplY3QgZmlsZXMuCnJlbG9hZF9mbGFnPSRsdF9yZWxvYWRfZmxhZwpyZWxv
YWRfY21kcz0kbHRfcmVsb2FkX2NtZHMKCiMgSG93IHRvIHBhc3MgYSBsaW5rZXIgZmxhZyB0aHJv
dWdoIHRoZSBjb21waWxlci4Kd2w9JGx0X1tdX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X3dsLCAkMSkKCiMgT2JqZWN0IGZpbGUgc3VmZml4IChub3JtYWxseSAibyIpLgpvYmpleHQ9IiRh
Y19vYmpleHQiCgojIE9sZCBhcmNoaXZlIHN1ZmZpeCAobm9ybWFsbHkgImEiKS4KbGliZXh0PSIk
bGliZXh0IgoKIyBTaGFyZWQgbGlicmFyeSBzdWZmaXggKG5vcm1hbGx5ICIuc28iKS4Kc2hyZXh0
X2NtZHM9JyRzaHJleHRfY21kcycKCiMgRXhlY3V0YWJsZSBmaWxlIHN1ZmZpeCAobm9ybWFsbHkg
IiIpLgpleGVleHQ9IiRleGVleHQiCgojIEFkZGl0aW9uYWwgY29tcGlsZXIgZmxhZ3MgZm9yIGJ1
aWxkaW5nIGxpYnJhcnkgb2JqZWN0cy4KcGljX2ZsYWc9JGx0X1tdX0xUX0FDX1RBR1ZBUihsdF9w
cm9nX2NvbXBpbGVyX3BpYywgJDEpCnBpY19tb2RlPSRwaWNfbW9kZQoKIyBXaGF0IGlzIHRoZSBt
YXhpbXVtIGxlbmd0aCBvZiBhIGNvbW1hbmQ/Cm1heF9jbWRfbGVuPSRsdF9jdl9zeXNfbWF4X2Nt
ZF9sZW4KCiMgRG9lcyBjb21waWxlciBzaW11bHRhbmVvdXNseSBzdXBwb3J0IC1jIGFuZCAtbyBv
cHRpb25zPwpjb21waWxlcl9jX289JGx0X1tdX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBp
bGVyX2NfbywgJDEpCgojIE11c3Qgd2UgbG9jayBmaWxlcyB3aGVuIGRvaW5nIGNvbXBpbGF0aW9u
PwpuZWVkX2xvY2tzPSRsdF9uZWVkX2xvY2tzCgojIERvIHdlIG5lZWQgdGhlIGxpYiBwcmVmaXgg
Zm9yIG1vZHVsZXM/Cm5lZWRfbGliX3ByZWZpeD0kbmVlZF9saWJfcHJlZml4CgojIERvIHdlIG5l
ZWQgYSB2ZXJzaW9uIGZvciBsaWJyYXJpZXM/Cm5lZWRfdmVyc2lvbj0kbmVlZF92ZXJzaW9uCgoj
IFdoZXRoZXIgZGxvcGVuIGlzIHN1cHBvcnRlZC4KZGxvcGVuX3N1cHBvcnQ9JGVuYWJsZV9kbG9w
ZW4KCiMgV2hldGhlciBkbG9wZW4gb2YgcHJvZ3JhbXMgaXMgc3VwcG9ydGVkLgpkbG9wZW5fc2Vs
Zj0kZW5hYmxlX2Rsb3Blbl9zZWxmCgojIFdoZXRoZXIgZGxvcGVuIG9mIHN0YXRpY2FsbHkgbGlu
a2VkIHByb2dyYW1zIGlzIHN1cHBvcnRlZC4KZGxvcGVuX3NlbGZfc3RhdGljPSRlbmFibGVfZGxv
cGVuX3NlbGZfc3RhdGljCgojIENvbXBpbGVyIGZsYWcgdG8gcHJldmVudCBkeW5hbWljIGxpbmtp
bmcuCmxpbmtfc3RhdGljX2ZsYWc9JGx0X1tdX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X3N0YXRpYywgJDEpCgojIENvbXBpbGVyIGZsYWcgdG8gdHVybiBvZmYgYnVpbHRpbiBmdW5jdGlv
bnMuCm5vX2J1aWx0aW5fZmxhZz0kbHRfW11fTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJf
bm9fYnVpbHRpbl9mbGFnLCAkMSkKCiMgQ29tcGlsZXIgZmxhZyB0byBhbGxvdyByZWZsZXhpdmUg
ZGxvcGVucy4KZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjPSRsdF9bXV9MVF9BQ19UQUdWQVIoZXhw
b3J0X2R5bmFtaWNfZmxhZ19zcGVjLCAkMSkKCiMgQ29tcGlsZXIgZmxhZyB0byBnZW5lcmF0ZSBz
aGFyZWQgb2JqZWN0cyBkaXJlY3RseSBmcm9tIGFyY2hpdmVzLgp3aG9sZV9hcmNoaXZlX2ZsYWdf
c3BlYz0kbHRfW11fTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSkKCiMg
Q29tcGlsZXIgZmxhZyB0byBnZW5lcmF0ZSB0aHJlYWQtc2FmZSBvYmplY3RzLgp0aHJlYWRfc2Fm
ZV9mbGFnX3NwZWM9JGx0X1tdX0xUX0FDX1RBR1ZBUih0aHJlYWRfc2FmZV9mbGFnX3NwZWMsICQx
KQoKIyBMaWJyYXJ5IHZlcnNpb25pbmcgdHlwZS4KdmVyc2lvbl90eXBlPSR2ZXJzaW9uX3R5cGUK
CiMgRm9ybWF0IG9mIGxpYnJhcnkgbmFtZSBwcmVmaXguCmxpYm5hbWVfc3BlYz0kbHRfbGlibmFt
ZV9zcGVjCgojIExpc3Qgb2YgYXJjaGl2ZSBuYW1lcy4gIEZpcnN0IG5hbWUgaXMgdGhlIHJlYWwg
b25lLCB0aGUgcmVzdCBhcmUgbGlua3MuCiMgVGhlIGxhc3QgbmFtZSBpcyB0aGUgb25lIHRoYXQg
dGhlIGxpbmtlciBmaW5kcyB3aXRoIC1sTkFNRS4KbGlicmFyeV9uYW1lc19zcGVjPSRsdF9saWJy
YXJ5X25hbWVzX3NwZWMKCiMgVGhlIGNvZGVkIG5hbWUgb2YgdGhlIGxpYnJhcnksIGlmIGRpZmZl
cmVudCBmcm9tIHRoZSByZWFsIG5hbWUuCnNvbmFtZV9zcGVjPSRsdF9zb25hbWVfc3BlYwoKIyBD
b21tYW5kcyB1c2VkIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIGFuIG9sZC1zdHlsZSBhcmNoaXZlLgpS
QU5MSUI9JGx0X1JBTkxJQgpvbGRfYXJjaGl2ZV9jbWRzPSRsdF9bXV9MVF9BQ19UQUdWQVIob2xk
X2FyY2hpdmVfY21kcywgJDEpCm9sZF9wb3N0aW5zdGFsbF9jbWRzPSRsdF9vbGRfcG9zdGluc3Rh
bGxfY21kcwpvbGRfcG9zdHVuaW5zdGFsbF9jbWRzPSRsdF9vbGRfcG9zdHVuaW5zdGFsbF9jbWRz
CgojIENyZWF0ZSBhbiBvbGQtc3R5bGUgYXJjaGl2ZSBmcm9tIGEgc2hhcmVkIGFyY2hpdmUuCm9s
ZF9hcmNoaXZlX2Zyb21fbmV3X2NtZHM9JGx0X1tdX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9m
cm9tX25ld19jbWRzLCAkMSkKCiMgQ3JlYXRlIGEgdGVtcG9yYXJ5IG9sZC1zdHlsZSBhcmNoaXZl
IHRvIGxpbmsgaW5zdGVhZCBvZiBhIHNoYXJlZCBhcmNoaXZlLgpvbGRfYXJjaGl2ZV9mcm9tX2V4
cHN5bXNfY21kcz0kbHRfW11fTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2Zyb21fZXhwc3ltc19j
bWRzLCAkMSkKCiMgQ29tbWFuZHMgdXNlZCB0byBidWlsZCBhbmQgaW5zdGFsbCBhIHNoYXJlZCBh
cmNoaXZlLgphcmNoaXZlX2NtZHM9JGx0X1tdX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQx
KQphcmNoaXZlX2V4cHN5bV9jbWRzPSRsdF9bXV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1f
Y21kcywgJDEpCnBvc3RpbnN0YWxsX2NtZHM9JGx0X3Bvc3RpbnN0YWxsX2NtZHMKcG9zdHVuaW5z
dGFsbF9jbWRzPSRsdF9wb3N0dW5pbnN0YWxsX2NtZHMKCiMgQ29tbWFuZHMgdXNlZCB0byBidWls
ZCBhIGxvYWRhYmxlIG1vZHVsZSAoYXNzdW1lZCBzYW1lIGFzIGFib3ZlIGlmIGVtcHR5KQptb2R1
bGVfY21kcz0kbHRfW11fTFRfQUNfVEFHVkFSKG1vZHVsZV9jbWRzLCAkMSkKbW9kdWxlX2V4cHN5
bV9jbWRzPSRsdF9bXV9MVF9BQ19UQUdWQVIobW9kdWxlX2V4cHN5bV9jbWRzLCAkMSkKCiMgQ29t
bWFuZHMgdG8gc3RyaXAgbGlicmFyaWVzLgpvbGRfc3RyaXBsaWI9JGx0X29sZF9zdHJpcGxpYgpz
dHJpcGxpYj0kbHRfc3RyaXBsaWIKCiMgRGVwZW5kZW5jaWVzIHRvIHBsYWNlIGJlZm9yZSB0aGUg
b2JqZWN0cyBiZWluZyBsaW5rZWQgdG8gY3JlYXRlIGEKIyBzaGFyZWQgbGlicmFyeS4KcHJlZGVw
X29iamVjdHM9JGx0X1tdX0xUX0FDX1RBR1ZBUihwcmVkZXBfb2JqZWN0cywgJDEpCgojIERlcGVu
ZGVuY2llcyB0byBwbGFjZSBhZnRlciB0aGUgb2JqZWN0cyBiZWluZyBsaW5rZWQgdG8gY3JlYXRl
IGEKIyBzaGFyZWQgbGlicmFyeS4KcG9zdGRlcF9vYmplY3RzPSRsdF9bXV9MVF9BQ19UQUdWQVIo
cG9zdGRlcF9vYmplY3RzLCAkMSkKCiMgRGVwZW5kZW5jaWVzIHRvIHBsYWNlIGJlZm9yZSB0aGUg
b2JqZWN0cyBiZWluZyBsaW5rZWQgdG8gY3JlYXRlIGEKIyBzaGFyZWQgbGlicmFyeS4KcHJlZGVw
cz0kbHRfW11fTFRfQUNfVEFHVkFSKHByZWRlcHMsICQxKQoKIyBEZXBlbmRlbmNpZXMgdG8gcGxh
Y2UgYWZ0ZXIgdGhlIG9iamVjdHMgYmVpbmcgbGlua2VkIHRvIGNyZWF0ZSBhCiMgc2hhcmVkIGxp
YnJhcnkuCnBvc3RkZXBzPSRsdF9bXV9MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKQoKIyBUaGUg
bGlicmFyeSBzZWFyY2ggcGF0aCB1c2VkIGludGVybmFsbHkgYnkgdGhlIGNvbXBpbGVyIHdoZW4g
bGlua2luZwojIGEgc2hhcmVkIGxpYnJhcnkuCmNvbXBpbGVyX2xpYl9zZWFyY2hfcGF0aD0kbHRf
W11fTFRfQUNfVEFHVkFSKGNvbXBpbGVyX2xpYl9zZWFyY2hfcGF0aCwgJDEpCgojIE1ldGhvZCB0
byBjaGVjayB3aGV0aGVyIGRlcGVuZGVudCBsaWJyYXJpZXMgYXJlIHNoYXJlZCBvYmplY3RzLgpk
ZXBsaWJzX2NoZWNrX21ldGhvZD0kbHRfZGVwbGlic19jaGVja19tZXRob2QKCiMgQ29tbWFuZCB0
byB1c2Ugd2hlbiBkZXBsaWJzX2NoZWNrX21ldGhvZCA9PSBmaWxlX21hZ2ljLgpmaWxlX21hZ2lj
X2NtZD0kbHRfZmlsZV9tYWdpY19jbWQKCiMgRmxhZyB0aGF0IGFsbG93cyBzaGFyZWQgbGlicmFy
aWVzIHdpdGggdW5kZWZpbmVkIHN5bWJvbHMgdG8gYmUgYnVpbHQuCmFsbG93X3VuZGVmaW5lZF9m
bGFnPSRsdF9bXV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKQoKIyBGbGFn
IHRoYXQgZm9yY2VzIG5vIHVuZGVmaW5lZCBzeW1ib2xzLgpub191bmRlZmluZWRfZmxhZz0kbHRf
W11fTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSkKCiMgQ29tbWFuZHMgdXNlZCB0
byBmaW5pc2ggYSBsaWJ0b29sIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGluIGEgZGlyZWN0b3J5Lgpm
aW5pc2hfY21kcz0kbHRfZmluaXNoX2NtZHMKCiMgU2FtZSBhcyBhYm92ZSwgYnV0IGEgc2luZ2xl
IHNjcmlwdCBmcmFnbWVudCB0byBiZSBldmFsZWQgYnV0IG5vdCBzaG93bi4KZmluaXNoX2V2YWw9
JGx0X2ZpbmlzaF9ldmFsCgojIFRha2UgdGhlIG91dHB1dCBvZiBubSBhbmQgcHJvZHVjZSBhIGxp
c3Rpbmcgb2YgcmF3IHN5bWJvbHMgYW5kIEMgbmFtZXMuCmdsb2JhbF9zeW1ib2xfcGlwZT0kbHRf
bHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZQoKIyBUcmFuc2Zvcm0gdGhlIG91dHB1dCBvZiBu
bSBpbiBhIHByb3BlciBDIGRlY2xhcmF0aW9uCmdsb2JhbF9zeW1ib2xfdG9fY2RlY2w9JGx0X2x0
X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNsCgojIFRyYW5zZm9ybSB0aGUgb3V0cHV0IG9m
IG5tIGluIGEgQyBuYW1lIGFkZHJlc3MgcGFpcgpnbG9iYWxfc3ltYm9sX3RvX2NfbmFtZV9hZGRy
ZXNzPSRsdF9sdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzcwoKIyBUaGlz
IGlzIHRoZSBzaGFyZWQgbGlicmFyeSBydW50aW1lIHBhdGggdmFyaWFibGUuCnJ1bnBhdGhfdmFy
PSRydW5wYXRoX3ZhcgoKIyBUaGlzIGlzIHRoZSBzaGFyZWQgbGlicmFyeSBwYXRoIHZhcmlhYmxl
LgpzaGxpYnBhdGhfdmFyPSRzaGxpYnBhdGhfdmFyCgojIElzIHNobGlicGF0aCBzZWFyY2hlZCBi
ZWZvcmUgdGhlIGhhcmQtY29kZWQgbGlicmFyeSBzZWFyY2ggcGF0aD8Kc2hsaWJwYXRoX292ZXJy
aWRlc19ydW5wYXRoPSRzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGgKCiMgSG93IHRvIGhhcmRj
b2RlIGEgc2hhcmVkIGxpYnJhcnkgcGF0aCBpbnRvIGFuIGV4ZWN1dGFibGUuCmhhcmRjb2RlX2Fj
dGlvbj0kX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9hY3Rpb24sICQxKQoKIyBXaGV0aGVyIHdlIHNo
b3VsZCBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gbGlicmFyaWVzLgpoYXJkY29kZV9pbnRv
X2xpYnM9JGhhcmRjb2RlX2ludG9fbGlicwoKIyBGbGFnIHRvIGhhcmRjb2RlIFwkbGliZGlyIGlu
dG8gYSBiaW5hcnkgZHVyaW5nIGxpbmtpbmcuCiMgVGhpcyBtdXN0IHdvcmsgZXZlbiBpZiBcJGxp
YmRpciBkb2VzIG5vdCBleGlzdC4KaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0kbHRfW11fTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKQoKIyBJZiBsZCBpcyB1c2Vk
IHdoZW4gbGlua2luZywgZmxhZyB0byBoYXJkY29kZSBcJGxpYmRpciBpbnRvCiMgYSBiaW5hcnkg
ZHVyaW5nIGxpbmtpbmcuIFRoaXMgbXVzdCB3b3JrIGV2ZW4gaWYgXCRsaWJkaXIgZG9lcwojIG5v
dCBleGlzdC4KaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlY19sZD0kbHRfW11fTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNfbGQsICQxKQoKIyBXaGV0aGVyIHdlIG5lZWQgYSBz
aW5nbGUgLXJwYXRoIGZsYWcgd2l0aCBhIHNlcGFyYXRlZCBhcmd1bWVudC4KaGFyZGNvZGVfbGli
ZGlyX3NlcGFyYXRvcj0kbHRfW11fTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0
b3IsICQxKQoKIyBTZXQgdG8geWVzIGlmIHVzaW5nIERJUi9saWJOQU1FJHtzaGFyZWRfZXh0fSBk
dXJpbmcgbGlua2luZyBoYXJkY29kZXMgRElSIGludG8gdGhlCiMgcmVzdWx0aW5nIGJpbmFyeS4K
aGFyZGNvZGVfZGlyZWN0PSRfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpCgojIFNl
dCB0byB5ZXMgaWYgdXNpbmcgdGhlIC1MRElSIGZsYWcgZHVyaW5nIGxpbmtpbmcgaGFyZGNvZGVz
IERJUiBpbnRvIHRoZQojIHJlc3VsdGluZyBiaW5hcnkuCmhhcmRjb2RlX21pbnVzX0w9JF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpCgojIFNldCB0byB5ZXMgaWYgdXNpbmcgU0hM
SUJQQVRIX1ZBUj1ESVIgZHVyaW5nIGxpbmtpbmcgaGFyZGNvZGVzIERJUiBpbnRvCiMgdGhlIHJl
c3VsdGluZyBiaW5hcnkuCmhhcmRjb2RlX3NobGlicGF0aF92YXI9JF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpCgojIFNldCB0byB5ZXMgaWYgYnVpbGRpbmcgYSBzaGFy
ZWQgbGlicmFyeSBhdXRvbWF0aWNhbGx5IGhhcmRjb2RlcyBESVIgaW50byB0aGUgbGlicmFyeQoj
IGFuZCBhbGwgc3Vic2VxdWVudCBsaWJyYXJpZXMgYW5kIGV4ZWN1dGFibGVzIGxpbmtlZCBhZ2Fp
bnN0IGl0LgpoYXJkY29kZV9hdXRvbWF0aWM9JF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfYXV0b21h
dGljLCAkMSkKCiMgVmFyaWFibGVzIHdob3NlIHZhbHVlcyBzaG91bGQgYmUgc2F2ZWQgaW4gbGli
dG9vbCB3cmFwcGVyIHNjcmlwdHMgYW5kCiMgcmVzdG9yZWQgYXQgcmVsaW5rIHRpbWUuCnZhcmlh
Ymxlc19zYXZlZF9mb3JfcmVsaW5rPSIkdmFyaWFibGVzX3NhdmVkX2Zvcl9yZWxpbmsiCgojIFdo
ZXRoZXIgbGlidG9vbCBtdXN0IGxpbmsgYSBwcm9ncmFtIGFnYWluc3QgYWxsIGl0cyBkZXBlbmRl
bmN5IGxpYnJhcmllcy4KbGlua19hbGxfZGVwbGlicz0kX0xUX0FDX1RBR1ZBUihsaW5rX2FsbF9k
ZXBsaWJzLCAkMSkKCiMgQ29tcGlsZS10aW1lIHN5c3RlbSBzZWFyY2ggcGF0aCBmb3IgbGlicmFy
aWVzCnN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0kbHRfc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVj
CgojIFJ1bi10aW1lIHN5c3RlbSBzZWFyY2ggcGF0aCBmb3IgbGlicmFyaWVzCnN5c19saWJfZGxz
ZWFyY2hfcGF0aF9zcGVjPSRsdF9zeXNfbGliX2Rsc2VhcmNoX3BhdGhfc3BlYwoKIyBGaXggdGhl
IHNoZWxsIHZhcmlhYmxlIFwkc3JjZmlsZSBmb3IgdGhlIGNvbXBpbGVyLgpmaXhfc3JjZmlsZV9w
YXRoPSIkX0xUX0FDX1RBR1ZBUihmaXhfc3JjZmlsZV9wYXRoLCAkMSkiCgojIFNldCB0byB5ZXMg
aWYgZXhwb3J0ZWQgc3ltYm9scyBhcmUgcmVxdWlyZWQuCmFsd2F5c19leHBvcnRfc3ltYm9scz0k
X0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQxKQoKIyBUaGUgY29tbWFuZHMg
dG8gbGlzdCBleHBvcnRlZCBzeW1ib2xzLgpleHBvcnRfc3ltYm9sc19jbWRzPSRsdF9bXV9MVF9B
Q19UQUdWQVIoZXhwb3J0X3N5bWJvbHNfY21kcywgJDEpCgojIFRoZSBjb21tYW5kcyB0byBleHRy
YWN0IHRoZSBleHBvcnRlZCBzeW1ib2wgbGlzdCBmcm9tIGEgc2hhcmVkIGFyY2hpdmUuCmV4dHJh
Y3RfZXhwc3ltc19jbWRzPSRsdF9leHRyYWN0X2V4cHN5bXNfY21kcwoKIyBTeW1ib2xzIHRoYXQg
c2hvdWxkIG5vdCBiZSBsaXN0ZWQgaW4gdGhlIHByZWxvYWRlZCBzeW1ib2xzLgpleGNsdWRlX2V4
cHN5bXM9JGx0X1tdX0xUX0FDX1RBR1ZBUihleGNsdWRlX2V4cHN5bXMsICQxKQoKIyBTeW1ib2xz
IHRoYXQgbXVzdCBhbHdheXMgYmUgZXhwb3J0ZWQuCmluY2x1ZGVfZXhwc3ltcz0kbHRfW11fTFRf
QUNfVEFHVkFSKGluY2x1ZGVfZXhwc3ltcywgJDEpCgppZmVsc2UoWyQxXSxbXSwKWyMgIyMjIEVO
RCBMSUJUT09MIENPTkZJR10sClsjICMjIyBFTkQgTElCVE9PTCBUQUcgQ09ORklHOiAkdGFnbmFt
ZV0pCgpfX0VPRl9fCgppZmVsc2UoWyQxXSxbXSwgWwogIGNhc2UgJGhvc3Rfb3MgaW4KICBhaXgz
KikKICAgIGNhdCA8PFxFT0YgPj4gIiRjZmdmaWxlIgoKIyBBSVggc29tZXRpbWVzIGhhcyBwcm9i
bGVtcyB3aXRoIHRoZSBHQ0MgY29sbGVjdDIgcHJvZ3JhbS4gIEZvciBzb21lCiMgcmVhc29uLCBp
ZiB3ZSBzZXQgdGhlIENPTExFQ1RfTkFNRVMgZW52aXJvbm1lbnQgdmFyaWFibGUsIHRoZSBwcm9i
bGVtcwojIHZhbmlzaCBpbiBhIHB1ZmYgb2Ygc21va2UuCmlmIHRlc3QgIlgke0NPTExFQ1RfTkFN
RVMrc2V0fSIgIT0gWHNldDsgdGhlbgogIENPTExFQ1RfTkFNRVM9CiAgZXhwb3J0IENPTExFQ1Rf
TkFNRVMKZmkKRU9GCiAgICA7OwogIGVzYWMKCiAgIyBXZSB1c2Ugc2VkIGluc3RlYWQgb2YgY2F0
IGJlY2F1c2UgYmFzaCBvbiBESkdQUCBnZXRzIGNvbmZ1c2VkIGlmCiAgIyBpZiBmaW5kcyBtaXhl
ZCBDUi9MRiBhbmQgTEYtb25seSBsaW5lcy4gIFNpbmNlIHNlZCBvcGVyYXRlcyBpbgogICMgdGV4
dCBtb2RlLCBpdCBwcm9wZXJseSBjb252ZXJ0cyBsaW5lcyB0byBDUi9MRi4gIFRoaXMgYmFzaCBw
cm9ibGVtCiAgIyBpcyByZXBvcnRlZGx5IGZpeGVkLCBidXQgd2h5IG5vdCBydW4gb24gb2xkIHZl
cnNpb25zIHRvbz8KICBzZWQgJyRxJyAiJGx0bWFpbiIgPj4gIiRjZmdmaWxlIiB8fCAocm0gLWYg
IiRjZmdmaWxlIjsgZXhpdCAxKQoKICBtdiAtZiAiJGNmZ2ZpbGUiICIkb2ZpbGUiIHx8IFwKICAg
IChybSAtZiAiJG9maWxlIiAmJiBjcCAiJGNmZ2ZpbGUiICIkb2ZpbGUiICYmIHJtIC1mICIkY2Zn
ZmlsZSIpCiAgY2htb2QgK3ggIiRvZmlsZSIKXSkKZWxzZQogICMgSWYgdGhlcmUgaXMgbm8gTWFr
ZWZpbGUgeWV0LCB3ZSByZWx5IG9uIGEgbWFrZSBydWxlIHRvIGV4ZWN1dGUKICAjIGBjb25maWcu
c3RhdHVzIC0tcmVjaGVjaycgdG8gcmVydW4gdGhlc2UgdGVzdHMgYW5kIGNyZWF0ZSB0aGUKICAj
IGxpYnRvb2wgc2NyaXB0IHRoZW4uCiAgbHRtYWluX2luPWBlY2hvICRsdG1haW4gfCBzZWQgLWUg
J3MvXC5zaCQvLmluLydgCiAgaWYgdGVzdCAtZiAiJGx0bWFpbl9pbiI7IHRoZW4KICAgIHRlc3Qg
LWYgTWFrZWZpbGUgJiYgbWFrZSAiJGx0bWFpbiIKICBmaQpmaQpdKSMgQUNfTElCVE9PTF9DT05G
SUcKCgojIEFDX0xJQlRPT0xfUFJPR19DT01QSUxFUl9OT19SVFRJKFtUQUdOQU1FXSkKIyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkFDX0RFRlVOKFtBQ19MSUJU
T09MX1BST0dfQ09NUElMRVJfTk9fUlRUSV0sCltBQ19SRVFVSVJFKFtfTFRfQUNfU1lTX0NPTVBJ
TEVSXSlkbmwKCl9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWcs
ICQxKT0KCmlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCiAgX0xUX0FDX1RBR1ZBUihsdF9wcm9n
X2NvbXBpbGVyX25vX2J1aWx0aW5fZmxhZywgJDEpPScgLWZuby1idWlsdGluJwoKICBBQ19MSUJU
T09MX0NPTVBJTEVSX09QVElPTihbaWYgJGNvbXBpbGVyIHN1cHBvcnRzIC1mbm8tcnR0aSAtZm5v
LWV4Y2VwdGlvbnNdLAogICAgbHRfY3ZfcHJvZ19jb21waWxlcl9ydHRpX2V4Y2VwdGlvbnMsCiAg
ICBbLWZuby1ydHRpIC1mbm8tZXhjZXB0aW9uc10sIFtdLAogICAgW19MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWcsICQxKT0iJF9MVF9BQ19UQUdWQVIobHRfcHJv
Z19jb21waWxlcl9ub19idWlsdGluX2ZsYWcsICQxKSAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25z
Il0pCmZpCl0pIyBBQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRUSQoKCiMgQUNfTElCVE9P
TF9TWVNfR0xPQkFMX1NZTUJPTF9QSVBFCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCkFDX0RFRlVOKFtBQ19MSUJUT09MX1NZU19HTE9CQUxfU1lNQk9MX1BJUEVdLApbQUNfUkVR
VUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKQpBQ19SRVFVSVJFKFtBQ19QUk9HX05NXSkKQUNfUkVR
VUlSRShbQUNfT0JKRVhUXSkKIyBDaGVjayBmb3IgY29tbWFuZCB0byBncmFiIHRoZSByYXcgc3lt
Ym9sIG5hbWUgZm9sbG93ZWQgYnkgQyBzeW1ib2wgZnJvbSBubS4KQUNfTVNHX0NIRUNLSU5HKFtj
b21tYW5kIHRvIHBhcnNlICROTSBvdXRwdXQgZnJvbSAkY29tcGlsZXIgb2JqZWN0XSkKQUNfQ0FD
SEVfVkFMKFtsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlXSwKWwojIFRoZXNlIGFyZSBzYW5l
IGRlZmF1bHRzIHRoYXQgd29yayBvbiBhdCBsZWFzdCBhIGZldyBvbGQgc3lzdGVtcy4KIyBbVGhl
eSBjb21lIGZyb20gVWx0cml4LiAgV2hhdCBjb3VsZCBiZSBvbGRlciB0aGFuIFVsdHJpeD8hISA7
KV0KCiMgQ2hhcmFjdGVyIGNsYXNzIGRlc2NyaWJpbmcgTk0gZ2xvYmFsIHN5bWJvbCBjb2Rlcy4K
c3ltY29kZT0nW1tCQ0RFR1JTVF1dJwoKIyBSZWdleHAgdG8gbWF0Y2ggc3ltYm9scyB0aGF0IGNh
biBiZSBhY2Nlc3NlZCBkaXJlY3RseSBmcm9tIEMuCnN5bXBhdD0nXChbW19BLVphLXpdXVtbX0Et
WmEtejAtOV1dKlwpJwoKIyBUcmFuc2Zvcm0gYW4gZXh0cmFjdGVkIHN5bWJvbCBsaW5lIGludG8g
YSBwcm9wZXIgQyBkZWNsYXJhdGlvbgpsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0i
c2VkIC1uIC1lICdzL14uIC4qIFwoLipcKSQvZXh0ZXJuIGludCBcMTsvcCciCgojIFRyYW5zZm9y
bSBhbiBleHRyYWN0ZWQgc3ltYm9sIGxpbmUgaW50byBzeW1ib2wgbmFtZSBhbmQgc3ltYm9sIGFk
ZHJlc3MKbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3M9InNlZCAtbiAt
ZSAncy9eOiBcKFtbXiBdXSpcKSAkLyAge1xcXCJcMVxcXCIsIChsdF9wdHIpIDB9LC9wJyAtZSAn
cy9eJHN5bWNvZGUgXChbW14gXV0qXCkgXChbW14gXV0qXCkkLyAge1wiXDJcIiwgKGx0X3B0cikg
XCZcMn0sL3AnIgoKIyBEZWZpbmUgc3lzdGVtLXNwZWNpZmljIHZhcmlhYmxlcy4KY2FzZSAkaG9z
dF9vcyBpbgphaXgqKQogIHN5bWNvZGU9J1tbQkNEVF1dJwogIDs7CmN5Z3dpbiogfCBtaW5ndyog
fCBwdzMyKikKICBzeW1jb2RlPSdbW0FCQ0RHSVNUV11dJwogIDs7CmhwdXgqKSAjIEl0cyBsaW5r
ZXIgZGlzdGluZ3Vpc2hlcyBkYXRhIGZyb20gY29kZSBzeW1ib2xzCiAgaWYgdGVzdCAiJGhvc3Rf
Y3B1IiA9IGlhNjQ7IHRoZW4KICAgIHN5bWNvZGU9J1tbQUJDREVHUlNUXV0nCiAgZmkKICBsdF9j
dl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0ic2VkIC1uIC1lICdzL15UIC4qIFwoLipcKSQv
ZXh0ZXJuIGludCBcMSgpOy9wJyAtZSAncy9eJHN5bWNvZGUqIC4qIFwoLipcKSQvZXh0ZXJuIGNo
YXIgXDE7L3AnIgogIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPSJz
ZWQgLW4gLWUgJ3MvXjogXChbW14gXV0qXCkgJC8gIHtcXFwiXDFcXFwiLCAobHRfcHRyKSAwfSwv
cCcgLWUgJ3MvXiRzeW1jb2RlKiBcKFtbXiBdXSpcKSBcKFtbXiBdXSpcKSQvICB7XCJcMlwiLCAo
bHRfcHRyKSBcJlwyfSwvcCciCiAgOzsKbGludXgqKQogIGlmIHRlc3QgIiRob3N0X2NwdSIgPSBp
YTY0OyB0aGVuCiAgICBzeW1jb2RlPSdbW0FCQ0RHSVJTVFddXScKICAgIGx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3RvX2NkZWNsPSJzZWQgLW4gLWUgJ3MvXlQgLiogXCguKlwpJC9leHRlcm4gaW50
IFwxKCk7L3AnIC1lICdzL14kc3ltY29kZSogLiogXCguKlwpJC9leHRlcm4gY2hhciBcMTsvcCci
CiAgICBsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzcz0ic2VkIC1uIC1l
ICdzL146IFwoW1teIF1dKlwpICQvICB7XFxcIlwxXFxcIiwgKGx0X3B0cikgMH0sL3AnIC1lICdz
L14kc3ltY29kZSogXChbW14gXV0qXCkgXChbW14gXV0qXCkkLyAge1wiXDJcIiwgKGx0X3B0cikg
XCZcMn0sL3AnIgogIGZpCiAgOzsKaXJpeCogfCBub25zdG9wdXgqKQogIHN5bWNvZGU9J1tbQkNE
RUdSU1RdXScKICA7Owpvc2YqKQogIHN5bWNvZGU9J1tbQkNERUdRUlNUXV0nCiAgOzsKc29sYXJp
cyopCiAgc3ltY29kZT0nW1tCRFJUXV0nCiAgOzsKc2NvMy4ydjUqKQogIHN5bWNvZGU9J1tbRFRd
XScKICA7OwpzeXN2NC4ydXcyKikKICBzeW1jb2RlPSdbW0RUXV0nCiAgOzsKc3lzdjUqIHwgc2Nv
NXY2KiB8IHVuaXh3YXJlKiB8IE9wZW5VTklYKikKICBzeW1jb2RlPSdbW0FCRFRdXScKICA7Owpz
eXN2NCkKICBzeW1jb2RlPSdbW0RGTlNUVV1dJwogIDs7CmVzYWMKCiMgSGFuZGxlIENSTEYgaW4g
bWluZ3cgdG9vbCBjaGFpbgpvcHRfY3I9CmNhc2UgJGJ1aWxkX29zIGluCm1pbmd3KikKICBvcHRf
Y3I9YGVjaG8gJ3hcezAsMVx9JyB8IHRyIHggJ1wwMTUnYCAjIG9wdGlvbiBjciBpbiByZWdleHAK
ICA7Owplc2FjCgojIElmIHdlJ3JlIHVzaW5nIEdOVSBubSwgdGhlbiB1c2UgaXRzIHN0YW5kYXJk
IHN5bWJvbCBjb2Rlcy4KY2FzZSBgJE5NIC1WIDI+JjFgIGluCipHTlUqIHwgKid3aXRoIEJGRCcq
KQogIHN5bWNvZGU9J1tbQUJDREdJUlNUV11dJyA7Owplc2FjCgojIFRyeSB3aXRob3V0IGEgcHJl
Zml4IHVuZGVyY29yZSwgdGhlbiB3aXRoIGl0Lgpmb3IgYWNfc3ltcHJmeCBpbiAiIiAiXyI7IGRv
CgogICMgVHJhbnNmb3JtIHN5bWNvZGUsIHN5bXBhdCwgYW5kIHN5bXByZnggaW50byBhIHJhdyBz
eW1ib2wgYW5kIGEgQyBzeW1ib2wuCiAgc3lteGZybT0iXFwxICRhY19zeW1wcmZ4XFwyIFxcMiIK
CiAgIyBXcml0ZSB0aGUgcmF3IGFuZCBDIGlkZW50aWZpZXJzLgogIGx0X2N2X3N5c19nbG9iYWxf
c3ltYm9sX3BpcGU9InNlZCAtbiAtZSAncy9eLipbWyAJXV1cKCRzeW1jb2RlJHN5bWNvZGUqXClb
WyAJXV1bWyAJXV0qJGFjX3N5bXByZngkc3ltcGF0JG9wdF9jciQvJHN5bXhmcm0vcCciCgogICMg
Q2hlY2sgdG8gc2VlIHRoYXQgdGhlIHBpcGUgd29ya3MgY29ycmVjdGx5LgogIHBpcGVfd29ya3M9
bm8KCiAgcm0gLWYgY29uZnRlc3QqCiAgY2F0ID4gY29uZnRlc3QuJGFjX2V4dCA8PEVPRgojaWZk
ZWYgX19jcGx1c3BsdXMKZXh0ZXJuICJDIiB7CiNlbmRpZgpjaGFyIG5tX3Rlc3RfdmFyOwp2b2lk
IG5tX3Rlc3RfZnVuYygpe30KI2lmZGVmIF9fY3BsdXNwbHVzCn0KI2VuZGlmCmludCBtYWluKCl7
bm1fdGVzdF92YXI9J2EnO25tX3Rlc3RfZnVuYygpO3JldHVybigwKTt9CkVPRgoKICBpZiBBQ19U
UllfRVZBTChhY19jb21waWxlKTsgdGhlbgogICAgIyBOb3cgdHJ5IHRvIGdyYWIgdGhlIHN5bWJv
bHMuCiAgICBubGlzdD1jb25mdGVzdC5ubQogICAgaWYgQUNfVFJZX0VWQUwoTk0gY29uZnRlc3Qu
JGFjX29iamV4dCBcfCAkbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZSBcPiAkbmxpc3QpICYm
IHRlc3QgLXMgIiRubGlzdCI7IHRoZW4KICAgICAgIyBUcnkgc29ydGluZyBhbmQgdW5pcXVpZnlp
bmcgdGhlIG91dHB1dC4KICAgICAgaWYgc29ydCAiJG5saXN0IiB8IHVuaXEgPiAiJG5saXN0IlQ7
IHRoZW4KCW12IC1mICIkbmxpc3QiVCAiJG5saXN0IgogICAgICBlbHNlCglybSAtZiAiJG5saXN0
IlQKICAgICAgZmkKCiAgICAgICMgTWFrZSBzdXJlIHRoYXQgd2Ugc25hZ2dlZCBhbGwgdGhlIHN5
bWJvbHMgd2UgbmVlZC4KICAgICAgaWYgZ3JlcCAnIG5tX3Rlc3RfdmFyJCcgIiRubGlzdCIgPi9k
ZXYvbnVsbDsgdGhlbgoJaWYgZ3JlcCAnIG5tX3Rlc3RfZnVuYyQnICIkbmxpc3QiID4vZGV2L251
bGw7IHRoZW4KCSAgY2F0IDw8RU9GID4gY29uZnRlc3QuJGFjX2V4dAojaWZkZWYgX19jcGx1c3Bs
dXMKZXh0ZXJuICJDIiB7CiNlbmRpZgoKRU9GCgkgICMgTm93IGdlbmVyYXRlIHRoZSBzeW1ib2wg
ZmlsZS4KCSAgZXZhbCAiJGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNsIicgPCAiJG5s
aXN0IiB8IGdyZXAgLXYgbWFpbiA+PiBjb25mdGVzdC4kYWNfZXh0JwoKCSAgY2F0IDw8RU9GID4+
IGNvbmZ0ZXN0LiRhY19leHQKI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXwojIGRl
ZmluZSBsdF9wdHJfdCB2b2lkICoKI2Vsc2UKIyBkZWZpbmUgbHRfcHRyX3QgY2hhciAqCiMgZGVm
aW5lIGNvbnN0CiNlbmRpZgoKLyogVGhlIG1hcHBpbmcgYmV0d2VlbiBzeW1ib2wgbmFtZXMgYW5k
IHN5bWJvbHMuICovCmNvbnN0IHN0cnVjdCB7CiAgY29uc3QgY2hhciAqbmFtZTsKICBsdF9wdHJf
dCBhZGRyZXNzOwp9Cmx0X3ByZWxvYWRlZF9zeW1ib2xzW1tdXSA9CnsKRU9GCgkgICRTRUQgInMv
XiRzeW1jb2RlJHN5bWNvZGUqIFwoLipcKSBcKC4qXCkkLyAge1wiXDJcIiwgKGx0X3B0cl90KSBc
JlwyfSwvIiA8ICIkbmxpc3QiIHwgZ3JlcCAtdiBtYWluID4+IGNvbmZ0ZXN0LiRhY19leHQKCSAg
Y2F0IDw8XEVPRiA+PiBjb25mdGVzdC4kYWNfZXh0CiAgezAsIChsdF9wdHJfdCkgMH0KfTsKCiNp
ZmRlZiBfX2NwbHVzcGx1cwp9CiNlbmRpZgpFT0YKCSAgIyBOb3cgdHJ5IGxpbmtpbmcgdGhlIHR3
byBmaWxlcy4KCSAgbXYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdHN0bS4kYWNfb2JqZXh0Cgkg
IGx0X3NhdmVfTElCUz0iJExJQlMiCgkgIGx0X3NhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIgoJICBMSUJT
PSJjb25mdHN0bS4kYWNfb2JqZXh0IgoJICBDRkxBR1M9IiRDRkxBR1MkX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0aW5fZmxhZywgJDEpIgoJICBpZiBBQ19UUllfRVZBTChh
Y19saW5rKSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0JHthY19leGVleHR9OyB0aGVuCgkgICAgcGlwZV93
b3Jrcz15ZXMKCSAgZmkKCSAgTElCUz0iJGx0X3NhdmVfTElCUyIKCSAgQ0ZMQUdTPSIkbHRfc2F2
ZV9DRkxBR1MiCgllbHNlCgkgIGVjaG8gImNhbm5vdCBmaW5kIG5tX3Rlc3RfZnVuYyBpbiAkbmxp
c3QiID4mQVNfTUVTU0FHRV9MT0dfRkQKCWZpCiAgICAgIGVsc2UKCWVjaG8gImNhbm5vdCBmaW5k
IG5tX3Rlc3RfdmFyIGluICRubGlzdCIgPiZBU19NRVNTQUdFX0xPR19GRAogICAgICBmaQogICAg
ZWxzZQogICAgICBlY2hvICJjYW5ub3QgcnVuICRsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBl
IiA+JkFTX01FU1NBR0VfTE9HX0ZECiAgICBmaQogIGVsc2UKICAgIGVjaG8gIiRwcm9nbmFtZTog
ZmFpbGVkIHByb2dyYW0gd2FzOiIgPiZBU19NRVNTQUdFX0xPR19GRAogICAgY2F0IGNvbmZ0ZXN0
LiRhY19leHQgPiY1CiAgZmkKICBybSAtZiBjb25mdGVzdCogY29uZnRzdCoKCiAgIyBEbyBub3Qg
dXNlIHRoZSBnbG9iYWxfc3ltYm9sX3BpcGUgdW5sZXNzIGl0IHdvcmtzLgogIGlmIHRlc3QgIiRw
aXBlX3dvcmtzIiA9IHllczsgdGhlbgogICAgYnJlYWsKICBlbHNlCiAgICBsdF9jdl9zeXNfZ2xv
YmFsX3N5bWJvbF9waXBlPQogIGZpCmRvbmUKXSkKaWYgdGVzdCAteiAiJGx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3BpcGUiOyB0aGVuCiAgbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY2RlY2w9
CmZpCmlmIHRlc3QgLXogIiRsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlJGx0X2N2X3N5c19n
bG9iYWxfc3ltYm9sX3RvX2NkZWNsIjsgdGhlbgogIEFDX01TR19SRVNVTFQoZmFpbGVkKQplbHNl
CiAgQUNfTVNHX1JFU1VMVChvaykKZmkKXSkgIyBBQ19MSUJUT09MX1NZU19HTE9CQUxfU1lNQk9M
X1BJUEUKCgojIEFDX0xJQlRPT0xfUFJPR19DT01QSUxFUl9QSUMoW1RBR05BTUVdKQojIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihbQUNfTElCVE9PTF9Q
Uk9HX0NPTVBJTEVSX1BJQ10sCltfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfd2wsICQx
KT0KX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPQpfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9CgpBQ19NU0dfQ0hFQ0tJTkcoW2ZvciAkY29t
cGlsZXIgb3B0aW9uIHRvIHByb2R1Y2UgUElDXSkKIGlmZWxzZShbJDFdLFtDWFhdLFsKICAjIEMr
KyBzcGVjaWZpYyBjYXNlcyBmb3IgcGljLCBzdGF0aWMsIHdsLCBldGMuCiAgaWYgdGVzdCAiJEdY
WCIgPSB5ZXM7IHRoZW4KICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEp
PSctV2wsJwogICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSct
c3RhdGljJwoKICAgIGNhc2UgJGhvc3Rfb3MgaW4KICAgIGFpeCopCiAgICAgICMgQWxsIEFJWCBj
b2RlIGlzIFBJQy4KICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KCSMgQUlY
IDUgbm93IHN1cHBvcnRzIElBNjQgcHJvY2Vzc29yCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwogICAgICBmaQogICAgICA7OwogICAgYW1pZ2Fv
cyopCiAgICAgICMgRklYTUU6IHdlIG5lZWQgYXQgbGVhc3QgNjgwMjAgY29kZSB0byBidWlsZCBz
aGFyZWQgbGlicmFyaWVzLCBidXQKICAgICAgIyBhZGRpbmcgdGhlIGAtbTY4MDIwJyBmbGFnIHRv
IEdDQyBwcmV2ZW50cyBidWlsZGluZyBhbnl0aGluZyBiZXR0ZXIsCiAgICAgICMgbGlrZSBgLW02
ODA0MCcuCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLW02
ODAyMCAtcmVzaWRlbnQzMiAtbWFsd2F5cy1yZXN0b3JlLWE0JwogICAgICA7OwogICAgYmVvcyog
fCBjeWd3aW4qIHwgaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KiB8IG9zZjMqIHwgb3NmNCog
fCBvc2Y1KikKICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1bHQgZm9yIHRoZXNlIE9TZXMuCiAgICAg
IDs7CiAgICBtaW5ndyogfCBvczIqIHwgcHczMiopCiAgICAgICMgVGhpcyBoYWNrIGlzIHNvIHRo
YXQgdGhlIHNvdXJjZSBmaWxlIGNhbiB0ZWxsIHdoZXRoZXIgaXQgaXMgYmVpbmcKICAgICAgIyBi
dWlsdCBmb3IgaW5jbHVzaW9uIGluIGEgZGxsIChhbmQgc2hvdWxkIGV4cG9ydCBzeW1ib2xzIGZv
ciBleGFtcGxlKS4KICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEp
PSctRERMTF9FWFBPUlQnCiAgICAgIDs7CiAgICBkYXJ3aW4qIHwgcmhhcHNvZHkqKQogICAgICAj
IFBJQyBpcyB0aGUgZGVmYXVsdCBvbiB0aGlzIHBsYXRmb3JtCiAgICAgICMgQ29tbW9uIHN5bWJv
bHMgbm90IGFsbG93ZWQgaW4gTUhfRFlMSUIgZmlsZXMKICAgICAgX0xUX0FDX1RBR1ZBUihsdF9w
cm9nX2NvbXBpbGVyX3BpYywgJDEpPSctZm5vLWNvbW1vbicKICAgICAgOzsKICAgICpkamdwcCop
CiAgICAgICMgREpHUFAgZG9lcyBub3Qgc3VwcG9ydCBzaGFyZWQgbGlicmFyaWVzIGF0IGFsbAog
ICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9CiAgICAgIDs7CiAg
ICBpbnRlcml4MyopCiAgICAgICMgSW50ZXJpeCAzLnggZ2NjIC1mcGljLy1mUElDIG9wdGlvbnMg
Z2VuZXJhdGUgYnJva2VuIGNvZGUuCiAgICAgICMgSW5zdGVhZCwgd2UgcmVsb2NhdGUgc2hhcmVk
IGxpYnJhcmllcyBhdCBydW50aW1lLgogICAgICA7OwogICAgc3lzdjQqTVAqKQogICAgICBpZiB0
ZXN0IC1kIC91c3IvbmVjOyB0aGVuCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGlj
LCAkMSk9LUtjb25mb3JtX3BpYwogICAgICBmaQogICAgICA7OwogICAgaHB1eCopCiAgICAgICMg
UElDIGlzIHRoZSBkZWZhdWx0IGZvciBJQTY0IEhQLVVYIGFuZCA2NC1iaXQgSFAtVVgsIGJ1dAog
ICAgICAjIG5vdCBmb3IgUEEgSFAtVVguCiAgICAgIGNhc2UgJGhvc3RfY3B1IGluCiAgICAgIGhw
cGEqNjQqfGlhNjQqKQoJOzsKICAgICAgKikKCV9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxl
cl9waWMsICQxKT0nLWZQSUMnCgk7OwogICAgICBlc2FjCiAgICAgIDs7CiAgICAqKQogICAgICBf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1mUElDJwogICAgICA7Owog
ICAgZXNhYwogIGVsc2UKICAgIGNhc2UgJGhvc3Rfb3MgaW4KICAgICAgYWl4NCogfCBhaXg1KikK
CSMgQWxsIEFJWCBjb2RlIGlzIFBJQy4KCWlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVu
CgkgICMgQUlYIDUgbm93IHN1cHBvcnRzIElBNjQgcHJvY2Vzc29yCgkgIF9MVF9BQ19UQUdWQVIo
bHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCgllbHNlCgkgIF9MVF9BQ19U
QUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLWJuc28gLWJJOi9saWIvc3lzY2Fs
bHMuZXhwJwoJZmkKCTs7CiAgICAgIGNob3J1cyopCgljYXNlICRjY19iYXNlbmFtZSBpbgoJY3hj
aDY4KikKCSAgIyBHcmVlbiBIaWxscyBDKysgQ29tcGlsZXIKCSAgIyBfTFRfQUNfVEFHVkFSKGx0
X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Ii0tbm9fYXV0b19pbnN0YW50aWF0aW9uIC11IF9f
bWFpbiAtdSBfX3ByZW1haW4gLXUgX2Fib3J0IC1yICRDT09MX0RJUi9saWIvbGliT3JiLmEgJE1W
TUVfRElSL2xpYi9DQy9saWJDLmEgJE1WTUVfRElSL2xpYi9jbGFzc2l4L2xpYmN4LnMuYSIKCSAg
OzsKCWVzYWMKCTs7CiAgICAgICBkYXJ3aW4qKQogICAgICAgICAjIFBJQyBpcyB0aGUgZGVmYXVs
dCBvbiB0aGlzIHBsYXRmb3JtCiAgICAgICAgICMgQ29tbW9uIHN5bWJvbHMgbm90IGFsbG93ZWQg
aW4gTUhfRFlMSUIgZmlsZXMKICAgICAgICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgICAg
ICB4bGMqKQogICAgICAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQx
KT0nLXFub2NvbW1vbicKICAgICAgICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJf
d2wsICQxKT0nLVdsLCcKICAgICAgICAgICA7OwogICAgICAgICBlc2FjCiAgICAgICA7OwogICAg
ICBkZ3V4KikKCWNhc2UgJGNjX2Jhc2VuYW1lIGluCgkgIGVjKysqKQoJICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLUtQSUMnCgkgICAgOzsKCSAgZ2hjeCopCgkg
ICAgIyBHcmVlbiBIaWxscyBDKysgQ29tcGlsZXIKCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2df
Y29tcGlsZXJfcGljLCAkMSk9Jy1waWMnCgkgICAgOzsKCSAgKikKCSAgICA7OwoJZXNhYwoJOzsK
ICAgICAgZnJlZWJzZCogfCBrZnJlZWJzZCotZ251IHwgZHJhZ29uZmx5KikKCSMgRnJlZUJTRCB1
c2VzIEdOVSBDKysKCTs7CiAgICAgIGhwdXg5KiB8IGhwdXgxMCogfCBocHV4MTEqKQoJY2FzZSAk
Y2NfYmFzZW5hbWUgaW4KCSAgQ0MqKQoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxl
cl93bCwgJDEpPSctV2wsJwoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT0nJHt3bH0tYSAke3dsfWFyY2hpdmUnCgkgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAh
PSBpYTY0OyB0aGVuCgkgICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAk
MSk9JytaJwoJICAgIGZpCgkgICAgOzsKCSAgYUNDKikKCSAgICBfTFRfQUNfVEFHVkFSKGx0X3By
b2dfY29tcGlsZXJfd2wsICQxKT0nLVdsLCcKCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfc3RhdGljLCAkMSk9JyR7d2x9LWEgJHt3bH1hcmNoaXZlJwoJICAgIGNhc2UgJGhvc3Rf
Y3B1IGluCgkgICAgaHBwYSo2NCp8aWE2NCopCgkgICAgICAjICtaIHRoZSBkZWZhdWx0CgkgICAg
ICA7OwoJICAgICopCgkgICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAk
MSk9JytaJwoJICAgICAgOzsKCSAgICBlc2FjCgkgICAgOzsKCSAgKikKCSAgICA7OwoJZXNhYwoJ
OzsKICAgICAgaW50ZXJpeCopCgkjIFRoaXMgaXMgYzg5LCB3aGljaCBpcyBNUyBWaXN1YWwgQysr
IChubyBzaGFyZWQgbGlicykKCSMgQW55b25lIHdhbnRzIHRvIGRvIGEgcG9ydD8KCTs7CiAgICAg
IGlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0b3B1eCopCgljYXNlICRjY19iYXNlbmFtZSBpbgoJICBD
QyopCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCgkg
ICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctbm9uX3NoYXJl
ZCcKCSAgICAjIENDIHBpYyBmbGFnIC1LUElDIGlzIHRoZSBkZWZhdWx0LgoJICAgIDs7CgkgICop
CgkgICAgOzsKCWVzYWMKCTs7CiAgICAgIGxpbnV4KikKCWNhc2UgJGNjX2Jhc2VuYW1lIGluCgkg
IEtDQyopCgkgICAgIyBLQUkgQysrIENvbXBpbGVyCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9n
X2NvbXBpbGVyX3dsLCAkMSk9Jy0tYmFja2VuZCAtV2wsJwoJICAgIF9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9waWMsICQxKT0nLWZQSUMnCgkgICAgOzsKCSAgaWNwYyogfCBlY3BjKikK
CSAgICAjIEludGVsIEMrKwoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwg
JDEpPSctV2wsJwoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0n
LUtQSUMnCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSct
c3RhdGljJwoJICAgIDs7CgkgIHBnQ0MqKQoJICAgICMgUG9ydGxhbmQgR3JvdXAgQysrIGNvbXBp
bGVyLgoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwoJ
ICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLWZwaWMnCgkgICAg
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKCSAg
ICA7OwoJICBjeHgqKQoJICAgICMgQ29tcGFxIEMrKwoJICAgICMgTWFrZSBzdXJlIHRoZSBQSUMg
ZmxhZyBpcyBlbXB0eS4gIEl0IGFwcGVhcnMgdGhhdCBhbGwgQWxwaGEKCSAgICAjIExpbnV4IGFu
ZCBDb21wYXEgVHJ1NjQgVW5peCBvYmplY3RzIGFyZSBQSUMuCgkgICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPQoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21w
aWxlcl9zdGF0aWMsICQxKT0nLW5vbl9zaGFyZWQnCgkgICAgOzsKCSAgKikKCSAgICA7OwoJZXNh
YwoJOzsKICAgICAgbHlueG9zKikKCTs7CiAgICAgIG04OGsqKQoJOzsKICAgICAgbXZzKikKCWNh
c2UgJGNjX2Jhc2VuYW1lIGluCgkgIGN4eCopCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3BpYywgJDEpPSctVyBjLGV4cG9ydGFsbCcKCSAgICA7OwoJICAqKQoJICAgIDs7Cgll
c2FjCgk7OwogICAgICBuZXRic2QqKQoJOzsKICAgICAgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQoJ
Y2FzZSAkY2NfYmFzZW5hbWUgaW4KCSAgS0NDKikKCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2df
Y29tcGlsZXJfd2wsICQxKT0nLS1iYWNrZW5kIC1XbCwnCgkgICAgOzsKCSAgUkNDKikKCSAgICAj
IFJhdGlvbmFsIEMrKyAyLjQuMQoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9w
aWMsICQxKT0nLXBpYycKCSAgICA7OwoJICBjeHgqKQoJICAgICMgRGlnaXRhbC9Db21wYXEgQysr
CgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCgkgICAg
IyBNYWtlIHN1cmUgdGhlIFBJQyBmbGFnIGlzIGVtcHR5LiAgSXQgYXBwZWFycyB0aGF0IGFsbCBB
bHBoYQoJICAgICMgTGludXggYW5kIENvbXBhcSBUcnU2NCBVbml4IG9iamVjdHMgYXJlIFBJQy4K
CSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9CgkgICAgX0xUX0FD
X1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctbm9uX3NoYXJlZCcKCSAgICA7
OwoJICAqKQoJICAgIDs7Cgllc2FjCgk7OwogICAgICBwc29zKikKCTs7CiAgICAgIHNvbGFyaXMq
KQoJY2FzZSAkY2NfYmFzZW5hbWUgaW4KCSAgQ0MqKQoJICAgICMgU3VuIEMrKyA0LjIsIDUueCBh
bmQgQ2VudGVybGluZSBDKysKCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGlj
LCAkMSk9Jy1LUElDJwoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMs
ICQxKT0nLUJzdGF0aWMnCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAk
MSk9Jy1Rb3B0aW9uIGxkICcKCSAgICA7OwoJICBnY3gqKQoJICAgICMgR3JlZW4gSGlsbHMgQysr
IENvbXBpbGVyCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSct
UElDJwoJICAgIDs7CgkgICopCgkgICAgOzsKCWVzYWMKCTs7CiAgICAgIHN1bm9zNCopCgljYXNl
ICRjY19iYXNlbmFtZSBpbgoJICBDQyopCgkgICAgIyBTdW4gQysrIDQueAoJICAgIF9MVF9BQ19U
QUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLXBpYycKCSAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwoJICAgIDs7CgkgIGxjYyop
CgkgICAgIyBMdWNpZAoJICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQx
KT0nLXBpYycKCSAgICA7OwoJICAqKQoJICAgIDs7Cgllc2FjCgk7OwogICAgICB0YW5kZW0qKQoJ
Y2FzZSAkY2NfYmFzZW5hbWUgaW4KCSAgTkNDKikKCSAgICAjIE5vblN0b3AtVVggTkNDIDMuMjAK
CSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1LUElDJwoJICAg
IDs7CgkgICopCgkgICAgOzsKCWVzYWMKCTs7CiAgICAgIHN5c3Y1KiB8IHVuaXh3YXJlKiB8IHNj
bzMuMnY1KiB8IHNjbzV2NiogfCBPcGVuVU5JWCopCgljYXNlICRjY19iYXNlbmFtZSBpbgoJICBD
QyopCgkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCgkg
ICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctS1BJQycKCSAgICBf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwoJICAg
IDs7Cgllc2FjCgk7OwogICAgICB2eHdvcmtzKikKCTs7CiAgICAgICopCglfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZCwgJDEpPW5vCgk7OwogICAgZXNhYwog
IGZpCl0sClsKICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCiAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2df
Y29tcGlsZXJfc3RhdGljLCAkMSk9Jy1zdGF0aWMnCgogICAgY2FzZSAkaG9zdF9vcyBpbgogICAg
ICBhaXgqKQogICAgICAjIEFsbCBBSVggY29kZSBpcyBQSUMuCiAgICAgIGlmIHRlc3QgIiRob3N0
X2NwdSIgPSBpYTY0OyB0aGVuCgkjIEFJWCA1IG5vdyBzdXBwb3J0cyBJQTY0IHByb2Nlc3NvcgoJ
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKICAg
ICAgZmkKICAgICAgOzsKCiAgICBhbWlnYW9zKikKICAgICAgIyBGSVhNRTogd2UgbmVlZCBhdCBs
ZWFzdCA2ODAyMCBjb2RlIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMsIGJ1dAogICAgICAjIGFk
ZGluZyB0aGUgYC1tNjgwMjAnIGZsYWcgdG8gR0NDIHByZXZlbnRzIGJ1aWxkaW5nIGFueXRoaW5n
IGJldHRlciwKICAgICAgIyBsaWtlIGAtbTY4MDQwJy4KICAgICAgX0xUX0FDX1RBR1ZBUihsdF9w
cm9nX2NvbXBpbGVyX3BpYywgJDEpPSctbTY4MDIwIC1yZXNpZGVudDMyIC1tYWx3YXlzLXJlc3Rv
cmUtYTQnCiAgICAgIDs7CgogICAgYmVvcyogfCBjeWd3aW4qIHwgaXJpeDUqIHwgaXJpeDYqIHwg
bm9uc3RvcHV4KiB8IG9zZjMqIHwgb3NmNCogfCBvc2Y1KikKICAgICAgIyBQSUMgaXMgdGhlIGRl
ZmF1bHQgZm9yIHRoZXNlIE9TZXMuCiAgICAgIDs7CgogICAgbWluZ3cqIHwgcHczMiogfCBvczIq
KQogICAgICAjIFRoaXMgaGFjayBpcyBzbyB0aGF0IHRoZSBzb3VyY2UgZmlsZSBjYW4gdGVsbCB3
aGV0aGVyIGl0IGlzIGJlaW5nCiAgICAgICMgYnVpbHQgZm9yIGluY2x1c2lvbiBpbiBhIGRsbCAo
YW5kIHNob3VsZCBleHBvcnQgc3ltYm9scyBmb3IgZXhhbXBsZSkuCiAgICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLURETExfRVhQT1JUJwogICAgICA7OwoKICAg
IGRhcndpbiogfCByaGFwc29keSopCiAgICAgICMgUElDIGlzIHRoZSBkZWZhdWx0IG9uIHRoaXMg
cGxhdGZvcm0KICAgICAgIyBDb21tb24gc3ltYm9scyBub3QgYWxsb3dlZCBpbiBNSF9EWUxJQiBm
aWxlcwogICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1mbm8t
Y29tbW9uJwogICAgICA7OwoKICAgIGludGVyaXgzKikKICAgICAgIyBJbnRlcml4IDMueCBnY2Mg
LWZwaWMvLWZQSUMgb3B0aW9ucyBnZW5lcmF0ZSBicm9rZW4gY29kZS4KICAgICAgIyBJbnN0ZWFk
LCB3ZSByZWxvY2F0ZSBzaGFyZWQgbGlicmFyaWVzIGF0IHJ1bnRpbWUuCiAgICAgIDs7CgogICAg
bXNkb3NkamdwcCopCiAgICAgICMgSnVzdCBiZWNhdXNlIHdlIHVzZSBHQ0MgZG9lc24ndCBtZWFu
IHdlIHN1ZGRlbmx5IGdldCBzaGFyZWQgbGlicmFyaWVzCiAgICAgICMgb24gc3lzdGVtcyB0aGF0
IGRvbid0IHN1cHBvcnQgdGhlbS4KICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X2Nhbl9idWlsZF9zaGFyZWQsICQxKT1ubwogICAgICBlbmFibGVfc2hhcmVkPW5vCiAgICAgIDs7
CgogICAgc3lzdjQqTVAqKQogICAgICBpZiB0ZXN0IC1kIC91c3IvbmVjOyB0aGVuCglfTFRfQUNf
VEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9LUtjb25mb3JtX3BpYwogICAgICBmaQog
ICAgICA7OwoKICAgIGhwdXgqKQogICAgICAjIFBJQyBpcyB0aGUgZGVmYXVsdCBmb3IgSUE2NCBI
UC1VWCBhbmQgNjQtYml0IEhQLVVYLCBidXQKICAgICAgIyBub3QgZm9yIFBBIEhQLVVYLgogICAg
ICBjYXNlICRob3N0X2NwdSBpbgogICAgICBocHBhKjY0KnxpYTY0KikKCSMgK1ogdGhlIGRlZmF1
bHQKCTs7CiAgICAgICopCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9
Jy1mUElDJwoJOzsKICAgICAgZXNhYwogICAgICA7OwoKICAgICopCiAgICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLWZQSUMnCiAgICAgIDs7CiAgICBlc2FjCiAg
ZWxzZQogICAgIyBQT1JUTUUgQ2hlY2sgZm9yIGZsYWcgdG8gcGFzcyBsaW5rZXIgZmxhZ3MgdGhy
b3VnaCB0aGUgc3lzdGVtIGNvbXBpbGVyLgogICAgY2FzZSAkaG9zdF9vcyBpbgogICAgYWl4KikK
ICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCiAgICAg
IGlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCgkjIEFJWCA1IG5vdyBzdXBwb3J0cyBJ
QTY0IHByb2Nlc3NvcgoJX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEp
PSctQnN0YXRpYycKICAgICAgZWxzZQoJX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0
YXRpYywgJDEpPSctYm5zbyAtYkk6L2xpYi9zeXNjYWxscy5leHAnCiAgICAgIGZpCiAgICAgIDs7
CiAgICAgIGRhcndpbiopCiAgICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1bHQgb24gdGhpcyBwbGF0
Zm9ybQogICAgICAgICMgQ29tbW9uIHN5bWJvbHMgbm90IGFsbG93ZWQgaW4gTUhfRFlMSUIgZmls
ZXMKICAgICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCiAgICAgICAgIHhsYyopCiAgICAgICAgIF9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLXFub2NvbW1vbicKICAgICAg
ICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCiAgICAgICAg
IDs7CiAgICAgICBlc2FjCiAgICAgICA7OwoKICAgIG1pbmd3KiB8IHB3MzIqIHwgb3MyKikKICAg
ICAgIyBUaGlzIGhhY2sgaXMgc28gdGhhdCB0aGUgc291cmNlIGZpbGUgY2FuIHRlbGwgd2hldGhl
ciBpdCBpcyBiZWluZwogICAgICAjIGJ1aWx0IGZvciBpbmNsdXNpb24gaW4gYSBkbGwgKGFuZCBz
aG91bGQgZXhwb3J0IHN5bWJvbHMgZm9yIGV4YW1wbGUpLgogICAgICBfTFRfQUNfVEFHVkFSKGx0
X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1ERExMX0VYUE9SVCcKICAgICAgOzsKCiAgICBocHV4
OSogfCBocHV4MTAqIHwgaHB1eDExKikKICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBp
bGVyX3dsLCAkMSk9Jy1XbCwnCiAgICAgICMgUElDIGlzIHRoZSBkZWZhdWx0IGZvciBJQTY0IEhQ
LVVYIGFuZCA2NC1iaXQgSFAtVVgsIGJ1dAogICAgICAjIG5vdCBmb3IgUEEgSFAtVVguCiAgICAg
IGNhc2UgJGhvc3RfY3B1IGluCiAgICAgIGhwcGEqNjQqfGlhNjQqKQoJIyArWiB0aGUgZGVmYXVs
dAoJOzsKICAgICAgKikKCV9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0n
K1onCgk7OwogICAgICBlc2FjCiAgICAgICMgSXMgdGhlcmUgYSBiZXR0ZXIgbHRfcHJvZ19jb21w
aWxlcl9zdGF0aWMgdGhhdCB3b3JrcyB3aXRoIHRoZSBidW5kbGVkIENDPwogICAgICBfTFRfQUNf
VEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9JyR7d2x9LWEgJHt3bH1hcmNoaXZl
JwogICAgICA7OwoKICAgIGlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0b3B1eCopCiAgICAgIF9MVF9B
Q19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwogICAgICAjIFBJQyAod2l0
aCAtS1BJQykgaXMgdGhlIGRlZmF1bHQuCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21w
aWxlcl9zdGF0aWMsICQxKT0nLW5vbl9zaGFyZWQnCiAgICAgIDs7CgogICAgbmV3c29zNikKICAg
ICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctS1BJQycKICAgICAg
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKICAg
ICAgOzsKCiAgICBsaW51eCopCiAgICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCiAgICAgIGljYyog
fCBlY2MqKQoJX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCglf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1LUElDJwoJX0xUX0FDX1RB
R1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctc3RhdGljJwogICAgICAgIDs7CiAg
ICAgIHBnY2MqIHwgcGdmNzcqIHwgcGdmOTAqIHwgcGdmOTUqKQogICAgICAgICMgUG9ydGxhbmQg
R3JvdXAgY29tcGlsZXJzICgqbm90KiB0aGUgUGVudGl1bSBnY2MgY29tcGlsZXIsCgkjIHdoaWNo
IGxvb2tzIHRvIGJlIGEgZGVhZCBwcm9qZWN0KQoJX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBp
bGVyX3dsLCAkMSk9Jy1XbCwnCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAk
MSk9Jy1mcGljJwoJX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSct
QnN0YXRpYycKICAgICAgICA7OwogICAgICBjY2MqKQogICAgICAgIF9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwogICAgICAgICMgQWxsIEFscGhhIGNvZGUgaXMg
UElDLgogICAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0n
LW5vbl9zaGFyZWQnCiAgICAgICAgOzsKICAgICAgZXNhYwogICAgICA7OwoKICAgIG9zZjMqIHwg
b3NmNCogfCBvc2Y1KikKICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAk
MSk9Jy1XbCwnCiAgICAgICMgQWxsIE9TRi8xIGNvZGUgaXMgUElDLgogICAgICBfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1ub25fc2hhcmVkJwogICAgICA7OwoK
ICAgIHNvbGFyaXMqKQogICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAk
MSk9Jy1LUElDJwogICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAk
MSk9Jy1Cc3RhdGljJwogICAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBmNzcqIHwgZjkw
KiB8IGY5NSopCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfd2wsICQxKT0nLVFvcHRp
b24gbGQgJzs7CiAgICAgICopCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfd2wsICQx
KT0nLVdsLCc7OwogICAgICBlc2FjCiAgICAgIDs7CgogICAgc3Vub3M0KikKICAgICAgX0xUX0FD
X1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1Rb3B0aW9uIGxkICcKICAgICAgX0xU
X0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctUElDJwogICAgICBfTFRfQUNf
VEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwogICAgICA7OwoK
ICAgIHN5c3Y0IHwgc3lzdjQuMnV3MiogfCBzeXN2NC4zKikKICAgICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJv
Z19jb21waWxlcl9waWMsICQxKT0nLUtQSUMnCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19j
b21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCiAgICAgIDs7CgogICAgc3lzdjQqTVAqKQog
ICAgICBpZiB0ZXN0IC1kIC91c3IvbmVjIDt0aGVuCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfcGljLCAkMSk9Jy1LY29uZm9ybV9waWMnCglfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwogICAgICBmaQogICAgICA7OwoKICAgIHN5c3Y1
KiB8IHVuaXh3YXJlKiB8IHNjbzMuMnY1KiB8IHNjbzV2NiogfCBPcGVuVU5JWCopCiAgICAgIF9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwogICAgICBfTFRfQUNf
VEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1LUElDJwogICAgICBfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwogICAgICA7OwoKICAg
IHVuaWNvcyopCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSct
V2wsJwogICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJl
ZCwgJDEpPW5vCiAgICAgIDs7CgogICAgdXRzNCopCiAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJv
Z19jb21waWxlcl9waWMsICQxKT0nLXBpYycKICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKICAgICAgOzsKCiAgICAqKQogICAgICBfTFRf
QUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZCwgJDEpPW5vCiAgICAg
IDs7CiAgICBlc2FjCiAgZmkKXSkKQUNfTVNHX1JFU1VMVChbJF9MVF9BQ19UQUdWQVIobHRfcHJv
Z19jb21waWxlcl9waWMsICQxKV0pCgojCiMgQ2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBQSUMgZmxh
ZyBhY3R1YWxseSB3b3Jrcy4KIwppZiB0ZXN0IC1uICIkX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3BpYywgJDEpIjsgdGhlbgogIEFDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OKFtpZiAk
Y29tcGlsZXIgUElDIGZsYWcgJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQx
KSB3b3Jrc10sCiAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljX3dvcmtzLCAk
MSksCiAgICBbJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKWlmZWxzZShb
JDFdLFtdLFsgLURQSUNdLFtpZmVsc2UoWyQxXSxbQ1hYXSxbIC1EUElDXSxbXSldKV0sIFtdLAog
ICAgW2Nhc2UgJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKSBpbgogICAg
ICIiIHwgIiAiKikgOzsKICAgICAqKSBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGlj
LCAkMSk9IiAkX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpIiA7OwogICAg
IGVzYWNdLAogICAgW19MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0KICAg
ICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZCwgJDEpPW5v
XSkKZmkKY2FzZSAkaG9zdF9vcyBpbgogICMgRm9yIHBsYXRmb3JtcyB3aGljaCBkbyBub3Qgc3Vw
cG9ydCBQSUMsIC1EUElDIGlzIG1lYW5pbmdsZXNzOgogICpkamdwcCopCiAgICBfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9CiAgICA7OwogICopCiAgICBfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9IiRfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfcGljLCAkMSlpZmVsc2UoWyQxXSxbXSxbIC1EUElDXSxbaWZlbHNlKFskMV0sW0NYWF0s
WyAtRFBJQ10sW10pXSkiCiAgICA7Owplc2FjCgojCiMgQ2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBz
dGF0aWMgZmxhZyBhY3R1YWxseSB3b3Jrcy4KIwp3bD0kX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3dsLCAkMSkgZXZhbCBsdF90bXBfc3RhdGljX2ZsYWc9XCIkX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpXCIKQUNfTElCVE9PTF9MSU5LRVJfT1BUSU9OKFtp
ZiAkY29tcGlsZXIgc3RhdGljIGZsYWcgJGx0X3RtcF9zdGF0aWNfZmxhZyB3b3Jrc10sCiAgX0xU
X0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY193b3JrcywgJDEpLAogICRsdF90bXBf
c3RhdGljX2ZsYWcsCiAgW10sCiAgW19MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT1dKQpdKQoKCiMgQUNfTElCVE9PTF9QUk9HX0xEX1NITElCUyhbVEFHTkFNRV0pCiMg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU2VlIGlmIHRoZSBsaW5rZXIg
c3VwcG9ydHMgYnVpbGRpbmcgc2hhcmVkIGxpYnJhcmllcy4KQUNfREVGVU4oW0FDX0xJQlRPT0xf
UFJPR19MRF9TSExJQlNdLApbQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRoZSAkY29tcGlsZXIg
bGlua2VyICgkTEQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXNdKQppZmVsc2UoWyQxXSxbQ1hY
XSxbCiAgX0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9JyROTSAkbGlib2Jq
cyAkY29udmVuaWVuY2UgfCAkZ2xvYmFsX3N5bWJvbF9waXBlIHwgJFNFRCAnXCcncy8uKiAvLydc
JycgfCBzb3J0IHwgdW5pcSA+ICRleHBvcnRfc3ltYm9scycKICBjYXNlICRob3N0X29zIGluCiAg
YWl4NCogfCBhaXg1KikKICAgICMgSWYgd2UncmUgdXNpbmcgR05VIG5tLCB0aGVuIHdlIGRvbid0
IHdhbnQgdGhlICItQyIgb3B0aW9uLgogICAgIyAtQyBtZWFucyBkZW1hbmdsZSB0byBBSVggbm0s
IGJ1dCBtZWFucyBkb24ndCBkZW1hbmdsZSB3aXRoIEdOVSBubQogICAgaWYgJE5NIC1WIDI+JjEg
fCBncmVwICdHTlUnID4gL2Rldi9udWxsOyB0aGVuCiAgICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0
X3N5bWJvbHNfY21kcywgJDEpPSckTk0gLUJwZyAkbGlib2JqcyAkY29udmVuaWVuY2UgfCBhd2sg
J1wnJ3sgaWYgKCgoXFskXTIgPT0gIlQiKSB8fCAoXFskXTIgPT0gIkQiKSB8fCAoXFskXTIgPT0g
IkIiKSkgJiYgKFtzdWJzdHJdKFxbJF0zLDEsMSkgIT0gIi4iKSkgeyBwcmludCBcWyRdMyB9IH0n
XCcnIHwgc29ydCAtdSA+ICRleHBvcnRfc3ltYm9scycKICAgIGVsc2UKICAgICAgX0xUX0FDX1RB
R1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9JyROTSAtQkNwZyAkbGlib2JqcyAkY29udmVu
aWVuY2UgfCBhd2sgJ1wnJ3sgaWYgKCgoXFskXTIgPT0gIlQiKSB8fCAoXFskXTIgPT0gIkQiKSB8
fCAoXFskXTIgPT0gIkIiKSkgJiYgKFtzdWJzdHJdKFxbJF0zLDEsMSkgIT0gIi4iKSkgeyBwcmlu
dCBcWyRdMyB9IH0nXCcnIHwgc29ydCAtdSA+ICRleHBvcnRfc3ltYm9scycKICAgIGZpCiAgICA7
OwogIHB3MzIqKQogICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9IiRs
dGRsbF9jbWRzIgogIDs7CiAgY3lnd2luKiB8IG1pbmd3KikKICAgIF9MVF9BQ19UQUdWQVIoZXhw
b3J0X3N5bWJvbHNfY21kcywgJDEpPSckTk0gJGxpYm9ianMgJGNvbnZlbmllbmNlIHwgJGdsb2Jh
bF9zeW1ib2xfcGlwZSB8ICRTRUQgLWUgJ1wnJy9eW1tCQ0RHUlNdXSAvcy8uKiBcKFtbXiBdXSpc
KS9cMSBEQVRBLzsvXi4qIF9fbm1fXy9zL14uKiBfX25tX19cKFtbXiBdXSpcKSBbW14gXV0qL1wx
IERBVEEvOy9eSSAvZDsvXltbQUlUV11dIC9zLy4qIC8vJ1wnJyB8IHNvcnQgfCB1bmlxID4gJGV4
cG9ydF9zeW1ib2xzJwogIDs7CiAgKikKICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0X3N5bWJvbHNf
Y21kcywgJDEpPSckTk0gJGxpYm9ianMgJGNvbnZlbmllbmNlIHwgJGdsb2JhbF9zeW1ib2xfcGlw
ZSB8ICRTRUQgJ1wnJ3MvLiogLy8nXCcnIHwgc29ydCB8IHVuaXEgPiAkZXhwb3J0X3N5bWJvbHMn
CiAgOzsKICBlc2FjCl0sWwogIHJ1bnBhdGhfdmFyPQogIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5k
ZWZpbmVkX2ZsYWcsICQxKT0KICBfTFRfQUNfVEFHVkFSKGVuYWJsZV9zaGFyZWRfd2l0aF9zdGF0
aWNfcnVudGltZXMsICQxKT1ubwogIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9CiAg
X0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUihv
bGRfYXJjaGl2ZV9Gcm9tX25ld19jbWRzLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2
ZV9mcm9tX2V4cHN5bXNfY21kcywgJDEpPQogIF9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5bmFtaWNf
ZmxhZ19zcGVjLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUih3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYywg
JDEpPQogIF9MVF9BQ19UQUdWQVIodGhyZWFkX3NhZmVfZmxhZ19zcGVjLCAkMSk9CiAgX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9saWJkaXJfZmxhZ19zcGVjX2xkLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9CiAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3Qs
ICQxKT1ubwogIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPW5vCiAgX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9dW5zdXBwb3J0ZWQKICBfTFRfQUNf
VEFHVkFSKGxpbmtfYWxsX2RlcGxpYnMsICQxKT11bmtub3duCiAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9hdXRvbWF0aWMsICQxKT1ubwogIF9MVF9BQ19UQUdWQVIobW9kdWxlX2NtZHMsICQxKT0K
ICBfTFRfQUNfVEFHVkFSKG1vZHVsZV9leHBzeW1fY21kcywgJDEpPQogIF9MVF9BQ19UQUdWQVIo
YWx3YXlzX2V4cG9ydF9zeW1ib2xzLCAkMSk9bm8KICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9zeW1i
b2xzX2NtZHMsICQxKT0nJE5NICRsaWJvYmpzICRjb252ZW5pZW5jZSB8ICRnbG9iYWxfc3ltYm9s
X3BpcGUgfCAkU0VEICdcJydzLy4qIC8vJ1wnJyB8IHNvcnQgfCB1bmlxID4gJGV4cG9ydF9zeW1i
b2xzJwogICMgaW5jbHVkZV9leHBzeW1zIHNob3VsZCBiZSBhIGxpc3Qgb2Ygc3BhY2Utc2VwYXJh
dGVkIHN5bWJvbHMgdG8gYmUgKmFsd2F5cyoKICAjIGluY2x1ZGVkIGluIHRoZSBzeW1ib2wgbGlz
dAogIF9MVF9BQ19UQUdWQVIoaW5jbHVkZV9leHBzeW1zLCAkMSk9CiAgIyBleGNsdWRlX2V4cHN5
bXMgY2FuIGJlIGFuIGV4dGVuZGVkIHJlZ2V4cCBvZiBzeW1ib2xzIHRvIGV4Y2x1ZGUKICAjIGl0
IHdpbGwgYmUgd3JhcHBlZCBieSBgICgnIGFuZCBgKSQnLCBzbyBvbmUgbXVzdCBub3QgbWF0Y2gg
YmVnaW5uaW5nIG9yCiAgIyBlbmQgb2YgbGluZS4gIEV4YW1wbGU6IGBhfGJjfC4qZC4qJyB3aWxs
IGV4Y2x1ZGUgdGhlIHN5bWJvbHMgYGEnIGFuZCBgYmMnLAogICMgYXMgd2VsbCBhcyBhbnkgc3lt
Ym9sIHRoYXQgY29udGFpbnMgYGQnLgogIF9MVF9BQ19UQUdWQVIoZXhjbHVkZV9leHBzeW1zLCAk
MSk9Il9HTE9CQUxfT0ZGU0VUX1RBQkxFXyIKICAjIEFsdGhvdWdoIF9HTE9CQUxfT0ZGU0VUX1RB
QkxFXyBpcyBhIHZhbGlkIHN5bWJvbCBDIG5hbWUsIG1vc3QgYS5vdXQKICAjIHBsYXRmb3JtcyAo
YWIpdXNlIGl0IGluIFBJQyBjb2RlLCBidXQgdGhlaXIgbGlua2VycyBnZXQgY29uZnVzZWQgaWYK
ICAjIHRoZSBzeW1ib2wgaXMgZXhwbGljaXRseSByZWZlcmVuY2VkLiAgU2luY2UgcG9ydGFibGUg
Y29kZSBjYW5ub3QKICAjIHJlbHkgb24gdGhpcyBzeW1ib2wgbmFtZSwgaXQncyBwcm9iYWJseSBm
aW5lIHRvIG5ldmVyIGluY2x1ZGUgaXQgaW4KICAjIHByZWxvYWRlZCBzeW1ib2wgdGFibGVzLgog
IGV4dHJhY3RfZXhwc3ltc19jbWRzPQogICMgSnVzdCBiZWluZyBwYXJhbm9pZCBhYm91dCBlbnN1
cmluZyB0aGF0IGNjX2Jhc2VuYW1lIGlzIHNldC4KICBfTFRfQ0NfQkFTRU5BTUUoWyRjb21waWxl
cl0pCiAgY2FzZSAkaG9zdF9vcyBpbgogIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKikKICAgICMg
RklYTUU6IHRoZSBNU1ZDKysgcG9ydCBoYXNuJ3QgYmVlbiB0ZXN0ZWQgaW4gYSBsb29vb25nIHRp
bWUKICAgICMgV2hlbiBub3QgdXNpbmcgZ2NjLCB3ZSBjdXJyZW50bHkgYXNzdW1lIHRoYXQgd2Ug
YXJlIHVzaW5nCiAgICAjIE1pY3Jvc29mdCBWaXN1YWwgQysrLgogICAgaWYgdGVzdCAiJEdDQyIg
IT0geWVzOyB0aGVuCiAgICAgIHdpdGhfZ251X2xkPW5vCiAgICBmaQogICAgOzsKICBpbnRlcml4
KikKICAgICMgd2UganVzdCBob3BlL2Fzc3VtZSB0aGlzIGlzIGdjYyBhbmQgbm90IGM4OSAoPSBN
U1ZDKyspCiAgICB3aXRoX2dudV9sZD15ZXMKICAgIDs7CiAgb3BlbmJzZCopCiAgICB3aXRoX2du
dV9sZD1ubwogICAgOzsKICBlc2FjCgogIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9eWVz
CiAgaWYgdGVzdCAiJHdpdGhfZ251X2xkIiA9IHllczsgdGhlbgogICAgIyBJZiBhcmNoaXZlX2Nt
ZHMgcnVucyBMRCwgbm90IENDLCB3bGFyYyBzaG91bGQgYmUgZW1wdHkKICAgIHdsYXJjPScke3ds
fScKCiAgICAjIFNldCBzb21lIGRlZmF1bHRzIGZvciBHTlUgbGQgd2l0aCBzaGFyZWQgbGlicmFy
eSBzdXBwb3J0LiBUaGVzZQogICAgIyBhcmUgcmVzZXQgbGF0ZXIgaWYgc2hhcmVkIGxpYnJhcmll
cyBhcmUgbm90IHN1cHBvcnRlZC4gUHV0dGluZyB0aGVtCiAgICAjIGhlcmUgYWxsb3dzIHRoZW0g
dG8gYmUgb3ZlcnJpZGRlbiBpZiBuZWNlc3NhcnkuCiAgICBydW5wYXRoX3Zhcj1MRF9SVU5fUEFU
SAogICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9
LS1ycGF0aCAke3dsfSRsaWJkaXInCiAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2Zs
YWdfc3BlYywgJDEpPScke3dsfS0tZXhwb3J0LWR5bmFtaWMnCiAgICAjIGFuY2llbnQgR05VIGxk
IGRpZG4ndCBzdXBwb3J0IC0td2hvbGUtYXJjaGl2ZSBldC4gYWwuCiAgICBpZiAkTEQgLS1oZWxw
IDI+JjEgfCBncmVwICduby13aG9sZS1hcmNoaXZlJyA+IC9kZXYvbnVsbDsgdGhlbgoJX0xUX0FD
X1RBR1ZBUih3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYywgJDEpPSIkd2xhcmMiJy0td2hvbGUtYXJj
aGl2ZSRjb252ZW5pZW5jZSAnIiR3bGFyYyInLS1uby13aG9sZS1hcmNoaXZlJwogICAgICBlbHNl
CiAgCV9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0KICAgIGZpCiAg
ICBzdXBwb3J0c19hbm9uX3ZlcnNpb25pbmc9bm8KICAgIGNhc2UgYCRMRCAtdiAyPi9kZXYvbnVs
bGAgaW4KICAgICAgKlwgW1swMV1dLiogfCAqXCAyLltbMC05XV0uKiB8ICpcIDIuMTAuKikgOzsg
IyBjYXRjaCB2ZXJzaW9ucyA8IDIuMTEKICAgICAgKlwgMi4xMS45My4wLjJcICopIHN1cHBvcnRz
X2Fub25fdmVyc2lvbmluZz15ZXMgOzsgIyBSSDcuMyAuLi4KICAgICAgKlwgMi4xMS45Mi4wLjEy
XCAqKSBzdXBwb3J0c19hbm9uX3ZlcnNpb25pbmc9eWVzIDs7ICMgTWFuZHJha2UgOC4yIC4uLgog
ICAgICAqXCAyLjExLiopIDs7ICMgb3RoZXIgMi4xMSB2ZXJzaW9ucwogICAgICAqKSBzdXBwb3J0
c19hbm9uX3ZlcnNpb25pbmc9eWVzIDs7CiAgICBlc2FjCgogICAgIyBTZWUgaWYgR05VIGxkIHN1
cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMuCiAgICBjYXNlICRob3N0X29zIGluCiAgICBhaXgzKiB8
IGFpeDQqIHwgYWl4NSopCiAgICAgICMgT24gQUlYL1BQQywgdGhlIEdOVSBsaW5rZXIgaXMgdmVy
eSBicm9rZW4KICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAhPSBpYTY0OyB0aGVuCglfTFRfQUNf
VEFHVkFSKGxkX3NobGlicywgJDEpPW5vCgljYXQgPDxFT0YgMT4mMgoKKioqIFdhcm5pbmc6IHRo
ZSBHTlUgbGlua2VyLCBhdCBsZWFzdCB1cCB0byByZWxlYXNlIDIuOS4xLCBpcyByZXBvcnRlZAoq
KiogdG8gYmUgdW5hYmxlIHRvIHJlbGlhYmx5IGNyZWF0ZSBzaGFyZWQgbGlicmFyaWVzIG9uIEFJ
WC4KKioqIFRoZXJlZm9yZSwgbGlidG9vbCBpcyBkaXNhYmxpbmcgc2hhcmVkIGxpYnJhcmllcyBz
dXBwb3J0LiAgSWYgeW91CioqKiByZWFsbHkgY2FyZSBmb3Igc2hhcmVkIGxpYnJhcmllcywgeW91
IG1heSB3YW50IHRvIG1vZGlmeSB5b3VyIFBBVEgKKioqIHNvIHRoYXQgYSBub24tR05VIGxpbmtl
ciBpcyBmb3VuZCwgYW5kIHRoZW4gcmVzdGFydC4KCkVPRgogICAgICBmaQogICAgICA7OwoKICAg
IGFtaWdhb3MqKQogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckcm0gJG91
dHB1dF9vYmpkaXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBOQU1FICRsaWJuYW1l
IiA+ICRvdXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5LmRhdGF+JGVjaG8gIiNkZWZpbmUgTElCUkFS
WV9JRCAxIiA+PiAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRhfiRlY2hvICIjZGVmaW5l
IFZFUlNJT04gJG1ham9yIiA+PiAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRhfiRlY2hv
ICIjZGVmaW5lIFJFVklTSU9OICRyZXZpc2lvbiIgPj4gJG91dHB1dF9vYmpkaXIvYTJpeGxpYnJh
cnkuZGF0YX4kQVIgJEFSX0ZMQUdTICRsaWIgJGxpYm9ianN+JFJBTkxJQiAkbGlifihjZCAkb3V0
cHV0X29iamRpciAmJiBhMml4bGlicmFyeSAtMzIpJwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRj
b2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLUwkbGliZGlyJwogICAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX21pbnVzX0wsICQxKT15ZXMKCiAgICAgICMgU2FtdWVsIEEuIEZhbHZvIElJIDxr
YzV0amFAZG9scGhpbi5vcGVucHJvamVjdHMubmV0PiByZXBvcnRzCiAgICAgICMgdGhhdCB0aGUg
c2VtYW50aWNzIG9mIGR5bmFtaWMgbGlicmFyaWVzIG9uIEFtaWdhT1MsIGF0IGxlYXN0IHVwCiAg
ICAgICMgdG8gdmVyc2lvbiA0LCBpcyB0byBzaGFyZSBkYXRhIGFtb25nIG11bHRpcGxlIHByb2dy
YW1zIGxpbmtlZAogICAgICAjIHdpdGggdGhlIHNhbWUgZHluYW1pYyBsaWJyYXJ5LiAgU2luY2Ug
dGhpcyBkb2Vzbid0IG1hdGNoIHRoZQogICAgICAjIGJlaGF2aW9yIG9mIHNoYXJlZCBsaWJyYXJp
ZXMgb24gb3RoZXIgcGxhdGZvcm1zLCB3ZSBjYW4ndCB1c2UKICAgICAgIyB0aGVtLgogICAgICBf
TFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgIDs7CgogICAgYmVvcyopCiAgICAg
IGlmICRMRCAtLWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+
IC9kZXYvbnVsbDsgdGhlbgoJX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEp
PXVuc3VwcG9ydGVkCgkjIEpvc2VwaCBCZWNrZW5iYWNoIDxqcmIzQGJlc3QuY29tPiBzYXlzIHNv
bWUgcmVsZWFzZXMgb2YgZ2NjCgkjIHN1cHBvcnQgLS11bmRlZmluZWQuICBUaGlzIGRlc2VydmVz
IHNvbWUgaW52ZXN0aWdhdGlvbi4gIEZJWE1FCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpPSckQ0MgLW5vc3RhcnQgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9
LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCiAgICAgIGVsc2UKCV9MVF9BQ19UQUdWQVIobGRf
c2hsaWJzLCAkMSk9bm8KICAgICAgZmkKICAgICAgOzsKCiAgICBjeWd3aW4qIHwgbWluZ3cqIHwg
cHczMiopCiAgICAgICMgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAk
MSkgaXMgYWN0dWFsbHkgbWVhbmluZ2xlc3MsCiAgICAgICMgYXMgdGhlcmUgaXMgbm8gc2VhcmNo
IHBhdGggZm9yIERMTHMuCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdf
c3BlYywgJDEpPSctTCRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVk
X2ZsYWcsICQxKT11bnN1cHBvcnRlZAogICAgICBfTFRfQUNfVEFHVkFSKGFsd2F5c19leHBvcnRf
c3ltYm9scywgJDEpPW5vCiAgICAgIF9MVF9BQ19UQUdWQVIoZW5hYmxlX3NoYXJlZF93aXRoX3N0
YXRpY19ydW50aW1lcywgJDEpPXllcwogICAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9zeW1ib2xz
X2NtZHMsICQxKT0nJE5NICRsaWJvYmpzICRjb252ZW5pZW5jZSB8ICRnbG9iYWxfc3ltYm9sX3Bp
cGUgfCAkU0VEIC1lICdcJycvXltbQkNER1JTXV0gL3MvLiogXChbW14gXV0qXCkvXDEgREFUQS8n
XCcnIHwgJFNFRCAtZSAnXCcnL15bW0FJVFddXSAvcy8uKiAvLydcJycgfCBzb3J0IHwgdW5pcSA+
ICRleHBvcnRfc3ltYm9scycKCiAgICAgIGlmICRMRCAtLWhlbHAgMj4mMSB8IGdyZXAgJ2F1dG8t
aW1wb3J0JyA+IC9kZXYvbnVsbDsgdGhlbgogICAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9j
bWRzLCAkMSk9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAt
byAkb3V0cHV0X29iamRpci8kc29uYW1lICR7d2x9LS1lbmFibGUtYXV0by1pbWFnZS1iYXNlIC1Y
bGlua2VyIC0tb3V0LWltcGxpYiAtWGxpbmtlciAkbGliJwoJIyBJZiB0aGUgZXhwb3J0LXN5bWJv
bHMgZmlsZSBhbHJlYWR5IGlzIGEgLmRlZiBmaWxlICgxc3QgbGluZQoJIyBpcyBFWFBPUlRTKSwg
dXNlIGl0IGFzIGlzOyBvdGhlcndpc2UsIHByZXBlbmQuLi4KCV9MVF9BQ19UQUdWQVIoYXJjaGl2
ZV9leHBzeW1fY21kcywgJDEpPSdpZiB0ZXN0ICJ4YCRTRUQgMXEgJGV4cG9ydF9zeW1ib2xzYCIg
PSB4RVhQT1JUUzsgdGhlbgoJICBjcCAkZXhwb3J0X3N5bWJvbHMgJG91dHB1dF9vYmpkaXIvJHNv
bmFtZS5kZWY7CgllbHNlCgkgIGVjaG8gRVhQT1JUUyA+ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUu
ZGVmOwoJICBjYXQgJGV4cG9ydF9zeW1ib2xzID4+ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUuZGVm
OwoJZml+CgkkQ0MgLXNoYXJlZCAkb3V0cHV0X29iamRpci8kc29uYW1lLmRlZiAkbGlib2JqcyAk
ZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAke3dsfS0t
ZW5hYmxlLWF1dG8taW1hZ2UtYmFzZSAtWGxpbmtlciAtLW91dC1pbXBsaWIgLVhsaW5rZXIgJGxp
YicKICAgICAgZWxzZQoJX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwogICAgICBmaQog
ICAgICA7OwoKICAgIGludGVyaXgzKikKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJl
Y3QsICQxKT1ubwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQx
KT1ubwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0n
JHt3bH0tcnBhdGgsJGxpYmRpcicKICAgICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19m
bGFnX3NwZWMsICQxKT0nJHt3bH0tRScKICAgICAgIyBIYWNrOiBPbiBJbnRlcml4IDMueCwgd2Ug
Y2Fubm90IGNvbXBpbGUgUElDIGJlY2F1c2Ugb2YgYSBicm9rZW4gZ2NjLgogICAgICAjIEluc3Rl
YWQsIHNoYXJlZCBsaWJyYXJpZXMgYXJlIGxvYWRlZCBhdCBhbiBpbWFnZSBiYXNlICgweDEwMDAw
MDAwIGJ5CiAgICAgICMgZGVmYXVsdCkgYW5kIHJlbG9jYXRlZCBpZiB0aGV5IGNvbmZsaWN0LCB3
aGljaCBpcyBhIHNsb3cgdmVyeSBtZW1vcnkKICAgICAgIyBjb25zdW1pbmcgYW5kIGZyYWdtZW50
aW5nIHByb2Nlc3MuICBUbyBhdm9pZCB0aGlzLCB3ZSBwaWNrIGEgcmFuZG9tLAogICAgICAjIDI1
NiBLaUItYWxpZ25lZCBpbWFnZSBiYXNlIGJldHdlZW4gMHg1MDAwMDAwMCBhbmQgMHg2RkZDMDAw
MCBhdCBsaW5rCiAgICAgICMgdGltZS4gIE1vdmluZyB1cCBmcm9tIDB4MTAwMDAwMDAgYWxzbyBh
bGxvd3MgbW9yZSBzYnJrKDIpIHNwYWNlLgogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21k
cywgJDEpPSckQ0MgLXNoYXJlZCAkcGljX2ZsYWcgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVy
X2ZsYWdzICR7d2x9LWgsJHNvbmFtZSAke3dsfS0taW1hZ2UtYmFzZSxgZXhwciAke1JBTkRPTS0k
JH0gJSA0MDk2IC8gMiBcKiAyNjIxNDQgKyAxMzQyMTc3MjgwYCAtbyAkbGliJwogICAgICBfTFRf
QUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nc2VkICJzLF4sXywiICRleHBvcnRf
c3ltYm9scyA+JG91dHB1dF9vYmpkaXIvJHNvbmFtZS5leHBzeW1+JENDIC1zaGFyZWQgJHBpY19m
bGFnICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1oLCRzb25hbWUgJHt3
bH0tLXJldGFpbi1zeW1ib2xzLWZpbGUsJG91dHB1dF9vYmpkaXIvJHNvbmFtZS5leHBzeW0gJHt3
bH0tLWltYWdlLWJhc2UsYGV4cHIgJHtSQU5ET00tJCR9ICUgNDA5NiAvIDIgXCogMjYyMTQ0ICsg
MTM0MjE3NzI4MGAgLW8gJGxpYicKICAgICAgOzsKCiAgICBsaW51eCopCiAgICAgIGlmICRMRCAt
LWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVs
bDsgdGhlbgoJdG1wX2FkZGZsYWc9CgljYXNlICRjY19iYXNlbmFtZSwkaG9zdF9jcHUgaW4KCXBn
Y2MqKQkJCQkjIFBvcnRsYW5kIEdyb3VwIEMgY29tcGlsZXIKCSAgX0xUX0FDX1RBR1ZBUih3aG9s
ZV9hcmNoaXZlX2ZsYWdfc3BlYywgJDEpPScke3dsfS0td2hvbGUtYXJjaGl2ZWBmb3IgY29udiBp
biAkY29udmVuaWVuY2VcIlwiOyBkbyB0ZXN0ICAtbiBcIiRjb252XCIgJiYgbmV3X2NvbnZlbmll
bmNlPVwiJG5ld19jb252ZW5pZW5jZSwkY29udlwiOyBkb25lOyAkZWNobyBcIiRuZXdfY29udmVu
aWVuY2VcImAgJHt3bH0tLW5vLXdob2xlLWFyY2hpdmUnCgkgIHRtcF9hZGRmbGFnPScgJHBpY19m
bGFnJwoJICA7OwoJcGdmNzcqIHwgcGdmOTAqIHwgcGdmOTUqKQkjIFBvcnRsYW5kIEdyb3VwIGY3
NyBhbmQgZjkwIGNvbXBpbGVycwoJICBfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19z
cGVjLCAkMSk9JyR7d2x9LS13aG9sZS1hcmNoaXZlYGZvciBjb252IGluICRjb252ZW5pZW5jZVwi
XCI7IGRvIHRlc3QgIC1uIFwiJGNvbnZcIiAmJiBuZXdfY29udmVuaWVuY2U9XCIkbmV3X2NvbnZl
bmllbmNlLCRjb252XCI7IGRvbmU7ICRlY2hvIFwiJG5ld19jb252ZW5pZW5jZVwiYCAke3dsfS0t
bm8td2hvbGUtYXJjaGl2ZScKCSAgdG1wX2FkZGZsYWc9JyAkcGljX2ZsYWcgLU1ub21haW4nIDs7
CgllY2MqLGlhNjQqIHwgaWNjKixpYTY0KikJCSMgSW50ZWwgQyBjb21waWxlciBvbiBpYTY0Cgkg
IHRtcF9hZGRmbGFnPScgLWlfZHluYW1pYycgOzsKCWVmYyosaWE2NCogfCBpZm9ydCosaWE2NCop
CSMgSW50ZWwgRm9ydHJhbiBjb21waWxlciBvbiBpYTY0CgkgIHRtcF9hZGRmbGFnPScgLWlfZHlu
YW1pYyAtbm9mb3JfbWFpbicgOzsKCWlmYyogfCBpZm9ydCopCQkJIyBJbnRlbCBGb3J0cmFuIGNv
bXBpbGVyCgkgIHRtcF9hZGRmbGFnPScgLW5vZm9yX21haW4nIDs7Cgllc2FjCglfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCciJHRtcF9hZGRmbGFnIicgJGxpYm9i
anMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRs
aWInCgoJaWYgdGVzdCAkc3VwcG9ydHNfYW5vbl92ZXJzaW9uaW5nID0geWVzOyB0aGVuCgkgIF9M
VF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSckZWNobyAieyBnbG9iYWw6IiA+
ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLnZlcn4KICBjYXQgJGV4cG9ydF9zeW1ib2xzIHwgc2Vk
IC1lICJzL1woLipcKS9cMTsvIiA+PiAkb3V0cHV0X29iamRpci8kbGlibmFtZS52ZXJ+CiAgJGVj
aG8gImxvY2FsOiAqOyB9OyIgPj4gJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUudmVyfgoJICAkQ0Mg
LXNoYXJlZCciJHRtcF9hZGRmbGFnIicgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdz
ICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lICR7d2x9LXZlcnNpb24tc2NyaXB0ICR7d2x9JG91dHB1
dF9vYmpkaXIvJGxpYm5hbWUudmVyIC1vICRsaWInCglmaQogICAgICBlbHNlCglfTFRfQUNfVEFH
VkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgIGZpCiAgICAgIDs7CgogICAgbmV0YnNkKikKICAg
ICAgaWYgZWNobyBfX0VMRl9fIHwgJENDIC1FIC0gfCBncmVwIF9fRUxGX18gPi9kZXYvbnVsbDsg
dGhlbgoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1Cc2hhcmVhYmxlICRs
aWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MgLW8gJGxpYicKCXdsYXJjPQogICAgICBlbHNl
CglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkbGlib2JqcyAk
ZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgLW8gJGxpYicK
CV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkbGli
b2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgJHt3
bH0tcmV0YWluLXN5bWJvbHMtZmlsZSAkd2wkZXhwb3J0X3N5bWJvbHMgLW8gJGxpYicKICAgICAg
ZmkKICAgICAgOzsKCiAgICBzb2xhcmlzKikKICAgICAgaWYgJExEIC12IDI+JjEgfCBncmVwICdC
RkQgMlwuOCcgPiAvZGV2L251bGw7IHRoZW4KCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9
bm8KCWNhdCA8PEVPRiAxPiYyCgoqKiogV2FybmluZzogVGhlIHJlbGVhc2VzIDIuOC4qIG9mIHRo
ZSBHTlUgbGlua2VyIGNhbm5vdCByZWxpYWJseQoqKiogY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMg
b24gU29sYXJpcyBzeXN0ZW1zLiAgVGhlcmVmb3JlLCBsaWJ0b29sCioqKiBpcyBkaXNhYmxpbmcg
c2hhcmVkIGxpYnJhcmllcyBzdXBwb3J0LiAgV2UgdXJnZSB5b3UgdG8gdXBncmFkZSBHTlUKKioq
IGJpbnV0aWxzIHRvIHJlbGVhc2UgMi45LjEgb3IgbmV3ZXIuICBBbm90aGVyIG9wdGlvbiBpcyB0
byBtb2RpZnkKKioqIHlvdXIgUEFUSCBvciBjb21waWxlciBjb25maWd1cmF0aW9uIHNvIHRoYXQg
dGhlIG5hdGl2ZSBsaW5rZXIgaXMKKioqIHVzZWQsIGFuZCB0aGVuIHJlc3RhcnQuCgpFT0YKICAg
ICAgZWxpZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVs
ZicgPiAvZGV2L251bGw7IHRoZW4KCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUg
JHdsJHNvbmFtZSAtbyAkbGliJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAk
MSk9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1z
b25hbWUgJHdsJHNvbmFtZSAke3dsfS1yZXRhaW4tc3ltYm9scy1maWxlICR3bCRleHBvcnRfc3lt
Ym9scyAtbyAkbGliJwogICAgICBlbHNlCglfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5v
CiAgICAgIGZpCiAgICAgIDs7CgogICAgc3lzdjUqIHwgc2NvMy4ydjUqIHwgc2NvNXY2KiB8IHVu
aXh3YXJlKiB8IE9wZW5VTklYKikKICAgICAgY2FzZSBgJExEIC12IDI+JjFgIGluCiAgICAgICAg
KlwgW1swMV1dLiogfCAqXCAyLltbMC05XV0uKiB8ICpcIDIuMVtbMC01XV0uKikgCglfTFRfQUNf
VEFHVkFSKGxkX3NobGlicywgJDEpPW5vCgljYXQgPDxfTFRfRU9GIDE+JjIKCioqKiBXYXJuaW5n
OiBSZWxlYXNlcyBvZiB0aGUgR05VIGxpbmtlciBwcmlvciB0byAyLjE2LjkxLjAuMyBjYW4gbm90
CioqKiByZWxpYWJseSBjcmVhdGUgc2hhcmVkIGxpYnJhcmllcyBvbiBTQ08gc3lzdGVtcy4gIFRo
ZXJlZm9yZSwgbGlidG9vbAoqKiogaXMgZGlzYWJsaW5nIHNoYXJlZCBsaWJyYXJpZXMgc3VwcG9y
dC4gIFdlIHVyZ2UgeW91IHRvIHVwZ3JhZGUgR05VCioqKiBiaW51dGlscyB0byByZWxlYXNlIDIu
MTYuOTEuMC4zIG9yIG5ld2VyLiAgQW5vdGhlciBvcHRpb24gaXMgdG8gbW9kaWZ5CioqKiB5b3Vy
IFBBVEggb3IgY29tcGlsZXIgY29uZmlndXJhdGlvbiBzbyB0aGF0IHRoZSBuYXRpdmUgbGlua2Vy
IGlzCioqKiB1c2VkLCBhbmQgdGhlbiByZXN0YXJ0LgoKX0xUX0VPRgoJOzsKCSopCgkgIGlmICRM
RCAtLWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYv
bnVsbDsgdGhlbgoJICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywg
JDEpPSdgdGVzdCAteiAiJFNDT0FCU1BBVEgiICYmIGVjaG8gJHt3bH0tcnBhdGgsJGxpYmRpcmAn
CgkgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJGxpYm9i
anMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSxcJHtTQ09BQlNQQVRIOisk
e2luc3RhbGxfbGliZGlyfS99JHNvbmFtZSAtbyAkbGliJwoJICAgIF9MVF9BQ19UQUdWQVIoYXJj
aGl2ZV9leHBzeW1fY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29t
cGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lLFwke1NDT0FCU1BBVEg6KyR7aW5zdGFsbF9saWJkaXJ9
L30kc29uYW1lLC1yZXRhaW4tc3ltYm9scy1maWxlLCRleHBvcnRfc3ltYm9scyAtbyAkbGliJwoJ
ICBlbHNlCgkgICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwoJICBmaQoJOzsKICAg
ICAgZXNhYwogICAgICA7OwoKICAgIHN1bm9zNCopCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2
ZV9jbWRzLCAkMSk9JyRMRCAtYXNzZXJ0IHB1cmUtdGV4dCAtQnNoYXJlYWJsZSAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCiAgICAgIHdsYXJjPQogICAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRj
b2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgICA7OwoKICAgICopCiAgICAgIGlmICRMRCAt
LWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVs
bDsgdGhlbgoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJGxp
Ym9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1v
ICRsaWInCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJENDIC1zaGFy
ZWQgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29u
YW1lICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUgJHdsJGV4cG9ydF9zeW1ib2xzIC1vICRsaWIn
CiAgICAgIGVsc2UKCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KICAgICAgZmkKICAg
ICAgOzsKICAgIGVzYWMKCiAgICBpZiB0ZXN0ICIkX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQx
KSIgPSBubzsgdGhlbgogICAgICBydW5wYXRoX3Zhcj0KICAgICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9CiAgICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5
bmFtaWNfZmxhZ19zcGVjLCAkMSk9CiAgICAgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9m
bGFnX3NwZWMsICQxKT0KICAgIGZpCiAgZWxzZQogICAgIyBQT1JUTUUgZmlsbCBpbiBhIGRlc2Ny
aXB0aW9uIG9mIHlvdXIgc3lzdGVtJ3MgbGlua2VyIChub3QgR05VIGxkKQogICAgY2FzZSAkaG9z
dF9vcyBpbgogICAgYWl4MyopCiAgICAgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2Zs
YWcsICQxKT11bnN1cHBvcnRlZAogICAgICBfTFRfQUNfVEFHVkFSKGFsd2F5c19leHBvcnRfc3lt
Ym9scywgJDEpPXllcwogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQx
KT0nJExEIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtl
cl9mbGFncyAtYkU6JGV4cG9ydF9zeW1ib2xzIC1UNTEyIC1INTEyIC1iTTpTUkV+JEFSICRBUl9G
TEFHUyAkbGliICRvdXRwdXRfb2JqZGlyLyRzb25hbWUnCiAgICAgICMgTm90ZTogdGhpcyBsaW5r
ZXIgaGFyZGNvZGVzIHRoZSBkaXJlY3RvcmllcyBpbiBMSUJQQVRIIGlmIHRoZXJlCiAgICAgICMg
YXJlIG5vIGRpcmVjdG9yaWVzIHNwZWNpZmllZCBieSAtTC4KICAgICAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9taW51c19MLCAkMSk9eWVzCiAgICAgIGlmIHRlc3QgIiRHQ0MiID0geWVzICYmIHRl
c3QgLXogIiRsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYyI7IHRoZW4KCSMgTmVpdGhlciBkaXJlY3Qg
aGFyZGNvZGluZyBub3Igc3RhdGljIGxpbmtpbmcgaXMgc3VwcG9ydGVkIHdpdGggYQoJIyBicm9r
ZW4gY29sbGVjdDIuCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXVuc3VwcG9y
dGVkCiAgICAgIGZpCiAgICAgIDs7CgogICAgYWl4NCogfCBhaXg1KikKICAgICAgaWYgdGVzdCAi
JGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KCSMgT24gSUE2NCwgdGhlIGxpbmtlciBkb2VzIHJ1biB0
aW1lIGxpbmtpbmcgYnkgZGVmYXVsdCwgc28gd2UgZG9uJ3QKCSMgaGF2ZSB0byBkbyBhbnl0aGlu
ZyBzcGVjaWFsLgoJYWl4X3VzZV9ydW50aW1lbGlua2luZz1ubwoJZXhwX3N5bV9mbGFnPSctQmV4
cG9ydCcKCW5vX2VudHJ5X2ZsYWc9IiIKICAgICAgZWxzZQoJIyBJZiB3ZSdyZSB1c2luZyBHTlUg
bm0sIHRoZW4gd2UgZG9uJ3Qgd2FudCB0aGUgIi1DIiBvcHRpb24uCgkjIC1DIG1lYW5zIGRlbWFu
Z2xlIHRvIEFJWCBubSwgYnV0IG1lYW5zIGRvbid0IGRlbWFuZ2xlIHdpdGggR05VIG5tCglpZiAk
Tk0gLVYgMj4mMSB8IGdyZXAgJ0dOVScgPiAvZGV2L251bGw7IHRoZW4KCSAgX0xUX0FDX1RBR1ZB
UihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9JyROTSAtQnBnICRsaWJvYmpzICRjb252ZW5pZW5j
ZSB8IGF3ayAnXCcneyBpZiAoKChcWyRdMiA9PSAiVCIpIHx8IChcWyRdMiA9PSAiRCIpIHx8IChc
WyRdMiA9PSAiQiIpKSAmJiAoW3N1YnN0cl0oXFskXTMsMSwxKSAhPSAiLiIpKSB7IHByaW50IFxb
JF0zIH0gfSdcJycgfCBzb3J0IC11ID4gJGV4cG9ydF9zeW1ib2xzJwoJZWxzZQoJICBfTFRfQUNf
VEFHVkFSKGV4cG9ydF9zeW1ib2xzX2NtZHMsICQxKT0nJE5NIC1CQ3BnICRsaWJvYmpzICRjb252
ZW5pZW5jZSB8IGF3ayAnXCcneyBpZiAoKChcWyRdMiA9PSAiVCIpIHx8IChcWyRdMiA9PSAiRCIp
IHx8IChcWyRdMiA9PSAiQiIpKSAmJiAoW3N1YnN0cl0oXFskXTMsMSwxKSAhPSAiLiIpKSB7IHBy
aW50IFxbJF0zIH0gfSdcJycgfCBzb3J0IC11ID4gJGV4cG9ydF9zeW1ib2xzJwoJZmkKCWFpeF91
c2VfcnVudGltZWxpbmtpbmc9bm8KCgkjIFRlc3QgaWYgd2UgYXJlIHRyeWluZyB0byB1c2UgcnVu
IHRpbWUgbGlua2luZyBvciBub3JtYWwKCSMgQUlYIHN0eWxlIGxpbmtpbmcuIElmIC1icnRsIGlz
IHNvbWV3aGVyZSBpbiBMREZMQUdTLCB3ZQoJIyBuZWVkIHRvIGRvIHJ1bnRpbWUgbGlua2luZy4K
CWNhc2UgJGhvc3Rfb3MgaW4gYWl4NC5bWzIzXV18YWl4NC5bWzIzXV0uKnxhaXg1KikKCSAgZm9y
IGxkX2ZsYWcgaW4gJExERkxBR1M7IGRvCiAgCSAgaWYgKHRlc3QgJGxkX2ZsYWcgPSAiLWJydGwi
IHx8IHRlc3QgJGxkX2ZsYWcgPSAiLVdsLC1icnRsIik7IHRoZW4KICAJICAgIGFpeF91c2VfcnVu
dGltZWxpbmtpbmc9eWVzCiAgCSAgICBicmVhawogIAkgIGZpCgkgIGRvbmUKCSAgOzsKCWVzYWMK
CglleHBfc3ltX2ZsYWc9Jy1iZXhwb3J0JwoJbm9fZW50cnlfZmxhZz0nLWJub2VudHJ5JwogICAg
ICBmaQoKICAgICAgIyBXaGVuIGxhcmdlIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzIGFy
ZSBidWlsdCwgQUlYIGxkIGNhbgogICAgICAjIGhhdmUgcHJvYmxlbXMgY3JlYXRpbmcgdGhlIHRh
YmxlIG9mIGNvbnRlbnRzLiAgSWYgbGlua2luZyBhIGxpYnJhcnkKICAgICAgIyBvciBwcm9ncmFt
IHJlc3VsdHMgaW4gImVycm9yIFRPQyBvdmVyZmxvdyIgYWRkIC1tbWluaW1hbC10b2MgdG8KICAg
ICAgIyBDWFhGTEFHUy9DRkxBR1MgZm9yIGcrKy9nY2MuICBJbiB0aGUgY2FzZXMgd2hlcmUgdGhh
dCBpcyBub3QKICAgICAgIyBlbm91Z2ggdG8gZml4IHRoZSBwcm9ibGVtLCBhZGQgLVdsLC1iYmln
dG9jIHRvIExERkxBR1MuCgogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPScn
CiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCiAgICAgIF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPSc6JwogICAgICBfTFRfQUNf
VEFHVkFSKGxpbmtfYWxsX2RlcGxpYnMsICQxKT15ZXMKCiAgICAgIGlmIHRlc3QgIiRHQ0MiID0g
eWVzOyB0aGVuCgljYXNlICRob3N0X29zIGluIGFpeDQuW1swMTJdXXxhaXg0LltbMDEyXV0uKikK
CSMgV2Ugb25seSB3YW50IHRvIGRvIHRoaXMgb24gQUlYIDQuMiBhbmQgbG93ZXIsIHRoZSBjaGVj
awoJIyBiZWxvdyBmb3IgYnJva2VuIGNvbGxlY3QyIGRvZXNuJ3Qgd29yayB1bmRlciA0LjMrCgkg
IGNvbGxlY3QybmFtZT1gJHtDQ30gLXByaW50LXByb2ctbmFtZT1jb2xsZWN0MmAKCSAgaWYgdGVz
dCAtZiAiJGNvbGxlY3QybmFtZSIgJiYgXAogIAkgICBzdHJpbmdzICIkY29sbGVjdDJuYW1lIiB8
IGdyZXAgcmVzb2x2ZV9saWJfbmFtZSA+L2Rldi9udWxsCgkgIHRoZW4KICAJICAjIFdlIGhhdmUg
cmV3b3JrZWQgY29sbGVjdDIKICAJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEp
PXllcwoJICBlbHNlCiAgCSAgIyBXZSBoYXZlIG9sZCBjb2xsZWN0MgogIAkgIF9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9dW5zdXBwb3J0ZWQKICAJICAjIEl0IGZhaWxzIHRvIGZp
bmQgdW5pbnN0YWxsZWQgbGlicmFyaWVzIHdoZW4gdGhlIHVuaW5zdGFsbGVkCiAgCSAgIyBwYXRo
IGlzIG5vdCBsaXN0ZWQgaW4gdGhlIGxpYnBhdGguICBTZXR0aW5nIGhhcmRjb2RlX21pbnVzX0wK
ICAJICAjIHRvIHVuc3VwcG9ydGVkIGZvcmNlcyByZWxpbmtpbmcKICAJICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX21pbnVzX0wsICQxKT15ZXMKICAJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xp
YmRpcl9mbGFnX3NwZWMsICQxKT0nLUwkbGliZGlyJwogIAkgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPQoJICBmaQoJICA7OwoJZXNhYwoJc2hhcmVkX2ZsYWc9
Jy1zaGFyZWQnCglpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSB5ZXM7IHRoZW4K
CSAgc2hhcmVkX2ZsYWc9IiRzaGFyZWRfZmxhZyAiJyR7d2x9LUcnCglmaQogICAgICBlbHNlCgkj
IG5vdCB1c2luZyBnY2MKCWlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCiAgCSMgVmlz
dWFsQWdlIEMrKywgVmVyc2lvbiA1LjUgZm9yIEFJWCA1TCBmb3IgSUEtNjQsIEJldGEgMyBSZWxl
YXNlCiAgCSMgY2hva2VzIG9uIC1XbCwtRy4gVGhlIGZvbGxvd2luZyBsaW5lIGlzIGNvcnJlY3Q6
CgkgIHNoYXJlZF9mbGFnPSctRycKCWVsc2UKCSAgaWYgdGVzdCAiJGFpeF91c2VfcnVudGltZWxp
bmtpbmciID0geWVzOyB0aGVuCgkgICAgc2hhcmVkX2ZsYWc9JyR7d2x9LUcnCgkgIGVsc2UKCSAg
ICBzaGFyZWRfZmxhZz0nJHt3bH0tYk06U1JFJwoJICBmaQoJZmkKICAgICAgZmkKCiAgICAgICMg
SXQgc2VlbXMgdGhhdCAtYmV4cGFsbCBkb2VzIG5vdCBleHBvcnQgc3ltYm9scyBiZWdpbm5pbmcg
d2l0aAogICAgICAjIHVuZGVyc2NvcmUgKF8pLCBzbyBpdCBpcyBiZXR0ZXIgdG8gZ2VuZXJhdGUg
YSBsaXN0IG9mIHN5bWJvbHMgdG8gZXhwb3J0LgogICAgICBfTFRfQUNfVEFHVkFSKGFsd2F5c19l
eHBvcnRfc3ltYm9scywgJDEpPXllcwogICAgICBpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlu
a2luZyIgPSB5ZXM7IHRoZW4KCSMgV2FybmluZyAtIHdpdGhvdXQgdXNpbmcgdGhlIG90aGVyIHJ1
bnRpbWUgbG9hZGluZyBmbGFncyAoLWJydGwpLAoJIyAtYmVyb2sgd2lsbCBsaW5rIHdpdGhvdXQg
ZXJyb3IsIGJ1dCBtYXkgcHJvZHVjZSBhIGJyb2tlbiBsaWJyYXJ5LgoJX0xUX0FDX1RBR1ZBUihh
bGxvd191bmRlZmluZWRfZmxhZywgJDEpPSctYmVyb2snCiAgICAgICAjIERldGVybWluZSB0aGUg
ZGVmYXVsdCBsaWJwYXRoIGZyb20gdGhlIHZhbHVlIGVuY29kZWQgaW4gYW4gZW1wdHkgZXhlY3V0
YWJsZS4KICAgICAgIF9MVF9BQ19TWVNfTElCUEFUSF9BSVgKICAgICAgIF9MVF9BQ19UQUdWQVIo
aGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ibGlicGF0aDokbGliZGlyOici
JGFpeF9saWJwYXRoIgoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9Ilwk
Q0MiJyAtbyAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWJvYmpzICRkZXBsaWJzICciXCR7d2x9
JG5vX2VudHJ5X2ZsYWciJyAkY29tcGlsZXJfZmxhZ3MgYGlmIHRlc3QgIngke2FsbG93X3VuZGVm
aW5lZF9mbGFnfSIgIT0gIngiOyB0aGVuIGVjaG8gIiR7d2x9JHthbGxvd191bmRlZmluZWRfZmxh
Z30iOyBlbHNlIDo7IGZpYCAnIlwke3dsfSRleHBfc3ltX2ZsYWc6XCRleHBvcnRfc3ltYm9scyAk
c2hhcmVkX2ZsYWciCiAgICAgICBlbHNlCglpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhl
bgoJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0t
UiAkbGliZGlyOi91c3IvbGliOi9saWInCgkgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVk
X2ZsYWcsICQxKT0iLXogbm9kZWZzIgoJICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2Nt
ZHMsICQxKT0iXCRDQyAkc2hhcmVkX2ZsYWciJyAtbyAkb3V0cHV0X29iamRpci8kc29uYW1lICRs
aWJvYmpzICRkZXBsaWJzICciXCR7d2x9JG5vX2VudHJ5X2ZsYWciJyAkY29tcGlsZXJfZmxhZ3Mg
JHt3bH0ke2FsbG93X3VuZGVmaW5lZF9mbGFnfSAnIlwke3dsfSRleHBfc3ltX2ZsYWc6XCRleHBv
cnRfc3ltYm9scyIKCWVsc2UKCSAjIERldGVybWluZSB0aGUgZGVmYXVsdCBsaWJwYXRoIGZyb20g
dGhlIHZhbHVlIGVuY29kZWQgaW4gYW4gZW1wdHkgZXhlY3V0YWJsZS4KCSBfTFRfQUNfU1lTX0xJ
QlBBVEhfQUlYCgkgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9
JyR7d2x9LWJsaWJwYXRoOiRsaWJkaXI6JyIkYWl4X2xpYnBhdGgiCgkgICMgV2FybmluZyAtIHdp
dGhvdXQgdXNpbmcgdGhlIG90aGVyIHJ1biB0aW1lIGxvYWRpbmcgZmxhZ3MsCgkgICMgLWJlcm9r
IHdpbGwgbGluayB3aXRob3V0IGVycm9yLCBidXQgbWF5IHByb2R1Y2UgYSBicm9rZW4gbGlicmFy
eS4KCSAgX0xUX0FDX1RBR1ZBUihub191bmRlZmluZWRfZmxhZywgJDEpPScgJHt3bH0tYmVybm90
b2snCgkgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nICR7d2x9LWJl
cm9rJwoJICAjIEV4cG9ydGVkIHN5bWJvbHMgY2FuIGJlIHB1bGxlZCBpbnRvIHNoYXJlZCBvYmpl
Y3RzIGZyb20gYXJjaGl2ZXMKCSAgX0xUX0FDX1RBR1ZBUih3aG9sZV9hcmNoaXZlX2ZsYWdfc3Bl
YywgJDEpPSckY29udmVuaWVuY2UnCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRf
bGMsICQxKT15ZXMKCSAgIyBUaGlzIGlzIHNpbWlsYXIgdG8gaG93IEFJWCB0cmFkaXRpb25hbGx5
IGJ1aWxkcyBpdHMgc2hhcmVkIGxpYnJhcmllcy4KCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4
cHN5bV9jbWRzLCAkMSk9IlwkQ0MgJHNoYXJlZF9mbGFnIicgLW8gJG91dHB1dF9vYmpkaXIvJHNv
bmFtZSAkbGlib2JqcyAkZGVwbGlicyAke3dsfS1ibm9lbnRyeSAkY29tcGlsZXJfZmxhZ3MgJHt3
bH0tYkU6JGV4cG9ydF9zeW1ib2xzJHthbGxvd191bmRlZmluZWRfZmxhZ31+JEFSICRBUl9GTEFH
UyAkb3V0cHV0X29iamRpci8kbGlibmFtZSRyZWxlYXNlLmEgJG91dHB1dF9vYmpkaXIvJHNvbmFt
ZScKCWZpCiAgICAgIGZpCiAgICAgIDs7CgogICAgYW1pZ2FvcyopCiAgICAgIF9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRybSAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRh
fiRlY2hvICIjZGVmaW5lIE5BTUUgJGxpYm5hbWUiID4gJG91dHB1dF9vYmpkaXIvYTJpeGxpYnJh
cnkuZGF0YX4kZWNobyAiI2RlZmluZSBMSUJSQVJZX0lEIDEiID4+ICRvdXRwdXRfb2JqZGlyL2Ey
aXhsaWJyYXJ5LmRhdGF+JGVjaG8gIiNkZWZpbmUgVkVSU0lPTiAkbWFqb3IiID4+ICRvdXRwdXRf
b2JqZGlyL2EyaXhsaWJyYXJ5LmRhdGF+JGVjaG8gIiNkZWZpbmUgUkVWSVNJT04gJHJldmlzaW9u
IiA+PiAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRhfiRBUiAkQVJfRkxBR1MgJGxpYiAk
bGlib2Jqc34kUkFOTElCICRsaWJ+KGNkICRvdXRwdXRfb2JqZGlyICYmIGEyaXhsaWJyYXJ5IC0z
MiknCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSct
TCRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwog
ICAgICAjIHNlZSBjb21tZW50IGFib3V0IGRpZmZlcmVudCBzZW1hbnRpY3Mgb24gdGhlIEdOVSBs
ZCBzZWN0aW9uCiAgICAgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KICAgICAgOzsK
CiAgICBic2RpW1s0NV1dKikKICAgICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19mbGFn
X3NwZWMsICQxKT0tcmR5bmFtaWMKICAgICAgOzsKCiAgICBjeWd3aW4qIHwgbWluZ3cqIHwgcHcz
MiopCiAgICAgICMgV2hlbiBub3QgdXNpbmcgZ2NjLCB3ZSBjdXJyZW50bHkgYXNzdW1lIHRoYXQg
d2UgYXJlIHVzaW5nCiAgICAgICMgTWljcm9zb2Z0IFZpc3VhbCBDKysuCiAgICAgICMgaGFyZGNv
ZGVfbGliZGlyX2ZsYWdfc3BlYyBpcyBhY3R1YWxseSBtZWFuaW5nbGVzcywgYXMgdGhlcmUgaXMK
ICAgICAgIyBubyBzZWFyY2ggcGF0aCBmb3IgRExMcy4KICAgICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyAnCiAgICAgIF9MVF9BQ19UQUdWQVIoYWxsb3df
dW5kZWZpbmVkX2ZsYWcsICQxKT11bnN1cHBvcnRlZAogICAgICAjIFRlbGwgbHRtYWluIHRvIG1h
a2UgLmxpYiBmaWxlcywgbm90IC5hIGZpbGVzLgogICAgICBsaWJleHQ9bGliCiAgICAgICMgVGVs
bCBsdG1haW4gdG8gbWFrZSAuZGxsIGZpbGVzLCBub3QgLnNvIGZpbGVzLgogICAgICBzaHJleHRf
Y21kcz0iLmRsbCIKICAgICAgIyBGSVhNRTogU2V0dGluZyBsaW5rbmFtZXMgaGVyZSBpcyBhIGJh
ZCBoYWNrLgogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLW8gJGxp
YiAkbGlib2JqcyAkY29tcGlsZXJfZmxhZ3MgYGVjaG8gIiRkZXBsaWJzIiB8ICRTRUQgLWUgJ1wn
J3MvIC1sYyQvLydcJydgIC1saW5rIC1kbGx+bGlua25hbWVzPScKICAgICAgIyBUaGUgbGlua2Vy
IHdpbGwgYXV0b21hdGljYWxseSBidWlsZCBhIC5saWIgZmlsZSBpZiB3ZSBidWlsZCBhIERMTC4K
ICAgICAgX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9Gcm9tX25ld19jbWRzLCAkMSk9J3RydWUn
CiAgICAgICMgRklYTUU6IFNob3VsZCBsZXQgdGhlIHVzZXIgc3BlY2lmeSB0aGUgbGliIHByb2dy
YW0uCiAgICAgIF9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfY21kcywgJDEpPSdsaWIgL09VVDok
b2xkbGliJG9sZG9ianMkb2xkX2RlcGxpYnMnCiAgICAgIF9MVF9BQ19UQUdWQVIoZml4X3NyY2Zp
bGVfcGF0aCwgJDEpPSdgY3lncGF0aCAtdyAiJHNyY2ZpbGUiYCcKICAgICAgX0xUX0FDX1RBR1ZB
UihlbmFibGVfc2hhcmVkX3dpdGhfc3RhdGljX3J1bnRpbWVzLCAkMSk9eWVzCiAgICAgIDs7Cgog
ICAgZGFyd2luKiB8IHJoYXBzb2R5KikKICAgICAgY2FzZSAkaG9zdF9vcyBpbgogICAgICAgIHJo
YXBzb2R5KiB8IGRhcndpbjEuW1swMTJdXSkKICAgICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191
bmRlZmluZWRfZmxhZywgJDEpPScke3dsfS11bmRlZmluZWQgJHt3bH1zdXBwcmVzcycKICAgICAg
ICAgOzsKICAgICAgICopICMgRGFyd2luIDEuMyBvbgogICAgICAgICBpZiB0ZXN0IC16ICR7TUFD
T1NYX0RFUExPWU1FTlRfVEFSR0VUfSA7IHRoZW4KICAgICAgICAgICBfTFRfQUNfVEFHVkFSKGFs
bG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyR7d2x9LWZsYXRfbmFtZXNwYWNlICR7d2x9LXVuZGVm
aW5lZCAke3dsfXN1cHByZXNzJwogICAgICAgICBlbHNlCiAgICAgICAgICAgY2FzZSAke01BQ09T
WF9ERVBMT1lNRU5UX1RBUkdFVH0gaW4KICAgICAgICAgICAgIDEwLltbMDEyXV0pCiAgICAgICAg
ICAgICAgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nJHt3bH0tZmxh
dF9uYW1lc3BhY2UgJHt3bH0tdW5kZWZpbmVkICR7d2x9c3VwcHJlc3MnCiAgICAgICAgICAgICAg
IDs7CiAgICAgICAgICAgICAxMC4qKQogICAgICAgICAgICAgICBfTFRfQUNfVEFHVkFSKGFsbG93
X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyR7d2x9LXVuZGVmaW5lZCAke3dsfWR5bmFtaWNfbG9va3Vw
JwogICAgICAgICAgICAgICA7OwogICAgICAgICAgIGVzYWMKICAgICAgICAgZmkKICAgICAgICAg
OzsKICAgICAgZXNhYwogICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAk
MSk9bm8KICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT1ubwogICAgICBf
TFRfQUNfVEFHVkFSKGhhcmRjb2RlX2F1dG9tYXRpYywgJDEpPXllcwogICAgICBfTFRfQUNfVEFH
VkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT11bnN1cHBvcnRlZAogICAgICBfTFRfQUNf
VEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9JycKICAgICAgX0xUX0FDX1RBR1ZB
UihsaW5rX2FsbF9kZXBsaWJzLCAkMSk9eWVzCiAgICBpZiB0ZXN0ICIkR0NDIiA9IHllcyA7IHRo
ZW4KICAgIAlvdXRwdXRfdmVyYm9zZV9saW5rX2NtZD0nZWNobycKICAgICAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLWR5bmFtaWNsaWIgJGFsbG93X3VuZGVmaW5lZF9m
bGFnIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzIC1pbnN0YWxsX25h
bWUgJHJwYXRoLyRzb25hbWUgJHZlcnN0cmluZycKICAgICAgX0xUX0FDX1RBR1ZBUihtb2R1bGVf
Y21kcywgJDEpPSckQ0MgJGFsbG93X3VuZGVmaW5lZF9mbGFnIC1vICRsaWIgLWJ1bmRsZSAkbGli
b2JqcyAkZGVwbGlicyRjb21waWxlcl9mbGFncycKICAgICAgIyBEb24ndCBmaXggdGhpcyBieSB1
c2luZyB0aGUgbGQgLWV4cG9ydGVkX3N5bWJvbHNfbGlzdCBmbGFnLCBpdCBkb2Vzbid0IGV4aXN0
IGluIG9sZGVyIGRhcndpbiBsZHMKICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9j
bWRzLCAkMSk9J3NlZCAtZSAicywjLiosLCIgLWUgInMsXlsgICAgXSosLCIgLWUgInMsXlwoLi4q
XCksXyYsIiA8ICRleHBvcnRfc3ltYm9scyA+ICRvdXRwdXRfb2JqZGlyLyR7bGlibmFtZX0tc3lt
Ym9scy5leHBzeW1+JENDIC1keW5hbWljbGliICRhbGxvd191bmRlZmluZWRfZmxhZyAtbyAkbGli
ICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAtaW5zdGFsbF9uYW1lICRycGF0aC8k
c29uYW1lICR2ZXJzdHJpbmd+bm1lZGl0IC1zICRvdXRwdXRfb2JqZGlyLyR7bGlibmFtZX0tc3lt
Ym9scy5leHBzeW0gJHtsaWJ9JwogICAgICBfTFRfQUNfVEFHVkFSKG1vZHVsZV9leHBzeW1fY21k
cywgJDEpPSdzZWQgLWUgInMsIy4qLCwiIC1lICJzLF5bICAgIF0qLCwiIC1lICJzLF5cKC4uKlwp
LF8mLCIgPCAkZXhwb3J0X3N5bWJvbHMgPiAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJv
bHMuZXhwc3ltfiRDQyAkYWxsb3dfdW5kZWZpbmVkX2ZsYWcgIC1vICRsaWIgLWJ1bmRsZSAkbGli
b2JqcyAkZGVwbGlicyRjb21waWxlcl9mbGFnc35ubWVkaXQgLXMgJG91dHB1dF9vYmpkaXIvJHts
aWJuYW1lfS1zeW1ib2xzLmV4cHN5bSAke2xpYn0nCiAgICBlbHNlCiAgICAgIGNhc2UgJGNjX2Jh
c2VuYW1lIGluCiAgICAgICAgeGxjKikKICAgICAgICAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9
J2VjaG8nCiAgICAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtcW1r
c2hyb2JqICRhbGxvd191bmRlZmluZWRfZmxhZyAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRj
b21waWxlcl9mbGFncyAke3dsfS1pbnN0YWxsX25hbWUgJHt3bH1gZWNobyAkcnBhdGgvJHNvbmFt
ZWAgJHZlcnN0cmluZycKICAgICAgICAgX0xUX0FDX1RBR1ZBUihtb2R1bGVfY21kcywgJDEpPSck
Q0MgJGFsbG93X3VuZGVmaW5lZF9mbGFnIC1vICRsaWIgLWJ1bmRsZSAkbGlib2JqcyAkZGVwbGli
cyRjb21waWxlcl9mbGFncycKICAgICAgICAgICMgRG9uJ3QgZml4IHRoaXMgYnkgdXNpbmcgdGhl
IGxkIC1leHBvcnRlZF9zeW1ib2xzX2xpc3QgZmxhZywgaXQgZG9lc24ndCBleGlzdCBpbiBvbGRl
ciBkYXJ3aW4gbGRzCiAgICAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywg
JDEpPSdzZWQgLWUgInMsIy4qLCwiIC1lICJzLF5bICAgIF0qLCwiIC1lICJzLF5cKC4uKlwpLF8m
LCIgPCAkZXhwb3J0X3N5bWJvbHMgPiAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9LXN5bWJvbHMu
ZXhwc3ltfiRDQyAtcW1rc2hyb2JqICRhbGxvd191bmRlZmluZWRfZmxhZyAtbyAkbGliICRsaWJv
YmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1pbnN0YWxsX25hbWUgJHt3bH0kcnBh
dGgvJHNvbmFtZSAkdmVyc3RyaW5nfm5tZWRpdCAtcyAkb3V0cHV0X29iamRpci8ke2xpYm5hbWV9
LXN5bWJvbHMuZXhwc3ltICR7bGlifScKICAgICAgICAgIF9MVF9BQ19UQUdWQVIobW9kdWxlX2V4
cHN5bV9jbWRzLCAkMSk9J3NlZCAtZSAicywjLiosLCIgLWUgInMsXlsgICAgXSosLCIgLWUgInMs
XlwoLi4qXCksXyYsIiA8ICRleHBvcnRfc3ltYm9scyA+ICRvdXRwdXRfb2JqZGlyLyR7bGlibmFt
ZX0tc3ltYm9scy5leHBzeW1+JENDICRhbGxvd191bmRlZmluZWRfZmxhZyAgLW8gJGxpYiAtYnVu
ZGxlICRsaWJvYmpzICRkZXBsaWJzJGNvbXBpbGVyX2ZsYWdzfm5tZWRpdCAtcyAkb3V0cHV0X29i
amRpci8ke2xpYm5hbWV9LXN5bWJvbHMuZXhwc3ltICR7bGlifScKICAgICAgICAgIDs7CiAgICAg
ICAqKQogICAgICAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgICAgICA7
OwogICAgICBlc2FjCiAgICBmaQogICAgICA7OwoKICAgIGRndXgqKQogICAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpz
ICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGli
ZGlyX2ZsYWdfc3BlYywgJDEpPSctTCRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCiAgICAgIDs7CgogICAgZnJlZWJzZDEqKQogICAgICBf
TFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgIDs7CgogICAgIyBGcmVlQlNEIDIu
Mi5bMDEyXSBhbGxvd3MgdXMgdG8gaW5jbHVkZSBjKytydDAubyB0byBnZXQgQysrIGNvbnN0cnVj
dG9yCiAgICAjIHN1cHBvcnQuICBGdXR1cmUgdmVyc2lvbnMgZG8gdGhpcyBhdXRvbWF0aWNhbGx5
LCBidXQgYW4gZXhwbGljaXQgYysrcnQwLm8KICAgICMgZG9lcyBub3QgYnJlYWsgYW55dGhpbmcs
IGFuZCBoZWxwcyBzaWduaWZpY2FudGx5IChhdCB0aGUgY29zdCBvZiBhIGxpdHRsZQogICAgIyBl
eHRyYSBzcGFjZSkuCiAgICBmcmVlYnNkMi4yKikKICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHMsICQxKT0nJExEIC1Cc2hhcmVhYmxlIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxp
bmtlcl9mbGFncyAvdXNyL2xpYi9jKytydDAubycKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1SJGxpYmRpcicKICAgICAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9kaXJlY3QsICQxKT15ZXMKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxp
YnBhdGhfdmFyLCAkMSk9bm8KICAgICAgOzsKCiAgICAjIFVuZm9ydHVuYXRlbHksIG9sZGVyIHZl
cnNpb25zIG9mIEZyZWVCU0QgMiBkbyBub3QgaGF2ZSB0aGlzIGZlYXR1cmUuCiAgICBmcmVlYnNk
MiopCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtQnNoYXJlYWJs
ZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCiAgICAgIF9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfbWludXNfTCwgJDEpPXllcwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0
aF92YXIsICQxKT1ubwogICAgICA7OwoKICAgICMgRnJlZUJTRCAzIGFuZCBncmVhdGVyIHVzZXMg
Z2NjIC1zaGFyZWQgdG8gZG8gc2hhcmVkIGxpYnJhcmllcy4KICAgIGZyZWVic2QqIHwga2ZyZWVi
c2QqLWdudSB8IGRyYWdvbmZseSopCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAk
MSk9JyRDQyAtc2hhcmVkIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdz
JwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLVIk
bGliZGlyJwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwogICAg
ICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgICA7OwoK
ICAgIGhwdXg5KikKICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KCV9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRybSAkb3V0cHV0X29iamRpci8kc29uYW1lfiRDQyAtc2hh
cmVkIC1mUElDICR7d2x9K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIgLW8gJG91dHB1dF9vYmpkaXIv
JHNvbmFtZSAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3N+dGVzdCAkb3V0cHV0X29i
amRpci8kc29uYW1lID0gJGxpYiB8fCBtdiAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWInCiAg
ICAgIGVsc2UKCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRybSAkb3V0cHV0X29i
amRpci8kc29uYW1lfiRMRCAtYiArYiAkaW5zdGFsbF9saWJkaXIgLW8gJG91dHB1dF9vYmpkaXIv
JHNvbmFtZSAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzfnRlc3QgJG91dHB1dF9vYmpk
aXIvJHNvbmFtZSA9ICRsaWIgfHwgbXYgJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkbGliJwogICAg
ICBmaQogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0n
JHt3bH0rYiAke3dsfSRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X3NlcGFyYXRvciwgJDEpPToKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQx
KT15ZXMKCiAgICAgICMgaGFyZGNvZGVfbWludXNfTDogTm90IHJlYWxseSBpbiB0aGUgc2VhcmNo
IFBBVEgsCiAgICAgICMgYnV0IGFzIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBsaWJyYXJ5
LgogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKT15ZXMKICAgICAgX0xU
X0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19mbGFnX3NwZWMsICQxKT0nJHt3bH0tRScKICAgICAg
OzsKCiAgICBocHV4MTAqKQogICAgICBpZiB0ZXN0ICIkR0NDIiA9IHllcyAtYSAiJHdpdGhfZ251
X2xkIiA9IG5vOyB0aGVuCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNo
YXJlZCAtZlBJQyAke3dsfStoICR7d2x9JHNvbmFtZSAke3dsfStiICR7d2x9JGluc3RhbGxfbGli
ZGlyIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwogICAgICBlbHNl
CglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLWIgK2ggJHNvbmFtZSArYiAk
aW5zdGFsbF9saWJkaXIgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwog
ICAgICBmaQogICAgICBpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0gbm87IHRoZW4KCV9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfStiICR7d2x9JGxpYmRp
cicKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPToKCglfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwoJX0xUX0FDX1RBR1ZBUihleHBvcnRf
ZHluYW1pY19mbGFnX3NwZWMsICQxKT0nJHt3bH0tRScKCgkjIGhhcmRjb2RlX21pbnVzX0w6IE5v
dCByZWFsbHkgaW4gdGhlIHNlYXJjaCBQQVRILAoJIyBidXQgYXMgdGhlIGRlZmF1bHQgbG9jYXRp
b24gb2YgdGhlIGxpYnJhcnkuCglfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKT15
ZXMKICAgICAgZmkKICAgICAgOzsKCiAgICBocHV4MTEqKQogICAgICBpZiB0ZXN0ICIkR0NDIiA9
IHllcyAtYSAiJHdpdGhfZ251X2xkIiA9IG5vOyB0aGVuCgljYXNlICRob3N0X2NwdSBpbgoJaHBw
YSo2NCopCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICR7
d2x9K2ggJHt3bH0kc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2Zs
YWdzJwoJICA7OwoJaWE2NCopCgkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkICR7d2x9K2ggJHt3bH0kc29uYW1lICR7d2x9K25vZGVmYXVsdHJwYXRoIC1vICRs
aWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJICA7OwoJKikKCSAgX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLWZQSUMgJHt3bH0raCAke3ds
fSRzb25hbWUgJHt3bH0rYiAke3dsfSRpbnN0YWxsX2xpYmRpciAtbyAkbGliICRsaWJvYmpzICRk
ZXBsaWJzICRjb21waWxlcl9mbGFncycKCSAgOzsKCWVzYWMKICAgICAgZWxzZQoJY2FzZSAkaG9z
dF9jcHUgaW4KCWhwcGEqNjQqKQoJICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSck
Q0MgLWIgJHt3bH0raCAke3dsfSRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29t
cGlsZXJfZmxhZ3MnCgkgIDs7CglpYTY0KikKCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMs
ICQxKT0nJENDIC1iICR7d2x9K2ggJHt3bH0kc29uYW1lICR7d2x9K25vZGVmYXVsdHJwYXRoIC1v
ICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJICA7OwoJKikKCSAgX0xU
X0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1iICR7d2x9K2ggJHt3bH0kc29uYW1l
ICR7d2x9K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAk
Y29tcGlsZXJfZmxhZ3MnCgkgIDs7Cgllc2FjCiAgICAgIGZpCiAgICAgIGlmIHRlc3QgIiR3aXRo
X2dudV9sZCIgPSBubzsgdGhlbgoJX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19z
cGVjLCAkMSk9JyR7d2x9K2IgJHt3bH0kbGliZGlyJwoJX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9s
aWJkaXJfc2VwYXJhdG9yLCAkMSk9OgoKCWNhc2UgJGhvc3RfY3B1IGluCglocHBhKjY0KnxpYTY0
KikKCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjX2xkLCAkMSk9Jyti
ICRsaWJkaXInCgkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9bm8KCSAgX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KCSAgOzsKCSopCgkgIF9M
VF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCgkgIF9MVF9BQ19UQUdWQVIoZXhw
b3J0X2R5bmFtaWNfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LUUnCgoJICAjIGhhcmRjb2RlX21pbnVz
X0w6IE5vdCByZWFsbHkgaW4gdGhlIHNlYXJjaCBQQVRILAoJICAjIGJ1dCBhcyB0aGUgZGVmYXVs
dCBsb2NhdGlvbiBvZiB0aGUgbGlicmFyeS4KCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9taW51
c19MLCAkMSk9eWVzCgkgIDs7Cgllc2FjCiAgICAgIGZpCiAgICAgIDs7CgogICAgaXJpeDUqIHwg
aXJpeDYqIHwgbm9uc3RvcHV4KikKICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KCV9M
VF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBs
aWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHt3bH0kc29uYW1lIGB0ZXN0IC1uICIk
dmVyc3RyaW5nIiAmJiBlY2hvICR7d2x9LXNldF92ZXJzaW9uICR7d2x9JHZlcnN0cmluZ2AgJHt3
bH0tdXBkYXRlX3JlZ2lzdHJ5ICR7d2x9JHtvdXRwdXRfb2JqZGlyfS9zb19sb2NhdGlvbnMgLW8g
JGxpYicKICAgICAgZWxzZQoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1z
aGFyZWQgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncyAtc29uYW1lICRzb25hbWUgYHRl
c3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gLXNldF92ZXJzaW9uICR2ZXJzdHJpbmdgIC11cGRh
dGVfcmVnaXN0cnkgJHtvdXRwdXRfb2JqZGlyfS9zb19sb2NhdGlvbnMgLW8gJGxpYicKCV9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlY19sZCwgJDEpPSctcnBhdGggJGxpYmRp
cicKICAgICAgZmkKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj
LCAkMSk9JyR7d2x9LXJwYXRoICR7d2x9JGxpYmRpcicKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgogICAgICBfTFRfQUNfVEFHVkFSKGxpbmtfYWxs
X2RlcGxpYnMsICQxKT15ZXMKICAgICAgOzsKCiAgICBuZXRic2QqKQogICAgICBpZiBlY2hvIF9f
RUxGX18gfCAkQ0MgLUUgLSB8IGdyZXAgX19FTEZfXyA+L2Rldi9udWxsOyB0aGVuCglfTFRfQUNf
VEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUJzaGFyZWFibGUgLW8gJGxpYiAkbGlib2Jq
cyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJyAgIyBhLm91dAogICAgICBlbHNlCglfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLXNoYXJlZCAtbyAkbGliICRsaWJvYmpzICRkZXBs
aWJzICRsaW5rZXJfZmxhZ3MnICAgICAgIyBFTEYKICAgICAgZmkKICAgICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1SJGxpYmRpcicKICAgICAgX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMKICAgICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAgOzsKCiAgICBuZXdzb3M2KQogICAgICBf
TFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGli
ICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfZGlyZWN0LCAkMSk9eWVzCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X2ZsYWdfc3BlYywgJDEpPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCiAgICAgIF9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPToKICAgICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAgOzsKCiAgICBvcGVuYnNkKikK
ICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMKICAgICAgX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAgaWYgdGVzdCAteiAi
YGVjaG8gX19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fYCIgfHwgdGVzdCAiJGhvc3Rf
b3MtJGhvc3RfY3B1IiA9ICJvcGVuYnNkMi44LXBvd2VycGMiOyB0aGVuCglfTFRfQUNfVEFHVkFS
KGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAkcGljX2ZsYWcgLW8gJGxpYiAkbGlib2Jq
cyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3lt
X2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHBpY19mbGFnIC1vICRsaWIgJGxpYm9ianMgJGRlcGxp
YnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUsJGV4cG9ydF9zeW1i
b2xzJwoJX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9
LXJwYXRoLCRsaWJkaXInCglfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywg
JDEpPScke3dsfS1FJwogICAgICBlbHNlCiAgICAgICBjYXNlICRob3N0X29zIGluCgkgb3BlbmJz
ZFtbMDFdXS4qIHwgb3BlbmJzZDIuW1swLTddXSB8IG9wZW5ic2QyLltbMC03XV0uKikKCSAgIF9M
VF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtQnNoYXJlYWJsZSAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCgkgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2Rl
X2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLVIkbGliZGlyJwoJICAgOzsKCSAqKQoJICAgX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHBpY19mbGFnIC1vICRsaWIg
JGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwoJICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRoLCRsaWJkaXInCgkgICA7Owog
ICAgICAgZXNhYwogICAgICBmaQogICAgICA7OwoKICAgIG9zMiopCiAgICAgIF9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctTCRsaWJkaXInCiAgICAgIF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwogICAgICBfTFRfQUNfVEFHVkFSKGFs
bG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9dW5zdXBwb3J0ZWQKICAgICAgX0xUX0FDX1RBR1ZBUihh
cmNoaXZlX2NtZHMsICQxKT0nJGVjaG8gIkxJQlJBUlkgJGxpYm5hbWUgSU5JVElOU1RBTkNFIiA+
ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmRlZn4kZWNobyAiREVTQ1JJUFRJT04gXCIkbGlibmFt
ZVwiIiA+PiAkb3V0cHV0X29iamRpci8kbGlibmFtZS5kZWZ+JGVjaG8gREFUQSA+PiAkb3V0cHV0
X29iamRpci8kbGlibmFtZS5kZWZ+JGVjaG8gIiBTSU5HTEUgTk9OU0hBUkVEIiA+PiAkb3V0cHV0
X29iamRpci8kbGlibmFtZS5kZWZ+JGVjaG8gRVhQT1JUUyA+PiAkb3V0cHV0X29iamRpci8kbGli
bmFtZS5kZWZ+ZW14ZXhwICRsaWJvYmpzID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmRlZn4k
Q0MgLVpkbGwgLVpjcnRkbGwgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxh
Z3MgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUuZGVmJwogICAgICBfTFRfQUNfVEFHVkFSKG9sZF9h
cmNoaXZlX0Zyb21fbmV3X2NtZHMsICQxKT0nZW14aW1wIC1vICRvdXRwdXRfb2JqZGlyLyRsaWJu
YW1lLmEgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUuZGVmJwogICAgICA7OwoKICAgIG9zZjMqKQog
ICAgICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgoJX0xUX0FDX1RBR1ZBUihhbGxvd191bmRl
ZmluZWRfZmxhZywgJDEpPScgJHt3bH0tZXhwZWN0X3VucmVzb2x2ZWQgJHt3bH1cKicKCV9MVF9B
Q19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkJHthbGxvd191bmRlZmluZWRf
ZmxhZ30gJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAke3ds
fSRzb25hbWUgYHRlc3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24g
JHt3bH0kdmVyc3RyaW5nYCAke3dsfS11cGRhdGVfcmVnaXN0cnkgJHt3bH0ke291dHB1dF9vYmpk
aXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwogICAgICBlbHNlCglfTFRfQUNfVEFHVkFSKGFsbG93
X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAtZXhwZWN0X3VucmVzb2x2ZWQgXConCglfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLXNoYXJlZCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9
ICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MgLXNvbmFtZSAkc29uYW1lIGB0ZXN0IC1u
ICIkdmVyc3RyaW5nIiAmJiBlY2hvIC1zZXRfdmVyc2lvbiAkdmVyc3RyaW5nYCAtdXBkYXRlX3Jl
Z2lzdHJ5ICR7b3V0cHV0X29iamRpcn0vc29fbG9jYXRpb25zIC1vICRsaWInCiAgICAgIGZpCiAg
ICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1y
cGF0aCAke3dsfSRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3Nl
cGFyYXRvciwgJDEpPToKICAgICAgOzsKCiAgICBvc2Y0KiB8IG9zZjUqKQkjIGFzIG9zZjMqIHdp
dGggdGhlIGFkZGl0aW9uIG9mIC1tc3ltIGZsYWcKICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7
IHRoZW4KCV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nICR7d2x9LWV4
cGVjdF91bnJlc29sdmVkICR7d2x9XConCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEp
PSckQ0MgLXNoYXJlZCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICRsaWJvYmpzICRkZXBsaWJzICRj
b21waWxlcl9mbGFncyAke3dsfS1tc3ltICR7d2x9LXNvbmFtZSAke3dsfSRzb25hbWUgYHRlc3Qg
LW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24gJHt3bH0kdmVyc3RyaW5n
YCAke3dsfS11cGRhdGVfcmVnaXN0cnkgJHt3bH0ke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0aW9u
cyAtbyAkbGliJwoJX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9
JyR7d2x9LXJwYXRoICR7d2x9JGxpYmRpcicKICAgICAgZWxzZQoJX0xUX0FDX1RBR1ZBUihhbGxv
d191bmRlZmluZWRfZmxhZywgJDEpPScgLWV4cGVjdF91bnJlc29sdmVkIFwqJwoJX0xUX0FDX1RB
R1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1zaGFyZWQke2FsbG93X3VuZGVmaW5lZF9mbGFn
fSAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzIC1tc3ltIC1zb25hbWUgJHNvbmFtZSBg
dGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAtc2V0X3ZlcnNpb24gJHZlcnN0cmluZ2AgLXVw
ZGF0ZV9yZWdpc3RyeSAke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwoJX0xU
X0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9J2ZvciBpIGluIGBjYXQgJGV4cG9y
dF9zeW1ib2xzYDsgZG8gcHJpbnRmICIlcyAlc1xcbiIgLWV4cG9ydGVkX3N5bWJvbCAiXCRpIiA+
PiAkbGliLmV4cDsgZG9uZTsgZWNobyAiLWhpZGRlbiI+PiAkbGliLmV4cH4KCSRMRCAtc2hhcmVk
JHthbGxvd191bmRlZmluZWRfZmxhZ30gLWlucHV0ICRsaWIuZXhwICRsaW5rZXJfZmxhZ3MgJGxp
Ym9ianMgJGRlcGxpYnMgLXNvbmFtZSAkc29uYW1lIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBl
Y2hvIC1zZXRfdmVyc2lvbiAkdmVyc3RyaW5nYCAtdXBkYXRlX3JlZ2lzdHJ5ICR7b3V0cHV0X29i
amRpcn0vc29fbG9jYXRpb25zIC1vICRsaWJ+JHJtICRsaWIuZXhwJwoKCSMgQm90aCBjIGFuZCBj
eHggY29tcGlsZXIgc3VwcG9ydCAtcnBhdGggZGlyZWN0bHkKCV9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctcnBhdGggJGxpYmRpcicKICAgICAgZmkKICAgICAg
X0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgogICAgICA7OwoK
ICAgIHNvbGFyaXMqKQogICAgICBfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9
JyAteiB0ZXh0JwogICAgICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgoJd2xhcmM9JyR7d2x9
JwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHt3bH0taCAk
e3dsfSRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCglf
TFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJGVjaG8gInsgZ2xvYmFsOiIg
PiAkbGliLmV4cH5jYXQgJGV4cG9ydF9zeW1ib2xzIHwgJFNFRCAtZSAicy9cKC4qXCkvXDE7LyIg
Pj4gJGxpYi5leHB+JGVjaG8gImxvY2FsOiAqOyB9OyIgPj4gJGxpYi5leHB+CgkgICRDQyAtc2hh
cmVkICR7d2x9LU0gJHt3bH0kbGliLmV4cCAke3dsfS1oICR7d2x9JHNvbmFtZSAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFnc34kcm0gJGxpYi5leHAnCiAgICAgIGVsc2UK
CXdsYXJjPScnCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUcke2FsbG93
X3VuZGVmaW5lZF9mbGFnfSAtaCAkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxp
bmtlcl9mbGFncycKCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSckZWNo
byAieyBnbG9iYWw6IiA+ICRsaWIuZXhwfmNhdCAkZXhwb3J0X3N5bWJvbHMgfCAkU0VEIC1lICJz
L1woLipcKS9cMTsvIiA+PiAkbGliLmV4cH4kZWNobyAibG9jYWw6ICo7IH07IiA+PiAkbGliLmV4
cH4KICAJJExEIC1HJHthbGxvd191bmRlZmluZWRfZmxhZ30gLU0gJGxpYi5leHAgLWggJHNvbmFt
ZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3N+JHJtICRsaWIuZXhwJwog
ICAgICBmaQogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQx
KT0nLVIkbGliZGlyJwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIs
ICQxKT1ubwogICAgICBjYXNlICRob3N0X29zIGluCiAgICAgIHNvbGFyaXMyLltbMC01XV0gfCBz
b2xhcmlzMi5bWzAtNV1dLiopIDs7CiAgICAgICopCiAJIyBUaGUgY29tcGlsZXIgZHJpdmVyIHdp
bGwgY29tYmluZSBsaW5rZXIgb3B0aW9ucyBzbyB3ZQogCSMgY2Fubm90IGp1c3QgcGFzcyB0aGUg
Y29udmllbmNlIGxpYnJhcnkgbmFtZXMgdGhyb3VnaAogCSMgd2l0aG91dCAkd2wsIGlmZiB3ZSBk
byBub3QgbGluayB3aXRoICRMRC4KIAkjIEx1Y2tpbHksIGdjYyBzdXBwb3J0cyB0aGUgc2FtZSBz
eW50YXggd2UgbmVlZCBmb3IgU3VuIFN0dWRpby4KIAkjIFN1cHBvcnRlZCBzaW5jZSBTb2xhcmlz
IDIuNiAobWF5YmUgMi41LjE/KQogCWNhc2UgJHdsYXJjIGluCiAJJycpCiAJICBfTFRfQUNfVEFH
VkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Jy16IGFsbGV4dHJhY3QkY29udmVuaWVu
Y2UgLXogZGVmYXVsdGV4dHJhY3QnIDs7CiAJKikKIAkgIF9MVF9BQ19UQUdWQVIod2hvbGVfYXJj
aGl2ZV9mbGFnX3NwZWMsICQxKT0nJHt3bH0teiAke3dsfWFsbGV4dHJhY3RgZm9yIGNvbnYgaW4g
JGNvbnZlbmllbmNlXCJcIjsgZG8gdGVzdCAtbiBcIiRjb252XCIgJiYgbmV3X2NvbnZlbmllbmNl
PVwiJG5ld19jb252ZW5pZW5jZSwkY29udlwiOyBkb25lOyAkZWNobyBcIiRuZXdfY29udmVuaWVu
Y2VcImAgJHt3bH0teiAke3dsfWRlZmF1bHRleHRyYWN0JyA7OwogCWVzYWMgOzsKICAgICAgZXNh
YwogICAgICBfTFRfQUNfVEFHVkFSKGxpbmtfYWxsX2RlcGxpYnMsICQxKT15ZXMKICAgICAgOzsK
CiAgICBzdW5vczQqKQogICAgICBpZiB0ZXN0ICJ4JGhvc3RfdmVuZG9yIiA9IHhzZXF1ZW50OyB0
aGVuCgkjIFVzZSAkQ0MgdG8gbGluayB1bmRlciBzZXF1ZW50LCBiZWNhdXNlIGl0IHRocm93cyBp
biBzb21lIGV4dHJhIC5vCgkjIGZpbGVzIHRoYXQgbWFrZSAuaW5pdCBhbmQgLmZpbmkgc2VjdGlv
bnMgd29yay4KCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtRyAke3dsfS1o
ICRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCiAgICAg
IGVsc2UKCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtYXNzZXJ0IHB1cmUt
dGV4dCAtQnN0YXRpYyAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCiAg
ICAgIGZpCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEp
PSctTCRsaWJkaXInCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVz
CiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwogICAgICBfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgICA7OwoKICAgIHN5
c3Y0KQogICAgICBjYXNlICRob3N0X3ZlbmRvciBpbgoJc25pKQoJICBfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBs
aWJzICRsaW5rZXJfZmxhZ3MnCgkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9
eWVzICMgaXMgdGhpcyByZWFsbHkgdHJ1ZT8/PwoJOzsKCXNpZW1lbnMpCgkgICMjIExEIGlzIGxk
IGl0IG1ha2VzIGEgUExBTUxJQgoJICAjIyBDQyBqdXN0IG1ha2VzIGEgR3Jvc3NNb2R1bGUuCgkg
IF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtRyAtbyAkbGliICRsaWJvYmpz
ICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCgkgIF9MVF9BQ19UQUdWQVIocmVsb2FkX2NtZHMsICQx
KT0nJENDIC1yIC1vICRvdXRwdXQkcmVsb2FkX29ianMnCgkgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfZGlyZWN0LCAkMSk9bm8KICAgICAgICA7OwoJbW90b3JvbGEpCgkgIF9MVF9BQ19UQUdWQVIo
YXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtRyAtaCAkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRl
cGxpYnMgJGxpbmtlcl9mbGFncycKCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQx
KT1ubyAjTW90b3JvbGEgbWFudWFsIHNheXMgeWVzLCBidXQgbXkgdGVzdHMgc2F5IHRoZXkgbGll
Cgk7OwogICAgICBlc2FjCiAgICAgIHJ1bnBhdGhfdmFyPSdMRF9SVU5fUEFUSCcKICAgICAgX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAgOzsKCiAgICBz
eXN2NC4zKikKICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1HIC1o
ICRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwogICAgICBf
TFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgICBfTFRfQUNf
VEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPSctQmV4cG9ydCcKICAgICAgOzsK
CiAgICBzeXN2NCpNUCopCiAgICAgIGlmIHRlc3QgLWQgL3Vzci9uZWM7IHRoZW4KCV9MVF9BQ19U
QUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtRyAtaCAkc29uYW1lIC1vICRsaWIgJGxpYm9i
anMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncycKCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJw
YXRoX3ZhciwgJDEpPW5vCglydW5wYXRoX3Zhcj1MRF9SVU5fUEFUSAoJaGFyZGNvZGVfcnVucGF0
aF92YXI9eWVzCglfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPXllcwogICAgICBmaQogICAg
ICA7OwoKICAgIHN5c3Y0KnV3MiogfCBzeXN2NU9wZW5VTklYKiB8IHN5c3Y1VW5peFdhcmU3Lltb
MDFdXS5bWzEwXV0qIHwgdW5peHdhcmU3KikKICAgICAgX0xUX0FDX1RBR1ZBUihub191bmRlZmlu
ZWRfZmxhZywgJDEpPScke3dsfS16LHRleHQnCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9j
bWRzX25lZWRfbGMsICQxKT1ubwogICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0
aF92YXIsICQxKT1ubwogICAgICBydW5wYXRoX3Zhcj0nTERfUlVOX1BBVEgnCgogICAgICBpZiB0
ZXN0ICIkR0NDIiA9IHllczsgdGhlbgoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0n
JENDIC1zaGFyZWQgJHt3bH0taCwkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNv
bXBpbGVyX2ZsYWdzJwoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkICR7d2x9LUJleHBvcnQ6JGV4cG9ydF9zeW1ib2xzICR7d2x9LWgsJHNvbmFtZSAt
byAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncycKICAgICAgZWxzZQoJX0xU
X0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1HICR7d2x9LWgsJHNvbmFtZSAtbyAk
bGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncycKCV9MVF9BQ19UQUdWQVIoYXJj
aGl2ZV9leHBzeW1fY21kcywgJDEpPSckQ0MgLUcgJHt3bH0tQmV4cG9ydDokZXhwb3J0X3N5bWJv
bHMgJHt3bH0taCwkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2Zs
YWdzJwogICAgICBmaQogICAgICA7OwoKICAgIHN5c3Y1KiB8IHNjbzMuMnY1KiB8IHNjbzV2Niop
CiAgICAgICMgTm90ZTogV2UgY2FuIE5PVCB1c2UgLXogZGVmcyBhcyB3ZSBtaWdodCBkZXNpcmUs
IGJlY2F1c2Ugd2UgZG8gbm90CiAgICAgICMgbGluayB3aXRoIC1sYywgYW5kIHRoYXQgd291bGQg
Y2F1c2UgYW55IHN5bWJvbHMgdXNlZCBmcm9tIGxpYmMgdG8KICAgICAgIyBhbHdheXMgYmUgdW5y
ZXNvbHZlZCwgd2hpY2ggbWVhbnMganVzdCBhYm91dCBubyBsaWJyYXJ5IHdvdWxkCiAgICAgICMg
ZXZlciBsaW5rIGNvcnJlY3RseS4gIElmIHdlJ3JlIG5vdCB1c2luZyBHTlUgbGQgd2UgdXNlIC16
IHRleHQKICAgICAgIyB0aG91Z2gsIHdoaWNoIGRvZXMgY2F0Y2ggc29tZSBiYWQgc3ltYm9scyBi
dXQgaXNuJ3QgYXMgaGVhdnktaGFuZGVkCiAgICAgICMgYXMgLXogZGVmcy4KICAgICAgX0xUX0FD
X1RBR1ZBUihub191bmRlZmluZWRfZmxhZywgJDEpPScke3dsfS16LHRleHQnCiAgICAgIF9MVF9B
Q19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nJHt3bH0teixub2RlZnMnCiAgICAg
IF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwogICAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwogICAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nYHRlc3QgLXogIiRTQ09BQlNQQVRIIiAm
JiBlY2hvICR7d2x9LVIsJGxpYmRpcmAnCiAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGli
ZGlyX3NlcGFyYXRvciwgJDEpPSc6JwogICAgICBfTFRfQUNfVEFHVkFSKGxpbmtfYWxsX2RlcGxp
YnMsICQxKT15ZXMKICAgICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19mbGFnX3NwZWMs
ICQxKT0nJHt3bH0tQmV4cG9ydCcKICAgICAgcnVucGF0aF92YXI9J0xEX1JVTl9QQVRIJwoKICAg
ICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRz
LCAkMSk9JyRDQyAtc2hhcmVkICR7d2x9LWgsXCR7U0NPQUJTUEFUSDorJHtpbnN0YWxsX2xpYmRp
cn0vfSRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCglf
TFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgJHt3bH0t
QmV4cG9ydDokZXhwb3J0X3N5bWJvbHMgJHt3bH0taCxcJHtTQ09BQlNQQVRIOiske2luc3RhbGxf
bGliZGlyfS99JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFn
cycKICAgICAgZWxzZQoJX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1HICR7
d2x9LWgsXCR7U0NPQUJTUEFUSDorJHtpbnN0YWxsX2xpYmRpcn0vfSRzb25hbWUgLW8gJGxpYiAk
bGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCglfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
ZXhwc3ltX2NtZHMsICQxKT0nJENDIC1HICR7d2x9LUJleHBvcnQ6JGV4cG9ydF9zeW1ib2xzICR7
d2x9LWgsXCR7U0NPQUJTUEFUSDorJHtpbnN0YWxsX2xpYmRpcn0vfSRzb25hbWUgLW8gJGxpYiAk
bGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCiAgICAgIGZpCiAgICAgIDs7CgogICAg
dXRzNCopCiAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtRyAtaCAk
c29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncycKICAgICAgX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1MJGxpYmRpcicKICAg
ICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KICAgICAgOzsK
CiAgICAqKQogICAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCiAgICAgIDs7CiAg
ICBlc2FjCiAgZmkKXSkKQUNfTVNHX1JFU1VMVChbJF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAk
MSldKQp0ZXN0ICIkX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKSIgPSBubyAmJiBjYW5fYnVp
bGRfc2hhcmVkPW5vCgojCiMgRG8gd2UgbmVlZCB0byBleHBsaWNpdGx5IGxpbmsgbGliYz8KIwpj
YXNlICJ4JF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKSIgaW4KeHx4eWVz
KQogICMgQXNzdW1lIC1sYyBzaG91bGQgYmUgYWRkZWQKICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
Y21kc19uZWVkX2xjLCAkMSk9eWVzCgogIGlmIHRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyAm
JiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICAgY2FzZSAkX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHMsICQxKSBpbgogICAgKid+JyopCiAgICAgICMgRklYTUU6IHdlIG1heSBoYXZlIHRvIGRl
YWwgd2l0aCBtdWx0aS1jb21tYW5kIHNlcXVlbmNlcy4KICAgICAgOzsKICAgICckQ0MgJyopCiAg
ICAgICMgVGVzdCB3aGV0aGVyIHRoZSBjb21waWxlciBpbXBsaWNpdGx5IGxpbmtzIHdpdGggLWxj
IHNpbmNlIG9uIHNvbWUKICAgICAgIyBzeXN0ZW1zLCAtbGdjYyBoYXMgdG8gY29tZSBiZWZvcmUg
LWxjLiBJZiBnY2MgYWxyZWFkeSBwYXNzZXMgLWxjCiAgICAgICMgdG8gbGQsIGRvbid0IGFkZCAt
bGMgYmVmb3JlIC1sZ2NjLgogICAgICBBQ19NU0dfQ0hFQ0tJTkcoW3doZXRoZXIgLWxjIHNob3Vs
ZCBiZSBleHBsaWNpdGx5IGxpbmtlZCBpbl0pCiAgICAgICRybSBjb25mdGVzdCoKICAgICAgcHJp
bnRmICIkbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlIiA+IGNvbmZ0ZXN0LiRhY19leHQKCiAg
ICAgIGlmIEFDX1RSWV9FVkFMKGFjX2NvbXBpbGUpIDI+Y29uZnRlc3QuZXJyOyB0aGVuCiAgICAg
ICAgc29uYW1lPWNvbmZ0ZXN0CiAgICAgICAgbGliPWNvbmZ0ZXN0CiAgICAgICAgbGlib2Jqcz1j
b25mdGVzdC4kYWNfb2JqZXh0CiAgICAgICAgZGVwbGlicz0KICAgICAgICB3bD0kX0xUX0FDX1RB
R1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSkKCXBpY19mbGFnPSRfTFRfQUNfVEFHVkFSKGx0
X3Byb2dfY29tcGlsZXJfcGljLCAkMSkKICAgICAgICBjb21waWxlcl9mbGFncz0tdgogICAgICAg
IGxpbmtlcl9mbGFncz0tdgogICAgICAgIHZlcnN0cmluZz0KICAgICAgICBvdXRwdXRfb2JqZGly
PS4KICAgICAgICBsaWJuYW1lPWNvbmZ0ZXN0CiAgICAgICAgbHRfc2F2ZV9hbGxvd191bmRlZmlu
ZWRfZmxhZz0kX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpCiAgICAgICAg
X0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPQogICAgICAgIGlmIEFDX1RS
WV9FVkFMKF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSkgMlw+XCYxIFx8IGdyZXAgXCIg
LWxjIFwiIFw+L2Rldi9udWxsIDJcPlwmMSkKICAgICAgICB0aGVuCgkgIF9MVF9BQ19UQUdWQVIo
YXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwogICAgICAgIGVsc2UKCSAgX0xUX0FDX1RBR1ZB
UihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpPXllcwogICAgICAgIGZpCiAgICAgICAgX0xUX0FD
X1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPSRsdF9zYXZlX2FsbG93X3VuZGVmaW5l
ZF9mbGFnCiAgICAgIGVsc2UKICAgICAgICBjYXQgY29uZnRlc3QuZXJyIDE+JjUKICAgICAgZmkK
ICAgICAgJHJtIGNvbmZ0ZXN0KgogICAgICBBQ19NU0dfUkVTVUxUKFskX0xUX0FDX1RBR1ZBUihh
cmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpXSkKICAgICAgOzsKICAgIGVzYWMKICBmaQogIDs7CmVz
YWMKXSkjIEFDX0xJQlRPT0xfUFJPR19MRF9TSExJQlMKCgojIF9MVF9BQ19GSUxFX0xURExMX0MK
IyAtLS0tLS0tLS0tLS0tLS0tLS0tCiMgQmUgY2FyZWZ1bCB0aGF0IHRoZSBzdGFydCBtYXJrZXIg
YWx3YXlzIGZvbGxvd3MgYSBuZXdsaW5lLgpBQ19ERUZVTihbX0xUX0FDX0ZJTEVfTFRETExfQ10s
IFsKIyAvKiBsdGRsbC5jIHN0YXJ0cyBoZXJlICovCiMgI2RlZmluZSBXSU4zMl9MRUFOX0FORF9N
RUFOCiMgI2luY2x1ZGUgPHdpbmRvd3MuaD4KIyAjdW5kZWYgV0lOMzJfTEVBTl9BTkRfTUVBTgoj
ICNpbmNsdWRlIDxzdGRpby5oPgojCiMgI2lmbmRlZiBfX0NZR1dJTl9fCiMgIyAgaWZkZWYgX19D
WUdXSU4zMl9fCiMgIyAgICBkZWZpbmUgX19DWUdXSU5fXyBfX0NZR1dJTjMyX18KIyAjICBlbmRp
ZgojICNlbmRpZgojCiMgI2lmZGVmIF9fY3BsdXNwbHVzCiMgZXh0ZXJuICJDIiB7CiMgI2VuZGlm
CiMgQk9PTCBBUElFTlRSWSBEbGxNYWluIChISU5TVEFOQ0UgaEluc3QsIERXT1JEIHJlYXNvbiwg
TFBWT0lEIHJlc2VydmVkKTsKIyAjaWZkZWYgX19jcGx1c3BsdXMKIyB9CiMgI2VuZGlmCiMKIyAj
aWZkZWYgX19DWUdXSU5fXwojICNpbmNsdWRlIDxjeWd3aW4vY3lnd2luX2RsbC5oPgojIERFQ0xB
UkVfQ1lHV0lOX0RMTCggRGxsTWFpbiApOwojICNlbmRpZgojIEhJTlNUQU5DRSBfX2hEbGxJbnN0
YW5jZV9iYXNlOwojCiMgQk9PTCBBUElFTlRSWQojIERsbE1haW4gKEhJTlNUQU5DRSBoSW5zdCwg
RFdPUkQgcmVhc29uLCBMUFZPSUQgcmVzZXJ2ZWQpCiMgewojICAgX19oRGxsSW5zdGFuY2VfYmFz
ZSA9IGhJbnN0OwojICAgcmV0dXJuIFRSVUU7CiMgfQojIC8qIGx0ZGxsLmMgZW5kcyBoZXJlICov
Cl0pIyBfTFRfQUNfRklMRV9MVERMTF9DCgoKIyBfTFRfQUNfVEFHVkFSKFZBUk5BTUUsIFtUQUdO
QU1FXSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW19MVF9B
Q19UQUdWQVJdLCBbaWZlbHNlKFskMl0sIFtdLCBbJDFdLCBbJDFfJDJdKV0pCgoKIyBvbGQgbmFt
ZXMKQUNfREVGVU4oW0FNX1BST0dfTElCVE9PTF0sICAgW0FDX1BST0dfTElCVE9PTF0pCkFDX0RF
RlVOKFtBTV9FTkFCTEVfU0hBUkVEXSwgIFtBQ19FTkFCTEVfU0hBUkVEKCRAKV0pCkFDX0RFRlVO
KFtBTV9FTkFCTEVfU1RBVElDXSwgIFtBQ19FTkFCTEVfU1RBVElDKCRAKV0pCkFDX0RFRlVOKFtB
TV9ESVNBQkxFX1NIQVJFRF0sIFtBQ19ESVNBQkxFX1NIQVJFRCgkQCldKQpBQ19ERUZVTihbQU1f
RElTQUJMRV9TVEFUSUNdLCBbQUNfRElTQUJMRV9TVEFUSUMoJEApXSkKQUNfREVGVU4oW0FNX1BS
T0dfTERdLCAgICAgICAgW0FDX1BST0dfTERdKQpBQ19ERUZVTihbQU1fUFJPR19OTV0sICAgICAg
ICBbQUNfUFJPR19OTV0pCgojIFRoaXMgaXMganVzdCB0byBzaWxlbmNlIGFjbG9jYWwgYWJvdXQg
dGhlIG1hY3JvIG5vdCBiZWluZyB1c2VkCmlmZWxzZShbQUNfRElTQUJMRV9GQVNUX0lOU1RBTExd
KQoKQUNfREVGVU4oW0xUX0FDX1BST0dfR0NKXSwKW0FDX0NIRUNLX1RPT0woR0NKLCBnY2osIG5v
KQogIHRlc3QgIngke0dDSkZMQUdTK3NldH0iID0geHNldCB8fCBHQ0pGTEFHUz0iLWcgLU8yIgog
IEFDX1NVQlNUKEdDSkZMQUdTKQpdKQoKQUNfREVGVU4oW0xUX0FDX1BST0dfUkNdLApbQUNfQ0hF
Q0tfVE9PTChSQywgd2luZHJlcywgbm8pCl0pCgojIE5PVEU6IFRoaXMgbWFjcm8gaGFzIGJlZW4g
c3VibWl0dGVkIGZvciBpbmNsdXNpb24gaW50byAgICMKIyAgR05VIEF1dG9jb25mIGFzIEFDX1BS
T0dfU0VELiAgV2hlbiBpdCBpcyBhdmFpbGFibGUgaW4gICAjCiMgIGEgcmVsZWFzZWQgdmVyc2lv
biBvZiBBdXRvY29uZiB3ZSBzaG91bGQgcmVtb3ZlIHRoaXMgICAgIwojICBtYWNybyBhbmQgdXNl
IGl0IGluc3RlYWQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMKIyBMVF9BQ19QUk9H
X1NFRAojIC0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgZm9yIGEgZnVsbHktZnVuY3Rpb25hbCBzZWQg
cHJvZ3JhbSwgdGhhdCB0cnVuY2F0ZXMKIyBhcyBmZXcgY2hhcmFjdGVycyBhcyBwb3NzaWJsZS4g
IFByZWZlciBHTlUgc2VkIGlmIGZvdW5kLgpBQ19ERUZVTihbTFRfQUNfUFJPR19TRURdLApbQUNf
TVNHX0NIRUNLSU5HKFtmb3IgYSBzZWQgdGhhdCBkb2VzIG5vdCB0cnVuY2F0ZSBvdXRwdXRdKQpB
Q19DQUNIRV9WQUwobHRfY3ZfcGF0aF9TRUQsClsjIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBh
dGggYW5kIHRlc3QgZm9yIHNlZCBhbmQgZ3NlZC4KIyBUaGVuIHVzZSB0aGF0IGxpc3Qgb2Ygc2Vk
J3MgYXMgb25lcyB0byB0ZXN0IGZvciB0cnVuY2F0aW9uLgphc19zYXZlX0lGUz0kSUZTOyBJRlM9
JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVfSUZT
CiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgbHRfYWNfcHJvZyBpbiBzZWQg
Z3NlZDsgZG8KICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNp
b25zOyBkbwogICAgICBpZiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRsdF9hY19wcm9nJGFj
X2V4ZWNfZXh0IjsgdGhlbgogICAgICAgIGx0X2FjX3NlZF9saXN0PSIkbHRfYWNfc2VkX2xpc3Qg
JGFzX2Rpci8kbHRfYWNfcHJvZyRhY19leGVjX2V4dCIKICAgICAgZmkKICAgIGRvbmUKICBkb25l
CmRvbmUKbHRfYWNfbWF4PTAKbHRfYWNfY291bnQ9MAojIEFkZCAvdXNyL3hwZzQvYmluL3NlZCBh
cyBpdCBpcyB0eXBpY2FsbHkgZm91bmQgb24gU29sYXJpcwojIGFsb25nIHdpdGggL2Jpbi9zZWQg
dGhhdCB0cnVuY2F0ZXMgb3V0cHV0Lgpmb3IgbHRfYWNfc2VkIGluICRsdF9hY19zZWRfbGlzdCAv
dXNyL3hwZzQvYmluL3NlZDsgZG8KICB0ZXN0ICEgLWYgJGx0X2FjX3NlZCAmJiBjb250aW51ZQog
IGNhdCAvZGV2L251bGwgPiBjb25mdGVzdC5pbgogIGx0X2FjX2NvdW50PTAKICBlY2hvICRFQ0hP
X04gIjAxMjM0NTY3ODkkRUNIT19DIiA+Y29uZnRlc3QuaW4KICAjIENoZWNrIGZvciBHTlUgc2Vk
IGFuZCBzZWxlY3QgaXQgaWYgaXQgaXMgZm91bmQuCiAgaWYgIiRsdF9hY19zZWQiIC0tdmVyc2lv
biAyPiYxIDwgL2Rldi9udWxsIHwgZ3JlcCAnR05VJyA+IC9kZXYvbnVsbDsgdGhlbgogICAgbHRf
Y3ZfcGF0aF9TRUQ9JGx0X2FjX3NlZAogICAgYnJlYWsKICBmaQogIHdoaWxlIHRydWU7IGRvCiAg
ICBjYXQgY29uZnRlc3QuaW4gY29uZnRlc3QuaW4gPmNvbmZ0ZXN0LnRtcAogICAgbXYgY29uZnRl
c3QudG1wIGNvbmZ0ZXN0LmluCiAgICBjcCBjb25mdGVzdC5pbiBjb25mdGVzdC5ubAogICAgZWNo
byA+PmNvbmZ0ZXN0Lm5sCiAgICAkbHRfYWNfc2VkIC1lICdzL2EkLy8nIDwgY29uZnRlc3Qubmwg
PmNvbmZ0ZXN0Lm91dCB8fCBicmVhawogICAgY21wIC1zIGNvbmZ0ZXN0Lm91dCBjb25mdGVzdC5u
bCB8fCBicmVhawogICAgIyAxMDAwMCBjaGFycyBhcyBpbnB1dCBzZWVtcyBtb3JlIHRoYW4gZW5v
dWdoCiAgICB0ZXN0ICRsdF9hY19jb3VudCAtZ3QgMTAgJiYgYnJlYWsKICAgIGx0X2FjX2NvdW50
PWBleHByICRsdF9hY19jb3VudCArIDFgCiAgICBpZiB0ZXN0ICRsdF9hY19jb3VudCAtZ3QgJGx0
X2FjX21heDsgdGhlbgogICAgICBsdF9hY19tYXg9JGx0X2FjX2NvdW50CiAgICAgIGx0X2N2X3Bh
dGhfU0VEPSRsdF9hY19zZWQKICAgIGZpCiAgZG9uZQpkb25lCl0pClNFRD0kbHRfY3ZfcGF0aF9T
RUQKQUNfTVNHX1JFU1VMVChbJFNFRF0pCl0pCgojIGxvY2subTQgc2VyaWFsIDIgKGdldHRleHQt
MC4xNSkKZG5sIENvcHlyaWdodCAoQykgMjAwNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0
cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMg
dGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgoKZG5sIFRl
c3RzIGZvciBhIG11bHRpdGhyZWFkaW5nIGxpYnJhcnkgdG8gYmUgdXNlZC4KZG5sIERlZmluZXMg
YXQgbW9zdCBvbmUgb2YgdGhlIG1hY3JvcyBVU0VfUE9TSVhfVEhSRUFEUywgVVNFX1NPTEFSSVNf
VEhSRUFEUywKZG5sIFVTRV9QVEhfVEhSRUFEUywgVVNFX1dJTjMyX1RIUkVBRFMKZG5sIFNldHMg
dGhlIHZhcmlhYmxlcyBMSUJUSFJFQUQgYW5kIExUTElCVEhSRUFEIHRvIHRoZSBsaW5rZXIgb3B0
aW9ucyBmb3IgdXNlCmRubCBpbiBhIE1ha2VmaWxlIChMSUJUSFJFQUQgZm9yIHVzZSB3aXRob3V0
IGxpYnRvb2wsIExUTElCVEhSRUFEIGZvciB1c2Ugd2l0aApkbmwgbGlidG9vbCkuCmRubCBTZXRz
IHRoZSB2YXJpYWJsZXMgTElCTVVMVElUSFJFQUQgYW5kIExUTElCTVVMVElUSFJFQUQgc2ltaWxh
cmx5LCBmb3IKZG5sIHByb2dyYW1zIHRoYXQgcmVhbGx5IG5lZWQgbXVsdGl0aHJlYWQgZnVuY3Rp
b25hbGl0eS4gVGhlIGRpZmZlcmVuY2UKZG5sIGJldHdlZW4gTElCVEhSRUFEIGFuZCBMSUJNVUxU
SVRIUkVBRCBpcyB0aGF0IG9uIHBsYXRmb3JtcyBzdXBwb3J0aW5nIHdlYWsKZG5sIHN5bWJvbHMs
IHR5cGljYWxseSBMSUJUSFJFQUQ9IiIgd2hlcmVhcyBMSUJNVUxUSVRIUkVBRD0iLWxwdGhyZWFk
Ii4KZG5sIEFkZHMgdG8gQ1BQRkxBR1MgdGhlIGZsYWcgLURfUkVFTlRSQU5UIG9yIC1EX1RIUkVB
RF9TQUZFIGlmIG5lZWRlZCBmb3IKZG5sIG11bHRpdGhyZWFkLXNhZmUgcHJvZ3JhbXMuCgpBQ19E
RUZVTihbZ2xfTE9DS10sClsKICBBQ19SRVFVSVJFKFtnbF9MT0NLX0JPRFldKQpdKQoKZG5sIFRo
ZSBndXRzIG9mIGdsX0xPQ0suIE5lZWRzIHRvIGJlIGV4cGFuZGVkIG9ubHkgb25jZS4KCkFDX0RF
RlVOKFtnbF9MT0NLX0JPRFldLApbCiAgZG5sIE9yZGVyaW5nIGNvbnN0cmFpbnRzOiBUaGlzIG1h
Y3JvIG1vZGlmaWVzIENQUEZMQUdTIGluIGEgd2F5IHRoYXQKICBkbmwgaW5mbHVlbmNlcyB0aGUg
cmVzdWx0IG9mIHRoZSBhdXRvY29uZiB0ZXN0cyB0aGF0IHRlc3QgZm9yICpfdW5sb2NrZWQKICBk
bmwgZGVjbGFyYXRpb25zLCBvbiBBSVggNSBhdCBsZWFzdC4gVGhlcmVmb3JlIGl0IG11c3QgY29t
ZSBlYXJseS4KICBBQ19CRUZPUkUoWyQwXSwgW2dsX0ZVTkNfR0xJQkNfVU5MT0NLRURfSU9dKWRu
bAogIEFDX0JFRk9SRShbJDBdLCBbZ2xfQVJHUF0pZG5sCgogIEFDX1JFUVVJUkUoW0FDX0NBTk9O
SUNBTF9IT1NUXSkKICBBQ19SRVFVSVJFKFtBQ19HTlVfU09VUkNFXSkgZG5sIG5lZWRlZCBmb3Ig
cHRocmVhZF9yd2xvY2tfdCBvbiBnbGliYyBzeXN0ZW1zCiAgZG5sIENoZWNrIGZvciBtdWx0aXRo
cmVhZGluZy4KICBBQ19BUkdfRU5BQkxFKHRocmVhZHMsCkFDX0hFTFBfU1RSSU5HKFstLWVuYWJs
ZS10aHJlYWRzPXtwb3NpeHxzb2xhcmlzfHB0aHx3aW4zMn1dLCBbc3BlY2lmeSBtdWx0aXRocmVh
ZGluZyBBUEldKQpBQ19IRUxQX1NUUklORyhbLS1kaXNhYmxlLXRocmVhZHNdLCBbYnVpbGQgd2l0
aG91dCBtdWx0aXRocmVhZCBzYWZldHldKSwKICAgIGdsX3VzZV90aHJlYWRzPSRlbmFibGV2YWws
IGdsX3VzZV90aHJlYWRzPXllcykKICBnbF90aHJlYWRzX2FwaT1ub25lCiAgTElCVEhSRUFEPQog
IExUTElCVEhSRUFEPQogIExJQk1VTFRJVEhSRUFEPQogIExUTElCTVVMVElUSFJFQUQ9CiAgaWYg
dGVzdCAiJGdsX3VzZV90aHJlYWRzIiAhPSBubzsgdGhlbgogICAgZG5sIENoZWNrIHdoZXRoZXIg
dGhlIGNvbXBpbGVyIGFuZCBsaW5rZXIgc3VwcG9ydCB3ZWFrIGRlY2xhcmF0aW9ucy4KICAgIEFD
X01TR19DSEVDS0lORyhbd2hldGhlciBpbXBvcnRlZCBzeW1ib2xzIGNhbiBiZSBkZWNsYXJlZCB3
ZWFrXSkKICAgIGdsX2hhdmVfd2Vhaz1ubwogICAgQUNfVFJZX0xJTksoW2V4dGVybiB2b2lkIHh5
enp5ICgpOwojcHJhZ21hIHdlYWsgeHl6enldLCBbeHl6enkoKTtdLCBbZ2xfaGF2ZV93ZWFrPXll
c10pCiAgICBBQ19NU0dfUkVTVUxUKFskZ2xfaGF2ZV93ZWFrXSkKICAgIGlmIHRlc3QgIiRnbF91
c2VfdGhyZWFkcyIgPSB5ZXMgfHwgdGVzdCAiJGdsX3VzZV90aHJlYWRzIiA9IHBvc2l4OyB0aGVu
CiAgICAgICMgT24gT1NGLzEsIHRoZSBjb21waWxlciBuZWVkcyB0aGUgZmxhZyAtcHRocmVhZCBv
ciAtRF9SRUVOVFJBTlQgc28gdGhhdAogICAgICAjIGl0IGdyb2tzIDxwdGhyZWFkLmg+LgogICAg
ICBnbF9zYXZlX0NQUEZMQUdTPSIkQ1BQRkxBR1MiCiAgICAgIENQUEZMQUdTPSIkQ1BQRkxBR1Mg
LURfUkVFTlRSQU5UIgogICAgICBBQ19DSEVDS19IRUFERVIocHRocmVhZC5oLCBnbF9oYXZlX3B0
aHJlYWRfaD15ZXMsIGdsX2hhdmVfcHRocmVhZF9oPW5vKQogICAgICBDUFBGTEFHUz0iJGdsX3Nh
dmVfQ1BQRkxBR1MiCiAgICAgIGlmIHRlc3QgIiRnbF9oYXZlX3B0aHJlYWRfaCIgPSB5ZXM7IHRo
ZW4KICAgICAgICAjIE90aGVyIHBvc3NpYmxlIHRlc3RzOgogICAgICAgICMgICAtbHB0aHJlYWRz
IChGU1UgdGhyZWFkcywgUEN0aHJlYWRzKQogICAgICAgICMgICAtbGd0aHJlYWRzCiAgICAgICAg
Y2FzZSAiJGhvc3Rfb3MiIGluCiAgICAgICAgICBvc2YqKQogICAgICAgICAgICAjIE9uIE9TRi8x
LCB0aGUgY29tcGlsZXIgbmVlZHMgdGhlIGZsYWcgLURfUkVFTlRSQU5UIHNvIHRoYXQgaXQKICAg
ICAgICAgICAgIyBncm9rcyA8cHRocmVhZC5oPi4gY2MgYWxzbyB1bmRlcnN0YW5kcyB0aGUgZmxh
ZyAtcHRocmVhZCwgYnV0CiAgICAgICAgICAgICMgd2UgZG9uJ3QgdXNlIGl0IGJlY2F1c2UgMS4g
Z2NjLTIuOTUgZG9lc24ndCB1bmRlcnN0YW5kIC1wdGhyZWFkLAogICAgICAgICAgICAjIDIuIHB1
dHRpbmcgYSBmbGFnIGludG8gQ1BQRkxBR1MgdGhhdCBoYXMgYW4gZWZmZWN0IG9uIHRoZSBsaW5r
ZXIKICAgICAgICAgICAgIyBjYXVzZXMgdGhlIEFDX1RSWV9MSU5LIHRlc3QgYmVsb3cgdG8gc3Vj
Y2VlZCB1bmV4cGVjdGVkbHksCiAgICAgICAgICAgICMgbGVhZGluZyB0byB3cm9uZyB2YWx1ZXMg
b2YgTElCVEhSRUFEIGFuZCBMVExJQlRIUkVBRC4KICAgICAgICAgICAgQ1BQRkxBR1M9IiRDUFBG
TEFHUyAtRF9SRUVOVFJBTlQiCiAgICAgICAgICAgIDs7CiAgICAgICAgZXNhYwogICAgICAgIGds
X2hhdmVfcHRocmVhZD0KICAgICAgICAjIFRlc3Qgd2hldGhlciBib3RoIHB0aHJlYWRfbXV0ZXhf
bG9jayBhbmQgcHRocmVhZF9tdXRleGF0dHJfaW5pdCBleGlzdAogICAgICAgICMgaW4gbGliYy4g
SVJJWCA2LjUgaGFzIHRoZSBmaXJzdCBvbmUgaW4gYm90aCBsaWJjIGFuZCBsaWJwdGhyZWFkLCBi
dXQKICAgICAgICAjIHRoZSBzZWNvbmQgb25lIG9ubHkgaW4gbGlicHRocmVhZCwgYW5kIGxvY2su
YyBuZWVkcyBpdC4KICAgICAgICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPHB0aHJlYWQuaD5dLAog
ICAgICAgICAgW3B0aHJlYWRfbXV0ZXhfbG9jaygocHRocmVhZF9tdXRleF90KikwKTsKICAgICAg
ICAgICBwdGhyZWFkX211dGV4YXR0cl9pbml0KChwdGhyZWFkX211dGV4YXR0cl90KikwKTtdLAog
ICAgICAgICAgW2dsX2hhdmVfcHRocmVhZD15ZXNdKQogICAgICAgICMgVGVzdCBmb3IgbGlicHRo
cmVhZCBieSBsb29raW5nIGZvciBwdGhyZWFkX2tpbGwuIChOb3QgcHRocmVhZF9zZWxmLAogICAg
ICAgICMgc2luY2UgaXQgaXMgZGVmaW5lZCBhcyBhIG1hY3JvIG9uIE9TRi8xLikKICAgICAgICBp
ZiB0ZXN0IC1uICIkZ2xfaGF2ZV9wdGhyZWFkIjsgdGhlbgogICAgICAgICAgIyBUaGUgcHJvZ3Jh
bSBsaW5rcyBmaW5lIHdpdGhvdXQgbGlicHRocmVhZC4gQnV0IGl0IG1heSBhY3R1YWxseQogICAg
ICAgICAgIyBuZWVkIHRvIGxpbmsgd2l0aCBsaWJwdGhyZWFkIGluIG9yZGVyIHRvIGNyZWF0ZSBt
dWx0aXBsZSB0aHJlYWRzLgogICAgICAgICAgQUNfQ0hFQ0tfTElCKHB0aHJlYWQsIHB0aHJlYWRf
a2lsbCwKICAgICAgICAgICAgW0xJQk1VTFRJVEhSRUFEPS1scHRocmVhZCBMVExJQk1VTFRJVEhS
RUFEPS1scHRocmVhZAogICAgICAgICAgICAgIyBPbiBTb2xhcmlzIGFuZCBIUC1VWCwgbW9zdCBw
dGhyZWFkIGZ1bmN0aW9ucyBleGlzdCBhbHNvIGluIGxpYmMuCiAgICAgICAgICAgICAjIFRoZXJl
Zm9yZSBwdGhyZWFkX2luX3VzZSgpIG5lZWRzIHRvIGFjdHVhbGx5IHRyeSB0byBjcmVhdGUgYQog
ICAgICAgICAgICAgIyB0aHJlYWQ6IHB0aHJlYWRfY3JlYXRlIGZyb20gbGliYyB3aWxsIGZhaWws
IHdoZXJlYXMKICAgICAgICAgICAgICMgcHRocmVhZF9jcmVhdGUgd2lsbCBhY3R1YWxseSBjcmVh
dGUgYSB0aHJlYWQuCiAgICAgICAgICAgICBjYXNlICIkaG9zdF9vcyIgaW4KICAgICAgICAgICAg
ICAgc29sYXJpcyogfCBocHV4KikKICAgICAgICAgICAgICAgICBBQ19ERUZJTkUoW1BUSFJFQURf
SU5fVVNFX0RFVEVDVElPTl9IQVJEXSwgMSwKICAgICAgICAgICAgICAgICAgIFtEZWZpbmUgaWYg
dGhlIHB0aHJlYWRfaW5fdXNlKCkgZGV0ZWN0aW9uIGlzIGhhcmQuXSkKICAgICAgICAgICAgIGVz
YWMKICAgICAgICAgICAgXSkKICAgICAgICBlbHNlCiAgICAgICAgICAjIFNvbWUgbGlicmFyeSBp
cyBuZWVkZWQuIFRyeSBsaWJwdGhyZWFkIGFuZCBsaWJjX3IuCiAgICAgICAgICBBQ19DSEVDS19M
SUIocHRocmVhZCwgcHRocmVhZF9raWxsLAogICAgICAgICAgICBbZ2xfaGF2ZV9wdGhyZWFkPXll
cwogICAgICAgICAgICAgTElCVEhSRUFEPS1scHRocmVhZCBMVExJQlRIUkVBRD0tbHB0aHJlYWQK
ICAgICAgICAgICAgIExJQk1VTFRJVEhSRUFEPS1scHRocmVhZCBMVExJQk1VTFRJVEhSRUFEPS1s
cHRocmVhZF0pCiAgICAgICAgICBpZiB0ZXN0IC16ICIkZ2xfaGF2ZV9wdGhyZWFkIjsgdGhlbgog
ICAgICAgICAgICAjIEZvciBGcmVlQlNEIDQuCiAgICAgICAgICAgIEFDX0NIRUNLX0xJQihjX3Is
IHB0aHJlYWRfa2lsbCwKICAgICAgICAgICAgICBbZ2xfaGF2ZV9wdGhyZWFkPXllcwogICAgICAg
ICAgICAgICBMSUJUSFJFQUQ9LWxjX3IgTFRMSUJUSFJFQUQ9LWxjX3IKICAgICAgICAgICAgICAg
TElCTVVMVElUSFJFQUQ9LWxjX3IgTFRMSUJNVUxUSVRIUkVBRD0tbGNfcl0pCiAgICAgICAgICBm
aQogICAgICAgIGZpCiAgICAgICAgaWYgdGVzdCAtbiAiJGdsX2hhdmVfcHRocmVhZCI7IHRoZW4K
ICAgICAgICAgIGdsX3RocmVhZHNfYXBpPXBvc2l4CiAgICAgICAgICBBQ19ERUZJTkUoW1VTRV9Q
T1NJWF9USFJFQURTXSwgMSwKICAgICAgICAgICAgW0RlZmluZSBpZiB0aGUgUE9TSVggbXVsdGl0
aHJlYWRpbmcgbGlicmFyeSBjYW4gYmUgdXNlZC5dKQogICAgICAgICAgaWYgdGVzdCAtbiAiJExJ
Qk1VTFRJVEhSRUFEIiB8fCB0ZXN0IC1uICIkTFRMSUJNVUxUSVRIUkVBRCI7IHRoZW4KICAgICAg
ICAgICAgaWYgdGVzdCAkZ2xfaGF2ZV93ZWFrID0geWVzOyB0aGVuCiAgICAgICAgICAgICAgQUNf
REVGSU5FKFtVU0VfUE9TSVhfVEhSRUFEU19XRUFLXSwgMSwKICAgICAgICAgICAgICAgIFtEZWZp
bmUgaWYgcmVmZXJlbmNlcyB0byB0aGUgUE9TSVggbXVsdGl0aHJlYWRpbmcgbGlicmFyeSBzaG91
bGQgYmUgbWFkZSB3ZWFrLl0pCiAgICAgICAgICAgICAgTElCVEhSRUFEPQogICAgICAgICAgICAg
IExUTElCVEhSRUFEPQogICAgICAgICAgICBmaQogICAgICAgICAgZmkKICAgICAgICAgICMgT1NG
LzEgNC4wIGFuZCBNYWNPUyBYIDEwLjEgbGFjayB0aGUgcHRocmVhZF9yd2xvY2tfdCB0eXBlIGFu
ZCB0aGUKICAgICAgICAgICMgcHRocmVhZF9yd2xvY2tfKiBmdW5jdGlvbnMuCiAgICAgICAgICBB
Q19DSEVDS19UWVBFKFtwdGhyZWFkX3J3bG9ja190XSwKICAgICAgICAgICAgW0FDX0RFRklORShb
SEFWRV9QVEhSRUFEX1JXTE9DS10sIDEsCiAgICAgICAgICAgICAgIFtEZWZpbmUgaWYgdGhlIFBP
U0lYIG11bHRpdGhyZWFkaW5nIGxpYnJhcnkgaGFzIHJlYWQvd3JpdGUgbG9ja3MuXSldLAogICAg
ICAgICAgICBbXSwKICAgICAgICAgICAgWyNpbmNsdWRlIDxwdGhyZWFkLmg+XSkKICAgICAgICAg
ICMgZ2xpYmMgZGVmaW5lcyBQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSBhcyBlbnVtLCBub3QgYXMg
YSBtYWNyby4KICAgICAgICAgIEFDX1RSWV9DT01QSUxFKFsjaW5jbHVkZSA8cHRocmVhZC5oPl0s
CiAgICAgICAgICAgIFsjaWYgX19GcmVlQlNEX18gPT0gNAplcnJvciAiTm8sIGluIEZyZWVCU0Qg
NC4wIHJlY3Vyc2l2ZSBtdXRleGVzIGFjdHVhbGx5IGRvbid0IHdvcmsuIgojZWxzZQppbnQgeCA9
IChpbnQpUFRIUkVBRF9NVVRFWF9SRUNVUlNJVkU7CiNlbmRpZl0sCiAgICAgICAgICAgIFtBQ19E
RUZJTkUoW0hBVkVfUFRIUkVBRF9NVVRFWF9SRUNVUlNJVkVdLCAxLAogICAgICAgICAgICAgICBb
RGVmaW5lIGlmIHRoZSA8cHRocmVhZC5oPiBkZWZpbmVzIFBUSFJFQURfTVVURVhfUkVDVVJTSVZF
Ll0pXSkKICAgICAgICAgICMgU29tZSBzeXN0ZW1zIG9wdGltaXplIGZvciBzaW5nbGUtdGhyZWFk
ZWQgcHJvZ3JhbXMgYnkgZGVmYXVsdCwgYW5kCiAgICAgICAgICAjIG5lZWQgc3BlY2lhbCBmbGFn
cyB0byBkaXNhYmxlIHRoZXNlIG9wdGltaXphdGlvbnMuIEZvciBleGFtcGxlLCB0aGUKICAgICAg
ICAgICMgZGVmaW5pdGlvbiBvZiAnZXJybm8nIGluIDxlcnJuby5oPi4KICAgICAgICAgIGNhc2Ug
IiRob3N0X29zIiBpbgogICAgICAgICAgICBhaXgqIHwgZnJlZWJzZCopIENQUEZMQUdTPSIkQ1BQ
RkxBR1MgLURfVEhSRUFEX1NBRkUiIDs7CiAgICAgICAgICAgIHNvbGFyaXMqKSBDUFBGTEFHUz0i
JENQUEZMQUdTIC1EX1JFRU5UUkFOVCIgOzsKICAgICAgICAgIGVzYWMKICAgICAgICBmaQogICAg
ICBmaQogICAgZmkKICAgIGlmIHRlc3QgLXogIiRnbF9oYXZlX3B0aHJlYWQiOyB0aGVuCiAgICAg
IGlmIHRlc3QgIiRnbF91c2VfdGhyZWFkcyIgPSB5ZXMgfHwgdGVzdCAiJGdsX3VzZV90aHJlYWRz
IiA9IHNvbGFyaXM7IHRoZW4KICAgICAgICBnbF9oYXZlX3NvbGFyaXN0aHJlYWQ9CiAgICAgICAg
Z2xfc2F2ZV9MSUJTPSIkTElCUyIKICAgICAgICBMSUJTPSIkTElCUyAtbHRocmVhZCIKICAgICAg
ICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPHRocmVhZC5oPgojaW5jbHVkZSA8c3luY2guaD5dLAog
ICAgICAgICAgW3Rocl9zZWxmKCk7XSwKICAgICAgICAgIFtnbF9oYXZlX3NvbGFyaXN0aHJlYWQ9
eWVzXSkKICAgICAgICBMSUJTPSIkZ2xfc2F2ZV9MSUJTIgogICAgICAgIGlmIHRlc3QgLW4gIiRn
bF9oYXZlX3NvbGFyaXN0aHJlYWQiOyB0aGVuCiAgICAgICAgICBnbF90aHJlYWRzX2FwaT1zb2xh
cmlzCiAgICAgICAgICBMSUJUSFJFQUQ9LWx0aHJlYWQKICAgICAgICAgIExUTElCVEhSRUFEPS1s
dGhyZWFkCiAgICAgICAgICBMSUJNVUxUSVRIUkVBRD0iJExJQlRIUkVBRCIKICAgICAgICAgIExU
TElCTVVMVElUSFJFQUQ9IiRMVExJQlRIUkVBRCIKICAgICAgICAgIEFDX0RFRklORShbVVNFX1NP
TEFSSVNfVEhSRUFEU10sIDEsCiAgICAgICAgICAgIFtEZWZpbmUgaWYgdGhlIG9sZCBTb2xhcmlz
IG11bHRpdGhyZWFkaW5nIGxpYnJhcnkgY2FuIGJlIHVzZWQuXSkKICAgICAgICAgIGlmIHRlc3Qg
JGdsX2hhdmVfd2VhayA9IHllczsgdGhlbgogICAgICAgICAgICBBQ19ERUZJTkUoW1VTRV9TT0xB
UklTX1RIUkVBRFNfV0VBS10sIDEsCiAgICAgICAgICAgICAgW0RlZmluZSBpZiByZWZlcmVuY2Vz
IHRvIHRoZSBvbGQgU29sYXJpcyBtdWx0aXRocmVhZGluZyBsaWJyYXJ5IHNob3VsZCBiZSBtYWRl
IHdlYWsuXSkKICAgICAgICAgICAgTElCVEhSRUFEPQogICAgICAgICAgICBMVExJQlRIUkVBRD0K
ICAgICAgICAgIGZpCiAgICAgICAgZmkKICAgICAgZmkKICAgIGZpCiAgICBpZiB0ZXN0ICIkZ2xf
dXNlX3RocmVhZHMiID0gcHRoOyB0aGVuCiAgICAgIGdsX3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFH
UyIKICAgICAgQUNfTElCX0xJTktGTEFHUyhwdGgpCiAgICAgIGdsX2hhdmVfcHRoPQogICAgICBn
bF9zYXZlX0xJQlM9IiRMSUJTIgogICAgICBMSUJTPSIkTElCUyAtbHB0aCIKICAgICAgQUNfVFJZ
X0xJTksoWyNpbmNsdWRlIDxwdGguaD5dLCBbcHRoX3NlbGYoKTtdLCBnbF9oYXZlX3B0aD15ZXMp
CiAgICAgIExJQlM9IiRnbF9zYXZlX0xJQlMiCiAgICAgIGlmIHRlc3QgLW4gIiRnbF9oYXZlX3B0
aCI7IHRoZW4KICAgICAgICBnbF90aHJlYWRzX2FwaT1wdGgKICAgICAgICBMSUJUSFJFQUQ9IiRM
SUJQVEgiCiAgICAgICAgTFRMSUJUSFJFQUQ9IiRMVExJQlBUSCIKICAgICAgICBMSUJNVUxUSVRI
UkVBRD0iJExJQlRIUkVBRCIKICAgICAgICBMVExJQk1VTFRJVEhSRUFEPSIkTFRMSUJUSFJFQUQi
CiAgICAgICAgQUNfREVGSU5FKFtVU0VfUFRIX1RIUkVBRFNdLCAxLAogICAgICAgICAgW0RlZmlu
ZSBpZiB0aGUgR05VIFB0aCBtdWx0aXRocmVhZGluZyBsaWJyYXJ5IGNhbiBiZSB1c2VkLl0pCiAg
ICAgICAgaWYgdGVzdCAtbiAiJExJQk1VTFRJVEhSRUFEIiB8fCB0ZXN0IC1uICIkTFRMSUJNVUxU
SVRIUkVBRCI7IHRoZW4KICAgICAgICAgIGlmIHRlc3QgJGdsX2hhdmVfd2VhayA9IHllczsgdGhl
bgogICAgICAgICAgICBBQ19ERUZJTkUoW1VTRV9QVEhfVEhSRUFEU19XRUFLXSwgMSwKICAgICAg
ICAgICAgICBbRGVmaW5lIGlmIHJlZmVyZW5jZXMgdG8gdGhlIEdOVSBQdGggbXVsdGl0aHJlYWRp
bmcgbGlicmFyeSBzaG91bGQgYmUgbWFkZSB3ZWFrLl0pCiAgICAgICAgICAgIExJQlRIUkVBRD0K
ICAgICAgICAgICAgTFRMSUJUSFJFQUQ9CiAgICAgICAgICBmaQogICAgICAgIGZpCiAgICAgIGVs
c2UKICAgICAgICBDUFBGTEFHUz0iJGdsX3NhdmVfQ1BQRkxBR1MiCiAgICAgIGZpCiAgICBmaQog
ICAgaWYgdGVzdCAteiAiJGdsX2hhdmVfcHRocmVhZCI7IHRoZW4KICAgICAgaWYgdGVzdCAiJGds
X3VzZV90aHJlYWRzIiA9IHllcyB8fCB0ZXN0ICIkZ2xfdXNlX3RocmVhZHMiID0gd2luMzI7IHRo
ZW4KICAgICAgICBpZiB7IGNhc2UgIiRob3N0X29zIiBpbgogICAgICAgICAgICAgICBtaW5ndyop
IHRydWU7OwogICAgICAgICAgICAgICAqKSBmYWxzZTs7CiAgICAgICAgICAgICBlc2FjCiAgICAg
ICAgICAgfTsgdGhlbgogICAgICAgICAgZ2xfdGhyZWFkc19hcGk9d2luMzIKICAgICAgICAgIEFD
X0RFRklORShbVVNFX1dJTjMyX1RIUkVBRFNdLCAxLAogICAgICAgICAgICBbRGVmaW5lIGlmIHRo
ZSBXaW4zMiBtdWx0aXRocmVhZGluZyBBUEkgY2FuIGJlIHVzZWQuXSkKICAgICAgICBmaQogICAg
ICBmaQogICAgZmkKICBmaQogIEFDX01TR19DSEVDS0lORyhbZm9yIG11bHRpdGhyZWFkIEFQSSB0
byB1c2VdKQogIEFDX01TR19SRVNVTFQoWyRnbF90aHJlYWRzX2FwaV0pCiAgQUNfU1VCU1QoTElC
VEhSRUFEKQogIEFDX1NVQlNUKExUTElCVEhSRUFEKQogIEFDX1NVQlNUKExJQk1VTFRJVEhSRUFE
KQogIEFDX1NVQlNUKExUTElCTVVMVElUSFJFQUQpCiAgZ2xfUFJFUkVRX0xPQ0sKXSkKCiMgUHJl
cmVxdWlzaXRlcyBvZiBsaWIvbG9jay5jLgpBQ19ERUZVTihbZ2xfUFJFUkVRX0xPQ0tdLCBbCiAg
QUNfUkVRVUlSRShbQUNfQ19JTkxJTkVdKQpdKQoKZG5sIFN1cnZleSBvZiBwbGF0Zm9ybXM6CmRu
bApkbmwgUGxhdGZvcm0gICAgICAgICAgQXZhaWxhYmxlICAgQ29tcGlsZXIgICAgU3VwcG9ydHMg
ICB0ZXN0LWxvY2sKZG5sICAgICAgICAgICAgICAgICAgIGZsYXZvdXJzICAgIG9wdGlvbiAgICAg
IHdlYWsgICAgICAgcmVzdWx0CmRubCAtLS0tLS0tLS0tLS0tLS0gICAtLS0tLS0tLS0gICAtLS0t
LS0tLS0gICAtLS0tLS0tLSAgIC0tLS0tLS0tLQpkbmwgTGludXggMi40L2dsaWJjICAgcG9zaXgg
ICAgICAgLWxwdGhyZWFkICAgICAgIFkgICAgICBPSwpkbmwKZG5sIEdOVSBIdXJkL2dsaWJjICAg
IHBvc2l4CmRubApkbmwgRnJlZUJTRCA1LjMgICAgICAgcG9zaXggICAgICAgLWxjX3IgICAgICAg
ICAgIFkKZG5sICAgICAgICAgICAgICAgICAgIHBvc2l4ICAgICAgIC1sa3NlID8gICAgICAgICBZ
CmRubCAgICAgICAgICAgICAgICAgICBwb3NpeCAgICAgICAtbHB0aHJlYWQgPyAgICAgWQpkbmwg
ICAgICAgICAgICAgICAgICAgcG9zaXggICAgICAgLWx0aHIgICAgICAgICAgIFkKZG5sCmRubCBG
cmVlQlNEIDUuMiAgICAgICBwb3NpeCAgICAgICAtbGNfciAgICAgICAgICAgWQpkbmwgICAgICAg
ICAgICAgICAgICAgcG9zaXggICAgICAgLWxrc2UgICAgICAgICAgIFkKZG5sICAgICAgICAgICAg
ICAgICAgIHBvc2l4ICAgICAgIC1sdGhyICAgICAgICAgICBZCmRubApkbmwgRnJlZUJTRCA0LjAs
NC4xMCAgcG9zaXggICAgICAgLWxjX3IgICAgICAgICAgIFkgICAgICBPSwpkbmwKZG5sIE5ldEJT
RCAxLjYgICAgICAgIC0tCmRubApkbmwgT3BlbkJTRCAzLjQgICAgICAgcG9zaXggICAgICAgLWxw
dGhyZWFkICAgICAgIFkgICAgICBPSwpkbmwKZG5sIE1hY09TIFggMTAuWzEyM10gIHBvc2l4ICAg
ICAgIC1scHRocmVhZCAgICAgICBZICAgICAgT0sKZG5sCmRubCBTb2xhcmlzIDcsOCw5ICAgICBw
b3NpeCAgICAgICAtbHB0aHJlYWQgICAgICAgWSAgICAgIFNvbCA3LDg6IDAuMDsgU29sIDk6IE9L
CmRubCAgICAgICAgICAgICAgICAgICBzb2xhcmlzICAgICAtbHRocmVhZCAgICAgICAgWSAgICAg
IFNvbCA3LDg6IDAuMDsgU29sIDk6IE9LCmRubApkbmwgSFAtVVggMTEgICAgICAgICAgcG9zaXgg
ICAgICAgLWxwdGhyZWFkICAgICAgIE4gKGNjKSBPSwpkbmwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFkgKGdjYykKZG5sCmRubCBJUklYIDYuNSAgICAgICAg
ICBwb3NpeCAgICAgICAtbHB0aHJlYWQgICAgICAgWSAgICAgIDAuNQpkbmwKZG5sIEFJWCA0LjMs
NS4xICAgICAgIHBvc2l4ICAgICAgIC1scHRocmVhZCAgICAgICBOICAgICAgQUlYIDQ6IDAuNTsg
QUlYIDU6IE9LCmRubApkbmwgT1NGLzEgNC4wLDUuMSAgICAgcG9zaXggICAgICAgLXB0aHJlYWQg
KGNjKSAgIE4gICAgICBPSwpkbmwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLWxwdGhy
ZWFkIChnY2MpIFkKZG5sCmRubCBDeWd3aW4gICAgICAgICAgICBwb3NpeCAgICAgICAtbHB0aHJl
YWQgICAgICAgWSAgICAgIE9LCmRubApkbmwgQW55IG9mIHRoZSBhYm92ZSAgcHRoICAgICAgICAg
LWxwdGggICAgICAgICAgICAgICAgICAwLjAKZG5sCmRubCBNaW5ndyAgICAgICAgICAgICB3aW4z
MiAgICAgICAgICAgICAgICAgICAgICAgTiAgICAgIE9LCmRubApkbmwgQmVPUyA1ICAgICAgICAg
ICAgLS0KZG5sCmRubCBUaGUgdGVzdC1sb2NrIHJlc3VsdCBzaG93cyB3aGF0IGhhcHBlbnMgaWYg
aW4gdGVzdC1sb2NrLmMgRVhQTElDSVRfWUlFTEQgaXMKZG5sIHR1cm5lZCBvZmY6CmRubCAgIE9L
IGlmIGFsbCB0aHJlZSB0ZXN0cyB0ZXJtaW5hdGUgT0ssCmRubCAgIDAuNSBpZiB0aGUgZmlyc3Qg
dGVzdCB0ZXJtaW5hdGVzIE9LIGJ1dCB0aGUgc2Vjb25kIG9uZSBsb29wcyBlbmRsZXNzbHksCmRu
bCAgIDAuMCBpZiB0aGUgZmlyc3QgdGVzdCBhbHJlYWR5IGxvb3BzIGVuZGxlc3NseS4KCiMgbG9u
Z2RvdWJsZS5tNCBzZXJpYWwgMiAoZ2V0dGV4dC0wLjE1KQpkbmwgQ29weXJpZ2h0IChDKSAyMDAy
LTIwMDMsIDIwMDYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubCBUaGlzIGZpbGUg
aXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpkbmwgZ2l2ZXMg
dW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKZG5sIHdp
dGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHBy
ZXNlcnZlZC4KCmRubCBGcm9tIEJydW5vIEhhaWJsZS4KZG5sIFRlc3Qgd2hldGhlciB0aGUgY29t
cGlsZXIgc3VwcG9ydHMgdGhlICdsb25nIGRvdWJsZScgdHlwZS4KZG5sIFByZXJlcXVpc2l0ZTog
QUNfUFJPR19DQwoKZG5sIFRoaXMgZmlsZSBpcyBvbmx5IG5lZWRlZCBpbiBhdXRvY29uZiA8PSAy
LjU5LiAgTmV3ZXIgdmVyc2lvbnMgb2YgYXV0b2NvbmYKZG5sIGhhdmUgYSBtYWNybyBBQ19UWVBF
X0xPTkdfRE9VQkxFIHdpdGggaWRlbnRpY2FsIHNlbWFudGljcy4KCkFDX0RFRlVOKFtndF9UWVBF
X0xPTkdET1VCTEVdLApbCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBsb25nIGRvdWJsZV0sIGd0X2N2
X2NfbG9uZ19kb3VibGUsCiAgICBbaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KICAgICAgIGd0
X2N2X2NfbG9uZ19kb3VibGU9eWVzCiAgICAgZWxzZQogICAgICAgQUNfVFJZX0NPTVBJTEUoWwog
ICAgICAgICAvKiBUaGUgU3RhcmRlbnQgVmlzdHJhIGtub3dzIHNpemVvZihsb25nIGRvdWJsZSks
IGJ1dCBkb2VzIG5vdCBzdXBwb3J0IGl0LiAgKi8KICAgICAgICAgbG9uZyBkb3VibGUgZm9vID0g
MC4wOwogICAgICAgICAvKiBPbiBVbHRyaXggNC4zIGNjLCBsb25nIGRvdWJsZSBpcyA0IGFuZCBk
b3VibGUgaXMgOC4gICovCiAgICAgICAgIGludCBhcnJheSBbMiooc2l6ZW9mKGxvbmcgZG91Ymxl
KSA+PSBzaXplb2YoZG91YmxlKSkgLSAxXTsKICAgICAgICAgXSwgLAogICAgICAgICBndF9jdl9j
X2xvbmdfZG91YmxlPXllcywgZ3RfY3ZfY19sb25nX2RvdWJsZT1ubykKICAgICBmaV0pCiAgaWYg
dGVzdCAkZ3RfY3ZfY19sb25nX2RvdWJsZSA9IHllczsgdGhlbgogICAgQUNfREVGSU5FKEhBVkVf
TE9OR19ET1VCTEUsIDEsIFtEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdsb25nIGRvdWJsZScgdHlw
ZS5dKQogIGZpCl0pCgojIGxvbmdsb25nLm00IHNlcmlhbCA1CmRubCBDb3B5cmlnaHQgKEMpIDE5
OTktMjAwNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBm
cmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxp
bWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBv
ciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2Vy
dmVkLgoKZG5sIEZyb20gUGF1bCBFZ2dlcnQuCgojIERlZmluZSBIQVZFX0xPTkdfTE9ORyBpZiAn
bG9uZyBsb25nJyB3b3Jrcy4KCkFDX0RFRlVOKFtnbF9BQ19UWVBFX0xPTkdfTE9OR10sClsKICBB
Q19DQUNIRV9DSEVDSyhbZm9yIGxvbmcgbG9uZ10sIGFjX2N2X3R5cGVfbG9uZ19sb25nLAogIFtB
Q19UUllfTElOSyhbbG9uZyBsb25nIGxsID0gMUxMOyBpbnQgaSA9IDYzO10sCiAgICBbbG9uZyBs
b25nIGxsbWF4ID0gKGxvbmcgbG9uZykgLTE7CiAgICAgcmV0dXJuIGxsIDw8IGkgfCBsbCA+PiBp
IHwgbGxtYXggLyBsbCB8IGxsbWF4ICUgbGw7XSwKICAgIGFjX2N2X3R5cGVfbG9uZ19sb25nPXll
cywKICAgIGFjX2N2X3R5cGVfbG9uZ19sb25nPW5vKV0pCiAgaWYgdGVzdCAkYWNfY3ZfdHlwZV9s
b25nX2xvbmcgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShIQVZFX0xPTkdfTE9ORywgMSwKICAg
ICAgW0RlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2xvbmcgbG9uZycgdHlwZS5dKQogIGZpCl0pCgoj
IG5scy5tNCBzZXJpYWwgMyAoZ2V0dGV4dC0wLjE1KQpkbmwgQ29weXJpZ2h0IChDKSAxOTk1LTIw
MDMsIDIwMDUtMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmls
ZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZl
cyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMg
cHJlc2VydmVkLgpkbmwKZG5sIFRoaXMgZmlsZSBjYW4gY2FuIGJlIHVzZWQgaW4gcHJvamVjdHMg
d2hpY2ggYXJlIG5vdCBhdmFpbGFibGUgdW5kZXIKZG5sIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZSBvciB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKZG5sIExpY2Vuc2UgYnV0
IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQK
ZG5sIGZ1bmN0aW9uYWxpdHkuCmRubCBQbGVhc2Ugbm90ZSB0aGF0IHRoZSBhY3R1YWwgY29kZSBv
ZiB0aGUgR05VIGdldHRleHQgbGlicmFyeSBpcyBjb3ZlcmVkCmRubCBieSB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgYW5kIHRoZSByZXN0IG9mIHRoZSBHTlUKZG5sIGdl
dHRleHQgcGFja2FnZSBwYWNrYWdlIGlzIGNvdmVyZWQgYnkgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlLgpkbmwgVGhleSBhcmUgKm5vdCogaW4gdGhlIHB1YmxpYyBkb21haW4uCgpkbmwg
QXV0aG9yczoKZG5sICAgVWxyaWNoIERyZXBwZXIgPGRyZXBwZXJAY3lnbnVzLmNvbT4sIDE5OTUt
MjAwMC4KZG5sICAgQnJ1bm8gSGFpYmxlIDxoYWlibGVAY2xpc3AuY29ucy5vcmc+LCAyMDAwLTIw
MDMuCgpBQ19QUkVSRVEoMi41MCkKCkFDX0RFRlVOKFtBTV9OTFNdLApbCiAgQUNfTVNHX0NIRUNL
SU5HKFt3aGV0aGVyIE5MUyBpcyByZXF1ZXN0ZWRdKQogIGRubCBEZWZhdWx0IGlzIGVuYWJsZWQg
TkxTCiAgQUNfQVJHX0VOQUJMRShubHMsCiAgICBbICAtLWRpc2FibGUtbmxzICAgICAgICAgICBk
byBub3QgdXNlIE5hdGl2ZSBMYW5ndWFnZSBTdXBwb3J0XSwKICAgIFVTRV9OTFM9JGVuYWJsZXZh
bCwgVVNFX05MUz15ZXMpCiAgQUNfTVNHX1JFU1VMVCgkVVNFX05MUykKICBBQ19TVUJTVChVU0Vf
TkxTKQpdKQoKIyBwby5tNCBzZXJpYWwgMTMgKGdldHRleHQtMC4xNSkKZG5sIENvcHlyaWdodCAo
QykgMTk5NS0yMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxl
IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVz
IHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBw
cmVzZXJ2ZWQuCmRubApkbmwgVGhpcyBmaWxlIGNhbiBjYW4gYmUgdXNlZCBpbiBwcm9qZWN0cyB3
aGljaCBhcmUgbm90IGF2YWlsYWJsZSB1bmRlcgpkbmwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlIG9yIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwpkbmwgTGljZW5zZSBidXQg
d2hpY2ggc3RpbGwgd2FudCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoZSBHTlUgZ2V0dGV4dApk
bmwgZnVuY3Rpb25hbGl0eS4KZG5sIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9m
IHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGlzIGNvdmVyZWQKZG5sIGJ5IHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCBhbmQgdGhlIHJlc3Qgb2YgdGhlIEdOVQpkbmwgZ2V0
dGV4dCBwYWNrYWdlIHBhY2thZ2UgaXMgY292ZXJlZCBieSB0aGUgR05VIEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UuCmRubCBUaGV5IGFyZSAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KCmRubCBB
dXRob3JzOgpkbmwgICBVbHJpY2ggRHJlcHBlciA8ZHJlcHBlckBjeWdudXMuY29tPiwgMTk5NS0y
MDAwLgpkbmwgICBCcnVubyBIYWlibGUgPGhhaWJsZUBjbGlzcC5jb25zLm9yZz4sIDIwMDAtMjAw
My4KCkFDX1BSRVJFUSgyLjUwKQoKZG5sIENoZWNrcyBmb3IgYWxsIHByZXJlcXVpc2l0ZXMgb2Yg
dGhlIHBvIHN1YmRpcmVjdG9yeS4KQUNfREVGVU4oW0FNX1BPX1NVQkRJUlNdLApbCiAgQUNfUkVR
VUlSRShbQUNfUFJPR19NQUtFX1NFVF0pZG5sCiAgQUNfUkVRVUlSRShbQUNfUFJPR19JTlNUQUxM
XSlkbmwKICBBQ19SRVFVSVJFKFtBTV9QUk9HX01LRElSX1BdKWRubCBkZWZpbmVkIGJ5IGF1dG9t
YWtlCiAgQUNfUkVRVUlSRShbQU1fTkxTXSlkbmwKCiAgZG5sIFBlcmZvcm0gdGhlIGZvbGxvd2lu
ZyB0ZXN0cyBhbHNvIGlmIC0tZGlzYWJsZS1ubHMgaGFzIGJlZW4gZ2l2ZW4sCiAgZG5sIGJlY2F1
c2UgdGhleSBhcmUgbmVlZGVkIGZvciAibWFrZSBkaXN0IiB0byB3b3JrLgoKICBkbmwgU2VhcmNo
IGZvciBHTlUgbXNnZm10IGluIHRoZSBQQVRILgogIGRubCBUaGUgZmlyc3QgdGVzdCBleGNsdWRl
cyBTb2xhcmlzIG1zZ2ZtdCBhbmQgZWFybHkgR05VIG1zZ2ZtdCB2ZXJzaW9ucy4KICBkbmwgVGhl
IHNlY29uZCB0ZXN0IGV4Y2x1ZGVzIEZyZWVCU0QgbXNnZm10LgogIEFNX1BBVEhfUFJPR19XSVRI
X1RFU1QoTVNHRk1ULCBtc2dmbXQsCiAgICBbJGFjX2Rpci8kYWNfd29yZCAtLXN0YXRpc3RpY3Mg
L2Rldi9udWxsID4mXUFTX01FU1NBR0VfTE9HX0ZEWyAyPiYxICYmCiAgICAgKGlmICRhY19kaXIv
JGFjX3dvcmQgLS1zdGF0aXN0aWNzIC9kZXYvbnVsbCAyPiYxID4vZGV2L251bGwgfCBncmVwIHVz
YWdlID4vZGV2L251bGw7IHRoZW4gZXhpdCAxOyBlbHNlIGV4aXQgMDsgZmkpXSwKICAgIDopCiAg
QUNfUEFUSF9QUk9HKEdNU0dGTVQsIGdtc2dmbXQsICRNU0dGTVQpCgogIGRubCBUZXN0IHdoZXRo
ZXIgaXQgaXMgR05VIG1zZ2ZtdCA+PSAwLjE1LgpjaGFuZ2VxdW90ZSgsKWRubAogIGNhc2UgYCRN
U0dGTVQgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbgogICAg
JycgfCAwLlswLTldIHwgMC5bMC05XS4qIHwgMC4xWzAtNF0gfCAwLjFbMC00XS4qKSBNU0dGTVRf
MDE1PTogOzsKICAgICopIE1TR0ZNVF8wMTU9JE1TR0ZNVCA7OwogIGVzYWMKY2hhbmdlcXVvdGUo
WyxdKWRubAogIEFDX1NVQlNUKFtNU0dGTVRfMDE1XSkKY2hhbmdlcXVvdGUoLClkbmwKICBjYXNl
IGAkR01TR0ZNVCAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGlu
CiAgICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC00XSB8IDAuMVswLTRdLiopIEdN
U0dGTVRfMDE1PTogOzsKICAgICopIEdNU0dGTVRfMDE1PSRHTVNHRk1UIDs7CiAgZXNhYwpjaGFu
Z2VxdW90ZShbLF0pZG5sCiAgQUNfU1VCU1QoW0dNU0dGTVRfMDE1XSkKCiAgZG5sIFNlYXJjaCBm
b3IgR05VIHhnZXR0ZXh0IDAuMTIgb3IgbmV3ZXIgaW4gdGhlIFBBVEguCiAgZG5sIFRoZSBmaXJz
dCB0ZXN0IGV4Y2x1ZGVzIFNvbGFyaXMgeGdldHRleHQgYW5kIGVhcmx5IEdOVSB4Z2V0dGV4dCB2
ZXJzaW9ucy4KICBkbmwgVGhlIHNlY29uZCB0ZXN0IGV4Y2x1ZGVzIEZyZWVCU0QgeGdldHRleHQu
CiAgQU1fUEFUSF9QUk9HX1dJVEhfVEVTVChYR0VUVEVYVCwgeGdldHRleHQsCiAgICBbJGFjX2Rp
ci8kYWNfd29yZCAtLW9taXQtaGVhZGVyIC0tY29weXJpZ2h0LWhvbGRlcj0gLS1tc2dpZC1idWdz
LWFkZHJlc3M9IC9kZXYvbnVsbCA+Jl1BU19NRVNTQUdFX0xPR19GRFsgMj4mMSAmJgogICAgIChp
ZiAkYWNfZGlyLyRhY193b3JkIC0tb21pdC1oZWFkZXIgLS1jb3B5cmlnaHQtaG9sZGVyPSAtLW1z
Z2lkLWJ1Z3MtYWRkcmVzcz0gL2Rldi9udWxsIDI+JjEgPi9kZXYvbnVsbCB8IGdyZXAgdXNhZ2Ug
Pi9kZXYvbnVsbDsgdGhlbiBleGl0IDE7IGVsc2UgZXhpdCAwOyBmaSldLAogICAgOikKICBkbmwg
UmVtb3ZlIGxlZnRvdmVyIGZyb20gRnJlZUJTRCB4Z2V0dGV4dCBjYWxsLgogIHJtIC1mIG1lc3Nh
Z2VzLnBvCgogIGRubCBUZXN0IHdoZXRoZXIgaXQgaXMgR05VIHhnZXR0ZXh0ID49IDAuMTUuCmNo
YW5nZXF1b3RlKCwpZG5sCiAgY2FzZSBgJFhHRVRURVhUIC0tdmVyc2lvbiB8IHNlZCAxcSB8IHNl
ZCAtZSAncyxeW14wLTldKiwsJ2AgaW4KICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAu
MVswLTRdIHwgMC4xWzAtNF0uKikgWEdFVFRFWFRfMDE1PTogOzsKICAgICopIFhHRVRURVhUXzAx
NT0kWEdFVFRFWFQgOzsKICBlc2FjCmNoYW5nZXF1b3RlKFssXSlkbmwKICBBQ19TVUJTVChbWEdF
VFRFWFRfMDE1XSkKCiAgZG5sIFNlYXJjaCBmb3IgR05VIG1zZ21lcmdlIDAuMTEgb3IgbmV3ZXIg
aW4gdGhlIFBBVEguCiAgQU1fUEFUSF9QUk9HX1dJVEhfVEVTVChNU0dNRVJHRSwgbXNnbWVyZ2Us
CiAgICBbJGFjX2Rpci8kYWNfd29yZCAtLXVwZGF0ZSAtcSAvZGV2L251bGwgL2Rldi9udWxsID4m
XUFTX01FU1NBR0VfTE9HX0ZEWyAyPiYxXSwgOikKCiAgZG5sIEluc3RhbGxhdGlvbiBkaXJlY3Rv
cmllcy4KICBkbmwgQXV0b2NvbmYgPj0gMi42MCBkZWZpbmVzIGxvY2FsZWRpci4gRm9yIG9sZGVy
IHZlcnNpb25zIG9mIGF1dG9jb25mLCB3ZQogIGRubCBoYXZlIHRvIGRlZmluZSBpdCBoZXJlLCBz
byB0aGF0IGl0IGNhbiBiZSB1c2VkIGluIHBvL01ha2VmaWxlLgogIHRlc3QgLW4gIiRsb2NhbGVk
aXIiIHx8IGxvY2FsZWRpcj0nJHtkYXRhZGlyfS9sb2NhbGUnCiAgQUNfU1VCU1QoW2xvY2FsZWRp
cl0pCgogIEFDX0NPTkZJR19DT01NQU5EUyhbcG8tZGlyZWN0b3JpZXNdLCBbWwogICAgZm9yIGFj
X2ZpbGUgaW4gJENPTkZJR19GSUxFUzsgZG8KICAgICAgIyBTdXBwb3J0ICJvdXRmaWxlWzppbmZp
bGVbOmluZmlsZS4uLl1dIgogICAgICBjYXNlICIkYWNfZmlsZSIgaW4KICAgICAgICAqOiopIGFj
X2ZpbGU9YGVjaG8gIiRhY19maWxlInxzZWQgJ3MlOi4qJSUnYCA7OwogICAgICBlc2FjCiAgICAg
ICMgUE8gZGlyZWN0b3JpZXMgaGF2ZSBhIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBmcm9tIE1ha2Vm
aWxlLmluLmluLgogICAgICBjYXNlICIkYWNfZmlsZSIgaW4gKi9NYWtlZmlsZS5pbikKICAgICAg
ICAjIEFkanVzdCBhIHJlbGF0aXZlIHNyY2Rpci4KICAgICAgICBhY19kaXI9YGVjaG8gIiRhY19m
aWxlInxzZWQgJ3MlL1teL11bXi9dKiQlJSdgCiAgICAgICAgYWNfZGlyX3N1ZmZpeD0iL2BlY2hv
ICIkYWNfZGlyInxzZWQgJ3MlXlwuLyUlJ2AiCiAgICAgICAgYWNfZG90cz1gZWNobyAiJGFjX2Rp
cl9zdWZmaXgifHNlZCAncyUvW14vXSolLi4vJWcnYAogICAgICAgICMgSW4gYXV0b2NvbmYtMi4x
MyBpdCBpcyBjYWxsZWQgJGFjX2dpdmVuX3NyY2Rpci4KICAgICAgICAjIEluIGF1dG9jb25mLTIu
NTAgaXQgaXMgY2FsbGVkICRzcmNkaXIuCiAgICAgICAgdGVzdCAtbiAiJGFjX2dpdmVuX3NyY2Rp
ciIgfHwgYWNfZ2l2ZW5fc3JjZGlyPSIkc3JjZGlyIgogICAgICAgIGNhc2UgIiRhY19naXZlbl9z
cmNkaXIiIGluCiAgICAgICAgICAuKSAgdG9wX3NyY2Rpcj1gZWNobyAkYWNfZG90c3xzZWQgJ3Ml
LyQlJSdgIDs7CiAgICAgICAgICAvKikgdG9wX3NyY2Rpcj0iJGFjX2dpdmVuX3NyY2RpciIgOzsK
ICAgICAgICAgICopICB0b3Bfc3JjZGlyPSIkYWNfZG90cyRhY19naXZlbl9zcmNkaXIiIDs7CiAg
ICAgICAgZXNhYwogICAgICAgICMgVHJlYXQgYSBkaXJlY3RvcnkgYXMgYSBQTyBkaXJlY3Rvcnkg
aWYgYW5kIG9ubHkgaWYgaXQgaGFzIGEKICAgICAgICAjIFBPVEZJTEVTLmluIGZpbGUuIFRoaXMg
YWxsb3dzIHBhY2thZ2VzIHRvIGhhdmUgbXVsdGlwbGUgUE8KICAgICAgICAjIGRpcmVjdG9yaWVz
IHVuZGVyIGRpZmZlcmVudCBuYW1lcyBvciBpbiBkaWZmZXJlbnQgbG9jYXRpb25zLgogICAgICAg
IGlmIHRlc3QgLWYgIiRhY19naXZlbl9zcmNkaXIvJGFjX2Rpci9QT1RGSUxFUy5pbiI7IHRoZW4K
ICAgICAgICAgIHJtIC1mICIkYWNfZGlyL1BPVEZJTEVTIgogICAgICAgICAgdGVzdCAtbiAiJGFz
X21lIiAmJiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiIHx8IGVjaG8g
ImNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiCiAgICAgICAgICBjYXQgIiRhY19naXZlbl9zcmNk
aXIvJGFjX2Rpci9QT1RGSUxFUy5pbiIgfCBzZWQgLWUgIi9eIy9kIiAtZSAiL15bIAldKlwkL2Qi
IC1lICJzLC4qLCAgICAgJHRvcF9zcmNkaXIvJiBcXFxcLCIgfCBzZWQgLWUgIlwkcy9cKC4qXCkg
XFxcXC9cMS8iID4gIiRhY19kaXIvUE9URklMRVMiCiAgICAgICAgICBQT01BS0VGSUxFREVQUz0i
UE9URklMRVMuaW4iCiAgICAgICAgICAjIEFMTF9MSU5HVUFTLCBQT0ZJTEVTLCBVUERBVEVQT0ZJ
TEVTLCBEVU1NWVBPRklMRVMsIEdNT0ZJTEVTIGRlcGVuZAogICAgICAgICAgIyBvbiAkYWNfZGly
IGJ1dCBkb24ndCBkZXBlbmQgb24gdXNlci1zcGVjaWZpZWQgY29uZmlndXJhdGlvbgogICAgICAg
ICAgIyBwYXJhbWV0ZXJzLgogICAgICAgICAgaWYgdGVzdCAtZiAiJGFjX2dpdmVuX3NyY2Rpci8k
YWNfZGlyL0xJTkdVQVMiOyB0aGVuCiAgICAgICAgICAgICMgVGhlIExJTkdVQVMgZmlsZSBjb250
YWlucyB0aGUgc2V0IG9mIGF2YWlsYWJsZSBsYW5ndWFnZXMuCiAgICAgICAgICAgIGlmIHRlc3Qg
LW4gIiRPQlNPTEVURV9BTExfTElOR1VBUyI7IHRoZW4KICAgICAgICAgICAgICB0ZXN0IC1uICIk
YXNfbWUiICYmIGVjaG8gIiRhc19tZTogc2V0dGluZyBBTExfTElOR1VBUyBpbiBjb25maWd1cmUu
aW4gaXMgb2Jzb2xldGUiIHx8IGVjaG8gInNldHRpbmcgQUxMX0xJTkdVQVMgaW4gY29uZmlndXJl
LmluIGlzIG9ic29sZXRlIgogICAgICAgICAgICBmaQogICAgICAgICAgICBBTExfTElOR1VBU189
YHNlZCAtZSAiL14jL2QiIC1lICJzLyMuKi8vIiAiJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyL0xJ
TkdVQVMiYAogICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9t
IGF1dG9tYWtlIDwgMS41LgogICAgICAgICAgICBldmFsICdBTExfTElOR1VBUycnPSRBTExfTElO
R1VBU18nCiAgICAgICAgICAgIFBPTUFLRUZJTEVERVBTPSIkUE9NQUtFRklMRURFUFMgTElOR1VB
UyIKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIyBUaGUgc2V0IG9mIGF2YWlsYWJsZSBsYW5n
dWFnZXMgd2FzIGdpdmVuIGluIGNvbmZpZ3VyZS5pbi4KICAgICAgICAgICAgIyBIaWRlIHRoZSBB
TExfTElOR1VBUyBhc3NpZ21lbnQgZnJvbSBhdXRvbWFrZSA8IDEuNS4KICAgICAgICAgICAgZXZh
bCAnQUxMX0xJTkdVQVMnJz0kT0JTT0xFVEVfQUxMX0xJTkdVQVMnCiAgICAgICAgICBmaQogICAg
ICAgICAgIyBDb21wdXRlIFBPRklMRVMKICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFu
ZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLnBvKQogICAgICAgICAgIyBDb21w
dXRlIFVQREFURVBPRklMRVMKICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChB
TExfTElOR1VBUyksICQobGFuZykucG8tdXBkYXRlKQogICAgICAgICAgIyBDb21wdXRlIERVTU1Z
UE9GSUxFUwogICAgICAgICAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5HVUFT
KSwgJChsYW5nKS5ub3ApCiAgICAgICAgICAjIENvbXB1dGUgR01PRklMRVMKICAgICAgICAgICMg
YXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcp
LmdtbykKICAgICAgICAgIGNhc2UgIiRhY19naXZlbl9zcmNkaXIiIGluCiAgICAgICAgICAgIC4p
IHNyY2RpcnByZT0gOzsKICAgICAgICAgICAgKikgc3JjZGlycHJlPSckKHNyY2RpcikvJyA7Owog
ICAgICAgICAgZXNhYwogICAgICAgICAgUE9GSUxFUz0KICAgICAgICAgIFVQREFURVBPRklMRVM9
CiAgICAgICAgICBEVU1NWVBPRklMRVM9CiAgICAgICAgICBHTU9GSUxFUz0KICAgICAgICAgIGZv
ciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KICAgICAgICAgICAgUE9GSUxFUz0iJFBPRklMRVMg
JHNyY2RpcnByZSRsYW5nLnBvIgogICAgICAgICAgICBVUERBVEVQT0ZJTEVTPSIkVVBEQVRFUE9G
SUxFUyAkbGFuZy5wby11cGRhdGUiCiAgICAgICAgICAgIERVTU1ZUE9GSUxFUz0iJERVTU1ZUE9G
SUxFUyAkbGFuZy5ub3AiCiAgICAgICAgICAgIEdNT0ZJTEVTPSIkR01PRklMRVMgJHNyY2RpcnBy
ZSRsYW5nLmdtbyIKICAgICAgICAgIGRvbmUKICAgICAgICAgICMgQ0FUQUxPR1MgZGVwZW5kcyBv
biBib3RoICRhY19kaXIgYW5kIHRoZSB1c2VyJ3MgTElOR1VBUwogICAgICAgICAgIyBlbnZpcm9u
bWVudCB2YXJpYWJsZS4KICAgICAgICAgIElOU1RfTElOR1VBUz0KICAgICAgICAgIGlmIHRlc3Qg
LW4gIiRBTExfTElOR1VBUyI7IHRoZW4KICAgICAgICAgICAgZm9yIHByZXNlbnRsYW5nIGluICRB
TExfTElOR1VBUzsgZG8KICAgICAgICAgICAgICB1c2VpdD1ubwogICAgICAgICAgICAgIGlmIHRl
c3QgIiVVTlNFVCUiICE9ICIkTElOR1VBUyI7IHRoZW4KICAgICAgICAgICAgICAgIGRlc2lyZWRs
YW5ndWFnZXM9IiRMSU5HVUFTIgogICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIGRl
c2lyZWRsYW5ndWFnZXM9IiRBTExfTElOR1VBUyIKICAgICAgICAgICAgICBmaQogICAgICAgICAg
ICAgIGZvciBkZXNpcmVkbGFuZyBpbiAkZGVzaXJlZGxhbmd1YWdlczsgZG8KICAgICAgICAgICAg
ICAgICMgVXNlIHRoZSBwcmVzZW50bGFuZyBjYXRhbG9nIGlmIGRlc2lyZWRsYW5nIGlzCiAgICAg
ICAgICAgICAgICAjICAgYS4gZXF1YWwgdG8gcHJlc2VudGxhbmcsIG9yCiAgICAgICAgICAgICAg
ICAjICAgYi4gYSB2YXJpYW50IG9mIHByZXNlbnRsYW5nIChiZWNhdXNlIGluIHRoaXMgY2FzZSwK
ICAgICAgICAgICAgICAgICMgICAgICBwcmVzZW50bGFuZyBjYW4gYmUgdXNlZCBhcyBhIGZhbGxi
YWNrIGZvciBtZXNzYWdlcwogICAgICAgICAgICAgICAgIyAgICAgIHdoaWNoIGFyZSBub3QgdHJh
bnNsYXRlZCBpbiB0aGUgZGVzaXJlZGxhbmcgY2F0YWxvZykuCiAgICAgICAgICAgICAgICBjYXNl
ICIkZGVzaXJlZGxhbmciIGluCiAgICAgICAgICAgICAgICAgICIkcHJlc2VudGxhbmciKikgdXNl
aXQ9eWVzOzsKICAgICAgICAgICAgICAgIGVzYWMKICAgICAgICAgICAgICBkb25lCiAgICAgICAg
ICAgICAgaWYgdGVzdCAkdXNlaXQgPSB5ZXM7IHRoZW4KICAgICAgICAgICAgICAgIElOU1RfTElO
R1VBUz0iJElOU1RfTElOR1VBUyAkcHJlc2VudGxhbmciCiAgICAgICAgICAgICAgZmkKICAgICAg
ICAgICAgZG9uZQogICAgICAgICAgZmkKICAgICAgICAgIENBVEFMT0dTPQogICAgICAgICAgaWYg
dGVzdCAtbiAiJElOU1RfTElOR1VBUyI7IHRoZW4KICAgICAgICAgICAgZm9yIGxhbmcgaW4gJElO
U1RfTElOR1VBUzsgZG8KICAgICAgICAgICAgICBDQVRBTE9HUz0iJENBVEFMT0dTICRsYW5nLmdt
byIKICAgICAgICAgICAgZG9uZQogICAgICAgICAgZmkKICAgICAgICAgIHRlc3QgLW4gIiRhc19t
ZSIgJiYgZWNobyAiJGFzX21lOiBjcmVhdGluZyAkYWNfZGlyL01ha2VmaWxlIiB8fCBlY2hvICJj
cmVhdGluZyAkYWNfZGlyL01ha2VmaWxlIgogICAgICAgICAgc2VkIC1lICIvXlBPVEZJTEVTID0v
ciAkYWNfZGlyL1BPVEZJTEVTIiAtZSAiL14jIE1ha2V2YXJzL3IgJGFjX2dpdmVuX3NyY2Rpci8k
YWNfZGlyL01ha2V2YXJzIiAtZSAic3xAUE9GSUxFU0B8JFBPRklMRVN8ZyIgLWUgInN8QFVQREFU
RVBPRklMRVNAfCRVUERBVEVQT0ZJTEVTfGciIC1lICJzfEBEVU1NWVBPRklMRVNAfCREVU1NWVBP
RklMRVN8ZyIgLWUgInN8QEdNT0ZJTEVTQHwkR01PRklMRVN8ZyIgLWUgInN8QENBVEFMT0dTQHwk
Q0FUQUxPR1N8ZyIgLWUgInN8QFBPTUFLRUZJTEVERVBTQHwkUE9NQUtFRklMRURFUFN8ZyIgIiRh
Y19kaXIvTWFrZWZpbGUuaW4iID4gIiRhY19kaXIvTWFrZWZpbGUiCiAgICAgICAgICBmb3IgZiBp
biAiJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyIi9SdWxlcy0qOyBkbwogICAgICAgICAgICBpZiB0
ZXN0IC1mICIkZiI7IHRoZW4KICAgICAgICAgICAgICBjYXNlICIkZiIgaW4KICAgICAgICAgICAg
ICAgICoub3JpZyB8ICouYmFrIHwgKn4pIDs7CiAgICAgICAgICAgICAgICAqKSBjYXQgIiRmIiA+
PiAiJGFjX2Rpci9NYWtlZmlsZSIgOzsKICAgICAgICAgICAgICBlc2FjCiAgICAgICAgICAgIGZp
CiAgICAgICAgICBkb25lCiAgICAgICAgZmkKICAgICAgICA7OwogICAgICBlc2FjCiAgICBkb25l
XV0sCiAgIFsjIENhcHR1cmUgdGhlIHZhbHVlIG9mIG9ic29sZXRlIEFMTF9MSU5HVUFTIGJlY2F1
c2Ugd2UgbmVlZCBpdCB0byBjb21wdXRlCiAgICAjIFBPRklMRVMsIFVQREFURVBPRklMRVMsIERV
TU1ZUE9GSUxFUywgR01PRklMRVMsIENBVEFMT0dTLiBCdXQgaGlkZSBpdAogICAgIyBmcm9tIGF1
dG9tYWtlIDwgMS41LgogICAgZXZhbCAnT0JTT0xFVEVfQUxMX0xJTkdVQVMnJz0iJEFMTF9MSU5H
VUFTIicKICAgICMgQ2FwdHVyZSB0aGUgdmFsdWUgb2YgTElOR1VBUyBiZWNhdXNlIHdlIG5lZWQg
aXQgdG8gY29tcHV0ZSBDQVRBTE9HUy4KICAgIExJTkdVQVM9IiR7TElOR1VBUy0lVU5TRVQlfSIK
ICAgXSkKXSkKCmRubCBQb3N0cHJvY2Vzc2VzIGEgTWFrZWZpbGUgaW4gYSBkaXJlY3RvcnkgY29u
dGFpbmluZyBQTyBmaWxlcy4KQUNfREVGVU4oW0FNX1BPU1RQUk9DRVNTX1BPX01BS0VGSUxFXSwK
WwogICMgV2hlbiB0aGlzIGNvZGUgaXMgcnVuLCBpbiBjb25maWcuc3RhdHVzLCB0d28gdmFyaWFi
bGVzIGhhdmUgYWxyZWFkeSBiZWVuCiAgIyBzZXQ6CiAgIyAtIE9CU09MRVRFX0FMTF9MSU5HVUFT
IGlzIHRoZSB2YWx1ZSBvZiBMSU5HVUFTIHNldCBpbiBjb25maWd1cmUuaW4sCiAgIyAtIExJTkdV
QVMgaXMgdGhlIHZhbHVlIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBMSU5HVUFTIGF0IGNv
bmZpZ3VyZQogICMgICB0aW1lLgoKY2hhbmdlcXVvdGUoLClkbmwKICAjIEFkanVzdCBhIHJlbGF0
aXZlIHNyY2Rpci4KICBhY19kaXI9YGVjaG8gIiRhY19maWxlInxzZWQgJ3MlL1teL11bXi9dKiQl
JSdgCiAgYWNfZGlyX3N1ZmZpeD0iL2BlY2hvICIkYWNfZGlyInxzZWQgJ3MlXlwuLyUlJ2AiCiAg
YWNfZG90cz1gZWNobyAiJGFjX2Rpcl9zdWZmaXgifHNlZCAncyUvW14vXSolLi4vJWcnYAogICMg
SW4gYXV0b2NvbmYtMi4xMyBpdCBpcyBjYWxsZWQgJGFjX2dpdmVuX3NyY2Rpci4KICAjIEluIGF1
dG9jb25mLTIuNTAgaXQgaXMgY2FsbGVkICRzcmNkaXIuCiAgdGVzdCAtbiAiJGFjX2dpdmVuX3Ny
Y2RpciIgfHwgYWNfZ2l2ZW5fc3JjZGlyPSIkc3JjZGlyIgogIGNhc2UgIiRhY19naXZlbl9zcmNk
aXIiIGluCiAgICAuKSAgdG9wX3NyY2Rpcj1gZWNobyAkYWNfZG90c3xzZWQgJ3MlLyQlJSdgIDs7
CiAgICAvKikgdG9wX3NyY2Rpcj0iJGFjX2dpdmVuX3NyY2RpciIgOzsKICAgICopICB0b3Bfc3Jj
ZGlyPSIkYWNfZG90cyRhY19naXZlbl9zcmNkaXIiIDs7CiAgZXNhYwoKICAjIEZpbmQgYSB3YXkg
dG8gZWNobyBzdHJpbmdzIHdpdGhvdXQgaW50ZXJwcmV0aW5nIGJhY2tzbGFzaC4KICBpZiB0ZXN0
ICJYYChlY2hvICdcdCcpIDI+L2Rldi9udWxsYCIgPSAnWFx0JzsgdGhlbgogICAgZ3RfZWNobz0n
ZWNobycKICBlbHNlCiAgICBpZiB0ZXN0ICJYYChwcmludGYgJyVzXG4nICdcdCcpIDI+L2Rldi9u
dWxsYCIgPSAnWFx0JzsgdGhlbgogICAgICBndF9lY2hvPSdwcmludGYgJXNcbicKICAgIGVsc2UK
ICAgICAgZWNob19mdW5jICgpIHsKICAgICAgICBjYXQgPDxFT1QKJCoKRU9UCiAgICAgIH0KICAg
ICAgZ3RfZWNobz0nZWNob19mdW5jJwogICAgZmkKICBmaQoKICAjIEEgc2VkIHNjcmlwdCB0aGF0
IGV4dHJhY3RzIHRoZSB2YWx1ZSBvZiBWQVJJQUJMRSBmcm9tIGEgTWFrZWZpbGUuCiAgc2VkX3hf
dmFyaWFibGU9JwojIFRlc3QgaWYgdGhlIGhvbGQgc3BhY2UgaXMgZW1wdHkuCngKcy9QL1AvCngK
dGEKIyBZZXMgaXQgd2FzIGVtcHR5LiBMb29rIGlmIHdlIGhhdmUgdGhlIGV4cGVjdGVkIHZhcmlh
YmxlIGRlZmluaXRpb24uCi9eWwkgXSpWQVJJQUJMRVsJIF0qPS97CiAgIyBTZWVuIHRoZSBmaXJz
dCBsaW5lIG9mIHRoZSB2YXJpYWJsZSBkZWZpbml0aW9uLgogIHMvXlsJIF0qVkFSSUFCTEVbCSBd
Kj0vLwogIGJhCn0KYmQKOmEKIyBIZXJlIHdlIGFyZSBwcm9jZXNzaW5nIGEgbGluZSBmcm9tIHRo
ZSB2YXJpYWJsZSBkZWZpbml0aW9uLgojIFJlbW92ZSBjb21tZW50LCBtb3JlIHByZWNpc2VseSBy
ZXBsYWNlIGl0IHdpdGggYSBzcGFjZS4Kcy8jLiokLyAvCiMgU2VlIGlmIHRoZSBsaW5lIGVuZHMg
aW4gYSBiYWNrc2xhc2guCnRiCjpiCnMvXFwkLy8KIyBQcmludCB0aGUgbGluZSwgd2l0aG91dCB0
aGUgdHJhaWxpbmcgYmFja3NsYXNoLgpwCnRjCiMgVGhlcmUgd2FzIG5vIHRyYWlsaW5nIGJhY2tz
bGFzaC4gVGhlIGVuZCBvZiB0aGUgdmFyaWFibGUgZGVmaW5pdGlvbiBpcwojIHJlYWNoZWQuIENs
ZWFyIHRoZSBob2xkIHNwYWNlLgpzL14uKiQvLwp4CmJkCjpjCiMgQSB0cmFpbGluZyBiYWNrc2xh
c2ggbWVhbnMgdGhhdCB0aGUgdmFyaWFibGUgZGVmaW5pdGlvbiBjb250aW51ZXMgaW4gdGhlCiMg
bmV4dCBsaW5lLiBQdXQgYSBub25lbXB0eSBzdHJpbmcgaW50byB0aGUgaG9sZCBzcGFjZSB0byBp
bmRpY2F0ZSB0aGlzLgpzL14uKiQvUC8KeAo6ZAonCmNoYW5nZXF1b3RlKFssXSlkbmwKCiAgIyBT
ZXQgUE9URklMRVMgdG8gdGhlIHZhbHVlIG9mIHRoZSBNYWtlZmlsZSB2YXJpYWJsZSBQT1RGSUxF
Uy4KICBzZWRfeF9QT1RGSUxFUz1gJGd0X2VjaG8gIiRzZWRfeF92YXJpYWJsZSIgfCBzZWQgLWUg
Jy9eICojL2QnIC1lICdzL1ZBUklBQkxFL1BPVEZJTEVTL2cnYAogIFBPVEZJTEVTPWBzZWQgLW4g
LWUgIiRzZWRfeF9QT1RGSUxFUyIgPCAiJGFjX2ZpbGUiYAogICMgQ29tcHV0ZSBQT1RGSUxFU19E
RVBTIGFzCiAgIyAgICQoZm9yZWFjaCBmaWxlLCAkKFBPVEZJTEVTKSwgJCh0b3Bfc3JjZGlyKS8k
KGZpbGUpKQogIFBPVEZJTEVTX0RFUFM9CiAgZm9yIGZpbGUgaW4gJFBPVEZJTEVTOyBkbwogICAg
UE9URklMRVNfREVQUz0iJFBPVEZJTEVTX0RFUFMgIickKHRvcF9zcmNkaXIpLyciJGZpbGUiCiAg
ZG9uZQogIFBPTUFLRUZJTEVERVBTPSIiCgogIGlmIHRlc3QgLW4gIiRPQlNPTEVURV9BTExfTElO
R1VBUyI7IHRoZW4KICAgIHRlc3QgLW4gIiRhc19tZSIgJiYgZWNobyAiJGFzX21lOiBzZXR0aW5n
IEFMTF9MSU5HVUFTIGluIGNvbmZpZ3VyZS5pbiBpcyBvYnNvbGV0ZSIgfHwgZWNobyAic2V0dGlu
ZyBBTExfTElOR1VBUyBpbiBjb25maWd1cmUuaW4gaXMgb2Jzb2xldGUiCiAgZmkKICBpZiB0ZXN0
IC1mICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTElOR1VBUyI7IHRoZW4KICAgICMgVGhlIExJ
TkdVQVMgZmlsZSBjb250YWlucyB0aGUgc2V0IG9mIGF2YWlsYWJsZSBsYW5ndWFnZXMuCiAgICBB
TExfTElOR1VBU189YHNlZCAtZSAiL14jL2QiIC1lICJzLyMuKi8vIiAiJGFjX2dpdmVuX3NyY2Rp
ci8kYWNfZGlyL0xJTkdVQVMiYAogICAgUE9NQUtFRklMRURFUFM9IiRQT01BS0VGSUxFREVQUyBM
SU5HVUFTIgogIGVsc2UKICAgICMgU2V0IEFMTF9MSU5HVUFTIHRvIHRoZSB2YWx1ZSBvZiB0aGUg
TWFrZWZpbGUgdmFyaWFibGUgTElOR1VBUy4KICAgIHNlZF94X0xJTkdVQVM9YCRndF9lY2hvICIk
c2VkX3hfdmFyaWFibGUiIHwgc2VkIC1lICcvXiAqIy9kJyAtZSAncy9WQVJJQUJMRS9MSU5HVUFT
L2cnYAogICAgQUxMX0xJTkdVQVNfPWBzZWQgLW4gLWUgIiRzZWRfeF9MSU5HVUFTIiA8ICIkYWNf
ZmlsZSJgCiAgZmkKICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9t
YWtlIDwgMS41LgogIGV2YWwgJ0FMTF9MSU5HVUFTJyc9JEFMTF9MSU5HVUFTXycKICAjIENvbXB1
dGUgUE9GSUxFUwogICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQo
c3JjZGlyKS8kKGxhbmcpLnBvKQogICMgQ29tcHV0ZSBVUERBVEVQT0ZJTEVTCiAgIyBhcyAgICAg
ICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5HVUFTKSwgJChsYW5nKS5wby11cGRhdGUpCiAgIyBD
b21wdXRlIERVTU1ZUE9GSUxFUwogICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElO
R1VBUyksICQobGFuZykubm9wKQogICMgQ29tcHV0ZSBHTU9GSUxFUwogICMgYXMgICAgICAkKGZv
cmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLmdtbykKICAjIENv
bXB1dGUgUFJPUEVSVElFU0ZJTEVTCiAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9M
SU5HVUFTKSwgJCh0b3Bfc3JjZGlyKS8kKERPTUFJTilfJChsYW5nKS5wcm9wZXJ0aWVzKQogICMg
Q29tcHV0ZSBDTEFTU0ZJTEVTCiAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5H
VUFTKSwgJCh0b3Bfc3JjZGlyKS8kKERPTUFJTilfJChsYW5nKS5jbGFzcykKICAjIENvbXB1dGUg
UU1GSUxFUwogICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3Jj
ZGlyKS8kKGxhbmcpLnFtKQogICMgQ29tcHV0ZSBNU0dGSUxFUwogICMgYXMgICAgICAkKGZvcmVh
Y2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGZyb2IgJChsYW5nKSkubXNnKQog
ICMgQ29tcHV0ZSBSRVNPVVJDRVNETExGSUxFUwogICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywg
JChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGZyb2IgJChsYW5nKSkvJChET01BSU4pLnJlc291
cmNlcy5kbGwpCiAgY2FzZSAiJGFjX2dpdmVuX3NyY2RpciIgaW4KICAgIC4pIHNyY2RpcnByZT0g
OzsKICAgICopIHNyY2RpcnByZT0nJChzcmNkaXIpLycgOzsKICBlc2FjCiAgUE9GSUxFUz0KICBV
UERBVEVQT0ZJTEVTPQogIERVTU1ZUE9GSUxFUz0KICBHTU9GSUxFUz0KICBQUk9QRVJUSUVTRklM
RVM9CiAgQ0xBU1NGSUxFUz0KICBRTUZJTEVTPQogIE1TR0ZJTEVTPQogIFJFU09VUkNFU0RMTEZJ
TEVTPQogIGZvciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KICAgIFBPRklMRVM9IiRQT0ZJTEVT
ICRzcmNkaXJwcmUkbGFuZy5wbyIKICAgIFVQREFURVBPRklMRVM9IiRVUERBVEVQT0ZJTEVTICRs
YW5nLnBvLXVwZGF0ZSIKICAgIERVTU1ZUE9GSUxFUz0iJERVTU1ZUE9GSUxFUyAkbGFuZy5ub3Ai
CiAgICBHTU9GSUxFUz0iJEdNT0ZJTEVTICRzcmNkaXJwcmUkbGFuZy5nbW8iCiAgICBQUk9QRVJU
SUVTRklMRVM9IiRQUk9QRVJUSUVTRklMRVMgXCQodG9wX3NyY2RpcikvXCQoRE9NQUlOKV8kbGFu
Zy5wcm9wZXJ0aWVzIgogICAgQ0xBU1NGSUxFUz0iJENMQVNTRklMRVMgXCQodG9wX3NyY2Rpcikv
XCQoRE9NQUlOKV8kbGFuZy5jbGFzcyIKICAgIFFNRklMRVM9IiRRTUZJTEVTICRzcmNkaXJwcmUk
bGFuZy5xbSIKICAgIGZyb2JiZWRsYW5nPWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL1wuLiokLy8n
IC1lICd5L0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaL2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3
eHl6LydgCiAgICBNU0dGSUxFUz0iJE1TR0ZJTEVTICRzcmNkaXJwcmUkZnJvYmJlZGxhbmcubXNn
IgogICAgZnJvYmJlZGxhbmc9YGVjaG8gJGxhbmcgfCBzZWQgLWUgJ3MvXy8tL2cnIC1lICdzL15z
ci1DUy9zci1TUC8nIC1lICdzL0BsYXRpbiQvLUxhdG4vJyAtZSAncy9AY3lyaWxsaWMkLy1DeXJs
LycgLWUgJ3MvXnNyLVNQJC9zci1TUC1MYXRuLycgLWUgJ3MvXnV6LVVaJC91ei1VWi1MYXRuLydg
CiAgICBSRVNPVVJDRVNETExGSUxFUz0iJFJFU09VUkNFU0RMTEZJTEVTICRzcmNkaXJwcmUkZnJv
YmJlZGxhbmcvXCQoRE9NQUlOKS5yZXNvdXJjZXMuZGxsIgogIGRvbmUKICAjIENBVEFMT0dTIGRl
cGVuZHMgb24gYm90aCAkYWNfZGlyIGFuZCB0aGUgdXNlcidzIExJTkdVQVMKICAjIGVudmlyb25t
ZW50IHZhcmlhYmxlLgogIElOU1RfTElOR1VBUz0KICBpZiB0ZXN0IC1uICIkQUxMX0xJTkdVQVMi
OyB0aGVuCiAgICBmb3IgcHJlc2VudGxhbmcgaW4gJEFMTF9MSU5HVUFTOyBkbwogICAgICB1c2Vp
dD1ubwogICAgICBpZiB0ZXN0ICIlVU5TRVQlIiAhPSAiJExJTkdVQVMiOyB0aGVuCiAgICAgICAg
ZGVzaXJlZGxhbmd1YWdlcz0iJExJTkdVQVMiCiAgICAgIGVsc2UKICAgICAgICBkZXNpcmVkbGFu
Z3VhZ2VzPSIkQUxMX0xJTkdVQVMiCiAgICAgIGZpCiAgICAgIGZvciBkZXNpcmVkbGFuZyBpbiAk
ZGVzaXJlZGxhbmd1YWdlczsgZG8KICAgICAgICAjIFVzZSB0aGUgcHJlc2VudGxhbmcgY2F0YWxv
ZyBpZiBkZXNpcmVkbGFuZyBpcwogICAgICAgICMgICBhLiBlcXVhbCB0byBwcmVzZW50bGFuZywg
b3IKICAgICAgICAjICAgYi4gYSB2YXJpYW50IG9mIHByZXNlbnRsYW5nIChiZWNhdXNlIGluIHRo
aXMgY2FzZSwKICAgICAgICAjICAgICAgcHJlc2VudGxhbmcgY2FuIGJlIHVzZWQgYXMgYSBmYWxs
YmFjayBmb3IgbWVzc2FnZXMKICAgICAgICAjICAgICAgd2hpY2ggYXJlIG5vdCB0cmFuc2xhdGVk
IGluIHRoZSBkZXNpcmVkbGFuZyBjYXRhbG9nKS4KICAgICAgICBjYXNlICIkZGVzaXJlZGxhbmci
IGluCiAgICAgICAgICAiJHByZXNlbnRsYW5nIiopIHVzZWl0PXllczs7CiAgICAgICAgZXNhYwog
ICAgICBkb25lCiAgICAgIGlmIHRlc3QgJHVzZWl0ID0geWVzOyB0aGVuCiAgICAgICAgSU5TVF9M
SU5HVUFTPSIkSU5TVF9MSU5HVUFTICRwcmVzZW50bGFuZyIKICAgICAgZmkKICAgIGRvbmUKICBm
aQogIENBVEFMT0dTPQogIEpBVkFDQVRBTE9HUz0KICBRVENBVEFMT0dTPQogIFRDTENBVEFMT0dT
PQogIENTSEFSUENBVEFMT0dTPQogIGlmIHRlc3QgLW4gIiRJTlNUX0xJTkdVQVMiOyB0aGVuCiAg
ICBmb3IgbGFuZyBpbiAkSU5TVF9MSU5HVUFTOyBkbwogICAgICBDQVRBTE9HUz0iJENBVEFMT0dT
ICRsYW5nLmdtbyIKICAgICAgSkFWQUNBVEFMT0dTPSIkSkFWQUNBVEFMT0dTIFwkKERPTUFJTilf
JGxhbmcucHJvcGVydGllcyIKICAgICAgUVRDQVRBTE9HUz0iJFFUQ0FUQUxPR1MgJGxhbmcucW0i
CiAgICAgIGZyb2JiZWRsYW5nPWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL1wuLiokLy8nIC1lICd5
L0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaL2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Lydg
CiAgICAgIFRDTENBVEFMT0dTPSIkVENMQ0FUQUxPR1MgJGZyb2JiZWRsYW5nLm1zZyIKICAgICAg
ZnJvYmJlZGxhbmc9YGVjaG8gJGxhbmcgfCBzZWQgLWUgJ3MvXy8tL2cnIC1lICdzL15zci1DUy9z
ci1TUC8nIC1lICdzL0BsYXRpbiQvLUxhdG4vJyAtZSAncy9AY3lyaWxsaWMkLy1DeXJsLycgLWUg
J3MvXnNyLVNQJC9zci1TUC1MYXRuLycgLWUgJ3MvXnV6LVVaJC91ei1VWi1MYXRuLydgCiAgICAg
IENTSEFSUENBVEFMT0dTPSIkQ1NIQVJQQ0FUQUxPR1MgJGZyb2JiZWRsYW5nL1wkKERPTUFJTiku
cmVzb3VyY2VzLmRsbCIKICAgIGRvbmUKICBmaQoKICBzZWQgLWUgInN8QFBPVEZJTEVTX0RFUFNA
fCRQT1RGSUxFU19ERVBTfGciIC1lICJzfEBQT0ZJTEVTQHwkUE9GSUxFU3xnIiAtZSAic3xAVVBE
QVRFUE9GSUxFU0B8JFVQREFURVBPRklMRVN8ZyIgLWUgInN8QERVTU1ZUE9GSUxFU0B8JERVTU1Z
UE9GSUxFU3xnIiAtZSAic3xAR01PRklMRVNAfCRHTU9GSUxFU3xnIiAtZSAic3xAUFJPUEVSVElF
U0ZJTEVTQHwkUFJPUEVSVElFU0ZJTEVTfGciIC1lICJzfEBDTEFTU0ZJTEVTQHwkQ0xBU1NGSUxF
U3xnIiAtZSAic3xAUU1GSUxFU0B8JFFNRklMRVN8ZyIgLWUgInN8QE1TR0ZJTEVTQHwkTVNHRklM
RVN8ZyIgLWUgInN8QFJFU09VUkNFU0RMTEZJTEVTQHwkUkVTT1VSQ0VTRExMRklMRVN8ZyIgLWUg
InN8QENBVEFMT0dTQHwkQ0FUQUxPR1N8ZyIgLWUgInN8QEpBVkFDQVRBTE9HU0B8JEpBVkFDQVRB
TE9HU3xnIiAtZSAic3xAUVRDQVRBTE9HU0B8JFFUQ0FUQUxPR1N8ZyIgLWUgInN8QFRDTENBVEFM
T0dTQHwkVENMQ0FUQUxPR1N8ZyIgLWUgInN8QENTSEFSUENBVEFMT0dTQHwkQ1NIQVJQQ0FUQUxP
R1N8ZyIgLWUgJ3MsXiNkaXN0ZGlyOixkaXN0ZGlyOiwnIDwgIiRhY19maWxlIiA+ICIkYWNfZmls
ZS50bXAiCiAgaWYgZ3JlcCAtbCAnQFRDTENBVEFMT0dTQCcgIiRhY19maWxlIiA+IC9kZXYvbnVs
bDsgdGhlbgogICAgIyBBZGQgZGVwZW5kZW5jaWVzIHRoYXQgY2Fubm90IGJlIGZvcm11bGF0ZWQg
YXMgYSBzaW1wbGUgc3VmZml4IHJ1bGUuCiAgICBmb3IgbGFuZyBpbiAkQUxMX0xJTkdVQVM7IGRv
CiAgICAgIGZyb2JiZWRsYW5nPWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL1wuLiokLy8nIC1lICd5
L0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaL2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Lydg
CiAgICAgIGNhdCA+PiAiJGFjX2ZpbGUudG1wIiA8PEVPRgokZnJvYmJlZGxhbmcubXNnOiAkbGFu
Zy5wbwoJQGVjaG8gIlwkKE1TR0ZNVCkgLWMgLS10Y2wgLWQgXCQoc3JjZGlyKSAtbCAkbGFuZyAk
c3JjZGlycHJlJGxhbmcucG8iOyBcCglcJChNU0dGTVQpIC1jIC0tdGNsIC1kICJcJChzcmNkaXIp
IiAtbCAkbGFuZyAkc3JjZGlycHJlJGxhbmcucG8gfHwgeyBybSAtZiAiXCQoc3JjZGlyKS8kZnJv
YmJlZGxhbmcubXNnIjsgZXhpdCAxOyB9CkVPRgogICAgZG9uZQogIGZpCiAgaWYgZ3JlcCAtbCAn
QENTSEFSUENBVEFMT0dTQCcgIiRhY19maWxlIiA+IC9kZXYvbnVsbDsgdGhlbgogICAgIyBBZGQg
ZGVwZW5kZW5jaWVzIHRoYXQgY2Fubm90IGJlIGZvcm11bGF0ZWQgYXMgYSBzaW1wbGUgc3VmZml4
IHJ1bGUuCiAgICBmb3IgbGFuZyBpbiAkQUxMX0xJTkdVQVM7IGRvCiAgICAgIGZyb2JiZWRsYW5n
PWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL18vLS9nJyAtZSAncy9ec3ItQ1Mvc3ItU1AvJyAtZSAn
cy9AbGF0aW4kLy1MYXRuLycgLWUgJ3MvQGN5cmlsbGljJC8tQ3lybC8nIC1lICdzL15zci1TUCQv
c3ItU1AtTGF0bi8nIC1lICdzL151ei1VWiQvdXotVVotTGF0bi8nYAogICAgICBjYXQgPj4gIiRh
Y19maWxlLnRtcCIgPDxFT0YKJGZyb2JiZWRsYW5nL1wkKERPTUFJTikucmVzb3VyY2VzLmRsbDog
JGxhbmcucG8KCUBlY2hvICJcJChNU0dGTVQpIC1jIC0tY3NoYXJwIC1kIFwkKHNyY2RpcikgLWwg
JGxhbmcgJHNyY2RpcnByZSRsYW5nLnBvIC1yIFwkKERPTUFJTikiOyBcCglcJChNU0dGTVQpIC1j
IC0tY3NoYXJwIC1kICJcJChzcmNkaXIpIiAtbCAkbGFuZyAkc3JjZGlycHJlJGxhbmcucG8gLXIg
IlwkKERPTUFJTikiIHx8IHsgcm0gLWYgIlwkKHNyY2RpcikvJGZyb2JiZWRsYW5nLm1zZyI7IGV4
aXQgMTsgfQpFT0YKICAgIGRvbmUKICBmaQogIGlmIHRlc3QgLW4gIiRQT01BS0VGSUxFREVQUyI7
IHRoZW4KICAgIGNhdCA+PiAiJGFjX2ZpbGUudG1wIiA8PEVPRgpNYWtlZmlsZTogJFBPTUFLRUZJ
TEVERVBTCkVPRgogIGZpCiAgbXYgIiRhY19maWxlLnRtcCIgIiRhY19maWxlIgpdKQoKIyBwcmlu
dGYtcG9zaXgubTQgc2VyaWFsIDIgKGdldHRleHQtMC4xMy4xKQpkbmwgQ29weXJpZ2h0IChDKSAy
MDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxlIGlzIGZyZWUg
c29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVzIHVubGltaXRl
ZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQu
CgpkbmwgRnJvbSBCcnVubyBIYWlibGUuCmRubCBUZXN0IHdoZXRoZXIgdGhlIHByaW50ZigpIGZ1
bmN0aW9uIHN1cHBvcnRzIFBPU0lYL1hTSSBmb3JtYXQgc3RyaW5ncyB3aXRoCmRubCBwb3NpdGlv
bnMuCgpBQ19ERUZVTihbZ3RfUFJJTlRGX1BPU0lYXSwKWwogIEFDX1JFUVVJUkUoW0FDX1BST0df
Q0NdKQogIEFDX0NBQ0hFX0NIRUNLKFt3aGV0aGVyIHByaW50ZigpIHN1cHBvcnRzIFBPU0lYL1hT
SSBmb3JtYXQgc3RyaW5nc10sCiAgICBndF9jdl9mdW5jX3ByaW50Zl9wb3NpeCwKICAgIFsKICAg
ICAgQUNfVFJZX1JVTihbCiNpbmNsdWRlIDxzdGRpby5oPgojaW5jbHVkZSA8c3RyaW5nLmg+Ci8q
IFRoZSBzdHJpbmcgIiUyJGQgJTEkZCIsIHdpdGggZG9sbGFyIGNoYXJhY3RlcnMgcHJvdGVjdGVk
IGZyb20gdGhlIHNoZWxsJ3MKICAgZG9sbGFyIGV4cGFuc2lvbiAocG9zc2libHkgYW4gYXV0b2Nv
bmYgYnVnKS4gICovCnN0YXRpYyBjaGFyIGZvcm1hdFtdID0geyAnJScsICcyJywgJyQnLCAnZCcs
ICcgJywgJyUnLCAnMScsICckJywgJ2QnLCAnXDAnIH07CnN0YXRpYyBjaGFyIGJ1ZlsxMDBdOwpp
bnQgbWFpbiAoKQp7CiAgc3ByaW50ZiAoYnVmLCBmb3JtYXQsIDMzLCA1NSk7CiAgcmV0dXJuIChz
dHJjbXAgKGJ1ZiwgIjU1IDMzIikgIT0gMCk7Cn1dLCBndF9jdl9mdW5jX3ByaW50Zl9wb3NpeD15
ZXMsIGd0X2N2X2Z1bmNfcHJpbnRmX3Bvc2l4PW5vLAogICAgICBbCiAgICAgICAgQUNfRUdSRVBf
Q1BQKG5vdHBvc2l4LCBbCiNpZiBkZWZpbmVkIF9fTmV0QlNEX18gfHwgZGVmaW5lZCBfTVNDX1ZF
UiB8fCBkZWZpbmVkIF9fTUlOR1czMl9fIHx8IGRlZmluZWQgX19DWUdXSU5fXwogIG5vdHBvc2l4
CiNlbmRpZgogICAgICAgIF0sIGd0X2N2X2Z1bmNfcHJpbnRmX3Bvc2l4PSJndWVzc2luZyBubyIs
CiAgICAgICAgICAgZ3RfY3ZfZnVuY19wcmludGZfcG9zaXg9Imd1ZXNzaW5nIHllcyIpCiAgICAg
IF0pCiAgICBdKQogIGNhc2UgJGd0X2N2X2Z1bmNfcHJpbnRmX3Bvc2l4IGluCiAgICAqeWVzKQog
ICAgICBBQ19ERUZJTkUoSEFWRV9QT1NJWF9QUklOVEYsIDEsCiAgICAgICAgW0RlZmluZSBpZiB5
b3VyIHByaW50ZigpIGZ1bmN0aW9uIHN1cHBvcnRzIGZvcm1hdCBzdHJpbmdzIHdpdGggcG9zaXRp
b25zLl0pCiAgICAgIDs7CiAgZXNhYwpdKQoKIyBwcm9ndGVzdC5tNCBzZXJpYWwgNCAoZ2V0dGV4
dC0wLjE0LjIpCmRubCBDb3B5cmlnaHQgKEMpIDE5OTYtMjAwMywgMjAwNSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBj
b3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
bnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgpkbmwKZG5sIFRoaXMgZmls
ZSBjYW4gY2FuIGJlIHVzZWQgaW4gcHJvamVjdHMgd2hpY2ggYXJlIG5vdCBhdmFpbGFibGUgdW5k
ZXIKZG5sIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBvciB0aGUgR05VIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMKZG5sIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlk
ZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKZG5sIGZ1bmN0aW9uYWxpdHkuCmRubCBQbGVh
c2Ugbm90ZSB0aGF0IHRoZSBhY3R1YWwgY29kZSBvZiB0aGUgR05VIGdldHRleHQgbGlicmFyeSBp
cyBjb3ZlcmVkCmRubCBieSB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwg
YW5kIHRoZSByZXN0IG9mIHRoZSBHTlUKZG5sIGdldHRleHQgcGFja2FnZSBwYWNrYWdlIGlzIGNv
dmVyZWQgYnkgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgpkbmwgVGhleSBhcmUgKm5v
dCogaW4gdGhlIHB1YmxpYyBkb21haW4uCgpkbmwgQXV0aG9yczoKZG5sICAgVWxyaWNoIERyZXBw
ZXIgPGRyZXBwZXJAY3lnbnVzLmNvbT4sIDE5OTYuCgpBQ19QUkVSRVEoMi41MCkKCiMgU2VhcmNo
IHBhdGggZm9yIGEgcHJvZ3JhbSB3aGljaCBwYXNzZXMgdGhlIGdpdmVuIHRlc3QuCgpkbmwgQU1f
UEFUSF9QUk9HX1dJVEhfVEVTVChWQVJJQUJMRSwgUFJPRy1UTy1DSEVDSy1GT1IsCmRubCAgIFRF
U1QtUEVSRk9STUVELU9OLUZPVU5EX1BST0dSQU0gWywgVkFMVUUtSUYtTk9ULUZPVU5EIFssIFBB
VEhdXSkKQUNfREVGVU4oW0FNX1BBVEhfUFJPR19XSVRIX1RFU1RdLApbCiMgUHJlcGFyZSBQQVRI
X1NFUEFSQVRPUi4KIyBUaGUgdXNlciBpcyBhbHdheXMgcmlnaHQuCmlmIHRlc3QgIiR7UEFUSF9T
RVBBUkFUT1Irc2V0fSIgIT0gc2V0OyB0aGVuCiAgZWNobyAiIyEgL2Jpbi9zaCIgPmNvbmYkJC5z
aAogIGVjaG8gICJleGl0IDAiICAgPj5jb25mJCQuc2gKICBjaG1vZCAreCBjb25mJCQuc2gKICBp
ZiAoUEFUSD0iL25vbmV4aXN0ZW50Oy4iOyBjb25mJCQuc2gpID4vZGV2L251bGwgMj4mMTsgdGhl
bgogICAgUEFUSF9TRVBBUkFUT1I9JzsnCiAgZWxzZQogICAgUEFUSF9TRVBBUkFUT1I9OgogIGZp
CiAgcm0gLWYgY29uZiQkLnNoCmZpCgojIEZpbmQgb3V0IGhvdyB0byB0ZXN0IGZvciBleGVjdXRh
YmxlIGZpbGVzLiBEb24ndCB1c2UgYSB6ZXJvLWJ5dGUgZmlsZSwKIyBhcyBzeXN0ZW1zIG1heSB1
c2UgbWV0aG9kcyBvdGhlciB0aGFuIG1vZGUgYml0cyB0byBkZXRlcm1pbmUgZXhlY3V0YWJpbGl0
eS4KY2F0ID5jb25mJCQuZmlsZSA8PF9BU0VPRgojISAvYmluL3NoCmV4aXQgMApfQVNFT0YKY2ht
b2QgK3ggY29uZiQkLmZpbGUKaWYgdGVzdCAteCBjb25mJCQuZmlsZSA+L2Rldi9udWxsIDI+JjE7
IHRoZW4KICBhY19leGVjdXRhYmxlX3A9InRlc3QgLXgiCmVsc2UKICBhY19leGVjdXRhYmxlX3A9
InRlc3QgLWYiCmZpCnJtIC1mIGNvbmYkJC5maWxlCgojIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQg
b2YgIiQyIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1bW15
ICQyOyBhY193b3JkPVskXTIKQUNfTVNHX0NIRUNLSU5HKFtmb3IgJGFjX3dvcmRdKQpBQ19DQUNI
RV9WQUwoYWNfY3ZfcGF0aF8kMSwKW2Nhc2UgIlskXSQxIiBpbgogIFtbXFwvXV0qIHwgPzpbW1xc
L11dKikKICAgIGFjX2N2X3BhdGhfJDE9IlskXSQxIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0
aGUgdGVzdCB3aXRoIGEgcGF0aC4KICAgIDs7CiAgKikKICAgIGFjX3NhdmVfSUZTPSIkSUZTIjsg
SUZTPSRQQVRIX1NFUEFSQVRPUgogICAgZm9yIGFjX2RpciBpbiBpZmVsc2UoWyQ1XSwgLCAkUEFU
SCwgWyQ1XSk7IGRvCiAgICAgIElGUz0iJGFjX3NhdmVfSUZTIgogICAgICB0ZXN0IC16ICIkYWNf
ZGlyIiAmJiBhY19kaXI9LgogICAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFi
bGVfZXh0ZW5zaW9uczsgZG8KICAgICAgICBpZiAkYWNfZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRh
Y193b3JkJGFjX2V4ZWNfZXh0IjsgdGhlbgogICAgICAgICAgZWNobyAiJGFzX21lOiB0cnlpbmcg
JGFjX2Rpci8kYWNfd29yZC4uLiIgPiZBU19NRVNTQUdFX0xPR19GRAogICAgICAgICAgaWYgWyQz
XTsgdGhlbgogICAgICAgICAgICBhY19jdl9wYXRoXyQxPSIkYWNfZGlyLyRhY193b3JkJGFjX2V4
ZWNfZXh0IgogICAgICAgICAgICBicmVhayAyCiAgICAgICAgICBmaQogICAgICAgIGZpCiAgICAg
IGRvbmUKICAgIGRvbmUKICAgIElGUz0iJGFjX3NhdmVfSUZTIgpkbmwgSWYgbm8gNHRoIGFyZyBp
cyBnaXZlbiwgbGVhdmUgdGhlIGNhY2hlIHZhcmlhYmxlIHVuc2V0LApkbmwgc28gQUNfUEFUSF9Q
Uk9HUyB3aWxsIGtlZXAgbG9va2luZy4KaWZlbHNlKFskNF0sICwgLCBbICB0ZXN0IC16ICJbJF1h
Y19jdl9wYXRoXyQxIiAmJiBhY19jdl9wYXRoXyQxPSIkNCIKXSlkbmwKICAgIDs7CmVzYWNdKWRu
bAokMT0iJGFjX2N2X3BhdGhfJDEiCmlmIHRlc3QgaWZlbHNlKFskNF0sICwgWy1uICJbJF0kMSJd
LCBbIlskXSQxIiAhPSAiJDQiXSk7IHRoZW4KICBBQ19NU0dfUkVTVUxUKFskXSQxKQplbHNlCiAg
QUNfTVNHX1JFU1VMVChubykKZmkKQUNfU1VCU1QoJDEpZG5sCl0pCgojIHNpZ25lZC5tNCBzZXJp
YWwgMSAoZ2V0dGV4dC0wLjEwLjQwKQpkbmwgQ29weXJpZ2h0IChDKSAyMDAxLTIwMDIgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsg
dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Np
b24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKZG5sIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KCmRubCBGcm9t
IEJydW5vIEhhaWJsZS4KCkFDX0RFRlVOKFtiaF9DX1NJR05FRF0sClsKICBBQ19DQUNIRV9DSEVD
SyhbZm9yIHNpZ25lZF0sIGJoX2N2X2Nfc2lnbmVkLAogICBbQUNfVFJZX0NPTVBJTEUoLCBbc2ln
bmVkIGNoYXIgeDtdLCBiaF9jdl9jX3NpZ25lZD15ZXMsIGJoX2N2X2Nfc2lnbmVkPW5vKV0pCiAg
aWYgdGVzdCAkYmhfY3ZfY19zaWduZWQgPSBubzsgdGhlbgogICAgQUNfREVGSU5FKHNpZ25lZCwg
LAogICAgICAgICAgICAgIFtEZWZpbmUgdG8gZW1wdHkgaWYgdGhlIEMgY29tcGlsZXIgZG9lc24n
dCBzdXBwb3J0IHRoaXMga2V5d29yZC5dKQogIGZpCl0pCgojIHNpemVfbWF4Lm00IHNlcmlhbCA0
CmRubCBDb3B5cmlnaHQgKEMpIDIwMDMsIDIwMDUtMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9v
ciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxv
bmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgoK
QUNfREVGVU4oW2dsX1NJWkVfTUFYXSwKWwogIEFDX0NIRUNLX0hFQURFUlMoc3RkaW50LmgpCiAg
ZG5sIEZpcnN0IHRlc3Qgd2hldGhlciB0aGUgc3lzdGVtIGFscmVhZHkgaGFzIFNJWkVfTUFYLgog
IEFDX01TR19DSEVDS0lORyhbZm9yIFNJWkVfTUFYXSkKICByZXN1bHQ9CiAgQUNfRUdSRVBfQ1BQ
KFtGb3VuZCBpdF0sIFsKI2luY2x1ZGUgPGxpbWl0cy5oPgojaWYgSEFWRV9TVERJTlRfSAojaW5j
bHVkZSA8c3RkaW50Lmg+CiNlbmRpZgojaWZkZWYgU0laRV9NQVgKRm91bmQgaXQKI2VuZGlmCl0s
IHJlc3VsdD15ZXMpCiAgaWYgdGVzdCAteiAiJHJlc3VsdCI7IHRoZW4KICAgIGRubCBEZWZpbmUg
aXQgb3Vyc2VsdmVzLiBIZXJlIHdlIGFzc3VtZSB0aGF0IHRoZSB0eXBlICdzaXplX3QnIGlzIG5v
dCB3aWRlcgogICAgZG5sIHRoYW4gdGhlIHR5cGUgJ3Vuc2lnbmVkIGxvbmcnLiBUcnkgaGFyZCB0
byBmaW5kIGEgZGVmaW5pdGlvbiB0aGF0IGNhbgogICAgZG5sIGJlIHVzZWQgaW4gYSBwcmVwcm9j
ZXNzb3IgI2lmLCBpLmUuIGRvZXNuJ3QgY29udGFpbiBhIGNhc3QuCiAgICBfQUNfQ09NUFVURV9J
TlQoW3NpemVvZiAoc2l6ZV90KSAqIENIQVJfQklUIC0gMV0sIHNpemVfdF9iaXRzX21pbnVzXzEs
CiAgICAgIFsjaW5jbHVkZSA8c3RkZGVmLmg+CiNpbmNsdWRlIDxsaW1pdHMuaD5dLCBzaXplX3Rf
Yml0c19taW51c18xPSkKICAgIF9BQ19DT01QVVRFX0lOVChbc2l6ZW9mIChzaXplX3QpIDw9IHNp
emVvZiAodW5zaWduZWQgaW50KV0sIGZpdHNfaW5fdWludCwKICAgICAgWyNpbmNsdWRlIDxzdGRk
ZWYuaD5dLCBmaXRzX2luX3VpbnQ9KQogICAgaWYgdGVzdCAtbiAiJHNpemVfdF9iaXRzX21pbnVz
XzEiICYmIHRlc3QgLW4gIiRmaXRzX2luX3VpbnQiOyB0aGVuCiAgICAgIGlmIHRlc3QgJGZpdHNf
aW5fdWludCA9IDE7IHRoZW4KICAgICAgICBkbmwgRXZlbiB0aG91Z2ggU0laRV9NQVggZml0cyBp
biBhbiB1bnNpZ25lZCBpbnQsIGl0IG11c3QgYmUgb2YgdHlwZQogICAgICAgIGRubCAndW5zaWdu
ZWQgbG9uZycgaWYgdGhlIHR5cGUgJ3NpemVfdCcgaXMgdGhlIHNhbWUgYXMgJ3Vuc2lnbmVkIGxv
bmcnLgogICAgICAgIEFDX1RSWV9DT01QSUxFKFsjaW5jbHVkZSA8c3RkZGVmLmg+CiAgICAgICAg
ICBleHRlcm4gc2l6ZV90IGZvbzsKICAgICAgICAgIGV4dGVybiB1bnNpZ25lZCBsb25nIGZvbzsK
ICAgICAgICAgIF0sIFtdLCBmaXRzX2luX3VpbnQ9MCkKICAgICAgZmkKICAgICAgZG5sIFdlIGNh
bm5vdCB1c2UgJ2V4cHInIHRvIHNpbXBsaWZ5IHRoaXMgZXhwcmVzc2lvbiwgYmVjYXVzZSAnZXhw
cicKICAgICAgZG5sIHdvcmtzIG9ubHkgd2l0aCAnbG9uZycgaW50ZWdlcnMgaW4gdGhlIGhvc3Qg
ZW52aXJvbm1lbnQsIHdoaWxlIHdlCiAgICAgIGRubCBtaWdodCBiZSBjcm9zcy1jb21waWxpbmcg
ZnJvbSBhIDMyLWJpdCBwbGF0Zm9ybSB0byBhIDY0LWJpdCBwbGF0Zm9ybS4KICAgICAgaWYgdGVz
dCAkZml0c19pbl91aW50ID0gMTsgdGhlbgogICAgICAgIHJlc3VsdD0iKCgoMVUgPDwgJHNpemVf
dF9iaXRzX21pbnVzXzEpIC0gMSkgKiAyICsgMSkiCiAgICAgIGVsc2UKICAgICAgICByZXN1bHQ9
IigoKDFVTCA8PCAkc2l6ZV90X2JpdHNfbWludXNfMSkgLSAxKSAqIDIgKyAxKSIKICAgICAgZmkK
ICAgIGVsc2UKICAgICAgZG5sIFNob3VsZG4ndCBoYXBwZW4sIGJ1dCB3aG8ga25vd3MuLi4KICAg
ICAgcmVzdWx0PScoKHNpemVfdCl+KHNpemVfdCkwKScKICAgIGZpCiAgZmkKICBBQ19NU0dfUkVT
VUxUKFskcmVzdWx0XSkKICBpZiB0ZXN0ICIkcmVzdWx0IiAhPSB5ZXM7IHRoZW4KICAgIEFDX0RF
RklORV9VTlFVT1RFRChbU0laRV9NQVhdLCBbJHJlc3VsdF0sCiAgICAgIFtEZWZpbmUgYXMgdGhl
IG1heGltdW0gdmFsdWUgb2YgdHlwZSAnc2l6ZV90JywgaWYgdGhlIHN5c3RlbSBkb2Vzbid0IGRl
ZmluZSBpdC5dKQogIGZpCl0pCgojIHN0ZGludF9oLm00IHNlcmlhbCA1CmRubCBDb3B5cmlnaHQg
KEMpIDE5OTctMjAwNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmls
ZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZl
cyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMg
cHJlc2VydmVkLgoKZG5sIEZyb20gUGF1bCBFZ2dlcnQuCgojIERlZmluZSBIQVZFX1NURElOVF9I
X1dJVEhfVUlOVE1BWCBpZiA8c3RkaW50Lmg+IGV4aXN0cywKIyBkb2Vzbid0IGNsYXNoIHdpdGgg
PHN5cy90eXBlcy5oPiwgYW5kIGRlY2xhcmVzIHVpbnRtYXhfdC4KCkFDX0RFRlVOKFtnbF9BQ19I
RUFERVJfU1RESU5UX0hdLApbCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBzdGRpbnQuaF0sIGdsX2N2
X2hlYWRlcl9zdGRpbnRfaCwKICBbQUNfVFJZX0NPTVBJTEUoCiAgICBbI2luY2x1ZGUgPHN5cy90
eXBlcy5oPgojaW5jbHVkZSA8c3RkaW50Lmg+XSwKICAgIFt1aW50bWF4X3QgaSA9ICh1aW50bWF4
X3QpIC0xO10sCiAgICBnbF9jdl9oZWFkZXJfc3RkaW50X2g9eWVzLAogICAgZ2xfY3ZfaGVhZGVy
X3N0ZGludF9oPW5vKV0pCiAgaWYgdGVzdCAkZ2xfY3ZfaGVhZGVyX3N0ZGludF9oID0geWVzOyB0
aGVuCiAgICBBQ19ERUZJTkVfVU5RVU9URUQoSEFWRV9TVERJTlRfSF9XSVRIX1VJTlRNQVgsIDEs
CiAgICAgIFtEZWZpbmUgaWYgPHN0ZGludC5oPiBleGlzdHMsIGRvZXNuJ3QgY2xhc2ggd2l0aCA8
c3lzL3R5cGVzLmg+LAogICAgICAgYW5kIGRlY2xhcmVzIHVpbnRtYXhfdC4gXSkKICBmaQpdKQoK
IyB1aW50bWF4X3QubTQgc2VyaWFsIDkKZG5sIENvcHlyaWdodCAoQykgMTk5Ny0yMDA0IEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KZG5sIGdpdmVzIHVubGltaXRlZCBwZXJtaXNz
aW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCmRubCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCgpkbmwgRnJv
bSBQYXVsIEVnZ2VydC4KCkFDX1BSRVJFUSgyLjEzKQoKIyBEZWZpbmUgdWludG1heF90IHRvICd1
bnNpZ25lZCBsb25nJyBvciAndW5zaWduZWQgbG9uZyBsb25nJwojIGlmIGl0IGlzIG5vdCBhbHJl
YWR5IGRlZmluZWQgaW4gPHN0ZGludC5oPiBvciA8aW50dHlwZXMuaD4uCgpBQ19ERUZVTihbZ2xf
QUNfVFlQRV9VSU5UTUFYX1RdLApbCiAgQUNfUkVRVUlSRShbZ2xfQUNfSEVBREVSX0lOVFRZUEVT
X0hdKQogIEFDX1JFUVVJUkUoW2dsX0FDX0hFQURFUl9TVERJTlRfSF0pCiAgaWYgdGVzdCAkZ2xf
Y3ZfaGVhZGVyX2ludHR5cGVzX2ggPSBubyAmJiB0ZXN0ICRnbF9jdl9oZWFkZXJfc3RkaW50X2gg
PSBubzsgdGhlbgogICAgQUNfUkVRVUlSRShbZ2xfQUNfVFlQRV9VTlNJR05FRF9MT05HX0xPTkdd
KQogICAgdGVzdCAkYWNfY3ZfdHlwZV91bnNpZ25lZF9sb25nX2xvbmcgPSB5ZXMgXAogICAgICAm
JiBhY190eXBlPSd1bnNpZ25lZCBsb25nIGxvbmcnIFwKICAgICAgfHwgYWNfdHlwZT0ndW5zaWdu
ZWQgbG9uZycKICAgIEFDX0RFRklORV9VTlFVT1RFRCh1aW50bWF4X3QsICRhY190eXBlLAogICAg
ICBbRGVmaW5lIHRvIHVuc2lnbmVkIGxvbmcgb3IgdW5zaWduZWQgbG9uZyBsb25nCiAgICAgICBp
ZiA8c3RkaW50Lmg+IGFuZCA8aW50dHlwZXMuaD4gZG9uJ3QgZGVmaW5lLl0pCiAgZWxzZQogICAg
QUNfREVGSU5FKEhBVkVfVUlOVE1BWF9ULCAxLAogICAgICBbRGVmaW5lIGlmIHlvdSBoYXZlIHRo
ZSAndWludG1heF90JyB0eXBlIGluIDxzdGRpbnQuaD4gb3IgPGludHR5cGVzLmg+Ll0pCiAgZmkK
XSkKCiMgdWxvbmdsb25nLm00IHNlcmlhbCA0CmRubCBDb3B5cmlnaHQgKEMpIDE5OTktMjAwNCBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3
YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVy
bWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0
IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKZG5s
IEZyb20gUGF1bCBFZ2dlcnQuCgojIERlZmluZSBIQVZFX1VOU0lHTkVEX0xPTkdfTE9ORyBpZiAn
dW5zaWduZWQgbG9uZyBsb25nJyB3b3Jrcy4KCkFDX0RFRlVOKFtnbF9BQ19UWVBFX1VOU0lHTkVE
X0xPTkdfTE9OR10sClsKICBBQ19DQUNIRV9DSEVDSyhbZm9yIHVuc2lnbmVkIGxvbmcgbG9uZ10s
IGFjX2N2X3R5cGVfdW5zaWduZWRfbG9uZ19sb25nLAogIFtBQ19UUllfTElOSyhbdW5zaWduZWQg
bG9uZyBsb25nIHVsbCA9IDFVTEw7IGludCBpID0gNjM7XSwKICAgIFt1bnNpZ25lZCBsb25nIGxv
bmcgdWxsbWF4ID0gKHVuc2lnbmVkIGxvbmcgbG9uZykgLTE7CiAgICAgcmV0dXJuIHVsbCA8PCBp
IHwgdWxsID4+IGkgfCB1bGxtYXggLyB1bGwgfCB1bGxtYXggJSB1bGw7XSwKICAgIGFjX2N2X3R5
cGVfdW5zaWduZWRfbG9uZ19sb25nPXllcywKICAgIGFjX2N2X3R5cGVfdW5zaWduZWRfbG9uZ19s
b25nPW5vKV0pCiAgaWYgdGVzdCAkYWNfY3ZfdHlwZV91bnNpZ25lZF9sb25nX2xvbmcgPSB5ZXM7
IHRoZW4KICAgIEFDX0RFRklORShIQVZFX1VOU0lHTkVEX0xPTkdfTE9ORywgMSwKICAgICAgW0Rl
ZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ3Vuc2lnbmVkIGxvbmcgbG9uZycgdHlwZS5dKQogIGZpCl0p
CgojIHZpc2liaWxpdHkubTQgc2VyaWFsIDEgKGdldHRleHQtMC4xNSkKZG5sIENvcHlyaWdodCAo
QykgMjAwNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBm
cmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxp
bWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBv
ciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2Vy
dmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgoKZG5sIFRlc3RzIHdoZXRoZXIgdGhlIGNvbXBp
bGVyIHN1cHBvcnRzIHRoZSBjb21tYW5kLWxpbmUgb3B0aW9uCmRubCAtZnZpc2liaWxpdHk9aGlk
ZGVuIGFuZCB0aGUgZnVuY3Rpb24gYW5kIHZhcmlhYmxlIGF0dHJpYnV0ZXMKZG5sIF9fYXR0cmli
dXRlX18oKF9fdmlzaWJpbGl0eV9fKCJoaWRkZW4iKSkpIGFuZApkbmwgX19hdHRyaWJ1dGVfXygo
X192aXNpYmlsaXR5X18oImRlZmF1bHQiKSkpLgpkbmwgRG9lcyAqbm90KiB0ZXN0IGZvciBfX3Zp
c2liaWxpdHlfXygicHJvdGVjdGVkIikgLSB3aGljaCBoYXMgdHJpY2t5CmRubCBzZW1hbnRpY3Mg
KHNlZSB0aGUgJ3Zpc21haW4nIHRlc3QgaW4gZ2xpYmMpIGFuZCBkb2VzIG5vdCBleGlzdCBlLmcu
IG9uCmRubCBNYWNPUyBYLgpkbmwgRG9lcyAqbm90KiB0ZXN0IGZvciBfX3Zpc2liaWxpdHlfXygi
aW50ZXJuYWwiKSAtIHdoaWNoIGhhcyBwcm9jZXNzb3IKZG5sIGRlcGVuZGVudCBzZW1hbnRpY3Mu
CmRubCBEb2VzICpub3QqIHRlc3QgZm9yICNwcmFnbWEgR0NDIHZpc2liaWxpdHkgcHVzaChoaWRk
ZW4pIC0gd2hpY2ggaXMKZG5sICJyZWFsbHkgb25seSByZWNvbW1lbmRlZCBmb3IgbGVnYWN5IGNv
ZGUiLgpkbmwgU2V0IHRoZSB2YXJpYWJsZSBDRkxBR19WSVNJQklMSVRZLgpkbmwgRGVmaW5lcyBh
bmQgc2V0cyB0aGUgdmFyaWFibGUgSEFWRV9WSVNJQklMSVRZLgoKQUNfREVGVU4oW2dsX1ZJU0lC
SUxJVFldLApbCiAgQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pCiAgQ0ZMQUdfVklTSUJJTElUWT0K
ICBIQVZFX1ZJU0lCSUxJVFk9MAogIGlmIHRlc3QgLW4gIiRHQ0MiOyB0aGVuCiAgICBBQ19NU0df
Q0hFQ0tJTkcoW2ZvciBzaW1wbGUgdmlzaWJpbGl0eSBkZWNsYXJhdGlvbnNdKQogICAgQUNfQ0FD
SEVfVkFMKGdsX2N2X2NjX3Zpc2liaWxpdHksIFsKICAgICAgZ2xfc2F2ZV9DRkxBR1M9IiRDRkxB
R1MiCiAgICAgIENGTEFHUz0iJENGTEFHUyAtZnZpc2liaWxpdHk9aGlkZGVuIgogICAgICBBQ19U
UllfQ09NUElMRSgKICAgICAgICBbZXh0ZXJuIF9fYXR0cmlidXRlX18oKF9fdmlzaWJpbGl0eV9f
KCJoaWRkZW4iKSkpIGludCBoaWRkZW52YXI7CiAgICAgICAgIGV4dGVybiBfX2F0dHJpYnV0ZV9f
KChfX3Zpc2liaWxpdHlfXygiZGVmYXVsdCIpKSkgaW50IGV4cG9ydGVkdmFyOwogICAgICAgICBl
eHRlcm4gX19hdHRyaWJ1dGVfXygoX192aXNpYmlsaXR5X18oImhpZGRlbiIpKSkgaW50IGhpZGRl
bmZ1bmMgKHZvaWQpOwogICAgICAgICBleHRlcm4gX19hdHRyaWJ1dGVfXygoX192aXNpYmlsaXR5
X18oImRlZmF1bHQiKSkpIGludCBleHBvcnRlZGZ1bmMgKHZvaWQpO10sCiAgICAgICAgW10sCiAg
ICAgICAgZ2xfY3ZfY2NfdmlzaWJpbGl0eT15ZXMsCiAgICAgICAgZ2xfY3ZfY2NfdmlzaWJpbGl0
eT1ubykKICAgICAgQ0ZMQUdTPSIkZ2xfc2F2ZV9DRkxBR1MiXSkKICAgIEFDX01TR19SRVNVTFQo
WyRnbF9jdl9jY192aXNpYmlsaXR5XSkKICAgIGlmIHRlc3QgJGdsX2N2X2NjX3Zpc2liaWxpdHkg
PSB5ZXM7IHRoZW4KICAgICAgQ0ZMQUdfVklTSUJJTElUWT0iLWZ2aXNpYmlsaXR5PWhpZGRlbiIK
ICAgICAgSEFWRV9WSVNJQklMSVRZPTEKICAgIGZpCiAgZmkKICBBQ19TVUJTVChbQ0ZMQUdfVklT
SUJJTElUWV0pCiAgQUNfU1VCU1QoW0hBVkVfVklTSUJJTElUWV0pCiAgQUNfREVGSU5FX1VOUVVP
VEVEKFtIQVZFX1ZJU0lCSUxJVFldLCBbJEhBVkVfVklTSUJJTElUWV0sCiAgICBbRGVmaW5lIHRv
IDEgb3IgMCwgZGVwZW5kaW5nIHdoZXRoZXIgdGhlIGNvbXBpbGVyIHN1cHBvcnRzIHNpbXBsZSB2
aXNpYmlsaXR5IGRlY2xhcmF0aW9ucy5dKQpdKQoKIyB3Y2hhcl90Lm00IHNlcmlhbCAxIChnZXR0
ZXh0LTAuMTIpCmRubCBDb3B5cmlnaHQgKEMpIDIwMDItMjAwMyBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFu
ZC9vciBkaXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFz
IGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKZG5sIEZyb20gQnJ1bm8gSGFpYmxl
LgpkbmwgVGVzdCB3aGV0aGVyIDxzdGRkZWYuaD4gaGFzIHRoZSAnd2NoYXJfdCcgdHlwZS4KZG5s
IFByZXJlcXVpc2l0ZTogQUNfUFJPR19DQwoKQUNfREVGVU4oW2d0X1RZUEVfV0NIQVJfVF0sClsK
ICBBQ19DQUNIRV9DSEVDSyhbZm9yIHdjaGFyX3RdLCBndF9jdl9jX3djaGFyX3QsCiAgICBbQUNf
VFJZX0NPTVBJTEUoWyNpbmNsdWRlIDxzdGRkZWYuaD4KICAgICAgIHdjaGFyX3QgZm9vID0gKHdj
aGFyX3QpJ1wwJztdLCAsCiAgICAgICBndF9jdl9jX3djaGFyX3Q9eWVzLCBndF9jdl9jX3djaGFy
X3Q9bm8pXSkKICBpZiB0ZXN0ICRndF9jdl9jX3djaGFyX3QgPSB5ZXM7IHRoZW4KICAgIEFDX0RF
RklORShIQVZFX1dDSEFSX1QsIDEsIFtEZWZpbmUgaWYgeW91IGhhdmUgdGhlICd3Y2hhcl90JyB0
eXBlLl0pCiAgZmkKXSkKCiMgd2ludF90Lm00IHNlcmlhbCAxIChnZXR0ZXh0LTAuMTIpCmRubCBD
b3B5cmlnaHQgKEMpIDIwMDMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCmRubCBUaGlz
IGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgpkbmwg
Z2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwK
ZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNl
IGlzIHByZXNlcnZlZC4KCmRubCBGcm9tIEJydW5vIEhhaWJsZS4KZG5sIFRlc3Qgd2hldGhlciA8
d2NoYXIuaD4gaGFzIHRoZSAnd2ludF90JyB0eXBlLgpkbmwgUHJlcmVxdWlzaXRlOiBBQ19QUk9H
X0NDCgpBQ19ERUZVTihbZ3RfVFlQRV9XSU5UX1RdLApbCiAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciB3
aW50X3RdLCBndF9jdl9jX3dpbnRfdCwKICAgIFtBQ19UUllfQ09NUElMRShbI2luY2x1ZGUgPHdj
aGFyLmg+CiAgICAgICB3aW50X3QgZm9vID0gKHdjaGFyX3QpJ1wwJztdLCAsCiAgICAgICBndF9j
dl9jX3dpbnRfdD15ZXMsIGd0X2N2X2Nfd2ludF90PW5vKV0pCiAgaWYgdGVzdCAkZ3RfY3ZfY193
aW50X3QgPSB5ZXM7IHRoZW4KICAgIEFDX0RFRklORShIQVZFX1dJTlRfVCwgMSwgW0RlZmluZSBp
ZiB5b3UgaGF2ZSB0aGUgJ3dpbnRfdCcgdHlwZS5dKQogIGZpCl0pCgojIHhzaXplLm00IHNlcmlh
bCAzCmRubCBDb3B5cmlnaHQgKEMpIDIwMDMtMjAwNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4KZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uCmRubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBk
aXN0cmlidXRlIGl0LApkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcg
YXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKQUNfREVGVU4oW2dsX1hTSVpFXSwKWwogIGRu
bCBQcmVyZXF1aXNpdGVzIG9mIGxpYi94c2l6ZS5oLgogIEFDX1JFUVVJUkUoW2dsX1NJWkVfTUFY
XSkKICBBQ19SRVFVSVJFKFtBQ19DX0lOTElORV0pCiAgQUNfQ0hFQ0tfSEVBREVSUyhzdGRpbnQu
aCkKXSkKCiMgQ29weXJpZ2h0IChDKSAyMDAyLCAyMDAzLCAyMDA1ICBGcmVlIFNvZnR3YXJlIEZv
dW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBh
bmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMg
bG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCgojIEFNX0FVVE9NQUtFX1ZFUlNJT04o
VkVSU0lPTikKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQXV0b21ha2UgWC5ZIHRy
YWNlcyB0aGlzIG1hY3JvIHRvIGVuc3VyZSBhY2xvY2FsLm00IGhhcyBiZWVuCiMgZ2VuZXJhdGVk
IGZyb20gdGhlIG00IGZpbGVzIGFjY29tcGFueWluZyBBdXRvbWFrZSBYLlkuCkFDX0RFRlVOKFtB
TV9BVVRPTUFLRV9WRVJTSU9OXSwgW2FtX19hcGlfdmVyc2lvbj0iMS45Il0pCgojIEFNX1NFVF9D
VVJSRU5UX0FVVE9NQUtFX1ZFUlNJT04KIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CiMgQ2FsbCBBTV9BVVRPTUFLRV9WRVJTSU9OIHNvIGl0IGNhbiBiZSB0cmFjZWQuCiMgVGhpcyBm
dW5jdGlvbiBpcyBBQ19SRVFVSVJFZCBieSBBQ19JTklUX0FVVE9NQUtFLgpBQ19ERUZVTihbQU1f
U0VUX0NVUlJFTlRfQVVUT01BS0VfVkVSU0lPTl0sCgkgW0FNX0FVVE9NQUtFX1ZFUlNJT04oWzEu
OS42XSldKQoKIyBBTV9BVVhfRElSX0VYUEFORCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQoKIyBDb3B5cmlnaHQgKEMpIDIwMDEsIDIwMDMs
IDIwMDUgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojCiMgVGhpcyBmaWxlIGlzIGZy
ZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KIyBnaXZlcyB1bmxpbWl0
ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAojIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4K
CiMgRm9yIHByb2plY3RzIHVzaW5nIEFDX0NPTkZJR19BVVhfRElSKFtmb29dKSwgQXV0b2NvbmYg
c2V0cwojICRhY19hdXhfZGlyIHRvIGAkc3JjZGlyL2ZvbycuICBJbiBvdGhlciBwcm9qZWN0cywg
aXQgaXMgc2V0IHRvCiMgYCRzcmNkaXInLCBgJHNyY2Rpci8uLicsIG9yIGAkc3JjZGlyLy4uLy4u
Jy4KIwojIE9mIGNvdXJzZSwgQXV0b21ha2UgbXVzdCBob25vciB0aGlzIHZhcmlhYmxlIHdoZW5l
dmVyIGl0IGNhbGxzIGEKIyB0b29sIGZyb20gdGhlIGF1eGlsaWFyeSBkaXJlY3RvcnkuICBUaGUg
cHJvYmxlbSBpcyB0aGF0ICRzcmNkaXIgKGFuZAojIHRoZXJlZm9yZSAkYWNfYXV4X2RpciBhcyB3
ZWxsKSBjYW4gYmUgZWl0aGVyIGFic29sdXRlIG9yIHJlbGF0aXZlLAojIGRlcGVuZGluZyBvbiBo
b3cgY29uZmlndXJlIGlzIHJ1bi4gIFRoaXMgaXMgcHJldHR5IGFubm95aW5nLCBzaW5jZQojIGl0
IG1ha2VzICRhY19hdXhfZGlyIHF1aXRlIHVudXNhYmxlIGluIHN1YmRpcmVjdG9yaWVzOiBpbiB0
aGUgdG9wCiMgc291cmNlIGRpcmVjdG9yeSwgYW55IGZvcm0gd2lsbCB3b3JrIGZpbmUsIGJ1dCBp
biBzdWJkaXJlY3RvcmllcyBhCiMgcmVsYXRpdmUgcGF0aCBuZWVkcyB0byBiZSBhZGp1c3RlZCBm
aXJzdC4KIwojICRhY19hdXhfZGlyL21pc3NpbmcKIyAgICBmYWlscyB3aGVuIGNhbGxlZCBmcm9t
IGEgc3ViZGlyZWN0b3J5IGlmICRhY19hdXhfZGlyIGlzIHJlbGF0aXZlCiMgJHRvcF9zcmNkaXIv
JGFjX2F1eF9kaXIvbWlzc2luZwojICAgIGZhaWxzIGlmICRhY19hdXhfZGlyIGlzIGFic29sdXRl
LAojICAgIGZhaWxzIHdoZW4gY2FsbGVkIGZyb20gYSBzdWJkaXJlY3RvcnkgaW4gYSBWUEFUSCBi
dWlsZCB3aXRoCiMgICAgICAgICAgYSByZWxhdGl2ZSAkYWNfYXV4X2RpcgojCiMgVGhlIHJlYXNv
biBvZiB0aGUgbGF0dGVyIGZhaWx1cmUgaXMgdGhhdCAkdG9wX3NyY2RpciBhbmQgJGFjX2F1eF9k
aXIKIyBhcmUgYm90aCBwcmVmaXhlZCBieSAkc3JjZGlyLiAgSW4gYW4gaW4tc291cmNlIGJ1aWxk
IHRoaXMgaXMgdXN1YWxseQojIGhhcm1sZXNzIGJlY2F1c2UgJHNyY2RpciBpcyBgLicsIGJ1dCB0
aGluZ3Mgd2lsbCBicm9rZSB3aGVuIHlvdQojIHN0YXJ0IGEgVlBBVEggYnVpbGQgb3IgdXNlIGFu
IGFic29sdXRlICRzcmNkaXIuCiMKIyBTbyB3ZSBjb3VsZCB1c2Ugc29tZXRoaW5nIHNpbWlsYXIg
dG8gJHRvcF9zcmNkaXIvJGFjX2F1eF9kaXIvbWlzc2luZywKIyBpZmYgd2Ugc3RyaXAgdGhlIGxl
YWRpbmcgJHNyY2RpciBmcm9tICRhY19hdXhfZGlyLiAgVGhhdCB3b3VsZCBiZToKIyAgIGFtX2F1
eF9kaXI9J1wkKHRvcF9zcmNkaXIpLydgZXhwciAiJGFjX2F1eF9kaXIiIDogIiRzcmNkaXIvLypc
KC4qXCkiYAojIGFuZCB0aGVuIHdlIHdvdWxkIGRlZmluZSAkTUlTU0lORyBhcwojICAgTUlTU0lO
Rz0iXCR7U0hFTEx9ICRhbV9hdXhfZGlyL21pc3NpbmciCiMgVGhpcyB3aWxsIHdvcmsgYXMgbG9u
ZyBhcyBNSVNTSU5HIGlzIG5vdCBjYWxsZWQgZnJvbSBjb25maWd1cmUsIGJlY2F1c2UKIyB1bmZv
cnR1bmF0ZWx5ICQodG9wX3NyY2RpcikgaGFzIG5vIG1lYW5pbmcgaW4gY29uZmlndXJlLgojIEhv
d2V2ZXIgdGhlcmUgYXJlIG90aGVyIHZhcmlhYmxlcywgbGlrZSBDQywgd2hpY2ggYXJlIG9mdGVu
IHVzZWQgaW4KIyBjb25maWd1cmUsIGFuZCBjb3VsZCB0aGVyZWZvcmUgbm90IHVzZSB0aGlzICJm
aXhlZCIgJGFjX2F1eF9kaXIuCiMKIyBBbm90aGVyIHNvbHV0aW9uLCB1c2VkIGhlcmUsIGlzIHRv
IGFsd2F5cyBleHBhbmQgJGFjX2F1eF9kaXIgdG8gYW4KIyBhYnNvbHV0ZSBQQVRILiAgVGhlIGRy
YXdiYWNrIGlzIHRoYXQgdXNpbmcgYWJzb2x1dGUgcGF0aHMgcHJldmVudCBhCiMgY29uZmlndXJl
ZCB0cmVlIHRvIGJlIG1vdmVkIHdpdGhvdXQgcmVjb25maWd1cmF0aW9uLgoKQUNfREVGVU4oW0FN
X0FVWF9ESVJfRVhQQU5EXSwKW2RubCBSZWx5IG9uIGF1dG9jb25mIHRvIHNldCB1cCBDRFBBVEgg
cHJvcGVybHkuCkFDX1BSRVJFUShbMi41MF0pZG5sCiMgZXhwYW5kICRhY19hdXhfZGlyIHRvIGFu
IGFic29sdXRlIHBhdGgKYW1fYXV4X2Rpcj1gY2QgJGFjX2F1eF9kaXIgJiYgcHdkYApdKQoKIyBB
TV9DT05ESVRJT05BTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LSotIEF1dG9jb25mIC0qLQoKIyBDb3B5cmlnaHQgKEMpIDE5OTcsIDIwMDAsIDIwMDEsIDIwMDMs
IDIwMDQsIDIwMDUKIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmls
ZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMg
dW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVz
ZXJ2ZWQuCgojIHNlcmlhbCA3CgojIEFNX0NPTkRJVElPTkFMKE5BTUUsIFNIRUxMLUNPTkRJVElP
TikKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGVmaW5lIGEgY29u
ZGl0aW9uYWwuCkFDX0RFRlVOKFtBTV9DT05ESVRJT05BTF0sCltBQ19QUkVSRVEoMi41MilkbmwK
IGlmZWxzZShbJDFdLCBbVFJVRV0sICBbQUNfRkFUQUwoWyQwOiBpbnZhbGlkIGNvbmRpdGlvbjog
JDFdKV0sCglbJDFdLCBbRkFMU0VdLCBbQUNfRkFUQUwoWyQwOiBpbnZhbGlkIGNvbmRpdGlvbjog
JDFdKV0pZG5sCkFDX1NVQlNUKFskMV9UUlVFXSkKQUNfU1VCU1QoWyQxX0ZBTFNFXSkKaWYgJDI7
IHRoZW4KICAkMV9UUlVFPQogICQxX0ZBTFNFPScjJwplbHNlCiAgJDFfVFJVRT0nIycKICAkMV9G
QUxTRT0KZmkKQUNfQ09ORklHX0NPTU1BTkRTX1BSRSgKW2lmIHRlc3QgLXogIiR7JDFfVFJVRX0i
ICYmIHRlc3QgLXogIiR7JDFfRkFMU0V9IjsgdGhlbgogIEFDX01TR19FUlJPUihbW2NvbmRpdGlv
bmFsICIkMSIgd2FzIG5ldmVyIGRlZmluZWQuClVzdWFsbHkgdGhpcyBtZWFucyB0aGUgbWFjcm8g
d2FzIG9ubHkgaW52b2tlZCBjb25kaXRpb25hbGx5Ll1dKQpmaV0pXSkKCgojIENvcHlyaWdodCAo
QykgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNQojIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLgojCiMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBj
b3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAojIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25z
LCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KCiMgc2VyaWFsIDgKCiMgVGhl
cmUgYXJlIGEgZmV3IGRpcnR5IGhhY2tzIGJlbG93IHRvIGF2b2lkIGxldHRpbmcgYEFDX1BST0df
Q0MnIGJlCiMgd3JpdHRlbiBpbiBjbGVhciwgaW4gd2hpY2ggY2FzZSBhdXRvbWFrZSwgd2hlbiBy
ZWFkaW5nIGFjbG9jYWwubTQsCiMgd2lsbCB0aGluayBpdCBzZWVzIGEgKnVzZSosIGFuZCB0aGVy
ZWZvcmUgd2lsbCB0cmlnZ2VyIGFsbCBpdCdzCiMgQyBzdXBwb3J0IG1hY2hpbmVyeS4gIEFsc28g
bm90ZSB0aGF0IGl0IG1lYW5zIHRoYXQgYXV0b3NjYW4sIHNlZWluZwojIENDIGV0Yy4gaW4gdGhl
IE1ha2VmaWxlLCB3aWxsIGFzayBmb3IgYW4gQUNfUFJPR19DQyB1c2UuLi4KCgojIF9BTV9ERVBF
TkRFTkNJRVMoTkFNRSkKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU2VlIGhvdyB0aGUgY29t
cGlsZXIgaW1wbGVtZW50cyBkZXBlbmRlbmN5IGNoZWNraW5nLgojIE5BTUUgaXMgIkNDIiwgIkNY
WCIsICJHQ0oiLCBvciAiT0JKQyIuCiMgV2UgdHJ5IGEgZmV3IHRlY2huaXF1ZXMgYW5kIHVzZSB0
aGF0IHRvIHNldCBhIHNpbmdsZSBjYWNoZSB2YXJpYWJsZS4KIwojIFdlIGRvbid0IEFDX1JFUVVJ
UkUgdGhlIGNvcnJlc3BvbmRpbmcgQUNfUFJPR19DQyBzaW5jZSB0aGUgbGF0dGVyIHdhcwojIG1v
ZGlmaWVkIHRvIGludm9rZSBfQU1fREVQRU5ERU5DSUVTKENDKTsgd2Ugd291bGQgaGF2ZSBhIGNp
cmN1bGFyCiMgZGVwZW5kZW5jeSwgYW5kIGdpdmVuIHRoYXQgdGhlIHVzZXIgaXMgbm90IGV4cGVj
dGVkIHRvIHJ1biB0aGlzIG1hY3JvLAojIGp1c3QgcmVseSBvbiBBQ19QUk9HX0NDLgpBQ19ERUZV
TihbX0FNX0RFUEVOREVOQ0lFU10sCltBQ19SRVFVSVJFKFtBTV9TRVRfREVQRElSXSlkbmwKQUNf
UkVRVUlSRShbQU1fT1VUUFVUX0RFUEVOREVOQ1lfQ09NTUFORFNdKWRubApBQ19SRVFVSVJFKFtB
TV9NQUtFX0lOQ0xVREVdKWRubApBQ19SRVFVSVJFKFtBTV9ERVBfVFJBQ0tdKWRubAoKaWZlbHNl
KFskMV0sIENDLCAgIFtkZXBjYz0iJENDIiAgIGFtX2NvbXBpbGVyX2xpc3Q9XSwKICAgICAgIFsk
MV0sIENYWCwgIFtkZXBjYz0iJENYWCIgIGFtX2NvbXBpbGVyX2xpc3Q9XSwKICAgICAgIFskMV0s
IE9CSkMsIFtkZXBjYz0iJE9CSkMiIGFtX2NvbXBpbGVyX2xpc3Q9J2djYzMgZ2NjJ10sCiAgICAg
ICBbJDFdLCBHQ0osICBbZGVwY2M9IiRHQ0oiICBhbV9jb21waWxlcl9saXN0PSdnY2MzIGdjYydd
LAogICAgICAgICAgICAgICAgICAgW2RlcGNjPSIkJDEiICAgYW1fY29tcGlsZXJfbGlzdD1dKQoK
QUNfQ0FDSEVfQ0hFQ0soW2RlcGVuZGVuY3kgc3R5bGUgb2YgJGRlcGNjXSwKICAgICAgICAgICAg
ICAgW2FtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlXSwKW2lmIHRlc3QgLXogIiRB
TURFUF9UUlVFIiAmJiB0ZXN0IC1mICIkYW1fZGVwY29tcCI7IHRoZW4KICAjIFdlIG1ha2UgYSBz
dWJkaXIgYW5kIGRvIHRoZSB0ZXN0cyB0aGVyZS4gIE90aGVyd2lzZSB3ZSBjYW4gZW5kIHVwCiAg
IyBtYWtpbmcgYm9ndXMgZmlsZXMgdGhhdCB3ZSBkb24ndCBrbm93IGFib3V0IGFuZCBuZXZlciBy
ZW1vdmUuICBGb3IKICAjIGluc3RhbmNlIGl0IHdhcyByZXBvcnRlZCB0aGF0IG9uIEhQLVVYIHRo
ZSBnY2MgdGVzdCB3aWxsIGVuZCB1cAogICMgbWFraW5nIGEgZHVtbXkgZmlsZSBuYW1lZCBgRCcg
LS0gYmVjYXVzZSBgLU1EJyBtZWFucyBgcHV0IHRoZSBvdXRwdXQKICAjIGluIEQnLgogIG1rZGly
IGNvbmZ0ZXN0LmRpcgogICMgQ29weSBkZXBjb21wIHRvIHN1YmRpciBiZWNhdXNlIG90aGVyd2lz
ZSB3ZSB3b24ndCBmaW5kIGl0IGlmIHdlJ3JlCiAgIyB1c2luZyBhIHJlbGF0aXZlIGRpcmVjdG9y
eS4KICBjcCAiJGFtX2RlcGNvbXAiIGNvbmZ0ZXN0LmRpcgogIGNkIGNvbmZ0ZXN0LmRpcgogICMg
V2Ugd2lsbCBidWlsZCBvYmplY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW4gYSBzdWJkaXJlY3Rvcnkg
YmVjYXVzZQogICMgaXQgaGVscHMgdG8gZGV0ZWN0IGluYXBwbGljYWJsZSBkZXBlbmRlbmN5IG1v
ZGVzLiAgRm9yIGluc3RhbmNlCiAgIyBib3RoIFRydTY0J3MgY2MgYW5kIElDQyBzdXBwb3J0IC1N
RCB0byBvdXRwdXQgZGVwZW5kZW5jaWVzIGFzIGEKICAjIHNpZGUgZWZmZWN0IG9mIGNvbXBpbGF0
aW9uLCBidXQgSUNDIHdpbGwgcHV0IHRoZSBkZXBlbmRlbmNpZXMgaW4KICAjIHRoZSBjdXJyZW50
IGRpcmVjdG9yeSB3aGlsZSBUcnU2NCB3aWxsIHB1dCB0aGVtIGluIHRoZSBvYmplY3QKICAjIGRp
cmVjdG9yeS4KICBta2RpciBzdWIKCiAgYW1fY3ZfJDFfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5
cGU9bm9uZQogIGlmIHRlc3QgIiRhbV9jb21waWxlcl9saXN0IiA9ICIiOyB0aGVuCiAgICAgYW1f
Y29tcGlsZXJfbGlzdD1gc2VkIC1uIFsncy9eIypcKFthLXpBLVowLTldKlwpKSQvXDEvcCddIDwg
Li9kZXBjb21wYAogIGZpCiAgZm9yIGRlcG1vZGUgaW4gJGFtX2NvbXBpbGVyX2xpc3Q7IGRvCiAg
ICAjIFNldHVwIGEgc291cmNlIHdpdGggbWFueSBkZXBlbmRlbmNpZXMsIGJlY2F1c2Ugc29tZSBj
b21waWxlcnMKICAgICMgbGlrZSB0byB3cmFwIGxhcmdlIGRlcGVuZGVuY3kgbGlzdHMgb24gY29s
dW1uIDgwICh3aXRoIFwpLCBhbmQKICAgICMgd2Ugc2hvdWxkIG5vdCBjaG9vc2UgYSBkZXBjb21w
IG1vZGUgd2hpY2ggaXMgY29uZnVzZWQgYnkgdGhpcy4KICAgICMKICAgICMgV2UgbmVlZCB0byBy
ZWNyZWF0ZSB0aGVzZSBmaWxlcyBmb3IgZWFjaCB0ZXN0LCBhcyB0aGUgY29tcGlsZXIgbWF5CiAg
ICAjIG92ZXJ3cml0ZSBzb21lIG9mIHRoZW0gd2hlbiB0ZXN0aW5nIHdpdGggb2JzY3VyZSBjb21t
YW5kIGxpbmVzLgogICAgIyBUaGlzIGhhcHBlbnMgYXQgbGVhc3Qgd2l0aCB0aGUgQUlYIEMgY29t
cGlsZXIuCiAgICA6ID4gc3ViL2NvbmZ0ZXN0LmMKICAgIGZvciBpIGluIDEgMiAzIDQgNSA2OyBk
bwogICAgICBlY2hvICcjaW5jbHVkZSAiY29uZnRzdCckaScuaCInID4+IHN1Yi9jb25mdGVzdC5j
CiAgICAgICMgVXNpbmcgYDogPiBzdWIvY29uZnRzdCRpLmgnIGNyZWF0ZXMgb25seSBzdWIvY29u
ZnRzdDEuaCB3aXRoCiAgICAgICMgU29sYXJpcyA4J3Mgey91c3IsfS9iaW4vc2guCiAgICAgIHRv
dWNoIHN1Yi9jb25mdHN0JGkuaAogICAgZG9uZQogICAgZWNobyAiJHthbV9faW5jbHVkZX0gJHth
bV9fcXVvdGV9c3ViL2NvbmZ0ZXN0LlBvJHthbV9fcXVvdGV9IiA+IGNvbmZtZgoKICAgIGNhc2Ug
JGRlcG1vZGUgaW4KICAgIG5vc2lkZWVmZmVjdCkKICAgICAgIyBhZnRlciB0aGlzIHRhZywgbWVj
aGFuaXNtcyBhcmUgbm90IGJ5IHNpZGUtZWZmZWN0LCBzbyB0aGV5J2xsCiAgICAgICMgb25seSBi
ZSB1c2VkIHdoZW4gZXhwbGljaXRseSByZXF1ZXN0ZWQKICAgICAgaWYgdGVzdCAieCRlbmFibGVf
ZGVwZW5kZW5jeV90cmFja2luZyIgPSB4eWVzOyB0aGVuCgljb250aW51ZQogICAgICBlbHNlCgli
cmVhawogICAgICBmaQogICAgICA7OwogICAgbm9uZSkgYnJlYWsgOzsKICAgIGVzYWMKICAgICMg
V2UgY2hlY2sgd2l0aCBgLWMnIGFuZCBgLW8nIGZvciB0aGUgc2FrZSBvZiB0aGUgImRhc2htc3Rk
b3V0IgogICAgIyBtb2RlLiAgSXQgdHVybnMgb3V0IHRoYXQgdGhlIFN1blBybyBDKysgY29tcGls
ZXIgZG9lcyBub3QgcHJvcGVybHkKICAgICMgaGFuZGxlIGAtTSAtbycsIGFuZCB3ZSBuZWVkIHRv
IGRldGVjdCB0aGlzLgogICAgaWYgZGVwbW9kZT0kZGVwbW9kZSBcCiAgICAgICBzb3VyY2U9c3Vi
L2NvbmZ0ZXN0LmMgb2JqZWN0PXN1Yi9jb25mdGVzdC4ke09CSkVYVC1vfSBcCiAgICAgICBkZXBm
aWxlPXN1Yi9jb25mdGVzdC5QbyB0bXBkZXBmaWxlPXN1Yi9jb25mdGVzdC5UUG8gXAogICAgICAg
JFNIRUxMIC4vZGVwY29tcCAkZGVwY2MgLWMgLW8gc3ViL2NvbmZ0ZXN0LiR7T0JKRVhULW99IHN1
Yi9jb25mdGVzdC5jIFwKICAgICAgICAgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0LmVyciAmJgogICAg
ICAgZ3JlcCBzdWIvY29uZnRzdDYuaCBzdWIvY29uZnRlc3QuUG8gPiAvZGV2L251bGwgMj4mMSAm
JgogICAgICAgZ3JlcCBzdWIvY29uZnRlc3QuJHtPQkpFWFQtb30gc3ViL2NvbmZ0ZXN0LlBvID4g
L2Rldi9udWxsIDI+JjEgJiYKICAgICAgICR7TUFLRS1tYWtlfSAtcyAtZiBjb25mbWYgPiAvZGV2
L251bGwgMj4mMTsgdGhlbgogICAgICAjIGljYyBkb2Vzbid0IGNob2tlIG9uIHVua25vd24gb3B0
aW9ucywgaXQgd2lsbCBqdXN0IGlzc3VlIHdhcm5pbmdzCiAgICAgICMgb3IgcmVtYXJrcyAoZXZl
biB3aXRoIC1XZXJyb3IpLiAgU28gd2UgZ3JlcCBzdGRlcnIgZm9yIGFueSBtZXNzYWdlCiAgICAg
ICMgdGhhdCBzYXlzIGFuIG9wdGlvbiB3YXMgaWdub3JlZCBvciBub3Qgc3VwcG9ydGVkLgogICAg
ICAjIFdoZW4gZ2l2ZW4gLU1QLCBpY2MgNy4wIGFuZCA3LjEgY29tcGxhaW4gdGh1c2x5OgogICAg
ICAjICAgaWNjOiBDb21tYW5kIGxpbmUgd2FybmluZzogaWdub3Jpbmcgb3B0aW9uICctTSc7IG5v
IGFyZ3VtZW50IHJlcXVpcmVkCiAgICAgICMgVGhlIGRpYWdub3NpcyBjaGFuZ2VkIGluIGljYyA4
LjA6CiAgICAgICMgICBpY2M6IENvbW1hbmQgbGluZSByZW1hcms6IG9wdGlvbiAnLU1QJyBub3Qg
c3VwcG9ydGVkCiAgICAgIGlmIChncmVwICdpZ25vcmluZyBvcHRpb24nIGNvbmZ0ZXN0LmVyciB8
fAogICAgICAgICAgZ3JlcCAnbm90IHN1cHBvcnRlZCcgY29uZnRlc3QuZXJyKSA+L2Rldi9udWxs
IDI+JjE7IHRoZW4gOjsgZWxzZQogICAgICAgIGFtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxl
cl90eXBlPSRkZXBtb2RlCiAgICAgICAgYnJlYWsKICAgICAgZmkKICAgIGZpCiAgZG9uZQoKICBj
ZCAuLgogIHJtIC1yZiBjb25mdGVzdC5kaXIKZWxzZQogIGFtX2N2XyQxX2RlcGVuZGVuY2llc19j
b21waWxlcl90eXBlPW5vbmUKZmkKXSkKQUNfU1VCU1QoWyQxREVQTU9ERV0sIFtkZXBtb2RlPSRh
bV9jdl8kMV9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZV0pCkFNX0NPTkRJVElPTkFMKFthbV9f
ZmFzdGRlcCQxXSwgWwogIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciICE9IHhu
byBcCiAgJiYgdGVzdCAiJGFtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA9IGdj
YzNdKQpdKQoKCiMgQU1fU0VUX0RFUERJUgojIC0tLS0tLS0tLS0tLS0KIyBDaG9vc2UgYSBkaXJl
Y3RvcnkgbmFtZSBmb3IgZGVwZW5kZW5jeSBmaWxlcy4KIyBUaGlzIG1hY3JvIGlzIEFDX1JFUVVJ
UkVkIGluIF9BTV9ERVBFTkRFTkNJRVMKQUNfREVGVU4oW0FNX1NFVF9ERVBESVJdLApbQUNfUkVR
VUlSRShbQU1fU0VUX0xFQURJTkdfRE9UXSlkbmwKQUNfU1VCU1QoW0RFUERJUl0sIFsiJHthbV9f
bGVhZGluZ19kb3R9ZGVwcyJdKWRubApdKQoKCiMgQU1fREVQX1RSQUNLCiMgLS0tLS0tLS0tLS0t
CkFDX0RFRlVOKFtBTV9ERVBfVFJBQ0tdLApbQUNfQVJHX0VOQUJMRShkZXBlbmRlbmN5LXRyYWNr
aW5nLApbICAtLWRpc2FibGUtZGVwZW5kZW5jeS10cmFja2luZyAgc3BlZWRzIHVwIG9uZS10aW1l
IGJ1aWxkCiAgLS1lbmFibGUtZGVwZW5kZW5jeS10cmFja2luZyAgIGRvIG5vdCByZWplY3Qgc2xv
dyBkZXBlbmRlbmN5IGV4dHJhY3RvcnNdKQppZiB0ZXN0ICJ4JGVuYWJsZV9kZXBlbmRlbmN5X3Ry
YWNraW5nIiAhPSB4bm87IHRoZW4KICBhbV9kZXBjb21wPSIkYWNfYXV4X2Rpci9kZXBjb21wIgog
IEFNREVQQkFDS1NMQVNIPSdcJwpmaQpBTV9DT05ESVRJT05BTChbQU1ERVBdLCBbdGVzdCAieCRl
bmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIgIT0geG5vXSkKQUNfU1VCU1QoW0FNREVQQkFDS1NM
QVNIXSkKXSkKCiMgR2VuZXJhdGUgY29kZSB0byBzZXQgdXAgZGVwZW5kZW5jeSB0cmFja2luZy4g
ICAgICAgICAgICAgIC0qLSBBdXRvY29uZiAtKi0KCiMgQ29weXJpZ2h0IChDKSAxOTk5LCAyMDAw
LCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1CiMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
LCBJbmMuCiMKIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUg
Rm91bmRhdGlvbgojIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRp
c3RyaWJ1dGUgaXQsCiMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMg
dGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKI3NlcmlhbCAzCgojIF9BTV9PVVRQVVRfREVQRU5E
RU5DWV9DT01NQU5EUwojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihb
X0FNX09VVFBVVF9ERVBFTkRFTkNZX0NPTU1BTkRTXSwKW2ZvciBtZiBpbiAkQ09ORklHX0ZJTEVT
OyBkbwogICMgU3RyaXAgTUYgc28gd2UgZW5kIHVwIHdpdGggdGhlIG5hbWUgb2YgdGhlIGZpbGUu
CiAgbWY9YGVjaG8gIiRtZiIgfCBzZWQgLWUgJ3MvOi4qJC8vJ2AKICAjIENoZWNrIHdoZXRoZXIg
dGhpcyBpcyBhbiBBdXRvbWFrZSBnZW5lcmF0ZWQgTWFrZWZpbGUgb3Igbm90LgogICMgV2UgdXNl
ZCB0byBtYXRjaCBvbmx5IHRoZSBmaWxlcyBuYW1lZCBgTWFrZWZpbGUuaW4nLCBidXQKICAjIHNv
bWUgcGVvcGxlIHJlbmFtZSB0aGVtOyBzbyBpbnN0ZWFkIHdlIGxvb2sgYXQgdGhlIGZpbGUgY29u
dGVudC4KICAjIEdyZXAnaW5nIHRoZSBmaXJzdCBsaW5lIGlzIG5vdCBlbm91Z2g6IHNvbWUgcGVv
cGxlIHBvc3QtcHJvY2VzcwogICMgZWFjaCBNYWtlZmlsZS5pbiBhbmQgYWRkIGEgbmV3IGxpbmUg
b24gdG9wIG9mIGVhY2ggZmlsZSB0byBzYXkgc28uCiAgIyBTbyBsZXQncyBncmVwIHdob2xlIGZp
bGUuCiAgaWYgZ3JlcCAnXiMuKmdlbmVyYXRlZCBieSBhdXRvbWFrZScgJG1mID4gL2Rldi9udWxs
IDI+JjE7IHRoZW4KICAgIGRpcnBhcnQ9YEFTX0RJUk5BTUUoIiRtZiIpYAogIGVsc2UKICAgIGNv
bnRpbnVlCiAgZmkKICAjIEV4dHJhY3QgdGhlIGRlZmluaXRpb24gb2YgREVQRElSLCBhbV9faW5j
bHVkZSwgYW5kIGFtX19xdW90ZQogICMgZnJvbSB0aGUgTWFrZWZpbGUgd2l0aG91dCBydW5uaW5n
IGBtYWtlJy4KICBERVBESVI9YHNlZCAtbiAncy9eREVQRElSID0gLy9wJyA8ICIkbWYiYAogIHRl
c3QgLXogIiRERVBESVIiICYmIGNvbnRpbnVlCiAgYW1fX2luY2x1ZGU9YHNlZCAtbiAncy9eYW1f
X2luY2x1ZGUgPSAvL3AnIDwgIiRtZiJgCiAgdGVzdCAteiAiYW1fX2luY2x1ZGUiICYmIGNvbnRp
bnVlCiAgYW1fX3F1b3RlPWBzZWQgLW4gJ3MvXmFtX19xdW90ZSA9IC8vcCcgPCAiJG1mImAKICAj
IFdoZW4gdXNpbmcgYW5zaTJrbnIsIFUgbWF5IGJlIGVtcHR5IG9yIGFuIHVuZGVyc2NvcmU7IGV4
cGFuZCBpdAogIFU9YHNlZCAtbiAncy9eVSA9IC8vcCcgPCAiJG1mImAKICAjIEZpbmQgYWxsIGRl
cGVuZGVuY3kgb3V0cHV0IGZpbGVzLCB0aGV5IGFyZSBpbmNsdWRlZCBmaWxlcyB3aXRoCiAgIyAk
KERFUERJUikgaW4gdGhlaXIgbmFtZXMuICBXZSBpbnZva2Ugc2VkIHR3aWNlIGJlY2F1c2UgaXQg
aXMgdGhlCiAgIyBzaW1wbGVzdCBhcHByb2FjaCB0byBjaGFuZ2luZyAkKERFUERJUikgdG8gaXRz
IGFjdHVhbCB2YWx1ZSBpbiB0aGUKICAjIGV4cGFuc2lvbi4KICBmb3IgZmlsZSBpbiBgc2VkIC1u
ICIKICAgIHMvXiRhbV9faW5jbHVkZSAkYW1fX3F1b3RlXCguKihERVBESVIpLipcKSRhbV9fcXVv
dGUiJyQvXDEvcCcgPCIkbWYiIHwgXAogICAgICAgc2VkIC1lICdzL1wkKERFUERJUikvJyIkREVQ
RElSIicvZycgLWUgJ3MvXCRVLyciJFUiJy9nJ2A7IGRvCiAgICAjIE1ha2Ugc3VyZSB0aGUgZGly
ZWN0b3J5IGV4aXN0cy4KICAgIHRlc3QgLWYgIiRkaXJwYXJ0LyRmaWxlIiAmJiBjb250aW51ZQog
ICAgZmRpcj1gQVNfRElSTkFNRShbIiRmaWxlIl0pYAogICAgQVNfTUtESVJfUChbJGRpcnBhcnQv
JGZkaXJdKQogICAgIyBlY2hvICJjcmVhdGluZyAkZGlycGFydC8kZmlsZSIKICAgIGVjaG8gJyMg
ZHVtbXknID4gIiRkaXJwYXJ0LyRmaWxlIgogIGRvbmUKZG9uZQpdKSMgX0FNX09VVFBVVF9ERVBF
TkRFTkNZX0NPTU1BTkRTCgoKIyBBTV9PVVRQVVRfREVQRU5ERU5DWV9DT01NQU5EUwojIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBtYWNybyBzaG91bGQgb25seSBiZSBpbnZv
a2VkIG9uY2UgLS0gdXNlIHZpYSBBQ19SRVFVSVJFLgojCiMgVGhpcyBjb2RlIGlzIG9ubHkgcmVx
dWlyZWQgd2hlbiBhdXRvbWF0aWMgZGVwZW5kZW5jeSB0cmFja2luZwojIGlzIGVuYWJsZWQuICBG
SVhNRS4gIFRoaXMgY3JlYXRlcyBlYWNoIGAuUCcgZmlsZSB0aGF0IHdlIHdpbGwKIyBuZWVkIGlu
IG9yZGVyIHRvIGJvb3RzdHJhcCB0aGUgZGVwZW5kZW5jeSBoYW5kbGluZyBjb2RlLgpBQ19ERUZV
TihbQU1fT1VUUFVUX0RFUEVOREVOQ1lfQ09NTUFORFNdLApbQUNfQ09ORklHX0NPTU1BTkRTKFtk
ZXBmaWxlc10sCiAgICAgW3Rlc3QgeCIkQU1ERVBfVFJVRSIgIT0geCIiIHx8IF9BTV9PVVRQVVRf
REVQRU5ERU5DWV9DT01NQU5EU10sCiAgICAgW0FNREVQX1RSVUU9IiRBTURFUF9UUlVFIiBhY19h
dXhfZGlyPSIkYWNfYXV4X2RpciJdKQpdKQoKIyBEbyBhbGwgdGhlIHdvcmsgZm9yIEF1dG9tYWtl
LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQoKIyBDb3B5cmln
aHQgKEMpIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsIDIwMDMsIDIw
MDQsIDIwMDUKIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmlsZSBp
cyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMgdW5s
aW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRoIG9y
IHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2
ZWQuCgojIHNlcmlhbCAxMgoKIyBUaGlzIG1hY3JvIGFjdHVhbGx5IGRvZXMgdG9vIG11Y2guICBT
b21lIGNoZWNrcyBhcmUgb25seSBuZWVkZWQgaWYKIyB5b3VyIHBhY2thZ2UgZG9lcyBjZXJ0YWlu
IHRoaW5ncy4gIEJ1dCB0aGlzIGlzbid0IHJlYWxseSBhIGJpZyBkZWFsLgoKIyBBTV9JTklUX0FV
VE9NQUtFKFBBQ0tBR0UsIFZFUlNJT04sIFtOTy1ERUZJTkVdKQojIEFNX0lOSVRfQVVUT01BS0Uo
W09QVElPTlNdKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCiMgVGhlIGNhbGwgd2l0aCBQQUNLQUdFIGFuZCBWRVJTSU9OIGFyZ3VtZW50cyBpcyB0aGUg
b2xkIHN0eWxlCiMgY2FsbCAocHJlIGF1dG9jb25mLTIuNTApLCB3aGljaCBpcyBiZWluZyBwaGFz
ZWQgb3V0LiAgUEFDS0FHRQojIGFuZCBWRVJTSU9OIHNob3VsZCBub3cgYmUgcGFzc2VkIHRvIEFD
X0lOSVQgYW5kIHJlbW92ZWQgZnJvbQojIHRoZSBjYWxsIHRvIEFNX0lOSVRfQVVUT01BS0UuCiMg
V2Ugc3VwcG9ydCBib3RoIGNhbGwgc3R5bGVzIGZvciB0aGUgdHJhbnNpdGlvbi4gIEFmdGVyCiMg
dGhlIG5leHQgQXV0b21ha2UgcmVsZWFzZSwgQXV0b2NvbmYgY2FuIG1ha2UgdGhlIEFDX0lOSVQK
IyBhcmd1bWVudHMgbWFuZGF0b3J5LCBhbmQgdGhlbiB3ZSBjYW4gZGVwZW5kIG9uIGEgbmV3IEF1
dG9jb25mCiMgcmVsZWFzZSBhbmQgZHJvcCB0aGUgb2xkIGNhbGwgc3VwcG9ydC4KQUNfREVGVU4o
W0FNX0lOSVRfQVVUT01BS0VdLApbQUNfUFJFUkVRKFsyLjU4XSlkbmwKZG5sIEF1dG9jb25mIHdh
bnRzIHRvIGRpc2FsbG93IEFNXyBuYW1lcy4gIFdlIGV4cGxpY2l0bHkgYWxsb3cKZG5sIHRoZSBv
bmVzIHdlIGNhcmUgYWJvdXQuCm00X3BhdHRlcm5fYWxsb3coW15BTV9bQS1aXStGTEFHUyRdKWRu
bApBQ19SRVFVSVJFKFtBTV9TRVRfQ1VSUkVOVF9BVVRPTUFLRV9WRVJTSU9OXSlkbmwKQUNfUkVR
VUlSRShbQUNfUFJPR19JTlNUQUxMXSlkbmwKIyB0ZXN0IHRvIHNlZSBpZiBzcmNkaXIgYWxyZWFk
eSBjb25maWd1cmVkCmlmIHRlc3QgImBjZCAkc3JjZGlyICYmIHB3ZGAiICE9ICJgcHdkYCIgJiYK
ICAgdGVzdCAtZiAkc3JjZGlyL2NvbmZpZy5zdGF0dXM7IHRoZW4KICBBQ19NU0dfRVJST1IoW3Nv
dXJjZSBkaXJlY3RvcnkgYWxyZWFkeSBjb25maWd1cmVkOyBydW4gIm1ha2UgZGlzdGNsZWFuIiB0
aGVyZSBmaXJzdF0pCmZpCgojIHRlc3Qgd2hldGhlciB3ZSBoYXZlIGN5Z3BhdGgKaWYgdGVzdCAt
eiAiJENZR1BBVEhfVyI7IHRoZW4KICBpZiAoY3lncGF0aCAtLXZlcnNpb24pID4vZGV2L251bGwg
Mj4vZGV2L251bGw7IHRoZW4KICAgIENZR1BBVEhfVz0nY3lncGF0aCAtdycKICBlbHNlCiAgICBD
WUdQQVRIX1c9ZWNobwogIGZpCmZpCkFDX1NVQlNUKFtDWUdQQVRIX1ddKQoKIyBEZWZpbmUgdGhl
IGlkZW50aXR5IG9mIHRoZSBwYWNrYWdlLgpkbmwgRGlzdGluZ3Vpc2ggYmV0d2VlbiBvbGQtc3R5
bGUgYW5kIG5ldy1zdHlsZSBjYWxscy4KbTRfaWZ2YWwoWyQyXSwKW200X2lmdmFsKFskM10sIFtf
QU1fU0VUX09QVElPTihbbm8tZGVmaW5lXSldKWRubAogQUNfU1VCU1QoW1BBQ0tBR0VdLCBbJDFd
KWRubAogQUNfU1VCU1QoW1ZFUlNJT05dLCBbJDJdKV0sCltfQU1fU0VUX09QVElPTlMoWyQxXSlk
bmwKIEFDX1NVQlNUKFtQQUNLQUdFXSwgWydBQ19QQUNLQUdFX1RBUk5BTUUnXSlkbmwKIEFDX1NV
QlNUKFtWRVJTSU9OXSwgWydBQ19QQUNLQUdFX1ZFUlNJT04nXSldKWRubAoKX0FNX0lGX09QVElP
Tihbbm8tZGVmaW5lXSwsCltBQ19ERUZJTkVfVU5RVU9URUQoUEFDS0FHRSwgIiRQQUNLQUdFIiwg
W05hbWUgb2YgcGFja2FnZV0pCiBBQ19ERUZJTkVfVU5RVU9URUQoVkVSU0lPTiwgIiRWRVJTSU9O
IiwgW1ZlcnNpb24gbnVtYmVyIG9mIHBhY2thZ2VdKV0pZG5sCgojIFNvbWUgdG9vbHMgQXV0b21h
a2UgbmVlZHMuCkFDX1JFUVVJUkUoW0FNX1NBTklUWV9DSEVDS10pZG5sCkFDX1JFUVVJUkUoW0FD
X0FSR19QUk9HUkFNXSlkbmwKQU1fTUlTU0lOR19QUk9HKEFDTE9DQUwsIGFjbG9jYWwtJHthbV9f
YXBpX3ZlcnNpb259KQpBTV9NSVNTSU5HX1BST0coQVVUT0NPTkYsIGF1dG9jb25mKQpBTV9NSVNT
SU5HX1BST0coQVVUT01BS0UsIGF1dG9tYWtlLSR7YW1fX2FwaV92ZXJzaW9ufSkKQU1fTUlTU0lO
R19QUk9HKEFVVE9IRUFERVIsIGF1dG9oZWFkZXIpCkFNX01JU1NJTkdfUFJPRyhNQUtFSU5GTywg
bWFrZWluZm8pCkFNX1BST0dfSU5TVEFMTF9TSApBTV9QUk9HX0lOU1RBTExfU1RSSVAKQUNfUkVR
VUlSRShbQU1fUFJPR19NS0RJUl9QXSlkbmwKIyBXZSBuZWVkIGF3ayBmb3IgdGhlICJjaGVjayIg
dGFyZ2V0LiAgVGhlIHN5c3RlbSAiYXdrIiBpcyBiYWQgb24KIyBzb21lIHBsYXRmb3Jtcy4KQUNf
UkVRVUlSRShbQUNfUFJPR19BV0tdKWRubApBQ19SRVFVSVJFKFtBQ19QUk9HX01BS0VfU0VUXSlk
bmwKQUNfUkVRVUlSRShbQU1fU0VUX0xFQURJTkdfRE9UXSlkbmwKX0FNX0lGX09QVElPTihbdGFy
LXVzdGFyXSwgW19BTV9QUk9HX1RBUihbdXN0YXJdKV0sCiAgICAgICAgICAgICAgW19BTV9JRl9P
UFRJT04oW3Rhci1wYXhdLCBbX0FNX1BST0dfVEFSKFtwYXhdKV0sCgkgICAgICAJCSAgICAgW19B
TV9QUk9HX1RBUihbdjddKV0pXSkKX0FNX0lGX09QVElPTihbbm8tZGVwZW5kZW5jaWVzXSwsCltB
Q19QUk9WSURFX0lGRUxTRShbQUNfUFJPR19DQ10sCiAgICAgICAgICAgICAgICAgIFtfQU1fREVQ
RU5ERU5DSUVTKENDKV0sCiAgICAgICAgICAgICAgICAgIFtkZWZpbmUoW0FDX1BST0dfQ0NdLAog
ICAgICAgICAgICAgICAgICAgICAgICAgIGRlZm4oW0FDX1BST0dfQ0NdKVtfQU1fREVQRU5ERU5D
SUVTKENDKV0pXSlkbmwKQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfQ1hYXSwKICAgICAgICAg
ICAgICAgICAgW19BTV9ERVBFTkRFTkNJRVMoQ1hYKV0sCiAgICAgICAgICAgICAgICAgIFtkZWZp
bmUoW0FDX1BST0dfQ1hYXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZuKFtBQ19QUk9H
X0NYWF0pW19BTV9ERVBFTkRFTkNJRVMoQ1hYKV0pXSlkbmwKXSkKXSkKCgojIFdoZW4gY29uZmln
LnN0YXR1cyBnZW5lcmF0ZXMgYSBoZWFkZXIsIHdlIG11c3QgdXBkYXRlIHRoZSBzdGFtcC1oIGZp
bGUuCiMgVGhpcyBmaWxlIHJlc2lkZXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBjb25m
aWcgaGVhZGVyCiMgdGhhdCBpcyBnZW5lcmF0ZWQuICBUaGUgc3RhbXAgZmlsZXMgYXJlIG51bWJl
cmVkIHRvIGhhdmUgZGlmZmVyZW50IG5hbWVzLgoKIyBBdXRvY29uZiBjYWxscyBfQUNfQU1fQ09O
RklHX0hFQURFUl9IT09LICh3aGVuIGRlZmluZWQpIGluIHRoZQojIGxvb3Agd2hlcmUgY29uZmln
LnN0YXR1cyBjcmVhdGVzIHRoZSBoZWFkZXJzLCBzbyB3ZSBjYW4gZ2VuZXJhdGUKIyBvdXIgc3Rh
bXAgZmlsZXMgdGhlcmUuCkFDX0RFRlVOKFtfQUNfQU1fQ09ORklHX0hFQURFUl9IT09LXSwKWyMg
Q29tcHV0ZSAkMSdzIGluZGV4IGluICRjb25maWdfaGVhZGVycy4KX2FtX3N0YW1wX2NvdW50PTEK
Zm9yIF9hbV9oZWFkZXIgaW4gJGNvbmZpZ19oZWFkZXJzIDo7IGRvCiAgY2FzZSAkX2FtX2hlYWRl
ciBpbgogICAgJDEgfCAkMToqICkKICAgICAgYnJlYWsgOzsKICAgICogKQogICAgICBfYW1fc3Rh
bXBfY291bnQ9YGV4cHIgJF9hbV9zdGFtcF9jb3VudCArIDFgIDs7CiAgZXNhYwpkb25lCmVjaG8g
InRpbWVzdGFtcCBmb3IgJDEiID5gQVNfRElSTkFNRShbJDFdKWAvc3RhbXAtaFtdJF9hbV9zdGFt
cF9jb3VudF0pCgojIENvcHlyaWdodCAoQykgMjAwMSwgMjAwMywgMjAwNSAgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uLCBJbmMuCiMKIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbgojIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNv
cHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCiMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMs
IGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgoKIyBBTV9QUk9HX0lOU1RBTExf
U0gKIyAtLS0tLS0tLS0tLS0tLS0tLS0KIyBEZWZpbmUgJGluc3RhbGxfc2guCkFDX0RFRlVOKFtB
TV9QUk9HX0lOU1RBTExfU0hdLApbQUNfUkVRVUlSRShbQU1fQVVYX0RJUl9FWFBBTkRdKWRubApp
bnN0YWxsX3NoPSR7aW5zdGFsbF9zaC0iJGFtX2F1eF9kaXIvaW5zdGFsbC1zaCJ9CkFDX1NVQlNU
KGluc3RhbGxfc2gpXSkKCiMgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA1ICBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29w
eSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywg
YXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCgojIHNlcmlhbCAyCgojIENoZWNr
IHdoZXRoZXIgdGhlIHVuZGVybHlpbmcgZmlsZS1zeXN0ZW0gc3VwcG9ydHMgZmlsZW5hbWVzCiMg
d2l0aCBhIGxlYWRpbmcgZG90LiAgRm9yIGluc3RhbmNlIE1TLURPUyBkb2Vzbid0LgpBQ19ERUZV
TihbQU1fU0VUX0xFQURJTkdfRE9UXSwKW3JtIC1yZiAudHN0IDI+L2Rldi9udWxsCm1rZGlyIC50
c3QgMj4vZGV2L251bGwKaWYgdGVzdCAtZCAudHN0OyB0aGVuCiAgYW1fX2xlYWRpbmdfZG90PS4K
ZWxzZQogIGFtX19sZWFkaW5nX2RvdD1fCmZpCnJtZGlyIC50c3QgMj4vZGV2L251bGwKQUNfU1VC
U1QoW2FtX19sZWFkaW5nX2RvdF0pXSkKCiMgQ2hlY2sgdG8gc2VlIGhvdyAnbWFrZScgdHJlYXRz
IGluY2x1ZGVzLgkgICAgICAgICAgICAtKi0gQXV0b2NvbmYgLSotCgojIENvcHlyaWdodCAoQykg
MjAwMSwgMjAwMiwgMjAwMywgMjAwNSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMK
IyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgojIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUg
aXQsCiMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3Rp
Y2UgaXMgcHJlc2VydmVkLgoKIyBzZXJpYWwgMwoKIyBBTV9NQUtFX0lOQ0xVREUoKQojIC0tLS0t
LS0tLS0tLS0tLS0tCiMgQ2hlY2sgdG8gc2VlIGhvdyBtYWtlIHRyZWF0cyBpbmNsdWRlcy4KQUNf
REVGVU4oW0FNX01BS0VfSU5DTFVERV0sClthbV9tYWtlPSR7TUFLRS1tYWtlfQpjYXQgPiBjb25m
aW5jIDw8ICdFTkQnCmFtX19kb2l0OgoJQGVjaG8gZG9uZQouUEhPTlk6IGFtX19kb2l0CkVORAoj
IElmIHdlIGRvbid0IGZpbmQgYW4gaW5jbHVkZSBkaXJlY3RpdmUsIGp1c3QgY29tbWVudCBvdXQg
dGhlIGNvZGUuCkFDX01TR19DSEVDS0lORyhbZm9yIHN0eWxlIG9mIGluY2x1ZGUgdXNlZCBieSAk
YW1fbWFrZV0pCmFtX19pbmNsdWRlPSIjIgphbV9fcXVvdGU9Cl9hbV9yZXN1bHQ9bm9uZQojIEZp
cnN0IHRyeSBHTlUgbWFrZSBzdHlsZSBpbmNsdWRlLgplY2hvICJpbmNsdWRlIGNvbmZpbmMiID4g
Y29uZm1mCiMgV2UgZ3JlcCBvdXQgYEVudGVyaW5nIGRpcmVjdG9yeScgYW5kIGBMZWF2aW5nIGRp
cmVjdG9yeScKIyBtZXNzYWdlcyB3aGljaCBjYW4gb2NjdXIgaWYgYHcnIGVuZHMgdXAgaW4gTUFL
RUZMQUdTLgojIEluIHBhcnRpY3VsYXIgd2UgZG9uJ3QgbG9vayBhdCBgXm1ha2U6JyBiZWNhdXNl
IEdOVSBtYWtlIG1pZ2h0CiMgYmUgaW52b2tlZCB1bmRlciBzb21lIG90aGVyIG5hbWUgKHVzdWFs
bHkgImdtYWtlIiksIGluIHdoaWNoCiMgY2FzZSBpdCBwcmludHMgaXRzIG5ldyBuYW1lIGluc3Rl
YWQgb2YgYG1ha2UnLgppZiB0ZXN0ICJgJGFtX21ha2UgLXMgLWYgY29uZm1mIDI+IC9kZXYvbnVs
bCB8IGdyZXAgLXYgJ2luZyBkaXJlY3RvcnknYCIgPSAiZG9uZSI7IHRoZW4KICAgYW1fX2luY2x1
ZGU9aW5jbHVkZQogICBhbV9fcXVvdGU9CiAgIF9hbV9yZXN1bHQ9R05VCmZpCiMgTm93IHRyeSBC
U0QgbWFrZSBzdHlsZSBpbmNsdWRlLgppZiB0ZXN0ICIkYW1fX2luY2x1ZGUiID0gIiMiOyB0aGVu
CiAgIGVjaG8gJy5pbmNsdWRlICJjb25maW5jIicgPiBjb25mbWYKICAgaWYgdGVzdCAiYCRhbV9t
YWtlIC1zIC1mIGNvbmZtZiAyPiAvZGV2L251bGxgIiA9ICJkb25lIjsgdGhlbgogICAgICBhbV9f
aW5jbHVkZT0uaW5jbHVkZQogICAgICBhbV9fcXVvdGU9IlwiIgogICAgICBfYW1fcmVzdWx0PUJT
RAogICBmaQpmaQpBQ19TVUJTVChbYW1fX2luY2x1ZGVdKQpBQ19TVUJTVChbYW1fX3F1b3RlXSkK
QUNfTVNHX1JFU1VMVChbJF9hbV9yZXN1bHRdKQpybSAtZiBjb25maW5jIGNvbmZtZgpdKQoKIyBG
YWtlIHRoZSBleGlzdGVuY2Ugb2YgcHJvZ3JhbXMgdGhhdCBHTlUgbWFpbnRhaW5lcnMgdXNlLiAg
LSotIEF1dG9jb25mIC0qLQoKIyBDb3B5cmlnaHQgKEMpIDE5OTcsIDE5OTksIDIwMDAsIDIwMDEs
IDIwMDMsIDIwMDUKIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmls
ZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMg
dW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVz
ZXJ2ZWQuCgojIHNlcmlhbCA0CgojIEFNX01JU1NJTkdfUFJPRyhOQU1FLCBQUk9HUkFNKQojIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpBQ19ERUZVTihbQU1fTUlTU0lOR19QUk9HXSwK
W0FDX1JFUVVJUkUoW0FNX01JU1NJTkdfSEFTX1JVTl0pCiQxPSR7JDEtIiR7YW1fbWlzc2luZ19y
dW59JDIifQpBQ19TVUJTVCgkMSldKQoKCiMgQU1fTUlTU0lOR19IQVNfUlVOCiMgLS0tLS0tLS0t
LS0tLS0tLS0tCiMgRGVmaW5lIE1JU1NJTkcgaWYgbm90IGRlZmluZWQgc28gZmFyIGFuZCB0ZXN0
IGlmIGl0IHN1cHBvcnRzIC0tcnVuLgojIElmIGl0IGRvZXMsIHNldCBhbV9taXNzaW5nX3J1biB0
byB1c2UgaXQsIG90aGVyd2lzZSwgdG8gbm90aGluZy4KQUNfREVGVU4oW0FNX01JU1NJTkdfSEFT
X1JVTl0sCltBQ19SRVFVSVJFKFtBTV9BVVhfRElSX0VYUEFORF0pZG5sCnRlc3QgeCIke01JU1NJ
Tkcrc2V0fSIgPSB4c2V0IHx8IE1JU1NJTkc9Ilwke1NIRUxMfSAkYW1fYXV4X2Rpci9taXNzaW5n
IgojIFVzZSBldmFsIHRvIGV4cGFuZCAkU0hFTEwKaWYgZXZhbCAiJE1JU1NJTkcgLS1ydW4gdHJ1
ZSI7IHRoZW4KICBhbV9taXNzaW5nX3J1bj0iJE1JU1NJTkcgLS1ydW4gIgplbHNlCiAgYW1fbWlz
c2luZ19ydW49CiAgQUNfTVNHX1dBUk4oW2BtaXNzaW5nJyBzY3JpcHQgaXMgdG9vIG9sZCBvciBt
aXNzaW5nXSkKZmkKXSkKCiMgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA0LCAyMDA1ICBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIwojIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0
aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24g
dG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0
aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCgojIEFNX1BST0dfTUtE
SVJfUAojIC0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHdoZXRoZXIgYG1rZGlyIC1wJyBpcyBzdXBw
b3J0ZWQsIGZhbGxiYWNrIHRvIG1raW5zdGFsbGRpcnMgb3RoZXJ3aXNlLgojCiMgQXV0b21ha2Ug
MS44IHVzZWQgYG1rZGlyIC1tIDA3NTUgLXAgLS0nIHRvIGVuc3VyZSB0aGF0IGRpcmVjdG9yaWVz
CiMgY3JlYXRlZCBieSBgbWFrZSBpbnN0YWxsJyBhcmUgYWx3YXlzIHdvcmxkIHJlYWRhYmxlLCBl
dmVuIGlmIHRoZQojIGluc3RhbGxlciBoYXBwZW5zIHRvIGhhdmUgYW4gb3Zlcmx5IHJlc3RyaWN0
aXZlIHVtYXNrIChlLmcuIDA3NykuCiMgVGhpcyB3YXMgYSBtaXN0YWtlLiAgVGhlcmUgYXJlIGF0
IGxlYXN0IHR3byByZWFzb25zIHdoeSB3ZSBtdXN0IG5vdAojIHVzZSBgLW0gMDc1NSc6CiMgICAt
IGl0IGNhdXNlcyBzcGVjaWFsIGJpdHMgbGlrZSBTR0lEIHRvIGJlIGlnbm9yZWQsCiMgICAtIGl0
IG1heSBiZSB0b28gcmVzdHJpY3RpdmUgKHNvbWUgc2V0dXBzIGV4cGVjdCA3NzUgZGlyZWN0b3Jp
ZXMpLgojCiMgRG8gbm90IHVzZSAtbSAwNzU1IGFuZCBsZXQgcGVvcGxlIGNob29zZSB3aGF0ZXZl
ciB0aGV5IGV4cGVjdCBieQojIHNldHRpbmcgdW1hc2suCiMKIyBXZSBjYW5ub3QgYWNjZXB0IGFu
eSBpbXBsZW1lbnRhdGlvbiBvZiBgbWtkaXInIHRoYXQgcmVjb2duaXplcyBgLXAnLgojIFNvbWUg
aW1wbGVtZW50YXRpb25zIChzdWNoIGFzIFNvbGFyaXMgOCdzKSBhcmUgbm90IHRocmVhZC1zYWZl
OiBpZiBhCiMgcGFyYWxsZWwgbWFrZSB0cmllcyB0byBydW4gYG1rZGlyIC1wIGEvYicgYW5kIGBt
a2RpciAtcCBhL2MnCiMgY29uY3VycmVudGx5LCBib3RoIHZlcnNpb24gY2FuIGRldGVjdCB0aGF0
IGEvIGlzIG1pc3NpbmcsIGJ1dCBvbmx5CiMgb25lIGNhbiBjcmVhdGUgaXQgYW5kIHRoZSBvdGhl
ciB3aWxsIGVycm9yIG91dC4gIENvbnNlcXVlbnRseSB3ZQojIHJlc3RyaWN0IG91cnNlbHZlcyB0
byBHTlUgbWFrZSAodXNpbmcgdGhlIC0tdmVyc2lvbiBvcHRpb24gZW5zdXJlcwojIHRoaXMuKQpB
Q19ERUZVTihbQU1fUFJPR19NS0RJUl9QXSwKW2lmIG1rZGlyIC1wIC0tdmVyc2lvbiAuID4vZGV2
L251bGwgMj4mMSAmJiB0ZXN0ICEgLWQgLi8tLXZlcnNpb247IHRoZW4KICAjIFdlIHVzZWQgdG8g
a2VlcGluZyB0aGUgYC4nIGFzIGZpcnN0IGFyZ3VtZW50LCBpbiBvcmRlciB0bwogICMgYWxsb3cg
JChta2Rpcl9wKSB0byBiZSB1c2VkIHdpdGhvdXQgYXJndW1lbnQuICBBcyBpbgogICMgICAkKG1r
ZGlyX3ApICQoc29tZWRpcikKICAjIHdoZXJlICQoc29tZWRpcikgaXMgY29uZGl0aW9uYWxseSBk
ZWZpbmVkLiAgSG93ZXZlciB0aGlzIGlzIHdyb25nCiAgIyBmb3IgdHdvIHJlYXNvbnM6CiAgIyAg
MS4gaWYgdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkIGJ5IGEgdXNlciB3aG8gY2Fubm90IHdyaXRl
IGAuJwogICMgICAgIG1ha2UgaW5zdGFsbCB3aWxsIGZhaWwsCiAgIyAgMi4gdGhlIGFib3ZlIGNv
bW1lbnQgc2hvdWxkIG1vc3QgY2VydGFpbmx5IHJlYWQKICAjICAgICAkKG1rZGlyX3ApICQoREVT
VERJUikkKHNvbWVkaXIpCiAgIyAgICAgc28gaXQgZG9lcyBub3Qgd29yayB3aGVuICQoc29tZWRp
cikgaXMgdW5kZWZpbmVkIGFuZAogICMgICAgICQoREVTVERJUikgaXMgbm90LgogICMgIFRvIHN1
cHBvcnQgdGhlIGxhdHRlciBjYXNlLCB3ZSBoYXZlIHRvIHdyaXRlCiAgIyAgICAgdGVzdCAteiAi
JChzb21lZGlyKSIgfHwgJChta2Rpcl9wKSAkKERFU1RESVIpJChzb21lZGlyKSwKICAjICBzbyB0
aGUgYC4nIHRyaWNrIGlzIHBvaW50bGVzcy4KICBta2Rpcl9wPSdta2RpciAtcCAtLScKZWxzZQog
ICMgT24gTmV4dFN0ZXAgYW5kIE9wZW5TdGVwLCB0aGUgYG1rZGlyJyBjb21tYW5kIGRvZXMgbm90
CiAgIyByZWNvZ25pemUgYW55IG9wdGlvbi4gIEl0IHdpbGwgaW50ZXJwcmV0IGFsbCBvcHRpb25z
IGFzCiAgIyBkaXJlY3RvcmllcyB0byBjcmVhdGUsIGFuZCB0aGVuIGFib3J0IGJlY2F1c2UgYC4n
IGFscmVhZHkKICAjIGV4aXN0cy4KICBmb3IgZCBpbiAuLy1wIC4vLS12ZXJzaW9uOwogIGRvCiAg
ICB0ZXN0IC1kICRkICYmIHJtZGlyICRkCiAgZG9uZQogICMgJChta2luc3RhbGxkaXJzKSBpcyBk
ZWZpbmVkIGJ5IEF1dG9tYWtlIGlmIG1raW5zdGFsbGRpcnMgZXhpc3RzLgogIGlmIHRlc3QgLWYg
IiRhY19hdXhfZGlyL21raW5zdGFsbGRpcnMiOyB0aGVuCiAgICBta2Rpcl9wPSckKG1raW5zdGFs
bGRpcnMpJwogIGVsc2UKICAgIG1rZGlyX3A9JyQoaW5zdGFsbF9zaCkgLWQnCiAgZmkKZmkKQUNf
U1VCU1QoW21rZGlyX3BdKV0pCgojIEhlbHBlciBmdW5jdGlvbnMgZm9yIG9wdGlvbiBoYW5kbGlu
Zy4gICAgICAgICAgICAgICAgICAgICAtKi0gQXV0b2NvbmYgLSotCgojIENvcHlyaWdodCAoQykg
MjAwMSwgMjAwMiwgMjAwMywgMjAwNSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMK
IyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bgojIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUg
aXQsCiMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3Rp
Y2UgaXMgcHJlc2VydmVkLgoKIyBzZXJpYWwgMwoKIyBfQU1fTUFOR0xFX09QVElPTihOQU1FKQoj
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkFDX0RFRlVOKFtfQU1fTUFOR0xFX09QVElPTl0sCltb
X0FNX09QVElPTl9dbTRfYnBhdHN1YnN0KCQxLCBbW15hLXpBLVowLTlfXV0sIFtfXSldKQoKIyBf
QU1fU0VUX09QVElPTihOQU1FKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNl
dCBvcHRpb24gTkFNRS4gIFByZXNlbnRseSB0aGF0IG9ubHkgbWVhbnMgZGVmaW5pbmcgYSBmbGFn
IGZvciB0aGlzIG9wdGlvbi4KQUNfREVGVU4oW19BTV9TRVRfT1BUSU9OXSwKW200X2RlZmluZShf
QU1fTUFOR0xFX09QVElPTihbJDFdKSwgMSldKQoKIyBfQU1fU0VUX09QVElPTlMoT1BUSU9OUykK
IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgT1BUSU9OUyBpcyBhIHNwYWNl
LXNlcGFyYXRlZCBsaXN0IG9mIEF1dG9tYWtlIG9wdGlvbnMuCkFDX0RFRlVOKFtfQU1fU0VUX09Q
VElPTlNdLApbQUNfRk9SRUFDSChbX0FNX09wdGlvbl0sIFskMV0sIFtfQU1fU0VUX09QVElPTihf
QU1fT3B0aW9uKV0pXSkKCiMgX0FNX0lGX09QVElPTihPUFRJT04sIElGLVNFVCwgW0lGLU5PVC1T
RVRdKQojIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBFeGVj
dXRlIElGLVNFVCBpZiBPUFRJT04gaXMgc2V0LCBJRi1OT1QtU0VUIG90aGVyd2lzZS4KQUNfREVG
VU4oW19BTV9JRl9PUFRJT05dLApbbTRfaWZzZXQoX0FNX01BTkdMRV9PUFRJT04oWyQxXSksIFsk
Ml0sIFskM10pXSkKCiMgQ2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGJ1aWxkIGVudmlyb25t
ZW50IGlzIHNhbmUuICAgIC0qLSBBdXRvY29uZiAtKi0KCiMgQ29weXJpZ2h0IChDKSAxOTk2LCAx
OTk3LCAyMDAwLCAyMDAxLCAyMDAzLCAyMDA1CiMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ
bmMuCiMKIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbgojIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3Ry
aWJ1dGUgaXQsCiMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhp
cyBub3RpY2UgaXMgcHJlc2VydmVkLgoKIyBzZXJpYWwgNAoKIyBBTV9TQU5JVFlfQ0hFQ0sKIyAt
LS0tLS0tLS0tLS0tLS0KQUNfREVGVU4oW0FNX1NBTklUWV9DSEVDS10sCltBQ19NU0dfQ0hFQ0tJ
TkcoW3doZXRoZXIgYnVpbGQgZW52aXJvbm1lbnQgaXMgc2FuZV0pCiMgSnVzdCBpbiBjYXNlCnNs
ZWVwIDEKZWNobyB0aW1lc3RhbXAgPiBjb25mdGVzdC5maWxlCiMgRG8gYHNldCcgaW4gYSBzdWJz
aGVsbCBzbyB3ZSBkb24ndCBjbG9iYmVyIHRoZSBjdXJyZW50IHNoZWxsJ3MKIyBhcmd1bWVudHMu
ICBNdXN0IHRyeSAtTCBmaXJzdCBpbiBjYXNlIGNvbmZpZ3VyZSBpcyBhY3R1YWxseSBhCiMgc3lt
bGluazsgc29tZSBzeXN0ZW1zIHBsYXkgd2VpcmQgZ2FtZXMgd2l0aCB0aGUgbW9kIHRpbWUgb2Yg
c3ltbGlua3MKIyAoZWcgRnJlZUJTRCByZXR1cm5zIHRoZSBtb2QgdGltZSBvZiB0aGUgc3ltbGlu
aydzIGNvbnRhaW5pbmcKIyBkaXJlY3RvcnkpLgppZiAoCiAgIHNldCBYIGBscyAtTHQgJHNyY2Rp
ci9jb25maWd1cmUgY29uZnRlc3QuZmlsZSAyPiAvZGV2L251bGxgCiAgIGlmIHRlc3QgIiRbKl0i
ID0gIlgiOyB0aGVuCiAgICAgICMgLUwgZGlkbid0IHdvcmsuCiAgICAgIHNldCBYIGBscyAtdCAk
c3JjZGlyL2NvbmZpZ3VyZSBjb25mdGVzdC5maWxlYAogICBmaQogICBybSAtZiBjb25mdGVzdC5m
aWxlCiAgIGlmIHRlc3QgIiRbKl0iICE9ICJYICRzcmNkaXIvY29uZmlndXJlIGNvbmZ0ZXN0LmZp
bGUiIFwKICAgICAgJiYgdGVzdCAiJFsqXSIgIT0gIlggY29uZnRlc3QuZmlsZSAkc3JjZGlyL2Nv
bmZpZ3VyZSI7IHRoZW4KCiAgICAgICMgSWYgbmVpdGhlciBtYXRjaGVkLCB0aGVuIHdlIGhhdmUg
YSBicm9rZW4gbHMuICBUaGlzIGNhbiBoYXBwZW4KICAgICAgIyBpZiwgZm9yIGluc3RhbmNlLCBD
T05GSUdfU0hFTEwgaXMgYmFzaCBhbmQgaXQgaW5oZXJpdHMgYQogICAgICAjIGJyb2tlbiBscyBh
bGlhcyBmcm9tIHRoZSBlbnZpcm9ubWVudC4gIFRoaXMgaGFzIGFjdHVhbGx5CiAgICAgICMgaGFw
cGVuZWQuICBTdWNoIGEgc3lzdGVtIGNvdWxkIG5vdCBiZSBjb25zaWRlcmVkICJzYW5lIi4KICAg
ICAgQUNfTVNHX0VSUk9SKFtscyAtdCBhcHBlYXJzIHRvIGZhaWwuICBNYWtlIHN1cmUgdGhlcmUg
aXMgbm90IGEgYnJva2VuCmFsaWFzIGluIHlvdXIgZW52aXJvbm1lbnRdKQogICBmaQoKICAgdGVz
dCAiJFsyXSIgPSBjb25mdGVzdC5maWxlCiAgICkKdGhlbgogICAjIE9rLgogICA6CmVsc2UKICAg
QUNfTVNHX0VSUk9SKFtuZXdseSBjcmVhdGVkIGZpbGUgaXMgb2xkZXIgdGhhbiBkaXN0cmlidXRl
ZCBmaWxlcyEKQ2hlY2sgeW91ciBzeXN0ZW0gY2xvY2tdKQpmaQpBQ19NU0dfUkVTVUxUKHllcyld
KQoKIyBDb3B5cmlnaHQgKEMpIDIwMDEsIDIwMDMsIDIwMDUgIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbiwgSW5jLgojCiMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3
YXJlIEZvdW5kYXRpb24KIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9v
ciBkaXN0cmlidXRlIGl0LAojIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25n
IGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KCiMgQU1fUFJPR19JTlNUQUxMX1NUUklQCiMg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgT25lIGlzc3VlIHdpdGggdmVuZG9yIGBpbnN0YWxsJyAo
ZXZlbiBHTlUpIGlzIHRoYXQgeW91IGNhbid0CiMgc3BlY2lmeSB0aGUgcHJvZ3JhbSB1c2VkIHRv
IHN0cmlwIGJpbmFyaWVzLiAgVGhpcyBpcyBlc3BlY2lhbGx5CiMgYW5ub3lpbmcgaW4gY3Jvc3Mt
Y29tcGlsaW5nIGVudmlyb25tZW50cywgd2hlcmUgdGhlIGJ1aWxkJ3Mgc3RyaXAKIyBpcyB1bmxp
a2VseSB0byBoYW5kbGUgdGhlIGhvc3QncyBiaW5hcmllcy4KIyBGb3J0dW5hdGVseSBpbnN0YWxs
LXNoIHdpbGwgaG9ub3IgYSBTVFJJUFBST0cgdmFyaWFibGUsIHNvIHdlCiMgYWx3YXlzIHVzZSBp
bnN0YWxsLXNoIGluIGBtYWtlIGluc3RhbGwtc3RyaXAnLCBhbmQgaW5pdGlhbGl6ZQojIFNUUklQ
UFJPRyB3aXRoIHRoZSB2YWx1ZSBvZiB0aGUgU1RSSVAgdmFyaWFibGUgKHNldCBieSB0aGUgdXNl
cikuCkFDX0RFRlVOKFtBTV9QUk9HX0lOU1RBTExfU1RSSVBdLApbQUNfUkVRVUlSRShbQU1fUFJP
R19JTlNUQUxMX1NIXSlkbmwKIyBJbnN0YWxsZWQgYmluYXJpZXMgYXJlIHVzdWFsbHkgc3RyaXBw
ZWQgdXNpbmcgYHN0cmlwJyB3aGVuIHRoZSB1c2VyCiMgcnVuIGBtYWtlIGluc3RhbGwtc3RyaXAn
LiAgSG93ZXZlciBgc3RyaXAnIG1pZ2h0IG5vdCBiZSB0aGUgcmlnaHQKIyB0b29sIHRvIHVzZSBp
biBjcm9zcy1jb21waWxhdGlvbiBlbnZpcm9ubWVudHMsIHRoZXJlZm9yZSBBdXRvbWFrZQojIHdp
bGwgaG9ub3IgdGhlIGBTVFJJUCcgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gb3ZlcnJ1bGUgdGhp
cyBwcm9ncmFtLgpkbmwgRG9uJ3QgdGVzdCBmb3IgJGNyb3NzX2NvbXBpbGluZyA9IHllcywgYmVj
YXVzZSBpdCBtaWdodCBiZSBgbWF5YmUnLgppZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiAhPSBu
bzsgdGhlbgogIEFDX0NIRUNLX1RPT0woW1NUUklQXSwgW3N0cmlwXSwgOikKZmkKSU5TVEFMTF9T
VFJJUF9QUk9HUkFNPSJcJHtTSEVMTH0gXCQoaW5zdGFsbF9zaCkgLWMgLXMiCkFDX1NVQlNUKFtJ
TlNUQUxMX1NUUklQX1BST0dSQU1dKV0pCgojIENoZWNrIGhvdyB0byBjcmVhdGUgYSB0YXJiYWxs
LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtKi0gQXV0b2NvbmYgLSotCgojIENvcHlyaWdo
dCAoQykgMjAwNCwgMjAwNSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMKIyBUaGlz
IGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgojIGdp
dmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCiMg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMg
cHJlc2VydmVkLgoKIyBzZXJpYWwgMgoKIyBfQU1fUFJPR19UQVIoRk9STUFUKQojIC0tLS0tLS0t
LS0tLS0tLS0tLS0tCiMgQ2hlY2sgaG93IHRvIGNyZWF0ZSBhIHRhcmJhbGwgaW4gZm9ybWF0IEZP
Uk1BVC4KIyBGT1JNQVQgc2hvdWxkIGJlIG9uZSBvZiBgdjcnLCBgdXN0YXInLCBvciBgcGF4Jy4K
IwojIFN1YnN0aXR1dGUgYSB2YXJpYWJsZSAkKGFtX190YXIpIHRoYXQgaXMgYSBjb21tYW5kCiMg
d3JpdGluZyB0byBzdGRvdXQgYSBGT1JNQVQtdGFyYmFsbCBjb250YWluaW5nIHRoZSBkaXJlY3Rv
cnkKIyAkdGFyZGlyLgojICAgICB0YXJkaXI9ZGlyZWN0b3J5ICYmICQoYW1fX3RhcikgPiByZXN1
bHQudGFyCiMKIyBTdWJzdGl0dXRlIGEgdmFyaWFibGUgJChhbV9fdW50YXIpIHRoYXQgZXh0cmFj
dCBzdWNoCiMgYSB0YXJiYWxsIHJlYWQgZnJvbSBzdGRpbi4KIyAgICAgJChhbV9fdW50YXIpIDwg
cmVzdWx0LnRhcgpBQ19ERUZVTihbX0FNX1BST0dfVEFSXSwKWyMgQWx3YXlzIGRlZmluZSBBTVRB
UiBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KQU1fTUlTU0lOR19QUk9HKFtBTVRBUl0sIFt0
YXJdKQptNF9pZihbJDFdLCBbdjddLAogICAgIFthbV9fdGFyPScke0FNVEFSfSBjaG9mIC0gIiQk
dGFyZGlyIic7IGFtX191bnRhcj0nJHtBTVRBUn0geGYgLSddLAogICAgIFttNF9jYXNlKFskMV0s
IFt1c3Rhcl0sLCBbcGF4XSwsCiAgICAgICAgICAgICAgW200X2ZhdGFsKFtVbmtub3duIHRhciBm
b3JtYXRdKV0pCkFDX01TR19DSEVDS0lORyhbaG93IHRvIGNyZWF0ZSBhICQxIHRhciBhcmNoaXZl
XSkKIyBMb29wIG92ZXIgYWxsIGtub3duIG1ldGhvZHMgdG8gY3JlYXRlIGEgdGFyIGFyY2hpdmUg
dW50aWwgb25lIHdvcmtzLgpfYW1fdG9vbHM9J2dudXRhciBtNF9pZihbJDFdLCBbdXN0YXJdLCBb
cGxhaW50YXJdKSBwYXggY3BpbyBub25lJwpfYW1fdG9vbHM9JHthbV9jdl9wcm9nX3Rhcl8kMS0k
X2FtX3Rvb2xzfQojIERvIG5vdCBmb2xkIHRoZSBhYm92ZSB0d28gbGluZSBpbnRvIG9uZSwgYmVj
YXVzZSBUcnU2NCBzaCBhbmQKIyBTb2xhcmlzIHNoIHdpbGwgbm90IGdyb2sgc3BhY2VzIGluIHRo
ZSByaHMgb2YgYC0nLgpmb3IgX2FtX3Rvb2wgaW4gJF9hbV90b29scwpkbwogIGNhc2UgJF9hbV90
b29sIGluCiAgZ251dGFyKQogICAgZm9yIF9hbV90YXIgaW4gdGFyIGdudXRhciBndGFyOwogICAg
ZG8KICAgICAgQU1fUlVOX0xPRyhbJF9hbV90YXIgLS12ZXJzaW9uXSkgJiYgYnJlYWsKICAgIGRv
bmUKICAgIGFtX190YXI9IiRfYW1fdGFyIC0tZm9ybWF0PW00X2lmKFskMV0sIFtwYXhdLCBbcG9z
aXhdLCBbJDFdKSAtY2hmIC0gIiciJCR0YXJkaXIiJwogICAgYW1fX3Rhcl89IiRfYW1fdGFyIC0t
Zm9ybWF0PW00X2lmKFskMV0sIFtwYXhdLCBbcG9zaXhdLCBbJDFdKSAtY2hmIC0gIiciJHRhcmRp
ciInCiAgICBhbV9fdW50YXI9IiRfYW1fdGFyIC14ZiAtIgogICAgOzsKICBwbGFpbnRhcikKICAg
ICMgTXVzdCBza2lwIEdOVSB0YXI6IGlmIGl0IGRvZXMgbm90IHN1cHBvcnQgLS1mb3JtYXQ9IGl0
IGRvZXNuJ3QgY3JlYXRlCiAgICAjIHVzdGFyIHRhcmJhbGwgZWl0aGVyLgogICAgKHRhciAtLXZl
cnNpb24pID4vZGV2L251bGwgMj4mMSAmJiBjb250aW51ZQogICAgYW1fX3Rhcj0ndGFyIGNoZiAt
ICIkJHRhcmRpciInCiAgICBhbV9fdGFyXz0ndGFyIGNoZiAtICIkdGFyZGlyIicKICAgIGFtX191
bnRhcj0ndGFyIHhmIC0nCiAgICA7OwogIHBheCkKICAgIGFtX190YXI9J3BheCAtTCAteCAkMSAt
dyAiJCR0YXJkaXIiJwogICAgYW1fX3Rhcl89J3BheCAtTCAteCAkMSAtdyAiJHRhcmRpciInCiAg
ICBhbV9fdW50YXI9J3BheCAtcicKICAgIDs7CiAgY3BpbykKICAgIGFtX190YXI9J2ZpbmQgIiQk
dGFyZGlyIiAtcHJpbnQgfCBjcGlvIC1vIC1IICQxIC1MJwogICAgYW1fX3Rhcl89J2ZpbmQgIiR0
YXJkaXIiIC1wcmludCB8IGNwaW8gLW8gLUggJDEgLUwnCiAgICBhbV9fdW50YXI9J2NwaW8gLWkg
LUggJDEgLWQnCiAgICA7OwogIG5vbmUpCiAgICBhbV9fdGFyPWZhbHNlCiAgICBhbV9fdGFyXz1m
YWxzZQogICAgYW1fX3VudGFyPWZhbHNlCiAgICA7OwogIGVzYWMKCiAgIyBJZiB0aGUgdmFsdWUg
d2FzIGNhY2hlZCwgc3RvcCBub3cuICBXZSBqdXN0IHdhbnRlZCB0byBoYXZlIGFtX190YXIKICAj
IGFuZCBhbV9fdW50YXIgc2V0LgogIHRlc3QgLW4gIiR7YW1fY3ZfcHJvZ190YXJfJDF9IiAmJiBi
cmVhawoKICAjIHRhci91bnRhciBhIGR1bW15IGRpcmVjdG9yeSwgYW5kIHN0b3AgaWYgdGhlIGNv
bW1hbmQgd29ya3MKICBybSAtcmYgY29uZnRlc3QuZGlyCiAgbWtkaXIgY29uZnRlc3QuZGlyCiAg
ZWNobyBHcmVwTWUgPiBjb25mdGVzdC5kaXIvZmlsZQogIEFNX1JVTl9MT0coW3RhcmRpcj1jb25m
dGVzdC5kaXIgJiYgZXZhbCAkYW1fX3Rhcl8gPmNvbmZ0ZXN0LnRhcl0pCiAgcm0gLXJmIGNvbmZ0
ZXN0LmRpcgogIGlmIHRlc3QgLXMgY29uZnRlc3QudGFyOyB0aGVuCiAgICBBTV9SVU5fTE9HKFsk
YW1fX3VudGFyIDxjb25mdGVzdC50YXJdKQogICAgZ3JlcCBHcmVwTWUgY29uZnRlc3QuZGlyL2Zp
bGUgPi9kZXYvbnVsbCAyPiYxICYmIGJyZWFrCiAgZmkKZG9uZQpybSAtcmYgY29uZnRlc3QuZGly
CgpBQ19DQUNIRV9WQUwoW2FtX2N2X3Byb2dfdGFyXyQxXSwgW2FtX2N2X3Byb2dfdGFyXyQxPSRf
YW1fdG9vbF0pCkFDX01TR19SRVNVTFQoWyRhbV9jdl9wcm9nX3Rhcl8kMV0pXSkKQUNfU1VCU1Qo
W2FtX190YXJdKQpBQ19TVUJTVChbYW1fX3VudGFyXSkKXSkgIyBfQU1fUFJPR19UQVIKCg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>93366</attachid>
            <date>2006-08-03 12:02 0000</date>
            <desc>/var/tmp/portage/hunspell-1.1.4-r1/work/hunspell-1.1.4/configure</desc>
            <filename>configure</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEgL2Jpbi9zaAojIEd1ZXNzIHZhbHVlcyBmb3Igc3lzdGVtLWRlcGVuZGVudCB2YXJpYWJsZXMg
YW5kIGNyZWF0ZSBNYWtlZmlsZXMuCiMgR2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjYwIGZv
ciBodW5zcGVsbCAxLjEuNC4KIwojIFJlcG9ydCBidWdzIHRvIDxuZW1ldGhsQGd5b3JzcG9zdGEu
aHU+LgojCiMgQ29weXJpZ2h0IChDKSAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAxOTk2LCAxOTk4
LCAxOTk5LCAyMDAwLCAyMDAxLAojIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgVGhpcyBjb25maWd1cmUgc2NyaXB0IGlzIGZyZWUg
c29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KIyBnaXZlcyB1bmxpbWl0ZWQg
cGVybWlzc2lvbiB0byBjb3B5LCBkaXN0cmlidXRlIGFuZCBtb2RpZnkgaXQuCiMjIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLSAjIwojIyBNNHNoIEluaXRpYWxpemF0aW9uLiAgIyMKIyMgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tICMjCgojIEJlIEJvdXJuZSBjb21wYXRpYmxlCmlmIHRlc3QgLW4gIiR7WlNI
X1ZFUlNJT04rc2V0fSIgJiYgKGVtdWxhdGUgc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgogIGVt
dWxhdGUgc2gKICBOVUxMQ01EPToKICAjIFpzaCAzLnggYW5kIDQueCBwZXJmb3JtcyB3b3JkIHNw
bGl0dGluZyBvbiAkezErIiRAIn0sIHdoaWNoCiAgIyBpcyBjb250cmFyeSB0byBvdXIgdXNhZ2Uu
ICBEaXNhYmxlIHRoaXMgZmVhdHVyZS4KICBhbGlhcyAtZyAnJHsxKyIkQCJ9Jz0nIiRAIicKICBz
ZXRvcHQgTk9fR0xPQl9TVUJTVAplbHNlCiAgY2FzZSBgKHNldCAtbykgMj4vZGV2L251bGxgIGlu
ICpwb3NpeCopIHNldCAtbyBwb3NpeDs7IGVzYWMKZmkKQklOX1NIPXhwZzQ7IGV4cG9ydCBCSU5f
U0ggIyBmb3IgVHJ1NjQKRFVBTENBU0U9MTsgZXhwb3J0IERVQUxDQVNFICMgZm9yIE1LUyBzaAoK
CiMgUEFUSCBuZWVkcyBDUgojIEF2b2lkIGRlcGVuZGluZyB1cG9uIENoYXJhY3RlciBSYW5nZXMu
CmFzX2NyX2xldHRlcnM9J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Jwphc19jcl9MRVRURVJT
PSdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWicKYXNfY3JfTGV0dGVycz0kYXNfY3JfbGV0dGVy
cyRhc19jcl9MRVRURVJTCmFzX2NyX2RpZ2l0cz0nMDEyMzQ1Njc4OScKYXNfY3JfYWxudW09JGFz
X2NyX0xldHRlcnMkYXNfY3JfZGlnaXRzCgojIFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KaWYg
dGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9IiAhPSBzZXQ7IHRoZW4KICBlY2hvICIjISAvYmlu
L3NoIiA+Y29uZiQkLnNoCiAgZWNobyAgImV4aXQgMCIgICA+PmNvbmYkJC5zaAogIGNobW9kICt4
IGNvbmYkJC5zaAogIGlmIChQQVRIPSIvbm9uZXhpc3RlbnQ7LiI7IGNvbmYkJC5zaCkgPi9kZXYv
bnVsbCAyPiYxOyB0aGVuCiAgICBQQVRIX1NFUEFSQVRPUj0nOycKICBlbHNlCiAgICBQQVRIX1NF
UEFSQVRPUj06CiAgZmkKICBybSAtZiBjb25mJCQuc2gKZmkKCiMgU3VwcG9ydCB1bnNldCB3aGVu
IHBvc3NpYmxlLgppZiAoIChNQUlMPTYwOyB1bnNldCBNQUlMKSB8fCBleGl0KSA+L2Rldi9udWxs
IDI+JjE7IHRoZW4KICBhc191bnNldD11bnNldAplbHNlCiAgYXNfdW5zZXQ9ZmFsc2UKZmkKCgoj
IElGUwojIFdlIG5lZWQgc3BhY2UsIHRhYiBhbmQgbmV3IGxpbmUsIGluIHByZWNpc2VseSB0aGF0
IG9yZGVyLiAgUXVvdGluZyBpcwojIHRoZXJlIHRvIHByZXZlbnQgZWRpdG9ycyBmcm9tIGNvbXBs
YWluaW5nIGFib3V0IHNwYWNlLXRhYi4KIyAoSWYgX0FTX1BBVEhfV0FMSyB3ZXJlIGNhbGxlZCB3
aXRoIElGUyB1bnNldCwgaXQgd291bGQgZGlzYWJsZSB3b3JkCiMgc3BsaXR0aW5nIGJ5IHNldHRp
bmcgSUZTIHRvIGVtcHR5IHZhbHVlLikKYXNfbmw9JwonCklGUz0iICIiCSRhc19ubCIKCiMgRmlu
ZCB3aG8gd2UgYXJlLiAgTG9vayBpbiB0aGUgcGF0aCBpZiB3ZSBjb250YWluIG5vIGRpcmVjdG9y
eSBzZXBhcmF0b3IuCmNhc2UgJDAgaW4KICAqW1xcL10qICkgYXNfbXlzZWxmPSQwIDs7CiAgKikg
YXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgpmb3IgYXNfZGlyIGluICRQQVRI
CmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAg
dGVzdCAtciAiJGFzX2Rpci8kMCIgJiYgYXNfbXlzZWxmPSRhc19kaXIvJDAgJiYgYnJlYWsKZG9u
ZQpJRlM9JGFzX3NhdmVfSUZTCgogICAgIDs7CmVzYWMKIyBXZSBkaWQgbm90IGZpbmQgb3Vyc2Vs
dmVzLCBtb3N0IHByb2JhYmx5IHdlIHdlcmUgcnVuIGFzIGBzaCBDT01NQU5EJwojIGluIHdoaWNo
IGNhc2Ugd2UgYXJlIG5vdCB0byBiZSBmb3VuZCBpbiB0aGUgcGF0aC4KaWYgdGVzdCAieCRhc19t
eXNlbGYiID0geDsgdGhlbgogIGFzX215c2VsZj0kMApmaQppZiB0ZXN0ICEgLWYgIiRhc19teXNl
bGYiOyB0aGVuCiAgZWNobyAiJGFzX215c2VsZjogZXJyb3I6IGNhbm5vdCBmaW5kIG15c2VsZjsg
cmVydW4gd2l0aCBhbiBhYnNvbHV0ZSBmaWxlIG5hbWUiID4mMgogIHsgKGV4aXQgMSk7IGV4aXQg
MTsgfQpmaQoKIyBXb3JrIGFyb3VuZCBidWdzIGluIHByZS0zLjAgVVdJTiBrc2guCmZvciBhc192
YXIgaW4gRU5WIE1BSUwgTUFJTFBBVEgKZG8gKCRhc191bnNldCAkYXNfdmFyKSA+L2Rldi9udWxs
IDI+JjEgJiYgJGFzX3Vuc2V0ICRhc192YXIKZG9uZQpQUzE9JyQgJwpQUzI9Jz4gJwpQUzQ9Jysg
JwoKIyBOTFMgbnVpc2FuY2VzLgpmb3IgYXNfdmFyIGluIFwKICBMQU5HIExBTkdVQUdFIExDX0FE
RFJFU1MgTENfQUxMIExDX0NPTExBVEUgTENfQ1RZUEUgTENfSURFTlRJRklDQVRJT04gXAogIExD
X01FQVNVUkVNRU5UIExDX01FU1NBR0VTIExDX01PTkVUQVJZIExDX05BTUUgTENfTlVNRVJJQyBM
Q19QQVBFUiBcCiAgTENfVEVMRVBIT05FIExDX1RJTUUKZG8KICBpZiAoc2V0ICt4OyB0ZXN0IC16
ICJgKGV2YWwgJGFzX3Zhcj1DOyBleHBvcnQgJGFzX3ZhcikgMj4mMWAiKTsgdGhlbgogICAgZXZh
bCAkYXNfdmFyPUM7IGV4cG9ydCAkYXNfdmFyCiAgZWxzZQogICAgKCRhc191bnNldCAkYXNfdmFy
KSA+L2Rldi9udWxsIDI+JjEgJiYgJGFzX3Vuc2V0ICRhc192YXIKICBmaQpkb25lCgojIFJlcXVp
cmVkIHRvIHVzZSBiYXNlbmFtZS4KaWYgZXhwciBhIDogJ1woYVwpJyA+L2Rldi9udWxsIDI+JjEg
JiYKICAgdGVzdCAiWGBleHByIDAwMDAxIDogJy4qXCguLi5cKSdgIiA9IFgwMDE7IHRoZW4KICBh
c19leHByPWV4cHIKZWxzZQogIGFzX2V4cHI9ZmFsc2UKZmkKCmlmIChiYXNlbmFtZSAtLSAvKSA+
L2Rldi9udWxsIDI+JjEgJiYgdGVzdCAiWGBiYXNlbmFtZSAtLSAvIDI+JjFgIiA9ICJYLyI7IHRo
ZW4KICBhc19iYXNlbmFtZT1iYXNlbmFtZQplbHNlCiAgYXNfYmFzZW5hbWU9ZmFsc2UKZmkKCgoj
IE5hbWUgb2YgdGhlIGV4ZWN1dGFibGUuCmFzX21lPWAkYXNfYmFzZW5hbWUgLS0gIiQwIiB8fAok
YXNfZXhwciBYLyIkMCIgOiAnLiovXChbXi9dW14vXSpcKS8qJCcgXHwgXAoJIFgiJDAiIDogJ1hc
KC8vXCkkJyBcfCBcCgkgWCIkMCIgOiAnWFwoL1wpJyBcfCAuIDI+L2Rldi9udWxsIHx8CmVjaG8g
WC8iJDAiIHwKICAgIHNlZCAnL14uKlwvXChbXi9dW14vXSpcKVwvKiQvewoJICAgIHMvL1wxLwoJ
ICAgIHEKCSAgfQoJICAvXlhcL1woXC9cL1wpJC97CgkgICAgcy8vXDEvCgkgICAgcQoJICB9Cgkg
IC9eWFwvXChcL1wpLiovewoJICAgIHMvL1wxLwoJICAgIHEKCSAgfQoJICBzLy4qLy4vOyBxJ2AK
CiMgQ0RQQVRILgokYXNfdW5zZXQgQ0RQQVRICgoKaWYgdGVzdCAieCRDT05GSUdfU0hFTEwiID0g
eDsgdGhlbgogIGlmIChldmFsICI6IikgMj4vZGV2L251bGw7IHRoZW4KICBhc19oYXZlX3JlcXVp
cmVkPXllcwplbHNlCiAgYXNfaGF2ZV9yZXF1aXJlZD1ubwpmaQoKICBpZiB0ZXN0ICRhc19oYXZl
X3JlcXVpcmVkID0geWVzICYmIAkgKGV2YWwgIjoKKGFzX2Z1bmNfcmV0dXJuICgpIHsKICAoZXhp
dCBcJDEpCn0KYXNfZnVuY19zdWNjZXNzICgpIHsKICBhc19mdW5jX3JldHVybiAwCn0KYXNfZnVu
Y19mYWlsdXJlICgpIHsKICBhc19mdW5jX3JldHVybiAxCn0KYXNfZnVuY19yZXRfc3VjY2VzcyAo
KSB7CiAgcmV0dXJuIDAKfQphc19mdW5jX3JldF9mYWlsdXJlICgpIHsKICByZXR1cm4gMQp9Cgpl
eGl0Y29kZT0wCmlmIGFzX2Z1bmNfc3VjY2VzczsgdGhlbgogIDoKZWxzZQogIGV4aXRjb2RlPTEK
ICBlY2hvIGFzX2Z1bmNfc3VjY2VzcyBmYWlsZWQuCmZpCgppZiBhc19mdW5jX2ZhaWx1cmU7IHRo
ZW4KICBleGl0Y29kZT0xCiAgZWNobyBhc19mdW5jX2ZhaWx1cmUgc3VjY2VlZGVkLgpmaQoKaWYg
YXNfZnVuY19yZXRfc3VjY2VzczsgdGhlbgogIDoKZWxzZQogIGV4aXRjb2RlPTEKICBlY2hvIGFz
X2Z1bmNfcmV0X3N1Y2Nlc3MgZmFpbGVkLgpmaQoKaWYgYXNfZnVuY19yZXRfZmFpbHVyZTsgdGhl
bgogIGV4aXRjb2RlPTEKICBlY2hvIGFzX2Z1bmNfcmV0X2ZhaWx1cmUgc3VjY2VlZGVkLgpmaQoK
aWYgKCBzZXQgeDsgYXNfZnVuY19yZXRfc3VjY2VzcyB5ICYmIHRlc3QgeCA9IFwiXCQxXCIgKTsg
dGhlbgogIDoKZWxzZQogIGV4aXRjb2RlPTEKICBlY2hvIHBvc2l0aW9uYWwgcGFyYW1ldGVycyB3
ZXJlIG5vdCBzYXZlZC4KZmkKCnRlc3QgXCRleGl0Y29kZSA9IDApIHx8IHsgKGV4aXQgMSk7IGV4
aXQgMTsgfQoKKAogIGFzX2xpbmVub18xPVwkTElORU5PCiAgYXNfbGluZW5vXzI9XCRMSU5FTk8K
ICB0ZXN0IFwieFwkYXNfbGluZW5vXzFcIiAhPSBcInhcJGFzX2xpbmVub18yXCIgJiYKICB0ZXN0
IFwieFxgZXhwciBcJGFzX2xpbmVub18xICsgMVxgXCIgPSBcInhcJGFzX2xpbmVub18yXCIpIHx8
IHsgKGV4aXQgMSk7IGV4aXQgMTsgfQoiKSAyPiAvZGV2L251bGw7IHRoZW4KICA6CmVsc2UKICBh
c19jYW5kaWRhdGVfc2hlbGxzPQogICAgYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFS
QVRPUgpmb3IgYXNfZGlyIGluIC91c3IvYmluL3Bvc2l4JFBBVEhfU0VQQVJBVE9SL2JpbiRQQVRI
X1NFUEFSQVRPUi91c3IvYmluJFBBVEhfU0VQQVJBVE9SJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVf
SUZTCiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBjYXNlICRhc19kaXIgaW4KCSAv
KikKCSAgIGZvciBhc19iYXNlIGluIHNoIGJhc2gga3NoIHNoNTsgZG8KCSAgICAgYXNfY2FuZGlk
YXRlX3NoZWxscz0iJGFzX2NhbmRpZGF0ZV9zaGVsbHMgJGFzX2Rpci8kYXNfYmFzZSIKCSAgIGRv
bmU7OwogICAgICAgZXNhYwpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCgogICAgICBmb3IgYXNfc2hl
bGwgaW4gJGFzX2NhbmRpZGF0ZV9zaGVsbHMgJFNIRUxMOyBkbwoJICMgVHJ5IG9ubHkgc2hlbGxz
IHRoYXQgZXhpc3QsIHRvIHNhdmUgc2V2ZXJhbCBmb3Jrcy4KCSBpZiB7IHRlc3QgLWYgIiRhc19z
aGVsbCIgfHwgdGVzdCAtZiAiJGFzX3NoZWxsLmV4ZSI7IH0gJiYKCQl7ICgiJGFzX3NoZWxsIikg
Mj4gL2Rldi9udWxsIDw8XF9BU0VPRgojIEJlIEJvdXJuZSBjb21wYXRpYmxlCmlmIHRlc3QgLW4g
IiR7WlNIX1ZFUlNJT04rc2V0fSIgJiYgKGVtdWxhdGUgc2gpID4vZGV2L251bGwgMj4mMTsgdGhl
bgogIGVtdWxhdGUgc2gKICBOVUxMQ01EPToKICAjIFpzaCAzLnggYW5kIDQueCBwZXJmb3JtcyB3
b3JkIHNwbGl0dGluZyBvbiAkezErIiRAIn0sIHdoaWNoCiAgIyBpcyBjb250cmFyeSB0byBvdXIg
dXNhZ2UuICBEaXNhYmxlIHRoaXMgZmVhdHVyZS4KICBhbGlhcyAtZyAnJHsxKyIkQCJ9Jz0nIiRA
IicKICBzZXRvcHQgTk9fR0xPQl9TVUJTVAplbHNlCiAgY2FzZSBgKHNldCAtbykgMj4vZGV2L251
bGxgIGluICpwb3NpeCopIHNldCAtbyBwb3NpeDs7IGVzYWMKZmkKQklOX1NIPXhwZzQ7IGV4cG9y
dCBCSU5fU0ggIyBmb3IgVHJ1NjQKRFVBTENBU0U9MTsgZXhwb3J0IERVQUxDQVNFICMgZm9yIE1L
UyBzaAoKOgpfQVNFT0YKfTsgdGhlbgogIENPTkZJR19TSEVMTD0kYXNfc2hlbGwKCSAgICAgICBh
c19oYXZlX3JlcXVpcmVkPXllcwoJICAgICAgIGlmIHsgIiRhc19zaGVsbCIgMj4gL2Rldi9udWxs
IDw8XF9BU0VPRgojIEJlIEJvdXJuZSBjb21wYXRpYmxlCmlmIHRlc3QgLW4gIiR7WlNIX1ZFUlNJ
T04rc2V0fSIgJiYgKGVtdWxhdGUgc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgogIGVtdWxhdGUg
c2gKICBOVUxMQ01EPToKICAjIFpzaCAzLnggYW5kIDQueCBwZXJmb3JtcyB3b3JkIHNwbGl0dGlu
ZyBvbiAkezErIiRAIn0sIHdoaWNoCiAgIyBpcyBjb250cmFyeSB0byBvdXIgdXNhZ2UuICBEaXNh
YmxlIHRoaXMgZmVhdHVyZS4KICBhbGlhcyAtZyAnJHsxKyIkQCJ9Jz0nIiRAIicKICBzZXRvcHQg
Tk9fR0xPQl9TVUJTVAplbHNlCiAgY2FzZSBgKHNldCAtbykgMj4vZGV2L251bGxgIGluICpwb3Np
eCopIHNldCAtbyBwb3NpeDs7IGVzYWMKZmkKQklOX1NIPXhwZzQ7IGV4cG9ydCBCSU5fU0ggIyBm
b3IgVHJ1NjQKRFVBTENBU0U9MTsgZXhwb3J0IERVQUxDQVNFICMgZm9yIE1LUyBzaAoKOgooYXNf
ZnVuY19yZXR1cm4gKCkgewogIChleGl0ICQxKQp9CmFzX2Z1bmNfc3VjY2VzcyAoKSB7CiAgYXNf
ZnVuY19yZXR1cm4gMAp9CmFzX2Z1bmNfZmFpbHVyZSAoKSB7CiAgYXNfZnVuY19yZXR1cm4gMQp9
CmFzX2Z1bmNfcmV0X3N1Y2Nlc3MgKCkgewogIHJldHVybiAwCn0KYXNfZnVuY19yZXRfZmFpbHVy
ZSAoKSB7CiAgcmV0dXJuIDEKfQoKZXhpdGNvZGU9MAppZiBhc19mdW5jX3N1Y2Nlc3M7IHRoZW4K
ICA6CmVsc2UKICBleGl0Y29kZT0xCiAgZWNobyBhc19mdW5jX3N1Y2Nlc3MgZmFpbGVkLgpmaQoK
aWYgYXNfZnVuY19mYWlsdXJlOyB0aGVuCiAgZXhpdGNvZGU9MQogIGVjaG8gYXNfZnVuY19mYWls
dXJlIHN1Y2NlZWRlZC4KZmkKCmlmIGFzX2Z1bmNfcmV0X3N1Y2Nlc3M7IHRoZW4KICA6CmVsc2UK
ICBleGl0Y29kZT0xCiAgZWNobyBhc19mdW5jX3JldF9zdWNjZXNzIGZhaWxlZC4KZmkKCmlmIGFz
X2Z1bmNfcmV0X2ZhaWx1cmU7IHRoZW4KICBleGl0Y29kZT0xCiAgZWNobyBhc19mdW5jX3JldF9m
YWlsdXJlIHN1Y2NlZWRlZC4KZmkKCmlmICggc2V0IHg7IGFzX2Z1bmNfcmV0X3N1Y2Nlc3MgeSAm
JiB0ZXN0IHggPSAiJDEiICk7IHRoZW4KICA6CmVsc2UKICBleGl0Y29kZT0xCiAgZWNobyBwb3Np
dGlvbmFsIHBhcmFtZXRlcnMgd2VyZSBub3Qgc2F2ZWQuCmZpCgp0ZXN0ICRleGl0Y29kZSA9IDAp
IHx8IHsgKGV4aXQgMSk7IGV4aXQgMTsgfQoKKAogIGFzX2xpbmVub18xPSRMSU5FTk8KICBhc19s
aW5lbm9fMj0kTElORU5PCiAgdGVzdCAieCRhc19saW5lbm9fMSIgIT0gIngkYXNfbGluZW5vXzIi
ICYmCiAgdGVzdCAieGBleHByICRhc19saW5lbm9fMSArIDFgIiA9ICJ4JGFzX2xpbmVub18yIikg
fHwgeyAoZXhpdCAxKTsgZXhpdCAxOyB9CgpfQVNFT0YKfTsgdGhlbgogIGJyZWFrCmZpCgpmaQoK
ICAgICAgZG9uZQoKICAgICAgaWYgdGVzdCAieCRDT05GSUdfU0hFTEwiICE9IHg7IHRoZW4KICBm
b3IgYXNfdmFyIGluIEJBU0hfRU5WIEVOVgogICAgICAgIGRvICgkYXNfdW5zZXQgJGFzX3Zhcikg
Pi9kZXYvbnVsbCAyPiYxICYmICRhc191bnNldCAkYXNfdmFyCiAgICAgICAgZG9uZQogICAgICAg
IGV4cG9ydCBDT05GSUdfU0hFTEwKICAgICAgICBleGVjICIkQ09ORklHX1NIRUxMIiAiJGFzX215
c2VsZiIgJHsxKyIkQCJ9CmZpCgoKICAgIGlmIHRlc3QgJGFzX2hhdmVfcmVxdWlyZWQgPSBubzsg
dGhlbgogIGVjaG8gVGhpcyBzY3JpcHQgcmVxdWlyZXMgYSBzaGVsbCBtb3JlIG1vZGVybiB0aGFu
IGFsbCB0aGUKICAgICAgZWNobyBzaGVsbHMgdGhhdCBJIGZvdW5kIG9uIHlvdXIgc3lzdGVtLiAg
UGxlYXNlIGluc3RhbGwgYQogICAgICBlY2hvIG1vZGVybiBzaGVsbCwgb3IgbWFudWFsbHkgcnVu
IHRoZSBzY3JpcHQgdW5kZXIgc3VjaCBhCiAgICAgIGVjaG8gc2hlbGwgaWYgeW91IGRvIGhhdmUg
b25lLgogICAgICB7IChleGl0IDEpOyBleGl0IDE7IH0KZmkKCgpmaQoKZmkKCgoKKGV2YWwgImFz
X2Z1bmNfcmV0dXJuICgpIHsKICAoZXhpdCBcJDEpCn0KYXNfZnVuY19zdWNjZXNzICgpIHsKICBh
c19mdW5jX3JldHVybiAwCn0KYXNfZnVuY19mYWlsdXJlICgpIHsKICBhc19mdW5jX3JldHVybiAx
Cn0KYXNfZnVuY19yZXRfc3VjY2VzcyAoKSB7CiAgcmV0dXJuIDAKfQphc19mdW5jX3JldF9mYWls
dXJlICgpIHsKICByZXR1cm4gMQp9CgpleGl0Y29kZT0wCmlmIGFzX2Z1bmNfc3VjY2VzczsgdGhl
bgogIDoKZWxzZQogIGV4aXRjb2RlPTEKICBlY2hvIGFzX2Z1bmNfc3VjY2VzcyBmYWlsZWQuCmZp
CgppZiBhc19mdW5jX2ZhaWx1cmU7IHRoZW4KICBleGl0Y29kZT0xCiAgZWNobyBhc19mdW5jX2Zh
aWx1cmUgc3VjY2VlZGVkLgpmaQoKaWYgYXNfZnVuY19yZXRfc3VjY2VzczsgdGhlbgogIDoKZWxz
ZQogIGV4aXRjb2RlPTEKICBlY2hvIGFzX2Z1bmNfcmV0X3N1Y2Nlc3MgZmFpbGVkLgpmaQoKaWYg
YXNfZnVuY19yZXRfZmFpbHVyZTsgdGhlbgogIGV4aXRjb2RlPTEKICBlY2hvIGFzX2Z1bmNfcmV0
X2ZhaWx1cmUgc3VjY2VlZGVkLgpmaQoKaWYgKCBzZXQgeDsgYXNfZnVuY19yZXRfc3VjY2VzcyB5
ICYmIHRlc3QgeCA9IFwiXCQxXCIgKTsgdGhlbgogIDoKZWxzZQogIGV4aXRjb2RlPTEKICBlY2hv
IHBvc2l0aW9uYWwgcGFyYW1ldGVycyB3ZXJlIG5vdCBzYXZlZC4KZmkKCnRlc3QgXCRleGl0Y29k
ZSA9IDAiKSB8fCB7CiAgZWNobyBObyBzaGVsbCBmb3VuZCB0aGF0IHN1cHBvcnRzIHNoZWxsIGZ1
bmN0aW9ucy4KICBlY2hvIFBsZWFzZSB0ZWxsIGF1dG9jb25mQGdudS5vcmcgYWJvdXQgeW91ciBz
eXN0ZW0sCiAgZWNobyBpbmNsdWRpbmcgYW55IGVycm9yIHBvc3NpYmx5IG91dHB1dCBiZWZvcmUg
dGhpcwogIGVjaG8gbWVzc2FnZQp9CgoKCiAgYXNfbGluZW5vXzE9JExJTkVOTwogIGFzX2xpbmVu
b18yPSRMSU5FTk8KICB0ZXN0ICJ4JGFzX2xpbmVub18xIiAhPSAieCRhc19saW5lbm9fMiIgJiYK
ICB0ZXN0ICJ4YGV4cHIgJGFzX2xpbmVub18xICsgMWAiID0gIngkYXNfbGluZW5vXzIiIHx8IHsK
CiAgIyBDcmVhdGUgJGFzX21lLmxpbmVubyBhcyBhIGNvcHkgb2YgJGFzX215c2VsZiwgYnV0IHdp
dGggJExJTkVOTwogICMgdW5pZm9ybWx5IHJlcGxhY2VkIGJ5IHRoZSBsaW5lIG51bWJlci4gIFRo
ZSBmaXJzdCAnc2VkJyBpbnNlcnRzIGEKICAjIGxpbmUtbnVtYmVyIGxpbmUgYWZ0ZXIgZWFjaCBs
aW5lIHVzaW5nICRMSU5FTk87IHRoZSBzZWNvbmQgJ3NlZCcKICAjIGRvZXMgdGhlIHJlYWwgd29y
ay4gIFRoZSBzZWNvbmQgc2NyaXB0IHVzZXMgJ04nIHRvIHBhaXIgZWFjaAogICMgbGluZS1udW1i
ZXIgbGluZSB3aXRoIHRoZSBsaW5lIGNvbnRhaW5pbmcgJExJTkVOTywgYW5kIGFwcGVuZHMKICAj
IHRyYWlsaW5nICctJyBkdXJpbmcgc3Vic3RpdHV0aW9uIHNvIHRoYXQgJExJTkVOTyBpcyBub3Qg
YSBzcGVjaWFsCiAgIyBjYXNlIGF0IGxpbmUgZW5kLgogICMgKFJhamEgUiBIYXJpbmF0aCBzdWdn
ZXN0ZWQgc2VkICc9JywgYW5kIFBhdWwgRWdnZXJ0IHdyb3RlIHRoZQogICMgc2NyaXB0cyB3aXRo
IG9wdGltaXphdGlvbiBoZWxwIGZyb20gUGFvbG8gQm9uemluaS4gIEJsYW1lIExlZQogICMgRS4g
TWNNYWhvbiAoMTkzMS0xOTg5KSBmb3Igc2VkJ3Mgc3ludGF4LiAgOi0pCiAgc2VkIC1uICcKICAg
IHAKICAgIC9bJF1MSU5FTk8vPQogICcgPCRhc19teXNlbGYgfAogICAgc2VkICcKICAgICAgcy9b
JF1MSU5FTk8uKi8mLS8KICAgICAgdCBsaW5lbm8KICAgICAgYgogICAgICA6bGluZW5vCiAgICAg
IE4KICAgICAgOmxvb3AKICAgICAgcy9bJF1MSU5FTk9cKFteJyRhc19jcl9hbG51bSdfXS4qXG5c
KVwoLipcKS9cMlwxXDIvCiAgICAgIHQgbG9vcAogICAgICBzLy1cbi4qLy8KICAgICcgPiRhc19t
ZS5saW5lbm8gJiYKICBjaG1vZCAreCAiJGFzX21lLmxpbmVubyIgfHwKICAgIHsgZWNobyAiJGFz
X21lOiBlcnJvcjogY2Fubm90IGNyZWF0ZSAkYXNfbWUubGluZW5vOyByZXJ1biB3aXRoIGEgUE9T
SVggc2hlbGwiID4mMgogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KCiAgIyBEb24ndCB0cnkg
dG8gZXhlYyBhcyBpdCBjaGFuZ2VzICRbMF0sIGNhdXNpbmcgYWxsIHNvcnQgb2YgcHJvYmxlbXMK
ICAjICh0aGUgZGlybmFtZSBvZiAkWzBdIGlzIG5vdCB0aGUgcGxhY2Ugd2hlcmUgd2UgbWlnaHQg
ZmluZCB0aGUKICAjIG9yaWdpbmFsIGFuZCBzbyBvbi4gIEF1dG9jb25mIGlzIGVzcGVjaWFsbHkg
c2Vuc2l0aXZlIHRvIHRoaXMpLgogIC4gIi4vJGFzX21lLmxpbmVubyIKICAjIEV4aXQgc3RhdHVz
IGlzIHRoYXQgb2YgdGhlIGxhc3QgY29tbWFuZC4KICBleGl0Cn0KCgppZiAoYXNfZGlyPWBkaXJu
YW1lIC0tIC9gICYmIHRlc3QgIlgkYXNfZGlyIiA9IFgvKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4K
ICBhc19kaXJuYW1lPWRpcm5hbWUKZWxzZQogIGFzX2Rpcm5hbWU9ZmFsc2UKZmkKCkVDSE9fQz0g
RUNIT19OPSBFQ0hPX1Q9CmNhc2UgYGVjaG8gLW4geGAgaW4KLW4qKQogIGNhc2UgYGVjaG8gJ3hc
YydgIGluCiAgKmMqKSBFQ0hPX1Q9JwknOzsJIyBFQ0hPX1QgaXMgc2luZ2xlIHRhYiBjaGFyYWN0
ZXIuCiAgKikgICBFQ0hPX0M9J1xjJzs7CiAgZXNhYzs7CiopCiAgRUNIT19OPSctbic7Owplc2Fj
CgppZiBleHByIGEgOiAnXChhXCknID4vZGV2L251bGwgMj4mMSAmJgogICB0ZXN0ICJYYGV4cHIg
MDAwMDEgOiAnLipcKC4uLlwpJ2AiID0gWDAwMTsgdGhlbgogIGFzX2V4cHI9ZXhwcgplbHNlCiAg
YXNfZXhwcj1mYWxzZQpmaQoKcm0gLWYgY29uZiQkIGNvbmYkJC5leGUgY29uZiQkLmZpbGUKaWYg
dGVzdCAtZCBjb25mJCQuZGlyOyB0aGVuCiAgcm0gLWYgY29uZiQkLmRpci9jb25mJCQuZmlsZQpl
bHNlCiAgcm0gLWYgY29uZiQkLmRpcgogIG1rZGlyIGNvbmYkJC5kaXIKZmkKZWNobyA+Y29uZiQk
LmZpbGUKaWYgbG4gLXMgY29uZiQkLmZpbGUgY29uZiQkIDI+L2Rldi9udWxsOyB0aGVuCiAgYXNf
bG5fcz0nbG4gLXMnCiAgIyAuLi4gYnV0IHRoZXJlIGFyZSB0d28gZ290Y2hhczoKICAjIDEpIE9u
IE1TWVMsIGJvdGggYGxuIC1zIGZpbGUgZGlyJyBhbmQgYGxuIGZpbGUgZGlyJyBmYWlsLgogICMg
MikgREpHUFAgPCAyLjA0IGhhcyBubyBzeW1saW5rczsgYGxuIC1zJyBjcmVhdGVzIGEgd3JhcHBl
ciBleGVjdXRhYmxlLgogICMgSW4gYm90aCBjYXNlcywgd2UgaGF2ZSB0byBkZWZhdWx0IHRvIGBj
cCAtcCcuCiAgbG4gLXMgY29uZiQkLmZpbGUgY29uZiQkLmRpciAyPi9kZXYvbnVsbCAmJiB0ZXN0
ICEgLWYgY29uZiQkLmV4ZSB8fAogICAgYXNfbG5fcz0nY3AgLXAnCmVsaWYgbG4gY29uZiQkLmZp
bGUgY29uZiQkIDI+L2Rldi9udWxsOyB0aGVuCiAgYXNfbG5fcz1sbgplbHNlCiAgYXNfbG5fcz0n
Y3AgLXAnCmZpCnJtIC1mIGNvbmYkJCBjb25mJCQuZXhlIGNvbmYkJC5kaXIvY29uZiQkLmZpbGUg
Y29uZiQkLmZpbGUKcm1kaXIgY29uZiQkLmRpciAyPi9kZXYvbnVsbAoKaWYgbWtkaXIgLXAgLiAy
Pi9kZXYvbnVsbDsgdGhlbgogIGFzX21rZGlyX3A9OgplbHNlCiAgdGVzdCAtZCAuLy1wICYmIHJt
ZGlyIC4vLXAKICBhc19ta2Rpcl9wPWZhbHNlCmZpCgojIEZpbmQgb3V0IHdoZXRoZXIgYGB0ZXN0
IC14Jycgd29ya3MuICBEb24ndCB1c2UgYSB6ZXJvLWJ5dGUgZmlsZSwgYXMKIyBzeXN0ZW1zIG1h
eSB1c2UgbWV0aG9kcyBvdGhlciB0aGFuIG1vZGUgYml0cyB0byBkZXRlcm1pbmUgZXhlY3V0YWJp
bGl0eS4KY2F0ID5jb25mJCQuZmlsZSA8PF9BU0VPRgojISAvYmluL3NoCmV4aXQgMApfQVNFT0YK
Y2htb2QgK3ggY29uZiQkLmZpbGUKaWYgdGVzdCAteCBjb25mJCQuZmlsZSA+L2Rldi9udWxsIDI+
JjE7IHRoZW4KICBhc19leGVjdXRhYmxlX3A9InRlc3QgLXgiCmVsc2UKICBhc19leGVjdXRhYmxl
X3A9OgpmaQpybSAtZiBjb25mJCQuZmlsZQoKIyBTZWQgZXhwcmVzc2lvbiB0byBtYXAgYSBzdHJp
bmcgb250byBhIHZhbGlkIENQUCBuYW1lLgphc190cl9jcHA9ImV2YWwgc2VkICd5JSokYXNfY3Jf
bGV0dGVycyVQJGFzX2NyX0xFVFRFUlMlO3MlW15fJGFzX2NyX2FsbnVtXSVfJWcnIgoKIyBTZWQg
ZXhwcmVzc2lvbiB0byBtYXAgYSBzdHJpbmcgb250byBhIHZhbGlkIHZhcmlhYmxlIG5hbWUuCmFz
X3RyX3NoPSJldmFsIHNlZCAneSUqKyVwcCU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyciCgoKCgoj
IENoZWNrIHRoYXQgd2UgYXJlIHJ1bm5pbmcgdW5kZXIgdGhlIGNvcnJlY3Qgc2hlbGwuClNIRUxM
PSR7Q09ORklHX1NIRUxMLS9iaW4vc2h9CgpjYXNlIFgkRUNITyBpbgpYKi0tZmFsbGJhY2stZWNo
bykKICAjIFJlbW92ZSBvbmUgbGV2ZWwgb2YgcXVvdGF0aW9uICh3aGljaCB3YXMgcmVxdWlyZWQg
Zm9yIE1ha2UpLgogIEVDSE89YGVjaG8gIiRFQ0hPIiB8IHNlZCAncyxcXFxcXCRcXCQwLCckMCcs
J2AKICA7Owplc2FjCgplY2hvPSR7RUNITy1lY2hvfQppZiB0ZXN0ICJYJDEiID0gWC0tbm8tcmVl
eGVjOyB0aGVuCiAgIyBEaXNjYXJkIHRoZSAtLW5vLXJlZXhlYyBmbGFnLCBhbmQgY29udGludWUu
CiAgc2hpZnQKZWxpZiB0ZXN0ICJYJDEiID0gWC0tZmFsbGJhY2stZWNobzsgdGhlbgogICMgQXZv
aWQgaW5saW5lIGRvY3VtZW50IGhlcmUsIGl0IG1heSBiZSBsZWZ0IG92ZXIKICA6CmVsaWYgdGVz
dCAiWGAoJGVjaG8gJ1x0JykgMj4vZGV2L251bGxgIiA9ICdYXHQnIDsgdGhlbgogICMgWWlwcGVl
LCAkZWNobyB3b3JrcyEKICA6CmVsc2UKICAjIFJlc3RhcnQgdW5kZXIgdGhlIGNvcnJlY3Qgc2hl
bGwuCiAgZXhlYyAkU0hFTEwgIiQwIiAtLW5vLXJlZXhlYyAkezErIiRAIn0KZmkKCmlmIHRlc3Qg
IlgkMSIgPSBYLS1mYWxsYmFjay1lY2hvOyB0aGVuCiAgIyB1c2VkIGFzIGZhbGxiYWNrIGVjaG8K
ICBzaGlmdAogIGNhdCA8PEVPRgokKgpFT0YKICBleGl0IDAKZmkKCiMgVGhlIEhQLVVYIGtzaCBh
bmQgUE9TSVggc2hlbGwgcHJpbnQgdGhlIHRhcmdldCBkaXJlY3RvcnkgdG8gc3Rkb3V0CiMgaWYg
Q0RQQVRIIGlzIHNldC4KKHVuc2V0IENEUEFUSCkgPi9kZXYvbnVsbCAyPiYxICYmIHVuc2V0IENE
UEFUSAoKaWYgdGVzdCAteiAiJEVDSE8iOyB0aGVuCmlmIHRlc3QgIlgke2VjaG9fdGVzdF9zdHJp
bmcrc2V0fSIgIT0gWHNldDsgdGhlbgojIGZpbmQgYSBzdHJpbmcgYXMgbGFyZ2UgYXMgcG9zc2li
bGUsIGFzIGxvbmcgYXMgdGhlIHNoZWxsIGNhbiBjb3BlIHdpdGggaXQKICBmb3IgY21kIGluICdz
ZWQgNTBxICIkMCInICdzZWQgMjBxICIkMCInICdzZWQgMTBxICIkMCInICdzZWQgMnEgIiQwIicg
J2VjaG8gdGVzdCc7IGRvCiAgICAjIGV4cGVjdGVkIHNpemVzOiBsZXNzIHRoYW4gMktiLCAxS2Is
IDUxMiBieXRlcywgMTYgYnl0ZXMsIC4uLgogICAgaWYgKGVjaG9fdGVzdF9zdHJpbmc9YGV2YWwg
JGNtZGApIDI+L2Rldi9udWxsICYmCiAgICAgICBlY2hvX3Rlc3Rfc3RyaW5nPWBldmFsICRjbWRg
ICYmCiAgICAgICAodGVzdCAiWCRlY2hvX3Rlc3Rfc3RyaW5nIiA9ICJYJGVjaG9fdGVzdF9zdHJp
bmciKSAyPi9kZXYvbnVsbAogICAgdGhlbgogICAgICBicmVhawogICAgZmkKICBkb25lCmZpCgpp
ZiB0ZXN0ICJYYCgkZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCcgJiYKICAgZWNob190
ZXN0aW5nX3N0cmluZz1gKCRlY2hvICIkZWNob190ZXN0X3N0cmluZyIpIDI+L2Rldi9udWxsYCAm
JgogICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0cmluZyI7
IHRoZW4KICA6CmVsc2UKICAjIFRoZSBTb2xhcmlzLCBBSVgsIGFuZCBEaWdpdGFsIFVuaXggZGVm
YXVsdCBlY2hvIHByb2dyYW1zIHVucXVvdGUKICAjIGJhY2tzbGFzaGVzLiAgVGhpcyBtYWtlcyBp
dCBpbXBvc3NpYmxlIHRvIHF1b3RlIGJhY2tzbGFzaGVzIHVzaW5nCiAgIyAgIGVjaG8gIiRzb21l
dGhpbmciIHwgc2VkICdzL1xcL1xcXFwvZycKICAjCiAgIyBTbywgZmlyc3Qgd2UgbG9vayBmb3Ig
YSB3b3JraW5nIGVjaG8gaW4gdGhlIHVzZXIncyBQQVRILgoKICBsdF9zYXZlX2lmcz0iJElGUyI7
IElGUz0kUEFUSF9TRVBBUkFUT1IKICBmb3IgZGlyIGluICRQQVRIIC91c3IvdWNiOyBkbwogICAg
SUZTPSIkbHRfc2F2ZV9pZnMiCiAgICBpZiAodGVzdCAtZiAkZGlyL2VjaG8gfHwgdGVzdCAtZiAk
ZGlyL2VjaG8kYWNfZXhlZXh0KSAmJgogICAgICAgdGVzdCAiWGAoJGRpci9lY2hvICdcdCcpIDI+
L2Rldi9udWxsYCIgPSAnWFx0JyAmJgogICAgICAgZWNob190ZXN0aW5nX3N0cmluZz1gKCRkaXIv
ZWNobyAiJGVjaG9fdGVzdF9zdHJpbmciKSAyPi9kZXYvbnVsbGAgJiYKICAgICAgIHRlc3QgIlgk
ZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRlY2hvX3Rlc3Rfc3RyaW5nIjsgdGhlbgogICAgICBl
Y2hvPSIkZGlyL2VjaG8iCiAgICAgIGJyZWFrCiAgICBmaQogIGRvbmUKICBJRlM9IiRsdF9zYXZl
X2lmcyIKCiAgaWYgdGVzdCAiWCRlY2hvIiA9IFhlY2hvOyB0aGVuCiAgICAjIFdlIGRpZG4ndCBm
aW5kIGEgYmV0dGVyIGVjaG8sIHNvIGxvb2sgZm9yIGFsdGVybmF0aXZlcy4KICAgIGlmIHRlc3Qg
IlhgKHByaW50IC1yICdcdCcpIDI+L2Rldi9udWxsYCIgPSAnWFx0JyAmJgogICAgICAgZWNob190
ZXN0aW5nX3N0cmluZz1gKHByaW50IC1yICIkZWNob190ZXN0X3N0cmluZyIpIDI+L2Rldi9udWxs
YCAmJgogICAgICAgdGVzdCAiWCRlY2hvX3Rlc3Rpbmdfc3RyaW5nIiA9ICJYJGVjaG9fdGVzdF9z
dHJpbmciOyB0aGVuCiAgICAgICMgVGhpcyBzaGVsbCBoYXMgYSBidWlsdGluIHByaW50IC1yIHRo
YXQgZG9lcyB0aGUgdHJpY2suCiAgICAgIGVjaG89J3ByaW50IC1yJwogICAgZWxpZiAodGVzdCAt
ZiAvYmluL2tzaCB8fCB0ZXN0IC1mIC9iaW4va3NoJGFjX2V4ZWV4dCkgJiYKCSB0ZXN0ICJYJENP
TkZJR19TSEVMTCIgIT0gWC9iaW4va3NoOyB0aGVuCiAgICAgICMgSWYgd2UgaGF2ZSBrc2gsIHRy
eSBydW5uaW5nIGNvbmZpZ3VyZSBhZ2FpbiB3aXRoIGl0LgogICAgICBPUklHSU5BTF9DT05GSUdf
U0hFTEw9JHtDT05GSUdfU0hFTEwtL2Jpbi9zaH0KICAgICAgZXhwb3J0IE9SSUdJTkFMX0NPTkZJ
R19TSEVMTAogICAgICBDT05GSUdfU0hFTEw9L2Jpbi9rc2gKICAgICAgZXhwb3J0IENPTkZJR19T
SEVMTAogICAgICBleGVjICRDT05GSUdfU0hFTEwgIiQwIiAtLW5vLXJlZXhlYyAkezErIiRAIn0K
ICAgIGVsc2UKICAgICAgIyBUcnkgdXNpbmcgcHJpbnRmLgogICAgICBlY2hvPSdwcmludGYgJXNc
bicKICAgICAgaWYgdGVzdCAiWGAoJGVjaG8gJ1x0JykgMj4vZGV2L251bGxgIiA9ICdYXHQnICYm
CgkgZWNob190ZXN0aW5nX3N0cmluZz1gKCRlY2hvICIkZWNob190ZXN0X3N0cmluZyIpIDI+L2Rl
di9udWxsYCAmJgoJIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRlY2hvX3Rlc3Rf
c3RyaW5nIjsgdGhlbgoJIyBDb29sLCBwcmludGYgd29ya3MKCToKICAgICAgZWxpZiBlY2hvX3Rl
c3Rpbmdfc3RyaW5nPWAoJE9SSUdJTkFMX0NPTkZJR19TSEVMTCAiJDAiIC0tZmFsbGJhY2stZWNo
byAnXHQnKSAyPi9kZXYvbnVsbGAgJiYKCSAgIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0cmluZyIg
PSAnWFx0JyAmJgoJICAgZWNob190ZXN0aW5nX3N0cmluZz1gKCRPUklHSU5BTF9DT05GSUdfU0hF
TEwgIiQwIiAtLWZhbGxiYWNrLWVjaG8gIiRlY2hvX3Rlc3Rfc3RyaW5nIikgMj4vZGV2L251bGxg
ICYmCgkgICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0cmlu
ZyI7IHRoZW4KCUNPTkZJR19TSEVMTD0kT1JJR0lOQUxfQ09ORklHX1NIRUxMCglleHBvcnQgQ09O
RklHX1NIRUxMCglTSEVMTD0iJENPTkZJR19TSEVMTCIKCWV4cG9ydCBTSEVMTAoJZWNobz0iJENP
TkZJR19TSEVMTCAkMCAtLWZhbGxiYWNrLWVjaG8iCiAgICAgIGVsaWYgZWNob190ZXN0aW5nX3N0
cmluZz1gKCRDT05GSUdfU0hFTEwgIiQwIiAtLWZhbGxiYWNrLWVjaG8gJ1x0JykgMj4vZGV2L251
bGxgICYmCgkgICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gJ1hcdCcgJiYKCSAgIGVj
aG9fdGVzdGluZ19zdHJpbmc9YCgkQ09ORklHX1NIRUxMICIkMCIgLS1mYWxsYmFjay1lY2hvICIk
ZWNob190ZXN0X3N0cmluZyIpIDI+L2Rldi9udWxsYCAmJgoJICAgdGVzdCAiWCRlY2hvX3Rlc3Rp
bmdfc3RyaW5nIiA9ICJYJGVjaG9fdGVzdF9zdHJpbmciOyB0aGVuCgllY2hvPSIkQ09ORklHX1NI
RUxMICQwIC0tZmFsbGJhY2stZWNobyIKICAgICAgZWxzZQoJIyBtYXliZSB3aXRoIGEgc21hbGxl
ciBzdHJpbmcuLi4KCXByZXY9OgoKCWZvciBjbWQgaW4gJ2VjaG8gdGVzdCcgJ3NlZCAycSAiJDAi
JyAnc2VkIDEwcSAiJDAiJyAnc2VkIDIwcSAiJDAiJyAnc2VkIDUwcSAiJDAiJzsgZG8KCSAgaWYg
KHRlc3QgIlgkZWNob190ZXN0X3N0cmluZyIgPSAiWGBldmFsICRjbWRgIikgMj4vZGV2L251bGwK
CSAgdGhlbgoJICAgIGJyZWFrCgkgIGZpCgkgIHByZXY9IiRjbWQiCglkb25lCgoJaWYgdGVzdCAi
JHByZXYiICE9ICdzZWQgNTBxICIkMCInOyB0aGVuCgkgIGVjaG9fdGVzdF9zdHJpbmc9YGV2YWwg
JHByZXZgCgkgIGV4cG9ydCBlY2hvX3Rlc3Rfc3RyaW5nCgkgIGV4ZWMgJHtPUklHSU5BTF9DT05G
SUdfU0hFTEwtJHtDT05GSUdfU0hFTEwtL2Jpbi9zaH19ICIkMCIgJHsxKyIkQCJ9CgllbHNlCgkg
ICMgT29wcy4gIFdlIGxvc3QgY29tcGxldGVseSwgc28ganVzdCBzdGljayB3aXRoIGVjaG8uCgkg
IGVjaG89ZWNobwoJZmkKICAgICAgZmkKICAgIGZpCiAgZmkKZmkKZmkKCiMgQ29weSBlY2hvIGFu
ZCBxdW90ZSB0aGUgY29weSBzdWl0YWJseSBmb3IgcGFzc2luZyB0byBsaWJ0b29sIGZyb20KIyB0
aGUgTWFrZWZpbGUsIGluc3RlYWQgb2YgcXVvdGluZyB0aGUgb3JpZ2luYWwsIHdoaWNoIGlzIHVz
ZWQgbGF0ZXIuCkVDSE89JGVjaG8KaWYgdGVzdCAiWCRFQ0hPIiA9ICJYJENPTkZJR19TSEVMTCAk
MCAtLWZhbGxiYWNrLWVjaG8iOyB0aGVuCiAgIEVDSE89IiRDT05GSUdfU0hFTEwgXFxcJFwkMCAt
LWZhbGxiYWNrLWVjaG8iCmZpCgoKCgp0YWduYW1lcz0ke3RhZ25hbWVzKyR7dGFnbmFtZXN9LH1D
WFgKCnRhZ25hbWVzPSR7dGFnbmFtZXMrJHt0YWduYW1lc30sfUY3NwoKZXhlYyA3PCYwIDwvZGV2
L251bGwgNj4mMQoKIyBOYW1lIG9mIHRoZSBob3N0LgojIGhvc3RuYW1lIG9uIHNvbWUgc3lzdGVt
cyAoU1ZSMy4yLCBMaW51eCkgcmV0dXJucyBhIGJvZ3VzIGV4aXQgc3RhdHVzLAojIHNvIHVuYW1l
IGdldHMgcnVuIHRvby4KYWNfaG9zdG5hbWU9YChob3N0bmFtZSB8fCB1bmFtZSAtbikgMj4vZGV2
L251bGwgfCBzZWQgMXFgCgojCiMgSW5pdGlhbGl6YXRpb25zLgojCmFjX2RlZmF1bHRfcHJlZml4
PS91c3IvbG9jYWwKYWNfY2xlYW5fZmlsZXM9CmFjX2NvbmZpZ19saWJvYmpfZGlyPS4KTElCT0JK
Uz0KY3Jvc3NfY29tcGlsaW5nPW5vCnN1YmRpcnM9Ck1GTEFHUz0KTUFLRUZMQUdTPQpTSEVMTD0k
e0NPTkZJR19TSEVMTC0vYmluL3NofQoKIyBJZGVudGl0eSBvZiB0aGlzIHBhY2thZ2UuClBBQ0tB
R0VfTkFNRT0naHVuc3BlbGwnClBBQ0tBR0VfVEFSTkFNRT0naHVuc3BlbGwnClBBQ0tBR0VfVkVS
U0lPTj0nMS4xLjQnClBBQ0tBR0VfU1RSSU5HPSdodW5zcGVsbCAxLjEuNCcKUEFDS0FHRV9CVUdS
RVBPUlQ9J25lbWV0aGxAZ3lvcnNwb3N0YS5odScKCmFjX3VuaXF1ZV9maWxlPSJjb25maWcuaC5p
biIKIyBGYWN0b3JpbmcgZGVmYXVsdCBoZWFkZXJzIGZvciBtb3N0IHRlc3RzLgphY19pbmNsdWRl
c19kZWZhdWx0PSJcCiNpbmNsdWRlIDxzdGRpby5oPgojaWYgSEFWRV9TWVNfVFlQRVNfSAojIGlu
Y2x1ZGUgPHN5cy90eXBlcy5oPgojZW5kaWYKI2lmIEhBVkVfU1lTX1NUQVRfSAojIGluY2x1ZGUg
PHN5cy9zdGF0Lmg+CiNlbmRpZgojaWYgU1REQ19IRUFERVJTCiMgaW5jbHVkZSA8c3RkbGliLmg+
CiMgaW5jbHVkZSA8c3RkZGVmLmg+CiNlbHNlCiMgaWYgSEFWRV9TVERMSUJfSAojICBpbmNsdWRl
IDxzdGRsaWIuaD4KIyBlbmRpZgojZW5kaWYKI2lmIEhBVkVfU1RSSU5HX0gKIyBpZiAhU1REQ19I
RUFERVJTICYmIEhBVkVfTUVNT1JZX0gKIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CiMgZW5kaWYKIyBp
bmNsdWRlIDxzdHJpbmcuaD4KI2VuZGlmCiNpZiBIQVZFX1NUUklOR1NfSAojIGluY2x1ZGUgPHN0
cmluZ3MuaD4KI2VuZGlmCiNpZiBIQVZFX0lOVFRZUEVTX0gKIyBpbmNsdWRlIDxpbnR0eXBlcy5o
PgojZW5kaWYKI2lmIEhBVkVfU1RESU5UX0gKIyBpbmNsdWRlIDxzdGRpbnQuaD4KI2VuZGlmCiNp
ZiBIQVZFX1VOSVNURF9ICiMgaW5jbHVkZSA8dW5pc3RkLmg+CiNlbmRpZiIKCmFjX3N1YnN0X3Zh
cnM9J1NIRUxMClBBVEhfU0VQQVJBVE9SClBBQ0tBR0VfTkFNRQpQQUNLQUdFX1RBUk5BTUUKUEFD
S0FHRV9WRVJTSU9OClBBQ0tBR0VfU1RSSU5HClBBQ0tBR0VfQlVHUkVQT1JUCmV4ZWNfcHJlZml4
CnByZWZpeApwcm9ncmFtX3RyYW5zZm9ybV9uYW1lCmJpbmRpcgpzYmluZGlyCmxpYmV4ZWNkaXIK
ZGF0YXJvb3RkaXIKZGF0YWRpcgpzeXNjb25mZGlyCnNoYXJlZHN0YXRlZGlyCmxvY2Fsc3RhdGVk
aXIKaW5jbHVkZWRpcgpvbGRpbmNsdWRlZGlyCmRvY2RpcgppbmZvZGlyCmh0bWxkaXIKZHZpZGly
CnBkZmRpcgpwc2RpcgpsaWJkaXIKbG9jYWxlZGlyCm1hbmRpcgpERUZTCkVDSE9fQwpFQ0hPX04K
RUNIT19UCkxJQlMKYnVpbGRfYWxpYXMKaG9zdF9hbGlhcwp0YXJnZXRfYWxpYXMKYnVpbGQKYnVp
bGRfY3B1CmJ1aWxkX3ZlbmRvcgpidWlsZF9vcwpob3N0Cmhvc3RfY3B1Cmhvc3RfdmVuZG9yCmhv
c3Rfb3MKdGFyZ2V0CnRhcmdldF9jcHUKdGFyZ2V0X3ZlbmRvcgp0YXJnZXRfb3MKWEZBSUxFRApJ
TlNUQUxMX1BST0dSQU0KSU5TVEFMTF9TQ1JJUFQKSU5TVEFMTF9EQVRBCkNZR1BBVEhfVwpQQUNL
QUdFClZFUlNJT04KQUNMT0NBTApBVVRPQ09ORgpBVVRPTUFLRQpBVVRPSEVBREVSCk1BS0VJTkZP
Cmluc3RhbGxfc2gKU1RSSVAKSU5TVEFMTF9TVFJJUF9QUk9HUkFNCm1rZGlyX3AKQVdLClNFVF9N
QUtFCmFtX19sZWFkaW5nX2RvdApBTVRBUgphbV9fdGFyCmFtX191bnRhcgpDWFgKQ1hYRkxBR1MK
TERGTEFHUwpDUFBGTEFHUwphY19jdF9DWFgKRVhFRVhUCk9CSkVYVApERVBESVIKYW1fX2luY2x1
ZGUKYW1fX3F1b3RlCkFNREVQX1RSVUUKQU1ERVBfRkFMU0UKQU1ERVBCQUNLU0xBU0gKQ1hYREVQ
TU9ERQphbV9fZmFzdGRlcENYWF9UUlVFCmFtX19mYXN0ZGVwQ1hYX0ZBTFNFCkNDCkNGTEFHUwph
Y19jdF9DQwpDQ0RFUE1PREUKYW1fX2Zhc3RkZXBDQ19UUlVFCmFtX19mYXN0ZGVwQ0NfRkFMU0UK
R1JFUApFR1JFUApMTl9TCkVDSE8KQVIKUkFOTElCCkNQUApDWFhDUFAKRjc3CkZGTEFHUwphY19j
dF9GNzcKTElCVE9PTApMSUJPQkpTClVTRV9OTFMKTVNHRk1UCkdNU0dGTVQKTVNHRk1UXzAxNQpH
TVNHRk1UXzAxNQpYR0VUVEVYVApYR0VUVEVYVF8wMTUKTVNHTUVSR0UKR0xJQkMyCkNGTEFHX1ZJ
U0lCSUxJVFkKSEFWRV9WSVNJQklMSVRZCkFMTE9DQQpMSUJQVEgKTFRMSUJQVEgKTElCVEhSRUFE
CkxUTElCVEhSRUFECkxJQk1VTFRJVEhSRUFECkxUTElCTVVMVElUSFJFQUQKTElCSUNPTlYKTFRM
SUJJQ09OVgpJTlRMQklTT04KR0xJQkMyMQpJTlRMX01BQ09TWF9MSUJTCkhBVkVfUE9TSVhfUFJJ
TlRGCkhBVkVfQVNQUklOVEYKSEFWRV9TTlBSSU5URgpIQVZFX1dQUklOVEYKV09FMzJETEwKQlVJ
TERfSU5DTFVERURfTElCSU5UTApVU0VfSU5DTFVERURfTElCSU5UTApDQVRPQkpFWFQKREFUQURJ
Uk5BTUUKSU5TVE9CSkVYVApHRU5DQVQKSU5UTE9CSlMKSU5UTF9MSUJUT09MX1NVRkZJWF9QUkVG
SVgKSU5UTExJQlMKTElCSU5UTApMVExJQklOVEwKUE9TVUIKQ1VSU0VTTElCClJFQURMSU5FTElC
CkxUTElCT0JKUycKYWNfc3Vic3RfZmlsZXM9JycKICAgICAgYWNfcHJlY2lvdXNfdmFycz0nYnVp
bGRfYWxpYXMKaG9zdF9hbGlhcwp0YXJnZXRfYWxpYXMKQ1hYCkNYWEZMQUdTCkxERkxBR1MKQ1BQ
RkxBR1MKQ0NDCkNDCkNGTEFHUwpDUFAKQ1hYQ1BQCkY3NwpGRkxBR1MnCgoKIyBJbml0aWFsaXpl
IHNvbWUgdmFyaWFibGVzIHNldCBieSBvcHRpb25zLgphY19pbml0X2hlbHA9CmFjX2luaXRfdmVy
c2lvbj1mYWxzZQojIFRoZSB2YXJpYWJsZXMgaGF2ZSB0aGUgc2FtZSBuYW1lcyBhcyB0aGUgb3B0
aW9ucywgd2l0aAojIGRhc2hlcyBjaGFuZ2VkIHRvIHVuZGVybGluZXMuCmNhY2hlX2ZpbGU9L2Rl
di9udWxsCmV4ZWNfcHJlZml4PU5PTkUKbm9fY3JlYXRlPQpub19yZWN1cnNpb249CnByZWZpeD1O
T05FCnByb2dyYW1fcHJlZml4PU5PTkUKcHJvZ3JhbV9zdWZmaXg9Tk9ORQpwcm9ncmFtX3RyYW5z
Zm9ybV9uYW1lPXMseCx4LApzaWxlbnQ9CnNpdGU9CnNyY2Rpcj0KdmVyYm9zZT0KeF9pbmNsdWRl
cz1OT05FCnhfbGlicmFyaWVzPU5PTkUKCiMgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvcHRpb25z
LgojIFRoZXNlIGFyZSBsZWZ0IHVuZXhwYW5kZWQgc28gdXNlcnMgY2FuICJtYWtlIGluc3RhbGwg
ZXhlY19wcmVmaXg9L2ZvbyIKIyBhbmQgYWxsIHRoZSB2YXJpYWJsZXMgdGhhdCBhcmUgc3VwcG9z
ZWQgdG8gYmUgYmFzZWQgb24gZXhlY19wcmVmaXgKIyBieSBkZWZhdWx0IHdpbGwgYWN0dWFsbHkg
Y2hhbmdlLgojIFVzZSBicmFjZXMgaW5zdGVhZCBvZiBwYXJlbnMgYmVjYXVzZSBzaCwgcGVybCwg
ZXRjLiBhbHNvIGFjY2VwdCB0aGVtLgojIChUaGUgbGlzdCBmb2xsb3dzIHRoZSBzYW1lIG9yZGVy
IGFzIHRoZSBHTlUgQ29kaW5nIFN0YW5kYXJkcy4pCmJpbmRpcj0nJHtleGVjX3ByZWZpeH0vYmlu
JwpzYmluZGlyPScke2V4ZWNfcHJlZml4fS9zYmluJwpsaWJleGVjZGlyPScke2V4ZWNfcHJlZml4
fS9saWJleGVjJwpkYXRhcm9vdGRpcj0nJHtwcmVmaXh9L3NoYXJlJwpkYXRhZGlyPScke2RhdGFy
b290ZGlyfScKc3lzY29uZmRpcj0nJHtwcmVmaXh9L2V0YycKc2hhcmVkc3RhdGVkaXI9JyR7cHJl
Zml4fS9jb20nCmxvY2Fsc3RhdGVkaXI9JyR7cHJlZml4fS92YXInCmluY2x1ZGVkaXI9JyR7cHJl
Zml4fS9pbmNsdWRlJwpvbGRpbmNsdWRlZGlyPScvdXNyL2luY2x1ZGUnCmRvY2Rpcj0nJHtkYXRh
cm9vdGRpcn0vZG9jLyR7UEFDS0FHRV9UQVJOQU1FfScKaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0v
aW5mbycKaHRtbGRpcj0nJHtkb2NkaXJ9JwpkdmlkaXI9JyR7ZG9jZGlyfScKcGRmZGlyPScke2Rv
Y2Rpcn0nCnBzZGlyPScke2RvY2Rpcn0nCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsb2Nh
bGVkaXI9JyR7ZGF0YXJvb3RkaXJ9L2xvY2FsZScKbWFuZGlyPScke2RhdGFyb290ZGlyfS9tYW4n
CgphY19wcmV2PQphY19kYXNoZGFzaD0KZm9yIGFjX29wdGlvbgpkbwogICMgSWYgdGhlIHByZXZp
b3VzIG9wdGlvbiBuZWVkcyBhbiBhcmd1bWVudCwgYXNzaWduIGl0LgogIGlmIHRlc3QgLW4gIiRh
Y19wcmV2IjsgdGhlbgogICAgZXZhbCAkYWNfcHJldj1cJGFjX29wdGlvbgogICAgYWNfcHJldj0K
ICAgIGNvbnRpbnVlCiAgZmkKCiAgY2FzZSAkYWNfb3B0aW9uIGluCiAgKj0qKQlhY19vcHRhcmc9
YGV4cHIgIlgkYWNfb3B0aW9uIiA6ICdbXj1dKj1cKC4qXCknYCA7OwogICopCWFjX29wdGFyZz15
ZXMgOzsKICBlc2FjCgogICMgQWNjZXB0IHRoZSBpbXBvcnRhbnQgQ3lnbnVzIGNvbmZpZ3VyZSBv
cHRpb25zLCBzbyB3ZSBjYW4gZGlhZ25vc2UgdHlwb3MuCgogIGNhc2UgJGFjX2Rhc2hkYXNoJGFj
X29wdGlvbiBpbgogIC0tKQogICAgYWNfZGFzaGRhc2g9eWVzIDs7CgogIC1iaW5kaXIgfCAtLWJp
bmRpciB8IC0tYmluZGkgfCAtLWJpbmQgfCAtLWJpbiB8IC0tYmkpCiAgICBhY19wcmV2PWJpbmRp
ciA7OwogIC1iaW5kaXI9KiB8IC0tYmluZGlyPSogfCAtLWJpbmRpPSogfCAtLWJpbmQ9KiB8IC0t
YmluPSogfCAtLWJpPSopCiAgICBiaW5kaXI9JGFjX29wdGFyZyA7OwoKICAtYnVpbGQgfCAtLWJ1
aWxkIHwgLS1idWlsIHwgLS1idWkgfCAtLWJ1KQogICAgYWNfcHJldj1idWlsZF9hbGlhcyA7Owog
IC1idWlsZD0qIHwgLS1idWlsZD0qIHwgLS1idWlsPSogfCAtLWJ1aT0qIHwgLS1idT0qKQogICAg
YnVpbGRfYWxpYXM9JGFjX29wdGFyZyA7OwoKICAtY2FjaGUtZmlsZSB8IC0tY2FjaGUtZmlsZSB8
IC0tY2FjaGUtZmlsIHwgLS1jYWNoZS1maSBcCiAgfCAtLWNhY2hlLWYgfCAtLWNhY2hlLSB8IC0t
Y2FjaGUgfCAtLWNhY2ggfCAtLWNhYyB8IC0tY2EgfCAtLWMpCiAgICBhY19wcmV2PWNhY2hlX2Zp
bGUgOzsKICAtY2FjaGUtZmlsZT0qIHwgLS1jYWNoZS1maWxlPSogfCAtLWNhY2hlLWZpbD0qIHwg
LS1jYWNoZS1maT0qIFwKICB8IC0tY2FjaGUtZj0qIHwgLS1jYWNoZS09KiB8IC0tY2FjaGU9KiB8
IC0tY2FjaD0qIHwgLS1jYWM9KiB8IC0tY2E9KiB8IC0tYz0qKQogICAgY2FjaGVfZmlsZT0kYWNf
b3B0YXJnIDs7CgogIC0tY29uZmlnLWNhY2hlIHwgLUMpCiAgICBjYWNoZV9maWxlPWNvbmZpZy5j
YWNoZSA7OwoKICAtZGF0YWRpciB8IC0tZGF0YWRpciB8IC0tZGF0YWRpIHwgLS1kYXRhZCkKICAg
IGFjX3ByZXY9ZGF0YWRpciA7OwogIC1kYXRhZGlyPSogfCAtLWRhdGFkaXI9KiB8IC0tZGF0YWRp
PSogfCAtLWRhdGFkPSopCiAgICBkYXRhZGlyPSRhY19vcHRhcmcgOzsKCiAgLWRhdGFyb290ZGly
IHwgLS1kYXRhcm9vdGRpciB8IC0tZGF0YXJvb3RkaSB8IC0tZGF0YXJvb3RkIHwgLS1kYXRhcm9v
dCBcCiAgfCAtLWRhdGFyb28gfCAtLWRhdGFybyB8IC0tZGF0YXIpCiAgICBhY19wcmV2PWRhdGFy
b290ZGlyIDs7CiAgLWRhdGFyb290ZGlyPSogfCAtLWRhdGFyb290ZGlyPSogfCAtLWRhdGFyb290
ZGk9KiB8IC0tZGF0YXJvb3RkPSogXAogIHwgLS1kYXRhcm9vdD0qIHwgLS1kYXRhcm9vPSogfCAt
LWRhdGFybz0qIHwgLS1kYXRhcj0qKQogICAgZGF0YXJvb3RkaXI9JGFjX29wdGFyZyA7OwoKICAt
ZGlzYWJsZS0qIHwgLS1kaXNhYmxlLSopCiAgICBhY19mZWF0dXJlPWBleHByICJ4JGFjX29wdGlv
biIgOiAneC0qZGlzYWJsZS1cKC4qXCknYAogICAgIyBSZWplY3QgbmFtZXMgdGhhdCBhcmUgbm90
IHZhbGlkIHNoZWxsIHZhcmlhYmxlIG5hbWVzLgogICAgZXhwciAieCRhY19mZWF0dXJlIiA6ICIu
KlteLV8kYXNfY3JfYWxudW1dIiA+L2Rldi9udWxsICYmCiAgICAgIHsgZWNobyAiJGFzX21lOiBl
cnJvcjogaW52YWxpZCBmZWF0dXJlIG5hbWU6ICRhY19mZWF0dXJlIiA+JjIKICAgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9OyB9CiAgICBhY19mZWF0dXJlPWBlY2hvICRhY19mZWF0dXJlIHwgc2VkICdz
Ly0vXy9nJ2AKICAgIGV2YWwgZW5hYmxlXyRhY19mZWF0dXJlPW5vIDs7CgogIC1kb2NkaXIgfCAt
LWRvY2RpciB8IC0tZG9jZGkgfCAtLWRvYyB8IC0tZG8pCiAgICBhY19wcmV2PWRvY2RpciA7Owog
IC1kb2NkaXI9KiB8IC0tZG9jZGlyPSogfCAtLWRvY2RpPSogfCAtLWRvYz0qIHwgLS1kbz0qKQog
ICAgZG9jZGlyPSRhY19vcHRhcmcgOzsKCiAgLWR2aWRpciB8IC0tZHZpZGlyIHwgLS1kdmlkaSB8
IC0tZHZpZCB8IC0tZHZpIHwgLS1kdikKICAgIGFjX3ByZXY9ZHZpZGlyIDs7CiAgLWR2aWRpcj0q
IHwgLS1kdmlkaXI9KiB8IC0tZHZpZGk9KiB8IC0tZHZpZD0qIHwgLS1kdmk9KiB8IC0tZHY9KikK
ICAgIGR2aWRpcj0kYWNfb3B0YXJnIDs7CgogIC1lbmFibGUtKiB8IC0tZW5hYmxlLSopCiAgICBh
Y19mZWF0dXJlPWBleHByICJ4JGFjX29wdGlvbiIgOiAneC0qZW5hYmxlLVwoW149XSpcKSdgCiAg
ICAjIFJlamVjdCBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgc2hlbGwgdmFyaWFibGUgbmFtZXMu
CiAgICBleHByICJ4JGFjX2ZlYXR1cmUiIDogIi4qW14tXyRhc19jcl9hbG51bV0iID4vZGV2L251
bGwgJiYKICAgICAgeyBlY2hvICIkYXNfbWU6IGVycm9yOiBpbnZhbGlkIGZlYXR1cmUgbmFtZTog
JGFjX2ZlYXR1cmUiID4mMgogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KICAgIGFjX2ZlYXR1
cmU9YGVjaG8gJGFjX2ZlYXR1cmUgfCBzZWQgJ3MvLS9fL2cnYAogICAgZXZhbCBlbmFibGVfJGFj
X2ZlYXR1cmU9XCRhY19vcHRhcmcgOzsKCiAgLWV4ZWMtcHJlZml4IHwgLS1leGVjX3ByZWZpeCB8
IC0tZXhlYy1wcmVmaXggfCAtLWV4ZWMtcHJlZmkgXAogIHwgLS1leGVjLXByZWYgfCAtLWV4ZWMt
cHJlIHwgLS1leGVjLXByIHwgLS1leGVjLXAgfCAtLWV4ZWMtIFwKICB8IC0tZXhlYyB8IC0tZXhl
IHwgLS1leCkKICAgIGFjX3ByZXY9ZXhlY19wcmVmaXggOzsKICAtZXhlYy1wcmVmaXg9KiB8IC0t
ZXhlY19wcmVmaXg9KiB8IC0tZXhlYy1wcmVmaXg9KiB8IC0tZXhlYy1wcmVmaT0qIFwKICB8IC0t
ZXhlYy1wcmVmPSogfCAtLWV4ZWMtcHJlPSogfCAtLWV4ZWMtcHI9KiB8IC0tZXhlYy1wPSogfCAt
LWV4ZWMtPSogXAogIHwgLS1leGVjPSogfCAtLWV4ZT0qIHwgLS1leD0qKQogICAgZXhlY19wcmVm
aXg9JGFjX29wdGFyZyA7OwoKICAtZ2FzIHwgLS1nYXMgfCAtLWdhIHwgLS1nKQogICAgIyBPYnNv
bGV0ZTsgdXNlIC0td2l0aC1nYXMuCiAgICB3aXRoX2dhcz15ZXMgOzsKCiAgLWhlbHAgfCAtLWhl
bHAgfCAtLWhlbCB8IC0taGUgfCAtaCkKICAgIGFjX2luaXRfaGVscD1sb25nIDs7CiAgLWhlbHA9
ciogfCAtLWhlbHA9ciogfCAtLWhlbD1yKiB8IC0taGU9ciogfCAtaHIqKQogICAgYWNfaW5pdF9o
ZWxwPXJlY3Vyc2l2ZSA7OwogIC1oZWxwPXMqIHwgLS1oZWxwPXMqIHwgLS1oZWw9cyogfCAtLWhl
PXMqIHwgLWhzKikKICAgIGFjX2luaXRfaGVscD1zaG9ydCA7OwoKICAtaG9zdCB8IC0taG9zdCB8
IC0taG9zIHwgLS1obykKICAgIGFjX3ByZXY9aG9zdF9hbGlhcyA7OwogIC1ob3N0PSogfCAtLWhv
c3Q9KiB8IC0taG9zPSogfCAtLWhvPSopCiAgICBob3N0X2FsaWFzPSRhY19vcHRhcmcgOzsKCiAg
LWh0bWxkaXIgfCAtLWh0bWxkaXIgfCAtLWh0bWxkaSB8IC0taHRtbGQgfCAtLWh0bWwgfCAtLWh0
bSB8IC0taHQpCiAgICBhY19wcmV2PWh0bWxkaXIgOzsKICAtaHRtbGRpcj0qIHwgLS1odG1sZGly
PSogfCAtLWh0bWxkaT0qIHwgLS1odG1sZD0qIHwgLS1odG1sPSogfCAtLWh0bT0qIFwKICB8IC0t
aHQ9KikKICAgIGh0bWxkaXI9JGFjX29wdGFyZyA7OwoKICAtaW5jbHVkZWRpciB8IC0taW5jbHVk
ZWRpciB8IC0taW5jbHVkZWRpIHwgLS1pbmNsdWRlZCB8IC0taW5jbHVkZSBcCiAgfCAtLWluY2x1
ZCB8IC0taW5jbHUgfCAtLWluY2wgfCAtLWluYykKICAgIGFjX3ByZXY9aW5jbHVkZWRpciA7Owog
IC1pbmNsdWRlZGlyPSogfCAtLWluY2x1ZGVkaXI9KiB8IC0taW5jbHVkZWRpPSogfCAtLWluY2x1
ZGVkPSogfCAtLWluY2x1ZGU9KiBcCiAgfCAtLWluY2x1ZD0qIHwgLS1pbmNsdT0qIHwgLS1pbmNs
PSogfCAtLWluYz0qKQogICAgaW5jbHVkZWRpcj0kYWNfb3B0YXJnIDs7CgogIC1pbmZvZGlyIHwg
LS1pbmZvZGlyIHwgLS1pbmZvZGkgfCAtLWluZm9kIHwgLS1pbmZvIHwgLS1pbmYpCiAgICBhY19w
cmV2PWluZm9kaXIgOzsKICAtaW5mb2Rpcj0qIHwgLS1pbmZvZGlyPSogfCAtLWluZm9kaT0qIHwg
LS1pbmZvZD0qIHwgLS1pbmZvPSogfCAtLWluZj0qKQogICAgaW5mb2Rpcj0kYWNfb3B0YXJnIDs7
CgogIC1saWJkaXIgfCAtLWxpYmRpciB8IC0tbGliZGkgfCAtLWxpYmQpCiAgICBhY19wcmV2PWxp
YmRpciA7OwogIC1saWJkaXI9KiB8IC0tbGliZGlyPSogfCAtLWxpYmRpPSogfCAtLWxpYmQ9KikK
ICAgIGxpYmRpcj0kYWNfb3B0YXJnIDs7CgogIC1saWJleGVjZGlyIHwgLS1saWJleGVjZGlyIHwg
LS1saWJleGVjZGkgfCAtLWxpYmV4ZWNkIHwgLS1saWJleGVjIFwKICB8IC0tbGliZXhlIHwgLS1s
aWJleCB8IC0tbGliZSkKICAgIGFjX3ByZXY9bGliZXhlY2RpciA7OwogIC1saWJleGVjZGlyPSog
fCAtLWxpYmV4ZWNkaXI9KiB8IC0tbGliZXhlY2RpPSogfCAtLWxpYmV4ZWNkPSogfCAtLWxpYmV4
ZWM9KiBcCiAgfCAtLWxpYmV4ZT0qIHwgLS1saWJleD0qIHwgLS1saWJlPSopCiAgICBsaWJleGVj
ZGlyPSRhY19vcHRhcmcgOzsKCiAgLWxvY2FsZWRpciB8IC0tbG9jYWxlZGlyIHwgLS1sb2NhbGVk
aSB8IC0tbG9jYWxlZCB8IC0tbG9jYWxlKQogICAgYWNfcHJldj1sb2NhbGVkaXIgOzsKICAtbG9j
YWxlZGlyPSogfCAtLWxvY2FsZWRpcj0qIHwgLS1sb2NhbGVkaT0qIHwgLS1sb2NhbGVkPSogfCAt
LWxvY2FsZT0qKQogICAgbG9jYWxlZGlyPSRhY19vcHRhcmcgOzsKCiAgLWxvY2Fsc3RhdGVkaXIg
fCAtLWxvY2Fsc3RhdGVkaXIgfCAtLWxvY2Fsc3RhdGVkaSB8IC0tbG9jYWxzdGF0ZWQgXAogIHwg
LS1sb2NhbHN0YXRlIHwgLS1sb2NhbHN0YXQgfCAtLWxvY2Fsc3RhIHwgLS1sb2NhbHN0IHwgLS1s
b2NhbHMpCiAgICBhY19wcmV2PWxvY2Fsc3RhdGVkaXIgOzsKICAtbG9jYWxzdGF0ZWRpcj0qIHwg
LS1sb2NhbHN0YXRlZGlyPSogfCAtLWxvY2Fsc3RhdGVkaT0qIHwgLS1sb2NhbHN0YXRlZD0qIFwK
ICB8IC0tbG9jYWxzdGF0ZT0qIHwgLS1sb2NhbHN0YXQ9KiB8IC0tbG9jYWxzdGE9KiB8IC0tbG9j
YWxzdD0qIHwgLS1sb2NhbHM9KikKICAgIGxvY2Fsc3RhdGVkaXI9JGFjX29wdGFyZyA7OwoKICAt
bWFuZGlyIHwgLS1tYW5kaXIgfCAtLW1hbmRpIHwgLS1tYW5kIHwgLS1tYW4gfCAtLW1hIHwgLS1t
KQogICAgYWNfcHJldj1tYW5kaXIgOzsKICAtbWFuZGlyPSogfCAtLW1hbmRpcj0qIHwgLS1tYW5k
aT0qIHwgLS1tYW5kPSogfCAtLW1hbj0qIHwgLS1tYT0qIHwgLS1tPSopCiAgICBtYW5kaXI9JGFj
X29wdGFyZyA7OwoKICAtbmZwIHwgLS1uZnAgfCAtLW5mKQogICAgIyBPYnNvbGV0ZTsgdXNlIC0t
d2l0aG91dC1mcC4KICAgIHdpdGhfZnA9bm8gOzsKCiAgLW5vLWNyZWF0ZSB8IC0tbm8tY3JlYXRl
IHwgLS1uby1jcmVhdCB8IC0tbm8tY3JlYSB8IC0tbm8tY3JlIFwKICB8IC0tbm8tY3IgfCAtLW5v
LWMgfCAtbikKICAgIG5vX2NyZWF0ZT15ZXMgOzsKCiAgLW5vLXJlY3Vyc2lvbiB8IC0tbm8tcmVj
dXJzaW9uIHwgLS1uby1yZWN1cnNpbyB8IC0tbm8tcmVjdXJzaSBcCiAgfCAtLW5vLXJlY3VycyB8
IC0tbm8tcmVjdXIgfCAtLW5vLXJlY3UgfCAtLW5vLXJlYyB8IC0tbm8tcmUgfCAtLW5vLXIpCiAg
ICBub19yZWN1cnNpb249eWVzIDs7CgogIC1vbGRpbmNsdWRlZGlyIHwgLS1vbGRpbmNsdWRlZGly
IHwgLS1vbGRpbmNsdWRlZGkgfCAtLW9sZGluY2x1ZGVkIFwKICB8IC0tb2xkaW5jbHVkZSB8IC0t
b2xkaW5jbHVkIHwgLS1vbGRpbmNsdSB8IC0tb2xkaW5jbCB8IC0tb2xkaW5jIFwKICB8IC0tb2xk
aW4gfCAtLW9sZGkgfCAtLW9sZCB8IC0tb2wgfCAtLW8pCiAgICBhY19wcmV2PW9sZGluY2x1ZGVk
aXIgOzsKICAtb2xkaW5jbHVkZWRpcj0qIHwgLS1vbGRpbmNsdWRlZGlyPSogfCAtLW9sZGluY2x1
ZGVkaT0qIHwgLS1vbGRpbmNsdWRlZD0qIFwKICB8IC0tb2xkaW5jbHVkZT0qIHwgLS1vbGRpbmNs
dWQ9KiB8IC0tb2xkaW5jbHU9KiB8IC0tb2xkaW5jbD0qIHwgLS1vbGRpbmM9KiBcCiAgfCAtLW9s
ZGluPSogfCAtLW9sZGk9KiB8IC0tb2xkPSogfCAtLW9sPSogfCAtLW89KikKICAgIG9sZGluY2x1
ZGVkaXI9JGFjX29wdGFyZyA7OwoKICAtcHJlZml4IHwgLS1wcmVmaXggfCAtLXByZWZpIHwgLS1w
cmVmIHwgLS1wcmUgfCAtLXByIHwgLS1wKQogICAgYWNfcHJldj1wcmVmaXggOzsKICAtcHJlZml4
PSogfCAtLXByZWZpeD0qIHwgLS1wcmVmaT0qIHwgLS1wcmVmPSogfCAtLXByZT0qIHwgLS1wcj0q
IHwgLS1wPSopCiAgICBwcmVmaXg9JGFjX29wdGFyZyA7OwoKICAtcHJvZ3JhbS1wcmVmaXggfCAt
LXByb2dyYW0tcHJlZml4IHwgLS1wcm9ncmFtLXByZWZpIHwgLS1wcm9ncmFtLXByZWYgXAogIHwg
LS1wcm9ncmFtLXByZSB8IC0tcHJvZ3JhbS1wciB8IC0tcHJvZ3JhbS1wKQogICAgYWNfcHJldj1w
cm9ncmFtX3ByZWZpeCA7OwogIC1wcm9ncmFtLXByZWZpeD0qIHwgLS1wcm9ncmFtLXByZWZpeD0q
IHwgLS1wcm9ncmFtLXByZWZpPSogXAogIHwgLS1wcm9ncmFtLXByZWY9KiB8IC0tcHJvZ3JhbS1w
cmU9KiB8IC0tcHJvZ3JhbS1wcj0qIHwgLS1wcm9ncmFtLXA9KikKICAgIHByb2dyYW1fcHJlZml4
PSRhY19vcHRhcmcgOzsKCiAgLXByb2dyYW0tc3VmZml4IHwgLS1wcm9ncmFtLXN1ZmZpeCB8IC0t
cHJvZ3JhbS1zdWZmaSB8IC0tcHJvZ3JhbS1zdWZmIFwKICB8IC0tcHJvZ3JhbS1zdWYgfCAtLXBy
b2dyYW0tc3UgfCAtLXByb2dyYW0tcykKICAgIGFjX3ByZXY9cHJvZ3JhbV9zdWZmaXggOzsKICAt
cHJvZ3JhbS1zdWZmaXg9KiB8IC0tcHJvZ3JhbS1zdWZmaXg9KiB8IC0tcHJvZ3JhbS1zdWZmaT0q
IFwKICB8IC0tcHJvZ3JhbS1zdWZmPSogfCAtLXByb2dyYW0tc3VmPSogfCAtLXByb2dyYW0tc3U9
KiB8IC0tcHJvZ3JhbS1zPSopCiAgICBwcm9ncmFtX3N1ZmZpeD0kYWNfb3B0YXJnIDs7CgogIC1w
cm9ncmFtLXRyYW5zZm9ybS1uYW1lIHwgLS1wcm9ncmFtLXRyYW5zZm9ybS1uYW1lIFwKICB8IC0t
cHJvZ3JhbS10cmFuc2Zvcm0tbmFtIHwgLS1wcm9ncmFtLXRyYW5zZm9ybS1uYSBcCiAgfCAtLXBy
b2dyYW0tdHJhbnNmb3JtLW4gfCAtLXByb2dyYW0tdHJhbnNmb3JtLSBcCiAgfCAtLXByb2dyYW0t
dHJhbnNmb3JtIHwgLS1wcm9ncmFtLXRyYW5zZm9yIFwKICB8IC0tcHJvZ3JhbS10cmFuc2ZvIHwg
LS1wcm9ncmFtLXRyYW5zZiBcCiAgfCAtLXByb2dyYW0tdHJhbnMgfCAtLXByb2dyYW0tdHJhbiBc
CiAgfCAtLXByb2dyLXRyYSB8IC0tcHJvZ3JhbS10ciB8IC0tcHJvZ3JhbS10KQogICAgYWNfcHJl
dj1wcm9ncmFtX3RyYW5zZm9ybV9uYW1lIDs7CiAgLXByb2dyYW0tdHJhbnNmb3JtLW5hbWU9KiB8
IC0tcHJvZ3JhbS10cmFuc2Zvcm0tbmFtZT0qIFwKICB8IC0tcHJvZ3JhbS10cmFuc2Zvcm0tbmFt
PSogfCAtLXByb2dyYW0tdHJhbnNmb3JtLW5hPSogXAogIHwgLS1wcm9ncmFtLXRyYW5zZm9ybS1u
PSogfCAtLXByb2dyYW0tdHJhbnNmb3JtLT0qIFwKICB8IC0tcHJvZ3JhbS10cmFuc2Zvcm09KiB8
IC0tcHJvZ3JhbS10cmFuc2Zvcj0qIFwKICB8IC0tcHJvZ3JhbS10cmFuc2ZvPSogfCAtLXByb2dy
YW0tdHJhbnNmPSogXAogIHwgLS1wcm9ncmFtLXRyYW5zPSogfCAtLXByb2dyYW0tdHJhbj0qIFwK
ICB8IC0tcHJvZ3ItdHJhPSogfCAtLXByb2dyYW0tdHI9KiB8IC0tcHJvZ3JhbS10PSopCiAgICBw
cm9ncmFtX3RyYW5zZm9ybV9uYW1lPSRhY19vcHRhcmcgOzsKCiAgLXBkZmRpciB8IC0tcGRmZGly
IHwgLS1wZGZkaSB8IC0tcGRmZCB8IC0tcGRmIHwgLS1wZCkKICAgIGFjX3ByZXY9cGRmZGlyIDs7
CiAgLXBkZmRpcj0qIHwgLS1wZGZkaXI9KiB8IC0tcGRmZGk9KiB8IC0tcGRmZD0qIHwgLS1wZGY9
KiB8IC0tcGQ9KikKICAgIHBkZmRpcj0kYWNfb3B0YXJnIDs7CgogIC1wc2RpciB8IC0tcHNkaXIg
fCAtLXBzZGkgfCAtLXBzZCB8IC0tcHMpCiAgICBhY19wcmV2PXBzZGlyIDs7CiAgLXBzZGlyPSog
fCAtLXBzZGlyPSogfCAtLXBzZGk9KiB8IC0tcHNkPSogfCAtLXBzPSopCiAgICBwc2Rpcj0kYWNf
b3B0YXJnIDs7CgogIC1xIHwgLXF1aWV0IHwgLS1xdWlldCB8IC0tcXVpZSB8IC0tcXVpIHwgLS1x
dSB8IC0tcSBcCiAgfCAtc2lsZW50IHwgLS1zaWxlbnQgfCAtLXNpbGVuIHwgLS1zaWxlIHwgLS1z
aWwpCiAgICBzaWxlbnQ9eWVzIDs7CgogIC1zYmluZGlyIHwgLS1zYmluZGlyIHwgLS1zYmluZGkg
fCAtLXNiaW5kIHwgLS1zYmluIHwgLS1zYmkgfCAtLXNiKQogICAgYWNfcHJldj1zYmluZGlyIDs7
CiAgLXNiaW5kaXI9KiB8IC0tc2JpbmRpcj0qIHwgLS1zYmluZGk9KiB8IC0tc2JpbmQ9KiB8IC0t
c2Jpbj0qIFwKICB8IC0tc2JpPSogfCAtLXNiPSopCiAgICBzYmluZGlyPSRhY19vcHRhcmcgOzsK
CiAgLXNoYXJlZHN0YXRlZGlyIHwgLS1zaGFyZWRzdGF0ZWRpciB8IC0tc2hhcmVkc3RhdGVkaSBc
CiAgfCAtLXNoYXJlZHN0YXRlZCB8IC0tc2hhcmVkc3RhdGUgfCAtLXNoYXJlZHN0YXQgfCAtLXNo
YXJlZHN0YSBcCiAgfCAtLXNoYXJlZHN0IHwgLS1zaGFyZWRzIHwgLS1zaGFyZWQgfCAtLXNoYXJl
IHwgLS1zaGFyIFwKICB8IC0tc2hhIHwgLS1zaCkKICAgIGFjX3ByZXY9c2hhcmVkc3RhdGVkaXIg
OzsKICAtc2hhcmVkc3RhdGVkaXI9KiB8IC0tc2hhcmVkc3RhdGVkaXI9KiB8IC0tc2hhcmVkc3Rh
dGVkaT0qIFwKICB8IC0tc2hhcmVkc3RhdGVkPSogfCAtLXNoYXJlZHN0YXRlPSogfCAtLXNoYXJl
ZHN0YXQ9KiB8IC0tc2hhcmVkc3RhPSogXAogIHwgLS1zaGFyZWRzdD0qIHwgLS1zaGFyZWRzPSog
fCAtLXNoYXJlZD0qIHwgLS1zaGFyZT0qIHwgLS1zaGFyPSogXAogIHwgLS1zaGE9KiB8IC0tc2g9
KikKICAgIHNoYXJlZHN0YXRlZGlyPSRhY19vcHRhcmcgOzsKCiAgLXNpdGUgfCAtLXNpdGUgfCAt
LXNpdCkKICAgIGFjX3ByZXY9c2l0ZSA7OwogIC1zaXRlPSogfCAtLXNpdGU9KiB8IC0tc2l0PSop
CiAgICBzaXRlPSRhY19vcHRhcmcgOzsKCiAgLXNyY2RpciB8IC0tc3JjZGlyIHwgLS1zcmNkaSB8
IC0tc3JjZCB8IC0tc3JjIHwgLS1zcikKICAgIGFjX3ByZXY9c3JjZGlyIDs7CiAgLXNyY2Rpcj0q
IHwgLS1zcmNkaXI9KiB8IC0tc3JjZGk9KiB8IC0tc3JjZD0qIHwgLS1zcmM9KiB8IC0tc3I9KikK
ICAgIHNyY2Rpcj0kYWNfb3B0YXJnIDs7CgogIC1zeXNjb25mZGlyIHwgLS1zeXNjb25mZGlyIHwg
LS1zeXNjb25mZGkgfCAtLXN5c2NvbmZkIHwgLS1zeXNjb25mIFwKICB8IC0tc3lzY29uIHwgLS1z
eXNjbyB8IC0tc3lzYyB8IC0tc3lzIHwgLS1zeSkKICAgIGFjX3ByZXY9c3lzY29uZmRpciA7Owog
IC1zeXNjb25mZGlyPSogfCAtLXN5c2NvbmZkaXI9KiB8IC0tc3lzY29uZmRpPSogfCAtLXN5c2Nv
bmZkPSogfCAtLXN5c2NvbmY9KiBcCiAgfCAtLXN5c2Nvbj0qIHwgLS1zeXNjbz0qIHwgLS1zeXNj
PSogfCAtLXN5cz0qIHwgLS1zeT0qKQogICAgc3lzY29uZmRpcj0kYWNfb3B0YXJnIDs7CgogIC10
YXJnZXQgfCAtLXRhcmdldCB8IC0tdGFyZ2UgfCAtLXRhcmcgfCAtLXRhciB8IC0tdGEgfCAtLXQp
CiAgICBhY19wcmV2PXRhcmdldF9hbGlhcyA7OwogIC10YXJnZXQ9KiB8IC0tdGFyZ2V0PSogfCAt
LXRhcmdlPSogfCAtLXRhcmc9KiB8IC0tdGFyPSogfCAtLXRhPSogfCAtLXQ9KikKICAgIHRhcmdl
dF9hbGlhcz0kYWNfb3B0YXJnIDs7CgogIC12IHwgLXZlcmJvc2UgfCAtLXZlcmJvc2UgfCAtLXZl
cmJvcyB8IC0tdmVyYm8gfCAtLXZlcmIpCiAgICB2ZXJib3NlPXllcyA7OwoKICAtdmVyc2lvbiB8
IC0tdmVyc2lvbiB8IC0tdmVyc2lvIHwgLS12ZXJzaSB8IC0tdmVycyB8IC1WKQogICAgYWNfaW5p
dF92ZXJzaW9uPTogOzsKCiAgLXdpdGgtKiB8IC0td2l0aC0qKQogICAgYWNfcGFja2FnZT1gZXhw
ciAieCRhY19vcHRpb24iIDogJ3gtKndpdGgtXChbXj1dKlwpJ2AKICAgICMgUmVqZWN0IG5hbWVz
IHRoYXQgYXJlIG5vdCB2YWxpZCBzaGVsbCB2YXJpYWJsZSBuYW1lcy4KICAgIGV4cHIgIngkYWNf
cGFja2FnZSIgOiAiLipbXi1fJGFzX2NyX2FsbnVtXSIgPi9kZXYvbnVsbCAmJgogICAgICB7IGVj
aG8gIiRhc19tZTogZXJyb3I6IGludmFsaWQgcGFja2FnZSBuYW1lOiAkYWNfcGFja2FnZSIgPiYy
CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQogICAgYWNfcGFja2FnZT1gZWNobyAkYWNfcGFj
a2FnZXwgc2VkICdzLy0vXy9nJ2AKICAgIGV2YWwgd2l0aF8kYWNfcGFja2FnZT1cJGFjX29wdGFy
ZyA7OwoKICAtd2l0aG91dC0qIHwgLS13aXRob3V0LSopCiAgICBhY19wYWNrYWdlPWBleHByICJ4
JGFjX29wdGlvbiIgOiAneC0qd2l0aG91dC1cKC4qXCknYAogICAgIyBSZWplY3QgbmFtZXMgdGhh
dCBhcmUgbm90IHZhbGlkIHNoZWxsIHZhcmlhYmxlIG5hbWVzLgogICAgZXhwciAieCRhY19wYWNr
YWdlIiA6ICIuKlteLV8kYXNfY3JfYWxudW1dIiA+L2Rldi9udWxsICYmCiAgICAgIHsgZWNobyAi
JGFzX21lOiBlcnJvcjogaW52YWxpZCBwYWNrYWdlIG5hbWU6ICRhY19wYWNrYWdlIiA+JjIKICAg
eyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CiAgICBhY19wYWNrYWdlPWBlY2hvICRhY19wYWNrYWdl
IHwgc2VkICdzLy0vXy9nJ2AKICAgIGV2YWwgd2l0aF8kYWNfcGFja2FnZT1ubyA7OwoKICAtLXgp
CiAgICAjIE9ic29sZXRlOyB1c2UgLS13aXRoLXguCiAgICB3aXRoX3g9eWVzIDs7CgogIC14LWlu
Y2x1ZGVzIHwgLS14LWluY2x1ZGVzIHwgLS14LWluY2x1ZGUgfCAtLXgtaW5jbHVkIHwgLS14LWlu
Y2x1IFwKICB8IC0teC1pbmNsIHwgLS14LWluYyB8IC0teC1pbiB8IC0teC1pKQogICAgYWNfcHJl
dj14X2luY2x1ZGVzIDs7CiAgLXgtaW5jbHVkZXM9KiB8IC0teC1pbmNsdWRlcz0qIHwgLS14LWlu
Y2x1ZGU9KiB8IC0teC1pbmNsdWQ9KiB8IC0teC1pbmNsdT0qIFwKICB8IC0teC1pbmNsPSogfCAt
LXgtaW5jPSogfCAtLXgtaW49KiB8IC0teC1pPSopCiAgICB4X2luY2x1ZGVzPSRhY19vcHRhcmcg
OzsKCiAgLXgtbGlicmFyaWVzIHwgLS14LWxpYnJhcmllcyB8IC0teC1saWJyYXJpZSB8IC0teC1s
aWJyYXJpIFwKICB8IC0teC1saWJyYXIgfCAtLXgtbGlicmEgfCAtLXgtbGliciB8IC0teC1saWIg
fCAtLXgtbGkgfCAtLXgtbCkKICAgIGFjX3ByZXY9eF9saWJyYXJpZXMgOzsKICAteC1saWJyYXJp
ZXM9KiB8IC0teC1saWJyYXJpZXM9KiB8IC0teC1saWJyYXJpZT0qIHwgLS14LWxpYnJhcmk9KiBc
CiAgfCAtLXgtbGlicmFyPSogfCAtLXgtbGlicmE9KiB8IC0teC1saWJyPSogfCAtLXgtbGliPSog
fCAtLXgtbGk9KiB8IC0teC1sPSopCiAgICB4X2xpYnJhcmllcz0kYWNfb3B0YXJnIDs7CgogIC0q
KSB7IGVjaG8gIiRhc19tZTogZXJyb3I6IHVucmVjb2duaXplZCBvcHRpb246ICRhY19vcHRpb24K
VHJ5IFxgJDAgLS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iID4mMgogICB7IChleGl0IDEp
OyBleGl0IDE7IH07IH0KICAgIDs7CgogICo9KikKICAgIGFjX2VudnZhcj1gZXhwciAieCRhY19v
cHRpb24iIDogJ3hcKFtePV0qXCk9J2AKICAgICMgUmVqZWN0IG5hbWVzIHRoYXQgYXJlIG5vdCB2
YWxpZCBzaGVsbCB2YXJpYWJsZSBuYW1lcy4KICAgIGV4cHIgIngkYWNfZW52dmFyIiA6ICIuKlte
XyRhc19jcl9hbG51bV0iID4vZGV2L251bGwgJiYKICAgICAgeyBlY2hvICIkYXNfbWU6IGVycm9y
OiBpbnZhbGlkIHZhcmlhYmxlIG5hbWU6ICRhY19lbnZ2YXIiID4mMgogICB7IChleGl0IDEpOyBl
eGl0IDE7IH07IH0KICAgIGV2YWwgJGFjX2VudnZhcj1cJGFjX29wdGFyZwogICAgZXhwb3J0ICRh
Y19lbnZ2YXIgOzsKCiAgKikKICAgICMgRklYTUU6IHNob3VsZCBiZSByZW1vdmVkIGluIGF1dG9j
b25mIDMuMC4KICAgIGVjaG8gIiRhc19tZTogV0FSTklORzogeW91IHNob3VsZCB1c2UgLS1idWls
ZCwgLS1ob3N0LCAtLXRhcmdldCIgPiYyCiAgICBleHByICJ4JGFjX29wdGlvbiIgOiAiLipbXi0u
XyRhc19jcl9hbG51bV0iID4vZGV2L251bGwgJiYKICAgICAgZWNobyAiJGFzX21lOiBXQVJOSU5H
OiBpbnZhbGlkIGhvc3QgdHlwZTogJGFjX29wdGlvbiIgPiYyCiAgICA6ICR7YnVpbGRfYWxpYXM9
JGFjX29wdGlvbn0gJHtob3N0X2FsaWFzPSRhY19vcHRpb259ICR7dGFyZ2V0X2FsaWFzPSRhY19v
cHRpb259CiAgICA7OwoKICBlc2FjCmRvbmUKCmlmIHRlc3QgLW4gIiRhY19wcmV2IjsgdGhlbgog
IGFjX29wdGlvbj0tLWBlY2hvICRhY19wcmV2IHwgc2VkICdzL18vLS9nJ2AKICB7IGVjaG8gIiRh
c19tZTogZXJyb3I6IG1pc3NpbmcgYXJndW1lbnQgdG8gJGFjX29wdGlvbiIgPiYyCiAgIHsgKGV4
aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoKIyBCZSBzdXJlIHRvIGhhdmUgYWJzb2x1dGUgZGlyZWN0
b3J5IG5hbWVzLgpmb3IgYWNfdmFyIGluCWV4ZWNfcHJlZml4IHByZWZpeCBiaW5kaXIgc2JpbmRp
ciBsaWJleGVjZGlyIGRhdGFyb290ZGlyIFwKCQlkYXRhZGlyIHN5c2NvbmZkaXIgc2hhcmVkc3Rh
dGVkaXIgbG9jYWxzdGF0ZWRpciBpbmNsdWRlZGlyIFwKCQlvbGRpbmNsdWRlZGlyIGRvY2RpciBp
bmZvZGlyIGh0bWxkaXIgZHZpZGlyIHBkZmRpciBwc2RpciBcCgkJbGliZGlyIGxvY2FsZWRpciBt
YW5kaXIKZG8KICBldmFsIGFjX3ZhbD1cJCRhY192YXIKICBjYXNlICRhY192YWwgaW4KICAgIFtc
XC8kXSogfCA/OltcXC9dKiApICBjb250aW51ZTs7CiAgICBOT05FIHwgJycgKSBjYXNlICRhY192
YXIgaW4gKnByZWZpeCApIGNvbnRpbnVlOzsgZXNhYzs7CiAgZXNhYwogIHsgZWNobyAiJGFzX21l
OiBlcnJvcjogZXhwZWN0ZWQgYW4gYWJzb2x1dGUgZGlyZWN0b3J5IG5hbWUgZm9yIC0tJGFjX3Zh
cjogJGFjX3ZhbCIgPiYyCiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQpkb25lCgojIFRoZXJl
IG1pZ2h0IGJlIHBlb3BsZSB3aG8gZGVwZW5kIG9uIHRoZSBvbGQgYnJva2VuIGJlaGF2aW9yOiBg
JGhvc3QnCiMgdXNlZCB0byBob2xkIHRoZSBhcmd1bWVudCBvZiAtLWhvc3QgZXRjLgojIEZJWE1F
OiBUbyByZW1vdmUgc29tZSBkYXkuCmJ1aWxkPSRidWlsZF9hbGlhcwpob3N0PSRob3N0X2FsaWFz
CnRhcmdldD0kdGFyZ2V0X2FsaWFzCgojIEZJWE1FOiBUbyByZW1vdmUgc29tZSBkYXkuCmlmIHRl
c3QgIngkaG9zdF9hbGlhcyIgIT0geDsgdGhlbgogIGlmIHRlc3QgIngkYnVpbGRfYWxpYXMiID0g
eDsgdGhlbgogICAgY3Jvc3NfY29tcGlsaW5nPW1heWJlCiAgICBlY2hvICIkYXNfbWU6IFdBUk5J
Tkc6IElmIHlvdSB3YW50ZWQgdG8gc2V0IHRoZSAtLWJ1aWxkIHR5cGUsIGRvbid0IHVzZSAtLWhv
c3QuCiAgICBJZiBhIGNyb3NzIGNvbXBpbGVyIGlzIGRldGVjdGVkIHRoZW4gY3Jvc3MgY29tcGls
ZSBtb2RlIHdpbGwgYmUgdXNlZC4iID4mMgogIGVsaWYgdGVzdCAieCRidWlsZF9hbGlhcyIgIT0g
IngkaG9zdF9hbGlhcyI7IHRoZW4KICAgIGNyb3NzX2NvbXBpbGluZz15ZXMKICBmaQpmaQoKYWNf
dG9vbF9wcmVmaXg9CnRlc3QgLW4gIiRob3N0X2FsaWFzIiAmJiBhY190b29sX3ByZWZpeD0kaG9z
dF9hbGlhcy0KCnRlc3QgIiRzaWxlbnQiID0geWVzICYmIGV4ZWMgNj4vZGV2L251bGwKCgphY19w
d2Q9YHB3ZGAgJiYgdGVzdCAtbiAiJGFjX3B3ZCIgJiYKYWNfbHNfZGk9YGxzIC1kaSAuYCAmJgph
Y19wd2RfbHNfZGk9YGNkICIkYWNfcHdkIiAmJiBscyAtZGkgLmAgfHwKICB7IGVjaG8gIiRhc19t
ZTogZXJyb3I6IFdvcmtpbmcgZGlyZWN0b3J5IGNhbm5vdCBiZSBkZXRlcm1pbmVkIiA+JjIKICAg
eyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CnRlc3QgIlgkYWNfbHNfZGkiID0gIlgkYWNfcHdkX2xz
X2RpIiB8fAogIHsgZWNobyAiJGFzX21lOiBlcnJvcjogcHdkIGRvZXMgbm90IHJlcG9ydCBuYW1l
IG9mIHdvcmtpbmcgZGlyZWN0b3J5IiA+JjIKICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CgoK
IyBGaW5kIHRoZSBzb3VyY2UgZmlsZXMsIGlmIGxvY2F0aW9uIHdhcyBub3Qgc3BlY2lmaWVkLgpp
ZiB0ZXN0IC16ICIkc3JjZGlyIjsgdGhlbgogIGFjX3NyY2Rpcl9kZWZhdWx0ZWQ9eWVzCiAgIyBU
cnkgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoaXMgc2NyaXB0LCB0aGVuIHRoZSBwYXJlbnQg
ZGlyZWN0b3J5LgogIGFjX2NvbmZkaXI9YCRhc19kaXJuYW1lIC0tICIkMCIgfHwKJGFzX2V4cHIg
WCIkMCIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKCSBYIiQwIiA6ICdYXCgv
L1wpW14vXScgXHwgXAoJIFgiJDAiIDogJ1hcKC8vXCkkJyBcfCBcCgkgWCIkMCIgOiAnWFwoL1wp
JyBcfCAuIDI+L2Rldi9udWxsIHx8CmVjaG8gWCIkMCIgfAogICAgc2VkICcvXlhcKC4qW14vXVwp
XC9cLypbXi9dW14vXSpcLyokL3sKCSAgICBzLy9cMS8KCSAgICBxCgkgIH0KCSAgL15YXChcL1wv
XClbXi9dLiovewoJICAgIHMvL1wxLwoJICAgIHEKCSAgfQoJICAvXlhcKFwvXC9cKSQvewoJICAg
IHMvL1wxLwoJICAgIHEKCSAgfQoJICAvXlhcKFwvXCkuKi97CgkgICAgcy8vXDEvCgkgICAgcQoJ
ICB9CgkgIHMvLiovLi87IHEnYAogIHNyY2Rpcj0kYWNfY29uZmRpcgogIGlmIHRlc3QgISAtciAi
JHNyY2Rpci8kYWNfdW5pcXVlX2ZpbGUiOyB0aGVuCiAgICBzcmNkaXI9Li4KICBmaQplbHNlCiAg
YWNfc3JjZGlyX2RlZmF1bHRlZD1ubwpmaQppZiB0ZXN0ICEgLXIgIiRzcmNkaXIvJGFjX3VuaXF1
ZV9maWxlIjsgdGhlbgogIHRlc3QgIiRhY19zcmNkaXJfZGVmYXVsdGVkIiA9IHllcyAmJiBzcmNk
aXI9IiRhY19jb25mZGlyIG9yIC4uIgogIHsgZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZp
bmQgc291cmNlcyAoJGFjX3VuaXF1ZV9maWxlKSBpbiAkc3JjZGlyIiA+JjIKICAgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9OyB9CmZpCmFjX21zZz0ic291cmNlcyBhcmUgaW4gJHNyY2RpciwgYnV0IFxg
Y2QgJHNyY2RpcicgZG9lcyBub3Qgd29yayIKYWNfYWJzX2NvbmZkaXI9YCgKCWNkICIkc3JjZGly
IiAmJiB0ZXN0IC1yICIuLyRhY191bmlxdWVfZmlsZSIgfHwgeyBlY2hvICIkYXNfbWU6IGVycm9y
OiAkYWNfbXNnIiA+JjIKICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9Cglwd2QpYAojIFdoZW4g
YnVpbGRpbmcgaW4gcGxhY2UsIHNldCBzcmNkaXI9LgppZiB0ZXN0ICIkYWNfYWJzX2NvbmZkaXIi
ID0gIiRhY19wd2QiOyB0aGVuCiAgc3JjZGlyPS4KZmkKIyBSZW1vdmUgdW5uZWNlc3NhcnkgdHJh
aWxpbmcgc2xhc2hlcyBmcm9tIHNyY2Rpci4KIyBEb3VibGUgc2xhc2hlcyBpbiBmaWxlIG5hbWVz
IGluIG9iamVjdCBmaWxlIGRlYnVnZ2luZyBpbmZvCiMgbWVzcyB1cCBNLXggZ2RiIGluIEVtYWNz
LgpjYXNlICRzcmNkaXIgaW4KKi8pIHNyY2Rpcj1gZXhwciAiWCRzcmNkaXIiIDogJ1hcKC4qW14v
XVwpJyBcfCAiWCRzcmNkaXIiIDogJ1hcKC4qXCknYDs7CmVzYWMKZm9yIGFjX3ZhciBpbiAkYWNf
cHJlY2lvdXNfdmFyczsgZG8KICBldmFsIGFjX2Vudl8ke2FjX3Zhcn1fc2V0PVwkeyR7YWNfdmFy
fStzZXR9CiAgZXZhbCBhY19lbnZfJHthY192YXJ9X3ZhbHVlPVwkJHthY192YXJ9CiAgZXZhbCBh
Y19jdl9lbnZfJHthY192YXJ9X3NldD1cJHske2FjX3Zhcn0rc2V0fQogIGV2YWwgYWNfY3ZfZW52
XyR7YWNfdmFyfV92YWx1ZT1cJCR7YWNfdmFyfQpkb25lCgojCiMgUmVwb3J0IHRoZSAtLWhlbHAg
bWVzc2FnZS4KIwppZiB0ZXN0ICIkYWNfaW5pdF9oZWxwIiA9ICJsb25nIjsgdGhlbgogICMgT21p
dCBzb21lIGludGVybmFsIG9yIG9ic29sZXRlIG9wdGlvbnMgdG8gbWFrZSB0aGUgbGlzdCBsZXNz
IGltcG9zaW5nLgogICMgVGhpcyBtZXNzYWdlIGlzIHRvbyBsb25nIHRvIGJlIGEgc3RyaW5nIGlu
IHRoZSBBL1VYIDMuMSBzaC4KICBjYXQgPDxfQUNFT0YKXGBjb25maWd1cmUnIGNvbmZpZ3VyZXMg
aHVuc3BlbGwgMS4xLjQgdG8gYWRhcHQgdG8gbWFueSBraW5kcyBvZiBzeXN0ZW1zLgoKVXNhZ2U6
ICQwIFtPUFRJT05dLi4uIFtWQVI9VkFMVUVdLi4uCgpUbyBhc3NpZ24gZW52aXJvbm1lbnQgdmFy
aWFibGVzIChlLmcuLCBDQywgQ0ZMQUdTLi4uKSwgc3BlY2lmeSB0aGVtIGFzClZBUj1WQUxVRS4g
IFNlZSBiZWxvdyBmb3IgZGVzY3JpcHRpb25zIG9mIHNvbWUgb2YgdGhlIHVzZWZ1bCB2YXJpYWJs
ZXMuCgpEZWZhdWx0cyBmb3IgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpbiBicmFja2V0cy4K
CkNvbmZpZ3VyYXRpb246CiAgLWgsIC0taGVscCAgICAgICAgICAgICAgZGlzcGxheSB0aGlzIGhl
bHAgYW5kIGV4aXQKICAgICAgLS1oZWxwPXNob3J0ICAgICAgICBkaXNwbGF5IG9wdGlvbnMgc3Bl
Y2lmaWMgdG8gdGhpcyBwYWNrYWdlCiAgICAgIC0taGVscD1yZWN1cnNpdmUgICAgZGlzcGxheSB0
aGUgc2hvcnQgaGVscCBvZiBhbGwgdGhlIGluY2x1ZGVkIHBhY2thZ2VzCiAgLVYsIC0tdmVyc2lv
biAgICAgICAgICAgZGlzcGxheSB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0CiAgLXEsIC0t
cXVpZXQsIC0tc2lsZW50ICAgZG8gbm90IHByaW50IFxgY2hlY2tpbmcuLi4nIG1lc3NhZ2VzCiAg
ICAgIC0tY2FjaGUtZmlsZT1GSUxFICAgY2FjaGUgdGVzdCByZXN1bHRzIGluIEZJTEUgW2Rpc2Fi
bGVkXQogIC1DLCAtLWNvbmZpZy1jYWNoZSAgICAgIGFsaWFzIGZvciBcYC0tY2FjaGUtZmlsZT1j
b25maWcuY2FjaGUnCiAgLW4sIC0tbm8tY3JlYXRlICAgICAgICAgZG8gbm90IGNyZWF0ZSBvdXRw
dXQgZmlsZXMKICAgICAgLS1zcmNkaXI9RElSICAgICAgICBmaW5kIHRoZSBzb3VyY2VzIGluIERJ
UiBbY29uZmlndXJlIGRpciBvciBcYC4uJ10KCkluc3RhbGxhdGlvbiBkaXJlY3RvcmllczoKICAt
LXByZWZpeD1QUkVGSVggICAgICAgICBpbnN0YWxsIGFyY2hpdGVjdHVyZS1pbmRlcGVuZGVudCBm
aWxlcyBpbiBQUkVGSVgKCQkJICBbJGFjX2RlZmF1bHRfcHJlZml4XQogIC0tZXhlYy1wcmVmaXg9
RVBSRUZJWCAgIGluc3RhbGwgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudCBmaWxlcyBpbiBFUFJFRklY
CgkJCSAgW1BSRUZJWF0KCkJ5IGRlZmF1bHQsIFxgbWFrZSBpbnN0YWxsJyB3aWxsIGluc3RhbGwg
YWxsIHRoZSBmaWxlcyBpbgpcYCRhY19kZWZhdWx0X3ByZWZpeC9iaW4nLCBcYCRhY19kZWZhdWx0
X3ByZWZpeC9saWInIGV0Yy4gIFlvdSBjYW4gc3BlY2lmeQphbiBpbnN0YWxsYXRpb24gcHJlZml4
IG90aGVyIHRoYW4gXGAkYWNfZGVmYXVsdF9wcmVmaXgnIHVzaW5nIFxgLS1wcmVmaXgnLApmb3Ig
aW5zdGFuY2UgXGAtLXByZWZpeD1cJEhPTUUnLgoKRm9yIGJldHRlciBjb250cm9sLCB1c2UgdGhl
IG9wdGlvbnMgYmVsb3cuCgpGaW5lIHR1bmluZyBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9y
aWVzOgogIC0tYmluZGlyPURJUiAgICAgICAgICAgdXNlciBleGVjdXRhYmxlcyBbRVBSRUZJWC9i
aW5dCiAgLS1zYmluZGlyPURJUiAgICAgICAgICBzeXN0ZW0gYWRtaW4gZXhlY3V0YWJsZXMgW0VQ
UkVGSVgvc2Jpbl0KICAtLWxpYmV4ZWNkaXI9RElSICAgICAgIHByb2dyYW0gZXhlY3V0YWJsZXMg
W0VQUkVGSVgvbGliZXhlY10KICAtLXN5c2NvbmZkaXI9RElSICAgICAgIHJlYWQtb25seSBzaW5n
bGUtbWFjaGluZSBkYXRhIFtQUkVGSVgvZXRjXQogIC0tc2hhcmVkc3RhdGVkaXI9RElSICAgbW9k
aWZpYWJsZSBhcmNoaXRlY3R1cmUtaW5kZXBlbmRlbnQgZGF0YSBbUFJFRklYL2NvbV0KICAtLWxv
Y2Fsc3RhdGVkaXI9RElSICAgIG1vZGlmaWFibGUgc2luZ2xlLW1hY2hpbmUgZGF0YSBbUFJFRklY
L3Zhcl0KICAtLWxpYmRpcj1ESVIgICAgICAgICAgIG9iamVjdCBjb2RlIGxpYnJhcmllcyBbRVBS
RUZJWC9saWJdCiAgLS1pbmNsdWRlZGlyPURJUiAgICAgICBDIGhlYWRlciBmaWxlcyBbUFJFRklY
L2luY2x1ZGVdCiAgLS1vbGRpbmNsdWRlZGlyPURJUiAgICBDIGhlYWRlciBmaWxlcyBmb3Igbm9u
LWdjYyBbL3Vzci9pbmNsdWRlXQogIC0tZGF0YXJvb3RkaXI9RElSICAgICAgcmVhZC1vbmx5IGFy
Y2guLWluZGVwZW5kZW50IGRhdGEgcm9vdCBbUFJFRklYL3NoYXJlXQogIC0tZGF0YWRpcj1ESVIg
ICAgICAgICAgcmVhZC1vbmx5IGFyY2hpdGVjdHVyZS1pbmRlcGVuZGVudCBkYXRhIFtEQVRBUk9P
VERJUl0KICAtLWluZm9kaXI9RElSICAgICAgICAgIGluZm8gZG9jdW1lbnRhdGlvbiBbREFUQVJP
T1RESVIvaW5mb10KICAtLWxvY2FsZWRpcj1ESVIgICAgICAgIGxvY2FsZS1kZXBlbmRlbnQgZGF0
YSBbREFUQVJPT1RESVIvbG9jYWxlXQogIC0tbWFuZGlyPURJUiAgICAgICAgICAgbWFuIGRvY3Vt
ZW50YXRpb24gW0RBVEFST09URElSL21hbl0KICAtLWRvY2Rpcj1ESVIgICAgICAgICAgIGRvY3Vt
ZW50YXRpb24gcm9vdCBbREFUQVJPT1RESVIvZG9jL2h1bnNwZWxsXQogIC0taHRtbGRpcj1ESVIg
ICAgICAgICAgaHRtbCBkb2N1bWVudGF0aW9uIFtET0NESVJdCiAgLS1kdmlkaXI9RElSICAgICAg
ICAgICBkdmkgZG9jdW1lbnRhdGlvbiBbRE9DRElSXQogIC0tcGRmZGlyPURJUiAgICAgICAgICAg
cGRmIGRvY3VtZW50YXRpb24gW0RPQ0RJUl0KICAtLXBzZGlyPURJUiAgICAgICAgICAgIHBzIGRv
Y3VtZW50YXRpb24gW0RPQ0RJUl0KX0FDRU9GCgogIGNhdCA8PFxfQUNFT0YKClByb2dyYW0gbmFt
ZXM6CiAgLS1wcm9ncmFtLXByZWZpeD1QUkVGSVggICAgICAgICAgICBwcmVwZW5kIFBSRUZJWCB0
byBpbnN0YWxsZWQgcHJvZ3JhbSBuYW1lcwogIC0tcHJvZ3JhbS1zdWZmaXg9U1VGRklYICAgICAg
ICAgICAgYXBwZW5kIFNVRkZJWCB0byBpbnN0YWxsZWQgcHJvZ3JhbSBuYW1lcwogIC0tcHJvZ3Jh
bS10cmFuc2Zvcm0tbmFtZT1QUk9HUkFNICAgcnVuIHNlZCBQUk9HUkFNIG9uIGluc3RhbGxlZCBw
cm9ncmFtIG5hbWVzCgpTeXN0ZW0gdHlwZXM6CiAgLS1idWlsZD1CVUlMRCAgICAgY29uZmlndXJl
IGZvciBidWlsZGluZyBvbiBCVUlMRCBbZ3Vlc3NlZF0KICAtLWhvc3Q9SE9TVCAgICAgICBjcm9z
cy1jb21waWxlIHRvIGJ1aWxkIHByb2dyYW1zIHRvIHJ1biBvbiBIT1NUIFtCVUlMRF0KICAtLXRh
cmdldD1UQVJHRVQgICBjb25maWd1cmUgZm9yIGJ1aWxkaW5nIGNvbXBpbGVycyBmb3IgVEFSR0VU
IFtIT1NUXQpfQUNFT0YKZmkKCmlmIHRlc3QgLW4gIiRhY19pbml0X2hlbHAiOyB0aGVuCiAgY2Fz
ZSAkYWNfaW5pdF9oZWxwIGluCiAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1
cmF0aW9uIG9mIGh1bnNwZWxsIDEuMS40OiI7OwogICBlc2FjCiAgY2F0IDw8XF9BQ0VPRgoKT3B0
aW9uYWwgRmVhdHVyZXM6CiAgLS1kaXNhYmxlLUZFQVRVUkUgICAgICAgZG8gbm90IGluY2x1ZGUg
RkVBVFVSRSAoc2FtZSBhcyAtLWVuYWJsZS1GRUFUVVJFPW5vKQogIC0tZW5hYmxlLUZFQVRVUkVb
PUFSR10gIGluY2x1ZGUgRkVBVFVSRSBbQVJHPXllc10KICAtLWRpc2FibGUtZGVwZW5kZW5jeS10
cmFja2luZyAgc3BlZWRzIHVwIG9uZS10aW1lIGJ1aWxkCiAgLS1lbmFibGUtZGVwZW5kZW5jeS10
cmFja2luZyAgIGRvIG5vdCByZWplY3Qgc2xvdyBkZXBlbmRlbmN5IGV4dHJhY3RvcnMKICAtLWVu
YWJsZS1zaGFyZWRbPVBLR1NdICBidWlsZCBzaGFyZWQgbGlicmFyaWVzIFtkZWZhdWx0PXllc10K
ICAtLWVuYWJsZS1zdGF0aWNbPVBLR1NdICBidWlsZCBzdGF0aWMgbGlicmFyaWVzIFtkZWZhdWx0
PXllc10KICAtLWVuYWJsZS1mYXN0LWluc3RhbGxbPVBLR1NdCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgb3B0aW1pemUgZm9yIGZhc3QgaW5zdGFsbGF0aW9uIFtkZWZhdWx0PXllc10KICAtLWRp
c2FibGUtbGlidG9vbC1sb2NrICBhdm9pZCBsb2NraW5nIChtaWdodCBicmVhayBwYXJhbGxlbCBi
dWlsZHMpCiAgLS1kaXNhYmxlLW5scyAgICAgICAgICAgZG8gbm90IHVzZSBOYXRpdmUgTGFuZ3Vh
Z2UgU3VwcG9ydAogIC0tZW5hYmxlLXRocmVhZHM9e3Bvc2l4fHNvbGFyaXN8cHRofHdpbjMyfQog
ICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZnkgbXVsdGl0aHJlYWRpbmcgQVBJCiAgLS1k
aXNhYmxlLXRocmVhZHMgICAgICAgYnVpbGQgd2l0aG91dCBtdWx0aXRocmVhZCBzYWZldHkKICAt
LWRpc2FibGUtcnBhdGggICAgICAgICBkbyBub3QgaGFyZGNvZGUgcnVudGltZSBsaWJyYXJ5IHBh
dGhzCgpPcHRpb25hbCBQYWNrYWdlczoKICAtLXdpdGgtUEFDS0FHRVs9QVJHXSAgICB1c2UgUEFD
S0FHRSBbQVJHPXllc10KICAtLXdpdGhvdXQtUEFDS0FHRSAgICAgICBkbyBub3QgdXNlIFBBQ0tB
R0UgKHNhbWUgYXMgLS13aXRoLVBBQ0tBR0U9bm8pCiAgLS13aXRoLWdudS1sZCAgICAgICAgICAg
YXNzdW1lIHRoZSBDIGNvbXBpbGVyIHVzZXMgR05VIGxkIFtkZWZhdWx0PW5vXQogIC0td2l0aC1w
aWMgICAgICAgICAgICAgIHRyeSB0byB1c2Ugb25seSBQSUMvbm9uLVBJQyBvYmplY3RzIFtkZWZh
dWx0PXVzZQogICAgICAgICAgICAgICAgICAgICAgICAgIGJvdGhdCiAgLS13aXRoLXRhZ3NbPVRB
R1NdICAgICAgaW5jbHVkZSBhZGRpdGlvbmFsIGNvbmZpZ3VyYXRpb25zIFthdXRvbWF0aWNdCiAg
LS13aXRoLWdudS1sZCAgICAgICAgICAgYXNzdW1lIHRoZSBDIGNvbXBpbGVyIHVzZXMgR05VIGxk
IGRlZmF1bHQ9bm8KICAtLXdpdGgtbGlicHRoLXByZWZpeFs9RElSXSAgc2VhcmNoIGZvciBsaWJw
dGggaW4gRElSL2luY2x1ZGUgYW5kIERJUi9saWIKICAtLXdpdGhvdXQtbGlicHRoLXByZWZpeCAg
ICAgZG9uJ3Qgc2VhcmNoIGZvciBsaWJwdGggaW4gaW5jbHVkZWRpciBhbmQgbGliZGlyCiAgLS13
aXRoLWxpYmljb252LXByZWZpeFs9RElSXSAgc2VhcmNoIGZvciBsaWJpY29udiBpbiBESVIvaW5j
bHVkZSBhbmQgRElSL2xpYgogIC0td2l0aG91dC1saWJpY29udi1wcmVmaXggICAgIGRvbid0IHNl
YXJjaCBmb3IgbGliaWNvbnYgaW4gaW5jbHVkZWRpciBhbmQgbGliZGlyCiAgLS13aXRoLWluY2x1
ZGVkLWdldHRleHQgdXNlIHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGluY2x1ZGVkIGhlcmUKICAt
LXdpdGgtbGliaW50bC1wcmVmaXhbPURJUl0gIHNlYXJjaCBmb3IgbGliaW50bCBpbiBESVIvaW5j
bHVkZSBhbmQgRElSL2xpYgogIC0td2l0aG91dC1saWJpbnRsLXByZWZpeCAgICAgZG9uJ3Qgc2Vh
cmNoIGZvciBsaWJpbnRsIGluIGluY2x1ZGVkaXIgYW5kIGxpYmRpcgogIC0td2l0aC11aSAgICAg
ICAgIHN1cHBvcnQgQ3Vyc2VzIHVzZXIgaW50ZXJmYWNlCiAgLS13aXRoLXJlYWRsaW5lICAgICAg
ICAgc3VwcG9ydCBmYW5jeSBjb21tYW5kIGlucHV0IGVkaXRpbmcKClNvbWUgaW5mbHVlbnRpYWwg
ZW52aXJvbm1lbnQgdmFyaWFibGVzOgogIENYWCAgICAgICAgIEMrKyBjb21waWxlciBjb21tYW5k
CiAgQ1hYRkxBR1MgICAgQysrIGNvbXBpbGVyIGZsYWdzCiAgTERGTEFHUyAgICAgbGlua2VyIGZs
YWdzLCBlLmcuIC1MPGxpYiBkaXI+IGlmIHlvdSBoYXZlIGxpYnJhcmllcyBpbiBhCiAgICAgICAg
ICAgICAgbm9uc3RhbmRhcmQgZGlyZWN0b3J5IDxsaWIgZGlyPgogIENQUEZMQUdTICAgIEMvQysr
L09iamVjdGl2ZSBDIHByZXByb2Nlc3NvciBmbGFncywgZS5nLiAtSTxpbmNsdWRlIGRpcj4gaWYK
ICAgICAgICAgICAgICB5b3UgaGF2ZSBoZWFkZXJzIGluIGEgbm9uc3RhbmRhcmQgZGlyZWN0b3J5
IDxpbmNsdWRlIGRpcj4KICBDQyAgICAgICAgICBDIGNvbXBpbGVyIGNvbW1hbmQKICBDRkxBR1Mg
ICAgICBDIGNvbXBpbGVyIGZsYWdzCiAgQ1BQICAgICAgICAgQyBwcmVwcm9jZXNzb3IKICBDWFhD
UFAgICAgICBDKysgcHJlcHJvY2Vzc29yCiAgRjc3ICAgICAgICAgRm9ydHJhbiA3NyBjb21waWxl
ciBjb21tYW5kCiAgRkZMQUdTICAgICAgRm9ydHJhbiA3NyBjb21waWxlciBmbGFncwoKVXNlIHRo
ZXNlIHZhcmlhYmxlcyB0byBvdmVycmlkZSB0aGUgY2hvaWNlcyBtYWRlIGJ5IGBjb25maWd1cmUn
IG9yIHRvIGhlbHAKaXQgdG8gZmluZCBsaWJyYXJpZXMgYW5kIHByb2dyYW1zIHdpdGggbm9uc3Rh
bmRhcmQgbmFtZXMvbG9jYXRpb25zLgoKUmVwb3J0IGJ1Z3MgdG8gPG5lbWV0aGxAZ3lvcnNwb3N0
YS5odT4uCl9BQ0VPRgphY19zdGF0dXM9JD8KZmkKCmlmIHRlc3QgIiRhY19pbml0X2hlbHAiID0g
InJlY3Vyc2l2ZSI7IHRoZW4KICAjIElmIHRoZXJlIGFyZSBzdWJkaXJzLCByZXBvcnQgdGhlaXIg
c3BlY2lmaWMgLS1oZWxwLgogIGZvciBhY19kaXIgaW4gOiAkYWNfc3ViZGlyc19hbGw7IGRvIHRl
c3QgIngkYWNfZGlyIiA9IHg6ICYmIGNvbnRpbnVlCiAgICB0ZXN0IC1kICIkYWNfZGlyIiB8fCBj
b250aW51ZQogICAgYWNfYnVpbGRkaXI9LgoKY2FzZSAiJGFjX2RpciIgaW4KLikgYWNfZGlyX3N1
ZmZpeD0gYWNfdG9wX2J1aWxkZGlyX3N1Yj0uIGFjX3RvcF9idWlsZF9wcmVmaXg9IDs7CiopCiAg
YWNfZGlyX3N1ZmZpeD0vYGVjaG8gIiRhY19kaXIiIHwgc2VkICdzLF5cLltcXC9dLCwnYAogICMg
QSAiLi4iIGZvciBlYWNoIGRpcmVjdG9yeSBpbiAkYWNfZGlyX3N1ZmZpeC4KICBhY190b3BfYnVp
bGRkaXJfc3ViPWBlY2hvICIkYWNfZGlyX3N1ZmZpeCIgfCBzZWQgJ3MsL1teXFwvXSosLy4uLGc7
cywvLCwnYAogIGNhc2UgJGFjX3RvcF9idWlsZGRpcl9zdWIgaW4KICAiIikgYWNfdG9wX2J1aWxk
ZGlyX3N1Yj0uIGFjX3RvcF9idWlsZF9wcmVmaXg9IDs7CiAgKikgIGFjX3RvcF9idWlsZF9wcmVm
aXg9JGFjX3RvcF9idWlsZGRpcl9zdWIvIDs7CiAgZXNhYyA7Owplc2FjCmFjX2Fic190b3BfYnVp
bGRkaXI9JGFjX3B3ZAphY19hYnNfYnVpbGRkaXI9JGFjX3B3ZCRhY19kaXJfc3VmZml4CiMgZm9y
IGJhY2t3YXJkIGNvbXBhdGliaWxpdHk6CmFjX3RvcF9idWlsZGRpcj0kYWNfdG9wX2J1aWxkX3By
ZWZpeAoKY2FzZSAkc3JjZGlyIGluCiAgLikgICMgV2UgYXJlIGJ1aWxkaW5nIGluIHBsYWNlLgog
ICAgYWNfc3JjZGlyPS4KICAgIGFjX3RvcF9zcmNkaXI9JGFjX3RvcF9idWlsZGRpcl9zdWIKICAg
IGFjX2Fic190b3Bfc3JjZGlyPSRhY19wd2QgOzsKICBbXFwvXSogfCA/OltcXC9dKiApICAjIEFi
c29sdXRlIG5hbWUuCiAgICBhY19zcmNkaXI9JHNyY2RpciRhY19kaXJfc3VmZml4OwogICAgYWNf
dG9wX3NyY2Rpcj0kc3JjZGlyCiAgICBhY19hYnNfdG9wX3NyY2Rpcj0kc3JjZGlyIDs7CiAgKikg
IyBSZWxhdGl2ZSBuYW1lLgogICAgYWNfc3JjZGlyPSRhY190b3BfYnVpbGRfcHJlZml4JHNyY2Rp
ciRhY19kaXJfc3VmZml4CiAgICBhY190b3Bfc3JjZGlyPSRhY190b3BfYnVpbGRfcHJlZml4JHNy
Y2RpcgogICAgYWNfYWJzX3RvcF9zcmNkaXI9JGFjX3B3ZC8kc3JjZGlyIDs7CmVzYWMKYWNfYWJz
X3NyY2Rpcj0kYWNfYWJzX3RvcF9zcmNkaXIkYWNfZGlyX3N1ZmZpeAoKICAgIGNkICIkYWNfZGly
IiB8fCB7IGFjX3N0YXR1cz0kPzsgY29udGludWU7IH0KICAgICMgQ2hlY2sgZm9yIGd1ZXN0ZWQg
Y29uZmlndXJlLgogICAgaWYgdGVzdCAtZiAiJGFjX3NyY2Rpci9jb25maWd1cmUuZ251IjsgdGhl
bgogICAgICBlY2hvICYmCiAgICAgICRTSEVMTCAiJGFjX3NyY2Rpci9jb25maWd1cmUuZ251IiAt
LWhlbHA9cmVjdXJzaXZlCiAgICBlbGlmIHRlc3QgLWYgIiRhY19zcmNkaXIvY29uZmlndXJlIjsg
dGhlbgogICAgICBlY2hvICYmCiAgICAgICRTSEVMTCAiJGFjX3NyY2Rpci9jb25maWd1cmUiIC0t
aGVscD1yZWN1cnNpdmUKICAgIGVsc2UKICAgICAgZWNobyAiJGFzX21lOiBXQVJOSU5HOiBubyBj
b25maWd1cmF0aW9uIGluZm9ybWF0aW9uIGlzIGluICRhY19kaXIiID4mMgogICAgZmkgfHwgYWNf
c3RhdHVzPSQ/CiAgICBjZCAiJGFjX3B3ZCIgfHwgeyBhY19zdGF0dXM9JD87IGJyZWFrOyB9CiAg
ZG9uZQpmaQoKdGVzdCAtbiAiJGFjX2luaXRfaGVscCIgJiYgZXhpdCAkYWNfc3RhdHVzCmlmICRh
Y19pbml0X3ZlcnNpb247IHRoZW4KICBjYXQgPDxcX0FDRU9GCmh1bnNwZWxsIGNvbmZpZ3VyZSAx
LjEuNApnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjAKCkNvcHlyaWdodCAoQykgMTk5Miwg
MTk5MywgMTk5NCwgMTk5NSwgMTk5NiwgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwKMjAwMiwgMjAw
MywgMjAwNCwgMjAwNSwgMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KVGhpcyBj
b25maWd1cmUgc2NyaXB0IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24KZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSwgZGlzdHJpYnV0ZSBhbmQg
bW9kaWZ5IGl0LgpfQUNFT0YKICBleGl0CmZpCmNhdCA+Y29uZmlnLmxvZyA8PF9BQ0VPRgpUaGlz
IGZpbGUgY29udGFpbnMgYW55IG1lc3NhZ2VzIHByb2R1Y2VkIGJ5IGNvbXBpbGVycyB3aGlsZQpy
dW5uaW5nIGNvbmZpZ3VyZSwgdG8gYWlkIGRlYnVnZ2luZyBpZiBjb25maWd1cmUgbWFrZXMgYSBt
aXN0YWtlLgoKSXQgd2FzIGNyZWF0ZWQgYnkgaHVuc3BlbGwgJGFzX21lIDEuMS40LCB3aGljaCB3
YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjYwLiAgSW52b2NhdGlvbiBjb21tYW5kIGxp
bmUgd2FzCgogICQgJDAgJEAKCl9BQ0VPRgpleGVjIDU+PmNvbmZpZy5sb2cKewpjYXQgPDxfQVNV
TkFNRQojIyAtLS0tLS0tLS0gIyMKIyMgUGxhdGZvcm0uICMjCiMjIC0tLS0tLS0tLSAjIwoKaG9z
dG5hbWUgPSBgKGhvc3RuYW1lIHx8IHVuYW1lIC1uKSAyPi9kZXYvbnVsbCB8IHNlZCAxcWAKdW5h
bWUgLW0gPSBgKHVuYW1lIC1tKSAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd25gCnVuYW1lIC1y
ID0gYCh1bmFtZSAtcikgMj4vZGV2L251bGwgfHwgZWNobyB1bmtub3duYAp1bmFtZSAtcyA9IGAo
dW5hbWUgLXMpIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKdW5hbWUgLXYgPSBgKHVuYW1l
IC12KSAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd25gCgovdXNyL2Jpbi91bmFtZSAtcCA9IGAo
L3Vzci9iaW4vdW5hbWUgLXApIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKL2Jpbi91bmFt
ZSAtWCAgICAgPSBgKC9iaW4vdW5hbWUgLVgpIDI+L2Rldi9udWxsICAgICB8fCBlY2hvIHVua25v
d25gCgovYmluL2FyY2ggICAgICAgICAgICAgID0gYCgvYmluL2FyY2gpIDI+L2Rldi9udWxsICAg
ICAgICAgICAgICB8fCBlY2hvIHVua25vd25gCi91c3IvYmluL2FyY2ggLWsgICAgICAgPSBgKC91
c3IvYmluL2FyY2ggLWspIDI+L2Rldi9udWxsICAgICAgIHx8IGVjaG8gdW5rbm93bmAKL3Vzci9j
b252ZXgvZ2V0c3lzaW5mbyA9IGAoL3Vzci9jb252ZXgvZ2V0c3lzaW5mbykgMj4vZGV2L251bGwg
fHwgZWNobyB1bmtub3duYAovdXNyL2Jpbi9ob3N0aW5mbyAgICAgID0gYCgvdXNyL2Jpbi9ob3N0
aW5mbykgMj4vZGV2L251bGwgICAgICB8fCBlY2hvIHVua25vd25gCi9iaW4vbWFjaGluZSAgICAg
ICAgICAgPSBgKC9iaW4vbWFjaGluZSkgMj4vZGV2L251bGwgICAgICAgICAgIHx8IGVjaG8gdW5r
bm93bmAKL3Vzci9iaW4vb3NsZXZlbCAgICAgICA9IGAoL3Vzci9iaW4vb3NsZXZlbCkgMj4vZGV2
L251bGwgICAgICAgfHwgZWNobyB1bmtub3duYAovYmluL3VuaXZlcnNlICAgICAgICAgID0gYCgv
YmluL3VuaXZlcnNlKSAyPi9kZXYvbnVsbCAgICAgICAgICB8fCBlY2hvIHVua25vd25gCgpfQVNV
TkFNRQoKYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgpmb3IgYXNfZGlyIGlu
ICRQQVRICmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rp
cj0uCiAgZWNobyAiUEFUSDogJGFzX2RpciIKZG9uZQpJRlM9JGFzX3NhdmVfSUZTCgp9ID4mNQoK
Y2F0ID4mNSA8PF9BQ0VPRgoKCiMjIC0tLS0tLS0tLS0tICMjCiMjIENvcmUgdGVzdHMuICMjCiMj
IC0tLS0tLS0tLS0tICMjCgpfQUNFT0YKCgojIEtlZXAgYSB0cmFjZSBvZiB0aGUgY29tbWFuZCBs
aW5lLgojIFN0cmlwIG91dCAtLW5vLWNyZWF0ZSBhbmQgLS1uby1yZWN1cnNpb24gc28gdGhleSBk
byBub3QgcGlsZSB1cC4KIyBTdHJpcCBvdXQgLS1zaWxlbnQgYmVjYXVzZSB3ZSBkb24ndCB3YW50
IHRvIHJlY29yZCBpdCBmb3IgZnV0dXJlIHJ1bnMuCiMgQWxzbyBxdW90ZSBhbnkgYXJncyBjb250
YWluaW5nIHNoZWxsIG1ldGEtY2hhcmFjdGVycy4KIyBNYWtlIHR3byBwYXNzZXMgdG8gYWxsb3cg
Zm9yIHByb3BlciBkdXBsaWNhdGUtYXJndW1lbnQgc3VwcHJlc3Npb24uCmFjX2NvbmZpZ3VyZV9h
cmdzPQphY19jb25maWd1cmVfYXJnczA9CmFjX2NvbmZpZ3VyZV9hcmdzMT0KYWNfbXVzdF9rZWVw
X25leHQ9ZmFsc2UKZm9yIGFjX3Bhc3MgaW4gMSAyCmRvCiAgZm9yIGFjX2FyZwogIGRvCiAgICBj
YXNlICRhY19hcmcgaW4KICAgIC1uby1jcmVhdGUgfCAtLW5vLWMqIHwgLW4gfCAtbm8tcmVjdXJz
aW9uIHwgLS1uby1yKikgY29udGludWUgOzsKICAgIC1xIHwgLXF1aWV0IHwgLS1xdWlldCB8IC0t
cXVpZSB8IC0tcXVpIHwgLS1xdSB8IC0tcSBcCiAgICB8IC1zaWxlbnQgfCAtLXNpbGVudCB8IC0t
c2lsZW4gfCAtLXNpbGUgfCAtLXNpbCkKICAgICAgY29udGludWUgOzsKICAgICpcJyopCiAgICAg
IGFjX2FyZz1gZWNobyAiJGFjX2FyZyIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImAgOzsKICAg
IGVzYWMKICAgIGNhc2UgJGFjX3Bhc3MgaW4KICAgIDEpIGFjX2NvbmZpZ3VyZV9hcmdzMD0iJGFj
X2NvbmZpZ3VyZV9hcmdzMCAnJGFjX2FyZyciIDs7CiAgICAyKQogICAgICBhY19jb25maWd1cmVf
YXJnczE9IiRhY19jb25maWd1cmVfYXJnczEgJyRhY19hcmcnIgogICAgICBpZiB0ZXN0ICRhY19t
dXN0X2tlZXBfbmV4dCA9IHRydWU7IHRoZW4KCWFjX211c3Rfa2VlcF9uZXh0PWZhbHNlICMgR290
IHZhbHVlLCBiYWNrIHRvIG5vcm1hbC4KICAgICAgZWxzZQoJY2FzZSAkYWNfYXJnIGluCgkgICo9
KiB8IC0tY29uZmlnLWNhY2hlIHwgLUMgfCAtZGlzYWJsZS0qIHwgLS1kaXNhYmxlLSogXAoJICB8
IC1lbmFibGUtKiB8IC0tZW5hYmxlLSogfCAtZ2FzIHwgLS1nKiB8IC1uZnAgfCAtLW5mKiBcCgkg
IHwgLXEgfCAtcXVpZXQgfCAtLXEqIHwgLXNpbGVudCB8IC0tc2lsKiB8IC12IHwgLXZlcmIqIFwK
CSAgfCAtd2l0aC0qIHwgLS13aXRoLSogfCAtd2l0aG91dC0qIHwgLS13aXRob3V0LSogfCAtLXgp
CgkgICAgY2FzZSAiJGFjX2NvbmZpZ3VyZV9hcmdzMCAiIGluCgkgICAgICAiJGFjX2NvbmZpZ3Vy
ZV9hcmdzMSIqIiAnJGFjX2FyZycgIiogKSBjb250aW51ZSA7OwoJICAgIGVzYWMKCSAgICA7OwoJ
ICAtKiApIGFjX211c3Rfa2VlcF9uZXh0PXRydWUgOzsKCWVzYWMKICAgICAgZmkKICAgICAgYWNf
Y29uZmlndXJlX2FyZ3M9IiRhY19jb25maWd1cmVfYXJncyAnJGFjX2FyZyciCiAgICAgIDs7CiAg
ICBlc2FjCiAgZG9uZQpkb25lCiRhc191bnNldCBhY19jb25maWd1cmVfYXJnczAgfHwgdGVzdCAi
JHthY19jb25maWd1cmVfYXJnczArc2V0fSIgIT0gc2V0IHx8IHsgYWNfY29uZmlndXJlX2FyZ3Mw
PTsgZXhwb3J0IGFjX2NvbmZpZ3VyZV9hcmdzMDsgfQokYXNfdW5zZXQgYWNfY29uZmlndXJlX2Fy
Z3MxIHx8IHRlc3QgIiR7YWNfY29uZmlndXJlX2FyZ3MxK3NldH0iICE9IHNldCB8fCB7IGFjX2Nv
bmZpZ3VyZV9hcmdzMT07IGV4cG9ydCBhY19jb25maWd1cmVfYXJnczE7IH0KCiMgV2hlbiBpbnRl
cnJ1cHRlZCBvciBleGl0J2QsIGNsZWFudXAgdGVtcG9yYXJ5IGZpbGVzLCBhbmQgY29tcGxldGUK
IyBjb25maWcubG9nLiAgV2UgcmVtb3ZlIGNvbW1lbnRzIGJlY2F1c2UgYW55d2F5IHRoZSBxdW90
ZXMgaW4gdGhlcmUKIyB3b3VsZCBjYXVzZSBwcm9ibGVtcyBvciBsb29rIHVnbHkuCiMgV0FSTklO
RzogVXNlICdcJycgdG8gcmVwcmVzZW50IGFuIGFwb3N0cm9waGUgd2l0aGluIHRoZSB0cmFwLgoj
IFdBUk5JTkc6IERvIG5vdCBzdGFydCB0aGUgdHJhcCBjb2RlIHdpdGggYSBuZXdsaW5lLCBkdWUg
dG8gYSBGcmVlQlNEIDQuMCBidWcuCnRyYXAgJ2V4aXRfc3RhdHVzPSQ/CiAgIyBTYXZlIGludG8g
Y29uZmlnLmxvZyBzb21lIGluZm9ybWF0aW9uIHRoYXQgbWlnaHQgaGVscCBpbiBkZWJ1Z2dpbmcu
CiAgewogICAgZWNobwoKICAgIGNhdCA8PFxfQVNCT1gKIyMgLS0tLS0tLS0tLS0tLS0tLSAjIwoj
IyBDYWNoZSB2YXJpYWJsZXMuICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0gIyMKX0FTQk9YCiAgICBl
Y2hvCiAgICAjIFRoZSBmb2xsb3dpbmcgd2F5IG9mIHdyaXRpbmcgdGhlIGNhY2hlIG1pc2hhbmRs
ZXMgbmV3bGluZXMgaW4gdmFsdWVzLAooCiAgZm9yIGFjX3ZhciBpbiBgKHNldCkgMj4mMSB8IHNl
ZCAtbiAnXCcncy9eXChbYS16QS1aX11bYS16QS1aMC05X10qXCk9LiovXDEvcCdcJydgOyBkbwog
ICAgZXZhbCBhY192YWw9XCQkYWNfdmFyCiAgICBjYXNlICRhY192YWwgaW4gIygKICAgICoke2Fz
X25sfSopCiAgICAgIGNhc2UgJGFjX3ZhciBpbiAjKAogICAgICAqX2N2XyopIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IFdBUk5JTkc6IENhY2hlIHZhcmlhYmxlICRhY192YXIgY29udGFpbnMgYSBu
ZXdsaW5lLiIgPiY1CmVjaG8gIiRhc19tZTogV0FSTklORzogQ2FjaGUgdmFyaWFibGUgJGFjX3Zh
ciBjb250YWlucyBhIG5ld2xpbmUuIiA+JjI7fSA7OwogICAgICBlc2FjCiAgICAgIGNhc2UgJGFj
X3ZhciBpbiAjKAogICAgICBfIHwgSUZTIHwgYXNfbmwpIDs7ICMoCiAgICAgICopICRhc191bnNl
dCAkYWNfdmFyIDs7CiAgICAgIGVzYWMgOzsKICAgIGVzYWMKICBkb25lCiAgKHNldCkgMj4mMSB8
CiAgICBjYXNlICRhc19ubGAoYWNfc3BhY2U9J1wnJyAnXCcnOyBzZXQpIDI+JjFgIGluICMoCiAg
ICAqJHthc19ubH1hY19zcGFjZT1cICopCiAgICAgIHNlZCAtbiBcCgkicy8nXCcnLydcJydcXFxc
J1wnJydcJycvZzsKCSAgcy9eXFwoW18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0q
XFwpPVxcKC4qXFwpL1xcMT0nXCcnXFwyJ1wnJy9wIgogICAgICA7OyAjKAogICAgKikKICAgICAg
c2VkIC1uICIvXltfJGFzX2NyX2FsbnVtXSpfY3ZfW18kYXNfY3JfYWxudW1dKj0vcCIKICAgICAg
OzsKICAgIGVzYWMgfAogICAgc29ydAopCiAgICBlY2hvCgogICAgY2F0IDw8XF9BU0JPWAojIyAt
LS0tLS0tLS0tLS0tLS0tLSAjIwojIyBPdXRwdXQgdmFyaWFibGVzLiAjIwojIyAtLS0tLS0tLS0t
LS0tLS0tLSAjIwpfQVNCT1gKICAgIGVjaG8KICAgIGZvciBhY192YXIgaW4gJGFjX3N1YnN0X3Zh
cnMKICAgIGRvCiAgICAgIGV2YWwgYWNfdmFsPVwkJGFjX3ZhcgogICAgICBjYXNlICRhY192YWwg
aW4KICAgICAgKlwnXCcnKikgYWNfdmFsPWBlY2hvICIkYWNfdmFsIiB8IHNlZCAicy8nXCcnLydc
JydcXFxcXFxcXCdcJycnXCcnL2ciYDs7CiAgICAgIGVzYWMKICAgICAgZWNobyAiJGFjX3Zhcj0n
XCcnJGFjX3ZhbCdcJyciCiAgICBkb25lIHwgc29ydAogICAgZWNobwoKICAgIGlmIHRlc3QgLW4g
IiRhY19zdWJzdF9maWxlcyI7IHRoZW4KICAgICAgY2F0IDw8XF9BU0JPWAojIyAtLS0tLS0tLS0t
LS0tLS0tLS0tICMjCiMjIEZpbGUgc3Vic3RpdHV0aW9ucy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0t
LS0tLSAjIwpfQVNCT1gKICAgICAgZWNobwogICAgICBmb3IgYWNfdmFyIGluICRhY19zdWJzdF9m
aWxlcwogICAgICBkbwoJZXZhbCBhY192YWw9XCQkYWNfdmFyCgljYXNlICRhY192YWwgaW4KCSpc
J1wnJyopIGFjX3ZhbD1gZWNobyAiJGFjX3ZhbCIgfCBzZWQgInMvJ1wnJy8nXCcnXFxcXFxcXFwn
XCcnJ1wnJy9nImA7OwoJZXNhYwoJZWNobyAiJGFjX3Zhcj0nXCcnJGFjX3ZhbCdcJyciCiAgICAg
IGRvbmUgfCBzb3J0CiAgICAgIGVjaG8KICAgIGZpCgogICAgaWYgdGVzdCAtcyBjb25mZGVmcy5o
OyB0aGVuCiAgICAgIGNhdCA8PFxfQVNCT1gKIyMgLS0tLS0tLS0tLS0gIyMKIyMgY29uZmRlZnMu
aC4gIyMKIyMgLS0tLS0tLS0tLS0gIyMKX0FTQk9YCiAgICAgIGVjaG8KICAgICAgY2F0IGNvbmZk
ZWZzLmgKICAgICAgZWNobwogICAgZmkKICAgIHRlc3QgIiRhY19zaWduYWwiICE9IDAgJiYKICAg
ICAgZWNobyAiJGFzX21lOiBjYXVnaHQgc2lnbmFsICRhY19zaWduYWwiCiAgICBlY2hvICIkYXNf
bWU6IGV4aXQgJGV4aXRfc3RhdHVzIgogIH0gPiY1CiAgcm0gLWYgY29yZSAqLmNvcmUgY29yZS5j
b25mdGVzdC4qICYmCiAgICBybSAtZiAtciBjb25mdGVzdCogY29uZmRlZnMqIGNvbmYkJCogJGFj
X2NsZWFuX2ZpbGVzICYmCiAgICBleGl0ICRleGl0X3N0YXR1cwonIDAKZm9yIGFjX3NpZ25hbCBp
biAxIDIgMTMgMTU7IGRvCiAgdHJhcCAnYWNfc2lnbmFsPSckYWNfc2lnbmFsJzsgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9JyAkYWNfc2lnbmFsCmRvbmUKYWNfc2lnbmFsPTAKCiMgY29uZmRlZnMuaCBh
dm9pZHMgT1MgY29tbWFuZCBsaW5lIGxlbmd0aCBsaW1pdHMgdGhhdCBERUZTIGNhbiBleGNlZWQu
CnJtIC1mIC1yIGNvbmZ0ZXN0KiBjb25mZGVmcy5oCgojIFByZWRlZmluZWQgcHJlcHJvY2Vzc29y
IHZhcmlhYmxlcy4KCmNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKI2RlZmluZSBQQUNLQUdFX05B
TUUgIiRQQUNLQUdFX05BTUUiCl9BQ0VPRgoKCmNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKI2Rl
ZmluZSBQQUNLQUdFX1RBUk5BTUUgIiRQQUNLQUdFX1RBUk5BTUUiCl9BQ0VPRgoKCmNhdCA+PmNv
bmZkZWZzLmggPDxfQUNFT0YKI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiRQQUNLQUdFX1ZFUlNJ
T04iCl9BQ0VPRgoKCmNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKI2RlZmluZSBQQUNLQUdFX1NU
UklORyAiJFBBQ0tBR0VfU1RSSU5HIgpfQUNFT0YKCgpjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9G
CiNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiRQQUNLQUdFX0JVR1JFUE9SVCIKX0FDRU9GCgoK
IyBMZXQgdGhlIHNpdGUgZmlsZSBzZWxlY3QgYW4gYWx0ZXJuYXRlIGNhY2hlIGZpbGUgaWYgaXQg
d2FudHMgdG8uCiMgUHJlZmVyIGV4cGxpY2l0bHkgc2VsZWN0ZWQgZmlsZSB0byBhdXRvbWF0aWNh
bGx5IHNlbGVjdGVkIG9uZXMuCmlmIHRlc3QgLW4gIiRDT05GSUdfU0lURSI7IHRoZW4KICBzZXQg
eCAiJENPTkZJR19TSVRFIgplbGlmIHRlc3QgIngkcHJlZml4IiAhPSB4Tk9ORTsgdGhlbgogIHNl
dCB4ICIkcHJlZml4L3NoYXJlL2NvbmZpZy5zaXRlIiAiJHByZWZpeC9ldGMvY29uZmlnLnNpdGUi
CmVsc2UKICBzZXQgeCAiJGFjX2RlZmF1bHRfcHJlZml4L3NoYXJlL2NvbmZpZy5zaXRlIiBcCgki
JGFjX2RlZmF1bHRfcHJlZml4L2V0Yy9jb25maWcuc2l0ZSIKZmkKc2hpZnQKZm9yIGFjX3NpdGVf
ZmlsZQpkbwogIGlmIHRlc3QgLXIgIiRhY19zaXRlX2ZpbGUiOyB0aGVuCiAgICB7IGVjaG8gIiRh
c19tZTokTElORU5POiBsb2FkaW5nIHNpdGUgc2NyaXB0ICRhY19zaXRlX2ZpbGUiID4mNQplY2hv
ICIkYXNfbWU6IGxvYWRpbmcgc2l0ZSBzY3JpcHQgJGFjX3NpdGVfZmlsZSIgPiY2O30KICAgIHNl
ZCAncy9eL3wgLycgIiRhY19zaXRlX2ZpbGUiID4mNQogICAgLiAiJGFjX3NpdGVfZmlsZSIKICBm
aQpkb25lCgppZiB0ZXN0IC1yICIkY2FjaGVfZmlsZSI7IHRoZW4KICAjIFNvbWUgdmVyc2lvbnMg
b2YgYmFzaCB3aWxsIGZhaWwgdG8gc291cmNlIC9kZXYvbnVsbCAoc3BlY2lhbAogICMgZmlsZXMg
YWN0dWFsbHkpLCBzbyB3ZSBhdm9pZCBkb2luZyB0aGF0LgogIGlmIHRlc3QgLWYgIiRjYWNoZV9m
aWxlIjsgdGhlbgogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogbG9hZGluZyBjYWNoZSAkY2Fj
aGVfZmlsZSIgPiY1CmVjaG8gIiRhc19tZTogbG9hZGluZyBjYWNoZSAkY2FjaGVfZmlsZSIgPiY2
O30KICAgIGNhc2UgJGNhY2hlX2ZpbGUgaW4KICAgICAgW1xcL10qIHwgPzpbXFwvXSogKSAuICIk
Y2FjaGVfZmlsZSI7OwogICAgICAqKSAgICAgICAgICAgICAgICAgICAgICAuICIuLyRjYWNoZV9m
aWxlIjs7CiAgICBlc2FjCiAgZmkKZWxzZQogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNyZWF0
aW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjUKZWNobyAiJGFzX21lOiBjcmVhdGluZyBjYWNoZSAk
Y2FjaGVfZmlsZSIgPiY2O30KICA+JGNhY2hlX2ZpbGUKZmkKCiMgQ2hlY2sgdGhhdCB0aGUgcHJl
Y2lvdXMgdmFyaWFibGVzIHNhdmVkIGluIHRoZSBjYWNoZSBoYXZlIGtlcHQgdGhlIHNhbWUKIyB2
YWx1ZS4KYWNfY2FjaGVfY29ycnVwdGVkPWZhbHNlCmZvciBhY192YXIgaW4gJGFjX3ByZWNpb3Vz
X3ZhcnM7IGRvCiAgZXZhbCBhY19vbGRfc2V0PVwkYWNfY3ZfZW52XyR7YWNfdmFyfV9zZXQKICBl
dmFsIGFjX25ld19zZXQ9XCRhY19lbnZfJHthY192YXJ9X3NldAogIGV2YWwgYWNfb2xkX3ZhbD1c
JGFjX2N2X2Vudl8ke2FjX3Zhcn1fdmFsdWUKICBldmFsIGFjX25ld192YWw9XCRhY19lbnZfJHth
Y192YXJ9X3ZhbHVlCiAgY2FzZSAkYWNfb2xkX3NldCwkYWNfbmV3X3NldCBpbgogICAgc2V0LCkK
ICAgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IFxgJGFjX3Zhcicgd2FzIHNldCB0
byBcYCRhY19vbGRfdmFsJyBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjUKZWNobyAiJGFzX21lOiBl
cnJvcjogXGAkYWNfdmFyJyB3YXMgc2V0IHRvIFxgJGFjX29sZF92YWwnIGluIHRoZSBwcmV2aW91
cyBydW4iID4mMjt9CiAgICAgIGFjX2NhY2hlX2NvcnJ1cHRlZD06IDs7CiAgICAsc2V0KQogICAg
ICB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogXGAkYWNfdmFyJyB3YXMgbm90IHNldCBp
biB0aGUgcHJldmlvdXMgcnVuIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogXGAkYWNfdmFyJyB3
YXMgbm90IHNldCBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjI7fQogICAgICBhY19jYWNoZV9jb3Jy
dXB0ZWQ9OiA7OwogICAgLCk7OwogICAgKikKICAgICAgaWYgdGVzdCAieCRhY19vbGRfdmFsIiAh
PSAieCRhY19uZXdfdmFsIjsgdGhlbgoJeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IFxg
JGFjX3ZhcicgaGFzIGNoYW5nZWQgc2luY2UgdGhlIHByZXZpb3VzIHJ1bjoiID4mNQplY2hvICIk
YXNfbWU6IGVycm9yOiBcYCRhY192YXInIGhhcyBjaGFuZ2VkIHNpbmNlIHRoZSBwcmV2aW91cyBy
dW46IiA+JjI7fQoJeyBlY2hvICIkYXNfbWU6JExJTkVOTzogICBmb3JtZXIgdmFsdWU6ICAkYWNf
b2xkX3ZhbCIgPiY1CmVjaG8gIiRhc19tZTogICBmb3JtZXIgdmFsdWU6ICAkYWNfb2xkX3ZhbCIg
PiYyO30KCXsgZWNobyAiJGFzX21lOiRMSU5FTk86ICAgY3VycmVudCB2YWx1ZTogJGFjX25ld192
YWwiID4mNQplY2hvICIkYXNfbWU6ICAgY3VycmVudCB2YWx1ZTogJGFjX25ld192YWwiID4mMjt9
CglhY19jYWNoZV9jb3JydXB0ZWQ9OgogICAgICBmaTs7CiAgZXNhYwogICMgUGFzcyBwcmVjaW91
cyB2YXJpYWJsZXMgdG8gY29uZmlnLnN0YXR1cy4KICBpZiB0ZXN0ICIkYWNfbmV3X3NldCIgPSBz
ZXQ7IHRoZW4KICAgIGNhc2UgJGFjX25ld192YWwgaW4KICAgICpcJyopIGFjX2FyZz0kYWNfdmFy
PWBlY2hvICIkYWNfbmV3X3ZhbCIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImAgOzsKICAgICop
IGFjX2FyZz0kYWNfdmFyPSRhY19uZXdfdmFsIDs7CiAgICBlc2FjCiAgICBjYXNlICIgJGFjX2Nv
bmZpZ3VyZV9hcmdzICIgaW4KICAgICAgKiIgJyRhY19hcmcnICIqKSA7OyAjIEF2b2lkIGR1cHMu
ICBVc2Ugb2YgcXVvdGVzIGVuc3VyZXMgYWNjdXJhY3kuCiAgICAgICopIGFjX2NvbmZpZ3VyZV9h
cmdzPSIkYWNfY29uZmlndXJlX2FyZ3MgJyRhY19hcmcnIiA7OwogICAgZXNhYwogIGZpCmRvbmUK
aWYgJGFjX2NhY2hlX2NvcnJ1cHRlZDsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVy
cm9yOiBjaGFuZ2VzIGluIHRoZSBlbnZpcm9ubWVudCBjYW4gY29tcHJvbWlzZSB0aGUgYnVpbGQi
ID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBjaGFuZ2VzIGluIHRoZSBlbnZpcm9ubWVudCBjYW4g
Y29tcHJvbWlzZSB0aGUgYnVpbGQiID4mMjt9CiAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBl
cnJvcjogcnVuIFxgbWFrZSBkaXN0Y2xlYW4nIGFuZC9vciBcYHJtICRjYWNoZV9maWxlJyBhbmQg
c3RhcnQgb3ZlciIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IHJ1biBcYG1ha2UgZGlzdGNsZWFu
JyBhbmQvb3IgXGBybSAkY2FjaGVfZmlsZScgYW5kIHN0YXJ0IG92ZXIiID4mMjt9CiAgIHsgKGV4
aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKYWNfZXh0PWMK
YWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZM
QUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhl
ZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1
JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29tcGlsZXJfZ251CgoKCmFjX2F1eF9kaXI9CmZv
ciBhY19kaXIgaW4gIiRzcmNkaXIiICIkc3JjZGlyLy4uIiAiJHNyY2Rpci8uLi8uLiI7IGRvCiAg
aWYgdGVzdCAtZiAiJGFjX2Rpci9pbnN0YWxsLXNoIjsgdGhlbgogICAgYWNfYXV4X2Rpcj0kYWNf
ZGlyCiAgICBhY19pbnN0YWxsX3NoPSIkYWNfYXV4X2Rpci9pbnN0YWxsLXNoIC1jIgogICAgYnJl
YWsKICBlbGlmIHRlc3QgLWYgIiRhY19kaXIvaW5zdGFsbC5zaCI7IHRoZW4KICAgIGFjX2F1eF9k
aXI9JGFjX2RpcgogICAgYWNfaW5zdGFsbF9zaD0iJGFjX2F1eF9kaXIvaW5zdGFsbC5zaCAtYyIK
ICAgIGJyZWFrCiAgZWxpZiB0ZXN0IC1mICIkYWNfZGlyL3NodG9vbCI7IHRoZW4KICAgIGFjX2F1
eF9kaXI9JGFjX2RpcgogICAgYWNfaW5zdGFsbF9zaD0iJGFjX2F1eF9kaXIvc2h0b29sIGluc3Rh
bGwgLWMiCiAgICBicmVhawogIGZpCmRvbmUKaWYgdGVzdCAteiAiJGFjX2F1eF9kaXIiOyB0aGVu
CiAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90IGZpbmQgaW5zdGFsbC1z
aCBvciBpbnN0YWxsLnNoIGluIFwiJHNyY2RpclwiIFwiJHNyY2Rpci8uLlwiIFwiJHNyY2Rpci8u
Li8uLlwiIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgaW5zdGFsbC1zaCBv
ciBpbnN0YWxsLnNoIGluIFwiJHNyY2RpclwiIFwiJHNyY2Rpci8uLlwiIFwiJHNyY2Rpci8uLi8u
LlwiIiA+JjI7fQogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KZmkKCiMgVGhlc2UgdGhyZWUg
dmFyaWFibGVzIGFyZSB1bmRvY3VtZW50ZWQgYW5kIHVuc3VwcG9ydGVkLAojIGFuZCBhcmUgaW50
ZW5kZWQgdG8gYmUgd2l0aGRyYXduIGluIGEgZnV0dXJlIEF1dG9jb25mIHJlbGVhc2UuCiMgVGhl
eSBjYW4gY2F1c2Ugc2VyaW91cyBwcm9ibGVtcyBpZiBhIGJ1aWxkZXIncyBzb3VyY2UgdHJlZSBp
cyBpbiBhIGRpcmVjdG9yeQojIHdob3NlIGZ1bGwgbmFtZSBjb250YWlucyB1bnVzdWFsIGNoYXJh
Y3RlcnMuCmFjX2NvbmZpZ19ndWVzcz0iJFNIRUxMICRhY19hdXhfZGlyL2NvbmZpZy5ndWVzcyIg
ICMgUGxlYXNlIGRvbid0IHVzZSB0aGlzIHZhci4KYWNfY29uZmlnX3N1Yj0iJFNIRUxMICRhY19h
dXhfZGlyL2NvbmZpZy5zdWIiICAjIFBsZWFzZSBkb24ndCB1c2UgdGhpcyB2YXIuCmFjX2NvbmZp
Z3VyZT0iJFNIRUxMICRhY19hdXhfZGlyL2NvbmZpZ3VyZSIgICMgUGxlYXNlIGRvbid0IHVzZSB0
aGlzIHZhci4KCgojIE1ha2Ugc3VyZSB3ZSBjYW4gcnVuIGNvbmZpZy5zdWIuCiRTSEVMTCAiJGFj
X2F1eF9kaXIvY29uZmlnLnN1YiIgc3VuNCA+L2Rldi9udWxsIDI+JjEgfHwKICB7IHsgZWNobyAi
JGFzX21lOiRMSU5FTk86IGVycm9yOiBjYW5ub3QgcnVuICRTSEVMTCAkYWNfYXV4X2Rpci9jb25m
aWcuc3ViIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IHJ1biAkU0hFTEwgJGFjX2F1
eF9kaXIvY29uZmlnLnN1YiIgPiYyO30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9Cgp7IGVj
aG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZSIgPiY1CmVjaG8g
JEVDSE9fTiAiY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUuLi4gJEVDSE9fQyIgPiY2OyB9Cmlm
IHRlc3QgIiR7YWNfY3ZfYnVpbGQrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihj
YWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgYWNfYnVpbGRfYWxpYXM9JGJ1aWxkX2FsaWFzCnRl
c3QgIngkYWNfYnVpbGRfYWxpYXMiID0geCAmJgogIGFjX2J1aWxkX2FsaWFzPWAkU0hFTEwgIiRh
Y19hdXhfZGlyL2NvbmZpZy5ndWVzcyJgCnRlc3QgIngkYWNfYnVpbGRfYWxpYXMiID0geCAmJgog
IHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBndWVzcyBidWlsZCB0eXBl
OyB5b3UgbXVzdCBzcGVjaWZ5IG9uZSIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBn
dWVzcyBidWlsZCB0eXBlOyB5b3UgbXVzdCBzcGVjaWZ5IG9uZSIgPiYyO30KICAgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9OyB9CmFjX2N2X2J1aWxkPWAkU0hFTEwgIiRhY19hdXhfZGlyL2NvbmZpZy5z
dWIiICRhY19idWlsZF9hbGlhc2AgfHwKICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9y
OiAkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlnLnN1YiAkYWNfYnVpbGRfYWxpYXMgZmFpbGVkIiA+
JjUKZWNobyAiJGFzX21lOiBlcnJvcjogJFNIRUxMICRhY19hdXhfZGlyL2NvbmZpZy5zdWIgJGFj
X2J1aWxkX2FsaWFzIGZhaWxlZCIgPiYyO30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9Cgpm
aQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9idWlsZCIgPiY1CmVjaG8g
IiR7RUNIT19UfSRhY19jdl9idWlsZCIgPiY2OyB9CmNhc2UgJGFjX2N2X2J1aWxkIGluCiotKi0q
KSA7OwoqKSB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBpbnZhbGlkIHZhbHVlIG9m
IGNhbm9uaWNhbCBidWlsZCIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IGludmFsaWQgdmFsdWUg
b2YgY2Fub25pY2FsIGJ1aWxkIiA+JjI7fQogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH07Owpl
c2FjCmJ1aWxkPSRhY19jdl9idWlsZAphY19zYXZlX0lGUz0kSUZTOyBJRlM9Jy0nCnNldCB4ICRh
Y19jdl9idWlsZApzaGlmdApidWlsZF9jcHU9JDEKYnVpbGRfdmVuZG9yPSQyCnNoaWZ0OyBzaGlm
dAojIFJlbWVtYmVyLCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIElGUyBpcyB1c2VkIHRvIGNyZWF0
ZSAkKiwKIyBleGNlcHQgd2l0aCBvbGQgc2hlbGxzOgpidWlsZF9vcz0kKgpJRlM9JGFjX3NhdmVf
SUZTCmNhc2UgJGJ1aWxkX29zIGluICpcICopIGJ1aWxkX29zPWBlY2hvICIkYnVpbGRfb3MiIHwg
c2VkICdzLyAvLS9nJ2A7OyBlc2FjCgoKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcg
aG9zdCBzeXN0ZW0gdHlwZSIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgaG9zdCBzeXN0ZW0g
dHlwZS4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9ob3N0K3NldH0iID0gc2V0
OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlmIHRl
c3QgIngkaG9zdF9hbGlhcyIgPSB4OyB0aGVuCiAgYWNfY3ZfaG9zdD0kYWNfY3ZfYnVpbGQKZWxz
ZQogIGFjX2N2X2hvc3Q9YCRTSEVMTCAiJGFjX2F1eF9kaXIvY29uZmlnLnN1YiIgJGhvc3RfYWxp
YXNgIHx8CiAgICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiAkU0hFTEwgJGFjX2F1
eF9kaXIvY29uZmlnLnN1YiAkaG9zdF9hbGlhcyBmYWlsZWQiID4mNQplY2hvICIkYXNfbWU6IGVy
cm9yOiAkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlnLnN1YiAkaG9zdF9hbGlhcyBmYWlsZWQiID4m
Mjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoKZmkKeyBlY2hvICIkYXNfbWU6JExJ
TkVOTzogcmVzdWx0OiAkYWNfY3ZfaG9zdCIgPiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdl9ob3N0
IiA+JjY7IH0KY2FzZSAkYWNfY3ZfaG9zdCBpbgoqLSotKikgOzsKKikgeyB7IGVjaG8gIiRhc19t
ZTokTElORU5POiBlcnJvcjogaW52YWxpZCB2YWx1ZSBvZiBjYW5vbmljYWwgaG9zdCIgPiY1CmVj
aG8gIiRhc19tZTogZXJyb3I6IGludmFsaWQgdmFsdWUgb2YgY2Fub25pY2FsIGhvc3QiID4mMjt9
CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTs7CmVzYWMKaG9zdD0kYWNfY3ZfaG9zdAphY19z
YXZlX0lGUz0kSUZTOyBJRlM9Jy0nCnNldCB4ICRhY19jdl9ob3N0CnNoaWZ0Cmhvc3RfY3B1PSQx
Cmhvc3RfdmVuZG9yPSQyCnNoaWZ0OyBzaGlmdAojIFJlbWVtYmVyLCB0aGUgZmlyc3QgY2hhcmFj
dGVyIG9mIElGUyBpcyB1c2VkIHRvIGNyZWF0ZSAkKiwKIyBleGNlcHQgd2l0aCBvbGQgc2hlbGxz
Ogpob3N0X29zPSQqCklGUz0kYWNfc2F2ZV9JRlMKY2FzZSAkaG9zdF9vcyBpbiAqXCAqKSBob3N0
X29zPWBlY2hvICIkaG9zdF9vcyIgfCBzZWQgJ3MvIC8tL2cnYDs7IGVzYWMKCgp7IGVjaG8gIiRh
c19tZTokTElORU5POiBjaGVja2luZyB0YXJnZXQgc3lzdGVtIHR5cGUiID4mNQplY2hvICRFQ0hP
X04gImNoZWNraW5nIHRhcmdldCBzeXN0ZW0gdHlwZS4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVz
dCAiJHthY19jdl90YXJnZXQrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNo
ZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgaWYgdGVzdCAieCR0YXJnZXRfYWxpYXMiID0geDsgdGhl
bgogIGFjX2N2X3RhcmdldD0kYWNfY3ZfaG9zdAplbHNlCiAgYWNfY3ZfdGFyZ2V0PWAkU0hFTEwg
IiRhY19hdXhfZGlyL2NvbmZpZy5zdWIiICR0YXJnZXRfYWxpYXNgIHx8CiAgICB7IHsgZWNobyAi
JGFzX21lOiRMSU5FTk86IGVycm9yOiAkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlnLnN1YiAkdGFy
Z2V0X2FsaWFzIGZhaWxlZCIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6ICRTSEVMTCAkYWNfYXV4
X2Rpci9jb25maWcuc3ViICR0YXJnZXRfYWxpYXMgZmFpbGVkIiA+JjI7fQogICB7IChleGl0IDEp
OyBleGl0IDE7IH07IH0KZmkKCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFj
X2N2X3RhcmdldCIgPiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdl90YXJnZXQiID4mNjsgfQpjYXNl
ICRhY19jdl90YXJnZXQgaW4KKi0qLSopIDs7CiopIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
ZXJyb3I6IGludmFsaWQgdmFsdWUgb2YgY2Fub25pY2FsIHRhcmdldCIgPiY1CmVjaG8gIiRhc19t
ZTogZXJyb3I6IGludmFsaWQgdmFsdWUgb2YgY2Fub25pY2FsIHRhcmdldCIgPiYyO30KICAgeyAo
ZXhpdCAxKTsgZXhpdCAxOyB9OyB9OzsKZXNhYwp0YXJnZXQ9JGFjX2N2X3RhcmdldAphY19zYXZl
X0lGUz0kSUZTOyBJRlM9Jy0nCnNldCB4ICRhY19jdl90YXJnZXQKc2hpZnQKdGFyZ2V0X2NwdT0k
MQp0YXJnZXRfdmVuZG9yPSQyCnNoaWZ0OyBzaGlmdAojIFJlbWVtYmVyLCB0aGUgZmlyc3QgY2hh
cmFjdGVyIG9mIElGUyBpcyB1c2VkIHRvIGNyZWF0ZSAkKiwKIyBleGNlcHQgd2l0aCBvbGQgc2hl
bGxzOgp0YXJnZXRfb3M9JCoKSUZTPSRhY19zYXZlX0lGUwpjYXNlICR0YXJnZXRfb3MgaW4gKlwg
KikgdGFyZ2V0X29zPWBlY2hvICIkdGFyZ2V0X29zIiB8IHNlZCAncy8gLy0vZydgOzsgZXNhYwoK
CiMgVGhlIGFsaWFzZXMgc2F2ZSB0aGUgbmFtZXMgdGhlIHVzZXIgc3VwcGxpZWQsIHdoaWxlICRo
b3N0IGV0Yy4KIyB3aWxsIGdldCBjYW5vbmljYWxpemVkLgp0ZXN0IC1uICIkdGFyZ2V0X2FsaWFz
IiAmJgogIHRlc3QgIiRwcm9ncmFtX3ByZWZpeCRwcm9ncmFtX3N1ZmZpeCRwcm9ncmFtX3RyYW5z
Zm9ybV9uYW1lIiA9IFwKICAgIE5PTkVOT05Fcyx4LHgsICYmCiAgcHJvZ3JhbV9wcmVmaXg9JHt0
YXJnZXRfYWxpYXN9LQpjYXNlICIkaG9zdCIgaW4KYXJtKikgWEZBSUxFRD0iZmxhZ3V0ZjgudGVz
dCBtYXB1dGYudGVzdCI7Owplc2FjCgoKYW1fX2FwaV92ZXJzaW9uPSIxLjkiCiMgRmluZCBhIGdv
b2QgaW5zdGFsbCBwcm9ncmFtLiAgV2UgcHJlZmVyIGEgQyBwcm9ncmFtIChmYXN0ZXIpLAojIHNv
IG9uZSBzY3JpcHQgaXMgYXMgZ29vZCBhcyBhbm90aGVyLiAgQnV0IGF2b2lkIHRoZSBicm9rZW4g
b3IKIyBpbmNvbXBhdGlibGUgdmVyc2lvbnM6CiMgU3lzViAvZXRjL2luc3RhbGwsIC91c3Ivc2Jp
bi9pbnN0YWxsCiMgU3VuT1MgL3Vzci9ldGMvaW5zdGFsbAojIElSSVggL3NiaW4vaW5zdGFsbAoj
IEFJWCAvYmluL2luc3RhbGwKIyBBbWlnYU9TIC9DL2luc3RhbGwsIHdoaWNoIGluc3RhbGxzIGJv
b3RibG9ja3Mgb24gZmxvcHB5IGRpc2NzCiMgQUlYIDQgL3Vzci9iaW4vaW5zdGFsbGJzZCwgd2hp
Y2ggZG9lc24ndCB3b3JrIHdpdGhvdXQgYSAtZyBmbGFnCiMgQUZTIC91c3IvYWZzd3MvYmluL2lu
c3RhbGwsIHdoaWNoIG1pc2hhbmRsZXMgbm9uZXhpc3RlbnQgYXJncwojIFNWUjQgL3Vzci91Y2Iv
aW5zdGFsbCwgd2hpY2ggdHJpZXMgdG8gdXNlIHRoZSBub25leGlzdGVudCBncm91cCAic3RhZmYi
CiMgT1MvMidzIHN5c3RlbSBpbnN0YWxsLCB3aGljaCBoYXMgYSBjb21wbGV0ZWx5IGRpZmZlcmVu
dCBzZW1hbnRpYwojIC4vaW5zdGFsbCwgd2hpY2ggY2FuIGJlIGVycm9uZW91c2x5IGNyZWF0ZWQg
YnkgbWFrZSBmcm9tIC4vaW5zdGFsbC5zaC4KeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tp
bmcgZm9yIGEgQlNELWNvbXBhdGlibGUgaW5zdGFsbCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yIGEgQlNELWNvbXBhdGlibGUgaW5zdGFsbC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVz
dCAteiAiJElOU1RBTEwiOyB0aGVuCmlmIHRlc3QgIiR7YWNfY3ZfcGF0aF9pbnN0YWxsK3NldH0i
ID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQog
IGFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFU
SApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9Lgog
ICMgQWNjb3VudCBmb3IgcGVvcGxlIHdobyBwdXQgdHJhaWxpbmcgc2xhc2hlcyBpbiBQQVRIIGVs
ZW1lbnRzLgpjYXNlICRhc19kaXIvIGluCiAgLi8gfCAuLy8gfCAvY0MvKiB8IFwKICAvZXRjLyog
fCAvdXNyL3NiaW4vKiB8IC91c3IvZXRjLyogfCAvc2Jpbi8qIHwgL3Vzci9hZnN3cy9iaW4vKiB8
IFwKICA/OlxcL29zMlxcL2luc3RhbGxcXC8qIHwgPzpcXC9PUzJcXC9JTlNUQUxMXFwvKiB8IFwK
ICAvdXNyL3VjYi8qICkgOzsKICAqKQogICAgIyBPU0YxIGFuZCBTQ08gT0RUIDMuMCBoYXZlIHRo
ZWlyIG93biBuYW1lcyBmb3IgaW5zdGFsbC4KICAgICMgRG9uJ3QgdXNlIGluc3RhbGxic2QgZnJv
bSBPU0Ygc2luY2UgaXQgaW5zdGFsbHMgc3R1ZmYgYXMgcm9vdAogICAgIyBieSBkZWZhdWx0Lgog
ICAgZm9yIGFjX3Byb2cgaW4gZ2luc3RhbGwgc2NvaW5zdCBpbnN0YWxsOyBkbwogICAgICBmb3Ig
YWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KCWlmIHsgdGVz
dCAtZiAiJGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAi
JGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCI7IH07IHRoZW4KCSAgaWYgdGVzdCAkYWNfcHJv
ZyA9IGluc3RhbGwgJiYKCSAgICBncmVwIGRzcG1zZyAiJGFzX2Rpci8kYWNfcHJvZyRhY19leGVj
X2V4dCIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCgkgICAgIyBBSVggaW5zdGFsbC4gIEl0IGhhcyBh
biBpbmNvbXBhdGlibGUgY2FsbGluZyBjb252ZW50aW9uLgoJICAgIDoKCSAgZWxpZiB0ZXN0ICRh
Y19wcm9nID0gaW5zdGFsbCAmJgoJICAgIGdyZXAgcHdwbHVzICIkYXNfZGlyLyRhY19wcm9nJGFj
X2V4ZWNfZXh0IiA+L2Rldi9udWxsIDI+JjE7IHRoZW4KCSAgICAjIHByb2dyYW0tc3BlY2lmaWMg
aW5zdGFsbCBzY3JpcHQgdXNlZCBieSBIUCBwd3BsdXMtLWRvbid0IHVzZS4KCSAgICA6CgkgIGVs
c2UKCSAgICBhY19jdl9wYXRoX2luc3RhbGw9IiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQg
LWMiCgkgICAgYnJlYWsgMwoJICBmaQoJZmkKICAgICAgZG9uZQogICAgZG9uZQogICAgOzsKZXNh
Ywpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCgpmaQogIGlmIHRlc3QgIiR7YWNfY3ZfcGF0aF9pbnN0
YWxsK3NldH0iID0gc2V0OyB0aGVuCiAgICBJTlNUQUxMPSRhY19jdl9wYXRoX2luc3RhbGwKICBl
bHNlCiAgICAjIEFzIGEgbGFzdCByZXNvcnQsIHVzZSB0aGUgc2xvdyBzaGVsbCBzY3JpcHQuICBE
b24ndCBjYWNoZSBhCiAgICAjIHZhbHVlIGZvciBJTlNUQUxMIHdpdGhpbiBhIHNvdXJjZSBkaXJl
Y3RvcnksIGJlY2F1c2UgdGhhdCB3aWxsCiAgICAjIGJyZWFrIG90aGVyIHBhY2thZ2VzIHVzaW5n
IHRoZSBjYWNoZSBpZiB0aGF0IGRpcmVjdG9yeSBpcwogICAgIyByZW1vdmVkLCBvciBpZiB0aGUg
dmFsdWUgaXMgYSByZWxhdGl2ZSBuYW1lLgogICAgSU5TVEFMTD0kYWNfaW5zdGFsbF9zaAogIGZp
CmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJElOU1RBTEwiID4mNQplY2hvICIk
e0VDSE9fVH0kSU5TVEFMTCIgPiY2OyB9CgojIFVzZSB0ZXN0IC16IGJlY2F1c2UgU3VuT1M0IHNo
IG1pc2hhbmRsZXMgYnJhY2VzIGluICR7dmFyLXZhbH0uCiMgSXQgdGhpbmtzIHRoZSBmaXJzdCBj
bG9zZSBicmFjZSBlbmRzIHRoZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24uCnRlc3QgLXogIiRJTlNU
QUxMX1BST0dSQU0iICYmIElOU1RBTExfUFJPR1JBTT0nJHtJTlNUQUxMfScKCnRlc3QgLXogIiRJ
TlNUQUxMX1NDUklQVCIgJiYgSU5TVEFMTF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCgp0ZXN0IC16ICIk
SU5TVEFMTF9EQVRBIiAmJiBJTlNUQUxMX0RBVEE9JyR7SU5TVEFMTH0gLW0gNjQ0JwoKeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgd2hldGhlciBidWlsZCBlbnZpcm9ubWVudCBpcyBz
YW5lIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50
IGlzIHNhbmUuLi4gJEVDSE9fQyIgPiY2OyB9CiMgSnVzdCBpbiBjYXNlCnNsZWVwIDEKZWNobyB0
aW1lc3RhbXAgPiBjb25mdGVzdC5maWxlCiMgRG8gYHNldCcgaW4gYSBzdWJzaGVsbCBzbyB3ZSBk
b24ndCBjbG9iYmVyIHRoZSBjdXJyZW50IHNoZWxsJ3MKIyBhcmd1bWVudHMuICBNdXN0IHRyeSAt
TCBmaXJzdCBpbiBjYXNlIGNvbmZpZ3VyZSBpcyBhY3R1YWxseSBhCiMgc3ltbGluazsgc29tZSBz
eXN0ZW1zIHBsYXkgd2VpcmQgZ2FtZXMgd2l0aCB0aGUgbW9kIHRpbWUgb2Ygc3ltbGlua3MKIyAo
ZWcgRnJlZUJTRCByZXR1cm5zIHRoZSBtb2QgdGltZSBvZiB0aGUgc3ltbGluaydzIGNvbnRhaW5p
bmcKIyBkaXJlY3RvcnkpLgppZiAoCiAgIHNldCBYIGBscyAtTHQgJHNyY2Rpci9jb25maWd1cmUg
Y29uZnRlc3QuZmlsZSAyPiAvZGV2L251bGxgCiAgIGlmIHRlc3QgIiQqIiA9ICJYIjsgdGhlbgog
ICAgICAjIC1MIGRpZG4ndCB3b3JrLgogICAgICBzZXQgWCBgbHMgLXQgJHNyY2Rpci9jb25maWd1
cmUgY29uZnRlc3QuZmlsZWAKICAgZmkKICAgcm0gLWYgY29uZnRlc3QuZmlsZQogICBpZiB0ZXN0
ICIkKiIgIT0gIlggJHNyY2Rpci9jb25maWd1cmUgY29uZnRlc3QuZmlsZSIgXAogICAgICAmJiB0
ZXN0ICIkKiIgIT0gIlggY29uZnRlc3QuZmlsZSAkc3JjZGlyL2NvbmZpZ3VyZSI7IHRoZW4KCiAg
ICAgICMgSWYgbmVpdGhlciBtYXRjaGVkLCB0aGVuIHdlIGhhdmUgYSBicm9rZW4gbHMuICBUaGlz
IGNhbiBoYXBwZW4KICAgICAgIyBpZiwgZm9yIGluc3RhbmNlLCBDT05GSUdfU0hFTEwgaXMgYmFz
aCBhbmQgaXQgaW5oZXJpdHMgYQogICAgICAjIGJyb2tlbiBscyBhbGlhcyBmcm9tIHRoZSBlbnZp
cm9ubWVudC4gIFRoaXMgaGFzIGFjdHVhbGx5CiAgICAgICMgaGFwcGVuZWQuICBTdWNoIGEgc3lz
dGVtIGNvdWxkIG5vdCBiZSBjb25zaWRlcmVkICJzYW5lIi4KICAgICAgeyB7IGVjaG8gIiRhc19t
ZTokTElORU5POiBlcnJvcjogbHMgLXQgYXBwZWFycyB0byBmYWlsLiAgTWFrZSBzdXJlIHRoZXJl
IGlzIG5vdCBhIGJyb2tlbgphbGlhcyBpbiB5b3VyIGVudmlyb25tZW50IiA+JjUKZWNobyAiJGFz
X21lOiBlcnJvcjogbHMgLXQgYXBwZWFycyB0byBmYWlsLiAgTWFrZSBzdXJlIHRoZXJlIGlzIG5v
dCBhIGJyb2tlbgphbGlhcyBpbiB5b3VyIGVudmlyb25tZW50IiA+JjI7fQogICB7IChleGl0IDEp
OyBleGl0IDE7IH07IH0KICAgZmkKCiAgIHRlc3QgIiQyIiA9IGNvbmZ0ZXN0LmZpbGUKICAgKQp0
aGVuCiAgICMgT2suCiAgIDoKZWxzZQogICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9y
OiBuZXdseSBjcmVhdGVkIGZpbGUgaXMgb2xkZXIgdGhhbiBkaXN0cmlidXRlZCBmaWxlcyEKQ2hl
Y2sgeW91ciBzeXN0ZW0gY2xvY2siID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBuZXdseSBjcmVh
dGVkIGZpbGUgaXMgb2xkZXIgdGhhbiBkaXN0cmlidXRlZCBmaWxlcyEKQ2hlY2sgeW91ciBzeXN0
ZW0gY2xvY2siID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQp7IGVjaG8gIiRh
c19tZTokTElORU5POiByZXN1bHQ6IHllcyIgPiY1CmVjaG8gIiR7RUNIT19UfXllcyIgPiY2OyB9
CnRlc3QgIiRwcm9ncmFtX3ByZWZpeCIgIT0gTk9ORSAmJgogIHByb2dyYW1fdHJhbnNmb3JtX25h
bWU9InMmXiYkcHJvZ3JhbV9wcmVmaXgmOyRwcm9ncmFtX3RyYW5zZm9ybV9uYW1lIgojIFVzZSBh
IGRvdWJsZSAkIHNvIG1ha2UgaWdub3JlcyBpdC4KdGVzdCAiJHByb2dyYW1fc3VmZml4IiAhPSBO
T05FICYmCiAgcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZT0icyZcJCYkcHJvZ3JhbV9zdWZmaXgmOyRw
cm9ncmFtX3RyYW5zZm9ybV9uYW1lIgojIERvdWJsZSBhbnkgXCBvciAkLiAgZWNobyBtaWdodCBp
bnRlcnByZXQgYmFja3NsYXNoZXMuCiMgQnkgZGVmYXVsdCB3YXMgYHMseCx4JywgcmVtb3ZlIGl0
IGlmIHVzZWxlc3MuCmNhdCA8PFxfQUNFT0YgPmNvbmZ0ZXN0LnNlZApzL1tcXCRdLyYmL2c7cy87
cyx4LHgsJC8vCl9BQ0VPRgpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPWBlY2hvICRwcm9ncmFtX3Ry
YW5zZm9ybV9uYW1lIHwgc2VkIC1mIGNvbmZ0ZXN0LnNlZGAKcm0gLWYgY29uZnRlc3Quc2VkCgoj
IGV4cGFuZCAkYWNfYXV4X2RpciB0byBhbiBhYnNvbHV0ZSBwYXRoCmFtX2F1eF9kaXI9YGNkICRh
Y19hdXhfZGlyICYmIHB3ZGAKCnRlc3QgeCIke01JU1NJTkcrc2V0fSIgPSB4c2V0IHx8IE1JU1NJ
Tkc9Ilwke1NIRUxMfSAkYW1fYXV4X2Rpci9taXNzaW5nIgojIFVzZSBldmFsIHRvIGV4cGFuZCAk
U0hFTEwKaWYgZXZhbCAiJE1JU1NJTkcgLS1ydW4gdHJ1ZSI7IHRoZW4KICBhbV9taXNzaW5nX3J1
bj0iJE1JU1NJTkcgLS1ydW4gIgplbHNlCiAgYW1fbWlzc2luZ19ydW49CiAgeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogV0FSTklORzogXGBtaXNzaW5nJyBzY3JpcHQgaXMgdG9vIG9sZCBvciBtaXNz
aW5nIiA+JjUKZWNobyAiJGFzX21lOiBXQVJOSU5HOiBcYG1pc3NpbmcnIHNjcmlwdCBpcyB0b28g
b2xkIG9yIG1pc3NpbmciID4mMjt9CmZpCgppZiBta2RpciAtcCAtLXZlcnNpb24gLiA+L2Rldi9u
dWxsIDI+JjEgJiYgdGVzdCAhIC1kIC4vLS12ZXJzaW9uOyB0aGVuCiAgIyBXZSB1c2VkIHRvIGtl
ZXBpbmcgdGhlIGAuJyBhcyBmaXJzdCBhcmd1bWVudCwgaW4gb3JkZXIgdG8KICAjIGFsbG93ICQo
bWtkaXJfcCkgdG8gYmUgdXNlZCB3aXRob3V0IGFyZ3VtZW50LiAgQXMgaW4KICAjICAgJChta2Rp
cl9wKSAkKHNvbWVkaXIpCiAgIyB3aGVyZSAkKHNvbWVkaXIpIGlzIGNvbmRpdGlvbmFsbHkgZGVm
aW5lZC4gIEhvd2V2ZXIgdGhpcyBpcyB3cm9uZwogICMgZm9yIHR3byByZWFzb25zOgogICMgIDEu
IGlmIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZCBieSBhIHVzZXIgd2hvIGNhbm5vdCB3cml0ZSBg
LicKICAjICAgICBtYWtlIGluc3RhbGwgd2lsbCBmYWlsLAogICMgIDIuIHRoZSBhYm92ZSBjb21t
ZW50IHNob3VsZCBtb3N0IGNlcnRhaW5seSByZWFkCiAgIyAgICAgJChta2Rpcl9wKSAkKERFU1RE
SVIpJChzb21lZGlyKQogICMgICAgIHNvIGl0IGRvZXMgbm90IHdvcmsgd2hlbiAkKHNvbWVkaXIp
IGlzIHVuZGVmaW5lZCBhbmQKICAjICAgICAkKERFU1RESVIpIGlzIG5vdC4KICAjICBUbyBzdXBw
b3J0IHRoZSBsYXR0ZXIgY2FzZSwgd2UgaGF2ZSB0byB3cml0ZQogICMgICAgIHRlc3QgLXogIiQo
c29tZWRpcikiIHx8ICQobWtkaXJfcCkgJChERVNURElSKSQoc29tZWRpciksCiAgIyAgc28gdGhl
IGAuJyB0cmljayBpcyBwb2ludGxlc3MuCiAgbWtkaXJfcD0nbWtkaXIgLXAgLS0nCmVsc2UKICAj
IE9uIE5leHRTdGVwIGFuZCBPcGVuU3RlcCwgdGhlIGBta2RpcicgY29tbWFuZCBkb2VzIG5vdAog
ICMgcmVjb2duaXplIGFueSBvcHRpb24uICBJdCB3aWxsIGludGVycHJldCBhbGwgb3B0aW9ucyBh
cwogICMgZGlyZWN0b3JpZXMgdG8gY3JlYXRlLCBhbmQgdGhlbiBhYm9ydCBiZWNhdXNlIGAuJyBh
bHJlYWR5CiAgIyBleGlzdHMuCiAgZm9yIGQgaW4gLi8tcCAuLy0tdmVyc2lvbjsKICBkbwogICAg
dGVzdCAtZCAkZCAmJiBybWRpciAkZAogIGRvbmUKICAjICQobWtpbnN0YWxsZGlycykgaXMgZGVm
aW5lZCBieSBBdXRvbWFrZSBpZiBta2luc3RhbGxkaXJzIGV4aXN0cy4KICBpZiB0ZXN0IC1mICIk
YWNfYXV4X2Rpci9ta2luc3RhbGxkaXJzIjsgdGhlbgogICAgbWtkaXJfcD0nJChta2luc3RhbGxk
aXJzKScKICBlbHNlCiAgICBta2Rpcl9wPSckKGluc3RhbGxfc2gpIC1kJwogIGZpCmZpCgpmb3Ig
YWNfcHJvZyBpbiBnYXdrIG1hd2sgbmF3ayBhd2sKZG8KICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdv
cmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4K
c2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNo
ZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193
b3JkLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfQVdLK3NldH0iID0g
c2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlm
IHRlc3QgLW4gIiRBV0siOyB0aGVuCiAgYWNfY3ZfcHJvZ19BV0s9IiRBV0siICMgTGV0IHRoZSB1
c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9T
RVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0ZXN0
IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhl
Y3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRh
Y19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVj
X2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfQVdLPSIkYWNfcHJvZyIKICAgIGVjaG8gIiRh
c19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKICAg
IGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZlX0lGUwoKZmkKZmkKQVdLPSRhY19j
dl9wcm9nX0FXSwppZiB0ZXN0IC1uICIkQVdLIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5F
Tk86IHJlc3VsdDogJEFXSyIgPiY1CmVjaG8gIiR7RUNIT19UfSRBV0siID4mNjsgfQplbHNlCiAg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5v
IiA+JjY7IH0KZmkKCgogIHRlc3QgLW4gIiRBV0siICYmIGJyZWFrCmRvbmUKCnsgZWNobyAiJGFz
X21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgJHtNQUtFLW1ha2V9IHNldHMgXCQoTUFLRSki
ID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIHdoZXRoZXIgJHtNQUtFLW1ha2V9IHNldHMgXCQo
TUFLRSkuLi4gJEVDSE9fQyIgPiY2OyB9CnNldCB4ICR7TUFLRS1tYWtlfTsgYWNfbWFrZT1gZWNo
byAiJDIiIHwgc2VkICdzLysvcC9nOyBzL1teYS16QS1aMC05X10vXy9nJ2AKaWYgeyBhc192YXI9
YWNfY3ZfcHJvZ19tYWtlXyR7YWNfbWFrZX1fc2V0OyBldmFsICJ0ZXN0IFwiXCR7JGFzX3Zhcitz
ZXR9XCIgPSBzZXQiOyB9OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+
JjYKZWxzZQogIGNhdCA+Y29uZnRlc3QubWFrZSA8PFxfQUNFT0YKU0hFTEwgPSAvYmluL3NoCmFs
bDoKCUBlY2hvICdAQEAlJSU9JChNQUtFKT1AQEAlJSUnCl9BQ0VPRgojIEdOVSBtYWtlIHNvbWV0
aW1lcyBwcmludHMgIm1ha2VbMV06IEVudGVyaW5nLi4uIiwgd2hpY2ggd291bGQgY29uZnVzZSB1
cy4KY2FzZSBgJHtNQUtFLW1ha2V9IC1mIGNvbmZ0ZXN0Lm1ha2UgMj4vZGV2L251bGxgIGluCiAg
KkBAQCUlJT0/Kj1AQEAlJSUqKQogICAgZXZhbCBhY19jdl9wcm9nX21ha2VfJHthY19tYWtlfV9z
ZXQ9eWVzOzsKICAqKQogICAgZXZhbCBhY19jdl9wcm9nX21ha2VfJHthY19tYWtlfV9zZXQ9bm87
Owplc2FjCnJtIC1mIGNvbmZ0ZXN0Lm1ha2UKZmkKaWYgZXZhbCB0ZXN0IFwkYWNfY3ZfcHJvZ19t
YWtlXyR7YWNfbWFrZX1fc2V0ID0geWVzOyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiB5ZXMiID4mNQplY2hvICIke0VDSE9fVH15ZXMiID4mNjsgfQogIFNFVF9NQUtFPQpl
bHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNI
T19UfW5vIiA+JjY7IH0KICBTRVRfTUFLRT0iTUFLRT0ke01BS0UtbWFrZX0iCmZpCgpybSAtcmYg
LnRzdCAyPi9kZXYvbnVsbApta2RpciAudHN0IDI+L2Rldi9udWxsCmlmIHRlc3QgLWQgLnRzdDsg
dGhlbgogIGFtX19sZWFkaW5nX2RvdD0uCmVsc2UKICBhbV9fbGVhZGluZ19kb3Q9XwpmaQpybWRp
ciAudHN0IDI+L2Rldi9udWxsCgojIHRlc3QgdG8gc2VlIGlmIHNyY2RpciBhbHJlYWR5IGNvbmZp
Z3VyZWQKaWYgdGVzdCAiYGNkICRzcmNkaXIgJiYgcHdkYCIgIT0gImBwd2RgIiAmJgogICB0ZXN0
IC1mICRzcmNkaXIvY29uZmlnLnN0YXR1czsgdGhlbgogIHsgeyBlY2hvICIkYXNfbWU6JExJTkVO
TzogZXJyb3I6IHNvdXJjZSBkaXJlY3RvcnkgYWxyZWFkeSBjb25maWd1cmVkOyBydW4gXCJtYWtl
IGRpc3RjbGVhblwiIHRoZXJlIGZpcnN0IiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogc291cmNl
IGRpcmVjdG9yeSBhbHJlYWR5IGNvbmZpZ3VyZWQ7IHJ1biBcIm1ha2UgZGlzdGNsZWFuXCIgdGhl
cmUgZmlyc3QiID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoKIyB0ZXN0IHdo
ZXRoZXIgd2UgaGF2ZSBjeWdwYXRoCmlmIHRlc3QgLXogIiRDWUdQQVRIX1ciOyB0aGVuCiAgaWYg
KGN5Z3BhdGggLS12ZXJzaW9uKSA+L2Rldi9udWxsIDI+L2Rldi9udWxsOyB0aGVuCiAgICBDWUdQ
QVRIX1c9J2N5Z3BhdGggLXcnCiAgZWxzZQogICAgQ1lHUEFUSF9XPWVjaG8KICBmaQpmaQoKCiMg
RGVmaW5lIHRoZSBpZGVudGl0eSBvZiB0aGUgcGFja2FnZS4KIFBBQ0tBR0U9aHVuc3BlbGwKIFZF
UlNJT049MS4xLjQKCgpjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCiNkZWZpbmUgUEFDS0FHRSAi
JFBBQ0tBR0UiCl9BQ0VPRgoKCmNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKI2RlZmluZSBWRVJT
SU9OICIkVkVSU0lPTiIKX0FDRU9GCgojIFNvbWUgdG9vbHMgQXV0b21ha2UgbmVlZHMuCgpBQ0xP
Q0FMPSR7QUNMT0NBTC0iJHthbV9taXNzaW5nX3J1bn1hY2xvY2FsLSR7YW1fX2FwaV92ZXJzaW9u
fSJ9CgoKQVVUT0NPTkY9JHtBVVRPQ09ORi0iJHthbV9taXNzaW5nX3J1bn1hdXRvY29uZiJ9CgoK
QVVUT01BS0U9JHtBVVRPTUFLRS0iJHthbV9taXNzaW5nX3J1bn1hdXRvbWFrZS0ke2FtX19hcGlf
dmVyc2lvbn0ifQoKCkFVVE9IRUFERVI9JHtBVVRPSEVBREVSLSIke2FtX21pc3NpbmdfcnVufWF1
dG9oZWFkZXIifQoKCk1BS0VJTkZPPSR7TUFLRUlORk8tIiR7YW1fbWlzc2luZ19ydW59bWFrZWlu
Zm8ifQoKaW5zdGFsbF9zaD0ke2luc3RhbGxfc2gtIiRhbV9hdXhfZGlyL2luc3RhbGwtc2gifQoK
IyBJbnN0YWxsZWQgYmluYXJpZXMgYXJlIHVzdWFsbHkgc3RyaXBwZWQgdXNpbmcgYHN0cmlwJyB3
aGVuIHRoZSB1c2VyCiMgcnVuIGBtYWtlIGluc3RhbGwtc3RyaXAnLiAgSG93ZXZlciBgc3RyaXAn
IG1pZ2h0IG5vdCBiZSB0aGUgcmlnaHQKIyB0b29sIHRvIHVzZSBpbiBjcm9zcy1jb21waWxhdGlv
biBlbnZpcm9ubWVudHMsIHRoZXJlZm9yZSBBdXRvbWFrZQojIHdpbGwgaG9ub3IgdGhlIGBTVFJJ
UCcgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gb3ZlcnJ1bGUgdGhpcyBwcm9ncmFtLgppZiB0ZXN0
ICIkY3Jvc3NfY29tcGlsaW5nIiAhPSBubzsgdGhlbgogIGlmIHRlc3QgLW4gIiRhY190b29sX3By
ZWZpeCI7IHRoZW4KICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVm
aXh9c3RyaXAiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQgZHVt
bXkgJHthY190b29sX3ByZWZpeH1zdHJpcDsgYWNfd29yZD0kMgp7IGVjaG8gIiRhc19tZTokTElO
RU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZv
ciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9wcm9nX1NUUklQ
K3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
ZWxzZQogIGlmIHRlc3QgLW4gIiRTVFJJUCI7IHRoZW4KICBhY19jdl9wcm9nX1NUUklQPSIkU1RS
SVAiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJ
RlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNf
c2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4
dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFz
X2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8k
YWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfU1RSSVA9IiR7YWNf
dG9vbF9wcmVmaXh9c3RyaXAiCiAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rp
ci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CiAgICBicmVhayAyCiAgZmkKZG9uZQpkb25lCklG
Uz0kYXNfc2F2ZV9JRlMKCmZpCmZpClNUUklQPSRhY19jdl9wcm9nX1NUUklQCmlmIHRlc3QgLW4g
IiRTVFJJUCI7IHRoZW4KICB7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRTVFJJUCIg
PiY1CmVjaG8gIiR7RUNIT19UfSRTVFJJUCIgPiY2OyB9CmVsc2UKICB7IGVjaG8gIiRhc19tZTok
TElORU5POiByZXN1bHQ6IG5vIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8iID4mNjsgfQpmaQoKCmZp
CmlmIHRlc3QgLXogIiRhY19jdl9wcm9nX1NUUklQIjsgdGhlbgogIGFjX2N0X1NUUklQPSRTVFJJ
UAogICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAic3RyaXAiLCBzbyBpdCBjYW4gYmUgYSBw
cm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQgZHVtbXkgc3RyaXA7IGFjX3dvcmQ9JDIKeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19O
ICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNf
Y3ZfcHJvZ19hY19jdF9TVFJJUCtzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNh
Y2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBpZiB0ZXN0IC1uICIkYWNfY3RfU1RSSVAiOyB0aGVu
CiAgYWNfY3ZfcHJvZ19hY19jdF9TVFJJUD0iJGFjX2N0X1NUUklQIiAjIExldCB0aGUgdXNlciBv
dmVycmlkZSB0aGUgdGVzdC4KZWxzZQphc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJB
VE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVfSUZTCiAgdGVzdCAteiAi
JGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFi
bGVfZXh0ZW5zaW9uczsgZG8KICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhl
Y19leHQiICYmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQi
OyB9OyB0aGVuCiAgICBhY19jdl9wcm9nX2FjX2N0X1NUUklQPSJzdHJpcCIKICAgIGVjaG8gIiRh
c19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKICAg
IGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZlX0lGUwoKZmkKZmkKYWNfY3RfU1RS
SVA9JGFjX2N2X3Byb2dfYWNfY3RfU1RSSVAKaWYgdGVzdCAtbiAiJGFjX2N0X1NUUklQIjsgdGhl
bgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0X1NUUklQIiA+JjUKZWNo
byAiJHtFQ0hPX1R9JGFjX2N0X1NUUklQIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFzX21lOiRM
SU5FTk86IHJlc3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZpCgogIGlm
IHRlc3QgIngkYWNfY3RfU1RSSVAiID0geDsgdGhlbgogICAgU1RSSVA9IjoiCiAgZWxzZQogICAg
Y2FzZSAkY3Jvc3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgp5ZXM6KQp7IGVjaG8gIiRh
c19tZTokTElORU5POiBXQVJOSU5HOiBJbiB0aGUgZnV0dXJlLCBBdXRvY29uZiB3aWxsIG5vdCBk
ZXRlY3QgY3Jvc3MtdG9vbHMKd2hvc2UgbmFtZSBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBob3N0
IHRyaXBsZXQuICBJZiB5b3UgdGhpbmsgdGhpcwpjb25maWd1cmF0aW9uIGlzIHVzZWZ1bCB0byB5
b3UsIHBsZWFzZSB3cml0ZSB0byBhdXRvY29uZkBnbnUub3JnLiIgPiY1CmVjaG8gIiRhc19tZTog
V0FSTklORzogSW4gdGhlIGZ1dHVyZSwgQXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNyb3NzLXRv
b2xzCndob3NlIG5hbWUgZG9lcyBub3Qgc3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAgSWYg
eW91IHRoaW5rIHRoaXMKY29uZmlndXJhdGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVhc2Ugd3Jp
dGUgdG8gYXV0b2NvbmZAZ251Lm9yZy4iID4mMjt9CmFjX3Rvb2xfd2FybmVkPXllcyA7Owplc2Fj
CiAgICBTVFJJUD0kYWNfY3RfU1RSSVAKICBmaQplbHNlCiAgU1RSSVA9IiRhY19jdl9wcm9nX1NU
UklQIgpmaQoKZmkKSU5TVEFMTF9TVFJJUF9QUk9HUkFNPSJcJHtTSEVMTH0gXCQoaW5zdGFsbF9z
aCkgLWMgLXMiCgojIFdlIG5lZWQgYXdrIGZvciB0aGUgImNoZWNrIiB0YXJnZXQuICBUaGUgc3lz
dGVtICJhd2siIGlzIGJhZCBvbgojIHNvbWUgcGxhdGZvcm1zLgojIEFsd2F5cyBkZWZpbmUgQU1U
QVIgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCgpBTVRBUj0ke0FNVEFSLSIke2FtX21pc3Np
bmdfcnVufXRhciJ9CgphbV9fdGFyPScke0FNVEFSfSBjaG9mIC0gIiQkdGFyZGlyIic7IGFtX191
bnRhcj0nJHtBTVRBUn0geGYgLScKCgoKCgoKCmFjX2NvbmZpZ19oZWFkZXJzPSIkYWNfY29uZmln
X2hlYWRlcnMgY29uZmlnLmgiCgoKCgojIENoZWNrcyBmb3IgcHJvZ3JhbXMuCmFjX2V4dD1jcHAK
YWNfY3BwPSckQ1hYQ1BQICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENYWCAtYyAkQ1hYRkxBR1Mg
JENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckQ1hYIC1vIGNvbmZ0ZXN0
JGFjX2V4ZWV4dCAkQ1hYRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQg
JExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2N4eF9jb21waWxlcl9nbnUKaWYgdGVz
dCAteiAiJENYWCI7IHRoZW4KICBpZiB0ZXN0IC1uICIkQ0NDIjsgdGhlbgogICAgQ1hYPSRDQ0MK
ICBlbHNlCiAgICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCiAgZm9yIGFjX3By
b2cgaW4gZysrIGMrKyBncHAgYUNDIENDIGN4eCBjYysrIGNsLmV4ZSBGQ0MgS0NDIFJDQyB4bENf
ciB4bEMKICBkbwogICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfdG9vbF9wcmVm
aXgkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCnNldCBk
dW1teSAkYWNfdG9vbF9wcmVmaXgkYWNfcHJvZzsgYWNfd29yZD0kMgp7IGVjaG8gIiRhc19tZTok
TElORU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5n
IGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9wcm9nX0NY
WCtzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2
CmVsc2UKICBpZiB0ZXN0IC1uICIkQ1hYIjsgdGhlbgogIGFjX2N2X3Byb2dfQ1hYPSIkQ1hYIiAj
IExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KZWxzZQphc19zYXZlX0lGUz0kSUZTOyBJ
RlM9JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVf
SUZTCiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgYWNfZXhlY19leHQgaW4g
JycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KICBpZiB7IHRlc3QgLWYgIiRhc19kaXIv
JGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dv
cmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCiAgICBhY19jdl9wcm9nX0NYWD0iJGFjX3Rvb2xfcHJl
Zml4JGFjX3Byb2ciCiAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNf
d29yZCRhY19leGVjX2V4dCIgPiY1CiAgICBicmVhayAyCiAgZmkKZG9uZQpkb25lCklGUz0kYXNf
c2F2ZV9JRlMKCmZpCmZpCkNYWD0kYWNfY3ZfcHJvZ19DWFgKaWYgdGVzdCAtbiAiJENYWCI7IHRo
ZW4KICB7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRDWFgiID4mNQplY2hvICIke0VD
SE9fVH0kQ1hYIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDog
bm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZpCgoKICAgIHRlc3QgLW4gIiRDWFgi
ICYmIGJyZWFrCiAgZG9uZQpmaQppZiB0ZXN0IC16ICIkQ1hYIjsgdGhlbgogIGFjX2N0X0NYWD0k
Q1hYCiAgZm9yIGFjX3Byb2cgaW4gZysrIGMrKyBncHAgYUNDIENDIGN4eCBjYysrIGNsLmV4ZSBG
Q0MgS0NDIFJDQyB4bENfciB4bEMKZG8KICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiRh
Y19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1bW15
ICRhY19wcm9nOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZv
ciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRF
Q0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfYWNfY3RfQ1hYK3NldH0iID0gc2V0
OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlmIHRl
c3QgLW4gIiRhY19jdF9DWFgiOyB0aGVuCiAgYWNfY3ZfcHJvZ19hY19jdF9DWFg9IiRhY19jdF9D
WFgiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJ
RlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNf
c2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4
dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFz
X2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8k
YWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfYWNfY3RfQ1hYPSIk
YWNfcHJvZyIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3Jk
JGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZl
X0lGUwoKZmkKZmkKYWNfY3RfQ1hYPSRhY19jdl9wcm9nX2FjX2N0X0NYWAppZiB0ZXN0IC1uICIk
YWNfY3RfQ1hYIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0
X0NYWCIgPiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdF9DWFgiID4mNjsgfQplbHNlCiAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7
IH0KZmkKCgogIHRlc3QgLW4gIiRhY19jdF9DWFgiICYmIGJyZWFrCmRvbmUKCiAgaWYgdGVzdCAi
eCRhY19jdF9DWFgiID0geDsgdGhlbgogICAgQ1hYPSJnKysiCiAgZWxzZQogICAgY2FzZSAkY3Jv
c3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgp5ZXM6KQp7IGVjaG8gIiRhc19tZTokTElO
RU5POiBXQVJOSU5HOiBJbiB0aGUgZnV0dXJlLCBBdXRvY29uZiB3aWxsIG5vdCBkZXRlY3QgY3Jv
c3MtdG9vbHMKd2hvc2UgbmFtZSBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBob3N0IHRyaXBsZXQu
ICBJZiB5b3UgdGhpbmsgdGhpcwpjb25maWd1cmF0aW9uIGlzIHVzZWZ1bCB0byB5b3UsIHBsZWFz
ZSB3cml0ZSB0byBhdXRvY29uZkBnbnUub3JnLiIgPiY1CmVjaG8gIiRhc19tZTogV0FSTklORzog
SW4gdGhlIGZ1dHVyZSwgQXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNyb3NzLXRvb2xzCndob3Nl
IG5hbWUgZG9lcyBub3Qgc3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAgSWYgeW91IHRoaW5r
IHRoaXMKY29uZmlndXJhdGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVhc2Ugd3JpdGUgdG8gYXV0
b2NvbmZAZ251Lm9yZy4iID4mMjt9CmFjX3Rvb2xfd2FybmVkPXllcyA7Owplc2FjCiAgICBDWFg9
JGFjX2N0X0NYWAogIGZpCmZpCgogIGZpCmZpCiMgUHJvdmlkZSBzb21lIGluZm9ybWF0aW9uIGFi
b3V0IHRoZSBjb21waWxlci4KZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBDKysg
Y29tcGlsZXIgdmVyc2lvbiIgPiY1CmFjX2NvbXBpbGVyPWBzZXQgWCAkYWNfY29tcGlsZTsgZWNo
byAkMmAKeyAoYWNfdHJ5PSIkYWNfY29tcGlsZXIgLS12ZXJzaW9uID4mNSIKY2FzZSAiKCgkYWNf
dHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICop
IGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86
ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlciAtLXZlcnNpb24gPiY1
IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfQp7IChhY190cnk9IiRhY19jb21waWxl
ciAtdiA+JjUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3Ry
eV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJl
Y2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNf
Y29tcGlsZXIgLXYgPiY1IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfQp7IChhY190
cnk9IiRhY19jb21waWxlciAtViA+JjUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxg
KiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5
OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4m
NQogIChldmFsICIkYWNfY29tcGlsZXIgLVYgPiY1IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3Rh
dHVzKTsgfQoKY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAq
LwpfQUNFT0YKY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKLyogZW5kIGNvbmZkZWZzLmguICAqLwoKaW50Cm1haW4gKCkKewoK
ICA7CiAgcmV0dXJuIDA7Cn0KX0FDRU9GCmFjX2NsZWFuX2ZpbGVzX3NhdmU9JGFjX2NsZWFuX2Zp
bGVzCmFjX2NsZWFuX2ZpbGVzPSIkYWNfY2xlYW5fZmlsZXMgYS5vdXQgYS5leGUgYi5vdXQiCiMg
VHJ5IHRvIGNyZWF0ZSBhbiBleGVjdXRhYmxlIHdpdGhvdXQgLW8gZmlyc3QsIGRpc3JlZ2FyZCBh
Lm91dC4KIyBJdCB3aWxsIGhlbHAgdXMgZGlhZ25vc2UgYnJva2VuIGNvbXBpbGVycywgYW5kIGZp
bmRpbmcgb3V0IGFuIGludHVpdGlvbgojIG9mIGV4ZWV4dC4KeyBlY2hvICIkYXNfbWU6JExJTkVO
TzogY2hlY2tpbmcgZm9yIEMrKyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUiID4m
NQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBDKysgY29tcGlsZXIgZGVmYXVsdCBvdXRwdXQg
ZmlsZSBuYW1lLi4uICRFQ0hPX0MiID4mNjsgfQphY19saW5rX2RlZmF1bHQ9YGVjaG8gIiRhY19s
aW5rIiB8IHNlZCAncy8gLW8gKmNvbmZ0ZXN0W14gXSovLydgCiMKIyBMaXN0IG9mIHBvc3NpYmxl
IG91dHB1dCBmaWxlcywgc3RhcnRpbmcgZnJvbSB0aGUgbW9zdCBsaWtlbHkuCiMgVGhlIGFsZ29y
aXRobSBpcyBub3Qgcm9idXN0IHRvIGp1bmsgaW4gYC4nLCBoZW5jZSBnbyB0byB3aWxkY2FyZHMg
KGEuKikKIyBvbmx5IGFzIGEgbGFzdCByZXNvcnQuICBiLm91dCBpcyBjcmVhdGVkIGJ5IGk5NjAg
Y29tcGlsZXJzLgphY19maWxlcz0nYV9vdXQuZXhlIGEuZXhlIGNvbmZ0ZXN0LmV4ZSBhLm91dCBj
b25mdGVzdCBhLiogY29uZnRlc3QuKiBiLm91dCcKIwojIFRoZSBJUklYIDYgbGlua2VyIHdyaXRl
cyBpbnRvIGV4aXN0aW5nIGZpbGVzIHdoaWNoIG1heSBub3QgYmUKIyBleGVjdXRhYmxlLCByZXRh
aW5pbmcgdGhlaXIgcGVybWlzc2lvbnMuICBSZW1vdmUgdGhlbSBmaXJzdCBzbyBhCiMgc3Vic2Vx
dWVudCBleGVjdXRpb24gdGVzdCB3b3Jrcy4KYWNfcm1maWxlcz0KZm9yIGFjX2ZpbGUgaW4gJGFj
X2ZpbGVzCmRvCiAgY2FzZSAkYWNfZmlsZSBpbgogICAgKi4kYWNfZXh0IHwgKi54Y29mZiB8ICou
dGRzIHwgKi5kIHwgKi5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgfCAqLm1hcCB8ICouaW5m
IHwgKi5vIHwgKi5vYmogKSA7OwogICAgKiApIGFjX3JtZmlsZXM9IiRhY19ybWZpbGVzICRhY19m
aWxlIjs7CiAgZXNhYwpkb25lCnJtIC1mICRhY19ybWZpbGVzCgppZiB7IChhY190cnk9IiRhY19s
aW5rX2RlZmF1bHQiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFj
X3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFs
ICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIk
YWNfbGlua19kZWZhdWx0IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhlbgog
ICMgQXV0b2NvbmYtMi4xMyBjb3VsZCBzZXQgdGhlIGFjX2N2X2V4ZWV4dCB2YXJpYWJsZSB0byBg
bm8nLgojIFNvIGlnbm9yZSBhIHZhbHVlIG9mIGBubycsIG90aGVyd2lzZSB0aGlzIHdvdWxkIGxl
YWQgdG8gYEVYRUVYVCA9IG5vJwojIGluIGEgTWFrZWZpbGUuICBXZSBzaG91bGQgbm90IG92ZXJy
aWRlIGFjX2N2X2V4ZWV4dCBpZiBpdCB3YXMgY2FjaGVkLAojIHNvIHRoYXQgdGhlIHVzZXIgY2Fu
IHNob3J0LWNpcmN1aXQgdGhpcyB0ZXN0IGZvciBjb21waWxlcnMgdW5rbm93biB0bwojIEF1dG9j
b25mLgpmb3IgYWNfZmlsZSBpbiAkYWNfZmlsZXMKZG8KICB0ZXN0IC1mICIkYWNfZmlsZSIgfHwg
Y29udGludWUKICBjYXNlICRhY19maWxlIGluCiAgICAqLiRhY19leHQgfCAqLnhjb2ZmIHwgKi50
ZHMgfCAqLmQgfCAqLnBkYiB8ICoueFNZTSB8ICouYmIgfCAqLmJiZyB8ICoubWFwIHwgKi5pbmYg
fCAqLm8gfCAqLm9iaiApCgk7OwogICAgW2FiXS5vdXQgKQoJIyBXZSBmb3VuZCB0aGUgZGVmYXVs
dCBleGVjdXRhYmxlLCBidXQgZXhlZXh0PScnIGlzIG1vc3QKCSMgY2VydGFpbmx5IHJpZ2h0LgoJ
YnJlYWs7OwogICAgKi4qICkKICAgICAgICBpZiB0ZXN0ICIke2FjX2N2X2V4ZWV4dCtzZXR9IiA9
IHNldCAmJiB0ZXN0ICIkYWNfY3ZfZXhlZXh0IiAhPSBubzsKCXRoZW4gOjsgZWxzZQoJICAgYWNf
Y3ZfZXhlZXh0PWBleHByICIkYWNfZmlsZSIgOiAnW14uXSpcKFwuLipcKSdgCglmaQoJIyBXZSBz
ZXQgYWNfY3ZfZXhlZXh0IGhlcmUgYmVjYXVzZSB0aGUgbGF0ZXIgdGVzdCBmb3IgaXQgaXMgbm90
CgkjIHNhZmU6IGNyb3NzIGNvbXBpbGVycyBtYXkgbm90IGFkZCB0aGUgc3VmZml4IGlmIGdpdmVu
IGFuIGAtbycKCSMgYXJndW1lbnQsIHNvIHdlIG1heSBuZWVkIHRvIGtub3cgaXQgYXQgdGhhdCBw
b2ludCBhbHJlYWR5LgoJIyBFdmVuIGlmIHRoaXMgc2VjdGlvbiBsb29rcyBjcnVmdHk6IGl0IGhh
cyB0aGUgYWR2YW50YWdlIG9mCgkjIGFjdHVhbGx5IHdvcmtpbmcuCglicmVhazs7CiAgICAqICkK
CWJyZWFrOzsKICBlc2FjCmRvbmUKdGVzdCAiJGFjX2N2X2V4ZWV4dCIgPSBubyAmJiBhY19jdl9l
eGVleHQ9CgplbHNlCiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2Vk
ICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQoKeyB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBlcnJvcjogQysrIGNvbXBpbGVyIGNhbm5vdCBjcmVhdGUgZXhlY3V0YWJsZXMKU2VlIFxgY29u
ZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBDKysg
Y29tcGlsZXIgY2Fubm90IGNyZWF0ZSBleGVjdXRhYmxlcwpTZWUgXGBjb25maWcubG9nJyBmb3Ig
bW9yZSBkZXRhaWxzLiIgPiYyO30KICAgeyAoZXhpdCA3Nyk7IGV4aXQgNzc7IH07IH0KZmkKCmFj
X2V4ZWV4dD0kYWNfY3ZfZXhlZXh0CnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFj
X2ZpbGUiID4mNQplY2hvICIke0VDSE9fVH0kYWNfZmlsZSIgPiY2OyB9CgojIENoZWNrIHRoYXQg
dGhlIGNvbXBpbGVyIHByb2R1Y2VzIGV4ZWN1dGFibGVzIHdlIGNhbiBydW4uICBJZiBub3QsIGVp
dGhlcgojIHRoZSBjb21waWxlciBpcyBicm9rZW4sIG9yIHdlIGNyb3NzIGNvbXBpbGUuCnsgZWNo
byAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMrKyBjb21waWxlciB3b3Jr
cyIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgd2hldGhlciB0aGUgQysrIGNvbXBpbGVyIHdv
cmtzLi4uICRFQ0hPX0MiID4mNjsgfQojIEZJWE1FOiBUaGVzZSBjcm9zcyBjb21waWxlciBoYWNr
cyBzaG91bGQgYmUgcmVtb3ZlZCBmb3IgQXV0b2NvbmYgMy4wCiMgSWYgbm90IGNyb3NzIGNvbXBp
bGluZywgY2hlY2sgdGhhdCB3ZSBjYW4gcnVuIGEgc2ltcGxlIHByb2dyYW0uCmlmIHRlc3QgIiRj
cm9zc19jb21waWxpbmciICE9IHllczsgdGhlbgogIGlmIHsgYWNfdHJ5PScuLyRhY19maWxlJwog
IHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hv
PVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwi
XCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5Iikg
Mj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICAgY3Jvc3NfY29tcGls
aW5nPW5vCiAgZWxzZQogICAgaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgPSBtYXliZTsgdGhl
bgoJY3Jvc3NfY29tcGlsaW5nPXllcwogICAgZWxzZQoJeyB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBlcnJvcjogY2Fubm90IHJ1biBDKysgY29tcGlsZWQgcHJvZ3JhbXMuCklmIHlvdSBtZWFudCB0
byBjcm9zcyBjb21waWxlLCB1c2UgXGAtLWhvc3QnLgpTZWUgXGBjb25maWcubG9nJyBmb3IgbW9y
ZSBkZXRhaWxzLiIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBydW4gQysrIGNvbXBp
bGVkIHByb2dyYW1zLgpJZiB5b3UgbWVhbnQgdG8gY3Jvc3MgY29tcGlsZSwgdXNlIFxgLS1ob3N0
Jy4KU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mMjt9CiAgIHsgKGV4aXQg
MSk7IGV4aXQgMTsgfTsgfQogICAgZmkKICBmaQpmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6IHllcyIgPiY1CmVjaG8gIiR7RUNIT19UfXllcyIgPiY2OyB9CgpybSAtZiBhLm91dCBh
LmV4ZSBjb25mdGVzdCRhY19jdl9leGVleHQgYi5vdXQKYWNfY2xlYW5fZmlsZXM9JGFjX2NsZWFu
X2ZpbGVzX3NhdmUKIyBDaGVjayB0aGF0IHRoZSBjb21waWxlciBwcm9kdWNlcyBleGVjdXRhYmxl
cyB3ZSBjYW4gcnVuLiAgSWYgbm90LCBlaXRoZXIKIyB0aGUgY29tcGlsZXIgaXMgYnJva2VuLCBv
ciB3ZSBjcm9zcyBjb21waWxlLgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0
aGVyIHdlIGFyZSBjcm9zcyBjb21waWxpbmciID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIHdo
ZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZy4uLiAkRUNIT19DIiA+JjY7IH0KeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogcmVzdWx0OiAkY3Jvc3NfY29tcGlsaW5nIiA+JjUKZWNobyAiJHtFQ0hP
X1R9JGNyb3NzX2NvbXBpbGluZyIgPiY2OyB9Cgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2lu
ZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzLi4uICRFQ0hPX0MiID4mNjsgfQppZiB7IChhY190
cnk9IiRhY19saW5rIgpjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBh
Y190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZh
bCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAi
JGFjX2xpbmsiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB0aGVuCiAgIyBJZiBi
b3RoIGBjb25mdGVzdC5leGUnIGFuZCBgY29uZnRlc3QnIGFyZSBgcHJlc2VudCcgKHdlbGwsIG9i
c2VydmFibGUpCiMgY2F0Y2ggYGNvbmZ0ZXN0LmV4ZScuICBGb3IgaW5zdGFuY2Ugd2l0aCBDeWd3
aW4sIGBscyBjb25mdGVzdCcgd2lsbAojIHdvcmsgcHJvcGVybHkgKGkuZS4sIHJlZmVyIHRvIGBj
b25mdGVzdC5leGUnKSwgd2hpbGUgaXQgd29uJ3Qgd2l0aAojIGBybScuCmZvciBhY19maWxlIGlu
IGNvbmZ0ZXN0LmV4ZSBjb25mdGVzdCBjb25mdGVzdC4qOyBkbwogIHRlc3QgLWYgIiRhY19maWxl
IiB8fCBjb250aW51ZQogIGNhc2UgJGFjX2ZpbGUgaW4KICAgICouJGFjX2V4dCB8ICoueGNvZmYg
fCAqLnRkcyB8ICouZCB8ICoucGRiIHwgKi54U1lNIHwgKi5iYiB8ICouYmJnIHwgKi5tYXAgfCAq
LmluZiB8ICoubyB8ICoub2JqICkgOzsKICAgICouKiApIGFjX2N2X2V4ZWV4dD1gZXhwciAiJGFj
X2ZpbGUiIDogJ1teLl0qXChcLi4qXCknYAoJICBicmVhazs7CiAgICAqICkgYnJlYWs7OwogIGVz
YWMKZG9uZQplbHNlCiAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90IGNv
bXB1dGUgc3VmZml4IG9mIGV4ZWN1dGFibGVzOiBjYW5ub3QgY29tcGlsZSBhbmQgbGluawpTZWUg
XGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6
IGNhbm5vdCBjb21wdXRlIHN1ZmZpeCBvZiBleGVjdXRhYmxlczogY2Fubm90IGNvbXBpbGUgYW5k
IGxpbmsKU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mMjt9CiAgIHsgKGV4
aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoKcm0gLWYgY29uZnRlc3QkYWNfY3ZfZXhlZXh0CnsgZWNo
byAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2V4ZWV4dCIgPiY1CmVjaG8gIiR7RUNI
T19UfSRhY19jdl9leGVleHQiID4mNjsgfQoKcm0gLWYgY29uZnRlc3QuJGFjX2V4dApFWEVFWFQ9
JGFjX2N2X2V4ZWV4dAphY19leGVleHQ9JEVYRUVYVAp7IGVjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyBmb3Igc3VmZml4IG9mIG9iamVjdCBmaWxlcyIgPiY1CmVjaG8gJEVDSE9fTiAiY2hl
Y2tpbmcgZm9yIHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRl
c3QgIiR7YWNfY3Zfb2JqZXh0K3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2Fj
aGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgov
KiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4
dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8K
CmludAptYWluICgpCnsKCiAgOwogIHJldHVybiAwOwp9Cl9BQ0VPRgpybSAtZiBjb25mdGVzdC5v
IGNvbmZ0ZXN0Lm9iagppZiB7IChhY190cnk9IiRhY19jb21waWxlIgpjYXNlICIoKCRhY190cnki
IGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNf
dHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFj
X3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2NvbXBpbGUiKSAyPiY1CiAgYWNfc3RhdHVz
PSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0
ICRhY19zdGF0dXMpOyB9OyB0aGVuCiAgZm9yIGFjX2ZpbGUgaW4gY29uZnRlc3QubyBjb25mdGVz
dC5vYmogY29uZnRlc3QuKjsgZG8KICB0ZXN0IC1mICIkYWNfZmlsZSIgfHwgY29udGludWU7CiAg
Y2FzZSAkYWNfZmlsZSBpbgogICAgKi4kYWNfZXh0IHwgKi54Y29mZiB8ICoudGRzIHwgKi5kIHwg
Ki5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgfCAqLm1hcCB8ICouaW5mICkgOzsKICAgICop
IGFjX2N2X29iamV4dD1gZXhwciAiJGFjX2ZpbGUiIDogJy4qXC5cKC4qXCknYAogICAgICAgYnJl
YWs7OwogIGVzYWMKZG9uZQplbHNlCiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQoKeyB7IGVjaG8gIiRhc19t
ZTokTElORU5POiBlcnJvcjogY2Fubm90IGNvbXB1dGUgc3VmZml4IG9mIG9iamVjdCBmaWxlczog
Y2Fubm90IGNvbXBpbGUKU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mNQpl
Y2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgY29tcHV0ZSBzdWZmaXggb2Ygb2JqZWN0IGZpbGVz
OiBjYW5ub3QgY29tcGlsZQpTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiYy
O30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CmZpCgpybSAtZiBjb25mdGVzdC4kYWNfY3Zf
b2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKZmkKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkYWNfY3Zfb2JqZXh0IiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N2X29iamV4dCIgPiY2OyB9
Ck9CSkVYVD0kYWNfY3Zfb2JqZXh0CmFjX29iamV4dD0kT0JKRVhUCnsgZWNobyAiJGFzX21lOiRM
SU5FTk86IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQysrIGNvbXBpbGVy
IiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V
IEMrKyBjb21waWxlci4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9jeHhfY29t
cGlsZXJfZ251K3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNI
T19DIiA+JjYKZWxzZQogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVm
cy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5j
b25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KCmludAptYWlu
ICgpCnsKI2lmbmRlZiBfX0dOVUNfXwogICAgICAgY2hva2UgbWUKI2VuZGlmCgogIDsKICByZXR1
cm4gMDsKfQpfQUNFT0YKcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAppZiB7IChhY190cnk9IiRh
Y19jb21waWxlIgpjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190
cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAi
ZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFj
X2NvbXBpbGUiKSAyPmNvbmZ0ZXN0LmVyMQogIGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisn
IGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNv
bmZ0ZXN0LmVyciA+JjUKICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIg
PiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2N4
eF93ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKICB7IChjYXNlICIoKCRh
Y190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAg
KikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVO
TzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKICBhY19zdGF0
dXM9JD8KICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4
aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNf
b2JqZXh0JwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFj
X3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFs
ICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIk
YWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogIGFjX2Nv
bXBpbGVyX2dudT15ZXMKZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIg
PiY1CnNlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCglhY19jb21waWxlcl9nbnU9
bm8KZmkKCnJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRl
c3QuJGFjX2V4dAphY19jdl9jeHhfY29tcGlsZXJfZ251PSRhY19jb21waWxlcl9nbnUKCmZpCnsg
ZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2N4eF9jb21waWxlcl9nbnUiID4m
NQplY2hvICIke0VDSE9fVH0kYWNfY3ZfY3h4X2NvbXBpbGVyX2dudSIgPiY2OyB9CkdYWD1gdGVz
dCAkYWNfY29tcGlsZXJfZ251ID0geWVzICYmIGVjaG8geWVzYAphY190ZXN0X0NYWEZMQUdTPSR7
Q1hYRkxBR1Mrc2V0fQphY19zYXZlX0NYWEZMQUdTPSRDWFhGTEFHUwp7IGVjaG8gIiRhc19tZTok
TElORU5POiBjaGVja2luZyB3aGV0aGVyICRDWFggYWNjZXB0cyAtZyIgPiY1CmVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgd2hldGhlciAkQ1hYIGFjY2VwdHMgLWcuLi4gJEVDSE9fQyIgPiY2OyB9Cmlm
IHRlc3QgIiR7YWNfY3ZfcHJvZ19jeHhfZytzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9f
TiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBhY19zYXZlX2N4eF93ZXJyb3JfZmxhZz0k
YWNfY3h4X3dlcnJvcl9mbGFnCiAgIGFjX2N4eF93ZXJyb3JfZmxhZz15ZXMKICAgYWNfY3ZfcHJv
Z19jeHhfZz1ubwogICBDWFhGTEFHUz0iLWciCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgovKiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3Qu
JGFjX2V4dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5o
LiAgKi8KCmludAptYWluICgpCnsKCiAgOwogIHJldHVybiAwOwp9Cl9BQ0VPRgpybSAtZiBjb25m
dGVzdC4kYWNfb2JqZXh0CmlmIHsgKGFjX3RyeT0iJGFjX2NvbXBpbGUiCmNhc2UgIigoJGFjX3Ry
eSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBh
Y190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAk
YWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY29tcGlsZSIpIDI+Y29uZnRlc3QuZXIx
CiAgYWNfc3RhdHVzPSQ/CiAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5l
cnIKICBybSAtZiBjb25mdGVzdC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRh
c19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsg
fSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY3h4X3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8
ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsK
ZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQog
IChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJ
IHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNf
dHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICop
IGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86
ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVz
PSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0
ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgYWNfY3ZfcHJvZ19jeHhfZz15ZXMKZWxzZQogIGVj
aG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRl
c3QuJGFjX2V4dCA+JjUKCglDWFhGTEFHUz0iIgogICAgICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQg
PDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9BQ0VPRgpjYXQgY29uZmRlZnMuaCA+PmNvbmZ0
ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBlbmQgY29uZmRl
ZnMuaC4gICovCgppbnQKbWFpbiAoKQp7CgogIDsKICByZXR1cm4gMDsKfQpfQUNFT0YKcm0gLWYg
Y29uZnRlc3QuJGFjX29iamV4dAppZiB7IChhY190cnk9IiRhY19jb21waWxlIgpjYXNlICIoKCRh
Y190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAg
KikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVO
TzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2NvbXBpbGUiKSAyPmNvbmZ0ZXN0
LmVyMQogIGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRl
c3QuZXJyCiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1
cyk7IH0gJiYKCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2N4eF93ZXJyb3JfZmxhZyIgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycicKICB7IChjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpc
YCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3Ry
eTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+
JjUKICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKICBhY19zdGF0dXM9JD8KICBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0g
JiYKCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JwogIHsgKGNhc2UgIigo
JGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsK
ICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElO
RU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0
YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogIDoKZWxzZQogIGVjaG8gIiRhc19tZTogZmFp
bGVkIHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUK
CglhY19jeHhfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY3h4X3dlcnJvcl9mbGFnCgkgQ1hYRkxBR1M9
Ii1nIgoJIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVmcy5oLiAgKi8K
X0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KCmludAptYWluICgpCnsKCiAg
OwogIHJldHVybiAwOwp9Cl9BQ0VPRgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CmlmIHsgKGFj
X3RyeT0iJGFjX2NvbXBpbGUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpc
XCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNh
YwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChl
dmFsICIkYWNfY29tcGlsZSIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAgZ3JlcCAt
diAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVzdC5lcjEK
ICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC16
ICIkYWNfY3h4X3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNh
c2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNf
dHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19t
ZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQog
IGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0
ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwg
KlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owpl
c2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAg
KGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVu
CiAgYWNfY3ZfcHJvZ19jeHhfZz15ZXMKZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dy
YW0gd2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCgpmaQoKcm0g
LWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0
CmZpCgpybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0
LiRhY19leHQKZmkKCnJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQg
Y29uZnRlc3QuJGFjX2V4dAogICBhY19jeHhfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY3h4X3dlcnJv
cl9mbGFnCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X3Byb2dfY3h4
X2ciID4mNQplY2hvICIke0VDSE9fVH0kYWNfY3ZfcHJvZ19jeHhfZyIgPiY2OyB9CmlmIHRlc3Qg
IiRhY190ZXN0X0NYWEZMQUdTIiA9IHNldDsgdGhlbgogIENYWEZMQUdTPSRhY19zYXZlX0NYWEZM
QUdTCmVsaWYgdGVzdCAkYWNfY3ZfcHJvZ19jeHhfZyA9IHllczsgdGhlbgogIGlmIHRlc3QgIiRH
WFgiID0geWVzOyB0aGVuCiAgICBDWFhGTEFHUz0iLWcgLU8yIgogIGVsc2UKICAgIENYWEZMQUdT
PSItZyIKICBmaQplbHNlCiAgaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KICAgIENYWEZMQUdT
PSItTzIiCiAgZWxzZQogICAgQ1hYRkxBR1M9CiAgZmkKZmkKYWNfZXh0PWMKYWNfY3BwPSckQ1BQ
ICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0
LiRhY19leHQgPiY1JwphY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1Mg
JENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxl
cl9nbnU9JGFjX2N2X2NfY29tcGlsZXJfZ251CkRFUERJUj0iJHthbV9fbGVhZGluZ19kb3R9ZGVw
cyIKCmFjX2NvbmZpZ19jb21tYW5kcz0iJGFjX2NvbmZpZ19jb21tYW5kcyBkZXBmaWxlcyIKCgph
bV9tYWtlPSR7TUFLRS1tYWtlfQpjYXQgPiBjb25maW5jIDw8ICdFTkQnCmFtX19kb2l0OgoJQGVj
aG8gZG9uZQouUEhPTlk6IGFtX19kb2l0CkVORAojIElmIHdlIGRvbid0IGZpbmQgYW4gaW5jbHVk
ZSBkaXJlY3RpdmUsIGp1c3QgY29tbWVudCBvdXQgdGhlIGNvZGUuCnsgZWNobyAiJGFzX21lOiRM
SU5FTk86IGNoZWNraW5nIGZvciBzdHlsZSBvZiBpbmNsdWRlIHVzZWQgYnkgJGFtX21ha2UiID4m
NQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBzdHlsZSBvZiBpbmNsdWRlIHVzZWQgYnkgJGFt
X21ha2UuLi4gJEVDSE9fQyIgPiY2OyB9CmFtX19pbmNsdWRlPSIjIgphbV9fcXVvdGU9Cl9hbV9y
ZXN1bHQ9bm9uZQojIEZpcnN0IHRyeSBHTlUgbWFrZSBzdHlsZSBpbmNsdWRlLgplY2hvICJpbmNs
dWRlIGNvbmZpbmMiID4gY29uZm1mCiMgV2UgZ3JlcCBvdXQgYEVudGVyaW5nIGRpcmVjdG9yeScg
YW5kIGBMZWF2aW5nIGRpcmVjdG9yeScKIyBtZXNzYWdlcyB3aGljaCBjYW4gb2NjdXIgaWYgYHcn
IGVuZHMgdXAgaW4gTUFLRUZMQUdTLgojIEluIHBhcnRpY3VsYXIgd2UgZG9uJ3QgbG9vayBhdCBg
Xm1ha2U6JyBiZWNhdXNlIEdOVSBtYWtlIG1pZ2h0CiMgYmUgaW52b2tlZCB1bmRlciBzb21lIG90
aGVyIG5hbWUgKHVzdWFsbHkgImdtYWtlIiksIGluIHdoaWNoCiMgY2FzZSBpdCBwcmludHMgaXRz
IG5ldyBuYW1lIGluc3RlYWQgb2YgYG1ha2UnLgppZiB0ZXN0ICJgJGFtX21ha2UgLXMgLWYgY29u
Zm1mIDI+IC9kZXYvbnVsbCB8IGdyZXAgLXYgJ2luZyBkaXJlY3RvcnknYCIgPSAiZG9uZSI7IHRo
ZW4KICAgYW1fX2luY2x1ZGU9aW5jbHVkZQogICBhbV9fcXVvdGU9CiAgIF9hbV9yZXN1bHQ9R05V
CmZpCiMgTm93IHRyeSBCU0QgbWFrZSBzdHlsZSBpbmNsdWRlLgppZiB0ZXN0ICIkYW1fX2luY2x1
ZGUiID0gIiMiOyB0aGVuCiAgIGVjaG8gJy5pbmNsdWRlICJjb25maW5jIicgPiBjb25mbWYKICAg
aWYgdGVzdCAiYCRhbV9tYWtlIC1zIC1mIGNvbmZtZiAyPiAvZGV2L251bGxgIiA9ICJkb25lIjsg
dGhlbgogICAgICBhbV9faW5jbHVkZT0uaW5jbHVkZQogICAgICBhbV9fcXVvdGU9IlwiIgogICAg
ICBfYW1fcmVzdWx0PUJTRAogICBmaQpmaQoKCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3Vs
dDogJF9hbV9yZXN1bHQiID4mNQplY2hvICIke0VDSE9fVH0kX2FtX3Jlc3VsdCIgPiY2OyB9CnJt
IC1mIGNvbmZpbmMgY29uZm1mCgojIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtZGVwZW5kZW5jeS10
cmFja2luZyB3YXMgZ2l2ZW4uCmlmIHRlc3QgIiR7ZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmcr
c2V0fSIgPSBzZXQ7IHRoZW4KICBlbmFibGV2YWw9JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5n
OwpmaQoKaWYgdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIgIT0geG5vOyB0aGVu
CiAgYW1fZGVwY29tcD0iJGFjX2F1eF9kaXIvZGVwY29tcCIKICBBTURFUEJBQ0tTTEFTSD0nXCcK
ZmkKCgppZiB0ZXN0ICJ4JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nIiAhPSB4bm87IHRoZW4K
ICBBTURFUF9UUlVFPQogIEFNREVQX0ZBTFNFPScjJwplbHNlCiAgQU1ERVBfVFJVRT0nIycKICBB
TURFUF9GQUxTRT0KZmkKCgoKCmRlcGNjPSIkQ1hYIiAgYW1fY29tcGlsZXJfbGlzdD0KCnsgZWNo
byAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGRlcGVuZGVuY3kgc3R5bGUgb2YgJGRlcGNjIiA+
JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mICRkZXBjYy4uLiAk
RUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthbV9jdl9DWFhfZGVwZW5kZW5jaWVzX2NvbXBpbGVy
X3R5cGUrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0Mi
ID4mNgplbHNlCiAgaWYgdGVzdCAteiAiJEFNREVQX1RSVUUiICYmIHRlc3QgLWYgIiRhbV9kZXBj
b21wIjsgdGhlbgogICMgV2UgbWFrZSBhIHN1YmRpciBhbmQgZG8gdGhlIHRlc3RzIHRoZXJlLiAg
T3RoZXJ3aXNlIHdlIGNhbiBlbmQgdXAKICAjIG1ha2luZyBib2d1cyBmaWxlcyB0aGF0IHdlIGRv
bid0IGtub3cgYWJvdXQgYW5kIG5ldmVyIHJlbW92ZS4gIEZvcgogICMgaW5zdGFuY2UgaXQgd2Fz
IHJlcG9ydGVkIHRoYXQgb24gSFAtVVggdGhlIGdjYyB0ZXN0IHdpbGwgZW5kIHVwCiAgIyBtYWtp
bmcgYSBkdW1teSBmaWxlIG5hbWVkIGBEJyAtLSBiZWNhdXNlIGAtTUQnIG1lYW5zIGBwdXQgdGhl
IG91dHB1dAogICMgaW4gRCcuCiAgbWtkaXIgY29uZnRlc3QuZGlyCiAgIyBDb3B5IGRlcGNvbXAg
dG8gc3ViZGlyIGJlY2F1c2Ugb3RoZXJ3aXNlIHdlIHdvbid0IGZpbmQgaXQgaWYgd2UncmUKICAj
IHVzaW5nIGEgcmVsYXRpdmUgZGlyZWN0b3J5LgogIGNwICIkYW1fZGVwY29tcCIgY29uZnRlc3Qu
ZGlyCiAgY2QgY29uZnRlc3QuZGlyCiAgIyBXZSB3aWxsIGJ1aWxkIG9iamVjdHMgYW5kIGRlcGVu
ZGVuY2llcyBpbiBhIHN1YmRpcmVjdG9yeSBiZWNhdXNlCiAgIyBpdCBoZWxwcyB0byBkZXRlY3Qg
aW5hcHBsaWNhYmxlIGRlcGVuZGVuY3kgbW9kZXMuICBGb3IgaW5zdGFuY2UKICAjIGJvdGggVHJ1
NjQncyBjYyBhbmQgSUNDIHN1cHBvcnQgLU1EIHRvIG91dHB1dCBkZXBlbmRlbmNpZXMgYXMgYQog
ICMgc2lkZSBlZmZlY3Qgb2YgY29tcGlsYXRpb24sIGJ1dCBJQ0Mgd2lsbCBwdXQgdGhlIGRlcGVu
ZGVuY2llcyBpbgogICMgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoaWxlIFRydTY0IHdpbGwgcHV0
IHRoZW0gaW4gdGhlIG9iamVjdAogICMgZGlyZWN0b3J5LgogIG1rZGlyIHN1YgoKICBhbV9jdl9D
WFhfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9bm9uZQogIGlmIHRlc3QgIiRhbV9jb21waWxl
cl9saXN0IiA9ICIiOyB0aGVuCiAgICAgYW1fY29tcGlsZXJfbGlzdD1gc2VkIC1uICdzL14jKlwo
W2EtekEtWjAtOV0qXCkpJC9cMS9wJyA8IC4vZGVwY29tcGAKICBmaQogIGZvciBkZXBtb2RlIGlu
ICRhbV9jb21waWxlcl9saXN0OyBkbwogICAgIyBTZXR1cCBhIHNvdXJjZSB3aXRoIG1hbnkgZGVw
ZW5kZW5jaWVzLCBiZWNhdXNlIHNvbWUgY29tcGlsZXJzCiAgICAjIGxpa2UgdG8gd3JhcCBsYXJn
ZSBkZXBlbmRlbmN5IGxpc3RzIG9uIGNvbHVtbiA4MCAod2l0aCBcKSwgYW5kCiAgICAjIHdlIHNo
b3VsZCBub3QgY2hvb3NlIGEgZGVwY29tcCBtb2RlIHdoaWNoIGlzIGNvbmZ1c2VkIGJ5IHRoaXMu
CiAgICAjCiAgICAjIFdlIG5lZWQgdG8gcmVjcmVhdGUgdGhlc2UgZmlsZXMgZm9yIGVhY2ggdGVz
dCwgYXMgdGhlIGNvbXBpbGVyIG1heQogICAgIyBvdmVyd3JpdGUgc29tZSBvZiB0aGVtIHdoZW4g
dGVzdGluZyB3aXRoIG9ic2N1cmUgY29tbWFuZCBsaW5lcy4KICAgICMgVGhpcyBoYXBwZW5zIGF0
IGxlYXN0IHdpdGggdGhlIEFJWCBDIGNvbXBpbGVyLgogICAgOiA+IHN1Yi9jb25mdGVzdC5jCiAg
ICBmb3IgaSBpbiAxIDIgMyA0IDUgNjsgZG8KICAgICAgZWNobyAnI2luY2x1ZGUgImNvbmZ0c3Qn
JGknLmgiJyA+PiBzdWIvY29uZnRlc3QuYwogICAgICAjIFVzaW5nIGA6ID4gc3ViL2NvbmZ0c3Qk
aS5oJyBjcmVhdGVzIG9ubHkgc3ViL2NvbmZ0c3QxLmggd2l0aAogICAgICAjIFNvbGFyaXMgOCdz
IHsvdXNyLH0vYmluL3NoLgogICAgICB0b3VjaCBzdWIvY29uZnRzdCRpLmgKICAgIGRvbmUKICAg
IGVjaG8gIiR7YW1fX2luY2x1ZGV9ICR7YW1fX3F1b3RlfXN1Yi9jb25mdGVzdC5QbyR7YW1fX3F1
b3RlfSIgPiBjb25mbWYKCiAgICBjYXNlICRkZXBtb2RlIGluCiAgICBub3NpZGVlZmZlY3QpCiAg
ICAgICMgYWZ0ZXIgdGhpcyB0YWcsIG1lY2hhbmlzbXMgYXJlIG5vdCBieSBzaWRlLWVmZmVjdCwg
c28gdGhleSdsbAogICAgICAjIG9ubHkgYmUgdXNlZCB3aGVuIGV4cGxpY2l0bHkgcmVxdWVzdGVk
CiAgICAgIGlmIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciID0geHllczsgdGhl
bgoJY29udGludWUKICAgICAgZWxzZQoJYnJlYWsKICAgICAgZmkKICAgICAgOzsKICAgIG5vbmUp
IGJyZWFrIDs7CiAgICBlc2FjCiAgICAjIFdlIGNoZWNrIHdpdGggYC1jJyBhbmQgYC1vJyBmb3Ig
dGhlIHNha2Ugb2YgdGhlICJkYXNobXN0ZG91dCIKICAgICMgbW9kZS4gIEl0IHR1cm5zIG91dCB0
aGF0IHRoZSBTdW5Qcm8gQysrIGNvbXBpbGVyIGRvZXMgbm90IHByb3Blcmx5CiAgICAjIGhhbmRs
ZSBgLU0gLW8nLCBhbmQgd2UgbmVlZCB0byBkZXRlY3QgdGhpcy4KICAgIGlmIGRlcG1vZGU9JGRl
cG1vZGUgXAogICAgICAgc291cmNlPXN1Yi9jb25mdGVzdC5jIG9iamVjdD1zdWIvY29uZnRlc3Qu
JHtPQkpFWFQtb30gXAogICAgICAgZGVwZmlsZT1zdWIvY29uZnRlc3QuUG8gdG1wZGVwZmlsZT1z
dWIvY29uZnRlc3QuVFBvIFwKICAgICAgICRTSEVMTCAuL2RlcGNvbXAgJGRlcGNjIC1jIC1vIHN1
Yi9jb25mdGVzdC4ke09CSkVYVC1vfSBzdWIvY29uZnRlc3QuYyBcCiAgICAgICAgID4vZGV2L251
bGwgMj5jb25mdGVzdC5lcnIgJiYKICAgICAgIGdyZXAgc3ViL2NvbmZ0c3Q2Lmggc3ViL2NvbmZ0
ZXN0LlBvID4gL2Rldi9udWxsIDI+JjEgJiYKICAgICAgIGdyZXAgc3ViL2NvbmZ0ZXN0LiR7T0JK
RVhULW99IHN1Yi9jb25mdGVzdC5QbyA+IC9kZXYvbnVsbCAyPiYxICYmCiAgICAgICAke01BS0Ut
bWFrZX0gLXMgLWYgY29uZm1mID4gL2Rldi9udWxsIDI+JjE7IHRoZW4KICAgICAgIyBpY2MgZG9l
c24ndCBjaG9rZSBvbiB1bmtub3duIG9wdGlvbnMsIGl0IHdpbGwganVzdCBpc3N1ZSB3YXJuaW5n
cwogICAgICAjIG9yIHJlbWFya3MgKGV2ZW4gd2l0aCAtV2Vycm9yKS4gIFNvIHdlIGdyZXAgc3Rk
ZXJyIGZvciBhbnkgbWVzc2FnZQogICAgICAjIHRoYXQgc2F5cyBhbiBvcHRpb24gd2FzIGlnbm9y
ZWQgb3Igbm90IHN1cHBvcnRlZC4KICAgICAgIyBXaGVuIGdpdmVuIC1NUCwgaWNjIDcuMCBhbmQg
Ny4xIGNvbXBsYWluIHRodXNseToKICAgICAgIyAgIGljYzogQ29tbWFuZCBsaW5lIHdhcm5pbmc6
IGlnbm9yaW5nIG9wdGlvbiAnLU0nOyBubyBhcmd1bWVudCByZXF1aXJlZAogICAgICAjIFRoZSBk
aWFnbm9zaXMgY2hhbmdlZCBpbiBpY2MgOC4wOgogICAgICAjICAgaWNjOiBDb21tYW5kIGxpbmUg
cmVtYXJrOiBvcHRpb24gJy1NUCcgbm90IHN1cHBvcnRlZAogICAgICBpZiAoZ3JlcCAnaWdub3Jp
bmcgb3B0aW9uJyBjb25mdGVzdC5lcnIgfHwKICAgICAgICAgIGdyZXAgJ25vdCBzdXBwb3J0ZWQn
IGNvbmZ0ZXN0LmVycikgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDo7IGVsc2UKICAgICAgICBhbV9j
dl9DWFhfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9JGRlcG1vZGUKICAgICAgICBicmVhawog
ICAgICBmaQogICAgZmkKICBkb25lCgogIGNkIC4uCiAgcm0gLXJmIGNvbmZ0ZXN0LmRpcgplbHNl
CiAgYW1fY3ZfQ1hYX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPW5vbmUKZmkKCmZpCnsgZWNo
byAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFtX2N2X0NYWF9kZXBlbmRlbmNpZXNfY29tcGls
ZXJfdHlwZSIgPiY1CmVjaG8gIiR7RUNIT19UfSRhbV9jdl9DWFhfZGVwZW5kZW5jaWVzX2NvbXBp
bGVyX3R5cGUiID4mNjsgfQpDWFhERVBNT0RFPWRlcG1vZGU9JGFtX2N2X0NYWF9kZXBlbmRlbmNp
ZXNfY29tcGlsZXJfdHlwZQoKCgppZgogIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tp
bmciICE9IHhubyBcCiAgJiYgdGVzdCAiJGFtX2N2X0NYWF9kZXBlbmRlbmNpZXNfY29tcGlsZXJf
dHlwZSIgPSBnY2MzOyB0aGVuCiAgYW1fX2Zhc3RkZXBDWFhfVFJVRT0KICBhbV9fZmFzdGRlcENY
WF9GQUxTRT0nIycKZWxzZQogIGFtX19mYXN0ZGVwQ1hYX1RSVUU9JyMnCiAgYW1fX2Zhc3RkZXBD
WFhfRkFMU0U9CmZpCgoKYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29tcGls
ZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19saW5r
PSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNv
bmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29tcGls
ZXJfZ251CmlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KICAjIEV4dHJhY3QgdGhl
IGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9Z2NjIiwgc28gaXQgY2FuIGJlIGEgcHJv
Z3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1bW15ICR7YWNfdG9vbF9wcmVmaXh9Z2NjOyBhY193
b3JkPSQyCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1
CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNjsgfQpp
ZiB0ZXN0ICIke2FjX2N2X3Byb2dfQ0Mrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04g
IihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgaWYgdGVzdCAtbiAiJENDIjsgdGhlbgogIGFj
X2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCmVsc2UK
YXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgpmb3IgYXNfZGlyIGluICRQQVRI
CmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAg
Zm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCiAgaWYg
eyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfZXhlY3V0YWJs
ZV9wICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgogICAgYWNfY3ZfcHJv
Z19DQz0iJHthY190b29sX3ByZWZpeH1nY2MiCiAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91
bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CiAgICBicmVhayAyCiAgZmkKZG9u
ZQpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCmZpCmZpCkNDPSRhY19jdl9wcm9nX0NDCmlmIHRlc3Qg
LW4gIiRDQyI7IHRoZW4KICB7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRDQyIgPiY1
CmVjaG8gIiR7RUNIT19UfSRDQyIgPiY2OyB9CmVsc2UKICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiByZXN1bHQ6IG5vIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8iID4mNjsgfQpmaQoKCmZpCmlmIHRl
c3QgLXogIiRhY19jdl9wcm9nX0NDIjsgdGhlbgogIGFjX2N0X0NDPSRDQwogICMgRXh0cmFjdCB0
aGUgZmlyc3Qgd29yZCBvZiAiZ2NjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGgg
YXJncy4Kc2V0IGR1bW15IGdjYzsgYWNfd29yZD0kMgp7IGVjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNf
d29yZC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9wcm9nX2FjX2N0X0NDK3Nl
dH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxz
ZQogIGlmIHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KICBhY19jdl9wcm9nX2FjX2N0X0NDPSIk
YWNfY3RfQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVf
SUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElG
Uz0kYXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19l
eGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAt
ZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFz
X2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfYWNfY3Rf
Q0M9ImdjYyIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3Jk
JGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZl
X0lGUwoKZmkKZmkKYWNfY3RfQ0M9JGFjX2N2X3Byb2dfYWNfY3RfQ0MKaWYgdGVzdCAtbiAiJGFj
X2N0X0NDIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0X0ND
IiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N0X0NDIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZp
CgogIGlmIHRlc3QgIngkYWNfY3RfQ0MiID0geDsgdGhlbgogICAgQ0M9IiIKICBlbHNlCiAgICBj
YXNlICRjcm9zc19jb21waWxpbmc6JGFjX3Rvb2xfd2FybmVkIGluCnllczopCnsgZWNobyAiJGFz
X21lOiRMSU5FTk86IFdBUk5JTkc6IEluIHRoZSBmdXR1cmUsIEF1dG9jb25mIHdpbGwgbm90IGRl
dGVjdCBjcm9zcy10b29scwp3aG9zZSBuYW1lIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhlIGhvc3Qg
dHJpcGxldC4gIElmIHlvdSB0aGluayB0aGlzCmNvbmZpZ3VyYXRpb24gaXMgdXNlZnVsIHRvIHlv
dSwgcGxlYXNlIHdyaXRlIHRvIGF1dG9jb25mQGdudS5vcmcuIiA+JjUKZWNobyAiJGFzX21lOiBX
QVJOSU5HOiBJbiB0aGUgZnV0dXJlLCBBdXRvY29uZiB3aWxsIG5vdCBkZXRlY3QgY3Jvc3MtdG9v
bHMKd2hvc2UgbmFtZSBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBob3N0IHRyaXBsZXQuICBJZiB5
b3UgdGhpbmsgdGhpcwpjb25maWd1cmF0aW9uIGlzIHVzZWZ1bCB0byB5b3UsIHBsZWFzZSB3cml0
ZSB0byBhdXRvY29uZkBnbnUub3JnLiIgPiYyO30KYWNfdG9vbF93YXJuZWQ9eWVzIDs7CmVzYWMK
ICAgIENDPSRhY19jdF9DQwogIGZpCmVsc2UKICBDQz0iJGFjX2N2X3Byb2dfQ0MiCmZpCgppZiB0
ZXN0IC16ICIkQ0MiOyB0aGVuCiAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgi
OyB0aGVuCiAgICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9
Y2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQgZHVtbXkgJHth
Y190b29sX3ByZWZpeH1jYzsgYWNfd29yZD0kMgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNfd29y
ZC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9wcm9nX0NDK3NldH0iID0gc2V0
OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlmIHRl
c3QgLW4gIiRDQyI7IHRoZW4KICBhY19jdl9wcm9nX0NDPSIkQ0MiICMgTGV0IHRoZSB1c2VyIG92
ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFU
T1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIk
YXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJs
ZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVj
X2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7
IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfQ0M9IiR7YWNfdG9vbF9wcmVmaXh9Y2MiCiAgICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1
CiAgICBicmVhayAyCiAgZmkKZG9uZQpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCmZpCmZpCkNDPSRh
Y19jdl9wcm9nX0NDCmlmIHRlc3QgLW4gIiRDQyI7IHRoZW4KICB7IGVjaG8gIiRhc19tZTokTElO
RU5POiByZXN1bHQ6ICRDQyIgPiY1CmVjaG8gIiR7RUNIT19UfSRDQyIgPiY2OyB9CmVsc2UKICB7
IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IG5vIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8i
ID4mNjsgfQpmaQoKCiAgZmkKZmkKaWYgdGVzdCAteiAiJENDIjsgdGhlbgogICMgRXh0cmFjdCB0
aGUgZmlyc3Qgd29yZCBvZiAiY2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBh
cmdzLgpzZXQgZHVtbXkgY2M7IGFjX3dvcmQ9JDIKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hl
Y2tpbmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dv
cmQuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19DQytzZXR9IiA9IHNl
dDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBpZiB0
ZXN0IC1uICIkQ0MiOyB0aGVuCiAgYWNfY3ZfcHJvZ19DQz0iJENDIiAjIExldCB0aGUgdXNlciBv
dmVycmlkZSB0aGUgdGVzdC4KZWxzZQogIGFjX3Byb2dfcmVqZWN0ZWQ9bm8KYXNfc2F2ZV9JRlM9
JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgpmb3IgYXNfZGlyIGluICRQQVRICmRvCiAgSUZTPSRh
c19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAgZm9yIGFjX2V4ZWNf
ZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCiAgaWYgeyB0ZXN0IC1mICIk
YXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGly
LyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgogICAgaWYgdGVzdCAiJGFzX2Rpci8kYWNf
d29yZCRhY19leGVjX2V4dCIgPSAiL3Vzci91Y2IvY2MiOyB0aGVuCiAgICAgICBhY19wcm9nX3Jl
amVjdGVkPXllcwogICAgICAgY29udGludWUKICAgICBmaQogICAgYWNfY3ZfcHJvZ19DQz0iY2Mi
CiAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVj
X2V4dCIgPiY1CiAgICBicmVhayAyCiAgZmkKZG9uZQpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCmlm
IHRlc3QgJGFjX3Byb2dfcmVqZWN0ZWQgPSB5ZXM7IHRoZW4KICAjIFdlIGZvdW5kIGEgYm9nb24g
aW4gdGhlIHBhdGgsIHNvIG1ha2Ugc3VyZSB3ZSBuZXZlciB1c2UgaXQuCiAgc2V0IGR1bW15ICRh
Y19jdl9wcm9nX0NDCiAgc2hpZnQKICBpZiB0ZXN0ICQjICE9IDA7IHRoZW4KICAgICMgV2UgY2hv
c2UgYSBkaWZmZXJlbnQgY29tcGlsZXIgZnJvbSB0aGUgYm9ndXMgb25lLgogICAgIyBIb3dldmVy
LCBpdCBoYXMgdGhlIHNhbWUgYmFzZW5hbWUsIHNvIHRoZSBib2dvbiB3aWxsIGJlIGNob3Nlbgog
ICAgIyBmaXJzdCBpZiB3ZSBzZXQgQ0MgdG8ganVzdCB0aGUgYmFzZW5hbWU7IHVzZSB0aGUgZnVs
bCBmaWxlIG5hbWUuCiAgICBzaGlmdAogICAgYWNfY3ZfcHJvZ19DQz0iJGFzX2Rpci8kYWNfd29y
ZCR7MSsnICd9JEAiCiAgZmkKZmkKZmkKZmkKQ0M9JGFjX2N2X3Byb2dfQ0MKaWYgdGVzdCAtbiAi
JENDIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJENDIiA+JjUKZWNo
byAiJHtFQ0hPX1R9JENDIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZpCgoKZmkKaWYgdGVzdCAt
eiAiJENDIjsgdGhlbgogIGlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KICBmb3Ig
YWNfcHJvZyBpbiBjbC5leGUKICBkbwogICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIk
YWNfdG9vbF9wcmVmaXgkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRo
IGFyZ3MuCnNldCBkdW1teSAkYWNfdG9vbF9wcmVmaXgkYWNfcHJvZzsgYWNfd29yZD0kMgp7IGVj
aG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hP
X04gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHth
Y19jdl9wcm9nX0NDK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAk
RUNIT19DIiA+JjYKZWxzZQogIGlmIHRlc3QgLW4gIiRDQyI7IHRoZW4KICBhY19jdl9wcm9nX0ND
PSIkQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZT
PSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0k
YXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVj
X2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAi
JGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rp
ci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfQ0M9IiRhY190
b29sX3ByZWZpeCRhY19wcm9nIgogICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGZvdW5kICRhc19k
aXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQogICAgYnJlYWsgMgogIGZpCmRvbmUKZG9uZQpJ
RlM9JGFzX3NhdmVfSUZTCgpmaQpmaQpDQz0kYWNfY3ZfcHJvZ19DQwppZiB0ZXN0IC1uICIkQ0Mi
OyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkQ0MiID4mNQplY2hvICIk
e0VDSE9fVH0kQ0MiID4mNjsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0KZmkKCgogICAgdGVzdCAtbiAiJEND
IiAmJiBicmVhawogIGRvbmUKZmkKaWYgdGVzdCAteiAiJENDIjsgdGhlbgogIGFjX2N0X0NDPSRD
QwogIGZvciBhY19wcm9nIGluIGNsLmV4ZQpkbwogICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBv
ZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQg
ZHVtbXkgJGFjX3Byb2c7IGFjX3dvcmQ9JDIKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tp
bmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQu
Li4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19hY19jdF9DQytzZXR9IiA9
IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBp
ZiB0ZXN0IC1uICIkYWNfY3RfQ0MiOyB0aGVuCiAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iJGFjX2N0
X0NDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KZWxzZQphc19zYXZlX0lGUz0k
SUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFz
X3NhdmVfSUZTCiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgYWNfZXhlY19l
eHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KICBpZiB7IHRlc3QgLWYgIiRh
c19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIv
JGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCiAgICBhY19jdl9wcm9nX2FjX2N0X0NDPSIk
YWNfcHJvZyIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3Jk
JGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZl
X0lGUwoKZmkKZmkKYWNfY3RfQ0M9JGFjX2N2X3Byb2dfYWNfY3RfQ0MKaWYgdGVzdCAtbiAiJGFj
X2N0X0NDIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0X0ND
IiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N0X0NDIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZp
CgoKICB0ZXN0IC1uICIkYWNfY3RfQ0MiICYmIGJyZWFrCmRvbmUKCiAgaWYgdGVzdCAieCRhY19j
dF9DQyIgPSB4OyB0aGVuCiAgICBDQz0iIgogIGVsc2UKICAgIGNhc2UgJGNyb3NzX2NvbXBpbGlu
ZzokYWNfdG9vbF93YXJuZWQgaW4KeWVzOikKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklO
RzogSW4gdGhlIGZ1dHVyZSwgQXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNyb3NzLXRvb2xzCndo
b3NlIG5hbWUgZG9lcyBub3Qgc3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAgSWYgeW91IHRo
aW5rIHRoaXMKY29uZmlndXJhdGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVhc2Ugd3JpdGUgdG8g
YXV0b2NvbmZAZ251Lm9yZy4iID4mNQplY2hvICIkYXNfbWU6IFdBUk5JTkc6IEluIHRoZSBmdXR1
cmUsIEF1dG9jb25mIHdpbGwgbm90IGRldGVjdCBjcm9zcy10b29scwp3aG9zZSBuYW1lIGRvZXMg
bm90IHN0YXJ0IHdpdGggdGhlIGhvc3QgdHJpcGxldC4gIElmIHlvdSB0aGluayB0aGlzCmNvbmZp
Z3VyYXRpb24gaXMgdXNlZnVsIHRvIHlvdSwgcGxlYXNlIHdyaXRlIHRvIGF1dG9jb25mQGdudS5v
cmcuIiA+JjI7fQphY190b29sX3dhcm5lZD15ZXMgOzsKZXNhYwogICAgQ0M9JGFjX2N0X0NDCiAg
ZmkKZmkKCmZpCgoKdGVzdCAteiAiJENDIiAmJiB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVy
cm9yOiBubyBhY2NlcHRhYmxlIEMgY29tcGlsZXIgZm91bmQgaW4gXCRQQVRIClNlZSBcYGNvbmZp
Zy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjogbm8gYWNj
ZXB0YWJsZSBDIGNvbXBpbGVyIGZvdW5kIGluIFwkUEFUSApTZWUgXGBjb25maWcubG9nJyBmb3Ig
bW9yZSBkZXRhaWxzLiIgPiYyO30KICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CgojIFByb3Zp
ZGUgc29tZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29tcGlsZXIuCmVjaG8gIiRhc19tZTokTElO
RU5POiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJzaW9uIiA+JjUKYWNfY29tcGlsZXI9YHNl
dCBYICRhY19jb21waWxlOyBlY2hvICQyYAp7IChhY190cnk9IiRhY19jb21waWxlciAtLXZlcnNp
b24gPiY1IgpjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlf
ZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNo
byBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2Nv
bXBpbGVyIC0tdmVyc2lvbiA+JjUiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9Cnsg
KGFjX3RyeT0iJGFjX2NvbXBpbGVyIC12ID4mNSIKY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiog
fCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRh
Y190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wi
IikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlciAtdiA+JjUiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/
CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRh
Y19zdGF0dXMpOyB9CnsgKGFjX3RyeT0iJGFjX2NvbXBpbGVyIC1WID4mNSIKY2FzZSAiKCgkYWNf
dHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICop
IGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86
ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlciAtViA+JjUiKSAyPiY1
CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9Cgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgY29tcGlsZXIiID4mNQplY2hvICRF
Q0hPX04gImNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBjb21waWxlci4u
LiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9jX2NvbXBpbGVyX2dudStzZXR9IiA9
IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBj
YXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9BQ0VPRgpj
YXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8
PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCgppbnQKbWFpbiAoKQp7CiNpZm5kZWYgX19H
TlVDX18KICAgICAgIGNob2tlIG1lCiNlbmRpZgoKICA7CiAgcmV0dXJuIDA7Cn0KX0FDRU9GCnJt
IC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKaWYgeyAoYWNfdHJ5PSIkYWNfY29tcGlsZSIKY2FzZSAi
KCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7
OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRM
SU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlIikgMj5jb25m
dGVzdC5lcjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNv
bmZ0ZXN0LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQogIGNhdCBjb25mdGVzdC5lcnIgPiY1CiAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19z
dGF0dXMpOyB9ICYmCgkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwg
KlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNf
dHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIp
ID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsg
fSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAi
KCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7
OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRM
SU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNf
c3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQog
IChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgYWNfY29tcGlsZXJfZ251PXllcwplbHNl
CiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2VkICdzL14vfCAvJyBj
b25mdGVzdC4kYWNfZXh0ID4mNQoKCWFjX2NvbXBpbGVyX2dudT1ubwpmaQoKcm0gLWYgY29yZSBj
b25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CmFjX2N2X2Nf
Y29tcGlsZXJfZ251PSRhY19jb21waWxlcl9nbnUKCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86
IHJlc3VsdDogJGFjX2N2X2NfY29tcGlsZXJfZ251IiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N2
X2NfY29tcGlsZXJfZ251IiA+JjY7IH0KR0NDPWB0ZXN0ICRhY19jb21waWxlcl9nbnUgPSB5ZXMg
JiYgZWNobyB5ZXNgCmFjX3Rlc3RfQ0ZMQUdTPSR7Q0ZMQUdTK3NldH0KYWNfc2F2ZV9DRkxBR1M9
JENGTEFHUwp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVyICRDQyBhY2Nl
cHRzIC1nIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyICRDQyBhY2NlcHRzIC1n
Li4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfY2NfZytzZXR9IiA9IHNl
dDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBhY19z
YXZlX2Nfd2Vycm9yX2ZsYWc9JGFjX2Nfd2Vycm9yX2ZsYWcKICAgYWNfY193ZXJyb3JfZmxhZz15
ZXMKICAgYWNfY3ZfcHJvZ19jY19nPW5vCiAgIENGTEFHUz0iLWciCiAgIGNhdCA+Y29uZnRlc3Qu
JGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5o
ID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KCmludAptYWluICgpCnsKCiAgOwogIHJldHVybiAwOwp9Cl9BQ0VP
RgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CmlmIHsgKGFjX3RyeT0iJGFjX2NvbXBpbGUiCmNh
c2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNf
dHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19t
ZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY29tcGlsZSIpIDI+
Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIx
ID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVzdC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4m
NQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAk
YWNfc3RhdHVzKTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKICB7IChjYXNlICIoKCRhY190cnkiIGluCiAgKlwi
KiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89
JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hv
XCIiKSA+JjUKICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKICBhY19zdGF0dXM9JD8KICBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7
IH07IH0gJiYKCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JwogIHsgKGNh
c2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNf
dHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19t
ZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQog
IGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogIGFjX2N2X3Byb2dfY2NfZz15ZXMK
ZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9eL3wg
LycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCglDRkxBR1M9IiIKICAgICAgY2F0ID5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpfQUNFT0YKY2F0IGNvbmZkZWZzLmgg
Pj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogZW5k
IGNvbmZkZWZzLmguICAqLwoKaW50Cm1haW4gKCkKewoKICA7CiAgcmV0dXJuIDA7Cn0KX0FDRU9G
CnJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKaWYgeyAoYWNfdHJ5PSIkYWNfY29tcGlsZSIKY2Fz
ZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190
cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21l
OiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlIikgMj5j
b25mdGVzdC5lcjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEg
PmNvbmZ0ZXN0LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQogIGNhdCBjb25mdGVzdC5lcnIgPiY1
CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRh
Y19zdGF0dXMpOyB9ICYmCgkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8
fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIq
IHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0k
YWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9c
IiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRh
c19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsg
fTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2Fz
ZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190
cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21l
OiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAg
YWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgOgplbHNlCiAgZWNobyAiJGFzX21l
OiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0
ID4mNQoKCWFjX2Nfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY193ZXJyb3JfZmxhZwoJIENGTEFHUz0i
LWciCgkgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpf
QUNFT0YKY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRh
Y19leHQgPDxfQUNFT0YKLyogZW5kIGNvbmZkZWZzLmguICAqLwoKaW50Cm1haW4gKCkKewoKICA7
CiAgcmV0dXJuIDA7Cn0KX0FDRU9GCnJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKaWYgeyAoYWNf
dHJ5PSIkYWNfY29tcGlsZSIKY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxc
KikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2Fj
CmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2
YWwgIiRhY19jb21waWxlIikgMj5jb25mdGVzdC5lcjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12
ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQog
IGNhdCBjb25mdGVzdC5lcnIgPiY1CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCgkgeyBhY190cnk9J3Rlc3QgLXog
IiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2Ug
IigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5
OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTok
TElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFj
X3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
ICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0
LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxc
KikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2Fj
CmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2
YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAg
YWNfY3ZfcHJvZ19jY19nPXllcwplbHNlCiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3
YXM6IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQoKCmZpCgpybSAtZiBj
b3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKZmkK
CnJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFj
X2V4dApmaQoKcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdC4kYWNfZXh0CiAgIGFjX2Nfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY193ZXJyb3JfZmxhZwpm
aQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9wcm9nX2NjX2ciID4mNQpl
Y2hvICIke0VDSE9fVH0kYWNfY3ZfcHJvZ19jY19nIiA+JjY7IH0KaWYgdGVzdCAiJGFjX3Rlc3Rf
Q0ZMQUdTIiA9IHNldDsgdGhlbgogIENGTEFHUz0kYWNfc2F2ZV9DRkxBR1MKZWxpZiB0ZXN0ICRh
Y19jdl9wcm9nX2NjX2cgPSB5ZXM7IHRoZW4KICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgog
ICAgQ0ZMQUdTPSItZyAtTzIiCiAgZWxzZQogICAgQ0ZMQUdTPSItZyIKICBmaQplbHNlCiAgaWYg
dGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KICAgIENGTEFHUz0iLU8yIgogIGVsc2UKICAgIENGTEFH
Uz0KICBmaQpmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJENDIG9wdGlv
biB0byBhY2NlcHQgSVNPIEM4OSIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRDQyBv
cHRpb24gdG8gYWNjZXB0IElTTyBDODkuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNf
Y3ZfcHJvZ19jY19jODkrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQp
ICRFQ0hPX0MiID4mNgplbHNlCiAgYWNfY3ZfcHJvZ19jY19jODk9bm8KYWNfc2F2ZV9DQz0kQ0MK
Y2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpfQUNFT0YK
Y2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRhY19leHQg
PDxfQUNFT0YKLyogZW5kIGNvbmZkZWZzLmguICAqLwojaW5jbHVkZSA8c3RkYXJnLmg+CiNpbmNs
dWRlIDxzdGRpby5oPgojaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiNpbmNsdWRlIDxzeXMvc3RhdC5o
PgovKiBNb3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVzdHMgYXJlIHN0b2xlbiBmcm9tIFJDUyA1Ljcn
cyBzcmMvY29uZi5zaC4gICovCnN0cnVjdCBidWYgeyBpbnQgeDsgfTsKRklMRSAqICgqcmNzb3Bl
bikgKHN0cnVjdCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KTsKc3RhdGljIGNoYXIgKmUgKHAs
IGkpCiAgICAgY2hhciAqKnA7CiAgICAgaW50IGk7CnsKICByZXR1cm4gcFtpXTsKfQpzdGF0aWMg
Y2hhciAqZiAoY2hhciAqICgqZykgKGNoYXIgKiosIGludCksIGNoYXIgKipwLCAuLi4pCnsKICBj
aGFyICpzOwogIHZhX2xpc3QgdjsKICB2YV9zdGFydCAodixwKTsKICBzID0gZyAocCwgdmFfYXJn
ICh2LGludCkpOwogIHZhX2VuZCAodik7CiAgcmV0dXJuIHM7Cn0KCi8qIE9TRiA0LjAgQ29tcGFx
IGNjIGlzIHNvbWUgc29ydCBvZiBhbG1vc3QtQU5TSSBieSBkZWZhdWx0LiAgSXQgaGFzCiAgIGZ1
bmN0aW9uIHByb3RvdHlwZXMgYW5kIHN0dWZmLCBidXQgbm90ICdceEhIJyBoZXggY2hhcmFjdGVy
IGNvbnN0YW50cy4KICAgVGhlc2UgZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1bmZvcnR1bmF0ZWx5
LCBpbnN0ZWFkIGFyZSBzaWxlbnRseSB0cmVhdGVkCiAgIGFzICd4Jy4gIFRoZSBmb2xsb3dpbmcg
aW5kdWNlcyBhbiBlcnJvciwgdW50aWwgLXN0ZCBpcyBhZGRlZCB0byBnZXQKICAgcHJvcGVyIEFO
U0kgbW9kZS4gIEN1cmlvdXNseSAnXHgwMCchPSd4JyBhbHdheXMgY29tZXMgb3V0IHRydWUsIGZv
ciBhbgogICBhcnJheSBzaXplIGF0IGxlYXN0LiAgSXQncyBuZWNlc3NhcnkgdG8gd3JpdGUgJ1x4
MDAnPT0wIHRvIGdldCBzb21ldGhpbmcKICAgdGhhdCdzIHRydWUgb25seSB3aXRoIC1zdGQuICAq
LwppbnQgb3NmNF9jY19hcnJheSBbJ1x4MDAnID09IDAgPyAxIDogLTFdOwoKLyogSUJNIEMgNiBm
b3IgQUlYIGlzIGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQsIGJ1dCBpdCByZXBsYWNlcyBtYWNybyBw
YXJhbWV0ZXJzCiAgIGluc2lkZSBzdHJpbmdzIGFuZCBjaGFyYWN0ZXIgY29uc3RhbnRzLiAgKi8K
I2RlZmluZSBGT08oeCkgJ3gnCmludCB4bGM2X2NjX2FycmF5W0ZPTyhhKSA9PSAneCcgPyAxIDog
LTFdOwoKaW50IHRlc3QgKGludCBpLCBkb3VibGUgeCk7CnN0cnVjdCBzMSB7aW50ICgqZikgKGlu
dCBhKTt9OwpzdHJ1Y3QgczIge2ludCAoKmYpIChkb3VibGUgYSk7fTsKaW50IHBhaXJuYW1lcyAo
aW50LCBjaGFyICoqLCBGSUxFICooKikoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQp
LCBpbnQsIGludCk7CmludCBhcmdjOwpjaGFyICoqYXJndjsKaW50Cm1haW4gKCkKewpyZXR1cm4g
ZiAoZSwgYXJndiwgMCkgIT0gYXJndlswXSAgfHwgIGYgKGUsIGFyZ3YsIDEpICE9IGFyZ3ZbMV07
CiAgOwogIHJldHVybiAwOwp9Cl9BQ0VPRgpmb3IgYWNfYXJnIGluICcnIC1xbGFuZ2x2bD1leHRj
ODkgLXFsYW5nbHZsPWFuc2kgLXN0ZCBcCgktQWUgIi1BYSAtRF9IUFVYX1NPVVJDRSIgIi1YYyAt
RF9fRVhURU5TSU9OU19fIgpkbwogIENDPSIkYWNfc2F2ZV9DQyAkYWNfYXJnIgogIHJtIC1mIGNv
bmZ0ZXN0LiRhY19vYmpleHQKaWYgeyAoYWNfdHJ5PSIkYWNfY29tcGlsZSIKY2FzZSAiKCgkYWNf
dHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICop
IGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86
ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlIikgMj5jb25mdGVzdC5l
cjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0
LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQogIGNhdCBjb25mdGVzdC5lcnIgPiY1CiAgZWNobyAi
JGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMp
OyB9ICYmCgkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8
ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsK
ZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQog
IChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJ
IHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNf
dHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICop
IGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86
ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVz
PSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0
ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgYWNfY3ZfcHJvZ19jY19jODk9JGFjX2FyZwplbHNl
CiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2VkICdzL14vfCAvJyBj
b25mdGVzdC4kYWNfZXh0ID4mNQoKCmZpCgpybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVz
dC4kYWNfb2JqZXh0CiAgdGVzdCAieCRhY19jdl9wcm9nX2NjX2M4OSIgIT0gInhubyIgJiYgYnJl
YWsKZG9uZQpybSAtZiBjb25mdGVzdC4kYWNfZXh0CkNDPSRhY19zYXZlX0NDCgpmaQojIEFDX0NB
Q0hFX1ZBTApjYXNlICJ4JGFjX2N2X3Byb2dfY2NfYzg5IiBpbgogIHgpCiAgICB7IGVjaG8gIiRh
c19tZTokTElORU5POiByZXN1bHQ6IG5vbmUgbmVlZGVkIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm9u
ZSBuZWVkZWQiID4mNjsgfSA7OwogIHhubykKICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogdW5zdXBwb3J0ZWQiID4mNQplY2hvICIke0VDSE9fVH11bnN1cHBvcnRlZCIgPiY2OyB9
IDs7CiAgKikKICAgIENDPSIkQ0MgJGFjX2N2X3Byb2dfY2NfYzg5IgogICAgeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfcHJvZ19jY19jODkiID4mNQplY2hvICIke0VDSE9f
VH0kYWNfY3ZfcHJvZ19jY19jODkiID4mNjsgfSA7Owplc2FjCgoKYWNfZXh0PWMKYWNfY3BwPSck
Q1BQICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0
ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxB
R1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21w
aWxlcl9nbnU9JGFjX2N2X2NfY29tcGlsZXJfZ251CgpkZXBjYz0iJENDIiAgIGFtX2NvbXBpbGVy
X2xpc3Q9Cgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxl
IG9mICRkZXBjYyIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBv
ZiAkZGVwY2MuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YW1fY3ZfQ0NfZGVwZW5kZW5j
aWVzX2NvbXBpbGVyX3R5cGUrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNo
ZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgaWYgdGVzdCAteiAiJEFNREVQX1RSVUUiICYmIHRlc3Qg
LWYgIiRhbV9kZXBjb21wIjsgdGhlbgogICMgV2UgbWFrZSBhIHN1YmRpciBhbmQgZG8gdGhlIHRl
c3RzIHRoZXJlLiAgT3RoZXJ3aXNlIHdlIGNhbiBlbmQgdXAKICAjIG1ha2luZyBib2d1cyBmaWxl
cyB0aGF0IHdlIGRvbid0IGtub3cgYWJvdXQgYW5kIG5ldmVyIHJlbW92ZS4gIEZvcgogICMgaW5z
dGFuY2UgaXQgd2FzIHJlcG9ydGVkIHRoYXQgb24gSFAtVVggdGhlIGdjYyB0ZXN0IHdpbGwgZW5k
IHVwCiAgIyBtYWtpbmcgYSBkdW1teSBmaWxlIG5hbWVkIGBEJyAtLSBiZWNhdXNlIGAtTUQnIG1l
YW5zIGBwdXQgdGhlIG91dHB1dAogICMgaW4gRCcuCiAgbWtkaXIgY29uZnRlc3QuZGlyCiAgIyBD
b3B5IGRlcGNvbXAgdG8gc3ViZGlyIGJlY2F1c2Ugb3RoZXJ3aXNlIHdlIHdvbid0IGZpbmQgaXQg
aWYgd2UncmUKICAjIHVzaW5nIGEgcmVsYXRpdmUgZGlyZWN0b3J5LgogIGNwICIkYW1fZGVwY29t
cCIgY29uZnRlc3QuZGlyCiAgY2QgY29uZnRlc3QuZGlyCiAgIyBXZSB3aWxsIGJ1aWxkIG9iamVj
dHMgYW5kIGRlcGVuZGVuY2llcyBpbiBhIHN1YmRpcmVjdG9yeSBiZWNhdXNlCiAgIyBpdCBoZWxw
cyB0byBkZXRlY3QgaW5hcHBsaWNhYmxlIGRlcGVuZGVuY3kgbW9kZXMuICBGb3IgaW5zdGFuY2UK
ICAjIGJvdGggVHJ1NjQncyBjYyBhbmQgSUNDIHN1cHBvcnQgLU1EIHRvIG91dHB1dCBkZXBlbmRl
bmNpZXMgYXMgYQogICMgc2lkZSBlZmZlY3Qgb2YgY29tcGlsYXRpb24sIGJ1dCBJQ0Mgd2lsbCBw
dXQgdGhlIGRlcGVuZGVuY2llcyBpbgogICMgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoaWxlIFRy
dTY0IHdpbGwgcHV0IHRoZW0gaW4gdGhlIG9iamVjdAogICMgZGlyZWN0b3J5LgogIG1rZGlyIHN1
YgoKICBhbV9jdl9DQ19kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1ub25lCiAgaWYgdGVzdCAi
JGFtX2NvbXBpbGVyX2xpc3QiID0gIiI7IHRoZW4KICAgICBhbV9jb21waWxlcl9saXN0PWBzZWQg
LW4gJ3MvXiMqXChbYS16QS1aMC05XSpcKSkkL1wxL3AnIDwgLi9kZXBjb21wYAogIGZpCiAgZm9y
IGRlcG1vZGUgaW4gJGFtX2NvbXBpbGVyX2xpc3Q7IGRvCiAgICAjIFNldHVwIGEgc291cmNlIHdp
dGggbWFueSBkZXBlbmRlbmNpZXMsIGJlY2F1c2Ugc29tZSBjb21waWxlcnMKICAgICMgbGlrZSB0
byB3cmFwIGxhcmdlIGRlcGVuZGVuY3kgbGlzdHMgb24gY29sdW1uIDgwICh3aXRoIFwpLCBhbmQK
ICAgICMgd2Ugc2hvdWxkIG5vdCBjaG9vc2UgYSBkZXBjb21wIG1vZGUgd2hpY2ggaXMgY29uZnVz
ZWQgYnkgdGhpcy4KICAgICMKICAgICMgV2UgbmVlZCB0byByZWNyZWF0ZSB0aGVzZSBmaWxlcyBm
b3IgZWFjaCB0ZXN0LCBhcyB0aGUgY29tcGlsZXIgbWF5CiAgICAjIG92ZXJ3cml0ZSBzb21lIG9m
IHRoZW0gd2hlbiB0ZXN0aW5nIHdpdGggb2JzY3VyZSBjb21tYW5kIGxpbmVzLgogICAgIyBUaGlz
IGhhcHBlbnMgYXQgbGVhc3Qgd2l0aCB0aGUgQUlYIEMgY29tcGlsZXIuCiAgICA6ID4gc3ViL2Nv
bmZ0ZXN0LmMKICAgIGZvciBpIGluIDEgMiAzIDQgNSA2OyBkbwogICAgICBlY2hvICcjaW5jbHVk
ZSAiY29uZnRzdCckaScuaCInID4+IHN1Yi9jb25mdGVzdC5jCiAgICAgICMgVXNpbmcgYDogPiBz
dWIvY29uZnRzdCRpLmgnIGNyZWF0ZXMgb25seSBzdWIvY29uZnRzdDEuaCB3aXRoCiAgICAgICMg
U29sYXJpcyA4J3Mgey91c3IsfS9iaW4vc2guCiAgICAgIHRvdWNoIHN1Yi9jb25mdHN0JGkuaAog
ICAgZG9uZQogICAgZWNobyAiJHthbV9faW5jbHVkZX0gJHthbV9fcXVvdGV9c3ViL2NvbmZ0ZXN0
LlBvJHthbV9fcXVvdGV9IiA+IGNvbmZtZgoKICAgIGNhc2UgJGRlcG1vZGUgaW4KICAgIG5vc2lk
ZWVmZmVjdCkKICAgICAgIyBhZnRlciB0aGlzIHRhZywgbWVjaGFuaXNtcyBhcmUgbm90IGJ5IHNp
ZGUtZWZmZWN0LCBzbyB0aGV5J2xsCiAgICAgICMgb25seSBiZSB1c2VkIHdoZW4gZXhwbGljaXRs
eSByZXF1ZXN0ZWQKICAgICAgaWYgdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIg
PSB4eWVzOyB0aGVuCgljb250aW51ZQogICAgICBlbHNlCglicmVhawogICAgICBmaQogICAgICA7
OwogICAgbm9uZSkgYnJlYWsgOzsKICAgIGVzYWMKICAgICMgV2UgY2hlY2sgd2l0aCBgLWMnIGFu
ZCBgLW8nIGZvciB0aGUgc2FrZSBvZiB0aGUgImRhc2htc3Rkb3V0IgogICAgIyBtb2RlLiAgSXQg
dHVybnMgb3V0IHRoYXQgdGhlIFN1blBybyBDKysgY29tcGlsZXIgZG9lcyBub3QgcHJvcGVybHkK
ICAgICMgaGFuZGxlIGAtTSAtbycsIGFuZCB3ZSBuZWVkIHRvIGRldGVjdCB0aGlzLgogICAgaWYg
ZGVwbW9kZT0kZGVwbW9kZSBcCiAgICAgICBzb3VyY2U9c3ViL2NvbmZ0ZXN0LmMgb2JqZWN0PXN1
Yi9jb25mdGVzdC4ke09CSkVYVC1vfSBcCiAgICAgICBkZXBmaWxlPXN1Yi9jb25mdGVzdC5QbyB0
bXBkZXBmaWxlPXN1Yi9jb25mdGVzdC5UUG8gXAogICAgICAgJFNIRUxMIC4vZGVwY29tcCAkZGVw
Y2MgLWMgLW8gc3ViL2NvbmZ0ZXN0LiR7T0JKRVhULW99IHN1Yi9jb25mdGVzdC5jIFwKICAgICAg
ICAgPi9kZXYvbnVsbCAyPmNvbmZ0ZXN0LmVyciAmJgogICAgICAgZ3JlcCBzdWIvY29uZnRzdDYu
aCBzdWIvY29uZnRlc3QuUG8gPiAvZGV2L251bGwgMj4mMSAmJgogICAgICAgZ3JlcCBzdWIvY29u
ZnRlc3QuJHtPQkpFWFQtb30gc3ViL2NvbmZ0ZXN0LlBvID4gL2Rldi9udWxsIDI+JjEgJiYKICAg
ICAgICR7TUFLRS1tYWtlfSAtcyAtZiBjb25mbWYgPiAvZGV2L251bGwgMj4mMTsgdGhlbgogICAg
ICAjIGljYyBkb2Vzbid0IGNob2tlIG9uIHVua25vd24gb3B0aW9ucywgaXQgd2lsbCBqdXN0IGlz
c3VlIHdhcm5pbmdzCiAgICAgICMgb3IgcmVtYXJrcyAoZXZlbiB3aXRoIC1XZXJyb3IpLiAgU28g
d2UgZ3JlcCBzdGRlcnIgZm9yIGFueSBtZXNzYWdlCiAgICAgICMgdGhhdCBzYXlzIGFuIG9wdGlv
biB3YXMgaWdub3JlZCBvciBub3Qgc3VwcG9ydGVkLgogICAgICAjIFdoZW4gZ2l2ZW4gLU1QLCBp
Y2MgNy4wIGFuZCA3LjEgY29tcGxhaW4gdGh1c2x5OgogICAgICAjICAgaWNjOiBDb21tYW5kIGxp
bmUgd2FybmluZzogaWdub3Jpbmcgb3B0aW9uICctTSc7IG5vIGFyZ3VtZW50IHJlcXVpcmVkCiAg
ICAgICMgVGhlIGRpYWdub3NpcyBjaGFuZ2VkIGluIGljYyA4LjA6CiAgICAgICMgICBpY2M6IENv
bW1hbmQgbGluZSByZW1hcms6IG9wdGlvbiAnLU1QJyBub3Qgc3VwcG9ydGVkCiAgICAgIGlmIChn
cmVwICdpZ25vcmluZyBvcHRpb24nIGNvbmZ0ZXN0LmVyciB8fAogICAgICAgICAgZ3JlcCAnbm90
IHN1cHBvcnRlZCcgY29uZnRlc3QuZXJyKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOjsgZWxzZQog
ICAgICAgIGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPSRkZXBtb2RlCiAgICAg
ICAgYnJlYWsKICAgICAgZmkKICAgIGZpCiAgZG9uZQoKICBjZCAuLgogIHJtIC1yZiBjb25mdGVz
dC5kaXIKZWxzZQogIGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPW5vbmUKZmkK
CmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFtX2N2X0NDX2RlcGVuZGVuY2ll
c19jb21waWxlcl90eXBlIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFtX2N2X0NDX2RlcGVuZGVuY2ll
c19jb21waWxlcl90eXBlIiA+JjY7IH0KQ0NERVBNT0RFPWRlcG1vZGU9JGFtX2N2X0NDX2RlcGVu
ZGVuY2llc19jb21waWxlcl90eXBlCgoKCmlmCiAgdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90
cmFja2luZyIgIT0geG5vIFwKICAmJiB0ZXN0ICIkYW1fY3ZfQ0NfZGVwZW5kZW5jaWVzX2NvbXBp
bGVyX3R5cGUiID0gZ2NjMzsgdGhlbgogIGFtX19mYXN0ZGVwQ0NfVFJVRT0KICBhbV9fZmFzdGRl
cENDX0ZBTFNFPScjJwplbHNlCiAgYW1fX2Zhc3RkZXBDQ19UUlVFPScjJwogIGFtX19mYXN0ZGVw
Q0NfRkFMU0U9CmZpCgoKIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXNoYXJlZCB3YXMgZ2l2ZW4u
CmlmIHRlc3QgIiR7ZW5hYmxlX3NoYXJlZCtzZXR9IiA9IHNldDsgdGhlbgogIGVuYWJsZXZhbD0k
ZW5hYmxlX3NoYXJlZDsgcD0ke1BBQ0tBR0UtZGVmYXVsdH0KICAgIGNhc2UgJGVuYWJsZXZhbCBp
bgogICAgeWVzKSBlbmFibGVfc2hhcmVkPXllcyA7OwogICAgbm8pIGVuYWJsZV9zaGFyZWQ9bm8g
OzsKICAgICopCiAgICAgIGVuYWJsZV9zaGFyZWQ9bm8KICAgICAgIyBMb29rIGF0IHRoZSBhcmd1
bWVudCB3ZSBnb3QuICBXZSB1c2UgYWxsIHRoZSBjb21tb24gbGlzdCBzZXBhcmF0b3JzLgogICAg
ICBsdF9zYXZlX2lmcz0iJElGUyI7IElGUz0iJHtJRlN9JFBBVEhfU0VQQVJBVE9SLCIKICAgICAg
Zm9yIHBrZyBpbiAkZW5hYmxldmFsOyBkbwoJSUZTPSIkbHRfc2F2ZV9pZnMiCglpZiB0ZXN0ICJY
JHBrZyIgPSAiWCRwIjsgdGhlbgoJICBlbmFibGVfc2hhcmVkPXllcwoJZmkKICAgICAgZG9uZQog
ICAgICBJRlM9IiRsdF9zYXZlX2lmcyIKICAgICAgOzsKICAgIGVzYWMKZWxzZQogIGVuYWJsZV9z
aGFyZWQ9eWVzCmZpCgoKIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXN0YXRpYyB3YXMgZ2l2ZW4u
CmlmIHRlc3QgIiR7ZW5hYmxlX3N0YXRpYytzZXR9IiA9IHNldDsgdGhlbgogIGVuYWJsZXZhbD0k
ZW5hYmxlX3N0YXRpYzsgcD0ke1BBQ0tBR0UtZGVmYXVsdH0KICAgIGNhc2UgJGVuYWJsZXZhbCBp
bgogICAgeWVzKSBlbmFibGVfc3RhdGljPXllcyA7OwogICAgbm8pIGVuYWJsZV9zdGF0aWM9bm8g
OzsKICAgICopCiAgICAgZW5hYmxlX3N0YXRpYz1ubwogICAgICAjIExvb2sgYXQgdGhlIGFyZ3Vt
ZW50IHdlIGdvdC4gIFdlIHVzZSBhbGwgdGhlIGNvbW1vbiBsaXN0IHNlcGFyYXRvcnMuCiAgICAg
IGx0X3NhdmVfaWZzPSIkSUZTIjsgSUZTPSIke0lGU30kUEFUSF9TRVBBUkFUT1IsIgogICAgICBm
b3IgcGtnIGluICRlbmFibGV2YWw7IGRvCglJRlM9IiRsdF9zYXZlX2lmcyIKCWlmIHRlc3QgIlgk
cGtnIiA9ICJYJHAiOyB0aGVuCgkgIGVuYWJsZV9zdGF0aWM9eWVzCglmaQogICAgICBkb25lCiAg
ICAgIElGUz0iJGx0X3NhdmVfaWZzIgogICAgICA7OwogICAgZXNhYwplbHNlCiAgZW5hYmxlX3N0
YXRpYz15ZXMKZmkKCgojIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtZmFzdC1pbnN0YWxsIHdhcyBn
aXZlbi4KaWYgdGVzdCAiJHtlbmFibGVfZmFzdF9pbnN0YWxsK3NldH0iID0gc2V0OyB0aGVuCiAg
ZW5hYmxldmFsPSRlbmFibGVfZmFzdF9pbnN0YWxsOyBwPSR7UEFDS0FHRS1kZWZhdWx0fQogICAg
Y2FzZSAkZW5hYmxldmFsIGluCiAgICB5ZXMpIGVuYWJsZV9mYXN0X2luc3RhbGw9eWVzIDs7CiAg
ICBubykgZW5hYmxlX2Zhc3RfaW5zdGFsbD1ubyA7OwogICAgKikKICAgICAgZW5hYmxlX2Zhc3Rf
aW5zdGFsbD1ubwogICAgICAjIExvb2sgYXQgdGhlIGFyZ3VtZW50IHdlIGdvdC4gIFdlIHVzZSBh
bGwgdGhlIGNvbW1vbiBsaXN0IHNlcGFyYXRvcnMuCiAgICAgIGx0X3NhdmVfaWZzPSIkSUZTIjsg
SUZTPSIke0lGU30kUEFUSF9TRVBBUkFUT1IsIgogICAgICBmb3IgcGtnIGluICRlbmFibGV2YWw7
IGRvCglJRlM9IiRsdF9zYXZlX2lmcyIKCWlmIHRlc3QgIlgkcGtnIiA9ICJYJHAiOyB0aGVuCgkg
IGVuYWJsZV9mYXN0X2luc3RhbGw9eWVzCglmaQogICAgICBkb25lCiAgICAgIElGUz0iJGx0X3Nh
dmVfaWZzIgogICAgICA7OwogICAgZXNhYwplbHNlCiAgZW5hYmxlX2Zhc3RfaW5zdGFsbD15ZXMK
ZmkKCgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgYSBzZWQgdGhhdCBkb2Vz
IG5vdCB0cnVuY2F0ZSBvdXRwdXQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBhIHNl
ZCB0aGF0IGRvZXMgbm90IHRydW5jYXRlIG91dHB1dC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVz
dCAiJHtsdF9jdl9wYXRoX1NFRCtzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNh
Y2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICAjIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBhdGgg
YW5kIHRlc3QgZm9yIHNlZCBhbmQgZ3NlZC4KIyBUaGVuIHVzZSB0aGF0IGxpc3Qgb2Ygc2VkJ3Mg
YXMgb25lcyB0byB0ZXN0IGZvciB0cnVuY2F0aW9uLgphc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBB
VEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVfSUZTCiAg
dGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgbHRfYWNfcHJvZyBpbiBzZWQgZ3Nl
ZDsgZG8KICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25z
OyBkbwogICAgICBpZiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRsdF9hY19wcm9nJGFjX2V4
ZWNfZXh0IjsgdGhlbgogICAgICAgIGx0X2FjX3NlZF9saXN0PSIkbHRfYWNfc2VkX2xpc3QgJGFz
X2Rpci8kbHRfYWNfcHJvZyRhY19leGVjX2V4dCIKICAgICAgZmkKICAgIGRvbmUKICBkb25lCmRv
bmUKbHRfYWNfbWF4PTAKbHRfYWNfY291bnQ9MAojIEFkZCAvdXNyL3hwZzQvYmluL3NlZCBhcyBp
dCBpcyB0eXBpY2FsbHkgZm91bmQgb24gU29sYXJpcwojIGFsb25nIHdpdGggL2Jpbi9zZWQgdGhh
dCB0cnVuY2F0ZXMgb3V0cHV0Lgpmb3IgbHRfYWNfc2VkIGluICRsdF9hY19zZWRfbGlzdCAvdXNy
L3hwZzQvYmluL3NlZDsgZG8KICB0ZXN0ICEgLWYgJGx0X2FjX3NlZCAmJiBjb250aW51ZQogIGNh
dCAvZGV2L251bGwgPiBjb25mdGVzdC5pbgogIGx0X2FjX2NvdW50PTAKICBlY2hvICRFQ0hPX04g
IjAxMjM0NTY3ODkkRUNIT19DIiA+Y29uZnRlc3QuaW4KICAjIENoZWNrIGZvciBHTlUgc2VkIGFu
ZCBzZWxlY3QgaXQgaWYgaXQgaXMgZm91bmQuCiAgaWYgIiRsdF9hY19zZWQiIC0tdmVyc2lvbiAy
PiYxIDwgL2Rldi9udWxsIHwgZ3JlcCAnR05VJyA+IC9kZXYvbnVsbDsgdGhlbgogICAgbHRfY3Zf
cGF0aF9TRUQ9JGx0X2FjX3NlZAogICAgYnJlYWsKICBmaQogIHdoaWxlIHRydWU7IGRvCiAgICBj
YXQgY29uZnRlc3QuaW4gY29uZnRlc3QuaW4gPmNvbmZ0ZXN0LnRtcAogICAgbXYgY29uZnRlc3Qu
dG1wIGNvbmZ0ZXN0LmluCiAgICBjcCBjb25mdGVzdC5pbiBjb25mdGVzdC5ubAogICAgZWNobyA+
PmNvbmZ0ZXN0Lm5sCiAgICAkbHRfYWNfc2VkIC1lICdzL2EkLy8nIDwgY29uZnRlc3QubmwgPmNv
bmZ0ZXN0Lm91dCB8fCBicmVhawogICAgY21wIC1zIGNvbmZ0ZXN0Lm91dCBjb25mdGVzdC5ubCB8
fCBicmVhawogICAgIyAxMDAwMCBjaGFycyBhcyBpbnB1dCBzZWVtcyBtb3JlIHRoYW4gZW5vdWdo
CiAgICB0ZXN0ICRsdF9hY19jb3VudCAtZ3QgMTAgJiYgYnJlYWsKICAgIGx0X2FjX2NvdW50PWBl
eHByICRsdF9hY19jb3VudCArIDFgCiAgICBpZiB0ZXN0ICRsdF9hY19jb3VudCAtZ3QgJGx0X2Fj
X21heDsgdGhlbgogICAgICBsdF9hY19tYXg9JGx0X2FjX2NvdW50CiAgICAgIGx0X2N2X3BhdGhf
U0VEPSRsdF9hY19zZWQKICAgIGZpCiAgZG9uZQpkb25lCgpmaQoKU0VEPSRsdF9jdl9wYXRoX1NF
RAp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRTRUQiID4mNQplY2hvICIke0VDSE9f
VH0kU0VEIiA+JjY7IH0KCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBncmVw
IHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZSIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yIGdyZXAgdGhhdCBoYW5kbGVzIGxvbmcgbGluZXMgYW5kIC1lLi4uICRFQ0hPX0MiID4m
NjsgfQppZiB0ZXN0ICIke2FjX2N2X3BhdGhfR1JFUCtzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8g
JEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICAjIEV4dHJhY3QgdGhlIGZpcnN0
IHdvcmQgb2YgImdyZXAgZ2dyZXAiIHRvIHVzZSBpbiBtc2cgb3V0cHV0CmlmIHRlc3QgLXogIiRH
UkVQIjsgdGhlbgpzZXQgZHVtbXkgZ3JlcCBnZ3JlcDsgYWNfcHJvZ19uYW1lPSQyCmlmIHRlc3Qg
IiR7YWNfY3ZfcGF0aF9HUkVQK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2Fj
aGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGFjX3BhdGhfR1JFUF9mb3VuZD1mYWxzZQojIExvb3Ag
dGhyb3VnaCB0aGUgdXNlcidzIHBhdGggYW5kIHRlc3QgZm9yIGVhY2ggb2YgUFJPR05BTUUtTElT
VAphc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBB
VEgkUEFUSF9TRVBBUkFUT1IvdXNyL3hwZzQvYmluCmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRl
c3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAgZm9yIGFjX3Byb2cgaW4gZ3JlcCBnZ3JlcDsg
ZG8KICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8K
ICAgIGFjX3BhdGhfR1JFUD0iJGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCIKICAgIHsgdGVz
dCAtZiAiJGFjX3BhdGhfR1JFUCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFjX3BhdGhfR1JFUCI7
IH0gfHwgY29udGludWUKICAgICMgQ2hlY2sgZm9yIEdOVSBhY19wYXRoX0dSRVAgYW5kIHNlbGVj
dCBpdCBpZiBpdCBpcyBmb3VuZC4KICAjIENoZWNrIGZvciBHTlUgJGFjX3BhdGhfR1JFUApjYXNl
IGAiJGFjX3BhdGhfR1JFUCIgLS12ZXJzaW9uIDI+JjFgIGluCipHTlUqKQogIGFjX2N2X3BhdGhf
R1JFUD0iJGFjX3BhdGhfR1JFUCIgYWNfcGF0aF9HUkVQX2ZvdW5kPTo7OwoqKQogIGFjX2NvdW50
PTAKICBlY2hvICRFQ0hPX04gIjAxMjM0NTY3ODkkRUNIT19DIiA+ImNvbmZ0ZXN0LmluIgogIHdo
aWxlIDoKICBkbwogICAgY2F0ICJjb25mdGVzdC5pbiIgImNvbmZ0ZXN0LmluIiA+ImNvbmZ0ZXN0
LnRtcCIKICAgIG12ICJjb25mdGVzdC50bXAiICJjb25mdGVzdC5pbiIKICAgIGNwICJjb25mdGVz
dC5pbiIgImNvbmZ0ZXN0Lm5sIgogICAgZWNobyAnR1JFUCcgPj4gImNvbmZ0ZXN0Lm5sIgogICAg
IiRhY19wYXRoX0dSRVAiIC1lICdHUkVQJCcgLWUgJy0oY2Fubm90IG1hdGNoKS0nIDwgImNvbmZ0
ZXN0Lm5sIiA+ImNvbmZ0ZXN0Lm91dCIgMj4vZGV2L251bGwgfHwgYnJlYWsKICAgIGRpZmYgImNv
bmZ0ZXN0Lm91dCIgImNvbmZ0ZXN0Lm5sIiA+L2Rldi9udWxsIDI+JjEgfHwgYnJlYWsKICAgIGFj
X2NvdW50PWBleHByICRhY19jb3VudCArIDFgCiAgICBpZiB0ZXN0ICRhY19jb3VudCAtZ3QgJHth
Y19wYXRoX0dSRVBfbWF4LTB9OyB0aGVuCiAgICAgICMgQmVzdCBvbmUgc28gZmFyLCBzYXZlIGl0
IGJ1dCBrZWVwIGxvb2tpbmcgZm9yIGEgYmV0dGVyIG9uZQogICAgICBhY19jdl9wYXRoX0dSRVA9
IiRhY19wYXRoX0dSRVAiCiAgICAgIGFjX3BhdGhfR1JFUF9tYXg9JGFjX2NvdW50CiAgICBmaQog
ICAgIyAxMCooMl4xMCkgY2hhcnMgYXMgaW5wdXQgc2VlbXMgbW9yZSB0aGFuIGVub3VnaAogICAg
dGVzdCAkYWNfY291bnQgLWd0IDEwICYmIGJyZWFrCiAgZG9uZQogIHJtIC1mIGNvbmZ0ZXN0Lmlu
IGNvbmZ0ZXN0LnRtcCBjb25mdGVzdC5ubCBjb25mdGVzdC5vdXQ7Owplc2FjCgoKICAgICRhY19w
YXRoX0dSRVBfZm91bmQgJiYgYnJlYWsgMwogIGRvbmUKZG9uZQoKZG9uZQpJRlM9JGFzX3NhdmVf
SUZTCgoKZmkKCkdSRVA9IiRhY19jdl9wYXRoX0dSRVAiCmlmIHRlc3QgLXogIiRHUkVQIjsgdGhl
bgogIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IG5vIGFjY2VwdGFibGUgJGFjX3By
b2dfbmFtZSBjb3VsZCBiZSBmb3VuZCBpbiAkUEFUSCRQQVRIX1NFUEFSQVRPUi91c3IveHBnNC9i
aW4iID4mNQplY2hvICIkYXNfbWU6IGVycm9yOiBubyBhY2NlcHRhYmxlICRhY19wcm9nX25hbWUg
Y291bGQgYmUgZm91bmQgaW4gJFBBVEgkUEFUSF9TRVBBUkFUT1IvdXNyL3hwZzQvYmluIiA+JjI7
fQogICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KZmkKCmVsc2UKICBhY19jdl9wYXRoX0dSRVA9
JEdSRVAKZmkKCgpmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9wYXRo
X0dSRVAiID4mNQplY2hvICIke0VDSE9fVH0kYWNfY3ZfcGF0aF9HUkVQIiA+JjY7IH0KIEdSRVA9
IiRhY19jdl9wYXRoX0dSRVAiCgoKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9y
IGVncmVwIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZWdyZXAuLi4gJEVDSE9fQyIg
PiY2OyB9CmlmIHRlc3QgIiR7YWNfY3ZfcGF0aF9FR1JFUCtzZXR9IiA9IHNldDsgdGhlbgogIGVj
aG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBpZiBlY2hvIGEgfCAkR1JF
UCAtRSAnKGF8YiknID4vZGV2L251bGwgMj4mMQogICB0aGVuIGFjX2N2X3BhdGhfRUdSRVA9IiRH
UkVQIC1FIgogICBlbHNlCiAgICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJlZ3JlcCIg
dG8gdXNlIGluIG1zZyBvdXRwdXQKaWYgdGVzdCAteiAiJEVHUkVQIjsgdGhlbgpzZXQgZHVtbXkg
ZWdyZXA7IGFjX3Byb2dfbmFtZT0kMgppZiB0ZXN0ICIke2FjX2N2X3BhdGhfRUdSRVArc2V0fSIg
PSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAg
YWNfcGF0aF9FR1JFUF9mb3VuZD1mYWxzZQojIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBhdGgg
YW5kIHRlc3QgZm9yIGVhY2ggb2YgUFJPR05BTUUtTElTVAphc19zYXZlX0lGUz0kSUZTOyBJRlM9
JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgkUEFUSF9TRVBBUkFUT1IvdXNyL3hw
ZzQvYmluCmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rp
cj0uCiAgZm9yIGFjX3Byb2cgaW4gZWdyZXA7IGRvCiAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRh
Y19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCiAgICBhY19wYXRoX0VHUkVQPSIkYXNfZGlyLyRh
Y19wcm9nJGFjX2V4ZWNfZXh0IgogICAgeyB0ZXN0IC1mICIkYWNfcGF0aF9FR1JFUCIgJiYgJGFz
X2V4ZWN1dGFibGVfcCAiJGFjX3BhdGhfRUdSRVAiOyB9IHx8IGNvbnRpbnVlCiAgICAjIENoZWNr
IGZvciBHTlUgYWNfcGF0aF9FR1JFUCBhbmQgc2VsZWN0IGl0IGlmIGl0IGlzIGZvdW5kLgogICMg
Q2hlY2sgZm9yIEdOVSAkYWNfcGF0aF9FR1JFUApjYXNlIGAiJGFjX3BhdGhfRUdSRVAiIC0tdmVy
c2lvbiAyPiYxYCBpbgoqR05VKikKICBhY19jdl9wYXRoX0VHUkVQPSIkYWNfcGF0aF9FR1JFUCIg
YWNfcGF0aF9FR1JFUF9mb3VuZD06OzsKKikKICBhY19jb3VudD0wCiAgZWNobyAkRUNIT19OICIw
MTIzNDU2Nzg5JEVDSE9fQyIgPiJjb25mdGVzdC5pbiIKICB3aGlsZSA6CiAgZG8KICAgIGNhdCAi
Y29uZnRlc3QuaW4iICJjb25mdGVzdC5pbiIgPiJjb25mdGVzdC50bXAiCiAgICBtdiAiY29uZnRl
c3QudG1wIiAiY29uZnRlc3QuaW4iCiAgICBjcCAiY29uZnRlc3QuaW4iICJjb25mdGVzdC5ubCIK
ICAgIGVjaG8gJ0VHUkVQJyA+PiAiY29uZnRlc3QubmwiCiAgICAiJGFjX3BhdGhfRUdSRVAiICdF
R1JFUCQnIDwgImNvbmZ0ZXN0Lm5sIiA+ImNvbmZ0ZXN0Lm91dCIgMj4vZGV2L251bGwgfHwgYnJl
YWsKICAgIGRpZmYgImNvbmZ0ZXN0Lm91dCIgImNvbmZ0ZXN0Lm5sIiA+L2Rldi9udWxsIDI+JjEg
fHwgYnJlYWsKICAgIGFjX2NvdW50PWBleHByICRhY19jb3VudCArIDFgCiAgICBpZiB0ZXN0ICRh
Y19jb3VudCAtZ3QgJHthY19wYXRoX0VHUkVQX21heC0wfTsgdGhlbgogICAgICAjIEJlc3Qgb25l
IHNvIGZhciwgc2F2ZSBpdCBidXQga2VlcCBsb29raW5nIGZvciBhIGJldHRlciBvbmUKICAgICAg
YWNfY3ZfcGF0aF9FR1JFUD0iJGFjX3BhdGhfRUdSRVAiCiAgICAgIGFjX3BhdGhfRUdSRVBfbWF4
PSRhY19jb3VudAogICAgZmkKICAgICMgMTAqKDJeMTApIGNoYXJzIGFzIGlucHV0IHNlZW1zIG1v
cmUgdGhhbiBlbm91Z2gKICAgIHRlc3QgJGFjX2NvdW50IC1ndCAxMCAmJiBicmVhawogIGRvbmUK
ICBybSAtZiBjb25mdGVzdC5pbiBjb25mdGVzdC50bXAgY29uZnRlc3QubmwgY29uZnRlc3Qub3V0
OzsKZXNhYwoKCiAgICAkYWNfcGF0aF9FR1JFUF9mb3VuZCAmJiBicmVhayAzCiAgZG9uZQpkb25l
Cgpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCgpmaQoKRUdSRVA9IiRhY19jdl9wYXRoX0VHUkVQIgpp
ZiB0ZXN0IC16ICIkRUdSRVAiOyB0aGVuCiAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJv
cjogbm8gYWNjZXB0YWJsZSAkYWNfcHJvZ19uYW1lIGNvdWxkIGJlIGZvdW5kIGluICRQQVRIJFBB
VEhfU0VQQVJBVE9SL3Vzci94cGc0L2JpbiIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IG5vIGFj
Y2VwdGFibGUgJGFjX3Byb2dfbmFtZSBjb3VsZCBiZSBmb3VuZCBpbiAkUEFUSCRQQVRIX1NFUEFS
QVRPUi91c3IveHBnNC9iaW4iID4mMjt9CiAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQpmaQoK
ZWxzZQogIGFjX2N2X3BhdGhfRUdSRVA9JEVHUkVQCmZpCgoKICAgZmkKZmkKeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfcGF0aF9FR1JFUCIgPiY1CmVjaG8gIiR7RUNIT19U
fSRhY19jdl9wYXRoX0VHUkVQIiA+JjY7IH0KIEVHUkVQPSIkYWNfY3ZfcGF0aF9FR1JFUCIKCgoK
IyBDaGVjayB3aGV0aGVyIC0td2l0aC1nbnUtbGQgd2FzIGdpdmVuLgppZiB0ZXN0ICIke3dpdGhf
Z251X2xkK3NldH0iID0gc2V0OyB0aGVuCiAgd2l0aHZhbD0kd2l0aF9nbnVfbGQ7IHRlc3QgIiR3
aXRodmFsIiA9IG5vIHx8IHdpdGhfZ251X2xkPXllcwplbHNlCiAgd2l0aF9nbnVfbGQ9bm8KZmkK
CmFjX3Byb2c9bGQKaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KICAjIENoZWNrIGlmIGdjYyAt
cHJpbnQtcHJvZy1uYW1lPWxkIGdpdmVzIGEgcGF0aC4KICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBjaGVja2luZyBmb3IgbGQgdXNlZCBieSAkQ0MiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5n
IGZvciBsZCB1c2VkIGJ5ICRDQy4uLiAkRUNIT19DIiA+JjY7IH0KICBjYXNlICRob3N0IGluCiAg
Ki0qLW1pbmd3KikKICAgICMgZ2NjIGxlYXZlcyBhIHRyYWlsaW5nIGNhcnJpYWdlIHJldHVybiB3
aGljaCB1cHNldHMgbWluZ3cKICAgIGFjX3Byb2c9YCgkQ0MgLXByaW50LXByb2ctbmFtZT1sZCkg
Mj4mNSB8IHRyIC1kICdcMDE1J2AgOzsKICAqKQogICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQtcHJv
Zy1uYW1lPWxkKSAyPiY1YCA7OwogIGVzYWMKICBjYXNlICRhY19wcm9nIGluCiAgICAjIEFjY2Vw
dCBhYnNvbHV0ZSBwYXRocy4KICAgIFtcXC9dKiB8ID86W1xcL10qKQogICAgICByZV9kaXJlbHQ9
Jy9bXi9dW14vXSovXC5cLi8nCiAgICAgICMgQ2Fub25pY2FsaXplIHRoZSBwYXRobmFtZSBvZiBs
ZAogICAgICBhY19wcm9nPWBlY2hvICRhY19wcm9nfCAkU0VEICdzJVxcXFwlLyVnJ2AKICAgICAg
d2hpbGUgZWNobyAkYWNfcHJvZyB8IGdyZXAgIiRyZV9kaXJlbHQiID4gL2Rldi9udWxsIDI+JjE7
IGRvCglhY19wcm9nPWBlY2hvICRhY19wcm9nfCAkU0VEICJzJSRyZV9kaXJlbHQlLyUiYAogICAg
ICBkb25lCiAgICAgIHRlc3QgLXogIiRMRCIgJiYgTEQ9IiRhY19wcm9nIgogICAgICA7OwogICIi
KQogICAgIyBJZiBpdCBmYWlscywgdGhlbiBwcmV0ZW5kIHdlIGFyZW4ndCB1c2luZyBHQ0MuCiAg
ICBhY19wcm9nPWxkCiAgICA7OwogICopCiAgICAjIElmIGl0IGlzIHJlbGF0aXZlLCB0aGVuIHNl
YXJjaCBmb3IgdGhlIGZpcnN0IGxkIGluIFBBVEguCiAgICB3aXRoX2dudV9sZD11bmtub3duCiAg
ICA7OwogIGVzYWMKZWxpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVzOyB0aGVuCiAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIEdOVSBsZCIgPiY1CmVjaG8gJEVDSE9fTiAi
Y2hlY2tpbmcgZm9yIEdOVSBsZC4uLiAkRUNIT19DIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBub24tR05VIGxkIiA+JjUKZWNobyAkRUNIT19OICJj
aGVja2luZyBmb3Igbm9uLUdOVSBsZC4uLiAkRUNIT19DIiA+JjY7IH0KZmkKaWYgdGVzdCAiJHts
dF9jdl9wYXRoX0xEK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAk
RUNIT19DIiA+JjYKZWxzZQogIGlmIHRlc3QgLXogIiRMRCI7IHRoZW4KICBsdF9zYXZlX2lmcz0i
JElGUyI7IElGUz0kUEFUSF9TRVBBUkFUT1IKICBmb3IgYWNfZGlyIGluICRQQVRIOyBkbwogICAg
SUZTPSIkbHRfc2F2ZV9pZnMiCiAgICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9LgogICAg
aWYgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyIgfHwgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJv
ZyRhY19leGVleHQiOyB0aGVuCiAgICAgIGx0X2N2X3BhdGhfTEQ9IiRhY19kaXIvJGFjX3Byb2ci
CiAgICAgICMgQ2hlY2sgdG8gc2VlIGlmIHRoZSBwcm9ncmFtIGlzIEdOVSBsZC4gIEknZCByYXRo
ZXIgdXNlIC0tdmVyc2lvbiwKICAgICAgIyBidXQgYXBwYXJlbnRseSBzb21lIHZhcmlhbnRzIG9m
IEdOVSBsZCBvbmx5IGFjY2VwdCAtdi4KICAgICAgIyBCcmVhayBvbmx5IGlmIGl0IHdhcyB0aGUg
R05VL25vbi1HTlUgbGQgdGhhdCB3ZSBwcmVmZXIuCiAgICAgIGNhc2UgYCIkbHRfY3ZfcGF0aF9M
RCIgLXYgMj4mMSA8L2Rldi9udWxsYCBpbgogICAgICAqR05VKiB8ICond2l0aCBCRkQnKikKCXRl
c3QgIiR3aXRoX2dudV9sZCIgIT0gbm8gJiYgYnJlYWsKCTs7CiAgICAgICopCgl0ZXN0ICIkd2l0
aF9nbnVfbGQiICE9IHllcyAmJiBicmVhawoJOzsKICAgICAgZXNhYwogICAgZmkKICBkb25lCiAg
SUZTPSIkbHRfc2F2ZV9pZnMiCmVsc2UKICBsdF9jdl9wYXRoX0xEPSIkTEQiICMgTGV0IHRoZSB1
c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgpmaQpmaQoKTEQ9IiRsdF9jdl9wYXRo
X0xEIgppZiB0ZXN0IC1uICIkTEQiOyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiAkTEQiID4mNQplY2hvICIke0VDSE9fVH0kTEQiID4mNjsgfQplbHNlCiAgeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0K
ZmkKdGVzdCAteiAiJExEIiAmJiB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBubyBh
Y2NlcHRhYmxlIGxkIGZvdW5kIGluIFwkUEFUSCIgPiY1CmVjaG8gIiRhc19tZTogZXJyb3I6IG5v
IGFjY2VwdGFibGUgbGQgZm91bmQgaW4gXCRQQVRIIiA+JjI7fQogICB7IChleGl0IDEpOyBleGl0
IDE7IH07IH0KeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAo
JExEKSBpcyBHTlUgbGQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGlmIHRoZSBsaW5rZXIg
KCRMRCkgaXMgR05VIGxkLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2x0X2N2X3Byb2df
Z251X2xkK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19D
IiA+JjYKZWxzZQogICMgSSdkIHJhdGhlciB1c2UgLS12ZXJzaW9uIGhlcmUsIGJ1dCBhcHBhcmVu
dGx5IHNvbWUgR05VIGxkcyBvbmx5IGFjY2VwdCAtdi4KY2FzZSBgJExEIC12IDI+JjEgPC9kZXYv
bnVsbGAgaW4KKkdOVSogfCAqJ3dpdGggQkZEJyopCiAgbHRfY3ZfcHJvZ19nbnVfbGQ9eWVzCiAg
OzsKKikKICBsdF9jdl9wcm9nX2dudV9sZD1ubwogIDs7CmVzYWMKZmkKeyBlY2hvICIkYXNfbWU6
JExJTkVOTzogcmVzdWx0OiAkbHRfY3ZfcHJvZ19nbnVfbGQiID4mNQplY2hvICIke0VDSE9fVH0k
bHRfY3ZfcHJvZ19nbnVfbGQiID4mNjsgfQp3aXRoX2dudV9sZD0kbHRfY3ZfcHJvZ19nbnVfbGQK
Cgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJExEIG9wdGlvbiB0byByZWxv
YWQgb2JqZWN0IGZpbGVzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJExEIG9wdGlv
biB0byByZWxvYWQgb2JqZWN0IGZpbGVzLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2x0
X2N2X2xkX3JlbG9hZF9mbGFnK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2Fj
aGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGx0X2N2X2xkX3JlbG9hZF9mbGFnPSctcicKZmkKeyBl
Y2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkbHRfY3ZfbGRfcmVsb2FkX2ZsYWciID4mNQpl
Y2hvICIke0VDSE9fVH0kbHRfY3ZfbGRfcmVsb2FkX2ZsYWciID4mNjsgfQpyZWxvYWRfZmxhZz0k
bHRfY3ZfbGRfcmVsb2FkX2ZsYWcKY2FzZSAkcmVsb2FkX2ZsYWcgaW4KIiIgfCAiICIqKSA7Owoq
KSByZWxvYWRfZmxhZz0iICRyZWxvYWRfZmxhZyIgOzsKZXNhYwpyZWxvYWRfY21kcz0nJExEJHJl
bG9hZF9mbGFnIC1vICRvdXRwdXQkcmVsb2FkX29ianMnCmNhc2UgJGhvc3Rfb3MgaW4KICBkYXJ3
aW4qKQogICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KICAgICAgcmVsb2FkX2NtZHM9JyRM
VENDICRMVENGTEFHUyAtbm9zdGRsaWIgJHt3bH0tciAtbyAkb3V0cHV0JHJlbG9hZF9vYmpzJwog
ICAgZWxzZQogICAgICByZWxvYWRfY21kcz0nJExEJHJlbG9hZF9mbGFnIC1vICRvdXRwdXQkcmVs
b2FkX29ianMnCiAgICBmaQogICAgOzsKZXNhYwoKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hl
Y2tpbmcgZm9yIEJTRC1jb21wYXRpYmxlIG5tIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBm
b3IgQlNELWNvbXBhdGlibGUgbm0uLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7bHRfY3Zf
cGF0aF9OTStzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9f
QyIgPiY2CmVsc2UKICBpZiB0ZXN0IC1uICIkTk0iOyB0aGVuCiAgIyBMZXQgdGhlIHVzZXIgb3Zl
cnJpZGUgdGhlIHRlc3QuCiAgbHRfY3ZfcGF0aF9OTT0iJE5NIgplbHNlCiAgbHRfbm1fdG9fY2hl
Y2s9IiR7YWNfdG9vbF9wcmVmaXh9bm0iCiAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IiAm
JiB0ZXN0ICIkYnVpbGQiID0gIiRob3N0IjsgdGhlbgogICAgbHRfbm1fdG9fY2hlY2s9IiRsdF9u
bV90b19jaGVjayBubSIKICBmaQogIGZvciBsdF90bXBfbm0gaW4gJGx0X25tX3RvX2NoZWNrOyBk
bwogICAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCiAgICBmb3IgYWNf
ZGlyIGluICRQQVRIIC91c3IvY2NzL2Jpbi9lbGYgL3Vzci9jY3MvYmluIC91c3IvdWNiIC9iaW47
IGRvCiAgICAgIElGUz0iJGx0X3NhdmVfaWZzIgogICAgICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBh
Y19kaXI9LgogICAgICB0bXBfbm09IiRhY19kaXIvJGx0X3RtcF9ubSIKICAgICAgaWYgdGVzdCAt
ZiAiJHRtcF9ubSIgfHwgdGVzdCAtZiAiJHRtcF9ubSRhY19leGVleHQiIDsgdGhlbgoJIyBDaGVj
ayB0byBzZWUgaWYgdGhlIG5tIGFjY2VwdHMgYSBCU0QtY29tcGF0IGZsYWcuCgkjIEFkZGluZyB0
aGUgYHNlZCAxcScgcHJldmVudHMgZmFsc2UgcG9zaXRpdmVzIG9uIEhQLVVYLCB3aGljaCBzYXlz
OgoJIyAgIG5tOiB1bmtub3duIG9wdGlvbiAiQiIgaWdub3JlZAoJIyBUcnU2NCdzIG5tIGNvbXBs
YWlucyB0aGF0IC9kZXYvbnVsbCBpcyBhbiBpbnZhbGlkIG9iamVjdCBmaWxlCgljYXNlIGAiJHRt
cF9ubSIgLUIgL2Rldi9udWxsIDI+JjEgfCBzZWQgJzFxJ2AgaW4KCSovZGV2L251bGwqIHwgKidJ
bnZhbGlkIGZpbGUgb3Igb2JqZWN0IHR5cGUnKikKCSAgbHRfY3ZfcGF0aF9OTT0iJHRtcF9ubSAt
QiIKCSAgYnJlYWsKCSAgOzsKCSopCgkgIGNhc2UgYCIkdG1wX25tIiAtcCAvZGV2L251bGwgMj4m
MSB8IHNlZCAnMXEnYCBpbgoJICAqL2Rldi9udWxsKikKCSAgICBsdF9jdl9wYXRoX05NPSIkdG1w
X25tIC1wIgoJICAgIGJyZWFrCgkgICAgOzsKCSAgKikKCSAgICBsdF9jdl9wYXRoX05NPSR7bHRf
Y3ZfcGF0aF9OTT0iJHRtcF9ubSJ9ICMga2VlcCB0aGUgZmlyc3QgbWF0Y2gsIGJ1dAoJICAgIGNv
bnRpbnVlICMgc28gdGhhdCB3ZSBjYW4gdHJ5IHRvIGZpbmQgb25lIHRoYXQgc3VwcG9ydHMgQlNE
IGZsYWdzCgkgICAgOzsKCSAgZXNhYwoJICA7OwoJZXNhYwogICAgICBmaQogICAgZG9uZQogICAg
SUZTPSIkbHRfc2F2ZV9pZnMiCiAgZG9uZQogIHRlc3QgLXogIiRsdF9jdl9wYXRoX05NIiAmJiBs
dF9jdl9wYXRoX05NPW5tCmZpCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0
X2N2X3BhdGhfTk0iID4mNQplY2hvICIke0VDSE9fVH0kbHRfY3ZfcGF0aF9OTSIgPiY2OyB9Ck5N
PSIkbHRfY3ZfcGF0aF9OTSIKCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRo
ZXIgbG4gLXMgd29ya3MiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIHdoZXRoZXIgbG4gLXMg
d29ya3MuLi4gJEVDSE9fQyIgPiY2OyB9CkxOX1M9JGFzX2xuX3MKaWYgdGVzdCAiJExOX1MiID0g
ImxuIC1zIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogeWVzIiA+JjUK
ZWNobyAiJHtFQ0hPX1R9eWVzIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86
IHJlc3VsdDogbm8sIHVzaW5nICRMTl9TIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8sIHVzaW5nICRM
Tl9TIiA+JjY7IH0KZmkKCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGhvdyB0byBy
ZWNvZ25pc2UgZGVwZW5kZW50IGxpYnJhcmllcyIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcg
aG93IHRvIHJlY29nbmlzZSBkZXBlbmRlbnQgbGlicmFyaWVzLi4uICRFQ0hPX0MiID4mNjsgfQpp
ZiB0ZXN0ICIke2x0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kK3NldH0iID0gc2V0OyB0aGVuCiAg
ZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGx0X2N2X2ZpbGVfbWFn
aWNfY21kPSckTUFHSUNfQ01EJwpsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0KbHRfY3ZfZGVw
bGlic19jaGVja19tZXRob2Q9J3Vua25vd24nCiMgTmVlZCB0byBzZXQgdGhlIHByZWNlZGluZyB2
YXJpYWJsZSBvbiBhbGwgcGxhdGZvcm1zIHRoYXQgc3VwcG9ydAojIGludGVybGlicmFyeSBkZXBl
bmRlbmNpZXMuCiMgJ25vbmUnIC0tIGRlcGVuZGVuY2llcyBub3Qgc3VwcG9ydGVkLgojIGB1bmtu
b3duJyAtLSBzYW1lIGFzIG5vbmUsIGJ1dCBkb2N1bWVudHMgdGhhdCB3ZSByZWFsbHkgZG9uJ3Qg
a25vdy4KIyAncGFzc19hbGwnIC0tIGFsbCBkZXBlbmRlbmNpZXMgcGFzc2VkIHdpdGggbm8gY2hl
Y2tzLgojICd0ZXN0X2NvbXBpbGUnIC0tIGNoZWNrIGJ5IG1ha2luZyB0ZXN0IHByb2dyYW0uCiMg
J2ZpbGVfbWFnaWMgW1tyZWdleF1dJyAtLSBjaGVjayBieSBsb29raW5nIGZvciBmaWxlcyBpbiBs
aWJyYXJ5IHBhdGgKIyB3aGljaCByZXNwb25kcyB0byB0aGUgJGZpbGVfbWFnaWNfY21kIHdpdGgg
YSBnaXZlbiBleHRlbmRlZCByZWdleC4KIyBJZiB5b3UgaGF2ZSBgZmlsZScgb3IgZXF1aXZhbGVu
dCBvbiB5b3VyIHN5c3RlbSBhbmQgeW91J3JlIG5vdCBzdXJlCiMgd2hldGhlciBgcGFzc19hbGwn
IHdpbGwgKmFsd2F5cyogd29yaywgeW91IHByb2JhYmx5IHdhbnQgdGhpcyBvbmUuCgpjYXNlICRo
b3N0X29zIGluCmFpeDQqIHwgYWl4NSopCiAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFz
c19hbGwKICA7OwoKYmVvcyopCiAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwK
ICA7OwoKYnNkaVs0NV0qKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2lj
IEVMRiBbMC05XVswLTldKi1iaXQgW01MXVNCIChzaGFyZWQgb2JqZWN0fGR5bmFtaWMgbGliKScK
ICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nL3Vzci9iaW4vZmlsZSAtTCcKICBsdF9jdl9maWxlX21h
Z2ljX3Rlc3RfZmlsZT0vc2hsaWIvbGliYy5zbwogIDs7CgpjeWd3aW4qKQogICMgZnVuY193aW4z
Ml9saWJpZCBpcyBhIHNoZWxsIGZ1bmN0aW9uIGRlZmluZWQgaW4gbHRtYWluLnNoCiAgbHRfY3Zf
ZGVwbGlic19jaGVja19tZXRob2Q9J2ZpbGVfbWFnaWMgXng4NiBhcmNoaXZlIGltcG9ydHxeeDg2
IERMTCcKICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nZnVuY193aW4zMl9saWJpZCcKICA7OwoKbWlu
Z3cqIHwgcHczMiopCiAgIyBCYXNlIE1TWVMvTWluR1cgZG8gbm90IHByb3ZpZGUgdGhlICdmaWxl
JyBjb21tYW5kIG5lZWRlZCBieQogICMgZnVuY193aW4zMl9saWJpZCBzaGVsbCBmdW5jdGlvbiwg
c28gdXNlIGEgd2Vha2VyIHRlc3QgYmFzZWQgb24gJ29iamR1bXAnLgogIGx0X2N2X2RlcGxpYnNf
Y2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIGZpbGUgZm9ybWF0IHBlaSotaTM4NiguKmFyY2hpdGVj
dHVyZTogaTM4Nik/JwogIGx0X2N2X2ZpbGVfbWFnaWNfY21kPSckT0JKRFVNUCAtZicKICA7OwoK
ZGFyd2luKiB8IHJoYXBzb2R5KikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2Fs
bAogIDs7CgpmcmVlYnNkKiB8IGtmcmVlYnNkKi1nbnUgfCBkcmFnb25mbHkqKQogIGlmIGVjaG8g
X19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fID4gL2Rldi9udWxsOyB0aGVuCiAgICBj
YXNlICRob3N0X2NwdSBpbgogICAgaSo4NiApCiAgICAgICMgTm90IHN1cmUgd2hldGhlciB0aGUg
cHJlc2VuY2Ugb2YgT3BlbkJTRCBoZXJlIHdhcyBhIG1pc3Rha2UuCiAgICAgICMgTGV0J3MgYWNj
ZXB0IGJvdGggb2YgdGhlbSB1bnRpbCB0aGlzIGlzIGNsZWFyZWQgdXAuCiAgICAgIGx0X2N2X2Rl
cGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIChGcmVlQlNEfE9wZW5CU0R8RHJhZ29uRmx5
KS9pWzMtOV04NiAoY29tcGFjdCApP2RlbWFuZCBwYWdlZCBzaGFyZWQgbGlicmFyeScKICAgICAg
bHRfY3ZfZmlsZV9tYWdpY19jbWQ9L3Vzci9iaW4vZmlsZQogICAgICBsdF9jdl9maWxlX21hZ2lj
X3Rlc3RfZmlsZT1gZWNobyAvdXNyL2xpYi9saWJjLnNvLipgCiAgICAgIDs7CiAgICBlc2FjCiAg
ZWxzZQogICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKICBmaQogIDs7Cgpn
bnUqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBhc3NfYWxsCiAgOzsKCmhwdXgxMC4y
MCogfCBocHV4MTEqKQogIGx0X2N2X2ZpbGVfbWFnaWNfY21kPS91c3IvYmluL2ZpbGUKICBjYXNl
ICRob3N0X2NwdSBpbgogIGlhNjQqKQogICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9J2Zp
bGVfbWFnaWMgKHNbMC05XVswLTldWzAtOV18RUxGLVswLTldWzAtOV0pIHNoYXJlZCBvYmplY3Qg
ZmlsZSAtIElBNjQnCiAgICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0vdXNyL2xpYi9ocHV4
MzIvbGliYy5zbwogICAgOzsKICBocHBhKjY0KikKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0
aG9kPSdmaWxlX21hZ2ljIChzWzAtOV1bMC05XVswLTldfEVMRi1bMC05XVswLTldKSBzaGFyZWQg
b2JqZWN0IGZpbGUgLSBQQS1SSVNDIFswLTldLlswLTldJwogICAgbHRfY3ZfZmlsZV9tYWdpY190
ZXN0X2ZpbGU9L3Vzci9saWIvcGEyMF82NC9saWJjLnNsCiAgICA7OwogICopCiAgICBsdF9jdl9k
ZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyAoc1swLTldWzAtOV1bMC05XXxQQS1SSVND
WzAtOV0uWzAtOV0pIHNoYXJlZCBsaWJyYXJ5JwogICAgbHRfY3ZfZmlsZV9tYWdpY190ZXN0X2Zp
bGU9L3Vzci9saWIvbGliYy5zbAogICAgOzsKICBlc2FjCiAgOzsKCmludGVyaXgzKikKICAjIFBJ
QyBjb2RlIGlzIGJyb2tlbiBvbiBJbnRlcml4IDMueCwgdGhhdCdzIHdoeSB8XC5hIG5vdCB8X3Bp
Y1wuYSBoZXJlCiAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9J21hdGNoX3BhdHRlcm4gL2xp
YlteL10rKFwuc298XC5hKSQnCiAgOzsKCmlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0b3B1eCopCiAg
Y2FzZSAkTEQgaW4KICAqLTMyfCoiLTMyICIpIGxpYm1hZ2ljPTMyLWJpdDs7CiAgKi1uMzJ8KiIt
bjMyICIpIGxpYm1hZ2ljPU4zMjs7CiAgKi02NHwqIi02NCAiKSBsaWJtYWdpYz02NC1iaXQ7Owog
ICopIGxpYm1hZ2ljPW5ldmVyLW1hdGNoOzsKICBlc2FjCiAgbHRfY3ZfZGVwbGlic19jaGVja19t
ZXRob2Q9cGFzc19hbGwKICA7OwoKIyBUaGlzIG11c3QgYmUgTGludXggRUxGLgpsaW51eCopCiAg
bHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKICA7OwoKbmV0YnNkKikKICBpZiBl
Y2hvIF9fRUxGX18gfCAkQ0MgLUUgLSB8IGdyZXAgX19FTEZfXyA+IC9kZXYvbnVsbDsgdGhlbgog
ICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9J21hdGNoX3BhdHRlcm4gL2xpYlteL10rKFwu
c29cLlswLTldK1wuWzAtOV0rfF9waWNcLmEpJCcKICBlbHNlCiAgICBsdF9jdl9kZXBsaWJzX2No
ZWNrX21ldGhvZD0nbWF0Y2hfcGF0dGVybiAvbGliW14vXSsoXC5zb3xfcGljXC5hKSQnCiAgZmkK
ICA7OwoKbmV3b3M2KikKICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyBF
TEYgWzAtOV1bMC05XSotYml0IFtNTF1TQiAoZXhlY3V0YWJsZXxkeW5hbWljIGxpYiknCiAgbHRf
Y3ZfZmlsZV9tYWdpY19jbWQ9L3Vzci9iaW4vZmlsZQogIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9m
aWxlPS91c3IvbGliL2xpYm5scy5zbwogIDs7CgpudG8tcW54KikKICBsdF9jdl9kZXBsaWJzX2No
ZWNrX21ldGhvZD11bmtub3duCiAgOzsKCm9wZW5ic2QqKQogIGlmIHRlc3QgLXogImBlY2hvIF9f
RUxGX18gfCAkQ0MgLUUgLSB8IGdyZXAgX19FTEZfX2AiIHx8IHRlc3QgIiRob3N0X29zLSRob3N0
X2NwdSIgPSAib3BlbmJzZDIuOC1wb3dlcnBjIjsgdGhlbgogICAgbHRfY3ZfZGVwbGlic19jaGVj
a19tZXRob2Q9J21hdGNoX3BhdHRlcm4gL2xpYlteL10rKFwuc29cLlswLTldK1wuWzAtOV0rfFwu
c298X3BpY1wuYSkkJwogIGVsc2UKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdtYXRj
aF9wYXR0ZXJuIC9saWJbXi9dKyhcLnNvXC5bMC05XStcLlswLTldK3xfcGljXC5hKSQnCiAgZmkK
ICA7OwoKb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9k
PXBhc3NfYWxsCiAgOzsKCnNvbGFyaXMqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBh
c3NfYWxsCiAgOzsKCnN5c3Y0IHwgc3lzdjQuMyopCiAgY2FzZSAkaG9zdF92ZW5kb3IgaW4KICBt
b3Rvcm9sYSkKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIEVMRiBb
MC05XVswLTldKi1iaXQgW01MXVNCIChzaGFyZWQgb2JqZWN0fGR5bmFtaWMgbGliKSBNWzAtOV1b
MC05XSogVmVyc2lvbiBbMC05XScKICAgIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPWBlY2hv
IC91c3IvbGliL2xpYmMuc28qYAogICAgOzsKICBuY3IpCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNr
X21ldGhvZD1wYXNzX2FsbAogICAgOzsKICBzZXF1ZW50KQogICAgbHRfY3ZfZmlsZV9tYWdpY19j
bWQ9Jy9iaW4vZmlsZScKICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2lj
IEVMRiBbMC05XVswLTldKi1iaXQgW0xNXVNCIChzaGFyZWQgb2JqZWN0fGR5bmFtaWMgbGliICkn
CiAgICA7OwogIHNuaSkKICAgIGx0X2N2X2ZpbGVfbWFnaWNfY21kPScvYmluL2ZpbGUnCiAgICBs
dF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0iZmlsZV9tYWdpYyBFTEYgWzAtOV1bMC05XSotYml0
IFtMTV1TQiBkeW5hbWljIGxpYiIKICAgIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPS9saWIv
bGliYy5zbwogICAgOzsKICBzaWVtZW5zKQogICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9
cGFzc19hbGwKICAgIDs7CiAgcGMpCiAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNz
X2FsbAogICAgOzsKICBlc2FjCiAgOzsKCnN5c3Y1KiB8IHNjbzMuMnY1KiB8IHNjbzV2NiogfCB1
bml4d2FyZSogfCBPcGVuVU5JWCogfCBzeXN2NCp1dzIqKQogIGx0X2N2X2RlcGxpYnNfY2hlY2tf
bWV0aG9kPXBhc3NfYWxsCiAgOzsKZXNhYwoKZmkKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiAkbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2QiID4mNQplY2hvICIke0VDSE9fVH0kbHRf
Y3ZfZGVwbGlic19jaGVja19tZXRob2QiID4mNjsgfQpmaWxlX21hZ2ljX2NtZD0kbHRfY3ZfZmls
ZV9tYWdpY19jbWQKZGVwbGlic19jaGVja19tZXRob2Q9JGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0
aG9kCnRlc3QgLXogIiRkZXBsaWJzX2NoZWNrX21ldGhvZCIgJiYgZGVwbGlic19jaGVja19tZXRo
b2Q9dW5rbm93bgoKCgoKIyBJZiBubyBDIGNvbXBpbGVyIHdhcyBzcGVjaWZpZWQsIHVzZSBDQy4K
TFRDQz0ke0xUQ0MtIiRDQyJ9CgojIElmIG5vIEMgY29tcGlsZXIgZmxhZ3Mgd2VyZSBzcGVjaWZp
ZWQsIHVzZSBDRkxBR1MuCkxUQ0ZMQUdTPSR7TFRDRkxBR1MtIiRDRkxBR1MifQoKIyBBbGxvdyBD
QyB0byBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3VtZW50cy4KY29tcGlsZXI9JENDCgoKIyBD
aGVjayB3aGV0aGVyIC0tZW5hYmxlLWxpYnRvb2wtbG9jayB3YXMgZ2l2ZW4uCmlmIHRlc3QgIiR7
ZW5hYmxlX2xpYnRvb2xfbG9jaytzZXR9IiA9IHNldDsgdGhlbgogIGVuYWJsZXZhbD0kZW5hYmxl
X2xpYnRvb2xfbG9jazsKZmkKCnRlc3QgIngkZW5hYmxlX2xpYnRvb2xfbG9jayIgIT0geG5vICYm
IGVuYWJsZV9saWJ0b29sX2xvY2s9eWVzCgojIFNvbWUgZmxhZ3MgbmVlZCB0byBiZSBwcm9wYWdh
dGVkIHRvIHRoZSBjb21waWxlciBvciBsaW5rZXIgZm9yIGdvb2QKIyBsaWJ0b29sIHN1cHBvcnQu
CmNhc2UgJGhvc3QgaW4KaWE2NC0qLWhwdXgqKQogICMgRmluZCBvdXQgd2hpY2ggQUJJIHdlIGFy
ZSB1c2luZy4KICBlY2hvICdpbnQgaTsnID4gY29uZnRlc3QuJGFjX2V4dAogIGlmIHsgKGV2YWwg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBpbGVcIiIpID4mNQogIChldmFsICRhY19j
b21waWxlKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9
ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB0aGVuCiAgICBjYXNlIGAv
dXNyL2Jpbi9maWxlIGNvbmZ0ZXN0LiRhY19vYmpleHRgIGluCiAgICAqRUxGLTMyKikKICAgICAg
SFBVWF9JQTY0X01PREU9IjMyIgogICAgICA7OwogICAgKkVMRi02NCopCiAgICAgIEhQVVhfSUE2
NF9NT0RFPSI2NCIKICAgICAgOzsKICAgIGVzYWMKICBmaQogIHJtIC1yZiBjb25mdGVzdCoKICA7
OwoqLSotaXJpeDYqKQogICMgRmluZCBvdXQgd2hpY2ggQUJJIHdlIGFyZSB1c2luZy4KICBlY2hv
ICcjbGluZSA1MDA4ICJjb25maWd1cmUiJyA+IGNvbmZ0ZXN0LiRhY19leHQKICBpZiB7IChldmFs
IGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKICAoZXZhbCAkYWNf
Y29tcGlsZSkgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhlbgogICBpZiB0ZXN0
ICIkbHRfY3ZfcHJvZ19nbnVfbGQiID0geWVzOyB0aGVuCiAgICBjYXNlIGAvdXNyL2Jpbi9maWxl
IGNvbmZ0ZXN0LiRhY19vYmpleHRgIGluCiAgICAqMzItYml0KikKICAgICAgTEQ9IiR7TEQtbGR9
IC1tZWxmMzJic21pcCIKICAgICAgOzsKICAgICpOMzIqKQogICAgICBMRD0iJHtMRC1sZH0gLW1l
bGYzMmJtaXBuMzIiCiAgICAgIDs7CiAgICAqNjQtYml0KikKICAgICAgTEQ9IiR7TEQtbGR9IC1t
ZWxmNjRibWlwIgogICAgICA7OwogICAgZXNhYwogICBlbHNlCiAgICBjYXNlIGAvdXNyL2Jpbi9m
aWxlIGNvbmZ0ZXN0LiRhY19vYmpleHRgIGluCiAgICAqMzItYml0KikKICAgICAgTEQ9IiR7TEQt
bGR9IC0zMiIKICAgICAgOzsKICAgICpOMzIqKQogICAgICBMRD0iJHtMRC1sZH0gLW4zMiIKICAg
ICAgOzsKICAgICo2NC1iaXQqKQogICAgICBMRD0iJHtMRC1sZH0gLTY0IgogICAgICA7OwogICAg
ZXNhYwogICBmaQogIGZpCiAgcm0gLXJmIGNvbmZ0ZXN0KgogIDs7Cgp4ODZfNjQtKmxpbnV4Knxw
cGMqLSpsaW51eCp8cG93ZXJwYyotKmxpbnV4KnxzMzkwKi0qbGludXgqfHNwYXJjKi0qbGludXgq
KQogICMgRmluZCBvdXQgd2hpY2ggQUJJIHdlIGFyZSB1c2luZy4KICBlY2hvICdpbnQgaTsnID4g
Y29uZnRlc3QuJGFjX2V4dAogIGlmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X2NvbXBpbGVcIiIpID4mNQogIChldmFsICRhY19jb21waWxlKSAyPiY1CiAgYWNfc3RhdHVzPSQ/
CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRh
Y19zdGF0dXMpOyB9OyB0aGVuCiAgICBjYXNlIGAvdXNyL2Jpbi9maWxlIGNvbmZ0ZXN0Lm9gIGlu
CiAgICAqMzItYml0KikKICAgICAgY2FzZSAkaG9zdCBpbgogICAgICAgIHg4Nl82NC0qbGludXgq
KQogICAgICAgICAgTEQ9IiR7TEQtbGR9IC1tIGVsZl9pMzg2IgogICAgICAgICAgOzsKICAgICAg
ICBwcGM2NC0qbGludXgqfHBvd2VycGM2NC0qbGludXgqKQogICAgICAgICAgTEQ9IiR7TEQtbGR9
IC1tIGVsZjMycHBjbGludXgiCiAgICAgICAgICA7OwogICAgICAgIHMzOTB4LSpsaW51eCopCiAg
ICAgICAgICBMRD0iJHtMRC1sZH0gLW0gZWxmX3MzOTAiCiAgICAgICAgICA7OwogICAgICAgIHNw
YXJjNjQtKmxpbnV4KikKICAgICAgICAgIExEPSIke0xELWxkfSAtbSBlbGYzMl9zcGFyYyIKICAg
ICAgICAgIDs7CiAgICAgIGVzYWMKICAgICAgOzsKICAgICo2NC1iaXQqKQogICAgICBjYXNlICRo
b3N0IGluCiAgICAgICAgeDg2XzY0LSpsaW51eCopCiAgICAgICAgICBMRD0iJHtMRC1sZH0gLW0g
ZWxmX3g4Nl82NCIKICAgICAgICAgIDs7CiAgICAgICAgcHBjKi0qbGludXgqfHBvd2VycGMqLSps
aW51eCopCiAgICAgICAgICBMRD0iJHtMRC1sZH0gLW0gZWxmNjRwcGMiCiAgICAgICAgICA7Owog
ICAgICAgIHMzOTAqLSpsaW51eCopCiAgICAgICAgICBMRD0iJHtMRC1sZH0gLW0gZWxmNjRfczM5
MCIKICAgICAgICAgIDs7CiAgICAgICAgc3BhcmMqLSpsaW51eCopCiAgICAgICAgICBMRD0iJHtM
RC1sZH0gLW0gZWxmNjRfc3BhcmMiCiAgICAgICAgICA7OwogICAgICBlc2FjCiAgICAgIDs7CiAg
ICBlc2FjCiAgZmkKICBybSAtcmYgY29uZnRlc3QqCiAgOzsKCiotKi1zY28zLjJ2NSopCiAgIyBP
biBTQ08gT3BlblNlcnZlciA1LCB3ZSBuZWVkIC1iZWxmIHRvIGdldCBmdWxsLWZlYXR1cmVkIGJp
bmFyaWVzLgogIFNBVkVfQ0ZMQUdTPSIkQ0ZMQUdTIgogIENGTEFHUz0iJENGTEFHUyAtYmVsZiIK
ICB7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVy
IG5lZWRzIC1iZWxmIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNv
bXBpbGVyIG5lZWRzIC1iZWxmLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2x0X2N2X2Nj
X25lZWRzX2JlbGYrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRF
Q0hPX0MiID4mNgplbHNlCiAgYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29t
cGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19s
aW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdT
IGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29t
cGlsZXJfZ251CgogICAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVm
cy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5j
b25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KCmludAptYWlu
ICgpCnsKCiAgOwogIHJldHVybiAwOwp9Cl9BQ0VPRgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0
IGNvbmZ0ZXN0JGFjX2V4ZWV4dAppZiB7IChhY190cnk9IiRhY19saW5rIgpjYXNlICIoKCRhY190
cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikg
YWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzog
JGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2xpbmsiKSAyPmNvbmZ0ZXN0LmVyMQog
IGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJy
CiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH0g
JiYKCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBj
b25mdGVzdC5lcnInCiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxc
KikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2Fj
CmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2
YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCgkgeyBh
Y190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwogIHsgKGNhc2UgIigoJGFjX3RyeSIg
aW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190
cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNf
dHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwog
IGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNf
c3RhdHVzKTsgfTsgfTsgdGhlbgogIGx0X2N2X2NjX25lZWRzX2JlbGY9eWVzCmVsc2UKICBlY2hv
ICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0
LiRhY19leHQgPiY1CgoJbHRfY3ZfY2NfbmVlZHNfYmVsZj1ubwpmaQoKcm0gLWYgY29yZSBjb25m
dGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCiAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBj
b25mdGVzdC4kYWNfZXh0CiAgICAgYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNf
Y29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1Jwph
Y19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZM
QUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2Nf
Y29tcGlsZXJfZ251CgpmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9j
Y19uZWVkc19iZWxmIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGx0X2N2X2NjX25lZWRzX2JlbGYiID4m
NjsgfQogIGlmIHRlc3QgeCIkbHRfY3ZfY2NfbmVlZHNfYmVsZiIgIT0geCJ5ZXMiOyB0aGVuCiAg
ICAjIHRoaXMgaXMgcHJvYmFibHkgZ2NjIDIuOC4wLCBlZ2NzIDEuMCBvciBuZXdlcjsgbm8gbmVl
ZCBmb3IgLWJlbGYKICAgIENGTEFHUz0iJFNBVkVfQ0ZMQUdTIgogIGZpCiAgOzsKc3BhcmMqLSpz
b2xhcmlzKikKICAjIEZpbmQgb3V0IHdoaWNoIEFCSSB3ZSBhcmUgdXNpbmcuCiAgZWNobyAnaW50
IGk7JyA+IGNvbmZ0ZXN0LiRhY19leHQKICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5P
OiBcIiRhY19jb21waWxlXCIiKSA+JjUKICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQogIGFjX3N0
YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhlbgogICAgY2FzZSBgL3Vzci9iaW4vZmlsZSBjb25mdGVz
dC5vYCBpbgogICAgKjY0LWJpdCopCiAgICAgIGNhc2UgJGx0X2N2X3Byb2dfZ251X2xkIGluCiAg
ICAgIHllcyopIExEPSIke0xELWxkfSAtbSBlbGY2NF9zcGFyYyIgOzsKICAgICAgKikgICAgTEQ9
IiR7TEQtbGR9IC02NCIgOzsKICAgICAgZXNhYwogICAgICA7OwogICAgZXNhYwogIGZpCiAgcm0g
LXJmIGNvbmZ0ZXN0KgogIDs7CgoKZXNhYwoKbmVlZF9sb2Nrcz0iJGVuYWJsZV9saWJ0b29sX2xv
Y2siCgoKYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENDIC1j
ICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckQ0MgLW8g
Y29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRh
Y19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29tcGlsZXJfZ251Cnsg
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vz
c29yIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nl
c3Nvci4uLiAkRUNIT19DIiA+JjY7IH0KIyBPbiBTdW5zLCBzb21ldGltZXMgJENQUCBuYW1lcyBh
IGRpcmVjdG9yeS4KaWYgdGVzdCAtbiAiJENQUCIgJiYgdGVzdCAtZCAiJENQUCI7IHRoZW4KICBD
UFA9CmZpCmlmIHRlc3QgLXogIiRDUFAiOyB0aGVuCiAgaWYgdGVzdCAiJHthY19jdl9wcm9nX0NQ
UCtzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2
CmVsc2UKICAgICAgIyBEb3VibGUgcXVvdGVzIGJlY2F1c2UgQ1BQIG5lZWRzIHRvIGJlIGV4cGFu
ZGVkCiAgICBmb3IgQ1BQIGluICIkQ0MgLUUiICIkQ0MgLUUgLXRyYWRpdGlvbmFsLWNwcCIgIi9s
aWIvY3BwIgogICAgZG8KICAgICAgYWNfcHJlcHJvY19vaz1mYWxzZQpmb3IgYWNfY19wcmVwcm9j
X3dhcm5fZmxhZyBpbiAnJyB5ZXMKZG8KICAjIFVzZSBhIGhlYWRlciBmaWxlIHRoYXQgY29tZXMg
d2l0aCBnY2MsIHNvIGNvbmZpZ3VyaW5nIGdsaWJjCiAgIyB3aXRoIGEgZnJlc2ggY3Jvc3MtY29t
cGlsZXIgd29ya3MuCiAgIyBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1RE
Q19fIGlzIGRlZmluZWQsIHNpbmNlCiAgIyA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVz
dGFuZGluZyBjb21waWxlcnMuCiAgIyBPbiB0aGUgTmVYVCwgY2MgLUUgcnVucyB0aGUgY29kZSB0
aHJvdWdoIHRoZSBjb21waWxlcidzIHBhcnNlciwKICAjIG5vdCBqdXN0IHRocm91Z2ggY3BwLiAi
U3ludGF4IGVycm9yIiBpcyBoZXJlIHRvIGNhdGNoIHRoaXMgY2FzZS4KICBjYXQgPmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9BQ0VPRgpjYXQgY29uZmRlZnMu
aCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBl
bmQgY29uZmRlZnMuaC4gICovCiNpZmRlZiBfX1NURENfXwojIGluY2x1ZGUgPGxpbWl0cy5oPgoj
ZWxzZQojIGluY2x1ZGUgPGFzc2VydC5oPgojZW5kaWYKCQkgICAgIFN5bnRheCBlcnJvcgpfQUNF
T0YKaWYgeyAoYWNfdHJ5PSIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiCmNhc2UgIigoJGFjX3Ry
eSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBh
Y190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAk
YWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiKSAy
PmNvbmZ0ZXN0LmVyMQogIGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVy
MSA+Y29uZnRlc3QuZXJyCiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+
JjUKICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQg
JGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgogIGlmIHRlc3QgLXMgY29uZnRlc3QuZXJy
OyB0aGVuCiAgICBhY19jcHBfZXJyPSRhY19jX3ByZXByb2Nfd2Fybl9mbGFnCiAgICBhY19jcHBf
ZXJyPSRhY19jcHBfZXJyJGFjX2Nfd2Vycm9yX2ZsYWcKICBlbHNlCiAgICBhY19jcHBfZXJyPQog
IGZpCmVsc2UKICBhY19jcHBfZXJyPXllcwpmaQppZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7IHRo
ZW4KICA6CmVsc2UKICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQg
J3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CgogICMgQnJva2VuOiBmYWlscyBvbiB2YWxp
ZCBpbnB1dC4KY29udGludWUKZmkKCnJtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfZXh0
CgogICMgT0ssIHdvcmtzIG9uIHNhbmUgY2FzZXMuICBOb3cgY2hlY2sgd2hldGhlciBub25leGlz
dGVudCBoZWFkZXJzCiAgIyBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGhvdy4KICBjYXQgPmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9BQ0VPRgpjYXQgY29uZmRlZnMu
aCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBl
bmQgY29uZmRlZnMuaC4gICovCiNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpfQUNFT0YKaWYg
eyAoYWNfdHJ5PSIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiCmNhc2UgIigoJGFjX3RyeSIgaW4K
ICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlf
ZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5
X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiKSAyPmNvbmZ0
ZXN0LmVyMQogIGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29u
ZnRlc3QuZXJyCiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0
YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgogIGlmIHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVu
CiAgICBhY19jcHBfZXJyPSRhY19jX3ByZXByb2Nfd2Fybl9mbGFnCiAgICBhY19jcHBfZXJyPSRh
Y19jcHBfZXJyJGFjX2Nfd2Vycm9yX2ZsYWcKICBlbHNlCiAgICBhY19jcHBfZXJyPQogIGZpCmVs
c2UKICBhY19jcHBfZXJyPXllcwpmaQppZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7IHRoZW4KICAj
IEJyb2tlbjogc3VjY2VzcyBvbiBpbnZhbGlkIGlucHV0Lgpjb250aW51ZQplbHNlCiAgZWNobyAi
JGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4k
YWNfZXh0ID4mNQoKICAjIFBhc3NlcyBib3RoIHRlc3RzLgphY19wcmVwcm9jX29rPToKYnJlYWsK
ZmkKCnJtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfZXh0Cgpkb25lCiMgQmVjYXVzZSBv
ZiBgYnJlYWsnLCBfQUNfUFJFUFJPQ19JRkVMU0UncyBjbGVhbmluZyBjb2RlIHdhcyBza2lwcGVk
LgpybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAppZiAkYWNfcHJlcHJvY19vazsg
dGhlbgogIGJyZWFrCmZpCgogICAgZG9uZQogICAgYWNfY3ZfcHJvZ19DUFA9JENQUAoKZmkKICBD
UFA9JGFjX2N2X3Byb2dfQ1BQCmVsc2UKICBhY19jdl9wcm9nX0NQUD0kQ1BQCmZpCnsgZWNobyAi
JGFzX21lOiRMSU5FTk86IHJlc3VsdDogJENQUCIgPiY1CmVjaG8gIiR7RUNIT19UfSRDUFAiID4m
NjsgfQphY19wcmVwcm9jX29rPWZhbHNlCmZvciBhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluICcn
IHllcwpkbwogICMgVXNlIGEgaGVhZGVyIGZpbGUgdGhhdCBjb21lcyB3aXRoIGdjYywgc28gY29u
ZmlndXJpbmcgZ2xpYmMKICAjIHdpdGggYSBmcmVzaCBjcm9zcy1jb21waWxlciB3b3Jrcy4KICAj
IFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwg
c2luY2UKICAjIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVy
cy4KICAjIE9uIHRoZSBOZVhULCBjYyAtRSBydW5zIHRoZSBjb2RlIHRocm91Z2ggdGhlIGNvbXBp
bGVyJ3MgcGFyc2VyLAogICMgbm90IGp1c3QgdGhyb3VnaCBjcHAuICJTeW50YXggZXJyb3IiIGlz
IGhlcmUgdG8gY2F0Y2ggdGhpcyBjYXNlLgogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VP
RgovKiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFj
X2V4dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KI2lmZGVmIF9fU1REQ19fCiMgaW5jbHVkZSA8bGltaXRzLmg+CiNlbHNlCiMgaW5jbHVkZSA8
YXNzZXJ0Lmg+CiNlbmRpZgoJCSAgICAgU3ludGF4IGVycm9yCl9BQ0VPRgppZiB7IChhY190cnk9
IiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIKY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAq
XGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190
cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikg
PiY1CiAgKGV2YWwgIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+Y29uZnRlc3QuZXIxCiAg
YWNfc3RhdHVzPSQ/CiAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIK
ICBybSAtZiBjb25mdGVzdC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+
L2Rldi9udWxsOyB0aGVuCiAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KICAgIGFjX2Nw
cF9lcnI9JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcKICAgIGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIk
YWNfY193ZXJyb3JfZmxhZwogIGVsc2UKICAgIGFjX2NwcF9lcnI9CiAgZmkKZWxzZQogIGFjX2Nw
cF9lcnI9eWVzCmZpCmlmIHRlc3QgLXogIiRhY19jcHBfZXJyIjsgdGhlbgogIDoKZWxzZQogIGVj
aG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRl
c3QuJGFjX2V4dCA+JjUKCiAgIyBCcm9rZW46IGZhaWxzIG9uIHZhbGlkIGlucHV0Lgpjb250aW51
ZQpmaQoKcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19leHQKCiAgIyBPSywgd29ya3Mg
b24gc2FuZSBjYXNlcy4gIE5vdyBjaGVjayB3aGV0aGVyIG5vbmV4aXN0ZW50IGhlYWRlcnMKICAj
IGNhbiBiZSBkZXRlY3RlZCBhbmQgaG93LgogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VP
RgovKiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFj
X2V4dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+Cl9BQ0VPRgppZiB7IChhY190cnk9IiRhY19j
cHAgY29uZnRlc3QuJGFjX2V4dCIKY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwg
KlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owpl
c2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAg
KGV2YWwgIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3Rh
dHVzPSQ/CiAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAt
ZiBjb25mdGVzdC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9u
dWxsOyB0aGVuCiAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KICAgIGFjX2NwcF9lcnI9
JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcKICAgIGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY193
ZXJyb3JfZmxhZwogIGVsc2UKICAgIGFjX2NwcF9lcnI9CiAgZmkKZWxzZQogIGFjX2NwcF9lcnI9
eWVzCmZpCmlmIHRlc3QgLXogIiRhY19jcHBfZXJyIjsgdGhlbgogICMgQnJva2VuOiBzdWNjZXNz
IG9uIGludmFsaWQgaW5wdXQuCmNvbnRpbnVlCmVsc2UKICBlY2hvICIkYXNfbWU6IGZhaWxlZCBw
cm9ncmFtIHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CgogICMg
UGFzc2VzIGJvdGggdGVzdHMuCmFjX3ByZXByb2Nfb2s9OgpicmVhawpmaQoKcm0gLWYgY29uZnRl
c3QuZXJyIGNvbmZ0ZXN0LiRhY19leHQKCmRvbmUKIyBCZWNhdXNlIG9mIGBicmVhaycsIF9BQ19Q
UkVQUk9DX0lGRUxTRSdzIGNsZWFuaW5nIGNvZGUgd2FzIHNraXBwZWQuCnJtIC1mIGNvbmZ0ZXN0
LmVyciBjb25mdGVzdC4kYWNfZXh0CmlmICRhY19wcmVwcm9jX29rOyB0aGVuCiAgOgplbHNlCiAg
eyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogQyBwcmVwcm9jZXNzb3IgXCIkQ1BQXCIg
ZmFpbHMgc2FuaXR5IGNoZWNrClNlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+
JjUKZWNobyAiJGFzX21lOiBlcnJvcjogQyBwcmVwcm9jZXNzb3IgXCIkQ1BQXCIgZmFpbHMgc2Fu
aXR5IGNoZWNrClNlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+JjI7fQogICB7
IChleGl0IDEpOyBleGl0IDE7IH07IH0KZmkKCmFjX2V4dD1jCmFjX2NwcD0nJENQUCAkQ1BQRkxB
R1MnCmFjX2NvbXBpbGU9JyRDQyAtYyAkQ0ZMQUdTICRDUFBGTEFHUyBjb25mdGVzdC4kYWNfZXh0
ID4mNScKYWNfbGluaz0nJENDIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ0ZMQUdTICRDUFBGTEFH
UyAkTERGTEFHUyBjb25mdGVzdC4kYWNfZXh0ICRMSUJTID4mNScKYWNfY29tcGlsZXJfZ251PSRh
Y19jdl9jX2NvbXBpbGVyX2dudQoKCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZv
ciBBTlNJIEMgaGVhZGVyIGZpbGVzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgQU5T
SSBDIGhlYWRlciBmaWxlcy4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9oZWFk
ZXJfc3RkYytzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9f
QyIgPiY2CmVsc2UKICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMu
aC4gICovCl9BQ0VPRgpjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29u
ZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCiNpbmNsdWRlIDxz
dGRsaWIuaD4KI2luY2x1ZGUgPHN0ZGFyZy5oPgojaW5jbHVkZSA8c3RyaW5nLmg+CiNpbmNsdWRl
IDxmbG9hdC5oPgoKaW50Cm1haW4gKCkKewoKICA7CiAgcmV0dXJuIDA7Cn0KX0FDRU9GCnJtIC1m
IGNvbmZ0ZXN0LiRhY19vYmpleHQKaWYgeyAoYWNfdHJ5PSIkYWNfY29tcGlsZSIKY2FzZSAiKCgk
YWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7Owog
ICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5F
Tk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlIikgMj5jb25mdGVz
dC5lcjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0
ZXN0LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQogIGNhdCBjb25mdGVzdC5lcnIgPiY1CiAgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0
dXMpOyB9ICYmCgkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxg
KiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5
OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4m
NQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTok
TElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAm
JgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgk
YWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7Owog
ICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5F
Tk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3Rh
dHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChl
eGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgYWNfY3ZfaGVhZGVyX3N0ZGM9eWVzCmVsc2UK
ICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNv
bmZ0ZXN0LiRhY19leHQgPiY1CgoJYWNfY3ZfaGVhZGVyX3N0ZGM9bm8KZmkKCnJtIC1mIGNvcmUg
Y29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAoKaWYgdGVz
dCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KICAjIFN1bk9TIDQueCBzdHJpbmcuaCBk
b2VzIG5vdCBkZWNsYXJlIG1lbSosIGNvbnRyYXJ5IHRvIEFOU0kuCiAgY2F0ID5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpfQUNFT0YKY2F0IGNvbmZkZWZzLmgg
Pj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogZW5k
IGNvbmZkZWZzLmguICAqLwojaW5jbHVkZSA8c3RyaW5nLmg+CgpfQUNFT0YKaWYgKGV2YWwgIiRh
Y19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+JjUgfAogICRFR1JFUCAibWVtY2hyIiA+L2Rldi9u
dWxsIDI+JjE7IHRoZW4KICA6CmVsc2UKICBhY19jdl9oZWFkZXJfc3RkYz1ubwpmaQpybSAtZiBj
b25mdGVzdCoKCmZpCgppZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3RkYyA9IHllczsgdGhlbgogICMg
SVNDIDIuMC4yIHN0ZGxpYi5oIGRvZXMgbm90IGRlY2xhcmUgZnJlZSwgY29udHJhcnkgdG8gQU5T
SS4KICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9B
Q0VPRgpjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFj
X2V4dCA8PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCiNpbmNsdWRlIDxzdGRsaWIuaD4K
Cl9BQ0VPRgppZiAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj4mNSB8CiAgJEVH
UkVQICJmcmVlIiA+L2Rldi9udWxsIDI+JjE7IHRoZW4KICA6CmVsc2UKICBhY19jdl9oZWFkZXJf
c3RkYz1ubwpmaQpybSAtZiBjb25mdGVzdCoKCmZpCgppZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3Rk
YyA9IHllczsgdGhlbgogICMgL2Jpbi9jYyBpbiBJcml4LTQuMC41IGdldHMgbm9uLUFOU0kgY3R5
cGUgbWFjcm9zIHVubGVzcyB1c2luZyAtYW5zaS4KICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5n
IiA9IHllczsgdGhlbgogIDoKZWxzZQogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgov
KiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4
dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8K
I2luY2x1ZGUgPGN0eXBlLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2lmICgoJyAnICYgMHgwRkYp
ID09IDB4MDIwKQojIGRlZmluZSBJU0xPV0VSKGMpICgnYScgPD0gKGMpICYmIChjKSA8PSAneicp
CiMgZGVmaW5lIFRPVVBQRVIoYykgKElTTE9XRVIoYykgPyAnQScgKyAoKGMpIC0gJ2EnKSA6IChj
KSkKI2Vsc2UKIyBkZWZpbmUgSVNMT1dFUihjKSBcCgkJICAgKCgnYScgPD0gKGMpICYmIChjKSA8
PSAnaScpIFwKCQkgICAgIHx8ICgnaicgPD0gKGMpICYmIChjKSA8PSAncicpIFwKCQkgICAgIHx8
ICgncycgPD0gKGMpICYmIChjKSA8PSAneicpKQojIGRlZmluZSBUT1VQUEVSKGMpIChJU0xPV0VS
KGMpID8gKChjKSB8IDB4NDApIDogKGMpKQojZW5kaWYKCiNkZWZpbmUgWE9SKGUsIGYpICgoKGUp
ICYmICEoZikpIHx8ICghKGUpICYmIChmKSkpCmludAptYWluICgpCnsKICBpbnQgaTsKICBmb3Ig
KGkgPSAwOyBpIDwgMjU2OyBpKyspCiAgICBpZiAoWE9SIChpc2xvd2VyIChpKSwgSVNMT1dFUiAo
aSkpCgl8fCB0b3VwcGVyIChpKSAhPSBUT1VQUEVSIChpKSkKICAgICAgcmV0dXJuIDI7CiAgcmV0
dXJuIDA7Cn0KX0FDRU9GCnJtIC1mIGNvbmZ0ZXN0JGFjX2V4ZWV4dAppZiB7IChhY190cnk9IiRh
Y19saW5rIgpjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlf
ZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNo
byBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2xp
bmsiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9ICYmIHsgYWNfdHJ5PScuL2NvbmZ0
ZXN0JGFjX2V4ZWV4dCcKICB7IChjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAq
XFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVz
YWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAo
ZXZhbCAiJGFjX3RyeSIpIDI+JjUKICBhY19zdGF0dXM9JD8KICBlY2hvICIkYXNfbWU6JExJTkVO
TzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4K
ICA6CmVsc2UKICBlY2hvICIkYXNfbWU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVzICRhY19z
dGF0dXMiID4mNQplY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQgJ3Mv
Xi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CgooIGV4aXQgJGFjX3N0YXR1cyApCmFjX2N2X2hl
YWRlcl9zdGRjPW5vCmZpCnJtIC1mIGNvcmUgKi5jb3JlIGNvcmUuY29uZnRlc3QuKiBnbW9uLm91
dCBiYi5vdXQgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3Qu
JGFjX2V4dApmaQoKCmZpCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2
X2hlYWRlcl9zdGRjIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl9zdGRjIiA+JjY7
IH0KaWYgdGVzdCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KCmNhdCA+PmNvbmZkZWZz
LmggPDxcX0FDRU9GCiNkZWZpbmUgU1REQ19IRUFERVJTIDEKX0FDRU9GCgpmaQoKIyBPbiBJUklY
IDUuMywgc3lzL3R5cGVzIGFuZCBpbnR0eXBlcy5oIGFyZSBjb25mbGljdGluZy4KCgoKCgoKCgoK
Zm9yIGFjX2hlYWRlciBpbiBzeXMvdHlwZXMuaCBzeXMvc3RhdC5oIHN0ZGxpYi5oIHN0cmluZy5o
IG1lbW9yeS5oIHN0cmluZ3MuaCBcCgkJICBpbnR0eXBlcy5oIHN0ZGludC5oIHVuaXN0ZC5oCmRv
CmFzX2FjX0hlYWRlcj1gZWNobyAiYWNfY3ZfaGVhZGVyXyRhY19oZWFkZXIiIHwgJGFzX3RyX3No
YAp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFjX2hlYWRlciIgPiY1CmVj
aG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY19oZWFkZXIuLi4gJEVDSE9fQyIgPiY2OyB9Cmlm
IHsgYXNfdmFyPSRhc19hY19IZWFkZXI7IGV2YWwgInRlc3QgXCJcJHskYXNfdmFyK3NldH1cIiA9
IHNldCI7IH07IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNl
CiAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpfQUNF
T0YKY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRhY19l
eHQgPDxfQUNFT0YKLyogZW5kIGNvbmZkZWZzLmguICAqLwokYWNfaW5jbHVkZXNfZGVmYXVsdAoK
I2luY2x1ZGUgPCRhY19oZWFkZXI+Cl9BQ0VPRgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0Cmlm
IHsgKGFjX3RyeT0iJGFjX2NvbXBpbGUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxg
KiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5
OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4m
NQogIChldmFsICIkYWNfY29tcGlsZSIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAg
Z3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVz
dC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgoJIHsgYWNfdHJ5PSd0
ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKICB7
IChjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1c
JGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwk
YXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX3RyeSIpIDI+
JjUKICBhY19zdGF0dXM9JD8KICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKCSB7IGFjX3RyeT0ndGVzdCAtcyBj
b25mdGVzdC4kYWNfb2JqZXh0JwogIHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxg
KiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5
OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4m
NQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTok
TElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsg
dGhlbgogIGV2YWwgIiRhc19hY19IZWFkZXI9eWVzIgplbHNlCiAgZWNobyAiJGFzX21lOiBmYWls
ZWQgcHJvZ3JhbSB3YXM6IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQoK
CWV2YWwgIiRhc19hY19IZWFkZXI9bm8iCmZpCgpybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25m
dGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKZmkKYWNfcmVzPWBldmFsIGVjaG8gJyR7
JyRhc19hY19IZWFkZXInfSdgCgkgICAgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkYWNfcmVzIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX3JlcyIgPiY2OyB9CmlmIHRlc3QgYGV2
YWwgZWNobyAnJHsnJGFzX2FjX0hlYWRlcid9J2AgPSB5ZXM7IHRoZW4KICBjYXQgPj5jb25mZGVm
cy5oIDw8X0FDRU9GCiNkZWZpbmUgYGVjaG8gIkhBVkVfJGFjX2hlYWRlciIgfCAkYXNfdHJfY3Bw
YCAxCl9BQ0VPRgoKZmkKCmRvbmUKCgoKZm9yIGFjX2hlYWRlciBpbiBkbGZjbi5oCmRvCmFzX2Fj
X0hlYWRlcj1gZWNobyAiYWNfY3ZfaGVhZGVyXyRhY19oZWFkZXIiIHwgJGFzX3RyX3NoYAppZiB7
IGFzX3Zhcj0kYXNfYWNfSGVhZGVyOyBldmFsICJ0ZXN0IFwiXCR7JGFzX3ZhcitzZXR9XCIgPSBz
ZXQiOyB9OyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY19o
ZWFkZXIiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNfaGVhZGVyLi4uICRFQ0hP
X0MiID4mNjsgfQppZiB7IGFzX3Zhcj0kYXNfYWNfSGVhZGVyOyBldmFsICJ0ZXN0IFwiXCR7JGFz
X3ZhcitzZXR9XCIgPSBzZXQiOyB9OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNI
T19DIiA+JjYKZmkKYWNfcmVzPWBldmFsIGVjaG8gJyR7JyRhc19hY19IZWFkZXInfSdgCgkgICAg
ICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfcmVzIiA+JjUKZWNobyAiJHtF
Q0hPX1R9JGFjX3JlcyIgPiY2OyB9CmVsc2UKICAjIElzIHRoZSBoZWFkZXIgY29tcGlsYWJsZT8K
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgJGFjX2hlYWRlciB1c2FiaWxpdHkiID4m
NQplY2hvICRFQ0hPX04gImNoZWNraW5nICRhY19oZWFkZXIgdXNhYmlsaXR5Li4uICRFQ0hPX0Mi
ID4mNjsgfQpjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICov
Cl9BQ0VPRgpjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3Qu
JGFjX2V4dCA8PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCiRhY19pbmNsdWRlc19kZWZh
dWx0CiNpbmNsdWRlIDwkYWNfaGVhZGVyPgpfQUNFT0YKcm0gLWYgY29uZnRlc3QuJGFjX29iamV4
dAppZiB7IChhY190cnk9IiRhY19jb21waWxlIgpjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8
ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFj
X3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIi
KSA+JjUKICAoZXZhbCAiJGFjX2NvbXBpbGUiKSAyPmNvbmZ0ZXN0LmVyMQogIGFjX3N0YXR1cz0k
PwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgcm0gLWYgY29u
ZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKCSB7IGFjX3Ry
eT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIn
CiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2Vj
aG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8g
XCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY190cnki
KSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCgkgeyBhY190cnk9J3Rlc3Qg
LXMgY29uZnRlc3QuJGFjX29iamV4dCcKICB7IChjYXNlICIoKCRhY190cnkiIGluCiAgKlwiKiB8
ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5X2VjaG89JGFj
X3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3RyeV9lY2hvXCIi
KSA+JjUKICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKICBhY19zdGF0dXM9JD8KICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH07
IH07IHRoZW4KICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCmVsc2UKICBlY2hvICIkYXNfbWU6IGZh
aWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1
CgoJYWNfaGVhZGVyX2NvbXBpbGVyPW5vCmZpCgpybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25m
dGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiAkYWNfaGVhZGVyX2NvbXBpbGVyIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRl
cl9jb21waWxlciIgPiY2OyB9CgojIElzIHRoZSBoZWFkZXIgcHJlc2VudD8KeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogY2hlY2tpbmcgJGFjX2hlYWRlciBwcmVzZW5jZSIgPiY1CmVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgJGFjX2hlYWRlciBwcmVzZW5jZS4uLiAkRUNIT19DIiA+JjY7IH0KY2F0ID5j
b25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGNvbmZkZWZzLmguICAqLwpfQUNFT0YKY2F0IGNv
bmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CmNhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNF
T0YKLyogZW5kIGNvbmZkZWZzLmguICAqLwojaW5jbHVkZSA8JGFjX2hlYWRlcj4KX0FDRU9GCmlm
IHsgKGFjX3RyeT0iJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IgpjYXNlICIoKCRhY190cnkiIGlu
CiAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CiAgKikgYWNfdHJ5
X2VjaG89JGFjX3RyeTs7CmVzYWMKZXZhbCAiZWNobyBcIlwkYXNfbWU6JExJTkVOTzogJGFjX3Ry
eV9lY2hvXCIiKSA+JjUKICAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj5jb25m
dGVzdC5lcjEKICBhY19zdGF0dXM9JD8KICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNv
bmZ0ZXN0LmVycgogIHJtIC1mIGNvbmZ0ZXN0LmVyMQogIGNhdCBjb25mdGVzdC5lcnIgPiY1CiAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19z
dGF0dXMpOyB9ID4vZGV2L251bGw7IHRoZW4KICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhl
bgogICAgYWNfY3BwX2Vycj0kYWNfY19wcmVwcm9jX3dhcm5fZmxhZwogICAgYWNfY3BwX2Vycj0k
YWNfY3BwX2VyciRhY19jX3dlcnJvcl9mbGFnCiAgZWxzZQogICAgYWNfY3BwX2Vycj0KICBmaQpl
bHNlCiAgYWNfY3BwX2Vycj15ZXMKZmkKaWYgdGVzdCAteiAiJGFjX2NwcF9lcnIiOyB0aGVuCiAg
YWNfaGVhZGVyX3ByZXByb2M9eWVzCmVsc2UKICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFt
IHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CgogIGFjX2hlYWRl
cl9wcmVwcm9jPW5vCmZpCgpybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAp7IGVj
aG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19oZWFkZXJfcHJlcHJvYyIgPiY1CmVjaG8g
IiR7RUNIT19UfSRhY19oZWFkZXJfcHJlcHJvYyIgPiY2OyB9CgojIFNvPyAgV2hhdCBhYm91dCB0
aGlzIGhlYWRlcj8KY2FzZSAkYWNfaGVhZGVyX2NvbXBpbGVyOiRhY19oZWFkZXJfcHJlcHJvYzok
YWNfY19wcmVwcm9jX3dhcm5fZmxhZyBpbgogIHllczpubzogKQogICAgeyBlY2hvICIkYXNfbWU6
JExJTkVOTzogV0FSTklORzogJGFjX2hlYWRlcjogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCBy
ZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiY1CmVjaG8gIiRhc19tZTogV0FSTklORzog
JGFjX2hlYWRlcjogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJl
cHJvY2Vzc29yISIgPiYyO30KICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6ICRh
Y19oZWFkZXI6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGlsZXIncyByZXN1bHQiID4mNQplY2hv
ICIkYXNfbWU6IFdBUk5JTkc6ICRhY19oZWFkZXI6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGls
ZXIncyByZXN1bHQiID4mMjt9CiAgICBhY19oZWFkZXJfcHJlcHJvYz15ZXMKICAgIDs7CiAgbm86
eWVzOiogKQogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogJGFjX2hlYWRlcjog
cHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBpbGVkIiA+JjUKZWNobyAiJGFzX21lOiBXQVJOSU5H
OiAkYWNfaGVhZGVyOiBwcmVzZW50IGJ1dCBjYW5ub3QgYmUgY29tcGlsZWQiID4mMjt9CiAgICB7
IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiAkYWNfaGVhZGVyOiAgICAgY2hlY2sgZm9y
IG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjUKZWNobyAiJGFzX21lOiBXQVJOSU5H
OiAkYWNfaGVhZGVyOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/
IiA+JjI7fQogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogJGFjX2hlYWRlcjog
c2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9uIiA+JjUKZWNobyAiJGFzX21lOiBXQVJOSU5H
OiAkYWNfaGVhZGVyOiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24iID4mMjt9CiAgICB7
IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiAkYWNfaGVhZGVyOiAgICAgc2VjdGlvbiBc
IlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjUKZWNobyAiJGFzX21lOiBXQVJO
SU5HOiAkYWNfaGVhZGVyOiAgICAgc2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21w
aWxlZFwiIiA+JjI7fQogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogJGFjX2hl
YWRlcjogcHJvY2VlZGluZyB3aXRoIHRoZSBwcmVwcm9jZXNzb3IncyByZXN1bHQiID4mNQplY2hv
ICIkYXNfbWU6IFdBUk5JTkc6ICRhY19oZWFkZXI6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJv
Y2Vzc29yJ3MgcmVzdWx0IiA+JjI7fQogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklO
RzogJGFjX2hlYWRlcjogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVj
ZWRlbmNlIiA+JjUKZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfaGVhZGVyOiBpbiB0aGUgZnV0
dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4mMjt9CiAgICAoIGNhdCA8
PFxfQVNCT1gKIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIFJl
cG9ydCB0aGlzIHRvIG5lbWV0aGxAZ3lvcnNwb3N0YS5odSAjIwojIyAtLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKX0FTQk9YCiAgICAgKSB8IHNlZCAicy9eLyRhc19tZTog
V0FSTklORzogICAgIC8iID4mMgogICAgOzsKZXNhYwp7IGVjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyBmb3IgJGFjX2hlYWRlciIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRh
Y19oZWFkZXIuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHsgYXNfdmFyPSRhc19hY19IZWFkZXI7IGV2
YWwgInRlc3QgXCJcJHskYXNfdmFyK3NldH1cIiA9IHNldCI7IH07IHRoZW4KICBlY2hvICRFQ0hP
X04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgZXZhbCAiJGFzX2FjX0hlYWRlcj1cJGFj
X2hlYWRlcl9wcmVwcm9jIgpmaQphY19yZXM9YGV2YWwgZWNobyAnJHsnJGFzX2FjX0hlYWRlcid9
J2AKCSAgICAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19yZXMiID4mNQpl
Y2hvICIke0VDSE9fVH0kYWNfcmVzIiA+JjY7IH0KCmZpCmlmIHRlc3QgYGV2YWwgZWNobyAnJHsn
JGFzX2FjX0hlYWRlcid9J2AgPSB5ZXM7IHRoZW4KICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9G
CiNkZWZpbmUgYGVjaG8gIkhBVkVfJGFjX2hlYWRlciIgfCAkYXNfdHJfY3BwYCAxCl9BQ0VPRgoK
ZmkKCmRvbmUKCgoKaWYgdGVzdCAtbiAiJENYWCIgJiYgKCB0ZXN0ICJYJENYWCIgIT0gIlhubyIg
JiYKICAgICggKHRlc3QgIlgkQ1hYIiA9ICJYZysrIiAmJiBgZysrIC12ID4vZGV2L251bGwgMj4m
MWAgKSB8fAogICAgKHRlc3QgIlgkQ1hYIiAhPSAiWGcrKyIpKSkgOyB0aGVuCiAgYWNfZXh0PWNw
cAphY19jcHA9JyRDWFhDUFAgJENQUEZMQUdTJwphY19jb21waWxlPSckQ1hYIC1jICRDWFhGTEFH
UyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUnCmFjX2xpbms9JyRDWFggLW8gY29uZnRl
c3QkYWNfZXhlZXh0ICRDWFhGTEFHUyAkQ1BQRkxBR1MgJExERkxBR1MgY29uZnRlc3QuJGFjX2V4
dCAkTElCUyA+JjUnCmFjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY3h4X2NvbXBpbGVyX2dudQp7IGVj
aG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDKysgcHJlcHJvY2Vz
c29yIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDKysgcHJlcHJv
Y2Vzc29yLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0IC16ICIkQ1hYQ1BQIjsgdGhlbgogIGlm
IHRlc3QgIiR7YWNfY3ZfcHJvZ19DWFhDUFArc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hP
X04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgICAgICMgRG91YmxlIHF1b3RlcyBiZWNh
dXNlIENYWENQUCBuZWVkcyB0byBiZSBleHBhbmRlZAogICAgZm9yIENYWENQUCBpbiAiJENYWCAt
RSIgIi9saWIvY3BwIgogICAgZG8KICAgICAgYWNfcHJlcHJvY19vaz1mYWxzZQpmb3IgYWNfY3h4
X3ByZXByb2Nfd2Fybl9mbGFnIGluICcnIHllcwpkbwogICMgVXNlIGEgaGVhZGVyIGZpbGUgdGhh
dCBjb21lcyB3aXRoIGdjYywgc28gY29uZmlndXJpbmcgZ2xpYmMKICAjIHdpdGggYSBmcmVzaCBj
cm9zcy1jb21waWxlciB3b3Jrcy4KICAjIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4g
aWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKICAjIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4g
b24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4KICAjIE9uIHRoZSBOZVhULCBjYyAtRSBydW5zIHRo
ZSBjb2RlIHRocm91Z2ggdGhlIGNvbXBpbGVyJ3MgcGFyc2VyLAogICMgbm90IGp1c3QgdGhyb3Vn
aCBjcHAuICJTeW50YXggZXJyb3IiIGlzIGhlcmUgdG8gY2F0Y2ggdGhpcyBjYXNlLgogIGNhdCA+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVmcy5oLiAgKi8KX0FDRU9GCmNhdCBj
b25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FD
RU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KI2lmZGVmIF9fU1REQ19fCiMgaW5jbHVkZSA8bGlt
aXRzLmg+CiNlbHNlCiMgaW5jbHVkZSA8YXNzZXJ0Lmg+CiNlbmRpZgoJCSAgICAgU3ludGF4IGVy
cm9yCl9BQ0VPRgppZiB7IChhY190cnk9IiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIKY2FzZSAi
KCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7
OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRM
SU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jcHAgY29uZnRlc3QuJGFj
X2V4dCIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAgZ3JlcCAtdiAnXiAqKycgY29u
ZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVzdC5lcjEKICBjYXQgY29uZnRl
c3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
ICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9udWxsOyB0aGVuCiAgaWYgdGVzdCAtcyBjb25m
dGVzdC5lcnI7IHRoZW4KICAgIGFjX2NwcF9lcnI9JGFjX2N4eF9wcmVwcm9jX3dhcm5fZmxhZwog
ICAgYWNfY3BwX2Vycj0kYWNfY3BwX2VyciRhY19jeHhfd2Vycm9yX2ZsYWcKICBlbHNlCiAgICBh
Y19jcHBfZXJyPQogIGZpCmVsc2UKICBhY19jcHBfZXJyPXllcwpmaQppZiB0ZXN0IC16ICIkYWNf
Y3BwX2VyciI7IHRoZW4KICA6CmVsc2UKICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdh
czoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CgogICMgQnJva2VuOiBm
YWlscyBvbiB2YWxpZCBpbnB1dC4KY29udGludWUKZmkKCnJtIC1mIGNvbmZ0ZXN0LmVyciBjb25m
dGVzdC4kYWNfZXh0CgogICMgT0ssIHdvcmtzIG9uIHNhbmUgY2FzZXMuICBOb3cgY2hlY2sgd2hl
dGhlciBub25leGlzdGVudCBoZWFkZXJzCiAgIyBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGhvdy4KICBj
YXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRlZnMuaC4gICovCl9BQ0VPRgpj
YXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8
PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCiNpbmNsdWRlIDxhY19ub25leGlzdGVudC5o
PgpfQUNFT0YKaWYgeyAoYWNfdHJ5PSIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiCmNhc2UgIigo
JGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsK
ICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElO
RU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19l
eHQiKSAyPmNvbmZ0ZXN0LmVyMQogIGFjX3N0YXR1cz0kPwogIGdyZXAgLXYgJ14gKisnIGNvbmZ0
ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgcm0gLWYgY29uZnRlc3QuZXIxCiAgY2F0IGNvbmZ0ZXN0
LmVyciA+JjUKICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAg
KGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgogIGlmIHRlc3QgLXMgY29uZnRl
c3QuZXJyOyB0aGVuCiAgICBhY19jcHBfZXJyPSRhY19jeHhfcHJlcHJvY193YXJuX2ZsYWcKICAg
IGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY3h4X3dlcnJvcl9mbGFnCiAgZWxzZQogICAgYWNf
Y3BwX2Vycj0KICBmaQplbHNlCiAgYWNfY3BwX2Vycj15ZXMKZmkKaWYgdGVzdCAteiAiJGFjX2Nw
cF9lcnIiOyB0aGVuCiAgIyBCcm9rZW46IHN1Y2Nlc3Mgb24gaW52YWxpZCBpbnB1dC4KY29udGlu
dWUKZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9e
L3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCiAgIyBQYXNzZXMgYm90aCB0ZXN0cy4KYWNfcHJl
cHJvY19vaz06CmJyZWFrCmZpCgpybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAoK
ZG9uZQojIEJlY2F1c2Ugb2YgYGJyZWFrJywgX0FDX1BSRVBST0NfSUZFTFNFJ3MgY2xlYW5pbmcg
Y29kZSB3YXMgc2tpcHBlZC4Kcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19leHQKaWYg
JGFjX3ByZXByb2Nfb2s7IHRoZW4KICBicmVhawpmaQoKICAgIGRvbmUKICAgIGFjX2N2X3Byb2df
Q1hYQ1BQPSRDWFhDUFAKCmZpCiAgQ1hYQ1BQPSRhY19jdl9wcm9nX0NYWENQUAplbHNlCiAgYWNf
Y3ZfcHJvZ19DWFhDUFA9JENYWENQUApmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6
ICRDWFhDUFAiID4mNQplY2hvICIke0VDSE9fVH0kQ1hYQ1BQIiA+JjY7IH0KYWNfcHJlcHJvY19v
az1mYWxzZQpmb3IgYWNfY3h4X3ByZXByb2Nfd2Fybl9mbGFnIGluICcnIHllcwpkbwogICMgVXNl
IGEgaGVhZGVyIGZpbGUgdGhhdCBjb21lcyB3aXRoIGdjYywgc28gY29uZmlndXJpbmcgZ2xpYmMK
ICAjIHdpdGggYSBmcmVzaCBjcm9zcy1jb21waWxlciB3b3Jrcy4KICAjIFByZWZlciA8bGltaXRz
Lmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKICAjIDxsaW1p
dHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4KICAjIE9uIHRoZSBO
ZVhULCBjYyAtRSBydW5zIHRoZSBjb2RlIHRocm91Z2ggdGhlIGNvbXBpbGVyJ3MgcGFyc2VyLAog
ICMgbm90IGp1c3QgdGhyb3VnaCBjcHAuICJTeW50YXggZXJyb3IiIGlzIGhlcmUgdG8gY2F0Y2gg
dGhpcyBjYXNlLgogIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBjb25mZGVmcy5o
LiAgKi8KX0FDRU9GCmNhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dApjYXQgPj5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KI2lmZGVmIF9fU1RE
Q19fCiMgaW5jbHVkZSA8bGltaXRzLmg+CiNlbHNlCiMgaW5jbHVkZSA8YXNzZXJ0Lmg+CiNlbmRp
ZgoJCSAgICAgU3ludGF4IGVycm9yCl9BQ0VPRgppZiB7IChhY190cnk9IiRhY19jcHAgY29uZnRl
c3QuJGFjX2V4dCIKY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNf
dHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwg
ImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRh
Y19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAg
Z3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVz
dC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9udWxsOyB0aGVu
CiAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KICAgIGFjX2NwcF9lcnI9JGFjX2N4eF9w
cmVwcm9jX3dhcm5fZmxhZwogICAgYWNfY3BwX2Vycj0kYWNfY3BwX2VyciRhY19jeHhfd2Vycm9y
X2ZsYWcKICBlbHNlCiAgICBhY19jcHBfZXJyPQogIGZpCmVsc2UKICBhY19jcHBfZXJyPXllcwpm
aQppZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7IHRoZW4KICA6CmVsc2UKICBlY2hvICIkYXNfbWU6
IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQpzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQg
PiY1CgogICMgQnJva2VuOiBmYWlscyBvbiB2YWxpZCBpbnB1dC4KY29udGludWUKZmkKCnJtIC1m
IGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfZXh0CgogICMgT0ssIHdvcmtzIG9uIHNhbmUgY2Fz
ZXMuICBOb3cgY2hlY2sgd2hldGhlciBub25leGlzdGVudCBoZWFkZXJzCiAgIyBjYW4gYmUgZGV0
ZWN0ZWQgYW5kIGhvdy4KICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLyogY29uZmRl
ZnMuaC4gICovCl9BQ0VPRgpjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKY2F0ID4+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgovKiBlbmQgY29uZmRlZnMuaC4gICovCiNpbmNsdWRl
IDxhY19ub25leGlzdGVudC5oPgpfQUNFT0YKaWYgeyAoYWNfdHJ5PSIkYWNfY3BwIGNvbmZ0ZXN0
LiRhY19leHQiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3Ry
eV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJl
Y2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNf
Y3BwIGNvbmZ0ZXN0LiRhY19leHQiKSAyPmNvbmZ0ZXN0LmVyMQogIGFjX3N0YXR1cz0kPwogIGdy
ZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgcm0gLWYgY29uZnRlc3Qu
ZXIxCiAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0g
JGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgog
IGlmIHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVuCiAgICBhY19jcHBfZXJyPSRhY19jeHhfcHJl
cHJvY193YXJuX2ZsYWcKICAgIGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY3h4X3dlcnJvcl9m
bGFnCiAgZWxzZQogICAgYWNfY3BwX2Vycj0KICBmaQplbHNlCiAgYWNfY3BwX2Vycj15ZXMKZmkK
aWYgdGVzdCAteiAiJGFjX2NwcF9lcnIiOyB0aGVuCiAgIyBCcm9rZW46IHN1Y2Nlc3Mgb24gaW52
YWxpZCBpbnB1dC4KY29udGludWUKZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0g
d2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCiAgIyBQYXNzZXMg
Ym90aCB0ZXN0cy4KYWNfcHJlcHJvY19vaz06CmJyZWFrCmZpCgpybSAtZiBjb25mdGVzdC5lcnIg
Y29uZnRlc3QuJGFjX2V4dAoKZG9uZQojIEJlY2F1c2Ugb2YgYGJyZWFrJywgX0FDX1BSRVBST0Nf
SUZFTFNFJ3MgY2xlYW5pbmcgY29kZSB3YXMgc2tpcHBlZC4Kcm0gLWYgY29uZnRlc3QuZXJyIGNv
bmZ0ZXN0LiRhY19leHQKaWYgJGFjX3ByZXByb2Nfb2s7IHRoZW4KICA6CmVsc2UKICB7IHsgZWNo
byAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBDKysgcHJlcHJvY2Vzc29yIFwiJENYWENQUFwiIGZh
aWxzIHNhbml0eSBjaGVjawpTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiY1
CmVjaG8gIiRhc19tZTogZXJyb3I6IEMrKyBwcmVwcm9jZXNzb3IgXCIkQ1hYQ1BQXCIgZmFpbHMg
c2FuaXR5IGNoZWNrClNlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+JjI7fQog
ICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KZmkKCmFjX2V4dD1jcHAKYWNfY3BwPSckQ1hYQ1BQ
ICRDUFBGTEFHUycKYWNfY29tcGlsZT0nJENYWCAtYyAkQ1hYRkxBR1MgJENQUEZMQUdTIGNvbmZ0
ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckQ1hYIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ1hY
RkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19j
b21waWxlcl9nbnU9JGFjX2N2X2N4eF9jb21waWxlcl9nbnUKCmZpCgoKYWNfZXh0PWYKYWNfY29t
cGlsZT0nJEY3NyAtYyAkRkZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19saW5rPSckRjc3
IC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkRkZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQg
JExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2Y3N19jb21waWxlcl9nbnUKaWYgdGVz
dCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgogIGZvciBhY19wcm9nIGluIGc3NyBmNzcgeGxm
IGZydCBwZ2Y3NyBjZjc3IGZvcnQ3NyBmbDMyIGFmNzcgZjkwIHhsZjkwIHBnZjkwIHBnaHBmIGVw
Y2Y5MCBnZm9ydHJhbiBnOTUgZjk1IGZvcnQgeGxmOTUgaWZvcnQgaWZjIGVmYyBwZ2Y5NSBsZjk1
IGZ0bgogIGRvCiAgICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiRhY190b29sX3ByZWZp
eCRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1
bW15ICRhY190b29sX3ByZWZpeCRhY19wcm9nOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21lOiRM
SU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcg
Zm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfRjc3
K3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
ZWxzZQogIGlmIHRlc3QgLW4gIiRGNzciOyB0aGVuCiAgYWNfY3ZfcHJvZ19GNzc9IiRGNzciICMg
TGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJRlM7IElG
Uz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNfc2F2ZV9J
RlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4dCBpbiAn
JyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8k
YWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29y
ZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfRjc3PSIkYWNfdG9vbF9wcmVm
aXgkYWNfcHJvZyIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193
b3JkJGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19z
YXZlX0lGUwoKZmkKZmkKRjc3PSRhY19jdl9wcm9nX0Y3NwppZiB0ZXN0IC1uICIkRjc3IjsgdGhl
bgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJEY3NyIgPiY1CmVjaG8gIiR7RUNI
T19UfSRGNzciID4mNjsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBu
byIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0KZmkKCgogICAgdGVzdCAtbiAiJEY3NyIg
JiYgYnJlYWsKICBkb25lCmZpCmlmIHRlc3QgLXogIiRGNzciOyB0aGVuCiAgYWNfY3RfRjc3PSRG
NzcKICBmb3IgYWNfcHJvZyBpbiBnNzcgZjc3IHhsZiBmcnQgcGdmNzcgY2Y3NyBmb3J0NzcgZmwz
MiBhZjc3IGY5MCB4bGY5MCBwZ2Y5MCBwZ2hwZiBlcGNmOTAgZ2ZvcnRyYW4gZzk1IGY5NSBmb3J0
IHhsZjk1IGlmb3J0IGlmYyBlZmMgcGdmOTUgbGY5NSBmdG4KZG8KICAjIEV4dHJhY3QgdGhlIGZp
cnN0IHdvcmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGgg
YXJncy4Kc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21lOiRMSU5F
Tk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9y
ICRhY193b3JkLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfYWNfY3Rf
Rjc3K3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+
JjYKZWxzZQogIGlmIHRlc3QgLW4gIiRhY19jdF9GNzciOyB0aGVuCiAgYWNfY3ZfcHJvZ19hY19j
dF9GNzc9IiRhY19jdF9GNzciICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNl
CmFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFU
SApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9Lgog
IGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlm
IHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFi
bGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3By
b2dfYWNfY3RfRjc3PSIkYWNfcHJvZyIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAk
YXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRv
bmUKSUZTPSRhc19zYXZlX0lGUwoKZmkKZmkKYWNfY3RfRjc3PSRhY19jdl9wcm9nX2FjX2N0X0Y3
NwppZiB0ZXN0IC1uICIkYWNfY3RfRjc3IjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86
IHJlc3VsdDogJGFjX2N0X0Y3NyIgPiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdF9GNzciID4mNjsg
fQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7
RUNIT19UfW5vIiA+JjY7IH0KZmkKCgogIHRlc3QgLW4gIiRhY19jdF9GNzciICYmIGJyZWFrCmRv
bmUKCiAgaWYgdGVzdCAieCRhY19jdF9GNzciID0geDsgdGhlbgogICAgRjc3PSIiCiAgZWxzZQog
ICAgY2FzZSAkY3Jvc3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgp5ZXM6KQp7IGVjaG8g
IiRhc19tZTokTElORU5POiBXQVJOSU5HOiBJbiB0aGUgZnV0dXJlLCBBdXRvY29uZiB3aWxsIG5v
dCBkZXRlY3QgY3Jvc3MtdG9vbHMKd2hvc2UgbmFtZSBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBo
b3N0IHRyaXBsZXQuICBJZiB5b3UgdGhpbmsgdGhpcwpjb25maWd1cmF0aW9uIGlzIHVzZWZ1bCB0
byB5b3UsIHBsZWFzZSB3cml0ZSB0byBhdXRvY29uZkBnbnUub3JnLiIgPiY1CmVjaG8gIiRhc19t
ZTogV0FSTklORzogSW4gdGhlIGZ1dHVyZSwgQXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNyb3Nz
LXRvb2xzCndob3NlIG5hbWUgZG9lcyBub3Qgc3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAg
SWYgeW91IHRoaW5rIHRoaXMKY29uZmlndXJhdGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVhc2Ug
d3JpdGUgdG8gYXV0b2NvbmZAZ251Lm9yZy4iID4mMjt9CmFjX3Rvb2xfd2FybmVkPXllcyA7Owpl
c2FjCiAgICBGNzc9JGFjX2N0X0Y3NwogIGZpCmZpCgoKIyBQcm92aWRlIHNvbWUgaW5mb3JtYXRp
b24gYWJvdXQgdGhlIGNvbXBpbGVyLgplY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9y
IEZvcnRyYW4gNzcgY29tcGlsZXIgdmVyc2lvbiIgPiY1CmFjX2NvbXBpbGVyPWBzZXQgWCAkYWNf
Y29tcGlsZTsgZWNobyAkMmAKeyAoYWNfdHJ5PSIkYWNfY29tcGlsZXIgLS12ZXJzaW9uID4mNSIK
Y2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRh
Y190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFz
X21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwgIiRhY19jb21waWxlciAt
LXZlcnNpb24gPiY1IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5P
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfQp7IChhY190cnk9
IiRhY19jb21waWxlciAtdiA+JjUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8
ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsK
ZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQog
IChldmFsICIkYWNfY29tcGlsZXIgLXYgPiY1IikgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVz
KTsgfQp7IChhY190cnk9IiRhY19jb21waWxlciAtViA+JjUiCmNhc2UgIigoJGFjX3RyeSIgaW4K
ICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlf
ZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5
X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfY29tcGlsZXIgLVYgPiY1IikgMj4mNQogIGFjX3N0
YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfQpybSAtZiBhLm91dAoKIyBJZiB3ZSBkb24ndCB1c2UgYC5GJyBh
cyBleHRlbnNpb24sIHRoZSBwcmVwcm9jZXNzb3IgaXMgbm90IHJ1biBvbiB0aGUKIyBpbnB1dCBm
aWxlLiAgKE5vdGUgdGhhdCB0aGlzIG9ubHkgbmVlZHMgdG8gd29yayBmb3IgR05VIGNvbXBpbGVy
cy4pCmFjX3NhdmVfZXh0PSRhY19leHQKYWNfZXh0PUYKeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
Y2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBGb3J0cmFuIDc3IGNvbXBpbGVy
IiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V
IEZvcnRyYW4gNzcgY29tcGlsZXIuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3Zf
Zjc3X2NvbXBpbGVyX2dudStzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hl
ZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKICAg
ICAgcHJvZ3JhbSBtYWluCiNpZm5kZWYgX19HTlVDX18KICAgICAgIGNob2tlIG1lCiNlbmRpZgoK
ICAgICAgZW5kCl9BQ0VPRgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CmlmIHsgKGFjX3RyeT0i
JGFjX2NvbXBpbGUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFj
X3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFs
ICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIk
YWNfY29tcGlsZSIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAgZ3JlcCAtdiAnXiAq
KycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVzdC5lcjEKICBjYXQg
Y29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVz
IiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNf
Zjc3X3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwogIHsgKGNhc2UgIigo
JGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsK
ICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElO
RU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5IikgMj4mNQogIGFjX3N0
YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRh
Y19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAqXGAqIHwgKlxcKikg
YWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190cnk7Owplc2FjCmV2
YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikgPiY1CiAgKGV2YWwg
IiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgYWNf
Y29tcGlsZXJfZ251PXllcwplbHNlCiAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
IiA+JjUKc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQoKCWFjX2NvbXBpbGVyX2du
dT1ubwpmaQoKcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdC4kYWNfZXh0CmFjX2N2X2Y3N19jb21waWxlcl9nbnU9JGFjX2NvbXBpbGVyX2dudQoKZmkK
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfZjc3X2NvbXBpbGVyX2dudSIg
PiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdl9mNzdfY29tcGlsZXJfZ251IiA+JjY7IH0KYWNfZXh0
PSRhY19zYXZlX2V4dAphY190ZXN0X0ZGTEFHUz0ke0ZGTEFHUytzZXR9CmFjX3NhdmVfRkZMQUdT
PSRGRkxBR1MKRkZMQUdTPQp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVy
ICRGNzcgYWNjZXB0cyAtZyIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgd2hldGhlciAkRjc3
IGFjY2VwdHMgLWcuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19mNzdf
ZytzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2
CmVsc2UKICBGRkxBR1M9LWcKY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCiAgICAgIHBy
b2dyYW0gbWFpbgoKICAgICAgZW5kCl9BQ0VPRgpybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0Cmlm
IHsgKGFjX3RyeT0iJGFjX2NvbXBpbGUiCmNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxg
KiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5
OzsKZXNhYwpldmFsICJlY2hvIFwiXCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4m
NQogIChldmFsICIkYWNfY29tcGlsZSIpIDI+Y29uZnRlc3QuZXIxCiAgYWNfc3RhdHVzPSQ/CiAg
Z3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICBybSAtZiBjb25mdGVz
dC5lcjEKICBjYXQgY29uZnRlc3QuZXJyID4mNQogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgoJIHsgYWNfdHJ5PSd0
ZXN0IC16ICIkYWNfZjc3X3dlcnJvcl9mbGFnIiB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJwog
IHsgKGNhc2UgIigoJGFjX3RyeSIgaW4KICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hv
PVwkYWNfdHJ5OzsKICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKZXNhYwpldmFsICJlY2hvIFwi
XCRhc19tZTokTElORU5POiAkYWNfdHJ5X2VjaG9cIiIpID4mNQogIChldmFsICIkYWNfdHJ5Iikg
Mj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgoJIHsgYWNfdHJ5PSd0ZXN0IC1z
IGNvbmZ0ZXN0LiRhY19vYmpleHQnCiAgeyAoY2FzZSAiKCgkYWNfdHJ5IiBpbgogICpcIiogfCAq
XGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OwogICopIGFjX3RyeV9lY2hvPSRhY190
cnk7Owplc2FjCmV2YWwgImVjaG8gXCJcJGFzX21lOiRMSU5FTk86ICRhY190cnlfZWNob1wiIikg
PiY1CiAgKGV2YWwgIiRhY190cnkiKSAyPiY1CiAgYWNfc3RhdHVzPSQ/CiAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogIChleGl0ICRhY19zdGF0dXMpOyB9OyB9
OyB0aGVuCiAgYWNfY3ZfcHJvZ19mNzdfZz15ZXMKZWxzZQogIGVjaG8gIiRhc19tZTogZmFpbGVk
IHByb2dyYW0gd2FzOiIgPiY1CnNlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKCglh
Y19jdl9wcm9nX2Y3N19nPW5vCmZpCgpybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4k
YWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogJGFjX2N2X3Byb2dfZjc3X2ciID4mNQplY2hvICIke0VDSE9fVH0kYWNfY3ZfcHJvZ19m
NzdfZyIgPiY2OyB9CmlmIHRlc3QgIiRhY190ZXN0X0ZGTEFHUyIgPSBzZXQ7IHRoZW4KICBGRkxB
R1M9JGFjX3NhdmVfRkZMQUdTCmVsaWYgdGVzdCAkYWNfY3ZfcHJvZ19mNzdfZyA9IHllczsgdGhl
bgogIGlmIHRlc3QgIngkYWNfY3ZfZjc3X2NvbXBpbGVyX2dudSIgPSB4eWVzOyB0aGVuCiAgICBG
RkxBR1M9Ii1nIC1PMiIKICBlbHNlCiAgICBGRkxBR1M9Ii1nIgogIGZpCmVsc2UKICBpZiB0ZXN0
ICJ4JGFjX2N2X2Y3N19jb21waWxlcl9nbnUiID0geHllczsgdGhlbgogICAgRkZMQUdTPSItTzIi
CiAgZWxzZQogICAgRkZMQUdTPQogIGZpCmZpCgpHNzc9YHRlc3QgJGFjX2NvbXBpbGVyX2dudSA9
IHllcyAmJiBlY2hvIHllc2AKYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29t
cGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19s
aW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdT
IGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29t
cGlsZXJfZ251CgoKCiMgQXV0b2NvbmYgMi4xMydzIEFDX09CSkVYVCBhbmQgQUNfRVhFRVhUIG1h
Y3JvcyBvbmx5IHdvcmtzIGZvciBDIGNvbXBpbGVycyEKCiMgZmluZCB0aGUgbWF4aW11bSBsZW5n
dGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cyIgPiY1CmVj
aG8gJEVDSE9fTiAiY2hlY2tpbmcgdGhlIG1heGltdW0gbGVuZ3RoIG9mIGNvbW1hbmQgbGluZSBh
cmd1bWVudHMuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7bHRfY3Zfc3lzX21heF9jbWRf
bGVuK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+
JjYKZWxzZQogICAgaT0wCiAgdGVzdHN0cmluZz0iQUJDRCIKCiAgY2FzZSAkYnVpbGRfb3MgaW4K
ICBtc2Rvc2RqZ3BwKikKICAgICMgT24gREpHUFAsIHRoaXMgdGVzdCBjYW4gYmxvdyB1cCBwcmV0
dHkgYmFkbHkgZHVlIHRvIHByb2JsZW1zIGluIGxpYmMKICAgICMgKGFueSBzaW5nbGUgYXJndW1l
bnQgZXhjZWVkaW5nIDIwMDAgYnl0ZXMgY2F1c2VzIGEgYnVmZmVyIG92ZXJydW4KICAgICMgZHVy
aW5nIGdsb2IgZXhwYW5zaW9uKS4gIEV2ZW4gaWYgaXQgd2VyZSBmaXhlZCwgdGhlIHJlc3VsdCBv
ZiB0aGlzCiAgICAjIGNoZWNrIHdvdWxkIGJlIGxhcmdlciB0aGFuIGl0IHNob3VsZCBiZS4KICAg
IGx0X2N2X3N5c19tYXhfY21kX2xlbj0xMjI4ODsgICAgIyAxMksgaXMgYWJvdXQgcmlnaHQKICAg
IDs7CgogIGdudSopCiAgICAjIFVuZGVyIEdOVSBIdXJkLCB0aGlzIHRlc3QgaXMgbm90IHJlcXVp
cmVkIGJlY2F1c2UgdGhlcmUgaXMKICAgICMgbm8gbGltaXQgdG8gdGhlIGxlbmd0aCBvZiBjb21t
YW5kIGxpbmUgYXJndW1lbnRzLgogICAgIyBMaWJ0b29sIHdpbGwgaW50ZXJwcmV0IC0xIGFzIG5v
IGxpbWl0IHdoYXRzb2V2ZXIKICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj0tMTsKICAgIDs7Cgog
IGN5Z3dpbiogfCBtaW5ndyopCiAgICAjIE9uIFdpbjl4L01FLCB0aGlzIHRlc3QgYmxvd3MgdXAg
LS0gaXQgc3VjY2VlZHMsIGJ1dCB0YWtlcwogICAgIyBhYm91dCA1IG1pbnV0ZXMgYXMgdGhlIHRl
c3RzdHJpbmcgZ3Jvd3MgZXhwb25lbnRpYWxseS4KICAgICMgV29yc2UsIHNpbmNlIDl4L01FIGFy
ZSBub3QgcHJlLWVtcHRpdmVseSBtdWx0aXRhc2tpbmcsCiAgICAjIHlvdSBlbmQgdXAgd2l0aCBh
ICJmcm96ZW4iIGNvbXB1dGVyLCBldmVuIHRob3VnaCB3aXRoIHBhdGllbmNlCiAgICAjIHRoZSB0
ZXN0IGV2ZW50dWFsbHkgc3VjY2VlZHMgKHdpdGggYSBtYXggbGluZSBsZW5ndGggb2YgMjU2ayku
CiAgICAjIEluc3RlYWQsIGxldCdzIGp1c3QgcHVudDogdXNlIHRoZSBtaW5pbXVtIGxpbmVsZW5n
dGggcmVwb3J0ZWQgYnkKICAgICMgYWxsIG9mIHRoZSBzdXBwb3J0ZWQgcGxhdGZvcm1zOiA4MTky
IChvbiBOVC8ySy9YUCkuCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49ODE5MjsKICAgIDs7Cgog
IGFtaWdhb3MqKQogICAgIyBPbiBBbWlnYU9TIHdpdGggcGRrc2gsIHRoaXMgdGVzdCB0YWtlcyBo
b3VycywgbGl0ZXJhbGx5LgogICAgIyBTbyB3ZSBqdXN0IHB1bnQgYW5kIHVzZSBhIG1pbmltdW0g
bGluZSBsZW5ndGggb2YgODE5Mi4KICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj04MTkyOwogICAg
OzsKCiAgbmV0YnNkKiB8IGZyZWVic2QqIHwgb3BlbmJzZCogfCBkYXJ3aW4qIHwgZHJhZ29uZmx5
KikKICAgICMgVGhpcyBoYXMgYmVlbiBhcm91bmQgc2luY2UgMzg2QlNELCBhdCBsZWFzdC4gIExp
a2VseSBmdXJ0aGVyLgogICAgaWYgdGVzdCAteCAvc2Jpbi9zeXNjdGw7IHRoZW4KICAgICAgbHRf
Y3Zfc3lzX21heF9jbWRfbGVuPWAvc2Jpbi9zeXNjdGwgLW4ga2Vybi5hcmdtYXhgCiAgICBlbGlm
IHRlc3QgLXggL3Vzci9zYmluL3N5c2N0bDsgdGhlbgogICAgICBsdF9jdl9zeXNfbWF4X2NtZF9s
ZW49YC91c3Ivc2Jpbi9zeXNjdGwgLW4ga2Vybi5hcmdtYXhgCiAgICBlbHNlCiAgICAgIGx0X2N2
X3N5c19tYXhfY21kX2xlbj02NTUzNgkjIHVzYWJsZSBkZWZhdWx0IGZvciBhbGwgQlNEcwogICAg
ZmkKICAgICMgQW5kIGFkZCBhIHNhZmV0eSB6b25lCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49
YGV4cHIgJGx0X2N2X3N5c19tYXhfY21kX2xlbiBcLyA0YAogICAgbHRfY3Zfc3lzX21heF9jbWRf
bGVuPWBleHByICRsdF9jdl9zeXNfbWF4X2NtZF9sZW4gXCogM2AKICAgIDs7CgogIGludGVyaXgq
KQogICAgIyBXZSBrbm93IHRoZSB2YWx1ZSAyNjIxNDQgYW5kIGhhcmRjb2RlIGl0IHdpdGggYSBz
YWZldHkgem9uZSAobGlrZSBCU0QpCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49MTk2NjA4CiAg
ICA7OwoKICBvc2YqKQogICAgIyBEci4gSGFucyBFa2tlaGFyZCBQbGVzc2VyIHJlcG9ydHMgc2Vl
aW5nIGEga2VybmVsIHBhbmljIHJ1bm5pbmcgY29uZmlndXJlCiAgICAjIGR1ZSB0byB0aGlzIHRl
c3Qgd2hlbiBleGVjX2Rpc2FibGVfYXJnX2xpbWl0IGlzIDEgb24gVHJ1NjQuIEl0IGlzIG5vdAog
ICAgIyBuaWNlIHRvIGNhdXNlIGtlcm5lbCBwYW5pY3Mgc28gbGV0cyBhdm9pZCB0aGUgbG9vcCBi
ZWxvdy4KICAgICMgRmlyc3Qgc2V0IGEgcmVhc29uYWJsZSBkZWZhdWx0LgogICAgbHRfY3Zfc3lz
X21heF9jbWRfbGVuPTE2Mzg0CiAgICAjCiAgICBpZiB0ZXN0IC14IC9zYmluL3N5c2NvbmZpZzsg
dGhlbgogICAgICBjYXNlIGAvc2Jpbi9zeXNjb25maWcgLXEgcHJvYyBleGVjX2Rpc2FibGVfYXJn
X2xpbWl0YCBpbgogICAgICAgICoxKikgbHRfY3Zfc3lzX21heF9jbWRfbGVuPS0xIDs7CiAgICAg
IGVzYWMKICAgIGZpCiAgICA7OwogIHNjbzMuMnY1KikKICAgIGx0X2N2X3N5c19tYXhfY21kX2xl
bj0xMDI0MDAKICAgIDs7CiAgc3lzdjUqIHwgc2NvNXY2KiB8IHN5c3Y0LjJ1dzIqKQogICAga2Fy
Z21heD1gZ3JlcCBBUkdfTUFYIC9ldGMvY29uZi9jZi5kL3N0dW5lIDI+L2Rldi9udWxsYAogICAg
aWYgdGVzdCAtbiAiJGthcmdtYXgiOyB0aGVuCiAgICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj1g
ZWNobyAka2FyZ21heCB8IHNlZCAncy8uKlsgCV0vLydgCiAgICBlbHNlCiAgICAgIGx0X2N2X3N5
c19tYXhfY21kX2xlbj0zMjc2OAogICAgZmkKICAgIDs7CiAgKikKICAgICMgSWYgdGVzdCBpcyBu
b3QgYSBzaGVsbCBidWlsdC1pbiwgd2UnbGwgcHJvYmFibHkgZW5kIHVwIGNvbXB1dGluZyBhCiAg
ICAjIG1heGltdW0gbGVuZ3RoIHRoYXQgaXMgb25seSBoYWxmIG9mIHRoZSBhY3R1YWwgbWF4aW11
bSBsZW5ndGgsIGJ1dAogICAgIyB3ZSBjYW4ndCB0ZWxsLgogICAgU0hFTEw9JHtTSEVMTC0ke0NP
TkZJR19TSEVMTC0vYmluL3NofX0KICAgIHdoaWxlICh0ZXN0ICJYImAkU0hFTEwgJDAgLS1mYWxs
YmFjay1lY2hvICJYJHRlc3RzdHJpbmciIDI+L2Rldi9udWxsYCBcCgkgICAgICAgPSAiWFgkdGVz
dHN0cmluZyIpID4vZGV2L251bGwgMj4mMSAmJgoJICAgIG5ld19yZXN1bHQ9YGV4cHIgIlgkdGVz
dHN0cmluZyIgOiAiLioiIDI+JjFgICYmCgkgICAgbHRfY3Zfc3lzX21heF9jbWRfbGVuPSRuZXdf
cmVzdWx0ICYmCgkgICAgdGVzdCAkaSAhPSAxNyAjIDEvMiBNQiBzaG91bGQgYmUgZW5vdWdoCiAg
ICBkbwogICAgICBpPWBleHByICRpICsgMWAKICAgICAgdGVzdHN0cmluZz0kdGVzdHN0cmluZyR0
ZXN0c3RyaW5nCiAgICBkb25lCiAgICB0ZXN0c3RyaW5nPQogICAgIyBBZGQgYSBzaWduaWZpY2Fu
dCBzYWZldHkgZmFjdG9yIGJlY2F1c2UgQysrIGNvbXBpbGVycyBjYW4gdGFjayBvbiBtYXNzaXZl
CiAgICAjIGFtb3VudHMgb2YgYWRkaXRpb25hbCBhcmd1bWVudHMgYmVmb3JlIHBhc3NpbmcgdGhl
bSB0byB0aGUgbGlua2VyLgogICAgIyBJdCBhcHBlYXJzIGFzIHRob3VnaCAxLzIgaXMgYSB1c2Fi
bGUgdmFsdWUuCiAgICBsdF9jdl9zeXNfbWF4X2NtZF9sZW49YGV4cHIgJGx0X2N2X3N5c19tYXhf
Y21kX2xlbiBcLyAyYAogICAgOzsKICBlc2FjCgpmaQoKaWYgdGVzdCAtbiAkbHRfY3Zfc3lzX21h
eF9jbWRfbGVuIDsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0X2N2
X3N5c19tYXhfY21kX2xlbiIgPiY1CmVjaG8gIiR7RUNIT19UfSRsdF9jdl9zeXNfbWF4X2NtZF9s
ZW4iID4mNjsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBub25lIiA+
JjUKZWNobyAiJHtFQ0hPX1R9bm9uZSIgPiY2OyB9CmZpCgoKCgojIENoZWNrIGZvciBjb21tYW5k
IHRvIGdyYWIgdGhlIHJhdyBzeW1ib2wgbmFtZSBmb2xsb3dlZCBieSBDIHN5bWJvbCBmcm9tIG5t
Lgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBjb21tYW5kIHRvIHBhcnNlICROTSBv
dXRwdXQgZnJvbSAkY29tcGlsZXIgb2JqZWN0IiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBj
b21tYW5kIHRvIHBhcnNlICROTSBvdXRwdXQgZnJvbSAkY29tcGlsZXIgb2JqZWN0Li4uICRFQ0hP
X0MiID4mNjsgfQppZiB0ZXN0ICIke2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUrc2V0fSIg
PSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCgoj
IFRoZXNlIGFyZSBzYW5lIGRlZmF1bHRzIHRoYXQgd29yayBvbiBhdCBsZWFzdCBhIGZldyBvbGQg
c3lzdGVtcy4KIyBbVGhleSBjb21lIGZyb20gVWx0cml4LiAgV2hhdCBjb3VsZCBiZSBvbGRlciB0
aGFuIFVsdHJpeD8hISA7KV0KCiMgQ2hhcmFjdGVyIGNsYXNzIGRlc2NyaWJpbmcgTk0gZ2xvYmFs
IHN5bWJvbCBjb2Rlcy4Kc3ltY29kZT0nW0JDREVHUlNUXScKCiMgUmVnZXhwIHRvIG1hdGNoIHN5
bWJvbHMgdGhhdCBjYW4gYmUgYWNjZXNzZWQgZGlyZWN0bHkgZnJvbSBDLgpzeW1wYXQ9J1woW19B
LVphLXpdW19BLVphLXowLTldKlwpJwoKIyBUcmFuc2Zvcm0gYW4gZXh0cmFjdGVkIHN5bWJvbCBs
aW5lIGludG8gYSBwcm9wZXIgQyBkZWNsYXJhdGlvbgpsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90
b19jZGVjbD0ic2VkIC1uIC1lICdzL14uIC4qIFwoLipcKSQvZXh0ZXJuIGludCBcMTsvcCciCgoj
IFRyYW5zZm9ybSBhbiBleHRyYWN0ZWQgc3ltYm9sIGxpbmUgaW50byBzeW1ib2wgbmFtZSBhbmQg
c3ltYm9sIGFkZHJlc3MKbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3M9
InNlZCAtbiAtZSAncy9eOiBcKFteIF0qXCkgJC8gIHtcXFwiXDFcXFwiLCAobHRfcHRyKSAwfSwv
cCcgLWUgJ3MvXiRzeW1jb2RlIFwoW14gXSpcKSBcKFteIF0qXCkkLyAge1wiXDJcIiwgKGx0X3B0
cikgXCZcMn0sL3AnIgoKIyBEZWZpbmUgc3lzdGVtLXNwZWNpZmljIHZhcmlhYmxlcy4KY2FzZSAk
aG9zdF9vcyBpbgphaXgqKQogIHN5bWNvZGU9J1tCQ0RUXScKICA7OwpjeWd3aW4qIHwgbWluZ3cq
IHwgcHczMiopCiAgc3ltY29kZT0nW0FCQ0RHSVNUV10nCiAgOzsKaHB1eCopICMgSXRzIGxpbmtl
ciBkaXN0aW5ndWlzaGVzIGRhdGEgZnJvbSBjb2RlIHN5bWJvbHMKICBpZiB0ZXN0ICIkaG9zdF9j
cHUiID0gaWE2NDsgdGhlbgogICAgc3ltY29kZT0nW0FCQ0RFR1JTVF0nCiAgZmkKICBsdF9jdl9z
eXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0ic2VkIC1uIC1lICdzL15UIC4qIFwoLipcKSQvZXh0
ZXJuIGludCBcMSgpOy9wJyAtZSAncy9eJHN5bWNvZGUqIC4qIFwoLipcKSQvZXh0ZXJuIGNoYXIg
XDE7L3AnIgogIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NfbmFtZV9hZGRyZXNzPSJzZWQg
LW4gLWUgJ3MvXjogXChbXiBdKlwpICQvICB7XFxcIlwxXFxcIiwgKGx0X3B0cikgMH0sL3AnIC1l
ICdzL14kc3ltY29kZSogXChbXiBdKlwpIFwoW14gXSpcKSQvICB7XCJcMlwiLCAobHRfcHRyKSBc
JlwyfSwvcCciCiAgOzsKbGludXgqKQogIGlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVu
CiAgICBzeW1jb2RlPSdbQUJDREdJUlNUV10nCiAgICBsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90
b19jZGVjbD0ic2VkIC1uIC1lICdzL15UIC4qIFwoLipcKSQvZXh0ZXJuIGludCBcMSgpOy9wJyAt
ZSAncy9eJHN5bWNvZGUqIC4qIFwoLipcKSQvZXh0ZXJuIGNoYXIgXDE7L3AnIgogICAgbHRfY3Zf
c3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3M9InNlZCAtbiAtZSAncy9eOiBcKFte
IF0qXCkgJC8gIHtcXFwiXDFcXFwiLCAobHRfcHRyKSAwfSwvcCcgLWUgJ3MvXiRzeW1jb2RlKiBc
KFteIF0qXCkgXChbXiBdKlwpJC8gIHtcIlwyXCIsIChsdF9wdHIpIFwmXDJ9LC9wJyIKICBmaQog
IDs7CmlyaXgqIHwgbm9uc3RvcHV4KikKICBzeW1jb2RlPSdbQkNERUdSU1RdJwogIDs7Cm9zZiop
CiAgc3ltY29kZT0nW0JDREVHUVJTVF0nCiAgOzsKc29sYXJpcyopCiAgc3ltY29kZT0nW0JEUlRd
JwogIDs7CnNjbzMuMnY1KikKICBzeW1jb2RlPSdbRFRdJwogIDs7CnN5c3Y0LjJ1dzIqKQogIHN5
bWNvZGU9J1tEVF0nCiAgOzsKc3lzdjUqIHwgc2NvNXY2KiB8IHVuaXh3YXJlKiB8IE9wZW5VTklY
KikKICBzeW1jb2RlPSdbQUJEVF0nCiAgOzsKc3lzdjQpCiAgc3ltY29kZT0nW0RGTlNUVV0nCiAg
OzsKZXNhYwoKIyBIYW5kbGUgQ1JMRiBpbiBtaW5ndyB0b29sIGNoYWluCm9wdF9jcj0KY2FzZSAk
YnVpbGRfb3MgaW4KbWluZ3cqKQogIG9wdF9jcj1gZWNobyAneFx7MCwxXH0nIHwgdHIgeCAnXDAx
NSdgICMgb3B0aW9uIGNyIGluIHJlZ2V4cAogIDs7CmVzYWMKCiMgSWYgd2UncmUgdXNpbmcgR05V
IG5tLCB0aGVuIHVzZSBpdHMgc3RhbmRhcmQgc3ltYm9sIGNvZGVzLgpjYXNlIGAkTk0gLVYgMj4m
MWAgaW4KKkdOVSogfCAqJ3dpdGggQkZEJyopCiAgc3ltY29kZT0nW0FCQ0RHSVJTVFddJyA7Owpl
c2FjCgojIFRyeSB3aXRob3V0IGEgcHJlZml4IHVuZGVyY29yZSwgdGhlbiB3aXRoIGl0Lgpmb3Ig
YWNfc3ltcHJmeCBpbiAiIiAiXyI7IGRvCgogICMgVHJhbnNmb3JtIHN5bWNvZGUsIHN5bXBhdCwg
YW5kIHN5bXByZnggaW50byBhIHJhdyBzeW1ib2wgYW5kIGEgQyBzeW1ib2wuCiAgc3lteGZybT0i
XFwxICRhY19zeW1wcmZ4XFwyIFxcMiIKCiAgIyBXcml0ZSB0aGUgcmF3IGFuZCBDIGlkZW50aWZp
ZXJzLgogIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGU9InNlZCAtbiAtZSAncy9eLipbIAld
XCgkc3ltY29kZSRzeW1jb2RlKlwpWyAJXVsgCV0qJGFjX3N5bXByZngkc3ltcGF0JG9wdF9jciQv
JHN5bXhmcm0vcCciCgogICMgQ2hlY2sgdG8gc2VlIHRoYXQgdGhlIHBpcGUgd29ya3MgY29ycmVj
dGx5LgogIHBpcGVfd29ya3M9bm8KCiAgcm0gLWYgY29uZnRlc3QqCiAgY2F0ID4gY29uZnRlc3Qu
JGFjX2V4dCA8PEVPRgojaWZkZWYgX19jcGx1c3BsdXMKZXh0ZXJuICJDIiB7CiNlbmRpZgpjaGFy
IG5tX3Rlc3RfdmFyOwp2b2lkIG5tX3Rlc3RfZnVuYygpe30KI2lmZGVmIF9fY3BsdXNwbHVzCn0K
I2VuZGlmCmludCBtYWluKCl7bm1fdGVzdF92YXI9J2EnO25tX3Rlc3RfZnVuYygpO3JldHVybigw
KTt9CkVPRgoKICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxl
XCIiKSA+JjUKICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVz
KTsgfTsgdGhlbgogICAgIyBOb3cgdHJ5IHRvIGdyYWIgdGhlIHN5bWJvbHMuCiAgICBubGlzdD1j
b25mdGVzdC5ubQogICAgaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkTk0gY29u
ZnRlc3QuJGFjX29iamV4dCBcfCAkbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZSBcPiAkbmxp
c3RcIiIpID4mNQogIChldmFsICROTSBjb25mdGVzdC4kYWNfb2JqZXh0IFx8ICRsdF9jdl9zeXNf
Z2xvYmFsX3N5bWJvbF9waXBlIFw+ICRubGlzdCkgMj4mNQogIGFjX3N0YXR1cz0kPwogIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAoZXhpdCAkYWNfc3RhdHVz
KTsgfSAmJiB0ZXN0IC1zICIkbmxpc3QiOyB0aGVuCiAgICAgICMgVHJ5IHNvcnRpbmcgYW5kIHVu
aXF1aWZ5aW5nIHRoZSBvdXRwdXQuCiAgICAgIGlmIHNvcnQgIiRubGlzdCIgfCB1bmlxID4gIiRu
bGlzdCJUOyB0aGVuCgltdiAtZiAiJG5saXN0IlQgIiRubGlzdCIKICAgICAgZWxzZQoJcm0gLWYg
IiRubGlzdCJUCiAgICAgIGZpCgogICAgICAjIE1ha2Ugc3VyZSB0aGF0IHdlIHNuYWdnZWQgYWxs
IHRoZSBzeW1ib2xzIHdlIG5lZWQuCiAgICAgIGlmIGdyZXAgJyBubV90ZXN0X3ZhciQnICIkbmxp
c3QiID4vZGV2L251bGw7IHRoZW4KCWlmIGdyZXAgJyBubV90ZXN0X2Z1bmMkJyAiJG5saXN0IiA+
L2Rldi9udWxsOyB0aGVuCgkgIGNhdCA8PEVPRiA+IGNvbmZ0ZXN0LiRhY19leHQKI2lmZGVmIF9f
Y3BsdXNwbHVzCmV4dGVybiAiQyIgewojZW5kaWYKCkVPRgoJICAjIE5vdyBnZW5lcmF0ZSB0aGUg
c3ltYm9sIGZpbGUuCgkgIGV2YWwgIiRsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbCIn
IDwgIiRubGlzdCIgfCBncmVwIC12IG1haW4gPj4gY29uZnRlc3QuJGFjX2V4dCcKCgkgIGNhdCA8
PEVPRiA+PiBjb25mdGVzdC4kYWNfZXh0CiNpZiBkZWZpbmVkIChfX1NURENfXykgJiYgX19TVERD
X18KIyBkZWZpbmUgbHRfcHRyX3Qgdm9pZCAqCiNlbHNlCiMgZGVmaW5lIGx0X3B0cl90IGNoYXIg
KgojIGRlZmluZSBjb25zdAojZW5kaWYKCi8qIFRoZSBtYXBwaW5nIGJldHdlZW4gc3ltYm9sIG5h
bWVzIGFuZCBzeW1ib2xzLiAqLwpjb25zdCBzdHJ1Y3QgewogIGNvbnN0IGNoYXIgKm5hbWU7CiAg
bHRfcHRyX3QgYWRkcmVzczsKfQpsdF9wcmVsb2FkZWRfc3ltYm9sc1tdID0KewpFT0YKCSAgJFNF
RCAicy9eJHN5bWNvZGUkc3ltY29kZSogXCguKlwpIFwoLipcKSQvICB7XCJcMlwiLCAobHRfcHRy
X3QpIFwmXDJ9LC8iIDwgIiRubGlzdCIgfCBncmVwIC12IG1haW4gPj4gY29uZnRlc3QuJGFjX2V4
dAoJICBjYXQgPDxcRU9GID4+IGNvbmZ0ZXN0LiRhY19leHQKICB7MCwgKGx0X3B0cl90KSAwfQp9
OwoKI2lmZGVmIF9fY3BsdXNwbHVzCn0KI2VuZGlmCkVPRgoJICAjIE5vdyB0cnkgbGlua2luZyB0
aGUgdHdvIGZpbGVzLgoJICBtdiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0c3RtLiRhY19vYmpl
eHQKCSAgbHRfc2F2ZV9MSUJTPSIkTElCUyIKCSAgbHRfc2F2ZV9DRkxBR1M9IiRDRkxBR1MiCgkg
IExJQlM9ImNvbmZ0c3RtLiRhY19vYmpleHQiCgkgIENGTEFHUz0iJENGTEFHUyRsdF9wcm9nX2Nv
bXBpbGVyX25vX2J1aWx0aW5fZmxhZyIKCSAgaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVO
TzogXCIkYWNfbGlua1wiIikgPiY1CiAgKGV2YWwgJGFjX2xpbmspIDI+JjUKICBhY19zdGF0dXM9
JD8KICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgKGV4aXQg
JGFjX3N0YXR1cyk7IH0gJiYgdGVzdCAtcyBjb25mdGVzdCR7YWNfZXhlZXh0fTsgdGhlbgoJICAg
IHBpcGVfd29ya3M9eWVzCgkgIGZpCgkgIExJQlM9IiRsdF9zYXZlX0xJQlMiCgkgIENGTEFHUz0i
JGx0X3NhdmVfQ0ZMQUdTIgoJZWxzZQoJICBlY2hvICJjYW5ub3QgZmluZCBubV90ZXN0X2Z1bmMg
aW4gJG5saXN0IiA+JjUKCWZpCiAgICAgIGVsc2UKCWVjaG8gImNhbm5vdCBmaW5kIG5tX3Rlc3Rf
dmFyIGluICRubGlzdCIgPiY1CiAgICAgIGZpCiAgICBlbHNlCiAgICAgIGVjaG8gImNhbm5vdCBy
dW4gJGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUiID4mNQogICAgZmkKICBlbHNlCiAgICBl
Y2hvICIkcHJvZ25hbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQogICAgY2F0IGNvbmZ0ZXN0
LiRhY19leHQgPiY1CiAgZmkKICBybSAtZiBjb25mdGVzdCogY29uZnRzdCoKCiAgIyBEbyBub3Qg
dXNlIHRoZSBnbG9iYWxfc3ltYm9sX3BpcGUgdW5sZXNzIGl0IHdvcmtzLgogIGlmIHRlc3QgIiRw
aXBlX3dvcmtzIiA9IHllczsgdGhlbgogICAgYnJlYWsKICBlbHNlCiAgICBsdF9jdl9zeXNfZ2xv
YmFsX3N5bWJvbF9waXBlPQogIGZpCmRvbmUKCmZpCgppZiB0ZXN0IC16ICIkbHRfY3Zfc3lzX2ds
b2JhbF9zeW1ib2xfcGlwZSI7IHRoZW4KICBsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVj
bD0KZmkKaWYgdGVzdCAteiAiJGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUkbHRfY3Zfc3lz
X2dsb2JhbF9zeW1ib2xfdG9fY2RlY2wiOyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiBmYWlsZWQiID4mNQplY2hvICIke0VDSE9fVH1mYWlsZWQiID4mNjsgfQplbHNlCiAg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBvayIgPiY1CmVjaG8gIiR7RUNIT19UfW9r
IiA+JjY7IH0KZmkKCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBvYmpkaXIi
ID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBvYmpkaXIuLi4gJEVDSE9fQyIgPiY2OyB9
CmlmIHRlc3QgIiR7bHRfY3Zfb2JqZGlyK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19O
ICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIHJtIC1mIC5saWJzIDI+L2Rldi9udWxsCm1r
ZGlyIC5saWJzIDI+L2Rldi9udWxsCmlmIHRlc3QgLWQgLmxpYnM7IHRoZW4KICBsdF9jdl9vYmpk
aXI9LmxpYnMKZWxzZQogICMgTVMtRE9TIGRvZXMgbm90IGFsbG93IGZpbGVuYW1lcyB0aGF0IGJl
Z2luIHdpdGggYSBkb3QuCiAgbHRfY3Zfb2JqZGlyPV9saWJzCmZpCnJtZGlyIC5saWJzIDI+L2Rl
di9udWxsCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0X2N2X29iamRpciIg
PiY1CmVjaG8gIiR7RUNIT19UfSRsdF9jdl9vYmpkaXIiID4mNjsgfQpvYmpkaXI9JGx0X2N2X29i
amRpcgoKCgoKCmNhc2UgJGhvc3Rfb3MgaW4KYWl4MyopCiAgIyBBSVggc29tZXRpbWVzIGhhcyBw
cm9ibGVtcyB3aXRoIHRoZSBHQ0MgY29sbGVjdDIgcHJvZ3JhbS4gIEZvciBzb21lCiAgIyByZWFz
b24sIGlmIHdlIHNldCB0aGUgQ09MTEVDVF9OQU1FUyBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhl
IHByb2JsZW1zCiAgIyB2YW5pc2ggaW4gYSBwdWZmIG9mIHNtb2tlLgogIGlmIHRlc3QgIlgke0NP
TExFQ1RfTkFNRVMrc2V0fSIgIT0gWHNldDsgdGhlbgogICAgQ09MTEVDVF9OQU1FUz0KICAgIGV4
cG9ydCBDT0xMRUNUX05BTUVTCiAgZmkKICA7Owplc2FjCgojIFNlZCBzdWJzdGl0dXRpb24gdGhh
dCBoZWxwcyB1cyBkbyByb2J1c3QgcXVvdGluZy4gIEl0IGJhY2tzbGFzaGlmaWVzCiMgbWV0YWNo
YXJhY3RlcnMgdGhhdCBhcmUgc3RpbGwgYWN0aXZlIHdpdGhpbiBkb3VibGUtcXVvdGVkIHN0cmlu
Z3MuClhzZWQ9J3NlZCAtZSAxcy9eWC8vJwpzZWRfcXVvdGVfc3Vic3Q9J3MvXChbXFwiXFxgJFxc
XFxdXCkvXFxcMS9nJwoKIyBTYW1lIGFzIGFib3ZlLCBidXQgZG8gbm90IHF1b3RlIHZhcmlhYmxl
IHJlZmVyZW5jZXMuCmRvdWJsZV9xdW90ZV9zdWJzdD0ncy9cKFtcXCJcXGBcXFxcXVwpL1xcXDEv
ZycKCiMgU2VkIHN1YnN0aXR1dGlvbiB0byBkZWxheSBleHBhbnNpb24gb2YgYW4gZXNjYXBlZCBz
aGVsbCB2YXJpYWJsZSBpbiBhCiMgZG91YmxlX3F1b3RlX3N1YnN0J2VkIHN0cmluZy4KZGVsYXlf
dmFyaWFibGVfc3Vic3Q9J3MvXFxcXFxcXFxcXFwkL1xcXFxcXCQvZycKCiMgU2VkIHN1YnN0aXR1
dGlvbiB0byBhdm9pZCBhY2NpZGVudGFsIGdsb2JiaW5nIGluIGV2YWxlZCBleHByZXNzaW9ucwpu
b19nbG9iX3N1YnN0PSdzL1wqL1xcXCovZycKCiMgQ29uc3RhbnRzOgpybT0icm0gLWYiCgojIEds
b2JhbCB2YXJpYWJsZXM6CmRlZmF1bHRfb2ZpbGU9bGlidG9vbApjYW5fYnVpbGRfc2hhcmVkPXll
cwoKIyBBbGwga25vd24gbGlua2VycyByZXF1aXJlIGEgYC5hJyBhcmNoaXZlIGZvciBzdGF0aWMg
bGlua2luZyAoZXhjZXB0IE1TVkMsCiMgd2hpY2ggbmVlZHMgJy5saWInKS4KbGliZXh0PWEKbHRt
YWluPSIkYWNfYXV4X2Rpci9sdG1haW4uc2giCm9maWxlPSIkZGVmYXVsdF9vZmlsZSIKd2l0aF9n
bnVfbGQ9IiRsdF9jdl9wcm9nX2dudV9sZCIKCmlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7
IHRoZW4KICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9YXIi
LCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQgZHVtbXkgJHthY190
b29sX3ByZWZpeH1hcjsgYWNfd29yZD0kMgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2lu
ZyBmb3IgJGFjX3dvcmQiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNfd29yZC4u
LiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHthY19jdl9wcm9nX0FSK3NldH0iID0gc2V0OyB0
aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlmIHRlc3Qg
LW4gIiRBUiI7IHRoZW4KICBhY19jdl9wcm9nX0FSPSIkQVIiICMgTGV0IHRoZSB1c2VyIG92ZXJy
aWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IK
Zm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0ZXN0IC16ICIkYXNf
ZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9l
eHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4
dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07
IHRoZW4KICAgIGFjX2N2X3Byb2dfQVI9IiR7YWNfdG9vbF9wcmVmaXh9YXIiCiAgICBlY2hvICIk
YXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CiAg
ICBicmVhayAyCiAgZmkKZG9uZQpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCmZpCmZpCkFSPSRhY19j
dl9wcm9nX0FSCmlmIHRlc3QgLW4gIiRBUiI7IHRoZW4KICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiByZXN1bHQ6ICRBUiIgPiY1CmVjaG8gIiR7RUNIT19UfSRBUiIgPiY2OyB9CmVsc2UKICB7IGVj
aG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IG5vIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8iID4m
NjsgfQpmaQoKCmZpCmlmIHRlc3QgLXogIiRhY19jdl9wcm9nX0FSIjsgdGhlbgogIGFjX2N0X0FS
PSRBUgogICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiYXIiLCBzbyBpdCBjYW4gYmUgYSBw
cm9ncmFtIG5hbWUgd2l0aCBhcmdzLgpzZXQgZHVtbXkgYXI7IGFjX3dvcmQ9JDIKeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19OICJj
aGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3Zf
cHJvZ19hY19jdF9BUitzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkg
JEVDSE9fQyIgPiY2CmVsc2UKICBpZiB0ZXN0IC1uICIkYWNfY3RfQVIiOyB0aGVuCiAgYWNfY3Zf
cHJvZ19hY19jdF9BUj0iJGFjX2N0X0FSIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVz
dC4KZWxzZQphc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIg
aW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVfSUZTCiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNf
ZGlyPS4KICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsg
ZG8KICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc19l
eGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCiAgICBh
Y19jdl9wcm9nX2FjX2N0X0FSPSJhciIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAk
YXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRv
bmUKSUZTPSRhc19zYXZlX0lGUwoKZmkKZmkKYWNfY3RfQVI9JGFjX2N2X3Byb2dfYWNfY3RfQVIK
aWYgdGVzdCAtbiAiJGFjX2N0X0FSIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogJGFjX2N0X0FSIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGFjX2N0X0FSIiA+JjY7IH0KZWxz
ZQogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQplY2hvICIke0VDSE9f
VH1ubyIgPiY2OyB9CmZpCgogIGlmIHRlc3QgIngkYWNfY3RfQVIiID0geDsgdGhlbgogICAgQVI9
ImZhbHNlIgogIGVsc2UKICAgIGNhc2UgJGNyb3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQg
aW4KeWVzOikKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogSW4gdGhlIGZ1dHVyZSwg
QXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNyb3NzLXRvb2xzCndob3NlIG5hbWUgZG9lcyBub3Qg
c3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAgSWYgeW91IHRoaW5rIHRoaXMKY29uZmlndXJh
dGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVhc2Ugd3JpdGUgdG8gYXV0b2NvbmZAZ251Lm9yZy4i
ID4mNQplY2hvICIkYXNfbWU6IFdBUk5JTkc6IEluIHRoZSBmdXR1cmUsIEF1dG9jb25mIHdpbGwg
bm90IGRldGVjdCBjcm9zcy10b29scwp3aG9zZSBuYW1lIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhl
IGhvc3QgdHJpcGxldC4gIElmIHlvdSB0aGluayB0aGlzCmNvbmZpZ3VyYXRpb24gaXMgdXNlZnVs
IHRvIHlvdSwgcGxlYXNlIHdyaXRlIHRvIGF1dG9jb25mQGdudS5vcmcuIiA+JjI7fQphY190b29s
X3dhcm5lZD15ZXMgOzsKZXNhYwogICAgQVI9JGFjX2N0X0FSCiAgZmkKZWxzZQogIEFSPSIkYWNf
Y3ZfcHJvZ19BUiIKZmkKCmlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KICAjIEV4
dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9cmFubGliIiwgc28gaXQg
Y2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1bW15ICR7YWNfdG9vbF9wcmVm
aXh9cmFubGliOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZv
ciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRF
Q0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2dfUkFOTElCK3NldH0iID0gc2V0OyB0
aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGlmIHRlc3Qg
LW4gIiRSQU5MSUIiOyB0aGVuCiAgYWNfY3ZfcHJvZ19SQU5MSUI9IiRSQU5MSUIiICMgTGV0IHRo
ZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgplbHNlCmFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFU
SF9TRVBBUkFUT1IKZm9yIGFzX2RpciBpbiAkUEFUSApkbwogIElGUz0kYXNfc2F2ZV9JRlMKICB0
ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgogIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNf
ZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbwogIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29y
ZCRhY19leGVjX2V4dCIgJiYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19l
eGVjX2V4dCI7IH07IHRoZW4KICAgIGFjX2N2X3Byb2dfUkFOTElCPSIke2FjX3Rvb2xfcHJlZml4
fXJhbmxpYiIKICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3Jk
JGFjX2V4ZWNfZXh0IiA+JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZl
X0lGUwoKZmkKZmkKUkFOTElCPSRhY19jdl9wcm9nX1JBTkxJQgppZiB0ZXN0IC1uICIkUkFOTElC
IjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJFJBTkxJQiIgPiY1CmVj
aG8gIiR7RUNIT19UfSRSQU5MSUIiID4mNjsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0KZmkKCgpmaQppZiB0
ZXN0IC16ICIkYWNfY3ZfcHJvZ19SQU5MSUIiOyB0aGVuCiAgYWNfY3RfUkFOTElCPSRSQU5MSUIK
ICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgInJhbmxpYiIsIHNvIGl0IGNhbiBiZSBhIHBy
b2dyYW0gbmFtZSB3aXRoIGFyZ3MuCnNldCBkdW1teSByYW5saWI7IGFjX3dvcmQ9JDIKeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19O
ICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNf
Y3ZfcHJvZ19hY19jdF9SQU5MSUIrc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihj
YWNoZWQpICRFQ0hPX0MiID4mNgplbHNlCiAgaWYgdGVzdCAtbiAiJGFjX2N0X1JBTkxJQiI7IHRo
ZW4KICBhY19jdl9wcm9nX2FjX2N0X1JBTkxJQj0iJGFjX2N0X1JBTkxJQiIgIyBMZXQgdGhlIHVz
ZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCmVsc2UKYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NF
UEFSQVRPUgpmb3IgYXNfZGlyIGluICRQQVRICmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3Qg
LXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCiAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVj
dXRhYmxlX2V4dGVuc2lvbnM7IGRvCiAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFj
X2V4ZWNfZXh0IiAmJiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNf
ZXh0IjsgfTsgdGhlbgogICAgYWNfY3ZfcHJvZ19hY19jdF9SQU5MSUI9InJhbmxpYiIKICAgIGVj
aG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+
JjUKICAgIGJyZWFrIDIKICBmaQpkb25lCmRvbmUKSUZTPSRhc19zYXZlX0lGUwoKZmkKZmkKYWNf
Y3RfUkFOTElCPSRhY19jdl9wcm9nX2FjX2N0X1JBTkxJQgppZiB0ZXN0IC1uICIkYWNfY3RfUkFO
TElCIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0X1JBTkxJ
QiIgPiY1CmVjaG8gIiR7RUNIT19UfSRhY19jdF9SQU5MSUIiID4mNjsgfQplbHNlCiAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7
IH0KZmkKCiAgaWYgdGVzdCAieCRhY19jdF9SQU5MSUIiID0geDsgdGhlbgogICAgUkFOTElCPSI6
IgogIGVsc2UKICAgIGNhc2UgJGNyb3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQgaW4KeWVz
OikKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogSW4gdGhlIGZ1dHVyZSwgQXV0b2Nv
bmYgd2lsbCBub3QgZGV0ZWN0IGNyb3NzLXRvb2xzCndob3NlIG5hbWUgZG9lcyBub3Qgc3RhcnQg
d2l0aCB0aGUgaG9zdCB0cmlwbGV0LiAgSWYgeW91IHRoaW5rIHRoaXMKY29uZmlndXJhdGlvbiBp
cyB1c2VmdWwgdG8geW91LCBwbGVhc2Ugd3JpdGUgdG8gYXV0b2NvbmZAZ251Lm9yZy4iID4mNQpl
Y2hvICIkYXNfbWU6IFdBUk5JTkc6IEluIHRoZSBmdXR1cmUsIEF1dG9jb25mIHdpbGwgbm90IGRl
dGVjdCBjcm9zcy10b29scwp3aG9zZSBuYW1lIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhlIGhvc3Qg
dHJpcGxldC4gIElmIHlvdSB0aGluayB0aGlzCmNvbmZpZ3VyYXRpb24gaXMgdXNlZnVsIHRvIHlv
dSwgcGxlYXNlIHdyaXRlIHRvIGF1dG9jb25mQGdudS5vcmcuIiA+JjI7fQphY190b29sX3dhcm5l
ZD15ZXMgOzsKZXNhYwogICAgUkFOTElCPSRhY19jdF9SQU5MSUIKICBmaQplbHNlCiAgUkFOTElC
PSIkYWNfY3ZfcHJvZ19SQU5MSUIiCmZpCgppZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0
aGVuCiAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rvb2xfcHJlZml4fXN0cmlw
Iiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4Kc2V0IGR1bW15ICR7YWNf
dG9vbF9wcmVmaXh9c3RyaXA7IGFjX3dvcmQ9JDIKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hl
Y2tpbmcgZm9yICRhY193b3JkIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dv
cmQuLi4gJEVDSE9fQyIgPiY2OyB9CmlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19TVFJJUCtzZXR9IiA9
IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBp
ZiB0ZXN0IC1uICIkU1RSSVAiOyB0aGVuCiAgYWNfY3ZfcHJvZ19TVFJJUD0iJFNUUklQIiAjIExl
dCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KZWxzZQphc19zYXZlX0lGUz0kSUZTOyBJRlM9
JFBBVEhfU0VQQVJBVE9SCmZvciBhc19kaXIgaW4gJFBBVEgKZG8KICBJRlM9JGFzX3NhdmVfSUZT
CiAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KICBmb3IgYWNfZXhlY19leHQgaW4gJycg
JGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFj
X3dvcmQkYWNfZXhlY19leHQiICYmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQk
YWNfZXhlY19leHQiOyB9OyB0aGVuCiAgICBhY19jdl9wcm9nX1NUUklQPSIke2FjX3Rvb2xfcHJl
Zml4fXN0cmlwIgogICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGZvdW5kICRhc19kaXIvJGFjX3dv
cmQkYWNfZXhlY19leHQiID4mNQogICAgYnJlYWsgMgogIGZpCmRvbmUKZG9uZQpJRlM9JGFzX3Nh
dmVfSUZTCgpmaQpmaQpTVFJJUD0kYWNfY3ZfcHJvZ19TVFJJUAppZiB0ZXN0IC1uICIkU1RSSVAi
OyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkU1RSSVAiID4mNQplY2hv
ICIke0VDSE9fVH0kU1RSSVAiID4mNjsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0KZmkKCgpmaQppZiB0ZXN0
IC16ICIkYWNfY3ZfcHJvZ19TVFJJUCI7IHRoZW4KICBhY19jdF9TVFJJUD0kU1RSSVAKICAjIEV4
dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgInN0cmlwIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBu
YW1lIHdpdGggYXJncy4Kc2V0IGR1bW15IHN0cmlwOyBhY193b3JkPSQyCnsgZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2FjX2N2X3Byb2df
YWNfY3RfU1RSSVArc2V0fSIgPSBzZXQ7IHRoZW4KICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRF
Q0hPX0MiID4mNgplbHNlCiAgaWYgdGVzdCAtbiAiJGFjX2N0X1NUUklQIjsgdGhlbgogIGFjX2N2
X3Byb2dfYWNfY3RfU1RSSVA9IiRhY19jdF9TVFJJUCIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUg
dGhlIHRlc3QuCmVsc2UKYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgpmb3Ig
YXNfZGlyIGluICRQQVRICmRvCiAgSUZTPSRhc19zYXZlX0lGUwogIHRlc3QgLXogIiRhc19kaXIi
ICYmIGFzX2Rpcj0uCiAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVu
c2lvbnM7IGRvCiAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAm
JiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhl
bgogICAgYWNfY3ZfcHJvZ19hY19jdF9TVFJJUD0ic3RyaXAiCiAgICBlY2hvICIkYXNfbWU6JExJ
TkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CiAgICBicmVhayAy
CiAgZmkKZG9uZQpkb25lCklGUz0kYXNfc2F2ZV9JRlMKCmZpCmZpCmFjX2N0X1NUUklQPSRhY19j
dl9wcm9nX2FjX2N0X1NUUklQCmlmIHRlc3QgLW4gIiRhY19jdF9TVFJJUCI7IHRoZW4KICB7IGVj
aG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdF9TVFJJUCIgPiY1CmVjaG8gIiR7RUNI
T19UfSRhY19jdF9TVFJJUCIgPiY2OyB9CmVsc2UKICB7IGVjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6IG5vIiA+JjUKZWNobyAiJHtFQ0hPX1R9bm8iID4mNjsgfQpmaQoKICBpZiB0ZXN0ICJ4
JGFjX2N0X1NUUklQIiA9IHg7IHRoZW4KICAgIFNUUklQPSI6IgogIGVsc2UKICAgIGNhc2UgJGNy
b3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQgaW4KeWVzOikKeyBlY2hvICIkYXNfbWU6JExJ
TkVOTzogV0FSTklORzogSW4gdGhlIGZ1dHVyZSwgQXV0b2NvbmYgd2lsbCBub3QgZGV0ZWN0IGNy
b3NzLXRvb2xzCndob3NlIG5hbWUgZG9lcyBub3Qgc3RhcnQgd2l0aCB0aGUgaG9zdCB0cmlwbGV0
LiAgSWYgeW91IHRoaW5rIHRoaXMKY29uZmlndXJhdGlvbiBpcyB1c2VmdWwgdG8geW91LCBwbGVh
c2Ugd3JpdGUgdG8gYXV0b2NvbmZAZ251Lm9yZy4iID4mNQplY2hvICIkYXNfbWU6IFdBUk5JTkc6
IEluIHRoZSBmdXR1cmUsIEF1dG9jb25mIHdpbGwgbm90IGRldGVjdCBjcm9zcy10b29scwp3aG9z
ZSBuYW1lIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhlIGhvc3QgdHJpcGxldC4gIElmIHlvdSB0aGlu
ayB0aGlzCmNvbmZpZ3VyYXRpb24gaXMgdXNlZnVsIHRvIHlvdSwgcGxlYXNlIHdyaXRlIHRvIGF1
dG9jb25mQGdudS5vcmcuIiA+JjI7fQphY190b29sX3dhcm5lZD15ZXMgOzsKZXNhYwogICAgU1RS
SVA9JGFjX2N0X1NUUklQCiAgZmkKZWxzZQogIFNUUklQPSIkYWNfY3ZfcHJvZ19TVFJJUCIKZmkK
CgpvbGRfQ0M9IiRDQyIKb2xkX0NGTEFHUz0iJENGTEFHUyIKCiMgU2V0IHNhbmUgZGVmYXVsdHMg
Zm9yIHZhcmlvdXMgdmFyaWFibGVzCnRlc3QgLXogIiRBUiIgJiYgQVI9YXIKdGVzdCAteiAiJEFS
X0ZMQUdTIiAmJiBBUl9GTEFHUz1jcnUKdGVzdCAteiAiJEFTIiAmJiBBUz1hcwp0ZXN0IC16ICIk
Q0MiICYmIENDPWNjCnRlc3QgLXogIiRMVENDIiAmJiBMVENDPSRDQwp0ZXN0IC16ICIkTFRDRkxB
R1MiICYmIExUQ0ZMQUdTPSRDRkxBR1MKdGVzdCAteiAiJERMTFRPT0wiICYmIERMTFRPT0w9ZGxs
dG9vbAp0ZXN0IC16ICIkTEQiICYmIExEPWxkCnRlc3QgLXogIiRMTl9TIiAmJiBMTl9TPSJsbiAt
cyIKdGVzdCAteiAiJE1BR0lDX0NNRCIgJiYgTUFHSUNfQ01EPWZpbGUKdGVzdCAteiAiJE5NIiAm
JiBOTT1ubQp0ZXN0IC16ICIkU0VEIiAmJiBTRUQ9c2VkCnRlc3QgLXogIiRPQkpEVU1QIiAmJiBP
QkpEVU1QPW9iamR1bXAKdGVzdCAteiAiJFJBTkxJQiIgJiYgUkFOTElCPToKdGVzdCAteiAiJFNU
UklQIiAmJiBTVFJJUD06CnRlc3QgLXogIiRhY19vYmpleHQiICYmIGFjX29iamV4dD1vCgojIERl
dGVybWluZSBjb21tYW5kcyB0byBjcmVhdGUgb2xkLXN0eWxlIHN0YXRpYyBhcmNoaXZlcy4Kb2xk
X2FyY2hpdmVfY21kcz0nJEFSICRBUl9GTEFHUyAkb2xkbGliJG9sZG9ianMkb2xkX2RlcGxpYnMn
Cm9sZF9wb3N0aW5zdGFsbF9jbWRzPSdjaG1vZCA2NDQgJG9sZGxpYicKb2xkX3Bvc3R1bmluc3Rh
bGxfY21kcz0KCmlmIHRlc3QgLW4gIiRSQU5MSUIiOyB0aGVuCiAgY2FzZSAkaG9zdF9vcyBpbgog
IG9wZW5ic2QqKQogICAgb2xkX3Bvc3RpbnN0YWxsX2NtZHM9IiRvbGRfcG9zdGluc3RhbGxfY21k
c35cJFJBTkxJQiAtdCBcJG9sZGxpYiIKICAgIDs7CiAgKikKICAgIG9sZF9wb3N0aW5zdGFsbF9j
bWRzPSIkb2xkX3Bvc3RpbnN0YWxsX2NtZHN+XCRSQU5MSUIgXCRvbGRsaWIiCiAgICA7OwogIGVz
YWMKICBvbGRfYXJjaGl2ZV9jbWRzPSIkb2xkX2FyY2hpdmVfY21kc35cJFJBTkxJQiBcJG9sZGxp
YiIKZmkKCmZvciBjY190ZW1wIGluICRjb21waWxlciIiOyBkbwogIGNhc2UgJGNjX3RlbXAgaW4K
ICAgIGNvbXBpbGUgfCAqW1xcL11jb21waWxlIHwgY2NhY2hlIHwgKltcXC9dY2NhY2hlICkgOzsK
ICAgIGRpc3RjYyB8ICpbXFwvXWRpc3RjYyB8IHB1cmlmeSB8ICpbXFwvXXB1cmlmeSApIDs7CiAg
ICBcLSopIDs7CiAgICAqKSBicmVhazs7CiAgZXNhYwpkb25lCmNjX2Jhc2VuYW1lPWAkZWNobyAi
WCRjY190ZW1wIiB8ICRYc2VkIC1lICdzJS4qLyUlJyAtZSAicyVeJGhvc3RfYWxpYXMtJSUiYAoK
CiMgT25seSBwZXJmb3JtIHRoZSBjaGVjayBmb3IgZmlsZSwgaWYgdGhlIGNoZWNrIG1ldGhvZCBy
ZXF1aXJlcyBpdApjYXNlICRkZXBsaWJzX2NoZWNrX21ldGhvZCBpbgpmaWxlX21hZ2ljKikKICBp
ZiB0ZXN0ICIkZmlsZV9tYWdpY19jbWQiID0gJyRNQUdJQ19DTUQnOyB0aGVuCiAgICB7IGVjaG8g
IiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJHthY190b29sX3ByZWZpeH1maWxlIiA+JjUK
ZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJHthY190b29sX3ByZWZpeH1maWxlLi4uICRFQ0hP
X0MiID4mNjsgfQppZiB0ZXN0ICIke2x0X2N2X3BhdGhfTUFHSUNfQ01EK3NldH0iID0gc2V0OyB0
aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGNhc2UgJE1B
R0lDX0NNRCBpbgpbXFwvKl0gfCAgPzpbXFwvXSopCiAgbHRfY3ZfcGF0aF9NQUdJQ19DTUQ9IiRN
QUdJQ19DTUQiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgog
IDs7CiopCiAgbHRfc2F2ZV9NQUdJQ19DTUQ9IiRNQUdJQ19DTUQiCiAgbHRfc2F2ZV9pZnM9IiRJ
RlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCiAgYWNfZHVtbXk9Ii91c3IvYmluJFBBVEhfU0VQQVJB
VE9SJFBBVEgiCiAgZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCiAgICBJRlM9IiRsdF9zYXZl
X2lmcyIKICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCiAgICBpZiB0ZXN0IC1mICRh
Y19kaXIvJHthY190b29sX3ByZWZpeH1maWxlOyB0aGVuCiAgICAgIGx0X2N2X3BhdGhfTUFHSUNf
Q01EPSIkYWNfZGlyLyR7YWNfdG9vbF9wcmVmaXh9ZmlsZSIKICAgICAgaWYgdGVzdCAtbiAiJGZp
bGVfbWFnaWNfdGVzdF9maWxlIjsgdGhlbgoJY2FzZSAkZGVwbGlic19jaGVja19tZXRob2QgaW4K
CSJmaWxlX21hZ2ljICIqKQoJICBmaWxlX21hZ2ljX3JlZ2V4PWBleHByICIkZGVwbGlic19jaGVj
a19tZXRob2QiIDogImZpbGVfbWFnaWMgXCguKlwpImAKCSAgTUFHSUNfQ01EPSIkbHRfY3ZfcGF0
aF9NQUdJQ19DTUQiCgkgIGlmIGV2YWwgJGZpbGVfbWFnaWNfY21kIFwkZmlsZV9tYWdpY190ZXN0
X2ZpbGUgMj4gL2Rldi9udWxsIHwKCSAgICAkRUdSRVAgIiRmaWxlX21hZ2ljX3JlZ2V4IiA+IC9k
ZXYvbnVsbDsgdGhlbgoJICAgIDoKCSAgZWxzZQoJICAgIGNhdCA8PEVPRiAxPiYyCgoqKiogV2Fy
bmluZzogdGhlIGNvbW1hbmQgbGlidG9vbCB1c2VzIHRvIGRldGVjdCBzaGFyZWQgbGlicmFyaWVz
LAoqKiogJGZpbGVfbWFnaWNfY21kLCBwcm9kdWNlcyBvdXRwdXQgdGhhdCBsaWJ0b29sIGNhbm5v
dCByZWNvZ25pemUuCioqKiBUaGUgcmVzdWx0IGlzIHRoYXQgbGlidG9vbCBtYXkgZmFpbCB0byBy
ZWNvZ25pemUgc2hhcmVkIGxpYnJhcmllcwoqKiogYXMgc3VjaC4gIFRoaXMgd2lsbCBhZmZlY3Qg
dGhlIGNyZWF0aW9uIG9mIGxpYnRvb2wgbGlicmFyaWVzIHRoYXQKKioqIGRlcGVuZCBvbiBzaGFy
ZWQgbGlicmFyaWVzLCBidXQgcHJvZ3JhbXMgbGlua2VkIHdpdGggc3VjaCBsaWJ0b29sCioqKiBs
aWJyYXJpZXMgd2lsbCB3b3JrIHJlZ2FyZGxlc3Mgb2YgdGhpcyBwcm9ibGVtLiAgTmV2ZXJ0aGVs
ZXNzLCB5b3UKKioqIG1heSB3YW50IHRvIHJlcG9ydCB0aGUgcHJvYmxlbSB0byB5b3VyIHN5c3Rl
bSBtYW5hZ2VyIGFuZC9vciB0bwoqKiogYnVnLWxpYnRvb2xAZ251Lm9yZwoKRU9GCgkgIGZpIDs7
Cgllc2FjCiAgICAgIGZpCiAgICAgIGJyZWFrCiAgICBmaQogIGRvbmUKICBJRlM9IiRsdF9zYXZl
X2lmcyIKICBNQUdJQ19DTUQ9IiRsdF9zYXZlX01BR0lDX0NNRCIKICA7Owplc2FjCmZpCgpNQUdJ
Q19DTUQ9IiRsdF9jdl9wYXRoX01BR0lDX0NNRCIKaWYgdGVzdCAtbiAiJE1BR0lDX0NNRCI7IHRo
ZW4KICB7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRNQUdJQ19DTUQiID4mNQplY2hv
ICIke0VDSE9fVH0kTUFHSUNfQ01EIiA+JjY7IH0KZWxzZQogIHsgZWNobyAiJGFzX21lOiRMSU5F
Tk86IHJlc3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CmZpCgppZiB0ZXN0
IC16ICIkbHRfY3ZfcGF0aF9NQUdJQ19DTUQiOyB0aGVuCiAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xf
cHJlZml4IjsgdGhlbgogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIGZp
bGUiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBmaWxlLi4uICRFQ0hPX0MiID4mNjsg
fQppZiB0ZXN0ICIke2x0X2N2X3BhdGhfTUFHSUNfQ01EK3NldH0iID0gc2V0OyB0aGVuCiAgZWNo
byAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGNhc2UgJE1BR0lDX0NNRCBp
bgpbXFwvKl0gfCAgPzpbXFwvXSopCiAgbHRfY3ZfcGF0aF9NQUdJQ19DTUQ9IiRNQUdJQ19DTUQi
ICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgogIDs7CiopCiAg
bHRfc2F2ZV9NQUdJQ19DTUQ9IiRNQUdJQ19DTUQiCiAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9
JFBBVEhfU0VQQVJBVE9SCiAgYWNfZHVtbXk9Ii91c3IvYmluJFBBVEhfU0VQQVJBVE9SJFBBVEgi
CiAgZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCiAgICBJRlM9IiRsdF9zYXZlX2lmcyIKICAg
IHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCiAgICBpZiB0ZXN0IC1mICRhY19kaXIvZmls
ZTsgdGhlbgogICAgICBsdF9jdl9wYXRoX01BR0lDX0NNRD0iJGFjX2Rpci9maWxlIgogICAgICBp
ZiB0ZXN0IC1uICIkZmlsZV9tYWdpY190ZXN0X2ZpbGUiOyB0aGVuCgljYXNlICRkZXBsaWJzX2No
ZWNrX21ldGhvZCBpbgoJImZpbGVfbWFnaWMgIiopCgkgIGZpbGVfbWFnaWNfcmVnZXg9YGV4cHIg
IiRkZXBsaWJzX2NoZWNrX21ldGhvZCIgOiAiZmlsZV9tYWdpYyBcKC4qXCkiYAoJICBNQUdJQ19D
TUQ9IiRsdF9jdl9wYXRoX01BR0lDX0NNRCIKCSAgaWYgZXZhbCAkZmlsZV9tYWdpY19jbWQgXCRm
aWxlX21hZ2ljX3Rlc3RfZmlsZSAyPiAvZGV2L251bGwgfAoJICAgICRFR1JFUCAiJGZpbGVfbWFn
aWNfcmVnZXgiID4gL2Rldi9udWxsOyB0aGVuCgkgICAgOgoJICBlbHNlCgkgICAgY2F0IDw8RU9G
IDE+JjIKCioqKiBXYXJuaW5nOiB0aGUgY29tbWFuZCBsaWJ0b29sIHVzZXMgdG8gZGV0ZWN0IHNo
YXJlZCBsaWJyYXJpZXMsCioqKiAkZmlsZV9tYWdpY19jbWQsIHByb2R1Y2VzIG91dHB1dCB0aGF0
IGxpYnRvb2wgY2Fubm90IHJlY29nbml6ZS4KKioqIFRoZSByZXN1bHQgaXMgdGhhdCBsaWJ0b29s
IG1heSBmYWlsIHRvIHJlY29nbml6ZSBzaGFyZWQgbGlicmFyaWVzCioqKiBhcyBzdWNoLiAgVGhp
cyB3aWxsIGFmZmVjdCB0aGUgY3JlYXRpb24gb2YgbGlidG9vbCBsaWJyYXJpZXMgdGhhdAoqKiog
ZGVwZW5kIG9uIHNoYXJlZCBsaWJyYXJpZXMsIGJ1dCBwcm9ncmFtcyBsaW5rZWQgd2l0aCBzdWNo
IGxpYnRvb2wKKioqIGxpYnJhcmllcyB3aWxsIHdvcmsgcmVnYXJkbGVzcyBvZiB0aGlzIHByb2Js
ZW0uICBOZXZlcnRoZWxlc3MsIHlvdQoqKiogbWF5IHdhbnQgdG8gcmVwb3J0IHRoZSBwcm9ibGVt
IHRvIHlvdXIgc3lzdGVtIG1hbmFnZXIgYW5kL29yIHRvCioqKiBidWctbGlidG9vbEBnbnUub3Jn
CgpFT0YKCSAgZmkgOzsKCWVzYWMKICAgICAgZmkKICAgICAgYnJlYWsKICAgIGZpCiAgZG9uZQog
IElGUz0iJGx0X3NhdmVfaWZzIgogIE1BR0lDX0NNRD0iJGx0X3NhdmVfTUFHSUNfQ01EIgogIDs7
CmVzYWMKZmkKCk1BR0lDX0NNRD0iJGx0X2N2X3BhdGhfTUFHSUNfQ01EIgppZiB0ZXN0IC1uICIk
TUFHSUNfQ01EIjsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJE1BR0lD
X0NNRCIgPiY1CmVjaG8gIiR7RUNIT19UfSRNQUdJQ19DTUQiID4mNjsgfQplbHNlCiAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7
IH0KZmkKCiAgZWxzZQogICAgTUFHSUNfQ01EPToKICBmaQpmaQoKICBmaQogIDs7CmVzYWMKCmVu
YWJsZV9kbG9wZW49bm8KZW5hYmxlX3dpbjMyX2RsbD1ubwoKIyBDaGVjayB3aGV0aGVyIC0tZW5h
YmxlLWxpYnRvb2wtbG9jayB3YXMgZ2l2ZW4uCmlmIHRlc3QgIiR7ZW5hYmxlX2xpYnRvb2xfbG9j
aytzZXR9IiA9IHNldDsgdGhlbgogIGVuYWJsZXZhbD0kZW5hYmxlX2xpYnRvb2xfbG9jazsKZmkK
CnRlc3QgIngkZW5hYmxlX2xpYnRvb2xfbG9jayIgIT0geG5vICYmIGVuYWJsZV9saWJ0b29sX2xv
Y2s9eWVzCgoKIyBDaGVjayB3aGV0aGVyIC0td2l0aC1waWMgd2FzIGdpdmVuLgppZiB0ZXN0ICIk
e3dpdGhfcGljK3NldH0iID0gc2V0OyB0aGVuCiAgd2l0aHZhbD0kd2l0aF9waWM7IHBpY19tb2Rl
PSIkd2l0aHZhbCIKZWxzZQogIHBpY19tb2RlPWRlZmF1bHQKZmkKCnRlc3QgLXogIiRwaWNfbW9k
ZSIgJiYgcGljX21vZGU9ZGVmYXVsdAoKIyBDaGVjayBpZiB3ZSBoYXZlIGEgdmVyc2lvbiBtaXNt
YXRjaCBiZXR3ZWVuIGxpYnRvb2wubTQgYW5kIGx0bWFpbi5zaC4KIwojIE5vdGU6ICBUaGlzIHNo
b3VsZCBiZSBpbiBBQ19MSUJUT09MX1NFVFVQLCBfYWZ0ZXJfICRsdG1haW4gaGF2ZSBiZWVuIGRl
ZmluZWQuCiMgICAgICAgIFdlIGFsc28gc2hvdWxkIGRvIGl0IF9iZWZvcmVfIEFDX0xJQlRPT0xf
TEFOR19DX0NPTkZJRyB0aGF0IGFjdHVhbGx5CiMgICAgICAgIGNhbGxzIEFDX0xJQlRPT0xfQ09O
RklHIGFuZCBjcmVhdGVzIGxpYnRvb2wuCiMKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tp
bmcgZm9yIGNvcnJlY3QgbHRtYWluLnNoIHZlcnNpb24iID4mNQplY2hvICRFQ0hPX04gImNoZWNr
aW5nIGZvciBjb3JyZWN0IGx0bWFpbi5zaCB2ZXJzaW9uLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0
ZXN0ICJ4JGx0bWFpbiIgPSAieCIgOyB0aGVuCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiBubyIgPiY1CmVjaG8gIiR7RUNIT19UfW5vIiA+JjY7IH0KICB7IHsgZWNobyAiJGFzX21l
OiRMSU5FTk86IGVycm9yOgoKKioqIFtHZW50b29dIHNhbml0eSBjaGVjayBmYWlsZWQhICoqKgoq
KiogXCRsdG1haW4gaXMgbm90IGRlZmluZWQsIHBsZWFzZSBjaGVjayB0aGUgcGF0Y2ggZm9yIGNv
bnNpc3RlbmN5ISAqKioKIiA+JjUKZWNobyAiJGFzX21lOiBlcnJvcjoKCioqKiBbR2VudG9vXSBz
YW5pdHkgY2hlY2sgZmFpbGVkISAqKioKKioqIFwkbHRtYWluIGlzIG5vdCBkZWZpbmVkLCBwbGVh
c2UgY2hlY2sgdGhlIHBhdGNoIGZvciBjb25zaXN0ZW5jeSEgKioqCiIgPiYyO30KICAgeyAoZXhp
dCAxKTsgZXhpdCAxOyB9OyB9CmZpCmdlbnRvb19sdF92ZXJzaW9uPSIxLjUuMjIiCmdlbnRvb19s
dG1haW5fdmVyc2lvbj1gc2VkIC1uICcvXlsgCV0qVkVSU0lPTj0ve3MvXlsgCV0qVkVSU0lPTj0v
LztwO3E7fScgIiRsdG1haW4iYAppZiB0ZXN0ICJ4JGdlbnRvb19sdF92ZXJzaW9uIiAhPSAieCRn
ZW50b29fbHRtYWluX3ZlcnNpb24iIDsgdGhlbgogIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogbm8iID4mNQplY2hvICIke0VDSE9fVH1ubyIgPiY2OyB9CiAgeyB7IGVjaG8gIiRhc19t
ZTokTElORU5POiBlcnJvcjoKCioqKiBbR2VudG9vXSBzYW5pdHkgY2hlY2sgZmFpbGVkISAqKioK
KioqIGxpYnRvb2wubTQgYW5kIGx0bWFpbi5zaCBoYXZlIGEgdmVyc2lvbiBtaXNtYXRjaCEgKioq
CioqKiAobGlidG9vbC5tNCA9ICRnZW50b29fbHRfdmVyc2lvbiwgbHRtYWluLnNoID0gJGdlbnRv
b19sdG1haW5fdmVyc2lvbikgKioqCgpQbGVhc2UgcnVuOgoKICBsaWJ0b29saXplIC0tY29weSAt
LWZvcmNlCgppZiBhcHByb3ByaWF0ZSwgcGxlYXNlIGNvbnRhY3QgdGhlIG1haW50YWluZXIgb2Yg
dGhpcwpwYWNrYWdlIChvciB5b3VyIGRpc3RyaWJ1dGlvbikgZm9yIGhlbHAuCiIgPiY1CmVjaG8g
IiRhc19tZTogZXJyb3I6CgoqKiogW0dlbnRvb10gc2FuaXR5IGNoZWNrIGZhaWxlZCEgKioqCioq
KiBsaWJ0b29sLm00IGFuZCBsdG1haW4uc2ggaGF2ZSBhIHZlcnNpb24gbWlzbWF0Y2ghICoqKgoq
KiogKGxpYnRvb2wubTQgPSAkZ2VudG9vX2x0X3ZlcnNpb24sIGx0bWFpbi5zaCA9ICRnZW50b29f
bHRtYWluX3ZlcnNpb24pICoqKgoKUGxlYXNlIHJ1bjoKCiAgbGlidG9vbGl6ZSAtLWNvcHkgLS1m
b3JjZQoKaWYgYXBwcm9wcmlhdGUsIHBsZWFzZSBjb250YWN0IHRoZSBtYWludGFpbmVyIG9mIHRo
aXMKcGFja2FnZSAob3IgeW91ciBkaXN0cmlidXRpb24pIGZvciBoZWxwLgoiID4mMjt9CiAgIHsg
KGV4aXQgMSk7IGV4aXQgMTsgfTsgfQplbHNlCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiB5ZXMiID4mNQplY2hvICIke0VDSE9fVH15ZXMiID4mNjsgfQpmaQoKCiMgVXNlIEMgZm9y
IHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gaW4gdGhlIGxpYnRvb2wgc2NyaXB0CnRhZ25hbWU9
Cmx0X3NhdmVfQ0M9IiRDQyIKYWNfZXh0PWMKYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKYWNfY29t
cGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwphY19s
aW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdT
IGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwphY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29t
cGlsZXJfZ251CgoKIyBTb3VyY2UgZmlsZSBleHRlbnNpb24gZm9yIEMgdGVzdCBzb3VyY2VzLgph
Y19leHQ9YwoKIyBPYmplY3QgZmlsZSBleHRlbnNpb24gZm9yIGNvbXBpbGVkIEMgdGVzdCBzb3Vy
Y2VzLgpvYmpleHQ9bwpvYmpleHQ9JG9iamV4dAoKIyBDb2RlIHRvIGJlIHVzZWQgaW4gc2ltcGxl
IGNvbXBpbGUgdGVzdHMKbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlPSJpbnQgc29tZV92YXJp
YWJsZSA9IDA7XG4iCgojIENvZGUgdG8gYmUgdXNlZCBpbiBzaW1wbGUgbGluayB0ZXN0cwpsdF9z
aW1wbGVfbGlua190ZXN0X2NvZGU9J2ludCBtYWluKCl7cmV0dXJuKDApO31cbicKCgojIElmIG5v
IEMgY29tcGlsZXIgd2FzIHNwZWNpZmllZCwgdXNlIENDLgpMVENDPSR7TFRDQy0iJENDIn0KCiMg
SWYgbm8gQyBjb21waWxlciBmbGFncyB3ZXJlIHNwZWNpZmllZCwgdXNlIENGTEFHUy4KTFRDRkxB
R1M9JHtMVENGTEFHUy0iJENGTEFHUyJ9CgojIEFsbG93IENDIHRvIGJlIGEgcHJvZ3JhbSBuYW1l
IHdpdGggYXJndW1lbnRzLgpjb21waWxlcj0kQ0MKCgojIHNhdmUgd2FybmluZ3MvYm9pbGVycGxh
dGUgb2Ygc2ltcGxlIHRlc3QgY29kZQphY19vdXRmaWxlPWNvbmZ0ZXN0LiRhY19vYmpleHQKcHJp
bnRmICIkbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlIiA+Y29uZnRlc3QuJGFjX2V4dApldmFs
ICIkYWNfY29tcGlsZSIgMj4mMSA+L2Rldi9udWxsIHwgJFNFRCAnL14kL2Q7IC9eICorL2QnID5j
b25mdGVzdC5lcnIKX2x0X2NvbXBpbGVyX2JvaWxlcnBsYXRlPWBjYXQgY29uZnRlc3QuZXJyYAok
cm0gY29uZnRlc3QqCgphY19vdXRmaWxlPWNvbmZ0ZXN0LiRhY19vYmpleHQKcHJpbnRmICIkbHRf
c2ltcGxlX2xpbmtfdGVzdF9jb2RlIiA+Y29uZnRlc3QuJGFjX2V4dApldmFsICIkYWNfbGluayIg
Mj4mMSA+L2Rldi9udWxsIHwgJFNFRCAnL14kL2Q7IC9eICorL2QnID5jb25mdGVzdC5lcnIKX2x0
X2xpbmtlcl9ib2lsZXJwbGF0ZT1gY2F0IGNvbmZ0ZXN0LmVycmAKJHJtIGNvbmZ0ZXN0KgoKCgps
dF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0aW5fZmxhZz0KCmlmIHRlc3QgIiRHQ0MiID0geWVzOyB0
aGVuCiAgbHRfcHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWc9JyAtZm5vLWJ1aWx0aW4nCgoK
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgaWYgJGNvbXBpbGVyIHN1cHBvcnRzIC1m
bm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGlmICRj
b21waWxlciBzdXBwb3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zLi4uICRFQ0hPX0MiID4m
NjsgfQppZiB0ZXN0ICIke2x0X2N2X3Byb2dfY29tcGlsZXJfcnR0aV9leGNlcHRpb25zK3NldH0i
ID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQog
IGx0X2N2X3Byb2dfY29tcGlsZXJfcnR0aV9leGNlcHRpb25zPW5vCiAgYWNfb3V0ZmlsZT1jb25m
dGVzdC4kYWNfb2JqZXh0CiAgIHByaW50ZiAiJGx0X3NpbXBsZV9jb21waWxlX3Rlc3RfY29kZSIg
PiBjb25mdGVzdC4kYWNfZXh0CiAgIGx0X2NvbXBpbGVyX2ZsYWc9Ii1mbm8tcnR0aSAtZm5vLWV4
Y2VwdGlvbnMiCiAgICMgSW5zZXJ0IHRoZSBvcHRpb24gZWl0aGVyICgxKSBhZnRlciB0aGUgbGFz
dCAqRkxBR1MgdmFyaWFibGUsIG9yCiAgICMgKDIpIGJlZm9yZSBhIHdvcmQgY29udGFpbmluZyAi
Y29uZnRlc3QuIiwgb3IgKDMpIGF0IHRoZSBlbmQuCiAgICMgTm90ZSB0aGF0ICRhY19jb21waWxl
IGl0c2VsZiBkb2VzIG5vdCBjb250YWluIGJhY2tzbGFzaGVzIGFuZCBiZWdpbnMKICAgIyB3aXRo
IGEgZG9sbGFyIHNpZ24gKG5vdCBhIGh5cGhlbiksIHNvIHRoZSBlY2hvIHNob3VsZCB3b3JrIGNv
cnJlY3RseS4KICAgIyBUaGUgb3B0aW9uIGlzIHJlZmVyZW5jZWQgdmlhIGEgdmFyaWFibGUgdG8g
YXZvaWQgY29uZnVzaW5nIHNlZC4KICAgbHRfY29tcGlsZT1gZWNobyAiJGFjX2NvbXBpbGUiIHwg
JFNFRCBcCiAgIC1lICdzOi4qRkxBR1N9XHswLDFcfSA6JiRsdF9jb21waWxlcl9mbGFnIDo7IHQn
IFwKICAgLWUgJ3M6IFteIF0qY29uZnRlc3RcLjogJGx0X2NvbXBpbGVyX2ZsYWcmOjsgdCcgXAog
ICAtZSAnczokOiAkbHRfY29tcGlsZXJfZmxhZzonYAogICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6
NzQ5MjogJGx0X2NvbXBpbGVcIiIgPiY1KQogICAoZXZhbCAiJGx0X2NvbXBpbGUiIDI+Y29uZnRl
c3QuZXJyKQogICBhY19zdGF0dXM9JD8KICAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKICAgZWNobyAi
JGFzX21lOjc0OTY6IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICBpZiAoZXhpdCAkYWNfc3RhdHVz
KSAmJiB0ZXN0IC1zICIkYWNfb3V0ZmlsZSI7IHRoZW4KICAgICAjIFRoZSBjb21waWxlciBjYW4g
b25seSB3YXJuIGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2duaXplZAogICAgICMg
U28gc2F5IG5vIGlmIHRoZXJlIGFyZSB3YXJuaW5ncyBvdGhlciB0aGFuIHRoZSB1c3VhbCBvdXRw
dXQuCiAgICAgJGVjaG8gIlgkX2x0X2NvbXBpbGVyX2JvaWxlcnBsYXRlIiB8ICRYc2VkIC1lICcv
XiQvZCcgPmNvbmZ0ZXN0LmV4cAogICAgICRTRUQgJy9eJC9kOyAvXiAqKy9kJyBjb25mdGVzdC5l
cnIgPmNvbmZ0ZXN0LmVyMgogICAgIGlmIHRlc3QgISAtcyBjb25mdGVzdC5lcjIgfHwgZGlmZiBj
b25mdGVzdC5leHAgY29uZnRlc3QuZXIyID4vZGV2L251bGw7IHRoZW4KICAgICAgIGx0X2N2X3By
b2dfY29tcGlsZXJfcnR0aV9leGNlcHRpb25zPXllcwogICAgIGZpCiAgIGZpCiAgICRybSBjb25m
dGVzdCoKCmZpCnsgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0X2N2X3Byb2dfY29t
cGlsZXJfcnR0aV9leGNlcHRpb25zIiA+JjUKZWNobyAiJHtFQ0hPX1R9JGx0X2N2X3Byb2dfY29t
cGlsZXJfcnR0aV9leGNlcHRpb25zIiA+JjY7IH0KCmlmIHRlc3QgeCIkbHRfY3ZfcHJvZ19jb21w
aWxlcl9ydHRpX2V4Y2VwdGlvbnMiID0geHllczsgdGhlbgogICAgbHRfcHJvZ19jb21waWxlcl9u
b19idWlsdGluX2ZsYWc9IiRsdF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0aW5fZmxhZyAtZm5vLXJ0
dGkgLWZuby1leGNlcHRpb25zIgplbHNlCiAgICA6CmZpCgpmaQoKbHRfcHJvZ19jb21waWxlcl93
bD0KbHRfcHJvZ19jb21waWxlcl9waWM9Cmx0X3Byb2dfY29tcGlsZXJfc3RhdGljPQoKeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRjb21waWxlciBvcHRpb24gdG8gcHJvZHVj
ZSBQSUMiID4mNQplY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkY29tcGlsZXIgb3B0aW9uIHRv
IHByb2R1Y2UgUElDLi4uICRFQ0hPX0MiID4mNjsgfQoKICBpZiB0ZXN0ICIkR0NDIiA9IHllczsg
dGhlbgogICAgbHRfcHJvZ19jb21waWxlcl93bD0nLVdsLCcKICAgIGx0X3Byb2dfY29tcGlsZXJf
c3RhdGljPSctc3RhdGljJwoKICAgIGNhc2UgJGhvc3Rfb3MgaW4KICAgICAgYWl4KikKICAgICAg
IyBBbGwgQUlYIGNvZGUgaXMgUElDLgogICAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsg
dGhlbgoJIyBBSVggNSBub3cgc3VwcG9ydHMgSUE2NCBwcm9jZXNzb3IKCWx0X3Byb2dfY29tcGls
ZXJfc3RhdGljPSctQnN0YXRpYycKICAgICAgZmkKICAgICAgOzsKCiAgICBhbWlnYW9zKikKICAg
ICAgIyBGSVhNRTogd2UgbmVlZCBhdCBsZWFzdCA2ODAyMCBjb2RlIHRvIGJ1aWxkIHNoYXJlZCBs
aWJyYXJpZXMsIGJ1dAogICAgICAjIGFkZGluZyB0aGUgYC1tNjgwMjAnIGZsYWcgdG8gR0NDIHBy
ZXZlbnRzIGJ1aWxkaW5nIGFueXRoaW5nIGJldHRlciwKICAgICAgIyBsaWtlIGAtbTY4MDQwJy4K
ICAgICAgbHRfcHJvZ19jb21waWxlcl9waWM9Jy1tNjgwMjAgLXJlc2lkZW50MzIgLW1hbHdheXMt
cmVzdG9yZS1hNCcKICAgICAgOzsKCiAgICBiZW9zKiB8IGN5Z3dpbiogfCBpcml4NSogfCBpcml4
NiogfCBub25zdG9wdXgqIHwgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQogICAgICAjIFBJQyBpcyB0
aGUgZGVmYXVsdCBmb3IgdGhlc2UgT1Nlcy4KICAgICAgOzsKCiAgICBtaW5ndyogfCBwdzMyKiB8
IG9zMiopCiAgICAgICMgVGhpcyBoYWNrIGlzIHNvIHRoYXQgdGhlIHNvdXJjZSBmaWxlIGNhbiB0
ZWxsIHdoZXRoZXIgaXQgaXMgYmVpbmcKICAgICAgIyBidWlsdCBmb3IgaW5jbHVzaW9uIGluIGEg
ZGxsIChhbmQgc2hvdWxkIGV4cG9ydCBzeW1ib2xzIGZvciBleGFtcGxlKS4KICAgICAgbHRfcHJv
Z19jb21waWxlcl9waWM9Jy1ERExMX0VYUE9SVCcKICAgICAgOzsKCiAgICBkYXJ3aW4qIHwgcmhh
cHNvZHkqKQogICAgICAjIFBJQyBpcyB0aGUgZGVmYXVsdCBvbiB0aGlzIHBsYXRmb3JtCiAgICAg
ICMgQ29tbW9uIHN5bWJvbHMgbm90IGFsbG93ZWQgaW4gTUhfRFlMSUIgZmlsZXMKICAgICAgbHRf
cHJvZ19jb21waWxlcl9waWM9Jy1mbm8tY29tbW9uJwogICAgICA7OwoKICAgIGludGVyaXgzKikK
ICAgICAgIyBJbnRlcml4IDMueCBnY2MgLWZwaWMvLWZQSUMgb3B0aW9ucyBnZW5lcmF0ZSBicm9r
ZW4gY29kZS4KICAgICAgIyBJbnN0ZWFkLCB3ZSByZWxvY2F0ZSBzaGFyZWQgbGlicmFyaWVzIGF0
IHJ1bnRpbWUuCiAgICAgIDs7CgogICAgbXNkb3NkamdwcCopCiAgICAgICMgSnVzdCBiZWNhdXNl
IHdlIHVzZSBHQ0MgZG9lc24ndCBtZWFuIHdlIHN1ZGRlbmx5IGdldCBzaGFyZWQgbGlicmFyaWVz
CiAgICAgICMgb24gc3lzdGVtcyB0aGF0IGRvbid0IHN1cHBvcnQgdGhlbS4KICAgICAgbHRfcHJv
Z19jb21waWxlcl9jYW5fYnVpbGRfc2hhcmVkPW5vCiAgICAgIGVuYWJsZV9zaGFyZWQ9bm8KICAg
ICAgOzsKCiAgICBzeXN2NCpNUCopCiAgICAgIGlmIHRlc3QgLWQgL3Vzci9uZWM7IHRoZW4KCWx0
X3Byb2dfY29tcGlsZXJfcGljPS1LY29uZm9ybV9waWMKICAgICAgZmkKICAgICAgOzsKCiAgICBo
cHV4KikKICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1bHQgZm9yIElBNjQgSFAtVVggYW5kIDY0LWJp
dCBIUC1VWCwgYnV0CiAgICAgICMgbm90IGZvciBQQSBIUC1VWC4KICAgICAgY2FzZSAkaG9zdF9j
cHUgaW4KICAgICAgaHBwYSo2NCp8aWE2NCopCgkjICtaIHRoZSBkZWZhdWx0Cgk7OwogICAgICAq
KQoJbHRfcHJvZ19jb21waWxlcl9waWM9Jy1mUElDJwoJOzsKICAgICAgZXNhYwogICAgICA7OwoK
ICAgICopCiAgICAgIGx0X3Byb2dfY29tcGlsZXJfcGljPSctZlBJQycKICAgICAgOzsKICAgIGVz
YWMKICBlbHNlCiAgICAjIFBPUlRNRSBDaGVjayBmb3IgZmxhZyB0byBwYXNzIGxpbmtlciBmbGFn
cyB0aHJvdWdoIHRoZSBzeXN0ZW0gY29tcGlsZXIuCiAgICBjYXNlICRob3N0X29zIGluCiAgICBh
aXgqKQogICAgICBsdF9wcm9nX2NvbXBpbGVyX3dsPSctV2wsJwogICAgICBpZiB0ZXN0ICIkaG9z
dF9jcHUiID0gaWE2NDsgdGhlbgoJIyBBSVggNSBub3cgc3VwcG9ydHMgSUE2NCBwcm9jZXNzb3IK
CWx0X3Byb2dfY29tcGlsZXJfc3RhdGljPSctQnN0YXRpYycKICAgICAgZWxzZQoJbHRfcHJvZ19j
b21waWxlcl9zdGF0aWM9Jy1ibnNvIC1iSTovbGliL3N5c2NhbGxzLmV4cCcKICAgICAgZmkKICAg
ICAgOzsKICAgICAgZGFyd2luKikKICAgICAgICAjIFBJQyBpcyB0aGUgZGVmYXVsdCBvbiB0aGlz
IHBsYXRmb3JtCiAgICAgICAgIyBDb21tb24gc3ltYm9scyBub3QgYWxsb3dlZCBpbiBNSF9EWUxJ
QiBmaWxlcwogICAgICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgICAgeGxjKikKICAgICAg
ICAgbHRfcHJvZ19jb21waWxlcl9waWM9Jy1xbm9jb21tb24nCiAgICAgICAgIGx0X3Byb2dfY29t
cGlsZXJfd2w9Jy1XbCwnCiAgICAgICAgIDs7CiAgICAgICBlc2FjCiAgICAgICA7OwoKICAgIG1p
bmd3KiB8IHB3MzIqIHwgb3MyKikKICAgICAgIyBUaGlzIGhhY2sgaXMgc28gdGhhdCB0aGUgc291
cmNlIGZpbGUgY2FuIHRlbGwgd2hldGhlciBpdCBpcyBiZWluZwogICAgICAjIGJ1aWx0IGZvciBp
bmNsdXNpb24gaW4gYSBkbGwgKGFuZCBzaG91bGQgZXhwb3J0IHN5bWJvbHMgZm9yIGV4YW1wbGUp
LgogICAgICBsdF9wcm9nX2NvbXBpbGVyX3BpYz0nLURETExfRVhQT1JUJwogICAgICA7OwoKICAg
IGhwdXg5KiB8IGhwdXgxMCogfCBocHV4MTEqKQogICAgICBsdF9wcm9nX2NvbXBpbGVyX3dsPSct
V2wsJwogICAgICAjIFBJQyBpcyB0aGUgZGVmYXVsdCBmb3IgSUE2NCBIUC1VWCBhbmQgNjQtYml0
IEhQLVVYLCBidXQKICAgICAgIyBub3QgZm9yIFBBIEhQLVVYLgogICAgICBjYXNlICRob3N0X2Nw
dSBpbgogICAgICBocHBhKjY0KnxpYTY0KikKCSMgK1ogdGhlIGRlZmF1bHQKCTs7CiAgICAgICop
CglsdF9wcm9nX2NvbXBpbGVyX3BpYz0nK1onCgk7OwogICAgICBlc2FjCiAgICAgICMgSXMgdGhl
cmUgYSBiZXR0ZXIgbHRfcHJvZ19jb21waWxlcl9zdGF0aWMgdGhhdCB3b3JrcyB3aXRoIHRoZSBi
dW5kbGVkIENDPwogICAgICBsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYz0nJHt3bH0tYSAke3dsfWFy
Y2hpdmUnCiAgICAgIDs7CgogICAgaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KikKICAgICAg
bHRfcHJvZ19jb21waWxlcl93bD0nLVdsLCcKICAgICAgIyBQSUMgKHdpdGggLUtQSUMpIGlzIHRo
ZSBkZWZhdWx0LgogICAgICBsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYz0nLW5vbl9zaGFyZWQnCiAg
ICAgIDs7CgogICAgbmV3c29zNikKICAgICAgbHRfcHJvZ19jb21waWxlcl9waWM9Jy1LUElDJwog
ICAgICBsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYz0nLUJzdGF0aWMnCiAgICAgIDs7CgogICAgbGlu
dXgqKQogICAgICBjYXNlICRjY19iYXNlbmFtZSBpbgogICAgICBpY2MqIHwgZWNjKikKCWx0X3By
b2dfY29tcGlsZXJfd2w9Jy1XbCwnCglsdF9wcm9nX2NvbXBpbGVyX3BpYz0nLUtQSUMnCglsdF9w
cm9nX2NvbXBpbGVyX3N0YXRpYz0nLXN0YXRpYycKICAgICAgICA7OwogICAgICBwZ2NjKiB8IHBn
Zjc3KiB8IHBnZjkwKiB8IHBnZjk1KikKICAgICAgICAjIFBvcnRsYW5kIEdyb3VwIGNvbXBpbGVy
cyAoKm5vdCogdGhlIFBlbnRpdW0gZ2NjIGNvbXBpbGVyLAoJIyB3aGljaCBsb29rcyB0byBiZSBh
IGRlYWQgcHJvamVjdCkKCWx0X3Byb2dfY29tcGlsZXJfd2w9Jy1XbCwnCglsdF9wcm9nX2NvbXBp
bGVyX3BpYz0nLWZwaWMnCglsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYz0nLUJzdGF0aWMnCiAgICAg
ICAgOzsKICAgICAgY2NjKikKICAgICAgICBsdF9wcm9nX2NvbXBpbGVyX3dsPSctV2wsJwogICAg
ICAgICMgQWxsIEFscGhhIGNvZGUgaXMgUElDLgogICAgICAgIGx0X3Byb2dfY29tcGlsZXJfc3Rh
dGljPSctbm9uX3NoYXJlZCcKICAgICAgICA7OwogICAgICBlc2FjCiAgICAgIDs7CgogICAgb3Nm
MyogfCBvc2Y0KiB8IG9zZjUqKQogICAgICBsdF9wcm9nX2NvbXBpbGVyX3dsPSctV2wsJwogICAg
ICAjIEFsbCBPU0YvMSBjb2RlIGlzIFBJQy4KICAgICAgbHRfcHJvZ19jb21waWxlcl9zdGF0aWM9
Jy1ub25fc2hhcmVkJwogICAgICA7OwoKICAgIHNvbGFyaXMqKQogICAgICBsdF9wcm9nX2NvbXBp
bGVyX3BpYz0nLUtQSUMnCiAgICAgIGx0X3Byb2dfY29tcGlsZXJfc3RhdGljPSctQnN0YXRpYycK
ICAgICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KICAgICAgZjc3KiB8IGY5MCogfCBmOTUqKQoJbHRf
cHJvZ19jb21waWxlcl93bD0nLVFvcHRpb24gbGQgJzs7CiAgICAgICopCglsdF9wcm9nX2NvbXBp
bGVyX3dsPSctV2wsJzs7CiAgICAgIGVzYWMKICAgICAgOzsKCiAgICBzdW5vczQqKQogICAgICBs
dF9wcm9nX2NvbXBpbGVyX3dsPSctUW9wdGlvbiBsZCAnCiAgICAgIGx0X3Byb2dfY29tcGlsZXJf
cGljPSctUElDJwogICAgICBsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYz0nLUJzdGF0aWMnCiAgICAg
IDs7CgogICAgc3lzdjQgfCBzeXN2NC4ydXcyKiB8IHN5c3Y0LjMqKQogICAgICBsdF9wcm9nX2Nv
bXBpbGVyX3dsPSctV2wsJwogICAgICBsdF9wcm9nX2NvbXBpbGVyX3BpYz0nLUtQSUMnCiAgICAg
IGx0X3Byb2dfY29tcGlsZXJfc3RhdGljPSctQnN0YXRpYycKICAgICAgOzsKCiAgICBzeXN2NCpN
UCopCiAgICAgIGlmIHRlc3QgLWQgL3Vzci9uZWMgO3RoZW4KCWx0X3Byb2dfY29tcGlsZXJfcGlj
PSctS2NvbmZvcm1fcGljJwoJbHRfcHJvZ19jb21waWxlcl9zdGF0aWM9Jy1Cc3RhdGljJwogICAg
ICBmaQogICAgICA7OwoKICAgIHN5c3Y1KiB8IHVuaXh3YXJlKiB8IHNjbzMuMnY1KiB8IHNjbzV2
NiogfCBPcGVuVU5JWCopCiAgICAgIGx0X3Byb2dfY29tcGlsZXJfd2w9Jy1XbCwnCiAgICAgIGx0
X3Byb2dfY29tcGlsZXJfcGljPSctS1BJQycKICAgICAgbHRfcHJvZ19jb21waWxlcl9zdGF0aWM9
Jy1Cc3RhdGljJwogICAgICA7OwoKICAgIHVuaWNvcyopCiAgICAgIGx0X3Byb2dfY29tcGlsZXJf
d2w9Jy1XbCwnCiAgICAgIGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZD1ubwogICAg
ICA7OwoKICAgIHV0czQqKQogICAgICBsdF9wcm9nX2NvbXBpbGVyX3BpYz0nLXBpYycKICAgICAg
bHRfcHJvZ19jb21waWxlcl9zdGF0aWM9Jy1Cc3RhdGljJwogICAgICA7OwoKICAgICopCiAgICAg
IGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZD1ubwogICAgICA7OwogICAgZXNhYwog
IGZpCgp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9wcm9nX2NvbXBpbGVyX3Bp
YyIgPiY1CmVjaG8gIiR7RUNIT19UfSRsdF9wcm9nX2NvbXBpbGVyX3BpYyIgPiY2OyB9CgojCiMg
Q2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBQSUMgZmxhZyBhY3R1YWxseSB3b3Jrcy4KIwppZiB0ZXN0
IC1uICIkbHRfcHJvZ19jb21waWxlcl9waWMiOyB0aGVuCgp7IGVjaG8gIiRhc19tZTokTElORU5P
OiBjaGVja2luZyBpZiAkY29tcGlsZXIgUElDIGZsYWcgJGx0X3Byb2dfY29tcGlsZXJfcGljIHdv
cmtzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBpZiAkY29tcGlsZXIgUElDIGZsYWcgJGx0
X3Byb2dfY29tcGlsZXJfcGljIHdvcmtzLi4uICRFQ0hPX0MiID4mNjsgfQppZiB0ZXN0ICIke2x0
X3Byb2dfY29tcGlsZXJfcGljX3dvcmtzK3NldH0iID0gc2V0OyB0aGVuCiAgZWNobyAkRUNIT19O
ICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKZWxzZQogIGx0X3Byb2dfY29tcGlsZXJfcGljX3dvcmtz
PW5vCiAgYWNfb3V0ZmlsZT1jb25mdGVzdC4kYWNfb2JqZXh0CiAgIHByaW50ZiAiJGx0X3NpbXBs
ZV9jb21waWxlX3Rlc3RfY29kZSIgPiBjb25mdGVzdC4kYWNfZXh0CiAgIGx0X2NvbXBpbGVyX2Zs
YWc9IiRsdF9wcm9nX2NvbXBpbGVyX3BpYyAtRFBJQyIKICAgIyBJbnNlcnQgdGhlIG9wdGlvbiBl
aXRoZXIgKDEpIGFmdGVyIHRoZSBsYXN0ICpGTEFHUyB2YXJpYWJsZSwgb3IKICAgIyAoMikgYmVm
b3JlIGEgd29yZCBjb250YWluaW5nICJjb25mdGVzdC4iLCBvciAoMykgYXQgdGhlIGVuZC4KICAg
IyBOb3RlIHRoYXQgJGFjX2NvbXBpbGUgaXRzZWxmIGRvZXMgbm90IGNvbnRhaW4gYmFja3NsYXNo
ZXMgYW5kIGJlZ2lucwogICAjIHdpdGggYSBkb2xsYXIgc2lnbiAobm90IGEgaHlwaGVuKSwgc28g
dGhlIGVjaG8gc2hvdWxkIHdvcmsgY29ycmVjdGx5LgogICAjIFRoZSBvcHRpb24gaXMgcmVmZXJl
bmNlZCB2aWEgYSB2YXJpYWJsZSB0byBhdm9pZCBjb25mdXNpbmcgc2VkLgogICBsdF9jb21waWxl
PWBlY2hvICIkYWNfY29tcGlsZSIgfCAkU0VEIFwKICAgLWUgJ3M6LipGTEFHU31cezAsMVx9IDom
JGx0X2NvbXBpbGVyX2ZsYWcgOjsgdCcgXAogICAtZSAnczogW14gXSpjb25mdGVzdFwuOiAkbHRf
Y29tcGlsZXJfZmxhZyY6OyB0JyBcCiAgIC1lICdzOiQ6ICRsdF9jb21waWxlcl9mbGFnOidgCiAg
IChldmFsIGVjaG8gIlwiXCRhc19tZTo3NzYwOiAkbHRfY29tcGlsZVwiIiA+JjUpCiAgIChldmFs
ICIkbHRfY29tcGlsZSIgMj5jb25mdGVzdC5lcnIpCiAgIGFjX3N0YXR1cz0kPwogICBjYXQgY29u
ZnRlc3QuZXJyID4mNQogICBlY2hvICIkYXNfbWU6Nzc2NDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1
CiAgIGlmIChleGl0ICRhY19zdGF0dXMpICYmIHRlc3QgLXMgIiRhY19vdXRmaWxlIjsgdGhlbgog
ICAgICMgVGhlIGNvbXBpbGVyIGNhbiBvbmx5IHdhcm4gYW5kIGlnbm9yZSB0aGUgb3B0aW9uIGlm
IG5vdCByZWNvZ25pemVkCiAgICAgIyBTbyBzYXkgbm8gaWYgdGhlcmUgYXJlIHdhcm5pbmdzIG90
aGVyIHRoYW4gdGhlIHVzdWFsIG91dHB1dC4KICAgICAkZWNobyAiWCRfbHRfY29tcGlsZXJfYm9p
bGVycGxhdGUiIHwgJFhzZWQgLWUgJy9eJC9kJyA+Y29uZnRlc3QuZXhwCiAgICAgJFNFRCAnL14k
L2Q7IC9eICorL2QnIGNvbmZ0ZXN0LmVyciA+Y29uZnRlc3QuZXIyCiAgICAgaWYgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVyMiB8fCBkaWZmIGNvbmZ0ZXN0LmV4cCBjb25mdGVzdC5lcjIgPi9kZXYvbnVs
bDsgdGhlbgogICAgICAgbHRfcHJvZ19jb21waWxlcl9waWNfd29ya3M9eWVzCiAgICAgZmkKICAg
ZmkKICAgJHJtIGNvbmZ0ZXN0KgoKZmkKeyBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAk
bHRfcHJvZ19jb21waWxlcl9waWNfd29ya3MiID4mNQplY2hvICIke0VDSE9fVH0kbHRfcHJvZ19j
b21waWxlcl9waWNfd29ya3MiID4mNjsgfQoKaWYgdGVzdCB4IiRsdF9wcm9nX2NvbXBpbGVyX3Bp
Y193b3JrcyIgPSB4eWVzOyB0aGVuCiAgICBjYXNlICRsdF9wcm9nX2NvbXBpbGVyX3BpYyBpbgog
ICAgICIiIHwgIiAiKikgOzsKICAgICAqKSBsdF9wcm9nX2NvbXBpbGVyX3BpYz0iICRsdF9wcm9n
X2NvbXBpbGVyX3BpYyIgOzsKICAgICBlc2FjCmVsc2UKICAgIGx0X3Byb2dfY29tcGlsZXJfcGlj
PQogICAgIGx0X3Byb2dfY29tcGlsZXJfY2FuX2J1aWxkX3NoYXJlZD1ubwpmaQoKZmkKY2FzZSAk
aG9zdF9vcyBpbgogICMgRm9yIHBsYXRmb3JtcyB3aGljaCBkbyBub3Qgc3VwcG9ydCBQSUMsIC1E
UElDIGlzIG1lYW5pbmdsZXNzOgogICpkamdwcCopCiAgICBsdF9wcm9nX2NvbXBpbGVyX3BpYz0K
ICAgIDs7CiAgKikKICAgIGx0X3Byb2dfY29tcGlsZXJfcGljPSIkbHRfcHJvZ19jb21waWxlcl9w
aWMgLURQSUMiCiAgICA7Owplc2FjCgojCiMgQ2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBzdGF0aWMg
ZmxhZyBhY3R1YWxseSB3b3Jrcy4KIwp3bD0kbHRfcHJvZ19jb21waWxlcl93bCBldmFsIGx0X3Rt
cF9zdGF0aWNfZmxhZz1cIiRsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY1wiCnsgZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGlmICRjb21waWxlciBzdGF0aWMgZmxhZyAkbHRfdG1wX3N0YXRp
Y19mbGFnIHdvcmtzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBpZiAkY29tcGlsZXIgc3Rh
dGljIGZsYWcgJGx0X3RtcF9zdGF0aWNfZmxhZyB3b3Jrcy4uLiAkRUNIT19DIiA+JjY7IH0KaWYg
dGVzdCAiJHtsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY193b3JrcytzZXR9IiA9IHNldDsgdGhlbgog
IGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBsdF9wcm9nX2NvbXBp
bGVyX3N0YXRpY193b3Jrcz1ubwogICBzYXZlX0xERkxBR1M9IiRMREZMQUdTIgogICBMREZMQUdT
PSIkTERGTEFHUyAkbHRfdG1wX3N0YXRpY19mbGFnIgogICBwcmludGYgIiRsdF9zaW1wbGVfbGlu
a190ZXN0X2NvZGUiID4gY29uZnRlc3QuJGFjX2V4dAogICBpZiAoZXZhbCAkYWNfbGluayAyPmNv
bmZ0ZXN0LmVycikgJiYgdGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQ7IHRoZW4KICAgICAjIFRo
ZSBsaW5rZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdub3JlIHRoZSBvcHRpb24gaWYgbm90IHJlY29n
bml6ZWQKICAgICAjIFNvIHNheSBubyBpZiB0aGVyZSBhcmUgd2FybmluZ3MKICAgICBpZiB0ZXN0
IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgICAgIyBBcHBlbmQgYW55IGVycm9ycyB0byB0aGUg
Y29uZmlnLmxvZy4KICAgICAgIGNhdCBjb25mdGVzdC5lcnIgMT4mNQogICAgICAgJGVjaG8gIlgk
X2x0X2xpbmtlcl9ib2lsZXJwbGF0ZSIgfCAkWHNlZCAtZSAnL14kL2QnID4gY29uZnRlc3QuZXhw
CiAgICAgICAkU0VEICcvXiQvZDsgL14gKisvZCcgY29uZnRlc3QuZXJyID5jb25mdGVzdC5lcjIK
ICAgICAgIGlmIGRpZmYgY29uZnRlc3QuZXhwIGNvbmZ0ZXN0LmVyMiA+L2Rldi9udWxsOyB0aGVu
CiAgICAgICAgIGx0X3Byb2dfY29tcGlsZXJfc3RhdGljX3dvcmtzPXllcwogICAgICAgZmkKICAg
ICBlbHNlCiAgICAgICBsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY193b3Jrcz15ZXMKICAgICBmaQog
ICBmaQogICAkcm0gY29uZnRlc3QqCiAgIExERkxBR1M9IiRzYXZlX0xERkxBR1MiCgpmaQp7IGVj
aG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY193b3Jr
cyIgPiY1CmVjaG8gIiR7RUNIT19UfSRsdF9wcm9nX2NvbXBpbGVyX3N0YXRpY193b3JrcyIgPiY2
OyB9CgppZiB0ZXN0IHgiJGx0X3Byb2dfY29tcGlsZXJfc3RhdGljX3dvcmtzIiA9IHh5ZXM7IHRo
ZW4KICAgIDoKZWxzZQogICAgbHRfcHJvZ19jb21waWxlcl9zdGF0aWM9CmZpCgoKeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogY2hlY2tpbmcgaWYgJGNvbXBpbGVyIHN1cHBvcnRzIC1jIC1vIGZpbGUu
JGFjX29iamV4dCIgPiY1CmVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgaWYgJGNvbXBpbGVyIHN1cHBv
cnRzIC1jIC1vIGZpbGUuJGFjX29iamV4dC4uLiAkRUNIT19DIiA+JjY7IH0KaWYgdGVzdCAiJHts
dF9jdl9wcm9nX2NvbXBpbGVyX2NfbytzZXR9IiA9IHNldDsgdGhlbgogIGVjaG8gJEVDSE9fTiAi
KGNhY2hlZCkgJEVDSE9fQyIgPiY2CmVsc2UKICBsdF9jdl9wcm9nX2NvbXBpbGVyX2Nfbz1ubwog
ICAkcm0gLXIgY29uZnRlc3QgMj4vZGV2L251bGwKICAgbWtkaXIgY29uZnRlc3QKICAgY2QgY29u
ZnRlc3QKICAgbWtkaXIgb3V0CiAgIHByaW50ZiAiJGx0X3NpbXBsZV9jb21waWxlX3Rlc3RfY29k
ZSIgPiBjb25mdGVzdC4kYWNfZXh0CgogICBsdF9jb21waWxlcl9mbGFnPSItbyBvdXQvY29uZnRl
c3QyLiRhY19vYmpleHQiCiAgICMgSW5zZXJ0IHRoZSBvcHRpb24gZWl0aGVyICgxKSBhZnRlciB0
aGUgbGFzdCAqRkxBR1MgdmFyaWFibGUsIG9yCiAgICMgKDIpIGJlZm9yZSBhIHdvcmQgY29udGFp
bmluZyAiY29uZnRlc3QuIiwgb3IgKDMpIGF0IHRoZSBlbmQuCiAgICMgTm90ZSB0aGF0ICRhY19j
b21waWxlIGl0c2VsZiBkb2VzIG5vdCBjb250YWluIGJhY2tzbGFzaGVzIGFuZCBiZWdpbnMKICAg
IyB3aXRoIGEgZG9sbGFyIHNpZ24gKG5vdCBhIGh5cGhlbiksIHNvIHRoZSBlY2hvIHNob3VsZCB3
b3JrIGNvcnJlY3RseS4KICAgbHRfY29tcGlsZT1gZWNobyAiJGFjX2NvbXBpbGUiIHwgJFNFRCBc
CiAgIC1lICdzOi4qRkxBR1N9XHswLDFcfSA6JiRsdF9jb21waWxlcl9mbGFnIDo7IHQnIFwKICAg
LWUgJ3M6IFteIF0qY29uZnRlc3RcLjogJGx0X2NvbXBpbGVyX2ZsYWcmOjsgdCcgXAogICAtZSAn
czokOiAkbHRfY29tcGlsZXJfZmxhZzonYAogICAoZXZhbCBlY2hvICJcIlwkYXNfbWU6Nzg2NDog
JGx0X2NvbXBpbGVcIiIgPiY1KQogICAoZXZhbCAiJGx0X2NvbXBpbGUiIDI+b3V0L2NvbmZ0ZXN0
LmVycikKICAgYWNfc3RhdHVzPSQ/CiAgIGNhdCBvdXQvY29uZnRlc3QuZXJyID4mNQogICBlY2hv
ICIkYXNfbWU6Nzg2ODogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIGlmIChleGl0ICRhY19zdGF0
dXMpICYmIHRlc3QgLXMgb3V0L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0CiAgIHRoZW4KICAgICAjIFRo
ZSBjb21waWxlciBjYW4gb25seSB3YXJuIGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVj
b2duaXplZAogICAgICMgU28gc2F5IG5vIGlmIHRoZXJlIGFyZSB3YXJuaW5ncwogICAgICRlY2hv
ICJYJF9sdF9jb21waWxlcl9ib2lsZXJwbGF0ZSIgfCAkWHNlZCAtZSAnL14kL2QnID4gb3V0L2Nv
bmZ0ZXN0LmV4cAogICAgICRTRUQgJy9eJC9kOyAvXiAqKy9kJyBvdXQvY29uZnRlc3QuZXJyID5v
dXQvY29uZnRlc3QuZXIyCiAgICAgaWYgdGVzdCAhIC1zIG91dC9jb25mdGVzdC5lcjIgfHwgZGlm
ZiBvdXQvY29uZnRlc3QuZXhwIG91dC9jb25mdGVzdC5lcjIgPi9kZXYvbnVsbDsgdGhlbgogICAg
ICAgbHRfY3ZfcHJvZ19jb21waWxlcl9jX289eWVzCiAgICAgZmkKICAgZmkKICAgY2htb2QgdSt3
IC4gMj4mNQogICAkcm0gY29uZnRlc3QqCiAgICMgU0dJIEMrKyBjb21waWxlciB3aWxsIGNyZWF0
ZSBkaXJlY3Rvcnkgb3V0L2lpX2ZpbGVzLyBmb3IKICAgIyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9u
CiAgIHRlc3QgLWQgb3V0L2lpX2ZpbGVzICYmICRybSBvdXQvaWlfZmlsZXMvKiAmJiBybWRpciBv
dXQvaWlfZmlsZXMKICAgJHJtIG91dC8qICYmIHJtZGlyIG91dAogICBjZCAuLgogICBybWRpciBj
b25mdGVzdAogICAkcm0gY29uZnRlc3QqCgpmaQp7IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1
bHQ6ICRsdF9jdl9wcm9nX2NvbXBpbGVyX2NfbyIgPiY1CmVjaG8gIiR7RUNIT19UfSRsdF9jdl9w
cm9nX2NvbXBpbGVyX2NfbyIgPiY2OyB9CgoKaGFyZF9saW5rcz0ibm90dGVzdGVkIgppZiB0ZXN0
ICIkbHRfY3ZfcHJvZ19jb21waWxlcl9jX28iID0gbm8gJiYgdGVzdCAiJG5lZWRfbG9ja3MiICE9
IG5vOyB0aGVuCiAgIyBkbyBub3Qgb3ZlcndyaXRlIHRoZSB2YWx1ZSBvZiBuZWVkX2xvY2tzIHBy
b3ZpZGVkIGJ5IHRoZSB1c2VyCiAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgaWYg
d2UgY2FuIGxvY2sgd2l0aCBoYXJkIGxpbmtzIiA+JjUKZWNobyAkRUNIT19OICJjaGVja2luZyBp
ZiB3ZSBjYW4gbG9jayB3aXRoIGhhcmQgbGlua3MuLi4gJEVDSE9fQyIgPiY2OyB9CiAgaGFyZF9s
aW5rcz15ZXMKICAkcm0gY29uZnRlc3QqCiAgbG4gY29uZnRlc3QuYSBjb25mdGVzdC5iIDI+L2Rl
di9udWxsICYmIGhhcmRfbGlua3M9bm8KICB0b3VjaCBjb25mdGVzdC5hCiAgbG4gY29uZnRlc3Qu
YSBjb25mdGVzdC5iIDI+JjUgfHwgaGFyZF9saW5rcz1ubwogIGxuIGNvbmZ0ZXN0LmEgY29uZnRl
c3QuYiAyPi9kZXYvbnVsbCAmJiBoYXJkX2xpbmtzPW5vCiAgeyBlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkaGFyZF9saW5rcyIgPiY1CmVjaG8gIiR7RUNIT19UfSRoYXJkX2xpbmtzIiA+
JjY7IH0KICBpZiB0ZXN0ICIkaGFyZF9saW5rcyIgPSBubzsgdGhlbgogICAgeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogV0FSTklORzogXGAkQ0MnIGRvZXMgbm90IHN1cHBvcnQgXGAtYyAtbycsIHNv
IFxgbWFrZSAtaicgbWF5IGJlIHVuc2FmZSIgPiY1CmVjaG8gIiRhc19tZTogV0FSTklORzogXGAk
Q0MnIGRvZXMgbm90IHN1cHBvcnQgXGAtYyAtbycsIHNvIFxgbWFrZSAtaicgbWF5IGJlIHVuc2Fm
ZSIgPiYyO30KICAgIG5lZWRfbG9ja3M9d2FybgogIGZpCmVsc2UKICBuZWVkX2xvY2tzPW5vCmZp
Cgp7IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVyIHRoZSAkY29tcGlsZXIg
bGlua2VyICgkTEQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMiID4mNQplY2hvICRFQ0hPX04g
ImNoZWNraW5nIHdoZXRoZXIgdGhlICRjb21waWxlciBsaW5rZXIgKCRMRCkgc3VwcG9ydHMgc2hh
cmVkIGxpYnJhcmllcy4uLiAkRUNIT19DIiA+JjY7IH0KCiAgcnVucGF0aF92YXI9CiAgYWxsb3df
dW5kZWZpbmVkX2ZsYWc9CiAgZW5hYmxlX3NoYXJlZF93aXRoX3N0YXRpY19ydW50aW1lcz1ubwog
IGFyY2hpdmVfY21kcz0KICBhcmNoaXZlX2V4cHN5bV9jbWRzPQogIG9sZF9hcmNoaXZlX0Zyb21f
bmV3X2NtZHM9CiAgb2xkX2FyY2hpdmVfZnJvbV9leHBzeW1zX2NtZHM9CiAgZXhwb3J0X2R5bmFt
aWNfZmxhZ19zcGVjPQogIHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjPQogIHRocmVhZF9zYWZlX2Zs
YWdfc3BlYz0KICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPQogIGhhcmRjb2RlX2xpYmRpcl9m
bGFnX3NwZWNfbGQ9CiAgaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcj0KICBoYXJkY29kZV9kaXJl
Y3Q9bm8KICBoYXJkY29kZV9taW51c19MPW5vCiAgaGFyZGNvZGVfc2hsaWJwYXRoX3Zhcj11bnN1
cHBvcnRlZAogIGxpbmtfYWxsX2RlcGxpYnM9dW5rbm93bgogIGhhcmRjb2RlX2F1dG9tYXRpYz1u
bwogIG1vZHVsZV9jbWRzPQogIG1vZHVsZV9leHBzeW1fY21kcz0KICBhbHdheXNfZXhwb3J0X3N5
bWJvbHM9bm8KICBleHBvcnRfc3ltYm9sc19jbWRzPSckTk0gJGxpYm9ianMgJGNvbnZlbmllbmNl
IHwgJGdsb2JhbF9zeW1ib2xfcGlwZSB8ICRTRUQgJ1wnJ3MvLiogLy8nXCcnIHwgc29ydCB8IHVu
aXEgPiAkZXhwb3J0X3N5bWJvbHMnCiAgIyBpbmNsdWRlX2V4cHN5bXMgc2hvdWxkIGJlIGEgbGlz
dCBvZiBzcGFjZS1zZXBhcmF0ZWQgc3ltYm9scyB0byBiZSAqYWx3YXlzKgogICMgaW5jbHVkZWQg
aW4gdGhlIHN5bWJvbCBsaXN0CiAgaW5jbHVkZV9leHBzeW1zPQogICMgZXhjbHVkZV9leHBzeW1z
IGNhbiBiZSBhbiBleHRlbmRlZCByZWdleHAgb2Ygc3ltYm9scyB0byBleGNsdWRlCiAgIyBpdCB3
aWxsIGJlIHdyYXBwZWQgYnkgYCAoJyBhbmQgYCkkJywgc28gb25lIG11c3Qgbm90IG1hdGNoIGJl
Z2lubmluZyBvcgogICMgZW5kIG9mIGxpbmUuICBFeGFtcGxlOiBgYXxiY3wuKmQuKicgd2lsbCBl
eGNsdWRlIHRoZSBzeW1ib2xzIGBhJyBhbmQgYGJjJywKICAjIGFzIHdlbGwgYXMgYW55IHN5bWJv
bCB0aGF0IGNvbnRhaW5zIGBkJy4KICBleGNsdWRlX2V4cHN5bXM9Il9HTE9CQUxfT0ZGU0VUX1RB
QkxFXyIKICAjIEFsdGhvdWdoIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXyBpcyBhIHZhbGlkIHN5bWJv
bCBDIG5hbWUsIG1vc3QgYS5vdXQKICAjIHBsYXRmb3JtcyAoYWIpdXNlIGl0IGluIFBJQyBjb2Rl
LCBidXQgdGhlaXIgbGlua2VycyBnZXQgY29uZnVzZWQgaWYKICAjIHRoZSBzeW1ib2wgaXMgZXhw
bGljaXRseSByZWZlcmVuY2VkLiAgU2luY2UgcG9ydGFibGUgY29kZSBjYW5ub3QKICAjIHJlbHkg
b24gdGhpcyBzeW1ib2wgbmFtZSwgaXQncyBwcm9iYWJseSBmaW5lIHRvIG5ldmVyIGluY2x1ZGUg
aXQgaW4KICAjIHByZWxvYWRlZCBzeW1ib2wgdGFibGVzLgogIGV4dHJhY3RfZXhwc3ltc19jbWRz
PQogICMgSnVzdCBiZWluZyBwYXJhbm9pZCBhYm91dCBlbnN1cmluZyB0aGF0IGNjX2Jhc2VuYW1l
IGlzIHNldC4KICBmb3IgY2NfdGVtcCBpbiAkY29tcGlsZXIiIjsgZG8KICBjYXNlICRjY190ZW1w
IGluCiAgICBjb21waWxlIHwgKltcXC9dY29tcGlsZSB8IGNjYWNoZSB8ICpbXFwvXWNjYWNoZSAp
IDs7CiAgICBkaXN0Y2MgfCAqW1xcL11kaXN0Y2MgfCBwdXJpZnkgfCAqW1xcL11wdXJpZnkgKSA7
OwogICAgXC0qKSA7OwogICAgKikgYnJlYWs7OwogIGVzYWMKZG9uZQpjY19iYXNlbmFtZT1gJGVj
aG8gIlgkY2NfdGVtcCIgfCAkWHNlZCAtZSAncyUuKi8lJScgLWUgInMlXiRob3N0X2FsaWFzLSUl
ImAKCiAgY2FzZSAkaG9zdF9vcyBpbgogIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKikKICAgICMg
RklYTUU6IHRoZSBNU1ZDKysgcG9ydCBoYXNuJ3QgYmVlbiB0ZXN0ZWQgaW4gYSBsb29vb25nIHRp
bWUKICAgICMgV2hlbiBub3QgdXNpbmcgZ2NjLCB3ZSBjdXJyZW50bHkgYXNzdW1lIHRoYXQgd2Ug
YXJlIHVzaW5nCiAgICAjIE1pY3Jvc29mdCBWaXN1YWwgQysrLgogICAgaWYgdGVzdCAiJEdDQyIg
IT0geWVzOyB0aGVuCiAgICAgIHdpdGhfZ251X2xkPW5vCiAgICBmaQogICAgOzsKICBpbnRlcml4
KikKICAgICMgd2UganVzdCBob3BlL2Fzc3VtZSB0aGlzIGlzIGdjYyBhbmQgbm90IGM4OSAoPSBN
U1ZDKyspCiAgICB3aXRoX2dudV9sZD15ZXMKICAgIDs7CiAgb3BlbmJzZCopCiAgICB3aXRoX2du
dV9sZD1ubwogICAgOzsKICBlc2FjCgogIGxkX3NobGlicz15ZXMKICBpZiB0ZXN0ICIkd2l0aF9n
bnVfbGQiID0geWVzOyB0aGVuCiAgICAjIElmIGFyY2hpdmVfY21kcyBydW5zIExELCBub3QgQ0Ms
IHdsYXJjIHNob3VsZCBiZSBlbXB0eQogICAgd2xhcmM9JyR7d2x9JwoKICAgICMgU2V0IHNvbWUg
ZGVmYXVsdHMgZm9yIEdOVSBsZCB3aXRoIHNoYXJlZCBsaWJyYXJ5IHN1cHBvcnQuIFRoZXNlCiAg
ICAjIGFyZSByZXNldCBsYXRlciBpZiBzaGFyZWQgbGlicmFyaWVzIGFyZSBub3Qgc3VwcG9ydGVk
LiBQdXR0aW5nIHRoZW0KICAgICMgaGVyZSBhbGxvd3MgdGhlbSB0byBiZSBvdmVycmlkZGVuIGlm
IG5lY2Vzc2FyeS4KICAgIHJ1bnBhdGhfdmFyPUxEX1JVTl9QQVRICiAgICBoYXJkY29kZV9saWJk
aXJfZmxhZ19zcGVjPScke3dsfS0tcnBhdGggJHt3bH0kbGliZGlyJwogICAgZXhwb3J0X2R5bmFt
aWNfZmxhZ19zcGVjPScke3dsfS0tZXhwb3J0LWR5bmFtaWMnCiAgICAjIGFuY2llbnQgR05VIGxk
IGRpZG4ndCBzdXBwb3J0IC0td2hvbGUtYXJjaGl2ZSBldC4gYWwuCiAgICBpZiAkTEQgLS1oZWxw
IDI+JjEgfCBncmVwICduby13aG9sZS1hcmNoaXZlJyA+IC9kZXYvbnVsbDsgdGhlbgoJd2hvbGVf
YXJjaGl2ZV9mbGFnX3NwZWM9IiR3bGFyYyInLS13aG9sZS1hcmNoaXZlJGNvbnZlbmllbmNlICci
JHdsYXJjIictLW5vLXdob2xlLWFyY2hpdmUnCiAgICAgIGVsc2UKICAJd2hvbGVfYXJjaGl2ZV9m
bGFnX3NwZWM9CiAgICBmaQogICAgc3VwcG9ydHNfYW5vbl92ZXJzaW9uaW5nPW5vCiAgICBjYXNl
IGAkTEQgLXYgMj4vZGV2L251bGxgIGluCiAgICAgICpcIFswMV0uKiB8ICpcIDIuWzAtOV0uKiB8
ICpcIDIuMTAuKikgOzsgIyBjYXRjaCB2ZXJzaW9ucyA8IDIuMTEKICAgICAgKlwgMi4xMS45My4w
LjJcICopIHN1cHBvcnRzX2Fub25fdmVyc2lvbmluZz15ZXMgOzsgIyBSSDcuMyAuLi4KICAgICAg
KlwgMi4xMS45Mi4wLjEyXCAqKSBzdXBwb3J0c19hbm9uX3ZlcnNpb25pbmc9eWVzIDs7ICMgTWFu
ZHJha2UgOC4yIC4uLgogICAgICAqXCAyLjExLiopIDs7ICMgb3RoZXIgMi4xMSB2ZXJzaW9ucwog
ICAgICAqKSBzdXBwb3J0c19hbm9uX3ZlcnNpb25pbmc9eWVzIDs7CiAgICBlc2FjCgogICAgIyBT
ZWUgaWYgR05VIGxkIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMuCiAgICBjYXNlICRob3N0X29z
IGluCiAgICBhaXgzKiB8IGFpeDQqIHwgYWl4NSopCiAgICAgICMgT24gQUlYL1BQQywgdGhlIEdO
VSBsaW5rZXIgaXMgdmVyeSBicm9rZW4KICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAhPSBpYTY0
OyB0aGVuCglsZF9zaGxpYnM9bm8KCWNhdCA8PEVPRiAxPiYyCgoqKiogV2FybmluZzogdGhlIEdO
VSBsaW5rZXIsIGF0IGxlYXN0IHVwIHRvIHJlbGVhc2UgMi45LjEsIGlzIHJlcG9ydGVkCioqKiB0
byBiZSB1bmFibGUgdG8gcmVsaWFibHkgY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMgb24gQUlYLgoq
KiogVGhlcmVmb3JlLCBsaWJ0b29sIGlzIGRpc2FibGluZyBzaGFyZWQgbGlicmFyaWVzIHN1cHBv
cnQuICBJZiB5b3UKKioqIHJlYWxseSBjYXJlIGZvciBzaGFyZWQgbGlicmFyaWVzLCB5b3UgbWF5
IHdhbnQgdG8gbW9kaWZ5IHlvdXIgUEFUSAoqKiogc28gdGhhdCBhIG5vbi1HTlUgbGlua2VyIGlz
IGZvdW5kLCBhbmQgdGhlbiByZXN0YXJ0LgoKRU9GCiAgICAgIGZpCiAgICAgIDs7CgogICAgYW1p
Z2FvcyopCiAgICAgIGFyY2hpdmVfY21kcz0nJHJtICRvdXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5
LmRhdGF+JGVjaG8gIiNkZWZpbmUgTkFNRSAkbGlibmFtZSIgPiAkb3V0cHV0X29iamRpci9hMml4
bGlicmFyeS5kYXRhfiRlY2hvICIjZGVmaW5lIExJQlJBUllfSUQgMSIgPj4gJG91dHB1dF9vYmpk
aXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBWRVJTSU9OICRtYWpvciIgPj4gJG91
dHB1dF9vYmpkaXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBSRVZJU0lPTiAkcmV2
aXNpb24iID4+ICRvdXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5LmRhdGF+JEFSICRBUl9GTEFHUyAk
bGliICRsaWJvYmpzfiRSQU5MSUIgJGxpYn4oY2QgJG91dHB1dF9vYmpkaXIgJiYgYTJpeGxpYnJh
cnkgLTMyKScKICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nLUwkbGliZGlyJwogICAg
ICBoYXJkY29kZV9taW51c19MPXllcwoKICAgICAgIyBTYW11ZWwgQS4gRmFsdm8gSUkgPGtjNXRq
YUBkb2xwaGluLm9wZW5wcm9qZWN0cy5uZXQ+IHJlcG9ydHMKICAgICAgIyB0aGF0IHRoZSBzZW1h
bnRpY3Mgb2YgZHluYW1pYyBsaWJyYXJpZXMgb24gQW1pZ2FPUywgYXQgbGVhc3QgdXAKICAgICAg
IyB0byB2ZXJzaW9uIDQsIGlzIHRvIHNoYXJlIGRhdGEgYW1vbmcgbXVsdGlwbGUgcHJvZ3JhbXMg
bGlua2VkCiAgICAgICMgd2l0aCB0aGUgc2FtZSBkeW5hbWljIGxpYnJhcnkuICBTaW5jZSB0aGlz
IGRvZXNuJ3QgbWF0Y2ggdGhlCiAgICAgICMgYmVoYXZpb3Igb2Ygc2hhcmVkIGxpYnJhcmllcyBv
biBvdGhlciBwbGF0Zm9ybXMsIHdlIGNhbid0IHVzZQogICAgICAjIHRoZW0uCiAgICAgIGxkX3No
bGlicz1ubwogICAgICA7OwoKICAgIGJlb3MqKQogICAgICBpZiAkTEQgLS1oZWxwIDI+JjEgfCBn
cmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVsZicgPiAvZGV2L251bGw7IHRoZW4KCWFsbG93
X3VuZGVmaW5lZF9mbGFnPXVuc3VwcG9ydGVkCgkjIEpvc2VwaCBCZWNrZW5iYWNoIDxqcmIzQGJl
c3QuY29tPiBzYXlzIHNvbWUgcmVsZWFzZXMgb2YgZ2NjCgkjIHN1cHBvcnQgLS11bmRlZmluZWQu
ICBUaGlzIGRlc2VydmVzIHNvbWUgaW52ZXN0aWdhdGlvbi4gIEZJWE1FCglhcmNoaXZlX2NtZHM9
JyRDQyAtbm9zdGFydCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29u
YW1lICR3bCRzb25hbWUgLW8gJGxpYicKICAgICAgZWxzZQoJbGRfc2hsaWJzPW5vCiAgICAgIGZp
CiAgICAgIDs7CgogICAgY3lnd2luKiB8IG1pbmd3KiB8IHB3MzIqKQogICAgICAjIF9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgKSBpcyBhY3R1YWxseSBtZWFuaW5nbGVz
cywKICAgICAgIyBhcyB0aGVyZSBpcyBubyBzZWFyY2ggcGF0aCBmb3IgRExMcy4KICAgICAgaGFy
ZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nLUwkbGliZGlyJwogICAgICBhbGxvd191bmRlZmluZWRf
ZmxhZz11bnN1cHBvcnRlZAogICAgICBhbHdheXNfZXhwb3J0X3N5bWJvbHM9bm8KICAgICAgZW5h
YmxlX3NoYXJlZF93aXRoX3N0YXRpY19ydW50aW1lcz15ZXMKICAgICAgZXhwb3J0X3N5bWJvbHNf
Y21kcz0nJE5NICRsaWJvYmpzICRjb252ZW5pZW5jZSB8ICRnbG9iYWxfc3ltYm9sX3BpcGUgfCAk
U0VEIC1lICdcJycvXltCQ0RHUlNdIC9zLy4qIFwoW14gXSpcKS9cMSBEQVRBLydcJycgfCAkU0VE
IC1lICdcJycvXltBSVRXXSAvcy8uKiAvLydcJycgfCBzb3J0IHwgdW5pcSA+ICRleHBvcnRfc3lt
Ym9scycKCiAgICAgIGlmICRMRCAtLWhlbHAgMj4mMSB8IGdyZXAgJ2F1dG8taW1wb3J0JyA+IC9k
ZXYvbnVsbDsgdGhlbgogICAgICAgIGFyY2hpdmVfY21kcz0nJENDIC1zaGFyZWQgJGxpYm9ianMg
JGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJHt3bH0t
LWVuYWJsZS1hdXRvLWltYWdlLWJhc2UgLVhsaW5rZXIgLS1vdXQtaW1wbGliIC1YbGlua2VyICRs
aWInCgkjIElmIHRoZSBleHBvcnQtc3ltYm9scyBmaWxlIGFscmVhZHkgaXMgYSAuZGVmIGZpbGUg
KDFzdCBsaW5lCgkjIGlzIEVYUE9SVFMpLCB1c2UgaXQgYXMgaXM7IG90aGVyd2lzZSwgcHJlcGVu
ZC4uLgoJYXJjaGl2ZV9leHBzeW1fY21kcz0naWYgdGVzdCAieGAkU0VEIDFxICRleHBvcnRfc3lt
Ym9sc2AiID0geEVYUE9SVFM7IHRoZW4KCSAgY3AgJGV4cG9ydF9zeW1ib2xzICRvdXRwdXRfb2Jq
ZGlyLyRzb25hbWUuZGVmOwoJZWxzZQoJICBlY2hvIEVYUE9SVFMgPiAkb3V0cHV0X29iamRpci8k
c29uYW1lLmRlZjsKCSAgY2F0ICRleHBvcnRfc3ltYm9scyA+PiAkb3V0cHV0X29iamRpci8kc29u
YW1lLmRlZjsKCWZpfgoJJENDIC1zaGFyZWQgJG91dHB1dF9vYmpkaXIvJHNvbmFtZS5kZWYgJGxp
Ym9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUg
JHt3bH0tLWVuYWJsZS1hdXRvLWltYWdlLWJhc2UgLVhsaW5rZXIgLS1vdXQtaW1wbGliIC1YbGlu
a2VyICRsaWInCiAgICAgIGVsc2UKCWxkX3NobGlicz1ubwogICAgICBmaQogICAgICA7OwoKICAg
IGludGVyaXgzKikKICAgICAgaGFyZGNvZGVfZGlyZWN0PW5vCiAgICAgIGhhcmRjb2RlX3NobGli
cGF0aF92YXI9bm8KICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0tcnBhdGgs
JGxpYmRpcicKICAgICAgZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjPScke3dsfS1FJwogICAgICAj
IEhhY2s6IE9uIEludGVyaXggMy54LCB3ZSBjYW5ub3QgY29tcGlsZSBQSUMgYmVjYXVzZSBvZiBh
IGJyb2tlbiBnY2MuCiAgICAgICMgSW5zdGVhZCwgc2hhcmVkIGxpYnJhcmllcyBhcmUgbG9hZGVk
IGF0IGFuIGltYWdlIGJhc2UgKDB4MTAwMDAwMDAgYnkKICAgICAgIyBkZWZhdWx0KSBhbmQgcmVs
b2NhdGVkIGlmIHRoZXkgY29uZmxpY3QsIHdoaWNoIGlzIGEgc2xvdyB2ZXJ5IG1lbW9yeQogICAg
ICAjIGNvbnN1bWluZyBhbmQgZnJhZ21lbnRpbmcgcHJvY2Vzcy4gIFRvIGF2b2lkIHRoaXMsIHdl
IHBpY2sgYSByYW5kb20sCiAgICAgICMgMjU2IEtpQi1hbGlnbmVkIGltYWdlIGJhc2UgYmV0d2Vl
biAweDUwMDAwMDAwIGFuZCAweDZGRkMwMDAwIGF0IGxpbmsKICAgICAgIyB0aW1lLiAgTW92aW5n
IHVwIGZyb20gMHgxMDAwMDAwMCBhbHNvIGFsbG93cyBtb3JlIHNicmsoMikgc3BhY2UuCiAgICAg
IGFyY2hpdmVfY21kcz0nJENDIC1zaGFyZWQgJHBpY19mbGFnICRsaWJvYmpzICRkZXBsaWJzICRj
b21waWxlcl9mbGFncyAke3dsfS1oLCRzb25hbWUgJHt3bH0tLWltYWdlLWJhc2UsYGV4cHIgJHtS
QU5ET00tJCR9ICUgNDA5NiAvIDIgXCogMjYyMTQ0ICsgMTM0MjE3NzI4MGAgLW8gJGxpYicKICAg
ICAgYXJjaGl2ZV9leHBzeW1fY21kcz0nc2VkICJzLF4sXywiICRleHBvcnRfc3ltYm9scyA+JG91
dHB1dF9vYmpkaXIvJHNvbmFtZS5leHBzeW1+JENDIC1zaGFyZWQgJHBpY19mbGFnICRsaWJvYmpz
ICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1oLCRzb25hbWUgJHt3bH0tLXJldGFpbi1z
eW1ib2xzLWZpbGUsJG91dHB1dF9vYmpkaXIvJHNvbmFtZS5leHBzeW0gJHt3bH0tLWltYWdlLWJh
c2UsYGV4cHIgJHtSQU5ET00tJCR9ICUgNDA5NiAvIDIgXCogMjYyMTQ0ICsgMTM0MjE3NzI4MGAg
LW8gJGxpYicKICAgICAgOzsKCiAgICBsaW51eCopCiAgICAgIGlmICRMRCAtLWhlbHAgMj4mMSB8
IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVsbDsgdGhlbgoJdG1w
X2FkZGZsYWc9CgljYXNlICRjY19iYXNlbmFtZSwkaG9zdF9jcHUgaW4KCXBnY2MqKQkJCQkjIFBv
cnRsYW5kIEdyb3VwIEMgY29tcGlsZXIKCSAgd2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWM9JyR7d2x9
LS13aG9sZS1hcmNoaXZlYGZvciBjb252IGluICRjb252ZW5pZW5jZVwiXCI7IGRvIHRlc3QgIC1u
IFwiJGNvbnZcIiAmJiBuZXdfY29udmVuaWVuY2U9XCIkbmV3X2NvbnZlbmllbmNlLCRjb252XCI7
IGRvbmU7ICRlY2hvIFwiJG5ld19jb252ZW5pZW5jZVwiYCAke3dsfS0tbm8td2hvbGUtYXJjaGl2
ZScKCSAgdG1wX2FkZGZsYWc9JyAkcGljX2ZsYWcnCgkgIDs7CglwZ2Y3NyogfCBwZ2Y5MCogfCBw
Z2Y5NSopCSMgUG9ydGxhbmQgR3JvdXAgZjc3IGFuZCBmOTAgY29tcGlsZXJzCgkgIHdob2xlX2Fy
Y2hpdmVfZmxhZ19zcGVjPScke3dsfS0td2hvbGUtYXJjaGl2ZWBmb3IgY29udiBpbiAkY29udmVu
aWVuY2VcIlwiOyBkbyB0ZXN0ICAtbiBcIiRjb252XCIgJiYgbmV3X2NvbnZlbmllbmNlPVwiJG5l
d19jb252ZW5pZW5jZSwkY29udlwiOyBkb25lOyAkZWNobyBcIiRuZXdfY29udmVuaWVuY2VcImAg
JHt3bH0tLW5vLXdob2xlLWFyY2hpdmUnCgkgIHRtcF9hZGRmbGFnPScgJHBpY19mbGFnIC1Nbm9t
YWluJyA7OwoJZWNjKixpYTY0KiB8IGljYyosaWE2NCopCQkjIEludGVsIEMgY29tcGlsZXIgb24g
aWE2NAoJICB0bXBfYWRkZmxhZz0nIC1pX2R5bmFtaWMnIDs7CgllZmMqLGlhNjQqIHwgaWZvcnQq
LGlhNjQqKQkjIEludGVsIEZvcnRyYW4gY29tcGlsZXIgb24gaWE2NAoJICB0bXBfYWRkZmxhZz0n
IC1pX2R5bmFtaWMgLW5vZm9yX21haW4nIDs7CglpZmMqIHwgaWZvcnQqKQkJCSMgSW50ZWwgRm9y
dHJhbiBjb21waWxlcgoJICB0bXBfYWRkZmxhZz0nIC1ub2Zvcl9tYWluJyA7OwoJZXNhYwoJYXJj
aGl2ZV9jbWRzPSckQ0MgLXNoYXJlZCciJHRtcF9hZGRmbGFnIicgJGxpYm9ianMgJGRlcGxpYnMg
JGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCgoJaWYgdGVz
dCAkc3VwcG9ydHNfYW5vbl92ZXJzaW9uaW5nID0geWVzOyB0aGVuCgkgIGFyY2hpdmVfZXhwc3lt
X2NtZHM9JyRlY2hvICJ7IGdsb2JhbDoiID4gJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUudmVyfgog
IGNhdCAkZXhwb3J0X3N5bWJvbHMgfCBzZWQgLWUgInMvXCguKlwpL1wxOy8iID4+ICRvdXRwdXRf
b2JqZGlyLyRsaWJuYW1lLnZlcn4KICAkZWNobyAibG9jYWw6ICo7IH07IiA+PiAkb3V0cHV0X29i
amRpci8kbGlibmFtZS52ZXJ+CgkgICRDQyAtc2hhcmVkJyIkdG1wX2FkZGZsYWciJyAkbGlib2Jq
cyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgJHt3bH0t
dmVyc2lvbi1zY3JpcHQgJHt3bH0kb3V0cHV0X29iamRpci8kbGlibmFtZS52ZXIgLW8gJGxpYicK
CWZpCiAgICAgIGVsc2UKCWxkX3NobGlicz1ubwogICAgICBmaQogICAgICA7OwoKICAgIG5ldGJz
ZCopCiAgICAgIGlmIGVjaG8gX19FTEZfXyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fID4vZGV2
L251bGw7IHRoZW4KCWFyY2hpdmVfY21kcz0nJExEIC1Cc2hhcmVhYmxlICRsaWJvYmpzICRkZXBs
aWJzICRsaW5rZXJfZmxhZ3MgLW8gJGxpYicKCXdsYXJjPQogICAgICBlbHNlCglhcmNoaXZlX2Nt
ZHM9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1z
b25hbWUgJHdsJHNvbmFtZSAtbyAkbGliJwoJYXJjaGl2ZV9leHBzeW1fY21kcz0nJENDIC1zaGFy
ZWQgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29u
YW1lICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUgJHdsJGV4cG9ydF9zeW1ib2xzIC1vICRsaWIn
CiAgICAgIGZpCiAgICAgIDs7CgogICAgc29sYXJpcyopCiAgICAgIGlmICRMRCAtdiAyPiYxIHwg
Z3JlcCAnQkZEIDJcLjgnID4gL2Rldi9udWxsOyB0aGVuCglsZF9zaGxpYnM9bm8KCWNhdCA8PEVP
RiAxPiYyCgoqKiogV2FybmluZzogVGhlIHJlbGVhc2VzIDIuOC4qIG9mIHRoZSBHTlUgbGlua2Vy
IGNhbm5vdCByZWxpYWJseQoqKiogY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMgb24gU29sYXJpcyBz
eXN0ZW1zLiAgVGhlcmVmb3JlLCBsaWJ0b29sCioqKiBpcyBkaXNhYmxpbmcgc2hhcmVkIGxpYnJh
cmllcyBzdXBwb3J0LiAgV2UgdXJnZSB5b3UgdG8gdXBncmFkZSBHTlUKKioqIGJpbnV0aWxzIHRv
IHJlbGVhc2UgMi45LjEgb3IgbmV3ZXIuICBBbm90aGVyIG9wdGlvbiBpcyB0byBtb2RpZnkKKioq
IHlvdXIgUEFUSCBvciBjb21waWxlciBjb25maWd1cmF0aW9uIHNvIHRoYXQgdGhlIG5hdGl2ZSBs
aW5rZXIgaXMKKioqIHVzZWQsIGFuZCB0aGVuIHJlc3RhcnQuCgpFT0YKICAgICAgZWxpZiAkTEQg
LS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVsZicgPiAvZGV2L251
bGw7IHRoZW4KCWFyY2hpdmVfY21kcz0nJENDIC1zaGFyZWQgJGxpYm9ianMgJGRlcGxpYnMgJGNv
bXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCglhcmNoaXZlX2V4
cHN5bV9jbWRzPSckQ0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3Mg
JHt3bH0tc29uYW1lICR3bCRzb25hbWUgJHt3bH0tcmV0YWluLXN5bWJvbHMtZmlsZSAkd2wkZXhw
b3J0X3N5bWJvbHMgLW8gJGxpYicKICAgICAgZWxzZQoJbGRfc2hsaWJzPW5vCiAgICAgIGZpCiAg
ICAgIDs7CgogICAgc3lzdjUqIHwgc2NvMy4ydjUqIHwgc2NvNXY2KiB8IHVuaXh3YXJlKiB8IE9w
ZW5VTklYKikKICAgICAgY2FzZSBgJExEIC12IDI+JjFgIGluCiAgICAgICAgKlwgWzAxXS4qIHwg
KlwgMi5bMC05XS4qIHwgKlwgMi4xWzAtNV0uKikKCWxkX3NobGlicz1ubwoJY2F0IDw8X0xUX0VP
RiAxPiYyCgoqKiogV2FybmluZzogUmVsZWFzZXMgb2YgdGhlIEdOVSBsaW5rZXIgcHJpb3IgdG8g
Mi4xNi45MS4wLjMgY2FuIG5vdAoqKiogcmVsaWFibHkgY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMg
b24gU0NPIHN5c3RlbXMuICBUaGVyZWZvcmUsIGxpYnRvb2wKKioqIGlzIGRpc2FibGluZyBzaGFy
ZWQgbGlicmFyaWVzIHN1cHBvcnQuICBXZSB1cmdlIHlvdSB0byB1cGdyYWRlIEdOVQoqKiogYmlu
dXRpbHMgdG8gcmVsZWFzZSAyLjE2LjkxLjAuMyBvciBuZXdlci4gIEFub3RoZXIgb3B0aW9uIGlz
IHRvIG1vZGlmeQoqKiogeW91ciBQQVRIIG9yIGNvbXBpbGVyIGNvbmZpZ3VyYXRpb24gc28gdGhh
dCB0aGUgbmF0aXZlIGxpbmtlciBpcwoqKiogdXNlZCwgYW5kIHRoZW4gcmVzdGFydC4KCl9MVF9F
T0YKCTs7CgkqKQoJICBpZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJn
ZXRzOi4qIGVsZicgPiAvZGV2L251bGw7IHRoZW4KCSAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19z
cGVjPSdgdGVzdCAteiAiJFNDT0FCU1BBVEgiICYmIGVjaG8gJHt3bH0tcnBhdGgsJGxpYmRpcmAn
CgkgICAgYXJjaGl2ZV9jbWRzPSckQ0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGls
ZXJfZmxhZ3MgJHt3bH0tc29uYW1lLFwke1NDT0FCU1BBVEg6KyR7aW5zdGFsbF9saWJkaXJ9L30k
c29uYW1lIC1vICRsaWInCgkgICAgYXJjaGl2ZV9leHBzeW1fY21kcz0nJENDIC1zaGFyZWQgJGxp
Ym9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSxcJHtTQ09BQlNQQVRI
Oiske2luc3RhbGxfbGliZGlyfS99JHNvbmFtZSwtcmV0YWluLXN5bWJvbHMtZmlsZSwkZXhwb3J0
X3N5bWJvbHMgLW8gJGxpYicKCSAgZWxzZQoJICAgIGxkX3NobGlicz1ubwoJICBmaQoJOzsKICAg
ICAgZXNhYwogICAgICA7OwoKICAgIHN1bm9zNCopCiAgICAgIGFyY2hpdmVfY21kcz0nJExEIC1h
c3NlcnQgcHVyZS10ZXh0IC1Cc2hhcmVhYmxlIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxp
bmtlcl9mbGFncycKICAgICAgd2xhcmM9CiAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKICAgICAg
aGFyZGNvZGVfc2hsaWJwYXRoX3Zhcj1ubwogICAgICA7OwoKICAgICopCiAgICAgIGlmICRMRCAt
LWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVs
bDsgdGhlbgoJYXJjaGl2ZV9jbWRzPSckQ0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29t
cGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgLW8gJGxpYicKCWFyY2hpdmVfZXhw
c3ltX2NtZHM9JyRDQyAtc2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAk
e3dsfS1zb25hbWUgJHdsJHNvbmFtZSAke3dsfS1yZXRhaW4tc3ltYm9scy1maWxlICR3bCRleHBv
cnRfc3ltYm9scyAtbyAkbGliJwogICAgICBlbHNlCglsZF9zaGxpYnM9bm8KICAgICAgZmkKICAg
ICAgOzsKICAgIGVzYWMKCiAgICBpZiB0ZXN0ICIkbGRfc2hsaWJzIiA9IG5vOyB0aGVuCiAgICAg
IHJ1bnBhdGhfdmFyPQogICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPQogICAgICBleHBv
cnRfZHluYW1pY19mbGFnX3NwZWM9CiAgICAgIHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjPQogICAg
ZmkKICBlbHNlCiAgICAjIFBPUlRNRSBmaWxsIGluIGEgZGVzY3JpcHRpb24gb2YgeW91ciBzeXN0
ZW0ncyBsaW5rZXIgKG5vdCBHTlUgbGQpCiAgICBjYXNlICRob3N0X29zIGluCiAgICBhaXgzKikK
ICAgICAgYWxsb3dfdW5kZWZpbmVkX2ZsYWc9dW5zdXBwb3J0ZWQKICAgICAgYWx3YXlzX2V4cG9y
dF9zeW1ib2xzPXllcwogICAgICBhcmNoaXZlX2V4cHN5bV9jbWRzPSckTEQgLW8gJG91dHB1dF9v
YmpkaXIvJHNvbmFtZSAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzIC1iRTokZXhwb3J0
X3N5bWJvbHMgLVQ1MTIgLUg1MTIgLWJNOlNSRX4kQVIgJEFSX0ZMQUdTICRsaWIgJG91dHB1dF9v
YmpkaXIvJHNvbmFtZScKICAgICAgIyBOb3RlOiB0aGlzIGxpbmtlciBoYXJkY29kZXMgdGhlIGRp
cmVjdG9yaWVzIGluIExJQlBBVEggaWYgdGhlcmUKICAgICAgIyBhcmUgbm8gZGlyZWN0b3JpZXMg
c3BlY2lmaWVkIGJ5IC1MLgogICAgICBoYXJkY29kZV9taW51c19MPXllcwogICAgICBpZiB0ZXN0
ICIkR0NDIiA9IHllcyAmJiB0ZXN0IC16ICIkbHRfcHJvZ19jb21waWxlcl9zdGF0aWMiOyB0aGVu
CgkjIE5laXRoZXIgZGlyZWN0IGhhcmRjb2Rpbmcgbm9yIHN0YXRpYyBsaW5raW5nIGlzIHN1cHBv
cnRlZCB3aXRoIGEKCSMgYnJva2VuIGNvbGxlY3QyLgoJaGFyZGNvZGVfZGlyZWN0PXVuc3VwcG9y
dGVkCiAgICAgIGZpCiAgICAgIDs7CgogICAgYWl4NCogfCBhaXg1KikKICAgICAgaWYgdGVzdCAi
JGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KCSMgT24gSUE2NCwgdGhlIGxpbmtlciBkb2VzIHJ1biB0
aW1lIGxpbmtpbmcgYnkgZGVmYXVsdCwgc28gd2UgZG9uJ3QKCSMgaGF2ZSB0byBkbyBhbnl0aGlu
ZyBzcGVjaWFsLgoJYWl4X3VzZV9ydW50aW1lbGlua2luZz1ubwoJZXhwX3N5bV9mbGFnPSctQmV4
cG9ydCcKCW5vX2VudHJ5X2ZsYWc9IiIKICAgICAgZWxzZQoJIyBJZiB3ZSdyZSB1c2luZyBHTlUg
bm0sIHRoZW4gd2UgZG9uJ3Qgd2FudCB0aGUgIi1DIiBvcHRpb24uCgkjIC1DIG1lYW5zIGRlbWFu
Z2xlIHRvIEFJWCBubSwgYnV0IG1lYW5zIGRvbid0IGRlbWFuZ2xlIHdpdGggR05VIG5tCglpZiAk
Tk0gLVYgMj4mMSB8IGdyZXAgJ0dOVScgPiAvZGV2L251bGw7IHRoZW4KCSAgZXhwb3J0X3N5bWJv
bHNfY21kcz0nJE5NIC1CcGcgJGxpYm9ianMgJGNvbnZlbmllbmNlIHwgYXdrICdcJyd7IGlmICgo
KFwkMiA9PSAiVCIpIHx8IChcJDIgPT0gIkQiKSB8fCAoXCQyID09ICJCIikpICYmIChzdWJzdHIo
XCQzLDEsMSkgIT0gIi4iKSkgeyBwcmludCBcJDMgfSB9J1wnJyB8IHNvcnQgLXUgPiAkZXhwb3J0
X3N5bWJvbHMnCgllbHNlCgkgIGV4cG9ydF9zeW1ib2xzX2NtZHM9JyROTSAtQkNwZyAkbGlib2Jq
cyAkY29udmVuaWVuY2UgfCBhd2sgJ1wnJ3sgaWYgKCgoXCQyID09ICJUIikgfHwgKFwkMiA9PSAi
RCIpIHx8IChcJDIgPT0gIkIiKSkgJiYgKHN1YnN0cihcJDMsMSwxKSAhPSAiLiIpKSB7IHByaW50
IFwkMyB9IH0nXCcnIHwgc29ydCAtdSA+ICRleHBvcnRfc3ltYm9scycKCWZpCglhaXhfdXNlX3J1
bnRpbWVsaW5raW5nPW5vCgoJIyBUZXN0IGlmIHdlIGFyZSB0cnlpbmcgdG8gdXNlIHJ1biB0aW1l
IGxpbmtpbmcgb3Igbm9ybWFsCgkjIEFJWCBzdHlsZSBsaW5raW5nLiBJZiAtYnJ0bCBpcyBzb21l
d2hlcmUgaW4gTERGTEFHUywgd2UKCSMgbmVlZCB0byBkbyBydW50aW1lIGxpbmtpbmcuCgljYXNl
ICRob3N0X29zIGluIGFpeDQuWzIzXXxhaXg0LlsyM10uKnxhaXg1KikKCSAgZm9yIGxkX2ZsYWcg
aW4gJExERkxBR1M7IGRvCiAgCSAgaWYgKHRlc3QgJGxkX2ZsYWcgPSAiLWJydGwiIHx8IHRlc3Qg
JGxkX2ZsYWcgPSAiLVdsLC1icnRsIik7IHRoZW4KICAJICAgIGFpeF91c2VfcnVudGltZWxpbmtp
bmc9eWVzCiAgCSAgICBicmVhawogIAkgIGZpCgkgIGRvbmUKCSAgOzsKCWVzYWMKCglleHBfc3lt
X2ZsYWc9Jy1iZXhwb3J0JwoJbm9fZW50cnlfZmxhZz0nLWJub2VudHJ5JwogICAgICBmaQoKICAg
ICAgIyBXaGVuIGxhcmdlIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzIGFyZSBidWlsdCwg
QUlYIGxkIGNhbgogICAgICAjIGhhdmUgcHJvYmxlbXMgY3JlYXRpbmcgdGhlIHRhYmxlIG9mIGNv
bnRlbnRzLiAgSWYgbGlua2luZyBhIGxpYnJhcnkKICAgICAgIyBvciBwcm9ncmFtIHJlc3VsdHMg
aW4gImVycm9yIFRPQyBvdmVyZmxvdyIgYWRkIC1tbWluaW1hbC10b2MgdG8KICAgICAgIyBDWFhG
TEFHUy9DRkxBR1MgZm9yIGcrKy9nY2MuICBJbiB0aGUgY2FzZXMgd2hlcmUgdGhhdCBpcyBub3QK
ICAgICAgIyBlbm91Z2ggdG8gZml4IHRoZSBwcm9ibGVtLCBhZGQgLVdsLC1iYmlndG9jIHRvIExE
RkxBR1MuCgogICAgICBhcmNoaXZlX2NtZHM9JycKICAgICAgaGFyZGNvZGVfZGlyZWN0PXllcwog
ICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSc6JwogICAgICBsaW5rX2FsbF9kZXBsaWJz
PXllcwoKICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KCWNhc2UgJGhvc3Rfb3MgaW4g
YWl4NC5bMDEyXXxhaXg0LlswMTJdLiopCgkjIFdlIG9ubHkgd2FudCB0byBkbyB0aGlzIG9uIEFJ
WCA0LjIgYW5kIGxvd2VyLCB0aGUgY2hlY2sKCSMgYmVsb3cgZm9yIGJyb2tlbiBjb2xsZWN0MiBk
b2Vzbid0IHdvcmsgdW5kZXIgNC4zKwoJICBjb2xsZWN0Mm5hbWU9YCR7Q0N9IC1wcmludC1wcm9n
LW5hbWU9Y29sbGVjdDJgCgkgIGlmIHRlc3QgLWYgIiRjb2xsZWN0Mm5hbWUiICYmIFwKICAJICAg
c3RyaW5ncyAiJGNvbGxlY3QybmFtZSIgfCBncmVwIHJlc29sdmVfbGliX25hbWUgPi9kZXYvbnVs
bAoJICB0aGVuCiAgCSAgIyBXZSBoYXZlIHJld29y