<?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>40972</bug_id>
          
          <creation_ts>2004-02-09 07:20 0000</creation_ts>
          <short_desc>DevIL-1.6.6 ebuild doesn&apos;t honour USE flags</short_desc>
          <delta_ts>2004-03-18 18:21:04 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Ebuilds</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>s.cloherty@ieee.org</reporter>
          <assigned_to>graphics@gentoo.org</assigned_to>
          <cc>clay@bitshifters.org</cc>
    
    <cc>nouseforaname@home.se</cc>
    
    <cc>vapier@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>s.cloherty@ieee.org</who>
            <bug_when>2004-02-09 07:20:51 0000</bug_when>
            <thetext>emerging DevIL (media-libs/devil) version 1.6.6 fails to honour the supplied USE flags. For example;

USE=&quot;opengl&quot; emerge devil

Fails to build support for OpenGL.

Further investigation reveals that --enable-opengl is indeed passed to configure, and the problem lies within the DevIL configure.in. 

configure.in contains (for opengl support);

AC_ARG_ENABLE(opengl,
[  --disable-opengl        Doesn&apos;t compile opengl support],
use_opengl=&quot;no&quot;, use_opengl=&quot;yes&quot;)

which results in use_opengl being set to &quot;no&quot; for both --disable-opengl (which is correct) _and_ --enable-opengl (which is clearly incorrect). This is true for all the suppled --disable-xyz macros.

As a work around, reverting back to;

src_compile() {
        local myconf
        use X &amp;&amp; myconf=&quot;${myconf} --with-x&quot;
        use gif || myconf=&quot;${myconf} --disable-gif&quot;
        use png || myconf=&quot;${myconf} --disable-png&quot;
        use sdl || myconf=&quot;${myconf} --disable-sdl&quot;
        use jpeg || myconf=&quot;${myconf} --disable-jpeg&quot;
        use tiff || myconf=&quot;${myconf} --disable-tiff&quot;
        use opengl || myconf=&quot;${myconf} --disable-opengl&quot;
 
        elibtoolize
        econf \
                ${myconf} \
                --disable-directx \
                --disable-win32 || die &quot;./configure failed&quot;
                                                                                
        make || die
}

as in previous ebuilds produces the expected result.


Reproducible: Always
Steps to Reproduce:
1.USE=&quot;opengl&quot; emerge devil
2.
3.

Actual Results:  
No support for OpenGL.

Expected Results:  
OpenGL support should have been included.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>s.cloherty@ieee.org</who>
            <bug_when>2004-02-09 07:27:45 0000</bug_when>
            <thetext>A better solution might be to patch configure.in and regenerate configure. And then propagate the fix to upstream maintainers.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>s.cloherty@ieee.org</who>
            <bug_when>2004-02-09 07:31:52 0000</bug_when>
            <thetext>Created an attachment (id=25258)
Patch to configure.in and a new configure

Here is one possible form that such a patch might take, not necessarily the
most elegant...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>s.cloherty@ieee.org</who>
            <bug_when>2004-02-09 07:34:34 0000</bug_when>
            <thetext>Created an attachment (id=25259)
A modified ebuild to make use of the autoconf patch
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>nouseforaname@home.se</who>
            <bug_when>2004-02-09 15:06:26 0000</bug_when>
            <thetext>Because of this bug almost no apps using dev-games/ogre work, but theese patches fixes this.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragor@shaw.ca</who>
            <bug_when>2004-02-18 19:10:43 0000</bug_when>
            <thetext>This patch works for me as well.  I can now run my ogre apps again.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gralves@gmail.com</who>
            <bug_when>2004-03-17 12:32:29 0000</bug_when>
            <thetext>This patch works perfectly for me. Why wasn&apos;t it commited yet?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>clay@bitshifters.org</who>
            <bug_when>2004-03-17 22:55:33 0000</bug_when>
            <thetext>Ok, I used the above patch/ebuild, and the ogre demo programs RUN fine, but they refuse to compile.  On my machine, this is the problem:

Create a simple &quot;hello world!&quot; application named hello.c
$ gcc hello.c -o hello -lIL
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../libIL.so: undefined reference to `_vsnprintf&apos;
collect2: ld returned 1 exit status

This is the same thing that happened to me when I tried building DevIL from source.  Does anyone else have this problem, and if so has anyone found a fix for it?

My USE statement includes the following relevant flags:
USE=&quot;X gif png sdl jpeg tiff opengl&quot;  (plus other stuffs)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>clay@bitshifters.org</who>
            <bug_when>2004-03-18 07:54:21 0000</bug_when>
            <thetext>Ok, I pinned down the bug.  These two lines are the culprit:
./src-IL/src/il_tiff.c:171:     _vsnprintf(buff, 1024, fmt, ap);
./src-IL/src/il_tiff.c:177:     _vsnprintf(buff, 1024, fmt, ap);

If anyone is familiar with the _vsnprintf statement, then patching these lines should fix it.

Steps to reproduce the bug:
1) $ USE=&quot;X gif png sdl jpeg tiff opengl&quot; sudo emerge devil
[Make sure this is 1.6.6-r1.]
2) After a successful install, create a simple c application (hello world suffices).
3) $ gcc hello.c -o hello -lIL
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/../../../libIL.so: undefined reference to `_vsnprintf&apos;
collect2: ld returned 1 exit status

There are a few workarounds.  If you simply disable the tiff USE flag this doesn&apos;t happen.  If someone knows what the _vsnprintf does, you could simply patch it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-03-18 18:21:04 0000</bug_when>
            <thetext>fixed in cvs (including the vnsprint junk)

thanks for the patch :)</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25258</attachid>
            <date>2004-02-09 07:31 0000</date>
            <desc>Patch to configure.in and a new configure</desc>
            <filename>devil-1.6.6-autoconf.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXIgRGV2SUwub3JpZy9jb25maWd1cmUgRGV2SUwvY29uZmlndXJlCi0tLSBEZXZJTC5v
cmlnL2NvbmZpZ3VyZQkyMDAzLTA4LTEyIDEzOjU5OjA0LjAwMDAwMDAwMCArMTAwMAorKysgRGV2
SUwvY29uZmlndXJlCTIwMDQtMDItMTAgMDE6NTY6MDYuMDAwMDAwMDAwICsxMTAwCkBAIC0xLDEy
ICsxLDI0NiBAQAogIyEgL2Jpbi9zaAotIyBGcm9tIGNvbmZpZ3VyZS5pbiBSZXZpc2lvbjogMS4x
MyAuCisjIEZyb20gY29uZmlndXJlLmluIFJldmlzaW9uOiAxLjI3IC4KICMgR3Vlc3MgdmFsdWVz
IGZvciBzeXN0ZW0tZGVwZW5kZW50IHZhcmlhYmxlcyBhbmQgY3JlYXRlIE1ha2VmaWxlcy4KLSMg
R2VuZXJhdGVkIGJ5IEF1dG9jb25mIDIuNTIuCisjIEdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYg
Mi41OC4KICMKLSMgQ29weXJpZ2h0IDE5OTIsIDE5OTMsIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTgs
IDE5OTksIDIwMDAsIDIwMDEKLSMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIENv
cHlyaWdodCAoQykgMjAwMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KICMgVGhpcyBj
b25maWd1cmUgc2NyaXB0IGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24KICMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSwgZGlzdHJpYnV0ZSBh
bmQgbW9kaWZ5IGl0LgorIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBNNHNoIEluaXRp
YWxpemF0aW9uLiAgIyMKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworCisjIEJlIEJvdXJu
ZSBjb21wYXRpYmxlCitpZiB0ZXN0IC1uICIke1pTSF9WRVJTSU9OK3NldH0iICYmIChlbXVsYXRl
IHNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgZW11bGF0ZSBzaAorICBOVUxMQ01EPToKKyAg
IyBac2ggMy54IGFuZCA0LnggcGVyZm9ybXMgd29yZCBzcGxpdHRpbmcgb24gJHsxKyIkQCJ9LCB3
aGljaAorICAjIGlzIGNvbnRyYXJ5IHRvIG91ciB1c2FnZS4gIERpc2FibGUgdGhpcyBmZWF0dXJl
LgorICBhbGlhcyAtZyAnJHsxKyIkQCJ9Jz0nIiRAIicKK2VsaWYgdGVzdCAtbiAiJHtCQVNIX1ZF
UlNJT04rc2V0fSIgJiYgKHNldCAtbyBwb3NpeCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgIHNl
dCAtbyBwb3NpeAorZmkKK0RVQUxDQVNFPTE7IGV4cG9ydCBEVUFMQ0FTRSAjIGZvciBNS1Mgc2gK
KworIyBTdXBwb3J0IHVuc2V0IHdoZW4gcG9zc2libGUuCitpZiAoIChNQUlMPTYwOyB1bnNldCBN
QUlMKSB8fCBleGl0KSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgYXNfdW5zZXQ9dW5zZXQKK2Vs
c2UKKyAgYXNfdW5zZXQ9ZmFsc2UKK2ZpCisKKworIyBXb3JrIGFyb3VuZCBidWdzIGluIHByZS0z
LjAgVVdJTiBrc2guCiskYXNfdW5zZXQgRU5WIE1BSUwgTUFJTFBBVEgKK1BTMT0nJCAnCitQUzI9
Jz4gJworUFM0PScrICcKKworIyBOTFMgbnVpc2FuY2VzLgorZm9yIGFzX3ZhciBpbiBcCisgIExB
TkcgTEFOR1VBR0UgTENfQUREUkVTUyBMQ19BTEwgTENfQ09MTEFURSBMQ19DVFlQRSBMQ19JREVO
VElGSUNBVElPTiBcCisgIExDX01FQVNVUkVNRU5UIExDX01FU1NBR0VTIExDX01PTkVUQVJZIExD
X05BTUUgTENfTlVNRVJJQyBMQ19QQVBFUiBcCisgIExDX1RFTEVQSE9ORSBMQ19USU1FCitkbwor
ICBpZiAoc2V0ICt4OyB0ZXN0IC16ICJgKGV2YWwgJGFzX3Zhcj1DOyBleHBvcnQgJGFzX3Zhcikg
Mj4mMWAiKTsgdGhlbgorICAgIGV2YWwgJGFzX3Zhcj1DOyBleHBvcnQgJGFzX3ZhcgorICBlbHNl
CisgICAgJGFzX3Vuc2V0ICRhc192YXIKKyAgZmkKK2RvbmUKKworIyBSZXF1aXJlZCB0byB1c2Ug
YmFzZW5hbWUuCitpZiBleHByIGEgOiAnXChhXCknID4vZGV2L251bGwgMj4mMTsgdGhlbgorICBh
c19leHByPWV4cHIKK2Vsc2UKKyAgYXNfZXhwcj1mYWxzZQorZmkKKworaWYgKGJhc2VuYW1lIC8p
ID4vZGV2L251bGwgMj4mMSAmJiB0ZXN0ICJYYGJhc2VuYW1lIC8gMj4mMWAiID0gIlgvIjsgdGhl
bgorICBhc19iYXNlbmFtZT1iYXNlbmFtZQorZWxzZQorICBhc19iYXNlbmFtZT1mYWxzZQorZmkK
KworCisjIE5hbWUgb2YgdGhlIGV4ZWN1dGFibGUuCithc19tZT1gJGFzX2Jhc2VuYW1lICIkMCIg
fHwKKyRhc19leHByIFgvIiQwIiA6ICcuKi9cKFteL11bXi9dKlwpLyokJyBcfCBcCisJIFgiJDAi
IDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJDAiIDogJ1hcKC9cKSQnIFx8IFwKKwkgLiAgICAgOiAn
XCguXCknIDI+L2Rldi9udWxsIHx8CitlY2hvIFgvIiQwIiB8CisgICAgc2VkICcvXi4qXC9cKFte
L11bXi9dKlwpXC8qJC97IHMvL1wxLzsgcTsgfQorICAJICAvXlhcL1woXC9cL1wpJC97IHMvL1wx
LzsgcTsgfQorICAJICAvXlhcL1woXC9cKS4qL3sgcy8vXDEvOyBxOyB9CisgIAkgIHMvLiovLi87
IHEnYAorCisKKyMgUEFUSCBuZWVkcyBDUiwgYW5kIExJTkVOTyBuZWVkcyBDUiBhbmQgUEFUSC4K
KyMgQXZvaWQgZGVwZW5kaW5nIHVwb24gQ2hhcmFjdGVyIFJhbmdlcy4KK2FzX2NyX2xldHRlcnM9
J2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6JworYXNfY3JfTEVUVEVSUz0nQUJDREVGR0hJSktM
TU5PUFFSU1RVVldYWVonCithc19jcl9MZXR0ZXJzPSRhc19jcl9sZXR0ZXJzJGFzX2NyX0xFVFRF
UlMKK2FzX2NyX2RpZ2l0cz0nMDEyMzQ1Njc4OScKK2FzX2NyX2FsbnVtPSRhc19jcl9MZXR0ZXJz
JGFzX2NyX2RpZ2l0cworCisjIFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KK2lmIHRlc3QgIiR7
UEFUSF9TRVBBUkFUT1Irc2V0fSIgIT0gc2V0OyB0aGVuCisgIGVjaG8gIiMhIC9iaW4vc2giID5j
b25mJCQuc2gKKyAgZWNobyAgImV4aXQgMCIgICA+PmNvbmYkJC5zaAorICBjaG1vZCAreCBjb25m
JCQuc2gKKyAgaWYgKFBBVEg9Ii9ub25leGlzdGVudDsuIjsgY29uZiQkLnNoKSA+L2Rldi9udWxs
IDI+JjE7IHRoZW4KKyAgICBQQVRIX1NFUEFSQVRPUj0nOycKKyAgZWxzZQorICAgIFBBVEhfU0VQ
QVJBVE9SPToKKyAgZmkKKyAgcm0gLWYgY29uZiQkLnNoCitmaQorCisKKyAgYXNfbGluZW5vXzE9
JExJTkVOTworICBhc19saW5lbm9fMj0kTElORU5PCisgIGFzX2xpbmVub18zPWAoZXhwciAkYXNf
bGluZW5vXzEgKyAxKSAyPi9kZXYvbnVsbGAKKyAgdGVzdCAieCRhc19saW5lbm9fMSIgIT0gIngk
YXNfbGluZW5vXzIiICYmCisgIHRlc3QgIngkYXNfbGluZW5vXzMiICA9ICJ4JGFzX2xpbmVub18y
IiAgfHwgeworICAjIEZpbmQgd2hvIHdlIGFyZS4gIExvb2sgaW4gdGhlIHBhdGggaWYgd2UgY29u
dGFpbiBubyBwYXRoIGF0IGFsbAorICAjIHJlbGF0aXZlIG9yIG5vdC4KKyAgY2FzZSAkMCBpbgor
ICAgICpbXFwvXSogKSBhc19teXNlbGY9JDAgOzsKKyAgICAqKSBhc19zYXZlX0lGUz0kSUZTOyBJ
RlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3Nh
dmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIHRlc3QgLXIgIiRhc19k
aXIvJDAiICYmIGFzX215c2VsZj0kYXNfZGlyLyQwICYmIGJyZWFrCitkb25lCisKKyAgICAgICA7
OworICBlc2FjCisgICMgV2UgZGlkIG5vdCBmaW5kIG91cnNlbHZlcywgbW9zdCBwcm9iYWJseSB3
ZSB3ZXJlIHJ1biBhcyBgc2ggQ09NTUFORCcKKyAgIyBpbiB3aGljaCBjYXNlIHdlIGFyZSBub3Qg
dG8gYmUgZm91bmQgaW4gdGhlIHBhdGguCisgIGlmIHRlc3QgIngkYXNfbXlzZWxmIiA9IHg7IHRo
ZW4KKyAgICBhc19teXNlbGY9JDAKKyAgZmkKKyAgaWYgdGVzdCAhIC1mICIkYXNfbXlzZWxmIjsg
dGhlbgorICAgIHsgZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgbXlzZWxmOyByZXJ1
biB3aXRoIGFuIGFic29sdXRlIHBhdGgiID4mMgorICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9
CisgIGZpCisgIGNhc2UgJENPTkZJR19TSEVMTCBpbgorICAnJykKKyAgICBhc19zYXZlX0lGUz0k
SUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluIC9iaW4kUEFUSF9TRVBBUkFU
T1IvdXNyL2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisg
IHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIGZvciBhc19iYXNlIGluIHNoIGJhc2gg
a3NoIHNoNTsgZG8KKwkgY2FzZSAkYXNfZGlyIGluCisJIC8qKQorCSAgIGlmICgiJGFzX2Rpci8k
YXNfYmFzZSIgLWMgJworICBhc19saW5lbm9fMT0kTElORU5PCisgIGFzX2xpbmVub18yPSRMSU5F
Tk8KKyAgYXNfbGluZW5vXzM9YChleHByICRhc19saW5lbm9fMSArIDEpIDI+L2Rldi9udWxsYAor
ICB0ZXN0ICJ4JGFzX2xpbmVub18xIiAhPSAieCRhc19saW5lbm9fMiIgJiYKKyAgdGVzdCAieCRh
c19saW5lbm9fMyIgID0gIngkYXNfbGluZW5vXzIiICcpIDI+L2Rldi9udWxsOyB0aGVuCisJICAg
ICAkYXNfdW5zZXQgQkFTSF9FTlYgfHwgdGVzdCAiJHtCQVNIX0VOVitzZXR9IiAhPSBzZXQgfHwg
eyBCQVNIX0VOVj07IGV4cG9ydCBCQVNIX0VOVjsgfQorCSAgICAgJGFzX3Vuc2V0IEVOViB8fCB0
ZXN0ICIke0VOVitzZXR9IiAhPSBzZXQgfHwgeyBFTlY9OyBleHBvcnQgRU5WOyB9CisJICAgICBD
T05GSUdfU0hFTEw9JGFzX2Rpci8kYXNfYmFzZQorCSAgICAgZXhwb3J0IENPTkZJR19TSEVMTAor
CSAgICAgZXhlYyAiJENPTkZJR19TSEVMTCIgIiQwIiAkezErIiRAIn0KKwkgICBmaTs7CisJIGVz
YWMKKyAgICAgICBkb25lCitkb25lCis7OworICBlc2FjCisKKyAgIyBDcmVhdGUgJGFzX21lLmxp
bmVubyBhcyBhIGNvcHkgb2YgJGFzX215c2VsZiwgYnV0IHdpdGggJExJTkVOTworICAjIHVuaWZv
cm1seSByZXBsYWNlZCBieSB0aGUgbGluZSBudW1iZXIuICBUaGUgZmlyc3QgJ3NlZCcgaW5zZXJ0
cyBhCisgICMgbGluZS1udW1iZXIgbGluZSBiZWZvcmUgZWFjaCBsaW5lOyB0aGUgc2Vjb25kICdz
ZWQnIGRvZXMgdGhlIHJlYWwKKyAgIyB3b3JrLiAgVGhlIHNlY29uZCBzY3JpcHQgdXNlcyAnTicg
dG8gcGFpciBlYWNoIGxpbmUtbnVtYmVyIGxpbmUKKyAgIyB3aXRoIHRoZSBudW1iZXJlZCBsaW5l
LCBhbmQgYXBwZW5kcyB0cmFpbGluZyAnLScgZHVyaW5nCisgICMgc3Vic3RpdHV0aW9uIHNvIHRo
YXQgJExJTkVOTyBpcyBub3QgYSBzcGVjaWFsIGNhc2UgYXQgbGluZSBlbmQuCisgICMgKFJhamEg
UiBIYXJpbmF0aCBzdWdnZXN0ZWQgc2VkICc9JywgYW5kIFBhdWwgRWdnZXJ0IHdyb3RlIHRoZQor
ICAjIHNlY29uZCAnc2VkJyBzY3JpcHQuICBCbGFtZSBMZWUgRS4gTWNNYWhvbiBmb3Igc2VkJ3Mg
c3ludGF4LiAgOi0pCisgIHNlZCAnPScgPCRhc19teXNlbGYgfAorICAgIHNlZCAnCisgICAgICBO
CisgICAgICBzLCQsLSwKKyAgICAgIDogbG9vcAorICAgICAgcyxeXChbJyRhc19jcl9kaWdpdHMn
XSpcKVwoLipcKVskXUxJTkVOT1woW14nJGFzX2NyX2FsbnVtJ19dXCksXDFcMlwxXDMsCisgICAg
ICB0IGxvb3AKKyAgICAgIHMsLSQsLAorICAgICAgcyxeWyckYXNfY3JfZGlnaXRzJ10qXG4sLAor
ICAgICcgPiRhc19tZS5saW5lbm8gJiYKKyAgY2htb2QgK3ggJGFzX21lLmxpbmVubyB8fAorICAg
IHsgZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGNyZWF0ZSAkYXNfbWUubGluZW5vOyByZXJ1
biB3aXRoIGEgUE9TSVggc2hlbGwiID4mMgorICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CisK
KyAgIyBEb24ndCB0cnkgdG8gZXhlYyBhcyBpdCBjaGFuZ2VzICRbMF0sIGNhdXNpbmcgYWxsIHNv
cnQgb2YgcHJvYmxlbXMKKyAgIyAodGhlIGRpcm5hbWUgb2YgJFswXSBpcyBub3QgdGhlIHBsYWNl
IHdoZXJlIHdlIG1pZ2h0IGZpbmQgdGhlCisgICMgb3JpZ2luYWwgYW5kIHNvIG9uLiAgQXV0b2Nv
bmYgaXMgZXNwZWNpYWxseSBzZW5zaWJsZSB0byB0aGlzKS4KKyAgLiAuLyRhc19tZS5saW5lbm8K
KyAgIyBFeGl0IHN0YXR1cyBpcyB0aGF0IG9mIHRoZSBsYXN0IGNvbW1hbmQuCisgIGV4aXQKK30K
KworCitjYXNlIGBlY2hvICJ0ZXN0aW5nXGMiOyBlY2hvIDEsMiwzYCxgZWNobyAtbiB0ZXN0aW5n
OyBlY2hvIDEsMiwzYCBpbgorICAqYyosLW4qKSBFQ0hPX049IEVDSE9fQz0nCisnIEVDSE9fVD0n
CScgOzsKKyAgKmMqLCogICkgRUNIT19OPS1uIEVDSE9fQz0gRUNIT19UPSA7OworICAqKSAgICAg
ICBFQ0hPX049IEVDSE9fQz0nXGMnIEVDSE9fVD0gOzsKK2VzYWMKKworaWYgZXhwciBhIDogJ1wo
YVwpJyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgYXNfZXhwcj1leHByCitlbHNlCisgIGFzX2V4
cHI9ZmFsc2UKK2ZpCisKK3JtIC1mIGNvbmYkJCBjb25mJCQuZXhlIGNvbmYkJC5maWxlCitlY2hv
ID5jb25mJCQuZmlsZQoraWYgbG4gLXMgY29uZiQkLmZpbGUgY29uZiQkIDI+L2Rldi9udWxsOyB0
aGVuCisgICMgV2UgY291bGQganVzdCBjaGVjayBmb3IgREpHUFA7IGJ1dCB0aGlzIHRlc3QgYSkg
d29ya3MgYikgaXMgbW9yZSBnZW5lcmljCisgICMgYW5kIGMpIHdpbGwgcmVtYWluIHZhbGlkIG9u
Y2UgREpHUFAgc3VwcG9ydHMgc3ltbGlua3MgKERKR1BQIDIuMDQpLgorICBpZiB0ZXN0IC1mIGNv
bmYkJC5leGU7IHRoZW4KKyAgICAjIERvbid0IHVzZSBsbiBhdCBhbGw7IHdlIGRvbid0IGhhdmUg
YW55IGxpbmtzCisgICAgYXNfbG5fcz0nY3AgLXAnCisgIGVsc2UKKyAgICBhc19sbl9zPSdsbiAt
cycKKyAgZmkKK2VsaWYgbG4gY29uZiQkLmZpbGUgY29uZiQkIDI+L2Rldi9udWxsOyB0aGVuCisg
IGFzX2xuX3M9bG4KK2Vsc2UKKyAgYXNfbG5fcz0nY3AgLXAnCitmaQorcm0gLWYgY29uZiQkIGNv
bmYkJC5leGUgY29uZiQkLmZpbGUKKworaWYgbWtkaXIgLXAgLiAyPi9kZXYvbnVsbDsgdGhlbgor
ICBhc19ta2Rpcl9wPToKK2Vsc2UKKyAgdGVzdCAtZCAuLy1wICYmIHJtZGlyIC4vLXAKKyAgYXNf
bWtkaXJfcD1mYWxzZQorZmkKKworYXNfZXhlY3V0YWJsZV9wPSJ0ZXN0IC1mIgorCisjIFNlZCBl
eHByZXNzaW9uIHRvIG1hcCBhIHN0cmluZyBvbnRvIGEgdmFsaWQgQ1BQIG5hbWUuCithc190cl9j
cHA9ImV2YWwgc2VkICd5JSokYXNfY3JfbGV0dGVycyVQJGFzX2NyX0xFVFRFUlMlO3MlW15fJGFz
X2NyX2FsbnVtXSVfJWcnIgorCisjIFNlZCBleHByZXNzaW9uIHRvIG1hcCBhIHN0cmluZyBvbnRv
IGEgdmFsaWQgdmFyaWFibGUgbmFtZS4KK2FzX3RyX3NoPSJldmFsIHNlZCAneSUqKyVwcCU7cyVb
Xl8kYXNfY3JfYWxudW1dJV8lZyciCisKKworIyBJRlMKKyMgV2UgbmVlZCBzcGFjZSwgdGFiIGFu
ZCBuZXcgbGluZSwgaW4gcHJlY2lzZWx5IHRoYXQgb3JkZXIuCithc19ubD0nCisnCitJRlM9IiAJ
JGFzX25sIgorCisjIENEUEFUSC4KKyRhc191bnNldCBDRFBBVEgKKwogCiAjIEZpbmQgdGhlIGNv
cnJlY3QgUEFUSCBzZXBhcmF0b3IuICBVc3VhbGx5IHRoaXMgaXMgYDonLCBidXQKICMgREpHUFAg
dXNlcyBgOycgbGlrZSBET1MuCkBAIC0xOSw2ICsyNTMsNyBAQAogICBQQVRIX1NFUEFSQVRPUj0k
bHRfY3Zfc3lzX3BhdGhfc2VwYXJhdG9yCiBmaQogCisKICMgQ2hlY2sgdGhhdCB3ZSBhcmUgcnVu
bmluZyB1bmRlciB0aGUgY29ycmVjdCBzaGVsbC4KIFNIRUxMPSR7Q09ORklHX1NIRUxMLS9iaW4v
c2h9CiAKQEAgLTE2NCw4MSArMzk5LDcgQEAKICAgIEVDSE89IiRDT05GSUdfU0hFTEwgXFxcJFwk
MCAtLWZhbGxiYWNrLWVjaG8iCiBmaQogCi0jIEF2b2lkIGRlcGVuZGluZyB1cG9uIENoYXJhY3Rl
ciBSYW5nZXMuCi1hc19jcl9sZXR0ZXJzPSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eicKLWFz
X2NyX0xFVFRFUlM9J0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJwotYXNfY3JfTGV0dGVycz0k
YXNfY3JfbGV0dGVycyRhc19jcl9MRVRURVJTCi1hc19jcl9kaWdpdHM9JzAxMjM0NTY3ODknCi1h
c19jcl9hbG51bT0kYXNfY3JfTGV0dGVycyRhc19jcl9kaWdpdHMKLQotIyBTZWQgZXhwcmVzc2lv
biB0byBtYXAgYSBzdHJpbmcgb250byBhIHZhbGlkIHZhcmlhYmxlIG5hbWUuCi1hc190cl9zaD0i
c2VkIHklKislcHAlO3MlW15fJGFzX2NyX2FsbnVtXSVfJWciCi0KLSMgU2VkIGV4cHJlc3Npb24g
dG8gbWFwIGEgc3RyaW5nIG9udG8gYSB2YWxpZCBDUFAgbmFtZS4KLWFzX3RyX2NwcD0ic2VkIHkl
KiRhc19jcl9sZXR0ZXJzJVAkYXNfY3JfTEVUVEVSUyU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyIK
LQotIyBCZSBCb3VybmUgY29tcGF0aWJsZQotaWYgdGVzdCAtbiAiJHtaU0hfVkVSU0lPTitzZXR9
IiAmJiAoZW11bGF0ZSBzaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCi0gIGVtdWxhdGUgc2gKLSAg
TlVMTENNRD06Ci1lbGlmIHRlc3QgLW4gIiR7QkFTSF9WRVJTSU9OK3NldH0iICYmIChzZXQgLW8g
cG9zaXgpID4vZGV2L251bGwgMj4mMTsgdGhlbgotICBzZXQgLW8gcG9zaXgKLWZpCi0KLSMgTmFt
ZSBvZiB0aGUgZXhlY3V0YWJsZS4KLWFzX21lPWBlY2hvICIkMCIgfHNlZCAncywuKltcXC9dLCwn
YAotCi1pZiBleHByIGEgOiAnXChhXCknID4vZGV2L251bGwgMj4mMTsgdGhlbgotICBhc19leHBy
PWV4cHIKLWVsc2UKLSAgYXNfZXhwcj1mYWxzZQotZmkKLQotcm0gLWYgY29uZiQkIGNvbmYkJC5l
eGUgY29uZiQkLmZpbGUKLWVjaG8gPmNvbmYkJC5maWxlCi1pZiBsbiAtcyBjb25mJCQuZmlsZSBj
b25mJCQgMj4vZGV2L251bGw7IHRoZW4KLSAgIyBXZSBjb3VsZCBqdXN0IGNoZWNrIGZvciBESkdQ
UDsgYnV0IHRoaXMgdGVzdCBhKSB3b3JrcyBiKSBpcyBtb3JlIGdlbmVyaWMKLSAgIyBhbmQgYykg
d2lsbCByZW1haW4gdmFsaWQgb25jZSBESkdQUCBzdXBwb3J0cyBzeW1saW5rcyAoREpHUFAgMi4w
NCkuCi0gIGlmIHRlc3QgLWYgY29uZiQkLmV4ZTsgdGhlbgotICAgICMgRG9uJ3QgdXNlIGxuIGF0
IGFsbDsgd2UgZG9uJ3QgaGF2ZSBhbnkgbGlua3MKLSAgICBhc19sbl9zPSdjcCAtcCcKLSAgZWxz
ZQotICAgIGFzX2xuX3M9J2xuIC1zJwotICBmaQotZWxpZiBsbiBjb25mJCQuZmlsZSBjb25mJCQg
Mj4vZGV2L251bGw7IHRoZW4KLSAgYXNfbG5fcz1sbgotZWxzZQotICBhc19sbl9zPSdjcCAtcCcK
LWZpCi1ybSAtZiBjb25mJCQgY29uZiQkLmV4ZSBjb25mJCQuZmlsZQotCi1hc19leGVjdXRhYmxl
X3A9InRlc3QgLWYiCi0KLSMgU3VwcG9ydCB1bnNldCB3aGVuIHBvc3NpYmxlLgotaWYgKEZPTz1G
T087IHVuc2V0IEZPTykgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCi0gIGFzX3Vuc2V0PXVuc2V0Ci1l
bHNlCi0gIGFzX3Vuc2V0PWZhbHNlCi1maQotCi0jIE5MUyBudWlzYW5jZXMuCi0kYXNfdW5zZXQg
TEFORyB8fCB0ZXN0ICIke0xBTkcrc2V0fSIgIT0gc2V0IHx8IHsgTEFORz1DOyBleHBvcnQgTEFO
RzsgfQotJGFzX3Vuc2V0IExDX0FMTCB8fCB0ZXN0ICIke0xDX0FMTCtzZXR9IiAhPSBzZXQgfHwg
eyBMQ19BTEw9QzsgZXhwb3J0IExDX0FMTDsgfQotJGFzX3Vuc2V0IExDX1RJTUUgfHwgdGVzdCAi
JHtMQ19USU1FK3NldH0iICE9IHNldCB8fCB7IExDX1RJTUU9QzsgZXhwb3J0IExDX1RJTUU7IH0K
LSRhc191bnNldCBMQ19DVFlQRSB8fCB0ZXN0ICIke0xDX0NUWVBFK3NldH0iICE9IHNldCB8fCB7
IExDX0NUWVBFPUM7IGV4cG9ydCBMQ19DVFlQRTsgfQotJGFzX3Vuc2V0IExBTkdVQUdFIHx8IHRl
c3QgIiR7TEFOR1VBR0Urc2V0fSIgIT0gc2V0IHx8IHsgTEFOR1VBR0U9QzsgZXhwb3J0IExBTkdV
QUdFOyB9Ci0kYXNfdW5zZXQgTENfQ09MTEFURSB8fCB0ZXN0ICIke0xDX0NPTExBVEUrc2V0fSIg
IT0gc2V0IHx8IHsgTENfQ09MTEFURT1DOyBleHBvcnQgTENfQ09MTEFURTsgfQotJGFzX3Vuc2V0
IExDX05VTUVSSUMgfHwgdGVzdCAiJHtMQ19OVU1FUklDK3NldH0iICE9IHNldCB8fCB7IExDX05V
TUVSSUM9QzsgZXhwb3J0IExDX05VTUVSSUM7IH0KLSRhc191bnNldCBMQ19NRVNTQUdFUyB8fCB0
ZXN0ICIke0xDX01FU1NBR0VTK3NldH0iICE9IHNldCB8fCB7IExDX01FU1NBR0VTPUM7IGV4cG9y
dCBMQ19NRVNTQUdFUzsgfQotCi0jIElGUwotIyBXZSBuZWVkIHNwYWNlLCB0YWIgYW5kIG5ldyBs
aW5lLCBpbiBwcmVjaXNlbHkgdGhhdCBvcmRlci4KLWFzX25sPScKLScKLUlGUz0iIAkkYXNfbmwi
CiAKLSMgQ0RQQVRILgotJGFzX3Vuc2V0IENEUEFUSCB8fCB0ZXN0ICIke0NEUEFUSCtzZXR9IiAh
PSBzZXQgfHwgeyBDRFBBVEg9OjsgZXhwb3J0IENEUEFUSDsgfQogCiAjIE5hbWUgb2YgdGhlIGhv
c3QuCiAjIGhvc3RuYW1lIG9uIHNvbWUgc3lzdGVtcyAoU1ZSMy4yLCBMaW51eCkgcmV0dXJucyBh
IGJvZ3VzIGV4aXQgc3RhdHVzLApAQCAtMjUxLDkgKzQxMiwxMSBAQAogIyBJbml0aWFsaXphdGlv
bnMuCiAjCiBhY19kZWZhdWx0X3ByZWZpeD0vdXNyL2xvY2FsCithY19jb25maWdfbGlib2JqX2Rp
cj0uCiBjcm9zc19jb21waWxpbmc9bm8KIHN1YmRpcnM9Ci1NRkxBR1M9IE1BS0VGTEFHUz0KK01G
TEFHUz0KK01BS0VGTEFHUz0KIFNIRUxMPSR7Q09ORklHX1NIRUxMLS9iaW4vc2h9CiAKICMgTWF4
aW11bSBudW1iZXIgb2YgbGluZXMgdG8gcHV0IGluIGEgc2hlbGwgaGVyZSBkb2N1bWVudC4KQEAg
LTI2MSw4ICs0MjQsNTQgQEAKICMgb25seSBhY19tYXhfc2VkX2xpbmVzIHNob3VsZCBiZSB1c2Vk
LgogOiAke2FjX21heF9oZXJlX2xpbmVzPTM4fQogCisjIElkZW50aXR5IG9mIHRoaXMgcGFja2Fn
ZS4KK1BBQ0tBR0VfTkFNRT0KK1BBQ0tBR0VfVEFSTkFNRT0KK1BBQ0tBR0VfVkVSU0lPTj0KK1BB
Q0tBR0VfU1RSSU5HPQorUEFDS0FHRV9CVUdSRVBPUlQ9CisKIGFjX3VuaXF1ZV9maWxlPSJSRUFE
TUUiCiBhY19kZWZhdWx0X3ByZWZpeD0vdXNyL2xvY2FsCisjIEZhY3RvcmluZyBkZWZhdWx0IGhl
YWRlcnMgZm9yIG1vc3QgdGVzdHMuCithY19pbmNsdWRlc19kZWZhdWx0PSJcCisjaW5jbHVkZSA8
c3RkaW8uaD4KKyNpZiBIQVZFX1NZU19UWVBFU19ICisjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgor
I2VuZGlmCisjaWYgSEFWRV9TWVNfU1RBVF9ICisjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CisjZW5k
aWYKKyNpZiBTVERDX0hFQURFUlMKKyMgaW5jbHVkZSA8c3RkbGliLmg+CisjIGluY2x1ZGUgPHN0
ZGRlZi5oPgorI2Vsc2UKKyMgaWYgSEFWRV9TVERMSUJfSAorIyAgaW5jbHVkZSA8c3RkbGliLmg+
CisjIGVuZGlmCisjZW5kaWYKKyNpZiBIQVZFX1NUUklOR19ICisjIGlmICFTVERDX0hFQURFUlMg
JiYgSEFWRV9NRU1PUllfSAorIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CisjIGVuZGlmCisjIGluY2x1
ZGUgPHN0cmluZy5oPgorI2VuZGlmCisjaWYgSEFWRV9TVFJJTkdTX0gKKyMgaW5jbHVkZSA8c3Ry
aW5ncy5oPgorI2VuZGlmCisjaWYgSEFWRV9JTlRUWVBFU19ICisjIGluY2x1ZGUgPGludHR5cGVz
Lmg+CisjZWxzZQorIyBpZiBIQVZFX1NURElOVF9ICisjICBpbmNsdWRlIDxzdGRpbnQuaD4KKyMg
ZW5kaWYKKyNlbmRpZgorI2lmIEhBVkVfVU5JU1REX0gKKyMgaW5jbHVkZSA8dW5pc3RkLmg+Cisj
ZW5kaWYiCisKK2FjX3N1YnN0X3ZhcnM9J1NIRUxMIFBBVEhfU0VQQVJBVE9SIFBBQ0tBR0VfTkFN
RSBQQUNLQUdFX1RBUk5BTUUgUEFDS0FHRV9WRVJTSU9OIFBBQ0tBR0VfU1RSSU5HIFBBQ0tBR0Vf
QlVHUkVQT1JUIGV4ZWNfcHJlZml4IHByZWZpeCBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lIGJpbmRp
ciBzYmluZGlyIGxpYmV4ZWNkaXIgZGF0YWRpciBzeXNjb25mZGlyIHNoYXJlZHN0YXRlZGlyIGxv
Y2Fsc3RhdGVkaXIgbGliZGlyIGluY2x1ZGVkaXIgb2xkaW5jbHVkZWRpciBpbmZvZGlyIG1hbmRp
ciBidWlsZF9hbGlhcyBob3N0X2FsaWFzIHRhcmdldF9hbGlhcyBERUZTIEVDSE9fQyBFQ0hPX04g
RUNIT19UIExJQlMgREVWSUxfTFRWRVJTSU9OIGJ1aWxkIGJ1aWxkX2NwdSBidWlsZF92ZW5kb3Ig
YnVpbGRfb3MgaG9zdCBob3N0X2NwdSBob3N0X3ZlbmRvciBob3N0X29zIENDIENGTEFHUyBMREZM
QUdTIENQUEZMQUdTIGFjX2N0X0NDIEVYRUVYVCBPQkpFWFQgSU5TVEFMTF9QUk9HUkFNIElOU1RB
TExfU0NSSVBUIElOU1RBTExfREFUQSBTRVRfTUFLRSBDUFAgWF9DRkxBR1MgWF9QUkVfTElCUyBY
X0xJQlMgWF9FWFRSQV9MSUJTIFBBQ0tBR0UgVkVSU0lPTiBBQ0xPQ0FMIEFVVE9DT05GIEFVVE9N
QUtFIEFVVE9IRUFERVIgTUFLRUlORk8gTE5fUyBFQ0hPIFJBTkxJQiBhY19jdF9SQU5MSUIgU1RS
SVAgYWNfY3RfU1RSSVAgRUdSRVAgTElCVE9PTCBNQUlOVEFJTkVSX01PREVfVFJVRSBNQUlOVEFJ
TkVSX01PREVfRkFMU0UgTUFJTlQgVkVSU0lPTklORk8gTElCSlBHIExJQlRJRkYgTElCUE5HIExJ
QkxDTVMgTElCTU5HIHNkbF9jb25maWcgTElCU0RMIEhTREwgTElCR0wgYWxsZWdyb19jb25maWcg
TElCQUxMRUdSTyBIQUxMRUdSTyBMSUJHREkzMiBJTF9OT19CTVBfVFJVRSBJTF9OT19CTVBfRkFM
U0UgSUxfTk9fRENYX1RSVUUgSUxfTk9fRENYX0ZBTFNFIElMX05PX0REU19UUlVFIElMX05PX0RE
U19GQUxTRSBJTF9OT19ET09NX1RSVUUgSUxfTk9fRE9PTV9GQUxTRSBJTF9OT19HSUZfVFJVRSBJ
TF9OT19HSUZfRkFMU0UgSUxfTk9fSUNPX1RSVUUgSUxfTk9fSUNPX0ZBTFNFIElMX05PX0pQR19U
UlVFIElMX05PX0pQR19GQUxTRSBJTF9OT19MSUZfVFJVRSBJTF9OT19MSUZfRkFMU0UgSUxfTk9f
TENNU19UUlVFIElMX05PX0xDTVNfRkFMU0UgSUxfTk9fTURMX1RSVUUgSUxfTk9fTURMX0ZBTFNF
IElMX05PX01OR19UUlVFIElMX05PX01OR19GQUxTRSBJTF9OT19QQ0RfVFJVRSBJTF9OT19QQ0Rf
RkFMU0UgSUxfTk9fUENYX1RSVUUgSUxfTk9fUENYX0ZBTFNFIElMX05PX1BJQ19UUlVFIElMX05P
X1BJQ19GQUxTRSBJTF9OT19QSVhfVFJVRSBJTF9OT19QSVhfRkFMU0UgSUxfTk9fUE5HX1RSVUUg
SUxfTk9fUE5HX0ZBTFNFIElMX05PX1BOTV9UUlVFIElMX05PX1BOTV9GQUxTRSBJTF9OT19QU0Rf
VFJVRSBJTF9OT19QU0RfRkFMU0UgSUxfTk9fUFNQX1RSVUUgSUxfTk9fUFNQX0ZBTFNFIElMX05P
X1BYUl9UUlVFIElMX05PX1BYUl9GQUxTRSBJTF9OT19SQVdfVFJVRSBJTF9OT19SQVdfRkFMU0Ug
SUxfTk9fU0dJX1RSVUUgSUxfTk9fU0dJX0ZBTFNFIElMX05PX1RHQV9UUlVFIElMX05PX1RHQV9G
QUxTRSBJTF9OT19USUZfVFJVRSBJTF9OT19USUZfRkFMU0UgSUxfTk9fV0FMX1RSVUUgSUxfTk9f
V0FMX0ZBTFNFIElMX05PX1hQTV9UUlVFIElMX05PX1hQTV9GQUxTRSBMSUJJTF9DRkxBR1MgTElC
SUxVX0NGTEFHUyBMSUJJTFVUX0NGTEFHUyBMSUJJTFVUX1dJTjMyTElCUEFUSCBMSUJPQkpTIExU
TElCT0JKUycKK2FjX3N1YnN0X2ZpbGVzPScnCiAKICMgSW5pdGlhbGl6ZSBzb21lIHZhcmlhYmxl
cyBzZXQgYnkgb3B0aW9ucy4KIGFjX2luaXRfaGVscD0KQEAgLTMwMiwxMyArNTExLDYgQEAKIGlu
Zm9kaXI9JyR7cHJlZml4fS9pbmZvJwogbWFuZGlyPScke3ByZWZpeH0vbWFuJwogCi0jIElkZW50
aXR5IG9mIHRoaXMgcGFja2FnZS4KLVBBQ0tBR0VfTkFNRT0KLVBBQ0tBR0VfVEFSTkFNRT0KLVBB
Q0tBR0VfVkVSU0lPTj0KLVBBQ0tBR0VfU1RSSU5HPQotUEFDS0FHRV9CVUdSRVBPUlQ9Ci0KIGFj
X3ByZXY9CiBmb3IgYWNfb3B0aW9uCiBkbwpAQCAtNDQxLDcgKzY0Myw3IEBACiAgICAgd2l0aF9m
cD1ubyA7OwogCiAgIC1uby1jcmVhdGUgfCAtLW5vLWNyZWF0ZSB8IC0tbm8tY3JlYXQgfCAtLW5v
LWNyZWEgfCAtLW5vLWNyZSBcCi0gIHwgLS1uby1jciB8IC0tbm8tYykKKyAgfCAtLW5vLWNyIHwg
LS1uby1jIHwgLW4pCiAgICAgbm9fY3JlYXRlPXllcyA7OwogCiAgIC1uby1yZWN1cnNpb24gfCAt
LW5vLXJlY3Vyc2lvbiB8IC0tbm8tcmVjdXJzaW8gfCAtLW5vLXJlY3Vyc2kgXApAQCAtNjIwLDMw
ICs4MjIsMzEgQEAKICAgZXZhbCBhY192YWw9JGBlY2hvICRhY192YXJgCiAgIGNhc2UgJGFjX3Zh
bCBpbgogICAgIFtcXC8kXSogfCA/OltcXC9dKiB8IE5PTkUgfCAnJyApIDs7Ci0gICAgKikgIHsg
ZWNobyAiJGFzX21lOiBlcnJvcjogZXhwZWN0ZWQgYW4gYWJzb2x1dGUgcGF0aCBmb3IgLS0kYWNf
dmFyOiAkYWNfdmFsIiA+JjIKKyAgICAqKSAgeyBlY2hvICIkYXNfbWU6IGVycm9yOiBleHBlY3Rl
ZCBhbiBhYnNvbHV0ZSBkaXJlY3RvcnkgbmFtZSBmb3IgLS0kYWNfdmFyOiAkYWNfdmFsIiA+JjIK
ICAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTs7CiAgIGVzYWMKIGRvbmUKIAogIyBCZSBzdXJl
IHRvIGhhdmUgYWJzb2x1dGUgcGF0aHMuCiBmb3IgYWNfdmFyIGluIGJpbmRpciBzYmluZGlyIGxp
YmV4ZWNkaXIgZGF0YWRpciBzeXNjb25mZGlyIHNoYXJlZHN0YXRlZGlyIFwKLSAgICAgICAgICAg
ICAgbG9jYWxzdGF0ZWRpciBsaWJkaXIgaW5jbHVkZWRpciBvbGRpbmNsdWRlZGlyIGluZm9kaXIg
bWFuZGlyCisJICAgICAgbG9jYWxzdGF0ZWRpciBsaWJkaXIgaW5jbHVkZWRpciBvbGRpbmNsdWRl
ZGlyIGluZm9kaXIgbWFuZGlyCiBkbwogICBldmFsIGFjX3ZhbD0kYGVjaG8gJGFjX3ZhcmAKICAg
Y2FzZSAkYWNfdmFsIGluCiAgICAgW1xcLyRdKiB8ID86W1xcL10qICkgOzsKLSAgICAqKSAgeyBl
Y2hvICIkYXNfbWU6IGVycm9yOiBleHBlY3RlZCBhbiBhYnNvbHV0ZSBwYXRoIGZvciAtLSRhY192
YXI6ICRhY192YWwiID4mMgorICAgICopICB7IGVjaG8gIiRhc19tZTogZXJyb3I6IGV4cGVjdGVk
IGFuIGFic29sdXRlIGRpcmVjdG9yeSBuYW1lIGZvciAtLSRhY192YXI6ICRhY192YWwiID4mMgog
ICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9OzsKICAgZXNhYwogZG9uZQogCiAjIFRoZXJlIG1p
Z2h0IGJlIHBlb3BsZSB3aG8gZGVwZW5kIG9uIHRoZSBvbGQgYnJva2VuIGJlaGF2aW9yOiBgJGhv
c3QnCiAjIHVzZWQgdG8gaG9sZCB0aGUgYXJndW1lbnQgb2YgLS1ob3N0IGV0Yy4KKyMgRklYTUU6
IFRvIHJlbW92ZSBzb21lIGRheS4KIGJ1aWxkPSRidWlsZF9hbGlhcwogaG9zdD0kaG9zdF9hbGlh
cwogdGFyZ2V0PSR0YXJnZXRfYWxpYXMKIAotIyBGSVhNRTogc2hvdWxkIGJlIHJlbW92ZWQgaW4g
YXV0b2NvbmYgMy4wLgorIyBGSVhNRTogVG8gcmVtb3ZlIHNvbWUgZGF5LgogaWYgdGVzdCAieCRo
b3N0X2FsaWFzIiAhPSB4OyB0aGVuCiAgIGlmIHRlc3QgIngkYnVpbGRfYWxpYXMiID0geDsgdGhl
bgogICAgIGNyb3NzX2NvbXBpbGluZz1tYXliZQpAQCAtNjU5LDEzICs4NjIsMjMgQEAKIAogdGVz
dCAiJHNpbGVudCIgPSB5ZXMgJiYgZXhlYyA2Pi9kZXYvbnVsbAogCisKICMgRmluZCB0aGUgc291
cmNlIGZpbGVzLCBpZiBsb2NhdGlvbiB3YXMgbm90IHNwZWNpZmllZC4KIGlmIHRlc3QgLXogIiRz
cmNkaXIiOyB0aGVuCiAgIGFjX3NyY2Rpcl9kZWZhdWx0ZWQ9eWVzCiAgICMgVHJ5IHRoZSBkaXJl
Y3RvcnkgY29udGFpbmluZyB0aGlzIHNjcmlwdCwgdGhlbiBpdHMgcGFyZW50LgotICBhY19wcm9n
PSQwCi0gIGFjX2NvbmZkaXI9YGVjaG8gIiRhY19wcm9nIiB8IHNlZCAncyVbXFwvXVteXFwvXVte
XFwvXSokJSUnYAotICB0ZXN0ICJ4JGFjX2NvbmZkaXIiID0gIngkYWNfcHJvZyIgJiYgYWNfY29u
ZmRpcj0uCisgIGFjX2NvbmZkaXI9YChkaXJuYW1lICIkMCIpIDI+L2Rldi9udWxsIHx8CiskYXNf
ZXhwciBYIiQwIiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAorCSBYIiQwIiA6
ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiQwIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiQwIiA6
ICdYXCgvXCknIFx8IFwKKwkgLiAgICAgOiAnXCguXCknIDI+L2Rldi9udWxsIHx8CitlY2hvIFgi
JDAiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveyBzLy9cMS87
IHE7IH0KKyAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KKyAgCSAgL15YXChc
L1wvXCkkL3sgcy8vXDEvOyBxOyB9CisgIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEvOyBxOyB9Cisg
IAkgIHMvLiovLi87IHEnYAogICBzcmNkaXI9JGFjX2NvbmZkaXIKICAgaWYgdGVzdCAhIC1yICRz
cmNkaXIvJGFjX3VuaXF1ZV9maWxlOyB0aGVuCiAgICAgc3JjZGlyPS4uCkBAIC02NzUsMTMgKzg4
OCwxNiBAQAogZmkKIGlmIHRlc3QgISAtciAkc3JjZGlyLyRhY191bmlxdWVfZmlsZTsgdGhlbgog
ICBpZiB0ZXN0ICIkYWNfc3JjZGlyX2RlZmF1bHRlZCIgPSB5ZXM7IHRoZW4KLSAgICB7IGVjaG8g
IiRhc19tZTogZXJyb3I6IGNhbm5vdCBmaW5kIHNvdXJjZXMgaW4gJGFjX2NvbmZkaXIgb3IgLi4i
ID4mMgorICAgIHsgZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgc291cmNlcyAoJGFj
X3VuaXF1ZV9maWxlKSBpbiAkYWNfY29uZmRpciBvciAuLiIgPiYyCiAgICB7IChleGl0IDEpOyBl
eGl0IDE7IH07IH0KICAgZWxzZQotICAgIHsgZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZp
bmQgc291cmNlcyBpbiAkc3JjZGlyIiA+JjIKKyAgICB7IGVjaG8gIiRhc19tZTogZXJyb3I6IGNh
bm5vdCBmaW5kIHNvdXJjZXMgKCRhY191bmlxdWVfZmlsZSkgaW4gJHNyY2RpciIgPiYyCiAgICB7
IChleGl0IDEpOyBleGl0IDE7IH07IH0KICAgZmkKIGZpCisoY2QgJHNyY2RpciAmJiB0ZXN0IC1y
IC4vJGFjX3VuaXF1ZV9maWxlKSAyPi9kZXYvbnVsbCB8fAorICB7IGVjaG8gIiRhc19tZTogZXJy
b3I6IHNvdXJjZXMgYXJlIGluICRzcmNkaXIsIGJ1dCBcYGNkICRzcmNkaXInIGRvZXMgbm90IHdv
cmsiID4mMgorICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CiBzcmNkaXI9YGVjaG8gIiRzcmNk
aXIiIHwgc2VkICdzJVwoW15cXC9dXClbXFwvXSokJVwxJSdgCiBhY19lbnZfYnVpbGRfYWxpYXNf
c2V0PSR7YnVpbGRfYWxpYXMrc2V0fQogYWNfZW52X2J1aWxkX2FsaWFzX3ZhbHVlPSRidWlsZF9h
bGlhcwpAQCAtNzIyLDcgKzkzOCw3IEBACiBpZiB0ZXN0ICIkYWNfaW5pdF9oZWxwIiA9ICJsb25n
IjsgdGhlbgogICAjIE9taXQgc29tZSBpbnRlcm5hbCBvciBvYnNvbGV0ZSBvcHRpb25zIHRvIG1h
a2UgdGhlIGxpc3QgbGVzcyBpbXBvc2luZy4KICAgIyBUaGlzIG1lc3NhZ2UgaXMgdG9vIGxvbmcg
dG8gYmUgYSBzdHJpbmcgaW4gdGhlIEEvVVggMy4xIHNoLgotICBjYXQgPDxFT0YKKyAgY2F0IDw8
X0FDRU9GCiBcYGNvbmZpZ3VyZScgY29uZmlndXJlcyB0aGlzIHBhY2thZ2UgdG8gYWRhcHQgdG8g
bWFueSBraW5kcyBvZiBzeXN0ZW1zLgogCiBVc2FnZTogJDAgW09QVElPTl0uLi4gW1ZBUj1WQUxV
RV0uLi4KQEAgLTc0MywxNCArOTU5LDE0IEBACiAgIC1uLCAtLW5vLWNyZWF0ZSAgICAgICAgIGRv
IG5vdCBjcmVhdGUgb3V0cHV0IGZpbGVzCiAgICAgICAtLXNyY2Rpcj1ESVIgICAgICAgIGZpbmQg
dGhlIHNvdXJjZXMgaW4gRElSIFtjb25maWd1cmUgZGlyIG9yIFxgLi4nXQogCi1FT0YKK19BQ0VP
RgogCi0gIGNhdCA8PEVPRgorICBjYXQgPDxfQUNFT0YKIEluc3RhbGxhdGlvbiBkaXJlY3Rvcmll
czoKICAgLS1wcmVmaXg9UFJFRklYICAgICAgICAgaW5zdGFsbCBhcmNoaXRlY3R1cmUtaW5kZXBl
bmRlbnQgZmlsZXMgaW4gUFJFRklYCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFskYWNfZGVm
YXVsdF9wcmVmaXhdCisJCQkgIFskYWNfZGVmYXVsdF9wcmVmaXhdCiAgIC0tZXhlYy1wcmVmaXg9
RVBSRUZJWCAgIGluc3RhbGwgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudCBmaWxlcyBpbiBFUFJFRklY
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIFtQUkVGSVhdCisJCQkgIFtQUkVGSVhdCiAKIEJ5
IGRlZmF1bHQsIFxgbWFrZSBpbnN0YWxsJyB3aWxsIGluc3RhbGwgYWxsIHRoZSBmaWxlcyBpbgog
XGAkYWNfZGVmYXVsdF9wcmVmaXgvYmluJywgXGAkYWNfZGVmYXVsdF9wcmVmaXgvbGliJyBldGMu
ICBZb3UgY2FuIHNwZWNpZnkKQEAgLTc3Miw5ICs5ODgsOSBAQAogICAtLW9sZGluY2x1ZGVkaXI9
RElSICAgIEMgaGVhZGVyIGZpbGVzIGZvciBub24tZ2NjIFsvdXNyL2luY2x1ZGVdCiAgIC0taW5m
b2Rpcj1ESVIgICAgICAgICAgaW5mbyBkb2N1bWVudGF0aW9uIFtQUkVGSVgvaW5mb10KICAgLS1t
YW5kaXI9RElSICAgICAgICAgICBtYW4gZG9jdW1lbnRhdGlvbiBbUFJFRklYL21hbl0KLUVPRgor
X0FDRU9GCiAKLSAgY2F0IDw8XEVPRgorICBjYXQgPDxcX0FDRU9GCiAKIFggZmVhdHVyZXM6CiAg
IC0teC1pbmNsdWRlcz1ESVIgICAgWCBpbmNsdWRlIGZpbGVzIGFyZSBpbiBESVIKQEAgLTc4Nywx
MyArMTAwMywxMyBAQAogCiBTeXN0ZW0gdHlwZXM6CiAgIC0tYnVpbGQ9QlVJTEQgICAgIGNvbmZp
Z3VyZSBmb3IgYnVpbGRpbmcgb24gQlVJTEQgW2d1ZXNzZWRdCi0gIC0taG9zdD1IT1NUICAgICAg
IGJ1aWxkIHByb2dyYW1zIHRvIHJ1biBvbiBIT1NUIFtCVUlMRF0KLUVPRgorICAtLWhvc3Q9SE9T
VCAgICAgICBjcm9zcy1jb21waWxlIHRvIGJ1aWxkIHByb2dyYW1zIHRvIHJ1biBvbiBIT1NUIFtC
VUlMRF0KK19BQ0VPRgogZmkKIAogaWYgdGVzdCAtbiAiJGFjX2luaXRfaGVscCI7IHRoZW4KIAot
ICBjYXQgPDxcRU9GCisgIGNhdCA8PFxfQUNFT0YKIAogT3B0aW9uYWwgRmVhdHVyZXM6CiAgIC0t
ZGlzYWJsZS1GRUFUVVJFICAgICAgIGRvIG5vdCBpbmNsdWRlIEZFQVRVUkUgKHNhbWUgYXMgLS1l
bmFibGUtRkVBVFVSRT1ubykKQEAgLTgyOCw3ICsxMDQ0LDcgQEAKICAgLS1kaXNhYmxlLXRnYSAg
ICAgICAgICAgRG9lc24ndCBjb21waWxlIHRnYSBzdXBwb3J0CiAgIC0tZGlzYWJsZS10aWZmICAg
ICAgICAgIERvZXNuJ3QgY29tcGlsZSB0aWZmIHN1cHBvcnQKICAgLS1kaXNhYmxlLXdhbCAgICAg
ICAgICAgRG9lc24ndCBjb21waWxlIHdhbCBzdXBwb3J0Ci0gIC0tZGlzYWJsZS14cCwgICAgICAg
ICAgIERvZXNuJ3QgY29tcGlsZSB4cG0gc3VwcG9ydAorICAtLWRpc2FibGUteHBtICAgICAgICAg
ICBEb2Vzbid0IGNvbXBpbGUgeHBtIHN1cHBvcnQKICAgLS1kaXNhYmxlLWFsbGVncm8gICAgICAg
RG9lc24ndCBjb21waWxlIGFsbGVncm8gc3VwcG9ydAogICAtLWRpc2FibGUtZGlyZWN0eCAgICAg
ICBEb2Vzbid0IGNvbXBpbGUgZGlyZWN0eCBzdXBwb3J0CiAgIC0tZGlzYWJsZS1vcGVuZ2wgICAg
ICAgIERvZXNuJ3QgY29tcGlsZSBvcGVuZ2wgc3VwcG9ydApAQCAtODU1LDQwICsxMDcxLDkwIEBA
CiBVc2UgdGhlc2UgdmFyaWFibGVzIHRvIG92ZXJyaWRlIHRoZSBjaG9pY2VzIG1hZGUgYnkgYGNv
bmZpZ3VyZScgb3IgdG8gaGVscAogaXQgdG8gZmluZCBsaWJyYXJpZXMgYW5kIHByb2dyYW1zIHdp
dGggbm9uc3RhbmRhcmQgbmFtZXMvbG9jYXRpb25zLgogCi1FT0YKK19BQ0VPRgogZmkKIAogaWYg
dGVzdCAiJGFjX2luaXRfaGVscCIgPSAicmVjdXJzaXZlIjsgdGhlbgogICAjIElmIHRoZXJlIGFy
ZSBzdWJkaXJzLCByZXBvcnQgdGhlaXIgc3BlY2lmaWMgLS1oZWxwLgogICBhY19wb3BkaXI9YHB3
ZGAKLSAgZm9yIGFjX3N1YmRpciBpbiA6ICRhY19zdWJkaXJzX2FsbDsgZG8gdGVzdCAieCRhY19z
dWJkaXIiID0geDogJiYgY29udGludWUKLSAgICBjZCAkYWNfc3ViZGlyCi0gICAgIyBBICIuLi8i
IGZvciBlYWNoIGRpcmVjdG9yeSBpbiAvJGFjX3N1YmRpci4KLSAgICBhY19kb3RzPWBlY2hvICRh
Y19zdWJkaXIgfAotICAgICAgICAgICAgIHNlZCAncyxeXC4vLCw7cyxbXi9dJCwmLyw7cyxbXi9d
Ki8sLi4vLGcnYAotCi0gICAgY2FzZSAkc3JjZGlyIGluCi0gICAgLikgIyBObyAtLXNyY2RpciBv
cHRpb24uICBXZSBhcmUgYnVpbGRpbmcgaW4gcGxhY2UuCi0gICAgICBhY19zdWJfc3JjZGlyPSRz
cmNkaXIgOzsKLSAgICBbXFwvXSogfCA/OltcXC9dKiApICMgQWJzb2x1dGUgcGF0aC4KLSAgICAg
IGFjX3N1Yl9zcmNkaXI9JHNyY2Rpci8kYWNfc3ViZGlyIDs7Ci0gICAgKikgIyBSZWxhdGl2ZSBw
YXRoLgotICAgICAgYWNfc3ViX3NyY2Rpcj0kYWNfZG90cyRzcmNkaXIvJGFjX3N1YmRpciA7Owot
ICAgIGVzYWMKKyAgZm9yIGFjX2RpciBpbiA6ICRhY19zdWJkaXJzX2FsbDsgZG8gdGVzdCAieCRh
Y19kaXIiID0geDogJiYgY29udGludWUKKyAgICB0ZXN0IC1kICRhY19kaXIgfHwgY29udGludWUK
KyAgICBhY19idWlsZGRpcj0uCisKK2lmIHRlc3QgIiRhY19kaXIiICE9IC47IHRoZW4KKyAgYWNf
ZGlyX3N1ZmZpeD0vYGVjaG8gIiRhY19kaXIiIHwgc2VkICdzLF5cLltcXC9dLCwnYAorICAjIEEg
Ii4uLyIgZm9yIGVhY2ggZGlyZWN0b3J5IGluICRhY19kaXJfc3VmZml4LgorICBhY190b3BfYnVp
bGRkaXI9YGVjaG8gIiRhY19kaXJfc3VmZml4IiB8IHNlZCAncywvW15cXC9dKiwuLi8sZydgCitl
bHNlCisgIGFjX2Rpcl9zdWZmaXg9IGFjX3RvcF9idWlsZGRpcj0KK2ZpCisKK2Nhc2UgJHNyY2Rp
ciBpbgorICAuKSAgIyBObyAtLXNyY2RpciBvcHRpb24uICBXZSBhcmUgYnVpbGRpbmcgaW4gcGxh
Y2UuCisgICAgYWNfc3JjZGlyPS4KKyAgICBpZiB0ZXN0IC16ICIkYWNfdG9wX2J1aWxkZGlyIjsg
dGhlbgorICAgICAgIGFjX3RvcF9zcmNkaXI9LgorICAgIGVsc2UKKyAgICAgICBhY190b3Bfc3Jj
ZGlyPWBlY2hvICRhY190b3BfYnVpbGRkaXIgfCBzZWQgJ3MsLyQsLCdgCisgICAgZmkgOzsKKyAg
W1xcL10qIHwgPzpbXFwvXSogKSAgIyBBYnNvbHV0ZSBwYXRoLgorICAgIGFjX3NyY2Rpcj0kc3Jj
ZGlyJGFjX2Rpcl9zdWZmaXg7CisgICAgYWNfdG9wX3NyY2Rpcj0kc3JjZGlyIDs7CisgICopICMg
UmVsYXRpdmUgcGF0aC4KKyAgICBhY19zcmNkaXI9JGFjX3RvcF9idWlsZGRpciRzcmNkaXIkYWNf
ZGlyX3N1ZmZpeAorICAgIGFjX3RvcF9zcmNkaXI9JGFjX3RvcF9idWlsZGRpciRzcmNkaXIgOzsK
K2VzYWMKK2Nhc2UgIiRhY19kaXIiIGluCisuKSBhY19hYnNfYnVpbGRkaXI9JGFjX2J1aWxkZGly
OzsKKyopCisgIGNhc2UgJGFjX2J1aWxkZGlyIGluCisgIC4pIGFjX2Fic19idWlsZGRpcj0iJGFj
X2RpciI7OworICBbXFwvXSogfCA/OltcXC9dKiApIGFjX2Fic19idWlsZGRpcj0kYWNfYnVpbGRk
aXI7OworICAqKSBhY19hYnNfYnVpbGRkaXI9IiRhY19kaXIiLyRhY19idWlsZGRpcjs7CisgIGVz
YWM7OworZXNhYworY2FzZSAiJGFjX2RpciIgaW4KKy4pIGFjX2Fic190b3BfYnVpbGRkaXI9JHth
Y190b3BfYnVpbGRkaXJ9Ljs7CisqKQorICBjYXNlICR7YWNfdG9wX2J1aWxkZGlyfS4gaW4KKyAg
LikgYWNfYWJzX3RvcF9idWlsZGRpcj0iJGFjX2RpciI7OworICBbXFwvXSogfCA/OltcXC9dKiAp
IGFjX2Fic190b3BfYnVpbGRkaXI9JHthY190b3BfYnVpbGRkaXJ9Ljs7CisgICopIGFjX2Fic190
b3BfYnVpbGRkaXI9IiRhY19kaXIiLyR7YWNfdG9wX2J1aWxkZGlyfS47OworICBlc2FjOzsKK2Vz
YWMKK2Nhc2UgIiRhY19kaXIiIGluCisuKSBhY19hYnNfc3JjZGlyPSRhY19zcmNkaXI7OworKikK
KyAgY2FzZSAkYWNfc3JjZGlyIGluCisgIC4pIGFjX2Fic19zcmNkaXI9IiRhY19kaXIiOzsKKyAg
W1xcL10qIHwgPzpbXFwvXSogKSBhY19hYnNfc3JjZGlyPSRhY19zcmNkaXI7OworICAqKSBhY19h
YnNfc3JjZGlyPSIkYWNfZGlyIi8kYWNfc3JjZGlyOzsKKyAgZXNhYzs7Citlc2FjCitjYXNlICIk
YWNfZGlyIiBpbgorLikgYWNfYWJzX3RvcF9zcmNkaXI9JGFjX3RvcF9zcmNkaXI7OworKikKKyAg
Y2FzZSAkYWNfdG9wX3NyY2RpciBpbgorICAuKSBhY19hYnNfdG9wX3NyY2Rpcj0iJGFjX2RpciI7
OworICBbXFwvXSogfCA/OltcXC9dKiApIGFjX2Fic190b3Bfc3JjZGlyPSRhY190b3Bfc3JjZGly
OzsKKyAgKikgYWNfYWJzX3RvcF9zcmNkaXI9IiRhY19kaXIiLyRhY190b3Bfc3JjZGlyOzsKKyAg
ZXNhYzs7Citlc2FjCiAKKyAgICBjZCAkYWNfZGlyCiAgICAgIyBDaGVjayBmb3IgZ3Vlc3RlZCBj
b25maWd1cmU7IG90aGVyd2lzZSBnZXQgQ3lnbnVzIHN0eWxlIGNvbmZpZ3VyZS4KLSAgICBpZiB0
ZXN0IC1mICRhY19zdWJfc3JjZGlyL2NvbmZpZ3VyZS5nbnU7IHRoZW4KKyAgICBpZiB0ZXN0IC1m
ICRhY19zcmNkaXIvY29uZmlndXJlLmdudTsgdGhlbgogICAgICAgZWNobwotICAgICAgJFNIRUxM
ICRhY19zdWJfc3JjZGlyL2NvbmZpZ3VyZS5nbnUgIC0taGVscD1yZWN1cnNpdmUKLSAgICBlbGlm
IHRlc3QgLWYgJGFjX3N1Yl9zcmNkaXIvY29uZmlndXJlOyB0aGVuCisgICAgICAkU0hFTEwgJGFj
X3NyY2Rpci9jb25maWd1cmUuZ251ICAtLWhlbHA9cmVjdXJzaXZlCisgICAgZWxpZiB0ZXN0IC1m
ICRhY19zcmNkaXIvY29uZmlndXJlOyB0aGVuCiAgICAgICBlY2hvCi0gICAgICAkU0hFTEwgJGFj
X3N1Yl9zcmNkaXIvY29uZmlndXJlICAtLWhlbHA9cmVjdXJzaXZlCi0gICAgZWxpZiB0ZXN0IC1m
ICRhY19zdWJfc3JjZGlyL2NvbmZpZ3VyZS5hYyB8fAotICAgICAgICAgICB0ZXN0IC1mICRhY19z
dWJfc3JjZGlyL2NvbmZpZ3VyZS5pbjsgdGhlbgorICAgICAgJFNIRUxMICRhY19zcmNkaXIvY29u
ZmlndXJlICAtLWhlbHA9cmVjdXJzaXZlCisgICAgZWxpZiB0ZXN0IC1mICRhY19zcmNkaXIvY29u
ZmlndXJlLmFjIHx8CisJICAgdGVzdCAtZiAkYWNfc3JjZGlyL2NvbmZpZ3VyZS5pbjsgdGhlbgog
ICAgICAgZWNobwogICAgICAgJGFjX2NvbmZpZ3VyZSAtLWhlbHAKICAgICBlbHNlCi0gICAgICBl
Y2hvICIkYXNfbWU6IFdBUk5JTkc6IG5vIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gaXMgaW4g
JGFjX3N1YmRpciIgPiYyCisgICAgICBlY2hvICIkYXNfbWU6IFdBUk5JTkc6IG5vIGNvbmZpZ3Vy
YXRpb24gaW5mb3JtYXRpb24gaXMgaW4gJGFjX2RpciIgPiYyCiAgICAgZmkKICAgICBjZCAkYWNf
cG9wZGlyCiAgIGRvbmUKQEAgLTg5NiwzMSArMTE2MiwzMCBAQAogCiB0ZXN0IC1uICIkYWNfaW5p
dF9oZWxwIiAmJiBleGl0IDAKIGlmICRhY19pbml0X3ZlcnNpb247IHRoZW4KLSAgY2F0IDw8XEVP
RgorICBjYXQgPDxcX0FDRU9GCiAKLUNvcHlyaWdodCAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAx
OTk2LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxCi1GcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4KK0NvcHlyaWdodCAoQykgMjAwMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIFRo
aXMgY29uZmlndXJlIHNjcmlwdCBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uCiBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5LCBkaXN0cmlidXRl
IGFuZCBtb2RpZnkgaXQuCi1FT0YKK19BQ0VPRgogICBleGl0IDAKIGZpCiBleGVjIDU+Y29uZmln
LmxvZwotY2F0ID4mNSA8PEVPRgorY2F0ID4mNSA8PF9BQ0VPRgogVGhpcyBmaWxlIGNvbnRhaW5z
IGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hpbGUKIHJ1bm5pbmcgY29uZmln
dXJlLCB0byBhaWQgZGVidWdnaW5nIGlmIGNvbmZpZ3VyZSBtYWtlcyBhIG1pc3Rha2UuCiAKIEl0
IHdhcyBjcmVhdGVkIGJ5ICRhc19tZSwgd2hpY2ggd2FzCi1nZW5lcmF0ZWQgYnkgR05VIEF1dG9j
b25mIDIuNTIuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKK2dlbmVyYXRlZCBieSBHTlUg
QXV0b2NvbmYgMi41OC4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwogCiAgICQgJDAgJEAK
IAotRU9GCitfQUNFT0YKIHsKIGNhdCA8PF9BU1VOQU1FCi0jIyAtLS0tLS0tLS0tICMjCi0jIyBQ
bGF0Zm9ybS4gICMjCi0jIyAtLS0tLS0tLS0tICMjCisjIyAtLS0tLS0tLS0gIyMKKyMjIFBsYXRm
b3JtLiAjIworIyMgLS0tLS0tLS0tICMjCiAKIGhvc3RuYW1lID0gYChob3N0bmFtZSB8fCB1bmFt
ZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgCiB1bmFtZSAtbSA9IGAodW5hbWUgLW0pIDI+L2Rl
di9udWxsIHx8IGVjaG8gdW5rbm93bmAKQEAgLTkzOSw4NCArMTIwNCwxNjEgQEAKIC91c3IvYmlu
L29zbGV2ZWwgICAgICAgPSBgKC91c3IvYmluL29zbGV2ZWwpIDI+L2Rldi9udWxsICAgICAgIHx8
IGVjaG8gdW5rbm93bmAKIC9iaW4vdW5pdmVyc2UgICAgICAgICAgPSBgKC9iaW4vdW5pdmVyc2Up
IDI+L2Rldi9udWxsICAgICAgICAgIHx8IGVjaG8gdW5rbm93bmAKIAotUEFUSCA9ICRQQVRICi0K
IF9BU1VOQU1FCisKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBh
c19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2Rp
ciIgJiYgYXNfZGlyPS4KKyAgZWNobyAiUEFUSDogJGFzX2RpciIKK2RvbmUKKwogfSA+JjUKIAot
Y2F0ID4mNSA8PEVPRgotIyMgLS0tLS0tLS0tLS0tICMjCi0jIyBDb3JlIHRlc3RzLiAgIyMKLSMj
IC0tLS0tLS0tLS0tLSAjIworY2F0ID4mNSA8PF9BQ0VPRgorCisKKyMjIC0tLS0tLS0tLS0tICMj
CisjIyBDb3JlIHRlc3RzLiAjIworIyMgLS0tLS0tLS0tLS0gIyMKKworX0FDRU9GCiAKLUVPRgog
CiAjIEtlZXAgYSB0cmFjZSBvZiB0aGUgY29tbWFuZCBsaW5lLgogIyBTdHJpcCBvdXQgLS1uby1j
cmVhdGUgYW5kIC0tbm8tcmVjdXJzaW9uIHNvIHRoZXkgZG8gbm90IHBpbGUgdXAuCisjIFN0cmlw
IG91dCAtLXNpbGVudCBiZWNhdXNlIHdlIGRvbid0IHdhbnQgdG8gcmVjb3JkIGl0IGZvciBmdXR1
cmUgcnVucy4KICMgQWxzbyBxdW90ZSBhbnkgYXJncyBjb250YWluaW5nIHNoZWxsIG1ldGEtY2hh
cmFjdGVycy4KKyMgTWFrZSB0d28gcGFzc2VzIHRvIGFsbG93IGZvciBwcm9wZXIgZHVwbGljYXRl
LWFyZ3VtZW50IHN1cHByZXNzaW9uLgogYWNfY29uZmlndXJlX2FyZ3M9CithY19jb25maWd1cmVf
YXJnczA9CithY19jb25maWd1cmVfYXJnczE9CiBhY19zZXA9Ci1mb3IgYWNfYXJnCithY19tdXN0
X2tlZXBfbmV4dD1mYWxzZQorZm9yIGFjX3Bhc3MgaW4gMSAyCiBkbwotICBjYXNlICRhY19hcmcg
aW4KLSAgLW5vLWNyZWF0ZSB8IC0tbm8tY3JlYXRlIHwgLS1uby1jcmVhdCB8IC0tbm8tY3JlYSB8
IC0tbm8tY3JlIFwKLSAgfCAtLW5vLWNyIHwgLS1uby1jKSA7OwotICAtbm8tcmVjdXJzaW9uIHwg
LS1uby1yZWN1cnNpb24gfCAtLW5vLXJlY3Vyc2lvIHwgLS1uby1yZWN1cnNpIFwKLSAgfCAtLW5v
LXJlY3VycyB8IC0tbm8tcmVjdXIgfCAtLW5vLXJlY3UgfCAtLW5vLXJlYyB8IC0tbm8tcmUgfCAt
LW5vLXIpIDs7Ci0gICoiICIqfCoiCSIqfCpbXFtcXVx+XCNcJFxeXCZcKlwoXClce1x9XFxcfFw7
XDxcPlw/XCJcJ10qKQotICAgIGFjX2FyZz1gZWNobyAiJGFjX2FyZyIgfCBzZWQgInMvJy8nXFxc
XFxcXFwnJy9nImAKLSAgICBhY19jb25maWd1cmVfYXJncz0iJGFjX2NvbmZpZ3VyZV9hcmdzJGFj
X3NlcCckYWNfYXJnJyIKLSAgICBhY19zZXA9IiAiIDs7Ci0gICopIGFjX2NvbmZpZ3VyZV9hcmdz
PSIkYWNfY29uZmlndXJlX2FyZ3MkYWNfc2VwJGFjX2FyZyIKLSAgICAgYWNfc2VwPSIgIiA7Owot
ICBlc2FjCi0gICMgR2V0IHJpZCBvZiB0aGUgbGVhZGluZyBzcGFjZS4KKyAgZm9yIGFjX2FyZwor
ICBkbworICAgIGNhc2UgJGFjX2FyZyBpbgorICAgIC1uby1jcmVhdGUgfCAtLW5vLWMqIHwgLW4g
fCAtbm8tcmVjdXJzaW9uIHwgLS1uby1yKikgY29udGludWUgOzsKKyAgICAtcSB8IC1xdWlldCB8
IC0tcXVpZXQgfCAtLXF1aWUgfCAtLXF1aSB8IC0tcXUgfCAtLXEgXAorICAgIHwgLXNpbGVudCB8
IC0tc2lsZW50IHwgLS1zaWxlbiB8IC0tc2lsZSB8IC0tc2lsKQorICAgICAgY29udGludWUgOzsK
KyAgICAqIiAiKnwqIgkiKnwqW1xbXF1cflwjXCRcXlwmXCpcKFwpXHtcfVxcXHxcO1w8XD5cP1wi
XCddKikKKyAgICAgIGFjX2FyZz1gZWNobyAiJGFjX2FyZyIgfCBzZWQgInMvJy8nXFxcXFxcXFwn
Jy9nImAgOzsKKyAgICBlc2FjCisgICAgY2FzZSAkYWNfcGFzcyBpbgorICAgIDEpIGFjX2NvbmZp
Z3VyZV9hcmdzMD0iJGFjX2NvbmZpZ3VyZV9hcmdzMCAnJGFjX2FyZyciIDs7CisgICAgMikKKyAg
ICAgIGFjX2NvbmZpZ3VyZV9hcmdzMT0iJGFjX2NvbmZpZ3VyZV9hcmdzMSAnJGFjX2FyZyciCisg
ICAgICBpZiB0ZXN0ICRhY19tdXN0X2tlZXBfbmV4dCA9IHRydWU7IHRoZW4KKwlhY19tdXN0X2tl
ZXBfbmV4dD1mYWxzZSAjIEdvdCB2YWx1ZSwgYmFjayB0byBub3JtYWwuCisgICAgICBlbHNlCisJ
Y2FzZSAkYWNfYXJnIGluCisJICAqPSogfCAtLWNvbmZpZy1jYWNoZSB8IC1DIHwgLWRpc2FibGUt
KiB8IC0tZGlzYWJsZS0qIFwKKwkgIHwgLWVuYWJsZS0qIHwgLS1lbmFibGUtKiB8IC1nYXMgfCAt
LWcqIHwgLW5mcCB8IC0tbmYqIFwKKwkgIHwgLXEgfCAtcXVpZXQgfCAtLXEqIHwgLXNpbGVudCB8
IC0tc2lsKiB8IC12IHwgLXZlcmIqIFwKKwkgIHwgLXdpdGgtKiB8IC0td2l0aC0qIHwgLXdpdGhv
dXQtKiB8IC0td2l0aG91dC0qIHwgLS14KQorCSAgICBjYXNlICIkYWNfY29uZmlndXJlX2FyZ3Mw
ICIgaW4KKwkgICAgICAiJGFjX2NvbmZpZ3VyZV9hcmdzMSIqIiAnJGFjX2FyZycgIiogKSBjb250
aW51ZSA7OworCSAgICBlc2FjCisJICAgIDs7CisJICAtKiApIGFjX211c3Rfa2VlcF9uZXh0PXRy
dWUgOzsKKwllc2FjCisgICAgICBmaQorICAgICAgYWNfY29uZmlndXJlX2FyZ3M9IiRhY19jb25m
aWd1cmVfYXJncyRhY19zZXAnJGFjX2FyZyciCisgICAgICAjIEdldCByaWQgb2YgdGhlIGxlYWRp
bmcgc3BhY2UuCisgICAgICBhY19zZXA9IiAiCisgICAgICA7OworICAgIGVzYWMKKyAgZG9uZQog
ZG9uZQorJGFzX3Vuc2V0IGFjX2NvbmZpZ3VyZV9hcmdzMCB8fCB0ZXN0ICIke2FjX2NvbmZpZ3Vy
ZV9hcmdzMCtzZXR9IiAhPSBzZXQgfHwgeyBhY19jb25maWd1cmVfYXJnczA9OyBleHBvcnQgYWNf
Y29uZmlndXJlX2FyZ3MwOyB9CiskYXNfdW5zZXQgYWNfY29uZmlndXJlX2FyZ3MxIHx8IHRlc3Qg
IiR7YWNfY29uZmlndXJlX2FyZ3MxK3NldH0iICE9IHNldCB8fCB7IGFjX2NvbmZpZ3VyZV9hcmdz
MT07IGV4cG9ydCBhY19jb25maWd1cmVfYXJnczE7IH0KIAogIyBXaGVuIGludGVycnVwdGVkIG9y
IGV4aXQnZCwgY2xlYW51cCB0ZW1wb3JhcnkgZmlsZXMsIGFuZCBjb21wbGV0ZQogIyBjb25maWcu
bG9nLiAgV2UgcmVtb3ZlIGNvbW1lbnRzIGJlY2F1c2UgYW55d2F5IHRoZSBxdW90ZXMgaW4gdGhl
cmUKICMgd291bGQgY2F1c2UgcHJvYmxlbXMgb3IgbG9vayB1Z2x5LgorIyBXQVJOSU5HOiBCZSBz
dXJlIG5vdCB0byB1c2Ugc2luZ2xlIHF1b3RlcyBpbiB0aGVyZSwgYXMgc29tZSBzaGVsbHMsCisj
IHN1Y2ggYXMgb3VyIERVIDUuMCBmcmllbmQsIHdpbGwgdGhlbiBgY2xvc2UnIHRoZSB0cmFwLgog
dHJhcCAnZXhpdF9zdGF0dXM9JD8KICAgIyBTYXZlIGludG8gY29uZmlnLmxvZyBzb21lIGluZm9y
bWF0aW9uIHRoYXQgbWlnaHQgaGVscCBpbiBkZWJ1Z2dpbmcuCi0gIGVjaG8gPiY1Ci0gIGVjaG8g
IiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjIiA+JjUKLSAgZWNobyAiIyMgQ2FjaGUgdmFyaWFibGVz
LiAgIyMiID4mNQotICBlY2hvICIjIyAtLS0tLS0tLS0tLS0tLS0tLSAjIyIgPiY1Ci0gIGVjaG8g
PiY1Ci0gICMgVGhlIGZvbGxvd2luZyB3YXkgb2Ygd3JpdGluZyB0aGUgY2FjaGUgbWlzaGFuZGxl
cyBuZXdsaW5lcyBpbiB2YWx1ZXMsCisgIHsKKyAgICBlY2hvCisKKyAgICBjYXQgPDxcX0FTQk9Y
CisjIyAtLS0tLS0tLS0tLS0tLS0tICMjCisjIyBDYWNoZSB2YXJpYWJsZXMuICMjCisjIyAtLS0t
LS0tLS0tLS0tLS0tICMjCitfQVNCT1gKKyAgICBlY2hvCisgICAgIyBUaGUgZm9sbG93aW5nIHdh
eSBvZiB3cml0aW5nIHRoZSBjYWNoZSBtaXNoYW5kbGVzIG5ld2xpbmVzIGluIHZhbHVlcywKIHsK
ICAgKHNldCkgMj4mMSB8CiAgICAgY2FzZSBgKGFjX3NwYWNlPSciJyInICciJyInOyBzZXQgfCBn
cmVwIGFjX3NwYWNlKSAyPiYxYCBpbgogICAgICphY19zcGFjZT1cICopCiAgICAgICBzZWQgLW4g
XAotICAgICAgICAicy8nIiciJy8nIiciJ1xcXFwnIiciJyciJyInL2c7Ci0gICAgCSAgcy9eXFwo
W18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qXFwpPVxcKC4qXFwpL1xcMT0nIici
J1xcMiciJyInL3AiCisJInMvJyInIicvJyInIidcXFxcJyInIicnIiciJy9nOworCSAgcy9eXFwo
W18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qXFwpPVxcKC4qXFwpL1xcMT0nIici
J1xcMiciJyInL3AiCiAgICAgICA7OwogICAgICopCiAgICAgICBzZWQgLW4gXAotICAgICAgICAi
cy9eXFwoW18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qXFwpPVxcKC4qXFwpL1xc
MT1cXDIvcCIKKwkicy9eXFwoW18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qXFwp
PVxcKC4qXFwpL1xcMT1cXDIvcCIKICAgICAgIDs7CiAgICAgZXNhYzsKLX0gPiY1Ci0gIHNlZCAi
L14kL2QiIGNvbmZkZWZzLmggPmNvbmZ0ZXN0LmxvZwotICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0Lmxv
ZzsgdGhlbgotICAgIGVjaG8gPiY1Ci0gICAgZWNobyAiIyMgLS0tLS0tLS0tLS0tICMjIiA+JjUK
LSAgICBlY2hvICIjIyBjb25mZGVmcy5oLiAgIyMiID4mNQotICAgIGVjaG8gIiMjIC0tLS0tLS0t
LS0tLSAjIyIgPiY1Ci0gICAgZWNobyA+JjUKLSAgICBjYXQgY29uZnRlc3QubG9nID4mNQotICBm
aQotICAoZWNobzsgZWNobykgPiY1Ci0gIHRlc3QgIiRhY19zaWduYWwiICE9IDAgJiYKLSAgICBl
Y2hvICIkYXNfbWU6IGNhdWdodCBzaWduYWwgJGFjX3NpZ25hbCIgPiY1Ci0gIGVjaG8gIiRhc19t
ZTogZXhpdCAkZXhpdF9zdGF0dXMiID4mNQotICBybSAtcmYgY29uZnRlc3QqIGNvbmZkZWZzKiBj
b3JlIGNvcmUuKiAqLmNvcmUgY29uZiQkKiAkYWNfY2xlYW5fZmlsZXMgJiYKLSAgICBleGl0ICRl
eGl0X3N0YXR1cwotICAgICAnIDAKLWZvciBhY19zaWduYWwgaW4gMSAyIDEzIDE1OyBkbwotICB0
cmFwICdhY19zaWduYWw9JyRhY19zaWduYWwnOyB7IChleGl0IDEpOyBleGl0IDE7IH0nICRhY19z
aWduYWwKLWRvbmUKK30KKyAgICBlY2hvCisKKyAgICBjYXQgPDxcX0FTQk9YCisjIyAtLS0tLS0t
LS0tLS0tLS0tLSAjIworIyMgT3V0cHV0IHZhcmlhYmxlcy4gIyMKKyMjIC0tLS0tLS0tLS0tLS0t
LS0tICMjCitfQVNCT1gKKyAgICBlY2hvCisgICAgZm9yIGFjX3ZhciBpbiAkYWNfc3Vic3RfdmFy
cworICAgIGRvCisgICAgICBldmFsIGFjX3ZhbD0kYGVjaG8gJGFjX3ZhcmAKKyAgICAgIGVjaG8g
IiRhY192YXI9JyInIickYWNfdmFsJyInIiciCisgICAgZG9uZSB8IHNvcnQKKyAgICBlY2hvCisK
KyAgICBpZiB0ZXN0IC1uICIkYWNfc3Vic3RfZmlsZXMiOyB0aGVuCisgICAgICBjYXQgPDxcX0FT
Qk9YCisjIyAtLS0tLS0tLS0tLS0tICMjCisjIyBPdXRwdXQgZmlsZXMuICMjCisjIyAtLS0tLS0t
LS0tLS0tICMjCitfQVNCT1gKKyAgICAgIGVjaG8KKyAgICAgIGZvciBhY192YXIgaW4gJGFjX3N1
YnN0X2ZpbGVzCisgICAgICBkbworCWV2YWwgYWNfdmFsPSRgZWNobyAkYWNfdmFyYAorCWVjaG8g
IiRhY192YXI9JyInIickYWNfdmFsJyInIiciCisgICAgICBkb25lIHwgc29ydAorICAgICAgZWNo
bworICAgIGZpCisKKyAgICBpZiB0ZXN0IC1zIGNvbmZkZWZzLmg7IHRoZW4KKyAgICAgIGNhdCA8
PFxfQVNCT1gKKyMjIC0tLS0tLS0tLS0tICMjCisjIyBjb25mZGVmcy5oLiAjIworIyMgLS0tLS0t
LS0tLS0gIyMKK19BU0JPWAorICAgICAgZWNobworICAgICAgc2VkICIvXiQvZCIgY29uZmRlZnMu
aCB8IHNvcnQKKyAgICAgIGVjaG8KKyAgICBmaQorICAgIHRlc3QgIiRhY19zaWduYWwiICE9IDAg
JiYKKyAgICAgIGVjaG8gIiRhc19tZTogY2F1Z2h0IHNpZ25hbCAkYWNfc2lnbmFsIgorICAgIGVj
aG8gIiRhc19tZTogZXhpdCAkZXhpdF9zdGF0dXMiCisgIH0gPiY1CisgIHJtIC1mIGNvcmUgKi5j
b3JlICYmCisgIHJtIC1yZiBjb25mdGVzdCogY29uZmRlZnMqIGNvbmYkJCogJGFjX2NsZWFuX2Zp
bGVzICYmCisgICAgZXhpdCAkZXhpdF9zdGF0dXMKKyAgICAgJyAwCitmb3IgYWNfc2lnbmFsIGlu
IDEgMiAxMyAxNTsgZG8KKyAgdHJhcCAnYWNfc2lnbmFsPSckYWNfc2lnbmFsJzsgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9JyAkYWNfc2lnbmFsCitkb25lCiBhY19zaWduYWw9MAogCiAjIGNvbmZkZWZz
LmggYXZvaWRzIE9TIGNvbW1hbmQgbGluZSBsZW5ndGggbGltaXRzIHRoYXQgREVGUyBjYW4gZXhj
ZWVkLgpAQCAtMTAyNCw2ICsxMzY2LDMzIEBACiAjIEFJWCBjcHAgbG9zZXMgb24gYW4gZW1wdHkg
ZmlsZSwgc28gbWFrZSBzdXJlIGl0IGNvbnRhaW5zIGF0IGxlYXN0IGEgbmV3bGluZS4KIGVjaG8g
PmNvbmZkZWZzLmgKIAorIyBQcmVkZWZpbmVkIHByZXByb2Nlc3NvciB2YXJpYWJsZXMuCisKK2Nh
dCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgUEFDS0FHRV9OQU1FICIkUEFDS0FHRV9O
QU1FIgorX0FDRU9GCisKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBQQUNL
QUdFX1RBUk5BTUUgIiRQQUNLQUdFX1RBUk5BTUUiCitfQUNFT0YKKworCitjYXQgPj5jb25mZGVm
cy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiJFBBQ0tBR0VfVkVSU0lPTiIK
K19BQ0VPRgorCisKK2NhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgUEFDS0FHRV9T
VFJJTkcgIiRQQUNLQUdFX1NUUklORyIKK19BQ0VPRgorCisKK2NhdCA+PmNvbmZkZWZzLmggPDxf
QUNFT0YKKyNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiRQQUNLQUdFX0JVR1JFUE9SVCIKK19B
Q0VPRgorCisKICMgTGV0IHRoZSBzaXRlIGZpbGUgc2VsZWN0IGFuIGFsdGVybmF0ZSBjYWNoZSBm
aWxlIGlmIGl0IHdhbnRzIHRvLgogIyBQcmVmZXIgZXhwbGljaXRseSBzZWxlY3RlZCBmaWxlIHRv
IGF1dG9tYXRpY2FsbHkgc2VsZWN0ZWQgb25lcy4KIGlmIHRlc3QgLXogIiRDT05GSUdfU0lURSI7
IHRoZW4KQEAgLTEwMzUsOSArMTQwNCw5IEBACiBmaQogZm9yIGFjX3NpdGVfZmlsZSBpbiAkQ09O
RklHX1NJVEU7IGRvCiAgIGlmIHRlc3QgLXIgIiRhY19zaXRlX2ZpbGUiOyB0aGVuCi0gICAgeyBl
Y2hvICIkYXNfbWU6MTAzMjogbG9hZGluZyBzaXRlIHNjcmlwdCAkYWNfc2l0ZV9maWxlIiA+JjUK
KyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBsb2FkaW5nIHNpdGUgc2NyaXB0ICRhY19zaXRl
X2ZpbGUiID4mNQogZWNobyAiJGFzX21lOiBsb2FkaW5nIHNpdGUgc2NyaXB0ICRhY19zaXRlX2Zp
bGUiID4mNjt9Ci0gICAgY2F0ICIkYWNfc2l0ZV9maWxlIiA+JjUKKyAgICBzZWQgJ3MvXi98IC8n
ICIkYWNfc2l0ZV9maWxlIiA+JjUKICAgICAuICIkYWNfc2l0ZV9maWxlIgogICBmaQogZG9uZQpA
QCAtMTA0Niw3ICsxNDE1LDcgQEAKICAgIyBTb21lIHZlcnNpb25zIG9mIGJhc2ggd2lsbCBmYWls
IHRvIHNvdXJjZSAvZGV2L251bGwgKHNwZWNpYWwKICAgIyBmaWxlcyBhY3R1YWxseSksIHNvIHdl
IGF2b2lkIGRvaW5nIHRoYXQuCiAgIGlmIHRlc3QgLWYgIiRjYWNoZV9maWxlIjsgdGhlbgotICAg
IHsgZWNobyAiJGFzX21lOjEwNDM6IGxvYWRpbmcgY2FjaGUgJGNhY2hlX2ZpbGUiID4mNQorICAg
IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGxvYWRpbmcgY2FjaGUgJGNhY2hlX2ZpbGUiID4mNQog
ZWNobyAiJGFzX21lOiBsb2FkaW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjY7fQogICAgIGNhc2Ug
JGNhY2hlX2ZpbGUgaW4KICAgICAgIFtcXC9dKiB8ID86W1xcL10qICkgLiAkY2FjaGVfZmlsZTs7
CkBAIC0xMDU0LDcgKzE0MjMsNyBAQAogICAgIGVzYWMKICAgZmkKIGVsc2UKLSAgeyBlY2hvICIk
YXNfbWU6MTA1MTogY3JlYXRpbmcgY2FjaGUgJGNhY2hlX2ZpbGUiID4mNQorICB7IGVjaG8gIiRh
c19tZTokTElORU5POiBjcmVhdGluZyBjYWNoZSAkY2FjaGVfZmlsZSIgPiY1CiBlY2hvICIkYXNf
bWU6IGNyZWF0aW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjY7fQogICA+JGNhY2hlX2ZpbGUKIGZp
CkBAIC0xMDYzLDQ5ICsxNDMyLDQ5IEBACiAjIHZhbHVlLgogYWNfY2FjaGVfY29ycnVwdGVkPWZh
bHNlCiBmb3IgYWNfdmFyIGluIGAoc2V0KSAyPiYxIHwKLSAgICAgICAgICAgICAgIHNlZCAtbiAn
cy9eYWNfZW52X1woW2EtekEtWl8wLTldKlwpX3NldD0uKi9cMS9wJ2A7IGRvCisJICAgICAgIHNl
ZCAtbiAncy9eYWNfZW52X1woW2EtekEtWl8wLTldKlwpX3NldD0uKi9cMS9wJ2A7IGRvCiAgIGV2
YWwgYWNfb2xkX3NldD1cJGFjX2N2X2Vudl8ke2FjX3Zhcn1fc2V0CiAgIGV2YWwgYWNfbmV3X3Nl
dD1cJGFjX2Vudl8ke2FjX3Zhcn1fc2V0CiAgIGV2YWwgYWNfb2xkX3ZhbD0iXCRhY19jdl9lbnZf
JHthY192YXJ9X3ZhbHVlIgogICBldmFsIGFjX25ld192YWw9IlwkYWNfZW52XyR7YWNfdmFyfV92
YWx1ZSIKICAgY2FzZSAkYWNfb2xkX3NldCwkYWNfbmV3X3NldCBpbgogICAgIHNldCwpCi0gICAg
ICB7IGVjaG8gIiRhc19tZToxMDY3OiBlcnJvcjogXGAkYWNfdmFyJyB3YXMgc2V0IHRvIFxgJGFj
X29sZF92YWwnIGluIHRoZSBwcmV2aW91cyBydW4iID4mNQorICAgICAgeyBlY2hvICIkYXNfbWU6
JExJTkVOTzogZXJyb3I6IFxgJGFjX3Zhcicgd2FzIHNldCB0byBcYCRhY19vbGRfdmFsJyBpbiB0
aGUgcHJldmlvdXMgcnVuIiA+JjUKIGVjaG8gIiRhc19tZTogZXJyb3I6IFxgJGFjX3Zhcicgd2Fz
IHNldCB0byBcYCRhY19vbGRfdmFsJyBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjI7fQogICAgICAg
YWNfY2FjaGVfY29ycnVwdGVkPTogOzsKICAgICAsc2V0KQotICAgICAgeyBlY2hvICIkYXNfbWU6
MTA3MTogZXJyb3I6IFxgJGFjX3Zhcicgd2FzIG5vdCBzZXQgaW4gdGhlIHByZXZpb3VzIHJ1biIg
PiY1CisgICAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogXGAkYWNfdmFyJyB3YXMg
bm90IHNldCBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjUKIGVjaG8gIiRhc19tZTogZXJyb3I6IFxg
JGFjX3Zhcicgd2FzIG5vdCBzZXQgaW4gdGhlIHByZXZpb3VzIHJ1biIgPiYyO30KICAgICAgIGFj
X2NhY2hlX2NvcnJ1cHRlZD06IDs7CiAgICAgLCk7OwogICAgICopCiAgICAgICBpZiB0ZXN0ICJ4
JGFjX29sZF92YWwiICE9ICJ4JGFjX25ld192YWwiOyB0aGVuCi0gICAgICAgIHsgZWNobyAiJGFz
X21lOjEwNzc6IGVycm9yOiBcYCRhY192YXInIGhhcyBjaGFuZ2VkIHNpbmNlIHRoZSBwcmV2aW91
cyBydW46IiA+JjUKKwl7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogXGAkYWNfdmFyJyBo
YXMgY2hhbmdlZCBzaW5jZSB0aGUgcHJldmlvdXMgcnVuOiIgPiY1CiBlY2hvICIkYXNfbWU6IGVy
cm9yOiBcYCRhY192YXInIGhhcyBjaGFuZ2VkIHNpbmNlIHRoZSBwcmV2aW91cyBydW46IiA+JjI7
fQotICAgICAgICB7IGVjaG8gIiRhc19tZToxMDc5OiAgIGZvcm1lciB2YWx1ZTogICRhY19vbGRf
dmFsIiA+JjUKKwl7IGVjaG8gIiRhc19tZTokTElORU5POiAgIGZvcm1lciB2YWx1ZTogICRhY19v
bGRfdmFsIiA+JjUKIGVjaG8gIiRhc19tZTogICBmb3JtZXIgdmFsdWU6ICAkYWNfb2xkX3ZhbCIg
PiYyO30KLSAgICAgICAgeyBlY2hvICIkYXNfbWU6MTA4MTogICBjdXJyZW50IHZhbHVlOiAkYWNf
bmV3X3ZhbCIgPiY1CisJeyBlY2hvICIkYXNfbWU6JExJTkVOTzogICBjdXJyZW50IHZhbHVlOiAk
YWNfbmV3X3ZhbCIgPiY1CiBlY2hvICIkYXNfbWU6ICAgY3VycmVudCB2YWx1ZTogJGFjX25ld192
YWwiID4mMjt9Ci0gICAgICAgIGFjX2NhY2hlX2NvcnJ1cHRlZD06CisJYWNfY2FjaGVfY29ycnVw
dGVkPToKICAgICAgIGZpOzsKICAgZXNhYwotICAjIFBhc3MgcHJlY2lvdXMgdmFyaWFibGVzIHRv
IGNvbmZpZy5zdGF0dXMuICBJdCBkb2Vzbid0IG1hdHRlciBpZgotICAjIHdlIHBhc3Mgc29tZSB0
d2ljZSAoaW4gYWRkaXRpb24gdG8gdGhlIGNvbW1hbmQgbGluZSBhcmd1bWVudHMpLgorICAjIFBh
c3MgcHJlY2lvdXMgdmFyaWFibGVzIHRvIGNvbmZpZy5zdGF0dXMuCiAgIGlmIHRlc3QgIiRhY19u
ZXdfc2V0IiA9IHNldDsgdGhlbgogICAgIGNhc2UgJGFjX25ld192YWwgaW4KICAgICAqIiAiKnwq
IgkiKnwqW1xbXF1cflwjXCRcXlwmXCpcKFwpXHtcfVxcXHxcO1w8XD5cP1wiXCddKikKLSAgICAg
IGFjX2FyZz0kYWNfdmFyPWBlY2hvICIkYWNfbmV3X3ZhbCIgfCBzZWQgInMvJy8nXFxcXFxcXFwn
Jy9nImAKLSAgICAgIGFjX2NvbmZpZ3VyZV9hcmdzPSIkYWNfY29uZmlndXJlX2FyZ3MgJyRhY19h
cmcnIgotICAgICAgOzsKLSAgICAqKSBhY19jb25maWd1cmVfYXJncz0iJGFjX2NvbmZpZ3VyZV9h
cmdzICRhY192YXI9JGFjX25ld192YWwiCi0gICAgICAgOzsKKyAgICAgIGFjX2FyZz0kYWNfdmFy
PWBlY2hvICIkYWNfbmV3X3ZhbCIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImAgOzsKKyAgICAq
KSBhY19hcmc9JGFjX3Zhcj0kYWNfbmV3X3ZhbCA7OworICAgIGVzYWMKKyAgICBjYXNlICIgJGFj
X2NvbmZpZ3VyZV9hcmdzICIgaW4KKyAgICAgICoiICckYWNfYXJnJyAiKikgOzsgIyBBdm9pZCBk
dXBzLiAgVXNlIG9mIHF1b3RlcyBlbnN1cmVzIGFjY3VyYWN5LgorICAgICAgKikgYWNfY29uZmln
dXJlX2FyZ3M9IiRhY19jb25maWd1cmVfYXJncyAnJGFjX2FyZyciIDs7CiAgICAgZXNhYwogICBm
aQogZG9uZQogaWYgJGFjX2NhY2hlX2NvcnJ1cHRlZDsgdGhlbgotICB7IGVjaG8gIiRhc19tZTox
MTAwOiBlcnJvcjogY2hhbmdlcyBpbiB0aGUgZW52aXJvbm1lbnQgY2FuIGNvbXByb21pc2UgdGhl
IGJ1aWxkIiA+JjUKKyAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNoYW5nZXMgaW4g
dGhlIGVudmlyb25tZW50IGNhbiBjb21wcm9taXNlIHRoZSBidWlsZCIgPiY1CiBlY2hvICIkYXNf
bWU6IGVycm9yOiBjaGFuZ2VzIGluIHRoZSBlbnZpcm9ubWVudCBjYW4gY29tcHJvbWlzZSB0aGUg
YnVpbGQiID4mMjt9Ci0gIHsgeyBlY2hvICIkYXNfbWU6MTEwMjogZXJyb3I6IHJ1biBcYG1ha2Ug
ZGlzdGNsZWFuJyBhbmQvb3IgXGBybSAkY2FjaGVfZmlsZScgYW5kIHN0YXJ0IG92ZXIiID4mNQor
ICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBydW4gXGBtYWtlIGRpc3RjbGVhbicg
YW5kL29yIFxgcm0gJGNhY2hlX2ZpbGUnIGFuZCBzdGFydCBvdmVyIiA+JjUKIGVjaG8gIiRhc19t
ZTogZXJyb3I6IHJ1biBcYG1ha2UgZGlzdGNsZWFuJyBhbmQvb3IgXGBybSAkY2FjaGVfZmlsZScg
YW5kIHN0YXJ0IG92ZXIiID4mMjt9CiAgICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KIGZpCkBA
IC0xMTE2LDI2ICsxNDg1LDI4IEBACiBhY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0
ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1Jwog
YWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBpbGVyX2dudQogCi1jYXNlIGBlY2hvICJ0ZXN0
aW5nXGMiOyBlY2hvIDEsMiwzYCxgZWNobyAtbiB0ZXN0aW5nOyBlY2hvIDEsMiwzYCBpbgotICAq
YyosLW4qKSBFQ0hPX049IEVDSE9fQz0nCi0nIEVDSE9fVD0nCScgOzsKLSAgKmMqLCogICkgRUNI
T19OPS1uIEVDSE9fQz0gRUNIT19UPSA7OwotICAqKSAgICAgIEVDSE9fTj0gRUNIT19DPSdcYycg
RUNIT19UPSA7OwotZXNhYwotZWNobyAiIyEgJFNIRUxMIiA+Y29uZnRlc3Quc2gKLWVjaG8gICJl
eGl0IDAiICAgPj5jb25mdGVzdC5zaAotY2htb2QgK3ggY29uZnRlc3Quc2gKLWlmIHsgKGVjaG8g
IiRhc19tZToxMTIyOiBQQVRIPVwiLjsuXCI7IGNvbmZ0ZXN0LnNoIikgPiY1Ci0gIChQQVRIPSIu
Oy4iOyBjb25mdGVzdC5zaCkgMj4mNQotICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjEx
MjU6IFwkPyA9ICRhY19zdGF0dXMiID4mNQotICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhlbgot
ICBhY19wYXRoX3NlcGFyYXRvcj0nOycKLWVsc2UKLSAgYWNfcGF0aF9zZXBhcmF0b3I9OgotZmkK
LVBBVEhfU0VQQVJBVE9SPSIkYWNfcGF0aF9zZXBhcmF0b3IiCi1ybSAtZiBjb25mdGVzdC5zaAor
CisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCiAKIERFVklMX01BSk9S
PTEKIERFVklMX01JTk9SPTYKQEAgLTExNDMsNiArMTUxNCw5IEBACiBERVZJTF9WRVJTSU9OPSRE
RVZJTF9NQUpPUiRERVZJTF9NSU5PUiRERVZJTF9SRVZJU0lPTgogREVWSUxfTFRWRVJTSU9OPTE6
JERFVklMX1ZFUlNJT046MAogCisKKworCiBhY19hdXhfZGlyPQogZm9yIGFjX2RpciBpbiBsaWJ0
b29scyAkc3JjZGlyL2xpYnRvb2xzOyBkbwogICBpZiB0ZXN0IC1mICRhY19kaXIvaW5zdGFsbC1z
aDsgdGhlbgpAQCAtMTE2MCw3ICsxNTM0LDcgQEAKICAgZmkKIGRvbmUKIGlmIHRlc3QgLXogIiRh
Y19hdXhfZGlyIjsgdGhlbgotICB7IHsgZWNobyAiJGFzX21lOjExNTc6IGVycm9yOiBjYW5ub3Qg
ZmluZCBpbnN0YWxsLXNoIG9yIGluc3RhbGwuc2ggaW4gbGlidG9vbHMgJHNyY2Rpci9saWJ0b29s
cyIgPiY1CisgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIGlu
c3RhbGwtc2ggb3IgaW5zdGFsbC5zaCBpbiBsaWJ0b29scyAkc3JjZGlyL2xpYnRvb2xzIiA+JjUK
IGVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBmaW5kIGluc3RhbGwtc2ggb3IgaW5zdGFsbC5z
aCBpbiBsaWJ0b29scyAkc3JjZGlyL2xpYnRvb2xzIiA+JjI7fQogICAgeyAoZXhpdCAxKTsgZXhp
dCAxOyB9OyB9CiBmaQpAQCAtMTE2OCwxMyArMTU0MiwxNCBAQAogYWNfY29uZmlnX3N1Yj0iJFNI
RUxMICRhY19hdXhfZGlyL2NvbmZpZy5zdWIiCiBhY19jb25maWd1cmU9IiRTSEVMTCAkYWNfYXV4
X2Rpci9jb25maWd1cmUiICMgVGhpcyBzaG91bGQgYmUgQ3lnbnVzIGNvbmZpZ3VyZS4KIAorCiAj
IE1ha2Ugc3VyZSB3ZSBjYW4gcnVuIGNvbmZpZy5zdWIuCiAkYWNfY29uZmlnX3N1YiBzdW40ID4v
ZGV2L251bGwgMj4mMSB8fAotICB7IHsgZWNobyAiJGFzX21lOjExNjc6IGVycm9yOiBjYW5ub3Qg
cnVuICRhY19jb25maWdfc3ViIiA+JjUKKyAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJv
cjogY2Fubm90IHJ1biAkYWNfY29uZmlnX3N1YiIgPiY1CiBlY2hvICIkYXNfbWU6IGVycm9yOiBj
YW5ub3QgcnVuICRhY19jb25maWdfc3ViIiA+JjI7fQogICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9
OyB9CiAKLWVjaG8gIiRhc19tZToxMTcxOiBjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZSIgPiY1
CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUiID4mNQog
ZWNobyAkRUNIT19OICJjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZS4uLiAkRUNIT19DIiA+JjYK
IGlmIHRlc3QgIiR7YWNfY3ZfYnVpbGQrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19O
ICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTExODMsMjMgKzE1NTgsMjQgQEAKIHRlc3QgLXog
IiRhY19jdl9idWlsZF9hbGlhcyIgJiYKICAgYWNfY3ZfYnVpbGRfYWxpYXM9YCRhY19jb25maWdf
Z3Vlc3NgCiB0ZXN0IC16ICIkYWNfY3ZfYnVpbGRfYWxpYXMiICYmCi0gIHsgeyBlY2hvICIkYXNf
bWU6MTE4MDogZXJyb3I6IGNhbm5vdCBndWVzcyBidWlsZCB0eXBlOyB5b3UgbXVzdCBzcGVjaWZ5
IG9uZSIgPiY1CisgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBndWVz
cyBidWlsZCB0eXBlOyB5b3UgbXVzdCBzcGVjaWZ5IG9uZSIgPiY1CiBlY2hvICIkYXNfbWU6IGVy
cm9yOiBjYW5ub3QgZ3Vlc3MgYnVpbGQgdHlwZTsgeW91IG11c3Qgc3BlY2lmeSBvbmUiID4mMjt9
CiAgICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KIGFjX2N2X2J1aWxkPWAkYWNfY29uZmlnX3N1
YiAkYWNfY3ZfYnVpbGRfYWxpYXNgIHx8Ci0gIHsgeyBlY2hvICIkYXNfbWU6MTE4NDogZXJyb3I6
ICRhY19jb25maWdfc3ViICRhY19jdl9idWlsZF9hbGlhcyBmYWlsZWQuIiA+JjUKLWVjaG8gIiRh
c19tZTogZXJyb3I6ICRhY19jb25maWdfc3ViICRhY19jdl9idWlsZF9hbGlhcyBmYWlsZWQuIiA+
JjI7fQorICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiAkYWNfY29uZmlnX3N1YiAk
YWNfY3ZfYnVpbGRfYWxpYXMgZmFpbGVkIiA+JjUKK2VjaG8gIiRhc19tZTogZXJyb3I6ICRhY19j
b25maWdfc3ViICRhY19jdl9idWlsZF9hbGlhcyBmYWlsZWQiID4mMjt9CiAgICB7IChleGl0IDEp
OyBleGl0IDE7IH07IH0KIAogZmkKLWVjaG8gIiRhc19tZToxMTg5OiByZXN1bHQ6ICRhY19jdl9i
dWlsZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfYnVpbGQiID4m
NQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2J1aWxkIiA+JjYKIGJ1aWxkPSRhY19jdl9idWlsZAog
YnVpbGRfY3B1PWBlY2hvICRhY19jdl9idWlsZCB8IHNlZCAncy9eXChbXi1dKlwpLVwoW14tXSpc
KS1cKC4qXCkkL1wxLydgCiBidWlsZF92ZW5kb3I9YGVjaG8gJGFjX2N2X2J1aWxkIHwgc2VkICdz
L15cKFteLV0qXCktXChbXi1dKlwpLVwoLipcKSQvXDIvJ2AKIGJ1aWxkX29zPWBlY2hvICRhY19j
dl9idWlsZCB8IHNlZCAncy9eXChbXi1dKlwpLVwoW14tXSpcKS1cKC4qXCkkL1wzLydgCiAKLWVj
aG8gIiRhc19tZToxMTk2OiBjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlIiA+JjUKKworZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUiID4mNQogZWNobyAkRUNI
T19OICJjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAi
JHthY19jdl9ob3N0K3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkg
JEVDSE9fQyIgPiY2CkBAIC0xMjA4LDE4ICsxNTg0LDE5IEBACiB0ZXN0IC16ICIkYWNfY3ZfaG9z
dF9hbGlhcyIgJiYKICAgYWNfY3ZfaG9zdF9hbGlhcz0kYWNfY3ZfYnVpbGRfYWxpYXMKIGFjX2N2
X2hvc3Q9YCRhY19jb25maWdfc3ViICRhY19jdl9ob3N0X2FsaWFzYCB8fAotICB7IHsgZWNobyAi
JGFzX21lOjEyMDU6IGVycm9yOiAkYWNfY29uZmlnX3N1YiAkYWNfY3ZfaG9zdF9hbGlhcyBmYWls
ZWQiID4mNQorICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiAkYWNfY29uZmlnX3N1
YiAkYWNfY3ZfaG9zdF9hbGlhcyBmYWlsZWQiID4mNQogZWNobyAiJGFzX21lOiBlcnJvcjogJGFj
X2NvbmZpZ19zdWIgJGFjX2N2X2hvc3RfYWxpYXMgZmFpbGVkIiA+JjI7fQogICAgeyAoZXhpdCAx
KTsgZXhpdCAxOyB9OyB9CiAKIGZpCi1lY2hvICIkYXNfbWU6MTIxMDogcmVzdWx0OiAkYWNfY3Zf
aG9zdCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfaG9zdCIgPiY1
CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfaG9zdCIgPiY2CiBob3N0PSRhY19jdl9ob3N0CiBob3N0
X2NwdT1gZWNobyAkYWNfY3ZfaG9zdCB8IHNlZCAncy9eXChbXi1dKlwpLVwoW14tXSpcKS1cKC4q
XCkkL1wxLydgCiBob3N0X3ZlbmRvcj1gZWNobyAkYWNfY3ZfaG9zdCB8IHNlZCAncy9eXChbXi1d
KlwpLVwoW14tXSpcKS1cKC4qXCkkL1wyLydgCiBob3N0X29zPWBlY2hvICRhY19jdl9ob3N0IHwg
c2VkICdzL15cKFteLV0qXCktXChbXi1dKlwpLVwoLipcKSQvXDMvJ2AKIAorCiBhY19leHQ9Ywog
YWNfY3BwPSckQ1BQICRDUFBGTEFHUycKIGFjX2NvbXBpbGU9JyRDQyAtYyAkQ0ZMQUdTICRDUFBG
TEFHUyBjb25mdGVzdC4kYWNfZXh0ID4mNScKQEAgLTEyMzQsNyArMTYxMSw3IEBACiBpZiB0ZXN0
IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCiAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBv
ZiAiJHthY190b29sX3ByZWZpeH1nY2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0
aCBhcmdzLgogc2V0IGR1bW15ICR7YWNfdG9vbF9wcmVmaXh9Z2NjOyBhY193b3JkPSQyCi1lY2hv
ICIkYXNfbWU6MTIzMTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKK2VjaG8gIiRhc19tZTok
TElORU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQogZWNobyAkRUNIT19OICJjaGVja2lu
ZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X3Byb2dfQ0Mr
c2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
QEAgLTEyNDIsMjUgKzE2MTksMjggQEAKICAgaWYgdGVzdCAtbiAiJENDIjsgdGhlbgogICBhY19j
dl9wcm9nX0NDPSIkQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgogZWxzZQot
ICBhY19zYXZlX0lGUz0kSUZTOyBJRlM9JGFjX3BhdGhfc2VwYXJhdG9yCi1hY19kdW1teT0iJFBB
VEgiCi1mb3IgYWNfZGlyIGluICRhY19kdW1teTsgZG8KLSAgSUZTPSRhY19zYXZlX0lGUwotICB0
ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9LgotICAkYXNfZXhlY3V0YWJsZV9wICIkYWNfZGly
LyRhY193b3JkIiB8fCBjb250aW51ZQotYWNfY3ZfcHJvZ19DQz0iJHthY190b29sX3ByZWZpeH1n
Y2MiCi1lY2hvICIkYXNfbWU6MTI0NjogZm91bmQgJGFjX2Rpci8kYWNfd29yZCIgPiY1Ci1icmVh
aworYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAk
UEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19k
aXI9LgorICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsg
ZG8KKyAgaWYgJGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7
IHRoZW4KKyAgICBhY19jdl9wcm9nX0NDPSIke2FjX3Rvb2xfcHJlZml4fWdjYyIKKyAgICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1
CisgICAgYnJlYWsgMgorICBmaQorZG9uZQogZG9uZQogCiBmaQogZmkKIENDPSRhY19jdl9wcm9n
X0NDCiBpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCi0gIGVjaG8gIiRhc19tZToxMjU0OiByZXN1bHQ6
ICRDQyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRDQyIgPiY1CiBlY2hv
ICIke0VDSE9fVH0kQ0MiID4mNgogZWxzZQotICBlY2hvICIkYXNfbWU6MTI1NzogcmVzdWx0OiBu
byIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IG5vIiA+JjUKIGVjaG8gIiR7
RUNIT19UfW5vIiA+JjYKIGZpCiAKQEAgLTEyNjksNyArMTY0OSw3IEBACiAgIGFjX2N0X0NDPSRD
QwogICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgImdjYyIsIHNvIGl0IGNhbiBiZSBhIHBy
b2dyYW0gbmFtZSB3aXRoIGFyZ3MuCiBzZXQgZHVtbXkgZ2NjOyBhY193b3JkPSQyCi1lY2hvICIk
YXNfbWU6MTI2NjogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKK2VjaG8gIiRhc19tZTokTElO
RU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBm
b3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X3Byb2dfYWNfY3Rf
Q0Mrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+
JjYKQEAgLTEyNzcsMjUgKzE2NTcsMjggQEAKICAgaWYgdGVzdCAtbiAiJGFjX2N0X0NDIjsgdGhl
bgogICBhY19jdl9wcm9nX2FjX2N0X0NDPSIkYWNfY3RfQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJy
aWRlIHRoZSB0ZXN0LgogZWxzZQotICBhY19zYXZlX0lGUz0kSUZTOyBJRlM9JGFjX3BhdGhfc2Vw
YXJhdG9yCi1hY19kdW1teT0iJFBBVEgiCi1mb3IgYWNfZGlyIGluICRhY19kdW1teTsgZG8KLSAg
SUZTPSRhY19zYXZlX0lGUwotICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9LgotICAkYXNf
ZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkIiB8fCBjb250aW51ZQotYWNfY3ZfcHJvZ19h
Y19jdF9DQz0iZ2NjIgotZWNobyAiJGFzX21lOjEyODE6IGZvdW5kICRhY19kaXIvJGFjX3dvcmQi
ID4mNQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBh
c19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2Rp
ciIgJiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4
dGVuc2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNf
ZXhlY19leHQiOyB0aGVuCisgICAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iZ2NjIgorICAgIGVjaG8g
IiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUK
KyAgICBicmVhayAyCisgIGZpCitkb25lCiBkb25lCiAKIGZpCiBmaQogYWNfY3RfQ0M9JGFjX2N2
X3Byb2dfYWNfY3RfQ0MKIGlmIHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KLSAgZWNobyAiJGFz
X21lOjEyODk6IHJlc3VsdDogJGFjX2N0X0NDIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IHJlc3VsdDogJGFjX2N0X0NDIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdF9DQyIgPiY2CiBl
bHNlCi0gIGVjaG8gIiRhc19tZToxMjkyOiByZXN1bHQ6IG5vIiA+JjUKKyAgZWNobyAiJGFzX21l
OiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQogZWNobyAiJHtFQ0hPX1R9bm8iID4mNgogZmkKIApA
QCAtMTMwOCw3ICsxNjkxLDcgQEAKICAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhl
bgogICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9Y2MiLCBz
byBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgogc2V0IGR1bW15ICR7YWNfdG9v
bF9wcmVmaXh9Y2M7IGFjX3dvcmQ9JDIKLWVjaG8gIiRhc19tZToxMzA1OiBjaGVja2luZyBmb3Ig
JGFjX3dvcmQiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29y
ZCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+
JjYKIGlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19DQytzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRF
Q0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtMTMxNiwyNSArMTY5OSwyOCBAQAogICBp
ZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCiAgIGFjX2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQgdGhlIHVz
ZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCiBlbHNlCi0gIGFjX3NhdmVfSUZTPSRJRlM7IElGUz0kYWNf
cGF0aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19kaXIgaW4gJGFjX2R1bW15
OyBkbwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0u
Ci0gICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8IGNvbnRpbnVlCi1hY19j
dl9wcm9nX0NDPSIke2FjX3Rvb2xfcHJlZml4fWNjIgotZWNobyAiJGFzX21lOjEzMjA6IGZvdW5k
ICRhY19kaXIvJGFjX3dvcmQiID4mNQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFU
SF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMK
KyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcn
ICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRh
c19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB0aGVuCisgICAgYWNfY3ZfcHJvZ19DQz0iJHth
Y190b29sX3ByZWZpeH1jYyIKKyAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rp
ci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQogZG9u
ZQogCiBmaQogZmkKIENDPSRhY19jdl9wcm9nX0NDCiBpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCi0g
IGVjaG8gIiRhc19tZToxMzI4OiByZXN1bHQ6ICRDQyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElO
RU5POiByZXN1bHQ6ICRDQyIgPiY1CiBlY2hvICIke0VDSE9fVH0kQ0MiID4mNgogZWxzZQotICBl
Y2hvICIkYXNfbWU6MTMzMTogcmVzdWx0OiBubyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiByZXN1bHQ6IG5vIiA+JjUKIGVjaG8gIiR7RUNIT19UfW5vIiA+JjYKIGZpCiAKQEAgLTEzNDMs
NyArMTcyOSw3IEBACiAgIGFjX2N0X0NDPSRDQwogICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQg
b2YgImNjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KIHNldCBkdW1t
eSBjYzsgYWNfd29yZD0kMgotZWNobyAiJGFzX21lOjEzNDA6IGNoZWNraW5nIGZvciAkYWNfd29y
ZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUK
IGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNgogaWYg
dGVzdCAiJHthY19jdl9wcm9nX2FjX2N0X0NDK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVD
SE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC0xMzUxLDI1ICsxNzM3LDI4IEBACiAgIGlm
IHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KICAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iJGFjX2N0
X0NDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KIGVsc2UKLSAgYWNfc2F2ZV9J
RlM9JElGUzsgSUZTPSRhY19wYXRoX3NlcGFyYXRvcgotYWNfZHVtbXk9IiRQQVRIIgotZm9yIGFj
X2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gIElGUz0kYWNfc2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFj
X2RpciIgJiYgYWNfZGlyPS4KLSAgJGFzX2V4ZWN1dGFibGVfcCAiJGFjX2Rpci8kYWNfd29yZCIg
fHwgY29udGludWUKLWFjX2N2X3Byb2dfYWNfY3RfQ0M9ImNjIgotZWNobyAiJGFzX21lOjEzNTU6
IGZvdW5kICRhY19kaXIvJGFjX3dvcmQiID4mNQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElG
Uz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2
ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0
IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxl
X3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB0aGVuCisgICAgYWNfY3ZfcHJvZ19h
Y19jdF9DQz0iY2MiCisgICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGZvdW5kICRhc19kaXIvJGFj
X3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKIGRvbmUKIAog
ZmkKIGZpCiBhY19jdF9DQz0kYWNfY3ZfcHJvZ19hY19jdF9DQwogaWYgdGVzdCAtbiAiJGFjX2N0
X0NDIjsgdGhlbgotICBlY2hvICIkYXNfbWU6MTM2MzogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQor
ICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQogZWNobyAiJHtF
Q0hPX1R9JGFjX2N0X0NDIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFzX21lOjEzNjY6IHJlc3VsdDog
bm8iID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CiBlY2hvICIk
e0VDSE9fVH1ubyIgPiY2CiBmaQogCkBAIC0xMzgyLDcgKzE3NzEsNyBAQAogaWYgdGVzdCAteiAi
JENDIjsgdGhlbgogICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgImNjIiwgc28gaXQgY2Fu
IGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KIHNldCBkdW1teSBjYzsgYWNfd29yZD0kMgot
ZWNobyAiJGFzX21lOjEzNzk6IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CitlY2hvICIkYXNf
bWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hl
Y2tpbmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9wcm9n
X0NDK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIg
PiY2CkBAIC0xMzkxLDE5ICsxNzgwLDIyIEBACiAgIGFjX2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQg
dGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCiBlbHNlCiAgIGFjX3Byb2dfcmVqZWN0ZWQ9bm8K
LSAgYWNfc2F2ZV9JRlM9JElGUzsgSUZTPSRhY19wYXRoX3NlcGFyYXRvcgotYWNfZHVtbXk9IiRQ
QVRIIgotZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gIElGUz0kYWNfc2F2ZV9JRlMKLSAg
dGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KLSAgJGFzX2V4ZWN1dGFibGVfcCAiJGFjX2Rp
ci8kYWNfd29yZCIgfHwgY29udGludWUKLWlmIHRlc3QgIiRhY19kaXIvJGFjX3dvcmQiID0gIi91
c3IvdWNiL2NjIjsgdGhlbgotICBhY19wcm9nX3JlamVjdGVkPXllcwotICBjb250aW51ZQotZmkK
LWFjX2N2X3Byb2dfQ0M9ImNjIgotZWNobyAiJGFzX21lOjEzOTk6IGZvdW5kICRhY19kaXIvJGFj
X3dvcmQiID4mNQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IK
K2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAi
JGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRh
YmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dv
cmQkYWNfZXhlY19leHQiOyB0aGVuCisgICAgaWYgdGVzdCAiJGFzX2Rpci8kYWNfd29yZCRhY19l
eGVjX2V4dCIgPSAiL3Vzci91Y2IvY2MiOyB0aGVuCisgICAgICAgYWNfcHJvZ19yZWplY3RlZD15
ZXMKKyAgICAgICBjb250aW51ZQorICAgICBmaQorICAgIGFjX2N2X3Byb2dfQ0M9ImNjIgorICAg
IGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0
IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCiBkb25lCiAKIGlmIHRlc3QgJGFjX3Byb2df
cmVqZWN0ZWQgPSB5ZXM7IHRoZW4KQEAgLTE0MTUsMTkgKzE4MDcsMTcgQEAKICAgICAjIEhvd2V2
ZXIsIGl0IGhhcyB0aGUgc2FtZSBiYXNlbmFtZSwgc28gdGhlIGJvZ29uIHdpbGwgYmUgY2hvc2Vu
CiAgICAgIyBmaXJzdCBpZiB3ZSBzZXQgQ0MgdG8ganVzdCB0aGUgYmFzZW5hbWU7IHVzZSB0aGUg
ZnVsbCBmaWxlIG5hbWUuCiAgICAgc2hpZnQKLSAgICBzZXQgZHVtbXkgIiRhY19kaXIvJGFjX3dv
cmQiICR7MSsiJEAifQotICAgIHNoaWZ0Ci0gICAgYWNfY3ZfcHJvZ19DQz0iJEAiCisgICAgYWNf
Y3ZfcHJvZ19DQz0iJGFzX2Rpci8kYWNfd29yZCR7MSsnICd9JEAiCiAgIGZpCiBmaQogZmkKIGZp
CiBDQz0kYWNfY3ZfcHJvZ19DQwogaWYgdGVzdCAtbiAiJENDIjsgdGhlbgotICBlY2hvICIkYXNf
bWU6MTQyMTogcmVzdWx0OiAkQ0MiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkQ0MiID4mNQogZWNobyAiJHtFQ0hPX1R9JENDIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFzX21l
OjE0MjQ6IHJlc3VsdDogbm8iID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBu
byIgPiY1CiBlY2hvICIke0VDSE9fVH1ubyIgPiY2CiBmaQogCkBAIC0xNDM4LDcgKzE4MjgsNyBA
QAogICBkbwogICAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Rvb2xfcHJlZml4
JGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgogc2V0IGR1
bW15ICRhY190b29sX3ByZWZpeCRhY19wcm9nOyBhY193b3JkPSQyCi1lY2hvICIkYXNfbWU6MTQz
NTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3IgJGFjX3dvcmQiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dv
cmQuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X3Byb2dfQ0Mrc2V0fSIgPSBzZXQ7
IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTE0NDYsMjUg
KzE4MzYsMjggQEAKICAgaWYgdGVzdCAtbiAiJENDIjsgdGhlbgogICBhY19jdl9wcm9nX0NDPSIk
Q0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgogZWxzZQotICBhY19zYXZlX0lG
Uz0kSUZTOyBJRlM9JGFjX3BhdGhfc2VwYXJhdG9yCi1hY19kdW1teT0iJFBBVEgiCi1mb3IgYWNf
ZGlyIGluICRhY19kdW1teTsgZG8KLSAgSUZTPSRhY19zYXZlX0lGUwotICB0ZXN0IC16ICIkYWNf
ZGlyIiAmJiBhY19kaXI9LgotICAkYXNfZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkIiB8
fCBjb250aW51ZQotYWNfY3ZfcHJvZ19DQz0iJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2ciCi1lY2hv
ICIkYXNfbWU6MTQ1MDogZm91bmQgJGFjX2Rpci8kYWNfd29yZCIgPiY1Ci1icmVhaworYXNfc2F2
ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8K
KyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICBm
b3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYg
JGFzX2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IHRoZW4KKyAg
ICBhY19jdl9wcm9nX0NDPSIkYWNfdG9vbF9wcmVmaXgkYWNfcHJvZyIKKyAgICBlY2hvICIkYXNf
bWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAg
YnJlYWsgMgorICBmaQorZG9uZQogZG9uZQogCiBmaQogZmkKIENDPSRhY19jdl9wcm9nX0NDCiBp
ZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCi0gIGVjaG8gIiRhc19tZToxNDU4OiByZXN1bHQ6ICRDQyIg
PiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRDQyIgPiY1CiBlY2hvICIke0VD
SE9fVH0kQ0MiID4mNgogZWxzZQotICBlY2hvICIkYXNfbWU6MTQ2MTogcmVzdWx0OiBubyIgPiY1
CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IG5vIiA+JjUKIGVjaG8gIiR7RUNIT19U
fW5vIiA+JjYKIGZpCiAKQEAgLTE0NzcsNyArMTg3MCw3IEBACiBkbwogICAjIEV4dHJhY3QgdGhl
IGZpcnN0IHdvcmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdp
dGggYXJncy4KIHNldCBkdW1teSAkYWNfcHJvZzsgYWNfd29yZD0kMgotZWNobyAiJGFzX21lOjE0
NzQ6IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hl
Y2tpbmcgZm9yICRhY193b3JkIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193
b3JkLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9wcm9nX2FjX2N0X0NDK3NldH0i
ID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC0x
NDg1LDI1ICsxODc4LDI4IEBACiAgIGlmIHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KICAgYWNf
Y3ZfcHJvZ19hY19jdF9DQz0iJGFjX2N0X0NDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUg
dGVzdC4KIGVsc2UKLSAgYWNfc2F2ZV9JRlM9JElGUzsgSUZTPSRhY19wYXRoX3NlcGFyYXRvcgot
YWNfZHVtbXk9IiRQQVRIIgotZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gIElGUz0kYWNf
c2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KLSAgJGFzX2V4ZWN1dGFi
bGVfcCAiJGFjX2Rpci8kYWNfd29yZCIgfHwgY29udGludWUKLWFjX2N2X3Byb2dfYWNfY3RfQ0M9
IiRhY19wcm9nIgotZWNobyAiJGFzX21lOjE0ODk6IGZvdW5kICRhY19kaXIvJGFjX3dvcmQiID4m
NQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19k
aXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIg
JiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVu
c2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhl
Y19leHQiOyB0aGVuCisgICAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iJGFjX3Byb2ciCisgICAgZWNo
byAiJGFzX21lOiRMSU5FTk86IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4m
NQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKIGRvbmUKIAogZmkKIGZpCiBhY19jdF9DQz0kYWNf
Y3ZfcHJvZ19hY19jdF9DQwogaWYgdGVzdCAtbiAiJGFjX2N0X0NDIjsgdGhlbgotICBlY2hvICIk
YXNfbWU6MTQ5NzogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N0X0NDIiA+JjYK
IGVsc2UKLSAgZWNobyAiJGFzX21lOjE1MDA6IHJlc3VsdDogbm8iID4mNQorICBlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CiBlY2hvICIke0VDSE9fVH1ubyIgPiY2CiBmaQog
CkBAIC0xNTE1LDMzICsxOTExLDM5IEBACiAKIGZpCiAKLXRlc3QgLXogIiRDQyIgJiYgeyB7IGVj
aG8gIiRhc19tZToxNTEyOiBlcnJvcjogbm8gYWNjZXB0YWJsZSBjYyBmb3VuZCBpbiBcJFBBVEgi
ID4mNQotZWNobyAiJGFzX21lOiBlcnJvcjogbm8gYWNjZXB0YWJsZSBjYyBmb3VuZCBpbiBcJFBB
VEgiID4mMjt9CisKK3Rlc3QgLXogIiRDQyIgJiYgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBl
cnJvcjogbm8gYWNjZXB0YWJsZSBDIGNvbXBpbGVyIGZvdW5kIGluIFwkUEFUSAorU2VlIFxgY29u
ZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mNQorZWNobyAiJGFzX21lOiBlcnJvcjogbm8g
YWNjZXB0YWJsZSBDIGNvbXBpbGVyIGZvdW5kIGluIFwkUEFUSAorU2VlIFxgY29uZmlnLmxvZycg
Zm9yIG1vcmUgZGV0YWlscy4iID4mMjt9CiAgICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KIAog
IyBQcm92aWRlIHNvbWUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbXBpbGVyLgotZWNobyAiJGFz
X21lOjE1MTc6IiBcCitlY2hvICIkYXNfbWU6JExJTkVOTzoiIFwKICAgICAgImNoZWNraW5nIGZv
ciBDIGNvbXBpbGVyIHZlcnNpb24iID4mNQogYWNfY29tcGlsZXI9YHNldCBYICRhY19jb21waWxl
OyBlY2hvICQyYAoteyAoZXZhbCBlY2hvICIkYXNfbWU6MTUyMDogXCIkYWNfY29tcGlsZXIgLS12
ZXJzaW9uIDwvZGV2L251bGwgPiY1XCIiKSA+JjUKK3sgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwiJGFjX2NvbXBpbGVyIC0tdmVyc2lvbiA8L2Rldi9udWxsID4mNVwiIikgPiY1CiAgIChl
dmFsICRhY19jb21waWxlciAtLXZlcnNpb24gPC9kZXYvbnVsbCA+JjUpIDI+JjUKICAgYWNfc3Rh
dHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToxNTIzOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3Rh
dHVzKTsgfQoteyAoZXZhbCBlY2hvICIkYXNfbWU6MTUyNTogXCIkYWNfY29tcGlsZXIgLXYgPC9k
ZXYvbnVsbCA+JjVcIiIpID4mNQoreyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNf
Y29tcGlsZXIgLXYgPC9kZXYvbnVsbCA+JjVcIiIpID4mNQogICAoZXZhbCAkYWNfY29tcGlsZXIg
LXYgPC9kZXYvbnVsbCA+JjUpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTox
NTI4OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9
ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfQoteyAoZXZhbCBlY2hvICIk
YXNfbWU6MTUzMDogXCIkYWNfY29tcGlsZXIgLVYgPC9kZXYvbnVsbCA+JjVcIiIpID4mNQoreyAo
ZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZXIgLVYgPC9kZXYvbnVsbCA+
JjVcIiIpID4mNQogICAoZXZhbCAkYWNfY29tcGlsZXIgLVYgPC9kZXYvbnVsbCA+JjUpIDI+JjUK
ICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToxNTMzOiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhp
dCAkYWNfc3RhdHVzKTsgfQogCiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5l
IDE1MzcgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4g
ICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29u
ZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogCiBpbnQKIG1h
aW4gKCkKQEAgLTE1NTIsMTI3ICsxOTU0LDE1MiBAQAogfQogX0FDRU9GCiBhY19jbGVhbl9maWxl
c19zYXZlPSRhY19jbGVhbl9maWxlcwotYWNfY2xlYW5fZmlsZXM9IiRhY19jbGVhbl9maWxlcyBh
Lm91dCBhLmV4ZSIKK2FjX2NsZWFuX2ZpbGVzPSIkYWNfY2xlYW5fZmlsZXMgYS5vdXQgYS5leGUg
Yi5vdXQiCiAjIFRyeSB0byBjcmVhdGUgYW4gZXhlY3V0YWJsZSB3aXRob3V0IC1vIGZpcnN0LCBk
aXNyZWdhcmQgYS5vdXQuCiAjIEl0IHdpbGwgaGVscCB1cyBkaWFnbm9zZSBicm9rZW4gY29tcGls
ZXJzLCBhbmQgZmluZGluZyBvdXQgYW4gaW50dWl0aW9uCiAjIG9mIGV4ZWV4dC4KLWVjaG8gIiRh
c19tZToxNTUzOiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCIgPiY1Ci1l
Y2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0Li4uICRF
Q0hPX0MiID4mNgorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBDIGNvbXBpbGVy
IGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIGZv
ciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZS4uLiAkRUNIT19DIiA+JjYKIGFj
X2xpbmtfZGVmYXVsdD1gZWNobyAiJGFjX2xpbmsiIHwgc2VkICdzLyAtbyAqY29uZnRlc3RbXiBd
Ki8vJ2AKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjE1NTY6IFwiJGFjX2xpbmtfZGVmYXVsdFwi
IikgPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19saW5rX2RlZmF1
bHRcIiIpID4mNQogICAoZXZhbCAkYWNfbGlua19kZWZhdWx0KSAyPiY1CiAgIGFjX3N0YXR1cz0k
PwotICBlY2hvICIkYXNfbWU6MTU1OTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRh
c19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7
IH07IHRoZW4KICAgIyBGaW5kIHRoZSBvdXRwdXQsIHN0YXJ0aW5nIGZyb20gdGhlIG1vc3QgbGlr
ZWx5LiAgVGhpcyBzY2hlbWUgaXMKICMgbm90IHJvYnVzdCB0byBqdW5rIGluIGAuJywgaGVuY2Ug
Z28gdG8gd2lsZGNhcmRzIChhLiopIG9ubHkgYXMgYSBsYXN0CiAjIHJlc29ydC4KLWZvciBhY19m
aWxlIGluIGBscyBhLmV4ZSBjb25mdGVzdC5leGUgMj4vZGV2L251bGw7Ci0gICAgICAgICAgICAg
ICAgbHMgYS5vdXQgY29uZnRlc3QgMj4vZGV2L251bGw7Ci0gICAgICAgICAgICAgICAgbHMgYS4q
IGNvbmZ0ZXN0LiogMj4vZGV2L251bGxgOyBkbworCisjIEJlIGNhcmVmdWwgdG8gaW5pdGlhbGl6
ZSB0aGlzIHZhcmlhYmxlLCBzaW5jZSBpdCB1c2VkIHRvIGJlIGNhY2hlZC4KKyMgT3RoZXJ3aXNl
IGFuIG9sZCBjYWNoZSB2YWx1ZSBvZiBgbm8nIGxlZCB0byBgRVhFRVhUID0gbm8nIGluIGEgTWFr
ZWZpbGUuCithY19jdl9leGVleHQ9CisjIGIub3V0IGlzIGNyZWF0ZWQgYnkgaTk2MCBjb21waWxl
cnMuCitmb3IgYWNfZmlsZSBpbiBhX291dC5leGUgYS5leGUgY29uZnRlc3QuZXhlIGEub3V0IGNv
bmZ0ZXN0IGEuKiBjb25mdGVzdC4qIGIub3V0CitkbworICB0ZXN0IC1mICIkYWNfZmlsZSIgfHwg
Y29udGludWUKICAgY2FzZSAkYWNfZmlsZSBpbgotICAgICouJGFjX2V4dCB8ICoubyB8ICoub2Jq
IHwgKi54Y29mZiB8ICoudGRzIHwgKi5kIHwgKi5wZGIgKSA7OwotICAgIGEub3V0ICkgIyBXZSBm
b3VuZCB0aGUgZGVmYXVsdCBleGVjdXRhYmxlLCBidXQgZXhlZXh0PScnIGlzIG1vc3QKLSAgICAg
ICAgICAgICMgY2VydGFpbmx5IHJpZ2h0LgotICAgICAgICAgICAgYnJlYWs7OwotICAgICouKiAp
IGFjX2N2X2V4ZWV4dD1gZXhwciAiJGFjX2ZpbGUiIDogJ1teLl0qXChcLi4qXCknYAotICAgICAg
ICAgICMgRklYTUU6IEkgYmVsaWV2ZSB3ZSBleHBvcnQgYWNfY3ZfZXhlZXh0IGZvciBMaWJ0b29s
IC0tYWtpbS4KLSAgICAgICAgICBleHBvcnQgYWNfY3ZfZXhlZXh0Ci0gICAgICAgICAgYnJlYWs7
OwotICAgICogKSBicmVhazs7CisgICAgKi4kYWNfZXh0IHwgKi54Y29mZiB8ICoudGRzIHwgKi5k
IHwgKi5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgfCAqLm8gfCAqLm9iaiApCisJOzsKKyAg
ICBjb25mdGVzdC4kYWNfZXh0ICkKKwkjIFRoaXMgaXMgdGhlIHNvdXJjZSBmaWxlLgorCTs7Cisg
ICAgW2FiXS5vdXQgKQorCSMgV2UgZm91bmQgdGhlIGRlZmF1bHQgZXhlY3V0YWJsZSwgYnV0IGV4
ZWV4dD0nJyBpcyBtb3N0CisJIyBjZXJ0YWlubHkgcmlnaHQuCisJYnJlYWs7OworICAgICouKiAp
CisJYWNfY3ZfZXhlZXh0PWBleHByICIkYWNfZmlsZSIgOiAnW14uXSpcKFwuLipcKSdgCisJIyBG
SVhNRTogSSBiZWxpZXZlIHdlIGV4cG9ydCBhY19jdl9leGVleHQgZm9yIExpYnRvb2wsCisJIyBi
dXQgaXQgd291bGQgYmUgY29vbCB0byBmaW5kIG91dCBpZiBpdCdzIHRydWUuICBEb2VzIGFueWJv
ZHkKKwkjIG1haW50YWluIExpYnRvb2w/IC0tYWtpbS4KKwlleHBvcnQgYWNfY3ZfZXhlZXh0CisJ
YnJlYWs7OworICAgICogKQorCWJyZWFrOzsKICAgZXNhYwogZG9uZQogZWxzZQogICBlY2hvICIk
YXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1
Ci17IHsgZWNobyAiJGFzX21lOjE1ODI6IGVycm9yOiBDIGNvbXBpbGVyIGNhbm5vdCBjcmVhdGUg
ZXhlY3V0YWJsZXMiID4mNQotZWNobyAiJGFzX21lOiBlcnJvcjogQyBjb21waWxlciBjYW5ub3Qg
Y3JlYXRlIGV4ZWN1dGFibGVzIiA+JjI7fQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0
ID4mNQorCit7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBDIGNvbXBpbGVyIGNhbm5v
dCBjcmVhdGUgZXhlY3V0YWJsZXMKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMu
IiA+JjUKK2VjaG8gIiRhc19tZTogZXJyb3I6IEMgY29tcGlsZXIgY2Fubm90IGNyZWF0ZSBleGVj
dXRhYmxlcworU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mMjt9CiAgICB7
IChleGl0IDc3KTsgZXhpdCA3NzsgfTsgfQogZmkKIAogYWNfZXhlZXh0PSRhY19jdl9leGVleHQK
LWVjaG8gIiRhc19tZToxNTg4OiByZXN1bHQ6ICRhY19maWxlIiA+JjUKK2VjaG8gIiRhc19tZTok
TElORU5POiByZXN1bHQ6ICRhY19maWxlIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19maWxlIiA+
JjYKIAogIyBDaGVjayB0aGUgY29tcGlsZXIgcHJvZHVjZXMgZXhlY3V0YWJsZXMgd2UgY2FuIHJ1
bi4gIElmIG5vdCwgZWl0aGVyCiAjIHRoZSBjb21waWxlciBpcyBicm9rZW4sIG9yIHdlIGNyb3Nz
IGNvbXBpbGUuCi1lY2hvICIkYXNfbWU6MTU5MzogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21w
aWxlciB3b3JrcyIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgd2hldGhlciB0
aGUgQyBjb21waWxlciB3b3JrcyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIHdoZXRoZXIg
dGhlIEMgY29tcGlsZXIgd29ya3MuLi4gJEVDSE9fQyIgPiY2CiAjIEZJWE1FOiBUaGVzZSBjcm9z
cyBjb21waWxlciBoYWNrcyBzaG91bGQgYmUgcmVtb3ZlZCBmb3IgQXV0b2NvbmYgMy4wCiAjIElm
IG5vdCBjcm9zcyBjb21waWxpbmcsIGNoZWNrIHRoYXQgd2UgY2FuIHJ1biBhIHNpbXBsZSBwcm9n
cmFtLgogaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgIT0geWVzOyB0aGVuCiAgIGlmIHsgYWNf
dHJ5PScuLyRhY19maWxlJwotICB7IChldmFsIGVjaG8gIiRhc19tZToxNTk5OiBcIiRhY190cnlc
IiIpID4mNQorICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4m
NQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6
MTYwMjogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgICBj
cm9zc19jb21waWxpbmc9bm8KICAgZWxzZQogICAgIGlmIHRlc3QgIiRjcm9zc19jb21waWxpbmci
ID0gbWF5YmU7IHRoZW4KIAljcm9zc19jb21waWxpbmc9eWVzCiAgICAgZWxzZQotCXsgeyBlY2hv
ICIkYXNfbWU6MTYwOTogZXJyb3I6IGNhbm5vdCBydW4gQyBjb21waWxlZCBwcm9ncmFtcy4KLUlm
IHlvdSBtZWFudCB0byBjcm9zcyBjb21waWxlLCB1c2UgXGAtLWhvc3QnLiIgPiY1CisJeyB7IGVj
aG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90IHJ1biBDIGNvbXBpbGVkIHByb2dyYW1z
LgorSWYgeW91IG1lYW50IHRvIGNyb3NzIGNvbXBpbGUsIHVzZSBcYC0taG9zdCcuCitTZWUgXGBj
b25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiY1CiBlY2hvICIkYXNfbWU6IGVycm9yOiBj
YW5ub3QgcnVuIEMgY29tcGlsZWQgcHJvZ3JhbXMuCi1JZiB5b3UgbWVhbnQgdG8gY3Jvc3MgY29t
cGlsZSwgdXNlIFxgLS1ob3N0Jy4iID4mMjt9CitJZiB5b3UgbWVhbnQgdG8gY3Jvc3MgY29tcGls
ZSwgdXNlIFxgLS1ob3N0Jy4KK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+
JjI7fQogICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CiAgICAgZmkKICAgZmkKIGZpCi1lY2hv
ICIkYXNfbWU6MTYxNzogcmVzdWx0OiB5ZXMiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogeWVzIiA+JjUKIGVjaG8gIiR7RUNIT19UfXllcyIgPiY2CiAKLXJtIC1mIGEub3V0IGEu
ZXhlIGNvbmZ0ZXN0JGFjX2N2X2V4ZWV4dAorcm0gLWYgYS5vdXQgYS5leGUgY29uZnRlc3QkYWNf
Y3ZfZXhlZXh0IGIub3V0CiBhY19jbGVhbl9maWxlcz0kYWNfY2xlYW5fZmlsZXNfc2F2ZQogIyBD
aGVjayB0aGUgY29tcGlsZXIgcHJvZHVjZXMgZXhlY3V0YWJsZXMgd2UgY2FuIHJ1bi4gIElmIG5v
dCwgZWl0aGVyCiAjIHRoZSBjb21waWxlciBpcyBicm9rZW4sIG9yIHdlIGNyb3NzIGNvbXBpbGUu
Ci1lY2hvICIkYXNfbWU6MTYyNDogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgY3Jvc3MgY29tcGls
aW5nIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSBj
cm9zcyBjb21waWxpbmciID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHdlIGFy
ZSBjcm9zcyBjb21waWxpbmcuLi4gJEVDSE9fQyIgPiY2Ci1lY2hvICIkYXNfbWU6MTYyNjogcmVz
dWx0OiAkY3Jvc3NfY29tcGlsaW5nIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6
ICRjcm9zc19jb21waWxpbmciID4mNQogZWNobyAiJHtFQ0hPX1R9JGNyb3NzX2NvbXBpbGluZyIg
PiY2CiAKLWVjaG8gIiRhc19tZToxNjI5OiBjaGVja2luZyBmb3IgZXhlY3V0YWJsZSBzdWZmaXgi
ID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZXhlY3V0YWJsZSBzdWZmaXguLi4gJEVD
SE9fQyIgPiY2Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZToxNjMxOiBcIiRhY19saW5rXCIiKSA+
JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFi
bGVzIiA+JjUKK2VjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBleGVjdXRhYmxl
cy4uLiAkRUNIT19DIiA+JjYKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X2xpbmtcIiIpID4mNQogICAoZXZhbCAkYWNfbGluaykgMj4mNQogICBhY19zdGF0dXM9JD8KLSAg
ZWNobyAiJGFzX21lOjE2MzQ6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB0
aGVuCiAgICMgSWYgYm90aCBgY29uZnRlc3QuZXhlJyBhbmQgYGNvbmZ0ZXN0JyBhcmUgYHByZXNl
bnQnICh3ZWxsLCBvYnNlcnZhYmxlKQogIyBjYXRjaCBgY29uZnRlc3QuZXhlJy4gIEZvciBpbnN0
YW5jZSB3aXRoIEN5Z3dpbiwgYGxzIGNvbmZ0ZXN0JyB3aWxsCiAjIHdvcmsgcHJvcGVybHkgKGku
ZS4sIHJlZmVyIHRvIGBjb25mdGVzdC5leGUnKSwgd2hpbGUgaXQgd29uJ3Qgd2l0aAogIyBgcm0n
LgotZm9yIGFjX2ZpbGUgaW4gYChscyBjb25mdGVzdC5leGU7IGxzIGNvbmZ0ZXN0OyBscyBjb25m
dGVzdC4qKSAyPi9kZXYvbnVsbGA7IGRvCitmb3IgYWNfZmlsZSBpbiBjb25mdGVzdC5leGUgY29u
ZnRlc3QgY29uZnRlc3QuKjsgZG8KKyAgdGVzdCAtZiAiJGFjX2ZpbGUiIHx8IGNvbnRpbnVlCiAg
IGNhc2UgJGFjX2ZpbGUgaW4KLSAgICAqLiRhY19leHQgfCAqLm8gfCAqLm9iaiB8ICoueGNvZmYg
fCAqLnRkcyB8ICouZCB8ICoucGRiICkgOzsKKyAgICAqLiRhY19leHQgfCAqLnhjb2ZmIHwgKi50
ZHMgfCAqLmQgfCAqLnBkYiB8ICoueFNZTSB8ICouYmIgfCAqLmJiZyB8ICoubyB8ICoub2JqICkg
OzsKICAgICAqLiogKSBhY19jdl9leGVleHQ9YGV4cHIgIiRhY19maWxlIiA6ICdbXi5dKlwoXC4u
KlwpJ2AKLSAgICAgICAgICBleHBvcnQgYWNfY3ZfZXhlZXh0Ci0gICAgICAgICAgYnJlYWs7Owor
CSAgZXhwb3J0IGFjX2N2X2V4ZWV4dAorCSAgYnJlYWs7OwogICAgICogKSBicmVhazs7CiAgIGVz
YWMKIGRvbmUKIGVsc2UKLSAgeyB7IGVjaG8gIiRhc19tZToxNjUwOiBlcnJvcjogY2Fubm90IGNv
bXB1dGUgRVhFRVhUOiBjYW5ub3QgY29tcGlsZSBhbmQgbGluayIgPiY1Ci1lY2hvICIkYXNfbWU6
IGVycm9yOiBjYW5ub3QgY29tcHV0ZSBFWEVFWFQ6IGNhbm5vdCBjb21waWxlIGFuZCBsaW5rIiA+
JjI7fQorICB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBjYW5ub3QgY29tcHV0ZSBz
dWZmaXggb2YgZXhlY3V0YWJsZXM6IGNhbm5vdCBjb21waWxlIGFuZCBsaW5rCitTZWUgXGBjb25m
aWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiY1CitlY2hvICIkYXNfbWU6IGVycm9yOiBjYW5u
b3QgY29tcHV0ZSBzdWZmaXggb2YgZXhlY3V0YWJsZXM6IGNhbm5vdCBjb21waWxlIGFuZCBsaW5r
CitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzLiIgPiYyO30KICAgIHsgKGV4aXQg
MSk7IGV4aXQgMTsgfTsgfQogZmkKIAogcm0gLWYgY29uZnRlc3QkYWNfY3ZfZXhlZXh0Ci1lY2hv
ICIkYXNfbWU6MTY1NjogcmVzdWx0OiAkYWNfY3ZfZXhlZXh0IiA+JjUKK2VjaG8gIiRhc19tZTok
TElORU5POiByZXN1bHQ6ICRhY19jdl9leGVleHQiID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2
X2V4ZWV4dCIgPiY2CiAKIHJtIC1mIGNvbmZ0ZXN0LiRhY19leHQKIEVYRUVYVD0kYWNfY3ZfZXhl
ZXh0CiBhY19leGVleHQ9JEVYRUVYVAotZWNobyAiJGFzX21lOjE2NjI6IGNoZWNraW5nIGZvciBv
YmplY3Qgc3VmZml4IiA+JjUKLWVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIG9iamVjdCBzdWZm
aXguLi4gJEVDSE9fQyIgPiY2CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHN1
ZmZpeCBvZiBvYmplY3QgZmlsZXMiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBmb3Igc3Vm
Zml4IG9mIG9iamVjdCBmaWxlcy4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3Zfb2Jq
ZXh0K3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIg
PiY2CiBlbHNlCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgMTY2OCAi
Y29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAgKi8KK19B
Q0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAKIGludAogbWFpbiAoKQpA
QCAtMTY4Myw0MCArMjExMCw0NiBAQAogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC5vIGNvbmZ0
ZXN0Lm9iagotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MTY4MDogXCIkYWNfY29tcGlsZVwiIikg
PiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+
JjUKICAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRh
c19tZToxNjgzOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhlbgogICBm
b3IgYWNfZmlsZSBpbiBgKGxzIGNvbmZ0ZXN0Lm8gY29uZnRlc3Qub2JqOyBscyBjb25mdGVzdC4q
KSAyPi9kZXYvbnVsbGA7IGRvCiAgIGNhc2UgJGFjX2ZpbGUgaW4KLSAgICAqLiRhY19leHQgfCAq
Lnhjb2ZmIHwgKi50ZHMgfCAqLmQgfCAqLnBkYiApIDs7CisgICAgKi4kYWNfZXh0IHwgKi54Y29m
ZiB8ICoudGRzIHwgKi5kIHwgKi5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgKSA7OwogICAg
ICopIGFjX2N2X29iamV4dD1gZXhwciAiJGFjX2ZpbGUiIDogJy4qXC5cKC4qXCknYAogICAgICAg
IGJyZWFrOzsKICAgZXNhYwogZG9uZQogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9n
cmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1Ci17IHsgZWNobyAiJGFzX21l
OjE2OTU6IGVycm9yOiBjYW5ub3QgY29tcHV0ZSBPQkpFWFQ6IGNhbm5vdCBjb21waWxlIiA+JjUK
LWVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBjb21wdXRlIE9CSkVYVDogY2Fubm90IGNvbXBp
bGUiID4mMjt9CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKK3sgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBjb21wdXRlIHN1ZmZpeCBvZiBvYmplY3Qg
ZmlsZXM6IGNhbm5vdCBjb21waWxlCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxz
LiIgPiY1CitlY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgY29tcHV0ZSBzdWZmaXggb2Ygb2Jq
ZWN0IGZpbGVzOiBjYW5ub3QgY29tcGlsZQorU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0
YWlscy4iID4mMjt9CiAgICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KIGZpCiAKIHJtIC1mIGNv
bmZ0ZXN0LiRhY19jdl9vYmpleHQgY29uZnRlc3QuJGFjX2V4dAogZmkKLWVjaG8gIiRhc19tZTox
NzAyOiByZXN1bHQ6ICRhY19jdl9vYmpleHQiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogJGFjX2N2X29iamV4dCIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3Zfb2JqZXh0IiA+
JjYKIE9CSkVYVD0kYWNfY3Zfb2JqZXh0CiBhY19vYmpleHQ9JE9CSkVYVAotZWNobyAiJGFzX21l
OjE3MDY6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBjb21waWxlciIg
PiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcg
dGhlIEdOVSBDIGNvbXBpbGVyIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgd2hldGhlciB3
ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNvbXBpbGVyLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAi
JHthY19jdl9jX2NvbXBpbGVyX2dudStzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04g
IihjYWNoZWQpICRFQ0hPX0MiID4mNgogZWxzZQogICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxf
QUNFT0YKLSNsaW5lIDE3MTIgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyog
Y29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4
dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAq
LwogCiBpbnQKIG1haW4gKCkKQEAgLTE3MzAsNDEgKzIxNjMsNTUgQEAKIH0KIF9BQ0VPRgogcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MTcyNzogXCIk
YWNfY29tcGlsZVwiIikgPiY1Ci0gIChldmFsICRhY19jb21waWxlKSAyPiY1CitpZiB7IChldmFs
IGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2YWwgJGFj
X2NvbXBpbGUpIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6
MTczMDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVy
MSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJy
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChl
eGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVz
dC4kYWNfb2JqZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZToxNzMzOiBcIiRhY190cnlcIiIp
ID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNf
c3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0
JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAo
ZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MTczNjog
XCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY29tcGls
ZXJfZ251PXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4m
NQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19l
eHQgPiY1CisKIGFjX2NvbXBpbGVyX2dudT1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpl
eHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpl
eHQgY29uZnRlc3QuJGFjX2V4dAogYWNfY3ZfY19jb21waWxlcl9nbnU9JGFjX2NvbXBpbGVyX2du
dQogCiBmaQotZWNobyAiJGFzX21lOjE3NDg6IHJlc3VsdDogJGFjX2N2X2NfY29tcGlsZXJfZ251
IiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9jX2NvbXBpbGVyX2du
dSIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfY19jb21waWxlcl9nbnUiID4mNgogR0NDPWB0
ZXN0ICRhY19jb21waWxlcl9nbnUgPSB5ZXMgJiYgZWNobyB5ZXNgCiBhY190ZXN0X0NGTEFHUz0k
e0NGTEFHUytzZXR9CiBhY19zYXZlX0NGTEFHUz0kQ0ZMQUdTCiBDRkxBR1M9Ii1nIgotZWNobyAi
JGFzX21lOjE3NTQ6IGNoZWNraW5nIHdoZXRoZXIgJENDIGFjY2VwdHMgLWciID4mNQorZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgJENDIGFjY2VwdHMgLWciID4mNQogZWNo
byAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyICRDQyBhY2NlcHRzIC1nLi4uICRFQ0hPX0MiID4m
NgogaWYgdGVzdCAiJHthY19jdl9wcm9nX2NjX2crc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAk
RUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKIGVsc2UKICAgY2F0ID5jb25mdGVzdC4kYWNf
ZXh0IDw8X0FDRU9GCi0jbGluZSAxNzYwICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMu
aCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0
LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVm
cy5oLiAgKi8KIAogaW50CiBtYWluICgpCkBAIC0xNzc1LDI2ICsyMjIyLDM3IEBACiB9CiBfQUNF
T0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjE3
NzI6IFwiJGFjX2NvbXBpbGVcIiIpID4mNQotICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQoraWYg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChl
dmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAi
JGFzX21lOjE3NzU6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25m
dGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0
ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMg
Y29uZnRlc3QuJGFjX29iamV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6MTc3ODogXCIkYWNf
dHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJ
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVz
PSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4
aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFj
X29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+
JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21l
OjE3ODE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIGFj
X2N2X3Byb2dfY2NfZz15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3
YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVz
dC4kYWNfZXh0ID4mNQorCiBhY19jdl9wcm9nX2NjX2c9bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4k
YWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4k
YWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKIGZpCi1lY2hvICIkYXNfbWU6MTc5MTogcmVzdWx0
OiAkYWNfY3ZfcHJvZ19jY19nIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRh
Y19jdl9wcm9nX2NjX2ciID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X3Byb2dfY2NfZyIgPiY2
CiBpZiB0ZXN0ICIkYWNfdGVzdF9DRkxBR1MiID0gc2V0OyB0aGVuCiAgIENGTEFHUz0kYWNfc2F2
ZV9DRkxBR1MKQEAgLTE4MTEsNiArMjI2OSwxMjEgQEAKICAgICBDRkxBR1M9CiAgIGZpCiBmaQor
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkQ0Mgb3B0aW9uIHRvIGFjY2VwdCBB
TlNJIEMiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJENDIG9wdGlvbiB0byBhY2Nl
cHQgQU5TSSBDLi4uICRFQ0hPX0MiID4mNgoraWYgdGVzdCAiJHthY19jdl9wcm9nX2NjX3N0ZGMr
c2V0fSIgPSBzZXQ7IHRoZW4KKyAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
K2Vsc2UKKyAgYWNfY3ZfcHJvZ19jY19zdGRjPW5vCithY19zYXZlX0NDPSRDQworY2F0ID5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNv
bmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FD
RU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVk
ZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5o
PgorLyogTW9zdCBvZiB0aGUgZm9sbG93aW5nIHRlc3RzIGFyZSBzdG9sZW4gZnJvbSBSQ1MgNS43
J3Mgc3JjL2NvbmYuc2guICAqLworc3RydWN0IGJ1ZiB7IGludCB4OyB9OworRklMRSAqICgqcmNz
b3BlbikgKHN0cnVjdCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KTsKK3N0YXRpYyBjaGFyICpl
IChwLCBpKQorICAgICBjaGFyICoqcDsKKyAgICAgaW50IGk7Cit7CisgIHJldHVybiBwW2ldOwor
fQorc3RhdGljIGNoYXIgKmYgKGNoYXIgKiAoKmcpIChjaGFyICoqLCBpbnQpLCBjaGFyICoqcCwg
Li4uKQoreworICBjaGFyICpzOworICB2YV9saXN0IHY7CisgIHZhX3N0YXJ0ICh2LHApOworICBz
ID0gZyAocCwgdmFfYXJnICh2LGludCkpOworICB2YV9lbmQgKHYpOworICByZXR1cm4gczsKK30K
KworLyogT1NGIDQuMCBDb21wYXEgY2MgaXMgc29tZSBzb3J0IG9mIGFsbW9zdC1BTlNJIGJ5IGRl
ZmF1bHQuICBJdCBoYXMKKyAgIGZ1bmN0aW9uIHByb3RvdHlwZXMgYW5kIHN0dWZmLCBidXQgbm90
ICdceEhIJyBoZXggY2hhcmFjdGVyIGNvbnN0YW50cy4KKyAgIFRoZXNlIGRvbid0IHByb3Zva2Ug
YW4gZXJyb3IgdW5mb3J0dW5hdGVseSwgaW5zdGVhZCBhcmUgc2lsZW50bHkgdHJlYXRlZAorICAg
YXMgJ3gnLiAgVGhlIGZvbGxvd2luZyBpbmR1Y2VzIGFuIGVycm9yLCB1bnRpbCAtc3RkMSBpcyBh
ZGRlZCB0byBnZXQKKyAgIHByb3BlciBBTlNJIG1vZGUuICBDdXJpb3VzbHkgJ1x4MDAnIT0neCcg
YWx3YXlzIGNvbWVzIG91dCB0cnVlLCBmb3IgYW4KKyAgIGFycmF5IHNpemUgYXQgbGVhc3QuICBJ
dCdzIG5lY2Vzc2FyeSB0byB3cml0ZSAnXHgwMCc9PTAgdG8gZ2V0IHNvbWV0aGluZworICAgdGhh
dCdzIHRydWUgb25seSB3aXRoIC1zdGQxLiAgKi8KK2ludCBvc2Y0X2NjX2FycmF5IFsnXHgwMCcg
PT0gMCA/IDEgOiAtMV07CisKK2ludCB0ZXN0IChpbnQgaSwgZG91YmxlIHgpOworc3RydWN0IHMx
IHtpbnQgKCpmKSAoaW50IGEpO307CitzdHJ1Y3QgczIge2ludCAoKmYpIChkb3VibGUgYSk7fTsK
K2ludCBwYWlybmFtZXMgKGludCwgY2hhciAqKiwgRklMRSAqKCopKHN0cnVjdCBidWYgKiwgc3Ry
dWN0IHN0YXQgKiwgaW50KSwgaW50LCBpbnQpOworaW50IGFyZ2M7CitjaGFyICoqYXJndjsKK2lu
dAorbWFpbiAoKQoreworcmV0dXJuIGYgKGUsIGFyZ3YsIDApICE9IGFyZ3ZbMF0gIHx8ICBmIChl
LCBhcmd2LCAxKSAhPSBhcmd2WzFdOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCisjIERv
bid0IHRyeSBnY2MgLWFuc2k7IHRoYXQgdHVybnMgb2ZmIHVzZWZ1bCBleHRlbnNpb25zIGFuZAor
IyBicmVha3Mgc29tZSBzeXN0ZW1zJyBoZWFkZXIgZmlsZXMuCisjIEFJWAkJCS1xbGFuZ2x2bD1h
bnNpCisjIFVsdHJpeCBhbmQgT1NGLzEJLXN0ZDEKKyMgSFAtVVggMTAuMjAgYW5kIGxhdGVyCS1B
ZQorIyBIUC1VWCBvbGRlciB2ZXJzaW9ucwktQWEgLURfSFBVWF9TT1VSQ0UKKyMgU1ZSNAkJCS1Y
YyAtRF9fRVhURU5TSU9OU19fCitmb3IgYWNfYXJnIGluICIiIC1xbGFuZ2x2bD1hbnNpIC1zdGQx
IC1BZSAiLUFhIC1EX0hQVVhfU09VUkNFIiAiLVhjIC1EX19FWFRFTlNJT05TX18iCitkbworICBD
Qz0iJGFjX3NhdmVfQ0MgJGFjX2FyZyIKKyAgcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAoraWYg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChl
dmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQorICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAt
diAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIx
CisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rl
c3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIn
CisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChl
dmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkg
eyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQor
ICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgorICBhY19jdl9wcm9nX2NjX3N0
ZGM9JGFjX2FyZworYnJlYWsKK2Vsc2UKKyAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3
YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworZmkKK3JtIC1m
IGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0Citkb25lCitybSAtZiBjb25mdGVzdC4k
YWNfZXh0IGNvbmZ0ZXN0LiRhY19vYmpleHQKK0NDPSRhY19zYXZlX0NDCisKK2ZpCisKK2Nhc2Ug
IngkYWNfY3ZfcHJvZ19jY19zdGRjIiBpbgorICB4fHhubykKKyAgICBlY2hvICIkYXNfbWU6JExJ
TkVOTzogcmVzdWx0OiBub25lIG5lZWRlZCIgPiY1CitlY2hvICIke0VDSE9fVH1ub25lIG5lZWRl
ZCIgPiY2IDs7CisgICopCisgICAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2
X3Byb2dfY2Nfc3RkYyIgPiY1CitlY2hvICIke0VDSE9fVH0kYWNfY3ZfcHJvZ19jY19zdGRjIiA+
JjYKKyAgICBDQz0iJENDICRhY19jdl9wcm9nX2NjX3N0ZGMiIDs7Citlc2FjCisKICMgU29tZSBw
ZW9wbGUgdXNlIGEgQysrIGNvbXBpbGVyIHRvIGNvbXBpbGUgQy4gIFNpbmNlIHdlIHVzZSBgZXhp
dCcsCiAjIGluIEMrKyB3ZSBuZWVkIHRvIGRlY2xhcmUgaXQuICBJbiBjYXNlIHNvbWVvbmUgdXNl
cyB0aGUgc2FtZSBjb21waWxlcgogIyBmb3IgYm90aCBjb21waWxpbmcgQyBhbmQgQysrIHdlIG5l
ZWQgdG8gaGF2ZSB0aGUgQysrIGNvbXBpbGVyIGRlY2lkZQpAQCAtMTgyMSwyMCArMjM5NCwyOSBA
QAogI2VuZGlmCiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKLWlmIHsgKGV2YWwg
ZWNobyAiJGFzX21lOjE4MTg6IFwiJGFjX2NvbXBpbGVcIiIpID4mNQotICAoZXZhbCAkYWNfY29t
cGlsZSkgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGls
ZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0
dXM9JD8KLSAgZWNobyAiJGFzX21lOjE4MjE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVw
IC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5l
cjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9
ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBh
Y190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNf
bWU6MTgyNDogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dl
cnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+
JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3Qg
LXMgY29uZnRlc3QuJGFjX29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8K
LSAgZWNobyAiJGFzX21lOjE4Mjc6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9
OyB9OyB0aGVuCiAgIGZvciBhY19kZWNsYXJhdGlvbiBpbiBcCi0gICAnJ1wKLSAgICcjaW5jbHVk
ZSA8c3RkbGliLmg+JyBcCisgICAnJyBcCiAgICAnZXh0ZXJuICJDIiB2b2lkIHN0ZDo6ZXhpdCAo
aW50KSB0aHJvdyAoKTsgdXNpbmcgc3RkOjpleGl0OycgXAogICAgJ2V4dGVybiAiQyIgdm9pZCBz
dGQ6OmV4aXQgKGludCk7IHVzaW5nIHN0ZDo6ZXhpdDsnIFwKICAgICdleHRlcm4gIkMiIHZvaWQg
ZXhpdCAoaW50KSB0aHJvdyAoKTsnIFwKQEAgLTE4NDIsMTAgKzI0MjQsMTMgQEAKICAgICd2b2lk
IGV4aXQgKGludCk7JwogZG8KICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGlu
ZSAxODM5ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKLSNpbmNsdWRlIDxzdGRs
aWIuaD4KKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0
ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25m
ZGVmcy5oLiAgKi8KICRhY19kZWNsYXJhdGlvbgorI2luY2x1ZGUgPHN0ZGxpYi5oPgogaW50CiBt
YWluICgpCiB7CkBAIC0xODU1LDI3ICsyNDQwLDQxIEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0
ZXN0LiRhY19vYmpleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjE4NTI6IFwiJGFjX2NvbXBp
bGVcIiIpID4mNQotICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxl
KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjE4NTU6IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0
ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNf
c3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29i
amV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6MTg1ODogXCIkYWNfdHJ5XCIiKSA+JjUKKwkg
eyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBj
b25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwi
IikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRh
c19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7
IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKKyAgeyAo
ZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFj
X3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjE4NjE6IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIg
PiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIDoKIGVsc2UKICAgZWNobyAi
JGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4m
NQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBjb250aW51ZQogZmkKLXJt
IC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3Qu
ZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAogICBjYXQgPmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDE4NzEgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25m
ZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29u
ZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNv
bmZkZWZzLmguICAqLwogJGFjX2RlY2xhcmF0aW9uCiBpbnQKIG1haW4gKCkKQEAgLTE4ODYsMjMg
KzI0ODUsMzQgQEAKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAotaWYgeyAo
ZXZhbCBlY2hvICIkYXNfbWU6MTg4MzogXCIkYWNfY29tcGlsZVwiIikgPiY1Ci0gIChldmFsICRh
Y19jb21waWxlKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19j
b21waWxlXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+Y29uZnRlc3QuZXIxCiAgIGFj
X3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MTg4NjogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1Cisg
IGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0
ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAg
ICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JwotICB7IChldmFsIGVjaG8g
IiRhc19tZToxODg5OiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFj
X2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZh
bCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3Ry
eSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0n
dGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElO
RU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1
cz0kPwotICBlY2hvICIkYXNfbWU6MTg5MjogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1
cyk7IH07IH07IHRoZW4KICAgYnJlYWsKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBj
b25mdGVzdC4kYWNfZXh0ID4mNQorCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdC4kYWNfZXh0CiBkb25lCiBybSAtZiBjb25mdGVzdCoKIGlmIHRlc3QgLW4gIiRhY19kZWNs
YXJhdGlvbiI7IHRoZW4KQEAgLTE5MTMsOSArMjUyMywxMCBAQAogCiBlbHNlCiAgIGVjaG8gIiRh
c19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUK
K3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogZmkKLXJtIC1mIGNvbmZ0ZXN0
LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0
LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAogYWNfZXh0PWMKIGFjX2NwcD0nJENQUCAkQ1BQ
RkxBR1MnCiBhY19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFj
X2V4dCA+JjUnCkBAIC0xOTMzLDQ0ICsyNTQ0LDUxIEBACiAjIEFJWCA0IC91c3IvYmluL2luc3Rh
bGxic2QsIHdoaWNoIGRvZXNuJ3Qgd29yayB3aXRob3V0IGEgLWcgZmxhZwogIyBBRlMgL3Vzci9h
ZnN3cy9iaW4vaW5zdGFsbCwgd2hpY2ggbWlzaGFuZGxlcyBub25leGlzdGVudCBhcmdzCiAjIFNW
UjQgL3Vzci91Y2IvaW5zdGFsbCwgd2hpY2ggdHJpZXMgdG8gdXNlIHRoZSBub25leGlzdGVudCBn
cm91cCAic3RhZmYiCisjIE9TLzIncyBzeXN0ZW0gaW5zdGFsbCwgd2hpY2ggaGFzIGEgY29tcGxl
dGVseSBkaWZmZXJlbnQgc2VtYW50aWMKICMgLi9pbnN0YWxsLCB3aGljaCBjYW4gYmUgZXJyb25l
b3VzbHkgY3JlYXRlZCBieSBtYWtlIGZyb20gLi9pbnN0YWxsLnNoLgotZWNobyAiJGFzX21lOjE5
MzE6IGNoZWNraW5nIGZvciBhIEJTRCBjb21wYXRpYmxlIGluc3RhbGwiID4mNQotZWNobyAkRUNI
T19OICJjaGVja2luZyBmb3IgYSBCU0QgY29tcGF0aWJsZSBpbnN0YWxsLi4uICRFQ0hPX0MiID4m
NgorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGlu
c3RhbGwiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgYSBCU0QtY29tcGF0aWJsZSBp
bnN0YWxsLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAteiAiJElOU1RBTEwiOyB0aGVuCiBpZiB0
ZXN0ICIke2FjX2N2X3BhdGhfaW5zdGFsbCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hP
X04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgogZWxzZQotICAgIGFjX3NhdmVfSUZTPSRJRlM7IElG
Uz0kYWNfcGF0aF9zZXBhcmF0b3IKLSAgZm9yIGFjX2RpciBpbiAkUEFUSDsgZG8KLSAgICBJRlM9
JGFjX3NhdmVfSUZTCi0gICAgIyBBY2NvdW50IGZvciBwZW9wbGUgd2hvIHB1dCB0cmFpbGluZyBz
bGFzaGVzIGluIFBBVEggZWxlbWVudHMuCi0gICAgY2FzZSAkYWNfZGlyLyBpbgotICAgIC8gfCAu
LyB8IC4vLyB8IC9jQy8qIFwKLSAgICB8IC9ldGMvKiB8IC91c3Ivc2Jpbi8qIHwgL3Vzci9ldGMv
KiB8IC9zYmluLyogfCAvdXNyL2Fmc3dzL2Jpbi8qIFwKLSAgICB8IC91c3IvdWNiLyogKSA7Owot
ICAgICopCi0gICAgICAjIE9TRjEgYW5kIFNDTyBPRFQgMy4wIGhhdmUgdGhlaXIgb3duIG5hbWVz
IGZvciBpbnN0YWxsLgotICAgICAgIyBEb24ndCB1c2UgaW5zdGFsbGJzZCBmcm9tIE9TRiBzaW5j
ZSBpdCBpbnN0YWxscyBzdHVmZiBhcyByb290Ci0gICAgICAjIGJ5IGRlZmF1bHQuCi0gICAgICBm
b3IgYWNfcHJvZyBpbiBnaW5zdGFsbCBzY29pbnN0IGluc3RhbGw7IGRvCi0gICAgICAgIGlmICRh
c19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3Byb2ciOyB0aGVuCisgIGFzX3NhdmVfSUZTPSRJ
RlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0k
YXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgIyBBY2NvdW50
IGZvciBwZW9wbGUgd2hvIHB1dCB0cmFpbGluZyBzbGFzaGVzIGluIFBBVEggZWxlbWVudHMuCitj
YXNlICRhc19kaXIvIGluCisgIC4vIHwgLi8vIHwgL2NDLyogfCBcCisgIC9ldGMvKiB8IC91c3Iv
c2Jpbi8qIHwgL3Vzci9ldGMvKiB8IC9zYmluLyogfCAvdXNyL2Fmc3dzL2Jpbi8qIHwgXAorICA/
OlxcL29zMlxcL2luc3RhbGxcXC8qIHwgPzpcXC9PUzJcXC9JTlNUQUxMXFwvKiB8IFwKKyAgL3Vz
ci91Y2IvKiApIDs7CisgICopCisgICAgIyBPU0YxIGFuZCBTQ08gT0RUIDMuMCBoYXZlIHRoZWly
IG93biBuYW1lcyBmb3IgaW5zdGFsbC4KKyAgICAjIERvbid0IHVzZSBpbnN0YWxsYnNkIGZyb20g
T1NGIHNpbmNlIGl0IGluc3RhbGxzIHN0dWZmIGFzIHJvb3QKKyAgICAjIGJ5IGRlZmF1bHQuCisg
ICAgZm9yIGFjX3Byb2cgaW4gZ2luc3RhbGwgc2NvaW5zdCBpbnN0YWxsOyBkbworICAgICAgZm9y
IGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisJaWYgJGFz
X2V4ZWN1dGFibGVfcCAiJGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCI7IHRoZW4KIAkgIGlm
IHRlc3QgJGFjX3Byb2cgPSBpbnN0YWxsICYmCi0gICAgICAgICAgICBncmVwIGRzcG1zZyAiJGFj
X2Rpci8kYWNfcHJvZyIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisJICAgIGdyZXAgZHNwbXNnICIk
YXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0IiA+L2Rldi9udWxsIDI+JjE7IHRoZW4KIAkgICAg
IyBBSVggaW5zdGFsbC4gIEl0IGhhcyBhbiBpbmNvbXBhdGlibGUgY2FsbGluZyBjb252ZW50aW9u
LgogCSAgICA6CiAJICBlbGlmIHRlc3QgJGFjX3Byb2cgPSBpbnN0YWxsICYmCi0JICAgIGdyZXAg
cHdwbHVzICIkYWNfZGlyLyRhY19wcm9nIiA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKwkgICAgZ3Jl
cCBwd3BsdXMgIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiID4vZGV2L251bGwgMj4mMTsg
dGhlbgogCSAgICAjIHByb2dyYW0tc3BlY2lmaWMgaW5zdGFsbCBzY3JpcHQgdXNlZCBieSBIUCBw
d3BsdXMtLWRvbid0IHVzZS4KIAkgICAgOgogCSAgZWxzZQotCSAgICBhY19jdl9wYXRoX2luc3Rh
bGw9IiRhY19kaXIvJGFjX3Byb2cgLWMiCi0JICAgIGJyZWFrIDIKKwkgICAgYWNfY3ZfcGF0aF9p
bnN0YWxsPSIkYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0IC1jIgorCSAgICBicmVhayAzCiAJ
ICBmaQogCWZpCiAgICAgICBkb25lCi0gICAgICA7OwotICAgIGVzYWMKLSAgZG9uZQorICAgIGRv
bmUKKyAgICA7OworZXNhYworZG9uZQorCiAKIGZpCiAgIGlmIHRlc3QgIiR7YWNfY3ZfcGF0aF9p
bnN0YWxsK3NldH0iID0gc2V0OyB0aGVuCkBAIC0xOTgzLDcgKzI2MDEsNyBAQAogICAgIElOU1RB
TEw9JGFjX2luc3RhbGxfc2gKICAgZmkKIGZpCi1lY2hvICIkYXNfbWU6MTk4MDogcmVzdWx0OiAk
SU5TVEFMTCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkSU5TVEFMTCIgPiY1
CiBlY2hvICIke0VDSE9fVH0kSU5TVEFMTCIgPiY2CiAKICMgVXNlIHRlc3QgLXogYmVjYXVzZSBT
dW5PUzQgc2ggbWlzaGFuZGxlcyBicmFjZXMgaW4gJHt2YXItdmFsfS4KQEAgLTE5OTQsMTYgKzI2
MTIsMTYgQEAKIAogdGVzdCAteiAiJElOU1RBTExfREFUQSIgJiYgSU5TVEFMTF9EQVRBPScke0lO
U1RBTEx9IC1tIDY0NCcKIAotZWNobyAiJGFzX21lOjE5OTE6IGNoZWNraW5nIHdoZXRoZXIgJHtN
QUtFLW1ha2V9IHNldHMgXCR7TUFLRX0iID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0
aGVyICR7TUFLRS1tYWtlfSBzZXRzIFwke01BS0V9Li4uICRFQ0hPX0MiID4mNgotc2V0IGR1bW15
ICR7TUFLRS1tYWtlfTsgYWNfbWFrZT1gZWNobyAiJDIiIHwgc2VkICd5LC4vKy0sX19wXywnYAor
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgJHtNQUtFLW1ha2V9IHNldHMg
XCQoTUFLRSkiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyICR7TUFLRS1tYWtl
fSBzZXRzIFwkKE1BS0UpLi4uICRFQ0hPX0MiID4mNgorc2V0IGR1bW15ICR7TUFLRS1tYWtlfTsg
YWNfbWFrZT1gZWNobyAiJDIiIHwgc2VkICd5LDouLystLF9fX3BfLCdgCiBpZiBldmFsICJ0ZXN0
IFwiXCR7YWNfY3ZfcHJvZ19tYWtlXyR7YWNfbWFrZX1fc2V0K3NldH1cIiA9IHNldCI7IHRoZW4K
ICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKIGVsc2UKLSAgY2F0ID5jb25m
dGVzdC5tYWtlIDw8XEVPRgorICBjYXQgPmNvbmZ0ZXN0Lm1ha2UgPDxcX0FDRU9GCiBhbGw6Ci0J
QGVjaG8gJ2FjX21ha2V0ZW1wPSIke01BS0V9IicKLUVPRgorCUBlY2hvICdhY19tYWtldGVtcD0i
JChNQUtFKSInCitfQUNFT0YKICMgR05VIG1ha2Ugc29tZXRpbWVzIHByaW50cyAibWFrZVsxXTog
RW50ZXJpbmcuLi4iLCB3aGljaCB3b3VsZCBjb25mdXNlIHVzLgogZXZhbCBgJHtNQUtFLW1ha2V9
IC1mIGNvbmZ0ZXN0Lm1ha2UgMj4vZGV2L251bGwgfCBncmVwIHRlbXA9YAogaWYgdGVzdCAtbiAi
JGFjX21ha2V0ZW1wIjsgdGhlbgpAQCAtMjAxNCwyNSArMjYzMiwyOCBAQAogcm0gLWYgY29uZnRl
c3QubWFrZQogZmkKIGlmIGV2YWwgInRlc3QgXCJgZWNobyAnJGFjX2N2X3Byb2dfbWFrZV8nJHth
Y19tYWtlfV9zZXRgXCIgPSB5ZXMiOyB0aGVuCi0gIGVjaG8gIiRhc19tZToyMDExOiByZXN1bHQ6
IHllcyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IHllcyIgPiY1CiBlY2hv
ICIke0VDSE9fVH15ZXMiID4mNgogICBTRVRfTUFLRT0KIGVsc2UKLSAgZWNobyAiJGFzX21lOjIw
MTU6IHJlc3VsdDogbm8iID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIg
PiY1CiBlY2hvICIke0VDSE9fVH1ubyIgPiY2CiAgIFNFVF9NQUtFPSJNQUtFPSR7TUFLRS1tYWtl
fSIKIGZpCiAKLWVjaG8gIiRhc19tZToyMDIwOiBjaGVja2luZyB3aGV0aGVyIGJ5dGUgb3JkZXJp
bmcgaXMgYmlnZW5kaWFuIiA+JjUKKworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdo
ZXRoZXIgYnl0ZSBvcmRlcmluZyBpcyBiaWdlbmRpYW4iID4mNQogZWNobyAkRUNIT19OICJjaGVj
a2luZyB3aGV0aGVyIGJ5dGUgb3JkZXJpbmcgaXMgYmlnZW5kaWFuLi4uICRFQ0hPX0MiID4mNgog
aWYgdGVzdCAiJHthY19jdl9jX2JpZ2VuZGlhbitzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRF
Q0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgogZWxzZQotICBhY19jdl9jX2JpZ2VuZGlhbj11
bmtub3duCi0jIFNlZSBpZiBzeXMvcGFyYW0uaCBkZWZpbmVzIHRoZSBCWVRFX09SREVSIG1hY3Jv
LgorICAjIFNlZSBpZiBzeXMvcGFyYW0uaCBkZWZpbmVzIHRoZSBCWVRFX09SREVSIG1hY3JvLgog
Y2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSAyMDI4ICJjb25maWd1cmUiCi0j
aW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29u
ZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNF
T0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNs
dWRlIDxzeXMvcGFyYW0uaD4KIApAQCAtMjA0OCwyMSArMjY2OSwzNCBAQAogfQogX0FDRU9GCiBy
bSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZToyMDQ1OiBc
IiRhY19jb21waWxlXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+JjUKK2lmIHsgKGV2
YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBpbGVcIiIpID4mNQorICAoZXZhbCAk
YWNfY29tcGlsZSkgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19t
ZToyMDQ4OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3Qu
ZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5l
cnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAg
KGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0
ZXN0LiRhY19vYmpleHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21lOjIwNTE6IFwiJGFjX3RyeVwi
IikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBc
IiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPwor
ICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRh
Y19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpl
eHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAg
IChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyMDU0
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICAjIEl0IGRv
ZXM7IG5vdyBzZWUgd2hldGhlciBpdCBkZWZpbmVkIHRvIEJJR19FTkRJQU4gb3Igbm90LgogY2F0
ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSAyMDU4ICJjb25maWd1cmUiCi0jaW5j
bHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRl
ZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YK
Ky8qIGVuZCBjb25mZGVmcy5oLiAgKi8KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRl
IDxzeXMvcGFyYW0uaD4KIApAQCAtMjA3OCw4OSArMjcxMiwxNzMgQEAKIH0KIF9BQ0VPRgogcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MjA3NTogXCIk
YWNfY29tcGlsZVwiIikgPiY1Ci0gIChldmFsICRhY19jb21waWxlKSAyPiY1CitpZiB7IChldmFs
IGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2YWwgJGFj
X2NvbXBpbGUpIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6
MjA3ODogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVy
MSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJy
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChl
eGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVz
dC4kYWNfb2JqZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZToyMDgxOiBcIiRhY190cnlcIiIp
ID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVz
dCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNf
c3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0
JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAo
ZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjA4NDog
XCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfY19i
aWdlbmRpYW49eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIg
PiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFj
X2V4dCA+JjUKKwogYWNfY3ZfY19iaWdlbmRpYW49bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNf
b2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNf
b2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQotZmkKLXJtIC1mIGNvbmZ0
ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAotaWYgdGVzdCAkYWNfY3ZfY19iaWdlbmRp
YW4gPSB1bmtub3duOyB0aGVuCitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisK
KyMgSXQgZG9lcyBub3Q7IGNvbXBpbGUgYSB0ZXN0IHByb2dyYW0uCiBpZiB0ZXN0ICIkY3Jvc3Nf
Y29tcGlsaW5nIiA9IHllczsgdGhlbgotICB7IHsgZWNobyAiJGFzX21lOjIxMDA6IGVycm9yOiBj
YW5ub3QgcnVuIHRlc3QgcHJvZ3JhbSB3aGlsZSBjcm9zcyBjb21waWxpbmciID4mNQotZWNobyAi
JGFzX21lOiBlcnJvcjogY2Fubm90IHJ1biB0ZXN0IHByb2dyYW0gd2hpbGUgY3Jvc3MgY29tcGls
aW5nIiA+JjI7fQotICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9Ci1lbHNlCisgICMgdHJ5IHRv
IGd1ZXNzIHRoZSBlbmRpYW5uZXNzIGJ5IGdyZXBwaW5nIHZhbHVlcyBpbnRvIGFuIG9iamVjdCBm
aWxlCisgIGFjX2N2X2NfYmlnZW5kaWFuPXVua25vd24KICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0
IDw8X0FDRU9GCi0jbGluZSAyMTA1ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIK
Ky8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRh
Y19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5o
LiAgKi8KK3Nob3J0IGFzY2lpX21tW10gPSB7IDB4NDI0OSwgMHg0NzY1LCAweDZFNDQsIDB4Njk2
MSwgMHg2RTUzLCAweDc5NTMsIDAgfTsKK3Nob3J0IGFzY2lpX2lpW10gPSB7IDB4Njk0QywgMHg1
NDU0LCAweDY1NkMsIDB4NkU0NSwgMHg2OTQ0LCAweDZFNjEsIDAgfTsKK3ZvaWQgX2FzY2lpICgp
IHsgY2hhciAqcyA9IChjaGFyICopIGFzY2lpX21tOyBzID0gKGNoYXIgKikgYXNjaWlfaWk7IH0K
K3Nob3J0IGViY2RpY19paVtdID0geyAweDg5RDMsIDB4RTNFMywgMHg4NTkzLCAweDk1QzUsIDB4
ODlDNCwgMHg5NTgxLCAwIH07CitzaG9ydCBlYmNkaWNfbW1bXSA9IHsgMHhDMkM5LCAweEM3ODUs
IDB4OTVDNCwgMHg4OTgxLCAweDk1RTIsIDB4QThFMiwgMCB9Owordm9pZCBfZWJjZGljICgpIHsg
Y2hhciAqcyA9IChjaGFyICopIGViY2RpY19tbTsgcyA9IChjaGFyICopIGViY2RpY19paTsgfQog
aW50CiBtYWluICgpCiB7Ci0gIC8qIEFyZSB3ZSBsaXR0bGUgb3IgYmlnIGVuZGlhbj8gIEZyb20g
SGFyYmlzb24mU3RlZWxlLiAgKi8KLSAgdW5pb24KLSAgewotICAgIGxvbmcgbDsKLSAgICBjaGFy
IGNbc2l6ZW9mIChsb25nKV07Ci0gIH0gdTsKLSAgdS5sID0gMTsKLSAgZXhpdCAodS5jW3NpemVv
ZiAobG9uZykgLSAxXSA9PSAxKTsKKyBfYXNjaWkgKCk7IF9lYmNkaWMgKCk7CisgIDsKKyAgcmV0
dXJuIDA7CiB9CiBfQUNFT0YKLXJtIC1mIGNvbmZ0ZXN0JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6MjEyMTogXCIkYWNfbGlua1wiIikgPiY1Ci0gIChldmFsICRhY19saW5rKSAy
PiY1CitybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTok
TElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+Y29u
ZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjEyNDogXCQ/ID0gJGFj
X3N0YXR1cyIgPiY1Ci0gIChleGl0ICRhY19zdGF0dXMpOyB9ICYmIHsgYWNfdHJ5PScuL2NvbmZ0
ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6MjEyNjogXCIkYWNfdHJ5XCIi
KSA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0g
LWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTok
TElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYK
KwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3Ry
eVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1
cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKKyAg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwg
JGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjIxMjk6IFwkPyA9
ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCi0gIGFjX2N2X2NfYmlnZW5k
aWFuPW5vCi1lbHNlCi0gIGVjaG8gIiRhc19tZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMg
JGFjX3N0YXR1cyIgPiY1Ci1lY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQot
Y2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1Ci1hY19jdl9jX2JpZ2VuZGlhbj15ZXMKKyAgaWYgZ3Jl
cCBCSUdlbkRpYW5TeVMgY29uZnRlc3QuJGFjX29iamV4dCA+L2Rldi9udWxsIDsgdGhlbgorICBh
Y19jdl9jX2JpZ2VuZGlhbj15ZXMKK2ZpCitpZiBncmVwIExpVFRsZUVuRGlhbiBjb25mdGVzdC4k
YWNfb2JqZXh0ID4vZGV2L251bGwgOyB0aGVuCisgIGlmIHRlc3QgIiRhY19jdl9jX2JpZ2VuZGlh
biIgPSB1bmtub3duOyB0aGVuCisgICAgYWNfY3ZfY19iaWdlbmRpYW49bm8KKyAgZWxzZQorICAg
ICMgZmluZGluZyBib3RoIHN0cmluZ3MgaXMgdW5saWtlbHkgdG8gaGFwcGVuLCBidXQgd2hvIGtu
b3dzPworICAgIGFjX2N2X2NfYmlnZW5kaWFuPXVua25vd24KKyAgZmkKK2ZpCitlbHNlCisgIGVj
aG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0
ZXN0LiRhY19leHQgPiY1CisKK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29i
amV4dCBjb25mdGVzdC4kYWNfZXh0CitlbHNlCisgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRl
c3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZk
ZWZzLmguICAqLworaW50CittYWluICgpCit7CisgIC8qIEFyZSB3ZSBsaXR0bGUgb3IgYmlnIGVu
ZGlhbj8gIEZyb20gSGFyYmlzb24mU3RlZWxlLiAgKi8KKyAgdW5pb24KKyAgeworICAgIGxvbmcg
bDsKKyAgICBjaGFyIGNbc2l6ZW9mIChsb25nKV07CisgIH0gdTsKKyAgdS5sID0gMTsKKyAgZXhp
dCAodS5jW3NpemVvZiAobG9uZykgLSAxXSA9PSAxKTsKK30KK19BQ0VPRgorcm0gLWYgY29uZnRl
c3QkYWNfZXhlZXh0CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19saW5r
XCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1
cyk7IH0gJiYgeyBhY190cnk9Jy4vY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8g
IiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1
CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCisgIGFjX2N2X2NfYmlnZW5k
aWFuPW5vCitlbHNlCisgIGVjaG8gIiRhc19tZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMg
JGFjX3N0YXR1cyIgPiY1CitlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQor
c2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCisoIGV4aXQgJGFjX3N0YXR1cyAp
CithY19jdl9jX2JpZ2VuZGlhbj15ZXMKIGZpCi1ybSAtZiBjb3JlIGNvcmUuKiAqLmNvcmUgY29u
ZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorcm0g
LWYgY29yZSAqLmNvcmUgZ21vbi5vdXQgYmIub3V0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVz
dC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKIGZpCiBmaQorcm0gLWYgY29uZnRlc3QuZXJy
IGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAogZmkKLWVjaG8gIiRhc19tZToy
MTQyOiByZXN1bHQ6ICRhY19jdl9jX2JpZ2VuZGlhbiIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkYWNfY3ZfY19iaWdlbmRpYW4iID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2
X2NfYmlnZW5kaWFuIiA+JjYKLWlmIHRlc3QgJGFjX2N2X2NfYmlnZW5kaWFuID0geWVzOyB0aGVu
CitjYXNlICRhY19jdl9jX2JpZ2VuZGlhbiBpbgorICB5ZXMpCiAKLWNhdCA+PmNvbmZkZWZzLmgg
PDxcRU9GCitjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBXT1JEU19CSUdFTkRJ
QU4gMQotRU9GCitfQUNFT0YKKyA7OworICBubykKKyAgICAgOzsKKyAgKikKKyAgICB7IHsgZWNo
byAiJGFzX21lOiRMSU5FTk86IGVycm9yOiB1bmtub3duIGVuZGlhbm5lc3MKK3ByZXNldHRpbmcg
YWNfY3ZfY19iaWdlbmRpYW49bm8gKG9yIHllcykgd2lsbCBoZWxwIiA+JjUKK2VjaG8gIiRhc19t
ZTogZXJyb3I6IHVua25vd24gZW5kaWFubmVzcworcHJlc2V0dGluZyBhY19jdl9jX2JpZ2VuZGlh
bj1ubyAob3IgeWVzKSB3aWxsIGhlbHAiID4mMjt9CisgICB7IChleGl0IDEpOyBleGl0IDE7IH07
IH0gOzsKK2VzYWMKIAotZmkKIAogYWNfZXh0PWMKIGFjX2NwcD0nJENQUCAkQ1BQRkxBR1MnCiBh
Y19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUn
CiBhY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRM
REZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JwogYWNfY29tcGlsZXJfZ251PSRhY19j
dl9jX2NvbXBpbGVyX2dudQotZWNobyAiJGFzX21lOjIxNTc6IGNoZWNraW5nIGhvdyB0byBydW4g
dGhlIEMgcHJlcHJvY2Vzc29yIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBo
b3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3NvciIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5n
IGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29yLi4uICRFQ0hPX0MiID4mNgogIyBPbiBTdW5z
LCBzb21ldGltZXMgJENQUCBuYW1lcyBhIGRpcmVjdG9yeS4KIGlmIHRlc3QgLW4gIiRDUFAiICYm
IHRlc3QgLWQgIiRDUFAiOyB0aGVuCkBAIC0yMTc4LDI0ICsyODk2LDM0IEBACiBkbwogICAjIFVz
ZSBhIGhlYWRlciBmaWxlIHRoYXQgY29tZXMgd2l0aCBnY2MsIHNvIGNvbmZpZ3VyaW5nIGdsaWJj
CiAgICMgd2l0aCBhIGZyZXNoIGNyb3NzLWNvbXBpbGVyIHdvcmtzLgorICAjIFByZWZlciA8bGlt
aXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKKyAgIyA8
bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuCiAgICMgT24g
dGhlIE5lWFQsIGNjIC1FIHJ1bnMgdGhlIGNvZGUgdGhyb3VnaCB0aGUgY29tcGlsZXIncyBwYXJz
ZXIsCiAgICMgbm90IGp1c3QgdGhyb3VnaCBjcHAuICJTeW50YXggZXJyb3IiIGlzIGhlcmUgdG8g
Y2F0Y2ggdGhpcyBjYXNlLgogICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5l
IDIxNzggImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgotI2luY2x1ZGUgPGFzc2Vy
dC5oPgotICAgICAgICAgICAgICAgICAgICAgU3ludGF4IGVycm9yCisvKiBjb25mZGVmcy5oLiAg
Ki8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaWZkZWYgX19T
VERDX18KKyMgaW5jbHVkZSA8bGltaXRzLmg+CisjZWxzZQorIyBpbmNsdWRlIDxhc3NlcnQuaD4K
KyNlbmRpZgorCQkgICAgIFN5bnRheCBlcnJvcgogX0FDRU9GCi1pZiB7IChldmFsIGVjaG8gIiRh
c19tZToyMTgzOiBcIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1CitpZiB7IChldmFs
IGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1
CiAgIChldmFsICRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCkgMj5jb25mdGVzdC5lcjEKICAgYWNf
c3RhdHVzPSQ/Ci0gIGVncmVwIC12ICdeICpcKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIK
KyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICAgcm0gLWYgY29u
ZnRlc3QuZXIxCiAgIGNhdCBjb25mdGVzdC5lcnIgPiY1Ci0gIGVjaG8gIiRhc19tZToyMTg5OiBc
JD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9udWxsOyB0aGVuCiAgIGlm
IHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVuCiAgICAgYWNfY3BwX2Vycj0kYWNfY19wcmVwcm9j
X3dhcm5fZmxhZworICAgIGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY193ZXJyb3JfZmxhZwog
ICBlbHNlCiAgICAgYWNfY3BwX2Vycj0KICAgZmkKQEAgLTIyMDYsNyArMjkzNCw4IEBACiAgIDoK
IGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLSAgY2F0IGNv
bmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisK
ICAgIyBCcm9rZW46IGZhaWxzIG9uIHZhbGlkIGlucHV0LgogY29udGludWUKIGZpCkBAIC0yMjE1
LDIwICsyOTQ0LDI0IEBACiAgICMgT0ssIHdvcmtzIG9uIHNhbmUgY2FzZXMuICBOb3cgY2hlY2sg
d2hldGhlciBub24tZXhpc3RlbnQgaGVhZGVycwogICAjIGNhbiBiZSBkZXRlY3RlZCBhbmQgaG93
LgogICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDIyMTIgImNvbmZpZ3Vy
ZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2Nh
dCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8
PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50
Lmg+CiBfQUNFT0YKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjIyMTY6IFwiJGFjX2NwcCBjb25m
dGVzdC4kYWNfZXh0XCIiKSA+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwi
JGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKICAgKGV2YWwgJGFjX2NwcCBjb25mdGVz
dC4kYWNfZXh0KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWdyZXAgLXYgJ14g
KlwrJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBncmVwIC12ICdeICorJyBjb25mdGVz
dC5lcjEgPmNvbmZ0ZXN0LmVycgogICBybSAtZiBjb25mdGVzdC5lcjEKICAgY2F0IGNvbmZ0ZXN0
LmVyciA+JjUKLSAgZWNobyAiJGFzX21lOjIyMjI6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9ID4vZGV2L251bGw7IHRoZW4KICAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRo
ZW4KICAgICBhY19jcHBfZXJyPSRhY19jX3ByZXByb2Nfd2Fybl9mbGFnCisgICAgYWNfY3BwX2Vy
cj0kYWNfY3BwX2VyciRhY19jX3dlcnJvcl9mbGFnCiAgIGVsc2UKICAgICBhY19jcHBfZXJyPQog
ICBmaQpAQCAtMjI0MCw3ICsyOTczLDggQEAKIGNvbnRpbnVlCiBlbHNlCiAgIGVjaG8gIiRhc19t
ZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci0gIGNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQor
c2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiAgICMgUGFzc2VzIGJvdGggdGVz
dHMuCiBhY19wcmVwcm9jX29rPToKIGJyZWFrCkBAIC0yMjYyLDMxICsyOTk2LDQxIEBACiBlbHNl
CiAgIGFjX2N2X3Byb2dfQ1BQPSRDUFAKIGZpCi1lY2hvICIkYXNfbWU6MjI1OTogcmVzdWx0OiAk
Q1BQIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRDUFAiID4mNQogZWNobyAi
JHtFQ0hPX1R9JENQUCIgPiY2CiBhY19wcmVwcm9jX29rPWZhbHNlCiBmb3IgYWNfY19wcmVwcm9j
X3dhcm5fZmxhZyBpbiAnJyB5ZXMKIGRvCiAgICMgVXNlIGEgaGVhZGVyIGZpbGUgdGhhdCBjb21l
cyB3aXRoIGdjYywgc28gY29uZmlndXJpbmcgZ2xpYmMKICAgIyB3aXRoIGEgZnJlc2ggY3Jvc3Mt
Y29tcGlsZXIgd29ya3MuCisgICMgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBf
X1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQorICAjIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24g
ZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4KICAgIyBPbiB0aGUgTmVYVCwgY2MgLUUgcnVucyB0aGUg
Y29kZSB0aHJvdWdoIHRoZSBjb21waWxlcidzIHBhcnNlciwKICAgIyBub3QganVzdCB0aHJvdWdo
IGNwcC4gIlN5bnRheCBlcnJvciIgaXMgaGVyZSB0byBjYXRjaCB0aGlzIGNhc2UuCiAgIGNhdCA+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgMjI2OSAiY29uZmlndXJlIgotI2luY2x1
ZGUgImNvbmZkZWZzLmgiCi0jaW5jbHVkZSA8YXNzZXJ0Lmg+Ci0gICAgICAgICAgICAgICAgICAg
ICBTeW50YXggZXJyb3IKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMu
aCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8q
IGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpZmRlZiBfX1NURENfXworIyBpbmNsdWRlIDxsaW1pdHMu
aD4KKyNlbHNlCisjIGluY2x1ZGUgPGFzc2VydC5oPgorI2VuZGlmCisJCSAgICAgU3ludGF4IGVy
cm9yCiBfQUNFT0YKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjIyNzQ6IFwiJGFjX2NwcCBjb25m
dGVzdC4kYWNfZXh0XCIiKSA+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwi
JGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKICAgKGV2YWwgJGFjX2NwcCBjb25mdGVz
dC4kYWNfZXh0KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWdyZXAgLXYgJ14g
KlwrJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBncmVwIC12ICdeICorJyBjb25mdGVz
dC5lcjEgPmNvbmZ0ZXN0LmVycgogICBybSAtZiBjb25mdGVzdC5lcjEKICAgY2F0IGNvbmZ0ZXN0
LmVyciA+JjUKLSAgZWNobyAiJGFzX21lOjIyODA6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9ID4vZGV2L251bGw7IHRoZW4KICAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRo
ZW4KICAgICBhY19jcHBfZXJyPSRhY19jX3ByZXByb2Nfd2Fybl9mbGFnCisgICAgYWNfY3BwX2Vy
cj0kYWNfY3BwX2VyciRhY19jX3dlcnJvcl9mbGFnCiAgIGVsc2UKICAgICBhY19jcHBfZXJyPQog
ICBmaQpAQCAtMjI5Nyw3ICszMDQxLDggQEAKICAgOgogZWxzZQogICBlY2hvICIkYXNfbWU6IGZh
aWxlZCBwcm9ncmFtIHdhczoiID4mNQotICBjYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAn
cy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogICAjIEJyb2tlbjogZmFpbHMgb24gdmFs
aWQgaW5wdXQuCiBjb250aW51ZQogZmkKQEAgLTIzMDYsMjAgKzMwNTEsMjQgQEAKICAgIyBPSywg
d29ya3Mgb24gc2FuZSBjYXNlcy4gIE5vdyBjaGVjayB3aGV0aGVyIG5vbi1leGlzdGVudCBoZWFk
ZXJzCiAgICMgY2FuIGJlIGRldGVjdGVkIGFuZCBob3cuCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4
dCA8PF9BQ0VPRgotI2xpbmUgMjMwMyAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgi
CisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4k
YWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMu
aC4gICovCiAjaW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KIF9BQ0VPRgotaWYgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6MjMwNzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIpID4mNQoraWYg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRc
IiIpID4mNQogICAoZXZhbCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQpIDI+Y29uZnRlc3QuZXIx
CiAgIGFjX3N0YXR1cz0kPwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRl
c3QuZXJyCisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgIHJt
IC1mIGNvbmZ0ZXN0LmVyMQogICBjYXQgY29uZnRlc3QuZXJyID4mNQotICBlY2hvICIkYXNfbWU6
MjMxMzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhl
bgogICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFjX2NwcF9lcnI9JGFjX2Nf
cHJlcHJvY193YXJuX2ZsYWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBfZXJyJGFjX2Nfd2Vycm9y
X2ZsYWcKICAgZWxzZQogICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC0yMzMxLDcgKzMwODAsOCBA
QAogY29udGludWUKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+
JjUKLSAgY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRh
Y19leHQgPiY1CisKICAgIyBQYXNzZXMgYm90aCB0ZXN0cy4KIGFjX3ByZXByb2Nfb2s9OgogYnJl
YWsKQEAgLTIzNDQsOCArMzA5NCwxMCBAQAogaWYgJGFjX3ByZXByb2Nfb2s7IHRoZW4KICAgOgog
ZWxzZQotICB7IHsgZWNobyAiJGFzX21lOjIzNDE6IGVycm9yOiBDIHByZXByb2Nlc3NvciBcIiRD
UFBcIiBmYWlscyBzYW5pdHkgY2hlY2siID4mNQotZWNobyAiJGFzX21lOiBlcnJvcjogQyBwcmVw
cm9jZXNzb3IgXCIkQ1BQXCIgZmFpbHMgc2FuaXR5IGNoZWNrIiA+JjI7fQorICB7IHsgZWNobyAi
JGFzX21lOiRMSU5FTk86IGVycm9yOiBDIHByZXByb2Nlc3NvciBcIiRDUFBcIiBmYWlscyBzYW5p
dHkgY2hlY2sKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMuIiA+JjUKK2VjaG8g
IiRhc19tZTogZXJyb3I6IEMgcHJlcHJvY2Vzc29yIFwiJENQUFwiIGZhaWxzIHNhbml0eSBjaGVj
aworU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscy4iID4mMjt9CiAgICB7IChleGl0
IDEpOyBleGl0IDE7IH07IH0KIGZpCiAKQEAgLTIzNTUsOSArMzEwNywxMSBAQAogYWNfbGluaz0n
JENDIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ0ZMQUdTICRDUFBGTEFHUyAkTERGTEFHUyBjb25m
dGVzdC4kYWNfZXh0ICRMSUJTID4mNScKIGFjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY19jb21waWxl
cl9nbnUKIAotZWNobyAiJGFzX21lOjIzNTI6IGNoZWNraW5nIGZvciBYIiA+JjUKKworZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBYIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yIFguLi4gJEVDSE9fQyIgPiY2CiAKKwogIyBDaGVjayB3aGV0aGVyIC0td2l0aC14IG9y
IC0td2l0aG91dC14IHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7d2l0aF94K3NldH0iID0gc2V0OyB0
aGVuCiAgIHdpdGh2YWw9IiR3aXRoX3giCkBAIC0yMzgxLDE4ICszMTM1LDE4IEBACiBpZiBta2Rp
ciBjb25mdGVzdC5kaXI7IHRoZW4KICAgY2QgY29uZnRlc3QuZGlyCiAgICMgTWFrZSBzdXJlIHRv
IG5vdCBwdXQgIm1ha2UiIGluIHRoZSBJbWFrZWZpbGUgcnVsZXMsIHNpbmNlIHdlIGdyZXAgaXQg
b3V0LgotICBjYXQgPkltYWtlZmlsZSA8PCdFT0YnCisgIGNhdCA+SW1ha2VmaWxlIDw8J19BQ0VP
RicKIGFjZmluZHg6CiAJQGVjaG8gJ2FjX2ltX2luY3Jvb3Q9IiR7SU5DUk9PVH0iOyBhY19pbV91
c3JsaWJkaXI9IiR7VVNSTElCRElSfSI7IGFjX2ltX2xpYmRpcj0iJHtMSUJESVJ9IicKLUVPRgor
X0FDRU9GCiAgIGlmICh4bWttZikgPi9kZXYvbnVsbCAyPi9kZXYvbnVsbCAmJiB0ZXN0IC1mIE1h
a2VmaWxlOyB0aGVuCiAgICAgIyBHTlUgbWFrZSBzb21ldGltZXMgcHJpbnRzICJtYWtlWzFdOiBF
bnRlcmluZy4uLiIsIHdoaWNoIHdvdWxkIGNvbmZ1c2UgdXMuCiAgICAgZXZhbCBgJHtNQUtFLW1h
a2V9IGFjZmluZHggMj4vZGV2L251bGwgfCBncmVwIC12IG1ha2VgCiAgICAgIyBPcGVuIFdpbmRv
d3MgeG1rbWYgcmVwb3J0ZWRseSBzZXRzIExJQkRJUiBpbnN0ZWFkIG9mIFVTUkxJQkRJUi4KICAg
ICBmb3IgYWNfZXh0ZW5zaW9uIGluIGEgc28gc2w7IGRvCiAgICAgICBpZiB0ZXN0ICEgLWYgJGFj
X2ltX3VzcmxpYmRpci9saWJYMTEuJGFjX2V4dGVuc2lvbiAmJgotICAgICAgICAgdGVzdCAtZiAk
YWNfaW1fbGliZGlyL2xpYlgxMS4kYWNfZXh0ZW5zaW9uOyB0aGVuCi0gICAgICAgIGFjX2ltX3Vz
cmxpYmRpcj0kYWNfaW1fbGliZGlyOyBicmVhaworCSB0ZXN0IC1mICRhY19pbV9saWJkaXIvbGli
WDExLiRhY19leHRlbnNpb247IHRoZW4KKwlhY19pbV91c3JsaWJkaXI9JGFjX2ltX2xpYmRpcjsg
YnJlYWsKICAgICAgIGZpCiAgICAgZG9uZQogICAgICMgU2NyZWVuIG91dCBib2d1cyB2YWx1ZXMg
ZnJvbSB0aGUgaW1ha2UgY29uZmlndXJhdGlvbi4gIFRoZXkgYXJlCkBAIC0yNDUyLDIwICszMjA2
LDI0IEBACiAgICMgR3Vlc3Mgd2hlcmUgdG8gZmluZCBpbmNsdWRlIGZpbGVzLCBieSBsb29raW5n
IGZvciBJbnRyaW5zaWMuaC4KICAgIyBGaXJzdCwgdHJ5IHVzaW5nIHRoYXQgZmlsZSB3aXRoIG5v
IHNwZWNpYWwgZGlyZWN0b3J5IHNwZWNpZmllZC4KICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8
X0FDRU9GCi0jbGluZSAyNDQ5ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8q
IGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19l
eHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KICNpbmNsdWRlIDxYMTEvSW50cmluc2ljLmg+CiBfQUNFT0YKLWlmIHsgKGV2YWwgZWNobyAi
JGFzX21lOjI0NTM6IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKK2lmIHsgKGV2
YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+
JjUKICAgKGV2YWwgJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0KSAyPmNvbmZ0ZXN0LmVyMQogICBh
Y19zdGF0dXM9JD8KLSAgZWdyZXAgLXYgJ14gKlwrJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVy
cgorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgogICBybSAtZiBj
b25mdGVzdC5lcjEKICAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKLSAgZWNobyAiJGFzX21lOjI0NTk6
IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFj
X3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ID4vZGV2L251bGw7IHRoZW4KICAg
aWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KICAgICBhY19jcHBfZXJyPSRhY19jX3ByZXBy
b2Nfd2Fybl9mbGFnCisgICAgYWNfY3BwX2Vycj0kYWNfY3BwX2VyciRhY19jX3dlcnJvcl9mbGFn
CiAgIGVsc2UKICAgICBhY19jcHBfZXJyPQogICBmaQpAQCAtMjQ3Nyw3ICszMjM1LDggQEAKIGFj
X3hfaW5jbHVkZXM9CiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIg
PiY1Ci0gIGNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4k
YWNfZXh0ID4mNQorCiAgIGZvciBhY19kaXIgaW4gJGFjX3hfaGVhZGVyX2RpcnM7IGRvCiAgIGlm
IHRlc3QgLXIgIiRhY19kaXIvWDExL0ludHJpbnNpYy5oIjsgdGhlbgogICAgIGFjX3hfaW5jbHVk
ZXM9JGFjX2RpcgpAQCAtMjQ5NSw4ICszMjU0LDExIEBACiAgIGFjX3NhdmVfTElCUz0kTElCUwog
ICBMSUJTPSItbFh0ICRMSUJTIgogICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNs
aW5lIDI0OTIgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMu
aC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogI2luY2x1
ZGUgPFgxMS9JbnRyaW5zaWMuaD4KIGludAogbWFpbiAoKQpAQCAtMjUwNywyMyArMzI2OSwzNCBA
QAogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4
dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MjUwNDogXCIkYWNfbGlua1wiIikgPiY1Ci0gIChl
dmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRh
Y19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0
YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjUwNzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdy
ZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0
LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAgICB7
IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCi0gIHsgKGV2YWwgZWNobyAiJGFz
X21lOjI1MTA6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193
ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVj
aG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAy
PiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjUxMzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAg
KGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3Qk
YWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIp
ID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9
OyB9OyB0aGVuCiAgIExJQlM9JGFjX3NhdmVfTElCUwogIyBXZSBjYW4gbGluayBYIHByb2dyYW1z
IHdpdGggbm8gc3BlY2lhbCBsaWJyYXJ5IHBhdGguCiBhY194X2xpYnJhcmllcz0KIGVsc2UKICAg
ZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNf
ZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBMSUJTPSRhY19z
YXZlX0xJQlMKIGZvciBhY19kaXIgaW4gYGVjaG8gIiRhY194X2luY2x1ZGVzICRhY194X2hlYWRl
cl9kaXJzIiB8IHNlZCBzL2luY2x1ZGUvbGliL2dgCiBkbwpAQCAtMjUzNiw3ICszMzA5LDggQEAK
ICAgZG9uZQogZG9uZQogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNf
ZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNf
b2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBmaSAj
ICRhY194X2xpYnJhcmllcyA9IG5vCiAKIGlmIHRlc3QgIiRhY194X2luY2x1ZGVzIiA9IG5vIHx8
IHRlc3QgIiRhY194X2xpYnJhcmllcyIgPSBubzsgdGhlbgpAQCAtMjU0NSw3ICszMzE5LDcgQEAK
IGVsc2UKICAgIyBSZWNvcmQgd2hlcmUgd2UgZm91bmQgWCBmb3IgdGhlIGNhY2hlLgogICBhY19j
dl9oYXZlX3g9ImhhdmVfeD15ZXMgXAotCSAgICAgICAgYWNfeF9pbmNsdWRlcz0kYWNfeF9pbmNs
dWRlcyBhY194X2xpYnJhcmllcz0kYWNfeF9saWJyYXJpZXMiCisJCWFjX3hfaW5jbHVkZXM9JGFj
X3hfaW5jbHVkZXMgYWNfeF9saWJyYXJpZXM9JGFjX3hfbGlicmFyaWVzIgogZmkKIGZpCiAKQEAg
LTI1NTQsNyArMzMyOCw3IEBACiBmaSAjICR3aXRoX3ggIT0gbm8KIAogaWYgdGVzdCAiJGhhdmVf
eCIgIT0geWVzOyB0aGVuCi0gIGVjaG8gIiRhc19tZToyNTUxOiByZXN1bHQ6ICRoYXZlX3giID4m
NQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkaGF2ZV94IiA+JjUKIGVjaG8gIiR7
RUNIT19UfSRoYXZlX3giID4mNgogICBub194PXllcwogZWxzZQpAQCAtMjU2NCwxNiArMzMzOCwx
NiBAQAogICAjIFVwZGF0ZSB0aGUgY2FjaGUgdmFsdWUgdG8gcmVmbGVjdCB0aGUgY29tbWFuZCBs
aW5lIHZhbHVlcy4KICAgYWNfY3ZfaGF2ZV94PSJoYXZlX3g9eWVzIFwKIAkJYWNfeF9pbmNsdWRl
cz0keF9pbmNsdWRlcyBhY194X2xpYnJhcmllcz0keF9saWJyYXJpZXMiCi0gIGVjaG8gIiRhc19t
ZToyNTYxOiByZXN1bHQ6IGxpYnJhcmllcyAkeF9saWJyYXJpZXMsIGhlYWRlcnMgJHhfaW5jbHVk
ZXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBsaWJyYXJpZXMgJHhfbGli
cmFyaWVzLCBoZWFkZXJzICR4X2luY2x1ZGVzIiA+JjUKIGVjaG8gIiR7RUNIT19UfWxpYnJhcmll
cyAkeF9saWJyYXJpZXMsIGhlYWRlcnMgJHhfaW5jbHVkZXMiID4mNgogZmkKIAogaWYgdGVzdCAi
JG5vX3giID0geWVzOyB0aGVuCiAgICMgTm90IGFsbCBwcm9ncmFtcyBtYXkgdXNlIHRoaXMgc3lt
Ym9sLCBidXQgaXQgZG9lcyBub3QgaHVydCB0byBkZWZpbmUgaXQuCiAKLWNhdCA+PmNvbmZkZWZz
LmggPDxcRU9GCitjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBYX0RJU1BMQVlf
TUlTU0lORyAxCi1FT0YKK19BQ0VPRgogCiAgIFhfQ0ZMQUdTPSBYX1BSRV9MSUJTPSBYX0xJQlM9
IFhfRVhUUkFfTElCUz0KIGVsc2UKQEAgLTI1ODgsMTIgKzMzNjIsMTUgQEAKICAgICAjIG90aGVy
cyByZXF1aXJlIG5vIHNwYWNlLiAgV29yZHMgYXJlIG5vdCBzdWZmaWNpZW50IC4gLiAuIC4KICAg
ICBjYXNlIGAodW5hbWUgLXNyKSAyPi9kZXYvbnVsbGAgaW4KICAgICAiU3VuT1MgNSIqKQotICAg
ICAgZWNobyAiJGFzX21lOjI1ODU6IGNoZWNraW5nIHdoZXRoZXIgLVIgbXVzdCBiZSBmb2xsb3dl
ZCBieSBhIHNwYWNlIiA+JjUKKyAgICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3
aGV0aGVyIC1SIG11c3QgYmUgZm9sbG93ZWQgYnkgYSBzcGFjZSIgPiY1CiBlY2hvICRFQ0hPX04g
ImNoZWNraW5nIHdoZXRoZXIgLVIgbXVzdCBiZSBmb2xsb3dlZCBieSBhIHNwYWNlLi4uICRFQ0hP
X0MiID4mNgogICAgICAgYWNfeHNhdmVfTElCUz0kTElCUzsgTElCUz0iJExJQlMgLVIkeF9saWJy
YXJpZXMiCiAgICAgICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDI1ODkg
ImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitf
QUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3Qu
JGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogCiBpbnQKIG1haW4gKCkK
QEAgLTI2MDQsMzMgKzMzODEsNDggQEAKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29i
amV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjI2MDE6IFwi
JGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBlY2hv
ICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5rKSAy
PmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjI2MDQ6IFwkPyA9
ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0
LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3Rh
dHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0
JwotICB7IChldmFsIGVjaG8gIiRhc19tZToyNjA3OiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFj
X3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0
ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+
JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsg
fSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190cnkp
IDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyNjEwOiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQog
ICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19SX25vc3BhY2U9eWVzCiBlbHNl
CiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3Qu
JGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogYWNfUl9u
b3NwYWNlPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVl
eHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpl
eHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKICAgICAgIGlm
IHRlc3QgJGFjX1Jfbm9zcGFjZSA9IHllczsgdGhlbgotCWVjaG8gIiRhc19tZToyNjIwOiByZXN1
bHQ6IG5vIiA+JjUKKwllY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CiBlY2hv
ICIke0VDSE9fVH1ubyIgPiY2CiAJWF9MSUJTPSIkWF9MSUJTIC1SJHhfbGlicmFyaWVzIgogICAg
ICAgZWxzZQogCUxJQlM9IiRhY194c2F2ZV9MSUJTIC1SICR4X2xpYnJhcmllcyIKIAljYXQgPmNv
bmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDI2MjYgImNvbmZpZ3VyZSIKLSNpbmNsdWRl
ICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5o
ID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyog
ZW5kIGNvbmZkZWZzLmguICAqLwogCiBpbnQKIG1haW4gKCkKQEAgLTI2NDEsMzAgKzM0MzMsNDIg
QEAKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVl
eHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjI2Mzg6IFwiJGFjX2xpbmtcIiIpID4mNQotICAo
ZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19z
dGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjI2NDE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBn
cmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVz
dC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAg
eyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRh
c19tZToyNjQ0OiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nf
d2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkg
Mj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVz
dCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/
Ci0gIGVjaG8gIiRhc19tZToyNjQ3OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsg
fTsgfTsgdGhlbgogICBhY19SX3NwYWNlPXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxl
ZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98
IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX1Jfc3BhY2U9bm8KIGZpCi1ybSAtZiBjb25m
dGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitybSAt
ZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVzdCRhY19l
eGVleHQgY29uZnRlc3QuJGFjX2V4dAogCWlmIHRlc3QgJGFjX1Jfc3BhY2UgPSB5ZXM7IHRoZW4K
LQkgIGVjaG8gIiRhc19tZToyNjU3OiByZXN1bHQ6IHllcyIgPiY1CisJICBlY2hvICIkYXNfbWU6
JExJTkVOTzogcmVzdWx0OiB5ZXMiID4mNQogZWNobyAiJHtFQ0hPX1R9eWVzIiA+JjYKIAkgIFhf
TElCUz0iJFhfTElCUyAtUiAkeF9saWJyYXJpZXMiCiAJZWxzZQotCSAgZWNobyAiJGFzX21lOjI2
NjE6IHJlc3VsdDogbmVpdGhlciB3b3JrcyIgPiY1CisJICBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiBuZWl0aGVyIHdvcmtzIiA+JjUKIGVjaG8gIiR7RUNIT19UfW5laXRoZXIgd29ya3Mi
ID4mNgogCWZpCiAgICAgICBmaQpAQCAtMjY4NCw4ICszNDg4LDExIEBACiAgICAgIyB0aGUgQWxw
aGEgbmVlZHMgZG5ldF9zdHViIChkbmV0IGRvZXMgbm90IGV4aXN0KS4KICAgICBhY194c2F2ZV9M
SUJTPSIkTElCUyI7IExJQlM9IiRMSUJTICRYX0xJQlMgLWxYMTEiCiAgICAgY2F0ID5jb25mdGVz
dC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSAyNjgxICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29u
ZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNv
bmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBj
b25mZGVmcy5oLiAgKi8KIAogLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBl
IHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtMjcwMywyMiAr
MzUxMCwzMyBAQAogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0
JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MjcwMDogXCIkYWNfbGlua1wiIikg
PiY1Ci0gIChldmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElO
RU5POiBcIiRhY19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+Y29uZnRlc3QuZXIx
CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjcwMzogXCQ/ID0gJGFjX3N0YXR1cyIg
PiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJtIC1m
IGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6JExJ
TkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCi0g
ICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCi0gIHsgKGV2YWwg
ZWNobyAiJGFzX21lOjI3MDY6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16
ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7
IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAk
YWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNf
dHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19z
dGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjI3MDk6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9OyB9OyB0aGVuCiAgIDoKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQotZWNobyAiJGFzX21lOjI3
MTU6IGNoZWNraW5nIGZvciBkbmV0X250b2EgaW4gLWxkbmV0IiA+JjUKK3NlZCAncy9eL3wgLycg
Y29uZnRlc3QuJGFjX2V4dCA+JjUKKworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZv
ciBkbmV0X250b2EgaW4gLWxkbmV0IiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGRu
ZXRfbnRvYSBpbiAtbGRuZXQuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2xpYl9k
bmV0X2RuZXRfbnRvYStzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQp
ICRFQ0hPX0MiID4mNgpAQCAtMjcyNiw4ICszNTQ0LDExIEBACiAgIGFjX2NoZWNrX2xpYl9zYXZl
X0xJQlM9JExJQlMKIExJQlM9Ii1sZG5ldCAgJExJQlMiCiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQg
PDxfQUNFT0YKLSNsaW5lIDI3MjMgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgor
LyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFj
X2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmgu
ICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQg
YW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0yNzQ1LDM0ICszNTY2LDQ2IEBA
CiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0
Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZToyNzQyOiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2
YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3Rh
dHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyNzQ1OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3Jl
cCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3Qu
ZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsg
YWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNf
bWU6Mjc0ODogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dl
cnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+
JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3Qg
LXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBc
IiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwot
ICBlY2hvICIkYXNfbWU6Mjc1MTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07
IH07IHRoZW4KICAgYWNfY3ZfbGliX2RuZXRfZG5ldF9udG9hPXllcwogZWxzZQogICBlY2hvICIk
YXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1
CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9kbmV0X2Ru
ZXRfbnRvYT1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhl
ZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2Jq
ZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBMSUJTPSRh
Y19jaGVja19saWJfc2F2ZV9MSUJTCiBmaQotZWNobyAiJGFzX21lOjI3NjI6IHJlc3VsdDogJGFj
X2N2X2xpYl9kbmV0X2RuZXRfbnRvYSIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkYWNfY3ZfbGliX2RuZXRfZG5ldF9udG9hIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9s
aWJfZG5ldF9kbmV0X250b2EiID4mNgogaWYgdGVzdCAkYWNfY3ZfbGliX2RuZXRfZG5ldF9udG9h
ID0geWVzOyB0aGVuCiAgIFhfRVhUUkFfTElCUz0iJFhfRVhUUkFfTElCUyAtbGRuZXQiCiBmaQog
CiAgICAgaWYgdGVzdCAkYWNfY3ZfbGliX2RuZXRfZG5ldF9udG9hID0gbm87IHRoZW4KLSAgICAg
IGVjaG8gIiRhc19tZToyNzY5OiBjaGVja2luZyBmb3IgZG5ldF9udG9hIGluIC1sZG5ldF9zdHVi
IiA+JjUKKyAgICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgZG5ldF9udG9h
IGluIC1sZG5ldF9zdHViIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGRuZXRfbnRv
YSBpbiAtbGRuZXRfc3R1Yi4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfbGliX2Ru
ZXRfc3R1Yl9kbmV0X250b2Erc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2Fj
aGVkKSAkRUNIT19DIiA+JjYKQEAgLTI3ODAsOCArMzYxMywxMSBAQAogICBhY19jaGVja19saWJf
c2F2ZV9MSUJTPSRMSUJTCiBMSUJTPSItbGRuZXRfc3R1YiAgJExJQlMiCiBjYXQgPmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDI3NzcgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25m
ZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29u
ZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNv
bmZkZWZzLmguICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUg
dG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0yNzk5LDI3ICsz
NjM1LDM5IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3Qk
YWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZToyNzk2OiBcIiRhY19saW5rXCIiKSA+
JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEK
ICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyNzk5OiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYg
Y29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAg
ICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6MjgwMjogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXog
IiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsg
KGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRh
Y190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190
cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTok
TElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0
YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MjgwNTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0
YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfbGliX2RuZXRfc3R1Yl9kbmV0X250b2E9eWVzCiBl
bHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRl
c3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogYWNf
Y3ZfbGliX2RuZXRfc3R1Yl9kbmV0X250b2E9bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2Jq
ZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5l
cnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRl
c3QuJGFjX2V4dAogTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUwogZmkKLWVjaG8gIiRhc19t
ZToyODE2OiByZXN1bHQ6ICRhY19jdl9saWJfZG5ldF9zdHViX2RuZXRfbnRvYSIgPiY1CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX2RuZXRfc3R1Yl9kbmV0X250b2Ei
ID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2xpYl9kbmV0X3N0dWJfZG5ldF9udG9hIiA+JjYK
IGlmIHRlc3QgJGFjX2N2X2xpYl9kbmV0X3N0dWJfZG5ldF9udG9hID0geWVzOyB0aGVuCiAgIFhf
RVhUUkFfTElCUz0iJFhfRVhUUkFfTElCUyAtbGRuZXRfc3R1YiIKQEAgLTI4MjcsNyArMzY3NSw4
IEBACiAKICAgICBmaQogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNf
ZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNf
b2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiAgICAg
TElCUz0iJGFjX3hzYXZlX0xJQlMiCiAKICAgICAjIG1zaEBjaXMudWZsLmVkdSBzYXlzIC1sbnNs
IChhbmQgLWxzb2NrZXQpIGFyZSBuZWVkZWQgZm9yIGhpcyAzODYvQVQsCkBAIC0yODM4LDY3ICsz
Njg3LDk5IEBACiAgICAgIyBvbiBJcml4IDUuMiwgYWNjb3JkaW5nIHRvIFQuRS4gRGlja2V5Lgog
ICAgICMgVGhlIGZ1bmN0aW9ucyBnZXRob3N0YnluYW1lLCBnZXRzZXJ2YnluYW1lLCBhbmQgaW5l
dF9hZGRyIGFyZQogICAgICMgaW4gLWxic2Qgb24gTHlueE9TIDMuMC4xL2kzODYsIGFjY29yZGlu
ZyB0byBMYXJzIEhlY2tpbmcuCi0gICAgZWNobyAiJGFzX21lOjI4MzU6IGNoZWNraW5nIGZvciBn
ZXRob3N0YnluYW1lIiA+JjUKKyAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9y
IGdldGhvc3RieW5hbWUiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZ2V0aG9zdGJ5
bmFtZS4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfZnVuY19nZXRob3N0YnluYW1l
K3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2
CiBlbHNlCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgMjg0MSAiY29u
ZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VP
RgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNf
ZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCisvKiBEZWZpbmUgZ2V0aG9zdGJ5
bmFtZSB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVz
IGdldGhvc3RieW5hbWUuCisgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVj
bGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KKyNkZWZpbmUgZ2V0aG9zdGJ5bmFtZSBpbm5vY3VvdXNf
Z2V0aG9zdGJ5bmFtZQorCiAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9z
IGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCi0gICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdp
dGggY2hhciBnZXRob3N0YnluYW1lICgpOyBiZWxvdy4gICovCi0jaW5jbHVkZSA8YXNzZXJ0Lmg+
CisgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBnZXRob3N0YnluYW1lICgpOyBiZWxv
dy4KKyAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRl
ZmluZWQsIHNpbmNlCisgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcg
Y29tcGlsZXJzLiAgKi8KKworI2lmZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgor
I2Vsc2UKKyMgaW5jbHVkZSA8YXNzZXJ0Lmg+CisjZW5kaWYKKworI3VuZGVmIGdldGhvc3RieW5h
bWUKKwogLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFu
IGVycm9yLiAgKi8KICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIgorewogI2VuZGlmCiAv
KiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2Yg
YSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg
c3RpbGwgYXBwbHkuICAqLwogY2hhciBnZXRob3N0YnluYW1lICgpOwotY2hhciAoKmYpICgpOwot
Ci1pbnQKLW1haW4gKCkKLXsKIC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3Ig
ZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVO
T1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgIHNvbWV0aGluZyBz
dGFydGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwogI2lm
IGRlZmluZWQgKF9fc3R1Yl9nZXRob3N0YnluYW1lKSB8fCBkZWZpbmVkIChfX3N0dWJfX19nZXRo
b3N0YnluYW1lKQogY2hva2UgbWUKICNlbHNlCi1mID0gZ2V0aG9zdGJ5bmFtZTsKK2NoYXIgKCpm
KSAoKSA9IGdldGhvc3RieW5hbWU7CisjZW5kaWYKKyNpZmRlZiBfX2NwbHVzcGx1cworfQogI2Vu
ZGlmCiAKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGYgIT0gZ2V0aG9zdGJ5bmFtZTsKICAgOwog
ICByZXR1cm4gMDsKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVz
dCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjI4NzI6IFwiJGFjX2xpbmtcIiIp
ID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJ
TkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVy
MQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjI4NzU6IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAt
ZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRM
SU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgot
ICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFs
IGVjaG8gIiRhc19tZToyODc4OiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAt
eiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwg
JGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFj
X3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNf
c3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyODgxOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNf
c3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19jdl9mdW5jX2dldGhvc3RieW5hbWU9eWVzCiBlbHNl
CiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3Qu
JGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogYWNfY3Zf
ZnVuY19nZXRob3N0YnluYW1lPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0
ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19l
eHQKIGZpCi1lY2hvICIkYXNfbWU6Mjg5MTogcmVzdWx0OiAkYWNfY3ZfZnVuY19nZXRob3N0Ynlu
YW1lIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9mdW5jX2dldGhv
c3RieW5hbWUiID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2Z1bmNfZ2V0aG9zdGJ5bmFtZSIg
PiY2CiAKICAgICBpZiB0ZXN0ICRhY19jdl9mdW5jX2dldGhvc3RieW5hbWUgPSBubzsgdGhlbgot
ICAgICAgZWNobyAiJGFzX21lOjI4OTU6IGNoZWNraW5nIGZvciBnZXRob3N0YnluYW1lIGluIC1s
bnNsIiA+JjUKKyAgICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgZ2V0aG9z
dGJ5bmFtZSBpbiAtbG5zbCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBnZXRob3N0
YnluYW1lIGluIC1sbnNsLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9saWJfbnNs
X2dldGhvc3RieW5hbWUrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVk
KSAkRUNIT19DIiA+JjYKQEAgLTI5MDYsOCArMzc4NywxMSBAQAogICBhY19jaGVja19saWJfc2F2
ZV9MSUJTPSRMSUJTCiBMSUJTPSItbG5zbCAgJExJQlMiCiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQg
PDxfQUNFT0YKLSNsaW5lIDI5MDMgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgor
LyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFj
X2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmgu
ICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQg
YW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0yOTI1LDM0ICszODA5LDQ2IEBA
CiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0
Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZToyOTIyOiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2
YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3Rh
dHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyOTI1OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3Jl
cCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3Qu
ZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsg
YWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNf
bWU6MjkyODogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dl
cnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+
JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3Qg
LXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBc
IiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwot
ICBlY2hvICIkYXNfbWU6MjkzMTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07
IH07IHRoZW4KICAgYWNfY3ZfbGliX25zbF9nZXRob3N0YnluYW1lPXllcwogZWxzZQogICBlY2hv
ICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQg
PiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9uc2xf
Z2V0aG9zdGJ5bmFtZT1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3Qk
YWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4k
YWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBM
SUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCiBmaQotZWNobyAiJGFzX21lOjI5NDI6IHJlc3Vs
dDogJGFjX2N2X2xpYl9uc2xfZ2V0aG9zdGJ5bmFtZSIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkYWNfY3ZfbGliX25zbF9nZXRob3N0YnluYW1lIiA+JjUKIGVjaG8gIiR7RUNI
T19UfSRhY19jdl9saWJfbnNsX2dldGhvc3RieW5hbWUiID4mNgogaWYgdGVzdCAkYWNfY3ZfbGli
X25zbF9nZXRob3N0YnluYW1lID0geWVzOyB0aGVuCiAgIFhfRVhUUkFfTElCUz0iJFhfRVhUUkFf
TElCUyAtbG5zbCIKIGZpCiAKICAgICAgIGlmIHRlc3QgJGFjX2N2X2xpYl9uc2xfZ2V0aG9zdGJ5
bmFtZSA9IG5vOyB0aGVuCi0gICAgICAgIGVjaG8gIiRhc19tZToyOTQ5OiBjaGVja2luZyBmb3Ig
Z2V0aG9zdGJ5bmFtZSBpbiAtbGJzZCIgPiY1CisJZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNr
aW5nIGZvciBnZXRob3N0YnluYW1lIGluIC1sYnNkIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yIGdldGhvc3RieW5hbWUgaW4gLWxic2QuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIk
e2FjX2N2X2xpYl9ic2RfZ2V0aG9zdGJ5bmFtZStzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRF
Q0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtMjk2MCw4ICszODU2LDExIEBACiAgIGFj
X2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKIExJQlM9Ii1sYnNkICAkTElCUyIKIGNhdCA+Y29u
ZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgMjk1NyAiY29uZmlndXJlIgotI2luY2x1ZGUg
ImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmgg
Pj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBl
bmQgY29uZmRlZnMuaC4gICovCiAKIC8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3Rv
dHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTI5Nzks
MjcgKzM4NzgsMzkgQEAKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjI5NzY6IFwiJGFjX2xpbmtc
IiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0
LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjI5Nzk6IFwkPyA9ICRhY19zdGF0
dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBy
bSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAm
JgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChl
dmFsIGVjaG8gIiRhc19tZToyOTgyOiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVz
dCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicK
KyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2
YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7
IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAg
YWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToyOTg1OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
KyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAk
YWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19jdl9saWJfYnNkX2dldGhvc3RieW5hbWU9eWVz
CiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29u
ZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwog
YWNfY3ZfbGliX2JzZF9nZXRob3N0YnluYW1lPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29i
amV4dCBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3Qu
ZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0
ZXN0LiRhY19leHQKIExJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNf
bWU6Mjk5NjogcmVzdWx0OiAkYWNfY3ZfbGliX2JzZF9nZXRob3N0YnluYW1lIiA+JjUKK2VjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJfYnNkX2dldGhvc3RieW5hbWUiID4m
NQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2xpYl9ic2RfZ2V0aG9zdGJ5bmFtZSIgPiY2CiBpZiB0
ZXN0ICRhY19jdl9saWJfYnNkX2dldGhvc3RieW5hbWUgPSB5ZXM7IHRoZW4KICAgWF9FWFRSQV9M
SUJTPSIkWF9FWFRSQV9MSUJTIC1sYnNkIgpAQCAtMzAxMiw3MCArMzkyMywxMDIgQEAKICAgICAj
IHNvY2tldC9zZXRzb2Nrb3B0IGFuZCBvdGhlciByb3V0aW5lcyBhcmUgdW5kZWZpbmVkIHVuZGVy
IFNDTyBPRFQKICAgICAjIDIuMC4gIEJ1dCAtbHNvY2tldCBpcyBicm9rZW4gb24gSVJJWCA1LjIg
KGFuZCBpcyBub3QgbmVjZXNzYXJ5CiAgICAgIyBvbiBsYXRlciB2ZXJzaW9ucyksIHNheXMgU2lt
b24gTGVpbmVuOiBpdCBjb250YWlucyBnZXRob3N0YnkqCi0gICAgIyB2YXJpYW50cyB0aGF0IGRv
bid0IHVzZSB0aGUgbmFtZXNlcnZlciAob3Igc29tZXRoaW5nKS4gIC1sc29ja2V0CisgICAgIyB2
YXJpYW50cyB0aGF0IGRvbid0IHVzZSB0aGUgbmFtZSBzZXJ2ZXIgKG9yIHNvbWV0aGluZykuICAt
bHNvY2tldAogICAgICMgbXVzdCBiZSBnaXZlbiBiZWZvcmUgLWxuc2wgaWYgYm90aCBhcmUgbmVl
ZGVkLiAgV2UgYXNzdW1lIHRoYXQKICAgICAjIGlmIGNvbm5lY3QgbmVlZHMgLWxuc2wsIHNvIGRv
ZXMgZ2V0aG9zdGJ5bmFtZS4KLSAgICBlY2hvICIkYXNfbWU6MzAxMjogY2hlY2tpbmcgZm9yIGNv
bm5lY3QiID4mNQorICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgY29ubmVj
dCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBjb25uZWN0Li4uICRFQ0hPX0MiID4m
NgogaWYgdGVzdCAiJHthY19jdl9mdW5jX2Nvbm5lY3Qrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNo
byAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKIGVsc2UKICAgY2F0ID5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCi0jbGluZSAzMDE4ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRl
ZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0
ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25m
ZGVmcy5oLiAgKi8KKy8qIERlZmluZSBjb25uZWN0IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBp
biBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgY29ubmVjdC4KKyAgIEZvciBleGFtcGxlLCBIUC1V
WCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLworI2RlZmluZSBjb25u
ZWN0IGlubm9jdW91c19jb25uZWN0CisKIC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1
YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKLSAgICB3aGljaCBjYW4gY29u
ZmxpY3Qgd2l0aCBjaGFyIGNvbm5lY3QgKCk7IGJlbG93LiAgKi8KLSNpbmNsdWRlIDxhc3NlcnQu
aD4KKyAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGNvbm5lY3QgKCk7IGJlbG93Lgor
ICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18gaXMgZGVmaW5l
ZCwgc2luY2UKKyAgICA8bGltaXRzLmg+IGV4aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21w
aWxlcnMuICAqLworCisjaWZkZWYgX19TVERDX18KKyMgaW5jbHVkZSA8bGltaXRzLmg+CisjZWxz
ZQorIyBpbmNsdWRlIDxhc3NlcnQuaD4KKyNlbmRpZgorCisjdW5kZWYgY29ubmVjdAorCiAvKiBP
dmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAq
LwogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiCit7CiAjZW5kaWYKIC8qIFdlIHVzZSBj
aGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAg
IGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBs
eS4gICovCiBjaGFyIGNvbm5lY3QgKCk7Ci1jaGFyICgqZikgKCk7Ci0KLWludAotbWFpbiAoKQot
ewogLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2gg
aXQgaW1wbGVtZW50cwogICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5j
dGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCiAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18g
YW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiAjaWYgZGVmaW5lZCAoX19zdHVi
X2Nvbm5lY3QpIHx8IGRlZmluZWQgKF9fc3R1Yl9fX2Nvbm5lY3QpCiBjaG9rZSBtZQogI2Vsc2UK
LWYgPSBjb25uZWN0OworY2hhciAoKmYpICgpID0gY29ubmVjdDsKKyNlbmRpZgorI2lmZGVmIF9f
Y3BsdXNwbHVzCit9CiAjZW5kaWYKIAoraW50CittYWluICgpCit7CityZXR1cm4gZiAhPSBjb25u
ZWN0OwogICA7CiAgIHJldHVybiAwOwogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2Jq
ZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzA0OTogXCIk
YWNfbGlua1wiIikgPiY1Ci0gIChldmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8g
IiRhc19tZTokTElORU5POiBcIiRhY19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+
Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MzA1MjogXCQ/ID0g
JGFjX3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3Qu
ZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0
dXMpOyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQn
Ci0gIHsgKGV2YWwgZWNobyAiJGFzX21lOjMwNTU6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNf
dHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
c3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4m
NQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6
MzA1ODogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190
cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTok
TElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0
YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAg
IChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIGFjX2N2X2Z1bmNfY29ubmVjdD15ZXMK
IGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25m
dGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBh
Y19jdl9mdW5jX2Nvbm5lY3Q9bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0
ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRl
c3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4
dAogZmkKLWVjaG8gIiRhc19tZTozMDY4OiByZXN1bHQ6ICRhY19jdl9mdW5jX2Nvbm5lY3QiID4m
NQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2Z1bmNfY29ubmVjdCIgPiY1
CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfZnVuY19jb25uZWN0IiA+JjYKIAogICAgIGlmIHRlc3Qg
JGFjX2N2X2Z1bmNfY29ubmVjdCA9IG5vOyB0aGVuCi0gICAgICBlY2hvICIkYXNfbWU6MzA3Mjog
Y2hlY2tpbmcgZm9yIGNvbm5lY3QgaW4gLWxzb2NrZXQiID4mNQorICAgICAgZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGZvciBjb25uZWN0IGluIC1sc29ja2V0IiA+JjUKIGVjaG8gJEVD
SE9fTiAiY2hlY2tpbmcgZm9yIGNvbm5lY3QgaW4gLWxzb2NrZXQuLi4gJEVDSE9fQyIgPiY2CiBp
ZiB0ZXN0ICIke2FjX2N2X2xpYl9zb2NrZXRfY29ubmVjdCtzZXR9IiA9IHNldDsgdGhlbgogICBl
Y2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtMzA4Myw4ICs0MDI2LDExIEBA
CiAgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKIExJQlM9Ii1sc29ja2V0ICRYX0VYVFJB
X0xJQlMgJExJQlMiCiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDMwODAg
ImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitf
QUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3Qu
JGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogCiAvKiBPdmVycmlkZSBh
bnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVm
IF9fY3BsdXNwbHVzCkBAIC0zMTAyLDI3ICs0MDQ4LDM5IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNv
bmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRh
c19tZTozMDk5OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lm
IHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZh
bCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19t
ZTozMTAyOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3Qu
ZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5l
cnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAg
KGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0
ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzEwNTogXCIkYWNfdHJ5XCIi
KSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwi
JGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0g
IGVjaG8gIiRhc19tZTozMTA4OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsg
fSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkp
IDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfbGli
X3NvY2tldF9jb25uZWN0PXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFt
IHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0
ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9zb2NrZXRfY29ubmVjdD1ubwogZmkKLXJtIC1m
IGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQK
K3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0
JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJT
CiBmaQotZWNobyAiJGFzX21lOjMxMTk6IHJlc3VsdDogJGFjX2N2X2xpYl9zb2NrZXRfY29ubmVj
dCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX3NvY2tldF9j
b25uZWN0IiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9saWJfc29ja2V0X2Nvbm5lY3QiID4m
NgogaWYgdGVzdCAkYWNfY3ZfbGliX3NvY2tldF9jb25uZWN0ID0geWVzOyB0aGVuCiAgIFhfRVhU
UkFfTElCUz0iLWxzb2NrZXQgJFhfRVhUUkFfTElCUyIKQEAgLTMxMzEsNjcgKzQwODksOTkgQEAK
ICAgICBmaQogCiAgICAgIyBHdWlsbGVybW8gR29tZXogc2F5cyAtbHBvc2l4IGlzIG5lY2Vzc2Fy
eSBvbiBBL1VYLgotICAgIGVjaG8gIiRhc19tZTozMTI4OiBjaGVja2luZyBmb3IgcmVtb3ZlIiA+
JjUKKyAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHJlbW92ZSIgPiY1CiBl
Y2hvICRFQ0hPX04gImNoZWNraW5nIGZvciByZW1vdmUuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0
ICIke2FjX2N2X2Z1bmNfcmVtb3ZlK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAi
KGNhY2hlZCkgJEVDSE9fQyIgPiY2CiBlbHNlCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgotI2xpbmUgMzEzNCAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBj
b25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0
CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICov
CisvKiBEZWZpbmUgcmVtb3ZlIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1p
dHMuaD4gZGVjbGFyZXMgcmVtb3ZlLgorICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRz
Lmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCisjZGVmaW5lIHJlbW92ZSBpbm5vY3VvdXNf
cmVtb3ZlCisKIC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhv
cGVmdWxseSBmZXcgcHJvdG90eXBlcywKLSAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFy
IHJlbW92ZSAoKTsgYmVsb3cuICAqLwotI2luY2x1ZGUgPGFzc2VydC5oPgorICAgIHdoaWNoIGNh
biBjb25mbGljdCB3aXRoIGNoYXIgcmVtb3ZlICgpOyBiZWxvdy4KKyAgICBQcmVmZXIgPGxpbWl0
cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCisgICAgPGxp
bWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KKworI2lm
ZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorI2Vsc2UKKyMgaW5jbHVkZSA8YXNz
ZXJ0Lmg+CisjZW5kaWYKKworI3VuZGVmIHJlbW92ZQorCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBp
bnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNw
bHVzCiBleHRlcm4gIkMiCit7CiAjZW5kaWYKIC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1p
Z2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4g
aXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCiBjaGFyIHJlbW92
ZSAoKTsKLWNoYXIgKCpmKSAoKTsKLQotaW50Ci1tYWluICgpCi17CiAvKiBUaGUgR05VIEMgbGli
cmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCiAgICAg
dG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkg
bmFtZWQKICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1l
IGlzIGFuIGFsaWFzLiAgKi8KICNpZiBkZWZpbmVkIChfX3N0dWJfcmVtb3ZlKSB8fCBkZWZpbmVk
IChfX3N0dWJfX19yZW1vdmUpCiBjaG9rZSBtZQogI2Vsc2UKLWYgPSByZW1vdmU7CitjaGFyICgq
ZikgKCkgPSByZW1vdmU7CisjZW5kaWYKKyNpZmRlZiBfX2NwbHVzcGx1cworfQogI2VuZGlmCiAK
K2ludAorbWFpbiAoKQoreworcmV0dXJuIGYgIT0gcmVtb3ZlOwogICA7CiAgIHJldHVybiAwOwog
fQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dAot
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzE2NTogXCIkYWNfbGlua1wiIikgPiY1Ci0gIChldmFs
ICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19s
aW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1
cz0kPwotICBlY2hvICIkYXNfbWU6MzE2ODogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAg
LXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVy
MQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0g
JGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFj
X3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21l
OjMxNzE6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJy
b3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8g
IiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1
CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1z
IGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAg
ZWNobyAiJGFzX21lOjMxNzQ6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9
OyB0aGVuCiAgIGFjX2N2X2Z1bmNfcmVtb3ZlPXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZh
aWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3Mv
Xi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2Z1bmNfcmVtb3ZlPW5vCiBmaQot
cm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFj
X2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29u
ZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKIGZpCi1lY2hvICIkYXNfbWU6MzE4NDog
cmVzdWx0OiAkYWNfY3ZfZnVuY19yZW1vdmUiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogJGFjX2N2X2Z1bmNfcmVtb3ZlIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9mdW5j
X3JlbW92ZSIgPiY2CiAKICAgICBpZiB0ZXN0ICRhY19jdl9mdW5jX3JlbW92ZSA9IG5vOyB0aGVu
Ci0gICAgICBlY2hvICIkYXNfbWU6MzE4ODogY2hlY2tpbmcgZm9yIHJlbW92ZSBpbiAtbHBvc2l4
IiA+JjUKKyAgICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgcmVtb3ZlIGlu
IC1scG9zaXgiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgcmVtb3ZlIGluIC1scG9z
aXguLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2xpYl9wb3NpeF9yZW1vdmUrc2V0
fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAg
LTMxOTksOCArNDE4OSwxMSBAQAogICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCiBMSUJT
PSItbHBvc2l4ICAkTElCUyIKIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUg
MzE5NiAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAg
Ki8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAKIC8qIE92ZXJy
aWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCiAj
aWZkZWYgX19jcGx1c3BsdXMKQEAgLTMyMTgsMjcgKzQyMTEsMzkgQEAKIH0KIF9BQ0VPRgogcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNo
byAiJGFzX21lOjMyMTU6IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4m
NQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1Cisg
IChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAi
JGFzX21lOjMyMTg6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25m
dGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0
ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMg
Y29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTozMjIxOiBcIiRhY190
cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVO
TzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9
JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhp
dCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19l
eGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1
CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZToz
MjI0OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9
ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19j
dl9saWJfcG9zaXhfcmVtb3ZlPXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9n
cmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNv
bmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9wb3NpeF9yZW1vdmU9bm8KIGZpCi1ybSAt
ZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0
CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVz
dCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAogTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElC
UwogZmkKLWVjaG8gIiRhc19tZTozMjM1OiByZXN1bHQ6ICRhY19jdl9saWJfcG9zaXhfcmVtb3Zl
IiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJfcG9zaXhfcmVt
b3ZlIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9saWJfcG9zaXhfcmVtb3ZlIiA+JjYKIGlm
IHRlc3QgJGFjX2N2X2xpYl9wb3NpeF9yZW1vdmUgPSB5ZXM7IHRoZW4KICAgWF9FWFRSQV9MSUJT
PSIkWF9FWFRSQV9MSUJTIC1scG9zaXgiCkBAIC0zMjQ3LDY3ICs0MjUyLDk5IEBACiAgICAgZmkK
IAogICAgICMgQlNESSBCU0QvT1MgMi4xIG5lZWRzIC1saXBjIGZvciBYT3BlbkRpc3BsYXkuCi0g
ICAgZWNobyAiJGFzX21lOjMyNDQ6IGNoZWNraW5nIGZvciBzaG1hdCIgPiY1CisgICAgZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBzaG1hdCIgPiY1CiBlY2hvICRFQ0hPX04gImNo
ZWNraW5nIGZvciBzaG1hdC4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfZnVuY19z
aG1hdCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0Mi
ID4mNgogZWxzZQogICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDMyNTAg
ImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitf
QUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3Qu
JGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworLyogRGVmaW5lIHNobWF0
IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgc2ht
YXQuCisgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGlt
ZW9mZGF5LiAgKi8KKyNkZWZpbmUgc2htYXQgaW5ub2N1b3VzX3NobWF0CisKIC8qIFN5c3RlbSBo
ZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBl
cywKLSAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHNobWF0ICgpOyBiZWxvdy4gICov
Ci0jaW5jbHVkZSA8YXNzZXJ0Lmg+CisgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBz
aG1hdCAoKTsgYmVsb3cuCisgICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBf
X1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQorICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24g
ZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCisKKyNpZmRlZiBfX1NURENfXworIyBpbmNsdWRl
IDxsaW1pdHMuaD4KKyNlbHNlCisjIGluY2x1ZGUgPGFzc2VydC5oPgorI2VuZGlmCisKKyN1bmRl
ZiBzaG1hdAorCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZv
aWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiCit7CiAjZW5k
aWYKIC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlw
ZSBvZiBhIGdjYzIKICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3
b3VsZCBzdGlsbCBhcHBseS4gICovCiBjaGFyIHNobWF0ICgpOwotY2hhciAoKmYpICgpOwotCi1p
bnQKLW1haW4gKCkKLXsKIC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVu
Y3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZ
Uy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAogICAgIHNvbWV0aGluZyBzdGFy
dGluZyB3aXRoIF9fIGFuZCB0aGUgbm9ybWFsIG5hbWUgaXMgYW4gYWxpYXMuICAqLwogI2lmIGRl
ZmluZWQgKF9fc3R1Yl9zaG1hdCkgfHwgZGVmaW5lZCAoX19zdHViX19fc2htYXQpCiBjaG9rZSBt
ZQogI2Vsc2UKLWYgPSBzaG1hdDsKK2NoYXIgKCpmKSAoKSA9IHNobWF0OworI2VuZGlmCisjaWZk
ZWYgX19jcGx1c3BsdXMKK30KICNlbmRpZgogCitpbnQKK21haW4gKCkKK3sKK3JldHVybiBmICE9
IHNobWF0OwogICA7CiAgIHJldHVybiAwOwogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNf
b2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzI4MTog
XCIkYWNfbGlua1wiIikgPiY1Ci0gIChldmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVj
aG8gIiRhc19tZTokTElORU5POiBcIiRhY19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmsp
IDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6MzI4NDogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRl
c3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVl
eHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21lOjMyODc6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsg
YWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIp
ID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9
OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZh
bCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3Ry
eSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjMyOTA6IFwkPyA9ICRhY19z
dGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1
CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIGFjX2N2X2Z1bmNfc2htYXQ9eWVz
CiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29u
ZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwog
YWNfY3ZfZnVuY19zaG1hdD1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRl
c3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVz
dC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0
CiBmaQotZWNobyAiJGFzX21lOjMzMDA6IHJlc3VsdDogJGFjX2N2X2Z1bmNfc2htYXQiID4mNQor
ZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2Z1bmNfc2htYXQiID4mNQogZWNo
byAiJHtFQ0hPX1R9JGFjX2N2X2Z1bmNfc2htYXQiID4mNgogCiAgICAgaWYgdGVzdCAkYWNfY3Zf
ZnVuY19zaG1hdCA9IG5vOyB0aGVuCi0gICAgICBlY2hvICIkYXNfbWU6MzMwNDogY2hlY2tpbmcg
Zm9yIHNobWF0IGluIC1saXBjIiA+JjUKKyAgICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3Igc2htYXQgaW4gLWxpcGMiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3Ig
c2htYXQgaW4gLWxpcGMuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2xpYl9pcGNf
c2htYXQrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19D
IiA+JjYKQEAgLTMzMTUsOCArNDM1MiwxMSBAQAogICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRM
SUJTCiBMSUJTPSItbGlwYyAgJExJQlMiCiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YK
LSNsaW5lIDMzMTIgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRl
ZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0
ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogCiAv
KiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3Iu
ICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0zMzM0LDI3ICs0Mzc0LDM5IEBACiB9CiBfQUNF
T0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChl
dmFsIGVjaG8gIiRhc19tZTozMzMxOiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xp
bmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIp
ID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0g
IGVjaG8gIiRhc19tZTozMzM0OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAq
KycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNh
dCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0
ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzMzNzog
XCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFn
IgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNf
c3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
KyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRl
c3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlc
IiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIk
YXNfbWU6MzM0MDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4K
ICAgYWNfY3ZfbGliX2lwY19zaG1hdD15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQg
cHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAv
JyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9saWJfaXBjX3NobWF0PW5vCiBmaQotcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4
dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRl
c3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKIExJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJ
QlMKIGZpCi1lY2hvICIkYXNfbWU6MzM1MTogcmVzdWx0OiAkYWNfY3ZfbGliX2lwY19zaG1hdCIg
PiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX2lwY19zaG1hdCIg
PiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfbGliX2lwY19zaG1hdCIgPiY2CiBpZiB0ZXN0ICRh
Y19jdl9saWJfaXBjX3NobWF0ID0geWVzOyB0aGVuCiAgIFhfRVhUUkFfTElCUz0iJFhfRVhUUkFf
TElCUyAtbGlwYyIKQEAgLTMzNzIsNyArNDQyNCw3IEBACiAgICMgVGhlc2UgaGF2ZSB0byBiZSBs
aW5rZWQgd2l0aCBiZWZvcmUgLWxYMTEsIHVubGlrZSB0aGUgb3RoZXIKICAgIyBsaWJyYXJpZXMg
d2UgY2hlY2sgZm9yIGJlbG93LCBzbyB1c2UgYSBkaWZmZXJlbnQgdmFyaWFibGUuCiAgICMgSm9o
biBJbnRlcnJhbnRlLCBLYXJsIEJlcnJ5Ci0gIGVjaG8gIiRhc19tZTozMzY5OiBjaGVja2luZyBm
b3IgSWNlQ29ubmVjdGlvbk51bWJlciBpbiAtbElDRSIgPiY1CisgIGVjaG8gIiRhc19tZTokTElO
RU5POiBjaGVja2luZyBmb3IgSWNlQ29ubmVjdGlvbk51bWJlciBpbiAtbElDRSIgPiY1CiBlY2hv
ICRFQ0hPX04gImNoZWNraW5nIGZvciBJY2VDb25uZWN0aW9uTnVtYmVyIGluIC1sSUNFLi4uICRF
Q0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9saWJfSUNFX0ljZUNvbm5lY3Rpb25OdW1iZXIr
c2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
QEAgLTMzODAsOCArNDQzMiwxMSBAQAogICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCiBM
SUJTPSItbElDRSAkWF9FWFRSQV9MSUJTICRMSUJTIgogY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8
X0FDRU9GCi0jbGluZSAzMzc3ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8q
IGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19l
eHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KIAogLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFu
IGVycm9yLiAgKi8KICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtMzM5OSwyNyArNDQ1NCwzOSBAQAog
fQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dAot
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6MzM5NjogXCIkYWNfbGlua1wiIikgPiY1Ci0gIChldmFs
ICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19s
aW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1
cz0kPwotICBlY2hvICIkYXNfbWU6MzM5OTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAg
LXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVy
MQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0g
JGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFj
X3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21l
OjM0MDI6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJy
b3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8g
IiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1
CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1z
IGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAg
ZWNobyAiJGFzX21lOjM0MDU6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9
OyB0aGVuCiAgIGFjX2N2X2xpYl9JQ0VfSWNlQ29ubmVjdGlvbk51bWJlcj15ZXMKIGVsc2UKICAg
ZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNf
ZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9saWJf
SUNFX0ljZUNvbm5lY3Rpb25OdW1iZXI9bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0
IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5lcnIg
Y29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3Qu
JGFjX2V4dAogTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUwogZmkKLWVjaG8gIiRhc19tZToz
NDE2OiByZXN1bHQ6ICRhY19jdl9saWJfSUNFX0ljZUNvbm5lY3Rpb25OdW1iZXIiID4mNQorZWNo
byAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2xpYl9JQ0VfSWNlQ29ubmVjdGlvbk51
bWJlciIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfbGliX0lDRV9JY2VDb25uZWN0aW9uTnVt
YmVyIiA+JjYKIGlmIHRlc3QgJGFjX2N2X2xpYl9JQ0VfSWNlQ29ubmVjdGlvbk51bWJlciA9IHll
czsgdGhlbgogICBYX1BSRV9MSUJTPSIkWF9QUkVfTElCUyAtbFNNIC1sSUNFIgpAQCAtMzQyOSw3
ICs0NDk2LDggQEAKIAogZmkKIAotZWNobyAiJGFzX21lOjM0MjY6IGNoZWNraW5nIHdoZXRoZXIg
YnVpbGQgZW52aXJvbm1lbnQgaXMgc2FuZSIgPiY1CisKK2VjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUiID4mNQogZWNobyAkRUNI
T19OICJjaGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUuLi4gJEVDSE9f
QyIgPiY2CiAjIEp1c3QgaW4gY2FzZQogc2xlZXAgMQpAQCAtMzQ1Miw3ICs0NTIwLDcgQEAKICAg
ICAgICMgaWYsIGZvciBpbnN0YW5jZSwgQ09ORklHX1NIRUxMIGlzIGJhc2ggYW5kIGl0IGluaGVy
aXRzIGEKICAgICAgICMgYnJva2VuIGxzIGFsaWFzIGZyb20gdGhlIGVudmlyb25tZW50LiAgVGhp
cyBoYXMgYWN0dWFsbHkKICAgICAgICMgaGFwcGVuZWQuICBTdWNoIGEgc3lzdGVtIGNvdWxkIG5v
dCBiZSBjb25zaWRlcmVkICJzYW5lIi4KLSAgICAgIHsgeyBlY2hvICIkYXNfbWU6MzQ0OTogZXJy
b3I6IGxzIC10IGFwcGVhcnMgdG8gZmFpbC4gIE1ha2Ugc3VyZSB0aGVyZSBpcyBub3QgYSBicm9r
ZW4KKyAgICAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGxzIC10IGFwcGVhcnMg
dG8gZmFpbC4gIE1ha2Ugc3VyZSB0aGVyZSBpcyBub3QgYSBicm9rZW4KIGFsaWFzIGluIHlvdXIg
ZW52aXJvbm1lbnQiID4mNQogZWNobyAiJGFzX21lOiBlcnJvcjogbHMgLXQgYXBwZWFycyB0byBm
YWlsLiAgTWFrZSBzdXJlIHRoZXJlIGlzIG5vdCBhIGJyb2tlbgogYWxpYXMgaW4geW91ciBlbnZp
cm9ubWVudCIgPiYyO30KQEAgLTM0NjUsMTQgKzQ1MzMsMTQgQEAKICAgICMgT2suCiAgICA6CiBl
bHNlCi0gICB7IHsgZWNobyAiJGFzX21lOjM0NjI6IGVycm9yOiBuZXdseSBjcmVhdGVkIGZpbGUg
aXMgb2xkZXIgdGhhbiBkaXN0cmlidXRlZCBmaWxlcyEKKyAgIHsgeyBlY2hvICIkYXNfbWU6JExJ
TkVOTzogZXJyb3I6IG5ld2x5IGNyZWF0ZWQgZmlsZSBpcyBvbGRlciB0aGFuIGRpc3RyaWJ1dGVk
IGZpbGVzIQogQ2hlY2sgeW91ciBzeXN0ZW0gY2xvY2siID4mNQogZWNobyAiJGFzX21lOiBlcnJv
cjogbmV3bHkgY3JlYXRlZCBmaWxlIGlzIG9sZGVyIHRoYW4gZGlzdHJpYnV0ZWQgZmlsZXMhCiBD
aGVjayB5b3VyIHN5c3RlbSBjbG9jayIgPiYyO30KICAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsg
fQogZmkKIHJtIC1mIGNvbmZ0ZXN0KgotZWNobyAiJGFzX21lOjM0Njk6IHJlc3VsdDogeWVzIiA+
JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IHllcyIgPiY1CiBlY2hvICIke0VDSE9f
VH15ZXMiID4mNgogdGVzdCAiJHByb2dyYW1fcHJlZml4IiAhPSBOT05FICYmCiAgIHByb2dyYW1f
dHJhbnNmb3JtX25hbWU9InMsXiwkcHJvZ3JhbV9wcmVmaXgsOyRwcm9ncmFtX3RyYW5zZm9ybV9u
YW1lIgpAQCAtMzQ4NywxMDMgKzQ1NTUsMTA5IEBACiBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPWBl
Y2hvICRwcm9ncmFtX3RyYW5zZm9ybV9uYW1lIHwgc2VkIC1mIGNvbmZ0ZXN0LnNlZGAKIHJtIGNv
bmZ0ZXN0LnNlZAogCisKIFBBQ0tBR0U9IkRldklMIgogCiBWRVJTSU9OPSRERVZJTF9NQUpPUi4k
REVWSUxfTUlOT1IuJERFVklMX1JFVklTSU9OCiAKIGlmIHRlc3QgImBjZCAkc3JjZGlyICYmIHB3
ZGAiICE9ICJgcHdkYCIgJiYgdGVzdCAtZiAkc3JjZGlyL2NvbmZpZy5zdGF0dXM7IHRoZW4KLSAg
eyB7IGVjaG8gIiRhc19tZTozNDg5OiBlcnJvcjogc291cmNlIGRpcmVjdG9yeSBhbHJlYWR5IGNv
bmZpZ3VyZWQ7IHJ1biBcIm1ha2UgZGlzdGNsZWFuXCIgdGhlcmUgZmlyc3QiID4mNQorICB7IHsg
ZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBzb3VyY2UgZGlyZWN0b3J5IGFscmVhZHkgY29u
ZmlndXJlZDsgcnVuIFwibWFrZSBkaXN0Y2xlYW5cIiB0aGVyZSBmaXJzdCIgPiY1CiBlY2hvICIk
YXNfbWU6IGVycm9yOiBzb3VyY2UgZGlyZWN0b3J5IGFscmVhZHkgY29uZmlndXJlZDsgcnVuIFwi
bWFrZSBkaXN0Y2xlYW5cIiB0aGVyZSBmaXJzdCIgPiYyO30KICAgIHsgKGV4aXQgMSk7IGV4aXQg
MTsgfTsgfQogZmkKIAotY2F0ID4+Y29uZmRlZnMuaCA8PEVPRgorY2F0ID4+Y29uZmRlZnMuaCA8
PF9BQ0VPRgogI2RlZmluZSBQQUNLQUdFICIkUEFDS0FHRSIKLUVPRgorX0FDRU9GCisKIAotY2F0
ID4+Y29uZmRlZnMuaCA8PEVPRgorY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgogI2RlZmluZSBW
RVJTSU9OICIkVkVSU0lPTiIKLUVPRgorX0FDRU9GCisKKwogCiBtaXNzaW5nX2Rpcj1gY2QgJGFj
X2F1eF9kaXIgJiYgcHdkYAotZWNobyAiJGFzX21lOjM1MDM6IGNoZWNraW5nIGZvciB3b3JraW5n
IGFjbG9jYWwiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciB3b3JraW5n
IGFjbG9jYWwiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3Igd29ya2luZyBhY2xvY2Fs
Li4uICRFQ0hPX0MiID4mNgogIyBSdW4gdGVzdCBpbiBhIHN1YnNoZWxsOyBzb21lIHZlcnNpb25z
IG9mIHNoIHdpbGwgcHJpbnQgYW4gZXJyb3IgaWYKICMgYW4gZXhlY3V0YWJsZSBpcyBub3QgZm91
bmQsIGV2ZW4gaWYgc3RkZXJyIGlzIHJlZGlyZWN0ZWQuCiAjIFJlZGlyZWN0IHN0ZGluIHRvIHBs
YWNhdGUgb2xkZXIgdmVyc2lvbnMgb2YgYXV0b2NvbmYuICBTaWdoLgogaWYgKGFjbG9jYWwgLS12
ZXJzaW9uKSA8IC9kZXYvbnVsbCA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgICBBQ0xPQ0FMPWFj
bG9jYWwKLSAgIGVjaG8gIiRhc19tZTozNTEwOiByZXN1bHQ6IGZvdW5kIiA+JjUKKyAgIGVjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6IGZvdW5kIiA+JjUKIGVjaG8gIiR7RUNIT19UfWZvdW5k
IiA+JjYKIGVsc2UKICAgIEFDTE9DQUw9IiRtaXNzaW5nX2Rpci9taXNzaW5nIGFjbG9jYWwiCi0g
ICBlY2hvICIkYXNfbWU6MzUxNDogcmVzdWx0OiBtaXNzaW5nIiA+JjUKKyAgIGVjaG8gIiRhc19t
ZTokTElORU5POiByZXN1bHQ6IG1pc3NpbmciID4mNQogZWNobyAiJHtFQ0hPX1R9bWlzc2luZyIg
PiY2CiBmaQogCi1lY2hvICIkYXNfbWU6MzUxODogY2hlY2tpbmcgZm9yIHdvcmtpbmcgYXV0b2Nv
bmYiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciB3b3JraW5nIGF1dG9j
b25mIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHdvcmtpbmcgYXV0b2NvbmYuLi4g
JEVDSE9fQyIgPiY2CiAjIFJ1biB0ZXN0IGluIGEgc3Vic2hlbGw7IHNvbWUgdmVyc2lvbnMgb2Yg
c2ggd2lsbCBwcmludCBhbiBlcnJvciBpZgogIyBhbiBleGVjdXRhYmxlIGlzIG5vdCBmb3VuZCwg
ZXZlbiBpZiBzdGRlcnIgaXMgcmVkaXJlY3RlZC4KICMgUmVkaXJlY3Qgc3RkaW4gdG8gcGxhY2F0
ZSBvbGRlciB2ZXJzaW9ucyBvZiBhdXRvY29uZi4gIFNpZ2guCiBpZiAoYXV0b2NvbmYgLS12ZXJz
aW9uKSA8IC9kZXYvbnVsbCA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgICBBVVRPQ09ORj1hdXRv
Y29uZgotICAgZWNobyAiJGFzX21lOjM1MjU6IHJlc3VsdDogZm91bmQiID4mNQorICAgZWNobyAi
JGFzX21lOiRMSU5FTk86IHJlc3VsdDogZm91bmQiID4mNQogZWNobyAiJHtFQ0hPX1R9Zm91bmQi
ID4mNgogZWxzZQogICAgQVVUT0NPTkY9IiRtaXNzaW5nX2Rpci9taXNzaW5nIGF1dG9jb25mIgot
ICAgZWNobyAiJGFzX21lOjM1Mjk6IHJlc3VsdDogbWlzc2luZyIgPiY1CisgICBlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiBtaXNzaW5nIiA+JjUKIGVjaG8gIiR7RUNIT19UfW1pc3Npbmci
ID4mNgogZmkKIAotZWNobyAiJGFzX21lOjM1MzM6IGNoZWNraW5nIGZvciB3b3JraW5nIGF1dG9t
YWtlIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3Igd29ya2luZyBhdXRv
bWFrZSIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciB3b3JraW5nIGF1dG9tYWtlLi4u
ICRFQ0hPX0MiID4mNgogIyBSdW4gdGVzdCBpbiBhIHN1YnNoZWxsOyBzb21lIHZlcnNpb25zIG9m
IHNoIHdpbGwgcHJpbnQgYW4gZXJyb3IgaWYKICMgYW4gZXhlY3V0YWJsZSBpcyBub3QgZm91bmQs
IGV2ZW4gaWYgc3RkZXJyIGlzIHJlZGlyZWN0ZWQuCiAjIFJlZGlyZWN0IHN0ZGluIHRvIHBsYWNh
dGUgb2xkZXIgdmVyc2lvbnMgb2YgYXV0b2NvbmYuICBTaWdoLgogaWYgKGF1dG9tYWtlIC0tdmVy
c2lvbikgPCAvZGV2L251bGwgPiAvZGV2L251bGwgMj4mMTsgdGhlbgogICAgQVVUT01BS0U9YXV0
b21ha2UKLSAgIGVjaG8gIiRhc19tZTozNTQwOiByZXN1bHQ6IGZvdW5kIiA+JjUKKyAgIGVjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6IGZvdW5kIiA+JjUKIGVjaG8gIiR7RUNIT19UfWZvdW5k
IiA+JjYKIGVsc2UKICAgIEFVVE9NQUtFPSIkbWlzc2luZ19kaXIvbWlzc2luZyBhdXRvbWFrZSIK
LSAgIGVjaG8gIiRhc19tZTozNTQ0OiByZXN1bHQ6IG1pc3NpbmciID4mNQorICAgZWNobyAiJGFz
X21lOiRMSU5FTk86IHJlc3VsdDogbWlzc2luZyIgPiY1CiBlY2hvICIke0VDSE9fVH1taXNzaW5n
IiA+JjYKIGZpCiAKLWVjaG8gIiRhc19tZTozNTQ4OiBjaGVja2luZyBmb3Igd29ya2luZyBhdXRv
aGVhZGVyIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3Igd29ya2luZyBh
dXRvaGVhZGVyIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHdvcmtpbmcgYXV0b2hl
YWRlci4uLiAkRUNIT19DIiA+JjYKICMgUnVuIHRlc3QgaW4gYSBzdWJzaGVsbDsgc29tZSB2ZXJz
aW9ucyBvZiBzaCB3aWxsIHByaW50IGFuIGVycm9yIGlmCiAjIGFuIGV4ZWN1dGFibGUgaXMgbm90
IGZvdW5kLCBldmVuIGlmIHN0ZGVyciBpcyByZWRpcmVjdGVkLgogIyBSZWRpcmVjdCBzdGRpbiB0
byBwbGFjYXRlIG9sZGVyIHZlcnNpb25zIG9mIGF1dG9jb25mLiAgU2lnaC4KIGlmIChhdXRvaGVh
ZGVyIC0tdmVyc2lvbikgPCAvZGV2L251bGwgPiAvZGV2L251bGwgMj4mMTsgdGhlbgogICAgQVVU
T0hFQURFUj1hdXRvaGVhZGVyCi0gICBlY2hvICIkYXNfbWU6MzU1NTogcmVzdWx0OiBmb3VuZCIg
PiY1CisgICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBmb3VuZCIgPiY1CiBlY2hvICIk
e0VDSE9fVH1mb3VuZCIgPiY2CiBlbHNlCiAgICBBVVRPSEVBREVSPSIkbWlzc2luZ19kaXIvbWlz
c2luZyBhdXRvaGVhZGVyIgotICAgZWNobyAiJGFzX21lOjM1NTk6IHJlc3VsdDogbWlzc2luZyIg
PiY1CisgICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBtaXNzaW5nIiA+JjUKIGVjaG8g
IiR7RUNIT19UfW1pc3NpbmciID4mNgogZmkKIAotZWNobyAiJGFzX21lOjM1NjM6IGNoZWNraW5n
IGZvciB3b3JraW5nIG1ha2VpbmZvIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2lu
ZyBmb3Igd29ya2luZyBtYWtlaW5mbyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciB3
b3JraW5nIG1ha2VpbmZvLi4uICRFQ0hPX0MiID4mNgogIyBSdW4gdGVzdCBpbiBhIHN1YnNoZWxs
OyBzb21lIHZlcnNpb25zIG9mIHNoIHdpbGwgcHJpbnQgYW4gZXJyb3IgaWYKICMgYW4gZXhlY3V0
YWJsZSBpcyBub3QgZm91bmQsIGV2ZW4gaWYgc3RkZXJyIGlzIHJlZGlyZWN0ZWQuCiAjIFJlZGly
ZWN0IHN0ZGluIHRvIHBsYWNhdGUgb2xkZXIgdmVyc2lvbnMgb2YgYXV0b2NvbmYuICBTaWdoLgog
aWYgKG1ha2VpbmZvIC0tdmVyc2lvbikgPCAvZGV2L251bGwgPiAvZGV2L251bGwgMj4mMTsgdGhl
bgogICAgTUFLRUlORk89bWFrZWluZm8KLSAgIGVjaG8gIiRhc19tZTozNTcwOiByZXN1bHQ6IGZv
dW5kIiA+JjUKKyAgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6IGZvdW5kIiA+JjUKIGVj
aG8gIiR7RUNIT19UfWZvdW5kIiA+JjYKIGVsc2UKICAgIE1BS0VJTkZPPSIkbWlzc2luZ19kaXIv
bWlzc2luZyBtYWtlaW5mbyIKLSAgIGVjaG8gIiRhc19tZTozNTc0OiByZXN1bHQ6IG1pc3Npbmci
ID4mNQorICAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbWlzc2luZyIgPiY1CiBlY2hv
ICIke0VDSE9fVH1taXNzaW5nIiA+JjYKIGZpCiAKLWFjX2NvbmZpZ19oZWFkZXJzPSIkYWNfY29u
ZmlnX2hlYWRlcnMgaW5jbHVkZS9JTC9jb25maWcuaCIKIAotYWNfY29uZmlnX2NvbW1hbmRzPSIk
YWNfY29uZmlnX2NvbW1hbmRzIGRlZmF1bHQtMSIKKworICAgICAgICAgIGFjX2NvbmZpZ19oZWFk
ZXJzPSIkYWNfY29uZmlnX2hlYWRlcnMgaW5jbHVkZS9JTC9jb25maWcuaCIKKworICAgICAgICAg
IGFjX2NvbmZpZ19jb21tYW5kcz0iJGFjX2NvbmZpZ19jb21tYW5kcyBkZWZhdWx0LTEiCiAKICMg
Q2hlY2sgd2hldGhlciAtLWVuYWJsZS1zdGF0aWMgb3IgLS1kaXNhYmxlLXN0YXRpYyB3YXMgZ2l2
ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9zdGF0aWMrc2V0fSIgPSBzZXQ7IHRoZW4KQEAgLTM2NjIs
NiArNDczNiw3IEBACiAgIFBBVEhfU0VQQVJBVE9SPSRsdF9jdl9zeXNfcGF0aF9zZXBhcmF0b3IK
IGZpCiAKKwogIyBDaGVjayB3aGV0aGVyIC0td2l0aC1nbnUtbGQgb3IgLS13aXRob3V0LWdudS1s
ZCB3YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke3dpdGhfZ251X2xkK3NldH0iID0gc2V0OyB0aGVuCiAg
IHdpdGh2YWw9IiR3aXRoX2dudV9sZCIKQEAgLTM2NzIsNyArNDc0Nyw3IEBACiBhY19wcm9nPWxk
CiBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICAjIENoZWNrIGlmIGdjYyAtcHJpbnQtcHJv
Zy1uYW1lPWxkIGdpdmVzIGEgcGF0aC4KLSAgZWNobyAiJGFzX21lOjM2Njk6IGNoZWNraW5nIGZv
ciBsZCB1c2VkIGJ5IEdDQyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBm
b3IgbGQgdXNlZCBieSBHQ0MiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgbGQgdXNl
ZCBieSBHQ0MuLi4gJEVDSE9fQyIgPiY2CiAgIGNhc2UgJGhvc3QgaW4KICAgKi0qLW1pbmd3KikK
QEAgLTM3MDIsMTAgKzQ3NzcsMTAgQEAKICAgICA7OwogICBlc2FjCiBlbGlmIHRlc3QgIiR3aXRo
X2dudV9sZCIgPSB5ZXM7IHRoZW4KLSAgZWNobyAiJGFzX21lOjM2OTk6IGNoZWNraW5nIGZvciBH
TlUgbGQiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIEdOVSBsZCIg
PiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBHTlUgbGQuLi4gJEVDSE9fQyIgPiY2CiBl
bHNlCi0gIGVjaG8gIiRhc19tZTozNzAyOiBjaGVja2luZyBmb3Igbm9uLUdOVSBsZCIgPiY1Cisg
IGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3Igbm9uLUdOVSBsZCIgPiY1CiBlY2hv
ICRFQ0hPX04gImNoZWNraW5nIGZvciBub24tR05VIGxkLi4uICRFQ0hPX0MiID4mNgogZmkKIGlm
IHRlc3QgIiR7bHRfY3ZfcGF0aF9MRCtzZXR9IiA9IHNldDsgdGhlbgpAQCAtMzczNSwxNiArNDgx
MCwxNiBAQAogCiBMRD0iJGx0X2N2X3BhdGhfTEQiCiBpZiB0ZXN0IC1uICIkTEQiOyB0aGVuCi0g
IGVjaG8gIiRhc19tZTozNzMyOiByZXN1bHQ6ICRMRCIgPiY1CisgIGVjaG8gIiRhc19tZTokTElO
RU5POiByZXN1bHQ6ICRMRCIgPiY1CiBlY2hvICIke0VDSE9fVH0kTEQiID4mNgogZWxzZQotICBl
Y2hvICIkYXNfbWU6MzczNTogcmVzdWx0OiBubyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiByZXN1bHQ6IG5vIiA+JjUKIGVjaG8gIiR7RUNIT19UfW5vIiA+JjYKIGZpCi10ZXN0IC16ICIk
TEQiICYmIHsgeyBlY2hvICIkYXNfbWU6MzczODogZXJyb3I6IG5vIGFjY2VwdGFibGUgbGQgZm91
bmQgaW4gXCRQQVRIIiA+JjUKK3Rlc3QgLXogIiRMRCIgJiYgeyB7IGVjaG8gIiRhc19tZTokTElO
RU5POiBlcnJvcjogbm8gYWNjZXB0YWJsZSBsZCBmb3VuZCBpbiBcJFBBVEgiID4mNQogZWNobyAi
JGFzX21lOiBlcnJvcjogbm8gYWNjZXB0YWJsZSBsZCBmb3VuZCBpbiBcJFBBVEgiID4mMjt9CiAg
ICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KLWVjaG8gIiRhc19tZTozNzQxOiBjaGVja2luZyBp
ZiB0aGUgbGlua2VyICgkTEQpIGlzIEdOVSBsZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzog
Y2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoJExEKSBpcyBHTlUgbGQiID4mNQogZWNobyAkRUNIT19O
ICJjaGVja2luZyBpZiB0aGUgbGlua2VyICgkTEQpIGlzIEdOVSBsZC4uLiAkRUNIT19DIiA+JjYK
IGlmIHRlc3QgIiR7bHRfY3ZfcHJvZ19nbnVfbGQrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAk
RUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTM3NTYsMjMgKzQ4MzEsMjQgQEAKICAg
bHRfY3ZfcHJvZ19nbnVfbGQ9bm8KIGZpCiBmaQotZWNobyAiJGFzX21lOjM3NTM6IHJlc3VsdDog
JGx0X2N2X3Byb2dfZ251X2xkIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRs
dF9jdl9wcm9nX2dudV9sZCIgPiY1CiBlY2hvICIke0VDSE9fVH0kbHRfY3ZfcHJvZ19nbnVfbGQi
ID4mNgogd2l0aF9nbnVfbGQ9JGx0X2N2X3Byb2dfZ251X2xkCiAKLWVjaG8gIiRhc19tZTozNzU3
OiBjaGVja2luZyBmb3IgJExEIG9wdGlvbiB0byByZWxvYWQgb2JqZWN0IGZpbGVzIiA+JjUKKwor
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkTEQgb3B0aW9uIHRvIHJlbG9hZCBv
YmplY3QgZmlsZXMiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJExEIG9wdGlvbiB0
byByZWxvYWQgb2JqZWN0IGZpbGVzLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHtsdF9jdl9s
ZF9yZWxvYWRfZmxhZytzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQp
ICRFQ0hPX0MiID4mNgogZWxzZQogICBsdF9jdl9sZF9yZWxvYWRfZmxhZz0nLXInCiBmaQotZWNo
byAiJGFzX21lOjM3NjQ6IHJlc3VsdDogJGx0X2N2X2xkX3JlbG9hZF9mbGFnIiA+JjUKK2VjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9sZF9yZWxvYWRfZmxhZyIgPiY1CiBlY2hv
ICIke0VDSE9fVH0kbHRfY3ZfbGRfcmVsb2FkX2ZsYWciID4mNgogcmVsb2FkX2ZsYWc9JGx0X2N2
X2xkX3JlbG9hZF9mbGFnCiB0ZXN0IC1uICIkcmVsb2FkX2ZsYWciICYmIHJlbG9hZF9mbGFnPSIg
JHJlbG9hZF9mbGFnIgogCi1lY2hvICIkYXNfbWU6Mzc2OTogY2hlY2tpbmcgZm9yIEJTRC1jb21w
YXRpYmxlIG5tIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgQlNELWNv
bXBhdGlibGUgbm0iID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgQlNELWNvbXBhdGli
bGUgbm0uLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2x0X2N2X3BhdGhfTk0rc2V0fSIgPSBz
ZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTM4MDgs
MjEgKzQ4ODQsMjEgQEAKIGZpCiAKIE5NPSIkbHRfY3ZfcGF0aF9OTSIKLWVjaG8gIiRhc19tZToz
ODA1OiByZXN1bHQ6ICROTSIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkTk0i
ID4mNQogZWNobyAiJHtFQ0hPX1R9JE5NIiA+JjYKIAotZWNobyAiJGFzX21lOjM4MDg6IGNoZWNr
aW5nIHdoZXRoZXIgbG4gLXMgd29ya3MiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNr
aW5nIHdoZXRoZXIgbG4gLXMgd29ya3MiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0
aGVyIGxuIC1zIHdvcmtzLi4uICRFQ0hPX0MiID4mNgogTE5fUz0kYXNfbG5fcwogaWYgdGVzdCAi
JExOX1MiID0gImxuIC1zIjsgdGhlbgotICBlY2hvICIkYXNfbWU6MzgxMjogcmVzdWx0OiB5ZXMi
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiB5ZXMiID4mNQogZWNobyAiJHtF
Q0hPX1R9eWVzIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFzX21lOjM4MTU6IHJlc3VsdDogbm8sIHVz
aW5nICRMTl9TIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8sIHVzaW5n
ICRMTl9TIiA+JjUKIGVjaG8gIiR7RUNIT19UfW5vLCB1c2luZyAkTE5fUyIgPiY2CiBmaQogCi1l
Y2hvICIkYXNfbWU6MzgxOTogY2hlY2tpbmcgaG93IHRvIHJlY29nbmlzZSBkZXBlbmRhbnQgbGli
cmFyaWVzIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBob3cgdG8gcmVjb2du
aXNlIGRlcGVuZGFudCBsaWJyYXJpZXMiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBob3cg
dG8gcmVjb2duaXNlIGRlcGVuZGFudCBsaWJyYXJpZXMuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0
ICIke2x0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8g
JEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC0zOTk0LDEzICs1MDcwLDE5IEBACiBl
c2FjCiAKIGZpCi1lY2hvICIkYXNfbWU6Mzk5MTogcmVzdWx0OiAkbHRfY3ZfZGVwbGlic19jaGVj
a19tZXRob2QiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0X2N2X2RlcGxp
YnNfY2hlY2tfbWV0aG9kIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRsdF9jdl9kZXBsaWJzX2NoZWNr
X21ldGhvZCIgPiY2CiBmaWxlX21hZ2ljX2NtZD0kbHRfY3ZfZmlsZV9tYWdpY19jbWQKIGRlcGxp
YnNfY2hlY2tfbWV0aG9kPSRsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZAogCisKKworCisKKwor
CiAjIENoZWNrIGZvciBjb21tYW5kIHRvIGdyYWIgdGhlIHJhdyBzeW1ib2wgbmFtZSBmb2xsb3dl
ZCBieSBDIHN5bWJvbCBmcm9tIG5tLgotZWNobyAiJGFzX21lOjM5OTc6IGNoZWNraW5nIGNvbW1h
bmQgdG8gcGFyc2UgJE5NIG91dHB1dCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tp
bmcgY29tbWFuZCB0byBwYXJzZSAkTk0gb3V0cHV0IiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgY29tbWFuZCB0byBwYXJzZSAkTk0gb3V0cHV0Li4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAi
JHtsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8g
JEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC00MDgxLDE3ICs1MTYzLDE3IEBACiBp
bnQgbWFpbigpe25tX3Rlc3RfdmFyPSdhJztubV90ZXN0X2Z1bmMoKTtyZXR1cm4oMCk7fQogRU9G
CiAKLSAgaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6NDA3ODogXCIkYWNfY29tcGlsZVwiIikgPiY1
CisgIGlmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBpbGVcIiIpID4m
NQogICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFz
X21lOjQwODE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB0aGVuCiAgICAg
IyBOb3cgdHJ5IHRvIGdyYWIgdGhlIHN5bWJvbHMuCiAgICAgbmxpc3Q9Y29uZnRlc3Qubm0KLSAg
ICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTo0MDg1OiBcIiROTSBjb25mdGVzdC4kYWNfb2JqZXh0
IFx8ICRsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlIFw+ICRubGlzdFwiIikgPiY1CisgICAg
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkTk0gY29uZnRlc3QuJGFjX29iamV4
dCBcfCAkbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZSBcPiAkbmxpc3RcIiIpID4mNQogICAo
ZXZhbCAkTk0gY29uZnRlc3QuJGFjX29iamV4dCBcfCAkbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xf
cGlwZSBcPiAkbmxpc3QpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo0MDg4
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJiB0ZXN0IC1zICIkbmxpc3Qi
OyB0aGVuCiAgICAgICAjIFRyeSBzb3J0aW5nIGFuZCB1bmlxdWlmeWluZyB0aGUgb3V0cHV0Lgog
ICAgICAgaWYgc29ydCAiJG5saXN0IiB8IHVuaXEgPiAiJG5saXN0IlQ7IHRoZW4KQEAgLTQxNDMs
MTAgKzUyMjUsMTAgQEAKIAkgIHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIgogCSAgTElCUz0iY29uZnRz
dG0uJGFjX29iamV4dCIKIAkgIENGTEFHUz0iJENGTEFHUyRub19idWlsdGluX2ZsYWciCi0JICBp
ZiB7IChldmFsIGVjaG8gIiRhc19tZTo0MTQwOiBcIiRhY19saW5rXCIiKSA+JjUKKwkgIGlmIHsg
KGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQogICAoZXZhbCAk
YWNfbGluaykgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjQxNDM6IFwkPyA9
ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1
cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ICYmIHRlc3QgLXMgY29uZnRlc3Q7IHRoZW4K
IAkgICAgcGlwZV93b3Jrcz15ZXMKIAkgIGZpCkBAIC00MTg3LDM2ICs1MjY5LDM0NiBAQAogZmkK
IGlmIHRlc3QgLXogIiRnbG9iYWxfc3ltYm9sX3BpcGUkZ2xvYmFsX3N5bWJvbF90b19jZGVjJGds
b2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3MiOwogdGhlbgotICBlY2hvICIkYXNfbWU6NDE4
NDogcmVzdWx0OiBmYWlsZWQiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBm
YWlsZWQiID4mNQogZWNobyAiJHtFQ0hPX1R9ZmFpbGVkIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFz
X21lOjQxODc6IHJlc3VsdDogb2siID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiBvayIgPiY1CiBlY2hvICIke0VDSE9fVH1vayIgPiY2CiBmaQogCi1mb3IgYWNfaGVhZGVyIGlu
IGRsZmNuLmgKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgZWdyZXAiID4mNQor
ZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZWdyZXAuLi4gJEVDSE9fQyIgPiY2CitpZiB0ZXN0
ICIke2FjX2N2X3Byb2dfZWdyZXArc2V0fSIgPSBzZXQ7IHRoZW4KKyAgZWNobyAkRUNIT19OICIo
Y2FjaGVkKSAkRUNIT19DIiA+JjYKK2Vsc2UKKyAgaWYgZWNobyBhIHwgKGdyZXAgLUUgJyhhfGIp
JykgPi9kZXYvbnVsbCAyPiYxCisgICAgdGhlbiBhY19jdl9wcm9nX2VncmVwPSdncmVwIC1FJwor
ICAgIGVsc2UgYWNfY3ZfcHJvZ19lZ3JlcD0nZWdyZXAnCisgICAgZmkKK2ZpCitlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfcHJvZ19lZ3JlcCIgPiY1CitlY2hvICIke0VDSE9f
VH0kYWNfY3ZfcHJvZ19lZ3JlcCIgPiY2CisgRUdSRVA9JGFjX2N2X3Byb2dfZWdyZXAKKworCitl
Y2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMiID4m
NQorZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcy4uLiAkRUNI
T19DIiA+JjYKK2lmIHRlc3QgIiR7YWNfY3ZfaGVhZGVyX3N0ZGMrc2V0fSIgPSBzZXQ7IHRoZW4K
KyAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKK2Vsc2UKKyAgY2F0ID5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNv
bmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FD
RU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVk
ZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8ZmxvYXQuaD4KKwor
aW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgorcm0gLWYgY29u
ZnRlc3QuJGFjX29iamV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNf
Y29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQorICBh
Y19zdGF0dXM9JD8KKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIK
KyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRh
c19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7
IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRl
c3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwi
JGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/Cisg
IGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFj
X3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4
dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAg
KGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhl
bgorICBhY19jdl9oZWFkZXJfc3RkYz15ZXMKK2Vsc2UKKyAgZWNobyAiJGFzX21lOiBmYWlsZWQg
cHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwor
YWNfY3ZfaGVhZGVyX3N0ZGM9bm8KK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFj
X29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisKK2lmIHRlc3QgJGFjX2N2X2hlYWRlcl9zdGRjID0g
eWVzOyB0aGVuCisgICMgU3VuT1MgNC54IHN0cmluZy5oIGRvZXMgbm90IGRlY2xhcmUgbWVtKiwg
Y29udHJhcnkgdG8gQU5TSS4KKyAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBj
b25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0
CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICov
CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK19BQ0VPRgoraWYgKGV2YWwgIiRhY19jcHAgY29uZnRl
c3QuJGFjX2V4dCIpIDI+JjUgfAorICAkRUdSRVAgIm1lbWNociIgPi9kZXYvbnVsbCAyPiYxOyB0
aGVuCisgIDoKK2Vsc2UKKyAgYWNfY3ZfaGVhZGVyX3N0ZGM9bm8KK2ZpCitybSAtZiBjb25mdGVz
dCoKKworZmkKKworaWYgdGVzdCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KKyAgIyBJ
U0MgMi4wLjIgc3RkbGliLmggZG9lcyBub3QgZGVjbGFyZSBmcmVlLCBjb250cmFyeSB0byBBTlNJ
LgorICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZzLmguICAqLwor
X0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzdGRs
aWIuaD4KKworX0FDRU9GCitpZiAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj4m
NSB8CisgICRFR1JFUCAiZnJlZSIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgIDoKK2Vsc2UKKyAg
YWNfY3ZfaGVhZGVyX3N0ZGM9bm8KK2ZpCitybSAtZiBjb25mdGVzdCoKKworZmkKKworaWYgdGVz
dCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KKyAgIyAvYmluL2NjIGluIElyaXgtNC4w
LjUgZ2V0cyBub24tQU5TSSBjdHlwZSBtYWNyb3MgdW5sZXNzIHVzaW5nIC1hbnNpLgorICBpZiB0
ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IHllczsgdGhlbgorICA6CitlbHNlCisgIGNhdCA+Y29u
ZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBj
b25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGN0eXBlLmg+CisjaWYgKCgn
ICcgJiAweDBGRikgPT0gMHgwMjApCisjIGRlZmluZSBJU0xPV0VSKGMpICgnYScgPD0gKGMpICYm
IChjKSA8PSAneicpCisjIGRlZmluZSBUT1VQUEVSKGMpIChJU0xPV0VSKGMpID8gJ0EnICsgKChj
KSAtICdhJykgOiAoYykpCisjZWxzZQorIyBkZWZpbmUgSVNMT1dFUihjKSBcCisJCSAgICgoJ2En
IDw9IChjKSAmJiAoYykgPD0gJ2knKSBcCisJCSAgICAgfHwgKCdqJyA8PSAoYykgJiYgKGMpIDw9
ICdyJykgXAorCQkgICAgIHx8ICgncycgPD0gKGMpICYmIChjKSA8PSAneicpKQorIyBkZWZpbmUg
VE9VUFBFUihjKSAoSVNMT1dFUihjKSA/ICgoYykgfCAweDQwKSA6IChjKSkKKyNlbmRpZgorCisj
ZGVmaW5lIFhPUihlLCBmKSAoKChlKSAmJiAhKGYpKSB8fCAoIShlKSAmJiAoZikpKQoraW50Citt
YWluICgpCit7CisgIGludCBpOworICBmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspCisgICAgaWYg
KFhPUiAoaXNsb3dlciAoaSksIElTTE9XRVIgKGkpKQorCXx8IHRvdXBwZXIgKGkpICE9IFRPVVBQ
RVIgKGkpKQorICAgICAgZXhpdCgyKTsKKyAgZXhpdCAoMCk7Cit9CitfQUNFT0YKK3JtIC1mIGNv
bmZ0ZXN0JGFjX2V4ZWV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNf
bGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5rKSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19z
dGF0dXMpOyB9ICYmIHsgYWNfdHJ5PScuL2NvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkg
Mj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgorICA6CitlbHNlCisg
IGVjaG8gIiRhc19tZTogcHJvZ3JhbSBleGl0ZWQgd2l0aCBzdGF0dXMgJGFjX3N0YXR1cyIgPiY1
CitlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBj
b25mdGVzdC4kYWNfZXh0ID4mNQorCisoIGV4aXQgJGFjX3N0YXR1cyApCithY19jdl9oZWFkZXJf
c3RkYz1ubworZmkKK3JtIC1mIGNvcmUgKi5jb3JlIGdtb24ub3V0IGJiLm91dCBjb25mdGVzdCRh
Y19leGVleHQgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorZmkKK2Zp
CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfaGVhZGVyX3N0ZGMiID4mNQor
ZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl9zdGRjIiA+JjYKK2lmIHRlc3QgJGFjX2N2X2hl
YWRlcl9zdGRjID0geWVzOyB0aGVuCisKK2NhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCisjZGVm
aW5lIFNURENfSEVBREVSUyAxCitfQUNFT0YKKworZmkKKworIyBPbiBJUklYIDUuMywgc3lzL3R5
cGVzIGFuZCBpbnR0eXBlcy5oIGFyZSBjb25mbGljdGluZy4KKworCisKKworCisKKworCisKK2Zv
ciBhY19oZWFkZXIgaW4gc3lzL3R5cGVzLmggc3lzL3N0YXQuaCBzdGRsaWIuaCBzdHJpbmcuaCBt
ZW1vcnkuaCBzdHJpbmdzLmggXAorCQkgIGludHR5cGVzLmggc3RkaW50LmggdW5pc3RkLmgKIGRv
CiBhc19hY19IZWFkZXI9YGVjaG8gImFjX2N2X2hlYWRlcl8kYWNfaGVhZGVyIiB8ICRhc190cl9z
aGAKLWVjaG8gIiRhc19tZTo0MTk0OiBjaGVja2luZyBmb3IgJGFjX2hlYWRlciIgPiY1CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY19oZWFkZXIiID4mNQogZWNobyAkRUNI
T19OICJjaGVja2luZyBmb3IgJGFjX2hlYWRlci4uLiAkRUNIT19DIiA+JjYKIGlmIGV2YWwgInRl
c3QgXCJcJHskYXNfYWNfSGVhZGVyK3NldH1cIiA9IHNldCI7IHRoZW4KICAgZWNobyAkRUNIT19O
ICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKIGVsc2UKICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8
X0FDRU9GCi0jbGluZSA0MjAwICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8q
IGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19l
eHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KKyRhY19pbmNsdWRlc19kZWZhdWx0CisKKyNpbmNsdWRlIDwkYWNfaGVhZGVyPgorX0FDRU9G
CitybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElO
RU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+Y29uZnRl
c3QuZXIxCisgIGFjX3N0YXR1cz0kPworICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNv
bmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUK
KyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAk
YWNfc3RhdHVzKTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWci
CisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19z
dGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQor
ICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVz
dC4kYWNfb2JqZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlc
IiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMp
OyB9OyB9OyB0aGVuCisgIGV2YWwgIiRhc19hY19IZWFkZXI9eWVzIgorZWxzZQorICBlY2hvICIk
YXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4k
YWNfZXh0ID4mNQorCitldmFsICIkYXNfYWNfSGVhZGVyPW5vIgorZmkKK3JtIC1mIGNvbmZ0ZXN0
LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCitlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiBgZXZhbCBlY2hvICckeyckYXNfYWNfSGVhZGVyJ30nYCIgPiY1
CitlY2hvICIke0VDSE9fVH1gZXZhbCBlY2hvICckeyckYXNfYWNfSGVhZGVyJ30nYCIgPiY2Citp
ZiB0ZXN0IGBldmFsIGVjaG8gJyR7JyRhc19hY19IZWFkZXInfSdgID0geWVzOyB0aGVuCisgIGNh
dCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgYGVjaG8gIkhBVkVfJGFjX2hlYWRlciIg
fCAkYXNfdHJfY3BwYCAxCitfQUNFT0YKKworZmkKKworZG9uZQorCisKKworZm9yIGFjX2hlYWRl
ciBpbiBkbGZjbi5oCitkbworYXNfYWNfSGVhZGVyPWBlY2hvICJhY19jdl9oZWFkZXJfJGFjX2hl
YWRlciIgfCAkYXNfdHJfc2hgCitpZiBldmFsICJ0ZXN0IFwiXCR7JGFzX2FjX0hlYWRlcitzZXR9
XCIgPSBzZXQiOyB0aGVuCisgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFj
X2hlYWRlciIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciAkYWNfaGVhZGVyLi4uICRF
Q0hPX0MiID4mNgoraWYgZXZhbCAidGVzdCBcIlwkeyRhc19hY19IZWFkZXIrc2V0fVwiID0gc2V0
IjsgdGhlbgorICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgorZmkKK2VjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6IGBldmFsIGVjaG8gJyR7JyRhc19hY19IZWFkZXInfSdg
IiA+JjUKK2VjaG8gIiR7RUNIT19UfWBldmFsIGVjaG8gJyR7JyRhc19hY19IZWFkZXInfSdgIiA+
JjYKK2Vsc2UKKyAgIyBJcyB0aGUgaGVhZGVyIGNvbXBpbGFibGU/CitlY2hvICIkYXNfbWU6JExJ
TkVOTzogY2hlY2tpbmcgJGFjX2hlYWRlciB1c2FiaWxpdHkiID4mNQorZWNobyAkRUNIT19OICJj
aGVja2luZyAkYWNfaGVhZGVyIHVzYWJpbGl0eS4uLiAkRUNIT19DIiA+JjYKK2NhdCA+Y29uZnRl
c3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25m
ZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VP
RgorLyogZW5kIGNvbmZkZWZzLmguICAqLworJGFjX2luY2x1ZGVzX2RlZmF1bHQKKyNpbmNsdWRl
IDwkYWNfaGVhZGVyPgorX0FDRU9GCitybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CitpZiB7IChl
dmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2YWwg
JGFjX2NvbXBpbGUpIDI+Y29uZnRlc3QuZXIxCisgIGFjX3N0YXR1cz0kPworICBncmVwIC12ICde
ICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAg
Y2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAt
eiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwg
JGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFj
X3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JworICB7IChldmFsIGVjaG8gIiRhc19t
ZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFj
X3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1
CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCisgIGFjX2hlYWRlcl9jb21waWxlcj15
ZXMKK2Vsc2UKKyAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAn
cy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworYWNfaGVhZGVyX2NvbXBpbGVyPW5vCitm
aQorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4
dAorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2hlYWRlcl9jb21waWxlciIgPiY1
CitlY2hvICIke0VDSE9fVH0kYWNfaGVhZGVyX2NvbXBpbGVyIiA+JjYKKworIyBJcyB0aGUgaGVh
ZGVyIHByZXNlbnQ/CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgJGFjX2hlYWRlciBw
cmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nICRhY19oZWFkZXIgcHJlc2VuY2Uu
Li4gJEVDSE9fQyIgPiY2CitjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZk
ZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2Nh
dCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KICNp
bmNsdWRlIDwkYWNfaGVhZGVyPgogX0FDRU9GCi1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo0MjA0
OiBcIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1CitpZiB7IChldmFsIGVjaG8gIiRh
c19tZTokTElORU5POiBcIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1CiAgIChldmFs
ICRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCkgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/
Ci0gIGVncmVwIC12ICdeICpcKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgZ3JlcCAt
diAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICAgcm0gLWYgY29uZnRlc3QuZXIx
CiAgIGNhdCBjb25mdGVzdC5lcnIgPiY1Ci0gIGVjaG8gIiRhc19tZTo0MjEwOiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9udWxsOyB0aGVuCiAgIGlmIHRlc3QgLXMg
Y29uZnRlc3QuZXJyOyB0aGVuCiAgICAgYWNfY3BwX2Vycj0kYWNfY19wcmVwcm9jX3dhcm5fZmxh
ZworICAgIGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY193ZXJyb3JfZmxhZwogICBlbHNlCiAg
ICAgYWNfY3BwX2Vycj0KICAgZmkKQEAgLTQyMjQsMjkgKzU2MTYsNzggQEAKICAgYWNfY3BwX2Vy
cj15ZXMKIGZpCiBpZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7IHRoZW4KLSAgZXZhbCAiJGFzX2Fj
X0hlYWRlcj15ZXMiCisgIGFjX2hlYWRlcl9wcmVwcm9jPXllcwogZWxzZQogICBlY2hvICIkYXNf
bWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQotICBjYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUK
LSAgZXZhbCAiJGFzX2FjX0hlYWRlcj1ubyIKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4
dCA+JjUKKworICBhY19oZWFkZXJfcHJlcHJvYz1ubwogZmkKIHJtIC1mIGNvbmZ0ZXN0LmVyciBj
b25mdGVzdC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfaGVhZGVy
X3ByZXByb2MiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9wcmVwcm9jIiA+JjYKKwor
IyBTbz8gIFdoYXQgYWJvdXQgdGhpcyBoZWFkZXI/CitjYXNlICRhY19oZWFkZXJfY29tcGlsZXI6
JGFjX2hlYWRlcl9wcmVwcm9jOiRhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluCisgIHllczpubzog
KQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6ICRhY19oZWFkZXI6IGFjY2Vw
dGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXByb2Nlc3NvciEiID4mNQor
ZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfaGVhZGVyOiBhY2NlcHRlZCBieSB0aGUgY29tcGls
ZXIsIHJlamVjdGVkIGJ5IHRoZSBwcmVwcm9jZXNzb3IhIiA+JjI7fQorICAgIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IFdBUk5JTkc6ICRhY19oZWFkZXI6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29t
cGlsZXIncyByZXN1bHQiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfaGVhZGVyOiBw
cm9jZWVkaW5nIHdpdGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjI7fQorICAgIGFjX2hlYWRl
cl9wcmVwcm9jPXllcworICAgIDs7CisgIG5vOnllczoqICkKKyAgICB7IGVjaG8gIiRhc19tZTok
TElORU5POiBXQVJOSU5HOiAkYWNfaGVhZGVyOiBwcmVzZW50IGJ1dCBjYW5ub3QgYmUgY29tcGls
ZWQiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfaGVhZGVyOiBwcmVzZW50IGJ1dCBj
YW5ub3QgYmUgY29tcGlsZWQiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FS
TklORzogJGFjX2hlYWRlcjogICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFk
ZXJzPyIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6ICRhY19oZWFkZXI6ICAgICBjaGVjayBm
b3IgbWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8iID4mMjt9CisgICAgeyBlY2hvICIkYXNf
bWU6JExJTkVOTzogV0FSTklORzogJGFjX2hlYWRlcjogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVu
dGF0aW9uIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogJGFjX2hlYWRlcjogc2VlIHRoZSBB
dXRvY29uZiBkb2N1bWVudGF0aW9uIiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86
IFdBUk5JTkc6ICRhY19oZWFkZXI6ICAgICBzZWN0aW9uIFwiUHJlc2VudCBCdXQgQ2Fubm90IEJl
IENvbXBpbGVkXCIiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfaGVhZGVyOiAgICAg
c2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjI7fQorICAgIHsg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6ICRhY19oZWFkZXI6IHByb2NlZWRpbmcgd2l0
aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzog
JGFjX2hlYWRlcjogcHJvY2VlZGluZyB3aXRoIHRoZSBwcmVwcm9jZXNzb3IncyByZXN1bHQiID4m
Mjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogJGFjX2hlYWRlcjogaW4g
dGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjUKK2VjaG8g
IiRhc19tZTogV0FSTklORzogJGFjX2hlYWRlcjogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVy
IHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjI7fQorICAgICgKKyAgICAgIGNhdCA8PFxfQVNCT1gK
KyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgUmVw
b3J0IHRoaXMgdG8gdGhlIEFDX1BBQ0tBR0VfTkFNRSBsaXN0cy4gICMjCisjIyAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKK19BU0JPWAorICAgICkgfAorICAg
ICAgc2VkICJzL14vJGFzX21lOiBXQVJOSU5HOiAgICAgLyIgPiYyCisgICAgOzsKK2VzYWMKK2Vj
aG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFjX2hlYWRlciIgPiY1CitlY2hvICRF
Q0hPX04gImNoZWNraW5nIGZvciAkYWNfaGVhZGVyLi4uICRFQ0hPX0MiID4mNgoraWYgZXZhbCAi
dGVzdCBcIlwkeyRhc19hY19IZWFkZXIrc2V0fVwiID0gc2V0IjsgdGhlbgorICBlY2hvICRFQ0hP
X04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgorZWxzZQorICBldmFsICIkYXNfYWNfSGVhZGVyPVwk
YWNfaGVhZGVyX3ByZXByb2MiCiBmaQotZWNobyAiJGFzX21lOjQyMjk6IHJlc3VsdDogYGV2YWwg
ZWNobyAnJHsnJGFzX2FjX0hlYWRlcid9J2AiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogYGV2YWwgZWNobyAnJHsnJGFzX2FjX0hlYWRlcid9J2AiID4mNQogZWNobyAiJHtFQ0hP
X1R9YGV2YWwgZWNobyAnJHsnJGFzX2FjX0hlYWRlcid9J2AiID4mNgorCitmaQogaWYgdGVzdCBg
ZXZhbCBlY2hvICckeyckYXNfYWNfSGVhZGVyJ30nYCA9IHllczsgdGhlbgotICBjYXQgPj5jb25m
ZGVmcy5oIDw8RU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKICNkZWZpbmUgYGVjaG8g
IkhBVkVfJGFjX2hlYWRlciIgfCAkYXNfdHJfY3BwYCAxCi1FT0YKK19BQ0VPRgogCiBmaQorCiBk
b25lCiAKKworCisKKwogIyBPbmx5IHBlcmZvcm0gdGhlIGNoZWNrIGZvciBmaWxlLCBpZiB0aGUg
Y2hlY2sgbWV0aG9kIHJlcXVpcmVzIGl0CiBjYXNlICRkZXBsaWJzX2NoZWNrX21ldGhvZCBpbgog
ZmlsZV9tYWdpYyopCiAgIGlmIHRlc3QgIiRmaWxlX21hZ2ljX2NtZCIgPSAnJE1BR0lDX0NNRCc7
IHRoZW4KLSAgICBlY2hvICIkYXNfbWU6NDI0MzogY2hlY2tpbmcgZm9yICR7YWNfdG9vbF9wcmVm
aXh9ZmlsZSIgPiY1CisgICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAke2Fj
X3Rvb2xfcHJlZml4fWZpbGUiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJHthY190
b29sX3ByZWZpeH1maWxlLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHtsdF9jdl9wYXRoX01B
R0lDX0NNRCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hP
X0MiID4mNgpAQCAtNDMwMSwxNiArNTc0MiwxNiBAQAogCiBNQUdJQ19DTUQ9IiRsdF9jdl9wYXRo
X01BR0lDX0NNRCIKIGlmIHRlc3QgLW4gIiRNQUdJQ19DTUQiOyB0aGVuCi0gIGVjaG8gIiRhc19t
ZTo0Mjk4OiByZXN1bHQ6ICRNQUdJQ19DTUQiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiAkTUFHSUNfQ01EIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRNQUdJQ19DTUQiID4mNgog
ZWxzZQotICBlY2hvICIkYXNfbWU6NDMwMTogcmVzdWx0OiBubyIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiByZXN1bHQ6IG5vIiA+JjUKIGVjaG8gIiR7RUNIT19UfW5vIiA+JjYKIGZpCiAK
IGlmIHRlc3QgLXogIiRsdF9jdl9wYXRoX01BR0lDX0NNRCI7IHRoZW4KICAgaWYgdGVzdCAtbiAi
JGFjX3Rvb2xfcHJlZml4IjsgdGhlbgotICAgIGVjaG8gIiRhc19tZTo0MzA3OiBjaGVja2luZyBm
b3IgZmlsZSIgPiY1CisgICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBmaWxl
IiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGZpbGUuLi4gJEVDSE9fQyIgPiY2CiBp
ZiB0ZXN0ICIke2x0X2N2X3BhdGhfTUFHSUNfQ01EK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8g
JEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC00MzY1LDEwICs1ODA2LDEwIEBACiAK
IE1BR0lDX0NNRD0iJGx0X2N2X3BhdGhfTUFHSUNfQ01EIgogaWYgdGVzdCAtbiAiJE1BR0lDX0NN
RCI7IHRoZW4KLSAgZWNobyAiJGFzX21lOjQzNjI6IHJlc3VsdDogJE1BR0lDX0NNRCIgPiY1Cisg
IGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRNQUdJQ19DTUQiID4mNQogZWNobyAiJHtF
Q0hPX1R9JE1BR0lDX0NNRCIgPiY2CiBlbHNlCi0gIGVjaG8gIiRhc19tZTo0MzY1OiByZXN1bHQ6
IG5vIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQogZWNobyAi
JHtFQ0hPX1R9bm8iID4mNgogZmkKIApAQCAtNDM4NCw3ICs1ODI1LDcgQEAKIGlmIHRlc3QgLW4g
IiRhY190b29sX3ByZWZpeCI7IHRoZW4KICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIk
e2FjX3Rvb2xfcHJlZml4fXJhbmxpYiIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRo
IGFyZ3MuCiBzZXQgZHVtbXkgJHthY190b29sX3ByZWZpeH1yYW5saWI7IGFjX3dvcmQ9JDIKLWVj
aG8gIiRhc19tZTo0MzgxOiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNr
aW5nIGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19S
QU5MSUIrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19D
IiA+JjYKQEAgLTQzOTIsMjUgKzU4MzMsMjggQEAKICAgaWYgdGVzdCAtbiAiJFJBTkxJQiI7IHRo
ZW4KICAgYWNfY3ZfcHJvZ19SQU5MSUI9IiRSQU5MSUIiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRl
IHRoZSB0ZXN0LgogZWxzZQotICBhY19zYXZlX0lGUz0kSUZTOyBJRlM9JGFjX3BhdGhfc2VwYXJh
dG9yCi1hY19kdW1teT0iJFBBVEgiCi1mb3IgYWNfZGlyIGluICRhY19kdW1teTsgZG8KLSAgSUZT
PSRhY19zYXZlX0lGUwotICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9LgotICAkYXNfZXhl
Y3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkIiB8fCBjb250aW51ZQotYWNfY3ZfcHJvZ19SQU5M
SUI9IiR7YWNfdG9vbF9wcmVmaXh9cmFubGliIgotZWNobyAiJGFzX21lOjQzOTY6IGZvdW5kICRh
Y19kaXIvJGFjX3dvcmQiID4mNQotYnJlYWsKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9T
RVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAg
dGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRh
Y19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRhc19k
aXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB0aGVuCisgICAgYWNfY3ZfcHJvZ19SQU5MSUI9IiR7
YWNfdG9vbF9wcmVmaXh9cmFubGliIgorICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAk
YXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25l
CiBkb25lCiAKIGZpCiBmaQogUkFOTElCPSRhY19jdl9wcm9nX1JBTkxJQgogaWYgdGVzdCAtbiAi
JFJBTkxJQiI7IHRoZW4KLSAgZWNobyAiJGFzX21lOjQ0MDQ6IHJlc3VsdDogJFJBTkxJQiIgPiY1
CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRSQU5MSUIiID4mNQogZWNobyAiJHtF
Q0hPX1R9JFJBTkxJQiIgPiY2CiBlbHNlCi0gIGVjaG8gIiRhc19tZTo0NDA3OiByZXN1bHQ6IG5v
IiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQogZWNobyAiJHtF
Q0hPX1R9bm8iID4mNgogZmkKIApAQCAtNDQxOSw3ICs1ODYzLDcgQEAKICAgYWNfY3RfUkFOTElC
PSRSQU5MSUIKICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJyYW5saWIiLCBzbyBpdCBj
YW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgogc2V0IGR1bW15IHJhbmxpYjsgYWNfd29y
ZD0kMgotZWNobyAiJGFzX21lOjQ0MTY6IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKIGVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19j
dl9wcm9nX2FjX2N0X1JBTkxJQitzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihj
YWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtNDQyNywxNSArNTg3MSwxOCBAQAogICBpZiB0ZXN0IC1u
ICIkYWNfY3RfUkFOTElCIjsgdGhlbgogICBhY19jdl9wcm9nX2FjX2N0X1JBTkxJQj0iJGFjX2N0
X1JBTkxJQiIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCiBlbHNlCi0gIGFjX3Nh
dmVfSUZTPSRJRlM7IElGUz0kYWNfcGF0aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZv
ciBhY19kaXIgaW4gJGFjX2R1bW15OyBkbwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXog
IiRhY19kaXIiICYmIGFjX2Rpcj0uCi0gICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dv
cmQiIHx8IGNvbnRpbnVlCi1hY19jdl9wcm9nX2FjX2N0X1JBTkxJQj0icmFubGliIgotZWNobyAi
JGFzX21lOjQ0MzE6IGZvdW5kICRhY19kaXIvJGFjX3dvcmQiID4mNQotYnJlYWsKK2FzX3NhdmVf
SUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisg
IElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgZm9y
IGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmICRh
c19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB0aGVuCisgICAg
YWNfY3ZfcHJvZ19hY19jdF9SQU5MSUI9InJhbmxpYiIKKyAgICBlY2hvICIkYXNfbWU6JExJTkVO
TzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgor
ICBmaQorZG9uZQogZG9uZQogCiAgIHRlc3QgLXogIiRhY19jdl9wcm9nX2FjX2N0X1JBTkxJQiIg
JiYgYWNfY3ZfcHJvZ19hY19jdF9SQU5MSUI9IjoiCkBAIC00NDQzLDEwICs1ODkwLDEwIEBACiBm
aQogYWNfY3RfUkFOTElCPSRhY19jdl9wcm9nX2FjX2N0X1JBTkxJQgogaWYgdGVzdCAtbiAiJGFj
X2N0X1JBTkxJQiI7IHRoZW4KLSAgZWNobyAiJGFzX21lOjQ0NDA6IHJlc3VsdDogJGFjX2N0X1JB
TkxJQiIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdF9SQU5MSUIi
ID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N0X1JBTkxJQiIgPiY2CiBlbHNlCi0gIGVjaG8gIiRh
c19tZTo0NDQzOiByZXN1bHQ6IG5vIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3Vs
dDogbm8iID4mNQogZWNobyAiJHtFQ0hPX1R9bm8iID4mNgogZmkKIApAQCAtNDQ1OCw3ICs1OTA1
LDcgQEAKIGlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KICAgIyBFeHRyYWN0IHRo
ZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rvb2xfcHJlZml4fXN0cmlwIiwgc28gaXQgY2FuIGJlIGEg
cHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KIHNldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fXN0cmlw
OyBhY193b3JkPSQyCi1lY2hvICIkYXNfbWU6NDQ1NTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+
JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQogZWNo
byAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0
ICIke2FjX2N2X3Byb2dfU1RSSVArc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIo
Y2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTQ0NjYsMjUgKzU5MTMsMjggQEAKICAgaWYgdGVzdCAt
biAiJFNUUklQIjsgdGhlbgogICBhY19jdl9wcm9nX1NUUklQPSIkU1RSSVAiICMgTGV0IHRoZSB1
c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgogZWxzZQotICBhY19zYXZlX0lGUz0kSUZTOyBJRlM9JGFj
X3BhdGhfc2VwYXJhdG9yCi1hY19kdW1teT0iJFBBVEgiCi1mb3IgYWNfZGlyIGluICRhY19kdW1t
eTsgZG8KLSAgSUZTPSRhY19zYXZlX0lGUwotICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9
LgotICAkYXNfZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkIiB8fCBjb250aW51ZQotYWNf
Y3ZfcHJvZ19TVFJJUD0iJHthY190b29sX3ByZWZpeH1zdHJpcCIKLWVjaG8gIiRhc19tZTo0NDcw
OiBmb3VuZCAkYWNfZGlyLyRhY193b3JkIiA+JjUKLWJyZWFrCithc19zYXZlX0lGUz0kSUZTOyBJ
RlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3Nh
dmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIGZvciBhY19leGVjX2V4
dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiAkYXNfZXhlY3V0YWJs
ZV9wICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgdGhlbgorICAgIGFjX2N2X3Byb2df
U1RSSVA9IiR7YWNfdG9vbF9wcmVmaXh9c3RyaXAiCisgICAgZWNobyAiJGFzX21lOiRMSU5FTk86
IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAg
ZmkKK2RvbmUKIGRvbmUKIAogZmkKIGZpCiBTVFJJUD0kYWNfY3ZfcHJvZ19TVFJJUAogaWYgdGVz
dCAtbiAiJFNUUklQIjsgdGhlbgotICBlY2hvICIkYXNfbWU6NDQ3ODogcmVzdWx0OiAkU1RSSVAi
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkU1RSSVAiID4mNQogZWNobyAi
JHtFQ0hPX1R9JFNUUklQIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFzX21lOjQ0ODE6IHJlc3VsdDog
bm8iID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1CiBlY2hvICIk
e0VDSE9fVH1ubyIgPiY2CiBmaQogCkBAIC00NDkzLDcgKzU5NDMsNyBAQAogICBhY19jdF9TVFJJ
UD0kU1RSSVAKICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJzdHJpcCIsIHNvIGl0IGNh
biBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCiBzZXQgZHVtbXkgc3RyaXA7IGFjX3dvcmQ9
JDIKLWVjaG8gIiRhc19tZTo0NDkwOiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiBlY2hvICRFQ0hPX04g
ImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3Zf
cHJvZ19hY19jdF9TVFJJUCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNo
ZWQpICRFQ0hPX0MiID4mNgpAQCAtNDUwMSwxNSArNTk1MSwxOCBAQAogICBpZiB0ZXN0IC1uICIk
YWNfY3RfU1RSSVAiOyB0aGVuCiAgIGFjX2N2X3Byb2dfYWNfY3RfU1RSSVA9IiRhY19jdF9TVFJJ
UCIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCiBlbHNlCi0gIGFjX3NhdmVfSUZT
PSRJRlM7IElGUz0kYWNfcGF0aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19k
aXIgaW4gJGFjX2R1bW15OyBkbwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19k
aXIiICYmIGFjX2Rpcj0uCi0gICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8
IGNvbnRpbnVlCi1hY19jdl9wcm9nX2FjX2N0X1NUUklQPSJzdHJpcCIKLWVjaG8gIiRhc19tZTo0
NTA1OiBmb3VuZCAkYWNfZGlyLyRhY193b3JkIiA+JjUKLWJyZWFrCithc19zYXZlX0lGUz0kSUZT
OyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFz
X3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIGZvciBhY19leGVj
X2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiAkYXNfZXhlY3V0
YWJsZV9wICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgdGhlbgorICAgIGFjX2N2X3By
b2dfYWNfY3RfU1RSSVA9InN0cmlwIgorICAgIGVjaG8gIiRhc19tZTokTElORU5POiBmb3VuZCAk
YXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25l
CiBkb25lCiAKICAgdGVzdCAteiAiJGFjX2N2X3Byb2dfYWNfY3RfU1RSSVAiICYmIGFjX2N2X3By
b2dfYWNfY3RfU1RSSVA9IjoiCkBAIC00NTE3LDEwICs1OTcwLDEwIEBACiBmaQogYWNfY3RfU1RS
SVA9JGFjX2N2X3Byb2dfYWNfY3RfU1RSSVAKIGlmIHRlc3QgLW4gIiRhY19jdF9TVFJJUCI7IHRo
ZW4KLSAgZWNobyAiJGFzX21lOjQ1MTQ6IHJlc3VsdDogJGFjX2N0X1NUUklQIiA+JjUKKyAgZWNo
byAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N0X1NUUklQIiA+JjUKIGVjaG8gIiR7RUNI
T19UfSRhY19jdF9TVFJJUCIgPiY2CiBlbHNlCi0gIGVjaG8gIiRhc19tZTo0NTE3OiByZXN1bHQ6
IG5vIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQogZWNobyAi
JHtFQ0hPX1R9bm8iID4mNgogZmkKIApAQCAtNDUyOSw4ICs1OTgyLDkgQEAKICAgU1RSSVA9IiRh
Y19jdl9wcm9nX1NUUklQIgogZmkKIAorCiBlbmFibGVfZGxvcGVuPW5vCi1lbmFibGVfd2luMzJf
ZGxsPXllcworZW5hYmxlX3dpbjMyX2RsbD1ubwogCiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUt
bGlidG9vbC1sb2NrIG9yIC0tZGlzYWJsZS1saWJ0b29sLWxvY2sgd2FzIGdpdmVuLgogaWYgdGVz
dCAiJHtlbmFibGVfbGlidG9vbF9sb2NrK3NldH0iID0gc2V0OyB0aGVuCkBAIC00NTQ0LDExICs1
OTk4LDExIEBACiBjYXNlICRob3N0IGluCiAqLSotaXJpeDYqKQogICAjIEZpbmQgb3V0IHdoaWNo
IEFCSSB3ZSBhcmUgdXNpbmcuCi0gIGVjaG8gJyNsaW5lIDQ1NDEgImNvbmZpZ3VyZSInID4gY29u
ZnRlc3QuJGFjX2V4dAotICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTo0NTQyOiBcIiRhY19jb21w
aWxlXCIiKSA+JjUKKyAgZWNobyAnI2xpbmUgNjAwMSAiY29uZmlndXJlIicgPiBjb25mdGVzdC4k
YWNfZXh0CisgIGlmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBpbGVc
IiIpID4mNQogICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNo
byAiJGFzX21lOjQ1NDU6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJ
TkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB0aGVu
CiAgICAgY2FzZSBgL3Vzci9iaW4vZmlsZSBjb25mdGVzdC4kYWNfb2JqZXh0YCBpbgogICAgICoz
Mi1iaXQqKQpAQCAtNDU2OSwxMiArNjAyMywxMyBAQAogICAjIE9uIFNDTyBPcGVuU2VydmVyIDUs
IHdlIG5lZWQgLWJlbGYgdG8gZ2V0IGZ1bGwtZmVhdHVyZWQgYmluYXJpZXMuCiAgIFNBVkVfQ0ZM
QUdTPSIkQ0ZMQUdTIgogICBDRkxBR1M9IiRDRkxBR1MgLWJlbGYiCi0gIGVjaG8gIiRhc19tZTo0
NTY2OiBjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIG5lZWRzIC1iZWxmIiA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgdGhlIEMgY29tcGlsZXIgbmVl
ZHMgLWJlbGYiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBp
bGVyIG5lZWRzIC1iZWxmLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHtsdF9jdl9jY19uZWVk
c19iZWxmK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9f
QyIgPiY2CiBlbHNlCiAKKwogICAgICBhY19leHQ9YwogYWNfY3BwPSckQ1BQICRDUFBGTEFHUycK
IGFjX2NvbXBpbGU9JyRDQyAtYyAkQ0ZMQUdTICRDUFBGTEFHUyBjb25mdGVzdC4kYWNfZXh0ID4m
NScKQEAgLTQ1ODIsOCArNjAzNywxMSBAQAogYWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBp
bGVyX2dudQogCiAgICAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgNDU3
OSAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAgKi8K
K19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVz
dC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAKIGludAogbWFpbiAo
KQpAQCAtNDU5NCwyNCArNjA1MiwzNiBAQAogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNf
b2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6NDU5MTog
XCIkYWNfbGlua1wiIikgPiY1Ci0gIChldmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVj
aG8gIiRhc19tZTokTElORU5POiBcIiRhY19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmsp
IDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6NDU5NDogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRl
c3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVl
eHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21lOjQ1OTc6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsg
YWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIp
ID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9
OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZh
bCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3Ry
eSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjQ2MDA6IFwkPyA9ICRhY19z
dGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1
CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIGx0X2N2X2NjX25lZWRzX2JlbGY9
eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQg
Y29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUK
KwogbHRfY3ZfY2NfbmVlZHNfYmVsZj1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQg
Y29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBj
b25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4k
YWNfZXh0CiAgICAgIGFjX2V4dD1jCiBhY19jcHA9JyRDUFAgJENQUEZMQUdTJwogYWNfY29tcGls
ZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JwpAQCAtNDYx
OSw3ICs2MDg5LDcgQEAKIGFjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY19jb21waWxlcl9nbnUKIAog
ZmkKLWVjaG8gIiRhc19tZTo0NjE2OiByZXN1bHQ6ICRsdF9jdl9jY19uZWVkc19iZWxmIiA+JjUK
K2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9jY19uZWVkc19iZWxmIiA+JjUK
IGVjaG8gIiR7RUNIT19UfSRsdF9jdl9jY19uZWVkc19iZWxmIiA+JjYKICAgaWYgdGVzdCB4IiRs
dF9jdl9jY19uZWVkc19iZWxmIiAhPSB4InllcyI7IHRoZW4KICAgICAjIHRoaXMgaXMgcHJvYmFi
bHkgZ2NjIDIuOC4wLCBlZ2NzIDEuMCBvciBuZXdlcjsgbm8gbmVlZCBmb3IgLWJlbGYKQEAgLTQ2
MjcsMzI2ICs2MDk3LDggQEAKICAgZmkKICAgOzsKIAotKi0qLWN5Z3dpbiogfCAqLSotbWluZ3cq
IHwgKi0qLXB3MzIqKQotICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCi0gICMg
RXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJHthY190b29sX3ByZWZpeH1kbGx0b29sIiwgc28g
aXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KLXNldCBkdW1teSAke2FjX3Rvb2xf
cHJlZml4fWRsbHRvb2w7IGFjX3dvcmQ9JDIKLWVjaG8gIiRhc19tZTo0NjI4OiBjaGVja2luZyBm
b3IgJGFjX3dvcmQiID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4g
JEVDSE9fQyIgPiY2Ci1pZiB0ZXN0ICIke2FjX2N2X3Byb2dfRExMVE9PTCtzZXR9IiA9IHNldDsg
dGhlbgotICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgotZWxzZQotICBpZiB0
ZXN0IC1uICIkRExMVE9PTCI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19ETExUT09MPSIkRExMVE9PTCIg
IyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCi1lbHNlCi0gIGFjX3NhdmVfSUZTPSRJ
RlM7IElGUz0kYWNfcGF0aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19kaXIg
aW4gJGFjX2R1bW15OyBkbwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19kaXIi
ICYmIGFjX2Rpcj0uCi0gICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8IGNv
bnRpbnVlCi1hY19jdl9wcm9nX0RMTFRPT0w9IiR7YWNfdG9vbF9wcmVmaXh9ZGxsdG9vbCIKLWVj
aG8gIiRhc19tZTo0NjQzOiBmb3VuZCAkYWNfZGlyLyRhY193b3JkIiA+JjUKLWJyZWFrCi1kb25l
CiAKLWZpCi1maQotRExMVE9PTD0kYWNfY3ZfcHJvZ19ETExUT09MCi1pZiB0ZXN0IC1uICIkRExM
VE9PTCI7IHRoZW4KLSAgZWNobyAiJGFzX21lOjQ2NTE6IHJlc3VsdDogJERMTFRPT0wiID4mNQot
ZWNobyAiJHtFQ0hPX1R9JERMTFRPT0wiID4mNgotZWxzZQotICBlY2hvICIkYXNfbWU6NDY1NDog
cmVzdWx0OiBubyIgPiY1Ci1lY2hvICIke0VDSE9fVH1ubyIgPiY2Ci1maQotCi1maQotaWYgdGVz
dCAteiAiJGFjX2N2X3Byb2dfRExMVE9PTCI7IHRoZW4KLSAgYWNfY3RfRExMVE9PTD0kRExMVE9P
TAotICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgImRsbHRvb2wiLCBzbyBpdCBjYW4gYmUg
YSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgotc2V0IGR1bW15IGRsbHRvb2w7IGFjX3dvcmQ9JDIK
LWVjaG8gIiRhc19tZTo0NjYzOiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQotZWNobyAkRUNI
T19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2Ci1pZiB0ZXN0ICIke2Fj
X2N2X3Byb2dfYWNfY3RfRExMVE9PTCtzZXR9IiA9IHNldDsgdGhlbgotICBlY2hvICRFQ0hPX04g
IihjYWNoZWQpICRFQ0hPX0MiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkYWNfY3RfRExMVE9P
TCI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19hY19jdF9ETExUT09MPSIkYWNfY3RfRExMVE9PTCIgIyBM
ZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCi1lbHNlCi0gIGFjX3NhdmVfSUZTPSRJRlM7
IElGUz0kYWNfcGF0aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19kaXIgaW4g
JGFjX2R1bW15OyBkbwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19kaXIiICYm
IGFjX2Rpcj0uCi0gICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8IGNvbnRp
bnVlCi1hY19jdl9wcm9nX2FjX2N0X0RMTFRPT0w9ImRsbHRvb2wiCi1lY2hvICIkYXNfbWU6NDY3
ODogZm91bmQgJGFjX2Rpci8kYWNfd29yZCIgPiY1Ci1icmVhawotZG9uZQotCi0gIHRlc3QgLXog
IiRhY19jdl9wcm9nX2FjX2N0X0RMTFRPT0wiICYmIGFjX2N2X3Byb2dfYWNfY3RfRExMVE9PTD0i
ZmFsc2UiCi1maQotZmkKLWFjX2N0X0RMTFRPT0w9JGFjX2N2X3Byb2dfYWNfY3RfRExMVE9PTAot
aWYgdGVzdCAtbiAiJGFjX2N0X0RMTFRPT0wiOyB0aGVuCi0gIGVjaG8gIiRhc19tZTo0Njg3OiBy
ZXN1bHQ6ICRhY19jdF9ETExUT09MIiA+JjUKLWVjaG8gIiR7RUNIT19UfSRhY19jdF9ETExUT09M
IiA+JjYKLWVsc2UKLSAgZWNobyAiJGFzX21lOjQ2OTA6IHJlc3VsdDogbm8iID4mNQotZWNobyAi
JHtFQ0hPX1R9bm8iID4mNgotZmkKLQotICBETExUT09MPSRhY19jdF9ETExUT09MCi1lbHNlCi0g
IERMTFRPT0w9IiRhY19jdl9wcm9nX0RMTFRPT0wiCi1maQotCi0gIGlmIHRlc3QgLW4gIiRhY190
b29sX3ByZWZpeCI7IHRoZW4KLSAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rv
b2xfcHJlZml4fWFzIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KLXNl
dCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fWFzOyBhY193b3JkPSQyCi1lY2hvICIkYXNfbWU6NDcw
MjogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKLWVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9y
ICRhY193b3JkLi4uICRFQ0hPX0MiID4mNgotaWYgdGVzdCAiJHthY19jdl9wcm9nX0FTK3NldH0i
ID0gc2V0OyB0aGVuCi0gIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2Ci1lbHNl
Ci0gIGlmIHRlc3QgLW4gIiRBUyI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19BUz0iJEFTIiAjIExldCB0
aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KLWVsc2UKLSAgYWNfc2F2ZV9JRlM9JElGUzsgSUZT
PSRhY19wYXRoX3NlcGFyYXRvcgotYWNfZHVtbXk9IiRQQVRIIgotZm9yIGFjX2RpciBpbiAkYWNf
ZHVtbXk7IGRvCi0gIElGUz0kYWNfc2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNf
ZGlyPS4KLSAgJGFzX2V4ZWN1dGFibGVfcCAiJGFjX2Rpci8kYWNfd29yZCIgfHwgY29udGludWUK
LWFjX2N2X3Byb2dfQVM9IiR7YWNfdG9vbF9wcmVmaXh9YXMiCi1lY2hvICIkYXNfbWU6NDcxNzog
Zm91bmQgJGFjX2Rpci8kYWNfd29yZCIgPiY1Ci1icmVhawotZG9uZQotCi1maQotZmkKLUFTPSRh
Y19jdl9wcm9nX0FTCi1pZiB0ZXN0IC1uICIkQVMiOyB0aGVuCi0gIGVjaG8gIiRhc19tZTo0NzI1
OiByZXN1bHQ6ICRBUyIgPiY1Ci1lY2hvICIke0VDSE9fVH0kQVMiID4mNgotZWxzZQotICBlY2hv
ICIkYXNfbWU6NDcyODogcmVzdWx0OiBubyIgPiY1Ci1lY2hvICIke0VDSE9fVH1ubyIgPiY2Ci1m
aQotCi1maQotaWYgdGVzdCAteiAiJGFjX2N2X3Byb2dfQVMiOyB0aGVuCi0gIGFjX2N0X0FTPSRB
UwotICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgImFzIiwgc28gaXQgY2FuIGJlIGEgcHJv
Z3JhbSBuYW1lIHdpdGggYXJncy4KLXNldCBkdW1teSBhczsgYWNfd29yZD0kMgotZWNobyAiJGFz
X21lOjQ3Mzc6IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1Ci1lY2hvICRFQ0hPX04gImNoZWNr
aW5nIGZvciAkYWNfd29yZC4uLiAkRUNIT19DIiA+JjYKLWlmIHRlc3QgIiR7YWNfY3ZfcHJvZ19h
Y19jdF9BUytzZXR9IiA9IHNldDsgdGhlbgotICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hP
X0MiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkYWNfY3RfQVMiOyB0aGVuCi0gIGFjX2N2X3By
b2dfYWNfY3RfQVM9IiRhY19jdF9BUyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qu
Ci1lbHNlCi0gIGFjX3NhdmVfSUZTPSRJRlM7IElGUz0kYWNfcGF0aF9zZXBhcmF0b3IKLWFjX2R1
bW15PSIkUEFUSCIKLWZvciBhY19kaXIgaW4gJGFjX2R1bW15OyBkbwotICBJRlM9JGFjX3NhdmVf
SUZTCi0gIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCi0gICRhc19leGVjdXRhYmxlX3Ag
IiRhY19kaXIvJGFjX3dvcmQiIHx8IGNvbnRpbnVlCi1hY19jdl9wcm9nX2FjX2N0X0FTPSJhcyIK
LWVjaG8gIiRhc19tZTo0NzUyOiBmb3VuZCAkYWNfZGlyLyRhY193b3JkIiA+JjUKLWJyZWFrCi1k
b25lCi0KLSAgdGVzdCAteiAiJGFjX2N2X3Byb2dfYWNfY3RfQVMiICYmIGFjX2N2X3Byb2dfYWNf
Y3RfQVM9ImZhbHNlIgotZmkKLWZpCi1hY19jdF9BUz0kYWNfY3ZfcHJvZ19hY19jdF9BUwotaWYg
dGVzdCAtbiAiJGFjX2N0X0FTIjsgdGhlbgotICBlY2hvICIkYXNfbWU6NDc2MTogcmVzdWx0OiAk
YWNfY3RfQVMiID4mNQotZWNobyAiJHtFQ0hPX1R9JGFjX2N0X0FTIiA+JjYKLWVsc2UKLSAgZWNo
byAiJGFzX21lOjQ3NjQ6IHJlc3VsdDogbm8iID4mNQotZWNobyAiJHtFQ0hPX1R9bm8iID4mNgot
ZmkKLQotICBBUz0kYWNfY3RfQVMKLWVsc2UKLSAgQVM9IiRhY19jdl9wcm9nX0FTIgotZmkKLQot
ICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCi0gICMgRXh0cmFjdCB0aGUgZmly
c3Qgd29yZCBvZiAiJHthY190b29sX3ByZWZpeH1vYmpkdW1wIiwgc28gaXQgY2FuIGJlIGEgcHJv
Z3JhbSBuYW1lIHdpdGggYXJncy4KLXNldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fW9iamR1bXA7
IGFjX3dvcmQ9JDIKLWVjaG8gIiRhc19tZTo0Nzc2OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4m
NQotZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2Ci1p
ZiB0ZXN0ICIke2FjX2N2X3Byb2dfT0JKRFVNUCtzZXR9IiA9IHNldDsgdGhlbgotICBlY2hvICRF
Q0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkT0JKRFVN
UCI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19PQkpEVU1QPSIkT0JKRFVNUCIgIyBMZXQgdGhlIHVzZXIg
b3ZlcnJpZGUgdGhlIHRlc3QuCi1lbHNlCi0gIGFjX3NhdmVfSUZTPSRJRlM7IElGUz0kYWNfcGF0
aF9zZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19kaXIgaW4gJGFjX2R1bW15OyBk
bwotICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCi0g
ICRhc19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8IGNvbnRpbnVlCi1hY19jdl9w
cm9nX09CSkRVTVA9IiR7YWNfdG9vbF9wcmVmaXh9b2JqZHVtcCIKLWVjaG8gIiRhc19tZTo0Nzkx
OiBmb3VuZCAkYWNfZGlyLyRhY193b3JkIiA+JjUKLWJyZWFrCi1kb25lCi0KLWZpCi1maQotT0JK
RFVNUD0kYWNfY3ZfcHJvZ19PQkpEVU1QCi1pZiB0ZXN0IC1uICIkT0JKRFVNUCI7IHRoZW4KLSAg
ZWNobyAiJGFzX21lOjQ3OTk6IHJlc3VsdDogJE9CSkRVTVAiID4mNQotZWNobyAiJHtFQ0hPX1R9
JE9CSkRVTVAiID4mNgotZWxzZQotICBlY2hvICIkYXNfbWU6NDgwMjogcmVzdWx0OiBubyIgPiY1
Ci1lY2hvICIke0VDSE9fVH1ubyIgPiY2Ci1maQotCi1maQotaWYgdGVzdCAteiAiJGFjX2N2X3By
b2dfT0JKRFVNUCI7IHRoZW4KLSAgYWNfY3RfT0JKRFVNUD0kT0JKRFVNUAotICAjIEV4dHJhY3Qg
dGhlIGZpcnN0IHdvcmQgb2YgIm9iamR1bXAiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUg
d2l0aCBhcmdzLgotc2V0IGR1bW15IG9iamR1bXA7IGFjX3dvcmQ9JDIKLWVjaG8gIiRhc19tZTo0
ODExOiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyBm
b3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2Ci1pZiB0ZXN0ICIke2FjX2N2X3Byb2dfYWNfY3Rf
T0JKRFVNUCtzZXR9IiA9IHNldDsgdGhlbgotICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hP
X0MiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkYWNfY3RfT0JKRFVNUCI7IHRoZW4KLSAgYWNf
Y3ZfcHJvZ19hY19jdF9PQkpEVU1QPSIkYWNfY3RfT0JKRFVNUCIgIyBMZXQgdGhlIHVzZXIgb3Zl
cnJpZGUgdGhlIHRlc3QuCi1lbHNlCi0gIGFjX3NhdmVfSUZTPSRJRlM7IElGUz0kYWNfcGF0aF9z
ZXBhcmF0b3IKLWFjX2R1bW15PSIkUEFUSCIKLWZvciBhY19kaXIgaW4gJGFjX2R1bW15OyBkbwot
ICBJRlM9JGFjX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCi0gICRh
c19leGVjdXRhYmxlX3AgIiRhY19kaXIvJGFjX3dvcmQiIHx8IGNvbnRpbnVlCi1hY19jdl9wcm9n
X2FjX2N0X09CSkRVTVA9Im9iamR1bXAiCi1lY2hvICIkYXNfbWU6NDgyNjogZm91bmQgJGFjX2Rp
ci8kYWNfd29yZCIgPiY1Ci1icmVhawotZG9uZQotCi0gIHRlc3QgLXogIiRhY19jdl9wcm9nX2Fj
X2N0X09CSkRVTVAiICYmIGFjX2N2X3Byb2dfYWNfY3RfT0JKRFVNUD0iZmFsc2UiCi1maQotZmkK
LWFjX2N0X09CSkRVTVA9JGFjX2N2X3Byb2dfYWNfY3RfT0JKRFVNUAotaWYgdGVzdCAtbiAiJGFj
X2N0X09CSkRVTVAiOyB0aGVuCi0gIGVjaG8gIiRhc19tZTo0ODM1OiByZXN1bHQ6ICRhY19jdF9P
QkpEVU1QIiA+JjUKLWVjaG8gIiR7RUNIT19UfSRhY19jdF9PQkpEVU1QIiA+JjYKLWVsc2UKLSAg
ZWNobyAiJGFzX21lOjQ4Mzg6IHJlc3VsdDogbm8iID4mNQotZWNobyAiJHtFQ0hPX1R9bm8iID4m
NgotZmkKLQotICBPQkpEVU1QPSRhY19jdF9PQkpEVU1QCi1lbHNlCi0gIE9CSkRVTVA9IiRhY19j
dl9wcm9nX09CSkRVTVAiCi1maQotCi0gICMgcmVjZW50IGN5Z3dpbiBhbmQgbWluZ3cgc3lzdGVt
cyBzdXBwbHkgYSBzdHViIERsbE1haW4gd2hpY2ggdGhlIHVzZXIKLSAgIyBjYW4gb3ZlcnJpZGUs
IGJ1dCBvbiBvbGRlciBzeXN0ZW1zIHdlIGhhdmUgdG8gc3VwcGx5IG9uZQotICBlY2hvICIkYXNf
bWU6NDg0OTogY2hlY2tpbmcgaWYgbGlidG9vbCBzaG91bGQgc3VwcGx5IERsbE1haW4gZnVuY3Rp
b24iID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyBpZiBsaWJ0b29sIHNob3VsZCBzdXBwbHkg
RGxsTWFpbiBmdW5jdGlvbi4uLiAkRUNIT19DIiA+JjYKLWlmIHRlc3QgIiR7bHRfY3ZfbmVlZF9k
bGxtYWluK3NldH0iID0gc2V0OyB0aGVuCi0gIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9f
QyIgPiY2Ci1lbHNlCi0gIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgNDg1
NSAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCi0KLWludAotbWFpbiAoKQotewot
ZXh0ZXJuIGludCBfX2F0dHJpYnV0ZV9fKChfX3N0ZGNhbGxfXykpIERsbE1haW4odm9pZCosIGlu
dCwgdm9pZCopOwotICAgICAgRGxsTWFpbiAoMCwgMCwgMCk7Ci0gIDsKLSAgcmV0dXJuIDA7Ci19
Ci1fQUNFT0YKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1p
ZiB7IChldmFsIGVjaG8gIiRhc19tZTo0ODY4OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwg
JGFjX2xpbmspIDI+JjUKLSAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo0ODcxOiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKLSAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsg
YWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNf
bWU6NDg3NDogXCIkYWNfdHJ5XCIiKSA+JjUKLSAgKGV2YWwgJGFjX3RyeSkgMj4mNQotICBhY19z
dGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjQ4Nzc6IFwkPyA9ICRhY19zdGF0dXMiID4mNQotICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgotICBsdF9jdl9uZWVkX2RsbG1haW49bm8KLWVs
c2UKLSAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVz
dC4kYWNfZXh0ID4mNQotbHRfY3ZfbmVlZF9kbGxtYWluPXllcwotZmkKLXJtIC1mIGNvbmZ0ZXN0
LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKLWZpCi1lY2hv
ICIkYXNfbWU6NDg4NzogcmVzdWx0OiAkbHRfY3ZfbmVlZF9kbGxtYWluIiA+JjUKLWVjaG8gIiR7
RUNIT19UfSRsdF9jdl9uZWVkX2RsbG1haW4iID4mNgotCi0gIGNhc2UgJGhvc3QvJENDIGluCi0g
ICotKi1jeWd3aW4qL2djYyotbW5vLWN5Z3dpbip8Ki0qLW1pbmd3KikKLSAgICAjIG9sZCBtaW5n
dyBzeXN0ZW1zIHJlcXVpcmUgIi1kbGwiIHRvIGxpbmsgYSBETEwsIHdoaWxlIG1vcmUgcmVjZW50
IG9uZXMKLSAgICAjIHJlcXVpcmUgIi1tZGxsIgotICAgIFNBVkVfQ0ZMQUdTPSIkQ0ZMQUdTIgot
ICAgIENGTEFHUz0iJENGTEFHUyAtbWRsbCIKLSAgICBlY2hvICIkYXNfbWU6NDg5NjogY2hlY2tp
bmcgaG93IHRvIGxpbmsgRExMcyIgPiY1Ci1lY2hvICRFQ0hPX04gImNoZWNraW5nIGhvdyB0byBs
aW5rIERMTHMuLi4gJEVDSE9fQyIgPiY2Ci1pZiB0ZXN0ICIke2x0X2N2X2NjX2RsbF9zd2l0Y2gr
c2V0fSIgPSBzZXQ7IHRoZW4KLSAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYK
LWVsc2UKLSAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSA0OTAyICJjb25m
aWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKLQotaW50Ci1tYWluICgpCi17Ci0KLSAgOwot
ICByZXR1cm4gMDsKLX0KLV9BQ0VPRgotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVz
dCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjQ5MTQ6IFwiJGFjX2xpbmtcIiIp
ID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQotICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFz
X21lOjQ5MTc6IFwkPyA9ICRhY19zdGF0dXMiID4mNQotICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAm
JgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChl
dmFsIGVjaG8gIiRhc19tZTo0OTIwOiBcIiRhY190cnlcIiIpID4mNQotICAoZXZhbCAkYWNfdHJ5
KSAyPiY1Ci0gIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6NDkyMzogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1Ci0gIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCi0gIGx0X2N2X2NjX2Rs
bF9zd2l0Y2g9LW1kbGwKLWVsc2UKLSAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQotbHRfY3ZfY2NfZGxsX3N3aXRjaD0tZGxs
Ci1maQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQgY29uZnRl
c3QuJGFjX2V4dAotZmkKLWVjaG8gIiRhc19tZTo0OTMzOiByZXN1bHQ6ICRsdF9jdl9jY19kbGxf
c3dpdGNoIiA+JjUKLWVjaG8gIiR7RUNIT19UfSRsdF9jdl9jY19kbGxfc3dpdGNoIiA+JjYKLSAg
ICBDRkxBR1M9IiRTQVZFX0NGTEFHUyIgOzsKLSAgKi0qLWN5Z3dpbiogfCAqLSotcHczMiopCi0g
ICAgIyBjeWd3aW4gc3lzdGVtcyBuZWVkIHRvIHBhc3MgLS1kbGwgdG8gdGhlIGxpbmtlciwgYW5k
IG5vdCBsaW5rCi0gICAgIyBjcnQubyB3aGljaCB3aWxsIHJlcXVpcmUgYSBXaW5NYWluQDE2IGRl
ZmluaXRpb24uCi0gICAgbHRfY3ZfY2NfZGxsX3N3aXRjaD0iLVdsLC0tZGxsIC1ub3N0YXJ0Zmls
ZXMiIDs7Ci0gIGVzYWMKLSAgOzsKLQotZXNhYworZXNhYwogCiAjIFNlZCBzdWJzdGl0dXRpb24g
dGhhdCBoZWxwcyB1cyBkbyByb2J1c3QgcXVvdGluZy4gIEl0IGJhY2tzbGFzaGlmaWVzCiAjIG1l
dGFjaGFyYWN0ZXJzIHRoYXQgYXJlIHN0aWxsIGFjdGl2ZSB3aXRoaW4gZG91YmxlLXF1b3RlZCBz
dHJpbmdzLgpAQCAtNTAzOCw3ICs2MTkwLDcgQEAKIHNldCBkdW1teSAkQ0MKIGNvbXBpbGVyPSIk
MiIKIAotZWNobyAiJGFzX21lOjUwMzU6IGNoZWNraW5nIGZvciBvYmpkaXIiID4mNQorZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBvYmpkaXIiID4mNQogZWNobyAkRUNIT19OICJj
aGVja2luZyBmb3Igb2JqZGlyLi4uICRFQ0hPX0MiID4mNgogcm0gLWYgLmxpYnMgMj4vZGV2L251
bGwKIG1rZGlyIC5saWJzIDI+L2Rldi9udWxsCkBAIC01MDQ5LDkgKzYyMDEsMTEgQEAKICAgb2Jq
ZGlyPV9saWJzCiBmaQogcm1kaXIgLmxpYnMgMj4vZGV2L251bGwKLWVjaG8gIiRhc19tZTo1MDQ2
OiByZXN1bHQ6ICRvYmpkaXIiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJG9i
amRpciIgPiY1CiBlY2hvICIke0VDSE9fVH0kb2JqZGlyIiA+JjYKIAorCisKICMgQ2hlY2sgd2hl
dGhlciAtLXdpdGgtcGljIG9yIC0td2l0aG91dC1waWMgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHt3
aXRoX3BpYytzZXR9IiA9IHNldDsgdGhlbgogICB3aXRodmFsPSIkd2l0aF9waWMiCkBAIC01MDY0
LDcgKzYyMTgsNyBAQAogIyBXZSBhc3N1bWUgaGVyZSB0aGF0IHRoZSB2YWx1ZSBmb3IgbHRfY3Zf
cHJvZ19jY19waWMgd2lsbCBub3QgYmUgY2FjaGVkCiAjIGluIGlzb2xhdGlvbiwgYW5kIHRoYXQg
c2VlaW5nIGl0IHNldCAoZnJvbSB0aGUgY2FjaGUpIGluZGljYXRlcyB0aGF0CiAjIHRoZSBhc3Nv
Y2lhdGVkIHZhbHVlcyBhcmUgc2V0IChpbiB0aGUgY2FjaGUpIGNvcnJlY3RseSB0b28uCi1lY2hv
ICIkYXNfbWU6NTA2MTogY2hlY2tpbmcgZm9yICRjb21waWxlciBvcHRpb24gdG8gcHJvZHVjZSBQ
SUMiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciAkY29tcGlsZXIgb3B0
aW9uIHRvIHByb2R1Y2UgUElDIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRjb21w
aWxlciBvcHRpb24gdG8gcHJvZHVjZSBQSUMuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2x0
X2N2X3Byb2dfY2NfcGljK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hl
ZCkgJEVDSE9fQyIgPiY2CkBAIC01MjExLDE0ICs2MzY1LDE0IEBACiBmaQogCiBpZiB0ZXN0IC16
ICIkbHRfY3ZfcHJvZ19jY19waWMiOyB0aGVuCi0gIGVjaG8gIiRhc19tZTo1MjA4OiByZXN1bHQ6
IG5vbmUiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBub25lIiA+JjUKIGVj
aG8gIiR7RUNIT19UfW5vbmUiID4mNgogZWxzZQotICBlY2hvICIkYXNfbWU6NTIxMTogcmVzdWx0
OiAkbHRfY3ZfcHJvZ19jY19waWMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkbHRfY3ZfcHJvZ19jY19waWMiID4mNQogZWNobyAiJHtFQ0hPX1R9JGx0X2N2X3Byb2dfY2Nf
cGljIiA+JjYKIAogICAjIENoZWNrIHRvIG1ha2Ugc3VyZSB0aGUgcGljX2ZsYWcgYWN0dWFsbHkg
d29ya3MuCi0gIGVjaG8gIiRhc19tZTo1MjE1OiBjaGVja2luZyBpZiAkY29tcGlsZXIgUElDIGZs
YWcgJGx0X2N2X3Byb2dfY2NfcGljIHdvcmtzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IGNoZWNraW5nIGlmICRjb21waWxlciBQSUMgZmxhZyAkbHRfY3ZfcHJvZ19jY19waWMgd29ya3Mi
ID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBpZiAkY29tcGlsZXIgUElDIGZsYWcgJGx0X2N2
X3Byb2dfY2NfcGljIHdvcmtzLi4uICRFQ0hPX0MiID4mNgogICBpZiB0ZXN0ICIke2x0X2N2X3By
b2dfY2NfcGljX3dvcmtzK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hl
ZCkgJEVDSE9fQyIgPiY2CkBAIC01MjI2LDggKzYzODAsMTEgQEAKICAgICAgIHNhdmVfQ0ZMQUdT
PSIkQ0ZMQUdTIgogICAgIENGTEFHUz0iJENGTEFHUyAkbHRfY3ZfcHJvZ19jY19waWMgLURQSUMi
CiAgICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSA1MjIzICJjb25maWd1
cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitj
YXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQg
PDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogaW50CiBtYWluICgpCkBAIC01MjM4
LDE2ICs2Mzk1LDI2IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKLWlm
IHsgKGV2YWwgZWNobyAiJGFzX21lOjUyMzU6IFwiJGFjX2NvbXBpbGVcIiIpID4mNQotICAoZXZh
bCAkYWNfY29tcGlsZSkgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQog
ICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjUyMzg6IFwkPyA9ICRhY19zdGF0dXMiID4m
NQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBj
b25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAg
ICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKLSAgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6NTI0MTogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXog
IiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsg
KGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRh
Y190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo1MjQ0OiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBj
b25mdGVzdC4kYWNfb2JqZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRh
Y190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19z
dGF0dXMpOyB9OyB9OyB0aGVuCiAgICAgICAgIGNhc2UgJGhvc3Rfb3MgaW4KICAgICAgIGhwdXg5
KiB8IGhwdXgxMCogfCBocHV4MTEqKQpAQCAtNTI2NywxNSArNjQzNCwxNyBAQAogCiBlbHNlCiAg
IGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3QuJGFj
X2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogICAgICAgbHRf
Y3ZfcHJvZ19jY19waWNfd29ya3M9bm8KIAogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQg
Y29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQg
Y29uZnRlc3QuJGFjX2V4dAogICAgIENGTEFHUz0iJHNhdmVfQ0ZMQUdTIgogCiBmaQogCisKICAg
aWYgdGVzdCAiWCRsdF9jdl9wcm9nX2NjX3BpY193b3JrcyIgPSBYbm87IHRoZW4KICAgICBsdF9j
dl9wcm9nX2NjX3BpYz0KICAgICBsdF9jdl9wcm9nX2NjX2Nhbl9idWlsZF9zaGFyZWQ9bm8KQEAg
LTUyODMsMjMgKzY0NTIsMjMgQEAKICAgICBsdF9jdl9wcm9nX2NjX3BpYz0iICRsdF9jdl9wcm9n
X2NjX3BpYyIKICAgZmkKIAotICBlY2hvICIkYXNfbWU6NTI4MDogcmVzdWx0OiAkbHRfY3ZfcHJv
Z19jY19waWNfd29ya3MiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkbHRf
Y3ZfcHJvZ19jY19waWNfd29ya3MiID4mNQogZWNobyAiJHtFQ0hPX1R9JGx0X2N2X3Byb2dfY2Nf
cGljX3dvcmtzIiA+JjYKIGZpCiAKICMgQ2hlY2sgZm9yIGFueSBzcGVjaWFsIHNoYXJlZCBsaWJy
YXJ5IGNvbXBpbGF0aW9uIGZsYWdzLgogaWYgdGVzdCAtbiAiJGx0X2N2X3Byb2dfY2Nfc2hsaWIi
OyB0aGVuCi0gIHsgZWNobyAiJGFzX21lOjUyODY6IFdBUk5JTkc6IFxgJENDJyByZXF1aXJlcyBc
YCRsdF9jdl9wcm9nX2NjX3NobGliJyB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzIiA+JjUKKyAg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogXGAkQ0MnIHJlcXVpcmVzIFxgJGx0X2N2
X3Byb2dfY2Nfc2hsaWInIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMiID4mNQogZWNobyAiJGFz
X21lOiBXQVJOSU5HOiBcYCRDQycgcmVxdWlyZXMgXGAkbHRfY3ZfcHJvZ19jY19zaGxpYicgdG8g
YnVpbGQgc2hhcmVkIGxpYnJhcmllcyIgPiYyO30KICAgaWYgZWNobyAiJG9sZF9DQyAkb2xkX0NG
TEFHUyAiIHwgZWdyZXAgLWUgIlsgCV0kbHRfY3ZfcHJvZ19jY19zaGxpYlsgCV0iID4vZGV2L251
bGw7IHRoZW4gOgogICBlbHNlCi0gICB7IGVjaG8gIiRhc19tZTo1MjkwOiBXQVJOSU5HOiBhZGQg
XGAkbHRfY3ZfcHJvZ19jY19zaGxpYicgdG8gdGhlIENDIG9yIENGTEFHUyBlbnYgdmFyaWFibGUg
YW5kIHJlY29uZmlndXJlIiA+JjUKKyAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6
IGFkZCBcYCRsdF9jdl9wcm9nX2NjX3NobGliJyB0byB0aGUgQ0Mgb3IgQ0ZMQUdTIGVudiB2YXJp
YWJsZSBhbmQgcmVjb25maWd1cmUiID4mNQogZWNobyAiJGFzX21lOiBXQVJOSU5HOiBhZGQgXGAk
bHRfY3ZfcHJvZ19jY19zaGxpYicgdG8gdGhlIENDIG9yIENGTEFHUyBlbnYgdmFyaWFibGUgYW5k
IHJlY29uZmlndXJlIiA+JjI7fQogICAgIGx0X2N2X3Byb2dfY2NfY2FuX2J1aWxkX3NoYXJlZD1u
bwogICBmaQogZmkKIAotZWNobyAiJGFzX21lOjUyOTY6IGNoZWNraW5nIGlmICRjb21waWxlciBz
dGF0aWMgZmxhZyAkbHRfY3ZfcHJvZ19jY19zdGF0aWMgd29ya3MiID4mNQorZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGlmICRjb21waWxlciBzdGF0aWMgZmxhZyAkbHRfY3ZfcHJvZ19j
Y19zdGF0aWMgd29ya3MiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBpZiAkY29tcGlsZXIg
c3RhdGljIGZsYWcgJGx0X2N2X3Byb2dfY2Nfc3RhdGljIHdvcmtzLi4uICRFQ0hPX0MiID4mNgog
aWYgdGVzdCAiJHtsdF9jdl9wcm9nX2NjX3N0YXRpY193b3JrcytzZXR9IiA9IHNldDsgdGhlbgog
ICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtNTMwOCw4ICs2NDc3LDEx
IEBACiAgIHNhdmVfTERGTEFHUz0iJExERkxBR1MiCiAgIExERkxBR1M9IiRMREZMQUdTICRsdF9j
dl9wcm9nX2NjX3N0YXRpYyIKICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGlu
ZSA1MzA1ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmgu
ICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNv
bmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogaW50CiBt
YWluICgpCkBAIC01MzIwLDMwICs2NDkyLDQzIEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0
LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo1
MzE3OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2
YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNf
bGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo1MzIw
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5j
b25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1
CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQg
JGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFj
X2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6NTMyMzogXCIkYWNfdHJ5XCIiKSA+JjUK
KwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3Ry
eVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1
cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7
IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAk
YWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6NTMyNjogXCQ/ID0g
JGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVz
IiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgbHRfY3ZfcHJvZ19jY19z
dGF0aWNfd29ya3M9eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2Fz
OiIgPiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3Qu
JGFjX2V4dCA+JjUKKwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNf
ZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNf
b2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiAgIExE
RkxBR1M9IiRzYXZlX0xERkxBR1MiCiAKIGZpCiAKKwogIyBCZWx0ICphbmQqIGJyYWNlcyB0byBz
dG9wIG15IHRyb3VzZXJzIGZhbGxpbmcgZG93bjoKIHRlc3QgIlgkbHRfY3ZfcHJvZ19jY19zdGF0
aWNfd29ya3MiID0gWG5vICYmIGx0X2N2X3Byb2dfY2Nfc3RhdGljPQotZWNobyAiJGFzX21lOjUz
NDA6IHJlc3VsdDogJGx0X2N2X3Byb2dfY2Nfc3RhdGljX3dvcmtzIiA+JjUKK2VjaG8gIiRhc19t
ZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9wcm9nX2NjX3N0YXRpY193b3JrcyIgPiY1CiBlY2hv
ICIke0VDSE9fVH0kbHRfY3ZfcHJvZ19jY19zdGF0aWNfd29ya3MiID4mNgogCiBwaWNfZmxhZz0i
JGx0X2N2X3Byb2dfY2NfcGljIgpAQCAtNTM1Myw4ICs2NTM4LDkgQEAKIG5vX2J1aWx0aW5fZmxh
Zz0iJGx0X2N2X3Byb2dfY2Nfbm9fYnVpbHRpbiIKIGNhbl9idWlsZF9zaGFyZWQ9IiRsdF9jdl9w
cm9nX2NjX2Nhbl9idWlsZF9zaGFyZWQiCiAKKwogIyBDaGVjayB0byBzZWUgaWYgb3B0aW9ucyAt
byBhbmQgLWMgYXJlIHNpbXVsdGFuZW91c2x5IHN1cHBvcnRlZCBieSBjb21waWxlcgotZWNobyAi
JGFzX21lOjUzNTE6IGNoZWNraW5nIGlmICRjb21waWxlciBzdXBwb3J0cyAtYyAtbyBmaWxlLiRh
Y19vYmpleHQiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGlmICRjb21waWxl
ciBzdXBwb3J0cyAtYyAtbyBmaWxlLiRhY19vYmpleHQiID4mNQogZWNobyAkRUNIT19OICJjaGVj
a2luZyBpZiAkY29tcGlsZXIgc3VwcG9ydHMgLWMgLW8gZmlsZS4kYWNfb2JqZXh0Li4uICRFQ0hP
X0MiID4mNgogaWYgdGVzdCAiJHtsdF9jdl9jb21waWxlcl9jX28rc2V0fSIgPSBzZXQ7IHRoZW4K
ICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTUzNzQsNyArNjU2MCw3
IEBACiBzYXZlX0NGTEFHUz0iJENGTEFHUyIKIENGTEFHUz0iJENGTEFHUyAtbyBvdXQvY29uZnRl
c3QyLiRhY19vYmpleHQiCiBjb21waWxlcl9jX289bm8KLWlmIHsgKGV2YWwgZWNobyBjb25maWd1
cmU6NTM3MTogXCIkYWNfY29tcGlsZVwiKSAxPiY1OyAoZXZhbCAkYWNfY29tcGlsZSkgMj5vdXQv
Y29uZnRlc3QuZXJyOyB9ICYmIHRlc3QgLXMgb3V0L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0OyB0aGVu
CitpZiB7IChldmFsIGVjaG8gY29uZmlndXJlOjY1NjM6IFwiJGFjX2NvbXBpbGVcIikgMT4mNTsg
KGV2YWwgJGFjX2NvbXBpbGUpIDI+b3V0L2NvbmZ0ZXN0LmVycjsgfSAmJiB0ZXN0IC1zIG91dC9j
b25mdGVzdDIuJGFjX29iamV4dDsgdGhlbgogICAjIFRoZSBjb21waWxlciBjYW4gb25seSB3YXJu
IGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2duaXplZAogICAjIFNvIHNheSBubyBp
ZiB0aGVyZSBhcmUgd2FybmluZ3MKICAgaWYgdGVzdCAtcyBvdXQvY29uZnRlc3QuZXJyOyB0aGVu
CkBAIC01Mzk4LDEyICs2NTg0LDEyIEBACiBmaQogCiBjb21waWxlcl9jX289JGx0X2N2X2NvbXBp
bGVyX2NfbwotZWNobyAiJGFzX21lOjUzOTU6IHJlc3VsdDogJGNvbXBpbGVyX2NfbyIgPiY1Citl
Y2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkY29tcGlsZXJfY19vIiA+JjUKIGVjaG8gIiR7
RUNIT19UfSRjb21waWxlcl9jX28iID4mNgogCiBpZiB0ZXN0IHgiJGNvbXBpbGVyX2NfbyIgPSB4
InllcyI7IHRoZW4KICAgIyBDaGVjayB0byBzZWUgaWYgd2UgY2FuIHdyaXRlIHRvIGEgLmxvCi0g
IGVjaG8gIiRhc19tZTo1NDAwOiBjaGVja2luZyBpZiAkY29tcGlsZXIgc3VwcG9ydHMgLWMgLW8g
ZmlsZS5sbyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBpZiAkY29tcGls
ZXIgc3VwcG9ydHMgLWMgLW8gZmlsZS5sbyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGlm
ICRjb21waWxlciBzdXBwb3J0cyAtYyAtbyBmaWxlLmxvLi4uICRFQ0hPX0MiID4mNgogICBpZiB0
ZXN0ICIke2x0X2N2X2NvbXBpbGVyX29fbG8rc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNI
T19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTU0MTUsOCArNjYwMSwxMSBAQAogICBzYXZl
X29iamV4dD0iJGFjX29iamV4dCIKICAgYWNfb2JqZXh0PWxvCiAgIGNhdCA+Y29uZnRlc3QuJGFj
X2V4dCA8PF9BQ0VPRgotI2xpbmUgNTQxMiAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZz
LmgiCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVz
dC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRl
ZnMuaC4gICovCiAKIGludAogbWFpbiAoKQpAQCAtNTQyNywxNiArNjYxNiwyNiBAQAogfQogX0FD
RU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo1
NDI0OiBcIiRhY19jb21waWxlXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+JjUKK2lm
IHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBpbGVcIiIpID4mNQorICAo
ZXZhbCAkYWNfY29tcGlsZSkgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8g
IiRhc19tZTo1NDI3OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29u
ZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25m
dGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1z
IGNvbmZ0ZXN0LiRhY19vYmpleHQnCi0gIHsgKGV2YWwgZWNobyAiJGFzX21lOjU0MzA6IFwiJGFj
X3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElO
RU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1
cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChl
eGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRh
Y19vYmpleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikg
PiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19t
ZTo1NDMzOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICAg
ICAgIyBUaGUgY29tcGlsZXIgY2FuIG9ubHkgd2FybiBhbmQgaWdub3JlIHRoZSBvcHRpb24gaWYg
bm90IHJlY29nbml6ZWQKICAgICAjIFNvIHNheSBubyBpZiB0aGVyZSBhcmUgd2FybmluZ3MKQEAg
LTU0NDgsMTYgKzY2NDcsMTcgQEAKIAogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9n
cmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNv
bmZ0ZXN0LiRhY19leHQgPiY1CisKIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0
ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0
ZXN0LiRhY19leHQKICAgYWNfb2JqZXh0PSIkc2F2ZV9vYmpleHQiCiAgIENGTEFHUz0iJHNhdmVf
Q0ZMQUdTIgogCiBmaQogCiAgIGNvbXBpbGVyX29fbG89JGx0X2N2X2NvbXBpbGVyX29fbG8KLSAg
ZWNobyAiJGFzX21lOjU0NTQ6IHJlc3VsdDogJGNvbXBpbGVyX29fbG8iID4mNQorICBlY2hvICIk
YXNfbWU6JExJTkVOTzogcmVzdWx0OiAkY29tcGlsZXJfb19sbyIgPiY1CiBlY2hvICIke0VDSE9f
VH0kY29tcGlsZXJfb19sbyIgPiY2CiBlbHNlCiAgIGNvbXBpbGVyX29fbG89bm8KQEAgLTU0Njcs
NyArNjY2Nyw3IEBACiBoYXJkX2xpbmtzPSJub3R0ZXN0ZWQiCiBpZiB0ZXN0ICIkY29tcGlsZXJf
Y19vIiA9IG5vICYmIHRlc3QgIiRuZWVkX2xvY2tzIiAhPSBubzsgdGhlbgogICAjIGRvIG5vdCBv
dmVyd3JpdGUgdGhlIHZhbHVlIG9mIG5lZWRfbG9ja3MgcHJvdmlkZWQgYnkgdGhlIHVzZXIKLSAg
ZWNobyAiJGFzX21lOjU0NjQ6IGNoZWNraW5nIGlmIHdlIGNhbiBsb2NrIHdpdGggaGFyZCBsaW5r
cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBpZiB3ZSBjYW4gbG9jayB3
aXRoIGhhcmQgbGlua3MiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBpZiB3ZSBjYW4gbG9j
ayB3aXRoIGhhcmQgbGlua3MuLi4gJEVDSE9fQyIgPiY2CiAgIGhhcmRfbGlua3M9eWVzCiAgICRy
bSBjb25mdGVzdCoKQEAgLTU0NzUsMTAgKzY2NzUsMTAgQEAKICAgdG91Y2ggY29uZnRlc3QuYQog
ICBsbiBjb25mdGVzdC5hIGNvbmZ0ZXN0LmIgMj4mNSB8fCBoYXJkX2xpbmtzPW5vCiAgIGxuIGNv
bmZ0ZXN0LmEgY29uZnRlc3QuYiAyPi9kZXYvbnVsbCAmJiBoYXJkX2xpbmtzPW5vCi0gIGVjaG8g
IiRhc19tZTo1NDcyOiByZXN1bHQ6ICRoYXJkX2xpbmtzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRM
SU5FTk86IHJlc3VsdDogJGhhcmRfbGlua3MiID4mNQogZWNobyAiJHtFQ0hPX1R9JGhhcmRfbGlu
a3MiID4mNgogICBpZiB0ZXN0ICIkaGFyZF9saW5rcyIgPSBubzsgdGhlbgotICAgIHsgZWNobyAi
JGFzX21lOjU0NzU6IFdBUk5JTkc6IFxgJENDJyBkb2VzIG5vdCBzdXBwb3J0IFxgLWMgLW8nLCBz
byBcYG1ha2UgLWonIG1heSBiZSB1bnNhZmUiID4mNQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFdBUk5JTkc6IFxgJENDJyBkb2VzIG5vdCBzdXBwb3J0IFxgLWMgLW8nLCBzbyBcYG1ha2Ug
LWonIG1heSBiZSB1bnNhZmUiID4mNQogZWNobyAiJGFzX21lOiBXQVJOSU5HOiBcYCRDQycgZG9l
cyBub3Qgc3VwcG9ydCBcYC1jIC1vJywgc28gXGBtYWtlIC1qJyBtYXkgYmUgdW5zYWZlIiA+JjI7
fQogICAgIG5lZWRfbG9ja3M9d2FybgogICBmaQpAQCAtNTQ4OCwxNSArNjY4OCwxOCBAQAogCiBp
ZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgogICAjIENoZWNrIHRvIHNlZSBpZiBvcHRpb25zIC1m
bm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMgYXJlIHN1cHBvcnRlZCBieSBjb21waWxlcgotICBlY2hv
ICIkYXNfbWU6NTQ4NTogY2hlY2tpbmcgaWYgJGNvbXBpbGVyIHN1cHBvcnRzIC1mbm8tcnR0aSAt
Zm5vLWV4Y2VwdGlvbnMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgaWYg
JGNvbXBpbGVyIHN1cHBvcnRzIC1mbm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMiID4mNQogZWNobyAk
RUNIT19OICJjaGVja2luZyBpZiAkY29tcGlsZXIgc3VwcG9ydHMgLWZuby1ydHRpIC1mbm8tZXhj
ZXB0aW9ucy4uLiAkRUNIT19DIiA+JjYKICAgZWNobyAiaW50IHNvbWVfdmFyaWFibGUgPSAwOyIg
PiBjb25mdGVzdC4kYWNfZXh0CiAgIHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIgogICBDRkxBR1M9IiRD
RkxBR1MgLWZuby1ydHRpIC1mbm8tZXhjZXB0aW9ucyAtYyBjb25mdGVzdC4kYWNfZXh0IgogICBj
b21waWxlcl9ydHRpX2V4Y2VwdGlvbnM9bm8KICAgY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FD
RU9GCi0jbGluZSA1NDkyICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNv
bmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQK
K2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8K
IAogaW50CiBtYWluICgpCkBAIC01NTA3LDE2ICs2NzEwLDI2IEBACiB9CiBfQUNFT0YKIHJtIC1m
IGNvbmZ0ZXN0LiRhY19vYmpleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjU1MDQ6IFwiJGFj
X2NvbXBpbGVcIiIpID4mNQotICAoZXZhbCAkYWNfY29tcGlsZSkgMj4mNQoraWYgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19j
b21waWxlKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjU1
MDc6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEg
PmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+
JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhp
dCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3Qu
JGFjX29iamV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6NTUxMDogXCIkYWNfdHJ5XCIiKSA+
JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0
YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcK
KyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2
YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjU1MTM6IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgICAgICAjIFRoZSBj
b21waWxlciBjYW4gb25seSB3YXJuIGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2du
aXplZAogICAgICMgU28gc2F5IG5vIGlmIHRoZXJlIGFyZSB3YXJuaW5ncwpAQCAtNTUyOCwxMSAr
Njc0MSwxMiBAQAogCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIg
PiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFj
X2V4dCA+JjUKKwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4
dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4
dAogICBDRkxBR1M9IiRzYXZlX0NGTEFHUyIKLSAgZWNobyAiJGFzX21lOjU1Mjk6IHJlc3VsdDog
JGNvbXBpbGVyX3J0dGlfZXhjZXB0aW9ucyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6ICRjb21waWxlcl9ydHRpX2V4Y2VwdGlvbnMiID4mNQogZWNobyAiJHtFQ0hPX1R9JGNv
bXBpbGVyX3J0dGlfZXhjZXB0aW9ucyIgPiY2CiAKICAgaWYgdGVzdCAiJGNvbXBpbGVyX3J0dGlf
ZXhjZXB0aW9ucyIgPSAieWVzIjsgdGhlbgpAQCAtNTU0Myw3ICs2NzU3LDcgQEAKIGZpCiAKICMg
U2VlIGlmIHRoZSBsaW5rZXIgc3VwcG9ydHMgYnVpbGRpbmcgc2hhcmVkIGxpYnJhcmllcy4KLWVj
aG8gIiRhc19tZTo1NTQwOiBjaGVja2luZyB3aGV0aGVyIHRoZSBsaW5rZXIgKCRMRCkgc3VwcG9y
dHMgc2hhcmVkIGxpYnJhcmllcyIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcg
d2hldGhlciB0aGUgbGlua2VyICgkTEQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMiID4mNQog
ZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHRoZSBsaW5rZXIgKCRMRCkgc3VwcG9ydHMg
c2hhcmVkIGxpYnJhcmllcy4uLiAkRUNIT19DIiA+JjYKIAogYWxsb3dfdW5kZWZpbmVkX2ZsYWc9
CkBAIC02MjI0LDEyICs3NDM4LDEyIEBACiAgICAgOzsKICAgZXNhYwogZmkKLWVjaG8gIiRhc19t
ZTo2MjIxOiByZXN1bHQ6ICRsZF9zaGxpYnMiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJl
c3VsdDogJGxkX3NobGlicyIgPiY1CiBlY2hvICIke0VDSE9fVH0kbGRfc2hsaWJzIiA+JjYKIHRl
c3QgIiRsZF9zaGxpYnMiID0gbm8gJiYgY2FuX2J1aWxkX3NoYXJlZD1ubwogCiAjIENoZWNrIGhh
cmRjb2RpbmcgYXR0cmlidXRlcy4KLWVjaG8gIiRhc19tZTo2MjI2OiBjaGVja2luZyBob3cgdG8g
aGFyZGNvZGUgbGlicmFyeSBwYXRocyBpbnRvIHByb2dyYW1zIiA+JjUKK2VjaG8gIiRhc19tZTok
TElORU5POiBjaGVja2luZyBob3cgdG8gaGFyZGNvZGUgbGlicmFyeSBwYXRocyBpbnRvIHByb2dy
YW1zIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgaG93IHRvIGhhcmRjb2RlIGxpYnJhcnkg
cGF0aHMgaW50byBwcm9ncmFtcy4uLiAkRUNIT19DIiA+JjYKIGhhcmRjb2RlX2FjdGlvbj0KIGlm
IHRlc3QgLW4gIiRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIiB8fCBcCkBAIC02MjUzLDIwICs3
NDY3LDIwIEBACiAgICMgZGlyZWN0b3JpZXMuCiAgIGhhcmRjb2RlX2FjdGlvbj11bnN1cHBvcnRl
ZAogZmkKLWVjaG8gIiRhc19tZTo2MjUwOiByZXN1bHQ6ICRoYXJkY29kZV9hY3Rpb24iID4mNQor
ZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGhhcmRjb2RlX2FjdGlvbiIgPiY1CiBlY2hv
ICIke0VDSE9fVH0kaGFyZGNvZGVfYWN0aW9uIiA+JjYKIAogc3RyaXBsaWI9CiBvbGRfc3RyaXBs
aWI9Ci1lY2hvICIkYXNfbWU6NjI1NTogY2hlY2tpbmcgd2hldGhlciBzdHJpcHBpbmcgbGlicmFy
aWVzIGlzIHBvc3NpYmxlIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0
aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMgcG9zc2libGUiID4mNQogZWNobyAkRUNIT19OICJj
aGVja2luZyB3aGV0aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMgcG9zc2libGUuLi4gJEVDSE9f
QyIgPiY2CiBpZiB0ZXN0IC1uICIkU1RSSVAiICYmICRTVFJJUCAtViAyPiYxIHwgZ3JlcCAiR05V
IHN0cmlwIiA+L2Rldi9udWxsOyB0aGVuCiAgIHRlc3QgLXogIiRvbGRfc3RyaXBsaWIiICYmIG9s
ZF9zdHJpcGxpYj0iJFNUUklQIC0tc3RyaXAtZGVidWciCiAgIHRlc3QgLXogIiRzdHJpcGxpYiIg
JiYgc3RyaXBsaWI9IiRTVFJJUCAtLXN0cmlwLXVubmVlZGVkIgotICBlY2hvICIkYXNfbWU6NjI2
MDogcmVzdWx0OiB5ZXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiB5ZXMi
ID4mNQogZWNobyAiJHtFQ0hPX1R9eWVzIiA+JjYKIGVsc2UKLSAgZWNobyAiJGFzX21lOjYyNjM6
IHJlc3VsdDogbm8iID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiBubyIgPiY1
CiBlY2hvICIke0VDSE9fVH1ubyIgPiY2CiBmaQogCkBAIC02Mjc0LDcgKzc0ODgsNyBAQAogdGVz
dCAteiAiJGRlcGxpYnNfY2hlY2tfbWV0aG9kIiAmJiBkZXBsaWJzX2NoZWNrX21ldGhvZD11bmtu
b3duCiAKICMgUE9SVE1FIEZpbGwgaW4geW91ciBsZC5zbyBjaGFyYWN0ZXJpc3RpY3MKLWVjaG8g
IiRhc19tZTo2MjcxOiBjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MiID4m
NQorZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGR5bmFtaWMgbGlua2VyIGNoYXJhY3Rl
cmlzdGljcyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGR5bmFtaWMgbGlua2VyIGNoYXJh
Y3RlcmlzdGljcy4uLiAkRUNIT19DIiA+JjYKIGxpYnJhcnlfbmFtZXNfc3BlYz0KIGxpYm5hbWVf
c3BlYz0nbGliJG5hbWUnCkBAIC02NjcxLDE3ICs3ODg1LDE3IEBACiAgIGR5bmFtaWNfbGlua2Vy
PW5vCiAgIDs7CiBlc2FjCi1lY2hvICIkYXNfbWU6NjY2ODogcmVzdWx0OiAkZHluYW1pY19saW5r
ZXIiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGR5bmFtaWNfbGlua2VyIiA+
JjUKIGVjaG8gIiR7RUNIT19UfSRkeW5hbWljX2xpbmtlciIgPiY2CiB0ZXN0ICIkZHluYW1pY19s
aW5rZXIiID0gbm8gJiYgY2FuX2J1aWxkX3NoYXJlZD1ubwogCiAjIFJlcG9ydCB0aGUgZmluYWwg
Y29uc2VxdWVuY2VzLgotZWNobyAiJGFzX21lOjY2NzM6IGNoZWNraW5nIGlmIGxpYnRvb2wgc3Vw
cG9ydHMgc2hhcmVkIGxpYnJhcmllcyIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tp
bmcgaWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzIiA+JjUKIGVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgaWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzLi4uICRFQ0hP
X0MiID4mNgotZWNobyAiJGFzX21lOjY2NzU6IHJlc3VsdDogJGNhbl9idWlsZF9zaGFyZWQiID4m
NQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGNhbl9idWlsZF9zaGFyZWQiID4mNQog
ZWNobyAiJHtFQ0hPX1R9JGNhbl9idWlsZF9zaGFyZWQiID4mNgogCi1lY2hvICIkYXNfbWU6NjY3
ODogY2hlY2tpbmcgd2hldGhlciB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzIiA+JjUKK2VjaG8g
IiRhc19tZTokTElORU5POiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJp
ZXMiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHNoYXJlZCBs
aWJyYXJpZXMuLi4gJEVDSE9fQyIgPiY2CiB0ZXN0ICIkY2FuX2J1aWxkX3NoYXJlZCIgPSAibm8i
ICYmIGVuYWJsZV9zaGFyZWQ9bm8KIApAQCAtNjcwMiwxNCArNzkxNiwxNCBAQAogICBmaQogICA7
OwogZXNhYwotZWNobyAiJGFzX21lOjY2OTk6IHJlc3VsdDogJGVuYWJsZV9zaGFyZWQiID4mNQor
ZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGVuYWJsZV9zaGFyZWQiID4mNQogZWNobyAi
JHtFQ0hPX1R9JGVuYWJsZV9zaGFyZWQiID4mNgogCi1lY2hvICIkYXNfbWU6NjcwMjogY2hlY2tp
bmcgd2hldGhlciB0byBidWlsZCBzdGF0aWMgbGlicmFyaWVzIiA+JjUKK2VjaG8gIiRhc19tZTok
TElORU5POiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMiID4mNQog
ZWNobyAkRUNIT19OICJjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHN0YXRpYyBsaWJyYXJpZXMu
Li4gJEVDSE9fQyIgPiY2CiAjIE1ha2Ugc3VyZSBlaXRoZXIgZW5hYmxlX3NoYXJlZCBvciBlbmFi
bGVfc3RhdGljIGlzIHllcy4KIHRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyB8fCBlbmFibGVf
c3RhdGljPXllcwotZWNobyAiJGFzX21lOjY3MDY6IHJlc3VsdDogJGVuYWJsZV9zdGF0aWMiID4m
NQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGVuYWJsZV9zdGF0aWMiID4mNQogZWNo
byAiJHtFQ0hPX1R9JGVuYWJsZV9zdGF0aWMiID4mNgogCiBpZiB0ZXN0ICIkaGFyZGNvZGVfYWN0
aW9uIiA9IHJlbGluazsgdGhlbgpAQCAtNjc0Nyw2OCArNzk2MSwxMDAgQEAKICAgIDs7CiAKICAg
KikKLSAgICBlY2hvICIkYXNfbWU6Njc0NDogY2hlY2tpbmcgZm9yIHNobF9sb2FkIiA+JjUKKyAg
ICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHNobF9sb2FkIiA+JjUKIGVjaG8g
JEVDSE9fTiAiY2hlY2tpbmcgZm9yIHNobF9sb2FkLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAi
JHthY19jdl9mdW5jX3NobF9sb2FkK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAi
KGNhY2hlZCkgJEVDSE9fQyIgPiY2CiBlbHNlCiAgIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgotI2xpbmUgNjc1MCAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBj
b25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0
CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICov
CisvKiBEZWZpbmUgc2hsX2xvYWQgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxp
bWl0cy5oPiBkZWNsYXJlcyBzaGxfbG9hZC4KKyAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxp
bWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLworI2RlZmluZSBzaGxfbG9hZCBpbm5v
Y3VvdXNfc2hsX2xvYWQKKwogLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3Jv
cyBhbmQgaG9wZWZ1bGx5IGZldyBwcm90b3R5cGVzLAotICAgIHdoaWNoIGNhbiBjb25mbGljdCB3
aXRoIGNoYXIgc2hsX2xvYWQgKCk7IGJlbG93LiAgKi8KLSNpbmNsdWRlIDxhc3NlcnQuaD4KKyAg
ICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIHNobF9sb2FkICgpOyBiZWxvdy4KKyAgICBQ
cmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNp
bmNlCisgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJz
LiAgKi8KKworI2lmZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorI2Vsc2UKKyMg
aW5jbHVkZSA8YXNzZXJ0Lmg+CisjZW5kaWYKKworI3VuZGVmIHNobF9sb2FkCisKIC8qIE92ZXJy
aWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCiAj
aWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIKK3sKICNlbmRpZgogLyogV2UgdXNlIGNoYXIg
YmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgogICAgYnVp
bHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAg
Ki8KIGNoYXIgc2hsX2xvYWQgKCk7Ci1jaGFyICgqZikgKCk7Ci0KLWludAotbWFpbiAoKQotewog
LyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQg
aW1wbGVtZW50cwogICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAgU29tZSBmdW5jdGlv
bnMgYXJlIGFjdHVhbGx5IG5hbWVkCiAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5k
IHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiAjaWYgZGVmaW5lZCAoX19zdHViX3No
bF9sb2FkKSB8fCBkZWZpbmVkIChfX3N0dWJfX19zaGxfbG9hZCkKIGNob2tlIG1lCiAjZWxzZQot
ZiA9IHNobF9sb2FkOworY2hhciAoKmYpICgpID0gc2hsX2xvYWQ7CisjZW5kaWYKKyNpZmRlZiBf
X2NwbHVzcGx1cworfQogI2VuZGlmCiAKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGYgIT0gc2hs
X2xvYWQ7CiAgIDsKICAgcmV0dXJuIDA7CiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19v
YmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo2NzgxOiBc
IiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykg
Mj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo2Nzg0OiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVz
dC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0
YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4
dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6Njc4NzogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBh
Y190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikg
PiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19t
ZTo2NzkwOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFj
X3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNf
c3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
ICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfZnVuY19zaGxfbG9hZD15
ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBj
b25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQor
CiBhY19jdl9mdW5jX3NobF9sb2FkPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBj
b25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNv
bmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRh
Y19leHQKIGZpCi1lY2hvICIkYXNfbWU6NjgwMDogcmVzdWx0OiAkYWNfY3ZfZnVuY19zaGxfbG9h
ZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfZnVuY19zaGxfbG9h
ZCIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfZnVuY19zaGxfbG9hZCIgPiY2CiBpZiB0ZXN0
ICRhY19jdl9mdW5jX3NobF9sb2FkID0geWVzOyB0aGVuCiAgIGx0X2N2X2Rsb3Blbj0ic2hsX2xv
YWQiCiBlbHNlCi0gIGVjaG8gIiRhc19tZTo2ODA1OiBjaGVja2luZyBmb3Igc2hsX2xvYWQgaW4g
LWxkbGQiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHNobF9sb2Fk
IGluIC1sZGxkIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHNobF9sb2FkIGluIC1s
ZGxkLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9saWJfZGxkX3NobF9sb2FkK3Nl
dH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBA
IC02ODE2LDggKzgwNjIsMTEgQEAKICAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUwogTElC
Uz0iLWxkbGQgICRMSUJTIgogY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSA2
ODEzICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAq
LworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0
ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogLyogT3ZlcnJp
ZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KICNp
ZmRlZiBfX2NwbHVzcGx1cwpAQCAtNjgzNSw5MyArODA4NCwxMzcgQEAKIH0KIF9BQ0VPRgogcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNo
byAiJGFzX21lOjY4MzI6IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4m
NQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1Cisg
IChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAi
JGFzX21lOjY4MzU6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25m
dGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0
ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMg
Y29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo2ODM4OiBcIiRhY190
cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVO
TzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9
JD8KLSAgZWNobyAiJGFzX21lOjY4NDE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMp
OyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAo
ZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFj
X3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9
ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19j
dl9saWJfZGxkX3NobF9sb2FkPXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9n
cmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNv
bmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9kbGRfc2hsX2xvYWQ9bm8KIGZpCi1ybSAt
ZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0
CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgICBjb25mdGVz
dCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAogTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElC
UwogZmkKLWVjaG8gIiRhc19tZTo2ODUyOiByZXN1bHQ6ICRhY19jdl9saWJfZGxkX3NobF9sb2Fk
IiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJfZGxkX3NobF9s
b2FkIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9saWJfZGxkX3NobF9sb2FkIiA+JjYKIGlm
IHRlc3QgJGFjX2N2X2xpYl9kbGRfc2hsX2xvYWQgPSB5ZXM7IHRoZW4KICAgbHRfY3ZfZGxvcGVu
PSJzaGxfbG9hZCIgbHRfY3ZfZGxvcGVuX2xpYnM9Ii1kbGQiCiBlbHNlCi0gIGVjaG8gIiRhc19t
ZTo2ODU3OiBjaGVja2luZyBmb3IgZGxvcGVuIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IGNoZWNraW5nIGZvciBkbG9wZW4iID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZGxv
cGVuLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9mdW5jX2Rsb3BlbitzZXR9IiA9
IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgogZWxzZQog
ICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDY4NjMgImNvbmZpZ3VyZSIK
LSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBj
b25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworLyogRGVmaW5lIGRsb3BlbiB0byBhbiBpbm5v
Y3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+IGRlY2xhcmVzIGRsb3Blbi4KKyAgIEZv
ciBleGFtcGxlLCBIUC1VWCAxMWkgPGxpbWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAq
LworI2RlZmluZSBkbG9wZW4gaW5ub2N1b3VzX2Rsb3BlbgorCiAvKiBTeXN0ZW0gaGVhZGVyIHRv
IGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCi0gICAg
d2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBkbG9wZW4gKCk7IGJlbG93LiAgKi8KLSNpbmNs
dWRlIDxhc3NlcnQuaD4KKyAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyIGRsb3BlbiAo
KTsgYmVsb3cuCisgICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFzc2VydC5oPiBpZiBfX1NURENf
XyBpcyBkZWZpbmVkLCBzaW5jZQorICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2ZW4gb24gZnJlZXN0
YW5kaW5nIGNvbXBpbGVycy4gICovCisKKyNpZmRlZiBfX1NURENfXworIyBpbmNsdWRlIDxsaW1p
dHMuaD4KKyNlbHNlCisjIGluY2x1ZGUgPGFzc2VydC5oPgorI2VuZGlmCisKKyN1bmRlZiBkbG9w
ZW4KKwogLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFu
IGVycm9yLiAgKi8KICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIgorewogI2VuZGlmCiAv
KiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2Yg
YSBnY2MyCiAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQg
c3RpbGwgYXBwbHkuICAqLwogY2hhciBkbG9wZW4gKCk7Ci1jaGFyICgqZikgKCk7Ci0KLWludAot
bWFpbiAoKQotewogLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlv
bnMgd2hpY2ggaXQgaW1wbGVtZW50cwogICAgIHRvIGFsd2F5cyBmYWlsIHdpdGggRU5PU1lTLiAg
U29tZSBmdW5jdGlvbnMgYXJlIGFjdHVhbGx5IG5hbWVkCiAgICAgc29tZXRoaW5nIHN0YXJ0aW5n
IHdpdGggX18gYW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCiAjaWYgZGVmaW5l
ZCAoX19zdHViX2Rsb3BlbikgfHwgZGVmaW5lZCAoX19zdHViX19fZGxvcGVuKQogY2hva2UgbWUK
ICNlbHNlCi1mID0gZGxvcGVuOworY2hhciAoKmYpICgpID0gZGxvcGVuOworI2VuZGlmCisjaWZk
ZWYgX19jcGx1c3BsdXMKK30KICNlbmRpZgogCitpbnQKK21haW4gKCkKK3sKK3JldHVybiBmICE9
IGRsb3BlbjsKICAgOwogICByZXR1cm4gMDsKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFj
X29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjY4OTQ6
IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5r
KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjY4OTc6IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0
ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNf
c3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhl
ZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo2OTAwOiBcIiRhY190cnlcIiIpID4mNQorCSB7
IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIi
KSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsg
fTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2
YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190
cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo2OTAzOiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19jdl9mdW5jX2Rsb3Blbj15
ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBj
b25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQor
CiBhY19jdl9mdW5jX2Rsb3Blbj1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29u
ZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25m
dGVzdC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNf
ZXh0CiBmaQotZWNobyAiJGFzX21lOjY5MTM6IHJlc3VsdDogJGFjX2N2X2Z1bmNfZGxvcGVuIiA+
JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9mdW5jX2Rsb3BlbiIgPiY1
CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfZnVuY19kbG9wZW4iID4mNgogaWYgdGVzdCAkYWNfY3Zf
ZnVuY19kbG9wZW4gPSB5ZXM7IHRoZW4KICAgbHRfY3ZfZGxvcGVuPSJkbG9wZW4iCiBlbHNlCi0g
IGVjaG8gIiRhc19tZTo2OTE4OiBjaGVja2luZyBmb3IgZGxvcGVuIGluIC1sZGwiID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIGRsb3BlbiBpbiAtbGRsIiA+JjUKIGVj
aG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGRsb3BlbiBpbiAtbGRsLi4uICRFQ0hPX0MiID4mNgog
aWYgdGVzdCAiJHthY19jdl9saWJfZGxfZGxvcGVuK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8g
JEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC02OTI5LDggKzgyMjIsMTEgQEAKICAg
YWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUwogTElCUz0iLWxkbCAgJExJQlMiCiBjYXQgPmNv
bmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDY5MjYgImNvbmZpZ3VyZSIKLSNpbmNsdWRl
ICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5o
ID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyog
ZW5kIGNvbmZkZWZzLmguICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBwcm90
b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC02OTQ4
LDMyICs4MjQ0LDQ0IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29u
ZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo2OTQ1OiBcIiRhY19saW5r
XCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVz
dC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo2OTQ4OiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAg
cm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0g
JiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAo
ZXZhbCBlY2hvICIkYXNfbWU6Njk1MTogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rl
c3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIn
CisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChl
dmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkg
eyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRh
c19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAg
IGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6Njk1NDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1
CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQg
JGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfbGliX2RsX2Rsb3Blbj15ZXMKIGVsc2UK
ICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4k
YWNfZXh0ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9s
aWJfZGxfZGxvcGVuPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRh
Y19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRh
Y19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKIExJ
QlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNfbWU6Njk2NTogcmVzdWx0
OiAkYWNfY3ZfbGliX2RsX2Rsb3BlbiIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkYWNfY3ZfbGliX2RsX2Rsb3BlbiIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfbGliX2Rs
X2Rsb3BlbiIgPiY2CiBpZiB0ZXN0ICRhY19jdl9saWJfZGxfZGxvcGVuID0geWVzOyB0aGVuCiAg
IGx0X2N2X2Rsb3Blbj0iZGxvcGVuIiBsdF9jdl9kbG9wZW5fbGlicz0iLWxkbCIKIGVsc2UKLSAg
ZWNobyAiJGFzX21lOjY5NzA6IGNoZWNraW5nIGZvciBkbG9wZW4gaW4gLWxzdmxkIiA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBkbG9wZW4gaW4gLWxzdmxkIiA+JjUK
IGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGRsb3BlbiBpbiAtbHN2bGQuLi4gJEVDSE9fQyIg
PiY2CiBpZiB0ZXN0ICIke2FjX2N2X2xpYl9zdmxkX2Rsb3BlbitzZXR9IiA9IHNldDsgdGhlbgog
ICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtNjk4MSw4ICs4Mjg5LDEx
IEBACiAgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKIExJQlM9Ii1sc3ZsZCAgJExJQlMi
CiBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDY5NzggImNvbmZpZ3VyZSIK
LSNpbmNsdWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBj
b25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRl
cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVz
CkBAIC03MDAwLDMyICs4MzExLDQ0IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19v
YmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo2OTk3OiBc
IiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNo
byAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAkYWNfbGluaykg
Mj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo3MDAwOiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVz
dC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0
YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4
dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6NzAwMzogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBh
Y190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikg
PiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07
IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFs
IGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5
KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6NzAwNjogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
ICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfbGliX3N2bGRfZGxvcGVu
PXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0
IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1
CisKIGFjX2N2X2xpYl9zdmxkX2Rsb3Blbj1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpl
eHQgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVy
ciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVz
dC4kYWNfZXh0CiBMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCiBmaQotZWNobyAiJGFzX21l
OjcwMTc6IHJlc3VsdDogJGFjX2N2X2xpYl9zdmxkX2Rsb3BlbiIgPiY1CitlY2hvICIkYXNfbWU6
JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX3N2bGRfZGxvcGVuIiA+JjUKIGVjaG8gIiR7RUNI
T19UfSRhY19jdl9saWJfc3ZsZF9kbG9wZW4iID4mNgogaWYgdGVzdCAkYWNfY3ZfbGliX3N2bGRf
ZGxvcGVuID0geWVzOyB0aGVuCiAgIGx0X2N2X2Rsb3Blbj0iZGxvcGVuIiBsdF9jdl9kbG9wZW5f
bGlicz0iLWxzdmxkIgogZWxzZQotICBlY2hvICIkYXNfbWU6NzAyMjogY2hlY2tpbmcgZm9yIGRs
ZF9saW5rIGluIC1sZGxkIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZv
ciBkbGRfbGluayBpbiAtbGRsZCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBkbGRf
bGluayBpbiAtbGRsZC4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfbGliX2RsZF9k
bGRfbGluaytzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hP
X0MiID4mNgpAQCAtNzAzMyw4ICs4MzU2LDExIEBACiAgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9
JExJQlMKIExJQlM9Ii1sZGxkICAkTElCUyIKIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VP
RgotI2xpbmUgNzAzMCAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25m
ZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0Citj
YXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAK
IC8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJv
ci4gICovCiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTcwNTIsNDAgKzgzNzgsNTcgQEAKIH0KIF9B
Q0VPRgogcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsg
KGV2YWwgZWNobyAiJGFzX21lOjcwNDk6IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNf
bGluaykgMj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wi
IikgPiY1CisgIChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8K
LSAgZWNobyAiJGFzX21lOjcwNTI6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICde
ICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAg
Y2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19z
dGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9
J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo3MDU1
OiBcIiRhY190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2Zs
YWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBh
Y19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25m
dGVzdCRhY19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3Ry
eVwiIikgPiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8g
IiRhc19tZTo3MDU4OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhl
bgogICBhY19jdl9saWJfZGxkX2RsZF9saW5rPXllcwogZWxzZQogICBlY2hvICIkYXNfbWU6IGZh
aWxlZCBwcm9ncmFtIHdhczoiID4mNQotY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1CitzZWQgJ3Mv
Xi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKIGFjX2N2X2xpYl9kbGRfZGxkX2xpbms9bm8K
IGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVz
dC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAg
ICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAogTElCUz0kYWNfY2hlY2tfbGli
X3NhdmVfTElCUwogZmkKLWVjaG8gIiRhc19tZTo3MDY5OiByZXN1bHQ6ICRhY19jdl9saWJfZGxk
X2RsZF9saW5rIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJf
ZGxkX2RsZF9saW5rIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9saWJfZGxkX2RsZF9saW5r
IiA+JjYKIGlmIHRlc3QgJGFjX2N2X2xpYl9kbGRfZGxkX2xpbmsgPSB5ZXM7IHRoZW4KICAgbHRf
Y3ZfZGxvcGVuPSJkbGRfbGluayIgbHRfY3ZfZGxvcGVuX2xpYnM9Ii1kbGQiCiBmaQogCisKIGZp
CiAKKwogZmkKIAorCiBmaQogCisKIGZpCiAKKwogZmkKIAogICAgIDs7CkBAIC03MTA4LDcgKzg0
NTEsNyBAQAogICAgIHNhdmVfTElCUz0iJExJQlMiCiAgICAgTElCUz0iJGx0X2N2X2Rsb3Blbl9s
aWJzICRMSUJTIgogCi0gICAgZWNobyAiJGFzX21lOjcxMDU6IGNoZWNraW5nIHdoZXRoZXIgYSBw
cm9ncmFtIGNhbiBkbG9wZW4gaXRzZWxmIiA+JjUKKyAgICBlY2hvICIkYXNfbWU6JExJTkVOTzog
Y2hlY2tpbmcgd2hldGhlciBhIHByb2dyYW0gY2FuIGRsb3BlbiBpdHNlbGYiID4mNQogZWNobyAk
RUNIT19OICJjaGVja2luZyB3aGV0aGVyIGEgcHJvZ3JhbSBjYW4gZGxvcGVuIGl0c2VsZi4uLiAk
RUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7bHRfY3ZfZGxvcGVuX3NlbGYrc2V0fSIgPSBzZXQ7IHRo
ZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTcxMTksNyArODQ2
Miw3IEBACiAgICAgbHRfZGx1bmtub3duPTA7IGx0X2Rsbm9fdXNjb3JlPTE7IGx0X2RsbmVlZF91
c2NvcmU9MgogICBsdF9zdGF0dXM9JGx0X2RsdW5rbm93bgogICBjYXQgPiBjb25mdGVzdC4kYWNf
ZXh0IDw8RU9GCi0jbGluZSA3MTE2ICJjb25maWd1cmUiCisjbGluZSA4NDY1ICJjb25maWd1cmUi
CiAjaW5jbHVkZSAiY29uZmRlZnMuaCIKIAogI2lmIEhBVkVfRExGQ05fSApAQCAtNzE4MCwxMCAr
ODUyMywxMCBAQAogICAgIGV4aXQgKHN0YXR1cyk7CiB9CiBFT0YKLSAgaWYgeyAoZXZhbCBlY2hv
ICIkYXNfbWU6NzE3NzogXCIkYWNfbGlua1wiIikgPiY1CisgIGlmIHsgKGV2YWwgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQogICAoZXZhbCAkYWNfbGluaykgMj4mNQog
ICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjcxODA6IFwkPyA9ICRhY19zdGF0dXMiID4m
NQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0
ICRhY19zdGF0dXMpOyB9ICYmIHRlc3QgLXMgY29uZnRlc3Qke2FjX2V4ZWV4dH0gMj4vZGV2L251
bGw7IHRoZW4KICAgICAoLi9jb25mdGVzdDsgZXhpdDsgKSAyPi9kZXYvbnVsbAogICAgIGx0X3N0
YXR1cz0kPwpAQCAtNzE5OSwxMyArODU0MiwxNCBAQAogZmkKIHJtIC1mciBjb25mdGVzdCoKIAor
CiBmaQotZWNobyAiJGFzX21lOjcxOTc6IHJlc3VsdDogJGx0X2N2X2Rsb3Blbl9zZWxmIiA+JjUK
K2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9kbG9wZW5fc2VsZiIgPiY1CiBl
Y2hvICIke0VDSE9fVH0kbHRfY3ZfZGxvcGVuX3NlbGYiID4mNgogCiAgICAgaWYgdGVzdCAieCRs
dF9jdl9kbG9wZW5fc2VsZiIgPSB4eWVzOyB0aGVuCiAgICAgICBMREZMQUdTPSIkTERGTEFHUyAk
bGlua19zdGF0aWNfZmxhZyIKLSAgICAgIGVjaG8gIiRhc19tZTo3MjAyOiBjaGVja2luZyB3aGV0
aGVyIGEgc3RhdGljYWxseSBsaW5rZWQgcHJvZ3JhbSBjYW4gZGxvcGVuIGl0c2VsZiIgPiY1Cisg
ICAgICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgd2hldGhlciBhIHN0YXRpY2FsbHkg
bGlua2VkIHByb2dyYW0gY2FuIGRsb3BlbiBpdHNlbGYiID4mNQogZWNobyAkRUNIT19OICJjaGVj
a2luZyB3aGV0aGVyIGEgc3RhdGljYWxseSBsaW5rZWQgcHJvZ3JhbSBjYW4gZGxvcGVuIGl0c2Vs
Zi4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7bHRfY3ZfZGxvcGVuX3NlbGZfc3RhdGljK3Nl
dH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBA
IC03MjE2LDcgKzg1NjAsNyBAQAogICAgIGx0X2RsdW5rbm93bj0wOyBsdF9kbG5vX3VzY29yZT0x
OyBsdF9kbG5lZWRfdXNjb3JlPTIKICAgbHRfc3RhdHVzPSRsdF9kbHVua25vd24KICAgY2F0ID4g
Y29uZnRlc3QuJGFjX2V4dCA8PEVPRgotI2xpbmUgNzIxMyAiY29uZmlndXJlIgorI2xpbmUgODU2
MyAiY29uZmlndXJlIgogI2luY2x1ZGUgImNvbmZkZWZzLmgiCiAKICNpZiBIQVZFX0RMRkNOX0gK
QEAgLTcyNzcsMTAgKzg2MjEsMTAgQEAKICAgICBleGl0IChzdGF0dXMpOwogfQogRU9GCi0gIGlm
IHsgKGV2YWwgZWNobyAiJGFzX21lOjcyNzQ6IFwiJGFjX2xpbmtcIiIpID4mNQorICBpZiB7IChl
dmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19saW5rXCIiKSA+JjUKICAgKGV2YWwgJGFj
X2xpbmspIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo3Mjc3OiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0JHthY19leGVl
eHR9IDI+L2Rldi9udWxsOyB0aGVuCiAgICAgKC4vY29uZnRlc3Q7IGV4aXQ7ICkgMj4vZGV2L251
bGwKICAgICBsdF9zdGF0dXM9JD8KQEAgLTcyOTYsOCArODY0MCw5IEBACiBmaQogcm0gLWZyIGNv
bmZ0ZXN0KgogCisKIGZpCi1lY2hvICIkYXNfbWU6NzI5NDogcmVzdWx0OiAkbHRfY3ZfZGxvcGVu
X3NlbGZfc3RhdGljIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRsdF9jdl9k
bG9wZW5fc2VsZl9zdGF0aWMiID4mNQogZWNobyAiJHtFQ0hPX1R9JGx0X2N2X2Rsb3Blbl9zZWxm
X3N0YXRpYyIgPiY2CiAgICAgZmkKIApAQCAtNzMxOCw2ICs4NjYzLDcgQEAKICAgZXNhYwogZmkK
IAorCiBpZiB0ZXN0ICIkZW5hYmxlX3NoYXJlZCIgPSB5ZXMgJiYgdGVzdCAiJEdDQyIgPSB5ZXM7
IHRoZW4KICAgY2FzZSAkYXJjaGl2ZV9jbWRzIGluCiAgIConficqKQpAQCAtNzMyNyw3ICs4Njcz
LDcgQEAKICAgICAjIFRlc3Qgd2hldGhlciB0aGUgY29tcGlsZXIgaW1wbGljaXRseSBsaW5rcyB3
aXRoIC1sYyBzaW5jZSBvbiBzb21lCiAgICAgIyBzeXN0ZW1zLCAtbGdjYyBoYXMgdG8gY29tZSBi
ZWZvcmUgLWxjLiBJZiBnY2MgYWxyZWFkeSBwYXNzZXMgLWxjCiAgICAgIyB0byBsZCwgZG9uJ3Qg
YWRkIC1sYyBiZWZvcmUgLWxnY2MuCi0gICAgZWNobyAiJGFzX21lOjczMjQ6IGNoZWNraW5nIHdo
ZXRoZXIgLWxjIHNob3VsZCBiZSBleHBsaWNpdGx5IGxpbmtlZCBpbiIgPiY1CisgICAgZWNobyAi
JGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdoZXRoZXIgLWxjIHNob3VsZCBiZSBleHBsaWNpdGx5
IGxpbmtlZCBpbiIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIHdoZXRoZXIgLWxjIHNob3Vs
ZCBiZSBleHBsaWNpdGx5IGxpbmtlZCBpbi4uLiAkRUNIT19DIiA+JjYKICAgICBpZiB0ZXN0ICIk
e2x0X2N2X2FyY2hpdmVfY21kc19uZWVkX2xjK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVD
SE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC03MzM1LDEwICs4NjgxLDEwIEBACiAgICRy
bSBjb25mdGVzdCoKICAgICBlY2hvICdzdGF0aWMgaW50IGR1bW15OycgPiBjb25mdGVzdC4kYWNf
ZXh0CiAKLSAgICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTo3MzMyOiBcIiRhY19jb21waWxlXCIi
KSA+JjUKKyAgICBpZiB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxl
XCIiKSA+JjUKICAgKGV2YWwgJGFjX2NvbXBpbGUpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVj
aG8gIiRhc19tZTo3MzM1OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRM
SU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgdGhl
bgogICAgICAgc29uYW1lPWNvbmZ0ZXN0CiAgICAgICBsaWI9Y29uZnRlc3QKQEAgLTczNTIsMTAg
Kzg2OTgsMTAgQEAKICAgICAgIGxpYm5hbWU9Y29uZnRlc3QKICAgICAgIHNhdmVfYWxsb3dfdW5k
ZWZpbmVkX2ZsYWc9JGFsbG93X3VuZGVmaW5lZF9mbGFnCiAgICAgICBhbGxvd191bmRlZmluZWRf
ZmxhZz0KLSAgICAgIGlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjczNDk6IFwiJGFyY2hpdmVfY21k
cyAyXD5cJjEgXHwgZ3JlcCBcIiAtbGMgXCIgXD4vZGV2L251bGwgMlw+XCYxXCIiKSA+JjUKKyAg
ICAgIGlmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFyY2hpdmVfY21kcyAyXD5c
JjEgXHwgZ3JlcCBcIiAtbGMgXCIgXD4vZGV2L251bGwgMlw+XCYxXCIiKSA+JjUKICAgKGV2YWwg
JGFyY2hpdmVfY21kcyAyXD5cJjEgXHwgZ3JlcCBcIiAtbGMgXCIgXD4vZGV2L251bGwgMlw+XCYx
KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6NzM1MjogXCQ/ID0gJGFjX3N0
YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUK
ICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0KICAgICAgIHRoZW4KIAlsdF9jdl9hcmNoaXZlX2NtZHNf
bmVlZF9sYz1ubwpAQCAtNzM2OCw3ICs4NzE0LDcgQEAKICAgICBmaQogZmkKIAotICAgIGVjaG8g
IiRhc19tZTo3MzY1OiByZXN1bHQ6ICRsdF9jdl9hcmNoaXZlX2NtZHNfbmVlZF9sYyIgPiY1Cisg
ICAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGx0X2N2X2FyY2hpdmVfY21kc19uZWVk
X2xjIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRsdF9jdl9hcmNoaXZlX2NtZHNfbmVlZF9sYyIgPiY2
CiAgICAgOzsKICAgZXNhYwpAQCAtNzkyNSw2ICs5MjcxLDEwIEBACiAgIGNobW9kICt4ICIkb2Zp
bGUiCiBmaQogCisKKworCisKICMgVGhpcyBjYW4gYmUgdXNlZCB0byByZWJ1aWxkIGxpYnRvb2wg
d2hlbiBuZWVkZWQKIExJQlRPT0xfREVQUz0iJGFjX2F1eF9kaXIvbHRtYWluLnNoIgogCkBAIC03
OTMzLDcgKzkyODMsOCBAQAogCiAjIFByZXZlbnQgbXVsdGlwbGUgZXhwYW5zaW9uCiAKLWVjaG8g
IiRhc19tZTo3OTMwOiBjaGVja2luZyB3aGV0aGVyIHRvIGVuYWJsZSBtYWludGFpbmVyLXNwZWNp
ZmljIHBvcnRpb25zIG9mIE1ha2VmaWxlcyIgPiY1CisKK2VjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyB3aGV0aGVyIHRvIGVuYWJsZSBtYWludGFpbmVyLXNwZWNpZmljIHBvcnRpb25zIG9m
IE1ha2VmaWxlcyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIHdoZXRoZXIgdG8gZW5hYmxl
IG1haW50YWluZXItc3BlY2lmaWMgcG9ydGlvbnMgb2YgTWFrZWZpbGVzLi4uICRFQ0hPX0MiID4m
NgogICAgICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1tYWludGFpbmVyLW1vZGUgb3IgLS1kaXNh
YmxlLW1haW50YWluZXItbW9kZSB3YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9tYWludGFp
bmVyX21vZGUrc2V0fSIgPSBzZXQ7IHRoZW4KQEAgLTc5NDIsOSArOTI5MywxMCBAQAogZWxzZQog
ICBVU0VfTUFJTlRBSU5FUl9NT0RFPW5vCiBmaTsKLSAgZWNobyAiJGFzX21lOjc5Mzk6IHJlc3Vs
dDogJFVTRV9NQUlOVEFJTkVSX01PREUiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiAkVVNFX01BSU5UQUlORVJfTU9ERSIgPiY1CiBlY2hvICIke0VDSE9fVH0kVVNFX01BSU5U
QUlORVJfTU9ERSIgPiY2CiAKKwogaWYgdGVzdCAkVVNFX01BSU5UQUlORVJfTU9ERSA9IHllczsg
dGhlbgogICBNQUlOVEFJTkVSX01PREVfVFJVRT0KICAgTUFJTlRBSU5FUl9NT0RFX0ZBTFNFPScj
JwpAQCAtNzk1NCw2ICs5MzA2LDggQEAKIGZpCiAgIE1BSU5UPSRNQUlOVEFJTkVSX01PREVfVFJV
RQogCisKKwogTElCSUxfQ0ZMQUdTPSItV2FsbCAtTzMgIC1mdW5yb2xsLWxvb3BzIC1mZmFzdC1t
YXRoICAtZm9taXQtZnJhbWUtcG9pbnRlciBcCiAgICAgICAgICAgICAgIC1mZXhwZW5zaXZlLW9w
dGltaXphdGlvbnMiCiBMSUJJTFVfQ0ZMQUdTPSItV2FsbCAtTzMgIC1mdW5yb2xsLWxvb3BzIC1m
ZmFzdC1tYXRoICAtZm9taXQtZnJhbWUtcG9pbnRlciBcCkBAIC03OTYxLDEwICs5MzE1LDE4IEBA
CiBMSUJJTFVUX0NGTEFHUz0iLVdhbGwgLU8zICAtZnVucm9sbC1sb29wcyAtZmZhc3QtbWF0aCAg
LWZvbWl0LWZyYW1lLXBvaW50ZXIgXAogICAgICAgICAgICAgICAgLWZleHBlbnNpdmUtb3B0aW1p
emF0aW9ucyIKIAorCiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtYm1wIG9yIC0tZGlzYWJsZS1i
bXAgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfYm1wK3NldH0iID0gc2V0OyB0aGVuCiAg
IGVuYWJsZXZhbD0iJGVuYWJsZV9ibXAiCi0gIG5vX2JtcD0ieWVzIgorICBjYXNlICIkZW5hYmxl
X2JtcCIgaW4KKyAgbm8pCisgICAgbm9fYm1wPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19i
bXA9Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX2JtcD0ibm8iCiBmaTsKQEAgLTc5NzIs
NyArOTMzNCwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLWRjeCBvciAtLWRpc2FibGUt
ZGN4IHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX2RjeCtzZXR9IiA9IHNldDsgdGhlbgog
ICBlbmFibGV2YWw9IiRlbmFibGVfZGN4IgotICBub19kY3g9InllcyIKKyAgY2FzZSAiJGVuYWJs
ZV9kY3giIGluCisgIG5vKQorICAgIG5vX2RjeD0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9f
ZGN4PSJubyIKKyAgICA7OworZXNhYwogZWxzZQogICBub19kY3g9Im5vIgogZmk7CkBAIC03OTgw
LDcgKzkzNDksMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1kb29tIG9yIC0tZGlzYWJs
ZS1kb29tIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX2Rvb20rc2V0fSIgPSBzZXQ7IHRo
ZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX2Rvb20iCi0gIG5vX2Rvb209InllcyIKKyAgY2FzZSAi
JGVuYWJsZV9kb29tIiBpbgorICBubykKKyAgICBub19kb29tPSJ5ZXMiCisgICAgOzsKKyAgKikK
KyAgICBub19kb29tPSJubyIKKyAgICA7OworZXNhYwogZWxzZQogICBub19kb29tPSJubyIKIGZp
OwpAQCAtNzk4OCw3ICs5MzY0LDE0IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtZ2lmIG9y
IC0tZGlzYWJsZS1naWYgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfZ2lmK3NldH0iID0g
c2V0OyB0aGVuCiAgIGVuYWJsZXZhbD0iJGVuYWJsZV9naWYiCi0gIG5vX2dpZj0ieWVzIgorICBj
YXNlICIkZW5hYmxlX2dpZiIgaW4KKyAgbm8pCisgICAgbm9fZ2lmPSJ5ZXMiCisgICAgOzsKKyAg
KikKKyAgICBub19naWY9Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX2dpZj0ibm8iCiBm
aTsKQEAgLTc5OTYsNyArOTM3OSwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLWljb24g
b3IgLS1kaXNhYmxlLWljb24gd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfaWNvbitzZXR9
IiA9IHNldDsgdGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVfaWNvbiIKLSAgbm9faWNvbj0ieWVz
IgorICBjYXNlICIkZW5hYmxlX2ljb24iIGluCisgIG5vKQorICAgIG5vX2ljb249InllcyIKKyAg
ICA7OworICAqKQorICAgIG5vX2ljb249Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX2lj
b249Im5vIgogZmk7CkBAIC04MDA0LDcgKzkzOTQsMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVu
YWJsZS1qcGVnIG9yIC0tZGlzYWJsZS1qcGVnIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxl
X2pwZWcrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX2pwZWciCi0gIG5v
X2pwZWc9InllcyIKKyAgY2FzZSAiJGVuYWJsZV9qcGVnIiBpbgorICBubykKKyAgICBub19qcGVn
PSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19qcGVnPSJubyIKKyAgICA7OworZXNhYwogZWxz
ZQogICBub19qcGVnPSJubyIKIGZpOwpAQCAtODAxMiw3ICs5NDA5LDE0IEBACiAjIENoZWNrIHdo
ZXRoZXIgLS1lbmFibGUtbGlmIG9yIC0tZGlzYWJsZS1saWYgd2FzIGdpdmVuLgogaWYgdGVzdCAi
JHtlbmFibGVfbGlmK3NldH0iID0gc2V0OyB0aGVuCiAgIGVuYWJsZXZhbD0iJGVuYWJsZV9saWYi
Ci0gIG5vX2xpZj0ieWVzIgorICBjYXNlICIkZW5hYmxlX2xpZiIgaW4KKyAgbm8pCisgICAgbm9f
bGlmPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19saWY9Im5vIgorICAgIDs7Citlc2FjCiBl
bHNlCiAgIG5vX2xpZj0ibm8iCiBmaTsKQEAgLTgwMjAsNyArOTQyNCwxNCBAQAogIyBDaGVjayB3
aGV0aGVyIC0tZW5hYmxlLWxjbXMgb3IgLS1kaXNhYmxlLWxjbXMgd2FzIGdpdmVuLgogaWYgdGVz
dCAiJHtlbmFibGVfbGNtcytzZXR9IiA9IHNldDsgdGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVf
bGNtcyIKLSAgbm9fbGNtcz0ieWVzIgorICBjYXNlICIkZW5hYmxlX2xjbXMiIGluCisgIG5vKQor
ICAgIG5vX2xjbXM9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX2xjbXM9Im5vIgorICAgIDs7
Citlc2FjCiBlbHNlCiAgIG5vX2xjbXM9Im5vIgogZmk7CkBAIC04MDI4LDcgKzk0MzksMTQgQEAK
ICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1tZGwgb3IgLS1kaXNhYmxlLW1kbCB3YXMgZ2l2ZW4u
CiBpZiB0ZXN0ICIke2VuYWJsZV9tZGwrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5hYmxldmFsPSIk
ZW5hYmxlX21kbCIKLSAgbm9fbWRsPSJ5ZXMiCisgIGNhc2UgIiRlbmFibGVfbWRsIiBpbgorICBu
bykKKyAgICBub19tZGw9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX21kbD0ibm8iCisgICAg
OzsKK2VzYWMKIGVsc2UKICAgbm9fbWRsPSJubyIKIGZpOwpAQCAtODAzNiw3ICs5NDU0LDE0IEBA
CiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtbW5nIG9yIC0tZGlzYWJsZS1tbmcgd2FzIGdpdmVu
LgogaWYgdGVzdCAiJHtlbmFibGVfbW5nK3NldH0iID0gc2V0OyB0aGVuCiAgIGVuYWJsZXZhbD0i
JGVuYWJsZV9tbmciCi0gIG5vX21uZz0ieWVzIgorICBjYXNlICIkZW5hYmxlX21uZyIgaW4KKyAg
bm8pCisgICAgbm9fbW5nPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19tbmc9Im5vIgorICAg
IDs7Citlc2FjCiBlbHNlCiAgIG5vX21uZz0ibm8iCiBmaTsKQEAgLTgwNDQsNyArOTQ2OSwxNCBA
QAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXBjZCBvciAtLWRpc2FibGUtcGNkIHdhcyBnaXZl
bi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3BjZCtzZXR9IiA9IHNldDsgdGhlbgogICBlbmFibGV2YWw9
IiRlbmFibGVfcGNkIgotICBub19wY2Q9InllcyIKKyAgY2FzZSAiJGVuYWJsZV9wY2QiIGluCisg
IG5vKQorICAgIG5vX3BjZD0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fcGNkPSJubyIKKyAg
ICA7OworZXNhYwogZWxzZQogICBub19wY2Q9Im5vIgogZmk7CkBAIC04MDUyLDcgKzk0ODQsMTQg
QEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1wY3ggb3IgLS1kaXNhYmxlLXBjeCB3YXMgZ2l2
ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9wY3grc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5hYmxldmFs
PSIkZW5hYmxlX3BjeCIKLSAgbm9fcGN4PSJ5ZXMiCisgIGNhc2UgIiRlbmFibGVfcGN4IiBpbgor
ICBubykKKyAgICBub19wY3g9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX3BjeD0ibm8iCisg
ICAgOzsKK2VzYWMKIGVsc2UKICAgbm9fcGN4PSJubyIKIGZpOwpAQCAtODA2MCw3ICs5NDk5LDE0
IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtcGljIG9yIC0tZGlzYWJsZS1waWMgd2FzIGdp
dmVuLgogaWYgdGVzdCAiJHtlbmFibGVfcGljK3NldH0iID0gc2V0OyB0aGVuCiAgIGVuYWJsZXZh
bD0iJGVuYWJsZV9waWMiCi0gIG5vX3BpYz0ieWVzIgorICBjYXNlICIkZW5hYmxlX3BpYyIgaW4K
KyAgbm8pCisgICAgbm9fcGljPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19waWM9Im5vIgor
ICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX3BpYz0ibm8iCiBmaTsKQEAgLTgwNjgsNyArOTUxNCwx
NCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXBpeCBvciAtLWRpc2FibGUtcGl4IHdhcyBn
aXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3BpeCtzZXR9IiA9IHNldDsgdGhlbgogICBlbmFibGV2
YWw9IiRlbmFibGVfcGl4IgotICBub19waXg9InllcyIKKyAgY2FzZSAiJGVuYWJsZV9waXgiIGlu
CisgIG5vKQorICAgIG5vX3BpeD0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fcGl4PSJubyIK
KyAgICA7OworZXNhYwogZWxzZQogICBub19waXg9Im5vIgogZmk7CkBAIC04MDc2LDcgKzk1Mjks
MTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1wbmcgb3IgLS1kaXNhYmxlLXBuZyB3YXMg
Z2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9wbmcrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5hYmxl
dmFsPSIkZW5hYmxlX3BuZyIKLSAgbm9fcG5nPSJ5ZXMiCisgIGNhc2UgIiRlbmFibGVfcG5nIiBp
bgorICBubykKKyAgICBub19wbmc9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX3BuZz0ibm8i
CisgICAgOzsKK2VzYWMKIGVsc2UKICAgbm9fcG5nPSJubyIKIGZpOwpAQCAtODA4NCw3ICs5NTQ0
LDE0IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtcG5tIG9yIC0tZGlzYWJsZS1wbm0gd2Fz
IGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfcG5tK3NldH0iID0gc2V0OyB0aGVuCiAgIGVuYWJs
ZXZhbD0iJGVuYWJsZV9wbm0iCi0gIG5vX3BubT0ieWVzIgorICBjYXNlICIkZW5hYmxlX3BubSIg
aW4KKyAgbm8pCisgICAgbm9fcG5tPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19wbm09Im5v
IgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX3BubT0ibm8iCiBmaTsKQEAgLTgwOTIsNyArOTU1
OSwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXBzZCBvciAtLWRpc2FibGUtcHNkIHdh
cyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3BzZCtzZXR9IiA9IHNldDsgdGhlbgogICBlbmFi
bGV2YWw9IiRlbmFibGVfcHNkIgotICBub19wc2Q9InllcyIKKyAgY2FzZSAiJGVuYWJsZV9wc2Qi
IGluCisgIG5vKQorICAgIG5vX3BzZD0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fcHNkPSJu
byIKKyAgICA7OworZXNhYwogZWxzZQogICBub19wc2Q9Im5vIgogZmk7CkBAIC04MTAwLDcgKzk1
NzQsMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1wc3Agb3IgLS1kaXNhYmxlLXBzcCB3
YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9wc3Arc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5h
YmxldmFsPSIkZW5hYmxlX3BzcCIKLSAgbm9fcHNwPSJ5ZXMiCisgIGNhc2UgIiRlbmFibGVfcHNw
IiBpbgorICBubykKKyAgICBub19wc3A9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX3BzcD0i
bm8iCisgICAgOzsKK2VzYWMKIGVsc2UKICAgbm9fcHNwPSJubyIKIGZpOwpAQCAtODEwOCw3ICs5
NTg5LDE0IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtcHhyIG9yIC0tZGlzYWJsZS1weHIg
d2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfcHhyK3NldH0iID0gc2V0OyB0aGVuCiAgIGVu
YWJsZXZhbD0iJGVuYWJsZV9weHIiCi0gIG5vX3B4cj0ieWVzIgorICBjYXNlICIkZW5hYmxlX3B4
ciIgaW4KKyAgbm8pCisgICAgbm9fcHhyPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19weHI9
Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX3B4cj0ibm8iCiBmaTsKQEAgLTgxMTYsNyAr
OTYwNCwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLWxjbXMgb3IgLS1kaXNhYmxlLWxj
bXMgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfbGNtcytzZXR9IiA9IHNldDsgdGhlbgog
ICBlbmFibGV2YWw9IiRlbmFibGVfbGNtcyIKLSAgbm9fbGNtcz0ieWVzIgorICBjYXNlICIkZW5h
YmxlX2xjbXMiIGluCisgIG5vKQorICAgIG5vX2xjbXM9InllcyIKKyAgICA7OworICAqKQorICAg
IG5vX2xjbXM9Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX2xjbXM9Im5vIgogZmk7CkBA
IC04MTI0LDcgKzk2MTksMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1yYXcgb3IgLS1k
aXNhYmxlLXJhdyB3YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9yYXcrc2V0fSIgPSBzZXQ7
IHRoZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX3JhdyIKLSAgbm9fcmF3PSJ5ZXMiCisgIGNhc2Ug
IiRlbmFibGVfcmF3IiBpbgorICBubykKKyAgICBub19yYXc9InllcyIKKyAgICA7OworICAqKQor
ICAgIG5vX3Jhdz0ibm8iCisgICAgOzsKK2VzYWMKIGVsc2UKICAgbm9fcmF3PSJubyIKIGZpOwpA
QCAtODEzMiw3ICs5NjM0LDE0IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtc2dpIG9yIC0t
ZGlzYWJsZS1zZ2kgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfc2dpK3NldH0iID0gc2V0
OyB0aGVuCiAgIGVuYWJsZXZhbD0iJGVuYWJsZV9zZ2kiCi0gIG5vX3NnaT0ieWVzIgorICBjYXNl
ICIkZW5hYmxlX3NnaSIgaW4KKyAgbm8pCisgICAgbm9fc2dpPSJ5ZXMiCisgICAgOzsKKyAgKikK
KyAgICBub19zZ2k9Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX3NnaT0ibm8iCiBmaTsK
QEAgLTgxNDAsNyArOTY0OSwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXRnYSBvciAt
LWRpc2FibGUtdGdhIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3RnYStzZXR9IiA9IHNl
dDsgdGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVfdGdhIgotICBub190Z2E9InllcyIKKyAgY2Fz
ZSAiJGVuYWJsZV90Z2EiIGluCisgIG5vKQorICAgIG5vX3RnYT0ieWVzIgorICAgIDs7CisgICop
CisgICAgbm9fdGdhPSJubyIKKyAgICA7OworZXNhYwogZWxzZQogICBub190Z2E9Im5vIgogZmk7
CkBAIC04MTQ4LDcgKzk2NjQsMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS10aWZmIG9y
IC0tZGlzYWJsZS10aWZmIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3RpZmYrc2V0fSIg
PSBzZXQ7IHRoZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX3RpZmYiCi0gIG5vX3RpZmY9InllcyIK
KyAgY2FzZSAiJGVuYWJsZV90aWZmIiBpbgorICBubykKKyAgICBub190aWZmPSJ5ZXMiCisgICAg
OzsKKyAgKikKKyAgICBub190aWZmPSJubyIKKyAgICA7OworZXNhYwogZWxzZQogICBub190aWZm
PSJubyIKIGZpOwpAQCAtODE1Niw3ICs5Njc5LDE0IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFi
bGUtd2FsIG9yIC0tZGlzYWJsZS13YWwgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfd2Fs
K3NldH0iID0gc2V0OyB0aGVuCiAgIGVuYWJsZXZhbD0iJGVuYWJsZV93YWwiCi0gIG5vX3dhbD0i
eWVzIgorICBjYXNlICIkZW5hYmxlX3dhbCIgaW4KKyAgbm8pCisgICAgbm9fd2FsPSJ5ZXMiCisg
ICAgOzsKKyAgKikKKyAgICBub193YWw9Im5vIgorICAgIDs7Citlc2FjCiBlbHNlCiAgIG5vX3dh
bD0ibm8iCiBmaTsKQEAgLTgxNjQsNyArOTY5NCwxNCBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5h
YmxlLXhwbSBvciAtLWRpc2FibGUteHBtIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3hw
bStzZXR9IiA9IHNldDsgdGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVfeHBtIgotICBub194cG09
InllcyIKKyAgY2FzZSAiJGVuYWJsZV94cG0iIGluCisgIG5vKQorICAgIG5vX3hwbT0ieWVzIgor
ICAgIDs7CisgICopCisgICAgbm9feHBtPSJubyIKKyAgICA7OworZXNhYwogZWxzZQogICBub194
cG09Im5vIgogZmk7CkBAIC04MTcyLDcgKzk3MDksNyBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5h
YmxlLWFsbGVncm8gb3IgLS1kaXNhYmxlLWFsbGVncm8gd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtl
bmFibGVfYWxsZWdybytzZXR9IiA9IHNldDsgdGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVfYWxs
ZWdybyIKLSAgdXNlX2FsbGVncm89Im5vIgorICB1c2VfYWxsZWdybz0kZW5hYmxlX2FsbGVncm8K
IGVsc2UKICAgdXNlX2FsbGVncm89InllcyIKIGZpOwpAQCAtODE4MCw3ICs5NzE3LDcgQEAKICMg
Q2hlY2sgd2hldGhlciAtLWVuYWJsZS1kaXJlY3R4IG9yIC0tZGlzYWJsZS1kaXJlY3R4IHdhcyBn
aXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX2RpcmVjdHgrc2V0fSIgPSBzZXQ7IHRoZW4KICAgZW5h
YmxldmFsPSIkZW5hYmxlX2RpcmVjdHgiCi0gIHVzZV9kaXJlY3R4PSJubyIKKyAgdXNlX2RpcmVj
dHg9JGVuYWJsZV9kaXJlY3R4CiBlbHNlCiAgIHVzZV9kaXJlY3R4PSJ5ZXMiCiBmaTsKQEAgLTgx
ODgsNyArOTcyNSw3IEBACiAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtb3BlbmdsIG9yIC0tZGlz
YWJsZS1vcGVuZ2wgd2FzIGdpdmVuLgogaWYgdGVzdCAiJHtlbmFibGVfb3BlbmdsK3NldH0iID0g
c2V0OyB0aGVuCiAgIGVuYWJsZXZhbD0iJGVuYWJsZV9vcGVuZ2wiCi0gIHVzZV9vcGVuZ2w9Im5v
IgorICB1c2Vfb3BlbmdsPSRlbmFibGVfb3BlbmdsCiBlbHNlCiAgIHVzZV9vcGVuZ2w9InllcyIK
IGZpOwpAQCAtODE5Niw3ICs5NzMzLDcgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1zZGwg
b3IgLS1kaXNhYmxlLXNkbCB3YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV9zZGwrc2V0fSIg
PSBzZXQ7IHRoZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX3NkbCIKLSAgdXNlX3NkbD0ibm8iCisg
IHVzZV9zZGw9JGVuYWJsZV9zZGwKIGVsc2UKICAgdXNlX3NkbD0ieWVzIgogZmk7CkBAIC04MjA0
LDcgKzk3NDEsNyBAQAogIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLXdpbjMyIG9yIC0tZGlzYWJs
ZS13aW4zMiB3YXMgZ2l2ZW4uCiBpZiB0ZXN0ICIke2VuYWJsZV93aW4zMitzZXR9IiA9IHNldDsg
dGhlbgogICBlbmFibGV2YWw9IiRlbmFibGVfd2luMzIiCi0gIHVzZV93aW4zMj0ibm8iCisgIHVz
ZV93aW4zMj0kZW5hYmxlX3dpbjMyCiBlbHNlCiAgIHVzZV93aW4zMj0ieWVzIgogZmk7CkBAIC04
MjEyLDcgKzk3NDksMTQgQEAKICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1yZWxlYXNlIG9yIC0t
ZGlzYWJsZS1yZWxlYXNlIHdhcyBnaXZlbi4KIGlmIHRlc3QgIiR7ZW5hYmxlX3JlbGVhc2Urc2V0
fSIgPSBzZXQ7IHRoZW4KICAgZW5hYmxldmFsPSIkZW5hYmxlX3JlbGVhc2UiCi0gIGRlYnVnX3N5
bWJvbHM9InllcyIKKyAgY2FzZSAiJGVuYWJsZV9yZWxlYXNlIiBpbgorICB5ZXMpCisgICAgZGVi
dWdfc3ltYm9scz0ibm8iCisgICAgOzsKKyAgbm8pCisgICAgZGVidWdfc3ltYm9scz0ieWVzIgor
ICAgIDs7Citlc2FjCiBlbHNlCiAgIGRlYnVnX3N5bWJvbHM9Im5vIgogZmk7CkBAIC04MjQxLDI4
ICs5Nzg1LDg1IEBACiAgICAgICAgICAgICAgIDs7CiBlc2FjCiAKKwogQ1BQRkxBR1M9JFhfQ0ZM
QUdTCiAKLWVjaG8gIiRhc19tZTo4MTkyOiBjaGVja2luZyBmb3IganBlZ2xpYi5oIiA+JjUKK2lm
IHRlc3QgIiR7YWNfY3ZfaGVhZGVyX2pwZWdsaWJfaCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIGpwZWdsaWIuaCIgPiY1CiBlY2hvICRFQ0hP
X04gImNoZWNraW5nIGZvciBqcGVnbGliLmguLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2Fj
X2N2X2hlYWRlcl9qcGVnbGliX2grc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIo
Y2FjaGVkKSAkRUNIT19DIiA+JjYKK2ZpCitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAk
YWNfY3ZfaGVhZGVyX2pwZWdsaWJfaCIgPiY1CitlY2hvICIke0VDSE9fVH0kYWNfY3ZfaGVhZGVy
X2pwZWdsaWJfaCIgPiY2CiBlbHNlCi0gIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgot
I2xpbmUgODE5OCAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisgICMgSXMgdGhl
IGhlYWRlciBjb21waWxhYmxlPworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGpwZWds
aWIuaCB1c2FiaWxpdHkiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBqcGVnbGliLmggdXNh
YmlsaXR5Li4uICRFQ0hPX0MiID4mNgorY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisv
KiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNf
ZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4g
ICovCiskYWNfaW5jbHVkZXNfZGVmYXVsdAogI2luY2x1ZGUgPGpwZWdsaWIuaD4KIF9BQ0VPRgot
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODIwMjogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRc
IiIpID4mNQorcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAy
PmNvbmZ0ZXN0LmVyMQorICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3Qu
ZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5l
cnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAg
KGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJv
cl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAi
JGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUK
KyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVz
IiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMg
Y29uZnRlc3QuJGFjX29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNf
c3RhdHVzKTsgfTsgfTsgdGhlbgorICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCitlbHNlCisgIGVj
aG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0
ZXN0LiRhY19leHQgPiY1CisKK2FjX2hlYWRlcl9jb21waWxlcj1ubworZmkKK3JtIC1mIGNvbmZ0
ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2VjaG8gIiRhc19t
ZTokTElORU5POiByZXN1bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIiID4mNQorZWNobyAiJHtFQ0hP
X1R9JGFjX2hlYWRlcl9jb21waWxlciIgPiY2CisKKyMgSXMgdGhlIGhlYWRlciBwcmVzZW50Pwor
ZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGpwZWdsaWIuaCBwcmVzZW5jZSIgPiY1Citl
Y2hvICRFQ0hPX04gImNoZWNraW5nIGpwZWdsaWIuaCBwcmVzZW5jZS4uLiAkRUNIT19DIiA+JjYK
K2NhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNF
T0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFj
X2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGpwZWdsaWIu
aD4KK19BQ0VPRgoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNv
bmZ0ZXN0LiRhY19leHRcIiIpID4mNQogICAoZXZhbCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQp
IDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0
ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29u
ZnRlc3QuZXJyCiAgIHJtIC1mIGNvbmZ0ZXN0LmVyMQogICBjYXQgY29uZnRlc3QuZXJyID4mNQot
ICBlY2hvICIkYXNfbWU6ODIwODogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0g
Pi9kZXYvbnVsbDsgdGhlbgogICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFj
X2NwcF9lcnI9JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBf
ZXJyJGFjX2Nfd2Vycm9yX2ZsYWcKICAgZWxzZQogICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC04
MjcwLDQyICs5ODcxLDE0MyBAQAogICBhY19jcHBfZXJyPXllcwogZmkKIGlmIHRlc3QgLXogIiRh
Y19jcHBfZXJyIjsgdGhlbgotICBhY19jdl9oZWFkZXJfanBlZ2xpYl9oPXllcworICBhY19oZWFk
ZXJfcHJlcHJvYz15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
IiA+JjUKLSAgY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1Ci0gIGFjX2N2X2hlYWRlcl9qcGVnbGli
X2g9bm8KK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworICBhY19oZWFkZXJf
cHJlcHJvYz1ubwogZmkKIHJtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfZXh0CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfaGVhZGVyX3ByZXByb2MiID4mNQorZWNobyAi
JHtFQ0hPX1R9JGFjX2hlYWRlcl9wcmVwcm9jIiA+JjYKKworIyBTbz8gIFdoYXQgYWJvdXQgdGhp
cyBoZWFkZXI/CitjYXNlICRhY19oZWFkZXJfY29tcGlsZXI6JGFjX2hlYWRlcl9wcmVwcm9jOiRh
Y19jX3ByZXByb2Nfd2Fybl9mbGFnIGluCisgIHllczpubzogKQorICAgIHsgZWNobyAiJGFzX21l
OiRMSU5FTk86IFdBUk5JTkc6IGpwZWdsaWIuaDogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCBy
ZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6
IGpwZWdsaWIuaDogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJl
cHJvY2Vzc29yISIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBq
cGVnbGliLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGlsZXIncyByZXN1bHQiID4mNQorZWNo
byAiJGFzX21lOiBXQVJOSU5HOiBqcGVnbGliLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGls
ZXIncyByZXN1bHQiID4mMjt9CisgICAgYWNfaGVhZGVyX3ByZXByb2M9eWVzCisgICAgOzsKKyAg
bm86eWVzOiogKQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGpwZWdsaWIu
aDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBpbGVkIiA+JjUKK2VjaG8gIiRhc19tZTogV0FS
TklORzoganBlZ2xpYi5oOiBwcmVzZW50IGJ1dCBjYW5ub3QgYmUgY29tcGlsZWQiID4mMjt9Cisg
ICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzoganBlZ2xpYi5oOiAgICAgY2hlY2sg
Zm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjUKK2VjaG8gIiRhc19tZTogV0FS
TklORzoganBlZ2xpYi5oOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRl
cnM/IiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGpwZWdsaWIu
aDogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9uIiA+JjUKK2VjaG8gIiRhc19tZTogV0FS
TklORzoganBlZ2xpYi5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24iID4mMjt9Cisg
ICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzoganBlZ2xpYi5oOiAgICAgc2VjdGlv
biBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjUKK2VjaG8gIiRhc19tZTog
V0FSTklORzoganBlZ2xpYi5oOiAgICAgc2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBD
b21waWxlZFwiIiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGpw
ZWdsaWIuaDogcHJvY2VlZGluZyB3aXRoIHRoZSBwcmVwcm9jZXNzb3IncyByZXN1bHQiID4mNQor
ZWNobyAiJGFzX21lOiBXQVJOSU5HOiBqcGVnbGliLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJl
cHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdB
Uk5JTkc6IGpwZWdsaWIuaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBw
cmVjZWRlbmNlIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzoganBlZ2xpYi5oOiBpbiB0aGUg
ZnV0dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4mMjt9CisgICAgKAor
ICAgICAgY2F0IDw8XF9BU0JPWAorIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tICMjCisjIyBSZXBvcnQgdGhpcyB0byB0aGUgQUNfUEFDS0FHRV9OQU1FIGxpc3Rz
LiAgIyMKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIwor
X0FTQk9YCisgICAgKSB8CisgICAgICBzZWQgInMvXi8kYXNfbWU6IFdBUk5JTkc6ICAgICAvIiA+
JjIKKyAgICA7OworZXNhYworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBqcGVn
bGliLmgiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IganBlZ2xpYi5oLi4uICRFQ0hP
X0MiID4mNgoraWYgdGVzdCAiJHthY19jdl9oZWFkZXJfanBlZ2xpYl9oK3NldH0iID0gc2V0OyB0
aGVuCisgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CitlbHNlCisgIGFjX2N2
X2hlYWRlcl9qcGVnbGliX2g9JGFjX2hlYWRlcl9wcmVwcm9jCiBmaQotZWNobyAiJGFzX21lOjgy
Mjc6IHJlc3VsdDogJGFjX2N2X2hlYWRlcl9qcGVnbGliX2giID4mNQorZWNobyAiJGFzX21lOiRM
SU5FTk86IHJlc3VsdDogJGFjX2N2X2hlYWRlcl9qcGVnbGliX2giID4mNQogZWNobyAiJHtFQ0hP
X1R9JGFjX2N2X2hlYWRlcl9qcGVnbGliX2giID4mNgorCitmaQogaWYgdGVzdCAkYWNfY3ZfaGVh
ZGVyX2pwZWdsaWJfaCA9IHllczsgdGhlbgogICA6CiBlbHNlCiAgIG5vX2pwZWc9InllcyIKIGZp
CiAKLWVjaG8gIiRhc19tZTo4MjM1OiBjaGVja2luZyBmb3IgdGlmZmlvLmgiID4mNQorCitpZiB0
ZXN0ICIke2FjX2N2X2hlYWRlcl90aWZmaW9faCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hvICIk
YXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHRpZmZpby5oIiA+JjUKIGVjaG8gJEVDSE9fTiAi
Y2hlY2tpbmcgZm9yIHRpZmZpby5oLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9o
ZWFkZXJfdGlmZmlvX2grc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVk
KSAkRUNIT19DIiA+JjYKK2ZpCitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3Zf
aGVhZGVyX3RpZmZpb19oIiA+JjUKK2VjaG8gIiR7RUNIT19UfSRhY19jdl9oZWFkZXJfdGlmZmlv
X2giID4mNgogZWxzZQotICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDgy
NDEgImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorICAjIElzIHRoZSBoZWFkZXIg
Y29tcGlsYWJsZT8KK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyB0aWZmaW8uaCB1c2Fi
aWxpdHkiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyB0aWZmaW8uaCB1c2FiaWxpdHkuLi4g
JEVDSE9fQyIgPiY2CitjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZz
LmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+
PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyRhY19p
bmNsdWRlc19kZWZhdWx0CiAjaW5jbHVkZSA8dGlmZmlvLmg+CiBfQUNFT0YKLWlmIHsgKGV2YWwg
ZWNobyAiJGFzX21lOjgyNDU6IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKK3Jt
IC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwiJGFjX2NvbXBpbGVcIiIpID4mNQorICAoZXZhbCAkYWNfY29tcGlsZSkgMj5jb25mdGVzdC5l
cjEKKyAgYWNfc3RhdHVzPSQ/CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRl
c3QuZXJyCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19z
dGF0dXMpOyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElO
RU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1
cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChl
eGl0ICRhY19zdGF0dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRh
Y19vYmpleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikg
PiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07
IH07IHRoZW4KKyAgYWNfaGVhZGVyX2NvbXBpbGVyPXllcworZWxzZQorICBlY2hvICIkYXNfbWU6
IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0
ID4mNQorCithY19oZWFkZXJfY29tcGlsZXI9bm8KK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29u
ZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVOTzog
cmVzdWx0OiAkYWNfaGVhZGVyX2NvbXBpbGVyIiA+JjUKK2VjaG8gIiR7RUNIT19UfSRhY19oZWFk
ZXJfY29tcGlsZXIiID4mNgorCisjIElzIHRoZSBoZWFkZXIgcHJlc2VudD8KK2VjaG8gIiRhc19t
ZTokTElORU5POiBjaGVja2luZyB0aWZmaW8uaCBwcmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04g
ImNoZWNraW5nIHRpZmZpby5oIHByZXNlbmNlLi4uICRFQ0hPX0MiID4mNgorY2F0ID5jb25mdGVz
dC4kYWNfZXh0IDw8X0FDRU9GCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZk
ZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9G
CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8dGlmZmlvLmg+CitfQUNFT0YKK2lm
IHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0
XCIiKSA+JjUKICAgKGV2YWwgJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0KSAyPmNvbmZ0ZXN0LmVy
MQogICBhY19zdGF0dXM9JD8KLSAgZWdyZXAgLXYgJ14gKlwrJyBjb25mdGVzdC5lcjEgPmNvbmZ0
ZXN0LmVycgorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgogICBy
bSAtZiBjb25mdGVzdC5lcjEKICAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKLSAgZWNobyAiJGFzX21l
OjgyNTE6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMpOyB9ID4vZGV2L251bGw7IHRo
ZW4KICAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KICAgICBhY19jcHBfZXJyPSRhY19j
X3ByZXByb2Nfd2Fybl9mbGFnCisgICAgYWNfY3BwX2Vycj0kYWNfY3BwX2VyciRhY19jX3dlcnJv
cl9mbGFnCiAgIGVsc2UKICAgICBhY19jcHBfZXJyPQogICBmaQpAQCAtODMxMyw0MiArMTAwMTUs
MTQzIEBACiAgIGFjX2NwcF9lcnI9eWVzCiBmaQogaWYgdGVzdCAteiAiJGFjX2NwcF9lcnIiOyB0
aGVuCi0gIGFjX2N2X2hlYWRlcl90aWZmaW9faD15ZXMKKyAgYWNfaGVhZGVyX3ByZXByb2M9eWVz
CiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci0gIGNhdCBj
b25mdGVzdC4kYWNfZXh0ID4mNQotICBhY19jdl9oZWFkZXJfdGlmZmlvX2g9bm8KK3NlZCAncy9e
L3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworICBhY19oZWFkZXJfcHJlcHJvYz1ubwogZmkK
IHJtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkYWNfaGVhZGVyX3ByZXByb2MiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hl
YWRlcl9wcmVwcm9jIiA+JjYKKworIyBTbz8gIFdoYXQgYWJvdXQgdGhpcyBoZWFkZXI/CitjYXNl
ICRhY19oZWFkZXJfY29tcGlsZXI6JGFjX2hlYWRlcl9wcmVwcm9jOiRhY19jX3ByZXByb2Nfd2Fy
bl9mbGFnIGluCisgIHllczpubzogKQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5J
Tkc6IHRpZmZpby5oOiBhY2NlcHRlZCBieSB0aGUgY29tcGlsZXIsIHJlamVjdGVkIGJ5IHRoZSBw
cmVwcm9jZXNzb3IhIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogdGlmZmlvLmg6IGFjY2Vw
dGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXByb2Nlc3NvciEiID4mMjt9
CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogdGlmZmlvLmg6IHByb2NlZWRp
bmcgd2l0aCB0aGUgY29tcGlsZXIncyByZXN1bHQiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5H
OiB0aWZmaW8uaDogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxlcidzIHJlc3VsdCIgPiYyO30K
KyAgICBhY19oZWFkZXJfcHJlcHJvYz15ZXMKKyAgICA7OworICBubzp5ZXM6KiApCisgICAgeyBl
Y2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogdGlmZmlvLmg6IHByZXNlbnQgYnV0IGNhbm5v
dCBiZSBjb21waWxlZCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHRpZmZpby5oOiBwcmVz
ZW50IGJ1dCBjYW5ub3QgYmUgY29tcGlsZWQiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJ
TkVOTzogV0FSTklORzogdGlmZmlvLmg6ICAgICBjaGVjayBmb3IgbWlzc2luZyBwcmVyZXF1aXNp
dGUgaGVhZGVycz8iID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiB0aWZmaW8uaDogICAgIGNo
ZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFkZXJzPyIgPiYyO30KKyAgICB7IGVjaG8g
IiRhc19tZTokTElORU5POiBXQVJOSU5HOiB0aWZmaW8uaDogc2VlIHRoZSBBdXRvY29uZiBkb2N1
bWVudGF0aW9uIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogdGlmZmlvLmg6IHNlZSB0aGUg
QXV0b2NvbmYgZG9jdW1lbnRhdGlvbiIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBXQVJOSU5HOiB0aWZmaW8uaDogICAgIHNlY3Rpb24gXCJQcmVzZW50IEJ1dCBDYW5ub3QgQmUg
Q29tcGlsZWRcIiIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHRpZmZpby5oOiAgICAgc2Vj
dGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjI7fQorICAgIHsgZWNo
byAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IHRpZmZpby5oOiBwcm9jZWVkaW5nIHdpdGggdGhl
IHByZXByb2Nlc3NvcidzIHJlc3VsdCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHRpZmZp
by5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIHByZXByb2Nlc3NvcidzIHJlc3VsdCIgPiYyO30KKyAg
ICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiB0aWZmaW8uaDogaW4gdGhlIGZ1dHVy
ZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjUKK2VjaG8gIiRhc19tZTog
V0FSTklORzogdGlmZmlvLmg6IGluIHRoZSBmdXR1cmUsIHRoZSBjb21waWxlciB3aWxsIHRha2Ug
cHJlY2VkZW5jZSIgPiYyO30KKyAgICAoCisgICAgICBjYXQgPDxcX0FTQk9YCisjIyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKyMjIFJlcG9ydCB0aGlzIHRv
IHRoZSBBQ19QQUNLQUdFX05BTUUgbGlzdHMuICAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCitfQVNCT1gKKyAgICApIHwKKyAgICAgIHNlZCAicy9e
LyRhc19tZTogV0FSTklORzogICAgIC8iID4mMgorICAgIDs7Citlc2FjCitlY2hvICIkYXNfbWU6
JExJTkVOTzogY2hlY2tpbmcgZm9yIHRpZmZpby5oIiA+JjUKK2VjaG8gJEVDSE9fTiAiY2hlY2tp
bmcgZm9yIHRpZmZpby5oLi4uICRFQ0hPX0MiID4mNgoraWYgdGVzdCAiJHthY19jdl9oZWFkZXJf
dGlmZmlvX2grc2V0fSIgPSBzZXQ7IHRoZW4KKyAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNI
T19DIiA+JjYKK2Vsc2UKKyAgYWNfY3ZfaGVhZGVyX3RpZmZpb19oPSRhY19oZWFkZXJfcHJlcHJv
YwogZmkKLWVjaG8gIiRhc19tZTo4MjcwOiByZXN1bHQ6ICRhY19jdl9oZWFkZXJfdGlmZmlvX2gi
ID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2hlYWRlcl90aWZmaW9f
aCIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfaGVhZGVyX3RpZmZpb19oIiA+JjYKKworZmkK
IGlmIHRlc3QgJGFjX2N2X2hlYWRlcl90aWZmaW9faCA9IHllczsgdGhlbgogICA6CiBlbHNlCiAg
IG5vX3RpZmY9InllcyIKIGZpCiAKLWVjaG8gIiRhc19tZTo4Mjc4OiBjaGVja2luZyBmb3IgcG5n
LmgiID4mNQorCitpZiB0ZXN0ICIke2FjX2N2X2hlYWRlcl9wbmdfaCtzZXR9IiA9IHNldDsgdGhl
bgorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIHBuZy5oIiA+JjUKIGVjaG8g
JEVDSE9fTiAiY2hlY2tpbmcgZm9yIHBuZy5oLi4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHth
Y19jdl9oZWFkZXJfcG5nX2grc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2Fj
aGVkKSAkRUNIT19DIiA+JjYKK2ZpCitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNf
Y3ZfaGVhZGVyX3BuZ19oIiA+JjUKK2VjaG8gIiR7RUNIT19UfSRhY19jdl9oZWFkZXJfcG5nX2gi
ID4mNgogZWxzZQotICBjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDgyODQg
ImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgorICAjIElzIHRoZSBoZWFkZXIgY29t
cGlsYWJsZT8KK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBwbmcuaCB1c2FiaWxpdHki
ID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBwbmcuaCB1c2FiaWxpdHkuLi4gJEVDSE9fQyIg
PiY2CitjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZzLmguICAqLwor
X0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyRhY19pbmNsdWRlc19k
ZWZhdWx0CiAjaW5jbHVkZSA8cG5nLmg+CiBfQUNFT0YKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21l
OjgyODg6IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKK3JtIC1mIGNvbmZ0ZXN0
LiRhY19vYmpleHQKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2NvbXBp
bGVcIiIpID4mNQorICAoZXZhbCAkYWNfY29tcGlsZSkgMj5jb25mdGVzdC5lcjEKKyAgYWNfc3Rh
dHVzPSQ/CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIHJt
IC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIkYXNfbWU6
JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9ICYm
CisJIHsgYWNfdHJ5PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190
cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hv
ICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0
dXMpOyB9OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQnCisg
IHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFs
ICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBc
JD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KKyAg
YWNfaGVhZGVyX2NvbXBpbGVyPXllcworZWxzZQorICBlY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9n
cmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCithY19o
ZWFkZXJfY29tcGlsZXI9bm8KK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29i
amV4dCBjb25mdGVzdC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNf
aGVhZGVyX2NvbXBpbGVyIiA+JjUKK2VjaG8gIiR7RUNIT19UfSRhY19oZWFkZXJfY29tcGlsZXIi
ID4mNgorCisjIElzIHRoZSBoZWFkZXIgcHJlc2VudD8KK2VjaG8gIiRhc19tZTokTElORU5POiBj
aGVja2luZyBwbmcuaCBwcmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIHBuZy5o
IHByZXNlbmNlLi4uICRFQ0hPX0MiID4mNgorY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9G
CisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4k
YWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMu
aC4gICovCisjaW5jbHVkZSA8cG5nLmg+CitfQUNFT0YKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0XCIiKSA+JjUKICAgKGV2YWwgJGFj
X2NwcCBjb25mdGVzdC4kYWNfZXh0KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAg
ZWdyZXAgLXYgJ14gKlwrJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBncmVwIC12ICde
ICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgogICBybSAtZiBjb25mdGVzdC5lcjEKICAg
Y2F0IGNvbmZ0ZXN0LmVyciA+JjUKLSAgZWNobyAiJGFzX21lOjgyOTQ6IFwkPyA9ICRhY19zdGF0
dXMiID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAg
IChleGl0ICRhY19zdGF0dXMpOyB9ID4vZGV2L251bGw7IHRoZW4KICAgaWYgdGVzdCAtcyBjb25m
dGVzdC5lcnI7IHRoZW4KICAgICBhY19jcHBfZXJyPSRhY19jX3ByZXByb2Nfd2Fybl9mbGFnCisg
ICAgYWNfY3BwX2Vycj0kYWNfY3BwX2VyciRhY19jX3dlcnJvcl9mbGFnCiAgIGVsc2UKICAgICBh
Y19jcHBfZXJyPQogICBmaQpAQCAtODM1Niw0MiArMTAxNTksMTQzIEBACiAgIGFjX2NwcF9lcnI9
eWVzCiBmaQogaWYgdGVzdCAteiAiJGFjX2NwcF9lcnIiOyB0aGVuCi0gIGFjX2N2X2hlYWRlcl9w
bmdfaD15ZXMKKyAgYWNfaGVhZGVyX3ByZXByb2M9eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTog
ZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci0gIGNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQotICBh
Y19jdl9oZWFkZXJfcG5nX2g9bm8KK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUK
KworICBhY19oZWFkZXJfcHJlcHJvYz1ubwogZmkKIHJtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVz
dC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfaGVhZGVyX3ByZXBy
b2MiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9wcmVwcm9jIiA+JjYKKworIyBTbz8g
IFdoYXQgYWJvdXQgdGhpcyBoZWFkZXI/CitjYXNlICRhY19oZWFkZXJfY29tcGlsZXI6JGFjX2hl
YWRlcl9wcmVwcm9jOiRhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluCisgIHllczpubzogKQorICAg
IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IHBuZy5oOiBhY2NlcHRlZCBieSB0aGUg
Y29tcGlsZXIsIHJlamVjdGVkIGJ5IHRoZSBwcmVwcm9jZXNzb3IhIiA+JjUKK2VjaG8gIiRhc19t
ZTogV0FSTklORzogcG5nLmg6IGFjY2VwdGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkg
dGhlIHByZXByb2Nlc3NvciEiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FS
TklORzogcG5nLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGlsZXIncyByZXN1bHQiID4mNQor
ZWNobyAiJGFzX21lOiBXQVJOSU5HOiBwbmcuaDogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxl
cidzIHJlc3VsdCIgPiYyO30KKyAgICBhY19oZWFkZXJfcHJlcHJvYz15ZXMKKyAgICA7OworICBu
bzp5ZXM6KiApCisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogcG5nLmg6IHBy
ZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6
IHBuZy5oOiBwcmVzZW50IGJ1dCBjYW5ub3QgYmUgY29tcGlsZWQiID4mMjt9CisgICAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogcG5nLmg6ICAgICBjaGVjayBmb3IgbWlzc2luZyBw
cmVyZXF1aXNpdGUgaGVhZGVycz8iID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBwbmcuaDog
ICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFkZXJzPyIgPiYyO30KKyAgICB7
IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBwbmcuaDogc2VlIHRoZSBBdXRvY29uZiBk
b2N1bWVudGF0aW9uIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogcG5nLmg6IHNlZSB0aGUg
QXV0b2NvbmYgZG9jdW1lbnRhdGlvbiIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBXQVJOSU5HOiBwbmcuaDogICAgIHNlY3Rpb24gXCJQcmVzZW50IEJ1dCBDYW5ub3QgQmUgQ29t
cGlsZWRcIiIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHBuZy5oOiAgICAgc2VjdGlvbiBc
IlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjI7fQorICAgIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IFdBUk5JTkc6IHBuZy5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIHByZXByb2Nl
c3NvcidzIHJlc3VsdCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHBuZy5oOiBwcm9jZWVk
aW5nIHdpdGggdGhlIHByZXByb2Nlc3NvcidzIHJlc3VsdCIgPiYyO30KKyAgICB7IGVjaG8gIiRh
c19tZTokTElORU5POiBXQVJOSU5HOiBwbmcuaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVy
IHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogcG5nLmg6
IGluIHRoZSBmdXR1cmUsIHRoZSBjb21waWxlciB3aWxsIHRha2UgcHJlY2VkZW5jZSIgPiYyO30K
KyAgICAoCisgICAgICBjYXQgPDxcX0FTQk9YCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0gIyMKKyMjIFJlcG9ydCB0aGlzIHRvIHRoZSBBQ19QQUNLQUdFX05B
TUUgbGlzdHMuICAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tICMjCitfQVNCT1gKKyAgICApIHwKKyAgICAgIHNlZCAicy9eLyRhc19tZTogV0FSTklORzog
ICAgIC8iID4mMgorICAgIDs7Citlc2FjCitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcg
Zm9yIHBuZy5oIiA+JjUKK2VjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHBuZy5oLi4uICRFQ0hP
X0MiID4mNgoraWYgdGVzdCAiJHthY19jdl9oZWFkZXJfcG5nX2grc2V0fSIgPSBzZXQ7IHRoZW4K
KyAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKK2Vsc2UKKyAgYWNfY3ZfaGVh
ZGVyX3BuZ19oPSRhY19oZWFkZXJfcHJlcHJvYwogZmkKLWVjaG8gIiRhc19tZTo4MzEzOiByZXN1
bHQ6ICRhY19jdl9oZWFkZXJfcG5nX2giID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3Vs
dDogJGFjX2N2X2hlYWRlcl9wbmdfaCIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfaGVhZGVy
X3BuZ19oIiA+JjYKKworZmkKIGlmIHRlc3QgJGFjX2N2X2hlYWRlcl9wbmdfaCA9IHllczsgdGhl
bgogICA6CiBlbHNlCiAgIG5vX3BuZz0ieWVzIgogZmkKIAotZWNobyAiJGFzX21lOjgzNjQ6IGNo
ZWNraW5nIGZvciBsY21zL2xjbXMuaCIgPiY1CisKK2lmIHRlc3QgIiR7YWNfY3ZfaGVhZGVyX2xj
bXNfbGNtc19oK3NldH0iID0gc2V0OyB0aGVuCisgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3IgbGNtcy9sY21zLmgiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgbGNt
cy9sY21zLmguLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2hlYWRlcl9sY21zX2xj
bXNfaCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0Mi
ID4mNgorZmkKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9oZWFkZXJfbGNt
c19sY21zX2giID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl9sY21zX2xjbXNfaCIg
PiY2CiBlbHNlCi0gIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgODM3MCAi
Y29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisgICMgSXMgdGhlIGhlYWRlciBjb21w
aWxhYmxlPworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGxjbXMvbGNtcy5oIHVzYWJp
bGl0eSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIGxjbXMvbGNtcy5oIHVzYWJpbGl0eS4u
LiAkRUNIT19DIiA+JjYKK2NhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRl
ZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0
ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworJGFj
X2luY2x1ZGVzX2RlZmF1bHQKKyNpbmNsdWRlIDxsY21zL2xjbXMuaD4KK19BQ0VPRgorcm0gLWYg
Y29uZnRlc3QuJGFjX29iamV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQor
ICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5l
cnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1
cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/
CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQg
JGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29i
amV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUK
KyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRM
SU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsg
dGhlbgorICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCitlbHNlCisgIGVjaG8gIiRhc19tZTogZmFp
bGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1
CisKK2FjX2hlYWRlcl9jb21waWxlcj1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVz
dC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1
bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9j
b21waWxlciIgPiY2CisKKyMgSXMgdGhlIGhlYWRlciBwcmVzZW50PworZWNobyAiJGFzX21lOiRM
SU5FTk86IGNoZWNraW5nIGxjbXMvbGNtcy5oIHByZXNlbmNlIiA+JjUKK2VjaG8gJEVDSE9fTiAi
Y2hlY2tpbmcgbGNtcy9sY21zLmggcHJlc2VuY2UuLi4gJEVDSE9fQyIgPiY2CitjYXQgPmNvbmZ0
ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29u
ZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNF
T0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KICNpbmNsdWRlIDxsY21zL2xjbXMuaD4KIF9BQ0VP
RgotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODM3NDogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19l
eHRcIiIpID4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNv
bmZ0ZXN0LiRhY19leHRcIiIpID4mNQogICAoZXZhbCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQp
IDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0
ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29u
ZnRlc3QuZXJyCiAgIHJtIC1mIGNvbmZ0ZXN0LmVyMQogICBjYXQgY29uZnRlc3QuZXJyID4mNQot
ICBlY2hvICIkYXNfbWU6ODM4MDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0g
Pi9kZXYvbnVsbDsgdGhlbgogICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFj
X2NwcF9lcnI9JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBf
ZXJyJGFjX2Nfd2Vycm9yX2ZsYWcKICAgZWxzZQogICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC04
Mzk5LDQyICsxMDMwMywxNDMgQEAKICAgYWNfY3BwX2Vycj15ZXMKIGZpCiBpZiB0ZXN0IC16ICIk
YWNfY3BwX2VyciI7IHRoZW4KLSAgYWNfY3ZfaGVhZGVyX2xjbXNfbGNtc19oPXllcworICBhY19o
ZWFkZXJfcHJlcHJvYz15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3
YXM6IiA+JjUKLSAgY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1Ci0gIGFjX2N2X2hlYWRlcl9sY21z
X2xjbXNfaD1ubworc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCisgIGFjX2hl
YWRlcl9wcmVwcm9jPW5vCiBmaQogcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19leHQK
K2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19oZWFkZXJfcHJlcHJvYyIgPiY1Citl
Y2hvICIke0VDSE9fVH0kYWNfaGVhZGVyX3ByZXByb2MiID4mNgorCisjIFNvPyAgV2hhdCBhYm91
dCB0aGlzIGhlYWRlcj8KK2Nhc2UgJGFjX2hlYWRlcl9jb21waWxlcjokYWNfaGVhZGVyX3ByZXBy
b2M6JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcgaW4KKyAgeWVzOm5vOiApCisgICAgeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogV0FSTklORzogbGNtcy9sY21zLmg6IGFjY2VwdGVkIGJ5IHRoZSBjb21w
aWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXByb2Nlc3NvciEiID4mNQorZWNobyAiJGFzX21lOiBX
QVJOSU5HOiBsY21zL2xjbXMuaDogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBi
eSB0aGUgcHJlcHJvY2Vzc29yISIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBX
QVJOSU5HOiBsY21zL2xjbXMuaDogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxlcidzIHJlc3Vs
dCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGxjbXMvbGNtcy5oOiBwcm9jZWVkaW5nIHdp
dGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjI7fQorICAgIGFjX2hlYWRlcl9wcmVwcm9jPXll
cworICAgIDs7CisgIG5vOnllczoqICkKKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJO
SU5HOiBsY21zL2xjbXMuaDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBpbGVkIiA+JjUKK2Vj
aG8gIiRhc19tZTogV0FSTklORzogbGNtcy9sY21zLmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBj
b21waWxlZCIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBsY21z
L2xjbXMuaDogICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFkZXJzPyIgPiY1
CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGxjbXMvbGNtcy5oOiAgICAgY2hlY2sgZm9yIG1pc3Np
bmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFdBUk5JTkc6IGxjbXMvbGNtcy5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24i
ID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBsY21zL2xjbXMuaDogc2VlIHRoZSBBdXRvY29u
ZiBkb2N1bWVudGF0aW9uIiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5J
Tkc6IGxjbXMvbGNtcy5oOiAgICAgc2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21w
aWxlZFwiIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogbGNtcy9sY21zLmg6ICAgICBzZWN0
aW9uIFwiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkXCIiID4mMjt9CisgICAgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogbGNtcy9sY21zLmg6IHByb2NlZWRpbmcgd2l0aCB0
aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogbGNt
cy9sY21zLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjI7
fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGxjbXMvbGNtcy5oOiBpbiB0
aGUgZnV0dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4mNQorZWNobyAi
JGFzX21lOiBXQVJOSU5HOiBsY21zL2xjbXMuaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVy
IHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjI7fQorICAgICgKKyAgICAgIGNhdCA8PFxfQVNCT1gK
KyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgUmVw
b3J0IHRoaXMgdG8gdGhlIEFDX1BBQ0tBR0VfTkFNRSBsaXN0cy4gICMjCisjIyAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKK19BU0JPWAorICAgICkgfAorICAg
ICAgc2VkICJzL14vJGFzX21lOiBXQVJOSU5HOiAgICAgLyIgPiYyCisgICAgOzsKK2VzYWMKK2Vj
aG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgbGNtcy9sY21zLmgiID4mNQorZWNobyAk
RUNIT19OICJjaGVja2luZyBmb3IgbGNtcy9sY21zLmguLi4gJEVDSE9fQyIgPiY2CitpZiB0ZXN0
ICIke2FjX2N2X2hlYWRlcl9sY21zX2xjbXNfaCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hvICRF
Q0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgorZWxzZQorICBhY19jdl9oZWFkZXJfbGNtc19s
Y21zX2g9JGFjX2hlYWRlcl9wcmVwcm9jCiBmaQotZWNobyAiJGFzX21lOjgzOTk6IHJlc3VsdDog
JGFjX2N2X2hlYWRlcl9sY21zX2xjbXNfaCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiAkYWNfY3ZfaGVhZGVyX2xjbXNfbGNtc19oIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19j
dl9oZWFkZXJfbGNtc19sY21zX2giID4mNgorCitmaQogaWYgdGVzdCAkYWNfY3ZfaGVhZGVyX2xj
bXNfbGNtc19oID0geWVzOyB0aGVuCiAgIDoKIGVsc2UKICAgbm9fbGNtcz0ieWVzIgogZmkKIAot
ZWNobyAiJGFzX21lOjg0MDc6IGNoZWNraW5nIGZvciBsaWJtbmcuaCIgPiY1CisKK2lmIHRlc3Qg
IiR7YWNfY3ZfaGVhZGVyX2xpYm1uZ19oK3NldH0iID0gc2V0OyB0aGVuCisgIGVjaG8gIiRhc19t
ZTokTElORU5POiBjaGVja2luZyBmb3IgbGlibW5nLmgiID4mNQogZWNobyAkRUNIT19OICJjaGVj
a2luZyBmb3IgbGlibW5nLmguLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2hlYWRl
cl9saWJtbmdfaCtzZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRF
Q0hPX0MiID4mNgorZmkKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9oZWFk
ZXJfbGlibW5nX2giID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl9saWJtbmdfaCIg
PiY2CiBlbHNlCi0gIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgODQxMyAi
Y29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisgICMgSXMgdGhlIGhlYWRlciBjb21w
aWxhYmxlPworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGxpYm1uZy5oIHVzYWJpbGl0
eSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIGxpYm1uZy5oIHVzYWJpbGl0eS4uLiAkRUNI
T19DIiA+JjYKK2NhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4g
ICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29u
ZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworJGFjX2luY2x1
ZGVzX2RlZmF1bHQKICNpbmNsdWRlIDxsaWJtbmcuaD4KIF9BQ0VPRgotaWYgeyAoZXZhbCBlY2hv
ICIkYXNfbWU6ODQxNzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIpID4mNQorcm0gLWYg
Y29uZnRlc3QuJGFjX29iamV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIk
YWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQor
ICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5l
cnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8g
IiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1
cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/
CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQg
JGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29i
amV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUK
KyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRM
SU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsg
dGhlbgorICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCitlbHNlCisgIGVjaG8gIiRhc19tZTogZmFp
bGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1
CisKK2FjX2hlYWRlcl9jb21waWxlcj1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVz
dC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1
bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9j
b21waWxlciIgPiY2CisKKyMgSXMgdGhlIGhlYWRlciBwcmVzZW50PworZWNobyAiJGFzX21lOiRM
SU5FTk86IGNoZWNraW5nIGxpYm1uZy5oIHByZXNlbmNlIiA+JjUKK2VjaG8gJEVDSE9fTiAiY2hl
Y2tpbmcgbGlibW5nLmggcHJlc2VuY2UuLi4gJEVDSE9fQyIgPiY2CitjYXQgPmNvbmZ0ZXN0LiRh
Y19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMu
aCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8q
IGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxsaWJtbmcuaD4KK19BQ0VPRgoraWYgeyAo
ZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIp
ID4mNQogICAoZXZhbCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQpIDI+Y29uZnRlc3QuZXIxCiAg
IGFjX3N0YXR1cz0kPwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3Qu
ZXJyCisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgIHJtIC1m
IGNvbmZ0ZXN0LmVyMQogICBjYXQgY29uZnRlc3QuZXJyID4mNQotICBlY2hvICIkYXNfbWU6ODQy
MzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgog
ICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFjX2NwcF9lcnI9JGFjX2NfcHJl
cHJvY193YXJuX2ZsYWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBfZXJyJGFjX2Nfd2Vycm9yX2Zs
YWcKICAgZWxzZQogICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC04NDQyLDQyICsxMDQ0NywxNDMg
QEAKICAgYWNfY3BwX2Vycj15ZXMKIGZpCiBpZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7IHRoZW4K
LSAgYWNfY3ZfaGVhZGVyX2xpYm1uZ19oPXllcworICBhY19oZWFkZXJfcHJlcHJvYz15ZXMKIGVs
c2UKICAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLSAgY2F0IGNvbmZ0
ZXN0LiRhY19leHQgPiY1Ci0gIGFjX2N2X2hlYWRlcl9saWJtbmdfaD1ubworc2VkICdzL14vfCAv
JyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCisgIGFjX2hlYWRlcl9wcmVwcm9jPW5vCiBmaQogcm0g
LWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6ICRhY19oZWFkZXJfcHJlcHJvYyIgPiY1CitlY2hvICIke0VDSE9fVH0kYWNfaGVhZGVy
X3ByZXByb2MiID4mNgorCisjIFNvPyAgV2hhdCBhYm91dCB0aGlzIGhlYWRlcj8KK2Nhc2UgJGFj
X2hlYWRlcl9jb21waWxlcjokYWNfaGVhZGVyX3ByZXByb2M6JGFjX2NfcHJlcHJvY193YXJuX2Zs
YWcgaW4KKyAgeWVzOm5vOiApCisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzog
bGlibW5nLmg6IGFjY2VwdGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXBy
b2Nlc3NvciEiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBsaWJtbmcuaDogYWNjZXB0ZWQg
YnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiYyO30KKyAg
ICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBsaWJtbmcuaDogcHJvY2VlZGluZyB3
aXRoIHRoZSBjb21waWxlcidzIHJlc3VsdCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGxp
Ym1uZy5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjI7fQorICAg
IGFjX2hlYWRlcl9wcmVwcm9jPXllcworICAgIDs7CisgIG5vOnllczoqICkKKyAgICB7IGVjaG8g
IiRhc19tZTokTElORU5POiBXQVJOSU5HOiBsaWJtbmcuaDogcHJlc2VudCBidXQgY2Fubm90IGJl
IGNvbXBpbGVkIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogbGlibW5nLmg6IHByZXNlbnQg
YnV0IGNhbm5vdCBiZSBjb21waWxlZCIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5P
OiBXQVJOSU5HOiBsaWJtbmcuaDogICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBo
ZWFkZXJzPyIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGxpYm1uZy5oOiAgICAgY2hlY2sg
Zm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjI7fQorICAgIHsgZWNobyAiJGFz
X21lOiRMSU5FTk86IFdBUk5JTkc6IGxpYm1uZy5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50
YXRpb24iID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBsaWJtbmcuaDogc2VlIHRoZSBBdXRv
Y29uZiBkb2N1bWVudGF0aW9uIiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdB
Uk5JTkc6IGxpYm1uZy5oOiAgICAgc2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21w
aWxlZFwiIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogbGlibW5nLmg6ICAgICBzZWN0aW9u
IFwiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkXCIiID4mMjt9CisgICAgeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogV0FSTklORzogbGlibW5nLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJl
cHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogbGlibW5nLmg6
IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjI7fQorICAgIHsg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGxpYm1uZy5oOiBpbiB0aGUgZnV0dXJlLCB0
aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4mNQorZWNobyAiJGFzX21lOiBXQVJO
SU5HOiBsaWJtbmcuaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVj
ZWRlbmNlIiA+JjI7fQorICAgICgKKyAgICAgIGNhdCA8PFxfQVNCT1gKKyMjIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgUmVwb3J0IHRoaXMgdG8gdGhl
IEFDX1BBQ0tBR0VfTkFNRSBsaXN0cy4gICMjCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0gIyMKK19BU0JPWAorICAgICkgfAorICAgICAgc2VkICJzL14vJGFz
X21lOiBXQVJOSU5HOiAgICAgLyIgPiYyCisgICAgOzsKK2VzYWMKK2VjaG8gIiRhc19tZTokTElO
RU5POiBjaGVja2luZyBmb3IgbGlibW5nLmgiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBm
b3IgbGlibW5nLmguLi4gJEVDSE9fQyIgPiY2CitpZiB0ZXN0ICIke2FjX2N2X2hlYWRlcl9saWJt
bmdfaCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0Mi
ID4mNgorZWxzZQorICBhY19jdl9oZWFkZXJfbGlibW5nX2g9JGFjX2hlYWRlcl9wcmVwcm9jCiBm
aQotZWNobyAiJGFzX21lOjg0NDI6IHJlc3VsdDogJGFjX2N2X2hlYWRlcl9saWJtbmdfaCIgPiY1
CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfaGVhZGVyX2xpYm1uZ19oIiA+
JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9oZWFkZXJfbGlibW5nX2giID4mNgorCitmaQogaWYg
dGVzdCAkYWNfY3ZfaGVhZGVyX2xpYm1uZ19oID0geWVzOyB0aGVuCiAgIDoKIGVsc2UKICAgbm9f
bW5nPSJ5ZXMiCiBmaQogCi1lY2hvICIkYXNfbWU6ODQ1MDogY2hlY2tpbmcgZm9yIEdML2dsLmgi
ID4mNQotZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgR0wvZ2wuaC4uLiAkRUNIT19DIiA+JjYK
LWlmIHRlc3QgIiR7YWNfY3ZfaGVhZGVyX0dMX2dsX2grc2V0fSIgPSBzZXQ7IHRoZW4KLSAgZWNo
byAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKLWVsc2UKLSAgY2F0ID5jb25mdGVzdC4k
YWNfZXh0IDw8X0FDRU9GCi0jbGluZSA4NDU2ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRl
ZnMuaCIKKworaWYgdGVzdCAiJHthY19jdl9oZWFkZXJfR0xfZ2xfaCtzZXR9IiA9IHNldDsgdGhl
bgorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIEdML2dsLmgiID4mNQorZWNo
byAkRUNIT19OICJjaGVja2luZyBmb3IgR0wvZ2wuaC4uLiAkRUNIT19DIiA+JjYKK2lmIHRlc3Qg
IiR7YWNfY3ZfaGVhZGVyX0dMX2dsX2grc2V0fSIgPSBzZXQ7IHRoZW4KKyAgZWNobyAkRUNIT19O
ICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKK2ZpCitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiAkYWNfY3ZfaGVhZGVyX0dMX2dsX2giID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRl
cl9HTF9nbF9oIiA+JjYKK2Vsc2UKKyAgIyBJcyB0aGUgaGVhZGVyIGNvbXBpbGFibGU/CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgR0wvZ2wuaCB1c2FiaWxpdHkiID4mNQorZWNobyAk
RUNIT19OICJjaGVja2luZyBHTC9nbC5oIHVzYWJpbGl0eS4uLiAkRUNIT19DIiA+JjYKK2NhdCA+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2Nh
dCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8
PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLworJGFjX2luY2x1ZGVzX2RlZmF1bHQKKyNp
bmNsdWRlIDxHTC9nbC5oPgorX0FDRU9GCitybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0CitpZiB7
IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY19jb21waWxlXCIiKSA+JjUKKyAgKGV2
YWwgJGFjX2NvbXBpbGUpIDI+Y29uZnRlc3QuZXIxCisgIGFjX3N0YXR1cz0kPworICBncmVwIC12
ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEK
KyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgorCSB7IGFjX3RyeT0ndGVz
dCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicK
KyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2
YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86
IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7
IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdC4kYWNfb2JqZXh0JworICB7IChldmFsIGVjaG8gIiRh
c19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQorICAoZXZhbCAkYWNfdHJ5KSAyPiY1Cisg
IGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIg
PiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCisgIGFjX2hlYWRlcl9jb21waWxl
cj15ZXMKK2Vsc2UKKyAgZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3Nl
ZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworYWNfaGVhZGVyX2NvbXBpbGVyPW5v
CitmaQorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFj
X2V4dAorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2hlYWRlcl9jb21waWxlciIg
PiY1CitlY2hvICIke0VDSE9fVH0kYWNfaGVhZGVyX2NvbXBpbGVyIiA+JjYKKworIyBJcyB0aGUg
aGVhZGVyIHByZXNlbnQ/CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgR0wvZ2wuaCBw
cmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIEdML2dsLmggcHJlc2VuY2UuLi4g
JEVDSE9fQyIgPiY2CitjYXQgPmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGNvbmZkZWZz
LmguICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+
PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KICNpbmNs
dWRlIDxHTC9nbC5oPgogX0FDRU9GCi1pZiB7IChldmFsIGVjaG8gIiRhc19tZTo4NDYwOiBcIiRh
Y19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1CitpZiB7IChldmFsIGVjaG8gIiRhc19tZTok
TElORU5POiBcIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dFwiIikgPiY1CiAgIChldmFsICRhY19j
cHAgY29uZnRlc3QuJGFjX2V4dCkgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVn
cmVwIC12ICdeICpcKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgZ3JlcCAtdiAnXiAq
KycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKICAgcm0gLWYgY29uZnRlc3QuZXIxCiAgIGNh
dCBjb25mdGVzdC5lcnIgPiY1Ci0gIGVjaG8gIiRhc19tZTo4NDY2OiBcJD8gPSAkYWNfc3RhdHVz
IiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfSA+L2Rldi9udWxsOyB0aGVuCiAgIGlmIHRlc3QgLXMgY29uZnRl
c3QuZXJyOyB0aGVuCiAgICAgYWNfY3BwX2Vycj0kYWNfY19wcmVwcm9jX3dhcm5fZmxhZworICAg
IGFjX2NwcF9lcnI9JGFjX2NwcF9lcnIkYWNfY193ZXJyb3JfZmxhZwogICBlbHNlCiAgICAgYWNf
Y3BwX2Vycj0KICAgZmkKQEAgLTg0ODUsNDIgKzEwNTkxLDE0MyBAQAogICBhY19jcHBfZXJyPXll
cwogZmkKIGlmIHRlc3QgLXogIiRhY19jcHBfZXJyIjsgdGhlbgotICBhY19jdl9oZWFkZXJfR0xf
Z2xfaD15ZXMKKyAgYWNfaGVhZGVyX3ByZXByb2M9eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTog
ZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci0gIGNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQotICBh
Y19jdl9oZWFkZXJfR0xfZ2xfaD1ubworc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4m
NQorCisgIGFjX2hlYWRlcl9wcmVwcm9jPW5vCiBmaQogcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0
ZXN0LiRhY19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19oZWFkZXJfcHJl
cHJvYyIgPiY1CitlY2hvICIke0VDSE9fVH0kYWNfaGVhZGVyX3ByZXByb2MiID4mNgorCisjIFNv
PyAgV2hhdCBhYm91dCB0aGlzIGhlYWRlcj8KK2Nhc2UgJGFjX2hlYWRlcl9jb21waWxlcjokYWNf
aGVhZGVyX3ByZXByb2M6JGFjX2NfcHJlcHJvY193YXJuX2ZsYWcgaW4KKyAgeWVzOm5vOiApCisg
ICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogR0wvZ2wuaDogYWNjZXB0ZWQgYnkg
dGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiY1CitlY2hvICIk
YXNfbWU6IFdBUk5JTkc6IEdML2dsLmg6IGFjY2VwdGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0
ZWQgYnkgdGhlIHByZXByb2Nlc3NvciEiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVO
TzogV0FSTklORzogR0wvZ2wuaDogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxlcidzIHJlc3Vs
dCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IEdML2dsLmg6IHByb2NlZWRpbmcgd2l0aCB0
aGUgY29tcGlsZXIncyByZXN1bHQiID4mMjt9CisgICAgYWNfaGVhZGVyX3ByZXByb2M9eWVzCisg
ICAgOzsKKyAgbm86eWVzOiogKQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6
IEdML2dsLmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZCIgPiY1CitlY2hvICIkYXNf
bWU6IFdBUk5JTkc6IEdML2dsLmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZCIgPiYy
O30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBHTC9nbC5oOiAgICAgY2hl
Y2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjUKK2VjaG8gIiRhc19tZTog
V0FSTklORzogR0wvZ2wuaDogICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFk
ZXJzPyIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBHTC9nbC5o
OiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24iID4mNQorZWNobyAiJGFzX21lOiBXQVJO
SU5HOiBHTC9nbC5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3VtZW50YXRpb24iID4mMjt9CisgICAg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogR0wvZ2wuaDogICAgIHNlY3Rpb24gXCJQ
cmVzZW50IEJ1dCBDYW5ub3QgQmUgQ29tcGlsZWRcIiIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5J
Tkc6IEdML2dsLmg6ICAgICBzZWN0aW9uIFwiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVk
XCIiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogR0wvZ2wuaDog
cHJvY2VlZGluZyB3aXRoIHRoZSBwcmVwcm9jZXNzb3IncyByZXN1bHQiID4mNQorZWNobyAiJGFz
X21lOiBXQVJOSU5HOiBHTC9nbC5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIHByZXByb2Nlc3Nvcidz
IHJlc3VsdCIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5HOiBHTC9n
bC5oOiBpbiB0aGUgZnV0dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4m
NQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBHTC9nbC5oOiBpbiB0aGUgZnV0dXJlLCB0aGUgY29t
cGlsZXIgd2lsbCB0YWtlIHByZWNlZGVuY2UiID4mMjt9CisgICAgKAorICAgICAgY2F0IDw8XF9B
U0JPWAorIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisj
IyBSZXBvcnQgdGhpcyB0byB0aGUgQUNfUEFDS0FHRV9OQU1FIGxpc3RzLiAgIyMKKyMjIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworX0FTQk9YCisgICAgKSB8
CisgICAgICBzZWQgInMvXi8kYXNfbWU6IFdBUk5JTkc6ICAgICAvIiA+JjIKKyAgICA7OworZXNh
YworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBHTC9nbC5oIiA+JjUKK2VjaG8g
JEVDSE9fTiAiY2hlY2tpbmcgZm9yIEdML2dsLmguLi4gJEVDSE9fQyIgPiY2CitpZiB0ZXN0ICIk
e2FjX2N2X2hlYWRlcl9HTF9nbF9oK3NldH0iID0gc2V0OyB0aGVuCisgIGVjaG8gJEVDSE9fTiAi
KGNhY2hlZCkgJEVDSE9fQyIgPiY2CitlbHNlCisgIGFjX2N2X2hlYWRlcl9HTF9nbF9oPSRhY19o
ZWFkZXJfcHJlcHJvYwogZmkKLWVjaG8gIiRhc19tZTo4NDg1OiByZXN1bHQ6ICRhY19jdl9oZWFk
ZXJfR0xfZ2xfaCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfaGVh
ZGVyX0dMX2dsX2giID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl9HTF9nbF9oIiA+
JjYKKworZmkKIGlmIHRlc3QgJGFjX2N2X2hlYWRlcl9HTF9nbF9oID0geWVzOyB0aGVuCiAgIDoK
IGVsc2UKICAgdXNlX29wZW5nbD0ibm8iCiBmaQogCi1lY2hvICIkYXNfbWU6ODQ5MzogY2hlY2tp
bmcgZm9yIGQzZDguaCIgPiY1CisKK2lmIHRlc3QgIiR7YWNfY3ZfaGVhZGVyX2QzZDhfaCtzZXR9
IiA9IHNldDsgdGhlbgorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIGQzZDgu
aCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBkM2Q4LmguLi4gJEVDSE9fQyIgPiY2
CiBpZiB0ZXN0ICIke2FjX2N2X2hlYWRlcl9kM2Q4X2grc2V0fSIgPSBzZXQ7IHRoZW4KICAgZWNo
byAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKK2ZpCitlY2hvICIkYXNfbWU6JExJTkVO
TzogcmVzdWx0OiAkYWNfY3ZfaGVhZGVyX2QzZDhfaCIgPiY1CitlY2hvICIke0VDSE9fVH0kYWNf
Y3ZfaGVhZGVyX2QzZDhfaCIgPiY2CiBlbHNlCi0gIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9B
Q0VPRgotI2xpbmUgODQ5OSAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisgICMg
SXMgdGhlIGhlYWRlciBjb21waWxhYmxlPworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5n
IGQzZDguaCB1c2FiaWxpdHkiID4mNQorZWNobyAkRUNIT19OICJjaGVja2luZyBkM2Q4LmggdXNh
YmlsaXR5Li4uICRFQ0hPX0MiID4mNgorY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisv
KiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNf
ZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4g
ICovCiskYWNfaW5jbHVkZXNfZGVmYXVsdAorI2luY2x1ZGUgPGQzZDguaD4KK19BQ0VPRgorcm0g
LWYgY29uZnRlc3QuJGFjX29iamV4dAoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChldmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVy
MQorICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVz
dC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0
YXR1cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJ
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVz
PSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4
aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFj
X29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+
JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21l
OiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsg
fTsgdGhlbgorICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCitlbHNlCisgIGVjaG8gIiRhc19tZTog
ZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQg
PiY1CisKK2FjX2hlYWRlcl9jb21waWxlcj1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25m
dGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRl
cl9jb21waWxlciIgPiY2CisKKyMgSXMgdGhlIGhlYWRlciBwcmVzZW50PworZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGQzZDguaCBwcmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04gImNo
ZWNraW5nIGQzZDguaCBwcmVzZW5jZS4uLiAkRUNIT19DIiA+JjYKK2NhdCA+Y29uZnRlc3QuJGFj
X2V4dCA8PF9BQ0VPRgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5o
ID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyog
ZW5kIGNvbmZkZWZzLmguICAqLwogI2luY2x1ZGUgPGQzZDguaD4KIF9BQ0VPRgotaWYgeyAoZXZh
bCBlY2hvICIkYXNfbWU6ODUwMzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIpID4mNQor
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19l
eHRcIiIpID4mNQogICAoZXZhbCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQpIDI+Y29uZnRlc3Qu
ZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0ZXN0LmVyMSA+Y29u
ZnRlc3QuZXJyCisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAg
IHJtIC1mIGNvbmZ0ZXN0LmVyMQogICBjYXQgY29uZnRlc3QuZXJyID4mNQotICBlY2hvICIkYXNf
bWU6ODUwOTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBc
JD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsg
dGhlbgogICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFjX2NwcF9lcnI9JGFj
X2NfcHJlcHJvY193YXJuX2ZsYWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBfZXJyJGFjX2Nfd2Vy
cm9yX2ZsYWcKICAgZWxzZQogICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC04NTI4LDQyICsxMDcz
NSwxNDMgQEAKICAgYWNfY3BwX2Vycj15ZXMKIGZpCiBpZiB0ZXN0IC16ICIkYWNfY3BwX2VyciI7
IHRoZW4KLSAgYWNfY3ZfaGVhZGVyX2QzZDhfaD15ZXMKKyAgYWNfaGVhZGVyX3ByZXByb2M9eWVz
CiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci0gIGNhdCBj
b25mdGVzdC4kYWNfZXh0ID4mNQotICBhY19jdl9oZWFkZXJfZDNkOF9oPW5vCitzZWQgJ3MvXi98
IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKKyAgYWNfaGVhZGVyX3ByZXByb2M9bm8KIGZpCiBy
bSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAorZWNobyAiJGFzX21lOiRMSU5FTk86
IHJlc3VsdDogJGFjX2hlYWRlcl9wcmVwcm9jIiA+JjUKK2VjaG8gIiR7RUNIT19UfSRhY19oZWFk
ZXJfcHJlcHJvYyIgPiY2CisKKyMgU28/ICBXaGF0IGFib3V0IHRoaXMgaGVhZGVyPworY2FzZSAk
YWNfaGVhZGVyX2NvbXBpbGVyOiRhY19oZWFkZXJfcHJlcHJvYzokYWNfY19wcmVwcm9jX3dhcm5f
ZmxhZyBpbgorICB5ZXM6bm86ICkKKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5H
OiBkM2Q4Lmg6IGFjY2VwdGVkIGJ5IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXBy
b2Nlc3NvciEiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiBkM2Q4Lmg6IGFjY2VwdGVkIGJ5
IHRoZSBjb21waWxlciwgcmVqZWN0ZWQgYnkgdGhlIHByZXByb2Nlc3NvciEiID4mMjt9CisgICAg
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FSTklORzogZDNkOC5oOiBwcm9jZWVkaW5nIHdpdGgg
dGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogZDNkOC5o
OiBwcm9jZWVkaW5nIHdpdGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjI7fQorICAgIGFjX2hl
YWRlcl9wcmVwcm9jPXllcworICAgIDs7CisgIG5vOnllczoqICkKKyAgICB7IGVjaG8gIiRhc19t
ZTokTElORU5POiBXQVJOSU5HOiBkM2Q4Lmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxl
ZCIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGQzZDguaDogcHJlc2VudCBidXQgY2Fubm90
IGJlIGNvbXBpbGVkIiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6
IGQzZDguaDogICAgIGNoZWNrIGZvciBtaXNzaW5nIHByZXJlcXVpc2l0ZSBoZWFkZXJzPyIgPiY1
CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGQzZDguaDogICAgIGNoZWNrIGZvciBtaXNzaW5nIHBy
ZXJlcXVpc2l0ZSBoZWFkZXJzPyIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBX
QVJOSU5HOiBkM2Q4Lmg6IHNlZSB0aGUgQXV0b2NvbmYgZG9jdW1lbnRhdGlvbiIgPiY1CitlY2hv
ICIkYXNfbWU6IFdBUk5JTkc6IGQzZDguaDogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9u
IiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IGQzZDguaDogICAg
IHNlY3Rpb24gXCJQcmVzZW50IEJ1dCBDYW5ub3QgQmUgQ29tcGlsZWRcIiIgPiY1CitlY2hvICIk
YXNfbWU6IFdBUk5JTkc6IGQzZDguaDogICAgIHNlY3Rpb24gXCJQcmVzZW50IEJ1dCBDYW5ub3Qg
QmUgQ29tcGlsZWRcIiIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJOSU5H
OiBkM2Q4Lmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjUK
K2VjaG8gIiRhc19tZTogV0FSTklORzogZDNkOC5oOiBwcm9jZWVkaW5nIHdpdGggdGhlIHByZXBy
b2Nlc3NvcidzIHJlc3VsdCIgPiYyO30KKyAgICB7IGVjaG8gIiRhc19tZTokTElORU5POiBXQVJO
SU5HOiBkM2Q4Lmg6IGluIHRoZSBmdXR1cmUsIHRoZSBjb21waWxlciB3aWxsIHRha2UgcHJlY2Vk
ZW5jZSIgPiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IGQzZDguaDogaW4gdGhlIGZ1dHVyZSwg
dGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjI7fQorICAgICgKKyAgICAgIGNh
dCA8PFxfQVNCT1gKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSAjIworIyMgUmVwb3J0IHRoaXMgdG8gdGhlIEFDX1BBQ0tBR0VfTkFNRSBsaXN0cy4gICMjCisj
IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKK19BU0JPWAor
ICAgICkgfAorICAgICAgc2VkICJzL14vJGFzX21lOiBXQVJOSU5HOiAgICAgLyIgPiYyCisgICAg
OzsKK2VzYWMKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgZDNkOC5oIiA+JjUK
K2VjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIGQzZDguaC4uLiAkRUNIT19DIiA+JjYKK2lmIHRl
c3QgIiR7YWNfY3ZfaGVhZGVyX2QzZDhfaCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hvICRFQ0hP
X04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgorZWxzZQorICBhY19jdl9oZWFkZXJfZDNkOF9oPSRh
Y19oZWFkZXJfcHJlcHJvYwogZmkKLWVjaG8gIiRhc19tZTo4NTI4OiByZXN1bHQ6ICRhY19jdl9o
ZWFkZXJfZDNkOF9oIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9o
ZWFkZXJfZDNkOF9oIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRhY19jdl9oZWFkZXJfZDNkOF9oIiA+
JjYKKworZmkKIGlmIHRlc3QgJGFjX2N2X2hlYWRlcl9kM2Q4X2ggPSB5ZXM7IHRoZW4KICAgOgog
ZWxzZQogICB1c2VfZGlyZWN0eD0ibm8iCiBmaQogCi1lY2hvICIkYXNfbWU6ODUzNjogY2hlY2tp
bmcgZm9yIHdpbmRvd3MuaCIgPiY1CisKK2lmIHRlc3QgIiR7YWNfY3ZfaGVhZGVyX3dpbmRvd3Nf
aCtzZXR9IiA9IHNldDsgdGhlbgorICBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9y
IHdpbmRvd3MuaCIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciB3aW5kb3dzLmguLi4g
JEVDSE9fQyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2hlYWRlcl93aW5kb3dzX2grc2V0fSIgPSBz
ZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKK2ZpCitlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfaGVhZGVyX3dpbmRvd3NfaCIgPiY1Citl
Y2hvICIke0VDSE9fVH0kYWNfY3ZfaGVhZGVyX3dpbmRvd3NfaCIgPiY2CiBlbHNlCi0gIGNhdCA+
Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgODU0MiAiY29uZmlndXJlIgotI2luY2x1
ZGUgImNvbmZkZWZzLmgiCisgICMgSXMgdGhlIGhlYWRlciBjb21waWxhYmxlPworZWNobyAiJGFz
X21lOiRMSU5FTk86IGNoZWNraW5nIHdpbmRvd3MuaCB1c2FiaWxpdHkiID4mNQorZWNobyAkRUNI
T19OICJjaGVja2luZyB3aW5kb3dzLmggdXNhYmlsaXR5Li4uICRFQ0hPX0MiID4mNgorY2F0ID5j
b25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0
IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8
X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiskYWNfaW5jbHVkZXNfZGVmYXVsdAorI2lu
Y2x1ZGUgPHdpbmRvd3MuaD4KK19BQ0VPRgorcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAoraWYg
eyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfY29tcGlsZVwiIikgPiY1CisgIChl
dmFsICRhY19jb21waWxlKSAyPmNvbmZ0ZXN0LmVyMQorICBhY19zdGF0dXM9JD8KKyAgZ3JlcCAt
diAnXiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIx
CisgIGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAk
YWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKKwkgeyBhY190cnk9J3Rl
c3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIn
CisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChl
dmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5P
OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkg
eyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dCcKKyAgeyAoZXZhbCBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQor
ICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgorICBhY19oZWFkZXJfY29tcGls
ZXI9eWVzCitlbHNlCisgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Citz
ZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKK2FjX2hlYWRlcl9jb21waWxlcj1u
bworZmkKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRh
Y19leHQKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIi
ID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9jb21waWxlciIgPiY2CisKKyMgSXMgdGhl
IGhlYWRlciBwcmVzZW50PworZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIHdpbmRvd3Mu
aCBwcmVzZW5jZSIgPiY1CitlY2hvICRFQ0hPX04gImNoZWNraW5nIHdpbmRvd3MuaCBwcmVzZW5j
ZS4uLiAkRUNIT19DIiA+JjYKK2NhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogY29u
ZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVmcy5oID4+Y29uZnRlc3QuJGFjX2V4dAor
Y2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgorLyogZW5kIGNvbmZkZWZzLmguICAqLwog
I2luY2x1ZGUgPHdpbmRvd3MuaD4KIF9BQ0VPRgotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODU0
NjogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIpID4mNQoraWYgeyAoZXZhbCBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHRcIiIpID4mNQogICAoZXZh
bCAkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQpIDI+Y29uZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0k
PwotICBlZ3JlcCAtdiAnXiAqXCsnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCisgIGdyZXAg
LXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJyCiAgIHJtIC1mIGNvbmZ0ZXN0LmVy
MQogICBjYXQgY29uZnRlc3QuZXJyID4mNQotICBlY2hvICIkYXNfbWU6ODU1MjogXCQ/ID0gJGFj
X3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gPi9kZXYvbnVsbDsgdGhlbgogICBpZiB0ZXN0IC1z
IGNvbmZ0ZXN0LmVycjsgdGhlbgogICAgIGFjX2NwcF9lcnI9JGFjX2NfcHJlcHJvY193YXJuX2Zs
YWcKKyAgICBhY19jcHBfZXJyPSRhY19jcHBfZXJyJGFjX2Nfd2Vycm9yX2ZsYWcKICAgZWxzZQog
ICAgIGFjX2NwcF9lcnI9CiAgIGZpCkBAIC04NTcxLDI0ICsxMDg3OSw3MCBAQAogICBhY19jcHBf
ZXJyPXllcwogZmkKIGlmIHRlc3QgLXogIiRhY19jcHBfZXJyIjsgdGhlbgotICBhY19jdl9oZWFk
ZXJfd2luZG93c19oPXllcworICBhY19oZWFkZXJfcHJlcHJvYz15ZXMKIGVsc2UKICAgZWNobyAi
JGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLSAgY2F0IGNvbmZ0ZXN0LiRhY19leHQg
PiY1Ci0gIGFjX2N2X2hlYWRlcl93aW5kb3dzX2g9bm8KK3NlZCAncy9eL3wgLycgY29uZnRlc3Qu
JGFjX2V4dCA+JjUKKworICBhY19oZWFkZXJfcHJlcHJvYz1ubwogZmkKIHJtIC1mIGNvbmZ0ZXN0
LmVyciBjb25mdGVzdC4kYWNfZXh0CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNf
aGVhZGVyX3ByZXByb2MiID4mNQorZWNobyAiJHtFQ0hPX1R9JGFjX2hlYWRlcl9wcmVwcm9jIiA+
JjYKKworIyBTbz8gIFdoYXQgYWJvdXQgdGhpcyBoZWFkZXI/CitjYXNlICRhY19oZWFkZXJfY29t
cGlsZXI6JGFjX2hlYWRlcl9wcmVwcm9jOiRhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluCisgIHll
czpubzogKQorICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IHdpbmRvd3MuaDog
YWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIg
PiY1CitlY2hvICIkYXNfbWU6IFdBUk5JTkc6IHdpbmRvd3MuaDogYWNjZXB0ZWQgYnkgdGhlIGNv
bXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiYyO30KKyAgICB7IGVjaG8g
IiRhc19tZTokTElORU5POiBXQVJOSU5HOiB3aW5kb3dzLmg6IHByb2NlZWRpbmcgd2l0aCB0aGUg
Y29tcGlsZXIncyByZXN1bHQiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiB3aW5kb3dzLmg6
IHByb2NlZWRpbmcgd2l0aCB0aGUgY29tcGlsZXIncyByZXN1bHQiID4mMjt9CisgICAgYWNfaGVh
ZGVyX3ByZXByb2M9eWVzCisgICAgOzsKKyAgbm86eWVzOiogKQorICAgIHsgZWNobyAiJGFzX21l
OiRMSU5FTk86IFdBUk5JTkc6IHdpbmRvd3MuaDogcHJlc2VudCBidXQgY2Fubm90IGJlIGNvbXBp
bGVkIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogd2luZG93cy5oOiBwcmVzZW50IGJ1dCBj
YW5ub3QgYmUgY29tcGlsZWQiID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FS
TklORzogd2luZG93cy5oOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRl
cnM/IiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogd2luZG93cy5oOiAgICAgY2hlY2sgZm9y
IG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjI7fQorICAgIHsgZWNobyAiJGFzX21l
OiRMSU5FTk86IFdBUk5JTkc6IHdpbmRvd3MuaDogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0
aW9uIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogd2luZG93cy5oOiBzZWUgdGhlIEF1dG9j
b25mIGRvY3VtZW50YXRpb24iID4mMjt9CisgICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogV0FS
TklORzogd2luZG93cy5oOiAgICAgc2VjdGlvbiBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21w
aWxlZFwiIiA+JjUKK2VjaG8gIiRhc19tZTogV0FSTklORzogd2luZG93cy5oOiAgICAgc2VjdGlv
biBcIlByZXNlbnQgQnV0IENhbm5vdCBCZSBDb21waWxlZFwiIiA+JjI7fQorICAgIHsgZWNobyAi
JGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IHdpbmRvd3MuaDogcHJvY2VlZGluZyB3aXRoIHRoZSBw
cmVwcm9jZXNzb3IncyByZXN1bHQiID4mNQorZWNobyAiJGFzX21lOiBXQVJOSU5HOiB3aW5kb3dz
Lmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0IiA+JjI7fQorICAg
IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IFdBUk5JTkc6IHdpbmRvd3MuaDogaW4gdGhlIGZ1dHVy
ZSwgdGhlIGNvbXBpbGVyIHdpbGwgdGFrZSBwcmVjZWRlbmNlIiA+JjUKK2VjaG8gIiRhc19tZTog
V0FSTklORzogd2luZG93cy5oOiBpbiB0aGUgZnV0dXJlLCB0aGUgY29tcGlsZXIgd2lsbCB0YWtl
IHByZWNlZGVuY2UiID4mMjt9CisgICAgKAorICAgICAgY2F0IDw8XF9BU0JPWAorIyMgLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBSZXBvcnQgdGhpcyB0
byB0aGUgQUNfUEFDS0FHRV9OQU1FIGxpc3RzLiAgIyMKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworX0FTQk9YCisgICAgKSB8CisgICAgICBzZWQgInMv
Xi8kYXNfbWU6IFdBUk5JTkc6ICAgICAvIiA+JjIKKyAgICA7OworZXNhYworZWNobyAiJGFzX21l
OiRMSU5FTk86IGNoZWNraW5nIGZvciB3aW5kb3dzLmgiID4mNQorZWNobyAkRUNIT19OICJjaGVj
a2luZyBmb3Igd2luZG93cy5oLi4uICRFQ0hPX0MiID4mNgoraWYgdGVzdCAiJHthY19jdl9oZWFk
ZXJfd2luZG93c19oK3NldH0iID0gc2V0OyB0aGVuCisgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkg
JEVDSE9fQyIgPiY2CitlbHNlCisgIGFjX2N2X2hlYWRlcl93aW5kb3dzX2g9JGFjX2hlYWRlcl9w
cmVwcm9jCiBmaQotZWNobyAiJGFzX21lOjg1NzE6IHJlc3VsdDogJGFjX2N2X2hlYWRlcl93aW5k
b3dzX2giID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2X2hlYWRlcl93
aW5kb3dzX2giID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2hlYWRlcl93aW5kb3dzX2giID4m
NgorCitmaQogaWYgdGVzdCAkYWNfY3ZfaGVhZGVyX3dpbmRvd3NfaCA9IHllczsgdGhlbgogICA6
CiBlbHNlCiAgIHVzZV93aW4zMj0ibm8iCiBmaQogCisKKwogaWYgdGVzdCAiJG5vX2pwZWciID0g
Im5vIiA7IHRoZW4KLSAgZWNobyAiJGFzX21lOjg1ODA6IGNoZWNraW5nIGZvciBqcGVnX3N0YXJ0
X2RlY29tcHJlc3MgaW4gLWxqcGVnIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNr
aW5nIGZvciBqcGVnX3N0YXJ0X2RlY29tcHJlc3MgaW4gLWxqcGVnIiA+JjUKIGVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgZm9yIGpwZWdfc3RhcnRfZGVjb21wcmVzcyBpbiAtbGpwZWcuLi4gJEVDSE9f
QyIgPiY2CiBpZiB0ZXN0ICIke2FjX2N2X2xpYl9qcGVnX2pwZWdfc3RhcnRfZGVjb21wcmVzcytz
ZXR9IiA9IHNldDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpA
QCAtODU5Niw4ICsxMDk1MCwxMSBAQAogICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCiBM
SUJTPSItbGpwZWcgICRMSUJTIgogY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGlu
ZSA4NTg4ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmgu
ICAqLworX0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNv
bmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogLyogT3Zl
cnJpZGUgYW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8K
ICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtODYxNSwyNyArMTA5NzIsMzkgQEAKIH0KIF9BQ0VPRgog
cm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwg
ZWNobyAiJGFzX21lOjg2MDc6IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykg
Mj4mNQoraWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1
CisgIChldmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNo
byAiJGFzX21lOjg2MTA6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBj
b25mdGVzdC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNv
bmZ0ZXN0LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3Qg
LXMgY29uZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo4NjEzOiBcIiRh
Y190cnlcIiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJ
CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJ
TkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0
dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAo
ZXhpdCAkYWNfc3RhdHVzKTsgfTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRh
Y19leGVleHQnCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikg
PiY1CiAgIChldmFsICRhY190cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19t
ZTo4NjE2OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwk
PyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBh
Y19jdl9saWJfanBlZ19qcGVnX3N0YXJ0X2RlY29tcHJlc3M9eWVzCiBlbHNlCiAgIGVjaG8gIiRh
c19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUK
K3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogYWNfY3ZfbGliX2pwZWdfanBl
Z19zdGFydF9kZWNvbXByZXNzPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0
ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19l
eHQKIExJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNfbWU6ODYyNzog
cmVzdWx0OiAkYWNfY3ZfbGliX2pwZWdfanBlZ19zdGFydF9kZWNvbXByZXNzIiA+JjUKK2VjaG8g
IiRhc19tZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJfanBlZ19qcGVnX3N0YXJ0X2RlY29t
cHJlc3MiID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2xpYl9qcGVnX2pwZWdfc3RhcnRfZGVj
b21wcmVzcyIgPiY2CiBpZiB0ZXN0ICRhY19jdl9saWJfanBlZ19qcGVnX3N0YXJ0X2RlY29tcHJl
c3MgPSB5ZXM7IHRoZW4KICAgTElCSlBHPSItbGpwZWciCkBAIC04NjQ2LDcgKzExMDE1LDcgQEAK
ICAgaWYgdGVzdCAiJExJQkpQRyIgIT0gIi1sanBlZyIgOyB0aGVuCiAgICAgbm9fanBlZz0ieWVz
IgogICBlbHNlCi0gICAgZWNobyAiJGFzX21lOjg2Mzg6IGNoZWNraW5nIGZvciBqcGVnX2luaXRf
ZXhpZl9maWVsZCBpbiAtbGpwZWciID4mNQorICAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVj
a2luZyBmb3IganBlZ19pbml0X2V4aWZfZmllbGQgaW4gLWxqcGVnIiA+JjUKIGVjaG8gJEVDSE9f
TiAiY2hlY2tpbmcgZm9yIGpwZWdfaW5pdF9leGlmX2ZpZWxkIGluIC1sanBlZy4uLiAkRUNIT19D
IiA+JjYKIGlmIHRlc3QgIiR7YWNfY3ZfbGliX2pwZWdfanBlZ19pbml0X2V4aWZfZmllbGQrc2V0
fSIgPSBzZXQ7IHRoZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAg
LTg2NTQsOCArMTEwMjMsMTEgQEAKICAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUwogTElC
Uz0iLWxqcGVnICAkTElCUyIKIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUg
ODY0NiAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAg
Ki8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25m
dGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAKIC8qIE92ZXJy
aWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCiAj
aWZkZWYgX19jcGx1c3BsdXMKQEAgLTg2NzMsMjcgKzExMDQ1LDM5IEBACiB9CiBfQUNFT0YKIHJt
IC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVj
aG8gIiRhc19tZTo4NjY1OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+
JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQor
ICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8g
IiRhc19tZTo4NjY4OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29u
ZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25m
dGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1z
IGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODY3MTogXCIkYWNf
dHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJ
IHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5F
Tk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVz
PSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4
aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNf
ZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4m
NQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6
ODY3NDogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8g
PSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNf
Y3ZfbGliX2pwZWdfanBlZ19pbml0X2V4aWZfZmllbGQ9eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19t
ZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3Nl
ZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKwogYWNfY3ZfbGliX2pwZWdfanBlZ19p
bml0X2V4aWZfZmllbGQ9bm8KIGZpCi1ybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0
JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3Qu
JGFjX29iamV4dCBcCisgICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAog
TElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUwogZmkKLWVjaG8gIiRhc19tZTo4Njg1OiByZXN1
bHQ6ICRhY19jdl9saWJfanBlZ19qcGVnX2luaXRfZXhpZl9maWVsZCIgPiY1CitlY2hvICIkYXNf
bWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX2pwZWdfanBlZ19pbml0X2V4aWZfZmllbGQi
ID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2X2xpYl9qcGVnX2pwZWdfaW5pdF9leGlmX2ZpZWxk
IiA+JjYKIGlmIHRlc3QgJGFjX2N2X2xpYl9qcGVnX2pwZWdfaW5pdF9leGlmX2ZpZWxkID0geWVz
OyB0aGVuCiAgIHVzZV9leGlmPSJ5ZXMiCkBAIC04NzAyLDkgKzExMDg2LDkgQEAKIGZpCiAKICAg
ICBpZiB0ZXN0ICIkdXNlX2V4aWYiID0gIm5vIiA7IHRoZW4KLSAgICAgIGNhdCA+PmNvbmZkZWZz
LmggPDxcRU9GCisgICAgICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9V
U0VfSlBFR0xJQl9VTk1PRElGSUVEIDEKLUVPRgorX0FDRU9GCiAKICAgICBmaQogICBmaQpAQCAt
ODcxMyw4ICsxMTA5Nyw5IEBACiAgIExJQkpQRz0iIgogZmkKIAorCiBpZiB0ZXN0ICIkbm9fdGlm
ZiIgPSAibm8iIDsgdGhlbgotICAgZWNobyAiJGFzX21lOjg3MDY6IGNoZWNraW5nIGZvciBUSUZG
UmVhZFJHQkFJbWFnZSBpbiAtbHRpZmYiID4mNQorICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNo
ZWNraW5nIGZvciBUSUZGUmVhZFJHQkFJbWFnZSBpbiAtbHRpZmYiID4mNQogZWNobyAkRUNIT19O
ICJjaGVja2luZyBmb3IgVElGRlJlYWRSR0JBSW1hZ2UgaW4gLWx0aWZmLi4uICRFQ0hPX0MiID4m
NgogaWYgdGVzdCAiJHthY19jdl9saWJfdGlmZl9USUZGUmVhZFJHQkFJbWFnZStzZXR9IiA9IHNl
dDsgdGhlbgogICBlY2hvICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtODcyMiw4
ICsxMTEwNywxMSBAQAogICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCiBMSUJTPSItbHRp
ZmYgLWxtICRMSUJTIgogY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSA4NzE0
ICJjb25maWd1cmUiCi0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLwor
X0FDRU9GCitjYXQgY29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0
LiRhY19leHQgPDxfQUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogLyogT3ZlcnJpZGUg
YW55IGdjYzIgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KICNpZmRl
ZiBfX2NwbHVzcGx1cwpAQCAtODc0MSwyNyArMTExMjksMzkgQEAKIH0KIF9BQ0VPRgogcm0gLWYg
Y29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAi
JGFzX21lOjg3MzM6IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQor
aWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChl
dmFsICRhY19saW5rKSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFz
X21lOjg3MzY6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVz
dC5lcjEgPmNvbmZ0ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0
LmVyciA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQog
ICAoZXhpdCAkYWNfc3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29u
ZnRlc3QkYWNfZXhlZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo4NzM5OiBcIiRhY190cnlc
IiIpID4mNQorCSB7IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwg
dGVzdCAhIC1zIGNvbmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzog
XCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4mNQogICBhY19zdGF0dXM9JD8K
LSAgZWNobyAiJGFzX21lOjg3NDI6IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICBlY2hvICIkYXNf
bWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9
OyB9ICYmCisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZh
bCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKKyAgKGV2YWwgJGFjX3Ry
eSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRh
Y19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19jdl9s
aWJfdGlmZl9USUZGUmVhZFJHQkFJbWFnZT15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWls
ZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14v
fCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9saWJfdGlmZl9USUZGUmVhZFJHQkFJ
bWFnZT1ubwogZmkKLXJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0
IGNvbmZ0ZXN0LiRhY19leHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0
IFwKKyAgICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBMSUJTPSRhY19j
aGVja19saWJfc2F2ZV9MSUJTCiBmaQotZWNobyAiJGFzX21lOjg3NTM6IHJlc3VsdDogJGFjX2N2
X2xpYl90aWZmX1RJRkZSZWFkUkdCQUltYWdlIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBy
ZXN1bHQ6ICRhY19jdl9saWJfdGlmZl9USUZGUmVhZFJHQkFJbWFnZSIgPiY1CiBlY2hvICIke0VD
SE9fVH0kYWNfY3ZfbGliX3RpZmZfVElGRlJlYWRSR0JBSW1hZ2UiID4mNgogaWYgdGVzdCAkYWNf
Y3ZfbGliX3RpZmZfVElGRlJlYWRSR0JBSW1hZ2UgPSB5ZXM7IHRoZW4KICAgTElCVElGRj0iLWx0
aWZmIgpAQCAtODc3Niw4ICsxMTE3Niw5IEBACiAgIExJQlRJRkY9IiIKIGZpCiAKKwogaWYgdGVz
dCAiJG5vX3BuZyIgPSAibm8iIDsgdGhlbgotICAgZWNobyAiJGFzX21lOjg3Njk6IGNoZWNraW5n
IGZvciBwbmdfc3RhcnRfcmVhZF9pbWFnZSBpbiAtbHBuZyIgPiY1CisgICBlY2hvICIkYXNfbWU6
JExJTkVOTzogY2hlY2tpbmcgZm9yIHBuZ19zdGFydF9yZWFkX2ltYWdlIGluIC1scG5nIiA+JjUK
IGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIHBuZ19zdGFydF9yZWFkX2ltYWdlIGluIC1scG5n
Li4uICRFQ0hPX0MiID4mNgogaWYgdGVzdCAiJHthY19jdl9saWJfcG5nX3BuZ19zdGFydF9yZWFk
X2ltYWdlK3NldH0iID0gc2V0OyB0aGVuCiAgIGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9f
QyIgPiY2CkBAIC04Nzg1LDggKzExMTg2LDExIEBACiAgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9
JExJQlMKIExJQlM9Ii1scG5nICAkTElCUyIKIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VP
RgotI2xpbmUgODc3NyAiY29uZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25m
ZGVmcy5oLiAgKi8KK19BQ0VPRgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0Citj
YXQgPj5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAK
IC8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJv
ci4gICovCiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTg4MDQsMjcgKzExMjA4LDM5IEBACiB9CiBf
QUNFT0YKIHJtIC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7
IChldmFsIGVjaG8gIiRhc19tZTo4Nzk2OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFj
X2xpbmspIDI+JjUKK2lmIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtc
IiIpID4mNQorICAoZXZhbCAkYWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/
Ci0gIGVjaG8gIiRhc19tZTo4Nzk5OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAn
XiAqKycgY29uZnRlc3QuZXIxID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisg
IGNhdCBjb25mdGVzdC5lcnIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5
PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODgw
MjogXCIkYWNfdHJ5XCIiKSA+JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9m
bGFnIgorCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAg
YWNfc3RhdHVzPSQ/CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+
JjUKKyAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29u
ZnRlc3QkYWNfZXhlZXh0JworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190
cnlcIiIpID4mNQogICAoZXZhbCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hv
ICIkYXNfbWU6ODgwNTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElO
RU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRo
ZW4KICAgYWNfY3ZfbGliX3BuZ19wbmdfc3RhcnRfcmVhZF9pbWFnZT15ZXMKIGVsc2UKICAgZWNo
byAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0
ID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9saWJfcG5n
X3BuZ19zdGFydF9yZWFkX2ltYWdlPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBj
b25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNv
bmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRh
Y19leHQKIExJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNfbWU6ODgx
NjogcmVzdWx0OiAkYWNfY3ZfbGliX3BuZ19wbmdfc3RhcnRfcmVhZF9pbWFnZSIgPiY1CitlY2hv
ICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX3BuZ19wbmdfc3RhcnRfcmVhZF9p
bWFnZSIgPiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfbGliX3BuZ19wbmdfc3RhcnRfcmVhZF9p
bWFnZSIgPiY2CiBpZiB0ZXN0ICRhY19jdl9saWJfcG5nX3BuZ19zdGFydF9yZWFkX2ltYWdlID0g
eWVzOyB0aGVuCiAgIExJQlBORz0iLWxwbmciCkBAIC04ODM5LDggKzExMjU1LDkgQEAKICAgTElC
UE5HPSIiCiBmaQogCisKIGlmIHRlc3QgIiRub19sY21zIiA9ICJubyIgOyB0aGVuCi0gICBlY2hv
ICIkYXNfbWU6ODgzMjogY2hlY2tpbmcgZm9yIGNtc09wZW5Qcm9maWxlRnJvbUZpbGUgaW4gLWxs
Y21zIiA+JjUKKyAgIGVjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgY21zT3BlblBy
b2ZpbGVGcm9tRmlsZSBpbiAtbGxjbXMiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3Ig
Y21zT3BlblByb2ZpbGVGcm9tRmlsZSBpbiAtbGxjbXMuLi4gJEVDSE9fQyIgPiY2CiBpZiB0ZXN0
ICIke2FjX2N2X2xpYl9sY21zX2Ntc09wZW5Qcm9maWxlRnJvbUZpbGUrc2V0fSIgPSBzZXQ7IHRo
ZW4KICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTg4NDgsOCArMTEy
NjUsMTEgQEAKICAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUwogTElCUz0iLWxsY21zIC1s
bSAkTElCUyIKIGNhdCA+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgotI2xpbmUgODg0MCAiY29u
ZmlndXJlIgotI2luY2x1ZGUgImNvbmZkZWZzLmgiCisvKiBjb25mZGVmcy5oLiAgKi8KK19BQ0VP
RgorY2F0IGNvbmZkZWZzLmggPj5jb25mdGVzdC4kYWNfZXh0CitjYXQgPj5jb25mdGVzdC4kYWNf
ZXh0IDw8X0FDRU9GCisvKiBlbmQgY29uZmRlZnMuaC4gICovCiAKIC8qIE92ZXJyaWRlIGFueSBn
Y2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4gICovCiAjaWZkZWYgX19j
cGx1c3BsdXMKQEAgLTg4NjcsMjcgKzExMjg3LDM5IEBACiB9CiBfQUNFT0YKIHJtIC1mIGNvbmZ0
ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0Ci1pZiB7IChldmFsIGVjaG8gIiRhc19t
ZTo4ODU5OiBcIiRhY19saW5rXCIiKSA+JjUKLSAgKGV2YWwgJGFjX2xpbmspIDI+JjUKK2lmIHsg
KGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX2xpbmtcIiIpID4mNQorICAoZXZhbCAk
YWNfbGluaykgMj5jb25mdGVzdC5lcjEKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo4
ODYyOiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXIx
ID5jb25mdGVzdC5lcnIKKyAgcm0gLWYgY29uZnRlc3QuZXIxCisgIGNhdCBjb25mdGVzdC5lcnIg
PiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKICAgKGV4
aXQgJGFjX3N0YXR1cyk7IH0gJiYKLSAgICAgICAgIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0
JGFjX2V4ZWV4dCcKLSAgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODg2NTogXCIkYWNfdHJ5XCIiKSA+
JjUKKwkgeyBhY190cnk9J3Rlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIgorCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnInCisgIHsgKGV2YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFj
X3RyeVwiIikgPiY1CisgIChldmFsICRhY190cnkpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgIGVj
aG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgKGV4aXQgJGFjX3N0
YXR1cyk7IH07IH0gJiYKKwkgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0Jwor
ICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQogICAoZXZh
bCAkYWNfdHJ5KSAyPiY1CiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6ODg2ODogXCQ/
ID0gJGFjX3N0YXR1cyIgPiY1CisgIGVjaG8gIiRhc19tZTokTElORU5POiBcJD8gPSAkYWNfc3Rh
dHVzIiA+JjUKICAgKGV4aXQgJGFjX3N0YXR1cyk7IH07IH07IHRoZW4KICAgYWNfY3ZfbGliX2xj
bXNfY21zT3BlblByb2ZpbGVGcm9tRmlsZT15ZXMKIGVsc2UKICAgZWNobyAiJGFzX21lOiBmYWls
ZWQgcHJvZ3JhbSB3YXM6IiA+JjUKLWNhdCBjb25mdGVzdC4kYWNfZXh0ID4mNQorc2VkICdzL14v
fCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCiBhY19jdl9saWJfbGNtc19jbXNPcGVuUHJvZmls
ZUZyb21GaWxlPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19l
eGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19v
YmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKIExJQlM9
JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNfbWU6ODg3OTogcmVzdWx0OiAk
YWNfY3ZfbGliX2xjbXNfY21zT3BlblByb2ZpbGVGcm9tRmlsZSIgPiY1CitlY2hvICIkYXNfbWU6
JExJTkVOTzogcmVzdWx0OiAkYWNfY3ZfbGliX2xjbXNfY21zT3BlblByb2ZpbGVGcm9tRmlsZSIg
PiY1CiBlY2hvICIke0VDSE9fVH0kYWNfY3ZfbGliX2xjbXNfY21zT3BlblByb2ZpbGVGcm9tRmls
ZSIgPiY2CiBpZiB0ZXN0ICRhY19jdl9saWJfbGNtc19jbXNPcGVuUHJvZmlsZUZyb21GaWxlID0g
eWVzOyB0aGVuCiAgIExJQkxDTVM9Ii1sbGNtcyIKQEAgLTg5MDIsOCArMTEzMzQsOSBAQAogICBM
SUJMQ01TPSIiCiBmaQogCisKIGlmIHRlc3QgIiRub19tbmciID0gIm5vIiA7IHRoZW4KLSAgIGVj
aG8gIiRhc19tZTo4ODk1OiBjaGVja2luZyBmb3IgbW5nX3NldGNiX29wZW5zdHJlYW0gaW4gLWxt
bmciID4mNQorICAgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNraW5nIGZvciBtbmdfc2V0Y2Jf
b3BlbnN0cmVhbSBpbiAtbG1uZyIgPiY1CiBlY2hvICRFQ0hPX04gImNoZWNraW5nIGZvciBtbmdf
c2V0Y2Jfb3BlbnN0cmVhbSBpbiAtbG1uZy4uLiAkRUNIT19DIiA+JjYKIGlmIHRlc3QgIiR7YWNf
Y3ZfbGliX21uZ19tbmdfc2V0Y2Jfb3BlbnN0cmVhbStzZXR9IiA9IHNldDsgdGhlbgogICBlY2hv
ICRFQ0hPX04gIihjYWNoZWQpICRFQ0hPX0MiID4mNgpAQCAtODkxMSw4ICsxMTM0NCwxMSBAQAog
ICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCiBMSUJTPSItbG1uZyAgJExJQlMiCiBjYXQg
PmNvbmZ0ZXN0LiRhY19leHQgPDxfQUNFT0YKLSNsaW5lIDg5MDMgImNvbmZpZ3VyZSIKLSNpbmNs
dWRlICJjb25mZGVmcy5oIgorLyogY29uZmRlZnMuaC4gICovCitfQUNFT0YKK2NhdCBjb25mZGVm
cy5oID4+Y29uZnRlc3QuJGFjX2V4dAorY2F0ID4+Y29uZnRlc3QuJGFjX2V4dCA8PF9BQ0VPRgor
LyogZW5kIGNvbmZkZWZzLmguICAqLwogCiAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5hbCBw
cm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC04
OTMwLDI3ICsxMTM2NiwzOSBAQAogfQogX0FDRU9GCiBybSAtZiBjb25mdGVzdC4kYWNfb2JqZXh0
IGNvbmZ0ZXN0JGFjX2V4ZWV4dAotaWYgeyAoZXZhbCBlY2hvICIkYXNfbWU6ODkyMjogXCIkYWNf
bGlua1wiIikgPiY1Ci0gIChldmFsICRhY19saW5rKSAyPiY1CitpZiB7IChldmFsIGVjaG8gIiRh
c19tZTokTElORU5POiBcIiRhY19saW5rXCIiKSA+JjUKKyAgKGV2YWwgJGFjX2xpbmspIDI+Y29u
ZnRlc3QuZXIxCiAgIGFjX3N0YXR1cz0kPwotICBlY2hvICIkYXNfbWU6ODkyNTogXCQ/ID0gJGFj
X3N0YXR1cyIgPiY1CisgIGdyZXAgLXYgJ14gKisnIGNvbmZ0ZXN0LmVyMSA+Y29uZnRlc3QuZXJy
CisgIHJtIC1mIGNvbmZ0ZXN0LmVyMQorICBjYXQgY29uZnRlc3QuZXJyID4mNQorICBlY2hvICIk
YXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChleGl0ICRhY19zdGF0dXMp
OyB9ICYmCi0gICAgICAgICB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCi0g
IHsgKGV2YWwgZWNobyAiJGFzX21lOjg5Mjg6IFwiJGFjX3RyeVwiIikgPiY1CisJIHsgYWNfdHJ5
PSd0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIKKwkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyJworICB7IChldmFsIGVjaG8gIiRhc19tZTokTElORU5POiBcIiRhY190cnlcIiIpID4mNQor
ICAoZXZhbCAkYWNfdHJ5KSAyPiY1CisgIGFjX3N0YXR1cz0kPworICBlY2hvICIkYXNfbWU6JExJ
TkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIChleGl0ICRhY19zdGF0dXMpOyB9OyB9ICYm
CisJIHsgYWNfdHJ5PSd0ZXN0IC1zIGNvbmZ0ZXN0JGFjX2V4ZWV4dCcKKyAgeyAoZXZhbCBlY2hv
ICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIiKSA+JjUKICAgKGV2YWwgJGFjX3RyeSkgMj4m
NQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjg5MzE6IFwkPyA9ICRhY19zdGF0dXMi
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CiAgIChl
eGl0ICRhY19zdGF0dXMpOyB9OyB9OyB0aGVuCiAgIGFjX2N2X2xpYl9tbmdfbW5nX3NldGNiX29w
ZW5zdHJlYW09eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIg
PiY1Ci1jYXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFj
X2V4dCA+JjUKKwogYWNfY3ZfbGliX21uZ19tbmdfc2V0Y2Jfb3BlbnN0cmVhbT1ubwogZmkKLXJt
IC1mIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19l
eHQKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICAgIGNvbmZ0
ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CiBMSUJTPSRhY19jaGVja19saWJfc2F2ZV9M
SUJTCiBmaQotZWNobyAiJGFzX21lOjg5NDI6IHJlc3VsdDogJGFjX2N2X2xpYl9tbmdfbW5nX3Nl
dGNiX29wZW5zdHJlYW0iID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJGFjX2N2
X2xpYl9tbmdfbW5nX3NldGNiX29wZW5zdHJlYW0iID4mNQogZWNobyAiJHtFQ0hPX1R9JGFjX2N2
X2xpYl9tbmdfbW5nX3NldGNiX29wZW5zdHJlYW0iID4mNgogaWYgdGVzdCAkYWNfY3ZfbGliX21u
Z19tbmdfc2V0Y2Jfb3BlbnN0cmVhbSA9IHllczsgdGhlbgogICBMSUJNTkc9Ii1sbW5nIgpAQCAt
ODk2NSwxMCArMTE0MTMsMTIgQEAKICAgTElCTU5HPSIiCiBmaQogCisKKwogaWYgdGVzdCAiJHVz
ZV9zZGwiID0gInllcyIgOyB0aGVuCiAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAic2Rs
LWNvbmZpZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCiBzZXQgZHVt
bXkgc2RsLWNvbmZpZzsgYWNfd29yZD0kMgotZWNobyAiJGFzX21lOjkwMjM6IGNoZWNraW5nIGZv
ciAkYWNfd29yZCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yICRhY193
b3JkIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICRFQ0hPX0Mi
ID4mNgogaWYgdGVzdCAiJHthY19jdl9wcm9nX3NkbF9jb25maWcrc2V0fSIgPSBzZXQ7IHRoZW4K
ICAgZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTg5NzYsMTUgKzExNDI2
LDE4IEBACiAgIGlmIHRlc3QgLW4gIiRzZGxfY29uZmlnIjsgdGhlbgogICBhY19jdl9wcm9nX3Nk
bF9jb25maWc9IiRzZGxfY29uZmlnIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4K
IGVsc2UKLSAgYWNfc2F2ZV9JRlM9JElGUzsgSUZTPSRhY19wYXRoX3NlcGFyYXRvcgotYWNfZHVt
bXk9IiRQQVRIIgotZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gIElGUz0kYWNfc2F2ZV9J
RlMKLSAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KLSAgJGFzX2V4ZWN1dGFibGVfcCAi
JGFjX2Rpci8kYWNfd29yZCIgfHwgY29udGludWUKLWFjX2N2X3Byb2dfc2RsX2NvbmZpZz0ieWVz
IgotZWNobyAiJGFzX21lOjkwMzg6IGZvdW5kICRhY19kaXIvJGFjX3dvcmQiID4mNQotYnJlYWsK
K2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBB
VEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGly
PS4KKyAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRv
CisgIGlmICRhc19leGVjdXRhYmxlX3AgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB0
aGVuCisgICAgYWNfY3ZfcHJvZ19zZGxfY29uZmlnPSJ5ZXMiCisgICAgZWNobyAiJGFzX21lOiRM
SU5FTk86IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFr
IDIKKyAgZmkKK2RvbmUKIGRvbmUKIAogICB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19zZGxfY29uZmln
IiAmJiBhY19jdl9wcm9nX3NkbF9jb25maWc9Im5vICIKQEAgLTg5OTIsMTAgKzExNDQ1LDEwIEBA
CiBmaQogc2RsX2NvbmZpZz0kYWNfY3ZfcHJvZ19zZGxfY29uZmlnCiBpZiB0ZXN0IC1uICIkc2Rs
X2NvbmZpZyI7IHRoZW4KLSAgZWNobyAiJGFzX21lOjkwNDc6IHJlc3VsdDogJHNkbF9jb25maWci
ID4mNQorICBlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAkc2RsX2NvbmZpZyIgPiY1CiBl
Y2hvICIke0VDSE9fVH0kc2RsX2NvbmZpZyIgPiY2CiBlbHNlCi0gIGVjaG8gIiRhc19tZTo5MDUw
OiByZXN1bHQ6IG5vIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4m
NQogZWNobyAiJHtFQ0hPX1R9bm8iID4mNgogZmkKIApAQCAtOTAwOSw4ICsxMTQ2MiwxMCBAQAog
ICBmaQogZmkKIAorCisKIGlmIHRlc3QgIiR1c2Vfb3BlbmdsIiA9ICJ5ZXMiIDsgdGhlbgotICBl
Y2hvICIkYXNfbWU6OTA2NTogY2hlY2tpbmcgZm9yIGdsRW5hYmxlIGluIC1sR0wiID4mNQorICBl
Y2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIGdsRW5hYmxlIGluIC1sR0wiID4mNQog
ZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgZ2xFbmFibGUgaW4gLWxHTC4uLiAkRUNIT19DIiA+
JjYKIGlmIHRlc3QgIiR7YWNfY3ZfbGliX0dMX2dsRW5hYmxlK3NldH0iID0gc2V0OyB0aGVuCiAg
IGVjaG8gJEVDSE9fTiAiKGNhY2hlZCkgJEVDSE9fQyIgPiY2CkBAIC05MDE4LDggKzExNDczLDEx
IEBACiAgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKIExJQlM9Ii1sR0wgLWxtICRMSUJT
IgogY2F0ID5jb25mdGVzdC4kYWNfZXh0IDw8X0FDRU9GCi0jbGluZSA5MDczICJjb25maWd1cmUi
Ci0jaW5jbHVkZSAiY29uZmRlZnMuaCIKKy8qIGNvbmZkZWZzLmguICAqLworX0FDRU9GCitjYXQg
Y29uZmRlZnMuaCA+PmNvbmZ0ZXN0LiRhY19leHQKK2NhdCA+PmNvbmZ0ZXN0LiRhY19leHQgPDxf
QUNFT0YKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KIAogLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50
ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KICNpZmRlZiBfX2NwbHVzcGx1
cwpAQCAtOTAzNywyNyArMTE0OTUsMzkgQEAKIH0KIF9BQ0VPRgogcm0gLWYgY29uZnRlc3QuJGFj
X29iamV4dCBjb25mdGVzdCRhY19leGVleHQKLWlmIHsgKGV2YWwgZWNobyAiJGFzX21lOjkwOTI6
IFwiJGFjX2xpbmtcIiIpID4mNQotICAoZXZhbCAkYWNfbGluaykgMj4mNQoraWYgeyAoZXZhbCBl
Y2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfbGlua1wiIikgPiY1CisgIChldmFsICRhY19saW5r
KSAyPmNvbmZ0ZXN0LmVyMQogICBhY19zdGF0dXM9JD8KLSAgZWNobyAiJGFzX21lOjkwOTU6IFwk
PyA9ICRhY19zdGF0dXMiID4mNQorICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcjEgPmNvbmZ0
ZXN0LmVycgorICBybSAtZiBjb25mdGVzdC5lcjEKKyAgY2F0IGNvbmZ0ZXN0LmVyciA+JjUKKyAg
ZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQogICAoZXhpdCAkYWNf
c3RhdHVzKTsgfSAmJgotICAgICAgICAgeyBhY190cnk9J3Rlc3QgLXMgY29uZnRlc3QkYWNfZXhl
ZXh0JwotICB7IChldmFsIGVjaG8gIiRhc19tZTo5MDk4OiBcIiRhY190cnlcIiIpID4mNQorCSB7
IGFjX3RyeT0ndGVzdCAteiAiJGFjX2Nfd2Vycm9yX2ZsYWciCisJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycicKKyAgeyAoZXZhbCBlY2hvICIkYXNfbWU6JExJTkVOTzogXCIkYWNfdHJ5XCIi
KSA+JjUKKyAgKGV2YWwgJGFjX3RyeSkgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgZWNobyAiJGFz
X21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICAoZXhpdCAkYWNfc3RhdHVzKTsg
fTsgfSAmJgorCSB7IGFjX3RyeT0ndGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQnCisgIHsgKGV2
YWwgZWNobyAiJGFzX21lOiRMSU5FTk86IFwiJGFjX3RyeVwiIikgPiY1CiAgIChldmFsICRhY190
cnkpIDI+JjUKICAgYWNfc3RhdHVzPSQ/Ci0gIGVjaG8gIiRhc19tZTo5MTAxOiBcJD8gPSAkYWNf
c3RhdHVzIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IFwkPyA9ICRhY19zdGF0dXMiID4m
NQogICAoZXhpdCAkYWNfc3RhdHVzKTsgfTsgfTsgdGhlbgogICBhY19jdl9saWJfR0xfZ2xFbmFi
bGU9eWVzCiBlbHNlCiAgIGVjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1Ci1j
YXQgY29uZnRlc3QuJGFjX2V4dCA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+
JjUKKwogYWNfY3ZfbGliX0dMX2dsRW5hYmxlPW5vCiBmaQotcm0gLWYgY29uZnRlc3QuJGFjX29i
amV4dCBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3Qu
ZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0
ZXN0LiRhY19leHQKIExJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKIGZpCi1lY2hvICIkYXNf
bWU6OTExMjogcmVzdWx0OiAkYWNfY3ZfbGliX0dMX2dsRW5hYmxlIiA+JjUKK2VjaG8gIiRhc19t
ZTokTElORU5POiByZXN1bHQ6ICRhY19jdl9saWJfR0xfZ2xFbmFibGUiID4mNQogZWNobyAiJHtF
Q0hPX1R9JGFjX2N2X2xpYl9HTF9nbEVuYWJsZSIgPiY2CiBpZiB0ZXN0ICRhY19jdl9saWJfR0xf
Z2xFbmFibGUgPSB5ZXM7IHRoZW4KICAgTElCR0w9Ii1sR0wiCkBAIC05MDcyLDEwICsxMTU0Miwx
MSBAQAogICBMSUJHTD0iIgogZmkKIAorCiBpZiB0ZXN0ICIkdXNlX2FsbGVncm8iID0gInllcyIg
OyB0aGVuCiAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiYWxsZWdyby1jb25maWciLCBz
byBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgogc2V0IGR1bW15IGFsbGVncm8t
Y29uZmlnOyBhY193b3JkPSQyCi1lY2hvICIkYXNfbWU6OTEzMDogY2hlY2tpbmcgZm9yICRhY193
b3JkIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4m
NQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gJEVDSE9fQyIgPiY2CiBp
ZiB0ZXN0ICIke2FjX2N2X3Byb2dfYWxsZWdyb19jb25maWcrc2V0fSIgPSBzZXQ7IHRoZW4KICAg
ZWNobyAkRUNIT19OICIoY2FjaGVkKSAkRUNIT19DIiA+JjYKQEAgLTkwODMsMTUgKzExNTU0LDE4
IEBACiAgIGlmIHRlc3QgLW4gIiRhbGxlZ3JvX2NvbmZpZyI7IHRoZW4KICAgYWNfY3ZfcHJvZ19h
bGxlZ3JvX2NvbmZpZz0iJGFsbGVncm9fY29uZmlnIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0
aGUgdGVzdC4KIGVsc2UKLSAgYWNfc2F2ZV9JRlM9JElGUzsgSUZTPSRhY19wYXRoX3NlcGFyYXRv
cgotYWNfZHVtbXk9IiRQQVRIIgotZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gIElGUz0k
YWNfc2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KLSAgJGFzX2V4ZWN1
dGFibGVfcCAiJGFjX2Rpci8kYWNfd29yZCIgfHwgY29udGludWUKLWFjX2N2X3Byb2dfYWxsZWdy
b19jb25maWc9InllcyIKLWVjaG8gIiRhc19tZTo5MTQ1OiBmb3VuZCAkYWNfZGlyLyRhY193b3Jk
IiA+JjUKLWJyZWFrCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3Ig
YXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19k
aXIiICYmIGFzX2Rpcj0uCisgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9l
eHRlbnNpb25zOyBkbworICBpZiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRhY193b3JkJGFj
X2V4ZWNfZXh0IjsgdGhlbgorICAgIGFjX2N2X3Byb2dfYWxsZWdyb19jb25maWc9InllcyIKKyAg
ICBlY2hvICIkYXNfbWU6JExJTkVOTzogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4
dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQogZG9uZQogCiAgIHRlc3QgLXogIiRhY19j
dl9wcm9nX2FsbGVncm9fY29uZmlnIiAmJiBhY19jdl9wcm9nX2FsbGVncm9fY29uZmlnPSJubyIK
QEAgLTkwOTksMTAgKzExNTczLDEwIEBACiBmaQogYWxsZWdyb19jb25maWc9JGFjX2N2X3Byb2df
YWxsZWdyb19jb25maWcKIGlmIHRlc3QgLW4gIiRhbGxlZ3JvX2NvbmZpZyI7IHRoZW4KLSAgZWNo
byAiJGFzX21lOjkxNTQ6IHJlc3VsdDogJGFsbGVncm9fY29uZmlnIiA+JjUKKyAgZWNobyAiJGFz
X21lOiRMSU5FTk86IHJlc3VsdDogJGFsbGVncm9fY29uZmlnIiA+JjUKIGVjaG8gIiR7RUNIT19U
fSRhbGxlZ3JvX2NvbmZpZyIgPiY2CiBlbHNlCi0gIGVjaG8gIiRhc19tZTo5MTU3OiByZXN1bHQ6
IG5vIiA+JjUKKyAgZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogbm8iID4mNQogZWNobyAi
JHtFQ0hPX1R9bm8iID4mNgogZmkKIApAQCAtOTExNiwyMyArMTE1OTAsMjggQEAKICAgZmkKIGZp
CiAKKworCiBpZiB0ZXN0ICIkdXNlX3dpbjMyIiA9ICJubyIgOyB0aGVuCiAgIExJQkdESTMyPSIi
CiBlbHNlCiAgIExJQkdESTMyPSItbGdkaTMyIgogZmkKIAorCisKIFNVUFBPUlRFRF9GT1JNQVRT
PSIiCiAKIGlmIHRlc3QgIiRub19ibXAiICA9ICJ5ZXMiICA7IHRoZW4KLSAgY2F0ID4+Y29uZmRl
ZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUgSUxfTk9f
Qk1QIDEKLUVPRgorX0FDRU9GCiAKIGVsc2UKICAgU1VQUE9SVEVEX0ZPUk1BVFM9JFNVUFBPUlRF
RF9GT1JNQVRTIkJNUCAiCiBmaQogCisKIGlmIHRlc3QgeCRub19ibXAgIT0gInh5ZXMiOyB0aGVu
CiAgIElMX05PX0JNUF9UUlVFPQogICBJTF9OT19CTVBfRkFMU0U9JyMnCkBAIC05MTQyLDE0ICsx
MTYyMSwxNSBAQAogZmkKIAogaWYgdGVzdCAiJG5vX2RjeCIgID0gInllcyIgIDsgdGhlbgotICBj
YXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2Rl
ZmluZSBJTF9OT19EQ1ggMQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFU
Uz0kU1VQUE9SVEVEX0ZPUk1BVFMiRENYICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX2RjeCAhPSAi
eHllcyI7IHRoZW4KICAgSUxfTk9fRENYX1RSVUU9CiAgIElMX05PX0RDWF9GQUxTRT0nIycKQEAg
LTkxNTksMTQgKzExNjM5LDE1IEBACiBmaQogCiBpZiB0ZXN0ICIkbm9fZGRzIiAgPSAieWVzIiAg
OyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxc
X0FDRU9GCiAjZGVmaW5lIElMX05PX0REUyAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBP
UlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJERFMgIgogZmkKIAorCiBpZiB0ZXN0IHgk
bm9fZGRzICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19ERFNfVFJVRT0KICAgSUxfTk9fRERTX0ZB
TFNFPScjJwpAQCAtOTE3NiwxNCArMTE2NTcsMTUgQEAKIGZpCiAKIGlmIHRlc3QgIiRub19kb29t
IiA9ICJ5ZXMiIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25m
ZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19ET09NIDEKLUVPRgorX0FDRU9GCiAKIGVs
c2UKICAgU1VQUE9SVEVEX0ZPUk1BVFM9JFNVUFBPUlRFRF9GT1JNQVRTIldBRCAiCiBmaQogCisK
IGlmIHRlc3QgeCRub19kb29tICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19ET09NX1RSVUU9CiAg
IElMX05PX0RPT01fRkFMU0U9JyMnCkBAIC05MTkzLDE0ICsxMTY3NSwxNSBAQAogZmkKIAogaWYg
dGVzdCAiJG5vX2dpZiIgID0gInllcyIgIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVP
RgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19HSUYgMQotRU9G
CitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMi
R0lGICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX2dpZiAhPSAieHllcyI7IHRoZW4KICAgSUxfTk9f
R0lGX1RSVUU9CiAgIElMX05PX0dJRl9GQUxTRT0nIycKQEAgLTkyMTAsMTQgKzExNjkzLDE1IEBA
CiBmaQogCiBpZiB0ZXN0ICIkbm9faWNvbiIgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZk
ZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5lIElMX05P
X0lDTyAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JU
RURfRk9STUFUUyJJQ08gIgogZmkKIAorCiBpZiB0ZXN0IHgkbm9faWNvbiAhPSAieHllcyI7IHRo
ZW4KICAgSUxfTk9fSUNPX1RSVUU9CiAgIElMX05PX0lDT19GQUxTRT0nIycKQEAgLTkyMjcsMTQg
KzExNzExLDE1IEBACiBmaQogCiBpZiB0ZXN0ICIkbm9fanBlZyIgPSAieWVzIiAgOyB0aGVuCi0g
IGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAj
ZGVmaW5lIElMX05PX0pQRyAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JN
QVRTPSRTVVBQT1JURURfRk9STUFUUyJKUEcgIgogZmkKIAorCiBpZiB0ZXN0IHgkbm9fanBlZyAh
PSAieHllcyI7IHRoZW4KICAgSUxfTk9fSlBHX1RSVUU9CiAgIElMX05PX0pQR19GQUxTRT0nIycK
QEAgLTkyNDQsMTQgKzExNzI5LDE1IEBACiBmaQogCiBpZiB0ZXN0ICIkbm9fbGlmIiAgPSAieWVz
IiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmgg
PDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX0xJRiAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNV
UFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJMSUYgIgogZmkKIAorCiBpZiB0ZXN0
IHgkbm9fbGlmICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19MSUZfVFJVRT0KICAgSUxfTk9fTElG
X0ZBTFNFPScjJwpAQCAtOTI2MSwxNCArMTE3NDcsMTUgQEAKIGZpCiAKIGlmIHRlc3QgIiRub19s
Y21zIiAgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+
PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX0xDTVMgMQotRU9GCitfQUNFT0YK
IAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMiTENNUyAiCiBm
aQogCisKIGlmIHRlc3QgeCRub19sY21zICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19MQ01TX1RS
VUU9CiAgIElMX05PX0xDTVNfRkFMU0U9JyMnCkBAIC05Mjc4LDE0ICsxMTc2NSwxNSBAQAogZmkK
IAogaWYgdGVzdCAiJG5vX21kbCIgID0gInllcyIgIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5o
IDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19NREwg
MQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZP
Uk1BVFMiTURMICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX21kbCAhPSAieHllcyI7IHRoZW4KICAg
SUxfTk9fTURMX1RSVUU9CiAgIElMX05PX01ETF9GQUxTRT0nIycKQEAgLTkyOTUsMTQgKzExNzgz
LDE1IEBACiBmaQogCiBpZiB0ZXN0ICIkbm9fbW5nIiAgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+
PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5l
IElMX05PX01ORyAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JNQVRTPSRT
VVBQT1JURURfRk9STUFUUyJNTkcgIgogZmkKIAorCiBpZiB0ZXN0IHgkbm9fbW5nICE9ICJ4eWVz
IjsgdGhlbgogICBJTF9OT19NTkdfVFJVRT0KICAgSUxfTk9fTU5HX0ZBTFNFPScjJwpAQCAtOTMx
MSwxNiArMTE4MDAsMTYgQEAKICAgSUxfTk9fTU5HX0ZBTFNFPQogZmkKIAotCiBpZiB0ZXN0ICIk
bm9fcGNkIiAgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNh
dCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX1BDRCAxCi1FT0YKK19BQ0VP
RgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJQQ0QgIgog
ZmkKIAorCiBpZiB0ZXN0IHgkbm9fcGNkICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19QQ0RfVFJV
RT0KICAgSUxfTk9fUENEX0ZBTFNFPScjJwpAQCAtOTMyOSwxNiArMTE4MTgsMTYgQEAKICAgSUxf
Tk9fUENEX0ZBTFNFPQogZmkKIAotCiBpZiB0ZXN0ICIkbm9fcGN4IiAgPSAieWVzIiAgOyB0aGVu
Ci0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9G
CiAjZGVmaW5lIElMX05PX1BDWCAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9G
T1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJQQ1ggIgogZmkKIAorCiBpZiB0ZXN0IHgkbm9fcGN4
ICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19QQ1hfVFJVRT0KICAgSUxfTk9fUENYX0ZBTFNFPScj
JwpAQCAtOTM0NywxNiArMTE4MzYsMTYgQEAKICAgSUxfTk9fUENYX0ZBTFNFPQogZmkKIAotCiBp
ZiB0ZXN0ICIkbm9fcGljIiAgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxc
RU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX1BJQyAxCi1F
T0YKK19BQ0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFU
UyJQSUMgIgogZmkKIAorCiBpZiB0ZXN0IHgkbm9fcGljICE9ICJ4eWVzIjsgdGhlbgogICBJTF9O
T19QSUNfVFJVRT0KICAgSUxfTk9fUElDX0ZBTFNFPScjJwpAQCAtOTM2NSwxNiArMTE4NTQsMTYg
QEAKICAgSUxfTk9fUElDX0ZBTFNFPQogZmkKIAotCiBpZiB0ZXN0ICIkbm9fcGl4IiAgPSAieWVz
IiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmgg
PDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX1BJWCAxCi1FT0YKK19BQ0VPRgogCiBlbHNlCiAgIFNV
UFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJQSVggIgogZmkKIAorCiBpZiB0ZXN0
IHgkbm9fcGl4ICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19QSVhfVFJVRT0KICAgSUxfTk9fUElY
X0ZBTFNFPScjJwpAQCAtOTM4MywxNyArMTE4NzIsMTYgQEAKICAgSUxfTk9fUElYX0ZBTFNFPQog
ZmkKIAotCi0KIGlmIHRlc3QgIiRub19wbmciICA9ICJ5ZXMiICA7IHRoZW4KLSAgY2F0ID4+Y29u
ZmRlZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUgSUxf
Tk9fUE5HIDEKLUVPRgorX0FDRU9GCiAKIGVsc2UKICAgU1VQUE9SVEVEX0ZPUk1BVFM9JFNVUFBP
UlRFRF9GT1JNQVRTIlBORyAiCiBmaQogCisKIGlmIHRlc3QgeCRub19wbmcgIT0gInh5ZXMiOyB0
aGVuCiAgIElMX05PX1BOR19UUlVFPQogICBJTF9OT19QTkdfRkFMU0U9JyMnCkBAIC05NDAzLDE0
ICsxMTg5MSwxNSBAQAogZmkKIAogaWYgdGVzdCAiJG5vX3BubSIgID0gInllcyIgIDsgdGhlbgot
ICBjYXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgog
I2RlZmluZSBJTF9OT19QTk0gMQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9S
TUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMiUE5NICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX3BubSAh
PSAieHllcyI7IHRoZW4KICAgSUxfTk9fUE5NX1RSVUU9CiAgIElMX05PX1BOTV9GQUxTRT0nIycK
QEAgLTk0MTksMTYgKzExOTA4LDE2IEBACiAgIElMX05PX1BOTV9GQUxTRT0KIGZpCiAKLQogaWYg
dGVzdCAiJG5vX3BzZCIgID0gInllcyIgIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVP
RgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19QU0QgMQotRU9G
CitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMi
UFNEICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX3BzZCAhPSAieHllcyI7IHRoZW4KICAgSUxfTk9f
UFNEX1RSVUU9CiAgIElMX05PX1BTRF9GQUxTRT0nIycKQEAgLTk0MzcsMTYgKzExOTI2LDE2IEBA
CiAgIElMX05PX1BTRF9GQUxTRT0KIGZpCiAKLQogaWYgdGVzdCAiJG5vX3BzcCIgID0gInllcyIg
IDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8
XF9BQ0VPRgogI2RlZmluZSBJTF9OT19QU1AgMQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQ
T1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMiUFNQICIKIGZpCiAKKwogaWYgdGVzdCB4
JG5vX3BzcCAhPSAieHllcyI7IHRoZW4KICAgSUxfTk9fUFNQX1RSVUU9CiAgIElMX05PX1BTUF9G
QUxTRT0nIycKQEAgLTk0NTUsMTYgKzExOTQ0LDE2IEBACiAgIElMX05PX1BTUF9GQUxTRT0KIGZp
CiAKLQogaWYgdGVzdCAiJG5vX3B4ciIgID0gInllcyIgIDsgdGhlbgotICBjYXQgPj5jb25mZGVm
cy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19Q
WFIgMQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVE
X0ZPUk1BVFMiUFhSICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX3B4ciAhPSAieHllcyI7IHRoZW4K
ICAgSUxfTk9fUFhSX1RSVUU9CiAgIElMX05PX1BYUl9GQUxTRT0nIycKQEAgLTk0NzMsMTYgKzEx
OTYyLDE2IEBACiAgIElMX05PX1BYUl9GQUxTRT0KIGZpCiAKLQogaWYgdGVzdCAiJG5vX3JhdyIg
ID0gInllcyIgIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25m
ZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTF9OT19SQVcgMQotRU9GCitfQUNFT0YKIAogZWxz
ZQogICBTVVBQT1JURURfRk9STUFUUz0kU1VQUE9SVEVEX0ZPUk1BVFMiUkFXICIKIGZpCiAKKwog
aWYgdGVzdCB4JG5vX3JhdyAhPSAieHllcyI7IHRoZW4KICAgSUxfTk9fUkFXX1RSVUU9CiAgIElM
X05PX1JBV19GQUxTRT0nIycKQEAgLTk0OTIsMTQgKzExOTgxLDE1IEBACiBmaQogCiBpZiB0ZXN0
ICIkbm9fc2dpIiAgPSAieWVzIiAgOyB0aGVuCi0gIGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisg
IGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAjZGVmaW5lIElMX05PX1NHSSAxCi1FT0YKK19B
Q0VPRgogCiBlbHNlCiAgIFNVUFBPUlRFRF9GT1JNQVRTPSRTVVBQT1JURURfRk9STUFUUyJTR0kg
IgogZmkKIAorCiBpZiB0ZXN0IHgkbm9fc2dpICE9ICJ4eWVzIjsgdGhlbgogICBJTF9OT19TR0lf
VFJVRT0KICAgSUxfTk9fU0dJX0ZBTFNFPScjJwpAQCAtOTUwOSwxNCArMTE5OTksMTUgQEAKIGZp
CiAKIGlmIHRlc3QgIiRub190Z2EiICA9ICJ5ZXMiICA7IHRoZW4KLSAgY2F0ID4+Y29uZmRlZnMu
aCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUgSUxfTk9fVEdB
IDEKLUVPRgorX0FDRU9GCiAKIGVsc2UKICAgU1VQUE9SVEVEX0ZPUk1BVFM9JFNVUFBPUlRFRF9G
T1JNQVRTIlRHQSAiCiBmaQogCisKIGlmIHRlc3QgeCRub190Z2EgIT0gInh5ZXMiOyB0aGVuCiAg
IElMX05PX1RHQV9UUlVFPQogICBJTF9OT19UR0FfRkFMU0U9JyMnCkBAIC05NTI2LDE0ICsxMjAx
NywxNSBAQAogZmkKIAogaWYgdGVzdCAiJG5vX3RpZmYiID0gInllcyIgIDsgdGhlbgotICBjYXQg
Pj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmlu
ZSBJTF9OT19USUYgMQotRU9GCitfQUNFT0YKIAogZWxzZQogICBTVVBQT1JURURfRk9STUFUUz0k
U1VQUE9SVEVEX0ZPUk1BVFMiVElGICIKIGZpCiAKKwogaWYgdGVzdCB4JG5vX3RpZmYgIT0gInh5
ZXMiOyB0aGVuCiAgIElMX05PX1RJRl9UUlVFPQogICBJTF9OT19USUZfRkFMU0U9JyMnCkBAIC05
NTQyLDE2ICsxMjAzNCwxNiBAQAogICBJTF9OT19USUZfRkFMU0U9CiBmaQogCi0KIGlmIHRlc3Qg
IiRub193YWwiICA9ICJ5ZXMiICA7IHRoZW4KLSAgY2F0ID4+Y29uZmRlZnMuaCA8PFxFT0YKKyAg
Y2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUgSUxfTk9fV0FMIDEKLUVPRgorX0FD
RU9GCiAKIGVsc2UKICAgU1VQUE9SVEVEX0ZPUk1BVFM9JFNVUFBPUlRFRF9GT1JNQVRTIldBTCAi
CiBmaQogCisKIGlmIHRlc3QgeCRub193YWwgIT0gInh5ZXMiOyB0aGVuCiAgIElMX05PX1dBTF9U
UlVFPQogICBJTF9OT19XQUxfRkFMU0U9JyMnCkBAIC05NTYwLDE2ICsxMjA1MiwxNiBAQAogICBJ
TF9OT19XQUxfRkFMU0U9CiBmaQogCi0KIGlmIHRlc3QgIiRub194cG0iICA9ICJ5ZXMiICA7IHRo
ZW4KLSAgY2F0ID4+Y29uZmRlZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNF
T0YKICNkZWZpbmUgSUxfTk9fWFBNIDEKLUVPRgorX0FDRU9GCiAKIGVsc2UKICAgU1VQUE9SVEVE
X0ZPUk1BVFM9JFNVUFBPUlRFRF9GT1JNQVRTIlhQTSAiCiBmaQogCisKIGlmIHRlc3QgeCRub194
cG0gIT0gInh5ZXMiOyB0aGVuCiAgIElMX05PX1hQTV9UUlVFPQogICBJTF9OT19YUE1fRkFMU0U9
JyMnCkBAIC05NTc5LDgyICsxMjA3MSw4OCBAQAogZmkKIAogCi1lY2hvICIkYXNfbWU6OTUxOTog
cmVzdWx0OiAgIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICAiID4mNQogZWNo
byAiJHtFQ0hPX1R9ICIgPiY2Ci1lY2hvICIkYXNfbWU6OTUyMTogcmVzdWx0OiArLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsiID4mNQorZWNobyAiJGFzX21lOiRMSU5F
Tk86IHJlc3VsdDogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rIiA+
JjUKIGVjaG8gIiR7RUNIT19UfSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKyIgPiY2Ci1lY2hvICIkYXNfbWU6OTUyMzogcmVzdWx0OiB8ICAgICBJTCBsaWJyYXJ5ICBT
dXBwb3J0ZWQgZm9ybWF0cyAgICAgIHwiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3Vs
dDogfCAgICAgSUwgbGlicmFyeSAgU3VwcG9ydGVkIGZvcm1hdHMgICAgICB8IiA+JjUKIGVjaG8g
IiR7RUNIT19UfXwgICAgIElMIGxpYnJhcnkgIFN1cHBvcnRlZCBmb3JtYXRzICAgICAgfCIgPiY2
Ci1lY2hvICIkYXNfbWU6OTUyNTogcmVzdWx0OiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tKyIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0
OiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKyIgPiY1
CiBlY2hvICIke0VDSE9fVH0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tKyIgPiY2Ci1lY2hvICIkYXNfbWU6OTUyNzogcmVzdWx0OiAkU1VQUE9SVEVEX0ZP
Uk1BVFMiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogJFNVUFBPUlRFRF9GT1JN
QVRTIiA+JjUKIGVjaG8gIiR7RUNIT19UfSRTVVBQT1JURURfRk9STUFUUyIgPiY2CiAKKwogU1VQ
UE9SVEVEX0FQST0iIgogCiBpZiB0ZXN0ICIkdXNlX2FsbGVncm8iID0gInllcyIgOyB0aGVuCi0g
IGNhdCA+PmNvbmZkZWZzLmggPDxcRU9GCisgIGNhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9GCiAj
ZGVmaW5lIElMVVRfVVNFX0FMTEVHUk8gMQotRU9GCitfQUNFT0YKIAogICBTVVBQT1JURURfQVBJ
PSRTVVBQT1JURURfQVBJIkFsbGVncm8gIgogZmkKIAogaWYgdGVzdCAiJHVzZV9kaXJlY3R4IiA9
ICJ5ZXMiIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVPRgorICBjYXQgPj5jb25mZGVm
cy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTFVUX1VTRV9ESVJFQ1RYOCAxCi1FT0YKK19BQ0VPRgog
CiAgIFNVUFBPUlRFRF9BUFBJPSRTVVBQT1JURURfQVBJIkRpcmVjdHg4ICIKIGZpCiAKIGlmIHRl
c3QgIiR1c2Vfb3BlbmdsIiA9ICJ5ZXMiIDsgdGhlbgotICBjYXQgPj5jb25mZGVmcy5oIDw8XEVP
RgorICBjYXQgPj5jb25mZGVmcy5oIDw8XF9BQ0VPRgogI2RlZmluZSBJTFVUX1VTRV9PUEVOR0wg
MQotRU9GCitfQUNFT0YKIAogICBTVVBQT1JURURfQVBJPSRTVVBQT1JURURfQVBJIk9wZW5HTCAi
CiBmaQogCiBpZiB0ZXN0ICIkdXNlX3NkbCIgPSAieWVzIiA7IHRoZW4KLSAgY2F0ID4+Y29uZmRl
ZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUgSUxVVF9V
U0VfU0RMIDEKLUVPRgorX0FDRU9GCiAKICAgU1VQUE9SVEVEX0FQST0kU1VQUE9SVEVEX0FQSSJT
REwgIgogZmkKIAogaWYgdGVzdCAiJHVzZV93aW4zMiIgPSAieWVzIiA7IHRoZW4KLSAgY2F0ID4+
Y29uZmRlZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNFT0YKICNkZWZpbmUg
SUxVVF9VU0VfV0lOMzIgMQotRU9GCitfQUNFT0YKIAogICBTVVBQT1JURURfQVBJPSRTVVBQT1JU
RURfQVBJIldpbjMyICIKIGZpCiAKIGlmIHRlc3QgIiR1c2VfZGlyZWN0eCIgPSAieWVzIiA7IHRo
ZW4KLSAgY2F0ID4+Y29uZmRlZnMuaCA8PFxFT0YKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PFxfQUNF
T0YKICNkZWZpbmUgSUxVVF9VU0VfRElSRUNUWDggMQotRU9GCitfQUNFT0YKIAogICBTVVBQT1JU
RURfQVBJPSRTVVBQT1JURURfQVBJIkRpcmVjdFg4ICIKIGZpCiAKLWVjaG8gIiRhc19tZTo5NTgw
OiByZXN1bHQ6ICAiID4mNQorZWNobyAiJGFzX21lOiRMSU5FTk86IHJlc3VsdDogICIgPiY1CiBl
Y2hvICIke0VDSE9fVH0gIiA+JjYKLWVjaG8gIiRhc19tZTo5NTgyOiByZXN1bHQ6ICstLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyIgPiY1CitlY2hvICIkYXNfbWU6JExJ
TkVOTzogcmVzdWx0OiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsi
ID4mNQogZWNobyAiJHtFQ0hPX1R9Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rIiA+JjYKLWVjaG8gIiRhc19tZTo5NTg0OiByZXN1bHQ6IHwgICAgICBJTFVUIGxpYnJh
cnkgIFN1cHBvcnRlZCBBUElzICAgICAgfCIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVz
dWx0OiB8ICAgICAgSUxVVCBsaWJyYXJ5ICBTdXBwb3J0ZWQgQVBJcyAgICAgIHwiID4mNQogZWNo
byAiJHtFQ0hPX1R9fCAgICAgIElMVVQgbGlicmFyeSAgU3VwcG9ydGVkIEFQSXMgICAgICB8IiA+
JjYKLWVjaG8gIiRhc19tZTo5NTg2OiByZXN1bHQ6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1
bHQ6ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rIiA+
JjUKIGVjaG8gIiR7RUNIT19UfSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0rIiA+JjYKLWVjaG8gIiRhc19tZTo5NTg4OiByZXN1bHQ6ICRTVVBQT1JURURf
QVBJIiA+JjUKK2VjaG8gIiRhc19tZTokTElORU5POiByZXN1bHQ6ICRTVVBQT1JURURfQVBJIiA+
JjUKIGVjaG8gIiR7RUNIT19UfSRTVVBQT1JURURfQVBJIiA+JjYKIAotZWNobyAiJGFzX21lOjk1
OTE6IHJlc3VsdDogICIgPiY1CitlY2hvICIkYXNfbWU6JExJTkVOTzogcmVzdWx0OiAgIiA+JjUK
IGVjaG8gIiR7RUNIT19UfSAiID4mNgogCi1hY19jb25maWdfZmlsZXM9IiRhY19jb25maWdfZmls
ZXMgTWFrZWZpbGUgc3JjLUlML01ha2VmaWxlIHNyYy1JTC9zcmMvTWFrZWZpbGUgc3JjLUlML2lu
Y2x1ZGUvTWFrZWZpbGUgc3JjLUlMVS9NYWtlZmlsZSBzcmMtSUxVL3NyYy9NYWtlZmlsZSBzcmMt
SUxVL2luY2x1ZGUvTWFrZWZpbGUgc3JjLUlMVVQvTWFrZWZpbGUgc3JjLUlMVVQvc3JjL01ha2Vm
aWxlIHNyYy1JTFVUL2luY2x1ZGUvTWFrZWZpbGUgaW5jbHVkZS9NYWtlZmlsZSBpbmNsdWRlL0lM
L01ha2VmaWxlIgorCisKKworCisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjX2NvbmZpZ19maWxlcz0iJGFjX2NvbmZpZ19m
aWxlcyBNYWtlZmlsZSBzcmMtSUwvTWFrZWZpbGUgc3JjLUlML3NyYy9NYWtlZmlsZSBzcmMtSUwv
aW5jbHVkZS9NYWtlZmlsZSBzcmMtSUxVL01ha2VmaWxlIHNyYy1JTFUvc3JjL01ha2VmaWxlIHNy
Yy1JTFUvaW5jbHVkZS9NYWtlZmlsZSBzcmMtSUxVVC9NYWtlZmlsZSBzcmMtSUxVVC9zcmMvTWFr
ZWZpbGUgc3JjLUlMVVQvaW5jbHVkZS9NYWtlZmlsZSBpbmNsdWRlL01ha2VmaWxlIGluY2x1ZGUv
SUwvTWFrZWZpbGUiCiAKIGNhdCA+Y29uZmNhY2hlIDw8XF9BQ0VPRgogIyBUaGlzIGZpbGUgaXMg
YSBzaGVsbCBzY3JpcHQgdGhhdCBjYWNoZXMgdGhlIHJlc3VsdHMgb2YgY29uZmlndXJlCkBAIC05
NjY2LDcgKzEyMTY0LDcgQEAKICMgY29uZmlnLnN0YXR1cyBvbmx5IHBheXMgYXR0ZW50aW9uIHRv
IHRoZSBjYWNoZSBmaWxlIGlmIHlvdSBnaXZlIGl0CiAjIHRoZSAtLXJlY2hlY2sgb3B0aW9uIHRv
IHJlcnVuIGNvbmZpZ3VyZS4KICMKLSMgYGFjX2N2X2Vudl9mb28nIHZhcmlhYmxlcyAoc2V0IG9y
IHVuc2V0KSB3aWxsIGJlIG92ZXJyaWRlbiB3aGVuCisjIGBhY19jdl9lbnZfZm9vJyB2YXJpYWJs
ZXMgKHNldCBvciB1bnNldCkgd2lsbCBiZSBvdmVycmlkZGVuIHdoZW4KICMgbG9hZGluZyB0aGlz
IGZpbGUsIG90aGVyICp1bnNldCogYGFjX2N2X2Zvbycgd2lsbCBiZSBhc3NpZ25lZCB0aGUKICMg
Zm9sbG93aW5nIHZhbHVlcy4KIApAQCAtOTY4NCwxMyArMTIxODIsMTMgQEAKICAgICAgICMgYHNl
dCcgZG9lcyBub3QgcXVvdGUgY29ycmVjdGx5LCBzbyBhZGQgcXVvdGVzIChkb3VibGUtcXVvdGUK
ICAgICAgICMgc3Vic3RpdHV0aW9uIHR1cm5zIFxcXFwgaW50byBcXCwgYW5kIHNlZCB0dXJucyBc
XCBpbnRvIFwpLgogICAgICAgc2VkIC1uIFwKLSAgICAgICAgInMvJy8nXFxcXCcnL2c7Ci0gICAg
CSAgcy9eXFwoW18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qXFwpPVxcKC4qXFwp
L1xcMT0nXFwyJy9wIgorCSJzLycvJ1xcXFwnJy9nOworCSAgcy9eXFwoW18kYXNfY3JfYWxudW1d
Kl9jdl9bXyRhc19jcl9hbG51bV0qXFwpPVxcKC4qXFwpL1xcMT0nXFwyJy9wIgogICAgICAgOzsK
ICAgICAqKQogICAgICAgIyBgc2V0JyBxdW90ZXMgY29ycmVjdGx5IGFzIHJlcXVpcmVkIGJ5IFBP
U0lYLCBzbyBkbyBub3QgYWRkIHF1b3Rlcy4KICAgICAgIHNlZCAtbiBcCi0gICAgICAgICJzL15c
XChbXyRhc19jcl9hbG51bV0qX2N2X1tfJGFzX2NyX2FsbnVtXSpcXCk9XFwoLipcXCkvXFwxPVxc
Mi9wIgorCSJzL15cXChbXyRhc19jcl9hbG51bV0qX2N2X1tfJGFzX2NyX2FsbnVtXSpcXCk9XFwo
LipcXCkvXFwxPVxcMi9wIgogICAgICAgOzsKICAgICBlc2FjOwogfSB8CkBAIC05NzAxLDcgKzEy
MTk5LDcgQEAKICAgICAgdCBlbmQKICAgICAgL15hY19jdl9lbnYvIXMvXlwoW149XSpcKT1cKC4q
XCkkL1wxPSR7XDE9XDJ9LwogICAgICA6IGVuZCcgPj5jb25mY2FjaGUKLWlmIGNtcCAtcyAkY2Fj
aGVfZmlsZSBjb25mY2FjaGU7IHRoZW4gOjsgZWxzZQoraWYgZGlmZiAkY2FjaGVfZmlsZSBjb25m
Y2FjaGUgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDo7IGVsc2UKICAgaWYgdGVzdCAtdyAkY2FjaGVf
ZmlsZTsgdGhlbgogICAgIHRlc3QgIngkY2FjaGVfZmlsZSIgIT0gIngvZGV2L251bGwiICYmIGVj
aG8gInVwZGF0aW5nIGNhY2hlICRjYWNoZV9maWxlIgogICAgIGNhdCBjb25mY2FjaGUgPiRjYWNo
ZV9maWxlCkBAIC05NzIwLDQ3ICsxMjIxOCwyNDAgQEAKICMgdHJhaWxpbmcgY29sb25zIGFuZCB0
aGVuIHJlbW92ZSB0aGUgd2hvbGUgbGluZSBpZiBWUEFUSCBiZWNvbWVzIGVtcHR5CiAjIChhY3R1
YWxseSB3ZSBsZWF2ZSBhbiBlbXB0eSBsaW5lIHRvIHByZXNlcnZlIGxpbmUgbnVtYmVycykuCiBp
ZiB0ZXN0ICJ4JHNyY2RpciIgPSB4LjsgdGhlbgotICBhY192cHN1Yj0nL15bIAldKlZQQVRIWyAJ
XSo9L3sKKyAgYWNfdnBzdWI9Jy9eWwkgXSpWUEFUSFsJIF0qPS97CiBzLzoqXCQoc3JjZGlyKToq
LzovOwogcy86Klwke3NyY2Rpcn06Ki86LzsKIHMvOipAc3JjZGlyQDoqLzovOwotcy9eXChbXj1d
Kj1bIAldKlwpOiovXDEvOworcy9eXChbXj1dKj1bCSBdKlwpOiovXDEvOwogcy86KiQvLzsKLXMv
XltePV0qPVsgCV0qJC8vOworcy9eW149XSo9WwkgXSokLy87CiB9JwogZmkKIAogREVGUz0tREhB
VkVfQ09ORklHX0gKIAorYWNfbGlib2Jqcz0KK2FjX2x0bGlib2Jqcz0KK2ZvciBhY19pIGluIDog
JExJQk9CSlM7IGRvIHRlc3QgIngkYWNfaSIgPSB4OiAmJiBjb250aW51ZQorICAjIDEuIFJlbW92
ZSB0aGUgZXh0ZW5zaW9uLCBhbmQgJFUgaWYgYWxyZWFkeSBpbnN0YWxsZWQuCisgIGFjX2k9YGVj
aG8gIiRhY19pIiB8CisJIHNlZCAncy9cJFVcLi8uLztzL1wubyQvLztzL1wub2JqJC8vJ2AKKyAg
IyAyLiBBZGQgdGhlbS4KKyAgYWNfbGlib2Jqcz0iJGFjX2xpYm9ianMgJGFjX2lcJFUuJGFjX29i
amV4dCIKKyAgYWNfbHRsaWJvYmpzPSIkYWNfbHRsaWJvYmpzICRhY19pIickVS5sbycKK2RvbmUK
K0xJQk9CSlM9JGFjX2xpYm9ianMKKworTFRMSUJPQkpTPSRhY19sdGxpYm9ianMKKworCisKIDog
JHtDT05GSUdfU1RBVFVTPS4vY29uZmlnLnN0YXR1c30KIGFjX2NsZWFuX2ZpbGVzX3NhdmU9JGFj
X2NsZWFuX2ZpbGVzCiBhY19jbGVhbl9maWxlcz0iJGFjX2NsZWFuX2ZpbGVzICRDT05GSUdfU1RB
VFVTIgoteyBlY2hvICIkYXNfbWU6OTY3NTogY3JlYXRpbmcgJENPTkZJR19TVEFUVVMiID4mNQor
eyBlY2hvICIkYXNfbWU6JExJTkVOTzogY3JlYXRpbmcgJENPTkZJR19TVEFUVVMiID4mNQogZWNo
byAiJGFzX21lOiBjcmVhdGluZyAkQ09ORklHX1NUQVRVUyIgPiY2O30KIGNhdCA+JENPTkZJR19T
VEFUVVMgPDxfQUNFT0YKICMhICRTSEVMTAotIyBHZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBj
b25maWd1cmUuCisjIEdlbmVyYXRlZCBieSAkYXNfbWUuCiAjIFJ1biB0aGlzIGZpbGUgdG8gcmVj
cmVhdGUgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbi4KICMgQ29tcGlsZXIgb3V0cHV0IHByb2R1
Y2VkIGJ5IGNvbmZpZ3VyZSwgdXNlZnVsIGZvciBkZWJ1Z2dpbmcKICMgY29uZmlndXJlLCBpcyBp
biBjb25maWcubG9nIGlmIGl0IGV4aXN0cy4KIAogZGVidWc9ZmFsc2UKK2FjX2NzX3JlY2hlY2s9
ZmFsc2UKK2FjX2NzX3NpbGVudD1mYWxzZQogU0hFTEw9XCR7Q09ORklHX1NIRUxMLSRTSEVMTH0K
LWFjX2NzX2ludm9jYXRpb249IlwkMCBcJEAiCi0KIF9BQ0VPRgogCiBjYXQgPj4kQ09ORklHX1NU
QVRVUyA8PFxfQUNFT0YKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgTTRzaCBJbml0
aWFsaXphdGlvbi4gICMjCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKwogIyBCZSBCb3Vy
bmUgY29tcGF0aWJsZQogaWYgdGVzdCAtbiAiJHtaU0hfVkVSU0lPTitzZXR9IiAmJiAoZW11bGF0
ZSBzaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCiAgIGVtdWxhdGUgc2gKICAgTlVMTENNRD06Cisg
ICMgWnNoIDMueCBhbmQgNC54IHBlcmZvcm1zIHdvcmQgc3BsaXR0aW5nIG9uICR7MSsiJEAifSwg
d2hpY2gKKyAgIyBpcyBjb250cmFyeSB0byBvdXIgdXNhZ2UuICBEaXNhYmxlIHRoaXMgZmVhdHVy
ZS4KKyAgYWxpYXMgLWcgJyR7MSsiJEAifSc9JyIkQCInCiBlbGlmIHRlc3QgLW4gIiR7QkFTSF9W
RVJTSU9OK3NldH0iICYmIChzZXQgLW8gcG9zaXgpID4vZGV2L251bGwgMj4mMTsgdGhlbgogICBz
ZXQgLW8gcG9zaXgKIGZpCitEVUFMQ0FTRT0xOyBleHBvcnQgRFVBTENBU0UgIyBmb3IgTUtTIHNo
CisKKyMgU3VwcG9ydCB1bnNldCB3aGVuIHBvc3NpYmxlLgoraWYgKCAoTUFJTD02MDsgdW5zZXQg
TUFJTCkgfHwgZXhpdCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgIGFzX3Vuc2V0PXVuc2V0Citl
bHNlCisgIGFzX3Vuc2V0PWZhbHNlCitmaQorCisKKyMgV29yayBhcm91bmQgYnVncyBpbiBwcmUt
My4wIFVXSU4ga3NoLgorJGFzX3Vuc2V0IEVOViBNQUlMIE1BSUxQQVRICitQUzE9JyQgJworUFMy
PSc+ICcKK1BTND0nKyAnCisKKyMgTkxTIG51aXNhbmNlcy4KK2ZvciBhc192YXIgaW4gXAorICBM
QU5HIExBTkdVQUdFIExDX0FERFJFU1MgTENfQUxMIExDX0NPTExBVEUgTENfQ1RZUEUgTENfSURF
TlRJRklDQVRJT04gXAorICBMQ19NRUFTVVJFTUVOVCBMQ19NRVNTQUdFUyBMQ19NT05FVEFSWSBM
Q19OQU1FIExDX05VTUVSSUMgTENfUEFQRVIgXAorICBMQ19URUxFUEhPTkUgTENfVElNRQorZG8K
KyAgaWYgKHNldCAreDsgdGVzdCAteiAiYChldmFsICRhc192YXI9QzsgZXhwb3J0ICRhc192YXIp
IDI+JjFgIik7IHRoZW4KKyAgICBldmFsICRhc192YXI9QzsgZXhwb3J0ICRhc192YXIKKyAgZWxz
ZQorICAgICRhc191bnNldCAkYXNfdmFyCisgIGZpCitkb25lCisKKyMgUmVxdWlyZWQgdG8gdXNl
IGJhc2VuYW1lLgoraWYgZXhwciBhIDogJ1woYVwpJyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAg
YXNfZXhwcj1leHByCitlbHNlCisgIGFzX2V4cHI9ZmFsc2UKK2ZpCisKK2lmIChiYXNlbmFtZSAv
KSA+L2Rldi9udWxsIDI+JjEgJiYgdGVzdCAiWGBiYXNlbmFtZSAvIDI+JjFgIiA9ICJYLyI7IHRo
ZW4KKyAgYXNfYmFzZW5hbWU9YmFzZW5hbWUKK2Vsc2UKKyAgYXNfYmFzZW5hbWU9ZmFsc2UKK2Zp
CisKIAogIyBOYW1lIG9mIHRoZSBleGVjdXRhYmxlLgotYXNfbWU9YGVjaG8gIiQwIiB8c2VkICdz
LC4qW1xcL10sLCdgCithc19tZT1gJGFzX2Jhc2VuYW1lICIkMCIgfHwKKyRhc19leHByIFgvIiQw
IiA6ICcuKi9cKFteL11bXi9dKlwpLyokJyBcfCBcCisJIFgiJDAiIDogJ1hcKC8vXCkkJyBcfCBc
CisJIFgiJDAiIDogJ1hcKC9cKSQnIFx8IFwKKwkgLiAgICAgOiAnXCguXCknIDI+L2Rldi9udWxs
IHx8CitlY2hvIFgvIiQwIiB8CisgICAgc2VkICcvXi4qXC9cKFteL11bXi9dKlwpXC8qJC97IHMv
L1wxLzsgcTsgfQorICAJICAvXlhcL1woXC9cL1wpJC97IHMvL1wxLzsgcTsgfQorICAJICAvXlhc
L1woXC9cKS4qL3sgcy8vXDEvOyBxOyB9CisgIAkgIHMvLiovLi87IHEnYAorCisKKyMgUEFUSCBu
ZWVkcyBDUiwgYW5kIExJTkVOTyBuZWVkcyBDUiBhbmQgUEFUSC4KKyMgQXZvaWQgZGVwZW5kaW5n
IHVwb24gQ2hhcmFjdGVyIFJhbmdlcy4KK2FzX2NyX2xldHRlcnM9J2FiY2RlZmdoaWprbG1ub3Bx
cnN0dXZ3eHl6JworYXNfY3JfTEVUVEVSUz0nQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVonCith
c19jcl9MZXR0ZXJzPSRhc19jcl9sZXR0ZXJzJGFzX2NyX0xFVFRFUlMKK2FzX2NyX2RpZ2l0cz0n
MDEyMzQ1Njc4OScKK2FzX2NyX2FsbnVtPSRhc19jcl9MZXR0ZXJzJGFzX2NyX2RpZ2l0cworCisj
IFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KK2lmIHRlc3QgIiR7UEFUSF9TRVBBUkFUT1Irc2V0
fSIgIT0gc2V0OyB0aGVuCisgIGVjaG8gIiMhIC9iaW4vc2giID5jb25mJCQuc2gKKyAgZWNobyAg
ImV4aXQgMCIgICA+PmNvbmYkJC5zaAorICBjaG1vZCAreCBjb25mJCQuc2gKKyAgaWYgKFBBVEg9
Ii9ub25leGlzdGVudDsuIjsgY29uZiQkLnNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgICBQ
QVRIX1NFUEFSQVRPUj0nOycKKyAgZWxzZQorICAgIFBBVEhfU0VQQVJBVE9SPToKKyAgZmkKKyAg
cm0gLWYgY29uZiQkLnNoCitmaQorCisKKyAgYXNfbGluZW5vXzE9JExJTkVOTworICBhc19saW5l
bm9fMj0kTElORU5PCisgIGFzX2xpbmVub18zPWAoZXhwciAkYXNfbGluZW5vXzEgKyAxKSAyPi9k
ZXYvbnVsbGAKKyAgdGVzdCAieCRhc19saW5lbm9fMSIgIT0gIngkYXNfbGluZW5vXzIiICYmCisg
IHRlc3QgIngkYXNfbGluZW5vXzMiICA9ICJ4JGFzX2xpbmVub18yIiAgfHwgeworICAjIEZpbmQg
d2hvIHdlIGFyZS4gIExvb2sgaW4gdGhlIHBhdGggaWYgd2UgY29udGFpbiBubyBwYXRoIGF0IGFs
bAorICAjIHJlbGF0aXZlIG9yIG5vdC4KKyAgY2FzZSAkMCBpbgorICAgICpbXFwvXSogKSBhc19t
eXNlbGY9JDAgOzsKKyAgICAqKSBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9S
Citmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXog
IiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIHRlc3QgLXIgIiRhc19kaXIvJDAiICYmIGFzX215c2Vs
Zj0kYXNfZGlyLyQwICYmIGJyZWFrCitkb25lCisKKyAgICAgICA7OworICBlc2FjCisgICMgV2Ug
ZGlkIG5vdCBmaW5kIG91cnNlbHZlcywgbW9zdCBwcm9iYWJseSB3ZSB3ZXJlIHJ1biBhcyBgc2gg
Q09NTUFORCcKKyAgIyBpbiB3aGljaCBjYXNlIHdlIGFyZSBub3QgdG8gYmUgZm91bmQgaW4gdGhl
IHBhdGguCisgIGlmIHRlc3QgIngkYXNfbXlzZWxmIiA9IHg7IHRoZW4KKyAgICBhc19teXNlbGY9
JDAKKyAgZmkKKyAgaWYgdGVzdCAhIC1mICIkYXNfbXlzZWxmIjsgdGhlbgorICAgIHsgeyBlY2hv
ICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIG15c2VsZjsgcmVydW4gd2l0aCBh
biBhYnNvbHV0ZSBwYXRoIiA+JjUKK2VjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBmaW5kIG15
c2VsZjsgcmVydW4gd2l0aCBhbiBhYnNvbHV0ZSBwYXRoIiA+JjI7fQorICAgeyAoZXhpdCAxKTsg
ZXhpdCAxOyB9OyB9CisgIGZpCisgIGNhc2UgJENPTkZJR19TSEVMTCBpbgorICAnJykKKyAgICBh
c19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluIC9iaW4k
UEFUSF9TRVBBUkFUT1IvdXNyL2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRICitkbworICBJRlM9JGFz
X3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgIGZvciBhc19iYXNl
IGluIHNoIGJhc2gga3NoIHNoNTsgZG8KKwkgY2FzZSAkYXNfZGlyIGluCisJIC8qKQorCSAgIGlm
ICgiJGFzX2Rpci8kYXNfYmFzZSIgLWMgJworICBhc19saW5lbm9fMT0kTElORU5PCisgIGFzX2xp
bmVub18yPSRMSU5FTk8KKyAgYXNfbGluZW5vXzM9YChleHByICRhc19saW5lbm9fMSArIDEpIDI+
L2Rldi9udWxsYAorICB0ZXN0ICJ4JGFzX2xpbmVub18xIiAhPSAieCRhc19saW5lbm9fMiIgJiYK
KyAgdGVzdCAieCRhc19saW5lbm9fMyIgID0gIngkYXNfbGluZW5vXzIiICcpIDI+L2Rldi9udWxs
OyB0aGVuCisJICAgICAkYXNfdW5zZXQgQkFTSF9FTlYgfHwgdGVzdCAiJHtCQVNIX0VOVitzZXR9
IiAhPSBzZXQgfHwgeyBCQVNIX0VOVj07IGV4cG9ydCBCQVNIX0VOVjsgfQorCSAgICAgJGFzX3Vu
c2V0IEVOViB8fCB0ZXN0ICIke0VOVitzZXR9IiAhPSBzZXQgfHwgeyBFTlY9OyBleHBvcnQgRU5W
OyB9CisJICAgICBDT05GSUdfU0hFTEw9JGFzX2Rpci8kYXNfYmFzZQorCSAgICAgZXhwb3J0IENP
TkZJR19TSEVMTAorCSAgICAgZXhlYyAiJENPTkZJR19TSEVMTCIgIiQwIiAkezErIiRAIn0KKwkg
ICBmaTs7CisJIGVzYWMKKyAgICAgICBkb25lCitkb25lCis7OworICBlc2FjCisKKyAgIyBDcmVh
dGUgJGFzX21lLmxpbmVubyBhcyBhIGNvcHkgb2YgJGFzX215c2VsZiwgYnV0IHdpdGggJExJTkVO
TworICAjIHVuaWZvcm1seSByZXBsYWNlZCBieSB0aGUgbGluZSBudW1iZXIuICBUaGUgZmlyc3Qg
J3NlZCcgaW5zZXJ0cyBhCisgICMgbGluZS1udW1iZXIgbGluZSBiZWZvcmUgZWFjaCBsaW5lOyB0
aGUgc2Vjb25kICdzZWQnIGRvZXMgdGhlIHJlYWwKKyAgIyB3b3JrLiAgVGhlIHNlY29uZCBzY3Jp
cHQgdXNlcyAnTicgdG8gcGFpciBlYWNoIGxpbmUtbnVtYmVyIGxpbmUKKyAgIyB3aXRoIHRoZSBu
dW1iZXJlZCBsaW5lLCBhbmQgYXBwZW5kcyB0cmFpbGluZyAnLScgZHVyaW5nCisgICMgc3Vic3Rp
dHV0aW9uIHNvIHRoYXQgJExJTkVOTyBpcyBub3QgYSBzcGVjaWFsIGNhc2UgYXQgbGluZSBlbmQu
CisgICMgKFJhamEgUiBIYXJpbmF0aCBzdWdnZXN0ZWQgc2VkICc9JywgYW5kIFBhdWwgRWdnZXJ0
IHdyb3RlIHRoZQorICAjIHNlY29uZCAnc2VkJyBzY3JpcHQuICBCbGFtZSBMZWUgRS4gTWNNYWhv
biBmb3Igc2VkJ3Mgc3ludGF4LiAgOi0pCisgIHNlZCAnPScgPCRhc19teXNlbGYgfAorICAgIHNl
ZCAnCisgICAgICBOCisgICAgICBzLCQsLSwKKyAgICAgIDogbG9vcAorICAgICAgcyxeXChbJyRh
c19jcl9kaWdpdHMnXSpcKVwoLipcKVskXUxJTkVOT1woW14nJGFzX2NyX2FsbnVtJ19dXCksXDFc
MlwxXDMsCisgICAgICB0IGxvb3AKKyAgICAgIHMsLSQsLAorICAgICAgcyxeWyckYXNfY3JfZGln
aXRzJ10qXG4sLAorICAgICcgPiRhc19tZS5saW5lbm8gJiYKKyAgY2htb2QgK3ggJGFzX21lLmxp
bmVubyB8fAorICAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBjcmVh
dGUgJGFzX21lLmxpbmVubzsgcmVydW4gd2l0aCBhIFBPU0lYIHNoZWxsIiA+JjUKK2VjaG8gIiRh
c19tZTogZXJyb3I6IGNhbm5vdCBjcmVhdGUgJGFzX21lLmxpbmVubzsgcmVydW4gd2l0aCBhIFBP
U0lYIHNoZWxsIiA+JjI7fQorICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9CisKKyAgIyBEb24n
dCB0cnkgdG8gZXhlYyBhcyBpdCBjaGFuZ2VzICRbMF0sIGNhdXNpbmcgYWxsIHNvcnQgb2YgcHJv
YmxlbXMKKyAgIyAodGhlIGRpcm5hbWUgb2YgJFswXSBpcyBub3QgdGhlIHBsYWNlIHdoZXJlIHdl
IG1pZ2h0IGZpbmQgdGhlCisgICMgb3JpZ2luYWwgYW5kIHNvIG9uLiAgQXV0b2NvbmYgaXMgZXNw
ZWNpYWxseSBzZW5zaWJsZSB0byB0aGlzKS4KKyAgLiAuLyRhc19tZS5saW5lbm8KKyAgIyBFeGl0
IHN0YXR1cyBpcyB0aGF0IG9mIHRoZSBsYXN0IGNvbW1hbmQuCisgIGV4aXQKK30KKworCitjYXNl
IGBlY2hvICJ0ZXN0aW5nXGMiOyBlY2hvIDEsMiwzYCxgZWNobyAtbiB0ZXN0aW5nOyBlY2hvIDEs
MiwzYCBpbgorICAqYyosLW4qKSBFQ0hPX049IEVDSE9fQz0nCisnIEVDSE9fVD0nCScgOzsKKyAg
KmMqLCogICkgRUNIT19OPS1uIEVDSE9fQz0gRUNIT19UPSA7OworICAqKSAgICAgICBFQ0hPX049
IEVDSE9fQz0nXGMnIEVDSE9fVD0gOzsKK2VzYWMKIAogaWYgZXhwciBhIDogJ1woYVwpJyA+L2Rl
di9udWxsIDI+JjE7IHRoZW4KICAgYXNfZXhwcj1leHByCkBAIC05Nzg2LDI0ICsxMjQ3NywyMSBA
QAogZmkKIHJtIC1mIGNvbmYkJCBjb25mJCQuZXhlIGNvbmYkJC5maWxlCiAKLWFzX2V4ZWN1dGFi
bGVfcD0idGVzdCAtZiIKLQotIyBTdXBwb3J0IHVuc2V0IHdoZW4gcG9zc2libGUuCi1pZiAoRk9P
PUZPTzsgdW5zZXQgRk9PKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KLSAgYXNfdW5zZXQ9dW5zZXQK
K2lmIG1rZGlyIC1wIC4gMj4vZGV2L251bGw7IHRoZW4KKyAgYXNfbWtkaXJfcD06CiBlbHNlCi0g
IGFzX3Vuc2V0PWZhbHNlCisgIHRlc3QgLWQgLi8tcCAmJiBybWRpciAuLy1wCisgIGFzX21rZGly
X3A9ZmFsc2UKIGZpCiAKLSMgTkxTIG51aXNhbmNlcy4KLSRhc191bnNldCBMQU5HIHx8IHRlc3Qg
IiR7TEFORytzZXR9IiAhPSBzZXQgfHwgeyBMQU5HPUM7IGV4cG9ydCBMQU5HOyB9Ci0kYXNfdW5z
ZXQgTENfQUxMIHx8IHRlc3QgIiR7TENfQUxMK3NldH0iICE9IHNldCB8fCB7IExDX0FMTD1DOyBl
eHBvcnQgTENfQUxMOyB9Ci0kYXNfdW5zZXQgTENfVElNRSB8fCB0ZXN0ICIke0xDX1RJTUUrc2V0
fSIgIT0gc2V0IHx8IHsgTENfVElNRT1DOyBleHBvcnQgTENfVElNRTsgfQotJGFzX3Vuc2V0IExD
X0NUWVBFIHx8IHRlc3QgIiR7TENfQ1RZUEUrc2V0fSIgIT0gc2V0IHx8IHsgTENfQ1RZUEU9Qzsg
ZXhwb3J0IExDX0NUWVBFOyB9Ci0kYXNfdW5zZXQgTEFOR1VBR0UgfHwgdGVzdCAiJHtMQU5HVUFH
RStzZXR9IiAhPSBzZXQgfHwgeyBMQU5HVUFHRT1DOyBleHBvcnQgTEFOR1VBR0U7IH0KLSRhc191
bnNldCBMQ19DT0xMQVRFIHx8IHRlc3QgIiR7TENfQ09MTEFURStzZXR9IiAhPSBzZXQgfHwgeyBM
Q19DT0xMQVRFPUM7IGV4cG9ydCBMQ19DT0xMQVRFOyB9Ci0kYXNfdW5zZXQgTENfTlVNRVJJQyB8
fCB0ZXN0ICIke0xDX05VTUVSSUMrc2V0fSIgIT0gc2V0IHx8IHsgTENfTlVNRVJJQz1DOyBleHBv
cnQgTENfTlVNRVJJQzsgfQotJGFzX3Vuc2V0IExDX01FU1NBR0VTIHx8IHRlc3QgIiR7TENfTUVT
U0FHRVMrc2V0fSIgIT0gc2V0IHx8IHsgTENfTUVTU0FHRVM9QzsgZXhwb3J0IExDX01FU1NBR0VT
OyB9Cithc19leGVjdXRhYmxlX3A9InRlc3QgLWYiCisKKyMgU2VkIGV4cHJlc3Npb24gdG8gbWFw
IGEgc3RyaW5nIG9udG8gYSB2YWxpZCBDUFAgbmFtZS4KK2FzX3RyX2NwcD0iZXZhbCBzZWQgJ3kl
KiRhc19jcl9sZXR0ZXJzJVAkYXNfY3JfTEVUVEVSUyU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyci
CisKKyMgU2VkIGV4cHJlc3Npb24gdG8gbWFwIGEgc3RyaW5nIG9udG8gYSB2YWxpZCB2YXJpYWJs
ZSBuYW1lLgorYXNfdHJfc2g9ImV2YWwgc2VkICd5JSorJXBwJTtzJVteXyRhc19jcl9hbG51bV0l
XyVnJyIKKwogCiAjIElGUwogIyBXZSBuZWVkIHNwYWNlLCB0YWIgYW5kIG5ldyBsaW5lLCBpbiBw
cmVjaXNlbHkgdGhhdCBvcmRlci4KQEAgLTk4MTIsMTAgKzEyNTAwLDM0IEBACiBJRlM9IiAJJGFz
X25sIgogCiAjIENEUEFUSC4KLSRhc191bnNldCBDRFBBVEggfHwgdGVzdCAiJHtDRFBBVEgrc2V0
fSIgIT0gc2V0IHx8IHsgQ0RQQVRIPTo7IGV4cG9ydCBDRFBBVEg7IH0KKyRhc191bnNldCBDRFBB
VEgKIAogZXhlYyA2PiYxCiAKKyMgT3BlbiB0aGUgbG9nIHJlYWwgc29vbiwgdG8ga2VlcCBcJFsw
XSBhbmQgc28gb24gbWVhbmluZ2Z1bCwgYW5kIHRvCisjIHJlcG9ydCBhY3R1YWwgaW5wdXQgdmFs
dWVzIG9mIENPTkZJR19GSUxFUyBldGMuIGluc3RlYWQgb2YgdGhlaXIKKyMgdmFsdWVzIGFmdGVy
IG9wdGlvbnMgaGFuZGxpbmcuICBMb2dnaW5nIC0tdmVyc2lvbiBldGMuIGlzIE9LLgorZXhlYyA1
Pj5jb25maWcubG9nCit7CisgIGVjaG8KKyAgc2VkICdoO3MvLi8tL2c7cy9eLi4uLyMjIC87cy8u
Li4kLyAjIy87cDt4O3A7eCcgPDxfQVNCT1gKKyMjIFJ1bm5pbmcgJGFzX21lLiAjIworX0FTQk9Y
Cit9ID4mNQorY2F0ID4mNSA8PF9DU0VPRgorCitUaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5ICRh
c19tZSwgd2hpY2ggd2FzCitnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNTguICBJbnZvY2F0
aW9uIGNvbW1hbmQgbGluZSB3YXMKKworICBDT05GSUdfRklMRVMgICAgPSAkQ09ORklHX0ZJTEVT
CisgIENPTkZJR19IRUFERVJTICA9ICRDT05GSUdfSEVBREVSUworICBDT05GSUdfTElOS1MgICAg
PSAkQ09ORklHX0xJTktTCisgIENPTkZJR19DT01NQU5EUyA9ICRDT05GSUdfQ09NTUFORFMKKyAg
JCAkMCAkQAorCitfQ1NFT0YKK2VjaG8gIm9uIGAoaG9zdG5hbWUgfHwgdW5hbWUgLW4pIDI+L2Rl
di9udWxsIHwgc2VkIDFxYCIgPiY1CitlY2hvID4mNQogX0FDRU9GCiAKICMgRmlsZXMgdGhhdCBj
b25maWcuc3RhdHVzIHdhcyBtYWRlIGZvci4KQEAgLTk4MzUsNyArMTI1NDcsNyBAQAogICBlY2hv
ICJjb25maWdfY29tbWFuZHM9XCIkYWNfY29uZmlnX2NvbW1hbmRzXCIiID4+JENPTkZJR19TVEFU
VVMKIGZpCiAKLWNhdCA+PiRDT05GSUdfU1RBVFVTIDw8XEVPRgorY2F0ID4+JENPTkZJR19TVEFU
VVMgPDxcX0FDRU9GCiAKIGFjX2NzX3VzYWdlPSJcCiBcYCRhc19tZScgaW5zdGFudGlhdGVzIGZp
bGVzIGZyb20gdGVtcGxhdGVzIGFjY29yZGluZyB0byB0aGUKQEAgLTk4NDUsMTIgKzEyNTU3LDEz
IEBACiAKICAgLWgsIC0taGVscCAgICAgICBwcmludCB0aGlzIGhlbHAsIHRoZW4gZXhpdAogICAt
ViwgLS12ZXJzaW9uICAgIHByaW50IHZlcnNpb24gbnVtYmVyLCB0aGVuIGV4aXQKKyAgLXEsIC0t
cXVpZXQgICAgICBkbyBub3QgcHJpbnQgcHJvZ3Jlc3MgbWVzc2FnZXMKICAgLWQsIC0tZGVidWcg
ICAgICBkb24ndCByZW1vdmUgdGVtcG9yYXJ5IGZpbGVzCiAgICAgICAtLXJlY2hlY2sgICAgdXBk
YXRlICRhc19tZSBieSByZWNvbmZpZ3VyaW5nIGluIHRoZSBzYW1lIGNvbmRpdGlvbnMKICAgLS1m
aWxlPUZJTEVbOlRFTVBMQVRFXQotICAgICAgICAgICAgICAgICAgIGluc3RhbnRpYXRlIHRoZSBj
b25maWd1cmF0aW9uIGZpbGUgRklMRQorCQkgICBpbnN0YW50aWF0ZSB0aGUgY29uZmlndXJhdGlv
biBmaWxlIEZJTEUKICAgLS1oZWFkZXI9RklMRVs6VEVNUExBVEVdCi0gICAgICAgICAgICAgICAg
ICAgaW5zdGFudGlhdGUgdGhlIGNvbmZpZ3VyYXRpb24gaGVhZGVyIEZJTEUKKwkJICAgaW5zdGFu
dGlhdGUgdGhlIGNvbmZpZ3VyYXRpb24gaGVhZGVyIEZJTEUKIAogQ29uZmlndXJhdGlvbiBmaWxl
czoKICRjb25maWdfZmlsZXMKQEAgLTk4NjIsMjMgKzEyNTc1LDIyIEBACiAkY29uZmlnX2NvbW1h
bmRzCiAKIFJlcG9ydCBidWdzIHRvIDxidWctYXV0b2NvbmZAZ251Lm9yZz4uIgotRU9GCitfQUNF
T0YKIAotY2F0ID4+JENPTkZJR19TVEFUVVMgPDxFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8
X0FDRU9GCiBhY19jc192ZXJzaW9uPSJcXAogY29uZmlnLnN0YXR1cwotY29uZmlndXJlZCBieSAk
MCwgZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjUyLAorY29uZmlndXJlZCBieSAkMCwgZ2Vu
ZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjU4LAogICB3aXRoIG9wdGlvbnMgXFwiYGVjaG8gIiRh
Y19jb25maWd1cmVfYXJncyIgfCBzZWQgJ3MvW1xcIiJcYFwkXS9cXFxcJi9nJ2BcXCIKIAotQ29w
eXJpZ2h0IDE5OTIsIDE5OTMsIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTgsIDE5OTksIDIwMDAsIDIw
MDEKLUZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorQ29weXJpZ2h0IChDKSAyMDAzIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogVGhpcyBjb25maWcuc3RhdHVzIHNjcmlwdCBp
cyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCiBnaXZlcyB1bmxp
bWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5LCBkaXN0cmlidXRlIGFuZCBtb2RpZnkgaXQuIgogc3Jj
ZGlyPSRzcmNkaXIKIElOU1RBTEw9IiRJTlNUQUxMIgotRU9GCitfQUNFT0YKIAotY2F0ID4+JENP
TkZJR19TVEFUVVMgPDxcRU9GCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PFxfQUNFT0YKICMgSWYg
bm8gZmlsZSBhcmUgc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLCB0aGVuIHdlIG5lZWQgdG8gcHJvdmlk
ZSBkZWZhdWx0CiAjIHZhbHVlLiAgQnkgd2UgbmVlZCB0byBrbm93IGlmIGZpbGVzIHdlcmUgc3Bl
Y2lmaWVkIGJ5IHRoZSB1c2VyLgogYWNfbmVlZF9kZWZhdWx0cz06CkBAIC05ODg4LDMwICsxMjYw
MCwzMCBAQAogICAtLSo9KikKICAgICBhY19vcHRpb249YGV4cHIgIngkMSIgOiAneFwoW149XSpc
KT0nYAogICAgIGFjX29wdGFyZz1gZXhwciAieCQxIiA6ICd4W149XSo9XCguKlwpJ2AKLSAgICBz
aGlmdAotICAgIHNldCBkdW1teSAiJGFjX29wdGlvbiIgIiRhY19vcHRhcmciICR7MSsiJEAifQot
ICAgIHNoaWZ0CisgICAgYWNfc2hpZnQ9OgorICAgIDs7CisgIC0qKQorICAgIGFjX29wdGlvbj0k
MQorICAgIGFjX29wdGFyZz0kMgorICAgIGFjX3NoaWZ0PXNoaWZ0CiAgICAgOzsKLSAgLSopOzsK
ICAgKikgIyBUaGlzIGlzIG5vdCBhbiBvcHRpb24sIHNvIHRoZSB1c2VyIGhhcyBwcm9iYWJseSBn
aXZlbiBleHBsaWNpdAogICAgICAjIGFyZ3VtZW50cy4KKyAgICAgYWNfb3B0aW9uPSQxCiAgICAg
IGFjX25lZWRfZGVmYXVsdHM9ZmFsc2U7OwogICBlc2FjCiAKLSAgY2FzZSAkMSBpbgorICBjYXNl
ICRhY19vcHRpb24gaW4KICAgIyBIYW5kbGluZyBvZiB0aGUgb3B0aW9ucy4KLUVPRgotY2F0ID4+
JENPTkZJR19TVEFUVVMgPDxFT0YKK19BQ0VPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FD
RU9GCiAgIC1yZWNoZWNrIHwgLS1yZWNoZWNrIHwgLS1yZWNoZWMgfCAtLXJlY2hlIHwgLS1yZWNo
IHwgLS1yZWMgfCAtLXJlIHwgLS1yKQotICAgIGVjaG8gInJ1bm5pbmcgJFNIRUxMICQwICIgJGFj
X2NvbmZpZ3VyZV9hcmdzICIgLS1uby1jcmVhdGUgLS1uby1yZWN1cnNpb24iCi0gICAgZXhlYyAk
U0hFTEwgJDAgJGFjX2NvbmZpZ3VyZV9hcmdzIC0tbm8tY3JlYXRlIC0tbm8tcmVjdXJzaW9uIDs7
Ci1FT0YKLWNhdCA+PiRDT05GSUdfU1RBVFVTIDw8XEVPRgorICAgIGFjX2NzX3JlY2hlY2s9OiA7
OwogICAtLXZlcnNpb24gfCAtLXZlcnMqIHwgLVYgKQogICAgIGVjaG8gIiRhY19jc192ZXJzaW9u
IjsgZXhpdCAwIDs7CiAgIC0taGUgfCAtLWgpCiAgICAgIyBDb25mbGljdCBiZXR3ZWVuIC0taGVs
cCBhbmQgLS1oZWFkZXIKLSAgICB7IHsgZWNobyAiJGFzX21lOjk4NTE6IGVycm9yOiBhbWJpZ3Vv
dXMgb3B0aW9uOiAkMQorICAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGFtYmln
dW91cyBvcHRpb246ICQxCiBUcnkgXGAkMCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiIg
PiY1CiBlY2hvICIkYXNfbWU6IGVycm9yOiBhbWJpZ3VvdXMgb3B0aW9uOiAkMQogVHJ5IFxgJDAg
LS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iID4mMjt9CkBAIC05OTIxLDE2ICsxMjYzMywx
OSBAQAogICAtLWRlYnVnIHwgLS1kKiB8IC1kICkKICAgICBkZWJ1Zz06IDs7CiAgIC0tZmlsZSB8
IC0tZmlsIHwgLS1maSB8IC0tZiApCi0gICAgc2hpZnQKLSAgICBDT05GSUdfRklMRVM9IiRDT05G
SUdfRklMRVMgJDEiCisgICAgJGFjX3NoaWZ0CisgICAgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJ
TEVTICRhY19vcHRhcmciCiAgICAgYWNfbmVlZF9kZWZhdWx0cz1mYWxzZTs7CiAgIC0taGVhZGVy
IHwgLS1oZWFkZSB8IC0taGVhZCB8IC0taGVhICkKLSAgICBzaGlmdAotICAgIENPTkZJR19IRUFE
RVJTPSIkQ09ORklHX0hFQURFUlMgJDEiCisgICAgJGFjX3NoaWZ0CisgICAgQ09ORklHX0hFQURF
UlM9IiRDT05GSUdfSEVBREVSUyAkYWNfb3B0YXJnIgogICAgIGFjX25lZWRfZGVmYXVsdHM9ZmFs
c2U7OworICAtcSB8IC1xdWlldCB8IC0tcXVpZXQgfCAtLXF1aWUgfCAtLXF1aSB8IC0tcXUgfCAt
LXEgXAorICB8IC1zaWxlbnQgfCAtLXNpbGVudCB8IC0tc2lsZW4gfCAtLXNpbGUgfCAtLXNpbCB8
IC0tc2kgfCAtLXMpCisgICAgYWNfY3Nfc2lsZW50PTogOzsKIAogICAjIFRoaXMgaXMgYW4gZXJy
b3IuCi0gIC0qKSB7IHsgZWNobyAiJGFzX21lOjk4NzA6IGVycm9yOiB1bnJlY29nbml6ZWQgb3B0
aW9uOiAkMQorICAtKikgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogdW5yZWNvZ25p
emVkIG9wdGlvbjogJDEKIFRyeSBcYCQwIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIiA+
JjUKIGVjaG8gIiRhc19tZTogZXJyb3I6IHVucmVjb2duaXplZCBvcHRpb246ICQxCiBUcnkgXGAk
MCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiIgPiYyO30KQEAgLTk5NDIsMzIgKzEyNjU3
LDM0IEBACiAgIHNoaWZ0CiBkb25lCiAKLWV4ZWMgNT4+Y29uZmlnLmxvZwotY2F0ID4mNSA8PCBf
QUNFT0YKK2FjX2NvbmZpZ3VyZV9leHRyYV9hcmdzPQogCi0jIyAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLSAjIwotIyMgUnVubmluZyBjb25maWcuc3RhdHVzLiAgIyMKLSMjIC0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tICMjCitpZiAkYWNfY3Nfc2lsZW50OyB0aGVuCisgIGV4ZWMgNj4vZGV2L251bGwK
KyAgYWNfY29uZmlndXJlX2V4dHJhX2FyZ3M9IiRhY19jb25maWd1cmVfZXh0cmFfYXJncyAtLXNp
bGVudCIKK2ZpCiAKLVRoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgJGFzX21lIDIuNTIsIGV4ZWN1
dGVkIHdpdGgKLSAgQ09ORklHX0ZJTEVTICAgID0gJENPTkZJR19GSUxFUwotICBDT05GSUdfSEVB
REVSUyAgPSAkQ09ORklHX0hFQURFUlMKLSAgQ09ORklHX0xJTktTICAgID0gJENPTkZJR19MSU5L
UwotICBDT05GSUdfQ09NTUFORFMgPSAkQ09ORklHX0NPTU1BTkRTCi0gID4gJGFjX2NzX2ludm9j
YXRpb24KLW9uIGAoaG9zdG5hbWUgfHwgdW5hbWUgLW4pIDI+L2Rldi9udWxsIHwgc2VkIDFxYAor
X0FDRU9GCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PF9BQ0VPRgoraWYgXCRhY19jc19yZWNoZWNr
OyB0aGVuCisgIGVjaG8gInJ1bm5pbmcgJFNIRUxMICQwICIgJGFjX2NvbmZpZ3VyZV9hcmdzIFwk
YWNfY29uZmlndXJlX2V4dHJhX2FyZ3MgIiAtLW5vLWNyZWF0ZSAtLW5vLXJlY3Vyc2lvbiIgPiY2
CisgIGV4ZWMgJFNIRUxMICQwICRhY19jb25maWd1cmVfYXJncyBcJGFjX2NvbmZpZ3VyZV9leHRy
YV9hcmdzIC0tbm8tY3JlYXRlIC0tbm8tcmVjdXJzaW9uCitmaQogCiBfQUNFT0YKLUVPRgogCi1j
YXQgPj4kQ09ORklHX1NUQVRVUyA8PEVPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YK
ICMKICMgSU5JVC1DT01NQU5EUyBzZWN0aW9uLgogIwogCi1FT0YKIAotY2F0ID4+JENPTkZJR19T
VEFUVVMgPDxcRU9GCisKK19BQ0VPRgorCisKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FD
RU9GCiBmb3IgYWNfY29uZmlnX3RhcmdldCBpbiAkYWNfY29uZmlnX3RhcmdldHMKIGRvCiAgIGNh
c2UgIiRhY19jb25maWdfdGFyZ2V0IiBpbgpAQCAtOTk4Niw3ICsxMjcwMyw3IEBACiAgICJpbmNs
dWRlL0lML01ha2VmaWxlIiApIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBpbmNsdWRlL0lM
L01ha2VmaWxlIiA7OwogICAiZGVmYXVsdC0xIiApIENPTkZJR19DT01NQU5EUz0iJENPTkZJR19D
T01NQU5EUyBkZWZhdWx0LTEiIDs7CiAgICJpbmNsdWRlL0lML2NvbmZpZy5oIiApIENPTkZJR19I
RUFERVJTPSIkQ09ORklHX0hFQURFUlMgaW5jbHVkZS9JTC9jb25maWcuaCIgOzsKLSAgKikgeyB7
IGVjaG8gIiRhc19tZTo5OTI2OiBlcnJvcjogaW52YWxpZCBhcmd1bWVudDogJGFjX2NvbmZpZ190
YXJnZXQiID4mNQorICAqKSB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBpbnZhbGlk
IGFyZ3VtZW50OiAkYWNfY29uZmlnX3RhcmdldCIgPiY1CiBlY2hvICIkYXNfbWU6IGVycm9yOiBp
bnZhbGlkIGFyZ3VtZW50OiAkYWNfY29uZmlnX3RhcmdldCIgPiYyO30KICAgIHsgKGV4aXQgMSk7
IGV4aXQgMTsgfTsgfTs7CiAgIGVzYWMKQEAgLTEwMDAyLDYgKzEyNzE5LDkgQEAKICAgdGVzdCAi
JHtDT05GSUdfQ09NTUFORFMrc2V0fSIgPSBzZXQgfHwgQ09ORklHX0NPTU1BTkRTPSRjb25maWdf
Y29tbWFuZHMKIGZpCiAKKyMgSGF2ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIGNvbnZlbmll
bmNlLiAgTWFrZSBpdCBpbiB0aGUgYnVpbGQgdHJlZQorIyBzaW1wbHkgYmVjYXVzZSB0aGVyZSBp
cyBubyByZWFzb24gdG8gcHV0IGl0IGhlcmUsIGFuZCBpbiBhZGRpdGlvbiwKKyMgY3JlYXRpbmcg
YW5kIG1vdmluZyBmaWxlcyBmcm9tIC90bXAgY2FuIHNvbWV0aW1lcyBjYXVzZSBwcm9ibGVtcy4K
ICMgQ3JlYXRlIGEgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGhvb2sgZm9yIGl0cyByZW1vdmFs
IHVubGVzcyBkZWJ1Z2dpbmcuCiAkZGVidWcgfHwKIHsKQEAgLTEwMDEwLDIzICsxMjczMCwyMyBA
QAogfQogCiAjIENyZWF0ZSBhIChzZWN1cmUpIHRtcCBkaXJlY3RvcnkgZm9yIHRtcCBmaWxlcy4K
LTogJHtUTVBESVI9L3RtcH0KKwogewotICB0bXA9YCh1bWFzayAwNzcgJiYgbWt0ZW1wIC1kIC1x
ICIkVE1QRElSL2NzWFhYWFhYIikgMj4vZGV2L251bGxgICYmCisgIHRtcD1gKHVtYXNrIDA3NyAm
JiBta3RlbXAgLWQgLXEgIi4vY29uZnN0YXRYWFhYWFgiKSAyPi9kZXYvbnVsbGAgJiYKICAgdGVz
dCAtbiAiJHRtcCIgJiYgdGVzdCAtZCAiJHRtcCIKIH0gIHx8CiB7Ci0gIHRtcD0kVE1QRElSL2Nz
JCQtJFJBTkRPTQorICB0bXA9Li9jb25mc3RhdCQkLSRSQU5ET00KICAgKHVtYXNrIDA3NyAmJiBt
a2RpciAkdG1wKQogfSB8fAogewotICAgZWNobyAiJG1lOiBjYW5ub3QgY3JlYXRlIGEgdGVtcG9y
YXJ5IGRpcmVjdG9yeSBpbiAkVE1QRElSIiA+JjIKKyAgIGVjaG8gIiRtZTogY2Fubm90IGNyZWF0
ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgaW4gLiIgPiYyCiAgICB7IChleGl0IDEpOyBleGl0IDE7
IH0KIH0KIAotRU9GCitfQUNFT0YKIAotY2F0ID4+JENPTkZJR19TVEFUVVMgPDxFT0YKK2NhdCA+
PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GCiAKICMKICMgQ09ORklHX0ZJTEVTIHNlY3Rpb24uCkBA
IC0xMDAzOSw2ICsxMjc1OSwxMiBAQAogICBzZWQgJ3MvLEAvQEAvOyBzL0AsL0BALzsgcy8sO3Qg
dFwkL0A7dCB0LzsgL0A7dCB0XCQvcy9bXFxcXCYsXS9cXFxcJi9nOwogICAgcy9AQC8sQC87IHMv
QEAvQCwvOyBzL0A7dCB0XCQvLDt0IHQvJyA+XCR0bXAvc3Vicy5zZWQgPDxcXENFT0YKIHMsQFNI
RUxMQCwkU0hFTEwsO3QgdAorcyxAUEFUSF9TRVBBUkFUT1JALCRQQVRIX1NFUEFSQVRPUiw7dCB0
CitzLEBQQUNLQUdFX05BTUVALCRQQUNLQUdFX05BTUUsO3QgdAorcyxAUEFDS0FHRV9UQVJOQU1F
QCwkUEFDS0FHRV9UQVJOQU1FLDt0IHQKK3MsQFBBQ0tBR0VfVkVSU0lPTkAsJFBBQ0tBR0VfVkVS
U0lPTiw7dCB0CitzLEBQQUNLQUdFX1NUUklOR0AsJFBBQ0tBR0VfU1RSSU5HLDt0IHQKK3MsQFBB
Q0tBR0VfQlVHUkVQT1JUQCwkUEFDS0FHRV9CVUdSRVBPUlQsO3QgdAogcyxAZXhlY19wcmVmaXhA
LCRleGVjX3ByZWZpeCw7dCB0CiBzLEBwcmVmaXhALCRwcmVmaXgsO3QgdAogcyxAcHJvZ3JhbV90
cmFuc2Zvcm1fbmFtZUAsJHByb2dyYW1fdHJhbnNmb3JtX25hbWUsO3QgdApAQCAtMTAwNTQsMTkg
KzEyNzgwLDEzIEBACiBzLEBvbGRpbmNsdWRlZGlyQCwkb2xkaW5jbHVkZWRpciw7dCB0CiBzLEBp
bmZvZGlyQCwkaW5mb2Rpciw7dCB0CiBzLEBtYW5kaXJALCRtYW5kaXIsO3QgdAotcyxAUEFDS0FH
RV9OQU1FQCwkUEFDS0FHRV9OQU1FLDt0IHQKLXMsQFBBQ0tBR0VfVEFSTkFNRUAsJFBBQ0tBR0Vf
VEFSTkFNRSw7dCB0Ci1zLEBQQUNLQUdFX1ZFUlNJT05ALCRQQUNLQUdFX1ZFUlNJT04sO3QgdAot
cyxAUEFDS0FHRV9TVFJJTkdALCRQQUNLQUdFX1NUUklORyw7dCB0Ci1zLEBQQUNLQUdFX0JVR1JF
UE9SVEAsJFBBQ0tBR0VfQlVHUkVQT1JULDt0IHQKIHMsQGJ1aWxkX2FsaWFzQCwkYnVpbGRfYWxp
YXMsO3QgdAogcyxAaG9zdF9hbGlhc0AsJGhvc3RfYWxpYXMsO3QgdAogcyxAdGFyZ2V0X2FsaWFz
QCwkdGFyZ2V0X2FsaWFzLDt0IHQKK3MsQERFRlNALCRERUZTLDt0IHQKIHMsQEVDSE9fQ0AsJEVD
SE9fQyw7dCB0CiBzLEBFQ0hPX05ALCRFQ0hPX04sO3QgdAogcyxARUNIT19UQCwkRUNIT19ULDt0
IHQKLXMsQFBBVEhfU0VQQVJBVE9SQCwkUEFUSF9TRVBBUkFUT1IsO3QgdAotcyxAREVGU0AsJERF
RlMsO3QgdAogcyxATElCU0AsJExJQlMsO3QgdAogcyxAREVWSUxfTFRWRVJTSU9OQCwkREVWSUxf
TFRWRVJTSU9OLDt0IHQKIHMsQGJ1aWxkQCwkYnVpbGQsO3QgdApAQCAtMTAxMDYsMTIgKzEyODI2
LDcgQEAKIHMsQGFjX2N0X1JBTkxJQkAsJGFjX2N0X1JBTkxJQiw7dCB0CiBzLEBTVFJJUEAsJFNU
UklQLDt0IHQKIHMsQGFjX2N0X1NUUklQQCwkYWNfY3RfU1RSSVAsO3QgdAotcyxARExMVE9PTEAs
JERMTFRPT0wsO3QgdAotcyxAYWNfY3RfRExMVE9PTEAsJGFjX2N0X0RMTFRPT0wsO3QgdAotcyxA
QVNALCRBUyw7dCB0Ci1zLEBhY19jdF9BU0AsJGFjX2N0X0FTLDt0IHQKLXMsQE9CSkRVTVBALCRP
QkpEVU1QLDt0IHQKLXMsQGFjX2N0X09CSkRVTVBALCRhY19jdF9PQkpEVU1QLDt0IHQKK3MsQEVH
UkVQQCwkRUdSRVAsO3QgdAogcyxATElCVE9PTEAsJExJQlRPT0wsO3QgdAogcyxATUFJTlRBSU5F
Ul9NT0RFX1RSVUVALCRNQUlOVEFJTkVSX01PREVfVFJVRSw7dCB0CiBzLEBNQUlOVEFJTkVSX01P
REVfRkFMU0VALCRNQUlOVEFJTkVSX01PREVfRkFMU0UsO3QgdApAQCAtMTAxMjIsNyArMTI4Mzcs
NiBAQAogcyxATElCUE5HQCwkTElCUE5HLDt0IHQKIHMsQExJQkxDTVNALCRMSUJMQ01TLDt0IHQK
IHMsQExJQk1OR0AsJExJQk1ORyw7dCB0Ci1zLEBMSUJHSUZALCRMSUJHSUYsO3QgdAogcyxAc2Rs
X2NvbmZpZ0AsJHNkbF9jb25maWcsO3QgdAogcyxATElCU0RMQCwkTElCU0RMLDt0IHQKIHMsQEhT
RExALCRIU0RMLDt0IHQKQEAgLTEwMTg3LDExICsxMjkwMSwxMyBAQAogcyxATElCSUxVX0NGTEFH
U0AsJExJQklMVV9DRkxBR1MsO3QgdAogcyxATElCSUxVVF9DRkxBR1NALCRMSUJJTFVUX0NGTEFH
Uyw7dCB0CiBzLEBMSUJJTFVUX1dJTjMyTElCUEFUSEAsJExJQklMVVRfV0lOMzJMSUJQQVRILDt0
IHQKK3MsQExJQk9CSlNALCRMSUJPQkpTLDt0IHQKK3MsQExUTElCT0JKU0AsJExUTElCT0JKUyw7
dCB0CiBDRU9GCiAKLUVPRgorX0FDRU9GCiAKLSAgY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcRU9G
CisgIGNhdCA+PiRDT05GSUdfU1RBVFVTIDw8XF9BQ0VPRgogICAjIFNwbGl0IHRoZSBzdWJzdGl0
dXRpb25zIGludG8gYml0ZS1zaXplZCBwaWVjZXMgZm9yIHNlZHMgd2l0aAogICAjIHNtYWxsIGNv
bW1hbmQgbnVtYmVyIGxpbWl0cywgbGlrZSBvbiBEaWdpdGFsIE9TRi8xIGFuZCBIUC1VWC4KICAg
YWNfbWF4X3NlZF9saW5lcz00OApAQCAtMTAyMTYsOSArMTI5MzIsOSBAQAogICAgICAgKGVjaG8g
Jzp0CiAgIC9AW2EtekEtWl9dW2EtekEtWl8wLTldKkAvIWInICYmIGNhdCAkdG1wL3N1YnMuZnJh
ZykgPiR0bXAvc3Vicy0kYWNfc2VkX2ZyYWcuc2VkCiAgICAgICBpZiB0ZXN0IC16ICIkYWNfc2Vk
X2NtZHMiOyB0aGVuCi0gIAlhY19zZWRfY21kcz0ic2VkIC1mICR0bXAvc3Vicy0kYWNfc2VkX2Zy
YWcuc2VkIgorCWFjX3NlZF9jbWRzPSJzZWQgLWYgJHRtcC9zdWJzLSRhY19zZWRfZnJhZy5zZWQi
CiAgICAgICBlbHNlCi0gIAlhY19zZWRfY21kcz0iJGFjX3NlZF9jbWRzIHwgc2VkIC1mICR0bXAv
c3Vicy0kYWNfc2VkX2ZyYWcuc2VkIgorCWFjX3NlZF9jbWRzPSIkYWNfc2VkX2NtZHMgfCBzZWQg
LWYgJHRtcC9zdWJzLSRhY19zZWRfZnJhZy5zZWQiCiAgICAgICBmaQogICAgICAgYWNfc2VkX2Zy
YWc9YGV4cHIgJGFjX3NlZF9mcmFnICsgMWAKICAgICAgIGFjX2JlZz0kYWNfZW5kCkBAIC0xMDIz
MCw4NiArMTI5NDYsMTQxIEBACiAgIGZpCiBmaSAjIHRlc3QgLW4gIiRDT05GSUdfRklMRVMiCiAK
LUVPRgotY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcRU9GCitfQUNFT0YKK2NhdCA+PiRDT05GSUdf
U1RBVFVTIDw8XF9BQ0VPRgogZm9yIGFjX2ZpbGUgaW4gOiAkQ09ORklHX0ZJTEVTOyBkbyB0ZXN0
ICJ4JGFjX2ZpbGUiID0geDogJiYgY29udGludWUKICAgIyBTdXBwb3J0ICJvdXRmaWxlWzppbmZp
bGVbOmluZmlsZS4uLl1dIiwgZGVmYXVsdGluZyBpbmZpbGU9Im91dGZpbGUuaW4iLgogICBjYXNl
ICRhY19maWxlIGluCiAgIC0gfCAqOi0gfCAqOi06KiApICMgaW5wdXQgZnJvbSBzdGRpbgotICAg
ICAgICBjYXQgPiR0bXAvc3RkaW4KLSAgICAgICAgYWNfZmlsZV9pbj1gZWNobyAiJGFjX2ZpbGUi
IHwgc2VkICdzLFteOl0qOiwsJ2AKLSAgICAgICAgYWNfZmlsZT1gZWNobyAiJGFjX2ZpbGUiIHwg
c2VkICdzLDouKiwsJ2AgOzsKKwljYXQgPiR0bXAvc3RkaW4KKwlhY19maWxlX2luPWBlY2hvICIk
YWNfZmlsZSIgfCBzZWQgJ3MsW146XSo6LCwnYAorCWFjX2ZpbGU9YGVjaG8gIiRhY19maWxlIiB8
IHNlZCAncyw6LiosLCdgIDs7CiAgICo6KiApIGFjX2ZpbGVfaW49YGVjaG8gIiRhY19maWxlIiB8
IHNlZCAncyxbXjpdKjosLCdgCi0gICAgICAgIGFjX2ZpbGU9YGVjaG8gIiRhY19maWxlIiB8IHNl
ZCAncyw6LiosLCdgIDs7CisJYWNfZmlsZT1gZWNobyAiJGFjX2ZpbGUiIHwgc2VkICdzLDouKiws
J2AgOzsKICAgKiApICAgYWNfZmlsZV9pbj0kYWNfZmlsZS5pbiA7OwogICBlc2FjCiAKICAgIyBD
b21wdXRlIEBzcmNkaXJALCBAdG9wX3NyY2RpckAsIGFuZCBASU5TVEFMTEAgZm9yIHN1YmRpcmVj
dG9yaWVzLgotICBhY19kaXI9YCRhc19leHByIFgiJGFjX2ZpbGUiIDogJ1hcKC4qW14vXVwpLy8q
W14vXVteL10qLyokJyBcfCBcCi0gICAgICAgICBYIiRhY19maWxlIiA6ICdYXCgvL1wpW14vXScg
XHwgXAotICAgICAgICAgWCIkYWNfZmlsZSIgOiAnWFwoLy9cKSQnIFx8IFwKLSAgICAgICAgIFgi
JGFjX2ZpbGUiIDogJ1hcKC9cKScgXHwgXAotICAgICAgICAgLiAgICAgOiAnXCguXCknIDI+L2Rl
di9udWxsIHx8CisgIGFjX2Rpcj1gKGRpcm5hbWUgIiRhY19maWxlIikgMj4vZGV2L251bGwgfHwK
KyRhc19leHByIFgiJGFjX2ZpbGUiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBc
CisJIFgiJGFjX2ZpbGUiIDogJ1hcKC8vXClbXi9dJyBcfCBcCisJIFgiJGFjX2ZpbGUiIDogJ1hc
KC8vXCkkJyBcfCBcCisJIFgiJGFjX2ZpbGUiIDogJ1hcKC9cKScgXHwgXAorCSAuICAgICA6ICdc
KC5cKScgMj4vZGV2L251bGwgfHwKIGVjaG8gWCIkYWNfZmlsZSIgfAogICAgIHNlZCAnL15YXCgu
KlteL11cKVwvXC8qW14vXVteL10qXC8qJC97IHMvL1wxLzsgcTsgfQogICAJICAvXlhcKFwvXC9c
KVteL10uKi97IHMvL1wxLzsgcTsgfQogICAJICAvXlhcKFwvXC9cKSQveyBzLy9cMS87IHE7IH0K
ICAgCSAgL15YXChcL1wpLioveyBzLy9cMS87IHE7IH0KICAgCSAgcy8uKi8uLzsgcSdgCi0gIGlm
IHRlc3QgIiRhY19kaXIiICE9ICIkYWNfZmlsZSIgJiYgdGVzdCAiJGFjX2RpciIgIT0gLjsgdGhl
bgotICAgIHsgY2FzZSAiJGFjX2RpciIgaW4KLSAgW1xcL10qIHwgPzpbXFwvXSogKSBhc19pbmNy
X2Rpcj07OwotICAqKSAgICAgICAgICAgICAgICAgICAgICBhc19pbmNyX2Rpcj0uOzsKLWVzYWMK
LWFzX2R1bW15PSIkYWNfZGlyIgotZm9yIGFzX21rZGlyX2RpciBpbiBgSUZTPScvXFwnOyBzZXQg
WCAkYXNfZHVtbXk7IHNoaWZ0OyBlY2hvICIkQCJgOyBkbwotICBjYXNlICRhc19ta2Rpcl9kaXIg
aW4KLSAgICAjIFNraXAgRE9TIGRyaXZlc3BlYwotICAgID86KSBhc19pbmNyX2Rpcj0kYXNfbWtk
aXJfZGlyIDs7Ci0gICAgKikKLSAgICAgIGFzX2luY3JfZGlyPSRhc19pbmNyX2Rpci8kYXNfbWtk
aXJfZGlyCi0gICAgICB0ZXN0IC1kICIkYXNfaW5jcl9kaXIiIHx8IG1rZGlyICIkYXNfaW5jcl9k
aXIiCi0gICAgOzsKLSAgZXNhYwotZG9uZTsgfQotCi0gICAgYWNfZGlyX3N1ZmZpeD0iL2BlY2hv
ICRhY19kaXJ8c2VkICdzLF5cLi8sLCdgIgotICAgICMgQSAiLi4vIiBmb3IgZWFjaCBkaXJlY3Rv
cnkgaW4gJGFjX2Rpcl9zdWZmaXguCi0gICAgYWNfZG90cz1gZWNobyAiJGFjX2Rpcl9zdWZmaXgi
IHwgc2VkICdzLC9bXi9dKiwuLi8sZydgCisgIHsgaWYgJGFzX21rZGlyX3A7IHRoZW4KKyAgICBt
a2RpciAtcCAiJGFjX2RpciIKICAgZWxzZQotICAgIGFjX2Rpcl9zdWZmaXg9IGFjX2RvdHM9Ci0g
IGZpCi0KLSAgY2FzZSAkc3JjZGlyIGluCi0gIC4pICBhY19zcmNkaXI9LgotICAgICAgaWYgdGVz
dCAteiAiJGFjX2RvdHMiOyB0aGVuCi0gICAgICAgICBhY190b3Bfc3JjZGlyPS4KLSAgICAgIGVs
c2UKLSAgICAgICAgIGFjX3RvcF9zcmNkaXI9YGVjaG8gJGFjX2RvdHMgfCBzZWQgJ3MsLyQsLCdg
Ci0gICAgICBmaSA7OwotICBbXFwvXSogfCA/OltcXC9dKiApCi0gICAgICBhY19zcmNkaXI9JHNy
Y2RpciRhY19kaXJfc3VmZml4OwotICAgICAgYWNfdG9wX3NyY2Rpcj0kc3JjZGlyIDs7CisgICAg
YXNfZGlyPSIkYWNfZGlyIgorICAgIGFzX2RpcnM9CisgICAgd2hpbGUgdGVzdCAhIC1kICIkYXNf
ZGlyIjsgZG8KKyAgICAgIGFzX2RpcnM9IiRhc19kaXIgJGFzX2RpcnMiCisgICAgICBhc19kaXI9
YChkaXJuYW1lICIkYXNfZGlyIikgMj4vZGV2L251bGwgfHwKKyRhc19leHByIFgiJGFzX2RpciIg
OiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKKwkgWCIkYXNfZGlyIiA6ICdYXCgv
L1wpW14vXScgXHwgXAorCSBYIiRhc19kaXIiIDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJGFzX2Rp
ciIgOiAnWFwoL1wpJyBcfCBcCisJIC4gICAgIDogJ1woLlwpJyAyPi9kZXYvbnVsbCB8fAorZWNo
byBYIiRhc19kaXIiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQv
eyBzLy9cMS87IHE7IH0KKyAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KKyAg
CSAgL15YXChcL1wvXCkkL3sgcy8vXDEvOyBxOyB9CisgIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEv
OyBxOyB9CisgIAkgIHMvLiovLi87IHEnYAorICAgIGRvbmUKKyAgICB0ZXN0ICEgLW4gIiRhc19k
aXJzIiB8fCBta2RpciAkYXNfZGlycworICBmaSB8fCB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86
IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSBcIiRhY19kaXJcIiIgPiY1CitlY2hvICIk
YXNfbWU6IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSBcIiRhY19kaXJcIiIgPiYyO30K
KyAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTsgfQorCisgIGFjX2J1aWxkZGlyPS4KKworaWYg
dGVzdCAiJGFjX2RpciIgIT0gLjsgdGhlbgorICBhY19kaXJfc3VmZml4PS9gZWNobyAiJGFjX2Rp
ciIgfCBzZWQgJ3MsXlwuW1xcL10sLCdgCisgICMgQSAiLi4vIiBmb3IgZWFjaCBkaXJlY3Rvcnkg
aW4gJGFjX2Rpcl9zdWZmaXguCisgIGFjX3RvcF9idWlsZGRpcj1gZWNobyAiJGFjX2Rpcl9zdWZm
aXgiIHwgc2VkICdzLC9bXlxcL10qLC4uLyxnJ2AKK2Vsc2UKKyAgYWNfZGlyX3N1ZmZpeD0gYWNf
dG9wX2J1aWxkZGlyPQorZmkKKworY2FzZSAkc3JjZGlyIGluCisgIC4pICAjIE5vIC0tc3JjZGly
IG9wdGlvbi4gIFdlIGFyZSBidWlsZGluZyBpbiBwbGFjZS4KKyAgICBhY19zcmNkaXI9LgorICAg
IGlmIHRlc3QgLXogIiRhY190b3BfYnVpbGRkaXIiOyB0aGVuCisgICAgICAgYWNfdG9wX3NyY2Rp
cj0uCisgICAgZWxzZQorICAgICAgIGFjX3RvcF9zcmNkaXI9YGVjaG8gJGFjX3RvcF9idWlsZGRp
ciB8IHNlZCAncywvJCwsJ2AKKyAgICBmaSA7OworICBbXFwvXSogfCA/OltcXC9dKiApICAjIEFi
c29sdXRlIHBhdGguCisgICAgYWNfc3JjZGlyPSRzcmNkaXIkYWNfZGlyX3N1ZmZpeDsKKyAgICBh
Y190b3Bfc3JjZGlyPSRzcmNkaXIgOzsKICAgKikgIyBSZWxhdGl2ZSBwYXRoLgotICAgIGFjX3Ny
Y2Rpcj0kYWNfZG90cyRzcmNkaXIkYWNfZGlyX3N1ZmZpeAotICAgIGFjX3RvcF9zcmNkaXI9JGFj
X2RvdHMkc3JjZGlyIDs7Ci0gIGVzYWMKKyAgICBhY19zcmNkaXI9JGFjX3RvcF9idWlsZGRpciRz
cmNkaXIkYWNfZGlyX3N1ZmZpeAorICAgIGFjX3RvcF9zcmNkaXI9JGFjX3RvcF9idWlsZGRpciRz
cmNkaXIgOzsKK2VzYWMKK2Nhc2UgIiRhY19kaXIiIGluCisuKSBhY19hYnNfYnVpbGRkaXI9JGFj
X2J1aWxkZGlyOzsKKyopCisgIGNhc2UgJGFjX2J1aWxkZGlyIGluCisgIC4pIGFjX2Fic19idWls
ZGRpcj0iJGFjX2RpciI7OworICBbXFwvXSogfCA/OltcXC9dKiApIGFjX2Fic19idWlsZGRpcj0k
YWNfYnVpbGRkaXI7OworICAqKSBhY19hYnNfYnVpbGRkaXI9IiRhY19kaXIiLyRhY19idWlsZGRp
cjs7CisgIGVzYWM7OworZXNhYworY2FzZSAiJGFjX2RpciIgaW4KKy4pIGFjX2Fic190b3BfYnVp
bGRkaXI9JHthY190b3BfYnVpbGRkaXJ9Ljs7CisqKQorICBjYXNlICR7YWNfdG9wX2J1aWxkZGly
fS4gaW4KKyAgLikgYWNfYWJzX3RvcF9idWlsZGRpcj0iJGFjX2RpciI7OworICBbXFwvXSogfCA/
OltcXC9dKiApIGFjX2Fic190b3BfYnVpbGRkaXI9JHthY190b3BfYnVpbGRkaXJ9Ljs7CisgICop
IGFjX2Fic190b3BfYnVpbGRkaXI9IiRhY19kaXIiLyR7YWNfdG9wX2J1aWxkZGlyfS47OworICBl
c2FjOzsKK2VzYWMKK2Nhc2UgIiRhY19kaXIiIGluCisuKSBhY19hYnNfc3JjZGlyPSRhY19zcmNk
aXI7OworKikKKyAgY2FzZSAkYWNfc3JjZGlyIGluCisgIC4pIGFjX2Fic19zcmNkaXI9IiRhY19k
aXIiOzsKKyAgW1xcL10qIHwgPzpbXFwvXSogKSBhY19hYnNfc3JjZGlyPSRhY19zcmNkaXI7Owor
ICAqKSBhY19hYnNfc3JjZGlyPSIkYWNfZGlyIi8kYWNfc3JjZGlyOzsKKyAgZXNhYzs7Citlc2Fj
CitjYXNlICIkYWNfZGlyIiBpbgorLikgYWNfYWJzX3RvcF9zcmNkaXI9JGFjX3RvcF9zcmNkaXI7
OworKikKKyAgY2FzZSAkYWNfdG9wX3NyY2RpciBpbgorICAuKSBhY19hYnNfdG9wX3NyY2Rpcj0i
JGFjX2RpciI7OworICBbXFwvXSogfCA/OltcXC9dKiApIGFjX2Fic190b3Bfc3JjZGlyPSRhY190
b3Bfc3JjZGlyOzsKKyAgKikgYWNfYWJzX3RvcF9zcmNkaXI9IiRhY19kaXIiLyRhY190b3Bfc3Jj
ZGlyOzsKKyAgZXNhYzs7Citlc2FjCisKIAogICBjYXNlICRJTlNUQUxMIGluCiAgIFtcXC8kXSog
fCA/OltcXC9dKiApIGFjX0lOU1RBTEw9JElOU1RBTEwgOzsKLSAgKikgYWNfSU5TVEFMTD0kYWNf
ZG90cyRJTlNUQUxMIDs7CisgICopIGFjX0lOU1RBTEw9JGFjX3RvcF9idWlsZGRpciRJTlNUQUxM
IDs7CiAgIGVzYWMKIAogICBpZiB0ZXN0IHgiJGFjX2ZpbGUiICE9IHgtOyB0aGVuCi0gICAgeyBl
Y2hvICIkYXNfbWU6MTAyMjk6IGNyZWF0aW5nICRhY19maWxlIiA+JjUKKyAgICB7IGVjaG8gIiRh
c19tZTokTElORU5POiBjcmVhdGluZyAkYWNfZmlsZSIgPiY1CiBlY2hvICIkYXNfbWU6IGNyZWF0
aW5nICRhY19maWxlIiA+JjY7fQogICAgIHJtIC1mICIkYWNfZmlsZSIKICAgZmkKICAgIyBMZXQn
cyBzdGlsbCBwcmV0ZW5kIGl0IGlzIGBjb25maWd1cmUnIHdoaWNoIGluc3RhbnRpYXRlcyAoaS5l
LiwgZG9uJ3QKICAgIyB1c2UgJGFzX21lKSwgcGVvcGxlIHdvdWxkIGJlIHN1cnByaXNlZCB0byBy
ZWFkOgotICAjICAgIC8qIGNvbmZpZy5oLiAgR2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgY29u
ZmlnLnN0YXR1cy4gICovCi0gIGNvbmZpZ3VyZV9pbnB1dD0iR2VuZXJhdGVkIGF1dG9tYXRpY2Fs
bHkgZnJvbSBgZWNobyAkYWNfZmlsZV9pbiB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VkICdzLC4qLywsJ2AgYnkgY29uZmlndXJlLiIKKyAgIyAg
ICAvKiBjb25maWcuaC4gIEdlbmVyYXRlZCBieSBjb25maWcuc3RhdHVzLiAgKi8KKyAgaWYgdGVz
dCB4IiRhY19maWxlIiA9IHgtOyB0aGVuCisgICAgY29uZmlndXJlX2lucHV0PQorICBlbHNlCisg
ICAgY29uZmlndXJlX2lucHV0PSIkYWNfZmlsZS4gICIKKyAgZmkKKyAgY29uZmlndXJlX2lucHV0
PSRjb25maWd1cmVfaW5wdXQiR2VuZXJhdGVkIGZyb20gYGVjaG8gJGFjX2ZpbGVfaW4gfAorCQkJ
CSAgICAgc2VkICdzLC4qLywsJ2AgYnkgY29uZmlndXJlLiIKIAogICAjIEZpcnN0IGxvb2sgZm9y
IHRoZSBpbnB1dCBmaWxlcyBpbiB0aGUgYnVpbGQgdHJlZSwgb3RoZXJ3aXNlIGluIHRoZQogICAj
IHNyYyB0cmVlLgpAQCAtMTAzMTgsMzcgKzEzMDg5LDQzIEBACiAgICAgICBjYXNlICRmIGluCiAg
ICAgICAtKSBlY2hvICR0bXAvc3RkaW4gOzsKICAgICAgIFtcXC8kXSopCi0gICAgICAgICAjIEFi
c29sdXRlIChjYW4ndCBiZSBET1Mtc3R5bGUsIGFzIElGUz06KQotICAgICAgICAgdGVzdCAtZiAi
JGYiIHx8IHsgeyBlY2hvICIkYXNfbWU6MTAyNDc6IGVycm9yOiBjYW5ub3QgZmluZCBpbnB1dCBm
aWxlOiAkZiIgPiY1CisJICMgQWJzb2x1dGUgKGNhbid0IGJlIERPUy1zdHlsZSwgYXMgSUZTPTop
CisJIHRlc3QgLWYgIiRmIiB8fCB7IHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGVycm9yOiBjYW5u
b3QgZmluZCBpbnB1dCBmaWxlOiAkZiIgPiY1CiBlY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3Qg
ZmluZCBpbnB1dCBmaWxlOiAkZiIgPiYyO30KICAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfQot
ICAgICAgICAgZWNobyAkZjs7CisJIGVjaG8gIiRmIjs7CiAgICAgICAqKSAjIFJlbGF0aXZlCi0g
ICAgICAgICBpZiB0ZXN0IC1mICIkZiI7IHRoZW4KLSAgICAgICAgICAgIyBCdWlsZCB0cmVlCi0g
ICAgICAgICAgIGVjaG8gJGYKLSAgICAgICAgIGVsaWYgdGVzdCAtZiAiJHNyY2Rpci8kZiI7IHRo
ZW4KLSAgICAgICAgICAgIyBTb3VyY2UgdHJlZQotICAgICAgICAgICBlY2hvICRzcmNkaXIvJGYK
LSAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIyAvZGV2L251bGwgdHJlZQotICAgICAgICAgICB7
IHsgZWNobyAiJGFzX21lOjEwMjYwOiBlcnJvcjogY2Fubm90IGZpbmQgaW5wdXQgZmlsZTogJGYi
ID4mNQorCSBpZiB0ZXN0IC1mICIkZiI7IHRoZW4KKwkgICAjIEJ1aWxkIHRyZWUKKwkgICBlY2hv
ICIkZiIKKwkgZWxpZiB0ZXN0IC1mICIkc3JjZGlyLyRmIjsgdGhlbgorCSAgICMgU291cmNlIHRy
ZWUKKwkgICBlY2hvICIkc3JjZGlyLyRmIgorCSBlbHNlCisJICAgIyAvZGV2L251bGwgdHJlZQor
CSAgIHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBmaW5kIGlucHV0IGZp
bGU6ICRmIiA+JjUKIGVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBmaW5kIGlucHV0IGZpbGU6
ICRmIiA+JjI7fQogICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9Ci0gICAgICAgICBmaTs7CisJ
IGZpOzsKICAgICAgIGVzYWMKICAgICBkb25lYCB8fCB7IChleGl0IDEpOyBleGl0IDE7IH0KLUVP
RgotY2F0ID4+JENPTkZJR19TVEFUVVMgPDxFT0YKK19BQ0VPRgorY2F0ID4+JENPTkZJR19TVEFU
VVMgPDxfQUNFT0YKICAgc2VkICIkYWNfdnBzdWIKICRleHRyYXN1YgotRU9GCi1jYXQgPj4kQ09O
RklHX1NUQVRVUyA8PFxFT0YKK19BQ0VPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9G
CiA6dAogL0BbYS16QS1aX11bYS16QS1aXzAtOV0qQC8hYgogcyxAY29uZmlndXJlX2lucHV0QCwk
Y29uZmlndXJlX2lucHV0LDt0IHQKIHMsQHNyY2RpckAsJGFjX3NyY2Rpciw7dCB0CitzLEBhYnNf
c3JjZGlyQCwkYWNfYWJzX3NyY2Rpciw7dCB0CiBzLEB0b3Bfc3JjZGlyQCwkYWNfdG9wX3NyY2Rp
ciw7dCB0CitzLEBhYnNfdG9wX3NyY2RpckAsJGFjX2Fic190b3Bfc3JjZGlyLDt0IHQKK3MsQGJ1
aWxkZGlyQCwkYWNfYnVpbGRkaXIsO3QgdAorcyxAYWJzX2J1aWxkZGlyQCwkYWNfYWJzX2J1aWxk
ZGlyLDt0IHQKK3MsQHRvcF9idWlsZGRpckAsJGFjX3RvcF9idWlsZGRpciw7dCB0CitzLEBhYnNf
dG9wX2J1aWxkZGlyQCwkYWNfYWJzX3RvcF9idWlsZGRpciw7dCB0CiBzLEBJTlNUQUxMQCwkYWNf
SU5TVEFMTCw7dCB0CiAiICRhY19maWxlX2lucHV0cyB8IChldmFsICIkYWNfc2VkX2NtZHMiKSA+
JHRtcC9vdXQKICAgcm0gLWYgJHRtcC9zdGRpbgpAQCAtMTAzNjAsOCArMTMxMzcsOCBAQAogICBm
aQogCiBkb25lCi1FT0YKLWNhdCA+PiRDT05GSUdfU1RBVFVTIDw8XEVPRgorX0FDRU9GCitjYXQg
Pj4kQ09ORklHX1NUQVRVUyA8PFxfQUNFT0YKIAogIwogIyBDT05GSUdfSEVBREVSIHNlY3Rpb24u
CkBAIC0xMDM3MSwxMiArMTMxNDgsMTIgQEAKICMgTkFNRSBpcyB0aGUgY3BwIG1hY3JvIGJlaW5n
IGRlZmluZWQgYW5kIFZBTFVFIGlzIHRoZSB2YWx1ZSBpdCBpcyBiZWluZyBnaXZlbi4KICMKICMg
YWNfZCBzZXRzIHRoZSB2YWx1ZSBpbiAiI2RlZmluZSBOQU1FIFZBTFVFIiBsaW5lcy4KLWFjX2RB
PSdzLF5cKFsgCV0qXCkjXChbIAldKmRlZmluZVsgCV1bIAldKlwpJwotYWNfZEI9J1sgCV0uKiQs
XDEjXDInCithY19kQT0ncyxeXChbCSBdKlwpI1woWwkgXSpkZWZpbmVbCSBdWwkgXSpcKScKK2Fj
X2RCPSdbCSBdLiokLFwxI1wyJwogYWNfZEM9JyAnCiBhY19kRD0nLDt0JwogIyBhY191IHR1cm5z
ICIjdW5kZWYgTkFNRSIgd2l0aG91dCB0cmFpbGluZyBibGFua3MgaW50byAiI2RlZmluZSBOQU1F
IFZBTFVFIi4KLWFjX3VBPSdzLF5cKFsgCV0qXCkjXChbIAldKlwpdW5kZWZcKFsgCV1bIAldKlwp
JworYWNfdUE9J3MsXlwoWwkgXSpcKSNcKFsJIF0qXCl1bmRlZlwoWwkgXVsJIF0qXCknCiBhY191
Qj0nJCxcMSNcMmRlZmluZVwzJwogYWNfdUM9JyAnCiBhY191RD0nLDt0JwpAQCAtMTAzODUsMTUg
KzEzMTYyLDE1IEBACiAgICMgU3VwcG9ydCAib3V0ZmlsZVs6aW5maWxlWzppbmZpbGUuLi5dXSIs
IGRlZmF1bHRpbmcgaW5maWxlPSJvdXRmaWxlLmluIi4KICAgY2FzZSAkYWNfZmlsZSBpbgogICAt
IHwgKjotIHwgKjotOiogKSAjIGlucHV0IGZyb20gc3RkaW4KLSAgICAgICAgY2F0ID4kdG1wL3N0
ZGluCi0gICAgICAgIGFjX2ZpbGVfaW49YGVjaG8gIiRhY19maWxlIiB8IHNlZCAncyxbXjpdKjos
LCdgCi0gICAgICAgIGFjX2ZpbGU9YGVjaG8gIiRhY19maWxlIiB8IHNlZCAncyw6LiosLCdgIDs7
CisJY2F0ID4kdG1wL3N0ZGluCisJYWNfZmlsZV9pbj1gZWNobyAiJGFjX2ZpbGUiIHwgc2VkICdz
LFteOl0qOiwsJ2AKKwlhY19maWxlPWBlY2hvICIkYWNfZmlsZSIgfCBzZWQgJ3MsOi4qLCwnYCA7
OwogICAqOiogKSBhY19maWxlX2luPWBlY2hvICIkYWNfZmlsZSIgfCBzZWQgJ3MsW146XSo6LCwn
YAotICAgICAgICBhY19maWxlPWBlY2hvICIkYWNfZmlsZSIgfCBzZWQgJ3MsOi4qLCwnYCA7Owor
CWFjX2ZpbGU9YGVjaG8gIiRhY19maWxlIiB8IHNlZCAncyw6LiosLCdgIDs7CiAgICogKSAgIGFj
X2ZpbGVfaW49JGFjX2ZpbGUuaW4gOzsKICAgZXNhYwogCi0gIHRlc3QgeCIkYWNfZmlsZSIgIT0g
eC0gJiYgeyBlY2hvICIkYXNfbWU6MTAzMjE6IGNyZWF0aW5nICRhY19maWxlIiA+JjUKKyAgdGVz
dCB4IiRhY19maWxlIiAhPSB4LSAmJiB7IGVjaG8gIiRhc19tZTokTElORU5POiBjcmVhdGluZyAk
YWNfZmlsZSIgPiY1CiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19maWxlIiA+JjY7fQogCiAg
ICMgRmlyc3QgbG9vayBmb3IgdGhlIGlucHV0IGZpbGVzIGluIHRoZSBidWlsZCB0cmVlLCBvdGhl
cndpc2UgaW4gdGhlCkBAIC0xMDQwMywzMCArMTMxODAsMzEgQEAKICAgICAgIGNhc2UgJGYgaW4K
ICAgICAgIC0pIGVjaG8gJHRtcC9zdGRpbiA7OwogICAgICAgW1xcLyRdKikKLSAgICAgICAgICMg
QWJzb2x1dGUgKGNhbid0IGJlIERPUy1zdHlsZSwgYXMgSUZTPTopCi0gICAgICAgICB0ZXN0IC1m
ICIkZiIgfHwgeyB7IGVjaG8gIiRhc19tZToxMDMzMjogZXJyb3I6IGNhbm5vdCBmaW5kIGlucHV0
IGZpbGU6ICRmIiA+JjUKKwkgIyBBYnNvbHV0ZSAoY2FuJ3QgYmUgRE9TLXN0eWxlLCBhcyBJRlM9
OikKKwkgdGVzdCAtZiAiJGYiIHx8IHsgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXJyb3I6IGNh
bm5vdCBmaW5kIGlucHV0IGZpbGU6ICRmIiA+JjUKIGVjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5v
dCBmaW5kIGlucHV0IGZpbGU6ICRmIiA+JjI7fQogICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9
Ci0gICAgICAgICBlY2hvICRmOzsKKwkgIyBEbyBxdW90ZSAkZiwgdG8gcHJldmVudCBET1MgcGF0
aHMgZnJvbSBiZWluZyBJRlMnZC4KKwkgZWNobyAiJGYiOzsKICAgICAgICopICMgUmVsYXRpdmUK
LSAgICAgICAgIGlmIHRlc3QgLWYgIiRmIjsgdGhlbgotICAgICAgICAgICAjIEJ1aWxkIHRyZWUK
LSAgICAgICAgICAgZWNobyAkZgotICAgICAgICAgZWxpZiB0ZXN0IC1mICIkc3JjZGlyLyRmIjsg
dGhlbgotICAgICAgICAgICAjIFNvdXJjZSB0cmVlCi0gICAgICAgICAgIGVjaG8gJHNyY2Rpci8k
ZgotICAgICAgICAgZWxzZQotICAgICAgICAgICAjIC9kZXYvbnVsbCB0cmVlCi0gICAgICAgICAg
IHsgeyBlY2hvICIkYXNfbWU6MTAzNDU6IGVycm9yOiBjYW5ub3QgZmluZCBpbnB1dCBmaWxlOiAk
ZiIgPiY1CisJIGlmIHRlc3QgLWYgIiRmIjsgdGhlbgorCSAgICMgQnVpbGQgdHJlZQorCSAgIGVj
aG8gIiRmIgorCSBlbGlmIHRlc3QgLWYgIiRzcmNkaXIvJGYiOyB0aGVuCisJICAgIyBTb3VyY2Ug
dHJlZQorCSAgIGVjaG8gIiRzcmNkaXIvJGYiCisJIGVsc2UKKwkgICAjIC9kZXYvbnVsbCB0cmVl
CisJICAgeyB7IGVjaG8gIiRhc19tZTokTElORU5POiBlcnJvcjogY2Fubm90IGZpbmQgaW5wdXQg
ZmlsZTogJGYiID4mNQogZWNobyAiJGFzX21lOiBlcnJvcjogY2Fubm90IGZpbmQgaW5wdXQgZmls
ZTogJGYiID4mMjt9CiAgICB7IChleGl0IDEpOyBleGl0IDE7IH07IH0KLSAgICAgICAgIGZpOzsK
KwkgZmk7OwogICAgICAgZXNhYwogICAgIGRvbmVgIHx8IHsgKGV4aXQgMSk7IGV4aXQgMTsgfQog
ICAjIFJlbW92ZSB0aGUgdHJhaWxpbmcgc3BhY2VzLgotICBzZWQgJ3MvWyAJXSokLy8nICRhY19m
aWxlX2lucHV0cyA+JHRtcC9pbgorICBzZWQgJ3MvWwkgXSokLy8nICRhY19maWxlX2lucHV0cyA+
JHRtcC9pbgogCi1FT0YKK19BQ0VPRgogCiAjIFRyYW5zZm9ybSBjb25mZGVmcy5oIGludG8gdHdv
IHNlZCBzY3JpcHRzLCBgY29uZnRlc3QuZGVmaW5lcycgYW5kCiAjIGBjb25mdGVzdC51bmRlZnMn
LCB0aGF0IHN1YnN0aXR1dGVzIHRoZSBwcm9wZXIgdmFsdWVzIGludG8KQEAgLTEwNDQyLDE2ICsx
MzIyMCwxNiBAQAogIyBgZW5kJyBpcyB1c2VkIHRvIGF2b2lkIHRoYXQgdGhlIHNlY29uZCBtYWlu
IHNlZCBjb21tYW5kIChtZWFudCBmb3IKICMgMC1hcnkgQ1BQIG1hY3JvcykgYXBwbGllcyB0byBu
LWFyeSBtYWNybyBkZWZpbml0aW9ucy4KICMgU2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9u
IGZvciBgY2xlYXInLgotY2F0ID5jb25mZGVmMnNlZC5zZWQgPDxcRU9GCitjYXQgPmNvbmZkZWYy
c2VkLnNlZCA8PFxfQUNFT0YKIHMvW1xcJixdL1xcJi9nCiBzLFtcXCRgXSxcXCYsZwogdCBjbGVh
cgogOiBjbGVhcgotcyxeWyAJXSojWyAJXSpkZWZpbmVbIAldWyAJXSpcKFwoW14gCShdW14gCShd
KlwpKFteKV0qKVwpWyAJXSpcKC4qXCkkLCR7YWNfZEF9XDIke2FjX2RCfVwxJHthY19kQ31cMyR7
YWNfZER9LGdwCitzLF5bCSBdKiNbCSBdKmRlZmluZVsJIF1bCSBdKlwoW14JIChdW14JIChdKlwp
XCgoW14pXSopXClbCSBdKlwoLipcKSQsJHthY19kQX1cMSR7YWNfZEJ9XDFcMiR7YWNfZEN9XDMk
e2FjX2REfSxncAogdCBlbmQKLXMsXlsgCV0qI1sgCV0qZGVmaW5lWyAJXVsgCV0qXChbXiAJXVte
IAldKlwpWyAJXSpcKC4qXCkkLCR7YWNfZEF9XDEke2FjX2RCfVwxJHthY19kQ31cMiR7YWNfZER9
LGdwCitzLF5bCSBdKiNbCSBdKmRlZmluZVsJIF1bCSBdKlwoW14JIF1bXgkgXSpcKVsJIF0qXCgu
KlwpJCwke2FjX2RBfVwxJHthY19kQn1cMSR7YWNfZEN9XDIke2FjX2REfSxncAogOiBlbmQKLUVP
RgorX0FDRU9GCiAjIElmIHNvbWUgbWFjcm9zIHdlcmUgY2FsbGVkIHNldmVyYWwgdGltZXMgdGhl
cmUgbWlnaHQgYmUgc2V2ZXJhbCB0aW1lcwogIyB0aGUgc2FtZSAjZGVmaW5lcywgd2hpY2ggaXMg
dXNlbGVzcy4gIE5ldmVydGhlbGVzcywgd2UgbWF5IG5vdCB3YW50IHRvCiAjIHNvcnQgdGhlbSwg
c2luY2Ugd2Ugd2FudCB0aGUgKmxhc3QqIEFDLURFRklORSB0byBiZSBob25vcmVkLgpAQCAtMTA0
NjIsMTQgKzEzMjQwLDE0IEBACiAjIFRoaXMgc2VkIGNvbW1hbmQgcmVwbGFjZXMgI3VuZGVmIHdp
dGggY29tbWVudHMuICBUaGlzIGlzIG5lY2Vzc2FyeSwgZm9yCiAjIGV4YW1wbGUsIGluIHRoZSBj
YXNlIG9mIF9QT1NJWF9TT1VSQ0UsIHdoaWNoIGlzIHByZWRlZmluZWQgYW5kIHJlcXVpcmVkCiAj
IG9uIHNvbWUgc3lzdGVtcyB3aGVyZSBjb25maWd1cmUgd2lsbCBub3QgZGVjaWRlIHRvIGRlZmlu
ZSBpdC4KLWNhdCA+PmNvbmZ0ZXN0LnVuZGVmcyA8PFxFT0YKLXMsXlsgCV0qI1sgCV0qdW5kZWZb
IAldWyAJXSpbYS16QS1aX11bYS16QS1aXzAtOV0qLC8qICYgKi8sCi1FT0YKK2NhdCA+PmNvbmZ0
ZXN0LnVuZGVmcyA8PFxfQUNFT0YKK3MsXlsJIF0qI1sJIF0qdW5kZWZbCSBdWwkgXSpbYS16QS1a
X11bYS16QS1aXzAtOV0qLC8qICYgKi8sCitfQUNFT0YKIAogIyBCcmVhayB1cCBjb25mdGVzdC5k
ZWZpbmVzIGJlY2F1c2Ugc29tZSBzaGVsbHMgaGF2ZSBhIGxpbWl0IG9uIHRoZSBzaXplCiAjIG9m
IGhlcmUgZG9jdW1lbnRzLCBhbmQgb2xkIHNlZHMgaGF2ZSBzbWFsbCBsaW1pdHMgdG9vICgxMDAg
Y21kcykuCiBlY2hvICcgICMgSGFuZGxlIGFsbCB0aGUgI2RlZmluZSB0ZW1wbGF0ZXMgb25seSBp
ZiBuZWNlc3NhcnkuJyA+PiRDT05GSUdfU1RBVFVTCi1lY2hvICcgIGlmIGVncmVwICJeWyAJXSoj
WyAJXSpkZWZpbmUiICR0bXAvaW4gPi9kZXYvbnVsbDsgdGhlbicgPj4kQ09ORklHX1NUQVRVUwor
ZWNobyAnICBpZiBncmVwICJeWwkgXSojWwkgXSpkZWZpbmUiICR0bXAvaW4gPi9kZXYvbnVsbDsg
dGhlbicgPj4kQ09ORklHX1NUQVRVUwogZWNobyAnICAjIElmIHRoZXJlIGFyZSBubyBkZWZpbmVz
LCB3ZSBtYXkgaGF2ZSBhbiBlbXB0eSBpZi9maScgPj4kQ09ORklHX1NUQVRVUwogZWNobyAnICA6
JyA+PiRDT05GSUdfU1RBVFVTCiBybSAtZiBjb25mdGVzdC50YWlsCkBAIC0xMDQ3OCw3ICsxMzI1
Niw3IEBACiAgICMgV3JpdGUgYSBsaW1pdGVkLXNpemUgaGVyZSBkb2N1bWVudCB0byAkdG1wL2Rl
ZmluZXMuc2VkLgogICBlY2hvICcgIGNhdCA+JHRtcC9kZWZpbmVzLnNlZCA8PENFT0YnID4+JENP
TkZJR19TVEFUVVMKICAgIyBTcGVlZCB1cDogZG9uJ3QgY29uc2lkZXIgdGhlIG5vbiBgI2RlZmlu
ZScgbGluZXMuCi0gIGVjaG8gJy9eWyAJXSojWyAJXSpkZWZpbmUvIWInID4+JENPTkZJR19TVEFU
VVMKKyAgZWNobyAnL15bCSBdKiNbCSBdKmRlZmluZS8hYicgPj4kQ09ORklHX1NUQVRVUwogICAj
IFdvcmsgYXJvdW5kIHRoZSBmb3JnZXQtdG8tcmVzZXQtdGhlLWZsYWcgYnVnLgogICBlY2hvICd0
IGNscicgPj4kQ09ORklHX1NUQVRVUwogICBlY2hvICc6IGNscicgPj4kQ09ORklHX1NUQVRVUwpA
QCAtMTA0OTMsNyArMTMyNzEsNyBAQAogICBtdiBjb25mdGVzdC50YWlsIGNvbmZ0ZXN0LmRlZmlu
ZXMKIGRvbmUKIHJtIC1mIGNvbmZ0ZXN0LmRlZmluZXMKLWVjaG8gJyAgZmkgIyBlZ3JlcCcgPj4k
Q09ORklHX1NUQVRVUworZWNobyAnICBmaSAjIGdyZXAnID4+JENPTkZJR19TVEFUVVMKIGVjaG8g
Pj4kQ09ORklHX1NUQVRVUwogCiAjIEJyZWFrIHVwIGNvbmZ0ZXN0LnVuZGVmcyBiZWNhdXNlIHNv
bWUgc2hlbGxzIGhhdmUgYSBsaW1pdCBvbiB0aGUgc2l6ZQpAQCAtMTA1MDUsNyArMTMyODMsNyBA
QAogICAjIFdyaXRlIGEgbGltaXRlZC1zaXplIGhlcmUgZG9jdW1lbnQgdG8gJHRtcC91bmRlZnMu
c2VkLgogICBlY2hvICcgIGNhdCA+JHRtcC91bmRlZnMuc2VkIDw8Q0VPRicgPj4kQ09ORklHX1NU
QVRVUwogICAjIFNwZWVkIHVwOiBkb24ndCBjb25zaWRlciB0aGUgbm9uIGAjdW5kZWYnCi0gIGVj
aG8gJy9eWyAJXSojWyAJXSp1bmRlZi8hYicgPj4kQ09ORklHX1NUQVRVUworICBlY2hvICcvXlsJ
IF0qI1sJIF0qdW5kZWYvIWInID4+JENPTkZJR19TVEFUVVMKICAgIyBXb3JrIGFyb3VuZCB0aGUg
Zm9yZ2V0LXRvLXJlc2V0LXRoZS1mbGFnIGJ1Zy4KICAgZWNobyAndCBjbHInID4+JENPTkZJR19T
VEFUVVMKICAgZWNobyAnOiBjbHInID4+JENPTkZJR19TVEFUVVMKQEAgLTEwNTIxLDUxICsxMzI5
OSw1OSBAQAogZG9uZQogcm0gLWYgY29uZnRlc3QudW5kZWZzCiAKLWNhdCA+PiRDT05GSUdfU1RB
VFVTIDw8XEVPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9GCiAgICMgTGV0J3Mgc3Rp
bGwgcHJldGVuZCBpdCBpcyBgY29uZmlndXJlJyB3aGljaCBpbnN0YW50aWF0ZXMgKGkuZS4sIGRv
bid0CiAgICMgdXNlICRhc19tZSksIHBlb3BsZSB3b3VsZCBiZSBzdXJwcmlzZWQgdG8gcmVhZDoK
LSAgIyAgICAvKiBjb25maWcuaC4gIEdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGNvbmZpZy5z
dGF0dXMuICAqLworICAjICAgIC8qIGNvbmZpZy5oLiAgR2VuZXJhdGVkIGJ5IGNvbmZpZy5zdGF0
dXMuICAqLwogICBpZiB0ZXN0IHgiJGFjX2ZpbGUiID0geC07IHRoZW4KLSAgICBlY2hvICIvKiBH
ZW5lcmF0ZWQgYXV0b21hdGljYWxseSBieSBjb25maWd1cmUuICAqLyIgPiR0bXAvY29uZmlnLmgK
KyAgICBlY2hvICIvKiBHZW5lcmF0ZWQgYnkgY29uZmlndXJlLiAgKi8iID4kdG1wL2NvbmZpZy5o
CiAgIGVsc2UKLSAgICBlY2hvICIvKiAkYWNfZmlsZS4gIEdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5
IGJ5IGNvbmZpZ3VyZS4gICovIiA+JHRtcC9jb25maWcuaAorICAgIGVjaG8gIi8qICRhY19maWxl
LiAgR2VuZXJhdGVkIGJ5IGNvbmZpZ3VyZS4gICovIiA+JHRtcC9jb25maWcuaAogICBmaQogICBj
YXQgJHRtcC9pbiA+PiR0bXAvY29uZmlnLmgKICAgcm0gLWYgJHRtcC9pbgogICBpZiB0ZXN0IHgi
JGFjX2ZpbGUiICE9IHgtOyB0aGVuCi0gICAgaWYgY21wIC1zICRhY19maWxlICR0bXAvY29uZmln
LmggMj4vZGV2L251bGw7IHRoZW4KLSAgICAgIHsgZWNobyAiJGFzX21lOjEwNDYyOiAkYWNfZmls
ZSBpcyB1bmNoYW5nZWQiID4mNQorICAgIGlmIGRpZmYgJGFjX2ZpbGUgJHRtcC9jb25maWcuaCA+
L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86ICRhY19m
aWxlIGlzIHVuY2hhbmdlZCIgPiY1CiBlY2hvICIkYXNfbWU6ICRhY19maWxlIGlzIHVuY2hhbmdl
ZCIgPiY2O30KICAgICBlbHNlCi0gICAgICBhY19kaXI9YCRhc19leHByIFgiJGFjX2ZpbGUiIDog
J1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCi0gICAgICAgICBYIiRhY19maWxlIiA6
ICdYXCgvL1wpW14vXScgXHwgXAotICAgICAgICAgWCIkYWNfZmlsZSIgOiAnWFwoLy9cKSQnIFx8
IFwKLSAgICAgICAgIFgiJGFjX2ZpbGUiIDogJ1hcKC9cKScgXHwgXAotICAgICAgICAgLiAgICAg
OiAnXCguXCknIDI+L2Rldi9udWxsIHx8CisgICAgICBhY19kaXI9YChkaXJuYW1lICIkYWNfZmls
ZSIpIDI+L2Rldi9udWxsIHx8CiskYXNfZXhwciBYIiRhY19maWxlIiA6ICdYXCguKlteL11cKS8v
KlteL11bXi9dKi8qJCcgXHwgXAorCSBYIiRhY19maWxlIiA6ICdYXCgvL1wpW14vXScgXHwgXAor
CSBYIiRhY19maWxlIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiRhY19maWxlIiA6ICdYXCgvXCkn
IFx8IFwKKwkgLiAgICAgOiAnXCguXCknIDI+L2Rldi9udWxsIHx8CiBlY2hvIFgiJGFjX2ZpbGUi
IHwKICAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveyBzLy9cMS87IHE7
IH0KICAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KICAgCSAgL15YXChcL1wv
XCkkL3sgcy8vXDEvOyBxOyB9CiAgIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEvOyBxOyB9CiAgIAkg
IHMvLiovLi87IHEnYAotICAgICAgaWYgdGVzdCAiJGFjX2RpciIgIT0gIiRhY19maWxlIiAmJiB0
ZXN0ICIkYWNfZGlyIiAhPSAuOyB0aGVuCi0gICAgICAgIHsgY2FzZSAiJGFjX2RpciIgaW4KLSAg
W1xcL10qIHwgPzpbXFwvXSogKSBhc19pbmNyX2Rpcj07OwotICAqKSAgICAgICAgICAgICAgICAg
ICAgICBhc19pbmNyX2Rpcj0uOzsKLWVzYWMKLWFzX2R1bW15PSIkYWNfZGlyIgotZm9yIGFzX21r
ZGlyX2RpciBpbiBgSUZTPScvXFwnOyBzZXQgWCAkYXNfZHVtbXk7IHNoaWZ0OyBlY2hvICIkQCJg
OyBkbwotICBjYXNlICRhc19ta2Rpcl9kaXIgaW4KLSAgICAjIFNraXAgRE9TIGRyaXZlc3BlYwot
ICAgID86KSBhc19pbmNyX2Rpcj0kYXNfbWtkaXJfZGlyIDs7Ci0gICAgKikKLSAgICAgIGFzX2lu
Y3JfZGlyPSRhc19pbmNyX2Rpci8kYXNfbWtkaXJfZGlyCi0gICAgICB0ZXN0IC1kICIkYXNfaW5j
cl9kaXIiIHx8IG1rZGlyICIkYXNfaW5jcl9kaXIiCi0gICAgOzsKLSAgZXNhYwotZG9uZTsgfQor
ICAgICAgeyBpZiAkYXNfbWtkaXJfcDsgdGhlbgorICAgIG1rZGlyIC1wICIkYWNfZGlyIgorICBl
bHNlCisgICAgYXNfZGlyPSIkYWNfZGlyIgorICAgIGFzX2RpcnM9CisgICAgd2hpbGUgdGVzdCAh
IC1kICIkYXNfZGlyIjsgZG8KKyAgICAgIGFzX2RpcnM9IiRhc19kaXIgJGFzX2RpcnMiCisgICAg
ICBhc19kaXI9YChkaXJuYW1lICIkYXNfZGlyIikgMj4vZGV2L251bGwgfHwKKyRhc19leHByIFgi
JGFzX2RpciIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKKwkgWCIkYXNfZGly
IiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRhc19kaXIiIDogJ1hcKC8vXCkkJyBcfCBcCisJ
IFgiJGFzX2RpciIgOiAnWFwoL1wpJyBcfCBcCisJIC4gICAgIDogJ1woLlwpJyAyPi9kZXYvbnVs
bCB8fAorZWNobyBYIiRhc19kaXIiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11b
Xi9dKlwvKiQveyBzLy9cMS87IHE7IH0KKyAgCSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87
IHE7IH0KKyAgCSAgL15YXChcL1wvXCkkL3sgcy8vXDEvOyBxOyB9CisgIAkgIC9eWFwoXC9cKS4q
L3sgcy8vXDEvOyBxOyB9CisgIAkgIHMvLiovLi87IHEnYAorICAgIGRvbmUKKyAgICB0ZXN0ICEg
LW4gIiRhc19kaXJzIiB8fCBta2RpciAkYXNfZGlycworICBmaSB8fCB7IHsgZWNobyAiJGFzX21l
OiRMSU5FTk86IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSBcIiRhY19kaXJcIiIgPiY1
CitlY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSBcIiRhY19kaXJc
IiIgPiYyO30KKyAgIHsgKGV4aXQgMSk7IGV4aXQgMTsgfTsgfTsgfQogCi0gICAgICBmaQogICAg
ICAgcm0gLWYgJGFjX2ZpbGUKICAgICAgIG12ICR0bXAvY29uZmlnLmggJGFjX2ZpbGUKICAgICBm
aQpAQCAtMTA1NzQsOCArMTMzNjAsOCBAQAogICAgIHJtIC1mICR0bXAvY29uZmlnLmgKICAgZmkK
IGRvbmUKLUVPRgotY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcRU9GCitfQUNFT0YKK2NhdCA+PiRD
T05GSUdfU1RBVFVTIDw8XF9BQ0VPRgogCiAjCiAjIENPTkZJR19DT01NQU5EUyBzZWN0aW9uLgpA
QCAtMTA1ODMsMjAgKzEzMzY5LDEyMiBAQAogZm9yIGFjX2ZpbGUgaW4gOiAkQ09ORklHX0NPTU1B
TkRTOyBkbyB0ZXN0ICJ4JGFjX2ZpbGUiID0geDogJiYgY29udGludWUKICAgYWNfZGVzdD1gZWNo
byAiJGFjX2ZpbGUiIHwgc2VkICdzLDouKiwsJ2AKICAgYWNfc291cmNlPWBlY2hvICIkYWNfZmls
ZSIgfCBzZWQgJ3MsW146XSo6LCwnYAorICBhY19kaXI9YChkaXJuYW1lICIkYWNfZGVzdCIpIDI+
L2Rldi9udWxsIHx8CiskYXNfZXhwciBYIiRhY19kZXN0IiA6ICdYXCguKlteL11cKS8vKlteL11b
Xi9dKi8qJCcgXHwgXAorCSBYIiRhY19kZXN0IiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRh
Y19kZXN0IiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiRhY19kZXN0IiA6ICdYXCgvXCknIFx8IFwK
KwkgLiAgICAgOiAnXCguXCknIDI+L2Rldi9udWxsIHx8CitlY2hvIFgiJGFjX2Rlc3QiIHwKKyAg
ICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveyBzLy9cMS87IHE7IH0KKyAg
CSAgL15YXChcL1wvXClbXi9dLioveyBzLy9cMS87IHE7IH0KKyAgCSAgL15YXChcL1wvXCkkL3sg
cy8vXDEvOyBxOyB9CisgIAkgIC9eWFwoXC9cKS4qL3sgcy8vXDEvOyBxOyB9CisgIAkgIHMvLiov
Li87IHEnYAorICB7IGlmICRhc19ta2Rpcl9wOyB0aGVuCisgICAgbWtkaXIgLXAgIiRhY19kaXIi
CisgIGVsc2UKKyAgICBhc19kaXI9IiRhY19kaXIiCisgICAgYXNfZGlycz0KKyAgICB3aGlsZSB0
ZXN0ICEgLWQgIiRhc19kaXIiOyBkbworICAgICAgYXNfZGlycz0iJGFzX2RpciAkYXNfZGlycyIK
KyAgICAgIGFzX2Rpcj1gKGRpcm5hbWUgIiRhc19kaXIiKSAyPi9kZXYvbnVsbCB8fAorJGFzX2V4
cHIgWCIkYXNfZGlyIiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAorCSBYIiRh
c19kaXIiIDogJ1hcKC8vXClbXi9dJyBcfCBcCisJIFgiJGFzX2RpciIgOiAnWFwoLy9cKSQnIFx8
IFwKKwkgWCIkYXNfZGlyIiA6ICdYXCgvXCknIFx8IFwKKwkgLiAgICAgOiAnXCguXCknIDI+L2Rl
di9udWxsIHx8CitlY2hvIFgiJGFzX2RpciIgfAorICAgIHNlZCAnL15YXCguKlteL11cKVwvXC8q
W14vXVteL10qXC8qJC97IHMvL1wxLzsgcTsgfQorICAJICAvXlhcKFwvXC9cKVteL10uKi97IHMv
L1wxLzsgcTsgfQorICAJICAvXlhcKFwvXC9cKSQveyBzLy9cMS87IHE7IH0KKyAgCSAgL15YXChc
L1wpLioveyBzLy9cMS87IHE7IH0KKyAgCSAgcy8uKi8uLzsgcSdgCisgICAgZG9uZQorICAgIHRl
c3QgISAtbiAiJGFzX2RpcnMiIHx8IG1rZGlyICRhc19kaXJzCisgIGZpIHx8IHsgeyBlY2hvICIk
YXNfbWU6JExJTkVOTzogZXJyb3I6IGNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5IFwiJGFjX2Rpclwi
IiA+JjUKK2VjaG8gIiRhc19tZTogZXJyb3I6IGNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5IFwiJGFj
X2RpclwiIiA+JjI7fQorICAgeyAoZXhpdCAxKTsgZXhpdCAxOyB9OyB9OyB9CisKKyAgYWNfYnVp
bGRkaXI9LgorCitpZiB0ZXN0ICIkYWNfZGlyIiAhPSAuOyB0aGVuCisgIGFjX2Rpcl9zdWZmaXg9
L2BlY2hvICIkYWNfZGlyIiB8IHNlZCAncyxeXC5bXFwvXSwsJ2AKKyAgIyBBICIuLi8iIGZvciBl
YWNoIGRpcmVjdG9yeSBpbiAkYWNfZGlyX3N1ZmZpeC4KKyAgYWNfdG9wX2J1aWxkZGlyPWBlY2hv
ICIkYWNfZGlyX3N1ZmZpeCIgfCBzZWQgJ3MsL1teXFwvXSosLi4vLGcnYAorZWxzZQorICBhY19k
aXJfc3VmZml4PSBhY190b3BfYnVpbGRkaXI9CitmaQorCitjYXNlICRzcmNkaXIgaW4KKyAgLikg
ICMgTm8gLS1zcmNkaXIgb3B0aW9uLiAgV2UgYXJlIGJ1aWxkaW5nIGluIHBsYWNlLgorICAgIGFj
X3NyY2Rpcj0uCisgICAgaWYgdGVzdCAteiAiJGFjX3RvcF9idWlsZGRpciI7IHRoZW4KKyAgICAg
ICBhY190b3Bfc3JjZGlyPS4KKyAgICBlbHNlCisgICAgICAgYWNfdG9wX3NyY2Rpcj1gZWNobyAk
YWNfdG9wX2J1aWxkZGlyIHwgc2VkICdzLC8kLCwnYAorICAgIGZpIDs7CisgIFtcXC9dKiB8ID86
W1xcL10qICkgICMgQWJzb2x1dGUgcGF0aC4KKyAgICBhY19zcmNkaXI9JHNyY2RpciRhY19kaXJf
c3VmZml4OworICAgIGFjX3RvcF9zcmNkaXI9JHNyY2RpciA7OworICAqKSAjIFJlbGF0aXZlIHBh
dGguCisgICAgYWNfc3JjZGlyPSRhY190b3BfYnVpbGRkaXIkc3JjZGlyJGFjX2Rpcl9zdWZmaXgK
KyAgICBhY190b3Bfc3JjZGlyPSRhY190b3BfYnVpbGRkaXIkc3JjZGlyIDs7Citlc2FjCitjYXNl
ICIkYWNfZGlyIiBpbgorLikgYWNfYWJzX2J1aWxkZGlyPSRhY19idWlsZGRpcjs7CisqKQorICBj
YXNlICRhY19idWlsZGRpciBpbgorICAuKSBhY19hYnNfYnVpbGRkaXI9IiRhY19kaXIiOzsKKyAg
W1xcL10qIHwgPzpbXFwvXSogKSBhY19hYnNfYnVpbGRkaXI9JGFjX2J1aWxkZGlyOzsKKyAgKikg
YWNfYWJzX2J1aWxkZGlyPSIkYWNfZGlyIi8kYWNfYnVpbGRkaXI7OworICBlc2FjOzsKK2VzYWMK
K2Nhc2UgIiRhY19kaXIiIGluCisuKSBhY19hYnNfdG9wX2J1aWxkZGlyPSR7YWNfdG9wX2J1aWxk
ZGlyfS47OworKikKKyAgY2FzZSAke2FjX3RvcF9idWlsZGRpcn0uIGluCisgIC4pIGFjX2Fic190
b3BfYnVpbGRkaXI9IiRhY19kaXIiOzsKKyAgW1xcL10qIHwgPzpbXFwvXSogKSBhY19hYnNfdG9w
X2J1aWxkZGlyPSR7YWNfdG9wX2J1aWxkZGlyfS47OworICAqKSBhY19hYnNfdG9wX2J1aWxkZGly
PSIkYWNfZGlyIi8ke2FjX3RvcF9idWlsZGRpcn0uOzsKKyAgZXNhYzs7Citlc2FjCitjYXNlICIk
YWNfZGlyIiBpbgorLikgYWNfYWJzX3NyY2Rpcj0kYWNfc3JjZGlyOzsKKyopCisgIGNhc2UgJGFj
X3NyY2RpciBpbgorICAuKSBhY19hYnNfc3JjZGlyPSIkYWNfZGlyIjs7CisgIFtcXC9dKiB8ID86
W1xcL10qICkgYWNfYWJzX3NyY2Rpcj0kYWNfc3JjZGlyOzsKKyAgKikgYWNfYWJzX3NyY2Rpcj0i
JGFjX2RpciIvJGFjX3NyY2Rpcjs7CisgIGVzYWM7OworZXNhYworY2FzZSAiJGFjX2RpciIgaW4K
Ky4pIGFjX2Fic190b3Bfc3JjZGlyPSRhY190b3Bfc3JjZGlyOzsKKyopCisgIGNhc2UgJGFjX3Rv
cF9zcmNkaXIgaW4KKyAgLikgYWNfYWJzX3RvcF9zcmNkaXI9IiRhY19kaXIiOzsKKyAgW1xcL10q
IHwgPzpbXFwvXSogKSBhY19hYnNfdG9wX3NyY2Rpcj0kYWNfdG9wX3NyY2Rpcjs7CisgICopIGFj
X2Fic190b3Bfc3JjZGlyPSIkYWNfZGlyIi8kYWNfdG9wX3NyY2Rpcjs7CisgIGVzYWM7OworZXNh
YwogCisKKyAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogZXhlY3V0aW5nICRhY19kZXN0IGNvbW1h
bmRzIiA+JjUKK2VjaG8gIiRhc19tZTogZXhlY3V0aW5nICRhY19kZXN0IGNvbW1hbmRzIiA+JjY7
fQogICBjYXNlICRhY19kZXN0IGluCiAgICAgZGVmYXVsdC0xICkgdGVzdCAteiAiJENPTkZJR19I
RUFERVJTIiB8fCBlY2hvIHRpbWVzdGFtcCA+IGluY2x1ZGUvSUwvc3RhbXAtaCA7OwogICBlc2Fj
CiBkb25lCi1FT0YKK19BQ0VPRgogCi1jYXQgPj4kQ09ORklHX1NUQVRVUyA8PFxFT0YKK2NhdCA+
PiRDT05GSUdfU1RBVFVTIDw8XF9BQ0VPRgogCiB7IChleGl0IDApOyBleGl0IDA7IH0KLUVPRgor
X0FDRU9GCiBjaG1vZCAreCAkQ09ORklHX1NUQVRVUwogYWNfY2xlYW5fZmlsZXM9JGFjX2NsZWFu
X2ZpbGVzX3NhdmUKIAorCiAjIGNvbmZpZ3VyZSBpcyB3cml0aW5nIHRvIGNvbmZpZy5sb2csIGFu
ZCB0aGVuIGNhbGxzIGNvbmZpZy5zdGF0dXMuCiAjIGNvbmZpZy5zdGF0dXMgZG9lcyBpdHMgb3du
IHJlZGlyZWN0aW9uLCBhcHBlbmRpbmcgdG8gY29uZmlnLmxvZy4KICMgVW5mb3J0dW5hdGVseSwg
b24gRE9TIHRoaXMgZmFpbHMsIGFzIGNvbmZpZy5sb2cgaXMgc3RpbGwga2VwdCBvcGVuCkBAIC0x
MDYwNywxMCArMTM0OTUsMTQgQEAKICMgbmVlZCB0byBtYWtlIHRoZSBGRCBhdmFpbGFibGUgYWdh
aW4uCiBpZiB0ZXN0ICIkbm9fY3JlYXRlIiAhPSB5ZXM7IHRoZW4KICAgYWNfY3Nfc3VjY2Vzcz06
CisgIGFjX2NvbmZpZ19zdGF0dXNfYXJncz0KKyAgdGVzdCAiJHNpbGVudCIgPSB5ZXMgJiYKKyAg
ICBhY19jb25maWdfc3RhdHVzX2FyZ3M9IiRhY19jb25maWdfc3RhdHVzX2FyZ3MgLS1xdWlldCIK
ICAgZXhlYyA1Pi9kZXYvbnVsbAotICAkU0hFTEwgJENPTkZJR19TVEFUVVMgfHwgYWNfY3Nfc3Vj
Y2Vzcz1mYWxzZQorICAkU0hFTEwgJENPTkZJR19TVEFUVVMgJGFjX2NvbmZpZ19zdGF0dXNfYXJn
cyB8fCBhY19jc19zdWNjZXNzPWZhbHNlCiAgIGV4ZWMgNT4+Y29uZmlnLmxvZwogICAjIFVzZSB8
fCwgbm90ICYmLCB0byBhdm9pZCBleGl0aW5nIGZyb20gdGhlIGlmIHdpdGggJD8gPSAxLCB3aGlj
aAogICAjIHdvdWxkIG1ha2UgY29uZmlndXJlIGZhaWwgaWYgdGhpcyBpcyB0aGUgbGFzdCBpbnN0
cnVjdGlvbi4KICAgJGFjX2NzX3N1Y2Nlc3MgfHwgeyAoZXhpdCAxKTsgZXhpdCAxOyB9CiBmaQor
CmRpZmYgLXVyIERldklMLm9yaWcvY29uZmlndXJlLmluIERldklML2NvbmZpZ3VyZS5pbgotLS0g
RGV2SUwub3JpZy9jb25maWd1cmUuaW4JMjAwMy0wOC0xMiAxNDoyNDoyOC4wMDAwMDAwMDAgKzEw
MDAKKysrIERldklML2NvbmZpZ3VyZS5pbgkyMDA0LTAyLTEwIDAxOjU1OjE4LjAwMDAwMDAwMCAr
MTEwMApAQCAtOTAsMTMxICs5MCwzNDYgQEAKIGRubAogQUNfQVJHX0VOQUJMRShibXAsCiBbICAt
LWRpc2FibGUtYm1wICAgICAgICAgICBEb2Vzbid0IGNvbXBpbGUgYm1wIHN1cHBvcnRdLAotbm9f
Ym1wPSJ5ZXMiLCBub19ibXA9Im5vIikKK1tjYXNlICIkZW5hYmxlX2JtcCIgaW4KKyAgbm8pCisg
ICAgbm9fYm1wPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19ibXA9Im5vIgorICAgIDs7Citl
c2FjXSwKK25vX2JtcD0ibm8iKQogCiBBQ19BUkdfRU5BQkxFKGRjeCwKIFsgIC0tZGlzYWJsZS1k
Y3ggICAgICAgICAgIERvZXNuJ3QgY29tcGlsZSBkY3ggc3VwcG9ydF0sCi1ub19kY3g9InllcyIs
IG5vX2RjeD0ibm8iKQorW2Nhc2UgIiRlbmFibGVfZGN4IiBpbgorICBubykKKyAgICBub19kY3g9
InllcyIKKyAgICA7OworICAqKQorICAgIG5vX2RjeD0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9f
ZGN4PSJubyIpCiAKIEFDX0FSR19FTkFCTEUoZG9vbSwKIFsgIC0tZGlzYWJsZS1kb29tICAgICAg
ICAgIERvZXNuJ3QgY29tcGlsZSB3YWQgc3VwcG9ydF0sCi1ub19kb29tPSJ5ZXMiLCBub19kb29t
PSJubyIpCitbY2FzZSAiJGVuYWJsZV9kb29tIiBpbgorICBubykKKyAgICBub19kb29tPSJ5ZXMi
CisgICAgOzsKKyAgKikKKyAgICBub19kb29tPSJubyIKKyAgICA7OworZXNhY10sCitub19kb29t
PSJubyIpCiAKIEFDX0FSR19FTkFCTEUoZ2lmLAogWyAgLS1kaXNhYmxlLWdpZiAgICAgICAgICAg
RG9lc24ndCBjb21waWxlIGdpZiBzdXBwb3J0XSwKLW5vX2dpZj0ieWVzIiwgbm9fZ2lmPSJubyIp
CitbY2FzZSAiJGVuYWJsZV9naWYiIGluCisgIG5vKQorICAgIG5vX2dpZj0ieWVzIgorICAgIDs7
CisgICopCisgICAgbm9fZ2lmPSJubyIKKyAgICA7OworZXNhY10sCitub19naWY9Im5vIikKIAog
QUNfQVJHX0VOQUJMRShpY29uLAogWyAgLS1kaXNhYmxlLWljb24gICAgICAgICAgRG9lc24ndCBj
b21waWxlIGljb24gc3VwcG9ydF0sCi1ub19pY29uPSJ5ZXMiLCBub19pY29uPSJubyIpCitbY2Fz
ZSAiJGVuYWJsZV9pY29uIiBpbgorICBubykKKyAgICBub19pY29uPSJ5ZXMiCisgICAgOzsKKyAg
KikKKyAgICBub19pY29uPSJubyIKKyAgICA7OworZXNhY10sCitub19pY29uPSJubyIpCiAKIEFD
X0FSR19FTkFCTEUoanBlZywKIFsgIC0tZGlzYWJsZS1qcGVnICAgICAgICAgIERvZXNuJ3QgY29t
cGlsZSBqcGVnIHN1cHBvcnRdLAotbm9fanBlZz0ieWVzIiwgbm9fanBlZz0ibm8iKQorW2Nhc2Ug
IiRlbmFibGVfanBlZyIgaW4KKyAgbm8pCisgICAgbm9fanBlZz0ieWVzIgorICAgIDs7CisgICop
CisgICAgbm9fanBlZz0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9fanBlZz0ibm8iKQogCiBBQ19B
UkdfRU5BQkxFKGxpZiwKIFsgIC0tZGlzYWJsZS1saWYgICAgICAgICAgIERvZXNuJ3QgY29tcGls
ZSBsaWYgc3VwcG9ydF0sCi1ub19saWY9InllcyIsIG5vX2xpZj0ibm8iKQorW2Nhc2UgIiRlbmFi
bGVfbGlmIiBpbgorICBubykKKyAgICBub19saWY9InllcyIKKyAgICA7OworICAqKQorICAgIG5v
X2xpZj0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9fbGlmPSJubyIpCiAKIEFDX0FSR19FTkFCTEUo
bGNtcywKIFsgIC0tZGlzYWJsZS1sY21zICAgICAgICAgIERvZXNuJ3QgY29tcGlsZSBsY21zIHN1
cHBvcnRdLAotbm9fbGNtcz0ieWVzIiwgbm9fbGNtcz0ibm8iKQorW2Nhc2UgIiRlbmFibGVfbGNt
cyIgaW4KKyAgbm8pCisgICAgbm9fbGNtcz0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fbGNt
cz0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9fbGNtcz0ibm8iKQogCiBBQ19BUkdfRU5BQkxFKG1k
bCwKIFsgIC0tZGlzYWJsZS1tZGwgICAgICAgICAgIERvZXNuJ3QgY29tcGlsZSBtZGwgc3VwcG9y
dF0sCi1ub19tZGw9InllcyIsIG5vX21kbD0ibm8iKQorW2Nhc2UgIiRlbmFibGVfbWRsIiBpbgor
ICBubykKKyAgICBub19tZGw9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX21kbD0ibm8iCisg
ICAgOzsKK2VzYWNdLAorbm9fbWRsPSJubyIpCiAKIEFDX0FSR19FTkFCTEUobW5nLAogWyAgLS1k
aXNhYmxlLW1uZyAgICAgICAgICAgRG9lc24ndCBjb21waWxlIG1uZyBzdXBwb3J0XSwKLW5vX21u
Zz0ieWVzIiwgbm9fbW5nPSJubyIpCitbY2FzZSAiJGVuYWJsZV9tbmciIGluCisgIG5vKQorICAg
IG5vX21uZz0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fbW5nPSJubyIKKyAgICA7OworZXNh
Y10sCitub19tbmc9Im5vIikKIAogQUNfQVJHX0VOQUJMRShwY2QsCiBbICAtLWRpc2FibGUtcGNk
ICAgICAgICAgICBEb2Vzbid0IGNvbXBpbGUgcGNkIHN1cHBvcnRdLAotbm9fcGNkPSJ5ZXMiLCBu
b19wY2Q9Im5vIikKK1tjYXNlICIkZW5hYmxlX3BjZCIgaW4KKyAgbm8pCisgICAgbm9fcGNkPSJ5
ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19wY2Q9Im5vIgorICAgIDs7Citlc2FjXSwKK25vX3Bj
ZD0ibm8iKQogCiBBQ19BUkdfRU5BQkxFKHBjeCwKIFsgIC0tZGlzYWJsZS1wY3ggICAgICAgICAg
IERvZXNuJ3QgY29tcGlsZSBwY3ggc3VwcG9ydF0sCi1ub19wY3g9InllcyIsIG5vX3BjeD0ibm8i
KQorW2Nhc2UgIiRlbmFibGVfcGN4IiBpbgorICBubykKKyAgICBub19wY3g9InllcyIKKyAgICA7
OworICAqKQorICAgIG5vX3BjeD0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9fcGN4PSJubyIpCiAK
IEFDX0FSR19FTkFCTEUocGljLAogWyAgLS1kaXNhYmxlLXBpYyAgICAgICAgICAgRG9lc24ndCBj
b21waWxlIHBpYyBzdXBwb3J0XSwKLW5vX3BpYz0ieWVzIiwgbm9fcGljPSJubyIpCitbY2FzZSAi
JGVuYWJsZV9waWMiIGluCisgIG5vKQorICAgIG5vX3BpYz0ieWVzIgorICAgIDs7CisgICopCisg
ICAgbm9fcGljPSJubyIKKyAgICA7OworZXNhY10sCitub19waWM9Im5vIikKIAogQUNfQVJHX0VO
QUJMRShwaXgsCiBbICAtLWRpc2FibGUtcGl4ICAgICAgICAgICBEb2Vzbid0IGNvbXBpbGUgcGl4
IHN1cHBvcnRdLAotbm9fcGl4PSJ5ZXMiLCBub19waXg9Im5vIikKK1tjYXNlICIkZW5hYmxlX3Bp
eCIgaW4KKyAgbm8pCisgICAgbm9fcGl4PSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19waXg9
Im5vIgorICAgIDs7Citlc2FjXSwKK25vX3BpeD0ibm8iKQogCiBBQ19BUkdfRU5BQkxFKHBuZywK
IFsgIC0tZGlzYWJsZS1wbmcgICAgICAgICAgIERvZXNuJ3QgY29tcGlsZSBwbmcgc3VwcG9ydF0s
Ci1ub19wbmc9InllcyIsIG5vX3BuZz0ibm8iKQorW2Nhc2UgIiRlbmFibGVfcG5nIiBpbgorICBu
bykKKyAgICBub19wbmc9InllcyIKKyAgICA7OworICAqKQorICAgIG5vX3BuZz0ibm8iCisgICAg
OzsKK2VzYWNdLAorbm9fcG5nPSJubyIpCiAKIEFDX0FSR19FTkFCTEUocG5tLAogWyAgLS1kaXNh
YmxlLXBubSAgICAgICAgICAgRG9lc24ndCBjb21waWxlIHBubSBzdXBwb3J0XSwKLW5vX3BubT0i
eWVzIiwgbm9fcG5tPSJubyIpCitbY2FzZSAiJGVuYWJsZV9wbm0iIGluCisgIG5vKQorICAgIG5v
X3BubT0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fcG5tPSJubyIKKyAgICA7OworZXNhY10s
Citub19wbm09Im5vIikKIAogQUNfQVJHX0VOQUJMRShwc2QsCiBbICAtLWRpc2FibGUtcHNkICAg
ICAgICAgICBEb2Vzbid0IGNvbXBpbGUgcHNkIHN1cHBvcnRdLAotbm9fcHNkPSJ5ZXMiLCBub19w
c2Q9Im5vIikKK1tjYXNlICIkZW5hYmxlX3BzZCIgaW4KKyAgbm8pCisgICAgbm9fcHNkPSJ5ZXMi
CisgICAgOzsKKyAgKikKKyAgICBub19wc2Q9Im5vIgorICAgIDs7Citlc2FjXSwKK25vX3BzZD0i
bm8iKQogCiBBQ19BUkdfRU5BQkxFKHBzcCwKIFsgIC0tZGlzYWJsZS1wc3AgICAgICAgICAgIERv
ZXNuJ3QgY29tcGlsZSBwc3Agc3VwcG9ydF0sCi1ub19wc3A9InllcyIsIG5vX3BzcD0ibm8iKQor
W2Nhc2UgIiRlbmFibGVfcHNwIiBpbgorICBubykKKyAgICBub19wc3A9InllcyIKKyAgICA7Owor
ICAqKQorICAgIG5vX3BzcD0ibm8iCisgICAgOzsKK2VzYWNdLAorbm9fcHNwPSJubyIpCiAKIEFD
X0FSR19FTkFCTEUocHhyLAogWyAgLS1kaXNhYmxlLXB4ciAgICAgICAgICAgRG9lc24ndCBjb21w
aWxlIHB4ciBzdXBwb3J0XSwKLW5vX3B4cj0ieWVzIiwgbm9fcHhyPSJubyIpCitbY2FzZSAiJGVu
YWJsZV9weHIiIGluCisgIG5vKQorICAgIG5vX3B4cj0ieWVzIgorICAgIDs7CisgICopCisgICAg
bm9fcHhyPSJubyIKKyAgICA7OworZXNhY10sCitub19weHI9Im5vIikKIAogQUNfQVJHX0VOQUJM
RShsY21zLAogWyAgLS1kaXNhYmxlLWxjbXMgICAgICAgICAgRG9lc24ndCBjb21waWxlIGxjbXMg
c3VwcG9ydF0sCi1ub19sY21zPSJ5ZXMiLCBub19sY21zPSJubyIpCitbY2FzZSAiJGVuYWJsZV9s
Y21zIiBpbgorICBubykKKyAgICBub19sY21zPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19s
Y21zPSJubyIKKyAgICA7OworZXNhY10sCitub19sY21zPSJubyIpCiAKIEFDX0FSR19FTkFCTEUo
cmF3LAogWyAgLS1kaXNhYmxlLXJhdyAgICAgICAgICAgRG9lc24ndCBjb21waWxlIHJhdyBzdXBw
b3J0XSwKLW5vX3Jhdz0ieWVzIiwgbm9fcmF3PSJubyIpCitbY2FzZSAiJGVuYWJsZV9yYXciIGlu
CisgIG5vKQorICAgIG5vX3Jhdz0ieWVzIgorICAgIDs7CisgICopCisgICAgbm9fcmF3PSJubyIK
KyAgICA7OworZXNhY10sCitub19yYXc9Im5vIikKIAogQUNfQVJHX0VOQUJMRShzZ2ksCiBbICAt
LWRpc2FibGUtc2dpICAgICAgICAgICBEb2Vzbid0IGNvbXBpbGUgc2dpIHN1cHBvcnRdLAotbm9f
c2dpPSJ5ZXMiLCBub19zZ2k9Im5vIikKK1tjYXNlICIkZW5hYmxlX3NnaSIgaW4KKyAgbm8pCisg
ICAgbm9fc2dpPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAgICBub19zZ2k9Im5vIgorICAgIDs7Citl
c2FjXSwKK25vX3NnaT0ibm8iKQogCiBBQ19BUkdfRU5BQkxFKHRnYSwKIFsgIC0tZGlzYWJsZS10
Z2EgICAgICAgICAgIERvZXNuJ3QgY29tcGlsZSB0Z2Egc3VwcG9ydF0sCi1ub190Z2E9InllcyIs
IG5vX3RnYT0ibm8iKQorW2Nhc2UgIiRlbmFibGVfdGdhIiBpbgorICBubykKKyAgICBub190Z2E9
InllcyIKKyAgICA7OworICAqKQorICAgIG5vX3RnYT0ibm8iCisgICAgOzsKK2VzYWNdLCBub190
Z2E9Im5vIikKIAogQUNfQVJHX0VOQUJMRSh0aWZmLAogWyAgLS1kaXNhYmxlLXRpZmYgICAgICAg
ICAgRG9lc24ndCBjb21waWxlIHRpZmYgc3VwcG9ydF0sCi1ub190aWZmPSJ5ZXMiLCBub190aWZm
PSJubyIpCitbY2FzZSAiJGVuYWJsZV90aWZmIiBpbgorICBubykKKyAgICBub190aWZmPSJ5ZXMi
CisgICAgOzsKKyAgKikKKyAgICBub190aWZmPSJubyIKKyAgICA7OworZXNhY10sCitub190aWZm
PSJubyIpCiAKIEFDX0FSR19FTkFCTEUod2FsLAogWyAgLS1kaXNhYmxlLXdhbCAgICAgICAgICAg
RG9lc24ndCBjb21waWxlIHdhbCBzdXBwb3J0XSwKLW5vX3dhbD0ieWVzIiwgbm9fd2FsPSJubyIp
CitbY2FzZSAiJGVuYWJsZV93YWwiIGluCisgIG5vKQorICAgIG5vX3dhbD0ieWVzIgorICAgIDs7
CisgICopCisgICAgbm9fd2FsPSJubyIKKyAgICA7OworZXNhY10sCitub193YWw9Im5vIikKIAog
QUNfQVJHX0VOQUJMRSh4cG0sCiBbICAtLWRpc2FibGUteHBtICAgICAgICAgICBEb2Vzbid0IGNv
bXBpbGUgeHBtIHN1cHBvcnRdLAotbm9feHBtPSJ5ZXMiLCBub194cG09Im5vIikKK1tjYXNlICIk
ZW5hYmxlX3hwbSIgaW4KKyAgbm8pCisgICAgbm9feHBtPSJ5ZXMiCisgICAgOzsKKyAgKikKKyAg
ICBub194cG09Im5vIgorICAgIDs7Citlc2FjXSwKK25vX3hwbT0ibm8iKQogCiBBQ19BUkdfRU5B
QkxFKGFsbGVncm8sCiBbICAtLWRpc2FibGUtYWxsZWdybyAgICAgICBEb2Vzbid0IGNvbXBpbGUg
YWxsZWdybyBzdXBwb3J0XSwKLXVzZV9hbGxlZ3JvPSJubyIsIHVzZV9hbGxlZ3JvPSJ5ZXMiKQor
dXNlX2FsbGVncm89JGVuYWJsZV9hbGxlZ3JvLCB1c2VfYWxsZWdybz0ieWVzIikKIAogQUNfQVJH
X0VOQUJMRShkaXJlY3R4LAogWyAgLS1kaXNhYmxlLWRpcmVjdHggICAgICAgRG9lc24ndCBjb21w
aWxlIGRpcmVjdHggc3VwcG9ydF0sCi11c2VfZGlyZWN0eD0ibm8iLCB1c2VfZGlyZWN0eD0ieWVz
IikKK3VzZV9kaXJlY3R4PSRlbmFibGVfZGlyZWN0eCwgdXNlX2RpcmVjdHg9InllcyIpCiAKIEFD
X0FSR19FTkFCTEUob3BlbmdsLAogWyAgLS1kaXNhYmxlLW9wZW5nbCAgICAgICAgRG9lc24ndCBj
b21waWxlIG9wZW5nbCBzdXBwb3J0XSwKLXVzZV9vcGVuZ2w9Im5vIiwgdXNlX29wZW5nbD0ieWVz
IikKK3VzZV9vcGVuZ2w9JGVuYWJsZV9vcGVuZ2wsIHVzZV9vcGVuZ2w9InllcyIpCiAKIEFDX0FS
R19FTkFCTEUoc2RsLAogWyAgLS1kaXNhYmxlLXNkbCAgICAgICAgICAgRG9lc24ndCBjb21waWxl
IHNkbCBzdXBwb3J0XSwKLXVzZV9zZGw9Im5vIiwgdXNlX3NkbD0ieWVzIikKK3VzZV9zZGw9JGVu
YWJsZV9zZGwsIHVzZV9zZGw9InllcyIpCiAKIEFDX0FSR19FTkFCTEUod2luMzIsCiBbICAtLWRp
c2FibGUtd2luMzIgICAgICAgICBEb2Vzbid0IGNvbXBpbGUgd2luMzIgc3VwcG9ydF0sCi11c2Vf
d2luMzI9Im5vIiwgdXNlX3dpbjMyPSJ5ZXMiKQordXNlX3dpbjMyPSRlbmFibGVfd2luMzIsIHVz
ZV93aW4zMj0ieWVzIikKIAogQUNfQVJHX0VOQUJMRShyZWxlYXNlLAogWyAgLS1kaXNhYmxlLXJl
bGVhc2UgICAgICAgICBDb21waWxlIGEgZGVidWcgdmVyc2lvbiBvZiB0aGUgbGlicmFyeV0sCi1k
ZWJ1Z19zeW1ib2xzPSJ5ZXMiLCBkZWJ1Z19zeW1ib2xzPSJubyIpCitbY2FzZSAiJGVuYWJsZV9y
ZWxlYXNlIiBpbgorICB5ZXMpCisgICAgZGVidWdfc3ltYm9scz0ibm8iCisgICAgOzsKKyAgbm8p
CisgICAgZGVidWdfc3ltYm9scz0ieWVzIgorICAgIDs7Citlc2FjXSwKK2RlYnVnX3N5bWJvbHM9
Im5vIikKIAogaWYgdGVzdCAiJGRlYnVnX3N5bWJvbHMiID0gInllcyIgOyB0aGVuCiAgIExJQklM
X0NGTEFHUz0iLVdhbGwgLWciCkBAIC02MjIsNCArODM3LDQgQEAKICAgICAgICAgICAgc3JjLUlM
VVQvaW5jbHVkZS9NYWtlZmlsZSBcCiAgICAgICAgICAgIGluY2x1ZGUvTWFrZWZpbGUgXAogICAg
ICAgICAgICBpbmNsdWRlL0lML01ha2VmaWxlIF0pCi1BQ19PVVRQVVQKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCitBQ19PVVRQVVQK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>25259</attachid>
            <date>2004-02-09 07:34 0000</date>
            <desc>A modified ebuild to make use of the autoconf patch</desc>
            <filename>devil-1.6.6-r1.ebuild</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDb3B5cmlnaHQgMTk5OS0yMDA0IEdlbnRvbyBUZWNobm9sb2dpZXMsIEluYy4KIyBEaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYy
CiMgJEhlYWRlcjogL2hvbWUvY3Zzcm9vdC9nZW50b28teDg2L21lZGlhLWxpYnMvZGV2aWwvZGV2
aWwtMS42LjYuZWJ1aWxkLHYgMS4yIDIwMDQvMDIvMDggMDE6MzY6MjggdmFwaWVyIEV4cCAkCgpp
bmhlcml0IGxpYnRvb2wKCkRFU0NSSVBUSU9OPSJEZXZJTCBpbWFnZSBsaWJyYXJ5IgpIT01FUEFH
RT0iaHR0cDovL3d3dy5pbWFnZWxpYi5vcmcvIgpTUkNfVVJJPSJtaXJyb3I6Ly9zb3VyY2Vmb3Jn
ZS9vcGVuaWwvRGV2SUwtJHtQVn0udGFyLmd6IgoKTElDRU5TRT0iTEdQTC0yLjEiClNMT1Q9IjAi
CktFWVdPUkRTPSJ4ODYgcHBjIH5zcGFyYyIKSVVTRT0iWCBnaWYgcG5nIHNkbCBqcGVnIHRpZmYg
b3BlbmdsIgoKUkRFUEVORD0iWD8gKCB4MTEtYmFzZS94ZnJlZSApCglnaWY/ICggbWVkaWEtbGli
cy9naWZsaWIgKQoJcG5nPyAoIG1lZGlhLWxpYnMvbGlicG5nICkKCXNkbD8gKCBtZWRpYS1saWJz
L2xpYnNkbCApCglqcGVnPyAoIG1lZGlhLWxpYnMvanBlZyApCgl0aWZmPyAoIG1lZGlhLWxpYnMv
dGlmZiApCglvcGVuZ2w/ICggdmlydHVhbC9vcGVuZ2wgKSIKClM9JHtXT1JLRElSfS9EZXZJTAoK
c3JjX3VucGFjaygpIHsKCXVucGFjayAke0F9CgoJY2QgJHtTfQoKCSMgcGF0Y2ggdG8gY29uZmln
dXJlICh2aWEgY29uZmlndXJlLmluKSB0byBwcm9kdWNlIGV4cGVjdGVkIAoJIyBiZWhhdmlvdXIg
aW4gdGhlIHByZXNlbmNlIG9mIC0tZW5hYmxlLXh5eiBkaXJlY3RpdmVzCgllcGF0Y2ggJHtGSUxF
U0RJUn0vJHtQfS1hdXRvY29uZi5wYXRjaAp9CgpzcmNfY29tcGlsZSgpIHsKCWVsaWJ0b29saXpl
CgoJZWNvbmYgXAoJCWB1c2Vfd2l0aCBYIHhgIFwKCQlgdXNlX2VuYWJsZSBnaWZgIFwKCQlgdXNl
X2VuYWJsZSBwbmdgIFwKCQlgdXNlX2VuYWJsZSBzZGxgIFwKCQlgdXNlX2VuYWJsZSBqcGVnYCBc
CgkJYHVzZV9lbmFibGUgdGlmZmAgXAoJCWB1c2VfZW5hYmxlIG9wZW5nbGAgXAoJCS0tZGlzYWJs
ZS1kaXJlY3R4IFwKCQktLWRpc2FibGUtd2luMzIgfHwgZGllCgoJZW1ha2UgfHwgZGllICJlbWFr
ZSBmYWlsZWQiCn0KCnNyY19pbnN0YWxsKCkgewoJbWFrZSBERVNURElSPSR7RH0gaW5zdGFsbCB8
fCBkaWUgIm1ha2UgaW5zdGFsbCBmYWlsZWQiCglkb2RvYyBBVVRIT1JTIEJVR1MgQ1JFRElUUyBD
aGFuZ2VMb2cqIElOU1RBTEwgTkVXUyogUkVBRE1FKgp9Cg==
</data>        

          </attachment>
    </bug>

</bugzilla>