<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>219109</bug_id>
          
          <creation_ts>2020-11-18 13:37:46 -0800</creation_ts>
          <short_desc>Update test262 (2020.11.18)</short_desc>
          <delta_ts>2020-11-18 14:27:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ross Kirsling">ross.kirsling</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1708744</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-11-18 13:37:46 -0800</bug_when>
    <thetext>Update test262 (2020.11.18)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708746</commentid>
    <comment_count>1</comment_count>
      <attachid>414477</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-11-18 13:38:48 -0800</bug_when>
    <thetext>Created attachment 414477
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708764</commentid>
    <comment_count>2</comment_count>
      <attachid>414477</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-11-18 13:55:55 -0800</bug_when>
    <thetext>Comment on attachment 414477
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708777</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-18 14:26:51 -0800</bug_when>
    <thetext>Committed r269986: &lt;https://trac.webkit.org/changeset/269986&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 414477.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708778</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-18 14:27:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/71555699&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414477</attachid>
            <date>2020-11-18 13:38:48 -0800</date>
            <delta_ts>2020-11-18 14:26:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219109-20201118133847.patch</filename>
            <type>text/plain</type>
            <size>108022</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5OTc3CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxv
ZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IGFhY2FhMTVkZWMyODQ0YTQyNGE5OGIzNzQzZjE5
ZDRkZDA2ODljMmQuLjdmMGM3ZGJlZWQ4YThmY2I2OWM5MzQyNTM4ODYwMjk1ZmI0NjdlNWUgMTAw
NjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMjAtMTEtMTggIFJvc3MgS2lyc2xpbmcgIDxyb3NzLmtpcnNsaW5nQHNv
bnkuY29tPgorCisgICAgICAgIFVwZGF0ZSB0ZXN0MjYyICgyMDIwLjExLjE4KQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5MTA5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0MjYyL2NvbmZpZy55
YW1sOgorICAgICAgICAqIHRlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWw6CisgICAgICAgICogdGVz
dDI2Mi9sYXRlc3QtY2hhbmdlcy1zdW1tYXJ5LnR4dDoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdDI2Mi1SZXZpc2lvbi50eHQ6CisKIDIwMjAtMTEtMTgg
IFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2Vk
LCByZWxhbmRpbmcgcjI2OTk0MApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL2NvbmZpZy55
YW1sIGIvSlNUZXN0cy90ZXN0MjYyL2NvbmZpZy55YW1sCmluZGV4IGQzMDhjYjZkN2MyNzc2N2Vh
YjJhMWY5M2Y0MTc2Mzg5YTY1ZGJlODEuLmZkOTZlMjBhYTVhMDQ0NmQxMWY5OGE0OTJhNjVlMzA0
NjFkOGNmNTMgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi9jb25maWcueWFtbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvY29uZmlnLnlhbWwKQEAgLTgsNiArOCw4IEBAIGZsYWdzOgogICBJbnRs
LkRhdGVUaW1lRm9ybWF0LWRheVBlcmlvZDogdXNlSW50bERhdGVUaW1lRm9ybWF0RGF5UGVyaW9k
CiAgIFNoYXJlZEFycmF5QnVmZmVyOiB1c2VTaGFyZWRBcnJheUJ1ZmZlcgogICBBdG9taWNzOiB1
c2VTaGFyZWRBcnJheUJ1ZmZlcgorICBBcnJheS5wcm90b3R5cGUuYXQ6IHVzZUF0TWV0aG9kCisg
IFR5cGVkQXJyYXkucHJvdG90eXBlLmF0OiB1c2VBdE1ldGhvZAogc2tpcDoKICAgZmVhdHVyZXM6
CiAgICAgLSBBdG9taWNzLndhaXRBc3luYwpAQCAtMjYsMTIgKzI4LDcgQEAgc2tpcDoKICAgICAt
IHRvcC1sZXZlbC1hd2FpdAogICAgIC0gSW50bC5MaXN0Rm9ybWF0CiAKLSAgICAjIHJlbW92ZSBv
bmNlIGl0J3MgYmVlbiByZW5hbWVkIGluIHRlc3QyNjIKLSAgICAtIEFycmF5LnByb3RvdHlwZS5p
dGVtCi0gICAgLSBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtCi0KLSAgICAjIHJlbW92ZSBvbmNl
IGl0J3Mgbm8gbG9uZ2VyIGluIHRlc3QyNjIKLSAgICAtIFN0cmluZy5wcm90b3R5cGUuaXRlbQor
ICAgIC0gU3RyaW5nLnByb3RvdHlwZS5hdAogICBwYXRoczoKICAgICAtIHRlc3QvYnVpbHQtaW5z
L0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRCaWdJbnQ2NAogICAgIC0gdGVzdC9idWlsdC1pbnMvRGF0
YVZpZXcvcHJvdG90eXBlL2dldEJpZ1VpbnQ2NApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L2V4cGVjdGF0aW9ucy55YW1sIGIvSlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCmlu
ZGV4IDk3Y2MwNjY1NzExODk5MmJmYzMxZWZlODYxYWJiZmJkODhkZmJiZTQuLjlhNjkzODZkMTgx
OGVhYjA4YmEzZmM4YWQzNTgwMDE0YTlkZjAyNDEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2
Mi9leHBlY3RhdGlvbnMueWFtbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlh
bWwKQEAgLTgyMyw2ICs4MjMsOSBAQCB0ZXN0L2J1aWx0LWlucy9SZWdFeHAvcHJvdG90eXBlL2V4
ZWMvdS1sYXN0aW5kZXgtYWR2LmpzOgogdGVzdC9idWlsdC1pbnMvUmVnRXhwL3F1YW50aWZpZXIt
aW50ZWdlci1saW1pdC5qczoKICAgZGVmYXVsdDogJ1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3Vs
YXIgZXhwcmVzc2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyJwogICBzdHJp
Y3QgbW9kZTogJ1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbjogbnVtYmVy
IHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyJwordGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9w
cm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzOgorICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBkZXNj
cmlwdG9yIHNob3VsZCBiZSB3cml0YWJsZScKKyAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IGRlc2NyaXB0b3Igc2hvdWxkIGJlIHdyaXRhYmxlJwogdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvaW5jbHVkZXMvZGV0YWNoZWQtYnVmZmVyLXRvaW50ZWdlci5qczoKICAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1
dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJy
YXkuKScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9y
IHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQgYWxsIChUZXN0aW5n
IHdpdGggRmxvYXQ2NEFycmF5LiknCkBAIC04OTIsOSArODk1LDYgQEAgdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFycmF5LWFyZy9zYW1lLWN0b3ItYnVm
ZmVyLWN0b3IKIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlw
ZWRhcnJheS1hcmcvc2FtZS1jdG9yLWJ1ZmZlci1jdG9yLXZhbHVlLW5vdC1vYmotdGhyb3dzLmpz
OgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0
aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCAoVGVzdGluZyB3aXRoIEZs
b2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBU
eXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwg
KFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKLXRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0dldE93blByb3BlcnR5L2luZGV4LXByb3AtZGVzYy5qczoK
LSAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrNDPCuywgwqs0
MsK7KSB0byBiZSB0cnVlIChUZXN0aW5nIHdpdGggRmxvYXQ2NEFycmF5LiknCi0gIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBTYW1lVmFsdWUowqs0M8K7LCDCqzQywrspIHRv
IGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL1NldC9rZXktaXMtbWludXMtemVyby5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogUmVmbGVjdC5zZXQoc2FtcGxlLCAiLTAiLCAxKSBt
dXN0IHJldHVybiBmYWxzZSBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykg
dG8gYmUgdHJ1ZSAoVGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwogICBzdHJpY3QgbW9kZTog
J1Rlc3QyNjJFcnJvcjogUmVmbGVjdC5zZXQoc2FtcGxlLCAiLTAiLCAxKSBtdXN0IHJldHVybiBm
YWxzZSBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZSAo
VGVzdGluZyB3aXRoIEZsb2F0NjRBcnJheS4pJwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L2xhdGVzdC1jaGFuZ2VzLXN1bW1hcnkudHh0IGIvSlNUZXN0cy90ZXN0MjYyL2xhdGVzdC1jaGFu
Z2VzLXN1bW1hcnkudHh0CmluZGV4IGFjNjgxYTU5ZTllNDM0M2E0ZTAyNzlmMGQ1MDMzZjgyMTNl
NmJjN2UuLjk5ZmIwZWVlYThjOGQ4Yzk4ZTdjNGExMjY2NDQ1OTlkNDVmMDllZmMgMTAwNjQ0Ci0t
LSBhL0pTVGVzdHMvdGVzdDI2Mi9sYXRlc3QtY2hhbmdlcy1zdW1tYXJ5LnR4dAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvbGF0ZXN0LWNoYW5nZXMtc3VtbWFyeS50eHQKQEAgLTEsNzMgKzEsNTUgQEAK
LU0gaGFybmVzcy9hdG9taWNzSGVscGVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL0F0b21pY3Mvd2Fp
dEFzeW5jL2JpZ2ludC90cnVlLWZvci10aW1lb3V0LmpzCi1NIHRlc3QvYnVpbHQtaW5zL0F0b21p
Y3Mvd2FpdEFzeW5jL3JldHVybnMtcmVzdWx0LW9iamVjdC12YWx1ZS1pcy1wcm9taXNlLXJlc29s
dmVzLXRvLXRpbWVkLW91dC5qcwotTSB0ZXN0L2J1aWx0LWlucy9BdG9taWNzL3dhaXRBc3luYy90
cnVlLWZvci10aW1lb3V0LmpzCi1SMTAwIHRlc3QvYnVpbHQtaW5zL09iamVjdC9zZWFsL29iamVj
dC1zZWFsLXRoZS1jb25maWd1cmFibGUtYXR0cmlidXRlLW9mLWFsbC1vd24tcHJvcGVydGllcy1v
Zi1vLWFyZS1zZXQtZnJvbS10cnVlLXRvLWZhbHNlLWFuZC1vdGhlci1hdHRyaWJ1dGVzLW9mLXRo
ZS1wcm9wZXJ0eS1hcmUtdW5hbHRlcmVkLmpzIHRlc3QvYnVpbHQtaW5zL09iamVjdC9zZWFsL2Nv
bmZpZ3VyYWJsZS1hdHRyaWJ1dGUtYWxsLW93bi1wcm9wZXJ0aWVzLXNldC1mcm9tLXRydWUtdG8t
ZmFsc2UtcHJvcGVydHktYXJlLXVuYWx0ZXJlZC5qcwotUjEwMCB0ZXN0L2J1aWx0LWlucy9PYmpl
Y3Qvc2VhbC9vYmplY3Qtc2VhbC10aGUtY29uZmlndXJhYmxlLWF0dHJpYnV0ZS1vZi1vd24tYWNj
ZXNzb3ItcHJvcGVydHktb2Ytby1pcy1zZXQtZnJvbS10cnVlLXRvLWZhbHNlLWFuZC1vdGhlci1h
dHRyaWJ1dGVzLW9mLXRoZS1wcm9wZXJ0eS1hcmUtdW5hbHRlcmVkLmpzIHRlc3QvYnVpbHQtaW5z
L09iamVjdC9zZWFsL2NvbmZpZ3VyYWJsZS1hdHRyaWJ1dGUtb3duLWFjY2Vzc29yLXByb3BlcnR5
LXNldC1mcm9tLXRydWUtdG8tZmFsc2UtcHJvcGVydHktYXJlLXVuYWx0ZXJlZC5qcwotTSB0ZXN0
L2J1aWx0LWlucy9PYmplY3Qvc2VhbC9zZWFsLWZpbmFsaXphdGlvbnJlZ2lzdHJ5LmpzCi1NIHRl
c3QvYnVpbHQtaW5zL09iamVjdC9zZWFsL3NlYWwtd2Vha3JlZi5qcwotRCB0ZXN0L2J1aWx0LWlu
cy9TdHJpbmcvcHJvdG90eXBlL3NwbGl0L2FyZ3VtZW50cy1hcmUtb2JqZWN0cy1hbmQtaW5zdGFu
Y2UtaXMtc3RyaW5nLWZpcnN0LW9iamVjdC1oYXZlLW92ZXJyaWRlZC10by1zdHJpbmctZnVuY3Rp
b24tYW5kLXZhbHVlLW9mLWZ1bmN0aW9uLXRoYXQtdGhyb3ctZXhjZXB0aW9uLXNlY29uZC1vYmpl
Y3QtaGF2ZS1vdmVycmlkZWQtdmFsdWUtb2YtZnVuY3Rpb24tdGhhdC10aHJvdy1leGNlcHRpb24u
anMKLVIxMDAgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9zcGxpdC9hcmd1bWVudHMt
YXJlLW9iamVjdHMtYW5kLWluc3RhbmNlLWlzLXN0cmluZy1maXJzdC1vYmplY3QtaGF2ZS1vdmVy
cmlkZWQtdG8tc3RyaW5nLWZ1bmN0aW9uLXNlY29uZC1vYmplY3QtaGF2ZS1vdmVycmlkZWQtdmFs
dWUtb2YtZnVuY3Rpb24tdGhhdC10aHJvdy1leGNlcHRpb24uanMgdGVzdC9idWlsdC1pbnMvU3Ry
aW5nL3Byb3RvdHlwZS9zcGxpdC9zZXBhcmF0b3Itb3ZlcnJpZGUtdG9zdHJpbmctbGltaXQtb3Zl
cnJpZGUtdmFsdWVvZi10aHJvd3MuanMKLVIxMDAgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9zcGxpdC9hcmd1bWVudHMtYXJlLW9iamVjdHMtYW5kLWluc3RhbmNlLWlzLXN0cmluZy1m
aXJzdC1vYmplY3QtaGF2ZS1vdmVycmlkZWQtdG8tc3RyaW5nLWZ1bmN0aW9uLXNlY29uZC1vYmpl
Y3QtaGF2ZS1vdmVycmlkZWQtdmFsdWUtb2YtZnVuY3Rpb24tYW5kLXRvLXN0cmluZy1mdW5jdGlv
bi10aGF0LXRocm93LWV4Y2VwdGlvbi5qcyB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBl
L3NwbGl0L3NlcGFyYXRvci1vdmVycmlkZS10b3N0cmluZy1saW1pdC1vdmVycmlkZS12YWx1ZW9m
LXRvc3RyaW5nLXRocm93cy5qcwotUjEwMCB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBl
L3NwbGl0L2FyZ3VtZW50cy1hcmUtb2JqZWN0cy1hbmQtaW5zdGFuY2UtaXMtc3RyaW5nLWZpcnN0
LW9iamVjdC1oYXZlLW92ZXJyaWRlZC10by1zdHJpbmctZnVuY3Rpb24tc2Vjb25kLW9iamVjdC1o
YXZlLW92ZXJyaWRlZC12YWx1ZS1vZi1hbmQtdG8tc3RyaW5nLWZ1bmN0aW9ucy5qcyB0ZXN0L2J1
aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL3NwbGl0L3NlcGFyYXRvci1vdmVycmlkZS10b3N0cmlu
Zy1saW1pdC1vdmVycmlkZS12YWx1ZW9mLXRvc3RyaW5nLmpzCi1SMTAwIHRlc3QvYnVpbHQtaW5z
L1N0cmluZy9wcm90b3R5cGUvc3BsaXQvYXJndW1lbnRzLWFyZS1vYmplY3RzLWFuZC1pbnN0YW5j
ZS1pcy1zdHJpbmctZmlyc3Qtb2JqZWN0LWhhdmUtb3ZlcnJpZGVkLXRvLXN0cmluZy1mdW5jdGlv
bi1zZWNvbmQtb2JqZWN0LWhhdmUtb3ZlcnJpZGVkLXZhbHVlLW9mLWZ1bmN0aW9uLmpzIHRlc3Qv
YnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvc3BsaXQvc2VwYXJhdG9yLW92ZXJyaWRlLXRvc3Ry
aW5nLWxpbWl0LW92ZXJyaWRlLXZhbHVlb2YuanMKLVIxMDAgdGVzdC9idWlsdC1pbnMvU3RyaW5n
L3Byb3RvdHlwZS9zcGxpdC9hcmd1bWVudHMtYXJlLW9iamVjdHMtYW5kLWluc3RhbmNlLWlzLXN0
cmluZy1maXJzdC1vYmplY3QtaGF2ZS1vdmVycmlkZWQtdG8tc3RyaW5nLWZ1bmN0aW9uLXRoYXQt
dGhyb3ctZXhjZXB0aW9uLXNlY29uZC1vYmplY3QtaGF2ZS1vdmVycmlkZWQtdmFsdWUtb2YtZnVu
Y3Rpb24tdGhhdC10aHJvdy1leGNlcHRpb24uanMgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9zcGxpdC9zZXBhcmF0b3Itb3ZlcnJpZGUtdG9zdHJpbmctdGhyb3dzLWxpbWl0LW92ZXJy
aWRlLXZhbHVlb2YtdGhyb3dzLmpzCi1SMTAwIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5
cGUvc3BsaXQvYXJndW1lbnQtaXMtZnVuY3Rpb24tYW5kLWluc3RhbmNlLWlzLXN0cmluZy1vYmpl
Y3Qtb2JqZWN0LWhhdmUtb3ZlcnJpZGVkLXRvLXN0cmluZy1hbmQtdmFsdWUtb2YtZnVuY3Rpb25z
LmpzIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvc3BsaXQvc2VwYXJhdG9yLW92ZXJy
aWRlLXZhbHVlb2YuanMKLUEgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9zcGxpdC90
cmFuc2ZlcnJlZC10by1jdXN0b20uanMKLVIxMDAgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9zcGxpdC9hcmd1bWVudC1pcy1vYmplY3QtYW5kLWluc3RhbmNlLWlzLW51bWJlci1vYmpl
Y3QtaGF2ZS1vdmVycmlkZWQtdG8tc3RyaW5nLWZ1bmN0aW9uLXRoYXQtcmV0dXJuLXJlZ2V4cC5q
cyB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL3NwbGl0L3RyYW5zZmVycmVkLXRvLW51
bWJlci1zZXBhcmF0b3Itb3ZlcnJpZGUtdG9zdHJpbmctcmV0dXJucy1yZWdleHAuanMKLUEgdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9zcGxpdC92YWx1ZU9mLWlzLWNhbGxlZC1mb3It
bGltaXQtYXJndW1lbnQuanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUv
ZXZlcnkvQmlnSW50L2NhbGxiYWNrZm4tZGV0YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2V2ZXJ5L2NhbGxiYWNrZm4tZGV0YWNoYnVmZmVyLmpzCi1N
IHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbHRlci9CaWdJbnQvY2FsbGJh
Y2tmbi1kZXRhY2hidWZmZXIuanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUvZmlsdGVyL2NhbGxiYWNrZm4tZGV0YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL2ZpbmQvQmlnSW50L3ByZWRpY2F0ZS1tYXktZGV0YWNoLWJ1ZmZl
ci5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9maW5kL3ByZWRpY2F0
ZS1tYXktZGV0YWNoLWJ1ZmZlci5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3Rv
dHlwZS9maW5kSW5kZXgvcHJlZGljYXRlLW1heS1kZXRhY2gtYnVmZmVyLmpzCi1NIHRlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZvckVhY2gvQmlnSW50L2NhbGxiYWNrZm4tZGV0
YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZvckVh
Y2gvY2FsbGJhY2tmbi1kZXRhY2hidWZmZXIuanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvbWFwL0JpZ0ludC9jYWxsYmFja2ZuLWRldGFjaGJ1ZmZlci5qcwotTSB0ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9tYXAvY2FsbGJhY2tmbi1kZXRhY2hidWZm
ZXIuanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlL0JpZ0lu
dC9jYWxsYmFja2ZuLWRldGFjaGJ1ZmZlci5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
L3Byb3RvdHlwZS9yZWR1Y2UvY2FsbGJhY2tmbi1kZXRhY2hidWZmZXIuanMKLU0gdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlUmlnaHQvQmlnSW50L2NhbGxiYWNrZm4t
ZGV0YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3Jl
ZHVjZVJpZ2h0L2NhbGxiYWNrZm4tZGV0YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL3NsaWNlL0JpZ0ludC9kZXRhY2hlZC1idWZmZXItY3VzdG9tLWN0
b3Itb3RoZXItdGFyZ2V0dHlwZS5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3Rv
dHlwZS9zbGljZS9kZXRhY2hlZC1idWZmZXItY3VzdG9tLWN0b3Itb3RoZXItdGFyZ2V0dHlwZS5q
cwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9zb21lL0JpZ0ludC9jYWxs
YmFja2ZuLWRldGFjaGJ1ZmZlci5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3Rv
dHlwZS9zb21lL2NhbGxiYWNrZm4tZGV0YWNoYnVmZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9k
ZXRhY2hlZC1idWZmZXItcmVhbG0uanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0
cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmlj
aW5kZXgtZGVzYy1jb25maWd1cmFibGUuanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1l
cmljaW5kZXguanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLWNvbmZpZ3Vy
YWJsZS5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFs
cy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LmpzCi1NIHRlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0dldE93blByb3BlcnR5L0JpZ0lu
dC9pbmRleC1wcm9wLWRlc2MuanMKK1IwNjIgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBl
L2l0ZW0vaW5kZXgtYXJndW1lbnQtdG9pbnRlZ2VyLmpzIHRlc3QvYnVpbHQtaW5zL0FycmF5L3By
b3RvdHlwZS9hdC9pbmRleC1hcmd1bWVudC10b2ludGVnZXIuanMKK1IwNTcgdGVzdC9idWlsdC1p
bnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRl
Z2VyLWludmFsaWQuanMgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L2luZGV4LW5v
bi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzCitBIHRlc3QvYnVpbHQtaW5z
L0FycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIu
anMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L2xlbmd0aC5qcworQSB0ZXN0
L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvYXQvbmFtZS5qcworQSB0ZXN0L2J1aWx0LWlucy9B
cnJheS9wcm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5L3By
b3RvdHlwZS9hdC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5qcworUjA1MyB0ZXN0L2J1aWx0LWlu
cy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0tcmVsYXRpdmUtaW5kZXguanMgdGVz
dC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRl
eC5qcworUjA1MCB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0
ZW0uanMgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS5qcwor
QSB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9y
LWhvbGVzLWluLXNwYXJzZS1hcnJheXMuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90
eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXguanMKK0QgdGVz
dC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1l
bnQtdG9pbnRlZ2VyLmpzCitEIHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL2xl
bmd0aC5qcworRCB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9uYW1lLmpzCitE
IHRlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL3Byb3AtZGVzYy5qcworRCB0ZXN0
L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5q
cworRCB0ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5l
ZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFycmF5cy5qcworRCB0ZXN0L2J1aWx0LWlucy9BcnJheS9w
cm90b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5lZC1mb3Itb3V0LW9mLXJhbmdlLWluZGV4Lmpz
CitSMDYyIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9pbmRleC1hcmd1bWVu
dC10b2ludGVnZXIuanMgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9pbmRleC1h
cmd1bWVudC10b2ludGVnZXIuanMKK1IwNTYgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlw
ZS9pdGVtL2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzIHRl
c3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvaW5kZXgtbm9uLW51bWVyaWMtYXJndW1l
bnQtdG9pbnRlZ2VyLWludmFsaWQuanMKK0EgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlw
ZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIuanMKK0EgdGVzdC9idWls
dC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9sZW5ndGguanMKK0EgdGVzdC9idWlsdC1pbnMvU3Ry
aW5nL3Byb3RvdHlwZS9hdC9uYW1lLmpzCitBIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5
cGUvYXQvcHJvcC1kZXNjLmpzCitBIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQv
cmV0dXJuLWFicnVwdC1mcm9tLXRoaXMuanMKK1IwNTIgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3By
b3RvdHlwZS9pdGVtL3JldHVybnMtY29kZS11bml0LmpzIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9w
cm90b3R5cGUvYXQvcmV0dXJucy1jb2RlLXVuaXQuanMKK1IwNTYgdGVzdC9idWlsdC1pbnMvU3Ry
aW5nL3Byb3RvdHlwZS9pdGVtL3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRleC5qcyB0ZXN0L2J1
aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRleC5q
cworUjA1MyB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy1pdGVt
LmpzIHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJucy1pdGVtLmpzCitB
IHRlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9y
LW91dC1vZi1yYW5nZS1pbmRleC5qcworRCB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBl
L2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCitEIHRlc3QvYnVp
bHQtaW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMKK0QgdGVzdC9idWlsdC1pbnMv
U3RyaW5nL3Byb3RvdHlwZS9pdGVtL25hbWUuanMKK0QgdGVzdC9idWlsdC1pbnMvU3RyaW5nL3By
b3RvdHlwZS9pdGVtL3Byb3AtZGVzYy5qcworRCB0ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90
eXBlL2l0ZW0vcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMuanMKK0QgdGVzdC9idWlsdC1pbnMvU3Ry
aW5nL3Byb3RvdHlwZS9pdGVtL3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5k
ZXguanMKK1IwNTYgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9pbmRl
eC1hcmd1bWVudC10b2ludGVnZXIuanMgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUvYXQvaW5kZXgtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCitSMDUwIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRl
Z2VyLWludmFsaWQuanMgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvaW5k
ZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLWludmFsaWQuanMKK0EgdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQt
dG9pbnRlZ2VyLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L2xl
bmd0aC5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9uYW1lLmpz
CitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3Byb3AtZGVzYy5qcwor
QSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm4tYWJydXB0LWZy
b20tdGhpcy5qcworUjA1NSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVt
L3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRleC5qcyB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
L3Byb3RvdHlwZS9hdC9yZXR1cm5zLWl0ZW0tcmVsYXRpdmUtaW5kZXguanMKK1IwNTMgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0uanMgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcmV0dXJucy1pdGVtLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1o
b2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJv
dG90eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXguanMKK0Qg
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9pbmRleC1ub24tbnVtZXJp
Yy1hcmd1bWVudC10b2ludGVnZXIuanMKK0QgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvaXRlbS9sZW5ndGguanMKK0QgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUvaXRlbS9uYW1lLmpzCitEIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0
ZW0vcHJvcC1kZXNjLmpzCitEIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0
ZW0vcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMuanMKK0QgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFy
cmF5cy5qcworRCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVy
bnMtdW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXguanMKIE0gdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvR2V0T3duUHJvcGVydHkvaW5kZXgtcHJv
cC1kZXNjLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJu
YWxzL1NldC9CaWdJbnQvZGV0YWNoZWQtYnVmZmVyLXJlYWxtLmpzCi1NIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL1NldC9CaWdJbnQvZGV0YWNoZWQtYnVm
ZmVyLmpzCi1NIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxz
L1NldC9CaWdJbnQvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzCi1NIHRlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL1NldC9kZXRhY2hlZC1idWZm
ZXItcmVhbG0uanMKLU0gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvU2V0L2RldGFjaGVkLWJ1ZmZlci5qcwotTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2ludGVybmFscy9TZXQvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVy
LmpzCi1BIHRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9pbnRsLWxlZ2FjeS1jb25zdHJ1Y3Rl
ZC1zeW1ib2wtb24tdW53cmFwLmpzCi1BIHRlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9pbnRs
LWxlZ2FjeS1jb25zdHJ1Y3RlZC1zeW1ib2wuanMKLUEgdGVzdC9pbnRsNDAyL051bWJlckZvcm1h
dC9pbnRsLWxlZ2FjeS1jb25zdHJ1Y3RlZC1zeW1ib2wtb24tdW53cmFwLmpzCi1BIHRlc3QvaW50
bDQwMi9OdW1iZXJGb3JtYXQvaW50bC1sZWdhY3ktY29uc3RydWN0ZWQtc3ltYm9sLmpzCi1EIHRl
c3QvbGFuZ3VhZ2UvZXZhbC1jb2RlL2RpcmVjdC9hcnJvdy1mbi1ib2R5LWNudG5zLWFyZ3VtZW50
cy1mbi1kZWNsLXBhcmFtcy1jbnRucy1kZmx0LWFzc2lnbm1lbnQtYXJyb3ctZnVuYy1kZWNsYXJl
LWFyZ3VtZW50cy1hc3NpZ24taW5jbC1kZWYtcGFyYW0tYXJyb3ctYXJndW1lbnRzLmpzCi1EIHRl
c3QvbGFuZ3VhZ2UvZXZhbC1jb2RlL2RpcmVjdC9hcnJvdy1mbi1ib2R5LWNudG5zLWFyZ3VtZW50
cy1mbi1kZWNsLXBhcmFtcy1jbnRucy1kZmx0LWFzc2lnbm1lbnQtYXJyb3ctZnVuYy1kZWNsYXJl
LWFyZ3VtZW50cy1hc3NpZ24uanMKLUEgdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVn
YWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtMS1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpz
Ci1BIHRlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBl
LXNlcXVlbmNlLTItc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcwotQSB0ZXN0L2xhbmd1YWdlL2xp
dGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS0zLXN0cmljdC1l
eHBsaWNpdC1wcmFnbWEuanMKLUEgdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5
LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtNC1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCi1B
IHRlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNl
cXVlbmNlLTUtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcwotQSB0ZXN0L2xhbmd1YWdlL2xpdGVy
YWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS02LXN0cmljdC1leHBs
aWNpdC1wcmFnbWEuanMKLUEgdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5v
bi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtNy1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCi1BIHRl
c3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVl
bmNlLTgtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcwotQSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxz
L3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LXN0cmljdC1leHBsaWNp
dC1wcmFnbWEuanMKLU0gdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9leHBvcnQtZXhwbmFtZS1i
aW5kaW5nLXN0cmluZy5qcwotQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2V4cG9ydC1leHBu
YW1lLWZyb20tYXMtdW5wYWlyZWQtc3Vycm9nYXRlLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvbW9kdWxl
LWNvZGUvZXhwb3J0LWV4cG5hbWUtZnJvbS1zdGFyLXVucGFpcmVkLXN1cnJvZ2F0ZS5qcwotQSB0
ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2V4cG9ydC1leHBuYW1lLWZyb20tdW5wYWlyZWQtc3Vy
cm9nYXRlLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZXhwb3J0LWV4cG5hbWUtaW1w
b3J0LXVucGFpcmVkLXN1cnJvZ2F0ZS5qcwotQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2V4
cG9ydC1leHBuYW1lLXN0cmluZy1iaW5kaW5nLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNv
ZGUvZXhwb3J0LWV4cG5hbWUtdW5wYWlyZWQtc3Vycm9nYXRlLmpzCi1NIHRlc3QvbGFuZ3VhZ2Uv
bW9kdWxlLWNvZGUvZXhwb3J0LWV4cG5hbWVfRklYVFVSRS5qcwpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKK00gdGVzdC9sYW5ndWFnZS9nbG9iYWwtY29kZS9kZWNsLWxleC1jb25maWd1cmFi
bGUtZ2xvYmFsLmpzClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1hcmd1
bWVudC10b2ludGVnZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkv
cHJvdG90eXBlL2F0L2luZGV4LWFyZ3VtZW50LXRvaW50ZWdlci5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMWYx
NmFlY2UwYzExZWZhYTEwOGIwNmZhYWE1YjQ1M2U1NDUxODFiCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1h
cmd1bWVudC10b2ludGVnZXIuanMKQEAgLTAsMCArMSwyNyBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtYXJyYXkucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBQcm9w
ZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgoraW5mbzogfAorICBBcnJheS5wcm90b3R5cGUuYXQo
IGluZGV4ICkKKworICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCisK
K2ZlYXR1cmVzOiBbQXJyYXkucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2VydC5zYW1lVmFsdWUo
dHlwZW9mIEFycmF5LnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9uJyk7CisKK2xldCB2YWx1ZU9mQ2Fs
bENvdW50ID0gMDsKK2xldCBpbmRleCA9IHsKKyAgdmFsdWVPZigpIHsKKyAgICB2YWx1ZU9mQ2Fs
bENvdW50Kys7CisgICAgcmV0dXJuIDE7CisgIH0KK307CisKK2xldCBhID0gWzAsMSwyLDNdOwor
Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoaW5kZXgpLCAxLCAnYS5hdCh7dmFsdWVPZigpIHt2YWx1
ZU9mQ2FsbENvdW50Kys7IHJldHVybiAxO319KSBtdXN0IHJldHVybiAxJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKHZhbHVlT2ZDYWxsQ291bnQsIDEsICdUaGUgdmFsdWUgb2YgYHZhbHVlT2ZDYWxsQ291
bnRgIGlzIDEnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9B
cnJheS9wcm90b3R5cGUvYXQvaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLWlu
dmFsaWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBl
L2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmJjMzc5MjkxY2E5MDNlYTJlOTgxMDUwZGNmNTc1MjRkZWY4ZmEyOWYKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBl
L2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzCkBAIC0w
LDAgKzEsMjAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5LnByb3Rv
dHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4K
K2luZm86IHwKKyAgQXJyYXkucHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgTGV0IHJlbGF0aXZl
SW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgorCitmZWF0dXJlczogW0FycmF5LnByb3RvdHlw
ZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheS5wcm90b3R5cGUuYXQs
ICdmdW5jdGlvbicpOworCitsZXQgYSA9IFswLDEsMiwzXTsKKworYXNzZXJ0LnRocm93cyhUeXBl
RXJyb3IsICgpID0+IHsKKyAgYS5hdChTeW1ib2woKSk7Cit9LCAnYGEuYXQoU3ltYm9sKCkpYCB0
aHJvd3MgVHlwZUVycm9yJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50
ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUv
YXQvaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlk
ZTAzNjM4MjZkZTA4ZWZmOGM1ZjJjZmI5YjkyM2E1ODNkODg0ZDYKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L2luZGV4
LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci5qcwpAQCAtMCwwICsxLDI2IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheS5wcm90b3R5cGUuYXQKK2Rlc2NyaXB0
aW9uOiA+CisgIFByb3BlcnR5IHR5cGUgYW5kIGRlc2NyaXB0b3IuCitpbmZvOiB8CisgIEFycmF5
LnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIExldCByZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRl
Z2VyKGluZGV4KS4KKworZmVhdHVyZXM6IFtBcnJheS5wcm90b3R5cGUuYXRdCistLS0qLworYXNz
ZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJvdG90eXBlLmF0LCAnZnVuY3Rpb24nKTsKKwor
bGV0IGEgPSBbMCwxLDIsM107CisKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdChmYWxzZSksIDAsICdh
LmF0KGZhbHNlKSBtdXN0IHJldHVybiAwJyk7Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQobnVsbCks
IDAsICdhLmF0KG51bGwpIG11c3QgcmV0dXJuIDAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCh1
bmRlZmluZWQpLCAwLCAnYS5hdCh1bmRlZmluZWQpIG11c3QgcmV0dXJuIDAnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoYS5hdCgiIiksIDAsICdhLmF0KCIiKSBtdXN0IHJldHVybiAwJyk7Cithc3NlcnQu
c2FtZVZhbHVlKGEuYXQoZnVuY3Rpb24oKSB7fSksIDAsICdhLmF0KGZ1bmN0aW9uKCkge30pIG11
c3QgcmV0dXJuIDAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdChbXSksIDAsICdhLmF0KFtdKSBt
dXN0IHJldHVybiAwJyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCh0cnVlKSwgMSwgJ2EuYXQo
dHJ1ZSkgbXVzdCByZXR1cm4gMScpOworYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KCIxIiksIDEsICdh
LmF0KCIxIikgbXVzdCByZXR1cm4gMScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9sZW5ndGguanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L2xlbmd0aC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41MmIzM2YxMzA3NDVkNjAzOTVhMzNlN2U3MzAxODM4ZTVjNzYxN2Y1Ci0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9s
ZW5ndGguanMKQEAgLTAsMCArMSwyNCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2Fs
ZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBz
ZWMtYXJyYXkucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBBcnJheS5wcm90b3R5cGUu
YXQubGVuZ3RoIHZhbHVlIGFuZCBkZXNjcmlwdG9yLgoraW5mbzogfAorICBBcnJheS5wcm90b3R5
cGUuYXQoIGluZGV4ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVj
dHMKKworaW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbQXJyYXkucHJv
dG90eXBlLmF0XQorLS0tKi8KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5LnByb3RvdHlw
ZS5hdCwgJ2Z1bmN0aW9uJyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIEFycmF5LnByb3RvdHlw
ZS5hdC5sZW5ndGgsIDEsCisgICdUaGUgdmFsdWUgb2YgQXJyYXkucHJvdG90eXBlLmF0Lmxlbmd0
aCBpcyAxJworKTsKKwordmVyaWZ5Tm90RW51bWVyYWJsZShBcnJheS5wcm90b3R5cGUuYXQsICds
ZW5ndGgnKTsKK3ZlcmlmeU5vdFdyaXRhYmxlKEFycmF5LnByb3RvdHlwZS5hdCwgJ2xlbmd0aCcp
OwordmVyaWZ5Q29uZmlndXJhYmxlKEFycmF5LnByb3RvdHlwZS5hdCwgJ2xlbmd0aCcpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9h
dC9uYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlw
ZS9hdC9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5OTVmNjA5MjNlZGJmZjUwMjEzODczZjE2NWM3MmQ1
ZTM2Y2JlZDcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXkvcHJvdG90eXBlL2F0L25hbWUuanMKQEAgLTAsMCArMSwyNiBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXkucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjog
PgorICBBcnJheS5wcm90b3R5cGUuYXQubmFtZSB2YWx1ZSBhbmQgZGVzY3JpcHRvci4KK2luZm86
IHwKKyAgQXJyYXkucHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFu
ZGFyZCBCdWlsdC1pbiBPYmplY3RzCisKK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitm
ZWF0dXJlczogW0FycmF5LnByb3RvdHlwZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKHR5
cGVvZiBBcnJheS5wcm90b3R5cGUuYXQsICdmdW5jdGlvbicpOworCithc3NlcnQuc2FtZVZhbHVl
KAorICBBcnJheS5wcm90b3R5cGUuYXQubmFtZSwgJ2F0JywKKyAgJ1RoZSB2YWx1ZSBvZiBBcnJh
eS5wcm90b3R5cGUuYXQubmFtZSBpcyAiYXQiJworKTsKKwordmVyaWZ5UHJvcGVydHkoQXJyYXku
cHJvdG90eXBlLmF0LCAnbmFtZScsIHsKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIHdyaXRhYmxl
OiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9wcm9wLWRl
c2MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMGE4ZWU1NTcyZDg0NWZjNzlkY2E5Y2VkMmQ3MzcwYTgxZTczMTZi
NQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJh
eS9wcm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzCkBAIC0wLDAgKzEsMjYgQEAKKy8vIENvcHlyaWdo
dCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5LnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4K
KyAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4KK2luZm86IHwKKyAgQXJyYXkucHJvdG90
eXBlLmF0KCBpbmRleCApCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmpl
Y3RzCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtBcnJheS5wcm90
b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJvdG90eXBl
LmF0LCAnZnVuY3Rpb24nKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5LnBy
b3RvdHlwZS5hdCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIEFycmF5
LnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicKKyk7CisKK3ZlcmlmeVByb3BlcnR5KEFycmF5
LnByb3RvdHlwZSwgJ2F0JywgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IHRy
dWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybi1hYnJ1cHQtZnJvbS10
aGlzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9h
dC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNjEzZTc1MWI4MzUzYTdm
YWY2ZmRlYTVmY2VmNTcxY2Y0OWIzZTk2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm4tYWJydXB0LWZyb20t
dGhpcy5qcwpAQCAtMCwwICsxLDIyIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxk
cm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNl
Yy1hcnJheS5wcm90b3R5cGUuYXQKK2Rlc2NyaXB0aW9uOiA+CisgIFJldHVybiBhYnJ1cHQgZnJv
bSBUb09iamVjdCh0aGlzIHZhbHVlKS4KK2luZm86IHwKKyAgQXJyYXkucHJvdG90eXBlLmF0KCBp
bmRleCApCisKKyAgTGV0IE8gYmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KKworZmVhdHVyZXM6
IFtBcnJheS5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJy
YXkucHJvdG90eXBlLmF0LCAnZnVuY3Rpb24nKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3Is
ICgpID0+IHsKKyAgQXJyYXkucHJvdG90eXBlLmF0LmNhbGwodW5kZWZpbmVkKTsKK30sICdgQXJy
YXkucHJvdG90eXBlLmF0LmNhbGwodW5kZWZpbmVkKWAgdGhyb3dzIFR5cGVFcnJvcicpOworCith
c3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4geworICBBcnJheS5wcm90b3R5cGUuYXQuY2Fs
bChudWxsKTsKK30sICdgQXJyYXkucHJvdG90eXBlLmF0LmNhbGwobnVsbClgIHRocm93cyBUeXBl
RXJyb3InKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJh
eS9wcm90b3R5cGUvYXQvcmV0dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm5zLWl0ZW0tcmVs
YXRpdmUtaW5kZXguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGMyNTI1NDhmM2VmNDQ0NzQ2MjA5MWRhMDBkNGIz
ZWJiYzFhYzY4OQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheS9wcm90b3R5cGUvYXQvcmV0dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzCkBA
IC0wLDAgKzEsMzAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5LnBy
b3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0
aGUgc3BlY2lmaWVkIHJlbGF0aXZlIGluZGV4CitpbmZvOiB8CisgIEFycmF5LnByb3RvdHlwZS5h
dCAoICkKKworICBMZXQgTyBiZSA/IFRvT2JqZWN0KHRoaXMgdmFsdWUpLgorICBMZXQgbGVuIGJl
ID8gTGVuZ3RoT2ZBcnJheUxpa2UoTykuCisgIExldCByZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRl
Z2VyKGluZGV4KS4KKyAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgorICAgIExldCBrIGJl
IHJlbGF0aXZlSW5kZXguCisgIEVsc2UsCisgICAgTGV0IGsgYmUgbGVuICsgcmVsYXRpdmVJbmRl
eC4KKyAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmluZWQuCisgIFJl
dHVybiA/IEdldChPLCAhIFRvU3RyaW5nKGspKS4KKworZmVhdHVyZXM6IFtBcnJheS5wcm90b3R5
cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJvdG90eXBlLmF0
LCAnZnVuY3Rpb24nKTsKKworbGV0IGEgPSBbMSwgMiwgMywgNCwgLDVdOworCithc3NlcnQuc2Ft
ZVZhbHVlKGEuYXQoMCksIDEsICdhLmF0KDApIG11c3QgcmV0dXJuIDEnKTsKK2Fzc2VydC5zYW1l
VmFsdWUoYS5hdCgtMSksIDUsICdhLmF0KC0xKSBtdXN0IHJldHVybiA1Jyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKGEuYXQoLTIpLCB1bmRlZmluZWQsICdhLmF0KC0yKSBtdXN0IHJldHVybiB1bmRlZmlu
ZWQnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCgtMyksIDQsICdhLmF0KC0zKSBtdXN0IHJldHVy
biA0Jyk7Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoLTQpLCAzLCAnYS5hdCgtNCkgbXVzdCByZXR1
cm4gMycpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
L3Byb3RvdHlwZS9hdC9yZXR1cm5zLWl0ZW0uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNmJm
MzZmN2Q5ZTI0MDFkYzlmNTIxNDJkMTMwNDVmNDI1ZjEzYzgwCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm5z
LWl0ZW0uanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2Fs
ZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBz
ZWMtYXJyYXkucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBSZXR1cm5zIHRoZSBpdGVt
IHZhbHVlIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXgKK2luZm86IHwKKyAgQXJyYXkucHJvdG90eXBl
LmF0ICggKQorCisgIExldCBPIGJlID8gVG9PYmplY3QodGhpcyB2YWx1ZSkuCisgIExldCBsZW4g
YmUgPyBMZW5ndGhPZkFycmF5TGlrZShPKS4KKyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0lu
dGVnZXIoaW5kZXgpLgorICBJZiByZWxhdGl2ZUluZGV4IOKJpSAwLCB0aGVuCisgICAgTGV0IGsg
YmUgcmVsYXRpdmVJbmRleC4KKyAgRWxzZSwKKyAgICBMZXQgayBiZSBsZW4gKyByZWxhdGl2ZUlu
ZGV4LgorICBJZiBrIDwgMCBvciBrIOKJpSBsZW4sIHRoZW4gcmV0dXJuIHVuZGVmaW5lZC4KKyAg
UmV0dXJuID8gR2V0KE8sICEgVG9TdHJpbmcoaykpLgorCitmZWF0dXJlczogW0FycmF5LnByb3Rv
dHlwZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheS5wcm90b3R5cGUu
YXQsICdmdW5jdGlvbicpOworCitsZXQgYSA9IFsxLCAyLCAzLCA0LCw1XTsKKworYXNzZXJ0LnNh
bWVWYWx1ZShhLmF0KDApLCAxLCAnYS5hdCgwKSBtdXN0IHJldHVybiAxJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKGEuYXQoMSksIDIsICdhLmF0KDEpIG11c3QgcmV0dXJuIDInKTsKK2Fzc2VydC5zYW1l
VmFsdWUoYS5hdCgyKSwgMywgJ2EuYXQoMikgbXVzdCByZXR1cm4gMycpOworYXNzZXJ0LnNhbWVW
YWx1ZShhLmF0KDMpLCA0LCAnYS5hdCgzKSBtdXN0IHJldHVybiA0Jyk7Cithc3NlcnQuc2FtZVZh
bHVlKGEuYXQoNCksIHVuZGVmaW5lZCwgJ2EuYXQoNCkgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7
Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoNSksIDUsICdhLmF0KDUpIG11c3QgcmV0dXJuIDUnKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5
cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9yLWhvbGVzLWluLXNwYXJzZS1hcnJheXMuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMt
dW5kZWZpbmVkLWZvci1ob2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNTc4
YzFiYzE0YTQzMWI4ZmJhOTI4Njc3YTc1OGZlY2FkNWRmOTEKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMt
dW5kZWZpbmVkLWZvci1ob2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCkBAIC0wLDAgKzEsNDMgQEAK
Ky8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5LnByb3RvdHlwZS5hdAorZGVz
Y3JpcHRpb246ID4KKyAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIGlu
ZGV4LCByZXNwZWN0aW5nIGhvbGVzIGluIHNwYXJzZSBhcnJheXMuCitpbmZvOiB8CisgIEFycmF5
LnByb3RvdHlwZS5hdCAoICkKKworICBMZXQgTyBiZSA/IFRvT2JqZWN0KHRoaXMgdmFsdWUpLgor
ICBMZXQgbGVuIGJlID8gTGVuZ3RoT2ZBcnJheUxpa2UoTykuCisgIExldCByZWxhdGl2ZUluZGV4
IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KKyAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgor
ICAgIExldCBrIGJlIHJlbGF0aXZlSW5kZXguCisgIEVsc2UsCisgICAgTGV0IGsgYmUgbGVuICsg
cmVsYXRpdmVJbmRleC4KKyAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRl
ZmluZWQuCisgIFJldHVybiA/IEdldChPLCAhIFRvU3RyaW5nKGspKS4KKworZmVhdHVyZXM6IFtB
cnJheS5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFy
cmF5LnByb3RvdHlwZS5hdCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9m
IEFycmF5LnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicKKyk7CisKK2xldCBhID0gWzAsIDEs
ICwgMywgNCwgLCA2XTsKKworYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KDApLCAwLCAnYS5hdCgwKSBt
dXN0IHJldHVybiAwJyk7Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoMSksIDEsICdhLmF0KDEpIG11
c3QgcmV0dXJuIDEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCgyKSwgdW5kZWZpbmVkLCAnYS5h
dCgyKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCgzKSwg
MywgJ2EuYXQoMykgbXVzdCByZXR1cm4gMycpOworYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KDQpLCA0
LCAnYS5hdCg0KSBtdXN0IHJldHVybiA0Jyk7Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoNSksIHVu
ZGVmaW5lZCwgJ2EuYXQoNSkgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7Cithc3NlcnQuc2FtZVZh
bHVlKGEuYXQoNiksIDYsICdhLmF0KDYpIG11c3QgcmV0dXJuIDYnKTsKK2Fzc2VydC5zYW1lVmFs
dWUoYS5hdCgtMCksIDAsICdhLmF0KC0wKSBtdXN0IHJldHVybiAwJyk7Cithc3NlcnQuc2FtZVZh
bHVlKGEuYXQoLTEpLCA2LCAnYS5hdCgtMSkgbXVzdCByZXR1cm4gNicpOworYXNzZXJ0LnNhbWVW
YWx1ZShhLmF0KC0yKSwgdW5kZWZpbmVkLCAnYS5hdCgtMikgbXVzdCByZXR1cm4gdW5kZWZpbmVk
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKGEuYXQoLTMpLCA0LCAnYS5hdCgtMykgbXVzdCByZXR1cm4g
NCcpOworYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KC00KSwgMywgJ2EuYXQoLTQpIG11c3QgcmV0dXJu
IDMnKTsKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCgtNSksIHVuZGVmaW5lZCwgJ2EuYXQoLTUpIG11
c3QgcmV0dXJuIHVuZGVmaW5lZCcpOworYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KC02KSwgMSwgJ2Eu
YXQoLTYpIG11c3QgcmV0dXJuIDEnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9yLW91dC1v
Zi1yYW5nZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9w
cm90b3R5cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9yLW91dC1vZi1yYW5nZS1pbmRleC5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mMTRjMDQ1YjI0NTUxYzM1ZDEzMWJjNzllODg1MjM2YmJiNDRjYjAyCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3Rv
dHlwZS9hdC9yZXR1cm5zLXVuZGVmaW5lZC1mb3Itb3V0LW9mLXJhbmdlLWluZGV4LmpzCkBAIC0w
LDAgKzEsMjAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5LnByb3Rv
dHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUmV0dXJucyB1bmRlZmluZWQgaWYgdGhlIHNwZWNp
ZmllZCBpbmRleCBsZXNzIHRoYW4gb3IgZ3JlYXRlciB0aGFuIHRoZSBhdmFpbGFibGUgaW5kZXgg
cmFuZ2UuCitpbmZvOiB8CisgIEFycmF5LnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIElmIGsg
PCAwIG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgorZmVhdHVyZXM6IFtBcnJh
eS5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJv
dG90eXBlLmF0LCAnZnVuY3Rpb24nKTsKKworbGV0IGEgPSBbXTsKKworYXNzZXJ0LnNhbWVWYWx1
ZShhLmF0KC0yKSwgdW5kZWZpbmVkLCAnYS5hdCgtMikgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7
IC8vIHdyYXAgYXJvdW5kIHRoZSBlbmQKK2Fzc2VydC5zYW1lVmFsdWUoYS5hdCgwKSwgdW5kZWZp
bmVkLCAnYS5hdCgwKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
YS5hdCgxKSwgdW5kZWZpbmVkLCAnYS5hdCgxKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsKKwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlw
ZS9pdGVtL2luZGV4LWFyZ3VtZW50LXRvaW50ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9pbmRleC1hcmd1bWVudC10b2ludGVnZXIu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNlOGU5ODhhYzE5ZjM2ZDhjMWE1Nzk3
MjRhN2U3MWQ4YzI4NzJmMzIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9p
dGVtL2luZGV4LWFyZ3VtZW50LXRvaW50ZWdlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDI3ICsw
LDAgQEAKLS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLWFycmF5LnByb3RvdHlwZS5p
dGVtCi1kZXNjcmlwdGlvbjogPgotICBQcm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgotaW5m
bzogfAotICBBcnJheS5wcm90b3R5cGUuaXRlbSggaW5kZXggKQotCi0gIExldCByZWxhdGl2ZUlu
ZGV4IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KLQotZmVhdHVyZXM6IFtBcnJheS5wcm90b3R5cGUu
aXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheS5wcm90b3R5cGUuaXRl
bSwgJ2Z1bmN0aW9uJyk7Ci0KLWxldCB2YWx1ZU9mQ2FsbENvdW50ID0gMDsKLWxldCBpbmRleCA9
IHsKLSAgdmFsdWVPZigpIHsKLSAgICB2YWx1ZU9mQ2FsbENvdW50Kys7Ci0gICAgcmV0dXJuIDE7
Ci0gIH0KLX07Ci0KLWxldCBhID0gWzAsMSwyLDNdOwotCi1hc3NlcnQuc2FtZVZhbHVlKGEuaXRl
bShpbmRleCksIDEsICdhLml0ZW0oe3ZhbHVlT2YoKSB7dmFsdWVPZkNhbGxDb3VudCsrOyByZXR1
cm4gMTt9fSkgbXVzdCByZXR1cm4gMScpOwotYXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZU9mQ2FsbENv
dW50LCAxLCAnVGhlIHZhbHVlIG9mIGB2YWx1ZU9mQ2FsbENvdW50YCBpcyAxJyk7CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0v
aW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLWludmFsaWQuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vaW5kZXgtbm9uLW51
bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLWludmFsaWQuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGExZjdkNzgyNmU2MWI2NmM0ODYzNDE5YzIyOGJkZWUxNjQwOThlMGEuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL2luZGV4LW5vbi1udW1lcmljLWFy
Z3VtZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBA
QAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtYXJyYXkucHJvdG90eXBlLml0ZW0K
LWRlc2NyaXB0aW9uOiA+Ci0gIFByb3BlcnR5IHR5cGUgYW5kIGRlc2NyaXB0b3IuCi1pbmZvOiB8
Ci0gIEFycmF5LnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgTGV0IHJlbGF0aXZlSW5kZXgg
YmUgPyBUb0ludGVnZXIoaW5kZXgpLgotCi1mZWF0dXJlczogW0FycmF5LnByb3RvdHlwZS5pdGVt
XQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5LnByb3RvdHlwZS5pdGVtLCAn
ZnVuY3Rpb24nKTsKLQotbGV0IGEgPSBbMCwxLDIsM107Ci0KLWFzc2VydC50aHJvd3MoVHlwZUVy
cm9yLCAoKSA9PiB7Ci0gIGEuaXRlbShTeW1ib2woKSk7Ci19LCAnYGEuaXRlbShTeW1ib2woKSlg
IHRocm93cyBUeXBlRXJyb3InKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10
b2ludGVnZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90
eXBlL2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYTM4OGZjMDJmZWYzN2UyOTVhZGRmY2MyNDBlODRkYWUx
MmVmMTZjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9pbmRleC1u
b24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIuanMKKysrIC9kZXYvbnVsbApAQCAtMSwyNiAr
MCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy1hcnJheS5wcm90b3R5cGUu
aXRlbQotZGVzY3JpcHRpb246ID4KLSAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4KLWlu
Zm86IHwKLSAgQXJyYXkucHJvdG90eXBlLml0ZW0oIGluZGV4ICkKLQotICBMZXQgcmVsYXRpdmVJ
bmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCi0KLWZlYXR1cmVzOiBbQXJyYXkucHJvdG90eXBl
Lml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJvdG90eXBlLml0
ZW0sICdmdW5jdGlvbicpOwotCi1sZXQgYSA9IFswLDEsMiwzXTsKLQotYXNzZXJ0LnNhbWVWYWx1
ZShhLml0ZW0oZmFsc2UpLCAwLCAnYS5pdGVtKGZhbHNlKSBtdXN0IHJldHVybiAwJyk7Ci1hc3Nl
cnQuc2FtZVZhbHVlKGEuaXRlbShudWxsKSwgMCwgJ2EuaXRlbShudWxsKSBtdXN0IHJldHVybiAw
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSh1bmRlZmluZWQpLCAwLCAnYS5pdGVtKHVuZGVm
aW5lZCkgbXVzdCByZXR1cm4gMCcpOwotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oIiIpLCAwLCAn
YS5pdGVtKCIiKSBtdXN0IHJldHVybiAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbShmdW5j
dGlvbigpIHt9KSwgMCwgJ2EuaXRlbShmdW5jdGlvbigpIHt9KSBtdXN0IHJldHVybiAwJyk7Ci1h
c3NlcnQuc2FtZVZhbHVlKGEuaXRlbShbXSksIDAsICdhLml0ZW0oW10pIG11c3QgcmV0dXJuIDAn
KTsKLQotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0odHJ1ZSksIDEsICdhLml0ZW0odHJ1ZSkgbXVz
dCByZXR1cm4gMScpOwotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oIjEiKSwgMSwgJ2EuaXRlbSgi
MSIpIG11c3QgcmV0dXJuIDEnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vbGVuZ3RoLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwZTdkMTk0Nzg2N2Y5YWU1NTYwNWY2NjQwOGRiMjY5NjlhNjgw
MWY3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMK
KysrIC9kZXYvbnVsbApAQCAtMSwyNCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmlj
ayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVz
aWQ6IHNlYy1hcnJheS5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgQXJyYXkucHJv
dG90eXBlLml0ZW0ubGVuZ3RoIHZhbHVlIGFuZCBkZXNjcmlwdG9yLgotaW5mbzogfAotICBBcnJh
eS5wcm90b3R5cGUuaXRlbSggaW5kZXggKQotCi0gIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVp
bHQtaW4gT2JqZWN0cwotCi1pbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQotZmVhdHVyZXM6
IFtBcnJheS5wcm90b3R5cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBB
cnJheS5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7Ci0KLWFzc2VydC5zYW1lVmFsdWUoCi0g
IEFycmF5LnByb3RvdHlwZS5pdGVtLmxlbmd0aCwgMSwKLSAgJ1RoZSB2YWx1ZSBvZiBBcnJheS5w
cm90b3R5cGUuaXRlbS5sZW5ndGggaXMgMScKLSk7Ci0KLXZlcmlmeU5vdEVudW1lcmFibGUoQXJy
YXkucHJvdG90eXBlLml0ZW0sICdsZW5ndGgnKTsKLXZlcmlmeU5vdFdyaXRhYmxlKEFycmF5LnBy
b3RvdHlwZS5pdGVtLCAnbGVuZ3RoJyk7Ci12ZXJpZnlDb25maWd1cmFibGUoQXJyYXkucHJvdG90
eXBlLml0ZW0sICdsZW5ndGgnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9uYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL25hbWUuanMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGEzMjRkODhiNzgxOGM5YmIyNzdkYWZjYTlkZGI2NDRjZGQ3MjVlMmQu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL25hbWUuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwyNCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxk
cm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNl
Yy1hcnJheS5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgQXJyYXkucHJvdG90eXBl
Lml0ZW0ubmFtZSB2YWx1ZSBhbmQgZGVzY3JpcHRvci4KLWluZm86IHwKLSAgQXJyYXkucHJvdG90
eXBlLml0ZW0oIGluZGV4ICkKLQotICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9i
amVjdHMKLQotaW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KLWZlYXR1cmVzOiBbQXJyYXku
cHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJv
dG90eXBlLml0ZW0sICdmdW5jdGlvbicpOwotCi1hc3NlcnQuc2FtZVZhbHVlKAotICBBcnJheS5w
cm90b3R5cGUuaXRlbS5uYW1lLCAnaXRlbScsCi0gICdUaGUgdmFsdWUgb2YgQXJyYXkucHJvdG90
eXBlLml0ZW0ubmFtZSBpcyAiaXRlbSInCi0pOwotCi12ZXJpZnlOb3RFbnVtZXJhYmxlKEFycmF5
LnByb3RvdHlwZS5pdGVtLCAnbmFtZScpOwotdmVyaWZ5Tm90V3JpdGFibGUoQXJyYXkucHJvdG90
eXBlLml0ZW0sICduYW1lJyk7Ci12ZXJpZnlDb25maWd1cmFibGUoQXJyYXkucHJvdG90eXBlLml0
ZW0sICduYW1lJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
QXJyYXkvcHJvdG90eXBlL2l0ZW0vcHJvcC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL3Byb3AtZGVzYy5qcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZTI5YTNmYmNhN2ZmNmI3MjRiN2IzODY3M2RlMDMyZjc4ODRiNzU5
OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vcHJvcC1kZXNjLmpz
CisrKyAvZGV2L251bGwKQEAgLTEsMjQgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJp
Y2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1l
c2lkOiBzZWMtYXJyYXkucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIFByb3BlcnR5
IHR5cGUgYW5kIGRlc2NyaXB0b3IuCi1pbmZvOiB8Ci0gIEFycmF5LnByb3RvdHlwZS5pdGVtKCBp
bmRleCApCi0KLSAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzCi1pbmNs
dWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQotZmVhdHVyZXM6IFtBcnJheS5wcm90b3R5cGUuaXRl
bV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheS5wcm90b3R5cGUuaXRlbSwg
J2Z1bmN0aW9uJyk7Ci0KLWFzc2VydC5zYW1lVmFsdWUoCi0gIHR5cGVvZiBBcnJheS5wcm90b3R5
cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIEFycmF5LnBy
b3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24iJwotKTsKLQotdmVyaWZ5Tm90RW51bWVyYWJsZShB
cnJheS5wcm90b3R5cGUsICdpdGVtJyk7Ci12ZXJpZnlXcml0YWJsZShBcnJheS5wcm90b3R5cGUs
ICdpdGVtJyk7Ci12ZXJpZnlDb25maWd1cmFibGUoQXJyYXkucHJvdG90eXBlLCAnaXRlbScpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlw
ZS9pdGVtL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpz
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYmI0NjcwOTAzMjBhNzVlZjVjMzY2N2Ez
NWM1NzY1YWQ5NGViODcwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRl
bS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5qcworKysgL2Rldi9udWxsCkBAIC0xLDIyICswLDAg
QEAKLS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLWFycmF5LnByb3RvdHlwZS5pdGVt
Ci1kZXNjcmlwdGlvbjogPgotICBSZXR1cm4gYWJydXB0IGZyb20gVG9PYmplY3QodGhpcyB2YWx1
ZSkuCi1pbmZvOiB8Ci0gIEFycmF5LnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgTGV0IE8g
YmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KLQotZmVhdHVyZXM6IFtBcnJheS5wcm90b3R5cGUu
aXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheS5wcm90b3R5cGUuaXRl
bSwgJ2Z1bmN0aW9uJyk7Ci0KLWFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiB7Ci0gIEFy
cmF5LnByb3RvdHlwZS5pdGVtLmNhbGwodW5kZWZpbmVkKTsKLX0sICdgQXJyYXkucHJvdG90eXBl
Lml0ZW0uY2FsbCh1bmRlZmluZWQpYCB0aHJvd3MgVHlwZUVycm9yJyk7Ci0KLWFzc2VydC50aHJv
d3MoVHlwZUVycm9yLCAoKSA9PiB7Ci0gIEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwobnVsbCk7
Ci19LCAnYEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwobnVsbClgIHRocm93cyBUeXBlRXJyb3In
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90
b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0tcmVsYXRpdmUtaW5kZXguanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy1pdGVtLXJlbGF0
aXZlLWluZGV4LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZjcxYTQ5Y2U3Yjgw
OWFkZGNiYWViY2NiODg1ZWMxNmY1OWQ5MDIzLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9w
cm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0tcmVsYXRpdmUtaW5kZXguanMKKysrIC9kZXYvbnVs
bApAQCAtMSwzMCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy1hcnJh
eS5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyB0aGUgaXRlbSB2YWx1
ZSBhdCB0aGUgc3BlY2lmaWVkIHJlbGF0aXZlIGluZGV4Ci1pbmZvOiB8Ci0gIEFycmF5LnByb3Rv
dHlwZWl0ZW0gKCApCi0KLSAgTGV0IE8gYmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KLSAgTGV0
IGxlbiBiZSA/IExlbmd0aE9mQXJyYXlMaWtlKE8pLgotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/
IFRvSW50ZWdlcihpbmRleCkuCi0gIElmIHJlbGF0aXZlSW5kZXgg4omlIDAsIHRoZW4KLSAgICBM
ZXQgayBiZSByZWxhdGl2ZUluZGV4LgotICBFbHNlLAotICAgIExldCBrIGJlIGxlbiArIHJlbGF0
aXZlSW5kZXguCi0gIElmIGsgPCAwIG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVk
LgotICBSZXR1cm4gPyBHZXQoTywgISBUb1N0cmluZyhrKSkuCi0KLWZlYXR1cmVzOiBbQXJyYXku
cHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJv
dG90eXBlLml0ZW0sICdmdW5jdGlvbicpOwotCi1sZXQgYSA9IFsxLCAyLCAzLCA0LCAsNV07Ci0K
LWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDApLCAxLCAnYS5pdGVtKDApIG11c3QgcmV0dXJuIDEn
KTsKLWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKC0xKSwgNSwgJ2EuaXRlbSgtMSkgbXVzdCByZXR1
cm4gNScpOwotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oLTIpLCB1bmRlZmluZWQsICdhLml0ZW0o
LTIpIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOwotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oLTMp
LCA0LCAnYS5pdGVtKC0zKSBtdXN0IHJldHVybiA0Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRl
bSgtNCksIDMsICdhLml0ZW0oLTQpIG11c3QgcmV0dXJuIDMnKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0
ZW0uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0
ZW0vcmV0dXJucy1pdGVtLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNDdhOGZm
Yzg4MDkwMmFjM2Y3ZjA2YTI3ZmIwMzcwMmU2N2I1NDc1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9B
cnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0uanMKKysrIC9kZXYvbnVsbApAQCAtMSwz
MSArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBm
b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy1hcnJheS5wcm90b3R5
cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUg
c3BlY2lmaWVkIGluZGV4Ci1pbmZvOiB8Ci0gIEFycmF5LnByb3RvdHlwZWl0ZW0gKCApCi0KLSAg
TGV0IE8gYmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KLSAgTGV0IGxlbiBiZSA/IExlbmd0aE9m
QXJyYXlMaWtlKE8pLgotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCku
Ci0gIElmIHJlbGF0aXZlSW5kZXgg4omlIDAsIHRoZW4KLSAgICBMZXQgayBiZSByZWxhdGl2ZUlu
ZGV4LgotICBFbHNlLAotICAgIExldCBrIGJlIGxlbiArIHJlbGF0aXZlSW5kZXguCi0gIElmIGsg
PCAwIG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgotICBSZXR1cm4gPyBHZXQo
TywgISBUb1N0cmluZyhrKSkuCi0KLWZlYXR1cmVzOiBbQXJyYXkucHJvdG90eXBlLml0ZW1dCi0t
LS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXkucHJvdG90eXBlLml0ZW0sICdmdW5j
dGlvbicpOwotCi1sZXQgYSA9IFsxLCAyLCAzLCA0LCw1XTsKLQotYXNzZXJ0LnNhbWVWYWx1ZShh
Lml0ZW0oMCksIDEsICdhLml0ZW0oMCkgbXVzdCByZXR1cm4gMScpOwotYXNzZXJ0LnNhbWVWYWx1
ZShhLml0ZW0oMSksIDIsICdhLml0ZW0oMSkgbXVzdCByZXR1cm4gMicpOwotYXNzZXJ0LnNhbWVW
YWx1ZShhLml0ZW0oMiksIDMsICdhLml0ZW0oMikgbXVzdCByZXR1cm4gMycpOwotYXNzZXJ0LnNh
bWVWYWx1ZShhLml0ZW0oMyksIDQsICdhLml0ZW0oMykgbXVzdCByZXR1cm4gNCcpOwotYXNzZXJ0
LnNhbWVWYWx1ZShhLml0ZW0oNCksIHVuZGVmaW5lZCwgJ2EuaXRlbSg0KSBtdXN0IHJldHVybiB1
bmRlZmluZWQnKTsKLWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDUpLCA1LCAnYS5pdGVtKDUpIG11
c3QgcmV0dXJuIDUnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3Bh
cnNlLWFycmF5cy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90
b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFycmF5cy5q
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWI5ZWUzYWYwNjY5N2U4MGFkMWVhM2U3
YTk0M2UwMzI2NDRhMTk0ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXkvcHJvdG90eXBlL2l0
ZW0vcmV0dXJucy11bmRlZmluZWQtZm9yLWhvbGVzLWluLXNwYXJzZS1hcnJheXMuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSw0MyArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxk
cm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNl
Yy1hcnJheS5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyB0aGUgaXRl
bSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIGluZGV4LCByZXNwZWN0aW5nIGhvbGVzIGluIHNwYXJz
ZSBhcnJheXMuCi1pbmZvOiB8Ci0gIEFycmF5LnByb3RvdHlwZWl0ZW0gKCApCi0KLSAgTGV0IE8g
YmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KLSAgTGV0IGxlbiBiZSA/IExlbmd0aE9mQXJyYXlM
aWtlKE8pLgotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCi0gIElm
IHJlbGF0aXZlSW5kZXgg4omlIDAsIHRoZW4KLSAgICBMZXQgayBiZSByZWxhdGl2ZUluZGV4Lgot
ICBFbHNlLAotICAgIExldCBrIGJlIGxlbiArIHJlbGF0aXZlSW5kZXguCi0gIElmIGsgPCAwIG9y
IGsg4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgotICBSZXR1cm4gPyBHZXQoTywgISBU
b1N0cmluZyhrKSkuCi0KLWZlYXR1cmVzOiBbQXJyYXkucHJvdG90eXBlLml0ZW1dCi0tLS0qLwot
YXNzZXJ0LnNhbWVWYWx1ZSgKLSAgdHlwZW9mIEFycmF5LnByb3RvdHlwZS5pdGVtLAotICAnZnVu
Y3Rpb24nLAotICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgQXJyYXkucHJvdG90eXBlLml0ZW1gIGlz
ICJmdW5jdGlvbiInCi0pOwotCi1sZXQgYSA9IFswLCAxLCAsIDMsIDQsICwgNl07Ci0KLWFzc2Vy
dC5zYW1lVmFsdWUoYS5pdGVtKDApLCAwLCAnYS5pdGVtKDApIG11c3QgcmV0dXJuIDAnKTsKLWFz
c2VydC5zYW1lVmFsdWUoYS5pdGVtKDEpLCAxLCAnYS5pdGVtKDEpIG11c3QgcmV0dXJuIDEnKTsK
LWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDIpLCB1bmRlZmluZWQsICdhLml0ZW0oMikgbXVzdCBy
ZXR1cm4gdW5kZWZpbmVkJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgzKSwgMywgJ2EuaXRl
bSgzKSBtdXN0IHJldHVybiAzJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSg0KSwgNCwgJ2Eu
aXRlbSg0KSBtdXN0IHJldHVybiA0Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSg1KSwgdW5k
ZWZpbmVkLCAnYS5pdGVtKDUpIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOwotYXNzZXJ0LnNhbWVW
YWx1ZShhLml0ZW0oNiksIDYsICdhLml0ZW0oNikgbXVzdCByZXR1cm4gNicpOwotYXNzZXJ0LnNh
bWVWYWx1ZShhLml0ZW0oLTApLCAwLCAnYS5pdGVtKC0wKSBtdXN0IHJldHVybiAwJyk7Ci1hc3Nl
cnQuc2FtZVZhbHVlKGEuaXRlbSgtMSksIDYsICdhLml0ZW0oLTEpIG11c3QgcmV0dXJuIDYnKTsK
LWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKC0yKSwgdW5kZWZpbmVkLCAnYS5pdGVtKC0yKSBtdXN0
IHJldHVybiB1bmRlZmluZWQnKTsKLWFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKC0zKSwgNCwgJ2Eu
aXRlbSgtMykgbXVzdCByZXR1cm4gNCcpOwotYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oLTQpLCAz
LCAnYS5pdGVtKC00KSBtdXN0IHJldHVybiAzJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgt
NSksIHVuZGVmaW5lZCwgJ2EuaXRlbSgtNSkgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7Ci1hc3Nl
cnQuc2FtZVZhbHVlKGEuaXRlbSgtNiksIDEsICdhLml0ZW0oLTYpIG11c3QgcmV0dXJuIDEnKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheS9wcm90b3R5
cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5lZC1mb3Itb3V0LW9mLXJhbmdlLWluZGV4LmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybnMt
dW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXguanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGI4NjZhNTExYWM1ZTk0NGYzMTY2ZTQ3Y2EzODllNmZjZWEwNmIzMjcuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybnMtdW5kZWZpbmVkLWZv
ci1vdXQtb2YtcmFuZ2UtaW5kZXguanMKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi0v
LyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy1hcnJheS5wcm90b3R5cGUuaXRlbQotZGVz
Y3JpcHRpb246ID4KLSAgUmV0dXJucyB1bmRlZmluZWQgaWYgdGhlIHNwZWNpZmllZCBpbmRleCBs
ZXNzIHRoYW4gb3IgZ3JlYXRlciB0aGFuIHRoZSBhdmFpbGFibGUgaW5kZXggcmFuZ2UuCi1pbmZv
OiB8Ci0gIEFycmF5LnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgSWYgayA8IDAgb3IgayDi
iaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmluZWQuCi1mZWF0dXJlczogW0FycmF5LnByb3RvdHlw
ZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5LnByb3RvdHlwZS5p
dGVtLCAnZnVuY3Rpb24nKTsKLQotbGV0IGEgPSBbXTsKLQotYXNzZXJ0LnNhbWVWYWx1ZShhLml0
ZW0oLTIpLCB1bmRlZmluZWQsICdhLml0ZW0oLTIpIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOyAv
LyB3cmFwIGFyb3VuZCB0aGUgZW5kCi1hc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgwKSwgdW5kZWZp
bmVkLCAnYS5pdGVtKDApIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOwotYXNzZXJ0LnNhbWVWYWx1
ZShhLml0ZW0oMSksIHVuZGVmaW5lZCwgJ2EuaXRlbSgxKSBtdXN0IHJldHVybiB1bmRlZmluZWQn
KTsKLQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9w
cm90b3R5cGUvYXQvaW5kZXgtYXJndW1lbnQtdG9pbnRlZ2VyLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvaW5kZXgtYXJndW1lbnQtdG9pbnRl
Z2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmY5ZjJkYWU0NTBmNzcyNWUxMDc2MWZhZWZkZmRhNDA1YTJiZjQz
NzMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3Ry
aW5nL3Byb3RvdHlwZS9hdC9pbmRleC1hcmd1bWVudC10b2ludGVnZXIuanMKQEAgLTAsMCArMSwy
NyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc3RyaW5nLnByb3RvdHlwZS5h
dAorZGVzY3JpcHRpb246ID4KKyAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4KK2luZm86
IHwKKyAgU3RyaW5nLnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIExldCByZWxhdGl2ZUluZGV4
IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KKworZmVhdHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLmF0
XQorLS0tKi8KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuYXQsICdm
dW5jdGlvbicpOworCitsZXQgdmFsdWVPZkNhbGxDb3VudCA9IDA7CitsZXQgaW5kZXggPSB7Cisg
IHZhbHVlT2YoKSB7CisgICAgdmFsdWVPZkNhbGxDb3VudCsrOworICAgIHJldHVybiAxOworICB9
Cit9OworCitsZXQgcyA9ICIwMSI7CisKK2Fzc2VydC5zYW1lVmFsdWUocy5hdChpbmRleCksICcx
JywgJ3MuYXQoe3ZhbHVlT2YoKSB7dmFsdWVPZkNhbGxDb3VudCsrOyByZXR1cm4gMTt9fSkgbXVz
dCByZXR1cm4gMScpOworYXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZU9mQ2FsbENvdW50LCAxLCAnVGhl
IHZhbHVlIG9mIGB2YWx1ZU9mQ2FsbENvdW50YCBpcyAxJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVt
ZXJpYy1hcmd1bWVudC10b2ludGVnZXItaW52YWxpZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50
LXRvaW50ZWdlci1pbnZhbGlkLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM4N2ZkZWQxMDkzY2MyMmQ3ZGFjZmI4
YzgwNmJjYzY5NTNmYmVlOWMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVu
dC10b2ludGVnZXItaW52YWxpZC5qcwpAQCAtMCwwICsxLDIwIEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
LyotLS0KK2VzaWQ6IHNlYy1zdHJpbmcucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBQ
cm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgoraW5mbzogfAorICBTdHJpbmcucHJvdG90eXBl
LmF0KCBpbmRleCApCisKKyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgp
LgorCitmZWF0dXJlczogW1N0cmluZy5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVW
YWx1ZSh0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9uJyk7CisKK2xldCBzID0g
IjAxIjsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKKyAgcy5hdChTeW1ib2wo
KSk7Cit9LCAnYHMuYXQoU3ltYm9sKCkpYCB0aHJvd3MgVHlwZUVycm9yJyk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9pbmRl
eC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVu
dC10b2ludGVnZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODZlMWU3MDFkMTA1Y2Q2ODA1ZDU0ZTVlYTgyNGU5
ODA5N2QyNjE5NQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50
ZWdlci5qcwpAQCAtMCwwICsxLDI2IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxk
cm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNl
Yy1zdHJpbmcucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBQcm9wZXJ0eSB0eXBlIGFu
ZCBkZXNjcmlwdG9yLgoraW5mbzogfAorICBTdHJpbmcucHJvdG90eXBlLmF0KCBpbmRleCApCisK
KyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgorCitmZWF0dXJlczog
W1N0cmluZy5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3Ry
aW5nLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9uJyk7CisKK2xldCBzID0gIjAxIjsKKworYXNzZXJ0
LnNhbWVWYWx1ZShzLmF0KGZhbHNlKSwgJzAnLCAncy5hdChmYWxzZSkgbXVzdCByZXR1cm4gMCcp
OworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KG51bGwpLCAnMCcsICdzLmF0KG51bGwpIG11c3QgcmV0
dXJuIDAnKTsKK2Fzc2VydC5zYW1lVmFsdWUocy5hdCh1bmRlZmluZWQpLCAnMCcsICdzLmF0KHVu
ZGVmaW5lZCkgbXVzdCByZXR1cm4gMCcpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KCIiKSwgJzAn
LCAncy5hdCgiIikgbXVzdCByZXR1cm4gMCcpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KGZ1bmN0
aW9uKCkge30pLCAnMCcsICdzLmF0KGZ1bmN0aW9uKCkge30pIG11c3QgcmV0dXJuIDAnKTsKK2Fz
c2VydC5zYW1lVmFsdWUocy5hdChbXSksICcwJywgJ3MuYXQoW10pIG11c3QgcmV0dXJuIDAnKTsK
KworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KHRydWUpLCAnMScsICdzLmF0KHRydWUpIG11c3QgcmV0
dXJuIDEnKTsKK2Fzc2VydC5zYW1lVmFsdWUocy5hdCgiMSIpLCAnMScsICdzLmF0KCIxIikgbXVz
dCByZXR1cm4gMScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1N0cmluZy9wcm90b3R5cGUvYXQvbGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvbGVuZ3RoLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZmNTAyOWVk
NWZkYjI5ZGQwOTA4ZTAyMGFlYjViNTY5OWUwNTIyMWMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9sZW5ndGguanMK
QEAgLTAsMCArMSwyNCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc3RyaW5n
LnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgU3RyaW5nLnByb3RvdHlwZS5hdC5sZW5n
dGggdmFsdWUgYW5kIGRlc2NyaXB0b3IuCitpbmZvOiB8CisgIFN0cmluZy5wcm90b3R5cGUuYXQo
IGluZGV4ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHMKKwor
aW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbU3RyaW5nLnByb3RvdHlw
ZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBTdHJpbmcucHJvdG90eXBlLmF0
LCAnZnVuY3Rpb24nKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgU3RyaW5nLnByb3RvdHlwZS5h
dC5sZW5ndGgsIDEsCisgICdUaGUgdmFsdWUgb2YgU3RyaW5nLnByb3RvdHlwZS5hdC5sZW5ndGgg
aXMgMScKKyk7CisKK3ZlcmlmeU5vdEVudW1lcmFibGUoU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2xl
bmd0aCcpOwordmVyaWZ5Tm90V3JpdGFibGUoU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2xlbmd0aCcp
OwordmVyaWZ5Q29uZmlndXJhYmxlKFN0cmluZy5wcm90b3R5cGUuYXQsICdsZW5ndGgnKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBl
L2F0L25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9hdC9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjYmE0YmIxM2JhNjUzNzJjMGM4NjYwNmFlM2I5
NzE1MDhiZmYwN2EKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9uYW1lLmpzCkBAIC0wLDAgKzEsMjYgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXN0cmluZy5wcm90b3R5cGUuYXQKK2Rlc2NyaXB0
aW9uOiA+CisgIFN0cmluZy5wcm90b3R5cGUuYXQubmFtZSB2YWx1ZSBhbmQgZGVzY3JpcHRvci4K
K2luZm86IHwKKyAgU3RyaW5nLnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIDE3IEVDTUFTY3Jp
cHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0cworCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVy
LmpzXQorZmVhdHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2VydC5zYW1l
VmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuYXQsICdmdW5jdGlvbicpOworCithc3NlcnQu
c2FtZVZhbHVlKAorICBTdHJpbmcucHJvdG90eXBlLmF0Lm5hbWUsICdhdCcsCisgICdUaGUgdmFs
dWUgb2YgU3RyaW5nLnByb3RvdHlwZS5hdC5uYW1lIGlzICJhdCInCispOworCit2ZXJpZnlQcm9w
ZXJ0eShTdHJpbmcucHJvdG90eXBlLmF0LCAnbmFtZScsIHsKKyAgZW51bWVyYWJsZTogZmFsc2Us
CisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3By
b3AtZGVzYy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90
eXBlL2F0L3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MGQzMzFlZjU4MTYwYWQ1NmQzODM3NGI5
M2UwYzRmMzFjNTVkMDQxCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzCkBAIC0wLDAgKzEsMjYg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXN0cmluZy5wcm90b3R5cGUuYXQK
K2Rlc2NyaXB0aW9uOiA+CisgIFByb3BlcnR5IHR5cGUgYW5kIGRlc2NyaXB0b3IuCitpbmZvOiB8
CisgIFN0cmluZy5wcm90b3R5cGUuYXQoIGluZGV4ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5k
YXJkIEJ1aWx0LWluIE9iamVjdHMKK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0
dXJlczogW1N0cmluZy5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBl
b2YgU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9uJyk7CisKK2Fzc2VydC5zYW1lVmFsdWUo
CisgIHR5cGVvZiBTdHJpbmcucHJvdG90eXBlLmF0LAorICAnZnVuY3Rpb24nLAorICAnVGhlIHZh
bHVlIG9mIGB0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicKKyk7CisK
K3ZlcmlmeVByb3BlcnR5KFN0cmluZy5wcm90b3R5cGUuYXQsICduYW1lJywgeworICBlbnVtZXJh
YmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9hdC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjA5MDhmMDZmMDU3MjQ0NDgzMmNkYTAxNTExMzlmMjVjYzg1YWQ0NGYKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3By
b3RvdHlwZS9hdC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy5qcwpAQCAtMCwwICsxLDIyIEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1zdHJpbmcucHJvdG90eXBlLmF0CitkZXNj
cmlwdGlvbjogPgorICBSZXR1cm4gYWJydXB0IGZyb20gUmVxdWlyZU9iamVjdENvZXJjaWJsZSh0
aGlzIHZhbHVlKS4KK2luZm86IHwKKyAgU3RyaW5nLnByb3RvdHlwZS5hdCggaW5kZXggKQorCisg
IExldCBPIGJlID8gUmVxdWlyZU9iamVjdENvZXJjaWJsZSh0aGlzIHZhbHVlKS4KKworZmVhdHVy
ZXM6IFtTdHJpbmcucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9m
IFN0cmluZy5wcm90b3R5cGUuYXQsICdmdW5jdGlvbicpOworCithc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgKCkgPT4geworICBTdHJpbmcucHJvdG90eXBlLmF0LmNhbGwodW5kZWZpbmVkKTsKK30s
ICdgU3RyaW5nLnByb3RvdHlwZS5hdC5jYWxsKHVuZGVmaW5lZClgIHRocm93cyBUeXBlRXJyb3In
KTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKKyAgU3RyaW5nLnByb3RvdHlw
ZS5hdC5jYWxsKG51bGwpOworfSwgJ2BTdHJpbmcucHJvdG90eXBlLmF0LmNhbGwobnVsbClgIHRo
cm93cyBUeXBlRXJyb3InKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3JldHVybnMtY29kZS11bml0LmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJucy1jb2RlLXVu
aXQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTdhYjA4NzNlZTNmMDEyZTM5NmI3OGYyNGFjYWY0MDJhZTkxMDY5
NQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJp
bmcvcHJvdG90eXBlL2F0L3JldHVybnMtY29kZS11bml0LmpzCkBAIC0wLDAgKzEsMzAgQEAKKy8v
IENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLVN0cmluZy5wcm90b3R5cGUuYXQKK2Rlc2Ny
aXB0aW9uOiA+CisgIFRoZSBtZXRob2Qgc2hvdWxkIHJldHVybiBhbiBJdGVyYXRvciBpbnN0YW5j
ZS4KK2luZm86IHwKKyAgU3RyaW5nLnByb3RvdHlwZS5hdCAoICkKKworICBMZXQgTyBiZSA/IFRv
T2JqZWN0KHRoaXMgdmFsdWUpLgorICBMZXQgbGVuIGJlID8gTGVuZ3RoT2ZTdHJpbmdMaWtlKE8p
LgorICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCisgIElmIHJlbGF0
aXZlSW5kZXgg4omlIDAsIHRoZW4KKyAgICBMZXQgayBiZSByZWxhdGl2ZUluZGV4LgorICBFbHNl
LAorICAgIExldCBrIGJlIGxlbiArIHJlbGF0aXZlSW5kZXguCisgIElmIGsgPCAwIG9yIGsg4oml
IGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgorICBSZXR1cm4gPyBHZXQoTywgISBUb1N0cmlu
ZyhrKSkuCisKK2ZlYXR1cmVzOiBbU3RyaW5nLnByb3RvdHlwZS5hdF0KKy0tLSovCithc3NlcnQu
c2FtZVZhbHVlKHR5cGVvZiBTdHJpbmcucHJvdG90eXBlLmF0LCAnZnVuY3Rpb24nKTsKKworbGV0
IHMgPSAiMTJcdUQ4MDAzNCI7CisKK2Fzc2VydC5zYW1lVmFsdWUocy5hdCgwKSwgIjEiLCAncy5h
dCgwKSBtdXN0IHJldHVybiAiMSInKTsKK2Fzc2VydC5zYW1lVmFsdWUocy5hdCgxKSwgIjIiLCAn
cy5hdCgxKSBtdXN0IHJldHVybiAiMiInKTsKK2Fzc2VydC5zYW1lVmFsdWUocy5hdCgyKSwgIlx1
RDgwMCIsICdzLmF0KDIpIG11c3QgcmV0dXJuICJcXHVEODAwIicpOworYXNzZXJ0LnNhbWVWYWx1
ZShzLmF0KDMpLCAiMyIsICdzLmF0KDMpIG11c3QgcmV0dXJuICIzIicpOworYXNzZXJ0LnNhbWVW
YWx1ZShzLmF0KDQpLCAiNCIsICdzLmF0KDQpIG11c3QgcmV0dXJuICI0IicpOwpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0
dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmYyYmZiYjRlMmMzZWRhMTI4MGZhOTBmNWEwYWUzYWFkMGJlOWI3ZGEKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9hdC9yZXR1cm5zLWl0ZW0tcmVsYXRpdmUtaW5kZXguanMKQEAgLTAsMCArMSwyOSBAQAor
Ly8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtU3RyaW5nLnByb3RvdHlwZS5hdAorZGVz
Y3JpcHRpb246ID4KKyAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIHJl
bGF0aXZlIGluZGV4CitpbmZvOiB8CisgIFN0cmluZy5wcm90b3R5cGUuYXQgKCApCisKKyAgTGV0
IE8gYmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KKyAgTGV0IGxlbiBiZSA/IExlbmd0aE9mU3Ry
aW5nTGlrZShPKS4KKyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgor
ICBJZiByZWxhdGl2ZUluZGV4IOKJpSAwLCB0aGVuCisgICAgTGV0IGsgYmUgcmVsYXRpdmVJbmRl
eC4KKyAgRWxzZSwKKyAgICBMZXQgayBiZSBsZW4gKyByZWxhdGl2ZUluZGV4LgorICBJZiBrIDwg
MCBvciBrIOKJpSBsZW4sIHRoZW4gcmV0dXJuIHVuZGVmaW5lZC4KKyAgUmV0dXJuID8gR2V0KE8s
ICEgVG9TdHJpbmcoaykpLgorCitmZWF0dXJlczogW1N0cmluZy5wcm90b3R5cGUuYXRdCistLS0q
LworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9u
Jyk7CisKK2xldCBzID0gIjEyMzQ1IjsKKworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KDApLCAiMSIs
ICdzLmF0KDApIG11c3QgcmV0dXJuICIxIicpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KC0xKSwg
IjUiLCAncy5hdCgtMSkgbXVzdCByZXR1cm4gIjUiJyk7Cithc3NlcnQuc2FtZVZhbHVlKHMuYXQo
LTMpLCAiMyIsICdzLmF0KC0zKSBtdXN0IHJldHVybiAiMyInKTsKK2Fzc2VydC5zYW1lVmFsdWUo
cy5hdCgtNCksICIyIiwgJ3MuYXQoLTQpIG11c3QgcmV0dXJuICIyIicpOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJu
cy1pdGVtLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5
cGUvYXQvcmV0dXJucy1pdGVtLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBmZTE2NWZhODkxODU1N2FlZjI1MzBh
ZWU2YTViODFhZmRhZTZlYmQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9hdC9yZXR1cm5zLWl0ZW0uanMKQEAgLTAsMCAr
MSwzMCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtU3RyaW5nLnByb3RvdHlw
ZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3Bl
Y2lmaWVkIGluZGV4CitpbmZvOiB8CisgIFN0cmluZy5wcm90b3R5cGUuYXQgKCApCisKKyAgTGV0
IE8gYmUgPyBUb09iamVjdCh0aGlzIHZhbHVlKS4KKyAgTGV0IGxlbiBiZSA/IExlbmd0aE9mU3Ry
aW5nTGlrZShPKS4KKyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgor
ICBJZiByZWxhdGl2ZUluZGV4IOKJpSAwLCB0aGVuCisgICAgTGV0IGsgYmUgcmVsYXRpdmVJbmRl
eC4KKyAgRWxzZSwKKyAgICBMZXQgayBiZSBsZW4gKyByZWxhdGl2ZUluZGV4LgorICBJZiBrIDwg
MCBvciBrIOKJpSBsZW4sIHRoZW4gcmV0dXJuIHVuZGVmaW5lZC4KKyAgUmV0dXJuID8gR2V0KE8s
ICEgVG9TdHJpbmcoaykpLgorCitmZWF0dXJlczogW1N0cmluZy5wcm90b3R5cGUuYXRdCistLS0q
LworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9u
Jyk7CisKK2xldCBzID0gIjEyMzQ1IjsKKworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KDApLCAiMSIs
ICdzLmF0KDApIG11c3QgcmV0dXJuICIxIicpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KDEpLCAi
MiIsICdzLmF0KDEpIG11c3QgcmV0dXJuICIyIicpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KDIp
LCAiMyIsICdzLmF0KDIpIG11c3QgcmV0dXJuICIzIicpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0
KDMpLCAiNCIsICdzLmF0KDMpIG11c3QgcmV0dXJuICI0IicpOworYXNzZXJ0LnNhbWVWYWx1ZShz
LmF0KDQpLCAiNSIsICdzLmF0KDQpIG11c3QgcmV0dXJuICI1IicpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvYXQvcmV0dXJucy11
bmRlZmluZWQtZm9yLW91dC1vZi1yYW5nZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQt
b2YtcmFuZ2UtaW5kZXguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjRiODdiMTBkOGRkNDdmZWU3OWEzNzA1YzA5
OWYyM2I0N2Y4MzE4OQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQtb2Yt
cmFuZ2UtaW5kZXguanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJp
Y2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtc3RyaW5nLnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgQ3JlYXRlcyBh
biBpdGVyYXRvciBmcm9tIGEgY3VzdG9tIG9iamVjdC4KK2luZm86IHwKKyAgU3RyaW5nLnByb3Rv
dHlwZS5hdCggaW5kZXggKQorCisgIElmIGsgPCAwIG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4g
dW5kZWZpbmVkLgorZmVhdHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2Vy
dC5zYW1lVmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuYXQsICdmdW5jdGlvbicpOworCits
ZXQgcyA9ICIiOworCithc3NlcnQuc2FtZVZhbHVlKHMuYXQoLTIpLCB1bmRlZmluZWQsICdzLmF0
KC0yKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsgLy8gd3JhcCBhcm91bmQgdGhlIGVuZAorYXNz
ZXJ0LnNhbWVWYWx1ZShzLmF0KDApLCB1bmRlZmluZWQsICdzLmF0KDApIG11c3QgcmV0dXJuIHVu
ZGVmaW5lZCcpOworYXNzZXJ0LnNhbWVWYWx1ZShzLmF0KDEpLCB1bmRlZmluZWQsICdzLmF0KDEp
IG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOworCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2luZGV4LWFyZ3VtZW50LXRvaW50
ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBl
L2l0ZW0vaW5kZXgtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA0OWNiMzQzNGIzMTg3YjQ5NWYxMjBiNjY5YTZjNzhhYTQyYWZhYTZiLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vaW5kZXgtYXJndW1lbnQtdG9pbnRl
Z2VyLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjcgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAy
MDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8q
LS0tCi1lc2lkOiBzZWMtc3RyaW5nLnByb3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBQ
cm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgotaW5mbzogfAotICBTdHJpbmcucHJvdG90eXBl
Lml0ZW0oIGluZGV4ICkKLQotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRl
eCkuCi0KLWZlYXR1cmVzOiBbU3RyaW5nLnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5z
YW1lVmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7Ci0KLWxl
dCB2YWx1ZU9mQ2FsbENvdW50ID0gMDsKLWxldCBpbmRleCA9IHsKLSAgdmFsdWVPZigpIHsKLSAg
ICB2YWx1ZU9mQ2FsbENvdW50Kys7Ci0gICAgcmV0dXJuIDE7Ci0gIH0KLX07Ci0KLWxldCBzID0g
IjAxIjsKLQotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oaW5kZXgpLCAnMScsICdzLml0ZW0oe3Zh
bHVlT2YoKSB7dmFsdWVPZkNhbGxDb3VudCsrOyByZXR1cm4gMTt9fSkgbXVzdCByZXR1cm4gMScp
OwotYXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZU9mQ2FsbENvdW50LCAxLCAnVGhlIHZhbHVlIG9mIGB2
YWx1ZU9mQ2FsbENvdW50YCBpcyAxJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2luZGV4LW5vbi1udW1lcmljLWFyZ3Vt
ZW50LXRvaW50ZWdlci1pbnZhbGlkLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1N0cmluZy9wcm90b3R5cGUvaXRlbS9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVn
ZXItaW52YWxpZC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzQwZDQ0YjgyMzRi
NjgzY2VjMGUwZGFmZGYxODE2YmQzMWNhZGIyOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5n
L3Byb3RvdHlwZS9pdGVtL2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci1pbnZh
bGlkLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAy
MDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8q
LS0tCi1lc2lkOiBzZWMtc3RyaW5nLnByb3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBQ
cm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgotaW5mbzogfAotICBTdHJpbmcucHJvdG90eXBl
Lml0ZW0oIGluZGV4ICkKLQotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRl
eCkuCi0KLWZlYXR1cmVzOiBbU3RyaW5nLnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5z
YW1lVmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7Ci0KLWxl
dCBzID0gIjAxIjsKLQotYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKLSAgcy5pdGVt
KFN5bWJvbCgpKTsKLX0sICdgcy5pdGVtKFN5bWJvbCgpKWAgdGhyb3dzIFR5cGVFcnJvcicpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5
cGUvaXRlbS9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2luZGV4LW5vbi1u
dW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDA0NDRmMWMzOWRlOTQ5NDkzNzlhOTJiNWIwMmY1MjY4NTRmNzIxNC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50
LXRvaW50ZWdlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDI2ICswLDAgQEAKLS8vIENvcHlyaWdo
dCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCi0vKi0tLQotZXNpZDogc2VjLXN0cmluZy5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246
ID4KLSAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4KLWluZm86IHwKLSAgU3RyaW5nLnBy
b3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVn
ZXIoaW5kZXgpLgotCi1mZWF0dXJlczogW1N0cmluZy5wcm90b3R5cGUuaXRlbV0KLS0tLSovCi1h
c3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBTdHJpbmcucHJvdG90eXBlLml0ZW0sICdmdW5jdGlvbicp
OwotCi1sZXQgcyA9ICIwMSI7Ci0KLWFzc2VydC5zYW1lVmFsdWUocy5pdGVtKGZhbHNlKSwgJzAn
LCAncy5pdGVtKGZhbHNlKSBtdXN0IHJldHVybiAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKHMuaXRl
bShudWxsKSwgJzAnLCAncy5pdGVtKG51bGwpIG11c3QgcmV0dXJuIDAnKTsKLWFzc2VydC5zYW1l
VmFsdWUocy5pdGVtKHVuZGVmaW5lZCksICcwJywgJ3MuaXRlbSh1bmRlZmluZWQpIG11c3QgcmV0
dXJuIDAnKTsKLWFzc2VydC5zYW1lVmFsdWUocy5pdGVtKCIiKSwgJzAnLCAncy5pdGVtKCIiKSBt
dXN0IHJldHVybiAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKHMuaXRlbShmdW5jdGlvbigpIHt9KSwg
JzAnLCAncy5pdGVtKGZ1bmN0aW9uKCkge30pIG11c3QgcmV0dXJuIDAnKTsKLWFzc2VydC5zYW1l
VmFsdWUocy5pdGVtKFtdKSwgJzAnLCAncy5pdGVtKFtdKSBtdXN0IHJldHVybiAwJyk7Ci0KLWFz
c2VydC5zYW1lVmFsdWUocy5pdGVtKHRydWUpLCAnMScsICdzLml0ZW0odHJ1ZSkgbXVzdCByZXR1
cm4gMScpOwotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oIjEiKSwgJzEnLCAncy5pdGVtKCIxIikg
bXVzdCByZXR1cm4gMScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2xlbmd0aC5qcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggNzQzNmI5NDNmODVjMTBjZmU2YmExN2ZjMTRiZjE5MWI3ZmMyM2Ni
Yy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL2xlbmd0aC5qcwor
KysgL2Rldi9udWxsCkBAIC0xLDI0ICswLDAgQEAKLS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNr
IFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNp
ZDogc2VjLXN0cmluZy5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgU3RyaW5nLnBy
b3RvdHlwZS5pdGVtLmxlbmd0aCB2YWx1ZSBhbmQgZGVzY3JpcHRvci4KLWluZm86IHwKLSAgU3Ry
aW5nLnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBC
dWlsdC1pbiBPYmplY3RzCi0KLWluY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCi1mZWF0dXJl
czogW1N0cmluZy5wcm90b3R5cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKHR5cGVv
ZiBTdHJpbmcucHJvdG90eXBlLml0ZW0sICdmdW5jdGlvbicpOwotCi1hc3NlcnQuc2FtZVZhbHVl
KAotICBTdHJpbmcucHJvdG90eXBlLml0ZW0ubGVuZ3RoLCAxLAotICAnVGhlIHZhbHVlIG9mIFN0
cmluZy5wcm90b3R5cGUuaXRlbS5sZW5ndGggaXMgMScKLSk7Ci0KLXZlcmlmeU5vdEVudW1lcmFi
bGUoU3RyaW5nLnByb3RvdHlwZS5pdGVtLCAnbGVuZ3RoJyk7Ci12ZXJpZnlOb3RXcml0YWJsZShT
dHJpbmcucHJvdG90eXBlLml0ZW0sICdsZW5ndGgnKTsKLXZlcmlmeUNvbmZpZ3VyYWJsZShTdHJp
bmcucHJvdG90eXBlLml0ZW0sICdsZW5ndGgnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vbmFtZS5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vbmFtZS5qcwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWI2MzQzMDNkYmNhYTEwMTkyZDEyYjFhMzUzMTBm
NDY5NDY4OWIyNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL25h
bWUuanMKKysrIC9kZXYvbnVsbApAQCAtMSwyNCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIw
MjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyot
LS0KLWVzaWQ6IHNlYy1zdHJpbmcucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIFN0
cmluZy5wcm90b3R5cGUuaXRlbS5uYW1lIHZhbHVlIGFuZCBkZXNjcmlwdG9yLgotaW5mbzogfAot
ICBTdHJpbmcucHJvdG90eXBlLml0ZW0oIGluZGV4ICkKLQotICAxNyBFQ01BU2NyaXB0IFN0YW5k
YXJkIEJ1aWx0LWluIE9iamVjdHMKLQotaW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KLWZl
YXR1cmVzOiBbU3RyaW5nLnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUo
dHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7Ci0KLWFzc2VydC5zYW1l
VmFsdWUoCi0gIFN0cmluZy5wcm90b3R5cGUuaXRlbS5uYW1lLCAnaXRlbScsCi0gICdUaGUgdmFs
dWUgb2YgU3RyaW5nLnByb3RvdHlwZS5pdGVtLm5hbWUgaXMgIml0ZW0iJwotKTsKLQotdmVyaWZ5
Tm90RW51bWVyYWJsZShTdHJpbmcucHJvdG90eXBlLml0ZW0sICduYW1lJyk7Ci12ZXJpZnlOb3RX
cml0YWJsZShTdHJpbmcucHJvdG90eXBlLml0ZW0sICduYW1lJyk7Ci12ZXJpZnlDb25maWd1cmFi
bGUoU3RyaW5nLnByb3RvdHlwZS5pdGVtLCAnbmFtZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9wcm9wLWRlc2MuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL3By
b3AtZGVzYy5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmUwMjA2NjQwYzU3MjRk
M2NmMTg5ZGI0ZGU2NDk4NzViZTk4MDQyMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3By
b3RvdHlwZS9pdGVtL3Byb3AtZGVzYy5qcworKysgL2Rldi9udWxsCkBAIC0xLDI0ICswLDAgQEAK
LS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLXN0cmluZy5wcm90b3R5cGUuaXRlbQot
ZGVzY3JpcHRpb246ID4KLSAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4KLWluZm86IHwK
LSAgU3RyaW5nLnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgMTcgRUNNQVNjcmlwdCBTdGFu
ZGFyZCBCdWlsdC1pbiBPYmplY3RzCi1pbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQotZmVh
dHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0
eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5pdGVtLCAnZnVuY3Rpb24nKTsKLQotYXNzZXJ0LnNhbWVW
YWx1ZSgKLSAgdHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAg
J1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9u
IicKLSk7Ci0KLXZlcmlmeU5vdEVudW1lcmFibGUoU3RyaW5nLnByb3RvdHlwZSwgJ2l0ZW0nKTsK
LXZlcmlmeVdyaXRhYmxlKFN0cmluZy5wcm90b3R5cGUsICdpdGVtJyk7Ci12ZXJpZnlDb25maWd1
cmFibGUoU3RyaW5nLnByb3RvdHlwZSwgJ2l0ZW0nKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJuLWFicnVwdC1m
cm9tLXRoaXMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3Rv
dHlwZS9pdGVtL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkMjg0MWMxMzExNTFjZTUzNmZlOWFhNjBlYTZjZjVjZDZmNjNlMGQ1Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJuLWFicnVwdC1mcm9t
LXRoaXMuanMKKysrIC9kZXYvbnVsbApAQCAtMSwyMiArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMp
IDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgot
LyotLS0KLWVzaWQ6IHNlYy1zdHJpbmcucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0g
IFJldHVybiBhYnJ1cHQgZnJvbSBSZXF1aXJlT2JqZWN0Q29lcmNpYmxlKHRoaXMgdmFsdWUpLgot
aW5mbzogfAotICBTdHJpbmcucHJvdG90eXBlLml0ZW0oIGluZGV4ICkKLQotICBMZXQgTyBiZSA/
IFJlcXVpcmVPYmplY3RDb2VyY2libGUodGhpcyB2YWx1ZSkuCi0KLWZlYXR1cmVzOiBbU3RyaW5n
LnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUodHlwZW9mIFN0cmluZy5w
cm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7Ci0KLWFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAo
KSA9PiB7Ci0gIFN0cmluZy5wcm90b3R5cGUuaXRlbS5jYWxsKHVuZGVmaW5lZCk7Ci19LCAnYFN0
cmluZy5wcm90b3R5cGUuaXRlbS5jYWxsKHVuZGVmaW5lZClgIHRocm93cyBUeXBlRXJyb3InKTsK
LQotYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKLSAgU3RyaW5nLnByb3RvdHlwZS5p
dGVtLmNhbGwobnVsbCk7Ci19LCAnYFN0cmluZy5wcm90b3R5cGUuaXRlbS5jYWxsKG51bGwpYCB0
aHJvd3MgVHlwZUVycm9yJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL3JldHVybnMtY29kZS11bml0LmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWNv
ZGUtdW5pdC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWJmY2M3MjI2YTM1YWYy
OTk1ODNhMTcyMTlhNmNiMjVhMmYwNzE5ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5nL3By
b3RvdHlwZS9pdGVtL3JldHVybnMtY29kZS11bml0LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMzAg
KzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtU3RyaW5nLnByb3RvdHlw
ZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBUaGUgbWV0aG9kIHNob3VsZCByZXR1cm4gYW4gSXRl
cmF0b3IgaW5zdGFuY2UuCi1pbmZvOiB8Ci0gIFN0cmluZy5wcm90b3R5cGVpdGVtICggKQotCi0g
IExldCBPIGJlID8gVG9PYmplY3QodGhpcyB2YWx1ZSkuCi0gIExldCBsZW4gYmUgPyBMZW5ndGhP
ZlN0cmluZ0xpa2UoTykuCi0gIExldCByZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRlZ2VyKGluZGV4
KS4KLSAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgotICAgIExldCBrIGJlIHJlbGF0aXZl
SW5kZXguCi0gIEVsc2UsCi0gICAgTGV0IGsgYmUgbGVuICsgcmVsYXRpdmVJbmRleC4KLSAgSWYg
ayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmluZWQuCi0gIFJldHVybiA/IEdl
dChPLCAhIFRvU3RyaW5nKGspKS4KLQotZmVhdHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLml0ZW1d
Ci0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5pdGVtLCAn
ZnVuY3Rpb24nKTsKLQotbGV0IHMgPSAiMTJcdUQ4MDAzNCI7Ci0KLWFzc2VydC5zYW1lVmFsdWUo
cy5pdGVtKDApLCAiMSIsICdzLml0ZW0oMCkgbXVzdCByZXR1cm4gIjEiJyk7Ci1hc3NlcnQuc2Ft
ZVZhbHVlKHMuaXRlbSgxKSwgIjIiLCAncy5pdGVtKDEpIG11c3QgcmV0dXJuICIyIicpOwotYXNz
ZXJ0LnNhbWVWYWx1ZShzLml0ZW0oMiksICJcdUQ4MDAiLCAncy5pdGVtKDIpIG11c3QgcmV0dXJu
ICJcXHVEODAwIicpOwotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oMyksICIzIiwgJ3MuaXRlbSgz
KSBtdXN0IHJldHVybiAiMyInKTsKLWFzc2VydC5zYW1lVmFsdWUocy5pdGVtKDQpLCAiNCIsICdz
Lml0ZW0oNCkgbXVzdCByZXR1cm4gIjQiJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvU3RyaW5nL3Byb3RvdHlwZS9pdGVtL3JldHVybnMtaXRlbS1yZWxhdGl2
ZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90
eXBlL2l0ZW0vcmV0dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwNTA5YmYyZTJjODgzZjQ3OWZlZWExODhmZDIyNjQ0OTEzYTE5MDE3Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy1pdGVtLXJl
bGF0aXZlLWluZGV4LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjkgKzAsMCBAQAotLy8gQ29weXJp
Z2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtU3RyaW5nLnByb3RvdHlwZWl0ZW0KLWRlc2NyaXB0aW9u
OiA+Ci0gIFJldHVybnMgdGhlIGl0ZW0gdmFsdWUgYXQgdGhlIHNwZWNpZmllZCByZWxhdGl2ZSBp
bmRleAotaW5mbzogfAotICBTdHJpbmcucHJvdG90eXBlaXRlbSAoICkKLQotICBMZXQgTyBiZSA/
IFRvT2JqZWN0KHRoaXMgdmFsdWUpLgotICBMZXQgbGVuIGJlID8gTGVuZ3RoT2ZTdHJpbmdMaWtl
KE8pLgotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCi0gIElmIHJl
bGF0aXZlSW5kZXgg4omlIDAsIHRoZW4KLSAgICBMZXQgayBiZSByZWxhdGl2ZUluZGV4LgotICBF
bHNlLAotICAgIExldCBrIGJlIGxlbiArIHJlbGF0aXZlSW5kZXguCi0gIElmIGsgPCAwIG9yIGsg
4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgotICBSZXR1cm4gPyBHZXQoTywgISBUb1N0
cmluZyhrKSkuCi0KLWZlYXR1cmVzOiBbU3RyaW5nLnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFz
c2VydC5zYW1lVmFsdWUodHlwZW9mIFN0cmluZy5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJyk7
Ci0KLWxldCBzID0gIjEyMzQ1IjsKLQotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oMCksICIxIiwg
J3MuaXRlbSgwKSBtdXN0IHJldHVybiAiMSInKTsKLWFzc2VydC5zYW1lVmFsdWUocy5pdGVtKC0x
KSwgIjUiLCAncy5pdGVtKC0xKSBtdXN0IHJldHVybiAiNSInKTsKLWFzc2VydC5zYW1lVmFsdWUo
cy5pdGVtKC0zKSwgIjMiLCAncy5pdGVtKC0zKSBtdXN0IHJldHVybiAiMyInKTsKLWFzc2VydC5z
YW1lVmFsdWUocy5pdGVtKC00KSwgIjIiLCAncy5pdGVtKC00KSBtdXN0IHJldHVybiAiMiInKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90
eXBlL2l0ZW0vcmV0dXJucy1pdGVtLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1N0cmluZy9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0uanMKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGQxNGRiMGY0Y2E0YjM5NTMxOGQ4NTM0NzdjZmY2OWZmZjI1Y2QzMzIuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1N0cmluZy9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLWl0ZW0uanMK
KysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmlj
ayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVz
aWQ6IHNlYy1TdHJpbmcucHJvdG90eXBlaXRlbQotZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyB0
aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIGluZGV4Ci1pbmZvOiB8Ci0gIFN0cmluZy5w
cm90b3R5cGVpdGVtICggKQotCi0gIExldCBPIGJlID8gVG9PYmplY3QodGhpcyB2YWx1ZSkuCi0g
IExldCBsZW4gYmUgPyBMZW5ndGhPZlN0cmluZ0xpa2UoTykuCi0gIExldCByZWxhdGl2ZUluZGV4
IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KLSAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgot
ICAgIExldCBrIGJlIHJlbGF0aXZlSW5kZXguCi0gIEVsc2UsCi0gICAgTGV0IGsgYmUgbGVuICsg
cmVsYXRpdmVJbmRleC4KLSAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRl
ZmluZWQuCi0gIFJldHVybiA/IEdldChPLCAhIFRvU3RyaW5nKGspKS4KLQotZmVhdHVyZXM6IFtT
dHJpbmcucHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3Ry
aW5nLnByb3RvdHlwZS5pdGVtLCAnZnVuY3Rpb24nKTsKLQotbGV0IHMgPSAiMTIzNDUiOwotCi1h
c3NlcnQuc2FtZVZhbHVlKHMuaXRlbSgwKSwgIjEiLCAncy5pdGVtKDApIG11c3QgcmV0dXJuICIx
IicpOwotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oMSksICIyIiwgJ3MuaXRlbSgxKSBtdXN0IHJl
dHVybiAiMiInKTsKLWFzc2VydC5zYW1lVmFsdWUocy5pdGVtKDIpLCAiMyIsICdzLml0ZW0oMikg
bXVzdCByZXR1cm4gIjMiJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKHMuaXRlbSgzKSwgIjQiLCAncy5p
dGVtKDMpIG11c3QgcmV0dXJuICI0IicpOwotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oNCksICI1
IiwgJ3MuaXRlbSg0KSBtdXN0IHJldHVybiAiNSInKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy11bmRlZmlu
ZWQtZm9yLW91dC1vZi1yYW5nZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9TdHJpbmcvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy11bmRlZmluZWQtZm9yLW91dC1vZi1y
YW5nZS1pbmRleC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmY3NzM2MGY3YjJl
OTI2MzY5OTVlMGNjMjQzZjg2ODIxZWFhNDA0OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3RyaW5n
L3Byb3RvdHlwZS9pdGVtL3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXgu
anMKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAg
UmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0K
LWVzaWQ6IHNlYy1zdHJpbmcucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIENyZWF0
ZXMgYW4gaXRlcmF0b3IgZnJvbSBhIGN1c3RvbSBvYmplY3QuCi1pbmZvOiB8Ci0gIFN0cmluZy5w
cm90b3R5cGUuaXRlbSggaW5kZXggKQotCi0gIElmIGsgPCAwIG9yIGsg4omlIGxlbiwgdGhlbiBy
ZXR1cm4gdW5kZWZpbmVkLgotZmVhdHVyZXM6IFtTdHJpbmcucHJvdG90eXBlLml0ZW1dCi0tLS0q
LwotYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5pdGVtLCAnZnVuY3Rp
b24nKTsKLQotbGV0IHMgPSAiIjsKLQotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oLTIpLCB1bmRl
ZmluZWQsICdzLml0ZW0oLTIpIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOyAvLyB3cmFwIGFyb3Vu
ZCB0aGUgZW5kCi1hc3NlcnQuc2FtZVZhbHVlKHMuaXRlbSgwKSwgdW5kZWZpbmVkLCAncy5pdGVt
KDApIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOwotYXNzZXJ0LnNhbWVWYWx1ZShzLml0ZW0oMSks
IHVuZGVmaW5lZCwgJ3MuaXRlbSgxKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsKLQpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBl
L2F0L2luZGV4LWFyZ3VtZW50LXRvaW50ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1hcmd1bWVudC10b2ludGVnZXIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZmU1OWIyMjg3MDliZjY3NzUwMzQ2OTA0OTVjNjU2YjZjYmFkMjM0Ygot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5L3Byb3RvdHlwZS9hdC9pbmRleC1hcmd1bWVudC10b2ludGVnZXIuanMKQEAgLTAsMCArMSwz
NSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3Rv
dHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUHJvcGVydHkgdHlwZSBhbmQgZGVzY3JpcHRvci4K
K2luZm86IHwKKyAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIExldCBy
ZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KKworaW5jbHVkZXM6IFt0ZXN0VHlw
ZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwgVHlwZWRBcnJheS5wcm90b3R5cGUu
YXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90
eXBlLmF0LAorICAnZnVuY3Rpb24nLAorICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJh
eS5wcm90b3R5cGUuYXRgIGlzICJmdW5jdGlvbiInCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMoVEEgPT4geworICBhc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBUQS5wcm90b3R5
cGUuYXQsICdmdW5jdGlvbicsICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUQS5wcm90b3R5cGUuYXRg
IGlzICJmdW5jdGlvbiInKTsKKyAgbGV0IHZhbHVlT2ZDYWxsQ291bnQgPSAwOworICBsZXQgaW5k
ZXggPSB7CisgICAgdmFsdWVPZigpIHsKKyAgICAgIHZhbHVlT2ZDYWxsQ291bnQrKzsKKyAgICAg
IHJldHVybiAxOworICAgIH0KKyAgfTsKKworICBsZXQgYSA9IG5ldyBUQShbMCwxLDIsM10pOwor
CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdChpbmRleCksIDEsICdhLmF0KHt2YWx1ZU9mKCkge3Zh
bHVlT2ZDYWxsQ291bnQrKzsgcmV0dXJuIDE7fX0pIG11c3QgcmV0dXJuIDEnKTsKKyAgYXNzZXJ0
LnNhbWVWYWx1ZSh2YWx1ZU9mQ2FsbENvdW50LCAxLCAnVGhlIHZhbHVlIG9mIGB2YWx1ZU9mQ2Fs
bENvdW50YCBpcyAxJyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVu
dC10b2ludGVnZXItaW52YWxpZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9hdC9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVn
ZXItaW52YWxpZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MDNmOTEyYTk5NmMxYzA3MjBiZTc0ZmNmMGM2ZmY4
YThkOGM5ZjAyCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRv
aW50ZWdlci1pbnZhbGlkLmpzCkBAIC0wLDAgKzEsMjggQEAKKy8vIENvcHlyaWdodCAoQykgMjAy
MCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUuYXQKK2Rlc2NyaXB0aW9uOiA+Cisg
IFByb3BlcnR5IHR5cGUgYW5kIGRlc2NyaXB0b3IuCitpbmZvOiB8CisgICVUeXBlZEFycmF5JS5w
cm90b3R5cGUuYXQoIGluZGV4ICkKKworICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdl
cihpbmRleCkuCisKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5
cGVkQXJyYXksIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2VydC5zYW1lVmFs
dWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5hdCwKKyAgJ2Z1bmN0aW9uJywKKyAg
J1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0YCBpcyAiZnVuY3Rp
b24iJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+IHsKKyAgYXNz
ZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgVEEucHJvdG90eXBlLmF0LCAnZnVuY3Rpb24nLCAnVGhlIHZh
bHVlIG9mIGB0eXBlb2YgVEEucHJvdG90eXBlLmF0YCBpcyAiZnVuY3Rpb24iJyk7CisgIGxldCBh
ID0gbmV3IFRBKFswLDEsMiwzXSk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+
IHsKKyAgICBhLmF0KFN5bWJvbCgpKTsKKyAgfSwgJ2BhLmF0KFN5bWJvbCgpKWAgdGhyb3dzIFR5
cGVFcnJvcicpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9p
bnRlZ2VyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJv
dG90eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4wNjZkNTdmODZjNjJiOTRlNjUwNDRjNzFjYjUwZjMzNTJjODJkNDc5Ci0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90
eXBlL2F0L2luZGV4LW5vbi1udW1lcmljLWFyZ3VtZW50LXRvaW50ZWdlci5qcwpAQCAtMCwwICsx
LDM1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJv
dG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBQcm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9y
LgoraW5mbzogfAorICAlVHlwZWRBcnJheSUucHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgTGV0
IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgorCitpbmNsdWRlczogW3Rlc3RU
eXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCBUeXBlZEFycmF5LnByb3RvdHlw
ZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90
b3R5cGUuYXQsCisgICdmdW5jdGlvbicsCisgICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUeXBlZEFy
cmF5LnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicKKyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycyhUQSA9PiB7CisgIGFzc2VydC5zYW1lVmFsdWUodHlwZW9mIFRBLnByb3Rv
dHlwZS5hdCwgJ2Z1bmN0aW9uJywgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFRBLnByb3RvdHlwZS5h
dGAgaXMgImZ1bmN0aW9uIicpOworCisgIGxldCBhID0gbmV3IFRBKFswLDEsMiwzXSk7CisKKyAg
YXNzZXJ0LnNhbWVWYWx1ZShhLmF0KGZhbHNlKSwgMCwgJ2EuYXQoZmFsc2UpIG11c3QgcmV0dXJu
IDAnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KG51bGwpLCAwLCAnYS5hdChudWxsKSBtdXN0
IHJldHVybiAwJyk7CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdCh1bmRlZmluZWQpLCAwLCAnYS5h
dCh1bmRlZmluZWQpIG11c3QgcmV0dXJuIDAnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KCIi
KSwgMCwgJ2EuYXQoIiIpIG11c3QgcmV0dXJuIDAnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0
KGZ1bmN0aW9uKCkge30pLCAwLCAnYS5hdChmdW5jdGlvbigpIHt9KSBtdXN0IHJldHVybiAwJyk7
CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdChbXSksIDAsICdhLmF0KFtdKSBtdXN0IHJldHVybiAw
Jyk7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KHRydWUpLCAxLCAnYS5hdCh0cnVlKSBtdXN0
IHJldHVybiAxJyk7CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdCgiMSIpLCAxLCAnYS5hdCgiMSIp
IG11c3QgcmV0dXJuIDEnKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L2xlbmd0aC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9sZW5ndGguanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZGI4OTVhMjIwNmQzY2RhZjExZWUzZmE4YWU5OWE0OTI0YWJmOTYyZgotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3By
b3RvdHlwZS9hdC9sZW5ndGguanMKQEAgLTAsMCArMSwyOCBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4K
KyAgVHlwZWRBcnJheS5wcm90b3R5cGUuYXQubGVuZ3RoIHZhbHVlIGFuZCBkZXNjcmlwdG9yLgor
aW5mbzogfAorICAlVHlwZWRBcnJheSUucHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgMTcgRUNN
QVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzCisKK2luY2x1ZGVzOiBbcHJvcGVydHlI
ZWxwZXIuanMsIHRlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LnByb3Rv
dHlwZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5w
cm90b3R5cGUuYXQsCisgICdmdW5jdGlvbicsCisgICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUeXBl
ZEFycmF5LnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicKKyk7CisKK2Fzc2VydC5zYW1lVmFs
dWUoCisgIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0Lmxlbmd0aCwgMSwKKyAgJ1RoZSB2YWx1ZSBv
ZiBUeXBlZEFycmF5LnByb3RvdHlwZS5hdC5sZW5ndGggaXMgMScKKyk7CisKK3ZlcmlmeU5vdEVu
dW1lcmFibGUoVHlwZWRBcnJheS5wcm90b3R5cGUuYXQsICdsZW5ndGgnKTsKK3ZlcmlmeU5vdFdy
aXRhYmxlKFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LCAnbGVuZ3RoJyk7Cit2ZXJpZnlDb25maWd1
cmFibGUoVHlwZWRBcnJheS5wcm90b3R5cGUuYXQsICdsZW5ndGgnKTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9uYW1l
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBl
L2F0L25hbWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjI1NDM3NTIyYmNjYmU1NDA3ZTc5NWRiNjYxNjYyOWMz
ODUxNDg1YQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9uYW1lLmpzCkBAIC0wLDAgKzEsMzAgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUuYXQKK2Rl
c2NyaXB0aW9uOiA+CisgICVUeXBlZEFycmF5JS5wcm90b3R5cGUuYXQubmFtZSB2YWx1ZSBhbmQg
ZGVzY3JpcHRvci4KK2luZm86IHwKKyAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5hdCggaW5kZXgg
KQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0cworCitpbmNsdWRl
czogW3Byb3BlcnR5SGVscGVyLmpzLCB0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlw
ZWRBcnJheS5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9m
IFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LAorICAnZnVuY3Rpb24nLAorICAnVGhlIHZhbHVlIG9m
IGB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuYXRgIGlzICJmdW5jdGlvbiInCispOworCith
c3NlcnQuc2FtZVZhbHVlKAorICBUeXBlZEFycmF5LnByb3RvdHlwZS5hdC5uYW1lLCAnYXQnLAor
ICAnVGhlIHZhbHVlIG9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0Lm5hbWUgaXMgImF0IicKKyk7
CisKK3ZlcmlmeVByb3BlcnR5KFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LCAnbmFtZScsIHsKKyAg
ZW51bWVyYWJsZTogZmFsc2UsCisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0
cnVlCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5L3Byb3RvdHlwZS9hdC9wcm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcHJvcC1kZXNjLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmI3YTgxMjQ0Mzc3NWE4MzU2M2I3NGFkOTRiNTk2ZjkwY2UxZDhiNjUKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUv
YXQvcHJvcC1kZXNjLmpzCkBAIC0wLDAgKzEsMjQgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBS
aWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQor
ZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUuYXQKK2Rlc2NyaXB0aW9uOiA+CisgIFBy
b3BlcnR5IHR5cGUgYW5kIGRlc2NyaXB0b3IuCitpbmZvOiB8CisgICVUeXBlZEFycmF5JS5wcm90
b3R5cGUuYXQoIGluZGV4ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9i
amVjdHMKK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanMsIHRlc3RUeXBlZEFycmF5LmpzXQor
ZmVhdHVyZXM6IFtUeXBlZEFycmF5LnByb3RvdHlwZS5hdF0KKy0tLSovCithc3NlcnQuc2FtZVZh
bHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuYXQsCisgICdmdW5jdGlvbicsCisg
ICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0
aW9uIicKKyk7CisKK3ZlcmlmeVByb3BlcnR5KFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LCAnbmFt
ZScsIHsKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIHdyaXRhYmxlOiB0cnVlLAorICBjb25maWd1
cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3Jl
dHVybi1hYnJ1cHQtZnJvbS10aGlzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRiMjI0ZDA1YmIzN2ZiNzk2ZmZm
ZmUyZDY2YjZmZDBkMmUzMDIxZDkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcmV0dXJuLWFicnVwdC1mcm9t
LXRoaXMuanMKQEAgLTAsMCArMSw0MCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2Fs
ZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBz
ZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUmV0dXJuIGFi
cnVwdCBmcm9tIFRvT2JqZWN0KHRoaXMgdmFsdWUpLgoraW5mbzogfAorICAlVHlwZWRBcnJheSUu
cHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIFBl
cmZvcm0gPyBWYWxpZGF0ZVR5cGVkQXJyYXkoTykuCisKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJy
YXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksVHlwZWRBcnJheS5wcm90b3R5cGUuYXRdCist
LS0qLworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0
LAorICAnZnVuY3Rpb24nLAorICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90
b3R5cGUuYXRgIGlzICJmdW5jdGlvbiInCispOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwg
KCkgPT4geworICBUeXBlZEFycmF5LnByb3RvdHlwZS5hdC5jYWxsKHVuZGVmaW5lZCk7Cit9LCAn
YFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LmNhbGwodW5kZWZpbmVkKWAgdGhyb3dzIFR5cGVFcnJv
cicpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4geworICBUeXBlZEFycmF5LnBy
b3RvdHlwZS5hdC5jYWxsKG51bGwpOworfSwgJ2BUeXBlZEFycmF5LnByb3RvdHlwZS5hdC5jYWxs
KG51bGwpYCB0aHJvd3MgVHlwZUVycm9yJyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVj
dG9ycyhUQSA9PiB7CisgIGFzc2VydC5zYW1lVmFsdWUodHlwZW9mIFRBLnByb3RvdHlwZS5hdCwg
J2Z1bmN0aW9uJywgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFRBLnByb3RvdHlwZS5hdGAgaXMgImZ1
bmN0aW9uIicpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiB7CisgICAgVEEu
cHJvdG90eXBlLmF0LmNhbGwodW5kZWZpbmVkKTsKKyAgfSwgJ2BUQS5wcm90b3R5cGUuYXQuY2Fs
bCh1bmRlZmluZWQpYCB0aHJvd3MgVHlwZUVycm9yJyk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBl
RXJyb3IsICgpID0+IHsKKyAgICBUQS5wcm90b3R5cGUuYXQuY2FsbChudWxsKTsKKyAgfSwgJ2BU
QS5wcm90b3R5cGUuYXQuY2FsbChudWxsKWAgdGhyb3dzIFR5cGVFcnJvcicpOworfSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUvYXQvcmV0dXJucy1pdGVtLXJlbGF0aXZlLWluZGV4LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS1yZWxhdGl2
ZS1pbmRleC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZDNkODNiZGIwMDE2NTMyNzFhNDljZmRhN2FhZTk2ZDcz
Y2I2NGViCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRleC5qcwpA
QCAtMCwwICsxLDM3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRh
cnJheSUucHJvdG90eXBlLmF0CitkZXNjcmlwdGlvbjogPgorICBSZXR1cm5zIHRoZSBpdGVtIHZh
bHVlIGF0IHRoZSBzcGVjaWZpZWQgcmVsYXRpdmUgaW5kZXgKK2luZm86IHwKKyAgJVR5cGVkQXJy
YXklLnByb3RvdHlwZS5hdCggaW5kZXggKQorCisgIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgor
ICBQZXJmb3JtID8gVmFsaWRhdGVUeXBlZEFycmF5KE8pLgorICBMZXQgbGVuIGJlIE8uW1tBcnJh
eUxlbmd0aF1dLgorICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCisg
IElmIHJlbGF0aXZlSW5kZXgg4omlIDAsIHRoZW4KKyAgICBMZXQgayBiZSByZWxhdGl2ZUluZGV4
LgorICBFbHNlLAorICAgIExldCBrIGJlIGxlbiArIHJlbGF0aXZlSW5kZXguCisgIElmIGsgPCAw
IG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4gdW5kZWZpbmVkLgorICBSZXR1cm4gPyBHZXQoTywg
ISBUb1N0cmluZyhrKSkuCisKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJl
czogW1R5cGVkQXJyYXksVHlwZWRBcnJheS5wcm90b3R5cGUuYXRdCistLS0qLworYXNzZXJ0LnNh
bWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0LAorICAnZnVuY3Rpb24n
LAorICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuYXRgIGlzICJm
dW5jdGlvbiInCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewor
ICBsZXQgYSA9IG5ldyBUQShbMSwgMiwgMywgNCwgNV0pOworICBhc3NlcnQuc2FtZVZhbHVlKGEu
YXQoMCksIDEsICdhLmF0KDApIG11c3QgcmV0dXJuIDEnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShh
LmF0KC0xKSwgNSwgJ2EuYXQoLTEpIG11c3QgcmV0dXJuIDUnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1
ZShhLmF0KC0yKSwgNCwgJ2EuYXQoLTIpIG11c3QgcmV0dXJuIDQnKTsKKyAgYXNzZXJ0LnNhbWVW
YWx1ZShhLmF0KC0zKSwgMywgJ2EuYXQoLTMpIG11c3QgcmV0dXJuIDMnKTsKKyAgYXNzZXJ0LnNh
bWVWYWx1ZShhLmF0KC00KSwgMiwgJ2EuYXQoLTQpIG11c3QgcmV0dXJuIDInKTsKK30pOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90
eXBlL2F0L3JldHVybnMtaXRlbS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm5zLWl0ZW0uanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk3MDRi
OWE2Y2JmYjIxN2QxNmYwNjJjZGNjODgwNWI5MjkwMjJkNgotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9yZXR1
cm5zLWl0ZW0uanMKQEAgLTAsMCArMSwzOCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sg
V2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBi
eSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lk
OiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAgUmV0dXJu
cyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVkIGluZGV4CitpbmZvOiB8CisgICVUeXBl
ZEFycmF5JS5wcm90b3R5cGUuYXQoIGluZGV4ICkKKworICBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1
ZS4KKyAgUGVyZm9ybSA/IFZhbGlkYXRlVHlwZWRBcnJheShPKS4KKyAgTGV0IGxlbiBiZSBPLltb
QXJyYXlMZW5ndGhdXS4KKyAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgp
LgorICBJZiByZWxhdGl2ZUluZGV4IOKJpSAwLCB0aGVuCisgICAgTGV0IGsgYmUgcmVsYXRpdmVJ
bmRleC4KKyAgRWxzZSwKKyAgICBMZXQgayBiZSBsZW4gKyByZWxhdGl2ZUluZGV4LgorICBJZiBr
IDwgMCBvciBrIOKJpSBsZW4sIHRoZW4gcmV0dXJuIHVuZGVmaW5lZC4KKyAgUmV0dXJuID8gR2V0
KE8sICEgVG9TdHJpbmcoaykpLgorCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVh
dHVyZXM6IFtUeXBlZEFycmF5LFR5cGVkQXJyYXkucHJvdG90eXBlLmF0XQorLS0tKi8KK2Fzc2Vy
dC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5hdCwKKyAgJ2Z1bmN0
aW9uJywKKyAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0YCBp
cyAiZnVuY3Rpb24iJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+
IHsKKyAgYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgVEEucHJvdG90eXBlLmF0LCAnZnVuY3Rpb24n
LCAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVEEucHJvdG90eXBlLmF0YCBpcyAiZnVuY3Rpb24iJyk7
CisgIGxldCBhID0gbmV3IFRBKFsxLCAyLCAzLCA0XSk7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShh
LmF0KDApLCAxLCAnYS5hdCgwKSBtdXN0IHJldHVybiAxJyk7CisgIGFzc2VydC5zYW1lVmFsdWUo
YS5hdCgxKSwgMiwgJ2EuYXQoMSkgbXVzdCByZXR1cm4gMicpOworICBhc3NlcnQuc2FtZVZhbHVl
KGEuYXQoMiksIDMsICdhLmF0KDIpIG11c3QgcmV0dXJuIDMnKTsKKyAgYXNzZXJ0LnNhbWVWYWx1
ZShhLmF0KDMpLCA0LCAnYS5hdCgzKSBtdXN0IHJldHVybiA0Jyk7Cit9KTsKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9y
ZXR1cm5zLXVuZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFycmF5cy5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm5zLXVu
ZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFycmF5cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOTMwZjk0
MTlmMjI4ZDUzOTYxYzNmMjc1ZDMxOGViYjgwMGY2NDA5Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVy
bnMtdW5kZWZpbmVkLWZvci1ob2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCkBAIC0wLDAgKzEsNTAg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5
cGUuYXQKK2Rlc2NyaXB0aW9uOiA+CisgIFJldHVybnMgdGhlIGl0ZW0gdmFsdWUgYXQgdGhlIHNw
ZWNpZmllZCBpbmRleCwgaG9sZXMgYXJlIGZpbGxlZCBpbiBzcGFyc2UgYXJyYXlzLgoraW5mbzog
fAorICAlVHlwZWRBcnJheSUucHJvdG90eXBlLmF0KCBpbmRleCApCisKKyAgTGV0IE8gYmUgdGhl
IHRoaXMgdmFsdWUuCisgIFBlcmZvcm0gPyBWYWxpZGF0ZVR5cGVkQXJyYXkoTykuCisgIExldCBs
ZW4gYmUgTy5bW0FycmF5TGVuZ3RoXV0uCisgIExldCByZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRl
Z2VyKGluZGV4KS4KKyAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgorICAgIExldCBrIGJl
IHJlbGF0aXZlSW5kZXguCisgIEVsc2UsCisgICAgTGV0IGsgYmUgbGVuICsgcmVsYXRpdmVJbmRl
eC4KKyAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmluZWQuCisgIFJl
dHVybiA/IEdldChPLCAhIFRvU3RyaW5nKGspKS4KKworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJh
eS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwgVHlwZWRBcnJheS5wcm90b3R5cGUuYXRdCist
LS0qLworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmF0
LAorICAnZnVuY3Rpb24nLAorICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90
b3R5cGUuYXRgIGlzICJmdW5jdGlvbiInCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMoVEEgPT4geworICBsZXQgYSA9IG5ldyBUQShbMCwgMSwgLCAzLCA0LCAsIDZdKTsKKyAg
bGV0IGZpbGxlciA9IDA7CisgIGlmIChUQS5uYW1lLnN0YXJ0c1dpdGgoJ0Zsb2F0JykpIHsKKyAg
ICBmaWxsZXIgPSBOYU47CisgIH0KKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KDApLCAwLCAnYS5h
dCgwKSBtdXN0IHJldHVybiAwJyk7CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdCgxKSwgMSwgJ2Eu
YXQoMSkgbXVzdCByZXR1cm4gMScpOworICBhc3NlcnQuc2FtZVZhbHVlKGEuYXQoMiksIGZpbGxl
ciwgJ2EuYXQoMikgbXVzdCByZXR1cm4gdGhlIHZhbHVlIG9mIGZpbGxlcicpOworICBhc3NlcnQu
c2FtZVZhbHVlKGEuYXQoMyksIDMsICdhLmF0KDMpIG11c3QgcmV0dXJuIDMnKTsKKyAgYXNzZXJ0
LnNhbWVWYWx1ZShhLmF0KDQpLCA0LCAnYS5hdCg0KSBtdXN0IHJldHVybiA0Jyk7CisgIGFzc2Vy
dC5zYW1lVmFsdWUoYS5hdCg1KSwgZmlsbGVyLCAnYS5hdCg1KSBtdXN0IHJldHVybiB0aGUgdmFs
dWUgb2YgZmlsbGVyJyk7CisgIGFzc2VydC5zYW1lVmFsdWUoYS5hdCg2KSwgNiwgJ2EuYXQoNikg
bXVzdCByZXR1cm4gNicpOworICBhc3NlcnQuc2FtZVZhbHVlKGEuYXQoLTApLCAwLCAnYS5hdCgt
MCkgbXVzdCByZXR1cm4gMCcpOworICBhc3NlcnQuc2FtZVZhbHVlKGEuYXQoLTEpLCA2LCAnYS5h
dCgtMSkgbXVzdCByZXR1cm4gNicpOworICBhc3NlcnQuc2FtZVZhbHVlKGEuYXQoLTIpLCBmaWxs
ZXIsICdhLmF0KC0yKSBtdXN0IHJldHVybiB0aGUgdmFsdWUgb2YgZmlsbGVyJyk7CisgIGFzc2Vy
dC5zYW1lVmFsdWUoYS5hdCgtMyksIDQsICdhLmF0KC0zKSBtdXN0IHJldHVybiA0Jyk7CisgIGFz
c2VydC5zYW1lVmFsdWUoYS5hdCgtNCksIDMsICdhLmF0KC00KSBtdXN0IHJldHVybiAzJyk7Cisg
IGFzc2VydC5zYW1lVmFsdWUoYS5hdCgtNSksIGZpbGxlciwgJ2EuYXQoLTUpIG11c3QgcmV0dXJu
IHRoZSB2YWx1ZSBvZiBmaWxsZXInKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KC02KSwgMSwg
J2EuYXQoLTYpIG11c3QgcmV0dXJuIDEnKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtdW5kZWZp
bmVkLWZvci1vdXQtb2YtcmFuZ2UtaW5kZXguanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcmV0dXJucy11bmRlZmluZWQtZm9yLW91dC1v
Zi1yYW5nZS1pbmRleC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmU0MzlkN2Y5YmM3YmNlYWY3YmM5Yjk0MTlj
NGFkNjU1ZGRkNDQzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2F0L3JldHVybnMtdW5kZWZpbmVkLWZvci1vdXQt
b2YtcmFuZ2UtaW5kZXguanMKQEAgLTAsMCArMSwyOCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIw
IFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0t
Citlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5hdAorZGVzY3JpcHRpb246ID4KKyAg
UmV0dXJucyB1bmRlZmluZWQgaWYgdGhlIHNwZWNpZmllZCBpbmRleCBsZXNzIHRoYW4gb3IgZ3Jl
YXRlciB0aGFuIHRoZSBhdmFpbGFibGUgaW5kZXggcmFuZ2UuCitpbmZvOiB8CisgICVUeXBlZEFy
cmF5JS5wcm90b3R5cGUuYXQoIGluZGV4ICkKKworICBJZiBrIDwgMCBvciBrIOKJpSBsZW4sIHRo
ZW4gcmV0dXJuIHVuZGVmaW5lZC4KKworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2Zl
YXR1cmVzOiBbVHlwZWRBcnJheSxUeXBlZEFycmF5LnByb3RvdHlwZS5hdF0KKy0tLSovCithc3Nl
cnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuYXQsCisgICdmdW5j
dGlvbicsCisgICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5hdGAg
aXMgImZ1bmN0aW9uIicKKyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9
PiB7CisgIGFzc2VydC5zYW1lVmFsdWUodHlwZW9mIFRBLnByb3RvdHlwZS5hdCwgJ2Z1bmN0aW9u
JywgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFRBLnByb3RvdHlwZS5hdGAgaXMgImZ1bmN0aW9uIicp
OworICBsZXQgYSA9IG5ldyBUQShbXSk7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KC0yKSwg
dW5kZWZpbmVkLCAnYS5hdCgtMikgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7IC8vIHdyYXAgYXJv
dW5kIHRoZSBlbmQKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhLmF0KDApLCB1bmRlZmluZWQsICdhLmF0
KDApIG11c3QgcmV0dXJuIHVuZGVmaW5lZCcpOworICBhc3NlcnQuc2FtZVZhbHVlKGEuYXQoMSks
IHVuZGVmaW5lZCwgJ2EuYXQoMSkgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7Cit9KTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlw
ZS9pdGVtL2luZGV4LWFyZ3VtZW50LXRvaW50ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVtL2luZGV4LWFyZ3VtZW50LXRvaW50
ZWdlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWM3Yzk1ZjcyMDhkYmE3NzNm
NjY2OGNiNzY1NTE1MjIyMzMwMGZiNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9w
cm90b3R5cGUvaXRlbS9pbmRleC1hcmd1bWVudC10b2ludGVnZXIuanMKKysrIC9kZXYvbnVsbApA
QCAtMSwzNSArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy0ldHlwZWRh
cnJheSUucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIFByb3BlcnR5IHR5cGUgYW5k
IGRlc2NyaXB0b3IuCi1pbmZvOiB8Ci0gICVUeXBlZEFycmF5JS5wcm90b3R5cGUuaXRlbSggaW5k
ZXggKQotCi0gIExldCByZWxhdGl2ZUluZGV4IGJlID8gVG9JbnRlZ2VyKGluZGV4KS4KLQotaW5j
bHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KLWZlYXR1cmVzOiBbVHlwZWRBcnJheSwgVHlwZWRB
cnJheS5wcm90b3R5cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKAotICB0eXBlb2Yg
VHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBv
ZiBgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInCi0pOwot
Ci10ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewotICBhc3NlcnQuc2FtZVZh
bHVlKHR5cGVvZiBUQS5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJywgJ1RoZSB2YWx1ZSBvZiBg
dHlwZW9mIFRBLnByb3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24iJyk7Ci0gIGxldCB2YWx1ZU9m
Q2FsbENvdW50ID0gMDsKLSAgbGV0IGluZGV4ID0gewotICAgIHZhbHVlT2YoKSB7Ci0gICAgICB2
YWx1ZU9mQ2FsbENvdW50Kys7Ci0gICAgICByZXR1cm4gMTsKLSAgICB9Ci0gIH07Ci0KLSAgbGV0
IGEgPSBuZXcgVEEoWzAsMSwyLDNdKTsKLQotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbShpbmRl
eCksIDEsICdhLml0ZW0oe3ZhbHVlT2YoKSB7dmFsdWVPZkNhbGxDb3VudCsrOyByZXR1cm4gMTt9
fSkgbXVzdCByZXR1cm4gMScpOwotICBhc3NlcnQuc2FtZVZhbHVlKHZhbHVlT2ZDYWxsQ291bnQs
IDEsICdUaGUgdmFsdWUgb2YgYHZhbHVlT2ZDYWxsQ291bnRgIGlzIDEnKTsKLX0pOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBl
L2l0ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLWludmFsaWQuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9p
bmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXItaW52YWxpZC5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggOTZiZDM3NWQ3YjU0NGZlZjkwZmJmOTBmYzRhM2Y5ZmI3MWJm
ZTA2ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9pbmRl
eC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXItaW52YWxpZC5qcworKysgL2Rldi9udWxs
CkBAIC0xLDI4ICswLDAgQEAKLS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLSV0eXBl
ZGFycmF5JS5wcm90b3R5cGUuaXRlbQotZGVzY3JpcHRpb246ID4KLSAgUHJvcGVydHkgdHlwZSBh
bmQgZGVzY3JpcHRvci4KLWluZm86IHwKLSAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5pdGVtKCBp
bmRleCApCi0KLSAgTGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgotCi1p
bmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQotZmVhdHVyZXM6IFtUeXBlZEFycmF5LCBUeXBl
ZEFycmF5LnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUoCi0gIHR5cGVv
ZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLAotICAnZnVuY3Rpb24nLAotICAnVGhlIHZhbHVl
IG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9uIicKLSk7
Ci0KLXRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9PiB7Ci0gIGFzc2VydC5zYW1l
VmFsdWUodHlwZW9mIFRBLnByb3RvdHlwZS5pdGVtLCAnZnVuY3Rpb24nLCAnVGhlIHZhbHVlIG9m
IGB0eXBlb2YgVEEucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInKTsKLSAgbGV0IGEgPSBu
ZXcgVEEoWzAsMSwyLDNdKTsKLQotICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4gewot
ICAgIGEuaXRlbShTeW1ib2woKSk7Ci0gIH0sICdgYS5pdGVtKFN5bWJvbCgpKWAgdGhyb3dzIFR5
cGVFcnJvcicpOwotfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10
b2ludGVnZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9w
cm90b3R5cGUvaXRlbS9pbmRleC1ub24tbnVtZXJpYy1hcmd1bWVudC10b2ludGVnZXIuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGYzODdmMjJjYWUzZGMzMTc0MzFkNDlkNjA5MWRk
Nzk5ZWU0MTZlMDMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0
ZW0vaW5kZXgtbm9uLW51bWVyaWMtYXJndW1lbnQtdG9pbnRlZ2VyLmpzCisrKyAvZGV2L251bGwK
QEAgLTEsMzUgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtJXR5cGVk
YXJyYXklLnByb3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBQcm9wZXJ0eSB0eXBlIGFu
ZCBkZXNjcmlwdG9yLgotaW5mbzogfAotICAlVHlwZWRBcnJheSUucHJvdG90eXBlLml0ZW0oIGlu
ZGV4ICkKLQotICBMZXQgcmVsYXRpdmVJbmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCi0KLWlu
Y2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCi1mZWF0dXJlczogW1R5cGVkQXJyYXksIFR5cGVk
QXJyYXkucHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSgKLSAgdHlwZW9m
IFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0sCi0gICdmdW5jdGlvbicsCi0gICdUaGUgdmFsdWUg
b2YgYHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24iJwotKTsK
LQotdGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+IHsKLSAgYXNzZXJ0LnNhbWVW
YWx1ZSh0eXBlb2YgVEEucHJvdG90eXBlLml0ZW0sICdmdW5jdGlvbicsICdUaGUgdmFsdWUgb2Yg
YHR5cGVvZiBUQS5wcm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9uIicpOwotCi0gIGxldCBhID0g
bmV3IFRBKFswLDEsMiwzXSk7Ci0KLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oZmFsc2UpLCAw
LCAnYS5pdGVtKGZhbHNlKSBtdXN0IHJldHVybiAwJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5p
dGVtKG51bGwpLCAwLCAnYS5pdGVtKG51bGwpIG11c3QgcmV0dXJuIDAnKTsKLSAgYXNzZXJ0LnNh
bWVWYWx1ZShhLml0ZW0odW5kZWZpbmVkKSwgMCwgJ2EuaXRlbSh1bmRlZmluZWQpIG11c3QgcmV0
dXJuIDAnKTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oIiIpLCAwLCAnYS5pdGVtKCIiKSBt
dXN0IHJldHVybiAwJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKGZ1bmN0aW9uKCkge30p
LCAwLCAnYS5pdGVtKGZ1bmN0aW9uKCkge30pIG11c3QgcmV0dXJuIDAnKTsKLSAgYXNzZXJ0LnNh
bWVWYWx1ZShhLml0ZW0oW10pLCAwLCAnYS5pdGVtKFtdKSBtdXN0IHJldHVybiAwJyk7Ci0KLSAg
YXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0odHJ1ZSksIDEsICdhLml0ZW0odHJ1ZSkgbXVzdCByZXR1
cm4gMScpOwotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgiMSIpLCAxLCAnYS5pdGVtKCIxIikg
bXVzdCByZXR1cm4gMScpOwotfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9sZW5ndGguanMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk5NzQyMWE3M2FjYzNkN2YyMjNmZWZlY2Zh
MTI5YmRhNWYwMmU4Y2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBl
L2l0ZW0vbGVuZ3RoLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAotLy8gQ29weXJp
Z2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5pdGVtCi1kZXNj
cmlwdGlvbjogPgotICBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLmxlbmd0aCB2YWx1ZSBhbmQg
ZGVzY3JpcHRvci4KLWluZm86IHwKLSAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5pdGVtKCBpbmRl
eCApCi0KLSAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzCi0KLWluY2x1
ZGVzOiBbcHJvcGVydHlIZWxwZXIuanMsIHRlc3RUeXBlZEFycmF5LmpzXQotZmVhdHVyZXM6IFtU
eXBlZEFycmF5LnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUoCi0gIHR5
cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLAotICAnZnVuY3Rpb24nLAotICAnVGhlIHZh
bHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9uIicK
LSk7Ci0KLWFzc2VydC5zYW1lVmFsdWUoCi0gIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0ubGVu
Z3RoLCAxLAotICAnVGhlIHZhbHVlIG9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0ubGVuZ3Ro
IGlzIDEnCi0pOwotCi12ZXJpZnlOb3RFbnVtZXJhYmxlKFR5cGVkQXJyYXkucHJvdG90eXBlLml0
ZW0sICdsZW5ndGgnKTsKLXZlcmlmeU5vdFdyaXRhYmxlKFR5cGVkQXJyYXkucHJvdG90eXBlLml0
ZW0sICdsZW5ndGgnKTsKLXZlcmlmeUNvbmZpZ3VyYWJsZShUeXBlZEFycmF5LnByb3RvdHlwZS5p
dGVtLCAnbGVuZ3RoJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9uYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vbmFtZS5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDIxNjNiYzA5NTYwNWM4YzQxZDE3ODg0MDZjYTlmMTM4ZWVh
YWIzMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9uYW1l
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDIw
IFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0t
Ci1lc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjogPgot
ICAlVHlwZWRBcnJheSUucHJvdG90eXBlLml0ZW0ubmFtZSB2YWx1ZSBhbmQgZGVzY3JpcHRvci4K
LWluZm86IHwKLSAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgMTcg
RUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzCi0KLWluY2x1ZGVzOiBbcHJvcGVy
dHlIZWxwZXIuanMsIHRlc3RUeXBlZEFycmF5LmpzXQotZmVhdHVyZXM6IFtUeXBlZEFycmF5LnBy
b3RvdHlwZS5pdGVtXQotLS0tKi8KLWFzc2VydC5zYW1lVmFsdWUoCi0gIHR5cGVvZiBUeXBlZEFy
cmF5LnByb3RvdHlwZS5pdGVtLAotICAnZnVuY3Rpb24nLAotICAnVGhlIHZhbHVlIG9mIGB0eXBl
b2YgVHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9uIicKLSk7Ci0KLWFzc2Vy
dC5zYW1lVmFsdWUoCi0gIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0ubmFtZSwgJ2l0ZW0nLAot
ICAnVGhlIHZhbHVlIG9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0ubmFtZSBpcyAiaXRlbSIn
Ci0pOwotCi12ZXJpZnlOb3RFbnVtZXJhYmxlKFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0sICdu
YW1lJyk7Ci12ZXJpZnlOb3RXcml0YWJsZShUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLCAnbmFt
ZScpOwotdmVyaWZ5Q29uZmlndXJhYmxlKFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0sICduYW1l
Jyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvaXRlbS9wcm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9wcm9wLWRlc2MuanMKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDQ4YjUzYzY5NWVmZDljYTUwM2U3MWM3NjRiMDg4MWVjYWFmNGYx
MWQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vcHJvcC1k
ZXNjLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjIgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAy
MDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8q
LS0tCi1lc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjog
PgotICBQcm9wZXJ0eSB0eXBlIGFuZCBkZXNjcmlwdG9yLgotaW5mbzogfAotICAlVHlwZWRBcnJh
eSUucHJvdG90eXBlLml0ZW0oIGluZGV4ICkKLQotICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1
aWx0LWluIE9iamVjdHMKLWluY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanMsIHRlc3RUeXBlZEFy
cmF5LmpzXQotZmVhdHVyZXM6IFtUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtXQotLS0tKi8KLWFz
c2VydC5zYW1lVmFsdWUoCi0gIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLAotICAn
ZnVuY3Rpb24nLAotICAnVGhlIHZhbHVlIG9mIGB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUu
aXRlbWAgaXMgImZ1bmN0aW9uIicKLSk7Ci0KLXZlcmlmeU5vdEVudW1lcmFibGUoVHlwZWRBcnJh
eS5wcm90b3R5cGUsICdpdGVtJyk7Ci12ZXJpZnlXcml0YWJsZShUeXBlZEFycmF5LnByb3RvdHlw
ZSwgJ2l0ZW0nKTsKLXZlcmlmeUNvbmZpZ3VyYWJsZShUeXBlZEFycmF5LnByb3RvdHlwZSwgJ2l0
ZW0nKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJuLWFi
cnVwdC1mcm9tLXRoaXMuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5NzU0YTYw
MGZlZDNiZmQ3Y2U4MTkxYWQxMWU5YWNhZTZjODcyMGMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxk
cm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNl
Yy0ldHlwZWRhcnJheSUucHJvdG90eXBlLml0ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIFJldHVybiBh
YnJ1cHQgZnJvbSBUb09iamVjdCh0aGlzIHZhbHVlKS4KLWluZm86IHwKLSAgJVR5cGVkQXJyYXkl
LnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCi0g
IFBlcmZvcm0gPyBWYWxpZGF0ZVR5cGVkQXJyYXkoTykuCi0KLWluY2x1ZGVzOiBbdGVzdFR5cGVk
QXJyYXkuanNdCi1mZWF0dXJlczogW1R5cGVkQXJyYXksVHlwZWRBcnJheS5wcm90b3R5cGUuaXRl
bV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKAotICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5
cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFR5cGVkQXJy
YXkucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInCi0pOwotCi1hc3NlcnQudGhyb3dzKFR5
cGVFcnJvciwgKCkgPT4gewotICBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtLmNhbGwodW5kZWZp
bmVkKTsKLX0sICdgVHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxsKHVuZGVmaW5lZClgIHRo
cm93cyBUeXBlRXJyb3InKTsKLQotYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKLSAg
VHlwZWRBcnJheS5wcm90b3R5cGUuaXRlbS5jYWxsKG51bGwpOwotfSwgJ2BUeXBlZEFycmF5LnBy
b3RvdHlwZS5pdGVtLmNhbGwobnVsbClgIHRocm93cyBUeXBlRXJyb3InKTsKLQotdGVzdFdpdGhU
eXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+IHsKLSAgYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2Yg
VEEucHJvdG90eXBlLml0ZW0sICdmdW5jdGlvbicsICdUaGUgdmFsdWUgb2YgYHR5cGVvZiBUQS5w
cm90b3R5cGUuaXRlbWAgaXMgImZ1bmN0aW9uIicpOwotCi0gIGFzc2VydC50aHJvd3MoVHlwZUVy
cm9yLCAoKSA9PiB7Ci0gICAgVEEucHJvdG90eXBlLml0ZW0uY2FsbCh1bmRlZmluZWQpOwotICB9
LCAnYFRBLnByb3RvdHlwZS5pdGVtLmNhbGwodW5kZWZpbmVkKWAgdGhyb3dzIFR5cGVFcnJvcicp
OwotCi0gIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiB7Ci0gICAgVEEucHJvdG90eXBl
Lml0ZW0uY2FsbChudWxsKTsKLSAgfSwgJ2BUQS5wcm90b3R5cGUuaXRlbS5jYWxsKG51bGwpYCB0
aHJvd3MgVHlwZUVycm9yJyk7Ci19KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybnMtaXRlbS1yZWxhdGl2
ZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3By
b3RvdHlwZS9pdGVtL3JldHVybnMtaXRlbS1yZWxhdGl2ZS1pbmRleC5qcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMTQwZGY1ZDNkNjUwNGMyNDc1NWU2NDdlZTUzZWY1MTdjYTA4N2Mz
NC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5z
LWl0ZW0tcmVsYXRpdmUtaW5kZXguanMKKysrIC9kZXYvbnVsbApAQCAtMSwzNyArMCwwIEBACi0v
LyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgotLyotLS0KLWVzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLml0
ZW0KLWRlc2NyaXB0aW9uOiA+Ci0gIFJldHVybnMgdGhlIGl0ZW0gdmFsdWUgYXQgdGhlIHNwZWNp
ZmllZCByZWxhdGl2ZSBpbmRleAotaW5mbzogfAotICAlVHlwZWRBcnJheSUucHJvdG90eXBlLml0
ZW0oIGluZGV4ICkKLQotICBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KLSAgUGVyZm9ybSA/IFZh
bGlkYXRlVHlwZWRBcnJheShPKS4KLSAgTGV0IGxlbiBiZSBPLltbQXJyYXlMZW5ndGhdXS4KLSAg
TGV0IHJlbGF0aXZlSW5kZXggYmUgPyBUb0ludGVnZXIoaW5kZXgpLgotICBJZiByZWxhdGl2ZUlu
ZGV4IOKJpSAwLCB0aGVuCi0gICAgTGV0IGsgYmUgcmVsYXRpdmVJbmRleC4KLSAgRWxzZSwKLSAg
ICBMZXQgayBiZSBsZW4gKyByZWxhdGl2ZUluZGV4LgotICBJZiBrIDwgMCBvciBrIOKJpSBsZW4s
IHRoZW4gcmV0dXJuIHVuZGVmaW5lZC4KLSAgUmV0dXJuID8gR2V0KE8sICEgVG9TdHJpbmcoaykp
LgotCi1pbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQotZmVhdHVyZXM6IFtUeXBlZEFycmF5
LFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW1dCi0tLS0qLwotYXNzZXJ0LnNhbWVWYWx1ZSgKLSAg
dHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW0sCi0gICdmdW5jdGlvbicsCi0gICdUaGUg
dmFsdWUgb2YgYHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24i
JwotKTsKLQotdGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+IHsKLSAgbGV0IGEg
PSBuZXcgVEEoWzEsIDIsIDMsIDQsIDVdKTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oMCks
IDEsICdhLml0ZW0oMCkgbXVzdCByZXR1cm4gMScpOwotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRl
bSgtMSksIDUsICdhLml0ZW0oLTEpIG11c3QgcmV0dXJuIDUnKTsKLSAgYXNzZXJ0LnNhbWVWYWx1
ZShhLml0ZW0oLTIpLCA0LCAnYS5pdGVtKC0yKSBtdXN0IHJldHVybiA0Jyk7Ci0gIGFzc2VydC5z
YW1lVmFsdWUoYS5pdGVtKC0zKSwgMywgJ2EuaXRlbSgtMykgbXVzdCByZXR1cm4gMycpOwotICBh
c3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgtNCksIDIsICdhLml0ZW0oLTQpIG11c3QgcmV0dXJuIDIn
KTsKLX0pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy1pdGVtLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy1pdGVtLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZGJlMDRhMDBmZjI2N2M5ODNlODFmZTc0OGU1
NmJkYjQ3Zjg1MTRiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9p
dGVtL3JldHVybnMtaXRlbS5qcworKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS8vIENv
cHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUuaXRlbQot
ZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyB0aGUgaXRlbSB2YWx1ZSBhdCB0aGUgc3BlY2lmaWVk
IGluZGV4Ci1pbmZvOiB8Ci0gICVUeXBlZEFycmF5JS5wcm90b3R5cGUuaXRlbSggaW5kZXggKQot
Ci0gIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgotICBQZXJmb3JtID8gVmFsaWRhdGVUeXBlZEFy
cmF5KE8pLgotICBMZXQgbGVuIGJlIE8uW1tBcnJheUxlbmd0aF1dLgotICBMZXQgcmVsYXRpdmVJ
bmRleCBiZSA/IFRvSW50ZWdlcihpbmRleCkuCi0gIElmIHJlbGF0aXZlSW5kZXgg4omlIDAsIHRo
ZW4KLSAgICBMZXQgayBiZSByZWxhdGl2ZUluZGV4LgotICBFbHNlLAotICAgIExldCBrIGJlIGxl
biArIHJlbGF0aXZlSW5kZXguCi0gIElmIGsgPCAwIG9yIGsg4omlIGxlbiwgdGhlbiByZXR1cm4g
dW5kZWZpbmVkLgotICBSZXR1cm4gPyBHZXQoTywgISBUb1N0cmluZyhrKSkuCi0KLWluY2x1ZGVz
OiBbdGVzdFR5cGVkQXJyYXkuanNdCi1mZWF0dXJlczogW1R5cGVkQXJyYXksVHlwZWRBcnJheS5w
cm90b3R5cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKAotICB0eXBlb2YgVHlwZWRB
cnJheS5wcm90b3R5cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBvZiBgdHlw
ZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInCi0pOwotCi10ZXN0
V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewotICBhc3NlcnQuc2FtZVZhbHVlKHR5
cGVvZiBUQS5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJywgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9m
IFRBLnByb3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24iJyk7Ci0gIGxldCBhID0gbmV3IFRBKFsx
LCAyLCAzLCA0XSk7Ci0KLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oMCksIDEsICdhLml0ZW0o
MCkgbXVzdCByZXR1cm4gMScpOwotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgxKSwgMiwgJ2Eu
aXRlbSgxKSBtdXN0IHJldHVybiAyJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDIpLCAz
LCAnYS5pdGVtKDIpIG11c3QgcmV0dXJuIDMnKTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0o
MyksIDQsICdhLml0ZW0oMykgbXVzdCByZXR1cm4gNCcpOwotfSk7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1
cm5zLXVuZGVmaW5lZC1mb3ItaG9sZXMtaW4tc3BhcnNlLWFycmF5cy5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybnMtdW5k
ZWZpbmVkLWZvci1ob2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA0NDdlZjUwYzJkNTRkOGEwYjZiMDA0NzNkNzA5ZWRmZTY3OWMwOTI3Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pdGVtL3JldHVybnMtdW5kZWZp
bmVkLWZvci1ob2xlcy1pbi1zcGFyc2UtYXJyYXlzLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNTAg
KzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtJXR5cGVkYXJyYXklLnBy
b3RvdHlwZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBSZXR1cm5zIHRoZSBpdGVtIHZhbHVlIGF0
IHRoZSBzcGVjaWZpZWQgaW5kZXgsIGhvbGVzIGFyZSBmaWxsZWQgaW4gc3BhcnNlIGFycmF5cy4K
LWluZm86IHwKLSAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0KLSAgTGV0
IE8gYmUgdGhlIHRoaXMgdmFsdWUuCi0gIFBlcmZvcm0gPyBWYWxpZGF0ZVR5cGVkQXJyYXkoTyku
Ci0gIExldCBsZW4gYmUgTy5bW0FycmF5TGVuZ3RoXV0uCi0gIExldCByZWxhdGl2ZUluZGV4IGJl
ID8gVG9JbnRlZ2VyKGluZGV4KS4KLSAgSWYgcmVsYXRpdmVJbmRleCDiiaUgMCwgdGhlbgotICAg
IExldCBrIGJlIHJlbGF0aXZlSW5kZXguCi0gIEVsc2UsCi0gICAgTGV0IGsgYmUgbGVuICsgcmVs
YXRpdmVJbmRleC4KLSAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmlu
ZWQuCi0gIFJldHVybiA/IEdldChPLCAhIFRvU3RyaW5nKGspKS4KLQotaW5jbHVkZXM6IFt0ZXN0
VHlwZWRBcnJheS5qc10KLWZlYXR1cmVzOiBbVHlwZWRBcnJheSwgVHlwZWRBcnJheS5wcm90b3R5
cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKAotICB0eXBlb2YgVHlwZWRBcnJheS5w
cm90b3R5cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBvZiBgdHlwZW9mIFR5
cGVkQXJyYXkucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInCi0pOwotCi10ZXN0V2l0aFR5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewotICBsZXQgYSA9IG5ldyBUQShbMCwgMSwgLCAz
LCA0LCAsIDZdKTsKLSAgbGV0IGZpbGxlciA9IDA7Ci0gIGlmIChUQS5uYW1lLnN0YXJ0c1dpdGgo
J0Zsb2F0JykpIHsKLSAgICBmaWxsZXIgPSBOYU47Ci0gIH0KLSAgYXNzZXJ0LnNhbWVWYWx1ZShh
Lml0ZW0oMCksIDAsICdhLml0ZW0oMCkgbXVzdCByZXR1cm4gMCcpOwotICBhc3NlcnQuc2FtZVZh
bHVlKGEuaXRlbSgxKSwgMSwgJ2EuaXRlbSgxKSBtdXN0IHJldHVybiAxJyk7Ci0gIGFzc2VydC5z
YW1lVmFsdWUoYS5pdGVtKDIpLCBmaWxsZXIsICdhLml0ZW0oMikgbXVzdCByZXR1cm4gdGhlIHZh
bHVlIG9mIGZpbGxlcicpOwotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgzKSwgMywgJ2EuaXRl
bSgzKSBtdXN0IHJldHVybiAzJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDQpLCA0LCAn
YS5pdGVtKDQpIG11c3QgcmV0dXJuIDQnKTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oNSks
IGZpbGxlciwgJ2EuaXRlbSg1KSBtdXN0IHJldHVybiB0aGUgdmFsdWUgb2YgZmlsbGVyJyk7Ci0g
IGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKDYpLCA2LCAnYS5pdGVtKDYpIG11c3QgcmV0dXJuIDYn
KTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oLTApLCAwLCAnYS5pdGVtKC0wKSBtdXN0IHJl
dHVybiAwJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKC0xKSwgNiwgJ2EuaXRlbSgtMSkg
bXVzdCByZXR1cm4gNicpOwotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgtMiksIGZpbGxlciwg
J2EuaXRlbSgtMikgbXVzdCByZXR1cm4gdGhlIHZhbHVlIG9mIGZpbGxlcicpOwotICBhc3NlcnQu
c2FtZVZhbHVlKGEuaXRlbSgtMyksIDQsICdhLml0ZW0oLTMpIG11c3QgcmV0dXJuIDQnKTsKLSAg
YXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oLTQpLCAzLCAnYS5pdGVtKC00KSBtdXN0IHJldHVybiAz
Jyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5pdGVtKC01KSwgZmlsbGVyLCAnYS5pdGVtKC01KSBt
dXN0IHJldHVybiB0aGUgdmFsdWUgb2YgZmlsbGVyJyk7Ci0gIGFzc2VydC5zYW1lVmFsdWUoYS5p
dGVtKC02KSwgMSwgJ2EuaXRlbSgtNikgbXVzdCByZXR1cm4gMScpOwotfSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRl
bS9yZXR1cm5zLXVuZGVmaW5lZC1mb3Itb3V0LW9mLXJhbmdlLWluZGV4LmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2l0ZW0vcmV0dXJucy11
bmRlZmluZWQtZm9yLW91dC1vZi1yYW5nZS1pbmRleC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDEzODRkOTVmMDBjMDQwYTFlNDcxNTg3ZWUyZTY1NDBkMjQ5YjQ0Yi4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaXRlbS9yZXR1cm5zLXVuZGVmaW5l
ZC1mb3Itb3V0LW9mLXJhbmdlLWluZGV4LmpzCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBA
QAotLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlw
ZS5pdGVtCi1kZXNjcmlwdGlvbjogPgotICBSZXR1cm5zIHVuZGVmaW5lZCBpZiB0aGUgc3BlY2lm
aWVkIGluZGV4IGxlc3MgdGhhbiBvciBncmVhdGVyIHRoYW4gdGhlIGF2YWlsYWJsZSBpbmRleCBy
YW5nZS4KLWluZm86IHwKLSAgJVR5cGVkQXJyYXklLnByb3RvdHlwZS5pdGVtKCBpbmRleCApCi0K
LSAgSWYgayA8IDAgb3IgayDiiaUgbGVuLCB0aGVuIHJldHVybiB1bmRlZmluZWQuCi0KLWluY2x1
ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCi1mZWF0dXJlczogW1R5cGVkQXJyYXksVHlwZWRBcnJh
eS5wcm90b3R5cGUuaXRlbV0KLS0tLSovCi1hc3NlcnQuc2FtZVZhbHVlKAotICB0eXBlb2YgVHlw
ZWRBcnJheS5wcm90b3R5cGUuaXRlbSwKLSAgJ2Z1bmN0aW9uJywKLSAgJ1RoZSB2YWx1ZSBvZiBg
dHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLml0ZW1gIGlzICJmdW5jdGlvbiInCi0pOwotCi10
ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewotICBhc3NlcnQuc2FtZVZhbHVl
KHR5cGVvZiBUQS5wcm90b3R5cGUuaXRlbSwgJ2Z1bmN0aW9uJywgJ1RoZSB2YWx1ZSBvZiBgdHlw
ZW9mIFRBLnByb3RvdHlwZS5pdGVtYCBpcyAiZnVuY3Rpb24iJyk7Ci0gIGxldCBhID0gbmV3IFRB
KFtdKTsKLQotICBhc3NlcnQuc2FtZVZhbHVlKGEuaXRlbSgtMiksIHVuZGVmaW5lZCwgJ2EuaXRl
bSgtMikgbXVzdCByZXR1cm4gdW5kZWZpbmVkJyk7IC8vIHdyYXAgYXJvdW5kIHRoZSBlbmQKLSAg
YXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oMCksIHVuZGVmaW5lZCwgJ2EuaXRlbSgwKSBtdXN0IHJl
dHVybiB1bmRlZmluZWQnKTsKLSAgYXNzZXJ0LnNhbWVWYWx1ZShhLml0ZW0oMSksIHVuZGVmaW5l
ZCwgJ2EuaXRlbSgxKSBtdXN0IHJldHVybiB1bmRlZmluZWQnKTsKLX0pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50
ZXJuYWxzL0dldE93blByb3BlcnR5L2luZGV4LXByb3AtZGVzYy5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9HZXRPd25Q
cm9wZXJ0eS9pbmRleC1wcm9wLWRlc2MuanMKaW5kZXggMTUwNTE5MzdiMGY4MmIwZTFjN2I2YTc0
MGE2ZDNhNzYwZGExZTdiYy4uMjIyYzNjZTIwMTI4N2JhODg4NmUzNjhiZDRmMjdjM2FmNTM1OGIw
MCAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0dldE93blByb3BlcnR5L2luZGV4LXByb3AtZGVzYy5qcwor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9pbnRlcm5hbHMvR2V0T3duUHJvcGVydHkvaW5kZXgtcHJvcC1kZXNjLmpzCkBAIC0xLDQgKzEs
NSBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDE2IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgogLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgogLyotLS0KIGVzaWQ6IHNlYy1pbnRlZ2VyLWlu
ZGV4ZWQtZXhvdGljLW9iamVjdHMtZ2V0b3ducHJvcGVydHktcApAQCAtMzAsNyArMzEsNyBAQCB0
ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKICAgYXNzZXJ0LnNh
bWVWYWx1ZShkZXNjcmlwdG9yMC5lbnVtZXJhYmxlLCB0cnVlKTsKICAgYXNzZXJ0LnNhbWVWYWx1
ZShkZXNjcmlwdG9yMC53cml0YWJsZSwgdHJ1ZSk7CiAKLSAgYXNzZXJ0LnNhbWVWYWx1ZShkZXNj
cmlwdG9yMS52YWx1ZSwgNDIpOworICBhc3NlcnQuc2FtZVZhbHVlKGRlc2NyaXB0b3IxLnZhbHVl
LCA0Myk7CiAgIGFzc2VydC5zYW1lVmFsdWUoZGVzY3JpcHRvcjEuY29uZmlndXJhYmxlLCB0cnVl
KTsKICAgYXNzZXJ0LnNhbWVWYWx1ZShkZXNjcmlwdG9yMS5lbnVtZXJhYmxlLCB0cnVlKTsKICAg
YXNzZXJ0LnNhbWVWYWx1ZShkZXNjcmlwdG9yMS53cml0YWJsZSwgdHJ1ZSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9nbG9iYWwtY29kZS9kZWNsLWxleC1jb25m
aWd1cmFibGUtZ2xvYmFsLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZ2xvYmFs
LWNvZGUvZGVjbC1sZXgtY29uZmlndXJhYmxlLWdsb2JhbC5qcwppbmRleCA1MjQ2NWZkYWNlMDY1
YzdlMWJkYWYwYTkyZWEzNjMzOTM5NTFjZmI1Li4xMTFlODU2NDc5YWEwM2MzNDljYjNkMjA2NGM1
YTUzMTQ5MDY5OTA3IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9n
bG9iYWwtY29kZS9kZWNsLWxleC1jb25maWd1cmFibGUtZ2xvYmFsLmpzCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2dsb2JhbC1jb2RlL2RlY2wtbGV4LWNvbmZpZ3VyYWJsZS1n
bG9iYWwuanMKQEAgLTE5LDE0ICsxOSwxNSBAQCBpbmZvOiB8CiAgICAgICAgICAgICAxLiBQZXJm
b3JtID8gZW52UmVjLkNyZWF0ZUltbXV0YWJsZUJpbmRpbmcoZG4sIHRydWUpLgogICAgICAgICAg
aWkuIEVsc2UsCiAgICAgICAgICAgICAgMS4gUGVyZm9ybSA/IGVudlJlYy5DcmVhdGVNdXRhYmxl
QmluZGluZyhkbiwgZmFsc2UpLgotaW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KIC0tLSov
CiAKIGxldCBBcnJheTsKIAogYXNzZXJ0LnNhbWVWYWx1ZShBcnJheSwgdW5kZWZpbmVkKTsKLQog
YXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgdGhpcy5BcnJheSwgJ2Z1bmN0aW9uJyk7Ci12ZXJpZnlO
b3RFbnVtZXJhYmxlKHRoaXMsICdBcnJheScpOwotdmVyaWZ5V3JpdGFibGUodGhpcywgJ0FycmF5
Jyk7Ci12ZXJpZnlDb25maWd1cmFibGUodGhpcywgJ0FycmF5Jyk7CisKKy8vIERPIE5PVCBVU0Ug
cHJvcGVydHlIZWxwZXIgQVBJIQorbGV0IGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKHRoaXMsICdBcnJheScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXNjcmlwdG9y
LmNvbmZpZ3VyYWJsZSwgdHJ1ZSk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc2NyaXB0b3IuZW51bWVy
YWJsZSwgZmFsc2UpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXNjcmlwdG9yLndyaXRhYmxlLCB0cnVl
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0MjYyLVJldmlzaW9uLnR4dCBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0MjYyLVJldmlzaW9uLnR4dAppbmRleCAxZDg1OGE0ZTRiZmE1ZWE4
ZmY0YWM1NDk0OTEzODQxN2ZlZmU2Y2FkLi41ZDIxZWY4MGE2YzE0MTA4NzEwYjJjZmQ2OTZlYzU1
NjU3M2U3YWE5IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdDI2Mi1SZXZpc2lvbi50
eHQKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QyNjItUmV2aXNpb24udHh0CkBAIC0xLDIgKzEs
MiBAQAotdGVzdDI2MiByZW1vdGUgdXJsOiBnaXRAZ2l0aHViLmNvbTp0YzM5L3Rlc3QyNjIuZ2l0
Ci10ZXN0MjYyIHJldmlzaW9uOiAxYzMzZmRiMGNhNjBmYjlkNzM5MjQwM2JlNzY5ZWQwZDI2MjA5
MTMyCit0ZXN0MjYyIHJlbW90ZSB1cmw6IGh0dHBzOi8vZ2l0aHViLmNvbS90YzM5L3Rlc3QyNjIu
Z2l0Cit0ZXN0MjYyIHJldmlzaW9uOiAyZTVmZjI0NjFiNjMxMTlhY2UwZDg2NDNmNWMwOWZkNGYz
OTMwOTA2Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>