<?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>128288</bug_id>
          
          <creation_ts>2006-03-31 12:29 0000</creation_ts>
          <short_desc>clisp fails to compile with X USE flag</short_desc>
          <delta_ts>2006-04-03 10:32:05 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>
          
          
          <keywords>Bug</keywords>
          <priority>P2</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>127463</blocked>
          
          <everconfirmed>1</everconfirmed>
          <reporter>zedek@gnu.org</reporter>
          <assigned_to>common-lisp@gentoo.org</assigned_to>
          <cc>gentoo-bugs@wurzelbenutzer.de</cc>
    
    <cc>zedek@gnu.org</cc>

      

      
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-03-31 12:29:43 0000</bug_when>
            <thetext>When compiling clisp (2.38) with X USE flag activated results in failure:

checking for xmkmf... no
checking for X11 header files... no
checking for main in -lX11... (cached) yes
configure: error: cannot find X Window System
See `config.log&apos; for more details.
make: *** [clx/new-clx] Error 1

!!! ERROR: dev-lisp/clisp-2.38 failed.
Call stack:
  ebuild.sh, line 1526:   Called dyn_compile
  ebuild.sh, line 923:   Called src_compile
  clisp-2.38.ebuild, line 55:   Called die

!!! (no error message)
!!! If you need support, post the topmost build error, and the call stack if relevant.


This is on a ~x86 setup with Xorg modular.

emerge --info:

totoz-linux zedek # emerge --info
Portage 2.1_pre7-r2 (default-linux/x86/2006.0, gcc-4.1.0, glibc-2.4-r1, 2.6.16-suspend2-r1 i686)
=================================================================
System uname: 2.6.16-suspend2-r1 i686 Intel(R) Pentium(R) M processor 1.80GHz
Gentoo Base System version 1.6.14
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
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.16.1, 2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-O2 -march=pentium-m -pipe -mmmx -msse -msse2 -fomit-frame-pointer -ffast-math -ftracer -fprefetch-loop-arrays -fno-ident -falign-functions=64 -momit-leaf-frame-pointer&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/X11/xkb /usr/share/config /var/qmail/control&quot;
CONFIG_PROTECT_MASK=&quot;/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/env.d&quot;
CXXFLAGS=&quot;-O2 -mcpu=i686 -pipe&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoaddcvs autoconfig candy ccache confcache distcc distlocks fixpackages metadata-transfer parallel-fetch prelink sandbox sfperms strict usersandbox&quot;
GENTOO_MIRRORS=&quot;http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo&quot;
LINGUAS=&quot;fr fr_FR&quot;
MAKEOPTS=&quot;-j5&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
PORTDIR_OVERLAY=&quot;/usr/local/portage&quot;
SYNC=&quot;rsync://rsync.gentoo.org/gentoo-portage&quot;
USE=&quot;x86 3dnow 3dnowext X X509 a52 aac acl acpi aio alsa apache2 applet artworkextra asf async audiofile avahi bash-completion bdf beagle berkdb bitmap-fonts bookmarks bzip2 cairo cdb cdda cddb cdparanoia cdr chm crosscompile crypt ctype cups curl curlwrappers custom-cflags daap dba dbus dio dlloader dri dts dvd dvdr dvdread dvi eds emacs emoticon encode esd evo exif expat fam fbcon ffmpeg fftw firefox flac flash foomaticdb ftp gaim gd gdbm gif glep glut glx gmp gnome gnutls gphoto2 gstreamer gstreamer010 gtk gtk2 hal i8x0 iconv imagemagick imap imlib2 input_devices_evdev input_devices_keyboard input_devices_mouse ipod ipv6 isdnlog jabber javascript jpeg lcms lesstif libedit libnotify libwww linuxthreads-tls logrotate lua lzo mad matroska mbox memlimit mime mmap mmx mono moznocompose moznoirc moznomail moznoroaming mozsvg mp3 mpeg multislot nautilus ncurses network nfs nls nntp no-old-linux nptl nsplugin ofx ogg opengl oss pam pam_chroot pam_console pam_timestamp pcntl pcre pdf perl pic plotutils png posix ppds pppd profile python quicktime readline real recode rhythmbox sasl savedconfig sdl session sharedmem simplexml skey slang soap sockets source speex spell sqlite sqlite3 sse sse2 ssl svg symlink sysvipc tcpd tetex theora threads tidy tiff tokenizer truetype unicode usb vcd vorbis win32codecs wmf xface xine xml xosd xpm xprint xscreensaver xsl xv xvid zlib elibc_glibc input_devices_synaptics kernel_linux linguas_fr linguas_fr_FR userland_GNU video_cards_i810 video_cards_vesa&quot;
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-01 03:16:46 0000</bug_when>
            <thetext>This block 127463 for the clisp USE flag part.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-01 11:21:33 0000</bug_when>
            <thetext>I also tested X USE flag with 2.36 resulting to identical failure with the same error message (on the same computer as well)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>tjs_ng@yahoo.de</who>
            <bug_when>2006-04-01 12:13:09 0000</bug_when>
            <thetext>works using the following configuration:
  clisp 2.38
  xorg-x11 6.8.2-r1

emerge --info

*** You are not in the portage group. You may experience cache problems
*** due to permissions preventing the creation of the on-disk cache.
*** Please add this user to the portage group if you wish to use portage.

Portage 2.0.54 (default-linux/x86/2005.0, gcc-3.3.6, glibc-2.3.5-r2, 2.6.11-gent
oo-r8 i686)
=================================================================
System uname: 2.6.11-gentoo-r8 i686 AMD Sempron(tm)   3000+
Gentoo Base System version 1.4.16
dev-lang/python:     2.3.5
sys-apps/sandbox:    1.2.11
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r7
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS=&quot;x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-O2 -march=athlon-xp -fomit-frame-pointer&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share
/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kd
e/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/s
hare/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/g
eneric/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/q
mail/control&quot;
CONFIG_PROTECT_MASK=&quot;/etc/gconf /etc/terminfo /etc/env.d&quot;
CXXFLAGS=&quot;-O2 -march=athlon-xp -fomit-frame-pointer&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoconfig distlocks sandbox sfperms strict&quot;
GENTOO_MIRRORS=&quot;ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
SYNC=&quot;rsync://rsync.gentoo.org/gentoo-portage&quot;
USE=&quot;x86 X adns alsa apm arts audiofile avi berkdb bitmap-fonts bzip2 cdr crypt 
cscope cups curl eds emboss encode esd exif expat fam foomaticdb fortran gd gdbm
 gif glut gmp gnome gpm gstreamer gtk gtk2 gtkhtml idn imagemagick imlib ipv6 ja
va jpeg junit kde lcms libg++ libwww lua mad mikmod mng motif mp3 mpeg mysql nas
 ncurses nls ogg oggvorbis opengl oss pam pcre pdflib perl png python qt quickti
me readline ruby sdl spell sqlite ssl svga tcltk tcpd tetex tiff truetype truety
pe-fonts type1-fonts udev vorbis xml2 xmms xv xvid zlib userland_GNU kernel_linu
x elibc_glibc&quot;
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTDIR_OVER
LAY
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-01 12:23:39 0000</bug_when>
            <thetext>Created an attachment (id=83652)
config.log of the latest try on 2.38

This is the full config.log for my latest trying at building clisp 2.38</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 04:33:20 0000</bug_when>
            <thetext>Ok, I have submitted a bug report on clisp tracker as well.

http://sourceforge.net/tracker/index.php?func=detail&amp;aid=1462995&amp;group_id=1355&amp;atid=101355</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>bibi.skuk@gmail.com</who>
            <bug_when>2006-04-02 06:13:36 0000</bug_when>
            <thetext>compile fine with USE=&quot;X readline zlib&quot; and xorg 7

[alastor]~%emerge --info                                                  15:11
Portage 2.1_pre7-r3 (default-linux/x86/2005.1, gcc-3.4.6, glibc-2.4-r1, 2.6.16-gentoo i686)
=================================================================
System uname: 2.6.16-gentoo i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.12.0_pre16
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.3.5-r2, 2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
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.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS=&quot;x86 ~x86&quot;
AUTOCLEAN=&quot;yes&quot;
CBUILD=&quot;i686-pc-linux-gnu&quot;
CFLAGS=&quot;-Os -march=pentium4 -fomit-frame-pointer -pipe&quot;
CHOST=&quot;i686-pc-linux-gnu&quot;
CONFIG_PROTECT=&quot;/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/qmail/control&quot;
CONFIG_PROTECT_MASK=&quot;/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d&quot;
CXXFLAGS=&quot;-Os -march=pentium4 -fomit-frame-pointer -pipe&quot;
DISTDIR=&quot;/usr/portage/distfiles&quot;
FEATURES=&quot;autoconfig confcache distlocks metadata-transfer sandbox sfperms strict&quot;
GENTOO_MIRRORS=&quot;http://mirror.ovh.net/gentoo-distfiles/ 			 ftp://mirror.ovh.net/gentoo-distfiles/  					 http://gentoo.modulix.net/gentoo/&quot;
LANG=&quot;&quot;
LC_ALL=&quot;fr_FR.UTF-8&quot;
LINGUAS=&quot;fr fr_FR&quot;
MAKEOPTS=&quot;-j3&quot;
PKGDIR=&quot;/usr/portage/packages&quot;
PORTAGE_TMPDIR=&quot;/var/tmp&quot;
PORTDIR=&quot;/usr/portage&quot;
PORTDIR_OVERLAY=&quot;/usr/local/portage&quot;
SYNC=&quot;rsync://wyst/gentoo-portage&quot;
USE=&quot;x86 X a52 aac acpi alsa ao apm audiofile avi bash-completion bitmap-fonts bzip2 cairo cddb cdparanoia cdr crypt dbus divx4linux djvu doc dpms dri dv dvd dvdr dvdread dvi emboss encode esd examples exif fbcon ffmpeg firefox flac flash foomaticdb gd gdbm gif gimp glitz gmail gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml imagemagick imlib isdnlog jabber jpeg kdexdeltas lcms libg++ libwww mad matroska mikmod mime mmx mmxext mng motif mozsvg mp3 mpeg msn musepack ncurses nls nptl nptlonly offensive ogg oggvorbis openal opengl pam pdf pdflib perl png posix postscript pppd python quicktime readline real rtc sasl sdl smp spell sse sse2 ssl subversion svg t1lib tcpd tetex theora tiff truetype truetype-fonts type1-fonts unicode usb utf8 v41 v4l2 vcd vorbis win32codecs wmf x264 xine xml xml2 xosd xpm xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_fr linguas_fr_FR userland_GNU video_cards_fglrx video_cards_vesa video_cards_vga video_cards_ati&quot;
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LDFLAGS
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 09:37:48 0000</bug_when>
            <thetext>Ok, little update to say I tested with GCC 3.4.6 as well: still the same failure</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 09:41:32 0000</bug_when>
            <thetext>Ok, I FINALLY found out what the problem is !

The ebuild lacks a dependency (DEPEND) on x11-misc/imake.

I have added it in my local ebuild and that works.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 09:43:26 0000</bug_when>
            <thetext>Created an attachment (id=83724)
Patch against clisp 2.38 ebuild

Please consider adding this dependency. That would solve the build failure for many of us (all people had it installed that&apos;s why they did not have the problem).

Thank you</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 09:50:18 0000</bug_when>
            <thetext>Created an attachment (id=83725)
Patch against clisp ebuild file (new revision)

Better patch (I guess)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zedek@gnu.org</who>
            <bug_when>2006-04-02 09:51:15 0000</bug_when>
            <thetext>Created an attachment (id=83726)
Complete working clisp-2.38.ebuild

For the lazy people who want to try</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mkennedy@gentoo.org</who>
            <bug_when>2006-04-03 10:32:05 0000</bug_when>
            <thetext>Fixed in clisp-2.38-r1.  Thanks for the bug report and solution.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>83652</attachid>
            <date>2006-04-01 12:23 0000</date>
            <desc>config.log of the latest try on 2.38</desc>
            <filename>config.log</filename>
            <type>text/plain</type>
            <data encoding="base64">VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp
bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz
IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IEdOVSBDTElTUCBjb25maWd1cmUgMi4zOCAo
MjAwNi0wMS0yNCksIHdoaWNoIHdhcwpnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTkuICBJ
bnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKCiAgJCBjb25maWd1cmUgLS1zcmNkaXI9Li4vc3Jj
IC0tcHJlZml4PS91c3IgLS13aXRoLW1vZHVsZT13aWxkY2FyZCAtLXdpdGgtbW9kdWxlPXJhd3Nv
Y2sgLS13aXRoLW1vZHVsZT1iaW5kaW5ncy9nbGliYyAtLXdpdGgtbW9kdWxlPWNseC9uZXctY2x4
IC0td2l0aC1tb2R1bGU9cGNyZSAtLXdpdGgtbW9kdWxlPXpsaWIgLS1jYWNoZS1maWxlPWNvbmZp
Zy5jYWNoZQoKIyMgLS0tLS0tLS0tICMjCiMjIFBsYXRmb3JtLiAjIwojIyAtLS0tLS0tLS0gIyMK
Cmhvc3RuYW1lID0gdG90b3otbGludXgKdW5hbWUgLW0gPSBpNjg2CnVuYW1lIC1yID0gMi42LjE2
LXN1c3BlbmQyLXIxCnVuYW1lIC1zID0gTGludXgKdW5hbWUgLXYgPSAjOCBTTVAgU2F0IEFwciAx
IDIxOjA0OjA4IENFU1QgMjAwNgoKL3Vzci9iaW4vdW5hbWUgLXAgPSBJbnRlbChSKSBQZW50aXVt
KFIpIE0gcHJvY2Vzc29yIDEuODBHSHoKL2Jpbi91bmFtZSAtWCAgICAgPSB1bmtub3duCgovYmlu
L2FyY2ggICAgICAgICAgICAgID0gaTY4NgovdXNyL2Jpbi9hcmNoIC1rICAgICAgID0gdW5rbm93
bgovdXNyL2NvbnZleC9nZXRzeXNpbmZvID0gdW5rbm93bgpob3N0aW5mbyAgICAgICAgICAgICAg
ID0gdW5rbm93bgovYmluL21hY2hpbmUgICAgICAgICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xl
dmVsICAgICAgID0gdW5rbm93bgovYmluL3VuaXZlcnNlICAgICAgICAgID0gdW5rbm93bgoKUEFU
SDogL3Vzci9saWIvY2NhY2hlL2JpbgpQQVRIOiAvdXNyL2xpYi9kaXN0Y2MvYmluClBBVEg6IC9z
YmluClBBVEg6IC91c3Ivc2JpbgpQQVRIOiAvdXNyL2xpYi9wb3J0YWdlL2JpbgpQQVRIOiAvYmlu
ClBBVEg6IC91c3IvYmluClBBVEg6IC9vcHQvYmluClBBVEg6IC91c3IvaTY4Ni1wYy1saW51eC1n
bnUvZ2NjLWJpbi80LjEuMApQQVRIOiAvdXNyL2kzODYtcGMtbGludXgtZ251L2djYy1iaW4vMy40
LjUKUEFUSDogL29wdC9naGMvYmluCgoKIyMgLS0tLS0tLS0tLS0gIyMKIyMgQ29yZSB0ZXN0cy4g
IyMKIyMgLS0tLS0tLS0tLS0gIyMKCmNvbmZpZ3VyZToxMjUyOiBjcmVhdGluZyBjYWNoZSBjb25m
aWcuY2FjaGUKY29uZmlndXJlOjEzNDM6ICogY2hlY2tzIGZvciBVTklYIHZhcmlhbnRzIHRoYXQg
c2V0IERFRlMKY29uZmlndXJlOjEzOTE6IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjE0MDc6
IGZvdW5kIC91c3IvbGliL2NjYWNoZS9iaW4vZ2NjCmNvbmZpZ3VyZToxNDE3OiByZXN1bHQ6IGdj
Ywpjb25maWd1cmU6MTY2MTogY2hlY2tpbmcgZm9yIEMgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1
cmU6MTY2NDogZ2NjIC0tdmVyc2lvbiA8L2Rldi9udWxsID4mNQpnY2MgKEdDQykgNC4xLjAgKEdl
bnRvbyA0LjEuMCkKQ29weXJpZ2h0IChDKSAyMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg
SW5jLgpUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNv
bmRpdGlvbnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCmNvbmZpZ3VyZToxNjY3
OiAkPyA9IDAKY29uZmlndXJlOjE2Njk6IGdjYyAtdiA8L2Rldi9udWxsID4mNQpVc2luZyBidWls
dC1pbiBzcGVjcy4KVGFyZ2V0OiBpNjg2LXBjLWxpbnV4LWdudQpDb25maWd1cmVkIHdpdGg6IC92
YXIvdG1wL3BvcnRhZ2UvZ2NjLTQuMS4wL3dvcmsvZ2NjLTQuMS4wL2NvbmZpZ3VyZSAtLXByZWZp
eD0vdXNyIC0tYmluZGlyPS91c3IvaTY4Ni1wYy1saW51eC1nbnUvZ2NjLWJpbi80LjEuMCAtLWlu
Y2x1ZGVkaXI9L3Vzci9saWIvZ2NjL2k2ODYtcGMtbGludXgtZ251LzQuMS4wL2luY2x1ZGUgLS1k
YXRhZGlyPS91c3Ivc2hhcmUvZ2NjLWRhdGEvaTY4Ni1wYy1saW51eC1nbnUvNC4xLjAgLS1tYW5k
aXI9L3Vzci9zaGFyZS9nY2MtZGF0YS9pNjg2LXBjLWxpbnV4LWdudS80LjEuMC9tYW4gLS1pbmZv
ZGlyPS91c3Ivc2hhcmUvZ2NjLWRhdGEvaTY4Ni1wYy1saW51eC1nbnUvNC4xLjAvaW5mbyAtLXdp
dGgtZ3h4LWluY2x1ZGUtZGlyPS91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEuMC9p
bmNsdWRlL2crKy12NCAtLWhvc3Q9aTY4Ni1wYy1saW51eC1nbnUgLS1idWlsZD1pNjg2LXBjLWxp
bnV4LWdudSAtLWRpc2FibGUtYWx0aXZlYyAtLWVuYWJsZS1ubHMgLS13aXRob3V0LWluY2x1ZGVk
LWdldHRleHQgLS13aXRoLXN5c3RlbS16bGliIC0tZGlzYWJsZS1jaGVja2luZyAtLWRpc2FibGUt
d2Vycm9yIC0tZGlzYWJsZS1saWJ1bndpbmQtZXhjZXB0aW9ucyAtLWRpc2FibGUtbXVsdGlsaWIg
LS1kaXNhYmxlLWxpYm11ZGZsYXAgLS1kaXNhYmxlLWxpYnNzcCAtLWRpc2FibGUtbGliZ2NqIC0t
ZW5hYmxlLWxhbmd1YWdlcz1jLGMrKyAtLWVuYWJsZS1zaGFyZWQgLS1lbmFibGUtdGhyZWFkcz1w
b3NpeCAtLWVuYWJsZS1fX2N4YV9hdGV4aXQgLS1lbmFibGUtY2xvY2FsZT1nbnUKVGhyZWFkIG1v
ZGVsOiBwb3NpeApnY2MgdmVyc2lvbiA0LjEuMCAoR2VudG9vIDQuMS4wKQpjb25maWd1cmU6MTY3
MjogJD8gPSAwCmNvbmZpZ3VyZToxNjc0OiBnY2MgLVYgPC9kZXYvbnVsbCA+JjUKZ2NjOiAnLVYn
IG9wdGlvbiBtdXN0IGhhdmUgYXJndW1lbnQKZGlzdGNjWzEwOTBdIEVSUk9SOiBjb21waWxlIChu
dWxsKSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZpZ3VyZToxNjc3OiAkPyA9IDEKY29uZmlndXJl
OjE3MDA6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZQpj
b25maWd1cmU6MTcwMzogZ2NjICAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTcwNjogJD8g
PSAwCmNvbmZpZ3VyZToxNzUyOiByZXN1bHQ6IGEub3V0CmNvbmZpZ3VyZToxNzU3OiBjaGVja2lu
ZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCmNvbmZpZ3VyZToxNzYzOiAuL2Eub3V0CmNv
bmZpZ3VyZToxNzY2OiAkPyA9IDAKY29uZmlndXJlOjE3ODM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToxNzkwOiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBjcm9zcyBjb21waWxpbmcKY29uZmlndXJl
OjE3OTI6IHJlc3VsdDogbm8KY29uZmlndXJlOjE3OTU6IGNoZWNraW5nIGZvciBzdWZmaXggb2Yg
ZXhlY3V0YWJsZXMKY29uZmlndXJlOjE3OTc6IGdjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5j
ICA+JjUKY29uZmlndXJlOjE4MDA6ICQ/ID0gMApjb25maWd1cmU6MTgyNTogcmVzdWx0OiAKY29u
ZmlndXJlOjE4MzE6IGNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZpZ3Vy
ZToxODUyOiBnY2MgLWMgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTg1NTogJD8gPSAwCmNv
bmZpZ3VyZToxODc3OiByZXN1bHQ6IG8KY29uZmlndXJlOjE4ODE6IGNoZWNraW5nIHdoZXRoZXIg
d2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBjb21waWxlcgpjb25maWd1cmU6MTkwNTogZ2NjIC1jICAg
Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE5MTE6ICQ/ID0gMApjb25maWd1cmU6MTkxNTogdGVz
dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE5MTg6ICQ/ID0g
MApjb25maWd1cmU6MTkyMTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxOTI0OiAkPyA9
IDAKY29uZmlndXJlOjE5Mzc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTQzOiBjaGVja2luZyB3
aGV0aGVyIGdjYyBhY2NlcHRzIC1nCmNvbmZpZ3VyZToxOTY0OiBnY2MgLWMgLWcgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZToxOTcwOiAkPyA9IDAKY29uZmlndXJlOjE5NzQ6IHRlc3QgLXogCgkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxOTc3OiAkPyA9IDAKY29uZmln
dXJlOjE5ODA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTk4MzogJD8gPSAwCmNvbmZp
Z3VyZToxOTk0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAxMTogY2hlY2tpbmcgZm9yIGdjYyBv
cHRpb24gdG8gYWNjZXB0IEFOU0kgQwpjb25maWd1cmU6MjA4MTogZ2NjICAtYyAtZyAtTzIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDg3OiAkPyA9IDAKY29uZmlndXJlOjIwOTE6IHRlc3Qg
LXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMDk0OiAkPyA9IDAK
Y29uZmlndXJlOjIwOTc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MjEwMDogJD8gPSAw
CmNvbmZpZ3VyZToyMTE4OiByZXN1bHQ6IG5vbmUgbmVlZGVkCmNvbmZpZ3VyZToyMTM2OiBnY2Mg
LWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMTQwN10gRVJST1I6IGNvbXBpbGUgL3Zh
ci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4xNDAzLmkgb24gbG9jYWxob3N0
IGZhaWxlZApjb25mdGVzdC5jOjI6IGVycm9yOiBleHBlY3RlZCAnPScsICcsJywgJzsnLCAnYXNt
JyBvciAnX19hdHRyaWJ1dGVfXycgYmVmb3JlICdtZScKY29uZmlndXJlOjIxNDI6ICQ/ID0gMQpj
b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAjaWZuZGVmIF9fY3BsdXNwbHVzCnwgICBj
aG9rZSBtZQp8ICNlbmRpZgpjb25maWd1cmU6MjI4MTogY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUg
QyBwcmVwcm9jZXNzb3IKY29uZmlndXJlOjIzMTY6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1
cmU6MjMyMjogJD8gPSAwCmNvbmZpZ3VyZToyMzU0OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRl
c3QuYzo5OjI4OiBlcnJvcjogYWNfbm9uZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVj
dG9yeQpkaXN0Y2NbMTQzNl0gRVJST1I6IGNvbXBpbGUgKG51bGwpIG9uIGxvY2FsaG9zdCBmYWls
ZWQKY29uZmlndXJlOjIzNjA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK
fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQ
Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS
U0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENM
SVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6
Ly9jbGlzcC5jb25zLm9yZy8iCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxh
Y19ub25leGlzdGVudC5oPgpjb25maWd1cmU6MjM5OTogcmVzdWx0OiBnY2MgLUUKY29uZmlndXJl
OjI0MjM6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MjQyOTogJD8gPSAwCmNvbmZpZ3Vy
ZToyNDYxOiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo5OjI4OiBlcnJvcjogYWNfbm9u
ZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpkaXN0Y2NbMTU0N10gRVJST1I6
IGNvbXBpbGUgKG51bGwpIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZmlndXJlOjI0Njc6ICQ/ID0g
MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAK
fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO
QU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCki
CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgLyog
ZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxhY19ub25leGlzdGVudC5oPgpjb25maWd1
cmU6MjUxMTogY2hlY2tpbmcgZm9yIGVncmVwCmNvbmZpZ3VyZToyNTIxOiByZXN1bHQ6IGdyZXAg
LUUKY29uZmlndXJlOjI1Mjc6IGNoZWNraW5nIGZvciBBSVgKY29uZmlndXJlOjI1NDk6IHJlc3Vs
dDogbm8KY29uZmlndXJlOjI1NjE6IGNoZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzCmNv
bmZpZ3VyZToyNTg2OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjU5
MjogJD8gPSAwCmNvbmZpZ3VyZToyNTk2OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0
ZXN0LmVycgpjb25maWd1cmU6MjU5OTogJD8gPSAwCmNvbmZpZ3VyZToyNjAyOiB0ZXN0IC1zIGNv
bmZ0ZXN0Lm8KY29uZmlndXJlOjI2MDU6ICQ/ID0gMApjb25maWd1cmU6MjY5NDogZ2NjIC1vIGNv
bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAn
bWFpbic6CmNvbmZ0ZXN0LmM6Mjc6IHdhcm5pbmc6IGluY29tcGF0aWJsZSBpbXBsaWNpdCBkZWNs
YXJhdGlvbiBvZiBidWlsdC1pbiBmdW5jdGlvbiAnZXhpdCcKY29uZmlndXJlOjI2OTc6ICQ/ID0g
MApjb25maWd1cmU6MjY5OTogLi9jb25mdGVzdApjb25maWd1cmU6MjcwMjogJD8gPSAwCmNvbmZp
Z3VyZToyNzE3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjc0MTogY2hlY2tpbmcgZm9yIHN5cy90
eXBlcy5oCmNvbmZpZ3VyZToyNzU3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m
aWd1cmU6Mjc2MzogJD8gPSAwCmNvbmZpZ3VyZToyNzY3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6Mjc3MDogJD8gPSAwCmNvbmZpZ3VyZToyNzczOiB0
ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI3NzY6ICQ/ID0gMApjb25maWd1cmU6Mjc4Nzog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NDE6IGNoZWNraW5nIGZvciBzeXMvc3RhdC5oCmNvbmZp
Z3VyZToyNzU3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjc2Mzog
JD8gPSAwCmNvbmZpZ3VyZToyNzY3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
LmVycgpjb25maWd1cmU6Mjc3MDogJD8gPSAwCmNvbmZpZ3VyZToyNzczOiB0ZXN0IC1zIGNvbmZ0
ZXN0Lm8KY29uZmlndXJlOjI3NzY6ICQ/ID0gMApjb25maWd1cmU6Mjc4NzogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjI3NDE6IGNoZWNraW5nIGZvciBzdGRsaWIuaApjb25maWd1cmU6Mjc1NzogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI3NjM6ICQ/ID0gMApjb25maWd1
cmU6Mjc2NzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJl
OjI3NzA6ICQ/ID0gMApjb25maWd1cmU6Mjc3MzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
ZToyNzc2OiAkPyA9IDAKY29uZmlndXJlOjI3ODc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNzQx
OiBjaGVja2luZyBmb3Igc3RyaW5nLmgKY29uZmlndXJlOjI3NTc6IGdjYyAtYyAtZyAtTzIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNzYzOiAkPyA9IDAKY29uZmlndXJlOjI3Njc6IHRlc3Qg
LXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNzcwOiAkPyA9IDAK
Y29uZmlndXJlOjI3NzM6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6Mjc3NjogJD8gPSAw
CmNvbmZpZ3VyZToyNzg3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6Mjc0MTogY2hlY2tpbmcgZm9y
IG1lbW9yeS5oCmNvbmZpZ3VyZToyNzU3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj
b25maWd1cmU6Mjc2MzogJD8gPSAwCmNvbmZpZ3VyZToyNzY3OiB0ZXN0IC16IAoJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6Mjc3MDogJD8gPSAwCmNvbmZpZ3VyZToyNzcz
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI3NzY6ICQ/ID0gMApjb25maWd1cmU6Mjc4
NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NDE6IGNoZWNraW5nIGZvciBzdHJpbmdzLmgKY29u
ZmlndXJlOjI3NTc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNzYz
OiAkPyA9IDAKY29uZmlndXJlOjI3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
c3QuZXJyCmNvbmZpZ3VyZToyNzcwOiAkPyA9IDAKY29uZmlndXJlOjI3NzM6IHRlc3QgLXMgY29u
ZnRlc3Qubwpjb25maWd1cmU6Mjc3NjogJD8gPSAwCmNvbmZpZ3VyZToyNzg3OiByZXN1bHQ6IHll
cwpjb25maWd1cmU6Mjc0MTogY2hlY2tpbmcgZm9yIGludHR5cGVzLmgKY29uZmlndXJlOjI3NTc6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNzYzOiAkPyA9IDAKY29u
ZmlndXJlOjI3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZp
Z3VyZToyNzcwOiAkPyA9IDAKY29uZmlndXJlOjI3NzM6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25m
aWd1cmU6Mjc3NjogJD8gPSAwCmNvbmZpZ3VyZToyNzg3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
Mjc0MTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCmNvbmZpZ3VyZToyNzU3OiBnY2MgLWMgLWcgLU8y
ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Mjc2MzogJD8gPSAwCmNvbmZpZ3VyZToyNzY3OiB0
ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6Mjc3MDogJD8g
PSAwCmNvbmZpZ3VyZToyNzczOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI3NzY6ICQ/
ID0gMApjb25maWd1cmU6Mjc4NzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NDE6IGNoZWNraW5n
IGZvciB1bmlzdGQuaApjb25maWd1cmU6Mjc1NzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
JjUKY29uZmlndXJlOjI3NjM6ICQ/ID0gMApjb25maWd1cmU6Mjc2NzogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI3NzA6ICQ/ID0gMApjb25maWd1cmU6
Mjc3MzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNzc2OiAkPyA9IDAKY29uZmlndXJl
OjI3ODc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyODA5OiBjaGVja2luZyBtaW5peC9jb25maWcu
aCB1c2FiaWxpdHkKY29uZmlndXJlOjI4MjE6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
CmRpc3RjY1syNDUyXSBFUlJPUjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0IGZhaWxlZApj
b25mdGVzdC5jOjU0OjI2OiBlcnJvcjogbWluaXgvY29uZmlnLmg6IE5vIHN1Y2ggZmlsZSBvciBk
aXJlY3RvcnkKZGlzdGNjWzI0NTFdIEVSUk9SOiBjb21waWxlIGNvbmZ0ZXN0LmMgb24gbG9jYWxo
b3N0IGZhaWxlZApjb25maWd1cmU6MjgyNzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJH
TlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFD
S0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H
ICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S
VCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVm
aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB
VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov
CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg
PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg
PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3Rk
bGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJf
SAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9T
VFJJTkdfSAp8ICMgaWYgIVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVk
ZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwg
I2lmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lm
IEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYg
SEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYK
fCAjaWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lu
Y2x1ZGUgPG1pbml4L2NvbmZpZy5oPgpjb25maWd1cmU6Mjg1MDogcmVzdWx0OiBubwpjb25maWd1
cmU6Mjg1NDogY2hlY2tpbmcgbWluaXgvY29uZmlnLmggcHJlc2VuY2UKY29uZmlndXJlOjI4NjQ6
IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjIwOjI2OiBlcnJvcjogbWluaXgvY29uZmln
Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKZGlzdGNjWzI0NzFdIEVSUk9SOiBjb21waWxl
IChudWxsKSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZpZ3VyZToyODcwOiAkPyA9IDEKY29uZmln
dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmlu
ZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xp
c3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZp
bmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5l
IFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dO
VV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8IC8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8bWluaXgvY29uZmlnLmg+CmNvbmZpZ3VyZToy
ODkwOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyOTI1OiBjaGVja2luZyBmb3IgbWluaXgvY29uZmln
LmgKY29uZmlndXJlOjI5MzI6IHJlc3VsdDogbm8KY29uZmlndXJlOjI5ODA6ICogY2hlY2tzIGZv
ciBwcm9ncmFtcwpjb25maWd1cmU6MzAyODogY2hlY2tpbmcgZm9yIGdjYwpjb25maWd1cmU6MzA1
NDogcmVzdWx0OiBnY2MKY29uZmlndXJlOjMyOTg6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIHZl
cnNpb24KY29uZmlndXJlOjMzMDE6IGdjYyAtLXZlcnNpb24gPC9kZXYvbnVsbCA+JjUKZ2NjIChH
Q0MpIDQuMS4wIChHZW50b28gNC4xLjApCkNvcHlyaWdodCAoQykgMjAwNiBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb24sIEluYy4KVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBm
b3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk8Kd2FycmFudHk7IG5vdCBldmVuIGZv
ciBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCgpj
b25maWd1cmU6MzMwNDogJD8gPSAwCmNvbmZpZ3VyZTozMzA2OiBnY2MgLXYgPC9kZXYvbnVsbCA+
JjUKVXNpbmcgYnVpbHQtaW4gc3BlY3MuClRhcmdldDogaTY4Ni1wYy1saW51eC1nbnUKQ29uZmln
dXJlZCB3aXRoOiAvdmFyL3RtcC9wb3J0YWdlL2djYy00LjEuMC93b3JrL2djYy00LjEuMC9jb25m
aWd1cmUgLS1wcmVmaXg9L3VzciAtLWJpbmRpcj0vdXNyL2k2ODYtcGMtbGludXgtZ251L2djYy1i
aW4vNC4xLjAgLS1pbmNsdWRlZGlyPS91c3IvbGliL2djYy9pNjg2LXBjLWxpbnV4LWdudS80LjEu
MC9pbmNsdWRlIC0tZGF0YWRpcj0vdXNyL3NoYXJlL2djYy1kYXRhL2k2ODYtcGMtbGludXgtZ251
LzQuMS4wIC0tbWFuZGlyPS91c3Ivc2hhcmUvZ2NjLWRhdGEvaTY4Ni1wYy1saW51eC1nbnUvNC4x
LjAvbWFuIC0taW5mb2Rpcj0vdXNyL3NoYXJlL2djYy1kYXRhL2k2ODYtcGMtbGludXgtZ251LzQu
MS4wL2luZm8gLS13aXRoLWd4eC1pbmNsdWRlLWRpcj0vdXNyL2xpYi9nY2MvaTY4Ni1wYy1saW51
eC1nbnUvNC4xLjAvaW5jbHVkZS9nKystdjQgLS1ob3N0PWk2ODYtcGMtbGludXgtZ251IC0tYnVp
bGQ9aTY4Ni1wYy1saW51eC1nbnUgLS1kaXNhYmxlLWFsdGl2ZWMgLS1lbmFibGUtbmxzIC0td2l0
aG91dC1pbmNsdWRlZC1nZXR0ZXh0IC0td2l0aC1zeXN0ZW0temxpYiAtLWRpc2FibGUtY2hlY2tp
bmcgLS1kaXNhYmxlLXdlcnJvciAtLWRpc2FibGUtbGlidW53aW5kLWV4Y2VwdGlvbnMgLS1kaXNh
YmxlLW11bHRpbGliIC0tZGlzYWJsZS1saWJtdWRmbGFwIC0tZGlzYWJsZS1saWJzc3AgLS1kaXNh
YmxlLWxpYmdjaiAtLWVuYWJsZS1sYW5ndWFnZXM9YyxjKysgLS1lbmFibGUtc2hhcmVkIC0tZW5h
YmxlLXRocmVhZHM9cG9zaXggLS1lbmFibGUtX19jeGFfYXRleGl0IC0tZW5hYmxlLWNsb2NhbGU9
Z251ClRocmVhZCBtb2RlbDogcG9zaXgKZ2NjIHZlcnNpb24gNC4xLjAgKEdlbnRvbyA0LjEuMCkK
Y29uZmlndXJlOjMzMDk6ICQ/ID0gMApjb25maWd1cmU6MzMxMTogZ2NjIC1WIDwvZGV2L251bGwg
PiY1CmdjYzogJy1WJyBvcHRpb24gbXVzdCBoYXZlIGFyZ3VtZW50CmRpc3RjY1syNTg4XSBFUlJP
UjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0IGZhaWxlZApjb25maWd1cmU6MzMxNDogJD8g
PSAxCmNvbmZpZ3VyZTozMzE3OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05V
IEMgY29tcGlsZXIKY29uZmlndXJlOjMzNzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTozMzc5OiBj
aGVja2luZyB3aGV0aGVyIGdjYyBhY2NlcHRzIC1nCmNvbmZpZ3VyZTozNDMwOiByZXN1bHQ6IHll
cwpjb25maWd1cmU6MzQ0NzogY2hlY2tpbmcgZm9yIGdjYyBvcHRpb24gdG8gYWNjZXB0IEFOU0kg
Qwpjb25maWd1cmU6MzU1NDogcmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6MzU3MjogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzI2MDZdIEVSUk9SOiBjb21waWxlIC92
YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMjU5Ni5pIG9uIGxvY2FsaG9z
dCBmYWlsZWQKY29uZnRlc3QuYzoyOiBlcnJvcjogZXhwZWN0ZWQgJz0nLCAnLCcsICc7JywgJ2Fz
bScgb3IgJ19fYXR0cmlidXRlX18nIGJlZm9yZSAnbWUnCmNvbmZpZ3VyZTozNTc4OiAkPyA9IDEK
Y29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgI2lmbmRlZiBfX2NwbHVzcGx1cwp8ICAg
Y2hva2UgbWUKfCAjZW5kaWYKY29uZmlndXJlOjM3MTY6IGNoZWNraW5nIGhvdyB0byBydW4gdGhl
IEMgcHJlcHJvY2Vzc29yCmNvbmZpZ3VyZTozODM0OiByZXN1bHQ6IGdjYyAtRQpjb25maWd1cmU6
Mzg1ODogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZTozODY0OiAkPyA9IDAKY29uZmlndXJl
OjM4OTY6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjIyOjI4OiBlcnJvcjogYWNfbm9u
ZXhpc3RlbnQuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpkaXN0Y2NbMjYzNl0gRVJST1I6
IGNvbXBpbGUgKG51bGwpIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZmlndXJlOjM5MDI6ICQ/ID0g
MQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAK
fCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJO
QU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCki
CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2Rl
ZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFW
RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFW
RV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVN
T1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBF
U19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAx
CnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1B
TlRJQ1MgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8YWNfbm9uZXhpc3Rl
bnQuaD4KY29uZmlndXJlOjM5NDc6IGNoZWNraW5nIGZvciByYW5saWIKY29uZmlndXJlOjM5NjM6
IGZvdW5kIC91c3IvYmluL3JhbmxpYgpjb25maWd1cmU6Mzk3NDogcmVzdWx0OiByYW5saWIKY29u
ZmlndXJlOjM5OTE6IGNoZWNraW5nIGZvciBhIEJTRCBjb21wYXRpYmxlIGluc3RhbGwKY29uZmln
dXJlOjQwMzg6IHJlc3VsdDogL2Jpbi9pbnN0YWxsIC1jCmNvbmZpZ3VyZTo0MDUwOiBjaGVja2lu
ZyBob3cgdG8gY29weSBmaWxlcwpjb25maWd1cmU6NDA2NjogcmVzdWx0OiBjcCAtcApjb25maWd1
cmU6NDA3MDogY2hlY2tpbmcgaG93IHRvIG1ha2UgaGFyZCBsaW5rcwpjb25maWd1cmU6NDA4Njog
cmVzdWx0OiBsbgpjb25maWd1cmU6NDA5MDogY2hlY2tpbmcgd2hldGhlciBsbiAtcyB3b3Jrcwpj
b25maWd1cmU6NDEwNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxMTQ6IGNoZWNraW5nIGhvdyB0
byBtYWtlIGhhcmQgbGlua3MgdG8gc3ltbGlua3MKY29uZmlndXJlOjQxNDM6IHJlc3VsdDogaGxu
CmNvbmZpZ3VyZTo0MTQ5OiBjaGVja2luZyBmb3IgZ3JvZmYKY29uZmlndXJlOjQxNjU6IGZvdW5k
IC91c3IvYmluL2dyb2ZmCmNvbmZpZ3VyZTo0MTc1OiByZXN1bHQ6IGdyb2ZmCmNvbmZpZ3VyZTo0
MTg0OiBjaGVja2luZyBmb3IgZHZpcGRmCmNvbmZpZ3VyZTo0MjAwOiBmb3VuZCAvdXNyL2Jpbi9k
dmlwZGYKY29uZmlndXJlOjQyMTA6IHJlc3VsdDogZHZpcGRmCmNvbmZpZ3VyZTo0MjIxOiBjaGVj
a2luZyBmb3IgZ3ppcApjb25maWd1cmU6NDIzNzogZm91bmQgL2Jpbi9nemlwCmNvbmZpZ3VyZTo0
MjQ3OiByZXN1bHQ6IGd6aXAKY29uZmlndXJlOjQyNTc6IGNoZWNraW5nIHdoZXRoZXIgdGVzdCAt
bnQgd29ya3MKY29uZmlndXJlOjQyNzM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo0MjgwOiBjaGVj
a2luZyBmb3IgZ21ha2UKY29uZmlndXJlOjQyOTY6IGZvdW5kIC91c3IvYmluL2dtYWtlCmNvbmZp
Z3VyZTo0MzA2OiByZXN1bHQ6IGdtYWtlCmNvbmZpZ3VyZTo0MzE3OiBjaGVja2luZyB3aGV0aGVy
IGdtYWtlIHNldHMgJChNQUtFKQpjb25maWd1cmU6NDMzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjQzNDY6IGNoZWNraW5nIGZvciBHTlUgbWFrZQpHTlUgTWFrZSAzLjgwCmNvbmZpZ3VyZTo0MzU5
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDM2MjogKiBjaGVja3MgZm9yIHN5c3RlbSBmZWF0dXJl
cwpjb25maWd1cmU6NDM3MTogY2hlY2tpbmcgZm9yIHNwZWNpYWwgQyBjb21waWxlciBvcHRpb25z
IG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29uZmlndXJlOjQ0NzA6IHJlc3VsdDogbm8KY29uZmln
dXJlOjQ0NzY6IGNoZWNraW5nIGZvciBfRklMRV9PRkZTRVRfQklUUyB2YWx1ZSBuZWVkZWQgZm9y
IGxhcmdlIGZpbGVzCmNvbmZpZ3VyZTo0NTA3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m
NQpkaXN0Y2NbMjcxMl0gRVJST1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRt
cC50b3Rvei1saW51eC4yNzA4Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjI4OiB3
YXJuaW5nOiBsZWZ0IHNoaWZ0IGNvdW50ID49IHdpZHRoIG9mIHR5cGUKY29uZnRlc3QuYzoyODog
d2FybmluZzogbGVmdCBzaGlmdCBjb3VudCA+PSB3aWR0aCBvZiB0eXBlCmNvbmZ0ZXN0LmM6MzA6
IGVycm9yOiBzaXplIG9mIGFycmF5ICdvZmZfdF9pc19sYXJnZScgaXMgbmVnYXRpdmUKY29uZmln
dXJlOjQ1MTM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m
ZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZp
bmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4z
OCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzgg
KDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5j
b25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAj
ZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZp
bmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUg
SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9T
SVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVk
ZSA8c3lzL3R5cGVzLmg+CnwgIC8qIENoZWNrIHRoYXQgb2ZmX3QgY2FuIHJlcHJlc2VudCAyKio2
MyAtIDEgY29ycmVjdGx5Lgp8ICAgICBXZSBjYW4ndCBzaW1wbHkgZGVmaW5lIExBUkdFX09GRl9U
IHRvIGJlIDkyMjMzNzIwMzY4NTQ3NzU4MDcsCnwgICAgIHNpbmNlIHNvbWUgQysrIGNvbXBpbGVy
cyBtYXNxdWVyYWRpbmcgYXMgQyBjb21waWxlcnMKfCAgICAgaW5jb3JyZWN0bHkgcmVqZWN0IDky
MjMzNzIwMzY4NTQ3NzU4MDcuICAqLwp8ICNkZWZpbmUgTEFSR0VfT0ZGX1QgKCgob2ZmX3QpIDEg
PDwgNjIpIC0gMSArICgob2ZmX3QpIDEgPDwgNjIpKQp8ICAgaW50IG9mZl90X2lzX2xhcmdlWyhM
QVJHRV9PRkZfVCAlIDIxNDc0ODM2MjkgPT0gNzIxCnwgCQkgICAgICAgJiYgTEFSR0VfT0ZGX1Qg
JSAyMTQ3NDgzNjQ3ID09IDEpCnwgCQkgICAgICA/IDEgOiAtMV07CnwgaW50CnwgbWFpbiAoKQp8
IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjQ1NjA6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NTY2OiAkPyA9IDAKY29uZmlndXJlOjQ1NzA6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo0NTczOiAk
PyA9IDAKY29uZmlndXJlOjQ1NzY6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NDU3OTog
JD8gPSAwCmNvbmZpZ3VyZTo0NTkxOiByZXN1bHQ6IDY0CmNvbmZpZ3VyZTo0NjAxOiBjaGVja2lu
ZyBmb3IgX0xBUkdFX0ZJTEVTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMKY29uZmlndXJl
OjQ2MzI6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0NjM4OiAkPyA9
IDAKY29uZmlndXJlOjQ2NDI6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
CmNvbmZpZ3VyZTo0NjQ1OiAkPyA9IDAKY29uZmlndXJlOjQ2NDg6IHRlc3QgLXMgY29uZnRlc3Qu
bwpjb25maWd1cmU6NDY1MTogJD8gPSAwCmNvbmZpZ3VyZTo0NzE2OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZTo0NzI5OiBjaGVja2luZyB3aGV0aGVyIHVzaW5nIEdOVSBDCmNvbmZpZ3VyZTo0NzU2OiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6NDc2NzogY2hlY2tpbmcgd2hldGhlciB1c2luZyBDKysKY29u
ZmlndXJlOjQ3OTQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjQ4MDM6IGNoZWNraW5nIHdoZXRoZXIg
Q1BQIGxpa2VzIGluZGVudGVkIGRpcmVjdGl2ZXMKY29uZmlndXJlOjQ4Mjc6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZTo0ODM2OiBjaGVja2luZyB3aGV0aGVyIENQUCBsaWtlcyBlbXB0eSBtYWNybyBh
cmd1bWVudHMKY29uZmlndXJlOjQ4NTE6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NDg1
NzogJD8gPSAwCmNvbmZpZ3VyZTo0ODc5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDg4OTogY2hl
Y2tpbmcgZm9yIHVuZGVyc2NvcmUgaW4gZXh0ZXJuYWwgbmFtZXMKY29uZmlndXJlOjQ5MDM6IGdj
YyAtUyBjb25mdGVzdC5jCmNvbmZpZ3VyZTo0OTA2OiAkPyA9IDAKY29uZmlndXJlOjQ5MTY6IHJl
c3VsdDogbm8KY29uZmlndXJlOjQ5Mjk6IGNoZWNraW5nIGZvciBnZXRwd25hbQpjb25maWd1cmU6
NDk4NjogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6
NDk5MjogJD8gPSAwCmNvbmZpZ3VyZTo0OTk2OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycgpjb25maWd1cmU6NDk5OTogJD8gPSAwCmNvbmZpZ3VyZTo1MDAyOiB0ZXN0IC1z
IGNvbmZ0ZXN0CmNvbmZpZ3VyZTo1MDA1OiAkPyA9IDAKY29uZmlndXJlOjUwMTc6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZTo1MTAwOiBjaGVja2luZyBmb3IgRFlOSVgvcHR4IGxpYnNlcSBvciBsaWJz
b2NrZXQKY29uZmlndXJlOjUxMjc6IHJlc3VsdDogbm8KY29uZmlndXJlOjUyNTY6IGNoZWNraW5n
IHdoZXRoZXIgZ2V0aG9zdGVudCByZXF1aXJlcyAtbG5zbApjb25maWd1cmU6NTI4MzogZ2NjIC1v
IGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6NTI4OTogJD8gPSAw
CmNvbmZpZ3VyZTo1MjkzOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
b25maWd1cmU6NTI5NjogJD8gPSAwCmNvbmZpZ3VyZTo1Mjk5OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNv
bmZpZ3VyZTo1MzAyOiAkPyA9IDAKY29uZmlndXJlOjUzNjg6IHJlc3VsdDogbm8KY29uZmlndXJl
OjUzNzM6IGNoZWNraW5nIHdoZXRoZXIgc2V0c29ja29wdCByZXF1aXJlcyAtbHNvY2tldApjb25m
aWd1cmU6NTQwMDogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m
aWd1cmU6NTQwNjogJD8gPSAwCmNvbmZpZ3VyZTo1NDEwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NTQxMzogJD8gPSAwCmNvbmZpZ3VyZTo1NDE2OiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZTo1NDE5OiAkPyA9IDAKY29uZmlndXJlOjU0ODU6IHJl
c3VsdDogbm8KY29uZmlndXJlOjU0OTE6IGNoZWNraW5nIHdoZXRoZXIgQ0Mgd29ya3MgYXQgYWxs
CmNvbmZpZ3VyZTo1NTYyOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1
CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoyMzogd2FybmluZzog
aW5jb21wYXRpYmxlIGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGJ1aWx0LWluIGZ1bmN0aW9uICdl
eGl0Jwpjb25maWd1cmU6NTU2NTogJD8gPSAwCmNvbmZpZ3VyZTo1NTY3OiAuL2NvbmZ0ZXN0CmNv
bmZpZ3VyZTo1NTcwOiAkPyA9IDAKY29uZmlndXJlOjU1OTE6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZTo1NTk4OiAqIGNoZWNrIGZvciBob3N0IHR5cGUKY29uZmlndXJlOjU2MDk6IGNoZWNraW5nIGJ1
aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZTo1NjI3OiByZXN1bHQ6IGk2ODYtcGMtbGludXgtZ251
CmNvbmZpZ3VyZTo1NjM1OiBjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlCmNvbmZpZ3VyZTo1NjQ5
OiByZXN1bHQ6IGk2ODYtcGMtbGludXgtZ251CmNvbmZpZ3VyZTo1NzYxOiAqIGNoZWNrIGZvciBh
ZGQtb25zCmNvbmZpZ3VyZTo1ODAzOiBjaGVja2luZyBmb3IgbGQgdXNlZCBieSBHQ0MKY29uZmln
dXJlOjU4Njc6IHJlc3VsdDogL3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQKY29uZmlndXJl
OjU4NzY6IGNoZWNraW5nIGlmIHRoZSBsaW5rZXIgKC91c3IvaTY4Ni1wYy1saW51eC1nbnUvYmlu
L2xkKSBpcyBHTlUgbGQKY29uZmlndXJlOjU4ODk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1ODk2
OiBjaGVja2luZyBmb3Igc2hhcmVkIGxpYnJhcnkgcnVuIHBhdGggb3JpZ2luCmNvbmZpZ3VyZTo1
OTA5OiByZXN1bHQ6IGRvbmUKY29uZmlndXJlOjYzMzk6IGNoZWNraW5nIGZvciBpY29udgpjb25m
aWd1cmU6NjM2NjogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m
aWd1cmU6NjM3MjogJD8gPSAwCmNvbmZpZ3VyZTo2Mzc2OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjM3OTogJD8gPSAwCmNvbmZpZ3VyZTo2MzgyOiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZTo2Mzg1OiAkPyA9IDAKY29uZmlndXJlOjY0NTE6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZTo2NDc0OiBjaGVja2luZyBmb3IgaWNvbnYgZGVjbGFyYXRpb24K
Y29uZmlndXJlOjY1MDg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2
NTE0OiAkPyA9IDAKY29uZmlndXJlOjY1MTg6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTIxOiAkPyA9IDAKY29uZmlndXJlOjY1MjQ6IHRlc3QgLXMg
Y29uZnRlc3Qubwpjb25maWd1cmU6NjUyNzogJD8gPSAwCmNvbmZpZ3VyZTo2NTQyOiByZXN1bHQ6
IAogICAgICAgICBleHRlcm4gc2l6ZV90IGljb252IChpY29udl90IGNkLCBjaGFyICogKmluYnVm
LCBzaXplX3QgKmluYnl0ZXNsZWZ0LCBjaGFyICogKm91dGJ1Ziwgc2l6ZV90ICpvdXRieXRlc2xl
ZnQpOwpjb25maWd1cmU6NjU2NjogY2hlY2tpbmcgZm9yIGEgQlNELWNvbXBhdGlibGUgaW5zdGFs
bApjb25maWd1cmU6NjYyMTogcmVzdWx0OiAvYmluL2luc3RhbGwgLWMKY29uZmlndXJlOjY2NDc6
IGNoZWNraW5nIHdoZXRoZXIgTkxTIGlzIHJlcXVlc3RlZApjb25maWd1cmU6NjY1NjogcmVzdWx0
OiB5ZXMKY29uZmlndXJlOjY2OTQ6IGNoZWNraW5nIGZvciBtc2dmbXQKY29uZmlndXJlOiB0cnlp
bmcgL3Vzci9iaW4vbXNnZm10Li4uCjAgdHJhbnNsYXRlZCBtZXNzYWdlcy4KY29uZmlndXJlOjY3
MjY6IHJlc3VsdDogL3Vzci9iaW4vbXNnZm10CmNvbmZpZ3VyZTo2NzM1OiBjaGVja2luZyBmb3Ig
Z21zZ2ZtdApjb25maWd1cmU6Njc1MzogZm91bmQgL3Vzci9iaW4vZ21zZ2ZtdApjb25maWd1cmU6
Njc2NjogcmVzdWx0OiAvdXNyL2Jpbi9nbXNnZm10CmNvbmZpZ3VyZTo2ODA1OiBjaGVja2luZyBm
b3IgeGdldHRleHQKY29uZmlndXJlOiB0cnlpbmcgL3Vzci9iaW4veGdldHRleHQuLi4KL3Vzci9i
aW4veGdldHRleHQ6IHdhcm5pbmc6IGZpbGUgYC9kZXYvbnVsbCcgZXh0ZW5zaW9uIGAnIGlzIHVu
a25vd247IHdpbGwgdHJ5IEMKY29uZmlndXJlOjY4Mzc6IHJlc3VsdDogL3Vzci9iaW4veGdldHRl
eHQKY29uZmlndXJlOjY4Nzc6IGNoZWNraW5nIGZvciBtc2dtZXJnZQpjb25maWd1cmU6IHRyeWlu
ZyAvdXNyL2Jpbi9tc2dtZXJnZS4uLgpjb25maWd1cmU6NjkwODogcmVzdWx0OiAvdXNyL2Jpbi9t
c2dtZXJnZQpjb25maWd1cmU6Njk1OTogY2hlY2tpbmcgZm9yIENGUHJlZmVyZW5jZXNDb3B5QXBw
VmFsdWUKY29uZmlndXJlOjY5ODQ6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgIC1JL1N5c3RlbS9M
aWJyYXJ5L0ZyYW1ld29ya3MvQ29yZUZvdW5kYXRpb24uZnJhbWV3b3JrL0hlYWRlcnMgIGNvbmZ0
ZXN0LmMgIC1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gPiY1CmdjYzogQ29yZUZvdW5kYXRpb246
IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY2MxOiBlcnJvcjogdW5yZWNvZ25pemVkIGNvbW1h
bmQgbGluZSBvcHRpb24gIi1mcmFtZXdvcmsiCmRpc3RjY1szNTI3XSBFUlJPUjogY29tcGlsZSBj
b25mdGVzdC5jIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZmlndXJlOjY5OTA6ICQ/ID0gMQpjb25m
aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVm
aW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJj
bGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2Rl
ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZp
bmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBf
R05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM
SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1Mg
MQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2Rl
ZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5l
IElDT05WX0NPTlNUIAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8Q0ZQcmVm
ZXJlbmNlcy5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1
ZShOVUxMLCBOVUxMKQp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6NzAxNzogcmVz
dWx0OiBubwpjb25maWd1cmU6NzAyNjogY2hlY2tpbmcgZm9yIENGTG9jYWxlQ29weUN1cnJlbnQK
Y29uZmlndXJlOjcwNTE6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgIC1JL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvQ29yZUZvdW5kYXRpb24uZnJhbWV3b3JrL0hlYWRlcnMgIGNvbmZ0ZXN0LmMg
IC1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gPiY1CmdjYzogQ29yZUZvdW5kYXRpb246IE5vIHN1
Y2ggZmlsZSBvciBkaXJlY3RvcnkKY2MxOiBlcnJvcjogdW5yZWNvZ25pemVkIGNvbW1hbmQgbGlu
ZSBvcHRpb24gIi1mcmFtZXdvcmsiCmRpc3RjY1szNTQ1XSBFUlJPUjogY29tcGlsZSBjb25mdGVz
dC5jIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZmlndXJlOjcwNTc6ICQ/ID0gMQpjb25maWd1cmU6
IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBB
Q0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIK
fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQ
QUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFD
S0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NP
VVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAx
CnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVm
aW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBf
X0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNk
ZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBf
X2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05W
X0NPTlNUIAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8Q0ZMb2NhbGUuaD4K
fCBpbnQKfCBtYWluICgpCnwgewp8IENGTG9jYWxlQ29weUN1cnJlbnQoKTsKfCAgIDsKfCAgIHJl
dHVybiAwOwp8IH0KY29uZmlndXJlOjcwODQ6IHJlc3VsdDogbm8KY29uZmlndXJlOjcxMDE6IGNo
ZWNraW5nIHdoZXRoZXIgTkxTIGlzIHJlcXVlc3RlZApjb25maWd1cmU6NzExMDogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjcxMjg6IGNoZWNraW5nIGZvciBHTlUgZ2V0dGV4dCBpbiBsaWJjCmNvbmZp
Z3VyZTo3MTUyOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZp
Z3VyZTo3MTU4OiAkPyA9IDAKY29uZmlndXJlOjcxNjI6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo3MTY1OiAkPyA9IDAKY29uZmlndXJlOjcxNjg6IHRl
c3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjcxNzE6ICQ/ID0gMApjb25maWd1cmU6NzE4MzogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjc4OTA6IGNoZWNraW5nIHdoZXRoZXIgdG8gdXNlIE5MUwpjb25m
aWd1cmU6Nzg5MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjc4OTU6IGNoZWNraW5nIHdoZXJlIHRo
ZSBnZXR0ZXh0IGZ1bmN0aW9uIGNvbWVzIGZyb20KY29uZmlndXJlOjc5MDY6IHJlc3VsdDogbGli
Ywpjb25maWd1cmU6ODM3NTogY2hlY2tpbmcgZm9yIGxpYnNpZ3NlZ3YKY29uZmlndXJlOjg0MDA6
IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICAvdXNyL2xpYi9saWJzaWdzZWd2
LnNvIC91c3IvbGliL2xpYmMuc28gPiY1CmNvbmZpZ3VyZTo4NDA2OiAkPyA9IDAKY29uZmlndXJl
Ojg0MTA6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo4
NDEzOiAkPyA9IDAKY29uZmlndXJlOjg0MTY6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjg0
MTk6ICQ/ID0gMApjb25maWd1cmU6ODQzMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjg0NDI6IGNo
ZWNraW5nIGhvdyB0byBsaW5rIHdpdGggbGlic2lnc2Vndgpjb25maWd1cmU6ODQ0NDogcmVzdWx0
OiAvdXNyL2xpYi9saWJzaWdzZWd2LnNvIC91c3IvbGliL2xpYmMuc28KY29uZmlndXJlOjg0NTQ6
ICogY2hlY2tzIGZvciBmdW5kYW1lbnRhbCBjb21waWxlciBjaGFyYWN0ZXJpc3RpY3MKY29uZmln
dXJlOjg0NTY6IGNoZWNraW5nIGZvciBpbmxpbmUKY29uZmlndXJlOjg0Nzc6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo4NDgzOiAkPyA9IDAKY29uZmlndXJlOjg0ODc6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo4NDkwOiAk
PyA9IDAKY29uZmlndXJlOjg0OTM6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6ODQ5Njog
JD8gPSAwCmNvbmZpZ3VyZTo4NTA4OiByZXN1bHQ6IGlubGluZQpjb25maWd1cmU6ODUyNzogY2hl
Y2tpbmcgZm9yIHdvcmtpbmcgdm9pZApjb25maWd1cmU6ODU1MjogZ2NjIC1jIC1nIC1PMiAgY29u
ZnRlc3QuYyA+JjUKY29uZmlndXJlOjg1NTg6ICQ/ID0gMApjb25maWd1cmU6ODU2MjogdGVzdCAt
eiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjg1NjU6ICQ/ID0gMApj
b25maWd1cmU6ODU2ODogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo4NTcxOiAkPyA9IDAK
Y29uZmlndXJlOjg1ODQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo4NTk2OiBjaGVja2luZyBmb3Ig
d29ya2luZyAicmV0dXJuIHZvaWQiCmNvbmZpZ3VyZTo4NjE4OiBnY2MgLWMgLWcgLU8yICBjb25m
dGVzdC5jID4mNQpjb25maWd1cmU6ODYyNDogJD8gPSAwCmNvbmZpZ3VyZTo4NjI4OiB0ZXN0IC16
IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6ODYzMTogJD8gPSAwCmNv
bmZpZ3VyZTo4NjM0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjg2Mzc6ICQ/ID0gMApj
b25maWd1cmU6ODY1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjg2NjU6IGNoZWNraW5nIGZvciBp
bmxpbmUgX19idWlsdGluX3N0cmxlbgpjb25maWd1cmU6ODY4MDogZ2NjIC1TIC1nIC1PMiAgY29u
ZnRlc3QuYwpjb25maWd1cmU6ODY4MzogJD8gPSAwCmNvbmZpZ3VyZTo4Njk2OiByZXN1bHQ6IG5v
CmNvbmZpZ3VyZTo4NzA3OiBjaGVja2luZyBmb3IgbG9uZyBsb25nCmNvbmZpZ3VyZTo4NzI5OiBn
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTo4NzM1OiAk
PyA9IDAKY29uZmlndXJlOjg3Mzk6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyCmNvbmZpZ3VyZTo4NzQyOiAkPyA9IDAKY29uZmlndXJlOjg3NDU6IHRlc3QgLXMgY29uZnRl
c3QKY29uZmlndXJlOjg3NDg6ICQ/ID0gMApjb25maWd1cmU6ODc2MDogcmVzdWx0OiB5ZXMKY29u
ZmlndXJlOjg3Nzc6ICogY2hlY2tzIGZvciBoZWFkZXIgZmlsZXMKY29uZmlndXJlOjg3Nzk6IGNo
ZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzCmNvbmZpZ3VyZTo4Nzk3OiBnY2MgLUUgIGNv
bmZ0ZXN0LmMKY29uZmlndXJlOjg4MDM6ICQ/ID0gMApjb25maWd1cmU6ODgyNjogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjg4NTI6IGNoZWNraW5nIHN5cy9pbnR0eXBlcy5oIHVzYWJpbGl0eQpjb25m
aWd1cmU6ODg2NDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzM4NzVdIEVS
Uk9SOiBjb21waWxlIChudWxsKSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6NzA6MjY6
IGVycm9yOiBzeXMvaW50dHlwZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpkaXN0Y2Nb
Mzg3Ml0gRVJST1I6IGNvbXBpbGUgY29uZnRlc3QuYyBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZp
Z3VyZTo4ODcwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u
ZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVm
aW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIu
MzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4
ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3Au
Y29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg
I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm
aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l
IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BP
U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0Cnwg
I2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUg
SEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMg
MQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAj
ZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVm
aW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNU
RENfSEVBREVSUyAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5o
Pgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k
aWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp
Zgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8
c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRs
aWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERD
X0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k
aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8
ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAj
IGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBp
bmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gK
fCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvaW50dHlwZXMu
aD4KY29uZmlndXJlOjg4OTM6IHJlc3VsdDogbm8KY29uZmlndXJlOjg4OTc6IGNoZWNraW5nIHN5
cy9pbnR0eXBlcy5oIHByZXNlbmNlCmNvbmZpZ3VyZTo4OTA3OiBnY2MgLUUgIGNvbmZ0ZXN0LmMK
Y29uZnRlc3QuYzozNjoyNjogZXJyb3I6IHN5cy9pbnR0eXBlcy5oOiBObyBzdWNoIGZpbGUgb3Ig
ZGlyZWN0b3J5CmRpc3RjY1szODkyXSBFUlJPUjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0
IGZhaWxlZApjb25maWd1cmU6ODkxMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g
d2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUg
Q0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FH
RV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH
TlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi
aHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l
IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf
U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf
SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK
fCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZT
RVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5k
aWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmlu
ZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RD
R0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQg
cmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05H
CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j
bHVkZSA8c3lzL2ludHR5cGVzLmg+CmNvbmZpZ3VyZTo4OTMzOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
ZTo4OTY4OiBjaGVja2luZyBmb3Igc3lzL2ludHR5cGVzLmgKY29uZmlndXJlOjg5NzU6IHJlc3Vs
dDogbm8KY29uZmlndXJlOjg4NDM6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6ODg0
ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjg4NTI6IGNoZWNraW5nIHN5cy9maWxlLmggdXNhYmls
aXR5CmNvbmZpZ3VyZTo4ODY0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1
cmU6ODg3MDogJD8gPSAwCmNvbmZpZ3VyZTo4ODc0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6ODg3NzogJD8gPSAwCmNvbmZpZ3VyZTo4ODgwOiB0ZXN0
IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjg4ODM6ICQ/ID0gMApjb25maWd1cmU6ODg5MzogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjg4OTc6IGNoZWNraW5nIHN5cy9maWxlLmggcHJlc2VuY2UKY29u
ZmlndXJlOjg5MDc6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6ODkxMzogJD8gPSAwCmNv
bmZpZ3VyZTo4OTMzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6ODk2ODogY2hlY2tpbmcgZm9yIHN5
cy9maWxlLmgKY29uZmlndXJlOjg5NzU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo4OTg4OiBjaGVj
a2luZyBmb3Igb2Zmc2V0b2YgaW4gc3RkZGVmLmgKY29uZmlndXJlOjkwMTM6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo5MDE5OiAkPyA9IDAKY29uZmlndXJlOjkwMjM6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo5MDI2OiAk
PyA9IDAKY29uZmlndXJlOjkwMjk6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6OTAzMjog
JD8gPSAwCmNvbmZpZ3VyZTo5MDQ1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTA1NjogY2hlY2tp
bmcgZm9yIHN0ZGJvb2wuaApjb25maWd1cmU6OTA4OTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
YyA+JjUKY29uZmlndXJlOjkwOTU6ICQ/ID0gMApjb25maWd1cmU6OTA5OTogdGVzdCAteiAKCQkJ
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjkxMDI6ICQ/ID0gMApjb25maWd1
cmU6OTEwNTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo5MTA4OiAkPyA9IDAKY29uZmln
dXJlOjkxMjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo5MTk2OiBjaGVja2luZyBmb3IgaW50dHlw
ZXMuaApjb25maWd1cmU6OTIxOTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
dXJlOjkyMjU6ICQ/ID0gMApjb25maWd1cmU6OTIyOTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjkyMzI6ICQ/ID0gMApjb25maWd1cmU6OTIzNTogdGVz
dCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo5MjM4OiAkPyA9IDAKY29uZmlndXJlOjkyNTA6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZTo5MjY2OiBjaGVja2luZyBmb3Igc3lzL2ludHR5cGVzLmgKY29u
ZmlndXJlOjkyNzE6IHJlc3VsdDogbm8KY29uZmlndXJlOjk0MTI6IGNoZWNraW5nIGZvciBzdGRp
bnQuaApjb25maWd1cmU6OTQzNDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
dXJlOjk0NDA6ICQ/ID0gMApjb25maWd1cmU6OTQ0NDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjk0NDc6ICQ/ID0gMApjb25maWd1cmU6OTQ1MDogdGVz
dCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo5NDUzOiAkPyA9IDAKY29uZmlndXJlOjk0NjU6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZTo5NjE1OiBjaGVja2luZyBmb3Igc3lzL2ZpbGUuaApjb25maWd1
cmU6OTYyMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjk3Njk6IGNoZWNraW5nIGZvciBSX09LIGlu
IHVuaXN0ZC5oCmNvbmZpZ3VyZTo5NzkxOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj
b25maWd1cmU6OTc5NzogJD8gPSAwCmNvbmZpZ3VyZTo5ODAxOiB0ZXN0IC16IAoJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6OTgwNDogJD8gPSAwCmNvbmZpZ3VyZTo5ODA3
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjk4MTA6ICQ/ID0gMApjb25maWd1cmU6OTgy
MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjk4NDM6IGNoZWNraW5nIGZvciBzeXMvZmlsZS5oCmNv
bmZpZ3VyZTo5ODQ4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTk5ODogY2hlY2tpbmcgZm9yIE9f
UkRXUiBpbiBmY250bC5oCmNvbmZpZ3VyZToxMDAyMDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
YyA+JjUKY29uZmlndXJlOjEwMDI2OiAkPyA9IDAKY29uZmlndXJlOjEwMDMwOiB0ZXN0IC16IAoJ
CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTAwMzM6ICQ/ID0gMApjb25m
aWd1cmU6MTAwMzY6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTAwMzk6ICQ/ID0gMApj
b25maWd1cmU6MTAwNTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDA2OTogY2hlY2tpbmcgZm9y
IGRpcmVudC5oIHRoYXQgZGVmaW5lcyBESVIKY29uZmlndXJlOjEwMDkxOiBnY2MgLWMgLWcgLU8y
ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTAwOTc6ICQ/ID0gMApjb25maWd1cmU6MTAxMDE6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMDEwNDog
JD8gPSAwCmNvbmZpZ3VyZToxMDEwNzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxMDEx
MDogJD8gPSAwCmNvbmZpZ3VyZToxMDEyMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMTU1OiBj
aGVja2luZyBmb3Igb3BlbmRpciBpbiAtbGRpcgpjb25maWd1cmU6MTAxODU6IGdjYyAtbyBjb25m
dGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZGlyICAgPiY1Ci91c3IvbGliL2djYy9pNjg2LXBj
LWxpbnV4LWdudS80LjEuMC8uLi8uLi8uLi8uLi9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQ6IGNh
bm5vdCBmaW5kIC1sZGlyCmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmRpc3Rj
Y1s0NDgxXSBFUlJPUjogY29tcGlsZSBjb25mdGVzdC5jIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29u
ZmlndXJlOjEwMTkxOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog
Y29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAj
ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g
IjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAy
LjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xp
c3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFE
RVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAx
CnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAj
ZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUg
X1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0
CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZp
bmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9O
TFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEK
fCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAj
ZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5l
IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJP
T0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9I
IDEKfCAjZGVmaW5lIERJUkVOVAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVy
cmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8
ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hh
ciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAg
YnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5
LiAgKi8KfCBjaGFyIG9wZW5kaXIgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBvcGVuZGlyICgp
Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTAyMTc6IHJlc3VsdDogbm8KY29u
ZmlndXJlOjEwMjk0OiBjaGVja2luZyBmb3Igc3lzL3V0c25hbWUuaCBhbmQgc3RydWN0IHV0c25h
bWUKY29uZmlndXJlOjEwMzE2OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1
cmU6MTAzMjI6ICQ/ID0gMApjb25maWd1cmU6MTAzMjY6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMDMyOTogJD8gPSAwCmNvbmZpZ3VyZToxMDMzMjog
dGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxMDMzNTogJD8gPSAwCmNvbmZpZ3VyZToxMDM0
ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwMzczOiBjaGVja2luZyBuZXRkYi5oIHVzYWJpbGl0
eQpjb25maWd1cmU6MTAzODU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy
ZToxMDM5MTogJD8gPSAwCmNvbmZpZ3VyZToxMDM5NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEwMzk4OiAkPyA9IDAKY29uZmlndXJlOjEwNDAxOiB0
ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEwNDA0OiAkPyA9IDAKY29uZmlndXJlOjEwNDE0
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTA0MTg6IGNoZWNraW5nIG5ldGRiLmggcHJlc2VuY2UK
Y29uZmlndXJlOjEwNDI4OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjEwNDM0OiAkPyA9
IDAKY29uZmlndXJlOjEwNDU0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTA0ODk6IGNoZWNraW5n
IGZvciBuZXRkYi5oCmNvbmZpZ3VyZToxMDQ5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNTE1
OiBjaGVja2luZyBmb3IgbGJlci5oCmNvbmZpZ3VyZToxMDUzNDogZ2NjIC1jIC1nIC1PMiAgY29u
ZnRlc3QuYyA+JjUKZGlzdGNjWzQ1ODVdIEVSUk9SOiBjb21waWxlIChudWxsKSBvbiBsb2NhbGhv
c3QgZmFpbGVkCmNvbmZ0ZXN0LmM6NTI6MTg6IGVycm9yOiBsYmVyLmg6IE5vIHN1Y2ggZmlsZSBv
ciBkaXJlY3RvcnkKZGlzdGNjWzQ1ODRdIEVSUk9SOiBjb21waWxlIGNvbmZ0ZXN0LmMgb24gbG9j
YWxob3N0IGZhaWxlZApjb25maWd1cmU6MTA1NDA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFN
RSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5l
IFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NU
UklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdS
RVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwg
I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFW
RV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVf
U1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lP
TlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJ
TEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAx
CnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8
ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUg
SEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVy
bl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9M
T05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAj
ZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19V
VFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq
Lwp8ICNpZiBIQVZFX0xCRVJfSAp8ICMgaW5jbHVkZSA8bGJlci5oPgp8ICNlbmRpZgp8IAp8IAp8
ICNpbmNsdWRlIDxsYmVyLmg+CmNvbmZpZ3VyZToxMDU2NDogcmVzdWx0OiBubwpjb25maWd1cmU6
MTA1MTU6IGNoZWNraW5nIGZvciBsZGFwLmgKY29uZmlndXJlOjEwNTM0OiBnY2MgLWMgLWcgLU8y
ICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbNDYzNF0gRVJST1I6IGNvbXBpbGUgKG51bGwpIG9uIGxv
Y2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzo1MjoxODogZXJyb3I6IGxkYXAuaDogTm8gc3VjaCBm
aWxlIG9yIGRpcmVjdG9yeQpkaXN0Y2NbNDYzM10gRVJST1I6IGNvbXBpbGUgY29uZnRlc3QuYyBv
biBsb2NhbGhvc3QgZmFpbGVkCmNvbmZpZ3VyZToxMDU0MDogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
RV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNk
ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tB
R0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdF
X0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNF
IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhU
RU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmlu
ZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4
Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09O
U1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2Rl
ZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUg
cmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBI
QVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklT
VERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRP
Rgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVf
U1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAvKiBlbmQgY29uZmRlZnMu
aC4gICovCnwgI2lmIEhBVkVfTEJFUl9ICnwgIyBpbmNsdWRlIDxsYmVyLmg+CnwgI2VuZGlmCnwg
CnwgCnwgI2luY2x1ZGUgPGxkYXAuaD4KY29uZmlndXJlOjEwNTY0OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZToxMDU5MDogY2hlY2tpbmcgc3lzL3NobS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTA2MDI6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDYwODogJD8gPSAwCmNv
bmZpZ3VyZToxMDYxMjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjEwNjE1OiAkPyA9IDAKY29uZmlndXJlOjEwNjE4OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjEwNjIxOiAkPyA9IDAKY29uZmlndXJlOjEwNjMxOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTA2MzU6IGNoZWNraW5nIHN5cy9zaG0uaCBwcmVzZW5jZQpjb25maWd1cmU6MTA2NDU6
IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTA2NTE6ICQ/ID0gMApjb25maWd1cmU6MTA2
NzE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDcwNjogY2hlY2tpbmcgZm9yIHN5cy9zaG0uaApj
b25maWd1cmU6MTA3MTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDc0MTogY2hlY2tpbmcgc3lz
L2lwYy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTA3NTM6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZToxMDc1OTogJD8gPSAwCmNvbmZpZ3VyZToxMDc2MzogdGVzdCAteiAK
CQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEwNzY2OiAkPyA9IDAKY29u
ZmlndXJlOjEwNzY5OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEwNzcyOiAkPyA9IDAK
Y29uZmlndXJlOjEwNzgyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTA3ODY6IGNoZWNraW5nIHN5
cy9pcGMuaCBwcmVzZW5jZQpjb25maWd1cmU6MTA3OTY6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25m
aWd1cmU6MTA4MDI6ICQ/ID0gMApjb25maWd1cmU6MTA4MjI6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToxMDg1NzogY2hlY2tpbmcgZm9yIHN5cy9pcGMuaApjb25maWd1cmU6MTA4NjQ6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToxMDg5NzogY2hlY2tpbmcgdGVybWlvcy5oIHVzYWJpbGl0eQpjb25maWd1
cmU6MTA5MDk6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDkxNTog
JD8gPSAwCmNvbmZpZ3VyZToxMDkxOTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjEwOTIyOiAkPyA9IDAKY29uZmlndXJlOjEwOTI1OiB0ZXN0IC1zIGNv
bmZ0ZXN0Lm8KY29uZmlndXJlOjEwOTI4OiAkPyA9IDAKY29uZmlndXJlOjEwOTM4OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTA5NDI6IGNoZWNraW5nIHRlcm1pb3MuaCBwcmVzZW5jZQpjb25maWd1
cmU6MTA5NTI6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTA5NTg6ICQ/ID0gMApjb25m
aWd1cmU6MTA5Nzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTAxMzogY2hlY2tpbmcgZm9yIHRl
cm1pb3MuaApjb25maWd1cmU6MTEwMjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDg5NzogY2hl
Y2tpbmcgdGVybWlvLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxMDkwOTogZ2NjIC1jIC1nIC1PMiAg
Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjEwOTE1OiAkPyA9IDAKY29uZmlndXJlOjEwOTE5OiB0
ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTA5MjI6ICQ/
ID0gMApjb25maWd1cmU6MTA5MjU6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTA5Mjg6
ICQ/ID0gMApjb25maWd1cmU6MTA5Mzg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDk0MjogY2hl
Y2tpbmcgdGVybWlvLmggcHJlc2VuY2UKY29uZmlndXJlOjEwOTUyOiBnY2MgLUUgIGNvbmZ0ZXN0
LmMKY29uZmlndXJlOjEwOTU4OiAkPyA9IDAKY29uZmlndXJlOjEwOTc4OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTEwMTM6IGNoZWNraW5nIGZvciB0ZXJtaW8uaApjb25maWd1cmU6MTEwMjA6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToxMDg5NzogY2hlY2tpbmcgc3lzL3Rlcm1pby5oIHVzYWJpbGl0
eQpjb25maWd1cmU6MTA5MDk6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1s1
MTk3XSBFUlJPUjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5j
Ojg1OjI0OiBlcnJvcjogc3lzL3Rlcm1pby5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmRp
c3RjY1s1MTk2XSBFUlJPUjogY29tcGlsZSBjb25mdGVzdC5jIG9uIGxvY2FsaG9zdCBmYWlsZWQK
Y29uZmlndXJlOjEwOTE1OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg
LyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIK
fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
T04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElT
UCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8v
Y2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19I
RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf
SCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK
fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZp
bmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRT
IDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNk
ZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJM
RV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhU
IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4K
fCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVm
aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NU
REJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2Rl
ZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFW
RV9URVJNSU9fSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5o
Pgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k
aWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp
Zgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8
c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRs
aWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERD
X0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k
aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8
ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAj
IGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBp
bmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gK
fCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvdGVybWlvLmg+
CmNvbmZpZ3VyZToxMDkzODogcmVzdWx0OiBubwpjb25maWd1cmU6MTA5NDI6IGNoZWNraW5nIHN5
cy90ZXJtaW8uaCBwcmVzZW5jZQpjb25maWd1cmU6MTA5NTI6IGdjYyAtRSAgY29uZnRlc3QuYwpj
b25mdGVzdC5jOjUxOjI0OiBlcnJvcjogc3lzL3Rlcm1pby5oOiBObyBzdWNoIGZpbGUgb3IgZGly
ZWN0b3J5CmRpc3RjY1s1MjM3XSBFUlJPUjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0IGZh
aWxlZApjb25maWd1cmU6MTA5NTg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh
czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENM
SVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V
IENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0
dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT
X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg
MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwg
I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VU
X0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlm
CnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUg
RU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dF
VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJl
dHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8
ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhB
VkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gK
fCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RFUk1JT19IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5
cy90ZXJtaW8uaD4KY29uZmlndXJlOjEwOTc4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMTAxMzog
Y2hlY2tpbmcgZm9yIHN5cy90ZXJtaW8uaApjb25maWd1cmU6MTEwMjA6IHJlc3VsdDogbm8KY29u
ZmlndXJlOjEwODk3OiBjaGVja2luZyBzZ3R0eS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTA5MDk6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMDkxNTogJD8gPSAwCmNv
bmZpZ3VyZToxMDkxOTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjEwOTIyOiAkPyA9IDAKY29uZmlndXJlOjEwOTI1OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjEwOTI4OiAkPyA9IDAKY29uZmlndXJlOjEwOTM4OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTA5NDI6IGNoZWNraW5nIHNndHR5LmggcHJlc2VuY2UKY29uZmlndXJlOjEwOTUyOiBn
Y2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjEwOTU4OiAkPyA9IDAKY29uZmlndXJlOjEwOTc4
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTEwMTM6IGNoZWNraW5nIGZvciBzZ3R0eS5oCmNvbmZp
Z3VyZToxMTAyMDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjExMDMzOiBjaGVja2luZyBmb3IgdGNn
ZXRhdHRyCmNvbmZpZ3VyZToxMTA1NTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0
LmMgID4mNQpjb25maWd1cmU6MTEwNjE6ICQ/ID0gMApjb25maWd1cmU6MTEwNjU6IHRlc3QgLXog
CgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMTA2ODogJD8gPSAwCmNv
bmZpZ3VyZToxMTA3MTogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTEwNzQ6ICQ/ID0gMApj
b25maWd1cmU6MTEwODg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMTA5NzogY2hlY2tpbmcgZm9y
IFRDU0FGTFVTSCBpbiB0ZXJtaW9zLmgKY29uZmlndXJlOjExMTE5OiBnY2MgLW8gY29uZnRlc3Qg
LWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxMTEyNTogJD8gPSAwCmNvbmZpZ3Vy
ZToxMTEyOTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJl
OjExMTMyOiAkPyA9IDAKY29uZmlndXJlOjExMTM1OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3Vy
ZToxMTEzODogJD8gPSAwCmNvbmZpZ3VyZToxMTE1MjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEx
MTYxOiBjaGVja2luZyBmb3Igc3RydWN0IHdpbnNpemUgaW4gdGVybWlvcy5oCmNvbmZpZ3VyZTox
MTE4MzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzU0ODldIEVSUk9SOiBj
b21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguNTQ1My5pIG9u
IGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVz
dC5jOjU4OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mICd3JyBpc24ndCBrbm93bgpjb25maWd1cmU6
MTExODk6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm
cy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUg
UEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAo
MjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIw
MDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25z
Lm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhf
UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZu
ZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZF
X0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwg
I2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZp
bmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUg
SEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19I
RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEK
fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNk
ZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVf
TkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19J
UENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19I
IDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNk
ZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg
PHRlcm1pb3MuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IHN0cnVjdCB3aW5zaXplIHc7CnwgICA7
CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxMTIxNTogcmVzdWx0OiBubwpjb25maWd1cmU6
MTEyMjE6IGNoZWNraW5nIGZvciBzdHJ1Y3Qgd2luc2l6ZSBpbiBzeXMvaW9jdGwuaApjb25maWd1
cmU6MTEyNDQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMTI1MDog
JD8gPSAwCmNvbmZpZ3VyZToxMTI1NDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjExMjU3OiAkPyA9IDAKY29uZmlndXJlOjExMjYwOiB0ZXN0IC1zIGNv
bmZ0ZXN0Lm8KY29uZmlndXJlOjExMjYzOiAkPyA9IDAKY29uZmlndXJlOjExMjc2OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTEzNTk6IGNoZWNraW5nIGZvciB4bWttZgpjb25maWd1cmU6MTEzODg6
IHJlc3VsdDogbm8KY29uZmlndXJlOjExNjQyOiBjaGVja2luZyBmb3IgWDExIGhlYWRlciBmaWxl
cwpjb25maWd1cmU6MTE2NTM6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTE2NTk6ICQ/
ID0gMApjb25maWd1cmU6MTE2OTI6IHJlc3VsdDogbm8KY29uZmlndXJlOjExNjk0OiBjaGVja2lu
ZyBmb3IgbWFpbiBpbiAtbFgxMQpjb25maWd1cmU6MTE3MTg6IGdjYyAtbyBjb25mdGVzdCAtZyAt
TzIgICBjb25mdGVzdC5jIC1sWDExICAgPiY1CmNvbmZpZ3VyZToxMTcyNDogJD8gPSAwCmNvbmZp
Z3VyZToxMTcyODogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjExNzMxOiAkPyA9IDAKY29uZmlndXJlOjExNzM0OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZp
Z3VyZToxMTczNzogJD8gPSAwCmNvbmZpZ3VyZToxMTc1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjExODQ2OiAqIGNoZWNrcyBmb3IgdHlwZWRlZnMKY29uZmlndXJlOjExODQ4OiBjaGVja2luZyBm
b3IgY2FkZHJfdCBpbiBzeXMvdHlwZXMuaApjb25maWd1cmU6MTE4NzM6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToxMTg4ODogY2hlY2tpbmcgZm9yIHNvY2tsZW5fdCBpbiBzeXMvc29ja2V0LmgKY29u
ZmlndXJlOjExOTEzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE5Mjk6IGNoZWNraW5nIGZvciBv
ZmZfdApjb25maWd1cmU6MTE5NTM6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToxMTk1OTogJD8gPSAwCmNvbmZpZ3VyZToxMTk2MzogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjExOTY2OiAkPyA9IDAKY29uZmlndXJlOjExOTY5
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjExOTcyOiAkPyA9IDAKY29uZmlndXJlOjEx
OTgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTE5ODY6IGNoZWNraW5nIHNpemUgb2Ygb2ZmX3QK
Y29uZmlndXJlOjEyMzA1OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1
CmNvbmZpZ3VyZToxMjMwODogJD8gPSAwCmNvbmZpZ3VyZToxMjMxMDogLi9jb25mdGVzdApjb25m
aWd1cmU6MTIzMTM6ICQ/ID0gMApjb25maWd1cmU6MTIzMzY6IHJlc3VsdDogOApjb25maWd1cmU6
MTIzNDM6IGNoZWNraW5nIGZvciBzdHJ1Y3QgdGltZXZhbApjb25maWd1cmU6MTIzNjk6IGdjYyAt
YyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMjM3NTogJD8gPSAwCmNvbmZpZ3Vy
ZToxMjM3OTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJl
OjEyMzgyOiAkPyA9IDAKY29uZmlndXJlOjEyMzg1OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmln
dXJlOjEyMzg4OiAkPyA9IDAKY29uZmlndXJlOjEyMzk5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MTI0MDI6IGNoZWNraW5nIHNpemUgb2Ygc3RydWN0IHRpbWV2YWwKY29uZmlndXJlOjEyNzMzOiBn
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxMjczNjog
JD8gPSAwCmNvbmZpZ3VyZToxMjczODogLi9jb25mdGVzdApjb25maWd1cmU6MTI3NDE6ICQ/ID0g
MApjb25maWd1cmU6MTI3NjQ6IHJlc3VsdDogOApjb25maWd1cmU6MTI3NzE6ICogY2hlY2tzIGZv
ciBzdHJ1Y3R1cmUgbWVtYmVycwpjb25maWd1cmU6MTI3NzM6IGNoZWNraW5nIGZvciBzdHJ1Y3Qg
ZGlyZW50LmRfbmFtbGVuCmNvbmZpZ3VyZToxMjc5NzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
YyA+JjUKZGlzdGNjWzU4MDNdIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVz
dC50bXAudG90b3otbGludXguNTc5Ny5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzog
SW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjY2OiBlcnJvcjogJ3N0cnVjdCBkaXJlbnQn
IGhhcyBubyBtZW1iZXIgbmFtZWQgJ2RfbmFtbGVuJwpjb25maWd1cmU6MTI4MDM6ICQ/ID0gMQpj
b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAj
ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F
ICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwg
I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNk
ZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmlu
ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T
WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ
Q1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwg
I2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVm
aW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dF
VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdW
IDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcg
MQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5l
IEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVf
SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwg
I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhB
VkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NB
RkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9Y
MTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5f
dAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZB
TCA4CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxkaXJlbnQuaD4KfCAKfCBp
bnQKfCBtYWluICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3QgZGlyZW50IGFjX2FnZ3I7CnwgaWYgKGFj
X2FnZ3IuZF9uYW1sZW4pCnwgcmV0dXJuIDA7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZp
Z3VyZToxMjg0MjogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzU4MzFdIEVS
Uk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguNTgx
OS5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpj
b25mdGVzdC5jOjY2OiBlcnJvcjogJ3N0cnVjdCBkaXJlbnQnIGhhcyBubyBtZW1iZXIgbmFtZWQg
J2RfbmFtbGVuJwpjb25maWd1cmU6MTI4NDg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n
cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi
R05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBB
Q0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO
RyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
UlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl
ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf
XyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVf
T0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwg
I2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNk
ZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFW
RV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92
b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05H
TE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVm
aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNO
QU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwg
I2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJ
WkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1Qg
Y2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09G
Rl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgLyogZW5kIGNvbmZkZWZz
LmguICAqLwp8ICNpbmNsdWRlIDxkaXJlbnQuaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IHN0
YXRpYyBzdHJ1Y3QgZGlyZW50IGFjX2FnZ3I7CnwgaWYgKHNpemVvZiBhY19hZ2dyLmRfbmFtbGVu
KQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTI4NzQ6IHJl
c3VsdDogbm8KY29uZmlndXJlOjEyODg1OiBjaGVja2luZyB3aGV0aGVyIHN0cnVjdCB0bSBpcyBp
biBzeXMvdGltZS5oIG9yIHRpbWUuaApjb25maWd1cmU6MTI5MDg6IGdjYyAtYyAtZyAtTzIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMjkxNDogJD8gPSAwCmNvbmZpZ3VyZToxMjkxODogdGVz
dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEyOTIxOiAkPyA9
IDAKY29uZmlndXJlOjEyOTI0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEyOTI3OiAk
PyA9IDAKY29uZmlndXJlOjEyOTM4OiByZXN1bHQ6IHRpbWUuaApjb25maWd1cmU6MTI5NDg6ICog
Y2hlY2tzIGZvciBmdW5jdGlvbnMgYW5kIGRlY2xhcmF0aW9ucwpjb25maWd1cmU6MTI5NTA6IGNo
ZWNraW5nIGZvciBicm9rZW4gSFAvVVggbWFsbG9jCmNvbmZpZ3VyZToxMjk2OTogcmVzdWx0OiBu
bwpjb25maWd1cmU6MTI5ODA6IGNoZWNraW5nIGZvciB3b3JraW5nIGFsbG9jYS5oCmNvbmZpZ3Vy
ZToxMzAwMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1
cmU6MTMwMDc6ICQ/ID0gMApjb25maWd1cmU6MTMwMTE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMzAxNDogJD8gPSAwCmNvbmZpZ3VyZToxMzAxNzog
dGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTMwMjA6ICQ/ID0gMApjb25maWd1cmU6MTMwMzI6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzA0MjogY2hlY2tpbmcgZm9yIGFsbG9jYQpjb25maWd1
cmU6MTMwODM6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmln
dXJlOjEzMDg5OiAkPyA9IDAKY29uZmlndXJlOjEzMDkzOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTMwOTY6ICQ/ID0gMApjb25maWd1cmU6MTMwOTk6
IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjEzMTAyOiAkPyA9IDAKY29uZmlndXJlOjEzMTE0
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTMzMzc6IGNoZWNraW5nIGZvciBfc2V0am1wCmNvbmZp
Z3VyZToxMzM5NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m
aWd1cmU6MTM0MDA6ICQ/ID0gMApjb25maWd1cmU6MTM0MDQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMzQwNzogJD8gPSAwCmNvbmZpZ3VyZToxMzQx
MDogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTM0MTM6ICQ/ID0gMApjb25maWd1cmU6MTM0
MjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzQzMzogY2hlY2tpbmcgZm9yIF9sb25nam1wCmNv
bmZpZ3VyZToxMzQ5MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpj
b25maWd1cmU6MTM0OTY6ICQ/ID0gMApjb25maWd1cmU6MTM1MDA6IHRlc3QgLXogCgkJCSB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMzUwMzogJD8gPSAwCmNvbmZpZ3VyZTox
MzUwNjogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTM1MDk6ICQ/ID0gMApjb25maWd1cmU6
MTM1MjE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzU1ODogY2hlY2tpbmcgcmV0dXJuIHR5cGUg
b2Ygc2lnbmFsIGhhbmRsZXJzCmNvbmZpZ3VyZToxMzU5MDogZ2NjIC1jIC1nIC1PMiAgY29uZnRl
c3QuYyA+JjUKY29uZmlndXJlOjEzNTk2OiAkPyA9IDAKY29uZmlndXJlOjEzNjAwOiB0ZXN0IC16
IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTM2MDM6ICQ/ID0gMApj
b25maWd1cmU6MTM2MDY6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTM2MDk6ICQ/ID0g
MApjb25maWd1cmU6MTM2NzY6IHJlc3VsdDogdm9pZApjb25maWd1cmU6MTM2ODM6IGNoZWNraW5n
IHdoZXRoZXIgdGhlIHNpZ25hbCBoYW5kbGVyIGZ1bmN0aW9uIHR5cGUgbmVlZHMgZG90cwpjb25m
aWd1cmU6MTM3MTU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMzcy
MTogJD8gPSAwCmNvbmZpZ3VyZToxMzcyNTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnIKY29uZmlndXJlOjEzNzI4OiAkPyA9IDAKY29uZmlndXJlOjEzNzMxOiB0ZXN0IC1z
IGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEzNzM0OiAkPyA9IDAKY29uZmlndXJlOjEzNzQ1OiByZXN1
bHQ6IG5vCmNvbmZpZ3VyZToxMzc1NjogY2hlY2tpbmcgZm9yIHNpZ2hvbGQKY29uZmlndXJlOjEz
ODEzOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZTox
MzgxOTogJD8gPSAwCmNvbmZpZ3VyZToxMzgyMzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBj
b25mdGVzdC5lcnIKY29uZmlndXJlOjEzODI2OiAkPyA9IDAKY29uZmlndXJlOjEzODI5OiB0ZXN0
IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxMzgzMjogJD8gPSAwCmNvbmZpZ3VyZToxMzg0NDogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjEzODcxOiBjaGVja2luZyBmb3Igc2lncHJvY21hc2sKY29uZmln
dXJlOjEzOTI4OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZp
Z3VyZToxMzkzNDogJD8gPSAwCmNvbmZpZ3VyZToxMzkzODogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEzOTQxOiAkPyA9IDAKY29uZmlndXJlOjEzOTQ0
OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxMzk0NzogJD8gPSAwCmNvbmZpZ3VyZToxMzk1
OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzOTcwOiBjaGVja2luZyBmb3Igc2lnYmxvY2sKY29u
ZmlndXJlOjE0MDI3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNv
bmZpZ3VyZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzNzogdGVzdCAteiAKCQkJIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDQwOiAkPyA9IDAKY29uZmlndXJlOjE0
MDQzOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxNDA0NjogJD8gPSAwCmNvbmZpZ3VyZTox
NDA1ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDY4OiBjaGVja2luZyBmb3Igc2lnbmFsIGJs
b2NraW5nIGludGVyZmFjZXMKY29uZmlndXJlOjE0MDgxOiByZXN1bHQ6IFN5c3RlbVYgUE9TSVgg
QlNECmNvbmZpZ3VyZToxNDA4NDogY2hlY2tpbmcgd2hldGhlciBzaWduYWwgaGFuZGxlcnMgbmVl
ZCB0byBiZSByZWluc3RhbGxlZApjb25maWd1cmU6MTQxMzM6IGdjYyAtbyBjb25mdGVzdCAtZyAt
TzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0MTM2OiAkPyA9IDAKY29uZmlndXJlOjE0
MTM4OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToxNDE0MTogJD8gPSAwCmNvbmZpZ3VyZToxNDE1Njog
cmVzdWx0OiBubwpjb25maWd1cmU6MTQxNjk6IGNoZWNraW5nIHdoZXRoZXIgc2lnbmFscyBhcmUg
YmxvY2tlZCB3aGVuIHNpZ25hbCBoYW5kbGVycyBhcmUgZW50ZXJlZApjb25maWd1cmU6MTQyMzA6
IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0MjMz
OiAkPyA9IDAKY29uZmlndXJlOjE0MjM1OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToxNDIzODogJD8g
PSAxCmNvbmZpZ3VyZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMgMQpjb25maWd1cmU6IGZh
aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tB
R0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAj
ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNL
QUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FH
RV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJD
RSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg
I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VY
VEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp
bmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kz
ODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NP
TlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNk
ZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5l
IHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUg
SEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5J
U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VU
T0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZF
X1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1J
T1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAx
CnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVm
aW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5l
IENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUg
U0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmlu
ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVf
X0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNW
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwg
LyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAjaWZkZWYg
SEFWRV9VTklTVERfSAp8ICNpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8
c2lnbmFsLmg+CnwgI2lmZGVmIF9fQ1lHV0lOMzJfXwp8IC8qIE9uIEN5Z3dpbjMyIHZlcnNpb24g
MTgsIHRoaXMgdGVzdCB3b3VsZCBoYW5nIChTSUdBTFJNIG5vdCBiZWluZyBzaWduYWxsZWQpLgp8
ICAqIExldCBpdCBmYWlsIGluc3RlYWQuICovCnwgI2Vycm9yICJiZXR0ZXIgZmFpbCB0aGFuIGhh
bmciCnwgI2VuZGlmCnwgI2lmICFkZWZpbmVkKF9fU1REQ19fKSB8fCBfX1NURENfXyAhPSAxCnwg
I2RlZmluZSB2b2xhdGlsZQp8ICNlbmRpZgp8IHZvbGF0aWxlIGludCBnb3RzaWc9MDsKfCB2b2xh
dGlsZSBpbnQgd2FzYmxvY2tlZD0wOwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICNpZmRlZiBTSUdU
WVBFX0RPVFMKfCB0eXBlZGVmIFJFVFNJR1RZUEUgKCpzaWduYWxfaGFuZGxlcl90KSAoLi4uKTsK
fCAjZWxzZQp8IHR5cGVkZWYgUkVUU0lHVFlQRSAoKnNpZ25hbF9oYW5kbGVyX3QpIChpbnQpOwp8
ICNlbmRpZgp8ICNlbHNlCnwgdHlwZWRlZiBSRVRTSUdUWVBFICgqc2lnbmFsX2hhbmRsZXJfdCkg
KCk7CnwgI2VuZGlmCnwgUkVUU0lHVFlQRSBzaWdhbHJtX2hhbmRsZXIoKQp8IHsgZ290c2lnPTE7
CnwgI2lmZGVmIFNJR05BTF9ORUVEX1JFSU5TVEFMTAp8ICAgc2lnbmFsKFNJR0FMUk0sKHNpZ25h
bF9oYW5kbGVyX3Qpc2lnYWxybV9oYW5kbGVyKTsKfCAjZW5kaWYKfCAjaWZkZWYgU0lHTkFMQkxP
Q0tfUE9TSVgKfCAgIHsgc2lnc2V0X3QgYmxvY2tlZDsKfCAgICAgc2lncHJvY21hc2soU0lHX0JM
T0NLLCAoc2lnc2V0X3QgKikgMCwgJmJsb2NrZWQpOwp8ICAgICB3YXNibG9ja2VkID0gc2lnaXNt
ZW1iZXIoJmJsb2NrZWQsU0lHQUxSTSkgPyAxIDogMDsKfCAgIH0KfCAjZWxzZQp8ICAgd2FzYmxv
Y2tlZCA9ICgoc2lnYmxvY2soMCkgJiBzaWdtYXNrKFNJR0FMUk0pKSAhPSAwKTsKfCAjZW5kaWYK
fCB9CnwgaW50IGdvdF9zaWcgKCkgeyByZXR1cm4gZ290c2lnOyB9CnwgaW50IG1haW4oKSB7IC8q
IHJldHVybnMgMCBpZiB0aGV5IG5lZWQgbm90IHRvIGJlIHVuYmxvY2tlZCAqLwp8ICAgc2lnbmFs
KFNJR0FMUk0sKHNpZ25hbF9oYW5kbGVyX3Qpc2lnYWxybV9oYW5kbGVyKTsgYWxhcm0oMSk7IHdo
aWxlICghZ290X3NpZygpKTsKfCAgIGV4aXQod2FzYmxvY2tlZCk7CnwgfQpjb25maWd1cmU6MTQy
NTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDI2OTogY2hlY2tpbmcgd2hldGhlciBvdGhlciBz
aWduYWxzIGFyZSBibG9ja2VkIHdoZW4gc2lnbmFsIGhhbmRsZXJzIGFyZSBlbnRlcmVkCmNvbmZp
Z3VyZToxNDMzMzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m
aWd1cmU6MTQzMzY6ICQ/ID0gMApjb25maWd1cmU6MTQzMzg6IC4vY29uZnRlc3QKY29uZmlndXJl
OjE0MzQxOiAkPyA9IDAKY29uZmlndXJlOjE0MzU2OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDM3
NjogY2hlY2tpbmcgZm9yIHNpZ2FjdGlvbgpjb25maWd1cmU6MTQ0MzM6IGdjYyAtbyBjb25mdGVz
dCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0NDM5OiAkPyA9IDAKY29uZmln
dXJlOjE0NDQzOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6MTQ0NDY6ICQ/ID0gMApjb25maWd1cmU6MTQ0NDk6IHRlc3QgLXMgY29uZnRlc3QKY29uZmln
dXJlOjE0NDUyOiAkPyA9IDAKY29uZmlndXJlOjE0NDY0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MTQ2OTQ6IGNoZWNraW5nIGZvciBzaWdpbnRlcnJ1cHQKY29uZmlndXJlOjE0NzUxOiBnY2MgLW8g
Y29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxNDc1NzogJD8gPSAw
CmNvbmZpZ3VyZToxNDc2MTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjE0NzY0OiAkPyA9IDAKY29uZmlndXJlOjE0NzY3OiB0ZXN0IC1zIGNvbmZ0ZXN0
CmNvbmZpZ3VyZToxNDc3MDogJD8gPSAwCmNvbmZpZ3VyZToxNDc4MjogcmVzdWx0OiB5ZXMKY29u
ZmlndXJlOjE0ODk1OiBjaGVja2luZyBmb3IgZnB1X2NvbnRyb2xfdApjb25maWd1cmU6MTQ5MTc6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDkyMzogJD8gPSAwCmNv
bmZpZ3VyZToxNDkyNzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjE0OTMwOiAkPyA9IDAKY29uZmlndXJlOjE0OTMzOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjE0OTM2OiAkPyA9IDAKY29uZmlndXJlOjE0OTQ5OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTQ5NTk6IGNoZWNraW5nIGZvciBfX3NldGZwdWN3CmNvbmZpZ3VyZToxNDk4MTogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0OTg3OiAkPyA9IDAKY29uZmln
dXJlOjE0OTkxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6MTQ5OTQ6ICQ/ID0gMApjb25maWd1cmU6MTQ5OTc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25m
aWd1cmU6MTUwMDA6ICQ/ID0gMApjb25maWd1cmU6MTUwMTM6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToxNTAyNDogY2hlY2tpbmcgZm9yIHJhaXNlCmNvbmZpZ3VyZToxNTA0NzogZ2NjIC1vIGNvbmZ0
ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTUwNTM6ICQ/ID0gMApjb25m
aWd1cmU6MTUwNTc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZp
Z3VyZToxNTA2MDogJD8gPSAwCmNvbmZpZ3VyZToxNTA2MzogdGVzdCAtcyBjb25mdGVzdApjb25m
aWd1cmU6MTUwNjY6ICQ/ID0gMApjb25maWd1cmU6MTUwODA6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToxNTA5MDogY2hlY2tpbmcgZm9yIGFib3J0IGRlY2xhcmF0aW9uCmNvbmZpZ3VyZToxNTEyODog
Z2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzczMDJdIEVSUk9SOiBjb21waWxl
IC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguNzI4Ni5pIG9uIGxvY2Fs
aG9zdCBmYWlsZWQKY29uZnRlc3QuYzo4NTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAn
YWJvcnQnCmNvbmZpZ3VyZToxNTEzNDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0g
d2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUg
Q0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FH
RV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJH
TlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAi
aHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5l
IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVf
U1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRf
SCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEK
fCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZT
RVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5k
aWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmlu
ZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RD
R0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQg
cmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05H
CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUg
SEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB
VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVf
SAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVm
aW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhB
VkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9O
RUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRk
cl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1Qg
OAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NB
X0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmlu
ZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJ
R05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05B
TF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVf
U0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFW
RV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8K
fCAKfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVk
ZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwg
IkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19jcGx1
c3BsdXMpCnwgaW50IGFib3J0KCk7CnwgI2Vsc2UKfCBpbnQgYWJvcnQoKTsKfCAjZW5kaWYKfCAK
fCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6
MTUxOTA6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNTE5NjogJD8g
PSAwCmNvbmZpZ3VyZToxNTIwMDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5l
cnIKY29uZmlndXJlOjE1MjAzOiAkPyA9IDAKY29uZmlndXJlOjE1MjA2OiB0ZXN0IC1zIGNvbmZ0
ZXN0Lm8KY29uZmlndXJlOjE1MjA5OiAkPyA9IDAKY29uZmlndXJlOjE1MjI2OiByZXN1bHQ6IAog
ICAgICAgICBleHRlcm4gdm9pZCBhYm9ydCAodm9pZCk7CmNvbmZpZ3VyZToxNTI0MTogY2hlY2tp
bmcgZm9yIHBlcnJvciBkZWNsYXJhdGlvbgpjb25maWd1cmU6MTUyNzI6IGdjYyAtYyAtZyAtTzIg
IGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1s3NDkwXSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2Fj
aGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4Ljc0ODYuaSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNv
bmZ0ZXN0LmM6ODQ6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ3BlcnJvcicKL3Vzci9p
bmNsdWRlL3N0ZGlvLmg6NzUxOiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ3BlcnJv
cicgd2FzIGhlcmUKY29uZmlndXJlOjE1Mjc4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg
IkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQ
QUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJ
TkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ
T1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNk
ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05T
X18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxF
X09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8
ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAj
ZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhB
VkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5f
dm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9O
R0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2Rl
ZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZp
bmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRT
TkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8
ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZp
bmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5T
SVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9U
IGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9P
RkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9B
TExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAj
ZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZp
bmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUg
U0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUg
SEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmlu
ZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZ
UEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgLyogZW5kIGNvbmZkZWZzLmguICAq
Lwp8IAp8IC8qIFNvbWUgc3lzdGVtcyBkZWNsYXJlIHBlcnJvcigpIGluIDxlcnJuby5oPiwgc29t
ZSBpbiA8c3RkaW8uaD4sIHNvbWUgZG9uJ3QKfCAgICBkZWNsYXJlIGl0IGF0IGFsbC4gKi8KfCAj
aW5jbHVkZSA8c3RkaW8uaD4KfCAjaW5jbHVkZSA8ZXJybm8uaD4KfCBleHRlcm4KfCAjaWZkZWYg
X19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCBkb3VibGUgcGVycm9yICgpOwp8IGludAp8IG1h
aW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTMwNDogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjE1MzM0OiBjaGVja2luZyBmb3Igc3RyZXJyb3IKY29uZmlndXJl
OjE1MzkxOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy
ZToxNTM5NzogJD8gPSAwCmNvbmZpZ3VyZToxNTQwMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE1NDA0OiAkPyA9IDAKY29uZmlndXJlOjE1NDA3OiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxNTQxMDogJD8gPSAwCmNvbmZpZ3VyZToxNTQyMjog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1MzM0OiBjaGVja2luZyBmb3Igc3lzY29uZgpjb25maWd1
cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmln
dXJlOjE1Mzk3OiAkPyA9IDAKY29uZmlndXJlOjE1NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTU0MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6
IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE1NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIy
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUzMzQ6IGNoZWNraW5nIGZvciBnZXRkdGFibGVzaXpl
CmNvbmZpZ3VyZToxNTM5MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4m
NQpjb25maWd1cmU6MTUzOTc6ICQ/ID0gMApjb25maWd1cmU6MTU0MDE6IHRlc3QgLXogCgkJCSB8
fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTQwNDogJD8gPSAwCmNvbmZpZ3Vy
ZToxNTQwNzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTU0MTA6ICQ/ID0gMApjb25maWd1
cmU6MTU0MjI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTMzNDogY2hlY2tpbmcgZm9yIG1lbXNl
dApjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+
JjUKY29uZnRlc3QuYzoxMDM6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1p
biBmdW5jdGlvbiAnbWVtc2V0Jwpjb25maWd1cmU6MTUzOTc6ICQ/ID0gMApjb25maWd1cmU6MTU0
MDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTQw
NDogJD8gPSAwCmNvbmZpZ3VyZToxNTQwNzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTU0
MTA6ICQ/ID0gMApjb25maWd1cmU6MTU0MjI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTMzNDog
Y2hlY2tpbmcgZm9yIHNldHNpZApjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAtZyAt
TzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1Mzk3OiAkPyA9IDAKY29uZmlndXJlOjE1
NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTU0
MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE1
NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUzMzQ6
IGNoZWNraW5nIGZvciBzZXRwZ2lkCmNvbmZpZ3VyZToxNTM5MTogZ2NjIC1vIGNvbmZ0ZXN0IC1n
IC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTUzOTc6ICQ/ID0gMApjb25maWd1cmU6
MTU0MDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTox
NTQwNDogJD8gPSAwCmNvbmZpZ3VyZToxNTQwNzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6
MTU0MTA6ICQ/ID0gMApjb25maWd1cmU6MTU0MjI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTMz
NDogY2hlY2tpbmcgZm9yIGZjaG1vZApjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAt
ZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1Mzk3OiAkPyA9IDAKY29uZmlndXJl
OjE1NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MTU0MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJl
OjE1NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUz
MzQ6IGNoZWNraW5nIGZvciBmc3luYwpjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAt
ZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1Mzk3OiAkPyA9IDAKY29uZmlndXJl
OjE1NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MTU0MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJl
OjE1NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUz
MzQ6IGNoZWNraW5nIGZvciBmbG9jawpjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBjb25mdGVzdCAt
ZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1Mzk3OiAkPyA9IDAKY29uZmlndXJl
OjE1NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MTU0MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJl
OjE1NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTUz
MzQ6IGNoZWNraW5nIGZvciBnZXRob3N0ZW50CmNvbmZpZ3VyZToxNTM5MTogZ2NjIC1vIGNvbmZ0
ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTUzOTc6ICQ/ID0gMApjb25m
aWd1cmU6MTU0MDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZp
Z3VyZToxNTQwNDogJD8gPSAwCmNvbmZpZ3VyZToxNTQwNzogdGVzdCAtcyBjb25mdGVzdApjb25m
aWd1cmU6MTU0MTA6ICQ/ID0gMApjb25maWd1cmU6MTU0MjI6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToxNTMzNDogY2hlY2tpbmcgZm9yIHNodXRkb3duCmNvbmZpZ3VyZToxNTM5MTogZ2NjIC1vIGNv
bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTUzOTc6ICQ/ID0gMApj
b25maWd1cmU6MTU0MDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNv
bmZpZ3VyZToxNTQwNDogJD8gPSAwCmNvbmZpZ3VyZToxNTQwNzogdGVzdCAtcyBjb25mdGVzdApj
b25maWd1cmU6MTU0MTA6ICQ/ID0gMApjb25maWd1cmU6MTU0MjI6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToxNTMzNDogY2hlY2tpbmcgZm9yIHVzbGVlcApjb25maWd1cmU6MTUzOTE6IGdjYyAtbyBj
b25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1Mzk3OiAkPyA9IDAK
Y29uZmlndXJlOjE1NDAxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
b25maWd1cmU6MTU0MDQ6ICQ/ID0gMApjb25maWd1cmU6MTU0MDc6IHRlc3QgLXMgY29uZnRlc3QK
Y29uZmlndXJlOjE1NDEwOiAkPyA9IDAKY29uZmlndXJlOjE1NDIyOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTUzMzQ6IGNoZWNraW5nIGZvciB1YWxhcm0KY29uZmlndXJlOjE1MzkxOiBnY2MgLW8g
Y29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxNTM5NzogJD8gPSAw
CmNvbmZpZ3VyZToxNTQwMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjE1NDA0OiAkPyA9IDAKY29uZmlndXJlOjE1NDA3OiB0ZXN0IC1zIGNvbmZ0ZXN0
CmNvbmZpZ3VyZToxNTQxMDogJD8gPSAwCmNvbmZpZ3VyZToxNTQyMjogcmVzdWx0OiB5ZXMKY29u
ZmlndXJlOjE1MzM0OiBjaGVja2luZyBmb3Igc2V0aXRpbWVyCmNvbmZpZ3VyZToxNTM5MTogZ2Nj
IC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTUzOTc6ICQ/
ID0gMApjb25maWd1cmU6MTU0MDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyCmNvbmZpZ3VyZToxNTQwNDogJD8gPSAwCmNvbmZpZ3VyZToxNTQwNzogdGVzdCAtcyBjb25m
dGVzdApjb25maWd1cmU6MTU0MTA6ICQ/ID0gMApjb25maWd1cmU6MTU0MjI6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxNTMzNDogY2hlY2tpbmcgZm9yIG5pY2UKY29uZmlndXJlOjE1MzkxOiBnY2Mg
LW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxNTM5NzogJD8g
PSAwCmNvbmZpZ3VyZToxNTQwMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5l
cnIKY29uZmlndXJlOjE1NDA0OiAkPyA9IDAKY29uZmlndXJlOjE1NDA3OiB0ZXN0IC1zIGNvbmZ0
ZXN0CmNvbmZpZ3VyZToxNTQxMDogJD8gPSAwCmNvbmZpZ3VyZToxNTQyMjogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjE1MzM0OiBjaGVja2luZyBmb3IgZnRpbWUKY29uZmlndXJlOjE1MzkxOiBnY2Mg
LW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxNTM5NzogJD8g
PSAwCmNvbmZpZ3VyZToxNTQwMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5l
cnIKY29uZmlndXJlOjE1NDA0OiAkPyA9IDAKY29uZmlndXJlOjE1NDA3OiB0ZXN0IC1zIGNvbmZ0
ZXN0CmNvbmZpZ3VyZToxNTQxMDogJD8gPSAwCmNvbmZpZ3VyZToxNTQyMjogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjE1MzM0OiBjaGVja2luZyBmb3IgcmVhbHBhdGgKY29uZmlndXJlOjE1MzkxOiBn
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxNTM5Nzog
JD8gPSAwCmNvbmZpZ3VyZToxNTQwMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjE1NDA0OiAkPyA9IDAKY29uZmlndXJlOjE1NDA3OiB0ZXN0IC1zIGNv
bmZ0ZXN0CmNvbmZpZ3VyZToxNTQxMDogJD8gPSAwCmNvbmZpZ3VyZToxNTQyMjogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjE1NDMzOiBjaGVja2luZyBmb3IgcHV0ZW52CmNvbmZpZ3VyZToxNTQ1NTog
Z2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTU0NjE6
ICQ/ID0gMApjb25maWd1cmU6MTU0NjU6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
c3QuZXJyCmNvbmZpZ3VyZToxNTQ2ODogJD8gPSAwCmNvbmZpZ3VyZToxNTQ3MTogdGVzdCAtcyBj
b25mdGVzdApjb25maWd1cmU6MTU0NzQ6ICQ/ID0gMApjb25maWd1cmU6MTU0ODY6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToxNTUwMDogY2hlY2tpbmcgZm9yIHNldGVudgpjb25maWd1cmU6MTU1NTc6
IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1NTYz
OiAkPyA9IDAKY29uZmlndXJlOjE1NTY3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0
ZXN0LmVycgpjb25maWd1cmU6MTU1NzA6ICQ/ID0gMApjb25maWd1cmU6MTU1NzM6IHRlc3QgLXMg
Y29uZnRlc3QKY29uZmlndXJlOjE1NTc2OiAkPyA9IDAKY29uZmlndXJlOjE1NTg4OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTU1MDA6IGNoZWNraW5nIGZvciB1bnNldGVudgpjb25maWd1cmU6MTU1
NTc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE1
NTYzOiAkPyA9IDAKY29uZmlndXJlOjE1NTY3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycgpjb25maWd1cmU6MTU1NzA6ICQ/ID0gMApjb25maWd1cmU6MTU1NzM6IHRlc3Qg
LXMgY29uZnRlc3QKY29uZmlndXJlOjE1NTc2OiAkPyA9IDAKY29uZmlndXJlOjE1NTg4OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MTU1OTc6IGNoZWNraW5nIHdoZXRoZXIgZW52aXJvbiBpcyBkZWNs
YXJlZApjb25maWd1cmU6MTU2MjU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToxNTYzMTogJD8gPSAwCmNvbmZpZ3VyZToxNTYzNTogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE1NjM4OiAkPyA9IDAKY29uZmlndXJlOjE1NjQx
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE1NjQ0OiAkPyA9IDAKY29uZmlndXJlOjE1
NjU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU2NzQ6IGNoZWNraW5nIHJldHVybiB2YWx1ZSBv
ZiB1bnNldGVudgpjb25maWd1cmU6MTU3MDM6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
CmRpc3RjY1sxMjQ0Nl0gRVJST1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRt
cC50b3Rvei1saW51eC4xMjM5Ni5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxMDQ6
IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ3Vuc2V0ZW52JwovdXNyL2luY2x1ZGUvc3Rk
bGliLmg6NjgyOiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ3Vuc2V0ZW52JyB3YXMg
aGVyZQpjb25maWd1cmU6MTU3MDk6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh
czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENM
SVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V
IENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0
dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT
X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg
MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwg
I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VU
X0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlm
CnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUg
RU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dF
VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJl
dHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8
ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhB
VkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gK
fCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZF
X1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVF
RF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJf
dAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgK
fCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9I
IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUg
UkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxf
TkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJ
R0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVf
U0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lk
CnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAj
ZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5l
IEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBI
QVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hN
T0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVm
aW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5l
IEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VU
SVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAj
ZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUg
SEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RF
Q0xfRU5WSVJPTiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRsaWIu
aD4KfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYg
ZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBpbnQgdW5zZXRlbnYo
Y2hhciopOwp8ICNlbHNlCnwgaW50IHVuc2V0ZW52KCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp
biAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE1NzMzOiByZXN1
bHQ6IHZvaWQKY29uZmlndXJlOjE1NzQ3OiBjaGVja2luZyBmb3IgTENfTUVTU0FHRVMKY29uZmln
dXJlOjE1NzY4OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZp
Z3VyZToxNTc3NDogJD8gPSAwCmNvbmZpZ3VyZToxNTc3ODogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE1NzgxOiAkPyA9IDAKY29uZmlndXJlOjE1Nzg0
OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxNTc4NzogJD8gPSAwCmNvbmZpZ3VyZToxNTc5
OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODE0OiBjaGVja2luZyBmb3IgZ2V0cmxpbWl0CmNv
bmZpZ3VyZToxNTg3MTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpj
b25maWd1cmU6MTU4Nzc6ICQ/ID0gMApjb25maWd1cmU6MTU4ODE6IHRlc3QgLXogCgkJCSB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTg4NDogJD8gPSAwCmNvbmZpZ3VyZTox
NTg4NzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTU4OTA6ICQ/ID0gMApjb25maWd1cmU6
MTU5MDI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTgxNDogY2hlY2tpbmcgZm9yIHNldHJsaW1p
dApjb25maWd1cmU6MTU4NzE6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+
JjUKY29uZmlndXJlOjE1ODc3OiAkPyA9IDAKY29uZmlndXJlOjE1ODgxOiB0ZXN0IC16IAoJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTU4ODQ6ICQ/ID0gMApjb25maWd1
cmU6MTU4ODc6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE1ODkwOiAkPyA9IDAKY29uZmln
dXJlOjE1OTAyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTU5MTI6IGNoZWNraW5nIGZvciBybGlt
X3QKY29uZmlndXJlOjE1OTM4OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1
cmU6MTU5NDQ6ICQ/ID0gMApjb25maWd1cmU6MTU5NDg6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTk1MTogJD8gPSAwCmNvbmZpZ3VyZToxNTk1NDog
dGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNTk1NzogJD8gPSAwCmNvbmZpZ3VyZToxNTk2
ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1OTcxOiBjaGVja2luZyBzaXplIG9mIHJsaW1fdApj
b25maWd1cmU6MTYzMDI6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUK
Y29uZmlndXJlOjE2MzA1OiAkPyA9IDAKY29uZmlndXJlOjE2MzA3OiAuL2NvbmZ0ZXN0CmNvbmZp
Z3VyZToxNjMxMDogJD8gPSAwCmNvbmZpZ3VyZToxNjMzMzogcmVzdWx0OiA4CmNvbmZpZ3VyZTox
NjM0MDogY2hlY2tpbmcgZm9yIGdldHJsaW1pdCBkZWNsYXJhdGlvbgpjb25maWd1cmU6MTYzODE6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1sxMzUxOF0gRVJST1I6IGNvbXBp
bGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4xMzUwMi5pIG9uIGxv
Y2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxMTc6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBm
b3IgJ2dldHJsaW1pdCcKL3Vzci9pbmNsdWRlL3N5cy9yZXNvdXJjZS5oOjU1OiBlcnJvcjogcHJl
dmlvdXMgZGVjbGFyYXRpb24gb2YgJ2dldHJsaW1pdCcgd2FzIGhlcmUKY29uZmlndXJlOjE2Mzg3
OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4g
ICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tB
R0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYt
MDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAx
LTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcv
Igp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBI
QVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVf
SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5J
U1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJF
QURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBf
X2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09O
ViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZp
bmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhB
VkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVf
TE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVS
UyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAx
CnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2Rl
ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5l
IERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERC
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0gg
MQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwg
I2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5l
IEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVm
aW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5f
VCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RS
VUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FM
TE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNk
ZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVm
aW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZp
bmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZp
bmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBI
QVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9M
QVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9S
IDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUg
MQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZp
bmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVf
RlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQg
MQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2Rl
ZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBI
QVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRI
IDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVm
aW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZp
bmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmlu
ZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBT
SVpFT0ZfUkxJTV9UIDgKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN0
ZGxpYi5oPgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNl
bmRpZgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KfCAj
aW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVz
CnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19j
cGx1c3BsdXMpCnwgaW50IGdldHJsaW1pdCAoaW50IHJlc291cmNlLCBzdHJ1Y3QgcmxpbWl0ICog
cmxpbSk7CnwgI2Vsc2UKfCBpbnQgZ2V0cmxpbWl0KCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp
biAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE2NDE3OiByZXN1
bHQ6IAogICAgICAgICBleHRlcm4gaW50IGdldHJsaW1pdCAoZW51bSBfX3JsaW1pdF9yZXNvdXJj
ZSwgc3RydWN0IHJsaW1pdCAqKTsKY29uZmlndXJlOjE2NDI2OiBjaGVja2luZyBmb3Igc2V0cmxp
bWl0IGRlY2xhcmF0aW9uCmNvbmZpZ3VyZToxNjQ2NzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
YyA+JjUKZGlzdGNjWzEzNzE4XSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRl
c3QudG1wLnRvdG96LWxpbnV4LjEzNjQ0Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5j
OjExODogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnc2V0cmxpbWl0JwovdXNyL2luY2x1
ZGUvc3lzL3Jlc291cmNlLmg6NzQ6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAnc2V0
cmxpbWl0JyB3YXMgaGVyZQpjb25maWd1cmU6MTY0NzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxl
ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0Vf
TkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVm
aW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdF
X1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9C
VUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAx
CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhB
VkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVO
U0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUg
X0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZf
XyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNU
IAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZp
bmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJl
dHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFW
RV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YK
fCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZ
U19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
SE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1Nf
SCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwg
I2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5l
IFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENB
RERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0la
RU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBI
QVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pN
UAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwg
I2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2Rl
ZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2Rl
ZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAj
ZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFC
T1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVS
Uk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05G
IDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAx
CnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZp
bmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZM
T0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dO
IDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVm
aW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZF
X0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYg
MQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2Rl
ZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2Rl
ZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVm
aW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUg
UkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8IC8qIGVuZCBjb25mZGVm
cy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gK
fCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8
ICNpbmNsdWRlIDxzeXMvdGltZS5oPgp8ICNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KfCAKfCBl
eHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5l
ZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBpbnQgc2V0cmxpbWl0IChSTElN
SVRfUkVTT1VSQ0VfVCByZXNvdXJjZSwgc3RydWN0IHJsaW1pdCAqIHJsaW0pOwp8ICNlbHNlCnwg
aW50IHNldHJsaW1pdCgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7
CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNjUwNDogcmVzdWx0OiAKICAgICAgICAgZXh0
ZXJuIGludCBzZXRybGltaXQgKGVudW0gX19ybGltaXRfcmVzb3VyY2UsIGNvbnN0IHN0cnVjdCBy
bGltaXQgKik7CmNvbmZpZ3VyZToxNjUxNTogY2hlY2tpbmcgZm9yIHBpZF90CmNvbmZpZ3VyZTox
NjUzOTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE2NTQ1OiAkPyA9
IDAKY29uZmlndXJlOjE2NTQ5OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MTY1NTI6ICQ/ID0gMApjb25maWd1cmU6MTY1NTU6IHRlc3QgLXMgY29uZnRl
c3Qubwpjb25maWd1cmU6MTY1NTg6ICQ/ID0gMApjb25maWd1cmU6MTY1Njk6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxNjU4NzogY2hlY2tpbmcgZm9yIHVuaXN0ZC5oCmNvbmZpZ3VyZToxNjU5Mjog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjE2NTk2OiBjaGVja2luZyB2Zm9yay5oIHVzYWJpbGl0eQpj
b25maWd1cmU6MTY2MDg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1sxMzk3
NV0gRVJST1I6IGNvbXBpbGUgKG51bGwpIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzox
Mzk6MTk6IGVycm9yOiB2Zm9yay5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmRpc3RjY1sx
Mzk3NF0gRVJST1I6IGNvbXBpbGUgY29uZnRlc3QuYyBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZp
Z3VyZToxNjYxNDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv
bmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2Rl
ZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIy
LjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4z
OCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNw
LmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVS
UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf
SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8
ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl
ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9Q
T1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8
ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5l
IEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxT
IDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwg
I2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2Rl
ZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09M
X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAx
CnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUg
SEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVS
TUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRS
CnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NU
TF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmlu
ZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUg
U0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZp
bmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBF
IHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BP
U0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxP
Q0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBU
IDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8
ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5l
IEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFW
RV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVRE
VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lE
IDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl
ZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xF
RVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8
ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFW
RV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVO
ViAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9O
IDEKfCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMg
MQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8
ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVt
IF9fcmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8
c3RkaW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+
CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4K
fCAjZW5kaWYKfCAjaWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGlu
Y2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVk
ZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR19ICnwgIyBp
ZiAhU1REQ19IRUFERVJTICYmIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4K
fCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJ
TkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9JTlRUWVBF
U19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURElOVF9I
CnwgIyAgaW5jbHVkZSA8c3RkaW50Lmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1VO
SVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8dmZvcmsu
aD4KY29uZmlndXJlOjE2NjM3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNjY0MTogY2hlY2tpbmcg
dmZvcmsuaCBwcmVzZW5jZQpjb25maWd1cmU6MTY2NTE6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25m
dGVzdC5jOjEwNToxOTogZXJyb3I6IHZmb3JrLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkK
ZGlzdGNjWzE0MDM0XSBFUlJPUjogY29tcGlsZSAobnVsbCkgb24gbG9jYWxob3N0IGZhaWxlZApj
b25maWd1cmU6MTY2NTc6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv
KiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8
ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP
TiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQ
IDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9j
bGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hF
QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I
IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8
ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk
ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmlu
ZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMg
NjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2Rl
ZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxF
X05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQg
MQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8
ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZp
bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1RE
Qk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxF
X0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVm
aW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZF
X1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VU
QVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNf
SU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNk
ZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVm
aW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAj
ZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lH
VFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9D
S19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9V
TkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVS
UlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBV
Q1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2Rl
ZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5l
IEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVf
R0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NF
VFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8
ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhB
VkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVf
VVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVS
IDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5l
IEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9T
RVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5W
SVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NB
R0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlU
IDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1Qg
ZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0Cnwg
I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1
ZGUgPHZmb3JrLmg+CmNvbmZpZ3VyZToxNjY3NzogcmVzdWx0OiBubwpjb25maWd1cmU6MTY3MTI6
IGNoZWNraW5nIGZvciB2Zm9yay5oCmNvbmZpZ3VyZToxNjcxOTogcmVzdWx0OiBubwpjb25maWd1
cmU6MTY3Mzc6IGNoZWNraW5nIGZvciBmb3JrCmNvbmZpZ3VyZToxNjc5NDogZ2NjIC1vIGNvbmZ0
ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25mdGVzdC5jOjEyOTogd2FybmluZzogY29u
ZmxpY3RpbmcgdHlwZXMgZm9yIGJ1aWx0LWluIGZ1bmN0aW9uICdmb3JrJwpjb25maWd1cmU6MTY4
MDA6ICQ/ID0gMApjb25maWd1cmU6MTY4MDQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZToxNjgwNzogJD8gPSAwCmNvbmZpZ3VyZToxNjgxMDogdGVzdCAt
cyBjb25mdGVzdApjb25maWd1cmU6MTY4MTM6ICQ/ID0gMApjb25maWd1cmU6MTY4MjU6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToxNjczNzogY2hlY2tpbmcgZm9yIHZmb3JrCmNvbmZpZ3VyZToxNjc5
NDogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTY4
MDA6ICQ/ID0gMApjb25maWd1cmU6MTY4MDQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZToxNjgwNzogJD8gPSAwCmNvbmZpZ3VyZToxNjgxMDogdGVzdCAt
cyBjb25mdGVzdApjb25maWd1cmU6MTY4MTM6ICQ/ID0gMApjb25maWd1cmU6MTY4MjU6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToxNjgzNjogY2hlY2tpbmcgZm9yIHdvcmtpbmcgZm9yawpjb25maWd1
cmU6MTY4NTk6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZnRl
c3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjEwOiB3YXJuaW5nOiBpbmNvbXBh
dGlibGUgaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgYnVpbHQtaW4gZnVuY3Rpb24gJ2V4aXQnCmNv
bmZpZ3VyZToxNjg2MjogJD8gPSAwCmNvbmZpZ3VyZToxNjg2NDogLi9jb25mdGVzdApjb25maWd1
cmU6MTY4Njc6ICQ/ID0gMApjb25maWd1cmU6MTY4ODE6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
NjkwMjogY2hlY2tpbmcgZm9yIHdvcmtpbmcgdmZvcmsKY29uZmlndXJlOjE3MDM1OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTcwNjY6IGNoZWNraW5nIGZvciB3YWl0cGlkIGRlY2xhcmF0aW9uCmNv
bmZpZ3VyZToxNzEwNTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE3
MTExOiAkPyA9IDAKY29uZmlndXJlOjE3MTE1OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycgpjb25maWd1cmU6MTcxMTg6ICQ/ID0gMApjb25maWd1cmU6MTcxMjE6IHRlc3Qg
LXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTcxMjQ6ICQ/ID0gMApjb25maWd1cmU6MTcxNDE6IHJl
c3VsdDogCiAgICAgICAgIGV4dGVybiBwaWRfdCB3YWl0cGlkIChwaWRfdCwgaW50KiwgaW50KTsK
Y29uZmlndXJlOjE3MTY2OiBjaGVja2luZyBzeXMvcmVzb3VyY2UuaCB1c2FiaWxpdHkKY29uZmln
dXJlOjE3MTc4OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTcxODQ6
ICQ/ID0gMApjb25maWd1cmU6MTcxODg6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
c3QuZXJyCmNvbmZpZ3VyZToxNzE5MTogJD8gPSAwCmNvbmZpZ3VyZToxNzE5NDogdGVzdCAtcyBj
b25mdGVzdC5vCmNvbmZpZ3VyZToxNzE5NzogJD8gPSAwCmNvbmZpZ3VyZToxNzIwNzogcmVzdWx0
OiB5ZXMKY29uZmlndXJlOjE3MjExOiBjaGVja2luZyBzeXMvcmVzb3VyY2UuaCBwcmVzZW5jZQpj
b25maWd1cmU6MTcyMjE6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTcyMjc6ICQ/ID0g
MApjb25maWd1cmU6MTcyNDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzI4MjogY2hlY2tpbmcg
Zm9yIHN5cy9yZXNvdXJjZS5oCmNvbmZpZ3VyZToxNzI4OTogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjE3MTY2OiBjaGVja2luZyBzeXMvdGltZXMuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE3MTc4OiBn
Y2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTcxODQ6ICQ/ID0gMApjb25m
aWd1cmU6MTcxODg6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZp
Z3VyZToxNzE5MTogJD8gPSAwCmNvbmZpZ3VyZToxNzE5NDogdGVzdCAtcyBjb25mdGVzdC5vCmNv
bmZpZ3VyZToxNzE5NzogJD8gPSAwCmNvbmZpZ3VyZToxNzIwNzogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE3MjExOiBjaGVja2luZyBzeXMvdGltZXMuaCBwcmVzZW5jZQpjb25maWd1cmU6MTcyMjE6
IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTcyMjc6ICQ/ID0gMApjb25maWd1cmU6MTcy
NDc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzI4MjogY2hlY2tpbmcgZm9yIHN5cy90aW1lcy5o
CmNvbmZpZ3VyZToxNzI4OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3MzAyOiBjaGVja2luZyBm
b3IgZ2V0cnVzYWdlCmNvbmZpZ3VyZToxNzMyNjogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNv
bmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTczMzI6ICQ/ID0gMApjb25maWd1cmU6MTczMzY6IHRl
c3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNzMzOTogJD8g
PSAwCmNvbmZpZ3VyZToxNzM0MjogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTczNDU6ICQ/
ID0gMApjb25maWd1cmU6MTczNTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzM2NTogY2hlY2tp
bmcgZm9yIGdldHJ1c2FnZSBkZWNsYXJhdGlvbgpjb25maWd1cmU6MTc0MDY6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNzQxMjogJD8gPSAwCmNvbmZpZ3VyZToxNzQx
NjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE3NDE5
OiAkPyA9IDAKY29uZmlndXJlOjE3NDIyOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE3
NDI1OiAkPyA9IDAKY29uZmlndXJlOjE3NDQyOiByZXN1bHQ6IAogICAgICAgICBleHRlcm4gaW50
IGdldHJ1c2FnZSAoaW50LCBzdHJ1Y3QgcnVzYWdlICopOwpjb25maWd1cmU6MTc0NDU6IGNoZWNr
aW5nIHdoZXRoZXIgZ2V0cnVzYWdlIHdvcmtzCmNvbmZpZ3VyZToxNzQ5NDogZ2NjIC1vIGNvbmZ0
ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTc0OTc6ICQ/ID0gMApjb25m
aWd1cmU6MTc0OTk6IC4vY29uZnRlc3QKY29uZmlndXJlOjE3NTAyOiAkPyA9IDAKY29uZmlndXJl
OjE3NTE2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTc1MzM6IGNoZWNraW5nIGZvciBnZXRjd2QK
Y29uZmlndXJlOjE3NTYwOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1
CmNvbmZpZ3VyZToxNzU2NjogJD8gPSAwCmNvbmZpZ3VyZToxNzU3MDogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE3NTczOiAkPyA9IDAKY29uZmlndXJl
OjE3NTc2OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxNzU3OTogJD8gPSAwCmNvbmZpZ3Vy
ZToxNzU5MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3NjA0OiBjaGVja2luZyBmb3IgZ2V0Y3dk
IGRlY2xhcmF0aW9uCmNvbmZpZ3VyZToxNzY0MjogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
JjUKZGlzdGNjWzE2NTM5XSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRlc3Qu
dG1wLnRvdG96LWxpbnV4LjE2Mzk4Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjEy
NzogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnZ2V0Y3dkJwovdXNyL2luY2x1ZGUvdW5p
c3RkLmg6NDY5OiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2dldGN3ZCcgd2FzIGhl
cmUKY29uZmlndXJlOjE3NjQ4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElT
UCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZF
UlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBD
TElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRw
Oi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1RE
Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I
IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK
fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNk
ZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9C
SVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8
ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVO
QUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRU
RVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1
cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAj
ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZF
X1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
RklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwg
I2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUg
SEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9U
Q0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURf
U1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QK
fCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4Cnwg
I2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAx
CnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJF
VFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFM
QkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05F
RURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJ
TlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NF
VEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8
ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2Rl
ZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBI
QVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFW
RV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9E
IDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmlu
ZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBI
QVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElU
SU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2Rl
ZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhB
VkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNM
X0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19N
RVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJM
SU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJD
RV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25z
dAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZp
bmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUg
SEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVf
U1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBI
QVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9H
RVRDV0QKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8
ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8IAp8
IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZp
bmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQp8IGNoYXIqIGdldGN3ZCAoY2hh
ciogYnVmLCBpbnQgYnVmc2l6ZSk7CnwgI2Vsc2UKfCBjaGFyKiBnZXRjd2QoKTsKfCAjZW5kaWYK
fCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1
cmU6MTc2Nzg6IHJlc3VsdDogCiAgICAgICAgIGV4dGVybiBjaGFyKiBnZXRjd2QgKGNoYXIqLCBz
aXplX3QpOwpjb25maWd1cmU6MTc2ODk6IGNoZWNraW5nIHdoZXRoZXIgc3RhdCBmaWxlLW1vZGUg
bWFjcm9zIGFyZSBicm9rZW4KY29uZmlndXJlOjE3NzM3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTox
Nzc0NzogY2hlY2tpbmcgd2hldGhlciB0aW1lLmggYW5kIHN5cy90aW1lLmggbWF5IGJvdGggYmUg
aW5jbHVkZWQKY29uZmlndXJlOjE3NzcyOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj
b25maWd1cmU6MTc3Nzg6ICQ/ID0gMApjb25maWd1cmU6MTc3ODI6IHRlc3QgLXogCgkJCSB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNzc4NTogJD8gPSAwCmNvbmZpZ3VyZTox
Nzc4ODogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNzc5MTogJD8gPSAwCmNvbmZpZ3Vy
ZToxNzgwMjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3ODEyOiBjaGVja2luZyBmb3IgbHN0YXQK
Y29uZmlndXJlOjE3ODM3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1
CmNvbmZpZ3VyZToxNzg0MzogJD8gPSAwCmNvbmZpZ3VyZToxNzg0NzogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE3ODUwOiAkPyA9IDAKY29uZmlndXJl
OjE3ODUzOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToxNzg1NjogJD8gPSAwCmNvbmZpZ3Vy
ZToxNzg3MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE3ODk1OiBjaGVja2luZyBzeXMvc3RhdHZm
cy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTc5MDc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg
PiY1CmNvbmZpZ3VyZToxNzkxMzogJD8gPSAwCmNvbmZpZ3VyZToxNzkxNzogdGVzdCAteiAKCQkJ
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE3OTIwOiAkPyA9IDAKY29uZmln
dXJlOjE3OTIzOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE3OTI2OiAkPyA9IDAKY29u
ZmlndXJlOjE3OTM2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTc5NDA6IGNoZWNraW5nIHN5cy9z
dGF0dmZzLmggcHJlc2VuY2UKY29uZmlndXJlOjE3OTUwOiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
ZmlndXJlOjE3OTU2OiAkPyA9IDAKY29uZmlndXJlOjE3OTc2OiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MTgwMTE6IGNoZWNraW5nIGZvciBzeXMvc3RhdHZmcy5oCmNvbmZpZ3VyZToxODAxODogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjE3ODk1OiBjaGVja2luZyBzeXMvc3RhdGZzLmggdXNhYmlsaXR5
CmNvbmZpZ3VyZToxNzkwNzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl
OjE3OTEzOiAkPyA9IDAKY29uZmlndXJlOjE3OTE3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTc5MjA6ICQ/ID0gMApjb25maWd1cmU6MTc5MjM6IHRl
c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTc5MjY6ICQ/ID0gMApjb25maWd1cmU6MTc5MzY6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNzk0MDogY2hlY2tpbmcgc3lzL3N0YXRmcy5oIHByZXNl
bmNlCmNvbmZpZ3VyZToxNzk1MDogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNzk1Njog
JD8gPSAwCmNvbmZpZ3VyZToxNzk3NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4MDExOiBjaGVj
a2luZyBmb3Igc3lzL3N0YXRmcy5oCmNvbmZpZ3VyZToxODAxODogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE3ODg2OiBjaGVja2luZyBmb3Igc3lzL3N0YXQuaApjb25maWd1cmU6MTc4OTE6IHJlc3Vs
dDogeWVzCmNvbmZpZ3VyZToxODAzMjogY2hlY2tpbmcgd2hldGhlciBmX2ZzaWQgaXMgc2NhbGFy
CmNvbmZpZ3VyZToxODA1MDogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl
OjE4MDU2OiAkPyA9IDAKY29uZmlndXJlOjE4MDYwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTgwNjM6ICQ/ID0gMApjb25maWd1cmU6MTgwNjY6IHRl
c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTgwNjk6ICQ/ID0gMApjb25maWd1cmU6MTgwNzk6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODA4ODogY2hlY2tpbmcgZm9yIGZzYmxrY250X3QKY29u
ZmlndXJlOjE4MTE0OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTgx
MjA6ICQ/ID0gMApjb25maWd1cmU6MTgxMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZToxODEyNzogJD8gPSAwCmNvbmZpZ3VyZToxODEzMDogdGVzdCAt
cyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxODEzMzogJD8gPSAwCmNvbmZpZ3VyZToxODE0NDogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjE4MTQ3OiBjaGVja2luZyBzaXplIG9mIGZzYmxrY250X3QKY29u
ZmlndXJlOjE4NDc4OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNv
bmZpZ3VyZToxODQ4MTogJD8gPSAwCmNvbmZpZ3VyZToxODQ4MzogLi9jb25mdGVzdApjb25maWd1
cmU6MTg0ODY6ICQ/ID0gMApjb25maWd1cmU6MTg1MDk6IHJlc3VsdDogOApjb25maWd1cmU6MTg1
MTY6IGNoZWNraW5nIGZvciBmc2ZpbGNudF90CmNvbmZpZ3VyZToxODU0MjogZ2NjIC1jIC1nIC1P
MiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE4NTQ4OiAkPyA9IDAKY29uZmlndXJlOjE4NTUy
OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTg1NTU6
ICQ/ID0gMApjb25maWd1cmU6MTg1NTg6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTg1
NjE6ICQ/ID0gMApjb25maWd1cmU6MTg1NzI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxODU3NTog
Y2hlY2tpbmcgc2l6ZSBvZiBmc2ZpbGNudF90CmNvbmZpZ3VyZToxODkwNjogZ2NjIC1vIGNvbmZ0
ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTg5MDk6ICQ/ID0gMApjb25m
aWd1cmU6MTg5MTE6IC4vY29uZnRlc3QKY29uZmlndXJlOjE4OTE0OiAkPyA9IDAKY29uZmlndXJl
OjE4OTM3OiByZXN1bHQ6IDgKY29uZmlndXJlOjE4OTQ2OiBjaGVja2luZyBmb3Igc3RydWN0IHN0
YXQuc3RfcmRldgpjb25maWd1cmU6MTg5NzA6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
CmNvbmZpZ3VyZToxODk3NjogJD8gPSAwCmNvbmZpZ3VyZToxODk4MDogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE4OTgzOiAkPyA9IDAKY29uZmlndXJl
OjE4OTg2OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE4OTg5OiAkPyA9IDAKY29uZmln
dXJlOjE5MDQ3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTkwNTc6IGNoZWNraW5nIGZvciBzdHJ1
Y3Qgc3RhdC5zdF9ibGtzaXplCmNvbmZpZ3VyZToxOTA4MTogZ2NjIC1jIC1nIC1PMiAgY29uZnRl
c3QuYyA+JjUKY29uZmlndXJlOjE5MDg3OiAkPyA9IDAKY29uZmlndXJlOjE5MDkxOiB0ZXN0IC16
IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTkwOTQ6ICQ/ID0gMApj
b25maWd1cmU6MTkwOTc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTkxMDA6ICQ/ID0g
MApjb25maWd1cmU6MTkxNTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxOTE2ODogY2hlY2tpbmcg
Zm9yIHN0cnVjdCBzdGF0LnN0X2Jsb2Nrcwpjb25maWd1cmU6MTkxOTI6IGdjYyAtYyAtZyAtTzIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxOTE5ODogJD8gPSAwCmNvbmZpZ3VyZToxOTIwMjog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE5MjA1OiAk
PyA9IDAKY29uZmlndXJlOjE5MjA4OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE5MjEx
OiAkPyA9IDAKY29uZmlndXJlOjE5MjY5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTkyODE6IGNo
ZWNraW5nIGZvciBpbm9fdApjb25maWd1cmU6MTkzMDU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZToxOTMxMTogJD8gPSAwCmNvbmZpZ3VyZToxOTMxNTogdGVzdCAteiAK
CQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE5MzE4OiAkPyA9IDAKY29u
ZmlndXJlOjE5MzIxOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE5MzI0OiAkPyA9IDAK
Y29uZmlndXJlOjE5MzM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTkzMzg6IGNoZWNraW5nIHNp
emUgb2YgaW5vX3QKY29uZmlndXJlOjE5NjU3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29u
ZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxOTY2MDogJD8gPSAwCmNvbmZpZ3VyZToxOTY2MjogLi9j
b25mdGVzdApjb25maWd1cmU6MTk2NjU6ICQ/ID0gMApjb25maWd1cmU6MTk2ODg6IHJlc3VsdDog
OApjb25maWd1cmU6MTk2OTU6IGNoZWNraW5nIGZvciBkZXZfdApjb25maWd1cmU6MTk3MTk6IGdj
YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxOTcyNTogJD8gPSAwCmNvbmZp
Z3VyZToxOTcyOTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjE5NzMyOiAkPyA9IDAKY29uZmlndXJlOjE5NzM1OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29u
ZmlndXJlOjE5NzM4OiAkPyA9IDAKY29uZmlndXJlOjE5NzQ5OiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MTk3NTI6IGNoZWNraW5nIHNpemUgb2YgZGV2X3QKY29uZmlndXJlOjIwMDcxOiBnY2MgLW8g
Y29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMDA3NDogJD8gPSAw
CmNvbmZpZ3VyZToyMDA3NjogLi9jb25mdGVzdApjb25maWd1cmU6MjAwNzk6ICQ/ID0gMApjb25m
aWd1cmU6MjAxMDI6IHJlc3VsdDogOApjb25maWd1cmU6MjAxMTM6IGNoZWNraW5nIGZvciByZWFk
bGluawpjb25maWd1cmU6MjAxNzA6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j
ICA+JjUKY29uZmlndXJlOjIwMTc2OiAkPyA9IDAKY29uZmlndXJlOjIwMTgwOiB0ZXN0IC16IAoJ
CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjAxODM6ICQ/ID0gMApjb25m
aWd1cmU6MjAxODY6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjIwMTg5OiAkPyA9IDAKY29u
ZmlndXJlOjIwMjAxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjAyMTE6IGNoZWNraW5nIGZvciBF
TE9PUApjb25maWd1cmU6MjAyNDA6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j
ICA+JjUKY29uZmlndXJlOjIwMjQzOiAkPyA9IDAKY29uZmlndXJlOjIwMjg3OiByZXN1bHQ6IHll
cwpjb25maWd1cmU6MjAyOTU6IGNoZWNraW5nIGZvciBjbG9zZWRpciBkZWNsYXJhdGlvbgpjb25m
aWd1cmU6MjAzMzU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMDM0
MTogJD8gPSAwCmNvbmZpZ3VyZToyMDM0NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnIKY29uZmlndXJlOjIwMzQ4OiAkPyA9IDAKY29uZmlndXJlOjIwMzUxOiB0ZXN0IC1z
IGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIwMzU0OiAkPyA9IDAKY29uZmlndXJlOjIwMzcwOiByZXN1
bHQ6IAogICAgICAgICBleHRlcm4gaW50IGNsb3NlZGlyIChESVIqKTsKY29uZmlndXJlOjIwMzg4
OiBjaGVja2luZyBmb3IgdXNhYmxlIGNsb3NlZGlyIHJldHVybiB2YWx1ZQpjb25maWd1cmU6MjA0
MTU6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIw
NDE4OiAkPyA9IDAKY29uZmlndXJlOjIwNDIwOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMDQyMzog
JD8gPSAwCmNvbmZpZ3VyZToyMDQzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwNDUyOiBjaGVj
a2luZyBmb3IgaW9jdGwKY29uZmlndXJlOjIwNTA5OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMDUxNTogJD8gPSAwCmNvbmZpZ3VyZToyMDUxOTog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIwNTIyOiAk
PyA9IDAKY29uZmlndXJlOjIwNTI1OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyMDUyODog
JD8gPSAwCmNvbmZpZ3VyZToyMDU0MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIwNTc3OiBjaGVj
a2luZyBmb3IgaW9jdGwgZGVjbGFyYXRpb24KY29uZmlndXJlOjIwNjA0OiBnY2MgLWMgLWcgLU8y
ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjA2MTA6ICQ/ID0gMApjb25maWd1cmU6MjA2MTQ6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMDYxNzog
JD8gPSAwCmNvbmZpZ3VyZToyMDYyMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMDYy
MzogJD8gPSAwCmNvbmZpZ3VyZToyMDY2MzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK
ZGlzdGNjWzIxMTU0XSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1w
LnRvdG96LWxpbnV4LjIxMDE2Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjE0NTog
ZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnaW9jdGwnCi91c3IvaW5jbHVkZS9zeXMvaW9j
dGwuaDo0MjogZXJyb3I6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdpb2N0bCcgd2FzIGhlcmUK
Y29uZmlndXJlOjIwNjY5OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6Cnwg
LyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIK
fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
T04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElT
UCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8v
Y2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19I
RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdf
SCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEK
fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZp
bmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRT
IDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNk
ZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJM
RV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhU
IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4K
fCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVm
aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NU
REJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2Rl
ZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFW
RV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dF
VEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lT
X0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAj
ZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2Rl
ZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwg
I2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJ
R1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxP
Q0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURf
VU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRF
UlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQ
VUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNk
ZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmlu
ZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZF
X0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9T
RVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEK
fCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBI
QVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZF
X1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1F
UiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmlu
ZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVf
U0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VO
VklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNT
QUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1J
VCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9U
IGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUg
SEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFW
RV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lT
X1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZF
X0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRD
V0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lT
X1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf
SCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NO
VF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNU
X1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8
ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lO
T19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEK
fCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50
CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2lu
Y2x1ZGUgPHN0ZGxpYi5oPgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUgPHN5cy90
eXBlcy5oPgp8ICNpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL2lv
Y3RsLmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwg
Y2hhciogaW9jdGwoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7
CnwgfQpjb25maWd1cmU6MjA3Mjc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3Rj
Y1syMTM4Nl0gRVJST1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rv
ei1saW51eC4yMTE3MC5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxNTE6IGVycm9y
OiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2lvY3RsJwovdXNyL2luY2x1ZGUvc3lzL2lvY3RsLmg6
NDI6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAnaW9jdGwnIHdhcyBoZXJlCmNvbmZp
Z3VyZToyMDczMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv
bmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2Rl
ZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIy
LjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4z
OCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNw
LmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVS
UyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRf
SCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8
ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2Rl
ZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9Q
T1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8
ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5l
IEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxT
IDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwg
I2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2Rl
ZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09M
X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAx
CnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUg
SEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVS
TUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRS
CnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NU
TF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmlu
ZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUg
U0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZp
bmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBF
IHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BP
U0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxP
Q0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBU
IDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8
ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5l
IEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFW
RV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVRE
VEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lE
IDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2Rl
ZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xF
RVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8
ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFW
RV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVO
ViAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9O
IDEKfCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMg
MQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8
ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVt
IF9fcmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVf
VkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09S
S0lOR19GT1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNP
VVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRS
VVNBR0UKfCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwg
I2RlZmluZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1F
IDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4
CnwgI2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFU
X1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVm
aW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4
CnwgI2RlZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2Rl
ZmluZSBFTE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNk
ZWZpbmUgSEFWRV9JT0NUTCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRl
IDxzdGRsaWIuaD4KfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMu
aD4KfCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy9pb2N0bC5o
Pgp8IAp8ICNpZmRlZiBJTkNMVURFX1NZU19JT0NUTF9ICnwgI2luY2x1ZGUgPHN5cy9pb2N0bC5o
Pgp8ICNlbmRpZgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRp
Zgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQp8IGlu
dCBpb2N0bCAoaW50IGZkLCBpbnQgcmVxdWVzdCwgY2FkZHJfdCBhcmcpOwp8ICNlbHNlCnwgaW50
IGlvY3RsKCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJl
dHVybiAwOwp8IH0KY29uZmlndXJlOjIwNzI3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m
NQpkaXN0Y2NbMjE1NTVdIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50
bXAudG90b3otbGludXguMjE1NDAuaSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTUx
OiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdpb2N0bCcKL3Vzci9pbmNsdWRlL3N5cy9p
b2N0bC5oOjQyOiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2lvY3RsJyB3YXMgaGVy
ZQpjb25maWd1cmU6MjA3MzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK
fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQ
Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS
U0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENM
SVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6
Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2Rl
ZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJ
VFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwg
I2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5B
QkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRF
WFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVy
bgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNk
ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVf
U1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G
SUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAj
ZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBI
QVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RD
R0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9T
WVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8
ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAj
ZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEK
fCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVU
U0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVF
RF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lO
VEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VU
RlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwg
I2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVm
aW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhB
VkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZF
X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0Qg
MQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5l
IEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhB
VkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJ
TUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVm
aW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW
RV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf
RU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01F
U1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJ
TUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNF
X1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0
CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmlu
ZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBI
QVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9T
WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhB
VkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dF
VENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9T
WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxL
Q05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJV
Q1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAx
CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0Zf
SU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksg
MQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBp
bnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAj
aW5jbHVkZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lz
L3R5cGVzLmg+CnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMv
aW9jdGwuaD4KfCAKfCAjaWZkZWYgSU5DTFVERV9TWVNfSU9DVExfSAp8ICNpbmNsdWRlIDxzeXMv
aW9jdGwuaD4KfCAjZW5kaWYKfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIK
fCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1
cykKfCBpbnQgaW9jdGwgKGludCBmZCwgdW5zaWduZWQgbG9uZyByZXF1ZXN0LCBjYWRkcl90IGFy
Zyk7CnwgI2Vsc2UKfCBpbnQgaW9jdGwoKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwg
ewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjA3Mjc6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syMTYzM10gRVJST1I6IGNvbXBpbGUgL3Zhci90bXAv
Y2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4yMTU3MC5pIG9uIGxvY2FsaG9zdCBmYWls
ZWQKY29uZnRlc3QuYzoxNTE6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2lvY3RsJwov
dXNyL2luY2x1ZGUvc3lzL2lvY3RsLmg6NDI6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBv
ZiAnaW9jdGwnIHdhcyBoZXJlCmNvbmZpZ3VyZToyMDczMzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
RV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNk
ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tB
R0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdF
X0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNF
IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhU
RU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmlu
ZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4
Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09O
U1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2Rl
ZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUg
cmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBI
QVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklT
VERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRP
Rgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVf
U1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlP
U19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEK
fCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZp
bmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUg
Q0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBT
SVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5l
IEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9f
Sk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YK
fCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAj
ZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAj
ZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8
ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVU
QUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9Q
RVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NP
TkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VU
IDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2Rl
ZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVf
RkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERP
V04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNk
ZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhB
VkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVO
ViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAj
ZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAj
ZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNk
ZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmlu
ZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRS
TElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFW
RV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZG
T1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90
CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQK
fCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNk
ZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5l
IEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2Rl
ZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4Cnwg
I2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1Rf
U1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEK
fCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZp
bmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUg
UkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgLyogZW5kIGNvbmZk
ZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAjaWZkZWYgSEFWRV9VTklTVERf
SAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlm
CnwgI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgp8IAp8ICNpZmRlZiBJTkNMVURFX1NZU19JT0NUTF9I
CnwgI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgp8ICNlbmRpZgp8IAp8IGV4dGVybgp8ICNpZmRlZiBf
X2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBk
ZWZpbmVkKF9fY3BsdXNwbHVzKQp8IGludCBpb2N0bCAoaW50IGZkLCBsb25nIHJlcXVlc3QsIGNh
ZGRyX3QgYXJnKTsKfCAjZWxzZQp8IGludCBpb2N0bCgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1h
aW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMDcyNzogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzIxNzg3XSBFUlJPUjogY29tcGlsZSAv
dmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjIxNjQ4Lmkgb24gbG9jYWxo
b3N0IGZhaWxlZApjb25mdGVzdC5jOjE1MTogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAn
aW9jdGwnCi91c3IvaW5jbHVkZS9zeXMvaW9jdGwuaDo0MjogZXJyb3I6IHByZXZpb3VzIGRlY2xh
cmF0aW9uIG9mICdpb2N0bCcgd2FzIGhlcmUKY29uZmlndXJlOjIwNzMzOiAkPyA9IDEKY29uZmln
dXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmlu
ZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xp
c3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZp
bmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5l
IFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dO
VV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEK
fCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZp
bmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJ
Q09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhU
IDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwg
I2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAj
ZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZF
X09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxF
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZp
bmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFW
RV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NH
VFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNI
CnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwg
I2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAj
ZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8
ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmlu
ZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxP
Q0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NL
X0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJ
T04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09O
VFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2Rl
ZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2RlZmlu
ZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhB
VkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFW
RV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lE
IDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZp
bmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFW
RV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VBTEFS
TSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNk
ZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhB
VkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRF
TlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9T
SVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1J
VCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgK
fCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAjZGVm
aW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
ZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP
UktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgUElE
X1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dI
T19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6
ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9GU0lE
IDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENO
VF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZF
X1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9C
TE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4
CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09QCnwg
I2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAvKiBl
bmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpZmRlZiBIQVZF
X1VOSVNURF9ICnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDx1bmlzdGQuaD4K
fCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CnwgCnwgI2lmZGVmIElOQ0xVREVfU1lT
X0lPQ1RMX0gKfCAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CnwgI2VuZGlmCnwgCnwgZXh0ZXJuCnwg
I2lmZGVmIF9fY3BsdXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERD
X18pIHx8IGRlZmluZWQoX19jcGx1c3BsdXMpCnwgaW50IGlvY3RsIChpbnQgZmQsIGludCByZXF1
ZXN0LCB2b2lkKiBhcmcpOwp8ICNlbHNlCnwgaW50IGlvY3RsKCk7CnwgI2VuZGlmCnwgCnwgaW50
CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIwNzI3
OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMjIwNjRdIEVSUk9SOiBjb21w
aWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMjE5MjYuaSBvbiBs
b2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTUxOiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMg
Zm9yICdpb2N0bCcKL3Vzci9pbmNsdWRlL3N5cy9pb2N0bC5oOjQyOiBlcnJvcjogcHJldmlvdXMg
ZGVjbGFyYXRpb24gb2YgJ2lvY3RsJyB3YXMgaGVyZQpjb25maWd1cmU6MjA3MzM6ICQ/ID0gMQpj
b25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAj
ZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F
ICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwg
I2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNk
ZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmlu
ZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T
WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ
Q1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwg
I2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVm
aW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dF
VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdW
IDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcg
MQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5l
IEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVf
SU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwg
I2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhB
VkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NB
RkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9Y
MTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5f
dAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZB
TCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAj
ZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFM
QkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJ
R0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQ
VV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UK
fCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAj
ZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZp
bmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmlu
ZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NF
VFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwg
I2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmlu
ZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVf
VUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAx
CnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZp
bmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9V
TlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVO
Vl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VU
UkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElN
X1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8
ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK
fCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhB
VkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmlu
ZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNB
R0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVf
VCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xT
VEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB
VEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFS
X0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZT
RklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5l
IEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFU
X1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RF
Vl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxP
T1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8
IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2lmZGVm
IEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUgPHVuaXN0
ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAKfCAjaWZkZWYgSU5DTFVE
RV9TWVNfSU9DVExfSAp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAjZW5kaWYKfCAKfCBleHRl
cm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChf
X1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBpbnQgaW9jdGwgKGludCBmZCwgdW5z
aWduZWQgbG9uZyByZXF1ZXN0LCB2b2lkKiBhcmcpOwp8ICNlbHNlCnwgaW50IGlvY3RsKCk7Cnwg
I2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0K
Y29uZmlndXJlOjIwNzI3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMjIx
MjFdIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGlu
dXguMjIwNzkuaSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTUxOiBlcnJvcjogY29u
ZmxpY3RpbmcgdHlwZXMgZm9yICdpb2N0bCcKL3Vzci9pbmNsdWRlL3N5cy9pb2N0bC5oOjQyOiBl
cnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2lvY3RsJyB3YXMgaGVyZQpjb25maWd1cmU6
MjA3MzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm
cy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUg
UEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAo
MjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIw
MDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25z
Lm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhf
UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZu
ZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZF
X0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwg
I2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZp
bmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUg
SEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19I
RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEK
fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNk
ZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVf
TkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19J
UENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19I
IDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNk
ZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8
ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09D
S0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVP
Rl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhB
VkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lk
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8
ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwg
I2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwg
I2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVm
aW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9S
VF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RS
RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxF
U0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwg
I2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUg
SEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9T
VEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEK
fCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm
aW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVB
TFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8
ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwg
I2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVm
aW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3Js
aW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JL
IDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdf
Rk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0Vf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdF
CnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZp
bmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg
I2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNk
ZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9S
REVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBI
QVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNk
ZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUg
RUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5l
IEhBVkVfSU9DVEwgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3Rk
bGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cnwg
I2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAK
fCAjaWZkZWYgSU5DTFVERV9TWVNfSU9DVExfSAp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAj
ZW5kaWYKfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAK
fCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBpbnQgaW9j
dGwgKGludCBmZCwgbG9uZyByZXF1ZXN0LCB2b2lkKiBhcmcpOwp8ICNlbHNlCnwgaW50IGlvY3Rs
KCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAw
Owp8IH0KY29uZmlndXJlOjIwNzI3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0
Y2NbMjIzMjddIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90
b3otbGludXguMjIxNTAuaSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTUxOiBlcnJv
cjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdpb2N0bCcKL3Vzci9pbmNsdWRlL3N5cy9pb2N0bC5o
OjQyOiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2lvY3RsJyB3YXMgaGVyZQpjb25m
aWd1cmU6MjA3MzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj
b25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNk
ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Mi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIu
MzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlz
cC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURF
UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBf
UE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQK
fCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmlu
ZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05M
UyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8
ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNk
ZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUg
U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9P
TF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0gg
MQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5l
IEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RF
Uk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRU
Ugp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9D
VExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZp
bmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5l
IFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVm
aW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQ
RSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19Q
T1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJM
T0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQ
VCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cK
fCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmlu
ZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhB
VkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VU
RFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJ
RCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNk
ZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVf
R0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNM
RUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK
fCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhB
VkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRF
TlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJP
TiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VT
IDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEK
fCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51
bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2Rl
ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZF
X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP
UktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVT
T1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VU
UlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8
ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElN
RSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
fCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1Qg
OAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RB
VF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2Rl
ZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1Qg
OAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNk
ZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAj
ZGVmaW5lIEhBVkVfSU9DVEwgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVk
ZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVz
Lmg+CnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvaW9jdGwu
aD4KfCAKfCAjaWZkZWYgSU5DTFVERV9TWVNfSU9DVExfSAp8ICNpbmNsdWRlIDxzeXMvaW9jdGwu
aD4KfCAjZW5kaWYKfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5k
aWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBp
bnQgaW9jdGwgKGludCBmZCwgaW50IHJlcXVlc3QsIC4uLik7CnwgI2Vsc2UKfCBpbnQgaW9jdGwo
KTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7
CnwgfQpjb25maWd1cmU6MjA3Mjc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToyMDczMzogJD8gPSAwCmNvbmZpZ3VyZToyMDczNzogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIwNzQwOiAkPyA9IDAKY29uZmlndXJlOjIwNzQz
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIwNzQ2OiAkPyA9IDAKY29uZmlndXJlOjIw
NzgxOiByZXN1bHQ6IAogICAgICAgICBleHRlcm4gaW50IGlvY3RsIChpbnQsIHVuc2lnbmVkIGxv
bmcsIC4uLik7CmNvbmZpZ3VyZToyMDgwNTogY2hlY2tpbmcgZm9yIEZJT05SRUFECmNvbmZpZ3Vy
ZToyMDgyNzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzIyNjQ1XSBFUlJP
UjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjIyNTI1
Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNv
bmZ0ZXN0LmM6MTY0OiBlcnJvcjogJ0ZJT05SRUFEJyB1bmRlY2xhcmVkIChmaXJzdCB1c2UgaW4g
dGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzoxNjQ6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlk
ZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6MTY0OiBlcnJvcjogZm9y
IGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmNvbmZpZ3VyZToyMDgzMzogJD8gPSAxCmNv
bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNk
ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg
ImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAj
ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2Rl
ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5l
IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ
U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf
SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD
UyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAj
ZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp
bmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VU
VEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1Yg
MQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAx
CnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
SEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9J
TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
RklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAj
ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5l
IEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFW
RV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FG
TFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gx
MQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90
CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFM
IDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk
ZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05B
TEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lH
QUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBV
X0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8
ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNk
ZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmlu
ZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l
IEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VU
UEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj
ZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5l
IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9V
QUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEK
fCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu
ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VO
U0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5W
X1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRS
TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1f
VCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwg
I2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFW
RV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5l
IFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FH
RV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9U
IHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNU
QVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJf
RlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNG
SUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUg
SEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf
U1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVW
X1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9P
UAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwg
I2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9U
Uwp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2lm
ZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUgPHVu
aXN0ZC5oPgp8ICNlbmRpZgp8ICNpZm5kZWYgSEFWRV9UQ1NBRkxVU0gKfCAjdW5kZWYgSEFWRV9U
RVJNSU9TX0gKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9URVJNSU9TX0gKfCAjaW5jbHVkZSA8dGVy
bWlvcy5oPgp8ICNlbHNlCnwgI2lmZGVmIEhBVkVfU1lTX1RFUk1JT19ICnwgI2luY2x1ZGUgPHN5
cy90ZXJtaW8uaD4KfCAjZWxzZQp8ICNpZmRlZiBIQVZFX1RFUk1JT19ICnwgI2luY2x1ZGUgPHRl
cm1pby5oPgp8ICNlbHNlCnwgI2lmZGVmIEhBVkVfU0dUVFlfSAp8ICNpbmNsdWRlIDxzZ3R0eS5o
Pgp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAjZW5kaWYKfCAjZW5kaWYKfCAjZW5kaWYKfCAj
ZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IGludCB4ID0gRklPTlJFQUQ7CnwgICA7Cnwg
ICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMDg1OTogcmVzdWx0OiBubwpjb25maWd1cmU6MjA4
NjU6IGNoZWNraW5nIGZvciBGSU9OUkVBRCBpbiBzeXMvZmlsaW8uaApjb25maWd1cmU6MjA4ODc6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syMjgxOF0gRVJST1I6IGNvbXBp
bGUgKG51bGwpIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxNjA6MjM6IGVycm9yOiBz
eXMvZmlsaW8uaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25mdGVzdC5jOiBJbiBmdW5j
dGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MTY0OiBlcnJvcjogJ0ZJT05SRUFEJyB1bmRlY2xhcmVk
IChmaXJzdCB1c2UgaW4gdGhpcyBmdW5jdGlvbikKY29uZnRlc3QuYzoxNjQ6IGVycm9yOiAoRWFj
aCB1bmRlY2xhcmVkIGlkZW50aWZpZXIgaXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6
MTY0OiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbi4pCmRpc3RjY1syMjgx
N10gRVJST1I6IGNvbXBpbGUgY29uZnRlc3QuYyBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZpZ3Vy
ZToyMDg5MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk
ZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmlu
ZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4
ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAo
MjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNv
bnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx
CnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAx
CnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNk
ZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmlu
ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJ
WF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNp
Zm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhB
VkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEK
fCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2Rl
ZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmlu
ZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G
SUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0gg
MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFW
RV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlP
X0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwg
I2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9I
CnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBT
T0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0la
RU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUg
SEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZv
aWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lY
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sK
fCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEK
fCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNk
ZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFC
T1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9T
VFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFC
TEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEK
fCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmlu
ZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRI
T1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAg
MQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNk
ZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9S
RUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAx
CnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEK
fCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8
ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNk
ZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9f
cmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5l
IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZP
UksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lO
R19GT1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJD
RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNB
R0UKfCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2Rl
ZmluZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEK
fCAjZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4Cnwg
I2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NU
X1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5l
IEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4Cnwg
I2RlZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmlu
ZSBFTE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZp
bmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8
ICNkZWZpbmUgSU9DVExfRE9UUwp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVk
ZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8c3lzL3R5cGVz
Lmg+CnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpZm5kZWYgSEFWRV9UQ1NBRkxV
U0gKfCAjdW5kZWYgSEFWRV9URVJNSU9TX0gKfCAjZW5kaWYKfCAjaWZkZWYgSEFWRV9URVJNSU9T
X0gKfCAjaW5jbHVkZSA8dGVybWlvcy5oPgp8ICNlbHNlCnwgI2lmZGVmIEhBVkVfU1lTX1RFUk1J
T19ICnwgI2luY2x1ZGUgPHN5cy90ZXJtaW8uaD4KfCAjZWxzZQp8ICNpZmRlZiBIQVZFX1RFUk1J
T19ICnwgI2luY2x1ZGUgPHRlcm1pby5oPgp8ICNlbHNlCnwgI2lmZGVmIEhBVkVfU0dUVFlfSAp8
ICNpbmNsdWRlIDxzZ3R0eS5oPgp8ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KfCAjZW5kaWYKfCAj
ZW5kaWYKfCAjZW5kaWYKfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL2ZpbGlvLmg+CnwgaW50Cnwg
bWFpbiAoKQp8IHsKfCBpbnQgeCA9IEZJT05SRUFEOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpj
b25maWd1cmU6MjA5MTk6IHJlc3VsdDogbm8KY29uZmlndXJlOjIwOTMxOiBjaGVja2luZyBmb3Ig
RklPTlJFQUQgaW4gc3lzL2lvY3RsLmgKY29uZmlndXJlOjIwOTUzOiBnY2MgLWMgLWcgLU8yICBj
b25mdGVzdC5jID4mNQpjb25maWd1cmU6MjA5NTk6ICQ/ID0gMApjb25maWd1cmU6MjA5NjM6IHRl
c3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMDk2NjogJD8g
PSAwCmNvbmZpZ3VyZToyMDk2OTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMDk3Mjog
JD8gPSAwCmNvbmZpZ3VyZToyMDk4NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMDA1OiBjaGVj
a2luZyBmb3IgcmVsaWFibGUgRklPTlJFQUQKY29uZmlndXJlOjIxMDQ3OiBnY2MgLW8gY29uZnRl
c3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMTA1MDogJD8gPSAwCmNvbmZp
Z3VyZToyMTA1MjogLi9jb25mdGVzdApjb25maWd1cmU6MjEwNTU6ICQ/ID0gMApjb25maWd1cmU6
MjEwNzA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTA4MzogY2hlY2tpbmcgZm9yIHBvbGwKY29u
ZmlndXJlOjIxMTQwOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNv
bmZpZ3VyZToyMTE0NjogJD8gPSAwCmNvbmZpZ3VyZToyMTE1MDogdGVzdCAteiAKCQkJIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIxMTUzOiAkPyA9IDAKY29uZmlndXJlOjIx
MTU2OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyMTE1OTogJD8gPSAwCmNvbmZpZ3VyZToy
MTE3MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMjMzOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8y
ICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMTIzNjogJD8gPSAwCmNvbmZpZ3VyZToyMTIz
ODogLi9jb25mdGVzdApjb25maWd1cmU6MjEyNDE6ICQ/ID0gMApjb25maWd1cmU6MjEyNjU6IGNo
ZWNraW5nIGZvciByZWxpYWJsZSBwb2xsKCkKY29uZmlndXJlOjIxMzMxOiBnY2MgLW8gY29uZnRl
c3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWlu
JzoKY29uZnRlc3QuYzoxODU6IHdhcm5pbmc6IGluY29tcGF0aWJsZSBpbXBsaWNpdCBkZWNsYXJh
dGlvbiBvZiBidWlsdC1pbiBmdW5jdGlvbiAnZXhpdCcKY29uZmlndXJlOjIxMzM0OiAkPyA9IDAK
Y29uZmlndXJlOjIxMzM2OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyMTMzOTogJD8gPSAwCmNvbmZp
Z3VyZToyMTM1NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxMzY2OiBjaGVja2luZyBmb3Igc2Vs
ZWN0CmNvbmZpZ3VyZToyMTQwMzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMg
ID4mNQpjb25maWd1cmU6MjE0MDk6ICQ/ID0gMApjb25maWd1cmU6MjE0MTM6IHRlc3QgLXogCgkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMTQxNjogJD8gPSAwCmNvbmZp
Z3VyZToyMTQxOTogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjE0MjI6ICQ/ID0gMApjb25m
aWd1cmU6MjE0MzQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMTQ0MjogY2hlY2tpbmcgZm9yIHN5
cy9zZWxlY3QuaApjb25maWd1cmU6MjE0Njg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
CmNvbmZpZ3VyZToyMTQ3NDogJD8gPSAwCmNvbmZpZ3VyZToyMTQ3ODogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIxNDgxOiAkPyA9IDAKY29uZmlndXJl
OjIxNDg0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIxNDg3OiAkPyA9IDAKY29uZmln
dXJlOjIxNTAwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE1MDk6IGNoZWNraW5nIGZvciBzZWxl
Y3QgZGVjbGFyYXRpb24KY29uZmlndXJlOjIxNTU5OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5j
ID4mNQpjb25maWd1cmU6MjE1NjU6ICQ/ID0gMApjb25maWd1cmU6MjE1Njk6IHRlc3QgLXogCgkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMTU3MjogJD8gPSAwCmNvbmZp
Z3VyZToyMTU3NTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMTU3ODogJD8gPSAwCmNv
bmZpZ3VyZToyMTYwODogcmVzdWx0OiAKICAgICAgICAgZXh0ZXJuIGludCBzZWxlY3QgKGludCwg
ZmRfc2V0ICosIGZkX3NldCAqLCBmZF9zZXQgKiwgc3RydWN0IHRpbWV2YWwgKik7CmNvbmZpZ3Vy
ZToyMTYyOTogY2hlY2tpbmcgZm9yIHJlbGlhYmxlIHNlbGVjdCgpCmNvbmZpZ3VyZToyMTcwOTog
Z2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjE3MTI6
ICQ/ID0gMApjb25maWd1cmU6MjE3MTQ6IC4vY29uZnRlc3QKY29uZmlndXJlOjIxNzE3OiAkPyA9
IDAKY29uZmlndXJlOjIxNzMyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjE3NDk6IGNoZWNraW5n
IGZvciBnZXR0aW1lb2ZkYXkKY29uZmlndXJlOjIxODA2OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8y
ICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMTgxMjogJD8gPSAwCmNvbmZpZ3VyZToyMTgx
NjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIxODE5
OiAkPyA9IDAKY29uZmlndXJlOjIxODIyOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyMTgy
NTogJD8gPSAwCmNvbmZpZ3VyZToyMTgzNzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIxODQ3OiBj
aGVja2luZyBmb3IgZ2V0dGltZW9mZGF5IGRlY2xhcmF0aW9uCmNvbmZpZ3VyZToyMTg4MzogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIxODg5OiAkPyA9IDAKY29uZmln
dXJlOjIxODkzOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6MjE4OTY6ICQ/ID0gMApjb25maWd1cmU6MjE4OTk6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25m
aWd1cmU6MjE5MDI6ICQ/ID0gMApjb25maWd1cmU6MjE5ODE6IHJlc3VsdDogCiAgICAgICAgIGV4
dGVybiBpbnQgZ2V0dGltZW9mZGF5IChzdHJ1Y3QgdGltZXZhbCAqLCBzdHJ1Y3QgdGltZXpvbmUg
Kik7CmNvbmZpZ3VyZToyMjE3NDogY2hlY2tpbmcgZm9yIGdldGhvc3RuYW1lCmNvbmZpZ3VyZToy
MjIzMTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6
MjIyMzc6ICQ/ID0gMApjb25maWd1cmU6MjIyNDE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMg
Y29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMjI0NDogJD8gPSAwCmNvbmZpZ3VyZToyMjI0NzogdGVz
dCAtcyBjb25mdGVzdApjb25maWd1cmU6MjIyNTA6ICQ/ID0gMApjb25maWd1cmU6MjIyNjI6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToyMjQzMDogY2hlY2tpbmcgZm9yIGNvbm5lY3QKY29uZmlndXJl
OjIyNDg3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy
ZToyMjQ5MzogJD8gPSAwCmNvbmZpZ3VyZToyMjQ5NzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIyNTAwOiAkPyA9IDAKY29uZmlndXJlOjIyNTAzOiB0
ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyMjUwNjogJD8gPSAwCmNvbmZpZ3VyZToyMjUxODog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNTI5OiBjaGVja2luZyBmb3IgY29ubmVjdCBkZWNsYXJh
dGlvbgpjb25maWd1cmU6MjI1NzI6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3Rj
Y1syNTM4Ml0gRVJST1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rv
ei1saW51eC4yNTMyOS5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxNjQ6IGVycm9y
OiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2Nvbm5lY3QnCi91c3IvaW5jbHVkZS9zeXMvc29ja2V0
Lmg6MTI0OiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2Nvbm5lY3QnIHdhcyBoZXJl
CmNvbmZpZ3VyZToyMjU3ODogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8
IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1Ai
CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJT
SU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJ
U1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDov
L2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENf
SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
X0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAx
CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg
I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVm
aW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklU
UyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAj
ZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFC
TEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVY
VCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJu
CnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2Rl
ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9T
VERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJ
TEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNk
ZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhB
VkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENH
RVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZ
U19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90Cnwg
I2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNk
ZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8
ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRT
SUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJM
T0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVE
X1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5U
RVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRG
UFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAj
ZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZp
bmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFW
RV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVf
U0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAx
CnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUg
SEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFW
RV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElN
RVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZp
bmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZF
X1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9F
TlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVT
U0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElN
SVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0Vf
VCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QK
fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5l
IEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhB
VkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZ
U19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFW
RV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VU
Q1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZ
U19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
X0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtD
TlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVD
VF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEK
fCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9J
Tk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAx
CnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGlu
dAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWdu
ZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8
ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8
ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZp
bmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNF
TEVDVF9XSURUSF9UIGludAp8ICNkZWZpbmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUg
U0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhB
VkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGlt
ZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhP
U1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq
Lwp8IAp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRp
Zgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8IAp8
IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZp
bmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQp8IGludCBjb25uZWN0IChpbnQg
ZmQsICBzdHJ1Y3Qgc29ja2FkZHIgKiBuYW1lLCBpbnQgbmFtZWxlbik7CnwgI2Vsc2UKfCBpbnQg
Y29ubmVjdCgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7CnwgICBy
ZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMjU3MjogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
JjUKZGlzdGNjWzI1NDgwXSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRlc3Qu
dG1wLnRvdG96LWxpbnV4LjI1NDI0Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjE2
NDogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnY29ubmVjdCcKL3Vzci9pbmNsdWRlL3N5
cy9zb2NrZXQuaDoxMjQ6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAnY29ubmVjdCcg
d2FzIGhlcmUKY29uZmlndXJlOjIyNTc4OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
bSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdO
VSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNL
QUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg
IkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
ICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZp
bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFW
RV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS
SU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElO
VF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18g
MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09G
RlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNl
bmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVm
aW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVf
RENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9p
ZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xP
TkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmlu
ZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFN
RV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNk
ZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUg
SEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpF
X05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNh
ZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZf
VCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExP
Q0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVm
aW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUg
U0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lH
TkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFW
RV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBI
QVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUg
dm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNM
CnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2Rl
ZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZp
bmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVf
RkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwg
I2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2Rl
ZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZF
X1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAx
CnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVm
aW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFW
RV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFW
RV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZF
X1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9S
RVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05T
VCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8
ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNk
ZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5l
IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2Rl
ZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUg
SEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1F
X1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNf
U1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVP
Rl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhB
VkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JM
S1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUg
U0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JF
QURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJ
UlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIElPQ1RMX1JFUVVFU1Rf
VCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJT0NUTF9ET1RTCnwgI2RlZmluZSBORUVEX1NZU19J
T0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJ
T05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9QT0xM
CnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAp8ICNk
ZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50CnwgI2RlZmluZSBTRUxFQ1RfU0VUX1QgZmRfc2V0Cnwg
I2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1NFTEVDVAp8ICNk
ZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0
cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhB
VkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAvKiBlbmQgY29uZmRl
ZnMuaC4gICovCnwgCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8dW5pc3RkLmg+
CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvc29ja2V0
Lmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwgCnwg
I2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19jcGx1c3BsdXMpCnwgaW50IGNvbm5l
Y3QgKGludCBmZCwgIHN0cnVjdCBzb2NrYWRkciAqIG5hbWUsIHNpemVfdCBuYW1lbGVuKTsKfCAj
ZWxzZQp8IGludCBjb25uZWN0KCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCAK
fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIyNTcyOiBnY2MgLWMgLWcgLU8yICBj
b25mdGVzdC5jID4mNQpkaXN0Y2NbMjU2MzRdIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNo
ZS9jb25mdGVzdC50bXAudG90b3otbGludXguMjU0OTUuaSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNv
bmZ0ZXN0LmM6MTY0OiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdjb25uZWN0JwovdXNy
L2luY2x1ZGUvc3lzL3NvY2tldC5oOjEyNDogZXJyb3I6IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9m
ICdjb25uZWN0JyB3YXMgaGVyZQpjb25maWd1cmU6MjI1Nzg6ICQ/ID0gMQpjb25maWd1cmU6IGZh
aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tB
R0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAj
ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNL
QUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FH
RV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJD
RSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg
I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VY
VEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp
bmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kz
ODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NP
TlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNk
ZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5l
IHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUg
SEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5J
U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VU
T0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZF
X1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1J
T1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAx
CnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVm
aW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5l
IENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUg
U0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmlu
ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVf
X0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNW
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwg
I2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwg
I2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QK
fCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJF
VEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVf
UEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVND
T05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNF
VCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNk
ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZF
X0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRE
T1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBI
QVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRF
TlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwg
I2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwg
I2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZp
bmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VU
UkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB
VkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19W
Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRf
dAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F
U19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50
CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAj
ZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNk
ZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8
ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU
X1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAx
CnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVm
aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5l
IFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9D
VExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5l
IE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVf
UkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JF
TElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF
TEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRf
VCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVf
U0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZE
QVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8
ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8IC8q
IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICNpbmNsdWRl
IDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUg
PHN5cy9zb2NrZXQuaD4KfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAj
ZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykK
fCBpbnQgY29ubmVjdCAoaW50IGZkLCAgc3RydWN0IHNvY2thZGRyICogbmFtZSwgc29ja2xlbl90
IG5hbWVsZW4pOwp8ICNlbHNlCnwgaW50IGNvbm5lY3QoKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBt
YWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjI1NzI6IGdj
YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syNTcyNl0gRVJST1I6IGNvbXBpbGUg
L3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4yNTY1Mi5pIG9uIGxvY2Fs
aG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxNjQ6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3Ig
J2Nvbm5lY3QnCi91c3IvaW5jbHVkZS9zeXMvc29ja2V0Lmg6MTI0OiBlcnJvcjogcHJldmlvdXMg
ZGVjbGFyYXRpb24gb2YgJ2Nvbm5lY3QnIHdhcyBoZXJlCmNvbmZpZ3VyZToyMjU3ODogJD8gPSAx
CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8
ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B
TUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIK
fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwg
I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVm
aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF
X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P
UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK
fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO
VElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18K
fCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNk
ZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVf
R0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF
R1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9O
RyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZp
bmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQK
fCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVm
aW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUg
SEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RD
U0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZF
X1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xl
bl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1F
VkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8
ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJ
R05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVf
U0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVf
RlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlT
RQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8
ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2Rl
ZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVm
aW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf
U0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK
fCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVm
aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFW
RV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNF
IDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2Rl
ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZF
X1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VU
RU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9H
RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JM
SU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNl
CnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg
MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg
SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVm
aW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJV
U0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0la
RV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf
TFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FM
QVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0Zf
RlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NU
QVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0Zf
REVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBF
TE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAx
CnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExf
RE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8
ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAj
ZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZp
bmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUg
SEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVm
aW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVf
Q09OTkVDVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpZmRlZiBIQVZFX1VOSVNU
RF9ICnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMu
aD4KfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVz
cGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVk
KF9fY3BsdXNwbHVzKQp8IGludCBjb25uZWN0IChpbnQgZmQsICB2b2lkKiBuYW1lLCBpbnQgbmFt
ZWxlbik7CnwgI2Vsc2UKfCBpbnQgY29ubmVjdCgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4g
KCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMjU3MjogZ2NjIC1j
IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzI1OTAxXSBFUlJPUjogY29tcGlsZSAvdmFy
L3RtcC9jY2FjaGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjI1NzgxLmkgb24gbG9jYWxob3N0
IGZhaWxlZApjb25mdGVzdC5jOjE2NDogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnY29u
bmVjdCcKL3Vzci9pbmNsdWRlL3N5cy9zb2NrZXQuaDoxMjQ6IGVycm9yOiBwcmV2aW91cyBkZWNs
YXJhdGlvbiBvZiAnY29ubmVjdCcgd2FzIGhlcmUKY29uZmlndXJlOjIyNTc4OiAkPyA9IDEKY29u
ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2Rl
ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi
Y2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNk
ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVm
aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUg
X0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I
IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk
ZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNT
IDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNk
ZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmlu
ZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU
RVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAx
CnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEK
fCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
QVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lO
VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G
SUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNk
ZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUg
SEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZF
X1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZM
VVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDEx
CnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QK
fCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwg
OAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2Rl
ZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFM
QkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJM
T0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdB
Q1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVf
Q09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwg
I2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2Rl
ZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5l
IEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg
SEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQ
R0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk
ZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUg
SEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VB
TEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8
ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5l
IEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5T
RVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZf
UE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJM
SU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9U
IDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAj
ZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZF
X1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUg
UElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdF
X1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qg
c2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RB
VAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRG
U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9G
U0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJ
TENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBI
QVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9T
VF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZf
VCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09Q
CnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAj
ZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJT0NUTF9ET1RT
CnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05SRUFECnwgI2Rl
ZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZp
bmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50CnwgI2RlZmluZSBT
RUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2RlZmluZSBIQVZF
X1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUg
R0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBIQVZFX0dFVEhP
U1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUgSEFWRV9DT05O
RUNUIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2lmZGVmIEhBVkVfVU5JU1REX0gK
fCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8
ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVz
CnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19j
cGx1c3BsdXMpCnwgaW50IGNvbm5lY3QgKGludCBmZCwgIHZvaWQqIG5hbWUsIHNpemVfdCBuYW1l
bGVuKTsKfCAjZWxzZQp8IGludCBjb25uZWN0KCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAo
KQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIyNTcyOiBnY2MgLWMg
LWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMjU5ODNdIEVSUk9SOiBjb21waWxlIC92YXIv
dG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMjU5MTYuaSBvbiBsb2NhbGhvc3Qg
ZmFpbGVkCmNvbmZ0ZXN0LmM6MTY0OiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdjb25u
ZWN0JwovdXNyL2luY2x1ZGUvc3lzL3NvY2tldC5oOjEyNDogZXJyb3I6IHByZXZpb3VzIGRlY2xh
cmF0aW9uIG9mICdjb25uZWN0JyB3YXMgaGVyZQpjb25maWd1cmU6MjI1Nzg6ICQ/ID0gMQpjb25m
aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVm
aW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJj
bGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2Rl
ZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZp
bmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBf
R05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM
SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
ZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1Mg
MQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2Rl
ZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5l
IElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRF
WFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEK
fCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8
ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l
IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhB
VkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5U
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJ
TEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2Rl
ZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBI
QVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVf
U0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxV
U0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEK
fCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8
ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4
CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVm
aW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxP
Q0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FD
VElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9D
T05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAj
ZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVm
aW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUg
SEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBI
QVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBH
SUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2Rl
ZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBI
QVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFM
QVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwg
I2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUg
SEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNF
VEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9Q
T1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJ
TUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1Qg
OAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNk
ZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVf
V09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQ
SURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0Vf
V0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBz
aXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFU
CnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZT
SUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklM
Q05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhB
VkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NU
X0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9U
IDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AK
fCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNk
ZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMK
fCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVm
aW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmlu
ZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNF
TEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVf
UkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBH
RVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9T
VE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5F
Q1QgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8
ICNpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cnwg
I2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMK
fCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2Nw
bHVzcGx1cykKfCBpbnQgY29ubmVjdCAoaW50IGZkLCAgdm9pZCogbmFtZSwgc29ja2xlbl90IG5h
bWVsZW4pOwp8ICNlbHNlCnwgaW50IGNvbm5lY3QoKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWlu
ICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjI1NzI6IGdjYyAt
YyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syNjExMl0gRVJST1I6IGNvbXBpbGUgL3Zh
ci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4yNjA2MC5pIG9uIGxvY2FsaG9z
dCBmYWlsZWQKY29uZnRlc3QuYzoxNjQ6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2Nv
bm5lY3QnCi91c3IvaW5jbHVkZS9zeXMvc29ja2V0Lmg6MTI0OiBlcnJvcjogcHJldmlvdXMgZGVj
bGFyYXRpb24gb2YgJ2Nvbm5lY3QnIHdhcyBoZXJlCmNvbmZpZ3VyZToyMjU3ODogJD8gPSAxCmNv
bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNk
ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg
ImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAj
ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2Rl
ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5l
IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ
U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf
SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD
UyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAj
ZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp
bmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VU
VEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1Yg
MQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAx
CnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
SEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9J
TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
RklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAj
ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5l
IEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFW
RV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FG
TFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gx
MQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90
CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFM
IDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk
ZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05B
TEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lH
QUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBV
X0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8
ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNk
ZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmlu
ZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l
IEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VU
UEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj
ZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5l
IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9V
QUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEK
fCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu
ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VO
U0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5W
X1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRS
TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1f
VCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwg
I2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFW
RV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5l
IFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FH
RV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9U
IHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNU
QVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJf
RlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNG
SUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUg
SEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf
U1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVW
X1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9P
UAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwg
I2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9U
Uwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8ICNk
ZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVm
aW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg
SEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZpbmUg
U0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUgSEFW
RV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l
IEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9HRVRI
T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVfQ09O
TkVDVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpZmRlZiBIQVZFX1VOSVNURF9I
CnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K
fCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1
cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9f
Y3BsdXNwbHVzKQp8IGludCBjb25uZWN0IChpbnQgZmQsIGNvbnN0IHN0cnVjdCBzb2NrYWRkciAq
IG5hbWUsIGludCBuYW1lbGVuKTsKfCAjZWxzZQp8IGludCBjb25uZWN0KCk7CnwgI2VuZGlmCnwg
CnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJl
OjIyNTcyOiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjI1Nzg6ICQ/
ID0gMApjb25maWd1cmU6MjI1ODI6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyCmNvbmZpZ3VyZToyMjU4NTogJD8gPSAwCmNvbmZpZ3VyZToyMjU4ODogdGVzdCAtcyBjb25m
dGVzdC5vCmNvbmZpZ3VyZToyMjU5MTogJD8gPSAwCmNvbmZpZ3VyZToyMjYyMTogcmVzdWx0OiAK
ICAgICAgICAgZXh0ZXJuIGludCBjb25uZWN0IChpbnQsIGNvbnN0IHN0cnVjdCBzb2NrYWRkciAq
LCBzaXplX3QpOwpjb25maWd1cmU6MjI2NTU6IGNoZWNraW5nIHN5cy91bi5oIHVzYWJpbGl0eQpj
b25maWd1cmU6MjI2Njc6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToy
MjY3MzogJD8gPSAwCmNvbmZpZ3VyZToyMjY3NzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBj
b25mdGVzdC5lcnIKY29uZmlndXJlOjIyNjgwOiAkPyA9IDAKY29uZmlndXJlOjIyNjgzOiB0ZXN0
IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIyNjg2OiAkPyA9IDAKY29uZmlndXJlOjIyNjk2OiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6MjI3MDA6IGNoZWNraW5nIHN5cy91bi5oIHByZXNlbmNlCmNv
bmZpZ3VyZToyMjcxMDogZ2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyMjcxNjogJD8gPSAw
CmNvbmZpZ3VyZToyMjczNjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIyNzcxOiBjaGVja2luZyBm
b3Igc3lzL3VuLmgKY29uZmlndXJlOjIyNzc4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjI3OTE6
IGNoZWNraW5nIGZvciBzdW5fbGVuIGluIHN0cnVjdCBzb2NrYWRkcl91bgpjb25maWd1cmU6MjI4
MTQ6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syNjY5Nl0gRVJST1I6IGNv
bXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4yNjY4NS5pIG9u
IGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVz
dC5jOjE2MDogZXJyb3I6ICdzdHJ1Y3Qgc29ja2FkZHJfdW4nIGhhcyBubyBtZW1iZXIgbmFtZWQg
J3N1bl9sZW4nCmNvbmZpZ3VyZToyMjgyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJH
TlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFD
S0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H
ICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S
VCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVm
aW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhB
VkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJ
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19f
IDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9P
RkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAj
ZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2Rl
ZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZF
X0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3Zv
aWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdM
T05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZp
bmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05B
TUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAj
ZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5l
IEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0la
RV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBj
YWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZG
X1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxM
T0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2Rl
ZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5l
IFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJ
R05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhB
VkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUg
SEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBF
IHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVD
TAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNk
ZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVm
aW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZF
X0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8
ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNk
ZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFW
RV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUg
MQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2Rl
ZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhB
VkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhB
VkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFW
RV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRf
UkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09O
U1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEK
fCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAj
ZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmlu
ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5l
IEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElN
RV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lT
X1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpF
T0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBI
QVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9C
TEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5l
IFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9S
RUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VE
SVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNU
X1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNf
SU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9G
SU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9M
TAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAj
ZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZpbmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8
ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAj
ZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBz
dHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBI
QVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBDT05O
RUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05ORUNUX05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIg
Kgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qgc2l6ZV90CnwgI2RlZmluZSBIQVZFX1NZU19V
Tl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPiAv
KiBOZXRCU0QgMS4wIG5lZWRzIHRoaXMgKi8KfCAjaW5jbHVkZSA8c3lzL3VuLmg+CnwgaW50Cnwg
bWFpbiAoKQp8IHsKfCBzdHJ1Y3Qgc29ja2FkZHJfdW4gdW5hZGRyOyB1bmFkZHIuc3VuX2xlbjsK
fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIyODQ2OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZToyMjg1NzogY2hlY2tpbmcgZm9yIElQdjQgc29ja2V0cwpjb25maWd1cmU6MjI4ODE6IGdj
YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMjg4NzogJD8gPSAwCmNvbmZp
Z3VyZToyMjg5MTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjIyODk0OiAkPyA9IDAKY29uZmlndXJlOjIyODk3OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29u
ZmlndXJlOjIyOTAwOiAkPyA9IDAKY29uZmlndXJlOjIyOTEzOiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MjI5MjM6IGNoZWNraW5nIGZvciBJUHY2IHNvY2tldHMKY29uZmlndXJlOjIyOTQ3OiBnY2Mg
LWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjI5NTM6ICQ/ID0gMApjb25maWd1
cmU6MjI5NTc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3Vy
ZToyMjk2MDogJD8gPSAwCmNvbmZpZ3VyZToyMjk2MzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZp
Z3VyZToyMjk2NjogJD8gPSAwCmNvbmZpZ3VyZToyMjk3OTogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjIzMDcwOiBjaGVja2luZyBmb3IgaW5ldF9wdG9uCmNvbmZpZ3VyZToyMzEyNzogZ2NjIC1vIGNv
bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjMxMzM6ICQ/ID0gMApj
b25maWd1cmU6MjMxMzc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNv
bmZpZ3VyZToyMzE0MDogJD8gPSAwCmNvbmZpZ3VyZToyMzE0MzogdGVzdCAtcyBjb25mdGVzdApj
b25maWd1cmU6MjMxNDY6ICQ/ID0gMApjb25maWd1cmU6MjMxNTg6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToyMzA3MDogY2hlY2tpbmcgZm9yIGluZXRfbnRvcApjb25maWd1cmU6MjMxMjc6IGdjYyAt
byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIzMTMzOiAkPyA9
IDAKY29uZmlndXJlOjIzMTM3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MjMxNDA6ICQ/ID0gMApjb25maWd1cmU6MjMxNDM6IHRlc3QgLXMgY29uZnRl
c3QKY29uZmlndXJlOjIzMTQ2OiAkPyA9IDAKY29uZmlndXJlOjIzMTU4OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MjMwNzA6IGNoZWNraW5nIGZvciBpbmV0X2FkZHIKY29uZmlndXJlOjIzMTI3OiBn
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyMzEzMzog
JD8gPSAwCmNvbmZpZ3VyZToyMzEzNzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjIzMTQwOiAkPyA9IDAKY29uZmlndXJlOjIzMTQzOiB0ZXN0IC1zIGNv
bmZ0ZXN0CmNvbmZpZ3VyZToyMzE0NjogJD8gPSAwCmNvbmZpZ3VyZToyMzE1ODogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjIzMDcwOiBjaGVja2luZyBmb3Igc2V0c29ja29wdApjb25maWd1cmU6MjMx
Mjc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjIz
MTMzOiAkPyA9IDAKY29uZmlndXJlOjIzMTM3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycgpjb25maWd1cmU6MjMxNDA6ICQ/ID0gMApjb25maWd1cmU6MjMxNDM6IHRlc3Qg
LXMgY29uZnRlc3QKY29uZmlndXJlOjIzMTQ2OiAkPyA9IDAKY29uZmlndXJlOjIzMTU4OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MjMwNzA6IGNoZWNraW5nIGZvciBnZXRzb2Nrb3B0CmNvbmZpZ3Vy
ZToyMzEyNzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1
cmU6MjMxMzM6ICQ/ID0gMApjb25maWd1cmU6MjMxMzc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMzE0MDogJD8gPSAwCmNvbmZpZ3VyZToyMzE0Mzog
dGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MjMxNDY6ICQ/ID0gMApjb25maWd1cmU6MjMxNTg6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzE4MzogY2hlY2tpbmcgbmV0aW5ldC9pbi5oIHVzYWJp
bGl0eQpjb25maWd1cmU6MjMxOTU6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToyMzIwMTogJD8gPSAwCmNvbmZpZ3VyZToyMzIwNTogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIzMjA4OiAkPyA9IDAKY29uZmlndXJlOjIzMjEx
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjIzMjE0OiAkPyA9IDAKY29uZmlndXJlOjIz
MjI0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMyMjg6IGNoZWNraW5nIG5ldGluZXQvaW4uaCBw
cmVzZW5jZQpjb25maWd1cmU6MjMyMzg6IGdjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MjMy
NDQ6ICQ/ID0gMApjb25maWd1cmU6MjMyNjQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzI5OTog
Y2hlY2tpbmcgZm9yIG5ldGluZXQvaW4uaApjb25maWd1cmU6MjMzMDY6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToyMzE4MzogY2hlY2tpbmcgYXJwYS9pbmV0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToy
MzE5NTogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzMjAxOiAkPyA9
IDAKY29uZmlndXJlOjIzMjA1OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MjMyMDg6ICQ/ID0gMApjb25maWd1cmU6MjMyMTE6IHRlc3QgLXMgY29uZnRl
c3Qubwpjb25maWd1cmU6MjMyMTQ6ICQ/ID0gMApjb25maWd1cmU6MjMyMjQ6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToyMzIyODogY2hlY2tpbmcgYXJwYS9pbmV0LmggcHJlc2VuY2UKY29uZmlndXJl
OjIzMjM4OiBnY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjIzMjQ0OiAkPyA9IDAKY29uZmln
dXJlOjIzMjY0OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjMyOTk6IGNoZWNraW5nIGZvciBhcnBh
L2luZXQuaApjb25maWd1cmU6MjMzMDY6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyMzMxOTogY2hl
Y2tpbmcgZm9yIGluZXRfYWRkciBkZWNsYXJhdGlvbgpjb25maWd1cmU6MjMzNjg6IGdjYyAtYyAt
ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syOTMzOV0gRVJST1I6IGNvbXBpbGUgL3Zhci90
bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4yOTIxOC5pIG9uIGxvY2FsaG9zdCBm
YWlsZWQKY29uZnRlc3QuYzoxODQ6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ2luZXRf
YWRkcicKL3Vzci9pbmNsdWRlL2FycGEvaW5ldC5oOjM1OiBlcnJvcjogcHJldmlvdXMgZGVjbGFy
YXRpb24gb2YgJ2luZXRfYWRkcicgd2FzIGhlcmUKY29uZmlndXJlOjIzMzc0OiAkPyA9IDEKY29u
ZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2Rl
ZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi
Y2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNk
ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVm
aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUg
X0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
TElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9I
IDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk
ZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNT
IDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNk
ZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmlu
ZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRU
RVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAx
CnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEK
fCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
ZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
QVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lO
VFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G
SUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNk
ZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUg
SEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZF
X1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZM
VVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDEx
CnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QK
fCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwg
OAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2Rl
ZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFM
QkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJM
T0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdB
Q1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVf
Q09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwg
I2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2Rl
ZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5l
IEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUg
SEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQ
R0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNk
ZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUg
SEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VB
TEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8
ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5l
IEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5T
RVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZf
UE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJM
SU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9U
IDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAj
ZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZF
X1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUg
UElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdF
X1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qg
c2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RB
VAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRG
U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9G
U0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJ
TENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBI
QVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9T
VF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZf
VCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09Q
CnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAj
ZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJT0NUTF9ET1RT
CnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05SRUFECnwgI2Rl
ZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZp
bmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50CnwgI2RlZmluZSBT
RUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2RlZmluZSBIQVZF
X1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUg
R0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBIQVZFX0dFVEhP
U1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUgSEFWRV9DT05O
RUNUIDEKfCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QKfCAjZGVmaW5lIENPTk5FQ1RfTkFN
RV9UIHN0cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05ORUNUX0FERFJMRU5fVCBzaXplX3QK
fCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9JUFY0CnwgI2RlZmluZSBI
QVZFX0lQVjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9O
VE9QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0VUU09DS09Q
VCAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX0lO
X0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq
Lwp8IAp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRp
Zgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgp8ICNp
ZmRlZiBIQVZFX0FSUEFfSU5FVF9ICnwgI2luY2x1ZGUgPGFycGEvaW5ldC5oPgp8ICNlbmRpZgp8
ICNpZmRlZiBfX0JFT1NfXwp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgI2luY2x1ZGUgPG5l
dGRiLmg+CnwgI2VuZGlmCnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgIkMiCnwg
I2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19jcGx1c3BsdXMp
Cnwgc3RydWN0IGluX2FkZHIgaW5ldF9hZGRyICggY2hhciAqKTsKfCAjZWxzZQp8IHN0cnVjdCBp
bl9hZGRyIGluZXRfYWRkcigpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwg
ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzM2ODogZ2NjIC1jIC1nIC1PMiAgY29u
ZnRlc3QuYyA+JjUKZGlzdGNjWzI5NDE3XSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUv
Y29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjI5MzU0Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25m
dGVzdC5jOjE4NDogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnaW5ldF9hZGRyJwovdXNy
L2luY2x1ZGUvYXJwYS9pbmV0Lmg6MzU6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAn
aW5ldF9hZGRyJyB3YXMgaGVyZQpjb25maWd1cmU6MjMzNzQ6ICQ/ID0gMQpjb25maWd1cmU6IGZh
aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tB
R0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAj
ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNL
QUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FH
RV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJD
RSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwg
I2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VY
VEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp
bmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kz
ODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NP
TlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNk
ZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5l
IHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUg
SEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5J
U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VU
T0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZF
X1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1J
T1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAx
CnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVm
aW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5l
IENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUg
U0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmlu
ZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVf
X0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNW
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwg
I2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwg
I2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QK
fCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJF
VEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVf
UEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVND
T05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNF
VCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNk
ZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZF
X0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRE
T1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBI
QVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRF
TlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwg
I2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwg
I2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZp
bmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VU
UkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhB
VkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19W
Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRf
dAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1F
U19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50
CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAj
ZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNk
ZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8
ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU
X1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAx
CnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVm
aW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5l
IFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9D
VExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5l
IE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVf
UkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JF
TElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF
TEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRf
VCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVf
U0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZE
QVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8
ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNk
ZWZpbmUgQ09OTkVDVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0
IHNvY2thZGRyICoKfCAjZGVmaW5lIENPTk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUg
SEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8
ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNk
ZWZpbmUgSEFWRV9JTkVUX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVm
aW5lIEhBVkVfR0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2Rl
ZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2lm
ZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1
ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CnwgI2lmZGVmIEhBVkVf
QVJQQV9JTkVUX0gKfCAjaW5jbHVkZSA8YXJwYS9pbmV0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIF9f
QkVPU19fCnwgI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAjaW5jbHVkZSA8bmV0ZGIuaD4KfCAj
ZW5kaWYKfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAK
fCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCB1bnNpZ25l
ZCBsb25nIGluZXRfYWRkciAoIGNoYXIgKik7CnwgI2Vsc2UKfCB1bnNpZ25lZCBsb25nIGluZXRf
YWRkcigpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1
cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzM2ODogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK
ZGlzdGNjWzI5NTAyXSBFUlJPUjogY29tcGlsZSAvdmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1w
LnRvdG96LWxpbnV4LjI5NDg1Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjE4NDog
ZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAnaW5ldF9hZGRyJwovdXNyL2luY2x1ZGUvYXJw
YS9pbmV0Lmg6MzU6IGVycm9yOiBwcmV2aW91cyBkZWNsYXJhdGlvbiBvZiAnaW5ldF9hZGRyJyB3
YXMgaGVyZQpjb25maWd1cmU6MjMzNzQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFt
IHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05V
IENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tB
R0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAi
R05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg
Imh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmlu
ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U
X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAx
CnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZG
U0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2Vu
ZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZp
bmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9E
Q0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lk
IHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9O
Rwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5l
IEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1F
X0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2Rl
ZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBI
QVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVf
TkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2Fk
ZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9U
IDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9D
QV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZp
bmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBT
SUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdO
QUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZF
X1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhB
VkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2
b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wK
fCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVm
aW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmlu
ZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9G
Q0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVm
aW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVf
U0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEK
fCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZp
bmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZF
X0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZF
X0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVf
U0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JF
U09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNU
IGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwg
I2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2Rl
ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUg
SEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVm
aW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBI
QVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVf
V0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9G
X0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFW
RV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxL
U0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBT
SVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVB
RExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElS
VFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9U
IHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lP
Q1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklP
TlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwK
fCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2Rl
ZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAj
ZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2Rl
ZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3Ry
dWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFW
RV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVD
VF9DT05TVCBjb25zdAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoK
fCAjZGVmaW5lIENPTk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5f
SCAxCnwgI2RlZmluZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFW
RV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9J
TkVUX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VU
U09DS09QVCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FS
UEFfSU5FVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2lmZGVmIEhBVkVfVU5J
U1REX0gKfCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBl
cy5oPgp8ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CnwgI2lmZGVmIEhBVkVfQVJQQV9JTkVUX0gK
fCAjaW5jbHVkZSA8YXJwYS9pbmV0Lmg+CnwgI2VuZGlmCnwgI2lmZGVmIF9fQkVPU19fCnwgI2lu
Y2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAjaW5jbHVkZSA8bmV0ZGIuaD4KfCAjZW5kaWYKfCAKfCBl
eHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5l
ZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCB1bnNpZ25lZCBpbnQgaW5ldF9h
ZGRyICggY2hhciAqKTsKfCAjZWxzZQp8IHVuc2lnbmVkIGludCBpbmV0X2FkZHIoKTsKfCAjZW5k
aWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25m
aWd1cmU6MjMzNjg6IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1syOTYyMF0g
RVJST1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4y
OTU2MS5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzoxODQ6IGVycm9yOiBjb25mbGlj
dGluZyB0eXBlcyBmb3IgJ2luZXRfYWRkcicKL3Vzci9pbmNsdWRlL2FycGEvaW5ldC5oOjM1OiBl
cnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2YgJ2luZXRfYWRkcicgd2FzIGhlcmUKY29uZmln
dXJlOjIzMzc0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u
ZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVm
aW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIu
MzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4
ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3Au
Y29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg
I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm
aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l
IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BP
U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0Cnwg
I2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUg
SEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMg
MQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAj
ZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVm
aW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNU
RENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xf
SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEK
fCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBI
QVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJN
SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIK
fCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RM
X0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5l
IFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBT
SVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmlu
ZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUg
dm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9T
SVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9D
Swp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQg
MQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwg
I2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUg
QUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZF
X1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERU
QUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQg
MQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm
aW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dF
VEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVF
UCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwg
I2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZF
X1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5W
IDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04g
MQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAx
CnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwg
I2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0g
X19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W
Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JL
SU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJV
U0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAj
ZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUg
MQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
I2RlZmluZSBIQVZFX1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgK
fCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf
U1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgK
fCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVm
aW5lIEVMT09QX1ZBTFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2Rl
ZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25n
CnwgI2RlZmluZSBJT0NUTF9ET1RTCnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmlu
ZSBIQVZFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmlu
ZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZF
X1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJ
RFRIX1QgaW50CnwgI2RlZmluZSBTRUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1Rf
Q09OU1QgCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRU
SU1FT0ZEQVkgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAq
CnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFN
RQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QK
fCAjZGVmaW5lIENPTk5FQ1RfTkFNRV9UIHN0cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05O
RUNUX0FERFJMRU5fVCBzaXplX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg
SEFWRV9JUFY0CnwgI2RlZmluZSBIQVZFX0lQVjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEK
fCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNk
ZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwg
LyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1
ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVk
ZSA8bmV0aW5ldC9pbi5oPgp8ICNpZmRlZiBIQVZFX0FSUEFfSU5FVF9ICnwgI2luY2x1ZGUgPGFy
cGEvaW5ldC5oPgp8ICNlbmRpZgp8ICNpZmRlZiBfX0JFT1NfXwp8ICNpbmNsdWRlIDxzeXMvc29j
a2V0Lmg+CnwgI2luY2x1ZGUgPG5ldGRiLmg+CnwgI2VuZGlmCnwgCnwgZXh0ZXJuCnwgI2lmZGVm
IF9fY3BsdXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8
IGRlZmluZWQoX19jcGx1c3BsdXMpCnwgc3RydWN0IGluX2FkZHIgaW5ldF9hZGRyIChjb25zdCBj
aGFyICopOwp8ICNlbHNlCnwgc3RydWN0IGluX2FkZHIgaW5ldF9hZGRyKCk7CnwgI2VuZGlmCnwg
CnwgaW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJl
OjIzMzY4OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMjk3OTddIEVSUk9S
OiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMjk2MzUu
aSBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTg0OiBlcnJvcjogY29uZmxpY3Rpbmcg
dHlwZXMgZm9yICdpbmV0X2FkZHInCi91c3IvaW5jbHVkZS9hcnBhL2luZXQuaDozNTogZXJyb3I6
IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdpbmV0X2FkZHInIHdhcyBoZXJlCmNvbmZpZ3VyZToy
MzM3NDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZz
LmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQ
QUNLQUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgy
MDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAw
Ni0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMu
b3JnLyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg
I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp
bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI
QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF
X1VOSVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9Q
VEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5k
ZWYgX19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVf
SUNPTlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmlu
ZSBIQVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBI
QVZFX0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hF
QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxF
X0ggMQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8
ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2Rl
ZmluZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9O
RVREQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQ
Q19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0gg
MQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2Rl
ZmluZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwg
I2RlZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NL
TEVOX1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9G
X1NUUlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFW
RV9BTExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQK
fCAjZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwg
I2RlZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAj
ZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAj
ZGVmaW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZp
bmUgSEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JU
X1ZPTEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJF
UlJPUiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVT
SVpFIDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBI
QVZFX0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NU
RU5UIDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8
ICNkZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZp
bmUgSEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFM
UEFUSCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwg
I2RlZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAj
ZGVmaW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNk
ZWZpbmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZp
bmUgU0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxp
bWl0X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhB
VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksg
MQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19G
T1JLIDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UK
fCAjZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmlu
ZSBHRVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAj
ZGVmaW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp
bmUgSEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2Rl
ZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JE
RVYgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhB
VkVfU1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2Rl
ZmluZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBF
TE9PUF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUg
SEFWRV9JT0NUTCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNk
ZWZpbmUgSU9DVExfRE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFW
RV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFW
RV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxF
Q1QgMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9U
IGludAp8ICNkZWZpbmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNU
IAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9G
REFZIDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNk
ZWZpbmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAj
ZGVmaW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2Rl
ZmluZSBDT05ORUNUX05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9B
RERSTEVOX1Qgc2l6ZV90CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVf
SVBWNAp8ICNkZWZpbmUgSEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2Rl
ZmluZSBIQVZFX0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmlu
ZSBIQVZFX1NFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5l
IEhBVkVfTkVUSU5FVF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8IC8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICNpbmNsdWRlIDx1
bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2luY2x1ZGUgPG5l
dGluZXQvaW4uaD4KfCAjaWZkZWYgSEFWRV9BUlBBX0lORVRfSAp8ICNpbmNsdWRlIDxhcnBhL2lu
ZXQuaD4KfCAjZW5kaWYKfCAjaWZkZWYgX19CRU9TX18KfCAjaW5jbHVkZSA8c3lzL3NvY2tldC5o
Pgp8ICNpbmNsdWRlIDxuZXRkYi5oPgp8ICNlbmRpZgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2Nw
bHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZp
bmVkKF9fY3BsdXNwbHVzKQp8IHVuc2lnbmVkIGxvbmcgaW5ldF9hZGRyIChjb25zdCBjaGFyICop
Owp8ICNlbHNlCnwgdW5zaWduZWQgbG9uZyBpbmV0X2FkZHIoKTsKfCAjZW5kaWYKfCAKfCBpbnQK
fCBtYWluICgpCnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjMzNjg6
IGdjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyMzM3NDogJD8gPSAwCmNv
bmZpZ3VyZToyMzM3ODogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjIzMzgxOiAkPyA9IDAKY29uZmlndXJlOjIzMzg0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjIzMzg3OiAkPyA9IDAKY29uZmlndXJlOjIzNDE1OiByZXN1bHQ6IAogICAgICAg
ICBleHRlcm4gdW5zaWduZWQgaW50IGluZXRfYWRkciAoY29uc3QgY2hhciopOwpjb25maWd1cmU6
MjM0NDY6IGNoZWNraW5nIGZvciBuZXRpbmV0L3RjcC5oCmNvbmZpZ3VyZToyMzQ2NTogZ2NjIC1j
IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNDcxOiAkPyA9IDAKY29uZmlndXJl
OjIzNDc1OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MjM0Nzg6ICQ/ID0gMApjb25maWd1cmU6MjM0ODE6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1
cmU6MjM0ODQ6ICQ/ID0gMApjb25maWd1cmU6MjM0OTU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy
MzUwNzogY2hlY2tpbmcgZm9yIHNldHNvY2tvcHQgZGVjbGFyYXRpb24KY29uZmlndXJlOjIzNTQ3
OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMzAxOTZdIEVSUk9SOiBjb21w
aWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMzAxNjYuaSBvbiBs
b2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTc4OiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMg
Zm9yICdzZXRzb2Nrb3B0JwovdXNyL2luY2x1ZGUvc3lzL3NvY2tldC5oOjE5MzogZXJyb3I6IHBy
ZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdzZXRzb2Nrb3B0JyB3YXMgaGVyZQpjb25maWd1cmU6MjM1
NTM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5o
LiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFD
S0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAw
Ni0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYt
MDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9y
Zy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
TklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRI
UkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVm
IF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lD
T05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2Rl
ZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUg
SEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFW
RV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFE
RVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9I
IDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAj
ZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZp
bmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVU
REJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENf
SCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEK
fCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZp
bmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNk
ZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xF
Tl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9T
VFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVf
QUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwg
I2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNk
ZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2Rl
ZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2Rl
ZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5l
IEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9W
T0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJS
T1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0la
RSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2Rl
ZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFW
RV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVO
VCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAj
ZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5l
IEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBB
VEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNk
ZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2Rl
ZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVm
aW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5l
IFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1p
dF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZF
X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEK
fCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9S
SyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwg
I2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUg
R0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2Rl
ZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l
IEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZp
bmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVW
IDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZF
X1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZp
bmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxP
T1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhB
VkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVm
aW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVf
RklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVf
UE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNU
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBp
bnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05TVCAK
fCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRB
WSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAjZGVm
aW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwgI2Rl
ZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9DT05TVCBjb25zdAp8ICNkZWZp
bmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAjZGVmaW5lIENPTk5FQ1RfQURE
UkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0lQ
VjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZp
bmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FERFIgMQp8ICNkZWZpbmUg
SEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS09QVCAxCnwgI2RlZmluZSBI
QVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5l
IFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVmaW5lIElORVRfQUREUl9DT05T
VCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNkZWZpbmUgSEFWRV9ORVRJTkVU
X1RDUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN5cy90eXBl
cy5oPgp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3Bs
dXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmlu
ZWQoX19jcGx1c3BsdXMpCnwgaW50IHNldHNvY2tvcHQgKGludCwgaW50LCBpbnQsICBjaGFyKiwg
aW50KTsKfCAjZWxzZQp8IGludCBzZXRzb2Nrb3B0ICgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1h
aW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzU0NzogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzMwMjg4XSBFUlJPUjogY29tcGlsZSAv
dmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjMwMjExLmkgb24gbG9jYWxo
b3N0IGZhaWxlZApjb25mdGVzdC5jOjE3ODogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAn
c2V0c29ja29wdCcKL3Vzci9pbmNsdWRlL3N5cy9zb2NrZXQuaDoxOTM6IGVycm9yOiBwcmV2aW91
cyBkZWNsYXJhdGlvbiBvZiAnc2V0c29ja29wdCcgd2FzIGhlcmUKY29uZmlndXJlOjIzNTUzOiAk
PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICov
CnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEt
MjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0
KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8
ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF
X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
X0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURf
U0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kz
ODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAx
CnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUg
SEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVf
U0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9O
R19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx
CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu
ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJ
UkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8
ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2Rl
ZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhB
VkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5l
IEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBz
b2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNU
X1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D
QSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZp
bmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5l
IFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUg
SEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUg
SEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZF
X1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJ
TEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEK
fCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8
ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUg
SEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZ
TkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8
ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmlu
ZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZF
X05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEK
fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5l
IEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUg
VU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBI
QVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpF
T0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVz
b3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklT
VERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2Rl
ZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8
ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZp
bmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENX
RF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUg
SEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJ
WkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwg
I2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJV
Q1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJ
WkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZB
TFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lP
Q1RMIDEKfCAjZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJ
T0NUTF9ET1RTCnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05S
RUFECnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwg
MQp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg
I2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50Cnwg
I2RlZmluZSBTRUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2Rl
ZmluZSBIQVZFX1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8
ICNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBI
QVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUg
SEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QKfCAjZGVmaW5lIENP
Tk5FQ1RfTkFNRV9UIHN0cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05ORUNUX0FERFJMRU5f
VCBzaXplX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9JUFY0Cnwg
I2RlZmluZSBIQVZFX0lQVjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhB
VkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAjZGVmaW5lIEhBVkVf
U0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9O
RVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBSRVRf
SU5FVF9BRERSX1RZUEUgdW5zaWduZWQgaW50CnwgI2RlZmluZSBJTkVUX0FERFJfQ09OU1QgY29u
c3QKfCAjZGVmaW5lIElORVRfQUREUl9TVUZGSVgKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1Bf
SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K
fCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1
cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9f
Y3BsdXNwbHVzKQp8IGludCBzZXRzb2Nrb3B0IChpbnQsIGludCwgaW50LCBjb25zdCBjaGFyKiwg
aW50KTsKfCAjZWxzZQp8IGludCBzZXRzb2Nrb3B0ICgpOwp8ICNlbmRpZgp8IAp8IGludAp8IG1h
aW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyMzU0NzogZ2Nj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKZGlzdGNjWzMwNTc5XSBFUlJPUjogY29tcGlsZSAv
dmFyL3RtcC9jY2FjaGUvY29uZnRlc3QudG1wLnRvdG96LWxpbnV4LjMwNTUzLmkgb24gbG9jYWxo
b3N0IGZhaWxlZApjb25mdGVzdC5jOjE3ODogZXJyb3I6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciAn
c2V0c29ja29wdCcKL3Vzci9pbmNsdWRlL3N5cy9zb2NrZXQuaDoxOTM6IGVycm9yOiBwcmV2aW91
cyBkZWNsYXJhdGlvbiBvZiAnc2V0c29ja29wdCcgd2FzIGhlcmUKY29uZmlndXJlOjIzNTUzOiAk
PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICov
CnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEt
MjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0
KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8
ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF
X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
X0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURf
U0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kz
ODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAx
CnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUg
SEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVf
U0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9O
R19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAx
CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwg
I2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmlu
ZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJ
UkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8
ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2Rl
ZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhB
VkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5l
IEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBz
b2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNU
X1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9D
QSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZp
bmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5l
IFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUg
SEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUg
SEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZF
X1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJ
TEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEK
fCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8
ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUg
SEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZ
TkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8
ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmlu
ZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZF
X05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEK
fCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5l
IEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUg
VU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBI
QVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpF
T0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVz
b3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklT
VERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2Rl
ZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8
ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZp
bmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENX
RF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUg
SEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJ
WkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwg
I2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJV
Q1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJ
WkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZB
TFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lP
Q1RMIDEKfCAjZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJ
T0NUTF9ET1RTCnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05S
RUFECnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwg
MQp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwg
I2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50Cnwg
I2RlZmluZSBTRUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2Rl
ZmluZSBIQVZFX1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8
ICNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBI
QVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUg
SEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QKfCAjZGVmaW5lIENP
Tk5FQ1RfTkFNRV9UIHN0cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05ORUNUX0FERFJMRU5f
VCBzaXplX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9JUFY0Cnwg
I2RlZmluZSBIQVZFX0lQVjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhB
VkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAjZGVmaW5lIEhBVkVf
U0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9O
RVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBSRVRf
SU5FVF9BRERSX1RZUEUgdW5zaWduZWQgaW50CnwgI2RlZmluZSBJTkVUX0FERFJfQ09OU1QgY29u
c3QKfCAjZGVmaW5lIElORVRfQUREUl9TVUZGSVgKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1Bf
SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4K
fCAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgp8IAp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1
cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9f
Y3BsdXNwbHVzKQp8IGludCBzZXRzb2Nrb3B0IChpbnQsIGludCwgaW50LCAgdm9pZCosIGludCk7
CnwgI2Vsc2UKfCBpbnQgc2V0c29ja29wdCAoKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgp
Cnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjM1NDc6IGdjYyAtYyAt
ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1szMDc2NV0gRVJST1I6IGNvbXBpbGUgL3Zhci90
bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4zMDU5NC5pIG9uIGxvY2FsaG9zdCBm
YWlsZWQKY29uZnRlc3QuYzoxNzg6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ3NldHNv
Y2tvcHQnCi91c3IvaW5jbHVkZS9zeXMvc29ja2V0Lmg6MTkzOiBlcnJvcjogcHJldmlvdXMgZGVj
bGFyYXRpb24gb2YgJ3NldHNvY2tvcHQnIHdhcyBoZXJlCmNvbmZpZ3VyZToyMzU1MzogJD8gPSAx
CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8
ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B
TUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIK
fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwg
I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVm
aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF
X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P
UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK
fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO
VElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18K
fCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNk
ZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVf
R0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF
R1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9O
RyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZp
bmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQK
fCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVm
aW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUg
SEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RD
U0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZF
X1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xl
bl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1F
VkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8
ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJ
R05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVf
U0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVf
RlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlT
RQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8
ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2Rl
ZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVm
aW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf
U0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK
fCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVm
aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFW
RV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNF
IDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2Rl
ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZF
X1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VU
RU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9H
RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JM
SU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNl
CnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg
MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg
SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVm
aW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJV
U0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0la
RV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf
TFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FM
QVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0Zf
RlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NU
QVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0Zf
REVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBF
TE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAx
CnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExf
RE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8
ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAj
ZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZp
bmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUg
SEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVm
aW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVf
Q09OTkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05ORUNU
X05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qgc2l6
ZV90CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBWNAp8ICNkZWZp
bmUgSEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lO
RVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NFVFNP
Q0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5F
VF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgUkVUX0lORVRf
QUREUl9UWVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNUIGNvbnN0Cnwg
I2RlZmluZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8
IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2lu
Y2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAi
QyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVz
cGx1cykKfCBpbnQgc2V0c29ja29wdCAoaW50LCBpbnQsIGludCwgY29uc3Qgdm9pZCosIGludCk7
CnwgI2Vsc2UKfCBpbnQgc2V0c29ja29wdCAoKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgp
Cnwgewp8IAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MjM1NDc6IGdjYyAtYyAt
ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmRpc3RjY1szMDc5NV0gRVJST1I6IGNvbXBpbGUgL3Zhci90
bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC4zMDc4MC5pIG9uIGxvY2FsaG9zdCBm
YWlsZWQKY29uZnRlc3QuYzoxNzg6IGVycm9yOiBjb25mbGljdGluZyB0eXBlcyBmb3IgJ3NldHNv
Y2tvcHQnCi91c3IvaW5jbHVkZS9zeXMvc29ja2V0Lmg6MTkzOiBlcnJvcjogcHJldmlvdXMgZGVj
bGFyYXRpb24gb2YgJ3NldHNvY2tvcHQnIHdhcyBoZXJlCmNvbmZpZ3VyZToyMzU1MzogJD8gPSAx
CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8
ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5B
TUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIK
fCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwg
I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVm
aW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF
X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1P
UllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEK
fCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO
VElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18K
fCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNk
ZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVf
R0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NF
R1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9O
RyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZp
bmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQK
fCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVm
aW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUg
SEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RD
U0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZF
X1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xl
bl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1F
VkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8
ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJ
R05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVf
U0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVf
RlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlT
RQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8
ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2Rl
ZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVm
aW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVf
U0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEK
fCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVm
aW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFW
RV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNF
IDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2Rl
ZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZF
X1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VU
RU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9H
RVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JM
SU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNl
CnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0gg
MQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUg
SEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVm
aW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJV
U0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0la
RV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVf
TFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FM
QVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0Zf
RlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NU
QVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0Zf
REVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBF
TE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAx
CnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExf
RE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8
ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAj
ZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZp
bmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUg
SEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVm
aW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVf
Q09OTkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05ORUNU
X05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qgc2l6
ZV90CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBWNAp8ICNkZWZp
bmUgSEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lO
RVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NFVFNP
Q0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5F
VF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgUkVUX0lORVRf
QUREUl9UWVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNUIGNvbnN0Cnwg
I2RlZmluZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8
IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2lu
Y2x1ZGUgPHN5cy9zb2NrZXQuaD4KfCAKfCBleHRlcm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAi
QyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChfX1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVz
cGx1cykKfCBpbnQgc2V0c29ja29wdCAoaW50LCBpbnQsIGludCwgIGNoYXIqLCB1bnNpZ25lZCBp
bnQpOwp8ICNlbHNlCnwgaW50IHNldHNvY2tvcHQgKCk7CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFp
biAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIzNTQ3OiBnY2Mg
LWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMzEwMjBdIEVSUk9SOiBjb21waWxlIC92
YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMzA5OTUuaSBvbiBsb2NhbGhv
c3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTc4OiBlcnJvcjogY29uZmxpY3RpbmcgdHlwZXMgZm9yICdz
ZXRzb2Nrb3B0JwovdXNyL2luY2x1ZGUvc3lzL3NvY2tldC5oOjE5MzogZXJyb3I6IHByZXZpb3Vz
IGRlY2xhcmF0aW9uIG9mICdzZXRzb2Nrb3B0JyB3YXMgaGVyZQpjb25maWd1cmU6MjM1NTM6ICQ/
ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8K
fCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9U
QVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0y
NCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQp
Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwg
I2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf
TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU
WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
SCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9T
RU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4
Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEK
fCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBI
QVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9T
SUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05H
X0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK
fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAj
ZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5l
IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElS
RU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwg
I2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVm
aW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFW
RV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUg
SEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNv
Y2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1Rf
VElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NB
IDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmlu
ZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUg
U0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBI
QVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBI
QVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVf
UkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElM
RSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8
ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwg
I2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBI
QVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lO
QyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwg
I2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5l
IEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVf
TklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8
ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUg
SEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBV
TlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhB
VkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVP
Rl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNv
dXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNU
RF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVm
aW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwg
I2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmlu
ZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dE
X1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBI
QVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf
U0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0la
RU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAj
ZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVD
VF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0la
RU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFM
VUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9D
VEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElP
Q1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJF
QUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAx
CnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAj
ZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVm
aW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwg
I2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhB
VkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBI
QVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgQ09O
TkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAjZGVmaW5lIENPTk5FQ1RfQUREUkxFTl9U
IHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZFX0lQVjQKfCAj
ZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFW
RV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9T
RVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX05F
VElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIFJFVF9J
TkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVmaW5lIElORVRfQUREUl9DT05TVCBjb25z
dAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9I
IDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8
ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVz
CnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19j
cGx1c3BsdXMpCnwgaW50IHNldHNvY2tvcHQgKGludCwgaW50LCBpbnQsIGNvbnN0IGNoYXIqLCB1
bnNpZ25lZCBpbnQpOwp8ICNlbHNlCnwgaW50IHNldHNvY2tvcHQgKCk7CnwgI2VuZGlmCnwgCnwg
aW50CnwgbWFpbiAoKQp8IHsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjIz
NTQ3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbMzEwNjRdIEVSUk9SOiBj
b21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90b3otbGludXguMzEwNDEuaSBv
biBsb2NhbGhvc3QgZmFpbGVkCmNvbmZ0ZXN0LmM6MTc4OiBlcnJvcjogY29uZmxpY3RpbmcgdHlw
ZXMgZm9yICdzZXRzb2Nrb3B0JwovdXNyL2luY2x1ZGUvc3lzL3NvY2tldC5oOjE5MzogZXJyb3I6
IHByZXZpb3VzIGRlY2xhcmF0aW9uIG9mICdzZXRzb2Nrb3B0JyB3YXMgaGVyZQpjb25maWd1cmU6
MjM1NTM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVm
cy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNkZWZpbmUg
UEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiMi4zOCAo
MjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIuMzggKDIw
MDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlzcC5jb25z
Lm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBfUE9TSVhf
UFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKfCAjaWZu
ZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmluZSBIQVZF
X0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05MUyAxCnwg
I2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8ICNkZWZp
bmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNkZWZpbmUg
SEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUgU1REQ19I
RUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9PTF9IIDEK
fCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNk
ZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5lIEhBVkVf
TkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19J
UENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT19I
IDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRUUgp8ICNk
ZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9DVExfSAp8
ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZpbmUgU09D
S0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5lIFNJWkVP
Rl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVmaW5lIEhB
VkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQRSB2b2lk
CnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19QT1NJWAp8
ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJMT0NLCnwg
I2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQVCAxCnwg
I2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cKfCAjZGVm
aW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmluZSBBQk9S
VF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhBVkVfU1RS
RVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VURFRBQkxF
U0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJRCAxCnwg
I2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNkZWZpbmUg
SEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9T
VEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNMRUVQIDEK
fCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKfCAjZGVm
aW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhBVkVfUkVB
TFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRFTlYgMQp8
ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJPTiAxCnwg
I2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VTIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEKfCAjZGVm
aW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3Js
aW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZFX1ZGT1JL
IDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdf
Rk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0Vf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VUUlVTQUdF
CnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8ICNkZWZp
bmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElNRSAxCnwg
I2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1QgOAp8ICNk
ZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9S
REVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2RlZmluZSBI
QVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1QgOAp8ICNk
ZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNkZWZpbmUg
RUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAjZGVmaW5l
IEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKfCAj
ZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhB
VkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQKfCAjZGVmaW5lIEhB
VkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVmaW5lIEhBVkVfU0VM
RUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBTRUxFQ1RfV0lEVEhf
VCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVDVF9DT05T
VCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBIQVZFX0dFVFRJTUVP
RkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRpbWV6b25lICoKfCAj
ZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCnwg
I2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9DT05TVCBjb25zdAp8ICNk
ZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAjZGVmaW5lIENPTk5FQ1Rf
QUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmluZSBIQVZF
X0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04gMQp8ICNk
ZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FERFIgMQp8ICNkZWZp
bmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS09QVCAxCnwgI2RlZmlu
ZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVm
aW5lIFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVmaW5lIElORVRfQUREUl9D
T05TVCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNkZWZpbmUgSEFWRV9ORVRJ
TkVUX1RDUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN5cy90
eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CnwgCnwgZXh0ZXJuCnwgI2lmZGVmIF9f
Y3BsdXNwbHVzCnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRl
ZmluZWQoX19jcGx1c3BsdXMpCnwgaW50IHNldHNvY2tvcHQgKGludCwgaW50LCBpbnQsICB2b2lk
KiwgdW5zaWduZWQgaW50KTsKfCAjZWxzZQp8IGludCBzZXRzb2Nrb3B0ICgpOwp8ICNlbmRpZgp8
IAp8IGludAp8IG1haW4gKCkKfCB7CnwgCnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3Vy
ZToyMzU0NzogZ2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjIzNTUzOiAk
PyA9IDAKY29uZmlndXJlOjIzNTU3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
LmVycgpjb25maWd1cmU6MjM1NjA6ICQ/ID0gMApjb25maWd1cmU6MjM1NjM6IHRlc3QgLXMgY29u
ZnRlc3Qubwpjb25maWd1cmU6MjM1NjY6ICQ/ID0gMApjb25maWd1cmU6MjM1OTY6IHJlc3VsdDog
CiAgICAgICAgIGV4dGVybiBpbnQgc2V0c29ja29wdCAoaW50LCBpbnQsIGludCwgY29uc3Qgdm9p
ZCosIHVuc2lnbmVkIGludCk7CmNvbmZpZ3VyZToyMzYzNTogY2hlY2tpbmcgZm9yIHRoZSBjb2Rl
IGFkZHJlc3MgcmFuZ2UKY29uZmlndXJlOjIzNjQ3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdwcmludGZfYWRkcmVzcyc6
CmNvbmZ0ZXN0LmM6MTY6IHdhcm5pbmc6IHJpZ2h0IHNoaWZ0IGNvdW50ID49IHdpZHRoIG9mIHR5
cGUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21haW4nOgpjb25mdGVzdC5jOjIwOiB3YXJuaW5n
OiBpbmNvbXBhdGlibGUgaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgYnVpbHQtaW4gZnVuY3Rpb24g
J2V4aXQnCmNvbmZpZ3VyZToyMzY1MDogJD8gPSAwCmNvbmZpZ3VyZToyMzY1OTogcmVzdWx0OiAw
eDA4MDAwMDAwCmNvbmZpZ3VyZToyMzY2NzogY2hlY2tpbmcgZm9yIHRoZSBtYWxsb2MgYWRkcmVz
cyByYW5nZQpjb25maWd1cmU6MjM2ODU6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVz
dC5jICA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ3ByaW50Zl9hZGRyZXNzJzoKY29uZnRl
c3QuYzoyMjogd2FybmluZzogcmlnaHQgc2hpZnQgY291bnQgPj0gd2lkdGggb2YgdHlwZQpjb25m
aWd1cmU6MjM2ODg6ICQ/ID0gMApjb25maWd1cmU6MjM2OTc6IHJlc3VsdDogMHgwODAwMDAwMApj
b25maWd1cmU6MjM3MDU6IGNoZWNraW5nIGZvciB0aGUgc2hhcmVkIGxpYnJhcnkgYWRkcmVzcyBy
YW5nZQpjb25maWd1cmU6MjM3NDQ6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j
ICA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ3ByaW50Zl9hZGRyZXNzJzoKY29uZnRlc3Qu
YzoxNjogd2FybmluZzogcmlnaHQgc2hpZnQgY291bnQgPj0gd2lkdGggb2YgdHlwZQpjb25mdGVz
dC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6NDY6IHdhcm5pbmc6IGluY29tcGF0
aWJsZSBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBidWlsdC1pbiBmdW5jdGlvbiAnZXhpdCcKL3Zh
ci90bXAvcG9ydGFnZS9jbGlzcC0yLjM4L3RlbXAvY2NQeUVTR0kubzogSW4gZnVuY3Rpb24gYG1h
aW4nOgovdmFyL3RtcC9wb3J0YWdlL2NsaXNwLTIuMzgvd29yay9jbGlzcC0yLjM4L2J1aWxkL2Nv
bmZ0ZXN0LmM6NDM6IHdhcm5pbmc6IHRoZSB1c2Ugb2YgYHRtcG5hbScgaXMgZGFuZ2Vyb3VzLCBi
ZXR0ZXIgdXNlIGBta3N0ZW1wJwpjb25maWd1cmU6MjM3NDc6ICQ/ID0gMApjb25maWd1cmU6MjM3
NTY6IHJlc3VsdDogMHg0RDAwMDAwMApjb25maWd1cmU6MjM3NjQ6IGNoZWNraW5nIGZvciB0aGUg
c3RhY2sgYWRkcmVzcyByYW5nZQpjb25maWd1cmU6MjM3NzY6IGdjYyAtbyBjb25mdGVzdCAtZyAt
TzIgICBjb25mdGVzdC5jICA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ3ByaW50Zl9hZGRy
ZXNzJzoKY29uZnRlc3QuYzoxNjogd2FybmluZzogcmlnaHQgc2hpZnQgY291bnQgPj0gd2lkdGgg
b2YgdHlwZQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6MjA6IHdh
cm5pbmc6IGluY29tcGF0aWJsZSBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBidWlsdC1pbiBmdW5j
dGlvbiAnZXhpdCcKY29uZmlndXJlOjIzNzc5OiAkPyA9IDAKY29uZmlndXJlOjIzNzg4OiByZXN1
bHQ6IDB4QkYwMDAwMDAKY29uZmlndXJlOjIzNzk4OiBjaGVja2luZyBmb3IgZ2V0cGFnZXNpemUK
Y29uZmlndXJlOjIzODI1OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1
CmNvbmZpZ3VyZToyMzgzMTogJD8gPSAwCmNvbmZpZ3VyZToyMzgzNTogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjIzODM4OiAkPyA9IDAKY29uZmlndXJl
OjIzODQxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyMzg0NDogJD8gPSAwCmNvbmZpZ3Vy
ZToyMzg1ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjIzODY5OiBjaGVja2luZyBmb3IgZ2V0cGFn
ZXNpemUgZGVjbGFyYXRpb24KY29uZmlndXJlOjIzOTA3OiBnY2MgLWMgLWcgLU8yICBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6MjM5MTM6ICQ/ID0gMApjb25maWd1cmU6MjM5MTc6IHRlc3QgLXog
CgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyMzkyMDogJD8gPSAwCmNv
bmZpZ3VyZToyMzkyMzogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyMzkyNjogJD8gPSAw
CmNvbmZpZ3VyZToyMzk0MzogcmVzdWx0OiAKICAgICAgICAgZXh0ZXJuIGludCBnZXRwYWdlc2l6
ZSAodm9pZCk7CmNvbmZpZ3VyZToyNDEwNTogY2hlY2tpbmcgZm9yIHZhZHZpc2UKY29uZmlndXJl
OjI0MTI3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZ0ZXN0
LmM6MTc3OjI1OiBlcnJvcjogc3lzL3ZhZHZpc2UuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y
eQpkaXN0Y2NbMzIyMjVdIEVSUk9SOiBjb21waWxlIGNvbmZ0ZXN0LmMgb24gbG9jYWxob3N0IGZh
aWxlZApjb25maWd1cmU6MjQxMzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh
czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENM
SVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05V
IENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0
dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBT
VERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdT
X0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0gg
MQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwg
I2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VU
X0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlm
CnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUg
RU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dF
VFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJl
dHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8
ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhB
VkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZF
X1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gK
fCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZF
X1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVF
RF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJf
dAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgK
fCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9I
IDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUg
UkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdO
QUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxf
TkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJ
R0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVf
U0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lk
CnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAj
ZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5l
IEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBI
QVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hN
T0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVm
aW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5l
IEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VU
SVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAj
ZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUg
SEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RF
Q0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xD
X01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VU
UkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09V
UkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNv
bnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2Rl
ZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmlu
ZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFW
RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5l
IEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZF
X0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lU
SF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
VkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
U1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZT
QkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9T
VFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0la
RSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpF
T0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJ
TksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQ
RSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVu
c2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RM
X0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJF
QUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAj
ZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmlu
ZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVm
aW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmlu
ZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0
IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9H
RVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9D
T05TVCBjb25zdAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAj
ZGVmaW5lIENPTk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAx
CnwgI2RlZmluZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9J
TkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVU
X0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09D
S09QVCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFf
SU5FVF9IIDEKfCAjZGVmaW5lIFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVm
aW5lIElORVRfQUREUl9DT05TVCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNk
ZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQ09OU1QgY29u
c3QKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQVJHX1Qgdm9pZCoKfCAjZGVmaW5lIFNFVFNPQ0tPUFRf
T1BUTEVOX1QgdW5zaWduZWQgaW50CnwgI2RlZmluZSBDT0RFX0FERFJFU1NfUkFOR0UgMHgwODAw
MDAwMFVMCnwgI2RlZmluZSBNQUxMT0NfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVm
aW5lIFNITElCX0FERFJFU1NfUkFOR0UgMHg0RDAwMDAwMFVMCnwgI2RlZmluZSBTVEFDS19BRERS
RVNTX1JBTkdFIDB4QkYwMDAwMDBVTAp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRQp8ICNkZWZp
bmUgUkVUR0VUUEFHRVNJWkVUWVBFIGludAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5j
bHVkZSA8c3lzL3ZhZHZpc2UuaD4KfCBpbnQKfCBtYWluICgpCnwgewp8IHZhZHZpc2UoMCk7Cnwg
ICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToyNDE2MDogcmVzdWx0OiBubwpjb25maWd1
cmU6MjQxNzA6IGNoZWNraW5nIGZvciB2bV9hbGxvY2F0ZQpjb25maWd1cmU6MjQxOTI6IGdjYyAt
byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKL3Zhci90bXAvcG9ydGFnZS9jbGlz
cC0yLjM4L3RlbXAvY2NJb1BQT2YubzogSW4gZnVuY3Rpb24gYG1haW4nOgovdmFyL3RtcC9wb3J0
YWdlL2NsaXNwLTIuMzgvd29yay9jbGlzcC0yLjM4L2J1aWxkL2NvbmZ0ZXN0LmM6MTgxOiB1bmRl
ZmluZWQgcmVmZXJlbmNlIHRvIGB2bV9hbGxvY2F0ZScKL3Zhci90bXAvcG9ydGFnZS9jbGlzcC0y
LjM4L3dvcmsvY2xpc3AtMi4zOC9idWlsZC9jb25mdGVzdC5jOjE4MTogdW5kZWZpbmVkIHJlZmVy
ZW5jZSB0byBgdGFza19zZWxmJwpjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpk
aXN0Y2NbMzIzMDBdIEVSUk9SOiBjb21waWxlIGNvbmZ0ZXN0LmMgb24gbG9jYWxob3N0IGZhaWxl
ZApjb25maWd1cmU6MjQxOTg6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoK
fCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQ
Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS
U0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENM
SVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6
Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2Rl
ZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJ
VFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwg
I2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5B
QkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRF
WFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVy
bgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNk
ZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVf
U1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19G
SUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAj
ZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBI
QVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RD
R0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9T
WVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8
ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAj
ZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEK
fCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVU
U0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVF
RF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lO
VEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VU
RlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwg
I2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVm
aW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhB
VkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZF
X1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0Qg
MQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5l
IEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhB
VkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJ
TUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVm
aW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFW
RV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xf
RU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01F
U1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJ
TUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNF
X1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0
CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmlu
ZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBI
QVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9T
WVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhB
VkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dF
VENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9T
WVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RB
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxL
Q05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJV
Q1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAx
CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0Zf
SU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksg
MQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBp
bnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2ln
bmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gK
fCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQK
fCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVm
aW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBT
RUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5l
IFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBI
QVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRp
bWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRI
T1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9DT05T
VCBjb25zdAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAjZGVm
aW5lIENPTk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwg
I2RlZmluZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9JTkVU
X1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FE
RFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS09Q
VCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5F
VF9IIDEKfCAjZGVmaW5lIFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVmaW5l
IElORVRfQUREUl9DT05TVCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNkZWZp
bmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQ09OU1QgY29uc3QK
fCAjZGVmaW5lIFNFVFNPQ0tPUFRfQVJHX1Qgdm9pZCoKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfT1BU
TEVOX1QgdW5zaWduZWQgaW50CnwgI2RlZmluZSBDT0RFX0FERFJFU1NfUkFOR0UgMHgwODAwMDAw
MFVMCnwgI2RlZmluZSBNQUxMT0NfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5l
IFNITElCX0FERFJFU1NfUkFOR0UgMHg0RDAwMDAwMFVMCnwgI2RlZmluZSBTVEFDS19BRERSRVNT
X1JBTkdFIDB4QkYwMDAwMDBVTAp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRQp8ICNkZWZpbmUg
UkVUR0VUUEFHRVNJWkVUWVBFIGludAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCBpbnQK
fCBtYWluICgpCnwgewp8IHZtX2FsbG9jYXRlKCk7IHRhc2tfc2VsZigpOwp8ICAgOwp8ICAgcmV0
dXJuIDA7CnwgfQpjb25maWd1cmU6MjQyMjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjI0MjQ2OiBj
aGVja2luZyBzeXMvbW1hbi5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjQyNTg6IGdjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyNDI2NDogJD8gPSAwCmNvbmZpZ3VyZToyNDI2
ODogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI0Mjcx
OiAkPyA9IDAKY29uZmlndXJlOjI0Mjc0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI0
Mjc3OiAkPyA9IDAKY29uZmlndXJlOjI0Mjg3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQyOTE6
IGNoZWNraW5nIHN5cy9tbWFuLmggcHJlc2VuY2UKY29uZmlndXJlOjI0MzAxOiBnY2MgLUUgIGNv
bmZ0ZXN0LmMKY29uZmlndXJlOjI0MzA3OiAkPyA9IDAKY29uZmlndXJlOjI0MzI3OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MjQzNjI6IGNoZWNraW5nIGZvciBzeXMvbW1hbi5oCmNvbmZpZ3VyZToy
NDM2OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI0MzgwOiBjaGVja2luZyBmb3IgbW1hcApjb25m
aWd1cmU6MjQ0Mzc6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29u
ZmlndXJlOjI0NDQzOiAkPyA9IDAKY29uZmlndXJlOjI0NDQ3OiB0ZXN0IC16IAoJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjQ0NTA6ICQ/ID0gMApjb25maWd1cmU6MjQ0
NTM6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI0NDU2OiAkPyA9IDAKY29uZmlndXJlOjI0
NDY4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjQ0ODE6IGNoZWNraW5nIGZvciB3b3JraW5nIG1t
YXAKY29uZmlndXJlOjI0NjQ3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAg
PiY1CmNvbmZpZ3VyZToyNDY1MDogJD8gPSAwCmNvbmZpZ3VyZToyNDY1MjogLi9jb25mdGVzdApj
b25maWd1cmU6MjQ2NTU6ICQ/ID0gMApjb25maWd1cmU6MjQ3Njk6IGdjYyAtbyBjb25mdGVzdCAt
ZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI0NzcyOiAkPyA9IDAKY29uZmlndXJl
OjI0Nzc0OiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNDc3NzogJD8gPSAwCmNvbmZpZ3VyZToyNDg5
NTogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MjQ4
OTg6ICQ/ID0gMApjb25maWd1cmU6MjQ5MDA6IC4vY29uZnRlc3QKY29uZmlndXJlOjI0OTAzOiAk
PyA9IDAKY29uZmlndXJlOjI1MDUzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjUwOTE6IGNoZWNr
aW5nIGZvciBtdW5tYXAKY29uZmlndXJlOjI1MTQ4OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTE1NDogJD8gPSAwCmNvbmZpZ3VyZToyNTE1ODog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MTYxOiAk
PyA9IDAKY29uZmlndXJlOjI1MTY0OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTE2Nzog
JD8gPSAwCmNvbmZpZ3VyZToyNTE3OTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1MTk1OiBjaGVj
a2luZyBmb3IgbXN5bmMKY29uZmlndXJlOjI1MjUyOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTI1ODogJD8gPSAwCmNvbmZpZ3VyZToyNTI2Mjog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MjY1OiAk
PyA9IDAKY29uZmlndXJlOjI1MjY4OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTI3MTog
JD8gPSAwCmNvbmZpZ3VyZToyNTI4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1Mjk4OiBjaGVj
a2luZyBmb3IgbXByb3RlY3QKY29uZmlndXJlOjI1MzU1OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8y
ICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTM2MTogJD8gPSAwCmNvbmZpZ3VyZToyNTM2
NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI1MzY4
OiAkPyA9IDAKY29uZmlndXJlOjI1MzcxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNTM3
NDogJD8gPSAwCmNvbmZpZ3VyZToyNTM4NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI1Mzk2OiBj
aGVja2luZyBmb3Igd29ya2luZyBtcHJvdGVjdApjb25maWd1cmU6MjU0NDY6IGdjYyAtbyBjb25m
dGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1NDQ5OiAkPyA9IDAKY29u
ZmlndXJlOjI1NDUxOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNTQ1NDogJD8gPSAwCmNvbmZpZ3Vy
ZToyNTU3MzogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1
cmU6MjU1NzY6ICQ/ID0gMApjb25maWd1cmU6MjU1Nzg6IC4vY29uZnRlc3QKY29uZmlndXJlOjI1
NTgxOiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZp
Z3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZp
bmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNs
aXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVm
aW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmlu
ZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5lIF9H
TlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19U
WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJ
Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAx
CnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVm
aW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAx
CnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAjZGVm
aW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZpbmUg
SUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VUVEVY
VCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1YgMQp8
ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAxCnwg
I2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFW
RV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU
WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
RV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAjZGVm
aW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5lIEhB
VkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9T
R1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FGTFVT
SAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gxMQp8
ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90Cnwg
I2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFMIDgK
fCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNkZWZp
bmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05BTEJM
T0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxCTE9D
S19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lHQUNU
SU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBVX0NP
TlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8ICNk
ZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNkZWZp
bmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmluZSBI
QVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5lIEhB
VkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VUUEdJ
RCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAjZGVm
aW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5lIEhB
VkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9VQUxB
Uk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEKfCAj
ZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmluZSBI
QVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VOU0VU
RU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5WX1BP
U0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRSTElN
SVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1fVCA4
CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwgI2Rl
ZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNk
ZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9X
T1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5lIFBJ
RF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FHRV9X
SE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9UIHNp
emVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNUQVQK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFURlNf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJfRlNJ
RCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNGSUxD
TlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUgSEFW
RV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1Rf
QkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVWX1Qg
OAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9PUAp8
ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwgI2Rl
ZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9UUwp8
ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8ICNkZWZp
bmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVmaW5l
IEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUgSEFW
RV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZpbmUgU0VM
RUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUgSEFWRV9S
RUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5lIEdF
VFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9HRVRIT1NU
TkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVfQ09OTkVD
VCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05ORUNUX05BTUVf
VCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qgc2l6ZV90Cnwg
I2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBWNAp8ICNkZWZpbmUgSEFW
RV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRfTlRP
UCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NFVFNPQ0tPUFQg
MQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9JTl9I
IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgUkVUX0lORVRfQUREUl9U
WVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNUIGNvbnN0CnwgI2RlZmlu
ZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZp
bmUgU0VUU09DS09QVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgU0VUU09DS09QVF9BUkdfVCB2b2lk
Kgp8ICNkZWZpbmUgU0VUU09DS09QVF9PUFRMRU5fVCB1bnNpZ25lZCBpbnQKfCAjZGVmaW5lIENP
REVfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5lIE1BTExPQ19BRERSRVNTX1JB
TkdFIDB4MDgwMDAwMDBVTAp8ICNkZWZpbmUgU0hMSUJfQUREUkVTU19SQU5HRSAweDREMDAwMDAw
VUwKfCAjZGVmaW5lIFNUQUNLX0FERFJFU1NfUkFOR0UgMHhCRjAwMDAwMFVMCnwgI2RlZmluZSBI
QVZFX0dFVFBBR0VTSVpFCnwgI2RlZmluZSBSRVRHRVRQQUdFU0laRVRZUEUgaW50CnwgI2RlZmlu
ZSBIQVZFX01NQVAKfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OCnwgI2RlZmluZSBIQVZFX01NQVBf
QU5PTllNT1VTCnwgI2RlZmluZSBIQVZFX01NQVBfREVWWkVSTwp8ICNkZWZpbmUgSEFWRV9NVU5N
QVAgMQp8ICNkZWZpbmUgSEFWRV9NU1lOQyAxCnwgI2RlZmluZSBIQVZFX01QUk9URUNUIDEKfCAv
KiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpZiBkZWZp
bmVkIF9fTUFDSF9fICYmIGRlZmluZWQgX19BUFBMRV9fCnwgLyogQXZvaWQgYSBjcmFzaCBvbiBN
YWNPUyBYLiAgKi8KfCAjaW5jbHVkZSA8bWFjaC9tYWNoLmg+CnwgI2luY2x1ZGUgPG1hY2gvbWFj
aF9lcnJvci5oPgp8ICNpbmNsdWRlIDxtYWNoL3RocmVhZF9zdGF0dXMuaD4KfCAjaW5jbHVkZSA8
bWFjaC9leGNlcHRpb24uaD4KfCAjaW5jbHVkZSA8bWFjaC90YXNrLmg+CnwgI2luY2x1ZGUgPHB0
aHJlYWQuaD4KfCAvKiBUaGUgZXhjZXB0aW9uIHBvcnQgb24gd2hpY2ggb3VyIHRocmVhZCBsaXN0
ZW5zLiAgKi8KfCBzdGF0aWMgbWFjaF9wb3J0X3Qgb3VyX2V4Y2VwdGlvbl9wb3J0Owp8IC8qIFRo
ZSBtYWluIGZ1bmN0aW9uIG9mIHRoZSB0aHJlYWQgbGlzdGVuaW5nIGZvciBleGNlcHRpb25zIG9m
IHR5cGUKfCAgICBFWENfQkFEX0FDQ0VTUy4gICovCnwgc3RhdGljIHZvaWQgKgp8IG1hY2hfZXhj
ZXB0aW9uX3RocmVhZCAodm9pZCAqYXJnKQp8IHsKfCAgIC8qIEJ1ZmZlciBmb3IgYSBtZXNzYWdl
IHRvIGJlIHJlY2VpdmVkLiAgKi8KfCAgIHN0cnVjdCB7CnwgICAgIG1hY2hfbXNnX2hlYWRlcl90
IGhlYWQ7CnwgICAgIG1hY2hfbXNnX2JvZHlfdCBtc2doX2JvZHk7CnwgICAgIGNoYXIgZGF0YVsx
MDI0XTsKfCAgIH0gbXNnOwp8ICAgbWFjaF9tc2dfcmV0dXJuX3QgcmV0dmFsOwp8ICAgLyogV2Fp
dCBmb3IgYSBtZXNzYWdlIG9uIHRoZSBleGNlcHRpb24gcG9ydC4gICovCnwgICByZXR2YWwgPSBt
YWNoX21zZyAoJm1zZy5oZWFkLCBNQUNIX1JDVl9NU0cgfCBNQUNIX1JDVl9MQVJHRSwgMCwgc2l6
ZW9mIChtc2cpLAp8ICAgICAgICAgICAgICAgICAgICAgIG91cl9leGNlcHRpb25fcG9ydCwgTUFD
SF9NU0dfVElNRU9VVF9OT05FLCBNQUNIX1BPUlRfTlVMTCk7CnwgICBpZiAocmV0dmFsICE9IE1B
Q0hfTVNHX1NVQ0NFU1MpCnwgICAgIGFib3J0ICgpOwp8ICAgZXhpdCAoMSk7CnwgfQp8IHN0YXRp
YyB2b2lkCnwgbm9jcmFzaF9pbml0ICh2b2lkKQp8IHsKfCAgIG1hY2hfcG9ydF90IHNlbGYgPSBt
YWNoX3Rhc2tfc2VsZiAoKTsKfCAgIC8qIEFsbG9jYXRlIGEgcG9ydCBvbiB3aGljaCB0aGUgdGhy
ZWFkIHNoYWxsIGxpc3RlbiBmb3IgZXhjZXB0aW9ucy4gICovCnwgICBpZiAobWFjaF9wb3J0X2Fs
bG9jYXRlIChzZWxmLCBNQUNIX1BPUlRfUklHSFRfUkVDRUlWRSwgJm91cl9leGNlcHRpb25fcG9y
dCkKfCAgICAgICA9PSBLRVJOX1NVQ0NFU1MpIHsKfCAgICAgLyogU2VlIGh0dHA6Ly93ZWIubWl0
LmVkdS9kYXJ3aW4vc3JjL21vZHVsZXMveG51L29zZm1rL21hbi9tYWNoX3BvcnRfaW5zZXJ0X3Jp
Z2h0Lmh0bWwuICAqLwp8ICAgICBpZiAobWFjaF9wb3J0X2luc2VydF9yaWdodCAoc2VsZiwgb3Vy
X2V4Y2VwdGlvbl9wb3J0LCBvdXJfZXhjZXB0aW9uX3BvcnQsCnwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBNQUNIX01TR19UWVBFX01BS0VfU0VORCkKfCAgICAgICAgID09IEtFUk5f
U1VDQ0VTUykgewp8ICAgICAgIC8qIFRoZSBleGNlcHRpb25zIHdlIHdhbnQgdG8gY2F0Y2guICBP
bmx5IEVYQ19CQURfQUNDRVNTIGlzIGludGVyZXN0aW5nCnwgICAgICAgICAgZm9yIHVzLiAgKi8K
fCAgICAgICBleGNlcHRpb25fbWFza190IG1hc2sgPSBFWENfTUFTS19CQURfQUNDRVNTOwp8ICAg
ICAgIC8qIENyZWF0ZSB0aGUgdGhyZWFkIGxpc3RlbmluZyBvbiB0aGUgZXhjZXB0aW9uIHBvcnQu
ICAqLwp8ICAgICAgIHB0aHJlYWRfYXR0cl90IGF0dHI7CnwgICAgICAgcHRocmVhZF90IHRocmVh
ZDsKfCAgICAgICBpZiAocHRocmVhZF9hdHRyX2luaXQgKCZhdHRyKSA9PSAwCnwgICAgICAgICAg
ICYmIHB0aHJlYWRfYXR0cl9zZXRkZXRhY2hzdGF0ZSAoJmF0dHIsIFBUSFJFQURfQ1JFQVRFX0RF
VEFDSEVEKSA9PSAwCnwgICAgICAgICAgICYmIHB0aHJlYWRfY3JlYXRlICgmdGhyZWFkLCAmYXR0
ciwgbWFjaF9leGNlcHRpb25fdGhyZWFkLCBOVUxMKSA9PSAwKSB7CnwgICAgICAgICBwdGhyZWFk
X2F0dHJfZGVzdHJveSAoJmF0dHIpOwp8ICAgICAgICAgLyogUmVwbGFjZSB0aGUgZXhjZXB0aW9u
IHBvcnQgaW5mbyBmb3IgdGhlc2UgZXhjZXB0aW9ucyB3aXRoIG91ciBvd24uCnwgICAgICAgICAg
ICBOb3RlIHRoYXQgd2UgcmVwbGFjZSB0aGUgZXhjZXB0aW9uIHBvcnQgZm9yIHRoZSBlbnRpcmUg
dGFzaywgbm90IG9ubHkKfCAgICAgICAgICAgIGZvciBhIHBhcnRpY3VsYXIgdGhyZWFkLiAgVGhp
cyBoYXMgdGhlIGVmZmVjdCB0aGF0IHdoZW4gb3VyIGV4Y2VwdGlvbgp8ICAgICAgICAgICAgcG9y
dCBnZXRzIHRoZSBtZXNzYWdlLCB0aGUgdGhyZWFkIHNwZWNpZmljIGV4Y2VwdGlvbiBwb3J0IGhh
cyBhbHJlYWR5CnwgICAgICAgICAgICBiZWVuIGFza2VkLCBhbmQgd2UgZG9uJ3QgbmVlZCB0byBi
b3RoZXIgYWJvdXQgaXQuCnwgICAgICAgICAgICBTZWUgaHR0cDovL3dlYi5taXQuZWR1L2Rhcndp
bi9zcmMvbW9kdWxlcy94bnUvb3NmbWsvbWFuL3Rhc2tfc2V0X2V4Y2VwdGlvbl9wb3J0cy5odG1s
LiAgKi8KfCAgICAgICAgIHRhc2tfc2V0X2V4Y2VwdGlvbl9wb3J0cyAoc2VsZiwgbWFzaywgb3Vy
X2V4Y2VwdGlvbl9wb3J0LAp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWENF
UFRJT05fREVGQVVMVCwgTUFDSElORV9USFJFQURfU1RBVEUpOwp8ICAgICAgIH0KfCAgICAgfQp8
ICAgfQp8IH0KfCAjZWxzZQp8IC8qIEF2b2lkIGEgY3Jhc2ggb24gUE9TSVggc3lzdGVtcy4gICov
CnwgI2luY2x1ZGUgPHNpZ25hbC5oPgp8IC8qIEEgUE9TSVggc2lnbmFsIGhhbmRsZXIuICAqLwp8
IHN0YXRpYyB2b2lkCnwgZXhjZXB0aW9uX2hhbmRsZXIgKGludCBzaWcpCnwgewp8ICAgZXhpdCAo
MSk7CnwgfQp8IHN0YXRpYyB2b2lkCnwgbm9jcmFzaF9pbml0ICh2b2lkKQp8IHsKfCAjaWZkZWYg
U0lHU0VHVgp8ICAgc2lnbmFsIChTSUdTRUdWLCBleGNlcHRpb25faGFuZGxlcik7CnwgI2VuZGlm
CnwgI2lmZGVmIFNJR0JVUwp8ICAgc2lnbmFsIChTSUdCVVMsIGV4Y2VwdGlvbl9oYW5kbGVyKTsK
fCAjZW5kaWYKfCB9CnwgI2VuZGlmCnwgCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8IC8qIGRl
Y2xhcmUgbWFsbG9jKCkgKi8KfCAjaW5jbHVkZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5J
U1REX0gKfCAjaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgLyogZGVjbGFyZSBnZXRwYWdl
c2l6ZSgpIGFuZCBtcHJvdGVjdCgpICovCnwgI2luY2x1ZGUgPHN5cy9tbWFuLmg+CnwgI2lmbmRl
ZiBIQVZFX0dFVFBBR0VTSVpFCnwgI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgp8ICNkZWZpbmUgZ2V0
cGFnZXNpemUoKSBQQUdFU0laRQp8ICNlbHNlCnwgZXh0ZXJuCnwgI2lmZGVmIF9fY3BsdXNwbHVz
CnwgIkMiCnwgI2VuZGlmCnwgCnwgI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19j
cGx1c3BsdXMpCnwgUkVUR0VUUEFHRVNJWkVUWVBFIGdldHBhZ2VzaXplICh2b2lkKTsKfCAjZWxz
ZQp8IFJFVEdFVFBBR0VTSVpFVFlQRSBnZXRwYWdlc2l6ZSgpOwp8ICNlbmRpZgp8ICNlbmRpZgp8
IGNoYXIgZm9vOwp8IGludCBtYWluICgpIHsKfCAgIHVuc2lnbmVkIGxvbmcgcGFnZXNpemUgPSBn
ZXRwYWdlc2l6ZSgpOwp8ICNkZWZpbmUgcGFnZV9hbGlnbihhZGRyZXNzKSAgKGNoYXIqKSgodW5z
aWduZWQgbG9uZykoYWRkcmVzcykgJiAtcGFnZXNpemUpCnwgCnwgICBjaGFyKiBhcmVhID0gKGNo
YXIqKSBtYWxsb2MoNipwYWdlc2l6ZSk7CnwgICBjaGFyKiBmYXVsdF9hZGRyZXNzID0gYXJlYSAr
IHBhZ2VzaXplKjcvMjsKfCAKfCAgIG5vY3Jhc2hfaW5pdCgpOwp8ICAgaWYgKG1wcm90ZWN0KHBh
Z2VfYWxpZ24oZmF1bHRfYWRkcmVzcykscGFnZXNpemUsUFJPVF9OT05FKSA8IDApIGV4aXQoMCk7
CnwgICBmb28gPSAqZmF1bHRfYWRkcmVzczsgLyogdGhpcyBzaG91bGQgY2F1c2UgYW4gZXhjZXB0
aW9uIG9yIHNpZ25hbCAqLwp8ICAgZXhpdCgwKTsgfQpjb25maWd1cmU6MjU2OTU6IGdjYyAtbyBj
b25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjI1Njk4OiAkPyA9IDAK
Y29uZmlndXJlOjI1NzAwOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNTcwMzogJD8gPSAxCmNvbmZp
Z3VyZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMgMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n
cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi
R05VIENMSVNQIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBB
Q0tBR0VfVkVSU0lPTiAiMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO
RyAiR05VIENMSVNQIDIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
UlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2Rl
ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNf
XyAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVf
T0ZGU0VUX0JJVFMgNjQKfCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwg
I2VuZGlmCnwgI2RlZmluZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNk
ZWZpbmUgRU5BQkxFX05MUyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFW
RV9EQ0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92
b2lkIHJldHVybgp8ICNkZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05H
TE9ORwp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVm
aW5lIEhBVkVfU1REQk9PTF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNO
QU1FX0gKfCAjZGVmaW5lIEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwg
I2RlZmluZSBIQVZFX1RFUk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmlu
ZSBIQVZFX1RDR0VUQVRUUgp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJ
WkVfTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1Qg
Y2FkZHJfdAp8ICNkZWZpbmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09G
Rl9UIDgKfCAjZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FM
TE9DQV9IIDEKfCAjZGVmaW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNk
ZWZpbmUgUkVUU0lHVFlQRSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmlu
ZSBTSUdOQUxCTE9DS19QT1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBT
SUdOQUxfTkVFRF9VTkJMT0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBI
QVZFX1NJR0lOVEVSUlVQVCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5l
IEhBVkVfU0VURlBVQ1cKfCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQ
RSB2b2lkCnwgI2RlZmluZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RF
Q0wKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAj
ZGVmaW5lIEhBVkVfR0VURFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2Rl
ZmluZSBIQVZFX1NFVFNJRCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFW
RV9GQ0hNT0QgMQp8ICNkZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEK
fCAjZGVmaW5lIEhBVkVfR0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAj
ZGVmaW5lIEhBVkVfVVNMRUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhB
VkVfU0VUSVRJTUVSIDEKfCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1F
IDEKfCAjZGVmaW5lIEhBVkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNk
ZWZpbmUgSEFWRV9TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBI
QVZFX0RFQ0xfRU5WSVJPTiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBI
QVZFX0xDX01FU1NBR0VTIDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhB
VkVfU0VUUkxJTUlUIDEKfCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlU
X1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NP
TlNUIGNvbnN0CnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAx
CnwgI2RlZmluZSBIQVZFX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwg
I2RlZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZp
bmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAj
ZGVmaW5lIEhBVkVfR0VUUlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmlu
ZSBIQVZFX0dFVENXRAp8ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJ
TUVfV0lUSF9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFUVkZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0la
RU9GX0ZTQkxLQ05UX1QgOAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUg
SEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1Rf
QkxLU0laRSAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmlu
ZSBTSVpFT0ZfSU5PX1QgOAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVf
UkVBRExJTksgMQp8ICNkZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NF
RElSVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVT
VF9UIHVuc2lnbmVkIGxvbmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lT
X0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVf
RklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BP
TEwKfCAjZGVmaW5lIEhBVkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwg
I2RlZmluZSBTRUxFQ1RfV0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQK
fCAjZGVmaW5lIFNFTEVDVF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwg
I2RlZmluZSBIQVZFX0dFVFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qg
c3RydWN0IHRpbWV6b25lICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUg
SEFWRV9HRVRIT1NUQllOQU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09O
TkVDVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRy
ICoKfCAjZGVmaW5lIENPTk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNf
VU5fSCAxCnwgI2RlZmluZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUg
SEFWRV9JTkVUX1BUT04gMQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFW
RV9JTkVUX0FERFIgMQp8ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVf
R0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZF
X0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQK
fCAjZGVmaW5lIElORVRfQUREUl9DT05TVCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJ
WAp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQ09O
U1QgY29uc3QKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQVJHX1Qgdm9pZCoKfCAjZGVmaW5lIFNFVFNP
Q0tPUFRfT1BUTEVOX1QgdW5zaWduZWQgaW50CnwgI2RlZmluZSBDT0RFX0FERFJFU1NfUkFOR0Ug
MHgwODAwMDAwMFVMCnwgI2RlZmluZSBNQUxMT0NfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwK
fCAjZGVmaW5lIFNITElCX0FERFJFU1NfUkFOR0UgMHg0RDAwMDAwMFVMCnwgI2RlZmluZSBTVEFD
S19BRERSRVNTX1JBTkdFIDB4QkYwMDAwMDBVTAp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRQp8
ICNkZWZpbmUgUkVUR0VUUEFHRVNJWkVUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9NTUFQCnwgI2Rl
ZmluZSBIQVZFX01NQVBfQU5PTgp8ICNkZWZpbmUgSEFWRV9NTUFQX0FOT05ZTU9VUwp8ICNkZWZp
bmUgSEFWRV9NTUFQX0RFVlpFUk8KfCAjZGVmaW5lIEhBVkVfTVVOTUFQIDEKfCAjZGVmaW5lIEhB
VkVfTVNZTkMgMQp8ICNkZWZpbmUgSEFWRV9NUFJPVEVDVCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu
ICAqLwp8IAp8ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAjaWYgZGVmaW5lZCBfX01BQ0hfXyAmJiBk
ZWZpbmVkIF9fQVBQTEVfXwp8IC8qIEF2b2lkIGEgY3Jhc2ggb24gTWFjT1MgWC4gICovCnwgI2lu
Y2x1ZGUgPG1hY2gvbWFjaC5oPgp8ICNpbmNsdWRlIDxtYWNoL21hY2hfZXJyb3IuaD4KfCAjaW5j
bHVkZSA8bWFjaC90aHJlYWRfc3RhdHVzLmg+CnwgI2luY2x1ZGUgPG1hY2gvZXhjZXB0aW9uLmg+
CnwgI2luY2x1ZGUgPG1hY2gvdGFzay5oPgp8ICNpbmNsdWRlIDxwdGhyZWFkLmg+CnwgLyogVGhl
IGV4Y2VwdGlvbiBwb3J0IG9uIHdoaWNoIG91ciB0aHJlYWQgbGlzdGVucy4gICovCnwgc3RhdGlj
IG1hY2hfcG9ydF90IG91cl9leGNlcHRpb25fcG9ydDsKfCAvKiBUaGUgbWFpbiBmdW5jdGlvbiBv
ZiB0aGUgdGhyZWFkIGxpc3RlbmluZyBmb3IgZXhjZXB0aW9ucyBvZiB0eXBlCnwgICAgRVhDX0JB
RF9BQ0NFU1MuICAqLwp8IHN0YXRpYyB2b2lkICoKfCBtYWNoX2V4Y2VwdGlvbl90aHJlYWQgKHZv
aWQgKmFyZykKfCB7CnwgICAvKiBCdWZmZXIgZm9yIGEgbWVzc2FnZSB0byBiZSByZWNlaXZlZC4g
ICovCnwgICBzdHJ1Y3Qgewp8ICAgICBtYWNoX21zZ19oZWFkZXJfdCBoZWFkOwp8ICAgICBtYWNo
X21zZ19ib2R5X3QgbXNnaF9ib2R5Owp8ICAgICBjaGFyIGRhdGFbMTAyNF07CnwgICB9IG1zZzsK
fCAgIG1hY2hfbXNnX3JldHVybl90IHJldHZhbDsKfCAgIC8qIFdhaXQgZm9yIGEgbWVzc2FnZSBv
biB0aGUgZXhjZXB0aW9uIHBvcnQuICAqLwp8ICAgcmV0dmFsID0gbWFjaF9tc2cgKCZtc2cuaGVh
ZCwgTUFDSF9SQ1ZfTVNHIHwgTUFDSF9SQ1ZfTEFSR0UsIDAsIHNpemVvZiAobXNnKSwKfCAgICAg
ICAgICAgICAgICAgICAgICBvdXJfZXhjZXB0aW9uX3BvcnQsIE1BQ0hfTVNHX1RJTUVPVVRfTk9O
RSwgTUFDSF9QT1JUX05VTEwpOwp8ICAgaWYgKHJldHZhbCAhPSBNQUNIX01TR19TVUNDRVNTKQp8
ICAgICBhYm9ydCAoKTsKfCAgIGV4aXQgKDEpOwp8IH0KfCBzdGF0aWMgdm9pZAp8IG5vY3Jhc2hf
aW5pdCAodm9pZCkKfCB7CnwgICBtYWNoX3BvcnRfdCBzZWxmID0gbWFjaF90YXNrX3NlbGYgKCk7
CnwgICAvKiBBbGxvY2F0ZSBhIHBvcnQgb24gd2hpY2ggdGhlIHRocmVhZCBzaGFsbCBsaXN0ZW4g
Zm9yIGV4Y2VwdGlvbnMuICAqLwp8ICAgaWYgKG1hY2hfcG9ydF9hbGxvY2F0ZSAoc2VsZiwgTUFD
SF9QT1JUX1JJR0hUX1JFQ0VJVkUsICZvdXJfZXhjZXB0aW9uX3BvcnQpCnwgICAgICAgPT0gS0VS
Tl9TVUNDRVNTKSB7CnwgICAgIC8qIFNlZSBodHRwOi8vd2ViLm1pdC5lZHUvZGFyd2luL3NyYy9t
b2R1bGVzL3hudS9vc2Ztay9tYW4vbWFjaF9wb3J0X2luc2VydF9yaWdodC5odG1sLiAgKi8KfCAg
ICAgaWYgKG1hY2hfcG9ydF9pbnNlcnRfcmlnaHQgKHNlbGYsIG91cl9leGNlcHRpb25fcG9ydCwg
b3VyX2V4Y2VwdGlvbl9wb3J0LAp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFD
SF9NU0dfVFlQRV9NQUtFX1NFTkQpCnwgICAgICAgICA9PSBLRVJOX1NVQ0NFU1MpIHsKfCAgICAg
ICAvKiBUaGUgZXhjZXB0aW9ucyB3ZSB3YW50IHRvIGNhdGNoLiAgT25seSBFWENfQkFEX0FDQ0VT
UyBpcyBpbnRlcmVzdGluZwp8ICAgICAgICAgIGZvciB1cy4gICovCnwgICAgICAgZXhjZXB0aW9u
X21hc2tfdCBtYXNrID0gRVhDX01BU0tfQkFEX0FDQ0VTUzsKfCAgICAgICAvKiBDcmVhdGUgdGhl
IHRocmVhZCBsaXN0ZW5pbmcgb24gdGhlIGV4Y2VwdGlvbiBwb3J0LiAgKi8KfCAgICAgICBwdGhy
ZWFkX2F0dHJfdCBhdHRyOwp8ICAgICAgIHB0aHJlYWRfdCB0aHJlYWQ7CnwgICAgICAgaWYgKHB0
aHJlYWRfYXR0cl9pbml0ICgmYXR0cikgPT0gMAp8ICAgICAgICAgICAmJiBwdGhyZWFkX2F0dHJf
c2V0ZGV0YWNoc3RhdGUgKCZhdHRyLCBQVEhSRUFEX0NSRUFURV9ERVRBQ0hFRCkgPT0gMAp8ICAg
ICAgICAgICAmJiBwdGhyZWFkX2NyZWF0ZSAoJnRocmVhZCwgJmF0dHIsIG1hY2hfZXhjZXB0aW9u
X3RocmVhZCwgTlVMTCkgPT0gMCkgewp8ICAgICAgICAgcHRocmVhZF9hdHRyX2Rlc3Ryb3kgKCZh
dHRyKTsKfCAgICAgICAgIC8qIFJlcGxhY2UgdGhlIGV4Y2VwdGlvbiBwb3J0IGluZm8gZm9yIHRo
ZXNlIGV4Y2VwdGlvbnMgd2l0aCBvdXIgb3duLgp8ICAgICAgICAgICAgTm90ZSB0aGF0IHdlIHJl
cGxhY2UgdGhlIGV4Y2VwdGlvbiBwb3J0IGZvciB0aGUgZW50aXJlIHRhc2ssIG5vdCBvbmx5Cnwg
ICAgICAgICAgICBmb3IgYSBwYXJ0aWN1bGFyIHRocmVhZC4gIFRoaXMgaGFzIHRoZSBlZmZlY3Qg
dGhhdCB3aGVuIG91ciBleGNlcHRpb24KfCAgICAgICAgICAgIHBvcnQgZ2V0cyB0aGUgbWVzc2Fn
ZSwgdGhlIHRocmVhZCBzcGVjaWZpYyBleGNlcHRpb24gcG9ydCBoYXMgYWxyZWFkeQp8ICAgICAg
ICAgICAgYmVlbiBhc2tlZCwgYW5kIHdlIGRvbid0IG5lZWQgdG8gYm90aGVyIGFib3V0IGl0Lgp8
ICAgICAgICAgICAgU2VlIGh0dHA6Ly93ZWIubWl0LmVkdS9kYXJ3aW4vc3JjL21vZHVsZXMveG51
L29zZm1rL21hbi90YXNrX3NldF9leGNlcHRpb25fcG9ydHMuaHRtbC4gICovCnwgICAgICAgICB0
YXNrX3NldF9leGNlcHRpb25fcG9ydHMgKHNlbGYsIG1hc2ssIG91cl9leGNlcHRpb25fcG9ydCwK
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhDRVBUSU9OX0RFRkFVTFQsIE1B
Q0hJTkVfVEhSRUFEX1NUQVRFKTsKfCAgICAgICB9CnwgICAgIH0KfCAgIH0KfCB9CnwgI2Vsc2UK
fCAvKiBBdm9pZCBhIGNyYXNoIG9uIFBPU0lYIHN5c3RlbXMuICAqLwp8ICNpbmNsdWRlIDxzaWdu
YWwuaD4KfCAvKiBBIFBPU0lYIHNpZ25hbCBoYW5kbGVyLiAgKi8KfCBzdGF0aWMgdm9pZAp8IGV4
Y2VwdGlvbl9oYW5kbGVyIChpbnQgc2lnKQp8IHsKfCAgIGV4aXQgKDEpOwp8IH0KfCBzdGF0aWMg
dm9pZAp8IG5vY3Jhc2hfaW5pdCAodm9pZCkKfCB7CnwgI2lmZGVmIFNJR1NFR1YKfCAgIHNpZ25h
bCAoU0lHU0VHViwgZXhjZXB0aW9uX2hhbmRsZXIpOwp8ICNlbmRpZgp8ICNpZmRlZiBTSUdCVVMK
fCAgIHNpZ25hbCAoU0lHQlVTLCBleGNlcHRpb25faGFuZGxlcik7CnwgI2VuZGlmCnwgfQp8ICNl
bmRpZgp8IAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAvKiBkZWNsYXJlIG1hbGxvYygpICov
CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpZmRlZiBIQVZFX1VOSVNURF9ICnwgI2luY2x1ZGUg
PHVuaXN0ZC5oPgp8ICNlbmRpZgp8IC8qIGRlY2xhcmUgZ2V0cGFnZXNpemUoKSBhbmQgbXByb3Rl
Y3QoKSAqLwp8ICNpbmNsdWRlIDxzeXMvbW1hbi5oPgp8ICNpZm5kZWYgSEFWRV9HRVRQQUdFU0la
RQp8ICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KfCAjZGVmaW5lIGdldHBhZ2VzaXplKCkgUEFHRVNJ
WkUKfCAjZWxzZQp8IGV4dGVybgp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8
IAp8ICNpZiBkZWZpbmVkKF9fU1REQ19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQp8IFJFVEdF
VFBBR0VTSVpFVFlQRSBnZXRwYWdlc2l6ZSAodm9pZCk7CnwgI2Vsc2UKfCBSRVRHRVRQQUdFU0la
RVRZUEUgZ2V0cGFnZXNpemUoKTsKfCAjZW5kaWYKfCAjZW5kaWYKfCBjaGFyIGZvbzsKfCBpbnQg
bWFpbiAoKSB7CnwgICB1bnNpZ25lZCBsb25nIHBhZ2VzaXplID0gZ2V0cGFnZXNpemUoKTsKfCAj
ZGVmaW5lIHBhZ2VfYWxpZ24oYWRkcmVzcykgIChjaGFyKikoKHVuc2lnbmVkIGxvbmcpKGFkZHJl
c3MpICYgLXBhZ2VzaXplKQp8IAp8ICAgY2hhciogYXJlYSA9IChjaGFyKikgbWFsbG9jKDYqcGFn
ZXNpemUpOwp8ICAgY2hhciogZmF1bHRfYWRkcmVzcyA9IGFyZWEgKyBwYWdlc2l6ZSo3LzI7Cnwg
CnwgICBub2NyYXNoX2luaXQoKTsKfCAgIGlmIChtcHJvdGVjdChwYWdlX2FsaWduKGZhdWx0X2Fk
ZHJlc3MpLHBhZ2VzaXplLFBST1RfTk9ORSkgPCAwKSBleGl0KDApOwp8ICAgKmZhdWx0X2FkZHJl
c3MgPSAneic7IC8qIHRoaXMgc2hvdWxkIGNhdXNlIGFuIGV4Y2VwdGlvbiBvciBzaWduYWwgKi8K
fCAgIGV4aXQoMCk7IH0KY29uZmlndXJlOjI1ODE3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToyNTgyMDogJD8gPSAwCmNvbmZpZ3VyZToyNTgyMjog
Li9jb25mdGVzdApjb25maWd1cmU6MjU4MjU6ICQ/ID0gMQpjb25maWd1cmU6IHByb2dyYW0gZXhp
dGVkIHdpdGggc3RhdHVzIDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29u
ZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVm
aW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3AiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIu
MzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4
ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3Au
Y29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJT
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg
I2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVm
aW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5l
IEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgX19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BP
U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0Cnwg
I2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUgX19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUg
SEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09OVl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMg
MQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAj
ZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVm
aW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVmaW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNU
RENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09GRlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xf
SCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEK
fCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUgSEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBI
QVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJN
SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIK
fCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwgI2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RM
X0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2RlZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5l
IFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVmaW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBT
SVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNkZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmlu
ZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBIQVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUg
dm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9T
SVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JTRAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9D
Swp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQg
MQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJPTF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwg
I2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmluZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUg
QUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBIQVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZF
X1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERU
QUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9NRU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQg
MQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEKfCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVm
aW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUgSEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dF
VEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9TSFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVF
UCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAxCnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwg
I2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZpbmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZF
X1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVfUFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5W
IDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04g
MQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAx
CnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAxCnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwg
I2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAjZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0g
X19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9W
Rk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JL
SU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1QgcGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJV
U0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19UIGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAj
ZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6ZV90CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUg
MQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
I2RlZmluZSBIQVZFX1NDQUxBUl9GU0lEIDEKfCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgK
fCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENOVF9UIDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf
U1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9DS1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgK
fCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4CnwgI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVm
aW5lIEVMT09QX1ZBTFVFIEVMT09QCnwgI2RlZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2Rl
ZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5lIElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25n
CnwgI2RlZmluZSBJT0NUTF9ET1RTCnwgI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmlu
ZSBIQVZFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmlu
ZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZF
X1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJ
RFRIX1QgaW50CnwgI2RlZmluZSBTRUxFQ1RfU0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1Rf
Q09OU1QgCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRU
SU1FT0ZEQVkgMQp8ICNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAq
CnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFN
RQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEKfCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QK
fCAjZGVmaW5lIENPTk5FQ1RfTkFNRV9UIHN0cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05O
RUNUX0FERFJMRU5fVCBzaXplX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUg
SEFWRV9JUFY0CnwgI2RlZmluZSBIQVZFX0lQVjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEK
fCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAj
ZGVmaW5lIEhBVkVfU0VUU09DS09QVCAxCnwgI2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNk
ZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwg
I2RlZmluZSBSRVRfSU5FVF9BRERSX1RZUEUgdW5zaWduZWQgaW50CnwgI2RlZmluZSBJTkVUX0FE
RFJfQ09OU1QgY29uc3QKfCAjZGVmaW5lIElORVRfQUREUl9TVUZGSVgKfCAjZGVmaW5lIEhBVkVf
TkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBTRVRTT0NLT1BUX0NPTlNUIGNvbnN0CnwgI2RlZmlu
ZSBTRVRTT0NLT1BUX0FSR19UIHZvaWQqCnwgI2RlZmluZSBTRVRTT0NLT1BUX09QVExFTl9UIHVu
c2lnbmVkIGludAp8ICNkZWZpbmUgQ09ERV9BRERSRVNTX1JBTkdFIDB4MDgwMDAwMDBVTAp8ICNk
ZWZpbmUgTUFMTE9DX0FERFJFU1NfUkFOR0UgMHgwODAwMDAwMFVMCnwgI2RlZmluZSBTSExJQl9B
RERSRVNTX1JBTkdFIDB4NEQwMDAwMDBVTAp8ICNkZWZpbmUgU1RBQ0tfQUREUkVTU19SQU5HRSAw
eEJGMDAwMDAwVUwKfCAjZGVmaW5lIEhBVkVfR0VUUEFHRVNJWkUKfCAjZGVmaW5lIFJFVEdFVFBB
R0VTSVpFVFlQRSBpbnQKfCAjZGVmaW5lIEhBVkVfTU1BUAp8ICNkZWZpbmUgSEFWRV9NTUFQX0FO
T04KfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OWU1PVVMKfCAjZGVmaW5lIEhBVkVfTU1BUF9ERVZa
RVJPCnwgI2RlZmluZSBIQVZFX01VTk1BUCAxCnwgI2RlZmluZSBIQVZFX01TWU5DIDEKfCAjZGVm
aW5lIEhBVkVfTVBST1RFQ1QgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVk
ZSA8c3RkbGliLmg+CnwgI2lmIGRlZmluZWQgX19NQUNIX18gJiYgZGVmaW5lZCBfX0FQUExFX18K
fCAvKiBBdm9pZCBhIGNyYXNoIG9uIE1hY09TIFguICAqLwp8ICNpbmNsdWRlIDxtYWNoL21hY2gu
aD4KfCAjaW5jbHVkZSA8bWFjaC9tYWNoX2Vycm9yLmg+CnwgI2luY2x1ZGUgPG1hY2gvdGhyZWFk
X3N0YXR1cy5oPgp8ICNpbmNsdWRlIDxtYWNoL2V4Y2VwdGlvbi5oPgp8ICNpbmNsdWRlIDxtYWNo
L3Rhc2suaD4KfCAjaW5jbHVkZSA8cHRocmVhZC5oPgp8IC8qIFRoZSBleGNlcHRpb24gcG9ydCBv
biB3aGljaCBvdXIgdGhyZWFkIGxpc3RlbnMuICAqLwp8IHN0YXRpYyBtYWNoX3BvcnRfdCBvdXJf
ZXhjZXB0aW9uX3BvcnQ7CnwgLyogVGhlIG1haW4gZnVuY3Rpb24gb2YgdGhlIHRocmVhZCBsaXN0
ZW5pbmcgZm9yIGV4Y2VwdGlvbnMgb2YgdHlwZQp8ICAgIEVYQ19CQURfQUNDRVNTLiAgKi8KfCBz
dGF0aWMgdm9pZCAqCnwgbWFjaF9leGNlcHRpb25fdGhyZWFkICh2b2lkICphcmcpCnwgewp8ICAg
LyogQnVmZmVyIGZvciBhIG1lc3NhZ2UgdG8gYmUgcmVjZWl2ZWQuICAqLwp8ICAgc3RydWN0IHsK
fCAgICAgbWFjaF9tc2dfaGVhZGVyX3QgaGVhZDsKfCAgICAgbWFjaF9tc2dfYm9keV90IG1zZ2hf
Ym9keTsKfCAgICAgY2hhciBkYXRhWzEwMjRdOwp8ICAgfSBtc2c7CnwgICBtYWNoX21zZ19yZXR1
cm5fdCByZXR2YWw7CnwgICAvKiBXYWl0IGZvciBhIG1lc3NhZ2Ugb24gdGhlIGV4Y2VwdGlvbiBw
b3J0LiAgKi8KfCAgIHJldHZhbCA9IG1hY2hfbXNnICgmbXNnLmhlYWQsIE1BQ0hfUkNWX01TRyB8
IE1BQ0hfUkNWX0xBUkdFLCAwLCBzaXplb2YgKG1zZyksCnwgICAgICAgICAgICAgICAgICAgICAg
b3VyX2V4Y2VwdGlvbl9wb3J0LCBNQUNIX01TR19USU1FT1VUX05PTkUsIE1BQ0hfUE9SVF9OVUxM
KTsKfCAgIGlmIChyZXR2YWwgIT0gTUFDSF9NU0dfU1VDQ0VTUykKfCAgICAgYWJvcnQgKCk7Cnwg
ICBleGl0ICgxKTsKfCB9Cnwgc3RhdGljIHZvaWQKfCBub2NyYXNoX2luaXQgKHZvaWQpCnwgewp8
ICAgbWFjaF9wb3J0X3Qgc2VsZiA9IG1hY2hfdGFza19zZWxmICgpOwp8ICAgLyogQWxsb2NhdGUg
YSBwb3J0IG9uIHdoaWNoIHRoZSB0aHJlYWQgc2hhbGwgbGlzdGVuIGZvciBleGNlcHRpb25zLiAg
Ki8KfCAgIGlmIChtYWNoX3BvcnRfYWxsb2NhdGUgKHNlbGYsIE1BQ0hfUE9SVF9SSUdIVF9SRUNF
SVZFLCAmb3VyX2V4Y2VwdGlvbl9wb3J0KQp8ICAgICAgID09IEtFUk5fU1VDQ0VTUykgewp8ICAg
ICAvKiBTZWUgaHR0cDovL3dlYi5taXQuZWR1L2Rhcndpbi9zcmMvbW9kdWxlcy94bnUvb3NmbWsv
bWFuL21hY2hfcG9ydF9pbnNlcnRfcmlnaHQuaHRtbC4gICovCnwgICAgIGlmIChtYWNoX3BvcnRf
aW5zZXJ0X3JpZ2h0IChzZWxmLCBvdXJfZXhjZXB0aW9uX3BvcnQsIG91cl9leGNlcHRpb25fcG9y
dCwKfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BQ0hfTVNHX1RZUEVfTUFLRV9T
RU5EKQp8ICAgICAgICAgPT0gS0VSTl9TVUNDRVNTKSB7CnwgICAgICAgLyogVGhlIGV4Y2VwdGlv
bnMgd2Ugd2FudCB0byBjYXRjaC4gIE9ubHkgRVhDX0JBRF9BQ0NFU1MgaXMgaW50ZXJlc3RpbmcK
fCAgICAgICAgICBmb3IgdXMuICAqLwp8ICAgICAgIGV4Y2VwdGlvbl9tYXNrX3QgbWFzayA9IEVY
Q19NQVNLX0JBRF9BQ0NFU1M7CnwgICAgICAgLyogQ3JlYXRlIHRoZSB0aHJlYWQgbGlzdGVuaW5n
IG9uIHRoZSBleGNlcHRpb24gcG9ydC4gICovCnwgICAgICAgcHRocmVhZF9hdHRyX3QgYXR0cjsK
fCAgICAgICBwdGhyZWFkX3QgdGhyZWFkOwp8ICAgICAgIGlmIChwdGhyZWFkX2F0dHJfaW5pdCAo
JmF0dHIpID09IDAKfCAgICAgICAgICAgJiYgcHRocmVhZF9hdHRyX3NldGRldGFjaHN0YXRlICgm
YXR0ciwgUFRIUkVBRF9DUkVBVEVfREVUQUNIRUQpID09IDAKfCAgICAgICAgICAgJiYgcHRocmVh
ZF9jcmVhdGUgKCZ0aHJlYWQsICZhdHRyLCBtYWNoX2V4Y2VwdGlvbl90aHJlYWQsIE5VTEwpID09
IDApIHsKfCAgICAgICAgIHB0aHJlYWRfYXR0cl9kZXN0cm95ICgmYXR0cik7CnwgICAgICAgICAv
KiBSZXBsYWNlIHRoZSBleGNlcHRpb24gcG9ydCBpbmZvIGZvciB0aGVzZSBleGNlcHRpb25zIHdp
dGggb3VyIG93bi4KfCAgICAgICAgICAgIE5vdGUgdGhhdCB3ZSByZXBsYWNlIHRoZSBleGNlcHRp
b24gcG9ydCBmb3IgdGhlIGVudGlyZSB0YXNrLCBub3Qgb25seQp8ICAgICAgICAgICAgZm9yIGEg
cGFydGljdWxhciB0aHJlYWQuICBUaGlzIGhhcyB0aGUgZWZmZWN0IHRoYXQgd2hlbiBvdXIgZXhj
ZXB0aW9uCnwgICAgICAgICAgICBwb3J0IGdldHMgdGhlIG1lc3NhZ2UsIHRoZSB0aHJlYWQgc3Bl
Y2lmaWMgZXhjZXB0aW9uIHBvcnQgaGFzIGFscmVhZHkKfCAgICAgICAgICAgIGJlZW4gYXNrZWQs
IGFuZCB3ZSBkb24ndCBuZWVkIHRvIGJvdGhlciBhYm91dCBpdC4KfCAgICAgICAgICAgIFNlZSBo
dHRwOi8vd2ViLm1pdC5lZHUvZGFyd2luL3NyYy9tb2R1bGVzL3hudS9vc2Ztay9tYW4vdGFza19z
ZXRfZXhjZXB0aW9uX3BvcnRzLmh0bWwuICAqLwp8ICAgICAgICAgdGFza19zZXRfZXhjZXB0aW9u
X3BvcnRzIChzZWxmLCBtYXNrLCBvdXJfZXhjZXB0aW9uX3BvcnQsCnwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEVYQ0VQVElPTl9ERUZBVUxULCBNQUNISU5FX1RIUkVBRF9TVEFU
RSk7CnwgICAgICAgfQp8ICAgICB9CnwgICB9CnwgfQp8ICNlbHNlCnwgLyogQXZvaWQgYSBjcmFz
aCBvbiBQT1NJWCBzeXN0ZW1zLiAgKi8KfCAjaW5jbHVkZSA8c2lnbmFsLmg+CnwgLyogQSBQT1NJ
WCBzaWduYWwgaGFuZGxlci4gICovCnwgc3RhdGljIHZvaWQKfCBleGNlcHRpb25faGFuZGxlciAo
aW50IHNpZykKfCB7CnwgICBleGl0ICgxKTsKfCB9Cnwgc3RhdGljIHZvaWQKfCBub2NyYXNoX2lu
aXQgKHZvaWQpCnwgewp8ICNpZmRlZiBTSUdTRUdWCnwgICBzaWduYWwgKFNJR1NFR1YsIGV4Y2Vw
dGlvbl9oYW5kbGVyKTsKfCAjZW5kaWYKfCAjaWZkZWYgU0lHQlVTCnwgICBzaWduYWwgKFNJR0JV
UywgZXhjZXB0aW9uX2hhbmRsZXIpOwp8ICNlbmRpZgp8IH0KfCAjZW5kaWYKfCAKfCAjaW5jbHVk
ZSA8c3lzL3R5cGVzLmg+CnwgLyogZGVjbGFyZSBtYWxsb2MoKSAqLwp8ICNpbmNsdWRlIDxzdGRs
aWIuaD4KfCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICNpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5k
aWYKfCAvKiBkZWNsYXJlIGdldHBhZ2VzaXplKCkgYW5kIG1wcm90ZWN0KCkgKi8KfCAjaW5jbHVk
ZSA8c3lzL21tYW4uaD4KfCAjaWZuZGVmIEhBVkVfR0VUUEFHRVNJWkUKfCAjaW5jbHVkZSA8c3lz
L3BhcmFtLmg+CnwgI2RlZmluZSBnZXRwYWdlc2l6ZSgpIFBBR0VTSVpFCnwgI2Vsc2UKfCBleHRl
cm4KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCAiQyIKfCAjZW5kaWYKfCAKfCAjaWYgZGVmaW5lZChf
X1NURENfXykgfHwgZGVmaW5lZChfX2NwbHVzcGx1cykKfCBSRVRHRVRQQUdFU0laRVRZUEUgZ2V0
cGFnZXNpemUgKHZvaWQpOwp8ICNlbHNlCnwgUkVUR0VUUEFHRVNJWkVUWVBFIGdldHBhZ2VzaXpl
KCk7CnwgI2VuZGlmCnwgI2VuZGlmCnwgY2hhciBmb287CnwgaW50IG1haW4gKCkgewp8ICAgdW5z
aWduZWQgbG9uZyBwYWdlc2l6ZSA9IGdldHBhZ2VzaXplKCk7CnwgI2RlZmluZSBwYWdlX2FsaWdu
KGFkZHJlc3MpICAoY2hhciopKCh1bnNpZ25lZCBsb25nKShhZGRyZXNzKSAmIC1wYWdlc2l6ZSkK
fCAKfCAgIGNoYXIqIGFyZWEgPSAoY2hhciopIG1hbGxvYyg2KnBhZ2VzaXplKTsKfCAgIGNoYXIq
IGZhdWx0X2FkZHJlc3MgPSBhcmVhICsgcGFnZXNpemUqNy8yOwp8IAp8ICAgbm9jcmFzaF9pbml0
KCk7CnwgICBpZiAobXByb3RlY3QocGFnZV9hbGlnbihmYXVsdF9hZGRyZXNzKSxwYWdlc2l6ZSxQ
Uk9UX1JFQUQpIDwgMCkgZXhpdCgwKTsKfCAgICpmYXVsdF9hZGRyZXNzID0gJ3onOyAvKiB0aGlz
IHNob3VsZCBjYXVzZSBhbiBleGNlcHRpb24gb3Igc2lnbmFsICovCnwgICBleGl0KDApOyB9CmNv
bmZpZ3VyZToyNTk0MDogZ2NjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpj
b25maWd1cmU6MjU5NDM6ICQ/ID0gMApjb25maWd1cmU6MjU5NDU6IC4vY29uZnRlc3QKY29uZmln
dXJlOjI1OTQ4OiAkPyA9IDAKY29uZmlndXJlOjI1OTY5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MjU5ODI6IGNoZWNraW5nIGZvciB3b3JraW5nIHNoYXJlZCBtZW1vcnkKY29uZmlndXJlOjI2MDE2
OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZ0ZXN0LmM6IElu
IGZ1bmN0aW9uICdtYWluJzoKY29uZnRlc3QuYzoxOTQ6IHdhcm5pbmc6IGluY29tcGF0aWJsZSBp
bXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBidWlsdC1pbiBmdW5jdGlvbiAnZXhpdCcKY29uZmlndXJl
OjI2MDE5OiAkPyA9IDAKY29uZmlndXJlOjI2MDIxOiAuL2NvbmZ0ZXN0CmNvbmZpZ3VyZToyNjAy
NDogJD8gPSAwCmNvbmZpZ3VyZToyNjAzOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2MDYzOiBj
aGVja2luZyBzeXMvc3lzbWFjcm9zLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyNjA3NTogZ2NjIC1j
IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI2MDgxOiAkPyA9IDAKY29uZmlndXJl
OjI2MDg1OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MjYwODg6ICQ/ID0gMApjb25maWd1cmU6MjYwOTE6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1
cmU6MjYwOTQ6ICQ/ID0gMApjb25maWd1cmU6MjYxMDQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToy
NjEwODogY2hlY2tpbmcgc3lzL3N5c21hY3Jvcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToyNjExODog
Z2NjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToyNjEyNDogJD8gPSAwCmNvbmZpZ3VyZToyNjE0
NDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2MTc5OiBjaGVja2luZyBmb3Igc3lzL3N5c21hY3Jv
cy5oCmNvbmZpZ3VyZToyNjE4NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI2MjA0OiBjaGVja2lu
ZyBmb3IgYXR0YWNoYWJpbGl0eSBvZiByZW1vdmVkIHNoYXJlZCBtZW1vcnkKY29uZmlndXJlOjI2
MjUxOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToy
NjI1NDogJD8gPSAwCmNvbmZpZ3VyZToyNjI1NjogLi9jb25mdGVzdApjb25maWd1cmU6MjYyNTk6
ICQ/ID0gMQpjb25maWd1cmU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVzIDEKY29uZmlndXJl
OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQ
QUNLQUdFX05BTUUgIkdOVSBDTElTUCIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiY2xpc3Ai
CnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIjIuMzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUg
UEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIKfCAjZGVmaW5lIFBB
Q0tBR0VfQlVHUkVQT1JUICJodHRwOi8vY2xpc3AuY29ucy5vcmcvIgp8ICNkZWZpbmUgX0dOVV9T
T1VSQ0UgMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUg
X19FWFRFTlNJT05TX18gMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAj
ZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CnwgI2lmbmRlZiBfX2kzODZfXwp8ICNkZWZpbmUg
X19pMzg2X18gMQp8ICNlbmRpZgp8ICNkZWZpbmUgSEFWRV9JQ09OViAxCnwgI2RlZmluZSBJQ09O
Vl9DT05TVCAKfCAjZGVmaW5lIEVOQUJMRV9OTFMgMQp8ICNkZWZpbmUgSEFWRV9HRVRURVhUIDEK
fCAjZGVmaW5lIEhBVkVfRENHRVRURVhUIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VHViAxCnwgI2Rl
ZmluZSByZXR1cm5fdm9pZCByZXR1cm4KfCAjZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKfCAjZGVm
aW5lIEhBVkVfTE9OR0xPTkcKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZF
X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX09G
RlNFVE9GCnwgI2RlZmluZSBIQVZFX1NUREJPT0xfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0gg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIERJUkVOVAp8ICNkZWZpbmUg
SEFWRV9TWVNfVVRTTkFNRV9ICnwgI2RlZmluZSBIQVZFX05FVERCX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfU0hNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSVBDX0ggMQp8ICNkZWZpbmUgSEFWRV9U
RVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZ
X0ggMQp8ICNkZWZpbmUgSEFWRV9UQ0dFVEFUVFIKfCAjZGVmaW5lIEhBVkVfVENTQUZMVVNICnwg
I2RlZmluZSBXSU5TSVpFX05FRURfU1lTX0lPQ1RMX0gKfCAjZGVmaW5lIEhBVkVfWDExCnwgI2Rl
ZmluZSBDQUREUl9UIGNhZGRyX3QKfCAjZGVmaW5lIFNPQ0tMRU5fVCBzb2NrbGVuX3QKfCAjZGVm
aW5lIFNJWkVPRl9PRkZfVCA4CnwgI2RlZmluZSBTSVpFT0ZfU1RSVUNUX1RJTUVWQUwgOAp8ICNk
ZWZpbmUgSEFWRV9BTExPQ0FfSCAxCnwgI2RlZmluZSBIQVZFX0FMTE9DQSAxCnwgI2RlZmluZSBI
QVZFX19KTVAKfCAjZGVmaW5lIFJFVFNJR1RZUEUgdm9pZAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tf
U1lTVgp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfUE9TSVgKfCAjZGVmaW5lIFNJR05BTEJMT0NLX0JT
RAp8ICNkZWZpbmUgU0lHTkFMX05FRURfVU5CTE9DSwp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04g
MQp8ICNkZWZpbmUgSEFWRV9TSUdJTlRFUlJVUFQgMQp8ICNkZWZpbmUgSEFWRV9GUFVfQ09OVFJP
TF9UCnwgI2RlZmluZSBIQVZFX1NFVEZQVUNXCnwgI2RlZmluZSBIQVZFX1JBSVNFCnwgI2RlZmlu
ZSBSRVRBQk9SVFRZUEUgdm9pZAp8ICNkZWZpbmUgQUJPUlRfVk9MQVRJTEUgCnwgI2RlZmluZSBI
QVZFX1BFUlJPUl9ERUNMCnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVf
U1lTQ09ORiAxCnwgI2RlZmluZSBIQVZFX0dFVERUQUJMRVNJWkUgMQp8ICNkZWZpbmUgSEFWRV9N
RU1TRVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRTSUQgMQp8ICNkZWZpbmUgSEFWRV9TRVRQR0lEIDEK
fCAjZGVmaW5lIEhBVkVfRkNITU9EIDEKfCAjZGVmaW5lIEhBVkVfRlNZTkMgMQp8ICNkZWZpbmUg
SEFWRV9GTE9DSyAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RFTlQgMQp8ICNkZWZpbmUgSEFWRV9T
SFVURE9XTiAxCnwgI2RlZmluZSBIQVZFX1VTTEVFUCAxCnwgI2RlZmluZSBIQVZFX1VBTEFSTSAx
CnwgI2RlZmluZSBIQVZFX1NFVElUSU1FUiAxCnwgI2RlZmluZSBIQVZFX05JQ0UgMQp8ICNkZWZp
bmUgSEFWRV9GVElNRSAxCnwgI2RlZmluZSBIQVZFX1JFQUxQQVRIIDEKfCAjZGVmaW5lIEhBVkVf
UFVURU5WIDEKfCAjZGVmaW5lIEhBVkVfU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfVU5TRVRFTlYg
MQp8ICNkZWZpbmUgSEFWRV9ERUNMX0VOVklST04gMQp8ICNkZWZpbmUgVU5TRVRFTlZfUE9TSVgg
MAp8ICNkZWZpbmUgSEFWRV9MQ19NRVNTQUdFUyAxCnwgI2RlZmluZSBIQVZFX0dFVFJMSU1JVCAx
CnwgI2RlZmluZSBIQVZFX1NFVFJMSU1JVCAxCnwgI2RlZmluZSBTSVpFT0ZfUkxJTV9UIDgKfCAj
ZGVmaW5lIFJMSU1JVF9SRVNPVVJDRV9UIGVudW0gX19ybGltaXRfcmVzb3VyY2UKfCAjZGVmaW5l
IFNFVFJMSU1JVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu
ZSBIQVZFX0ZPUksgMQp8ICNkZWZpbmUgSEFWRV9WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dPUktJ
TkdfVkZPUksgMQp8ICNkZWZpbmUgSEFWRV9XT1JLSU5HX0ZPUksgMQp8ICNkZWZpbmUgUElEX1Qg
cGlkX3QKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
VElNRVNfSCAxCnwgI2RlZmluZSBIQVZFX0dFVFJVU0FHRQp8ICNkZWZpbmUgUlVTQUdFX1dIT19U
IGludAp8ICNkZWZpbmUgSEFWRV9HRVRDV0QKfCAjZGVmaW5lIEdFVENXRF9TSVpFX1Qgc2l6ZV90
CnwgI2RlZmluZSBUSU1FX1dJVEhfU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFWRV9MU1RBVAp8ICNk
ZWZpbmUgSEFWRV9TWVNfU1RBVFZGU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRGU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NDQUxBUl9GU0lEIDEK
fCAjZGVmaW5lIFNJWkVPRl9GU0JMS0NOVF9UIDgKfCAjZGVmaW5lIFNJWkVPRl9GU0ZJTENOVF9U
IDgKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfUkRFViAxCnwgI2RlZmluZSBIQVZFX1NU
UlVDVF9TVEFUX1NUX0JMS1NJWkUgMQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTE9D
S1MgMQp8ICNkZWZpbmUgU0laRU9GX0lOT19UIDgKfCAjZGVmaW5lIFNJWkVPRl9ERVZfVCA4Cnwg
I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKfCAjZGVmaW5lIEVMT09QX1ZBTFVFIEVMT09QCnwgI2Rl
ZmluZSBSRVRDTE9TRURJUlRZUEUgaW50CnwgI2RlZmluZSBIQVZFX0lPQ1RMIDEKfCAjZGVmaW5l
IElPQ1RMX1JFUVVFU1RfVCB1bnNpZ25lZCBsb25nCnwgI2RlZmluZSBJT0NUTF9ET1RTCnwgI2Rl
ZmluZSBORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX0ZJT05SRUFECnwgI2RlZmluZSBI
QVZFX1JFTElBQkxFX0ZJT05SRUFECnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFW
RV9SRUxJQUJMRV9QT0xMCnwgI2RlZmluZSBIQVZFX1NFTEVDVCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TRUxFQ1RfSAp8ICNkZWZpbmUgU0VMRUNUX1dJRFRIX1QgaW50CnwgI2RlZmluZSBTRUxFQ1Rf
U0VUX1QgZmRfc2V0CnwgI2RlZmluZSBTRUxFQ1RfQ09OU1QgCnwgI2RlZmluZSBIQVZFX1JFTElB
QkxFX1NFTEVDVAp8ICNkZWZpbmUgSEFWRV9HRVRUSU1FT0ZEQVkgMQp8ICNkZWZpbmUgR0VUVElN
RU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAqCnwgI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1F
IDEKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVEJZTkFNRQp8ICNkZWZpbmUgSEFWRV9DT05ORUNUIDEK
fCAjZGVmaW5lIENPTk5FQ1RfQ09OU1QgY29uc3QKfCAjZGVmaW5lIENPTk5FQ1RfTkFNRV9UIHN0
cnVjdCBzb2NrYWRkciAqCnwgI2RlZmluZSBDT05ORUNUX0FERFJMRU5fVCBzaXplX3QKfCAjZGVm
aW5lIEhBVkVfU1lTX1VOX0ggMQp8ICNkZWZpbmUgSEFWRV9JUFY0CnwgI2RlZmluZSBIQVZFX0lQ
VjYKfCAjZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKfCAjZGVmaW5lIEhBVkVfSU5FVF9OVE9QIDEK
fCAjZGVmaW5lIEhBVkVfSU5FVF9BRERSIDEKfCAjZGVmaW5lIEhBVkVfU0VUU09DS09QVCAxCnwg
I2RlZmluZSBIQVZFX0dFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQp8
ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBSRVRfSU5FVF9BRERSX1RZUEUg
dW5zaWduZWQgaW50CnwgI2RlZmluZSBJTkVUX0FERFJfQ09OU1QgY29uc3QKfCAjZGVmaW5lIElO
RVRfQUREUl9TVUZGSVgKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBT
RVRTT0NLT1BUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBTRVRTT0NLT1BUX0FSR19UIHZvaWQqCnwg
I2RlZmluZSBTRVRTT0NLT1BUX09QVExFTl9UIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgQ09ERV9B
RERSRVNTX1JBTkdFIDB4MDgwMDAwMDBVTAp8ICNkZWZpbmUgTUFMTE9DX0FERFJFU1NfUkFOR0Ug
MHgwODAwMDAwMFVMCnwgI2RlZmluZSBTSExJQl9BRERSRVNTX1JBTkdFIDB4NEQwMDAwMDBVTAp8
ICNkZWZpbmUgU1RBQ0tfQUREUkVTU19SQU5HRSAweEJGMDAwMDAwVUwKfCAjZGVmaW5lIEhBVkVf
R0VUUEFHRVNJWkUKfCAjZGVmaW5lIFJFVEdFVFBBR0VTSVpFVFlQRSBpbnQKfCAjZGVmaW5lIEhB
VkVfTU1BUAp8ICNkZWZpbmUgSEFWRV9NTUFQX0FOT04KfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9O
WU1PVVMKfCAjZGVmaW5lIEhBVkVfTU1BUF9ERVZaRVJPCnwgI2RlZmluZSBIQVZFX01VTk1BUCAx
CnwgI2RlZmluZSBIQVZFX01TWU5DIDEKfCAjZGVmaW5lIEhBVkVfTVBST1RFQ1QgMQp8ICNkZWZp
bmUgSEFWRV9XT1JLSU5HX01QUk9URUNUCnwgI2RlZmluZSBIQVZFX1NITQp8ICNkZWZpbmUgSEFW
RV9TWVNfU1lTTUFDUk9TX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaW5jbHVk
ZSA8c3RkbGliLmg+CnwgI2lmZGVmIEhBVkVfVU5JU1REX0gKfCAjaW5jbHVkZSA8dW5pc3RkLmg+
CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvaXBjLmg+
CnwgI2luY2x1ZGUgPHN5cy9zaG0uaD4KfCAjaWZkZWYgSEFWRV9TWVNfU1lTTUFDUk9TX0gKfCAj
aW5jbHVkZSA8c3lzL3N5c21hY3Jvcy5oPgp8ICNlbmRpZgp8IGludCBtYWluICgpCnwgeyB1bnNp
Z25lZCBpbnQgcGFnZXNpemUgPSA4MTkyOyAvKiBzaG91bGQgYmUgYSBtdWx0aXBsZSBvZiBTSE1M
QkEgKi8KfCAgIHVuc2lnbmVkIGxvbmcgYWRkciA9ICh1bnNpZ25lZCBsb25nKSBtYWxsb2MoMipw
YWdlc2l6ZSk7CnwgICBhZGRyICs9IHBhZ2VzaXplLTE7IGFkZHIgPSAoYWRkci9wYWdlc2l6ZSkq
cGFnZXNpemU7CnwgIHt1bnNpZ25lZCBsb25nIGFkZHIxID0gYWRkciArIDB4MTAwMDA7CnwgICB1
bnNpZ25lZCBsb25nIGFkZHIyID0gYWRkciArIDB4MjAwMDA7CnwgICBpbnQgaWQgPSBzaG1nZXQo
SVBDX1BSSVZBVEUscGFnZXNpemUsSVBDX0NSRUFUfDA2MDApOwp8ICAgaWYgKGlkPDApCnwgICAg
IHsgZXhpdCgxKTsgfQp8ICAgaWYgKHNobWF0KGlkLCh2b2lkKilhZGRyMSwwKSA9PSAodm9pZCop
KC0xKSkKfCAgICAgeyBzaG1jdGwoaWQsSVBDX1JNSUQsTlVMTCk7IGV4aXQoMSk7IH0KfCAgIGlm
IChzaG1jdGwoaWQsSVBDX1JNSUQsTlVMTCkgPCAwKQp8ICAgICB7IGV4aXQoMSk7IH0KfCAgIGlm
IChzaG1hdChpZCwodm9pZCopYWRkcjIsMCkgPT0gKHZvaWQqKSgtMSkpCnwgICAgIHsgc2htY3Rs
KGlkLElQQ19STUlELE5VTEwpOyBleGl0KDEpOyB9CnwgICBzaG1jdGwoaWQsSVBDX1JNSUQsTlVM
TCk7CnwgICBleGl0KDApOwp8IH19CnwgCmNvbmZpZ3VyZToyNjI3NDogcmVzdWx0OiBubwpjb25m
aWd1cmU6MjYzMDA6IGNoZWNraW5nIGRsZmNuLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToyNjMxMjog
Z2NjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI2MzE4OiAkPyA9IDAKY29u
ZmlndXJlOjI2MzIyOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25m
aWd1cmU6MjYzMjU6ICQ/ID0gMApjb25maWd1cmU6MjYzMjg6IHRlc3QgLXMgY29uZnRlc3Qubwpj
b25maWd1cmU6MjYzMzE6ICQ/ID0gMApjb25maWd1cmU6MjYzNDE6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToyNjM0NTogY2hlY2tpbmcgZGxmY24uaCBwcmVzZW5jZQpjb25maWd1cmU6MjYzNTU6IGdj
YyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MjYzNjE6ICQ/ID0gMApjb25maWd1cmU6MjYzODE6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNjQxNjogY2hlY2tpbmcgZm9yIGRsZmNuLmgKY29uZmln
dXJlOjI2NDIzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjY0Mzc6IGNoZWNraW5nIGZvciBsaWJy
YXJ5IGNvbnRhaW5pbmcgZGxvcGVuCmNvbmZpZ3VyZToyNjQ2NzogZ2NjIC1vIGNvbmZ0ZXN0IC1n
IC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQovdmFyL3RtcC9wb3J0YWdlL2NsaXNwLTIuMzgvdGVtcC9j
Y0FyTDN2aS5vOiBJbiBmdW5jdGlvbiBgbWFpbic6Ci92YXIvdG1wL3BvcnRhZ2UvY2xpc3AtMi4z
OC93b3JrL2NsaXNwLTIuMzgvYnVpbGQvY29uZnRlc3QuYzoxOTk6IHVuZGVmaW5lZCByZWZlcmVu
Y2UgdG8gYGRsb3BlbicKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKZGlzdGNj
WzM1OTNdIEVSUk9SOiBjb21waWxlIGNvbmZ0ZXN0LmMgb24gbG9jYWxob3N0IGZhaWxlZApjb25m
aWd1cmU6MjY0NzM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj
b25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiR05VIENMSVNQIgp8ICNk
ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJjbGlzcCIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Mi4zOCAoMjAwNi0wMS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiR05VIENMSVNQIDIu
MzggKDIwMDYtMDEtMjQpIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImh0dHA6Ly9jbGlz
cC5jb25zLm9yZy8iCnwgI2RlZmluZSBfR05VX1NPVVJDRSAxCnwgI2RlZmluZSBTVERDX0hFQURF
UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCnwgI2RlZmluZSBf
UE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQK
fCAjaWZuZGVmIF9faTM4Nl9fCnwgI2RlZmluZSBfX2kzODZfXyAxCnwgI2VuZGlmCnwgI2RlZmlu
ZSBIQVZFX0lDT05WIDEKfCAjZGVmaW5lIElDT05WX0NPTlNUIAp8ICNkZWZpbmUgRU5BQkxFX05M
UyAxCnwgI2RlZmluZSBIQVZFX0dFVFRFWFQgMQp8ICNkZWZpbmUgSEFWRV9EQ0dFVFRFWFQgMQp8
ICNkZWZpbmUgSEFWRV9TSUdTRUdWIDEKfCAjZGVmaW5lIHJldHVybl92b2lkIHJldHVybgp8ICNk
ZWZpbmUgSEFWRV9MT05HX0xPTkcgMQp8ICNkZWZpbmUgSEFWRV9MT05HTE9ORwp8ICNkZWZpbmUg
U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfT0ZGU0VUT0YKfCAjZGVmaW5lIEhBVkVfU1REQk9P
TF9IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0gg
MQp8ICNkZWZpbmUgRElSRU5UCnwgI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0gKfCAjZGVmaW5l
IEhBVkVfTkVUREJfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TSE1fSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19JUENfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1RF
Uk1JT19IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1RDR0VUQVRU
Ugp8ICNkZWZpbmUgSEFWRV9UQ1NBRkxVU0gKfCAjZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9D
VExfSAp8ICNkZWZpbmUgSEFWRV9YMTEKfCAjZGVmaW5lIENBRERSX1QgY2FkZHJfdAp8ICNkZWZp
bmUgU09DS0xFTl9UIHNvY2tsZW5fdAp8ICNkZWZpbmUgU0laRU9GX09GRl9UIDgKfCAjZGVmaW5l
IFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CnwgI2RlZmluZSBIQVZFX0FMTE9DQV9IIDEKfCAjZGVm
aW5lIEhBVkVfQUxMT0NBIDEKfCAjZGVmaW5lIEhBVkVfX0pNUAp8ICNkZWZpbmUgUkVUU0lHVFlQ
RSB2b2lkCnwgI2RlZmluZSBTSUdOQUxCTE9DS19TWVNWCnwgI2RlZmluZSBTSUdOQUxCTE9DS19Q
T1NJWAp8ICNkZWZpbmUgU0lHTkFMQkxPQ0tfQlNECnwgI2RlZmluZSBTSUdOQUxfTkVFRF9VTkJM
T0NLCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR0lOVEVSUlVQ
VCAxCnwgI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKfCAjZGVmaW5lIEhBVkVfU0VURlBVQ1cK
fCAjZGVmaW5lIEhBVkVfUkFJU0UKfCAjZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCnwgI2RlZmlu
ZSBBQk9SVF9WT0xBVElMRSAKfCAjZGVmaW5lIEhBVkVfUEVSUk9SX0RFQ0wKfCAjZGVmaW5lIEhB
VkVfU1RSRVJST1IgMQp8ICNkZWZpbmUgSEFWRV9TWVNDT05GIDEKfCAjZGVmaW5lIEhBVkVfR0VU
RFRBQkxFU0laRSAxCnwgI2RlZmluZSBIQVZFX01FTVNFVCAxCnwgI2RlZmluZSBIQVZFX1NFVFNJ
RCAxCnwgI2RlZmluZSBIQVZFX1NFVFBHSUQgMQp8ICNkZWZpbmUgSEFWRV9GQ0hNT0QgMQp8ICNk
ZWZpbmUgSEFWRV9GU1lOQyAxCnwgI2RlZmluZSBIQVZFX0ZMT0NLIDEKfCAjZGVmaW5lIEhBVkVf
R0VUSE9TVEVOVCAxCnwgI2RlZmluZSBIQVZFX1NIVVRET1dOIDEKfCAjZGVmaW5lIEhBVkVfVVNM
RUVQIDEKfCAjZGVmaW5lIEhBVkVfVUFMQVJNIDEKfCAjZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEK
fCAjZGVmaW5lIEhBVkVfTklDRSAxCnwgI2RlZmluZSBIQVZFX0ZUSU1FIDEKfCAjZGVmaW5lIEhB
VkVfUkVBTFBBVEggMQp8ICNkZWZpbmUgSEFWRV9QVVRFTlYgMQp8ICNkZWZpbmUgSEFWRV9TRVRF
TlYgMQp8ICNkZWZpbmUgSEFWRV9VTlNFVEVOViAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfRU5WSVJP
TiAxCnwgI2RlZmluZSBVTlNFVEVOVl9QT1NJWCAwCnwgI2RlZmluZSBIQVZFX0xDX01FU1NBR0VT
IDEKfCAjZGVmaW5lIEhBVkVfR0VUUkxJTUlUIDEKfCAjZGVmaW5lIEhBVkVfU0VUUkxJTUlUIDEK
fCAjZGVmaW5lIFNJWkVPRl9STElNX1QgOAp8ICNkZWZpbmUgUkxJTUlUX1JFU09VUkNFX1QgZW51
bSBfX3JsaW1pdF9yZXNvdXJjZQp8ICNkZWZpbmUgU0VUUkxJTUlUX0NPTlNUIGNvbnN0CnwgI2Rl
ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRk9SSyAxCnwgI2RlZmluZSBIQVZF
X1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19WRk9SSyAxCnwgI2RlZmluZSBIQVZFX1dP
UktJTkdfRk9SSyAxCnwgI2RlZmluZSBQSURfVCBwaWRfdAp8ICNkZWZpbmUgSEFWRV9TWVNfUkVT
T1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FU19IIDEKfCAjZGVmaW5lIEhBVkVfR0VU
UlVTQUdFCnwgI2RlZmluZSBSVVNBR0VfV0hPX1QgaW50CnwgI2RlZmluZSBIQVZFX0dFVENXRAp8
ICNkZWZpbmUgR0VUQ1dEX1NJWkVfVCBzaXplX3QKfCAjZGVmaW5lIFRJTUVfV0lUSF9TWVNfVElN
RSAxCnwgI2RlZmluZSBIQVZFX0xTVEFUCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUVkZTX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVEZTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
fCAjZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQp8ICNkZWZpbmUgU0laRU9GX0ZTQkxLQ05UX1Qg
OAp8ICNkZWZpbmUgU0laRU9GX0ZTRklMQ05UX1QgOAp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RB
VF9TVF9SREVWIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRfU1RfQkxLU0laRSAxCnwgI2Rl
ZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCnwgI2RlZmluZSBTSVpFT0ZfSU5PX1Qg
OAp8ICNkZWZpbmUgU0laRU9GX0RFVl9UIDgKfCAjZGVmaW5lIEhBVkVfUkVBRExJTksgMQp8ICNk
ZWZpbmUgRUxPT1BfVkFMVUUgRUxPT1AKfCAjZGVmaW5lIFJFVENMT1NFRElSVFlQRSBpbnQKfCAj
ZGVmaW5lIEhBVkVfSU9DVEwgMQp8ICNkZWZpbmUgSU9DVExfUkVRVUVTVF9UIHVuc2lnbmVkIGxv
bmcKfCAjZGVmaW5lIElPQ1RMX0RPVFMKfCAjZGVmaW5lIE5FRURfU1lTX0lPQ1RMX0gKfCAjZGVm
aW5lIEhBVkVfRklPTlJFQUQKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfRklPTlJFQUQKfCAjZGVm
aW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1JFTElBQkxFX1BPTEwKfCAjZGVmaW5lIEhB
VkVfU0VMRUNUIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9ICnwgI2RlZmluZSBTRUxFQ1Rf
V0lEVEhfVCBpbnQKfCAjZGVmaW5lIFNFTEVDVF9TRVRfVCBmZF9zZXQKfCAjZGVmaW5lIFNFTEVD
VF9DT05TVCAKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfU0VMRUNUCnwgI2RlZmluZSBIQVZFX0dF
VFRJTUVPRkRBWSAxCnwgI2RlZmluZSBHRVRUSU1FT0ZEQVlfVFpQX1Qgc3RydWN0IHRpbWV6b25l
ICoKfCAjZGVmaW5lIEhBVkVfR0VUSE9TVE5BTUUgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NUQllO
QU1FCnwgI2RlZmluZSBIQVZFX0NPTk5FQ1QgMQp8ICNkZWZpbmUgQ09OTkVDVF9DT05TVCBjb25z
dAp8ICNkZWZpbmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKfCAjZGVmaW5lIENP
Tk5FQ1RfQUREUkxFTl9UIHNpemVfdAp8ICNkZWZpbmUgSEFWRV9TWVNfVU5fSCAxCnwgI2RlZmlu
ZSBIQVZFX0lQVjQKfCAjZGVmaW5lIEhBVkVfSVBWNgp8ICNkZWZpbmUgSEFWRV9JTkVUX1BUT04g
MQp8ICNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQp8ICNkZWZpbmUgSEFWRV9JTkVUX0FERFIgMQp8
ICNkZWZpbmUgSEFWRV9TRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfR0VUU09DS09QVCAxCnwg
I2RlZmluZSBIQVZFX05FVElORVRfSU5fSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEK
fCAjZGVmaW5lIFJFVF9JTkVUX0FERFJfVFlQRSB1bnNpZ25lZCBpbnQKfCAjZGVmaW5lIElORVRf
QUREUl9DT05TVCBjb25zdAp8ICNkZWZpbmUgSU5FVF9BRERSX1NVRkZJWAp8ICNkZWZpbmUgSEFW
RV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfQ09OU1QgY29uc3QKfCAjZGVm
aW5lIFNFVFNPQ0tPUFRfQVJHX1Qgdm9pZCoKfCAjZGVmaW5lIFNFVFNPQ0tPUFRfT1BUTEVOX1Qg
dW5zaWduZWQgaW50CnwgI2RlZmluZSBDT0RFX0FERFJFU1NfUkFOR0UgMHgwODAwMDAwMFVMCnwg
I2RlZmluZSBNQUxMT0NfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5lIFNITElC
X0FERFJFU1NfUkFOR0UgMHg0RDAwMDAwMFVMCnwgI2RlZmluZSBTVEFDS19BRERSRVNTX1JBTkdF
IDB4QkYwMDAwMDBVTAp8ICNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRQp8ICNkZWZpbmUgUkVUR0VU
UEFHRVNJWkVUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9NTUFQCnwgI2RlZmluZSBIQVZFX01NQVBf
QU5PTgp8ICNkZWZpbmUgSEFWRV9NTUFQX0FOT05ZTU9VUwp8ICNkZWZpbmUgSEFWRV9NTUFQX0RF
VlpFUk8KfCAjZGVmaW5lIEhBVkVfTVVOTUFQIDEKfCAjZGVmaW5lIEhBVkVfTVNZTkMgMQp8ICNk
ZWZpbmUgSEFWRV9NUFJPVEVDVCAxCnwgI2RlZmluZSBIQVZFX1dPUktJTkdfTVBST1RFQ1QKfCAj
ZGVmaW5lIEhBVkVfU0hNCnwgI2RlZmluZSBIQVZFX1NZU19TWVNNQUNST1NfSCAxCnwgI2RlZmlu
ZSBIQVZFX0RMRkNOX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlk
ZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNp
ZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBi
ZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAgYnVp
bHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAg
Ki8KfCBjaGFyIGRsb3BlbiAoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IGRsb3BlbiAoKTsKfCAg
IDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjI2NTIyOiBnY2MgLW8gY29uZnRlc3QgLWcg
LU8yICAgY29uZnRlc3QuYyAtbGRsICAgPiY1CmNvbmZpZ3VyZToyNjUyODogJD8gPSAwCmNvbmZp
Z3VyZToyNjUzMjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjI2NTM1OiAkPyA9IDAKY29uZmlndXJlOjI2NTM4OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZp
Z3VyZToyNjU0MTogJD8gPSAwCmNvbmZpZ3VyZToyNjU1NjogcmVzdWx0OiAtbGRsCmNvbmZpZ3Vy
ZToyNjU3MDogY2hlY2tpbmcgZm9yIGRsb3Blbgpjb25maWd1cmU6MjY2Mjc6IGdjYyAtbyBjb25m
dGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZGwgID4mNQpjb25maWd1cmU6MjY2MzM6ICQ/ID0g
MApjb25maWd1cmU6MjY2Mzc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
CmNvbmZpZ3VyZToyNjY0MDogJD8gPSAwCmNvbmZpZ3VyZToyNjY0MzogdGVzdCAtcyBjb25mdGVz
dApjb25maWd1cmU6MjY2NDY6ICQ/ID0gMApjb25maWd1cmU6MjY2NTg6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToyNjU3MDogY2hlY2tpbmcgZm9yIGRsc3ltCmNvbmZpZ3VyZToyNjYyNzogZ2NjIC1v
IGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxkbCAgPiY1CmNvbmZpZ3VyZToyNjYzMzog
JD8gPSAwCmNvbmZpZ3VyZToyNjYzNzogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjI2NjQwOiAkPyA9IDAKY29uZmlndXJlOjI2NjQzOiB0ZXN0IC1zIGNv
bmZ0ZXN0CmNvbmZpZ3VyZToyNjY0NjogJD8gPSAwCmNvbmZpZ3VyZToyNjY1ODogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjI2NTcwOiBjaGVja2luZyBmb3IgZGxlcnJvcgpjb25maWd1cmU6MjY2Mjc6
IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZGwgID4mNQpjb25maWd1cmU6
MjY2MzM6ICQ/ID0gMApjb25maWd1cmU6MjY2Mzc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMg
Y29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNjY0MDogJD8gPSAwCmNvbmZpZ3VyZToyNjY0MzogdGVz
dCAtcyBjb25mdGVzdApjb25maWd1cmU6MjY2NDY6ICQ/ID0gMApjb25maWd1cmU6MjY2NTg6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToyNjU3MDogY2hlY2tpbmcgZm9yIGRsY2xvc2UKY29uZmlndXJl
OjI2NjI3OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbGRsICA+JjUKY29u
ZmlndXJlOjI2NjMzOiAkPyA9IDAKY29uZmlndXJlOjI2NjM3OiB0ZXN0IC16IAoJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MjY2NDA6ICQ/ID0gMApjb25maWd1cmU6MjY2
NDM6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjI2NjQ2OiAkPyA9IDAKY29uZmlndXJlOjI2
NjU4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjY2NzA6ICogY2hlY2tzIGZvciBsaWJyYXJpZXMK
Y29uZmlndXJlOjI2Njg4OiBjaGVja2luZyBmb3IgbGlicmFyeSBjb250YWluaW5nIHRnZXRlbnQK
Y29uZmlndXJlOjI2NzE4OiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbGRs
ICA+JjUKL3Zhci90bXAvcG9ydGFnZS9jbGlzcC0yLjM4L3RlbXAvY2NzWk1ES1AubzogSW4gZnVu
Y3Rpb24gYG1haW4nOgovdmFyL3RtcC9wb3J0YWdlL2NsaXNwLTIuMzgvd29yay9jbGlzcC0yLjM4
L2J1aWxkL2NvbmZ0ZXN0LmM6MjAzOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGB0Z2V0ZW50Jwpj
b2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpkaXN0Y2NbNTEyOV0gRVJST1I6IGNv
bXBpbGUgY29uZnRlc3QuYyBvbiBsb2NhbGhvc3QgZmFpbGVkCmNvbmZpZ3VyZToyNjcyNDogJD8g
PSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8
IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RB
Uk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0
KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCki
CnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAj
ZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI
QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI
QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N
RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I
IDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NF
TUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2
X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8
ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhB
VkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJ
R1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdf
TE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNk
ZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJF
TlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAj
ZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZp
bmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZF
X1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBI
QVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29j
a2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9U
SU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0Eg
MQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5l
IFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBT
SUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhB
VkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhB
VkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9S
QUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxF
IAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwg
I2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAj
ZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhB
VkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5D
IDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAj
ZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUg
SEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9O
SUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwg
I2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBI
QVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVO
U0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFW
RV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9G
X1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291
cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
X0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZp
bmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAj
ZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5l
IFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0Rf
U0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhB
VkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
Q0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpF
T0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNk
ZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNU
X1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpF
T0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxV
RSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NU
TCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9D
VExfRE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVB
RAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEK
fCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNk
ZWZpbmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZp
bmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAj
ZGVmaW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFW
RV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhB
VkVfQ09OTkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05O
RUNUX05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qg
c2l6ZV90CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBWNAp8ICNk
ZWZpbmUgSEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZF
X0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NF
VFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfTkVU
SU5FVF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgUkVUX0lO
RVRfQUREUl9UWVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNUIGNvbnN0
CnwgI2RlZmluZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0gg
MQp8ICNkZWZpbmUgU0VUU09DS09QVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgU0VUU09DS09QVF9B
UkdfVCB2b2lkKgp8ICNkZWZpbmUgU0VUU09DS09QVF9PUFRMRU5fVCB1bnNpZ25lZCBpbnQKfCAj
ZGVmaW5lIENPREVfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5lIE1BTExPQ19B
RERSRVNTX1JBTkdFIDB4MDgwMDAwMDBVTAp8ICNkZWZpbmUgU0hMSUJfQUREUkVTU19SQU5HRSAw
eDREMDAwMDAwVUwKfCAjZGVmaW5lIFNUQUNLX0FERFJFU1NfUkFOR0UgMHhCRjAwMDAwMFVMCnwg
I2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFCnwgI2RlZmluZSBSRVRHRVRQQUdFU0laRVRZUEUgaW50
CnwgI2RlZmluZSBIQVZFX01NQVAKfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OCnwgI2RlZmluZSBI
QVZFX01NQVBfQU5PTllNT1VTCnwgI2RlZmluZSBIQVZFX01NQVBfREVWWkVSTwp8ICNkZWZpbmUg
SEFWRV9NVU5NQVAgMQp8ICNkZWZpbmUgSEFWRV9NU1lOQyAxCnwgI2RlZmluZSBIQVZFX01QUk9U
RUNUIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19NUFJPVEVDVAp8ICNkZWZpbmUgSEFWRV9TSE0K
fCAjZGVmaW5lIEhBVkVfU1lTX1NZU01BQ1JPU19IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAx
CnwgI2RlZmluZSBIQVZFX0RMT1BFTiAxCnwgI2RlZmluZSBIQVZFX0RMU1lNIDEKfCAjZGVmaW5l
IEhBVkVfRExFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0RMQ0xPU0UgMQp8IC8qIGVuZCBjb25mZGVm
cy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8g
YXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAj
ZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJu
IHR5cGUgb2YgYSBnY2MyCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90
eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIHRnZXRlbnQgKCk7CnwgaW50CnwgbWFp
biAoKQp8IHsKfCB0Z2V0ZW50ICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6
MjY3NzM6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sbmN1cnNlcyAgLWxk
bCAgPiY1CmNvbmZpZ3VyZToyNjc3OTogJD8gPSAwCmNvbmZpZ3VyZToyNjc4MzogdGVzdCAteiAK
CQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI2Nzg2OiAkPyA9IDAKY29u
ZmlndXJlOjI2Nzg5OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNjc5MjogJD8gPSAwCmNv
bmZpZ3VyZToyNjgwNzogcmVzdWx0OiAtbG5jdXJzZXMKY29uZmlndXJlOjI3MjMyOiBjaGVja2lu
ZyByZWFkbGluZS9yZWFkbGluZS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MjcyNDQ6IGdjYyAtYyAt
ZyAtTzIgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MjcyNTA6ICQ/ID0gMApjb25maWd1cmU6
MjcyNTQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToy
NzI1NzogJD8gPSAwCmNvbmZpZ3VyZToyNzI2MDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
ZToyNzI2MzogJD8gPSAwCmNvbmZpZ3VyZToyNzI3MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3
Mjc3OiBjaGVja2luZyByZWFkbGluZS9yZWFkbGluZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToyNzI4
NzogZ2NjIC1FICAgY29uZnRlc3QuYwpjb25maWd1cmU6MjcyOTM6ICQ/ID0gMApjb25maWd1cmU6
MjczMTM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNzM0ODogY2hlY2tpbmcgZm9yIHJlYWRsaW5l
L3JlYWRsaW5lLmgKY29uZmlndXJlOjI3MzU1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjczNzM6
IGNoZWNraW5nIGZvciByZWFkbGluZQpjb25maWd1cmU6Mjc0MzA6IGdjYyAtbyBjb25mdGVzdCAt
ZyAtTzIgICAgY29uZnRlc3QuYyAvdXNyL2xpYi9saWJyZWFkbGluZS5zbyAtbG5jdXJzZXMgLWxk
bCAgPiY1CmNvbmZpZ3VyZToyNzQzNjogJD8gPSAwCmNvbmZpZ3VyZToyNzQ0MDogdGVzdCAteiAK
CQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI3NDQzOiAkPyA9IDAKY29u
ZmlndXJlOjI3NDQ2OiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNzQ0OTogJD8gPSAwCmNv
bmZpZ3VyZToyNzQ2MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NDY3OiBjaGVja2luZyBmb3Ig
cmxfZmlsZW5hbWVfY29tcGxldGlvbl9mdW5jdGlvbgpjb25maWd1cmU6Mjc1MjQ6IGdjYyAtbyBj
b25mdGVzdCAtZyAtTzIgICAgY29uZnRlc3QuYyAvdXNyL2xpYi9saWJyZWFkbGluZS5zbyAtbG5j
dXJzZXMgLWxkbCAgPiY1CmNvbmZpZ3VyZToyNzUzMDogJD8gPSAwCmNvbmZpZ3VyZToyNzUzNDog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI3NTM3OiAk
PyA9IDAKY29uZmlndXJlOjI3NTQwOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZpZ3VyZToyNzU0Mzog
JD8gPSAwCmNvbmZpZ3VyZToyNzU1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NTczOiBjaGVj
a2luZyBmb3IgZmlsZW5hbWVfY29tcGxldGlvbl9mdW5jdGlvbiBkZWNsYXJhdGlvbgpjb25maWd1
cmU6Mjc2MDk6IGdjYyAtYyAtZyAtTzIgICBjb25mdGVzdC5jID4mNQpkaXN0Y2NbNjY3OV0gRVJS
T1I6IGNvbXBpbGUgL3Zhci90bXAvY2NhY2hlL2NvbmZ0ZXN0LnRtcC50b3Rvei1saW51eC42NTE1
Lmkgb24gbG9jYWxob3N0IGZhaWxlZApjb25mdGVzdC5jOjIwNDogZXJyb3I6IGNvbmZsaWN0aW5n
IHR5cGVzIGZvciAncmxfZmlsZW5hbWVfY29tcGxldGlvbl9mdW5jdGlvbicKL3Vzci9pbmNsdWRl
L3JlYWRsaW5lL3JlYWRsaW5lLmg6NDQ0OiBlcnJvcjogcHJldmlvdXMgZGVjbGFyYXRpb24gb2Yg
J3JsX2ZpbGVuYW1lX2NvbXBsZXRpb25fZnVuY3Rpb24nIHdhcyBoZXJlCmNvbmZpZ3VyZToyNzYx
NTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmgu
ICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNL
QUdFX1RBUk5BTUUgImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2
LTAxLTI0KSIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0w
MS0yNCkiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3Jn
LyIKfCAjZGVmaW5lIF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUg
SEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF
X0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VO
SVNURF9IIDEKfCAjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhS
RUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYg
X19pMzg2X18KfCAjZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNP
TlYgMQp8ICNkZWZpbmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVm
aW5lIEhBVkVfR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBI
QVZFX1NJR1NFR1YgMQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZF
X0xPTkdfTE9ORyAxCnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURF
UlMgMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0gg
MQp8ICNkZWZpbmUgSEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmlu
ZSBESVJFTlQKfCAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVRE
Ql9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19I
IDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8
ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmlu
ZSBIQVZFX1RDU0FGTFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2Rl
ZmluZSBIQVZFX1gxMQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVO
X1Qgc29ja2xlbl90CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NU
UlVDVF9USU1FVkFMIDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9B
TExPQ0EgMQp8ICNkZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAj
ZGVmaW5lIFNJR05BTEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2Rl
ZmluZSBTSUdOQUxCTE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVm
aW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVm
aW5lIEhBVkVfRlBVX0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUg
SEFWRV9SQUlTRQp8ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZP
TEFUSUxFIAp8ICNkZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJP
UiAxCnwgI2RlZmluZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpF
IDEKfCAjZGVmaW5lIEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVm
aW5lIEhBVkVfU0VUUEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZF
X0ZTWU5DIDEKfCAjZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5U
IDEKfCAjZGVmaW5lIEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNk
ZWZpbmUgSEFWRV9VQUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUg
SEFWRV9OSUNFIDEKfCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFU
SCAxCnwgI2RlZmluZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2Rl
ZmluZSBIQVZFX1VOU0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVm
aW5lIFVOU0VURU5WX1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZp
bmUgSEFWRV9HRVRSTElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUg
U0laRU9GX1JMSU1fVCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0
X3Jlc291cmNlCnwgI2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVf
VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8
ICNkZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JL
IDEKfCAjZGVmaW5lIFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAj
ZGVmaW5lIFJVU0FHRV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBH
RVRDV0RfU0laRV9UIHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVm
aW5lIEhBVkVfTFNUQVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TVEFURlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg
SEFWRV9TQ0FMQVJfRlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmlu
ZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYg
MQp8ICNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVf
U1RSVUNUX1NUQVRfU1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmlu
ZSBTSVpFT0ZfREVWX1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9P
UF9WQUxVRSBFTE9PUAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFW
RV9JT0NUTCAxCnwgI2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZp
bmUgSU9DVExfRE9UUwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9G
SU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9Q
T0xMIDEKfCAjZGVmaW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1Qg
MQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGlu
dAp8ICNkZWZpbmUgU0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8
ICNkZWZpbmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZ
IDEKfCAjZGVmaW5lIEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZp
bmUgSEFWRV9HRVRIT1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVm
aW5lIEhBVkVfQ09OTkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmlu
ZSBDT05ORUNUX05BTUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERS
TEVOX1Qgc2l6ZV90CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBW
NAp8ICNkZWZpbmUgSEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmlu
ZSBIQVZFX0lORVRfTlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBI
QVZFX1NFVFNPQ0tPUFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhB
VkVfTkVUSU5FVF9JTl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUg
UkVUX0lORVRfQUREUl9UWVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNU
IGNvbnN0CnwgI2RlZmluZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRf
VENQX0ggMQp8ICNkZWZpbmUgU0VUU09DS09QVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgU0VUU09D
S09QVF9BUkdfVCB2b2lkKgp8ICNkZWZpbmUgU0VUU09DS09QVF9PUFRMRU5fVCB1bnNpZ25lZCBp
bnQKfCAjZGVmaW5lIENPREVfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5lIE1B
TExPQ19BRERSRVNTX1JBTkdFIDB4MDgwMDAwMDBVTAp8ICNkZWZpbmUgU0hMSUJfQUREUkVTU19S
QU5HRSAweDREMDAwMDAwVUwKfCAjZGVmaW5lIFNUQUNLX0FERFJFU1NfUkFOR0UgMHhCRjAwMDAw
MFVMCnwgI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpFCnwgI2RlZmluZSBSRVRHRVRQQUdFU0laRVRZ
UEUgaW50CnwgI2RlZmluZSBIQVZFX01NQVAKfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OCnwgI2Rl
ZmluZSBIQVZFX01NQVBfQU5PTllNT1VTCnwgI2RlZmluZSBIQVZFX01NQVBfREVWWkVSTwp8ICNk
ZWZpbmUgSEFWRV9NVU5NQVAgMQp8ICNkZWZpbmUgSEFWRV9NU1lOQyAxCnwgI2RlZmluZSBIQVZF
X01QUk9URUNUIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19NUFJPVEVDVAp8ICNkZWZpbmUgSEFW
RV9TSE0KfCAjZGVmaW5lIEhBVkVfU1lTX1NZU01BQ1JPU19IIDEKfCAjZGVmaW5lIEhBVkVfRExG
Q05fSCAxCnwgI2RlZmluZSBIQVZFX0RMT1BFTiAxCnwgI2RlZmluZSBIQVZFX0RMU1lNIDEKfCAj
ZGVmaW5lIEhBVkVfRExFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0RMQ0xPU0UgMQp8ICNkZWZpbmUg
SEFWRV9SRUFETElORV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVfUkxfRklMRU5BTUVfQ09N
UExFVElPTl9GVU5DVElPTiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8IAp8ICNpbmNsdWRl
IDxzdGRpby5oPgp8ICNpbmNsdWRlIDxyZWFkbGluZS9yZWFkbGluZS5oPgp8IAp8IGV4dGVybgp8
ICNpZmRlZiBfX2NwbHVzcGx1cwp8ICJDIgp8ICNlbmRpZgp8IAp8ICNpZiBkZWZpbmVkKF9fU1RE
Q19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQp8IGNoYXIqIHJsX2ZpbGVuYW1lX2NvbXBsZXRp
b25fZnVuY3Rpb24gKGNoYXIgKiwgaW50KTsKfCAjZWxzZQp8IGNoYXIqIHJsX2ZpbGVuYW1lX2Nv
bXBsZXRpb25fZnVuY3Rpb24oKTsKfCAjZW5kaWYKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IAp8
ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6Mjc2NDU6IHJlc3VsdDogCiAgICAgICAg
IGV4dGVybiBjaGFyKiBybF9maWxlbmFtZV9jb21wbGV0aW9uX2Z1bmN0aW9uKGNvbnN0IGNoYXIq
LCBpbnQpOwpjb25maWd1cmU6Mjc2NDk6IGNoZWNraW5nIHdoZXRoZXIgcmxfYWxyZWFkeV9wcm9t
cHRlZCBpcyBkZWNsYXJlZApjb25maWd1cmU6Mjc2NzU6IGdjYyAtYyAtZyAtTzIgICBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6Mjc2ODE6ICQ/ID0gMApjb25maWd1cmU6Mjc2ODU6IHRlc3QgLXog
CgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNzY4ODogJD8gPSAwCmNv
bmZpZ3VyZToyNzY5MTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNzY5NDogJD8gPSAw
CmNvbmZpZ3VyZToyNzcwNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3NzIxOiBjaGVja2luZyB3
aGV0aGVyIHJsX3JlYWRsaW5lX25hbWUgaXMgZGVjbGFyZWQKY29uZmlndXJlOjI3NzQ3OiBnY2Mg
LWMgLWcgLU8yICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjI3NzUzOiAkPyA9IDAKY29uZmln
dXJlOjI3NzU3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1
cmU6Mjc3NjA6ICQ/ID0gMApjb25maWd1cmU6Mjc3NjM6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25m
aWd1cmU6Mjc3NjY6ICQ/ID0gMApjb25maWd1cmU6Mjc3Nzc6IHJlc3VsdDogeWVzCmNvbmZpZ3Vy
ZToyNzc5MzogY2hlY2tpbmcgd2hldGhlciBybF9nbnVfcmVhZGxpbmVfcCBpcyBkZWNsYXJlZApj
b25maWd1cmU6Mjc4MTk6IGdjYyAtYyAtZyAtTzIgICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6
Mjc4MjU6ICQ/ID0gMApjb25maWd1cmU6Mjc4Mjk6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMg
Y29uZnRlc3QuZXJyCmNvbmZpZ3VyZToyNzgzMjogJD8gPSAwCmNvbmZpZ3VyZToyNzgzNTogdGVz
dCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToyNzgzODogJD8gPSAwCmNvbmZpZ3VyZToyNzg0OTog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjI3ODY3OiBjaGVja2luZyBmb3IgYSBtb2Rlcm4gcmVhZGxp
bmUKY29uZmlndXJlOjI3ODcxOiByZXN1bHQ6IGZvdW5kIGEgbW9kZXJuIEdOVSByZWFkbGluZQpj
b25maWd1cmU6Mjc5MDg6ICogY2hlY2tzIGZvciBPUyBzZXJ2aWNlcwpjb25maWd1cmU6Mjc5MTA6
IGNoZWNraW5nIGZvciB0aGUgdmFsaWQgY2hhcmFjdGVycyBpbiBmaWxlbmFtZXMKY29uZmlndXJl
OjI4MDMyOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgL3Vzci9saWIvbGli
cmVhZGxpbmUuc28gLWxuY3Vyc2VzIC1sZGwgID4mNQpjb25maWd1cmU6MjgwMzU6ICQ/ID0gMApj
b25maWd1cmU6MjgwNjU6IHJlc3VsdDogOC1iaXQKY29uZmlndXJlOjI4MDc1OiAqIGNoZWNrcyBm
b3IgY29tcGlsZXIgY2hhcmFjdGVyaXN0aWNzIChhcml0aG1ldGljIGRhdGEgdHlwZXMpCmNvbmZp
Z3VyZToyODA3ODogY2hlY2tpbmcgd2hldGhlciBjaGFyIGlzIHVuc2lnbmVkCmNvbmZpZ3VyZToy
ODEwMTogZ2NjIC1jIC1nIC1PMiAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyODEwNzogJD8g
PSAwCmNvbmZpZ3VyZToyODExMTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5l
cnIKY29uZmlndXJlOjI4MTE0OiAkPyA9IDAKY29uZmlndXJlOjI4MTE3OiB0ZXN0IC1zIGNvbmZ0
ZXN0Lm8KY29uZmlndXJlOjI4MTIwOiAkPyA9IDAKY29uZmlndXJlOjI4MTMxOiByZXN1bHQ6IG5v
CmNvbmZpZ3VyZToyODE0MTogY2hlY2tpbmcgd2hldGhlciBzaW5nbGUtZmxvYXQgZGl2Ynl6ZXJv
IHJhaXNlcyBhbiBleGNlcHRpb24KY29uZmlndXJlOjI4MTc2OiBnY2MgLW8gY29uZnRlc3QgLWcg
LU8yICAgIGNvbmZ0ZXN0LmMgL3Vzci9saWIvbGlicmVhZGxpbmUuc28gLWxuY3Vyc2VzIC1sZGwg
ID4mNQpjb25maWd1cmU6MjgxNzk6ICQ/ID0gMApjb25maWd1cmU6MjgxODE6IC4vY29uZnRlc3QK
Y29uZmlndXJlOjI4MTg0OiAkPyA9IDAKY29uZmlndXJlOjI4MTk5OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZToyODIxMDogY2hlY2tpbmcgd2hldGhlciBzaW5nbGUtZmxvYXQgb3ZlcmZsb3cgcmFpc2Vz
IGFuIGV4Y2VwdGlvbgpjb25maWd1cmU6MjgyNDU6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICAg
Y29uZnRlc3QuYyAvdXNyL2xpYi9saWJyZWFkbGluZS5zbyAtbG5jdXJzZXMgLWxkbCAgPiY1CmNv
bmZpZ3VyZToyODI0ODogJD8gPSAwCmNvbmZpZ3VyZToyODI1MDogLi9jb25mdGVzdApjb25maWd1
cmU6MjgyNTM6ICQ/ID0gMApjb25maWd1cmU6MjgyNjg6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4
Mjc5OiBjaGVja2luZyB3aGV0aGVyIHNpbmdsZS1mbG9hdCB1bmRlcmZsb3cgcmFpc2VzIGFuIGV4
Y2VwdGlvbgpjb25maWd1cmU6MjgzMTQ6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICAgY29uZnRl
c3QuYyAvdXNyL2xpYi9saWJyZWFkbGluZS5zbyAtbG5jdXJzZXMgLWxkbCAgPiY1CmNvbmZpZ3Vy
ZToyODMxNzogJD8gPSAwCmNvbmZpZ3VyZToyODMxOTogLi9jb25mdGVzdApjb25maWd1cmU6Mjgz
MjI6ICQ/ID0gMApjb25maWd1cmU6MjgzMzc6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4MzQ4OiBj
aGVja2luZyB3aGV0aGVyIHNpbmdsZS1mbG9hdCBpbmV4YWN0IHJhaXNlcyBhbiBleGNlcHRpb24K
Y29uZmlndXJlOjI4MzgyOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgL3Vz
ci9saWIvbGlicmVhZGxpbmUuc28gLWxuY3Vyc2VzIC1sZGwgID4mNQpjb25maWd1cmU6MjgzODU6
ICQ/ID0gMApjb25maWd1cmU6MjgzODc6IC4vY29uZnRlc3QKY29uZmlndXJlOjI4MzkwOiAkPyA9
IDAKY29uZmlndXJlOjI4NDA1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODQxNjogY2hlY2tpbmcg
d2hldGhlciBkb3VibGUtZmxvYXQgZGl2Ynl6ZXJvIHJhaXNlcyBhbiBleGNlcHRpb24KY29uZmln
dXJlOjI4NDUxOiBnY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgL3Vzci9saWIv
bGlicmVhZGxpbmUuc28gLWxuY3Vyc2VzIC1sZGwgID4mNQpjb25maWd1cmU6Mjg0NTQ6ICQ/ID0g
MApjb25maWd1cmU6Mjg0NTY6IC4vY29uZnRlc3QKY29uZmlndXJlOjI4NDU5OiAkPyA9IDAKY29u
ZmlndXJlOjI4NDc0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODQ4NTogY2hlY2tpbmcgd2hldGhl
ciBkb3VibGUtZmxvYXQgb3ZlcmZsb3cgcmFpc2VzIGFuIGV4Y2VwdGlvbgpjb25maWd1cmU6Mjg1
MjA6IGdjYyAtbyBjb25mdGVzdCAtZyAtTzIgICAgY29uZnRlc3QuYyAvdXNyL2xpYi9saWJyZWFk
bGluZS5zbyAtbG5jdXJzZXMgLWxkbCAgPiY1CmNvbmZpZ3VyZToyODUyMzogJD8gPSAwCmNvbmZp
Z3VyZToyODUyNTogLi9jb25mdGVzdApjb25maWd1cmU6Mjg1Mjg6ICQ/ID0gMApjb25maWd1cmU6
Mjg1NDM6IHJlc3VsdDogbm8KY29uZmlndXJlOjI4NTU0OiBjaGVja2luZyB3aGV0aGVyIGRvdWJs
ZS1mbG9hdCB1bmRlcmZsb3cgcmFpc2VzIGFuIGV4Y2VwdGlvbgpjb25maWd1cmU6Mjg1ODk6IGdj
YyAtbyBjb25mdGVzdCAtZyAtTzIgICAgY29uZnRlc3QuYyAvdXNyL2xpYi9saWJyZWFkbGluZS5z
byAtbG5jdXJzZXMgLWxkbCAgPiY1CmNvbmZpZ3VyZToyODU5MjogJD8gPSAwCmNvbmZpZ3VyZToy
ODU5NDogLi9jb25mdGVzdApjb25maWd1cmU6Mjg1OTc6ICQ/ID0gMApjb25maWd1cmU6Mjg2MTI6
IHJlc3VsdDogbm8KY29uZmlndXJlOjI4NjIzOiBjaGVja2luZyB3aGV0aGVyIGRvdWJsZS1mbG9h
dCBpbmV4YWN0IHJhaXNlcyBhbiBleGNlcHRpb24KY29uZmlndXJlOjI4NjU3OiBnY2MgLW8gY29u
ZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgL3Vzci9saWIvbGlicmVhZGxpbmUuc28gLWxuY3Vy
c2VzIC1sZGwgID4mNQpjb25maWd1cmU6Mjg2NjA6ICQ/ID0gMApjb25maWd1cmU6Mjg2NjI6IC4v
Y29uZnRlc3QKY29uZmlndXJlOjI4NjY1OiAkPyA9IDAKY29uZmlndXJlOjI4NjgwOiByZXN1bHQ6
IG5vCmNvbmZpZ3VyZToyODY5MTogY2hlY2tpbmcgZm9yIGxvbmcgZG91YmxlCmNvbmZpZ3VyZToy
ODc1MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjI4NzYxOiBjaGVja2luZyB3aGV0aGVyIGJ5dGUg
b3JkZXJpbmcgaXMgYmlnZW5kaWFuCmNvbmZpZ3VyZToyODc4ODogZ2NjIC1jIC1nIC1PMiAgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToyODc5NDogJD8gPSAwCmNvbmZpZ3VyZToyODc5ODogdGVz
dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjI4ODAxOiAkPyA9
IDAKY29uZmlndXJlOjI4ODA0OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjI4ODA3OiAk
PyA9IDAKY29uZmlndXJlOjI4ODMxOiBnY2MgLWMgLWcgLU8yICAgY29uZnRlc3QuYyA+JjUKZGlz
dGNjWzk5MTJdIEVSUk9SOiBjb21waWxlIC92YXIvdG1wL2NjYWNoZS9jb25mdGVzdC50bXAudG90
b3otbGludXguOTgxOS5pIG9uIGxvY2FsaG9zdCBmYWlsZWQKY29uZnRlc3QuYzogSW4gZnVuY3Rp
b24gJ21haW4nOgpjb25mdGVzdC5jOjIwOTogZXJyb3I6ICdub3QnIHVuZGVjbGFyZWQgKGZpcnN0
IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQpjb25mdGVzdC5jOjIwOTogZXJyb3I6IChFYWNoIHVuZGVj
bGFyZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5IG9uY2UKY29uZnRlc3QuYzoyMDk6IGVy
cm9yOiBmb3IgZWFjaCBmdW5jdGlvbiBpdCBhcHBlYXJzIGluLikKY29uZnRlc3QuYzoyMDk6IGVy
cm9yOiBleHBlY3RlZCAnOycgYmVmb3JlICdiaWcnCmNvbmZpZ3VyZToyODgzNzogJD8gPSAxCmNv
bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNk
ZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJU1AiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg
ImNsaXNwIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjM4ICgyMDA2LTAxLTI0KSIKfCAj
ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCkiCnwgI2Rl
ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiaHR0cDovL2NsaXNwLmNvbnMub3JnLyIKfCAjZGVmaW5l
IF9HTlVfU09VUkNFIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZ
U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NU
RExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf
SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIF9fRVhURU5TSU9OU19fIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElD
UyAxCnwgI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAp8ICNpZm5kZWYgX19pMzg2X18KfCAj
ZGVmaW5lIF9faTM4Nl9fIDEKfCAjZW5kaWYKfCAjZGVmaW5lIEhBVkVfSUNPTlYgMQp8ICNkZWZp
bmUgSUNPTlZfQ09OU1QgCnwgI2RlZmluZSBFTkFCTEVfTkxTIDEKfCAjZGVmaW5lIEhBVkVfR0VU
VEVYVCAxCnwgI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxCnwgI2RlZmluZSBIQVZFX1NJR1NFR1Yg
MQp8ICNkZWZpbmUgcmV0dXJuX3ZvaWQgcmV0dXJuCnwgI2RlZmluZSBIQVZFX0xPTkdfTE9ORyAx
CnwgI2RlZmluZSBIQVZFX0xPTkdMT05HCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
SEFWRV9PRkZTRVRPRgp8ICNkZWZpbmUgSEFWRV9TVERCT09MX0ggMQp8ICNkZWZpbmUgSEFWRV9J
TlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
RklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBESVJFTlQKfCAj
ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAp8ICNkZWZpbmUgSEFWRV9ORVREQl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NITV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKfCAjZGVmaW5l
IEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPX0ggMQp8ICNkZWZpbmUgSEFW
RV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfVENHRVRBVFRSCnwgI2RlZmluZSBIQVZFX1RDU0FG
TFVTSAp8ICNkZWZpbmUgV0lOU0laRV9ORUVEX1NZU19JT0NUTF9ICnwgI2RlZmluZSBIQVZFX1gx
MQp8ICNkZWZpbmUgQ0FERFJfVCBjYWRkcl90CnwgI2RlZmluZSBTT0NLTEVOX1Qgc29ja2xlbl90
CnwgI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAp8ICNkZWZpbmUgU0laRU9GX1NUUlVDVF9USU1FVkFM
IDgKfCAjZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQp8ICNkZWZpbmUgSEFWRV9BTExPQ0EgMQp8ICNk
ZWZpbmUgSEFWRV9fSk1QCnwgI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKfCAjZGVmaW5lIFNJR05B
TEJMT0NLX1NZU1YKfCAjZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCnwgI2RlZmluZSBTSUdOQUxC
TE9DS19CU0QKfCAjZGVmaW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKfCAjZGVmaW5lIEhBVkVfU0lH
QUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHSU5URVJSVVBUIDEKfCAjZGVmaW5lIEhBVkVfRlBV
X0NPTlRST0xfVAp8ICNkZWZpbmUgSEFWRV9TRVRGUFVDVwp8ICNkZWZpbmUgSEFWRV9SQUlTRQp8
ICNkZWZpbmUgUkVUQUJPUlRUWVBFIHZvaWQKfCAjZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAp8ICNk
ZWZpbmUgSEFWRV9QRVJST1JfREVDTAp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmlu
ZSBIQVZFX1NZU0NPTkYgMQp8ICNkZWZpbmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKfCAjZGVmaW5l
IEhBVkVfTUVNU0VUIDEKfCAjZGVmaW5lIEhBVkVfU0VUU0lEIDEKfCAjZGVmaW5lIEhBVkVfU0VU
UEdJRCAxCnwgI2RlZmluZSBIQVZFX0ZDSE1PRCAxCnwgI2RlZmluZSBIQVZFX0ZTWU5DIDEKfCAj
ZGVmaW5lIEhBVkVfRkxPQ0sgMQp8ICNkZWZpbmUgSEFWRV9HRVRIT1NURU5UIDEKfCAjZGVmaW5l
IEhBVkVfU0hVVERPV04gMQp8ICNkZWZpbmUgSEFWRV9VU0xFRVAgMQp8ICNkZWZpbmUgSEFWRV9V
QUxBUk0gMQp8ICNkZWZpbmUgSEFWRV9TRVRJVElNRVIgMQp8ICNkZWZpbmUgSEFWRV9OSUNFIDEK
fCAjZGVmaW5lIEhBVkVfRlRJTUUgMQp8ICNkZWZpbmUgSEFWRV9SRUFMUEFUSCAxCnwgI2RlZmlu
ZSBIQVZFX1BVVEVOViAxCnwgI2RlZmluZSBIQVZFX1NFVEVOViAxCnwgI2RlZmluZSBIQVZFX1VO
U0VURU5WIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKfCAjZGVmaW5lIFVOU0VURU5W
X1BPU0lYIDAKfCAjZGVmaW5lIEhBVkVfTENfTUVTU0FHRVMgMQp8ICNkZWZpbmUgSEFWRV9HRVRS
TElNSVQgMQp8ICNkZWZpbmUgSEFWRV9TRVRSTElNSVQgMQp8ICNkZWZpbmUgU0laRU9GX1JMSU1f
VCA4CnwgI2RlZmluZSBSTElNSVRfUkVTT1VSQ0VfVCBlbnVtIF9fcmxpbWl0X3Jlc291cmNlCnwg
I2RlZmluZSBTRVRSTElNSVRfQ09OU1QgY29uc3QKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9GT1JLIDEKfCAjZGVmaW5lIEhBVkVfVkZPUksgMQp8ICNkZWZpbmUgSEFW
RV9XT1JLSU5HX1ZGT1JLIDEKfCAjZGVmaW5lIEhBVkVfV09SS0lOR19GT1JLIDEKfCAjZGVmaW5l
IFBJRF9UIHBpZF90CnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1RJTUVTX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRSVVNBR0UKfCAjZGVmaW5lIFJVU0FH
RV9XSE9fVCBpbnQKfCAjZGVmaW5lIEhBVkVfR0VUQ1dECnwgI2RlZmluZSBHRVRDV0RfU0laRV9U
IHNpemVfdAp8ICNkZWZpbmUgVElNRV9XSVRIX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfTFNU
QVQKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRWRlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
RlNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TQ0FMQVJf
RlNJRCAxCnwgI2RlZmluZSBTSVpFT0ZfRlNCTEtDTlRfVCA4CnwgI2RlZmluZSBTSVpFT0ZfRlNG
SUxDTlRfVCA4CnwgI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX1JERVYgMQp8ICNkZWZpbmUg
SEFWRV9TVFJVQ1RfU1RBVF9TVF9CTEtTSVpFIDEKfCAjZGVmaW5lIEhBVkVfU1RSVUNUX1NUQVRf
U1RfQkxPQ0tTIDEKfCAjZGVmaW5lIFNJWkVPRl9JTk9fVCA4CnwgI2RlZmluZSBTSVpFT0ZfREVW
X1QgOAp8ICNkZWZpbmUgSEFWRV9SRUFETElOSyAxCnwgI2RlZmluZSBFTE9PUF9WQUxVRSBFTE9P
UAp8ICNkZWZpbmUgUkVUQ0xPU0VESVJUWVBFIGludAp8ICNkZWZpbmUgSEFWRV9JT0NUTCAxCnwg
I2RlZmluZSBJT0NUTF9SRVFVRVNUX1QgdW5zaWduZWQgbG9uZwp8ICNkZWZpbmUgSU9DVExfRE9U
Uwp8ICNkZWZpbmUgTkVFRF9TWVNfSU9DVExfSAp8ICNkZWZpbmUgSEFWRV9GSU9OUkVBRAp8ICNk
ZWZpbmUgSEFWRV9SRUxJQUJMRV9GSU9OUkVBRAp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVm
aW5lIEhBVkVfUkVMSUFCTEVfUE9MTAp8ICNkZWZpbmUgSEFWRV9TRUxFQ1QgMQp8ICNkZWZpbmUg
SEFWRV9TWVNfU0VMRUNUX0gKfCAjZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAp8ICNkZWZpbmUg
U0VMRUNUX1NFVF9UIGZkX3NldAp8ICNkZWZpbmUgU0VMRUNUX0NPTlNUIAp8ICNkZWZpbmUgSEFW
RV9SRUxJQUJMRV9TRUxFQ1QKfCAjZGVmaW5lIEhBVkVfR0VUVElNRU9GREFZIDEKfCAjZGVmaW5l
IEdFVFRJTUVPRkRBWV9UWlBfVCBzdHJ1Y3QgdGltZXpvbmUgKgp8ICNkZWZpbmUgSEFWRV9HRVRI
T1NUTkFNRSAxCnwgI2RlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUUKfCAjZGVmaW5lIEhBVkVfQ09O
TkVDVCAxCnwgI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CnwgI2RlZmluZSBDT05ORUNUX05B
TUVfVCBzdHJ1Y3Qgc29ja2FkZHIgKgp8ICNkZWZpbmUgQ09OTkVDVF9BRERSTEVOX1Qgc2l6ZV90
CnwgI2RlZmluZSBIQVZFX1NZU19VTl9IIDEKfCAjZGVmaW5lIEhBVkVfSVBWNAp8ICNkZWZpbmUg
SEFWRV9JUFY2CnwgI2RlZmluZSBIQVZFX0lORVRfUFRPTiAxCnwgI2RlZmluZSBIQVZFX0lORVRf
TlRPUCAxCnwgI2RlZmluZSBIQVZFX0lORVRfQUREUiAxCnwgI2RlZmluZSBIQVZFX1NFVFNPQ0tP
UFQgMQp8ICNkZWZpbmUgSEFWRV9HRVRTT0NLT1BUIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9J
Tl9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgUkVUX0lORVRfQURE
Ul9UWVBFIHVuc2lnbmVkIGludAp8ICNkZWZpbmUgSU5FVF9BRERSX0NPTlNUIGNvbnN0CnwgI2Rl
ZmluZSBJTkVUX0FERFJfU1VGRklYCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNk
ZWZpbmUgU0VUU09DS09QVF9DT05TVCBjb25zdAp8ICNkZWZpbmUgU0VUU09DS09QVF9BUkdfVCB2
b2lkKgp8ICNkZWZpbmUgU0VUU09DS09QVF9PUFRMRU5fVCB1bnNpZ25lZCBpbnQKfCAjZGVmaW5l
IENPREVfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKfCAjZGVmaW5lIE1BTExPQ19BRERSRVNT
X1JBTkdFIDB4MDgwMDAwMDBVTAp8ICNkZWZpbmUgU0hMSUJfQUREUkVTU19SQU5HRSAweDREMDAw
MDAwVUwKfCAjZGVmaW5lIFNUQUNLX0FERFJFU1NfUkFOR0UgMHhCRjAwMDAwMFVMCnwgI2RlZmlu
ZSBIQVZFX0dFVFBBR0VTSVpFCnwgI2RlZmluZSBSRVRHRVRQQUdFU0laRVRZUEUgaW50CnwgI2Rl
ZmluZSBIQVZFX01NQVAKfCAjZGVmaW5lIEhBVkVfTU1BUF9BTk9OCnwgI2RlZmluZSBIQVZFX01N
QVBfQU5PTllNT1VTCnwgI2RlZmluZSBIQVZFX01NQVBfREVWWkVSTwp8ICNkZWZpbmUgSEFWRV9N
VU5NQVAgMQp8ICNkZWZpbmUgSEFWRV9NU1lOQyAxCnwgI2RlZmluZSBIQVZFX01QUk9URUNUIDEK
fCAjZGVmaW5lIEhBVkVfV09SS0lOR19NUFJPVEVDVAp8ICNkZWZpbmUgSEFWRV9TSE0KfCAjZGVm
aW5lIEhBVkVfU1lTX1NZU01BQ1JPU19IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2Rl
ZmluZSBIQVZFX0RMT1BFTiAxCnwgI2RlZmluZSBIQVZFX0RMU1lNIDEKfCAjZGVmaW5lIEhBVkVf
RExFUlJPUiAxCnwgI2RlZmluZSBIQVZFX0RMQ0xPU0UgMQp8ICNkZWZpbmUgSEFWRV9SRUFETElO
RV9SRUFETElORV9IIDEKfCAjZGVmaW5lIEhBVkVfUkxfRklMRU5BTUVfQ09NUExFVElPTl9GVU5D
VElPTiAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUkxfQUxSRUFEWV9QUk9NUFRFRCAxCnwgI2RlZmlu
ZSBIQVZFX0RFQ0xfUkxfUkVBRExJTkVfTkFNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfUkxfR05V
X1JFQURMSU5FX1AgMQp8ICNkZWZpbmUgUkVBRExJTkVfRklMRV9DT01QTEVURSBybF9maWxlbmFt
ZV9jb21wbGV0aW9uX2Z1bmN0aW9uCnwgI2RlZmluZSBSRUFETElORV9DT05TVCBjb25zdAp8ICNk
ZWZpbmUgSEFWRV9SRUFETElORQp8ICNkZWZpbmUgVkFMSURfRklMRU5BTUVfQ0hBUiAoKGNoID49
IDEpICYmIChjaCAhPSA0NykpCnwgI2RlZmluZSBIQVZFX0xPTkdfRE9VQkxFIDEKfCAvKiBlbmQg
Y29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMv
cGFyYW0uaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8ICNpZiBCWVRFX09SREVSICE9IEJJR19F
TkRJQU4KfCAgbm90IGJpZyBlbmRpYW4KfCAjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8
IH0KY29uZmlndXJlOjI4OTcyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToyODk5MzogY2hlY2tpbmcg
Zm9yIGludGVnZXIgdHlwZXMgYW5kIGJlaGF2aW91ci4uLgpjb25maWd1cmU6MjkwMDc6IGdjYyAg
LW8gY29uZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgL3Vzci9saWIvbGlicmVhZGxpbmUuc28g
LWxuY3Vyc2VzIC1sZGwgID4mNQpjb25maWd1cmU6MjkwMTA6ICQ/ID0gMApjb25maWd1cmU6MzYz
NTU6IGNoZWNraW5nIGZvciBmbG9hdGluZy1wb2ludCB0eXBlcyBhbmQgYmVoYXZpb3VyLi4uCmNv
bmZpZ3VyZTozNjM2OTogZ2NjICAtbyBjb25mdGVzdCAtZyAtTzIgICAgY29uZnRlc3QuYyAvdXNy
L2xpYi9saWJyZWFkbGluZS5zbyAtbG5jdXJzZXMgLWxkbCAgPiY1CmNvbmZpZ3VyZTozNjM3Mjog
JD8gPSAwCmNvbmZpZ3VyZTozNjc5OTogKiBvdXRwdXQgZmlsZSBnZW5lcmF0aW9uCmNvbmZpZ3Vy
ZTozNjkwMjogY3JlYXRpbmcgLi9jb25maWcuc3RhdHVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tICMjCiMjIFJ1bm5pbmcgY29uZmlnLnN0YXR1cy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLSAjIwoKVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBHTlUgQ0xJU1AgY29uZmlnLnN0YXR1
cyAyLjM4ICgyMDA2LTAxLTI0KSwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYg
Mi41OS4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoKICBDT05GSUdfRklMRVMgICAgPSAK
ICBDT05GSUdfSEVBREVSUyAgPSAKICBDT05GSUdfTElOS1MgICAgPSAKICBDT05GSUdfQ09NTUFO
RFMgPSAKICAkIC4vY29uZmlnLnN0YXR1cyAKCm9uIHRvdG96LWxpbnV4Cgpjb25maWcuc3RhdHVz
OjcyMzogY3JlYXRpbmcgcG8vTWFrZWZpbGUuaW4KY29uZmlnLnN0YXR1czo3MjM6IGNyZWF0aW5n
IG1ha2VtYWtlCmNvbmZpZy5zdGF0dXM6ODMxOiBjcmVhdGluZyB1bml4Y29uZi5oCmNvbmZpZy5z
dGF0dXM6MTU0MTogZXhlY3V0aW5nIGRlZmF1bHQtMSBjb21tYW5kcwoKIyMgLS0tLS0tLS0tLS0t
LS0tLSAjIwojIyBDYWNoZSB2YXJpYWJsZXMuICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0gIyMKCmFj
X2N2X2J1aWxkPWk2ODYtcGMtbGludXgtZ251CmFjX2N2X2J1aWxkX2FsaWFzPWk2ODYtcGMtbGlu
dXgtZ251CmFjX2N2X2NfYmlnZW5kaWFuPW5vCmFjX2N2X2NfY2hhcl91bnNpZ25lZD1ubwphY19j
dl9jX2NvbXBpbGVyX2dudT15ZXMKYWNfY3ZfY19pbmxpbmU9aW5saW5lCmFjX2N2X2Vudl9DQ19z
ZXQ9CmFjX2N2X2Vudl9DQ192YWx1ZT0KYWNfY3ZfZW52X0NGTEFHU19zZXQ9CmFjX2N2X2Vudl9D
RkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9DUFBGTEFHU19zZXQ9CmFjX2N2X2Vudl9DUFBGTEFHU192
YWx1ZT0KYWNfY3ZfZW52X0NQUF9zZXQ9CmFjX2N2X2Vudl9DUFBfdmFsdWU9CmFjX2N2X2Vudl9M
REZMQUdTX3NldD0KYWNfY3ZfZW52X0xERkxBR1NfdmFsdWU9CmFjX2N2X2Vudl9idWlsZF9hbGlh
c19zZXQ9CmFjX2N2X2Vudl9idWlsZF9hbGlhc192YWx1ZT0KYWNfY3ZfZW52X2hvc3RfYWxpYXNf
c2V0PQphY19jdl9lbnZfaG9zdF9hbGlhc192YWx1ZT0KYWNfY3ZfZW52X3RhcmdldF9hbGlhc19z
ZXQ9CmFjX2N2X2Vudl90YXJnZXRfYWxpYXNfdmFsdWU9CmFjX2N2X2V4ZWV4dD0KYWNfY3ZfZnVu
Y19fbG9uZ2ptcD15ZXMKYWNfY3ZfZnVuY19fc2V0am1wPXllcwphY19jdl9mdW5jX2FsbG9jYV93
b3Jrcz15ZXMKYWNfY3ZfZnVuY19jb25uZWN0PXllcwphY19jdl9mdW5jX2RsY2xvc2U9eWVzCmFj
X2N2X2Z1bmNfZGxlcnJvcj15ZXMKYWNfY3ZfZnVuY19kbG9wZW49eWVzCmFjX2N2X2Z1bmNfZGxz
eW09eWVzCmFjX2N2X2Z1bmNfZmNobW9kPXllcwphY19jdl9mdW5jX2Zsb2NrPXllcwphY19jdl9m
dW5jX2Zvcms9eWVzCmFjX2N2X2Z1bmNfZm9ya193b3Jrcz15ZXMKYWNfY3ZfZnVuY19mc3luYz15
ZXMKYWNfY3ZfZnVuY19mdGltZT15ZXMKYWNfY3ZfZnVuY19nZXRkdGFibGVzaXplPXllcwphY19j
dl9mdW5jX2dldGhvc3RlbnQ9eWVzCmFjX2N2X2Z1bmNfZ2V0aG9zdG5hbWU9eWVzCmFjX2N2X2Z1
bmNfZ2V0cHduYW09eWVzCmFjX2N2X2Z1bmNfZ2V0cmxpbWl0PXllcwphY19jdl9mdW5jX2dldHNv
Y2tvcHQ9eWVzCmFjX2N2X2Z1bmNfZ2V0dGltZW9mZGF5PXllcwphY19jdl9mdW5jX2luZXRfYWRk
cj15ZXMKYWNfY3ZfZnVuY19pbmV0X250b3A9eWVzCmFjX2N2X2Z1bmNfaW5ldF9wdG9uPXllcwph
Y19jdl9mdW5jX2lvY3RsPXllcwphY19jdl9mdW5jX21lbXNldD15ZXMKYWNfY3ZfZnVuY19tbWFw
PXllcwphY19jdl9mdW5jX21wcm90ZWN0PXllcwphY19jdl9mdW5jX21zeW5jPXllcwphY19jdl9m
dW5jX211bm1hcD15ZXMKYWNfY3ZfZnVuY19uaWNlPXllcwphY19jdl9mdW5jX3BvbGw9eWVzCmFj
X2N2X2Z1bmNfcHV0ZW52PXllcwphY19jdl9mdW5jX3JlYWRsaW5lPXllcwphY19jdl9mdW5jX3Jl
YWRsaW5rPXllcwphY19jdl9mdW5jX3JlYWxwYXRoPXllcwphY19jdl9mdW5jX3JsX2ZpbGVuYW1l
X2NvbXBsZXRpb25fZnVuY3Rpb249eWVzCmFjX2N2X2Z1bmNfc2VsZWN0PXllcwphY19jdl9mdW5j
X3NldGVudj15ZXMKYWNfY3ZfZnVuY19zZXRpdGltZXI9eWVzCmFjX2N2X2Z1bmNfc2V0cGdpZD15
ZXMKYWNfY3ZfZnVuY19zZXRybGltaXQ9eWVzCmFjX2N2X2Z1bmNfc2V0c2lkPXllcwphY19jdl9m
dW5jX3NldHNvY2tvcHQ9eWVzCmFjX2N2X2Z1bmNfc2h1dGRvd249eWVzCmFjX2N2X2Z1bmNfc2ln
YWN0aW9uPXllcwphY19jdl9mdW5jX3NpZ2Jsb2NrPXllcwphY19jdl9mdW5jX3NpZ2hvbGQ9eWVz
CmFjX2N2X2Z1bmNfc2lnaW50ZXJydXB0PXllcwphY19jdl9mdW5jX3NpZ3Byb2NtYXNrPXllcwph
Y19jdl9mdW5jX3N0cmVycm9yPXllcwphY19jdl9mdW5jX3N5c2NvbmY9eWVzCmFjX2N2X2Z1bmNf
dWFsYXJtPXllcwphY19jdl9mdW5jX3Vuc2V0ZW52PXllcwphY19jdl9mdW5jX3VzbGVlcD15ZXMK
YWNfY3ZfZnVuY192Zm9yaz15ZXMKYWNfY3ZfZnVuY192Zm9ya193b3Jrcz15ZXMKYWNfY3ZfaGF2
ZV9kZWNsX2Vudmlyb249eWVzCmFjX2N2X2hhdmVfZGVjbF9ybF9hbHJlYWR5X3Byb21wdGVkPXll
cwphY19jdl9oYXZlX2RlY2xfcmxfZ251X3JlYWRsaW5lX3A9eWVzCmFjX2N2X2hhdmVfZGVjbF9y
bF9yZWFkbGluZV9uYW1lPXllcwphY19jdl9oYXZlX3JlYWRsaW5lPXllcwphY19jdl9oZWFkZXJf
YXJwYV9pbmV0X2g9eWVzCmFjX2N2X2hlYWRlcl9kaXJlbnRfZGlyZW50X2g9eWVzCmFjX2N2X2hl
YWRlcl9kbGZjbl9oPXllcwphY19jdl9oZWFkZXJfaW50dHlwZXNfaD15ZXMKYWNfY3ZfaGVhZGVy
X2xiZXJfaD1ubwphY19jdl9oZWFkZXJfbGRhcF9oPW5vCmFjX2N2X2hlYWRlcl9tZW1vcnlfaD15
ZXMKYWNfY3ZfaGVhZGVyX21pbml4X2NvbmZpZ19oPW5vCmFjX2N2X2hlYWRlcl9uZXRkYl9oPXll
cwphY19jdl9oZWFkZXJfbmV0aW5ldF9pbl9oPXllcwphY19jdl9oZWFkZXJfbmV0aW5ldF90Y3Bf
aD15ZXMKYWNfY3ZfaGVhZGVyX3JlYWRsaW5lX3JlYWRsaW5lX2g9eWVzCmFjX2N2X2hlYWRlcl9z
Z3R0eV9oPXllcwphY19jdl9oZWFkZXJfc3RhdF9icm9rZW49bm8KYWNfY3ZfaGVhZGVyX3N0ZGM9
eWVzCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGxpYl9oPXllcwph
Y19jdl9oZWFkZXJfc3RyaW5nX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdzX2g9eWVzCmFjX2N2
X2hlYWRlcl9zeXNfZmlsZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX2ludHR5cGVzX2g9bm8KYWNf
Y3ZfaGVhZGVyX3N5c19pcGNfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19tbWFuX2g9eWVzCmFjX2N2
X2hlYWRlcl9zeXNfcmVzb3VyY2VfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19zaG1faD15ZXMKYWNf
Y3ZfaGVhZGVyX3N5c19zdGF0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc3RhdGZzX2g9eWVzCmFj
X2N2X2hlYWRlcl9zeXNfc3RhdHZmc19oPXllcwphY19jdl9oZWFkZXJfc3lzX3N5c21hY3Jvc19o
PXllcwphY19jdl9oZWFkZXJfc3lzX3Rlcm1pb19oPW5vCmFjX2N2X2hlYWRlcl9zeXNfdGltZXNf
aD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190eXBlc19oPXllcwphY19jdl9oZWFkZXJfc3lzX3VuX2g9
eWVzCmFjX2N2X2hlYWRlcl90ZXJtaW9faD15ZXMKYWNfY3ZfaGVhZGVyX3Rlcm1pb3NfaD15ZXMK
YWNfY3ZfaGVhZGVyX3RpbWU9eWVzCmFjX2N2X2hlYWRlcl91bmlzdGRfaD15ZXMKYWNfY3ZfaGVh
ZGVyX3Zmb3JrX2g9bm8KYWNfY3ZfaG9zdD1pNjg2LXBjLWxpbnV4LWdudQphY19jdl9ob3N0X2Fs
aWFzPWk2ODYtcGMtbGludXgtZ251CmFjX2N2X2xpYl9YMTFfbWFpbj15ZXMKYWNfY3ZfbGliX2Rp
cl9vcGVuZGlyPW5vCmFjX2N2X21lbWJlcl9zdHJ1Y3RfZGlyZW50X2RfbmFtbGVuPW5vCmFjX2N2
X21lbWJlcl9zdHJ1Y3Rfc3RhdF9zdF9ibGtzaXplPXllcwphY19jdl9tZW1iZXJfc3RydWN0X3N0
YXRfc3RfYmxvY2tzPXllcwphY19jdl9tZW1iZXJfc3RydWN0X3N0YXRfc3RfcmRldj15ZXMKYWNf
Y3Zfb2JqZXh0PW8KYWNfY3ZfcGF0aF9HTVNHRk1UPS91c3IvYmluL2dtc2dmbXQKYWNfY3ZfcGF0
aF9NU0dGTVQ9L3Vzci9iaW4vbXNnZm10CmFjX2N2X3BhdGhfTVNHTUVSR0U9L3Vzci9iaW4vbXNn
bWVyZ2UKYWNfY3ZfcGF0aF9YR0VUVEVYVD0vdXNyL2Jpbi94Z2V0dGV4dAphY19jdl9wcm9nX0NP
TVBSRVNTPWd6aXAKYWNfY3ZfcHJvZ19DUFA9J2djYyAtRScKYWNfY3ZfcHJvZ19EVklQREY9ZHZp
cGRmCmFjX2N2X3Byb2dfR1JPRkY9Z3JvZmYKYWNfY3ZfcHJvZ19NQUtFPWdtYWtlCmFjX2N2X3By
b2dfUkFOTElCPXJhbmxpYgphY19jdl9wcm9nX2FjX2N0X0NDPWdjYwphY19jdl9wcm9nX2NjX2c9
eWVzCmFjX2N2X3Byb2dfY2Nfc3RkYz0KYWNfY3ZfcHJvZ19lZ3JlcD0nZ3JlcCAtRScKYWNfY3Zf
cHJvZ19tYWtlX2dtYWtlX3NldD15ZXMKYWNfY3Zfc2VhcmNoX2Rsb3Blbj0tbGRsCmFjX2N2X3Nl
YXJjaF90Z2V0ZW50PS1sbmN1cnNlcwphY19jdl9zaXplb2ZfZGV2X3Q9OAphY19jdl9zaXplb2Zf
ZnNibGtjbnRfdD04CmFjX2N2X3NpemVvZl9mc2ZpbGNudF90PTgKYWNfY3Zfc2l6ZW9mX2lub190
PTgKYWNfY3Zfc2l6ZW9mX29mZl90PTgKYWNfY3Zfc2l6ZW9mX3JsaW1fdD04CmFjX2N2X3NpemVv
Zl9zdHJ1Y3RfdGltZXZhbD04CmFjX2N2X3N0cnVjdF9mc2lkX3NjYWxhcj15ZXMKYWNfY3Zfc3Ry
dWN0X3RtPXRpbWUuaAphY19jdl9zeXNfZmlsZV9vZmZzZXRfYml0cz02NAphY19jdl9zeXNfbGFy
Z2VfZmlsZXM9bm8KYWNfY3Zfc3lzX2xhcmdlZmlsZV9DQz1ubwphY19jdl90eXBlX2Rldl90PXll
cwphY19jdl90eXBlX2ZzYmxrY250X3Q9eWVzCmFjX2N2X3R5cGVfZnNmaWxjbnRfdD15ZXMKYWNf
Y3ZfdHlwZV9pbm9fdD15ZXMKYWNfY3ZfdHlwZV9sb25nX2xvbmc9eWVzCmFjX2N2X3R5cGVfb2Zm
X3Q9eWVzCmFjX2N2X3R5cGVfcGlkX3Q9eWVzCmFjX2N2X3R5cGVfcmxpbV90PXllcwphY19jdl90
eXBlX3N0cnVjdF90aW1ldmFsPXllcwphY19jdl91c2VfcmVhZGxpbmU9ZGVmYXVsdAphY19jdl93
b3JraW5nX2FsbG9jYV9oPXllcwphY2xfY3ZfaGFyZGNvZGVfZGlyZWN0PW5vCmFjbF9jdl9oYXJk
Y29kZV9saWJkaXJfZmxhZ19zcGVjPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCmFjbF9jdl9o
YXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPQphY2xfY3ZfaGFyZGNvZGVfbWludXNfTD1ubwphY2xf
Y3ZfbGliZXh0PWEKYWNsX2N2X3BhdGhfTEQ9L3Vzci9pNjg2LXBjLWxpbnV4LWdudS9iaW4vbGQK
YWNsX2N2X3Byb2dfZ251X2xkPXllcwphY2xfY3ZfcnBhdGg9ZG9uZQphY2xfY3Zfc2hsaWJleHQ9
c28KYWNsX2N2X3dsPS1XbCwKYW1fY3ZfZnVuY19pY29udj15ZXMKYW1fY3ZfbGliX2ljb252PW5v
CmFtX2N2X3Byb3RvX2ljb252PSdleHRlcm4gc2l6ZV90IGljb252IChpY29udl90IGNkLCBjaGFy
ICogKmluYnVmLCBzaXplX3QgKmluYnl0ZXNsZWZ0LCBjaGFyICogKm91dGJ1Ziwgc2l6ZV90ICpv
dXRieXRlc2xlZnQpOycKYW1fY3ZfcHJvdG9faWNvbnZfYXJnMT0KY2xfY3ZfYWRkcmVzc19jb2Rl
PTB4MDgwMDAwMDAKY2xfY3ZfYWRkcmVzc19tYWxsb2M9MHgwODAwMDAwMApjbF9jdl9hZGRyZXNz
X3NobGliPTB4NEQwMDAwMDAKY2xfY3ZfYWRkcmVzc19zdGFjaz0weEJGMDAwMDAwCmNsX2N2X2J1
aWx0aW5fc3RybGVuPW5vCmNsX2N2X2NfcmV0dXJuX3ZvaWQ9eWVzCmNsX2N2X2NfcmV0dXJuX3Zv
aWRfZm9ybT1yZXR1cm4KY2xfY3ZfY192b2lkPXllcwpjbF9jdl9jY19kb3VibGVfZGl2Ynl6ZXJv
PW5vCmNsX2N2X2NjX2RvdWJsZV9pbmV4YWN0PW5vCmNsX2N2X2NjX2RvdWJsZV9vdmVyZmxvdz1u
bwpjbF9jdl9jY19kb3VibGVfdW5kZXJmbG93PW5vCmNsX2N2X2NjX2Zsb2F0X2RpdmJ5emVybz1u
bwpjbF9jdl9jY19mbG9hdF9pbmV4YWN0PW5vCmNsX2N2X2NjX2Zsb2F0X292ZXJmbG93PW5vCmNs
X2N2X2NjX2Zsb2F0X3VuZGVyZmxvdz1ubwpjbF9jdl9kZWNsX0VMT09QPUVMT09QCmNsX2N2X2Rl
Y2xfRklPTlJFQURfMT1ubwpjbF9jdl9kZWNsX0ZJT05SRUFEXzFfc3lzX2ZpbGlvX2g9bm8KY2xf
Y3ZfZGVjbF9GSU9OUkVBRF8xX3N5c19pb2N0bF9oPXllcwpjbF9jdl9kZWNsX0ZJT05SRUFEX3Jl
bGlhYmxlPXllcwpjbF9jdl9kZWNsX09fUkRXUl9mY250bF9oPXllcwpjbF9jdl9kZWNsX1JfT0tf
dW5pc3RkX2g9eWVzCmNsX2N2X2RlY2xfVENTQUZMVVNIPXllcwpjbF9jdl9kZWNsX2Vsb29wPXll
cwpjbF9jdl9maWxlX2Zsb2F0cGFyYW1faD0xCmNsX2N2X2ZpbGVfaW50cGFyYW1faD0xCmNsX2N2
X2Z1bmNfY2xvc2VkaXJfcmV0dmFsPXllcwpjbF9jdl9mdW5jX2dldGN3ZD15ZXMKY2xfY3ZfZnVu
Y19nZXRwYWdlc2l6ZT15ZXMKY2xfY3ZfZnVuY19nZXRydXNhZ2U9eWVzCmNsX2N2X2Z1bmNfZ2V0
cnVzYWdlX3dvcmtzPXllcwpjbF9jdl9mdW5jX2xzdGF0PXllcwpjbF9jdl9mdW5jX21hbGxvY19i
cm9rZW49bm8KY2xfY3ZfZnVuY19tbWFwX2Fub249eWVzCmNsX2N2X2Z1bmNfbW1hcF9hbm9ueW1v
dXM9eWVzCmNsX2N2X2Z1bmNfbW1hcF9kZXZ6ZXJvPXllcwpjbF9jdl9mdW5jX21tYXBfd29ya3M9
eWVzCmNsX2N2X2Z1bmNfbXByb3RlY3Rfd29ya3M9eWVzCmNsX2N2X2Z1bmNfcG9sbD15ZXMKY2xf
Y3ZfZnVuY19wb2xsX3JlbGlhYmxlPXllcwpjbF9jdl9mdW5jX3JhaXNlPXllcwpjbF9jdl9mdW5j
X3NlbGVjdF9yZWxpYWJsZT15ZXMKY2xfY3ZfZnVuY19zZXRmcHVjdz15ZXMKY2xfY3ZfZnVuY19z
aG1jdGxfYXR0YWNoYWJsZT1ubwpjbF9jdl9mdW5jX3NpZ25hbF9ibG9ja2VkPXllcwpjbF9jdl9m
dW5jX3NpZ25hbF9ibG9ja2VkX290aGVycz1ubwpjbF9jdl9mdW5jX3NpZ25hbF9yZWluc3RhbGw9
bm8KY2xfY3ZfZnVuY19zaWduYWxibG9ja3M9J1N5c3RlbVYgUE9TSVggQlNEJwpjbF9jdl9mdW5j
X3RjZ2V0YXR0cj15ZXMKY2xfY3ZfZnVuY192YWR2aXNlPW5vCmNsX2N2X2Z1bmNfdm09bm8KY2xf
Y3ZfZ251X21ha2U9eWVzCmNsX2N2X2hlYWRlcl9zdGRjPXllcwpjbF9jdl9oZWFkZXJfc3lzX3Nl
bGVjdF9oPXllcwpjbF9jdl9saWJfbnNsPW5vCmNsX2N2X2xpYl9zZXF1ZW50PW5vCmNsX2N2X2xp
Yl9zaWdzZWd2PXllcwpjbF9jdl9saWJfc29ja2V0PW5vCmNsX2N2X29mZnNldG9mPXllcwpjbF9j
dl9vc192YWxpZF9maWxlbmFtZV9jaGFyPScoKGNoID49IDEpICYmIChjaCAhPSA0NykpJwpjbF9j
dl9vc192YWxpZF9maWxlbmFtZV9jaGFyc2V0PTgtYml0CmNsX2N2X3BhdGhfaW5zdGFsbD0nL2Jp
bi9pbnN0YWxsIC1jJwpjbF9jdl9wcm9nX0xOPWxuCmNsX2N2X3Byb2dfTE5fUz0nbG4gLXMnCmNs
X2N2X3Byb2dfYXNfdW5kZXJzY29yZT1ubwpjbF9jdl9wcm9nX2NjX2NwbHVzcGx1cz1ubwpjbF9j
dl9wcm9nX2NjX2VtYT15ZXMKY2xfY3ZfcHJvZ19jY19nY2M9eWVzCmNsX2N2X3Byb2dfY2NfaW5k
ZW50ZWQ9eWVzCmNsX2N2X3Byb2dfY2Nfd29ya3M9eWVzCmNsX2N2X3Byb2dfY3A9J2NwIC1wJwpj
bF9jdl9wcm9nX2hsbj1obG4KY2xfY3ZfcHJvdG9fYWJvcnQ9J2V4dGVybiB2b2lkIGFib3J0ICh2
b2lkKTsnCmNsX2N2X3Byb3RvX2Fib3J0X3JldD12b2lkCmNsX2N2X3Byb3RvX2Fib3J0X3ZvbD0K
Y2xfY3ZfcHJvdG9fY2xvc2VkaXI9J2V4dGVybiBpbnQgY2xvc2VkaXIgKERJUiopOycKY2xfY3Zf
cHJvdG9fY2xvc2VkaXJfcmV0PWludApjbF9jdl9wcm90b19jb25uZWN0PSdleHRlcm4gaW50IGNv
bm5lY3QgKGludCwgY29uc3Qgc3RydWN0IHNvY2thZGRyICosIHNpemVfdCk7JwpjbF9jdl9wcm90
b19jb25uZWN0X2FyZzJhPWNvbnN0CmNsX2N2X3Byb3RvX2Nvbm5lY3RfYXJnMmI9J3N0cnVjdCBz
b2NrYWRkciAqJwpjbF9jdl9wcm90b19jb25uZWN0X2FyZzM9c2l6ZV90CmNsX2N2X3Byb3RvX2Zp
bGVuYW1lX2NvbXBsZXRpb25fZnVuY3Rpb249J2V4dGVybiBjaGFyKiBybF9maWxlbmFtZV9jb21w
bGV0aW9uX2Z1bmN0aW9uKGNvbnN0IGNoYXIqLCBpbnQpOycKY2xfY3ZfcHJvdG9fZ2V0Y3dkPSdl
eHRlcm4gY2hhciogZ2V0Y3dkIChjaGFyKiwgc2l6ZV90KTsnCmNsX2N2X3Byb3RvX2dldGN3ZF9h
cmcyPXNpemVfdApjbF9jdl9wcm90b19nZXRwYWdlc2l6ZT0nZXh0ZXJuIGludCBnZXRwYWdlc2l6
ZSAodm9pZCk7JwpjbF9jdl9wcm90b19nZXRwYWdlc2l6ZV9yZXQ9aW50CmNsX2N2X3Byb3RvX2dl
dHJsaW1pdD0nZXh0ZXJuIGludCBnZXRybGltaXQgKGVudW0gX19ybGltaXRfcmVzb3VyY2UsIHN0
cnVjdCBybGltaXQgKik7JwpjbF9jdl9wcm90b19nZXRybGltaXRfYXJnMT0nZW51bSBfX3JsaW1p
dF9yZXNvdXJjZScKY2xfY3ZfcHJvdG9fZ2V0cnVzYWdlPSdleHRlcm4gaW50IGdldHJ1c2FnZSAo
aW50LCBzdHJ1Y3QgcnVzYWdlICopOycKY2xfY3ZfcHJvdG9fZ2V0cnVzYWdlX2FyZzE9aW50CmNs
X2N2X3Byb3RvX2dldHRpbWVvZmRheT0nZXh0ZXJuIGludCBnZXR0aW1lb2ZkYXkgKHN0cnVjdCB0
aW1ldmFsICosIHN0cnVjdCB0aW1lem9uZSAqKTsnCmNsX2N2X3Byb3RvX2dldHRpbWVvZmRheV9h
cmcyPSdzdHJ1Y3QgdGltZXpvbmUgKicKY2xfY3ZfcHJvdG9fZ2V0dGltZW9mZGF5X2RvdHM9bm8K
Y2xfY3ZfcHJvdG9faW5ldF9hZGRyPSdleHRlcm4gdW5zaWduZWQgaW50IGluZXRfYWRkciAoY29u
c3QgY2hhciopOycKY2xfY3ZfcHJvdG9faW5ldF9hZGRyX2FyZzE9Y29uc3QKY2xfY3ZfcHJvdG9f
aW5ldF9hZGRyX3JldD0ndW5zaWduZWQgaW50JwpjbF9jdl9wcm90b19pb2N0bD0nZXh0ZXJuIGlu
dCBpb2N0bCAoaW50LCB1bnNpZ25lZCBsb25nLCAuLi4pOycKY2xfY3ZfcHJvdG9faW9jdGxfYXJn
Mj0ndW5zaWduZWQgbG9uZycKY2xfY3ZfcHJvdG9faW9jdGxfYXJncz0naW50LCB1bnNpZ25lZCBs
b25nLCAuLi4nCmNsX2N2X3Byb3RvX2lvY3RsX2RvdHM9eWVzCmNsX2N2X3Byb3RvX3BlcnJvcj15
ZXMKY2xfY3ZfcHJvdG9fcmVhZGxpbmVfY29uc3Q9Y29uc3QKY2xfY3ZfcHJvdG9fc2VsZWN0PSdl
eHRlcm4gaW50IHNlbGVjdCAoaW50LCBmZF9zZXQgKiwgZmRfc2V0ICosIGZkX3NldCAqLCBzdHJ1
Y3QgdGltZXZhbCAqKTsnCmNsX2N2X3Byb3RvX3NlbGVjdF9hcmcxPWludApjbF9jdl9wcm90b19z
ZWxlY3RfYXJnMj1mZF9zZXQKY2xfY3ZfcHJvdG9fc2VsZWN0X2FyZzU9CmNsX2N2X3Byb3RvX3Nl
dHJsaW1pdD0nZXh0ZXJuIGludCBzZXRybGltaXQgKGVudW0gX19ybGltaXRfcmVzb3VyY2UsIGNv
bnN0IHN0cnVjdCBybGltaXQgKik7JwpjbF9jdl9wcm90b19zZXRybGltaXRfYXJnMj1jb25zdApj
bF9jdl9wcm90b19zZXRzb2Nrb3B0PSdleHRlcm4gaW50IHNldHNvY2tvcHQgKGludCwgaW50LCBp
bnQsIGNvbnN0IHZvaWQqLCB1bnNpZ25lZCBpbnQpOycKY2xfY3ZfcHJvdG9fc2V0c29ja29wdF9h
cmdfdD0ndm9pZConCmNsX2N2X3Byb3RvX3NldHNvY2tvcHRfY29uc3Q9Y29uc3QKY2xfY3ZfcHJv
dG9fc2V0c29ja29wdF9vcHRsZW5fdD0ndW5zaWduZWQgaW50JwpjbF9jdl9wcm90b19zaWduYWxf
ZG90cz1ubwpjbF9jdl9wcm90b191bnNldGVudl9wb3NpeD0wCmNsX2N2X3Byb3RvX3Vuc2V0ZW52
X3JldD12b2lkCmNsX2N2X3Byb3RvX3dhaXRwaWQ9J2V4dGVybiBwaWRfdCB3YWl0cGlkIChwaWRf
dCwgaW50KiwgaW50KTsnCmNsX2N2X3Byb3RvX3dhaXRwaWRfYXJnMT1waWRfdApjbF9jdl9zb2Nr
ZXRfaXB2ND15ZXMKY2xfY3Zfc29ja2V0X2lwdjY9eWVzCmNsX2N2X3N0cnVjdF9zb2NrYWRkcl9z
dW5fbGVuPW5vCmNsX2N2X3N0cnVjdF91dHNuYW1lPXllcwpjbF9jdl9zdHJ1Y3Rfd2luc2l6ZT1u
bwpjbF9jdl9zdHJ1Y3Rfd2luc2l6ZV9pb2N0bD15ZXMKY2xfY3Zfc3lzX3NobV93b3Jrcz15ZXMK
Y2xfY3ZfdGVzdF9udD15ZXMKY2xfY3ZfdHlwZV9jYWRkcl90PXllcwpjbF9jdl90eXBlX2ZwdV9j
b250cm9sX3Q9eWVzCmNsX2N2X3R5cGVfc2lnbmFsPXZvaWQKY2xfY3ZfdHlwZV9zb2NrbGVuX3Q9
eWVzCmdsX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKZ3RfY3ZfY19sb25nX2RvdWJsZT15ZXMKZ3Rf
Y3ZfZnVuY19DRkxvY2FsZUNvcHlDdXJyZW50PW5vCmd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0Nv
cHlBcHBWYWx1ZT1ubwpndF9jdl9mdW5jX2dudWdldHRleHQyX2xpYmM9eWVzCmd0X2N2X2hlYWRl
cl9pbnR0eXBlc19oPXllcwpndF9jdl9oZWFkZXJfc3RkYm9vbF9oPXllcwpndF9jdl92YWxfTENf
TUVTU0FHRVM9eWVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBPdXRwdXQgdmFyaWFibGVz
LiAjIwojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwoKQUxMT0NBPScnCkFTX1VOREVSU0NPUkU9J2Zh
bHNlJwpDQz0nZ2NjJwpDQ19DUExVU1BMVVM9J2ZhbHNlJwpDQ19HQ0M9J3RydWUnCkNDX05FRURf
Q0NQQVVYPSdmYWxzZScKQ0NfTkVFRF9ERUVNQT0nZmFsc2UnCkNGTEFHUz0nLWcgLU8yJwpDT01Q
UkVTUz0nZ3ppcCcKQ1A9J2NwIC1wJwpDUFA9J2djYyAtRScKQ1BQRkxBR1M9JyAnCkRFRlM9Jy1E
SEFWRV9DT05GSUdfSCcKRFZJUERGPSdkdmlwZGYnCkVDSE9fQz0nJwpFQ0hPX049Jy1uJwpFQ0hP
X1Q9JycKRUdSRVA9J2dyZXAgLUUnCkVYRUVYVD0nJwpHQ0NfWF9OT05FPScteCBub25lJwpHTUFM
TE9DPScnCkdNU0dGTVQ9Jy91c3IvYmluL2dtc2dmbXQnCkdOVV9NQUtFPSd5ZXMnCkdST0ZGPSdn
cm9mZicKSEFWRV9MT05HXzY0QklUPScnCkhBVkVfTE9OR19MT05HXzY0QklUPScnCkhBVkVfWE1L
TUY9JycKSEFWRV9fQk9PTD0nJwpITE49J2hsbicKSU5DVEVSTUNBUD0nJwpJTlNUQUxMPScvYmlu
L2luc3RhbGwgLWMnCklOU1RBTExfREFUQT0nJChJTlNUQUxMKSAtbSA2NDQnCklOU1RBTExfUFJP
R1JBTT0nJChJTlNUQUxMKScKSU5TVEFMTF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCklOVExMSUJTPScn
CklOVExfTUFDT1NYX0xJQlM9JycKTERGTEFHUz0nJwpMSUJJQ09OVj0nJwpMSUJJTlRMPScnCkxJ
Qk9CSlM9JycKTElCUz0nL3Vzci9saWIvbGlicmVhZGxpbmUuc28gLWxuY3Vyc2VzIC1sZGwgJwpM
SUJTSUdTRUdWPScvdXNyL2xpYi9saWJzaWdzZWd2LnNvIC91c3IvbGliL2xpYmMuc28nCkxJQlRF
Uk1DQVA9JycKTE49J2xuJwpMTl9TPSdsbiAtcycKTFRMSUJJQ09OVj0nJwpMVExJQklOVEw9JycK
TFRMSUJPQkpTPScnCkxUTElCU0lHU0VHVj0nLUwvdXNyL2xpYiAtbHNpZ3NlZ3YgLUwvdXNyL2xp
YiAtbGMnCk1BS0U9J2dtYWtlJwpNS0lOU1RBTExESVJTPSckKHRvcF9idWlsZGRpcikvLi4vc3Jj
L2J1aWxkLWF1eC9ta2luc3RhbGxkaXJzJwpNU0dGTVQ9Jy91c3IvYmluL21zZ2ZtdCcKTVNHTUVS
R0U9Jy91c3IvYmluL21zZ21lcmdlJwpPQkpFWFQ9J28nClBBQ0tBR0U9J2NsaXNwJwpQQUNLQUdF
X0JVR1JFUE9SVD0naHR0cDovL2NsaXNwLmNvbnMub3JnLycKUEFDS0FHRV9OQU1FPSdHTlUgQ0xJ
U1AnClBBQ0tBR0VfU1RSSU5HPSdHTlUgQ0xJU1AgMi4zOCAoMjAwNi0wMS0yNCknClBBQ0tBR0Vf
VEFSTkFNRT0nY2xpc3AnClBBQ0tBR0VfVkVSU0lPTj0nMi4zOCAoMjAwNi0wMS0yNCknClBBVEhf
U0VQQVJBVE9SPSc6JwpQT1NVQj0ncG8nClJBTkxJQj0ncmFubGliJwpTRVRfTUFLRT0nJwpTSEVM
TD0nL2Jpbi9zaCcKU1REQk9PTF9IPScnClNURElOVF9IPScnClRFU1RfTlQ9J3llcycKVVNFX05M
Uz0neWVzJwpYR0VUVEVYVD0nL3Vzci9iaW4veGdldHRleHQnClhfSU5DTFVERVM9J25vJwpYX0xJ
QlM9Jy1sWDExJwphY19jdF9DQz0nZ2NjJwpiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L2JpbicKYnVp
bGQ9J2k2ODYtcGMtbGludXgtZ251JwpidWlsZF9hbGlhcz0nJwpidWlsZF9jcHU9J2k2ODYnCmJ1
aWxkX29zPSdsaW51eC1nbnUnCmJ1aWxkX3ZlbmRvcj0ncGMnCmRhdGFkaXI9JyR7cHJlZml4fS9z
aGFyZScKZXhlY19wcmVmaXg9JyR7cHJlZml4fScKaG9zdD0naTY4Ni1wYy1saW51eC1nbnUnCmhv
c3RfYWxpYXM9JycKaG9zdF9jcHU9J2k2ODYnCmhvc3Rfb3M9J2xpbnV4LWdudScKaG9zdF92ZW5k
b3I9J3BjJwppbmNsdWRlZGlyPScke3ByZWZpeH0vaW5jbHVkZScKaW5mb2Rpcj0nJHtwcmVmaXh9
L2luZm8nCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNfcHJl
Zml4fS9saWJleGVjJwpsb2NhbHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwptYW5kaXI9JyR7cHJl
Zml4fS9tYW4nCm9sZGluY2x1ZGVkaXI9Jy91c3IvaW5jbHVkZScKcHJlZml4PScvdXNyJwpwcm9n
cmFtX3RyYW5zZm9ybV9uYW1lPSdzLHgseCwnCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4n
CnNoYXJlZHN0YXRlZGlyPScke3ByZWZpeH0vY29tJwpzeXNjb25mZGlyPScke3ByZWZpeH0vZXRj
Jwp0YXJnZXRfYWxpYXM9JycKCiMjIC0tLS0tLS0tLS0tICMjCiMjIGNvbmZkZWZzLmguICMjCiMj
IC0tLS0tLS0tLS0tICMjCgojZGVmaW5lIEFCT1JUX1ZPTEFUSUxFIAojZGVmaW5lIENBRERSX1Qg
Y2FkZHJfdAojZGVmaW5lIENPREVfQUREUkVTU19SQU5HRSAweDA4MDAwMDAwVUwKI2RlZmluZSBD
T05ORUNUX0FERFJMRU5fVCBzaXplX3QKI2RlZmluZSBDT05ORUNUX0NPTlNUIGNvbnN0CiNkZWZp
bmUgQ09OTkVDVF9OQU1FX1Qgc3RydWN0IHNvY2thZGRyICoKI2RlZmluZSBESVJFTlQKI2RlZmlu
ZSBFTE9PUF9WQUxVRSBFTE9PUAojZGVmaW5lIEVOQUJMRV9OTFMgMQojZGVmaW5lIEdFVENXRF9T
SVpFX1Qgc2l6ZV90CiNkZWZpbmUgR0VUVElNRU9GREFZX1RaUF9UIHN0cnVjdCB0aW1lem9uZSAq
CiNkZWZpbmUgSEFWRV9BTExPQ0EgMQojZGVmaW5lIEhBVkVfQUxMT0NBX0ggMQojZGVmaW5lIEhB
VkVfQVJQQV9JTkVUX0ggMQojZGVmaW5lIEhBVkVfQ09OTkVDVCAxCiNkZWZpbmUgSEFWRV9EQ0dF
VFRFWFQgMQojZGVmaW5lIEhBVkVfREVDTF9FTlZJUk9OIDEKI2RlZmluZSBIQVZFX0RFQ0xfUkxf
QUxSRUFEWV9QUk9NUFRFRCAxCiNkZWZpbmUgSEFWRV9ERUNMX1JMX0dOVV9SRUFETElORV9QIDEK
I2RlZmluZSBIQVZFX0RFQ0xfUkxfUkVBRExJTkVfTkFNRSAxCiNkZWZpbmUgSEFWRV9ETENMT1NF
IDEKI2RlZmluZSBIQVZFX0RMRVJST1IgMQojZGVmaW5lIEhBVkVfRExGQ05fSCAxCiNkZWZpbmUg
SEFWRV9ETE9QRU4gMQojZGVmaW5lIEhBVkVfRExTWU0gMQojZGVmaW5lIEhBVkVfRkNITU9EIDEK
I2RlZmluZSBIQVZFX0ZJT05SRUFECiNkZWZpbmUgSEFWRV9GTE9DSyAxCiNkZWZpbmUgSEFWRV9G
T1JLIDEKI2RlZmluZSBIQVZFX0ZQVV9DT05UUk9MX1QKI2RlZmluZSBIQVZFX0ZTWU5DIDEKI2Rl
ZmluZSBIQVZFX0ZUSU1FIDEKI2RlZmluZSBIQVZFX0dFVENXRAojZGVmaW5lIEhBVkVfR0VURFRB
QkxFU0laRSAxCiNkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FCiNkZWZpbmUgSEFWRV9HRVRIT1NU
RU5UIDEKI2RlZmluZSBIQVZFX0dFVEhPU1ROQU1FIDEKI2RlZmluZSBIQVZFX0dFVFBBR0VTSVpF
CiNkZWZpbmUgSEFWRV9HRVRSTElNSVQgMQojZGVmaW5lIEhBVkVfR0VUUlVTQUdFCiNkZWZpbmUg
SEFWRV9HRVRTT0NLT1BUIDEKI2RlZmluZSBIQVZFX0dFVFRFWFQgMQojZGVmaW5lIEhBVkVfR0VU
VElNRU9GREFZIDEKI2RlZmluZSBIQVZFX0lDT05WIDEKI2RlZmluZSBIQVZFX0lORVRfQUREUiAx
CiNkZWZpbmUgSEFWRV9JTkVUX05UT1AgMQojZGVmaW5lIEhBVkVfSU5FVF9QVE9OIDEKI2RlZmlu
ZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCiNkZWZpbmUgSEFW
RV9JT0NUTCAxCiNkZWZpbmUgSEFWRV9JUFY0CiNkZWZpbmUgSEFWRV9JUFY2CiNkZWZpbmUgSEFW
RV9MQ19NRVNTQUdFUyAxCiNkZWZpbmUgSEFWRV9MT05HTE9ORwojZGVmaW5lIEhBVkVfTE9OR19E
T1VCTEUgMQojZGVmaW5lIEhBVkVfTE9OR19MT05HIDEKI2RlZmluZSBIQVZFX0xTVEFUCiNkZWZp
bmUgSEFWRV9NRU1PUllfSCAxCiNkZWZpbmUgSEFWRV9NRU1TRVQgMQojZGVmaW5lIEhBVkVfTU1B
UAojZGVmaW5lIEhBVkVfTU1BUF9BTk9OCiNkZWZpbmUgSEFWRV9NTUFQX0FOT05ZTU9VUwojZGVm
aW5lIEhBVkVfTU1BUF9ERVZaRVJPCiNkZWZpbmUgSEFWRV9NUFJPVEVDVCAxCiNkZWZpbmUgSEFW
RV9NU1lOQyAxCiNkZWZpbmUgSEFWRV9NVU5NQVAgMQojZGVmaW5lIEhBVkVfTkVUREJfSCAxCiNk
ZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0ggMQojZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1BfSCAxCiNk
ZWZpbmUgSEFWRV9OSUNFIDEKI2RlZmluZSBIQVZFX09GRlNFVE9GCiNkZWZpbmUgSEFWRV9QRVJS
T1JfREVDTAojZGVmaW5lIEhBVkVfUE9MTCAxCiNkZWZpbmUgSEFWRV9QVVRFTlYgMQojZGVmaW5l
IEhBVkVfUkFJU0UKI2RlZmluZSBIQVZFX1JFQURMSU5FCiNkZWZpbmUgSEFWRV9SRUFETElORV9S
RUFETElORV9IIDEKI2RlZmluZSBIQVZFX1JFQURMSU5LIDEKI2RlZmluZSBIQVZFX1JFQUxQQVRI
IDEKI2RlZmluZSBIQVZFX1JFTElBQkxFX0ZJT05SRUFECiNkZWZpbmUgSEFWRV9SRUxJQUJMRV9Q
T0xMCiNkZWZpbmUgSEFWRV9SRUxJQUJMRV9TRUxFQ1QKI2RlZmluZSBIQVZFX1JMX0ZJTEVOQU1F
X0NPTVBMRVRJT05fRlVOQ1RJT04gMQojZGVmaW5lIEhBVkVfU0NBTEFSX0ZTSUQgMQojZGVmaW5l
IEhBVkVfU0VMRUNUIDEKI2RlZmluZSBIQVZFX1NFVEVOViAxCiNkZWZpbmUgSEFWRV9TRVRGUFVD
VwojZGVmaW5lIEhBVkVfU0VUSVRJTUVSIDEKI2RlZmluZSBIQVZFX1NFVFBHSUQgMQojZGVmaW5l
IEhBVkVfU0VUUkxJTUlUIDEKI2RlZmluZSBIQVZFX1NFVFNJRCAxCiNkZWZpbmUgSEFWRV9TRVRT
T0NLT1BUIDEKI2RlZmluZSBIQVZFX1NHVFRZX0ggMQojZGVmaW5lIEhBVkVfU0hNCiNkZWZpbmUg
SEFWRV9TSFVURE9XTiAxCiNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQojZGVmaW5lIEhBVkVfU0lH
SU5URVJSVVBUIDEKI2RlZmluZSBIQVZFX1NJR1NFR1YgMQojZGVmaW5lIEhBVkVfU1REQk9PTF9I
IDEKI2RlZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmlu
ZSBIQVZFX1NURExJQl9IIDEKI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKI2RlZmluZSBIQVZFX1NU
UklOR1NfSCAxCiNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCiNkZWZpbmUgSEFWRV9TVFJVQ1RfU1RB
VF9TVF9CTEtTSVpFIDEKI2RlZmluZSBIQVZFX1NUUlVDVF9TVEFUX1NUX0JMT0NLUyAxCiNkZWZp
bmUgSEFWRV9TVFJVQ1RfU1RBVF9TVF9SREVWIDEKI2RlZmluZSBIQVZFX1NZU0NPTkYgMQojZGVm
aW5lIEhBVkVfU1lTX0ZJTEVfSCAxCiNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKI2RlZmluZSBI
QVZFX1NZU19GSUxFX0ggMQojZGVmaW5lIEhBVkVfU1lTX0lQQ19IIDEKI2RlZmluZSBIQVZFX1NZ
U19SRVNPVVJDRV9IIDEKI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSAojZGVmaW5lIEhBVkVfU1lT
X1NITV9IIDEKI2RlZmluZSBIQVZFX1NZU19TVEFURlNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU1RB
VFZGU19IIDEKI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NUQVRf
SCAxCiNkZWZpbmUgSEFWRV9TWVNfU1lTTUFDUk9TX0ggMQojZGVmaW5lIEhBVkVfU1lTX1RJTUVT
X0ggMQojZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQojZGVmaW5lIEhBVkVfU1lTX1VOX0ggMQoj
ZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSAojZGVmaW5lIEhBVkVfVENHRVRBVFRSCiNkZWZpbmUg
SEFWRV9UQ1NBRkxVU0gKI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCiNkZWZpbmUgSEFWRV9URVJN
SU9fSCAxCiNkZWZpbmUgSEFWRV9VQUxBUk0gMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVf
VU5TRVRFTlYgMQojZGVmaW5lIEhBVkVfVVNMRUVQIDEKI2RlZmluZSBIQVZFX1ZGT1JLIDEKI2Rl
ZmluZSBIQVZFX1dPUktJTkdfRk9SSyAxCiNkZWZpbmUgSEFWRV9XT1JLSU5HX01QUk9URUNUCiNk
ZWZpbmUgSEFWRV9XT1JLSU5HX1ZGT1JLIDEKI2RlZmluZSBIQVZFX1gxMQojZGVmaW5lIEhBVkVf
X0pNUAojZGVmaW5lIElDT05WX0NPTlNUIAojZGVmaW5lIElORVRfQUREUl9DT05TVCBjb25zdAoj
ZGVmaW5lIElORVRfQUREUl9TVUZGSVgKI2RlZmluZSBJT0NUTF9ET1RTCiNkZWZpbmUgSU9DVExf
UkVRVUVTVF9UIHVuc2lnbmVkIGxvbmcKI2RlZmluZSBNQUxMT0NfQUREUkVTU19SQU5HRSAweDA4
MDAwMDAwVUwKI2RlZmluZSBORUVEX1NZU19JT0NUTF9ICiNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
UlQgImh0dHA6Ly9jbGlzcC5jb25zLm9yZy8iCiNkZWZpbmUgUEFDS0FHRV9OQU1FICJHTlUgQ0xJ
U1AiCiNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIkdOVSBDTElTUCAyLjM4ICgyMDA2LTAxLTI0KSIK
I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImNsaXNwIgojZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Mi4zOCAoMjAwNi0wMS0yNCkiCiNkZWZpbmUgUElEX1QgcGlkX3QKI2RlZmluZSBSRUFETElORV9D
T05TVCBjb25zdAojZGVmaW5lIFJFQURMSU5FX0ZJTEVfQ09NUExFVEUgcmxfZmlsZW5hbWVfY29t
cGxldGlvbl9mdW5jdGlvbgojZGVmaW5lIFJFVEFCT1JUVFlQRSB2b2lkCiNkZWZpbmUgUkVUQ0xP
U0VESVJUWVBFIGludAojZGVmaW5lIFJFVEdFVFBBR0VTSVpFVFlQRSBpbnQKI2RlZmluZSBSRVRT
SUdUWVBFIHZvaWQKI2RlZmluZSBSRVRfSU5FVF9BRERSX1RZUEUgdW5zaWduZWQgaW50CiNkZWZp
bmUgUkxJTUlUX1JFU09VUkNFX1QgZW51bSBfX3JsaW1pdF9yZXNvdXJjZQojZGVmaW5lIFJVU0FH
RV9XSE9fVCBpbnQKI2RlZmluZSBTRUxFQ1RfQ09OU1QgCiNkZWZpbmUgU0VMRUNUX1NFVF9UIGZk
X3NldAojZGVmaW5lIFNFTEVDVF9XSURUSF9UIGludAojZGVmaW5lIFNFVFJMSU1JVF9DT05TVCBj
b25zdAojZGVmaW5lIFNFVFNPQ0tPUFRfQVJHX1Qgdm9pZCoKI2RlZmluZSBTRVRTT0NLT1BUX0NP
TlNUIGNvbnN0CiNkZWZpbmUgU0VUU09DS09QVF9PUFRMRU5fVCB1bnNpZ25lZCBpbnQKI2RlZmlu
ZSBTSExJQl9BRERSRVNTX1JBTkdFIDB4NEQwMDAwMDBVTAojZGVmaW5lIFNJR05BTEJMT0NLX0JT
RAojZGVmaW5lIFNJR05BTEJMT0NLX1BPU0lYCiNkZWZpbmUgU0lHTkFMQkxPQ0tfU1lTVgojZGVm
aW5lIFNJR05BTF9ORUVEX1VOQkxPQ0sKI2RlZmluZSBTSVpFT0ZfREVWX1QgOAojZGVmaW5lIFNJ
WkVPRl9GU0JMS0NOVF9UIDgKI2RlZmluZSBTSVpFT0ZfRlNGSUxDTlRfVCA4CiNkZWZpbmUgU0la
RU9GX0lOT19UIDgKI2RlZmluZSBTSVpFT0ZfT0ZGX1QgOAojZGVmaW5lIFNJWkVPRl9STElNX1Qg
OAojZGVmaW5lIFNJWkVPRl9TVFJVQ1RfVElNRVZBTCA4CiNkZWZpbmUgU09DS0xFTl9UIHNvY2ts
ZW5fdAojZGVmaW5lIFNUQUNLX0FERFJFU1NfUkFOR0UgMHhCRjAwMDAwMFVMCiNkZWZpbmUgU1RE
Q19IRUFERVJTIDEKI2RlZmluZSBTVERDX0hFQURFUlMgMQojZGVmaW5lIFRJTUVfV0lUSF9TWVNf
VElNRSAxCiNkZWZpbmUgVU5TRVRFTlZfUE9TSVggMAojZGVmaW5lIFZBTElEX0ZJTEVOQU1FX0NI
QVIgKChjaCA+PSAxKSAmJiAoY2ggIT0gNDcpKQojZGVmaW5lIFdJTlNJWkVfTkVFRF9TWVNfSU9D
VExfSAojZGVmaW5lIF9GSUxFX09GRlNFVF9CSVRTIDY0CiNkZWZpbmUgX0dOVV9TT1VSQ0UgMQoj
ZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCiNkZWZpbmUgX19FWFRFTlNJT05TX18g
MQojZGVmaW5lIF9faTM4Nl9fIDEKI2RlZmluZSByZXR1cm5fdm9pZCByZXR1cm4KI2VuZGlmCiNp
Zm5kZWYgX19pMzg2X18KCmNvbmZpZ3VyZTogZXhpdCAwCg==
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>83724</attachid>
            <date>2006-04-02 09:43 0000</date>
            <desc>Patch against clisp 2.38 ebuild</desc>
            <filename>clisp-ebuild.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGNsaXNwLTIuMzguZWJ1aWxkLm9yaWcJMjAwNi0wNC0wMiAxODozODoyOS4wMDAwMDAwMDAg
KzAyMDAKKysrIGNsaXNwLTIuMzguZWJ1aWxkCTIwMDYtMDQtMDIgMTg6Mzk6NDMuMDAwMDAwMDAw
ICswMjAwCkBAIC0yNCw2ICsyNCw3IEBACiAJcGNyZT8gKCBkZXYtbGlicy9saWJwY3JlICkKIAl6
bGliPyAoIHN5cy1saWJzL3psaWIgKSIKIERFUEVORD0iJHtSREVQRU5EfQorCVg/ICggeDExLW1p
c2MvaW1ha2UgKSAKIAlYPyAoIHx8ICggeDExLXByb3RvL3hleHRwcm90byB2aXJ0dWFsL3gxMSAp
ICkiCiAKIFBST1ZJREU9InZpcnR1YWwvY29tbW9ubGlzcCIK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83725</attachid>
            <date>2006-04-02 09:50 0000</date>
            <desc>Patch against clisp ebuild file (new revision)</desc>
            <filename>clisp-ebuild.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGNsaXNwLTIuMzguZWJ1aWxkLm9yaWcJMjAwNi0wNC0wMiAxODozODoyOS4wMDAwMDAwMDAg
KzAyMDAKKysrIGNsaXNwLTIuMzguZWJ1aWxkCTIwMDYtMDQtMDIgMTg6NDg6MDMuMDAwMDAwMDAw
ICswMjAwCkBAIC0yNCw3ICsyNCw3IEBACiAJcGNyZT8gKCBkZXYtbGlicy9saWJwY3JlICkKIAl6
bGliPyAoIHN5cy1saWJzL3psaWIgKSIKIERFUEVORD0iJHtSREVQRU5EfQotCVg/ICggfHwgKCB4
MTEtcHJvdG8veGV4dHByb3RvIHZpcnR1YWwveDExICkgKSIKKwlYPyAoIHgxMS1taXNjL2ltYWtl
ICggfHwgKCB4MTEtcHJvdG8veGV4dHByb3RvIHZpcnR1YWwveDExICkgKSApIgogCiBQUk9WSURF
PSJ2aXJ0dWFsL2NvbW1vbmxpc3AiCiAK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>83726</attachid>
            <date>2006-04-02 09:51 0000</date>
            <desc>Complete working clisp-2.38.ebuild</desc>
            <filename>clisp-2.38.ebuild</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDb3B5cmlnaHQgMTk5OS0yMDA2IEdlbnRvbyBGb3VuZGF0aW9uCiMgRGlzdHJpYnV0ZWQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MgojICRIZWFk
ZXI6IC92YXIvY3Zzcm9vdC9nZW50b28teDg2L2Rldi1saXNwL2NsaXNwL2NsaXNwLTIuMzguZWJ1
aWxkLHYgMS4zIDIwMDYvMDEvMjggMTA6NDE6MzkgZGVydG9iaTEyMyBFeHAgJAoKaW5oZXJpdCBm
bGFnLW8tbWF0aWMgY29tbW9uLWxpc3AtY29tbW9uLTIgZXV0aWxzIHRvb2xjaGFpbi1mdW5jcwoK
REVTQ1JJUFRJT049IkEgcG9ydGFibGUsIGJ5dGVjb2RlLWNvbXBpbGVkIGltcGxlbWVudGF0aW9u
IG9mIENvbW1vbiBMaXNwIgpIT01FUEFHRT0iaHR0cDovL2NsaXNwLnNvdXJjZWZvcmdlLm5ldC8i
ClNSQ19VUkk9Im1pcnJvcjovL3NvdXJjZWZvcmdlL2NsaXNwLyR7UH0udGFyLmJ6MiIKCkxJQ0VO
U0U9IkdQTC0yIgpTTE9UPSIyIgpLRVlXT1JEUz0ifmFtZDY0IHBwYyB+cHBjLW1hY29zIC1zcGFy
YyB4ODYiCklVU0U9IlggZmFzdGNnaSBwY3JlIHBvc3RncmVzIHJlYWRsaW5lIHpsaWIiCgpSREVQ
RU5EPSJkZXYtbGlicy9saWJzaWdzZWd2Cgk+PWRldi1saXNwL2NvbW1vbi1saXNwLWNvbnRyb2xs
ZXItNC4yNwoJc3lzLWRldmVsL2dldHRleHQKCXZpcnR1YWwvdGV0ZXgKCWZhc3RjZ2k/ICggZGV2
LWxpYnMvZmNnaSApCglwb3N0Z3Jlcz8gKCA+PWRldi1kYi9wb3N0Z3Jlc3FsLTguMCApCglYPyAo
IHx8ICggeDExLWxpYnMvbGliWHBtIHZpcnR1YWwveDExICkgKQoJcmVhZGxpbmU/ICggc3lzLWxp
YnMvcmVhZGxpbmUgKQoJcGNyZT8gKCBkZXYtbGlicy9saWJwY3JlICkKCXpsaWI/ICggc3lzLWxp
YnMvemxpYiApIgpERVBFTkQ9IiR7UkRFUEVORH0KCVg/ICggeDExLW1pc2MvaW1ha2UgKCB8fCAo
IHgxMS1wcm90by94ZXh0cHJvdG8gdmlydHVhbC94MTEgKSApICkiCgpQUk9WSURFPSJ2aXJ0dWFs
L2NvbW1vbmxpc3AiCgpzcmNfY29tcGlsZSgpIHsKCSMgTGV0IENMSVNQIHVzZSBpdHMgb3duIHNl
dCBvZiBvcHRpbWl6YXRpb25zCgl1bnNldCBDRkxBR1MgQ1hYRkxBR1MKCUNDPSIkKHRjLWdldEND
KSIKCWxvY2FsIG15Y29uZj0iLS13aXRoLWR5bmFtaWMtZmZpCgkJLS13aXRoLW1vZHVsZT13aWxk
Y2FyZAoJCS0td2l0aC1tb2R1bGU9cmF3c29jayIKCXVzZSBwcGMtbWFjb3MgfHwgbXljb25mPSIk
e215Y29uZn0gLS13aXRoLW1vZHVsZT1iaW5kaW5ncy9nbGliYyIKCXVzZSByZWFkbGluZSB8fCBt
eWNvbmY9IiR7bXljb25mfSAtLXdpdGgtbm9yZWFkbGluZSIKCXVzZSBYICYmIG15Y29uZj0iJHtt
eWNvbmZ9IC0td2l0aC1tb2R1bGU9Y2x4L25ldy1jbHgiCglpZiB1c2UgcG9zdGdyZXM7IHRoZW4K
CQlteWNvbmY9IiR7bXljb25mfSAtLXdpdGgtbW9kdWxlPXBvc3RncmVzcWwiCgkJQ0M9IiR7Q0N9
IC1JICQocGdfY29uZmlnIC0taW5jbHVkZWRpcikiCglmaQoJdXNlIGZhc3RjZ2kgJiYgbXljb25m
PSIke215Y29uZn0gLS13aXRoLW1vZHVsZT1mYXN0Y2dpIgoJdXNlIHBjcmUgJiYgbXljb25mPSIk
e215Y29uZn0gLS13aXRoLW1vZHVsZT1wY3JlIgoJdXNlIHpsaWIgJiYgbXljb25mPSIke215Y29u
Zn0gLS13aXRoLW1vZHVsZT16bGliIgoJZWluZm8gIkNvbmZpZ3VyaW5nIHdpdGggJHtteWNvbmZ9
IgoJLi9jb25maWd1cmUgLS1wcmVmaXg9L3VzciAke215Y29uZn0gYnVpbGQgfHwgZGllICIuL2Nv
bmZpZ3VyZSBmYWlsZWQiCgljZCBidWlsZAoJLi9tYWtlbWFrZSAke215Y29uZn0gPk1ha2VmaWxl
CgllbWFrZSAtajEgY29uZmlnLmxpc3AKCXNlZCAtaSAncywidmkiLCJuYW5vIixnJyBjb25maWcu
bGlzcAoJc2VkIC1pICdzLGh0dHA6Ly93d3cubGlzcC5vcmcvSHlwZXJTcGVjLyxodHRwOi8vd3d3
Lmxpc3B3b3Jrcy5jb20vcmVmZXJlbmNlL0h5cGVyU3BlYy8sZycgY29uZmlnLmxpc3AKCWVtYWtl
IC1qMSB8fCBkaWUKfQoKc3JjX2luc3RhbGwoKSB7CglwdXNoZCBidWlsZAoJbWFrZSBERVNURElS
PSR7RH0gcHJlZml4PS91c3IgaW5zdGFsbC1iaW4gfHwgZGllCglkb21hbiBjbGlzcC4xCglkb2Rv
YyBTVU1NQVJZIFJFQURNRSogTkVXUyBNQUdJQy5hZGQgR05VLUdQTCBDT1BZUklHSFQgXAoJCUFO
Tk9VTkNFIGNsaXNwLmR2aSBjbGlzcC5odG1sCglybSAtZiAke0R9L3Vzci9saWIvY2xpc3AvYmFz
ZS8qCgkoY2QgJHtEfS91c3IvbGliL2NsaXNwL2Jhc2UgJiYgbG4gLXMgLi4vZnVsbC8qIC4pCglj
aG1vZCBhK3ggJHtEfS91c3IvbGliL2NsaXNwL2NsaXNwLWxpbmsKCXBvcGQKCSMgaW5zdGFsbCBj
b21tb24tbGlzcC1jb250cm9sbGVyIHByb2ZpbGUKCWV4ZWludG8gL3Vzci9saWIvY29tbW9uLWxp
c3AvYmluCglkb2V4ZSAke0ZJTEVTRElSfS8ke1BWfS9jbGlzcC5zaAoJaW5zaW50byAvdXNyL2xp
Yi9jbGlzcAoJZG9pbnMgJHtGSUxFU0RJUn0vJHtQVn0vaW5zdGFsbC1jbGMubGlzcAoJZG9kb2Mg
JHtGSUxFU0RJUn0vJHtQVn0vUkVBRE1FLkdlbnRvbwoJa2VlcGRpciAvdXNyL2xpYi9jb21tb24t
bGlzcC9jbGlzcAoKCWRvaHRtbCBkb2MvaW1wbm90ZXMue2NzcyxodG1sfQoJZG9odG1sIGJ1aWxk
L2NsaXNwLmh0bWwKCWRvaHRtbCBkb2MvY2xpc3AucG5nCglkb2RvYyBidWlsZC9jbGlzcC57cHMs
cGRmfQoJZG9kb2MgZG9jL3tlZGl0b3JzLENMT1MtZ3VpZGUsTElTUC10dXRvcmlhbH0udHh0Cn0K
CnBrZ19wcmVpbnN0KCkgewoJbG9jYWwgY2xpc3BfZGlyPS91c3IvbGliL2NsaXNwCglsb2NhbCBv
bGRfbWVtPSRjbGlzcF9kaXIvZnVsbC9saXNwaW5pdC5tZW0KCWxvY2FsIG5ld19tZW09JGNsaXNw
X2Rpci9mdWxsL2xpc3Bpbml0LW5ldy5tZW0KCWxvY2FsIGNsZWFuX21lbT0kY2xpc3BfZGlyL2Z1
bGwvbGlzcGluaXQtY2xlYW4ubWVtCglsb2NhbCBsaXNwX3J1bj0kY2xpc3BfZGlyL2Z1bGwvbGlz
cC5ydW4KCXJtIC1mICRvbGRfbWVtICRuZXdfbWVtICRjbGVhbl9tZW0gJGxpc3BfcnVuCn0KCnBr
Z19wb3N0aW5zdCgpIHsKCXN0YW5kYXJkLWltcGwtcG9zdGluc3QgY2xpc3AKfQoKcGtnX3Bvc3Ry
bSgpIHsKCXN0YW5kYXJkLWltcGwtcG9zdHJtIGNsaXNwIC91c3IvYmluL2NsaXNwCn0KCnBrZ19w
b3N0cm0oKSB7CglpZiBbICEgLXggL3Vzci9iaW4vY2xpc3AgXTsgdGhlbgoJCXJtIC1yZiAvdXNy
L2xpYi9jbGlzcC8gfHwgZGllCglmaQp9Cg==
</data>        

          </attachment>
    </bug>

</bugzilla>