<?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>228865</bug_id>
          
          <creation_ts>2008-06-22 10:32 0000</creation_ts>
          <short_desc>sci-astronomy/celestia-1.5.1 version bump</short_desc>
          <delta_ts>2008-06-24 17:20:57 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>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          <bug_file_loc>http://sourceforge.net/project/shownotes.php?release_id=595410&amp;group_id=21302</bug_file_loc>
          
          
          <priority>P2</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>218982</dependson>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>yaleks@gentoo.ru</reporter>
          <assigned_to>sci@gentoo.org</assigned_to>
          <cc>alexxy@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>yaleks@gentoo.ru</who>
            <bug_when>2008-06-22 10:32:51 0000</bug_when>
            <thetext>New version avaliable.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>yaleks@gentoo.ru</who>
            <bug_when>2008-06-23 14:26:35 0000</bug_when>
            <thetext>Created an attachment (id=158115)
GCC-4.3 patch

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>yaleks@gentoo.ru</who>
            <bug_when>2008-06-23 14:27:14 0000</bug_when>
            <thetext>Created an attachment (id=158117)
--without-arts option revert

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>yaleks@gentoo.ru</who>
            <bug_when>2008-06-24 09:05:38 0000</bug_when>
            <thetext>Created an attachment (id=158193)
new version

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>markusle@gentoo.org</who>
            <bug_when>2008-06-24 13:04:30 0000</bug_when>
            <thetext>Thanks much, Aleksandr! I&apos;ll have a look at
this.

Best,
Markus</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>markusle@gentoo.org</who>
            <bug_when>2008-06-24 13:05:05 0000</bug_when>
            <thetext>Sorry, accidentally hit the FIXED button :(</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>markusle@gentoo.org</who>
            <bug_when>2008-06-24 17:20:57 0000</bug_when>
            <thetext>I&apos;ve added version 1.5.1 to portage.

Thanks again for your help!

Best,
Markus</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158115</attachid>
            <date>2008-06-23 14:26 0000</date>
            <desc>GCC-4.3 patch</desc>
            <filename>celestia-1.5.1-gcc43.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9idWlsZHN0YXJkYi5jcHAJMjAwOC0wMy0w
MSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9idWlsZHN0
YXJkYi5jcHAJMjAwOC0wMy0wMSAwODo1MjoyMy4wMDAwMDAwMDAgKzAxMDAKQEAgLTE3LDUgKzE3
LDYgQEAKICNpbmNsdWRlIDxhc3NlcnQuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRl
ICJjZWxlbmdpbmUvc3RhcmRiLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogCiB1c2luZyBuYW1lc3BhY2Ugc3Rk
OwotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9hc3RlcmlzbS5jcHAJ
MjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3Ny
Yy9jZWxlbmdpbmUvYXN0ZXJpc20uY3BwCTIwMDgtMDMtMDEgMDk6MjM6MjMuMDAwMDAwMDAwICsw
MTAwCkBAIC04LDYgKzgsNyBAQAogLy8gb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlv
bikgYW55IGxhdGVyIHZlcnNpb24uCiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8
bGliaW50bC5oPgogCiAjaWZuZGVmIF9XSU4zMgogI2lmbmRlZiBUQVJHRVRfT1NfTUFDCi0tLSBj
ZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL2FzdHJvLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2lu
ZS9hc3Ryby5jcHAJMjAwOC0wMy0wMSAwOToxNDozMy4wMDAwMDAwMDAgKzAxMDAKQEAgLTEwLDEy
ICsxMCwxNCBAQAogI2luY2x1ZGUgPGNtYXRoPgogI2luY2x1ZGUgPGlvbWFuaXA+CiAjaW5jbHVk
ZSA8Y3N0ZGlvPgorI2luY2x1ZGUgPGNzdHJpbmc+CiAjaW5jbHVkZSA8dGltZS5oPgogI2luY2x1
ZGUgPGNlbHV0aWwvYmFzaWN0eXBlcy5oPgogI2luY2x1ZGUgPGNlbG1hdGgvbWF0aGxpYi5oPgog
I2luY2x1ZGUgImNlbGVzdGlhLmgiCiAjaW5jbHVkZSAiYXN0cm8uaCIKICNpbmNsdWRlIDxjZWx1
dGlsL3V0aWwuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7
CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvYm9keS5jcHAJMjAw
OC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9j
ZWxlbmdpbmUvYm9keS5jcHAJMjAwOC0wMy0wMSAwOTozNDoxMC4wMDAwMDAwMDAgKzAxMDAKQEAg
LTE0LDYgKzE0LDcgQEAKICNpbmNsdWRlIDxjZWxtYXRoL21hdGhsaWIuaD4KICNpbmNsdWRlIDxj
ZWx1dGlsL3V0aWwuaD4KICNpbmNsdWRlIDxjZWx1dGlsL3V0ZjguaD4KKyNpbmNsdWRlIDxsaWJp
bnRsLmg+CiAjaW5jbHVkZSAibWVzaC5oIgogI2luY2x1ZGUgIm1lc2htYW5hZ2VyLmgiCiAjaW5j
bHVkZSAiYm9keS5oIgotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9j
bWRwYXJzZXIuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxl
c3RpYS0xLjUuMS9zcmMvY2VsZW5naW5lL2NtZHBhcnNlci5jcHAJMjAwOC0wMy0wMSAwODo1Mjoz
Mi4wMDAwMDAwMDAgKzAxMDAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJhc3Ryby5oIgog
I2luY2x1ZGUgImNtZHBhcnNlci5oIgogI2luY2x1ZGUgImdsY29udGV4dC5oIgorI2luY2x1ZGUg
PGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEt
dXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9jb25zb2xlLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAw
MDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9jb25zb2xlLmNw
cAkyMDA4LTAzLTAxIDA4OjUwOjIzLjAwMDAwMDAwMCArMDEwMApAQCAtMTAsNiArMTAsNyBAQAog
I2luY2x1ZGUgPGNzdGRhcmc+CiAjaW5jbHVkZSA8Y3N0ZGlvPgogI2luY2x1ZGUgPGNhc3NlcnQ+
CisjaW5jbHVkZSA8Y3N0cmluZz4KICNpbmNsdWRlICJjZWx1dGlsL3V0ZjguaCIKICNpbmNsdWRl
ICJnbC5oIgogI2luY2x1ZGUgInZlY2dsLmgiCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9z
cmMvY2VsZW5naW5lL2Rkcy5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAK
KysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvZGRzLmNwcAkyMDA4LTAzLTAxIDA4OjUx
OjQ4LjAwMDAwMDAwMCArMDEwMApAQCAtMTUsNiArMTUsNyBAQAogI2luY2x1ZGUgPGNlbGVuZ2lu
ZS9nbC5oPgogI2luY2x1ZGUgPGNlbGVuZ2luZS9nbGV4dC5oPgogI2luY2x1ZGUgPGNlbGVuZ2lu
ZS9pbWFnZS5oPgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsK
IAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9kc29kYi5jcHAJMjAw
OC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9j
ZWxlbmdpbmUvZHNvZGIuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAwICswMTAwCkBA
IC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSA8Y2VsZW5naW5lL2dhbGF4eS5oPgogI2luY2x1ZGUg
PGNlbGVuZ2luZS9vcGVuY2x1c3Rlci5oPgogI2luY2x1ZGUgPGNlbGVuZ2luZS9uZWJ1bGEuaD4K
KyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVz
dGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvZnJhZ21lbnRwcm9nLmNwcAkyMDA4LTAz
LTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVu
Z2luZS9mcmFnbWVudHByb2cuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAwICswMTAw
CkBAIC0xMyw2ICsxMyw3IEBACiAjaW5jbHVkZSAiZ2wuaCIKICNpbmNsdWRlICJnbGV4dC5oIgog
I2luY2x1ZGUgImZyYWdtZW50cHJvZy5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcg
bmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2lu
ZS9nYWxheHkuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxl
c3RpYS0xLjUuMS9zcmMvY2VsZW5naW5lL2dhbGF4eS5jcHAJMjAwOC0wMy0wMSAxMTo1MjoxMC4w
MDAwMDAwMDAgKzAxMDAKQEAgLTIzLDYgKzIzLDggQEAKICNpbmNsdWRlICJ2ZWNnbC5oIgogI2lu
Y2x1ZGUgInJlbmRlci5oIgogI2luY2x1ZGUgInRleHR1cmUuaCIKKyNpbmNsdWRlIDxsaWJpbnRs
Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNl
bGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvZ2xjb250ZXh0LmNwcAkyMDA4LTAz
LTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVu
Z2luZS9nbGNvbnRleHQuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAwICswMTAwCkBA
IC0xMiw2ICsxMiw3IEBACiAjaW5jbHVkZSAiZ2wuaCIKICNpbmNsdWRlICJnbGV4dC5oIgogI2lu
Y2x1ZGUgImdsY29udGV4dC5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNw
YWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9nbGV4
dC5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEu
NS4xL3NyYy9jZWxlbmdpbmUvZ2xleHQuY3BwCTIwMDgtMDMtMDEgMDg6NTI6NTYuMDAwMDAwMDAw
ICswMTAwCkBAIC04LDYgKzgsNyBAQAogLy8gb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9w
dGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAKICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRl
IDxjc3RyaW5nPgogI2luY2x1ZGUgImdsLmgiCiAKICNpZm5kZWYgX1dJTjMyCkBAIC0xOSw2ICsy
MCw3IEBACiAjZW5kaWYgLyogISBfV0lOMzIgKi8KIAogI2luY2x1ZGUgImdsZXh0LmgiCisjaW5j
bHVkZSA8bGliaW50bC5oPgogCiAvLyBBUkJfdGV4dHVyZV9jb21wcmVzc2lvbgogZ2x4OjpQRk5H
TENPTVBSRVNTRURURVhJTUFHRTNEQVJCUFJPQyBnbHg6OmdsQ29tcHJlc3NlZFRleEltYWdlM0RB
UkI7Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL2ltYWdlLmNwcAky
MDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3Jj
L2NlbGVuZ2luZS9pbWFnZS5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAK
QEAgLTY2LDYgKzY2LDcgQEAKICNpbmNsdWRlIDxpb3N0cmVhbT4KICNpbmNsdWRlIDxhbGdvcml0
aG0+CiAjaW5jbHVkZSA8Y21hdGg+CisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1l
c3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL2xv
Y2F0aW9uLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0
aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9sb2NhdGlvbi5jcHAJMjAwOC0wMy0wMSAwOTozNDoxOC4w
MDAwMDAwMDAgKzAxMDAKQEAgLTExLDYgKzExLDcgQEAKICNpbmNsdWRlIDxjZWxlbmdpbmUvbG9j
YXRpb24uaD4KICNpbmNsdWRlIDxjZWxlbmdpbmUvYm9keS5oPgogI2luY2x1ZGUgPGNlbHV0aWwv
dXRpbC5oPgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAot
LS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9sb2RzcGhlcmVtZXNoLmNw
cAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEv
c3JjL2NlbGVuZ2luZS9sb2RzcGhlcmVtZXNoLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ4LjAwMDAw
MDAwMCArMDEwMApAQCAtMTcsNiArMTcsNyBAQAogI2luY2x1ZGUgImdsZXh0LmgiCiAjaW5jbHVk
ZSAidmVjZ2wuaCIKICNpbmNsdWRlICJsb2RzcGhlcmVtZXNoLmgiCisjaW5jbHVkZSA8bGliaW50
bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVh
bS9zcmMvY2VsZW5naW5lL21hcmtlci5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAg
KzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvbWFya2VyLmNwcAkyMDA4LTAz
LTAxIDA4OjUxOjQ4LjAwMDAwMDAwMCArMDEwMApAQCAtOSw2ICs5LDcgQEAKIAogI2luY2x1ZGUg
Im1hcmtlci5oIgogI2luY2x1ZGUgImdsLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAKIHVz
aW5nIG5hbWVzcGFjZSBzdGQ7Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5n
aW5lL21lc2guY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxl
c3RpYS0xLjUuMS9zcmMvY2VsZW5naW5lL21lc2guY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAw
MDAwMDAwICswMTAwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSA8Y2Fzc2VydD4KICNpbmNs
dWRlIDxpb3N0cmVhbT4KICNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5jbHVkZSA8bGliaW50bC5o
PgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9z
cmMvY2VsZW5naW5lL21lc2htYW5hZ2VyLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAw
MCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9tZXNobWFuYWdlci5jcHAJ
MjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTI2LDYgKzI2LDcgQEAKICNp
bmNsdWRlICJzcGhlcmVtZXNoLmgiCiAjaW5jbHVkZSAidGV4bWFuYWdlci5oIgogI2luY2x1ZGUg
Im1lc2htYW5hZ2VyLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ug
c3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL21vZGVsZmls
ZS5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEu
NS4xL3NyYy9jZWxlbmdpbmUvbW9kZWxmaWxlLmNwcAkyMDA4LTAzLTAxIDExOjUyOjIxLjAwMDAw
MDAwMCArMDEwMApAQCAtMTUsNiArMTUsOCBAQAogI2luY2x1ZGUgPGNhc3NlcnQ+CiAjaW5jbHVk
ZSA8Y21hdGg+CiAjaW5jbHVkZSA8Y3N0ZGlvPgorI2luY2x1ZGUgPGxpYmludGwuaD4KKyNpbmNs
dWRlIDxzdHJpbmcuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41
LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS9uZWJ1bGEuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAu
MDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZW5naW5lL25lYnVsYS5j
cHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTIxLDYgKzIxLDcgQEAK
ICNpbmNsdWRlICJnbGV4dC5oIgogI2luY2x1ZGUgInZlY2dsLmgiCiAjaW5jbHVkZSAicmVuZGVy
LmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBj
ZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL29wZW5jbHVzdGVyLmNwcAkyMDA4
LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2Nl
bGVuZ2luZS9vcGVuY2x1c3Rlci5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAx
MDAKQEAgLTE5LDYgKzE5LDcgQEAKICNpbmNsdWRlICJnbC5oIgogI2luY2x1ZGUgInZlY2dsLmgi
CiAjaW5jbHVkZSAicmVuZGVyLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1l
c3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL292
ZXJsYXkuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3Rp
YS0xLjUuMS9zcmMvY2VsZW5naW5lL292ZXJsYXkuY3BwCTIwMDgtMDMtMDEgMDg6NTA6MjMuMDAw
MDAwMDAwICswMTAwCkBAIC05LDYgKzksNyBAQAogCiAjaW5jbHVkZSA8Y3N0ZGFyZz4KICNpbmNs
dWRlIDxjc3RkaW8+CisjaW5jbHVkZSA8Y3N0cmluZz4KICNpbmNsdWRlIDxjZWx1dGlsL3V0Zjgu
aD4KICNpbmNsdWRlICJnbC5oIgogI2luY2x1ZGUgInZlY2dsLmgiCi0tLSBjZWxlc3RpYS0xLjUu
MS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3BhcnNlb2JqZWN0LmNwcAkyMDA4LTAzLTAxIDEyOjUx
OjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9wYXJz
ZW9iamVjdC5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTIxLDYg
KzIxLDcgQEAKICNpbmNsdWRlICJ0cmFqbWFuYWdlci5oIgogI2luY2x1ZGUgInJvdGF0aW9ubWFu
YWdlci5oIgogI2luY2x1ZGUgInVuaXZlcnNlLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1
c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2Vs
ZW5naW5lL3JlbmRlci5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysr
IGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvcmVuZGVyLmNwcAkyMDA4LTAzLTAxIDA4OjUz
OjI5LjAwMDAwMDAwMCArMDEwMApAQCAtMTEsNiArMTEsNyBAQAogI2luY2x1ZGUgPGNzdGRpbz4K
ICNpbmNsdWRlIDxjc3RyaW5nPgogI2luY2x1ZGUgPGNhc3NlcnQ+CisjaW5jbHVkZSA8bGliaW50
bC5oPgogCiAjaWZuZGVmIF9XSU4zMgogI2lmbmRlZiBUQVJHRVRfT1NfTUFDCi0tLSBjZWxlc3Rp
YS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3JvdGF0aW9ubWFuYWdlci5jcHAJMjAwOC0w
My0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxl
bmdpbmUvcm90YXRpb25tYW5hZ2VyLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ4LjAwMDAwMDAwMCAr
MDEwMApAQCAtMTQsNiArMTQsNyBAQAogI2luY2x1ZGUgPGNlbHV0aWwvZGVidWcuaD4KICNpbmNs
dWRlICJzYW1wb3JpZW50LmgiCiAjaW5jbHVkZSAicm90YXRpb25tYW5hZ2VyLmgiCisjaW5jbHVk
ZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUu
MS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3NlbGVjdGlvbi5jcHAJMjAwOC0wMy0wMSAxMjo1MToy
MC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvc2VsZWN0
aW9uLmNwcAkyMDA4LTAzLTAxIDA5OjM0OjI1LjAwMDAwMDAwMCArMDEwMApAQCAtOCw2ICs4LDcg
QEAKIC8vIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz
aW9uLgogCiAjaW5jbHVkZSA8Y3N0ZGlvPgorI2luY2x1ZGUgPGxpYmludGwuaD4KICNpbmNsdWRl
ICJhc3Ryby5oIgogI2luY2x1ZGUgInNlbGVjdGlvbi5oIgogCi0tLSBjZWxlc3RpYS0xLjUuMS11
cHN0cmVhbS9zcmMvY2VsZW5naW5lL3NoYWRlcm1hbmFnZXIuY3BwCTIwMDgtMDMtMDEgMTI6NTE6
MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZW5naW5lL3NoYWRl
cm1hbmFnZXIuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAwICswMTAwCkBAIC0xNSw2
ICsxNSw3IEBACiAjaW5jbHVkZSA8aW9tYW5pcD4KICNpbmNsdWRlIDxjc3RkaW8+CiAjaW5jbHVk
ZSA8Y2Fzc2VydD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7
CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvc2ltdWxhdGlvbi5j
cHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4x
L3NyYy9jZWxlbmdpbmUvc2ltdWxhdGlvbi5jcHAJMjAwOC0wMy0wMSAwOTozNDoyOC4wMDAwMDAw
MDAgKzAxMDAKQEAgLTExLDYgKzExLDcgQEAKIC8vIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91
ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgorI2lu
Y2x1ZGUgPGxpYmludGwuaD4KICNpbmNsdWRlICJzaW11bGF0aW9uLmgiCiAKIHVzaW5nIG5hbWVz
cGFjZSBzdGQ7Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3NvbGFy
c3lzLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEt
MS41LjEvc3JjL2NlbGVuZ2luZS9zb2xhcnN5cy5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAw
MDAwMDAgKzAxMDAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJ1bml2ZXJzZS5oIgogI2lu
Y2x1ZGUgIm11bHRpdGV4dHVyZS5oIgogI2luY2x1ZGUgInBhcnNlb2JqZWN0LmgiCisjaW5jbHVk
ZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUu
MS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3NvbGFyc3lzeG1sLmNwcAkyMDA4LTAzLTAxIDEyOjUx
OjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9zb2xh
cnN5c3htbC5jcHAJMjAwOC0wMy0wMSAxMTo1MjozMS4wMDAwMDAwMDAgKzAxMDAKQEAgLTgsNiAr
OCw4IEBACiAvLyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg
dmVyc2lvbi4KIAogI2luY2x1ZGUgPGNhc3NlcnQ+CisjaW5jbHVkZSA8Y3N0cmluZz4KKyNpbmNs
dWRlIDxzdHJpbmcuaD4KIAogI2luY2x1ZGUgPGxpYnhtbC9wYXJzZXIuaD4KICNpbmNsdWRlIDxs
aWJ4bWwvcGFyc2VySW50ZXJuYWxzLmg+CkBAIC0yMCw2ICsyMiw3IEBACiAjaW5jbHVkZSAidGV4
bWFuYWdlci5oIgogI2luY2x1ZGUgIm1lc2htYW5hZ2VyLmgiCiAjaW5jbHVkZSAic29sYXJzeXN4
bWwuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0t
IGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvc3BpY2VpbnRlcmZhY2UuY3Bw
CTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9z
cmMvY2VsZW5naW5lL3NwaWNlaW50ZXJmYWNlLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ4LjAwMDAw
MDAwMCArMDEwMApAQCAtMTEsNiArMTEsNyBAQAogCiAjaW5jbHVkZSAiU3BpY2VVc3IuaCIKICNp
bmNsdWRlICJzcGljZWludGVyZmFjZS5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogCiBib29s
Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZW5naW5lL3NwaWNlb3JiaXQuY3Bw
CTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9z
cmMvY2VsZW5naW5lL3NwaWNlb3JiaXQuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAw
ICswMTAwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSAiU3BpY2VVc3IuaCIKICNpbmNsdWRl
ICJhc3Ryby5oIgogI2luY2x1ZGUgInNwaWNlb3JiaXQuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+
CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3Ny
Yy9jZWxlbmdpbmUvc3RhcmRiLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEw
MAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS9zdGFyZGIuY3BwCTIwMDgtMDMtMDEg
MDg6NTE6NDguMDAwMDAwMDAwICswMTAwCkBAIC0xMCw2ICsxMCw3IEBACiAjaW5jbHVkZSA8Y21h
dGg+CiAjaW5jbHVkZSA8Y3N0ZGxpYj4KICNpbmNsdWRlIDxjc3RkaW8+CisjaW5jbHVkZSA8Y3N0
cmluZz4KICNpbmNsdWRlIDxjYXNzZXJ0PgogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRl
IDxjZWxtYXRoL21hdGhsaWIuaD4KQEAgLTI0LDYgKzI1LDcgQEAKICNpbmNsdWRlICJtdWx0aXRl
eHR1cmUuaCIKICNpbmNsdWRlICJtZXNobWFuYWdlci5oIgogI2luY2x1ZGUgPGNlbHV0aWwvZGVi
dWcuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0t
IGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvdGV4bWFuYWdlci5jcHAJMjAw
OC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9j
ZWxlbmdpbmUvdGV4bWFuYWdlci5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAx
MDAKQEAgLTEzLDYgKzEzLDcgQEAKICNpbmNsdWRlIDxmc3RyZWFtPgogI2luY2x1ZGUgIm11bHRp
dGV4dHVyZS5oIgogI2luY2x1ZGUgInRleG1hbmFnZXIuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+
CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3Ny
Yy9jZWxlbmdpbmUvdGV4dHVyZS5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAx
MDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvdGV4dHVyZS5jcHAJMjAwOC0wMy0w
MSAwODo1NDowMC4wMDAwMDAwMDAgKzAxMDAKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlIDxj
c3RkbGliPgogI2luY2x1ZGUgPGNzdGRpbz4KICNpbmNsdWRlIDxjYXNzZXJ0PgorI2luY2x1ZGUg
PGxpYmludGwuaD4KIAogI2lmbmRlZiBfV0lOMzIKICNpZm5kZWYgVEFSR0VUX09TX01BQwotLS0g
Y2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS90b2tlbml6ZXIuY3BwCTIwMDgt
MDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2Vs
ZW5naW5lL3Rva2VuaXplci5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAK
QEAgLTEyLDYgKzEyLDcgQEAKICNpbmNsdWRlIDxpb21hbmlwPgogI2luY2x1ZGUgPGNlbHV0aWwv
dXRmOC5oPgogI2luY2x1ZGUgInRva2VuaXplci5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAog
CiBzdGF0aWMgYm9vbCBpc3NlcChjaGFyIGMpCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9z
cmMvY2VsZW5naW5lL3RyYWptYW5hZ2VyLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAw
MCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2luZS90cmFqbWFuYWdlci5jcHAJ
MjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTE1LDYgKzE1LDcgQEAKICNp
bmNsdWRlIDxjZWx1dGlsL2RlYnVnLmg+CiAjaW5jbHVkZSAic2FtcG9yYml0LmgiCiAjaW5jbHVk
ZSAidHJham1hbmFnZXIuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFj
ZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlbmdpbmUvdW5pdmVy
c2UuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0x
LjUuMS9zcmMvY2VsZW5naW5lL3VuaXZlcnNlLmNwcAkyMDA4LTAzLTAxIDA5OjM0OjMzLjAwMDAw
MDAwMCArMDEwMApAQCAtMTMsNiArMTMsNyBAQAogI2luY2x1ZGUgPGNlbG1hdGgvaW50ZXJzZWN0
Lmg+CiAjaW5jbHVkZSA8Y2VsdXRpbC91dGY4Lmg+CiAjaW5jbHVkZSA8Y2Fzc2VydD4KKyNpbmNs
dWRlIDxsaWJpbnRsLmg+CiAjaW5jbHVkZSAiYXN0cm8uaCIKICNpbmNsdWRlICIzZHNtZXNoLmgi
CiAjaW5jbHVkZSAibWVzaG1hbmFnZXIuaCIKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3Ny
Yy9jZWxlbmdpbmUvdmVydGV4cHJvZy5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAg
KzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlbmdpbmUvdmVydGV4cHJvZy5jcHAJMjAw
OC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTE0LDYgKzE0LDcgQEAKICNpbmNs
dWRlICJnbC5oIgogI2luY2x1ZGUgImdsZXh0LmgiCiAjaW5jbHVkZSAidmVydGV4cHJvZy5oIgor
I2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0
aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVuZ2luZS92aXJ0dWFsdGV4LmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVuZ2lu
ZS92aXJ0dWFsdGV4LmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ4LjAwMDAwMDAwMCArMDEwMApAQCAt
MTksNiArMTksNyBAQAogI2luY2x1ZGUgInZpcnR1YWx0ZXguaCIKICNpbmNsdWRlICJnbC5oIgog
I2luY2x1ZGUgInBhcnNlci5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogdXNpbmcgbmFtZXNw
YWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2NlbGVz
dGlhY29yZS5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVz
dGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9jZWxlc3RpYWNvcmUuY3BwCTIwMDgtMDMtMDEgMDg6NTQ6
MTguMDAwMDAwMDAwICswMTAwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSA8Y2VsdXRpbC9k
ZWJ1Zy5oPgogI2luY2x1ZGUgPGNlbHV0aWwvdXRmOC5oPgogI2luY2x1ZGUgInVybC5oIgorI2lu
Y2x1ZGUgPGxpYmludGwuaD4KIAogI2lmZGVmIENFTFgKICNpbmNsdWRlIDxjZWxlbmdpbmUvc2Ny
aXB0b2JqZWN0Lmg+Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvY2Vs
eC5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEu
NS4xL3NyYy9jZWxlc3RpYS9jZWx4LmNwcAkyMDA4LTAzLTAxIDExOjUyOjM4LjAwMDAwMDAwMCAr
MDEwMApAQCAtMTEsNyArMTEsOSBAQAogCiAjaW5jbHVkZSA8Y2Fzc2VydD4KICNpbmNsdWRlIDxj
c3RyaW5nPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGNzdGRpbz4KKyNpbmNsdWRl
IDxsaWJpbnRsLmg+CiAjaW5jbHVkZSA8bWFwPgogI2luY2x1ZGUgPGNlbGVuZ2luZS9hc3Ryby5o
PgogI2luY2x1ZGUgPGNlbGVuZ2luZS9jZWxlc3RpYS5oPgotLS0gY2VsZXN0aWEtMS41LjEtdXBz
dHJlYW0vc3JjL2NlbGVzdGlhL2NvbmZpZ2ZpbGUuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAw
MDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0aWEvY29uZmlnZmlsZS5j
cHAJMjAwOC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTE2LDYgKzE2LDcgQEAK
ICNpbmNsdWRlIDxjZWxlbmdpbmUvY2VsZXN0aWEuaD4KICNpbmNsdWRlIDxjZWxlbmdpbmUvdGV4
bWFuYWdlci5oPgogI2luY2x1ZGUgImNvbmZpZ2ZpbGUuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+
CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3Ny
Yy9jZWxlc3RpYS9kZXN0aW5hdGlvbi5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAg
KzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9kZXN0aW5hdGlvbi5jcHAJMjAw
OC0wMy0wMSAwODo1MTo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTE0LDYgKzE0LDcgQEAKICNpbmNs
dWRlIDxjZWxlbmdpbmUvYXN0cm8uaD4KICNpbmNsdWRlIDxjZWxlbmdpbmUvcGFyc2VyLmg+CiAj
aW5jbHVkZSAiZGVzdGluYXRpb24uaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5h
bWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS9l
Y2xpcHNlZmluZGVyLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysg
Y2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2VjbGlwc2VmaW5kZXIuY3BwCTIwMDgtMDMtMDEg
MDk6MTQ6NTMuMDAwMDAwMDAwICswMTAwCkBAIC0xNSw2ICsxNSw3IEBACiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHNldD4KICNpbmNsdWRlIDxjYXNzZXJ0PgorI2luY2x1ZGUgPGNz
dHJpbmc+CiAjaW5jbHVkZSAiZWNsaXBzZWZpbmRlci5oIgogI2luY2x1ZGUgImNlbG1hdGgvbWF0
aGxpYi5oIgogI2luY2x1ZGUgImNlbG1hdGgvcmF5LmgiCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0
cmVhbS9zcmMvY2VsZXN0aWEvZ2x1dG1haW4uY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAw
MDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0aWEvZ2x1dG1haW4uY3BwCTIw
MDgtMDMtMDEgMDg6NTU6MTguMDAwMDAwMDAwICswMTAwCkBAIC0xNSw2ICsxNSw3IEBACiAjaW5j
bHVkZSA8Y3N0ZGxpYj4KICNpbmNsdWRlIDxjY3R5cGU+CiAjaW5jbHVkZSA8Y3N0cmluZz4KKyNp
bmNsdWRlIDxsaWJpbnRsLmg+CiAjaW5jbHVkZSA8dGltZS5oPgogI2luY2x1ZGUgPHVuaXN0ZC5o
PgogI2luY2x1ZGUgPGNlbGVuZ2luZS9nbC5oPgotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0v
c3JjL2NlbGVzdGlhL2d0ay9hY3Rpb25zLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAw
MCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9hY3Rpb25zLmNwcAky
MDA4LTAzLTAxIDA4OjU1OjMzLjAwMDAwMDAwMCArMDEwMApAQCAtMTUsNiArMTUsNyBAQAogI2Vu
ZGlmIC8qIEhBVkVfQ09ORklHX0ggKi8KIAogI2luY2x1ZGUgPGNzdHJpbmc+CisjaW5jbHVkZSA8
bGliaW50bC5oPgogI2luY2x1ZGUgPGZzdHJlYW0+CiAjaW5jbHVkZSA8Z3RrL2d0ay5oPgogCi0t
LSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvZ3RrL2NvbW1vbi5jcHAJMjAw
OC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9j
ZWxlc3RpYS9ndGsvY29tbW9uLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ4LjAwMDAwMDAwMCArMDEw
MApAQCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgPGNlbGVzdGlhL2NlbGVzdGlhY29yZS5oPgog
CiAjaW5jbHVkZSAiY29tbW9uLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAKIC8qIFJldHVy
bnMgdGhlIG9mZnNldCBvZiB0aGUgdGltZXpvbmUgYXQgZGF0ZSAqLwotLS0gY2VsZXN0aWEtMS41
LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2d0ay9kaWFsb2ctZWNsaXBzZS5jcHAJMjAwOC0wMy0w
MSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3Rp
YS9ndGsvZGlhbG9nLWVjbGlwc2UuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDguMDAwMDAwMDAwICsw
MTAwCkBAIC0xOCw2ICsxOCw3IEBACiAKICNpbmNsdWRlICJkaWFsb2ctZWNsaXBzZS5oIgogI2lu
Y2x1ZGUgImNvbW1vbi5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogCiAvKiBEZWZpbml0aW9u
czogQ2FsbGJhY2tzICovCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEv
Z3RrL2RpYWxvZy1nb3RvLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAor
KysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9kaWFsb2ctZ290by5jcHAJMjAwOC0w
My0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTE4LDYgKzE4LDcgQEAKIAogI2luY2x1
ZGUgImRpYWxvZy1nb3RvLmgiCiAjaW5jbHVkZSAiY29tbW9uLmgiCisjaW5jbHVkZSA8bGliaW50
bC5oPgogCiAKIC8qIERlY2xhcmF0aW9uczogQ2FsbGJhY2tzICovCi0tLSBjZWxlc3RpYS0xLjUu
MS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvZ3RrL2RpYWxvZy1vcHRpb25zLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlh
L2d0ay9kaWFsb2ctb3B0aW9ucy5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAx
MDAKQEAgLTE3LDYgKzE3LDcgQEAKICNpbmNsdWRlICJkaWFsb2ctb3B0aW9ucy5oIgogI2luY2x1
ZGUgImNvbW1vbi5oIgogI2luY2x1ZGUgInVpLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAK
IC8qIERlZmluaXRpb25zOiBDYWxsYmFja3MgKi8KLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFt
L3NyYy9jZWxlc3RpYS9ndGsvZGlhbG9nLXNvbGFyLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAw
MDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9kaWFsb2ct
c29sYXIuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0yMiw2ICsy
Miw3IEBACiAjaW5jbHVkZSAiZGlhbG9nLXNvbGFyLmgiCiAjaW5jbHVkZSAiYWN0aW9ucy5oIgog
I2luY2x1ZGUgImNvbW1vbi5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogCiAvKiBEZWNsYXJh
dGlvbnM6IENhbGxiYWNrcyAqLwotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVz
dGlhL2d0ay9kaWFsb2ctc3Rhci5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAx
MDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9ndGsvZGlhbG9nLXN0YXIuY3BwCTIw
MDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0yNSw2ICsyNSw3IEBACiAjaW5j
bHVkZSAiZGlhbG9nLXN0YXIuaCIKICNpbmNsdWRlICJhY3Rpb25zLmgiCiAjaW5jbHVkZSAiY29t
bW9uLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAKIC8qIERlY2xhcmF0aW9uczogQ2FsbGJh
Y2tzICovCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvZ3RrL2RpYWxv
Zy10aW1lLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0
aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9kaWFsb2ctdGltZS5jcHAJMjAwOC0wMy0wMSAwODo1
MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTE4LDYgKzE4LDcgQEAKIAogI2luY2x1ZGUgImRpYWxv
Zy10aW1lLmgiCiAjaW5jbHVkZSAiY29tbW9uLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAK
IC8qIERlY2xhcmF0aW9uczogQ2FsbGJhY2tzICovCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVh
bS9zcmMvY2VsZXN0aWEvZ3RrL2RpYWxvZy10b3VyLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAw
MDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9kaWFsb2ct
dG91ci5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTE4LDYgKzE4
LDcgQEAKIAogI2luY2x1ZGUgImRpYWxvZy10b3VyLmgiCiAjaW5jbHVkZSAiY29tbW9uLmgiCisj
aW5jbHVkZSA8bGliaW50bC5oPgogCiAKIC8qIERlY2xhcmF0aW9uczogQ2FsbGJhY2tzICovCi0t
LSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvZ3RrL21haW4uY3BwCTIwMDgt
MDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2Vs
ZXN0aWEvZ3RrL21haW4uY3BwCTIwMDgtMDMtMDEgMDg6NTY6MDMuMDAwMDAwMDAwICswMTAwCkBA
IC0xOSw2ICsxOSw3IEBACiAjaW5jbHVkZSA8Y3N0ZGxpYj4KICNpbmNsdWRlIDxjY3R5cGU+CiAj
aW5jbHVkZSA8Y3N0cmluZz4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAjaW5jbHVkZSA8dGltZS5o
PgogCiAjaWZkZWYgV0lOMzIKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3Rp
YS9ndGsvbWVudS1jb250ZXh0LmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEw
MAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2d0ay9tZW51LWNvbnRleHQuY3BwCTIw
MDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0yMCw2ICsyMCw3IEBACiAjaW5j
bHVkZSAibWVudS1jb250ZXh0LmgiCiAjaW5jbHVkZSAiYWN0aW9ucy5oIgogI2luY2x1ZGUgImNv
bW1vbi5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogCiAvKiBEZWZpbml0aW9uczogQ2FsbGJh
Y2tzICovCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvZ3RrL3NldHRp
bmdzLWZpbGUuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxl
c3RpYS0xLjUuMS9zcmMvY2VsZXN0aWEvZ3RrL3NldHRpbmdzLWZpbGUuY3BwCTIwMDgtMDMtMDEg
MDk6MzQ6NDAuMDAwMDAwMDAwICswMTAwCkBAIC0xMSw2ICsxMSw3IEBACiAgKi8KIAogI2luY2x1
ZGUgPGd0ay9ndGsuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKICNpbmNsdWRlIDxjZWxlbmdp
bmUvYm9keS5oPgogI2luY2x1ZGUgPGNlbGVuZ2luZS9nYWxheHkuaD4KLS0tIGNlbGVzdGlhLTEu
NS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS9ndGsvc2V0dGluZ3MtZ2NvbmYuY3BwCTIwMDgtMDMt
MDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0
aWEvZ3RrL3NldHRpbmdzLWdjb25mLmNwcAkyMDA4LTAzLTAxIDA5OjM0OjQ0LjAwMDAwMDAwMCAr
MDEwMApAQCAtMTIsNiArMTIsNyBAQAogCiAjaW5jbHVkZSA8Z3RrL2d0ay5oPgogI2luY2x1ZGUg
PGdjb25mL2djb25mLWNsaWVudC5oPgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogI2luY2x1ZGUg
PGNlbGVuZ2luZS9ib2R5Lmg+CiAjaW5jbHVkZSA8Y2VsZW5naW5lL2dhbGF4eS5oPgotLS0gY2Vs
ZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2d0ay9zcGxhc2guY3BwCTIwMDgtMDMt
MDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0
aWEvZ3RrL3NwbGFzaC5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAg
LTIyLDYgKzIyLDcgQEAKIAogI2luY2x1ZGUgInNwbGFzaC5oIgogI2luY2x1ZGUgImNvbW1vbi5o
IgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogCiAvKiBEZWNsYXJhdGlvbnMgKi8KLS0tIGNlbGVz
dGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS9rZGUvY2VsZXN0aWFsYnJvd3Nlci5jcHAJ
MjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3Ny
Yy9jZWxlc3RpYS9rZGUvY2VsZXN0aWFsYnJvd3Nlci5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4w
MDAwMDAwMDAgKzAxMDAKQEAgLTE2LDYgKzE2LDcgQEAKICNpbmNsdWRlICJjZWxsaXN0dmlld2l0
ZW0uaCIKICNpbmNsdWRlICJzZWxlY3Rpb25wb3B1cC5oIgogI2luY2x1ZGUgImNlbHV0aWwvdXRm
OC5oIgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogLyoKICAqICBDb25zdHJ1Y3RzIGEgQ2VsZXN0
aWFsQnJvd3NlciB3aGljaCBpcyBhIGNoaWxkIG9mICdwYXJlbnQnLCB3aXRoIHRoZQotLS0gY2Vs
ZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2tkZS9jZWxzcGxhc2hzY3JlZW4uY3Bw
CTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9z
cmMvY2VsZXN0aWEva2RlL2NlbHNwbGFzaHNjcmVlbi5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4w
MDAwMDAwMDAgKzAxMDAKQEAgLTIyLDYgKzIyLDcgQEAKICNpbmNsdWRlIDxrZ2xvYmFsc2V0dGlu
Z3MuaD4KICNpbmNsdWRlIDxjZWxzcGxhc2hzY3JlZW4uaD4KICNpbmNsdWRlIDxYMTEvWGxpYi5o
PgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogQ2VsU3BsYXNoU2NyZWVuOjpDZWxTcGxhc2hTY3Jl
ZW4oY29uc3QgUVN0cmluZyYgZmlsZW5hbWUsIFFXaWRnZXQqIF9wYXJlbnQpOgogICAgIFFXaWRn
ZXQoMCwgMCwgV1N0eWxlX0N1c3RvbWl6ZSB8IFdYMTFCeXBhc3NXTSksIAotLS0gY2VsZXN0aWEt
MS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2tkZS9lY2xpcHNlZmluZGVyZGxnLmNwcAkyMDA4
LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2Nl
bGVzdGlhL2tkZS9lY2xpcHNlZmluZGVyZGxnLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5LjAwMDAw
MDAwMCArMDEwMApAQCAtMTEsNiArMTEsNyBAQAogI2luY2x1ZGUgImNlbGVzdGlhY29yZS5oIgog
I2luY2x1ZGUgImNlbGVuZ2luZS9hc3Ryby5oIgogI2luY2x1ZGUgImVjbGlwc2VmaW5kZXIuaCIK
KyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIC8qIAogICogIENvbnN0cnVjdHMgYSBFY2xpcHNlRmlu
ZGVyIHdoaWNoIGlzIGEgY2hpbGQgb2YgJ3BhcmVudCcsIHdpdGggdGhlIAotLS0gY2VsZXN0aWEt
MS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2tkZS9rY2VsYm9va21hcmttYW5hZ2VyLmNwcAky
MDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3Jj
L2NlbGVzdGlhL2tkZS9rY2VsYm9va21hcmttYW5hZ2VyLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5
LjAwMDAwMDAwMCArMDEwMApAQCAtMTksNiArMTksNyBAQAogI2luY2x1ZGUgPHFkaXIuaD4KICNp
bmNsdWRlIDxrc3RhbmRhcmRkaXJzLmg+CiAjaW5jbHVkZSAia2NlbGJvb2ttYXJrbWFuYWdlci5o
IgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogS0Jvb2ttYXJrTWFuYWdlciogS0NlbEJvb2ttYXJr
TWFuYWdlcjo6c2VsZigpIHsKICAgICBpZiAoICFzX2Jvb2ttYXJrTWFuYWdlciApCi0tLSBjZWxl
c3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEva2RlL2tjZWxib29rbWFya21lbnUuY3Bw
CTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9z
cmMvY2VsZXN0aWEva2RlL2tjZWxib29rbWFya21lbnUuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDku
MDAwMDAwMDAwICswMTAwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSA8a3BvcHVwbWVudS5o
PgogI2luY2x1ZGUgPGtzdGRhY2NlbC5oPgogI2luY2x1ZGUgPGtzdGRhY3Rpb24uaD4KKyNpbmNs
dWRlIDxsaWJpbnRsLmg+CiAKIHRlbXBsYXRlIGNsYXNzIFFQdHJMaXN0PEtDZWxCb29rbWFya01l
bnU+OwogCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEva2RlL2tkZWFw
cC5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEu
NS4xL3NyYy9jZWxlc3RpYS9rZGUva2RlYXBwLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5LjAwMDAw
MDAwMCArMDEwMApAQCAtODcsNiArODcsNyBAQAogI2VuZGlmCiAKICNpbmNsdWRlICJjZWxlbmdp
bmUvZ2xleHQuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKICNkZWZpbmUgTUVOVU1BWFNJWkUg
MTAwCiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS9rZGUva2RlZ2x3
aWRnZXQuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3Rp
YS0xLjUuMS9zcmMvY2VsZXN0aWEva2RlL2tkZWdsd2lkZ2V0LmNwcAkyMDA4LTAzLTAxIDA4OjUx
OjQ5LjAwMDAwMDAwMCArMDEwMApAQCAtNDgsNiArNDgsNyBAQAogCiAjaW5jbHVkZSA8bWF0aC5o
PgogI2luY2x1ZGUgPHZlY3Rvcj4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIEtkZUdsV2lkZ2V0
OjpLZGVHbFdpZGdldCggIFFXaWRnZXQqIHBhcmVudCwgY29uc3QgY2hhciogbmFtZSwgQ2VsZXN0
aWFDb3JlKiBjb3JlKQogICAgIDogUUdMV2lkZ2V0KCBwYXJlbnQsIG5hbWUgKQotLS0gY2VsZXN0
aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL2tkZS9rZGVtYWluLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlh
L2tkZS9rZGVtYWluLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5LjAwMDAwMDAwMCArMDEwMApAQCAt
MjAsNiArMjAsNyBAQAogI2luY2x1ZGUgPGtsb2NhbGUuaD4KIAogI2luY2x1ZGUgImtkZXVuaXF1
ZWNlbGVzdGlhLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiBzdGF0aWMgY29uc3QgY2hhciAq
ZGVzY3JpcHRpb24gPQogICAgIEkxOE5fTk9PUCgiQ2VsZXN0aWEiKTsKLS0tIGNlbGVzdGlhLTEu
NS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS9rZGUva2RlcHJlZmVyZW5jZXNkaWFsb2cuY3BwCTIw
MDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMv
Y2VsZXN0aWEva2RlL2tkZXByZWZlcmVuY2VzZGlhbG9nLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5
LjAwMDAwMDAwMCArMDEwMApAQCAtNDAsNiArNDAsNyBAQAogI2luY2x1ZGUgImNlbGVuZ2luZS9y
ZW5kZXIuaCIKICNpbmNsdWRlICJjZWxlbmdpbmUvZ2xjb250ZXh0LmgiCiAjaW5jbHVkZSAiY2Vs
ZW5naW5lL2FzdHJvLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiBzdGF0aWMgdWludDMyIEZp
bHRlck90aGVyTG9jYXRpb25zID0gfihMb2NhdGlvbjo6Q2l0eSB8CiAgICAgICAgICAgICAgICAg
ICAgIExvY2F0aW9uOjpPYnNlcnZhdG9yeSB8Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9z
cmMvY2VsZXN0aWEva2RlL2tkZXVuaXF1ZWNlbGVzdGlhLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIw
LjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL2tkZS9rZGV1
bmlxdWVjZWxlc3RpYS5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAg
LTIxLDYgKzIxLDcgQEAKICNpbmNsdWRlIDxzdHJpbmc+CiAjaW5jbHVkZSA8dmVjdG9yPgogI2lu
Y2x1ZGUgPGtsb2NhbGUuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIEtkZVVuaXF1ZUNlbGVz
dGlhOjpLZGVVbmlxdWVDZWxlc3RpYSgpIHsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0v
c3JjL2NlbGVzdGlhL2tkZS9zZWxlY3Rpb25wb3B1cC5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4w
MDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9rZGUvc2VsZWN0
aW9ucG9wdXAuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0yOSw2
ICsyOSw3IEBACiAjaW5jbHVkZSA8a3J1bi5oPgogCiAjaW5jbHVkZSAiY2VsdXRpbC91dGY4Lmgi
CisjaW5jbHVkZSA8bGliaW50bC5oPgogCiBTZWxlY3Rpb25Qb3B1cDo6U2VsZWN0aW9uUG9wdXAo
UVdpZGdldCogcGFyZW50LCBDZWxlc3RpYUNvcmUqIF9hcHBDb3JlLCBTZWxlY3Rpb24gX3NlbCk6
CiBLUG9wdXBNZW51KHBhcmVudCksCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2Vs
ZXN0aWEva2RlL3ZpZGVvY2FwdHVyZWRsZy5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAw
MDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9rZGUvdmlkZW9jYXB0dXJl
ZGxnLmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5LjAwMDAwMDAwMCArMDEwMApAQCAtMzYsNiArMzYs
NyBAQAogI2luY2x1ZGUgPGtzdGF0dXNiYXIuaD4KICNpbmNsdWRlIDxrYXBwLmg+CiAjaW5jbHVk
ZSAia2RlYXBwLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiBWaWRlb0NhcHR1cmVEbGc6OlZp
ZGVvQ2FwdHVyZURsZyhRV2lkZ2V0KiBwLCBjb25zdCBRU3RyaW5nICZkaXIpOgogICAgIGFjY2Vw
dGVkKGZhbHNlKQotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL29nZ3Ro
ZW9yYWNhcHR1cmUuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBj
ZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0aWEvb2dndGhlb3JhY2FwdHVyZS5jcHAJMjAwOC0wMy0w
MSAwOToxNTowMi4wMDAwMDAwMDAgKzAxMDAKQEAgLTY2LDExICs2NiwxMyBAQAogI2luY2x1ZGUg
PGNlbHV0aWwvdXRpbC5oPgogI2luY2x1ZGUgIi4uL2NlbGVuZ2luZS9nbC5oIgogI2luY2x1ZGUg
PHN0cmluZz4KKyNpbmNsdWRlIDxjc3RyaW5nPgogI2luY2x1ZGUgInRoZW9yYS90aGVvcmEuaCIK
IAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAogI2luY2x1ZGUgIm9nZ3RoZW9yYWNhcHR1cmUuaCIK
KyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIC8vICB7InZpZGVvLXJhdGUtdGFyZ2V0IixyZXF1aXJl
ZF9hcmd1bWVudCxOVUxMLCdWJ30sCiAvLyAgeyJ2aWRlby1xdWFsaXR5IixyZXF1aXJlZF9hcmd1
bWVudCxOVUxMLCd2J30sCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEv
c2NyaXB0bWVudS5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNl
bGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS9zY3JpcHRtZW51LmNwcAkyMDA4LTAzLTAxIDA4OjUx
OjQ5LjAwMDAwMDAwMCArMDEwMApAQCAtMTMsNiArMTMsNyBAQAogI2luY2x1ZGUgImNlbHV0aWwv
ZGlyZWN0b3J5LmgiCiAjaW5jbHVkZSAiY2VsdXRpbC9maWxldHlwZS5oIgogI2luY2x1ZGUgPGZz
dHJlYW0+CisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0t
LSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvdXJsLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlh
L3VybC5jcHAJMjAwOC0wMy0wMSAxMTo1Mjo0OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTE2LDEwICsx
NiwxMiBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAogI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNs
dWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgImNlbGVzdGlhY29y
ZS5oIgogI2luY2x1ZGUgImNlbGVuZ2luZS9hc3Ryby5oIgogI2luY2x1ZGUgInVybC5oIgorI2lu
Y2x1ZGUgPGxpYmludGwuaD4KIAogc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBDdXJyZW50Q2Vs
ZXN0aWFVUkxWZXJzaW9uID0gMjsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2Nl
bGVzdGlhL3dnbGV4dC5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysr
IGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS93Z2xleHQuY3BwCTIwMDgtMDMtMDEgMTE6NTI6
NTIuMDAwMDAwMDAwICswMTAwCkBAIC0xNCw3ICsxNCwxMCBAQAogI2luY2x1ZGUgIndnbGV4dC5o
IgogI2luY2x1ZGUgPHdpbmRvd3MuaD4KICNpbmNsdWRlIDxjc3RkaW8+CisjaW5jbHVkZSA8Y3N0
cmluZz4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx2ZWN0b3I+CisjaW5jbHVkZSA8
bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxlc3RpYS0xLjUuMS11
cHN0cmVhbS9zcmMvY2VsZXN0aWEvd2luYm9va21hcmtzLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIw
LjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL3dpbmJvb2tt
YXJrcy5jcHAJMjAwOC0wMy0wMSAxMTo1Mjo1OC4wMDAwMDAwMDAgKzAxMDAKQEAgLTEzLDYgKzEz
LDcgQEAKICNpbmNsdWRlICJyZXMvcmVzb3VyY2UuaCIKICNpbmNsdWRlIDxjZWx1dGlsL3dpbnV0
aWwuaD4KICNpbmNsdWRlIDxpb3N0cmVhbT4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KIAogdXNpbmcg
bmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlh
L3dpbmRhdGVwaWNrZXIuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisr
KyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsZXN0aWEvd2luZGF0ZXBpY2tlci5jcHAJMjAwOC0wMy0w
MSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTExLDEwICsxMSwxMiBAQAogCiAjaW5jbHVk
ZSA8d2luZG93cy5oPgogI2luY2x1ZGUgPGNvbW1jdHJsLmg+CisjaW5jbHVkZSA8Y3N0cmluZz4K
ICNpbmNsdWRlICJjZWx1dGlsL2Jhc2ljdHlwZXMuaCIKICNpbmNsdWRlICJjZWxlbmdpbmUvYXN0
cm8uaCIKICNpbmNsdWRlICJjZWx1dGlsL3V0aWwuaCIKICNpbmNsdWRlICJjZWx1dGlsL3dpbnV0
aWwuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIAogLy8gRGF0ZVBpY2tlciBpcyBhIFdpbjMy
IGNvbnRyb2wgZm9yIHNldHRpbmcgdGhlIGRhdGUuIEl0IHJlcGxhY2VzIHRoZQotLS0gY2VsZXN0
aWEtMS41LjEtdXBzdHJlYW0vc3JjL2NlbGVzdGlhL3dpbmVjbGlwc2VzLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlh
L3dpbmVjbGlwc2VzLmNwcAkyMDA4LTAzLTAxIDExOjUzOjAyLjAwMDAwMDAwMCArMDEwMApAQCAt
MTAsNiArMTAsNyBAQAogCiAjaW5jbHVkZSA8c3RyaW5nPgogI2luY2x1ZGUgPHNzdHJlYW0+Cisj
aW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHNldD4K
ICNpbmNsdWRlIDxjYXNzZXJ0PgpAQCAtMjMsNiArMjQsNyBAQAogI2luY2x1ZGUgImNlbG1hdGgv
ZGlzdGFuY2UuaCIKICNpbmNsdWRlICJjZWx1dGlsL3V0aWwuaCIKICNpbmNsdWRlICJjZWx1dGls
L3dpbnV0aWwuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7
CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS93aW5oeXBlcmxpbmtz
LmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41
LjEvc3JjL2NlbGVzdGlhL3dpbmh5cGVybGlua3MuY3BwCTIwMDgtMDMtMDEgMDg6NTA6MjQuMDAw
MDAwMDAwICswMTAwCkBAIC05LDYgKzksNyBAQAogLy8gYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVl
IFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIKIC8vIG9mIHRoZSBMaWNlbnNl
LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogCisjaW5jbHVkZSA8Y3N0
cmluZz4KICNpbmNsdWRlICJ3aW5oeXBlcmxpbmtzLmgiCiAjaW5jbHVkZSAicmVzL3Jlc291cmNl
LmgiCiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3RpYS93aW5tYWluLmNw
cAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEv
c3JjL2NlbGVzdGlhL3dpbm1haW4uY3BwCTIwMDgtMDMtMDEgMTE6NTM6MDcuMDAwMDAwMDAwICsw
MTAwCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSA8d2luZG93cy5oPgogI2luY2x1ZGUgPGNv
bW1jdHJsLmg+CiAjaW5jbHVkZSA8bW1zeXN0ZW0uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KIAog
I2luY2x1ZGUgPGNlbG1hdGgvdmVjbWF0aC5oPgogI2luY2x1ZGUgPGNlbG1hdGgvcXVhdGVybmlv
bi5oPgpAQCAtNTksNiArNjAsNyBAQAogI2luY2x1ZGUgIndnbGV4dC5oIgogCiAjaW5jbHVkZSA8
bG9jYWxlLmg+CisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwog
Ci0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsZXN0aWEvd2luc3BsYXNoLmNwcAky
MDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3Jj
L2NlbGVzdGlhL3dpbnNwbGFzaC5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAx
MDAKQEAgLTE1LDYgKzE1LDcgQEAKICNpbmNsdWRlICJjZWx1dGlsL3V0aWwuaCIKICNpbmNsdWRl
IDxpb3N0cmVhbT4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAK
IHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9j
ZWxlc3RpYS93aW5zdGFyYnJvd3Nlci5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAg
KzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWxlc3RpYS93aW5zdGFyYnJvd3Nlci5jcHAJ
MjAwOC0wMy0wMSAxMTo1MzoxMy4wMDAwMDAwMDAgKzAxMDAKQEAgLTE1LDEwICsxNSwxMiBAQAog
I2luY2x1ZGUgPHdpbmRvd3MuaD4KICNpbmNsdWRlIDxjb21tY3RybC5oPgogI2luY2x1ZGUgPGNz
dHJpbmc+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSAid2luc3RhcmJyb3dzZXIuaCIK
ICNpbmNsdWRlICJjZWx1dGlsL3dpbnV0aWwuaCIKIAogI2luY2x1ZGUgInJlcy9yZXNvdXJjZS5o
IgorI2luY2x1ZGUgPGxpYmludGwuaD4KIAogZXh0ZXJuIHZvaWQgU2V0TW91c2VDdXJzb3IoTFBD
VFNUUiBscEN1cnNvcik7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWxlc3Rp
YS93aW50aW1lLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2Vs
ZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL3dpbnRpbWUuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDku
MDAwMDAwMDAwICswMTAwCkBAIC0xOCw2ICsxOCw3IEBACiAjaW5jbHVkZSA8Y2VsZW5naW5lL2Fz
dHJvLmg+CiAjaW5jbHVkZSAiY2VsdXRpbC91dGlsLmgiCiAjaW5jbHVkZSAiY2VsdXRpbC93aW51
dGlsLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBz
dHJlYW0vc3JjL2NlbG1hdGgvcXVhdGVybmlvbi5oCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAw
MDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsbWF0aC9xdWF0ZXJuaW9uLmgJMjAw
OC0wMy0wMSAxMjozMDowNy4wMDAwMDAwMDAgKzAxMDAKQEAgLTE2LDcgKzE2LDYgQEAKICNpbmNs
dWRlIDxjZWxtYXRoL21hdGhsaWIuaD4KICNpbmNsdWRlIDxjZWxtYXRoL3ZlY21hdGguaD4KIAot
CiB0ZW1wbGF0ZTxjbGFzcyBUPiBjbGFzcyBRdWF0ZXJuaW9uCiB7CiBwdWJsaWM6Ci0tLSBjZWxl
c3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsdXRpbC9iaWdmaXguY3BwCTIwMDgtMDMtMDEgMTI6
NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsdXRpbC9iaWdm
aXguY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0xMCw2ICsxMCw3
IEBACiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSAiYmln
Zml4LmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiAKIC8qKiogQ29uc3RydWN0b3JzICoqKi8K
LS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL2NvbG9yLmNwcAkyMDA4LTAz
LTAxIDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbHV0
aWwvY29sb3IuY3BwCTIwMDgtMDMtMDEgMTE6NTM6MTYuMDAwMDAwMDAwICswMTAwCkBAIC05LDYg
KzksNyBAQAogCiAjaW5jbHVkZSA8Y3N0ZGlvPgogI2luY2x1ZGUgPGNzdHJpbmc+CisjaW5jbHVk
ZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8Y2N0eXBlPgogI2luY2x1ZGUgImNvbG9yLmgiCiAKLS0t
IGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL2RpcmVjdG9yeS5jcHAJMjAwOC0w
My0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy9jZWx1
dGlsL2RpcmVjdG9yeS5jcHAJMjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAg
LTksNiArOSw3IEBACiAKICNpbmNsdWRlIDxpb3N0cmVhbT4KICNpbmNsdWRlICJkaXJlY3Rvcnku
aCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0tIGNl
bGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL2ZpbGV0eXBlLmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbHV0aWwv
ZmlsZXR5cGUuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDkuMDAwMDAwMDAwICswMTAwCkBAIC0xMSw2
ICsxMSw3IEBACiAjaW5jbHVkZSA8Y3N0ZGxpYj4KICNpbmNsdWRlICJ1dGlsLmgiCiAjaW5jbHVk
ZSAiZmlsZXR5cGUuaCIKKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBz
dGQ7CiAKLS0tIGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL2Zvcm1hdG51bS5j
cHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4x
L3NyYy9jZWx1dGlsL2Zvcm1hdG51bS5jcHAJMjAwOC0wMy0wMSAwODo1MDoyMy4wMDAwMDAwMDAg
KzAxMDAKQEAgLTEwLDYgKzEwLDggQEAKICNpbmNsdWRlIDxjbWF0aD4KICNpbmNsdWRlIDxjc3Rk
aW8+CiAjaW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUgPGNzdHJpbmc+CisjaW5jbHVkZSA8bGlt
aXRzLmg+CiAjaW5jbHVkZSAiZm9ybWF0bnVtLmgiCiAKIC8vIEhBQ0s6IE1TIFZpc3VhbCBDKysg
aGFzIF9zbnByaW50ZiBkZWNsYXJlZCBpbiBzdGRpby5oIGJ1dCBub3Qgc25wcmludGYKLS0tIGNl
bGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL3V0ZjguY3BwCTIwMDgtMDMtMDEgMTI6
NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9zcmMvY2VsdXRpbC91dGY4
LmNwcAkyMDA4LTAzLTAxIDA4OjUxOjQ5LjAwMDAwMDAwMCArMDEwMApAQCAtOSw3ICs5LDkgQEAK
IAogI2luY2x1ZGUgInV0ZjguaCIKICNpbmNsdWRlIDxjY3R5cGU+CisjaW5jbHVkZSA8Y3N0cmlu
Zz4KICNpbmNsdWRlICJ1dGlsLmgiCisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1bnNpZ25lZCBp
bnQgV0dMNF9Ob3JtYWxpemF0aW9uXzAwWzI1Nl0gPSB7CiAgICAgMHgwMDAwLCAweDAwMDEsIDB4
MDAwMiwgMHgwMDAzLCAweDAwMDQsIDB4MDAwNSwgMHgwMDA2LCAweDAwMDcsCi0tLSBjZWxlc3Rp
YS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsdXRpbC91dGlsLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIw
LjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbHV0aWwvdXRpbC5jcHAJ
MjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTEyLDYgKzEyLDcgQEAKICNp
bmNsdWRlICJ1dGlsLmgiCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3lzL3N0
YXQuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKLS0t
IGNlbGVzdGlhLTEuNS4xLXVwc3RyZWFtL3NyYy9jZWx1dGlsL3V0aWwuaAkyMDA4LTAzLTAxIDEy
OjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbHV0aWwvdXRp
bC5oCTIwMDgtMDMtMDEgMTE6NDk6MzYuMDAwMDAwMDAwICswMTAwCkBAIC0yMiwxMSArMjIsMTEg
QEAKICAgICBzd2l0Y2goMCl7Y2FzZSAwOiBjYXNlIHByZWQ6O30KIAogI2lmbmRlZiBtaW4KLSNk
ZWZpbmUgbWluKGEsIGIpICgoYSkgPCAoYikgPyAoYSkgOiAoYikpCit0ZW1wbGF0ZSA8dHlwZW5h
bWUgVDEsIHR5cGVuYW1lIFQyPiBib29sIG1pbihUMSBhLCBUMiBiKXsgcmV0dXJuIGE8KFQxKWI7
IH0KICNlbmRpZgogCiAjaWZuZGVmIG1heAotI2RlZmluZSBtYXgoYSwgYikgKChhKSA8IChiKSA/
IChiKSA6IChhKSkKK3RlbXBsYXRlIDx0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+IGJvb2wgbWF4
KFQxIGEsIFQyIGIpeyByZXR1cm4gYTwoVDEpYjsgfQogI2VuZGlmCiAJCQkJICAgICAgCiAjaWZk
ZWYgX1dJTjMyCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvY2VsdXRpbC93aW5kaXJl
Y3RvcnkuY3BwCTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3Rp
YS0xLjUuMS9zcmMvY2VsdXRpbC93aW5kaXJlY3RvcnkuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDku
MDAwMDAwMDAwICswMTAwCkBAIC0xMCw2ICsxMCw3IEBACiAjaW5jbHVkZSA8aW9zdHJlYW0+CiAj
aW5jbHVkZSA8d2luZG93cy5oPgogI2luY2x1ZGUgImRpcmVjdG9yeS5oIgorI2luY2x1ZGUgPGxp
YmludGwuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAotLS0gY2VsZXN0aWEtMS41LjEtdXBz
dHJlYW0vc3JjL3BhY2tkYi5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAK
KysrIGNlbGVzdGlhLTEuNS4xL3NyYy9wYWNrZGIuY3BwCTIwMDgtMDMtMDEgMDg6NTE6NDkuMDAw
MDAwMDAwICswMTAwCkBAIC0xMCw2ICsxMCw3IEBACiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5j
bHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+
CiAKICNkZWZpbmUgU1BFQ1RSQUxfTyAwCiAjZGVmaW5lIFNQRUNUUkFMX0IgMQotLS0gY2VsZXN0
aWEtMS41LjEtdXBzdHJlYW0vc3JjL3Rvb2xzL2F0bW9zcGhlcmUvc2NhdHRlcnNpbS5jcHAJMjAw
OC0wMy0wMSAxMjo1MToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy90
b29scy9hdG1vc3BoZXJlL3NjYXR0ZXJzaW0uY3BwCTIwMDgtMDMtMDEgMTE6NTM6MjMuMDAwMDAw
MDAwICswMTAwCkBAIC0xMSw3ICsxMSw5IEBACiAjaW5jbHVkZSA8aW9zdHJlYW0+CiAjaW5jbHVk
ZSA8ZnN0cmVhbT4KICNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5j
bHVkZSA8Y3N0ZGxpYj4KKyNpbmNsdWRlIDxsaWJpbnRsLmg+CiAjaW5jbHVkZSA8Y21hdGg+CiAj
aW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPG1hcD4KLS0tIGNlbGVzdGlhLTEuNS4xLXVw
c3RyZWFtL3NyYy90b29scy9idWlsZHN0YXJkYi5jcHAJMjAwOC0wMy0wMSAxMjo1MToyMC4wMDAw
MDAwMDAgKzAxMDAKKysrIGNlbGVzdGlhLTEuNS4xL3NyYy90b29scy9idWlsZHN0YXJkYi5jcHAJ
MjAwOC0wMy0wMSAwODo1MTo0OS4wMDAwMDAwMDAgKzAxMDAKQEAgLTE2LDYgKzE2LDcgQEAKICNp
bmNsdWRlIDxjc3RkaW8+CiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAjaW5jbHVkZSAic3RhcmRiLmgi
CisjaW5jbHVkZSA8bGliaW50bC5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCi0tLSBjZWxl
c3RpYS0xLjUuMS11cHN0cmVhbS9zcmMvdG9vbHMvY21vZC9jbW9kZml4LmNwcAkyMDA4LTAzLTAx
IDEyOjUxOjIwLjAwMDAwMDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL3Rvb2xzL2Nt
b2QvY21vZGZpeC5jcHAJMjAwOC0wMy0wMSAxMTo1MzoyNy4wMDAwMDAwMDAgKzAxMDAKQEAgLTE4
LDYgKzE4LDcgQEAKICNpbmNsdWRlIDxjYXNzZXJ0PgogI2luY2x1ZGUgPGNtYXRoPgogI2luY2x1
ZGUgPGNzdGRpbz4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxhbGdvcml0aG0+CiAj
aW5jbHVkZSA8dmVjdG9yPgogI2lmZGVmIFRSSVNUUklQCi0tLSBjZWxlc3RpYS0xLjUuMS11cHN0
cmVhbS9zcmMvdG9vbHMvY21vZC94dG9jbW9kLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAw
MDAwMCArMDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL3Rvb2xzL2Ntb2QveHRvY21vZC5jcHAJ
MjAwOC0wMy0wMSAxMTo1MzozMS4wMDAwMDAwMDAgKzAxMDAKQEAgLTMsNiArMyw3IEBACiAjaW5j
bHVkZSA8aW9tYW5pcD4KICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8Y3N0ZGlvPgor
I2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGNhc3NlcnQ+CiAjaW5jbHVkZSA8Y3N0cmlu
Zz4KICNpbmNsdWRlIDxkM2R4OS5oPgotLS0gY2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL3Rv
b2xzL3N0YXJkYi9tYWtlc3RhcmRiLmNwcAkyMDA4LTAzLTAxIDEyOjUxOjIwLjAwMDAwMDAwMCAr
MDEwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL3Rvb2xzL3N0YXJkYi9tYWtlc3RhcmRiLmNwcAky
MDA4LTAzLTAxIDExOjUzOjM0LjAwMDAwMDAwMCArMDEwMApAQCAtMTQsNiArMTQsNyBAQAogI2lu
Y2x1ZGUgPGlvbWFuaXA+CiAjaW5jbHVkZSA8Y2N0eXBlPgogI2luY2x1ZGUgPGNhc3NlcnQ+Cisj
aW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8Y2VsdXRpbC9iYXNpY3R5cGVzLmg+CiAjaW5j
bHVkZSA8Y2VsdXRpbC9ieXRlcy5oPgogI2luY2x1ZGUgPGNlbGVuZ2luZS9hc3Ryby5oPgotLS0g
Y2VsZXN0aWEtMS41LjEtdXBzdHJlYW0vc3JjL3Rvb2xzL3N0YXJkYi9zdGFydGV4dGR1bXAuY3Bw
CTIwMDgtMDMtMDEgMTI6NTE6MjAuMDAwMDAwMDAwICswMTAwCisrKyBjZWxlc3RpYS0xLjUuMS9z
cmMvdG9vbHMvc3RhcmRiL3N0YXJ0ZXh0ZHVtcC5jcHAJMjAwOC0wMy0wMSAxMTo1Mzo0MC4wMDAw
MDAwMDAgKzAxMDAKQEAgLTEzLDYgKzEzLDcgQEAKICNpbmNsdWRlIDxpb3N0cmVhbT4KICNpbmNs
dWRlIDxmc3RyZWFtPgogI2luY2x1ZGUgPGlvbWFuaXA+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAj
aW5jbHVkZSA8Y2VsdXRpbC9iYXNpY3R5cGVzLmg+CiAjaW5jbHVkZSA8Y2VsdXRpbC9ieXRlcy5o
PgogI2luY2x1ZGUgPGNlbGVuZ2luZS9hc3Ryby5oPgotLS0gY2VsZXN0aWEtMS41LjEvc3JjL2Nl
bGVzdGlhL29nZ3RoZW9yYWNhcHR1cmUuY3BwLm9sZAkyMDA4LTA0LTE1IDA3OjUxOjA2LjAwMDAw
MDAwMCArMDIwMAorKysgY2VsZXN0aWEtMS41LjEvc3JjL2NlbGVzdGlhL29nZ3RoZW9yYWNhcHR1
cmUuY3BwCTIwMDgtMDQtMTUgMDc6NTE6MjQuMDAwMDAwMDAwICswMjAwCkBAIC02MCwxMCArNjAs
MTEgQEAKICNlbmRpZgogCiAjaW5jbHVkZSA8Y3N0ZGxpYj4KICNpbmNsdWRlIDxjc3RkaW8+CiAj
aW5jbHVkZSA8Y21hdGg+CisjaW5jbHVkZSA8Y3RpbWU+CiAjaW5jbHVkZSA8Y2VsdXRpbC9kZWJ1
Zy5oPgogI2luY2x1ZGUgPGNlbHV0aWwvdXRpbC5oPgogI2luY2x1ZGUgIi4uL2NlbGVuZ2luZS9n
bC5oIgogI2luY2x1ZGUgPHN0cmluZz4KICNpbmNsdWRlIDxjc3RyaW5nPgo=
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158117</attachid>
            <date>2008-06-23 14:27 0000</date>
            <desc>--without-arts option revert</desc>
            <filename>celestia-1.5.1-noarts.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXJOIGNlbGVzdGlhLTEuNS4xL2FjaW5jbHVkZS5tNCBjZWxlc3RpYS0xLjUuMV9hcnRz
L2FjaW5jbHVkZS5tNAotLS0gY2VsZXN0aWEtMS41LjEvYWNpbmNsdWRlLm00CTIwMDgtMDQtMjQg
MDE6MTg6NDguMDAwMDAwMDAwICswNDAwCisrKyBjZWxlc3RpYS0xLjUuMV9hcnRzL2FjaW5jbHVk
ZS5tNAkyMDA4LTA2LTIzIDE1OjQ2OjQ5LjAwMDAwMDAwMCArMDQwMApAQCAtNTIyLDYgKzUyMiwx
NSBAQAogCiBBQ19ERUZVTihLREVfU1VCU1RfUFJPR1JBTVMsCiBbCisgICAgQUNfQVJHX1dJVEgo
YXJ0cywKKyAgICAgICAgQUNfSEVMUF9TVFJJTkcoWy0td2l0aG91dC1hcnRzXSxbYnVpbGQgd2l0
aG91dCBhUnRzIFtkZWZhdWx0PW5vXV0pLAorICAgICAgICBbYnVpbGRfYXJ0cz0kd2l0aHZhbF0s
CisgICAgICAgIFtidWlsZF9hcnRzPXllc10KKyAgICApCisgICAgQU1fQ09ORElUSU9OQUwoaW5j
bHVkZV9BUlRTLCB0ZXN0ICIkYnVpbGRfYXJ0cyIgJyE9JyAibm8iKQorICAgIGlmIHRlc3QgIiRi
dWlsZF9hcnRzIiA9ICJubyI7IHRoZW4KKyAgICAgICAgQUNfREVGSU5FKFdJVEhPVVRfQVJUUywg
MSwgW0RlZmluZWQgaWYgY29tcGlsaW5nIHdpdGhvdXQgYXJ0c10pCisgICAgZmkKIAogICAgICAg
ICBrZGVfZGVmYXVsdF9iaW5kaXJzPSIvdXNyL2JpbiAvdXNyL2xvY2FsL2JpbiAvb3B0L2xvY2Fs
L2JpbiAvdXNyL1gxMVI2L2JpbiAvb3B0L2tkZS9iaW4gL29wdC9rZGUzL2JpbiAvdXNyL2tkZS9i
aW4gL3Vzci9sb2NhbC9rZGUvYmluIgogICAgICAgICB0ZXN0IC1uICIkS0RFRElSIiAmJiBrZGVf
ZGVmYXVsdF9iaW5kaXJzPSIkS0RFRElSL2JpbiAka2RlX2RlZmF1bHRfYmluZGlycyIKQEAgLTUz
Niw4ICs1NDUsMTAgQEAKICAgICAgICAga2RlX2RlZmF1bHRfYmluZGlycz0iJGV4ZWNfcHJlZml4
L2JpbiAkcHJlZml4L2JpbiAka2RlX2RlZmF1bHRfYmluZGlycyIKICAgICAgICAgS0RFX0ZJTkRf
UEFUSChkY29waWRsLCBEQ09QSURMLCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJ
TkdfUFJPR19FUlJPUihkY29waWRsKV0pCiAgICAgICAgIEtERV9GSU5EX1BBVEgoZGNvcGlkbDJj
cHAsIERDT1BJREwyQ1BQLCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJTkdfUFJP
R19FUlJPUihkY29waWRsMmNwcCldKQotICAgICAgICBLREVfRklORF9QQVRIKG1jb3BpZGwsIE1D
T1BJREwsIFska2RlX2RlZmF1bHRfYmluZGlyc10sIFtLREVfTUlTU0lOR19BUlRTX0VSUk9SKG1j
b3BpZGwpXSkKLSAgICAgICAgS0RFX0ZJTkRfUEFUSChhcnRzYy1jb25maWcsIEFSVFNDQ09ORklH
LCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJTkdfQVJUU19FUlJPUihhcnRzYy1j
b25maWcpXSkKKyAgICAgICAgaWYgdGVzdCAiJGJ1aWxkX2FydHMiICchPScgIm5vIjsgdGhlbgor
ICAgICAgICAgICBLREVfRklORF9QQVRIKG1jb3BpZGwsIE1DT1BJREwsIFska2RlX2RlZmF1bHRf
YmluZGlyc10sIFtLREVfTUlTU0lOR19BUlRTX0VSUk9SKG1jb3BpZGwpXSkKKyAgICAgICAgICAg
S0RFX0ZJTkRfUEFUSChhcnRzYy1jb25maWcsIEFSVFNDQ09ORklHLCBbJGtkZV9kZWZhdWx0X2Jp
bmRpcnNdLCBbS0RFX01JU1NJTkdfQVJUU19FUlJPUihhcnRzYy1jb25maWcpXSkKKyAgICAgICAg
ZmkKICAgICAgICAgS0RFX0ZJTkRfUEFUSChrZGUtY29uZmlnLCBLREVDT05GSUcsIFska2RlX2Rl
ZmF1bHRfYmluZGlyc10pCiAgICAgICAgIEtERV9GSU5EX1BBVEgobWVpbnByb2MsIE1FSU5QUk9D
LCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdKQogICAgICAgCmRpZmYgLXVyIGNlbGVzdGlhLTEuNS4x
L2NvbmZpZy5oLmluIGNlbGVzdGlhLTEuNS4xX2FydHMvY29uZmlnLmguaW4KLS0tIGNlbGVzdGlh
LTEuNS4xL2NvbmZpZy5oLmluCTIwMDgtMDQtMjQgMDE6Mjc6MzUuMDAwMDAwMDAwICswNDAwCisr
KyBjZWxlc3RpYS0xLjUuMV9hcnRzL2NvbmZpZy5oLmluCTIwMDgtMDYtMjMgMTU6NDc6NTguMDAw
MDAwMDAwICswNDAwCkBAIC0xNzMsNiArMTczLDkgQEAKIC8qIFZlcnNpb24gbnVtYmVyIG9mIHBh
Y2thZ2UgKi8KICN1bmRlZiBWRVJTSU9OCiAKKy8qIERlZmluZWQgaWYgY29tcGlsaW5nIHdpdGhv
dXQgYXJ0cyAqLworI3VuZGVmIFdJVEhPVVRfQVJUUworCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3Vy
IHByb2Nlc3NvciBzdG9yZXMgd29yZHMgd2l0aCB0aGUgbW9zdCBzaWduaWZpY2FudCBieXRlCiAg
ICBmaXJzdCAobGlrZSBNb3Rvcm9sYSBhbmQgU1BBUkMsIHVubGlrZSBJbnRlbCBhbmQgVkFYKS4g
Ki8KICN1bmRlZiBXT1JEU19CSUdFTkRJQU4KZGlmZiAtdXJOIGNlbGVzdGlhLTEuNS4xL2NvbmZp
Z3VyZSBjZWxlc3RpYS0xLjUuMV9hcnRzL2NvbmZpZ3VyZQotLS0gY2VsZXN0aWEtMS41LjEvY29u
ZmlndXJlCTIwMDgtMDQtMjQgMDE6Mjc6MzUuMDAwMDAwMDAwICswNDAwCisrKyBjZWxlc3RpYS0x
LjUuMV9hcnRzL2NvbmZpZ3VyZQkyMDA4LTA2LTIzIDE2OjE2OjA2LjAwMDAwMDAwMCArMDQwMApA
QCAtMTY5OCw2ICsxNjk4LDcgQEAKICAgLS13aXRoLXF0LWRpcj1ESVIgICAgICAgd2hlcmUgdGhl
IHJvb3Qgb2YgUXQgaXMgaW5zdGFsbGVkCiAgIC0td2l0aC1xdC1pbmNsdWRlcz1ESVIgIHdoZXJl
IHRoZSBRdCBpbmNsdWRlcyBhcmUuCiAgIC0td2l0aC1xdC1saWJyYXJpZXM9RElSIHdoZXJlIHRo
ZSBRdCBsaWJyYXJ5IGlzIGluc3RhbGxlZC4KKyAgLS13aXRob3V0LWFydHMgICAgICAgICAgYnVp
bGQgd2l0aG91dCBhUnRzIGRlZmF1bHQ9bm8KICAgLS13aXRoLWx1YSAgICAgICAgICAgICAgVXNl
IEx1YSBmb3IgQ2VsZXN0aWEgRXh0ZW5zaW9uIExhbmd1YWdlIHN1cHBvcnQKIAogU29tZSBpbmZs
dWVudGlhbCBlbnZpcm9ubWVudCB2YXJpYWJsZXM6CkBAIC0zMzIxNCw3ICszMzIxNSwyOSBAQAog
CiBiaW5kaXI9JGtkZV9iaW5kaXIKIAorIyBDaGVjayB3aGV0aGVyIC0td2l0aC1hcnRzIHdhcyBn
aXZlbi4KK2lmIHRlc3QgIiR7d2l0aF9hcnRzK3NldH0iID0gc2V0OyB0aGVuCisgIHdpdGh2YWw9
JHdpdGhfYXJ0czsgYnVpbGRfYXJ0cz0kd2l0aHZhbAorZWxzZQorICBidWlsZF9hcnRzPXllcwor
CitmaQorCisgICAgIGlmIHRlc3QgIiRidWlsZF9hcnRzIiAnIT0nICJubyI7IHRoZW4KKyAgaW5j
bHVkZV9BUlRTX1RSVUU9CisgIGluY2x1ZGVfQVJUU19GQUxTRT0nIycKK2Vsc2UKKyAgaW5jbHVk
ZV9BUlRTX1RSVUU9JyMnCisgIGluY2x1ZGVfQVJUU19GQUxTRT0KK2ZpCisKKyAgICBpZiB0ZXN0
ICIkYnVpbGRfYXJ0cyIgPSAibm8iOyB0aGVuCisKK2NhdCA+PmNvbmZkZWZzLmggPDxcX0FDRU9G
CisjZGVmaW5lIFdJVEhPVVRfQVJUUyAxCitfQUNFT0YKIAorICAgIGZpCiAKICAgICAgICAga2Rl
X2RlZmF1bHRfYmluZGlycz0iL3Vzci9iaW4gL3Vzci9sb2NhbC9iaW4gL29wdC9sb2NhbC9iaW4g
L3Vzci9YMTFSNi9iaW4gL29wdC9rZGUvYmluIC9vcHQva2RlMy9iaW4gL3Vzci9rZGUvYmluIC91
c3IvbG9jYWwva2RlL2JpbiIKICAgICAgICAgdGVzdCAtbiAiJEtERURJUiIgJiYga2RlX2RlZmF1
bHRfYmluZGlycz0iJEtERURJUi9iaW4gJGtkZV9kZWZhdWx0X2JpbmRpcnMiCkBAIC0zMzM1OSw3
ICszMzM4Miw3IEBACiAKICAgIGZpCiAKLQorICAgaWYgdGVzdCAiJGJ1aWxkX2FydHMiICchPScg
Im5vIjsgdGhlbgogICAgeyBlY2hvICIkYXNfbWU6JExJTkVOTzogY2hlY2tpbmcgZm9yIG1jb3Bp
ZGwiID4mNQogZWNobyAkRUNIT19OICJjaGVja2luZyBmb3IgbWNvcGlkbC4uLiAkRUNIT19DIiA+
JjY7IH0KICAgIGlmIHRlc3QgLW4gIiRNQ09QSURMIjsgdGhlbgo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158193</attachid>
            <date>2008-06-24 09:05 0000</date>
            <desc>new version</desc>
            <filename>celestia-1.5.1-noarts.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXJOIGNlbGVzdGlhLTEuNS4xL2FjaW5jbHVkZS5tNCBjZWxlc3RpYS0xLjUuMV9hcnRz
L2FjaW5jbHVkZS5tNAotLS0gY2VsZXN0aWEtMS41LjEvYWNpbmNsdWRlLm00CTIwMDgtMDQtMjQg
MDE6MTg6NDguMDAwMDAwMDAwICswNDAwCisrKyBjZWxlc3RpYS0xLjUuMV9hcnRzL2FjaW5jbHVk
ZS5tNAkyMDA4LTA2LTI0IDEyOjQxOjU1LjAwMDAwMDAwMCArMDQwMApAQCAtNTIyLDYgKzUyMiwx
NSBAQAogCiBBQ19ERUZVTihLREVfU1VCU1RfUFJPR1JBTVMsCiBbCisgICAgQUNfQVJHX1dJVEgo
YXJ0cywKKyAgICAgICAgQUNfSEVMUF9TVFJJTkcoWy0td2l0aG91dC1hcnRzXSxbYnVpbGQgd2l0
aG91dCBhUnRzIFtkZWZhdWx0PW5vXV0pLAorICAgICAgICBbYnVpbGRfYXJ0cz0kd2l0aHZhbF0s
CisgICAgICAgIFtidWlsZF9hcnRzPXllc10KKyAgICApCisgICAgQU1fQ09ORElUSU9OQUwoaW5j
bHVkZV9BUlRTLCB0ZXN0ICIkYnVpbGRfYXJ0cyIgJyE9JyAibm8iKQorICAgIGlmIHRlc3QgIiRi
dWlsZF9hcnRzIiA9ICJubyI7IHRoZW4KKyAgICAgICAgQUNfREVGSU5FKFdJVEhPVVRfQVJUUywg
MSwgW0RlZmluZWQgaWYgY29tcGlsaW5nIHdpdGhvdXQgYXJ0c10pCisgICAgZmkKIAogICAgICAg
ICBrZGVfZGVmYXVsdF9iaW5kaXJzPSIvdXNyL2JpbiAvdXNyL2xvY2FsL2JpbiAvb3B0L2xvY2Fs
L2JpbiAvdXNyL1gxMVI2L2JpbiAvb3B0L2tkZS9iaW4gL29wdC9rZGUzL2JpbiAvdXNyL2tkZS9i
aW4gL3Vzci9sb2NhbC9rZGUvYmluIgogICAgICAgICB0ZXN0IC1uICIkS0RFRElSIiAmJiBrZGVf
ZGVmYXVsdF9iaW5kaXJzPSIkS0RFRElSL2JpbiAka2RlX2RlZmF1bHRfYmluZGlycyIKQEAgLTUz
Niw4ICs1NDUsMTAgQEAKICAgICAgICAga2RlX2RlZmF1bHRfYmluZGlycz0iJGV4ZWNfcHJlZml4
L2JpbiAkcHJlZml4L2JpbiAka2RlX2RlZmF1bHRfYmluZGlycyIKICAgICAgICAgS0RFX0ZJTkRf
UEFUSChkY29waWRsLCBEQ09QSURMLCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJ
TkdfUFJPR19FUlJPUihkY29waWRsKV0pCiAgICAgICAgIEtERV9GSU5EX1BBVEgoZGNvcGlkbDJj
cHAsIERDT1BJREwyQ1BQLCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJTkdfUFJP
R19FUlJPUihkY29waWRsMmNwcCldKQotICAgICAgICBLREVfRklORF9QQVRIKG1jb3BpZGwsIE1D
T1BJREwsIFska2RlX2RlZmF1bHRfYmluZGlyc10sIFtLREVfTUlTU0lOR19BUlRTX0VSUk9SKG1j
b3BpZGwpXSkKLSAgICAgICAgS0RFX0ZJTkRfUEFUSChhcnRzYy1jb25maWcsIEFSVFNDQ09ORklH
LCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdLCBbS0RFX01JU1NJTkdfQVJUU19FUlJPUihhcnRzYy1j
b25maWcpXSkKKyAgICAgICAgaWYgdGVzdCAiJGJ1aWxkX2FydHMiICchPScgIm5vIjsgdGhlbgor
ICAgICAgICAgICBLREVfRklORF9QQVRIKG1jb3BpZGwsIE1DT1BJREwsIFska2RlX2RlZmF1bHRf
YmluZGlyc10sIFtLREVfTUlTU0lOR19BUlRTX0VSUk9SKG1jb3BpZGwpXSkKKyAgICAgICAgICAg
S0RFX0ZJTkRfUEFUSChhcnRzYy1jb25maWcsIEFSVFNDQ09ORklHLCBbJGtkZV9kZWZhdWx0X2Jp
bmRpcnNdLCBbS0RFX01JU1NJTkdfQVJUU19FUlJPUihhcnRzYy1jb25maWcpXSkKKyAgICAgICAg
ZmkKICAgICAgICAgS0RFX0ZJTkRfUEFUSChrZGUtY29uZmlnLCBLREVDT05GSUcsIFska2RlX2Rl
ZmF1bHRfYmluZGlyc10pCiAgICAgICAgIEtERV9GSU5EX1BBVEgobWVpbnByb2MsIE1FSU5QUk9D
LCBbJGtkZV9kZWZhdWx0X2JpbmRpcnNdKQogICAgICAgCkBAIC01MzkxLDU0MDMgKzU0MDIsMyBA
QAogICAgICAgXSkKICAgXSkKIF0pCi0KLSMgbGlidG9vbC5tNCAtIENvbmZpZ3VyZSBsaWJ0b29s
IGZvciB0aGUgaG9zdCBzeXN0ZW0uIC0qLUF1dG9jb25mLSotCi0jIyBDb3B5cmlnaHQgMTk5Niwg
MTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMQotIyMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
LCBJbmMuCi0jIyBPcmlnaW5hbGx5IGJ5IEdvcmRvbiBNYXR6aWdrZWl0IDxnb3JkQGdudS5haS5t
aXQuZWR1PiwgMTk5NgotIyMKLSMjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0jIyBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQotIyMgdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5z
ZSwgb3IKLSMjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0jIwotIyMgVGhp
cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsIGJ1dAotIyMgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgotIyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSMjIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KLSMjCi0jIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m
IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQotIyMgYWxvbmcgd2l0aCB0aGlzIHByb2dy
YW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKLSMjIEZvdW5kYXRpb24sIElu
Yy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBV
U0EuCi0jIwotIyMgQXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR05VIEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UsIGlmIHlvdQotIyMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBh
IHByb2dyYW0gdGhhdCBjb250YWlucyBhCi0jIyBjb25maWd1cmF0aW9uIHNjcmlwdCBnZW5lcmF0
ZWQgYnkgQXV0b2NvbmYsIHlvdSBtYXkgaW5jbHVkZSBpdCB1bmRlcgotIyMgdGhlIHNhbWUgZGlz
dHJpYnV0aW9uIHRlcm1zIHRoYXQgeW91IHVzZSBmb3IgdGhlIHJlc3Qgb2YgdGhhdCBwcm9ncmFt
LgotCi0jIHNlcmlhbCA0NyBBQ19QUk9HX0xJQlRPT0wKLQotIyBBQ19QUk9HX0xJQlRPT0wKLSMg
LS0tLS0tLS0tLS0tLS0tCi1BQ19ERUZVTihbQUNfUFJPR19MSUJUT09MXSwKLVtBQ19SRVFVSVJF
KFtfQUNfUFJPR19MSUJUT09MXSlkbmwKLWRubCBJZiBBQ19QUk9HX0NYWCBoYXMgYWxyZWFkeSBi
ZWVuIGV4cGFuZGVkLCBydW4gQUNfTElCVE9PTF9DWFgKLWRubCBpbW1lZGlhdGVseSwgb3RoZXJ3
aXNlLCBob29rIGl0IGluIGF0IHRoZSBlbmQgb2YgQUNfUFJPR19DWFguCi0gIEFDX1BST1ZJREVf
SUZFTFNFKFtBQ19QUk9HX0NYWF0sCi0gICAgW0FDX0xJQlRPT0xfQ1hYXSwKLSAgICBbZGVmaW5l
KFtBQ19QUk9HX0NYWF0sIGRlZm4oW0FDX1BST0dfQ1hYXSlbQUNfTElCVE9PTF9DWFgKLSAgXSld
KQotCi1kbmwgUXVvdGUgQV1bTV9QUk9HX0dDSiBzbyB0aGF0IGFjbG9jYWwgZG9lc24ndCBicmlu
ZyBpdCBpbiBuZWVkbGVzc2x5LgotZG5sIElmIGVpdGhlciBBQ19QUk9HX0dDSiBvciBBXVtNX1BS
T0dfR0NKIGhhdmUgYWxyZWFkeSBiZWVuIGV4cGFuZGVkLCBydW4KLWRubCBBQ19MSUJUT09MX0dD
SiBpbW1lZGlhdGVseSwgb3RoZXJ3aXNlLCBob29rIGl0IGluIGF0IHRoZSBlbmQgb2YgYm90aC4K
LSAgQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfR0NKXSwKLSAgICBbQUNfTElCVE9PTF9HQ0pd
LAotICAgIFtBQ19QUk9WSURFX0lGRUxTRShbQV1bTV9QUk9HX0dDSl0sCi0gICAgICBbQUNfTElC
VE9PTF9HQ0pdLAotICAgICAgW0FDX1BST1ZJREVfSUZFTFNFKFtMVF9BQ19QUk9HX0dDSl0sCi0J
W0FDX0xJQlRPT0xfR0NKXSwKLSAgICAgIFtpZmRlZihbQUNfUFJPR19HQ0pdLAotCSAgICAgW2Rl
ZmluZShbQUNfUFJPR19HQ0pdLCBkZWZuKFtBQ19QUk9HX0dDSl0pW0FDX0xJQlRPT0xfR0NKXSld
KQotICAgICAgIGlmZGVmKFtBXVtNX1BST0dfR0NKXSwKLQkgICAgIFtkZWZpbmUoW0FdW01fUFJP
R19HQ0pdLCBkZWZuKFtBXVtNX1BST0dfR0NKXSlbQUNfTElCVE9PTF9HQ0pdKV0pCi0gICAgICAg
aWZkZWYoW0xUX0FDX1BST0dfR0NKXSwKLQkgICAgIFtkZWZpbmUoW0xUX0FDX1BST0dfR0NKXSwK
LQkJZGVmbihbTFRfQUNfUFJPR19HQ0pdKVtBQ19MSUJUT09MX0dDSl0pXSldKV0pCi1dKV0pIyBB
Q19QUk9HX0xJQlRPT0wKLQotCi0jIF9BQ19QUk9HX0xJQlRPT0wKLSMgLS0tLS0tLS0tLS0tLS0t
LQotQUNfREVGVU4oW19BQ19QUk9HX0xJQlRPT0xdLAotW0FDX1JFUVVJUkUoW0FDX0xJQlRPT0xf
U0VUVVBdKWRubAotQUNfQkVGT1JFKFskMF0sW0FDX0xJQlRPT0xfQ1hYXSlkbmwKLUFDX0JFRk9S
RShbJDBdLFtBQ19MSUJUT09MX0dDSl0pZG5sCi0KLSMgVGhpcyBjYW4gYmUgdXNlZCB0byByZWJ1
aWxkIGxpYnRvb2wgd2hlbiBuZWVkZWQKLUxJQlRPT0xfREVQUz0iJGFjX2F1eF9kaXIvbHRtYWlu
LnNoIgotCi0jIEFsd2F5cyB1c2Ugb3VyIG93biBsaWJ0b29sLgotTElCVE9PTD0nJChTSEVMTCkg
JCh0b3BfYnVpbGRkaXIpL2xpYnRvb2wgLS1zaWxlbnQnCi1BQ19TVUJTVChMSUJUT09MKWRubAot
Ci0jIFByZXZlbnQgbXVsdGlwbGUgZXhwYW5zaW9uCi1kZWZpbmUoW0FDX1BST0dfTElCVE9PTF0s
IFtdKQotXSkjIF9BQ19QUk9HX0xJQlRPT0wKLQotCi0jIEFDX0xJQlRPT0xfU0VUVVAKLSMgLS0t
LS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW0FDX0xJQlRPT0xfU0VUVVBdLAotW0FDX1BSRVJFUSgy
LjUwKWRubAotQUNfUkVRVUlSRShbQUNfRU5BQkxFX1NIQVJFRF0pZG5sCi1BQ19SRVFVSVJFKFtB
Q19FTkFCTEVfU1RBVElDXSlkbmwKLUFDX1JFUVVJUkUoW0FDX0VOQUJMRV9GQVNUX0lOU1RBTExd
KWRubAotQUNfUkVRVUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKWRubAotQUNfUkVRVUlSRShbQUNf
Q0FOT05JQ0FMX0JVSUxEXSlkbmwKLUFDX1JFUVVJUkUoW0FDX1BST0dfQ0NdKWRubAotQUNfUkVR
VUlSRShbQUNfUFJPR19MRF0pZG5sCi1BQ19SRVFVSVJFKFtBQ19QUk9HX0xEX1JFTE9BRF9GTEFH
XSlkbmwKLUFDX1JFUVVJUkUoW0FDX1BST0dfTk1dKWRubAotQUNfUkVRVUlSRShbTFRfQUNfUFJP
R19TRURdKWRubAotCi1BQ19SRVFVSVJFKFtBQ19QUk9HX0xOX1NdKWRubAotQUNfUkVRVUlSRShb
QUNfREVQTElCU19DSEVDS19NRVRIT0RdKWRubAotIyBBdXRvY29uZiAyLjEzJ3MgQUNfT0JKRVhU
IGFuZCBBQ19FWEVFWFQgbWFjcm9zIG9ubHkgd29ya3MgZm9yIEMgY29tcGlsZXJzIQotQUNfUkVR
VUlSRShbQUNfT0JKRVhUXSlkbmwKLUFDX1JFUVVJUkUoW0FDX0VYRUVYVF0pZG5sCi1kbmwKLQot
QUNfTElCVE9PTF9TWVNfTUFYX0NNRF9MRU4KLUFDX0xJQlRPT0xfU1lTX0dMT0JBTF9TWU1CT0xf
UElQRQotQUNfTElCVE9PTF9PQkpESVIKLQotQUNfUkVRVUlSRShbX0xUX0FDX1NZU19DT01QSUxF
Ul0pZG5sCi1fTFRfQUNfUFJPR19FQ0hPX0JBQ0tTTEFTSAotCi1jYXNlICRob3N0X29zIGluCi1h
aXgzKikKLSAgIyBBSVggc29tZXRpbWVzIGhhcyBwcm9ibGVtcyB3aXRoIHRoZSBHQ0MgY29sbGVj
dDIgcHJvZ3JhbS4gIEZvciBzb21lCi0gICMgcmVhc29uLCBpZiB3ZSBzZXQgdGhlIENPTExFQ1Rf
TkFNRVMgZW52aXJvbm1lbnQgdmFyaWFibGUsIHRoZSBwcm9ibGVtcwotICAjIHZhbmlzaCBpbiBh
IHB1ZmYgb2Ygc21va2UuCi0gIGlmIHRlc3QgIlgke0NPTExFQ1RfTkFNRVMrc2V0fSIgIT0gWHNl
dDsgdGhlbgotICAgIENPTExFQ1RfTkFNRVM9Ci0gICAgZXhwb3J0IENPTExFQ1RfTkFNRVMKLSAg
ZmkKLSAgOzsKLWVzYWMKLQotIyBTZWQgc3Vic3RpdHV0aW9uIHRoYXQgaGVscHMgdXMgZG8gcm9i
dXN0IHF1b3RpbmcuICBJdCBiYWNrc2xhc2hpZmllcwotIyBtZXRhY2hhcmFjdGVycyB0aGF0IGFy
ZSBzdGlsbCBhY3RpdmUgd2l0aGluIGRvdWJsZS1xdW90ZWQgc3RyaW5ncy4KLVhzZWQ9J3NlZCAt
ZSBzL15YLy8nCi1bc2VkX3F1b3RlX3N1YnN0PSdzL1woW1xcIlxcYCRcXFxcXVwpL1xcXDEvZydd
Ci0KLSMgU2FtZSBhcyBhYm92ZSwgYnV0IGRvIG5vdCBxdW90ZSB2YXJpYWJsZSByZWZlcmVuY2Vz
LgotW2RvdWJsZV9xdW90ZV9zdWJzdD0ncy9cKFtcXCJcXGBcXFxcXVwpL1xcXDEvZyddCi0KLSMg
U2VkIHN1YnN0aXR1dGlvbiB0byBkZWxheSBleHBhbnNpb24gb2YgYW4gZXNjYXBlZCBzaGVsbCB2
YXJpYWJsZSBpbiBhCi0jIGRvdWJsZV9xdW90ZV9zdWJzdCdlZCBzdHJpbmcuCi1kZWxheV92YXJp
YWJsZV9zdWJzdD0ncy9cXFxcXFxcXFxcXCQvXFxcXFxcJC9nJwotCi0jIFNlZCBzdWJzdGl0dXRp
b24gdG8gYXZvaWQgYWNjaWRlbnRhbCBnbG9iYmluZyBpbiBldmFsZWQgZXhwcmVzc2lvbnMKLW5v
X2dsb2Jfc3Vic3Q9J3MvXCovXFxcKi9nJwotCi0jIENvbnN0YW50czoKLXJtPSJybSAtZiIKLQot
IyBHbG9iYWwgdmFyaWFibGVzOgotZGVmYXVsdF9vZmlsZT1saWJ0b29sCi1jYW5fYnVpbGRfc2hh
cmVkPXllcwotCi0jIEFsbCBrbm93biBsaW5rZXJzIHJlcXVpcmUgYSBgLmEnIGFyY2hpdmUgZm9y
IHN0YXRpYyBsaW5raW5nIChleGNlcHQgTSRWQywKLSMgd2hpY2ggbmVlZHMgJy5saWInKS4KLWxp
YmV4dD1hCi1sdG1haW49IiRhY19hdXhfZGlyL2x0bWFpbi5zaCIKLW9maWxlPSIkZGVmYXVsdF9v
ZmlsZSIKLXdpdGhfZ251X2xkPSIkbHRfY3ZfcHJvZ19nbnVfbGQiCi0KLUFDX0NIRUNLX1RPT0wo
UkFOTElCLCByYW5saWIsIDopCi1BQ19DSEVDS19UT09MKFNUUklQLCBzdHJpcCwgOikKLQotb2xk
X0NDPSIkQ0MiCi1vbGRfQ0ZMQUdTPSIkQ0ZMQUdTIgotCi0jIFNldCBzYW5lIGRlZmF1bHRzIGZv
ciB2YXJpb3VzIHZhcmlhYmxlcwotdGVzdCAteiAiJEFSIiAmJiBBUj1hcgotdGVzdCAteiAiJEFS
X0ZMQUdTIiAmJiBBUl9GTEFHUz1jcnUKLXRlc3QgLXogIiRBUyIgJiYgQVM9YXMKLXRlc3QgLXog
IiRDQyIgJiYgQ0M9Y2MKLXRlc3QgLXogIiRMVENDIiAmJiBMVENDPSRDQwotdGVzdCAteiAiJERM
TFRPT0wiICYmIERMTFRPT0w9ZGxsdG9vbAotdGVzdCAteiAiJExEIiAmJiBMRD1sZAotdGVzdCAt
eiAiJExOX1MiICYmIExOX1M9ImxuIC1zIgotdGVzdCAteiAiJE1BR0lDX0NNRCIgJiYgTUFHSUNf
Q01EPWZpbGUKLXRlc3QgLXogIiROTSIgJiYgTk09bm0KLXRlc3QgLXogIiRTRUQiICYmIFNFRD1z
ZWQKLXRlc3QgLXogIiRPQkpEVU1QIiAmJiBPQkpEVU1QPW9iamR1bXAKLXRlc3QgLXogIiRSQU5M
SUIiICYmIFJBTkxJQj06Ci10ZXN0IC16ICIkU1RSSVAiICYmIFNUUklQPToKLXRlc3QgLXogIiRh
Y19vYmpleHQiICYmIGFjX29iamV4dD1vCi0KLSMgRGV0ZXJtaW5lIGNvbW1hbmRzIHRvIGNyZWF0
ZSBvbGQtc3R5bGUgc3RhdGljIGFyY2hpdmVzLgotb2xkX2FyY2hpdmVfY21kcz0nJEFSICRBUl9G
TEFHUyAkb2xkbGliJG9sZG9ianMkb2xkX2RlcGxpYnMnCi1vbGRfcG9zdGluc3RhbGxfY21kcz0n
Y2htb2QgNjQ0ICRvbGRsaWInCi1vbGRfcG9zdHVuaW5zdGFsbF9jbWRzPQotCi1pZiB0ZXN0IC1u
ICIkUkFOTElCIjsgdGhlbgotICBjYXNlICRob3N0X29zIGluCi0gIG9wZW5ic2QqKQotICAgIG9s
ZF9wb3N0aW5zdGFsbF9jbWRzPSJcJFJBTkxJQiAtdCBcJG9sZGxpYn4kb2xkX3Bvc3RpbnN0YWxs
X2NtZHMiCi0gICAgOzsKLSAgKikKLSAgICBvbGRfcG9zdGluc3RhbGxfY21kcz0iXCRSQU5MSUIg
XCRvbGRsaWJ+JG9sZF9wb3N0aW5zdGFsbF9jbWRzIgotICAgIDs7Ci0gIGVzYWMKLSAgb2xkX2Fy
Y2hpdmVfY21kcz0iJG9sZF9hcmNoaXZlX2NtZHN+XCRSQU5MSUIgXCRvbGRsaWIiCi1maQotCi0j
IE9ubHkgcGVyZm9ybSB0aGUgY2hlY2sgZm9yIGZpbGUsIGlmIHRoZSBjaGVjayBtZXRob2QgcmVx
dWlyZXMgaXQKLWNhc2UgJGRlcGxpYnNfY2hlY2tfbWV0aG9kIGluCi1maWxlX21hZ2ljKikKLSAg
aWYgdGVzdCAiJGZpbGVfbWFnaWNfY21kIiA9ICckTUFHSUNfQ01EJzsgdGhlbgotICAgIEFDX1BB
VEhfTUFHSUMKLSAgZmkKLSAgOzsKLWVzYWMKLQotaWZkZWYoW0FDX1BST1ZJREVfQUNfTElCVE9P
TF9ETE9QRU5dLCBlbmFibGVfZGxvcGVuPXllcywgZW5hYmxlX2Rsb3Blbj1ubykKLWlmZGVmKFtB
Q19QUk9WSURFX0FDX0xJQlRPT0xfV0lOMzJfRExMXSwKLWVuYWJsZV93aW4zMl9kbGw9eWVzLCBl
bmFibGVfd2luMzJfZGxsPW5vKQotCi1BQ19BUkdfRU5BQkxFKFtsaWJ0b29sLWxvY2tdLAotICAg
IFtBQ19IRUxQX1NUUklORyhbLS1kaXNhYmxlLWxpYnRvb2wtbG9ja10sCi0JW2F2b2lkIGxvY2tp
bmcgKG1pZ2h0IGJyZWFrIHBhcmFsbGVsIGJ1aWxkcyldKV0pCi10ZXN0ICJ4JGVuYWJsZV9saWJ0
b29sX2xvY2siICE9IHhubyAmJiBlbmFibGVfbGlidG9vbF9sb2NrPXllcwotCi1BQ19BUkdfV0lU
SChbcGljXSwKLSAgICBbQUNfSEVMUF9TVFJJTkcoWy0td2l0aC1waWNdLAotCVt0cnkgdG8gdXNl
IG9ubHkgUElDL25vbi1QSUMgb2JqZWN0cyBAPDpAZGVmYXVsdD11c2UgYm90aEA6PkBdKV0sCi0g
ICAgW3BpY19tb2RlPSIkd2l0aHZhbCJdLAotICAgIFtwaWNfbW9kZT1kZWZhdWx0XSkKLXRlc3Qg
LXogIiRwaWNfbW9kZSIgJiYgcGljX21vZGU9ZGVmYXVsdAotCi0jIFVzZSBDIGZvciB0aGUgZGVm
YXVsdCBjb25maWd1cmF0aW9uIGluIHRoZSBsaWJ0b29sIHNjcmlwdAotdGFnbmFtZT0KLUFDX0xJ
QlRPT0xfTEFOR19DX0NPTkZJRwotX0xUX0FDX1RBR0NPTkZJRwotXSkjIEFDX0xJQlRPT0xfU0VU
VVAKLQotCi0jIF9MVF9BQ19TWVNfQ09NUElMRVIKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLQotQUNf
REVGVU4oW19MVF9BQ19TWVNfQ09NUElMRVJdLAotW0FDX1JFUVVJUkUoW0FDX1BST0dfQ0NdKWRu
bAotCi0jIElmIG5vIEMgY29tcGlsZXIgd2FzIHNwZWNpZmllZCwgdXNlIENDLgotTFRDQz0ke0xU
Q0MtIiRDQyJ9Ci0KLSMgQWxsb3cgQ0MgdG8gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmd1bWVu
dHMuCi1zZXQgZHVtbXkgJENDCi1jb21waWxlcj0iWyRdMiIKLV0pIyBfTFRfQUNfU1lTX0NPTVBJ
TEVSCi0KLQotIyBfTFRfQUNfU1lTX0xJQlBBVEhfQUlYCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KLSMgTGlua3MgYSBtaW5pbWFsIHByb2dyYW0gYW5kIGNoZWNrcyB0aGUgZXhlY3V0YWJsZQot
IyBmb3IgdGhlIHN5c3RlbSBkZWZhdWx0IGhhcmRjb2RlZCBsaWJyYXJ5IHBhdGguIEluIG1vc3Qg
Y2FzZXMsCi0jIHRoaXMgaXMgL3Vzci9saWI6L2xpYiwgYnV0IHdoZW4gdGhlIE1QSSBjb21waWxl
cnMgYXJlIHVzZWQKLSMgdGhlIGxvY2F0aW9uIG9mIHRoZSBjb21tdW5pY2F0aW9uIGFuZCBNUEkg
bGlicyBhcmUgaW5jbHVkZWQgdG9vLgotIyBJZiB3ZSBkb24ndCBmaW5kIGFueXRoaW5nLCB1c2Ug
dGhlIGRlZmF1bHQgbGlicmFyeSBwYXRoIGFjY29yZGluZwotIyB0byB0aGUgYWl4IGxkIG1hbnVh
bC4KLUFDX0RFRlVOKFtfTFRfQUNfU1lTX0xJQlBBVEhfQUlYXSwKLVtBQ19MSU5LX0lGRUxTRShB
Q19MQU5HX1BST0dSQU0sWwotYWl4X2xpYnBhdGg9YGR1bXAgLUggY29uZnRlc3QkYWNfZXhlZXh0
IDI+L2Rldi9udWxsIHwgc2VkIC1uIC1lICcvSW1wb3J0IEZpbGUgU3RyaW5ncy8sL14kLyB7IC9e
MC8geyBzL14wICAqXCguKlwpJC9cMS87IHA7IH0KLX0nYAotIyBDaGVjayBmb3IgYSA2NC1iaXQg
b2JqZWN0IGlmIHdlIGRpZG4ndCBmaW5kIGFueXRoaW5nLgotaWYgdGVzdCAteiAiJGFpeF9saWJw
YXRoIjsgdGhlbiBhaXhfbGlicGF0aD1gZHVtcCAtSFg2NCBjb25mdGVzdCRhY19leGVleHQgMj4v
ZGV2L251bGwgfCBzZWQgLW4gLWUgJy9JbXBvcnQgRmlsZSBTdHJpbmdzLywvXiQvIHsgL14wLyB7
IHMvXjAgICpcKC4qXCkkL1wxLzsgcDsgfQotfSdgOyBmaV0sW10pCi1pZiB0ZXN0IC16ICIkYWl4
X2xpYnBhdGgiOyB0aGVuIGFpeF9saWJwYXRoPSIvdXNyL2xpYjovbGliIjsgZmkKLV0pIyBfTFRf
QUNfU1lTX0xJQlBBVEhfQUlYCi0KLQotIyBfTFRfQUNfUFJPR19FQ0hPX0JBQ0tTTEFTSAotIyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBBZGQgc29tZSBjb2RlIHRvIHRoZSBzdGFydCBv
ZiB0aGUgZ2VuZXJhdGVkIGNvbmZpZ3VyZSBzY3JpcHQgd2hpY2gKLSMgd2lsbCBmaW5kIGFuIGVj
aG8gY29tbWFuZCB3aGljaCBkb2Vzbid0IGludGVycHJldCBiYWNrc2xhc2hlcy4KLUFDX0RFRlVO
KFtfTFRfQUNfUFJPR19FQ0hPX0JBQ0tTTEFTSF0sCi1baWZkZWYoW0FDX0RJVkVSU0lPTl9OT1RJ
Q0VdLAotCSAgICAgW0FDX0RJVkVSVF9QVVNIKEFDX0RJVkVSU0lPTl9OT1RJQ0UpXSwKLQkgW0FD
X0RJVkVSVF9QVVNIKE5PVElDRSldKQotCi0jIENoZWNrIHRoYXQgd2UgYXJlIHJ1bm5pbmcgdW5k
ZXIgdGhlIGNvcnJlY3Qgc2hlbGwuCi1TSEVMTD0ke0NPTkZJR19TSEVMTC0vYmluL3NofQotCi1j
YXNlIFgkRUNITyBpbgotWCotLWZhbGxiYWNrLWVjaG8pCi0gICMgUmVtb3ZlIG9uZSBsZXZlbCBv
ZiBxdW90YXRpb24gKHdoaWNoIHdhcyByZXF1aXJlZCBmb3IgTWFrZSkuCi0gIEVDSE89YGVjaG8g
IiRFQ0hPIiB8IHNlZCAncyxcXFxcXFskXVxcWyRdMCwnWyRdMCcsJ2AKLSAgOzsKLWVzYWMKLQot
ZWNobz0ke0VDSE8tZWNob30KLWlmIHRlc3QgIlhbJF0xIiA9IFgtLW5vLXJlZXhlYzsgdGhlbgot
ICAjIERpc2NhcmQgdGhlIC0tbm8tcmVleGVjIGZsYWcsIGFuZCBjb250aW51ZS4KLSAgc2hpZnQK
LWVsaWYgdGVzdCAiWFskXTEiID0gWC0tZmFsbGJhY2stZWNobzsgdGhlbgotICAjIEF2b2lkIGlu
bGluZSBkb2N1bWVudCBoZXJlLCBpdCBtYXkgYmUgbGVmdCBvdmVyCi0gIDoKLWVsaWYgdGVzdCAi
WGAoJGVjaG8gJ1x0JykgMj4vZGV2L251bGxgIiA9ICdYXHQnOyB0aGVuCi0gICMgWWlwcGVlLCAk
ZWNobyB3b3JrcyEKLSAgOgotZWxzZQotICAjIFJlc3RhcnQgdW5kZXIgdGhlIGNvcnJlY3Qgc2hl
bGwuCi0gIGV4ZWMgJFNIRUxMICJbJF0wIiAtLW5vLXJlZXhlYyAkezErIlskXUAifQotZmkKLQot
aWYgdGVzdCAiWFskXTEiID0gWC0tZmFsbGJhY2stZWNobzsgdGhlbgotICAjIHVzZWQgYXMgZmFs
bGJhY2sgZWNobwotICBzaGlmdAotICBjYXQgPDxFT0YKLVskXSoKLUVPRgotICBleGl0IDAKLWZp
Ci0KLSMgVGhlIEhQLVVYIGtzaCBhbmQgUE9TSVggc2hlbGwgcHJpbnQgdGhlIHRhcmdldCBkaXJl
Y3RvcnkgdG8gc3Rkb3V0Ci0jIGlmIENEUEFUSCBpcyBzZXQuCi1pZiB0ZXN0ICJYJHtDRFBBVEgr
c2V0fSIgPSBYc2V0OyB0aGVuIENEUEFUSD06OyBleHBvcnQgQ0RQQVRIOyBmaQotCi1pZiB0ZXN0
IC16ICIkRUNITyI7IHRoZW4KLWlmIHRlc3QgIlgke2VjaG9fdGVzdF9zdHJpbmcrc2V0fSIgIT0g
WHNldDsgdGhlbgotIyBmaW5kIGEgc3RyaW5nIGFzIGxhcmdlIGFzIHBvc3NpYmxlLCBhcyBsb25n
IGFzIHRoZSBzaGVsbCBjYW4gY29wZSB3aXRoIGl0Ci0gIGZvciBjbWQgaW4gJ3NlZCA1MHEgIlsk
XTAiJyAnc2VkIDIwcSAiWyRdMCInICdzZWQgMTBxICJbJF0wIicgJ3NlZCAycSAiWyRdMCInICdl
Y2hvIHRlc3QnOyBkbwotICAgICMgZXhwZWN0ZWQgc2l6ZXM6IGxlc3MgdGhhbiAyS2IsIDFLYiwg
NTEyIGJ5dGVzLCAxNiBieXRlcywgLi4uCi0gICAgaWYgKGVjaG9fdGVzdF9zdHJpbmc9ImBldmFs
ICRjbWRgIikgMj4vZGV2L251bGwgJiYKLSAgICAgICBlY2hvX3Rlc3Rfc3RyaW5nPSJgZXZhbCAk
Y21kYCIgJiYKLSAgICAgICAodGVzdCAiWCRlY2hvX3Rlc3Rfc3RyaW5nIiA9ICJYJGVjaG9fdGVz
dF9zdHJpbmciKSAyPi9kZXYvbnVsbAotICAgIHRoZW4KLSAgICAgIGJyZWFrCi0gICAgZmkKLSAg
ZG9uZQotZmkKLQotaWYgdGVzdCAiWGAoJGVjaG8gJ1x0JykgMj4vZGV2L251bGxgIiA9ICdYXHQn
ICYmCi0gICBlY2hvX3Rlc3Rpbmdfc3RyaW5nPWAoJGVjaG8gIiRlY2hvX3Rlc3Rfc3RyaW5nIikg
Mj4vZGV2L251bGxgICYmCi0gICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNo
b190ZXN0X3N0cmluZyI7IHRoZW4KLSAgOgotZWxzZQotICAjIFRoZSBTb2xhcmlzLCBBSVgsIGFu
ZCBEaWdpdGFsIFVuaXggZGVmYXVsdCBlY2hvIHByb2dyYW1zIHVucXVvdGUKLSAgIyBiYWNrc2xh
c2hlcy4gIFRoaXMgbWFrZXMgaXQgaW1wb3NzaWJsZSB0byBxdW90ZSBiYWNrc2xhc2hlcyB1c2lu
ZwotICAjICAgZWNobyAiJHNvbWV0aGluZyIgfCBzZWQgJ3MvXFwvXFxcXC9nJwotICAjCi0gICMg
U28sIGZpcnN0IHdlIGxvb2sgZm9yIGEgd29ya2luZyBlY2hvIGluIHRoZSB1c2VyJ3MgUEFUSC4K
LQotICBsdF9zYXZlX2lmcz0iJElGUyI7IElGUz0kUEFUSF9TRVBBUkFUT1IKLSAgZm9yIGRpciBp
biAkUEFUSCAvdXNyL3VjYjsgZG8KLSAgICBJRlM9IiRsdF9zYXZlX2lmcyIKLSAgICBpZiAodGVz
dCAtZiAkZGlyL2VjaG8gfHwgdGVzdCAtZiAkZGlyL2VjaG8kYWNfZXhlZXh0KSAmJgotICAgICAg
IHRlc3QgIlhgKCRkaXIvZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCcgJiYKLSAgICAg
ICBlY2hvX3Rlc3Rpbmdfc3RyaW5nPWAoJGRpci9lY2hvICIkZWNob190ZXN0X3N0cmluZyIpIDI+
L2Rldi9udWxsYCAmJgotICAgICAgIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRl
Y2hvX3Rlc3Rfc3RyaW5nIjsgdGhlbgotICAgICAgZWNobz0iJGRpci9lY2hvIgotICAgICAgYnJl
YWsKLSAgICBmaQotICBkb25lCi0gIElGUz0iJGx0X3NhdmVfaWZzIgotCi0gIGlmIHRlc3QgIlgk
ZWNobyIgPSBYZWNobzsgdGhlbgotICAgICMgV2UgZGlkbid0IGZpbmQgYSBiZXR0ZXIgZWNobywg
c28gbG9vayBmb3IgYWx0ZXJuYXRpdmVzLgotICAgIGlmIHRlc3QgIlhgKHByaW50IC1yICdcdCcp
IDI+L2Rldi9udWxsYCIgPSAnWFx0JyAmJgotICAgICAgIGVjaG9fdGVzdGluZ19zdHJpbmc9YChw
cmludCAtciAiJGVjaG9fdGVzdF9zdHJpbmciKSAyPi9kZXYvbnVsbGAgJiYKLSAgICAgICB0ZXN0
ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0cmluZyI7IHRoZW4KLSAg
ICAgICMgVGhpcyBzaGVsbCBoYXMgYSBidWlsdGluIHByaW50IC1yIHRoYXQgZG9lcyB0aGUgdHJp
Y2suCi0gICAgICBlY2hvPSdwcmludCAtcicKLSAgICBlbGlmICh0ZXN0IC1mIC9iaW4va3NoIHx8
IHRlc3QgLWYgL2Jpbi9rc2gkYWNfZXhlZXh0KSAmJgotCSB0ZXN0ICJYJENPTkZJR19TSEVMTCIg
IT0gWC9iaW4va3NoOyB0aGVuCi0gICAgICAjIElmIHdlIGhhdmUga3NoLCB0cnkgcnVubmluZyBj
b25maWd1cmUgYWdhaW4gd2l0aCBpdC4KLSAgICAgIE9SSUdJTkFMX0NPTkZJR19TSEVMTD0ke0NP
TkZJR19TSEVMTC0vYmluL3NofQotICAgICAgZXhwb3J0IE9SSUdJTkFMX0NPTkZJR19TSEVMTAot
ICAgICAgQ09ORklHX1NIRUxMPS9iaW4va3NoCi0gICAgICBleHBvcnQgQ09ORklHX1NIRUxMCi0g
ICAgICBleGVjICRDT05GSUdfU0hFTEwgIlskXTAiIC0tbm8tcmVleGVjICR7MSsiWyRdQCJ9Ci0g
ICAgZWxzZQotICAgICAgIyBUcnkgdXNpbmcgcHJpbnRmLgotICAgICAgZWNobz0ncHJpbnRmICVz
XG4nCi0gICAgICBpZiB0ZXN0ICJYYCgkZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCcg
JiYKLQkgZWNob190ZXN0aW5nX3N0cmluZz1gKCRlY2hvICIkZWNob190ZXN0X3N0cmluZyIpIDI+
L2Rldi9udWxsYCAmJgotCSB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190
ZXN0X3N0cmluZyI7IHRoZW4KLQkjIENvb2wsIHByaW50ZiB3b3JrcwotCToKLSAgICAgIGVsaWYg
ZWNob190ZXN0aW5nX3N0cmluZz1gKCRPUklHSU5BTF9DT05GSUdfU0hFTEwgIlskXTAiIC0tZmFs
bGJhY2stZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAgJiYKLQkgICB0ZXN0ICJYJGVjaG9fdGVzdGlu
Z19zdHJpbmciID0gJ1hcdCcgJiYKLQkgICBlY2hvX3Rlc3Rpbmdfc3RyaW5nPWAoJE9SSUdJTkFM
X0NPTkZJR19TSEVMTCAiWyRdMCIgLS1mYWxsYmFjay1lY2hvICIkZWNob190ZXN0X3N0cmluZyIp
IDI+L2Rldi9udWxsYCAmJgotCSAgIHRlc3QgIlgkZWNob190ZXN0aW5nX3N0cmluZyIgPSAiWCRl
Y2hvX3Rlc3Rfc3RyaW5nIjsgdGhlbgotCUNPTkZJR19TSEVMTD0kT1JJR0lOQUxfQ09ORklHX1NI
RUxMCi0JZXhwb3J0IENPTkZJR19TSEVMTAotCVNIRUxMPSIkQ09ORklHX1NIRUxMIgotCWV4cG9y
dCBTSEVMTAotCWVjaG89IiRDT05GSUdfU0hFTEwgWyRdMCAtLWZhbGxiYWNrLWVjaG8iCi0gICAg
ICBlbGlmIGVjaG9fdGVzdGluZ19zdHJpbmc9YCgkQ09ORklHX1NIRUxMICJbJF0wIiAtLWZhbGxi
YWNrLWVjaG8gJ1x0JykgMj4vZGV2L251bGxgICYmCi0JICAgdGVzdCAiWCRlY2hvX3Rlc3Rpbmdf
c3RyaW5nIiA9ICdYXHQnICYmCi0JICAgZWNob190ZXN0aW5nX3N0cmluZz1gKCRDT05GSUdfU0hF
TEwgIlskXTAiIC0tZmFsbGJhY2stZWNobyAiJGVjaG9fdGVzdF9zdHJpbmciKSAyPi9kZXYvbnVs
bGAgJiYKLQkgICB0ZXN0ICJYJGVjaG9fdGVzdGluZ19zdHJpbmciID0gIlgkZWNob190ZXN0X3N0
cmluZyI7IHRoZW4KLQllY2hvPSIkQ09ORklHX1NIRUxMIFskXTAgLS1mYWxsYmFjay1lY2hvIgot
ICAgICAgZWxzZQotCSMgbWF5YmUgd2l0aCBhIHNtYWxsZXIgc3RyaW5nLi4uCi0JcHJldj06Ci0K
LQlmb3IgY21kIGluICdlY2hvIHRlc3QnICdzZWQgMnEgIlskXTAiJyAnc2VkIDEwcSAiWyRdMCIn
ICdzZWQgMjBxICJbJF0wIicgJ3NlZCA1MHEgIlskXTAiJzsgZG8KLQkgIGlmICh0ZXN0ICJYJGVj
aG9fdGVzdF9zdHJpbmciID0gIlhgZXZhbCAkY21kYCIpIDI+L2Rldi9udWxsCi0JICB0aGVuCi0J
ICAgIGJyZWFrCi0JICBmaQotCSAgcHJldj0iJGNtZCIKLQlkb25lCi0KLQlpZiB0ZXN0ICIkcHJl
diIgIT0gJ3NlZCA1MHEgIlskXTAiJzsgdGhlbgotCSAgZWNob190ZXN0X3N0cmluZz1gZXZhbCAk
cHJldmAKLQkgIGV4cG9ydCBlY2hvX3Rlc3Rfc3RyaW5nCi0JICBleGVjICR7T1JJR0lOQUxfQ09O
RklHX1NIRUxMLSR7Q09ORklHX1NIRUxMLS9iaW4vc2h9fSAiWyRdMCIgJHsxKyJbJF1AIn0KLQll
bHNlCi0JICAjIE9vcHMuICBXZSBsb3N0IGNvbXBsZXRlbHksIHNvIGp1c3Qgc3RpY2sgd2l0aCBl
Y2hvLgotCSAgZWNobz1lY2hvCi0JZmkKLSAgICAgIGZpCi0gICAgZmkKLSAgZmkKLWZpCi1maQot
Ci0jIENvcHkgZWNobyBhbmQgcXVvdGUgdGhlIGNvcHkgc3VpdGFibHkgZm9yIHBhc3NpbmcgdG8g
bGlidG9vbCBmcm9tCi0jIHRoZSBNYWtlZmlsZSwgaW5zdGVhZCBvZiBxdW90aW5nIHRoZSBvcmln
aW5hbCwgd2hpY2ggaXMgdXNlZCBsYXRlci4KLUVDSE89JGVjaG8KLWlmIHRlc3QgIlgkRUNITyIg
PSAiWCRDT05GSUdfU0hFTEwgWyRdMCAtLWZhbGxiYWNrLWVjaG8iOyB0aGVuCi0gICBFQ0hPPSIk
Q09ORklHX1NIRUxMIFxcXCRcWyRdMCAtLWZhbGxiYWNrLWVjaG8iCi1maQotCi1BQ19TVUJTVChF
Q0hPKQotQUNfRElWRVJUX1BPUAotXSkjIF9MVF9BQ19QUk9HX0VDSE9fQkFDS1NMQVNICi0KLQot
IyBfTFRfQUNfTE9DSwotIyAtLS0tLS0tLS0tLQotQUNfREVGVU4oW19MVF9BQ19MT0NLXSwKLVtB
Q19BUkdfRU5BQkxFKFtsaWJ0b29sLWxvY2tdLAotICAgIFtBQ19IRUxQX1NUUklORyhbLS1kaXNh
YmxlLWxpYnRvb2wtbG9ja10sCi0JW2F2b2lkIGxvY2tpbmcgKG1pZ2h0IGJyZWFrIHBhcmFsbGVs
IGJ1aWxkcyldKV0pCi10ZXN0ICJ4JGVuYWJsZV9saWJ0b29sX2xvY2siICE9IHhubyAmJiBlbmFi
bGVfbGlidG9vbF9sb2NrPXllcwotCi0jIFNvbWUgZmxhZ3MgbmVlZCB0byBiZSBwcm9wYWdhdGVk
IHRvIHRoZSBjb21waWxlciBvciBsaW5rZXIgZm9yIGdvb2QKLSMgbGlidG9vbCBzdXBwb3J0Lgot
Y2FzZSAkaG9zdCBpbgotaWE2NC0qLWhwdXgqKQotICAjIEZpbmQgb3V0IHdoaWNoIEFCSSB3ZSBh
cmUgdXNpbmcuCi0gIGVjaG8gJ2ludCBpOycgPiBjb25mdGVzdC4kYWNfZXh0Ci0gIGlmIEFDX1RS
WV9FVkFMKGFjX2NvbXBpbGUpOyB0aGVuCi0gICAgY2FzZSBgL3Vzci9iaW4vZmlsZSBjb25mdGVz
dC4kYWNfb2JqZXh0YCBpbgotICAgICpFTEYtMzIqKQotICAgICAgSFBVWF9JQTY0X01PREU9IjMy
IgotICAgICAgOzsKLSAgICAqRUxGLTY0KikKLSAgICAgIEhQVVhfSUE2NF9NT0RFPSI2NCIKLSAg
ICAgIDs7Ci0gICAgZXNhYwotICBmaQotICBybSAtcmYgY29uZnRlc3QqCi0gIDs7Ci0qLSotaXJp
eDYqKQotICAjIEZpbmQgb3V0IHdoaWNoIEFCSSB3ZSBhcmUgdXNpbmcuCi0gIGVjaG8gJ1sjXWxp
bmUgX19vbGluZV9fICJjb25maWd1cmUiJyA+IGNvbmZ0ZXN0LiRhY19leHQKLSAgaWYgQUNfVFJZ
X0VWQUwoYWNfY29tcGlsZSk7IHRoZW4KLSAgICBjYXNlIGAvdXNyL2Jpbi9maWxlIGNvbmZ0ZXN0
LiRhY19vYmpleHRgIGluCi0gICAgKjMyLWJpdCopCi0gICAgICBMRD0iJHtMRC1sZH0gLTMyIgot
ICAgICAgOzsKLSAgICAqTjMyKikKLSAgICAgIExEPSIke0xELWxkfSAtbjMyIgotICAgICAgOzsK
LSAgICAqNjQtYml0KikKLSAgICAgIExEPSIke0xELWxkfSAtNjQiCi0gICAgICA7OwotICAgIGVz
YWMKLSAgZmkKLSAgcm0gLXJmIGNvbmZ0ZXN0KgotICA7OwotCi0qLSotbGludXgqKQotICAjIFRl
c3QgaWYgdGhlIGNvbXBpbGVyIGlzIDY0Yml0Ci0gIGVjaG8gJ2ludCBpOycgPiBjb25mdGVzdC4k
YWNfZXh0Ci0gIGlmIEFDX1RSWV9FVkFMKGFjX2NvbXBpbGUpOyB0aGVuCi0gICAgY2FzZSBgL3Vz
ci9iaW4vZmlsZSBjb25mdGVzdC4kYWNfb2JqZXh0YCBpbgotICAgICoiRUxGIDMyIiopCi0gICAg
ICBMSU5VWF82NF9NT0RFPSIzMiIKLSAgICAgIDs7Ci0gICAgKiJFTEYgNjQiKikKLSAgICAgIExJ
TlVYXzY0X01PREU9IjY0IgotICAgICAgOzsKLSAgICBlc2FjCi0gIGZpCi0gIHJtIC1yZiBjb25m
dGVzdCoKLSAgOzsKLSAgCi0qLSotc2NvMy4ydjUqKQotICAjIE9uIFNDTyBPcGVuU2VydmVyIDUs
IHdlIG5lZWQgLWJlbGYgdG8gZ2V0IGZ1bGwtZmVhdHVyZWQgYmluYXJpZXMuCi0gIFNBVkVfQ0ZM
QUdTPSIkQ0ZMQUdTIgotICBDRkxBR1M9IiRDRkxBR1MgLWJlbGYiCi0gIEFDX0NBQ0hFX0NIRUNL
KFt3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIG5lZWRzIC1iZWxmXSwgbHRfY3ZfY2NfbmVlZHNfYmVs
ZiwKLSAgICBbQUNfTEFOR19QVVNIKEMpCi0gICAgIEFDX1RSWV9MSU5LKFtdLFtdLFtsdF9jdl9j
Y19uZWVkc19iZWxmPXllc10sW2x0X2N2X2NjX25lZWRzX2JlbGY9bm9dKQotICAgICBBQ19MQU5H
X1BPUF0pCi0gIGlmIHRlc3QgeCIkbHRfY3ZfY2NfbmVlZHNfYmVsZiIgIT0geCJ5ZXMiOyB0aGVu
Ci0gICAgIyB0aGlzIGlzIHByb2JhYmx5IGdjYyAyLjguMCwgZWdjcyAxLjAgb3IgbmV3ZXI7IG5v
IG5lZWQgZm9yIC1iZWxmCi0gICAgQ0ZMQUdTPSIkU0FWRV9DRkxBR1MiCi0gIGZpCi0gIDs7Ci1p
ZmRlZihbQUNfUFJPVklERV9BQ19MSUJUT09MX1dJTjMyX0RMTF0sCi1bKi0qLWN5Z3dpbiogfCAq
LSotbWluZ3cqIHwgKi0qLXB3MzIqKQotICBBQ19DSEVDS19UT09MKERMTFRPT0wsIGRsbHRvb2ws
IGZhbHNlKQotICBBQ19DSEVDS19UT09MKEFTLCBhcywgZmFsc2UpCi0gIEFDX0NIRUNLX1RPT0wo
T0JKRFVNUCwgb2JqZHVtcCwgZmFsc2UpCi0KLSAgIyByZWNlbnQgY3lnd2luIGFuZCBtaW5ndyBz
eXN0ZW1zIHN1cHBseSBhIHN0dWIgRGxsTWFpbiB3aGljaCB0aGUgdXNlcgotICAjIGNhbiBvdmVy
cmlkZSwgYnV0IG9uIG9sZGVyIHN5c3RlbXMgd2UgaGF2ZSB0byBzdXBwbHkgb25lCi0gIEFDX0NB
Q0hFX0NIRUNLKFtpZiBsaWJ0b29sIHNob3VsZCBzdXBwbHkgRGxsTWFpbiBmdW5jdGlvbl0sIGx0
X2N2X25lZWRfZGxsbWFpbiwKLSAgICBbQUNfVFJZX0xJTksoW10sCi0gICAgICBbZXh0ZXJuIGlu
dCBfX2F0dHJpYnV0ZV9fKChfX3N0ZGNhbGxfXykpIERsbE1haW4odm9pZCosIGludCwgdm9pZCop
OwotICAgICAgRGxsTWFpbiAoMCwgMCwgMCk7XSwKLSAgICAgIFtsdF9jdl9uZWVkX2RsbG1haW49
bm9dLFtsdF9jdl9uZWVkX2RsbG1haW49eWVzXSldKQotCi0gIGNhc2UgJGhvc3QvJENDIGluCi0g
ICotKi1jeWd3aW4qL2djYyotbW5vLWN5Z3dpbip8Ki0qLW1pbmd3KikKLSAgICAjIG9sZCBtaW5n
dyBzeXN0ZW1zIHJlcXVpcmUgIi1kbGwiIHRvIGxpbmsgYSBETEwsIHdoaWxlIG1vcmUgcmVjZW50
IG9uZXMKLSAgICAjIHJlcXVpcmUgIi1tZGxsIgotICAgIFNBVkVfQ0ZMQUdTPSIkQ0ZMQUdTIgot
ICAgIENGTEFHUz0iJENGTEFHUyAtbWRsbCIKLSAgICBBQ19DQUNIRV9DSEVDSyhbaG93IHRvIGxp
bmsgRExMc10sIGx0X2N2X2NjX2RsbF9zd2l0Y2gsCi0gICAgICBbQUNfVFJZX0xJTksoW10sIFtd
LCBbbHRfY3ZfY2NfZGxsX3N3aXRjaD0tbWRsbF0sW2x0X2N2X2NjX2RsbF9zd2l0Y2g9LWRsbF0p
XSkKLSAgICBDRkxBR1M9IiRTQVZFX0NGTEFHUyIgOzsKLSAgKi0qLWN5Z3dpbiogfCAqLSotcHcz
MiopCi0gICAgIyBjeWd3aW4gc3lzdGVtcyBuZWVkIHRvIHBhc3MgLS1kbGwgdG8gdGhlIGxpbmtl
ciwgYW5kIG5vdCBsaW5rCi0gICAgIyBjcnQubyB3aGljaCB3aWxsIHJlcXVpcmUgYSBXaW5NYWlu
QDE2IGRlZmluaXRpb24uCi0gICAgbHRfY3ZfY2NfZGxsX3N3aXRjaD0iLVdsLC0tZGxsIC1ub3N0
YXJ0ZmlsZXMiIDs7Ci0gIGVzYWMKLSAgOzsKLSAgXSkKLWVzYWMKLQotbmVlZF9sb2Nrcz0iJGVu
YWJsZV9saWJ0b29sX2xvY2siCi0KLV0pIyBfTFRfQUNfTE9DSwotCi0KLSMgQUNfTElCVE9PTF9D
T01QSUxFUl9PUFRJT04oTUVTU0FHRSwgVkFSSUFCTEUtTkFNRSwgRkxBR1MsCi0jCQlbT1VUUFVU
LUZJTEVdLCBbQUNUSU9OLVNVQ0NFU1NdLCBbQUNUSU9OLUZBSUxVUkVdKQotIyAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0j
IENoZWNrIHdoZXRoZXIgdGhlIGdpdmVuIGNvbXBpbGVyIG9wdGlvbiB3b3JrcwotQUNfREVGVU4o
W0FDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OXSwKLVtBQ19DQUNIRV9DSEVDSyhbJDFdLCBbJDJd
LAotICBbJDI9bm8KLSAgaWZlbHNlKFskNF0sICwgW2FjX291dGZpbGU9Y29uZnRlc3QuJGFjX29i
amV4dF0sIFthY19vdXRmaWxlPSQ0XSkKLSAgIHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIgotICAgQ0ZM
QUdTPSIkQ0ZMQUdTICQzIgotICAgZWNobyAiJGx0X3NpbXBsZV9jb21waWxlX3Rlc3RfY29kZSIg
PiBjb25mdGVzdC4kYWNfZXh0Ci0gICBpZiAoZXZhbCAkYWNfY29tcGlsZSAyPmNvbmZ0ZXN0LmVy
cikgJiYgdGVzdCAtcyAkYWNfb3V0ZmlsZTsgdGhlbgotICAgICAjIFRoZSBjb21waWxlciBjYW4g
b25seSB3YXJuIGFuZCBpZ25vcmUgdGhlIG9wdGlvbiBpZiBub3QgcmVjb2duaXplZAotICAgICAj
IFNvIHNheSBubyBpZiB0aGVyZSBhcmUgd2FybmluZ3MKLSAgICAgaWYgdGVzdCAtcyBjb25mdGVz
dC5lcnI7IHRoZW4KLSAgICAgICAjIEFwcGVuZCBhbnkgZXJyb3JzIHRvIHRoZSBjb25maWcubG9n
LgotICAgICAgIGNhdCBjb25mdGVzdC5lcnIgMT4mQVNfTUVTU0FHRV9MT0dfRkQKLSAgICAgZWxz
ZQotICAgICAgICQyPXllcwotICAgICBmaQotICAgZmkKLSAgICRybSBjb25mdGVzdCoKLSAgIENG
TEFHUz0iJHNhdmVfQ0ZMQUdTIgotXSkKLQotaWYgdGVzdCB4IlskXSQyIiA9IHh5ZXM7IHRoZW4K
LSAgICBpZmVsc2UoWyQ1XSwgLCA6LCBbJDVdKQotZWxzZQotICAgIGlmZWxzZShbJDZdLCAsIDos
IFskNl0pCi1maQotXSkjIEFDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OCi0KLQotIyBBQ19MSUJU
T09MX0xJTktFUl9PUFRJT04oTUVTU0FHRSwgVkFSSUFCTEUtTkFNRSwgRkxBR1MsCi0jICAgICAg
ICAgICAgICAgICAgICAgICAgICBbQUNUSU9OLVNVQ0NFU1NdLCBbQUNUSU9OLUZBSUxVUkVdKQot
IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0KLSMgQ2hlY2sgd2hldGhlciB0aGUgZ2l2ZW4gY29tcGlsZXIgb3B0aW9uIHdvcmtzCi1B
Q19ERUZVTihbQUNfTElCVE9PTF9MSU5LRVJfT1BUSU9OXSwKLVtBQ19DQUNIRV9DSEVDSyhbJDFd
LCBbJDJdLAotICBbJDI9bm8KLSAgIHNhdmVfTERGTEFHUz0iJExERkxBR1MiCi0gICBMREZMQUdT
PSIkTERGTEFHUyAkMyIKLSAgIGVjaG8gIiRsdF9zaW1wbGVfbGlua190ZXN0X2NvZGUiID4gY29u
ZnRlc3QuJGFjX2V4dAotICAgaWYgKGV2YWwgJGFjX2xpbmsgMj5jb25mdGVzdC5lcnIpICYmIHRl
c3QgLXMgY29uZnRlc3QkYWNfZXhlZXh0OyB0aGVuCi0gICAgICMgVGhlIGNvbXBpbGVyIGNhbiBv
bmx5IHdhcm4gYW5kIGlnbm9yZSB0aGUgb3B0aW9uIGlmIG5vdCByZWNvZ25pemVkCi0gICAgICMg
U28gc2F5IG5vIGlmIHRoZXJlIGFyZSB3YXJuaW5ncwotICAgICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0
LmVycjsgdGhlbgotICAgICAgICMgQXBwZW5kIGFueSBlcnJvcnMgdG8gdGhlIGNvbmZpZy5sb2cu
Ci0gICAgICAgY2F0IGNvbmZ0ZXN0LmVyciAxPiZBU19NRVNTQUdFX0xPR19GRAotICAgICBlbHNl
Ci0gICAgICAgJDI9eWVzCi0gICAgIGZpCi0gICBmaQotICAgJHJtIGNvbmZ0ZXN0KgotICAgTERG
TEFHUz0iJHNhdmVfTERGTEFHUyIKLV0pCi0KLWlmIHRlc3QgeCJbJF0kMiIgPSB4eWVzOyB0aGVu
Ci0gICAgaWZlbHNlKFskNF0sICwgOiwgWyQ0XSkKLWVsc2UKLSAgICBpZmVsc2UoWyQ1XSwgLCA6
LCBbJDVdKQotZmkKLV0pIyBBQ19MSUJUT09MX0xJTktFUl9PUFRJT04KLQotCi0jIEFDX0xJQlRP
T0xfU1lTX01BWF9DTURfTEVOCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1BQ19ERUZV
TihbQUNfTElCVE9PTF9TWVNfTUFYX0NNRF9MRU5dLAotWyMgZmluZCB0aGUgbWF4aW11bSBsZW5n
dGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwotQUNfTVNHX0NIRUNLSU5HKFt0aGUgbWF4aW11
bSBsZW5ndGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50c10pCi1BQ19DQUNIRV9WQUwoW2x0X2N2
X3N5c19tYXhfY21kX2xlbl0sIFtkbmwKLSAgaT0wCi0gIHRlc3RyaW5nPSJBQkNEIgotCi0gIGNh
c2UgJGhvc3Rfb3MgaW4KLSAgbXNkb3NkamdwcCopCi0gICAgIyBPbiBESkdQUCwgdGhpcyB0ZXN0
IGNhbiBibG93IHVwIHByZXR0eSBiYWRseSBkdWUgdG8gcHJvYmxlbXMgaW4gbGliYwotICAgICMg
KGFueSBzaW5nbGUgYXJndW1lbnQgZXhjZWVkaW5nIDIwMDAgYnl0ZXMgY2F1c2VzIGEgYnVmZmVy
IG92ZXJydW4KLSAgICAjIGR1cmluZyBnbG9iIGV4cGFuc2lvbikuICBFdmVuIGlmIGl0IHdlcmUg
Zml4ZWQsIHRoZSByZXN1bHQgb2YgdGhpcwotICAgICMgY2hlY2sgd291bGQgYmUgbGFyZ2VyIHRo
YW4gaXQgc2hvdWxkIGJlLgotICAgIGx0X2N2X3N5c19tYXhfY21kX2xlbj0xMjI4ODsgICAgIyAx
MksgaXMgYWJvdXQgcmlnaHQKLSAgICA7OwotCi0gIGdudSopCi0gICAgIyBVbmRlciBHTlUgSHVy
ZCwgdGhpcyB0ZXN0IGlzIG5vdCByZXF1aXJlZCBiZWNhdXNlIHRoZXJlIGlzCi0gICAgIyBubyBs
aW1pdCB0byB0aGUgbGVuZ3RoIG9mIGNvbW1hbmQgbGluZSBhcmd1bWVudHMuCi0gICAgIyBMaWJ0
b29sIHdpbGwgaW50ZXJwcmV0IC0xIGFzIG5vIGxpbWl0IHdoYXRzb2V2ZXIKLSAgICBsdF9jdl9z
eXNfbWF4X2NtZF9sZW49LTE7Ci0gICAgOzsKLQotICAqKQotICAgICMgSWYgdGVzdCBpcyBub3Qg
YSBzaGVsbCBidWlsdC1pbiwgd2UnbGwgcHJvYmFibHkgZW5kIHVwIGNvbXB1dGluZyBhCi0gICAg
IyBtYXhpbXVtIGxlbmd0aCB0aGF0IGlzIG9ubHkgaGFsZiBvZiB0aGUgYWN0dWFsIG1heGltdW0g
bGVuZ3RoLCBidXQKLSAgICAjIHdlIGNhbid0IHRlbGwuCi0gICAgd2hpbGUgKHRlc3QgIlgiYCRD
T05GSUdfU0hFTEwgWyRdMCAtLWZhbGxiYWNrLWVjaG8gIlgkdGVzdHJpbmciIDI+L2Rldi9udWxs
YCBcCi0JICAgICAgID0gIlhYJHRlc3RyaW5nIikgPi9kZXYvbnVsbCAyPiYxICYmCi0JICAgIG5l
d19yZXN1bHQ9YGV4cHIgIlgkdGVzdHJpbmciIDogIi4qIiAyPiYxYCAmJgotCSAgICBsdF9jdl9z
eXNfbWF4X2NtZF9sZW49JG5ld19yZXN1bHQgJiYKLQkgICAgdGVzdCAkaSAhPSAxNyAjIDEvMiBN
QiBzaG91bGQgYmUgZW5vdWdoCi0gICAgZG8KLSAgICAgIGk9YGV4cHIgJGkgKyAxYAotICAgICAg
dGVzdHJpbmc9JHRlc3RyaW5nJHRlc3RyaW5nCi0gICAgZG9uZQotICAgIHRlc3RyaW5nPQotICAg
ICMgQWRkIGEgc2lnbmlmaWNhbnQgc2FmZXR5IGZhY3RvciBiZWNhdXNlIEMrKyBjb21waWxlcnMg
Y2FuIHRhY2sgb24gbWFzc2l2ZQotICAgICMgYW1vdW50cyBvZiBhZGRpdGlvbmFsIGFyZ3VtZW50
cyBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIHRoZSBsaW5rZXIuCi0gICAgIyBJdCBhcHBlYXJzIGFz
IHRob3VnaCAxLzIgaXMgYSB1c2FibGUgdmFsdWUuCi0gICAgbHRfY3Zfc3lzX21heF9jbWRfbGVu
PWBleHByICRsdF9jdl9zeXNfbWF4X2NtZF9sZW4gXC8gMmAKLSAgICA7OwotICBlc2FjCi1dKQot
aWYgdGVzdCAtbiAkbHRfY3Zfc3lzX21heF9jbWRfbGVuIDsgdGhlbgotICBBQ19NU0dfUkVTVUxU
KCRsdF9jdl9zeXNfbWF4X2NtZF9sZW4pCi1lbHNlCi0gIEFDX01TR19SRVNVTFQobm9uZSkKLWZp
Ci1dKSMgQUNfTElCVE9PTF9TWVNfTUFYX0NNRF9MRU4KLQotCi0jIF9MVF9BQ19DSEVDS19ETEZD
TgotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW19MVF9BQ19DSEVDS19ETEZDTl0s
Ci1bQUNfQ0hFQ0tfSEVBREVSUyhkbGZjbi5oKWRubAotXSkjIF9MVF9BQ19DSEVDS19ETEZDTgot
Ci0KLSMgX0xUX0FDX1RSWV9ETE9QRU5fU0VMRiAoQUNUSU9OLUlGLVRSVUUsIEFDVElPTi1JRi1U
UlVFLVctVVNDT1JFLAotIyAgICAgICAgICAgICAgICAgICAgICAgICAgIEFDVElPTi1JRi1GQUxT
RSwgQUNUSU9OLUlGLUNST1NTLUNPTVBJTElORykKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1BQ19ERUZVTihbX0xU
X0FDX1RSWV9ETE9QRU5fU0VMRl0sCi1bQUNfUkVRVUlSRShbX0xUX0FDX0NIRUNLX0RMRkNOXSlk
bmwKLWlmIHRlc3QgIiRjcm9zc19jb21waWxpbmciID0geWVzOyB0aGVuIDoKLSAgWyQ0XQotZWxz
ZQotICBsdF9kbHVua25vd249MDsgbHRfZGxub191c2NvcmU9MTsgbHRfZGxuZWVkX3VzY29yZT0y
Ci0gIGx0X3N0YXR1cz0kbHRfZGx1bmtub3duCi0gIGNhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxF
T0YKLVsjbGluZSBfX29saW5lX18gImNvbmZpZ3VyZSIKLSNpbmNsdWRlICJjb25mZGVmcy5oIgot
Ci0jaWYgSEFWRV9ETEZDTl9ICi0jaW5jbHVkZSA8ZGxmY24uaD4KLSNlbmRpZgotCi0jaW5jbHVk
ZSA8c3RkaW8uaD4KLQotI2lmZGVmIFJUTERfR0xPQkFMCi0jICBkZWZpbmUgTFRfRExHTE9CQUwJ
CVJUTERfR0xPQkFMCi0jZWxzZQotIyAgaWZkZWYgRExfR0xPQkFMCi0jICAgIGRlZmluZSBMVF9E
TEdMT0JBTAkJRExfR0xPQkFMCi0jICBlbHNlCi0jICAgIGRlZmluZSBMVF9ETEdMT0JBTAkJMAot
IyAgZW5kaWYKLSNlbmRpZgotCi0vKiBXZSBtYXkgaGF2ZSB0byBkZWZpbmUgTFRfRExMQVpZX09S
X05PVyBpbiB0aGUgY29tbWFuZCBsaW5lIGlmIHdlCi0gICBmaW5kIG91dCBpdCBkb2VzIG5vdCB3
b3JrIGluIHNvbWUgcGxhdGZvcm0uICovCi0jaWZuZGVmIExUX0RMTEFaWV9PUl9OT1cKLSMgIGlm
ZGVmIFJUTERfTEFaWQotIyAgICBkZWZpbmUgTFRfRExMQVpZX09SX05PVwkJUlRMRF9MQVpZCi0j
ICBlbHNlCi0jICAgIGlmZGVmIERMX0xBWlkKLSMgICAgICBkZWZpbmUgTFRfRExMQVpZX09SX05P
VwkJRExfTEFaWQotIyAgICBlbHNlCi0jICAgICAgaWZkZWYgUlRMRF9OT1cKLSMgICAgICAgIGRl
ZmluZSBMVF9ETExBWllfT1JfTk9XCVJUTERfTk9XCi0jICAgICAgZWxzZQotIyAgICAgICAgaWZk
ZWYgRExfTk9XCi0jICAgICAgICAgIGRlZmluZSBMVF9ETExBWllfT1JfTk9XCURMX05PVwotIyAg
ICAgICAgZWxzZQotIyAgICAgICAgICBkZWZpbmUgTFRfRExMQVpZX09SX05PVwkwCi0jICAgICAg
ICBlbmRpZgotIyAgICAgIGVuZGlmCi0jICAgIGVuZGlmCi0jICBlbmRpZgotI2VuZGlmCi0KLSNp
ZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJDIiB2b2lkIGV4aXQgKGludCk7Ci0jZW5kaWYKLQot
dm9pZCBmbm9yZCgpIHsgaW50IGk9NDI7fQotaW50IG1haW4gKCkKLXsKLSAgdm9pZCAqc2VsZiA9
IGRsb3BlbiAoMCwgTFRfRExHTE9CQUx8TFRfRExMQVpZX09SX05PVyk7Ci0gIGludCBzdGF0dXMg
PSAkbHRfZGx1bmtub3duOwotCi0gIGlmIChzZWxmKQotICAgIHsKLSAgICAgIGlmIChkbHN5bSAo
c2VsZiwiZm5vcmQiKSkgICAgICAgc3RhdHVzID0gJGx0X2Rsbm9fdXNjb3JlOwotICAgICAgZWxz
ZSBpZiAoZGxzeW0oIHNlbGYsIl9mbm9yZCIpKSBzdGF0dXMgPSAkbHRfZGxuZWVkX3VzY29yZTsK
LSAgICAgIC8qIGRsY2xvc2UgKHNlbGYpOyAqLwotICAgIH0KLQotICAgIGV4aXQgKHN0YXR1cyk7
Ci19XQotRU9GCi0gIGlmIEFDX1RSWV9FVkFMKGFjX2xpbmspICYmIHRlc3QgLXMgY29uZnRlc3Qk
e2FjX2V4ZWV4dH0gMj4vZGV2L251bGw7IHRoZW4KLSAgICAoLi9jb25mdGVzdDsgZXhpdDsgKSAy
Pi9kZXYvbnVsbAotICAgIGx0X3N0YXR1cz0kPwotICAgIGNhc2UgeCRsdF9zdGF0dXMgaW4KLSAg
ICAgIHgkbHRfZGxub191c2NvcmUpICQxIDs7Ci0gICAgICB4JGx0X2RsbmVlZF91c2NvcmUpICQy
IDs7Ci0gICAgICB4JGx0X3Vua25vd258eCopICQzIDs7Ci0gICAgZXNhYwotICBlbHNlIDoKLSAg
ICAjIGNvbXBpbGF0aW9uIGZhaWxlZAotICAgICQzCi0gIGZpCi1maQotcm0gLWZyIGNvbmZ0ZXN0
KgotXSkjIF9MVF9BQ19UUllfRExPUEVOX1NFTEYKLQotCi0jIEFDX0xJQlRPT0xfRExPUEVOX1NF
TEYKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW0FDX0xJQlRPT0xfRExPUEVOX1NF
TEZdLAotW0FDX1JFUVVJUkUoW19MVF9BQ19DSEVDS19ETEZDTl0pZG5sCi1pZiB0ZXN0ICJ4JGVu
YWJsZV9kbG9wZW4iICE9IHh5ZXM7IHRoZW4KLSAgZW5hYmxlX2Rsb3Blbj11bmtub3duCi0gIGVu
YWJsZV9kbG9wZW5fc2VsZj11bmtub3duCi0gIGVuYWJsZV9kbG9wZW5fc2VsZl9zdGF0aWM9dW5r
bm93bgotZWxzZQotICBsdF9jdl9kbG9wZW49bm8KLSAgbHRfY3ZfZGxvcGVuX2xpYnM9Ci0KLSAg
Y2FzZSAkaG9zdF9vcyBpbgotICBiZW9zKikKLSAgICBsdF9jdl9kbG9wZW49ImxvYWRfYWRkX29u
IgotICAgIGx0X2N2X2Rsb3Blbl9saWJzPQotICAgIGx0X2N2X2Rsb3Blbl9zZWxmPXllcwotICAg
IDs7Ci0KLSAgY3lnd2luKiB8IG1pbmd3KiB8IHB3MzIqKQotICAgIGx0X2N2X2Rsb3Blbj0iTG9h
ZExpYnJhcnkiCi0gICAgbHRfY3ZfZGxvcGVuX2xpYnM9Ci0gICA7OwotCi0gICopCi0gICAgQUNf
Q0hFQ0tfRlVOQyhbc2hsX2xvYWRdLAotCSAgW2x0X2N2X2Rsb3Blbj0ic2hsX2xvYWQiXSwKLSAg
ICAgIFtBQ19DSEVDS19MSUIoW2RsZF0sIFtzaGxfbG9hZF0sCi0JICAgIFtsdF9jdl9kbG9wZW49
InNobF9sb2FkIiBsdF9jdl9kbG9wZW5fbGlicz0iLWRsZCJdLAotCVtBQ19DSEVDS19GVU5DKFtk
bG9wZW5dLAotCSAgICAgIFtsdF9jdl9kbG9wZW49ImRsb3BlbiJdLAotCSAgW0FDX0NIRUNLX0xJ
QihbZGxdLCBbZGxvcGVuXSwKLQkJW2x0X2N2X2Rsb3Blbj0iZGxvcGVuIiBsdF9jdl9kbG9wZW5f
bGlicz0iLWxkbCJdLAotCSAgICBbQUNfQ0hFQ0tfTElCKFtzdmxkXSwgW2Rsb3Blbl0sCi0JCSAg
W2x0X2N2X2Rsb3Blbj0iZGxvcGVuIiBsdF9jdl9kbG9wZW5fbGlicz0iLWxzdmxkIl0sCi0JICAg
ICAgW0FDX0NIRUNLX0xJQihbZGxkXSwgW2RsZF9saW5rXSwKLQkJICAgIFtsdF9jdl9kbG9wZW49
ImRsZF9saW5rIiBsdF9jdl9kbG9wZW5fbGlicz0iLWRsZCJdKQotCSAgICAgIF0pCi0JICAgIF0p
Ci0JICBdKQotCV0pCi0gICAgICBdKQotICAgIDs7Ci0gIGVzYWMKLQotICBpZiB0ZXN0ICJ4JGx0
X2N2X2Rsb3BlbiIgIT0geG5vOyB0aGVuCi0gICAgZW5hYmxlX2Rsb3Blbj15ZXMKLSAgZWxzZQot
ICAgIGVuYWJsZV9kbG9wZW49bm8KLSAgZmkKLQotICBjYXNlICRsdF9jdl9kbG9wZW4gaW4KLSAg
ZGxvcGVuKQotICAgIHNhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKLSAgICB0ZXN0ICJ4JGFjX2N2
X2hlYWRlcl9kbGZjbl9oIiA9IHh5ZXMgJiYgQ1BQRkxBR1M9IiRDUFBGTEFHUyAtREhBVkVfRExG
Q05fSCIKLQotICAgIHNhdmVfTERGTEFHUz0iJExERkxBR1MiCi0gICAgZXZhbCBMREZMQUdTPVwi
XCRMREZMQUdTICRleHBvcnRfZHluYW1pY19mbGFnX3NwZWNcIgotCi0gICAgc2F2ZV9MSUJTPSIk
TElCUyIKLSAgICBMSUJTPSIkbHRfY3ZfZGxvcGVuX2xpYnMgJExJQlMiCi0KLSAgICBBQ19DQUNI
RV9DSEVDSyhbd2hldGhlciBhIHByb2dyYW0gY2FuIGRsb3BlbiBpdHNlbGZdLAotCSAgbHRfY3Zf
ZGxvcGVuX3NlbGYsIFtkbmwKLQkgIF9MVF9BQ19UUllfRExPUEVOX1NFTEYoCi0JICAgIGx0X2N2
X2Rsb3Blbl9zZWxmPXllcywgbHRfY3ZfZGxvcGVuX3NlbGY9eWVzLAotCSAgICBsdF9jdl9kbG9w
ZW5fc2VsZj1ubywgbHRfY3ZfZGxvcGVuX3NlbGY9Y3Jvc3MpCi0gICAgXSkKLQotICAgIGlmIHRl
c3QgIngkbHRfY3ZfZGxvcGVuX3NlbGYiID0geHllczsgdGhlbgotICAgICAgTERGTEFHUz0iJExE
RkxBR1MgJGxpbmtfc3RhdGljX2ZsYWciCi0gICAgICBBQ19DQUNIRV9DSEVDSyhbd2hldGhlciBh
IHN0YXRpY2FsbHkgbGlua2VkIHByb2dyYW0gY2FuIGRsb3BlbiBpdHNlbGZdLAotICAgIAkgIGx0
X2N2X2Rsb3Blbl9zZWxmX3N0YXRpYywgW2RubAotCSAgX0xUX0FDX1RSWV9ETE9QRU5fU0VMRigK
LQkgICAgbHRfY3ZfZGxvcGVuX3NlbGZfc3RhdGljPXllcywgbHRfY3ZfZGxvcGVuX3NlbGZfc3Rh
dGljPXllcywKLQkgICAgbHRfY3ZfZGxvcGVuX3NlbGZfc3RhdGljPW5vLCAgbHRfY3ZfZGxvcGVu
X3NlbGZfc3RhdGljPWNyb3NzKQotICAgICAgXSkKLSAgICBmaQotCi0gICAgQ1BQRkxBR1M9IiRz
YXZlX0NQUEZMQUdTIgotICAgIExERkxBR1M9IiRzYXZlX0xERkxBR1MiCi0gICAgTElCUz0iJHNh
dmVfTElCUyIKLSAgICA7OwotICBlc2FjCi0KLSAgY2FzZSAkbHRfY3ZfZGxvcGVuX3NlbGYgaW4K
LSAgeWVzfG5vKSBlbmFibGVfZGxvcGVuX3NlbGY9JGx0X2N2X2Rsb3Blbl9zZWxmIDs7Ci0gICop
IGVuYWJsZV9kbG9wZW5fc2VsZj11bmtub3duIDs7Ci0gIGVzYWMKLQotICBjYXNlICRsdF9jdl9k
bG9wZW5fc2VsZl9zdGF0aWMgaW4KLSAgeWVzfG5vKSBlbmFibGVfZGxvcGVuX3NlbGZfc3RhdGlj
PSRsdF9jdl9kbG9wZW5fc2VsZl9zdGF0aWMgOzsKLSAgKikgZW5hYmxlX2Rsb3Blbl9zZWxmX3N0
YXRpYz11bmtub3duIDs7Ci0gIGVzYWMKLWZpCi1dKSMgQUNfTElCVE9PTF9ETE9QRU5fU0VMRgot
Ci0KLSMgQUNfTElCVE9PTF9QUk9HX0NDX0NfTyhbVEFHTkFNRV0pCi0jIC0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQotIyBDaGVjayB0byBzZWUgaWYgb3B0aW9ucyAtYyBhbmQgLW8g
YXJlIHNpbXVsdGFuZW91c2x5IHN1cHBvcnRlZCBieSBjb21waWxlcgotQUNfREVGVU4oW0FDX0xJ
QlRPT0xfUFJPR19DQ19DX09dLAotW0FDX1JFUVVJUkUoW19MVF9BQ19TWVNfQ09NUElMRVJdKWRu
bAotQUNfQ0FDSEVfQ0hFQ0soW2lmICRjb21waWxlciBzdXBwb3J0cyAtYyAtbyBmaWxlLiRhY19v
YmpleHRdLAotICBbX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBpbGVyX2NfbywgJDEpXSwK
LSAgW19MVF9BQ19UQUdWQVIobHRfY3ZfcHJvZ19jb21waWxlcl9jX28sICQxKT1ubwotICAgJHJt
IC1yIGNvbmZ0ZXN0IDI+L2Rldi9udWxsCi0gICBta2RpciBjb25mdGVzdAotICAgY2QgY29uZnRl
c3QKLSAgIG1rZGlyIG91dAotICAgaWZlbHNlKFskMV0sW10sW3NhdmVfQ0ZMQUdTPSIkQ0ZMQUdT
IgotCQkgICBDRkxBR1M9IiRDRkxBR1MgLW8gb3V0L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0Il0sCi0J
ICBbJDFdLFtDWFhdLFtzYXZlX0NYWEZMQUdTPSIkQ1hYRkxBR1MiCi0JCSAgIENYWEZMQUdTPSIk
Q1hYRkxBR1MgLW8gb3V0L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0Il0sCi0JICBbJDFdLFtHQ0pdLFtz
YXZlX0dDSkZMQUdTPSIkR0NKRkxBR1MiCi0JCSAgIEdDSkZMQUdTPSIkR0NKRkxBR1MgLW8gb3V0
L2NvbmZ0ZXN0Mi4kYWNfb2JqZXh0Il0pCi0gICBlY2hvICIkbHRfc2ltcGxlX2NvbXBpbGVfdGVz
dF9jb2RlIiA+IGNvbmZ0ZXN0LiRhY19leHQKLQotICAgIyBBY2NvcmRpbmcgdG8gVG9tIFRyb21l
eSwgSWFuIExhbmNlIFRheWxvciByZXBvcnRlZCB0aGVyZSBhcmUgQyBjb21waWxlcnMKLSAgICMg
dGhhdCB3aWxsIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5
IHJlZ2FyZGxlc3Mgb2YKLSAgICMgdGhlIG91dHB1dCBkaXJlY3RvcnkuICBUaHVzLCBtYWtpbmcg
Q1dEIHJlYWQtb25seSB3aWxsIGNhdXNlIHRoaXMgdGVzdAotICAgIyB0byBmYWlsLCBlbmFibGlu
ZyBsb2NraW5nIG9yIGF0IGxlYXN0IHdhcm5pbmcgdGhlIHVzZXIgbm90IHRvIGRvIHBhcmFsbGVs
Ci0gICAjIGJ1aWxkcy4KLSAgIGNobW9kIC13IC4KLQotICAgaWYgKGV2YWwgJGFjX2NvbXBpbGUg
Mj5vdXQvY29uZnRlc3QuZXJyKSAmJiB0ZXN0IC1zIG91dC9jb25mdGVzdDIuJGFjX29iamV4dAot
ICAgdGhlbgotICAgICAjIFRoZSBjb21waWxlciBjYW4gb25seSB3YXJuIGFuZCBpZ25vcmUgdGhl
IG9wdGlvbiBpZiBub3QgcmVjb2duaXplZAotICAgICAjIFNvIHNheSBubyBpZiB0aGVyZSBhcmUg
d2FybmluZ3MKLSAgICAgaWYgdGVzdCAtcyBvdXQvY29uZnRlc3QuZXJyOyB0aGVuCi0gICAgICAg
IyBBcHBlbmQgYW55IGVycm9ycyB0byB0aGUgY29uZmlnLmxvZy4KLSAgICAgICBjYXQgb3V0L2Nv
bmZ0ZXN0LmVyciAxPiZBU19NRVNTQUdFX0xPR19GRAotICAgICBlbHNlCi0gICAgICAgX0xUX0FD
X1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBpbGVyX2NfbywgJDEpPXllcwotICAgICBmaQotICAgZmkK
LSAgIGlmZWxzZShbJDFdLFtdLFtDRkxBR1M9IiRzYXZlX0NGTEFHUyJdLAotCSAgWyQxXSxbQ1hY
XSxbQ1hYRkxBR1M9IiRzYXZlX0NYWEZMQUdTIl0sCi0JICBbJDFdLFtHQ0pdLFtHQ0pGTEFHUz0i
JHNhdmVfR0NKRkxBR1MiXSkKLSAgIGNobW9kIHUrdyAuCi0gICAkcm0gY29uZnRlc3QqIG91dC8q
Ci0gICBybWRpciBvdXQKLSAgIGNkIC4uCi0gICBybWRpciBjb25mdGVzdAotICAgJHJtIGNvbmZ0
ZXN0KgotXSkKLV0pIyBBQ19MSUJUT09MX1BST0dfQ0NfQ19PCi0KLQotIyBBQ19MSUJUT09MX1NZ
U19IQVJEX0xJTktfTE9DS1MoW1RBR05BTUVdKQotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQotIyBDaGVjayB0byBzZWUgaWYgd2UgY2FuIGRvIGhhcmQgbGlua3Mg
dG8gbG9jayBzb21lIGZpbGVzIGlmIG5lZWRlZAotQUNfREVGVU4oW0FDX0xJQlRPT0xfU1lTX0hB
UkRfTElOS19MT0NLU10sCi1bQUNfUkVRVUlSRShbX0xUX0FDX0xPQ0tdKWRubAotCi1oYXJkX2xp
bmtzPSJub3R0ZXN0ZWQiCi1pZiB0ZXN0ICIkX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBp
bGVyX2NfbywgJDEpIiA9IG5vICYmIHRlc3QgIiRuZWVkX2xvY2tzIiAhPSBubzsgdGhlbgotICAj
IGRvIG5vdCBvdmVyd3JpdGUgdGhlIHZhbHVlIG9mIG5lZWRfbG9ja3MgcHJvdmlkZWQgYnkgdGhl
IHVzZXIKLSAgQUNfTVNHX0NIRUNLSU5HKFtpZiB3ZSBjYW4gbG9jayB3aXRoIGhhcmQgbGlua3Nd
KQotICBoYXJkX2xpbmtzPXllcwotICAkcm0gY29uZnRlc3QqCi0gIGxuIGNvbmZ0ZXN0LmEgY29u
ZnRlc3QuYiAyPi9kZXYvbnVsbCAmJiBoYXJkX2xpbmtzPW5vCi0gIHRvdWNoIGNvbmZ0ZXN0LmEK
LSAgbG4gY29uZnRlc3QuYSBjb25mdGVzdC5iIDI+JjUgfHwgaGFyZF9saW5rcz1ubwotICBsbiBj
b25mdGVzdC5hIGNvbmZ0ZXN0LmIgMj4vZGV2L251bGwgJiYgaGFyZF9saW5rcz1ubwotICBBQ19N
U0dfUkVTVUxUKFskaGFyZF9saW5rc10pCi0gIGlmIHRlc3QgIiRoYXJkX2xpbmtzIiA9IG5vOyB0
aGVuCi0gICAgQUNfTVNHX1dBUk4oW2AkQ0MnIGRvZXMgbm90IHN1cHBvcnQgYC1jIC1vJywgc28g
YG1ha2UgLWonIG1heSBiZSB1bnNhZmVdKQotICAgIG5lZWRfbG9ja3M9d2FybgotICBmaQotZWxz
ZQotICBuZWVkX2xvY2tzPW5vCi1maQotXSkjIEFDX0xJQlRPT0xfU1lTX0hBUkRfTElOS19MT0NL
UwotCi0KLSMgQUNfTElCVE9PTF9PQkpESVIKLSMgLS0tLS0tLS0tLS0tLS0tLS0KLUFDX0RFRlVO
KFtBQ19MSUJUT09MX09CSkRJUl0sCi1bQUNfQ0FDSEVfQ0hFQ0soW2ZvciBvYmpkaXJdLCBbbHRf
Y3Zfb2JqZGlyXSwKLVtybSAtZiAubGlicyAyPi9kZXYvbnVsbAotbWtkaXIgLmxpYnMgMj4vZGV2
L251bGwKLWlmIHRlc3QgLWQgLmxpYnM7IHRoZW4KLSAgbHRfY3Zfb2JqZGlyPS5saWJzCi1lbHNl
Ci0gICMgTVMtRE9TIGRvZXMgbm90IGFsbG93IGZpbGVuYW1lcyB0aGF0IGJlZ2luIHdpdGggYSBk
b3QuCi0gIGx0X2N2X29iamRpcj1fbGlicwotZmkKLXJtZGlyIC5saWJzIDI+L2Rldi9udWxsXSkK
LW9iamRpcj0kbHRfY3Zfb2JqZGlyCi1dKSMgQUNfTElCVE9PTF9PQkpESVIKLQotCi0jIEFDX0xJ
QlRPT0xfUFJPR19MRF9IQVJEQ09ERV9MSUJQQVRIKFtUQUdOQU1FXSkKLSMgLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBDaGVjayBoYXJkY29kaW5nIGF0
dHJpYnV0ZXMuCi1BQ19ERUZVTihbQUNfTElCVE9PTF9QUk9HX0xEX0hBUkRDT0RFX0xJQlBBVEhd
LAotW0FDX01TR19DSEVDS0lORyhbaG93IHRvIGhhcmRjb2RlIGxpYnJhcnkgcGF0aHMgaW50byBw
cm9ncmFtc10pCi1fTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPQotaWYgdGVzdCAt
biAiJF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpIiB8fCBcCi0g
ICB0ZXN0IC1uICIkX0xUX0FDX1RBR1ZBUihydW5wYXRoX3ZhciAkMSkiOyB0aGVuCi0KLSAgIyBX
ZSBjYW4gaGFyZGNvZGUgbm9uLWV4aXN0YW50IGRpcmVjdG9yaWVzLgotICBpZiB0ZXN0ICIkX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKSIgIT0gbm8gJiYKLSAgICAgIyBJZiB0aGUg
b25seSBtZWNoYW5pc20gdG8gYXZvaWQgaGFyZGNvZGluZyBpcyBzaGxpYnBhdGhfdmFyLCB3ZQot
ICAgICAjIGhhdmUgdG8gcmVsaW5rLCBvdGhlcndpc2Ugd2UgbWlnaHQgbGluayB3aXRoIGFuIGlu
c3RhbGxlZCBsaWJyYXJ5Ci0gICAgICMgd2hlbiB3ZSBzaG91bGQgYmUgbGlua2luZyB3aXRoIGEg
eWV0LXRvLWJlLWluc3RhbGxlZCBvbmUKLSAgICAgIyMgdGVzdCAiJF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpIiAhPSBubyAmJgotICAgICB0ZXN0ICIkX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9taW51c19MLCAkMSkiICE9IG5vOyB0aGVuCi0gICAgIyBMaW5raW5nIGFs
d2F5cyBoYXJkY29kZXMgdGhlIHRlbXBvcmFyeSBsaWJyYXJ5IGRpcmVjdG9yeS4KLSAgICBfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPXJlbGluawotICBlbHNlCi0gICAgIyBXZSBj
YW4gbGluayB3aXRob3V0IGhhcmRjb2RpbmcsIGFuZCB3ZSBjYW4gaGFyZGNvZGUgbm9uZXhpc3Rp
bmcgZGlycy4KLSAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPWltbWVkaWF0
ZQotICBmaQotZWxzZQotICAjIFdlIGNhbm5vdCBoYXJkY29kZSBhbnl0aGluZywgb3IgZWxzZSB3
ZSBjYW4gb25seSBoYXJkY29kZSBleGlzdGluZwotICAjIGRpcmVjdG9yaWVzLgotICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX2FjdGlvbiwgJDEpPXVuc3VwcG9ydGVkCi1maQotQUNfTVNHX1JFU1VM
VChbJF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfYWN0aW9uLCAkMSldKQotCi1pZiB0ZXN0ICIkX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9hY3Rpb24sICQxKSIgPSByZWxpbms7IHRoZW4KLSAgIyBGYXN0
IGluc3RhbGxhdGlvbiBpcyBub3Qgc3VwcG9ydGVkCi0gIGVuYWJsZV9mYXN0X2luc3RhbGw9bm8K
LWVsaWYgdGVzdCAiJHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aCIgPSB5ZXMgfHwKLSAgICAg
dGVzdCAiJGVuYWJsZV9zaGFyZWQiID0gbm87IHRoZW4KLSAgIyBGYXN0IGluc3RhbGxhdGlvbiBp
cyBub3QgbmVjZXNzYXJ5Ci0gIGVuYWJsZV9mYXN0X2luc3RhbGw9bmVlZGxlc3MKLWZpCi1dKSMg
QUNfTElCVE9PTF9QUk9HX0xEX0hBUkRDT0RFX0xJQlBBVEgKLQotCi0jIEFDX0xJQlRPT0xfU1lT
X0xJQl9TVFJJUAotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLUFDX0RFRlVOKFtBQ19MSUJU
T09MX1NZU19MSUJfU1RSSVBdLAotW3N0cmlwbGliPQotb2xkX3N0cmlwbGliPQotQUNfTVNHX0NI
RUNLSU5HKFt3aGV0aGVyIHN0cmlwcGluZyBsaWJyYXJpZXMgaXMgcG9zc2libGVdKQotaWYgdGVz
dCAtbiAiJFNUUklQIiAmJiAkU1RSSVAgLVYgMj4mMSB8IGdyZXAgIkdOVSBzdHJpcCIgPi9kZXYv
bnVsbDsgdGhlbgotICB0ZXN0IC16ICIkb2xkX3N0cmlwbGliIiAmJiBvbGRfc3RyaXBsaWI9IiRT
VFJJUCAtLXN0cmlwLWRlYnVnIgotICB0ZXN0IC16ICIkc3RyaXBsaWIiICYmIHN0cmlwbGliPSIk
U1RSSVAgLS1zdHJpcC11bm5lZWRlZCIKLSAgQUNfTVNHX1JFU1VMVChbeWVzXSkKLWVsc2UKLSAg
QUNfTVNHX1JFU1VMVChbbm9dKQotZmkKLV0pIyBBQ19MSUJUT09MX1NZU19MSUJfU1RSSVAKLQot
Ci0jIEFDX0xJQlRPT0xfU1lTX0RZTkFNSUNfTElOS0VSCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCi0jIFBPUlRNRSBGaWxsIGluIHlvdXIgbGQuc28gY2hhcmFjdGVyaXN0aWNzCi1B
Q19ERUZVTihbQUNfTElCVE9PTF9TWVNfRFlOQU1JQ19MSU5LRVJdLAotW0FDX01TR19DSEVDS0lO
RyhbZHluYW1pYyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzXSkKLWxpYnJhcnlfbmFtZXNfc3BlYz0K
LWxpYm5hbWVfc3BlYz0nbGliJG5hbWUnCi1zb25hbWVfc3BlYz0KLXBvc3RpbnN0YWxsX2NtZHM9
Ci1wb3N0dW5pbnN0YWxsX2NtZHM9Ci1maW5pc2hfY21kcz0KLWZpbmlzaF9ldmFsPQotc2hsaWJw
YXRoX3Zhcj0KLXNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD11bmtub3duCi12ZXJzaW9uX3R5
cGU9bm9uZQotZHluYW1pY19saW5rZXI9IiRob3N0X29zIGxkLnNvIgotc3lzX2xpYl9kbHNlYXJj
aF9wYXRoX3NwZWM9Ii9saWIgL3Vzci9saWIiCi1zeXNfbGliX3NlYXJjaF9wYXRoX3NwZWM9Ii9s
aWIgL3Vzci9saWIgL3Vzci9sb2NhbC9saWIiCi1uZWVkX2xpYl9wcmVmaXg9dW5rbm93bgotaGFy
ZGNvZGVfaW50b19saWJzPW5vCi0KLSMgd2hlbiB5b3Ugc2V0IG5lZWRfdmVyc2lvbiB0byBubywg
bWFrZSBzdXJlIGl0IGRvZXMgbm90IGNhdXNlIC1zZXRfdmVyc2lvbgotIyBmbGFncyB0byBiZSBs
ZWZ0IHdpdGhvdXQgYXJndW1lbnRzCi1uZWVkX3ZlcnNpb249dW5rbm93bgotCi1jYXNlICRob3N0
X29zIGluCi1haXgzKikKLSAgdmVyc2lvbl90eXBlPWxpbnV4Ci0gIGxpYnJhcnlfbmFtZXNfc3Bl
Yz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kdmVyc3VmZml4ICRsaWJuYW1lLmEnCi0gIHNobGli
cGF0aF92YXI9TElCUEFUSAotCi0gICMgQUlYIDMgaGFzIG5vIHZlcnNpb25pbmcgc3VwcG9ydCwg
c28gd2UgYXBwZW5kIGEgbWFqb3IgdmVyc2lvbiB0byB0aGUgbmFtZS4KLSAgc29uYW1lX3NwZWM9
JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yJwotICA7OwotCi1haXg0KiB8IGFpeDUqKQot
ICB2ZXJzaW9uX3R5cGU9bGludXgKLSAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4K
LSAgICAjIEFJWCA1IHN1cHBvcnRzIElBNjQKLSAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGli
bmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHZlcnN1ZmZp
eCAkbGlibmFtZS5zbycKLSAgICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAotICBlbHNl
Ci0gICAgIyBXaXRoIEdDQyB1cCB0byAyLjk1LngsIGNvbGxlY3QyIHdvdWxkIGNyZWF0ZSBhbiBp
bXBvcnQgZmlsZQotICAgICMgZm9yIGRlcGVuZGVuY2UgbGlicmFyaWVzLiAgVGhlIGltcG9ydCBm
aWxlIHdvdWxkIHN0YXJ0IHdpdGgKLSAgICAjIHRoZSBsaW5lIGAjISAuJy4gIFRoaXMgd291bGQg
Y2F1c2UgdGhlIGdlbmVyYXRlZCBsaWJyYXJ5IHRvCi0gICAgIyBkZXBlbmQgb24gYC4nLCBhbHdh
eXMgYW4gaW52YWxpZCBsaWJyYXJ5LiAgVGhpcyB3YXMgZml4ZWQgaW4KLSAgICAjIGRldmVsb3Bt
ZW50IHNuYXBzaG90cyBvZiBHQ0MgcHJpb3IgdG8gMy4wLgotICAgIGNhc2UgJGhvc3Rfb3MgaW4K
LSAgICAgIGFpeDQgfCBhaXg0LltbMDFdXSB8IGFpeDQuW1swMV1dLiopCi0gICAgICBpZiB7IGVj
aG8gJyNpZiBfX0dOVUNfXyA+IDIgfHwgKF9fR05VQ19fID09IDIgJiYgX19HTlVDX01JTk9SX18g
Pj0gOTcpJwotCSAgIGVjaG8gJyB5ZXMgJwotCSAgIGVjaG8gJyNlbmRpZic7IH0gfCAke0NDfSAt
RSAtIHwgZ3JlcCB5ZXMgPiAvZGV2L251bGw7IHRoZW4KLQk6Ci0gICAgICBlbHNlCi0JY2FuX2J1
aWxkX3NoYXJlZD1ubwotICAgICAgZmkKLSAgICAgIDs7Ci0gICAgZXNhYwotICAgICMgQUlYIChv
biBQb3dlciopIGhhcyBubyB2ZXJzaW9uaW5nIHN1cHBvcnQsIHNvIGN1cnJlbnRseSB3ZSBjYW4g
bm90IGhhcmRjb2RlIGNvcnJlY3QKLSAgICAjIHNvbmFtZSBpbnRvIGV4ZWN1dGFibGUuIFByb2Jh
Ymx5IHdlIGNhbiBhZGQgdmVyc2lvbmluZyBzdXBwb3J0IHRvCi0gICAgIyBjb2xsZWN0Miwgc28g
YWRkaXRpb25hbCBsaW5rcyBjYW4gYmUgdXNlZnVsIGluIGZ1dHVyZS4KLSAgICBpZiB0ZXN0ICIk
YWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSB5ZXM7IHRoZW4KLSAgICAgICMgSWYgdXNpbmcgcnVu
IHRpbWUgbGlua2luZyAob24gQUlYIDQuMiBvciBsYXRlcikgdXNlIGxpYjxuYW1lPi5zbwotICAg
ICAgIyBpbnN0ZWFkIG9mIGxpYjxuYW1lPi5hIHRvIGxldCBwZW9wbGUga25vdyB0aGF0IHRoZXNl
IGFyZSBub3QKLSAgICAgICMgdHlwaWNhbCBBSVggc2hhcmVkIGxpYnJhcmllcy4KLSAgICAgIGxp
YnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7bGli
bmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICRsaWJuYW1lLnNvJwotICAgIGVsc2UKLSAgICAgICMg
V2UgcHJlc2VydmUgLmEgYXMgZXh0ZW5zaW9uIGZvciBzaGFyZWQgbGlicmFyaWVzIHRocm91Z2gg
QUlYNC4yCi0gICAgICAjIGFuZCBsYXRlciB3aGVuIHdlIGFyZSBub3QgZG9pbmcgcnVuIHRpbWUg
bGlua2luZy4KLSAgICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0u
YSAkbGlibmFtZS5hJwotICAgICAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNv
JG1ham9yJwotICAgIGZpCi0gICAgc2hsaWJwYXRoX3Zhcj1MSUJQQVRICi0gIGZpCi0gIDs7Ci0K
LWFtaWdhb3MqKQotICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lLml4bGlicmFyeSAkbGli
bmFtZS5hJwotICAjIENyZWF0ZSAke2xpYm5hbWV9X2l4bGlicmFyeS5hIGVudHJpZXMgaW4gL3N5
cy9saWJzLgotICBmaW5pc2hfZXZhbD0nZm9yIGxpYiBpbiBgbHMgJGxpYmRpci8qLml4bGlicmFy
eSAyPi9kZXYvbnVsbGA7IGRvIGxpYm5hbWU9YCRlY2hvICJYJGxpYiIgfCAkWHNlZCAtZSAnXCcn
cyVeLiovXChbW14vXV0qXClcLml4bGlicmFyeSQlXDElJ1wnJ2A7IHRlc3QgJHJtIC9zeXMvbGli
cy8ke2xpYm5hbWV9X2l4bGlicmFyeS5hOyAkc2hvdyAiKGNkIC9zeXMvbGlicyAmJiAkTE5fUyAk
bGliICR7bGlibmFtZX1faXhsaWJyYXJ5LmEpIjsgKGNkIC9zeXMvbGlicyAmJiAkTE5fUyAkbGli
ICR7bGlibmFtZX1faXhsaWJyYXJ5LmEpIHx8IGV4aXQgMTsgZG9uZScKLSAgOzsKLQotYmVvcyop
Ci0gIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfS5zbycKLSAgZHluYW1pY19saW5rZXI9
IiRob3N0X29zIGxkLnNvIgotICBzaGxpYnBhdGhfdmFyPUxJQlJBUllfUEFUSAotICA7OwotCi1i
c2RpNCopCi0gIHZlcnNpb25fdHlwZT1saW51eAotICBuZWVkX3ZlcnNpb249bm8KLSAgbGlicmFy
eV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZmaXggJHtsaWJuYW1l
fSR7cmVsZWFzZX0uc28kbWFqb3IgJGxpYm5hbWUuc28nCi0gIHNvbmFtZV9zcGVjPScke2xpYm5h
bWV9JHtyZWxlYXNlfS5zbyRtYWpvcicKLSAgZmluaXNoX2NtZHM9J1BBVEg9IlwkUEFUSDovc2Jp
biIgbGRjb25maWcgJGxpYmRpcicKLSAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BBVEgKLSAg
c3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjPSIvc2hsaWIgL3Vzci9saWIgL3Vzci9YMTEvbGliIC91
c3IvY29udHJpYi9saWIgL2xpYiAvdXNyL2xvY2FsL2xpYiIKLSAgc3lzX2xpYl9kbHNlYXJjaF9w
YXRoX3NwZWM9Ii9zaGxpYiAvdXNyL2xpYiAvdXNyL2xvY2FsL2xpYiIKLSAgIyB0aGUgZGVmYXVs
dCBsZC5zby5jb25mIGFsc28gY29udGFpbnMgL3Vzci9jb250cmliL2xpYiBhbmQKLSAgIyAvdXNy
L1gxMVI2L2xpYiAoL3Vzci9YMTEgaXMgYSBsaW5rIHRvIC91c3IvWDExUjYpLCBidXQgbGV0IHVz
IGFsbG93Ci0gICMgbGlidG9vbCB0byBoYXJkLWNvZGUgdGhlc2UgaW50byBwcm9ncmFtcwotICA7
OwotCi1jeWd3aW4qIHwgbWluZ3cqIHwgcHczMiopCi0gIHZlcnNpb25fdHlwZT13aW5kb3dzCi0g
IG5lZWRfdmVyc2lvbj1ubwotICBuZWVkX2xpYl9wcmVmaXg9bm8KLSAgY2FzZSAkR0NDLCRob3N0
X29zIGluCi0gIHllcyxjeWd3aW4qKQotICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUu
ZGxsLmEnCi0gICAgc3lzX2xpYl9zZWFyY2hfcGF0aF9zcGVjPSIvbGliIC9saWIvdzMyYXBpIC91
c3IvbGliIC91c3IvbG9jYWwvbGliIgotICAgIHNvbmFtZV9zcGVjPSdgZWNobyAke2xpYm5hbWV9
IHwgc2VkIC1lICdzL15saWIvY3lnLydgYGVjaG8gJHtyZWxlYXNlfSB8IHNlZCAtZSAncy9bWy5d
XS8tL2cnYCR7dmVyc3VmZml4fS5kbGwnCi0gICAgcG9zdGluc3RhbGxfY21kcz0nZGxwYXRoPWBi
YXNoIDI+JjEgLWMgJ1wnJy4gJGRpci8ke2ZpbGV9aTtlY2hvIFwkZGxuYW1lJ1wnJ2B+Ci0gICAg
ICBkbGRpcj0kZGVzdGRpci9gZGlybmFtZSBcJGRscGF0aGB+Ci0gICAgICB0ZXN0IC1kIFwkZGxk
aXIgfHwgbWtkaXIgLXAgXCRkbGRpcn4KLSAgICAgICRpbnN0YWxsX3Byb2cgLmxpYnMvJGRsbmFt
ZSBcJGRsZGlyLyRkbG5hbWUnCi0gICAgcG9zdHVuaW5zdGFsbF9jbWRzPSdkbGRsbD1gYmFzaCAy
PiYxIC1jICdcJycuICRmaWxlOyBlY2hvIFwkZGxuYW1lJ1wnJ2B+Ci0gICAgICBkbHBhdGg9JGRp
ci9cJGRsZGxsfgotICAgICAgICRybSBcJGRscGF0aCcKLSAgICA7OwotICB5ZXMsbWluZ3cqKQot
ICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfWBlY2hvICR7cmVsZWFzZX0gfCBzZWQg
LWUgJ3MvW1suXV0vLS9nJ2Ake3ZlcnN1ZmZpeH0uZGxsJwotICAgIHN5c19saWJfc2VhcmNoX3Bh
dGhfc3BlYz1gJENDIC1wcmludC1zZWFyY2gtZGlycyB8IGdyZXAgIl5saWJyYXJpZXM6IiB8IHNl
ZCAtZSAicy9ebGlicmFyaWVzOi8vImAKLSAgICBpZiBlY2hvICIkc3lzX2xpYl9zZWFyY2hfcGF0
aF9zcGVjIiB8IFtlZ3JlcCAnO1tDLVpdOi8nID4vZGV2L251bGxdOyB0aGVuCi0gICAgICAjIEl0
IGlzIG1vc3QgcHJvYmFibHkgYSBXaW5kb3dzIGZvcm1hdCBQQVRIIHByaW50ZWQgYnkKLSAgICAg
ICMgbWluZ3cgZ2NjLCBidXQgd2UgYXJlIHJ1bm5pbmcgb24gQ3lnd2luLiBHY2MgcHJpbnRzIGl0
cyBzZWFyY2gKLSAgICAgICMgcGF0aCB3aXRoIDsgc2VwYXJhdG9ycywgYW5kIHdpdGggZHJpdmUg
bGV0dGVycy4gV2UgY2FuIGhhbmRsZSB0aGUKLSAgICAgICMgZHJpdmUgbGV0dGVycyAoY3lnd2lu
IGZpbGV1dGlscyB1bmRlcnN0YW5kcyB0aGVtKSwgc28gbGVhdmUgdGhlbSwKLSAgICAgICMgZXNw
ZWNpYWxseSBhcyB3ZSBtaWdodCBwYXNzIGZpbGVzIGZvdW5kIHRoZXJlIHRvIGEgbWluZ3cgb2Jq
ZHVtcCwKLSAgICAgICMgd2hpY2ggd291bGRuJ3QgdW5kZXJzdGFuZCBhIGN5Z3dpbmlmaWVkIHBh
dGguIEFoaC4KLSAgICAgIHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz1gZWNobyAiJHN5c19saWJf
c2VhcmNoX3BhdGhfc3BlYyIgfCBzZWQgLWUgJ3MvOy8gL2cnYAotICAgIGVsc2UKLSAgICAgIHN5
c19saWJfc2VhcmNoX3BhdGhfc3BlYz1gZWNobyAiJHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYyIg
fCBzZWQgIC1lICJzLyRQQVRIX1NFUEFSQVRPUi8gL2ciYAotICAgIGZpCi0gICAgOzsKLSAgeWVz
LHB3MzIqKQotICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nYGVjaG8gJHtsaWJuYW1lfSB8IHNlZCAt
ZSAncy9ebGliL3B3LydgYGVjaG8gJHtyZWxlYXNlfSB8IHNlZCAtZSAncy9bLl0vLS9nJ2Ake3Zl
cnN1ZmZpeH0uZGxsJwotICAgIDs7Ci0gICopCi0gICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xp
Ym5hbWV9YGVjaG8gJHtyZWxlYXNlfSB8IHNlZCAtZSAncy9bWy5dXS8tL2cnYCR7dmVyc3VmZml4
fS5kbGwgJGxpYm5hbWUubGliJwotICAgIDs7Ci0gIGVzYWMKLSAgZHluYW1pY19saW5rZXI9J1dp
bjMyIGxkLmV4ZScKLSAgIyBGSVhNRTogZmlyc3Qgd2Ugc2hvdWxkIHNlYXJjaCAuIGFuZCB0aGUg
ZGlyZWN0b3J5IHRoZSBleGVjdXRhYmxlIGlzIGluCi0gIHNobGlicGF0aF92YXI9UEFUSAotICA7
OwotCi1kYXJ3aW4qIHwgcmhhcHNvZHkqKQotICBkeW5hbWljX2xpbmtlcj0iJGhvc3Rfb3MgZHls
ZCIKLSAgdmVyc2lvbl90eXBlPWRhcndpbgotICBuZWVkX2xpYl9wcmVmaXg9bm8KLSAgbmVlZF92
ZXJzaW9uPW5vCi0gICMgRklYTUU6IFJlbHlpbmcgb24gcG9zaXh5ICQoKSB3aWxsIGNhdXNlIHBy
b2JsZW1zIGZvcgotICAjICAgICAgICBjcm9zcy1jb21waWxhdGlvbiwgYnV0IHVuZm9ydHVuYXRl
bHkgdGhlIGVjaG8gdGVzdHMgZG8gbm90Ci0gICMgICAgICAgIHlldCBkZXRlY3QgenNoIGVjaG8n
cyByZW1vdmFsIG9mIFwgZXNjYXBlcy4KLSAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9
JHtyZWxlYXNlfSR7dmVyc3VmZml4fS4kKHRlc3QgLiRtb2R1bGUgPSAueWVzICYmIGVjaG8gc28g
fHwgZWNobyBkeWxpYikgJHtsaWJuYW1lfSR7cmVsZWFzZX0ke21ham9yfS4kKHRlc3QgLiRtb2R1
bGUgPSAueWVzICYmIGVjaG8gc28gfHwgZWNobyBkeWxpYikgJHtsaWJuYW1lfS4kKHRlc3QgLiRt
b2R1bGUgPSAueWVzICYmIGVjaG8gc28gfHwgZWNobyBkeWxpYiknCi0gIHNvbmFtZV9zcGVjPSck
e2xpYm5hbWV9JHtyZWxlYXNlfSR7bWFqb3J9LiQodGVzdCAuJG1vZHVsZSA9IC55ZXMgJiYgZWNo
byBzbyB8fCBlY2hvIGR5bGliKScKLSAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcwot
ICBzaGxpYnBhdGhfdmFyPURZTERfTElCUkFSWV9QQVRICi0gIDs7Ci0KLWRndXgqKQotICB2ZXJz
aW9uX3R5cGU9bGludXgKLSAgbmVlZF9saWJfcHJlZml4PW5vCi0gIG5lZWRfdmVyc2lvbj1ubwot
ICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHZlcnN1ZmZpeCAk
e2xpYm5hbWV9JHtyZWxlYXNlfS5zbyRtYWpvciAkbGlibmFtZS5zbycKLSAgc29uYW1lX3NwZWM9
JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yJwotICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJB
UllfUEFUSAotICA7OwotCi1mcmVlYnNkMSopCi0gIGR5bmFtaWNfbGlua2VyPW5vCi0gIDs7Ci0K
LWZyZWVic2QqKQotICBvYmpmb3JtYXQ9YHRlc3QgLXggL3Vzci9iaW4vb2JqZm9ybWF0ICYmIC91
c3IvYmluL29iamZvcm1hdCB8fCBlY2hvIGFvdXRgCi0gIHZlcnNpb25fdHlwZT1mcmVlYnNkLSRv
Ympmb3JtYXQKLSAgY2FzZSAkdmVyc2lvbl90eXBlIGluCi0gICAgZnJlZWJzZC1lbGYqKQotICAg
ICAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZmaXgg
JHtsaWJuYW1lfSR7cmVsZWFzZX0uc28gJGxpYm5hbWUuc28nCi0gICAgICBuZWVkX3ZlcnNpb249
bm8KLSAgICAgIG5lZWRfbGliX3ByZWZpeD1ubwotICAgICAgOzsKLSAgICBmcmVlYnNkLSopCi0g
ICAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHZlcnN1ZmZp
eCAkbGlibmFtZS5zbyR2ZXJzdWZmaXgnCi0gICAgICBuZWVkX3ZlcnNpb249eWVzCi0gICAgICA7
OwotICBlc2FjCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICi0gIGNhc2UgJGhvc3Rf
b3MgaW4KLSAgZnJlZWJzZDIqKQotICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMK
LSAgICA7OwotICBmcmVlYnNkMy5bMDFdKiB8IGZyZWVic2RlbGYzLlswMV0qKQotICAgIHNobGli
cGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKLSAgICBoYXJkY29kZV9pbnRvX2xpYnM9eWVzCi0g
ICAgOzsKLSAgKikgIyBmcm9tIDMuMiBvbgotICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0
aD1ubwotICAgIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKLSAgICA7OwotICBlc2FjCi0gIDs7Ci0K
LWdudSopCi0gIHZlcnNpb25fdHlwZT1saW51eAotICBuZWVkX2xpYl9wcmVmaXg9bm8KLSAgbmVl
ZF92ZXJzaW9uPW5vCi0gIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0u
c28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHttYWpvcn0gJHtsaWJuYW1lfS5z
bycKLSAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yJwotICBzaGxp
YnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAotICBoYXJkY29kZV9pbnRvX2xpYnM9eWVzCi0gIDs7
Ci0KLWhwdXg5KiB8IGhwdXgxMCogfCBocHV4MTEqKQotICAjIEdpdmUgYSBzb25hbWUgY29ycmVz
cG9uZGluZyB0byB0aGUgbWFqb3IgdmVyc2lvbiBzbyB0aGF0IGRsZC5zbCByZWZ1c2VzIHRvCi0g
ICMgbGluayBhZ2FpbnN0IG90aGVyIHZlcnNpb25zLgotICB2ZXJzaW9uX3R5cGU9c3Vub3MKLSAg
bmVlZF9saWJfcHJlZml4PW5vCi0gIG5lZWRfdmVyc2lvbj1ubwotICBpZiB0ZXN0ICIkaG9zdF9j
cHUiID0gaWE2NDsgdGhlbgotICAgIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKLSAgICBkeW5hbWlj
X2xpbmtlcj0iJGhvc3Rfb3MgZGxkLnNvIgotICAgIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9Q
QVRICi0gICAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPXllcyAjIFVubGVzcyArbm9lbnZ2
YXIgaXMgc3BlY2lmaWVkLgotICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVs
ZWFzZX0uc28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICRsaWJuYW1l
LnNvJwotICAgIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyRtYWpvcicKLSAg
ICBpZiB0ZXN0ICJYJEhQVVhfSUE2NF9NT0RFIiA9IFgzMjsgdGhlbgotICAgICAgc3lzX2xpYl9z
ZWFyY2hfcGF0aF9zcGVjPSIvdXNyL2xpYi9ocHV4MzIgL3Vzci9sb2NhbC9saWIvaHB1eDMyIC91
c3IvbG9jYWwvbGliIgotICAgIGVsc2UKLSAgICAgIHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0i
L3Vzci9saWIvaHB1eDY0IC91c3IvbG9jYWwvbGliL2hwdXg2NCIKLSAgICBmaQotICAgIHN5c19s
aWJfZGxzZWFyY2hfcGF0aF9zcGVjPSRzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMKLSAgZWxzZQot
ICAgIGR5bmFtaWNfbGlua2VyPSIkaG9zdF9vcyBkbGQuc2wiCi0gICAgc2hsaWJwYXRoX3Zhcj1T
SExJQl9QQVRICi0gICAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPW5vICMgK3MgaXMgcmVx
dWlyZWQgdG8gZW5hYmxlIFNITElCX1BBVEgKLSAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGli
bmFtZX0ke3JlbGVhc2V9LnNsJHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtyZWxlYXNlfS5zbCRtYWpv
ciAkbGlibmFtZS5zbCcKLSAgICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc2wk
bWFqb3InCi0gIGZpCi0gICMgSFAtVVggcnVucyAqcmVhbGx5KiBzbG93bHkgdW5sZXNzIHNoYXJl
ZCBsaWJyYXJpZXMgYXJlIG1vZGUgNTU1LgotICBwb3N0aW5zdGFsbF9jbWRzPSdjaG1vZCA1NTUg
JGxpYicKLSAgOzsKLQotaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KikKLSAgY2FzZSAkaG9z
dF9vcyBpbgotICAgIG5vbnN0b3B1eCopIHZlcnNpb25fdHlwZT1ub25zdG9wdXggOzsKLSAgICAq
KSAgICAgICAgICB2ZXJzaW9uX3R5cGU9aXJpeCA7OwotICBlc2FjCi0gIG5lZWRfbGliX3ByZWZp
eD1ubwotICBuZWVkX3ZlcnNpb249bm8KLSAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVh
c2V9LnNvJG1ham9yJwotICBsaWJyYXJ5X25hbWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9
LnNvJHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyRtYWpvciAke2xpYm5hbWV9JHty
ZWxlYXNlfS5zbyAkbGlibmFtZS5zbycKLSAgY2FzZSAkaG9zdF9vcyBpbgotICBpcml4NSogfCBu
b25zdG9wdXgqKQotICAgIGxpYnN1ZmY9IHNobGlic3VmZj0KLSAgICA7OwotICAqKQotICAgIGNh
c2UgJExEIGluICMgbGlidG9vbC5tNCB3aWxsIGFkZCBvbmUgb2YgdGhlc2Ugc3dpdGNoZXMgdG8g
TEQKLSAgICAqLTMyfCoiLTMyICIpIGxpYnN1ZmY9IHNobGlic3VmZj0gbGlibWFnaWM9MzItYml0
OzsKLSAgICAqLW4zMnwqIi1uMzIgIikgbGlic3VmZj0zMiBzaGxpYnN1ZmY9TjMyIGxpYm1hZ2lj
PU4zMjs7Ci0gICAgKi02NHwqIi02NCAiKSBsaWJzdWZmPTY0IHNobGlic3VmZj02NCBsaWJtYWdp
Yz02NC1iaXQ7OwotICAgICopIGxpYnN1ZmY9IHNobGlic3VmZj0gbGlibWFnaWM9bmV2ZXItbWF0
Y2g7OwotICAgIGVzYWMKLSAgICA7OwotICBlc2FjCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFS
WSR7c2hsaWJzdWZmfV9QQVRICi0gIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1ubwotICBz
eXNfbGliX3NlYXJjaF9wYXRoX3NwZWM9Ii91c3IvbGliJHtsaWJzdWZmfSAvbGliJHtsaWJzdWZm
fSAvdXNyL2xvY2FsL2xpYiR7bGlic3VmZn0iCi0gIHN5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVj
PSIvdXNyL2xpYiR7bGlic3VmZn0gL2xpYiR7bGlic3VmZn0iCi0gIDs7Ci0KLSMgTm8gc2hhcmVk
IGxpYiBzdXBwb3J0IGZvciBMaW51eCBvbGRsZCwgYW91dCwgb3IgY29mZi4KLWxpbnV4Km9sZGxk
KiB8IGxpbnV4KmFvdXQqIHwgbGludXgqY29mZiopCi0gIGR5bmFtaWNfbGlua2VyPW5vCi0gIDs7
Ci0KLSMgVGhpcyBtdXN0IGJlIExpbnV4IEVMRi4KLWxpbnV4KikKLSAgdmVyc2lvbl90eXBlPWxp
bnV4Ci0gIG5lZWRfbGliX3ByZWZpeD1ubwotICBuZWVkX3ZlcnNpb249bm8KLSAgbGlicmFyeV9u
YW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZmaXggJHtsaWJuYW1lfSR7
cmVsZWFzZX0uc28kbWFqb3IgJGxpYm5hbWUuc28nCi0gIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9
JHtyZWxlYXNlfS5zbyRtYWpvcicKLSAgZmluaXNoX2NtZHM9J1BBVEg9IlwkUEFUSDovc2JpbiIg
bGRjb25maWcgLW4gJGxpYmRpcicKLSAgbGlic3VmZj0KLSAgaWYgdGVzdCAieCRMSU5VWF82NF9N
T0RFIiA9IHg2NDsgdGhlbgotICAgICMgU29tZSBwbGF0Zm9ybXMgYXJlIHBlciBkZWZhdWx0IDY0
LWJpdCwgc28gdGhlcmUncyBubyAvbGliNjQKLSAgICBpZiB0ZXN0IC1kIC9saWI2NDsgdGhlbgot
ICAgICAgbGlic3VmZj02NAotICAgIGZpCi0gIGZpCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFS
WV9QQVRICi0gIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1ubwotICBzeXNfbGliX2Rsc2Vh
cmNoX3BhdGhfc3BlYz0iL2xpYiR7bGlic3VmZn0gL3Vzci9saWIke2xpYnN1ZmZ9IgotICBzeXNf
bGliX3NlYXJjaF9wYXRoX3NwZWM9Ii9saWIke2xpYnN1ZmZ9IC91c3IvbGliJHtsaWJzdWZmfSAv
dXNyL2xvY2FsL2xpYiR7bGlic3VmZn0iCi0gICMgVGhpcyBpbXBsaWVzIG5vIGZhc3RfaW5zdGFs
bCwgd2hpY2ggaXMgdW5hY2NlcHRhYmxlLgotICAjIFNvbWUgcmV3b3JrIHdpbGwgYmUgbmVlZGVk
IHRvIGFsbG93IGZvciBmYXN0X2luc3RhbGwKLSAgIyBiZWZvcmUgdGhpcyBjYW4gYmUgZW5hYmxl
ZC4KLSAgaGFyZGNvZGVfaW50b19saWJzPXllcwotCi0gICMgV2UgdXNlZCB0byB0ZXN0IGZvciAv
bGliL2xkLnNvLjEgYW5kIGRpc2FibGUgc2hhcmVkIGxpYnJhcmllcyBvbgotICAjIHBvd2VycGMs
IGJlY2F1c2UgTWtMaW51eCBvbmx5IHN1cHBvcnRlZCBzaGFyZWQgbGlicmFyaWVzIHdpdGggdGhl
Ci0gICMgR05VIGR5bmFtaWMgbGlua2VyLiAgU2luY2UgdGhpcyB3YXMgYnJva2VuIHdpdGggY3Jv
c3MgY29tcGlsZXJzLAotICAjIG1vc3QgcG93ZXJwYy1saW51eCBib3hlcyBzdXBwb3J0IGR5bmFt
aWMgbGlua2luZyB0aGVzZSBkYXlzIGFuZAotICAjIHBlb3BsZSBjYW4gYWx3YXlzIC0tZGlzYWJs
ZS1zaGFyZWQsIHRoZSB0ZXN0IHdhcyByZW1vdmVkLCBhbmQgd2UKLSAgIyBhc3N1bWUgdGhlIEdO
VS9MaW51eCBkeW5hbWljIGxpbmtlciBpcyBpbiB1c2UuCi0gIGR5bmFtaWNfbGlua2VyPSdHTlUv
TGludXggbGQuc28nCi0gIDs7Ci0KLW5ldGJzZCopCi0gIHZlcnNpb25fdHlwZT1zdW5vcwotICBu
ZWVkX2xpYl9wcmVmaXg9bm8KLSAgbmVlZF92ZXJzaW9uPW5vCi0gIGlmIGVjaG8gX19FTEZfXyB8
ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fID4vZGV2L251bGw7IHRoZW4KLSAgICBsaWJyYXJ5X25h
bWVzX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHZlcnN1ZmZpeCAke2xpYm5hbWV9LnNv
JHZlcnN1ZmZpeCcKLSAgICBmaW5pc2hfY21kcz0nUEFUSD0iXCRQQVRIOi9zYmluIiBsZGNvbmZp
ZyAtbSAkbGliZGlyJwotICAgIGR5bmFtaWNfbGlua2VyPSdOZXRCU0QgKGEub3V0KSBsZC5zbycK
LSAgZWxzZQotICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28k
dmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICR7bGlibmFtZX0ke3JlbGVh
c2V9LnNvICR7bGlibmFtZX0uc28nCi0gICAgc29uYW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVh
c2V9LnNvJG1ham9yJwotICAgIGR5bmFtaWNfbGlua2VyPSdOZXRCU0QgbGQuZWxmX3NvJwotICBm
aQotICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAotICBzaGxpYnBhdGhfb3ZlcnJpZGVz
X3J1bnBhdGg9eWVzCi0gIGhhcmRjb2RlX2ludG9fbGlicz15ZXMKLSAgOzsKLQotbmV3c29zNikK
LSAgdmVyc2lvbl90eXBlPWxpbnV4Ci0gIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7
cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICRsaWJu
YW1lLnNvJwotICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAotICBzaGxpYnBhdGhfb3Zl
cnJpZGVzX3J1bnBhdGg9eWVzCi0gIDs7Ci0KLW50by1xbngpCi0gIHZlcnNpb25fdHlwZT1saW51
eAotICBuZWVkX2xpYl9wcmVmaXg9bm8KLSAgbmVlZF92ZXJzaW9uPW5vCi0gIGxpYnJhcnlfbmFt
ZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3Jl
bGVhc2V9LnNvJG1ham9yICRsaWJuYW1lLnNvJwotICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7
cmVsZWFzZX0uc28kbWFqb3InCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICi0gIHNo
bGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKLSAgOzsKLQotb3BlbmJzZCopCi0gIHZlcnNp
b25fdHlwZT1zdW5vcwotICBuZWVkX2xpYl9wcmVmaXg9bm8KLSAgbmVlZF92ZXJzaW9uPW5vCi0g
IGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7
bGlibmFtZX0uc28kdmVyc3VmZml4JwotICBmaW5pc2hfY21kcz0nUEFUSD0iXCRQQVRIOi9zYmlu
IiBsZGNvbmZpZyAtbSAkbGliZGlyJwotICBzaGxpYnBhdGhfdmFyPUxEX0xJQlJBUllfUEFUSAot
ICBpZiB0ZXN0IC16ICJgZWNobyBfX0VMRl9fIHwgJENDIC1FIC0gfCBncmVwIF9fRUxGX19gIiB8
fCB0ZXN0ICIkaG9zdF9vcy0kaG9zdF9jcHUiID0gIm9wZW5ic2QyLjgtcG93ZXJwYyI7IHRoZW4K
LSAgICBjYXNlICRob3N0X29zIGluCi0gICAgICBvcGVuYnNkMi5bWzg5XV0gfCBvcGVuYnNkMi5b
Wzg5XV0uKikKLQlzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9bm8KLQk7OwotICAgICAgKikK
LQlzaGxpYnBhdGhfb3ZlcnJpZGVzX3J1bnBhdGg9eWVzCi0JOzsKLSAgICAgIGVzYWMKLSAgZWxz
ZQotICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKLSAgZmkKLSAgOzsKLQotb3My
KikKLSAgbGlibmFtZV9zcGVjPSckbmFtZScKLSAgbmVlZF9saWJfcHJlZml4PW5vCi0gIGxpYnJh
cnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUuZGxsICRsaWJuYW1lLmEnCi0gIGR5bmFtaWNfbGlua2Vy
PSdPUy8yIGxkLmV4ZScKLSAgc2hsaWJwYXRoX3Zhcj1MSUJQQVRICi0gIDs7Ci0KLW9zZjMqIHwg
b3NmNCogfCBvc2Y1KikKLSAgdmVyc2lvbl90eXBlPW9zZgotICBuZWVkX2xpYl9wcmVmaXg9bm8K
LSAgbmVlZF92ZXJzaW9uPW5vCi0gIHNvbmFtZV9zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5z
bycKLSAgbGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZm
aXggJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28gJGxpYm5hbWUuc28nCi0gIHNobGlicGF0aF92YXI9
TERfTElCUkFSWV9QQVRICi0gIHN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0iL3Vzci9zaGxpYiAv
dXNyL2Njcy9saWIgL3Vzci9saWIvY21wbHJzL2NjIC91c3IvbGliIC91c3IvbG9jYWwvbGliIC92
YXIvc2hsaWIiCi0gIHN5c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjPSIkc3lzX2xpYl9zZWFyY2hf
cGF0aF9zcGVjIgotICA7OwotCi1zY28zLjJ2NSopCi0gIHZlcnNpb25fdHlwZT1vc2YKLSAgc29u
YW1lX3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yJwotICBsaWJyYXJ5X25hbWVz
X3NwZWM9JyR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJHZlcnN1ZmZpeCAke2xpYm5hbWV9JHtyZWxl
YXNlfS5zbyRtYWpvciAkbGlibmFtZS5zbycKLSAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BB
VEgKLSAgOzsKLQotc29sYXJpcyopCi0gIHZlcnNpb25fdHlwZT1saW51eAotICBuZWVkX2xpYl9w
cmVmaXg9bm8KLSAgbmVlZF92ZXJzaW9uPW5vCi0gIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJu
YW1lfSR7cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9y
ICRsaWJuYW1lLnNvJwotICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kbWFq
b3InCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICi0gIHNobGlicGF0aF9vdmVycmlk
ZXNfcnVucGF0aD15ZXMKLSAgaGFyZGNvZGVfaW50b19saWJzPXllcwotICAjIGxkZCBjb21wbGFp
bnMgdW5sZXNzIGxpYnJhcmllcyBhcmUgZXhlY3V0YWJsZQotICBwb3N0aW5zdGFsbF9jbWRzPSdj
aG1vZCAreCAkbGliJwotICA7OwotCi1zdW5vczQqKQotICB2ZXJzaW9uX3R5cGU9c3Vub3MKLSAg
bGlicmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZmaXggJHts
aWJuYW1lfS5zbyR2ZXJzdWZmaXgnCi0gIGZpbmlzaF9jbWRzPSdQQVRIPSJcJFBBVEg6L3Vzci9l
dGMiIGxkY29uZmlnICRsaWJkaXInCi0gIHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICi0g
IHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD15ZXMKLSAgaWYgdGVzdCAiJHdpdGhfZ251X2xk
IiA9IHllczsgdGhlbgotICAgIG5lZWRfbGliX3ByZWZpeD1ubwotICBmaQotICBuZWVkX3ZlcnNp
b249eWVzCi0gIDs7Ci0KLXN5c3Y0IHwgc3lzdjQuMnV3MiogfCBzeXN2NC4zKiB8IHN5c3Y1KikK
LSAgdmVyc2lvbl90eXBlPWxpbnV4Ci0gIGxpYnJhcnlfbmFtZXNfc3BlYz0nJHtsaWJuYW1lfSR7
cmVsZWFzZX0uc28kdmVyc3VmZml4ICR7bGlibmFtZX0ke3JlbGVhc2V9LnNvJG1ham9yICRsaWJu
YW1lLnNvJwotICBzb25hbWVfc3BlYz0nJHtsaWJuYW1lfSR7cmVsZWFzZX0uc28kbWFqb3InCi0g
IHNobGlicGF0aF92YXI9TERfTElCUkFSWV9QQVRICi0gIGNhc2UgJGhvc3RfdmVuZG9yIGluCi0g
ICAgc25pKQotICAgICAgc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRoPW5vCi0gICAgICA7Owot
ICAgIG1vdG9yb2xhKQotICAgICAgbmVlZF9saWJfcHJlZml4PW5vCi0gICAgICBuZWVkX3ZlcnNp
b249bm8KLSAgICAgIHNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD1ubwotICAgICAgc3lzX2xp
Yl9zZWFyY2hfcGF0aF9zcGVjPScvbGliIC91c3IvbGliIC91c3IvY2NzL2xpYicKLSAgICAgIDs7
Ci0gIGVzYWMKLSAgOzsKLQotc3lzdjQqTVAqKQotICBpZiB0ZXN0IC1kIC91c3IvbmVjIDt0aGVu
Ci0gICAgdmVyc2lvbl90eXBlPWxpbnV4Ci0gICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFt
ZS5zby4kdmVyc3VmZml4ICRsaWJuYW1lLnNvLiRtYWpvciAkbGlibmFtZS5zbycKLSAgICBzb25h
bWVfc3BlYz0nJGxpYm5hbWUuc28uJG1ham9yJwotICAgIHNobGlicGF0aF92YXI9TERfTElCUkFS
WV9QQVRICi0gIGZpCi0gIDs7Ci0KLXV0czQqKQotICB2ZXJzaW9uX3R5cGU9bGludXgKLSAgbGli
cmFyeV9uYW1lc19zcGVjPScke2xpYm5hbWV9JHtyZWxlYXNlfS5zbyR2ZXJzdWZmaXggJHtsaWJu
YW1lfSR7cmVsZWFzZX0uc28kbWFqb3IgJGxpYm5hbWUuc28nCi0gIHNvbmFtZV9zcGVjPScke2xp
Ym5hbWV9JHtyZWxlYXNlfS5zbyRtYWpvcicKLSAgc2hsaWJwYXRoX3Zhcj1MRF9MSUJSQVJZX1BB
VEgKLSAgOzsKLQotKikKLSAgZHluYW1pY19saW5rZXI9bm8KLSAgOzsKLWVzYWMKLUFDX01TR19S
RVNVTFQoWyRkeW5hbWljX2xpbmtlcl0pCi10ZXN0ICIkZHluYW1pY19saW5rZXIiID0gbm8gJiYg
Y2FuX2J1aWxkX3NoYXJlZD1ubwotXSkjIEFDX0xJQlRPT0xfU1lTX0RZTkFNSUNfTElOS0VSCi0K
LQotIyBfTFRfQUNfVEFHQ09ORklHCi0jIC0tLS0tLS0tLS0tLS0tLS0KLUFDX0RFRlVOKFtfTFRf
QUNfVEFHQ09ORklHXSwKLVtBQ19BUkdfV0lUSChbdGFnc10sCi0gICAgW0FDX0hFTFBfU1RSSU5H
KFstLXdpdGgtdGFncz1UQUdTXSwKLQlbaW5jbHVkZSBhZGRpdGlvbmFsIGNvbmZpZ3VyYXRpb25z
IEA8OkBDWFgsR0NKQDo+QF0pXSwKLSAgICBbdGFnbmFtZXM9IiR3aXRodmFsIl0sCi0gICAgW3Rh
Z25hbWVzPSJDWFgsR0NKIgotICAgIGNhc2UgJGhvc3Rfb3MgaW4KLSAgICAgIG1pbmd3KnxjeWd3
aW4qKSB0YWduYW1lcz0iJHRhZ25hbWVzLFJDIiA7OwotICAgIGVzYWNdKQotCi1pZiB0ZXN0IC1m
ICIkbHRtYWluIiAmJiB0ZXN0IC1uICIkdGFnbmFtZXMiOyB0aGVuCi0gIGlmIHRlc3QgISAtZiAi
JHtvZmlsZX0iOyB0aGVuCi0gICAgQUNfTVNHX1dBUk4oW291dHB1dCBmaWxlIGAkb2ZpbGUnIGRv
ZXMgbm90IGV4aXN0XSkKLSAgZmkKLQotICBpZiB0ZXN0IC16ICIkTFRDQyI7IHRoZW4KLSAgICBl
dmFsICJgJFNIRUxMICR7b2ZpbGV9IC0tY29uZmlnIHwgZ3JlcCAnXkxUQ0M9J2AiCi0gICAgaWYg
dGVzdCAteiAiJExUQ0MiOyB0aGVuCi0gICAgICBBQ19NU0dfV0FSTihbb3V0cHV0IGZpbGUgYCRv
ZmlsZScgZG9lcyBub3QgbG9vayBsaWtlIGEgbGlidG9vbCBzY3JpcHRdKQotICAgIGVsc2UKLSAg
ICAgIEFDX01TR19XQVJOKFt1c2luZyBgTFRDQz0kTFRDQycsIGV4dHJhY3RlZCBmcm9tIGAkb2Zp
bGUnXSkKLSAgICBmaQotICBmaQotCi0gICMgRXh0cmFjdCBsaXN0IG9mIGF2YWlsYWJsZSB0YWdn
ZWQgY29uZmlndXJhdGlvbnMgaW4gJG9maWxlLgotICAjIE5vdGUgdGhhdCB0aGlzIGFzc3VtZXMg
dGhlIGVudGlyZSBsaXN0IGlzIG9uIG9uZSBsaW5lLgotICBhdmFpbGFibGVfdGFncz1gZ3JlcCAi
XmF2YWlsYWJsZV90YWdzPSIgIiR7b2ZpbGV9IiB8IHNlZCAtZSAncy9hdmFpbGFibGVfdGFncz1c
KC4qJFwpL1wxLycgLWUgJ3MvXCIvL2cnYAotCi0gIGx0X3NhdmVfaWZzPSIkSUZTIjsgSUZTPSIk
e0lGU30kUEFUSF9TRVBBUkFUT1IsIgotICBmb3IgdGFnbmFtZSBpbiAkdGFnbmFtZXM7IGRvCi0g
ICAgSUZTPSIkbHRfc2F2ZV9pZnMiCi0gICAgIyBDaGVjayB3aGV0aGVyIHRhZ25hbWUgY29udGFp
bnMgb25seSB2YWxpZCBjaGFyYWN0ZXJzCi0gICAgY2FzZSBgJGVjaG8gIlgkdGFnbmFtZSIgfCAk
WHNlZCAtZSAnczpbWy1fQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9w
cXJzdHV2d3h5ejEyMzQ1Njc4OTAsL11dOjpnJ2AgaW4KLSAgICAiIikgOzsKLSAgICAqKSAgQUNf
TVNHX0VSUk9SKFtpbnZhbGlkIHRhZyBuYW1lOiAkdGFnbmFtZV0pCi0JOzsKLSAgICBlc2FjCi0K
LSAgICBpZiBncmVwICJeIyAjIyMgQkVHSU4gTElCVE9PTCBUQUcgQ09ORklHOiAkdGFnbmFtZSQi
IDwgIiR7b2ZpbGV9IiA+IC9kZXYvbnVsbAotICAgIHRoZW4KLSAgICAgIEFDX01TR19FUlJPUihb
dGFnIG5hbWUgXCIkdGFnbmFtZVwiIGFscmVhZHkgZXhpc3RzXSkKLSAgICBmaQotCi0gICAgIyBV
cGRhdGUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIHRhZ3MuCi0gICAgaWYgdGVzdCAtbiAiJHRhZ25h
bWUiOyB0aGVuCi0gICAgICBlY2hvIGFwcGVuZGluZyBjb25maWd1cmF0aW9uIHRhZyBcIiR0YWdu
YW1lXCIgdG8gJG9maWxlCi0KLSAgICAgIGNhc2UgJHRhZ25hbWUgaW4KLSAgICAgIENYWCkKLQlB
Q19MSUJUT09MX0xBTkdfQ1hYX0NPTkZJRwotCTs7Ci0KLSAgICAgIEdDSikKLQlBQ19MSUJUT09M
X0xBTkdfR0NKX0NPTkZJRwotCTs7Ci0KLSAgICAgIFJDKQotCUFDX0xJQlRPT0xfTEFOR19SQ19D
T05GSUcKLQk7OwotCi0gICAgICAqKQotCUFDX01TR19FUlJPUihbVW5zdXBwb3J0ZWQgdGFnIG5h
bWU6ICR0YWduYW1lXSkKLQk7OwotICAgICAgZXNhYwotCi0gICAgICAjIEFwcGVuZCB0aGUgbmV3
IHRhZyBuYW1lIHRvIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSB0YWdzLgotICAgICAgYXZhaWxhYmxl
X3RhZ3M9IiRhdmFpbGFibGVfdGFncyAkdGFnbmFtZSIKLSAgICBmaQotICBkb25lCi0gIElGUz0i
JGx0X3NhdmVfaWZzIgotCi0gICMgTm93IHN1YnN0aXR1dGUgdGhlIHVwZGF0ZWQgbGlzdCBvZiBh
dmFpbGFibGUgdGFncy4KLSAgaWYgZXZhbCAic2VkIC1lICdzL15hdmFpbGFibGVfdGFncz0uKlwk
L2F2YWlsYWJsZV90YWdzPVwiJGF2YWlsYWJsZV90YWdzXCIvJyBcIiRvZmlsZVwiID4gXCIke29m
aWxlfVRcIiI7IHRoZW4KLSAgICBtdiAiJHtvZmlsZX1UIiAiJG9maWxlIgotICAgIGNobW9kICt4
ICIkb2ZpbGUiCi0gIGVsc2UKLSAgICBybSAtZiAiJHtvZmlsZX1UIgotICAgIEFDX01TR19FUlJP
UihbdW5hYmxlIHRvIHVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSB0YWdnZWQgY29uZmlndXJhdGlv
bnMuXSkKLSAgZmkKLWZpCi1dKSMgX0xUX0FDX1RBR0NPTkZJRwotCi0KLSMgQUNfTElCVE9PTF9E
TE9QRU4KLSMgLS0tLS0tLS0tLS0tLS0tLS0KLSMgZW5hYmxlIGNoZWNrcyBmb3IgZGxvcGVuIHN1
cHBvcnQKLUFDX0RFRlVOKFtBQ19MSUJUT09MX0RMT1BFTl0sCi0gW0FDX0JFRk9SRShbJDBdLFtB
Q19MSUJUT09MX1NFVFVQXSkKLV0pIyBBQ19MSUJUT09MX0RMT1BFTgotCi0KLSMgQUNfTElCVE9P
TF9XSU4zMl9ETEwKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgZGVjbGFyZSBwYWNrYWdlIHN1
cHBvcnQgZm9yIGJ1aWxkaW5nIHdpbjMyIGRsbCdzCi1BQ19ERUZVTihbQUNfTElCVE9PTF9XSU4z
Ml9ETExdLAotW0FDX0JFRk9SRShbJDBdLCBbQUNfTElCVE9PTF9TRVRVUF0pCi1dKSMgQUNfTElC
VE9PTF9XSU4zMl9ETEwKLQotCi0jIEFDX0VOQUJMRV9TSEFSRUQoW0RFRkFVTFRdKQotIyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgaW1wbGVtZW50IHRoZSAtLWVuYWJsZS1zaGFyZWQg
ZmxhZwotIyBERUZBVUxUIGlzIGVpdGhlciBgeWVzJyBvciBgbm8nLiAgSWYgb21pdHRlZCwgaXQg
ZGVmYXVsdHMgdG8gYHllcycuCi1BQ19ERUZVTihbQUNfRU5BQkxFX1NIQVJFRF0sCi1bZGVmaW5l
KFtBQ19FTkFCTEVfU0hBUkVEX0RFRkFVTFRdLCBpZmVsc2UoJDEsIG5vLCBubywgeWVzKSlkbmwK
LUFDX0FSR19FTkFCTEUoW3NoYXJlZF0sCi0gICAgW0FDX0hFTFBfU1RSSU5HKFstLWVuYWJsZS1z
aGFyZWRAPDpAPVBLR1NAOj5AXSwKLQlbYnVpbGQgc2hhcmVkIGxpYnJhcmllcyBAPDpAZGVmYXVs
dD1dQUNfRU5BQkxFX1NIQVJFRF9ERUZBVUxUW0A6PkBdKV0sCi0gICAgW3A9JHtQQUNLQUdFLWRl
ZmF1bHR9Ci0gICAgY2FzZSAkZW5hYmxldmFsIGluCi0gICAgeWVzKSBlbmFibGVfc2hhcmVkPXll
cyA7OwotICAgIG5vKSBlbmFibGVfc2hhcmVkPW5vIDs7Ci0gICAgKikKLSAgICAgIGVuYWJsZV9z
aGFyZWQ9bm8KLSAgICAgICMgTG9vayBhdCB0aGUgYXJndW1lbnQgd2UgZ290LiAgV2UgdXNlIGFs
bCB0aGUgY29tbW9uIGxpc3Qgc2VwYXJhdG9ycy4KLSAgICAgIGx0X3NhdmVfaWZzPSIkSUZTIjsg
SUZTPSIke0lGU30kUEFUSF9TRVBBUkFUT1IsIgotICAgICAgZm9yIHBrZyBpbiAkZW5hYmxldmFs
OyBkbwotCUlGUz0iJGx0X3NhdmVfaWZzIgotCWlmIHRlc3QgIlgkcGtnIiA9ICJYJHAiOyB0aGVu
Ci0JICBlbmFibGVfc2hhcmVkPXllcwotCWZpCi0gICAgICBkb25lCi0gICAgICBJRlM9IiRsdF9z
YXZlX2lmcyIKLSAgICAgIDs7Ci0gICAgZXNhY10sCi0gICAgW2VuYWJsZV9zaGFyZWQ9XUFDX0VO
QUJMRV9TSEFSRURfREVGQVVMVCkKLV0pIyBBQ19FTkFCTEVfU0hBUkVECi0KLQotIyBBQ19ESVNB
QkxFX1NIQVJFRAotIyAtLS0tLS0tLS0tLS0tLS0tLQotIy0gc2V0IHRoZSBkZWZhdWx0IHNoYXJl
ZCBmbGFnIHRvIC0tZGlzYWJsZS1zaGFyZWQKLUFDX0RFRlVOKFtBQ19ESVNBQkxFX1NIQVJFRF0s
Ci1bQUNfQkVGT1JFKFskMF0sW0FDX0xJQlRPT0xfU0VUVVBdKWRubAotQUNfRU5BQkxFX1NIQVJF
RChubykKLV0pIyBBQ19ESVNBQkxFX1NIQVJFRAotCi0KLSMgQUNfRU5BQkxFX1NUQVRJQyhbREVG
QVVMVF0pCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBpbXBsZW1lbnQgdGhlIC0t
ZW5hYmxlLXN0YXRpYyBmbGFnCi0jIERFRkFVTFQgaXMgZWl0aGVyIGB5ZXMnIG9yIGBubycuICBJ
ZiBvbWl0dGVkLCBpdCBkZWZhdWx0cyB0byBgeWVzJy4KLUFDX0RFRlVOKFtBQ19FTkFCTEVfU1RB
VElDXSwKLVtkZWZpbmUoW0FDX0VOQUJMRV9TVEFUSUNfREVGQVVMVF0sIGlmZWxzZSgkMSwgbm8s
IG5vLCB5ZXMpKWRubAotQUNfQVJHX0VOQUJMRShbc3RhdGljXSwKLSAgICBbQUNfSEVMUF9TVFJJ
TkcoWy0tZW5hYmxlLXN0YXRpY0A8OkA9UEtHU0A6PkBdLAotCVtidWlsZCBzdGF0aWMgbGlicmFy
aWVzIEA8OkBkZWZhdWx0PV1BQ19FTkFCTEVfU1RBVElDX0RFRkFVTFRbQDo+QF0pXSwKLSAgICBb
cD0ke1BBQ0tBR0UtZGVmYXVsdH0KLSAgICBjYXNlICRlbmFibGV2YWwgaW4KLSAgICB5ZXMpIGVu
YWJsZV9zdGF0aWM9eWVzIDs7Ci0gICAgbm8pIGVuYWJsZV9zdGF0aWM9bm8gOzsKLSAgICAqKQot
ICAgICBlbmFibGVfc3RhdGljPW5vCi0gICAgICAjIExvb2sgYXQgdGhlIGFyZ3VtZW50IHdlIGdv
dC4gIFdlIHVzZSBhbGwgdGhlIGNvbW1vbiBsaXN0IHNlcGFyYXRvcnMuCi0gICAgICBsdF9zYXZl
X2lmcz0iJElGUyI7IElGUz0iJHtJRlN9JFBBVEhfU0VQQVJBVE9SLCIKLSAgICAgIGZvciBwa2cg
aW4gJGVuYWJsZXZhbDsgZG8KLQlJRlM9IiRsdF9zYXZlX2lmcyIKLQlpZiB0ZXN0ICJYJHBrZyIg
PSAiWCRwIjsgdGhlbgotCSAgZW5hYmxlX3N0YXRpYz15ZXMKLQlmaQotICAgICAgZG9uZQotICAg
ICAgSUZTPSIkbHRfc2F2ZV9pZnMiCi0gICAgICA7OwotICAgIGVzYWNdLAotICAgIFtlbmFibGVf
c3RhdGljPV1BQ19FTkFCTEVfU1RBVElDX0RFRkFVTFQpCi1dKSMgQUNfRU5BQkxFX1NUQVRJQwot
Ci0KLSMgQUNfRElTQUJMRV9TVEFUSUMKLSMgLS0tLS0tLS0tLS0tLS0tLS0KLSMgc2V0IHRoZSBk
ZWZhdWx0IHN0YXRpYyBmbGFnIHRvIC0tZGlzYWJsZS1zdGF0aWMKLUFDX0RFRlVOKFtBQ19ESVNB
QkxFX1NUQVRJQ10sCi1bQUNfQkVGT1JFKFskMF0sW0FDX0xJQlRPT0xfU0VUVVBdKWRubAotQUNf
RU5BQkxFX1NUQVRJQyhubykKLV0pIyBBQ19ESVNBQkxFX1NUQVRJQwotCi0KLSMgQUNfRU5BQkxF
X0ZBU1RfSU5TVEFMTChbREVGQVVMVF0pCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQotIyBpbXBsZW1lbnQgdGhlIC0tZW5hYmxlLWZhc3QtaW5zdGFsbCBmbGFnCi0jIERFRkFV
TFQgaXMgZWl0aGVyIGB5ZXMnIG9yIGBubycuICBJZiBvbWl0dGVkLCBpdCBkZWZhdWx0cyB0byBg
eWVzJy4KLUFDX0RFRlVOKFtBQ19FTkFCTEVfRkFTVF9JTlNUQUxMXSwKLVtkZWZpbmUoW0FDX0VO
QUJMRV9GQVNUX0lOU1RBTExfREVGQVVMVF0sIGlmZWxzZSgkMSwgbm8sIG5vLCB5ZXMpKWRubAot
QUNfQVJHX0VOQUJMRShbZmFzdC1pbnN0YWxsXSwKLSAgICBbQUNfSEVMUF9TVFJJTkcoWy0tZW5h
YmxlLWZhc3QtaW5zdGFsbEA8OkA9UEtHU0A6PkBdLAotICAgIFtvcHRpbWl6ZSBmb3IgZmFzdCBp
bnN0YWxsYXRpb24gQDw6QGRlZmF1bHQ9XUFDX0VOQUJMRV9GQVNUX0lOU1RBTExfREVGQVVMVFtA
Oj5AXSldLAotICAgIFtwPSR7UEFDS0FHRS1kZWZhdWx0fQotICAgIGNhc2UgJGVuYWJsZXZhbCBp
bgotICAgIHllcykgZW5hYmxlX2Zhc3RfaW5zdGFsbD15ZXMgOzsKLSAgICBubykgZW5hYmxlX2Zh
c3RfaW5zdGFsbD1ubyA7OwotICAgICopCi0gICAgICBlbmFibGVfZmFzdF9pbnN0YWxsPW5vCi0g
ICAgICAjIExvb2sgYXQgdGhlIGFyZ3VtZW50IHdlIGdvdC4gIFdlIHVzZSBhbGwgdGhlIGNvbW1v
biBsaXN0IHNlcGFyYXRvcnMuCi0gICAgICBsdF9zYXZlX2lmcz0iJElGUyI7IElGUz0iJHtJRlN9
JFBBVEhfU0VQQVJBVE9SLCIKLSAgICAgIGZvciBwa2cgaW4gJGVuYWJsZXZhbDsgZG8KLQlJRlM9
IiRsdF9zYXZlX2lmcyIKLQlpZiB0ZXN0ICJYJHBrZyIgPSAiWCRwIjsgdGhlbgotCSAgZW5hYmxl
X2Zhc3RfaW5zdGFsbD15ZXMKLQlmaQotICAgICAgZG9uZQotICAgICAgSUZTPSIkbHRfc2F2ZV9p
ZnMiCi0gICAgICA7OwotICAgIGVzYWNdLAotICAgIFtlbmFibGVfZmFzdF9pbnN0YWxsPV1BQ19F
TkFCTEVfRkFTVF9JTlNUQUxMX0RFRkFVTFQpCi1dKSMgQUNfRU5BQkxFX0ZBU1RfSU5TVEFMTAot
Ci0KLSMgQUNfRElTQUJMRV9GQVNUX0lOU1RBTEwKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
LSMgc2V0IHRoZSBkZWZhdWx0IHRvIC0tZGlzYWJsZS1mYXN0LWluc3RhbGwKLUFDX0RFRlVOKFtB
Q19ESVNBQkxFX0ZBU1RfSU5TVEFMTF0sCi1bQUNfQkVGT1JFKFskMF0sW0FDX0xJQlRPT0xfU0VU
VVBdKWRubAotQUNfRU5BQkxFX0ZBU1RfSU5TVEFMTChubykKLV0pIyBBQ19ESVNBQkxFX0ZBU1Rf
SU5TVEFMTAotCi0KLSMgQUNfTElCVE9PTF9QSUNNT0RFKFtNT0RFXSkKLSMgLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KLSMgaW1wbGVtZW50IHRoZSAtLXdpdGgtcGljIGZsYWcKLSMgTU9ERSBp
cyBlaXRoZXIgYHllcycgb3IgYG5vJy4gIElmIG9taXR0ZWQsIGl0IGRlZmF1bHRzIHRvIGBib3Ro
Jy4KLUFDX0RFRlVOKFtBQ19MSUJUT09MX1BJQ01PREVdLAotW0FDX0JFRk9SRShbJDBdLFtBQ19M
SUJUT09MX1NFVFVQXSlkbmwKLXBpY19tb2RlPWlmZWxzZSgkIywxLCQxLGRlZmF1bHQpCi1dKSMg
QUNfTElCVE9PTF9QSUNNT0RFCi0KLQotIyBBQ19QQVRIX1RPT0xfUFJFRklYCi0jIC0tLS0tLS0t
LS0tLS0tLS0tLS0KLSMgZmluZCBhIGZpbGUgcHJvZ3JhbSB3aGljaCBjYW4gcmVjb2duaXNlIHNo
YXJlZCBsaWJyYXJ5Ci1BQ19ERUZVTihbQUNfUEFUSF9UT09MX1BSRUZJWF0sCi1bQUNfTVNHX0NI
RUNLSU5HKFtmb3IgJDFdKQotQUNfQ0FDSEVfVkFMKGx0X2N2X3BhdGhfTUFHSUNfQ01ELAotW2Nh
c2UgJE1BR0lDX0NNRCBpbgotW1tcXC8qXSB8ICA/OltcXC9dKl0pCi0gIGx0X2N2X3BhdGhfTUFH
SUNfQ01EPSIkTUFHSUNfQ01EIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRo
IGEgcGF0aC4KLSAgOzsKLSopCi0gIGx0X3NhdmVfTUFHSUNfQ01EPSIkTUFHSUNfQ01EIgotICBs
dF9zYXZlX2lmcz0iJElGUyI7IElGUz0kUEFUSF9TRVBBUkFUT1IKLWRubCAkYWNfZHVtbXkgZm9y
Y2VzIHNwbGl0dGluZyBvbiBjb25zdGFudCB1c2VyLXN1cHBsaWVkIHBhdGhzLgotZG5sIFBPU0lY
LjIgd29yZCBzcGxpdHRpbmcgaXMgZG9uZSBvbmx5IG9uIHRoZSBvdXRwdXQgb2Ygd29yZCBleHBh
bnNpb25zLAotZG5sIG5vdCBldmVyeSB3b3JkLiAgVGhpcyBjbG9zZXMgYSBsb25nc3RhbmRpbmcg
c2ggc2VjdXJpdHkgaG9sZS4KLSAgYWNfZHVtbXk9ImlmZWxzZShbJDJdLCAsICRQQVRILCBbJDJd
KSIKLSAgZm9yIGFjX2RpciBpbiAkYWNfZHVtbXk7IGRvCi0gICAgSUZTPSIkbHRfc2F2ZV9pZnMi
Ci0gICAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KLSAgICBpZiB0ZXN0IC1mICRhY19k
aXIvJDE7IHRoZW4KLSAgICAgIGx0X2N2X3BhdGhfTUFHSUNfQ01EPSIkYWNfZGlyLyQxIgotICAg
ICAgaWYgdGVzdCAtbiAiJGZpbGVfbWFnaWNfdGVzdF9maWxlIjsgdGhlbgotCWNhc2UgJGRlcGxp
YnNfY2hlY2tfbWV0aG9kIGluCi0JImZpbGVfbWFnaWMgIiopCi0JICBmaWxlX21hZ2ljX3JlZ2V4
PSJgZXhwciBcIiRkZXBsaWJzX2NoZWNrX21ldGhvZFwiIDogXCJmaWxlX21hZ2ljIFwoLipcKVwi
YCIKLQkgIE1BR0lDX0NNRD0iJGx0X2N2X3BhdGhfTUFHSUNfQ01EIgotCSAgaWYgZXZhbCAkZmls
ZV9tYWdpY19jbWQgXCRmaWxlX21hZ2ljX3Rlc3RfZmlsZSAyPiAvZGV2L251bGwgfAotCSAgICBl
Z3JlcCAiJGZpbGVfbWFnaWNfcmVnZXgiID4gL2Rldi9udWxsOyB0aGVuCi0JICAgIDoKLQkgIGVs
c2UKLQkgICAgY2F0IDw8RU9GIDE+JjIKLQotKioqIFdhcm5pbmc6IHRoZSBjb21tYW5kIGxpYnRv
b2wgdXNlcyB0byBkZXRlY3Qgc2hhcmVkIGxpYnJhcmllcywKLSoqKiAkZmlsZV9tYWdpY19jbWQs
IHByb2R1Y2VzIG91dHB1dCB0aGF0IGxpYnRvb2wgY2Fubm90IHJlY29nbml6ZS4KLSoqKiBUaGUg
cmVzdWx0IGlzIHRoYXQgbGlidG9vbCBtYXkgZmFpbCB0byByZWNvZ25pemUgc2hhcmVkIGxpYnJh
cmllcwotKioqIGFzIHN1Y2guICBUaGlzIHdpbGwgYWZmZWN0IHRoZSBjcmVhdGlvbiBvZiBsaWJ0
b29sIGxpYnJhcmllcyB0aGF0Ci0qKiogZGVwZW5kIG9uIHNoYXJlZCBsaWJyYXJpZXMsIGJ1dCBw
cm9ncmFtcyBsaW5rZWQgd2l0aCBzdWNoIGxpYnRvb2wKLSoqKiBsaWJyYXJpZXMgd2lsbCB3b3Jr
IHJlZ2FyZGxlc3Mgb2YgdGhpcyBwcm9ibGVtLiAgTmV2ZXJ0aGVsZXNzLCB5b3UKLSoqKiBtYXkg
d2FudCB0byByZXBvcnQgdGhlIHByb2JsZW0gdG8geW91ciBzeXN0ZW0gbWFuYWdlciBhbmQvb3Ig
dG8KLSoqKiBidWctbGlidG9vbEBnbnUub3JnCi0KLUVPRgotCSAgZmkgOzsKLQllc2FjCi0gICAg
ICBmaQotICAgICAgYnJlYWsKLSAgICBmaQotICBkb25lCi0gIElGUz0iJGx0X3NhdmVfaWZzIgot
ICBNQUdJQ19DTUQ9IiRsdF9zYXZlX01BR0lDX0NNRCIKLSAgOzsKLWVzYWNdKQotTUFHSUNfQ01E
PSIkbHRfY3ZfcGF0aF9NQUdJQ19DTUQiCi1pZiB0ZXN0IC1uICIkTUFHSUNfQ01EIjsgdGhlbgot
ICBBQ19NU0dfUkVTVUxUKCRNQUdJQ19DTUQpCi1lbHNlCi0gIEFDX01TR19SRVNVTFQobm8pCi1m
aQotXSkjIEFDX1BBVEhfVE9PTF9QUkVGSVgKLQotCi0jIEFDX1BBVEhfTUFHSUMKLSMgLS0tLS0t
LS0tLS0tLQotIyBmaW5kIGEgZmlsZSBwcm9ncmFtIHdoaWNoIGNhbiByZWNvZ25pc2UgYSBzaGFy
ZWQgbGlicmFyeQotQUNfREVGVU4oW0FDX1BBVEhfTUFHSUNdLAotW0FDX1BBVEhfVE9PTF9QUkVG
SVgoJHthY190b29sX3ByZWZpeH1maWxlLCAvdXNyL2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRIKQot
aWYgdGVzdCAteiAiJGx0X2N2X3BhdGhfTUFHSUNfQ01EIjsgdGhlbgotICBpZiB0ZXN0IC1uICIk
YWNfdG9vbF9wcmVmaXgiOyB0aGVuCi0gICAgQUNfUEFUSF9UT09MX1BSRUZJWChmaWxlLCAvdXNy
L2JpbiRQQVRIX1NFUEFSQVRPUiRQQVRIKQotICBlbHNlCi0gICAgTUFHSUNfQ01EPToKLSAgZmkK
LWZpCi1dKSMgQUNfUEFUSF9NQUdJQwotCi0KLSMgQUNfUFJPR19MRAotIyAtLS0tLS0tLS0tCi0j
IGZpbmQgdGhlIHBhdGggdG8gdGhlIEdOVSBvciBub24tR05VIGxpbmtlcgotQUNfREVGVU4oW0FD
X1BST0dfTERdLAotW0FDX0FSR19XSVRIKFtnbnUtbGRdLAotICAgIFtBQ19IRUxQX1NUUklORyhb
LS13aXRoLWdudS1sZF0sCi0JW2Fzc3VtZSB0aGUgQyBjb21waWxlciB1c2VzIEdOVSBsZCBAPDpA
ZGVmYXVsdD1ub0A6PkBdKV0sCi0gICAgW3Rlc3QgIiR3aXRodmFsIiA9IG5vIHx8IHdpdGhfZ251
X2xkPXllc10sCi0gICAgW3dpdGhfZ251X2xkPW5vXSkKLUFDX1JFUVVJUkUoW0FDX1BST0dfQ0Nd
KWRubAotQUNfUkVRVUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKWRubAotQUNfUkVRVUlSRShbQUNf
Q0FOT05JQ0FMX0JVSUxEXSlkbmwKLWFjX3Byb2c9bGQKLWlmIHRlc3QgIiRHQ0MiID0geWVzOyB0
aGVuCi0gICMgQ2hlY2sgaWYgZ2NjIC1wcmludC1wcm9nLW5hbWU9bGQgZ2l2ZXMgYSBwYXRoLgot
ICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBsZCB1c2VkIGJ5IEdDQ10pCi0gIGNhc2UgJGhvc3QgaW4K
LSAgKi0qLW1pbmd3KikKLSAgICAjIGdjYyBsZWF2ZXMgYSB0cmFpbGluZyBjYXJyaWFnZSByZXR1
cm4gd2hpY2ggdXBzZXRzIG1pbmd3Ci0gICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQtcHJvZy1uYW1l
PWxkKSAyPiY1IHwgdHIgLWQgJ1wwMTUnYCA7OwotICAqKQotICAgIGFjX3Byb2c9YCgkQ0MgLXBy
aW50LXByb2ctbmFtZT1sZCkgMj4mNWAgOzsKLSAgZXNhYwotICBjYXNlICRhY19wcm9nIGluCi0g
ICAgIyBBY2NlcHQgYWJzb2x1dGUgcGF0aHMuCi0gICAgW1tcXC9dXSogfCA/OltbXFwvXV0qKQot
ICAgICAgcmVfZGlyZWx0PScvW1teL11dW1teL11dKi9cLlwuLycKLSAgICAgICMgQ2Fub25pY2Fs
aXplIHRoZSBwYXRoIG9mIGxkCi0gICAgICBhY19wcm9nPWBlY2hvICRhY19wcm9nfCBzZWQgJ3Ml
XFxcXCUvJWcnYAotICAgICAgd2hpbGUgZWNobyAkYWNfcHJvZyB8IGdyZXAgIiRyZV9kaXJlbHQi
ID4gL2Rldi9udWxsIDI+JjE7IGRvCi0JYWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgc2VkICJzJSRy
ZV9kaXJlbHQlLyUiYAotICAgICAgZG9uZQotICAgICAgdGVzdCAteiAiJExEIiAmJiBMRD0iJGFj
X3Byb2ciCi0gICAgICA7OwotICAiIikKLSAgICAjIElmIGl0IGZhaWxzLCB0aGVuIHByZXRlbmQg
d2UgYXJlbid0IHVzaW5nIEdDQy4KLSAgICBhY19wcm9nPWxkCi0gICAgOzsKLSAgKikKLSAgICAj
IElmIGl0IGlzIHJlbGF0aXZlLCB0aGVuIHNlYXJjaCBmb3IgdGhlIGZpcnN0IGxkIGluIFBBVEgu
Ci0gICAgd2l0aF9nbnVfbGQ9dW5rbm93bgotICAgIDs7Ci0gIGVzYWMKLWVsaWYgdGVzdCAiJHdp
dGhfZ251X2xkIiA9IHllczsgdGhlbgotICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBHTlUgbGRdKQot
ZWxzZQotICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBub24tR05VIGxkXSkKLWZpCi1BQ19DQUNIRV9W
QUwobHRfY3ZfcGF0aF9MRCwKLVtpZiB0ZXN0IC16ICIkTEQiOyB0aGVuCi0gIGx0X3NhdmVfaWZz
PSIkSUZTIjsgSUZTPSRQQVRIX1NFUEFSQVRPUgotICBmb3IgYWNfZGlyIGluICRQQVRIOyBkbwot
ICAgIElGUz0iJGx0X3NhdmVfaWZzIgotICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0u
Ci0gICAgaWYgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyIgfHwgdGVzdCAtZiAiJGFjX2Rpci8k
YWNfcHJvZyRhY19leGVleHQiOyB0aGVuCi0gICAgICBsdF9jdl9wYXRoX0xEPSIkYWNfZGlyLyRh
Y19wcm9nIgotICAgICAgIyBDaGVjayB0byBzZWUgaWYgdGhlIHByb2dyYW0gaXMgR05VIGxkLiAg
SSdkIHJhdGhlciB1c2UgLS12ZXJzaW9uLAotICAgICAgIyBidXQgYXBwYXJlbnRseSBzb21lIEdO
VSBsZCdzIG9ubHkgYWNjZXB0IC12LgotICAgICAgIyBCcmVhayBvbmx5IGlmIGl0IHdhcyB0aGUg
R05VL25vbi1HTlUgbGQgdGhhdCB3ZSBwcmVmZXIuCi0gICAgICBpZiAiJGx0X2N2X3BhdGhfTEQi
IC12IDI+JjEgPCAvZGV2L251bGwgfCBlZ3JlcCAnKEdOVXx3aXRoIEJGRCknID4gL2Rldi9udWxs
OyB0aGVuCi0JdGVzdCAiJHdpdGhfZ251X2xkIiAhPSBubyAmJiBicmVhawotICAgICAgZWxzZQot
CXRlc3QgIiR3aXRoX2dudV9sZCIgIT0geWVzICYmIGJyZWFrCi0gICAgICBmaQotICAgIGZpCi0g
IGRvbmUKLSAgSUZTPSIkbHRfc2F2ZV9pZnMiCi1lbHNlCi0gIGx0X2N2X3BhdGhfTEQ9IiRMRCIg
IyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qgd2l0aCBhIHBhdGguCi1maV0pCi1MRD0i
JGx0X2N2X3BhdGhfTEQiCi1pZiB0ZXN0IC1uICIkTEQiOyB0aGVuCi0gIEFDX01TR19SRVNVTFQo
JExEKQotZWxzZQotICBBQ19NU0dfUkVTVUxUKG5vKQotZmkKLXRlc3QgLXogIiRMRCIgJiYgQUNf
TVNHX0VSUk9SKFtubyBhY2NlcHRhYmxlIGxkIGZvdW5kIGluIFwkUEFUSF0pCi1BQ19QUk9HX0xE
X0dOVQotXSkjIEFDX1BST0dfTEQKLQotCi0jIEFDX1BST0dfTERfR05VCi0jIC0tLS0tLS0tLS0t
LS0tCi1BQ19ERUZVTihbQUNfUFJPR19MRF9HTlVdLAotW0FDX0NBQ0hFX0NIRUNLKFtpZiB0aGUg
bGlua2VyICgkTEQpIGlzIEdOVSBsZF0sIGx0X2N2X3Byb2dfZ251X2xkLAotWyMgSSdkIHJhdGhl
ciB1c2UgLS12ZXJzaW9uIGhlcmUsIGJ1dCBhcHBhcmVudGx5IHNvbWUgR05VIGxkJ3Mgb25seSBh
Y2NlcHQgLXYuCi1pZiAkTEQgLXYgMj4mMSA8L2Rldi9udWxsIHwgZWdyZXAgJyhHTlV8d2l0aCBC
RkQpJyAxPiY1OyB0aGVuCi0gIGx0X2N2X3Byb2dfZ251X2xkPXllcwotZWxzZQotICBsdF9jdl9w
cm9nX2dudV9sZD1ubwotZmldKQotd2l0aF9nbnVfbGQ9JGx0X2N2X3Byb2dfZ251X2xkCi1dKSMg
QUNfUFJPR19MRF9HTlUKLQotCi0jIEFDX1BST0dfTERfUkVMT0FEX0ZMQUcKLSMgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQotIyBmaW5kIHJlbG9hZCBmbGFnIGZvciBsaW5rZXIKLSMgICAtLSBQT1JU
TUUgU29tZSBsaW5rZXJzIG1heSBuZWVkIGEgZGlmZmVyZW50IHJlbG9hZCBmbGFnLgotQUNfREVG
VU4oW0FDX1BST0dfTERfUkVMT0FEX0ZMQUddLAotW0FDX0NBQ0hFX0NIRUNLKFtmb3IgJExEIG9w
dGlvbiB0byByZWxvYWQgb2JqZWN0IGZpbGVzXSwKLSAgbHRfY3ZfbGRfcmVsb2FkX2ZsYWcsCi0g
IFtsdF9jdl9sZF9yZWxvYWRfZmxhZz0nLXInXSkKLXJlbG9hZF9mbGFnPSRsdF9jdl9sZF9yZWxv
YWRfZmxhZwotY2FzZSAkcmVsb2FkX2ZsYWcgaW4KLSIiIHwgIiAiKikgOzsKLSopIHJlbG9hZF9m
bGFnPSIgJHJlbG9hZF9mbGFnIiA7OwotZXNhYwotcmVsb2FkX2NtZHM9JyRMRCRyZWxvYWRfZmxh
ZyAtbyAkb3V0cHV0JHJlbG9hZF9vYmpzJwotXSkjIEFDX1BST0dfTERfUkVMT0FEX0ZMQUcKLQot
Ci0jIEFDX0RFUExJQlNfQ0hFQ0tfTUVUSE9ECi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0j
IGhvdyB0byBjaGVjayBmb3IgbGlicmFyeSBkZXBlbmRlbmNpZXMKLSMgIC0tIFBPUlRNRSBmaWxs
IGluIHdpdGggdGhlIGR5bmFtaWMgbGlicmFyeSBjaGFyYWN0ZXJpc3RpY3MKLUFDX0RFRlVOKFtB
Q19ERVBMSUJTX0NIRUNLX01FVEhPRF0sCi1bQUNfQ0FDSEVfQ0hFQ0soW2hvdyB0byByZWNvZ25p
c2UgZGVwZW5kYW50IGxpYnJhcmllc10sCi1sdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZCwKLVts
dF9jdl9maWxlX21hZ2ljX2NtZD0nJE1BR0lDX0NNRCcKLWx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9m
aWxlPQotbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9J3Vua25vd24nCi0jIE5lZWQgdG8gc2V0
IHRoZSBwcmVjZWRpbmcgdmFyaWFibGUgb24gYWxsIHBsYXRmb3JtcyB0aGF0IHN1cHBvcnQKLSMg
aW50ZXJsaWJyYXJ5IGRlcGVuZGVuY2llcy4KLSMgJ25vbmUnIC0tIGRlcGVuZGVuY2llcyBub3Qg
c3VwcG9ydGVkLgotIyBgdW5rbm93bicgLS0gc2FtZSBhcyBub25lLCBidXQgZG9jdW1lbnRzIHRo
YXQgd2UgcmVhbGx5IGRvbid0IGtub3cuCi0jICdwYXNzX2FsbCcgLS0gYWxsIGRlcGVuZGVuY2ll
cyBwYXNzZWQgd2l0aCBubyBjaGVja3MuCi0jICd0ZXN0X2NvbXBpbGUnIC0tIGNoZWNrIGJ5IG1h
a2luZyB0ZXN0IHByb2dyYW0uCi0jICdmaWxlX21hZ2ljIFtbcmVnZXhdXScgLS0gY2hlY2sgYnkg
bG9va2luZyBmb3IgZmlsZXMgaW4gbGlicmFyeSBwYXRoCi0jIHdoaWNoIHJlc3BvbmRzIHRvIHRo
ZSAkZmlsZV9tYWdpY19jbWQgd2l0aCBhIGdpdmVuIGVncmVwIHJlZ2V4LgotIyBJZiB5b3UgaGF2
ZSBgZmlsZScgb3IgZXF1aXZhbGVudCBvbiB5b3VyIHN5c3RlbSBhbmQgeW91J3JlIG5vdCBzdXJl
Ci0jIHdoZXRoZXIgYHBhc3NfYWxsJyB3aWxsICphbHdheXMqIHdvcmssIHlvdSBwcm9iYWJseSB3
YW50IHRoaXMgb25lLgotCi1jYXNlICRob3N0X29zIGluCi1haXg0KiB8IGFpeDUqKQotICBsdF9j
dl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAotICA7OwotCi1iZW9zKikKLSAgbHRfY3Zf
ZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKLSAgOzsKLQotYnNkaTQqKQotICBsdF9jdl9k
ZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyBFTEYgW1swLTldXVtbMC05XV0qLWJpdCBb
W01MXV1TQiAoc2hhcmVkIG9iamVjdHxkeW5hbWljIGxpYiknCi0gIGx0X2N2X2ZpbGVfbWFnaWNf
Y21kPScvdXNyL2Jpbi9maWxlIC1MJwotICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0vc2hs
aWIvbGliYy5zbwotICA7OwotCi1jeWd3aW4qIHwgbWluZ3cqIHwgcHczMiopCi0gIGx0X2N2X2Rl
cGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIGZpbGUgZm9ybWF0IHBlaSotaTM4NiguKmFy
Y2hpdGVjdHVyZTogaTM4Nik/JwotICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nJE9CSkRVTVAgLWYn
Ci0gIDs7Ci0KLWRhcndpbiogfCByaGFwc29keSopCi0gIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0
aG9kPSdmaWxlX21hZ2ljIE1hY2gtTyBkeW5hbWljYWxseSBsaW5rZWQgc2hhcmVkIGxpYnJhcnkn
Ci0gIGx0X2N2X2ZpbGVfbWFnaWNfY21kPScvdXNyL2Jpbi9maWxlIC1MJwotICBjYXNlICIkaG9z
dF9vcyIgaW4KLSAgcmhhcHNvZHkqIHwgZGFyd2luMS5bWzAxMl1dKQotICAgIGx0X2N2X2ZpbGVf
bWFnaWNfdGVzdF9maWxlPWAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9TeXN0ZW0uZnJhbWV3
b3JrL1N5c3RlbWAKLSAgICA7OwotICAqKSAjIERhcndpbiAxLjMgb24KLSAgICBsdF9jdl9maWxl
X21hZ2ljX3Rlc3RfZmlsZT0nL3Vzci9saWIvbGliU3lzdGVtLmR5bGliJwotICAgIDs7Ci0gIGVz
YWMKLSAgOzsKLQotZnJlZWJzZCopCi0gIGlmIGVjaG8gX19FTEZfXyB8ICRDQyAtRSAtIHwgZ3Jl
cCBfX0VMRl9fID4gL2Rldi9udWxsOyB0aGVuCi0gICAgY2FzZSAkaG9zdF9jcHUgaW4KLSAgICBp
Kjg2ICkKLSAgICAgICMgTm90IHN1cmUgd2hldGhlciB0aGUgcHJlc2VuY2Ugb2YgT3BlbkJTRCBo
ZXJlIHdhcyBhIG1pc3Rha2UuCi0gICAgICAjIExldCdzIGFjY2VwdCBib3RoIG9mIHRoZW0gdW50
aWwgdGhpcyBpcyBjbGVhcmVkIHVwLgotICAgICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9
J2ZpbGVfbWFnaWMgKEZyZWVCU0R8T3BlbkJTRCkvaVtbMy05XV04NiAoY29tcGFjdCApP2RlbWFu
ZCBwYWdlZCBzaGFyZWQgbGlicmFyeScKLSAgICAgIGx0X2N2X2ZpbGVfbWFnaWNfY21kPS91c3Iv
YmluL2ZpbGUKLSAgICAgIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPWBlY2hvIC91c3IvbGli
L2xpYmMuc28uKmAKLSAgICAgIDs7Ci0gICAgZXNhYwotICBlbHNlCi0gICAgbHRfY3ZfZGVwbGli
c19jaGVja19tZXRob2Q9cGFzc19hbGwKLSAgZmkKLSAgOzsKLQotZ251KikKLSAgbHRfY3ZfZGVw
bGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKLSAgOzsKLQotaHB1eDEwLjIwKiB8IGhwdXgxMSop
Ci0gIGx0X2N2X2ZpbGVfbWFnaWNfY21kPS91c3IvYmluL2ZpbGUKLSAgaWYgdGVzdCAiJGhvc3Rf
Y3B1IiA9IGlhNjQ7IHRoZW4KLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9t
YWdpYyAoc1tbMC05XV1bWzAtOV1dW1swLTldXXxFTEYtW1swLTldXVtbMC05XV0pIHNoYXJlZCBv
YmplY3QgZmlsZSAtIElBNjQnCi0gICAgbHRfY3ZfZmlsZV9tYWdpY190ZXN0X2ZpbGU9L3Vzci9s
aWIvaHB1eDMyL2xpYmMuc28KLSAgZWxzZQotICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9k
PSdmaWxlX21hZ2ljIChzW1swLTldXVtbMC05XV1bWzAtOV1dfFBBLVJJU0NbWzAtOV1dLltbMC05
XV0pIHNoYXJlZCBsaWJyYXJ5JwotICAgIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPS91c3Iv
bGliL2xpYmMuc2wKLSAgZmkKLSAgOzsKLQotaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KikK
LSAgY2FzZSAkaG9zdF9vcyBpbgotICBpcml4NSogfCBub25zdG9wdXgqKQotICAgICMgdGhpcyB3
aWxsIGJlIG92ZXJyaWRkZW4gd2l0aCBwYXNzX2FsbCwgYnV0IGxldCB1cyBrZWVwIGl0IGp1c3Qg
aW4gY2FzZQotICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSJmaWxlX21hZ2ljIEVMRiAz
Mi1iaXQgTVNCIGR5bmFtaWMgbGliIE1JUFMgLSB2ZXJzaW9uIDEiCi0gICAgOzsKLSAgKikKLSAg
ICBjYXNlICRMRCBpbgotICAgICotMzJ8KiItMzIgIikgbGlibWFnaWM9MzItYml0OzsKLSAgICAq
LW4zMnwqIi1uMzIgIikgbGlibWFnaWM9TjMyOzsKLSAgICAqLTY0fCoiLTY0ICIpIGxpYm1hZ2lj
PTY0LWJpdDs7Ci0gICAgKikgbGlibWFnaWM9bmV2ZXItbWF0Y2g7OwotICAgIGVzYWMKLSAgICAj
IHRoaXMgd2lsbCBiZSBvdmVycmlkZGVuIHdpdGggcGFzc19hbGwsIGJ1dCBsZXQgdXMga2VlcCBp
dCBqdXN0IGluIGNhc2UKLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0iZmlsZV9tYWdp
YyBFTEYgJHtsaWJtYWdpY30gTVNCIG1pcHMtW1sxMjM0XV0gZHluYW1pYyBsaWIgTUlQUyAtIHZl
cnNpb24gMSIKLSAgICA7OwotICBlc2FjCi0gIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPWBl
Y2hvIC9saWIke2xpYnN1ZmZ9L2xpYmMuc28qYAotICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhv
ZD1wYXNzX2FsbAotICA7OwotCi0jIFRoaXMgbXVzdCBiZSBMaW51eCBFTEYuCi1saW51eCopCi0g
IGNhc2UgJGhvc3RfY3B1IGluCi0gIGFscGhhKiB8IGhwcGEqIHwgaSo4NiB8IGlhNjQqIHwgbTY4
KiB8IG1pcHMgfCBtaXBzZWwgfCBwb3dlcnBjKiB8IHNwYXJjKiB8IHMzOTAqIHwgc2gqIHwgeDg2
XzY0KiApCi0gICAgbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwgOzsKLSAgKikK
LSAgICAjIGdsaWJjIHVwIHRvIDIuMS4xIGRvZXMgbm90IHBlcmZvcm0gc29tZSByZWxvY2F0aW9u
cyBvbiBBUk0KLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyBFTEYg
W1swLTldXVtbMC05XV0qLWJpdCBbW0xNXV1TQiAoc2hhcmVkIG9iamVjdHxkeW5hbWljIGxpYiAp
JyA7OwotICBlc2FjCi0gIGx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPWBlY2hvIC9saWIvbGli
Yy5zbyogL2xpYi9saWJjLSouc29gCi0gIDs7Ci0KLW5ldGJzZCopCi0gIGlmIGVjaG8gX19FTEZf
XyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fID4gL2Rldi9udWxsOyB0aGVuCi0gICAgbHRfY3Zf
ZGVwbGlic19jaGVja19tZXRob2Q9J21hdGNoX3BhdHRlcm4gL2xpYltbXi9cLl1dK1wuc29cLltb
MC05XV0rXC5bWzAtOV1dKyQnCi0gIGVsc2UKLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhv
ZD0nbWF0Y2hfcGF0dGVybiAvbGliW1teL1wuXV0rXC5zbyQnCi0gIGZpCi0gIDs7Ci0KLW5ld29z
NiopCi0gIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIEVMRiBbWzAtOV1d
W1swLTldXSotYml0IFtbTUxdXVNCIChleGVjdXRhYmxlfGR5bmFtaWMgbGliKScKLSAgbHRfY3Zf
ZmlsZV9tYWdpY19jbWQ9L3Vzci9iaW4vZmlsZQotICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmls
ZT0vdXNyL2xpYi9saWJubHMuc28KLSAgOzsKLQotbnRvLXFueCkKLSAgbHRfY3ZfZGVwbGlic19j
aGVja19tZXRob2Q9dW5rbm93bgotICA7OwotCi1vcGVuYnNkKikKLSAgbHRfY3ZfZmlsZV9tYWdp
Y19jbWQ9L3Vzci9iaW4vZmlsZQotICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT1gZWNobyAv
dXNyL2xpYi9saWJjLnNvLipgCi0gIGlmIHRlc3QgLXogImBlY2hvIF9fRUxGX18gfCAkQ0MgLUUg
LSB8IGdyZXAgX19FTEZfX2AiIHx8IHRlc3QgIiRob3N0X29zLSRob3N0X2NwdSIgPSAib3BlbmJz
ZDIuOC1wb3dlcnBjIjsgdGhlbgotICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxl
X21hZ2ljIEVMRiBbWzAtOV1dW1swLTldXSotYml0IFtbTE1dXVNCIHNoYXJlZCBvYmplY3QnCi0g
IGVsc2UKLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD0nZmlsZV9tYWdpYyBPcGVuQlNE
Liogc2hhcmVkIGxpYnJhcnknCi0gIGZpCi0gIDs7Ci0KLW9zZjMqIHwgb3NmNCogfCBvc2Y1KikK
LSAgIyB0aGlzIHdpbGwgYmUgb3ZlcnJpZGRlbiB3aXRoIHBhc3NfYWxsLCBidXQgbGV0IHVzIGtl
ZXAgaXQganVzdCBpbiBjYXNlCi0gIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21h
Z2ljIENPRkYgZm9ybWF0IGFscGhhIHNoYXJlZCBsaWJyYXJ5JwotICBsdF9jdl9maWxlX21hZ2lj
X3Rlc3RfZmlsZT0vc2hsaWIvbGliYy5zbwotICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1w
YXNzX2FsbAotICA7OwotCi1zY28zLjJ2NSopCi0gIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9k
PXBhc3NfYWxsCi0gIDs7Ci0KLXNvbGFyaXMqKQotICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhv
ZD1wYXNzX2FsbAotICBsdF9jdl9maWxlX21hZ2ljX3Rlc3RfZmlsZT0vbGliL2xpYmMuc28KLSAg
OzsKLQotc3lzdjQgfCBzeXN2NC4ydXcyKiB8IHN5c3Y0LjMqIHwgc3lzdjUqKQotICBjYXNlICRo
b3N0X3ZlbmRvciBpbgotICBtb3Rvcm9sYSkKLSAgICBsdF9jdl9kZXBsaWJzX2NoZWNrX21ldGhv
ZD0nZmlsZV9tYWdpYyBFTEYgW1swLTldXVtbMC05XV0qLWJpdCBbW01MXV1TQiAoc2hhcmVkIG9i
amVjdHxkeW5hbWljIGxpYikgTVtbMC05XV1bWzAtOV1dKiBWZXJzaW9uIFtbMC05XV0nCi0gICAg
bHRfY3ZfZmlsZV9tYWdpY190ZXN0X2ZpbGU9YGVjaG8gL3Vzci9saWIvbGliYy5zbypgCi0gICAg
OzsKLSAgbmNyKQotICAgIGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPXBhc3NfYWxsCi0gICAg
OzsKLSAgc2VxdWVudCkKLSAgICBsdF9jdl9maWxlX21hZ2ljX2NtZD0nL2Jpbi9maWxlJwotICAg
IGx0X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kPSdmaWxlX21hZ2ljIEVMRiBbWzAtOV1dW1swLTld
XSotYml0IFtbTE1dXVNCIChzaGFyZWQgb2JqZWN0fGR5bmFtaWMgbGliICknCi0gICAgOzsKLSAg
c25pKQotICAgIGx0X2N2X2ZpbGVfbWFnaWNfY21kPScvYmluL2ZpbGUnCi0gICAgbHRfY3ZfZGVw
bGlic19jaGVja19tZXRob2Q9ImZpbGVfbWFnaWMgRUxGIFtbMC05XV1bWzAtOV1dKi1iaXQgW1tM
TV1dU0IgZHluYW1pYyBsaWIiCi0gICAgbHRfY3ZfZmlsZV9tYWdpY190ZXN0X2ZpbGU9L2xpYi9s
aWJjLnNvCi0gICAgOzsKLSAgZXNhYwotICA7OwotCi1zeXN2NU9wZW5VTklYOCogfCBzeXN2NVVu
aXhXYXJlNyogfCBzeXN2NXV3W1s3OF1dKiB8IHVuaXh3YXJlNyogfCBzeXN2NCp1dzIqKQotICBs
dF9jdl9kZXBsaWJzX2NoZWNrX21ldGhvZD1wYXNzX2FsbAotICA7OwotZXNhYwotXSkKLWZpbGVf
bWFnaWNfY21kPSRsdF9jdl9maWxlX21hZ2ljX2NtZAotZGVwbGlic19jaGVja19tZXRob2Q9JGx0
X2N2X2RlcGxpYnNfY2hlY2tfbWV0aG9kCi10ZXN0IC16ICIkZGVwbGlic19jaGVja19tZXRob2Qi
ICYmIGRlcGxpYnNfY2hlY2tfbWV0aG9kPXVua25vd24KLV0pIyBBQ19ERVBMSUJTX0NIRUNLX01F
VEhPRAotCi0KLSMgQUNfUFJPR19OTQotIyAtLS0tLS0tLS0tCi0jIGZpbmQgdGhlIHBhdGggdG8g
YSBCU0QtY29tcGF0aWJsZSBuYW1lIGxpc3RlcgotQUNfREVGVU4oW0FDX1BST0dfTk1dLAotW0FD
X0NBQ0hFX0NIRUNLKFtmb3IgQlNELWNvbXBhdGlibGUgbm1dLCBsdF9jdl9wYXRoX05NLAotW2lm
IHRlc3QgLW4gIiROTSI7IHRoZW4KLSAgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qu
Ci0gIGx0X2N2X3BhdGhfTk09IiROTSIKLWVsc2UKLSAgbHRfc2F2ZV9pZnM9IiRJRlMiOyBJRlM9
JFBBVEhfU0VQQVJBVE9SCi0gIGZvciBhY19kaXIgaW4gJFBBVEggL3Vzci9jY3MvYmluIC91c3Iv
dWNiIC9iaW47IGRvCi0gICAgSUZTPSIkbHRfc2F2ZV9pZnMiCi0gICAgdGVzdCAteiAiJGFjX2Rp
ciIgJiYgYWNfZGlyPS4KLSAgICB0bXBfbm09IiRhY19kaXIvJHthY190b29sX3ByZWZpeH1ubSIK
LSAgICBpZiB0ZXN0IC1mICIkdG1wX25tIiB8fCB0ZXN0IC1mICIkdG1wX25tJGFjX2V4ZWV4dCIg
OyB0aGVuCi0gICAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgbm0gYWNjZXB0cyBhIEJTRC1jb21w
YXQgZmxhZy4KLSAgICAgICMgQWRkaW5nIHRoZSBgc2VkIDFxJyBwcmV2ZW50cyBmYWxzZSBwb3Np
dGl2ZXMgb24gSFAtVVgsIHdoaWNoIHNheXM6Ci0gICAgICAjICAgbm06IHVua25vd24gb3B0aW9u
ICJCIiBpZ25vcmVkCi0gICAgICAjIFRydTY0J3Mgbm0gY29tcGxhaW5zIHRoYXQgL2Rldi9udWxs
IGlzIGFuIGludmFsaWQgb2JqZWN0IGZpbGUKLSAgICAgIGlmICgiJHRtcF9ubSIgLUIgL2Rldi9u
dWxsIDI+JjEgfCBzZWQgJzFxJzsgZXhpdCAwKSB8IGVncmVwICcoL2Rldi9udWxsfEludmFsaWQg
ZmlsZSBvciBvYmplY3QgdHlwZSknID4vZGV2L251bGw7IHRoZW4KLQlsdF9jdl9wYXRoX05NPSIk
dG1wX25tIC1CIgotCWJyZWFrCi0gICAgICBlbGlmICgiJHRtcF9ubSIgLXAgL2Rldi9udWxsIDI+
JjEgfCBzZWQgJzFxJzsgZXhpdCAwKSB8IGVncmVwIC9kZXYvbnVsbCA+L2Rldi9udWxsOyB0aGVu
Ci0JbHRfY3ZfcGF0aF9OTT0iJHRtcF9ubSAtcCIKLQlicmVhawotICAgICAgZWxzZQotCWx0X2N2
X3BhdGhfTk09JHtsdF9jdl9wYXRoX05NPSIkdG1wX25tIn0gIyBrZWVwIHRoZSBmaXJzdCBtYXRj
aCwgYnV0Ci0JY29udGludWUgIyBzbyB0aGF0IHdlIGNhbiB0cnkgdG8gZmluZCBvbmUgdGhhdCBz
dXBwb3J0cyBCU0QgZmxhZ3MKLSAgICAgIGZpCi0gICAgZmkKLSAgZG9uZQotICBJRlM9IiRsdF9z
YXZlX2lmcyIKLSAgdGVzdCAteiAiJGx0X2N2X3BhdGhfTk0iICYmIGx0X2N2X3BhdGhfTk09bm0K
LWZpXSkKLU5NPSIkbHRfY3ZfcGF0aF9OTSIKLV0pIyBBQ19QUk9HX05NCi0KLQotIyBBQ19DSEVD
S19MSUJNCi0jIC0tLS0tLS0tLS0tLS0KLSMgY2hlY2sgZm9yIG1hdGggbGlicmFyeQotQUNfREVG
VU4oW0FDX0NIRUNLX0xJQk1dLAotW0FDX1JFUVVJUkUoW0FDX0NBTk9OSUNBTF9IT1NUXSlkbmwK
LUxJQk09Ci1jYXNlICRob3N0IGluCi0qLSotYmVvcyogfCAqLSotY3lnd2luKiB8ICotKi1wdzMy
KikKLSAgIyBUaGVzZSBzeXN0ZW0gZG9uJ3QgaGF2ZSBsaWJtCi0gIDs7Ci0qLW5jci1zeXN2NC4z
KikKLSAgQUNfQ0hFQ0tfTElCKG13LCBfbXd2YWxpZGNoZWNrbCwgTElCTT0iLWxtdyIpCi0gIEFD
X0NIRUNLX0xJQihtLCBtYWluLCBMSUJNPSIkTElCTSAtbG0iKQotICA7OwotKikKLSAgQUNfQ0hF
Q0tfTElCKG0sIG1haW4sIExJQk09Ii1sbSIpCi0gIDs7Ci1lc2FjCi1dKSMgQUNfQ0hFQ0tfTElC
TQotCi0KLSMgQUNfTElCTFRETF9DT05WRU5JRU5DRShbRElSRUNUT1JZXSkKLSMgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgc2V0cyBMSUJMVERMIHRvIHRoZSBsaW5rIGZs
YWdzIGZvciB0aGUgbGlibHRkbCBjb252ZW5pZW5jZSBsaWJyYXJ5IGFuZAotIyBMVERMSU5DTCB0
byB0aGUgaW5jbHVkZSBmbGFncyBmb3IgdGhlIGxpYmx0ZGwgaGVhZGVyIGFuZCBhZGRzCi0jIC0t
ZW5hYmxlLWx0ZGwtY29udmVuaWVuY2UgdG8gdGhlIGNvbmZpZ3VyZSBhcmd1bWVudHMuICBOb3Rl
IHRoYXQgTElCTFRETAotIyBhbmQgTFRETElOQ0wgYXJlIG5vdCBBQ19TVUJTVGVkLCBub3IgaXMg
QUNfQ09ORklHX1NVQkRJUlMgY2FsbGVkLiAgSWYKLSMgRElSRUNUT1JZIGlzIG5vdCBwcm92aWRl
ZCwgaXQgaXMgYXNzdW1lZCB0byBiZSBgbGlibHRkbCcuICBMSUJMVERMIHdpbGwKLSMgYmUgcHJl
Zml4ZWQgd2l0aCAnJHt0b3BfYnVpbGRkaXJ9LycgYW5kIExURExJTkNMIHdpbGwgYmUgcHJlZml4
ZWQgd2l0aAotIyAnJHt0b3Bfc3JjZGlyfS8nIChub3RlIHRoZSBzaW5nbGUgcXVvdGVzISkuICBJ
ZiB5b3VyIHBhY2thZ2UgaXMgbm90Ci0jIGZsYXQgYW5kIHlvdSdyZSBub3QgdXNpbmcgYXV0b21h
a2UsIGRlZmluZSB0b3BfYnVpbGRkaXIgYW5kCi0jIHRvcF9zcmNkaXIgYXBwcm9wcmlhdGVseSBp
biB0aGUgTWFrZWZpbGVzLgotQUNfREVGVU4oW0FDX0xJQkxURExfQ09OVkVOSUVOQ0VdLAotW0FD
X0JFRk9SRShbJDBdLFtBQ19MSUJUT09MX1NFVFVQXSlkbmwKLSAgY2FzZSAkZW5hYmxlX2x0ZGxf
Y29udmVuaWVuY2UgaW4KLSAgbm8pIEFDX01TR19FUlJPUihbdGhpcyBwYWNrYWdlIG5lZWRzIGEg
Y29udmVuaWVuY2UgbGlibHRkbF0pIDs7Ci0gICIiKSBlbmFibGVfbHRkbF9jb252ZW5pZW5jZT15
ZXMKLSAgICAgIGFjX2NvbmZpZ3VyZV9hcmdzPSIkYWNfY29uZmlndXJlX2FyZ3MgLS1lbmFibGUt
bHRkbC1jb252ZW5pZW5jZSIgOzsKLSAgZXNhYwotICBMSUJMVERMPScke3RvcF9idWlsZGRpcn0v
J2lmZWxzZSgkIywxLFskMV0sWydsaWJsdGRsJ10pL2xpYmx0ZGxjLmxhCi0gIExURExJTkNMPSct
SSR7dG9wX3NyY2Rpcn0vJ2lmZWxzZSgkIywxLFskMV0sWydsaWJsdGRsJ10pCi0gICMgRm9yIGJh
Y2t3YXJkcyBub24tZ2V0dGV4dCBjb25zaXN0ZW50IGNvbXBhdGliaWxpdHkuLi4KLSAgSU5DTFRE
TD0iJExURExJTkNMIgotXSkjIEFDX0xJQkxURExfQ09OVkVOSUVOQ0UKLQotCi0jIEFDX0xJQkxU
RExfSU5TVEFMTEFCTEUoW0RJUkVDVE9SWV0pCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCi0jIHNldHMgTElCTFRETCB0byB0aGUgbGluayBmbGFncyBmb3IgdGhlIGxpYmx0
ZGwgaW5zdGFsbGFibGUgbGlicmFyeSBhbmQKLSMgTFRETElOQ0wgdG8gdGhlIGluY2x1ZGUgZmxh
Z3MgZm9yIHRoZSBsaWJsdGRsIGhlYWRlciBhbmQgYWRkcwotIyAtLWVuYWJsZS1sdGRsLWluc3Rh
bGwgdG8gdGhlIGNvbmZpZ3VyZSBhcmd1bWVudHMuICBOb3RlIHRoYXQgTElCTFRETAotIyBhbmQg
TFRETElOQ0wgYXJlIG5vdCBBQ19TVUJTVGVkLCBub3IgaXMgQUNfQ09ORklHX1NVQkRJUlMgY2Fs
bGVkLiAgSWYKLSMgRElSRUNUT1JZIGlzIG5vdCBwcm92aWRlZCBhbmQgYW4gaW5zdGFsbGVkIGxp
Ymx0ZGwgaXMgbm90IGZvdW5kLCBpdCBpcwotIyBhc3N1bWVkIHRvIGJlIGBsaWJsdGRsJy4gIExJ
QkxUREwgd2lsbCBiZSBwcmVmaXhlZCB3aXRoICcke3RvcF9idWlsZGRpcn0vJwotIyBhbmQgTFRE
TElOQ0wgd2lsbCBiZSBwcmVmaXhlZCB3aXRoICcke3RvcF9zcmNkaXJ9LycgKG5vdGUgdGhlIHNp
bmdsZQotIyBxdW90ZXMhKS4gIElmIHlvdXIgcGFja2FnZSBpcyBub3QgZmxhdCBhbmQgeW91J3Jl
IG5vdCB1c2luZyBhdXRvbWFrZSwKLSMgZGVmaW5lIHRvcF9idWlsZGRpciBhbmQgdG9wX3NyY2Rp
ciBhcHByb3ByaWF0ZWx5IGluIHRoZSBNYWtlZmlsZXMuCi0jIEluIHRoZSBmdXR1cmUsIHRoaXMg
bWFjcm8gbWF5IGhhdmUgdG8gYmUgY2FsbGVkIGFmdGVyIEFDX1BST0dfTElCVE9PTC4KLUFDX0RF
RlVOKFtBQ19MSUJMVERMX0lOU1RBTExBQkxFXSwKLVtBQ19CRUZPUkUoWyQwXSxbQUNfTElCVE9P
TF9TRVRVUF0pZG5sCi0gIEFDX0NIRUNLX0xJQihsdGRsLCBtYWluLAotICBbdGVzdCB4IiRlbmFi
bGVfbHRkbF9pbnN0YWxsIiAhPSB4eWVzICYmIGVuYWJsZV9sdGRsX2luc3RhbGw9bm9dLAotICBb
aWYgdGVzdCB4IiRlbmFibGVfbHRkbF9pbnN0YWxsIiA9IHhubzsgdGhlbgotICAgICBBQ19NU0df
V0FSTihbbGlibHRkbCBub3QgaW5zdGFsbGVkLCBidXQgaW5zdGFsbGF0aW9uIGRpc2FibGVkXSkK
LSAgIGVsc2UKLSAgICAgZW5hYmxlX2x0ZGxfaW5zdGFsbD15ZXMKLSAgIGZpCi0gIF0pCi0gIGlm
IHRlc3QgeCIkZW5hYmxlX2x0ZGxfaW5zdGFsbCIgPSB4InllcyI7IHRoZW4KLSAgICBhY19jb25m
aWd1cmVfYXJncz0iJGFjX2NvbmZpZ3VyZV9hcmdzIC0tZW5hYmxlLWx0ZGwtaW5zdGFsbCIKLSAg
ICBMSUJMVERMPScke3RvcF9idWlsZGRpcn0vJ2lmZWxzZSgkIywxLFskMV0sWydsaWJsdGRsJ10p
L2xpYmx0ZGwubGEKLSAgICBMVERMSU5DTD0nLUkke3RvcF9zcmNkaXJ9LydpZmVsc2UoJCMsMSxb
JDFdLFsnbGlibHRkbCddKQotICBlbHNlCi0gICAgYWNfY29uZmlndXJlX2FyZ3M9IiRhY19jb25m
aWd1cmVfYXJncyAtLWVuYWJsZS1sdGRsLWluc3RhbGw9bm8iCi0gICAgTElCTFRETD0iLWxsdGRs
IgotICAgIExURExJTkNMPQotICBmaQotICAjIEZvciBiYWNrd2FyZHMgbm9uLWdldHRleHQgY29u
c2lzdGVudCBjb21wYXRpYmlsaXR5Li4uCi0gIElOQ0xUREw9IiRMVERMSU5DTCIKLV0pIyBBQ19M
SUJMVERMX0lOU1RBTExBQkxFCi0KLQotIyBJZiB0aGlzIG1hY3JvIGlzIG5vdCBkZWZpbmVkIGJ5
IEF1dG9jb25mLCBkZWZpbmUgaXQgaGVyZS4KLWlmZGVmKFtBQ19QUk9WSURFX0lGRUxTRV0sCi0g
ICAgICBbXSwKLSAgICAgIFtkZWZpbmUoW0FDX1BST1ZJREVfSUZFTFNFXSwKLQkgICAgICBbaWZk
ZWYoW0FDX1BST1ZJREVfJDFdLAotCQkgICAgIFskMl0sIFskM10pXSldKQotCi0KLSMgQUNfTElC
VE9PTF9DWFgKLSMgLS0tLS0tLS0tLS0tLS0KLSMgZW5hYmxlIHN1cHBvcnQgZm9yIEMrKyBsaWJy
YXJpZXMKLUFDX0RFRlVOKFtBQ19MSUJUT09MX0NYWF0sCi1bQUNfUkVRVUlSRShbX0xUX0FDX0xB
TkdfQ1hYXSkKLV0pIyBBQ19MSUJUT09MX0NYWAotCi0KLSMgX0xUX0FDX0xBTkdfQ1hYCi0jIC0t
LS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW19MVF9BQ19MQU5HX0NYWF0sCi1bQUNfUkVRVUlSRShb
QUNfUFJPR19DWFhdKQotQUNfUkVRVUlSRShbQUNfUFJPR19DWFhDUFBdKQotXSkjIF9MVF9BQ19M
QU5HX0NYWAotCi0KLSMgQUNfTElCVE9PTF9HQ0oKLSMgLS0tLS0tLS0tLS0tLS0KLSMgZW5hYmxl
IHN1cHBvcnQgZm9yIEdDSiBsaWJyYXJpZXMKLUFDX0RFRlVOKFtBQ19MSUJUT09MX0dDSl0sCi1b
QUNfUkVRVUlSRShbX0xUX0FDX0xBTkdfR0NKXSkKLV0pIyBBQ19MSUJUT09MX0dDSgotCi0KLSMg
X0xUX0FDX0xBTkdfR0NKCi0jIC0tLS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW19MVF9BQ19MQU5H
X0dDSl0sCi1bQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfR0NKXSxbXSwKLSAgW0FDX1BST1ZJ
REVfSUZFTFNFKFtBXVtNX1BST0dfR0NKXSxbXSwKLSAgICBbQUNfUFJPVklERV9JRkVMU0UoW0xU
X0FDX1BST0dfR0NKXSxbXSwKLSAgICAgIFtpZmRlZihbQUNfUFJPR19HQ0pdLFtBQ19SRVFVSVJF
KFtBQ19QUk9HX0dDSl0pXSwKLQkgW2lmZGVmKFtBXVtNX1BST0dfR0NKXSxbQUNfUkVRVUlSRShb
QV1bTV9QUk9HX0dDSl0pXSwKLQkgICBbQUNfUkVRVUlSRShbQV1bQ19QUk9HX0dDSl9PUl9BXVtN
X1BST0dfR0NKXSldKV0pXSldKV0pCi1dKSMgX0xUX0FDX0xBTkdfR0NKCi0KLQotIyBBQ19MSUJU
T09MX1JDCi0jIC0tLS0tLS0tLS0tLS0tCi0jIGVuYWJsZSBzdXBwb3J0IGZvciBXaW5kb3dzIHJl
c291cmNlIGZpbGVzCi1BQ19ERUZVTihbQUNfTElCVE9PTF9SQ10sCi1bQUNfUkVRVUlSRShbQUNf
UFJPR19SQ10pCi1dKSMgQUNfTElCVE9PTF9SQwotCi0KLSMgQUNfTElCVE9PTF9MQU5HX0NfQ09O
RklHCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBFbnN1cmUgdGhhdCB0aGUgY29uZmln
dXJhdGlvbiB2YXJzIGZvciB0aGUgQyBjb21waWxlciBhcmUKLSMgc3VpdGFibHkgZGVmaW5lZC4g
IFRob3NlIHZhcmlhYmxlcyBhcmUgc3Vic2VxdWVudGx5IHVzZWQgYnkKLSMgQUNfTElCVE9PTF9D
T05GSUcgdG8gd3JpdGUgdGhlIGNvbXBpbGVyIGNvbmZpZ3VyYXRpb24gdG8gYGxpYnRvb2wnLgot
QUNfREVGVU4oW0FDX0xJQlRPT0xfTEFOR19DX0NPTkZJR10sIFtfTFRfQUNfTEFOR19DX0NPTkZJ
R10pCi1BQ19ERUZVTihbX0xUX0FDX0xBTkdfQ19DT05GSUddLAotW2x0X3NhdmVfQ0M9IiRDQyIK
LUFDX0xBTkdfUFVTSChDKQotCi0jIFNvdXJjZSBmaWxlIGV4dGVuc2lvbiBmb3IgQyB0ZXN0IHNv
dXJjZXMuCi1hY19leHQ9YwotCi0jIE9iamVjdCBmaWxlIGV4dGVuc2lvbiBmb3IgY29tcGlsZWQg
QyB0ZXN0IHNvdXJjZXMuCi1vYmpleHQ9bwotX0xUX0FDX1RBR1ZBUihvYmpleHQsICQxKT0kb2Jq
ZXh0Ci0KLSMgQ29kZSB0byBiZSB1c2VkIGluIHNpbXBsZSBjb21waWxlIHRlc3RzCi1sdF9zaW1w
bGVfY29tcGlsZV90ZXN0X2NvZGU9ImludCBzb21lX3ZhcmlhYmxlID0gMDsiCi0KLSMgQ29kZSB0
byBiZSB1c2VkIGluIHNpbXBsZSBsaW5rIHRlc3RzCi1sdF9zaW1wbGVfbGlua190ZXN0X2NvZGU9
J21haW4oKXtyZXR1cm4oMCk7fScKLQotX0xUX0FDX1NZU19DT01QSUxFUgotCi0jCi0jIENoZWNr
IGZvciBhbnkgc3BlY2lhbCBzaGFyZWQgbGlicmFyeSBjb21waWxhdGlvbiBmbGFncy4KLSMKLV9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jY19zaGxpYiwgJDEpPQotaWYgdGVzdCAiJEdDQyIgPSBubzsg
dGhlbgotICBjYXNlICRob3N0X29zIGluCi0gIHNjbzMuMnY1KikKLSAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY2Nfc2hsaWIsICQxKT0nLWJlbGYnCi0gICAgOzsKLSAgZXNhYwotZmkKLWlmIHRl
c3QgLW4gIiRfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY2Nfc2hsaWIsICQxKSI7IHRoZW4KLSAgQUNf
TVNHX1dBUk4oW2AkQ0MnIHJlcXVpcmVzIGAkX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NjX3NobGli
LCAkMSknIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXNdKQotICBpZiBlY2hvICIkb2xkX0NDICRv
bGRfQ0ZMQUdTICIgfCBlZ3JlcCAtZSAiW1sgCV1dJF1fTFRfQUNfVEFHVkFSKGx0X3Byb2dfY2Nf
c2hsaWIsICQxKVtbWyAJXV0iID4vZGV2L251bGw7IHRoZW4gOgotICBlbHNlCi0gICAgQUNfTVNH
X1dBUk4oW2FkZCBgJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jY19zaGxpYiwgJDEpJyB0byB0aGUg
Q0Mgb3IgQ0ZMQUdTIGVudiB2YXJpYWJsZSBhbmQgcmVjb25maWd1cmVdKQotICAgIF9MVF9BQ19U
QUdWQVIobHRfY3ZfcHJvZ19jY19jYW5fYnVpbGRfc2hhcmVkLCAkMSk9bm8KLSAgZmkKLWZpCi0K
LQotIwotIyBDaGVjayB0byBtYWtlIHN1cmUgdGhlIHN0YXRpYyBmbGFnIGFjdHVhbGx5IHdvcmtz
LgotIwotQUNfTElCVE9PTF9MSU5LRVJfT1BUSU9OKFtpZiAkY29tcGlsZXIgc3RhdGljIGZsYWcg
JF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKSB3b3Jrc10sCi0gIF9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWNfd29ya3MsICQxKSwKLSAgJF9MVF9B
Q19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKSwKLSAgW10sCi0gIFtfTFRfQUNf
VEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9XSkKLQotCi0jIyBDQVZFQVQgRU1Q
VE9SOgotIyMgVGhlcmUgaXMgbm8gZW5jYXBzdWxhdGlvbiB3aXRoaW4gdGhlIGZvbGxvd2luZyBt
YWNyb3MsIGRvIG5vdCBjaGFuZ2UKLSMjIHRoZSBydW5uaW5nIG9yZGVyIG9yIG90aGVyd2lzZSBt
b3ZlIHRoZW0gYXJvdW5kIHVubGVzcyB5b3Uga25vdyBleGFjdGx5Ci0jIyB3aGF0IHlvdSBhcmUg
ZG9pbmcuLi4KLUFDX0xJQlRPT0xfUFJPR19DT01QSUxFUl9OT19SVFRJKCQxKQotQUNfTElCVE9P
TF9QUk9HX0NPTVBJTEVSX1BJQygkMSkKLUFDX0xJQlRPT0xfUFJPR19DQ19DX08oJDEpCi1BQ19M
SUJUT09MX1NZU19IQVJEX0xJTktfTE9DS1MoJDEpCi1BQ19MSUJUT09MX1BST0dfTERfU0hMSUJT
KCQxKQotQUNfTElCVE9PTF9QUk9HX0xEX0hBUkRDT0RFX0xJQlBBVEgoJDEpCi1BQ19MSUJUT09M
X1NZU19MSUJfU1RSSVAKLUFDX0xJQlRPT0xfU1lTX0RZTkFNSUNfTElOS0VSKCQxKQotQUNfTElC
VE9PTF9ETE9QRU5fU0VMRigkMSkKLQotIyBSZXBvcnQgd2hpY2ggbGlicmFyaWUgdHlwZXMgd2ls
IGFjdHVhbGx5IGJlIGJ1aWx0Ci1BQ19NU0dfQ0hFQ0tJTkcoW2lmIGxpYnRvb2wgc3VwcG9ydHMg
c2hhcmVkIGxpYnJhcmllc10pCi1BQ19NU0dfUkVTVUxUKFskY2FuX2J1aWxkX3NoYXJlZF0pCi0K
LUFDX01TR19DSEVDS0lORyhbd2hldGhlciB0byBidWlsZCBzaGFyZWQgbGlicmFyaWVzXSkKLXRl
c3QgIiRjYW5fYnVpbGRfc2hhcmVkIiA9ICJubyIgJiYgZW5hYmxlX3NoYXJlZD1ubwotCi0jIE9u
IEFJWCwgc2hhcmVkIGxpYnJhcmllcyBhbmQgc3RhdGljIGxpYnJhcmllcyB1c2UgdGhlIHNhbWUg
bmFtZXNwYWNlLCBhbmQKLSMgYXJlIGFsbCBidWlsdCBmcm9tIFBJQy4KLWNhc2UgIiRob3N0X29z
IiBpbgotYWl4MyopCi0gIHRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyAmJiBlbmFibGVfc3Rh
dGljPW5vCi0gIGlmIHRlc3QgLW4gIiRSQU5MSUIiOyB0aGVuCi0gICAgYXJjaGl2ZV9jbWRzPSIk
YXJjaGl2ZV9jbWRzflwkUkFOTElCIFwkbGliIgotICAgIHBvc3RpbnN0YWxsX2NtZHM9JyRSQU5M
SUIgJGxpYicKLSAgZmkKLSAgOzsKLQotYWl4NCopCi0gIGlmIHRlc3QgIiRob3N0X2NwdSIgIT0g
aWE2NCAmJiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSBubyA7IHRoZW4KLSAgICB0
ZXN0ICIkZW5hYmxlX3NoYXJlZCIgPSB5ZXMgJiYgZW5hYmxlX3N0YXRpYz1ubwotICBmaQotICA7
OwotZXNhYwotQUNfTVNHX1JFU1VMVChbJGVuYWJsZV9zaGFyZWRdKQotCi1BQ19NU0dfQ0hFQ0tJ
TkcoW3doZXRoZXIgdG8gYnVpbGQgc3RhdGljIGxpYnJhcmllc10pCi0jIE1ha2Ugc3VyZSBlaXRo
ZXIgZW5hYmxlX3NoYXJlZCBvciBlbmFibGVfc3RhdGljIGlzIHllcy4KLXRlc3QgIiRlbmFibGVf
c2hhcmVkIiA9IHllcyB8fCBlbmFibGVfc3RhdGljPXllcwotQUNfTVNHX1JFU1VMVChbJGVuYWJs
ZV9zdGF0aWNdKQotCi1BQ19MSUJUT09MX0NPTkZJRygkMSkKLQotQUNfTEFOR19QT1AKLUNDPSIk
bHRfc2F2ZV9DQyIKLV0pIyBBQ19MSUJUT09MX0xBTkdfQ19DT05GSUcKLQotCi0jIEFDX0xJQlRP
T0xfTEFOR19DWFhfQ09ORklHCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0jIEVuc3Vy
ZSB0aGF0IHRoZSBjb25maWd1cmF0aW9uIHZhcnMgZm9yIHRoZSBDIGNvbXBpbGVyIGFyZQotIyBz
dWl0YWJseSBkZWZpbmVkLiAgVGhvc2UgdmFyaWFibGVzIGFyZSBzdWJzZXF1ZW50bHkgdXNlZCBi
eQotIyBBQ19MSUJUT09MX0NPTkZJRyB0byB3cml0ZSB0aGUgY29tcGlsZXIgY29uZmlndXJhdGlv
biB0byBgbGlidG9vbCcuCi1BQ19ERUZVTihbQUNfTElCVE9PTF9MQU5HX0NYWF9DT05GSUddLCBb
X0xUX0FDX0xBTkdfQ1hYX0NPTkZJRyhDWFgpXSkKLUFDX0RFRlVOKFtfTFRfQUNfTEFOR19DWFhf
Q09ORklHXSwKLVtBQ19MQU5HX1BVU0goQysrKQotQUNfUkVRVUlSRShbQUNfUFJPR19DWFhdKQot
QUNfUkVRVUlSRShbQUNfUFJPR19DWFhDUFBdKQotCi1fTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21k
c19uZWVkX2xjLCAkMSk9bm8KLV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQx
KT0KLV9MVF9BQ19UQUdWQVIoYWx3YXlzX2V4cG9ydF9zeW1ib2xzLCAkMSk9bm8KLV9MVF9BQ19U
QUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPQotX0xUX0FDX1RBR1ZBUihleHBvcnRfZHlu
YW1pY19mbGFnX3NwZWMsICQxKT0KLV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9
bm8KLV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPQotX0xUX0FD
X1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9Ci1fTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX21pbnVzX0wsICQxKT1ubwotX0xUX0FDX1RBR1ZBUihsaW5rX2FsbF9kZXBsaWJzLCAk
MSk9dW5rbm93bgotX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAkMSk9JG9sZF9hcmNo
aXZlX2NtZHMKLV9MVF9BQ19UQUdWQVIobm9fdW5kZWZpbmVkX2ZsYWcsICQxKT0KLV9MVF9BQ19U
QUdWQVIod2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0KLQotIyBEZXBlbmRlbmNpZXMgdG8g
cGxhY2UgYmVmb3JlIGFuZCBhZnRlciB0aGUgb2JqZWN0IGJlaW5nIGxpbmtlZDoKLV9MVF9BQ19U
QUdWQVIocHJlZGVwX29iamVjdHMsICQxKT0KLV9MVF9BQ19UQUdWQVIocG9zdGRlcF9vYmplY3Rz
LCAkMSk9Ci1fTFRfQUNfVEFHVkFSKHByZWRlcHMsICQxKT0KLV9MVF9BQ19UQUdWQVIocG9zdGRl
cHMsICQxKT0KLV9MVF9BQ19UQUdWQVIoY29tcGlsZXJfbGliX3NlYXJjaF9wYXRoLCAkMSk9Ci0K
LSMgU291cmNlIGZpbGUgZXh0ZW5zaW9uIGZvciBDIHRlc3Qgc291cmNlcy4KLWFjX2V4dD1jYwot
Ci0jIE9iamVjdCBmaWxlIGV4dGVuc2lvbiBmb3IgY29tcGlsZWQgQyB0ZXN0IHNvdXJjZXMuCi1v
YmpleHQ9bwotX0xUX0FDX1RBR1ZBUihvYmpleHQsICQxKT0kb2JqZXh0Ci0KLSMgQ29kZSB0byBi
ZSB1c2VkIGluIHNpbXBsZSBjb21waWxlIHRlc3RzCi1sdF9zaW1wbGVfY29tcGlsZV90ZXN0X2Nv
ZGU9ImludCBzb21lX3ZhcmlhYmxlID0gMDsiCi0KLSMgQ29kZSB0byBiZSB1c2VkIGluIHNpbXBs
ZSBsaW5rIHRlc3RzCi1sdF9zaW1wbGVfbGlua190ZXN0X2NvZGU9J2ludCBtYWluKGludCBjaGFy
ICpbXSkgeyByZXR1cm4oMCk7IH0nCi0KLSMgbHRtYWluIG9ubHkgdXNlcyAkQ0MgZm9yIHRhZ2dl
ZCBjb25maWd1cmF0aW9ucyBzbyBtYWtlIHN1cmUgJENDIGlzIHNldC4KLV9MVF9BQ19TWVNfQ09N
UElMRVIKLQotIyBBbGxvdyBDQyB0byBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3VtZW50cy4K
LWx0X3NhdmVfQ0M9IiRDQyIKLUNDPSR7Q1hYLSJjKysifQotc2V0IGR1bW15ICRDQwotY29tcGls
ZXI9IlskXTIiCi1fTFRfQUNfVEFHVkFSKGNvbXBpbGVyLCAkMSk9JENDCi1jY19iYXNlbmFtZT1g
JGVjaG8gWCIkY29tcGlsZXIiIHwgJFhzZWQgLWUgJ3MlXi4qLyUlJ2AKLQotIyBXZSBkb24ndCB3
YW50IC1mbm8tZXhjZXB0aW9uIHdlbiBjb21waWxpbmcgQysrIGNvZGUsIHNvIHNldCB0aGUKLSMg
bm9fYnVpbHRpbl9mbGFnIHNlcGFyYXRlbHkKLWlmIHRlc3QgIiRHWFgiID0geWVzOyB0aGVuCi0g
IF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWcsICQxKT0nIC1m
bm8tYnVpbHRpbicKLWVsc2UKLSAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX25vX2J1
aWx0aW5fZmxhZywgJDEpPQotZmkKLQotaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KLSAgIyBT
ZXQgdXAgZGVmYXVsdCBHTlUgQysrIGNvbmZpZ3VyYXRpb24KLQotICAjIENoZWNrIGlmIEdOVSBD
KysgdXNlcyBHTlUgbGQgYXMgdGhlIHVuZGVybHlpbmcgbGlua2VyLCBzaW5jZSB0aGUKLSAgIyBh
cmNoaXZpbmcgY29tbWFuZHMgYmVsb3cgYXNzdW1lIHRoYXQgR05VIGxkIGlzIGJlaW5nIHVzZWQu
Ci0gIGlmIGV2YWwgImAkQ0MgLXByaW50LXByb2ctbmFtZT1sZGAgLS12ZXJzaW9uIDI+JjEiIHwg
XAotICAgICAgZWdyZXAgJ0dOVSBsZCcgPiAvZGV2L251bGw7IHRoZW4KLSAgICB3aXRoX2dudV9s
ZD15ZXMKLQotICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVk
IC1ub3N0ZGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2Jq
ZWN0cyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgLW8gJGxpYicKLSAg
ICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5v
c3RkbGliICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3Rz
ICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAke3dsfS1yZXRhaW4tc3lt
Ym9scy1maWxlICR3bCRleHBvcnRfc3ltYm9scyAtbyAkbGliJwotCi0gICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LS1ycGF0aCAke3dsfSRsaWJk
aXInCi0gICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfZHluYW1pY19mbGFnX3NwZWMsICQxKT0nJHt3
bH0tLWV4cG9ydC1keW5hbWljJwotCi0gICAgIyBJZiBhcmNoaXZlX2NtZHMgcnVucyBMRCwgbm90
IENDLCB3bGFyYyBzaG91bGQgYmUgZW1wdHkKLSAgICAjIFhYWCBJIHRoaW5rIHdsYXJjIGNhbiBi
ZSBlbGltaW5hdGVkIGluIGx0Y2YtY3h4LCBidXQgSSBuZWVkIHRvCi0gICAgIyAgICAgaW52ZXN0
aWdhdGUgaXQgYSBsaXR0bGUgYml0IG1vcmUuIChNTSkKLSAgICB3bGFyYz0nJHt3bH0nCi0KLSAg
ICAjIGFuY2llbnQgR05VIGxkIGRpZG4ndCBzdXBwb3J0IC0td2hvbGUtYXJjaGl2ZSBldC4gYWwu
Ci0gICAgaWYgZXZhbCAiYCRDQyAtcHJpbnQtcHJvZy1uYW1lPWxkYCAtLWhlbHAgMj4mMSIgfCBc
Ci0JZWdyZXAgJ25vLXdob2xlLWFyY2hpdmUnID4gL2Rldi9udWxsOyB0aGVuCi0gICAgICBfTFRf
QUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9IiR3bGFyYyInLS13aG9sZS1h
cmNoaXZlJGNvbnZlbmllbmNlICciJHdsYXJjIictLW5vLXdob2xlLWFyY2hpdmUnCi0gICAgZWxz
ZQotICAgICAgX0xUX0FDX1RBR1ZBUih3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYywgJDEpPQotICAg
IGZpCi0gIGVsc2UKLSAgICB3aXRoX2dudV9sZD1ubwotICAgIHdsYXJjPQotCi0gICAgIyBBIGdl
bmVyaWMgYW5kIHZlcnkgc2ltcGxlIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgY3JlYXRpb24KLSAg
ICAjIGNvbW1hbmQgZm9yIEdOVSBDKysgZm9yIHRoZSBjYXNlIHdoZXJlIGl0IHVzZXMgdGhlIG5h
dGl2ZQotICAgICMgbGlua2VyLCBpbnN0ZWFkIG9mIEdOVSBsZC4gIElmIHBvc3NpYmxlLCB0aGlz
IHNldHRpbmcgc2hvdWxkCi0gICAgIyBvdmVycmlkZGVuIHRvIHRha2UgYWR2YW50YWdlIG9mIHRo
ZSBuYXRpdmUgbGlua2VyIGZlYXR1cmVzIG9uCi0gICAgIyB0aGUgcGxhdGZvcm0gaXQgaXMgYmVp
bmcgdXNlZCBvbi4KLSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNo
YXJlZCAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAk
Y29tcGlsZXJfZmxhZ3MgLW8gJGxpYicKLSAgZmkKLQotICAjIENvbW1hbmRzIHRvIG1ha2UgY29t
cGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxpc3RzCi0gICMgd2hhdCAiaGlkZGVu
IiBsaWJyYXJpZXMsIG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgotICAjIGxp
bmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KLSAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9JyRDQyAt
c2hhcmVkICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxIHwgZWdyZXAgIlwtTCInCi0K
LWVsc2UKLSAgR1hYPW5vCi0gIHdpdGhfZ251X2xkPW5vCi0gIHdsYXJjPQotZmkKLQotIyBQT1JU
TUU6IGZpbGwgaW4gYSBkZXNjcmlwdGlvbiBvZiB5b3VyIHN5c3RlbSdzIEMrKyBsaW5rIGNoYXJh
Y3RlcmlzdGljcwotQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRoZSAkY29tcGlsZXIgbGlua2Vy
ICgkTEQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXNdKQotX0xUX0FDX1RBR1ZBUihsZF9zaGxp
YnMsICQxKT15ZXMKLWNhc2UgJGhvc3Rfb3MgaW4KLSAgYWl4MyopCi0gICAgIyBGSVhNRTogaW5z
ZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0Ci0gICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxp
YnMsICQxKT1ubwotICAgIDs7Ci0gIGFpeDQqIHwgYWl4NSopCi0gICAgaWYgdGVzdCAiJGhvc3Rf
Y3B1IiA9IGlhNjQ7IHRoZW4KLSAgICAgICMgT24gSUE2NCwgdGhlIGxpbmtlciBkb2VzIHJ1biB0
aW1lIGxpbmtpbmcgYnkgZGVmYXVsdCwgc28gd2UgZG9uJ3QKLSAgICAgICMgaGF2ZSB0byBkbyBh
bnl0aGluZyBzcGVjaWFsLgotICAgICAgYWl4X3VzZV9ydW50aW1lbGlua2luZz1ubwotICAgICAg
ZXhwX3N5bV9mbGFnPSctQmV4cG9ydCcKLSAgICAgIG5vX2VudHJ5X2ZsYWc9IiIKLSAgICBlbHNl
Ci0gICAgICAjIEtERSByZXF1aXJlcyBydW4gdGltZSBsaW5raW5nLiAgTWFrZSBpdCB0aGUgZGVm
YXVsdC4KLSAgICAgIGFpeF91c2VfcnVudGltZWxpbmtpbmc9eWVzCi0gICAgICBleHBfc3ltX2Zs
YWc9Jy1iZXhwb3J0JwotICAgICAgbm9fZW50cnlfZmxhZz0nLWJub2VudHJ5JwotICAgIGZpCi0K
LSAgICAjIFdoZW4gbGFyZ2UgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIG9iamVjdHMgYXJlIGJ1aWx0
LCBBSVggbGQgY2FuCi0gICAgIyBoYXZlIHByb2JsZW1zIGNyZWF0aW5nIHRoZSB0YWJsZSBvZiBj
b250ZW50cy4gIElmIGxpbmtpbmcgYSBsaWJyYXJ5Ci0gICAgIyBvciBwcm9ncmFtIHJlc3VsdHMg
aW4gImVycm9yIFRPQyBvdmVyZmxvdyIgYWRkIC1tbWluaW1hbC10b2MgdG8KLSAgICAjIENYWEZM
QUdTL0NGTEFHUyBmb3IgZysrL2djYy4gIEluIHRoZSBjYXNlcyB3aGVyZSB0aGF0IGlzIG5vdAot
ICAgICMgZW5vdWdoIHRvIGZpeCB0aGUgcHJvYmxlbSwgYWRkIC1XbCwtYmJpZ3RvYyB0byBMREZM
QUdTLgotCi0gICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJwotICAgIF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCi0gICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9JzonCi0gICAgX0xUX0FDX1RBR1ZBUihsaW5rX2Fs
bF9kZXBsaWJzLCAkMSk9eWVzCi0KLSAgICBpZiB0ZXN0ICIkR1hYIiA9IHllczsgdGhlbgotICAg
ICAgY2FzZSAkaG9zdF9vcyBpbiBhaXg0LlswMTJdfGFpeDQuWzAxMl0uKikKLSAgICAgICMgV2Ug
b25seSB3YW50IHRvIGRvIHRoaXMgb24gQUlYIDQuMiBhbmQgbG93ZXIsIHRoZSBjaGVjawotICAg
ICAgIyBiZWxvdyBmb3IgYnJva2VuIGNvbGxlY3QyIGRvZXNuJ3Qgd29yayB1bmRlciA0LjMrCi0J
Y29sbGVjdDJuYW1lPWAke0NDfSAtcHJpbnQtcHJvZy1uYW1lPWNvbGxlY3QyYAotCWlmIHRlc3Qg
LWYgIiRjb2xsZWN0Mm5hbWUiICYmIFwKLQkgICBzdHJpbmdzICIkY29sbGVjdDJuYW1lIiB8IGdy
ZXAgcmVzb2x2ZV9saWJfbmFtZSA+L2Rldi9udWxsCi0JdGhlbgotCSAgIyBXZSBoYXZlIHJld29y
a2VkIGNvbGxlY3QyCi0JICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwot
CWVsc2UKLQkgICMgV2UgaGF2ZSBvbGQgY29sbGVjdDIKLQkgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfZGlyZWN0LCAkMSk9dW5zdXBwb3J0ZWQKLQkgICMgSXQgZmFpbHMgdG8gZmluZCB1bmluc3Rh
bGxlZCBsaWJyYXJpZXMgd2hlbiB0aGUgdW5pbnN0YWxsZWQKLQkgICMgcGF0aCBpcyBub3QgbGlz
dGVkIGluIHRoZSBsaWJwYXRoLiAgU2V0dGluZyBoYXJkY29kZV9taW51c19MCi0JICAjIHRvIHVu
c3VwcG9ydGVkIGZvcmNlcyByZWxpbmtpbmcKLQkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWlu
dXNfTCwgJDEpPXllcwotCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj
LCAkMSk9Jy1MJGxpYmRpcicKLQkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFy
YXRvciwgJDEpPQotCWZpCi0gICAgICBlc2FjCi0gICAgICBzaGFyZWRfZmxhZz0nLXNoYXJlZCcK
LSAgICBlbHNlCi0gICAgICAjIG5vdCB1c2luZyBnY2MKLSAgICAgIGlmIHRlc3QgIiRob3N0X2Nw
dSIgPSBpYTY0OyB0aGVuCi0JIyBWaXN1YWxBZ2UgQysrLCBWZXJzaW9uIDUuNSBmb3IgQUlYIDVM
IGZvciBJQS02NCwgQmV0YSAzIFJlbGVhc2UKLQkjIGNob2tlcyBvbiAtV2wsLUcuIFRoZSBmb2xs
b3dpbmcgbGluZSBpcyBjb3JyZWN0OgotCXNoYXJlZF9mbGFnPSctRycKLSAgICAgIGVsc2UKLQlp
ZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSB5ZXM7IHRoZW4KLQkgIHNoYXJlZF9m
bGFnPSctcW1rc2hyb2JqICR7d2x9LUcnCi0JZWxzZQotCSAgc2hhcmVkX2ZsYWc9Jy1xbWtzaHJv
YmonCi0JZmkKLSAgICAgIGZpCi0gICAgZmkKLQotICAgICMgTGV0IHRoZSBjb21waWxlciBoYW5k
bGUgdGhlIGV4cG9ydCBsaXN0LgotICAgIF9MVF9BQ19UQUdWQVIoYWx3YXlzX2V4cG9ydF9zeW1i
b2xzLCAkMSk9bm8KLSAgICBpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSB5ZXM7
IHRoZW4KLSAgICAgICMgV2FybmluZyAtIHdpdGhvdXQgdXNpbmcgdGhlIG90aGVyIHJ1bnRpbWUg
bG9hZGluZyBmbGFncyAoLWJydGwpLAotICAgICAgIyAtYmVyb2sgd2lsbCBsaW5rIHdpdGhvdXQg
ZXJyb3IsIGJ1dCBtYXkgcHJvZHVjZSBhIGJyb2tlbiBsaWJyYXJ5LgotICAgICAgX0xUX0FDX1RB
R1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPSctYmVyb2snCi0gICAgICAjIERldGVybWlu
ZSB0aGUgZGVmYXVsdCBsaWJwYXRoIGZyb20gdGhlIHZhbHVlIGVuY29kZWQgaW4gYW4gZW1wdHkg
ZXhlY3V0YWJsZS4KLSAgICAgIF9MVF9BQ19TWVNfTElCUEFUSF9BSVgKLSAgICAgIF9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ibGlicGF0aDokbGli
ZGlyOiciJGFpeF9saWJwYXRoIgotCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpPSJcJENDIicgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkbGlib2JqcyAkZGVwbGlicyAk
Y29tcGlsZXJfZmxhZ3MgYGlmIHRlc3QgIngke2FsbG93X3VuZGVmaW5lZF9mbGFnfSIgIT0gIngi
OyB0aGVuIGVjaG8gIiR7d2x9JHthbGxvd191bmRlZmluZWRfZmxhZ30iOyBlbHNlIDo7IGZpYCAn
IiAkc2hhcmVkX2ZsYWciCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMs
ICQxKT0iXCRDQyInIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMg
JGNvbXBpbGVyX2ZsYWdzIGBpZiB0ZXN0ICJ4JHthbGxvd191bmRlZmluZWRfZmxhZ30iICE9ICJ4
IjsgdGhlbiBlY2hvICIke3dsfSR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9IjsgZWxzZSA6OyBmaWAg
JyJcJHt3bH0kZXhwX3N5bV9mbGFnOlwkZXhwb3J0X3N5bWJvbHMgJHNoYXJlZF9mbGFnIgotICAg
ICBlbHNlCi0gICAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhlbgotCV9MVF9BQ19U
QUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1SICRsaWJkaXI6L3Vz
ci9saWI6L2xpYicKLQlfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9Ii16
IG5vZGVmcyIKLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0iXCRDQyAk
c2hhcmVkX2ZsYWciJyAtbyAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWJvYmpzICRkZXBsaWJz
ICRjb21waWxlcl9mbGFncyAke3dsfSR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICciXCR7d2x9JG5v
X2VudHJ5X2ZsYWcgXCR7d2x9JGV4cF9zeW1fZmxhZzpcJGV4cG9ydF9zeW1ib2xzIgotICAgICAg
ZWxzZQotCSMgRGV0ZXJtaW5lIHRoZSBkZWZhdWx0IGxpYnBhdGggZnJvbSB0aGUgdmFsdWUgZW5j
b2RlZCBpbiBhbiBlbXB0eSBleGVjdXRhYmxlLgotCV9MVF9BQ19TWVNfTElCUEFUSF9BSVgKLQlf
TFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tYmxpYnBh
dGg6JGxpYmRpcjonIiRhaXhfbGlicGF0aCIKLQkjIFdhcm5pbmcgLSB3aXRob3V0IHVzaW5nIHRo
ZSBvdGhlciBydW4gdGltZSBsb2FkaW5nIGZsYWdzLAotCSMgLWJlcm9rIHdpbGwgbGluayB3aXRo
b3V0IGVycm9yLCBidXQgbWF5IHByb2R1Y2UgYSBicm9rZW4gbGlicmFyeS4KLQlfTFRfQUNfVEFH
VkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3dsfS1iZXJub3RvaycKLQlfTFRfQUNfVEFH
VkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3dsfS1iZXJvaycKLQkjIC1iZXhwYWxs
IGRvZXMgbm90IGV4cG9ydCBzeW1ib2xzIGJlZ2lubmluZyB3aXRoIHVuZGVyc2NvcmUgKF8pCi0J
X0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQxKT15ZXMKLQkjIEV4cG9ydGVk
IHN5bWJvbHMgY2FuIGJlIHB1bGxlZCBpbnRvIHNoYXJlZCBvYmplY3RzIGZyb20gYXJjaGl2ZXMK
LQlfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9JyAnCi0JX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpPXllcwotCSMgVGhpcyBpcyBzaW1pbGFy
IHRvIGhvdyBBSVggdHJhZGl0aW9uYWxseSBidWlsZHMgaXQncyBzaGFyZWQgbGlicmFyaWVzLgot
CV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSJcJENDICRzaGFyZWRfZmxh
ZyInIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVy
X2ZsYWdzICR7d2x9LWJFOiRleHBvcnRfc3ltYm9scyAke3dsfS1ibm9lbnRyeSR7YWxsb3dfdW5k
ZWZpbmVkX2ZsYWd9fiRBUiAkQVJfRkxBR1MgJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUkcmVsZWFz
ZS5hICRvdXRwdXRfb2JqZGlyLyRzb25hbWUnCi0gICAgICBmaQotICAgIGZpCi0gICAgOzsKLSAg
Y2hvcnVzKikKLSAgICBjYXNlICRjY19iYXNlbmFtZSBpbgotICAgICAgKikKLQkjIEZJWE1FOiBp
bnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGli
cywgJDEpPW5vCi0JOzsKLSAgICBlc2FjCi0gICAgOzsKLSAgZGd1eCopCi0gICAgY2FzZSAkY2Nf
YmFzZW5hbWUgaW4KLSAgICAgIGVjKyspCi0JIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGli
cmFyeSBzdXBwb3J0Ci0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotCTs7Ci0gICAg
ICBnaGN4KQotCSMgR3JlZW4gSGlsbHMgQysrIENvbXBpbGVyCi0JIyBGSVhNRTogaW5zZXJ0IHBy
b3BlciBDKysgbGlicmFyeSBzdXBwb3J0Ci0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1u
bwotCTs7Ci0gICAgICAqKQotCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3Vw
cG9ydAotCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAgIGVzYWMKLSAg
ICA7OwotICBmcmVlYnNkWzEyXSopCi0gICAgIyBDKysgc2hhcmVkIGxpYnJhcmllcyByZXBvcnRl
ZCB0byBiZSBmYWlybHkgYnJva2VuIGJlZm9yZSBzd2l0Y2ggdG8gRUxGCi0gICAgX0xUX0FDX1RB
R1ZBUihsZF9zaGxpYnMsICQxKT1ubwotICAgIDs7Ci0gIGZyZWVic2QtZWxmKikKLSAgICBfTFRf
QUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAkMSk9bm8KLSAgICA7OwotICBmcmVlYnNk
KikKLSAgICAjIEZyZWVCU0QgMyBhbmQgbGF0ZXIgdXNlIEdOVSBDKysgYW5kIEdOVSBsZCB3aXRo
IHN0YW5kYXJkIEVMRgotICAgICMgY29udmVudGlvbnMKLSAgICBfTFRfQUNfVEFHVkFSKGxkX3No
bGlicywgJDEpPXllcwotICAgIDs7Ci0gIGdudSopCi0gICAgOzsKLSAgaHB1eCopCi0gICAgaWYg
dGVzdCAkd2l0aF9nbnVfbGQgPSBubzsgdGhlbgotICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9
IGlhNjQ7IHRoZW4KLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQx
KT0nLUwkbGliZGlyJwotICAgICAgZWxzZQotCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X2ZsYWdfc3BlYywgJDEpPScke3dsfStiICR7d2x9JGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06Ci0JX0xUX0FDX1RBR1ZBUihleHBvcnRfZHlu
YW1pY19mbGFnX3NwZWMsICQxKT0nJHt3bH0tRScKLSAgICAgIGZpCi0gICAgZmkKLSAgICBpZiB0
ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhlbgotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9kaXJlY3QsICQxKT1ubwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhf
dmFyLCAkMSk9bm8KLSAgICBlbHNlCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVj
dCwgJDEpPXllcwotICAgIGZpCi0gICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9taW51c19MLCAk
MSk9eWVzICMgTm90IGluIHRoZSBzZWFyY2ggUEFUSCwKLQkJCQkJICAgICMgYnV0IGFzIHRoZSBk
ZWZhdWx0Ci0JCQkJCSAgICAjIGxvY2F0aW9uIG9mIHRoZSBsaWJyYXJ5LgotCi0gICAgY2FzZSAk
Y2NfYmFzZW5hbWUgaW4KLSAgICAgIENDKQotCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxp
YnJhcnkgc3VwcG9ydAotCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAg
ICAgYUNDKQotCWNhc2UgJGhvc3Rfb3MgaW4KLQlocHV4OSopCi0JICBfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckcm0gJG91dHB1dF9vYmpkaXIvJHNvbmFtZX4kQ0MgLWIgJHt3bH0r
YiAke3dsfSRpbnN0YWxsX2xpYmRpciAtbyAkb3V0cHV0X29iamRpci8kc29uYW1lICRwcmVkZXBf
b2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFn
c350ZXN0ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgPSAkbGliIHx8IG12ICRvdXRwdXRfb2JqZGly
LyRzb25hbWUgJGxpYicKLQkgIDs7Ci0JKikKLQkgIGlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0
OyB0aGVuCi0JICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtYiAraCAk
c29uYW1lIC1vICRsaWIgJGxpbmtlcl9mbGFncyAkbGlib2JqcyAkZGVwbGlicycKLQkgIGVsc2UK
LQkgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1iICR7d2x9K2ggJHt3
bH0kc29uYW1lICR7d2x9K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIgLW8gJGxpYiAkcHJlZGVwX29i
amVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3Mn
Ci0JICBmaQotCSAgOzsKLQllc2FjCi0JIyBDb21tYW5kcyB0byBtYWtlIGNvbXBpbGVyIHByb2R1
Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwotCSMgd2hhdCAiaGlkZGVuIiBsaWJyYXJpZXMs
IG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgotCSMgbGlua2luZyBhIHNoYXJl
ZCBsaWJyYXJ5LgotCSMKLQkjIFRoZXJlIGRvZXNuJ3QgYXBwZWFyIHRvIGJlIGEgd2F5IHRvIHBy
ZXZlbnQgdGhpcyBjb21waWxlciBmcm9tCi0JIyBleHBsaWNpdGx5IGxpbmtpbmcgc3lzdGVtIG9i
amVjdCBmaWxlcyBzbyB3ZSBuZWVkIHRvIHN0cmlwIHRoZW0KLQkjIGZyb20gdGhlIG91dHB1dCBz
byB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5Ci0JIyBkZXBlbmRl
bmNpZXMuCi0Jb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J3RlbXBsaXN0PWAoJENDIC1iICRDRkxB
R1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxKSB8IGVncmVwICJcLUwiYDsgbGlzdD0iIjsgZm9y
IHogaW4gJHRlbXBsaXN0OyBkbyBjYXNlICR6IGluIGNvbmZ0ZXN0LiRvYmpleHQpIGxpc3Q9IiRs
aXN0ICR6Ijs7ICouJG9iamV4dCk7OyAqKSBsaXN0PSIkbGlzdCAkeiI7O2VzYWM7IGRvbmU7IGVj
aG8gJGxpc3QnCi0JOzsKLSAgICAgICopCi0JaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KLQkg
IGlmIHRlc3QgJHdpdGhfZ251X2xkID0gbm87IHRoZW4KLQkgICAgY2FzZSAkaG9zdF9vcyBpbgot
CSAgICBocHV4OSopCi0JICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJHJt
ICRvdXRwdXRfb2JqZGlyLyRzb25hbWV+JENDIC1zaGFyZWQgLW5vc3RkbGliIC1mUElDICR7d2x9
K2IgJHt3bH0kaW5zdGFsbF9saWJkaXIgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkcHJlZGVw
X29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxh
Z3N+dGVzdCAkb3V0cHV0X29iamRpci8kc29uYW1lID0gJGxpYiB8fCBtdiAkb3V0cHV0X29iamRp
ci8kc29uYW1lICRsaWInCi0JICAgICAgOzsKLQkgICAgKikKLQkgICAgICBpZiB0ZXN0ICIkaG9z
dF9jcHUiID0gaWE2NDsgdGhlbgotCQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSck
TEQgLWIgK2ggJHNvbmFtZSAtbyAkbGliICRsaW5rZXJfZmxhZ3MgJGxpYm9ianMgJGRlcGxpYnMn
Ci0JICAgICAgZWxzZQotCQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNo
YXJlZCAtbm9zdGRsaWIgLWZQSUMgJHt3bH0raCAke3dsfSRzb25hbWUgJHt3bH0rYiAke3dsfSRp
bnN0YWxsX2xpYmRpciAtbyAkbGliICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAk
cG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncycKLQkgICAgICBmaQotCSAgICAgIDs7Ci0J
ICAgIGVzYWMKLQkgIGZpCi0JZWxzZQotCSAgIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGli
cmFyeSBzdXBwb3J0Ci0JICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0JZmkKLQk7
OwotICAgIGVzYWMKLSAgICA7OwotICBpcml4NSogfCBpcml4NiopCi0gICAgY2FzZSAkY2NfYmFz
ZW5hbWUgaW4KLSAgICAgIENDKQotCSMgU0dJIEMrKwotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9j
bWRzLCAkMSk9JyRDQyAtc2hhcmVkIC1hbGwgLW11bHRpZ290ICRwcmVkZXBfb2JqZWN0cyAkbGli
b2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAtc29uYW1lICRz
b25hbWUgYHRlc3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gLXNldF92ZXJzaW9uICR2ZXJzdHJp
bmdgIC11cGRhdGVfcmVnaXN0cnkgJHtvYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwotCi0J
IyBBcmNoaXZlcyBjb250YWluaW5nIEMrKyBvYmplY3QgZmlsZXMgbXVzdCBiZSBjcmVhdGVkIHVz
aW5nCi0JIyAiQ0MgLWFyIiwgd2hlcmUgIkNDIiBpcyB0aGUgSVJJWCBDKysgY29tcGlsZXIuICBU
aGlzIGlzCi0JIyBuZWNlc3NhcnkgdG8gbWFrZSBzdXJlIGluc3RhbnRpYXRlZCB0ZW1wbGF0ZXMg
YXJlIGluY2x1ZGVkCi0JIyBpbiB0aGUgYXJjaGl2ZS4KLQlfTFRfQUNfVEFHVkFSKG9sZF9hcmNo
aXZlX2NtZHMsICQxKT0nJENDIC1hciAtV1IsLXUgLW8gJG9sZGxpYiAkb2xkb2JqcycKLQk7Owot
ICAgICAgKikKLQlpZiB0ZXN0ICIkR1hYIiA9IHllczsgdGhlbgotCSAgaWYgdGVzdCAiJHdpdGhf
Z251X2xkIiA9IG5vOyB0aGVuCi0JICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9
JyRDQyAtc2hhcmVkIC1ub3N0ZGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMg
JHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR7d2x9JHNvbmFt
ZSBgdGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAke3dsfS1zZXRfdmVyc2lvbiAke3dsfSR2
ZXJzdHJpbmdgICR7d2x9LXVwZGF0ZV9yZWdpc3RyeSAke3dsfSR7b2JqZGlyfS9zb19sb2NhdGlv
bnMgLW8gJGxpYicKLQkgIGVsc2UKLQkgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQx
KT0nJENDIC1zaGFyZWQgLW5vc3RkbGliICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGli
cyAkcG9zdGRlcF9vYmplY3RzICRsaW5rZXJfZmxhZ3MgLXNvbmFtZSAkc29uYW1lIGB0ZXN0IC1u
ICIkdmVyc3RyaW5nIiAmJiBlY2hvIC1zZXRfdmVyc2lvbiAkdmVyc3RyaW5nYCAtbyAkbGliJwot
CSAgZmkKLQlmaQotCV9MVF9BQ19UQUdWQVIobGlua19hbGxfZGVwbGlicywgJDEpPXllcwotCTs7
Ci0gICAgZXNhYwotICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywg
JDEpPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCi0gICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgotICAgIDs7Ci0gIGxpbnV4KikKLSAgICBjYXNlICRj
Y19iYXNlbmFtZSBpbgotICAgICAgS0NDKQotCSMgS3VjayBhbmQgQXNzb2NpYXRlcywgSW5jLiAo
S0FJKSBDKysgQ29tcGlsZXIKLQotCSMgS0NDIHdpbGwgb25seSBjcmVhdGUgYSBzaGFyZWQgbGli
cmFyeSBpZiB0aGUgb3V0cHV0IGZpbGUKLQkjIGVuZHMgd2l0aCAiLnNvIiAob3IgIi5zbCIgZm9y
IEhQLVVYKSwgc28gcmVuYW1lIHRoZSBsaWJyYXJ5Ci0JIyB0byBpdHMgcHJvcGVyIG5hbWUgKHdp
dGggdmVyc2lvbikgYWZ0ZXIgbGlua2luZy4KLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpPSd0ZW1wbGliPWBlY2hvICRsaWIgfCBzZWQgLWUgInMvXC5zb1wuLiovXC5zby8iYDsgJEND
ICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21w
aWxlcl9mbGFncyAtLXNvbmFtZSAkc29uYW1lIC1vIFwkdGVtcGxpYjsgbXYgXCR0ZW1wbGliICRs
aWInCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9J3RlbXBsaWI9YGVj
aG8gJGxpYiB8IHNlZCAtZSAicy9cLnNvXC4uKi9cLnNvLyJgOyAkQ0MgJHByZWRlcF9vYmplY3Rz
ICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzIC0tc29u
YW1lICRzb25hbWUgLW8gXCR0ZW1wbGliICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUsJGV4cG9y
dF9zeW1ib2xzOyBtdiBcJHRlbXBsaWIgJGxpYicKLQotCSMgQ29tbWFuZHMgdG8gbWFrZSBjb21w
aWxlciBwcm9kdWNlIHZlcmJvc2Ugb3V0cHV0IHRoYXQgbGlzdHMKLQkjIHdoYXQgImhpZGRlbiIg
bGlicmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdzIGFyZSB1c2VkIHdoZW4KLQkjIGxpbmtp
bmcgYSBzaGFyZWQgbGlicmFyeS4KLQkjCi0JIyBUaGVyZSBkb2Vzbid0IGFwcGVhciB0byBiZSBh
IHdheSB0byBwcmV2ZW50IHRoaXMgY29tcGlsZXIgZnJvbQotCSMgZXhwbGljaXRseSBsaW5raW5n
IHN5c3RlbSBvYmplY3QgZmlsZXMgc28gd2UgbmVlZCB0byBzdHJpcCB0aGVtCi0JIyBmcm9tIHRo
ZSBvdXRwdXQgc28gdGhhdCB0aGV5IGRvbid0IGdldCBpbmNsdWRlZCBpbiB0aGUgbGlicmFyeQot
CSMgZGVwZW5kZW5jaWVzLgotCW91dHB1dF92ZXJib3NlX2xpbmtfY21kPSd0ZW1wbGlzdD1gJEND
ICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAtbyBsaWJjb25mdGVzdC5zbyAyPiYxIHwgZWdy
ZXAgImxkImA7IHJtIC1mIGxpYmNvbmZ0ZXN0LnNvOyBsaXN0PSIiOyBmb3IgeiBpbiAkdGVtcGxp
c3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4dCkgbGlzdD0iJGxpc3QgJHoiOzsgKi4k
b2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNhYzsgZG9uZTsgZWNobyAkbGlzdCcKLQot
CV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS0tcnBh
dGgsJGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEp
PScke3dsfS0tZXhwb3J0LWR5bmFtaWMnCi0KLQkjIEFyY2hpdmVzIGNvbnRhaW5pbmcgQysrIG9i
amVjdCBmaWxlcyBtdXN0IGJlIGNyZWF0ZWQgdXNpbmcKLQkjICJDQyAtQnN0YXRpYyIsIHdoZXJl
ICJDQyIgaXMgdGhlIEtBSSBDKysgY29tcGlsZXIuCi0JX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2
ZV9jbWRzLCAkMSk9JyRDQyAtQnN0YXRpYyAtbyAkb2xkbGliICRvbGRvYmpzJwotCTs7Ci0gICAg
ICBjeHgpCi0JIyBDb21wYXEgQysrCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0n
JENDIC1zaGFyZWQgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29i
amVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkd2wkc29uYW1lIC1vICRsaWInCi0J
X0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRwcmVk
ZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9m
bGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAgLW8gJGxpYiAke3dsfS1yZXRhaW4tc3ltYm9s
cy1maWxlICR3bCRleHBvcnRfc3ltYm9scycKLQotCXJ1bnBhdGhfdmFyPUxEX1JVTl9QQVRICi0J
X0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1ycGF0aCAkbGli
ZGlyJwotCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPToKLQot
CSMgQ29tbWFuZHMgdG8gbWFrZSBjb21waWxlciBwcm9kdWNlIHZlcmJvc2Ugb3V0cHV0IHRoYXQg
bGlzdHMKLQkjIHdoYXQgImhpZGRlbiIgbGlicmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdz
IGFyZSB1c2VkIHdoZW4KLQkjIGxpbmtpbmcgYSBzaGFyZWQgbGlicmFyeS4KLQkjCi0JIyBUaGVy
ZSBkb2Vzbid0IGFwcGVhciB0byBiZSBhIHdheSB0byBwcmV2ZW50IHRoaXMgY29tcGlsZXIgZnJv
bQotCSMgZXhwbGljaXRseSBsaW5raW5nIHN5c3RlbSBvYmplY3QgZmlsZXMgc28gd2UgbmVlZCB0
byBzdHJpcCB0aGVtCi0JIyBmcm9tIHRoZSBvdXRwdXQgc28gdGhhdCB0aGV5IGRvbid0IGdldCBp
bmNsdWRlZCBpbiB0aGUgbGlicmFyeQotCSMgZGVwZW5kZW5jaWVzLgotCW91dHB1dF92ZXJib3Nl
X2xpbmtfY21kPSd0ZW1wbGlzdD1gJENDIC1zaGFyZWQgJENGTEFHUyAtdiBjb25mdGVzdC4kb2Jq
ZXh0IDI+JjEgfCBncmVwICJsZCJgOyB0ZW1wbGlzdD1gZWNobyAkdGVtcGxpc3QgfCBzZWQgInMv
XCheLipsZC4qXClcKCAuKmxkIC4qJFwpL1wxLyJgOyBsaXN0PSIiOyBmb3IgeiBpbiAkdGVtcGxp
c3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4dCkgbGlzdD0iJGxpc3QgJHoiOzsgKi4k
b2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNhYzsgZG9uZTsgZWNobyAkbGlzdCcKLQk7
OwotICAgIGVzYWMKLSAgICA7OwotICBseW54b3MqKQotICAgICMgRklYTUU6IGluc2VydCBwcm9w
ZXIgQysrIGxpYnJhcnkgc3VwcG9ydAotICAgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9
bm8KLSAgICA7OwotICBtODhrKikKLSAgICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJy
YXJ5IHN1cHBvcnQKLSAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0gICAgOzsK
LSAgbXZzKikKLSAgICBjYXNlICRjY19iYXNlbmFtZSBpbgotICAgICAgY3h4KQotCSMgRklYTUU6
IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAotCV9MVF9BQ19UQUdWQVIobGRfc2hs
aWJzLCAkMSk9bm8KLQk7OwotICAgICAgKikKLQkjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBs
aWJyYXJ5IHN1cHBvcnQKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0JOzsKLSAg
ICBlc2FjCi0gICAgOzsKLSAgbmV0YnNkKikKLSAgICAjIE5ldEJTRCB1c2VzIGcrKyAtIGRvIHdl
IG5lZWQgdG8gZG8gYW55dGhpbmc/Ci0gICAgOzsKLSAgb3NmMyopCi0gICAgY2FzZSAkY2NfYmFz
ZW5hbWUgaW4KLSAgICAgIEtDQykKLQkjIEt1Y2sgYW5kIEFzc29jaWF0ZXMsIEluYy4gKEtBSSkg
QysrIENvbXBpbGVyCi0KLQkjIEtDQyB3aWxsIG9ubHkgY3JlYXRlIGEgc2hhcmVkIGxpYnJhcnkg
aWYgdGhlIG91dHB1dCBmaWxlCi0JIyBlbmRzIHdpdGggIi5zbyIgKG9yICIuc2wiIGZvciBIUC1V
WCksIHNvIHJlbmFtZSB0aGUgbGlicmFyeQotCSMgdG8gaXRzIHByb3BlciBuYW1lICh3aXRoIHZl
cnNpb24pIGFmdGVyIGxpbmtpbmcuCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0n
dGVtcGxpYj1gZWNobyAkbGliIHwgc2VkIC1lICJzL1wuc29cLi4qL1wuc28vImA7ICRDQyAkcHJl
ZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJf
ZmxhZ3MgLS1zb25hbWUgJHNvbmFtZSAtbyBcJHRlbXBsaWI7IG12IFwkdGVtcGxpYiAkbGliJwot
Ci0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJw
YXRoLCRsaWJkaXInCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAk
MSk9OgotCi0JIyBBcmNoaXZlcyBjb250YWluaW5nIEMrKyBvYmplY3QgZmlsZXMgbXVzdCBiZSBj
cmVhdGVkIHVzaW5nCi0JIyAiQ0MgLUJzdGF0aWMiLCB3aGVyZSAiQ0MiIGlzIHRoZSBLQUkgQysr
IGNvbXBpbGVyLgotCV9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfY21kcywgJDEpPSckQ0MgLUJz
dGF0aWMgLW8gJG9sZGxpYiAkb2xkb2JqcycKLQotCTs7Ci0gICAgICBSQ0MpCi0JIyBSYXRpb25h
bCBDKysgMi40LjEKLQkjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQK
LQlfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0JOzsKLSAgICAgIGN4eCkKLQlfTFRf
QUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3dsfS1leHBlY3RfdW5yZXNv
bHZlZCAke3dsfVwqJwotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hh
cmVkJHthbGxvd191bmRlZmluZWRfZmxhZ30gJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBs
aWJzICRwb3N0ZGVwX29iamVjdHMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAkc29uYW1l
IGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBlY2hvICR7d2x9LXNldF92ZXJzaW9uICR2ZXJzdHJp
bmdgIC11cGRhdGVfcmVnaXN0cnkgJHtvYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwotCi0J
X0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRo
ICR7d2x9JGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3Is
ICQxKT06Ci0KLQkjIENvbW1hbmRzIHRvIG1ha2UgY29tcGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91
dHB1dCB0aGF0IGxpc3RzCi0JIyB3aGF0ICJoaWRkZW4iIGxpYnJhcmllcywgb2JqZWN0IGZpbGVz
IGFuZCBmbGFncyBhcmUgdXNlZCB3aGVuCi0JIyBsaW5raW5nIGEgc2hhcmVkIGxpYnJhcnkuCi0J
IwotCSMgVGhlcmUgZG9lc24ndCBhcHBlYXIgdG8gYmUgYSB3YXkgdG8gcHJldmVudCB0aGlzIGNv
bXBpbGVyIGZyb20KLQkjIGV4cGxpY2l0bHkgbGlua2luZyBzeXN0ZW0gb2JqZWN0IGZpbGVzIHNv
IHdlIG5lZWQgdG8gc3RyaXAgdGhlbQotCSMgZnJvbSB0aGUgb3V0cHV0IHNvIHRoYXQgdGhleSBk
b24ndCBnZXQgaW5jbHVkZWQgaW4gdGhlIGxpYnJhcnkKLQkjIGRlcGVuZGVuY2llcy4KLQlvdXRw
dXRfdmVyYm9zZV9saW5rX2NtZD0ndGVtcGxpc3Q9YCRDQyAtc2hhcmVkICRDRkxBR1MgLXYgY29u
ZnRlc3QuJG9iamV4dCAyPiYxIHwgZ3JlcCAibGQiIHwgZ3JlcCAtdiAibGQ6ImA7IHRlbXBsaXN0
PWBlY2hvICR0ZW1wbGlzdCB8IHNlZCAicy9cKF4uKmxkLipcKVwoIC4qbGQuKiRcKS9cMS8iYDsg
bGlzdD0iIjsgZm9yIHogaW4gJHRlbXBsaXN0OyBkbyBjYXNlICR6IGluIGNvbmZ0ZXN0LiRvYmpl
eHQpIGxpc3Q9IiRsaXN0ICR6Ijs7ICouJG9iamV4dCk7OyAqKSBsaXN0PSIkbGlzdCAkeiI7O2Vz
YWM7IGRvbmU7IGVjaG8gJGxpc3QnCi0JOzsKLSAgICAgICopCi0JaWYgdGVzdCAiJEdYWCIgPSB5
ZXMgJiYgdGVzdCAiJHdpdGhfZ251X2xkIiA9IG5vOyB0aGVuCi0JICBfTFRfQUNfVEFHVkFSKGFs
bG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3dsfS1leHBlY3RfdW5yZXNvbHZlZCAke3dsfVwq
JwotCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5vc3Rk
bGliICR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVw
bGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHt3bH0k
c29uYW1lIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBlY2hvICR7d2x9LXNldF92ZXJzaW9uICR7
d2x9JHZlcnN0cmluZ2AgJHt3bH0tdXBkYXRlX3JlZ2lzdHJ5ICR7d2x9JHtvYmpkaXJ9L3NvX2xv
Y2F0aW9ucyAtbyAkbGliJwotCi0JICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFn
X3NwZWMsICQxKT0nJHt3bH0tcnBhdGggJHt3bH0kbGliZGlyJwotCSAgX0xUX0FDX1RBR1ZBUiho
YXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgotCi0JICAjIENvbW1hbmRzIHRvIG1ha2Ug
Y29tcGlsZXIgcHJvZHVjZSB2ZXJib3NlIG91dHB1dCB0aGF0IGxpc3RzCi0JICAjIHdoYXQgImhp
ZGRlbiIgbGlicmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdzIGFyZSB1c2VkIHdoZW4KLQkg
ICMgbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgotCSAgb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9
JyRDQyAtc2hhcmVkICRDRkxBR1MgLXYgY29uZnRlc3QuJG9iamV4dCAyPiYxIHwgZWdyZXAgIlwt
TCInCi0KLQllbHNlCi0JICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBv
cnQKLQkgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLQlmaQotCTs7Ci0gICAgZXNh
YwotICAgIDs7Ci0gIG9zZjQqIHwgb3NmNSopCi0gICAgY2FzZSAkY2NfYmFzZW5hbWUgaW4KLSAg
ICAgIEtDQykKLQkjIEt1Y2sgYW5kIEFzc29jaWF0ZXMsIEluYy4gKEtBSSkgQysrIENvbXBpbGVy
Ci0KLQkjIEtDQyB3aWxsIG9ubHkgY3JlYXRlIGEgc2hhcmVkIGxpYnJhcnkgaWYgdGhlIG91dHB1
dCBmaWxlCi0JIyBlbmRzIHdpdGggIi5zbyIgKG9yICIuc2wiIGZvciBIUC1VWCksIHNvIHJlbmFt
ZSB0aGUgbGlicmFyeQotCSMgdG8gaXRzIHByb3BlciBuYW1lICh3aXRoIHZlcnNpb24pIGFmdGVy
IGxpbmtpbmcuCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0ndGVtcGxpYj1gZWNo
byAkbGliIHwgc2VkIC1lICJzL1wuc29cLi4qL1wuc28vImA7ICRDQyAkcHJlZGVwX29iamVjdHMg
JGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MgLS1zb25h
bWUgJHNvbmFtZSAtbyBcJHRlbXBsaWI7IG12IFwkdGVtcGxpYiAkbGliJwotCi0JX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRoLCRsaWJkaXIn
Ci0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgotCi0JIyBB
cmNoaXZlcyBjb250YWluaW5nIEMrKyBvYmplY3QgZmlsZXMgbXVzdCBiZSBjcmVhdGVkIHVzaW5n
Ci0JIyB0aGUgS0FJIEMrKyBjb21waWxlci4KLQlfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2Nt
ZHMsICQxKT0nJENDIC1vICRvbGRsaWIgJG9sZG9ianMnCi0JOzsKLSAgICAgIFJDQykKLQkjIFJh
dGlvbmFsIEMrKyAyLjQuMQotCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3Vw
cG9ydAotCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAgICAgY3h4KQot
CV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nIC1leHBlY3RfdW5yZXNv
bHZlZCBcKicKLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCR7
YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAk
cG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAtbXN5bSAtc29uYW1lICRzb25hbWUgYHRl
c3QgLW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gLXNldF92ZXJzaW9uICR2ZXJzdHJpbmdgIC11cGRh
dGVfcmVnaXN0cnkgJHtvYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGliJwotCV9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSdmb3IgaSBpbiBgY2F0ICRleHBvcnRfc3ltYm9s
c2A7IGRvIHByaW50ZiAiLWV4cG9ydGVkX3N5bWJvbCAiID4+ICRsaWIuZXhwOyBlY2hvICJcJGki
ID4+ICRsaWIuZXhwOyBkb25lfgotCSAgZWNobyAiLWhpZGRlbiI+PiAkbGliLmV4cH4KLQkgICRD
QyAtc2hhcmVkJGFsbG93X3VuZGVmaW5lZF9mbGFnICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAk
ZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFncyAtbXN5bSAtc29uYW1lICRz
b25hbWUgLVdsLC1pbnB1dCAtV2wsJGxpYi5leHAgIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBl
Y2hvIC1zZXRfdmVyc2lvbgkkdmVyc3RyaW5nYCAtdXBkYXRlX3JlZ2lzdHJ5ICRvYmpkaXIvc29f
bG9jYXRpb25zIC1vICRsaWJ+Ci0JICAkcm0gJGxpYi5leHAnCi0KLQlfTFRfQUNfVEFHVkFSKGhh
cmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLXJwYXRoICRsaWJkaXInCi0JX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9OgotCi0JIyBDb21tYW5kcyB0byBt
YWtlIGNvbXBpbGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwotCSMgd2hhdCAi
aGlkZGVuIiBsaWJyYXJpZXMsIG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgot
CSMgbGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgotCSMKLQkjIFRoZXJlIGRvZXNuJ3QgYXBwZWFy
IHRvIGJlIGEgd2F5IHRvIHByZXZlbnQgdGhpcyBjb21waWxlciBmcm9tCi0JIyBleHBsaWNpdGx5
IGxpbmtpbmcgc3lzdGVtIG9iamVjdCBmaWxlcyBzbyB3ZSBuZWVkIHRvIHN0cmlwIHRoZW0KLQkj
IGZyb20gdGhlIG91dHB1dCBzbyB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBs
aWJyYXJ5Ci0JIyBkZXBlbmRlbmNpZXMuCi0Jb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J3RlbXBs
aXN0PWAkQ0MgLXNoYXJlZCAkQ0ZMQUdTIC12IGNvbmZ0ZXN0LiRvYmpleHQgMj4mMSB8IGdyZXAg
ImxkIiB8IGdyZXAgLXYgImxkOiJgOyB0ZW1wbGlzdD1gZWNobyAkdGVtcGxpc3QgfCBzZWQgInMv
XCheLipsZC4qXClcKCAuKmxkLiokXCkvXDEvImA7IGxpc3Q9IiI7IGZvciB6IGluICR0ZW1wbGlz
dDsgZG8gY2FzZSAkeiBpbiBjb25mdGVzdC4kb2JqZXh0KSBsaXN0PSIkbGlzdCAkeiI7OyAqLiRv
YmpleHQpOzsgKikgbGlzdD0iJGxpc3QgJHoiOztlc2FjOyBkb25lOyBlY2hvICRsaXN0JwotCTs7
Ci0gICAgICAqKQotCWlmIHRlc3QgIiRHWFgiID0geWVzICYmIHRlc3QgIiR3aXRoX2dudV9sZCIg
PSBubzsgdGhlbgotCSAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPScg
JHt3bH0tZXhwZWN0X3VucmVzb2x2ZWQgJHt3bH1cKicKLQkgX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5vc3RkbGliICR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9
ICRwcmVkZXBfb2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21w
aWxlcl9mbGFncyAke3dsfS1tc3ltICR7d2x9LXNvbmFtZSAke3dsfSRzb25hbWUgYHRlc3QgLW4g
IiR2ZXJzdHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24gJHt3bH0kdmVyc3RyaW5nYCAk
e3dsfS11cGRhdGVfcmVnaXN0cnkgJHt3bH0ke29iamRpcn0vc29fbG9jYXRpb25zIC1vICRsaWIn
Ci0KLQkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3ds
fS1ycGF0aCAke3dsfSRsaWJkaXInCi0JICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9z
ZXBhcmF0b3IsICQxKT06Ci0KLQkgICMgQ29tbWFuZHMgdG8gbWFrZSBjb21waWxlciBwcm9kdWNl
IHZlcmJvc2Ugb3V0cHV0IHRoYXQgbGlzdHMKLQkgICMgd2hhdCAiaGlkZGVuIiBsaWJyYXJpZXMs
IG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgotCSAgIyBsaW5raW5nIGEgc2hh
cmVkIGxpYnJhcnkuCi0JICBvdXRwdXRfdmVyYm9zZV9saW5rX2NtZD0nJENDIC1zaGFyZWQgJENG
TEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0IDI+JjEgfCBlZ3JlcCAiXC1MIicKLQotCWVsc2UKLQkg
ICMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAotCSAgX0xUX0FDX1RB
R1ZBUihsZF9zaGxpYnMsICQxKT1ubwotCWZpCi0JOzsKLSAgICBlc2FjCi0gICAgOzsKLSAgcHNv
cyopCi0gICAgIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBwb3J0Ci0gICAg
X0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotICAgIDs7Ci0gIHNjbyopCi0gICAgX0xU
X0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywgJDEpPW5vCi0gICAgY2FzZSAkY2NfYmFz
ZW5hbWUgaW4KLSAgICAgIENDKQotCSMgRklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkg
c3VwcG9ydAotCV9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAgICAgKikK
LQkjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKLQlfTFRfQUNfVEFH
VkFSKGxkX3NobGlicywgJDEpPW5vCi0JOzsKLSAgICBlc2FjCi0gICAgOzsKLSAgc3Vub3M0KikK
LSAgICBjYXNlICRjY19iYXNlbmFtZSBpbgotICAgICAgQ0MpCi0JIyBTdW4gQysrIDQueAotCSMg
RklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAotCV9MVF9BQ19UQUdWQVIo
bGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAgICAgbGNjKQotCSMgTHVjaWQKLQkjIEZJWE1FOiBp
bnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGli
cywgJDEpPW5vCi0JOzsKLSAgICAgICopCi0JIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGli
cmFyeSBzdXBwb3J0Ci0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotCTs7Ci0gICAg
ZXNhYwotICAgIDs7Ci0gIHNvbGFyaXMqKQotICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCi0gICAg
ICBDQykKLQkjIFN1biBDKysgNC4yLCA1LnggYW5kIENlbnRlcmxpbmUgQysrCi0JX0xUX0FDX1RB
R1ZBUihub191bmRlZmluZWRfZmxhZywgJDEpPScgLXpkZWZzJwotCV9MVF9BQ19UQUdWQVIoYXJj
aGl2ZV9jbWRzLCAkMSk9JyRDQyAtRyR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9IC1ub2xpYiAtaCRz
b25hbWUgLW8gJGxpYiAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMgJGRlcGxpYnMgJHBvc3RkZXBf
b2JqZWN0cyAkY29tcGlsZXJfZmxhZ3MnCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9j
bWRzLCAkMSk9JyRlY2hvICJ7IGdsb2JhbDoiID4gJGxpYi5leHB+Y2F0ICRleHBvcnRfc3ltYm9s
cyB8IHNlZCAtZSAicy9cKC4qXCkvXDE7LyIgPj4gJGxpYi5leHB+JGVjaG8gImxvY2FsOiAqOyB9
OyIgPj4gJGxpYi5leHB+Ci0JJENDIC1HJHthbGxvd191bmRlZmluZWRfZmxhZ30gLW5vbGliICR7
d2x9LU0gJHt3bH0kbGliLmV4cCAtaCRzb25hbWUgLW8gJGxpYiAkcHJlZGVwX29iamVjdHMgJGxp
Ym9ianMgJGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkY29tcGlsZXJfZmxhZ3N+JHJtICRsaWIu
ZXhwJwotCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1S
JGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwot
CWNhc2UgJGhvc3Rfb3MgaW4KLQkgIHNvbGFyaXMyLlswLTVdIHwgc29sYXJpczIuWzAtNV0uKikg
OzsKLQkgICopCi0JICAgICMgVGhlIEMrKyBjb21waWxlciBpcyB1c2VkIGFzIGxpbmtlciBzbyB3
ZSBtdXN0IHVzZSAkd2wKLQkgICAgIyBmbGFnIHRvIHBhc3MgdGhlIGNvbW1hbmRzIHRvIHRoZSB1
bmRlcmx5aW5nIHN5c3RlbQotCSAgICAjIGxpbmtlci4KLQkgICAgIyBTdXBwb3J0ZWQgc2luY2Ug
U29sYXJpcyAyLjYgKG1heWJlIDIuNS4xPykKLQkgICAgX0xUX0FDX1RBR1ZBUih3aG9sZV9hcmNo
aXZlX2ZsYWdfc3BlYywgJDEpPScke3dsfS16ICR7d2x9YWxsZXh0cmFjdCRjb252ZW5pZW5jZSAk
e3dsfS16ICR7d2x9ZGVmYXVsdGV4dHJhY3QnCi0JICAgIDs7Ci0JZXNhYwotCV9MVF9BQ19UQUdW
QVIobGlua19hbGxfZGVwbGlicywgJDEpPXllcwotCi0JIyBDb21tYW5kcyB0byBtYWtlIGNvbXBp
bGVyIHByb2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwotCSMgd2hhdCAiaGlkZGVuIiBs
aWJyYXJpZXMsIG9iamVjdCBmaWxlcyBhbmQgZmxhZ3MgYXJlIHVzZWQgd2hlbgotCSMgbGlua2lu
ZyBhIHNoYXJlZCBsaWJyYXJ5LgotCSMKLQkjIFRoZXJlIGRvZXNuJ3QgYXBwZWFyIHRvIGJlIGEg
d2F5IHRvIHByZXZlbnQgdGhpcyBjb21waWxlciBmcm9tCi0JIyBleHBsaWNpdGx5IGxpbmtpbmcg
c3lzdGVtIG9iamVjdCBmaWxlcyBzbyB3ZSBuZWVkIHRvIHN0cmlwIHRoZW0KLQkjIGZyb20gdGhl
IG91dHB1dCBzbyB0aGF0IHRoZXkgZG9uJ3QgZ2V0IGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5Ci0J
IyBkZXBlbmRlbmNpZXMuCi0Jb3V0cHV0X3ZlcmJvc2VfbGlua19jbWQ9J3RlbXBsaXN0PWAkQ0Mg
LUcgJENGTEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0IDI+JjEgfCBlZ3JlcCAiXC1SfFwtTCJgOyBs
aXN0PSIiOyBmb3IgeiBpbiAkdGVtcGxpc3Q7IGRvIGNhc2UgJHogaW4gY29uZnRlc3QuJG9iamV4
dCkgbGlzdD0iJGxpc3QgJHoiOzsgKi4kb2JqZXh0KTs7ICopIGxpc3Q9IiRsaXN0ICR6Ijs7ZXNh
YzsgZG9uZTsgZWNobyAkbGlzdCcKLQotCSMgQXJjaGl2ZXMgY29udGFpbmluZyBDKysgb2JqZWN0
IGZpbGVzIG11c3QgYmUgY3JlYXRlZCB1c2luZwotCSMgIkNDIC14YXIiLCB3aGVyZSAiQ0MiIGlz
IHRoZSBTdW4gQysrIGNvbXBpbGVyLiAgVGhpcyBpcwotCSMgbmVjZXNzYXJ5IHRvIG1ha2Ugc3Vy
ZSBpbnN0YW50aWF0ZWQgdGVtcGxhdGVzIGFyZSBpbmNsdWRlZAotCSMgaW4gdGhlIGFyY2hpdmUu
Ci0JX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAteGFyIC1vICRvbGRs
aWIgJG9sZG9ianMnCi0JOzsKLSAgICAgIGdjeCkKLQkjIEdyZWVuIEhpbGxzIEMrKyBDb21waWxl
cgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRwcmVkZXBf
b2JqZWN0cyAkbGlib2JqcyAkZGVwbGlicyAkcG9zdGRlcF9vYmplY3RzICRjb21waWxlcl9mbGFn
cyAke3dsfS1oICR3bCRzb25hbWUgLW8gJGxpYicKLQotCSMgVGhlIEMrKyBjb21waWxlciBtdXN0
IGJlIHVzZWQgdG8gY3JlYXRlIHRoZSBhcmNoaXZlLgotCV9MVF9BQ19UQUdWQVIob2xkX2FyY2hp
dmVfY21kcywgJDEpPSckQ0MgJExERkxBR1MgLWFyY2hpdmUgLW8gJG9sZGxpYiAkb2xkb2JqcycK
LQk7OwotICAgICAgKikKLQkjIEdOVSBDKysgY29tcGlsZXIgd2l0aCBTb2xhcmlzIGxpbmtlcgot
CWlmIHRlc3QgIiRHWFgiID0geWVzICYmIHRlc3QgIiR3aXRoX2dudV9sZCIgPSBubzsgdGhlbgot
CSAgX0xUX0FDX1RBR1ZBUihub191bmRlZmluZWRfZmxhZywgJDEpPScgJHt3bH0teiAke3dsfWRl
ZnMnCi0JICBpZiAkQ0MgLS12ZXJzaW9uIHwgZWdyZXAgLXYgJ14yXC43JyA+IC9kZXYvbnVsbDsg
dGhlbgotCSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAt
bm9zdGRsaWIgJExERkxBR1MgJHByZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0
ZGVwX29iamVjdHMgJGxpbmtlcl9mbGFncyAke3dsfS1oICR3bCRzb25hbWUgLW8gJGxpYicKLQkg
ICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSk9JyRlY2hvICJ7IGdsb2Jh
bDoiID4gJGxpYi5leHB+Y2F0ICRleHBvcnRfc3ltYm9scyB8IHNlZCAtZSAicy9cKC4qXCkvXDE7
LyIgPj4gJGxpYi5leHB+JGVjaG8gImxvY2FsOiAqOyB9OyIgPj4gJGxpYi5leHB+Ci0JCSRDQyAt
c2hhcmVkIC1ub3N0ZGxpYiAke3dsfS1NICR3bCRsaWIuZXhwIC1vICRsaWIgJHByZWRlcF9vYmpl
Y3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGxpbmtlcl9mbGFnc34kcm0g
JGxpYi5leHAnCi0KLQkgICAgIyBDb21tYW5kcyB0byBtYWtlIGNvbXBpbGVyIHByb2R1Y2UgdmVy
Ym9zZSBvdXRwdXQgdGhhdCBsaXN0cwotCSAgICAjIHdoYXQgImhpZGRlbiIgbGlicmFyaWVzLCBv
YmplY3QgZmlsZXMgYW5kIGZsYWdzIGFyZSB1c2VkIHdoZW4KLQkgICAgIyBsaW5raW5nIGEgc2hh
cmVkIGxpYnJhcnkuCi0JICAgIG91dHB1dF92ZXJib3NlX2xpbmtfY21kPSIkQ0MgLXNoYXJlZCAk
Q0ZMQUdTIC12IGNvbmZ0ZXN0LiRvYmpleHQgMj4mMSB8IGVncmVwIFwiXC1MXCIiCi0JICBlbHNl
Ci0JICAgICMgZysrIDIuNyBhcHBlYXJzIHRvIHJlcXVpcmUgYC1HJyBOT1QgYC1zaGFyZWQnIG9u
IHRoaXMKLQkgICAgIyBwbGF0Zm9ybS4KLQkgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMs
ICQxKT0nJENDIC1HIC1ub3N0ZGxpYiAkTERGTEFHUyAkcHJlZGVwX29iamVjdHMgJGxpYm9ianMg
JGRlcGxpYnMgJHBvc3RkZXBfb2JqZWN0cyAkbGlua2VyX2ZsYWdzICR7d2x9LWggJHdsJHNvbmFt
ZSAtbyAkbGliJwotCSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0n
JGVjaG8gInsgZ2xvYmFsOiIgPiAkbGliLmV4cH5jYXQgJGV4cG9ydF9zeW1ib2xzIHwgc2VkIC1l
ICJzL1woLipcKS9cMTsvIiA+PiAkbGliLmV4cH4kZWNobyAibG9jYWw6ICo7IH07IiA+PiAkbGli
LmV4cH4KLQkJJENDIC1HIC1ub3N0ZGxpYiAke3dsfS1NICR3bCRsaWIuZXhwIC1vICRsaWIgJHBy
ZWRlcF9vYmplY3RzICRsaWJvYmpzICRkZXBsaWJzICRwb3N0ZGVwX29iamVjdHMgJGxpbmtlcl9m
bGFnc34kcm0gJGxpYi5leHAnCi0KLQkgICAgIyBDb21tYW5kcyB0byBtYWtlIGNvbXBpbGVyIHBy
b2R1Y2UgdmVyYm9zZSBvdXRwdXQgdGhhdCBsaXN0cwotCSAgICAjIHdoYXQgImhpZGRlbiIgbGli
cmFyaWVzLCBvYmplY3QgZmlsZXMgYW5kIGZsYWdzIGFyZSB1c2VkIHdoZW4KLQkgICAgIyBsaW5r
aW5nIGEgc2hhcmVkIGxpYnJhcnkuCi0JICAgIG91dHB1dF92ZXJib3NlX2xpbmtfY21kPSIkQ0Mg
LUcgJENGTEFHUyAtdiBjb25mdGVzdC4kb2JqZXh0IDI+JjEgfCBlZ3JlcCBcIlwtTFwiIgotCSAg
ZmkKLQotCSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7
d2x9LVIgJHdsJGxpYmRpcicKLQlmaQotCTs7Ci0gICAgZXNhYwotICAgIDs7Ci0gIHN5c3Y1T3Bl
blVOSVg4KiB8IHN5c3Y1VW5peFdhcmU3KiB8IHN5c3Y1dXdbWzc4XV0qIHwgdW5peHdhcmU3KikK
LSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAkMSk9bm8KLSAgICA7Owot
ICB0YW5kZW0qKQotICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCi0gICAgICBOQ0MpCi0JIyBOb25T
dG9wLVVYIE5DQyAzLjIwCi0JIyBGSVhNRTogaW5zZXJ0IHByb3BlciBDKysgbGlicmFyeSBzdXBw
b3J0Ci0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotCTs7Ci0gICAgICAqKQotCSMg
RklYTUU6IGluc2VydCBwcm9wZXIgQysrIGxpYnJhcnkgc3VwcG9ydAotCV9MVF9BQ19UQUdWQVIo
bGRfc2hsaWJzLCAkMSk9bm8KLQk7OwotICAgIGVzYWMKLSAgICA7OwotICB2eHdvcmtzKikKLSAg
ICAjIEZJWE1FOiBpbnNlcnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKLSAgICBfTFRfQUNf
VEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0gICAgOzsKLSAgKikKLSAgICAjIEZJWE1FOiBpbnNl
cnQgcHJvcGVyIEMrKyBsaWJyYXJ5IHN1cHBvcnQKLSAgICBfTFRfQUNfVEFHVkFSKGxkX3NobGli
cywgJDEpPW5vCi0gICAgOzsKLWVzYWMKLUFDX01TR19SRVNVTFQoWyRfTFRfQUNfVEFHVkFSKGxk
X3NobGlicywgJDEpXSkKLXRlc3QgIiRfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpIiA9IG5v
ICYmIGNhbl9idWlsZF9zaGFyZWQ9bm8KLQotIyBGaWd1cmUgb3V0ICJoaWRkZW4iIEMrKyBsaWJy
YXJ5IGRlcGVuZGVuY2llcyBmcm9tIHZlcmJvc2UKLSMgY29tcGlsZXIgb3V0cHV0IHdoZW5pbmcg
bGlua2luZyBhIHNoYXJlZCBsaWJyYXJ5LgotY2F0ID4gY29uZnRlc3QuJGFjX2V4dCA8PEVPRgot
Y2xhc3MgRm9vCi17Ci1wdWJsaWM6Ci0gIEZvbyAodm9pZCkgeyBhID0gMDsgfQotcHJpdmF0ZToK
LSAgaW50IGE7Ci19OwotRU9GCi0KLQotaWYgQUNfVFJZX0VWQUwoYWNfY29tcGlsZSk7IHRoZW4K
LSAgIyBQYXJzZSB0aGUgY29tcGlsZXIgb3V0cHV0IGFuZCBleHRyYWN0IHRoZSBuZWNlc3NhcnkK
LSAgIyBvYmplY3RzLCBsaWJyYXJpZXMgYW5kIGxpYnJhcnkgZmxhZ3MuCi0KLSAgIyBTZW50aW5l
bCB1c2VkIHRvIGtlZXAgdHJhY2sgb2Ygd2hldGhlciBvciBub3Qgd2UgYXJlIGJlZm9yZQotICAj
IHRoZSBjb25mdGVzdCBvYmplY3QgZmlsZS4KLSAgcHJlX3Rlc3Rfb2JqZWN0X2RlcHNfZG9uZT1u
bwotCi0gICMgVGhlIGAqJyBpbiB0aGUgY2FzZSBtYXRjaGVzIGZvciBhcmNoaXRlY3R1cmVzIHRo
YXQgdXNlIGBjYXNlJyBpbgotICAjICRvdXRwdXRfdmVyYm9zZV9jbWQgY2FuIHRyaWdnZXIgZ2xv
YiBleHBhbnNpb24gZHVyaW5nIHRoZSBsb29wCi0gICMgZXZhbCB3aXRob3V0IHRoaXMgc3Vic3Rp
dHV0aW9uLgotICBvdXRwdXRfdmVyYm9zZV9saW5rX2NtZD0iYCRlY2hvIFwiWCRvdXRwdXRfdmVy
Ym9zZV9saW5rX2NtZFwiIHwgJFhzZWQgLWUgXCIkbm9fZ2xvYl9zdWJzdFwiYCIKLQotICBmb3Ig
cCBpbiBgZXZhbCAkb3V0cHV0X3ZlcmJvc2VfbGlua19jbWRgOyBkbwotICAgIGNhc2UgJHAgaW4K
LQotICAgIC1MKiB8IC1SKiB8IC1sKikKLSAgICAgICAjIFNvbWUgY29tcGlsZXJzIHBsYWNlIHNw
YWNlIGJldHdlZW4gIi17TCxSfSIgYW5kIHRoZSBwYXRoLgotICAgICAgICMgUmVtb3ZlIHRoZSBz
cGFjZS4KLSAgICAgICBpZiB0ZXN0ICRwID0gIi1MIiBcCi0JICB8fCB0ZXN0ICRwID0gIi1SIjsg
dGhlbgotCSBwcmV2PSRwCi0JIGNvbnRpbnVlCi0gICAgICAgZWxzZQotCSBwcmV2PQotICAgICAg
IGZpCi0KLSAgICAgICBpZiB0ZXN0ICIkcHJlX3Rlc3Rfb2JqZWN0X2RlcHNfZG9uZSIgPSBubzsg
dGhlbgotCSBjYXNlICRwIGluCi0JIC1MKiB8IC1SKikKLQkgICAjIEludGVybmFsIGNvbXBpbGVy
IGxpYnJhcnkgcGF0aHMgc2hvdWxkIGNvbWUgYWZ0ZXIgdGhvc2UKLQkgICAjIHByb3ZpZGVkIHRo
ZSB1c2VyLiAgVGhlIHBvc3RkZXBzIGFscmVhZHkgY29tZSBhZnRlciB0aGUKLQkgICAjIHVzZXIg
c3VwcGxpZWQgbGlicyBzbyB0aGVyZSBpcyBubyBuZWVkIHRvIHByb2Nlc3MgdGhlbS4KLQkgICBp
ZiB0ZXN0IC16ICIkX0xUX0FDX1RBR1ZBUihjb21waWxlcl9saWJfc2VhcmNoX3BhdGgsICQxKSI7
IHRoZW4KLQkgICAgIF9MVF9BQ19UQUdWQVIoY29tcGlsZXJfbGliX3NlYXJjaF9wYXRoLCAkMSk9
IiR7cHJldn0ke3B9IgotCSAgIGVsc2UKLQkgICAgIF9MVF9BQ19UQUdWQVIoY29tcGlsZXJfbGli
X3NlYXJjaF9wYXRoLCAkMSk9IiR7X0xUX0FDX1RBR1ZBUihjb21waWxlcl9saWJfc2VhcmNoX3Bh
dGgsICQxKX0gJHtwcmV2fSR7cH0iCi0JICAgZmkKLQkgICA7OwotCSAjIFRoZSAiLWwiIGNhc2Ug
d291bGQgbmV2ZXIgY29tZSBiZWZvcmUgdGhlIG9iamVjdCBiZWluZwotCSAjIGxpbmtlZCwgc28g
ZG9uJ3QgYm90aGVyIGhhbmRsaW5nIHRoaXMgY2FzZS4KLQkgZXNhYwotICAgICAgIGVsc2UKLQkg
aWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKSI7IHRoZW4KLQkgICBfTFRf
QUNfVEFHVkFSKHBvc3RkZXBzLCAkMSk9IiR7cHJldn0ke3B9IgotCSBlbHNlCi0JICAgX0xUX0FD
X1RBR1ZBUihwb3N0ZGVwcywgJDEpPSIke19MVF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKX0gJHtw
cmV2fSR7cH0iCi0JIGZpCi0gICAgICAgZmkKLSAgICAgICA7OwotCi0gICAgKi4kb2JqZXh0fCou
JGxpYmV4dCkKLSAgICAgICAjIFRoaXMgYXNzdW1lcyB0aGF0IHRoZSB0ZXN0IG9iamVjdCBmaWxl
IG9ubHkgc2hvd3MgdXAKLSAgICAgICAjIG9uY2UgaW4gdGhlIGNvbXBpbGVyIG91dHB1dC4KLSAg
ICAgICBpZiB0ZXN0ICIkcCIgPSAiY29uZnRlc3QuJG9iamV4dCI7IHRoZW4KLQkgcHJlX3Rlc3Rf
b2JqZWN0X2RlcHNfZG9uZT15ZXMKLQkgY29udGludWUKLSAgICAgICBmaQotCi0gICAgICAgaWYg
dGVzdCAiJHByZV90ZXN0X29iamVjdF9kZXBzX2RvbmUiID0gbm87IHRoZW4KLQkgaWYgdGVzdCAt
eiAiJF9MVF9BQ19UQUdWQVIocHJlZGVwX29iamVjdHMsICQxKSI7IHRoZW4KLQkgICBfTFRfQUNf
VEFHVkFSKHByZWRlcF9vYmplY3RzLCAkMSk9IiRwIgotCSBlbHNlCi0JICAgX0xUX0FDX1RBR1ZB
UihwcmVkZXBfb2JqZWN0cywgJDEpPSIkX0xUX0FDX1RBR1ZBUihwcmVkZXBfb2JqZWN0cywgJDEp
ICRwIgotCSBmaQotICAgICAgIGVsc2UKLQkgaWYgdGVzdCAteiAiJF9MVF9BQ19UQUdWQVIocG9z
dGRlcF9vYmplY3RzLCAkMSkiOyB0aGVuCi0JICAgX0xUX0FDX1RBR1ZBUihwb3N0ZGVwX29iamVj
dHMsICQxKT0iJHAiCi0JIGVsc2UKLQkgICBfTFRfQUNfVEFHVkFSKHBvc3RkZXBfb2JqZWN0cywg
JDEpPSIkX0xUX0FDX1RBR1ZBUihwb3N0ZGVwX29iamVjdHMsICQxKSAkcCIKLQkgZmkKLSAgICAg
ICBmaQotICAgICAgIDs7Ci0KLSAgICAqKSA7OyAjIElnbm9yZSB0aGUgcmVzdC4KLQotICAgIGVz
YWMKLSAgZG9uZQotCi0gICMgQ2xlYW4gdXAuCi0gIHJtIC1mIGEub3V0Ci1lbHNlCi0gIGVjaG8g
ImxpYnRvb2wubTQ6IGVycm9yOiBwcm9ibGVtIGNvbXBpbGluZyBDKysgdGVzdCBwcm9ncmFtIgot
ZmkKLQotJHJtIC1mIGNvbmZlc3QuJG9iamV4dAotCi1jYXNlICIgJF9MVF9BQ19UQUdWQVIocG9z
dGRlcHMsICQxKSAiIGluCi0qIiAtbGMgIiopIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25l
ZWRfbGMsICQxKT1ubyA7OwotKikgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywg
JDEpPXllcyA7OwotZXNhYwotCi1fTFRfQUNfVEFHVkFSKEdDQywgJDEpPSIkR1hYIgotX0xUX0FD
X1RBR1ZBUihMRCwgJDEpPSIkTEQiCi0KLSMjIENBVkVBVCBFTVBUT1I6Ci0jIyBUaGVyZSBpcyBu
byBlbmNhcHN1bGF0aW9uIHdpdGhpbiB0aGUgZm9sbG93aW5nIG1hY3JvcywgZG8gbm90IGNoYW5n
ZQotIyMgdGhlIHJ1bm5pbmcgb3JkZXIgb3Igb3RoZXJ3aXNlIG1vdmUgdGhlbSBhcm91bmQgdW5s
ZXNzIHlvdSBrbm93IGV4YWN0bHkKLSMjIHdoYXQgeW91IGFyZSBkb2luZy4uLgotQUNfTElCVE9P
TF9QUk9HX0NPTVBJTEVSX1BJQygkMSkKLUFDX0xJQlRPT0xfUFJPR19DQ19DX08oJDEpCi1BQ19M
SUJUT09MX1NZU19IQVJEX0xJTktfTE9DS1MoJDEpCi1BQ19MSUJUT09MX1BST0dfTERfU0hMSUJT
KCQxKQotQUNfTElCVE9PTF9QUk9HX0xEX0hBUkRDT0RFX0xJQlBBVEgoJDEpCi1BQ19MSUJUT09M
X1NZU19MSUJfU1RSSVAKLUFDX0xJQlRPT0xfU1lTX0RZTkFNSUNfTElOS0VSKCQxKQotQUNfTElC
VE9PTF9ETE9QRU5fU0VMRigkMSkKLQotQUNfTElCVE9PTF9DT05GSUcoJDEpCi0KLUFDX0xBTkdf
UE9QCi1DQz0iJGx0X3NhdmVfQ0MiCi1dKSMgQUNfTElCVE9PTF9MQU5HX0NYWF9DT05GSUcKLQot
Ci0jIEFDX0xJQlRPT0xfTEFOR19HQ0pfQ09ORklHCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCi0jIEVuc3VyZSB0aGF0IHRoZSBjb25maWd1cmF0aW9uIHZhcnMgZm9yIHRoZSBDIGNvbXBp
bGVyIGFyZQotIyBzdWl0YWJseSBkZWZpbmVkLiAgVGhvc2UgdmFyaWFibGVzIGFyZSBzdWJzZXF1
ZW50bHkgdXNlZCBieQotIyBBQ19MSUJUT09MX0NPTkZJRyB0byB3cml0ZSB0aGUgY29tcGlsZXIg
Y29uZmlndXJhdGlvbiB0byBgbGlidG9vbCcuCi1BQ19ERUZVTihbQUNfTElCVE9PTF9MQU5HX0dD
Sl9DT05GSUddLCBbX0xUX0FDX0xBTkdfR0NKX0NPTkZJRyhHQ0opXSkKLUFDX0RFRlVOKFtfTFRf
QUNfTEFOR19HQ0pfQ09ORklHXSwKLVtBQ19MQU5HX1NBVkUKLQotIyBTb3VyY2UgZmlsZSBleHRl
bnNpb24gZm9yIEMgdGVzdCBzb3VyY2VzLgotYWNfZXh0PWphdmEKLQotIyBPYmplY3QgZmlsZSBl
eHRlbnNpb24gZm9yIGNvbXBpbGVkIEMgdGVzdCBzb3VyY2VzLgotb2JqZXh0PW8KLV9MVF9BQ19U
QUdWQVIob2JqZXh0LCAkMSk9JG9iamV4dAotCi0jIENvZGUgdG8gYmUgdXNlZCBpbiBzaW1wbGUg
Y29tcGlsZSB0ZXN0cwotbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlPSJjbGFzcyBmb28ge30i
Ci0KLSMgQ29kZSB0byBiZSB1c2VkIGluIHNpbXBsZSBsaW5rIHRlc3RzCi1sdF9zaW1wbGVfbGlu
a190ZXN0X2NvZGU9J3B1YmxpYyBjbGFzcyBjb25mdGVzdCB7IHB1YmxpYyBzdGF0aWMgdm9pZCBt
YWluKFN0cmluZ1tdIGFyZ3YpIHt9OyB9JwotCi0jIGx0bWFpbiBvbmx5IHVzZXMgJENDIGZvciB0
YWdnZWQgY29uZmlndXJhdGlvbnMgc28gbWFrZSBzdXJlICRDQyBpcyBzZXQuCi1fTFRfQUNfU1lT
X0NPTVBJTEVSCi0KLSMgQWxsb3cgQ0MgdG8gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmd1bWVu
dHMuCi1sdF9zYXZlX0NDPSIkQ0MiCi1DQz0ke0dDSi0iZ2NqIn0KLXNldCBkdW1teSAkQ0MKLWNv
bXBpbGVyPSJbJF0yIgotX0xUX0FDX1RBR1ZBUihjb21waWxlciwgJDEpPSRDQwotCi0jIEdDSiBk
aWQgbm90IGV4aXN0IGF0IHRoZSB0aW1lIEdDQyBkaWRuJ3QgaW1wbGljaXRseSBsaW5rIGxpYmMg
aW4uCi1fTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAkMSk9bm8KLQotIyMgQ0FW
RUFUIEVNUFRPUjoKLSMjIFRoZXJlIGlzIG5vIGVuY2Fwc3VsYXRpb24gd2l0aGluIHRoZSBmb2xs
b3dpbmcgbWFjcm9zLCBkbyBub3QgY2hhbmdlCi0jIyB0aGUgcnVubmluZyBvcmRlciBvciBvdGhl
cndpc2UgbW92ZSB0aGVtIGFyb3VuZCB1bmxlc3MgeW91IGtub3cgZXhhY3RseQotIyMgd2hhdCB5
b3UgYXJlIGRvaW5nLi4uCi1BQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRUSSgkMSkKLUFD
X0xJQlRPT0xfUFJPR19DT01QSUxFUl9QSUMoJDEpCi1BQ19MSUJUT09MX1BST0dfQ0NfQ19PKCQx
KQotQUNfTElCVE9PTF9TWVNfSEFSRF9MSU5LX0xPQ0tTKCQxKQotQUNfTElCVE9PTF9QUk9HX0xE
X1NITElCUygkMSkKLUFDX0xJQlRPT0xfUFJPR19MRF9IQVJEQ09ERV9MSUJQQVRIKCQxKQotQUNf
TElCVE9PTF9TWVNfTElCX1NUUklQCi1BQ19MSUJUT09MX1NZU19EWU5BTUlDX0xJTktFUigkMSkK
LUFDX0xJQlRPT0xfRExPUEVOX1NFTEYoJDEpCi0KLUFDX0xJQlRPT0xfQ09ORklHKCQxKQotCi1B
Q19MQU5HX1JFU1RPUkUKLUNDPSIkbHRfc2F2ZV9DQyIKLV0pIyBBQ19MSUJUT09MX0xBTkdfR0NK
X0NPTkZJRwotCi0KLSMgQUNfTElCVE9PTF9MQU5HX1JDX0NPTkZJRwotIyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQotIyBFbnN1cmUgdGhhdCB0aGUgY29uZmlndXJhdGlvbiB2YXJzIGZvciB0
aGUgV2luZG93cyByZXNvdXJjZSBjb21waWxlciBhcmUKLSMgc3VpdGFibHkgZGVmaW5lZC4gIFRo
b3NlIHZhcmlhYmxlcyBhcmUgc3Vic2VxdWVudGx5IHVzZWQgYnkKLSMgQUNfTElCVE9PTF9DT05G
SUcgdG8gd3JpdGUgdGhlIGNvbXBpbGVyIGNvbmZpZ3VyYXRpb24gdG8gYGxpYnRvb2wnLgotQUNf
REVGVU4oW0FDX0xJQlRPT0xfTEFOR19SQ19DT05GSUddLCBbX0xUX0FDX0xBTkdfUkNfQ09ORklH
KFJDKV0pCi1BQ19ERUZVTihbX0xUX0FDX0xBTkdfUkNfQ09ORklHXSwKLVtBQ19MQU5HX1NBVkUK
LQotIyBTb3VyY2UgZmlsZSBleHRlbnNpb24gZm9yIFJDIHRlc3Qgc291cmNlcy4KLWFjX2V4dD1y
YwotCi0jIE9iamVjdCBmaWxlIGV4dGVuc2lvbiBmb3IgY29tcGlsZWQgUkMgdGVzdCBzb3VyY2Vz
Lgotb2JqZXh0PW8KLV9MVF9BQ19UQUdWQVIob2JqZXh0LCAkMSk9JG9iamV4dAotCi0jIENvZGUg
dG8gYmUgdXNlZCBpbiBzaW1wbGUgY29tcGlsZSB0ZXN0cwotbHRfc2ltcGxlX2NvbXBpbGVfdGVz
dF9jb2RlPSdzYW1wbGUgTUVOVSB7IE1FTlVJVEVNICImU291cCIsIDEwMCwgQ0hFQ0tFRCB9Jwot
Ci0jIENvZGUgdG8gYmUgdXNlZCBpbiBzaW1wbGUgbGluayB0ZXN0cwotbHRfc2ltcGxlX2xpbmtf
dGVzdF9jb2RlPSIkbHRfc2ltcGxlX2NvbXBpbGVfdGVzdF9jb2RlIgotCi0jIGx0bWFpbiBvbmx5
IHVzZXMgJENDIGZvciB0YWdnZWQgY29uZmlndXJhdGlvbnMgc28gbWFrZSBzdXJlICRDQyBpcyBz
ZXQuCi1fTFRfQUNfU1lTX0NPTVBJTEVSCi0KLSMgQWxsb3cgQ0MgdG8gYmUgYSBwcm9ncmFtIG5h
bWUgd2l0aCBhcmd1bWVudHMuCi1sdF9zYXZlX0NDPSIkQ0MiCi1DQz0ke1JDLSJ3aW5kcmVzIn0K
LXNldCBkdW1teSAkQ0MKLWNvbXBpbGVyPSJbJF0yIgotX0xUX0FDX1RBR1ZBUihjb21waWxlciwg
JDEpPSRDQwotX0xUX0FDX1RBR1ZBUihsdF9jdl9wcm9nX2NvbXBpbGVyX2NfbywgJDEpPXllcwot
Ci1BQ19MSUJUT09MX0NPTkZJRygkMSkKLQotQUNfTEFOR19SRVNUT1JFCi1DQz0iJGx0X3NhdmVf
Q0MiCi1dKSMgQUNfTElCVE9PTF9MQU5HX1JDX0NPTkZJRwotCi0KLSMgQUNfTElCVE9PTF9DT05G
SUcoW1RBR05BTUVdKQotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0jIElmIFRBR05B
TUUgaXMgbm90IHBhc3NlZCwgdGhlbiBjcmVhdGUgYW4gaW5pdGlhbCBsaWJ0b29sIHNjcmlwdAot
IyB3aXRoIGEgZGVmYXVsdCBjb25maWd1cmF0aW9uIGZyb20gdGhlIHVudGFnZ2VkIGNvbmZpZyB2
YXJzLiAgT3RoZXJ3aXNlCi0jIGFkZCBjb2RlIHRvIGNvbmZpZy5zdGF0dXMgZm9yIGFwcGVuZGlu
ZyB0aGUgY29uZmlndXJhdGlvbiBuYW1lZCBieQotIyBUQUdOQU1FIGZyb20gdGhlIG1hdGNoaW5n
IHRhZ2dlZCBjb25maWcgdmFycy4KLUFDX0RFRlVOKFtBQ19MSUJUT09MX0NPTkZJR10sCi1bIyBU
aGUgZWxzZSBjbGF1c2Ugc2hvdWxkIG9ubHkgZmlyZSB3aGVuIGJvb3RzdHJhcHBpbmcgdGhlCi0j
IGxpYnRvb2wgZGlzdHJpYnV0aW9uLCBvdGhlcndpc2UgeW91IGZvcmdvdCB0byBzaGlwIGx0bWFp
bi5zaAotIyB3aXRoIHlvdXIgcGFja2FnZSwgYW5kIHlvdSB3aWxsIGdldCBjb21wbGFpbnRzIHRo
YXQgdGhlcmUgYXJlCi0jIG5vIHJ1bGVzIHRvIGdlbmVyYXRlIGx0bWFpbi5zaC4KLWlmIHRlc3Qg
LWYgIiRsdG1haW4iOyB0aGVuCi0gICMgTm93IHF1b3RlIGFsbCB0aGUgdGhpbmdzIHRoYXQgbWF5
IGNvbnRhaW4gbWV0YWNoYXJhY3RlcnMgd2hpbGUgYmVpbmcKLSAgIyBjYXJlZnVsIG5vdCB0byBv
dmVycXVvdGUgdGhlIEFDX1NVQlNUZWQgdmFsdWVzLiAgV2UgdGFrZSBjb3BpZXMgb2YgdGhlCi0g
ICMgdmFyaWFibGVzIGFuZCBxdW90ZSB0aGUgY29waWVzIGZvciBnZW5lcmF0aW9uIG9mIHRoZSBs
aWJ0b29sIHNjcmlwdC4KLSAgZm9yIHZhciBpbiBlY2hvIG9sZF9DQyBvbGRfQ0ZMQUdTIEFSIEFS
X0ZMQUdTIFJBTkxJQiBMTl9TIExUQ0MgTk0gU0VEIFNIRUxMIFwKLSAgICBsaWJuYW1lX3NwZWMg
bGlicmFyeV9uYW1lc19zcGVjIHNvbmFtZV9zcGVjIGV4dHJhY3RfZXhwc3ltc19jbWRzIFwKLSAg
ICBvbGRfc3RyaXBsaWIgc3RyaXBsaWIgZmlsZV9tYWdpY19jbWQgZmluaXNoX2NtZHMgZmluaXNo
X2V2YWwgXAotICAgIGRlcGxpYnNfY2hlY2tfbWV0aG9kIHJlbG9hZF9mbGFnIHJlbG9hZF9jbWRz
IG5lZWRfbG9ja3MgXAotICAgIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUgbHRfY3Zfc3lz
X2dsb2JhbF9zeW1ib2xfdG9fY2RlY2wgXAotICAgIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3Rv
X2NfbmFtZV9hZGRyZXNzIFwKLSAgICBzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMgc3lzX2xpYl9k
bHNlYXJjaF9wYXRoX3NwZWMgXAotICAgIG9sZF9wb3N0aW5zdGFsbF9jbWRzIG9sZF9wb3N0dW5p
bnN0YWxsX2NtZHMgXAotICAgIF9MVF9BQ19UQUdWQVIoY29tcGlsZXIsICQxKSBcCi0gICAgX0xU
X0FDX1RBR1ZBUihDQywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKExELCAkMSkgXAotICAgIF9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSkgXAotICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19j
b21waWxlcl9zdGF0aWMsICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X25vX2J1aWx0aW5fZmxhZywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWlj
X2ZsYWdfc3BlYywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKHRocmVhZF9zYWZlX2ZsYWdfc3Bl
YywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSkg
XAotICAgIF9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfY21kcywgJDEpIFwKLSAgICBfTFRfQUNf
VEFHVkFSKG9sZF9hcmNoaXZlX2Zyb21fbmV3X2NtZHMsICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZB
UihwcmVkZXBfb2JqZWN0cywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKHBvc3RkZXBfb2JqZWN0
cywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKHByZWRlcHMsICQxKSBcCi0gICAgX0xUX0FDX1RB
R1ZBUihwb3N0ZGVwcywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKGNvbXBpbGVyX2xpYl9zZWFy
Y2hfcGF0aCwgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpIFwKLSAg
ICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKSBcCi0gICAgX0xUX0FDX1RB
R1ZBUihwb3N0aW5zdGFsbF9jbWRzLCAkMSkgXAotICAgIF9MVF9BQ19UQUdWQVIocG9zdHVuaW5z
dGFsbF9jbWRzLCAkMSkgXAotICAgIF9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfZnJvbV9leHBz
eW1zX2NtZHMsICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywg
JDEpIFwKLSAgICBfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSkgXAotICAgIF9M
VF9BQ19UQUdWQVIoZXhwb3J0X3N5bWJvbHNfY21kcywgJDEpIFwKLSAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSkgXAotICAgIF9MVF9BQ19UQUdWQVIobHRfY3ZfcHJv
Z19jb21waWxlcl9jX28sICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZBUihleGNsdWRlX2V4cHN5bXMs
ICQxKSBcCi0gICAgX0xUX0FDX1RBR1ZBUihpbmNsdWRlX2V4cHN5bXMsICQxKTsgZG8KLQotICAg
IGNhc2UgJHZhciBpbgotICAgIF9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfY21kcywgJDEpIHwg
XAotICAgIF9MVF9BQ19UQUdWQVIob2xkX2FyY2hpdmVfZnJvbV9uZXdfY21kcywgJDEpIHwgXAot
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSkgfCBcCi0gICAgX0xUX0FDX1RBR1ZB
UihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSkgfCBcCi0gICAgX0xUX0FDX1RBR1ZBUihvbGRfYXJj
aGl2ZV9mcm9tX2V4cHN5bXNfY21kcywgJDEpIHwgXAotICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0
X3N5bWJvbHNfY21kcywgJDEpIHwgXAotICAgIGV4dHJhY3RfZXhwc3ltc19jbWRzIHwgcmVsb2Fk
X2NtZHMgfCBmaW5pc2hfY21kcyB8IFwKLSAgICBwb3N0aW5zdGFsbF9jbWRzIHwgcG9zdHVuaW5z
dGFsbF9jbWRzIHwgXAotICAgIG9sZF9wb3N0aW5zdGFsbF9jbWRzIHwgb2xkX3Bvc3R1bmluc3Rh
bGxfY21kcyB8IFwKLSAgICBzeXNfbGliX3NlYXJjaF9wYXRoX3NwZWMgfCBzeXNfbGliX2Rsc2Vh
cmNoX3BhdGhfc3BlYykKLSAgICAgICMgRG91YmxlLXF1b3RlIGRvdWJsZS1ldmFsZWQgc3RyaW5n
cy4KLSAgICAgIGV2YWwgImx0XyR2YXI9XFxcIlxgXCRlY2hvIFwiWFwkJHZhclwiIHwgXCRYc2Vk
IC1lIFwiXCRkb3VibGVfcXVvdGVfc3Vic3RcIiAtZSBcIlwkc2VkX3F1b3RlX3N1YnN0XCIgLWUg
XCJcJGRlbGF5X3ZhcmlhYmxlX3N1YnN0XCJcYFxcXCIiCi0gICAgICA7OwotICAgICopCi0gICAg
ICBldmFsICJsdF8kdmFyPVxcXCJcYFwkZWNobyBcIlhcJCR2YXJcIiB8IFwkWHNlZCAtZSBcIlwk
c2VkX3F1b3RlX3N1YnN0XCJcYFxcXCIiCi0gICAgICA7OwotICAgIGVzYWMKLSAgZG9uZQotCi0g
IGNhc2UgJGx0X2VjaG8gaW4KLSAgKidcWyRdMCAtLWZhbGxiYWNrLWVjaG8iJykKLSAgICBsdF9l
Y2hvPWAkZWNobyAiWCRsdF9lY2hvIiB8ICRYc2VkIC1lICdzL1xcXFxcXFxbJF0wIC0tZmFsbGJh
Y2stZWNobyJbJF0vWyRdMCAtLWZhbGxiYWNrLWVjaG8iLydgCi0gICAgOzsKLSAgZXNhYwotCi1p
ZmVsc2UoWyQxXSwgW10sCi0gIFtjZmdmaWxlPSIke29maWxlfVQiCi0gIHRyYXAgIiRybSBcIiRj
ZmdmaWxlXCI7IGV4aXQgMSIgMSAyIDE1Ci0gICRybSAtZiAiJGNmZ2ZpbGUiCi0gIEFDX01TR19O
T1RJQ0UoW2NyZWF0aW5nICRvZmlsZV0pXSwKLSAgW2NmZ2ZpbGU9IiRvZmlsZSJdKQotCi0gIGNh
dCA8PF9fRU9GX18gPj4gIiRjZmdmaWxlIgotaWZlbHNlKFskMV0sIFtdLAotWyMhICRTSEVMTAot
Ci0jIGAkZWNobyAiJGNmZ2ZpbGUiIHwgc2VkICdzJV4uKi8lJSdgIC0gUHJvdmlkZSBnZW5lcmFs
aXplZCBsaWJyYXJ5LWJ1aWxkaW5nIHN1cHBvcnQgc2VydmljZXMuCi0jIEdlbmVyYXRlZCBhdXRv
bWF0aWNhbGx5IGJ5ICRQUk9HUkFNIChHTlUgJFBBQ0tBR0UgJFZFUlNJT04kVElNRVNUQU1QKQot
IyBOT1RFOiBDaGFuZ2VzIG1hZGUgdG8gdGhpcyBmaWxlIHdpbGwgYmUgbG9zdDogbG9vayBhdCBs
dG1haW4uc2guCi0jCi0jIENvcHlyaWdodCAoQykgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAw
MCwgMjAwMQotIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KLSMKLSMgVGhpcyBmaWxl
IGlzIHBhcnQgb2YgR05VIExpYnRvb2w6Ci0jIE9yaWdpbmFsbHkgYnkgR29yZG9uIE1hdHppZ2tl
aXQgPGdvcmRAZ251LmFpLm1pdC5lZHU+LCAxOTk2Ci0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBmcmVl
IHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0jIGl0IHVu
ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5Ci0jIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIg
b2YgdGhlIExpY2Vuc2UsIG9yCi0jIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u
Ci0jCi0jIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLCBidXQKLSMgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0
aGUgaW1wbGllZCB3YXJyYW50eSBvZgotIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQotIyBHZW5lcmFsIFB1YmxpYyBMaWNl
bnNlIGZvciBtb3JlIGRldGFpbHMuCi0jCi0jIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv
cHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0jIGFsb25nIHdpdGggdGhpcyBw
cm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCi0jIEZvdW5kYXRpb24s
IEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3
LCBVU0EuCi0jCi0jIEFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdOVSBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlLCBpZiB5b3UKLSMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBh
IHByb2dyYW0gdGhhdCBjb250YWlucyBhCi0jIGNvbmZpZ3VyYXRpb24gc2NyaXB0IGdlbmVyYXRl
ZCBieSBBdXRvY29uZiwgeW91IG1heSBpbmNsdWRlIGl0IHVuZGVyCi0jIHRoZSBzYW1lIGRpc3Ry
aWJ1dGlvbiB0ZXJtcyB0aGF0IHlvdSB1c2UgZm9yIHRoZSByZXN0IG9mIHRoYXQgcHJvZ3JhbS4K
LQotIyBTZWQgdGhhdCBoZWxwcyB1cyBhdm9pZCBhY2NpZGVudGFsbHkgdHJpZ2dlcmluZyBlY2hv
KDEpIG9wdGlvbnMgbGlrZSAtbi4KLVhzZWQ9InNlZCAtZSBzL15YLy8iCi0KLSMgVGhlIEhQLVVY
IGtzaCBhbmQgUE9TSVggc2hlbGwgcHJpbnQgdGhlIHRhcmdldCBkaXJlY3RvcnkgdG8gc3Rkb3V0
Ci0jIGlmIENEUEFUSCBpcyBzZXQuCi1pZiB0ZXN0ICJYXCR7Q0RQQVRIK3NldH0iID0gWHNldDsg
dGhlbiBDRFBBVEg9OjsgZXhwb3J0IENEUEFUSDsgZmkKLQotIyBUaGUgbmFtZXMgb2YgdGhlIHRh
Z2dlZCBjb25maWd1cmF0aW9ucyBzdXBwb3J0ZWQgYnkgdGhpcyBzY3JpcHQuCi1hdmFpbGFibGVf
dGFncz0KLQotIyAjIyMgQkVHSU4gTElCVE9PTCBDT05GSUddLAotWyMgIyMjIEJFR0lOIExJQlRP
T0wgVEFHIENPTkZJRzogJHRhZ25hbWVdKQotCi0jIExpYnRvb2wgd2FzIGNvbmZpZ3VyZWQgb24g
aG9zdCBgKGhvc3RuYW1lIHx8IHVuYW1lIC1uKSAyPi9kZXYvbnVsbCB8IHNlZCAxcWA6Ci0KLSMg
U2hlbGwgdG8gdXNlIHdoZW4gaW52b2tpbmcgc2hlbGwgc2NyaXB0cy4KLVNIRUxMPSRsdF9TSEVM
TAotCi0jIFdoZXRoZXIgb3Igbm90IHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMuCi1idWlsZF9s
aWJ0b29sX2xpYnM9JGVuYWJsZV9zaGFyZWQKLQotIyBXaGV0aGVyIG9yIG5vdCB0byBidWlsZCBz
dGF0aWMgbGlicmFyaWVzLgotYnVpbGRfb2xkX2xpYnM9JGVuYWJsZV9zdGF0aWMKLQotIyBXaGV0
aGVyIG9yIG5vdCB0byBhZGQgLWxjIGZvciBidWlsZGluZyBzaGFyZWQgbGlicmFyaWVzLgotYnVp
bGRfbGlidG9vbF9uZWVkX2xjPSRfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kc19uZWVkX2xjLCAk
MSkKLQotIyBXaGV0aGVyIG9yIG5vdCB0byBvcHRpbWl6ZSBmb3IgZmFzdCBpbnN0YWxsYXRpb24u
Ci1mYXN0X2luc3RhbGw9JGVuYWJsZV9mYXN0X2luc3RhbGwKLQotIyBUaGUgaG9zdCBzeXN0ZW0u
Ci1ob3N0X2FsaWFzPSRob3N0X2FsaWFzCi1ob3N0PSRob3N0Ci0KLSMgQW4gZWNobyBwcm9ncmFt
IHRoYXQgZG9lcyBub3QgaW50ZXJwcmV0IGJhY2tzbGFzaGVzLgotZWNobz0kbHRfZWNobwotCi0j
IFRoZSBhcmNoaXZlci4KLUFSPSRsdF9BUgotQVJfRkxBR1M9JGx0X0FSX0ZMQUdTCi0KLSMgQSBD
IGNvbXBpbGVyLgotTFRDQz0kbHRfTFRDQwotCi0jIEEgbGFuZ3VhZ2Utc3BlY2lmaWMgY29tcGls
ZXIuCi1DQz0kbHRfW11fTFRfQUNfVEFHVkFSKGNvbXBpbGVyLCAkMSkKLQotIyBJcyB0aGUgY29t
cGlsZXIgdGhlIEdOVSBDIGNvbXBpbGVyPwotd2l0aF9nY2M9JF9MVF9BQ19UQUdWQVIoR0NDLCAk
MSkKLQotIyBUaGUgbGlua2VyIHVzZWQgdG8gYnVpbGQgbGlicmFyaWVzLgotTEQ9JGx0X1tdX0xU
X0FDX1RBR1ZBUihMRCwgJDEpCi0KLSMgV2hldGhlciB3ZSBuZWVkIGhhcmQgb3Igc29mdCBsaW5r
cy4KLUxOX1M9JGx0X0xOX1MKLQotIyBBIEJTRC1jb21wYXRpYmxlIG5tIHByb2dyYW0uCi1OTT0k
bHRfTk0KLQotIyBBIHNlZCBwcm9ncmFtIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0Lgot
U0VEPSRsdF9TRUQKLQotIyBBIHN5bWJvbCBzdHJpcHBpbmcgcHJvZ3JhbQotU1RSSVA9JFNUUklQ
Ci0KLSMgVXNlZCB0byBleGFtaW5lIGxpYnJhcmllcyB3aGVuIGZpbGVfbWFnaWNfY21kIGJlZ2lu
cyAiZmlsZSIKLU1BR0lDX0NNRD0kTUFHSUNfQ01ECi0KLSMgVXNlZCBvbiBjeWd3aW46IERMTCBj
cmVhdGlvbiBwcm9ncmFtLgotRExMVE9PTD0iJERMTFRPT0wiCi0KLSMgVXNlZCBvbiBjeWd3aW46
IG9iamVjdCBkdW1wZXIuCi1PQkpEVU1QPSIkT0JKRFVNUCIKLQotIyBVc2VkIG9uIGN5Z3dpbjog
YXNzZW1ibGVyLgotQVM9IiRBUyIKLQotIyBUaGUgbmFtZSBvZiB0aGUgZGlyZWN0b3J5IHRoYXQg
Y29udGFpbnMgdGVtcG9yYXJ5IGxpYnRvb2wgZmlsZXMuCi1vYmpkaXI9JG9iamRpcgotCi0jIEhv
dyB0byBjcmVhdGUgcmVsb2FkYWJsZSBvYmplY3QgZmlsZXMuCi1yZWxvYWRfZmxhZz0kbHRfcmVs
b2FkX2ZsYWcKLXJlbG9hZF9jbWRzPSRsdF9yZWxvYWRfY21kcwotCi0jIEhvdyB0byBwYXNzIGEg
bGlua2VyIGZsYWcgdGhyb3VnaCB0aGUgY29tcGlsZXIuCi13bD0kbHRfW11fTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfd2wsICQxKQotCi0jIE9iamVjdCBmaWxlIHN1ZmZpeCAobm9ybWFs
bHkgIm8iKS4KLW9iamV4dD0iJGFjX29iamV4dCIKLQotIyBPbGQgYXJjaGl2ZSBzdWZmaXggKG5v
cm1hbGx5ICJhIikuCi1saWJleHQ9IiRsaWJleHQiCi0KLSMgRXhlY3V0YWJsZSBmaWxlIHN1ZmZp
eCAobm9ybWFsbHkgIiIpLgotZXhlZXh0PSIkZXhlZXh0IgotCi0jIEFkZGl0aW9uYWwgY29tcGls
ZXIgZmxhZ3MgZm9yIGJ1aWxkaW5nIGxpYnJhcnkgb2JqZWN0cy4KLXBpY19mbGFnPSRsdF9bXV9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKQotcGljX21vZGU9JHBpY19tb2Rl
Ci0KLSMgV2hhdCBpcyB0aGUgbWF4aW11bSBsZW5ndGggb2YgYSBjb21tYW5kPwotbWF4X2NtZF9s
ZW49JGx0X2N2X3N5c19tYXhfY21kX2xlbgotCi0jIERvZXMgY29tcGlsZXIgc2ltdWx0YW5lb3Vz
bHkgc3VwcG9ydCAtYyBhbmQgLW8gb3B0aW9ucz8KLWNvbXBpbGVyX2Nfbz0kbHRfW11fTFRfQUNf
VEFHVkFSKGx0X2N2X3Byb2dfY29tcGlsZXJfY19vLCAkMSkKLQotIyBNdXN0IHdlIGxvY2sgZmls
ZXMgd2hlbiBkb2luZyBjb21waWxhdGlvbiA/Ci1uZWVkX2xvY2tzPSRsdF9uZWVkX2xvY2tzCi0K
LSMgRG8gd2UgbmVlZCB0aGUgbGliIHByZWZpeCBmb3IgbW9kdWxlcz8KLW5lZWRfbGliX3ByZWZp
eD0kbmVlZF9saWJfcHJlZml4Ci0KLSMgRG8gd2UgbmVlZCBhIHZlcnNpb24gZm9yIGxpYnJhcmll
cz8KLW5lZWRfdmVyc2lvbj0kbmVlZF92ZXJzaW9uCi0KLSMgV2hldGhlciBkbG9wZW4gaXMgc3Vw
cG9ydGVkLgotZGxvcGVuX3N1cHBvcnQ9JGVuYWJsZV9kbG9wZW4KLQotIyBXaGV0aGVyIGRsb3Bl
biBvZiBwcm9ncmFtcyBpcyBzdXBwb3J0ZWQuCi1kbG9wZW5fc2VsZj0kZW5hYmxlX2Rsb3Blbl9z
ZWxmCi0KLSMgV2hldGhlciBkbG9wZW4gb2Ygc3RhdGljYWxseSBsaW5rZWQgcHJvZ3JhbXMgaXMg
c3VwcG9ydGVkLgotZGxvcGVuX3NlbGZfc3RhdGljPSRlbmFibGVfZGxvcGVuX3NlbGZfc3RhdGlj
Ci0KLSMgQ29tcGlsZXIgZmxhZyB0byBwcmV2ZW50IGR5bmFtaWMgbGlua2luZy4KLWxpbmtfc3Rh
dGljX2ZsYWc9JGx0X1tdX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEp
Ci0KLSMgQ29tcGlsZXIgZmxhZyB0byB0dXJuIG9mZiBidWlsdGluIGZ1bmN0aW9ucy4KLW5vX2J1
aWx0aW5fZmxhZz0kbHRfW11fTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfbm9fYnVpbHRp
bl9mbGFnLCAkMSkKLQotIyBDb21waWxlciBmbGFnIHRvIGFsbG93IHJlZmxleGl2ZSBkbG9wZW5z
LgotZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjPSRsdF9bXV9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5
bmFtaWNfZmxhZ19zcGVjLCAkMSkKLQotIyBDb21waWxlciBmbGFnIHRvIGdlbmVyYXRlIHNoYXJl
ZCBvYmplY3RzIGRpcmVjdGx5IGZyb20gYXJjaGl2ZXMuCi13aG9sZV9hcmNoaXZlX2ZsYWdfc3Bl
Yz0kbHRfW11fTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSkKLQotIyBD
b21waWxlciBmbGFnIHRvIGdlbmVyYXRlIHRocmVhZC1zYWZlIG9iamVjdHMuCi10aHJlYWRfc2Fm
ZV9mbGFnX3NwZWM9JGx0X1tdX0xUX0FDX1RBR1ZBUih0aHJlYWRfc2FmZV9mbGFnX3NwZWMsICQx
KQotCi0jIExpYnJhcnkgdmVyc2lvbmluZyB0eXBlLgotdmVyc2lvbl90eXBlPSR2ZXJzaW9uX3R5
cGUKLQotIyBGb3JtYXQgb2YgbGlicmFyeSBuYW1lIHByZWZpeC4KLWxpYm5hbWVfc3BlYz0kbHRf
bGlibmFtZV9zcGVjCi0KLSMgTGlzdCBvZiBhcmNoaXZlIG5hbWVzLiAgRmlyc3QgbmFtZSBpcyB0
aGUgcmVhbCBvbmUsIHRoZSByZXN0IGFyZSBsaW5rcy4KLSMgVGhlIGxhc3QgbmFtZSBpcyB0aGUg
b25lIHRoYXQgdGhlIGxpbmtlciBmaW5kcyB3aXRoIC1sTkFNRS4KLWxpYnJhcnlfbmFtZXNfc3Bl
Yz0kbHRfbGlicmFyeV9uYW1lc19zcGVjCi0KLSMgVGhlIGNvZGVkIG5hbWUgb2YgdGhlIGxpYnJh
cnksIGlmIGRpZmZlcmVudCBmcm9tIHRoZSByZWFsIG5hbWUuCi1zb25hbWVfc3BlYz0kbHRfc29u
YW1lX3NwZWMKLQotIyBDb21tYW5kcyB1c2VkIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIGFuIG9sZC1z
dHlsZSBhcmNoaXZlLgotUkFOTElCPSRsdF9SQU5MSUIKLW9sZF9hcmNoaXZlX2NtZHM9JGx0X1td
X0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9jbWRzLCAkMSkKLW9sZF9wb3N0aW5zdGFsbF9jbWRz
PSRsdF9vbGRfcG9zdGluc3RhbGxfY21kcwotb2xkX3Bvc3R1bmluc3RhbGxfY21kcz0kbHRfb2xk
X3Bvc3R1bmluc3RhbGxfY21kcwotCi0jIENyZWF0ZSBhbiBvbGQtc3R5bGUgYXJjaGl2ZSBmcm9t
IGEgc2hhcmVkIGFyY2hpdmUuCi1vbGRfYXJjaGl2ZV9mcm9tX25ld19jbWRzPSRsdF9bXV9MVF9B
Q19UQUdWQVIob2xkX2FyY2hpdmVfZnJvbV9uZXdfY21kcywgJDEpCi0KLSMgQ3JlYXRlIGEgdGVt
cG9yYXJ5IG9sZC1zdHlsZSBhcmNoaXZlIHRvIGxpbmsgaW5zdGVhZCBvZiBhIHNoYXJlZCBhcmNo
aXZlLgotb2xkX2FyY2hpdmVfZnJvbV9leHBzeW1zX2NtZHM9JGx0X1tdX0xUX0FDX1RBR1ZBUihv
bGRfYXJjaGl2ZV9mcm9tX2V4cHN5bXNfY21kcywgJDEpCi0KLSMgQ29tbWFuZHMgdXNlZCB0byBi
dWlsZCBhbmQgaW5zdGFsbCBhIHNoYXJlZCBhcmNoaXZlLgotYXJjaGl2ZV9jbWRzPSRsdF9bXV9M
VF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSkKLWFyY2hpdmVfZXhwc3ltX2NtZHM9JGx0X1td
X0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAkMSkKLXBvc3RpbnN0YWxsX2NtZHM9
JGx0X3Bvc3RpbnN0YWxsX2NtZHMKLXBvc3R1bmluc3RhbGxfY21kcz0kbHRfcG9zdHVuaW5zdGFs
bF9jbWRzCi0KLSMgQ29tbWFuZHMgdG8gc3RyaXAgbGlicmFyaWVzLgotb2xkX3N0cmlwbGliPSRs
dF9vbGRfc3RyaXBsaWIKLXN0cmlwbGliPSRsdF9zdHJpcGxpYgotCi0jIERlcGVuZGVuY2llcyB0
byBwbGFjZSBiZWZvcmUgdGhlIG9iamVjdHMgYmVpbmcgbGlua2VkIHRvIGNyZWF0ZSBhCi0jIHNo
YXJlZCBsaWJyYXJ5LgotcHJlZGVwX29iamVjdHM9JGx0X1tdX0xUX0FDX1RBR1ZBUihwcmVkZXBf
b2JqZWN0cywgJDEpCi0KLSMgRGVwZW5kZW5jaWVzIHRvIHBsYWNlIGFmdGVyIHRoZSBvYmplY3Rz
IGJlaW5nIGxpbmtlZCB0byBjcmVhdGUgYQotIyBzaGFyZWQgbGlicmFyeS4KLXBvc3RkZXBfb2Jq
ZWN0cz0kbHRfW11fTFRfQUNfVEFHVkFSKHBvc3RkZXBfb2JqZWN0cywgJDEpCi0KLSMgRGVwZW5k
ZW5jaWVzIHRvIHBsYWNlIGJlZm9yZSB0aGUgb2JqZWN0cyBiZWluZyBsaW5rZWQgdG8gY3JlYXRl
IGEKLSMgc2hhcmVkIGxpYnJhcnkuCi1wcmVkZXBzPSRsdF9bXV9MVF9BQ19UQUdWQVIocHJlZGVw
cywgJDEpCi0KLSMgRGVwZW5kZW5jaWVzIHRvIHBsYWNlIGFmdGVyIHRoZSBvYmplY3RzIGJlaW5n
IGxpbmtlZCB0byBjcmVhdGUgYQotIyBzaGFyZWQgbGlicmFyeS4KLXBvc3RkZXBzPSRsdF9bXV9M
VF9BQ19UQUdWQVIocG9zdGRlcHMsICQxKQotCi0jIFRoZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIHVz
ZWQgaW50ZXJuYWxseSBieSB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nCi0jIGEgc2hhcmVkIGxp
YnJhcnkuCi1jb21waWxlcl9saWJfc2VhcmNoX3BhdGg9JGx0X1tdX0xUX0FDX1RBR1ZBUihjb21w
aWxlcl9saWJfc2VhcmNoX3BhdGgsICQxKQotCi0jIE1ldGhvZCB0byBjaGVjayB3aGV0aGVyIGRl
cGVuZGVudCBsaWJyYXJpZXMgYXJlIHNoYXJlZCBvYmplY3RzLgotZGVwbGlic19jaGVja19tZXRo
b2Q9JGx0X2RlcGxpYnNfY2hlY2tfbWV0aG9kCi0KLSMgQ29tbWFuZCB0byB1c2Ugd2hlbiBkZXBs
aWJzX2NoZWNrX21ldGhvZCA9PSBmaWxlX21hZ2ljLgotZmlsZV9tYWdpY19jbWQ9JGx0X2ZpbGVf
bWFnaWNfY21kCi0KLSMgRmxhZyB0aGF0IGFsbG93cyBzaGFyZWQgbGlicmFyaWVzIHdpdGggdW5k
ZWZpbmVkIHN5bWJvbHMgdG8gYmUgYnVpbHQuCi1hbGxvd191bmRlZmluZWRfZmxhZz0kbHRfW11f
TFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSkKLQotIyBGbGFnIHRoYXQgZm9y
Y2VzIG5vIHVuZGVmaW5lZCBzeW1ib2xzLgotbm9fdW5kZWZpbmVkX2ZsYWc9JGx0X1tdX0xUX0FD
X1RBR1ZBUihub191bmRlZmluZWRfZmxhZywgJDEpCi0KLSMgQ29tbWFuZHMgdXNlZCB0byBmaW5p
c2ggYSBsaWJ0b29sIGxpYnJhcnkgaW5zdGFsbGF0aW9uIGluIGEgZGlyZWN0b3J5LgotZmluaXNo
X2NtZHM9JGx0X2ZpbmlzaF9jbWRzCi0KLSMgU2FtZSBhcyBhYm92ZSwgYnV0IGEgc2luZ2xlIHNj
cmlwdCBmcmFnbWVudCB0byBiZSBldmFsZWQgYnV0IG5vdCBzaG93bi4KLWZpbmlzaF9ldmFsPSRs
dF9maW5pc2hfZXZhbAotCi0jIFRha2UgdGhlIG91dHB1dCBvZiBubSBhbmQgcHJvZHVjZSBhIGxp
c3Rpbmcgb2YgcmF3IHN5bWJvbHMgYW5kIEMgbmFtZXMuCi1nbG9iYWxfc3ltYm9sX3BpcGU9JGx0
X2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUKLQotIyBUcmFuc2Zvcm0gdGhlIG91dHB1dCBv
ZiBubSBpbiBhIHByb3BlciBDIGRlY2xhcmF0aW9uCi1nbG9iYWxfc3ltYm9sX3RvX2NkZWNsPSRs
dF9sdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbAotCi0jIFRyYW5zZm9ybSB0aGUgb3V0
cHV0IG9mIG5tIGluIGEgQyBuYW1lIGFkZHJlc3MgcGFpcgotZ2xvYmFsX3N5bWJvbF90b19jX25h
bWVfYWRkcmVzcz0kbHRfbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY19uYW1lX2FkZHJlc3MK
LQotIyBUaGlzIGlzIHRoZSBzaGFyZWQgbGlicmFyeSBydW50aW1lIHBhdGggdmFyaWFibGUuCi1y
dW5wYXRoX3Zhcj0kcnVucGF0aF92YXIKLQotIyBUaGlzIGlzIHRoZSBzaGFyZWQgbGlicmFyeSBw
YXRoIHZhcmlhYmxlLgotc2hsaWJwYXRoX3Zhcj0kc2hsaWJwYXRoX3ZhcgotCi0jIElzIHNobGli
cGF0aCBzZWFyY2hlZCBiZWZvcmUgdGhlIGhhcmQtY29kZWQgbGlicmFyeSBzZWFyY2ggcGF0aD8K
LXNobGlicGF0aF9vdmVycmlkZXNfcnVucGF0aD0kc2hsaWJwYXRoX292ZXJyaWRlc19ydW5wYXRo
Ci0KLSMgSG93IHRvIGhhcmRjb2RlIGEgc2hhcmVkIGxpYnJhcnkgcGF0aCBpbnRvIGFuIGV4ZWN1
dGFibGUuCi1oYXJkY29kZV9hY3Rpb249JF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfYWN0aW9uLCAk
MSkKLQotIyBXaGV0aGVyIHdlIHNob3VsZCBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gbGli
cmFyaWVzLgotaGFyZGNvZGVfaW50b19saWJzPSRoYXJkY29kZV9pbnRvX2xpYnMKLQotIyBGbGFn
IHRvIGhhcmRjb2RlIFwkbGliZGlyIGludG8gYSBiaW5hcnkgZHVyaW5nIGxpbmtpbmcuCi0jIFRo
aXMgbXVzdCB3b3JrIGV2ZW4gaWYgXCRsaWJkaXIgZG9lcyBub3QgZXhpc3QuCi1oYXJkY29kZV9s
aWJkaXJfZmxhZ19zcGVjPSRsdF9bXV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdf
c3BlYywgJDEpCi0KLSMgV2hldGhlciB3ZSBuZWVkIGEgc2luZ2xlIC1ycGF0aCBmbGFnIHdpdGgg
YSBzZXBhcmF0ZWQgYXJndW1lbnQuCi1oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSRsdF9bXV9M
VF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpCi0KLSMgU2V0IHRvIHll
cyBpZiB1c2luZyBESVIvbGliTkFNRS5zbyBkdXJpbmcgbGlua2luZyBoYXJkY29kZXMgRElSIGlu
dG8gdGhlCi0jIHJlc3VsdGluZyBiaW5hcnkuCi1oYXJkY29kZV9kaXJlY3Q9JF9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfZGlyZWN0LCAkMSkKLQotIyBTZXQgdG8geWVzIGlmIHVzaW5nIHRoZSAtTERJ
UiBmbGFnIGR1cmluZyBsaW5raW5nIGhhcmRjb2RlcyBESVIgaW50byB0aGUKLSMgcmVzdWx0aW5n
IGJpbmFyeS4KLWhhcmRjb2RlX21pbnVzX0w9JF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNf
TCwgJDEpCi0KLSMgU2V0IHRvIHllcyBpZiB1c2luZyBTSExJQlBBVEhfVkFSPURJUiBkdXJpbmcg
bGlua2luZyBoYXJkY29kZXMgRElSIGludG8KLSMgdGhlIHJlc3VsdGluZyBiaW5hcnkuCi1oYXJk
Y29kZV9zaGxpYnBhdGhfdmFyPSRfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIs
ICQxKQotCi0jIFZhcmlhYmxlcyB3aG9zZSB2YWx1ZXMgc2hvdWxkIGJlIHNhdmVkIGluIGxpYnRv
b2wgd3JhcHBlciBzY3JpcHRzIGFuZAotIyByZXN0b3JlZCBhdCByZWxpbmsgdGltZS4KLXZhcmlh
Ymxlc19zYXZlZF9mb3JfcmVsaW5rPSIkdmFyaWFibGVzX3NhdmVkX2Zvcl9yZWxpbmsiCi0KLSMg
V2hldGhlciBsaWJ0b29sIG11c3QgbGluayBhIHByb2dyYW0gYWdhaW5zdCBhbGwgaXRzIGRlcGVu
ZGVuY3kgbGlicmFyaWVzLgotbGlua19hbGxfZGVwbGlicz0kX0xUX0FDX1RBR1ZBUihsaW5rX2Fs
bF9kZXBsaWJzLCAkMSkKLQotIyBDb21waWxlLXRpbWUgc3lzdGVtIHNlYXJjaCBwYXRoIGZvciBs
aWJyYXJpZXMKLXN5c19saWJfc2VhcmNoX3BhdGhfc3BlYz0kbHRfc3lzX2xpYl9zZWFyY2hfcGF0
aF9zcGVjCi0KLSMgUnVuLXRpbWUgc3lzdGVtIHNlYXJjaCBwYXRoIGZvciBsaWJyYXJpZXMKLXN5
c19saWJfZGxzZWFyY2hfcGF0aF9zcGVjPSRsdF9zeXNfbGliX2Rsc2VhcmNoX3BhdGhfc3BlYwot
Ci0jIEZpeCB0aGUgc2hlbGwgdmFyaWFibGUgXCRzcmNmaWxlIGZvciB0aGUgY29tcGlsZXIuCi1m
aXhfc3JjZmlsZV9wYXRoPSIkX0xUX0FDX1RBR1ZBUihmaXhfc3JjZmlsZV9wYXRoLCAkMSkiCi0K
LSMgU2V0IHRvIHllcyBpZiBleHBvcnRlZCBzeW1ib2xzIGFyZSByZXF1aXJlZC4KLWFsd2F5c19l
eHBvcnRfc3ltYm9scz0kX0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMsICQxKQot
Ci0jIFRoZSBjb21tYW5kcyB0byBsaXN0IGV4cG9ydGVkIHN5bWJvbHMuCi1leHBvcnRfc3ltYm9s
c19jbWRzPSRsdF9bXV9MVF9BQ19UQUdWQVIoZXhwb3J0X3N5bWJvbHNfY21kcywgJDEpCi0KLSMg
VGhlIGNvbW1hbmRzIHRvIGV4dHJhY3QgdGhlIGV4cG9ydGVkIHN5bWJvbCBsaXN0IGZyb20gYSBz
aGFyZWQgYXJjaGl2ZS4KLWV4dHJhY3RfZXhwc3ltc19jbWRzPSRsdF9leHRyYWN0X2V4cHN5bXNf
Y21kcwotCi0jIFN5bWJvbHMgdGhhdCBzaG91bGQgbm90IGJlIGxpc3RlZCBpbiB0aGUgcHJlbG9h
ZGVkIHN5bWJvbHMuCi1leGNsdWRlX2V4cHN5bXM9JGx0X1tdX0xUX0FDX1RBR1ZBUihleGNsdWRl
X2V4cHN5bXMsICQxKQotCi0jIFN5bWJvbHMgdGhhdCBtdXN0IGFsd2F5cyBiZSBleHBvcnRlZC4K
LWluY2x1ZGVfZXhwc3ltcz0kbHRfW11fTFRfQUNfVEFHVkFSKGluY2x1ZGVfZXhwc3ltcywgJDEp
Ci0KLWlmZWxzZShbJDFdLFtdLAotWyMgIyMjIEVORCBMSUJUT09MIENPTkZJR10sCi1bIyAjIyMg
RU5EIExJQlRPT0wgVEFHIENPTkZJRzogJHRhZ25hbWVdKQotCi1fX0VPRl9fCi0KLWlmZWxzZShb
JDFdLFtdLCBbCi0gIGNhc2UgJGhvc3Rfb3MgaW4KLSAgYWl4MyopCi0gICAgY2F0IDw8XEVPRiA+
PiAiJGNmZ2ZpbGUiCi0KLSMgQUlYIHNvbWV0aW1lcyBoYXMgcHJvYmxlbXMgd2l0aCB0aGUgR0ND
IGNvbGxlY3QyIHByb2dyYW0uICBGb3Igc29tZQotIyByZWFzb24sIGlmIHdlIHNldCB0aGUgQ09M
TEVDVF9OQU1FUyBlbnZpcm9ubWVudCB2YXJpYWJsZSwgdGhlIHByb2JsZW1zCi0jIHZhbmlzaCBp
biBhIHB1ZmYgb2Ygc21va2UuCi1pZiB0ZXN0ICJYJHtDT0xMRUNUX05BTUVTK3NldH0iICE9IFhz
ZXQ7IHRoZW4KLSAgQ09MTEVDVF9OQU1FUz0KLSAgZXhwb3J0IENPTExFQ1RfTkFNRVMKLWZpCi1F
T0YKLSAgICA7OwotCi0gIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKiB8IG9zMiopCi0gICAgY2F0
IDw8J0VPRicgPj4gIiRjZmdmaWxlIgotICAgICMgVGhpcyBpcyBhIHNvdXJjZSBwcm9ncmFtIHRo
YXQgaXMgdXNlZCB0byBjcmVhdGUgZGxscyBvbiBXaW5kb3dzCi0gICAgIyBEb24ndCByZW1vdmUg
bm9yIG1vZGlmeSB0aGUgc3RhcnRpbmcgYW5kIGNsb3NpbmcgY29tbWVudHMKLSAgICBfTFRfQUNf
RklMRV9MVERMTF9DCi0gICAgIyBUaGlzIGlzIGEgc291cmNlIHByb2dyYW0gdGhhdCBpcyB1c2Vk
IHRvIGNyZWF0ZSBpbXBvcnQgbGlicmFyaWVzCi0gICAgIyBvbiBXaW5kb3dzIGZvciBkbGxzIHdo
aWNoIGxhY2sgdGhlbS4gRG9uJ3QgcmVtb3ZlIG5vciBtb2RpZnkgdGhlCi0gICAgIyBzdGFydGlu
ZyBhbmQgY2xvc2luZyBjb21tZW50cwotICAgIF9MVF9BQ19GSUxFX0lNUEdFTl9DCi1FT0YKLSAg
ICA7OwotICBlc2FjCi0KLSAgIyBXZSB1c2Ugc2VkIGluc3RlYWQgb2YgY2F0IGJlY2F1c2UgYmFz
aCBvbiBESkdQUCBnZXRzIGNvbmZ1c2VkIGlmCi0gICMgaWYgZmluZHMgbWl4ZWQgQ1IvTEYgYW5k
IExGLW9ubHkgbGluZXMuICBTaW5jZSBzZWQgb3BlcmF0ZXMgaW4KLSAgIyB0ZXh0IG1vZGUsIGl0
IHByb3Blcmx5IGNvbnZlcnRzIGxpbmVzIHRvIENSL0xGLiAgVGhpcyBiYXNoIHByb2JsZW0KLSAg
IyBpcyByZXBvcnRlZGx5IGZpeGVkLCBidXQgd2h5IG5vdCBydW4gb24gb2xkIHZlcnNpb25zIHRv
bz8KLSAgc2VkICckcScgIiRsdG1haW4iID4+ICIkY2ZnZmlsZSIgfHwgKHJtIC1mICIkY2ZnZmls
ZSI7IGV4aXQgMSkKLQotICBtdiAtZiAiJGNmZ2ZpbGUiICIkb2ZpbGUiIHx8IFwKLSAgICAocm0g
LWYgIiRvZmlsZSIgJiYgY3AgIiRjZmdmaWxlIiAiJG9maWxlIiAmJiBybSAtZiAiJGNmZ2ZpbGUi
KQotICBjaG1vZCAreCAiJG9maWxlIgotXSkKLWVsc2UKLSAgIyBJZiB0aGVyZSBpcyBubyBNYWtl
ZmlsZSB5ZXQsIHdlIHJlbHkgb24gYSBtYWtlIHJ1bGUgdG8gZXhlY3V0ZQotICAjIGBjb25maWcu
c3RhdHVzIC0tcmVjaGVjaycgdG8gcmVydW4gdGhlc2UgdGVzdHMgYW5kIGNyZWF0ZSB0aGUKLSAg
IyBsaWJ0b29sIHNjcmlwdCB0aGVuLgotICB0ZXN0IC1mIE1ha2VmaWxlICYmIG1ha2UgIiRsdG1h
aW4iCi1maQotXSkjIEFDX0xJQlRPT0xfQ09ORklHCi0KLQotIyBBQ19MSUJUT09MX1BST0dfQ09N
UElMRVJfTk9fUlRUSShbVEFHTkFNRV0pCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KLUFDX0RFRlVOKFtBQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRU
SV0sCi1bQUNfUkVRVUlSRShbX0xUX0FDX1NZU19DT01QSUxFUl0pZG5sCi0KLV9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWcsICQxKT0KLQotaWYgdGVzdCAiJEdD
QyIgPSB5ZXM7IHRoZW4KLSAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX25vX2J1aWx0
aW5fZmxhZywgJDEpPScgLWZuby1idWlsdGluJwotCi0gIEFDX0xJQlRPT0xfQ09NUElMRVJfT1BU
SU9OKFtpZiAkY29tcGlsZXIgc3VwcG9ydHMgLWZuby1ydHRpIC1mbm8tZXhjZXB0aW9uc10sCi0g
ICAgbHRfY3ZfcHJvZ19jb21waWxlcl9ydHRpX2V4Y2VwdGlvbnMsCi0gICAgWy1mbm8tcnR0aSAt
Zm5vLWV4Y2VwdGlvbnMgLWMgY29uZnRlc3QuJGFjX2V4dF0sIFtdLAotICAgIFtfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfbm9fYnVpbHRpbl9mbGFnLCAkMSk9IiRfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfbm9fYnVpbHRpbl9mbGFnLCAkMSkgLWZuby1ydHRpIC1mbm8tZXhj
ZXB0aW9ucyJdKQotZmkKLV0pIyBBQ19MSUJUT09MX1BST0dfQ09NUElMRVJfTk9fUlRUSQotCi0K
LSMgQUNfTElCVE9PTF9TWVNfR0xPQkFMX1NZTUJPTF9QSVBFCi0jIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW0FDX0xJQlRPT0xfU1lTX0dMT0JBTF9TWU1CT0xf
UElQRV0sCi1bQUNfUkVRVUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKQotQUNfUkVRVUlSRShbQUNf
UFJPR19OTV0pCi1BQ19SRVFVSVJFKFtBQ19PQkpFWFRdKQotIyBDaGVjayBmb3IgY29tbWFuZCB0
byBncmFiIHRoZSByYXcgc3ltYm9sIG5hbWUgZm9sbG93ZWQgYnkgQyBzeW1ib2wgZnJvbSBubS4K
LUFDX01TR19DSEVDS0lORyhbY29tbWFuZCB0byBwYXJzZSAkTk0gb3V0cHV0IGZyb20gJGNvbXBp
bGVyIG9iamVjdF0pCi1BQ19DQUNIRV9WQUwoW2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGVd
LAotWwotIyBUaGVzZSBhcmUgc2FuZSBkZWZhdWx0cyB0aGF0IHdvcmsgb24gYXQgbGVhc3QgYSBm
ZXcgb2xkIHN5c3RlbXMuCi0jIFtUaGV5IGNvbWUgZnJvbSBVbHRyaXguICBXaGF0IGNvdWxkIGJl
IG9sZGVyIHRoYW4gVWx0cml4PyEhIDspXQotCi0jIENoYXJhY3RlciBjbGFzcyBkZXNjcmliaW5n
IE5NIGdsb2JhbCBzeW1ib2wgY29kZXMuCi1zeW1jb2RlPSdbW0JDREVHUlNUXV0nCi0KLSMgUmVn
ZXhwIHRvIG1hdGNoIHN5bWJvbHMgdGhhdCBjYW4gYmUgYWNjZXNzZWQgZGlyZWN0bHkgZnJvbSBD
Lgotc3ltcGF0PSdcKFtbX0EtWmEtel1dW1tfQS1aYS16MC05XV0qXCknCi0KLSMgVHJhbnNmb3Jt
IHRoZSBhYm92ZSBpbnRvIGEgcmF3IHN5bWJvbCBhbmQgYSBDIHN5bWJvbC4KLXN5bXhmcm09J1wx
IFwyXDMgXDMnCi0KLSMgVHJhbnNmb3JtIGFuIGV4dHJhY3RlZCBzeW1ib2wgbGluZSBpbnRvIGEg
cHJvcGVyIEMgZGVjbGFyYXRpb24KLWx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNsPSJz
ZWQgLW4gLWUgJ3MvXi4gLiogXCguKlwpJC9leHRlcm4gaW50IFwxOy9wJyIKLQotIyBUcmFuc2Zv
cm0gYW4gZXh0cmFjdGVkIHN5bWJvbCBsaW5lIGludG8gc3ltYm9sIG5hbWUgYW5kIHN5bWJvbCBh
ZGRyZXNzCi1sdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzcz0ic2VkIC1u
IC1lICdzL146IFwoW1teIF1dKlwpICQvICB7XFxcIlwxXFxcIiwgKGx0X3B0cikgMH0sL3AnIC1l
ICdzL14kc3ltY29kZSBcKFtbXiBdXSpcKSBcKFtbXiBdXSpcKSQvICB7XCJcMlwiLCAobHRfcHRy
KSBcJlwyfSwvcCciCi0KLSMgRGVmaW5lIHN5c3RlbS1zcGVjaWZpYyB2YXJpYWJsZXMuCi1jYXNl
ICRob3N0X29zIGluCi1haXgqKQotICBzeW1jb2RlPSdbW0JDRFRdXScKLSAgOzsKLWN5Z3dpbiog
fCBtaW5ndyogfCBwdzMyKikKLSAgc3ltY29kZT0nW1tBQkNER0lTVFddXScKLSAgOzsKLWhwdXgq
KSAjIEl0cyBsaW5rZXIgZGlzdGluZ3Vpc2hlcyBkYXRhIGZyb20gY29kZSBzeW1ib2xzCi0gIGlm
IHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCi0gICAgc3ltY29kZT0nW1tBQkNERUdSU1Rd
XScKLSAgZmkKLSAgbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9fY2RlY2w9InNlZCAtbiAtZSAn
cy9eVCAuKiBcKC4qXCkkL2V4dGVybiBpbnQgXDEoKTsvcCcgLWUgJ3MvXiRzeW1jb2RlKiAuKiBc
KC4qXCkkL2V4dGVybiBjaGFyIFwxOy9wJyIKLSAgbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfdG9f
Y19uYW1lX2FkZHJlc3M9InNlZCAtbiAtZSAncy9eOiBcKFtbXiBdXSpcKSAkLyAge1xcXCJcMVxc
XCIsIChsdF9wdHIpIDB9LC9wJyAtZSAncy9eJHN5bWNvZGUqIFwoW1teIF1dKlwpIFwoW1teIF1d
KlwpJC8gIHtcIlwyXCIsIChsdF9wdHIpIFwmXDJ9LC9wJyIKLSAgOzsKLWlyaXgqIHwgbm9uc3Rv
cHV4KikKLSAgc3ltY29kZT0nW1tCQ0RFR1JTVF1dJwotICA7Owotc29sYXJpcyogfCBzeXN2NSop
Ci0gIHN5bWNvZGU9J1tbQkRUXV0nCi0gIDs7Ci1zeXN2NCkKLSAgc3ltY29kZT0nW1tERk5TVFVd
XScKLSAgOzsKLWVzYWMKLQotIyBIYW5kbGUgQ1JMRiBpbiBtaW5ndyB0b29sIGNoYWluCi1vcHRf
Y3I9Ci1jYXNlICRob3N0X29zIGluCi1taW5ndyopCi0gIG9wdF9jcj1gZWNobyAneFx7MCwxXH0n
IHwgdHIgeCAnXDAxNSdgICMgb3B0aW9uIGNyIGluIHJlZ2V4cAotICA7OwotZXNhYwotCi0jIElm
IHdlJ3JlIHVzaW5nIEdOVSBubSwgdGhlbiB1c2UgaXRzIHN0YW5kYXJkIHN5bWJvbCBjb2Rlcy4K
LWlmICROTSAtViAyPiYxIHwgZWdyZXAgJyhHTlV8d2l0aCBCRkQpJyA+IC9kZXYvbnVsbDsgdGhl
bgotICBzeW1jb2RlPSdbW0FCQ0RHSVNUV11dJwotZmkKLQotIyBUcnkgd2l0aG91dCBhIHByZWZp
eCB1bmRlcmNvcmUsIHRoZW4gd2l0aCBpdC4KLWZvciBhY19zeW1wcmZ4IGluICIiICJfIjsgZG8K
LQotICAjIFdyaXRlIHRoZSByYXcgYW5kIEMgaWRlbnRpZmllcnMuCi0gIGx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3BpcGU9InNlZCAtbiAtZSAncy9eLipbWyAJXV1cKCRzeW1jb2RlJHN5bWNvZGUq
XClbWyAJXV1bWyAJXV0qXCgkYWNfc3ltcHJmeFwpJHN5bXBhdCRvcHRfY3IkLyRzeW14ZnJtL3An
IgotCi0gICMgQ2hlY2sgdG8gc2VlIHRoYXQgdGhlIHBpcGUgd29ya3MgY29ycmVjdGx5LgotICBw
aXBlX3dvcmtzPW5vCi0KLSAgcm0gLWYgY29uZnRlc3QqCi0gIGNhdCA+IGNvbmZ0ZXN0LiRhY19l
eHQgPDxFT0YKLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJDIiB7Ci0jZW5kaWYKLWNoYXIg
bm1fdGVzdF92YXI7Ci12b2lkIG5tX3Rlc3RfZnVuYygpe30KLSNpZmRlZiBfX2NwbHVzcGx1cwot
fQotI2VuZGlmCi1pbnQgbWFpbigpe25tX3Rlc3RfdmFyPSdhJztubV90ZXN0X2Z1bmMoKTtyZXR1
cm4oMCk7fQotRU9GCi0KLSAgaWYgQUNfVFJZX0VWQUwoYWNfY29tcGlsZSk7IHRoZW4KLSAgICAj
IE5vdyB0cnkgdG8gZ3JhYiB0aGUgc3ltYm9scy4KLSAgICBubGlzdD1jb25mdGVzdC5ubQotICAg
IGlmIEFDX1RSWV9FVkFMKE5NIGNvbmZ0ZXN0LiRhY19vYmpleHQgXHwgJGx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3BpcGUgXD4gJG5saXN0KSAmJiB0ZXN0IC1zICIkbmxpc3QiOyB0aGVuCi0gICAg
ICAjIFRyeSBzb3J0aW5nIGFuZCB1bmlxdWlmeWluZyB0aGUgb3V0cHV0LgotICAgICAgaWYgc29y
dCAiJG5saXN0IiB8IHVuaXEgPiAiJG5saXN0IlQ7IHRoZW4KLQltdiAtZiAiJG5saXN0IlQgIiRu
bGlzdCIKLSAgICAgIGVsc2UKLQlybSAtZiAiJG5saXN0IlQKLSAgICAgIGZpCi0KLSAgICAgICMg
TWFrZSBzdXJlIHRoYXQgd2Ugc25hZ2dlZCBhbGwgdGhlIHN5bWJvbHMgd2UgbmVlZC4KLSAgICAg
IGlmIGVncmVwICcgbm1fdGVzdF92YXIkJyAiJG5saXN0IiA+L2Rldi9udWxsOyB0aGVuCi0JaWYg
ZWdyZXAgJyBubV90ZXN0X2Z1bmMkJyAiJG5saXN0IiA+L2Rldi9udWxsOyB0aGVuCi0JICBjYXQg
PDxFT0YgPiBjb25mdGVzdC4kYWNfZXh0Ci0jaWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIg
ewotI2VuZGlmCi0KLUVPRgotCSAgIyBOb3cgZ2VuZXJhdGUgdGhlIHN5bWJvbCBmaWxlLgotCSAg
ZXZhbCAiJGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNsIicgPCAiJG5saXN0IiB8IGdy
ZXAgLXYgbWFpbiA+PiBjb25mdGVzdC4kYWNfZXh0JwotCi0JICBjYXQgPDxFT0YgPj4gY29uZnRl
c3QuJGFjX2V4dAotI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXwotIyBkZWZpbmUg
bHRfcHRyX3Qgdm9pZCAqCi0jZWxzZQotIyBkZWZpbmUgbHRfcHRyX3QgY2hhciAqCi0jIGRlZmlu
ZSBjb25zdAotI2VuZGlmCi0KLS8qIFRoZSBtYXBwaW5nIGJldHdlZW4gc3ltYm9sIG5hbWVzIGFu
ZCBzeW1ib2xzLiAqLwotY29uc3Qgc3RydWN0IHsKLSAgY29uc3QgY2hhciAqbmFtZTsKLSAgbHRf
cHRyX3QgYWRkcmVzczsKLX0KLWx0X3ByZWxvYWRlZF9zeW1ib2xzW1tdXSA9Ci17Ci1FT0YKLQkg
IHNlZCAicy9eJHN5bWNvZGUkc3ltY29kZSogXCguKlwpIFwoLipcKSQvICB7XCJcMlwiLCAobHRf
cHRyX3QpIFwmXDJ9LC8iIDwgIiRubGlzdCIgfCBncmVwIC12IG1haW4gPj4gY29uZnRlc3QuJGFj
X2V4dAotCSAgY2F0IDw8XEVPRiA+PiBjb25mdGVzdC4kYWNfZXh0Ci0gIHswLCAobHRfcHRyX3Qp
IDB9Ci19OwotCi0jaWZkZWYgX19jcGx1c3BsdXMKLX0KLSNlbmRpZgotRU9GCi0JICAjIE5vdyB0
cnkgbGlua2luZyB0aGUgdHdvIGZpbGVzLgotCSAgbXYgY29uZnRlc3QuJGFjX29iamV4dCBjb25m
dHN0bS4kYWNfb2JqZXh0Ci0JICBsdF9zYXZlX0xJQlM9IiRMSUJTIgotCSAgbHRfc2F2ZV9DRkxB
R1M9IiRDRkxBR1MiCi0JICBMSUJTPSJjb25mdHN0bS4kYWNfb2JqZXh0IgotCSAgQ0ZMQUdTPSIk
Q0ZMQUdTJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9ub19idWlsdGluX2ZsYWcsICQx
KSIKLQkgIGlmIEFDX1RSWV9FVkFMKGFjX2xpbmspICYmIHRlc3QgLXMgY29uZnRlc3Qke2FjX2V4
ZWV4dH07IHRoZW4KLQkgICAgcGlwZV93b3Jrcz15ZXMKLQkgIGZpCi0JICBMSUJTPSIkbHRfc2F2
ZV9MSUJTIgotCSAgQ0ZMQUdTPSIkbHRfc2F2ZV9DRkxBR1MiCi0JZWxzZQotCSAgZWNobyAiY2Fu
bm90IGZpbmQgbm1fdGVzdF9mdW5jIGluICRubGlzdCIgPiZBU19NRVNTQUdFX0xPR19GRAotCWZp
Ci0gICAgICBlbHNlCi0JZWNobyAiY2Fubm90IGZpbmQgbm1fdGVzdF92YXIgaW4gJG5saXN0IiA+
JkFTX01FU1NBR0VfTE9HX0ZECi0gICAgICBmaQotICAgIGVsc2UKLSAgICAgIGVjaG8gImNhbm5v
dCBydW4gJGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGUiID4mQVNfTUVTU0FHRV9MT0dfRkQK
LSAgICBmaQotICBlbHNlCi0gICAgZWNobyAiJHByb2duYW1lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
IiA+JkFTX01FU1NBR0VfTE9HX0ZECi0gICAgY2F0IGNvbmZ0ZXN0LiRhY19leHQgPiY1Ci0gIGZp
Ci0gIHJtIC1mIGNvbmZ0ZXN0KiBjb25mdHN0KgotCi0gICMgRG8gbm90IHVzZSB0aGUgZ2xvYmFs
X3N5bWJvbF9waXBlIHVubGVzcyBpdCB3b3Jrcy4KLSAgaWYgdGVzdCAiJHBpcGVfd29ya3MiID0g
eWVzOyB0aGVuCi0gICAgYnJlYWsKLSAgZWxzZQotICAgIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9s
X3BpcGU9Ci0gIGZpCi1kb25lCi1dKQotaWYgdGVzdCAteiAiJGx0X2N2X3N5c19nbG9iYWxfc3lt
Ym9sX3BpcGUiOyB0aGVuCi0gIGx0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3RvX2NkZWNsPQotZmkK
LWlmIHRlc3QgLXogIiRsdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF9waXBlJGx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3RvX2NkZWNsIjsgdGhlbgotICBBQ19NU0dfUkVTVUxUKGZhaWxlZCkKLWVsc2UK
LSAgQUNfTVNHX1JFU1VMVChvaykKLWZpCi1dKSAjIEFDX0xJQlRPT0xfU1lTX0dMT0JBTF9TWU1C
T0xfUElQRQotCi0KLSMgQUNfTElCVE9PTF9QUk9HX0NPTVBJTEVSX1BJQyhbVEFHTkFNRV0pCi0j
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotQUNfREVGVU4oW0FDX0xJ
QlRPT0xfUFJPR19DT01QSUxFUl9QSUNdLAotW19MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxl
cl93bCwgJDEpPQotX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPQotX0xU
X0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPQotCi1BQ19NU0dfQ0hFQ0tJ
TkcoW2ZvciAkY29tcGlsZXIgb3B0aW9uIHRvIHByb2R1Y2UgUElDXSkKLSBpZmVsc2UoWyQxXSxb
Q1hYXSxbCi0gICMgQysrIHNwZWNpZmljIGNhc2VzIGZvciBwaWMsIHN0YXRpYywgd2wsIGV0Yy4K
LSAgaWYgdGVzdCAiJEdYWCIgPSB5ZXM7IHRoZW4KLSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2df
Y29tcGlsZXJfd2wsICQxKT0nLVdsLCcKLSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGls
ZXJfc3RhdGljLCAkMSk9Jy1zdGF0aWMnCi0KLSAgICBjYXNlICRob3N0X29zIGluCi0gICAgYWl4
KikKLSAgICAgICMgQWxsIEFJWCBjb2RlIGlzIFBJQy4KLSAgICAgIGlmIHRlc3QgIiRob3N0X2Nw
dSIgPSBpYTY0OyB0aGVuCi0JIyBBSVggNSBub3cgc3VwcG9ydHMgSUE2NCBwcm9jZXNzb3IKLQlf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1Cc3RhdGljJwotICAg
ICAgZmkKLSAgICAgIDs7Ci0gICAgYW1pZ2FvcyopCi0gICAgICAjIEZJWE1FOiB3ZSBuZWVkIGF0
IGxlYXN0IDY4MDIwIGNvZGUgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmllcywgYnV0Ci0gICAgICAj
IGFkZGluZyB0aGUgYC1tNjgwMjAnIGZsYWcgdG8gR0NDIHByZXZlbnRzIGJ1aWxkaW5nIGFueXRo
aW5nIGJldHRlciwKLSAgICAgICMgbGlrZSBgLW02ODA0MCcuCi0gICAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1tNjgwMjAgLXJlc2lkZW50MzIgLW1hbHdheXMt
cmVzdG9yZS1hNCcKLSAgICAgIDs7Ci0gICAgYmVvcyogfCBpcml4NSogfCBpcml4NiogfCBub25z
dG9wdXgqIHwgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQotICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1
bHQgZm9yIHRoZXNlIE9TZXMuCi0gICAgICA7OwotICAgIGN5Z3dpbiogfCBtaW5ndyogfCBvczIq
KQotICAgICAgIyBUaGlzIGhhY2sgaXMgc28gdGhhdCB0aGUgc291cmNlIGZpbGUgY2FuIHRlbGwg
d2hldGhlciBpdCBpcyBiZWluZwotICAgICAgIyBidWlsdCBmb3IgaW5jbHVzaW9uIGluIGEgZGxs
IChhbmQgc2hvdWxkIGV4cG9ydCBzeW1ib2xzIGZvciBleGFtcGxlKS4KLSAgICAgIF9MVF9BQ19U
QUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLURETExfRVhQT1JUJwotICAgICAgOzsK
LSAgICBkYXJ3aW4qIHwgcmhhcHNvZHkqKQotICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1bHQgb24g
dGhpcyBwbGF0Zm9ybQotICAgICAgIyBDb21tb24gc3ltYm9scyBub3QgYWxsb3dlZCBpbiBNSF9E
WUxJQiBmaWxlcwotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEp
PSctZm5vLWNvbW1vbicKLSAgICAgIDs7Ci0gICAgKmRqZ3BwKikKLSAgICAgICMgREpHUFAgZG9l
cyBub3Qgc3VwcG9ydCBzaGFyZWQgbGlicmFyaWVzIGF0IGFsbAotICAgICAgX0xUX0FDX1RBR1ZB
UihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPQotICAgICAgOzsKLSAgICBzeXN2NCpNUCopCi0g
ICAgICBpZiB0ZXN0IC1kIC91c3IvbmVjOyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3BpYywgJDEpPS1LY29uZm9ybV9waWMKLSAgICAgIGZpCi0gICAgICA7OwotICAgIGhw
dXgqKQotICAgICAgIyBQSUMgaXMgdGhlIGRlZmF1bHQgZm9yIElBNjQgSFAtVVgsIGJ1dCBub3Qg
Zm9yIFBBIEhQLVVYLgotICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAhPSBpYTY0OyB0aGVuCi0J
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctZlBJQycKLSAgICAgIGZp
Ci0gICAgICA7OwotICAgICopCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJf
cGljLCAkMSk9Jy1mUElDJwotICAgICAgOzsKLSAgICBlc2FjCi0gIGVsc2UKLSAgICBjYXNlICRo
b3N0X29zIGluCi0gICAgICBhaXg0KiB8IGFpeDUqKQotCSMgQWxsIEFJWCBjb2RlIGlzIFBJQy4K
LQlpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhlbgotCSAgIyBBSVggNSBub3cgc3VwcG9y
dHMgSUE2NCBwcm9jZXNzb3IKLQkgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT0nLUJzdGF0aWMnCi0JZWxzZQotCSAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBp
bGVyX3N0YXRpYywgJDEpPSctYm5zbyAtYkk6L2xpYi9zeXNjYWxscy5leHAnCi0JZmkKLQk7Owot
ICAgICAgY2hvcnVzKikKLQljYXNlICRjY19iYXNlbmFtZSBpbgotCWN4Y2g2OCkKLQkgICMgR3Jl
ZW4gSGlsbHMgQysrIENvbXBpbGVyCi0JICAjIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxl
cl9zdGF0aWMsICQxKT0iLS1ub19hdXRvX2luc3RhbnRpYXRpb24gLXUgX19tYWluIC11IF9fcHJl
bWFpbiAtdSBfYWJvcnQgLXIgJENPT0xfRElSL2xpYi9saWJPcmIuYSAkTVZNRV9ESVIvbGliL0ND
L2xpYkMuYSAkTVZNRV9ESVIvbGliL2NsYXNzaXgvbGliY3gucy5hIgotCSAgOzsKLQllc2FjCi0J
OzsKLSAgICAgIGRndXgqKQotCWNhc2UgJGNjX2Jhc2VuYW1lIGluCi0JICBlYysrKQotCSAgICBf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1LUElDJwotCSAgICA7Owot
CSAgZ2hjeCkKLQkgICAgIyBHcmVlbiBIaWxscyBDKysgQ29tcGlsZXIKLQkgICAgX0xUX0FDX1RB
R1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctcGljJwotCSAgICA7OwotCSAgKikKLQkg
ICAgOzsKLQllc2FjCi0JOzsKLSAgICAgIGZyZWVic2QqKQotCSMgRnJlZUJTRCB1c2VzIEdOVSBD
KysKLQk7OwotICAgICAgaHB1eDkqIHwgaHB1eDEwKiB8IGhwdXgxMSopCi0JY2FzZSAkY2NfYmFz
ZW5hbWUgaW4KLQkgIENDKQotCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfd2ws
ICQxKT0nLVdsLCcKLQkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywg
JDEpPSIke2FjX2N2X3Byb2dfY2Nfd2x9LWEgJHthY19jdl9wcm9nX2NjX3dsfWFyY2hpdmUiCi0J
ICAgIGlmIHRlc3QgIiRob3N0X2NwdSIgIT0gaWE2NDsgdGhlbgotCSAgICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nK1onCi0JICAgIGZpCi0JICAgIDs7Ci0JICBh
Q0MpCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwot
CSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9IiR7YWNfY3Zf
cHJvZ19jY193bH0tYSAke2FjX2N2X3Byb2dfY2Nfd2x9YXJjaGl2ZSIKLQkgICAgaWYgdGVzdCAi
JGhvc3RfY3B1IiAhPSBpYTY0OyB0aGVuCi0JICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2Nv
bXBpbGVyX3BpYywgJDEpPScrWicKLQkgICAgZmkKLQkgICAgOzsKLQkgICopCi0JICAgIDs7Ci0J
ZXNhYwotCTs7Ci0gICAgICBpcml4NSogfCBpcml4NiogfCBub25zdG9wdXgqKQotCWNhc2UgJGNj
X2Jhc2VuYW1lIGluCi0JICBDQykKLQkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X3dsLCAkMSk9Jy1XbCwnCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT0nLW5vbl9zaGFyZWQnCi0JICAgICMgQ0MgcGljIGZsYWcgLUtQSUMgaXMgdGhlIGRl
ZmF1bHQuCi0JICAgIDs7Ci0JICAqKQotCSAgICA7OwotCWVzYWMKLQk7OwotICAgICAgbGludXgq
KQotCWNhc2UgJGNjX2Jhc2VuYW1lIGluCi0JICBLQ0MpCi0JICAgICMgS0FJIEMrKyBDb21waWxl
cgotCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfd2wsICQxKT0nLS1iYWNrZW5k
IC1XbCwnCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLWZQ
SUMnCi0JICAgIDs7Ci0JICBjeHgpCi0JICAgICMgQ29tcGFxIEMrKwotCSAgICAjIE1ha2Ugc3Vy
ZSB0aGUgUElDIGZsYWcgaXMgZW1wdHkuICBJdCBhcHBlYXJzIHRoYXQgYWxsIEFscGhhCi0JICAg
ICMgTGludXggYW5kIENvbXBhcSBUcnU2NCBVbml4IG9iamVjdHMgYXJlIFBJQy4KLQkgICAgX0xU
X0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPQotCSAgICBfTFRfQUNfVEFHVkFS
KGx0X3Byb2dfY29tcGlsZXJfc3RhdGljLCAkMSk9Jy1ub25fc2hhcmVkJwotCSAgICA7OwotCSAg
KikKLQkgICAgOzsKLQllc2FjCi0JOzsKLSAgICAgIGx5bnhvcyopCi0JOzsKLSAgICAgIG04OGsq
KQotCTs7Ci0gICAgICBtdnMqKQotCWNhc2UgJGNjX2Jhc2VuYW1lIGluCi0JICBjeHgpCi0JICAg
IF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLVcgYyxleHBvcnRhbGwn
Ci0JICAgIDs7Ci0JICAqKQotCSAgICA7OwotCWVzYWMKLQk7OwotICAgICAgbmV0YnNkKikKLQk7
OwotICAgICAgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQotCWNhc2UgJGNjX2Jhc2VuYW1lIGluCi0J
ICBLQ0MpCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctLWJh
Y2tlbmQgLVdsLCcKLQkgICAgOzsKLQkgIFJDQykKLQkgICAgIyBSYXRpb25hbCBDKysgMi40LjEK
LQkgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctcGljJwotCSAg
ICA7OwotCSAgY3h4KQotCSAgICAjIERpZ2l0YWwvQ29tcGFxIEMrKwotCSAgICBfTFRfQUNfVEFH
VkFSKGx0X3Byb2dfY29tcGlsZXJfd2wsICQxKT0nLVdsLCcKLQkgICAgIyBNYWtlIHN1cmUgdGhl
IFBJQyBmbGFnIGlzIGVtcHR5LiAgSXQgYXBwZWFycyB0aGF0IGFsbCBBbHBoYQotCSAgICAjIExp
bnV4IGFuZCBDb21wYXEgVHJ1NjQgVW5peCBvYmplY3RzIGFyZSBQSUMuCi0JICAgIF9MVF9BQ19U
QUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0KLQkgICAgX0xUX0FDX1RBR1ZBUihsdF9w
cm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctbm9uX3NoYXJlZCcKLQkgICAgOzsKLQkgICopCi0J
ICAgIDs7Ci0JZXNhYwotCTs7Ci0gICAgICBwc29zKikKLQk7OwotICAgICAgc2NvKikKLQljYXNl
ICRjY19iYXNlbmFtZSBpbgotCSAgQ0MpCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21w
aWxlcl9waWMsICQxKT0nLWZQSUMnCi0JICAgIDs7Ci0JICAqKQotCSAgICA7OwotCWVzYWMKLQk7
OwotICAgICAgc29sYXJpcyopCi0JY2FzZSAkY2NfYmFzZW5hbWUgaW4KLQkgIENDKQotCSAgICAj
IFN1biBDKysgNC4yLCA1LnggYW5kIENlbnRlcmxpbmUgQysrCi0JICAgIF9MVF9BQ19UQUdWQVIo
bHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLUtQSUMnCi0JICAgIF9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCi0JICAgIF9MVF9BQ19UQUdWQVIo
bHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctUW9wdGlvbiBsZCAnCi0JICAgIDs7Ci0JICBnY3gp
Ci0JICAgICMgR3JlZW4gSGlsbHMgQysrIENvbXBpbGVyCi0JICAgIF9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9waWMsICQxKT0nLVBJQycKLQkgICAgOzsKLQkgICopCi0JICAgIDs7Ci0J
ZXNhYwotCTs7Ci0gICAgICBzdW5vczQqKQotCWNhc2UgJGNjX2Jhc2VuYW1lIGluCi0JICBDQykK
LQkgICAgIyBTdW4gQysrIDQueAotCSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJf
cGljLCAkMSk9Jy1waWMnCi0JICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT0nLUJzdGF0aWMnCi0JICAgIDs7Ci0JICBsY2MpCi0JICAgICMgTHVjaWQKLQkgICAg
X0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctcGljJwotCSAgICA7Owot
CSAgKikKLQkgICAgOzsKLQllc2FjCi0JOzsKLSAgICAgIHRhbmRlbSopCi0JY2FzZSAkY2NfYmFz
ZW5hbWUgaW4KLQkgIE5DQykKLQkgICAgIyBOb25TdG9wLVVYIE5DQyAzLjIwCi0JICAgIF9MVF9B
Q19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLUtQSUMnCi0JICAgIDs7Ci0JICAq
KQotCSAgICA7OwotCWVzYWMKLQk7OwotICAgICAgdW5peHdhcmUqKQotCTs7Ci0gICAgICB2eHdv
cmtzKikKLQk7OwotICAgICAgKikKLQlfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfY2Fu
X2J1aWxkX3NoYXJlZCwgJDEpPW5vCi0JOzsKLSAgICBlc2FjCi0gIGZpCi1dLAotWwotICBpZiB0
ZXN0ICIkR0NDIiA9IHllczsgdGhlbgotICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxl
cl93bCwgJDEpPSctV2wsJwotICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0
aWMsICQxKT0nLXN0YXRpYycKLQotICAgIGNhc2UgJGhvc3Rfb3MgaW4KLSAgICAgIGFpeCopCi0g
ICAgICAjIEFsbCBBSVggY29kZSBpcyBQSUMuCi0gICAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiID0g
aWE2NDsgdGhlbgotCSMgQUlYIDUgbm93IHN1cHBvcnRzIElBNjQgcHJvY2Vzc29yCi0JX0xUX0FD
X1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKLSAgICAgIGZp
Ci0gICAgICA7OwotCi0gICAgYW1pZ2FvcyopCi0gICAgICAjIEZJWE1FOiB3ZSBuZWVkIGF0IGxl
YXN0IDY4MDIwIGNvZGUgdG8gYnVpbGQgc2hhcmVkIGxpYnJhcmllcywgYnV0Ci0gICAgICAjIGFk
ZGluZyB0aGUgYC1tNjgwMjAnIGZsYWcgdG8gR0NDIHByZXZlbnRzIGJ1aWxkaW5nIGFueXRoaW5n
IGJldHRlciwKLSAgICAgICMgbGlrZSBgLW02ODA0MCcuCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0
X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1tNjgwMjAgLXJlc2lkZW50MzIgLW1hbHdheXMtcmVz
dG9yZS1hNCcKLSAgICAgIDs7Ci0KLSAgICBiZW9zKiB8IGlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0
b3B1eCogfCBvc2YzKiB8IG9zZjQqIHwgb3NmNSopCi0gICAgICAjIFBJQyBpcyB0aGUgZGVmYXVs
dCBmb3IgdGhlc2UgT1Nlcy4KLSAgICAgIDs7Ci0KLSAgICBjeWd3aW4qIHwgbWluZ3cqIHwgcHcz
MiogfCBvczIqKQotICAgICAgIyBUaGlzIGhhY2sgaXMgc28gdGhhdCB0aGUgc291cmNlIGZpbGUg
Y2FuIHRlbGwgd2hldGhlciBpdCBpcyBiZWluZwotICAgICAgIyBidWlsdCBmb3IgaW5jbHVzaW9u
IGluIGEgZGxsIChhbmQgc2hvdWxkIGV4cG9ydCBzeW1ib2xzIGZvciBleGFtcGxlKS4KLSAgICAg
IF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLURETExfRVhQT1JUJwot
ICAgICAgOzsKLQotICAgIGRhcndpbiogfCByaGFwc29keSopCi0gICAgICAjIFBJQyBpcyB0aGUg
ZGVmYXVsdCBvbiB0aGlzIHBsYXRmb3JtCi0gICAgICAjIENvbW1vbiBzeW1ib2xzIG5vdCBhbGxv
d2VkIGluIE1IX0RZTElCIGZpbGVzCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGls
ZXJfcGljLCAkMSk9Jy1mbm8tY29tbW9uJwotICAgICAgOzsKLQotICAgIG1zZG9zZGpncHAqKQot
ICAgICAgIyBKdXN0IGJlY2F1c2Ugd2UgdXNlIEdDQyBkb2Vzbid0IG1lYW4gd2Ugc3VkZGVubHkg
Z2V0IHNoYXJlZCBsaWJyYXJpZXMKLSAgICAgICMgb24gc3lzdGVtcyB0aGF0IGRvbid0IHN1cHBv
cnQgdGhlbS4KLSAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9jYW5fYnVpbGRf
c2hhcmVkLCAkMSk9bm8KLSAgICAgIGVuYWJsZV9zaGFyZWQ9bm8KLSAgICAgIDs7Ci0KLSAgICBz
eXN2NCpNUCopCi0gICAgICBpZiB0ZXN0IC1kIC91c3IvbmVjOyB0aGVuCi0JX0xUX0FDX1RBR1ZB
UihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPS1LY29uZm9ybV9waWMKLSAgICAgIGZpCi0gICAg
ICA7OwotCi0gICAgaHB1eCopCi0gICAgICAjIFBJQyBpcyB0aGUgZGVmYXVsdCBmb3IgSUE2NCBI
UC1VWCwgYnV0IG5vdCBmb3IgUEEgSFAtVVguCi0gICAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiICE9
IGlhNjQ7IHRoZW4KLQlfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1m
UElDJwotICAgICAgZmkKLSAgICAgIDs7Ci0KLSAgICAqKQotICAgICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctZlBJQycKLSAgICAgIDs7Ci0gICAgZXNhYwotICBl
bHNlCi0gICAgIyBQT1JUTUUgQ2hlY2sgZm9yIGZsYWcgdG8gcGFzcyBsaW5rZXIgZmxhZ3MgdGhy
b3VnaCB0aGUgc3lzdGVtIGNvbXBpbGVyLgotICAgIGNhc2UgJGhvc3Rfb3MgaW4KLSAgICBhaXgq
KQotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCi0g
ICAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhlbgotCSMgQUlYIDUgbm93IHN1cHBv
cnRzIElBNjQgcHJvY2Vzc29yCi0JX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRp
YywgJDEpPSctQnN0YXRpYycKLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfc3RhdGljLCAkMSk9Jy1ibnNvIC1iSTovbGliL3N5c2NhbGxzLmV4cCcKLSAgICAgIGZp
Ci0gICAgICA7OwotCi0gICAgY3lnd2luKiB8IG1pbmd3KiB8IHB3MzIqIHwgb3MyKikKLSAgICAg
ICMgVGhpcyBoYWNrIGlzIHNvIHRoYXQgdGhlIHNvdXJjZSBmaWxlIGNhbiB0ZWxsIHdoZXRoZXIg
aXQgaXMgYmVpbmcKLSAgICAgICMgYnVpbHQgZm9yIGluY2x1c2lvbiBpbiBhIGRsbCAoYW5kIHNo
b3VsZCBleHBvcnQgc3ltYm9scyBmb3IgZXhhbXBsZSkuCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0
X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1ERExMX0VYUE9SVCcKLSAgICAgIDs7Ci0KLSAgICBo
cHV4OSogfCBocHV4MTAqIHwgaHB1eDExKikKLSAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19j
b21waWxlcl93bCwgJDEpPSctV2wsJwotICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAhPSBpYTY0
OyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPScrWicKLSAg
ICAgIGZpCi0gICAgICAjIElzIHRoZXJlIGEgYmV0dGVyIGx0X3Byb2dfY29tcGlsZXJfc3RhdGlj
IHRoYXQgd29ya3Mgd2l0aCB0aGUgYnVuZGxlZCBDQz8KLSAgICAgIF9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nJHt3bH0tYSAke3dsfWFyY2hpdmUnCi0gICAgICA7
OwotCi0gICAgaXJpeDUqIHwgaXJpeDYqIHwgbm9uc3RvcHV4KikKLSAgICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpPSctV2wsJwotICAgICAgIyBQSUMgKHdpdGggLUtQ
SUMpIGlzIHRoZSBkZWZhdWx0LgotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVy
X3N0YXRpYywgJDEpPSctbm9uX3NoYXJlZCcKLSAgICAgIDs7Ci0KLSAgICBuZXdzb3M2KQotICAg
ICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctS1BJQycKLSAgICAg
IF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCi0g
ICAgICA7OwotCi0gICAgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQotICAgICAgX0xUX0FDX1RBR1ZB
UihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1XbCwnCi0gICAgICAjIEFsbCBPU0YvMSBjb2Rl
IGlzIFBJQy4KLSAgICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQx
KT0nLW5vbl9zaGFyZWQnCi0gICAgICA7OwotCi0gICAgc2NvMy4ydjUqKQotICAgICAgX0xUX0FD
X1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpPSctS3BpYycKLSAgICAgIF9MVF9BQ19U
QUdWQVIobHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLWRuJwotICAgICAgOzsKLQotICAg
IHNvbGFyaXMqKQotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9
Jy1XbCwnCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Jy1L
UElDJwotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywgJDEpPSct
QnN0YXRpYycKLSAgICAgIDs7Ci0KLSAgICBzdW5vczQqKQotICAgICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX3dsLCAkMSk9Jy1Rb3B0aW9uIGxkICcKLSAgICAgIF9MVF9BQ19UQUdW
QVIobHRfcHJvZ19jb21waWxlcl9waWMsICQxKT0nLVBJQycKLSAgICAgIF9MVF9BQ19UQUdWQVIo
bHRfcHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCi0gICAgICA7OwotCi0gICAg
c3lzdjQgfCBzeXN2NC4ydXcyKiB8IHN5c3Y0LjMqIHwgc3lzdjUqKQotICAgICAgaWYgdGVzdCAi
eCRob3N0X3ZlbmRvciIgPSB4c25pOyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBp
bGVyX3dsLCAkMSk9Jy1MRCcKLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfd2wsICQxKT0nLVdsLCcKLSAgICAgIGZpCi0gICAgICBfTFRfQUNfVEFHVkFSKGx0X3By
b2dfY29tcGlsZXJfcGljLCAkMSk9Jy1LUElDJwotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9n
X2NvbXBpbGVyX3N0YXRpYywgJDEpPSctQnN0YXRpYycKLSAgICAgIDs7Ci0KLSAgICBzeXN2NCpN
UCopCi0gICAgICBpZiB0ZXN0IC1kIC91c3IvbmVjIDt0aGVuCi0JX0xUX0FDX1RBR1ZBUihsdF9w
cm9nX2NvbXBpbGVyX3BpYywgJDEpPSctS2NvbmZvcm1fcGljJwotCV9MVF9BQ19UQUdWQVIobHRf
cHJvZ19jb21waWxlcl9zdGF0aWMsICQxKT0nLUJzdGF0aWMnCi0gICAgICBmaQotICAgICAgOzsK
LQotICAgIHV0czQqKQotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywg
JDEpPSctcGljJwotICAgICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3N0YXRpYywg
JDEpPSctQnN0YXRpYycKLSAgICAgIDs7Ci0KLSAgICAqKQotICAgICAgX0xUX0FDX1RBR1ZBUihs
dF9wcm9nX2NvbXBpbGVyX2Nhbl9idWlsZF9zaGFyZWQsICQxKT1ubwotICAgICAgOzsKLSAgICBl
c2FjCi0gIGZpCi1dKQotQUNfTVNHX1JFU1VMVChbJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21w
aWxlcl9waWMsICQxKV0pCi0KLSMKLSMgQ2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBQSUMgZmxhZyBh
Y3R1YWxseSB3b3Jrcy4KLSMKLWlmIHRlc3QgLW4gIiRfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29t
cGlsZXJfcGljLCAkMSkiOyB0aGVuCi0gIEFDX0xJQlRPT0xfQ09NUElMRVJfT1BUSU9OKFtpZiAk
Y29tcGlsZXIgUElDIGZsYWcgJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQx
KSB3b3Jrc10sCi0gICAgX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpY193b3Jrcywg
JDEpLAotICAgIFskX0xUX0FDX1RBR1ZBUihsdF9wcm9nX2NvbXBpbGVyX3BpYywgJDEpIC1EUElD
XSwgW10sCi0gICAgW2Nhc2UgJF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9waWMsICQx
KSBpbgotICAgICAiIiB8ICIgIiopIDs7Ci0gICAgICopIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19j
b21waWxlcl9waWMsICQxKT0iICRfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAk
MSkiIDs7Ci0gICAgIGVzYWNdLAotICAgIFtfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJf
cGljLCAkMSk9Ci0gICAgIF9MVF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl9jYW5fYnVpbGRf
c2hhcmVkLCAkMSk9bm9dKQotZmkKLWNhc2UgIiRob3N0X29zIiBpbgotICAjIEZvciBwbGF0Zm9y
bXMgd2hpY2ggZG8gbm90IHN1cHBvcnQgUElDLCAtRFBJQyBpcyBtZWFuaW5nbGVzczoKLSAgKmRq
Z3BwKikKLSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9Ci0gICAg
OzsKLSAgKikKLSAgICBfTFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSk9IiRf
TFRfQUNfVEFHVkFSKGx0X3Byb2dfY29tcGlsZXJfcGljLCAkMSkgLURQSUMiCi0gICAgOzsKLWVz
YWMKLV0pCi0KLQotIyBBQ19MSUJUT09MX1BST0dfTERfU0hMSUJTKFtUQUdOQU1FXSkKLSMgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0jIFNlZSBpZiB0aGUgbGlua2VyIHN1
cHBvcnRzIGJ1aWxkaW5nIHNoYXJlZCBsaWJyYXJpZXMuCi1BQ19ERUZVTihbQUNfTElCVE9PTF9Q
Uk9HX0xEX1NITElCU10sCi1bQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRoZSAkY29tcGlsZXIg
bGlua2VyICgkTEQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXNdKQotaWZlbHNlKFskMV0sW0NY
WF0sWwotICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9zeW1ib2xzX2NtZHMsICQxKT0nJE5NICRsaWJv
YmpzICRjb252ZW5pZW5jZSB8ICRnbG9iYWxfc3ltYm9sX3BpcGUgfCBzZWQgJ1wnJ3MvLiogLy8n
XCcnIHwgc29ydCB8IHVuaXEgPiAkZXhwb3J0X3N5bWJvbHMnCi0gIGNhc2UgJGhvc3Rfb3MgaW4K
LSAgYWl4NCogfCBhaXg1KikKLSAgICAjIElmIHdlJ3JlIHVzaW5nIEdOVSBubSwgdGhlbiB3ZSBk
b24ndCB3YW50IHRoZSAiLUMiIG9wdGlvbi4KLSAgICAjIC1DIG1lYW5zIGRlbWFuZ2xlIHRvIEFJ
WCBubSwgYnV0IG1lYW5zIGRvbid0IGRlbWFuZ2xlIHdpdGggR05VIG5tCi0gICAgaWYgJE5NIC1W
IDI+JjEgfCBlZ3JlcCAnKEdOVSknID4gL2Rldi9udWxsOyB0aGVuCi0gICAgICBfTFRfQUNfVEFH
VkFSKGV4cG9ydF9zeW1ib2xzX2NtZHMsICQxKT0nJE5NIC1CcGcgJGxpYm9ianMgJGNvbnZlbmll
bmNlIHwgYXdrICdcJyd7IGlmICgoKFxbJF0yID09ICJUIikgfHwgKFxbJF0yID09ICJEIikgfHwg
KFxbJF0yID09ICJCIikpICYmIChbc3Vic3RyXShcWyRdMywxLDEpICE9ICIuIikpIHsgcHJpbnQg
XFskXTMgfSB9J1wnJyB8IHNvcnQgLXUgPiAkZXhwb3J0X3N5bWJvbHMnCi0gICAgZWxzZQotICAg
ICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9JyROTSAtQkNwZyAkbGli
b2JqcyAkY29udmVuaWVuY2UgfCBhd2sgJ1wnJ3sgaWYgKCgoXFskXTIgPT0gIlQiKSB8fCAoXFsk
XTIgPT0gIkQiKSB8fCAoXFskXTIgPT0gIkIiKSkgJiYgKFtzdWJzdHJdKFxbJF0zLDEsMSkgIT0g
Ii4iKSkgeyBwcmludCBcWyRdMyB9IH0nXCcnIHwgc29ydCAtdSA+ICRleHBvcnRfc3ltYm9scycK
LSAgICBmaQotICAgIDs7Ci0gIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKikKLSAgICBfTFRfQUNf
VEFHVkFSKGV4cG9ydF9zeW1ib2xzX2NtZHMsICQxKT0iJGx0ZGxsX2NtZHMiCi0gIDs7Ci0gICop
Ci0gICAgX0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9JyROTSAkbGlib2Jq
cyAkY29udmVuaWVuY2UgfCAkZ2xvYmFsX3N5bWJvbF9waXBlIHwgc2VkICdcJydzLy4qIC8vJ1wn
JyB8IHNvcnQgfCB1bmlxID4gJGV4cG9ydF9zeW1ib2xzJwotICA7OwotICBlc2FjCi1dLFsKLSAg
cnVucGF0aF92YXI9Ci0gIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0K
LQotICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPQotICBfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kc19uZWVkX2xjLCAkMSk9Ci0gIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1f
Y21kcywgJDEpPQotICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX0Zyb21fbmV3X2NtZHMsICQx
KT0KLSAgX0xUX0FDX1RBR1ZBUihvbGRfYXJjaGl2ZV9mcm9tX2V4cHN5bXNfY21kcywgJDEpPQot
ICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPQotICBfTFRfQUNf
VEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Ci0gIF9MVF9BQ19UQUdWQVIodGhy
ZWFkX3NhZmVfZmxhZ19zcGVjLCAkMSk9Ci0gIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X2ZsYWdfc3BlYywgJDEpPQotICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0
b3IsICQxKT0KLSAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT1ubwotICBfTFRf
QUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKT1ubwotICBfTFRfQUNfVEFHVkFSKGhhcmRj
b2RlX3NobGlicGF0aF92YXIsICQxKT11bnN1cHBvcnRlZAotICBfTFRfQUNfVEFHVkFSKGxpbmtf
YWxsX2RlcGxpYnMsICQxKT11bmtub3duCi0gIF9MVF9BQ19UQUdWQVIoYWx3YXlzX2V4cG9ydF9z
eW1ib2xzLCAkMSk9bm8KLSAgX0xUX0FDX1RBR1ZBUihleHBvcnRfc3ltYm9sc19jbWRzLCAkMSk9
JyROTSAkbGlib2JqcyAkY29udmVuaWVuY2UgfCAkZ2xvYmFsX3N5bWJvbF9waXBlIHwgc2VkICdc
JydzLy4qIC8vJ1wnJyB8IHNvcnQgfCB1bmlxID4gJGV4cG9ydF9zeW1ib2xzJwotICAjIGluY2x1
ZGVfZXhwc3ltcyBzaG91bGQgYmUgYSBsaXN0IG9mIHNwYWNlLXNlcGFyYXRlZCBzeW1ib2xzIHRv
IGJlICphbHdheXMqCi0gICMgaW5jbHVkZWQgaW4gdGhlIHN5bWJvbCBsaXN0Ci0gIF9MVF9BQ19U
QUdWQVIoaW5jbHVkZV9leHBzeW1zLCAkMSk9Ci0gICMgZXhjbHVkZV9leHBzeW1zIGNhbiBiZSBh
biBlZ3JlcCByZWd1bGFyIGV4cHJlc3Npb24gb2Ygc3ltYm9scyB0byBleGNsdWRlCi0gICMgaXQg
d2lsbCBiZSB3cmFwcGVkIGJ5IGAgKCcgYW5kIGApJCcsIHNvIG9uZSBtdXN0IG5vdCBtYXRjaCBi
ZWdpbm5pbmcgb3IKLSAgIyBlbmQgb2YgbGluZS4gIEV4YW1wbGU6IGBhfGJjfC4qZC4qJyB3aWxs
IGV4Y2x1ZGUgdGhlIHN5bWJvbHMgYGEnIGFuZCBgYmMnLAotICAjIGFzIHdlbGwgYXMgYW55IHN5
bWJvbCB0aGF0IGNvbnRhaW5zIGBkJy4KLSAgX0xUX0FDX1RBR1ZBUihleGNsdWRlX2V4cHN5bXMs
ICQxKT0iX0dMT0JBTF9PRkZTRVRfVEFCTEVfIgotICAjIEFsdGhvdWdoIF9HTE9CQUxfT0ZGU0VU
X1RBQkxFXyBpcyBhIHZhbGlkIHN5bWJvbCBDIG5hbWUsIG1vc3QgYS5vdXQKLSAgIyBwbGF0Zm9y
bXMgKGFiKXVzZSBpdCBpbiBQSUMgY29kZSwgYnV0IHRoZWlyIGxpbmtlcnMgZ2V0IGNvbmZ1c2Vk
IGlmCi0gICMgdGhlIHN5bWJvbCBpcyBleHBsaWNpdGx5IHJlZmVyZW5jZWQuICBTaW5jZSBwb3J0
YWJsZSBjb2RlIGNhbm5vdAotICAjIHJlbHkgb24gdGhpcyBzeW1ib2wgbmFtZSwgaXQncyBwcm9i
YWJseSBmaW5lIHRvIG5ldmVyIGluY2x1ZGUgaXQgaW4KLSAgIyBwcmVsb2FkZWQgc3ltYm9sIHRh
Ymxlcy4KLSAgZXh0cmFjdF9leHBzeW1zX2NtZHM9Ci0KLSAgY2FzZSAkaG9zdF9vcyBpbgotICBj
eWd3aW4qIHwgbWluZ3cqIHwgcHczMiopCi0gICAgIyBGSVhNRTogdGhlIE1TVkMrKyBwb3J0IGhh
c24ndCBiZWVuIHRlc3RlZCBpbiBhIGxvb29vbmcgdGltZQotICAgICMgV2hlbiBub3QgdXNpbmcg
Z2NjLCB3ZSBjdXJyZW50bHkgYXNzdW1lIHRoYXQgd2UgYXJlIHVzaW5nCi0gICAgIyBNaWNyb3Nv
ZnQgVmlzdWFsIEMrKy4KLSAgICBpZiB0ZXN0ICIkR0NDIiAhPSB5ZXM7IHRoZW4KLSAgICAgIHdp
dGhfZ251X2xkPW5vCi0gICAgZmkKLSAgICA7OwotICBvcGVuYnNkKikKLSAgICB3aXRoX2dudV9s
ZD1ubwotICAgIDs7Ci0gIGVzYWMKLQotICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPXll
cwotICBpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVzOyB0aGVuCi0gICAgIyBJZiBhcmNoaXZl
X2NtZHMgcnVucyBMRCwgbm90IENDLCB3bGFyYyBzaG91bGQgYmUgZW1wdHkKLSAgICB3bGFyYz0n
JHt3bH0nCi0KLSAgICAjIFNlZSBpZiBHTlUgbGQgc3VwcG9ydHMgc2hhcmVkIGxpYnJhcmllcy4K
LSAgICBjYXNlICRob3N0X29zIGluCi0gICAgYWl4MyogfCBhaXg0KiB8IGFpeDUqKQotICAgICAg
IyBPbiBBSVgvUFBDLCB0aGUgR05VIGxpbmtlciBpcyB2ZXJ5IGJyb2tlbgotICAgICAgaWYgdGVz
dCAiJGhvc3RfY3B1IiAhPSBpYTY0OyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQx
KT1ubwotCWNhdCA8PEVPRiAxPiYyCi0KLSoqKiBXYXJuaW5nOiB0aGUgR05VIGxpbmtlciwgYXQg
bGVhc3QgdXAgdG8gcmVsZWFzZSAyLjkuMSwgaXMgcmVwb3J0ZWQKLSoqKiB0byBiZSB1bmFibGUg
dG8gcmVsaWFibHkgY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMgb24gQUlYLgotKioqIFRoZXJlZm9y
ZSwgbGlidG9vbCBpcyBkaXNhYmxpbmcgc2hhcmVkIGxpYnJhcmllcyBzdXBwb3J0LiAgSWYgeW91
Ci0qKiogcmVhbGx5IGNhcmUgZm9yIHNoYXJlZCBsaWJyYXJpZXMsIHlvdSBtYXkgd2FudCB0byBt
b2RpZnkgeW91ciBQQVRICi0qKiogc28gdGhhdCBhIG5vbi1HTlUgbGlua2VyIGlzIGZvdW5kLCBh
bmQgdGhlbiByZXN0YXJ0LgotCi1FT0YKLSAgICAgIGZpCi0gICAgICA7OwotCi0gICAgYW1pZ2Fv
cyopCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckcm0gJG91dHB1dF9v
YmpkaXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBOQU1FICRsaWJuYW1lIiA+ICRv
dXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5LmRhdGF+JGVjaG8gIiNkZWZpbmUgTElCUkFSWV9JRCAx
IiA+PiAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRhfiRlY2hvICIjZGVmaW5lIFZFUlNJ
T04gJG1ham9yIiA+PiAkb3V0cHV0X29iamRpci9hMml4bGlicmFyeS5kYXRhfiRlY2hvICIjZGVm
aW5lIFJFVklTSU9OICRyZXZpc2lvbiIgPj4gJG91dHB1dF9vYmpkaXIvYTJpeGxpYnJhcnkuZGF0
YX4kQVIgJEFSX0ZMQUdTICRsaWIgJGxpYm9ianN+JFJBTkxJQiAkbGlifihjZCAkb3V0cHV0X29i
amRpciAmJiBhMml4bGlicmFyeSAtMzIpJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9s
aWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1MJGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfbWludXNfTCwgJDEpPXllcwotCi0gICAgICAjIFNhbXVlbCBBLiBGYWx2byBJSSA8a2M1
dGphQGRvbHBoaW4ub3BlbnByb2plY3RzLm5ldD4gcmVwb3J0cwotICAgICAgIyB0aGF0IHRoZSBz
ZW1hbnRpY3Mgb2YgZHluYW1pYyBsaWJyYXJpZXMgb24gQW1pZ2FPUywgYXQgbGVhc3QgdXAKLSAg
ICAgICMgdG8gdmVyc2lvbiA0LCBpcyB0byBzaGFyZSBkYXRhIGFtb25nIG11bHRpcGxlIHByb2dy
YW1zIGxpbmtlZAotICAgICAgIyB3aXRoIHRoZSBzYW1lIGR5bmFtaWMgbGlicmFyeS4gIFNpbmNl
IHRoaXMgZG9lc24ndCBtYXRjaCB0aGUKLSAgICAgICMgYmVoYXZpb3Igb2Ygc2hhcmVkIGxpYnJh
cmllcyBvbiBvdGhlciBwbGF0Zm9ybXMsIHdlIGNhbid0IHVzZQotICAgICAgIyB0aGVtLgotICAg
ICAgX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotICAgICAgOzsKLQotICAgIGJlb3Mq
KQotICAgICAgaWYgJExEIC0taGVscCAyPiYxIHwgZWdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6
LiogZWxmJyA+IC9kZXYvbnVsbDsgdGhlbgotCV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVk
X2ZsYWcsICQxKT11bnN1cHBvcnRlZAotCSMgSm9zZXBoIEJlY2tlbmJhY2ggPGpyYjNAYmVzdC5j
b20+IHNheXMgc29tZSByZWxlYXNlcyBvZiBnY2MKLQkjIHN1cHBvcnQgLS11bmRlZmluZWQuICBU
aGlzIGRlc2VydmVzIHNvbWUgaW52ZXN0aWdhdGlvbi4gIEZJWE1FCi0JX0xUX0FDX1RBR1ZBUihh
cmNoaXZlX2NtZHMsICQxKT0nJENDIC1ub3N0YXJ0ICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxl
cl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAtbyAkbGliJwotICAgICAgZWxzZQotCV9M
VF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8KLSAgICAgIGZpCi0gICAgICA7OwotCi0gICAg
Y3lnd2luKiB8IG1pbmd3KiB8IHB3MzIqKQotICAgICAgIyBfTFRfQUNfVEFHVkFSKGhhcmRjb2Rl
X2xpYmRpcl9mbGFnX3NwZWMsICQxKSBpcyBhY3R1YWxseSBtZWFuaW5nbGVzcywgYXMgdGhlcmUg
aXMKLSAgICAgICMgbm8gc2VhcmNoIHBhdGggZm9yIERMTHMuCi0gICAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLUwkbGliZGlyJwotICAgICAgX0xUX0FD
X1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPXVuc3VwcG9ydGVkCi0gICAgICBfTFRf
QUNfVEFHVkFSKGFsd2F5c19leHBvcnRfc3ltYm9scywgJDEpPXllcwotCi0gICAgICBleHRyYWN0
X2V4cHN5bXNfY21kcz0ndGVzdCAtZiAkb3V0cHV0X29iamRpci9pbXBnZW4uYyB8fCBcCi0Jc2Vk
IC1lICIvXiMgXC9cKiBpbXBnZW5cLmMgc3RhcnRzIGhlcmUgXCpcLy8sL14jIFwvXCogaW1wZ2Vu
LmMgZW5kcyBoZXJlIFwqXC8vIHsgcy9eIyAvLztzL14jICokLy87IHA7IH0iIC1lIGQgPCAkJycw
ID4gJG91dHB1dF9vYmpkaXIvaW1wZ2VuLmN+Ci0JdGVzdCAtZiAkb3V0cHV0X29iamRpci9pbXBn
ZW4uZXhlIHx8IChjZCAkb3V0cHV0X29iamRpciAmJiBcCi0JaWYgdGVzdCAieCRIT1NUX0NDIiAh
PSAieCIgOyB0aGVuICRIT1NUX0NDIC1vIGltcGdlbiBpbXBnZW4uYyA7IFwKLQllbHNlICRDQyAt
byBpbXBnZW4gaW1wZ2VuLmMgOyBmaSl+Ci0JJG91dHB1dF9vYmpkaXIvaW1wZ2VuICRkaXIvJHNv
cm9vdCA+ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUtZGVmJwotCi0gICAgICBfTFRfQUNfVEFHVkFS
KG9sZF9hcmNoaXZlX2Zyb21fZXhwc3ltc19jbWRzLCAkMSk9JyRETExUT09MIC0tYXM9JEFTIC0t
ZGxsbmFtZSAkc29uYW1lIC0tZGVmICRvdXRwdXRfb2JqZGlyLyRzb25hbWUtZGVmIC0tb3V0cHV0
LWxpYiAkb3V0cHV0X29iamRpci8kbmV3bGliJwotCi0gICAgICAjIGN5Z3dpbiBhbmQgbWluZ3cg
ZGxscyBoYXZlIGRpZmZlcmVudCBlbnRyeSBwb2ludHMgYW5kIHNldHMgb2Ygc3ltYm9scwotICAg
ICAgIyB0byBleGNsdWRlLgotICAgICAgIyBGSVhNRTogd2hhdCBhYm91dCB2YWx1ZXMgZm9yIE1T
VkM/Ci0gICAgICBkbGxfZW50cnk9X19jeWd3aW5fZGxsX2VudHJ5QDEyCi0gICAgICBkbGxfZXhj
bHVkZV9zeW1ib2xzPURsbE1haW5AMTIsX2N5Z3dpbl9kbGxfZW50cnlAMTIsX2N5Z3dpbl9ub25j
eWd3aW5fZGxsX2VudHJ5QDEyfgotICAgICAgY2FzZSAkaG9zdF9vcyBpbgotICAgICAgbWluZ3cq
KQotCSMgbWluZ3cgdmFsdWVzCi0JZGxsX2VudHJ5PV9EbGxNYWluQ1JUU3RhcnR1cEAxMgotCWRs
bF9leGNsdWRlX3N5bWJvbHM9RGxsTWFpbkAxMixEbGxNYWluQ1JUU3RhcnR1cEAxMixEbGxFbnRy
eVBvaW50QDEyfgotCTs7Ci0gICAgICBlc2FjCi0KLSAgICAgICMgbWluZ3cgYW5kIGN5Z3dpbiBk
aWZmZXIsIGFuZCBpdCdzIHNpbXBsZXN0IHRvIGp1c3QgZXhjbHVkZSB0aGUgdW5pb24KLSAgICAg
ICMgb2YgdGhlIHR3byBzeW1ib2wgc2V0cy4KLSAgICAgIGRsbF9leGNsdWRlX3N5bWJvbHM9RGxs
TWFpbkAxMixfY3lnd2luX2RsbF9lbnRyeUAxMixfY3lnd2luX25vbmN5Z3dpbl9kbGxfZW50cnlA
MTIsRGxsTWFpbkNSVFN0YXJ0dXBAMTIsRGxsRW50cnlQb2ludEAxMgotCi0gICAgICAjIHJlY2Vu
dCBjeWd3aW4gYW5kIG1pbmd3IHN5c3RlbXMgc3VwcGx5IGEgc3R1YiBEbGxNYWluIHdoaWNoIHRo
ZSB1c2VyCi0gICAgICAjIGNhbiBvdmVycmlkZSwgYnV0IG9uIG9sZGVyIHN5c3RlbXMgd2UgaGF2
ZSB0byBzdXBwbHkgb25lIChpbiBsdGRsbC5jKQotICAgICAgaWYgdGVzdCAieCRsdF9jdl9uZWVk
X2RsbG1haW4iID0gInh5ZXMiOyB0aGVuCi0JbHRkbGxfb2JqPSckb3V0cHV0X29iamRpci8kc29u
YW1lLWx0ZGxsLiciJGFjX29iamV4dCAiCi0JbHRkbGxfY21kcz0ndGVzdCAtZiAkb3V0cHV0X29i
amRpci8kc29uYW1lLWx0ZGxsLmMgfHwgc2VkIC1lICIvXiMgXC9cKiBsdGRsbFwuYyBzdGFydHMg
aGVyZSBcKlwvLywvXiMgXC9cKiBsdGRsbC5jIGVuZHMgaGVyZSBcKlwvLyB7IHMvXiMgLy87IHA7
IH0iIC1lIGQgPCAkJycwID4gJG91dHB1dF9vYmpkaXIvJHNvbmFtZS1sdGRsbC5jfgotICAJdGVz
dCAtZiAkb3V0cHV0X29iamRpci8kc29uYW1lLWx0ZGxsLiRhY19vYmpleHQgfHwgKGNkICRvdXRw
dXRfb2JqZGlyICYmICRDQyAtYyAkc29uYW1lLWx0ZGxsLmMpficKLSAgICAgIGVsc2UKLQlsdGRs
bF9vYmo9Ci0JbHRkbGxfY21kcz0KLSAgICAgIGZpCi0KLSAgICAgICMgRXh0cmFjdCB0aGUgc3lt
Ym9sIGV4cG9ydCBsaXN0IGZyb20gYW4gYC0tZXhwb3J0LWFsbCcgZGVmIGZpbGUsCi0gICAgICAj
IHRoZW4gcmVnZW5lcmF0ZSB0aGUgZGVmIGZpbGUgZnJvbSB0aGUgc3ltYm9sIGV4cG9ydCBsaXN0
LCBzbyB0aGF0Ci0gICAgICAjIHRoZSBjb21waWxlZCBkbGwgb25seSBleHBvcnRzIHRoZSBzeW1i
b2wgZXhwb3J0IGxpc3QuCi0gICAgICAjIEJlIGNhcmVmdWwgbm90IHRvIHN0cmlwIHRoZSBEQVRB
IHRhZyBsZWZ0IGJ5IG5ld2VyIGRsbHRvb2xzLgotICAgICAgX0xUX0FDX1RBR1ZBUihleHBvcnRf
c3ltYm9sc19jbWRzLCAkMSk9IiRsdGRsbF9jbWRzIicKLQkkRExMVE9PTCAtLWV4cG9ydC1hbGwg
LS1leGNsdWRlLXN5bWJvbHMgJyRkbGxfZXhjbHVkZV9zeW1ib2xzJyAtLW91dHB1dC1kZWYgJG91
dHB1dF9vYmpkaXIvJHNvbmFtZS1kZWYgJyRsdGRsbF9vYmonJGxpYm9ianMgJGNvbnZlbmllbmNl
fgotCXNlZCAtZSAiMSwvRVhQT1JUUy9kIiAtZSAicy8gQCBbWzAtOV1dKi8vIiAtZSAicy8gKjsu
KiQvLyIgPCAkb3V0cHV0X29iamRpci8kc29uYW1lLWRlZiA+ICRleHBvcnRfc3ltYm9scycKLQot
ICAgICAgIyBJZiB0aGUgZXhwb3J0LXN5bWJvbHMgZmlsZSBhbHJlYWR5IGlzIGEgLmRlZiBmaWxl
ICgxc3QgbGluZQotICAgICAgIyBpcyBFWFBPUlRTKSwgdXNlIGl0IGFzIGlzLgotICAgICAgIyBJ
ZiBEQVRBIHRhZ3MgZnJvbSBhIHJlY2VudCBkbGx0b29sIGFyZSBwcmVzZW50LCBob25vdXIgdGhl
bSEKLSAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSdpZiB0ZXN0
ICJ4YGhlYWQgLTEgJGV4cG9ydF9zeW1ib2xzYCIgPSB4RVhQT1JUUzsgdGhlbgotCSAgY3AgJGV4
cG9ydF9zeW1ib2xzICRvdXRwdXRfb2JqZGlyLyRzb25hbWUtZGVmOwotCWVsc2UKLQkgIGVjaG8g
RVhQT1JUUyA+ICRvdXRwdXRfb2JqZGlyLyRzb25hbWUtZGVmOwotCSAgX2x0X2hpbnQ9MTsKLQkg
IGNhdCAkZXhwb3J0X3N5bWJvbHMgfCB3aGlsZSByZWFkIHN5bWJvbDsgZG8KLQkgICBzZXQgZHVt
bXkgXCRzeW1ib2w7Ci0JICAgY2FzZSBcWyRdIyBpbgotCSAgICAgMikgZWNobyAiICAgXFskXTIg
QCBcJF9sdF9oaW50IDsgIiA+PiAkb3V0cHV0X29iamRpci8kc29uYW1lLWRlZjs7Ci0JICAgICAq
KSBlY2hvICIgICBcWyRdMiBAIFwkX2x0X2hpbnQgXFskXTMgOyAiID4+ICRvdXRwdXRfb2JqZGly
LyRzb25hbWUtZGVmOzsKLQkgICBlc2FjOwotCSAgIF9sdF9oaW50PWBleHByIDEgKyBcJF9sdF9o
aW50YDsKLQkgIGRvbmU7Ci0JZml+Ci0JJyIkbHRkbGxfY21kcyInCi0JJENDIC1XbCwtLWJhc2Ut
ZmlsZSwkb3V0cHV0X29iamRpci8kc29uYW1lLWJhc2UgJyRsdF9jdl9jY19kbGxfc3dpdGNoJyAt
V2wsLWUsJyRkbGxfZW50cnknIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJyRsdGRsbF9vYmon
JGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzfgotCSRETExUT09MIC0tYXM9JEFTIC0t
ZGxsbmFtZSAkc29uYW1lIC0tZXhjbHVkZS1zeW1ib2xzICckZGxsX2V4Y2x1ZGVfc3ltYm9scycg
LS1kZWYgJG91dHB1dF9vYmpkaXIvJHNvbmFtZS1kZWYgLS1iYXNlLWZpbGUgJG91dHB1dF9vYmpk
aXIvJHNvbmFtZS1iYXNlIC0tb3V0cHV0LWV4cCAkb3V0cHV0X29iamRpci8kc29uYW1lLWV4cH4K
LQkkQ0MgLVdsLC0tYmFzZS1maWxlLCRvdXRwdXRfb2JqZGlyLyRzb25hbWUtYmFzZSAkb3V0cHV0
X29iamRpci8kc29uYW1lLWV4cCAnJGx0X2N2X2NjX2RsbF9zd2l0Y2gnIC1XbCwtZSwnJGRsbF9l
bnRyeScgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAnJGx0ZGxsX29iaickbGlib2JqcyAkZGVw
bGlicyAkY29tcGlsZXJfZmxhZ3N+Ci0JJERMTFRPT0wgLS1hcz0kQVMgLS1kbGxuYW1lICRzb25h
bWUgLS1leGNsdWRlLXN5bWJvbHMgJyRkbGxfZXhjbHVkZV9zeW1ib2xzJyAtLWRlZiAkb3V0cHV0
X29iamRpci8kc29uYW1lLWRlZiAtLWJhc2UtZmlsZSAkb3V0cHV0X29iamRpci8kc29uYW1lLWJh
c2UgLS1vdXRwdXQtZXhwICRvdXRwdXRfb2JqZGlyLyRzb25hbWUtZXhwIC0tb3V0cHV0LWxpYiAk
b3V0cHV0X29iamRpci8kbGlibmFtZS5kbGwuYX4KLQkkQ0MgJG91dHB1dF9vYmpkaXIvJHNvbmFt
ZS1leHAgJyRsdF9jdl9jY19kbGxfc3dpdGNoJyAtV2wsLWUsJyRkbGxfZW50cnknIC1vICRvdXRw
dXRfb2JqZGlyLyRzb25hbWUgJyRsdGRsbF9vYmonJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVy
X2ZsYWdzJwotICAgICAgOzsKLQotICAgIG5ldGJzZCopCi0gICAgICBpZiBlY2hvIF9fRUxGX18g
fCAkQ0MgLUUgLSB8IGdyZXAgX19FTEZfXyA+L2Rldi9udWxsOyB0aGVuCi0JX0xUX0FDX1RBR1ZB
UihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1Cc2hhcmVhYmxlICRsaWJvYmpzICRkZXBsaWJzICRs
aW5rZXJfZmxhZ3MgLW8gJGxpYicKLQl3bGFyYz0KLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFS
KGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAtbm9kZWZhdWx0bGlicyAkbGlib2JqcyAk
ZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRzb25hbWUgLW8gJGxpYicK
LQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJENDIC1zaGFyZWQgLW5v
ZGVmYXVsdGxpYnMgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFt
ZSAkd2wkc29uYW1lICR7d2x9LXJldGFpbi1zeW1ib2xzLWZpbGUgJHdsJGV4cG9ydF9zeW1ib2xz
IC1vICRsaWInCi0gICAgICBmaQotICAgICAgOzsKLQotICAgIHNvbGFyaXMqIHwgc3lzdjUqKQot
ICAgICAgaWYgJExEIC12IDI+JjEgfCBlZ3JlcCAnQkZEIDJcLjgnID4gL2Rldi9udWxsOyB0aGVu
Ci0JX0xUX0FDX1RBR1ZBUihsZF9zaGxpYnMsICQxKT1ubwotCWNhdCA8PEVPRiAxPiYyCi0KLSoq
KiBXYXJuaW5nOiBUaGUgcmVsZWFzZXMgMi44Liogb2YgdGhlIEdOVSBsaW5rZXIgY2Fubm90IHJl
bGlhYmx5Ci0qKiogY3JlYXRlIHNoYXJlZCBsaWJyYXJpZXMgb24gU29sYXJpcyBzeXN0ZW1zLiAg
VGhlcmVmb3JlLCBsaWJ0b29sCi0qKiogaXMgZGlzYWJsaW5nIHNoYXJlZCBsaWJyYXJpZXMgc3Vw
cG9ydC4gIFdlIHVyZ2UgeW91IHRvIHVwZ3JhZGUgR05VCi0qKiogYmludXRpbHMgdG8gcmVsZWFz
ZSAyLjkuMSBvciBuZXdlci4gIEFub3RoZXIgb3B0aW9uIGlzIHRvIG1vZGlmeQotKioqIHlvdXIg
UEFUSCBvciBjb21waWxlciBjb25maWd1cmF0aW9uIHNvIHRoYXQgdGhlIG5hdGl2ZSBsaW5rZXIg
aXMKLSoqKiB1c2VkLCBhbmQgdGhlbiByZXN0YXJ0LgotCi1FT0YKLSAgICAgIGVsaWYgJExEIC0t
aGVscCAyPiYxIHwgZWdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVs
bDsgdGhlbgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hhcmVkICRs
aWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNvbmFtZSAt
byAkbGliJwotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSckQ0MgLXNo
YXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1lICR3bCRz
b25hbWUgJHt3bH0tcmV0YWluLXN5bWJvbHMtZmlsZSAkd2wkZXhwb3J0X3N5bWJvbHMgLW8gJGxp
YicKLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0gICAgICBm
aQotICAgICAgOzsKLQotICAgIHN1bm9zNCopCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
Y21kcywgJDEpPSckTEQgLWFzc2VydCBwdXJlLXRleHQgLUJzaGFyZWFibGUgLW8gJGxpYiAkbGli
b2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwotICAgICAgd2xhcmM9Ci0gICAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJk
Y29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7Ci0KLSAgICAqKQotICAgICAgaWYg
JExEIC0taGVscCAyPiYxIHwgZWdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9k
ZXYvbnVsbDsgdGhlbgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAtc2hh
cmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHdsJHNv
bmFtZSAtbyAkbGliJwotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywgJDEpPSck
Q0MgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgJHt3bH0tc29uYW1l
ICR3bCRzb25hbWUgJHt3bH0tcmV0YWluLXN5bWJvbHMtZmlsZSAkd2wkZXhwb3J0X3N5bWJvbHMg
LW8gJGxpYicKLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0g
ICAgICBmaQotICAgICAgOzsKLSAgICBlc2FjCi0KLSAgICBpZiB0ZXN0ICIkX0xUX0FDX1RBR1ZB
UihsZF9zaGxpYnMsICQxKSIgPSB5ZXM7IHRoZW4KLSAgICAgIHJ1bnBhdGhfdmFyPUxEX1JVTl9Q
QVRICi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0n
JHt3bH0tLXJwYXRoICR7d2x9JGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5
bmFtaWNfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LS1leHBvcnQtZHluYW1pYycKLSAgICAgIGNhc2Ug
JGhvc3Rfb3MgaW4KLSAgICAgIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKikKLQkjIGRsbHRvb2wg
ZG9lc24ndCB1bmRlcnN0YW5kIC0td2hvbGUtYXJjaGl2ZSBldC4gYWwuCi0JX0xUX0FDX1RBR1ZB
Uih3aG9sZV9hcmNoaXZlX2ZsYWdfc3BlYywgJDEpPQotCTs7Ci0gICAgICAqKQotCSMgYW5jaWVu
dCBHTlUgbGQgZGlkbid0IHN1cHBvcnQgLS13aG9sZS1hcmNoaXZlIGV0LiBhbC4KLQlpZiAkTEQg
LS1oZWxwIDI+JjEgfCBlZ3JlcCAnbm8td2hvbGUtYXJjaGl2ZScgPiAvZGV2L251bGw7IHRoZW4K
LSAgCV9MVF9BQ19UQUdWQVIod2hvbGVfYXJjaGl2ZV9mbGFnX3NwZWMsICQxKT0iJHdsYXJjIict
LXdob2xlLWFyY2hpdmUkY29udmVuaWVuY2UgJyIkd2xhcmMiJy0tbm8td2hvbGUtYXJjaGl2ZScK
LQllbHNlCi0gIAlfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Ci0J
ZmkKLQk7OwotICAgICAgZXNhYwotICAgIGZpCi0gIGVsc2UKLSAgICAjIFBPUlRNRSBmaWxsIGlu
IGEgZGVzY3JpcHRpb24gb2YgeW91ciBzeXN0ZW0ncyBsaW5rZXIgKG5vdCBHTlUgbGQpCi0gICAg
Y2FzZSAkaG9zdF9vcyBpbgotICAgIGFpeDMqKQotICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191
bmRlZmluZWRfZmxhZywgJDEpPXVuc3VwcG9ydGVkCi0gICAgICBfTFRfQUNfVEFHVkFSKGFsd2F5
c19leHBvcnRfc3ltYm9scywgJDEpPXllcwotICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4
cHN5bV9jbWRzLCAkMSk9JyRMRCAtbyAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWJvYmpzICRk
ZXBsaWJzICRsaW5rZXJfZmxhZ3MgLWJFOiRleHBvcnRfc3ltYm9scyAtVDUxMiAtSDUxMiAtYk06
U1JFfiRBUiAkQVJfRkxBR1MgJGxpYiAkb3V0cHV0X29iamRpci8kc29uYW1lJwotICAgICAgIyBO
b3RlOiB0aGlzIGxpbmtlciBoYXJkY29kZXMgdGhlIGRpcmVjdG9yaWVzIGluIExJQlBBVEggaWYg
dGhlcmUKLSAgICAgICMgYXJlIG5vIGRpcmVjdG9yaWVzIHNwZWNpZmllZCBieSAtTC4KLSAgICAg
IF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwotICAgICAgaWYgdGVzdCAi
JEdDQyIgPSB5ZXMgJiYgdGVzdCAteiAiJGxpbmtfc3RhdGljX2ZsYWciOyB0aGVuCi0JIyBOZWl0
aGVyIGRpcmVjdCBoYXJkY29kaW5nIG5vciBzdGF0aWMgbGlua2luZyBpcyBzdXBwb3J0ZWQgd2l0
aCBhCi0JIyBicm9rZW4gY29sbGVjdDIuCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3Qs
ICQxKT11bnN1cHBvcnRlZAotICAgICAgZmkKLSAgICAgIDs7Ci0KLSAgICBhaXg0KiB8IGFpeDUq
KQotICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KLQkjIE9uIElBNjQsIHRo
ZSBsaW5rZXIgZG9lcyBydW4gdGltZSBsaW5raW5nIGJ5IGRlZmF1bHQsIHNvIHdlIGRvbid0Ci0J
IyBoYXZlIHRvIGRvIGFueXRoaW5nIHNwZWNpYWwuCi0JYWl4X3VzZV9ydW50aW1lbGlua2luZz1u
bwotCWV4cF9zeW1fZmxhZz0nLUJleHBvcnQnCi0Jbm9fZW50cnlfZmxhZz0iIgotICAgICAgZWxz
ZQotCSMgSWYgd2UncmUgdXNpbmcgR05VIG5tLCB0aGVuIHdlIGRvbid0IHdhbnQgdGhlICItQyIg
b3B0aW9uLgotCSMgLUMgbWVhbnMgZGVtYW5nbGUgdG8gQUlYIG5tLCBidXQgbWVhbnMgZG9uJ3Qg
ZGVtYW5nbGUgd2l0aCBHTlUgbm0KLQlpZiAkTk0gLVYgMj4mMSB8IGVncmVwICcoR05VKScgPiAv
ZGV2L251bGw7IHRoZW4KLQkgIF9MVF9BQ19UQUdWQVIoZXhwb3J0X3N5bWJvbHNfY21kcywgJDEp
PSckTk0gLUJwZyAkbGlib2JqcyAkY29udmVuaWVuY2UgfCBhd2sgJ1wnJ3sgaWYgKCgoXFskXTIg
PT0gIlQiKSB8fCAoXFskXTIgPT0gIkQiKSB8fCAoXFskXTIgPT0gIkIiKSkgJiYgKFtzdWJzdHJd
KFxbJF0zLDEsMSkgIT0gIi4iKSkgeyBwcmludCBcWyRdMyB9IH0nXCcnIHwgc29ydCAtdSA+ICRl
eHBvcnRfc3ltYm9scycKLQllbHNlCi0JICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9zeW1ib2xzX2Nt
ZHMsICQxKT0nJE5NIC1CQ3BnICRsaWJvYmpzICRjb252ZW5pZW5jZSB8IGF3ayAnXCcneyBpZiAo
KChcWyRdMiA9PSAiVCIpIHx8IChcWyRdMiA9PSAiRCIpIHx8IChcWyRdMiA9PSAiQiIpKSAmJiAo
W3N1YnN0cl0oXFskXTMsMSwxKSAhPSAiLiIpKSB7IHByaW50IFxbJF0zIH0gfSdcJycgfCBzb3J0
IC11ID4gJGV4cG9ydF9zeW1ib2xzJwotCWZpCi0KLQkjIEtERSByZXF1aXJlcyBydW4gdGltZSBs
aW5raW5nLiAgTWFrZSBpdCB0aGUgZGVmYXVsdC4KLQlhaXhfdXNlX3J1bnRpbWVsaW5raW5nPXll
cwotCWV4cF9zeW1fZmxhZz0nLWJleHBvcnQnCi0Jbm9fZW50cnlfZmxhZz0nLWJub2VudHJ5Jwot
ICAgICAgZmkKLQotICAgICAgIyBXaGVuIGxhcmdlIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmpl
Y3RzIGFyZSBidWlsdCwgQUlYIGxkIGNhbgotICAgICAgIyBoYXZlIHByb2JsZW1zIGNyZWF0aW5n
IHRoZSB0YWJsZSBvZiBjb250ZW50cy4gIElmIGxpbmtpbmcgYSBsaWJyYXJ5Ci0gICAgICAjIG9y
IHByb2dyYW0gcmVzdWx0cyBpbiAiZXJyb3IgVE9DIG92ZXJmbG93IiBhZGQgLW1taW5pbWFsLXRv
YyB0bwotICAgICAgIyBDWFhGTEFHUy9DRkxBR1MgZm9yIGcrKy9nY2MuICBJbiB0aGUgY2FzZXMg
d2hlcmUgdGhhdCBpcyBub3QKLSAgICAgICMgZW5vdWdoIHRvIGZpeCB0aGUgcHJvYmxlbSwgYWRk
IC1XbCwtYmJpZ3RvYyB0byBMREZMQUdTLgotCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVf
Y21kcywgJDEpPScnCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXll
cwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLCAkMSk9Jzon
Ci0gICAgICBfTFRfQUNfVEFHVkFSKGxpbmtfYWxsX2RlcGxpYnMsICQxKT15ZXMKLQotICAgICAg
aWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KLQljYXNlICRob3N0X29zIGluIGFpeDQuWzAxMl18
YWl4NC5bMDEyXS4qKQotCSMgV2Ugb25seSB3YW50IHRvIGRvIHRoaXMgb24gQUlYIDQuMiBhbmQg
bG93ZXIsIHRoZSBjaGVjawotCSMgYmVsb3cgZm9yIGJyb2tlbiBjb2xsZWN0MiBkb2Vzbid0IHdv
cmsgdW5kZXIgNC4zKwotCSAgY29sbGVjdDJuYW1lPWAke0NDfSAtcHJpbnQtcHJvZy1uYW1lPWNv
bGxlY3QyYAotCSAgaWYgdGVzdCAtZiAiJGNvbGxlY3QybmFtZSIgJiYgXAotICAJICAgc3RyaW5n
cyAiJGNvbGxlY3QybmFtZSIgfCBncmVwIHJlc29sdmVfbGliX25hbWUgPi9kZXYvbnVsbAotCSAg
dGhlbgotICAJICAjIFdlIGhhdmUgcmV3b3JrZWQgY29sbGVjdDIKLSAgCSAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMKLQkgIGVsc2UKLSAgCSAgIyBXZSBoYXZlIG9sZCBj
b2xsZWN0MgotICAJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXVuc3VwcG9y
dGVkCi0gIAkgICMgSXQgZmFpbHMgdG8gZmluZCB1bmluc3RhbGxlZCBsaWJyYXJpZXMgd2hlbiB0
aGUgdW5pbnN0YWxsZWQKLSAgCSAgIyBwYXRoIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIGxpYnBhdGgu
ICBTZXR0aW5nIGhhcmRjb2RlX21pbnVzX0wKLSAgCSAgIyB0byB1bnN1cHBvcnRlZCBmb3JjZXMg
cmVsaW5raW5nCi0gIAkgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwot
ICAJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nLUwkbGli
ZGlyJwotICAJICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT0K
LQkgIGZpCi0JZXNhYwotCXNoYXJlZF9mbGFnPSctc2hhcmVkJwotICAgICAgZWxzZQotCSMgbm90
IHVzaW5nIGdjYwotCWlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCi0gIAkjIFZpc3Vh
bEFnZSBDKyssIFZlcnNpb24gNS41IGZvciBBSVggNUwgZm9yIElBLTY0LCBCZXRhIDMgUmVsZWFz
ZQotICAJIyBjaG9rZXMgb24gLVdsLC1HLiBUaGUgZm9sbG93aW5nIGxpbmUgaXMgY29ycmVjdDoK
LQkgIHNoYXJlZF9mbGFnPSctRycKLQllbHNlCi0gIAlpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1l
bGlua2luZyIgPSB5ZXM7IHRoZW4KLQkgICAgc2hhcmVkX2ZsYWc9Jy1xbWtzaHJvYmogJHt3bH0t
RycKLQkgIGVsc2UKLQkgICAgc2hhcmVkX2ZsYWc9Jy1xbWtzaHJvYmonCi0gIAlmaQotCWZpCi0g
ICAgICBmaQotCi0gICAgICAjIExldCB0aGUgY29tcGlsZXIgaGFuZGxlIHRoZSBleHBvcnQgbGlz
dC4KLSAgICAgIF9MVF9BQ19UQUdWQVIoYWx3YXlzX2V4cG9ydF9zeW1ib2xzLCAkMSk9bm8KLSAg
ICAgIGlmIHRlc3QgIiRhaXhfdXNlX3J1bnRpbWVsaW5raW5nIiA9IHllczsgdGhlbgotCSMgV2Fy
bmluZyAtIHdpdGhvdXQgdXNpbmcgdGhlIG90aGVyIHJ1bnRpbWUgbG9hZGluZyBmbGFncyAoLWJy
dGwpLAotCSMgLWJlcm9rIHdpbGwgbGluayB3aXRob3V0IGVycm9yLCBidXQgbWF5IHByb2R1Y2Ug
YSBicm9rZW4gbGlicmFyeS4KLQlfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAk
MSk9Jy1iZXJvaycKLSAgICAgICAjIERldGVybWluZSB0aGUgZGVmYXVsdCBsaWJwYXRoIGZyb20g
dGhlIHZhbHVlIGVuY29kZWQgaW4gYW4gZW1wdHkgZXhlY3V0YWJsZS4KLQlfTFRfQUNfU1lTX0xJ
QlBBVEhfQUlYCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9
JyR7d2x9LWJsaWJwYXRoOiRsaWJkaXI6JyIkYWl4X2xpYnBhdGgiCi0JX0xUX0FDX1RBR1ZBUihh
cmNoaXZlX2NtZHMsICQxKT0iXCRDQyInIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9i
anMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzIGBpZiB0ZXN0ICJ4JHthbGxvd191bmRlZmluZWRf
ZmxhZ30iICE9ICJ4IjsgdGhlbiBlY2hvICIke3dsfSR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9Ijsg
ZWxzZSA6OyBmaWAgJyIgJHNoYXJlZF9mbGFnIgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBz
eW1fY21kcywgJDEpPSJcJENDIicgLW8gJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkbGlib2JqcyAk
ZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MgYGlmIHRlc3QgIngke2FsbG93X3VuZGVmaW5lZF9mbGFn
fSIgIT0gIngiOyB0aGVuIGVjaG8gIiR7d2x9JHthbGxvd191bmRlZmluZWRfZmxhZ30iOyBlbHNl
IDo7IGZpYCAnIlwke3dsfSRleHBfc3ltX2ZsYWc6XCRleHBvcnRfc3ltYm9scyAkc2hhcmVkX2Zs
YWciCi0gICAgICAgZWxzZQotCWlmIHRlc3QgIiRob3N0X2NwdSIgPSBpYTY0OyB0aGVuCi0JICBf
TFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0tUiAkbGli
ZGlyOi91c3IvbGliOi9saWInCi0JICBfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFn
LCAkMSk9Ii16IG5vZGVmcyIKLQkgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9leHBzeW1fY21kcywg
JDEpPSJcJENDICRzaGFyZWRfZmxhZyInIC1vICRvdXRwdXRfb2JqZGlyLyRzb25hbWUgJGxpYm9i
anMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9JHthbGxvd191bmRlZmluZWRfZmxhZ30g
JyJcJHt3bH0kbm9fZW50cnlfZmxhZyBcJHt3bH0kZXhwX3N5bV9mbGFnOlwkZXhwb3J0X3N5bWJv
bHMiCi0JZWxzZQotCSAjIERldGVybWluZSB0aGUgZGVmYXVsdCBsaWJwYXRoIGZyb20gdGhlIHZh
bHVlIGVuY29kZWQgaW4gYW4gZW1wdHkgZXhlY3V0YWJsZS4KLQkgX0xUX0FDX1NZU19MSUJQQVRI
X0FJWAotCSBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3
bH0tYmxpYnBhdGg6JGxpYmRpcjonIiRhaXhfbGlicGF0aCIKLQkgICMgV2FybmluZyAtIHdpdGhv
dXQgdXNpbmcgdGhlIG90aGVyIHJ1biB0aW1lIGxvYWRpbmcgZmxhZ3MsCi0JICAjIC1iZXJvayB3
aWxsIGxpbmsgd2l0aG91dCBlcnJvciwgYnV0IG1heSBwcm9kdWNlIGEgYnJva2VuIGxpYnJhcnku
Ci0JICBfTFRfQUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3dsfS1iZXJub3Rv
aycKLQkgIF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nICR7d2x9LWJl
cm9rJwotCSAgIyAtYmV4cGFsbCBkb2VzIG5vdCBleHBvcnQgc3ltYm9scyBiZWdpbm5pbmcgd2l0
aCB1bmRlcnNjb3JlIChfKQotCSAgX0xUX0FDX1RBR1ZBUihhbHdheXNfZXhwb3J0X3N5bWJvbHMs
ICQxKT15ZXMKLQkgICMgRXhwb3J0ZWQgc3ltYm9scyBjYW4gYmUgcHVsbGVkIGludG8gc2hhcmVk
IG9iamVjdHMgZnJvbSBhcmNoaXZlcwotCSAgX0xUX0FDX1RBR1ZBUih3aG9sZV9hcmNoaXZlX2Zs
YWdfc3BlYywgJDEpPScgJwotCSAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHNfbmVlZF9sYywg
JDEpPXllcwotCSAgIyBUaGlzIGlzIHNpbWlsYXIgdG8gaG93IEFJWCB0cmFkaXRpb25hbGx5IGJ1
aWxkcyBpdCdzIHNoYXJlZCBsaWJyYXJpZXMuCi0JICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhw
c3ltX2NtZHMsICQxKT0iXCRDQyAkc2hhcmVkX2ZsYWciJyAtbyAkb3V0cHV0X29iamRpci8kc29u
YW1lICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1iRTokZXhwb3J0X3N5
bWJvbHMgJHt3bH0tYm5vZW50cnkke2FsbG93X3VuZGVmaW5lZF9mbGFnfX4kQVIgJEFSX0ZMQUdT
ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lJHJlbGVhc2UuYSAkb3V0cHV0X29iamRpci8kc29uYW1l
JwotCWZpCi0gICAgICBmaQotICAgICAgOzsKLQotICAgIGFtaWdhb3MqKQotICAgICAgX0xUX0FD
X1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJHJtICRvdXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5
LmRhdGF+JGVjaG8gIiNkZWZpbmUgTkFNRSAkbGlibmFtZSIgPiAkb3V0cHV0X29iamRpci9hMml4
bGlicmFyeS5kYXRhfiRlY2hvICIjZGVmaW5lIExJQlJBUllfSUQgMSIgPj4gJG91dHB1dF9vYmpk
aXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBWRVJTSU9OICRtYWpvciIgPj4gJG91
dHB1dF9vYmpkaXIvYTJpeGxpYnJhcnkuZGF0YX4kZWNobyAiI2RlZmluZSBSRVZJU0lPTiAkcmV2
aXNpb24iID4+ICRvdXRwdXRfb2JqZGlyL2EyaXhsaWJyYXJ5LmRhdGF+JEFSICRBUl9GTEFHUyAk
bGliICRsaWJvYmpzfiRSQU5MSUIgJGxpYn4oY2QgJG91dHB1dF9vYmpkaXIgJiYgYTJpeGxpYnJh
cnkgLTMyKScKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywg
JDEpPSctTCRsaWJkaXInCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQx
KT15ZXMKLSAgICAgICMgc2VlIGNvbW1lbnQgYWJvdXQgZGlmZmVyZW50IHNlbWFudGljcyBvbiB0
aGUgR05VIGxkIHNlY3Rpb24KLSAgICAgIF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSk9bm8K
LSAgICAgIDs7Ci0KLSAgICBic2RpNCopCi0gICAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5h
bWljX2ZsYWdfc3BlYywgJDEpPS1yZHluYW1pYwotICAgICAgOzsKLQotICAgIGN5Z3dpbiogfCBt
aW5ndyogfCBwdzMyKikKLSAgICAgICMgV2hlbiBub3QgdXNpbmcgZ2NjLCB3ZSBjdXJyZW50bHkg
YXNzdW1lIHRoYXQgd2UgYXJlIHVzaW5nCi0gICAgICAjIE1pY3Jvc29mdCBWaXN1YWwgQysrLgot
ICAgICAgIyBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIGlzIGFjdHVhbGx5IG1lYW5pbmdsZXNz
LCBhcyB0aGVyZSBpcwotICAgICAgIyBubyBzZWFyY2ggcGF0aCBmb3IgRExMcy4KLSAgICAgIF9M
VF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScgJwotICAgICAgX0xU
X0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPXVuc3VwcG9ydGVkCi0gICAgICAj
IFRlbGwgbHRtYWluIHRvIG1ha2UgLmxpYiBmaWxlcywgbm90IC5hIGZpbGVzLgotICAgICAgbGli
ZXh0PWxpYgotICAgICAgIyBGSVhNRTogU2V0dGluZyBsaW5rbmFtZXMgaGVyZSBpcyBhIGJhZCBo
YWNrLgotICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1vICRsaWIg
JGxpYm9ianMgJGNvbXBpbGVyX2ZsYWdzIGBlY2hvICIkZGVwbGlicyIgfCBzZWQgLWUgJ1wnJ3Mv
IC1sYyQvLydcJydgIC1saW5rIC1kbGx+bGlua25hbWVzPScKLSAgICAgICMgVGhlIGxpbmtlciB3
aWxsIGF1dG9tYXRpY2FsbHkgYnVpbGQgYSAubGliIGZpbGUgaWYgd2UgYnVpbGQgYSBETEwuCi0g
ICAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX0Zyb21fbmV3X2NtZHMsICQxKT0ndHJ1ZScK
LSAgICAgICMgRklYTUU6IFNob3VsZCBsZXQgdGhlIHVzZXIgc3BlY2lmeSB0aGUgbGliIHByb2dy
YW0uCi0gICAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX2NtZHMsICQxKT0nbGliIC9PVVQ6
JG9sZGxpYiRvbGRvYmpzJG9sZF9kZXBsaWJzJwotICAgICAgZml4X3NyY2ZpbGVfcGF0aD0nYGN5
Z3BhdGggLXcgIiRzcmNmaWxlImAnCi0gICAgICA7OwotCi0gICAgZGFyd2luKiB8IHJoYXBzb2R5
KikKLSAgICAgIGNhc2UgIiRob3N0X29zIiBpbgotICAgICAgcmhhcHNvZHkqIHwgZGFyd2luMS5b
WzAxMl1dKQotCV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKT0nLXVuZGVm
aW5lZCBzdXBwcmVzcycKLQk7OwotICAgICAgKikgIyBEYXJ3aW4gMS4zIG9uCi0JX0xUX0FDX1RB
R1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPSctZmxhdF9uYW1lc3BhY2UgLXVuZGVmaW5l
ZCBzdXBwcmVzcycKLQk7OwotICAgICAgZXNhYwotCi0gICAgICAjIEZJWE1FOiBSZWx5aW5nIG9u
IHBvc2l4eSAkKCkgd2lsbCBjYXVzZSBwcm9ibGVtcyBmb3IKLSAgICAgICMgICAgICAgIGNyb3Nz
LWNvbXBpbGF0aW9uLCBidXQgdW5mb3J0dW5hdGVseSB0aGUgZWNobyB0ZXN0cyBkbyBub3QKLSAg
ICAgICMgICAgICAgIHlldCBkZXRlY3QgenNoIGVjaG8ncyByZW1vdmFsIG9mIFwgZXNjYXBlcy4g
IEFsc28genNoIG1hbmdsZXMKLSAgICAgICMJICAgICAgIGAiJyBxdW90ZXMgaWYgd2UgcHV0IHRo
ZW0gaW4gaGVyZS4uLiBzbyBkb24ndCEKLSAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRz
LCAkMSk9JyRDQyAkKHRlc3QgLiRtb2R1bGUgPSAueWVzICYmIGVjaG8gLWJ1bmRsZSB8fCBlY2hv
IC1keW5hbWljbGliKSAkYWxsb3dfdW5kZWZpbmVkX2ZsYWcgLW8gJGxpYiAkbGlib2JqcyAkZGVw
bGlicyRsaW5rZXJfZmxhZ3MgLWluc3RhbGxfbmFtZSAkcnBhdGgvJHNvbmFtZSAkdmVyc3RyaW5n
JwotICAgICAgIyBXZSBuZWVkIHRvIGFkZCAnXycgdG8gdGhlIHN5bWJvbHMgaW4gJGV4cG9ydF9z
eW1ib2xzIGZpcnN0Ci0gICAgICAjX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9jbWRzLCAk
MSk9IiRfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpIicgJiYgc3RyaXAgLXMgJGV4cG9y
dF9zeW1ib2xzJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMK
LSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAg
ICBfTFRfQUNfVEFHVkFSKHdob2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Jy1hbGxfbG9hZCAk
Y29udmVuaWVuY2UnCi0gICAgICA7OwotCi0gICAgZGd1eCopCi0gICAgICBfTFRfQUNfVEFHVkFS
KGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRk
ZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRp
cl9mbGFnX3NwZWMsICQxKT0nLUwkbGliZGlyJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7Ci0KLSAgICBmcmVlYnNkMSopCi0gICAg
ICBfTFRfQUNfVEFHVkFSKGxkX3NobGlicywgJDEpPW5vCi0gICAgICA7OwotCi0gICAgIyBGcmVl
QlNEIDIuMi5bMDEyXSBhbGxvd3MgdXMgdG8gaW5jbHVkZSBjKytydDAubyB0byBnZXQgQysrIGNv
bnN0cnVjdG9yCi0gICAgIyBzdXBwb3J0LiAgRnV0dXJlIHZlcnNpb25zIGRvIHRoaXMgYXV0b21h
dGljYWxseSwgYnV0IGFuIGV4cGxpY2l0IGMrK3J0MC5vCi0gICAgIyBkb2VzIG5vdCBicmVhayBh
bnl0aGluZywgYW5kIGhlbHBzIHNpZ25pZmljYW50bHkgKGF0IHRoZSBjb3N0IG9mIGEgbGl0dGxl
Ci0gICAgIyBleHRyYSBzcGFjZSkuCi0gICAgZnJlZWJzZDIuMiopCi0gICAgICBfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUJzaGFyZWFibGUgLW8gJGxpYiAkbGlib2JqcyAk
ZGVwbGlicyAkbGlua2VyX2ZsYWdzIC91c3IvbGliL2MrK3J0MC5vJwotICAgICAgX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1SJGxpYmRpcicKLSAgICAgIF9M
VF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCi0gICAgICBfTFRfQUNfVEFHVkFS
KGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwotICAgICAgOzsKLQotICAgICMgVW5mb3J0
dW5hdGVseSwgb2xkZXIgdmVyc2lvbnMgb2YgRnJlZUJTRCAyIGRvIG5vdCBoYXZlIHRoaXMgZmVh
dHVyZS4KLSAgICBmcmVlYnNkMiopCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpPSckTEQgLUJzaGFyZWFibGUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2Zs
YWdzJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9kaXJlY3QsICQxKT15ZXMKLSAgICAg
IF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEpPXllcwotICAgICAgX0xUX0FDX1RB
R1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7Ci0KLSAgICAjIEZy
ZWVCU0QgMyBhbmQgZ3JlYXRlciB1c2VzIGdjYyAtc2hhcmVkIHRvIGRvIHNoYXJlZCBsaWJyYXJp
ZXMuCi0gICAgZnJlZWJzZCopCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEp
PSckQ0MgLXNoYXJlZCAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncycK
LSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctUiRs
aWJkaXInCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwotICAg
ICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7
Ci0KLSAgICBocHV4OSogfCBocHV4MTAqIHwgaHB1eDExKikKLSAgICAgIGlmIHRlc3QgIiRHQ0Mi
ID0geWVzOyB0aGVuCi0JY2FzZSAkaG9zdF9vcyBpbgotCSAgaHB1eDkqKQotCSAgICBfTFRfQUNf
VEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckcm0gJG91dHB1dF9vYmpkaXIvJHNvbmFtZX4kQ0Mg
LXNoYXJlZCAtZlBJQyAke3dsfStiICR7d2x9JGluc3RhbGxfbGliZGlyIC1vICRvdXRwdXRfb2Jq
ZGlyLyRzb25hbWUgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzfnRlc3QgJG91dHB1
dF9vYmpkaXIvJHNvbmFtZSA9ICRsaWIgfHwgbXYgJG91dHB1dF9vYmpkaXIvJHNvbmFtZSAkbGli
JwotCSAgICA7OwotCSAgKikKLQkgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4K
LQkgICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJlZCAke3ds
fStoICR7d2x9JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFn
cycKLQkgICAgZWxzZQotCSAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRD
QyAtc2hhcmVkIC1mUElDICR7d2x9K2ggJHt3bH0kc29uYW1lICR7d2x9K2IgJHt3bH0kaW5zdGFs
bF9saWJkaXIgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJfZmxhZ3MnCi0JICAg
IGZpCi0JICAgIDs7Ci0JZXNhYwotICAgICAgZWxzZQotCWNhc2UgJGhvc3Rfb3MgaW4KLQkgIGhw
dXg5KikKLQkgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJHJtICRvdXRwdXRf
b2JqZGlyLyRzb25hbWV+JExEIC1iICtiICRpbnN0YWxsX2xpYmRpciAtbyAkb3V0cHV0X29iamRp
ci8kc29uYW1lICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3N+dGVzdCAkb3V0cHV0X29i
amRpci8kc29uYW1lID0gJGxpYiB8fCBtdiAkb3V0cHV0X29iamRpci8kc29uYW1lICRsaWInCi0J
ICAgIDs7Ci0JICAqKQotCSAgICBpZiB0ZXN0ICIkaG9zdF9jcHUiID0gaWE2NDsgdGhlbgotCSAg
ICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtYiAraCAkc29uYW1lIC1v
ICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncycKLQkgICAgZWxzZQotCSAgICAg
IF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtYiAraCAkc29uYW1lICtiICRp
bnN0YWxsX2xpYmRpciAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0J
ICAgIGZpCi0JICAgIDs7Ci0JZXNhYwotICAgICAgZmkKLSAgICAgIGlmIHRlc3QgIiRob3N0X2Nw
dSIgPSBpYTY0OyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVj
LCAkMSk9Jy1MJGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPW5v
Ci0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIGVs
c2UKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0nJHt3bH0r
YiAke3dsfSRsaWJkaXInCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9y
LCAkMSk9OgotCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCi0gICAgICBm
aQotICAgICAgIyBoYXJkY29kZV9taW51c19MOiBOb3QgcmVhbGx5IGluIHRoZSBzZWFyY2ggUEFU
SCwKLSAgICAgICMgYnV0IGFzIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBsaWJyYXJ5Lgot
ICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9taW51c19MLCAkMSk9eWVzCi0gICAgICBfTFRf
QUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPScke3dsfS1FJwotICAgICAg
OzsKLQotICAgIGlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0b3B1eCopCi0gICAgICBpZiB0ZXN0ICIk
R0NDIiA9IHllczsgdGhlbgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRDQyAt
c2hhcmVkICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAke3dsfS1zb25hbWUgJHt3
bH0kc29uYW1lIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBlY2hvICR7d2x9LXNldF92ZXJzaW9u
ICR7d2x9JHZlcnN0cmluZ2AgJHt3bH0tdXBkYXRlX3JlZ2lzdHJ5ICR7d2x9JHtvdXRwdXRfb2Jq
ZGlyfS9zb19sb2NhdGlvbnMgLW8gJGxpYicKLSAgICAgIGVsc2UKLQlfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckTEQgLXNoYXJlZCAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2Zs
YWdzIC1zb25hbWUgJHNvbmFtZSBgdGVzdCAtbiAiJHZlcnN0cmluZyIgJiYgZWNobyAtc2V0X3Zl
cnNpb24gJHZlcnN0cmluZ2AgLXVwZGF0ZV9yZWdpc3RyeSAke291dHB1dF9vYmpkaXJ9L3NvX2xv
Y2F0aW9ucyAtbyAkbGliJwotICAgICAgZmkKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVf
bGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCi0gICAgICBf
TFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06Ci0gICAgICBfTFRf
QUNfVEFHVkFSKGxpbmtfYWxsX2RlcGxpYnMsICQxKT15ZXMKLSAgICAgIDs7Ci0KLSAgICBuZXRi
c2QqKQotICAgICAgaWYgZWNobyBfX0VMRl9fIHwgJENDIC1FIC0gfCBncmVwIF9fRUxGX18gPi9k
ZXYvbnVsbDsgdGhlbgotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtQnNo
YXJlYWJsZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnICAjIGEub3V0
Ci0gICAgICBlbHNlCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1zaGFy
ZWQgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJyAgICAgICMgRUxGCi0g
ICAgICBmaQotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAk
MSk9Jy1SJGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9
eWVzCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX3NobGlicGF0aF92YXIsICQxKT1ubwot
ICAgICAgOzsKLQotICAgIG5ld3NvczYpCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21k
cywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5r
ZXJfZmxhZ3MnCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwot
ICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9
LXJwYXRoICR7d2x9JGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGly
X3NlcGFyYXRvciwgJDEpPToKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRo
X3ZhciwgJDEpPW5vCi0gICAgICA7OwotCi0gICAgb3BlbmJzZCopCi0gICAgICBfTFRfQUNfVEFH
VkFSKGhhcmRjb2RlX2RpcmVjdCwgJDEpPXllcwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29k
ZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLQotICAgICAgaWYgdGVzdCAteiAiYGVjaG8gX19FTEZf
XyB8ICRDQyAtRSAtIHwgZ3JlcCBfX0VMRl9fYCIgfHwgdGVzdCAiJGhvc3Rfb3MtJGhvc3RfY3B1
IiA9ICJvcGVuYnNkMi44LXBvd2VycGMiOyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2Nt
ZHMsICQxKT0nJENDIC1zaGFyZWQgJHBpY19mbGFnIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMg
JGxpbmtlcl9mbGFncycKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMs
ICQxKT0nJHt3bH0tcnBhdGgsJGxpYmRpcicKLQlfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWlj
X2ZsYWdfc3BlYywgJDEpPScke3dsfS1FJwotICAgICAgZWxzZQotICAgICAgIGNhc2UgJGhvc3Rf
b3MgaW4KLQkgb3BlbmJzZFtbMDFdXS4qIHwgb3BlbmJzZDIuW1swLTddXSB8IG9wZW5ic2QyLltb
MC03XV0uKikKLQkgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUJzaGFy
ZWFibGUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwotCSAgIF9MVF9B
Q19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctUiRsaWJkaXInCi0JICAg
OzsKLQkgKikKLQkgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNoYXJl
ZCAkcGljX2ZsYWcgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwotCSAg
IF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1ycGF0
aCwkbGliZGlyJwotCSAgIDs7Ci0gICAgICAgZXNhYwotICAgICAgZmkKLSAgICAgIDs7Ci0KLSAg
ICBvczIqKQotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAk
MSk9Jy1MJGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbWludXNfTCwgJDEp
PXllcwotICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPXVuc3Vw
cG9ydGVkCi0gICAgICBfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckZWNobyAiTElC
UkFSWSAkbGlibmFtZSBJTklUSU5TVEFOQ0UiID4gJG91dHB1dF9vYmpkaXIvJGxpYm5hbWUuZGVm
fiRlY2hvICJERVNDUklQVElPTiBcIiRsaWJuYW1lXCIiID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJu
YW1lLmRlZn4kZWNobyBEQVRBID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmRlZn4kZWNobyAi
IFNJTkdMRSBOT05TSEFSRUQiID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmRlZn4kZWNobyBF
WFBPUlRTID4+ICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmRlZn5lbXhleHAgJGxpYm9ianMgPj4g
JG91dHB1dF9vYmpkaXIvJGxpYm5hbWUuZGVmfiRDQyAtWmRsbCAtWmNydGRsbCAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFncyAkb3V0cHV0X29iamRpci8kbGlibmFtZS5k
ZWYnCi0gICAgICBfTFRfQUNfVEFHVkFSKG9sZF9hcmNoaXZlX0Zyb21fbmV3X2NtZHMsICQxKT0n
ZW14aW1wIC1vICRvdXRwdXRfb2JqZGlyLyRsaWJuYW1lLmEgJG91dHB1dF9vYmpkaXIvJGxpYm5h
bWUuZGVmJwotICAgICAgOzsKLQotICAgIG9zZjMqKQotICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5
ZXM7IHRoZW4KLQlfTFRfQUNfVEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAke3ds
fS1leHBlY3RfdW5yZXNvbHZlZCAke3dsfVwqJwotCV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRz
LCAkMSk9JyRDQyAtc2hhcmVkJHthbGxvd191bmRlZmluZWRfZmxhZ30gJGxpYm9ianMgJGRlcGxp
YnMgJGNvbXBpbGVyX2ZsYWdzICR7d2x9LXNvbmFtZSAke3dsfSRzb25hbWUgYHRlc3QgLW4gIiR2
ZXJzdHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24gJHt3bH0kdmVyc3RyaW5nYCAke3ds
fS11cGRhdGVfcmVnaXN0cnkgJHt3bH0ke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAk
bGliJwotICAgICAgZWxzZQotCV9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQx
KT0nIC1leHBlY3RfdW5yZXNvbHZlZCBcKicKLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywg
JDEpPSckTEQgLXNoYXJlZCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICRsaWJvYmpzICRkZXBsaWJz
ICRsaW5rZXJfZmxhZ3MgLXNvbmFtZSAkc29uYW1lIGB0ZXN0IC1uICIkdmVyc3RyaW5nIiAmJiBl
Y2hvIC1zZXRfdmVyc2lvbiAkdmVyc3RyaW5nYCAtdXBkYXRlX3JlZ2lzdHJ5ICR7b3V0cHV0X29i
amRpcn0vc29fbG9jYXRpb25zIC1vICRsaWInCi0gICAgICBmaQotICAgICAgX0xUX0FDX1RBR1ZB
UihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9JyR7d2x9LXJwYXRoICR7d2x9JGxpYmRp
cicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciwgJDEpPToK
LSAgICAgIDs7Ci0KLSAgICBvc2Y0KiB8IG9zZjUqKQkjIGFzIG9zZjMqIHdpdGggdGhlIGFkZGl0
aW9uIG9mIC1tc3ltIGZsYWcKLSAgICAgIGlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCi0JX0xU
X0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPScgJHt3bH0tZXhwZWN0X3VucmVz
b2x2ZWQgJHt3bH1cKicKLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLXNo
YXJlZCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9ICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9m
bGFncyAke3dsfS1tc3ltICR7d2x9LXNvbmFtZSAke3dsfSRzb25hbWUgYHRlc3QgLW4gIiR2ZXJz
dHJpbmciICYmIGVjaG8gJHt3bH0tc2V0X3ZlcnNpb24gJHt3bH0kdmVyc3RyaW5nYCAke3dsfS11
cGRhdGVfcmVnaXN0cnkgJHt3bH0ke291dHB1dF9vYmpkaXJ9L3NvX2xvY2F0aW9ucyAtbyAkbGli
JwotCV9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPScke3dsfS1y
cGF0aCAke3dsfSRsaWJkaXInCi0gICAgICBlbHNlCi0JX0xUX0FDX1RBR1ZBUihhbGxvd191bmRl
ZmluZWRfZmxhZywgJDEpPScgLWV4cGVjdF91bnJlc29sdmVkIFwqJwotCV9MVF9BQ19UQUdWQVIo
YXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtc2hhcmVkJHthbGxvd191bmRlZmluZWRfZmxhZ30gJGxp
Ym9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncyAtbXN5bSAtc29uYW1lICRzb25hbWUgYHRlc3Qg
LW4gIiR2ZXJzdHJpbmciICYmIGVjaG8gLXNldF92ZXJzaW9uICR2ZXJzdHJpbmdgIC11cGRhdGVf
cmVnaXN0cnkgJHtvdXRwdXRfb2JqZGlyfS9zb19sb2NhdGlvbnMgLW8gJGxpYicKLQlfTFRfQUNf
VEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nZm9yIGkgaW4gYGNhdCAkZXhwb3J0X3N5
bWJvbHNgOyBkbyBwcmludGYgIi1leHBvcnRlZF9zeW1ib2wgIiA+PiAkbGliLmV4cDsgZWNobyAi
XCRpIiA+PiAkbGliLmV4cDsgZG9uZTsgZWNobyAiLWhpZGRlbiI+PiAkbGliLmV4cH4KLQkkTEQg
LXNoYXJlZCR7YWxsb3dfdW5kZWZpbmVkX2ZsYWd9IC1pbnB1dCAkbGliLmV4cCAkbGlua2VyX2Zs
YWdzICRsaWJvYmpzICRkZXBsaWJzIC1zb25hbWUgJHNvbmFtZSBgdGVzdCAtbiAiJHZlcnN0cmlu
ZyIgJiYgZWNobyAtc2V0X3ZlcnNpb24gJHZlcnN0cmluZ2AgLXVwZGF0ZV9yZWdpc3RyeSAke29i
amRpcn0vc29fbG9jYXRpb25zIC1vICRsaWJ+JHJtICRsaWIuZXhwJwotCi0JIyBCb3RoIGMgYW5k
IGN4eCBjb21waWxlciBzdXBwb3J0IC1ycGF0aCBkaXJlY3RseQotCV9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywgJDEpPSctcnBhdGggJGxpYmRpcicKLSAgICAgIGZpCi0g
ICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IsICQxKT06Ci0gICAg
ICA7OwotCi0gICAgc2NvMy4ydjUqKQotICAgICAgX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMs
ICQxKT0nJExEIC1HIC1oICRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2Vy
X2ZsYWdzJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9
bm8KLSAgICAgIF9MVF9BQ19UQUdWQVIoZXhwb3J0X2R5bmFtaWNfZmxhZ19zcGVjLCAkMSk9JyR7
d2x9LUJleHBvcnQnCi0gICAgICBydW5wYXRoX3Zhcj1MRF9SVU5fUEFUSAotICAgICAgaGFyZGNv
ZGVfcnVucGF0aF92YXI9eWVzCi0gICAgICA7OwotCi0gICAgc29sYXJpcyopCi0gICAgICBfTFRf
QUNfVEFHVkFSKG5vX3VuZGVmaW5lZF9mbGFnLCAkMSk9JyAteiB0ZXh0JwotICAgICAgaWYgdGVz
dCAiJEdDQyIgPSB5ZXM7IHRoZW4KLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSck
Q0MgLXNoYXJlZCAke3dsfS1oICR7d2x9JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJz
ICRjb21waWxlcl9mbGFncycKLQlfTFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQx
KT0nJGVjaG8gInsgZ2xvYmFsOiIgPiAkbGliLmV4cH5jYXQgJGV4cG9ydF9zeW1ib2xzIHwgc2Vk
IC1lICJzL1woLipcKS9cMTsvIiA+PiAkbGliLmV4cH4kZWNobyAibG9jYWw6ICo7IH07IiA+PiAk
bGliLmV4cH4KLQkgICRDQyAtc2hhcmVkICR7d2x9LU0gJHt3bH0kbGliLmV4cCAke3dsfS1oICR7
d2x9JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRjb21waWxlcl9mbGFnc34kcm0g
JGxpYi5leHAnCi0gICAgICBlbHNlCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0n
JExEIC1HJHthbGxvd191bmRlZmluZWRfZmxhZ30gLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpz
ICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2V4cHN5bV9j
bWRzLCAkMSk9JyRlY2hvICJ7IGdsb2JhbDoiID4gJGxpYi5leHB+Y2F0ICRleHBvcnRfc3ltYm9s
cyB8IHNlZCAtZSAicy9cKC4qXCkvXDE7LyIgPj4gJGxpYi5leHB+JGVjaG8gImxvY2FsOiAqOyB9
OyIgPj4gJGxpYi5leHB+Ci0gIAkkTEQgLUcke2FsbG93X3VuZGVmaW5lZF9mbGFnfSAtTSAkbGli
LmV4cCAtaCAkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFnc34k
cm0gJGxpYi5leHAnCi0gICAgICBmaQotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9saWJk
aXJfZmxhZ19zcGVjLCAkMSk9Jy1SJGxpYmRpcicKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNv
ZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAgICBjYXNlICRob3N0X29zIGluCi0gICAgICBz
b2xhcmlzMi5bWzAtNV1dIHwgc29sYXJpczIuW1swLTVdXS4qKSA7OwotICAgICAgKikgIyBTdXBw
b3J0ZWQgc2luY2UgU29sYXJpcyAyLjYgKG1heWJlIDIuNS4xPykKLQlfTFRfQUNfVEFHVkFSKHdo
b2xlX2FyY2hpdmVfZmxhZ19zcGVjLCAkMSk9Jy16IGFsbGV4dHJhY3QkY29udmVuaWVuY2UgLXog
ZGVmYXVsdGV4dHJhY3QnIDs7Ci0gICAgICBlc2FjCi0gICAgICBfTFRfQUNfVEFHVkFSKGxpbmtf
YWxsX2RlcGxpYnMsICQxKT15ZXMKLSAgICAgIDs7Ci0KLSAgICBzdW5vczQqKQotICAgICAgaWYg
dGVzdCAieCRob3N0X3ZlbmRvciIgPSB4c2VxdWVudDsgdGhlbgotCSMgVXNlICRDQyB0byBsaW5r
IHVuZGVyIHNlcXVlbnQsIGJlY2F1c2UgaXQgdGhyb3dzIGluIHNvbWUgZXh0cmEgLm8KLQkjIGZp
bGVzIHRoYXQgbWFrZSAuaW5pdCBhbmQgLmZpbmkgc2VjdGlvbnMgd29yay4KLQlfTFRfQUNfVEFH
VkFSKGFyY2hpdmVfY21kcywgJDEpPSckQ0MgLUcgJHt3bH0taCAkc29uYW1lIC1vICRsaWIgJGxp
Ym9ianMgJGRlcGxpYnMgJGNvbXBpbGVyX2ZsYWdzJwotICAgICAgZWxzZQotCV9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtYXNzZXJ0IHB1cmUtdGV4dCAtQnN0YXRpYyAtbyAk
bGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0gICAgICBmaQotICAgICAgX0xU
X0FDX1RBR1ZBUihoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjLCAkMSk9Jy1MJGxpYmRpcicKLSAg
ICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfZGlyZWN0LCAkMSk9eWVzCi0gICAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX21pbnVzX0wsICQxKT15ZXMKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFy
ZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAgICA7OwotCi0gICAgc3lzdjQpCi0gICAg
ICBpZiB0ZXN0ICJ4JGhvc3RfdmVuZG9yIiA9IHhzbmk7IHRoZW4KLQlfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckTEQgLUcgLUJzeW1ib2xpYyAtaCAkc29uYW1lIC1vICRsaWIgJGxp
Ym9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFncycKLQlfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2Rp
cmVjdCwgJDEpPXllcyAjIGlzIHRoaXMgcmVhbGx5IHRydWU/Pz8KLSAgICAgIGVsc2UKLQlfTFRf
QUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRs
aWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0JX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9k
aXJlY3QsICQxKT1ubyAjTW90b3JvbGEgbWFudWFsIHNheXMgeWVzLCBidXQgbXkgdGVzdHMgc2F5
IHRoZXkgbGllCi0gICAgICBmaQotICAgICAgcnVucGF0aF92YXI9J0xEX1JVTl9QQVRIJwotICAg
ICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9zaGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7
Ci0KLSAgICBzeXN2NC4zKikKLSAgICAgIF9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9
JyRMRCAtRyAtaCAkc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFn
cycKLSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0g
ICAgICBfTFRfQUNfVEFHVkFSKGV4cG9ydF9keW5hbWljX2ZsYWdfc3BlYywgJDEpPSctQmV4cG9y
dCcKLSAgICAgIDs7Ci0KLSAgICBzeXN2NCpNUCopCi0gICAgICBpZiB0ZXN0IC1kIC91c3IvbmVj
OyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1HIC1oICRzb25h
bWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkbGlua2VyX2ZsYWdzJwotCV9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0JcnVucGF0aF92YXI9TERfUlVOX1BB
VEgKLQloYXJkY29kZV9ydW5wYXRoX3Zhcj15ZXMKLQlfTFRfQUNfVEFHVkFSKGxkX3NobGlicywg
JDEpPXllcwotICAgICAgZmkKLSAgICAgIDs7Ci0KLSAgICBzeXN2NC4ydXcyKikKLSAgICAgIF9M
VF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzLCAkMSk9JyRMRCAtRyAtbyAkbGliICRsaWJvYmpzICRk
ZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2RpcmVj
dCwgJDEpPXllcwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9taW51c19MLCAkMSk9bm8K
LSAgICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAg
ICBoYXJkY29kZV9ydW5wYXRoX3Zhcj15ZXMKLSAgICAgIHJ1bnBhdGhfdmFyPUxEX1JVTl9QQVRI
Ci0gICAgICA7OwotCi0gICBzeXN2NU9wZW5VTklYOCogfCBzeXN2NVVuaXhXYXJlNyogfCAgc3lz
djV1d1tbNzhdXSogfCB1bml4d2FyZTcqKQotICAgICAgX0xUX0FDX1RBR1ZBUihub191bmRlZmlu
ZWRfZmxhZywgJDEpPScke3dsfS16ICR7d2x9dGV4dCcKLSAgICAgIGlmIHRlc3QgIiRHQ0MiID0g
eWVzOyB0aGVuCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJENDIC1zaGFyZWQg
JHt3bH0taCAke3dsfSRzb25hbWUgLW8gJGxpYiAkbGlib2JqcyAkZGVwbGlicyAkY29tcGlsZXJf
ZmxhZ3MnCi0gICAgICBlbHNlCi0JX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJEND
IC1HICR7d2x9LWggJHt3bH0kc29uYW1lIC1vICRsaWIgJGxpYm9ianMgJGRlcGxpYnMgJGNvbXBp
bGVyX2ZsYWdzJwotICAgICAgZmkKLSAgICAgIHJ1bnBhdGhfdmFyPSdMRF9SVU5fUEFUSCcKLSAg
ICAgIF9MVF9BQ19UQUdWQVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAgICA7
OwotCi0gICAgc3lzdjUqKQotICAgICAgX0xUX0FDX1RBR1ZBUihub191bmRlZmluZWRfZmxhZywg
JDEpPScgLXogdGV4dCcKLSAgICAgICMgJENDIC1zaGFyZWQgd2l0aG91dCBHTlUgbGQgd2lsbCBu
b3QgY3JlYXRlIGEgbGlicmFyeSBmcm9tIEMrKwotICAgICAgIyBvYmplY3QgZmlsZXMgYW5kIGEg
c3RhdGljIGxpYnN0ZGMrKywgYmV0dGVyIGF2b2lkIGl0IGJ5IG5vdwotICAgICAgX0xUX0FDX1RB
R1ZBUihhcmNoaXZlX2NtZHMsICQxKT0nJExEIC1HJHthbGxvd191bmRlZmluZWRfZmxhZ30gLWgg
JHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBsaWJzICRsaW5rZXJfZmxhZ3MnCi0gICAgICBf
TFRfQUNfVEFHVkFSKGFyY2hpdmVfZXhwc3ltX2NtZHMsICQxKT0nJGVjaG8gInsgZ2xvYmFsOiIg
PiAkbGliLmV4cH5jYXQgJGV4cG9ydF9zeW1ib2xzIHwgc2VkIC1lICJzL1woLipcKS9cMTsvIiA+
PiAkbGliLmV4cH4kZWNobyAibG9jYWw6ICo7IH07IiA+PiAkbGliLmV4cH4KLSAgCQkkTEQgLUck
e2FsbG93X3VuZGVmaW5lZF9mbGFnfSAtTSAkbGliLmV4cCAtaCAkc29uYW1lIC1vICRsaWIgJGxp
Ym9ianMgJGRlcGxpYnMgJGxpbmtlcl9mbGFnc34kcm0gJGxpYi5leHAnCi0gICAgICBfTFRfQUNf
VEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMsICQxKT0KLSAgICAgIF9MVF9BQ19UQUdW
QVIoaGFyZGNvZGVfc2hsaWJwYXRoX3ZhciwgJDEpPW5vCi0gICAgICBydW5wYXRoX3Zhcj0nTERf
UlVOX1BBVEgnCi0gICAgICA7OwotCi0gICAgdXRzNCopCi0gICAgICBfTFRfQUNfVEFHVkFSKGFy
Y2hpdmVfY21kcywgJDEpPSckTEQgLUcgLWggJHNvbmFtZSAtbyAkbGliICRsaWJvYmpzICRkZXBs
aWJzICRsaW5rZXJfZmxhZ3MnCi0gICAgICBfTFRfQUNfVEFHVkFSKGhhcmRjb2RlX2xpYmRpcl9m
bGFnX3NwZWMsICQxKT0nLUwkbGliZGlyJwotICAgICAgX0xUX0FDX1RBR1ZBUihoYXJkY29kZV9z
aGxpYnBhdGhfdmFyLCAkMSk9bm8KLSAgICAgIDs7Ci0KLSAgICAqKQotICAgICAgX0xUX0FDX1RB
R1ZBUihsZF9zaGxpYnMsICQxKT1ubwotICAgICAgOzsKLSAgICBlc2FjCi0gIGZpCi1dKQotQUNf
TVNHX1JFU1VMVChbJF9MVF9BQ19UQUdWQVIobGRfc2hsaWJzLCAkMSldKQotdGVzdCAiJF9MVF9B
Q19UQUdWQVIobGRfc2hsaWJzLCAkMSkiID0gbm8gJiYgY2FuX2J1aWxkX3NoYXJlZD1ubwotCi12
YXJpYWJsZXNfc2F2ZWRfZm9yX3JlbGluaz0iUEFUSCAkc2hsaWJwYXRoX3ZhciAkcnVucGF0aF92
YXIiCi1pZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgotICB2YXJpYWJsZXNfc2F2ZWRfZm9yX3Jl
bGluaz0iJHZhcmlhYmxlc19zYXZlZF9mb3JfcmVsaW5rIEdDQ19FWEVDX1BSRUZJWCBDT01QSUxF
Ul9QQVRIIExJQlJBUllfUEFUSCIKLWZpCi0KLSMKLSMgRG8gd2UgbmVlZCB0byBleHBsaWNpdGx5
IGxpbmsgbGliYz8KLSMKLV9MVF9BQ19UQUdWQVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT15
ZXMKLWlmIHRlc3QgIiRlbmFibGVfc2hhcmVkIiA9IHllcyAmJiB0ZXN0ICIkR0NDIiA9IHllczsg
dGhlbgotICBjYXNlICRfTFRfQUNfVEFHVkFSKGFyY2hpdmVfY21kcywgJDEpIGluCi0gIConficq
KQotICAgICMgRklYTUU6IHdlIG1heSBoYXZlIHRvIGRlYWwgd2l0aCBtdWx0aS1jb21tYW5kIHNl
cXVlbmNlcy4KLSAgICA7OwotICAnJENDICcqKQotICAgICMgVGVzdCB3aGV0aGVyIHRoZSBjb21w
aWxlciBpbXBsaWNpdGx5IGxpbmtzIHdpdGggLWxjIHNpbmNlIG9uIHNvbWUKLSAgICAjIHN5c3Rl
bXMsIC1sZ2NjIGhhcyB0byBjb21lIGJlZm9yZSAtbGMuIElmIGdjYyBhbHJlYWR5IHBhc3NlcyAt
bGMKLSAgICAjIHRvIGxkLCBkb24ndCBhZGQgLWxjIGJlZm9yZSAtbGdjYy4KLSAgICBBQ19NU0df
Q0hFQ0tJTkcoW3doZXRoZXIgLWxjIHNob3VsZCBiZSBleHBsaWNpdGx5IGxpbmtlZCBpbl0pCi0g
ICAgJHJtIGNvbmZ0ZXN0KgotICAgIGVjaG8gJ3N0YXRpYyBpbnQgZHVtbXk7JyA+IGNvbmZ0ZXN0
LiRhY19leHQKLQotICAgIGlmIEFDX1RSWV9FVkFMKGFjX2NvbXBpbGUpIDI+Y29uZnRlc3QuZXJy
OyB0aGVuCi0gICAgICBzb25hbWU9Y29uZnRlc3QKLSAgICAgIGxpYj1jb25mdGVzdAotICAgICAg
bGlib2Jqcz1jb25mdGVzdC4kYWNfb2JqZXh0Ci0gICAgICBkZXBsaWJzPQotICAgICAgd2w9JF9M
VF9BQ19UQUdWQVIobHRfcHJvZ19jb21waWxlcl93bCwgJDEpCi0gICAgICBjb21waWxlcl9mbGFn
cz0tdgotICAgICAgbGlua2VyX2ZsYWdzPS12Ci0gICAgICB2ZXJzdHJpbmc9Ci0gICAgICBvdXRw
dXRfb2JqZGlyPS4KLSAgICAgIGxpYm5hbWU9Y29uZnRlc3QKLSAgICAgIGx0X3NhdmVfYWxsb3df
dW5kZWZpbmVkX2ZsYWc9JF9MVF9BQ19UQUdWQVIoYWxsb3dfdW5kZWZpbmVkX2ZsYWcsICQxKQot
ICAgICAgX0xUX0FDX1RBR1ZBUihhbGxvd191bmRlZmluZWRfZmxhZywgJDEpPQotICAgICAgaWYg
QUNfVFJZX0VWQUwoX0xUX0FDX1RBR1ZBUihhcmNoaXZlX2NtZHMsICQxKSAyXD5cJjEgXHwgZ3Jl
cCBcIiAtbGMgXCIgXD4vZGV2L251bGwgMlw+XCYxKQotICAgICAgdGhlbgotCV9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT1ubwotICAgICAgZWxzZQotCV9MVF9BQ19UQUdW
QVIoYXJjaGl2ZV9jbWRzX25lZWRfbGMsICQxKT15ZXMKLSAgICAgIGZpCi0gICAgICBfTFRfQUNf
VEFHVkFSKGFsbG93X3VuZGVmaW5lZF9mbGFnLCAkMSk9JGx0X3NhdmVfYWxsb3dfdW5kZWZpbmVk
X2ZsYWcKLSAgICBlbHNlCi0gICAgICBjYXQgY29uZnRlc3QuZXJyIDE+JjUKLSAgICBmaQotICAg
ICRybSBjb25mdGVzdCoKLSAgICBBQ19NU0dfUkVTVUxUKFskX0xUX0FDX1RBR1ZBUihhcmNoaXZl
X2NtZHNfbmVlZF9sYywgJDEpXSkKLSAgICA7OwotICBlc2FjCi1maQotXSkjIEFDX0xJQlRPT0xf
UFJPR19MRF9TSExJQlMKLQotCi0jIF9MVF9BQ19GSUxFX0xURExMX0MKLSMgLS0tLS0tLS0tLS0t
LS0tLS0tLQotIyBCZSBjYXJlZnVsIHRoYXQgdGhlIHN0YXJ0IG1hcmtlciBhbHdheXMgZm9sbG93
cyBhIG5ld2xpbmUuCi1BQ19ERUZVTihbX0xUX0FDX0ZJTEVfTFRETExfQ10sIFsKLSMgLyogbHRk
bGwuYyBzdGFydHMgaGVyZSAqLwotIyAjZGVmaW5lIFdJTjMyX0xFQU5fQU5EX01FQU4KLSMgI2lu
Y2x1ZGUgPHdpbmRvd3MuaD4KLSMgI3VuZGVmIFdJTjMyX0xFQU5fQU5EX01FQU4KLSMgI2luY2x1
ZGUgPHN0ZGlvLmg+Ci0jCi0jICNpZm5kZWYgX19DWUdXSU5fXwotIyAjICBpZmRlZiBfX0NZR1dJ
TjMyX18KLSMgIyAgICBkZWZpbmUgX19DWUdXSU5fXyBfX0NZR1dJTjMyX18KLSMgIyAgZW5kaWYK
LSMgI2VuZGlmCi0jCi0jICNpZmRlZiBfX2NwbHVzcGx1cwotIyBleHRlcm4gIkMiIHsKLSMgI2Vu
ZGlmCi0jIEJPT0wgQVBJRU5UUlkgRGxsTWFpbiAoSElOU1RBTkNFIGhJbnN0LCBEV09SRCByZWFz
b24sIExQVk9JRCByZXNlcnZlZCk7Ci0jICNpZmRlZiBfX2NwbHVzcGx1cwotIyB9Ci0jICNlbmRp
ZgotIwotIyAjaWZkZWYgX19DWUdXSU5fXwotIyAjaW5jbHVkZSA8Y3lnd2luL2N5Z3dpbl9kbGwu
aD4KLSMgREVDTEFSRV9DWUdXSU5fRExMKCBEbGxNYWluICk7Ci0jICNlbmRpZgotIyBISU5TVEFO
Q0UgX19oRGxsSW5zdGFuY2VfYmFzZTsKLSMKLSMgQk9PTCBBUElFTlRSWQotIyBEbGxNYWluIChI
SU5TVEFOQ0UgaEluc3QsIERXT1JEIHJlYXNvbiwgTFBWT0lEIHJlc2VydmVkKQotIyB7Ci0jICAg
X19oRGxsSW5zdGFuY2VfYmFzZSA9IGhJbnN0OwotIyAgIHJldHVybiBUUlVFOwotIyB9Ci0jIC8q
IGx0ZGxsLmMgZW5kcyBoZXJlICovCi1dKSMgX0xUX0FDX0ZJTEVfTFRETExfQwotCi0KLSMgX0xU
X0FDX0ZJTEVfSU1QR0VOX0MKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgQmUgY2FyZWZ1bCB0
aGF0IHRoZSBzdGFydCBtYXJrZXIgYWx3YXlzIGZvbGxvd3MgYSBuZXdsaW5lLgotQUNfREVGVU4o
W19MVF9BQ19GSUxFX0lNUEdFTl9DXSwgWwotIyAvKiBpbXBnZW4uYyBzdGFydHMgaGVyZSAqLwot
IyAvKiAgIENvcHlyaWdodCAoQykgMTk5OSwgMjAwMCwgMjAwMSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4KLSMKLSMgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBsaWJ0b29sLgotIwot
IyAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0
IGFuZC9vciBtb2RpZnkKLSMgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwg
UHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci0jICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgotIyAgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLSMKLSMgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmli
dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotIyAgYnV0IFdJVEhPVVQg
QU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSMgIE1F
UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0
aGUKLSMgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0jCi0j
ICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZQotIyAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8g
dGhlIEZyZWUgU29mdHdhcmUKLSMgIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAt
IFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCi0jICAqLwotIwotIyAjaW5j
bHVkZSA8c3RkaW8uaD4JCS8qIGZvciBwcmludGYoKSAqLwotIyAjaW5jbHVkZSA8dW5pc3RkLmg+
CQkvKiBmb3Igb3BlbigpLCBsc2VlaygpLCByZWFkKCkgKi8KLSMgI2luY2x1ZGUgPGZjbnRsLmg+
CQkvKiBmb3IgT19SRE9OTFksIE9fQklOQVJZICovCi0jICNpbmNsdWRlIDxzdHJpbmcuaD4JCS8q
IGZvciBzdHJkdXAoKSAqLwotIwotIyAvKiBPX0JJTkFSWSBpc24ndCByZXF1aXJlZCAob3IgZXZl
biBkZWZpbmVkIHNvbWV0aW1lcykgdW5kZXIgVW5peCAqLwotIyAjaWZuZGVmIE9fQklOQVJZCi0j
ICNkZWZpbmUgT19CSU5BUlkgMAotIyAjZW5kaWYKLSMKLSMgc3RhdGljIHVuc2lnbmVkIGludAot
IyBwZV9nZXQxNiAoZmQsIG9mZnNldCkKLSMgICAgICBpbnQgZmQ7Ci0jICAgICAgaW50IG9mZnNl
dDsKLSMgewotIyAgIHVuc2lnbmVkIGNoYXIgYlsyXTsKLSMgICBsc2VlayAoZmQsIG9mZnNldCwg
U0VFS19TRVQpOwotIyAgIHJlYWQgKGZkLCBiLCAyKTsKLSMgICByZXR1cm4gYlswXSArIChiWzFd
PDw4KTsKLSMgfQotIwotIyBzdGF0aWMgdW5zaWduZWQgaW50Ci0jIHBlX2dldDMyIChmZCwgb2Zm
c2V0KQotIyAgICAgaW50IGZkOwotIyAgICAgaW50IG9mZnNldDsKLSMgewotIyAgIHVuc2lnbmVk
IGNoYXIgYls0XTsKLSMgICBsc2VlayAoZmQsIG9mZnNldCwgU0VFS19TRVQpOwotIyAgIHJlYWQg
KGZkLCBiLCA0KTsKLSMgICByZXR1cm4gYlswXSArIChiWzFdPDw4KSArIChiWzJdPDwxNikgKyAo
YlszXTw8MjQpOwotIyB9Ci0jCi0jIHN0YXRpYyB1bnNpZ25lZCBpbnQKLSMgcGVfYXMzMiAocHRy
KQotIyAgICAgIHZvaWQgKnB0cjsKLSMgewotIyAgIHVuc2lnbmVkIGNoYXIgKmIgPSBwdHI7Ci0j
ICAgcmV0dXJuIGJbMF0gKyAoYlsxXTw8OCkgKyAoYlsyXTw8MTYpICsgKGJbM108PDI0KTsKLSMg
fQotIwotIyBpbnQKLSMgbWFpbiAoYXJnYywgYXJndikKLSMgICAgIGludCBhcmdjOwotIyAgICAg
Y2hhciAqYXJndltdOwotIyB7Ci0jICAgICBpbnQgZGxsOwotIyAgICAgdW5zaWduZWQgbG9uZyBw
ZV9oZWFkZXJfb2Zmc2V0LCBvcHRoZHJfb2ZzLCBudW1fZW50cmllcywgaTsKLSMgICAgIHVuc2ln
bmVkIGxvbmcgZXhwb3J0X3J2YSwgZXhwb3J0X3NpemUsIG5zZWN0aW9ucywgc2VjcHRyLCBleHBw
dHI7Ci0jICAgICB1bnNpZ25lZCBsb25nIG5hbWVfcnZhcywgbmV4cDsKLSMgICAgIHVuc2lnbmVk
IGNoYXIgKmV4cGRhdGEsICplcnZhOwotIyAgICAgY2hhciAqZmlsZW5hbWUsICpkbGxfbmFtZTsK
LSMKLSMgICAgIGZpbGVuYW1lID0gYXJndlsxXTsKLSMKLSMgICAgIGRsbCA9IG9wZW4oZmlsZW5h
bWUsIE9fUkRPTkxZfE9fQklOQVJZKTsKLSMgICAgIGlmIChkbGwgPCAxKQotIyAJcmV0dXJuIDE7
Ci0jCi0jICAgICBkbGxfbmFtZSA9IGZpbGVuYW1lOwotIwotIyAgICAgZm9yIChpPTA7IGZpbGVu
YW1lW2ldOyBpKyspCi0jIAlpZiAoZmlsZW5hbWVbaV0gPT0gJy8nIHx8IGZpbGVuYW1lW2ldID09
ICdcXCcgIHx8IGZpbGVuYW1lW2ldID09ICc6JykKLSMgCSAgICBkbGxfbmFtZSA9IGZpbGVuYW1l
ICsgaSArMTsKLSMKLSMgICAgIHBlX2hlYWRlcl9vZmZzZXQgPSBwZV9nZXQzMiAoZGxsLCAweDNj
KTsKLSMgICAgIG9wdGhkcl9vZnMgPSBwZV9oZWFkZXJfb2Zmc2V0ICsgNCArIDIwOwotIyAgICAg
bnVtX2VudHJpZXMgPSBwZV9nZXQzMiAoZGxsLCBvcHRoZHJfb2ZzICsgOTIpOwotIwotIyAgICAg
aWYgKG51bV9lbnRyaWVzIDwgMSkgLyogbm8gZXhwb3J0cyAqLwotIyAJcmV0dXJuIDE7Ci0jCi0j
ICAgICBleHBvcnRfcnZhID0gcGVfZ2V0MzIgKGRsbCwgb3B0aGRyX29mcyArIDk2KTsKLSMgICAg
IGV4cG9ydF9zaXplID0gcGVfZ2V0MzIgKGRsbCwgb3B0aGRyX29mcyArIDEwMCk7Ci0jICAgICBu
c2VjdGlvbnMgPSBwZV9nZXQxNiAoZGxsLCBwZV9oZWFkZXJfb2Zmc2V0ICsgNCArMik7Ci0jICAg
ICBzZWNwdHIgPSAocGVfaGVhZGVyX29mZnNldCArIDQgKyAyMCArCi0jIAkgICAgICBwZV9nZXQx
NiAoZGxsLCBwZV9oZWFkZXJfb2Zmc2V0ICsgNCArIDE2KSk7Ci0jCi0jICAgICBleHBwdHIgPSAw
OwotIyAgICAgZm9yIChpID0gMDsgaSA8IG5zZWN0aW9uczsgaSsrKQotIyAgICAgewotIyAJY2hh
ciBzbmFtZVs4XTsKLSMgCXVuc2lnbmVkIGxvbmcgc2VjcHRyMSA9IHNlY3B0ciArIDQwICogaTsK
LSMgCXVuc2lnbmVkIGxvbmcgdmFkZHIgPSBwZV9nZXQzMiAoZGxsLCBzZWNwdHIxICsgMTIpOwot
IyAJdW5zaWduZWQgbG9uZyB2c2l6ZSA9IHBlX2dldDMyIChkbGwsIHNlY3B0cjEgKyAxNik7Ci0j
IAl1bnNpZ25lZCBsb25nIGZwdHIgPSBwZV9nZXQzMiAoZGxsLCBzZWNwdHIxICsgMjApOwotIyAJ
bHNlZWsoZGxsLCBzZWNwdHIxLCBTRUVLX1NFVCk7Ci0jIAlyZWFkKGRsbCwgc25hbWUsIDgpOwot
IyAJaWYgKHZhZGRyIDw9IGV4cG9ydF9ydmEgJiYgdmFkZHIrdnNpemUgPiBleHBvcnRfcnZhKQot
IyAJewotIyAJICAgIGV4cHB0ciA9IGZwdHIgKyAoZXhwb3J0X3J2YSAtIHZhZGRyKTsKLSMgCSAg
ICBpZiAoZXhwb3J0X3J2YSArIGV4cG9ydF9zaXplID4gdmFkZHIgKyB2c2l6ZSkKLSMgCQlleHBv
cnRfc2l6ZSA9IHZzaXplIC0gKGV4cG9ydF9ydmEgLSB2YWRkcik7Ci0jIAkgICAgYnJlYWs7Ci0j
IAl9Ci0jICAgICB9Ci0jCi0jICAgICBleHBkYXRhID0gKHVuc2lnbmVkIGNoYXIqKW1hbGxvYyhl
eHBvcnRfc2l6ZSk7Ci0jICAgICBsc2VlayAoZGxsLCBleHBwdHIsIFNFRUtfU0VUKTsKLSMgICAg
IHJlYWQgKGRsbCwgZXhwZGF0YSwgZXhwb3J0X3NpemUpOwotIyAgICAgZXJ2YSA9IGV4cGRhdGEg
LSBleHBvcnRfcnZhOwotIwotIyAgICAgbmV4cCA9IHBlX2FzMzIgKGV4cGRhdGErMjQpOwotIyAg
ICAgbmFtZV9ydmFzID0gcGVfYXMzMiAoZXhwZGF0YSszMik7Ci0jCi0jICAgICBwcmludGYgKCJF
WFBPUlRTXG4iKTsKLSMgICAgIGZvciAoaSA9IDA7IGk8bmV4cDsgaSsrKQotIyAgICAgewotIyAJ
dW5zaWduZWQgbG9uZyBuYW1lX3J2YSA9IHBlX2FzMzIgKGVydmErbmFtZV9ydmFzK2kqNCk7Ci0j
IAlwcmludGYgKCJcdCVzIEAgJWxkIDtcbiIsIGVydmErbmFtZV9ydmEsIDErIGkpOwotIyAgICAg
fQotIwotIyAgICAgcmV0dXJuIDA7Ci0jIH0KLSMgLyogaW1wZ2VuLmMgZW5kcyBoZXJlICovCi1d
KSMgX0xUX0FDX0ZJTEVfSU1QR0VOX0MKLQotIyBfTFRfQUNfVEFHVkFSKFZBUk5BTUUsIFtUQUdO
QU1FXSkKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1BQ19ERUZVTihbX0xU
X0FDX1RBR1ZBUl0sIFtpZmVsc2UoWyQyXSwgW10sIFskMV0sIFskMV8kMl0pXSkKLQotCi0jIG9s
ZCBuYW1lcwotQUNfREVGVU4oW0FNX1BST0dfTElCVE9PTF0sICAgW0FDX1BST0dfTElCVE9PTF0p
Ci1BQ19ERUZVTihbQU1fRU5BQkxFX1NIQVJFRF0sICBbQUNfRU5BQkxFX1NIQVJFRCgkQCldKQot
QUNfREVGVU4oW0FNX0VOQUJMRV9TVEFUSUNdLCAgW0FDX0VOQUJMRV9TVEFUSUMoJEApXSkKLUFD
X0RFRlVOKFtBTV9ESVNBQkxFX1NIQVJFRF0sIFtBQ19ESVNBQkxFX1NIQVJFRCgkQCldKQotQUNf
REVGVU4oW0FNX0RJU0FCTEVfU1RBVElDXSwgW0FDX0RJU0FCTEVfU1RBVElDKCRAKV0pCi1BQ19E
RUZVTihbQU1fUFJPR19MRF0sICAgICAgICBbQUNfUFJPR19MRF0pCi1BQ19ERUZVTihbQU1fUFJP
R19OTV0sICAgICAgICBbQUNfUFJPR19OTV0pCi0KLSMgVGhpcyBpcyBqdXN0IHRvIHNpbGVuY2Ug
YWNsb2NhbCBhYm91dCB0aGUgbWFjcm8gbm90IGJlaW5nIHVzZWQKLWlmZWxzZShbQUNfRElTQUJM
RV9GQVNUX0lOU1RBTExdKQotCi1BQ19ERUZVTihbTFRfQUNfUFJPR19HQ0pdLAotW0FDX0NIRUNL
X1RPT0woR0NKLCBnY2osIG5vKQotICB0ZXN0ICJ4JHtHQ0pGTEFHUytzZXR9IiA9IHhzZXQgfHwg
R0NKRkxBR1M9Ii1nIC1PMiIKLSAgQUNfU1VCU1QoR0NKRkxBR1MpCi1dKQotCi1BQ19ERUZVTihb
TFRfQUNfUFJPR19SQ10sCi1bQUNfQ0hFQ0tfVE9PTChSQywgd2luZHJlcywgbm8pCi1dKQotCi0j
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMKLSMgTk9URTogVGhpcyBtYWNybyBoYXMgYmVlbiBzdWJtaXR0ZWQgZm9yIGluY2x1c2lvbiBp
bnRvICAgIwotIyAgR05VIEF1dG9jb25mIGFzIEFDX1BST0dfU0VELiAgV2hlbiBpdCBpcyBhdmFp
bGFibGUgaW4gICAjCi0jICBhIHJlbGVhc2VkIHZlcnNpb24gb2YgQXV0b2NvbmYgd2Ugc2hvdWxk
IHJlbW92ZSB0aGlzICAgICMKLSMgIG1hY3JvIGFuZCB1c2UgaXQgaW5zdGVhZC4gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIExUX0FDX1BST0dfU0VECi0jIC0tLS0tLS0t
LS0tLS0tCi0jIENoZWNrIGZvciBhIGZ1bGx5LWZ1bmN0aW9uYWwgc2VkIHByb2dyYW0sIHRoYXQg
dHJ1bmNhdGVzCi0jIGFzIGZldyBjaGFyYWN0ZXJzIGFzIHBvc3NpYmxlLiAgUHJlZmVyIEdOVSBz
ZWQgaWYgZm91bmQuCi1BQ19ERUZVTihbTFRfQUNfUFJPR19TRURdLAotW0FDX01TR19DSEVDS0lO
RyhbZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0XSkKLUFDX0NBQ0hFX1ZB
TChsdF9jdl9wYXRoX1NFRCwKLVsjIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBhdGggYW5kIHRl
c3QgZm9yIHNlZCBhbmQgZ3NlZC4KLSMgVGhlbiB1c2UgdGhhdCBsaXN0IG9mIHNlZCdzIGFzIG9u
ZXMgdG8gdGVzdCBmb3IgdHJ1bmNhdGlvbi4KLWFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9T
RVBBUkFUT1IKLWZvciBhc19kaXIgaW4gJFBBVEgKLWRvCi0gIElGUz0kYXNfc2F2ZV9JRlMKLSAg
dGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KLSAgZm9yIGFjX3Byb2cgaW4gc2VkIGdzZWQ7
IGRvCi0gICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7
IGRvCi0gICAgICBpZiAkYXNfZXhlY3V0YWJsZV9wICIkYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNf
ZXh0IjsgdGhlbgotICAgICAgICBfc2VkX2xpc3Q9IiRfc2VkX2xpc3QgJGFzX2Rpci8kYWNfcHJv
ZyRhY19leGVjX2V4dCIKLSAgICAgIGZpCi0gICAgZG9uZQotICBkb25lCi1kb25lCi0KLSAgIyBD
cmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgaG9vayBmb3IgaXRzIHJlbW92YWwgdW5s
ZXNzIGRlYnVnZ2luZy4KLSRkZWJ1ZyB8fAotewotICB0cmFwICdleGl0X3N0YXR1cz0kPzsgcm0g
LXJmICR0bXAgJiYgZXhpdCAkZXhpdF9zdGF0dXMnIDAKLSAgdHJhcCAneyAoZXhpdCAxKTsgZXhp
dCAxOyB9JyAxIDIgMTMgMTUKLX0KLQotIyBDcmVhdGUgYSAoc2VjdXJlKSB0bXAgZGlyZWN0b3J5
IGZvciB0bXAgZmlsZXMuCi06ICR7VE1QRElSPS90bXB9Ci17Ci0gIHRtcD1gKHVtYXNrIDA3NyAm
JiBta3RlbXAgLWQgLXEgIiRUTVBESVIvc2VkWFhYWFhYIikgMj4vZGV2L251bGxgICYmCi0gIHRl
c3QgLW4gIiR0bXAiICYmIHRlc3QgLWQgIiR0bXAiCi19ICB8fAotewotICB0bXA9JFRNUERJUi9z
ZWQkJC0kUkFORE9NCi0gICh1bWFzayAwNzcgJiYgbWtkaXIgJHRtcCkKLX0gfHwKLXsKLSAgIGVj
aG8gIiRtZTogY2Fubm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgaW4gJFRNUERJUiIg
PiYyCi0gICB7IChleGl0IDEpOyBleGl0IDE7IH0KLX0KLSAgX21heD0wCi0gIF9jb3VudD0wCi0g
ICMgQWRkIC91c3IveHBnNC9iaW4vc2VkIGFzIGl0IGlzIHR5cGljYWxseSBmb3VuZCBvbiBTb2xh
cmlzCi0gICMgYWxvbmcgd2l0aCAvYmluL3NlZCB0aGF0IHRydW5jYXRlcyBvdXRwdXQuCi0gIGZv
ciBfc2VkIGluICRfc2VkX2xpc3QgL3Vzci94cGc0L2Jpbi9zZWQ7IGRvCi0gICAgdGVzdCAhIC1m
ICR7X3NlZH0gJiYgYnJlYWsKLSAgICBjYXQgL2Rldi9udWxsID4gIiR0bXAvc2VkLmluIgotICAg
IF9jb3VudD0wCi0gICAgZWNobyAkRUNIT19OICIwMTIzNDU2Nzg5JEVDSE9fQyIgPiIkdG1wL3Nl
ZC5pbiIKLSAgICAjIENoZWNrIGZvciBHTlUgc2VkIGFuZCBzZWxlY3QgaXQgaWYgaXQgaXMgZm91
bmQuCi0gICAgaWYgIiR7X3NlZH0iIC0tdmVyc2lvbiAyPiYxIDwgL2Rldi9udWxsIHwgZWdyZXAg
JyhHTlUpJyA+IC9kZXYvbnVsbDsgdGhlbgotICAgICAgbHRfY3ZfcGF0aF9TRUQ9JHtfc2VkfQot
ICAgICAgYnJlYWs7Ci0gICAgZmkKLSAgICB3aGlsZSB0cnVlOyBkbwotICAgICAgY2F0ICIkdG1w
L3NlZC5pbiIgIiR0bXAvc2VkLmluIiA+IiR0bXAvc2VkLnRtcCIKLSAgICAgIG12ICIkdG1wL3Nl
ZC50bXAiICIkdG1wL3NlZC5pbiIKLSAgICAgIGNwICIkdG1wL3NlZC5pbiIgIiR0bXAvc2VkLm5s
IgotICAgICAgZWNobyA+PiIkdG1wL3NlZC5ubCIKLSAgICAgICR7X3NlZH0gLWUgJ3MvYSQvLycg
PCAiJHRtcC9zZWQubmwiID4iJHRtcC9zZWQub3V0IiB8fCBicmVhawotICAgICAgY21wIC1zICIk
dG1wL3NlZC5vdXQiICIkdG1wL3NlZC5ubCIgfHwgYnJlYWsKLSAgICAgICMgMTAwMDAgY2hhcnMg
YXMgaW5wdXQgc2VlbXMgbW9yZSB0aGFuIGVub3VnaAotICAgICAgdGVzdCAkX2NvdW50IC1ndCAx
MCAmJiBicmVhawotICAgICAgX2NvdW50PWBleHByICRfY291bnQgKyAxYAotICAgICAgaWYgdGVz
dCAkX2NvdW50IC1ndCAkX21heDsgdGhlbgotICAgICAgICBfbWF4PSRfY291bnQKLSAgICAgICAg
bHRfY3ZfcGF0aF9TRUQ9JF9zZWQKLSAgICAgIGZpCi0gICAgZG9uZQotICBkb25lCi0gIHJtIC1y
ZiAiJHRtcCIKLV0pCi1BQ19NU0dfUkVTVUxUKFskU0VEXSkKLV0pCmRpZmYgLXVyTiBjZWxlc3Rp
YS0xLjUuMS9jb25maWd1cmUgY2VsZXN0aWEtMS41LjFfYXJ0cy9jb25maWd1cmUKLS0tIGNlbGVz
dGlhLTEuNS4xL2NvbmZpZ3VyZQkyMDA4LTA0LTI0IDAxOjI3OjM1LjAwMDAwMDAwMCArMDQwMAor
KysgY2VsZXN0aWEtMS41LjFfYXJ0cy9jb25maWd1cmUJMjAwOC0wNi0yMyAxNjoxNjowNi4wMDAw
MDAwMDAgKzA0MDAKQEAgLTE2OTgsNiArMTY5OCw3IEBACiAgIC0td2l0aC1xdC1kaXI9RElSICAg
ICAgIHdoZXJlIHRoZSByb290IG9mIFF0IGlzIGluc3RhbGxlZAogICAtLXdpdGgtcXQtaW5jbHVk
ZXM9RElSICB3aGVyZSB0aGUgUXQgaW5jbHVkZXMgYXJlLgogICAtLXdpdGgtcXQtbGlicmFyaWVz
PURJUiB3aGVyZSB0aGUgUXQgbGlicmFyeSBpcyBpbnN0YWxsZWQuCisgIC0td2l0aG91dC1hcnRz
ICAgICAgICAgIGJ1aWxkIHdpdGhvdXQgYVJ0cyBkZWZhdWx0PW5vCiAgIC0td2l0aC1sdWEgICAg
ICAgICAgICAgIFVzZSBMdWEgZm9yIENlbGVzdGlhIEV4dGVuc2lvbiBMYW5ndWFnZSBzdXBwb3J0
CiAKIFNvbWUgaW5mbHVlbnRpYWwgZW52aXJvbm1lbnQgdmFyaWFibGVzOgpAQCAtMzMyMTQsNyAr
MzMyMTUsMjkgQEAKIAogYmluZGlyPSRrZGVfYmluZGlyCiAKKyMgQ2hlY2sgd2hldGhlciAtLXdp
dGgtYXJ0cyB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfYXJ0cytzZXR9IiA9IHNldDsgdGhl
bgorICB3aXRodmFsPSR3aXRoX2FydHM7IGJ1aWxkX2FydHM9JHdpdGh2YWwKK2Vsc2UKKyAgYnVp
bGRfYXJ0cz15ZXMKKworZmkKKworICAgICBpZiB0ZXN0ICIkYnVpbGRfYXJ0cyIgJyE9JyAibm8i
OyB0aGVuCisgIGluY2x1ZGVfQVJUU19UUlVFPQorICBpbmNsdWRlX0FSVFNfRkFMU0U9JyMnCitl
bHNlCisgIGluY2x1ZGVfQVJUU19UUlVFPScjJworICBpbmNsdWRlX0FSVFNfRkFMU0U9CitmaQor
CisgICAgaWYgdGVzdCAiJGJ1aWxkX2FydHMiID0gIm5vIjsgdGhlbgorCitjYXQgPj5jb25mZGVm
cy5oIDw8XF9BQ0VPRgorI2RlZmluZSBXSVRIT1VUX0FSVFMgMQorX0FDRU9GCiAKKyAgICBmaQog
CiAgICAgICAgIGtkZV9kZWZhdWx0X2JpbmRpcnM9Ii91c3IvYmluIC91c3IvbG9jYWwvYmluIC9v
cHQvbG9jYWwvYmluIC91c3IvWDExUjYvYmluIC9vcHQva2RlL2JpbiAvb3B0L2tkZTMvYmluIC91
c3Iva2RlL2JpbiAvdXNyL2xvY2FsL2tkZS9iaW4iCiAgICAgICAgIHRlc3QgLW4gIiRLREVESVIi
ICYmIGtkZV9kZWZhdWx0X2JpbmRpcnM9IiRLREVESVIvYmluICRrZGVfZGVmYXVsdF9iaW5kaXJz
IgpAQCAtMzMzNTksNyArMzMzODIsNyBAQAogCiAgICBmaQogCi0KKyAgIGlmIHRlc3QgIiRidWls
ZF9hcnRzIiAnIT0nICJubyI7IHRoZW4KICAgIHsgZWNobyAiJGFzX21lOiRMSU5FTk86IGNoZWNr
aW5nIGZvciBtY29waWRsIiA+JjUKIGVjaG8gJEVDSE9fTiAiY2hlY2tpbmcgZm9yIG1jb3BpZGwu
Li4gJEVDSE9fQyIgPiY2OyB9CiAgICBpZiB0ZXN0IC1uICIkTUNPUElETCI7IHRoZW4K
</data>        

          </attachment>
    </bug>

</bugzilla>