<?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>213553</bug_id>
          
          <creation_ts>2020-06-24 05:02:52 -0700</creation_ts>
          <short_desc>[ iOS macOS ] http/tests/resourceLoadStatistics/grandfathering-database.html is a rare flaky timeout</short_desc>
          <delta_ts>2020-07-20 12:47:55 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jacob Uphoff">jacob_uphoff</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>katherine_cheney</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1665699</commentid>
    <comment_count>0</comment_count>
    <who name="Jacob Uphoff">jacob_uphoff</who>
    <bug_when>2020-06-24 05:02:52 -0700</bug_when>
    <thetext>http/tests/resourceLoadStatistics/grandfathering-database.html

This test has been a rare flaky timeout since it started running on iOS and then shortly after for macOS. The timeouts appear on Release WK2. It times out more often on iOS and internally for macOS.

History:

https://results.webkit.org/?suite=layout-tests&amp;test=http%2Ftests%2FresourceLoadStatistics%2Fgrandfathering-database.html&amp;platform=ios&amp;platform=mac&amp;limit=50000

Diff:

@@ -1,5 +1,3 @@
-PASS successfullyParsed is true
+#PID UNRESPONSIVE - WebKitTestRunner (pid 14028)
+FAIL: Timed out waiting for notifyDone to be called
 
-TEST COMPLETE
-PASS Grandfathered cookie was not purged.
-</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1665700</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-06-24 05:03:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/64696432&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1665701</commentid>
    <comment_count>2</comment_count>
    <who name="Jacob Uphoff">jacob_uphoff</who>
    <bug_when>2020-06-24 05:10:52 -0700</bug_when>
    <thetext>Set expectations here: https://trac.webkit.org/changeset/263452/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666340</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2020-06-25 18:11:27 -0700</bug_when>
    <thetext>*** Bug 213552 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671549</commentid>
    <comment_count>4</comment_count>
      <attachid>404294</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-14 15:35:16 -0700</bug_when>
    <thetext>Created attachment 404294
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671793</commentid>
    <comment_count>5</comment_count>
      <attachid>404294</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-15 10:33:00 -0700</bug_when>
    <thetext>Comment on attachment 404294
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=404294&amp;action=review

&gt; Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp:2088
&gt; +    bool notifyPagesWhenDataRecordsWereModified = !!callback;
&gt; +    // Setting a callback implies we expect to receive callbacks. So register for them.
&gt; +    setStatisticsNotifyPagesWhenDataRecordsWereScanned(notifyPagesWhenDataRecordsWereModified);

I understand turning this on if we were passed a callback.

I don’t fully understand turning it off if we were passed null. Are we the one and only client? Does this need to be reset between tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1673120</commentid>
    <comment_count>6</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-20 10:28:35 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; Comment on attachment 404294 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=404294&amp;action=review
&gt; 
&gt; &gt; Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp:2088
&gt; &gt; +    bool notifyPagesWhenDataRecordsWereModified = !!callback;
&gt; &gt; +    // Setting a callback implies we expect to receive callbacks. So register for them.
&gt; &gt; +    setStatisticsNotifyPagesWhenDataRecordsWereScanned(notifyPagesWhenDataRecordsWereModified);
&gt; 
&gt; I understand turning this on if we were passed a callback.
&gt; 
&gt; I don’t fully understand turning it off if we were passed null. Are we the
&gt; one and only client? Does this need to be reset between tests?

Yes, this is reset between tests in WKWebsiteDataStoreStatisticsResetToConsistentState. 

This function doesn&apos;t make sense without a callback, but thinking more about it, I agree turning it off when passed null does not make sense. I think the better option is only calling TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned() if the callback isn&apos;t null, and doing nothing if it is null. I&apos;ll change that before landing. Thanks for the comments!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1673141</commentid>
    <comment_count>7</comment_count>
      <attachid>404731</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-07-20 11:03:58 -0700</bug_when>
    <thetext>Created attachment 404731
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1673185</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-20 12:47:54 -0700</bug_when>
    <thetext>Committed r264609: &lt;https://trac.webkit.org/changeset/264609&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 404731.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404294</attachid>
            <date>2020-07-14 15:35:16 -0700</date>
            <delta_ts>2020-07-20 11:03:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213553-20200714153516.patch</filename>
            <type>text/plain</type>
            <size>46965</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0MzczCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGY4N2Y2ZTFiYTUwNDc3MjAyMGY2MWQxNjFkNzExNGQw
NTg1NmVlMi4uZGQ3NjgxYzE1MzM5ZGZiNDZjYzI2ZWYwNjM2NGNhZWYzMDMwNmNhMSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2
IEBACisyMDIwLTA3LTE0ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29t
PgorCisgICAgICAgIFsgaU9TIG1hY09TIF0gaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL2dyYW5kZmF0aGVyaW5nLWRhdGFiYXNlLmh0bWwgaXMgYSByYXJlIGZsYWt5IHRpbWVvdXQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMzU1Mwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjQ2OTY0MzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVnaXN0ZXJpbmcgdG8gcmVjZWl2ZSBhbiBJVFAg
c3RhdGlzdGljcyBwcm9jZXNzaW5nIGNhbGxiYWNrIHNob3VsZCBiZQorICAgICAgICBzeW5jaHJv
bm91cywgb3RoZXJ3aXNlIHByb2Nlc3NpbmcgY291bGQgaGFwcGVuIGJlZm9yZSBJVFAgaGFzCisg
ICAgICAgIHJlZ2lzdGVyZWQgdGhhdCBpdCBzaG91bGQgYmUgcmVwb3J0ZWQgdG8gdGhlIHRlc3Qg
cnVubmVyLgorCisgICAgICAgIFRvIGF2b2lkIHRoaXMgbWlzdGFrZSBpbiB0aGUgZnV0dXJlLCB0
aGlzIHBhdGNoIHJlbW92ZXMgdGhlCisgICAgICAgIGFzeW5jIHZlcnNpb24gb2YgdGhpcyBjYWxs
IGZyb20gVGVzdEludm9jYXRpb24uY3BwLCBiZWNhdXNlIGl0IHNob3VsZAorICAgICAgICBuZXZl
ciBiZSB1c2VkLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9U
ZXN0UnVubmVyLmNwcDoKKyAgICAgICAoV1RSOjpUZXN0UnVubmVyOjppbnN0YWxsU3RhdGlzdGlj
c0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2spOgorICAgICAgICBVcGRhdGUgdGhpcyBmdW5j
dGlvbiB0byBsb29rIGxpa2UKKyAgICAgICAgaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJl
Y29yZHNDYWxsYmFjay4gSXQgaXMgc2ltcGxlciB0byBsZXQgSVRQCisgICAgICAgIGtub3cgdG8g
c2VuZCB0aGUgY2FsbGJhY2sgcmVzcG9uc2Ugd2hlbiBpbnN0YWxsaW5nIHRoZSBjYWxsYmFjawor
ICAgICAgICBpbnN0ZWFkIG9mIHJlcXVpcmluZyBhIHNlcGFyYXRlIGZ1bmN0aW9uIGNhbGwuCisK
KyAgICAgICAgKFdUUjo6VGVzdFJ1bm5lcjo6aW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJl
Y29yZHNDYWxsYmFjayk6CisgICAgICAgIFJlZ2lzdGVyIGZvciBhIGNhbGxiYWNrIHN5bmNocm9u
b3VzbHkuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcDoK
KyAgICAgICAgKFdUUjo6VGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVNZXNzYWdlRnJvbUluamVj
dGVkQnVuZGxlKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0Jp
bmRpbmdzL1Rlc3RSdW5uZXIuaWRsOgorICAgICAgICBSZW1vdmUgc2V0U3RhdGlzdGljc05vdGlm
eVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQgZnJvbSB0aGUgaWRsCisgICAgICAgIGZp
bGUgc28gaXQgZG9lcyBub3QgYWNjaWRlbnRhbGx5IGdldCBjYWxsZWQgaW4gYSBsYXlvdXQgdGVz
dCBpbiB0aGUKKyAgICAgICAgZnV0dXJlLgorCiAyMDIwLTA3LTE0ICBBYWthc2ggSmFpbiAgPGFh
a2FzaF9qYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBbYnVpbGQud2Via2l0Lm9yZ10gd2F0Y2hv
cyBzaG91bGQgYnVpbGQgYm90aCBhcm02NF8zMiBhbmQgYXJtdjdrIGFyY2hpdGVjdHVyZXMKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3Mv
VGVzdFJ1bm5lci5pZGwgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0Jp
bmRpbmdzL1Rlc3RSdW5uZXIuaWRsCmluZGV4IDAzZTVhYjhmYTE3ODM0Nzk5YmZhZjc5ZjExMjVm
Y2ZiYjY2YWJkNDguLjVmMjkxNWRjOTg3NjIyYzczOThjMTE3NDI1OTBhNmJiZDE4ZjRhOTUgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQmluZGluZ3Mv
VGVzdFJ1bm5lci5pZGwKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbApAQCAtMzI5LDcgKzMyOSw2IEBAIGludGVyZmFjZSBU
ZXN0UnVubmVyIHsKICAgICB2b2lkIHN0YXRpc3RpY3NQcm9jZXNzU3RhdGlzdGljc0FuZERhdGFS
ZWNvcmRzKCk7CiAgICAgdm9pZCBzdGF0aXN0aWNzVXBkYXRlQ29va2llQmxvY2tpbmcob2JqZWN0
IGNvbXBsZXRpb25IYW5kbGVyKTsKICAgICB2b2lkIHN0YXRpc3RpY3NTdWJtaXRUZWxlbWV0cnko
KTsKLSAgICB2b2lkIHNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVT
Y2FubmVkKGJvb2xlYW4gdmFsdWUpOwogICAgIHZvaWQgc2V0U3RhdGlzdGljc0lzUnVubmluZ1Rl
c3QoYm9vbGVhbiB2YWx1ZSk7CiAgICAgdm9pZCBzZXRTdGF0aXN0aWNzU2hvdWxkQ2xhc3NpZnlS
ZXNvdXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoYm9vbGVhbiB2YWx1ZSk7CiAgICAgdm9p
ZCBzZXRTdGF0aXN0aWNzTWluaW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsKGRvdWJs
ZSBzZWNvbmRzKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL1Rlc3RSdW5uZXIuY3BwCmluZGV4IGYyMDQ2Njc1MjFmMGQwNDg3ZjBhYzE2Nzc0MTY3ZDhh
YzQ3MTQ0YjAuLjk5NzhiNDdlYmY1NjJmYzJlM2U2ZDFmM2QzMDg2MGY2ODI1ZDY1ODUgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5j
cHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVy
LmNwcApAQCAtMjA4Myw2ICsyMDgzLDkgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRTdGF0aXN0aWNz
VGltZVRvTGl2ZVVzZXJJbnRlcmFjdGlvbihkb3VibGUgc2Vjb25kcykKIHZvaWQgVGVzdFJ1bm5l
cjo6aW5zdGFsbFN0YXRpc3RpY3NEaWRNb2RpZnlEYXRhUmVjb3Jkc0NhbGxiYWNrKEpTVmFsdWVS
ZWYgY2FsbGJhY2spCiB7CiAgICAgY2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soU3RhdGlzdGljc0Rp
ZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2tJRCwgY2FsbGJhY2spOworICAgIGJvb2wgbm90aWZ5
UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlTW9kaWZpZWQgPSAhIWNhbGxiYWNrOworICAgIC8vIFNl
dHRpbmcgYSBjYWxsYmFjayBpbXBsaWVzIHdlIGV4cGVjdCB0byByZWNlaXZlIGNhbGxiYWNrcy4g
U28gcmVnaXN0ZXIgZm9yIHRoZW0uCisgICAgc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRh
dGFSZWNvcmRzV2VyZVNjYW5uZWQobm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlTW9kaWZp
ZWQpOwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnN0YXRpc3RpY3NEaWRNb2RpZnlEYXRhUmVjb3Jk
c0NhbGxiYWNrKCkKQEAgLTIwOTMsMTMgKzIwOTYsOSBAQCB2b2lkIFRlc3RSdW5uZXI6OnN0YXRp
c3RpY3NEaWRNb2RpZnlEYXRhUmVjb3Jkc0NhbGxiYWNrKCkKIHZvaWQgVGVzdFJ1bm5lcjo6aW5z
dGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhKU1ZhbHVlUmVmIGNhbGxi
YWNrKQogewogICAgIGNhY2hlVGVzdFJ1bm5lckNhbGxiYWNrKFN0YXRpc3RpY3NEaWRTY2FuRGF0
YVJlY29yZHNDYWxsYmFja0lELCBjYWxsYmFjayk7Ci0KICAgICBib29sIG5vdGlmeVBhZ2VzV2hl
bkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQgPSAhIWNhbGxiYWNrOwotCiAgICAgLy8gU2V0dGluZyBh
IGNhbGxiYWNrIGltcGxpZXMgd2UgZXhwZWN0IHRvIHJlY2VpdmUgY2FsbGJhY2tzLiBTbyByZWdp
c3RlciBmb3IgdGhlbS4KLSAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gbWVzc2FnZU5hbWUg
PSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCJTdGF0aXN0aWNzTm90aWZ5
UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCIpKTsKLSAgICBXS1JldGFpblB0cjxXS0Jv
b2xlYW5SZWY+IG1lc3NhZ2VCb2R5ID0gYWRvcHRXSyhXS0Jvb2xlYW5DcmVhdGUobm90aWZ5UGFn
ZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCkpOwotICAgIFdLQnVuZGxlUG9zdE1lc3NhZ2Uo
SW5qZWN0ZWRCdW5kbGU6OnNpbmdsZXRvbigpLmJ1bmRsZSgpLCBtZXNzYWdlTmFtZS5nZXQoKSwg
bWVzc2FnZUJvZHkuZ2V0KCkpOworICAgIHNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRh
UmVjb3Jkc1dlcmVTY2FubmVkKG5vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQp
OwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxs
YmFjaygpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9u
LmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uY3BwCmluZGV4IDk3
NTkzNTViMTI4NTFiMGVjYzM1NjgxZTNmNDBiMWU1OGY3NDEwYTEuLmI3M2IwOTQ0MWYxNzRiNTQx
ZWNkNjYzN2FlZjBmOTE5N2Q4ZGVmOGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvVGVzdEludm9jYXRpb24uY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdElu
dm9jYXRpb24uY3BwCkBAIC05MTksMTMgKzkxOSw2IEBAIHZvaWQgVGVzdEludm9jYXRpb246OmRp
ZFJlY2VpdmVNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1l
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4
Q1N0cmluZyhtZXNzYWdlTmFtZSwgIlN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jk
c1dlcmVTY2FubmVkIikpIHsKLSAgICAgICAgQVNTRVJUKFdLR2V0VHlwZUlEKG1lc3NhZ2VCb2R5
KSA9PSBXS0Jvb2xlYW5HZXRUeXBlSUQoKSk7Ci0gICAgICAgIFdLQm9vbGVhblJlZiB2YWx1ZSA9
IHN0YXRpY19jYXN0PFdLQm9vbGVhblJlZj4obWVzc2FnZUJvZHkpOwotICAgICAgICBUZXN0Q29u
dHJvbGxlcjo6c2luZ2xldG9uKCkuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNv
cmRzV2VyZVNjYW5uZWQoV0tCb29sZWFuR2V0VmFsdWUodmFsdWUpKTsKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KLQogICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VO
YW1lLCAiU3RhdGlzdGljc0NsZWFySW5NZW1vcnlBbmRQZXJzaXN0ZW50U3RvcmUiKSkgewogICAg
ICAgICBUZXN0Q29udHJvbGxlcjo6c2luZ2xldG9uKCkuc3RhdGlzdGljc0NsZWFySW5NZW1vcnlB
bmRQZXJzaXN0ZW50U3RvcmUoKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDQ2Yzc4NzMyZjhm
OTI5MDkwZDFmOGEwNjU1MzgyNDFhMGFjZDc5NjAuLjM5MTNkMzZmMGU0Y2ZiYWUzMWRhYThjMzk0
NWRmYjc3OTQ4ZDVhNmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MSBAQAorMjAyMC0wNy0xNCAgS2F0ZSBD
aGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBbIGlPUyBtYWNP
UyBdIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9ncmFuZGZhdGhlcmluZy1kYXRh
YmFzZS5odG1sIGlzIGEgcmFyZSBmbGFreSB0aW1lb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM1NTMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzY0Njk2NDMyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBjYWxscyB0byByZWdpc3RlciBmb3IgYSBzdGF0aXN0aWNz
IHByb2Nlc3NpbmcKKyAgICAgICAgY2FsbGJhY2ssIG5vdyB0aGF0IGl0IGlzIGRvbmUgc3luY2hy
b25vdXNseSBhcyBhIHBhcnQgb2YgdGhlIGluc3RhbGxpbmcgZnVuY3Rpb24uCisKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2Ny
aXB0LWltcG9ydC1pbi13b3JrZXItZGF0YWJhc2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWltcG9ydC1p
bi13b3JrZXIuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLWRhdGFiYXNlLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNj
cmlwdC1sb2Fkcy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9kby1ub3QtY2FwdHVyZS1zdGF0aXN0aWNzLWZvci1zaW1wbGUtdG9wLW5hdmlnYXRpb25z
LWRhdGFiYXNlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL2RvLW5vdC1jYXB0dXJlLXN0YXRpc3RpY3MtZm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMu
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1j
b3VudC10aGlyZC1wYXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1zY3JpcHQtZGF0YWJhc2UuaHRt
bDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1jb3Vu
dC10aGlyZC1wYXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1zY3JpcHQuaHRtbDoKKyAgICAgICAg
KiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvbWFueS1pbnNlcnRzLW9ubHktaW5z
ZXJ0LW9uY2UuaHRtbDoKKworICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWw6Cisg
ICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNv
dXJjZS1oYW5kbGVkLWtleWRvd24uaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFuZGxlZC1rZXlkb3duLWRhdGFi
YXNlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3By
ZXZhbGVudC1yZXNvdXJjZS11bmhhbmRsZWQta2V5ZG93bi5odG1sOgorICAgICAgICBUaGUgdGVz
dGluZyBjb250ZW50cyBzaG91bGQgYmUgcGFydCBvZiB0aGUgY2FsbGJhY2sgZm9yIHNldEVuYWJs
ZUZlYXR1cmUKKyAgICAgICAgdG8gZW5zdXJlIHNldHVwIGZpbmlzaGVzIGJlZm9yZSB0aGUgdGVz
dCBpcyBydW4uCisKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
cHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVz
b3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLXRpbWVvdXQtZGF0YWJhc2UuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNl
LXdpdGgtdXNlci1pbnRlcmFjdGlvbi10aW1lb3V0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0
cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50
ZXJhY3Rpb24uaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvcHJldmFsZW50LXJlc291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5o
dG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxl
bnQtcmVzb3VyY2Utd2l0aG91dC11c2VyLWludGVyYWN0aW9uLmh0bWw6CisgICAgICAgICogaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS13ZWJzaXRlLWRhdGEtZm9yLW9y
aWdpbi1kZWxldGVzLXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy1kYXRhYmFzZS5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vic2l0ZS1k
YXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRtbDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwu
anM6CisgICAgICAgIChzZXRFbmFibGVGZWF0dXJlKToKKyAgICAgICAgVGhpcyBjYWxsIGlzIHVu
bmVjZXNzYXJ5IGFzIHRoZSBwYXJhbWV0ZXJzIGFyZSBjbGVhcmVkIGluCisgICAgICAgIFdLV2Vi
c2l0ZURhdGFTdG9yZVN0YXRpc3RpY3NSZXNldFRvQ29uc2lzdGVudFN0YXRlLgorCisgICAgICAg
ICogaHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL2NhbnZhcy1yZWFkLWFuZC13cml0ZS1kYXRh
LWNvbGxlY3Rpb24uaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3Mv
Zm9udC1sb2FkLWRhdGEtY29sbGVjdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vi
QVBJU3RhdGlzdGljcy9uYXZpZ2F0b3ItZnVuY3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlv
bi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9zY3JlZW4tZnVu
Y3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVz
dHMvd2Vic29ja2V0L2Nvbm5lY3Rpb24tcmVmdXNhbC1pbi1mcmFtZS1yZXNvdXJjZS1sb2FkLXN0
YXRpc3RpY3MuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlv
bnM6CisKIDIwMjAtMDctMTQgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCB0ZXN0IGdhcmRlbmluZywgYWRkIENhdGFsaW5hIHNwZWNpZmlj
IGJhc2VsaW5lIGZvciBjc3MvY3NzLWZvbnRzL2dlbmVyaWMtZmFtaWx5LWtleXdvcmRzLTAwMS5o
dG1sIGFmdGVyIHIyNjQzNDMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWltcG9ydC1pbi13
b3JrZXItZGF0YWJhc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtaW1wb3J0LWluLXdvcmtlci1kYXRh
YmFzZS5odG1sCmluZGV4IGIxOGQ5YzEwMmUxYTM1ZTA1ZDNmNTNlN2QyMGRmNzg3MTc4MDZlNGUu
LjA5MGE5MmVhZjhjNzQ4OTg3MzAyYjRmNTJlN2UzZWY5Y2YwMWYzYTEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1w
YXJ0eS1zY3JpcHQtaW1wb3J0LWluLXdvcmtlci1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1z
Y3JpcHQtaW1wb3J0LWluLXdvcmtlci1kYXRhYmFzZS5odG1sCkBAIC0yOSw3ICsyOSw2IEBACiAg
ICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAg
ICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewogICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hl
bkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmlu
aXNoVGVzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5sb2NhdGlvbi5oYXNo
ID0gIkxvYWRXb3JrZXIiOwogICAgICAgICAgICAgICAgICAgICAgICAgcnVuVGVzdCgpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2Nv
dW50LXRoaXJkLXBhcnR5LXNjcmlwdC1pbXBvcnQtaW4td29ya2VyLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2Ny
aXB0LWltcG9ydC1pbi13b3JrZXIuaHRtbAppbmRleCAwMmZkNmJlYmU5ZTI2ZGM3ZDk3YjQ3ZGUx
NDc4ZjFjNmJiMjAxNGYyLi4zZDVkODQwYmIxZjRmZGQxM2NiNjdiM2E4NTMyYjRlYzViMGYzZDA4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWltcG9ydC1pbi13b3JrZXIuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQt
cGFydHktc2NyaXB0LWltcG9ydC1pbi13b3JrZXIuaHRtbApAQCAtMjgsNyArMjgsNiBAQAogICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7
CiAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAg
ICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVu
RGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhmaW5p
c2hUZXN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2gg
PSAiTG9hZFdvcmtlciI7CiAgICAgICAgICAgICAgICAgICAgICAgICBydW5UZXN0KCk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291
bnQtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLWRhdGFiYXNlLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0
LWxvYWRzLWRhdGFiYXNlLmh0bWwKaW5kZXggMzQxOGQwYzU1Yzg0YzVmYTNmMDJiNjg5M2Y5ZDFm
ZWE1ZmZhMWNjMC4uZjY2ZDdmMWQxMGZmZGEwZmQ5ZmE0OWY5OWIwNmRiZGE0ZGVmYjI3MiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2Nv
dW50LXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1z
Y3JpcHQtbG9hZHMtZGF0YWJhc2UuaHRtbApAQCAtMjUsNyArMjUsNiBAQAogICAgICAgICAgICAg
ICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAgICAgICAgICAgICAgICAgICAg
c2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAg
ICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2UodHJ1ZSk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jk
c1dlcmVTY2FubmVkKHRydWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5p
bnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKGZpbmlzaFRlc3QpOwog
ICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaGFzaCA9ICJzdGVwMSI7
CiAgICAgICAgICAgICAgICAgICAgICAgICBydW5UZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHkt
c2NyaXB0LWxvYWRzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLmh0bWwKaW5kZXggOWE0NTlj
YzczMGJlMjg1N2Y2ODIwYzAyYzJhMzdhMDJiNDJlYTZkOS4uNzRhOWQwZTQ0M2EzYjQxYWY0MWQ3
MzA1NzkzMTY0MWUwNTMyYzkzZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3Vu
dC10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRtbApAQCAtMjQsNyArMjQsNiBAQAogICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAg
ICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAg
ICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0
YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhmaW5pc2hU
ZXN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAi
c3RlcDEiOwogICAgICAgICAgICAgICAgICAgICAgICAgcnVuVGVzdCgpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvLW5vdC1jYXB0
dXJlLXN0YXRpc3RpY3MtZm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMtZGF0YWJhc2UuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kby1ub3QtY2Fw
dHVyZS1zdGF0aXN0aWNzLWZvci1zaW1wbGUtdG9wLW5hdmlnYXRpb25zLWRhdGFiYXNlLmh0bWwK
aW5kZXggYTQ4ZTI1NWExYzRiOGJjNWRiZjMxMGQ2ZDgxYmZhMDczNjgyY2I3My4uMzMyNzZkMzE2
NzQyZGU1ZjEzOThhY2MyZjE3ZmM1ZDdkZGE3ZjAxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvLW5vdC1jYXB0dXJlLXN0YXRpc3Rp
Y3MtZm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMtZGF0YWJhc2UuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG8tbm90LWNhcHR1cmUtc3Rh
dGlzdGljcy1mb3Itc2ltcGxlLXRvcC1uYXZpZ2F0aW9ucy1kYXRhYmFzZS5odG1sCkBAIC0zMSw3
ICszMSw2IEBACiAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICBjYXNlICJsb2NhbGhvc3Q6ODAwMCI6Ci0gICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0
cnVlKTsKICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkU2Nh
bkRhdGFSZWNvcmRzQ2FsbGJhY2soZmluaXNoVGVzdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF0
ZXN0UnVubmVyLnN0YXRpc3RpY3NOb3RpZnlPYnNlcnZlcigpKQogICAgICAgICAgICAgICAgICAg
ICB0aW1lckhhbmRsZSA9IHNldFRpbWVvdXQoZmluaXNoVGVzdCwgMTAwKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kby1ub3QtY2Fw
dHVyZS1zdGF0aXN0aWNzLWZvci1zaW1wbGUtdG9wLW5hdmlnYXRpb25zLmh0bWwgYi9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG8tbm90LWNhcHR1cmUtc3Rh
dGlzdGljcy1mb3Itc2ltcGxlLXRvcC1uYXZpZ2F0aW9ucy5odG1sCmluZGV4IDAxMmY4NDlhMjBh
NTMyMTFjOThjNGY5Y2U5YWJjMjNiYjVkN2Q3NWUuLmI3N2Q1ZmVlMTc2OTYwZTc4ZTVmNWE0Yzhi
OGJhMWQ3NDRmNDYzNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy9kby1ub3QtY2FwdHVyZS1zdGF0aXN0aWNzLWZvci1zaW1wbGUtdG9w
LW5hdmlnYXRpb25zLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzL2RvLW5vdC1jYXB0dXJlLXN0YXRpc3RpY3MtZm9yLXNpbXBsZS10b3AtbmF2
aWdhdGlvbnMuaHRtbApAQCAtMzEsNyArMzEsNiBAQAogICAgICAgICAgICAgICAgIH0pOwogICAg
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSAibG9jYWxob3N0OjgwMDAiOgot
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRh
dGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5p
bnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKGZpbmlzaFRlc3QpOwog
ICAgICAgICAgICAgICAgIGlmICghdGVzdFJ1bm5lci5zdGF0aXN0aWNzTm90aWZ5T2JzZXJ2ZXIo
KSkKICAgICAgICAgICAgICAgICAgICAgdGltZXJIYW5kbGUgPSBzZXRUaW1lb3V0KGZpbmlzaFRl
c3QsIDEwMCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MvZG9udC1jb3VudC10aGlyZC1wYXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1z
Y3JpcHQtZGF0YWJhc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy9kb250LWNvdW50LXRoaXJkLXBhcnR5LWltYWdlLWFzLXRoaXJkLXBhcnR5LXNj
cmlwdC1kYXRhYmFzZS5odG1sCmluZGV4IGNmMWExMzUwNjVhZmFiZGE1OThmYjliMmI0MmFiZDZi
NGFjNGFhOTAuLmJkMTAyOWZhZTVlOTdhZGFjODYwMmQ4MzdkZDBlNGE3Mzc3YTkyZmIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kb250
LWNvdW50LXRoaXJkLXBhcnR5LWltYWdlLWFzLXRoaXJkLXBhcnR5LXNjcmlwdC1kYXRhYmFzZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9k
b250LWNvdW50LXRoaXJkLXBhcnR5LWltYWdlLWFzLXRoaXJkLXBhcnR5LXNjcmlwdC1kYXRhYmFz
ZS5odG1sCkBAIC0yNSw3ICsyNSw2IEBACiAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRy
dWUsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRV
c2VJVFBEYXRhYmFzZSh0cnVlKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
c2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7
CiAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlk
U2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmluaXNoVGVzdCk7CiAgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5sb2NhdGlvbi5oYXNoID0gInN0ZXAxIjsKICAgICAgICAgICAgICAgICAg
ICAgICAgIHJ1blRlc3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy9kb250LWNvdW50LXRoaXJkLXBhcnR5LWltYWdlLWFzLXRoaXJk
LXBhcnR5LXNjcmlwdC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzL2RvbnQtY291bnQtdGhpcmQtcGFydHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2Ny
aXB0Lmh0bWwKaW5kZXggODE3MmMxYWY5NzIxMzM5YzAxZDNhZmUxMjI1NWRlMjc1MjRjYzUyOS4u
NmI2MjUwMTEzZTFhMGZmODQzZmQ2ZTgwNmFlZjM2ODc2OWFkYzU0ZCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvbnQtY291bnQtdGhp
cmQtcGFydHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvbnQtY291bnQtdGhpcmQtcGFy
dHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0Lmh0bWwKQEAgLTI0LDcgKzI0LDYgQEAKICAg
ICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93LmludGVybmFscykg
ewogICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAgICAg
ICAgICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hl
bkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmlu
aXNoVGVzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5sb2NhdGlvbi5oYXNo
ID0gInN0ZXAxIjsKICAgICAgICAgICAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9tYW55LWlu
c2VydHMtb25seS1pbnNlcnQtb25jZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZUxvYWRTdGF0aXN0aWNzL21hbnktaW5zZXJ0cy1vbmx5LWluc2VydC1vbmNlLmh0bWwKaW5k
ZXggYzAxOWIwZDYyNzczOTI4Y2NlN2ViZjA2ZmVmMDRkMTdjZWU3YWMyOC4uOGFhMWIzYzVmZTY2
YTYzNDA0NjE5OGU4Nzk2OGVhNTIzMjMwOGUyZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL21hbnktaW5zZXJ0cy1vbmx5LWluc2VydC1v
bmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL21hbnktaW5zZXJ0cy1vbmx5LWluc2VydC1vbmNlLmh0bWwKQEAgLTY2LDcgKzY2LDYgQEAK
IAogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgICBzZXRFbmFibGVGZWF0dXJl
KHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNz
Tm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAg
IHNldFVwU3RhdGlzdGljc0FuZENvbnRpbnVlKCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2
YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLWhh
bmRsZWQta2V5ZG93bi1kYXRhYmFzZS5odG1sCmluZGV4IGQ1Mzk5OTRlYmViMTFkYmRkZTNlZjkw
Mjg1MWQzMWQwOGRmMzIwMmUuLjU2Njg2MzY2YTk4MTc2NDlkNWZhMjA4MTMxNThjYmNhOGVhMmY4
MjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVu
dC1yZXNvdXJjZS1oYW5kbGVkLWtleWRvd24tZGF0YWJhc2UuaHRtbApAQCAtMTUsNDUgKzE1LDQz
IEBAIG9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3
aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2Uo
dHJ1ZSk7CiAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jk
c1dlcmVTY2FubmVkKHRydWUpOwotICAgICAgICB9KTsKLSAgICB9Ci0KLSAgICB0ZXN0UnVubmVy
LnNldFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0cnVlLCBmdW5j
dGlvbigpIHsKLSAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJl
c291cmNlKHN0YXRpc3RpY3NVcmwpKQotICAgICAgICAgICAgdGVzdEZhaWxlZCgiSG9zdCBkaWQg
bm90IGdldCBzZXQgYXMgcHJldmFsZW50IHJlc291cmNlLiIpOwotCi0gICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsLCBmYWxz
ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NI
YXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCi0gICAgICAgICAgICAgICAgdGVz
dEZhaWxlZCgiSG9zdCBkaWQgbm90IGdldCBjbGVhcmVkIG9mIHVzZXIgaW50ZXJhY3Rpb24uIik7
Ci0KLSAgICAgICAgICAgIHRlc3RJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
SW5wdXQiKTsKLQotICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZE1v
ZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXN0SW5wdXQudmFsdWUiLCAiYSIpOwotCi0gICAgICAgICAg
ICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihz
dGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiT3JpZ2luIGRp
ZCBub3QgZ2V0IHVzZXIgaW50ZXJhY3Rpb24gY3JlZGl0LiIpOwotICAgICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIHdhcyBncmFudGVkIHVz
ZXIgaW50ZXJhY3Rpb24uIik7Ci0KLSAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0RnJhbWUuc3JjID0gImFib3V0OmJsYW5rIjsK
LSAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUoZmFsc2UsIGZpbmlzaEpTVGVzdCk7Ci0gICAg
ICAgICAgICAgICAgICAgIH0sIDApOwotICAgICAgICAgICAgICAgIH0sIDApOworICAgICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGljc1Vy
bCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlz
U3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwpKQorICAgICAgICAgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IHNldCBhcyBwcmV2YWxlbnQgcmVz
b3VyY2UuIik7CisKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NIYXNI
YWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCwgZmFsc2UsIGZ1bmN0aW9uKCkgeworICAg
ICAgICAgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NIYXNIYWRVc2VySW50
ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0RmFp
bGVkKCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKKwor
ICAgICAgICAgICAgICAgICAgICB0ZXN0SW5wdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dGVzdElucHV0Iik7CisKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3Rh
dGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInRlc3RJbnB1dC52YWx1ZSIs
ICJhIik7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGVzdFJ1bm5lci5pc1N0YXRp
c3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiT3JpZ2luIGRpZCBub3QgZ2V0IHVzZXIgaW50ZXJh
Y3Rpb24gY3JlZGl0LiIpOworICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoIk9yaWdpbiB3YXMgZ3JhbnRlZCB1c2VyIGlu
dGVyYWN0aW9uLiIpOworCisgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RGcmFtZS5zcmMgPSAiYWJv
dXQ6YmxhbmsiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUo
ZmFsc2UsIGZpbmlzaEpTVGVzdCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMCk7
CisgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAgICAgICAgICAgICAgICAgfSk7
CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZENsYXNz
aWZ5UmVzb3VyY2VzQmVmb3JlRGF0YVJlY29yZHNSZW1vdmFsKGZhbHNlKTsKKyAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTWluaW11bVRpbWVCZXR3ZWVuRGF0YVJl
Y29yZHNSZW1vdmFsKDApOworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnN0YXRpc3Rp
Y3NQcm9jZXNzU3RhdGlzdGljc0FuZERhdGFSZWNvcmRzKCk7CisKKyAgICAgICAgICAgICAgICAg
ICAgZGVidWcoIlNpbXVsYXRlIHVzZXIgdHlwaW5nIGxldHRlciAnYScgaW50byB0aGUgZmllbGQu
Iik7CisgICAgICAgICAgICAgICAgICAgIHRlc3RJbnB1dC5mb2N1cygpOworICAgICAgICAgICAg
ICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQorICAgICAgICAgICAgICAgICAgICAgICAg
ZXZlbnRTZW5kZXIua2V5RG93bigiYSIpOworICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NTaG91bGRDbGFzc2lm
eVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChmYWxzZSk7Ci0gICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92
YWwoMCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnN0YXRpc3RpY3NQcm9jZXNzU3RhdGlzdGlj
c0FuZERhdGFSZWNvcmRzKCk7Ci0KLSAgICAgICAgICAgIGRlYnVnKCJTaW11bGF0ZSB1c2VyIHR5
cGluZyBsZXR0ZXIgJ2EnIGludG8gdGhlIGZpZWxkLiIpOwotICAgICAgICAgICAgdGVzdElucHV0
LmZvY3VzKCk7Ci0gICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQotICAgICAgICAg
ICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImEiKTsKICAgICAgICAgfSk7Ci0gICAgfSk7Cisg
ICAgfQogfQogPC9zY3JpcHQ+CiA8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiIHNyYz0icmVzb3VyY2Vz
L29uY2xpY2suaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLWhhbmRsZWQta2V5
ZG93bi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNz
L3ByZXZhbGVudC1yZXNvdXJjZS1oYW5kbGVkLWtleWRvd24uaHRtbAppbmRleCBhODgwMTVhMWFk
ZTc5MTM1MmViYjdhNWMwNTQ4YzMyOGJmNjRiMWY0Li44ODhiZWYxY2Q3MzQ1MWY2MGQzNGM5ZDk1
NzIxOTVhMzFiZTQ2ZmUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLWhhbmRsZWQta2V5ZG93bi5odG1s
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2
YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLmh0bWwKQEAgLTE0LDQ1ICsxNCw0MyBAQCBv
bmxvYWQgPSBmdW5jdGlvbigpIHsKIAogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5k
b3cuaW50ZXJuYWxzKSB7CiAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24o
KSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5E
YXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwotICAgICAgICB9KTsKLSAgICB9Ci0KLSAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0
cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1By
ZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwpKQotICAgICAgICAgICAgdGVzdEZhaWxlZCgi
SG9zdCBkaWQgbm90IGdldCBzZXQgYXMgcHJldmFsZW50IHJlc291cmNlLiIpOwotCi0gICAgICAg
IHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNz
VXJsLCBmYWxzZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0
YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCi0gICAgICAgICAg
ICAgICAgdGVzdEZhaWxlZCgiSG9zdCBkaWQgbm90IGdldCBjbGVhcmVkIG9mIHVzZXIgaW50ZXJh
Y3Rpb24uIik7Ci0KLSAgICAgICAgICAgIHRlc3RJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0SW5wdXQiKTsKLQotICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlz
dGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ0ZXN0SW5wdXQudmFsdWUiLCAiYSIpOwotCi0g
ICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRl
cmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgi
T3JpZ2luIGRpZCBub3QgZ2V0IHVzZXIgaW50ZXJhY3Rpb24gY3JlZGl0LiIpOwotICAgICAgICAg
ICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIHdhcyBn
cmFudGVkIHVzZXIgaW50ZXJhY3Rpb24uIik7Ci0KLSAgICAgICAgICAgICAgICBzZXRUaW1lb3V0
KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0RnJhbWUuc3JjID0gImFib3V0
OmJsYW5rIjsKLSAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUoZmFsc2UsIGZpbmlzaEpTVGVz
dCk7Ci0gICAgICAgICAgICAgICAgICAgIH0sIDApOwotICAgICAgICAgICAgICAgIH0sIDApOwor
ICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3Rh
dGlzdGljc1VybCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgaWYgKCF0ZXN0
UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwpKQorICAg
ICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IHNldCBhcyBwcmV2
YWxlbnQgcmVzb3VyY2UuIik7CisKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRp
c3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCwgZmFsc2UsIGZ1bmN0aW9u
KCkgeworICAgICAgICAgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NIYXNI
YWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNlciBpbnRlcmFjdGlv
bi4iKTsKKworICAgICAgICAgICAgICAgICAgICB0ZXN0SW5wdXQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdElucHV0Iik7CisKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5p
bnN0YWxsU3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soZnVuY3Rpb24oKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInRlc3RJbnB1
dC52YWx1ZSIsICJhIik7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGVzdFJ1bm5l
ci5pc1N0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiT3JpZ2luIGRpZCBub3QgZ2V0IHVz
ZXIgaW50ZXJhY3Rpb24gY3JlZGl0LiIpOworICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoIk9yaWdpbiB3YXMgZ3JhbnRl
ZCB1c2VyIGludGVyYWN0aW9uLiIpOworCisgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1l
b3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RGcmFtZS5z
cmMgPSAiYWJvdXQ6YmxhbmsiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVv
dXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJs
ZUZlYXR1cmUoZmFsc2UsIGZpbmlzaEpTVGVzdCk7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfSwgMCk7CisgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1No
b3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3JlRGF0YVJlY29yZHNSZW1vdmFsKGZhbHNlKTsKKyAg
ICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTWluaW11bVRpbWVCZXR3
ZWVuRGF0YVJlY29yZHNSZW1vdmFsKDApOworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVy
LnN0YXRpc3RpY3NQcm9jZXNzU3RhdGlzdGljc0FuZERhdGFSZWNvcmRzKCk7CisKKyAgICAgICAg
ICAgICAgICAgICAgZGVidWcoIlNpbXVsYXRlIHVzZXIgdHlwaW5nIGxldHRlciAnYScgaW50byB0
aGUgZmllbGQuIik7CisgICAgICAgICAgICAgICAgICAgIHRlc3RJbnB1dC5mb2N1cygpOworICAg
ICAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQorICAgICAgICAgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiYSIpOworICAgICAgICAgICAgICAgIH0pOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NTaG91
bGRDbGFzc2lmeVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChmYWxzZSk7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVj
b3Jkc1JlbW92YWwoMCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnN0YXRpc3RpY3NQcm9jZXNz
U3RhdGlzdGljc0FuZERhdGFSZWNvcmRzKCk7Ci0KLSAgICAgICAgICAgIGRlYnVnKCJTaW11bGF0
ZSB1c2VyIHR5cGluZyBsZXR0ZXIgJ2EnIGludG8gdGhlIGZpZWxkLiIpOwotICAgICAgICAgICAg
dGVzdElucHV0LmZvY3VzKCk7Ci0gICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQot
ICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImEiKTsKICAgICAgICAgfSk7Ci0g
ICAgfSk7CisgICAgfQogfQogPC9zY3JpcHQ+CiA8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiIHNyYz0i
cmVzb3VyY2VzL29uY2xpY2suaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVu
aGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFuZGxlZC1rZXlkb3du
LWRhdGFiYXNlLmh0bWwKaW5kZXggNDkxM2EzZDYzZGIzNTlmNjZiYWI3Zjk3MTYzYWU3YmI0NjUw
MTk2Zi4uZTUzZjBiODc3NTU3M2VhZDRmNDA3ZGRlOTMzZmVkMmQwNWQyYTEwMiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVu
dC1yZXNvdXJjZS11bmhhbmRsZWQta2V5ZG93bi1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Ut
dW5oYW5kbGVkLWtleWRvd24tZGF0YWJhc2UuaHRtbApAQCAtMTUsMzkgKzE1LDM4IEBAIG9ubG9h
ZCA9IGZ1bmN0aW9uKCkgewogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50
ZXJuYWxzKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2UodHJ1ZSk7CiAg
ICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2Fu
bmVkKHRydWUpOworICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzUHJldmFsZW50
UmVzb3VyY2Uoc3RhdGlzdGljc1VybCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAg
ICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3Rp
Y3NVcmwpKQorICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0
IHNldCBhcyBwcmV2YWxlbnQgcmVzb3VyY2UuIik7CisKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLnNldFN0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCwgZmFs
c2UsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0
YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNl
ciBpbnRlcmFjdGlvbi4iKTsKKworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3Rh
bGxTdGF0aXN0aWNzRGlkTW9kaWZ5RGF0YVJlY29yZHNDYWxsYmFjayhmdW5jdGlvbigpIHsKKwor
ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hh
ZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0UGFzc2VkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFjdGlvbiBjcmVk
aXQuIik7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJhYm91dDpibGFu
ayI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZShmYWxzZSwg
ZmluaXNoSlNUZXN0KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQ2xhc3NpZnlSZXNv
dXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoZmFsc2UpOworICAgICAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1Jl
bW92YWwoMCk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nl
c3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKKworICAgICAgICAgICAgICAgICAgICBkZWJ1
ZygiU2ltdWxhdGUgYW4gdW5oYW5kbGVkIHVzZXIga2V5IHByZXNzLiIpOworICAgICAgICAgICAg
ICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQorICAgICAgICAgICAgICAgICAgICAgICAg
ZXZlbnRTZW5kZXIua2V5RG93bigiYSIsIFsibWV0YUtleSJdKTsKKyAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgIH0pOwogICAgICAgICB9KTsKICAgICB9CiAKLSAgICB0ZXN0UnVubmVy
LnNldFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0cnVlLCBmdW5j
dGlvbigpIHsKLSAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJl
c291cmNlKHN0YXRpc3RpY3NVcmwpKQotICAgICAgICAgICAgdGVzdEZhaWxlZCgiSG9zdCBkaWQg
bm90IGdldCBzZXQgYXMgcHJldmFsZW50IHJlc291cmNlLiIpOwotCi0gICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsLCBmYWxz
ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NI
YXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCi0gICAgICAgICAgICAgICAgdGVz
dEZhaWxlZCgiSG9zdCBkaWQgbm90IGdldCBjbGVhcmVkIG9mIHVzZXIgaW50ZXJhY3Rpb24uIik7
Ci0KLSAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRNb2RpZnlEYXRh
UmVjb3Jkc0NhbGxiYWNrKGZ1bmN0aW9uKCkgewotCi0gICAgICAgICAgICAgICAgaWYgKCF0ZXN0
UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkK
LSAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIGRpZCBub3QgZ2V0IHVzZXIg
aW50ZXJhY3Rpb24gY3JlZGl0LiIpOwotCi0gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJhYm91dDpibGFu
ayI7Ci0gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKGZhbHNlLCBmaW5pc2hKU1Rlc3QpOwot
ICAgICAgICAgICAgICAgICAgICB9LCAwKTsKLSAgICAgICAgICAgICAgICB9LCAwKTsKLSAgICAg
ICAgICAgIH0pOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQ2xh
c3NpZnlSZXNvdXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoZmFsc2UpOwotICAgICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTWluaW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNS
ZW1vdmFsKDApOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zdGF0aXN0aWNzUHJvY2Vzc1N0YXRp
c3RpY3NBbmREYXRhUmVjb3JkcygpOwotCi0gICAgICAgICAgICBkZWJ1ZygiU2ltdWxhdGUgYW4g
dW5oYW5kbGVkIHVzZXIga2V5IHByZXNzLiIpOwotICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVu
dFNlbmRlcikKLSAgICAgICAgICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJhIiwgWyJtZXRh
S2V5Il0pOwotICAgICAgICB9KTsKLSAgICB9KTsKIH0KIDwvc2NyaXB0PgogPGlmcmFtZSBpZD0i
dGVzdEZyYW1lIiBzcmM9InJlc291cmNlcy9vbmNsaWNrLmh0bWwiPjwvaWZyYW1lPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZh
bGVudC1yZXNvdXJjZS11bmhhbmRsZWQta2V5ZG93bi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS11bmhhbmRsZWQt
a2V5ZG93bi5odG1sCmluZGV4IDhjMGYxMDIwMmQ5MzZlZGJlZGRkM2ZmNGFkZmY1NjAxNWE4NjU1
YjAuLmU1ZDc0M2MzZTBhMTJhMmJkZDkxNmVkYWJjNDk2NGQwZmZjZDc5MmYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQt
cmVzb3VyY2UtdW5oYW5kbGVkLWtleWRvd24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFuZGxlZC1r
ZXlkb3duLmh0bWwKQEAgLTE0LDM5ICsxNCwzNyBAQCBvbmxvYWQgPSBmdW5jdGlvbigpIHsKIAog
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAg
IHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB0ZXN0UnVu
bmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRy
dWUpOwotICAgICAgICB9KTsKLSAgICB9Ci0KLSAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NQ
cmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAg
ICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3Rp
Y3NVcmwpKQotICAgICAgICAgICAgdGVzdEZhaWxlZCgiSG9zdCBkaWQgbm90IGdldCBzZXQgYXMg
cHJldmFsZW50IHJlc291cmNlLiIpOwotCi0gICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGlj
c0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsLCBmYWxzZSwgZnVuY3Rpb24oKSB7
Ci0gICAgICAgICAgICBpZiAodGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJh
Y3Rpb24oc3RhdGlzdGljc1VybCkpCi0gICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiSG9zdCBk
aWQgbm90IGdldCBjbGVhcmVkIG9mIHVzZXIgaW50ZXJhY3Rpb24uIik7Ci0KLSAgICAgICAgICAg
IHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRNb2RpZnlEYXRhUmVjb3Jkc0NhbGxiYWNr
KGZ1bmN0aW9uKCkgewotCi0gICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlz
dGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAg
ICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIGRpZCBub3QgZ2V0IHVzZXIgaW50ZXJhY3Rpb24gY3Jl
ZGl0LiIpOwotCi0gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKLSAgICAg
ICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJhYm91dDpibGFuayI7Ci0gICAgICAgICAg
ICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBzZXRFbmFibGVGZWF0dXJlKGZhbHNlLCBmaW5pc2hKU1Rlc3QpOwotICAgICAgICAgICAgICAg
ICAgICB9LCAwKTsKLSAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAgICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwsIHRydWUsIGZ1
bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIGlmICghdGVzdFJ1bm5lci5pc1N0YXRpc3RpY3NQ
cmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgdGVz
dEZhaWxlZCgiSG9zdCBkaWQgbm90IGdldCBzZXQgYXMgcHJldmFsZW50IHJlc291cmNlLiIpOwor
CisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzSGFzSGFkVXNlckludGVy
YWN0aW9uKHN0YXRpc3RpY3NVcmwsIGZhbHNlLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAg
ICAgICAgaWYgKHRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHN0
YXRpc3RpY3NVcmwpKQorICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiSG9zdCBk
aWQgbm90IGdldCBjbGVhcmVkIG9mIHVzZXIgaW50ZXJhY3Rpb24uIik7CisKKyAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRz
Q2FsbGJhY2soZnVuY3Rpb24oKSB7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGVz
dFJ1bm5lci5pc1N0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkp
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIGRpZCBub3Qg
Z2V0IHVzZXIgaW50ZXJhY3Rpb24gY3JlZGl0LiIpOworCisgICAgICAgICAgICAgICAgICAgICAg
ICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RGcmFtZS5zcmMgPSAiYWJvdXQ6YmxhbmsiOworICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNldEVuYWJsZUZlYXR1cmUoZmFsc2UsIGZpbmlzaEpTVGVzdCk7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfSwgMCk7CisgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAg
ICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3Rh
dGlzdGljc1Nob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3JlRGF0YVJlY29yZHNSZW1vdmFsKGZh
bHNlKTsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTWluaW11
bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsKDApOworICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLnN0YXRpc3RpY3NQcm9jZXNzU3RhdGlzdGljc0FuZERhdGFSZWNvcmRzKCk7CisK
KyAgICAgICAgICAgICAgICAgICAgZGVidWcoIlNpbXVsYXRlIGFuIHVuaGFuZGxlZCB1c2VyIGtl
eSBwcmVzcy4iKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikK
KyAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImEiLCBbIm1ldGFL
ZXkiXSk7CisgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAg
IHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3JlRGF0
YVJlY29yZHNSZW1vdmFsKGZhbHNlKTsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlz
dGljc01pbmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbCgwKTsKLSAgICAgICAgICAg
IHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nlc3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsK
LQotICAgICAgICAgICAgZGVidWcoIlNpbXVsYXRlIGFuIHVuaGFuZGxlZCB1c2VyIGtleSBwcmVz
cy4iKTsKLSAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpCi0gICAgICAgICAgICAg
ICAgZXZlbnRTZW5kZXIua2V5RG93bigiYSIsIFsibWV0YUtleSJdKTsKICAgICAgICAgfSk7Ci0g
ICAgfSk7CisgICAgfQogfQogPC9zY3JpcHQ+CiA8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiIHNyYz0i
cmVzb3VyY2VzL29uY2xpY2suaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdp
dGgtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50
ZXJhY3Rpb24tZGF0YWJhc2UuaHRtbAppbmRleCAwZDIyOGYzMTQ5ZTFiODZiNWVjM2RiOTU0M2Fm
NjcxOTJhODkwMDFhLi5lYzEzYTUwMjc0YzZkZDk0YmZlOGExNjQ1OWM0Y2JhYjhhOTBlOTBjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
cHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxl
bnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLWRhdGFiYXNlLmh0bWwKQEAgLTU3LDcg
KzU3LDYgQEAKICAgICAgICAgaWYgKGRvY3VtZW50LmxvY2F0aW9uLmhvc3QgPT09IGhvc3RVbmRl
clRlc3QgJiYgd2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93LmludGVybmFscykgewogICAgICAg
ICAgICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKICAgICAgICAgICAgIHNl
dEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQo
dHJ1ZSk7CiAgICAgICAgICAgICAgICAgcnVuVGVzdFJ1bm5lclRlc3QoKTsKICAgICAgICAgICAg
IH0pOwogICAgICAgICB9IGVsc2UgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50
ZXJhY3Rpb24tdGltZW91dC1kYXRhYmFzZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50ZXJh
Y3Rpb24tdGltZW91dC1kYXRhYmFzZS5odG1sCmluZGV4IDEyNjgyMDE5MDEwNjQzNTc2NjY2YmUw
N2E3ZDJhZDlkNzFiOTA4NDEuLmMxYzQ3Nzc4YmI2NWFkMTRhNmFlNTI3NDAwNmIzMTY2NjJjOGYz
YzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLXRpbWVvdXQtZGF0
YWJhc2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi10aW1lb3V0LWRh
dGFiYXNlLmh0bWwKQEAgLTQ5LDcgKzQ5LDYgQEAKICAgICBpZiAoZG9jdW1lbnQubG9jYXRpb24u
aG9zdCA9PT0gaG9zdFVuZGVyVGVzdCAmJiB3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50
ZXJuYWxzKSB7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2UodHJ1ZSk7CiAg
ICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgICAgICB0ZXN0UnVubmVyLnNl
dFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwog
ICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRydWUsIHJ1blRlc3RSdW5uZXJUZXN0KTsKICAgICB9
CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VM
b2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLXRp
bWVvdXQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLXRpbWVvdXQuaHRtbApp
bmRleCAzODlhNTZkOGI5ZGZiYmEyOGE3ZTM5NDE1Y2IxNWU4NmQ2ODg2NTMwLi5iMTQyN2UwNDAx
Zjc0N2VlZDVlYTk5YmJjZjI5MTY2NGU0OWVlYzIxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgt
dXNlci1pbnRlcmFjdGlvbi10aW1lb3V0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50
ZXJhY3Rpb24tdGltZW91dC5odG1sCkBAIC00OCw3ICs0OCw2IEBACiAgICAgaWYgKGRvY3VtZW50
LmxvY2F0aW9uLmhvc3QgPT09IGhvc3RVbmRlclRlc3QgJiYgd2luZG93LnRlc3RSdW5uZXIgJiYg
d2luZG93LmludGVybmFscykgewogICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
ICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
IHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNj
YW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICBydW5UZXN0UnVubmVyVGVzdCgpOwogICAgICAgICAg
fSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24uaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxl
bnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLmh0bWwKaW5kZXggZmY2MmYxYTViYzg3
YWI1YmEwYzEzNjllNTMxOGYzNTM2MjQ4OGM0Ni4uOGFlNjMzYmZjZjVkMjk2Y2I2ZDkwN2FlNzhl
YTMyMzFmMzgzY2I3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24u
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
cHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi5odG1sCkBAIC01Niw3ICs1
Niw2IEBACiAgICAgZnVuY3Rpb24gc2V0VXBBbmRSdW4oKSB7CiAgICAgICAgIGlmIChkb2N1bWVu
dC5sb2NhdGlvbi5ob3N0ID09PSBob3N0VW5kZXJUZXN0ICYmIHdpbmRvdy50ZXN0UnVubmVyICYm
IHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwg
ZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05v
dGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICAg
ICAgcnVuVGVzdFJ1bm5lclRlc3QoKTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2Ug
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24tZGF0YWJhc2Uu
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2
YWxlbnQtcmVzb3VyY2Utd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWRhdGFiYXNlLmh0bWwKaW5k
ZXggOWFiZGI2ZDFkYTFjZTU3ODUwOTRkMjQzYTcyODQ0YTQ2MzJmMjVlZS4uMGE5ZWExMzkxMzdk
YTk4NGU5MTk2YWRmMGE3ZjRmNmVhMGVlOWUyMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRob3V0
LXVzZXItaW50ZXJhY3Rpb24tZGF0YWJhc2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGhvdXQtdXNl
ci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sCkBAIC01MSw3ICs1MSw2IEBACiAgICAgICAgIHRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICB0ZXN0UnVubmVyLnNldFVzZUlUUERh
dGFiYXNlKHRydWUpOwogICAgICAgICBzZXRFbmFibGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkg
ewotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0
YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgIHJ1blRlc3RSdW5uZXJUZXN0
KCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aG91dC11c2Vy
LWludGVyYWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi5odG1s
CmluZGV4IDZkZjYwMDk4MjdmZDI1OGQ3ODJjNDI5MWEyMjgzNzU2MDM2MTk3MDIuLjNjOWJiNDNk
MDk3ZDRiNzRhN2Q5ZjFiYmJkN2ExNmY5MGI4YzUwODQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0
aG91dC11c2VyLWludGVyYWN0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRob3V0LXVzZXItaW50
ZXJhY3Rpb24uaHRtbApAQCAtNTEsNyArNTEsNiBAQAogICAgIGlmIChkb2N1bWVudC5sb2NhdGlv
bi5ob3N0ID09PSBob3N0VW5kZXJUZXN0ICYmIHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5p
bnRlcm5hbHMpIHsKICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAgICAg
IHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB0ZXN0UnVu
bmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRy
dWUpOwogICAgICAgICAgICAgcnVuVGVzdFJ1bm5lclRlc3QoKTsKICAgICAgICAgfSk7CiAgICAg
fQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL3JlbW92ZS13ZWJzaXRlLWRhdGEtZm9yLW9yaWdpbi1kZWxldGVzLXRoaXJkLXBhcnR5LXNj
cmlwdC1sb2Fkcy1kYXRhYmFzZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS13ZWJzaXRlLWRhdGEtZm9yLW9yaWdpbi1kZWxldGVzLXRo
aXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy1kYXRhYmFzZS5odG1sCmluZGV4IGRhOWQxNGNiZjM2ZTNl
MzQwMjY1NDZjNzRkYzkwNTQwOGRkMWI0ZTguLjc4NDdlMTBkY2RlYTEyMjVhMjI1ZGQ1ODI5MmYy
OGU4MjJmZTYzNjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VM
b2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vic2l0ZS1kYXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGly
ZC1wYXJ0eS1zY3JpcHQtbG9hZHMtZGF0YWJhc2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVtb3ZlLXdlYnNpdGUtZGF0YS1mb3Itb3Jp
Z2luLWRlbGV0ZXMtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLWRhdGFiYXNlLmh0bWwKQEAgLTMz
LDcgKzMzLDYgQEAKICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CiAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2UodHJ1
ZSk7CiAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24o
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3Rp
ZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwogICAgICAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0Nh
bGxiYWNrKGZpbmlzaFRlc3QpOwogICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQubG9j
YXRpb24uaGFzaCA9ICJzdGVwMSI7CiAgICAgICAgICAgICAgICAgICAgICAgICBydW5UZXN0KCk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvcmVtb3ZlLXdlYnNpdGUtZGF0YS1mb3Itb3JpZ2luLWRlbGV0ZXMtdGhpcmQtcGFydHktc2Ny
aXB0LWxvYWRzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvcmVtb3ZlLXdlYnNpdGUtZGF0YS1mb3Itb3JpZ2luLWRlbGV0ZXMtdGhpcmQtcGFydHkt
c2NyaXB0LWxvYWRzLmh0bWwKaW5kZXggYzMzZTk4ZDc1ZWExMGNlYjA0Yzc0NjU3ZGE0MGU4MGRl
NzgzMDJkNy4uNTE4MGI4NjkwYzUwYzU5MDdiZDE0MzEzZjE4OGNlYTI3MWU2ZTYyZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92
ZS13ZWJzaXRlLWRhdGEtZm9yLW9yaWdpbi1kZWxldGVzLXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fk
cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy9yZW1vdmUtd2Vic2l0ZS1kYXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGlyZC1wYXJ0eS1zY3Jp
cHQtbG9hZHMuaHRtbApAQCAtMjYsNyArMjYsNiBAQAogICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgICAgICAgICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgICAgICBzZXRFbmFi
bGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVz
dFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5l
ZCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRp
c3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhmaW5pc2hUZXN0KTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDEiOwogICAgICAgICAg
ICAgICAgICAgICAgICAgcnVuVGVzdCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy91dGlsLmpzIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy91dGlsLmpzCmlu
ZGV4IGVmZTc5ODJjZmU3ZGE1YzlmNWJmYTY1MjdmMDM5N2FlNjIzMjBmZGEuLjk2YmZmNWFlYTgz
NWY3NzQ0ZDcyMzNkNTUwMzY4ZjRjYzE5YmU1ZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZXNvdXJjZXMvdXRpbC5qcworKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0
aWwuanMKQEAgLTksNyArOSw2IEBAIGZ1bmN0aW9uIHNldEVuYWJsZUZlYXR1cmUoZW5hYmxlLCBj
b21wbGV0aW9uSGFuZGxlcikgewogICAgICAgICB0ZXN0UnVubmVyLnN0YXRpc3RpY3NSZXNldFRv
Q29uc2lzdGVudFN0YXRlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRT
dGF0aXN0aWNzSXNSdW5uaW5nVGVzdChmYWxzZSk7CiAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoZmFsc2UpOwotICAgICAgICAgICAgdGVzdFJ1
bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZChm
YWxzZSk7CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogICAgICAgICB9KTsKICAg
ICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3Mv
Y2FudmFzLXJlYWQtYW5kLXdyaXRlLWRhdGEtY29sbGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL2NhbnZhcy1yZWFkLWFuZC13cml0ZS1kYXRhLWNv
bGxlY3Rpb24uaHRtbAppbmRleCAxYjZiMzk3NGZhOGEyNzYxMWNlOTY4YzE2ZmM3Y2M5NTZlYTJk
MzI2Li5hNzY4ZDg3MmUzZWFiZTBjNmJlNDU5YjQyMzRkMzczMGM0OGYwY2I1IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3MvY2FudmFzLXJlYWQtYW5k
LXdyaXRlLWRhdGEtY29sbGVjdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
d2ViQVBJU3RhdGlzdGljcy9jYW52YXMtcmVhZC1hbmQtd3JpdGUtZGF0YS1jb2xsZWN0aW9uLmh0
bWwKQEAgLTE5LDggKzE5LDYgQEAKICAgICB9CiAKICAgICBmdW5jdGlvbiBydW5UZXN0UnVubmVy
VGVzdCgpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVu
RGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKLQogICAgICAgICB0ZXN0UnVubmVyLmluc3Rh
bGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soY29tcGxldGVUZXN0KTsKICAg
ICAKICAgICAgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL2Zv
bnQtbG9hZC1kYXRhLWNvbGxlY3Rpb24uaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vi
QVBJU3RhdGlzdGljcy9mb250LWxvYWQtZGF0YS1jb2xsZWN0aW9uLmh0bWwKaW5kZXggYTFkYjNl
MmM3M2YwMTFkMTI1YzBiZTAzYjYyNDc5Y2VkZTNlNTc4Zi4uMzFlYjI0ODExMTUxZWU3YTA0MGJh
N2ViYzU1NGM5ZmVmOWJkYjhmNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
ZWJBUElTdGF0aXN0aWNzL2ZvbnQtbG9hZC1kYXRhLWNvbGxlY3Rpb24uaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3MvZm9udC1sb2FkLWRhdGEtY29sbGVj
dGlvbi5odG1sCkBAIC0xOSw4ICsxOSw2IEBACiAgICAgfQogCiAgICAgZnVuY3Rpb24gcnVuVGVz
dFJ1bm5lclRlc3QoKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBh
Z2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7Ci0KICAgICAgICAgdGVzdFJ1bm5l
ci5pbnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKGNvbXBsZXRlVGVz
dCk7CiAKICAgICAgICAgdmFyIGJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgn
Ym9keScpWzBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRp
c3RpY3MvbmF2aWdhdG9yLWZ1bmN0aW9ucy1hY2Nlc3NlZC1kYXRhLWNvbGxlY3Rpb24uaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9uYXZpZ2F0b3ItZnVuY3Rp
b25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCmluZGV4IDhhYWJjMzIyY2E5MzNiNmU2
YzYxNzc4ZmYzOGNlYWZiNGRlZGIyNzguLjhiNTNiYTEzNzQyMDI0YjY1MzYwMWE1YjI4ODFmOWU0
YzRjNzkxOTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlz
dGljcy9uYXZpZ2F0b3ItZnVuY3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9uYXZpZ2F0b3ItZnVu
Y3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCkBAIC0xOSw4ICsxOSw2IEBACiAg
ICAgfQogCiAgICAgZnVuY3Rpb24gcnVuVGVzdFJ1bm5lclRlc3QoKSB7Ci0gICAgICAgIHRlc3RS
dW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQo
dHJ1ZSk7Ci0KICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRh
UmVjb3Jkc0NhbGxiYWNrKGNvbXBsZXRlVGVzdCk7CiAgICAgCiAgICAgICAgIHZhciB1c2VyYWdl
bnQgPSBuYXZpZ2F0b3IudXNlckFnZW50OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJBUElTdGF0aXN0aWNzL3NjcmVlbi1mdW5jdGlvbnMtYWNjZXNzZWQtZGF0YS1jb2xs
ZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3Mvc2Ny
ZWVuLWZ1bmN0aW9ucy1hY2Nlc3NlZC1kYXRhLWNvbGxlY3Rpb24uaHRtbAppbmRleCA4ZDU1Mzc5
NTA3MGIwZGQyZTE0ZWIyMWEzODI1MmMxMzVkMjRlNDU2Li4zNzY4MzRkMzAzMjk4NjU0NjRlOWMz
M2YwY2JkMWZjMmExZjg1Mjg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dl
YkFQSVN0YXRpc3RpY3Mvc2NyZWVuLWZ1bmN0aW9ucy1hY2Nlc3NlZC1kYXRhLWNvbGxlY3Rpb24u
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3Mvc2NyZWVu
LWZ1bmN0aW9ucy1hY2Nlc3NlZC1kYXRhLWNvbGxlY3Rpb24uaHRtbApAQCAtMTksOCArMTksNiBA
QAogICAgIH0KIAogICAgIGZ1bmN0aW9uIHJ1blRlc3RSdW5uZXJUZXN0KCkgewotICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2Fu
bmVkKHRydWUpOwotCiAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2Fu
RGF0YVJlY29yZHNDYWxsYmFjayhjb21wbGV0ZVRlc3QpOwogICAgIAogICAgICAgICB2YXIgYXZh
aWxUb3AgPSBzY3JlZW4uYXZhaWxUb3A7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3dlYnNvY2tldC9jb25uZWN0aW9uLXJlZnVzYWwtaW4tZnJhbWUtcmVzb3VyY2UtbG9hZC1z
dGF0aXN0aWNzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC9jb25uZWN0
aW9uLXJlZnVzYWwtaW4tZnJhbWUtcmVzb3VyY2UtbG9hZC1zdGF0aXN0aWNzLmh0bWwKaW5kZXgg
YjJiMGE5MmMzMTE2MzAyOWEzNTE3NGUzZDFlNTBhMjAwMzI5ZGQyOC4uOGM0Yzk3NjFmNmZkYzkw
YWM0YmIwNGJlMTIxNGY5Yjc5NTFjYjJhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93ZWJzb2NrZXQvY29ubmVjdGlvbi1yZWZ1c2FsLWluLWZyYW1lLXJlc291cmNlLWxvYWQt
c3RhdGlzdGljcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L2Nv
bm5lY3Rpb24tcmVmdXNhbC1pbi1mcmFtZS1yZXNvdXJjZS1sb2FkLXN0YXRpc3RpY3MuaHRtbApA
QCAtMzcsNyArMzcsNiBAQAogICAgICAgICAgICAgaWZyYW1lRWxlbWVudC5pZCA9ICJ0ZXN0SWZy
YW1lIjsKICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaWZyYW1lRWxlbWVu
dCk7CiAKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hl
bkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICB0ZXN0UnVubmVyLmlu
c3RhbGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soY29tcGxldGVUZXN0KTsK
ICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
LXdrMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9UZXN0
RXhwZWN0YXRpb25zCmluZGV4IDliNmVjYTg4MTFmZjM0ZTk1ZjMzNDc1YzMzZDQ0ZDU0OGE4ZWNl
ZTIuLjg3ZjZjMjBiYzYwOWYyNGIwMGRkOTQ4N2YyNWY3ZjNhNWE2MGQ3OWEgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE3NDgsOCArMTc0
OCw2IEBAIHdlYmtpdC5vcmcvYi8yMTM1MTEgZmFzdC9iYWNrZ3JvdW5kcy9zaXplL2JhY2tncm91
bmRTaXplLWluLWJhY2tncm91bmQtc2hvcnRoYW5kCiAKIHdlYmtpdC5vcmcvYi8yMTM1MjAgcGVy
Zi9odG1sY29sbGVjdGlvbi1iYWNrd2FyZHMtaXRlcmF0aW9uLmh0bWwgWyBQYXNzIEZhaWx1cmUg
XQogCi13ZWJraXQub3JnL2IvMjEzNTUzIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy9ncmFuZGZhdGhlcmluZy1kYXRhYmFzZS5odG1sIFsgUGFzcyBUaW1lb3V0IF0KLQogd2Via2l0
Lm9yZy9iLzIxMzY1IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZW1iZWRkZWQtY29udGVudC90aGUtdmlkZW8tZWxlbWVudC9pbnRyaW5zaWNfc2l6ZXMuaHRt
IFsgUGFzcyBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzIxNDA4NCBbIFJlbGVhc2UgXSB3ZWJy
dGMvbGlid2VicnRjL2Rlc2NyaXB0aW9uR2V0dGVycy5odG1sIFsgUGFzcyBGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404731</attachid>
            <date>2020-07-20 11:03:58 -0700</date>
            <delta_ts>2020-07-20 12:47:55 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213553-20200720110357.patch</filename>
            <type>text/plain</type>
            <size>47063</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0NjA0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjA3MTMwZmM2MGNkMmRkY2ZhYTdlYzFhMmE3NTYxNmE2
NmZiOTA2ZC4uMzQyMzdmY2RlZjgwNjdlZTNkYTkyYjFjNmQyNTdmMGVlZTU2MTYzZSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2
IEBACisyMDIwLTA3LTIwICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29t
PgorCisgICAgICAgIFsgaU9TIG1hY09TIF0gaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL2dyYW5kZmF0aGVyaW5nLWRhdGFiYXNlLmh0bWwgaXMgYSByYXJlIGZsYWt5IHRpbWVvdXQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMzU1Mwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjQ2OTY0MzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCisKKyAgICAgICAgUmVnaXN0ZXJpbmcgdG8gcmVjZWl2ZSBhbiBJVFAgc3Rh
dGlzdGljcyBwcm9jZXNzaW5nIGNhbGxiYWNrIHNob3VsZCBiZQorICAgICAgICBzeW5jaHJvbm91
cywgb3RoZXJ3aXNlIHByb2Nlc3NpbmcgY291bGQgaGFwcGVuIGJlZm9yZSBJVFAgaGFzCisgICAg
ICAgIHJlZ2lzdGVyZWQgdGhhdCBpdCBzaG91bGQgYmUgcmVwb3J0ZWQgdG8gdGhlIHRlc3QgcnVu
bmVyLgorCisgICAgICAgIFRvIGF2b2lkIHRoaXMgbWlzdGFrZSBpbiB0aGUgZnV0dXJlLCB0aGlz
IHBhdGNoIHJlbW92ZXMgdGhlCisgICAgICAgIGFzeW5jIHZlcnNpb24gb2YgdGhpcyBjYWxsIGZy
b20gVGVzdEludm9jYXRpb24uY3BwLCBiZWNhdXNlIGl0IHNob3VsZAorICAgICAgICBuZXZlciBi
ZSB1c2VkLgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0
UnVubmVyLmNwcDoKKyAgICAgICAoV1RSOjpUZXN0UnVubmVyOjppbnN0YWxsU3RhdGlzdGljc0Rp
ZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2spOgorICAgICAgICBVcGRhdGUgdGhpcyBmdW5jdGlv
biB0byBsb29rIGxpa2UKKyAgICAgICAgaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29y
ZHNDYWxsYmFjay4gSXQgaXMgc2ltcGxlciB0byBsZXQgSVRQCisgICAgICAgIGtub3cgdG8gc2Vu
ZCB0aGUgY2FsbGJhY2sgcmVzcG9uc2Ugd2hlbiBpbnN0YWxsaW5nIHRoZSBjYWxsYmFjaworICAg
ICAgICBpbnN0ZWFkIG9mIHJlcXVpcmluZyBhIHNlcGFyYXRlIGZ1bmN0aW9uIGNhbGwuCisKKyAg
ICAgICAgKFdUUjo6VGVzdFJ1bm5lcjo6aW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29y
ZHNDYWxsYmFjayk6CisgICAgICAgIFJlZ2lzdGVyIGZvciBhIGNhbGxiYWNrIHN5bmNocm9ub3Vz
bHkuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcDoKKyAg
ICAgICAgKFdUUjo6VGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVNZXNzYWdlRnJvbUluamVjdGVk
QnVuZGxlKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRp
bmdzL1Rlc3RSdW5uZXIuaWRsOgorICAgICAgICBSZW1vdmUgc2V0U3RhdGlzdGljc05vdGlmeVBh
Z2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQgZnJvbSB0aGUgaWRsCisgICAgICAgIGZpbGUg
c28gaXQgZG9lcyBub3QgYWNjaWRlbnRhbGx5IGdldCBjYWxsZWQgaW4gYSBsYXlvdXQgdGVzdCBp
biB0aGUKKyAgICAgICAgZnV0dXJlLgorCiAyMDIwLTA3LTIwICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIGxvY2sgaWNvbiB0byBNaW5p
QnJvd3NlcgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKaW5kZXggMDNlNWFiOGZhMTc4MzQ3OTli
ZmFmNzlmMTEyNWZjZmJiNjZhYmQ0OC4uNWYyOTE1ZGM5ODc2MjJjNzM5OGMxMTc0MjU5MGE2YmJk
MThmNGE5NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCkBAIC0zMjksNyArMzI5LDYgQEAg
aW50ZXJmYWNlIFRlc3RSdW5uZXIgewogICAgIHZvaWQgc3RhdGlzdGljc1Byb2Nlc3NTdGF0aXN0
aWNzQW5kRGF0YVJlY29yZHMoKTsKICAgICB2b2lkIHN0YXRpc3RpY3NVcGRhdGVDb29raWVCbG9j
a2luZyhvYmplY3QgY29tcGxldGlvbkhhbmRsZXIpOwogICAgIHZvaWQgc3RhdGlzdGljc1N1Ym1p
dFRlbGVtZXRyeSgpOwotICAgIHZvaWQgc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFS
ZWNvcmRzV2VyZVNjYW5uZWQoYm9vbGVhbiB2YWx1ZSk7CiAgICAgdm9pZCBzZXRTdGF0aXN0aWNz
SXNSdW5uaW5nVGVzdChib29sZWFuIHZhbHVlKTsKICAgICB2b2lkIHNldFN0YXRpc3RpY3NTaG91
bGRDbGFzc2lmeVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChib29sZWFuIHZhbHVl
KTsKICAgICB2b2lkIHNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1Jl
bW92YWwoZG91YmxlIHNlY29uZHMpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKaW5kZXggMmIzYTM0ZTdlMDQxYTQyOWVkZGEz
NDhlMWUxMGFkZjRmYmFhZjhkZC4uNTU0Y2IyMDI4YWY1NzQzYmFmODM5Yjk3MzRiMWQ1NDU1NTkz
N2RiOCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9U
ZXN0UnVubmVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L1Rlc3RSdW5uZXIuY3BwCkBAIC0yMDg0LDcgKzIwODQsMTEgQEAgdm9pZCBUZXN0UnVubmVyOjpz
ZXRTdGF0aXN0aWNzVGltZVRvTGl2ZVVzZXJJbnRlcmFjdGlvbihkb3VibGUgc2Vjb25kcykKIAog
dm9pZCBUZXN0UnVubmVyOjppbnN0YWxsU3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2Fs
bGJhY2soSlNWYWx1ZVJlZiBjYWxsYmFjaykKIHsKLSAgICBjYWNoZVRlc3RSdW5uZXJDYWxsYmFj
ayhTdGF0aXN0aWNzRGlkTW9kaWZ5RGF0YVJlY29yZHNDYWxsYmFja0lELCBjYWxsYmFjayk7Cisg
ICAgaWYgKCEhY2FsbGJhY2spIHsKKyAgICAgICAgY2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soU3Rh
dGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2tJRCwgY2FsbGJhY2spOworICAgICAg
ICAvLyBTZXR0aW5nIGEgY2FsbGJhY2sgaW1wbGllcyB3ZSBleHBlY3QgdG8gcmVjZWl2ZSBjYWxs
YmFja3MuIFNvIHJlZ2lzdGVyIGZvciB0aGVtLgorICAgICAgICBzZXRTdGF0aXN0aWNzTm90aWZ5
UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKKyAgICB9CiB9CiAKIHZvaWQg
VGVzdFJ1bm5lcjo6c3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soKQpAQCAt
MjA5NCwxNCArMjA5OCwxMSBAQCB2b2lkIFRlc3RSdW5uZXI6OnN0YXRpc3RpY3NEaWRNb2RpZnlE
YXRhUmVjb3Jkc0NhbGxiYWNrKCkKIAogdm9pZCBUZXN0UnVubmVyOjppbnN0YWxsU3RhdGlzdGlj
c0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKEpTVmFsdWVSZWYgY2FsbGJhY2spCiB7Ci0gICAg
Y2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxi
YWNrSUQsIGNhbGxiYWNrKTsKLQotICAgIGJvb2wgbm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNX
ZXJlU2Nhbm5lZCA9ICEhY2FsbGJhY2s7Ci0KLSAgICAvLyBTZXR0aW5nIGEgY2FsbGJhY2sgaW1w
bGllcyB3ZSBleHBlY3QgdG8gcmVjZWl2ZSBjYWxsYmFja3MuIFNvIHJlZ2lzdGVyIGZvciB0aGVt
LgotICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBtZXNzYWdlTmFtZSA9IGFkb3B0V0soV0tT
dHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIlN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRh
UmVjb3Jkc1dlcmVTY2FubmVkIikpOwotICAgIFdLUmV0YWluUHRyPFdLQm9vbGVhblJlZj4gbWVz
c2FnZUJvZHkgPSBhZG9wdFdLKFdLQm9vbGVhbkNyZWF0ZShub3RpZnlQYWdlc1doZW5EYXRhUmVj
b3Jkc1dlcmVTY2FubmVkKSk7Ci0gICAgV0tCdW5kbGVQb3N0TWVzc2FnZShJbmplY3RlZEJ1bmRs
ZTo6c2luZ2xldG9uKCkuYnVuZGxlKCksIG1lc3NhZ2VOYW1lLmdldCgpLCBtZXNzYWdlQm9keS5n
ZXQoKSk7CisgICAgaWYgKCEhY2FsbGJhY2spIHsKKyAgICAgICAgY2FjaGVUZXN0UnVubmVyQ2Fs
bGJhY2soU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrSUQsIGNhbGxiYWNrKTsK
KyAgICAgICAgLy8gU2V0dGluZyBhIGNhbGxiYWNrIGltcGxpZXMgd2UgZXhwZWN0IHRvIHJlY2Vp
dmUgY2FsbGJhY2tzLiBTbyByZWdpc3RlciBmb3IgdGhlbS4KKyAgICAgICAgc2V0U3RhdGlzdGlj
c05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CisgICAgfQogfQog
CiB2b2lkIFRlc3RSdW5uZXI6OnN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjaygp
CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcCBi
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uY3BwCmluZGV4IDk3NTkzNTVi
MTI4NTFiMGVjYzM1NjgxZTNmNDBiMWU1OGY3NDEwYTEuLmI3M2IwOTQ0MWYxNzRiNTQxZWNkNjYz
N2FlZjBmOTE5N2Q4ZGVmOGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dEludm9jYXRpb24uY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRp
b24uY3BwCkBAIC05MTksMTMgKzkxOSw2IEBAIHZvaWQgVGVzdEludm9jYXRpb246OmRpZFJlY2Vp
dmVNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lCiAgICAg
ICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmlu
ZyhtZXNzYWdlTmFtZSwgIlN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVT
Y2FubmVkIikpIHsKLSAgICAgICAgQVNTRVJUKFdLR2V0VHlwZUlEKG1lc3NhZ2VCb2R5KSA9PSBX
S0Jvb2xlYW5HZXRUeXBlSUQoKSk7Ci0gICAgICAgIFdLQm9vbGVhblJlZiB2YWx1ZSA9IHN0YXRp
Y19jYXN0PFdLQm9vbGVhblJlZj4obWVzc2FnZUJvZHkpOwotICAgICAgICBUZXN0Q29udHJvbGxl
cjo6c2luZ2xldG9uKCkuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2Vy
ZVNjYW5uZWQoV0tCb29sZWFuR2V0VmFsdWUodmFsdWUpKTsKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLQogICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAi
U3RhdGlzdGljc0NsZWFySW5NZW1vcnlBbmRQZXJzaXN0ZW50U3RvcmUiKSkgewogICAgICAgICBU
ZXN0Q29udHJvbGxlcjo6c2luZ2xldG9uKCkuc3RhdGlzdGljc0NsZWFySW5NZW1vcnlBbmRQZXJz
aXN0ZW50U3RvcmUoKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU1MTJkN2E3YTkxY2EwZmVk
OTNlYjk3MDU3Yzg0OGQ0NjJlMTc5MjEuLjIzZTBiYjRlZmU2YWJiZTEzZTdhMGUyZmNmZmRlZDQ3
ZWI0OGE1YzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MSBAQAorMjAyMC0wNy0yMCAgS2F0ZSBDaGVuZXkg
IDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KKworICAgICAgICBbIGlPUyBtYWNPUyBdIGh0
dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9ncmFuZGZhdGhlcmluZy1kYXRhYmFzZS5o
dG1sIGlzIGEgcmFyZSBmbGFreSB0aW1lb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM1NTMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY0Njk2
NDMyPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFJlbW92
ZSB1bm5lY2Vzc2FyeSBjYWxscyB0byByZWdpc3RlciBmb3IgYSBzdGF0aXN0aWNzIHByb2Nlc3Np
bmcKKyAgICAgICAgY2FsbGJhY2ssIG5vdyB0aGF0IGl0IGlzIGRvbmUgc3luY2hyb25vdXNseSBh
cyBhIHBhcnQgb2YgdGhlIGluc3RhbGxpbmcgZnVuY3Rpb24uCisKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWltcG9y
dC1pbi13b3JrZXItZGF0YWJhc2UuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWltcG9ydC1pbi13b3JrZXIu
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQt
dGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLWRhdGFiYXNlLmh0bWw6CisgICAgICAgICogaHR0cC90
ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fk
cy5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kby1u
b3QtY2FwdHVyZS1zdGF0aXN0aWNzLWZvci1zaW1wbGUtdG9wLW5hdmlnYXRpb25zLWRhdGFiYXNl
Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvLW5v
dC1jYXB0dXJlLXN0YXRpc3RpY3MtZm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMuaHRtbDoKKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1jb3VudC10aGly
ZC1wYXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1zY3JpcHQtZGF0YWJhc2UuaHRtbDoKKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1jb3VudC10aGlyZC1w
YXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1zY3JpcHQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvbWFueS1pbnNlcnRzLW9ubHktaW5zZXJ0LW9uY2Uu
aHRtbDoKKworICAgICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2
YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWw6CisgICAgICAgICog
aHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS1oYW5k
bGVkLWtleWRvd24uaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFuZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWw6
CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1y
ZXNvdXJjZS11bmhhbmRsZWQta2V5ZG93bi5odG1sOgorICAgICAgICBUaGUgdGVzdGluZyBjb250
ZW50cyBzaG91bGQgYmUgcGFydCBvZiB0aGUgY2FsbGJhY2sgZm9yIHNldEVuYWJsZUZlYXR1cmUK
KyAgICAgICAgdG8gZW5zdXJlIHNldHVwIGZpbmlzaGVzIGJlZm9yZSB0aGUgdGVzdCBpcyBydW4u
CisKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50
LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sOgorICAgICAgICAq
IGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0
aC11c2VyLWludGVyYWN0aW9uLXRpbWVvdXQtZGF0YWJhc2UuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNl
ci1pbnRlcmFjdGlvbi10aW1lb3V0Lmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24u
aHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFs
ZW50LXJlc291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sOgorICAg
ICAgICAqIGh0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3Vy
Y2Utd2l0aG91dC11c2VyLWludGVyYWN0aW9uLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS13ZWJzaXRlLWRhdGEtZm9yLW9yaWdpbi1kZWxl
dGVzLXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy1kYXRhYmFzZS5odG1sOgorICAgICAgICAqIGh0
dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vic2l0ZS1kYXRhLWZvci1v
cmlnaW4tZGVsZXRlcy10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRtbDoKKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwuanM6CisgICAg
ICAgIChzZXRFbmFibGVGZWF0dXJlKToKKyAgICAgICAgVGhpcyBjYWxsIGlzIHVubmVjZXNzYXJ5
IGFzIHRoZSBwYXJhbWV0ZXJzIGFyZSBjbGVhcmVkIGluCisgICAgICAgIFdLV2Vic2l0ZURhdGFT
dG9yZVN0YXRpc3RpY3NSZXNldFRvQ29uc2lzdGVudFN0YXRlLgorCisgICAgICAgICogaHR0cC90
ZXN0cy93ZWJBUElTdGF0aXN0aWNzL2NhbnZhcy1yZWFkLWFuZC13cml0ZS1kYXRhLWNvbGxlY3Rp
b24uaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3MvZm9udC1sb2Fk
LWRhdGEtY29sbGVjdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvd2ViQVBJU3RhdGlz
dGljcy9uYXZpZ2F0b3ItZnVuY3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sOgor
ICAgICAgICAqIGh0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9zY3JlZW4tZnVuY3Rpb25zLWFj
Y2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvd2Vic29j
a2V0L2Nvbm5lY3Rpb24tcmVmdXNhbC1pbi1mcmFtZS1yZXNvdXJjZS1sb2FkLXN0YXRpc3RpY3Mu
aHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIw
MjAtMDctMjAgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEdl
bmVyYXRlQ2VydGlmaWNhdGVBc3luYyBzaG91bGQgYmUgY2FsbGVkIG9uIHNpZ25hbGluZyB0aHJl
YWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtaW1wb3J0LWluLXdvcmtlci1kYXRhYmFzZS5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50
LXRoaXJkLXBhcnR5LXNjcmlwdC1pbXBvcnQtaW4td29ya2VyLWRhdGFiYXNlLmh0bWwKaW5kZXgg
YjE4ZDljMTAyZTFhMzVlMDVkM2Y1M2U3ZDIwZGY3ODcxNzgwNmU0ZS4uMDkwYTkyZWFmOGM3NDg5
ODczMDJiNGY1MmU3ZTNlZjljZjAxZjNhMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNjcmlwdC1pbXBv
cnQtaW4td29ya2VyLWRhdGFiYXNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNjcmlwdC1pbXBvcnQtaW4t
d29ya2VyLWRhdGFiYXNlLmh0bWwKQEAgLTI5LDcgKzI5LDYgQEAKICAgICAgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAgICAgICAgICAgICAgICAgIHNldEVu
YWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFVzZUlUUERhdGFiYXNlKHRydWUpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJl
U2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFs
bFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhmaW5pc2hUZXN0KTsKICAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAiTG9hZFdvcmtlciI7
CiAgICAgICAgICAgICAgICAgICAgICAgICBydW5UZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHkt
c2NyaXB0LWltcG9ydC1pbi13b3JrZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtaW1wb3J0LWluLXdv
cmtlci5odG1sCmluZGV4IDAyZmQ2YmViZTllMjZkYzdkOTdiNDdkZTE0NzhmMWM2YmIyMDE0ZjIu
LjNkNWQ4NDBiYjFmNGZkZDEzY2I2N2IzYTg1MzJiNGVjNWIwZjNkMDggMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1w
YXJ0eS1zY3JpcHQtaW1wb3J0LWluLXdvcmtlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtaW1w
b3J0LWluLXdvcmtlci5odG1sCkBAIC0yOCw3ICsyOCw2IEBACiAgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgICAgICAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAgICAgICAgICAgICAgICAgIHNl
dEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVT
Y2FubmVkKHRydWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxs
U3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKGZpbmlzaFRlc3QpOwogICAgICAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaGFzaCA9ICJMb2FkV29ya2VyIjsK
ICAgICAgICAgICAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1z
Y3JpcHQtbG9hZHMtZGF0YWJhc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMtZGF0YWJhc2Uu
aHRtbAppbmRleCAzNDE4ZDBjNTVjODRjNWZhM2YwMmI2ODkzZjlkMWZlYTVmZmExY2MwLi5mNjZk
N2YxZDEwZmZkYTBmZDlmYTQ5Zjk5YjA2ZGJkYTRkZWZiMjcyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY291bnQtdGhpcmQtcGFydHkt
c2NyaXB0LWxvYWRzLWRhdGFiYXNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy1kYXRh
YmFzZS5odG1sCkBAIC0yNSw3ICsyNSw2IEBACiAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJl
KHRydWUsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5z
ZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1
ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNz
RGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmluaXNoVGVzdCk7CiAgICAgICAgICAgICAgICAg
ICAgICAgICBkb2N1bWVudC5sb2NhdGlvbi5oYXNoID0gInN0ZXAxIjsKICAgICAgICAgICAgICAg
ICAgICAgICAgIHJ1blRlc3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9jb3VudC10
aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRtbAppbmRleCA5YTQ1OWNjNzMwYmUyODU3ZjY4MjBj
MDJjMmEzN2EwMmI0MmVhNmQ5Li43NGE5ZDBlNDQzYTNiNDFhZjQxZDczMDU3OTMxNjQxZTA1MzJj
OTNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvY291bnQtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2NvdW50LXRoaXJkLXBhcnR5LXNj
cmlwdC1sb2Fkcy5odG1sCkBAIC0yNCw3ICsyNCw2IEBACiAgICAgICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAgICAgICAgICAgICAgICAgIHNldEVu
YWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2Fu
bmVkKHRydWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3Rh
dGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxiYWNrKGZpbmlzaFRlc3QpOwogICAgICAgICAg
ICAgICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaGFzaCA9ICJzdGVwMSI7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBydW5UZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG8tbm90LWNhcHR1cmUtc3RhdGlzdGljcy1m
b3Itc2ltcGxlLXRvcC1uYXZpZ2F0aW9ucy1kYXRhYmFzZS5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvLW5vdC1jYXB0dXJlLXN0YXRpc3RpY3Mt
Zm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMtZGF0YWJhc2UuaHRtbAppbmRleCBhNDhlMjU1YTFj
NGI4YmM1ZGJmMzEwZDZkODFiZmEwNzM2ODJjYjczLi4zMzI3NmQzMTY3NDJkZTVmMTM5OGFjYzJm
MTdmYzVkN2RkYTdmMDE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291
cmNlTG9hZFN0YXRpc3RpY3MvZG8tbm90LWNhcHR1cmUtc3RhdGlzdGljcy1mb3Itc2ltcGxlLXRv
cC1uYXZpZ2F0aW9ucy1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kby1ub3QtY2FwdHVyZS1zdGF0aXN0aWNzLWZvci1zaW1w
bGUtdG9wLW5hdmlnYXRpb25zLWRhdGFiYXNlLmh0bWwKQEAgLTMxLDcgKzMxLDYgQEAKICAgICAg
ICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2Ug
ImxvY2FsaG9zdDo4MDAwIjoKLSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3Rp
Y3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwogICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxs
YmFjayhmaW5pc2hUZXN0KTsKICAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5uZXIuc3RhdGlz
dGljc05vdGlmeU9ic2VydmVyKCkpCiAgICAgICAgICAgICAgICAgICAgIHRpbWVySGFuZGxlID0g
c2V0VGltZW91dChmaW5pc2hUZXN0LCAxMDApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvLW5vdC1jYXB0dXJlLXN0YXRpc3RpY3Mt
Zm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
cmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kby1ub3QtY2FwdHVyZS1zdGF0aXN0aWNzLWZvci1zaW1w
bGUtdG9wLW5hdmlnYXRpb25zLmh0bWwKaW5kZXggMDEyZjg0OWEyMGE1MzIxMWM5OGM0ZjljZTlh
YmMyM2JiNWQ3ZDc1ZS4uYjc3ZDVmZWUxNzY5NjBlNzhlNWY1YTRjOGI4YmExZDc0NGY0NjM0OCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNz
L2RvLW5vdC1jYXB0dXJlLXN0YXRpc3RpY3MtZm9yLXNpbXBsZS10b3AtbmF2aWdhdGlvbnMuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG8t
bm90LWNhcHR1cmUtc3RhdGlzdGljcy1mb3Itc2ltcGxlLXRvcC1uYXZpZ2F0aW9ucy5odG1sCkBA
IC0zMSw3ICszMSw2IEBACiAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgICAgICBjYXNlICJsb2NhbGhvc3Q6ODAwMCI6Ci0gICAgICAgICAgICAgICAg
dGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nh
bm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNz
RGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmluaXNoVGVzdCk7CiAgICAgICAgICAgICAgICAg
aWYgKCF0ZXN0UnVubmVyLnN0YXRpc3RpY3NOb3RpZnlPYnNlcnZlcigpKQogICAgICAgICAgICAg
ICAgICAgICB0aW1lckhhbmRsZSA9IHNldFRpbWVvdXQoZmluaXNoVGVzdCwgMTAwKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9kb250
LWNvdW50LXRoaXJkLXBhcnR5LWltYWdlLWFzLXRoaXJkLXBhcnR5LXNjcmlwdC1kYXRhYmFzZS5o
dG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvbnQt
Y291bnQtdGhpcmQtcGFydHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0LWRhdGFiYXNlLmh0
bWwKaW5kZXggY2YxYTEzNTA2NWFmYWJkYTU5OGZiOWIyYjQyYWJkNmI0YWM0YWE5MC4uYmQxMDI5
ZmFlNWU5N2FkYWM4NjAyZDgzN2RkMGU0YTczNzdhOTJmYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvbnQtY291bnQtdGhpcmQtcGFy
dHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0LWRhdGFiYXNlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2RvbnQtY291bnQtdGhpcmQt
cGFydHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0LWRhdGFiYXNlLmh0bWwKQEAgLTI1LDcg
KzI1LDYgQEAKICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
CiAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7
CiAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFVzZUlUUERhdGFiYXNlKHRy
dWUpOwotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90
aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHND
YWxsYmFjayhmaW5pc2hUZXN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmxv
Y2F0aW9uLmhhc2ggPSAic3RlcDEiOwogICAgICAgICAgICAgICAgICAgICAgICAgcnVuVGVzdCgp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL2RvbnQtY291bnQtdGhpcmQtcGFydHktaW1hZ2UtYXMtdGhpcmQtcGFydHktc2NyaXB0Lmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1j
b3VudC10aGlyZC1wYXJ0eS1pbWFnZS1hcy10aGlyZC1wYXJ0eS1zY3JpcHQuaHRtbAppbmRleCA4
MTcyYzFhZjk3MjEzMzljMDFkM2FmZTEyMjU1ZGUyNzUyNGNjNTI5Li42YjYyNTAxMTNlMWEwZmY4
NDNmZDZlODA2YWVmMzY4NzY5YWRjNTRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1jb3VudC10aGlyZC1wYXJ0eS1pbWFnZS1h
cy10aGlyZC1wYXJ0eS1zY3JpcHQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvZG9udC1jb3VudC10aGlyZC1wYXJ0eS1pbWFnZS1hcy10aGly
ZC1wYXJ0eS1zY3JpcHQuaHRtbApAQCAtMjQsNyArMjQsNiBAQAogICAgICAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgICAgICBz
ZXRFbmFibGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJl
U2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFs
bFN0YXRpc3RpY3NEaWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhmaW5pc2hUZXN0KTsKICAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhhc2ggPSAic3RlcDEiOwogICAg
ICAgICAgICAgICAgICAgICAgICAgcnVuVGVzdCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL21hbnktaW5zZXJ0cy1vbmx5LWluc2Vy
dC1vbmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3MvbWFueS1pbnNlcnRzLW9ubHktaW5zZXJ0LW9uY2UuaHRtbAppbmRleCBjMDE5YjBkNjI3NzM5
MjhjY2U3ZWJmMDZmZWYwNGQxN2NlZTdhYzI4Li44YWExYjNjNWZlNjZhNjM0MDQ2MTk4ZTg3OTY4
ZWE1MjMyMzA4ZTJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvbWFueS1pbnNlcnRzLW9ubHktaW5zZXJ0LW9uY2UuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvbWFueS1pbnNlcnRz
LW9ubHktaW5zZXJ0LW9uY2UuaHRtbApAQCAtNjYsNyArNjYsNiBAQAogCiAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CiAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24o
KSB7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5E
YXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwogICAgICAgICAgICAgc2V0VXBTdGF0aXN0aWNz
QW5kQ29udGludWUoKTsKICAgICAgICAgfSk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS1o
YW5kbGVkLWtleWRvd24tZGF0YWJhc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLWRh
dGFiYXNlLmh0bWwKaW5kZXggZDUzOTk5NGViZWIxMWRiZGRlM2VmOTAyODUxZDMxZDA4ZGYzMjAy
ZS4uNTY2ODYzNjZhOTgxNzY0OWQ1ZmEyMDgxMzE1OGNiY2E4ZWEyZjgyMSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1y
ZXNvdXJjZS1oYW5kbGVkLWtleWRvd24tZGF0YWJhc2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLWhhbmRs
ZWQta2V5ZG93bi1kYXRhYmFzZS5odG1sCkBAIC0xNSw0NSArMTUsNDMgQEAgb25sb2FkID0gZnVu
Y3Rpb24oKSB7CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMp
IHsKICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKICAgICAgICAg
c2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1
ZSk7Ci0gICAgICAgIH0pOwotICAgIH0KLQotICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1By
ZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwsIHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAg
ICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGlj
c1VybCkpCi0gICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IHNldCBhcyBw
cmV2YWxlbnQgcmVzb3VyY2UuIik7Ci0KLSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNz
SGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwsIGZhbHNlLCBmdW5jdGlvbigpIHsK
LSAgICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFj
dGlvbihzdGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRp
ZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKLQotICAgICAgICAgICAg
dGVzdElucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbnB1dCIpOwotCi0gICAg
ICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkTW9kaWZ5RGF0YVJlY29yZHND
YWxsYmFjayhmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInRlc3RJbnB1dC52YWx1ZSIsICJhIik7Ci0KLSAgICAgICAgICAgICAgICBpZiAoIXRlc3RS
dW5uZXIuaXNTdGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwpKQot
ICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBp
bnRlcmFjdGlvbiBjcmVkaXQuIik7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAg
ICAgICAgICB0ZXN0UGFzc2VkKCJPcmlnaW4gd2FzIGdyYW50ZWQgdXNlciBpbnRlcmFjdGlvbi4i
KTsKLQotICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
ICAgICAgICAgIHRlc3RGcmFtZS5zcmMgPSAiYWJvdXQ6YmxhbmsiOwotICAgICAgICAgICAgICAg
ICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgc2V0
RW5hYmxlRmVhdHVyZShmYWxzZSwgZmluaXNoSlNUZXN0KTsKLSAgICAgICAgICAgICAgICAgICAg
fSwgMCk7Ci0gICAgICAgICAgICAgICAgfSwgMCk7CisgICAgICAgICAgICB0ZXN0UnVubmVyLnNl
dFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0cnVlLCBmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFs
ZW50UmVzb3VyY2Uoc3RhdGlzdGljc1VybCkpCisgICAgICAgICAgICAgICAgICAgIHRlc3RGYWls
ZWQoIkhvc3QgZGlkIG5vdCBnZXQgc2V0IGFzIHByZXZhbGVudCByZXNvdXJjZS4iKTsKKworICAg
ICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlv
bihzdGF0aXN0aWNzVXJsLCBmYWxzZSwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAg
IGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0
aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoIkhvc3QgZGlkIG5v
dCBnZXQgY2xlYXJlZCBvZiB1c2VyIGludGVyYWN0aW9uLiIpOworCisgICAgICAgICAgICAgICAg
ICAgIHRlc3RJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0SW5wdXQiKTsKKwor
ICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkTW9kaWZ5
RGF0YVJlY29yZHNDYWxsYmFjayhmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygidGVzdElucHV0LnZhbHVlIiwgImEiKTsKKworICAgICAg
ICAgICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJ
bnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0RmFpbGVkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFjdGlvbiBjcmVkaXQuIik7
CisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdFBhc3NlZCgiT3JpZ2luIHdhcyBncmFudGVkIHVzZXIgaW50ZXJhY3Rpb24uIik7CisK
KyAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJhYm91dDpibGFuayI7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZShmYWxzZSwgZmluaXNoSlNU
ZXN0KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAg
ICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQ2xhc3NpZnlSZXNvdXJjZXNCZWZv
cmVEYXRhUmVjb3Jkc1JlbW92YWwoZmFsc2UpOworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwoMCk7
CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nlc3NTdGF0aXN0
aWNzQW5kRGF0YVJlY29yZHMoKTsKKworICAgICAgICAgICAgICAgICAgICBkZWJ1ZygiU2ltdWxh
dGUgdXNlciB0eXBpbmcgbGV0dGVyICdhJyBpbnRvIHRoZSBmaWVsZC4iKTsKKyAgICAgICAgICAg
ICAgICAgICAgdGVzdElucHV0LmZvY3VzKCk7CisgICAgICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cuZXZlbnRTZW5kZXIpCisgICAgICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5rZXlE
b3duKCJhIik7CisgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAg
ICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVmb3Jl
RGF0YVJlY29yZHNSZW1vdmFsKGZhbHNlKTsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3Rh
dGlzdGljc01pbmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbCgwKTsKLSAgICAgICAg
ICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nlc3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMo
KTsKLQotICAgICAgICAgICAgZGVidWcoIlNpbXVsYXRlIHVzZXIgdHlwaW5nIGxldHRlciAnYScg
aW50byB0aGUgZmllbGQuIik7Ci0gICAgICAgICAgICB0ZXN0SW5wdXQuZm9jdXMoKTsKLSAgICAg
ICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpCi0gICAgICAgICAgICAgICAgZXZlbnRTZW5k
ZXIua2V5RG93bigiYSIpOwogICAgICAgICB9KTsKLSAgICB9KTsKKyAgICB9CiB9CiA8L3Njcmlw
dD4KIDxpZnJhbWUgaWQ9InRlc3RGcmFtZSIgc3JjPSJyZXNvdXJjZXMvb25jbGljay5odG1sIj48
L2lmcmFtZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291
cmNlLWhhbmRsZWQta2V5ZG93bi5odG1sCmluZGV4IGE4ODAxNWExYWRlNzkxMzUyZWJiN2E1YzA1
NDhjMzI4YmY2NGIxZjQuLjg4OGJlZjFjZDczNDUxZjYwZDM0YzlkOTU3MjE5NWEzMWJlNDZmZTIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy9wcmV2YWxlbnQtcmVzb3VyY2UtaGFuZGxlZC1rZXlkb3duLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS1o
YW5kbGVkLWtleWRvd24uaHRtbApAQCAtMTQsNDUgKzE0LDQzIEBAIG9ubG9hZCA9IGZ1bmN0aW9u
KCkgewogCiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsK
ICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
IHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNj
YW5uZWQodHJ1ZSk7Ci0gICAgICAgIH0pOwotICAgIH0KLQotICAgIHRlc3RSdW5uZXIuc2V0U3Rh
dGlzdGljc1ByZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwsIHRydWUsIGZ1bmN0aW9uKCkg
ewotICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uo
c3RhdGlzdGljc1VybCkpCi0gICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0
IHNldCBhcyBwcmV2YWxlbnQgcmVzb3VyY2UuIik7Ci0KLSAgICAgICAgdGVzdFJ1bm5lci5zZXRT
dGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwsIGZhbHNlLCBmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVz
ZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAgICB0ZXN0RmFpbGVk
KCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKLQotICAg
ICAgICAgICAgdGVzdElucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RJbnB1dCIp
OwotCi0gICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkTW9kaWZ5RGF0
YVJlY29yZHNDYWxsYmFjayhmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInRlc3RJbnB1dC52YWx1ZSIsICJhIik7Ci0KLSAgICAgICAgICAgICAgICBp
ZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3Rp
Y3NVcmwpKQotICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJPcmlnaW4gZGlkIG5vdCBn
ZXQgdXNlciBpbnRlcmFjdGlvbiBjcmVkaXQuIik7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCJPcmlnaW4gd2FzIGdyYW50ZWQgdXNlciBpbnRl
cmFjdGlvbi4iKTsKLQotICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIHRlc3RGcmFtZS5zcmMgPSAiYWJvdXQ6YmxhbmsiOwotICAgICAg
ICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgc2V0RW5hYmxlRmVhdHVyZShmYWxzZSwgZmluaXNoSlNUZXN0KTsKLSAgICAgICAgICAg
ICAgICAgICAgfSwgMCk7Ci0gICAgICAgICAgICAgICAgfSwgMCk7CisgICAgICAgICAgICB0ZXN0
UnVubmVyLnNldFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0aWNzVXJsLCB0cnVl
LCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0
aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGljc1VybCkpCisgICAgICAgICAgICAgICAgICAg
IHRlc3RGYWlsZWQoIkhvc3QgZGlkIG5vdCBnZXQgc2V0IGFzIHByZXZhbGVudCByZXNvdXJjZS4i
KTsKKworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc0hhc0hhZFVzZXJJ
bnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsLCBmYWxzZSwgZnVuY3Rpb24oKSB7CisgICAgICAgICAg
ICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlv
bihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoIkhv
c3QgZGlkIG5vdCBnZXQgY2xlYXJlZCBvZiB1c2VyIGludGVyYWN0aW9uLiIpOworCisgICAgICAg
ICAgICAgICAgICAgIHRlc3RJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0SW5w
dXQiKTsKKworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNz
RGlkTW9kaWZ5RGF0YVJlY29yZHNDYWxsYmFjayhmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygidGVzdElucHV0LnZhbHVlIiwgImEiKTsK
KworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hh
c0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFjdGlvbiBj
cmVkaXQuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGVzdFBhc3NlZCgiT3JpZ2luIHdhcyBncmFudGVkIHVzZXIgaW50ZXJhY3Rp
b24uIik7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJhYm91dDpibGFu
ayI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZShmYWxzZSwg
ZmluaXNoSlNUZXN0KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQ2xhc3NpZnlSZXNv
dXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoZmFsc2UpOworICAgICAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1Jl
bW92YWwoMCk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nl
c3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKKworICAgICAgICAgICAgICAgICAgICBkZWJ1
ZygiU2ltdWxhdGUgdXNlciB0eXBpbmcgbGV0dGVyICdhJyBpbnRvIHRoZSBmaWVsZC4iKTsKKyAg
ICAgICAgICAgICAgICAgICAgdGVzdElucHV0LmZvY3VzKCk7CisgICAgICAgICAgICAgICAgICAg
IGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpCisgICAgICAgICAgICAgICAgICAgICAgICBldmVudFNl
bmRlci5rZXlEb3duKCJhIik7CisgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsK
LSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1Nob3VsZENsYXNzaWZ5UmVzb3Vy
Y2VzQmVmb3JlRGF0YVJlY29yZHNSZW1vdmFsKGZhbHNlKTsKLSAgICAgICAgICAgIHRlc3RSdW5u
ZXIuc2V0U3RhdGlzdGljc01pbmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbCgwKTsK
LSAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Byb2Nlc3NTdGF0aXN0aWNzQW5kRGF0
YVJlY29yZHMoKTsKLQotICAgICAgICAgICAgZGVidWcoIlNpbXVsYXRlIHVzZXIgdHlwaW5nIGxl
dHRlciAnYScgaW50byB0aGUgZmllbGQuIik7Ci0gICAgICAgICAgICB0ZXN0SW5wdXQuZm9jdXMo
KTsKLSAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpCi0gICAgICAgICAgICAgICAg
ZXZlbnRTZW5kZXIua2V5RG93bigiYSIpOwogICAgICAgICB9KTsKLSAgICB9KTsKKyAgICB9CiB9
CiA8L3NjcmlwdD4KIDxpZnJhbWUgaWQ9InRlc3RGcmFtZSIgc3JjPSJyZXNvdXJjZXMvb25jbGlj
ay5odG1sIj48L2lmcmFtZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtdW5oYW5kbGVkLWtleWRvd24t
ZGF0YWJhc2UuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtdW5oYW5kbGVkLWtleWRvd24tZGF0YWJhc2UuaHRtbApp
bmRleCA0OTEzYTNkNjNkYjM1OWY2NmJhYjdmOTcxNjNhZTdiYjQ2NTAxOTZmLi5lNTNmMGI4Nzc1
NTczZWFkNGY0MDdkZGU5MzNmZWQyZDA1ZDJhMTAyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFu
ZGxlZC1rZXlkb3duLWRhdGFiYXNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS11bmhhbmRsZWQta2V5ZG93
bi1kYXRhYmFzZS5odG1sCkBAIC0xNSwzOSArMTUsMzggQEAgb25sb2FkID0gZnVuY3Rpb24oKSB7
CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKICAgICAgICAgc2V0RW5hYmxl
RmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3Rh
dGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CisgICAg
ICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NQcmV2YWxlbnRSZXNvdXJjZShzdGF0aXN0
aWNzVXJsLCB0cnVlLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5u
ZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGljc1VybCkpCisgICAgICAg
ICAgICAgICAgICAgIHRlc3RGYWlsZWQoIkhvc3QgZGlkIG5vdCBnZXQgc2V0IGFzIHByZXZhbGVu
dCByZXNvdXJjZS4iKTsKKworICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGlj
c0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsLCBmYWxzZSwgZnVuY3Rpb24oKSB7
CisgICAgICAgICAgICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVz
ZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RGYWlsZWQoIkhvc3QgZGlkIG5vdCBnZXQgY2xlYXJlZCBvZiB1c2VyIGludGVyYWN0aW9uLiIp
OworCisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRN
b2RpZnlEYXRhUmVjb3Jkc0NhbGxiYWNrKGZ1bmN0aW9uKCkgeworCisgICAgICAgICAgICAgICAg
ICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzSGFzSGFkVXNlckludGVyYWN0aW9u
KHN0YXRpc3RpY3NVcmwpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQo
Ik9yaWdpbiBkaWQgbm90IGdldCB1c2VyIGludGVyYWN0aW9uIGNyZWRpdC4iKTsKKworICAgICAg
ICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0RnJhbWUuc3JjID0gImFib3V0OmJsYW5rIjsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZXRFbmFibGVGZWF0dXJlKGZhbHNlLCBmaW5pc2hKU1Rlc3QpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgICAgICAgICAg
ICAgfSwgMCk7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NTaG91bGRDbGFzc2lmeVJlc291cmNlc0JlZm9yZURhdGFS
ZWNvcmRzUmVtb3ZhbChmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0
U3RhdGlzdGljc01pbmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbCgwKTsKKyAgICAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zdGF0aXN0aWNzUHJvY2Vzc1N0YXRpc3RpY3NBbmRE
YXRhUmVjb3JkcygpOworCisgICAgICAgICAgICAgICAgICAgIGRlYnVnKCJTaW11bGF0ZSBhbiB1
bmhhbmRsZWQgdXNlciBrZXkgcHJlc3MuIik7CisgICAgICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cuZXZlbnRTZW5kZXIpCisgICAgICAgICAgICAgICAgICAgICAgICBldmVudFNlbmRlci5rZXlE
b3duKCJhIiwgWyJtZXRhS2V5Il0pOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
fSk7CiAgICAgICAgIH0pOwogICAgIH0KIAotICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1By
ZXZhbGVudFJlc291cmNlKHN0YXRpc3RpY3NVcmwsIHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAg
ICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGlj
c1VybCkpCi0gICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IHNldCBhcyBw
cmV2YWxlbnQgcmVzb3VyY2UuIik7Ci0KLSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNz
SGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwsIGZhbHNlLCBmdW5jdGlvbigpIHsK
LSAgICAgICAgICAgIGlmICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFj
dGlvbihzdGF0aXN0aWNzVXJsKSkKLSAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRp
ZCBub3QgZ2V0IGNsZWFyZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKLQotICAgICAgICAgICAg
dGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2so
ZnVuY3Rpb24oKSB7Ci0KLSAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0
aWNzSGFzSGFkVXNlckludGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwpKQotICAgICAgICAgICAgICAg
ICAgICB0ZXN0UGFzc2VkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFjdGlvbiBjcmVk
aXQuIik7Ci0KLSAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAg
ICAgICAgICAgICAgICB0ZXN0RnJhbWUuc3JjID0gImFib3V0OmJsYW5rIjsKLSAgICAgICAgICAg
ICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
IHNldEVuYWJsZUZlYXR1cmUoZmFsc2UsIGZpbmlzaEpTVGVzdCk7Ci0gICAgICAgICAgICAgICAg
ICAgIH0sIDApOwotICAgICAgICAgICAgICAgIH0sIDApOwotICAgICAgICAgICAgfSk7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NTaG91bGRDbGFzc2lmeVJlc291cmNlc0Jl
Zm9yZURhdGFSZWNvcmRzUmVtb3ZhbChmYWxzZSk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNl
dFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwoMCk7Ci0gICAg
ICAgICAgICB0ZXN0UnVubmVyLnN0YXRpc3RpY3NQcm9jZXNzU3RhdGlzdGljc0FuZERhdGFSZWNv
cmRzKCk7Ci0KLSAgICAgICAgICAgIGRlYnVnKCJTaW11bGF0ZSBhbiB1bmhhbmRsZWQgdXNlciBr
ZXkgcHJlc3MuIik7Ci0gICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQotICAgICAg
ICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImEiLCBbIm1ldGFLZXkiXSk7Ci0gICAgICAg
IH0pOwotICAgIH0pOwogfQogPC9zY3JpcHQ+CiA8aWZyYW1lIGlkPSJ0ZXN0RnJhbWUiIHNyYz0i
cmVzb3VyY2VzL29uY2xpY2suaHRtbCI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVu
aGFuZGxlZC1rZXlkb3duLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXVuaGFuZGxlZC1rZXlkb3duLmh0bWwKaW5k
ZXggOGMwZjEwMjAyZDkzNmVkYmVkZGQzZmY0YWRmZjU2MDE1YTg2NTViMC4uZTVkNzQzYzNlMGEx
MmEyYmRkOTE2ZWRhYmM0OTY0ZDBmZmNkNzkyZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS11bmhhbmRs
ZWQta2V5ZG93bi5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2UtdW5oYW5kbGVkLWtleWRvd24uaHRtbApAQCAt
MTQsMzkgKzE0LDM3IEBAIG9ubG9hZCA9IGZ1bmN0aW9uKCkgewogCiAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgc2V0RW5hYmxlRmVhdHVy
ZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGlj
c05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7Ci0gICAgICAgIH0p
OwotICAgIH0KLQotICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNl
KHN0YXRpc3RpY3NVcmwsIHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICBpZiAoIXRlc3RSdW5u
ZXIuaXNTdGF0aXN0aWNzUHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGljc1VybCkpCi0gICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IHNldCBhcyBwcmV2YWxlbnQgcmVzb3Vy
Y2UuIik7Ci0KLSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzSGFzSGFkVXNlckludGVy
YWN0aW9uKHN0YXRpc3RpY3NVcmwsIGZhbHNlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIGlm
ICh0ZXN0UnVubmVyLmlzU3RhdGlzdGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNz
VXJsKSkKLSAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFy
ZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKLQotICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0
YWxsU3RhdGlzdGljc0RpZE1vZGlmeURhdGFSZWNvcmRzQ2FsbGJhY2soZnVuY3Rpb24oKSB7Ci0K
LSAgICAgICAgICAgICAgICBpZiAoIXRlc3RSdW5uZXIuaXNTdGF0aXN0aWNzSGFzSGFkVXNlcklu
dGVyYWN0aW9uKHN0YXRpc3RpY3NVcmwpKQotICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2Vk
KCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFjdGlvbiBjcmVkaXQuIik7Ci0KLSAgICAg
ICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICB0
ZXN0RnJhbWUuc3JjID0gImFib3V0OmJsYW5rIjsKLSAgICAgICAgICAgICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1
cmUoZmFsc2UsIGZpbmlzaEpTVGVzdCk7Ci0gICAgICAgICAgICAgICAgICAgIH0sIDApOwotICAg
ICAgICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNz
UHJldmFsZW50UmVzb3VyY2Uoc3RhdGlzdGljc1VybCwgdHJ1ZSwgZnVuY3Rpb24oKSB7CisgICAg
ICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlzdGljc1ByZXZhbGVudFJlc291cmNl
KHN0YXRpc3RpY3NVcmwpKQorICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRp
ZCBub3QgZ2V0IHNldCBhcyBwcmV2YWxlbnQgcmVzb3VyY2UuIik7CisKKyAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGlj
c1VybCwgZmFsc2UsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgICAgICBpZiAodGVzdFJ1
bm5lci5pc1N0YXRpc3RpY3NIYXNIYWRVc2VySW50ZXJhY3Rpb24oc3RhdGlzdGljc1VybCkpCisg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJIb3N0IGRpZCBub3QgZ2V0IGNsZWFy
ZWQgb2YgdXNlciBpbnRlcmFjdGlvbi4iKTsKKworICAgICAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkTW9kaWZ5RGF0YVJlY29yZHNDYWxsYmFjayhmdW5jdGlv
bigpIHsKKworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0ZXN0UnVubmVyLmlzU3RhdGlz
dGljc0hhc0hhZFVzZXJJbnRlcmFjdGlvbihzdGF0aXN0aWNzVXJsKSkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCJPcmlnaW4gZGlkIG5vdCBnZXQgdXNlciBpbnRlcmFj
dGlvbiBjcmVkaXQuIik7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVu
Y3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZyYW1lLnNyYyA9ICJh
Ym91dDpibGFuayI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVy
ZShmYWxzZSwgZmluaXNoSlNUZXN0KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAw
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0sIDApOworICAgICAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzU2hvdWxkQ2xh
c3NpZnlSZXNvdXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwoZmFsc2UpOworICAgICAgICAg
ICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRh
UmVjb3Jkc1JlbW92YWwoMCk7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlz
dGljc1Byb2Nlc3NTdGF0aXN0aWNzQW5kRGF0YVJlY29yZHMoKTsKKworICAgICAgICAgICAgICAg
ICAgICBkZWJ1ZygiU2ltdWxhdGUgYW4gdW5oYW5kbGVkIHVzZXIga2V5IHByZXNzLiIpOworICAg
ICAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50U2VuZGVyKQorICAgICAgICAgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigiYSIsIFsibWV0YUtleSJdKTsKKyAgICAgICAg
ICAgICAgICB9KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRT
dGF0aXN0aWNzU2hvdWxkQ2xhc3NpZnlSZXNvdXJjZXNCZWZvcmVEYXRhUmVjb3Jkc1JlbW92YWwo
ZmFsc2UpOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTWluaW11bVRpbWVC
ZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsKDApOwotICAgICAgICAgICAgdGVzdFJ1bm5lci5zdGF0
aXN0aWNzUHJvY2Vzc1N0YXRpc3RpY3NBbmREYXRhUmVjb3JkcygpOwotCi0gICAgICAgICAgICBk
ZWJ1ZygiU2ltdWxhdGUgYW4gdW5oYW5kbGVkIHVzZXIga2V5IHByZXNzLiIpOwotICAgICAgICAg
ICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikKLSAgICAgICAgICAgICAgICBldmVudFNlbmRlci5r
ZXlEb3duKCJhIiwgWyJtZXRhS2V5Il0pOwogICAgICAgICB9KTsKLSAgICB9KTsKKyAgICB9CiB9
CiA8L3NjcmlwdD4KIDxpZnJhbWUgaWQ9InRlc3RGcmFtZSIgc3JjPSJyZXNvdXJjZXMvb25jbGlj
ay5odG1sIj48L2lmcmFtZT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0
aW9uLWRhdGFiYXNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFz
ZS5odG1sCmluZGV4IDBkMjI4ZjMxNDllMWI4NmI1ZWMzZGI5NTQzYWY2NzE5MmE4OTAwMWEuLmVj
MTNhNTAyNzRjNmRkOTRiZmU4YTE2NDU5YzRjYmFiOGE5MGU5MGMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3Vy
Y2Utd2l0aC11c2VyLWludGVyYWN0aW9uLWRhdGFiYXNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRo
LXVzZXItaW50ZXJhY3Rpb24tZGF0YWJhc2UuaHRtbApAQCAtNTcsNyArNTcsNiBAQAogICAgICAg
ICBpZiAoZG9jdW1lbnQubG9jYXRpb24uaG9zdCA9PT0gaG9zdFVuZGVyVGVzdCAmJiB3aW5kb3cu
dGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgICAgICB0ZXN0UnVubmVy
LnNldFVzZUlUUERhdGFiYXNlKHRydWUpOwogICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0
cnVlLCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0
aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAg
ICAgICAgICBydW5UZXN0UnVubmVyVGVzdCgpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0g
ZWxzZSB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi10aW1lb3V0
LWRhdGFiYXNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi10aW1lb3V0LWRh
dGFiYXNlLmh0bWwKaW5kZXggMTI2ODIwMTkwMTA2NDM1NzY2NjZiZTA3YTdkMmFkOWQ3MWI5MDg0
MS4uYzFjNDc3NzhiYjY1YWQxNGE2YWU1Mjc0MDA2YjMxNjY2MmM4ZjNjOCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1y
ZXNvdXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24tdGltZW91dC1kYXRhYmFzZS5odG1sCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQt
cmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9uLXRpbWVvdXQtZGF0YWJhc2UuaHRtbApAQCAt
NDksNyArNDksNiBAQAogICAgIGlmIChkb2N1bWVudC5sb2NhdGlvbi5ob3N0ID09PSBob3N0VW5k
ZXJUZXN0ICYmIHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKICAgICAgICAgdGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7Ci0gICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlm
eVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgIHNldEVuYWJs
ZUZlYXR1cmUodHJ1ZSwgcnVuVGVzdFJ1bm5lclRlc3QpOwogICAgIH0KIDwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3By
ZXZhbGVudC1yZXNvdXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24tdGltZW91dC5odG1sIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNv
dXJjZS13aXRoLXVzZXItaW50ZXJhY3Rpb24tdGltZW91dC5odG1sCmluZGV4IDM4OWE1NmQ4Yjlk
ZmJiYTI4YTdlMzk0MTVjYjE1ZTg2ZDY4ODY1MzAuLmIxNDI3ZTA0MDFmNzQ3ZWVkNWVhOTliYmNm
MjkxNjY0ZTQ5ZWVjMjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aC11c2VyLWludGVyYWN0aW9u
LXRpbWVvdXQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0
YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi10aW1lb3V0
Lmh0bWwKQEAgLTQ4LDcgKzQ4LDYgQEAKICAgICBpZiAoZG9jdW1lbnQubG9jYXRpb24uaG9zdCA9
PT0gaG9zdFVuZGVyVGVzdCAmJiB3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxz
KSB7CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICBzZXRFbmFi
bGVGZWF0dXJlKHRydWUsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRT
dGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAg
ICAgICAgICAgIHJ1blRlc3RSdW5uZXJUZXN0KCk7CiAgICAgICAgICB9KTsKICAgICB9CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJl
dmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRo
LXVzZXItaW50ZXJhY3Rpb24uaHRtbAppbmRleCBmZjYyZjFhNWJjODdhYjViYTBjMTM2OWU1MzE4
ZjM1MzYyNDg4YzQ2Li44YWU2MzNiZmNmNWQyOTZjYjZkOTA3YWU3OGVhMzIzMWYzODNjYjdiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
cHJldmFsZW50LXJlc291cmNlLXdpdGgtdXNlci1pbnRlcmFjdGlvbi5odG1sCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3Vy
Y2Utd2l0aC11c2VyLWludGVyYWN0aW9uLmh0bWwKQEAgLTU2LDcgKzU2LDYgQEAKICAgICBmdW5j
dGlvbiBzZXRVcEFuZFJ1bigpIHsKICAgICAgICAgaWYgKGRvY3VtZW50LmxvY2F0aW9uLmhvc3Qg
PT09IGhvc3RVbmRlclRlc3QgJiYgd2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93LmludGVybmFs
cykgewogICAgICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbiAoKSB7Ci0g
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0
YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgICAgICBydW5UZXN0UnVubmVy
VGVzdCgpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJl
c291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi1kYXRhYmFzZS5odG1sIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13
aXRob3V0LXVzZXItaW50ZXJhY3Rpb24tZGF0YWJhc2UuaHRtbAppbmRleCA5YWJkYjZkMWRhMWNl
NTc4NTA5NGQyNDNhNzI4NDRhNDYzMmYyNWVlLi4wYTllYTEzOTEzN2RhOTg0ZTkxOTZhZGYwYTdm
NGY2ZWEwZWU5ZTIzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNl
TG9hZFN0YXRpc3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlv
bi1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy9wcmV2YWxlbnQtcmVzb3VyY2Utd2l0aG91dC11c2VyLWludGVyYWN0aW9uLWRh
dGFiYXNlLmh0bWwKQEAgLTUxLDcgKzUxLDYgQEAKICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7CiAgICAgICAgIHRlc3RSdW5uZXIuc2V0VXNlSVRQRGF0YWJhc2UodHJ1ZSk7CiAg
ICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB0
ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2Fu
bmVkKHRydWUpOwogICAgICAgICAgICAgcnVuVGVzdFJ1bm5lclRlc3QoKTsKICAgICAgICAgfSk7
CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRob3V0LXVzZXItaW50ZXJhY3Rpb24uaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9wcmV2YWxl
bnQtcmVzb3VyY2Utd2l0aG91dC11c2VyLWludGVyYWN0aW9uLmh0bWwKaW5kZXggNmRmNjAwOTgy
N2ZkMjU4ZDc4MmM0MjkxYTIyODM3NTYwMzYxOTcwMi4uM2M5YmI0M2QwOTdkNGI3NGE3ZDlmMWJi
YmQ3YTE2ZjkwYjhjNTA4NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNv
dXJjZUxvYWRTdGF0aXN0aWNzL3ByZXZhbGVudC1yZXNvdXJjZS13aXRob3V0LXVzZXItaW50ZXJh
Y3Rpb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRp
c3RpY3MvcHJldmFsZW50LXJlc291cmNlLXdpdGhvdXQtdXNlci1pbnRlcmFjdGlvbi5odG1sCkBA
IC01MSw3ICs1MSw2IEBACiAgICAgaWYgKGRvY3VtZW50LmxvY2F0aW9uLmhvc3QgPT09IGhvc3RV
bmRlclRlc3QgJiYgd2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93LmludGVybmFscykgewogICAg
ICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAgICAgICAgc2V0RW5hYmxlRmVhdHVy
ZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGlj
c05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAg
ICBydW5UZXN0UnVubmVyVGVzdCgpOwogICAgICAgICB9KTsKICAgICB9CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVtb3ZlLXdlYnNp
dGUtZGF0YS1mb3Itb3JpZ2luLWRlbGV0ZXMtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLWRhdGFi
YXNlLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
cmVtb3ZlLXdlYnNpdGUtZGF0YS1mb3Itb3JpZ2luLWRlbGV0ZXMtdGhpcmQtcGFydHktc2NyaXB0
LWxvYWRzLWRhdGFiYXNlLmh0bWwKaW5kZXggZGE5ZDE0Y2JmMzZlM2UzNDAyNjU0NmM3NGRjOTA1
NDA4ZGQxYjRlOC4uNzg0N2UxMGRjZGVhMTIyNWEyMjVkZDU4MjkyZjI4ZTgyMmZlNjM2OCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3Jl
bW92ZS13ZWJzaXRlLWRhdGEtZm9yLW9yaWdpbi1kZWxldGVzLXRoaXJkLXBhcnR5LXNjcmlwdC1s
b2Fkcy1kYXRhYmFzZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VM
b2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vic2l0ZS1kYXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGly
ZC1wYXJ0eS1zY3JpcHQtbG9hZHMtZGF0YWJhc2UuaHRtbApAQCAtMzMsNyArMzMsNiBAQAogICAg
ICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5zZXRVc2VJVFBEYXRhYmFzZSh0cnVlKTsKICAgICAgICAgICAg
ICAgICAgICAgc2V0RW5hYmxlRmVhdHVyZSh0cnVlLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RSdW5uZXIuc2V0U3RhdGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFS
ZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soZmluaXNoVGVz
dCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5sb2NhdGlvbi5oYXNoID0gInN0
ZXAxIjsKICAgICAgICAgICAgICAgICAgICAgICAgIHJ1blRlc3QoKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vic2l0
ZS1kYXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZW1vdmUtd2Vi
c2l0ZS1kYXRhLWZvci1vcmlnaW4tZGVsZXRlcy10aGlyZC1wYXJ0eS1zY3JpcHQtbG9hZHMuaHRt
bAppbmRleCBjMzNlOThkNzVlYTEwY2ViMDRjNzQ2NTdkYTQwZTgwZGU3ODMwMmQ3Li41MTgwYjg2
OTBjNTBjNTkwN2JkMTQzMTNmMTg4Y2VhMjcxZTZlNjJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVtb3ZlLXdlYnNpdGUtZGF0YS1m
b3Itb3JpZ2luLWRlbGV0ZXMtdGhpcmQtcGFydHktc2NyaXB0LWxvYWRzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS13ZWJzaXRl
LWRhdGEtZm9yLW9yaWdpbi1kZWxldGVzLXRoaXJkLXBhcnR5LXNjcmlwdC1sb2Fkcy5odG1sCkBA
IC0yNiw3ICsyNiw2IEBACiAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYm
IHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7CiAgICAgICAgICAgICAgICAgICAgIHNldEVuYWJsZUZlYXR1cmUodHJ1ZSwg
ZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRp
c3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKHRydWUpOwogICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRh
UmVjb3Jkc0NhbGxiYWNrKGZpbmlzaFRlc3QpOwogICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQubG9jYXRpb24uaGFzaCA9ICJzdGVwMSI7CiAgICAgICAgICAgICAgICAgICAgICAgICBy
dW5UZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwuanMgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Jl
c291cmNlTG9hZFN0YXRpc3RpY3MvcmVzb3VyY2VzL3V0aWwuanMKaW5kZXggZWZlNzk4MmNmZTdk
YTVjOWY1YmZhNjUyN2YwMzk3YWU2MjMyMGZkYS4uOTZiZmY1YWVhODM1Zjc3NDRkNzIzM2Q1NTAz
NjhmNGNjMTliZTVkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzL3Jlc291cmNlcy91dGlsLmpzCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvcmVzb3VyY2VMb2FkU3RhdGlzdGljcy9yZXNvdXJjZXMvdXRpbC5qcwpAQCAtOSw3ICs5
LDYgQEAgZnVuY3Rpb24gc2V0RW5hYmxlRmVhdHVyZShlbmFibGUsIGNvbXBsZXRpb25IYW5kbGVy
KSB7CiAgICAgICAgIHRlc3RSdW5uZXIuc3RhdGlzdGljc1Jlc2V0VG9Db25zaXN0ZW50U3RhdGUo
ZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NJc1J1bm5p
bmdUZXN0KGZhbHNlKTsKICAgICAgICAgICAgIGludGVybmFscy5zZXRSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRW5hYmxlZChmYWxzZSk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLnNldFN0YXRpc3Rp
Y3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVTY2FubmVkKGZhbHNlKTsKICAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9jYW52YXMtcmVhZC1hbmQt
d3JpdGUtZGF0YS1jb2xsZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQ
SVN0YXRpc3RpY3MvY2FudmFzLXJlYWQtYW5kLXdyaXRlLWRhdGEtY29sbGVjdGlvbi5odG1sCmlu
ZGV4IDFiNmIzOTc0ZmE4YTI3NjExY2U5NjhjMTZmYzdjYzk1NmVhMmQzMjYuLmE3NjhkODcyZTNl
YWJlMGM2YmU0NTliNDIzNGQzNzMwYzQ4ZjBjYjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9jYW52YXMtcmVhZC1hbmQtd3JpdGUtZGF0YS1jb2xs
ZWN0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNz
L2NhbnZhcy1yZWFkLWFuZC13cml0ZS1kYXRhLWNvbGxlY3Rpb24uaHRtbApAQCAtMTksOCArMTks
NiBAQAogICAgIH0KIAogICAgIGZ1bmN0aW9uIHJ1blRlc3RSdW5uZXJUZXN0KCkgewotICAgICAg
ICB0ZXN0UnVubmVyLnNldFN0YXRpc3RpY3NOb3RpZnlQYWdlc1doZW5EYXRhUmVjb3Jkc1dlcmVT
Y2FubmVkKHRydWUpOwotCiAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NEaWRT
Y2FuRGF0YVJlY29yZHNDYWxsYmFjayhjb21wbGV0ZVRlc3QpOwogICAgIAogICAgICAgICB2YXIg
Y2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3MvZm9udC1sb2FkLWRhdGEtY29s
bGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL2Zv
bnQtbG9hZC1kYXRhLWNvbGxlY3Rpb24uaHRtbAppbmRleCBhMWRiM2UyYzczZjAxMWQxMjVjMGJl
MDNiNjI0NzljZWRlM2U1NzhmLi4zMWViMjQ4MTExNTFlZTdhMDQwYmE3ZWJjNTU0YzlmZWY5YmRi
OGY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRpc3RpY3Mv
Zm9udC1sb2FkLWRhdGEtY29sbGVjdGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvd2ViQVBJU3RhdGlzdGljcy9mb250LWxvYWQtZGF0YS1jb2xsZWN0aW9uLmh0bWwKQEAgLTE5
LDggKzE5LDYgQEAKICAgICB9CiAKICAgICBmdW5jdGlvbiBydW5UZXN0UnVubmVyVGVzdCgpIHsK
LSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29y
ZHNXZXJlU2Nhbm5lZCh0cnVlKTsKLQogICAgICAgICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0
aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2soY29tcGxldGVUZXN0KTsKIAogICAgICAgICB2
YXIgYm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9uYXZpZ2F0b3It
ZnVuY3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL25hdmlnYXRvci1mdW5jdGlvbnMtYWNjZXNzZWQtZGF0
YS1jb2xsZWN0aW9uLmh0bWwKaW5kZXggOGFhYmMzMjJjYTkzM2I2ZTZjNjE3NzhmZjM4Y2VhZmI0
ZGVkYjI3OC4uOGI1M2JhMTM3NDIwMjRiNjUzNjAxYTViMjg4MWY5ZTRjNGM3OTE5NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL25hdmlnYXRvci1m
dW5jdGlvbnMtYWNjZXNzZWQtZGF0YS1jb2xsZWN0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93ZWJBUElTdGF0aXN0aWNzL25hdmlnYXRvci1mdW5jdGlvbnMtYWNjZXNzZWQt
ZGF0YS1jb2xsZWN0aW9uLmh0bWwKQEAgLTE5LDggKzE5LDYgQEAKICAgICB9CiAKICAgICBmdW5j
dGlvbiBydW5UZXN0UnVubmVyVGVzdCgpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0
aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh0cnVlKTsKLQogICAgICAg
ICB0ZXN0UnVubmVyLmluc3RhbGxTdGF0aXN0aWNzRGlkU2NhbkRhdGFSZWNvcmRzQ2FsbGJhY2so
Y29tcGxldGVUZXN0KTsKICAgICAKICAgICAgICAgdmFyIHVzZXJhZ2VudCA9IG5hdmlnYXRvci51
c2VyQWdlbnQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYkFQSVN0YXRp
c3RpY3Mvc2NyZWVuLWZ1bmN0aW9ucy1hY2Nlc3NlZC1kYXRhLWNvbGxlY3Rpb24uaHRtbCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9zY3JlZW4tZnVuY3Rpb25zLWFj
Y2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCmluZGV4IDhkNTUzNzk1MDcwYjBkZDJlMTRlYjIx
YTM4MjUyYzEzNWQyNGU0NTYuLjM3NjgzNGQzMDMyOTg2NTQ2NGU5YzMzZjBjYmQxZmMyYTFmODUy
ODggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9z
Y3JlZW4tZnVuY3Rpb25zLWFjY2Vzc2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvd2ViQVBJU3RhdGlzdGljcy9zY3JlZW4tZnVuY3Rpb25zLWFjY2Vz
c2VkLWRhdGEtY29sbGVjdGlvbi5odG1sCkBAIC0xOSw4ICsxOSw2IEBACiAgICAgfQogCiAgICAg
ZnVuY3Rpb24gcnVuVGVzdFJ1bm5lclRlc3QoKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuc2V0U3Rh
dGlzdGljc05vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQodHJ1ZSk7Ci0KICAg
ICAgICAgdGVzdFJ1bm5lci5pbnN0YWxsU3RhdGlzdGljc0RpZFNjYW5EYXRhUmVjb3Jkc0NhbGxi
YWNrKGNvbXBsZXRlVGVzdCk7CiAgICAgCiAgICAgICAgIHZhciBhdmFpbFRvcCA9IHNjcmVlbi5h
dmFpbFRvcDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L2Nv
bm5lY3Rpb24tcmVmdXNhbC1pbi1mcmFtZS1yZXNvdXJjZS1sb2FkLXN0YXRpc3RpY3MuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2Vic29ja2V0L2Nvbm5lY3Rpb24tcmVmdXNhbC1pbi1m
cmFtZS1yZXNvdXJjZS1sb2FkLXN0YXRpc3RpY3MuaHRtbAppbmRleCBiMmIwYTkyYzMxMTYzMDI5
YTM1MTc0ZTNkMWU1MGEyMDAzMjlkZDI4Li44YzRjOTc2MWY2ZmRjOTBhYzRiYjA0YmUxMjE0Zjli
Nzk1MWNiMmE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dlYnNvY2tldC9j
b25uZWN0aW9uLXJlZnVzYWwtaW4tZnJhbWUtcmVzb3VyY2UtbG9hZC1zdGF0aXN0aWNzLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93ZWJzb2NrZXQvY29ubmVjdGlvbi1yZWZ1c2Fs
LWluLWZyYW1lLXJlc291cmNlLWxvYWQtc3RhdGlzdGljcy5odG1sCkBAIC0zNyw3ICszNyw2IEBA
CiAgICAgICAgICAgICBpZnJhbWVFbGVtZW50LmlkID0gInRlc3RJZnJhbWUiOwogICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnJhbWVFbGVtZW50KTsKIAotICAgICAgICAg
ICAgdGVzdFJ1bm5lci5zZXRTdGF0aXN0aWNzTm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJl
U2Nhbm5lZCh0cnVlKTsKICAgICAgICAgICAgIHRlc3RSdW5uZXIuaW5zdGFsbFN0YXRpc3RpY3NE
aWRTY2FuRGF0YVJlY29yZHNDYWxsYmFjayhjb21wbGV0ZVRlc3QpOwogICAgICAgICB9KTsKICAg
ICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggODE2MDgyNDQ1OWFiYTlmZDZmMmM2YmQ1Mjg4NDQ0ODgyYzkzMjJmMC4uOTk2OWVlOWIwOTI1
ZDZmY2JjNDU5MGU1NGExZGMyMzVmNmE1OTM3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zLXdrMi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy13azIvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTc2OCw4ICsxNzY4LDYgQEAgd2Via2l0Lm9y
Zy9iLzIxMzUxMSBmYXN0L2JhY2tncm91bmRzL3NpemUvYmFja2dyb3VuZFNpemUtaW4tYmFja2dy
b3VuZC1zaG9ydGhhbmQKIAogd2Via2l0Lm9yZy9iLzIxMzUyMCBwZXJmL2h0bWxjb2xsZWN0aW9u
LWJhY2t3YXJkcy1pdGVyYXRpb24uaHRtbCBbIFBhc3MgRmFpbHVyZSBdCiAKLXdlYmtpdC5vcmcv
Yi8yMTM1NTMgaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL2dyYW5kZmF0aGVyaW5n
LWRhdGFiYXNlLmh0bWwgWyBQYXNzIFRpbWVvdXQgXQotCiB3ZWJraXQub3JnL2IvMjEzNjUgaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9lbWJlZGRlZC1jb250
ZW50L3RoZS12aWRlby1lbGVtZW50L2ludHJpbnNpY19zaXplcy5odG0gWyBQYXNzIEZhaWx1cmUg
XQogCiB3ZWJraXQub3JnL2IvMjE0MDg0IFsgUmVsZWFzZSBdIHdlYnJ0Yy9saWJ3ZWJydGMvZGVz
Y3JpcHRpb25HZXR0ZXJzLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>