<?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>63931</bug_id>
          
          <creation_ts>2011-07-05 05:01:31 -0700</creation_ts>
          <short_desc>WebSocket: Move current WebSocket tests to a new directory</short_desc>
          <delta_ts>2011-07-06 01:07:03 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>50099</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yuta Kitamura">yutak</reporter>
          <assigned_to name="Yuta Kitamura">yutak</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>432218</commentid>
    <comment_count>0</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-07-05 05:01:31 -0700</bug_when>
    <thetext>Create a new subdirectory under http/tests/websocket/tests and move existing WebSocket tests (for the old protocol) to that directory so I can start to put tests for the new protocol.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>432231</commentid>
    <comment_count>1</comment_count>
      <attachid>99707</attachid>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-07-05 05:48:32 -0700</bug_when>
    <thetext>Created attachment 99707
Patch

This patch is painfully huge, but what it is doing is just moving files under &quot;LayoutTests/http/tests/websocket/tests/&quot; to a new subdirectory &quot;hixie76/&quot;.

Setting cq- because:
- This change probably needs to be committed manually to keep version history.
- It is known that this move breaks at least one test of Chromium&apos;s ui_tests (which includes hard-coded path). This needs to be worked around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>432248</commentid>
    <comment_count>2</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-07-05 06:20:48 -0700</bug_when>
    <thetext>Do&apos;h, EWS bots did not like my patch... I don&apos;t know how to workaround this.

Mac and win seemed fine when I tested locally. Chromium also seemed fine on all platforms according to the try bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>432485</commentid>
    <comment_count>3</comment_count>
      <attachid>99707</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-07-05 17:09:27 -0700</bug_when>
    <thetext>Comment on attachment 99707
Patch

Setting cq- because:
&gt; - This change probably needs to be committed manually to keep version history.
&gt; - It is known that this move breaks at least one test of Chromium&apos;s ui_tests (which includes hard-coded path). This needs to be worked around.

ok, please take care of ui_tests after you land this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>432683</commentid>
    <comment_count>4</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-07-06 01:07:03 -0700</bug_when>
    <thetext>Committed r90445: &lt;http://trac.webkit.org/changeset/90445&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>99707</attachid>
            <date>2011-07-05 05:48:32 -0700</date>
            <delta_ts>2011-07-05 17:09:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>move.diff</filename>
            <type>text/plain</type>
            <size>427016</size>
            <attacher name="Yuta Kitamura">yutak</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1NzEzNzg3Li40ODZjNTI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjExIEBACisyMDExLTA3
LTA1ICBZdXRhIEtpdGFtdXJhICA8eXV0YWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYlNv
Y2tldDogTW92ZSBjdXJyZW50IFdlYlNvY2tldCB0ZXN0cyB0byBhIG5ldyBkaXJlY3RvcnkKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYzOTMxCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gb3JkZXIgdG8g
cHV0IHRlc3RzIGZvciBuZXcgV2ViU29ja2V0IHByb3RvY29sLCBleGlzdGluZyB0ZXN0cyBmb3Ig
dGhlIG9sZCBwcm90b2NvbAorICAgICAgICBuZWVkIHRvIGJlIG1vdmVkIHRvIGEgc3ViZGlyZWN0
b3J5IChuYW1lbHkgImhpeGllNzYiKS4KKworICAgICAgICBNaW5pbXVtIGNoYW5nZXMgaGF2ZSBi
ZWVuIG1hZGUgdG8gdGVzdHMgYW5kIHRlc3QgcmVzdWx0cywgc3VjaCBhczoKKyAgICAgICAgLSBV
cGRhdGUgbGlua3MgdG8gcmVzb3VyY2UgZmlsZXMgKGUuZy4gIi4uLy4uLy4uL2pzLXRlc3QtcHJl
LmpzIiB0byAiLi4vLi4vLi4vLi4vanMtdGVzdC1wcmUuanMiKSwgYW5kCisgICAgICAgIC0gVXBk
YXRlIFdlYlNvY2tldCBVUkxzIGluIHRoZSB0ZXN0cyAoaS5lLiBhZGRpbmcgImhpeGllNzYvIiB0
byB3czovLyBhbmQgd3NzOi8vIFVSTHMpLgorCisgICAgICAgIFNraXBwZWQgYW5kIHRlc3RfZXhw
ZWN0YXRpb25zLnR4dCBhcmUgYWxzbyB1cGRhdGVkIGFjY29yZGluZ2x5LgorCisgICAgICAgICog
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZGxlcl9tYXAudHh0OgorICAgICAgICBUaGlz
IGlzIHRoZSBvbmx5IGZpbGUgbGVmdCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuIFRoaXMgZmls
ZSBkZWZpbmVzIHRoZSBoYW5kbGVyIGxvY2F0aW9uCisgICAgICAgIHRvIHdoaWNoIGFjY2Vzc2Vz
IHRvIHRoZSByb290IGRpcmVjdG9yeSAoZS5nLiAid3M6Ly9leGFtcGxlLmNvbS8iKSBhcmUgcmVk
aXJlY3RlZCwgYW5kCisgICAgICAgIGNhbm5vdCBiZSBtb3ZlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2FsZXJ0LWluLWV2ZW50LWhhbmRsZXItZXhwZWN0
ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvYWxlcnQtaW4tZXZlbnQtaGFuZGxlci1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9hbGVydC1pbi1ldmVudC1oYW5kbGVyLmh0bWw6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9hbGVy
dC1pbi1ldmVudC1oYW5kbGVyLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9iYWQtaGFuZHNoYWtlLWNyYXNoLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1oYW5kc2hha2Ut
Y3Jhc2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvYmFkLWhhbmRzaGFrZS1jcmFzaC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLWhhbmRzaGFrZS1jcmFzaC5odG1sLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLWhhbmRzaGFr
ZS1jcmFzaF93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9iYWQtaGFuZHNoYWtlLWNyYXNoX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFy
cy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0Lgor
ICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90
b2NvbC1jb250cm9sLWNoYXJzLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMuaHRtbC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJv
dG9jb2wtZW1wdHktZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXBy
b3RvY29sLWVtcHR5Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWVtcHR5Lmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2Np
aS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS1leHBlY3RlZC50eHQuCisgICAg
ICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29s
LW5vbi1hc2NpaS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1ub24tYXNjaWkuaHRtbC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2J1ZmZlcmVkQW1vdW50LWFmdGVyLWNs
b3NlLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2J1ZmZlcmVkQW1vdW50LWFmdGVyLWNsb3NlLWV4cGVjdGVkLnR4dC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2J1ZmZlcmVkQW1vdW50
LWFmdGVyLWNsb3NlLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9idWZmZXJlZEFtb3VudC1hZnRlci1jbG9zZS5odG1sLgorICAgICAgICAq
IGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xpZW50LWNsb3NlLWV4cGVjdGVk
LnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2NsaWVudC1jbG9zZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9jbGllbnQtY2xvc2UuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2NsaWVudC1jbG9zZS5odG1sLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xpZW50LWNsb3NlX3dzaC5w
eTogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Ns
aWVudC1jbG9zZV93c2gucHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9jbG9zZS1iZWZvcmUtb3Blbi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1iZWZvcmUtb3Blbi1leHBl
Y3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9j
bG9zZS1iZWZvcmUtb3Blbi5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2UtYmVmb3JlLW9wZW4uaHRtbC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLWV2ZW50LWV4cGVjdGVkLnR4dDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3Nl
LWV2ZW50LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2Nsb3NlLWV2ZW50Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1ldmVudC5odG1sLgorICAgICAgICAqIGh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tbmF2aWdhdGUtbmV3LWxvY2F0
aW9uLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2Nsb3NlLW9uLW5hdmlnYXRlLW5ldy1sb2NhdGlvbi1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi1u
YXZpZ2F0ZS1uZXctbG9jYXRpb24uaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLW5hdmlnYXRlLW5ldy1sb2NhdGlvbi5odG1s
LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24t
dW5sb2FkLWFuZC1mb3JjZS1nYy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQtYW5kLWZvcmNlLWdj
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2Nsb3NlLW9uLXVubG9hZC1hbmQtZm9yY2UtZ2MuaHRtbDogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZC1hbmQtZm9y
Y2UtZ2MuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2Nsb3NlLW9uLXVubG9hZC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQtZXhwZWN0ZWQudHh0Lgor
ICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5s
b2FkLXJlZmVyZW5jZS1pbi1wYXJlbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLXJlZmVyZW5j
ZS1pbi1wYXJlbnQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2FkLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3Nl
LW9uLXVubG9hZC1yZWZlcmVuY2UtaW4tcGFyZW50Lmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQuaHRtbDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9h
ZC5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xv
c2Utb24tdW5sb2FkX3dzaC5weTogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZF93c2gucHkuCisgICAgICAgICogaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS11bnJlZi13ZWJzb2NrZXQtZXhwZWN0
ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvY2xvc2UtdW5yZWYtd2Vic29ja2V0LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLXVucmVmLXdlYnNvY2tldC5odG1sOiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Ut
dW5yZWYtd2Vic29ja2V0Lmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9jcm9zcy1vcmlnaW4tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY3Jvc3Mtb3JpZ2luLWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nyb3NzLW9y
aWdpbi5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvY3Jvc3Mtb3JpZ2luLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9lY2hvLWNoYWxsZW5nZV93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lY2hvLWNoYWxsZW5nZV93c2gucHkuCisg
ICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWNvb2tpZV93
c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9lY2hvLWNvb2tpZV93c2gucHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9lY2hvLWxvY2F0aW9uX3dzaC5weTogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2VjaG8tbG9jYXRpb25fd3NoLnB5LgorICAgICAg
ICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZWNob193c2gucHk6IFJlbmFt
ZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lY2hvX3dzaC5w
eS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Vycm9yLWRl
dGVjdC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9lcnJvci1kZXRlY3QtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZXJyb3ItZGV0ZWN0Lmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lcnJvci1kZXRlY3Qu
aHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZpeGVk
LW9yaWdpbl93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9maXhlZC1vcmlnaW5fd3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlci1leHBl
Y3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9mcmFtZS1sZW5ndGgtbG9uZ2VyLXRoYW4tYnVmZmVyLWV4cGVjdGVkLnR4dC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25n
ZXItdGhhbi1idWZmZXIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXIuaHRtbC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1s
b25nZXItdGhhbi1idWZmZXJfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlcl93c2gu
cHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9mcmFtZS1s
ZW5ndGgtb3ZlcmZsb3ctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93LWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxl
bmd0aC1vdmVyZmxvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93Lmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGgtb3ZlcmZsb3dfd3No
LnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
ZnJhbWUtbGVuZ3RoLW92ZXJmbG93X3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1za2lwLWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0
aC1za2lwLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1za2lwLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGgtc2tpcC5odG1sLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLXNr
aXBfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvZnJhbWUtbGVuZ3RoLXNraXBfd3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3Rocy1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGhz
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2ZyYW1lLWxlbmd0aHMuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aHMuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVz
cy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MtZXhwZWN0ZWQudHh0Lgor
ICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWNo
YWxsZW5nZS1yYW5kb21uZXNzLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRtbC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1l
cnJvci1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZXJyb3ItZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWVycm9yLmh0bWw6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hh
a2UtZXJyb3IuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2hhbmRzaGFrZS1lcnJvcl93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZXJyb3Jfd3NoLnB5LgorICAgICAgICAq
IGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktY3Jv
c3Mtb3JpZ2luLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LWNyb3NzLW9yaWdpbi1leHBlY3Rl
ZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5k
c2hha2UtZmFpbC1ieS1jcm9zcy1vcmlnaW4uaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LWNyb3NzLW9yaWdp
bi5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFu
ZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3RoLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxl
bmd0aC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1tYXhsZW5ndGguaHRtbDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW1h
eGxlbmd0aC5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvaGFuZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3RoX3dzaC5weTogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxl
bmd0aF93c2gucHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRlci1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hh
a2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRlci1leHBlY3RlZC50eHQuCisgICAgICAgICog
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1j
b25uZWN0aW9uLWhlYWRlci5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY29ubmVjdGlvbi1oZWFkZXIu
aHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRz
aGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyX3dzaC5weTogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5v
LWNvbm5lY3Rpb24taGVhZGVyX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyLWV4cGVjdGVkLnR4dDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFr
ZS1mYWlsLWJ5LW5vLWNyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyLmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFp
bC1ieS1uby1jci5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3Jfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3Jf
d3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFu
ZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFkZXItZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZy
b20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwt
Ynktbm8tdXBncmFkZS1oZWFkZXItZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFk
ZXIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVhZGVyLmh0bWwuCisgICAgICAgICog
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby11
cGdyYWRlLWhlYWRlcl93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1uby11cGdyYWRlLWhlYWRlcl93c2gu
cHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hh
a2UtZmFpbC1ieS1wcmVwZW5kZWQtbnVsbC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1wcmVw
ZW5kZWQtbnVsbC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1wcmVwZW5kZWQtbnVsbC5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtl
LWZhaWwtYnktcHJlcGVuZGVkLW51bGwuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsX3dzaC5w
eTogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hh
bmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXN1Yi1wcm90b2Nv
bC1taXNtYXRjaC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1zdWItcHJvdG9jb2wtbWlzbWF0
Y2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvaGFuZHNoYWtlLWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLmh0bWw6IFJlbmFt
ZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2Ut
ZmFpbC1ieS1zdWItcHJvdG9jb2wtbWlzbWF0Y2guaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmdpbmctaGFuZHNoYWtlX3dzaC5weTogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmdpbmctaGFu
ZHNoYWtlX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2h0dHBvbmx5LWNvb2tpZS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9odHRwb25seS1jb29raWUtZXhwZWN0ZWQudHh0
LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaHR0cG9ubHkt
Y29va2llLnBsOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaHR0cG9ubHktY29va2llLnBsLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvbG9uZy1pbnZhbGlkLWhlYWRlci1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9sb25nLWludmFsaWQt
aGVhZGVyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2xvbmctaW52YWxpZC1oZWFkZXIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXIuaHRtbC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2xvbmctaW52YWxp
ZC1oZWFkZXJfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvbG9uZy1pbnZhbGlkLWhlYWRlcl93c2gucHkuCisgICAgICAgICogaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9tdWx0aXBsZS1jb25uZWN0aW9ucy1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9tdWx0aXBsZS1jb25uZWN0aW9ucy1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9tdWx0aXBsZS1jb25uZWN0aW9ucy5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbXVsdGlwbGUt
Y29ubmVjdGlvbnMuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L25vLXF1ZXJ5X3dzaC5weTogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL25vLXF1ZXJ5X3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L251bGwtY2hhcmFjdGVyLWV4cGVjdGVkLnR4dDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL251bGwtY2hh
cmFjdGVyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L251bGwtY2hhcmFjdGVyLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9udWxsLWNoYXJhY3Rlci5odG1sLgorICAgICAgICAq
IGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvb3JpZ2luLXRlc3Rfd3NoLnB5OiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvb3JpZ2lu
LXRlc3Rfd3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvcHJvdG9jb2wtdGVzdF93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9wcm90b2NvbC10ZXN0X3dzaC5weS4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3JlbG9hZC1jcmFzaC1leHBlY3RlZC50eHQ6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9yZWxv
YWQtY3Jhc2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvcmVsb2FkLWNyYXNoLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9yZWxvYWQtY3Jhc2guaHRtbC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Jlc291cmNlcy9jbG9zZS1vbi11bmxv
YWQtaWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3Jlc291cmNlcy9jbG9zZS1vbi11bmxvYWQt
aWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3Jlc291cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZyYW1lLmh0
bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9y
ZXNvdXJjZXMvY2xvc2Utb24tdW5sb2FkLWlmcmFtZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcmVzb3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUu
aHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLWFmdGVyLWNsb3NlLW9u
LXVubG9hZC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC1hZnRlci1jbG9zZS1v
bi11bmxvYWQuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L3NlbmQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLXRocm93LWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NlbmQtdGhyb3ct
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvc2VuZC10aHJvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvc2VuZC10aHJvdy5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC5odG1sLgorICAgICAgICAqIGh0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZDJfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZDJfd3NoLnB5LgorICAgICAg
ICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZF93c2gucHk6IFJlbmFt
ZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kX3dzaC5w
eS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlcnZlci1j
bG9zZS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9zZXJ2ZXItY2xvc2UtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VydmVyLWNsb3NlLmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZXJ2ZXItY2xvc2Uu
aHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlcnZl
ci1jbG9zZV93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9zZXJ2ZXItY2xvc2Vfd3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZS1leHBlY3RlZC50eHQu
CisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUtc3Ry
ZXNzLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3NpbXBsZS1zdHJlc3MtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLXN0cmVzcy5odG1sOiBSZW5hbWVk
IGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlLXN0cmVz
cy5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2lt
cGxlLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9zaW1wbGUuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3NpbXBsZV93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9zaW1wbGVfd3NoLnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc3ViLXByb3RvY29sLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3N1Yi1wcm90b2NvbC1l
eHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9zdWItcHJvdG9jb2wtd2l0aC1zcGFjZS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zdWItcHJvdG9jb2wtd2l0aC1zcGFj
ZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9zdWItcHJvdG9jb2wtd2l0aC1zcGFjZS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc3ViLXByb3RvY29sLXdpdGgtc3BhY2UuaHRt
bC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1wcm90
b2NvbC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvc3ViLXByb3RvY29sLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni91bmljb2RlLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VuaWNvZGUtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdW5pY29kZS5odG1sOiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdW5pY29k
ZS5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdW5p
Y29kZV93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy91bmljb2RlX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3Vua25vd24tZnJhbWUtdHlwZV93c2gucHk6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91bmtub3duLWZyYW1lLXR5cGVfd3No
LnB5LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLW5v
LXRyYWlsaW5nLXNsYXNoLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC1uby10cmFpbGluZy1zbGFzaC1leHBlY3RlZC50
eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtbm8t
dHJhaWxpbmctc2xhc2guaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3VybC1uby10cmFpbGluZy1zbGFzaC5odG1sLgorICAgICAgICAqIGh0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXBhcnNpbmctZXhwZWN0ZWQudHh0
OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJs
LXBhcnNpbmctZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvdXJsLXBhcnNpbmcuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC1wYXJzaW5nLmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1jcmVkZW50aWFsLWV4cGVj
dGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL3VybC13aXRoLWNyZWRlbnRpYWwtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXdpdGgtY3JlZGVudGlhbC5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgt
Y3JlZGVudGlhbC5odG1sLgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvdXJsLXdpdGgtZW1wdHktcXVlcnktZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgtZW1wdHktcXVlcnkt
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvdXJsLXdpdGgtZW1wdHktcXVlcnkuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC13aXRoLWVtcHR5LXF1ZXJ5Lmh0bWwuCisgICAg
ICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS1l
eHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy91cmwtd2l0aC1xdWVyeS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS1mb3Itbm8tcXVlcnktZXhw
ZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5LWV4cGVjdGVkLnR4dC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13aXRoLXF1ZXJ5LWZvci1u
by1xdWVyeS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5Lmh0bWwuCisgICAgICAgICogaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgt
cXVlcnkuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L3dlYnNvY2tldC1ldmVudC10YXJnZXQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd2Vic29ja2V0LWV2ZW50LXRhcmdldC1l
eHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni93ZWJzb2NrZXQtZXZlbnQtdGFyZ2V0Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtZXZlbnQtdGFyZ2V0Lmh0bWwuCisg
ICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtcGVu
ZGluZy1hY3Rpdml0eS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtcGVuZGluZy1hY3Rpdml0eS1leHBlY3Rl
ZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJz
b2NrZXQtcGVuZGluZy1hY3Rpdml0eS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd2Vic29ja2V0LXBlbmRpbmctYWN0aXZpdHkuaHRtbC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dlYnNvY2tldC1w
cm90b2NvbC1pZ25vcmVkLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLWV4cGVj
dGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dl
YnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtcHJvdG9jb2wtaWdub3JlZC5odG1s
LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9j
bG9zZS1pbi1vbm1lc3NhZ2UtY3Jhc2gtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi1vbm1lc3Nh
Z2UtY3Jhc2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvd29ya2Vycy9jbG9zZS1pbi1vbm1lc3NhZ2UtY3Jhc2guaHRtbDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvY2xv
c2UtaW4tb25tZXNzYWdlLWNyYXNoLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLXNoYXJlZC13b3JrZXItZXhwZWN0ZWQu
dHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
d29ya2Vycy9jbG9zZS1pbi1zaGFyZWQtd29ya2VyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvY2xvc2UtaW4tc2hhcmVk
LXdvcmtlci5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi1zaGFyZWQtd29ya2VyLmh0bWwuCisgICAgICAgICog
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLXdvcmtl
ci1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy93b3JrZXJzL2Nsb3NlLWluLXdvcmtlci1leHBlY3RlZC50eHQuCisgICAgICAg
ICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLXdv
cmtlci5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvd29ya2Vycy9jbG9zZS1pbi13b3JrZXIuaHRtbC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWluLW9ubWVz
c2FnZS1jcmFzaC5qczogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWluLW9ubWVzc2FnZS1jcmFzaC5qcy4K
KyAgICAgICAgKHJ1blRlc3RzLnRyeS53cy5vbm9wZW4pOgorICAgICAgICAocnVuVGVzdHMudHJ5
LndzLm9ubWVzc2FnZSk6CisgICAgICAgIChydW5UZXN0cy50cnkud3Mub25jbG9zZSk6CisgICAg
ICAgIChydW5UZXN0cyk6CisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9jbG9zZS1pbi13b3JrZXIuanM6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3Jlc291cmNlcy9j
bG9zZS1pbi13b3JrZXIuanMuCisgICAgICAgIChoYW5kbGVDb25uZWN0LnNlbGYucG9zdE1lc3Nh
Z2UpOgorICAgICAgICAoaGFuZGxlQ29ubmVjdCk6CisgICAgICAgIChydW5UZXN0cy50cnkud3Mu
b25vcGVuKToKKyAgICAgICAgKHJ1blRlc3RzLnRyeS53cy5vbmNsb3NlKToKKyAgICAgICAgKHJ1
blRlc3RzKToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dv
cmtlcnMvcmVzb3VyY2VzL2VjaG8tY2hhbGxlbmdlX3dzaC5weTogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL2VjaG8t
Y2hhbGxlbmdlX3dzaC5weS4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2VjaG9fd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvZWNob193
c2gucHkuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3Jr
ZXJzL3Jlc291cmNlcy9zaW1wbGVfd3NoLnB5OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvc2ltcGxlX3dzaC5weS4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVz
b3VyY2VzL3dvcmtlci1oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuanM6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3Jlc291
cmNlcy93b3JrZXItaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLmpzLgorICAgICAgICAo
ZW5kVGVzdCk6CisgICAgICAgIChydW5UZXN0cy50cnkud3MxLm9ubWVzc2FnZSk6CisgICAgICAg
IChydW5UZXN0cy50cnkud3MxLm9uY2xvc2Uud3MyLm9ubWVzc2FnZSk6CisgICAgICAgIChydW5U
ZXN0cy50cnkud3MxLm9uY2xvc2Uud3MyLm9uY2xvc2UpOgorICAgICAgICAocnVuVGVzdHMudHJ5
LndzMS5vbmNsb3NlKToKKyAgICAgICAgKHJ1blRlc3RzKToKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtlci1zaW1wbGUu
anM6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93
b3JrZXJzL3Jlc291cmNlcy93b3JrZXItc2ltcGxlLmpzLgorICAgICAgICAoaGFuZGxlQ29ubmVj
dC5zZWxmLnBvc3RNZXNzYWdlKToKKyAgICAgICAgKGhhbmRsZUNvbm5lY3QpOgorICAgICAgICAo
cnVuVGVzdHMudHJ5LndzLm9ub3Blbik6CisgICAgICAgIChydW5UZXN0cy50cnkud3Mub25tZXNz
YWdlKToKKyAgICAgICAgKHJ1blRlc3RzLnRyeS53cy5vbmNsb3NlKToKKyAgICAgICAgKHJ1blRl
c3RzKToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtl
cnMvc2hhcmVkLXdvcmtlci1zaW1wbGUtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9zaGFyZWQtd29ya2VyLXNp
bXBsZS1leHBlY3RlZC50eHQuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni93b3JrZXJzL3NoYXJlZC13b3JrZXItc2ltcGxlLmh0bWw6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3NoYXJlZC13b3Jr
ZXItc2ltcGxlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni93b3JrZXJzL3dvcmtlci1oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MtZXhwZWN0
ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvd29ya2Vycy93b3JrZXItaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLWV4cGVjdGVk
LnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtl
cnMvd29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5odG1sOiBSZW5hbWVkIGZy
b20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy93b3JrZXIt
aGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3dvcmtlci1zaW1wbGUtZXhwZWN0ZWQu
dHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
d29ya2Vycy93b3JrZXItc2ltcGxlLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvd29ya2VyLXNpbXBsZS5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy93
b3JrZXItc2ltcGxlLmh0bWwuCisgICAgICAgICogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
cmVzb3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9jaHJvbWl1bS1saW51eC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvdXJsLXBhcnNpbmctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC1w
YXJzaW5nLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wt
Y2hhcnMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hy
b21pdW0tbWFjL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29u
dHJvbC1jaGFycy1leHBlY3RlZC50eHQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0tbWFj
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXBhcnNpbmctZXhwZWN0ZWQu
dHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbGludXgvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmctZXhwZWN0ZWQudHh0LgorICAgICAg
ICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni91cmwtcGFyc2luZy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBh
cnNpbmctZXhwZWN0ZWQudHh0LgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC1hcm0vU2tpcHBlZDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9xdC13azIvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lp
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lpLWV4cGVjdGVk
LnR4dC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vU2tpcHBlZDoKKwogMjAxMS0wNy0wNCAgTWlo
YWkgUGFycGFyaXRhICA8bWloYWlwQGNocm9taXVtLm9yZz4KIAogICAgICAgICBBcyBvZiByOTAz
NzIgdGhlcmUgYXJlIFdlYktpdDIgTWFjLXNwZWNpZmljIHRlc3RzOyBkb24ndCBleHBlY3QgdGhv
c2UgdG8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2FsZXJ0LWluLWV2ZW50LWhhbmRsZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYWxlcnQtaW4tZXZlbnQtaGFuZGxlci1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxNTdlYzAuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYWxlcnQtaW4tZXZlbnQtaGFuZGxl
ci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi1BTEVSVDogd2Fp
dGluZyBmb3Igb3BlbgotQUxFUlQ6IG1lc3NhZ2UgaGFuZGxlZC5maXJzdCBtZXNzYWdlCi1BTEVS
VDogbWVzc2FnZSBoYW5kbGVkLnNlY29uZCBtZXNzYWdlCi1NYWtlIHN1cmUgZXZlbnQgaGFuZGxl
ciBjYWxsZWQgc2VyaWFsbHkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotYWxlcnQg
d2lsbCBzdXNwZW5kL3Jlc3VtZSBXZWJTb2NrZXQuCi1vbm9wZW4gc2hvdWxkIGZpcmUgbGF0ZXIu
Ci1Db25uZWN0ZWQKLUVudGVyIG9ubWVzc2FnZTogZmlyc3QgbWVzc2FnZQotTGVhdmUgb25tZXNz
YWdlOiBmaXJzdCBtZXNzYWdlCi1FbnRlciBvbm1lc3NhZ2U6IHNlY29uZCBtZXNzYWdlCi1MZWF2
ZSBvbm1lc3NhZ2U6IHNlY29uZCBtZXNzYWdlCi1DbG9zZWQKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9hbGVydC1pbi1ldmVudC1oYW5kbGVyLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9hbGVydC1pbi1ldmVudC1oYW5k
bGVyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJmMjZhMjIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYWxlcnQtaW4tZXZl
bnQtaGFuZGxlci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDMgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiTWFrZSBzdXJlIGV2ZW50IGhhbmRsZXIg
Y2FsbGVkIHNlcmlhbGx5LiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZh
ciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3Rz
L3NlbmQyIik7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiQ29ubmVj
dGVkIik7Ci19OwotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCi17Ci0g
ICAgZGVidWcoIkVudGVyIG9ubWVzc2FnZTogIiArIG1lc3NhZ2VFdmVudC5kYXRhKTsKLSAgICAv
LyBhbGVydCgpIHdpbGwgc3VzcGVuZC9yZXN1bWUgV2ViU29ja2V0LgotICAgIGFsZXJ0KCJtZXNz
YWdlIGhhbmRsZWQuIiArIG1lc3NhZ2VFdmVudC5kYXRhKTsKLSAgICBkZWJ1ZygiTGVhdmUgb25t
ZXNzYWdlOiAiICsgbWVzc2FnZUV2ZW50LmRhdGEpOwotfTsKLQotd3Mub25jbG9zZSA9IGZ1bmN0
aW9uKCkKLXsKLSAgICBkZWJ1ZygiQ2xvc2VkIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Owot
Ci1kZWJ1ZygiYWxlcnQgd2lsbCBzdXNwZW5kL3Jlc3VtZSBXZWJTb2NrZXQuIik7Ci1hbGVydCgi
d2FpdGluZyBmb3Igb3BlbiIpOwotZGVidWcoIm9ub3BlbiBzaG91bGQgZmlyZSBsYXRlci4iKTsK
LXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2JhZC1oYW5kc2hha2UtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLWhhbmRzaGFrZS1jcmFzaC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE1ZjIwZjQuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLWhhbmRzaGFrZS1jcmFz
aC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBACi1DT05TT0xFIE1F
U1NBR0U6IGxpbmUgMDogSW52YWxpZCBVVEYtOCBzZXF1ZW5jZSBpbiBoZWFkZXIgbmFtZQotTWFr
ZSBzdXJlIFdlYlNvY2tldCBkb2Vzbid0IGNyYXNoIHdpdGggYmFkIGhhbmRzaGFrZSBtZXNzYWdl
LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVdlYlNvY2tldCBpcyBjbG9zZWQKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtaGFuZHNoYWtl
LWNyYXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQt
aGFuZHNoYWtlLWNyYXNoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdhOTMy
NTAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
YmFkLWhhbmRzaGFrZS1jcmFzaC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAot
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08
aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRp
diBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiTWFrZSBzdXJlIFdlYlNv
Y2tldCBkb2Vzbid0IGNyYXNoIHdpdGggYmFkIGhhbmRzaGFrZSBtZXNzYWdlLiIpOwotCi13aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8v
MTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2JhZC1oYW5kc2hha2UtY3Jhc2giKTsKLXdz
Lm9ub3BlbiA9IGZ1bmN0aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsK
LX07Ci13cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgewotICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMg
Y2xvc2VkIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19OwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtaGFuZHNo
YWtlLWNyYXNoX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2JhZC1oYW5kc2hha2UtY3Jhc2hfd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA3YjQyNWJjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2JhZC1oYW5kc2hha2UtY3Jhc2hfd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTYg
KzAsMCBAQAotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAg
IG1zZyA9ICJIVFRQLzEuMSAxMDEgV2ViU29ja2V0IFByb3RvY29sIEhhbmRzaGFrZVxyXG4iCi0g
ICAgbXNnICs9ICJVcGdyYWRlOiBXZWJTb2NrZXRcclxuIgotICAgIG1zZyArPSAiQ29ubmVjdGlv
bjogVXBncmFkZVxyXG4iCi0gICAgbXNnICs9ICJTZWMtV2ViU29ja2V0LUxvY2F0aW9uOiAiICsg
cmVxdWVzdC53c19sb2NhdGlvbiArICJcclxuIgotICAgIG1zZyArPSAiU2VjLVdlYlNvY2tldC1P
cmlnaW46ICIgKyByZXF1ZXN0LndzX29yaWdpbiArICJcclxuIgotICAgIG1zZyArPSAiXHhhNTpc
clxuIgotICAgIG1zZyArPSAiXHJcbiIKLSAgICBtc2cgKz0gcmVxdWVzdC53c19jaGFsbGVuZ2Vf
bWQ1Ci0gICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAgICBwcmludCBtc2cKLSAg
ICByYWlzZSBFeGNlcHRpb24oIkFib3J0IHRoZSBjb25uZWN0aW9uIikgIyBQcmV2ZW50cyBweXdl
YnNvY2tldCBmcm9tIHNlbmRpbmcgaXRzIG93biBoYW5kc2hha2UgbWVzc2FnZS4KLQotCi1kZWYg
d2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgIHBhc3MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wt
Y29udHJvbC1jaGFycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMTUyODBjLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJv
bC1jaGFycy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi1DT05T
T0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDAw
JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQg
J1x1MDAwOScKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2Vi
U29ja2V0ICdcdTAwMUInCi1UZXN0IFdlYlNvY2tldCBiYWQgc3ViLXByb3RvY29sIG5hbWVzIGJ5
IGNvbnRyb2wgY2hhcmFjdGVycy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNT
IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlwwIikgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcg
V2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICIJIikgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29j
a2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICIKLSIpIHRocmV3IGV4Y2VwdGlvbiBT
eW50YXhFcnJvcjogVW5leHBlY3RlZCBFT0YuCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3
LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgotIikgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIEVPRi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9z
aW1wbGUiLCAiGyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2Vw
dGlvbiAxMi4KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVU
RQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9i
YWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2N2E2YWE0Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJv
bC1jaGFycy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMjQgKzAsMCBAQAotPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiVGVzdCBXZWJTb2NrZXQgYmFkIHN1Yi1wcm90
b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3RlcnMuIik7Ci0KLS8vIEZhaWxzIGlmIHByb3Rv
Y29sIGNvbnRhaW5zIGFuIGNoYXJhY3RlciBsZXNzIHRoYW4gVSswMDIwLgotc2hvdWxkVGhyb3co
J25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1MDAwMCIpJyk7
Ci1zaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUi
LCAiXHUwMDA5IiknKTsKLXNob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAu
MTo4ODgwL3NpbXBsZSIsICJcdTAwMEEiKScpOwotc2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQo
IndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1MDAwRCIpJyk7Ci1zaG91bGRUaHJvdygn
bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXHUwMDFCIiknKTsK
LQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLWVtcHR5LWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E2OTdlZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXBy
b3RvY29sLWVtcHR5LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAK
LUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICcn
Ci1UZXN0IFdlYlNvY2tldCBiYWQgc3ViLXByb3RvY29sIG5hbWVzIChlbXB0eSkuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAu
MTo4ODgwL3NpbXBsZSIsICIiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERP
TSBFeGNlcHRpb24gMTIuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxOTBmMGUyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtZW1wdHkuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgot
ZGVzY3JpcHRpb24oIlRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJvdG9jb2wgbmFtZXMgKGVtcHR5
KS4iKTsKLQotLy8gRmFpbHMgaWYgcHJvdG9jb2wgaXMgYW4gZW1wdHkgc3RyaW5nLgotc2hvdWxk
VGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIiIpJyk7
Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lpLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtbm9u
LWFzY2lpLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2ZjNzBm
MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9i
YWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwyMiArMCwwIEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9y
IFdlYlNvY2tldCAnXHUwMDdGJwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3Rv
Y29sIGZvciBXZWJTb2NrZXQgJ1x1MDA4MCcKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9u
ZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTMwNDInCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUg
MDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHVGRkZGJwotQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1RkVGRicKLUNPTlNPTEUg
TUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdUZGRkUnCi1D
T05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHVE
ODQwXHVEQzBCJwotVGVzdCBXZWJTb2NrZXQgYmFkIHN1Yi1wcm90b2NvbCBuYW1lcyBieSBub24t
QVNDSUkgY2hhcnMuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBuZXcgV2Vi
U29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJ/IikgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0
KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICLCgCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6
Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi44GCIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBT
WU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEy
Ny4wLjAuMTo4ODgwL3NpbXBsZSIsICLvv78iKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRB
WF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAu
MC4xOjg4ODAvc2ltcGxlIiwgIu+7vyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VS
UjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6
ODg4MC9zaW1wbGUiLCAi77++IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBE
T00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L3NpbXBsZSIsICLwoICLIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENP
TVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lpLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0N2Y5MzliLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lp
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+
PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJUZXN0IFdlYlNvY2tldCBiYWQgc3ViLXByb3RvY29sIG5h
bWVzIGJ5IG5vbi1BU0NJSSBjaGFycy4iKTsKLQotLy8gRmFpbHMgaWYgcHJvdG9jb2wgY29udGFp
bnMgYW4gY2hhcmFjdGVyIGdyZWF0ZXIgdGhhbiBVKzAwN0UuCi1zaG91bGRUaHJvdygnbmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXHUwMDdGIiknKTsKLXNob3Vs
ZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcdTAw
ODAiKScpOwotc2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAv
c2ltcGxlIiwgIlx1MzA0MiIpJyk7Ci1zaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8x
MjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXHVGRkZGIiknKTsKLXNob3VsZFRocm93KCduZXcgV2Vi
U29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcdUZFRkYiKScpOwotc2hvdWxk
VGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1RkZG
RSIpJyk7Ci0vLyBTdXJyb2dhdGUgcGFpcnMKLXNob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3
czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcdUQ4NDBcdURDMEIiKScpOwotCi12YXIgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9idWZmZXJlZEFtb3VudC1hZnRlci1jbG9zZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9idWZmZXJlZEFtb3VudC1hZnRlci1jbG9zZS1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkxYjRlYzcuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYnVmZmVyZWRBbW91
bnQtYWZ0ZXItY2xvc2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBA
QAotV2ViIFNvY2tldCBidWZmZXJlZEFtb3VudCBhZnRlciBjbG9zZWQKLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi1Db25uZWN0ZWQuCi1DbG9zZWQuCi1QQVNTIHdzLnJlYWR5U3RhdGUg
aXMgMwotUEFTUyB3cy5idWZmZXJlZEFtb3VudCBpcyAwCi1QQVNTIHdzLnNlbmQoJ3NlbmQgdG8g
Y2xvc2VkIHNvY2tldCcpIGlzIGZhbHNlCi1QQVNTIHdzLmJ1ZmZlcmVkQW1vdW50IGlzIDIzCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYnVmZmVyZWRBbW91
bnQtYWZ0ZXItY2xvc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2J1ZmZlcmVkQW1vdW50LWFmdGVyLWNsb3NlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGMxMWFkNTEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvYnVmZmVyZWRBbW91bnQtYWZ0ZXItY2xvc2UuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDQwICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3Jp
cHRpb24oIldlYiBTb2NrZXQgYnVmZmVyZWRBbW91bnQgYWZ0ZXIgY2xvc2VkIik7Ci0KLXdpbmRv
dy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9s
b2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlIik7Ci0KLXdzLm9ub3BlbiA9IGZ1
bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiQ29ubmVjdGVkLiIpOwotICAgIHdzLmNsb3NlKCk7Ci19
OwotCi13cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJDbG9zZWQuIik7Ci0g
ICAgc2hvdWxkQmUoIndzLnJlYWR5U3RhdGUiLCAiMyIpOwotICAgIHNob3VsZEJlKCJ3cy5idWZm
ZXJlZEFtb3VudCIsICIwIik7Ci0gICAgc2hvdWxkQmVGYWxzZSgid3Muc2VuZCgnc2VuZCB0byBj
bG9zZWQgc29ja2V0JykiKTsKLSAgICAvLyBJZiB0aGUgY29ubmVjdGlvbiBpcyBjbG9zZWQsIGJ1
ZmZlcmVkQW1vdW50IGF0dHJpYnV0ZSdzIHZhbHVlIHdpbGwgb25seQotICAgIC8vIGluY3JlYXNl
IHdpdGggZWFjaCBjYWxsIHRvIHRoZSBzZW5kKCkgbWV0aG9kLgotICAgIC8vICh0aGUgbnVtYmVy
IGRvZXMgbm90IHJlc2V0IHRvIHplcm8gb25jZSB0aGUgY29ubmVjdGlvbiBjbG9zZXMpLgotICAg
IHNob3VsZEJlKCJ3cy5idWZmZXJlZEFtb3VudCIsICIyMyIpOwotICAgIGZpbmlzaEpTVGVzdCgp
OwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvY2xpZW50LWNsb3NlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2NsaWVudC1jbG9zZS1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI2NjhmZDkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xpZW50LWNsb3NlLWV4cGVjdGVkLnR4
dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVdlYlNvY2tldDogVGVzdCBjbGllbnQt
aW5pdGlhdGVkIGNsb3NlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLUNvbm5lY3Rl
ZAotUmVjZWl2ZWQ6IGNsb3NlX2ZyYW1lPSdceGZmXHgwMCcKLUNsb3NlZAotUEFTUyByZWNlaXZl
ZE1lc3NhZ2UgaXMgImNsb3NlX2ZyYW1lPSdcXHhmZlxceDAwJyIKLVBBU1MgY2xvc2VFdmVudC53
YXNDbGVhbiBpcyB0cnVlCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvY2xpZW50LWNsb3NlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9jbGllbnQtY2xvc2UuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
OWYzNWU0MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9jbGllbnQtY2xvc2UuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ0ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhl
YWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIldlYlNvY2tldDogVGVzdCBj
bGllbnQtaW5pdGlhdGVkIGNsb3NlLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7
Ci0KLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0
L3Rlc3RzL2NsaWVudC1jbG9zZSIpOwotdmFyIGNsb3NlRXZlbnQ7Ci12YXIgcmVjZWl2ZWRNZXNz
YWdlOwotCi13cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoIkNvbm5lY3RlZCIp
OwotICAgIHdzLmNsb3NlKCk7Ci19OwotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdl
RXZlbnQpCi17Ci0gICAgZGVidWcoIlJlY2VpdmVkOiAiICsgbWVzc2FnZUV2ZW50LmRhdGEpOwot
ICAgIHJlY2VpdmVkTWVzc2FnZSA9IG1lc3NhZ2VFdmVudC5kYXRhOwotfTsKLQotd3Mub25jbG9z
ZSA9IGZ1bmN0aW9uKGV2ZW50KQotewotICAgIGRlYnVnKCJDbG9zZWQiKTsKLSAgICBjbG9zZUV2
ZW50ID0gZXZlbnQ7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWNlaXZlZE1lc3NhZ2Ui
LCAiY2xvc2VfZnJhbWU9J1xceGZmXFx4MDAnIik7Ci0gICAgc2hvdWxkQmVUcnVlKCJjbG9zZUV2
ZW50Lndhc0NsZWFuIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19OwotCi12YXIgc3VjY2Vzc2Z1
bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbGll
bnQtY2xvc2Vfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
Y2xpZW50LWNsb3NlX3dzaC5weQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2VkMjhi
Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9j
bGllbnQtY2xvc2Vfd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMjMgKzAsMCBAQAotZnJvbSBt
b2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1kZWYgd2ViX3NvY2tldF9kb19leHRy
YV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAgcGFzcwotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5z
ZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgIyBXYWl0IGZvciBhIGNsb3NlIGZyYW1lIHNlbnQgZnJv
bSB0aGUgY2xpZW50LgotICAgIGNsb3NlX2ZyYW1lID0gcmVxdWVzdC53c19zdHJlYW0ucmVjZWl2
ZV9ieXRlcygyKQotCi0gICAgIyBUZWxsIHRoZSBjbGllbnQgd2hhdCB3ZSBoYXZlIHJlY2VpdmVk
LgotICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsICdjbG9zZV9mcmFtZT0lcicgJSBj
bG9zZV9mcmFtZSkKLQotICAgICMgSWYgdGhlIGZvbGxvd2luZyBhc3NlcnRpb24gZmFpbHMsIEFz
c2VydGlvbkVycm9yIHdpbGwgYmUgcmFpc2VkLAotICAgICMgd2hpY2ggd2lsbCBwcmV2ZW50IHB5
d2Vic29ja2V0IGZyb20gc2VuZGluZyBhIGNsb3NlIGZyYW1lLgotICAgICMgSW4gdGhpcyBjYXNl
LCB0aGUgY2xpZW50IHdpbGwgZmFpbCB0byBmaW5pc2ggY2xvc2luZyBoYW5kc2hha2UsIHRodXMK
LSAgICAjIGNsb3NlRXZlbnQud2FzQ2xlYW4gd2lsbCBiZWNvbWUgZmFsc2UuCi0gICAgYXNzZXJ0
IGNsb3NlX2ZyYW1lID09ICdceGZmXHgwMCcKLQotICAgICMgUHJldGVuZCB3ZSBoYXZlIHJlY2Vp
dmVkIGEgY2xvc2UgZnJhbWUgZnJvbSB0aGUgY2xpZW50LgotICAgICMgQWZ0ZXIgdGhpcyBmdW5j
dGlvbiBleGl0cywgcHl3ZWJzb2NrZXQgd2lsbCBzZW5kIGEgY2xvc2UgZnJhbWUgYXV0b21hdGlj
YWxseS4KLSAgICByZXF1ZXN0LmNsaWVudF90ZXJtaW5hdGVkID0gVHJ1ZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2UtYmVmb3JlLW9wZW4t
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xv
c2UtYmVmb3JlLW9wZW4tZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA1N2E1NDJhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2Nsb3NlLWJlZm9yZS1vcGVuLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDEwICswLDAgQEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXZWJTb2NrZXQgaXMgY2xvc2Vk
IGJlZm9yZSB0aGUgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZC4KLVRlc3QgaWYgV2ViIFNvY2tl
dCBmaXJlcyBjbG9zZSBldmVudCB3aGVuIFdlYlNvY2tldCBpcyBvcGVuZWQgYW5kIGNsb3NlZCBm
b3JlIG9wZW4gZXZlbnQgaXMgcmVjZWl2ZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
LQotY2xvc2VkCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExF
VEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
Y2xvc2UtYmVmb3JlLW9wZW4uaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2Nsb3NlLWJlZm9yZS1vcGVuLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGIwMDY0NTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvY2xvc2UtYmVmb3JlLW9wZW4uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICsw
LDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxo
dG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9k
eT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIlRlc3QgaWYg
V2ViIFNvY2tldCBmaXJlcyBjbG9zZSBldmVudCB3aGVuIFdlYlNvY2tldCBpcyBvcGVuZWQgYW5k
IGNsb3NlZCBmb3JlIG9wZW4gZXZlbnQgaXMgcmVjZWl2ZWQuIik7Ci0KLXdpbmRvdy5qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6
ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGFuZ2luZy1oYW5kc2hha2UiKTsKLXdzLm9uY2xvc2UgPSBm
dW5jdGlvbigpIHsKLSAgICBkZWJ1ZygiY2xvc2VkIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19
OwotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci13cy5jbG9zZSgpOwotPC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLWV2ZW50LWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTYwNWNjOS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1ldmVudC1leHBlY3Rl
ZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi1NYWtlIHN1cmUgV2ViU29ja2V0
IGZpcmVzIENsb3NlRXZlbnQgd2hlbiBjbG9zZWQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotV2ViU29ja2V0IGlzIG9wZW4KLVJlY2VpdmVkOiAnSGVsbG8gZnJvbSBTaW1wbGUgV1NI
LicKLUNsb3NlZAotUEFTUyBjbG9zZUV2ZW50VHlwZSBpcyAiY2xvc2UiCi1QQVNTICd3YXNDbGVh
bicgaW4gY2xvc2VFdmVudCBpcyB0cnVlCi1QQVNTIGNsb3NlRXZlbnQud2FzQ2xlYW4gaXMgdHJ1
ZQotUEFTUyBPYmplY3QuZ2V0UHJvdG90eXBlT2YoY2xvc2VFdmVudCkgPT09IENsb3NlRXZlbnQu
cHJvdG90eXBlIGlzIHRydWUKLVBBU1MgT2JqZWN0LmdldFByb3RvdHlwZU9mKGNsb3NlRXZlbnQp
ICE9PSBFdmVudC5wcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLWV2ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1ldmVudC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAyYmExZjBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2Nsb3NlLWV2ZW50Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0NiAr
MCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08
aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10
ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rp
dj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJNYWtlIHN1
cmUgV2ViU29ja2V0IGZpcmVzIENsb3NlRXZlbnQgd2hlbiBjbG9zZWQuIik7Ci0KLXdpbmRvdy5q
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcu
MC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlIik7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0
aW9uKCkKLXsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsKLX07Ci0KLXdzLm9ubWVz
c2FnZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKLXsKLSAgICBkZWJ1ZygiUmVjZWl2ZWQ6ICci
ICsgbWVzc2FnZUV2ZW50LmRhdGEgKyAiJyIpOwotfTsKLQotdmFyIGNsb3NlRXZlbnQ7Ci12YXIg
Y2xvc2VFdmVudFR5cGU7Ci13cy5vbmNsb3NlID0gZnVuY3Rpb24oZXZlbnQpCi17Ci0gICAgZGVi
dWcoIkNsb3NlZCIpOwotICAgIGNsb3NlRXZlbnQgPSBldmVudDsKLSAgICBjbG9zZUV2ZW50VHlw
ZSA9IGNsb3NlRXZlbnQudHlwZTsKLSAgICBzaG91bGRCZSgiY2xvc2VFdmVudFR5cGUiLCAnImNs
b3NlIicpCi0gICAgc2hvdWxkQmVUcnVlKCInd2FzQ2xlYW4nIGluIGNsb3NlRXZlbnQiKTsKLSAg
ICBzaG91bGRCZVRydWUoImNsb3NlRXZlbnQud2FzQ2xlYW4iKTsKLSAgICBzaG91bGRCZVRydWUo
Ik9iamVjdC5nZXRQcm90b3R5cGVPZihjbG9zZUV2ZW50KSA9PT0gQ2xvc2VFdmVudC5wcm90b3R5
cGUiKTsKLSAgICBzaG91bGRCZVRydWUoIk9iamVjdC5nZXRQcm90b3R5cGVPZihjbG9zZUV2ZW50
KSAhPT0gRXZlbnQucHJvdG90eXBlIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19OwotCi12YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9jbG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9jYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tbmF2aWdhdGUtbmV3LWxv
Y2F0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTc2NDI3
ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9j
bG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9jYXRpb24tZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwK
QEAgLTEsMTIgKzAsMCBAQAotVGVzdCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCB3aGVuIG5hdmln
YXRpbmcgdG8gbmV3IGxvY2F0aW9uLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBB
U1Mgd3Mgb24gbWFzdGVyIGRvY3VtZW50IGlzIHJlYWR5LgotUEFTUyBpbnNlcnQgYSBpZnJhbWUs
IHdoZXJlIG9wZW4gd3MgY2FsbGVkICdzb2NrZXQxJwotUEFTUyAnc29ja2V0MScgaXMgc2VudCB0
byB0aGUgc2VydmVyLiBuYXZpZ2F0ZSB0byBuZXcgbG9jYXRpb24uIGV4cGVjdCByZWNlaXZpbmcg
J3NvY2tldDEnIG9uIHdzLi4uCi1QQVNTIGNsb3NlZFNvY2tldCBpcyAic29ja2V0MSIKLVBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi1uYXZpZ2F0
ZS1uZXctbG9jYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2Nsb3NlLW9uLW5hdmlnYXRlLW5ldy1sb2NhdGlvbi5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA4MTJkZGY3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLW5hdmlnYXRlLW5ldy1sb2NhdGlvbi5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2Pgot
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
Ci1kZXNjcmlwdGlvbigiVGVzdCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCB3aGVuIG5hdmlnYXRp
bmcgdG8gbmV3IGxvY2F0aW9uLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0K
LXZhciBmcmFtZURpdjsKLXZhciBjbG9zZWRTb2NrZXQ7Ci0KLXZhciB3cyA9IG5ldyBXZWJTb2Nr
ZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZCIp
Owotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJQQVNTIHdzIG9uIG1hc3Rl
ciBkb2N1bWVudCBpcyByZWFkeS4iKTsKLSAgICBmcmFtZURpdiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImlmcmFtZSIpOwotICAgIGZyYW1lRGl2LnNyYyA9ICJyZXNvdXJjZXMvY2xvc2Utb24t
dW5sb2FkLWlmcmFtZS5odG1sIjsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1l
RGl2KTsKLSAgICBkZWJ1ZygiUEFTUyBpbnNlcnQgYSBpZnJhbWUsIHdoZXJlIG9wZW4gd3MgY2Fs
bGVkICdzb2NrZXQxJyIpOwotfTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2dCkKLXsKLSAg
ICBjbG9zZWRTb2NrZXQgPSBldnQuZGF0YTsKLSAgICB3cy5jbG9zZSgpOwotfTsKLXdzLm9uY2xv
c2UgPSBmdW5jdGlvbigpCi17Ci0gICAgc2hvdWxkQmUoImNsb3NlZFNvY2tldCIsICcic29ja2V0
MSInKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX07Ci0KLWRvY3VtZW50LmlmcmFtZVJlYWR5ID0g
ZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJQQVNTICdzb2NrZXQxJyBpcyBzZW50IHRvIHRoZSBz
ZXJ2ZXIuIG5hdmlnYXRlIHRvIG5ldyBsb2NhdGlvbi4gZXhwZWN0IHJlY2VpdmluZyAnc29ja2V0
MScgb24gd3MuLi4iKTsKLSAgICBmcmFtZURpdi5zcmMgPSAiaGFuZGxlcl9tYXAudHh0IjsKLX07
Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZC1hbmQtZm9yY2UtZ2MtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLWFu
ZC1mb3JjZS1nYy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZh
MzQ3YTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvY2xvc2Utb24tdW5sb2FkLWFuZC1mb3JjZS1nYy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwxMiArMCwwIEBACi1UZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIG9uIHVubG9h
ZCBhbmQgbm90IGNyYXNoZWQgaWYgZ2FyYmFnZSBjb2xsZWN0ZWQKLQotT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgotCi1QQVNTIHdzIG9uIG1hc3RlciBkb2N1bWVudCBpcyByZWFkeS4KLVBBU1Mg
aW5zZXJ0IGEgaWZyYW1lLCB3aGVyZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MScKLVBBU1MgJ3Nv
Y2tldDEnIGlzIHNlbnQgdG8gdGhlIHNlcnZlci4gdW5sb2FkIHRoZSBpZnJhbWUgYW5kIGZvcmNl
IGdhcmJhZ2UgY29sbGVjdGlvbi4gZXhwZWN0IHJlY2VpdmluZyAnc29ja2V0MScgb24gd3MgYW5k
IG5vIGNyYXNoLi4uCi1QQVNTIGNsb3NlZFNvY2tldCBpcyAic29ja2V0MSIKLVBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQtYW5kLWZv
cmNlLWdjLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9z
ZS1vbi11bmxvYWQtYW5kLWZvcmNlLWdjLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDI2YzE1OWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLWFuZC1mb3JjZS1nYy5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsNTkgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
Li4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwv
aGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlv
bigiVGVzdCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCBvbiB1bmxvYWQgYW5kIG5vdCBjcmFzaGVk
IGlmIGdhcmJhZ2UgY29sbGVjdGVkIik7Ci0KLXdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
LQotZnVuY3Rpb24gZ2MoKQotewotICAgIGlmICh3aW5kb3cuR0NDb250cm9sbGVyKQotICAgICAg
ICByZXR1cm4gR0NDb250cm9sbGVyLmNvbGxlY3QoKTsKLQotICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgMTAwMDA7IGkrKykgeyAvLyA+IGZvcmNlIGdhcmJhZ2UgY29sbGVjdGlvbiAoRkYgcmVxdWly
ZXMgYWJvdXQgOUsgYWxsb2NhdGlvbnMgYmVmb3JlIGEgY29sbGVjdCkKLSAgICAgICAgdmFyIHMg
PSBuZXcgU3RyaW5nKCJhYmMiKTsKLSAgICB9Ci19OwotCi12YXIgZnJhbWVEaXY7Ci12YXIgY2xv
c2VkU29ja2V0OwotCi12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQiKTsKLXdzLm9ub3BlbiA9IGZ1bmN0aW9u
KCkKLXsKLSAgICBkZWJ1ZygiUEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuIik7
Ci0gICAgZnJhbWVEaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBm
cmFtZURpdi5zcmMgPSAicmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUuaHRtbCI7Ci0g
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmcmFtZURpdik7Ci0gICAgZGVidWcoIlBBU1Mg
aW5zZXJ0IGEgaWZyYW1lLCB3aGVyZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MSciKTsKLX07Ci13
cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldnQpCi17Ci0gICAgY2xvc2VkU29ja2V0ID0gZXZ0LmRh
dGE7Ci0gICAgd3MuY2xvc2UoKTsKLX07Ci13cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotewotICAg
IHNob3VsZEJlKCJjbG9zZWRTb2NrZXQiLCAnInNvY2tldDEiJyk7Ci0gICAgZmluaXNoSlNUZXN0
KCk7Ci19OwotCi1kb2N1bWVudC5pZnJhbWVSZWFkeSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1
ZygiUEFTUyAnc29ja2V0MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiB1bmxvYWQgdGhlIGlmcmFt
ZSBhbmQgZm9yY2UgZ2FyYmFnZSBjb2xsZWN0aW9uLiBleHBlY3QgcmVjZWl2aW5nICdzb2NrZXQx
JyBvbiB3cyBhbmQgbm8gY3Jhc2guLi4iKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KGZyYW1lRGl2KTsKLSAgICBnYygpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3Nl
LW9uLXVubG9hZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNm
NDUyNzguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvY2xvc2Utb24tdW5sb2FkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEyICsw
LDAgQEAKLVRlc3QgaWYgV2ViIFNvY2tldCBpcyBjbG9zZWQgb24gdW5sb2FkCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHku
Ci1QQVNTIGluc2VydCBhIGlmcmFtZSwgd2hlcmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnCi1Q
QVNTICdzb2NrZXQxJyBpcyBzZW50IHRvIHRoZSBzZXJ2ZXIuIHVubG9hZCB0aGUgaWZyYW1lLiBl
eHBlY3QgcmVjZWl2aW5nICdzb2NrZXQxJyBvbiB3cy4uLgotUEFTUyBjbG9zZWRTb2NrZXQgaXMg
InNvY2tldDEiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExF
VEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
Y2xvc2Utb24tdW5sb2FkLXJlZmVyZW5jZS1pbi1wYXJlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLXJlZmVyZW5j
ZS1pbi1wYXJlbnQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
OTExMTZkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2Nsb3NlLW9uLXVubG9hZC1yZWZlcmVuY2UtaW4tcGFyZW50LWV4cGVjdGVkLnR4dAorKysg
L2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLVRlc3QgaWYgV2ViIFNvY2tldCBvcGVuZWQgaW4g
aWZyYW1lIGJ1dCByZWZlcnJlZCBpbiBwYXJlbnQgZG9jdW1lbnQgaXMgY2xvc2VkIG9uIHVubG9h
ZGluZyB0aGUgZnJhbWUuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyB3cyBv
biBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuCi1QQVNTIGluc2VydCBhIGlmcmFtZSwgd2hlcmUg
b3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnCi1QQVNTIGRvY3VtZW50LmNoaWxkV2ViU29ja2V0IGlz
IG5vbi1udWxsLgotUEFTUyAnc29ja2V0MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiB1bmxvYWQg
dGhlIGlmcmFtZS4gZXhwZWN0IHJlY2VpdmluZyAnc29ja2V0MScgb24gd3MuLi4KLVBBU1MgY2xv
c2VkU29ja2V0IGlzICJzb2NrZXQxIgotUEFTUyBkb2N1bWVudC5jaGlsZFdlYlNvY2tldC5yZWFk
eVN0YXRlIGlzIDMKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9jbG9zZS1vbi11bmxvYWQtcmVmZXJlbmNlLWluLXBhcmVudC5odG1sIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkLXJlZmVyZW5jZS1pbi1w
YXJlbnQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2M3MTQzMi4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11
bmxvYWQtcmVmZXJlbmNlLWluLXBhcmVudC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAs
MCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0
bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiVGVzdCBpZiBX
ZWIgU29ja2V0IG9wZW5lZCBpbiBpZnJhbWUgYnV0IHJlZmVycmVkIGluIHBhcmVudCBkb2N1bWVu
dCBpcyBjbG9zZWQgb24gdW5sb2FkaW5nIHRoZSBmcmFtZS4iKTsKLQotd2luZG93LmpzVGVzdElz
QXN5bmMgPSB0cnVlOwotCi12YXIgZnJhbWVEaXY7Ci12YXIgY2xvc2VkU29ja2V0OwotZG9jdW1l
bnQuY2hpbGRXZWJTb2NrZXQgPSBudWxsOwotCi12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQiKTsKLXdzLm9u
b3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiUEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1l
bnQgaXMgcmVhZHkuIik7Ci0gICAgZnJhbWVEaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJp
ZnJhbWUiKTsKLSAgICBmcmFtZURpdi5zcmMgPSAicmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1p
ZnJhbWUtcmVmZXJlbmNlLWluLXBhcmVudC5odG1sIjsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVu
ZENoaWxkKGZyYW1lRGl2KTsKLSAgICBkZWJ1ZygiUEFTUyBpbnNlcnQgYSBpZnJhbWUsIHdoZXJl
IG9wZW4gd3MgY2FsbGVkICdzb2NrZXQxJyIpOwotfTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9u
KGV2dCkKLXsKLSAgICBjbG9zZWRTb2NrZXQgPSBldnQuZGF0YTsKLSAgICB3cy5jbG9zZSgpOwot
fTsKLXdzLm9uY2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAgc2hvdWxkQmUoImNsb3NlZFNvY2tl
dCIsICcic29ja2V0MSInKTsKLSAgICBzaG91bGRCZSgiZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQu
cmVhZHlTdGF0ZSIsICIzIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19OwotCi1kb2N1bWVudC5p
ZnJhbWVSZWFkeSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBzaG91bGRCZU5vbk51bGwoImRvY3VtZW50
LmNoaWxkV2ViU29ja2V0Iik7Ci0gICAgZGVidWcoIlBBU1MgJ3NvY2tldDEnIGlzIHNlbnQgdG8g
dGhlIHNlcnZlci4gdW5sb2FkIHRoZSBpZnJhbWUuIGV4cGVjdCByZWNlaXZpbmcgJ3NvY2tldDEn
IG9uIHdzLi4uIik7Ci0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChmcmFtZURpdik7Ci19
OwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA5MWU5YmFkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9uLXVubG9hZC5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNDggKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
Li4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29s
ZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigi
VGVzdCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCBvbiB1bmxvYWQiKTsKLQotd2luZG93LmpzVGVz
dElzQXN5bmMgPSB0cnVlOwotCi12YXIgZnJhbWVEaXY7Ci12YXIgY2xvc2VkU29ja2V0OwotCi12
YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0
cy9jbG9zZS1vbi11bmxvYWQiKTsKLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1
ZygiUEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuIik7Ci0gICAgZnJhbWVEaXYg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKLSAgICBmcmFtZURpdi5zcmMgPSAi
cmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUuaHRtbCI7Ci0gICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChmcmFtZURpdik7Ci0gICAgZGVidWcoIlBBU1MgaW5zZXJ0IGEgaWZyYW1l
LCB3aGVyZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MSciKTsKLX07Ci13cy5vbm1lc3NhZ2UgPSBm
dW5jdGlvbihldnQpCi17Ci0gICAgY2xvc2VkU29ja2V0ID0gZXZ0LmRhdGE7Ci0gICAgd3MuY2xv
c2UoKTsKLX07Ci13cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotewotICAgIHNob3VsZEJlKCJjbG9z
ZWRTb2NrZXQiLCAnInNvY2tldDEiJyk7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19OwotCi1kb2N1
bWVudC5pZnJhbWVSZWFkeSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiUEFTUyAnc29ja2V0
MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiB1bmxvYWQgdGhlIGlmcmFtZS4gZXhwZWN0IHJlY2Vp
dmluZyAnc29ja2V0MScgb24gd3MuLi4iKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KGZyYW1lRGl2KTsKLX07IAotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWRfd3NoLnB5IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkX3dzaC5w
eQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGMxMzExNS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1vbi11bmxvYWRfd3No
LnB5CisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotIyBDb3B5cmlnaHQgMjAwOSwgR29v
Z2xlIEluYy4KLSMgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0jIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSMgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAgICogTmVpdGhlciB0aGUg
bmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotIyBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
IyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotIyBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSMgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0jIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLQot
ZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi0jIHdlIGRvbid0IHVzZSBz
ZXQoKSBoZXJlLCBiZWNhdXNlIHB5dGhvbiBvbiBtYWMgdGlnZXIgZG9lc24ndCBzdXBwb3J0IGl0
LgotY29ubmVjdGlvbnMgPSB7fQotCi0KLWRlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFr
ZShyZXF1ZXN0KToKLSAgICBwYXNzICAjIEFsd2F5cyBhY2NlcHQuCi0KLQotZGVmIHdlYl9zb2Nr
ZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAgICBnbG9iYWwgY29ubmVjdGlvbnMKLSAgICBj
b25uZWN0aW9uc1tyZXF1ZXN0XSA9IFRydWUKLSAgICBzb2NrZXROYW1lID0gTm9uZQotICAgIHRy
eToKLSAgICAgICAgc29ja2V0TmFtZSA9IG1zZ3V0aWwucmVjZWl2ZV9tZXNzYWdlKHJlcXVlc3Qp
Ci0gICAgICAgICMgbm90aWZ5IHRvIGNsaWVudCB0aGF0IHNvY2tldE5hbWUgaXMgcmVjZWl2ZWQg
Ynkgc2VydmVyLgotICAgICAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCBzb2NrZXRO
YW1lKQotICAgICAgICBtc2d1dGlsLnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KSAgIyB3YWl0LCBh
bmQgZXhjZXB0aW9uIGJ5IGNsb3NlLgotICAgICAgICBzb2NrZXROYW1lID0gc29ja2V0TmFtZSAr
ICc6IHJlY2VpdmUgbmV4dCBtZXNzYWdlJwotICAgIGZpbmFsbHk6Ci0gICAgICAgICMgcmVxdWVz
dCBpcyBjbG9zZWQuIG5vdGlmeSB0aGlzIHNvY2tldE5hbWUgdG8gb3RoZXIgd2ViIHNvY2tldHMu
Ci0gICAgICAgIGRlbCBjb25uZWN0aW9uc1tyZXF1ZXN0XQotICAgICAgICBmb3Igd3MgaW4gY29u
bmVjdGlvbnMua2V5cygpOgotICAgICAgICAgICAgbXNndXRpbC5zZW5kX21lc3NhZ2Uod3MsIHNv
Y2tldE5hbWUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9jbG9zZS11bnJlZi13ZWJzb2NrZXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2UtdW5yZWYtd2Vic29ja2V0LWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzlmNTU1NS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS11bnJlZi13ZWJzb2Nr
ZXQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotQ09OU09MRSBN
RVNTQUdFOiBsaW5lIDA6IFdlYlNvY2tldCBpcyBjbG9zZWQgYmVmb3JlIHRoZSBjb25uZWN0aW9u
IGlzIGVzdGFibGlzaGVkLgotVGVzdCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCB3aGlsZSBoYW5k
c2hha2luZyBhbmQgdW5yZWZlcmVuY2VkLCBpdCBzaG91bGQgZmlyZSBjbG9zZSBldmVudCBhdCBt
b3N0IG9uY2UuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyAxIGlzID49IGNv
dW50Q2xvc2VFdmVudAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENP
TVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2Nsb3NlLXVucmVmLXdlYnNvY2tldC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvY2xvc2UtdW5yZWYtd2Vic29ja2V0Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDJkODQxOGEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvY2xvc2UtdW5yZWYtd2Vic29ja2V0Lmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSwzNSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2Ny
aXB0aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIHdoaWxlIGhhbmRzaGFraW5nIGFu
ZCB1bnJlZmVyZW5jZWQsIGl0IHNob3VsZCBmaXJlIGNsb3NlIGV2ZW50IGF0IG1vc3Qgb25jZS4i
KTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi12YXIgY291bnRDbG9zZUV2ZW50
ID0gMDsKLQotZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgc2hvdWxkQmVHcmVhdGVyVGhhbk9y
RXF1YWwoIjEiLCAiY291bnRDbG9zZUV2ZW50Iik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Owot
Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90
ZXN0cy9oYW5naW5nLWhhbmRzaGFrZSIpOwotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkgewotICAg
IGNvdW50Q2xvc2VFdmVudCArPSAxOwotfTsKLXdzLmNsb3NlKCk7Ci13cyA9IG51bGw7Ci1nYygp
Owotc2V0VGltZW91dCgiZW5kVGVzdCgpIiwgMTAwKTsKLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQg
PSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Nyb3NzLW9yaWdpbi1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jcm9z
cy1vcmlnaW4tZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZDNl
MWU2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2Nyb3NzLW9yaWdpbi1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBA
Ci1XZWIgU29ja2V0IENyb3NzIE9yaWdpbiB0ZXN0Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotZG9jdW1lbnQuZG9tYWluPTEyNy4wLjAuMQotd3MudXJsPXdzOi8vbG9jYWxob3N0Ojg4
ODAvd2Vic29ja2V0L3Rlc3RzL29yaWdpbi10ZXN0Ci1Db25uZWN0ZWQKLVBBU1Mgb3JpZ2luIGlz
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
Ci0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvY3Jvc3Mtb3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9jcm9zcy1vcmlnaW4uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMGI0ZDc5Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9jcm9zcy1vcmlnaW4uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU3ICsw
LDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxo
dG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9k
eT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIldlYiBTb2Nr
ZXQgQ3Jvc3MgT3JpZ2luIHRlc3QiKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwot
Ci12YXIgb3JpZ2luOwotCi1mdW5jdGlvbiBlbmRUZXN0KCkKLXsKLSAgICBzaG91bGRCZSgib3Jp
Z2luIiwgJyJodHRwOi8vMTI3LjAuMC4xOjgwMDAiJyk7Ci0gICAgY2xlYXJUaW1lb3V0KHRpbWVv
dXRJRCk7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLXZhciB1cmwgPSAid3M6Ly9sb2NhbGhv
c3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvb3JpZ2luLXRlc3QiOwotZGVidWcoImRvY3VtZW50LmRv
bWFpbj0iICsgZG9jdW1lbnQuZG9tYWluKTsKLWRlYnVnKCJ3cy51cmw9IiArIHVybCk7Ci12YXIg
d3MgPSBuZXcgV2ViU29ja2V0KHVybCk7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAg
ICBkZWJ1ZygiQ29ubmVjdGVkIik7Ci19OwotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbiAobWVz
c2FnZUV2ZW50KQotewotICAgIG9yaWdpbiA9IG1lc3NhZ2VFdmVudC5kYXRhOwotICAgIHdzLmNs
b3NlKCk7Ci19OwotCi13cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotewotICAgIGVuZFRlc3QoKTsK
LX07Ci0KLWZ1bmN0aW9uIHRpbWVPdXRDYWxsYmFjaygpCi17Ci0gICAgZGVidWcoIlRpbWVkIG91
dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5U3RhdGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFy
IHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1
Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvZWNoby1jaGFsbGVuZ2Vfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvZWNoby1jaGFsbGVuZ2Vfd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzOTBkNDQxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2VjaG8tY2hhbGxlbmdlX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDEzICsw
LDAgQEAKLWZyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCi0KLQotZGVmIHdlYl9z
b2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHBhc3MKLQotCi1kZWYgd2Vi
X3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdl
KHJlcXVlc3QsIF9oZXhpZnkocmVxdWVzdC53c19jaGFsbGVuZ2UpKQotCi0KLWRlZiBfaGV4aWZ5
KGJ5dGVzKToKLSAgICByZXR1cm4gJzonLmpvaW4oWyclMDJYJyAlIG9yZChieXRlKSBmb3IgYnl0
ZSBpbiBieXRlc10pCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9lY2hvLWNvb2tpZV93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9lY2hvLWNvb2tpZV93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGZhYTI1ZjkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvZWNoby1jb29raWVfd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBA
QAotIyBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSMKLSMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci0jIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlv
bi4KLSMgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0j
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUgotIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAot
IyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwKLSMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCi0jIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0KLQotZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0
aWwKLQotCi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAg
cGFzcwotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgbXNn
dXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgIHJlcXVlc3QuaGVhZGVyc19pblsnQ29va2llJ10p
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lY2hv
LWxvY2F0aW9uX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2VjaG8tbG9jYXRpb25fd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMzkw
NTcwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2VjaG8tbG9jYXRpb25fd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMzkgKzAsMCBAQAotIyBD
b3B5cmlnaHQgKEMpIDIwMDkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0Ci0jIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMg
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgotIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKLSMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0j
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0KLQotZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQot
Ci1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAgcGFzcwot
Ci0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgcHJpbnQgcmVx
dWVzdC53c19sb2NhdGlvbgotICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsIHJlcXVl
c3Qud3NfbG9jYXRpb24pCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9lY2hvX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2VjaG9fd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3OWMzZjEw
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Vj
aG9fd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotIyBDb3B5cmlnaHQgMjAw
OSwgR29vZ2xlIEluYy4KLSMgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0j
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
LSMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotIyBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQotIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotIyBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSMg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0jIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0KLQotZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1fR09PREJZRV9N
RVNTQUdFID0gJ0dvb2RieWUnCi0KLQotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtl
KHJlcXVlc3QpOgotICAgIHBhc3MgICMgQWx3YXlzIGFjY2VwdC4KLQotCi1kZWYgd2ViX3NvY2tl
dF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgIHdoaWxlIFRydWU6Ci0gICAgICAgIGxpbmUg
PSBtc2d1dGlsLnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KQotICAgICAgICBtc2d1dGlsLnNlbmRf
bWVzc2FnZShyZXF1ZXN0LCBsaW5lKQotICAgICAgICBpZiBsaW5lID09IF9HT09EQllFX01FU1NB
R0U6Ci0gICAgICAgICAgICByZXR1cm4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2Vycm9yLWRldGVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lcnJvci1kZXRlY3QtZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YzY5ZWVkLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Vycm9yLWRldGVjdC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1NYWtlIHN1cmUgV2ViU29ja2V0IGNv
cnJlY3RseSBmaXJlIGVycm9yIGV2ZW50IGZvciB1bmtub3duIGZyYW1lIHR5cGUuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotV2ViU29ja2V0IGlzIG9wZW4KLXJlY2VpdmVkOmRvbmUK
LVdlYlNvY2tldCBpcyBjbG9zZWQKLVBBU1MgZXJyb3JDb3VudCBpcyAyNTUKLVBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9lcnJvci1kZXRlY3QuaHRtbCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Vycm9yLWRldGVjdC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzOGNmYzNlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Vycm9yLWRldGVjdC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1k
ZXNjcmlwdGlvbigiTWFrZSBzdXJlIFdlYlNvY2tldCBjb3JyZWN0bHkgZmlyZSBlcnJvciBldmVu
dCBmb3IgdW5rbm93biBmcmFtZSB0eXBlLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7Ci0KLXZhciBlcnJvckNvdW50ID0gMDsKLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6
Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvdW5rbm93bi1mcmFtZS10eXBlIik7Ci13
cy5vbm9wZW4gPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7
Ci19Owotd3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgewotICAgIGRlYnVnKCJyZWNlaXZl
ZDoiICsgZXZ0LmRhdGEpOwotfTsKLXdzLm9uZXJyb3IgPSBmdW5jdGlvbiAoKSB7Ci0gICAgZXJy
b3JDb3VudCArPSAxOwotfTsKLXdzLm9uY2xvc2UgPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVidWco
IldlYlNvY2tldCBpcyBjbG9zZWQiKTsKLSAgICBzaG91bGRCZSgiZXJyb3JDb3VudCIsICIyNTUi
KTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX07Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0
cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZpeGVkLW9yaWdpbl93c2gu
cHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9maXhlZC1vcmlnaW5f
d3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MzhmYjgzLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZpeGVkLW9yaWdpbl93
c2gucHkKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi0jIENvcHlyaWdodCAoQykgMjAw
OSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQotIyBtZXQ6Ci0jCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0jIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSMgICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotIyBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCi0jIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKLSMgZGlzdHJpYnV0aW9uLgotIyAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0jIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
Ci0jIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKLSMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0jIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCi0jIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAotIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotIyBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSMgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQot
Ci1mcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRpbAotCi0KLWRlZiB3ZWJfc29ja2V0
X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICByZXF1ZXN0LndzX29yaWdpbiA9ICdo
dHRwOi8vZXhhbXBsZS5jb20nCi0KLQotZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1
ZXN0KToKLSAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCByZXF1ZXN0LndzX29yaWdp
bikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Zy
YW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZl
ci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFmMzc3MDAuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUt
bGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi1NYWtlIHN1cmUgV2ViU29ja2V0IGNvcnJlY3RseSBza2lwIGxlbmd0aGVk
IGZyYW1lIGV2ZW4gaWYgcmVjZWl2ZWQgZGF0YSBoYXMgaW5jb21wbGV0ZSBmcmFtZS4KLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1XZWJTb2NrZXQgaXMgb3BlbgotcmVjZWl2ZWQ6aGVs
bG8KLVdlYlNvY2tldCBpcyBjbG9zZWQKLTEKLVBBU1MgYXJlQXJyYXlzRXF1YWwocmVjZWl2ZWRf
bWVzc2FnZXMsIGV4cGVjdGVkX21lc3NhZ2VzKSBpcyB0cnVlCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZl
ci5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVu
Z3RoLWxvbmdlci10aGFuLWJ1ZmZlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA4MGFkMGI0Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXIuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhU
TUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
Ly4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRp
b24oIk1ha2Ugc3VyZSBXZWJTb2NrZXQgY29ycmVjdGx5IHNraXAgbGVuZ3RoZWQgZnJhbWUgZXZl
biBpZiByZWNlaXZlZCBkYXRhIGhhcyBpbmNvbXBsZXRlIGZyYW1lLiIpOwotCi13aW5kb3cuanNU
ZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciByZWNlaXZlZF9tZXNzYWdlcyA9IFtdOwotdmFyIGV4
cGVjdGVkX21lc3NhZ2VzID0gWyJoZWxsbyJdOwotZnVuY3Rpb24gZmluaXNoKCkgewotICAgIGNs
ZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGRlYnVnKHJlY2VpdmVkX21lc3NhZ2VzLmxlbmd0
aCk7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZWNlaXZlZF9tZXNzYWdlczsgaSsrKSB7Ci0g
ICAgICAgIGRlYnVnKCJyZWNlaXZlZFsiICsgaSArICJdPSIgKyByZWNlaXZlZF9tZXNzYWdlc1tp
XSk7Ci0gICAgfQotCi0gICAgc2hvdWxkQmVUcnVlKCJhcmVBcnJheXNFcXVhbChyZWNlaXZlZF9t
ZXNzYWdlcywgZXhwZWN0ZWRfbWVzc2FnZXMpIik7Ci0KLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0K
LQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlciIpOwotd3Mub25vcGVuID0gZnVu
Y3Rpb24gKCkgewotICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgb3BlbiIpOwotfTsKLXdzLm9ubWVz
c2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKLSAgICBkZWJ1ZygicmVjZWl2ZWQ6IiArIGV2dC5kYXRh
KTsKLSAgICByZWNlaXZlZF9tZXNzYWdlcy5wdXNoKGV2dC5kYXRhKTsKLX07Ci13cy5vbmNsb3Nl
ID0gZnVuY3Rpb24gKCkgewotICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7Ci0gICAg
ZmluaXNoKCk7Ci19OwotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQoImZpbmlzaCgpIiwgMjAw
MCk7Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXJfd3NoLnB5IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLWxvbmdl
ci10aGFuLWJ1ZmZlcl93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMzNGI0
ZjEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
ZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlcl93c2gucHkKKysrIC9kZXYvbnVsbApAQCAt
MSwxMSArMCwwIEBACi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6
Ci0gICAgcGFzcwotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0g
ICAgbXNnID0gIlwwaGVsbG9ceGZmIgotICAgIG1zZyArPSAiXHg4MFx4ODFceDAxIiAjIFNraXAg
MSoxMjgrMSBieXRlcy4KLSAgICBtc2cgKz0gIlx4MDFceGZmIgotICAgIG1zZyArPSAiXDBzaG91
bGQgYmUgc2tpcHBlZFx4ZmYiCi0gICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAg
ICByYWlzZSBFeGNlcHRpb24oIkFib3J0IHRoZSBjb25uZWN0aW9uIikgIyBQcmV2ZW50cyBweXdl
YnNvY2tldCBmcm9tIHN0YXJ0aW5nIGNsb3NpbmcgaGFuZHNoYWtlLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2Zy
YW1lLWxlbmd0aC1vdmVyZmxvdy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGRjMjE2ZjQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93LWV4cGVjdGVkLnR4dAorKysgL2Rldi9u
dWxsCkBAIC0xLDEyICswLDAgQEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXZWJTb2NrZXQg
ZnJhbWUgbGVuZ3RoIHRvbyBsYXJnZQotTWFrZSBzdXJlIFdlYlNvY2tldCBkb2VzIG5vdCBjcmFz
aCBhbmQgcmVwb3J0IGVycm9yIHdoZW4gaXQgc2VlcyBsZW5ndGggb3ZlcmZsb3cKLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi1XZWJTb2NrZXQgaXMgb3BlbgotV2ViU29ja2V0IHJlY2Vp
dmVkIGVycm9yIGZyYW1lCi1XZWJTb2NrZXQgaXMgY2xvc2VkCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93Lmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGgtb3ZlcmZs
b3cuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjM2NzRkNC4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGgt
b3ZlcmZsb3cuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAKLTxodG1sPgotPGhl
YWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dD4KLWRlc2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGRvZXMgbm90IGNyYXNoIGFuZCBy
ZXBvcnQgZXJyb3Igd2hlbiBpdCBzZWVzIGxlbmd0aCBvdmVyZmxvdyIpOwotCi13aW5kb3cuanNU
ZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAu
MC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aC1vdmVyZmxvdyIpOwotd3Mub25v
cGVuID0gZnVuY3Rpb24gKCkgewotICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgb3BlbiIpOwotfTsK
LXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IHJl
Y2VpdmVkOiIgKyBldnQuZGF0YSk7Ci19Owotd3Mub25lcnJvciA9IGZ1bmN0aW9uICgpIHsKLSAg
ICBkZWJ1ZygiV2ViU29ja2V0IHJlY2VpdmVkIGVycm9yIGZyYW1lIik7Ci19Owotd3Mub25jbG9z
ZSA9IGZ1bmN0aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIGNsb3NlZCIpOwotICAg
IGZpbmlzaEpTVGVzdCgpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLW92ZXJmbG93X3dz
aC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0
aC1vdmVyZmxvd193c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFjN2M5MjEu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJh
bWUtbGVuZ3RoLW92ZXJmbG93X3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAot
ZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHBhc3MKLQot
Ci1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgIG1zZyA9IDE2ICog
J1x4ZmYnCi0gICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAgICByYWlzZSBFeGNl
cHRpb24oJ0Fib3J0IHRoZSBjb25uZWN0aW9uJykgIyBQcmV2ZW50cyBweXdlYnNvY2tldCBmcm9t
IHN0YXJ0aW5nIGNsb3NpbmcgaGFuZHNoYWtlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLXNraXAtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3RoLXNraXAt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhYTMyZmU0Li4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxl
bmd0aC1za2lwLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLU1h
a2Ugc3VyZSBXZWJTb2NrZXQgY29ycmVjdGx5IHNraXAgbGVuZ3RoZWQgZnJhbWUuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotV2ViU29ja2V0IGlzIG9wZW4KLXJlY2VpdmVkOmhlbGxv
Ci1yZWNlaXZlZDp3b3JsZAotV2ViU29ja2V0IGlzIGNsb3NlZAotMgotUEFTUyBhcmVBcnJheXNF
cXVhbChyZWNlaXZlZF9tZXNzYWdlcywgZXhwZWN0ZWRfbWVzc2FnZXMpIGlzIHRydWUKLVBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGgtc2tp
cC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJhbWUtbGVu
Z3RoLXNraXAuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjNiOWEwOC4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1s
ZW5ndGgtc2tpcC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiTWFrZSBzdXJlIFdlYlNvY2tldCBjb3Jy
ZWN0bHkgc2tpcCBsZW5ndGhlZCBmcmFtZS4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOwotCi12YXIgcmVjZWl2ZWRfbWVzc2FnZXMgPSBbXTsKLXZhciBleHBlY3RlZF9tZXNzYWdl
cyA9IFsiaGVsbG8iLCAid29ybGQiXTsKLWZ1bmN0aW9uIGZpbmlzaCgpIHsKLSAgICBjbGVhclRp
bWVvdXQodGltZW91dElEKTsKLSAgICBkZWJ1ZyhyZWNlaXZlZF9tZXNzYWdlcy5sZW5ndGgpOwot
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVjZWl2ZWRfbWVzc2FnZXM7IGkrKykgewotICAgICAg
ICBkZWJ1ZygicmVjZWl2ZWRbIiArIGkgKyAiXT0iICsgcmVjZWl2ZWRfbWVzc2FnZXNbaV0pOwot
ICAgIH0KLQotICAgIHNob3VsZEJlVHJ1ZSgiYXJlQXJyYXlzRXF1YWwocmVjZWl2ZWRfbWVzc2Fn
ZXMsIGV4cGVjdGVkX21lc3NhZ2VzKSIpOwotCi0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLXZh
ciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3Rz
L2ZyYW1lLWxlbmd0aC1za2lwIik7Ci13cy5vbm9wZW4gPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVi
dWcoIldlYlNvY2tldCBpcyBvcGVuIik7Ci19Owotd3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2
dCkgewotICAgIGRlYnVnKCJyZWNlaXZlZDoiICsgZXZ0LmRhdGEpOwotICAgIHJlY2VpdmVkX21l
c3NhZ2VzLnB1c2goZXZ0LmRhdGEpOwotfTsKLXdzLm9uY2xvc2UgPSBmdW5jdGlvbiAoKSB7Ci0g
ICAgZGVidWcoIldlYlNvY2tldCBpcyBjbG9zZWQiKTsKLSAgICBmaW5pc2goKTsKLX07Ci12YXIg
dGltZW91dElEID0gc2V0VGltZW91dCgiZmluaXNoKCkiLCAyMDAwKTsKLQotdmFyIHN1Y2Nlc3Nm
dWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10
ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvZnJh
bWUtbGVuZ3RoLXNraXBfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvZnJhbWUtbGVuZ3RoLXNraXBfd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmZTg3NDAxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aC1za2lwX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDEy
ICswLDAgQEAKLWRlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAg
ICBwYXNzCi0KLQotZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAgICBt
c2cgPSAiXDBoZWxsb1x4ZmYiCi0gICAgbXNnICs9ICJceDgwXHg4MVx4MDEiICAgIyBza2lwIDEq
MTI4KzEgYnl0ZXMuCi0gICAgbXNnICs9ICJceDAxIgotICAgIG1zZyArPSAiXDBzaG91bGQgYmUg
c2tpcHBlZCIgKyAoIiAiICogMTA5KSArICJceGZmIgotICAgIG1zZyArPSAiXDB3b3JsZFx4ZmYi
Ci0gICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAgICBwcmludCBtc2cKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0
aHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
ZnJhbWUtbGVuZ3Rocy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDIzZWU0NTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvZnJhbWUtbGVuZ3Rocy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICsw
LDAgQEAKLVRlc3Qgc2VuZGluZyBhbmQgcmVjZWl2aW5nIHNtYWxsIG1lc3NhZ2VzIG9mIGRpZmZl
cmVudCBsZW5ndGhzLgotCi1TaG91bGQgc2F5IFBBU1M6Ci0KLVJ1bm5pbmcgdGhlIHRlc3QuLi4K
LVBBU1MKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvZnJhbWUtbGVuZ3Rocy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvZnJhbWUtbGVuZ3Rocy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
NWM3MWEwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2ZyYW1lLWxlbmd0aHMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ1ICswLDAgQEAKLTxw
PlRlc3Qgc2VuZGluZyBhbmQgcmVjZWl2aW5nIHNtYWxsIG1lc3NhZ2VzIG9mIGRpZmZlcmVudCBs
ZW5ndGhzLjwvcD4KLTxwPlNob3VsZCBzYXkgUEFTUzo8L3A+Ci08cHJlIGlkPWxvZz5SdW5uaW5n
IHRoZSB0ZXN0Li4uCi08L3ByZT4KLTxzY3JpcHQ+Ci12YXIgbWF4TGVuZ3RoID0gMTAyNTsKLQot
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7Ci19Ci0KLWZ1bmN0aW9uIGxvZyhtZXNzYWdlKQotewotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJsb2ciKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICJcbiI7Ci19Ci0KLXZhciB3cyA9
IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2VjaG8i
KTsKLQotdmFyIGxhc3RTdHJpbmc7Ci12YXIgZmFpbGVkID0gZmFsc2U7Ci13cy5vbm9wZW4gPSBm
dW5jdGlvbigpIHsKLSAgICBsYXN0U3RyaW5nID0gIiI7Ci0gICAgd3Muc2VuZChsYXN0U3RyaW5n
KTsKLX0KLQotd3Mub25tZXNzYWdlID0gZnVuY3Rpb24obXNnKSB7Ci0gICAgaWYgKG1zZy5kYXRh
ICE9IGxhc3RTdHJpbmcpIHsKLSAgICAgICAgbG9nKCJGQUlMIC0gaW5jb3JyZWN0IHJlc3BvbnNl
LiBFeHBlY3RlZCAnIiArIGxhc3RTdHJpbmcgKyAiJywgZ290ICciICsgbXNnLmRhdGEgKyAiJy4i
KTsKLSAgICAgICAgZmFpbGVkID0gdHJ1ZTsKLSAgICB9Ci0KLSAgICBpZiAobGFzdFN0cmluZy5s
ZW5ndGggPT0gbWF4TGVuZ3RoKSB7Ci0gICAgICAgIGlmICghZmFpbGVkKQotICAgICAgICAgICAg
bG9nKCJQQVNTIik7Ci0gICAgICAgIHdzLnNlbmQoIkdvb2RieWUiKTsKLSAgICAgICAgd3Mub25t
ZXNzYWdlID0gbnVsbDsKLSAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
LSAgICAgICAgICAgIHNldFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUo
KSIsIDApOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGxhc3RTdHJpbmcgKz0gIioiOwotICAgICAg
ICB3cy5zZW5kKGxhc3RTdHJpbmcpOwotICAgIH0KLX0KLTwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZGxlcl9tYXAudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZGxlcl9tYXAudHh0Cmlu
ZGV4IDY2NDlkYzguLjk4ZmJhYTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hhbmRsZXJfbWFwLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kbGVyX21hcC50eHQKQEAgLTEsMyArMSwzIEBACiAjIHdl
YnNvY2tldCBoYW5kbGVyIG1hcCBmaWxlLgogIyByZXF1ZXN0IHRvICcvJyB3aWxsIGJlIGhhbmRs
ZWQgYnkgZWNoby1sb2NhdGlvbl93c2gucHkKLS8gL3dlYnNvY2tldC90ZXN0cy9lY2hvLWxvY2F0
aW9uCisvIC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWxvY2F0aW9uCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtY2hhbGxl
bmdlLXJhbmRvbW5lc3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzFiZGNkNy4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtY2hhbGxlbmdlLXJh
bmRvbW5lc3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1IYW5k
c2hha2UgcmVxdWVzdCBzaG91bGQgY29udGFpbiByYW5kb20gY2hhbGxlbmdlIHZhbHVlcy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIGNoYWxsZW5nZTEgPT09IGNoYWxsZW5n
ZTIgaXMgZmFsc2UKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmMzFlOGRiLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1jaGFsbGVuZ2Ut
cmFuZG9tbmVzcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTAgKzAsMCBAQAotPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbignSGFuZHNoYWtlIHJlcXVlc3Qgc2hvdWxk
IGNvbnRhaW4gcmFuZG9tIGNoYWxsZW5nZSB2YWx1ZXMuJyk7Ci0KLXdpbmRvdy5qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKLQotdmFyIGNoYWxsZW5nZTE7Ci12YXIgY2hhbGxlbmdlMjsKLQotdmFyIHVy
bCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0cy9lY2hvLWNoYWxsZW5nZSc7
Ci12YXIgd3MxID0gbmV3IFdlYlNvY2tldCh1cmwpOwotCi13czEub25tZXNzYWdlID0gZnVuY3Rp
b24obWVzc2FnZUV2ZW50KQotewotICAgIGNoYWxsZW5nZTEgPSBtZXNzYWdlRXZlbnQuZGF0YTsK
LSAgICB3czEuY2xvc2UoKTsKLX0KLQotd3MxLm9uY2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAg
dmFyIHdzMiA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLQotICAgIHdzMi5vbm1lc3NhZ2UgPSBmdW5j
dGlvbihtZXNzYWdlRXZlbnQpCi0gICAgewotICAgICAgICBjaGFsbGVuZ2UyID0gbWVzc2FnZUV2
ZW50LmRhdGE7Ci0gICAgICAgIHdzMi5jbG9zZSgpOwotICAgIH0KLQotICAgIHdzMi5vbmNsb3Nl
ID0gZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgc2hvdWxkQmVGYWxzZSgnY2hhbGxlbmdlMSA9
PT0gY2hhbGxlbmdlMicpOwotICAgICAgICBpZiAoY2hhbGxlbmdlMSA9PT0gY2hhbGxlbmdlMikK
LSAgICAgICAgICAgIGRlYnVnKCdjaGFsbGVuZ2Ugd2FzICcgKyBjaGFsbGVuZ2UxKTsKLSAgICAg
ICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgfQotfQotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZXJyb3It
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFu
ZHNoYWtlLWVycm9yLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDUzMDgyOC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oYW5kc2hha2UtZXJyb3ItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTEg
KzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IE5vIHJlc3BvbnNlIGNvZGUgZm91bmQ6
IFRoaXNXaWxsQ2F1c2VIYW5kc2hha2VFcnJvcgotSGFuZHNoYWtlIGVycm9yIHRlc3QKLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1DbG9zZWQuCi1QQVNTIHdzLnJlYWR5U3RhdGUgaXMg
MwotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFr
ZS1lcnJvci5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFu
ZHNoYWtlLWVycm9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDViMDFlMDcu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFu
ZHNoYWtlLWVycm9yLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi08IURPQ1RZ
UEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgot
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJk
ZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJIYW5kc2hha2UgZXJyb3IgdGVzdCIp
OwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQot
ewotICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQot
Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90
ZXN0cy9oYW5kc2hha2UtZXJyb3IiKTsKLQotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAg
IHRlc3RGYWlsZWQoIlVuZXhwZWN0ZWRseSBDb25uZWN0ZWQuIik7Ci19OwotCi13cy5vbm1lc3Nh
Z2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCi17Ci0gICAgdGVzdEZhaWxlZCgiVW5leHBlY3Rl
ZGx5IFJlY2VpdmVkOiAnIiArIG1lc3NhZ2VFdmVudC5kYXRhICsgIiciKTsKLX07Ci0KLXdzLm9u
Y2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoIkNsb3NlZC4iKTsKLSAgICBzaG91bGRC
ZSgid3MucmVhZHlTdGF0ZSIsICIzIikKLSAgICBlbmRUZXN0KCk7Ci19OwotCi1mdW5jdGlvbiB0
aW1lT3V0Q2FsbGJhY2soKQotewotICAgIHRlc3RGYWlsZWQoIlRpbWVkIG91dCBpbiBzdGF0ZTog
IiArIHdzLnJlYWR5U3RhdGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9
IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtl
LWVycm9yX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hh
bmRzaGFrZS1lcnJvcl93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM4NTFm
YTYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGFuZHNoYWtlLWVycm9yX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLSMg
Q29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0jCi0j
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0jIG1ldDoKLSMKLSMgICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCi0jIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotIyBkaXN0cmlidXRpb24uCi0j
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKLSMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KLSMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KLSMKLSMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotIyAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0jIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCi0jIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0jIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQot
IyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotCi0KLWZyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCi0K
LQotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHJlcXVl
c3QuY29ubmVjdGlvbi53cml0ZSgnVGhpc1dpbGxDYXVzZUhhbmRzaGFrZUVycm9yXHJcbicpCi0K
LQotZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAgICBtc2d1dGlsLnNl
bmRfbWVzc2FnZShyZXF1ZXN0LCAnSGVsbG8gZnJvbSBIYW5kc2hha2UgRXJyb3IgV1NILicpCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hh
a2UtZmFpbC1ieS1jcm9zcy1vcmlnaW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktY3Jvc3Mtb3JpZ2luLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjUxZDE5Yi4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFp
bC1ieS1jcm9zcy1vcmlnaW4tZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAs
MCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IEVycm9yIGR1cmluZyBXZWJTb2NrZXQgaGFu
ZHNoYWtlOiBvcmlnaW4gbWlzbWF0Y2g6IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMCAhPSBodHRwOi8v
ZXhhbXBsZS5jb20KLU1ha2Ugc3VyZSBXZWIgU29ja2V0IGNvbm5lY3Rpb24gZmFpbGVkIGlmIG9y
aWdpbiBtaXNtYXRjaGVzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLWRvY3VtZW50
LmRvbWFpbj0xMjcuMC4wLjEKLXdzLnVybD13czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90
ZXN0cy9maXhlZC1vcmlnaW4KLVBBU1MgY29ubmVjdGVkIGlzIGZhbHNlCi1QQVNTIG9yaWdpbiBp
cyB1bmRlZmluZWQuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09N
UExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGFuZHNoYWtlLWZhaWwtYnktY3Jvc3Mtb3JpZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1jcm9zcy1vcmlnaW4uaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzExM2Q0ZC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1j
cm9zcy1vcmlnaW4uaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLTwhRE9DVFlQ
RSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRl
c2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBXZWIgU29ja2V0IGNv
bm5lY3Rpb24gZmFpbGVkIGlmIG9yaWdpbiBtaXNtYXRjaGVzLiIpOwotCi13aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Ci0KLXZhciBjb25uZWN0ZWQgPSBmYWxzZTsKLXZhciBvcmlnaW47Ci0K
LWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIHNob3VsZEJlRmFsc2UoImNvbm5lY3RlZCIpOwot
ICAgIHNob3VsZEJlVW5kZWZpbmVkKCJvcmlnaW4iKTsKLSAgICBjbGVhclRpbWVvdXQodGltZW91
dElEKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQotdmFyIHVybCA9ICJ3czovL2xvY2FsaG9z
dDo4ODgwL3dlYnNvY2tldC90ZXN0cy9maXhlZC1vcmlnaW4iOwotZGVidWcoImRvY3VtZW50LmRv
bWFpbj0iICsgZG9jdW1lbnQuZG9tYWluKTsKLWRlYnVnKCJ3cy51cmw9IiArIHVybCk7Ci12YXIg
d3MgPSBuZXcgV2ViU29ja2V0KHVybCk7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAg
ICBkZWJ1ZygiQ29ubmVjdGVkIik7Ci0gICAgY29ubmVjdGVkID0gdHJ1ZTsKLX07Ci0KLXdzLm9u
bWVzc2FnZSA9IGZ1bmN0aW9uIChtZXNzYWdlRXZlbnQpCi17Ci0gICAgb3JpZ2luID0gbWVzc2Fn
ZUV2ZW50LmRhdGE7Ci0gICAgZGVidWcoIm9yaWdpbj0iICsgb3JpZ2luKTsKLSAgICB3cy5jbG9z
ZSgpOwotfTsKLQotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBlbmRUZXN0KCk7Ci19
OwotCi1mdW5jdGlvbiB0aW1lT3V0Q2FsbGJhY2soKQotewotICAgIGRlYnVnKCJUaW1lZCBvdXQg
aW4gc3RhdGU6ICIgKyB3cy5yZWFkeVN0YXRlKTsKLSAgICBlbmRUZXN0KCk7Ci19Ci0KLXZhciB0
aW1lb3V0SUQgPSBzZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFjaywgMzAwMCk7Ci0KLXZhciBzdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1tYXhsZW5ndGgtZXhw
ZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MWVlNzNiLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1m
YWlsLWJ5LW1heGxlbmd0aC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCww
IEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogU3RhdHVzIGxpbmUgaXMgdG9vIGxvbmcKLUNv
bm5lY3Rpb24gc2hvdWxkIGZhaWwgaW1tZWRpYXRlbHksIHJhdGhlciB0aGFuIHN1Y2NlZWRpbmcg
b3Igc3RheWluZyBpbiBsaW1ibyB1bnRpbCB0aW1lb3V0LCBpZiBoYW5kc2hha2UgaXMgbG9uZ2Vy
IHRoYW4gMTAyNCBieXRlcy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIHRp
bWVkT3V0IGlzIGZhbHNlCi1QQVNTIGNvbm5lY3RlZCBpcyBmYWxzZQotUEFTUyBvcmlnaW4gaXMg
dW5kZWZpbmVkLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3RoLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjM2Q0OTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3Ro
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+
PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbign
Q29ubmVjdGlvbiBzaG91bGQgZmFpbCBpbW1lZGlhdGVseSwgcmF0aGVyIHRoYW4gc3VjY2VlZGlu
ZyBvciBzdGF5aW5nIGluIGxpbWJvIHVudGlsIHRpbWVvdXQsIGlmIGhhbmRzaGFrZSBpcyBsb25n
ZXIgdGhhbiAxMDI0IGJ5dGVzLicpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0K
LXZhciB0aW1lZE91dCA9IGZhbHNlOwotdmFyIGNvbm5lY3RlZCA9IGZhbHNlOwotdmFyIG9yaWdp
bjsKLQotZnVuY3Rpb24gZW5kVGVzdCgpIHsKLSAgICBzaG91bGRCZUZhbHNlKCd0aW1lZE91dCcp
OwotICAgIHNob3VsZEJlRmFsc2UoJ2Nvbm5lY3RlZCcpOwotICAgIHNob3VsZEJlVW5kZWZpbmVk
KCdvcmlnaW4nKTsKLSAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKLSAgICBmaW5pc2hKU1Rl
c3QoKTsKLX0KLQotdmFyIHVybCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0
cy9oYW5kc2hha2UtZmFpbC1ieS1tYXhsZW5ndGgnOwotdmFyIHdzID0gbmV3IFdlYlNvY2tldCh1
cmwpOwotCi13cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoJ0Nvbm5lY3RlZCcp
OwotICAgIGNvbm5lY3RlZCA9IHRydWU7Ci19Ci0KLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKG1l
c3NhZ2VFdmVudCkKLXsKLSAgICBvcmlnaW4gPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAgICBkZWJ1
Zygnb3JpZ2luID0gJyArIG9yaWdpbik7Ci0gICAgd3MuY2xvc2UoKTsKLX0KLQotd3Mub25jbG9z
ZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBlbmRUZXN0KCk7Ci19Ci0KLWZ1bmN0aW9uIHRpbWVvdXRD
YWxsYmFjaygpCi17Ci0gICAgZGVidWcoJ1RpbWVkIG91dCAoc3RhdGUgPSAnICsgd3MucmVhZHlT
dGF0ZSArICcpJyk7Ci0gICAgdGltZWRPdXQgPSB0cnVlOwotICAgIGVuZFRlc3QoKTsKLX0KLQot
dmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZW91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3RoX3dzaC5weSBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aF93c2gu
cHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMwMzlmYjMuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnkt
bWF4bGVuZ3RoX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLSMgQ29weXJp
Z2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDExLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlCi0jIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6Ci0jCi0jIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKLSMgZGlz
Y2xhaW1lci4KLSMKLSMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlCi0jIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotIwot
IyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMg4oCcQVMgSVPigJ0gQU5EIEFOWSBFWFBSRVNTIE9SCi0jIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YKLSMgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwKLSMgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCi0jIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSMgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikKLSMgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgotIyBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0jIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0KLWRlZiB3ZWJfc29ja2V0X2RvX2V4
dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICAjIFRoaXMgd2lsbCBjYXVzZSB0aGUgaGFuZHNo
YWtlIHRvIGZhaWwgYmVjYXVzZSBpdCBwdXNoZXMgdGhlIGxlbmd0aCBvZiB0aGUKLSAgICAjIHN0
YXR1cyBsaW5lIHBhc3QgMTAyNCBjaGFyYWN0ZXJzCi0gICAgbXNnID0gJy4nICogMTAyNAotICAg
IG1zZyArPSAnSFRUUC8xLjEgMTAxIFdlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2VcclxuJwot
ICAgIG1zZyArPSAnVXBncmFkZTogV2ViU29ja2V0XHJcbicKLSAgICBtc2cgKz0gJ0Nvbm5lY3Rp
b246IFVwZ3JhZGVcclxuJwotICAgIG1zZyArPSAnU2VjLVdlYlNvY2tldC1Mb2NhdGlvbjogJyAr
IHJlcXVlc3Qud3NfbG9jYXRpb24gKyAnXHJcbicKLSAgICBtc2cgKz0gJ1NlYy1XZWJTb2NrZXQt
T3JpZ2luOiAnICsgcmVxdWVzdC53c19vcmlnaW4gKyAnXHJcbicKLSAgICBtc2cgKz0gJ1xyXG4n
Ci0gICAgbXNnICs9IHJlcXVlc3Qud3NfY2hhbGxlbmdlX21kNQotICAgIHJlcXVlc3QuY29ubmVj
dGlvbi53cml0ZShtc2cpCi0gICAgcmFpc2UgRXhjZXB0aW9uKCdhYm9ydCB0aGUgY29ubmVjdGlv
bicpICMgUHJldmVudHMgcHl3ZWJzb2NrZXQgZnJvbSBzZW5kaW5nIGl0cyBvd24gaGFuZHNoYWtl
IG1lc3NhZ2UuCi0KLQotZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAg
ICBwYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oYW5kc2hha2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRlci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1u
by1jb25uZWN0aW9uLWhlYWRlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGVmNjJkNWIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY29ubmVjdGlvbi1oZWFkZXItZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1DT05TT0xFIE1FU1NBR0U6IGxp
bmUgMDogRXJyb3IgZHVyaW5nIFdlYlNvY2tldCBoYW5kc2hha2U6ICdDb25uZWN0aW9uJyBoZWFk
ZXIgaXMgbWlzc2luZwotVGVzdCB0aGF0IFdlYlNvY2tldCBoYW5kc2hha2UgZmFpbHMgaWYgQ29u
bmVjdGlvbiBoZWFkZXIgZmllbGQgaXNuJ3QgcmVmbGVjdGVkIGJ5IHRoZSBzZXJ2ZXIuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFp
bC1ieS1uby1jb25uZWN0aW9uLWhlYWRlci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBjZTc1Zjk1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi08IURPQ1RZUEUgSFRNTD4KLTxodG1sPgotPGhl
YWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dD4KLWRlc2NyaXB0aW9uKCJUZXN0IHRoYXQgV2ViU29ja2V0IGhhbmRzaGFrZSBmYWlscyBpZiBD
b25uZWN0aW9uIGhlYWRlciBmaWVsZCBpc24ndCByZWZsZWN0ZWQgYnkgdGhlIHNlcnZlci4iKTsK
LQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi1mdW5jdGlvbiBlbmRUZXN0KCkKLXsK
LSAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQot
dmFyIHVybCA9ICJ3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2Ut
ZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRlciI7Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KHVy
bCk7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiRkFJTDogQ29ubmVj
dGVkIik7Ci19OwotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCi17Ci0g
ICAgcHJvdG9jb2wgPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAgICB3cy5jbG9zZSgpOwotfTsKLQot
d3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBlbmRUZXN0KCk7Ci19OwotCi1mdW5jdGlv
biB0aW1lT3V0Q2FsbGJhY2soKQotewotICAgIGRlYnVnKCJUaW1lZCBvdXQgaW4gc3RhdGU6ICIg
KyB3cy5yZWFkeVN0YXRlKTsKLSAgICBlbmRUZXN0KCk7Ci19Ci0KLXZhciB0aW1lb3V0SUQgPSBz
ZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFjaywgMzAwMCk7Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1m
YWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVy
X3dzaC5weQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2VmYzg3YS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFp
bC1ieS1uby1jb25uZWN0aW9uLWhlYWRlcl93c2gucHkKKysrIC9kZXYvbnVsbApAQCAtMSwxNSAr
MCwwIEBACi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAg
bXNnID0gJ0hUVFAvMS4xIDEwMSBXZWJTb2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlXHJcbicKLSAg
ICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNvY2tldFxyXG4nCi0jICAgTWlzc2luZyAnQ29ubmVjdGlv
bjogVXBncmFkZVxyXG4nCi0gICAgbXNnICs9ICdTZWMtV2ViU29ja2V0LUxvY2F0aW9uOiAnICsg
cmVxdWVzdC53c19sb2NhdGlvbiArICdcclxuJwotICAgIG1zZyArPSAnU2VjLVdlYlNvY2tldC1P
cmlnaW46ICcgKyByZXF1ZXN0LndzX29yaWdpbiArICdcclxuJwotICAgIG1zZyArPSAnXHJcbicK
LSAgICBtc2cgKz0gcmVxdWVzdC53c19jaGFsbGVuZ2VfbWQ1Ci0gICAgcmVxdWVzdC5jb25uZWN0
aW9uLndyaXRlKG1zZykKLSAgICBwcmludCBtc2cKLSAgICByYWlzZSBFeGNlcHRpb24oJ0Fib3J0
IHRoZSBjb25uZWN0aW9uJykgIyBQcmV2ZW50cyBweXdlYnNvY2tldCBmcm9tIHNlbmRpbmcgaXRz
IG93biBoYW5kc2hha2UgbWVzc2FnZS4KLQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRh
KHJlcXVlc3QpOgotICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5v
LWNyLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2U1NmViNy4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5k
c2hha2UtZmFpbC1ieS1uby1jci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSAr
MCwwIEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogU3RhdHVzIGxpbmUgZG9lcyBub3QgZW5k
IHdpdGggQ1JMRgotSGFuZHNoYWtlIHNob3VsZCBmYWlsIHdoZW4gdGhlIGZpcnN0IGxpbmUgZG9l
cyBub3QgZW5kIHdpdGggQ1JMRi4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNT
IGNvbm5lY3RlZCBpcyBmYWxzZQotUEFTUyBvcmlnaW4gaXMgdW5kZWZpbmVkLgotUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5v
LWNyLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hh
a2UtZmFpbC1ieS1uby1jci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYmIy
ZjAxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1OCArMCww
IEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRt
bD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+
Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
LTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCdIYW5kc2hha2Ug
c2hvdWxkIGZhaWwgd2hlbiB0aGUgZmlyc3QgbGluZSBkb2VzIG5vdCBlbmQgd2l0aCBDUkxGLicp
OwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciBjb25uZWN0ZWQgPSBmYWxz
ZTsKLXZhciBvcmlnaW47Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKSB7Ci0gICAgc2hvdWxkQmVGYWxz
ZSgnY29ubmVjdGVkJyk7Ci0gICAgc2hvdWxkQmVVbmRlZmluZWQoJ29yaWdpbicpOwotICAgIGNs
ZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQotCi12YXIgdXJs
ID0gJ3dzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5
LW5vLWNyJzsKLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLQotd3Mub25vcGVuID0gZnVu
Y3Rpb24oKQotewotICAgIGRlYnVnKCdDb25uZWN0ZWQnKTsKLSAgICBjb25uZWN0ZWQgPSB0cnVl
OwotfQotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCi17Ci0gICAgb3Jp
Z2luID0gbWVzc2FnZUV2ZW50LmRhdGE7Ci0gICAgZGVidWcoJ29yaWdpbiA9ICcgKyBvcmlnaW4p
OwotICAgIHdzLmNsb3NlKCk7Ci19Ci0KLXdzLm9uY2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAg
ZW5kVGVzdCgpOwotfQotCi1mdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKQotewotICAgIGRlYnVn
KCdUaW1lZCBvdXQgKHN0YXRlID0gJyArIHdzLnJlYWR5U3RhdGUgKyAnKScpOwotICAgIGVuZFRl
c3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZW91dENhbGxiYWNrLCAz
MDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3Jfd3NoLnB5IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3Jf
d3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5Nzg5MjRhLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWls
LWJ5LW5vLWNyX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLWRlZiB3ZWJf
c29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICBtc2cgPSAnSFRUUC8xLjEg
MTAxIFdlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2VcbicgIyBEb2VzIG5vdCBlbmQgd2l0aCAi
XHJcbiIuCi0gICAgbXNnICs9ICdVcGdyYWRlOiBXZWJTb2NrZXRcclxuJwotICAgIG1zZyArPSAn
Q29ubmVjdGlvbjogVXBncmFkZVxyXG4nCi0gICAgbXNnICs9ICdTZWMtV2ViU29ja2V0LUxvY2F0
aW9uOiAnICsgcmVxdWVzdC53c19sb2NhdGlvbiArICdcclxuJwotICAgIG1zZyArPSAnU2VjLVdl
YlNvY2tldC1PcmlnaW46ICcgKyByZXF1ZXN0LndzX29yaWdpbiArICdcclxuJwotICAgIG1zZyAr
PSAnXHJcbicKLSAgICBtc2cgKz0gcmVxdWVzdC53c19jaGFsbGVuZ2VfbWQ1Ci0gICAgcmVxdWVz
dC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAgICBwcmludCBtc2cKLSAgICByYWlzZSBFeGNlcHRp
b24oJ0Fib3J0IHRoZSBjb25uZWN0aW9uJykgIyBQcmV2ZW50cyBweXdlYnNvY2tldCBmcm9tIHNl
bmRpbmcgaXRzIG93biBoYW5kc2hha2UgbWVzc2FnZS4KLQotCi1kZWYgd2ViX3NvY2tldF90cmFu
c2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVh
ZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVhZGVyLWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2YwNjY3ZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1uby11cGdyYWRl
LWhlYWRlci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw5ICswLDAgQEAKLUNPTlNP
TEUgTUVTU0FHRTogbGluZSAwOiBFcnJvciBkdXJpbmcgV2ViU29ja2V0IGhhbmRzaGFrZTogJ1Vw
Z3JhZGUnIGhlYWRlciBpcyBtaXNzaW5nCi1UZXN0IHRoYXQgV2ViU29ja2V0IGhhbmRzaGFrZSBm
YWlscyBpZiBVcGdyYWRlIGhlYWRlciBmaWVsZCBpc24ndCByZWZsZWN0ZWQgYnkgdGhlIHNlcnZl
ci4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFk
ZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFr
ZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVhZGVyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGZhNDU4OGEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFkZXIuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDUyICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MPgotPGh0bWw+Ci08aGVh
ZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBp
ZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0
PgotZGVzY3JpcHRpb24oIlRlc3QgdGhhdCBXZWJTb2NrZXQgaGFuZHNoYWtlIGZhaWxzIGlmIFVw
Z3JhZGUgaGVhZGVyIGZpZWxkIGlzbid0IHJlZmxlY3RlZCBieSB0aGUgc2VydmVyLiIpOwotCi13
aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAg
IGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQotCi12YXIg
dXJsID0gIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWls
LWJ5LW5vLXVwZ3JhZGUtaGVhZGVyIjsKLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLQot
d3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJGQUlMOiBDb25uZWN0ZWQiKTsK
LX07Ci0KLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKLXsKLSAgICBwcm90
b2NvbCA9IG1lc3NhZ2VFdmVudC5kYXRhOwotICAgIHdzLmNsb3NlKCk7Ci19OwotCi13cy5vbmNs
b3NlID0gZnVuY3Rpb24oKQotewotICAgIGVuZFRlc3QoKTsKLX07Ci0KLWZ1bmN0aW9uIHRpbWVP
dXRDYWxsYmFjaygpCi17Ci0gICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJl
YWR5U3RhdGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVv
dXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnkt
bm8tdXBncmFkZS1oZWFkZXJfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFkZXJfd3NoLnB5CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMTRkZTc1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3Jh
ZGUtaGVhZGVyX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLWRlZiB3ZWJf
c29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICBtc2cgPSAnSFRUUC8xLjEg
MTAxIFdlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2VcclxuJwotIyAgIE1pc3NpbmcgJ1VwZ3Jh
ZGU6IFdlYlNvY2tldFxyXG4nCi0gICAgbXNnICs9ICdDb25uZWN0aW9uOiBVcGdyYWRlXHJcbicK
LSAgICBtc2cgKz0gJ1NlYy1XZWJTb2NrZXQtTG9jYXRpb246ICcgKyByZXF1ZXN0LndzX2xvY2F0
aW9uICsgJ1xyXG4nCi0gICAgbXNnICs9ICdTZWMtV2ViU29ja2V0LU9yaWdpbjogJyArIHJlcXVl
c3Qud3Nfb3JpZ2luICsgJ1xyXG4nCi0gICAgbXNnICs9ICdcclxuJwotICAgIG1zZyArPSByZXF1
ZXN0LndzX2NoYWxsZW5nZV9tZDUKLSAgICByZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNnKQot
ICAgIHByaW50IG1zZwotICAgIHJhaXNlIEV4Y2VwdGlvbignQWJvcnQgdGhlIGNvbm5lY3Rpb24n
KSAjIFByZXZlbnRzIHB5d2Vic29ja2V0IGZyb20gc2VuZGluZyBpdHMgb3duIGhhbmRzaGFrZSBt
ZXNzYWdlLgotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAg
cGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVkLW51bGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVk
LW51bGwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZGIxN2M4
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hh
bmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxs
CkBAIC0xLDEyICswLDAgQEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBTdGF0dXMgbGluZSBj
b250YWlucyBlbWJlZGRlZCBudWxsCi1Db25uZWN0aW9uIHNob3VsZCBmYWlsIGltbWVkaWF0ZWx5
LCByYXRoZXIgdGhhbiBzdWNjZWVkaW5nIG9yIHN0YXlpbmcgaW4gbGltYm8gdW50aWwgdGltZW91
dCwgaWYgYSBudWxsIGJ5dGUgaXMgcmVjZWl2ZWQgYmVmb3JlIHRoZSBoYW5kc2hha2UuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyB0aW1lZE91dCBpcyBmYWxzZQotUEFTUyBj
b25uZWN0ZWQgaXMgZmFsc2UKLVBBU1Mgb3JpZ2luIGlzIHVuZGVmaW5lZC4KLVBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1wcmVw
ZW5kZWQtbnVsbC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVkLW51bGwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggNTY5OGY0Yy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1wcmVwZW5kZWQtbnVsbC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNjEgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9J
RVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2Pgot
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oJ0Nvbm5lY3Rp
b24gc2hvdWxkIGZhaWwgaW1tZWRpYXRlbHksIHJhdGhlciB0aGFuIHN1Y2NlZWRpbmcgb3Igc3Rh
eWluZyBpbiBsaW1ibyB1bnRpbCB0aW1lb3V0LCBpZiBhIG51bGwgYnl0ZSBpcyByZWNlaXZlZCBi
ZWZvcmUgdGhlIGhhbmRzaGFrZS4nKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwot
Ci12YXIgdGltZWRPdXQgPSBmYWxzZTsKLXZhciBjb25uZWN0ZWQgPSBmYWxzZTsKLXZhciBvcmln
aW47Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKSB7Ci0gICAgc2hvdWxkQmVGYWxzZSgndGltZWRPdXQn
KTsKLSAgICBzaG91bGRCZUZhbHNlKCdjb25uZWN0ZWQnKTsKLSAgICBzaG91bGRCZVVuZGVmaW5l
ZCgnb3JpZ2luJyk7Ci0gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7Ci0gICAgZmluaXNoSlNU
ZXN0KCk7Ci19Ci0KLXZhciB1cmwgPSAnd3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVz
dHMvaGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVkLW51bGwnOwotdmFyIHdzID0gbmV3IFdlYlNv
Y2tldCh1cmwpOwotCi13cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoJ0Nvbm5l
Y3RlZCcpOwotICAgIGNvbm5lY3RlZCA9IHRydWU7Ci19Ci0KLXdzLm9ubWVzc2FnZSA9IGZ1bmN0
aW9uKG1lc3NhZ2VFdmVudCkKLXsKLSAgICBvcmlnaW4gPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAg
ICBkZWJ1Zygnb3JpZ2luID0gJyArIG9yaWdpbik7Ci0gICAgd3MuY2xvc2UoKTsKLX0KLQotd3Mu
b25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBlbmRUZXN0KCk7Ci19Ci0KLWZ1bmN0aW9uIHRp
bWVvdXRDYWxsYmFjaygpCi17Ci0gICAgZGVidWcoJ1RpbWVkIG91dCAoc3RhdGUgPSAnICsgd3Mu
cmVhZHlTdGF0ZSArICcpJyk7Ci0gICAgdGltZWRPdXQgPSB0cnVlOwotICAgIGVuZFRlc3QoKTsK
LX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZW91dENhbGxiYWNrLCAzMDAwKTsK
LQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVkLW51bGxfd3NoLnB5IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktcHJl
cGVuZGVkLW51bGxfd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNzM1MTg0
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hh
bmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0x
LDUxICswLDAgQEAKLSMgQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAy
MDExLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlCi0jIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZSBtZXQ6Ci0jCi0jIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKLSMgZGlzY2xhaW1lci4KLSMKLSMgMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlCi0jIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg4oCcQVMgSVPigJ0gQU5EIEFOWSBFWFBSRVNTIE9S
Ci0jIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKLSMgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwK
LSMgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0jIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKLSMgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSMgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUgotIyBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0jIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi1p
bXBvcnQgdGltZQotCi0KLWRlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0
KToKLSAgICAjIFRoaXMgc2ltdWxhdGVzIGEgYnJva2VuIHNlcnZlciB0aGF0IHNlbmRzIGEgV2Vi
U29ja2V0IGZyYW1lIGJlZm9yZSB0aGUKLSAgICAjIGhhbmRzaGFrZSwgYW5kIG1vcmUgZnJhbWVz
IGFmdGVyd2FyZHMuICBJdCBpcyBpbXBvcnRhbnQgdGhhdCBpZiB0aGlzCi0gICAgIyBoYXBwZW5z
IHRoZSBjbGllbnQgZG9lcyBub3QgYnVmZmVyIGFsbCB0aGUgZnJhbWVzIGFzIHRoZSBzZXJ2ZXIg
Y29udGludWVzCi0gICAgIyB0byBzZW5kIG1vcmUgZGF0YSAtIGl0IHNob3VsZCBhYm9ydCBhZnRl
ciByZWFkaW5nIGEgcmVhc29uYWJsZSBudW1iZXIgb2YKLSAgICAjIGJ5dGVzIChzZXQgYXJiaXRy
YXJpbHkgdG8gMTAyNCkuCi0gICAgZnJhbWUgPSAnXDBGcmFtZS1jb250YWlucy10aGlydHktdHdv
LWJ5dGVzJwotCi0gICAgbXNnID0gZnJhbWUKLSAgICBtc2cgKz0gJ0hUVFAvMS4xIDEwMSBXZWJT
b2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlXHJcbicKLSAgICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNv
Y2tldFxyXG4nCi0gICAgbXNnICs9ICdDb25uZWN0aW9uOiBVcGdyYWRlXHJcbicKLSAgICBtc2cg
Kz0gJ1NlYy1XZWJTb2NrZXQtTG9jYXRpb246ICcgKyByZXF1ZXN0LndzX2xvY2F0aW9uICsgJ1xy
XG4nCi0gICAgbXNnICs9ICdTZWMtV2ViU29ja2V0LU9yaWdpbjogJyArIHJlcXVlc3Qud3Nfb3Jp
Z2luICsgJ1xyXG4nCi0gICAgbXNnICs9ICdcclxuJwotICAgIG1zZyArPSByZXF1ZXN0LndzX2No
YWxsZW5nZV9tZDUKLSAgICByZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNnKQotICAgICMgY29u
dGludWUgd3JpdGluZyBkYXRhIHVudGlsIHRoZSBjbGllbnQgZGlzY29ubmVjdHMKLSAgICB3aGls
ZSBUcnVlOgotICAgICAgICB0aW1lLnNsZWVwKDEpCi0gICAgICAgIG51bUZyYW1lcyA9IDEwMjQg
LyBsZW4oZnJhbWUpICMgd3JpdGUgb3ZlciAxMDI0IGJ5dGVzIGluY2x1ZGluZyB0aGUgYWJvdmUg
aGFuZHNoYWtlCi0gICAgICAgIGZvciBpIGluIHJhbmdlKDAsIG51bUZyYW1lcyk6Ci0gICAgICAg
ICAgICByZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUoZnJhbWUpCi0KLQotZGVmIHdlYl9zb2NrZXRf
dHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAgICBwYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1ieS1zdWItcHJvdG9j
b2wtbWlzbWF0Y2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTY0NjQyYi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oYW5kc2hha2UtZmFpbC1i
eS1zdWItcHJvdG9jb2wtbWlzbWF0Y2gtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEs
MTAgKzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IEVycm9yIGR1cmluZyBXZWJTb2Nr
ZXQgaGFuZHNoYWtlOiBwcm90b2NvbCBtaXNtYXRjaDogcmVxdWVzdHRpbmctcHJvdG9jb2wgIT0g
YXZhaWxhYmxlLXByb3RvY29sCi1UZXN0IFdlYlNvY2tldCBoYW5kc2hha2UgZmFpbCBpZiBzdWIg
cHJvdG9jb2wgbmFtZSBtaXNtYXRjaGVzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LVBBU1MgcHJvdG9jb2wgaXMgdW5kZWZpbmVkLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hhbmRzaGFrZS1mYWlsLWJ5LXN1Yi1wcm90b2NvbC1taXNtYXRj
aC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtl
LWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDc2ZjQ1NjEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGFuZHNoYWtlLWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KLWRlc2NyaXB0aW9uKCJUZXN0IFdlYlNvY2tldCBoYW5kc2hha2UgZmFpbCBpZiBzdWIg
cHJvdG9jb2wgbmFtZSBtaXNtYXRjaGVzLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7Ci0KLXZhciBwcm90b2NvbDsKLQotZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgc2hvdWxk
QmVVbmRlZmluZWQoInByb3RvY29sIik7Ci0gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7Ci0g
ICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLXZhciB1cmwgPSAid3M6Ly9sb2NhbGhvc3Q6ODg4MC93
ZWJzb2NrZXQvdGVzdHMvcHJvdG9jb2wtdGVzdD9wcm90b2NvbD1hdmFpbGFibGUtcHJvdG9jb2wi
OwotdmFyIHdzID0gbmV3IFdlYlNvY2tldCh1cmwsICJyZXF1ZXN0dGluZy1wcm90b2NvbCIpOwot
Ci13cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoIkNvbm5lY3RlZCIpOwotfTsK
LQotd3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2VFdmVudCkKLXsKLSAgICBwcm90b2Nv
bCA9IG1lc3NhZ2VFdmVudC5kYXRhOwotICAgIHdzLmNsb3NlKCk7Ci19OwotCi13cy5vbmNsb3Nl
ID0gZnVuY3Rpb24oKQotewotICAgIGVuZFRlc3QoKTsKLX07Ci0KLWZ1bmN0aW9uIHRpbWVPdXRD
YWxsYmFjaygpCi17Ci0gICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5
U3RhdGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQo
dGltZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZ2luZy1oYW5kc2hha2Vfd3No
LnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGFuZ2luZy1oYW5k
c2hha2Vfd3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4MzkxYmQ4Li4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hhbmdpbmct
aGFuZHNoYWtlX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDYgKzAsMCBAQAotZGVmIHdlYl9z
b2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHJlcXVlc3QuY29ubmVjdGlv
bi5yZWFkKCkKLQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAg
IHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvYWxlcnQtaW4tZXZlbnQtaGFuZGxlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2FsZXJ0LWluLWV2ZW50LWhhbmRs
ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxNTdl
YzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2FsZXJ0LWluLWV2ZW50LWhhbmRsZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTkgQEAKK0FMRVJUOiB3YWl0aW5nIGZvciBvcGVuCitBTEVSVDogbWVzc2FnZSBoYW5kbGVk
LmZpcnN0IG1lc3NhZ2UKK0FMRVJUOiBtZXNzYWdlIGhhbmRsZWQuc2Vjb25kIG1lc3NhZ2UKK01h
a2Ugc3VyZSBldmVudCBoYW5kbGVyIGNhbGxlZCBzZXJpYWxseS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCithbGVydCB3aWxsIHN1c3BlbmQvcmVzdW1lIFdlYlNvY2tldC4KK29ub3Bl
biBzaG91bGQgZmlyZSBsYXRlci4KK0Nvbm5lY3RlZAorRW50ZXIgb25tZXNzYWdlOiBmaXJzdCBt
ZXNzYWdlCitMZWF2ZSBvbm1lc3NhZ2U6IGZpcnN0IG1lc3NhZ2UKK0VudGVyIG9ubWVzc2FnZTog
c2Vjb25kIG1lc3NhZ2UKK0xlYXZlIG9ubWVzc2FnZTogc2Vjb25kIG1lc3NhZ2UKK0Nsb3NlZAor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYWxl
cnQtaW4tZXZlbnQtaGFuZGxlci5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9hbGVydC1pbi1ldmVudC1oYW5kbGVyLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjI0YmVjYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYWxlcnQtaW4tZXZlbnQt
aGFuZGxlci5odG1sCkBAIC0wLDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48
L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPgorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBldmVudCBoYW5kbGVyIGNhbGxlZCBzZXJp
YWxseS4iKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgd3MgPSBuZXcg
V2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Nl
bmQyIik7CisKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiQ29ubmVjdGVk
Iik7Cit9OworCit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCit7CisgICAg
ZGVidWcoIkVudGVyIG9ubWVzc2FnZTogIiArIG1lc3NhZ2VFdmVudC5kYXRhKTsKKyAgICAvLyBh
bGVydCgpIHdpbGwgc3VzcGVuZC9yZXN1bWUgV2ViU29ja2V0LgorICAgIGFsZXJ0KCJtZXNzYWdl
IGhhbmRsZWQuIiArIG1lc3NhZ2VFdmVudC5kYXRhKTsKKyAgICBkZWJ1ZygiTGVhdmUgb25tZXNz
YWdlOiAiICsgbWVzc2FnZUV2ZW50LmRhdGEpOworfTsKKword3Mub25jbG9zZSA9IGZ1bmN0aW9u
KCkKK3sKKyAgICBkZWJ1ZygiQ2xvc2VkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCitk
ZWJ1ZygiYWxlcnQgd2lsbCBzdXNwZW5kL3Jlc3VtZSBXZWJTb2NrZXQuIik7CithbGVydCgid2Fp
dGluZyBmb3Igb3BlbiIpOworZGVidWcoIm9ub3BlbiBzaG91bGQgZmlyZSBsYXRlci4iKTsKK3Zh
ciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvYmFkLWhhbmRzaGFrZS1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1oYW5kc2hha2Ut
Y3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE1
ZjIwZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2JhZC1oYW5kc2hha2UtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTAgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBJbnZhbGlkIFVURi04IHNlcXVlbmNl
IGluIGhlYWRlciBuYW1lCitNYWtlIHN1cmUgV2ViU29ja2V0IGRvZXNuJ3QgY3Jhc2ggd2l0aCBi
YWQgaGFuZHNoYWtlIG1lc3NhZ2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworV2Vi
U29ja2V0IGlzIGNsb3NlZAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvYmFkLWhhbmRzaGFrZS1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtaGFuZHNoYWtlLWNyYXNoLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTVjZjc1NwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFk
LWhhbmRzaGFrZS1jcmFzaC5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBIVE1MIFBV
QkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qt
c3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBXZWJTb2NrZXQgZG9lc24n
dCBjcmFzaCB3aXRoIGJhZCBoYW5kc2hha2UgbWVzc2FnZS4iKTsKKword2luZG93LmpzVGVzdElz
QXN5bmMgPSB0cnVlOworCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4
ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1oYW5kc2hha2UtY3Jhc2giKTsKK3dzLm9u
b3BlbiA9IGZ1bmN0aW9uICgpIHsKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsKK307
Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xv
c2VkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2Vk
ID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Jh
ZC1oYW5kc2hha2UtY3Jhc2hfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9iYWQtaGFuZHNoYWtlLWNyYXNoX3dzaC5weQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi43YjQyNWJjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtaGFuZHNoYWtlLWNy
YXNoX3dzaC5weQpAQCAtMCwwICsxLDE2IEBACitkZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5k
c2hha2UocmVxdWVzdCk6CisgICAgbXNnID0gIkhUVFAvMS4xIDEwMSBXZWJTb2NrZXQgUHJvdG9j
b2wgSGFuZHNoYWtlXHJcbiIKKyAgICBtc2cgKz0gIlVwZ3JhZGU6IFdlYlNvY2tldFxyXG4iCisg
ICAgbXNnICs9ICJDb25uZWN0aW9uOiBVcGdyYWRlXHJcbiIKKyAgICBtc2cgKz0gIlNlYy1XZWJT
b2NrZXQtTG9jYXRpb246ICIgKyByZXF1ZXN0LndzX2xvY2F0aW9uICsgIlxyXG4iCisgICAgbXNn
ICs9ICJTZWMtV2ViU29ja2V0LU9yaWdpbjogIiArIHJlcXVlc3Qud3Nfb3JpZ2luICsgIlxyXG4i
CisgICAgbXNnICs9ICJceGE1OlxyXG4iCisgICAgbXNnICs9ICJcclxuIgorICAgIG1zZyArPSBy
ZXF1ZXN0LndzX2NoYWxsZW5nZV9tZDUKKyAgICByZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNn
KQorICAgIHByaW50IG1zZworICAgIHJhaXNlIEV4Y2VwdGlvbigiQWJvcnQgdGhlIGNvbm5lY3Rp
b24iKSAjIFByZXZlbnRzIHB5d2Vic29ja2V0IGZyb20gc2VuZGluZyBpdHMgb3duIGhhbmRzaGFr
ZSBtZXNzYWdlLgorCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Cisg
ICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXBy
b3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjIxNTI4MGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1j
aGFycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1MDAwMCcKK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTAwMDknCitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDFCJwor
VGVzdCBXZWJTb2NrZXQgYmFkIHN1Yi1wcm90b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3Rl
cnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUyBuZXcgV2ViU29ja2V0KCJ3
czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcMCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
U1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8x
MjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiCSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFY
X0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC9zaW1wbGUiLCAiCisiKSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhw
ZWN0ZWQgRU9GLgorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBs
ZSIsICIKKyIpIHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCBFT0YuCitQ
QVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIhsiKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXBy
b3RvY29sLWNvbnRyb2wtY2hhcnMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTJiYzI3YwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1
Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBp
ZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVzdCBXZWJTb2NrZXQgYmFk
IHN1Yi1wcm90b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3RlcnMuIik7CisKKy8vIEZhaWxz
IGlmIHByb3RvY29sIGNvbnRhaW5zIGFuIGNoYXJhY3RlciBsZXNzIHRoYW4gVSswMDIwLgorc2hv
dWxkVGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1
MDAwMCIpJyk7CitzaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4
MC9zaW1wbGUiLCAiXHUwMDA5IiknKTsKK3Nob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcdTAwMEEiKScpOworc2hvdWxkVGhyb3coJ25ldyBX
ZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1MDAwRCIpJyk7CitzaG91
bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXHUw
MDFCIiknKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLWVtcHR5LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uY2E2OTdlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1lbXB0
eS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6
IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJycKK1Rlc3QgV2ViU29ja2V0IGJhZCBzdWIt
cHJvdG9jb2wgbmFtZXMgKGVtcHR5KS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQ
QVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIiIpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJv
dG9jb2wtZW1wdHkuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1lbXB0eS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmJkMDRlMDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtZW1wdHku
aHRtbApAQCAtMCwwICsxLDIwIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4K
K2Rlc2NyaXB0aW9uKCJUZXN0IFdlYlNvY2tldCBiYWQgc3ViLXByb3RvY29sIG5hbWVzIChlbXB0
eSkuIik7CisKKy8vIEZhaWxzIGlmIHByb3RvY29sIGlzIGFuIGVtcHR5IHN0cmluZy4KK3Nob3Vs
ZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICIiKScp
OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtbm9uLWFzY2lpLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
YmFkLXN1Yi1wcm90b2NvbC1ub24tYXNjaWktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmNmYzcwZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtbm9u
LWFzY2lpLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIyIEBACitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDdGJworQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1MDA4MCcKK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTMwNDIn
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAn
XHVGRkZGJworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJT
b2NrZXQgJ1x1RkVGRicKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBm
b3IgV2ViU29ja2V0ICdcdUZGRkUnCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJv
dG9jb2wgZm9yIFdlYlNvY2tldCAnXHVEODQwXHVEQzBCJworVGVzdCBXZWJTb2NrZXQgYmFkIHN1
Yi1wcm90b2NvbCBuYW1lcyBieSBub24tQVNDSUkgY2hhcnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBs
ZSIsICJ/IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9u
IDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICLC
gCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4K
K1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi44GCIikg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFT
UyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICLvv78iKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIu+7vyIpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi77++IikgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2ViU29j
a2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICLwoICLIikgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1ub24t
YXNjaWkuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvYmFkLXN1Yi1wcm90b2NvbC1ub24tYXNjaWkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4xNTRlOGZmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2Np
aS5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8v
RFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorZGVzY3JpcHRpb24oIlRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJvdG9jb2wgbmFtZXMgYnkg
bm9uLUFTQ0lJIGNoYXJzLiIpOworCisvLyBGYWlscyBpZiBwcm90b2NvbCBjb250YWlucyBhbiBj
aGFyYWN0ZXIgZ3JlYXRlciB0aGFuIFUrMDA3RS4KK3Nob3VsZFRocm93KCduZXcgV2ViU29ja2V0
KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICJcdTAwN0YiKScpOworc2hvdWxkVGhyb3co
J25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1MDA4MCIpJyk7
CitzaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUi
LCAiXHUzMDQyIiknKTsKK3Nob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAu
MTo4ODgwL3NpbXBsZSIsICJcdUZGRkYiKScpOworc2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQo
IndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1RkVGRiIpJyk7CitzaG91bGRUaHJvdygn
bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXHVGRkZFIiknKTsK
Ky8vIFN1cnJvZ2F0ZSBwYWlycworc2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3
LjAuMC4xOjg4ODAvc2ltcGxlIiwgIlx1RDg0MFx1REMwQiIpJyk7CisKK3ZhciBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvYnVmZmVyZWRBbW91bnQtYWZ0ZXItY2xvc2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9idWZmZXJlZEFtb3VudC1hZnRl
ci1jbG9zZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
OTFiNGVjNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvYnVmZmVyZWRBbW91bnQtYWZ0ZXItY2xvc2UtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTQgQEAKK1dlYiBTb2NrZXQgYnVmZmVyZWRBbW91bnQgYWZ0ZXIgY2xvc2Vk
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworQ29ubmVjdGVkLgorQ2xvc2VkLgorUEFT
UyB3cy5yZWFkeVN0YXRlIGlzIDMKK1BBU1Mgd3MuYnVmZmVyZWRBbW91bnQgaXMgMAorUEFTUyB3
cy5zZW5kKCdzZW5kIHRvIGNsb3NlZCBzb2NrZXQnKSBpcyBmYWxzZQorUEFTUyB3cy5idWZmZXJl
ZEFtb3VudCBpcyAyMworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvYnVmZmVyZWRBbW91bnQtYWZ0ZXItY2xvc2UuaHRtbCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYnVmZmVyZWRBbW91bnQtYWZ0ZXIt
Y2xvc2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTU3MDk4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9idWZmZXJlZEFtb3VudC1hZnRlci1jbG9zZS5odG1sCkBAIC0wLDAgKzEsNDAgQEAK
KzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIldlYiBTb2Nr
ZXQgYnVmZmVyZWRBbW91bnQgYWZ0ZXIgY2xvc2VkIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9sb2NhbGhvc3Q6ODg4MC93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUiKTsKKword3Mub25vcGVuID0gZnVuY3Rpb24o
KQoreworICAgIGRlYnVnKCJDb25uZWN0ZWQuIik7CisgICAgd3MuY2xvc2UoKTsKK307CisKK3dz
Lm9uY2xvc2UgPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkNsb3NlZC4iKTsKKyAgICBzaG91
bGRCZSgid3MucmVhZHlTdGF0ZSIsICIzIik7CisgICAgc2hvdWxkQmUoIndzLmJ1ZmZlcmVkQW1v
dW50IiwgIjAiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJ3cy5zZW5kKCdzZW5kIHRvIGNsb3NlZCBz
b2NrZXQnKSIpOworICAgIC8vIElmIHRoZSBjb25uZWN0aW9uIGlzIGNsb3NlZCwgYnVmZmVyZWRB
bW91bnQgYXR0cmlidXRlJ3MgdmFsdWUgd2lsbCBvbmx5CisgICAgLy8gaW5jcmVhc2Ugd2l0aCBl
YWNoIGNhbGwgdG8gdGhlIHNlbmQoKSBtZXRob2QuCisgICAgLy8gKHRoZSBudW1iZXIgZG9lcyBu
b3QgcmVzZXQgdG8gemVybyBvbmNlIHRoZSBjb25uZWN0aW9uIGNsb3NlcykuCisgICAgc2hvdWxk
QmUoIndzLmJ1ZmZlcmVkQW1vdW50IiwgIjIzIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9Owor
Cit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2NsaWVudC1jbG9zZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2NsaWVudC1jbG9zZS1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjY2OGZkOQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvY2xpZW50LWNsb3NlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzIEBACitXZWJTb2Nr
ZXQ6IFRlc3QgY2xpZW50LWluaXRpYXRlZCBjbG9zZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCitDb25uZWN0ZWQKK1JlY2VpdmVkOiBjbG9zZV9mcmFtZT0nXHhmZlx4MDAnCitDbG9z
ZWQKK1BBU1MgcmVjZWl2ZWRNZXNzYWdlIGlzICJjbG9zZV9mcmFtZT0nXFx4ZmZcXHgwMCciCitQ
QVNTIGNsb3NlRXZlbnQud2FzQ2xlYW4gaXMgdHJ1ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xpZW50LWNsb3NlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2NsaWVudC1jbG9zZS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxZjU2YTQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Ns
aWVudC1jbG9zZS5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAi
LS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUu
Y3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9u
Ij48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIldlYlNvY2tldDogVGVzdCBjbGllbnQtaW5pdGlhdGVk
IGNsb3NlLiIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciB3cyA9IG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
Y2xpZW50LWNsb3NlIik7Cit2YXIgY2xvc2VFdmVudDsKK3ZhciByZWNlaXZlZE1lc3NhZ2U7CisK
K3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiQ29ubmVjdGVkIik7CisgICAg
d3MuY2xvc2UoKTsKK307CisKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkK
K3sKKyAgICBkZWJ1ZygiUmVjZWl2ZWQ6ICIgKyBtZXNzYWdlRXZlbnQuZGF0YSk7CisgICAgcmVj
ZWl2ZWRNZXNzYWdlID0gbWVzc2FnZUV2ZW50LmRhdGE7Cit9OworCit3cy5vbmNsb3NlID0gZnVu
Y3Rpb24oZXZlbnQpCit7CisgICAgZGVidWcoIkNsb3NlZCIpOworICAgIGNsb3NlRXZlbnQgPSBl
dmVudDsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlY2VpdmVkTWVzc2FnZSIsICJjbG9z
ZV9mcmFtZT0nXFx4ZmZcXHgwMCciKTsKKyAgICBzaG91bGRCZVRydWUoImNsb3NlRXZlbnQud2Fz
Q2xlYW4iKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK307CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
Y2xpZW50LWNsb3NlX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvY2xpZW50LWNsb3NlX3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi43ZWQyOGJmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbGllbnQtY2xvc2Vfd3NoLnB5CkBAIC0wLDAg
KzEsMjMgQEAKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisKKworZGVmIHdl
Yl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHBhc3MKKworCitkZWYg
d2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgICMgV2FpdCBmb3IgYSBjbG9z
ZSBmcmFtZSBzZW50IGZyb20gdGhlIGNsaWVudC4KKyAgICBjbG9zZV9mcmFtZSA9IHJlcXVlc3Qu
d3Nfc3RyZWFtLnJlY2VpdmVfYnl0ZXMoMikKKworICAgICMgVGVsbCB0aGUgY2xpZW50IHdoYXQg
d2UgaGF2ZSByZWNlaXZlZC4KKyAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCAnY2xv
c2VfZnJhbWU9JXInICUgY2xvc2VfZnJhbWUpCisKKyAgICAjIElmIHRoZSBmb2xsb3dpbmcgYXNz
ZXJ0aW9uIGZhaWxzLCBBc3NlcnRpb25FcnJvciB3aWxsIGJlIHJhaXNlZCwKKyAgICAjIHdoaWNo
IHdpbGwgcHJldmVudCBweXdlYnNvY2tldCBmcm9tIHNlbmRpbmcgYSBjbG9zZSBmcmFtZS4KKyAg
ICAjIEluIHRoaXMgY2FzZSwgdGhlIGNsaWVudCB3aWxsIGZhaWwgdG8gZmluaXNoIGNsb3Npbmcg
aGFuZHNoYWtlLCB0aHVzCisgICAgIyBjbG9zZUV2ZW50Lndhc0NsZWFuIHdpbGwgYmVjb21lIGZh
bHNlLgorICAgIGFzc2VydCBjbG9zZV9mcmFtZSA9PSAnXHhmZlx4MDAnCisKKyAgICAjIFByZXRl
bmQgd2UgaGF2ZSByZWNlaXZlZCBhIGNsb3NlIGZyYW1lIGZyb20gdGhlIGNsaWVudC4KKyAgICAj
IEFmdGVyIHRoaXMgZnVuY3Rpb24gZXhpdHMsIHB5d2Vic29ja2V0IHdpbGwgc2VuZCBhIGNsb3Nl
IGZyYW1lIGF1dG9tYXRpY2FsbHkuCisgICAgcmVxdWVzdC5jbGllbnRfdGVybWluYXRlZCA9IFRy
dWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvY2xvc2UtYmVmb3JlLW9wZW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1iZWZvcmUtb3Blbi1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTdhNTQyYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
Y2xvc2UtYmVmb3JlLW9wZW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAwOiBXZWJTb2NrZXQgaXMgY2xvc2VkIGJlZm9yZSB0aGUgY29ubmVjdGlv
biBpcyBlc3RhYmxpc2hlZC4KK1Rlc3QgaWYgV2ViIFNvY2tldCBmaXJlcyBjbG9zZSBldmVudCB3
aGVuIFdlYlNvY2tldCBpcyBvcGVuZWQgYW5kIGNsb3NlZCBmb3JlIG9wZW4gZXZlbnQgaXMgcmVj
ZWl2ZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworY2xvc2VkCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1iZWZvcmUt
b3Blbi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9jbG9zZS1iZWZvcmUtb3Blbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjIxNjk5N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLWJlZm9yZS1vcGVuLmh0bWwKQEAgLTAsMCArMSwy
NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
Ly4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVz
dCBpZiBXZWIgU29ja2V0IGZpcmVzIGNsb3NlIGV2ZW50IHdoZW4gV2ViU29ja2V0IGlzIG9wZW5l
ZCBhbmQgY2xvc2VkIGZvcmUgb3BlbiBldmVudCBpcyByZWNlaXZlZC4iKTsKKword2luZG93Lmpz
VGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4w
LjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmdpbmctaGFuZHNoYWtlIik7Cit3
cy5vbmNsb3NlID0gZnVuY3Rpb24oKSB7CisgICAgZGVidWcoImNsb3NlZCIpOworICAgIGZpbmlz
aEpTVGVzdCgpOworfTsKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOword3MuY2xvc2Uo
KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLWV2
ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvY2xvc2UtZXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmE2MDVjYzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLWV2ZW50LWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDE2IEBACitNYWtlIHN1cmUgV2ViU29ja2V0IGZpcmVzIENsb3NlRXZlbnQgd2hl
biBjbG9zZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworV2ViU29ja2V0IGlzIG9w
ZW4KK1JlY2VpdmVkOiAnSGVsbG8gZnJvbSBTaW1wbGUgV1NILicKK0Nsb3NlZAorUEFTUyBjbG9z
ZUV2ZW50VHlwZSBpcyAiY2xvc2UiCitQQVNTICd3YXNDbGVhbicgaW4gY2xvc2VFdmVudCBpcyB0
cnVlCitQQVNTIGNsb3NlRXZlbnQud2FzQ2xlYW4gaXMgdHJ1ZQorUEFTUyBPYmplY3QuZ2V0UHJv
dG90eXBlT2YoY2xvc2VFdmVudCkgPT09IENsb3NlRXZlbnQucHJvdG90eXBlIGlzIHRydWUKK1BB
U1MgT2JqZWN0LmdldFByb3RvdHlwZU9mKGNsb3NlRXZlbnQpICE9PSBFdmVudC5wcm90b3R5cGUg
aXMgdHJ1ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvY2xvc2UtZXZlbnQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvY2xvc2UtZXZlbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5iODg4ZGI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1ldmVudC5odG1sCkBAIC0wLDAgKzEs
NDYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIk1h
a2Ugc3VyZSBXZWJTb2NrZXQgZmlyZXMgQ2xvc2VFdmVudCB3aGVuIGNsb3NlZC4iKTsKKword2lu
ZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZSIpOworCit3cy5v
bm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7Cit9
OworCit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCit7CisgICAgZGVidWco
IlJlY2VpdmVkOiAnIiArIG1lc3NhZ2VFdmVudC5kYXRhICsgIiciKTsKK307CisKK3ZhciBjbG9z
ZUV2ZW50OwordmFyIGNsb3NlRXZlbnRUeXBlOword3Mub25jbG9zZSA9IGZ1bmN0aW9uKGV2ZW50
KQoreworICAgIGRlYnVnKCJDbG9zZWQiKTsKKyAgICBjbG9zZUV2ZW50ID0gZXZlbnQ7CisgICAg
Y2xvc2VFdmVudFR5cGUgPSBjbG9zZUV2ZW50LnR5cGU7CisgICAgc2hvdWxkQmUoImNsb3NlRXZl
bnRUeXBlIiwgJyJjbG9zZSInKQorICAgIHNob3VsZEJlVHJ1ZSgiJ3dhc0NsZWFuJyBpbiBjbG9z
ZUV2ZW50Iik7CisgICAgc2hvdWxkQmVUcnVlKCJjbG9zZUV2ZW50Lndhc0NsZWFuIik7CisgICAg
c2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0UHJvdG90eXBlT2YoY2xvc2VFdmVudCkgPT09IENsb3Nl
RXZlbnQucHJvdG90eXBlIik7CisgICAgc2hvdWxkQmVUcnVlKCJPYmplY3QuZ2V0UHJvdG90eXBl
T2YoY2xvc2VFdmVudCkgIT09IEV2ZW50LnByb3RvdHlwZSIpOworICAgIGZpbmlzaEpTVGVzdCgp
OworfTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9jYXRp
b24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9jbG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9jYXRpb24tZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3NjQyN2UKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9u
LW5hdmlnYXRlLW5ldy1sb2NhdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorVGVz
dCBpZiBXZWIgU29ja2V0IGlzIGNsb3NlZCB3aGVuIG5hdmlnYXRpbmcgdG8gbmV3IGxvY2F0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1Mgd3Mgb24gbWFzdGVyIGRvY3Vt
ZW50IGlzIHJlYWR5LgorUEFTUyBpbnNlcnQgYSBpZnJhbWUsIHdoZXJlIG9wZW4gd3MgY2FsbGVk
ICdzb2NrZXQxJworUEFTUyAnc29ja2V0MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiBuYXZpZ2F0
ZSB0byBuZXcgbG9jYXRpb24uIGV4cGVjdCByZWNlaXZpbmcgJ3NvY2tldDEnIG9uIHdzLi4uCitQ
QVNTIGNsb3NlZFNvY2tldCBpcyAic29ja2V0MSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLW5hdmlnYXRlLW5ldy1sb2NhdGlv
bi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9j
bG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9jYXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi41MTUyZGYzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi1uYXZpZ2F0ZS1uZXctbG9j
YXRpb24uaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KK2Rlc2NyaXB0aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIHdoZW4gbmF2
aWdhdGluZyB0byBuZXcgbG9jYXRpb24uIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKwordmFyIGZyYW1lRGl2OwordmFyIGNsb3NlZFNvY2tldDsKKwordmFyIHdzID0gbmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9z
ZS1vbi11bmxvYWQiKTsKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiUEFT
UyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuIik7CisgICAgZnJhbWVEaXYgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgICBmcmFtZURpdi5zcmMgPSAicmVzb3Vy
Y2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUuaHRtbCI7CisgICAgZG9jdW1lbnQuYm9keS5hcHBl
bmRDaGlsZChmcmFtZURpdik7CisgICAgZGVidWcoIlBBU1MgaW5zZXJ0IGEgaWZyYW1lLCB3aGVy
ZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MSciKTsKK307Cit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlv
bihldnQpCit7CisgICAgY2xvc2VkU29ja2V0ID0gZXZ0LmRhdGE7CisgICAgd3MuY2xvc2UoKTsK
K307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIHNob3VsZEJlKCJjbG9zZWRTb2Nr
ZXQiLCAnInNvY2tldDEiJyk7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCitkb2N1bWVudC5p
ZnJhbWVSZWFkeSA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiUEFTUyAnc29ja2V0MScgaXMg
c2VudCB0byB0aGUgc2VydmVyLiBuYXZpZ2F0ZSB0byBuZXcgbG9jYXRpb24uIGV4cGVjdCByZWNl
aXZpbmcgJ3NvY2tldDEnIG9uIHdzLi4uIik7CisgICAgZnJhbWVEaXYuc3JjID0gImhhbmRsZXJf
bWFwLnR4dCI7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZC1hbmQt
Zm9yY2UtZ2MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQtYW5kLWZvcmNlLWdjLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTM0N2E0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9z
ZS1vbi11bmxvYWQtYW5kLWZvcmNlLWdjLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitU
ZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIG9uIHVubG9hZCBhbmQgbm90IGNyYXNoZWQgaWYg
Z2FyYmFnZSBjb2xsZWN0ZWQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIHdz
IG9uIG1hc3RlciBkb2N1bWVudCBpcyByZWFkeS4KK1BBU1MgaW5zZXJ0IGEgaWZyYW1lLCB3aGVy
ZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MScKK1BBU1MgJ3NvY2tldDEnIGlzIHNlbnQgdG8gdGhl
IHNlcnZlci4gdW5sb2FkIHRoZSBpZnJhbWUgYW5kIGZvcmNlIGdhcmJhZ2UgY29sbGVjdGlvbi4g
ZXhwZWN0IHJlY2VpdmluZyAnc29ja2V0MScgb24gd3MgYW5kIG5vIGNyYXNoLi4uCitQQVNTIGNs
b3NlZFNvY2tldCBpcyAic29ja2V0MSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZC1hbmQtZm9yY2UtZ2MuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24t
dW5sb2FkLWFuZC1mb3JjZS1nYy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjEwNjE4ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZC1hbmQtZm9yY2UtZ2MuaHRtbApA
QCAtMCwwICsxLDU5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2Ny
aXB0aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIG9uIHVubG9hZCBhbmQgbm90IGNy
YXNoZWQgaWYgZ2FyYmFnZSBjb2xsZWN0ZWQiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOworCitmdW5jdGlvbiBnYygpCit7CisgICAgaWYgKHdpbmRvdy5HQ0NvbnRyb2xsZXIpCisg
ICAgICAgIHJldHVybiBHQ0NvbnRyb2xsZXIuY29sbGVjdCgpOworCisgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCAxMDAwMDsgaSsrKSB7IC8vID4gZm9yY2UgZ2FyYmFnZSBjb2xsZWN0aW9uIChGRiBy
ZXF1aXJlcyBhYm91dCA5SyBhbGxvY2F0aW9ucyBiZWZvcmUgYSBjb2xsZWN0KQorICAgICAgICB2
YXIgcyA9IG5ldyBTdHJpbmcoImFiYyIpOworICAgIH0KK307CisKK3ZhciBmcmFtZURpdjsKK3Zh
ciBjbG9zZWRTb2NrZXQ7CisKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4x
Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2FkIik7Cit3cy5vbm9w
ZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIlBBU1Mgd3Mgb24gbWFzdGVyIGRvY3VtZW50
IGlzIHJlYWR5LiIpOworICAgIGZyYW1lRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZy
YW1lIik7CisgICAgZnJhbWVEaXYuc3JjID0gInJlc291cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZy
YW1lLmh0bWwiOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWVEaXYpOworICAg
IGRlYnVnKCJQQVNTIGluc2VydCBhIGlmcmFtZSwgd2hlcmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tl
dDEnIik7Cit9Oword3Mub25tZXNzYWdlID0gZnVuY3Rpb24oZXZ0KQoreworICAgIGNsb3NlZFNv
Y2tldCA9IGV2dC5kYXRhOworICAgIHdzLmNsb3NlKCk7Cit9Oword3Mub25jbG9zZSA9IGZ1bmN0
aW9uKCkKK3sKKyAgICBzaG91bGRCZSgiY2xvc2VkU29ja2V0IiwgJyJzb2NrZXQxIicpOworICAg
IGZpbmlzaEpTVGVzdCgpOworfTsKKworZG9jdW1lbnQuaWZyYW1lUmVhZHkgPSBmdW5jdGlvbigp
Cit7CisgICAgZGVidWcoIlBBU1MgJ3NvY2tldDEnIGlzIHNlbnQgdG8gdGhlIHNlcnZlci4gdW5s
b2FkIHRoZSBpZnJhbWUgYW5kIGZvcmNlIGdhcmJhZ2UgY29sbGVjdGlvbi4gZXhwZWN0IHJlY2Vp
dmluZyAnc29ja2V0MScgb24gd3MgYW5kIG5vIGNyYXNoLi4uIik7CisgICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChmcmFtZURpdik7CisgICAgZ2MoKTsKK307CisKK3ZhciBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvY2xvc2Utb24tdW5sb2FkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2FkLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZjQ1Mjc4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9z
ZS1vbi11bmxvYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKK1Rlc3QgaWYgV2ViIFNv
Y2tldCBpcyBjbG9zZWQgb24gdW5sb2FkCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
UEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuCitQQVNTIGluc2VydCBhIGlmcmFt
ZSwgd2hlcmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnCitQQVNTICdzb2NrZXQxJyBpcyBzZW50
IHRvIHRoZSBzZXJ2ZXIuIHVubG9hZCB0aGUgaWZyYW1lLiBleHBlY3QgcmVjZWl2aW5nICdzb2Nr
ZXQxJyBvbiB3cy4uLgorUEFTUyBjbG9zZWRTb2NrZXQgaXMgInNvY2tldDEiCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxv
YWQtcmVmZXJlbmNlLWluLXBhcmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZC1yZWZlcmVuY2UtaW4t
cGFyZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5m
OTExMTZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQtcmVmZXJlbmNlLWluLXBhcmVudC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorVGVzdCBpZiBXZWIgU29ja2V0IG9wZW5lZCBpbiBp
ZnJhbWUgYnV0IHJlZmVycmVkIGluIHBhcmVudCBkb2N1bWVudCBpcyBjbG9zZWQgb24gdW5sb2Fk
aW5nIHRoZSBmcmFtZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIHdzIG9u
IG1hc3RlciBkb2N1bWVudCBpcyByZWFkeS4KK1BBU1MgaW5zZXJ0IGEgaWZyYW1lLCB3aGVyZSBv
cGVuIHdzIGNhbGxlZCAnc29ja2V0MScKK1BBU1MgZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQgaXMg
bm9uLW51bGwuCitQQVNTICdzb2NrZXQxJyBpcyBzZW50IHRvIHRoZSBzZXJ2ZXIuIHVubG9hZCB0
aGUgaWZyYW1lLiBleHBlY3QgcmVjZWl2aW5nICdzb2NrZXQxJyBvbiB3cy4uLgorUEFTUyBjbG9z
ZWRTb2NrZXQgaXMgInNvY2tldDEiCitQQVNTIGRvY3VtZW50LmNoaWxkV2ViU29ja2V0LnJlYWR5
U3RhdGUgaXMgMworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvY2xvc2Utb24tdW5sb2FkLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2Fk
LXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi44OTlmYTUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQtcmVmZXJlbmNlLWluLXBhcmVu
dC5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8v
RFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorZGVzY3JpcHRpb24oIlRlc3QgaWYgV2ViIFNvY2tldCBvcGVuZWQgaW4gaWZyYW1lIGJ1dCBy
ZWZlcnJlZCBpbiBwYXJlbnQgZG9jdW1lbnQgaXMgY2xvc2VkIG9uIHVubG9hZGluZyB0aGUgZnJh
bWUuIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIGZyYW1lRGl2Owor
dmFyIGNsb3NlZFNvY2tldDsKK2RvY3VtZW50LmNoaWxkV2ViU29ja2V0ID0gbnVsbDsKKwordmFy
IHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQiKTsKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAg
ICBkZWJ1ZygiUEFTUyB3cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuIik7CisgICAgZnJh
bWVEaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgICBmcmFtZURpdi5z
cmMgPSAicmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUtcmVmZXJlbmNlLWluLXBhcmVu
dC5odG1sIjsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lRGl2KTsKKyAgICBk
ZWJ1ZygiUEFTUyBpbnNlcnQgYSBpZnJhbWUsIHdoZXJlIG9wZW4gd3MgY2FsbGVkICdzb2NrZXQx
JyIpOworfTsKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2dCkKK3sKKyAgICBjbG9zZWRTb2Nr
ZXQgPSBldnQuZGF0YTsKKyAgICB3cy5jbG9zZSgpOworfTsKK3dzLm9uY2xvc2UgPSBmdW5jdGlv
bigpCit7CisgICAgc2hvdWxkQmUoImNsb3NlZFNvY2tldCIsICcic29ja2V0MSInKTsKKyAgICBz
aG91bGRCZSgiZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQucmVhZHlTdGF0ZSIsICIzIik7CisgICAg
ZmluaXNoSlNUZXN0KCk7Cit9OworCitkb2N1bWVudC5pZnJhbWVSZWFkeSA9IGZ1bmN0aW9uKCkK
K3sKKyAgICBzaG91bGRCZU5vbk51bGwoImRvY3VtZW50LmNoaWxkV2ViU29ja2V0Iik7CisgICAg
ZGVidWcoIlBBU1MgJ3NvY2tldDEnIGlzIHNlbnQgdG8gdGhlIHNlcnZlci4gdW5sb2FkIHRoZSBp
ZnJhbWUuIGV4cGVjdCByZWNlaXZpbmcgJ3NvY2tldDEnIG9uIHdzLi4uIik7CisgICAgZG9jdW1l
bnQuYm9keS5yZW1vdmVDaGlsZChmcmFtZURpdik7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2Nsb3NlLW9uLXVubG9hZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi43NGY3ZGVhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWQuaHRtbApAQCAt
MCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0
aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIG9uIHVubG9hZCIpOworCit3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciBmcmFtZURpdjsKK3ZhciBjbG9zZWRTb2NrZXQ7
CisKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2FkIik7Cit3cy5vbm9wZW4gPSBmdW5jdGlvbigp
Cit7CisgICAgZGVidWcoIlBBU1Mgd3Mgb24gbWFzdGVyIGRvY3VtZW50IGlzIHJlYWR5LiIpOwor
ICAgIGZyYW1lRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgICAgZnJh
bWVEaXYuc3JjID0gInJlc291cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZyYW1lLmh0bWwiOworICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWVEaXYpOworICAgIGRlYnVnKCJQQVNTIGlu
c2VydCBhIGlmcmFtZSwgd2hlcmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnIik7Cit9Oword3Mu
b25tZXNzYWdlID0gZnVuY3Rpb24oZXZ0KQoreworICAgIGNsb3NlZFNvY2tldCA9IGV2dC5kYXRh
OworICAgIHdzLmNsb3NlKCk7Cit9Oword3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKK3sKKyAgICBz
aG91bGRCZSgiY2xvc2VkU29ja2V0IiwgJyJzb2NrZXQxIicpOworICAgIGZpbmlzaEpTVGVzdCgp
OworfTsKKworZG9jdW1lbnQuaWZyYW1lUmVhZHkgPSBmdW5jdGlvbigpCit7CisgICAgZGVidWco
IlBBU1MgJ3NvY2tldDEnIGlzIHNlbnQgdG8gdGhlIHNlcnZlci4gdW5sb2FkIHRoZSBpZnJhbWUu
IGV4cGVjdCByZWNlaXZpbmcgJ3NvY2tldDEnIG9uIHdzLi4uIik7CisgICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChmcmFtZURpdik7Cit9OyAKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9jbG9z
ZS1vbi11bmxvYWRfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9jbG9zZS1vbi11bmxvYWRfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjRjMTMxMTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZF93c2gucHkKQEAg
LTAsMCArMSw1NiBAQAorIyBDb3B5cmlnaHQgMjAwOSwgR29vZ2xlIEluYy4KKyMgQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIwor
IyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisj
IGRpc3RyaWJ1dGlvbi4KKyMgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisj
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
KyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKworZnJvbSBtb2RfcHl3ZWJzb2NrZXQg
aW1wb3J0IG1zZ3V0aWwKKworCisjIHdlIGRvbid0IHVzZSBzZXQoKSBoZXJlLCBiZWNhdXNlIHB5
dGhvbiBvbiBtYWMgdGlnZXIgZG9lc24ndCBzdXBwb3J0IGl0LgorY29ubmVjdGlvbnMgPSB7fQor
CisKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNz
ICAjIEFsd2F5cyBhY2NlcHQuCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1
ZXN0KToKKyAgICBnbG9iYWwgY29ubmVjdGlvbnMKKyAgICBjb25uZWN0aW9uc1tyZXF1ZXN0XSA9
IFRydWUKKyAgICBzb2NrZXROYW1lID0gTm9uZQorICAgIHRyeToKKyAgICAgICAgc29ja2V0TmFt
ZSA9IG1zZ3V0aWwucmVjZWl2ZV9tZXNzYWdlKHJlcXVlc3QpCisgICAgICAgICMgbm90aWZ5IHRv
IGNsaWVudCB0aGF0IHNvY2tldE5hbWUgaXMgcmVjZWl2ZWQgYnkgc2VydmVyLgorICAgICAgICBt
c2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCBzb2NrZXROYW1lKQorICAgICAgICBtc2d1dGls
LnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KSAgIyB3YWl0LCBhbmQgZXhjZXB0aW9uIGJ5IGNsb3Nl
LgorICAgICAgICBzb2NrZXROYW1lID0gc29ja2V0TmFtZSArICc6IHJlY2VpdmUgbmV4dCBtZXNz
YWdlJworICAgIGZpbmFsbHk6CisgICAgICAgICMgcmVxdWVzdCBpcyBjbG9zZWQuIG5vdGlmeSB0
aGlzIHNvY2tldE5hbWUgdG8gb3RoZXIgd2ViIHNvY2tldHMuCisgICAgICAgIGRlbCBjb25uZWN0
aW9uc1tyZXF1ZXN0XQorICAgICAgICBmb3Igd3MgaW4gY29ubmVjdGlvbnMua2V5cygpOgorICAg
ICAgICAgICAgbXNndXRpbC5zZW5kX21lc3NhZ2Uod3MsIHNvY2tldE5hbWUpCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLXVu
cmVmLXdlYnNvY2tldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2Nsb3NlLXVucmVmLXdlYnNvY2tldC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzlmNTU1NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Ut
dW5yZWYtd2Vic29ja2V0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitDT05TT0xFIE1F
U1NBR0U6IGxpbmUgMDogV2ViU29ja2V0IGlzIGNsb3NlZCBiZWZvcmUgdGhlIGNvbm5lY3Rpb24g
aXMgZXN0YWJsaXNoZWQuCitUZXN0IGlmIFdlYiBTb2NrZXQgaXMgY2xvc2VkIHdoaWxlIGhhbmRz
aGFraW5nIGFuZCB1bnJlZmVyZW5jZWQsIGl0IHNob3VsZCBmaXJlIGNsb3NlIGV2ZW50IGF0IG1v
c3Qgb25jZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIDEgaXMgPj0gY291
bnRDbG9zZUV2ZW50CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9jbG9zZS11bnJlZi13ZWJzb2NrZXQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2UtdW5yZWYtd2Vic29ja2V0Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGVmMjNkMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xv
c2UtdW5yZWYtd2Vic29ja2V0Lmh0bWwKQEAgLTAsMCArMSwzNSBAQAorPCFET0NUWVBFIEhUTUwg
UFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVzdCBpZiBXZWIgU29ja2V0IGlzIGNs
b3NlZCB3aGlsZSBoYW5kc2hha2luZyBhbmQgdW5yZWZlcmVuY2VkLCBpdCBzaG91bGQgZmlyZSBj
bG9zZSBldmVudCBhdCBtb3N0IG9uY2UuIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKwordmFyIGNvdW50Q2xvc2VFdmVudCA9IDA7CisKK2Z1bmN0aW9uIGVuZFRlc3QoKQorewor
ICAgIHNob3VsZEJlR3JlYXRlclRoYW5PckVxdWFsKCIxIiwgImNvdW50Q2xvc2VFdmVudCIpOwor
ICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8x
MjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5naW5nLWhhbmRzaGFrZSIp
Oword3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkgeworICAgIGNvdW50Q2xvc2VFdmVudCArPSAxOwor
fTsKK3dzLmNsb3NlKCk7Cit3cyA9IG51bGw7CitnYygpOworc2V0VGltZW91dCgiZW5kVGVzdCgp
IiwgMTAwKTsKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY3Jvc3Mtb3JpZ2luLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY3Jvc3Mtb3Jp
Z2luLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYTA0
YjdiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9jcm9zcy1vcmlnaW4tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAK
K1dlYiBTb2NrZXQgQ3Jvc3MgT3JpZ2luIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCitkb2N1bWVudC5kb21haW49MTI3LjAuMC4xCit3cy51cmw9d3M6Ly9sb2NhbGhvc3Q6ODg4
MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9vcmlnaW4tdGVzdAorQ29ubmVjdGVkCitQQVNTIG9y
aWdpbiBpcyAiaHR0cDovLzEyNy4wLjAuMTo4MDAwIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY3Jvc3Mtb3JpZ2luLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Nyb3NzLW9yaWdpbi5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiYjI2MDgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Ny
b3NzLW9yaWdpbi5odG1sCkBAIC0wLDAgKzEsNTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAi
LS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxl
c2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUu
Y3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9u
Ij48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIldlYiBTb2NrZXQgQ3Jvc3MgT3JpZ2luIHRlc3QiKTsK
Kword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgb3JpZ2luOworCitmdW5jdGlv
biBlbmRUZXN0KCkKK3sKKyAgICBzaG91bGRCZSgib3JpZ2luIiwgJyJodHRwOi8vMTI3LjAuMC4x
OjgwMDAiJyk7CisgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7CisgICAgZmluaXNoSlNUZXN0
KCk7Cit9CisKK3ZhciB1cmwgPSAid3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9vcmlnaW4tdGVzdCI7CitkZWJ1ZygiZG9jdW1lbnQuZG9tYWluPSIgKyBkb2N1bWVu
dC5kb21haW4pOworZGVidWcoIndzLnVybD0iICsgdXJsKTsKK3ZhciB3cyA9IG5ldyBXZWJTb2Nr
ZXQodXJsKTsKKword3Mub25vcGVuID0gZnVuY3Rpb24oKQoreworICAgIGRlYnVnKCJDb25uZWN0
ZWQiKTsKK307CisKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChtZXNzYWdlRXZlbnQpCit7Cisg
ICAgb3JpZ2luID0gbWVzc2FnZUV2ZW50LmRhdGE7CisgICAgd3MuY2xvc2UoKTsKK307CisKK3dz
Lm9uY2xvc2UgPSBmdW5jdGlvbigpCit7CisgICAgZW5kVGVzdCgpOworfTsKKworZnVuY3Rpb24g
dGltZU91dENhbGxiYWNrKCkKK3sKKyAgICBkZWJ1ZygiVGltZWQgb3V0IGluIHN0YXRlOiAiICsg
d3MucmVhZHlTdGF0ZSk7CisgICAgZW5kVGVzdCgpOworfQorCit2YXIgdGltZW91dElEID0gc2V0
VGltZW91dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2Vk
ID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Vj
aG8tY2hhbGxlbmdlX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvZWNoby1jaGFsbGVuZ2Vfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjM5MGQ0NDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG8tY2hhbGxlbmdlX3dzaC5weQpAQCAt
MCwwICsxLDEzIEBACitmcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRpbAorCisKK2Rl
ZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzCisKKwor
ZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2d1dGlsLnNlbmRf
bWVzc2FnZShyZXF1ZXN0LCBfaGV4aWZ5KHJlcXVlc3Qud3NfY2hhbGxlbmdlKSkKKworCitkZWYg
X2hleGlmeShieXRlcyk6CisgICAgcmV0dXJuICc6Jy5qb2luKFsnJTAyWCcgJSBvcmQoYnl0ZSkg
Zm9yIGJ5dGUgaW4gYnl0ZXNdKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWNvb2tpZV93c2gucHkgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG8tY29va2llX3dzaC5weQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYWEyNWY5Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWNv
b2tpZV93c2gucHkKQEAgLTAsMCArMSwzOCBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyMgbWV0OgorIworIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjICAgICAqIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyMgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorIyB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorIwor
IyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAor
IyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
CisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKworZnJvbSBt
b2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKKworCitkZWYgd2ViX3NvY2tldF9kb19leHRy
YV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcGFzcworCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5z
ZmVyX2RhdGEocmVxdWVzdCk6CisgICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgIHJl
cXVlc3QuaGVhZGVyc19pblsnQ29va2llJ10pCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG8tbG9jYXRpb25fd3NoLnB5IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWxvY2F0aW9u
X3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzkwNTcwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9lY2hvLWxvY2F0aW9uX3dzaC5weQpAQCAtMCwwICsxLDM5IEBACisjIENvcHlyaWdodCAo
QykgMjAwOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9uLgorIyAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisj
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAor
IyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKworCitmcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRpbAorCisKK2RlZiB3ZWJf
c29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzCisKKworZGVmIHdl
Yl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBwcmludCByZXF1ZXN0LndzX2xv
Y2F0aW9uCisgICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgcmVxdWVzdC53c19sb2Nh
dGlvbikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvZWNob193c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2VjaG9fd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjc5YzNmMTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG9fd3NoLnB5CkBAIC0wLDAgKzEsNDYgQEAKKyMgQ29w
eXJpZ2h0IDIwMDksIEdvb2dsZSBJbmMuCisjIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAg
ICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMK
KyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorCisKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisKKwor
X0dPT0RCWUVfTUVTU0FHRSA9ICdHb29kYnllJworCisKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJh
X2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzICAjIEFsd2F5cyBhY2NlcHQuCisKKworZGVm
IHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICB3aGlsZSBUcnVlOgorICAg
ICAgICBsaW5lID0gbXNndXRpbC5yZWNlaXZlX21lc3NhZ2UocmVxdWVzdCkKKyAgICAgICAgbXNn
dXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgbGluZSkKKyAgICAgICAgaWYgbGluZSA9PSBfR09P
REJZRV9NRVNTQUdFOgorICAgICAgICAgICAgcmV0dXJuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Vycm9yLWRldGVjdC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Vy
cm9yLWRldGVjdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNmM2OWVlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvZXJyb3ItZGV0ZWN0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDEyIEBACitNYWtlIHN1cmUgV2ViU29ja2V0IGNvcnJlY3RseSBmaXJlIGVycm9yIGV2ZW50IGZv
ciB1bmtub3duIGZyYW1lIHR5cGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworV2Vi
U29ja2V0IGlzIG9wZW4KK3JlY2VpdmVkOmRvbmUKK1dlYlNvY2tldCBpcyBjbG9zZWQKK1BBU1Mg
ZXJyb3JDb3VudCBpcyAyNTUKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2Vycm9yLWRldGVjdC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lcnJvci1kZXRlY3QuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDQwYjZmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lcnJvci1kZXRlY3QuaHRt
bApAQCAtMCwwICsxLDM3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rl
c2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGNvcnJlY3RseSBmaXJlIGVycm9yIGV2ZW50
IGZvciB1bmtub3duIGZyYW1lIHR5cGUuIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKwordmFyIGVycm9yQ291bnQgPSAwOworCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Vua25vd24tZnJhbWUtdHlw
ZSIpOword3Mub25vcGVuID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMg
b3BlbiIpOworfTsKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKKyAgICBkZWJ1Zygi
cmVjZWl2ZWQ6IiArIGV2dC5kYXRhKTsKK307Cit3cy5vbmVycm9yID0gZnVuY3Rpb24gKCkgewor
ICAgIGVycm9yQ291bnQgKz0gMTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAg
IGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7CisgICAgc2hvdWxkQmUoImVycm9yQ291bnQi
LCAiMjU1Iik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2ZpeGVkLW9yaWdpbl93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2ZpeGVkLW9yaWdpbl93c2gucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uOTM4ZmI4MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZml4ZWQtb3JpZ2luX3dzaC5weQpAQCAtMCww
ICsxLDM4IEBACisjIENvcHlyaWdodCAoQykgMjAwOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlz
dHJpYnV0aW9uLgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0
aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKKyMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UCisjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworCitmcm9tIG1vZF9weXdlYnNvY2tldCBpbXBv
cnQgbXNndXRpbAorCisKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0
KToKKyAgICByZXF1ZXN0LndzX29yaWdpbiA9ICdodHRwOi8vZXhhbXBsZS5jb20nCisKKworZGVm
IHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2d1dGlsLnNlbmRfbWVz
c2FnZShyZXF1ZXN0LCByZXF1ZXN0LndzX29yaWdpbikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLWxvbmdlci10
aGFuLWJ1ZmZlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXItZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmMzc3MDAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTMgQEAKK01ha2Ugc3VyZSBXZWJTb2NrZXQgY29ycmVjdGx5IHNraXAgbGVuZ3RoZWQgZnJhbWUg
ZXZlbiBpZiByZWNlaXZlZCBkYXRhIGhhcyBpbmNvbXBsZXRlIGZyYW1lLgorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKK1dlYlNvY2tldCBpcyBvcGVuCityZWNlaXZlZDpoZWxsbworV2Vi
U29ja2V0IGlzIGNsb3NlZAorMQorUEFTUyBhcmVBcnJheXNFcXVhbChyZWNlaXZlZF9tZXNzYWdl
cywgZXhwZWN0ZWRfbWVzc2FnZXMpIGlzIHRydWUKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZm
ZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
ZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjdmYzY3MjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhh
bi1idWZmZXIuaHRtbApAQCAtMCwwICsxLDQ3IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+
PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGNvcnJlY3RseSBza2lw
IGxlbmd0aGVkIGZyYW1lIGV2ZW4gaWYgcmVjZWl2ZWQgZGF0YSBoYXMgaW5jb21wbGV0ZSBmcmFt
ZS4iKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgcmVjZWl2ZWRfbWVz
c2FnZXMgPSBbXTsKK3ZhciBleHBlY3RlZF9tZXNzYWdlcyA9IFsiaGVsbG8iXTsKK2Z1bmN0aW9u
IGZpbmlzaCgpIHsKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBkZWJ1ZyhyZWNl
aXZlZF9tZXNzYWdlcy5sZW5ndGgpOworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVjZWl2ZWRf
bWVzc2FnZXM7IGkrKykgeworICAgICAgICBkZWJ1ZygicmVjZWl2ZWRbIiArIGkgKyAiXT0iICsg
cmVjZWl2ZWRfbWVzc2FnZXNbaV0pOworICAgIH0KKworICAgIHNob3VsZEJlVHJ1ZSgiYXJlQXJy
YXlzRXF1YWwocmVjZWl2ZWRfbWVzc2FnZXMsIGV4cGVjdGVkX21lc3NhZ2VzKSIpOworCisgICAg
ZmluaXNoSlNUZXN0KCk7Cit9CisKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAu
MC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLWxvbmdlci10aGFu
LWJ1ZmZlciIpOword3Mub25vcGVuID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2Nr
ZXQgaXMgb3BlbiIpOworfTsKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKKyAgICBk
ZWJ1ZygicmVjZWl2ZWQ6IiArIGV2dC5kYXRhKTsKKyAgICByZWNlaXZlZF9tZXNzYWdlcy5wdXNo
KGV2dC5kYXRhKTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJX
ZWJTb2NrZXQgaXMgY2xvc2VkIik7CisgICAgZmluaXNoKCk7Cit9OwordmFyIHRpbWVvdXRJRCA9
IHNldFRpbWVvdXQoImZpbmlzaCgpIiwgMjAwMCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQg
PSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJh
bWUtbGVuZ3RoLWxvbmdlci10aGFuLWJ1ZmZlcl93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZm
ZXJfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzNGI0ZjEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2ZyYW1lLWxlbmd0aC1sb25nZXItdGhhbi1idWZmZXJfd3NoLnB5CkBAIC0wLDAgKzEs
MTEgQEAKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBw
YXNzCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2cg
PSAiXDBoZWxsb1x4ZmYiCisgICAgbXNnICs9ICJceDgwXHg4MVx4MDEiICMgU2tpcCAxKjEyOCsx
IGJ5dGVzLgorICAgIG1zZyArPSAiXHgwMVx4ZmYiCisgICAgbXNnICs9ICJcMHNob3VsZCBiZSBz
a2lwcGVkXHhmZiIKKyAgICByZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNnKQorICAgIHJhaXNl
IEV4Y2VwdGlvbigiQWJvcnQgdGhlIGNvbm5lY3Rpb24iKSAjIFByZXZlbnRzIHB5d2Vic29ja2V0
IGZyb20gc3RhcnRpbmcgY2xvc2luZyBoYW5kc2hha2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1vdmVyZmxv
dy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2ZyYW1lLWxlbmd0aC1vdmVyZmxvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZGMyMTZmNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLW92ZXJm
bG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUg
MDogV2ViU29ja2V0IGZyYW1lIGxlbmd0aCB0b28gbGFyZ2UKK01ha2Ugc3VyZSBXZWJTb2NrZXQg
ZG9lcyBub3QgY3Jhc2ggYW5kIHJlcG9ydCBlcnJvciB3aGVuIGl0IHNlZXMgbGVuZ3RoIG92ZXJm
bG93CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworV2ViU29ja2V0IGlzIG9wZW4KK1dl
YlNvY2tldCByZWNlaXZlZCBlcnJvciBmcmFtZQorV2ViU29ja2V0IGlzIGNsb3NlZAorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVu
Z3RoLW92ZXJmbG93Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1vdmVyZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmY1MThmZTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1vdmVyZmxvdy5o
dG1sCkBAIC0wLDAgKzEsMzMgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48
L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJN
YWtlIHN1cmUgV2ViU29ja2V0IGRvZXMgbm90IGNyYXNoIGFuZCByZXBvcnQgZXJyb3Igd2hlbiBp
dCBzZWVzIGxlbmd0aCBvdmVyZmxvdyIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7
CisKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLW92ZXJmbG93Iik7Cit3cy5vbm9wZW4gPSBmdW5j
dGlvbiAoKSB7CisgICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7Cit9Oword3Mub25tZXNz
YWdlID0gZnVuY3Rpb24gKGV2dCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgcmVjZWl2ZWQ6IiAr
IGV2dC5kYXRhKTsKK307Cit3cy5vbmVycm9yID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJX
ZWJTb2NrZXQgcmVjZWl2ZWQgZXJyb3IgZnJhbWUiKTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rp
b24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7CisgICAgZmluaXNoSlNU
ZXN0KCk7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1vdmVyZmxvd193
c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Zy
YW1lLWxlbmd0aC1vdmVyZmxvd193c2gucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMWM3YzkyMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLW92ZXJmbG93X3dzaC5weQpAQCAt
MCwwICsxLDggQEAKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToK
KyAgICBwYXNzCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAg
ICBtc2cgPSAxNiAqICdceGZmJworICAgIHJlcXVlc3QuY29ubmVjdGlvbi53cml0ZShtc2cpCisg
ICAgcmFpc2UgRXhjZXB0aW9uKCdBYm9ydCB0aGUgY29ubmVjdGlvbicpICMgUHJldmVudHMgcHl3
ZWJzb2NrZXQgZnJvbSBzdGFydGluZyBjbG9zaW5nIGhhbmRzaGFrZS4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3Ro
LXNraXAtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGgtc2tpcC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uYWEzMmZlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLXNraXAt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAKK01ha2Ugc3VyZSBXZWJTb2NrZXQgY29ycmVj
dGx5IHNraXAgbGVuZ3RoZWQgZnJhbWUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
V2ViU29ja2V0IGlzIG9wZW4KK3JlY2VpdmVkOmhlbGxvCityZWNlaXZlZDp3b3JsZAorV2ViU29j
a2V0IGlzIGNsb3NlZAorMgorUEFTUyBhcmVBcnJheXNFcXVhbChyZWNlaXZlZF9tZXNzYWdlcywg
ZXhwZWN0ZWRfbWVzc2FnZXMpIGlzIHRydWUKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1za2lwLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aC1za2lw
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDFhN2U2OQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvZnJhbWUtbGVuZ3RoLXNraXAuaHRtbApAQCAtMCwwICsxLDQ3IEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10
ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJk
ZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGNv
cnJlY3RseSBza2lwIGxlbmd0aGVkIGZyYW1lLiIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9
IHRydWU7CisKK3ZhciByZWNlaXZlZF9tZXNzYWdlcyA9IFtdOwordmFyIGV4cGVjdGVkX21lc3Nh
Z2VzID0gWyJoZWxsbyIsICJ3b3JsZCJdOworZnVuY3Rpb24gZmluaXNoKCkgeworICAgIGNsZWFy
VGltZW91dCh0aW1lb3V0SUQpOworICAgIGRlYnVnKHJlY2VpdmVkX21lc3NhZ2VzLmxlbmd0aCk7
CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZWNlaXZlZF9tZXNzYWdlczsgaSsrKSB7CisgICAg
ICAgIGRlYnVnKCJyZWNlaXZlZFsiICsgaSArICJdPSIgKyByZWNlaXZlZF9tZXNzYWdlc1tpXSk7
CisgICAgfQorCisgICAgc2hvdWxkQmVUcnVlKCJhcmVBcnJheXNFcXVhbChyZWNlaXZlZF9tZXNz
YWdlcywgZXhwZWN0ZWRfbWVzc2FnZXMpIik7CisKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKwor
dmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGgtc2tpcCIpOword3Mub25vcGVuID0gZnVuY3Rpb24gKCkg
eworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgb3BlbiIpOworfTsKK3dzLm9ubWVzc2FnZSA9IGZ1
bmN0aW9uIChldnQpIHsKKyAgICBkZWJ1ZygicmVjZWl2ZWQ6IiArIGV2dC5kYXRhKTsKKyAgICBy
ZWNlaXZlZF9tZXNzYWdlcy5wdXNoKGV2dC5kYXRhKTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rp
b24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7CisgICAgZmluaXNoKCk7
Cit9OwordmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQoImZpbmlzaCgpIiwgMjAwMCk7CisKK3Zh
ciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3RoLXNraXBfd3NoLnB5IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGgtc2tpcF93c2gu
cHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU4NzQwMQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
ZnJhbWUtbGVuZ3RoLXNraXBfd3NoLnB5CkBAIC0wLDAgKzEsMTIgQEAKK2RlZiB3ZWJfc29ja2V0
X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzCisKKworZGVmIHdlYl9zb2Nr
ZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2cgPSAiXDBoZWxsb1x4ZmYiCisgICAg
bXNnICs9ICJceDgwXHg4MVx4MDEiICAgIyBza2lwIDEqMTI4KzEgYnl0ZXMuCisgICAgbXNnICs9
ICJceDAxIgorICAgIG1zZyArPSAiXDBzaG91bGQgYmUgc2tpcHBlZCIgKyAoIiAiICogMTA5KSAr
ICJceGZmIgorICAgIG1zZyArPSAiXDB3b3JsZFx4ZmYiCisgICAgcmVxdWVzdC5jb25uZWN0aW9u
LndyaXRlKG1zZykKKyAgICBwcmludCBtc2cKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3Rocy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxl
bmd0aHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIz
ZWU0NTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBA
QAorVGVzdCBzZW5kaW5nIGFuZCByZWNlaXZpbmcgc21hbGwgbWVzc2FnZXMgb2YgZGlmZmVyZW50
IGxlbmd0aHMuCisKK1Nob3VsZCBzYXkgUEFTUzoKKworUnVubmluZyB0aGUgdGVzdC4uLgorUEFT
UworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2ZyYW1lLWxlbmd0aHMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvZnJhbWUtbGVuZ3Rocy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmQ0YWNhN2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2ZyYW1lLWxlbmd0aHMuaHRtbApAQCAt
MCwwICsxLDQ1IEBACis8cD5UZXN0IHNlbmRpbmcgYW5kIHJlY2VpdmluZyBzbWFsbCBtZXNzYWdl
cyBvZiBkaWZmZXJlbnQgbGVuZ3Rocy48L3A+Cis8cD5TaG91bGQgc2F5IFBBU1M6PC9wPgorPHBy
ZSBpZD1sb2c+UnVubmluZyB0aGUgdGVzdC4uLgorPC9wcmU+Cis8c2NyaXB0PgordmFyIG1heExl
bmd0aCA9IDEwMjU7CisKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIud2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiBsb2cobWVzc2FnZSkKK3sKKyAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiXG4i
OworfQorCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2VjaG8iKTsKKwordmFyIGxhc3RTdHJpbmc7Cit2YXIgZmFpbGVk
ID0gZmFsc2U7Cit3cy5vbm9wZW4gPSBmdW5jdGlvbigpIHsKKyAgICBsYXN0U3RyaW5nID0gIiI7
CisgICAgd3Muc2VuZChsYXN0U3RyaW5nKTsKK30KKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24o
bXNnKSB7CisgICAgaWYgKG1zZy5kYXRhICE9IGxhc3RTdHJpbmcpIHsKKyAgICAgICAgbG9nKCJG
QUlMIC0gaW5jb3JyZWN0IHJlc3BvbnNlLiBFeHBlY3RlZCAnIiArIGxhc3RTdHJpbmcgKyAiJywg
Z290ICciICsgbXNnLmRhdGEgKyAiJy4iKTsKKyAgICAgICAgZmFpbGVkID0gdHJ1ZTsKKyAgICB9
CisKKyAgICBpZiAobGFzdFN0cmluZy5sZW5ndGggPT0gbWF4TGVuZ3RoKSB7CisgICAgICAgIGlm
ICghZmFpbGVkKQorICAgICAgICAgICAgbG9nKCJQQVNTIik7CisgICAgICAgIHdzLnNlbmQoIkdv
b2RieWUiKTsKKyAgICAgICAgd3Mub25tZXNzYWdlID0gbnVsbDsKKyAgICAgICAgaWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgIHNldFRpbWVvdXQoImxheW91dFRl
c3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDApOworICAgIH0gZWxzZSB7CisgICAgICAgIGxh
c3RTdHJpbmcgKz0gIioiOworICAgICAgICB3cy5zZW5kKGxhc3RTdHJpbmcpOworICAgIH0KK30K
Kzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hh
a2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmMxYmRjZDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1jaGFsbGVuZ2UtcmFu
ZG9tbmVzcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitIYW5kc2hha2UgcmVxdWVzdCBz
aG91bGQgY29udGFpbiByYW5kb20gY2hhbGxlbmdlIHZhbHVlcy4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCitQQVNTIGNoYWxsZW5nZTEgPT09IGNoYWxsZW5nZTIgaXMgZmFsc2UKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRz
aGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzdmZGQwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9o
YW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRtbApAQCAtMCwwICsxLDUwIEBACis8IURP
Q1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFk
PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291
cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCdIYW5kc2hha2UgcmVx
dWVzdCBzaG91bGQgY29udGFpbiByYW5kb20gY2hhbGxlbmdlIHZhbHVlcy4nKTsKKword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgY2hhbGxlbmdlMTsKK3ZhciBjaGFsbGVuZ2Uy
OworCit2YXIgdXJsID0gJ3dzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvZWNoby1jaGFsbGVuZ2UnOwordmFyIHdzMSA9IG5ldyBXZWJTb2NrZXQodXJsKTsKKword3Mx
Lm9ubWVzc2FnZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBjaGFsbGVuZ2UxID0g
bWVzc2FnZUV2ZW50LmRhdGE7CisgICAgd3MxLmNsb3NlKCk7Cit9CisKK3dzMS5vbmNsb3NlID0g
ZnVuY3Rpb24oKQoreworICAgIHZhciB3czIgPSBuZXcgV2ViU29ja2V0KHVybCk7CisKKyAgICB3
czIub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQorICAgIHsKKyAgICAgICAgY2hh
bGxlbmdlMiA9IG1lc3NhZ2VFdmVudC5kYXRhOworICAgICAgICB3czIuY2xvc2UoKTsKKyAgICB9
CisKKyAgICB3czIub25jbG9zZSA9IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHNob3VsZEJl
RmFsc2UoJ2NoYWxsZW5nZTEgPT09IGNoYWxsZW5nZTInKTsKKyAgICAgICAgaWYgKGNoYWxsZW5n
ZTEgPT09IGNoYWxsZW5nZTIpCisgICAgICAgICAgICBkZWJ1ZygnY2hhbGxlbmdlIHdhcyAnICsg
Y2hhbGxlbmdlMSk7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KK30KKwordmFyIHN1
Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZXJyb3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZXJyb3ItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1MzA4MjgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2hhbmRzaGFrZS1lcnJvci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDA6IE5vIHJlc3BvbnNlIGNvZGUgZm91bmQ6IFRoaXNXaWxsQ2F1c2VI
YW5kc2hha2VFcnJvcgorSGFuZHNoYWtlIGVycm9yIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCitDbG9zZWQuCitQQVNTIHdzLnJlYWR5U3RhdGUgaXMgMworUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWVycm9y
Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hh
bmRzaGFrZS1lcnJvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRm
OTY0MzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1lcnJvci5odG1sCkBAIC0wLDAgKzEsNTIgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10
ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIkhhbmRzaGFrZSBl
cnJvciB0ZXN0Iik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworZnVuY3Rpb24g
ZW5kVGVzdCgpCit7CisgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7CisgICAgZmluaXNoSlNU
ZXN0KCk7Cit9CisKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWVycm9yIik7CisKK3dzLm9ub3BlbiA9
IGZ1bmN0aW9uKCkKK3sKKyAgICB0ZXN0RmFpbGVkKCJVbmV4cGVjdGVkbHkgQ29ubmVjdGVkLiIp
OworfTsKKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQoreworICAgIHRl
c3RGYWlsZWQoIlVuZXhwZWN0ZWRseSBSZWNlaXZlZDogJyIgKyBtZXNzYWdlRXZlbnQuZGF0YSAr
ICInIik7Cit9OworCit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIGRlYnVnKCJDbG9z
ZWQuIik7CisgICAgc2hvdWxkQmUoIndzLnJlYWR5U3RhdGUiLCAiMyIpCisgICAgZW5kVGVzdCgp
OworfTsKKworZnVuY3Rpb24gdGltZU91dENhbGxiYWNrKCkKK3sKKyAgICB0ZXN0RmFpbGVkKCJU
aW1lZCBvdXQgaW4gc3RhdGU6ICIgKyB3cy5yZWFkeVN0YXRlKTsKKyAgICBlbmRUZXN0KCk7Cit9
CisKK3ZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFjaywgMzAwMCk7CisK
K3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWVycm9yX3dzaC5weSBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWVycm9yX3dzaC5w
eQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODUxZmE2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9o
YW5kc2hha2UtZXJyb3Jfd3NoLnB5CkBAIC0wLDAgKzEsMzggQEAKKyMgQ29weXJpZ2h0IChDKSAy
MDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisj
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisjIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
CisKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisKKworZGVmIHdlYl9zb2Nr
ZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHJlcXVlc3QuY29ubmVjdGlvbi53
cml0ZSgnVGhpc1dpbGxDYXVzZUhhbmRzaGFrZUVycm9yXHJcbicpCisKKworZGVmIHdlYl9zb2Nr
ZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1
ZXN0LCAnSGVsbG8gZnJvbSBIYW5kc2hha2UgRXJyb3IgV1NILicpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWls
LWJ5LWNyb3NzLW9yaWdpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LWNyb3NzLW9yaWdpbi1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGI5YjZlNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvaGFuZHNoYWtlLWZhaWwtYnktY3Jvc3Mtb3JpZ2luLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogRXJyb3IgZHVyaW5nIFdlYlNvY2tl
dCBoYW5kc2hha2U6IG9yaWdpbiBtaXNtYXRjaDogaHR0cDovLzEyNy4wLjAuMTo4MDAwICE9IGh0
dHA6Ly9leGFtcGxlLmNvbQorTWFrZSBzdXJlIFdlYiBTb2NrZXQgY29ubmVjdGlvbiBmYWlsZWQg
aWYgb3JpZ2luIG1pc21hdGNoZXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworZG9j
dW1lbnQuZG9tYWluPTEyNy4wLjAuMQord3MudXJsPXdzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvZml4ZWQtb3JpZ2luCitQQVNTIGNvbm5lY3RlZCBpcyBmYWxzZQor
UEFTUyBvcmlnaW4gaXMgdW5kZWZpbmVkLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktY3Jvc3Mtb3JpZ2luLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRz
aGFrZS1mYWlsLWJ5LWNyb3NzLW9yaWdpbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjE2OThhYmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LWNyb3NzLW9yaWdp
bi5odG1sCkBAIC0wLDAgKzEsNjEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8v
RFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBXZWIgU29ja2V0IGNvbm5lY3Rpb24gZmFpbGVkIGlm
IG9yaWdpbiBtaXNtYXRjaGVzLiIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisK
K3ZhciBjb25uZWN0ZWQgPSBmYWxzZTsKK3ZhciBvcmlnaW47CisKK2Z1bmN0aW9uIGVuZFRlc3Qo
KQoreworICAgIHNob3VsZEJlRmFsc2UoImNvbm5lY3RlZCIpOworICAgIHNob3VsZEJlVW5kZWZp
bmVkKCJvcmlnaW4iKTsKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5pc2hK
U1Rlc3QoKTsKK30KKwordmFyIHVybCA9ICJ3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2ZpeGVkLW9yaWdpbiI7CitkZWJ1ZygiZG9jdW1lbnQuZG9tYWluPSIgKyBk
b2N1bWVudC5kb21haW4pOworZGVidWcoIndzLnVybD0iICsgdXJsKTsKK3ZhciB3cyA9IG5ldyBX
ZWJTb2NrZXQodXJsKTsKKword3Mub25vcGVuID0gZnVuY3Rpb24oKQoreworICAgIGRlYnVnKCJD
b25uZWN0ZWQiKTsKKyAgICBjb25uZWN0ZWQgPSB0cnVlOworfTsKKword3Mub25tZXNzYWdlID0g
ZnVuY3Rpb24gKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBvcmlnaW4gPSBtZXNzYWdlRXZlbnQuZGF0
YTsKKyAgICBkZWJ1Zygib3JpZ2luPSIgKyBvcmlnaW4pOworICAgIHdzLmNsb3NlKCk7Cit9Owor
Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIGVuZFRlc3QoKTsKK307CisKK2Z1bmN0
aW9uIHRpbWVPdXRDYWxsYmFjaygpCit7CisgICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTog
IiArIHdzLnJlYWR5U3RhdGUpOworICAgIGVuZFRlc3QoKTsKK30KKwordmFyIHRpbWVvdXRJRCA9
IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9oYW5kc2hha2UtZmFpbC1ieS1tYXhsZW5ndGgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1tYXhs
ZW5ndGgtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYx
ZWU3M2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxMiBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFN0YXR1cyBsaW5lIGlz
IHRvbyBsb25nCitDb25uZWN0aW9uIHNob3VsZCBmYWlsIGltbWVkaWF0ZWx5LCByYXRoZXIgdGhh
biBzdWNjZWVkaW5nIG9yIHN0YXlpbmcgaW4gbGltYm8gdW50aWwgdGltZW91dCwgaWYgaGFuZHNo
YWtlIGlzIGxvbmdlciB0aGFuIDEwMjQgYnl0ZXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworUEFTUyB0aW1lZE91dCBpcyBmYWxzZQorUEFTUyBjb25uZWN0ZWQgaXMgZmFsc2UKK1BB
U1Mgb3JpZ2luIGlzIHVuZGVmaW5lZC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aC5odG1sIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2Ut
ZmFpbC1ieS1tYXhsZW5ndGguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li43Zjk0ZDdjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1tYXhsZW5ndGguaHRtbApAQCAt
MCwwICsxLDYxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignQ29ubmVjdGlvbiBzaG91bGQg
ZmFpbCBpbW1lZGlhdGVseSwgcmF0aGVyIHRoYW4gc3VjY2VlZGluZyBvciBzdGF5aW5nIGluIGxp
bWJvIHVudGlsIHRpbWVvdXQsIGlmIGhhbmRzaGFrZSBpcyBsb25nZXIgdGhhbiAxMDI0IGJ5dGVz
LicpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciB0aW1lZE91dCA9IGZh
bHNlOwordmFyIGNvbm5lY3RlZCA9IGZhbHNlOwordmFyIG9yaWdpbjsKKworZnVuY3Rpb24gZW5k
VGVzdCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCd0aW1lZE91dCcpOworICAgIHNob3VsZEJlRmFs
c2UoJ2Nvbm5lY3RlZCcpOworICAgIHNob3VsZEJlVW5kZWZpbmVkKCdvcmlnaW4nKTsKKyAgICBj
bGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKwordmFyIHVy
bCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFr
ZS1mYWlsLWJ5LW1heGxlbmd0aCc7Cit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KHVybCk7CisKK3dz
Lm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygnQ29ubmVjdGVkJyk7CisgICAgY29u
bmVjdGVkID0gdHJ1ZTsKK30KKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50
KQoreworICAgIG9yaWdpbiA9IG1lc3NhZ2VFdmVudC5kYXRhOworICAgIGRlYnVnKCdvcmlnaW4g
PSAnICsgb3JpZ2luKTsKKyAgICB3cy5jbG9zZSgpOworfQorCit3cy5vbmNsb3NlID0gZnVuY3Rp
b24oKQoreworICAgIGVuZFRlc3QoKTsKK30KKworZnVuY3Rpb24gdGltZW91dENhbGxiYWNrKCkK
K3sKKyAgICBkZWJ1ZygnVGltZWQgb3V0IChzdGF0ZSA9ICcgKyB3cy5yZWFkeVN0YXRlICsgJykn
KTsKKyAgICB0aW1lZE91dCA9IHRydWU7CisgICAgZW5kVGVzdCgpOworfQorCit2YXIgdGltZW91
dElEID0gc2V0VGltZW91dCh0aW1lb3V0Q2FsbGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vzc2Z1
bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxlbmd0aF93c2gucHkgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW1heGxl
bmd0aF93c2gucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzAzOWZiMwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbWF4bGVuZ3RoX3dzaC5weQpAQCAtMCwwICsxLDM5
IEBACisjIENvcHlyaWdodCAoQykgUmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQgMjAxMS4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZQorIyBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogor
IworIyAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nCisjIGRpc2NsYWltZXIuCisjCisjIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZQorIyBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIOKAnEFTIElT4oCdIEFORCBBTlkgRVhQUkVTUyBPUgorIyBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GCisjIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMCisjIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorIyBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisj
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisjIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IKKyMgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworIyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworCitkZWYgd2Vi
X3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgIyBUaGlzIHdpbGwgY2F1
c2UgdGhlIGhhbmRzaGFrZSB0byBmYWlsIGJlY2F1c2UgaXQgcHVzaGVzIHRoZSBsZW5ndGggb2Yg
dGhlCisgICAgIyBzdGF0dXMgbGluZSBwYXN0IDEwMjQgY2hhcmFjdGVycworICAgIG1zZyA9ICcu
JyAqIDEwMjQKKyAgICBtc2cgKz0gJ0hUVFAvMS4xIDEwMSBXZWJTb2NrZXQgUHJvdG9jb2wgSGFu
ZHNoYWtlXHJcbicKKyAgICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNvY2tldFxyXG4nCisgICAgbXNn
ICs9ICdDb25uZWN0aW9uOiBVcGdyYWRlXHJcbicKKyAgICBtc2cgKz0gJ1NlYy1XZWJTb2NrZXQt
TG9jYXRpb246ICcgKyByZXF1ZXN0LndzX2xvY2F0aW9uICsgJ1xyXG4nCisgICAgbXNnICs9ICdT
ZWMtV2ViU29ja2V0LU9yaWdpbjogJyArIHJlcXVlc3Qud3Nfb3JpZ2luICsgJ1xyXG4nCisgICAg
bXNnICs9ICdcclxuJworICAgIG1zZyArPSByZXF1ZXN0LndzX2NoYWxsZW5nZV9tZDUKKyAgICBy
ZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNnKQorICAgIHJhaXNlIEV4Y2VwdGlvbignYWJvcnQg
dGhlIGNvbm5lY3Rpb24nKSAjIFByZXZlbnRzIHB5d2Vic29ja2V0IGZyb20gc2VuZGluZyBpdHMg
b3duIGhhbmRzaGFrZSBtZXNzYWdlLgorCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEo
cmVxdWVzdCk6CisgICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhl
YWRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjYyZDViCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRlci1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw5IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogRXJyb3IgZHVyaW5nIFdlYlNv
Y2tldCBoYW5kc2hha2U6ICdDb25uZWN0aW9uJyBoZWFkZXIgaXMgbWlzc2luZworVGVzdCB0aGF0
IFdlYlNvY2tldCBoYW5kc2hha2UgZmFpbHMgaWYgQ29ubmVjdGlvbiBoZWFkZXIgZmllbGQgaXNu
J3QgcmVmbGVjdGVkIGJ5IHRoZSBzZXJ2ZXIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
aGFuZHNoYWtlLWZhaWwtYnktbm8tY29ubmVjdGlvbi1oZWFkZXIuaHRtbCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8t
Y29ubmVjdGlvbi1oZWFkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5hYzU5NGU3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jb25uZWN0aW9uLWhlYWRl
ci5odG1sCkBAIC0wLDAgKzEsNTIgQEAKKzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+Cis8aGVhZD4K
KzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRp
diBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2Ny
aXB0PgorZGVzY3JpcHRpb24oIlRlc3QgdGhhdCBXZWJTb2NrZXQgaGFuZHNoYWtlIGZhaWxzIGlm
IENvbm5lY3Rpb24gaGVhZGVyIGZpZWxkIGlzbid0IHJlZmxlY3RlZCBieSB0aGUgc2VydmVyLiIp
OworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2Z1bmN0aW9uIGVuZFRlc3QoKQor
eworICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQor
Cit2YXIgdXJsID0gIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
aGFuZHNoYWtlLWZhaWwtYnktbm8tY29ubmVjdGlvbi1oZWFkZXIiOwordmFyIHdzID0gbmV3IFdl
YlNvY2tldCh1cmwpOworCit3cy5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkZB
SUw6IENvbm5lY3RlZCIpOworfTsKKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2
ZW50KQoreworICAgIHByb3RvY29sID0gbWVzc2FnZUV2ZW50LmRhdGE7CisgICAgd3MuY2xvc2Uo
KTsKK307CisKK3dzLm9uY2xvc2UgPSBmdW5jdGlvbigpCit7CisgICAgZW5kVGVzdCgpOworfTsK
KworZnVuY3Rpb24gdGltZU91dENhbGxiYWNrKCkKK3sKKyAgICBkZWJ1ZygiVGltZWQgb3V0IGlu
IHN0YXRlOiAiICsgd3MucmVhZHlTdGF0ZSk7CisgICAgZW5kVGVzdCgpOworfQorCit2YXIgdGlt
ZW91dElEID0gc2V0VGltZW91dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4u
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNvbm5lY3Rpb24taGVhZGVyX3dzaC5weSBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtl
LWZhaWwtYnktbm8tY29ubmVjdGlvbi1oZWFkZXJfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjdlZmM4N2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNv
bm5lY3Rpb24taGVhZGVyX3dzaC5weQpAQCAtMCwwICsxLDE1IEBACitkZWYgd2ViX3NvY2tldF9k
b19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgbXNnID0gJ0hUVFAvMS4xIDEwMSBXZWJT
b2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlXHJcbicKKyAgICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNv
Y2tldFxyXG4nCisjICAgTWlzc2luZyAnQ29ubmVjdGlvbjogVXBncmFkZVxyXG4nCisgICAgbXNn
ICs9ICdTZWMtV2ViU29ja2V0LUxvY2F0aW9uOiAnICsgcmVxdWVzdC53c19sb2NhdGlvbiArICdc
clxuJworICAgIG1zZyArPSAnU2VjLVdlYlNvY2tldC1PcmlnaW46ICcgKyByZXF1ZXN0LndzX29y
aWdpbiArICdcclxuJworICAgIG1zZyArPSAnXHJcbicKKyAgICBtc2cgKz0gcmVxdWVzdC53c19j
aGFsbGVuZ2VfbWQ1CisgICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKKyAgICBwcmlu
dCBtc2cKKyAgICByYWlzZSBFeGNlcHRpb24oJ0Fib3J0IHRoZSBjb25uZWN0aW9uJykgIyBQcmV2
ZW50cyBweXdlYnNvY2tldCBmcm9tIHNlbmRpbmcgaXRzIG93biBoYW5kc2hha2UgbWVzc2FnZS4K
KworCitkZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgIHBhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
aGFuZHNoYWtlLWZhaWwtYnktbm8tY3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jci1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2U1NmViNwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8tY3ItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEg
QEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBTdGF0dXMgbGluZSBkb2VzIG5vdCBlbmQgd2l0
aCBDUkxGCitIYW5kc2hha2Ugc2hvdWxkIGZhaWwgd2hlbiB0aGUgZmlyc3QgbGluZSBkb2VzIG5v
dCBlbmQgd2l0aCBDUkxGLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1MgY29u
bmVjdGVkIGlzIGZhbHNlCitQQVNTIG9yaWdpbiBpcyB1bmRlZmluZWQuCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1i
eS1uby1jci5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjI4NGEzMzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyLmh0
bWwKQEAgLTAsMCArMSw1OCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Citk
ZXNjcmlwdGlvbignSGFuZHNoYWtlIHNob3VsZCBmYWlsIHdoZW4gdGhlIGZpcnN0IGxpbmUgZG9l
cyBub3QgZW5kIHdpdGggQ1JMRi4nKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
Cit2YXIgY29ubmVjdGVkID0gZmFsc2U7Cit2YXIgb3JpZ2luOworCitmdW5jdGlvbiBlbmRUZXN0
KCkgeworICAgIHNob3VsZEJlRmFsc2UoJ2Nvbm5lY3RlZCcpOworICAgIHNob3VsZEJlVW5kZWZp
bmVkKCdvcmlnaW4nKTsKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5pc2hK
U1Rlc3QoKTsKK30KKwordmFyIHVybCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyJzsKK3ZhciB3cyA9IG5ldyBXZWJT
b2NrZXQodXJsKTsKKword3Mub25vcGVuID0gZnVuY3Rpb24oKQoreworICAgIGRlYnVnKCdDb25u
ZWN0ZWQnKTsKKyAgICBjb25uZWN0ZWQgPSB0cnVlOworfQorCit3cy5vbm1lc3NhZ2UgPSBmdW5j
dGlvbihtZXNzYWdlRXZlbnQpCit7CisgICAgb3JpZ2luID0gbWVzc2FnZUV2ZW50LmRhdGE7Cisg
ICAgZGVidWcoJ29yaWdpbiA9ICcgKyBvcmlnaW4pOworICAgIHdzLmNsb3NlKCk7Cit9CisKK3dz
Lm9uY2xvc2UgPSBmdW5jdGlvbigpCit7CisgICAgZW5kVGVzdCgpOworfQorCitmdW5jdGlvbiB0
aW1lb3V0Q2FsbGJhY2soKQoreworICAgIGRlYnVnKCdUaW1lZCBvdXQgKHN0YXRlID0gJyArIHdz
LnJlYWR5U3RhdGUgKyAnKScpOworICAgIGVuZFRlc3QoKTsKK30KKwordmFyIHRpbWVvdXRJRCA9
IHNldFRpbWVvdXQodGltZW91dENhbGxiYWNrLCAzMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9oYW5kc2hha2UtZmFpbC1ieS1uby1jcl93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLWNyX3dzaC5weQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Nzg5MjRhCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5k
c2hha2UtZmFpbC1ieS1uby1jcl93c2gucHkKQEAgLTAsMCArMSwxNSBAQAorZGVmIHdlYl9zb2Nr
ZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIG1zZyA9ICdIVFRQLzEuMSAxMDEg
V2ViU29ja2V0IFByb3RvY29sIEhhbmRzaGFrZVxuJyAjIERvZXMgbm90IGVuZCB3aXRoICJcclxu
Ii4KKyAgICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNvY2tldFxyXG4nCisgICAgbXNnICs9ICdDb25u
ZWN0aW9uOiBVcGdyYWRlXHJcbicKKyAgICBtc2cgKz0gJ1NlYy1XZWJTb2NrZXQtTG9jYXRpb246
ICcgKyByZXF1ZXN0LndzX2xvY2F0aW9uICsgJ1xyXG4nCisgICAgbXNnICs9ICdTZWMtV2ViU29j
a2V0LU9yaWdpbjogJyArIHJlcXVlc3Qud3Nfb3JpZ2luICsgJ1xyXG4nCisgICAgbXNnICs9ICdc
clxuJworICAgIG1zZyArPSByZXF1ZXN0LndzX2NoYWxsZW5nZV9tZDUKKyAgICByZXF1ZXN0LmNv
bm5lY3Rpb24ud3JpdGUobXNnKQorICAgIHByaW50IG1zZworICAgIHJhaXNlIEV4Y2VwdGlvbign
QWJvcnQgdGhlIGNvbm5lY3Rpb24nKSAjIFByZXZlbnRzIHB5d2Vic29ja2V0IGZyb20gc2VuZGlu
ZyBpdHMgb3duIGhhbmRzaGFrZSBtZXNzYWdlLgorCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVy
X2RhdGEocmVxdWVzdCk6CisgICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby11cGdyYWRl
LWhlYWRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVhZGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZjA2NjdkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9oYW5kc2hha2UtZmFpbC1ieS1uby11cGdyYWRlLWhlYWRlci1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw5IEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogRXJyb3IgZHVyaW5nIFdlYlNvY2tl
dCBoYW5kc2hha2U6ICdVcGdyYWRlJyBoZWFkZXIgaXMgbWlzc2luZworVGVzdCB0aGF0IFdlYlNv
Y2tldCBoYW5kc2hha2UgZmFpbHMgaWYgVXBncmFkZSBoZWFkZXIgZmllbGQgaXNuJ3QgcmVmbGVj
dGVkIGJ5IHRoZSBzZXJ2ZXIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtl
LWZhaWwtYnktbm8tdXBncmFkZS1oZWFkZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFk
ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDNlYWMyCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1uby11cGdyYWRlLWhlYWRlci5odG1sCkBAIC0wLDAgKzEs
NTIgQEAKKzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24i
PjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24o
IlRlc3QgdGhhdCBXZWJTb2NrZXQgaGFuZHNoYWtlIGZhaWxzIGlmIFVwZ3JhZGUgaGVhZGVyIGZp
ZWxkIGlzbid0IHJlZmxlY3RlZCBieSB0aGUgc2VydmVyLiIpOworCit3aW5kb3cuanNUZXN0SXNB
c3luYyA9IHRydWU7CisKK2Z1bmN0aW9uIGVuZFRlc3QoKQoreworICAgIGNsZWFyVGltZW91dCh0
aW1lb3V0SUQpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCit2YXIgdXJsID0gIndzOi8vbG9j
YWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8t
dXBncmFkZS1oZWFkZXIiOwordmFyIHdzID0gbmV3IFdlYlNvY2tldCh1cmwpOworCit3cy5vbm9w
ZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkZBSUw6IENvbm5lY3RlZCIpOworfTsKKwor
d3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQoreworICAgIHByb3RvY29sID0g
bWVzc2FnZUV2ZW50LmRhdGE7CisgICAgd3MuY2xvc2UoKTsKK307CisKK3dzLm9uY2xvc2UgPSBm
dW5jdGlvbigpCit7CisgICAgZW5kVGVzdCgpOworfTsKKworZnVuY3Rpb24gdGltZU91dENhbGxi
YWNrKCkKK3sKKyAgICBkZWJ1ZygiVGltZWQgb3V0IGluIHN0YXRlOiAiICsgd3MucmVhZHlTdGF0
ZSk7CisgICAgZW5kVGVzdCgpOworfQorCit2YXIgdGltZW91dElEID0gc2V0VGltZW91dCh0aW1l
T3V0Q2FsbGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWls
LWJ5LW5vLXVwZ3JhZGUtaGVhZGVyX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktbm8tdXBncmFkZS1oZWFkZXJf
d3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExNGRlNzUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LW5vLXVwZ3JhZGUtaGVhZGVyX3dzaC5weQpAQCAtMCwwICsx
LDE1IEBACitkZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAg
bXNnID0gJ0hUVFAvMS4xIDEwMSBXZWJTb2NrZXQgUHJvdG9jb2wgSGFuZHNoYWtlXHJcbicKKyMg
ICBNaXNzaW5nICdVcGdyYWRlOiBXZWJTb2NrZXRcclxuJworICAgIG1zZyArPSAnQ29ubmVjdGlv
bjogVXBncmFkZVxyXG4nCisgICAgbXNnICs9ICdTZWMtV2ViU29ja2V0LUxvY2F0aW9uOiAnICsg
cmVxdWVzdC53c19sb2NhdGlvbiArICdcclxuJworICAgIG1zZyArPSAnU2VjLVdlYlNvY2tldC1P
cmlnaW46ICcgKyByZXF1ZXN0LndzX29yaWdpbiArICdcclxuJworICAgIG1zZyArPSAnXHJcbicK
KyAgICBtc2cgKz0gcmVxdWVzdC53c19jaGFsbGVuZ2VfbWQ1CisgICAgcmVxdWVzdC5jb25uZWN0
aW9uLndyaXRlKG1zZykKKyAgICBwcmludCBtc2cKKyAgICByYWlzZSBFeGNlcHRpb24oJ0Fib3J0
IHRoZSBjb25uZWN0aW9uJykgIyBQcmV2ZW50cyBweXdlYnNvY2tldCBmcm9tIHNlbmRpbmcgaXRz
IG93biBoYW5kc2hha2UgbWVzc2FnZS4KKworCitkZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRh
KHJlcXVlc3QpOgorICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVkLW51bGwt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1wcmVwZW5kZWQtbnVsbC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWRiMTdjOAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtl
LWZhaWwtYnktcHJlcGVuZGVkLW51bGwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAwOiBTdGF0dXMgbGluZSBjb250YWlucyBlbWJlZGRlZCBudWxs
CitDb25uZWN0aW9uIHNob3VsZCBmYWlsIGltbWVkaWF0ZWx5LCByYXRoZXIgdGhhbiBzdWNjZWVk
aW5nIG9yIHN0YXlpbmcgaW4gbGltYm8gdW50aWwgdGltZW91dCwgaWYgYSBudWxsIGJ5dGUgaXMg
cmVjZWl2ZWQgYmVmb3JlIHRoZSBoYW5kc2hha2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworUEFTUyB0aW1lZE91dCBpcyBmYWxzZQorUEFTUyBjb25uZWN0ZWQgaXMgZmFsc2UKK1BB
U1Mgb3JpZ2luIGlzIHVuZGVmaW5lZC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmRz
aGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYjk1Y2RmNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktcHJlcGVuZGVk
LW51bGwuaHRtbApAQCAtMCwwICsxLDYxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lF
VEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignQ29u
bmVjdGlvbiBzaG91bGQgZmFpbCBpbW1lZGlhdGVseSwgcmF0aGVyIHRoYW4gc3VjY2VlZGluZyBv
ciBzdGF5aW5nIGluIGxpbWJvIHVudGlsIHRpbWVvdXQsIGlmIGEgbnVsbCBieXRlIGlzIHJlY2Vp
dmVkIGJlZm9yZSB0aGUgaGFuZHNoYWtlLicpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7CisKK3ZhciB0aW1lZE91dCA9IGZhbHNlOwordmFyIGNvbm5lY3RlZCA9IGZhbHNlOwordmFy
IG9yaWdpbjsKKworZnVuY3Rpb24gZW5kVGVzdCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCd0aW1l
ZE91dCcpOworICAgIHNob3VsZEJlRmFsc2UoJ2Nvbm5lY3RlZCcpOworICAgIHNob3VsZEJlVW5k
ZWZpbmVkKCdvcmlnaW4nKTsKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5p
c2hKU1Rlc3QoKTsKK30KKwordmFyIHVybCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXByZXBlbmRlZC1udWxsJzsKK3ZhciB3
cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKKword3Mub25vcGVuID0gZnVuY3Rpb24oKQoreworICAg
IGRlYnVnKCdDb25uZWN0ZWQnKTsKKyAgICBjb25uZWN0ZWQgPSB0cnVlOworfQorCit3cy5vbm1l
c3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCit7CisgICAgb3JpZ2luID0gbWVzc2FnZUV2
ZW50LmRhdGE7CisgICAgZGVidWcoJ29yaWdpbiA9ICcgKyBvcmlnaW4pOworICAgIHdzLmNsb3Nl
KCk7Cit9CisKK3dzLm9uY2xvc2UgPSBmdW5jdGlvbigpCit7CisgICAgZW5kVGVzdCgpOworfQor
CitmdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKQoreworICAgIGRlYnVnKCdUaW1lZCBvdXQgKHN0
YXRlID0gJyArIHdzLnJlYWR5U3RhdGUgKyAnKScpOworICAgIHRpbWVkT3V0ID0gdHJ1ZTsKKyAg
ICBlbmRUZXN0KCk7Cit9CisKK3ZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KHRpbWVvdXRDYWxs
YmFjaywgMzAwMCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtlLWZhaWwtYnktcHJl
cGVuZGVkLW51bGxfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1wcmVwZW5kZWQtbnVsbF93c2gucHkKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDczNTE4NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtl
LWZhaWwtYnktcHJlcGVuZGVkLW51bGxfd3NoLnB5CkBAIC0wLDAgKzEsNTEgQEAKKyMgQ29weXJp
Z2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDExLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlCisjIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisjCisjIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyMgZGlz
Y2xhaW1lci4KKyMKKyMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlCisjIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIwor
IyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMg4oCcQVMgSVPigJ0gQU5EIEFOWSBFWFBSRVNTIE9SCisjIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YKKyMgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwKKyMgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCisjIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyMgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikKKyMgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUgorIyBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisjIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitpbXBvcnQgdGltZQorCisKK2RlZiB3
ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICAjIFRoaXMgc2ltdWxh
dGVzIGEgYnJva2VuIHNlcnZlciB0aGF0IHNlbmRzIGEgV2ViU29ja2V0IGZyYW1lIGJlZm9yZSB0
aGUKKyAgICAjIGhhbmRzaGFrZSwgYW5kIG1vcmUgZnJhbWVzIGFmdGVyd2FyZHMuICBJdCBpcyBp
bXBvcnRhbnQgdGhhdCBpZiB0aGlzCisgICAgIyBoYXBwZW5zIHRoZSBjbGllbnQgZG9lcyBub3Qg
YnVmZmVyIGFsbCB0aGUgZnJhbWVzIGFzIHRoZSBzZXJ2ZXIgY29udGludWVzCisgICAgIyB0byBz
ZW5kIG1vcmUgZGF0YSAtIGl0IHNob3VsZCBhYm9ydCBhZnRlciByZWFkaW5nIGEgcmVhc29uYWJs
ZSBudW1iZXIgb2YKKyAgICAjIGJ5dGVzIChzZXQgYXJiaXRyYXJpbHkgdG8gMTAyNCkuCisgICAg
ZnJhbWUgPSAnXDBGcmFtZS1jb250YWlucy10aGlydHktdHdvLWJ5dGVzJworCisgICAgbXNnID0g
ZnJhbWUKKyAgICBtc2cgKz0gJ0hUVFAvMS4xIDEwMSBXZWJTb2NrZXQgUHJvdG9jb2wgSGFuZHNo
YWtlXHJcbicKKyAgICBtc2cgKz0gJ1VwZ3JhZGU6IFdlYlNvY2tldFxyXG4nCisgICAgbXNnICs9
ICdDb25uZWN0aW9uOiBVcGdyYWRlXHJcbicKKyAgICBtc2cgKz0gJ1NlYy1XZWJTb2NrZXQtTG9j
YXRpb246ICcgKyByZXF1ZXN0LndzX2xvY2F0aW9uICsgJ1xyXG4nCisgICAgbXNnICs9ICdTZWMt
V2ViU29ja2V0LU9yaWdpbjogJyArIHJlcXVlc3Qud3Nfb3JpZ2luICsgJ1xyXG4nCisgICAgbXNn
ICs9ICdcclxuJworICAgIG1zZyArPSByZXF1ZXN0LndzX2NoYWxsZW5nZV9tZDUKKyAgICByZXF1
ZXN0LmNvbm5lY3Rpb24ud3JpdGUobXNnKQorICAgICMgY29udGludWUgd3JpdGluZyBkYXRhIHVu
dGlsIHRoZSBjbGllbnQgZGlzY29ubmVjdHMKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0aW1l
LnNsZWVwKDEpCisgICAgICAgIG51bUZyYW1lcyA9IDEwMjQgLyBsZW4oZnJhbWUpICMgd3JpdGUg
b3ZlciAxMDI0IGJ5dGVzIGluY2x1ZGluZyB0aGUgYWJvdmUgaGFuZHNoYWtlCisgICAgICAgIGZv
ciBpIGluIHJhbmdlKDAsIG51bUZyYW1lcyk6CisgICAgICAgICAgICByZXF1ZXN0LmNvbm5lY3Rp
b24ud3JpdGUoZnJhbWUpCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0
KToKKyAgICBwYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXN1Yi1wcm90b2NvbC1taXNtYXRjaC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2hhbmRzaGFrZS1mYWlsLWJ5LXN1Yi1wcm90b2NvbC1taXNtYXRjaC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTY0NjQyYgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFu
ZHNoYWtlLWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogRXJyb3IgZHVyaW5nIFdlYlNvY2tl
dCBoYW5kc2hha2U6IHByb3RvY29sIG1pc21hdGNoOiByZXF1ZXN0dGluZy1wcm90b2NvbCAhPSBh
dmFpbGFibGUtcHJvdG9jb2wKK1Rlc3QgV2ViU29ja2V0IGhhbmRzaGFrZSBmYWlsIGlmIHN1YiBw
cm90b2NvbCBuYW1lIG1pc21hdGNoZXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
UEFTUyBwcm90b2NvbCBpcyB1bmRlZmluZWQuCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5kc2hha2UtZmFpbC1ieS1zdWItcHJvdG9jb2wt
bWlzbWF0Y2guaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvaGFuZHNoYWtlLWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmI3ZmNhYQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvaGFuZHNoYWtl
LWZhaWwtYnktc3ViLXByb3RvY29sLW1pc21hdGNoLmh0bWwKQEAgLTAsMCArMSw1NSBAQAorPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVh
ZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVzdCBXZWJTb2Nr
ZXQgaGFuZHNoYWtlIGZhaWwgaWYgc3ViIHByb3RvY29sIG5hbWUgbWlzbWF0Y2hlcy4iKTsKKwor
d2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgcHJvdG9jb2w7CisKK2Z1bmN0aW9u
IGVuZFRlc3QoKQoreworICAgIHNob3VsZEJlVW5kZWZpbmVkKCJwcm90b2NvbCIpOworICAgIGNs
ZWFyVGltZW91dCh0aW1lb3V0SUQpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCit2YXIgdXJs
ID0gIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcHJvdG9jb2wt
dGVzdD9wcm90b2NvbD1hdmFpbGFibGUtcHJvdG9jb2wiOwordmFyIHdzID0gbmV3IFdlYlNvY2tl
dCh1cmwsICJyZXF1ZXN0dGluZy1wcm90b2NvbCIpOworCit3cy5vbm9wZW4gPSBmdW5jdGlvbigp
Cit7CisgICAgZGVidWcoIkNvbm5lY3RlZCIpOworfTsKKword3Mub25tZXNzYWdlID0gZnVuY3Rp
b24gKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBwcm90b2NvbCA9IG1lc3NhZ2VFdmVudC5kYXRhOwor
ICAgIHdzLmNsb3NlKCk7Cit9OworCit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIGVu
ZFRlc3QoKTsKK307CisKK2Z1bmN0aW9uIHRpbWVPdXRDYWxsYmFjaygpCit7CisgICAgZGVidWco
IlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5U3RhdGUpOworICAgIGVuZFRlc3QoKTsK
K30KKwordmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsK
KwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9oYW5naW5nLWhhbmRzaGFrZV93c2gucHkgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2hhbmdpbmctaGFuZHNoYWtl
X3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MzkxYmQ4Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9oYW5naW5nLWhhbmRzaGFrZV93c2gucHkKQEAgLTAsMCArMSw2IEBACitkZWYgd2ViX3Nv
Y2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcmVxdWVzdC5jb25uZWN0aW9u
LnJlYWQoKQorCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6CisgICAg
cGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9odHRwb25seS1jb29raWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9odHRwb25seS1jb29raWUtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiOTJlYzMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2h0
dHBvbmx5LWNvb2tpZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGVzdCBXZWJTb2Nr
ZXQgc2VuZHMgSHR0cE9ubHkgY29va2llcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CitXZWJTb2NrZXQgb3BlbgorV2ViU29ja2V0IGNsb3NlZAorUEFTUyBjb29raWUgaXMgIldLLXdl
YnNvY2tldC10ZXN0LWh0dHBvbmx5PTE7IFdLLXdlYnNvY2tldC10ZXN0PTEiCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9odHRwb25seS1jb29r
aWUucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2h0
dHBvbmx5LWNvb2tpZS5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4yZGY1
ZWNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9odHRwb25seS1jb29raWUucGwKQEAgLTAsMCArMSw1OSBAQAorIyEvdXNy
L2Jpbi9wZXJsIC13VAordXNlIHN0cmljdDsKKworcHJpbnQgIkNvbnRlbnQtVHlwZTogdGV4dC9o
dG1sXHJcbiI7CitwcmludCAiU2V0LUNvb2tpZTogV0std2Vic29ja2V0LXRlc3Q9MVxyXG4iOwor
cHJpbnQgIlNldC1Db29raWU6IFdLLXdlYnNvY2tldC10ZXN0LWh0dHBvbmx5PTE7IEh0dHBPbmx5
XHJcbiI7CitwcmludCAiXHJcbiI7CitwcmludCA8PEhUTUwKKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC1mdW5jdGlvbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3Qg
V2ViU29ja2V0IHNlbmRzIEh0dHBPbmx5IGNvb2tpZXMuPC9wPgorPHA+T24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KK2lmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5k
dW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
fQorCit2YXIgY29va2llOworCisvLyBOb3JtYWxpemUgYSBjb29raWUgc3RyaW5nCitmdW5jdGlv
biBub3JtYWxpemVDb29raWUoY29va2llKQoreworICAgIC8vIFNwbGl0IHRoZSBjb29raWUgc3Ry
aW5nLCBzb3J0IGl0IGFuZCB0aGVuIHB1dCBpdCBiYWNrIHRvZ2V0aGVyLgorICAgIHJldHVybiBj
b29raWUuc3BsaXQoJzsgJykuc29ydCgpLmpvaW4oJzsgJyk7Cit9CisKK2Z1bmN0aW9uIGVuZFRl
c3QoKQoreworICAgIGNvb2tpZSA9IG5vcm1hbGl6ZUNvb2tpZShjb29raWUpOworICAgIHNob3Vs
ZEJlKCJjb29raWUiLCAnIldLLXdlYnNvY2tldC10ZXN0LWh0dHBvbmx5PTE7IFdLLXdlYnNvY2tl
dC10ZXN0PTEiJyk7CisgICAgaXNTdWNjZXNzZnVsbHlQYXJzZWQoKTsKKyAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlm
eURvbmUoKTsKK30KKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4
MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWNvb2tpZSIpOword3Mub25vcGVuID0gZnVu
Y3Rpb24oKSB7CisgICAgZGVidWcoIldlYlNvY2tldCBvcGVuIik7Cit9Oword3Mub25tZXNzYWdl
ID0gZnVuY3Rpb24oZXZ0KSB7CisgICAgY29va2llID0gZXZ0LmRhdGE7CisgICAgd3MuY2xvc2Uo
KTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKSB7CisgICAgZGVidWcoIldlYlNvY2tldCBj
bG9zZWQiKTsKKyAgICBlbmRUZXN0KCk7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorSFRNTApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9sb25nLWludmFsaWQt
aGVhZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvbG9uZy1pbnZhbGlkLWhlYWRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzBmYTRmMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbG9uZy1pbnZhbGlkLWhl
YWRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDA6IFVuZXhwZWN0ZWQgQ1IgaW4gbmFtZSBhdCBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBw
cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBw
cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcOKApgorTWFrZSBzdXJl
IFdlYlNvY2tldCBnaXZlcyBlcnJvcnMgb24gbG9uZyBpbnZhbGlkIHVwZ3JhZGUgaGVhZGVyLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1dlYlNvY2tldCBpcyBjbG9zZWQKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2xvbmctaW52
YWxpZC1oZWFkZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvbG9uZy1pbnZhbGlkLWhlYWRlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmVhNDgyZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2xvbmctaW52YWxpZC1oZWFkZXIuaHRtbApA
QCAtMCwwICsxLDM0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2Ny
aXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGdpdmVzIGVycm9ycyBvbiBsb25nIGludmFsaWQg
dXBncmFkZSBoZWFkZXIuIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworZnVu
Y3Rpb24gZmluaXNoKCkgeworICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOworICAgIGZpbmlz
aEpTVGVzdCgpOworfQorCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4
ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2xvbmctaW52YWxpZC1oZWFkZXIiKTsKK3dzLm9u
b3BlbiA9IGZ1bmN0aW9uICgpIHsKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsKK307
Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xv
c2VkIik7CisgICAgZmluaXNoKCk7Cit9OwordmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQoImZp
bmlzaCgpIiwgMjAwMCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbG9uZy1pbnZhbGlkLWhlYWRl
cl93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2xvbmctaW52YWxpZC1oZWFkZXJfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLjRhMTY5ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2xvbmctaW52YWxpZC1oZWFkZXJfd3NoLnB5CkBAIC0w
LDAgKzEsMTEgQEAKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToK
KyAgICBtc2cgPSAiSFRUUC8xLjEgMTAxIFdlYlNvY2tldCBQcm90b2NvbCBIYW5kc2hha2Vcclxu
IgorICAgIG1zZyArPSAoInAiICogMTAyNCkgKyAiXHJcbiIKKyAgICBtc2cgKz0gIlxyXG4iCisg
ICAgbXNnICs9IHJlcXVlc3Qud3NfY2hhbGxlbmdlX21kNQorICAgIHJlcXVlc3QuY29ubmVjdGlv
bi53cml0ZShtc2cpCisgICAgcmFpc2UgRXhjZXB0aW9uKCJBYm9ydCB0aGUgY29ubmVjdGlvbiIp
ICMgUHJldmVudHMgcHl3ZWJzb2NrZXQgZnJvbSBzZW5kaW5nIGl0cyBvd24gaGFuZHNoYWtlIG1l
c3NhZ2UuCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBw
YXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L211bHRpcGxlLWNvbm5lY3Rpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbXVsdGlwbGUtY29ubmVjdGlvbnMtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNlZTFlZmIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L211bHRpcGxlLWNvbm5lY3Rpb25zLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAK
K1Rlc3QgdGhhdCBXZWJTb2NrZXQgaXMgbm90IHN1YmplY3QgdG8gSFRUUCBjb25uZWN0aW9uIGxp
bWl0LiBTaG91bGQgc2F5IFBBU1M6CisKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbXVsdGlwbGUtY29ubmVjdGlvbnMuaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbXVsdGlw
bGUtY29ubmVjdGlvbnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45
MTA0NjIxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9tdWx0aXBsZS1jb25uZWN0aW9ucy5odG1sCkBAIC0wLDAgKzEsMzQg
QEAKKzxwPlRlc3QgdGhhdCBXZWJTb2NrZXQgaXMgbm90IHN1YmplY3QgdG8gSFRUUCBjb25uZWN0
aW9uIGxpbWl0LiBTaG91bGQgc2F5IFBBU1M6PC9wPgorPHAgaWQ9cmVzdWx0PlJ1bm5pbmcuLi48
L3A+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci53YWl0VW50aWxEb25lKCk7Cit9CisKK3ZhciBzb2NrZXRDb3VudCA9IDUwOwordmFyIHJlc3Vs
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKTsKK3ZhciBzb2NrZXRzID0gW107
CisKK2ZvciAoaSA9IDA7IGkgPCBzb2NrZXRDb3VudDsgKytpKSB7CisgICAgdmFyIHdzID0gbmV3
IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9l
Y2hvIik7CisgICAgc29ja2V0c1tpXSA9IHdzOworICAgIHdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkg
eworICAgICAgICB2YXIgbnVtID0gcGFyc2VJbnQocmVzdWx0LmlubmVySFRNTCk7CisgICAgICAg
IGlmICghbnVtKQorICAgICAgICAgICAgbnVtID0gMDsKKyAgICAgICAgaWYgKG51bSAhPSBzb2Nr
ZXRDb3VudCAtIDEpCisgICAgICAgICAgICByZXN1bHQuaW5uZXJIVE1MID0gbnVtICsgMTsKKyAg
ICAgICAgZWxzZSB7CisgICAgICAgICAgICByZXN1bHQuaW5uZXJIVE1MID0gIlBBU1MiOworICAg
ICAgICAgICAgZm9yIChqID0gMDsgaiA8IHNvY2tldENvdW50OyArK2opIHsKKyAgICAgICAgICAg
ICAgICBzb2NrZXRzW2pdLm9uY2xvc2UgPSBudWxsOworICAgICAgICAgICAgICAgIHNvY2tldHNb
al0uY2xvc2UoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90
aWZ5RG9uZSgpOworICAgICAgICB9CisgICAgfQorICAgIHdzLm9uY2xvc2UgPSBmdW5jdGlvbigp
IHsgYWxlcnQoIkZBSUw6IHVuZXhwZWN0ZWQgY2xvc2UgZXZlbnQiKSB9Cit9Cis8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvbm8tcXVlcnlfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9uby1xdWVyeV93c2gucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMmI3OTYxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbm8tcXVlcnlfd3NoLnB5CkBAIC0wLDAgKzEsMzggQEAK
KyMgQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisj
CisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24u
CisjICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKKyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorCisKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGls
CisKKworZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHJl
cXVlc3Qud3NfbG9jYXRpb24gPSByZXF1ZXN0LndzX3Jlc291cmNlLnNwbGl0KCc/JywgMSlbMF0K
KworCitkZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgIG1zZ3V0aWwu
c2VuZF9tZXNzYWdlKHJlcXVlc3QsIHJlcXVlc3Qud3NfbG9jYXRpb24pCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L251bGwtY2hhcmFj
dGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvbnVsbC1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjZmY2EzNzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L251bGwtY2hhcmFjdGVyLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDEyIEBACitNYWtlIHN1cmUgV2ViU29ja2V0IHRyYW5zZmVyIG51bGwg
Y2hhcmFjdGVyCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworV2ViU29ja2V0IG9wZW4K
K21zZyBzaG91bGQgbm90IGJlIHNwbGl0IGJ5IGZyYW1lIGNoYXIgXHhmZlwwCitQQVNTIG1zZyBp
cyBleHBlY3RlZE1lc3NhZ2UKK1dlYlNvY2tldCBjbG9zZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L251bGwtY2hhcmFjdGVyLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L251bGwtY2hhcmFj
dGVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWY1ZDAzMAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvbnVsbC1jaGFyYWN0ZXIuaHRtbApAQCAtMCwwICsxLDQ0IEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10
ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJk
ZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IHRy
YW5zZmVyIG51bGwgY2hhcmFjdGVyIik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
KwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9lY2hvIik7CisvLyBceGZmIGluIHN0cmluZyB3b3VsZCBiZSBceGMzXHhi
ZiBvbiB3ZWJzb2NrZXQgY29ubmVjdGlvbiAoVVRGLTgpCit2YXIgZXhwZWN0ZWRNZXNzYWdlID0g
IlNob3VsZCBOb3RceGZmXDBTcGxpdCI7CisKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAg
ICBkZWJ1ZygiV2ViU29ja2V0IG9wZW4iKTsKKyAgICB3cy5zZW5kKGV4cGVjdGVkTWVzc2FnZSk7
Cit9OworCit2YXIgbXNnOword3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQor
eworICAgIG1zZyA9IG1lc3NhZ2VFdmVudC5kYXRhOworICAgIGRlYnVnKCJtc2cgc2hvdWxkIG5v
dCBiZSBzcGxpdCBieSBmcmFtZSBjaGFyIFxceGZmXFwwIik7CisgICAgc2hvdWxkQmUoIm1zZyIs
ICJleHBlY3RlZE1lc3NhZ2UiKTsKKyAgICB3cy5jbG9zZSgpOworfTsKKword3Mub25jbG9zZSA9
IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGNsb3NlZCIpOworICAgIGZpbmlz
aEpTVGVzdCgpOworfTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9vcmlnaW4tdGVzdF93c2gucHkg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L29yaWdpbi10
ZXN0X3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ODhkNmFmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9vcmlnaW4tdGVzdF93c2gucHkKQEAgLTAsMCArMSwzOCBAQAorIyBDb3B5cmlnaHQg
KEMpIDIwMDkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIworIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjICAg
ICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAgICogTmVp
dGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
IyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
KyMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisKKworZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKKworCitkZWYgd2Vi
X3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcGFzcyAjIEFsd2F5cyBh
Y2NlcHQuCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBt
c2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCByZXF1ZXN0LndzX29yaWdpbikKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcHJvdG9j
b2wtdGVzdF93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3Byb3RvY29sLXRlc3Rfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmY0M2Q4ZTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Byb3RvY29sLXRlc3Rfd3NoLnB5CkBAIC0wLDAgKzEs
NDQgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICog
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmli
dXRpb24uCisjICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKKyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAorIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKKyMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisKK2ltcG9ydCBjZ2kKK2Zyb20gbW9kX3B5d2Vic29j
a2V0IGltcG9ydCBtc2d1dGlsCisKKworZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtl
KHJlcXVlc3QpOgorICAgIHIgPSByZXF1ZXN0LndzX3Jlc291cmNlLnNwbGl0KCc/JywgMSkKKyAg
ICBpZiBsZW4ocikgPT0gMToKKyAgICAgICAgcmV0dXJuCisgICAgcGFyYW0gPSBjZ2kucGFyc2Vf
cXMoclsxXSkKKyAgICBpZiAncHJvdG9jb2wnIGluIHBhcmFtOgorICAgICAgICByZXF1ZXN0Lndz
X3Byb3RvY29sID0gcGFyYW1bJ3Byb3RvY29sJ11bMF0KKworCitkZWYgd2ViX3NvY2tldF90cmFu
c2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsIHJl
cXVlc3Qud3NfcHJvdG9jb2wpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3JlbG9hZC1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3JlbG9hZC1jcmFzaC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDE3NWRlZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvcmVsb2FkLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUZXN0IGlm
IGl0IGRvZXNuJ3QgY3Jhc2ggd2hlbiByZWxvYWRpbmcgd2hpbGUgV2ViIFNvY2tldCBpcyBidXN5
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUyBpbnNlcnQgYSBpZnJhbWUKK1BB
U1MgaWZyYW1lIGlzIHJlYWR5LgorUEFTUyByZWxvYWRlZCBpZnJhbWUgd2hpbGUgV2ViU29ja2V0
IGlzIGJ1c3kKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3JlbG9hZC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9yZWxvYWQtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi4xZWRjY2JkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9yZWxvYWQtY3Jhc2guaHRtbApAQCAtMCww
ICsxLDM5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8u
Li9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9u
KCJUZXN0IGlmIGl0IGRvZXNuJ3QgY3Jhc2ggd2hlbiByZWxvYWRpbmcgd2hpbGUgV2ViIFNvY2tl
dCBpcyBidXN5Iik7CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIGZyYW1l
RGl2OwordmFyIHJlbG9hZENvdW50ID0gMDsKKworZG9jdW1lbnQuaWZyYW1lUmVhZHkgPSBmdW5j
dGlvbiAoKQoreworICAgIGlmIChyZWxvYWRDb3VudCA9PSAwKQorICAgICAgIGRlYnVnKCJQQVNT
IGlmcmFtZSBpcyByZWFkeS4iKTsKKyAgICBpZiAocmVsb2FkQ291bnQgPT0gMSkgeworICAgICAg
IGRlYnVnKCJQQVNTIHJlbG9hZGVkIGlmcmFtZSB3aGlsZSBXZWJTb2NrZXQgaXMgYnVzeSIpOwor
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgIHJldHVybjsKKyAgICB9CisgICAgcmVsb2Fk
Q291bnQgKz0gMTsKK307CisKK2ZyYW1lRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZy
YW1lIik7CitmcmFtZURpdi5zcmMgPSAicmVzb3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUuaHRt
bCI7Citkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lRGl2KTsKK2RlYnVnKCJQQVNTIGlu
c2VydCBhIGlmcmFtZSIpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Jlc291cmNlcy9jbG9zZS1v
bi11bmxvYWQtaWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9h
ZC1pZnJhbWUtcmVmZXJlbmNlLWluLXBhcmVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmRjMzk3NTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Jlc291cmNlcy9jbG9zZS1vbi11bmxvYWQt
aWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi8uLi9qcy10
ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QtZnVuY3Rpb24uanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xl
Ij48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK3BhcmVudC5kb2N1bWVu
dC5jaGlsZFdlYlNvY2tldCA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvY2xvc2Utb24tdW5sb2FkIik7CisKK3BhcmVudC5kb2N1bWVu
dC5jaGlsZFdlYlNvY2tldC5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgLy8gc2VuZCAic29j
a2V0MSIgdG8gc2VydmVyLCBzbyB0aGF0ICJzb2NrZXQxIiB3aWxsIGJlIGJyb2FkY2FzdGVkIHRv
IHdlYiBzb2NrZXRzIGNvbm5lY3RlZCB0byBjbG9zZS1vbi11bmxvYWQgd2hlbiB0aGlzIHdlYiBz
b2NrZXQgaXMgY2xvc2VkLgorICAgIHBhcmVudC5kb2N1bWVudC5jaGlsZFdlYlNvY2tldC5zZW5k
KCJzb2NrZXQxIik7Cit9OworcGFyZW50LmRvY3VtZW50LmNoaWxkV2ViU29ja2V0Lm9ubWVzc2Fn
ZSA9IGZ1bmN0aW9uKGV2dCkKK3sKKyAgICAvLyAic29ja2V0MSIgaXMgcmVjZWl2ZWQgYnkgc2Vy
dmVyLCBzbyByZWFkeSB0byB1bmxvYWQgdGhpcyBkb2N1bWVudC4KKyAgICBwYXJlbnQuZG9jdW1l
bnQuaWZyYW1lUmVhZHkoZXZ0LmRhdGEpOworfTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9yZXNvdXJjZXMvY2xvc2Utb24tdW5sb2FkLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9yZXNvdXJjZXMvY2xvc2Utb24tdW5s
b2FkLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJjNDhi
ZGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3Jlc291cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZyYW1lLmh0bWwKQEAgLTAs
MCArMSwyMyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LWZ1bmN0aW9uLmpz
Ij48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2
PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+Cit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2Nsb3NlLW9uLXVubG9hZCIpOword3Mub25vcGVuID0gZnVuY3Rpb24o
KQoreworICAgIC8vIHNlbmQgInNvY2tldDEiIHRvIHNlcnZlciwgc28gdGhhdCAic29ja2V0MSIg
d2lsbCBiZSBicm9hZGNhc3RlZCB0byB3ZWIgc29ja2V0cyBjb25uZWN0ZWQgdG8gY2xvc2Utb24t
dW5sb2FkIHdoZW4gdGhpcyB3ZWIgc29ja2V0IGlzIGNsb3NlZC4KKyAgICB3cy5zZW5kKCJzb2Nr
ZXQxIik7Cit9Oword3Mub25tZXNzYWdlID0gZnVuY3Rpb24oZXZ0KQoreworICAgIC8vICJzb2Nr
ZXQxIiBpcyByZWNlaXZlZCBieSBzZXJ2ZXIsIHNvIHJlYWR5IHRvIHVubG9hZCB0aGlzIGRvY3Vt
ZW50LgorICAgIHBhcmVudC5kb2N1bWVudC5pZnJhbWVSZWFkeShldnQuZGF0YSk7Cit9Cis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcmVzb3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUu
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcmVz
b3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi4xOGYwZTliCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9yZXNvdXJjZXMvcmVsb2FkLWNyYXNoLWlmcmFt
ZS5odG1sCkBAIC0wLDAgKzEsMTUgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC1mdW5jdGlvbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorcGFyZW50LmRvY3VtZW50LmlmcmFtZVJlYWR5KCk7Cit2YXIgd3Mg
PSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L2Nsb3NlLW9uLXVubG9hZCIpOworbG9jYXRpb24ucmVsb2FkKCk7Cis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvc2VuZC1hZnRlci1jbG9zZS1vbi11bmxvYWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLWFm
dGVyLWNsb3NlLW9uLXVubG9hZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uY2ZmNDhiMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZC1hZnRlci1jbG9zZS1vbi11bmxvYWQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK1Rlc3QgaWYgV2ViIFNvY2tldCBvcGVuZWQg
aW4gaWZyYW1lLCByZWZlcnJlZCBpbiBwYXJlbnQgZG9jdW1lbnQgaXMsIGFuZCB0cnkgdG8gc2Vu
ZCgpIHJldHVybnMgZmFsc2UuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUyB3
cyBvbiBtYXN0ZXIgZG9jdW1lbnQgaXMgcmVhZHkuCitQQVNTIGluc2VydCBhIGlmcmFtZSwgd2hl
cmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnCitQQVNTIGRvY3VtZW50LmNoaWxkV2ViU29ja2V0
IGlzIG5vbi1udWxsLgorUEFTUyAnc29ja2V0MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiB1bmxv
YWQgdGhlIGlmcmFtZS4gZXhwZWN0IHJlY2VpdmluZyAnc29ja2V0MScgb24gd3MuLi4KK1BBU1Mg
ZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQuc2VuZCgnc2VuZCB0byBjbG9zZWQgc29ja2V0JykgaXMg
ZmFsc2UKK1BBU1MgY2xvc2VkU29ja2V0IGlzICJzb2NrZXQxIgorUEFTUyBkb2N1bWVudC5jaGls
ZFdlYlNvY2tldC5yZWFkeVN0YXRlIGlzIDMKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlbmQtYWZ0ZXItY2xvc2Utb24tdW5sb2FkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlbmQtYWZ0
ZXItY2xvc2Utb24tdW5sb2FkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNmViZTU4MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZC1hZnRlci1jbG9zZS1vbi11bmxvYWQuaHRtbApAQCAt
MCwwICsxLDUyIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0
aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgb3BlbmVkIGluIGlmcmFtZSwgcmVmZXJyZWQgaW4gcGFy
ZW50IGRvY3VtZW50IGlzLCBhbmQgdHJ5IHRvIHNlbmQoKSByZXR1cm5zIGZhbHNlLiIpOworCit3
aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciBmcmFtZURpdjsKK3ZhciBjbG9zZWRT
b2NrZXQ7Citkb2N1bWVudC5jaGlsZFdlYlNvY2tldCA9IG51bGw7CisKK3ZhciB3cyA9IG5ldyBX
ZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvY2xv
c2Utb24tdW5sb2FkIik7Cit3cy5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIlBB
U1Mgd3Mgb24gbWFzdGVyIGRvY3VtZW50IGlzIHJlYWR5LiIpOworICAgIGZyYW1lRGl2ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CisgICAgZnJhbWVEaXYuc3JjID0gInJlc291
cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbCI7Cisg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmcmFtZURpdik7CisgICAgZGVidWcoIlBBU1Mg
aW5zZXJ0IGEgaWZyYW1lLCB3aGVyZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MSciKTsKK307Cit3
cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldnQpCit7CisgICAgY2xvc2VkU29ja2V0ID0gZXZ0LmRh
dGE7CisgICAgd3MuY2xvc2UoKTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAg
IHNob3VsZEJlKCJjbG9zZWRTb2NrZXQiLCAnInNvY2tldDEiJyk7CisgICAgc2hvdWxkQmUoImRv
Y3VtZW50LmNoaWxkV2ViU29ja2V0LnJlYWR5U3RhdGUiLCAiMyIpOworICAgIGZpbmlzaEpTVGVz
dCgpOworfTsKKworZG9jdW1lbnQuaWZyYW1lUmVhZHkgPSBmdW5jdGlvbigpCit7CisgICAgc2hv
dWxkQmVOb25OdWxsKCJkb2N1bWVudC5jaGlsZFdlYlNvY2tldCIpOworICAgIGRlYnVnKCJQQVNT
ICdzb2NrZXQxJyBpcyBzZW50IHRvIHRoZSBzZXJ2ZXIuIHVubG9hZCB0aGUgaWZyYW1lLiBleHBl
Y3QgcmVjZWl2aW5nICdzb2NrZXQxJyBvbiB3cy4uLiIpOworICAgIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQoZnJhbWVEaXYpOworICAgIHNob3VsZEJlRmFsc2UoImRvY3VtZW50LmNoaWxkV2Vi
U29ja2V0LnNlbmQoJ3NlbmQgdG8gY2xvc2VkIHNvY2tldCcpIik7Cit9OworCit2YXIgc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4u
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3NlbmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jYjNjN2Y1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEyIEBACitXZWIgU29ja2V0IHNlbmQgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKK0Nvbm5lY3RlZC4KK1BBU1MgZGF0YSBpcyBGSVJTVF9NRVNTQUdFX1RPX1NFTkQK
K1BBU1MgZGF0YSBpcyBTRUNPTkRfTUVTU0FHRV9UT19TRU5ECitDbG9zZWQuCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLXRocm93LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvc2VuZC10aHJvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uYWE3NGJhMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VuZC10aHJvdy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxMSBAQAorV2ViIFNvY2tldCBzZW5kIHRlc3QKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCitDb25uZWN0ZWQuCitDYXVnaHQgZXhjZXB0aW9uOiBQaWNrbGVzCitDbG9zZWQuCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLXRo
cm93Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L3NlbmQtdGhyb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjE0
MjdhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9zZW5kLXRocm93Lmh0bWwKQEAgLTAsMCArMSw1OCBAQAorPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBp
ZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiV2ViIFNvY2tldCBzZW5kIHRl
c3QiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCitmdW5jdGlvbiBlbmRUZXN0
KCkKK3sKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsK
K30KKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9zZW5kIik7CisKK3ZhciBGSVJTVF9NRVNTQUdFX1RPX1NFTkQgPSB7
CisgICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgeyB0aHJvdyAiUGlja2xlcyI7IH0KK307CisvLyBk
YXRhIG5lZWRzIHRvIGJlIGdsb2JhbCB0byBiZSBhY2Nlc3NiaWxlIGZyb20gc2hvdWxkQmUoKS4K
K3ZhciBkYXRhID0gIiI7CisKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1Zygi
Q29ubmVjdGVkLiIpOworICAgIHRyeSB7CisgICAgICAgIHdzLnNlbmQoRklSU1RfTUVTU0FHRV9U
T19TRU5EKTsKKyAgICB9IGNhdGNoIChleCkgeworICAgICAgICBkZWJ1ZygiQ2F1Z2h0IGV4Y2Vw
dGlvbjogIiArIGV4KTsKKyAgICB9CisgICAgd3MuY2xvc2UoKTsKK307CisKK3dzLm9uY2xvc2Ug
PSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkNsb3NlZC4iKTsKKyAgICBlbmRUZXN0KCk7Cit9
OworCitmdW5jdGlvbiB0aW1lT3V0Q2FsbGJhY2soKQoreworICAgIHRlc3RGYWlsZWQoIlRpbWVk
IG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5U3RhdGUpOworICAgIGVuZFRlc3QoKTsKK30KKwor
dmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKKwordmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3NlbmQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi40YTUwMGQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kLmh0bWwKQEAgLTAsMCArMSw2NSBAQAorPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVh
ZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiV2ViIFNvY2tldCBz
ZW5kIHRlc3QiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCitmdW5jdGlvbiBl
bmRUZXN0KCkKK3sKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBmaW5pc2hKU1Rl
c3QoKTsKK30KKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9sb2NhbGhvc3Q6ODg4MC93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kIik7CisKK3ZhciBGSVJTVF9NRVNTQUdFX1RPX1NF
TkQgPSAiVGhpcyBpcyB0aGUgZmlyc3QgbWVzc2FnZSB0byBzZW5kIHRvIHRoZSBzZXJ2ZXIuIjsK
K3ZhciBTRUNPTkRfTUVTU0FHRV9UT19TRU5EID0gIlRoaXMgaXMgdGhlIHNlY29uZC4iOworLy8g
ZGF0YSBuZWVkcyB0byBiZSBnbG9iYWwgdG8gYmUgYWNjZXNzYmlsZSBmcm9tIHNob3VsZEJlKCku
Cit2YXIgZGF0YSA9ICIiOworCit3cy5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWco
IkNvbm5lY3RlZC4iKTsKKyAgICB3cy5zZW5kKEZJUlNUX01FU1NBR0VfVE9fU0VORCk7Cit9Owor
Cit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCit7CisgICAgLy8gVGhlIHNl
cnZlciBzaG91bGQgZWNobyBiYWNrIHRoZSBmaXJzdCBtZXNzYWdlLgorICAgIGRhdGEgPSBtZXNz
YWdlRXZlbnQuZGF0YTsKKyAgICBzaG91bGRCZSgiZGF0YSIsICJGSVJTVF9NRVNTQUdFX1RPX1NF
TkQiKTsKKyAgICB3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpIHsKKyAgICAg
ICAgLy8gVGhlIHNlcnZlciBzaG91bGQgZWNobyBiYWNrIHRoZSBzZWNvbmQgbWVzc2FnZS4KKyAg
ICAgICAgZGF0YSA9IG1lc3NhZ2VFdmVudC5kYXRhOworICAgICAgICBzaG91bGRCZSgiZGF0YSIs
ICJTRUNPTkRfTUVTU0FHRV9UT19TRU5EIik7CisgICAgfTsKKyAgICB3cy5zZW5kKFNFQ09ORF9N
RVNTQUdFX1RPX1NFTkQpOworfTsKKword3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKK3sKKyAgICBk
ZWJ1ZygiQ2xvc2VkLiIpOworICAgIGVuZFRlc3QoKTsKK307CisKK2Z1bmN0aW9uIHRpbWVPdXRD
YWxsYmFjaygpCit7CisgICAgdGVzdEZhaWxlZCgiVGltZWQgb3V0IGluIHN0YXRlOiAiICsgd3Mu
cmVhZHlTdGF0ZSk7CisgICAgZW5kVGVzdCgpOworfQorCit2YXIgdGltZW91dElEID0gc2V0VGlt
ZW91dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlbmQy
X3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
c2VuZDJfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyMjE3ZmEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3NlbmQyX3dzaC5weQpAQCAtMCwwICsxLDggQEAKK2RlZiB3ZWJfc29ja2V0X2Rv
X2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzICMgQWx3YXlzIGFjY2VwdC4KKwor
CitkZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgICMgc2VuZCAyIG1l
c3NhZ2VzIGluIG9uZSBwYWNrZXQuCisgICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKCJceDAw
IiArICJmaXJzdCBtZXNzYWdlIiArICJceGZmIiArCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJceDAwIiArICJzZWNvbmQgbWVzc2FnZSIgKyAiXHhmZiIpCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlbmRfd3NoLnB5IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZW5kX3dzaC5w
eQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTEwNGIzCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9z
ZW5kX3dzaC5weQpAQCAtMCwwICsxLDQxIEBACisjIENvcHlyaWdodCAoQykgMjAwOSBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9uLgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisj
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisj
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworCitmcm9tIG1v
ZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRpbAorCisKK2RlZiB3ZWJfc29ja2V0X2RvX2V4dHJh
X2hhbmRzaGFrZShyZXF1ZXN0KToKKyAgICBwYXNzICMgQWx3YXlzIGFjY2VwdC4KKworCitkZWYg
d2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgICMgUmVjZWl2ZSBhbmQgZWNo
byBiYWNrIG1lc3NhZ2VzIHR3aWNlLgorICAgIGZvciB1bnVzZWQgaW4gcmFuZ2UoMik6CisgICAg
ICAgIG1lc3NhZ2UgPSBtc2d1dGlsLnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KQorICAgICAgICBt
c2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCBtZXNzYWdlKQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZXJ2ZXItY2xvc2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9zZXJ2ZXItY2xvc2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmZlZWRhOWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlcnZlci1jbG9zZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMSBAQAorV2ViU29ja2V0OiBUZXN0IHNlcnZlci1pbml0aWF0ZWQgY2xvc2UuCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworQ29ubmVjdGVkCitDbG9zZWQKK1BBU1MgY2xvc2VF
dmVudC53YXNDbGVhbiBpcyB0cnVlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9zZXJ2ZXItY2xvc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VydmVyLWNsb3NlLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGIwOGU5MQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2VydmVyLWNsb3Nl
Lmh0bWwKQEAgLTAsMCArMSw0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9E
VEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2Pgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
CitkZXNjcmlwdGlvbigiV2ViU29ja2V0OiBUZXN0IHNlcnZlci1pbml0aWF0ZWQgY2xvc2UuIik7
CisKK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIHdzID0gbmV3IFdlYlNvY2tl
dCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zZXJ2ZXItY2xv
c2UiKTsKK3ZhciBjbG9zZUV2ZW50OworCit3cy5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAg
ZGVidWcoIkNvbm5lY3RlZCIpOworfTsKKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2Fn
ZUV2ZW50KQoreworICAgIGRlYnVnKCJSZWNlaXZlZDogIiArIG1lc3NhZ2VFdmVudC5kYXRhKTsK
K307CisKK3dzLm9uY2xvc2UgPSBmdW5jdGlvbihldmVudCkKK3sKKyAgICBkZWJ1ZygiQ2xvc2Vk
Iik7CisgICAgY2xvc2VFdmVudCA9IGV2ZW50OworICAgIHNob3VsZEJlVHJ1ZSgiY2xvc2VFdmVu
dC53YXNDbGVhbiIpOworICAgIGZpbmlzaEpTVGVzdCgpOworfTsKKwordmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10
ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9zZXJ2ZXItY2xvc2Vfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9zZXJ2ZXItY2xvc2Vfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmEwNjk4YTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NlcnZlci1jbG9zZV93c2gucHkKQEAg
LTAsMCArMSw3IEBACitkZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6
CisgICAgcGFzcworCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Cisg
ICAgIyBBZnRlciB0aGlzIGhhbmRsZXIgZXhpdHMsIHB5d2Vic29ja2V0IGluaXRpYXRlcyB0aGUg
Y2xvc2luZyBoYW5kc2hha2UuCisgICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwODg5MGUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L3NpbXBsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorU2ltcGxlIFdlYiBTb2Nr
ZXQgdGVzdAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK0NyZWF0ZWQgYSBzb2NrZXQg
dG8gJ3dzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlJzsg
cmVhZHlTdGF0ZSAwLgorQ29ubmVjdGVkOyByZWFkeVN0YXRlIDEKK1JlY2VpdmVkOiAnSGVsbG8g
ZnJvbSBTaW1wbGUgV1NILic7IHJlYWR5U3RhdGUgMQorQ2xvc2VkOyByZWFkeVN0YXRlIDMuCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1w
bGUtc3RyZXNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvc2ltcGxlLXN0cmVzcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZjU3YzNlYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLXN0cmVzcy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitUZXN0IHNlbmRpbmcgbWFueSBtZXNzYWdlcywgYW5k
IHNlbmRpbmcgYSBsYXJnZSBtZXNzYWdlLgorCitTaG91bGQgc2F5IFBBU1M6CisKK1J1bm5pbmcg
dGhlIHRlc3QuLi4KK1BBU1MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUtc3RyZXNzLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZS1zdHJlc3MuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjE0NGEwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUt
c3RyZXNzLmh0bWwKQEAgLTAsMCArMSw1MiBAQAorPHA+VGVzdCBzZW5kaW5nIG1hbnkgbWVzc2Fn
ZXMsIGFuZCBzZW5kaW5nIGEgbGFyZ2UgbWVzc2FnZS48L3A+Cis8cD5TaG91bGQgc2F5IFBBU1M6
PC9wPgorPHByZSBpZD1sb2c+UnVubmluZyB0aGUgdGVzdC4uLgorPC9wcmU+Cis8c2NyaXB0Pgor
dmFyIG51bVNtYWxsTWVzc2FnZXMgPSAxMDAwOworCitpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKK30KKworZnVuY3Rpb24gbG9nKG1l
c3NhZ2UpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCAr
PSBtZXNzYWdlICsgIlxuIjsKK30KKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcu
MC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvIik7CisKK3dzLm9ub3BlbiA9
IGZ1bmN0aW9uKCkgeworICAgIGZvciAoaSA9IDA7IGkgPCBudW1TbWFsbE1lc3NhZ2VzOyArK2kp
IHsKKyAgICAgICAgd3Muc2VuZChpKTsKKyAgICB9CisKK30KKwordmFyIGxhc3RNZXNzYWdlID0g
LTE7Cit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihtc2cpIHsKKyAgICBpZiAocGFyc2VJbnQobXNn
LmRhdGEpICE9IGxhc3RNZXNzYWdlICsgMSkKKyAgICAgICAgbG9nKCJGQUlMIC0gb3V0IG9mIHNl
cXVlbmNlIHJlc3BvbnNlLiBFeHBlY3RlZCAiICsgbGFzdE1lc3NhZ2UgKyAxICsgIiwgZ290ICIg
KyBtc2cuZGF0YSk7CisgICAgKytsYXN0TWVzc2FnZTsKKyAgICBpZiAobGFzdE1lc3NhZ2UgPT0g
bnVtU21hbGxNZXNzYWdlcyAtIDEpCisgICAgICAgIHRlc3RMYXJnZVN0cmluZygpOworfQorCitm
dW5jdGlvbiB0ZXN0TGFyZ2VTdHJpbmcoKQoreworICAgIC8vIEJ1aWxkIGEgc3RyaW5nIDI1Nksg
aW4gbGVuZ3RoLgorICAgIHZhciBzdHIgPSAiICI7CisgICAgZm9yIChpID0gMDsgaSA8IDE4OyAr
K2kpCisgICAgICAgIHN0ciArPSBzdHI7CisKKyAgICB3cy5zZW5kKHN0cik7CisgICAgd3Mub25t
ZXNzYWdlID0gZnVuY3Rpb24obXNnKSB7CisgICAgICAgIGxvZyhtc2cuZGF0YS5sZW5ndGggPT0g
c3RyLmxlbmd0aCA/ICJQQVNTIiA6ICJGQUlMIC0gd3JvbmcgcmVzcG9uc2UgbGVuZ3RoIik7Cisg
ICAgICAgIHdzLnNlbmQoIkdvb2RieWUiKTsKKyAgICAgICAgd3Mub25tZXNzYWdlID0gbnVsbDsK
KyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgIHNl
dFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDApOworICAgIH0K
K30KKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uMTEwMjYzZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLmh0bWwKQEAgLTAsMCArMSw1MiBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4u
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiU2ltcGxl
IFdlYiBTb2NrZXQgdGVzdCIpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2Z1
bmN0aW9uIGVuZFRlc3QoKQoreworICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOworICAgIGZp
bmlzaEpTVGVzdCgpOworfQorCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAu
MTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZSIpOworZGVidWcoIkNyZWF0ZWQg
YSBzb2NrZXQgdG8gJyIgKyB3cy5VUkwgKyAiJzsgcmVhZHlTdGF0ZSAiICsgd3MucmVhZHlTdGF0
ZSArICIuIik7CisKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiQ29ubmVj
dGVkOyByZWFkeVN0YXRlICIgKyB3cy5yZWFkeVN0YXRlKTsKK307CisKK3dzLm9ubWVzc2FnZSA9
IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBkZWJ1ZygiUmVjZWl2ZWQ6ICciICsgbWVz
c2FnZUV2ZW50LmRhdGEgKyAiJzsgcmVhZHlTdGF0ZSAiICsgd3MucmVhZHlTdGF0ZSk7Cit9Owor
Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIGRlYnVnKCJDbG9zZWQ7IHJlYWR5U3Rh
dGUgIiArIHdzLnJlYWR5U3RhdGUgKyAiLiIpOworICAgIGVuZFRlc3QoKTsKK307CisKK2Z1bmN0
aW9uIHRpbWVPdXRDYWxsYmFjaygpCit7CisgICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTog
IiArIHdzLnJlYWR5U3RhdGUpOworICAgIGVuZFRlc3QoKTsKK30KKwordmFyIHRpbWVvdXRJRCA9
IHNldFRpbWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9zaW1wbGVfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9zaW1wbGVfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmZjMDI3MWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZV93c2gucHkKQEAgLTAsMCArMSwzOCBAQAorIyBDb3B5
cmlnaHQgKEMpIDIwMDkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIworIyAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
IyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUgorIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisKKworZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKKworCitk
ZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcGFzcyAjIEFs
d2F5cyBhY2NlcHQuCisKKworZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToK
KyAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCAnSGVsbG8gZnJvbSBTaW1wbGUgV1NI
LicpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3N1Yi1wcm90b2NvbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1wcm90b2NvbC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmNjMWVjMQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc3ViLXByb3Rv
Y29sLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0IFdlYlNvY2tldCBoYW5kc2hh
a2Ugc3VjY2VzcyB3aXRoIHN1YiBwcm90b2NvbC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCitDb25uZWN0ZWQKK1BBU1MgcHJvdG9jb2wgaXMgInN1Yi1wcm90b2NvbCIKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1wcm90b2Nv
bC13aXRoLXNwYWNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvc3ViLXByb3RvY29sLXdpdGgtc3BhY2UtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyMWE3NDkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1w
cm90b2NvbC13aXRoLXNwYWNlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUZXN0IFdl
YlNvY2tldCBoYW5kc2hha2Ugc3VjY2VzcyB3aXRoIHN1YiBwcm90b2NvbCBjb250YWlucyBzcGFj
ZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitDb25uZWN0ZWQKK1BBU1MgcHJvdG9j
b2wgaXMgInN1YiBwcm90b2NvbCIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1wcm90b2NvbC13aXRoLXNwYWNlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3N1Yi1wcm90b2NvbC13aXRo
LXNwYWNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQ1M2RhMQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvc3ViLXByb3RvY29sLXdpdGgtc3BhY2UuaHRtbApAQCAtMCwwICsxLDU0IEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJUZXN0IFdlYlNv
Y2tldCBoYW5kc2hha2Ugc3VjY2VzcyB3aXRoIHN1YiBwcm90b2NvbCBjb250YWlucyBzcGFjZS4i
KTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgcHJvdG9jb2w7CisKK2Z1
bmN0aW9uIGVuZFRlc3QoKQoreworICAgIHNob3VsZEJlKCJwcm90b2NvbCIsICcic3ViIHByb3Rv
Y29sIicpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCit2YXIgdXJsID0gIndzOi8vbG9jYWxo
b3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcHJvdG9jb2wtdGVzdD9wcm90b2NvbD1z
dWIlMjBwcm90b2NvbCI7Cit2YXIgd3MgPSBuZXcgV2ViU29ja2V0KHVybCwgInN1YiBwcm90b2Nv
bCIpOworCit3cy5vbm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkNvbm5lY3RlZCIp
OworfTsKKword3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBw
cm90b2NvbCA9IG1lc3NhZ2VFdmVudC5kYXRhOworICAgIHdzLmNsb3NlKCk7Cit9OworCit3cy5v
bmNsb3NlID0gZnVuY3Rpb24oKQoreworICAgIGVuZFRlc3QoKTsKK307CisKK2Z1bmN0aW9uIHRp
bWVPdXRDYWxsYmFjaygpCit7CisgICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdz
LnJlYWR5U3RhdGUpOworICAgIGVuZFRlc3QoKTsKK30KKwordmFyIHRpbWVvdXRJRCA9IHNldFRp
bWVvdXQodGltZU91dENhbGxiYWNrLCAzMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zdWIt
cHJvdG9jb2wuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvc3ViLXByb3RvY29sLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uM2JlNWViYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc3ViLXByb3RvY29sLmh0bWwKQEAgLTAsMCArMSw1NCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVzdCBXZWJT
b2NrZXQgaGFuZHNoYWtlIHN1Y2Nlc3Mgd2l0aCBzdWIgcHJvdG9jb2wuIik7CisKK3dpbmRvdy5q
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIHByb3RvY29sOworCitmdW5jdGlvbiBlbmRUZXN0
KCkKK3sKKyAgICBzaG91bGRCZSgicHJvdG9jb2wiLCAnInN1Yi1wcm90b2NvbCInKTsKKyAgICBm
aW5pc2hKU1Rlc3QoKTsKK30KKwordmFyIHVybCA9ICJ3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3Byb3RvY29sLXRlc3Q/cHJvdG9jb2w9c3ViLXByb3RvY29sIjsK
K3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsLCAic3ViLXByb3RvY29sIik7CisKK3dzLm9ub3Bl
biA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiQ29ubmVjdGVkIik7Cit9OworCit3cy5vbm1l
c3NhZ2UgPSBmdW5jdGlvbiAobWVzc2FnZUV2ZW50KQoreworICAgIHByb3RvY29sID0gbWVzc2Fn
ZUV2ZW50LmRhdGE7CisgICAgd3MuY2xvc2UoKTsKK307CisKK3dzLm9uY2xvc2UgPSBmdW5jdGlv
bigpCit7CisgICAgZW5kVGVzdCgpOworfTsKKworZnVuY3Rpb24gdGltZU91dENhbGxiYWNrKCkK
K3sKKyAgICBkZWJ1ZygiVGltZWQgb3V0IGluIHN0YXRlOiAiICsgd3MucmVhZHlTdGF0ZSk7Cisg
ICAgZW5kVGVzdCgpOworfQorCit2YXIgdGltZW91dElEID0gc2V0VGltZW91dCh0aW1lT3V0Q2Fs
bGJhY2ssIDMwMDApOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VuaWNvZGUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91bmljb2Rl
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hODllYjgz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni91bmljb2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitXZWIgU29j
a2V0IHVuaWNvZGUgbWVzc2FnZSB0ZXN0CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
Q29ubmVjdGVkLgorU2VuZCBVTklDT0RFX0hFTExPLgorUEFTUyBkYXRhIGlzIFVOSUNPREVfR09P
REJZRQorQ2xvc2VkLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvdW5pY29kZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni91bmljb2RlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYWJlZmY4YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdW5pY29kZS5odG1sCkBAIC0wLDAgKzEsNjMgQEAK
KzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIldlYiBTb2Nr
ZXQgdW5pY29kZSBtZXNzYWdlIHRlc3QiKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OworCitmdW5jdGlvbiBlbmRUZXN0KCkKK3sKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsK
KyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKwordmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9s
b2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91bmljb2RlIik7CisKKy8vIEhl
bGxvIGluIEphcGFuZXNlCit2YXIgVU5JQ09ERV9IRUxMTyA9ICJcdTMwNTNcdTMwOTNcdTMwNmJc
dTMwNjFcdTMwNmYiOworLy8gR29vZGJ5ZSBpbiBKYXBhbmVzZQordmFyIFVOSUNPREVfR09PREJZ
RSA9ICJcdTMwNTVcdTMwODhcdTMwNDZcdTMwNmFcdTMwODkiOworCisvLyBkYXRhIG5lZWRzIHRv
IGJlIGdsb2JhbCB0byBiZSBhY2Nlc3NiaWxlIGZyb20gc2hvdWxkQmUoKS4KK3ZhciBkYXRhID0g
IiI7CisKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKK3sKKyAgICBkZWJ1ZygiQ29ubmVjdGVkLiIp
OworICAgIGRlYnVnKCJTZW5kIFVOSUNPREVfSEVMTE8uIik7CisgICAgd3Muc2VuZChVTklDT0RF
X0hFTExPKTsKK307CisKK3dzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKK3sK
KyAgICAvLyBUaGUgc2VydmVyIHNob3VsZCBzZW5kIGJhY2sgR29vZGJ5ZSBpZiBpdCByZWNlaXZl
cyBIZWxsby4KKyAgICBkYXRhID0gbWVzc2FnZUV2ZW50LmRhdGE7CisgICAgc2hvdWxkQmUoImRh
dGEiLCAiVU5JQ09ERV9HT09EQllFIik7Cit9OworCit3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQor
eworICAgIGRlYnVnKCJDbG9zZWQuIik7CisgICAgZW5kVGVzdCgpOworfTsKKworZnVuY3Rpb24g
dGltZU91dENhbGxiYWNrKCkKK3sKKyAgICB0ZXN0RmFpbGVkKCJUaW1lZCBvdXQgaW4gc3RhdGU6
ICIgKyB3cy5yZWFkeVN0YXRlKTsKKyAgICBlbmRUZXN0KCk7Cit9CisKK3ZhciB0aW1lb3V0SUQg
PSBzZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFjaywgMzAwMCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQ
YXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvdW5pY29kZV93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3VuaWNvZGVfd3NoLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjllMzEyMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3VuaWNvZGVfd3NoLnB5CkBAIC0wLDAgKzEsNTIgQEAKKyMg
Q29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisj
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisj
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKKyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
IyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorCisKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisK
KworIyBIZWxsbyBpbiBKYXBhbmVzZQorX1VOSUNPREVfSEVMTE8gPSB1Ilx1MzA1M1x1MzA5M1x1
MzA2Ylx1MzA2MVx1MzA2ZiIKKworIyBHb29kYnllIGluIEphcGFuZXNlCitfVU5JQ09ERV9HT09E
QllFID0gdSJcdTMwNTVcdTMwODhcdTMwNDZcdTMwNmFcdTMwODkiCisKKyMgRXJyb3IgbWVzc2Fn
ZQorX0VSUk9SX01FU1NBR0UgPSAiV2hhdCBkaWQgeW91IHNheT8iCisKKworZGVmIHdlYl9zb2Nr
ZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHBhc3MgIyBBbHdheXMgYWNjZXB0
LgorCisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6CisgICAgaGVsbG8g
PSBtc2d1dGlsLnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KQorICAgIGlmIGhlbGxvICE9IF9VTklD
T0RFX0hFTExPOgorICAgICAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCBfRVJST1Jf
TUVTU0FHRSkKKyAgICAgICAgcmV0dXJuCisgICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVz
dCwgX1VOSUNPREVfR09PREJZRSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdW5rbm93bi1mcmFtZS10eXBlX3dzaC5weSBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdW5rbm93bi1mcmFtZS10
eXBlX3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZWZmOTc0Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni91bmtub3duLWZyYW1lLXR5cGVfd3NoLnB5CkBAIC0wLDAgKzEsMTQgQEAKK2Zyb20g
bW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisKKworZGVmIHdlYl9zb2NrZXRfZG9fZXh0
cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHBhc3MKKworCitkZWYgd2ViX3NvY2tldF90cmFu
c2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgIGZvciBpIGluIHJhbmdlKDEsIDEyOCk6CisgICAgICAg
IHJlcXVlc3QuY29ubmVjdGlvbi53cml0ZShjaHIoaSkgKyBzdHIoaSkgKyAnXHhmZicpCisgICAg
Zm9yIGkgaW4gcmFuZ2UoMTI4LCAyNTYpOgorICAgICAgICBtc2cgPSBzdHIoaSkKKyAgICAgICAg
cmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKGNocihpKSArIGNocihsZW4obXNnKSkgKyBtc2cpCisg
ICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgJ2RvbmUnKQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtbm8tdHJhaWxp
bmctc2xhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni91cmwtbm8tdHJhaWxpbmctc2xhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc1YzkwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1uby10cmFp
bGluZy1zbGFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVVJMIHRoYXQgZG9lc24n
dCBoYXZlIHRyYWlsaW5nIHNsYXNoIHNob3VsZCBub3QgZW1pdCBlbXB0eSBSZXF1ZXN0LVVSSS4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitXZWJTb2NrZXQgaXMgb3BlbgorcmVjZWl2
ZWQ6d3M6Ly8xMjcuMC4wLjE6ODg4MC8KK1dlYlNvY2tldCBpcyBjbG9zZWQKK1BBU1MgaGFuZHNo
YWtlX3N1Y2Nlc3MgaXMgdHJ1ZQorUEFTUyB3c19sb2NhdGlvbiBpcyAid3M6Ly8xMjcuMC4wLjE6
ODg4MC8iCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni91cmwtbm8tdHJhaWxpbmctc2xhc2guaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLW5vLXRyYWlsaW5nLXNsYXNoLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWZhZDNhMQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLW5vLXRy
YWlsaW5nLXNsYXNoLmh0bWwKQEAgLTAsMCArMSw0MCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRp
b24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVVJMIHRoYXQgZG9lc24ndCBoYXZlIHRyYWlsaW5n
IHNsYXNoIHNob3VsZCBub3QgZW1pdCBlbXB0eSBSZXF1ZXN0LVVSSS4iKTsKKword2luZG93Lmpz
VGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgdXJsID0gIndzOi8vMTI3LjAuMC4xOjg4ODAiOwor
dmFyIGhhbmRzaGFrZV9zdWNjZXNzID0gZmFsc2U7Cit2YXIgd3NfbG9jYXRpb247CisKK3ZhciB3
cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uICgpIHsKKyAgICBk
ZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsKKyAgICBoYW5kc2hha2Vfc3VjY2VzcyA9IHRydWU7
Cit9Oword3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgeworICAgIHdzX2xvY2F0aW9uID0g
ZXZ0LmRhdGE7CisgICAgZGVidWcoInJlY2VpdmVkOiIgKyB3c19sb2NhdGlvbik7CisgICAgd3Mu
Y2xvc2UoKTsKK307Cit3cy5vbmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJT
b2NrZXQgaXMgY2xvc2VkIik7CisgICAgc2hvdWxkQmVUcnVlKCJoYW5kc2hha2Vfc3VjY2VzcyIp
OworICAgIHNob3VsZEJlKCJ3c19sb2NhdGlvbiIsICcid3M6Ly8xMjcuMC4wLjE6ODg4MC8iJyk7
CisgICAgZmluaXNoSlNUZXN0KCk7Cit9OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1
ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1wYXJz
aW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvdXJsLXBhcnNpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjUxODNlN2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1wYXJzaW5nLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDIzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogSW52YWxpZCB1cmwgZm9y
IFdlYlNvY2tldCB3czovL2phdmFzY3JpcHQ6YQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IElu
dmFsaWQgdXJsIGZvciBXZWJTb2NrZXQgL2FwcGxldAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6
IFdyb25nIHVybCBzY2hlbWUgZm9yIFdlYlNvY2tldCBqYXZhc2NyaXB0OmEKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAwOiBXZWJTb2NrZXQgcG9ydCAyNSBibG9ja2VkCitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgMDogVVJMIGhhcyBmcmFnbWVudCBjb21wb25lbnQgd3M6Ly8xMjcuMC4wLjEvcGF0aCMK
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBVUkwgaGFzIGZyYWdtZW50IGNvbXBvbmVudCB3czov
LzEyNy4wLjAuMS9wYXRoI2ZyYWdtZW50CitUZXN0IFdlYlNvY2tldCBVUkwgcGFyc2luZy4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vamF2
YXNjcmlwdDphIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0
aW9uIDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCIvYXBwbGV0IikgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCJq
YXZhc2NyaXB0OmEiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNl
cHRpb24gMTIuCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjI1LyIpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogU0VDVVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4LgorUEFTUyAo
bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9hLy4uL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3NpbXBsZSIpKS5VUkwgaXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvc2ltcGxlIgorUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6
ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/IikpLlVSTCBpcyAid3M6Ly8xMjcu
MC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/IgorUEFTUyAobmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1w
bGU/az12IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9zaW1wbGU/az12IgorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMS9wYXRo
IyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4K
K1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjEvcGF0aCNmcmFnbWVudCIpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1wYXJzaW5n
Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Vy
bC1wYXJzaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTJlMGZl
NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2hpeGllNzYvdXJsLXBhcnNpbmcuaHRtbApAQCAtMCwwICsxLDQxIEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlk
PSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJUZXN0IFdlYlNvY2tldCBVUkwg
cGFyc2luZy4iKTsKKworLy8gSW52YWxpZCB1cmwgd2lsbCBmYWlsIHRvIGJlIHBhcnNlZC4KK3No
b3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovL2phdmFzY3JpcHQ6YSIpJyk7CisKKy8vIENh
bid0IHVzZSByZWxhdGl2ZSBVUkxzIC0gYmVjYXVzZSBzcGVjIHNheXMgc28sIGFuZCBiZWNhdXNl
IHRoZSBzY2hlbWUgaXMgZGlmZmVyZW50IGFueXdheS4KK3Nob3VsZFRocm93KCduZXcgV2ViU29j
a2V0KCIvYXBwbGV0IiknKTsKKworLy8gTm9uIHdzIFVSTCBpcyBub3QgYWxsb3dlZC4KK3Nob3Vs
ZFRocm93KCduZXcgV2ViU29ja2V0KCJqYXZhc2NyaXB0OmEiKScpOworCisvLyBVQSBpcyBhbGxv
d2VkIHRvIGJsb2NrIGFjY2VzcyB0byBzb21lIHBvcnRzLCB3aGljaCB3ZSBkby4KK3Nob3VsZFRo
cm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMToyNS8iKScpOworCisvLyBSZXNvbHZl
IHRoZSB1cmwgc3RyaW5nIHVzaW5nIHRoZSByZXNvbHZlIGEgV2ViIGFkZHJlc3MgYWxnb3JpdGht
LgorLy8gVXNlIDEyNy4wLjAuMTo4ODgwIGFuZCBleGlzdGluZyB3cyBoYW5kbGVyIHRvIG1ha2Ug
c3VyZSB3ZSBkb24ndCByZWNlaXZlIHVuZXhwZWN0ZWQgcmVzcG9uc2UgKHNvIG5vIGNvbnNvbGUg
bWVzc2FnZSBhcHBlYXJzKQorc2hvdWxkQmUoJyhuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAu
MTo4ODgwL2EvLi4vd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlIikpLlVSTCcsICcid3M6
Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUiJyk7CitzaG91
bGRCZSgnKG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvc2ltcGxlPyIpKS5VUkwnLCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvc2ltcGxlPyInKTsKK3Nob3VsZEJlKCcobmV3IFdlYlNvY2tldCgid3M6
Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/az12IikpLlVS
TCcsICcid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/
az12IicpOworCisvLyBkcmFmdC1oaXhpZS10aGV3ZWJzb2NrZXRwcm90b2NvbC02MCBzYXlzIElm
IC91cmwvIGhhcyBhIDxmcmFnbWVudD4KKy8vIGNvbXBvbmVudCwgdGhlbiBmYWlsIHRoZSBwYXJz
aW5nIFdlYiBTb2NrZXQgVVJMcywgc28gdGhyb3cgYSBTWU5UQVhfRVJSCisvLyBleGNlcHRpb24u
CitzaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjEvcGF0aCMiKScpOwor
c2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQi
KScpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13aXRoLWNyZWRlbnRpYWwtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwt
d2l0aC1jcmVkZW50aWFsLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi45YTViZDYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1jcmVkZW50aWFsLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDE0IEBACitNYWtlIHN1cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdpdGggY3Jl
ZGVudGFpbCBpbmZvIHN1Y2Nlc3MuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwordXJs
PXdzOi8vdXNlcjpwYXNzQDEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2Vj
aG8tbG9jYXRpb24KK1dlYlNvY2tldCBpcyBvcGVuCityZWNlaXZlZDp3czovLzEyNy4wLjAuMTo4
ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG8tbG9jYXRpb24KK1dlYlNvY2tldCBpcyBj
bG9zZWQKK1BBU1MgaGFuZHNoYWtlX3N1Y2Nlc3MgaXMgdHJ1ZQorUEFTUyB3c19sb2NhdGlvbiBp
cyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWxvY2F0
aW9uIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvdXJsLXdpdGgtY3JlZGVudGlhbC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1jcmVkZW50aWFsLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDVhOGI2MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXdpdGgtY3JlZGVu
dGlhbC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rp
dj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBoYW5kc2hha2Ugd2l0aCBVUkwgd2l0aCBjcmVk
ZW50YWlsIGluZm8gc3VjY2Vzcy4iKTsKKword2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwor
Cit2YXIgdXJsID0gIndzOi8vdXNlcjpwYXNzQDEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L2VjaG8tbG9jYXRpb24iOwordmFyIGhhbmRzaGFrZV9zdWNjZXNzID0gZmFsc2U7
Cit2YXIgd3NfbG9jYXRpb247CisKK2Z1bmN0aW9uIGVuZFRlc3QoKQoreworICAgIGNsZWFyVGlt
ZW91dCh0aW1lb3V0SUQpOworICAgIHNob3VsZEJlVHJ1ZSgiaGFuZHNoYWtlX3N1Y2Nlc3MiKTsK
KyAgICBzaG91bGRCZSgid3NfbG9jYXRpb24iLCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvZWNoby1sb2NhdGlvbiInKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsK
K30KKworZGVidWcoInVybD0iICsgdXJsKTsKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsK
K3dzLm9ub3BlbiA9IGZ1bmN0aW9uICgpIHsKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4i
KTsKKyAgICBoYW5kc2hha2Vfc3VjY2VzcyA9IHRydWU7Cit9Oword3Mub25tZXNzYWdlID0gZnVu
Y3Rpb24gKGV2dCkgeworICAgIHdzX2xvY2F0aW9uID0gZXZ0LmRhdGE7CisgICAgZGVidWcoInJl
Y2VpdmVkOiIgKyB3c19sb2NhdGlvbik7CisgICAgd3MuY2xvc2UoKTsKK307Cit3cy5vbmNsb3Nl
ID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7CisgICAg
ZW5kVGVzdCgpOworfTsKK3ZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KCJlbmRUZXN0KCkiLCAy
MDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1lbXB0eS1xdWVyeS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Vy
bC13aXRoLWVtcHR5LXF1ZXJ5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi4zZjE1MWU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1lbXB0eS1xdWVyeS1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxNCBAQAorTWFrZSBzdXJlIGhhbmRzaGFrZSB3aXRoIFVSTCB3aXRo
IGVtcHR5IHF1ZXJ5IGNvbXBvbmVudHMgc3VjY2Vzcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCit1cmw9d3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9l
Y2hvLWxvY2F0aW9uPworV2ViU29ja2V0IGlzIG9wZW4KK3JlY2VpdmVkOndzOi8vMTI3LjAuMC4x
Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvZWNoby1sb2NhdGlvbj8KK1dlYlNvY2tldCBp
cyBjbG9zZWQKK1BBU1MgaGFuZHNoYWtlX3N1Y2Nlc3MgaXMgdHJ1ZQorUEFTUyB3c19sb2NhdGlv
biBpcyB1cmwKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3VybC13aXRoLWVtcHR5LXF1ZXJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13aXRoLWVtcHR5LXF1ZXJ5Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDNhYjI0ZQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXdpdGgt
ZW1wdHktcXVlcnkuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlv
biI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdp
dGggZW1wdHkgcXVlcnkgY29tcG9uZW50cyBzdWNjZXNzLiIpOworCit3aW5kb3cuanNUZXN0SXNB
c3luYyA9IHRydWU7CisKK3ZhciB1cmwgPSAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9lY2hvLWxvY2F0aW9uPyI7Cit2YXIgaGFuZHNoYWtlX3N1Y2Nlc3MgPSBm
YWxzZTsKK3ZhciB3c19sb2NhdGlvbjsKKworZnVuY3Rpb24gZW5kVGVzdCgpCit7CisgICAgY2xl
YXJUaW1lb3V0KHRpbWVvdXRJRCk7CisgICAgc2hvdWxkQmVUcnVlKCJoYW5kc2hha2Vfc3VjY2Vz
cyIpOworICAgIHNob3VsZEJlKCJ3c19sb2NhdGlvbiIsICJ1cmwiKTsKKyAgICBmaW5pc2hKU1Rl
c3QoKTsKK30KKworZGVidWcoInVybD0iICsgdXJsKTsKK3ZhciB3cyA9IG5ldyBXZWJTb2NrZXQo
dXJsKTsKK3dzLm9ub3BlbiA9IGZ1bmN0aW9uICgpIHsKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGlz
IG9wZW4iKTsKKyAgICBoYW5kc2hha2Vfc3VjY2VzcyA9IHRydWU7Cit9Oword3Mub25tZXNzYWdl
ID0gZnVuY3Rpb24gKGV2dCkgeworICAgIHdzX2xvY2F0aW9uID0gZXZ0LmRhdGE7CisgICAgZGVi
dWcoInJlY2VpdmVkOiIgKyB3c19sb2NhdGlvbik7CisgICAgd3MuY2xvc2UoKTsKK307Cit3cy5v
bmNsb3NlID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJTb2NrZXQgaXMgY2xvc2VkIik7
CisgICAgZW5kVGVzdCgpOworfTsKK3ZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KCJlbmRUZXN0
KCkiLCAyMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3Vy
bC13aXRoLXF1ZXJ5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5jYzJiZGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxNCBAQAorTWFrZSBzdXJlIGhhbmRzaGFrZSB3aXRoIFVSTCB3aXRoIHF1ZXJ5IGNvbXBv
bmVudHMgc3VjY2Vzcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCit1cmw9d3M6Ly8x
MjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9lY2hvLWxvY2F0aW9uP3E9dgor
V2ViU29ja2V0IGlzIG9wZW4KK3JlY2VpdmVkOndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvZWNoby1sb2NhdGlvbj9xPXYKK1dlYlNvY2tldCBpcyBjbG9zZWQKK1BB
U1MgaGFuZHNoYWtlX3N1Y2Nlc3MgaXMgdHJ1ZQorUEFTUyB3c19sb2NhdGlvbiBpcyB1cmwKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13
aXRoLXF1ZXJ5LWZvci1uby1xdWVyeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13aXRoLXF1ZXJ5LWZvci1uby1xdWVyeS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzAzOTcxZgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogRXJyb3IgZHVyaW5nIFdlYlNvY2tl
dCBoYW5kc2hha2U6IGxvY2F0aW9uIG1pc21hdGNoOiB3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L25vLXF1ZXJ5PyAhPSAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYv
bm8tcXVlcnkKK01ha2Ugc3VyZSBoYW5kc2hha2Ugd2l0aCBVUkwgd2l0aCBxdWVyeSBjb21wb25l
bnRzIGZhaWxzIGFnYWluc3Qgc2VydmVyIHRoYXQgZG9lc24ndCBzdXBwb3J0IHF1ZXJ5IGNvbXBv
bmVudC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCit1cmw9d3M6Ly8xMjcuMC4wLjE6
ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9uby1xdWVyeT8KK1dlYlNvY2tldCBpcyBjbG9z
ZWQKK1BBU1MgaGFuZHNoYWtlX3N1Y2Nlc3MgaXMgZmFsc2UKK1BBU1Mgd3NfbG9jYXRpb24gaXMg
dW5kZWZpbmVkLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC13aXRoLXF1ZXJ5LWZvci1uby1x
dWVyeS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlZDdkNjMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3VybC13aXRoLXF1ZXJ5LWZvci1uby1xdWVyeS5odG1sCkBAIC0wLDAgKzEsNDggQEAK
KzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIk1ha2Ugc3Vy
ZSBoYW5kc2hha2Ugd2l0aCBVUkwgd2l0aCBxdWVyeSBjb21wb25lbnRzIGZhaWxzIGFnYWluc3Qg
c2VydmVyIHRoYXQgZG9lc24ndCBzdXBwb3J0IHF1ZXJ5IGNvbXBvbmVudC4iKTsKKword2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgdXJsID0gIndzOi8vMTI3LjAuMC4xOjg4ODAv
d2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvbm8tcXVlcnk/IjsKK3ZhciBoYW5kc2hha2Vfc3VjY2Vz
cyA9IGZhbHNlOwordmFyIHdzX2xvY2F0aW9uOworCitmdW5jdGlvbiBlbmRUZXN0KCkKK3sKKyAg
ICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBzaG91bGRCZUZhbHNlKCJoYW5kc2hha2Vf
c3VjY2VzcyIpOworICAgIHNob3VsZEJlVW5kZWZpbmVkKCJ3c19sb2NhdGlvbiIpOworICAgIGZp
bmlzaEpTVGVzdCgpOworfQorCitkZWJ1ZygidXJsPSIgKyB1cmwpOwordmFyIHdzID0gbmV3IFdl
YlNvY2tldCh1cmwpOword3Mub25vcGVuID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVnKCJXZWJT
b2NrZXQgaXMgb3BlbiIpOworICAgIGhhbmRzaGFrZV9zdWNjZXNzID0gdHJ1ZTsKK307Cit3cy5v
bm1lc3NnZSA9IGZ1bmN0aW9uIChldnQpIHsKKyAgICB3c19sb2NhdGlvbiA9IGV2dC5kYXRhOwor
ICAgIGRlYnVnKCJyZWNlaXZlZDoiICsgd3NfbG9jYXRpb24pOworICAgIHdzLmNsb3NlKCk7Cit9
Oword3Mub25jbG9zZSA9IGZ1bmN0aW9uICgpIHsKKyAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIGNs
b3NlZCIpOworICAgIGVuZFRlc3QoKTsKK307Cit2YXIgdGltZW91dElEID0gc2V0VGltZW91dCgi
ZW5kVGVzdCgpIiwgMjAwMCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXdpdGgtcXVlcnku
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJs
LXdpdGgtcXVlcnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmE3
YjE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni91cmwtd2l0aC1xdWVyeS5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9D
VFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+
Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBoYW5k
c2hha2Ugd2l0aCBVUkwgd2l0aCBxdWVyeSBjb21wb25lbnRzIHN1Y2Nlc3MuIik7CisKK3dpbmRv
dy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwordmFyIHVybCA9ICJ3czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2VjaG8tbG9jYXRpb24/cT12IjsKK3ZhciBoYW5kc2hh
a2Vfc3VjY2VzcyA9IGZhbHNlOwordmFyIHdzX2xvY2F0aW9uOworCitmdW5jdGlvbiBlbmRUZXN0
KCkKK3sKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKKyAgICBzaG91bGRCZVRydWUoImhh
bmRzaGFrZV9zdWNjZXNzIik7CisgICAgc2hvdWxkQmUoIndzX2xvY2F0aW9uIiwgInVybCIpOwor
ICAgIGZpbmlzaEpTVGVzdCgpOworfQorCitkZWJ1ZygidXJsPSIgKyB1cmwpOwordmFyIHdzID0g
bmV3IFdlYlNvY2tldCh1cmwpOword3Mub25vcGVuID0gZnVuY3Rpb24gKCkgeworICAgIGRlYnVn
KCJXZWJTb2NrZXQgaXMgb3BlbiIpOworICAgIGhhbmRzaGFrZV9zdWNjZXNzID0gdHJ1ZTsKK307
Cit3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbiAoZXZ0KSB7CisgICAgd3NfbG9jYXRpb24gPSBldnQu
ZGF0YTsKKyAgICBkZWJ1ZygicmVjZWl2ZWQ6IiArIHdzX2xvY2F0aW9uKTsKKyAgICB3cy5jbG9z
ZSgpOworfTsKK3dzLm9uY2xvc2UgPSBmdW5jdGlvbiAoKSB7CisgICAgZGVidWcoIldlYlNvY2tl
dCBpcyBjbG9zZWQiKTsKKyAgICBlbmRUZXN0KCk7Cit9OwordmFyIHRpbWVvdXRJRCA9IHNldFRp
bWVvdXQoImVuZFRlc3QoKSIsIDIwMDApOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1
ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dlYnNvY2tl
dC1ldmVudC10YXJnZXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNzlhNDRlCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJz
b2NrZXQtZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE4IEBACitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMDogV2ViU29ja2V0IGlzIGNsb3NlZCBiZWZvcmUgdGhlIGNvbm5lY3Rp
b24gaXMgZXN0YWJsaXNoZWQuCitNYWtlIHN1cmUgV2ViU29ja2V0IG9iamVjdCBhY3RzIGFzIEV2
ZW50VGFyZ2V0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1Mgb3Blbl9ldmVu
dF9oYW5kbGVkIGlzIGZhbHNlCitQQVNTIG1lc3NhZ2VfZXZlbnRfaGFuZGxlZCBpcyBmYWxzZQor
UEFTUyBjbG9zZV9ldmVudF9oYW5kbGVkIGlzIGZhbHNlCitQQVNTIG9wZW5fZXZlbnRfaGFuZGxl
ZCBpcyB0cnVlCitQQVNTIG9wZW5fZXZlbnRfaGFuZGxlZCBpcyBmYWxzZQorUEFTUyBtZXNzYWdl
X2V2ZW50X2hhbmRsZWQgaXMgdHJ1ZQorUEFTUyBtZXNzYWdlX2V2ZW50X2hhbmRsZWQgaXMgZmFs
c2UKK1BBU1MgY2xvc2VfZXZlbnRfaGFuZGxlZCBpcyB0cnVlCitQQVNTIGNsb3NlX2V2ZW50X2hh
bmRsZWQgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3dlYnNvY2tldC1ldmVudC10YXJnZXQuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd2Vic29ja2V0LWV2ZW50LXRhcmdldC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjNWFiNGUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L3dlYnNvY2tldC1ldmVudC10YXJnZXQuaHRtbApAQCAtMCwwICsxLDY5IEBACis8IURPQ1RZUEUg
SFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlk
PSJkZXNjcmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KK2Rlc2NyaXB0aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0
IG9iamVjdCBhY3RzIGFzIEV2ZW50VGFyZ2V0LiIpOworCit2YXIgd3MgPSBuZXcgV2ViU29ja2V0
KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZSIpOwor
d3MuY2xvc2UoKTsgLy8gVGhhdCBpcyBub3QgYSB0ZXN0IHdpdGggYSBXZWJTb2NrZXQgc2VydmVy
LCBwcmV2ZW50IGxvZ2dpbmcgYW4gZXJyb3IgdG8gY29uc29sZS4KK3ZhciBvcGVuX2V2ZW50X2hh
bmRsZWQgPSBmYWxzZTsKK3ZhciBtZXNzYWdlX2V2ZW50X2hhbmRsZWQgPSBmYWxzZTsKK3ZhciBj
bG9zZV9ldmVudF9oYW5kbGVkID0gZmFsc2U7CitmdW5jdGlvbiBvcGVuTGlzdGVuZXIoKSB7Cisg
ICAgb3Blbl9ldmVudF9oYW5kbGVkID0gdHJ1ZTsKK307CitmdW5jdGlvbiBtZXNzYWdlTGlzdGVu
ZXIoKSB7CisgICAgbWVzc2FnZV9ldmVudF9oYW5kbGVkID0gdHJ1ZTsKK307CitmdW5jdGlvbiBj
bG9zZUxpc3RlbmVyKCkgeworICAgIGNsb3NlX2V2ZW50X2hhbmRsZWQgPSB0cnVlOworfQord3Mu
YWRkRXZlbnRMaXN0ZW5lcignb3BlbicsIG9wZW5MaXN0ZW5lciwgZmFsc2UpOword3MuYWRkRXZl
bnRMaXN0ZW5lcignbWVzc2FnZScsIG1lc3NhZ2VMaXN0ZW5lciwgZmFsc2UpOword3MuYWRkRXZl
bnRMaXN0ZW5lcignY2xvc2UnLCBjbG9zZUxpc3RlbmVyLCBmYWxzZSk7CisKK3Nob3VsZEJlKCJv
cGVuX2V2ZW50X2hhbmRsZWQiLCAiZmFsc2UiKTsKK3Nob3VsZEJlKCJtZXNzYWdlX2V2ZW50X2hh
bmRsZWQiLCAiZmFsc2UiKTsKK3Nob3VsZEJlKCJjbG9zZV9ldmVudF9oYW5kbGVkIiwgImZhbHNl
Iik7CisKK3ZhciBldnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiRXZlbnRzIik7CitldnQuaW5p
dEV2ZW50KCJvcGVuIiwgdHJ1ZSwgZmFsc2UpOword3MuZGlzcGF0Y2hFdmVudChldnQpOworc2hv
dWxkQmUoIm9wZW5fZXZlbnRfaGFuZGxlZCIsICJ0cnVlIik7CisKK29wZW5fZXZlbnRfaGFuZGxl
ZCA9IGZhbHNlOword3MucmVtb3ZlRXZlbnRMaXN0ZW5lcignb3BlbicsIG9wZW5MaXN0ZW5lcik7
Cit3cy5kaXNwYXRjaEV2ZW50KGV2dCk7CitzaG91bGRCZSgib3Blbl9ldmVudF9oYW5kbGVkIiwg
ImZhbHNlIik7CisKK2V2dCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJNZXNzYWdlRXZlbnQiKTsK
K2V2dC5pbml0RXZlbnQoIm1lc3NhZ2UiLCB0cnVlLCBmYWxzZSk7Cit3cy5kaXNwYXRjaEV2ZW50
KGV2dCk7CitzaG91bGRCZSgibWVzc2FnZV9ldmVudF9oYW5kbGVkIiwgInRydWUiKTsKKworbWVz
c2FnZV9ldmVudF9oYW5kbGVkID0gZmFsc2U7Cit3cy5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNz
YWdlJywgbWVzc2FnZUxpc3RlbmVyKTsKK3dzLmRpc3BhdGNoRXZlbnQoZXZ0KTsKK3Nob3VsZEJl
KCJtZXNzYWdlX2V2ZW50X2hhbmRsZWQiLCAiZmFsc2UiKTsKKworZXZ0ID0gZG9jdW1lbnQuY3Jl
YXRlRXZlbnQoIkV2ZW50cyIpOworZXZ0LmluaXRFdmVudCgiY2xvc2UiLCB0cnVlLCBmYWxzZSk7
Cit3cy5kaXNwYXRjaEV2ZW50KGV2dCk7CitzaG91bGRCZSgiY2xvc2VfZXZlbnRfaGFuZGxlZCIs
ICJ0cnVlIik7CisKK2Nsb3NlX2V2ZW50X2hhbmRsZWQgPSBmYWxzZTsKK3dzLnJlbW92ZUV2ZW50
TGlzdGVuZXIoJ2Nsb3NlJywgY2xvc2VMaXN0ZW5lcik7Cit3cy5kaXNwYXRjaEV2ZW50KGV2dCk7
CitzaG91bGRCZSgiY2xvc2VfZXZlbnRfaGFuZGxlZCIsICJmYWxzZSIpOworCit2YXIgc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4u
L2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3dlYnNvY2tldC1wZW5kaW5nLWFjdGl2aXR5LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd2Vic29ja2V0LXBlbmRp
bmctYWN0aXZpdHktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjczNDBiYzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3dlYnNvY2tldC1wZW5kaW5nLWFjdGl2aXR5LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDIgQEAKK0FMRVJUOiBQQVNTCitTaG91bGQgYWxlcnQgIlBBU1MiLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni93ZWJzb2NrZXQtcGVuZGluZy1hY3Rpdml0eS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtcGVuZGluZy1hY3Rpdml0eS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiNDE1NDUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dl
YnNvY2tldC1wZW5kaW5nLWFjdGl2aXR5Lmh0bWwKQEAgLTAsMCArMSwzNCBAQAorPGJvZHkgb25s
b2FkPSJ0ZXN0KCkiPgorPHA+U2hvdWxkIGFsZXJ0ICJQQVNTIi48L3A+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
Cit9CisKK2Z1bmN0aW9uIGdjKCkKK3sKKyAgICBpZiAod2luZG93LkdDQ29udHJvbGxlcikKKyAg
ICAgICAgcmV0dXJuIEdDQ29udHJvbGxlci5jb2xsZWN0KCk7CisKKyAgICBmb3IgKHZhciBpID0g
MDsgaSA8IDEwMDAwOyBpKyspIHsgLy8gPiBmb3JjZSBnYXJiYWdlIGNvbGxlY3Rpb24gKEZGIHJl
cXVpcmVzIGFib3V0IDlLIGFsbG9jYXRpb25zIGJlZm9yZSBhIGNvbGxlY3QpCisgICAgICAgIHZh
ciBzID0gbmV3IFN0cmluZygiYWJjIik7CisgICAgfQorfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sK
KyAgICB2YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tl
dC90ZXN0cy9oaXhpZTc2L2VjaG8iKTsKKyAgICB3cy5vbm9wZW4gPSBmdW5jdGlvbigpIHsKKyAg
ICAgICAgdGhpcy5zZW5kKCJQQVNTIik7CisgICAgfQorICAgIHdzLm9ubWVzc2FnZSA9IGZ1bmN0
aW9uKG1zZykgeworICAgICAgICBhbGVydChtc2cuZGF0YSk7CisgICAgICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5u
b3RpZnlEb25lKCk7CisgICAgfQorICAgIHdzID0gbnVsbDsKKyAgICBnYygpOworfQorPC9zY3Jp
cHQ+CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvd2Vic29ja2V0LXByb3RvY29sLWlnbm9yZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtcHJvdG9j
b2wtaWdub3JlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uNGRlNmQ3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvd2Vic29ja2V0LXByb3RvY29sLWlnbm9yZWQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTAgQEAKK1Rlc3QgV2ViU29ja2V0IGhhbmRzaGFrZSBzdWNjZXNzIHdp
dGhvdXQgcHJvdG9jb2wgYW5kIGlnbm9yZSBXZWJTb2NrZXQtUHJvdG9jb2wgZnJvbSBzZXJ2ZXIu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworQ29ubmVjdGVkCitQQVNTIHByb3RvY29s
IGlzICJzdWItcHJvdG9jb2wiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtcHJvdG9jb2wtaWdub3JlZC5odG1sIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93ZWJzb2NrZXQtcHJvdG9j
b2wtaWdub3JlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlZjMz
NWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3dlYnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLmh0bWwKQEAgLTAsMCArMSw1
NSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vLi4vanMt
dGVzdC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
Ly4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitkZXNjcmlwdGlvbigiVGVz
dCBXZWJTb2NrZXQgaGFuZHNoYWtlIHN1Y2Nlc3Mgd2l0aG91dCBwcm90b2NvbCBhbmQgaWdub3Jl
IFdlYlNvY2tldC1Qcm90b2NvbCBmcm9tIHNlcnZlci4iKTsKKword2luZG93LmpzVGVzdElzQXN5
bmMgPSB0cnVlOworCit2YXIgcHJvdG9jb2w7CisKK2Z1bmN0aW9uIGVuZFRlc3QoKQoreworICAg
IHNob3VsZEJlKCJwcm90b2NvbCIsICcic3ViLXByb3RvY29sIicpOworICAgIGNsZWFyVGltZW91
dCh0aW1lb3V0SUQpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCit2YXIgdXJsID0gIndzOi8v
bG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvcHJvdG9jb2wtdGVzdD9wcm90
b2NvbD1zdWItcHJvdG9jb2wiOwordmFyIHdzID0gbmV3IFdlYlNvY2tldCh1cmwpOworCit3cy5v
bm9wZW4gPSBmdW5jdGlvbigpCit7CisgICAgZGVidWcoIkNvbm5lY3RlZCIpOworfTsKKword3Mu
b25tZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2VFdmVudCkKK3sKKyAgICBwcm90b2NvbCA9IG1l
c3NhZ2VFdmVudC5kYXRhOworICAgIHdzLmNsb3NlKCk7Cit9OworCit3cy5vbmNsb3NlID0gZnVu
Y3Rpb24oKQoreworICAgIGVuZFRlc3QoKTsKK307CisKK2Z1bmN0aW9uIHRpbWVPdXRDYWxsYmFj
aygpCit7CisgICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5U3RhdGUp
OworICAgIGVuZFRlc3QoKTsKK30KKwordmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGltZU91
dENhbGxiYWNrLCAzMDAwKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWlu
LW9ubWVzc2FnZS1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGEyMzg3Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLW9ubWVzc2FnZS1jcmFzaC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMSBAQAorTmVzdGVkIGNyZWF0aW9uIG9mIHR3byBXZWJTb2NrZXRzIHNob3VsZCBu
b3QgY2F1c2UgYSBjcmFzaC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTOiB3
b3JrZXI6IFBhcnNlZCBzdWNjZXNzZnVsbHkuCitQQVNTOiB3b3JrZXI6IENvbm5lY3RlZC4KK1BB
U1M6IHdvcmtlcjogUmVjZWl2ZWQgbWVzc2FnZTogIkhlbGxvIGZyb20gU2ltcGxlIFdTSC4iCitQ
QVNTOiB3b3JrZXI6IENsb3NlZC4KK0RPTkUKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Ns
b3NlLWluLW9ubWVzc2FnZS1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLW9ubWVzc2FnZS1jcmFzaC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5NWExN2MKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dv
cmtlcnMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLmh0bWwKQEAgLTAsMCArMSwzNSBAQAorPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVh
ZD48L2hlYWQ+Cis8Ym9keT4KKzxwPk5lc3RlZCBjcmVhdGlvbiBvZiB0d28gV2ViU29ja2V0cyBz
aG91bGQgbm90IGNhdXNlIGEgY3Jhc2guPC9wPgorPHA+PC9wPgorPHA+T24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLjwvcD4KKzxwcmUgaWQ9bG9nPgorPC9wcmU+Cis8c2NyaXB0PgoraWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7Cit9CisK
K2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJs
b2ciKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICJcbiI7Cit9CisKK2Z1bmN0aW9uIGVuZFRlc3Qo
KQoreworICAgIGxvZygiVEVTVCBDT01QTEVURSIpOworICAgIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsK
K30KK3ZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvY2xvc2UtaW4tb25tZXNzYWdl
LWNyYXNoLmpzJyk7Cit3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgeworICAgIGxv
ZyhldnQuZGF0YSk7CisgICAgaWYgKGV2dC5kYXRhID09ICJET05FIikKKyAgICAgICAgZW5kVGVz
dCgpOworfTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWlu
LXNoYXJlZC13b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLXNoYXJlZC13b3JrZXItZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhYzMzZWUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L3dvcmtlcnMvY2xvc2UtaW4tc2hhcmVkLXdvcmtlci1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxMiBAQAorVGVzdCBmb3IgV2ViIFNvY2tldCBjbG9zZSBpbiBTaGFyZWRXb3JrZXIuCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUzogd29ya2VyOiBpbml0CitQQVNTOiB3b3Jr
ZXI6IFdlYlNvY2tldCBleGlzdHMKK1BBU1M6IHdvcmtlcjogc3VjY2Vzc2Z1bGx5UGFyc2VkOltv
YmplY3QgV2ViU29ja2V0XQorUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuCitQQVNTOiB3b3JrZXI6
IENsb3NlZC4KK0RPTkUKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL2Nsb3NlLWluLXNoYXJl
ZC13b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvd29ya2Vycy9jbG9zZS1pbi1zaGFyZWQtd29ya2VyLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uOTFiNzdkNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9jbG9zZS1pbi1z
aGFyZWQtd29ya2VyLmh0bWwKQEAgLTAsMCArMSwzNSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD48L2hlYWQ+Cis8Ym9keT4K
KzxwPlRlc3QgZm9yIFdlYiBTb2NrZXQgY2xvc2UgaW4gU2hhcmVkV29ya2VyLjwvcD4KKzxwPjwv
cD4KKzxwPk9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi48L3A+Cis8cHJlIGlkPWxvZz4KKzwvcHJl
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
d2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiBsb2cobWVzc2FnZSkKK3sKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgibG9nIikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiXG4iOwor
fQorCitmdW5jdGlvbiBlbmRUZXN0KCkKK3sKKyAgICBsb2coIlRFU1QgQ09NUExFVEUiKTsKKyAg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7Cit9Cit2YXIgd29ya2VyID0gbmV3IFNoYXJlZFdvcmtlcign
cmVzb3VyY2VzL2Nsb3NlLWluLXdvcmtlci5qcycsICd3ZWJzb2NrZXRDbG9zZUluV29ya2VyJyk7
Cit3b3JrZXIucG9ydC5vbm1lc3NhZ2UgPSBmdW5jdGlvbiAoZXZ0KSB7CisgICAgbG9nKGV2dC5k
YXRhKTsKKyAgICBpZiAoZXZ0LmRhdGEgPT0gIkRPTkUiKQorICAgICAgICBlbmRUZXN0KCk7Cit9
OworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvY2xvc2UtaW4td29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvd29ya2Vycy9jbG9zZS1pbi13b3JrZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiOWY5MDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvY2xvc2UtaW4t
d29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitUZXN0IGZvciBXZWIgU29ja2V0
IGNsb3NlIGluIFdvcmtlci4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTOiB3
b3JrZXI6IGluaXQKK1BBU1M6IHdvcmtlcjogV2ViU29ja2V0IGV4aXN0cworUEFTUzogd29ya2Vy
OiBzdWNjZXNzZnVsbHlQYXJzZWQ6W29iamVjdCBXZWJTb2NrZXRdCitQQVNTOiB3b3JrZXI6IENv
bm5lY3RlZC4KK1BBU1M6IHdvcmtlcjogQ2xvc2VkLgorRE9ORQorVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L3dvcmtlcnMvY2xvc2UtaW4td29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvY2xvc2UtaW4td29ya2VyLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2M2MzFkMgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9j
bG9zZS1pbi13b3JrZXIuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPjwvaGVhZD4KKzxib2R5
PgorPHA+VGVzdCBmb3IgV2ViIFNvY2tldCBjbG9zZSBpbiBXb3JrZXIuPC9wPgorPHA+PC9wPgor
PHA+T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLjwvcD4KKzxwcmUgaWQ9bG9nPgorPC9wcmU+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0
VW50aWxEb25lKCk7Cit9CisKK2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICJcbiI7Cit9CisK
K2Z1bmN0aW9uIGVuZFRlc3QoKQoreworICAgIGxvZygiVEVTVCBDT01QTEVURSIpOworICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLm5vdGlmeURvbmUoKTsKK30KK3ZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMv
Y2xvc2UtaW4td29ya2VyLmpzJyk7Cit3b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkg
eworICAgIGxvZyhldnQuZGF0YSk7CisgICAgaWYgKGV2dC5kYXRhID09ICJET05FIikKKyAgICAg
ICAgZW5kVGVzdCgpOworfTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJz
L3Jlc291cmNlcy9jbG9zZS1pbi1vbm1lc3NhZ2UtY3Jhc2guanMgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWlu
LW9ubWVzc2FnZS1jcmFzaC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43
OGMwNDY3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9jbG9zZS1pbi1vbm1lc3NhZ2UtY3Jh
c2guanMKQEAgLTAsMCArMSwzMCBAQAorZnVuY3Rpb24gcnVuVGVzdHMoKQoreworICAgIHRyeSB7
CisgICAgICAgIHZhciB1cmwgPSAnd3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9zaW1wbGUnOworICAgICAgICB2YXIgd3MgPSBuZXcg
V2ViU29ja2V0KHVybCk7CisKKyAgICAgICAgd3Mub25vcGVuID0gZnVuY3Rpb24oKQorICAgICAg
ICB7CisgICAgICAgICAgICBwb3N0TWVzc2FnZSgnUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuJyk7
CisgICAgICAgIH07CisKKyAgICAgICAgd3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2
ZW50KQorICAgICAgICB7CisgICAgICAgICAgICBwb3N0TWVzc2FnZSgnUEFTUzogd29ya2VyOiBS
ZWNlaXZlZCBtZXNzYWdlOiAiJyArIG1lc3NhZ2VFdmVudC5kYXRhICsgJyInKTsKKyAgICAgICAg
ICAgIHdzLmNsb3NlKCk7CisgICAgICAgIH07CisKKyAgICAgICAgd3Mub25jbG9zZSA9IGZ1bmN0
aW9uKCkKKyAgICAgICAgeworICAgICAgICAgICAgcG9zdE1lc3NhZ2UoJ1BBU1M6IHdvcmtlcjog
Q2xvc2VkLicpOworICAgICAgICAgICAgcG9zdE1lc3NhZ2UoJ0RPTkUnKTsKKyAgICAgICAgfTsK
KyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIHBvc3RNZXNzYWdlKCdGQUlMOiB3b3JrZXI6IFVu
ZXhwZWN0ZWQgZXhjZXB0aW9uOiAnICsgZSk7CisgICAgfSBmaW5hbGx5IHsKKyAgICAgICAgcG9z
dE1lc3NhZ2UoJ1BBU1M6IHdvcmtlcjogUGFyc2VkIHN1Y2Nlc3NmdWxseS4nKTsKKyAgICB9Cit9
CisKK3J1blRlc3RzKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWluLXdvcmtlci5qcyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9y
ZXNvdXJjZXMvY2xvc2UtaW4td29ya2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmFhNzJlODEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWluLXdvcmtl
ci5qcwpAQCAtMCwwICsxLDM2IEBACitpZiAoc2VsZi5wb3N0TWVzc2FnZSkKKyAgICBydW5UZXN0
cygpOworZWxzZQorICAgIG9uY29ubmVjdCA9IGhhbmRsZUNvbm5lY3Q7CisKK2Z1bmN0aW9uIGhh
bmRsZUNvbm5lY3QoZXZlbnQpCit7CisgICAgLy8gRm9yIHNoYXJlZCB3b3JrZXJzLCBjcmVhdGUg
YSBmYXV4IHBvc3RNZXNzYWdlKCkgQVBJIHRvIHNlbmQgbWVzc2FnZSBiYWNrIHRvIHRoZSBwYXJl
bnQgcGFnZS4KKyAgICBzZWxmLnBvc3RNZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2UpIHsgZXZl
bnQucG9ydHNbMF0ucG9zdE1lc3NhZ2UobWVzc2FnZSk7IH07CisgICAgcnVuVGVzdHMoKTsKK307
CisKK2Z1bmN0aW9uIHJ1blRlc3RzKCkKK3sKKyAgICB2YXIgd3M7CisgICAgdHJ5IHsKKyAgICAg
ICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogaW5pdCIpOworICAgICAgICBpZiAoJ1dlYlNv
Y2tldCcgaW4gc2VsZikKKyAgICAgICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6IFdl
YlNvY2tldCBleGlzdHMiKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcG9zdE1lc3NhZ2Uo
IkZBSUw6IHdvcmtlcjogbm8gV2ViU29ja2V0Iik7CisgICAgICAgIHdzID0gbmV3IFdlYlNvY2tl
dCgnd3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jl
c291cmNlcy9lY2hvJyk7CisgICAgICAgIHdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkgeworICAgICAg
ICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogQ29ubmVjdGVkLiIpOworICAgICAgICAg
ICAgd3MuY2xvc2UoKTsKKyAgICAgICAgfTsKKyAgICAgICAgd3Mub25jbG9zZSA9IGZ1bmN0aW9u
KCkgeworICAgICAgICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogQ2xvc2VkLiIpOwor
ICAgICAgICAgICAgcG9zdE1lc3NhZ2UoIkRPTkUiKTsKKyAgICAgICAgfTsKKyAgICB9IGNhdGNo
IChlKSB7CisgICAgICAgIHBvc3RNZXNzYWdlKCJGQUlMOiB3b3JrZXI6IFVuZXhwZWN0ZWQgZXhj
ZXB0aW9uOiAiICsgZSk7CisgICAgfSBmaW5hbGx5IHsKKyAgICAgICAgcG9zdE1lc3NhZ2UoIlBB
U1M6IHdvcmtlcjogc3VjY2Vzc2Z1bGx5UGFyc2VkOiIgKyB3cyk7CisgICAgfQorfTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29y
a2Vycy9yZXNvdXJjZXMvZWNoby1jaGFsbGVuZ2Vfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9lY2hvLWNoYWxs
ZW5nZV93c2gucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzkwZDQ0MQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L2hpeGllNzYvd29ya2Vycy9yZXNvdXJjZXMvZWNoby1jaGFsbGVuZ2Vfd3NoLnB5CkBAIC0wLDAg
KzEsMTMgQEAKK2Zyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCisKKworZGVmIHdl
Yl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgorICAgIHBhc3MKKworCitkZWYg
d2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgorICAgIG1zZ3V0aWwuc2VuZF9tZXNz
YWdlKHJlcXVlc3QsIF9oZXhpZnkocmVxdWVzdC53c19jaGFsbGVuZ2UpKQorCisKK2RlZiBfaGV4
aWZ5KGJ5dGVzKToKKyAgICByZXR1cm4gJzonLmpvaW4oWyclMDJYJyAlIG9yZChieXRlKSBmb3Ig
Ynl0ZSBpbiBieXRlc10pCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2VjaG9fd3NoLnB5IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNl
cy9lY2hvX3dzaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MjlmNTgx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9lY2hvX3dzaC5weQpAQCAtMCwwICsxLDQ2IEBA
CisjIENvcHlyaWdodCAyMDEwLCBHb29nbGUgSW5jLgorIyBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9u
LgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisj
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKworCitmcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRp
bAorCisKK19HT09EQllFX01FU1NBR0UgPSAnR29vZGJ5ZScKKworCitkZWYgd2ViX3NvY2tldF9k
b19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcGFzcyAgIyBBbHdheXMgYWNjZXB0Lgor
CisKK2RlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6CisgICAgd2hpbGUgVHJ1
ZToKKyAgICAgICAgbGluZSA9IG1zZ3V0aWwucmVjZWl2ZV9tZXNzYWdlKHJlcXVlc3QpCisgICAg
ICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsIGxpbmUpCisgICAgICAgIGlmIGxpbmUg
PT0gX0dPT0RCWUVfTUVTU0FHRToKKyAgICAgICAgICAgIHJldHVybgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291
cmNlcy9zaW1wbGVfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy9zaW1wbGVfd3NoLnB5Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjMDI3MWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2Vz
L3NpbXBsZV93c2gucHkKQEAgLTAsMCArMSwzOCBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMDkgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKKyMgbWV0OgorIworIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjICAgICAqIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyMgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorIyB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
IworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKworZnJv
bSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKKworCitkZWYgd2ViX3NvY2tldF9kb19l
eHRyYV9oYW5kc2hha2UocmVxdWVzdCk6CisgICAgcGFzcyAjIEFsd2F5cyBhY2NlcHQuCisKKwor
ZGVmIHdlYl9zb2NrZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKKyAgICBtc2d1dGlsLnNlbmRf
bWVzc2FnZShyZXF1ZXN0LCAnSGVsbG8gZnJvbSBTaW1wbGUgV1NILicpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVz
b3VyY2VzL3dvcmtlci1oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuanMgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2Vz
L3dvcmtlci1oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uZGE2NTFjYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9yZXNvdXJjZXMv
d29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5qcwpAQCAtMCwwICsxLDQ4IEBA
Cit2YXIgY2hhbGxlbmdlMTsKK3ZhciBjaGFsbGVuZ2UyOworCitmdW5jdGlvbiBlbmRUZXN0KCkK
K3sKKyAgICBpZiAoY2hhbGxlbmdlMSA9PT0gY2hhbGxlbmdlMikKKyAgICAgICAgcG9zdE1lc3Nh
Z2UoJ0ZBSUw6IHdvcmtlcjogY2hhbGxlbmdlMSA9PT0gY2hhbGxlbmdlMiAoY2hhbGxlbmdlIHdh
cyAnICsgY2hhbGxlbmdlMSArICcpJyk7CisgICAgZWxzZQorICAgICAgICBwb3N0TWVzc2FnZSgn
UEFTUzogd29ya2VyOiBjaGFsbGVuZ2UxICE9PSBjaGFsbGVuZ2UyJyk7CisKKyAgICBwb3N0TWVz
c2FnZSgnRE9ORScpOworfQorCitmdW5jdGlvbiBydW5UZXN0cygpCit7CisgICAgdHJ5IHsKKyAg
ICAgICAgdmFyIHVybCA9ICd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0cy9oaXhp
ZTc2L3dvcmtlcnMvcmVzb3VyY2VzL2VjaG8tY2hhbGxlbmdlJzsKKyAgICAgICAgdmFyIHdzMSA9
IG5ldyBXZWJTb2NrZXQodXJsKTsKKworICAgICAgICB3czEub25tZXNzYWdlID0gZnVuY3Rpb24o
bWVzc2FnZUV2ZW50KQorICAgICAgICB7CisgICAgICAgICAgICBjaGFsbGVuZ2UxID0gbWVzc2Fn
ZUV2ZW50LmRhdGE7CisgICAgICAgICAgICB3czEuY2xvc2UoKTsKKyAgICAgICAgfQorCisgICAg
ICAgIHdzMS5vbmNsb3NlID0gZnVuY3Rpb24oKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIg
d3MyID0gbmV3IFdlYlNvY2tldCh1cmwpOworCisgICAgICAgICAgICB3czIub25tZXNzYWdlID0g
ZnVuY3Rpb24obWVzc2FnZUV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNo
YWxsZW5nZTIgPSBtZXNzYWdlRXZlbnQuZGF0YTsKKyAgICAgICAgICAgICAgICB3czIuY2xvc2Uo
KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgd3MyLm9uY2xvc2UgPSBmdW5jdGlvbigp
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZW5kVGVzdCgpOworICAgICAgICAgICAg
fQorICAgICAgICB9CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBwb3N0TWVzc2FnZSgnRkFJ
TDogd29ya2VyOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbjogJyArIGUpOworICAgIH0gZmluYWxseSB7
CisgICAgICAgIHBvc3RNZXNzYWdlKCdQQVNTOiB3b3JrZXI6IFBhcnNlZCBzdWNjZXNzZnVsbHku
Jyk7CisgICAgfQorfQorCitydW5UZXN0cygpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3Jlc291cmNlcy93b3JrZXIt
c2ltcGxlLmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni93b3JrZXJzL3Jlc291cmNlcy93b3JrZXItc2ltcGxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmVmN2JmZDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtl
ci1zaW1wbGUuanMKQEAgLTAsMCArMSwzOCBAQAoraWYgKHNlbGYucG9zdE1lc3NhZ2UpCisgICAg
cnVuVGVzdHMoKTsKK2Vsc2UKKyAgICBvbmNvbm5lY3QgPSBoYW5kbGVDb25uZWN0OworCitmdW5j
dGlvbiBoYW5kbGVDb25uZWN0KGV2ZW50KQoreworICAgIC8vIEZvciBzaGFyZWQgd29ya2Vycywg
Y3JlYXRlIGEgZmF1eCBwb3N0TWVzc2FnZSgpIEFQSSB0byBzZW5kIG1lc3NhZ2UgYmFjayB0byB0
aGUgcGFyZW50IHBhZ2UuCisgICAgc2VsZi5wb3N0TWVzc2FnZSA9IGZ1bmN0aW9uIChtZXNzYWdl
KSB7IGV2ZW50LnBvcnRzWzBdLnBvc3RNZXNzYWdlKG1lc3NhZ2UpOyB9OworICAgIHJ1blRlc3Rz
KCk7Cit9OworCitmdW5jdGlvbiBydW5UZXN0cygpCit7CisgICAgdmFyIHdzOworICAgIHRyeSB7
CisgICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6IGluaXQiKTsKKyAgICAgICAgaWYg
KCdXZWJTb2NrZXQnIGluIHNlbGYpCisgICAgICAgICAgICBwb3N0TWVzc2FnZSgiUEFTUzogd29y
a2VyOiBXZWJTb2NrZXQgZXhpc3RzIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHBvc3RN
ZXNzYWdlKCJQQVNTOiB3b3JrZXI6IG5vIFdlYlNvY2tldCIpOworICAgICAgICB3cyA9IG5ldyBX
ZWJTb2NrZXQoJ3dzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29y
a2Vycy9yZXNvdXJjZXMvc2ltcGxlJyk7CisgICAgICAgIHdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkg
eworICAgICAgICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogQ29ubmVjdGVkLiIpOwor
ICAgICAgICB9OworICAgICAgICB3cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbihldnQpIHsKKyAgICAg
ICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6IFJlY2VpdmVkOiAnIiArIGV2dC5kYXRh
ICsgIiciKTsKKyAgICAgICAgfTsKKyAgICAgICAgd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogQ2xvc2VkLiIpOworICAgICAg
ICAgICAgcG9zdE1lc3NhZ2UoIkRPTkUiKTsKKyAgICAgICAgfTsKKyAgICB9IGNhdGNoIChlKSB7
CisgICAgICAgIHBvc3RNZXNzYWdlKCJGQUlMOiB3b3JrZXI6IFVuZXhwZWN0ZWQgZXhjZXB0aW9u
OiAiICsgZSk7CisgICAgfSBmaW5hbGx5IHsKKyAgICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdv
cmtlcjogc3VjY2Vzc2Z1bGx5UGFyc2VkOiIgKyB3cyk7CisgICAgfQorfTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9z
aGFyZWQtd29ya2VyLXNpbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMvc2hhcmVkLXdvcmtlci1zaW1wbGUtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2YjZiZGMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L3dvcmtlcnMvc2hhcmVkLXdvcmtlci1zaW1wbGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTMgQEAKK1Rlc3QgZm9yIFdlYiBTb2NrZXQgaW4gU2hhcmVkV29ya2VyLgorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1M6IHdvcmtlcjogaW5pdAorUEFTUzogd29ya2VyOiBX
ZWJTb2NrZXQgZXhpc3RzCitQQVNTOiB3b3JrZXI6IHN1Y2Nlc3NmdWxseVBhcnNlZDpbb2JqZWN0
IFdlYlNvY2tldF0KK1BBU1M6IHdvcmtlcjogQ29ubmVjdGVkLgorUEFTUzogd29ya2VyOiBSZWNl
aXZlZDogJ0hlbGxvIGZyb20gU2ltcGxlIFdTSC4nCitQQVNTOiB3b3JrZXI6IENsb3NlZC4KK0RP
TkUKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3NoYXJlZC13b3JrZXItc2ltcGxlLmh0bWwg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtlcnMv
c2hhcmVkLXdvcmtlci1zaW1wbGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi5kMjc5NjA2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3NoYXJlZC13b3JrZXItc2ltcGxlLmh0bWwK
QEAgLTAsMCArMSwzNSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgorPGh0bWw+Cis8aGVhZD48L2hlYWQ+Cis8Ym9keT4KKzxwPlRlc3QgZm9yIFdlYiBT
b2NrZXQgaW4gU2hhcmVkV29ya2VyLjwvcD4KKzxwPjwvcD4KKzxwPk9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi48L3A+Cis8cHJlIGlkPWxvZz4KKzwvcHJlPgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCitm
dW5jdGlvbiBsb2cobWVzc2FnZSkKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9n
IikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiXG4iOworfQorCitmdW5jdGlvbiBlbmRUZXN0KCkK
K3sKKyAgICBsb2coIlRFU1QgQ09NUExFVEUiKTsKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9
Cit2YXIgd29ya2VyID0gbmV3IFNoYXJlZFdvcmtlcigncmVzb3VyY2VzL3dvcmtlci1zaW1wbGUu
anMnLCAnd2Vic29ja2V0U2ltcGxlJyk7Cit3b3JrZXIucG9ydC5vbm1lc3NhZ2UgPSBmdW5jdGlv
biAoZXZ0KSB7CisgICAgbG9nKGV2dC5kYXRhKTsKKyAgICBpZiAoZXZ0LmRhdGEgPT0gIkRPTkUi
KQorICAgICAgICBlbmRUZXN0KCk7Cit9OworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L3dvcmtlcnMvd29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3dvcmtl
cnMvd29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMThjOTg4MAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vy
cy93b3JrZXItaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDkgQEAKK0hhbmRzaGFrZSByZXF1ZXN0IHNob3VsZCBjb250YWluIHJhbmRvbSBjaGFs
bGVuZ2UgdmFsdWVzIChpbiBhIHdvcmtlciBwcm9jZXNzKS4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCitQQVNTOiB3b3JrZXI6IFBhcnNlZCBzdWNjZXNzZnVsbHkuCitQQVNTOiB3b3Jr
ZXI6IGNoYWxsZW5nZTEgIT09IGNoYWxsZW5nZTIKK0RPTkUKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93
b3JrZXJzL3dvcmtlci1oYW5kc2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRtbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy93b3JrZXIt
aGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYjg0NmRhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy93b3JrZXItaGFuZHNoYWtl
LWNoYWxsZW5nZS1yYW5kb21uZXNzLmh0bWwKQEAgLTAsMCArMSwzNSBAQAorPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD48L2hlYWQ+
Cis8Ym9keT4KKzxwPkhhbmRzaGFrZSByZXF1ZXN0IHNob3VsZCBjb250YWluIHJhbmRvbSBjaGFs
bGVuZ2UgdmFsdWVzIChpbiBhIHdvcmtlciBwcm9jZXNzKS48L3A+Cis8cD48L3A+Cis8cD5PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuPC9wPgorPHByZSBpZD1sb2c+Cis8L3ByZT4KKzxzY3JpcHQ+
CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERv
bmUoKTsKK30KKworZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIlxuIjsKK30KKworZnVuY3Rp
b24gZW5kVGVzdCgpCit7CisgICAgbG9nKCJURVNUIENPTVBMRVRFIik7CisgICAgaWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90
aWZ5RG9uZSgpOworfQordmFyIHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXIt
aGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLmpzJyk7Cit3b3JrZXIub25tZXNzYWdlID0g
ZnVuY3Rpb24gKGV2dCkgeworICAgIGxvZyhldnQuZGF0YSk7CisgICAgaWYgKGV2dC5kYXRhID09
ICJET05FIikKKyAgICAgICAgZW5kVGVzdCgpOworfTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni93b3JrZXJzL3dvcmtlci1zaW1wbGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3dvcmtlci1zaW1wbGUt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE2NWE4NDIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3dvcmtlcnMvd29ya2VyLXNpbXBsZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MyBAQAorVGVzdCBmb3IgV2ViIFNvY2tldCBpbiBXb3JrZXIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworUEFTUzogd29ya2VyOiBpbml0CitQQVNTOiB3b3JrZXI6IFdlYlNvY2tldCBl
eGlzdHMKK1BBU1M6IHdvcmtlcjogc3VjY2Vzc2Z1bGx5UGFyc2VkOltvYmplY3QgV2ViU29ja2V0
XQorUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuCitQQVNTOiB3b3JrZXI6IFJlY2VpdmVkOiAnSGVs
bG8gZnJvbSBTaW1wbGUgV1NILicKK1BBU1M6IHdvcmtlcjogQ2xvc2VkLgorRE9ORQorVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3dvcmtlcnMvd29ya2VyLXNpbXBsZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93b3JrZXJzL3dvcmtlci1zaW1wbGUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYzI0ZTcyCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni93
b3JrZXJzL3dvcmtlci1zaW1wbGUuaHRtbApAQCAtMCwwICsxLDM1IEBACis8IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPjwvaGVhZD4K
Kzxib2R5PgorPHA+VGVzdCBmb3IgV2ViIFNvY2tldCBpbiBXb3JrZXIuPC9wPgorPHA+PC9wPgor
PHA+T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLjwvcD4KKzxwcmUgaWQ9bG9nPgorPC9wcmU+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0
VW50aWxEb25lKCk7Cit9CisKK2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJsb2ciKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICJcbiI7Cit9CisK
K2Z1bmN0aW9uIGVuZFRlc3QoKQoreworICAgIGxvZygiVEVTVCBDT01QTEVURSIpOworICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLm5vdGlmeURvbmUoKTsKK30KK3ZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMv
d29ya2VyLXNpbXBsZS5qcycpOword29ya2VyLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsK
KyAgICBsb2coZXZ0LmRhdGEpOworICAgIGlmIChldnQuZGF0YSA9PSAiRE9ORSIpCisgICAgICAg
IGVuZFRlc3QoKTsKK307Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2h0dHBvbmx5LWNvb2tpZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9odHRw
b25seS1jb29raWUtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
YjkyZWMzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2h0dHBvbmx5LWNvb2tpZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSAr
MCwwIEBACi1UZXN0IFdlYlNvY2tldCBzZW5kcyBIdHRwT25seSBjb29raWVzLgotCi1PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCi0KLVdlYlNvY2tldCBvcGVuCi1XZWJTb2NrZXQgY2xvc2VkCi1Q
QVNTIGNvb2tpZSBpcyAiV0std2Vic29ja2V0LXRlc3QtaHR0cG9ubHk9MTsgV0std2Vic29ja2V0
LXRlc3Q9MSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVU
RQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
dHRwb25seS1jb29raWUucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9odHRwb25seS1jb29raWUucGwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IGY3MTNh
MWIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aHR0cG9ubHktY29va2llLnBsCisrKyAvZGV2L251bGwKQEAgLTEsNTkgKzAsMCBAQAotIyEvdXNy
L2Jpbi9wZXJsIC13VAotdXNlIHN0cmljdDsKLQotcHJpbnQgIkNvbnRlbnQtVHlwZTogdGV4dC9o
dG1sXHJcbiI7Ci1wcmludCAiU2V0LUNvb2tpZTogV0std2Vic29ja2V0LXRlc3Q9MVxyXG4iOwot
cHJpbnQgIlNldC1Db29raWU6IFdLLXdlYnNvY2tldC10ZXN0LWh0dHBvbmx5PTE7IEh0dHBPbmx5
XHJcbiI7Ci1wcmludCAiXHJcbiI7Ci1wcmludCA8PEhUTUwKLTxodG1sPgotPGhlYWQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC1mdW5jdGlvbi5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxwPlRlc3QgV2ViU29j
a2V0IHNlbmRzIEh0dHBPbmx5IGNvb2tpZXMuPC9wPgotPHA+T24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLjwvcD4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLWlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwotfQotCi12
YXIgY29va2llOwotCi0vLyBOb3JtYWxpemUgYSBjb29raWUgc3RyaW5nCi1mdW5jdGlvbiBub3Jt
YWxpemVDb29raWUoY29va2llKQotewotICAgIC8vIFNwbGl0IHRoZSBjb29raWUgc3RyaW5nLCBz
b3J0IGl0IGFuZCB0aGVuIHB1dCBpdCBiYWNrIHRvZ2V0aGVyLgotICAgIHJldHVybiBjb29raWUu
c3BsaXQoJzsgJykuc29ydCgpLmpvaW4oJzsgJyk7Ci19Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQot
ewotICAgIGNvb2tpZSA9IG5vcm1hbGl6ZUNvb2tpZShjb29raWUpOwotICAgIHNob3VsZEJlKCJj
b29raWUiLCAnIldLLXdlYnNvY2tldC10ZXN0LWh0dHBvbmx5PTE7IFdLLXdlYnNvY2tldC10ZXN0
PTEiJyk7Ci0gICAgaXNTdWNjZXNzZnVsbHlQYXJzZWQoKTsKLSAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQotICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUo
KTsKLX0KLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJz
b2NrZXQvdGVzdHMvZWNoby1jb29raWUiKTsKLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkgewotICAg
IGRlYnVnKCJXZWJTb2NrZXQgb3BlbiIpOwotfTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2
dCkgewotICAgIGNvb2tpZSA9IGV2dC5kYXRhOwotICAgIHdzLmNsb3NlKCk7Ci19Owotd3Mub25j
bG9zZSA9IGZ1bmN0aW9uKCkgewotICAgIGRlYnVnKCJXZWJTb2NrZXQgY2xvc2VkIik7Ci0gICAg
ZW5kVGVzdCgpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KLUhUTUwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbG9uZy1pbnZhbGlkLWhlYWRl
ci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcwZmE0ZjEuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbG9uZy1p
bnZhbGlkLWhlYWRlci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBA
Ci1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogVW5leHBlY3RlZCBDUiBpbiBuYW1lIGF0IHBwcHBw
cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBw
cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBw
cHBwcHBwcHBw4oCmCi1NYWtlIHN1cmUgV2ViU29ja2V0IGdpdmVzIGVycm9ycyBvbiBsb25nIGlu
dmFsaWQgdXBncmFkZSBoZWFkZXIuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotV2Vi
U29ja2V0IGlzIGNsb3NlZAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXIuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMzU5Y2ViMi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9sb25nLWludmFsaWQtaGVhZGVyLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSwzNCArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJj
b25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0
aW9uKCJNYWtlIHN1cmUgV2ViU29ja2V0IGdpdmVzIGVycm9ycyBvbiBsb25nIGludmFsaWQgdXBn
cmFkZSBoZWFkZXIuIik7Ci0KLXdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotZnVuY3Rp
b24gZmluaXNoKCkgewotICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGZpbmlzaEpT
VGVzdCgpOwotfQotCi12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9sb25nLWludmFsaWQtaGVhZGVyIik7Ci13cy5vbm9wZW4gPSBmdW5j
dGlvbiAoKSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7Ci19Owotd3Mub25jbG9z
ZSA9IGZ1bmN0aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIGNsb3NlZCIpOwotICAg
IGZpbmlzaCgpOwotfTsKLXZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KCJmaW5pc2goKSIsIDIw
MDApOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9sb25nLWludmFsaWQtaGVhZGVyX3dzaC5weSBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXJfd3NoLnB5CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0YTE2OWYzLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2xvbmctaW52YWxpZC1oZWFkZXJfd3No
LnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotZGVmIHdlYl9zb2NrZXRfZG9fZXh0
cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIG1zZyA9ICJIVFRQLzEuMSAxMDEgV2ViU29ja2V0
IFByb3RvY29sIEhhbmRzaGFrZVxyXG4iCi0gICAgbXNnICs9ICgicCIgKiAxMDI0KSArICJcclxu
IgotICAgIG1zZyArPSAiXHJcbiIKLSAgICBtc2cgKz0gcmVxdWVzdC53c19jaGFsbGVuZ2VfbWQ1
Ci0gICAgcmVxdWVzdC5jb25uZWN0aW9uLndyaXRlKG1zZykKLSAgICByYWlzZSBFeGNlcHRpb24o
IkFib3J0IHRoZSBjb25uZWN0aW9uIikgIyBQcmV2ZW50cyBweXdlYnNvY2tldCBmcm9tIHNlbmRp
bmcgaXRzIG93biBoYW5kc2hha2UgbWVzc2FnZS4KLQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zl
cl9kYXRhKHJlcXVlc3QpOgotICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL211bHRpcGxlLWNvbm5lY3Rpb25zLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL211bHRpcGxlLWNvbm5lY3Rp
b25zLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2VlMWVmYi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9tdWx0
aXBsZS1jb25uZWN0aW9ucy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwzICswLDAg
QEAKLVRlc3QgdGhhdCBXZWJTb2NrZXQgaXMgbm90IHN1YmplY3QgdG8gSFRUUCBjb25uZWN0aW9u
IGxpbWl0LiBTaG91bGQgc2F5IFBBU1M6Ci0KLVBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL211bHRpcGxlLWNvbm5lY3Rpb25zLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9tdWx0aXBsZS1jb25uZWN0aW9u
cy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MGY3MjJkLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL211bHRpcGxlLWNvbm5l
Y3Rpb25zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08cD5UZXN0IHRoYXQg
V2ViU29ja2V0IGlzIG5vdCBzdWJqZWN0IHRvIEhUVFAgY29ubmVjdGlvbiBsaW1pdC4gU2hvdWxk
IHNheSBQQVNTOjwvcD4KLTxwIGlkPXJlc3VsdD5SdW5uaW5nLi4uPC9wPgotPHNjcmlwdD4KLWlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wQXNUZXh0KCk7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgp
OwotfQotCi12YXIgc29ja2V0Q291bnQgPSA1MDsKLXZhciByZXN1bHQgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVzdWx0Iik7Ci12YXIgc29ja2V0cyA9IFtdOwotCi1mb3IgKGkgPSAwOyBp
IDwgc29ja2V0Q291bnQ7ICsraSkgewotICAgIHZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8v
MTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2VjaG8iKTsKLSAgICBzb2NrZXRzW2ldID0g
d3M7Ci0gICAgd3Mub25vcGVuID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgIHZhciBudW0gPSBwYXJz
ZUludChyZXN1bHQuaW5uZXJIVE1MKTsKLSAgICAgICAgaWYgKCFudW0pCi0gICAgICAgICAgICBu
dW0gPSAwOwotICAgICAgICBpZiAobnVtICE9IHNvY2tldENvdW50IC0gMSkKLSAgICAgICAgICAg
IHJlc3VsdC5pbm5lckhUTUwgPSBudW0gKyAxOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAg
IHJlc3VsdC5pbm5lckhUTUwgPSAiUEFTUyI7Ci0gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwg
c29ja2V0Q291bnQ7ICsraikgewotICAgICAgICAgICAgICAgIHNvY2tldHNbal0ub25jbG9zZSA9
IG51bGw7Ci0gICAgICAgICAgICAgICAgc29ja2V0c1tqXS5jbG9zZSgpOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAg
ICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkgeyBhbGVydCgiRkFJTDogdW5leHBlY3Rl
ZCBjbG9zZSBldmVudCIpIH0KLX0KLTwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbm8tcXVlcnlfd3NoLnB5IGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbm8tcXVlcnlfd3NoLnB5CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAyYjc5NjE1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL25vLXF1ZXJ5X3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0x
LDM4ICswLDAgQEAKLSMgQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0jCi0jIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0jIG1ldDoKLSMKLSMg
ICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0jIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSMgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotIyBk
aXN0cmlidXRpb24uCi0jICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9y
IHRoZSBuYW1lcyBvZiBpdHMKLSMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSMKLSMgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotIyAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAotIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSMgT1dORVIgT1IgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0j
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QKLSMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0jIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotIyBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0j
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0KLWZyb20gbW9kX3B5d2Vic29ja2V0IGlt
cG9ydCBtc2d1dGlsCi0KLQotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVl
c3QpOgotICAgIHJlcXVlc3Qud3NfbG9jYXRpb24gPSByZXF1ZXN0LndzX3Jlc291cmNlLnNwbGl0
KCc/JywgMSlbMF0KLQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgot
ICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsIHJlcXVlc3Qud3NfbG9jYXRpb24pCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9udWxsLWNo
YXJhY3Rlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9udWxsLWNoYXJhY3Rlci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDZmY2EzNzcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvbnVsbC1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTIgKzAsMCBAQAotTWFrZSBzdXJlIFdlYlNvY2tldCB0cmFuc2ZlciBudWxsIGNoYXJhY3Rl
cgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVdlYlNvY2tldCBvcGVuCi1tc2cgc2hv
dWxkIG5vdCBiZSBzcGxpdCBieSBmcmFtZSBjaGFyIFx4ZmZcMAotUEFTUyBtc2cgaXMgZXhwZWN0
ZWRNZXNzYWdlCi1XZWJTb2NrZXQgY2xvc2VkCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvbnVsbC1jaGFyYWN0ZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL251bGwtY2hhcmFjdGVyLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDdlYzYzNmYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvbnVsbC1jaGFyYWN0ZXIuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDQ0ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
Ly4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hl
YWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNv
bGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24o
Ik1ha2Ugc3VyZSBXZWJTb2NrZXQgdHJhbnNmZXIgbnVsbCBjaGFyYWN0ZXIiKTsKLQotd2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEy
Ny4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9lY2hvIik7Ci0vLyBceGZmIGluIHN0cmluZyB3
b3VsZCBiZSBceGMzXHhiZiBvbiB3ZWJzb2NrZXQgY29ubmVjdGlvbiAoVVRGLTgpCi12YXIgZXhw
ZWN0ZWRNZXNzYWdlID0gIlNob3VsZCBOb3RceGZmXDBTcGxpdCI7Ci0KLXdzLm9ub3BlbiA9IGZ1
bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IG9wZW4iKTsKLSAgICB3cy5zZW5kKGV4
cGVjdGVkTWVzc2FnZSk7Ci19OwotCi12YXIgbXNnOwotd3Mub25tZXNzYWdlID0gZnVuY3Rpb24o
bWVzc2FnZUV2ZW50KQotewotICAgIG1zZyA9IG1lc3NhZ2VFdmVudC5kYXRhOwotICAgIGRlYnVn
KCJtc2cgc2hvdWxkIG5vdCBiZSBzcGxpdCBieSBmcmFtZSBjaGFyIFxceGZmXFwwIik7Ci0gICAg
c2hvdWxkQmUoIm1zZyIsICJleHBlY3RlZE1lc3NhZ2UiKTsKLSAgICB3cy5jbG9zZSgpOwotfTsK
LQotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGNsb3Nl
ZCIpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvb3JpZ2luLXRlc3Rfd3No
LnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvb3JpZ2luLXRlc3Rf
d3NoLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ODhkNmFmLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL29yaWdpbi10ZXN0X3dz
aC5weQorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLSMgQ29weXJpZ2h0IChDKSAyMDA5
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0jCi0jIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotIyBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCi0jIG1ldDoKLSMKLSMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotIyAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0jIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKLSMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQotIyBkaXN0cmlidXRpb24uCi0jICAgICAqIE5laXRoZXIgdGhl
IG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSMgY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
LSMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSMKLSMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUwotIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSMgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKLSMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0jIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0jIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQotIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCi0jIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0K
LWZyb20gbW9kX3B5d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCi0KLQotZGVmIHdlYl9zb2NrZXRf
ZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHBhc3MgIyBBbHdheXMgYWNjZXB0Lgot
Ci0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgbXNndXRpbC5z
ZW5kX21lc3NhZ2UocmVxdWVzdCwgcmVxdWVzdC53c19vcmlnaW4pCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9wcm90b2NvbC10ZXN0X3dzaC5weSBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3Byb3RvY29sLXRlc3Rfd3No
LnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNDNkOGU2Li4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3Byb3RvY29sLXRlc3Rfd3No
LnB5CisrKyAvZGV2L251bGwKQEAgLTEsNDQgKzAsMCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMDkg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0jIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSMgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAgICogTmVpdGhlciB0aGUg
bmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotIyBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQot
IyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotIyBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSMgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0jIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLQot
aW1wb3J0IGNnaQotZnJvbSBtb2RfcHl3ZWJzb2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1kZWYg
d2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAgciA9IHJlcXVlc3Qu
d3NfcmVzb3VyY2Uuc3BsaXQoJz8nLCAxKQotICAgIGlmIGxlbihyKSA9PSAxOgotICAgICAgICBy
ZXR1cm4KLSAgICBwYXJhbSA9IGNnaS5wYXJzZV9xcyhyWzFdKQotICAgIGlmICdwcm90b2NvbCcg
aW4gcGFyYW06Ci0gICAgICAgIHJlcXVlc3Qud3NfcHJvdG9jb2wgPSBwYXJhbVsncHJvdG9jb2wn
XVswXQotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgbXNn
dXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgcmVxdWVzdC53c19wcm90b2NvbCkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3JlbG9hZC1jcmFzaC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9yZWxv
YWQtY3Jhc2gtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMTc1
ZGVlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3JlbG9hZC1jcmFzaC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBA
Ci1UZXN0IGlmIGl0IGRvZXNuJ3QgY3Jhc2ggd2hlbiByZWxvYWRpbmcgd2hpbGUgV2ViIFNvY2tl
dCBpcyBidXN5Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBpbnNlcnQgYSBp
ZnJhbWUKLVBBU1MgaWZyYW1lIGlzIHJlYWR5LgotUEFTUyByZWxvYWRlZCBpZnJhbWUgd2hpbGUg
V2ViU29ja2V0IGlzIGJ1c3kKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVT
VCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9yZWxvYWQtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3JlbG9hZC1jcmFzaC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBkNDIzYTg2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3JlbG9hZC1jcmFzaC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzkgKzAsMCBAQAot
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08
aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRp
diBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiVGVzdCBpZiBpdCBkb2Vz
bid0IGNyYXNoIHdoZW4gcmVsb2FkaW5nIHdoaWxlIFdlYiBTb2NrZXQgaXMgYnVzeSIpOwotCi13
aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciBmcmFtZURpdjsKLXZhciByZWxvYWRD
b3VudCA9IDA7Ci0KLWRvY3VtZW50LmlmcmFtZVJlYWR5ID0gZnVuY3Rpb24gKCkKLXsKLSAgICBp
ZiAocmVsb2FkQ291bnQgPT0gMCkKLSAgICAgICBkZWJ1ZygiUEFTUyBpZnJhbWUgaXMgcmVhZHku
Iik7Ci0gICAgaWYgKHJlbG9hZENvdW50ID09IDEpIHsKLSAgICAgICBkZWJ1ZygiUEFTUyByZWxv
YWRlZCBpZnJhbWUgd2hpbGUgV2ViU29ja2V0IGlzIGJ1c3kiKTsKLSAgICAgICBmaW5pc2hKU1Rl
c3QoKTsKLSAgICAgICByZXR1cm47Ci0gICAgfQotICAgIHJlbG9hZENvdW50ICs9IDE7Ci19Owot
Ci1mcmFtZURpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwotZnJhbWVEaXYu
c3JjID0gInJlc291cmNlcy9yZWxvYWQtY3Jhc2gtaWZyYW1lLmh0bWwiOwotZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChmcmFtZURpdik7Ci1kZWJ1ZygiUEFTUyBpbnNlcnQgYSBpZnJhbWUiKTsK
LQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvcmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUtcmVmZXJlbmNlLWlu
LXBhcmVudC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvcmVz
b3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUtcmVmZXJlbmNlLWluLXBhcmVudC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNjA0OTAzLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3Jlc291cmNlcy9jbG9zZS1vbi11bmxv
YWQtaWZyYW1lLXJlZmVyZW5jZS1pbi1wYXJlbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI0
ICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC1mdW5jdGlvbi5qcyI+PC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotcGFy
ZW50LmRvY3VtZW50LmNoaWxkV2ViU29ja2V0ID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2FkIik7Ci0KLXBhcmVudC5kb2N1
bWVudC5jaGlsZFdlYlNvY2tldC5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgLy8gc2VuZCAi
c29ja2V0MSIgdG8gc2VydmVyLCBzbyB0aGF0ICJzb2NrZXQxIiB3aWxsIGJlIGJyb2FkY2FzdGVk
IHRvIHdlYiBzb2NrZXRzIGNvbm5lY3RlZCB0byBjbG9zZS1vbi11bmxvYWQgd2hlbiB0aGlzIHdl
YiBzb2NrZXQgaXMgY2xvc2VkLgotICAgIHBhcmVudC5kb2N1bWVudC5jaGlsZFdlYlNvY2tldC5z
ZW5kKCJzb2NrZXQxIik7Ci19OwotcGFyZW50LmRvY3VtZW50LmNoaWxkV2ViU29ja2V0Lm9ubWVz
c2FnZSA9IGZ1bmN0aW9uKGV2dCkKLXsKLSAgICAvLyAic29ja2V0MSIgaXMgcmVjZWl2ZWQgYnkg
c2VydmVyLCBzbyByZWFkeSB0byB1bmxvYWQgdGhpcyBkb2N1bWVudC4KLSAgICBwYXJlbnQuZG9j
dW1lbnQuaWZyYW1lUmVhZHkoZXZ0LmRhdGEpOwotfTsKLTwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
cmVzb3VyY2VzL2Nsb3NlLW9uLXVubG9hZC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL3Jlc291cmNlcy9jbG9zZS1vbi11bmxvYWQtaWZyYW1lLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM2NjQ2YTguLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvcmVzb3VyY2VzL2Nsb3NlLW9u
LXVubG9hZC1pZnJhbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLTxodG1s
PgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC1mdW5jdGlvbi5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotdmFyIHdzID0gbmV3IFdlYlNv
Y2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvY2xvc2Utb24tdW5sb2Fk
Iik7Ci13cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgLy8gc2VuZCAic29ja2V0MSIgdG8g
c2VydmVyLCBzbyB0aGF0ICJzb2NrZXQxIiB3aWxsIGJlIGJyb2FkY2FzdGVkIHRvIHdlYiBzb2Nr
ZXRzIGNvbm5lY3RlZCB0byBjbG9zZS1vbi11bmxvYWQgd2hlbiB0aGlzIHdlYiBzb2NrZXQgaXMg
Y2xvc2VkLgotICAgIHdzLnNlbmQoInNvY2tldDEiKTsKLX07Ci13cy5vbm1lc3NhZ2UgPSBmdW5j
dGlvbihldnQpCi17Ci0gICAgLy8gInNvY2tldDEiIGlzIHJlY2VpdmVkIGJ5IHNlcnZlciwgc28g
cmVhZHkgdG8gdW5sb2FkIHRoaXMgZG9jdW1lbnQuCi0gICAgcGFyZW50LmRvY3VtZW50LmlmcmFt
ZVJlYWR5KGV2dC5kYXRhKTsKLX0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvcmVzb3VyY2VzL3Jl
bG9hZC1jcmFzaC1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3Jlc291cmNlcy9yZWxvYWQtY3Jhc2gtaWZyYW1lLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDUxMDdkYTAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvcmVzb3VyY2VzL3JlbG9hZC1jcmFzaC1pZnJhbWUuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC1mdW5jdGlvbi5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgotcGFyZW50LmRvY3VtZW50LmlmcmFtZVJlYWR5KCk7Ci12YXIgd3Mg
PSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9jbG9z
ZS1vbi11bmxvYWQiKTsKLWxvY2F0aW9uLnJlbG9hZCgpOwotPC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNmZjQ4YjEuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC1hZnRlci1j
bG9zZS1vbi11bmxvYWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBA
QAotVGVzdCBpZiBXZWIgU29ja2V0IG9wZW5lZCBpbiBpZnJhbWUsIHJlZmVycmVkIGluIHBhcmVu
dCBkb2N1bWVudCBpcywgYW5kIHRyeSB0byBzZW5kKCkgcmV0dXJucyBmYWxzZS4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIHdzIG9uIG1hc3RlciBkb2N1bWVudCBpcyByZWFk
eS4KLVBBU1MgaW5zZXJ0IGEgaWZyYW1lLCB3aGVyZSBvcGVuIHdzIGNhbGxlZCAnc29ja2V0MScK
LVBBU1MgZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQgaXMgbm9uLW51bGwuCi1QQVNTICdzb2NrZXQx
JyBpcyBzZW50IHRvIHRoZSBzZXJ2ZXIuIHVubG9hZCB0aGUgaWZyYW1lLiBleHBlY3QgcmVjZWl2
aW5nICdzb2NrZXQxJyBvbiB3cy4uLgotUEFTUyBkb2N1bWVudC5jaGlsZFdlYlNvY2tldC5zZW5k
KCdzZW5kIHRvIGNsb3NlZCBzb2NrZXQnKSBpcyBmYWxzZQotUEFTUyBjbG9zZWRTb2NrZXQgaXMg
InNvY2tldDEiCi1QQVNTIGRvY3VtZW50LmNoaWxkV2ViU29ja2V0LnJlYWR5U3RhdGUgaXMgMwot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NlbmQtYWZ0ZXIt
Y2xvc2Utb24tdW5sb2FkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA4NDliYmE3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3NlbmQtYWZ0ZXItY2xvc2Utb24tdW5sb2FkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw1MiArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2Ny
aXB0aW9uKCJUZXN0IGlmIFdlYiBTb2NrZXQgb3BlbmVkIGluIGlmcmFtZSwgcmVmZXJyZWQgaW4g
cGFyZW50IGRvY3VtZW50IGlzLCBhbmQgdHJ5IHRvIHNlbmQoKSByZXR1cm5zIGZhbHNlLiIpOwot
Ci13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciBmcmFtZURpdjsKLXZhciBjbG9z
ZWRTb2NrZXQ7Ci1kb2N1bWVudC5jaGlsZFdlYlNvY2tldCA9IG51bGw7Ci0KLXZhciB3cyA9IG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2Nsb3NlLW9u
LXVubG9hZCIpOwotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJQQVNTIHdz
IG9uIG1hc3RlciBkb2N1bWVudCBpcyByZWFkeS4iKTsKLSAgICBmcmFtZURpdiA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpOwotICAgIGZyYW1lRGl2LnNyYyA9ICJyZXNvdXJjZXMv
Y2xvc2Utb24tdW5sb2FkLWlmcmFtZS1yZWZlcmVuY2UtaW4tcGFyZW50Lmh0bWwiOwotICAgIGRv
Y3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWVEaXYpOwotICAgIGRlYnVnKCJQQVNTIGluc2Vy
dCBhIGlmcmFtZSwgd2hlcmUgb3BlbiB3cyBjYWxsZWQgJ3NvY2tldDEnIik7Ci19Owotd3Mub25t
ZXNzYWdlID0gZnVuY3Rpb24oZXZ0KQotewotICAgIGNsb3NlZFNvY2tldCA9IGV2dC5kYXRhOwot
ICAgIHdzLmNsb3NlKCk7Ci19Owotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBzaG91
bGRCZSgiY2xvc2VkU29ja2V0IiwgJyJzb2NrZXQxIicpOwotICAgIHNob3VsZEJlKCJkb2N1bWVu
dC5jaGlsZFdlYlNvY2tldC5yZWFkeVN0YXRlIiwgIjMiKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsK
LX07Ci0KLWRvY3VtZW50LmlmcmFtZVJlYWR5ID0gZnVuY3Rpb24oKQotewotICAgIHNob3VsZEJl
Tm9uTnVsbCgiZG9jdW1lbnQuY2hpbGRXZWJTb2NrZXQiKTsKLSAgICBkZWJ1ZygiUEFTUyAnc29j
a2V0MScgaXMgc2VudCB0byB0aGUgc2VydmVyLiB1bmxvYWQgdGhlIGlmcmFtZS4gZXhwZWN0IHJl
Y2VpdmluZyAnc29ja2V0MScgb24gd3MuLi4iKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNo
aWxkKGZyYW1lRGl2KTsKLSAgICBzaG91bGRCZUZhbHNlKCJkb2N1bWVudC5jaGlsZFdlYlNvY2tl
dC5zZW5kKCdzZW5kIHRvIGNsb3NlZCBzb2NrZXQnKSIpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0
LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5k
LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2IzYzdmNS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLVdlYiBTb2NrZXQgc2Vu
ZCB0ZXN0Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotQ29ubmVjdGVkLgotUEFTUyBk
YXRhIGlzIEZJUlNUX01FU1NBR0VfVE9fU0VORAotUEFTUyBkYXRhIGlzIFNFQ09ORF9NRVNTQUdF
X1RPX1NFTkQKLUNsb3NlZC4KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVT
VCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy9zZW5kLXRocm93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3NlbmQtdGhyb3ctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBhYTc0YmEzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3NlbmQtdGhyb3ctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwK
QEAgLTEsMTEgKzAsMCBAQAotV2ViIFNvY2tldCBzZW5kIHRlc3QKLQotT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgotCi1Db25uZWN0ZWQuCi1DYXVnaHQgZXhjZXB0aW9uOiBQaWNrbGVzCi1DbG9z
ZWQuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC10
aHJvdy5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC10
aHJvdy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYzI1OWFlLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NlbmQtdGhyb3cu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJ
QyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUu
Y3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48
L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPgotZGVzY3JpcHRpb24oIldlYiBTb2NrZXQgc2VuZCB0ZXN0Iik7Ci0KLXdpbmRvdy5q
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgY2xlYXJU
aW1lb3V0KHRpbWVvdXRJRCk7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLXZhciB3cyA9IG5l
dyBXZWJTb2NrZXQoIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL3NlbmQiKTsK
LQotdmFyIEZJUlNUX01FU1NBR0VfVE9fU0VORCA9IHsKLSAgICB0b1N0cmluZzogZnVuY3Rpb24o
KSB7IHRocm93ICJQaWNrbGVzIjsgfQotfTsKLS8vIGRhdGEgbmVlZHMgdG8gYmUgZ2xvYmFsIHRv
IGJlIGFjY2Vzc2JpbGUgZnJvbSBzaG91bGRCZSgpLgotdmFyIGRhdGEgPSAiIjsKLQotd3Mub25v
cGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJDb25uZWN0ZWQuIik7Ci0gICAgdHJ5IHsK
LSAgICAgICAgd3Muc2VuZChGSVJTVF9NRVNTQUdFX1RPX1NFTkQpOwotICAgIH0gY2F0Y2ggKGV4
KSB7Ci0gICAgICAgIGRlYnVnKCJDYXVnaHQgZXhjZXB0aW9uOiAiICsgZXgpOwotICAgIH0KLSAg
ICB3cy5jbG9zZSgpOwotfTsKLQotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1
ZygiQ2xvc2VkLiIpOwotICAgIGVuZFRlc3QoKTsKLX07Ci0KLWZ1bmN0aW9uIHRpbWVPdXRDYWxs
YmFjaygpCi17Ci0gICAgdGVzdEZhaWxlZCgiVGltZWQgb3V0IGluIHN0YXRlOiAiICsgd3MucmVh
ZHlTdGF0ZSk7Ci0gICAgZW5kVGVzdCgpOwotfQotCi12YXIgdGltZW91dElEID0gc2V0VGltZW91
dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1
ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGQ0NmVhZTIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAs
MCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0
bWw+Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiV2ViIFNvY2tl
dCBzZW5kIHRlc3QiKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi1mdW5jdGlv
biBlbmRUZXN0KCkKLXsKLSAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKLSAgICBmaW5pc2hK
U1Rlc3QoKTsKLX0KLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly9sb2NhbGhvc3Q6ODg4
MC93ZWJzb2NrZXQvdGVzdHMvc2VuZCIpOwotCi12YXIgRklSU1RfTUVTU0FHRV9UT19TRU5EID0g
IlRoaXMgaXMgdGhlIGZpcnN0IG1lc3NhZ2UgdG8gc2VuZCB0byB0aGUgc2VydmVyLiI7Ci12YXIg
U0VDT05EX01FU1NBR0VfVE9fU0VORCA9ICJUaGlzIGlzIHRoZSBzZWNvbmQuIjsKLS8vIGRhdGEg
bmVlZHMgdG8gYmUgZ2xvYmFsIHRvIGJlIGFjY2Vzc2JpbGUgZnJvbSBzaG91bGRCZSgpLgotdmFy
IGRhdGEgPSAiIjsKLQotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJDb25u
ZWN0ZWQuIik7Ci0gICAgd3Muc2VuZChGSVJTVF9NRVNTQUdFX1RPX1NFTkQpOwotfTsKLQotd3Mu
b25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQotewotICAgIC8vIFRoZSBzZXJ2ZXIg
c2hvdWxkIGVjaG8gYmFjayB0aGUgZmlyc3QgbWVzc2FnZS4KLSAgICBkYXRhID0gbWVzc2FnZUV2
ZW50LmRhdGE7Ci0gICAgc2hvdWxkQmUoImRhdGEiLCAiRklSU1RfTUVTU0FHRV9UT19TRU5EIik7
Ci0gICAgd3Mub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KSB7Ci0gICAgICAgIC8v
IFRoZSBzZXJ2ZXIgc2hvdWxkIGVjaG8gYmFjayB0aGUgc2Vjb25kIG1lc3NhZ2UuCi0gICAgICAg
IGRhdGEgPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAgICAgICAgc2hvdWxkQmUoImRhdGEiLCAiU0VD
T05EX01FU1NBR0VfVE9fU0VORCIpOwotICAgIH07Ci0gICAgd3Muc2VuZChTRUNPTkRfTUVTU0FH
RV9UT19TRU5EKTsKLX07Ci0KLXdzLm9uY2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWco
IkNsb3NlZC4iKTsKLSAgICBlbmRUZXN0KCk7Ci19OwotCi1mdW5jdGlvbiB0aW1lT3V0Q2FsbGJh
Y2soKQotewotICAgIHRlc3RGYWlsZWQoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5
U3RhdGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQo
dGltZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZDJfd3NoLnB5IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZDJfd3NoLnB5CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBlMjIxN2ZhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NlbmQyX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0x
LDggKzAsMCBAQAotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgot
ICAgIHBhc3MgIyBBbHdheXMgYWNjZXB0LgotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2Rh
dGEocmVxdWVzdCk6Ci0gICAgIyBzZW5kIDIgbWVzc2FnZXMgaW4gb25lIHBhY2tldC4KLSAgICBy
ZXF1ZXN0LmNvbm5lY3Rpb24ud3JpdGUoIlx4MDAiICsgImZpcnN0IG1lc3NhZ2UiICsgIlx4ZmYi
ICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlx4MDAiICsgInNlY29uZCBtZXNzYWdl
IiArICJceGZmIikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3NlbmRfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvc2VuZF93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI1MTA0YjMuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VuZF93
c2gucHkKKysrIC9kZXYvbnVsbApAQCAtMSw0MSArMCwwIEBACi0jIENvcHlyaWdodCAoQykgMjAw
OSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQotIyBtZXQ6Ci0jCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0jIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSMgICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotIyBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCi0jIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKLSMgZGlzdHJpYnV0aW9uLgotIyAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0jIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
Ci0jIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKLSMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0jIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09Q
WVJJR0hUCi0jIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAotIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotIyBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKLSMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSMgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQot
Ci1mcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNndXRpbAotCi0KLWRlZiB3ZWJfc29ja2V0
X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICBwYXNzICMgQWx3YXlzIGFjY2VwdC4K
LQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgICMgUmVjZWl2
ZSBhbmQgZWNobyBiYWNrIG1lc3NhZ2VzIHR3aWNlLgotICAgIGZvciB1bnVzZWQgaW4gcmFuZ2Uo
Mik6Ci0gICAgICAgIG1lc3NhZ2UgPSBtc2d1dGlsLnJlY2VpdmVfbWVzc2FnZShyZXF1ZXN0KQot
ICAgICAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1ZXN0LCBtZXNzYWdlKQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2VydmVyLWNsb3NlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NlcnZl
ci1jbG9zZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZlZWRh
OWUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
c2VydmVyLWNsb3NlLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAK
LVdlYlNvY2tldDogVGVzdCBzZXJ2ZXItaW5pdGlhdGVkIGNsb3NlLgotCi1PbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCi0KLUNvbm5lY3RlZAotQ2xvc2VkCi1QQVNTIGNsb3NlRXZlbnQud2FzQ2xl
YW4gaXMgdHJ1ZQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3NlcnZlci1jbG9zZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvc2VydmVyLWNsb3NlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhZjQ4
N2EuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
c2VydmVyLWNsb3NlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi08IURPQ1RZ
UEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgot
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJk
ZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJXZWJTb2NrZXQ6IFRlc3Qgc2VydmVy
LWluaXRpYXRlZCBjbG9zZS4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi12
YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0
cy9zZXJ2ZXItY2xvc2UiKTsKLXZhciBjbG9zZUV2ZW50OwotCi13cy5vbm9wZW4gPSBmdW5jdGlv
bigpCi17Ci0gICAgZGVidWcoIkNvbm5lY3RlZCIpOwotfTsKLQotd3Mub25tZXNzYWdlID0gZnVu
Y3Rpb24obWVzc2FnZUV2ZW50KQotewotICAgIGRlYnVnKCJSZWNlaXZlZDogIiArIG1lc3NhZ2VF
dmVudC5kYXRhKTsKLX07Ci0KLXdzLm9uY2xvc2UgPSBmdW5jdGlvbihldmVudCkKLXsKLSAgICBk
ZWJ1ZygiQ2xvc2VkIik7Ci0gICAgY2xvc2VFdmVudCA9IGV2ZW50OwotICAgIHNob3VsZEJlVHJ1
ZSgiY2xvc2VFdmVudC53YXNDbGVhbiIpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfTsKLQotdmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvc2VydmVyLWNsb3NlX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3NlcnZlci1jbG9zZV93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGEwNjk4YTMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvc2VydmVyLWNsb3NlX3dzaC5weQorKysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBA
QAotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFuZHNoYWtlKHJlcXVlc3QpOgotICAgIHBhc3MK
LQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAgICMgQWZ0ZXIg
dGhpcyBoYW5kbGVyIGV4aXRzLCBweXdlYnNvY2tldCBpbml0aWF0ZXMgdGhlIGNsb3NpbmcgaGFu
ZHNoYWtlLgotICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3NpbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9zaW1wbGUtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkNTUzZDNjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3NpbXBsZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwx
MiArMCwwIEBACi1TaW1wbGUgV2ViIFNvY2tldCB0ZXN0Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KLQotQ3JlYXRlZCBhIHNvY2tldCB0byAnd3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2Nr
ZXQvdGVzdHMvc2ltcGxlJzsgcmVhZHlTdGF0ZSAwLgotQ29ubmVjdGVkOyByZWFkeVN0YXRlIDEK
LVJlY2VpdmVkOiAnSGVsbG8gZnJvbSBTaW1wbGUgV1NILic7IHJlYWR5U3RhdGUgMQotQ2xvc2Vk
OyByZWFkeVN0YXRlIDMuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvc2ltcGxlLXN0cmVzcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9zaW1wbGUtc3RyZXNzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZjU3YzNlYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zaW1wbGUtc3RyZXNzLWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xLDcgKzAsMCBAQAotVGVzdCBzZW5kaW5nIG1hbnkgbWVzc2FnZXMsIGFuZCBz
ZW5kaW5nIGEgbGFyZ2UgbWVzc2FnZS4KLQotU2hvdWxkIHNheSBQQVNTOgotCi1SdW5uaW5nIHRo
ZSB0ZXN0Li4uCi1QQVNTCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3NpbXBsZS1zdHJlc3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3NpbXBsZS1zdHJlc3MuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggZDllZjhkNS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9zaW1wbGUtc3RyZXNzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MiAr
MCwwIEBACi08cD5UZXN0IHNlbmRpbmcgbWFueSBtZXNzYWdlcywgYW5kIHNlbmRpbmcgYSBsYXJn
ZSBtZXNzYWdlLjwvcD4KLTxwPlNob3VsZCBzYXkgUEFTUzo8L3A+Ci08cHJlIGlkPWxvZz5SdW5u
aW5nIHRoZSB0ZXN0Li4uCi08L3ByZT4KLTxzY3JpcHQ+Ci12YXIgbnVtU21hbGxNZXNzYWdlcyA9
IDEwMDA7Ci0KLWlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2Fp
dFVudGlsRG9uZSgpOwotfQotCi1mdW5jdGlvbiBsb2cobWVzc2FnZSkKLXsKLSAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibG9nIikuaW5uZXJIVE1MICs9IG1lc3NhZ2UgKyAiXG4iOwotfQot
Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90
ZXN0cy9lY2hvIik7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkgewotICAgIGZvciAoaSA9IDA7
IGkgPCBudW1TbWFsbE1lc3NhZ2VzOyArK2kpIHsKLSAgICAgICAgd3Muc2VuZChpKTsKLSAgICB9
Ci0KLX0KLQotdmFyIGxhc3RNZXNzYWdlID0gLTE7Ci13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbiht
c2cpIHsKLSAgICBpZiAocGFyc2VJbnQobXNnLmRhdGEpICE9IGxhc3RNZXNzYWdlICsgMSkKLSAg
ICAgICAgbG9nKCJGQUlMIC0gb3V0IG9mIHNlcXVlbmNlIHJlc3BvbnNlLiBFeHBlY3RlZCAiICsg
bGFzdE1lc3NhZ2UgKyAxICsgIiwgZ290ICIgKyBtc2cuZGF0YSk7Ci0gICAgKytsYXN0TWVzc2Fn
ZTsKLSAgICBpZiAobGFzdE1lc3NhZ2UgPT0gbnVtU21hbGxNZXNzYWdlcyAtIDEpCi0gICAgICAg
IHRlc3RMYXJnZVN0cmluZygpOwotfQotCi1mdW5jdGlvbiB0ZXN0TGFyZ2VTdHJpbmcoKQotewot
ICAgIC8vIEJ1aWxkIGEgc3RyaW5nIDI1NksgaW4gbGVuZ3RoLgotICAgIHZhciBzdHIgPSAiICI7
Ci0gICAgZm9yIChpID0gMDsgaSA8IDE4OyArK2kpCi0gICAgICAgIHN0ciArPSBzdHI7Ci0KLSAg
ICB3cy5zZW5kKHN0cik7Ci0gICAgd3Mub25tZXNzYWdlID0gZnVuY3Rpb24obXNnKSB7Ci0gICAg
ICAgIGxvZyhtc2cuZGF0YS5sZW5ndGggPT0gc3RyLmxlbmd0aCA/ICJQQVNTIiA6ICJGQUlMIC0g
d3JvbmcgcmVzcG9uc2UgbGVuZ3RoIik7Ci0gICAgICAgIHdzLnNlbmQoIkdvb2RieWUiKTsKLSAg
ICAgICAgd3Mub25tZXNzYWdlID0gbnVsbDsKLSAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKLSAgICAgICAgICAgIHNldFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVy
Lm5vdGlmeURvbmUoKSIsIDApOwotICAgIH0KLX0KLTwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zaW1wbGUuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMzMzMjQ4MS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zaW1wbGUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUy
ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4K
LTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIlNpbXBs
ZSBXZWIgU29ja2V0IHRlc3QiKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi1m
dW5jdGlvbiBlbmRUZXN0KCkKLXsKLSAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKLSAgICBm
aW5pc2hKU1Rlc3QoKTsKLX0KLQotdmFyIHdzID0gbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlIik7Ci1kZWJ1ZygiQ3JlYXRlZCBhIHNvY2tl
dCB0byAnIiArIHdzLlVSTCArICInOyByZWFkeVN0YXRlICIgKyB3cy5yZWFkeVN0YXRlICsgIi4i
KTsKLQotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJDb25uZWN0ZWQ7IHJl
YWR5U3RhdGUgIiArIHdzLnJlYWR5U3RhdGUpOwotfTsKLQotd3Mub25tZXNzYWdlID0gZnVuY3Rp
b24obWVzc2FnZUV2ZW50KQotewotICAgIGRlYnVnKCJSZWNlaXZlZDogJyIgKyBtZXNzYWdlRXZl
bnQuZGF0YSArICInOyByZWFkeVN0YXRlICIgKyB3cy5yZWFkeVN0YXRlKTsKLX07Ci0KLXdzLm9u
Y2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoIkNsb3NlZDsgcmVhZHlTdGF0ZSAiICsg
d3MucmVhZHlTdGF0ZSArICIuIik7Ci0gICAgZW5kVGVzdCgpOwotfTsKLQotZnVuY3Rpb24gdGlt
ZU91dENhbGxiYWNrKCkKLXsKLSAgICBkZWJ1ZygiVGltZWQgb3V0IGluIHN0YXRlOiAiICsgd3Mu
cmVhZHlTdGF0ZSk7Ci0gICAgZW5kVGVzdCgpOwotfQotCi12YXIgdGltZW91dElEID0gc2V0VGlt
ZW91dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zaW1wbGVfd3NoLnB5IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlX3dzaC5weQpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmMwMjcxYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zaW1wbGVfd3NoLnB5CisrKyAvZGV2L251
bGwKQEAgLTEsMzggKzAsMCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMDkgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSMKLSMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0jIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSMgbWV0
OgotIwotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotIyBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotIwotIyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCi0jICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotIyBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSMgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0jIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKLSMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0jIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLQotZnJvbSBtb2RfcHl3ZWJz
b2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hh
a2UocmVxdWVzdCk6Ci0gICAgcGFzcyAjIEFsd2F5cyBhY2NlcHQuCi0KLQotZGVmIHdlYl9zb2Nr
ZXRfdHJhbnNmZXJfZGF0YShyZXF1ZXN0KToKLSAgICBtc2d1dGlsLnNlbmRfbWVzc2FnZShyZXF1
ZXN0LCAnSGVsbG8gZnJvbSBTaW1wbGUgV1NILicpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zdWItcHJvdG9jb2wtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc3ViLXByb3RvY29sLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmNjMWVjMS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zdWItcHJvdG9jb2wtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotVGVzdCBXZWJTb2NrZXQg
aGFuZHNoYWtlIHN1Y2Nlc3Mgd2l0aCBzdWIgcHJvdG9jb2wuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotQ29ubmVjdGVkCi1QQVNTIHByb3RvY29sIGlzICJzdWItcHJvdG9jb2wiCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc3ViLXByb3RvY29s
LXdpdGgtc3BhY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvc3ViLXByb3RvY29sLXdpdGgtc3BhY2UtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMjFhNzQ5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3N1Yi1wcm90b2NvbC13aXRoLXNwYWNlLWV4cGVjdGVk
LnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEwICswLDAgQEAKLVRlc3QgV2ViU29ja2V0IGhhbmRz
aGFrZSBzdWNjZXNzIHdpdGggc3ViIHByb3RvY29sIGNvbnRhaW5zIHNwYWNlLgotCi1PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCi0KLUNvbm5lY3RlZAotUEFTUyBwcm90b2NvbCBpcyAic3ViIHBy
b3RvY29sIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3N1
Yi1wcm90b2NvbC13aXRoLXNwYWNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9zdWItcHJvdG9jb2wtd2l0aC1zcGFjZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAzYjRjOTBhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3N1Yi1wcm90b2NvbC13aXRoLXNwYWNlLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2Ny
aXB0aW9uKCJUZXN0IFdlYlNvY2tldCBoYW5kc2hha2Ugc3VjY2VzcyB3aXRoIHN1YiBwcm90b2Nv
bCBjb250YWlucyBzcGFjZS4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi12
YXIgcHJvdG9jb2w7Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIHNob3VsZEJlKCJwcm90
b2NvbCIsICcic3ViIHByb3RvY29sIicpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQotCi12YXIg
dXJsID0gIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL3Byb3RvY29sLXRlc3Q/
cHJvdG9jb2w9c3ViJTIwcHJvdG9jb2wiOwotdmFyIHdzID0gbmV3IFdlYlNvY2tldCh1cmwsICJz
dWIgcHJvdG9jb2wiKTsKLQotd3Mub25vcGVuID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJD
b25uZWN0ZWQiKTsKLX07Ci0KLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChtZXNzYWdlRXZlbnQp
Ci17Ci0gICAgcHJvdG9jb2wgPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAgICB3cy5jbG9zZSgpOwot
fTsKLQotd3Mub25jbG9zZSA9IGZ1bmN0aW9uKCkKLXsKLSAgICBlbmRUZXN0KCk7Ci19OwotCi1m
dW5jdGlvbiB0aW1lT3V0Q2FsbGJhY2soKQotewotICAgIGRlYnVnKCJUaW1lZCBvdXQgaW4gc3Rh
dGU6ICIgKyB3cy5yZWFkeVN0YXRlKTsKLSAgICBlbmRUZXN0KCk7Ci19Ci0KLXZhciB0aW1lb3V0
SUQgPSBzZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFjaywgMzAwMCk7Ci0KLXZhciBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVz
dC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3N1Yi1w
cm90b2NvbC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc3Vi
LXByb3RvY29sLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc0NWJjZGYuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvc3ViLXBy
b3RvY29sLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBACi08IURPQ1RZUEUgSFRN
TCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlw
dGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJUZXN0IFdlYlNvY2tldCBoYW5kc2hha2Ugc3Vj
Y2VzcyB3aXRoIHN1YiBwcm90b2NvbC4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OwotCi12YXIgcHJvdG9jb2w7Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIHNob3VsZEJl
KCJwcm90b2NvbCIsICcic3ViLXByb3RvY29sIicpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQot
Ci12YXIgdXJsID0gIndzOi8vbG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL3Byb3RvY29s
LXRlc3Q/cHJvdG9jb2w9c3ViLXByb3RvY29sIjsKLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJs
LCAic3ViLXByb3RvY29sIik7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9uKCkKLXsKLSAgICBkZWJ1
ZygiQ29ubmVjdGVkIik7Ci19OwotCi13cy5vbm1lc3NhZ2UgPSBmdW5jdGlvbiAobWVzc2FnZUV2
ZW50KQotewotICAgIHByb3RvY29sID0gbWVzc2FnZUV2ZW50LmRhdGE7Ci0gICAgd3MuY2xvc2Uo
KTsKLX07Ci0KLXdzLm9uY2xvc2UgPSBmdW5jdGlvbigpCi17Ci0gICAgZW5kVGVzdCgpOwotfTsK
LQotZnVuY3Rpb24gdGltZU91dENhbGxiYWNrKCkKLXsKLSAgICBkZWJ1ZygiVGltZWQgb3V0IGlu
IHN0YXRlOiAiICsgd3MucmVhZHlTdGF0ZSk7Ci0gICAgZW5kVGVzdCgpOwotfQotCi12YXIgdGlt
ZW91dElEID0gc2V0VGltZW91dCh0aW1lT3V0Q2FsbGJhY2ssIDMwMDApOwotCi12YXIgc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pz
LXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91
bmljb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL3VuaWNvZGUtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBh
ODllYjgzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL3VuaWNvZGUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAot
V2ViIFNvY2tldCB1bmljb2RlIG1lc3NhZ2UgdGVzdAotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCi0KLUNvbm5lY3RlZC4KLVNlbmQgVU5JQ09ERV9IRUxMTy4KLVBBU1MgZGF0YSBpcyBVTklD
T0RFX0dPT0RCWUUKLUNsb3NlZC4KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy91bmljb2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy91bmljb2RlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM1NTc1
NzEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
dW5pY29kZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBAQAotPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiV2ViIFNvY2tldCB1bmljb2RlIG1lc3NhZ2Ug
dGVzdCIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWZ1bmN0aW9uIGVuZFRl
c3QoKQotewotICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOwotICAgIGZpbmlzaEpTVGVzdCgp
OwotfQotCi12YXIgd3MgPSBuZXcgV2ViU29ja2V0KCJ3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNv
Y2tldC90ZXN0cy91bmljb2RlIik7Ci0KLS8vIEhlbGxvIGluIEphcGFuZXNlCi12YXIgVU5JQ09E
RV9IRUxMTyA9ICJcdTMwNTNcdTMwOTNcdTMwNmJcdTMwNjFcdTMwNmYiOwotLy8gR29vZGJ5ZSBp
biBKYXBhbmVzZQotdmFyIFVOSUNPREVfR09PREJZRSA9ICJcdTMwNTVcdTMwODhcdTMwNDZcdTMw
NmFcdTMwODkiOwotCi0vLyBkYXRhIG5lZWRzIHRvIGJlIGdsb2JhbCB0byBiZSBhY2Nlc3NiaWxl
IGZyb20gc2hvdWxkQmUoKS4KLXZhciBkYXRhID0gIiI7Ci0KLXdzLm9ub3BlbiA9IGZ1bmN0aW9u
KCkKLXsKLSAgICBkZWJ1ZygiQ29ubmVjdGVkLiIpOwotICAgIGRlYnVnKCJTZW5kIFVOSUNPREVf
SEVMTE8uIik7Ci0gICAgd3Muc2VuZChVTklDT0RFX0hFTExPKTsKLX07Ci0KLXdzLm9ubWVzc2Fn
ZSA9IGZ1bmN0aW9uKG1lc3NhZ2VFdmVudCkKLXsKLSAgICAvLyBUaGUgc2VydmVyIHNob3VsZCBz
ZW5kIGJhY2sgR29vZGJ5ZSBpZiBpdCByZWNlaXZlcyBIZWxsby4KLSAgICBkYXRhID0gbWVzc2Fn
ZUV2ZW50LmRhdGE7Ci0gICAgc2hvdWxkQmUoImRhdGEiLCAiVU5JQ09ERV9HT09EQllFIik7Ci19
OwotCi13cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotewotICAgIGRlYnVnKCJDbG9zZWQuIik7Ci0g
ICAgZW5kVGVzdCgpOwotfTsKLQotZnVuY3Rpb24gdGltZU91dENhbGxiYWNrKCkKLXsKLSAgICB0
ZXN0RmFpbGVkKCJUaW1lZCBvdXQgaW4gc3RhdGU6ICIgKyB3cy5yZWFkeVN0YXRlKTsKLSAgICBl
bmRUZXN0KCk7Ci19Ci0KLXZhciB0aW1lb3V0SUQgPSBzZXRUaW1lb3V0KHRpbWVPdXRDYWxsYmFj
aywgMzAwMCk7Ci0KLXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VuaWNvZGVfd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdW5pY29kZV93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDllMzEyMzcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJzb2NrZXQvdGVzdHMvdW5pY29kZV93c2gucHkKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCww
IEBACi0jIENvcHlyaWdodCAoQykgMjAwOSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotIyBtZXQ6Ci0jCi0jICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0jIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQotIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0jIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSMgZGlzdHJpYnV0
aW9uLgotIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFt
ZXMgb2YgaXRzCi0jIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0jIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0jCi0jIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSMgIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
LSMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0jIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotIyBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
Ci0jIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLAotIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSMgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotIyAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi1mcm9tIG1vZF9weXdlYnNvY2tldCBpbXBvcnQgbXNn
dXRpbAotCi0KLSMgSGVsbG8gaW4gSmFwYW5lc2UKLV9VTklDT0RFX0hFTExPID0gdSJcdTMwNTNc
dTMwOTNcdTMwNmJcdTMwNjFcdTMwNmYiCi0KLSMgR29vZGJ5ZSBpbiBKYXBhbmVzZQotX1VOSUNP
REVfR09PREJZRSA9IHUiXHUzMDU1XHUzMDg4XHUzMDQ2XHUzMDZhXHUzMDg5IgotCi0jIEVycm9y
IG1lc3NhZ2UKLV9FUlJPUl9NRVNTQUdFID0gIldoYXQgZGlkIHlvdSBzYXk/IgotCi0KLWRlZiB3
ZWJfc29ja2V0X2RvX2V4dHJhX2hhbmRzaGFrZShyZXF1ZXN0KToKLSAgICBwYXNzICMgQWx3YXlz
IGFjY2VwdC4KLQotCi1kZWYgd2ViX3NvY2tldF90cmFuc2Zlcl9kYXRhKHJlcXVlc3QpOgotICAg
IGhlbGxvID0gbXNndXRpbC5yZWNlaXZlX21lc3NhZ2UocmVxdWVzdCkKLSAgICBpZiBoZWxsbyAh
PSBfVU5JQ09ERV9IRUxMTzoKLSAgICAgICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwg
X0VSUk9SX01FU1NBR0UpCi0gICAgICAgIHJldHVybgotICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdl
KHJlcXVlc3QsIF9VTklDT0RFX0dPT0RCWUUpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91bmtub3duLWZyYW1lLXR5cGVfd3NoLnB5IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdW5rbm93bi1mcmFtZS10eXBlX3dzaC5w
eQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZmVmZjk3NC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91bmtub3duLWZyYW1lLXR5cGVf
d3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotZnJvbSBtb2RfcHl3ZWJzb2Nr
ZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2Uo
cmVxdWVzdCk6Ci0gICAgcGFzcwotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVx
dWVzdCk6Ci0gICAgZm9yIGkgaW4gcmFuZ2UoMSwgMTI4KToKLSAgICAgICAgcmVxdWVzdC5jb25u
ZWN0aW9uLndyaXRlKGNocihpKSArIHN0cihpKSArICdceGZmJykKLSAgICBmb3IgaSBpbiByYW5n
ZSgxMjgsIDI1Nik6Ci0gICAgICAgIG1zZyA9IHN0cihpKQotICAgICAgICByZXF1ZXN0LmNvbm5l
Y3Rpb24ud3JpdGUoY2hyKGkpICsgY2hyKGxlbihtc2cpKSArIG1zZykKLSAgICBtc2d1dGlsLnNl
bmRfbWVzc2FnZShyZXF1ZXN0LCAnZG9uZScpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtbm8tdHJhaWxpbmctc2xhc2gtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLW5vLXRyYWlsaW5n
LXNsYXNoLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzVjOTBj
Zi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91
cmwtbm8tdHJhaWxpbmctc2xhc2gtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTMg
KzAsMCBAQAotVVJMIHRoYXQgZG9lc24ndCBoYXZlIHRyYWlsaW5nIHNsYXNoIHNob3VsZCBub3Qg
ZW1pdCBlbXB0eSBSZXF1ZXN0LVVSSS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1X
ZWJTb2NrZXQgaXMgb3BlbgotcmVjZWl2ZWQ6d3M6Ly8xMjcuMC4wLjE6ODg4MC8KLVdlYlNvY2tl
dCBpcyBjbG9zZWQKLVBBU1MgaGFuZHNoYWtlX3N1Y2Nlc3MgaXMgdHJ1ZQotUEFTUyB3c19sb2Nh
dGlvbiBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC8iCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLW5vLXRyYWlsaW5nLXNsYXNoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtbm8tdHJhaWxpbmctc2xhc2guaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTZkMzM4ZC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtbm8tdHJhaWxpbmctc2xh
c2guaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQwICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBV
QkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qtc3R5
bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9u
Ij48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIlVSTCB0aGF0IGRvZXNuJ3QgaGF2ZSB0cmFpbGluZyBz
bGFzaCBzaG91bGQgbm90IGVtaXQgZW1wdHkgUmVxdWVzdC1VUkkuIik7Ci0KLXdpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKLQotdmFyIHVybCA9ICJ3czovLzEyNy4wLjAuMTo4ODgwIjsKLXZh
ciBoYW5kc2hha2Vfc3VjY2VzcyA9IGZhbHNlOwotdmFyIHdzX2xvY2F0aW9uOwotCi12YXIgd3Mg
PSBuZXcgV2ViU29ja2V0KHVybCk7Ci13cy5vbm9wZW4gPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVi
dWcoIldlYlNvY2tldCBpcyBvcGVuIik7Ci0gICAgaGFuZHNoYWtlX3N1Y2Nlc3MgPSB0cnVlOwot
fTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKLSAgICB3c19sb2NhdGlvbiA9IGV2
dC5kYXRhOwotICAgIGRlYnVnKCJyZWNlaXZlZDoiICsgd3NfbG9jYXRpb24pOwotICAgIHdzLmNs
b3NlKCk7Ci19Owotd3Mub25jbG9zZSA9IGZ1bmN0aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29j
a2V0IGlzIGNsb3NlZCIpOwotICAgIHNob3VsZEJlVHJ1ZSgiaGFuZHNoYWtlX3N1Y2Nlc3MiKTsK
LSAgICBzaG91bGRCZSgid3NfbG9jYXRpb24iLCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvIicpOwot
ICAgIGZpbmlzaEpTVGVzdCgpOwotfTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmct
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyN2FhYjI5Li4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC1wYXJz
aW5nLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDIzICswLDAgQEAKLUNPTlNPTEUg
TUVTU0FHRTogbGluZSAwOiBJbnZhbGlkIHVybCBmb3IgV2ViU29ja2V0IHdzOi8vamF2YXNjcmlw
dDphCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogSW52YWxpZCB1cmwgZm9yIFdlYlNvY2tldCAv
YXBwbGV0Ci1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBmb3IgV2Vi
U29ja2V0IGphdmFzY3JpcHQ6YQotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdlYlNvY2tldCBw
b3J0IDI1IGJsb2NrZWQKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBVUkwgaGFzIGZyYWdtZW50
IGNvbXBvbmVudCB3czovLzEyNy4wLjAuMS9wYXRoIwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6
IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQK
LVRlc3QgV2ViU29ja2V0IFVSTCBwYXJzaW5nLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly9qYXZhc2NyaXB0OmEiKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIG5ldyBXZWJTb2Nr
ZXQoIi9hcHBsZXQiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNl
cHRpb24gMTIuCi1QQVNTIG5ldyBXZWJTb2NrZXQoImphdmFzY3JpcHQ6YSIpIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNv
Y2tldCgid3M6Ly8xMjcuMC4wLjE6MjUvIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTRUNVUklU
WV9FUlI6IERPTSBFeGNlcHRpb24gMTguCi1QQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4w
LjAuMTo4ODgwL2EvLi4vd2Vic29ja2V0L3Rlc3RzL3NpbXBsZSIpKS5VUkwgaXMgIndzOi8vMTI3
LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZSIKLVBBU1MgKG5ldyBXZWJTb2NrZXQo
IndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZT8iKSkuVVJMIGlzICJ3
czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9zaW1wbGU/IgotUEFTUyAobmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlP2s9diIp
KS5VUkwgaXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZT9rPXYi
Ci1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xL3BhdGgjIikgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29j
a2V0KCJ3czovLzEyNy4wLjAuMS9wYXRoI2ZyYWdtZW50IikgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtcGFyc2luZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBhODA5MTdhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3VybC1wYXJzaW5nLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0
MSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9q
cy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0IHNyYz0iLi4vLi4v
Li4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgot
PGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2NyaXB0aW9uKCJUZXN0
IFdlYlNvY2tldCBVUkwgcGFyc2luZy4iKTsKLQotLy8gSW52YWxpZCB1cmwgd2lsbCBmYWlsIHRv
IGJlIHBhcnNlZC4KLXNob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovL2phdmFzY3JpcHQ6
YSIpJyk7Ci0KLS8vIENhbid0IHVzZSByZWxhdGl2ZSBVUkxzIC0gYmVjYXVzZSBzcGVjIHNheXMg
c28sIGFuZCBiZWNhdXNlIHRoZSBzY2hlbWUgaXMgZGlmZmVyZW50IGFueXdheS4KLXNob3VsZFRo
cm93KCduZXcgV2ViU29ja2V0KCIvYXBwbGV0IiknKTsKLQotLy8gTm9uIHdzIFVSTCBpcyBub3Qg
YWxsb3dlZC4KLXNob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJqYXZhc2NyaXB0OmEiKScpOwot
Ci0vLyBVQSBpcyBhbGxvd2VkIHRvIGJsb2NrIGFjY2VzcyB0byBzb21lIHBvcnRzLCB3aGljaCB3
ZSBkby4KLXNob3VsZFRocm93KCduZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMToyNS8iKScp
OwotCi0vLyBSZXNvbHZlIHRoZSB1cmwgc3RyaW5nIHVzaW5nIHRoZSByZXNvbHZlIGEgV2ViIGFk
ZHJlc3MgYWxnb3JpdGhtLgotLy8gVXNlIDEyNy4wLjAuMTo4ODgwIGFuZCBleGlzdGluZyB3cyBo
YW5kbGVyIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCByZWNlaXZlIHVuZXhwZWN0ZWQgcmVzcG9uc2Ug
KHNvIG5vIGNvbnNvbGUgbWVzc2FnZSBhcHBlYXJzKQotc2hvdWxkQmUoJyhuZXcgV2ViU29ja2V0
KCJ3czovLzEyNy4wLjAuMTo4ODgwL2EvLi4vd2Vic29ja2V0L3Rlc3RzL3NpbXBsZSIpKS5VUkwn
LCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZSInKTsKLXNob3Vs
ZEJlKCcobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
c2ltcGxlPyIpKS5VUkwnLCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3Np
bXBsZT8iJyk7Ci1zaG91bGRCZSgnKG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAv
d2Vic29ja2V0L3Rlc3RzL3NpbXBsZT9rPXYiKSkuVVJMJywgJyJ3czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9zaW1wbGU/az12IicpOwotCi0vLyBkcmFmdC1oaXhpZS10aGV3ZWJz
b2NrZXRwcm90b2NvbC02MCBzYXlzIElmIC91cmwvIGhhcyBhIDxmcmFnbWVudD4KLS8vIGNvbXBv
bmVudCwgdGhlbiBmYWlsIHRoZSBwYXJzaW5nIFdlYiBTb2NrZXQgVVJMcywgc28gdGhyb3cgYSBT
WU5UQVhfRVJSCi0vLyBleGNlcHRpb24uCi1zaG91bGRUaHJvdygnbmV3IFdlYlNvY2tldCgid3M6
Ly8xMjcuMC4wLjEvcGF0aCMiKScpOwotc2hvdWxkVGhyb3coJ25ldyBXZWJTb2NrZXQoIndzOi8v
MTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQiKScpOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1jcmVkZW50
aWFsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3VybC13aXRoLWNyZWRlbnRpYWwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBkYTc5ZDUyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3VybC13aXRoLWNyZWRlbnRpYWwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTQgKzAsMCBAQAotTWFrZSBzdXJlIGhhbmRzaGFrZSB3aXRoIFVSTCB3aXRoIGNy
ZWRlbnRhaWwgaW5mbyBzdWNjZXNzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLXVy
bD13czovL3VzZXI6cGFzc0AxMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvZWNoby1sb2Nh
dGlvbgotV2ViU29ja2V0IGlzIG9wZW4KLXJlY2VpdmVkOndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vi
c29ja2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24KLVdlYlNvY2tldCBpcyBjbG9zZWQKLVBBU1MgaGFu
ZHNoYWtlX3N1Y2Nlc3MgaXMgdHJ1ZQotUEFTUyB3c19sb2NhdGlvbiBpcyAid3M6Ly8xMjcuMC4w
LjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvZWNoby1sb2NhdGlvbiIKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1jcmVkZW50aWFsLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1jcmVkZW50aWFs
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJjZDMxOTkuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgtY3JlZGVu
dGlhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBAQAotPCFET0NUWVBFIEhUTUwg
UFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRp
b24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiTWFrZSBzdXJlIGhhbmRzaGFrZSB3aXRoIFVSTCB3
aXRoIGNyZWRlbnRhaWwgaW5mbyBzdWNjZXNzLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9
IHRydWU7Ci0KLXZhciB1cmwgPSAid3M6Ly91c2VyOnBhc3NAMTI3LjAuMC4xOjg4ODAvd2Vic29j
a2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24iOwotdmFyIGhhbmRzaGFrZV9zdWNjZXNzID0gZmFsc2U7
Ci12YXIgd3NfbG9jYXRpb247Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIGNsZWFyVGlt
ZW91dCh0aW1lb3V0SUQpOwotICAgIHNob3VsZEJlVHJ1ZSgiaGFuZHNoYWtlX3N1Y2Nlc3MiKTsK
LSAgICBzaG91bGRCZSgid3NfbG9jYXRpb24iLCAnIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29j
a2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24iJyk7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLWRl
YnVnKCJ1cmw9IiArIHVybCk7Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KHVybCk7Ci13cy5vbm9w
ZW4gPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7Ci0gICAg
aGFuZHNoYWtlX3N1Y2Nlc3MgPSB0cnVlOwotfTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChl
dnQpIHsKLSAgICB3c19sb2NhdGlvbiA9IGV2dC5kYXRhOwotICAgIGRlYnVnKCJyZWNlaXZlZDoi
ICsgd3NfbG9jYXRpb24pOwotICAgIHdzLmNsb3NlKCk7Ci19Owotd3Mub25jbG9zZSA9IGZ1bmN0
aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIGNsb3NlZCIpOwotICAgIGVuZFRlc3Qo
KTsKLX07Ci12YXIgdGltZW91dElEID0gc2V0VGltZW91dCgiZW5kVGVzdCgpIiwgMjAwMCk7Ci0K
LXZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3VybC13aXRoLWVtcHR5LXF1ZXJ5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC13aXRoLWVtcHR5LXF1ZXJ5LWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjJjYjllMy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1lbXB0eS1x
dWVyeS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1NYWtlIHN1
cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdpdGggZW1wdHkgcXVlcnkgY29tcG9uZW50cyBzdWNjZXNz
LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLXVybD13czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9lY2hvLWxvY2F0aW9uPwotV2ViU29ja2V0IGlzIG9wZW4KLXJlY2Vp
dmVkOndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24/Ci1X
ZWJTb2NrZXQgaXMgY2xvc2VkCi1QQVNTIGhhbmRzaGFrZV9zdWNjZXNzIGlzIHRydWUKLVBBU1Mg
d3NfbG9jYXRpb24gaXMgdXJsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRF
U1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvdXJsLXdpdGgtZW1wdHktcXVlcnkuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3VybC13aXRoLWVtcHR5LXF1ZXJ5Lmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDY4NmEwM2E1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3VybC13aXRoLWVtcHR5LXF1ZXJ5Lmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSw0OCArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYv
L0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRl
c2NyaXB0aW9uKCJNYWtlIHN1cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdpdGggZW1wdHkgcXVlcnkg
Y29tcG9uZW50cyBzdWNjZXNzLiIpOwotCi13aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0K
LXZhciB1cmwgPSAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvZWNoby1sb2Nh
dGlvbj8iOwotdmFyIGhhbmRzaGFrZV9zdWNjZXNzID0gZmFsc2U7Ci12YXIgd3NfbG9jYXRpb247
Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SUQpOwot
ICAgIHNob3VsZEJlVHJ1ZSgiaGFuZHNoYWtlX3N1Y2Nlc3MiKTsKLSAgICBzaG91bGRCZSgid3Nf
bG9jYXRpb24iLCAidXJsIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLWRlYnVnKCJ1cmw9
IiArIHVybCk7Ci12YXIgd3MgPSBuZXcgV2ViU29ja2V0KHVybCk7Ci13cy5vbm9wZW4gPSBmdW5j
dGlvbiAoKSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBvcGVuIik7Ci0gICAgaGFuZHNoYWtl
X3N1Y2Nlc3MgPSB0cnVlOwotfTsKLXdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uIChldnQpIHsKLSAg
ICB3c19sb2NhdGlvbiA9IGV2dC5kYXRhOwotICAgIGRlYnVnKCJyZWNlaXZlZDoiICsgd3NfbG9j
YXRpb24pOwotICAgIHdzLmNsb3NlKCk7Ci19Owotd3Mub25jbG9zZSA9IGZ1bmN0aW9uICgpIHsK
LSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIGNsb3NlZCIpOwotICAgIGVuZFRlc3QoKTsKLX07Ci12
YXIgdGltZW91dElEID0gc2V0VGltZW91dCgiZW5kVGVzdCgpIiwgMjAwMCk7Ci0KLXZhciBzdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
anMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3VybC13aXRoLXF1ZXJ5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3VybC13aXRoLXF1ZXJ5LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggNDllN2MyOC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1xdWVyeS1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSwxNCArMCwwIEBACi1NYWtlIHN1cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdpdGgg
cXVlcnkgY29tcG9uZW50cyBzdWNjZXNzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LXVybD13czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90ZXN0cy9lY2hvLWxvY2F0aW9uP3E9
dgotV2ViU29ja2V0IGlzIG9wZW4KLXJlY2VpdmVkOndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29j
a2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24/cT12Ci1XZWJTb2NrZXQgaXMgY2xvc2VkCi1QQVNTIGhh
bmRzaGFrZV9zdWNjZXNzIGlzIHRydWUKLVBBU1Mgd3NfbG9jYXRpb24gaXMgdXJsCi1QQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgtcXVlcnktZm9y
LW5vLXF1ZXJ5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3VybC13aXRoLXF1ZXJ5LWZvci1uby1xdWVyeS1leHBlY3RlZC50eHQKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI5YTcxM2UuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5LWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLUNPTlNPTEUgTUVTU0FH
RTogbGluZSAwOiBFcnJvciBkdXJpbmcgV2ViU29ja2V0IGhhbmRzaGFrZTogbG9jYXRpb24gbWlz
bWF0Y2g6IHdzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL25vLXF1ZXJ5PyAhPSAv
d2Vic29ja2V0L3Rlc3RzL25vLXF1ZXJ5Ci1NYWtlIHN1cmUgaGFuZHNoYWtlIHdpdGggVVJMIHdp
dGggcXVlcnkgY29tcG9uZW50cyBmYWlscyBhZ2FpbnN0IHNlcnZlciB0aGF0IGRvZXNuJ3Qgc3Vw
cG9ydCBxdWVyeSBjb21wb25lbnQuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotdXJs
PXdzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL25vLXF1ZXJ5PwotV2ViU29ja2V0
IGlzIGNsb3NlZAotUEFTUyBoYW5kc2hha2Vfc3VjY2VzcyBpcyBmYWxzZQotUEFTUyB3c19sb2Nh
dGlvbiBpcyB1bmRlZmluZWQuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRF
U1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvdXJsLXdpdGgtcXVlcnktZm9yLW5vLXF1ZXJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1xdWVyeS1mb3Itbm8tcXVlcnkuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWRiZjNmZC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtd2l0aC1xdWVyeS1mb3It
bm8tcXVlcnkuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLTwhRE9DVFlQRSBI
VE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRl
c3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBoYW5kc2hha2Ugd2l0aCBV
Ukwgd2l0aCBxdWVyeSBjb21wb25lbnRzIGZhaWxzIGFnYWluc3Qgc2VydmVyIHRoYXQgZG9lc24n
dCBzdXBwb3J0IHF1ZXJ5IGNvbXBvbmVudC4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0
cnVlOwotCi12YXIgdXJsID0gIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL25v
LXF1ZXJ5PyI7Ci12YXIgaGFuZHNoYWtlX3N1Y2Nlc3MgPSBmYWxzZTsKLXZhciB3c19sb2NhdGlv
bjsKLQotZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7
Ci0gICAgc2hvdWxkQmVGYWxzZSgiaGFuZHNoYWtlX3N1Y2Nlc3MiKTsKLSAgICBzaG91bGRCZVVu
ZGVmaW5lZCgid3NfbG9jYXRpb24iKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQotZGVidWco
InVybD0iICsgdXJsKTsKLXZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLXdzLm9ub3BlbiA9
IGZ1bmN0aW9uICgpIHsKLSAgICBkZWJ1ZygiV2ViU29ja2V0IGlzIG9wZW4iKTsKLSAgICBoYW5k
c2hha2Vfc3VjY2VzcyA9IHRydWU7Ci19Owotd3Mub25tZXNzZ2UgPSBmdW5jdGlvbiAoZXZ0KSB7
Ci0gICAgd3NfbG9jYXRpb24gPSBldnQuZGF0YTsKLSAgICBkZWJ1ZygicmVjZWl2ZWQ6IiArIHdz
X2xvY2F0aW9uKTsKLSAgICB3cy5jbG9zZSgpOwotfTsKLXdzLm9uY2xvc2UgPSBmdW5jdGlvbiAo
KSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBjbG9zZWQiKTsKLSAgICBlbmRUZXN0KCk7Ci19
OwotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQoImVuZFRlc3QoKSIsIDIwMDApOwotCi12YXIg
c3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy91cmwtd2l0aC1xdWVyeS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvdXJsLXdpdGgtcXVlcnkuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggOGM4ZjU1OC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy91cmwtd2l0aC1xdWVyeS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vanMtdGVzdC1y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRl
c3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5Pgot
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci1kZXNjcmlwdGlvbigiTWFrZSBzdXJlIGhh
bmRzaGFrZSB3aXRoIFVSTCB3aXRoIHF1ZXJ5IGNvbXBvbmVudHMgc3VjY2Vzcy4iKTsKLQotd2lu
ZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi12YXIgdXJsID0gIndzOi8vMTI3LjAuMC4xOjg4
ODAvd2Vic29ja2V0L3Rlc3RzL2VjaG8tbG9jYXRpb24/cT12IjsKLXZhciBoYW5kc2hha2Vfc3Vj
Y2VzcyA9IGZhbHNlOwotdmFyIHdzX2xvY2F0aW9uOwotCi1mdW5jdGlvbiBlbmRUZXN0KCkKLXsK
LSAgICBjbGVhclRpbWVvdXQodGltZW91dElEKTsKLSAgICBzaG91bGRCZVRydWUoImhhbmRzaGFr
ZV9zdWNjZXNzIik7Ci0gICAgc2hvdWxkQmUoIndzX2xvY2F0aW9uIiwgInVybCIpOwotICAgIGZp
bmlzaEpTVGVzdCgpOwotfQotCi1kZWJ1ZygidXJsPSIgKyB1cmwpOwotdmFyIHdzID0gbmV3IFdl
YlNvY2tldCh1cmwpOwotd3Mub25vcGVuID0gZnVuY3Rpb24gKCkgewotICAgIGRlYnVnKCJXZWJT
b2NrZXQgaXMgb3BlbiIpOwotICAgIGhhbmRzaGFrZV9zdWNjZXNzID0gdHJ1ZTsKLX07Ci13cy5v
bm1lc3NhZ2UgPSBmdW5jdGlvbiAoZXZ0KSB7Ci0gICAgd3NfbG9jYXRpb24gPSBldnQuZGF0YTsK
LSAgICBkZWJ1ZygicmVjZWl2ZWQ6IiArIHdzX2xvY2F0aW9uKTsKLSAgICB3cy5jbG9zZSgpOwot
fTsKLXdzLm9uY2xvc2UgPSBmdW5jdGlvbiAoKSB7Ci0gICAgZGVidWcoIldlYlNvY2tldCBpcyBj
bG9zZWQiKTsKLSAgICBlbmRUZXN0KCk7Ci19OwotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQo
ImVuZFRlc3QoKSIsIDIwMDApOwotCi12YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKLTwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtZXZlbnQtdGFyZ2V0LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNv
Y2tldC1ldmVudC10YXJnZXQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAzNzlhNDRlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3dlYnNvY2tldC1ldmVudC10YXJnZXQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTggKzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdlYlNvY2tldCBp
cyBjbG9zZWQgYmVmb3JlIHRoZSBjb25uZWN0aW9uIGlzIGVzdGFibGlzaGVkLgotTWFrZSBzdXJl
IFdlYlNvY2tldCBvYmplY3QgYWN0cyBhcyBFdmVudFRhcmdldC4KLQotT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgotCi1QQVNTIG9wZW5fZXZlbnRfaGFuZGxlZCBpcyBmYWxzZQotUEFTUyBtZXNz
YWdlX2V2ZW50X2hhbmRsZWQgaXMgZmFsc2UKLVBBU1MgY2xvc2VfZXZlbnRfaGFuZGxlZCBpcyBm
YWxzZQotUEFTUyBvcGVuX2V2ZW50X2hhbmRsZWQgaXMgdHJ1ZQotUEFTUyBvcGVuX2V2ZW50X2hh
bmRsZWQgaXMgZmFsc2UKLVBBU1MgbWVzc2FnZV9ldmVudF9oYW5kbGVkIGlzIHRydWUKLVBBU1Mg
bWVzc2FnZV9ldmVudF9oYW5kbGVkIGlzIGZhbHNlCi1QQVNTIGNsb3NlX2V2ZW50X2hhbmRsZWQg
aXMgdHJ1ZQotUEFTUyBjbG9zZV9ldmVudF9oYW5kbGVkIGlzIGZhbHNlCi1QQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd2Vic29ja2V0LWV2ZW50LXRhcmdldC5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd2Vic29ja2V0LWV2
ZW50LXRhcmdldC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhYWQ1ODg1Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNv
Y2tldC1ldmVudC10YXJnZXQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDY5ICswLDAgQEAKLTwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhl
YWQ+Ci08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2pzLXRlc3QtcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSBXZWJTb2Nr
ZXQgb2JqZWN0IGFjdHMgYXMgRXZlbnRUYXJnZXQuIik7Ci0KLXZhciB3cyA9IG5ldyBXZWJTb2Nr
ZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZSIpOwotd3MuY2xv
c2UoKTsgLy8gVGhhdCBpcyBub3QgYSB0ZXN0IHdpdGggYSBXZWJTb2NrZXQgc2VydmVyLCBwcmV2
ZW50IGxvZ2dpbmcgYW4gZXJyb3IgdG8gY29uc29sZS4KLXZhciBvcGVuX2V2ZW50X2hhbmRsZWQg
PSBmYWxzZTsKLXZhciBtZXNzYWdlX2V2ZW50X2hhbmRsZWQgPSBmYWxzZTsKLXZhciBjbG9zZV9l
dmVudF9oYW5kbGVkID0gZmFsc2U7Ci1mdW5jdGlvbiBvcGVuTGlzdGVuZXIoKSB7Ci0gICAgb3Bl
bl9ldmVudF9oYW5kbGVkID0gdHJ1ZTsKLX07Ci1mdW5jdGlvbiBtZXNzYWdlTGlzdGVuZXIoKSB7
Ci0gICAgbWVzc2FnZV9ldmVudF9oYW5kbGVkID0gdHJ1ZTsKLX07Ci1mdW5jdGlvbiBjbG9zZUxp
c3RlbmVyKCkgewotICAgIGNsb3NlX2V2ZW50X2hhbmRsZWQgPSB0cnVlOwotfQotd3MuYWRkRXZl
bnRMaXN0ZW5lcignb3BlbicsIG9wZW5MaXN0ZW5lciwgZmFsc2UpOwotd3MuYWRkRXZlbnRMaXN0
ZW5lcignbWVzc2FnZScsIG1lc3NhZ2VMaXN0ZW5lciwgZmFsc2UpOwotd3MuYWRkRXZlbnRMaXN0
ZW5lcignY2xvc2UnLCBjbG9zZUxpc3RlbmVyLCBmYWxzZSk7Ci0KLXNob3VsZEJlKCJvcGVuX2V2
ZW50X2hhbmRsZWQiLCAiZmFsc2UiKTsKLXNob3VsZEJlKCJtZXNzYWdlX2V2ZW50X2hhbmRsZWQi
LCAiZmFsc2UiKTsKLXNob3VsZEJlKCJjbG9zZV9ldmVudF9oYW5kbGVkIiwgImZhbHNlIik7Ci0K
LXZhciBldnQgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgiRXZlbnRzIik7Ci1ldnQuaW5pdEV2ZW50
KCJvcGVuIiwgdHJ1ZSwgZmFsc2UpOwotd3MuZGlzcGF0Y2hFdmVudChldnQpOwotc2hvdWxkQmUo
Im9wZW5fZXZlbnRfaGFuZGxlZCIsICJ0cnVlIik7Ci0KLW9wZW5fZXZlbnRfaGFuZGxlZCA9IGZh
bHNlOwotd3MucmVtb3ZlRXZlbnRMaXN0ZW5lcignb3BlbicsIG9wZW5MaXN0ZW5lcik7Ci13cy5k
aXNwYXRjaEV2ZW50KGV2dCk7Ci1zaG91bGRCZSgib3Blbl9ldmVudF9oYW5kbGVkIiwgImZhbHNl
Iik7Ci0KLWV2dCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJNZXNzYWdlRXZlbnQiKTsKLWV2dC5p
bml0RXZlbnQoIm1lc3NhZ2UiLCB0cnVlLCBmYWxzZSk7Ci13cy5kaXNwYXRjaEV2ZW50KGV2dCk7
Ci1zaG91bGRCZSgibWVzc2FnZV9ldmVudF9oYW5kbGVkIiwgInRydWUiKTsKLQotbWVzc2FnZV9l
dmVudF9oYW5kbGVkID0gZmFsc2U7Ci13cy5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywg
bWVzc2FnZUxpc3RlbmVyKTsKLXdzLmRpc3BhdGNoRXZlbnQoZXZ0KTsKLXNob3VsZEJlKCJtZXNz
YWdlX2V2ZW50X2hhbmRsZWQiLCAiZmFsc2UiKTsKLQotZXZ0ID0gZG9jdW1lbnQuY3JlYXRlRXZl
bnQoIkV2ZW50cyIpOwotZXZ0LmluaXRFdmVudCgiY2xvc2UiLCB0cnVlLCBmYWxzZSk7Ci13cy5k
aXNwYXRjaEV2ZW50KGV2dCk7Ci1zaG91bGRCZSgiY2xvc2VfZXZlbnRfaGFuZGxlZCIsICJ0cnVl
Iik7Ci0KLWNsb3NlX2V2ZW50X2hhbmRsZWQgPSBmYWxzZTsKLXdzLnJlbW92ZUV2ZW50TGlzdGVu
ZXIoJ2Nsb3NlJywgY2xvc2VMaXN0ZW5lcik7Ci13cy5kaXNwYXRjaEV2ZW50KGV2dCk7Ci1zaG91
bGRCZSgiY2xvc2VfZXZlbnRfaGFuZGxlZCIsICJmYWxzZSIpOwotCi12YXIgc3VjY2Vzc2Z1bGx5
UGFyc2VkID0gdHJ1ZTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzLXRlc3Qt
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2Nr
ZXQtcGVuZGluZy1hY3Rpdml0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtcGVuZGluZy1hY3Rpdml0eS1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDczNDBiYzAuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd2Vic29ja2V0LXBlbmRpbmctYWN0
aXZpdHktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMiArMCwwIEBACi1BTEVSVDog
UEFTUwotU2hvdWxkIGFsZXJ0ICJQQVNTIi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tldC1wZW5kaW5nLWFjdGl2aXR5Lmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtcGVuZGluZy1h
Y3Rpdml0eS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxZmNiNmIzLi4wMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tl
dC1wZW5kaW5nLWFjdGl2aXR5Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi08
Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci08cD5TaG91bGQgYWxlcnQgIlBBU1MiLjwvcD4KLTxzY3Jp
cHQ+Ci1pZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKLX0KLQotZnVuY3Rpb24gZ2MoKQotewotICAgIGlmICh3aW5kb3cuR0NDb250cm9s
bGVyKQotICAgICAgICByZXR1cm4gR0NDb250cm9sbGVyLmNvbGxlY3QoKTsKLQotICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgMTAwMDA7IGkrKykgeyAvLyA+IGZvcmNlIGdhcmJhZ2UgY29sbGVjdGlv
biAoRkYgcmVxdWlyZXMgYWJvdXQgOUsgYWxsb2NhdGlvbnMgYmVmb3JlIGEgY29sbGVjdCkKLSAg
ICAgICAgdmFyIHMgPSBuZXcgU3RyaW5nKCJhYmMiKTsKLSAgICB9Ci19Ci0KLWZ1bmN0aW9uIHRl
c3QoKQotewotICAgIHZhciB3cyA9IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAv
d2Vic29ja2V0L3Rlc3RzL2VjaG8iKTsKLSAgICB3cy5vbm9wZW4gPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgdGhpcy5zZW5kKCJQQVNTIik7Ci0gICAgfQotICAgIHdzLm9ubWVzc2FnZSA9IGZ1bmN0
aW9uKG1zZykgewotICAgICAgICBhbGVydChtc2cuZGF0YSk7Ci0gICAgICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5u
b3RpZnlEb25lKCk7Ci0gICAgfQotICAgIHdzID0gbnVsbDsKLSAgICBnYygpOwotfQotPC9zY3Jp
cHQ+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3dlYnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGRlNmQ3MS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93ZWJzb2NrZXQtcHJv
dG9jb2wtaWdub3JlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMCArMCwwIEBA
Ci1UZXN0IFdlYlNvY2tldCBoYW5kc2hha2Ugc3VjY2VzcyB3aXRob3V0IHByb3RvY29sIGFuZCBp
Z25vcmUgV2ViU29ja2V0LVByb3RvY29sIGZyb20gc2VydmVyLgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLUNvbm5lY3RlZAotUEFTUyBwcm90b2NvbCBpcyAic3ViLXByb3RvY29sIgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tldC1w
cm90b2NvbC1pZ25vcmVkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy93ZWJzb2NrZXQtcHJvdG9jb2wtaWdub3JlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA0MWIzMzRhLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tldC1wcm90b2NvbC1pZ25vcmVkLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw1NSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPgotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vanMtdGVzdC1yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci08ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLWRlc2Ny
aXB0aW9uKCJUZXN0IFdlYlNvY2tldCBoYW5kc2hha2Ugc3VjY2VzcyB3aXRob3V0IHByb3RvY29s
IGFuZCBpZ25vcmUgV2ViU29ja2V0LVByb3RvY29sIGZyb20gc2VydmVyLiIpOwotCi13aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLXZhciBwcm90b2NvbDsKLQotZnVuY3Rpb24gZW5kVGVz
dCgpCi17Ci0gICAgc2hvdWxkQmUoInByb3RvY29sIiwgJyJzdWItcHJvdG9jb2wiJyk7Ci0gICAg
Y2xlYXJUaW1lb3V0KHRpbWVvdXRJRCk7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLXZhciB1
cmwgPSAid3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvcHJvdG9jb2wtdGVzdD9w
cm90b2NvbD1zdWItcHJvdG9jb2wiOwotdmFyIHdzID0gbmV3IFdlYlNvY2tldCh1cmwpOwotCi13
cy5vbm9wZW4gPSBmdW5jdGlvbigpCi17Ci0gICAgZGVidWcoIkNvbm5lY3RlZCIpOwotfTsKLQot
d3Mub25tZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2VFdmVudCkKLXsKLSAgICBwcm90b2NvbCA9
IG1lc3NhZ2VFdmVudC5kYXRhOwotICAgIHdzLmNsb3NlKCk7Ci19OwotCi13cy5vbmNsb3NlID0g
ZnVuY3Rpb24oKQotewotICAgIGVuZFRlc3QoKTsKLX07Ci0KLWZ1bmN0aW9uIHRpbWVPdXRDYWxs
YmFjaygpCi17Ci0gICAgZGVidWcoIlRpbWVkIG91dCBpbiBzdGF0ZTogIiArIHdzLnJlYWR5U3Rh
dGUpOwotICAgIGVuZFRlc3QoKTsKLX0KLQotdmFyIHRpbWVvdXRJRCA9IHNldFRpbWVvdXQodGlt
ZU91dENhbGxiYWNrLCAzMDAwKTsKLQotdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Ci08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy10ZXN0LXJlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi1vbm1lc3Nh
Z2UtY3Jhc2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvd29ya2Vycy9jbG9zZS1pbi1vbm1lc3NhZ2UtY3Jhc2gtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkZGEyMzg3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4tb25tZXNzYWdl
LWNyYXNoLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLU5lc3Rl
ZCBjcmVhdGlvbiBvZiB0d28gV2ViU29ja2V0cyBzaG91bGQgbm90IGNhdXNlIGEgY3Jhc2guCi0K
LU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUzogd29ya2VyOiBQYXJzZWQgc3VjY2Vz
c2Z1bGx5LgotUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuCi1QQVNTOiB3b3JrZXI6IFJlY2VpdmVk
IG1lc3NhZ2U6ICJIZWxsbyBmcm9tIFNpbXBsZSBXU0guIgotUEFTUzogd29ya2VyOiBDbG9zZWQu
Ci1ET05FCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLmh0bWwg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL2Nsb3NlLWlu
LW9ubWVzc2FnZS1jcmFzaC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkOTVh
MTdjLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3Rz
L3dvcmtlcnMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwzNSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9F
TiI+Ci08aHRtbD4KLTxoZWFkPjwvaGVhZD4KLTxib2R5PgotPHA+TmVzdGVkIGNyZWF0aW9uIG9m
IHR3byBXZWJTb2NrZXRzIHNob3VsZCBub3QgY2F1c2UgYSBjcmFzaC48L3A+Ci08cD48L3A+Ci08
cD5PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuPC9wPgotPHByZSBpZD1sb2c+Ci08L3ByZT4KLTxz
Y3JpcHQ+Ci1pZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRV
bnRpbERvbmUoKTsKLX0KLQotZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCi17Ci0gICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIlxuIjsKLX0KLQot
ZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgbG9nKCJURVNUIENPTVBMRVRFIik7Ci0gICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIubm90aWZ5RG9uZSgpOwotfQotdmFyIHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy9j
bG9zZS1pbi1vbm1lc3NhZ2UtY3Jhc2guanMnKTsKLXdvcmtlci5vbm1lc3NhZ2UgPSBmdW5jdGlv
biAoZXZ0KSB7Ci0gICAgbG9nKGV2dC5kYXRhKTsKLSAgICBpZiAoZXZ0LmRhdGEgPT0gIkRPTkUi
KQotICAgICAgICBlbmRUZXN0KCk7Ci19OwotPC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJz
L2Nsb3NlLWluLXNoYXJlZC13b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi1zaGFyZWQtd29ya2VyLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWFjMzNlZS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL2Nsb3Nl
LWluLXNoYXJlZC13b3JrZXItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAs
MCBAQAotVGVzdCBmb3IgV2ViIFNvY2tldCBjbG9zZSBpbiBTaGFyZWRXb3JrZXIuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUzogd29ya2VyOiBpbml0Ci1QQVNTOiB3b3JrZXI6
IFdlYlNvY2tldCBleGlzdHMKLVBBU1M6IHdvcmtlcjogc3VjY2Vzc2Z1bGx5UGFyc2VkOltvYmpl
Y3QgV2ViU29ja2V0XQotUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuCi1QQVNTOiB3b3JrZXI6IENs
b3NlZC4KLURPTkUKLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi1zaGFyZWQtd29ya2VyLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL2Nsb3Nl
LWluLXNoYXJlZC13b3JrZXIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTFi
NzdkNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy93b3JrZXJzL2Nsb3NlLWluLXNoYXJlZC13b3JrZXIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDM1ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KLTxodG1sPgotPGhlYWQ+PC9oZWFkPgotPGJvZHk+Ci08cD5UZXN0IGZvciBXZWIgU29ja2V0
IGNsb3NlIGluIFNoYXJlZFdvcmtlci48L3A+Ci08cD48L3A+Ci08cD5PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuPC9wPgotPHByZSBpZD1sb2c+Ci08L3ByZT4KLTxzY3JpcHQ+Ci1pZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOwotICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKLX0KLQot
ZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCi17Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxv
ZyIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIlxuIjsKLX0KLQotZnVuY3Rpb24gZW5kVGVzdCgp
Ci17Ci0gICAgbG9nKCJURVNUIENPTVBMRVRFIik7Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwot
fQotdmFyIHdvcmtlciA9IG5ldyBTaGFyZWRXb3JrZXIoJ3Jlc291cmNlcy9jbG9zZS1pbi13b3Jr
ZXIuanMnLCAnd2Vic29ja2V0Q2xvc2VJbldvcmtlcicpOwotd29ya2VyLnBvcnQub25tZXNzYWdl
ID0gZnVuY3Rpb24gKGV2dCkgewotICAgIGxvZyhldnQuZGF0YSk7Ci0gICAgaWYgKGV2dC5kYXRh
ID09ICJET05FIikKLSAgICAgICAgZW5kVGVzdCgpOwotfTsKLTwvc2NyaXB0PgotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvd29ya2Vycy9jbG9zZS1pbi13b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9jbG9zZS1pbi13b3JrZXItZXhwZWN0ZWQu
dHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3YjlmOTA1Li4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4t
d29ya2VyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLVRlc3Qg
Zm9yIFdlYiBTb2NrZXQgY2xvc2UgaW4gV29ya2VyLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCi0KLVBBU1M6IHdvcmtlcjogaW5pdAotUEFTUzogd29ya2VyOiBXZWJTb2NrZXQgZXhpc3Rz
Ci1QQVNTOiB3b3JrZXI6IHN1Y2Nlc3NmdWxseVBhcnNlZDpbb2JqZWN0IFdlYlNvY2tldF0KLVBB
U1M6IHdvcmtlcjogQ29ubmVjdGVkLgotUEFTUzogd29ya2VyOiBDbG9zZWQuCi1ET05FCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4td29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL2Nsb3NlLWluLXdvcmtlci5odG1sCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3YzYzMWQyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4td29ya2VyLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwzNSArMCwwIEBACi08IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Ci08aHRtbD4KLTxoZWFkPjwvaGVhZD4KLTxib2R5PgotPHA+
VGVzdCBmb3IgV2ViIFNvY2tldCBjbG9zZSBpbiBXb3JrZXIuPC9wPgotPHA+PC9wPgotPHA+T24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLjwvcD4KLTxwcmUgaWQ9bG9nPgotPC9wcmU+Ci08c2NyaXB0
PgotaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxE
b25lKCk7Ci19Ci0KLWZ1bmN0aW9uIGxvZyhtZXNzYWdlKQotewotICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJsb2ciKS5pbm5lckhUTUwgKz0gbWVzc2FnZSArICJcbiI7Ci19Ci0KLWZ1bmN0
aW9uIGVuZFRlc3QoKQotewotICAgIGxvZygiVEVTVCBDT01QTEVURSIpOwotICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5v
dGlmeURvbmUoKTsKLX0KLXZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCdyZXNvdXJjZXMvY2xvc2Ut
aW4td29ya2VyLmpzJyk7Ci13b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgewotICAg
IGxvZyhldnQuZGF0YSk7Ci0gICAgaWYgKGV2dC5kYXRhID09ICJET05FIikKLSAgICAgICAgZW5k
VGVzdCgpOwotfTsKLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvY2xv
c2UtaW4tb25tZXNzYWdlLWNyYXNoLmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNjk0ZDBmLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3Nl
LWluLW9ubWVzc2FnZS1jcmFzaC5qcworKysgL2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLWZ1
bmN0aW9uIHJ1blRlc3RzKCkKLXsKLSAgICB0cnkgewotICAgICAgICB2YXIgdXJsID0gJ3dzOi8v
bG9jYWxob3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL3NpbXBsZSc7
Ci0gICAgICAgIHZhciB3cyA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLQotICAgICAgICB3cy5vbm9w
ZW4gPSBmdW5jdGlvbigpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHBvc3RNZXNzYWdlKCdQQVNT
OiB3b3JrZXI6IENvbm5lY3RlZC4nKTsKLSAgICAgICAgfTsKLQotICAgICAgICB3cy5vbm1lc3Nh
Z2UgPSBmdW5jdGlvbihtZXNzYWdlRXZlbnQpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHBvc3RN
ZXNzYWdlKCdQQVNTOiB3b3JrZXI6IFJlY2VpdmVkIG1lc3NhZ2U6ICInICsgbWVzc2FnZUV2ZW50
LmRhdGEgKyAnIicpOwotICAgICAgICAgICAgd3MuY2xvc2UoKTsKLSAgICAgICAgfTsKLQotICAg
ICAgICB3cy5vbmNsb3NlID0gZnVuY3Rpb24oKQotICAgICAgICB7Ci0gICAgICAgICAgICBwb3N0
TWVzc2FnZSgnUEFTUzogd29ya2VyOiBDbG9zZWQuJyk7Ci0gICAgICAgICAgICBwb3N0TWVzc2Fn
ZSgnRE9ORScpOwotICAgICAgICB9OwotICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgcG9zdE1l
c3NhZ2UoJ0ZBSUw6IHdvcmtlcjogVW5leHBlY3RlZCBleGNlcHRpb246ICcgKyBlKTsKLSAgICB9
IGZpbmFsbHkgewotICAgICAgICBwb3N0TWVzc2FnZSgnUEFTUzogd29ya2VyOiBQYXJzZWQgc3Vj
Y2Vzc2Z1bGx5LicpOwotICAgIH0KLX0KLQotcnVuVGVzdHMoKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL2Nsb3Nl
LWluLXdvcmtlci5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dv
cmtlcnMvcmVzb3VyY2VzL2Nsb3NlLWluLXdvcmtlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNGU2ODA4NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy93b3JrZXJzL3Jlc291cmNlcy9jbG9zZS1pbi13b3JrZXIuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwzNiArMCwwIEBACi1pZiAoc2VsZi5wb3N0TWVzc2FnZSkKLSAgICBydW5U
ZXN0cygpOwotZWxzZQotICAgIG9uY29ubmVjdCA9IGhhbmRsZUNvbm5lY3Q7Ci0KLWZ1bmN0aW9u
IGhhbmRsZUNvbm5lY3QoZXZlbnQpCi17Ci0gICAgLy8gRm9yIHNoYXJlZCB3b3JrZXJzLCBjcmVh
dGUgYSBmYXV4IHBvc3RNZXNzYWdlKCkgQVBJIHRvIHNlbmQgbWVzc2FnZSBiYWNrIHRvIHRoZSBw
YXJlbnQgcGFnZS4KLSAgICBzZWxmLnBvc3RNZXNzYWdlID0gZnVuY3Rpb24gKG1lc3NhZ2UpIHsg
ZXZlbnQucG9ydHNbMF0ucG9zdE1lc3NhZ2UobWVzc2FnZSk7IH07Ci0gICAgcnVuVGVzdHMoKTsK
LX07Ci0KLWZ1bmN0aW9uIHJ1blRlc3RzKCkKLXsKLSAgICB2YXIgd3M7Ci0gICAgdHJ5IHsKLSAg
ICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogaW5pdCIpOwotICAgICAgICBpZiAoJ1dl
YlNvY2tldCcgaW4gc2VsZikKLSAgICAgICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6
IFdlYlNvY2tldCBleGlzdHMiKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgcG9zdE1lc3Nh
Z2UoIkZBSUw6IHdvcmtlcjogbm8gV2ViU29ja2V0Iik7Ci0gICAgICAgIHdzID0gbmV3IFdlYlNv
Y2tldCgnd3M6Ly9sb2NhbGhvc3Q6ODg4MC93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJj
ZXMvZWNobycpOwotICAgICAgICB3cy5vbm9wZW4gPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
IHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6IENvbm5lY3RlZC4iKTsKLSAgICAgICAgICAgIHdz
LmNsb3NlKCk7Ci0gICAgICAgIH07Ci0gICAgICAgIHdzLm9uY2xvc2UgPSBmdW5jdGlvbigpIHsK
LSAgICAgICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3b3JrZXI6IENsb3NlZC4iKTsKLSAgICAg
ICAgICAgIHBvc3RNZXNzYWdlKCJET05FIik7Ci0gICAgICAgIH07Ci0gICAgfSBjYXRjaCAoZSkg
ewotICAgICAgICBwb3N0TWVzc2FnZSgiRkFJTDogd29ya2VyOiBVbmV4cGVjdGVkIGV4Y2VwdGlv
bjogIiArIGUpOwotICAgIH0gZmluYWxseSB7Ci0gICAgICAgIHBvc3RNZXNzYWdlKCJQQVNTOiB3
b3JrZXI6IHN1Y2Nlc3NmdWxseVBhcnNlZDoiICsgd3MpOwotICAgIH0KLX07CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3Jlc291cmNl
cy9lY2hvLWNoYWxsZW5nZV93c2gucHkgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tl
dC90ZXN0cy93b3JrZXJzL3Jlc291cmNlcy9lY2hvLWNoYWxsZW5nZV93c2gucHkKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM5MGQ0NDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvZWNoby1jaGFsbGVu
Z2Vfd3NoLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotZnJvbSBtb2RfcHl3ZWJz
b2NrZXQgaW1wb3J0IG1zZ3V0aWwKLQotCi1kZWYgd2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hh
a2UocmVxdWVzdCk6Ci0gICAgcGFzcwotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEo
cmVxdWVzdCk6Ci0gICAgbXNndXRpbC5zZW5kX21lc3NhZ2UocmVxdWVzdCwgX2hleGlmeShyZXF1
ZXN0LndzX2NoYWxsZW5nZSkpCi0KLQotZGVmIF9oZXhpZnkoYnl0ZXMpOgotICAgIHJldHVybiAn
Oicuam9pbihbJyUwMlgnICUgb3JkKGJ5dGUpIGZvciBieXRlIGluIGJ5dGVzXSkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3Vy
Y2VzL2VjaG9fd3NoLnB5IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
d29ya2Vycy9yZXNvdXJjZXMvZWNob193c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDQyOWY1ODEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvZWNob193c2gucHkKKysrIC9kZXYvbnVsbApAQCAt
MSw0NiArMCwwIEBACi0jIENvcHlyaWdodCAyMDEwLCBHb29nbGUgSW5jLgotIyBBbGwgcmlnaHRz
IHJlc2VydmVkLgotIwotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotIyBtZXQ6Ci0jCi0j
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0jIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0jIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSMg
ZGlzdHJpYnV0aW9uLgotIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCi0jIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0jIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0jCi0jIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSMg
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKLSMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0jIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCi0jIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAot
IyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UCi0jIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSMgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAot
IyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKLSMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotCi1mcm9tIG1vZF9weXdlYnNvY2tldCBp
bXBvcnQgbXNndXRpbAotCi0KLV9HT09EQllFX01FU1NBR0UgPSAnR29vZGJ5ZScKLQotCi1kZWYg
d2ViX3NvY2tldF9kb19leHRyYV9oYW5kc2hha2UocmVxdWVzdCk6Ci0gICAgcGFzcyAgIyBBbHdh
eXMgYWNjZXB0LgotCi0KLWRlZiB3ZWJfc29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0g
ICAgd2hpbGUgVHJ1ZToKLSAgICAgICAgbGluZSA9IG1zZ3V0aWwucmVjZWl2ZV9tZXNzYWdlKHJl
cXVlc3QpCi0gICAgICAgIG1zZ3V0aWwuc2VuZF9tZXNzYWdlKHJlcXVlc3QsIGxpbmUpCi0gICAg
ICAgIGlmIGxpbmUgPT0gX0dPT0RCWUVfTUVTU0FHRToKLSAgICAgICAgICAgIHJldHVybgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9y
ZXNvdXJjZXMvc2ltcGxlX3dzaC5weSBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL3NpbXBsZV93c2gucHkKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGZjMDI3MWMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvc2ltcGxlX3dzaC5weQorKysgL2Rl
di9udWxsCkBAIC0xLDM4ICswLDAgQEAKLSMgQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0jCi0jIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotIyBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0j
IG1ldDoKLSMKLSMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0jIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIK
LSMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZQotIyBkaXN0cmlidXRpb24uCi0jICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29v
Z2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSMgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSMgdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSMKLSMgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwotIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSMgT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCi0jIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0jIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotIyBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0jIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi0KLWZyb20gbW9kX3B5
d2Vic29ja2V0IGltcG9ydCBtc2d1dGlsCi0KLQotZGVmIHdlYl9zb2NrZXRfZG9fZXh0cmFfaGFu
ZHNoYWtlKHJlcXVlc3QpOgotICAgIHBhc3MgIyBBbHdheXMgYWNjZXB0LgotCi0KLWRlZiB3ZWJf
c29ja2V0X3RyYW5zZmVyX2RhdGEocmVxdWVzdCk6Ci0gICAgbXNndXRpbC5zZW5kX21lc3NhZ2Uo
cmVxdWVzdCwgJ0hlbGxvIGZyb20gU2ltcGxlIFdTSC4nKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvd29ya2VyLWhh
bmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtlci1oYW5kc2hha2UtY2hhbGxl
bmdlLXJhbmRvbW5lc3MuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU2OGFkOTUu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29y
a2Vycy9yZXNvdXJjZXMvd29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5qcwor
KysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLXZhciBjaGFsbGVuZ2UxOwotdmFyIGNoYWxs
ZW5nZTI7Ci0KLWZ1bmN0aW9uIGVuZFRlc3QoKQotewotICAgIGlmIChjaGFsbGVuZ2UxID09PSBj
aGFsbGVuZ2UyKQotICAgICAgICBwb3N0TWVzc2FnZSgnRkFJTDogd29ya2VyOiBjaGFsbGVuZ2Ux
ID09PSBjaGFsbGVuZ2UyIChjaGFsbGVuZ2Ugd2FzICcgKyBjaGFsbGVuZ2UxICsgJyknKTsKLSAg
ICBlbHNlCi0gICAgICAgIHBvc3RNZXNzYWdlKCdQQVNTOiB3b3JrZXI6IGNoYWxsZW5nZTEgIT09
IGNoYWxsZW5nZTInKTsKLQotICAgIHBvc3RNZXNzYWdlKCdET05FJyk7Ci19Ci0KLWZ1bmN0aW9u
IHJ1blRlc3RzKCkKLXsKLSAgICB0cnkgewotICAgICAgICB2YXIgdXJsID0gJ3dzOi8vbG9jYWxo
b3N0Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL2VjaG8tY2hhbGxlbmdl
JzsKLSAgICAgICAgdmFyIHdzMSA9IG5ldyBXZWJTb2NrZXQodXJsKTsKLQotICAgICAgICB3czEu
b25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQotICAgICAgICB7Ci0gICAgICAgICAg
ICBjaGFsbGVuZ2UxID0gbWVzc2FnZUV2ZW50LmRhdGE7Ci0gICAgICAgICAgICB3czEuY2xvc2Uo
KTsKLSAgICAgICAgfQotCi0gICAgICAgIHdzMS5vbmNsb3NlID0gZnVuY3Rpb24oKQotICAgICAg
ICB7Ci0gICAgICAgICAgICB2YXIgd3MyID0gbmV3IFdlYlNvY2tldCh1cmwpOwotCi0gICAgICAg
ICAgICB3czIub25tZXNzYWdlID0gZnVuY3Rpb24obWVzc2FnZUV2ZW50KQotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIGNoYWxsZW5nZTIgPSBtZXNzYWdlRXZlbnQuZGF0YTsKLSAgICAg
ICAgICAgICAgICB3czIuY2xvc2UoKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgd3My
Lm9uY2xvc2UgPSBmdW5jdGlvbigpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgZW5k
VGVzdCgpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfSBjYXRjaCAoZSkgewotICAg
ICAgICBwb3N0TWVzc2FnZSgnRkFJTDogd29ya2VyOiBVbmV4cGVjdGVkIGV4Y2VwdGlvbjogJyAr
IGUpOwotICAgIH0gZmluYWxseSB7Ci0gICAgICAgIHBvc3RNZXNzYWdlKCdQQVNTOiB3b3JrZXI6
IFBhcnNlZCBzdWNjZXNzZnVsbHkuJyk7Ci0gICAgfQotfQotCi1ydW5UZXN0cygpOwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNv
dXJjZXMvd29ya2VyLXNpbXBsZS5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL3dvcmtlcnMvcmVzb3VyY2VzL3dvcmtlci1zaW1wbGUuanMKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGUzZGFmZmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9yZXNvdXJjZXMvd29ya2VyLXNpbXBsZS5qcwor
KysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLWlmIChzZWxmLnBvc3RNZXNzYWdlKQotICAg
IHJ1blRlc3RzKCk7Ci1lbHNlCi0gICAgb25jb25uZWN0ID0gaGFuZGxlQ29ubmVjdDsKLQotZnVu
Y3Rpb24gaGFuZGxlQ29ubmVjdChldmVudCkKLXsKLSAgICAvLyBGb3Igc2hhcmVkIHdvcmtlcnMs
IGNyZWF0ZSBhIGZhdXggcG9zdE1lc3NhZ2UoKSBBUEkgdG8gc2VuZCBtZXNzYWdlIGJhY2sgdG8g
dGhlIHBhcmVudCBwYWdlLgotICAgIHNlbGYucG9zdE1lc3NhZ2UgPSBmdW5jdGlvbiAobWVzc2Fn
ZSkgeyBldmVudC5wb3J0c1swXS5wb3N0TWVzc2FnZShtZXNzYWdlKTsgfTsKLSAgICBydW5UZXN0
cygpOwotfTsKLQotZnVuY3Rpb24gcnVuVGVzdHMoKQotewotICAgIHZhciB3czsKLSAgICB0cnkg
ewotICAgICAgICBwb3N0TWVzc2FnZSgiUEFTUzogd29ya2VyOiBpbml0Iik7Ci0gICAgICAgIGlm
ICgnV2ViU29ja2V0JyBpbiBzZWxmKQotICAgICAgICAgICAgcG9zdE1lc3NhZ2UoIlBBU1M6IHdv
cmtlcjogV2ViU29ja2V0IGV4aXN0cyIpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBwb3N0
TWVzc2FnZSgiUEFTUzogd29ya2VyOiBubyBXZWJTb2NrZXQiKTsKLSAgICAgICAgd3MgPSBuZXcg
V2ViU29ja2V0KCd3czovL2xvY2FsaG9zdDo4ODgwL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3Jl
c291cmNlcy9zaW1wbGUnKTsKLSAgICAgICAgd3Mub25vcGVuID0gZnVuY3Rpb24oKSB7Ci0gICAg
ICAgICAgICBwb3N0TWVzc2FnZSgiUEFTUzogd29ya2VyOiBDb25uZWN0ZWQuIik7Ci0gICAgICAg
IH07Ci0gICAgICAgIHdzLm9ubWVzc2FnZSA9IGZ1bmN0aW9uKGV2dCkgewotICAgICAgICAgICAg
cG9zdE1lc3NhZ2UoIlBBU1M6IHdvcmtlcjogUmVjZWl2ZWQ6ICciICsgZXZ0LmRhdGEgKyAiJyIp
OwotICAgICAgICB9OwotICAgICAgICB3cy5vbmNsb3NlID0gZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICAgICBwb3N0TWVzc2FnZSgiUEFTUzogd29ya2VyOiBDbG9zZWQuIik7Ci0gICAgICAgICAgICBw
b3N0TWVzc2FnZSgiRE9ORSIpOwotICAgICAgICB9OwotICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAg
ICAgcG9zdE1lc3NhZ2UoIkZBSUw6IHdvcmtlcjogVW5leHBlY3RlZCBleGNlcHRpb246ICIgKyBl
KTsKLSAgICB9IGZpbmFsbHkgewotICAgICAgICBwb3N0TWVzc2FnZSgiUEFTUzogd29ya2VyOiBz
dWNjZXNzZnVsbHlQYXJzZWQ6IiArIHdzKTsKLSAgICB9Ci19OwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9zaGFyZWQtd29ya2VyLXNp
bXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy93b3JrZXJzL3NoYXJlZC13b3JrZXItc2ltcGxlLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggODZiNmJkYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3NoYXJlZC13b3JrZXItc2ltcGxlLWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3QgZm9yIFdlYiBTb2Nr
ZXQgaW4gU2hhcmVkV29ya2VyLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1M6
IHdvcmtlcjogaW5pdAotUEFTUzogd29ya2VyOiBXZWJTb2NrZXQgZXhpc3RzCi1QQVNTOiB3b3Jr
ZXI6IHN1Y2Nlc3NmdWxseVBhcnNlZDpbb2JqZWN0IFdlYlNvY2tldF0KLVBBU1M6IHdvcmtlcjog
Q29ubmVjdGVkLgotUEFTUzogd29ya2VyOiBSZWNlaXZlZDogJ0hlbGxvIGZyb20gU2ltcGxlIFdT
SC4nCi1QQVNTOiB3b3JrZXI6IENsb3NlZC4KLURPTkUKLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy9zaGFy
ZWQtd29ya2VyLXNpbXBsZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvd29ya2Vycy9zaGFyZWQtd29ya2VyLXNpbXBsZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBkMjc5NjA2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvc2hhcmVkLXdvcmtlci1zaW1wbGUuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVU
Ri8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+PC9oZWFkPgotPGJvZHk+Ci08cD5UZXN0
IGZvciBXZWIgU29ja2V0IGluIFNoYXJlZFdvcmtlci48L3A+Ci08cD48L3A+Ci08cD5PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuPC9wPgotPHByZSBpZD1sb2c+Ci08L3ByZT4KLTxzY3JpcHQ+Ci1p
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOwotICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsKLX0KLQotZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCi17Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIlxuIjsKLX0KLQotZnVuY3Rpb24g
ZW5kVGVzdCgpCi17Ci0gICAgbG9nKCJURVNUIENPTVBMRVRFIik7Ci0gICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5
RG9uZSgpOwotfQotdmFyIHdvcmtlciA9IG5ldyBTaGFyZWRXb3JrZXIoJ3Jlc291cmNlcy93b3Jr
ZXItc2ltcGxlLmpzJywgJ3dlYnNvY2tldFNpbXBsZScpOwotd29ya2VyLnBvcnQub25tZXNzYWdl
ID0gZnVuY3Rpb24gKGV2dCkgewotICAgIGxvZyhldnQuZGF0YSk7Ci0gICAgaWYgKGV2dC5kYXRh
ID09ICJET05FIikKLSAgICAgICAgZW5kVGVzdCgpOwotfTsKLTwvc2NyaXB0PgotPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvd29ya2Vycy93b3JrZXItaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvd29y
a2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy1leHBlY3RlZC50eHQKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4Yzk4ODAuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy93b3JrZXItaGFuZHNoYWtlLWNoYWxs
ZW5nZS1yYW5kb21uZXNzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDkgKzAsMCBA
QAotSGFuZHNoYWtlIHJlcXVlc3Qgc2hvdWxkIGNvbnRhaW4gcmFuZG9tIGNoYWxsZW5nZSB2YWx1
ZXMgKGluIGEgd29ya2VyIHByb2Nlc3MpLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LVBBU1M6IHdvcmtlcjogUGFyc2VkIHN1Y2Nlc3NmdWxseS4KLVBBU1M6IHdvcmtlcjogY2hhbGxl
bmdlMSAhPT0gY2hhbGxlbmdlMgotRE9ORQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3dvcmtlci1oYW5k
c2hha2UtY2hhbGxlbmdlLXJhbmRvbW5lc3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvd29ya2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9t
bmVzcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiODQ2ZGFhLi4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvd29y
a2VyLWhhbmRzaGFrZS1jaGFsbGVuZ2UtcmFuZG9tbmVzcy5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsMzUgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgotPGh0bWw+Ci08aGVhZD48L2hlYWQ+Ci08Ym9keT4KLTxwPkhhbmRzaGFrZSByZXF1ZXN0
IHNob3VsZCBjb250YWluIHJhbmRvbSBjaGFsbGVuZ2UgdmFsdWVzIChpbiBhIHdvcmtlciBwcm9j
ZXNzKS48L3A+Ci08cD48L3A+Ci08cD5PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuPC9wPgotPHBy
ZSBpZD1sb2c+Ci08L3ByZT4KLTxzY3JpcHQ+Ci1pZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgIGxheW91
dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKLX0KLQotZnVuY3Rpb24gbG9nKG1lc3Nh
Z2UpCi17Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpLmlubmVySFRNTCArPSBt
ZXNzYWdlICsgIlxuIjsKLX0KLQotZnVuY3Rpb24gZW5kVGVzdCgpCi17Ci0gICAgbG9nKCJURVNU
IENPTVBMRVRFIik7Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOwotfQotdmFyIHdvcmtlciA9IG5l
dyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXItaGFuZHNoYWtlLWNoYWxsZW5nZS1yYW5kb21uZXNz
LmpzJyk7Ci13b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgewotICAgIGxvZyhldnQu
ZGF0YSk7Ci0gICAgaWYgKGV2dC5kYXRhID09ICJET05FIikKLSAgICAgICAgZW5kVGVzdCgpOwot
fTsKLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvd29ya2Vycy93b3JrZXItc2ltcGxlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvd29y
a2VyLXNpbXBsZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE2
NWE4NDIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvd29ya2Vycy93b3JrZXItc2ltcGxlLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDEzICswLDAgQEAKLVRlc3QgZm9yIFdlYiBTb2NrZXQgaW4gV29ya2VyLgotCi1PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCi0KLVBBU1M6IHdvcmtlcjogaW5pdAotUEFTUzogd29ya2VyOiBXZWJT
b2NrZXQgZXhpc3RzCi1QQVNTOiB3b3JrZXI6IHN1Y2Nlc3NmdWxseVBhcnNlZDpbb2JqZWN0IFdl
YlNvY2tldF0KLVBBU1M6IHdvcmtlcjogQ29ubmVjdGVkLgotUEFTUzogd29ya2VyOiBSZWNlaXZl
ZDogJ0hlbGxvIGZyb20gU2ltcGxlIFdTSC4nCi1QQVNTOiB3b3JrZXI6IENsb3NlZC4KLURPTkUK
LVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvd29ya2Vycy93b3JrZXItc2ltcGxlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3dvcmtlci1zaW1wbGUuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYmMyNGU3Mi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy93b3JrZXJzL3dvcmtlci1zaW1wbGUuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8v
SUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+PC9oZWFkPgotPGJvZHk+Ci08cD5U
ZXN0IGZvciBXZWIgU29ja2V0IGluIFdvcmtlci48L3A+Ci08cD48L3A+Ci08cD5PbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuPC9wPgotPHByZSBpZD1sb2c+Ci08L3ByZT4KLTxzY3JpcHQ+Ci1pZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOwotICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsK
LX0KLQotZnVuY3Rpb24gbG9nKG1lc3NhZ2UpCi17Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImxvZyIpLmlubmVySFRNTCArPSBtZXNzYWdlICsgIlxuIjsKLX0KLQotZnVuY3Rpb24gZW5k
VGVzdCgpCi17Ci0gICAgbG9nKCJURVNUIENPTVBMRVRFIik7Ci0gICAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9u
ZSgpOwotfQotdmFyIHdvcmtlciA9IG5ldyBXb3JrZXIoJ3Jlc291cmNlcy93b3JrZXItc2ltcGxl
LmpzJyk7Ci13b3JrZXIub25tZXNzYWdlID0gZnVuY3Rpb24gKGV2dCkgewotICAgIGxvZyhldnQu
ZGF0YSk7Ci0gICAgaWYgKGV2dC5kYXRhID09ICJET05FIikKLSAgICAgICAgZW5kVGVzdCgpOwot
fTsKLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vY2hyb21pdW0tbGludXgvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1
Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtLWxpbnV4L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2JhZC1zdWItcHJv
dG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDVmNzFkYzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0tbGludXgvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2NvbC1jb250
cm9sLWNoYXJzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLUNP
TlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTAw
MDAnCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tl
dCAnXHUwMDA5JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBX
ZWJTb2NrZXQgJ1x1MDAxQicKLVRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJvdG9jb2wgbmFtZXMg
YnkgY29udHJvbCBjaGFyYWN0ZXJzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBB
U1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXDAiKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgkiKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIG5ldyBXZWJT
b2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgotIikgdGhyZXcgZXhjZXB0aW9u
IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIElMTEVHQUwuCi1QQVNTIG5ldyBXZWJTb2Nr
ZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgotIikgdGhyZXcgZXhjZXB0aW9uIFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIElMTEVHQUwuCi1QQVNTIG5ldyBXZWJTb2NrZXQo
IndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIhsiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vY2hyb21pdW0tbGludXgvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9iYWQt
c3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0tbGludXgvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9i
YWQtc3ViLXByb3RvY29sLWNvbnRyb2wtY2hhcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmNzFkYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBX
ZWJTb2NrZXQgJ1x1MDAwMCcKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2Nv
bCBmb3IgV2ViU29ja2V0ICdcdTAwMDknCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3Jvbmcg
cHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDFCJworVGVzdCBXZWJTb2NrZXQgYmFkIHN1Yi1w
cm90b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3RlcnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBs
ZSIsICJcMCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi
CSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4K
K1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiCisiKSB0
aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gSUxMRUdBTC4KK1BB
U1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiCisiKSB0aHJl
dyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gSUxMRUdBTC4KK1BBU1Mg
bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiGyIpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9oaXhpZTc2L3VybC1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2Nocm9taXVtLWxpbnV4L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvdXJsLXBh
cnNpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIw
YzUwODMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1s
aW51eC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1wYXJzaW5nLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogSW52YWxp
ZCB1cmwgZm9yIFdlYlNvY2tldCB3czovL2phdmFzY3JpcHQ6YS8KK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAwOiBXcm9uZyB1cmwgc2NoZW1lIGZvciBXZWJTb2NrZXQgaHR0cDovLzEyNy4wLjAuMTo4
MDAwL2FwcGxldAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHVybCBzY2hlbWUgZm9y
IFdlYlNvY2tldCBqYXZhc2NyaXB0OmEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXZWJTb2Nr
ZXQgcG9ydCAyNSBibG9ja2VkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogVVJMIGhhcyBmcmFn
bWVudCBjb21wb25lbnQgd3M6Ly8xMjcuMC4wLjEvcGF0aCMKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAwOiBVUkwgaGFzIGZyYWdtZW50IGNvbXBvbmVudCB3czovLzEyNy4wLjAuMS9wYXRoI2ZyYWdt
ZW50CitUZXN0IFdlYlNvY2tldCBVUkwgcGFyc2luZy4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vamF2YXNjcmlwdDphIikgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2Vi
U29ja2V0KCIvYXBwbGV0IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCJqYXZhc2NyaXB0OmEiKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIG5ldyBX
ZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjI1LyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU0VD
VVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4LgorUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8x
MjcuMC4wLjE6ODg4MC9hLy4uL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZSIpKS5VUkwg
aXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlIgor
UEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9zaW1wbGU/IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9zaW1wbGU/IgorUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/az12IikpLlVSTCBpcyAid3M6
Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/az12IgorUEFT
UyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMS9wYXRoIyIpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgi
d3M6Ly8xMjcuMC4wLjEvcGF0aCNmcmFnbWVudCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lO
VEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS1saW51eC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtcGFyc2luZy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy91cmwtcGFyc2luZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDI4YzFiYmQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vY2hyb21pdW0tbGludXgvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmct
ZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMjMgKzAsMCBAQAotQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDA6IEludmFsaWQgdXJsIGZvciBXZWJTb2NrZXQgd3M6Ly9qYXZhc2NyaXB0OmEv
Ci1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBmb3IgV2ViU29ja2V0
IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9hcHBsZXQKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBX
cm9uZyB1cmwgc2NoZW1lIGZvciBXZWJTb2NrZXQgamF2YXNjcmlwdDphCi1DT05TT0xFIE1FU1NB
R0U6IGxpbmUgMDogV2ViU29ja2V0IHBvcnQgMjUgYmxvY2tlZAotQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDA6IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3LjAuMC4xL3BhdGgjCi1D
T05TT0xFIE1FU1NBR0U6IGxpbmUgMDogVVJMIGhhcyBmcmFnbWVudCBjb21wb25lbnQgd3M6Ly8x
MjcuMC4wLjEvcGF0aCNmcmFnbWVudAotVGVzdCBXZWJTb2NrZXQgVVJMIHBhcnNpbmcuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovL2phdmFz
Y3JpcHQ6YSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgiL2FwcGxldCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgiamF2
YXNjcmlwdDphIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0
aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMToyNS8iKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFNFQ1VSSVRZX0VSUjogRE9NIEV4Y2VwdGlvbiAxOC4KLVBBU1MgKG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvYS8uLi93ZWJzb2NrZXQvdGVzdHMvc2lt
cGxlIikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxl
IgotUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVz
dHMvc2ltcGxlPyIpKS5VUkwgaXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3Rz
L3NpbXBsZT8iCi1QQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNv
Y2tldC90ZXN0cy9zaW1wbGU/az12IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJz
b2NrZXQvdGVzdHMvc2ltcGxlP2s9diIKLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjEvcGF0aCMiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRp
b24gMTIuCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQi
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNWY3MWRjNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1w
cm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4
ICswLDAgQEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2Vi
U29ja2V0ICdcdTAwMDAnCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wg
Zm9yIFdlYlNvY2tldCAnXHUwMDA5JwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHBy
b3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1MDAxQicKLVRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJv
dG9jb2wgbmFtZXMgYnkgY29udHJvbCBjaGFyYWN0ZXJzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCi0KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUi
LCAiXDAiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24g
MTIuCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgki
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1Q
QVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgotIikgdGhy
ZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIElMTEVHQUwuCi1QQVNT
IG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIgotIikgdGhyZXcg
ZXhjZXB0aW9uIFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIElMTEVHQUwuCi1QQVNTIG5l
dyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIhsiKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hp
eGllNzYvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWY3MWRjNgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLW1hYy9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxOCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29s
IGZvciBXZWJTb2NrZXQgJ1x1MDAwMCcKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBw
cm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTAwMDknCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDog
V3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDFCJworVGVzdCBXZWJTb2NrZXQgYmFk
IHN1Yi1wcm90b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3RlcnMuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L3NpbXBsZSIsICJcMCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4
Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1w
bGUiLCAiCSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi
CisiKSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gSUxMRUdB
TC4KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiCisi
KSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gSUxMRUdBTC4K
K1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiGyIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni91cmwtcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwt
cGFyc2luZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
MjBjNTA4MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVt
LW1hYy9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3VybC1wYXJzaW5nLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogSW52YWxp
ZCB1cmwgZm9yIFdlYlNvY2tldCB3czovL2phdmFzY3JpcHQ6YS8KK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAwOiBXcm9uZyB1cmwgc2NoZW1lIGZvciBXZWJTb2NrZXQgaHR0cDovLzEyNy4wLjAuMTo4
MDAwL2FwcGxldAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHVybCBzY2hlbWUgZm9y
IFdlYlNvY2tldCBqYXZhc2NyaXB0OmEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXZWJTb2Nr
ZXQgcG9ydCAyNSBibG9ja2VkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogVVJMIGhhcyBmcmFn
bWVudCBjb21wb25lbnQgd3M6Ly8xMjcuMC4wLjEvcGF0aCMKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAwOiBVUkwgaGFzIGZyYWdtZW50IGNvbXBvbmVudCB3czovLzEyNy4wLjAuMS9wYXRoI2ZyYWdt
ZW50CitUZXN0IFdlYlNvY2tldCBVUkwgcGFyc2luZy4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vamF2YXNjcmlwdDphIikgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2Vi
U29ja2V0KCIvYXBwbGV0IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCJqYXZhc2NyaXB0OmEiKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIG5ldyBX
ZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjI1LyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU0VD
VVJJVFlfRVJSOiBET00gRXhjZXB0aW9uIDE4LgorUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8x
MjcuMC4wLjE6ODg4MC9hLy4uL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L3NpbXBsZSIpKS5VUkwg
aXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlIgor
UEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9zaW1wbGU/IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvaGl4aWU3Ni9zaW1wbGU/IgorUEFTUyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/az12IikpLlVSTCBpcyAid3M6
Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGU/az12IgorUEFT
UyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMS9wYXRoIyIpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1MgbmV3IFdlYlNvY2tldCgi
d3M6Ly8xMjcuMC4wLjEvcGF0aCNmcmFnbWVudCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lO
VEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbWFjL2h0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3VybC1wYXJzaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMjhjMWJiZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS1tYWMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvdXJsLXBhcnNpbmctZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMjMgKzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDA6IEludmFsaWQgdXJsIGZvciBXZWJTb2NrZXQgd3M6Ly9qYXZhc2NyaXB0OmEvCi1DT05T
T0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBmb3IgV2ViU29ja2V0IGh0dHA6
Ly8xMjcuMC4wLjE6ODAwMC9hcHBsZXQKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyB1
cmwgc2NoZW1lIGZvciBXZWJTb2NrZXQgamF2YXNjcmlwdDphCi1DT05TT0xFIE1FU1NBR0U6IGxp
bmUgMDogV2ViU29ja2V0IHBvcnQgMjUgYmxvY2tlZAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6
IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3LjAuMC4xL3BhdGgjCi1DT05TT0xF
IE1FU1NBR0U6IGxpbmUgMDogVVJMIGhhcyBmcmFnbWVudCBjb21wb25lbnQgd3M6Ly8xMjcuMC4w
LjEvcGF0aCNmcmFnbWVudAotVGVzdCBXZWJTb2NrZXQgVVJMIHBhcnNpbmcuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovL2phdmFzY3JpcHQ6
YSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4K
LVBBU1MgbmV3IFdlYlNvY2tldCgiL2FwcGxldCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lO
VEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgiamF2YXNjcmlw
dDphIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEy
LgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMToyNS8iKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IFNFQ1VSSVRZX0VSUjogRE9NIEV4Y2VwdGlvbiAxOC4KLVBBU1MgKG5ldyBXZWJT
b2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvYS8uLi93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlIikp
LlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlIgotUEFT
UyAobmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvc2lt
cGxlPyIpKS5VUkwgaXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3NpbXBs
ZT8iCi1QQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tldC90
ZXN0cy9zaW1wbGU/az12IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvc2ltcGxlP2s9diIKLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjEvcGF0
aCMiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIu
Ci1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQiKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rl
c3RzL2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFk
LXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZGQ5ODM1NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1Yi1wcm90b2Nv
bC1jb250cm9sLWNoYXJzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAg
QEAKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0
ICdcdTAwMDAnDQotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBX
ZWJTb2NrZXQgJ1x1MDAwOScNCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9j
b2wgZm9yIFdlYlNvY2tldCAnXHUwMDFCJw0KLVRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJvdG9j
b2wgbmFtZXMgYnkgY29udHJvbCBjaGFyYWN0ZXJzLg0KLQ0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4NCi0NCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxl
IiwgIlwwIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9u
IDEyLg0KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi
CSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4N
Ci1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIg0KLSIp
IHRocmV3IGV4Y2VwdGlvbiBTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiBJTExFR0FMLg0K
LVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiDQotIikg
dGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIElMTEVHQUwuDQot
UEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICIbIikgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLg0KLVBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUNCi0NCi1URVNUIENPTVBMRVRFDQotDQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1jb250cm9sLWNoYXJzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3RzL3dlYnNv
Y2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGQ5ODM1NQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3Rz
L3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2L2JhZC1zdWItcHJvdG9jb2wtY29udHJvbC1jaGFycy1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdy
b25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1MDAwMCcNCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHUwMDA5Jw0KK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTAwMUInDQorVGVz
dCBXZWJTb2NrZXQgYmFkIHN1Yi1wcm90b2NvbCBuYW1lcyBieSBjb250cm9sIGNoYXJhY3RlcnMu
DQorDQorT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLg0KKw0KK1BBU1MgbmV3IFdlYlNvY2tldCgi
d3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiXDAiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuDQorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIsICIJIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5U
QVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLg0KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcu
MC4wLjE6ODg4MC9zaW1wbGUiLCAiDQorIikgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIHRva2VuIElMTEVHQUwuDQorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4w
LjAuMTo4ODgwL3NpbXBsZSIsICINCisiKSB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVu
ZXhwZWN0ZWQgdG9rZW4gSUxMRUdBTC4NCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAu
MC4xOjg4ODAvc2ltcGxlIiwgIhsiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6
IERPTSBFeGNlcHRpb24gMTIuDQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQ0KKw0K
K1RFU1QgQ09NUExFVEUNCisNCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJv
bWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtcGFyc2luZy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0
cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni91cmwtcGFyc2luZy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGI2ZDcyMQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9odHRwL3Rlc3RzL3dlYnNvY2tldC90
ZXN0cy9oaXhpZTc2L3VybC1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMDogSW52YWxpZCB1cmwgZm9yIFdlYlNvY2tldCB3czovL2ph
dmFzY3JpcHQ6YS8NCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBm
b3IgV2ViU29ja2V0IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9hcHBsZXQNCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBmb3IgV2ViU29ja2V0IGphdmFzY3JpcHQ6YQ0K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXZWJTb2NrZXQgcG9ydCAyNSBibG9ja2VkDQorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDA6IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3
LjAuMC4xL3BhdGgjDQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFVSTCBoYXMgZnJhZ21lbnQg
Y29tcG9uZW50IHdzOi8vMTI3LjAuMC4xL3BhdGgjZnJhZ21lbnQNCitUZXN0IFdlYlNvY2tldCBV
UkwgcGFyc2luZy4NCisNCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuDQorDQorUEFTUyBuZXcg
V2ViU29ja2V0KCJ3czovL2phdmFzY3JpcHQ6YSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lO
VEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4NCitQQVNTIG5ldyBXZWJTb2NrZXQoIi9hcHBsZXQi
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuDQor
UEFTUyBuZXcgV2ViU29ja2V0KCJqYXZhc2NyaXB0OmEiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuDQorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czov
LzEyNy4wLjAuMToyNS8iKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNFQ1VSSVRZX0VSUjogRE9N
IEV4Y2VwdGlvbiAxOC4NCitQQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L2EvLi4vd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlIikpLlVSTCBpcyAid3M6Ly8xMjcu
MC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUiDQorUEFTUyAobmV3IFdl
YlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1w
bGU/IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9zaW1wbGU/Ig0KK1BBU1MgKG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vi
c29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlP2s9diIpKS5VUkwgaXMgIndzOi8vMTI3LjAuMC4x
Ojg4ODAvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlP2s9diINCitQQVNTIG5ldyBXZWJT
b2NrZXQoIndzOi8vMTI3LjAuMC4xL3BhdGgjIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5U
QVhfRVJSOiBET00gRXhjZXB0aW9uIDEyLg0KK1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcu
MC4wLjEvcGF0aCNmcmFnbWVudCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjog
RE9NIEV4Y2VwdGlvbiAxMi4NCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlDQorDQor
VEVTVCBDT01QTEVURQ0KKw0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtLXdpbi9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtcGFyc2luZy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vaHR0cC90ZXN0cy93ZWJzb2Nr
ZXQvdGVzdHMvdXJsLXBhcnNpbmctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA5MDAyNjdiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtLXdpbi9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy91cmwtcGFyc2luZy1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyMyArMCwwIEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUg
MDogSW52YWxpZCB1cmwgZm9yIFdlYlNvY2tldCB3czovL2phdmFzY3JpcHQ6YS8NCi1DT05TT0xF
IE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJsIHNjaGVtZSBmb3IgV2ViU29ja2V0IGh0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9hcHBsZXQNCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgdXJs
IHNjaGVtZSBmb3IgV2ViU29ja2V0IGphdmFzY3JpcHQ6YQ0KLUNPTlNPTEUgTUVTU0FHRTogbGlu
ZSAwOiBXZWJTb2NrZXQgcG9ydCAyNSBibG9ja2VkDQotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6
IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3LjAuMC4xL3BhdGgjDQotQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDA6IFVSTCBoYXMgZnJhZ21lbnQgY29tcG9uZW50IHdzOi8vMTI3LjAu
MC4xL3BhdGgjZnJhZ21lbnQNCi1UZXN0IFdlYlNvY2tldCBVUkwgcGFyc2luZy4NCi0NCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuDQotDQotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovL2phdmFz
Y3JpcHQ6YSIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMi4NCi1QQVNTIG5ldyBXZWJTb2NrZXQoIi9hcHBsZXQiKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuDQotUEFTUyBuZXcgV2ViU29ja2V0KCJq
YXZhc2NyaXB0OmEiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNl
cHRpb24gMTIuDQotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMToyNS8iKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFNFQ1VSSVRZX0VSUjogRE9NIEV4Y2VwdGlvbiAxOC4NCi1QQVNT
IChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL2EvLi4vd2Vic29ja2V0L3Rlc3Rz
L3NpbXBsZSIpKS5VUkwgaXMgIndzOi8vMTI3LjAuMC4xOjg4ODAvd2Vic29ja2V0L3Rlc3RzL3Np
bXBsZSINCi1QQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3dlYnNvY2tl
dC90ZXN0cy9zaW1wbGU/IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4MC93ZWJzb2NrZXQv
dGVzdHMvc2ltcGxlPyINCi1QQVNTIChuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgw
L3dlYnNvY2tldC90ZXN0cy9zaW1wbGU/az12IikpLlVSTCBpcyAid3M6Ly8xMjcuMC4wLjE6ODg4
MC93ZWJzb2NrZXQvdGVzdHMvc2ltcGxlP2s9diINCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8v
MTI3LjAuMC4xL3BhdGgjIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLg0KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjEvcGF0aCNm
cmFnbWVudCIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMi4NCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlDQotDQotVEVTVCBDT01QTEVU
RQ0KLQ0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0
YXRpb25zLnR4dAppbmRleCAzY2I5NzY1Li44ZDdhODFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC0xMDAsNyArMTAw
LDcgQEAgQlVHQ1IxODcwMiBXSU4gOiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3N1cHBvcnRl
ZC14bWwtY29udGVudC10eXBlcy5odG1sID0gUEEKIAogQlVHQ1IzNjUzOSBTTE9XIDogaHR0cC90
ZXN0cy9taXNjL3VuY2FjaGVhYmxlLXNjcmlwdC1yZXBlYXRlZC5odG1sID0gUEFTUwogCi1CVUdD
UjMyMDE4IFNMT1cgOiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGhzLmh0
bWwgPSBQQVNTCitCVUdDUjMyMDE4IFNMT1cgOiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2ZyYW1lLWxlbmd0aHMuaHRtbCA9IFBBU1MKIEJVR0NSNjk1MTMgREVCVUcgU0xPVyA6
IGh0bWw1bGliL3dlYmtpdC1yZXN1bWVyLmh0bWwgPSBQQVNTCiAKIEJVR0NSNzUyMjYgV0lOIFNM
T1cgOiBodHRwL3Rlc3RzL2NhY2hlL3N1YnJlc291cmNlLWV4cGlyYXRpb24tMS5odG1sID0gUEFT
UwpAQCAtMTU5LDcgKzE1OSw3IEBAIFdPTlRGSVggU0tJUCA6IGh0dHAvdGVzdHMvZmlsZXN5c3Rl
bS93b3JrZXJzID0gUEFTUyBUSU1FT1VUIEZBSUwKIFdPTlRGSVggU0tJUCA6IGh0dHAvdGVzdHMv
d29ya2VycyA9IFBBU1MgVElNRU9VVCBGQUlMCiBXT05URklYIFNLSVAgOiBodHRwL3Rlc3RzL3ht
bGh0dHByZXF1ZXN0L3dvcmtlcnMgPSBQQVNTIFRJTUVPVVQgRkFJTAogV09OVEZJWCBTS0lQIDog
aHR0cC90ZXN0cy9ldmVudHNvdXJjZS93b3JrZXJzID0gUEFTUyBUSU1FT1VUIEZBSUwKLVdPTlRG
SVggU0tJUCA6IGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dvcmtlcnMvID0gUEFTUyBUSU1F
T1VUIEZBSUwKK1dPTlRGSVggU0tJUCA6IGh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvd29ya2Vycy8gPSBQQVNTIFRJTUVPVVQgRkFJTAogV09OVEZJWCBTS0lQIDogaW5zcGVjdG9y
L2RlYnVnZ2VyL3NjcmlwdC1mb3JtYXR0ZXIuaHRtbCA9IFBBU1MgVElNRU9VVCBGQUlMCiAKIC8v
IFBhZ2UgQ2FjaGUgLSBiYXNlZCB0ZXN0cy4gQ2hyb21pdW0gZGlzYWJsZXMgcGFnZSBjYWNoZSBi
ZWNhdXNlIHRoZSBXZWJLaXQgcGFnZSBjYWNoZSBrZWVwcyBwcmV2aW91c2x5CkBAIC0xODI1LDcg
KzE4MjUsNyBAQCBCVUdDUjMxMjUyIDogaHR0cC90ZXN0cy9zZWN1cml0eS9saXN0ZW5lci94c3Mt
aW5hY3RpdmUtY2xvc3VyZS5odG1sID0gVEVYVAogQlVHQ1IzMTYyMyBXSU46IGh0dHAvdGVzdHMv
YXBwY2FjaGUvcmVtb3ZlLWNhY2hlLmh0bWwgPSBQQVNTIFRFWFQgVElNRU9VVAogCiAvLyBXZWJL
aXQgcm9sbCA1Mjg1MiAtPiA1Mjg2NwotQlVHQ1IzMjAxOCBERUJVRyA6IGh0dHAvdGVzdHMvd2Vi
c29ja2V0L3Rlc3RzL3NpbXBsZS1zdHJlc3MuaHRtbCA9IFBBU1MgVEVYVCBUSU1FT1VUCitCVUdD
UjMyMDE4IERFQlVHIDogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9zaW1wbGUt
c3RyZXNzLmh0bWwgPSBQQVNTIFRFWFQgVElNRU9VVAogCiAvLyBWOCdzIGltcGxlbWVudGF0aW9u
IG9mIGdldE93blByb3BlcnR5TmFtZXMgaGFzIGRpZmZlcmVudCByZXN1bHRzIGZvciBidWlsdC1p
bgogLy8gZnVuY3Rpb25zLgpAQCAtMjk3Miw3ICsyOTcyLDcgQEAgQlVHV0s1NDQ5OSBMSU5VWCA6
IHN2Zy90cmFuc2Zvcm1zL3RleHQtd2l0aC1wYXR0ZXJuLXdpdGgtc3ZnLXRyYW5zZm9ybS5zdmcg
PSBJTUEKIEJVR0NSNzMwODAgTElOVVggREVCVUcgOiBmYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRl
LWVsZW1lbnRzLW9yZGVyLmh0bWwgPSBQQVNTIFRJTUVPVVQKIEJVR0NSNzMwOTEgOiBhbmltYXRp
b25zL3BsYXktc3RhdGUtc3VzcGVuZC5odG1sID0gUEFTUyBURVhUCiBCVUdDUjczMDkyIFdJTiA6
IGZhc3QvZG9tL2djLTExLmh0bWwgPSBQQVNTIFRFWFQKLUJVR0NSNzMwOTQgTElOVVggOiBodHRw
L3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC5odG1sID0g
UEFTUyBUSU1FT1VUCitCVUdDUjczMDk0IExJTlVYIDogaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVz
dHMvaGl4aWU3Ni9zZW5kLWFmdGVyLWNsb3NlLW9uLXVubG9hZC5odG1sID0gUEFTUyBUSU1FT1VU
CiAKIEJVR1Y4XzExNjggOiBmYXN0L2pzL21vemlsbGEvZXZhbC9leGhhdXN0aXZlLWZ1bi1ub3Jt
YWxjYWxsZXItaW5kaXJlY3Qtc3RyaWN0Y29kZS5odG1sID0gVEVYVAogQlVHVjhfMTE2OCA6IGZh
c3QvanMvbW96aWxsYS9ldmFsL2V4aGF1c3RpdmUtZnVuLXN0cmljdGNhbGxlci1pbmRpcmVjdC1z
dHJpY3Rjb2RlLmh0bWwgPSBURVhUCkBAIC0zODM1LDcgKzM4MzUsNyBAQCBCVUdXSzYxNjY0IExJ
TlVYIDogc3ZnL3pvb20vcGFnZS9yZWxhdGl2ZS1zaXplZC1kb2N1bWVudC1zY3JvbGxiYXJzLnN2
ZyA9IElNQUdFCiAKIEJVR0NSODQzMTcgREVCVUcgOiBzdmcvd2ljZC90ZXN0LXNjYWxhYmxlLWJh
Y2tncm91bmQtaW1hZ2UxLnhodG1sID0gQ1JBU0gKIAotQlVHV0s2MTc2NyBXSU4gREVCVUcgOiBo
dHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9jbGllbnQtY2xvc2UuaHRtbCA9IFBBU1MgVEVYVAor
QlVHV0s2MTc2NyBXSU4gREVCVUcgOiBodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2NsaWVudC1jbG9zZS5odG1sID0gUEFTUyBURVhUCiAKIEJVR1dLNTk3ODIgV0lOIExJTlVYIERF
QlVHIDogc3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRURyb3BTaGFkb3dFbGVtZW50LWRvbS1keC1h
dHRyLmh0bWwgPSBUSU1FT1VUCiBCVUdXSzU5NzgyIFdJTiBMSU5VWCBERUJVRyA6IHN2Zy9keW5h
bWljLXVwZGF0ZXMvU1ZHRkVEcm9wU2hhZG93RWxlbWVudC1kb20tZHktYXR0ci5odG1sID0gVElN
RU9VVApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQtYXJtL1NraXBwZWQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC1hcm0vU2tpcHBlZAppbmRleCAzZjljNzAzLi5hOGZhNThk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC1hcm0vU2tpcHBlZAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC1hcm0vU2tpcHBlZApAQCAtMTIsMTEgKzEyLDExIEBAIGh0
dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlLXRyZWUvcmVzb3VyY2UtdHJlZS1yZWxvYWQuaHRt
bAogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2ZvcndhcmQtYW5kLWNhbmNlbC5odG1sCiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2Nyb3NzLWZyYW1lLWFjY2Vzcy1wdXQuaHRtbAogaHR0cC90ZXN0cy9zZWN1
cml0eS9taXhlZENvbnRlbnQvaW5zZWN1cmUtcGx1Z2luLWluLWlmcmFtZS5odG1sCi1odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9jbG9zZS1iZWZvcmUtb3Blbi5odG1sCi1odHRwL3Rlc3RzL3dl
YnNvY2tldC90ZXN0cy9jbG9zZS11bnJlZi13ZWJzb2NrZXQuaHRtbAotaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvZnJhbWUtbGVuZ3Rocy5odG1sCi1odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0
cy9zaW1wbGUtc3RyZXNzLmh0bWwKLWh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL3dlYnNvY2tl
dC1ldmVudC10YXJnZXQuaHRtbAoraHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3Ni9j
bG9zZS1iZWZvcmUtb3Blbi5odG1sCitodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oaXhpZTc2
L2Nsb3NlLXVucmVmLXdlYnNvY2tldC5odG1sCitodHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9o
aXhpZTc2L2ZyYW1lLWxlbmd0aHMuaHRtbAoraHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4
aWU3Ni9zaW1wbGUtc3RyZXNzLmh0bWwKK2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGll
NzYvd2Vic29ja2V0LWV2ZW50LXRhcmdldC5odG1sCiBqcXVlcnkvbWFuaXB1bGF0aW9uLmh0bWwK
IHBsYXRmb3JtL3F0L3BsdWdpbnMvcXQtcXdpZGdldC1wbHVnaW4uaHRtbAogcGx1Z2lucy9hcHBs
aWNhdGlvbi1wbHVnaW4tcGx1Z2lucy1kaXNhYmxlZC5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9xdC13azIvU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdr
Mi9Ta2lwcGVkCmluZGV4IDIxN2M2YTMuLmI5ODkwMmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdr
Mi9Ta2lwcGVkCkBAIC0yMjMsNyArMjIzLDcgQEAgZmFzdC90ZXh0L2Zvcm1hdC1jb250cm9sLmh0
bWwKIGZhc3QvdGV4dC96ZXJvLXdpZHRoLWNoYXJhY3RlcnMuaHRtbAogZmFzdC91cmwvYW5jaG9y
Lmh0bWwKIGZhc3QvdXJsL3BhdGguaHRtbAotaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFk
LXN1Yi1wcm90b2NvbC1ub24tYXNjaWkuaHRtbAoraHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMv
aGl4aWU3Ni9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS5odG1sCiAKICMgRXZlbnRTZW5kZXIu
bW91c2VNb3ZlVG8gaXMgbm90IHlldCBzdXBwb3J0ZWQKIHN2Zy9keW5hbWljLXVwZGF0ZXMKQEAg
LTI2NCw3ICsyNjQsNyBAQCBzdG9yYWdlL3JlYWQtdHJhbnNhY3Rpb25zLXJ1bm5pbmctY29uY3Vy
cmVudGx5Lmh0bWwKIGh0dHAvdGVzdHMvYXBwY2FjaGUKIGZhc3QvZG9tL2JlZm9yZWxvYWQvdmlk
ZW8tYmVmb3JlLWxvYWQuaHRtbAogbWVkaWEvdmlkZW8tc291cmNlLW1vdmVkLmh0bWwKLWh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL2ZyYW1lLWxlbmd0aHMuaHRtbAoraHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGhzLmh0bWwKIGh0dHAvdGVzdHMvbWlzYy9v
YmplY3QtaW1hZ2UtZXJyb3IuaHRtbAogaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJp
dHlQb2xpY3kvbWVkaWEtc3JjLWFsbG93ZWQuaHRtbAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29s
LW5vbi1hc2NpaS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9odHRwL3Rl
c3RzL3dlYnNvY2tldC90ZXN0cy9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVmM2Y1NDkuLjAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvYmFkLXN1
Yi1wcm90b2NvbC1ub24tYXNjaWktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMjIg
KzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJT
b2NrZXQgJ1x1MDA3RicKLUNPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBm
b3IgV2ViU29ja2V0ICdcdTAwODAnCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJv
dG9jb2wgZm9yIFdlYlNvY2tldCAnXHUzMDQyJwotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdy
b25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1RkZGRicKLUNPTlNPTEUgTUVTU0FHRTogbGlu
ZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdUZFRkYnCi1DT05TT0xFIE1FU1NB
R0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAnXHVGRkZFJwotQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1RDg0MFx1
REMwQicKLVRlc3QgV2ViU29ja2V0IGJhZCBzdWItcHJvdG9jb2wgbmFtZXMgYnkgbm9uLUFTQ0lJ
IGNoYXJzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgbmV3IFdlYlNvY2tl
dCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAifyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6
Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiwoAiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZ
TlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCi1QQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3
LjAuMC4xOjg4ODAvc2ltcGxlIiwgIuOBgiIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFY
X0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4w
LjE6ODg4MC9zaW1wbGUiLCAiPyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjog
RE9NIEV4Y2VwdGlvbiAxMi4KLVBBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4
MC9zaW1wbGUiLCAi77u/IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3Np
bXBsZSIsICI/IikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0
aW9uIDEyLgotUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3NpbXBsZSIs
ICLwoICLIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00gRXhjZXB0aW9u
IDEyLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2h0dHAvdGVzdHMvd2Vic29ja2V0
L3Rlc3RzL2hpeGllNzYvYmFkLXN1Yi1wcm90b2NvbC1ub24tYXNjaWktZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvaHR0cC90ZXN0cy93ZWJzb2NrZXQvdGVzdHMvaGl4aWU3
Ni9iYWQtc3ViLXByb3RvY29sLW5vbi1hc2NpaS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uNWYzZjU0OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3F0L2h0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvYmFkLXN1
Yi1wcm90b2NvbC1ub24tYXNjaWktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjIgQEAKK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdTAwN0Yn
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJvdG9jb2wgZm9yIFdlYlNvY2tldCAn
XHUwMDgwJworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdyb25nIHByb3RvY29sIGZvciBXZWJT
b2NrZXQgJ1x1MzA0MicKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBXcm9uZyBwcm90b2NvbCBm
b3IgV2ViU29ja2V0ICdcdUZGRkYnCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogV3JvbmcgcHJv
dG9jb2wgZm9yIFdlYlNvY2tldCAnXHVGRUZGJworQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IFdy
b25nIHByb3RvY29sIGZvciBXZWJTb2NrZXQgJ1x1RkZGRScKK0NPTlNPTEUgTUVTU0FHRTogbGlu
ZSAwOiBXcm9uZyBwcm90b2NvbCBmb3IgV2ViU29ja2V0ICdcdUQ4NDBcdURDMEInCitUZXN0IFdl
YlNvY2tldCBiYWQgc3ViLXByb3RvY29sIG5hbWVzIGJ5IG5vbi1BU0NJSSBjaGFycy4KKworT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAu
MC4xOjg4ODAvc2ltcGxlIiwgIn8iKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6
IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4
ODAvc2ltcGxlIiwgIsKAIikgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJSOiBET00g
RXhjZXB0aW9uIDEyLgorUEFTUyBuZXcgV2ViU29ja2V0KCJ3czovLzEyNy4wLjAuMTo4ODgwL3Np
bXBsZSIsICLjgYIiKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNl
cHRpb24gMTIuCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxl
IiwgIj8iKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24g
MTIuCitQQVNTIG5ldyBXZWJTb2NrZXQoIndzOi8vMTI3LjAuMC4xOjg4ODAvc2ltcGxlIiwgIu+7
vyIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4K
K1BBU1MgbmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAiPyIpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mg
bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6ODg4MC9zaW1wbGUiLCAi8KCAiyIpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMi4KK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bi9Ta2lwcGVkCmluZGV4IGFkYTM3YzAuLmVjYmM5YmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3dpbi9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lw
cGVkCkBAIC0zODYsNyArMzg2LDcgQEAgaHR0cC90ZXN0cy9tZWRpYS92aWRlby1jYW5jZWwtbG9h
ZC5odG1sCiBodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLWNyb3NzLXNpdGUuaHRtbAogCiAjIFNvbWV0
aW1lcyBjcmFzaGVzIGh0dHA6Ly93ZWJraXQub3JnL2IvNDg5OTYKLWh0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL3dvcmtlcnMvY2xvc2UtaW4tb25tZXNzYWdlLWNyYXNoLmh0bWwKK2h0dHAvdGVz
dHMvd2Vic29ja2V0L3Rlc3RzL2hpeGllNzYvd29ya2Vycy9jbG9zZS1pbi1vbm1lc3NhZ2UtY3Jh
c2guaHRtbAogCiAjIFNvbWV0aW1lcyB0aW1lcyBvdXQgaHR0cDovL3dlYmtpdC5vcmcvYi80ODk5
NwogYW5pbWF0aW9ucy9hbmltYXRpb24taXRlcmF0aW9uLWV2ZW50LWRlc3Ryb3ktcmVuZGVyZXIu
aHRtbApAQCAtOTA4LDggKzkwOCw4IEBAIG1lZGlhL3ZpZGVvLWRpc3BsYXktYXNwZWN0LXJhdGlv
Lmh0bWwKIGh0dHAvdGVzdHMvbWlzYy9pbWFnZS1jaGVja3MtZm9yLWFjY2VwdC5odG1sCiAKICMg
VGVzdHMgdGltZW91dDogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1
MDQxCi1odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9mcmFtZS1sZW5ndGhzLmh0bWwKLWh0dHAv
dGVzdHMvd2Vic29ja2V0L3Rlc3RzL3NpbXBsZS1zdHJlc3MuaHRtbAoraHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaGl4aWU3Ni9mcmFtZS1sZW5ndGhzLmh0bWwKK2h0dHAvdGVzdHMvd2Vic29j
a2V0L3Rlc3RzL2hpeGllNzYvc2ltcGxlLXN0cmVzcy5odG1sCiAKICMgTmVlZHMgcGxhdGZvcm0g
c3BlY2lmaWMgQVBJIGltcGxlbWVudGVkIGluIERSVCwgbWF5YmUgbm90IHJlbGV2YW50IGZvciBu
b24tTWFjIGFuZCBub24tV2luZG93cyBwb3J0cwogZmFzdC9sb2FkZXIvYXBpLXRlc3QtbmV3LXdp
bmRvdy1kYXRhLWxvYWQtYmFzZS11cmwuaHRtbAo=
</data>
<flag name="review"
          id="94247"
          type_id="1"
          status="+"
          setter="tkent"
    />
    <flag name="commit-queue"
          id="94248"
          type_id="3"
          status="-"
          setter="yutak"
    />
          </attachment>
      

    </bug>

</bugzilla>