<?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>164389</bug_id>
          
          <creation_ts>2016-11-03 16:36:01 -0700</creation_ts>
          <short_desc>Add test infrastructure and tests for existing HTTP 0.9 sandbox machinery</short_desc>
          <delta_ts>2016-11-09 13:20:57 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Local Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>achristensen</cc>
    
    <cc>aestes</cc>
    
    <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1247923</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-03 16:36:01 -0700</bug_when>
    <thetext>As a first step towards improving the HTTP 0.9 security machinery add tests that exercise the current behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1247924</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-11-03 16:36:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/29101072&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1247953</commentid>
    <comment_count>2</comment_count>
      <attachid>293834</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-03 17:25:48 -0700</bug_when>
    <thetext>Created attachment 293834
Patch and layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248012</commentid>
    <comment_count>3</comment_count>
      <attachid>293834</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2016-11-03 20:44:23 -0700</bug_when>
    <thetext>Comment on attachment 293834
Patch and layout tests

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

r=me.

&gt; LayoutTests/http/tests/security/http-0.9/default-port-plugin-blocked-expected.txt:3
&gt; +CONSOLE MESSAGE: Sandboxing &apos;http://127.0.0.1:8000/security/http-0.9/resources/nph-load-plugin-fail.pl&apos; because it is using HTTP/0.9.

It&apos;s interesting that we hit this three times. Is that expected?

&gt; LayoutTests/http/tests/security/http-0.9/default-port-script-blocked-expected.txt:3
&gt; +CONSOLE MESSAGE: Sandboxing &apos;http://127.0.0.1:8000/security/http-0.9/resources/nph-alert-fail.pl&apos; because it is using HTTP/0.9.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248137</commentid>
    <comment_count>4</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-04 09:42:13 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; &gt; LayoutTests/http/tests/security/http-0.9/default-port-plugin-blocked-expected.txt:3
&gt; &gt; +CONSOLE MESSAGE: Sandboxing &apos;http://127.0.0.1:8000/security/http-0.9/resources/nph-load-plugin-fail.pl&apos; because it is using HTTP/0.9.
&gt; 
&gt; It&apos;s interesting that we hit this three times. Is that expected?
&gt; 

This output reflects the current behavior. The expected behavior is that we emit exactly one console warning.

For completeness, the following is a breakdown of the call chain that emits three sandbox messages when we receive an HTTP 0.9 response for a main resource load initiated by an HTTP request to port 80/443 (&quot;a default port&quot;). First SubresourceLoader::didReceiveResponse() is called, which emits one console message by [1]. SubresourceLoader::didReceiveResponse() calls DocumentLoader::responseReceived() at [2] and DocumentLoader::responseReceived() emits one console message by [3]. SubresourceLoader::didReceiveResponse() also calls its base class function, ResourceLoader::didReceiveResponse(), which emits one console message by [4]. Therefore three console messages are emitted.

[1] &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/loader/SubresourceLoader.cpp?rev=208112#L267&gt;
[2] &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/loader/SubresourceLoader.cpp?rev=208112#L299&gt;
[3] &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/loader/DocumentLoader.cpp?rev=207769#L746&gt;
[4] &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/loader/ResourceLoader.cpp?rev=208112#L460&gt;

&gt; &gt; LayoutTests/http/tests/security/http-0.9/default-port-script-blocked-expected.txt:3
&gt; &gt; +CONSOLE MESSAGE: Sandboxing &apos;http://127.0.0.1:8000/security/http-0.9/resources/nph-alert-fail.pl&apos; because it is using HTTP/0.9.
&gt; 
&gt; Ditto.

See my reply above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248319</commentid>
    <comment_count>5</comment_count>
      <attachid>293834</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-11-04 15:21:24 -0700</bug_when>
    <thetext>Comment on attachment 293834
Patch and layout tests

Don&apos;t touch the URL parser for this</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248353</commentid>
    <comment_count>6</comment_count>
      <attachid>293954</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-04 16:19:28 -0700</bug_when>
    <thetext>Created attachment 293954
Patch and layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248388</commentid>
    <comment_count>7</comment_count>
      <attachid>293954</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-04 17:24:14 -0700</bug_when>
    <thetext>Comment on attachment 293954
Patch and layout tests

Will update patch following &lt;https://trac.webkit.org/changeset/208407&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248435</commentid>
    <comment_count>8</comment_count>
      <attachid>293981</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-04 20:49:28 -0700</bug_when>
    <thetext>Created attachment 293981
Patch and layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1248765</commentid>
    <comment_count>9</comment_count>
      <attachid>293981</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-11-07 09:37:01 -0800</bug_when>
    <thetext>Comment on attachment 293981
Patch and layout tests

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

&gt; Source/WebCore/platform/URL.cpp:813
&gt; +    ASSERT(port &gt; 0);

This should be removed and you should use HashMap::find below</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1249456</commentid>
    <comment_count>10</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-11-09 13:20:57 -0800</bug_when>
    <thetext>Committed r208475: &lt;http://trac.webkit.org/changeset/208475&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293834</attachid>
            <date>2016-11-03 17:25:48 -0700</date>
            <delta_ts>2016-11-04 16:19:25 -0700</delta_ts>
            <desc>Patch and layout tests</desc>
            <filename>bug-164389-20161103172147.patch</filename>
            <type>text/plain</type>
            <size>36261</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA4MTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjUwZGNiMjE3OTcxNTU2
ZGRhMGIwNTU3YTQzMWM0YTEwOWI0MDZhOC4uZWMxOTE3ODQ5ZmZhZTEyZDEyY2ZkMDcwODczMTk1
ZTkyMTIyMTRmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDE2LTExLTAzICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgdGVzdCBpbmZyYXN0
cnVjdHVyZSBhbmQgdGVzdHMgZm9yIGV4aXN0aW5nIEhUVFAgMC45IHNhbmRib3ggbWFjaGluZXJ5
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQzODkK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI5MTAxMDcyPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHN1
cHBvcnQgcmVnaXN0ZXJpbmcgYW4gYXJiaXRyYXJ5IHBvcnQgYXMgdGhlIGRlZmF1bHQgcG9ydAor
ICAgICAgICBmb3IgYSBwcm90b2NvbC4gVGhlIGJlaGF2aW9yIG9mIHZhcmlvdXMgbWFjaGluZXJ5
LCBpbmNsdWRpbmcgdGhlIEhUVFAgMC45IG1hY2hpbmVyeSwKKyAgICAgICAgY2FuIGJlIGVmZmVj
dGVkIGJ5IHdoZXRoZXIgdGhlIHJlc291cmNlIHJlcXVlc3Qgd2FzIG1hZGUgdXNpbmcgdGhlIGRl
ZmF1bHQgcG9ydCBmb3IKKyAgICAgICAgdGhlIHByb3RvY29sLiBXZSBleHBvc2Ugd2luZG93Lmlu
dGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woKSB0byBhbGxvdworICAgICAg
ICBhIHRlc3QgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgcG9ydCBhc3NvY2lhdGVkIHdpdGggYSBw
cm90b2NvbCBzbyBhcyB0byBzdXBwb3J0CisgICAgICAgIHRlc3RpbmcgdGhlc2UgY29kZSBwYXRo
cyB1c2luZyB0aGUgZXhpc3RpbmcgcG9ydCA4MDAwIHNlcnZlciBzdGFydGVkIGJ5IHJ1bi13ZWJr
aXQtaHR0cGQuCisgICAgICAgIFdpdGhvdXQgd2luZG93LmludGVybmFscy5yZWdpc3RlckRlZmF1
bHRQb3J0Rm9yUHJvdG9jb2woKSB3ZSB3b3VsZCBuZWVkIHRvIHRlYWNoCisgICAgICAgIHJ1bi13
ZWJraXQtaHR0cGQgdG8gcnVuIGEgd2ViIHNlcnZlciBvbiBwb3J0IDgwLCB3aGljaCByZXF1aXJl
cyBzdXBlcnVzZXIgcHJpdmlsZWdlcworICAgICAgICAoc2luY2UgaXQgaXMgYSBwcml2aWxlZ2Vk
IHBvcnQgbnVtYmVyKSBhbmQgaXMgbW9yZSBsaWtlbHkgdG8gaW50ZXJmZXJlIHdpdGggYW4KKyAg
ICAgICAgZXhpc3Rpbmcgd2ViIHNlcnZlciBzZXR1cC4KKworICAgICAgICBUZXN0czogaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbAor
ICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQt
c2NyaXB0LWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pZnJhbWUtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFn
ZS1hbGxvd2VkLXJlZi10ZXN0Lmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWwKKyAgICAgICAg
ICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMt
YmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkxQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
ZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3RpbmcpOiBBZGRlZC4gUmV0dXJucyBhIG1h
cHBpbmcgb2YgcHJvdG9jb2wgdG8gZGVmYXVsdCBwb3J0LgorICAgICAgICBUaGlzIG1hcHBpbmcg
aXMgZm9yIHRlc3RpbmcgcHVycG9zZXMgb25seS4KKyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVy
RGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcpOiBBZGRzIHRoZSBzcGVjaWZpZWQgKHBy
b3RvY29sLCBwb3J0KSB0byB0aGUKKyAgICAgICAgbWFwcGluZyB1c2VkIGZvciB0ZXN0aW5nLgor
ICAgICAgICAoV2ViQ29yZTo6Y2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGlu
Zyk6IENsZWFyIHRoZSBwcm90b2NvbCB0byBkZWZhdWx0IHBvcnQgdGVzdGluZyBtYXAuCisgICAg
ICAgIFdlIGNhbGwgdGhpcyBmdW5jdGlvbiBmcm9tIEludGVybmFsczo6cmVzZXRUb0NvbnNpc3Rl
bnRTdGF0ZSgpIHNvIHRoYXQgdGhlIG1hcHBpbmcgaXMgY2xlYXJlZCBiZXR3ZWVuCisgICAgICAg
IHRlc3QgcnVucy4KKyAgICAgICAgKFdlYkNvcmU6OmlzRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZv
clRlc3RpbmcpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OmlzRGVmYXVsdFBvcnRGb3JQcm90
b2NvbCk6IFJldHVybiB0cnVlIGlmIHRoZSBzcGVjaWZpZWQgcG9ydCB3YXMgcmVnaXN0ZXJlZCBh
cyB0aGUgZGVmYXVsdAorICAgICAgICBwb3J0IGZvciB0aGUgc3BlY2lmaWVkIHByb3RvY29sIGZv
ciB0ZXN0aW5nIHB1cnBvc2VzLgorICAgICAgICAoV2ViQ29yZTo6VVJMUGFyc2VyOjpwYXJzZVBv
cnQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6cmVzZXRUb0NvbnNpc3RlbnRTdGF0ZSk6IENsZWFyIHRoZSBkZWZhdWx0IHBv
cnQgbWFwcGluZyB1c2VkIGZvciB0ZXN0aW5nLgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxz
OjpyZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2wpOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDogQWRkZWQg
ZGVjbGFyYXRpb24gZm9yIHJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCgpLgorCiAyMDE2
LTEwLTMxICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2
aWV3ZWQgYnVpbGQgZml4IGFmdGVyIHIyMDgxNTE7IF9zZXRQcmV2ZW50c1NsZWVwRHVyaW5nVmlk
ZW9QbGF5YmFjazogb25seSBkZWZpbmVkIGluIG5vbi1zaW11bGF0b3IgU0RLcy4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vVVJMLmgKaW5kZXggNzEwZWE1MTNiOGUyOTViMTFiN2NhOTYzNjhkMmU2OGNkMmMyZDQxOC4u
YjkxYWZjZThjMjU3MmE0NTQyNWRlMDFlODdmNzk1NTMyYTdmZmE3YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
VVJMLmgKQEAgLTMxNSw2ICszMTUsMTAgQEAgT3B0aW9uYWw8dWludDE2X3Q+IGRlZmF1bHRQb3J0
Rm9yUHJvdG9jb2woU3RyaW5nVmlldyBwcm90b2NvbCk7CiBXRUJDT1JFX0VYUE9SVCBib29sIGlz
RGVmYXVsdFBvcnRGb3JQcm90b2NvbCh1aW50MTZfdCBwb3J0LCBTdHJpbmdWaWV3IHByb3RvY29s
KTsKIFdFQkNPUkVfRVhQT1JUIGJvb2wgcG9ydEFsbG93ZWQoY29uc3QgVVJMJik7IC8vIEJsYWNr
bGlzdCBwb3J0cyB0aGF0IHNob3VsZCBuZXZlciBiZSB1c2VkIGZvciBXZWIgcmVzb3VyY2VzLgog
Citib29sIGlzRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcodWludDE2X3QgcG9ydCwg
U3RyaW5nVmlldyBwcm90b2NvbCk7CitXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyRGVmYXVs
dFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcodWludDE2X3QgcG9ydCwgY29uc3QgU3RyaW5nJiBw
cm90b2NvbCk7CitXRUJDT1JFX0VYUE9SVCB2b2lkIGNsZWFyRGVmYXVsdFBvcnRGb3JQcm90b2Nv
bE1hcEZvclRlc3RpbmcoKTsKKwogYm9vbCBpc1ZhbGlkUHJvdG9jb2woY29uc3QgU3RyaW5nJik7
CiAKIFN0cmluZyBtaW1lVHlwZUZyb21EYXRhVVJMKGNvbnN0IFN0cmluZyYgdXJsKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTFBhcnNlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9VUkxQYXJzZXIuY3BwCmluZGV4IDM0Y2E2YjM3MjE5ZmViNWRkZGMwZTRj
NTQ2MTQxOWJlNDJjODRkNzAuLjg0NWFiODE4Y2FiZDRhMWMxYmIyMjZjYzlkZWYxMzZiNTJmNGEw
YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTFBhcnNlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMUGFyc2VyLmNwcApAQCAtMzEsNiArMzEsOSBA
QAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHVuaWNvZGUvdWlkbmEuaD4KICNpbmNsdWRl
IDx1bmljb2RlL3V0eXBlcy5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTY4OSw5ICs2OTIsMzUgQEAgT3B0aW9uYWw8dWlu
dDE2X3Q+IGRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woU3RyaW5nVmlldyBzY2hlbWUpCiAgICAgfQog
fQogCit1c2luZyBEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZyA9IEhhc2hNYXA8
U3RyaW5nLCB1aW50MTZfdD47CitzdGF0aWMgRGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRl
c3RpbmcmIGRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JUZXN0aW5nKCkKK3sKKyAgICBzdGF0
aWMgTmV2ZXJEZXN0cm95ZWQ8RGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3Rpbmc+IGRl
ZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXA7CisgICAgcmV0dXJuIGRlZmF1bHRQb3J0Rm9yUHJvdG9j
b2xNYXA7Cit9CisKK3ZvaWQgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sRm9yVGVzdGlu
Zyh1aW50MTZfdCBwb3J0LCBjb25zdCBTdHJpbmcmIHByb3RvY29sKQoreworICAgIC8vIEl0IGlz
IHN1ZmZpY2llbnQgdG8gdHJlYXQgdGhlIElFVEYgUkZDIDYzMzUgcmVzZXJ2ZWQgcG9ydCAwIGFz
IGludmFsaWQgZm9yIHRlc3RpbmcgcHVycG9zZXMuCisgICAgQVNTRVJUKHBvcnQgPiAwKTsKKyAg
ICBkZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygpLmFkZChwcm90b2NvbCwgcG9y
dCk7Cit9CisKK3ZvaWQgY2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygp
Cit7CisgICAgZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3RpbmcoKS5jbGVhcigpOwor
fQorCitib29sIGlzRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcodWludDE2X3QgcG9y
dCwgU3RyaW5nVmlldyBwcm90b2NvbCkKK3sKKyAgICAvLyBJdCBpcyBzdWZmaWNpZW50IHRvIHRy
ZWF0IHRoZSBJRVRGIFJGQyA2MzM1IHJlc2VydmVkIHBvcnQgMCBhcyBpbnZhbGlkIGZvciB0ZXN0
aW5nIHB1cnBvc2VzLgorICAgIHVpbnQxNl90IGRlZmF1bHRQb3J0ID0gZGVmYXVsdFBvcnRGb3JQ
cm90b2NvbE1hcEZvclRlc3RpbmcoKS5nZXQocHJvdG9jb2wudG9TdHJpbmdXaXRob3V0Q29weWlu
ZygpKTsKKyAgICByZXR1cm4gZGVmYXVsdFBvcnQgJiYgZGVmYXVsdFBvcnQgPT0gcG9ydDsKK30K
KwogYm9vbCBpc0RlZmF1bHRQb3J0Rm9yUHJvdG9jb2wodWludDE2X3QgcG9ydCwgU3RyaW5nVmll
dyBwcm90b2NvbCkKIHsKLSAgICByZXR1cm4gZGVmYXVsdFBvcnRGb3JQcm90b2NvbChwcm90b2Nv
bCkgPT0gcG9ydDsKKyAgICByZXR1cm4gaXNEZWZhdWx0UG9ydEZvclByb3RvY29sRm9yVGVzdGlu
Zyhwb3J0LCBwcm90b2NvbCkgfHwgZGVmYXVsdFBvcnRGb3JQcm90b2NvbChwcm90b2NvbCkgPT0g
cG9ydDsKIH0KIAogZW51bSBjbGFzcyBTY2hlbWUgewpAQCAtMjU3MCw3ICsyNTk5LDggQEAgYm9v
bCBVUkxQYXJzZXI6OnBhcnNlUG9ydChDb2RlUG9pbnRJdGVyYXRvcjxDaGFyYWN0ZXJUeXBlPiYg
aXRlcmF0b3IpCiAgICAgaWYgKCFwb3J0ICYmIGRpZ2l0Q291bnQgPiAxKQogICAgICAgICBzeW50
YXhWaW9sYXRpb24oY29sb25JdGVyYXRvcik7CiAKLSAgICBpZiAoVU5MSUtFTFkoaXNEZWZhdWx0
UG9ydEZvclByb3RvY29sKHBvcnQsIHBhcnNlZERhdGFWaWV3KDAsIG1fdXJsLm1fc2NoZW1lRW5k
KSkpKQorICAgIFN0cmluZ1ZpZXcgcHJvdG9jb2wgPSBwYXJzZWREYXRhVmlldygwLCBtX3VybC5t
X3NjaGVtZUVuZCk7CisgICAgaWYgKFVOTElLRUxZKGlzRGVmYXVsdFBvcnRGb3JQcm90b2NvbChw
b3J0LCBwcm90b2NvbCkgJiYgIWlzRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcocG9y
dCwgcHJvdG9jb2wpKSkKICAgICAgICAgc3ludGF4VmlvbGF0aW9uKGNvbG9uSXRlcmF0b3IpOwog
ICAgIGVsc2UgewogICAgICAgICBhcHBlbmRUb0FTQ0lJQnVmZmVyKCc6Jyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggNzBmYjIyZDRiOTQ3NDQwNjNiOWFkNGE5NDUyZDA1
NzkzMmRmYTdkMy4uYjU3ODVlYjFiNTFiZWRlNmE4YmIwMzkyZTM4MTRkYjk1YWFmYzdjNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMzc5LDYgKzM3OSw3IEBAIHZvaWQg
SW50ZXJuYWxzOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlKFBhZ2UmIHBhZ2UpCiAjZW5kaWYKICAg
ICB9CiAKKyAgICBXZWJDb3JlOjpjbGVhckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JUZXN0
aW5nKCk7CiAgICAgV2ViQ29yZTo6b3ZlcnJpZGVVc2VyUHJlZmVycmVkTGFuZ3VhZ2VzKFZlY3Rv
cjxTdHJpbmc+KCkpOwogICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRVc2VzT3ZlcmxheVNjcm9s
bGJhcnMoZmFsc2UpOwogICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRVc2VzTW9ja1Njcm9sbEFu
aW1hdG9yKGZhbHNlKTsKQEAgLTIxNTgsNiArMjE1OSwxMSBAQCB2b2lkIEludGVybmFsczo6cmVt
b3ZlVVJMU2NoZW1lUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KGNv
bnN0CiAgICAgU2NoZW1lUmVnaXN0cnk6OnJlbW92ZVVSTFNjaGVtZVJlZ2lzdGVyZWRBc0J5cGFz
c2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShzY2hlbWUpOwogfQogCit2b2lkIEludGVybmFsczo6
cmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIGNvbnN0
IFN0cmluZyYgcHJvdG9jb2wpCit7CisgICAgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29s
Rm9yVGVzdGluZyhwb3J0LCBwcm90b2NvbCk7Cit9CisKIFJlZjxNYWxsb2NTdGF0aXN0aWNzPiBJ
bnRlcm5hbHM6Om1hbGxvY1N0YXRpc3RpY3MoKSBjb25zdAogewogICAgIHJldHVybiBNYWxsb2NT
dGF0aXN0aWNzOjpjcmVhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4IDM2
ZjIyMGVmMTYzZmZiMjIyMzg1ZjEyY2FkMzQ2NTU4ZjA5OTQ2YzEuLmZlMmM3YTI1MzEwYTEyZDYw
YTIxODg0NDcyYTI1OTFlY2Q4ZWRmMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApA
QCAtMzA5LDYgKzMwOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNC
eXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiBzY2hlbWUpOwogICAg
IHZvaWQgcmVtb3ZlVVJMU2NoZW1lUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5
UG9saWN5KGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKIAorICAgIHZvaWQgcmVnaXN0ZXJEZWZhdWx0
UG9ydEZvclByb3RvY29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIGNvbnN0IFN0cmluZyYgcHJvdG9j
b2wpOworCiAgICAgUmVmPE1hbGxvY1N0YXRpc3RpY3M+IG1hbGxvY1N0YXRpc3RpY3MoKSBjb25z
dDsKICAgICBSZWY8VHlwZUNvbnZlcnNpb25zPiB0eXBlQ29udmVyc2lvbnMoKSBjb25zdDsKICAg
ICBSZWY8TWVtb3J5SW5mbz4gbWVtb3J5SW5mbygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaWRsCmluZGV4IGE2ZmUzNGNjNjkxMWMxYWVjZDk0ZDA5MDRjY2ZkYTNjYmIxMmE2
NDUuLjI5MThmODBlNjA5YzA4YzM5NzNiNmI4NWY0MDJjMGI1MGJmNTY3ZjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTMwMyw2ICszMDMsOCBAQCBlbnVtIFVzZXJJbnRl
cmZhY2VMYXlvdXREaXJlY3Rpb24gewogICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFz
c2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShET01TdHJpbmcgc2NoZW1lKTsKICAgICB2b2lkIHJl
bW92ZVVSTFNjaGVtZVJlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShE
T01TdHJpbmcgc2NoZW1lKTsKIAorICAgIHZvaWQgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3Rv
Y29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIERPTVN0cmluZyBzY2hlbWUpOworCiAgICAgTWFsbG9j
U3RhdGlzdGljcyBtYWxsb2NTdGF0aXN0aWNzKCk7CiAgICAgVHlwZUNvbnZlcnNpb25zIHR5cGVD
b252ZXJzaW9ucygpOwogICAgIE1lbW9yeUluZm8gbWVtb3J5SW5mbygpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDAxMTA4
NTY3ZmRkZTcyMDE1NDAxZWVlMzgwMzUyYjQwZDRjYzViYjUuLjExNzY2MDFjYjRiN2UzZWRjNzI4
MzExMGFjOWRkYjc1ZGJiMzU3NzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAxNi0xMS0wMyAg
RGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHRlc3QgaW5m
cmFzdHJ1Y3R1cmUgYW5kIHRlc3RzIGZvciBleGlzdGluZyBIVFRQIDAuOSBzYW5kYm94IG1hY2hp
bmVyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY0
Mzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yOTEwMTA3Mj4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGVzdHMgZm9yIHRoZSBleGlzdGlu
ZyBIVFRQIDAuOSBzYW5kYm94IG1hY2hpbmVyeS4gVW50aWwgd2UgZml4IDxodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY0Mzg3PiwKKyAgICAgICAgdGhlc2UgdGVzdHMg
Y2FuIG9ubHkgYmUgcnVuIHNpbmdseSAoaS5lLiBwYXNzIC0tcnVuLXNpbmdseSB0byBydW4td2Vi
a2l0LXRlc3RzKS4gU28sIHdlIHNraXAKKyAgICAgICAgdGhlc2UgdGVzdHMgdG8gYXZvaWQgdGVz
dCBmYWlsdXJlcyB3aGVuIHJ1bi13ZWJraXQtdGVzdHMgcnVucyBpbiBwYXJhbGxlbCBtb2RlICh0
aGUgZGVmYXVsdAorICAgICAgICBtb2RlIGFuZCB0aGUgbW9kZSB1c2VkIG9uIHRoZSBidWlsZGJv
dHMpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVs
dC1wb3J0LXBsdWdpbi1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0
LXBvcnQtc2NyaXB0LWJsb2NrZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9z
ZWN1cml0eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQuaHRtbDog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1ibG9j
a2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pbWFnZS1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxs
b3dlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1yZWYt
dGVzdC1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVm
LXRlc3QuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAu
OS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0w
LjktcGFnZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQuaHRtbDog
QWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMv
Ymx1ZS1zcXVhcmUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L3Jlc291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbDogQWRkZWQuCisgICAgICAgICogaHR0
cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGw6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFn
ZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsOiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24t
SFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGw6IEFkZGVkLgorICAgICAgICAq
IGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1m
YWlsLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtd29ya2VyLWZhaWwucGw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1j
b25uZWN0LXNyYy1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMtYmxvY2tlZC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWlt
cG9ydFNjcmlwdHMtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkveGhyLWFzeW5jaHJv
bm91cy1ibG9ja2VkLmh0bWw6IEFkZGVkLgorCiAyMDE2LTEwLTMxICBOYW4gV2FuZyAgPG5fd2Fu
Z0BhcHBsZS5jb20+CiAKICAgICAgICAgQVg6IGlPUyBWb2ljZW92ZXIgZG9lcyBub3QgYW5ub3Vu
Y2UgcHJldmlvdXNseSBzZWxlY3RlZCB2YWx1ZSBmcm9tIGlucHV0IHR5cGU9ImRhdGUiIGZvcm0g
ZmllbGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRU
ZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYzYjVhYjQ4ZjlkNDg5MmI5NTgxMGRjMTQ4NGMy
YTY1M2U1NzRlYWQuLjk5OWFmNWMwMzRjZjAyMzBlNmY5N2MxNjA1ZTQwMGJkZDI3OTI2MjQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYsNiArNjYsOCBAQCBmYXN0L2F0dGFjaG1lbnQvYXR0YWNo
bWVudC13cmFwcGluZy1hY3Rpb24uaHRtbAogIyBPbmx5IGlPUyBoYXMgc2VsZWN0aW9uIFVJIGRy
YXduIGJ5IFVJS2l0CiBlZGl0aW5nL3NlbGVjdGlvbi9jaGFyYWN0ZXItZ3JhbnVsYXJpdHktcmVj
dC5odG1sIFsgU2tpcCBdCiAKK3dlYmtpdC5vcmcvYi8xNjQzODcgaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOSBbIFNraXAgXQorCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
CiAjIEVuZCBwbGF0Zm9ybS1zcGVjaWZpYyB0ZXN0cy4KICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvZGVmYXVsdC1wb3J0LXBsdWdpbi1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXBsdWdpbi1i
bG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40Nzg4YTNlNDgyMzFkNjJiMDU1OTA5ZDg0
OWZiNzc5ODZlZjk4M2FiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDov
LzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVn
aW4tZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FH
RTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQ
LzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFpbC5wbCcgYmVj
YXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK1RoaXMgdGVzdHMgdGhhdCBsb2FkaW5nIG9mIGEg
cGx1Z2luIGlzIGJsb2NrZWQgaW4gYSBIVFRQIDAuOSByZXNwb25zZSBzZXJ2ZWQgb3ZlciBwb3J0
IDgwLiBUaGlzIHRlc3QgUEFTU0VEIGlmIHlvdSBzZWUgY29udGVudCBpbiB0aGUgaWZyYW1lIGJl
bG93LiBPdGhlcndpc2UsIGl0IEZBSUxFRC4KKworCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1m
cmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK1BsdWdpbiBkaWQgbm90IGxv
YWQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44YjE1YjRjNWVmN2E4OGRlY2EwMTEwZDI3YWYyMjY1ODgwZjZjM2FmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZh
dWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDE3IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRG
cmFtZXNBc1RleHQoKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJu
YWxzLnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCg4MDAwLCAiaHR0cCIpOworfQorPC9z
Y3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+VGhpcyB0ZXN0cyB0
aGF0IGxvYWRpbmcgb2YgYSBwbHVnaW4gaXMgYmxvY2tlZCBpbiBhIEhUVFAgMC45IHJlc3BvbnNl
IHNlcnZlZCBvdmVyIHBvcnQgODAuIFRoaXMgdGVzdCBQQVNTRUQgaWYgeW91IHNlZSBjb250ZW50
IGluIHRoZSBpZnJhbWUgYmVsb3cuIE90aGVyd2lzZSwgaXQgRkFJTEVELjwvcD4KKzxpZnJhbWUg
c3JjPSJyZXNvdXJjZXMvbnBoLWxvYWQtcGx1Z2luLWZhaWwucGwiPjwvaWZyYW1lPgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9kZWZhdWx0LXBvcnQtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtc2NyaXB0LWJs
b2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRlMjc4NDg1MzY3MDBhODFlYzk5YmM2NGNj
MTA4ZWE5MTBlMTNhNzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxMiBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1hbGVydC1mYWls
LnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5k
Ym94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2Vz
L25waC1hbGVydC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09M
RSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0
cC0wLjkvcmVzb3VyY2VzL25waC1hbGVydC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhU
VFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBCbG9ja2VkIHNjcmlwdCBleGVjdXRpb24gaW4gJ2h0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0
LWZhaWwucGwnIGJlY2F1c2UgdGhlIGRvY3VtZW50J3MgZnJhbWUgaXMgc2FuZGJveGVkIGFuZCB0
aGUgJ2FsbG93LXNjcmlwdHMnIHBlcm1pc3Npb24gaXMgbm90IHNldC4KK1RoaXMgdGVzdHMgdGhh
dCBKYXZhU2NyaXB0IGlzIGJsb2NrZWQgaW4gYSBIVFRQIDAuOSByZXNwb25zZSBzZXJ2ZWQgb3Zl
ciBwb3J0IDgwLiBUaGlzIHRlc3QgUEFTU0VEIGlmIHlvdSBzZWUgY29udGVudCBpbiB0aGUgaWZy
YW1lIGJlbG93IGFuZCBkbyBub3Qgc2VlIGEgSmF2YVNjcmlwdCBhbGVydC4gT3RoZXJ3aXNlLCBp
dCBGQUlMRUQuIFRoaXMgcGFnZSBhbmQgaXRzIHN1YnJlc291cmNlcyBtdXN0IGJlIHNlcnZlZCBv
dmVyIHBvcnQgODAgdG8gcnVuIHRoaXMgdGVzdCBieSBoYW5kLgorCisKKworLS0tLS0tLS0KK0Zy
YW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorVGhpcyBj
b250ZW50IHNob3VsZCBiZSB2aXNpYmxlLCBidXQgc2NyaXB0IHNob3VsZCBub3QgZXhlY3V0ZS4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVm
YXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjhiMzc0ZjQxZWI4ZWUyZDQzMWY5NDNjMTA2M2E2MTkxNDNlNDZlN2MKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQt
cG9ydC1zY3JpcHQtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1l
c0FzVGV4dCgpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMu
cmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cit9Cis8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3RzIHRoYXQg
SmF2YVNjcmlwdCBpcyBibG9ja2VkIGluIGEgSFRUUCAwLjkgcmVzcG9uc2Ugc2VydmVkIG92ZXIg
cG9ydCA4MC4gVGhpcyB0ZXN0IFBBU1NFRCBpZiB5b3Ugc2VlIGNvbnRlbnQgaW4gdGhlIGlmcmFt
ZSBiZWxvdyBhbmQgZG8gbm90IHNlZSBhIEphdmFTY3JpcHQgYWxlcnQuIE90aGVyd2lzZSwgaXQg
RkFJTEVELiBUaGlzIHBhZ2UgYW5kIGl0cyBzdWJyZXNvdXJjZXMgbXVzdCBiZSBzZXJ2ZWQgb3Zl
ciBwb3J0IDgwIHRvIHJ1biB0aGlzIHRlc3QgYnkgaGFuZC48L3A+Cis8aWZyYW1lIHNyYz0icmVz
b3VyY2VzL25waC1hbGVydC1mYWlsLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1l
LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzdiZmYzNmRl
NDEwYTFkMTM4OTk1NDdmZmFjNjljMTZmYmUwNzc1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBs
JyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTdG9wcGVk
IGRvY3VtZW50IGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAt
MC45L3Jlc291cmNlcy9ucGgtZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBv
biBhIG5vbi1kZWZhdWx0IHBvcnQuCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1lUGF0
aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1ibG9ja2VkLmh0bWwgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1ibG9ja2VkLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYjdkZjJmYjFmMzNhNTBkYzYzNTU1ODI5MTBhNDlkN2U1N2YyNjA3YwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkv
aWZyYW1lLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1Rl
eHQoKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0icmVzb3Vy
Y2VzL25waC1mYWlsLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2UtYmxvY2tlZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lt
YWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlMDgzYmYwZDk2NmExMjg2MWFi
NzQ0YmU3NTJlNTBkYjRkMmQ2YzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNCBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4x
OjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5wbCcgYmVjYXVzZSBp
dCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291cmNl
IGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkgYW5kIHRoZSBk
b2N1bWVudCB3YXMgbG9hZGVkIHdpdGggYSBkaWZmZXJlbnQgSFRUUCB2ZXJzaW9uLgorQUxFUlQ6
IFBBU1MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9pbWFnZS1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44Y2MyNDAxYzU5MjE2ZGQz
MWZhYjQ3MzM2OWQwOGE1ZWIwYjY4Yzk3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1ibG9ja2VkLmh0bWwKQEAgLTAsMCAr
MSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKzwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIHNyYz0icmVzb3VyY2VzL25waC1pbWFnZS5wbCIgb25s
b2FkPSJhbGVydCgnRkFJTCcpIiBvbmVycm9yPSJhbGVydCgnUEFTUycpIj4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhU
VFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmQwMTBmOTIyMjE1ZmNjZmMzNjJkNjZhY2VjNzhjMmVhMGEyOGRlZmMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhU
VFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVs
dC1wb3J0LXBhZ2UtYWxsb3dlZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NP
TlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5
L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBh
Z2UtYWxsb3dlZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVT
U0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45
L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dl
ZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2Fu
ZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNl
cy9ucGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1F
U1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAu
OS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45Lgor
CisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+Jwor
LS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLXJlZi10
ZXN0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3Qt
ZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMjY5ZTQ1YTUzMmVjZTM5NWM3NTkwYWRiMmViY2U4
MTVlOTQ1ZmQyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2Vk
LXJlZi10ZXN0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSw2IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGJvZHk+Cis8aWZyYW1lIHNyY2RvYz0nPGltZyBzcmM9InJlc291cmNlcy9ibHVl
LXNxdWFyZS5wbmciPic+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45
LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QuaHRtbCBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0
LXBhZ2UtYWxsb3dlZC1yZWYtdGVzdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4MzJmYmNlNWRlM2YwMDFh
OWRlNGVlYWRjNDZkMTllMzJhMzZiYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9y
dC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICAgaW50ZXJuYWxzLnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCg4MDAwLCAiaHR0cCIp
OworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvbnBo
LWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQucGwiPjwvaWZyYW1l
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxv
d2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdl
LW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
ZDU3ZDUwMjIzNWVmMzg2OTVlYTdiODk5M2ViYTNjMWVlYThiNTVjCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQ
LTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxNiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1
bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVt
cENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAg
IGludGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woODAwMCwgImh0dHAiKTsK
K30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL25w
aC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsIj48L2lmcmFt
ZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24t
SFRUUC0wLjktcGFnZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNGVhMGYwODg1
ZDVhNjNhMmVhYTc0NjdmZGQ0NDA5YjAxZDE1NWI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdl
LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTog
U2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsJyBiZWNhdXNlIGl0IGlz
IHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3
LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQ
LTAuOS1wYWdlLWJsb2NrZWQucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05T
T0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9o
dHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5wbCcg
YmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGlu
ZyAnaHR0cDovLzEyNy4wLjAuMTo4MDgwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgt
aW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NBR0U6
IENhbmNlbGxlZCByZXNvdXJjZSBsb2FkIGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODA4MC9zZWN1
cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5n
IEhUVFAvMC45IG9uIGEgbm9uLWRlZmF1bHQgcG9ydC4KKworCistLS0tLS0tLQorRnJhbWU6ICc8
IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0w
LjktcGFnZS1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAy
M2ZhNGQ2OTA1YWI4OTA0ZmQwNDU1ODFiNGQ4NzdhZDIyNTA2YTQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAt
MC45LXBhZ2UtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0Fz
VGV4dCgpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMucmVn
aXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cit9Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRU
UC0wLjktcGFnZS1ibG9ja2VkLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2Vz
L2JsdWUtc3F1YXJlLnBuZyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkvcmVzb3VyY2VzL2JsdWUtc3F1YXJlLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hY2E2NTc4YTM4MzI1NTA2
NTQ0ZTE1NjdkZDNkNjgxYTE5MDAzNWY1CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAxOTkKemNt
ZUFTQE4/KG9sSHlgdVZCcSFpYTB2cF5ESW08cTM/I2pEKnV7YUFTWX04Pk5yYlBEUmRSbD1VU2Rq
cVFtUzQ+CnpaVUluJmZnIWBLUDZ8a3wxXjkleEdCRXJIR09Mc0orV3slYjY0IXs1O1FYfGJeMkRO
NDJLUz1HZntlXiQ9bHJ+fgp6KVN7QnFCR1h1cGNSKXBeby1VM2Q2PzJqajdIQjZkU3puc2JGclE2
fVUwQWBxcTx2WXd5T0czPThqfXFTXlk3MCoKamFtOEtzd2tKP00oMSFvYTN9LVNLJW1rZngjZW4j
cHU2ezEtb0QhTTw3X0ImJQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0
LWZhaWwucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtYWxlcnQtZmFpbC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNWU5ZmY5ZDhiZjE1YmYyYzcyMjE4
ZWY2MmEwZjdiOWQ2OWE1ZDQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0LWZhaWwucGwKQEAgLTAs
MCArMSwxMiBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBpdHMg
bnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNpbGl0
eS4KKworcHJpbnQgPDwnRU9GJzsKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxw
PlRoaXMgY29udGVudCBzaG91bGQgYmUgdmlzaWJsZSwgYnV0IHNjcmlwdCBzaG91bGQgbm90IGV4
ZWN1dGUuPC9wPgorPHNjcmlwdD5hbGVydCgiRkFJTCIpPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CitFT0YKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0
cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGY4NTdkZjli
Y2FhMTUwY2Y4NmVlZTNjN2U3Zjk1ZjQ1MThlMTNkYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBs
CkBAIC0wLDAgKzEsNSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBv
biBpdHMgbnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBm
YWNpbGl0eS4KKworIyBXZSBlbWl0IHR3byBuZXdsaW5lIGNoYXJhY3RlcnMgdG8gc2lnbmFsIHRo
ZSBlbmQgb2YgYSB0ZXh0L3BsYWluIHJlc3BvbnNlIHdpdGhvdXQgSFRUUCBoZWFkZXJzLgorcHJp
bnQgIkZBSUxcblxuIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQt
cGFnZS1hbGxvd2VkLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAu
OS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93
ZWQucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMGFkZjA1ODVmNGI5M2IwMWQwMDA1NzQwZWY1ZjYzZDQ4MjM0NjVj
NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0
cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1h
bGxvd2VkLnBsCkBAIC0wLDAgKzEsMTEgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlw
dCByZWxpZXMgb24gaXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNl
ZC1oZWFkZXIgZmFjaWxpdHkuCisKK3ByaW50IDw8J0VPRic7Cis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGJvZHk+Cis8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0
dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGwiPgorPC9ib2R5PgorPC9odG1sPgorRU9GCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAt
MC45LXBhZ2UtYmxvY2tlZC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNGFmNGRjNzYwNTg1MjI1MTQyYjBlNGZh
YWY5Y2ViNDljOTI3NjRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBhZ2Ut
YmxvY2tlZC5wbApAQCAtMCwwICsxLDExIEBACisjIS91c3IvYmluL3BlcmwKKyMgVGhpcyBzY3Jp
cHQgcmVsaWVzIG9uIGl0cyBucGgtIGZpbGVuYW1lIHRvIGludm9rZSB0aGUgQ0dJIG5vbi1wYXJz
ZWQtaGVhZGVyIGZhY2lsaXR5LgorCitwcmludCA8PCdFT0YnOworPCFET0NUWVBFIGh0bWw+Cis8
aHRtbD4KKzxib2R5PgorPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODA4MC9zZWN1cml0eS9o
dHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsIj4KKzwvYm9keT4KKzwvaHRtbD4KK0VPRgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNv
dXJjZXMvbnBoLWltYWdlLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5ZGQ5NThjYjYyZTM1ZTMy
YTA5NzgxNGU2ZmEwYTk2Y2E2Mjg4MGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGwKQEAgLTAs
MCArMSwxNyBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBpdHMg
bnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNpbGl0
eS4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIE1JTUU6OkJhc2U2NDsKKwor
bXkgJGJsdWVTcXVhcmUgPSA8PCdFT0YnOworaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFB
QmtBUU1BQUFCS0xBY1hBQUFBRm1sVVdIUllUVXc2WTI5dExtRmtiMkpsTG5odAorY0FBQUFBQUFh
RVorR2dBQUFBWlFURlJGQUFEL0FBQUFlMksvUGdBQUFCbDBSVmgwVTI5bWRIZGhjbVVBUjNKaGNH
aHBZME52Ym5abAorY25SbGNqVmRTTzRBQUFBMVNVUkJWSGljWW1DZ0syQ2tyM1ZvZ0o4R0tnY1RJ
RGQwaDZadlJ6SVkySHcwc0FDZjM1bkkxRWNkMjBrQQorQUFBQUFQLy9Bd0RNYVFBMkVVTzZYQUFB
QUFCSlJVNUVya0pnZ2c9PQorRU9GCiskYmx1ZVNxdWFyZSA9fiBzL1xuLy9nOworCitwcmludCBk
ZWNvZGVfYmFzZTY0KCRibHVlU3F1YXJlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWlsLnBs
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBo
LWxvYWQtcGx1Z2luLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTAwN2YwZjNlYWViOGEyOGIxNDA0N2Yw
ODliYTgxOTM2NjlhYTI4NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWlsLnBsCkBA
IC0wLDAgKzEsMTEgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlwdCByZWxpZXMgb24g
aXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNlZC1oZWFkZXIgZmFj
aWxpdHkuCisKK3ByaW50IDw8J0VPRic7Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+
Cis8ZW1iZWQgdHlwZT0iYXBwbGljYXRpb24veC13ZWJraXQtdGVzdC1uZXRzY2FwZSI+UGx1Z2lu
IGRpZCBub3QgbG9hZC48L2VtYmVkPgorPC9ib2R5PgorPC9odG1sPgorRU9GCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgt
d29ya2VyLWZhaWwucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3Jlc291cmNlcy9ucGgtd29ya2VyLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIwODRjNzdmZDExZmM1
MTM2NjVmNjQxMTM2MjFjNDdkNTE2ZWY3NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5w
bApAQCAtMCwwICsxLDUgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlwdCByZWxpZXMg
b24gaXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNlZC1oZWFkZXIg
ZmFjaWxpdHkuCisKKyMgV2UgZW1pdCB0d28gbmV3bGluZSBjaGFyYWN0ZXJzIHRvIHNpZ25hbCB0
aGUgZW5kIG9mIHRoZSByZXNwb25zZSB3aXRob3V0IEhUVFAgaGVhZGVycy4KK3ByaW50ICJwb3N0
TWVzc2FnZSgnRkFJTCcpO1xuXG4iOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMtYmxvY2tlZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25u
ZWN0LXNyYy1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZTk2MTU2YzE0YWU4NWRk
ZTQ5MjdkYzA3NGM1ZjdiZmYyN2VmMTNiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMtYmxvY2tlZC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcg
J2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLXdv
cmtlci1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNT
QUdFOiBDYW5jZWxsZWQgcmVzb3VyY2UgbG9hZCBmcm9tICdodHRwOi8vMTI3LjAuMC4xOjgwMDAv
c2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5wbCcgYmVjYXVzZSBp
dCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBsb2FkZWQgd2l0aCBhIGRp
ZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9j
a2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtl
ci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjk1NzQwZGM3MDFkMDE4YmQ3
OWEzYzVlNWU5ZDVhZGRjOTUwMzQyYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQuaHRt
bApAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHNjcmlwdD4KK3ZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJjZXMv
bnBoLXdvcmtlci1mYWlsLnBsIik7Cit3b3JrZXIub25tZXNzYWdlID0gKCkgPT4geyBhbGVydEFu
ZERvbmUoIkZBSUwiKTsgfQord29ya2VyLm9uZXJyb3IgPSAoKSA9PiB7IGFsZXJ0QW5kRG9uZSgi
UEFTUyIpOyB9CisKK2Z1bmN0aW9uIGFsZXJ0QW5kRG9uZShtZXNzYWdlKQoreworICAgIGFsZXJ0
KG1lc3NhZ2UpOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5l
ci5ub3RpZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9y
dFNjcmlwdHMtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjBlOTYxNTZjMTRhZTg1ZGRlNDkyN2RjMDc0YzVmN2JmZjI3ZWYxM2IKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBA
QAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2Vj
dXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5wbCcgYmVjYXVzZSBpdCBp
cyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291cmNlIGxv
YWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNl
cy9ucGgtd29ya2VyLWZhaWwucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkgYW5kIHRo
ZSBkb2N1bWVudCB3YXMgbG9hZGVkIHdpdGggYSBkaWZmZXJlbnQgSFRUUCB2ZXJzaW9uLgorQUxF
UlQ6IFBBU1MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS93b3JrZXItaW1wb3J0U2NyaXB0cy1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zZTNiZjEwYzk5NGU1YTZkMjY1MTgwMThiZmQ0NjllNzM2OGI0NGQ1
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS93b3JrZXItaW1wb3J0U2NyaXB0cy1ibG9ja2VkLmh0bWwKQEAgLTAsMCArMSwzMiBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+
Cit2YXIgc2NyaXB0ID0gWworICAgICd0cnkgeycsCisgICAgJyAgIGltcG9ydFNjcmlwdHMoImh0
dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLXdvcmtl
ci1mYWlsLnBsIik7JywKKyAgICAnfSBjYXRjaCAoZSkgeycsCisgICAgJyAgIHBvc3RNZXNzYWdl
KCJQQVNTIik7JywKKyAgICAnfScsCitdLmpvaW4oIlxuIik7CisKK3ZhciB3b3JrZXIgPSBuZXcg
V29ya2VyKHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtzY3JpcHRdKSkpOwor
d29ya2VyLm9ubWVzc2FnZSA9IChtZXNzYWdlRXZlbnQpID0+IHsgYWxlcnRBbmREb25lKG1lc3Nh
Z2VFdmVudC5kYXRhKTsgfQorCitmdW5jdGlvbiBhbGVydEFuZERvbmUobWVzc2FnZSkKK3sKKyAg
ICBhbGVydChtZXNzYWdlKTsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRl
c3RSdW5uZXIubm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1h
c3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uN2IyYmRhYzc2NzE2ZmM0YTAwYjJmZDg2N2YxODg3MDA5NWExNDE1ZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkv
eGhyLWFzeW5jaHJvbm91cy1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK0NP
TlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5
L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQ
LzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291cmNlIGxvYWQgZnJvbSAnaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtZmFpbC5w
bCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBsb2Fk
ZWQgd2l0aCBhIGRpZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hy
b25vdXMtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS94aHItYXN5bmNocm9ub3VzLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjU2Njk1YThj
N2NlYWJmOTA3MDI3Mzc4Y2E2NDVhMTQ1MWY1MWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS94aHItYXN5bmNocm9ub3VzLWJsb2Nr
ZWQuaHRtbApAQCAtMCwwICsxLDMxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2NvbnN0IGlzQXN5bmNocm9ub3VzID0gdHJ1ZTsK
K3ZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Cit4aHIub3BlbigiR0VUIiwgInJlc291cmNl
cy9ucGgtZmFpbC5wbCIsIGlzQXN5bmNocm9ub3VzKTsKK3hoci5vbmxvYWQgPSAoKSA9PiB7IGFs
ZXJ0QW5kRG9uZSgiRkFJTCIpOyB9Cit4aHIub25lcnJvciA9ICgpID0+IHsKKyAgICAvLyBGSVhN
RTogQXNzZXJ0IHRoYXQgYSBzcGVjaWZpYyBlcnJvciBvY2N1cnJlZC4KKyAgICBhbGVydEFuZERv
bmUoIlBBU1MiKTsKK30KK3hoci5zZW5kKCk7CisKK2Z1bmN0aW9uIGFsZXJ0QW5kRG9uZShtZXNz
YWdlKQoreworICAgIGFsZXJ0KG1lc3NhZ2UpOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
KyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293954</attachid>
            <date>2016-11-04 16:19:28 -0700</date>
            <delta_ts>2016-11-04 20:49:25 -0700</delta_ts>
            <desc>Patch and layout tests</desc>
            <filename>bug-164389-20161104161526.patch</filename>
            <type>text/plain</type>
            <size>36492</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA4MTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjUwZGNiMjE3OTcxNTU2
ZGRhMGIwNTU3YTQzMWM0YTEwOWI0MDZhOC4uODgxNjI2OTc5MjVjYmIzZDRjY2I5YmU1NWViN2Jj
Y2RkNjU3ODIyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDE2LTExLTA0ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgdGVzdCBpbmZyYXN0
cnVjdHVyZSBhbmQgdGVzdHMgZm9yIGV4aXN0aW5nIEhUVFAgMC45IHNhbmRib3ggbWFjaGluZXJ5
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQzODkK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI5MTAxMDcyPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHN1
cHBvcnQgcmVnaXN0ZXJpbmcgYW4gYXJiaXRyYXJ5IHBvcnQgYXMgdGhlIGRlZmF1bHQgcG9ydAor
ICAgICAgICBmb3IgYSBwcm90b2NvbC4gVGhlIGJlaGF2aW9yIG9mIHZhcmlvdXMgbWFjaGluZXJ5
LCBpbmNsdWRpbmcgdGhlIEhUVFAgMC45IG1hY2hpbmVyeSwKKyAgICAgICAgY2FuIGJlIGVmZmVj
dGVkIGJ5IHdoZXRoZXIgdGhlIHJlc291cmNlIHJlcXVlc3Qgd2FzIG1hZGUgdXNpbmcgdGhlIGRl
ZmF1bHQgcG9ydCBmb3IKKyAgICAgICAgdGhlIHByb3RvY29sLiBXZSBleHBvc2Ugd2luZG93Lmlu
dGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woKSB0byBhbGxvdworICAgICAg
ICBhIHRlc3QgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgcG9ydCBhc3NvY2lhdGVkIHdpdGggYSBw
cm90b2NvbCBzbyBhcyB0byBzdXBwb3J0CisgICAgICAgIHRlc3RpbmcgdGhlc2UgY29kZSBwYXRo
cyB1c2luZyB0aGUgZXhpc3RpbmcgcG9ydCA4MDAwIHNlcnZlciBzdGFydGVkIGJ5IHJ1bi13ZWJr
aXQtaHR0cGQuCisgICAgICAgIFdpdGhvdXQgd2luZG93LmludGVybmFscy5yZWdpc3RlckRlZmF1
bHRQb3J0Rm9yUHJvdG9jb2woKSB3ZSB3b3VsZCBuZWVkIHRvIHRlYWNoCisgICAgICAgIHJ1bi13
ZWJraXQtaHR0cGQgdG8gcnVuIGEgd2ViIHNlcnZlciBvbiBwb3J0IDgwLCB3aGljaCByZXF1aXJl
cyBzdXBlcnVzZXIgcHJpdmlsZWdlcworICAgICAgICAoc2luY2UgaXQgaXMgYSBwcml2aWxlZ2Vk
IHBvcnQgbnVtYmVyKSBhbmQgaXMgbW9yZSBsaWtlbHkgdG8gaW50ZXJmZXJlIHdpdGggYW4KKyAg
ICAgICAgZXhpc3Rpbmcgd2ViIHNlcnZlciBzZXR1cC4KKworICAgICAgICBUZXN0czogaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbAor
ICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQt
c2NyaXB0LWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pZnJhbWUtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFn
ZS1hbGxvd2VkLXJlZi10ZXN0Lmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWwKKyAgICAgICAg
ICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMt
YmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkxQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
aXNEZWZhdWx0UG9ydEZvclByb3RvY29sSW50ZXJuYWwpOiBSZW5hbWVkOyBmb3JtZXJseSBuYW1l
ZCBpc0RlZmF1bHRQb3J0Rm9yUHJvdG9jb2xJbnRlcm5hbC4KKyAgICAgICAgQWxzbyBtYWRlIGl0
IGEgZmlsZS1zdGF0aWMgZnVuY3Rpb24gYXMgdGhpcyBmdW5jdGlvbmFsaXR5IGlzIGFuIGltcGxl
bWVudGF0aW9uIGRldGFpbCBvZiB0aGUgVVJMIHBhcnNlci4KKyAgICAgICAgKFdlYkNvcmU6OmRl
ZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JUZXN0aW5nKToKKyAgICAgICAgKFdlYkNvcmU6OnJl
Z2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3RpbmcpOiBBZGRzIHRoZSBzcGVjaWZp
ZWQgKHByb3RvY29sLCBwb3J0KSB0byB0aGUKKyAgICAgICAgbWFwcGluZyB1c2VkIGZvciB0ZXN0
aW5nLgorICAgICAgICAoV2ViQ29yZTo6Y2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9y
VGVzdGluZyk6IENsZWFyIHRoZSBwcm90b2NvbCB0byBkZWZhdWx0IHBvcnQgdGVzdGluZyBtYXAu
CisgICAgICAgIFdlIGNhbGwgdGhpcyBmdW5jdGlvbiBmcm9tIEludGVybmFsczo6cmVzZXRUb0Nv
bnNpc3RlbnRTdGF0ZSgpIHNvIHRoYXQgdGhlIG1hcHBpbmcgaXMgY2xlYXJlZCBiZXR3ZWVuCisg
ICAgICAgIHRlc3QgcnVucy4KKyAgICAgICAgKFdlYkNvcmU6OmlzRGVmYXVsdFBvcnRGb3JQcm90
b2NvbCk6IEFkZGVkLiBDaGVja3MgdGhlIHByb3RvY29sLXRvLWRlZmF1bHQgcG9ydCBtYXBwaW5n
IGZvciB0ZXN0aW5nCisgICAgICAgIHRvIHNlZSBpZiB0aGUgZGVmYXVsdCBwb3J0IGZvciBhIHBy
b3RvY29sIGhhcyBiZWVuIG92ZXJ3cml0dGVuIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiBJZiB3ZSBj
YW5ub3QKKyAgICAgICAgZmluZCBhbiBlbnRyeSBpbiB0aGUgbWFwIHRoZW4gd2UgcXVlcnkgaXNE
ZWZhdWx0UG9ydEZvclByb3RvY29sSW50ZXJuYWwoKS4gCisgICAgICAgIChXZWJDb3JlOjpVUkxQ
YXJzZXI6OnBhcnNlUG9ydCk6IFN1YnN0aXR1dGUgaXNEZWZhdWx0UG9ydEZvclByb3RvY29sSW50
ZXJuYWwoKSBmb3IgaXNEZWZhdWx0UG9ydEZvclByb3RvY29sKCkKKyAgICAgICBzbyB3ZSBuZXZl
ciBjb25zaWRlciB0aGUgcHJvdG9jb2wtdG8tZGVmYXVsdCBwb3J0IG1hcCBmb3IgdGVzdGluZyB3
aGVuIHBhcnNpbmcgYSBVUkwuCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlKTogQ2xlYXIg
dGhlIGRlZmF1bHQgcG9ydCBtYXBwaW5nIHVzZWQgZm9yIHRlc3RpbmcuCisgICAgICAgIChXZWJD
b3JlOjpJbnRlcm5hbHM6OnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCk6IEFkZGVkLgor
ICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5h
bHMuaWRsOiBBZGRlZCBkZWNsYXJhdGlvbiBmb3IgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3Rv
Y29sKCkuCisKIDIwMTYtMTAtMzEgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjIwODE1MTsgX3NldFByZXZlbnRz
U2xlZXBEdXJpbmdWaWRlb1BsYXliYWNrOiBvbmx5IGRlZmluZWQgaW4gbm9uLXNpbXVsYXRvciBT
REtzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9VUkwuaAppbmRleCA3MTBlYTUxM2I4ZTI5NWIxMWI3Y2E5NjM2OGQy
ZTY4Y2QyYzJkNDE4Li43MmM4YzFiZjYyY2M4NjFiZThmZGUwMjEwODBkNjYyMzJkNjliZDJmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkwuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9VUkwuaApAQCAtMzE1LDYgKzMxNSw5IEBAIE9wdGlvbmFsPHVpbnQxNl90
PiBkZWZhdWx0UG9ydEZvclByb3RvY29sKFN0cmluZ1ZpZXcgcHJvdG9jb2wpOwogV0VCQ09SRV9F
WFBPUlQgYm9vbCBpc0RlZmF1bHRQb3J0Rm9yUHJvdG9jb2wodWludDE2X3QgcG9ydCwgU3RyaW5n
VmlldyBwcm90b2NvbCk7CiBXRUJDT1JFX0VYUE9SVCBib29sIHBvcnRBbGxvd2VkKGNvbnN0IFVS
TCYpOyAvLyBCbGFja2xpc3QgcG9ydHMgdGhhdCBzaG91bGQgbmV2ZXIgYmUgdXNlZCBmb3IgV2Vi
IHJlc291cmNlcy4KIAorV0VCQ09SRV9FWFBPUlQgdm9pZCByZWdpc3RlckRlZmF1bHRQb3J0Rm9y
UHJvdG9jb2xGb3JUZXN0aW5nKHVpbnQxNl90IHBvcnQsIGNvbnN0IFN0cmluZyYgcHJvdG9jb2wp
OworV0VCQ09SRV9FWFBPUlQgdm9pZCBjbGVhckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JU
ZXN0aW5nKCk7CisKIGJvb2wgaXNWYWxpZFByb3RvY29sKGNvbnN0IFN0cmluZyYpOwogCiBTdHJp
bmcgbWltZVR5cGVGcm9tRGF0YVVSTChjb25zdCBTdHJpbmcmIHVybCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkxQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVVJMUGFyc2VyLmNwcAppbmRleCAzNGNhNmIzNzIxOWZlYjVkZGRjMGU0YzU0NjE0MTli
ZTQyYzg0ZDcwLi5lMGRkMmMyYjZjNjUwMzQwNjJmMTI5YWNlMzEyZGU5Y2E5OTlhYThkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9VUkxQYXJzZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1VSTFBhcnNlci5jcHAKQEAgLTMxLDYgKzMxLDkgQEAKICNpbmNs
dWRlIDxhcnJheT4KICNpbmNsdWRlIDx1bmljb2RlL3VpZG5hLmg+CiAjaW5jbHVkZSA8dW5pY29k
ZS91dHlwZXMuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCkBAIC02ODksMTEgKzY5MiwzNyBAQCBPcHRpb25hbDx1aW50MTZfdD4g
ZGVmYXVsdFBvcnRGb3JQcm90b2NvbChTdHJpbmdWaWV3IHNjaGVtZSkKICAgICB9CiB9CiAKLWJv
b2wgaXNEZWZhdWx0UG9ydEZvclByb3RvY29sKHVpbnQxNl90IHBvcnQsIFN0cmluZ1ZpZXcgcHJv
dG9jb2wpCitzdGF0aWMgYm9vbCBpc0RlZmF1bHRQb3J0Rm9yUHJvdG9jb2xJbnRlcm5hbCh1aW50
MTZfdCBwb3J0LCBTdHJpbmdWaWV3IHByb3RvY29sKQogewogICAgIHJldHVybiBkZWZhdWx0UG9y
dEZvclByb3RvY29sKHByb3RvY29sKSA9PSBwb3J0OwogfQogCit1c2luZyBEZWZhdWx0UG9ydEZv
clByb3RvY29sTWFwRm9yVGVzdGluZyA9IEhhc2hNYXA8U3RyaW5nLCB1aW50MTZfdD47CitzdGF0
aWMgRGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3RpbmcmIGRlZmF1bHRQb3J0Rm9yUHJv
dG9jb2xNYXBGb3JUZXN0aW5nKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8RGVmYXVs
dFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3Rpbmc+IGRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXA7
CisgICAgcmV0dXJuIGRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXA7Cit9CisKK3ZvaWQgcmVnaXN0
ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sRm9yVGVzdGluZyh1aW50MTZfdCBwb3J0LCBjb25zdCBT
dHJpbmcmIHByb3RvY29sKQoreworICAgIC8vIEl0IGlzIHN1ZmZpY2llbnQgdG8gdHJlYXQgdGhl
IElFVEYgUkZDIDYzMzUgcmVzZXJ2ZWQgcG9ydCAwIGFzIGludmFsaWQgZm9yIHRlc3RpbmcgcHVy
cG9zZXMuCisgICAgQVNTRVJUKHBvcnQgPiAwKTsKKyAgICBkZWZhdWx0UG9ydEZvclByb3RvY29s
TWFwRm9yVGVzdGluZygpLmFkZChwcm90b2NvbCwgcG9ydCk7Cit9CisKK3ZvaWQgY2xlYXJEZWZh
dWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygpCit7CisgICAgZGVmYXVsdFBvcnRGb3JQ
cm90b2NvbE1hcEZvclRlc3RpbmcoKS5jbGVhcigpOworfQorCitib29sIGlzRGVmYXVsdFBvcnRG
b3JQcm90b2NvbCh1aW50MTZfdCBwb3J0LCBTdHJpbmdWaWV3IHByb3RvY29sKQoreworICAgIC8v
IEl0IGlzIHN1ZmZpY2llbnQgdG8gdHJlYXQgdGhlIElFVEYgUkZDIDYzMzUgcmVzZXJ2ZWQgcG9y
dCAwIGFzIGludmFsaWQgZm9yIHRlc3RpbmcgcHVycG9zZXMuCisgICAgdWludDE2X3QgZGVmYXVs
dFBvcnQgPSBkZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygpLmdldChwcm90b2Nv
bC50b1N0cmluZ1dpdGhvdXRDb3B5aW5nKCkpOworICAgIHJldHVybiAoZGVmYXVsdFBvcnQgJiYg
ZGVmYXVsdFBvcnQgPT0gcG9ydCkgfHwgaXNEZWZhdWx0UG9ydEZvclByb3RvY29sSW50ZXJuYWwo
cG9ydCwgcHJvdG9jb2wpOworfQorCiBlbnVtIGNsYXNzIFNjaGVtZSB7CiAgICAgV1MsCiAgICAg
V1NTLApAQCAtMjU3MCw3ICsyNTk5LDcgQEAgYm9vbCBVUkxQYXJzZXI6OnBhcnNlUG9ydChDb2Rl
UG9pbnRJdGVyYXRvcjxDaGFyYWN0ZXJUeXBlPiYgaXRlcmF0b3IpCiAgICAgaWYgKCFwb3J0ICYm
IGRpZ2l0Q291bnQgPiAxKQogICAgICAgICBzeW50YXhWaW9sYXRpb24oY29sb25JdGVyYXRvcik7
CiAKLSAgICBpZiAoVU5MSUtFTFkoaXNEZWZhdWx0UG9ydEZvclByb3RvY29sKHBvcnQsIHBhcnNl
ZERhdGFWaWV3KDAsIG1fdXJsLm1fc2NoZW1lRW5kKSkpKQorICAgIGlmIChVTkxJS0VMWShpc0Rl
ZmF1bHRQb3J0Rm9yUHJvdG9jb2xJbnRlcm5hbChwb3J0LCBwYXJzZWREYXRhVmlldygwLCBtX3Vy
bC5tX3NjaGVtZUVuZCkpKSkKICAgICAgICAgc3ludGF4VmlvbGF0aW9uKGNvbG9uSXRlcmF0b3Ip
OwogICAgIGVsc2UgewogICAgICAgICBhcHBlbmRUb0FTQ0lJQnVmZmVyKCc6Jyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggNzBmYjIyZDRiOTQ3NDQwNjNiOWFkNGE5NDUy
ZDA1NzkzMmRmYTdkMy4uYjU3ODVlYjFiNTFiZWRlNmE4YmIwMzkyZTM4MTRkYjk1YWFmYzdjNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtMzc5LDYgKzM3OSw3IEBAIHZv
aWQgSW50ZXJuYWxzOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlKFBhZ2UmIHBhZ2UpCiAjZW5kaWYK
ICAgICB9CiAKKyAgICBXZWJDb3JlOjpjbGVhckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JU
ZXN0aW5nKCk7CiAgICAgV2ViQ29yZTo6b3ZlcnJpZGVVc2VyUHJlZmVycmVkTGFuZ3VhZ2VzKFZl
Y3RvcjxTdHJpbmc+KCkpOwogICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRVc2VzT3ZlcmxheVNj
cm9sbGJhcnMoZmFsc2UpOwogICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRVc2VzTW9ja1Njcm9s
bEFuaW1hdG9yKGZhbHNlKTsKQEAgLTIxNTgsNiArMjE1OSwxMSBAQCB2b2lkIEludGVybmFsczo6
cmVtb3ZlVVJMU2NoZW1lUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5
KGNvbnN0CiAgICAgU2NoZW1lUmVnaXN0cnk6OnJlbW92ZVVSTFNjaGVtZVJlZ2lzdGVyZWRBc0J5
cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShzY2hlbWUpOwogfQogCit2b2lkIEludGVybmFs
czo6cmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIGNv
bnN0IFN0cmluZyYgcHJvdG9jb2wpCit7CisgICAgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3Rv
Y29sRm9yVGVzdGluZyhwb3J0LCBwcm90b2NvbCk7Cit9CisKIFJlZjxNYWxsb2NTdGF0aXN0aWNz
PiBJbnRlcm5hbHM6Om1hbGxvY1N0YXRpc3RpY3MoKSBjb25zdAogewogICAgIHJldHVybiBNYWxs
b2NTdGF0aXN0aWNzOjpjcmVhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4
IDM2ZjIyMGVmMTYzZmZiMjIyMzg1ZjEyY2FkMzQ2NTU4ZjA5OTQ2YzEuLmZlMmM3YTI1MzEwYTEy
ZDYwYTIxODg0NDcyYTI1OTFlY2Q4ZWRmMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aApAQCAtMzA5LDYgKzMwOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1l
QXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiBzY2hlbWUpOwog
ICAgIHZvaWQgcmVtb3ZlVVJMU2NoZW1lUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3Vy
aXR5UG9saWN5KGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKIAorICAgIHZvaWQgcmVnaXN0ZXJEZWZh
dWx0UG9ydEZvclByb3RvY29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIGNvbnN0IFN0cmluZyYgcHJv
dG9jb2wpOworCiAgICAgUmVmPE1hbGxvY1N0YXRpc3RpY3M+IG1hbGxvY1N0YXRpc3RpY3MoKSBj
b25zdDsKICAgICBSZWY8VHlwZUNvbnZlcnNpb25zPiB0eXBlQ29udmVyc2lvbnMoKSBjb25zdDsK
ICAgICBSZWY8TWVtb3J5SW5mbz4gbWVtb3J5SW5mbygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCmluZGV4IGE2ZmUzNGNjNjkxMWMxYWVjZDk0ZDA5MDRjY2ZkYTNjYmIx
MmE2NDUuLjI5MThmODBlNjA5YzA4YzM5NzNiNmI4NWY0MDJjMGI1MGJmNTY3ZjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTMwMyw2ICszMDMsOCBAQCBlbnVtIFVzZXJJ
bnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gewogICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVBc0J5
cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShET01TdHJpbmcgc2NoZW1lKTsKICAgICB2b2lk
IHJlbW92ZVVSTFNjaGVtZVJlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGlj
eShET01TdHJpbmcgc2NoZW1lKTsKIAorICAgIHZvaWQgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclBy
b3RvY29sKHVuc2lnbmVkIHNob3J0IHBvcnQsIERPTVN0cmluZyBzY2hlbWUpOworCiAgICAgTWFs
bG9jU3RhdGlzdGljcyBtYWxsb2NTdGF0aXN0aWNzKCk7CiAgICAgVHlwZUNvbnZlcnNpb25zIHR5
cGVDb252ZXJzaW9ucygpOwogICAgIE1lbW9yeUluZm8gbWVtb3J5SW5mbygpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDAx
MTA4NTY3ZmRkZTcyMDE1NDAxZWVlMzgwMzUyYjQwZDRjYzViYjUuLmEzYWIwY2MzMWMyMzA0Mjdm
YjUzZGEzNzllYmQxNjM2YzMwNzg0ZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAxNi0xMS0w
NCAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHRlc3Qg
aW5mcmFzdHJ1Y3R1cmUgYW5kIHRlc3RzIGZvciBleGlzdGluZyBIVFRQIDAuOSBzYW5kYm94IG1h
Y2hpbmVyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTY0Mzg5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yOTEwMTA3Mj4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGVzdHMgZm9yIHRoZSBleGlz
dGluZyBIVFRQIDAuOSBzYW5kYm94IG1hY2hpbmVyeS4gVW50aWwgd2UgZml4IDxodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY0Mzg3PiwKKyAgICAgICAgdGhlc2UgdGVz
dHMgY2FuIG9ubHkgYmUgcnVuIHNpbmdseSAoaS5lLiBwYXNzIC0tcnVuLXNpbmdseSB0byBydW4t
d2Via2l0LXRlc3RzKS4gU28sIHdlIHNraXAKKyAgICAgICAgdGhlc2UgdGVzdHMgdG8gYXZvaWQg
dGVzdCBmYWlsdXJlcyB3aGVuIHJ1bi13ZWJraXQtdGVzdHMgcnVucyBpbiBwYXJhbGxlbCBtb2Rl
ICh0aGUgZGVmYXVsdAorICAgICAgICBtb2RlIGFuZCB0aGUgbW9kZSB1c2VkIG9uIHRoZSBidWls
ZGJvdHMpLgorCisgICAgICAgICogVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBodHRwL3Rl
c3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVm
YXVsdC1wb3J0LXBsdWdpbi1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZh
dWx0LXBvcnQtc2NyaXB0LWJsb2NrZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1i
bG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS9pbWFnZS1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2Ut
YWxsb3dlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1y
ZWYtdGVzdC1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3Vy
aXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQt
cmVmLXRlc3QuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRU
UC0wLjktcGFnZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQuaHRt
bDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJj
ZXMvYmx1ZS1zcXVhcmUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5
L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbDogQWRkZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGw6IEFkZGVk
LgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1p
bWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsOiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Ut
b24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGw6IEFkZGVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdp
bi1mYWlsLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3Jlc291cmNlcy9ucGgtd29ya2VyLWZhaWwucGw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtl
ci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMtYmxvY2tlZC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2Vy
LWltcG9ydFNjcmlwdHMtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkveGhyLWFzeW5j
aHJvbm91cy1ibG9ja2VkLmh0bWw6IEFkZGVkLgorCiAyMDE2LTEwLTMxICBOYW4gV2FuZyAgPG5f
d2FuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQVg6IGlPUyBWb2ljZW92ZXIgZG9lcyBub3QgYW5u
b3VuY2UgcHJldmlvdXNseSBzZWxlY3RlZCB2YWx1ZSBmcm9tIGlucHV0IHR5cGU9ImRhdGUiIGZv
cm0gZmllbGQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYzYjVhYjQ4ZjlkNDg5MmI5NTgxMGRjMTQ4
NGMyYTY1M2U1NzRlYWQuLjk5OWFmNWMwMzRjZjAyMzBlNmY5N2MxNjA1ZTQwMGJkZDI3OTI2MjQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYsNiArNjYsOCBAQCBmYXN0L2F0dGFjaG1lbnQvYXR0
YWNobWVudC13cmFwcGluZy1hY3Rpb24uaHRtbAogIyBPbmx5IGlPUyBoYXMgc2VsZWN0aW9uIFVJ
IGRyYXduIGJ5IFVJS2l0CiBlZGl0aW5nL3NlbGVjdGlvbi9jaGFyYWN0ZXItZ3JhbnVsYXJpdHkt
cmVjdC5odG1sIFsgU2tpcCBdCiAKK3dlYmtpdC5vcmcvYi8xNjQzODcgaHR0cC90ZXN0cy9zZWN1
cml0eS9odHRwLTAuOSBbIFNraXAgXQorCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vCiAjIEVuZCBwbGF0Zm9ybS1zcGVjaWZpYyB0ZXN0cy4KICMvLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXBsdWdpbi1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXBsdWdp
bi1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40Nzg4YTNlNDgyMzFkNjJiMDU1OTA5
ZDg0OWZiNzc5ODZlZjk4M2FiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0
cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1w
bHVnaW4tZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVT
U0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45
L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBI
VFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFpbC5wbCcg
YmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK1RoaXMgdGVzdHMgdGhhdCBsb2FkaW5nIG9m
IGEgcGx1Z2luIGlzIGJsb2NrZWQgaW4gYSBIVFRQIDAuOSByZXNwb25zZSBzZXJ2ZWQgb3ZlciBw
b3J0IDgwLiBUaGlzIHRlc3QgUEFTU0VEIGlmIHlvdSBzZWUgY29udGVudCBpbiB0aGUgaWZyYW1l
IGJlbG93LiBPdGhlcndpc2UsIGl0IEZBSUxFRC4KKworCisKKy0tLS0tLS0tCitGcmFtZTogJzwh
LS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK1BsdWdpbiBkaWQgbm90
IGxvYWQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44YjE1YjRjNWVmN2E4OGRlY2EwMTEwZDI3YWYyMjY1ODgwZjZjM2FmCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9k
ZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDE3IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hp
bGRGcmFtZXNBc1RleHQoKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50
ZXJuYWxzLnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCg4MDAwLCAiaHR0cCIpOworfQor
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+VGhpcyB0ZXN0
cyB0aGF0IGxvYWRpbmcgb2YgYSBwbHVnaW4gaXMgYmxvY2tlZCBpbiBhIEhUVFAgMC45IHJlc3Bv
bnNlIHNlcnZlZCBvdmVyIHBvcnQgODAuIFRoaXMgdGVzdCBQQVNTRUQgaWYgeW91IHNlZSBjb250
ZW50IGluIHRoZSBpZnJhbWUgYmVsb3cuIE90aGVyd2lzZSwgaXQgRkFJTEVELjwvcD4KKzxpZnJh
bWUgc3JjPSJyZXNvdXJjZXMvbnBoLWxvYWQtcGx1Z2luLWZhaWwucGwiPjwvaWZyYW1lPgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtc2NyaXB0LWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtc2NyaXB0
LWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRlMjc4NDg1MzY3MDBhODFlYzk5YmM2
NGNjMTA4ZWE5MTBlMTNhNzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMiBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1hbGVydC1m
YWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBT
YW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3Vy
Y2VzL25waC1hbGVydC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09O
U09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkv
aHR0cC0wLjkvcmVzb3VyY2VzL25waC1hbGVydC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5n
IEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBCbG9ja2VkIHNjcmlwdCBleGVjdXRpb24gaW4g
J2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFs
ZXJ0LWZhaWwucGwnIGJlY2F1c2UgdGhlIGRvY3VtZW50J3MgZnJhbWUgaXMgc2FuZGJveGVkIGFu
ZCB0aGUgJ2FsbG93LXNjcmlwdHMnIHBlcm1pc3Npb24gaXMgbm90IHNldC4KK1RoaXMgdGVzdHMg
dGhhdCBKYXZhU2NyaXB0IGlzIGJsb2NrZWQgaW4gYSBIVFRQIDAuOSByZXNwb25zZSBzZXJ2ZWQg
b3ZlciBwb3J0IDgwLiBUaGlzIHRlc3QgUEFTU0VEIGlmIHlvdSBzZWUgY29udGVudCBpbiB0aGUg
aWZyYW1lIGJlbG93IGFuZCBkbyBub3Qgc2VlIGEgSmF2YVNjcmlwdCBhbGVydC4gT3RoZXJ3aXNl
LCBpdCBGQUlMRUQuIFRoaXMgcGFnZSBhbmQgaXRzIHN1YnJlc291cmNlcyBtdXN0IGJlIHNlcnZl
ZCBvdmVyIHBvcnQgODAgdG8gcnVuIHRoaXMgdGVzdCBieSBoYW5kLgorCisKKworLS0tLS0tLS0K
K0ZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorVGhp
cyBjb250ZW50IHNob3VsZCBiZSB2aXNpYmxlLCBidXQgc2NyaXB0IHNob3VsZCBub3QgZXhlY3V0
ZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkv
ZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjhiMzc0ZjQxZWI4ZWUyZDQzMWY5NDNjMTA2M2E2MTkxNDNlNDZlN2MKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1
bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZy
YW1lc0FzVGV4dCgpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBpbnRlcm5h
bHMucmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cit9Cis8L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3RzIHRo
YXQgSmF2YVNjcmlwdCBpcyBibG9ja2VkIGluIGEgSFRUUCAwLjkgcmVzcG9uc2Ugc2VydmVkIG92
ZXIgcG9ydCA4MC4gVGhpcyB0ZXN0IFBBU1NFRCBpZiB5b3Ugc2VlIGNvbnRlbnQgaW4gdGhlIGlm
cmFtZSBiZWxvdyBhbmQgZG8gbm90IHNlZSBhIEphdmFTY3JpcHQgYWxlcnQuIE90aGVyd2lzZSwg
aXQgRkFJTEVELiBUaGlzIHBhZ2UgYW5kIGl0cyBzdWJyZXNvdXJjZXMgbXVzdCBiZSBzZXJ2ZWQg
b3ZlciBwb3J0IDgwIHRvIHJ1biB0aGlzIHRlc3QgYnkgaGFuZC48L3A+Cis8aWZyYW1lIHNyYz0i
cmVzb3VyY2VzL25waC1hbGVydC1mYWlsLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZy
YW1lLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzdiZmYz
NmRlNDEwYTFkMTM4OTk1NDdmZmFjNjljMTZmYmUwNzc1NQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWls
LnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTdG9w
cGVkIGRvY3VtZW50IGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0
dHAtMC45L3Jlc291cmNlcy9ucGgtZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAu
OSBvbiBhIG5vbi1kZWZhdWx0IHBvcnQuCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1l
UGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1ibG9ja2VkLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1ibG9ja2VkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYjdkZjJmYjFmMzNhNTBkYzYzNTU1ODI5MTBhNDlkN2U1N2YyNjA3Ywot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkvaWZyYW1lLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNB
c1RleHQoKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0icmVz
b3VyY2VzL25waC1mYWlsLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2UtYmxvY2tl
ZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L2ltYWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlMDgzYmYwZDk2NmExMjg2
MWFiNzQ0YmU3NTJlNTBkYjRkMmQ2YzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNCBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAu
MC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5wbCcgYmVjYXVz
ZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291
cmNlIGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkgYW5kIHRo
ZSBkb2N1bWVudCB3YXMgbG9hZGVkIHdpdGggYSBkaWZmZXJlbnQgSFRUUCB2ZXJzaW9uLgorQUxF
UlQ6IFBBU1MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pbWFnZS1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44Y2MyNDAxYzU5MjE2
ZGQzMWZhYjQ3MzM2OWQwOGE1ZWIwYjY4Yzk3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1ibG9ja2VkLmh0bWwKQEAgLTAs
MCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lm
ICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKzwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aW1nIHNyYz0icmVzb3VyY2VzL25waC1pbWFnZS5wbCIg
b25sb2FkPSJhbGVydCgnRkFJTCcpIiBvbmVycm9yPSJhbGVydCgnUEFTUycpIj4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0
cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmQwMTBmOTIyMjE1ZmNjZmMzNjJkNjZhY2VjNzhjMmVhMGEyOGRlZmMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVm
YXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4K
K0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3Vy
aXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0
LXBhZ2UtYWxsb3dlZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUg
TUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAt
MC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxs
b3dlZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTog
U2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xF
IE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRw
LTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45
LgorCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+
JworLS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLXJl
Zi10ZXN0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRl
c3QtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMjY5ZTQ1YTUzMmVjZTM5NWM3NTkwYWRiMmVi
Y2U4MTVlOTQ1ZmQyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxv
d2VkLXJlZi10ZXN0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSw2IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGJvZHk+Cis8aWZyYW1lIHNyY2RvYz0nPGltZyBzcmM9InJlc291cmNlcy9i
bHVlLXNxdWFyZS5wbmciPic+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAt
MC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QuaHRtbCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1w
b3J0LXBhZ2UtYWxsb3dlZC1yZWYtdGVzdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4MzJmYmNlNWRlM2Yw
MDFhOWRlNGVlYWRjNDZkMTllMzJhMzZiYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQt
cG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMp
CisgICAgaW50ZXJuYWxzLnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCg4MDAwLCAiaHR0
cCIpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMv
bnBoLWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQucGwiPjwvaWZy
YW1lPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1h
bGxvd2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lt
YWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mZDU3ZDUwMjIzNWVmMzg2OTVlYTdiODk5M2ViYTNjMWVlYThiNTVjCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1I
VFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLmh0bWwKQEAgLTAsMCArMSwxNiBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIu
ZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAg
ICAgIGludGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woODAwMCwgImh0dHAi
KTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aWZyYW1lIHNyYz0icmVzb3VyY2Vz
L25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsIj48L2lm
cmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Ut
b24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNGVhMGYw
ODg1ZDVhNjNhMmVhYTc0NjdmZGQ0NDA5YjAxZDE1NWI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1w
YWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FH
RTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsJyBiZWNhdXNlIGl0
IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1I
VFRQLTAuOS1wYWdlLWJsb2NrZWQucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitD
T05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0
eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5w
bCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJv
eGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDgwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9u
cGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NB
R0U6IENhbmNlbGxlZCByZXNvdXJjZSBsb2FkIGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODA4MC9z
ZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsJyBiZWNhdXNlIGl0IGlzIHVz
aW5nIEhUVFAvMC45IG9uIGEgbm9uLWRlZmF1bHQgcG9ydC4KKworCistLS0tLS0tLQorRnJhbWU6
ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRU
UC0wLjktcGFnZS1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5
L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjAyM2ZhNGQ2OTA1YWI4OTA0ZmQwNDU1ODFiNGQ4NzdhZDIyNTA2YTQKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhU
VFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1l
c0FzVGV4dCgpOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMu
cmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cit9Cis8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9ucGgtaW1hZ2Utb24t
SFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsIj48L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3Vy
Y2VzL2JsdWUtc3F1YXJlLnBuZyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0
cC0wLjkvcmVzb3VyY2VzL2JsdWUtc3F1YXJlLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hY2E2NTc4YTM4MzI1
NTA2NTQ0ZTE1NjdkZDNkNjgxYTE5MDAzNWY1CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAxOTkK
emNtZUFTQE4/KG9sSHlgdVZCcSFpYTB2cF5ESW08cTM/I2pEKnV7YUFTWX04Pk5yYlBEUmRSbD1V
U2RqcVFtUzQ+CnpaVUluJmZnIWBLUDZ8a3wxXjkleEdCRXJIR09Mc0orV3slYjY0IXs1O1FYfGJe
MkRONDJLUz1HZntlXiQ9bHJ+fgp6KVN7QnFCR1h1cGNSKXBeby1VM2Q2PzJqajdIQjZkU3puc2JG
clE2fVUwQWBxcTx2WXd5T0czPThqfXFTXlk3MCoKamFtOEtzd2tKP00oMSFvYTN9LVNLJW1rZngj
ZW4jcHU2ezEtb0QhTTw3X0ImJQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFs
ZXJ0LWZhaWwucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNWU5ZmY5ZDhiZjE1YmYyYzcy
MjE4ZWY2MmEwZjdiOWQ2OWE1ZDQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0LWZhaWwucGwKQEAg
LTAsMCArMSwxMiBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBp
dHMgbnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNp
bGl0eS4KKworcHJpbnQgPDwnRU9GJzsKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4K
KzxwPlRoaXMgY29udGVudCBzaG91bGQgYmUgdmlzaWJsZSwgYnV0IHNjcmlwdCBzaG91bGQgbm90
IGV4ZWN1dGUuPC9wPgorPHNjcmlwdD5hbGVydCgiRkFJTCIpPC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CitFT0YKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3
NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGY4NTdk
ZjliY2FhMTUwY2Y4NmVlZTNjN2U3Zjk1ZjQ1MThlMTNkYwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWls
LnBsCkBAIC0wLDAgKzEsNSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGll
cyBvbiBpdHMgbnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRl
ciBmYWNpbGl0eS4KKworIyBXZSBlbWl0IHR3byBuZXdsaW5lIGNoYXJhY3RlcnMgdG8gc2lnbmFs
IHRoZSBlbmQgb2YgYSB0ZXh0L3BsYWluIHJlc3BvbnNlIHdpdGhvdXQgSFRUUCBoZWFkZXJzLgor
cHJpbnQgIkZBSUxcblxuIjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBv
cnQtcGFnZS1hbGxvd2VkLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFs
bG93ZWQucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMGFkZjA1ODVmNGI5M2IwMWQwMDA1NzQwZWY1ZjYzZDQ4MjM0
NjVjNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFn
ZS1hbGxvd2VkLnBsCkBAIC0wLDAgKzEsMTEgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNj
cmlwdCByZWxpZXMgb24gaXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBh
cnNlZC1oZWFkZXIgZmFjaWxpdHkuCisKK3ByaW50IDw8J0VPRic7Cis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGJvZHk+Cis8aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5
L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGwiPgorPC9ib2R5PgorPC9odG1sPgorRU9G
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhU
VFAtMC45LXBhZ2UtYmxvY2tlZC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNGFmNGRjNzYwNTg1MjI1MTQyYjBl
NGZhYWY5Y2ViNDljOTI3NjRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBh
Z2UtYmxvY2tlZC5wbApAQCAtMCwwICsxLDExIEBACisjIS91c3IvYmluL3BlcmwKKyMgVGhpcyBz
Y3JpcHQgcmVsaWVzIG9uIGl0cyBucGgtIGZpbGVuYW1lIHRvIGludm9rZSB0aGUgQ0dJIG5vbi1w
YXJzZWQtaGVhZGVyIGZhY2lsaXR5LgorCitwcmludCA8PCdFT0YnOworPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxib2R5PgorPGltZyBzcmM9Imh0dHA6Ly8xMjcuMC4wLjE6ODA4MC9zZWN1cml0
eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsIj4KKzwvYm9keT4KKzwvaHRtbD4KK0VP
RgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9y
ZXNvdXJjZXMvbnBoLWltYWdlLnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5ZGQ5NThjYjYyZTM1
ZTMyYTA5NzgxNGU2ZmEwYTk2Y2E2Mjg4MGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2UucGwKQEAg
LTAsMCArMSwxNyBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBp
dHMgbnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNp
bGl0eS4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIE1JTUU6OkJhc2U2NDsK
KworbXkgJGJsdWVTcXVhcmUgPSA8PCdFT0YnOworaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdR
QUFBQmtBUU1BQUFCS0xBY1hBQUFBRm1sVVdIUllUVXc2WTI5dExtRmtiMkpsTG5odAorY0FBQUFB
QUFhRVorR2dBQUFBWlFURlJGQUFEL0FBQUFlMksvUGdBQUFCbDBSVmgwVTI5bWRIZGhjbVVBUjNK
aGNHaHBZME52Ym5abAorY25SbGNqVmRTTzRBQUFBMVNVUkJWSGljWW1DZ0syQ2tyM1ZvZ0o4R0tn
Y1RJRGQwaDZadlJ6SVkySHcwc0FDZjM1bkkxRWNkMjBrQQorQUFBQUFQLy9Bd0RNYVFBMkVVTzZY
QUFBQUFCSlJVNUVya0pnZ2c9PQorRU9GCiskYmx1ZVNxdWFyZSA9fiBzL1xuLy9nOworCitwcmlu
dCBkZWNvZGVfYmFzZTY0KCRibHVlU3F1YXJlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWls
LnBsIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMv
bnBoLWxvYWQtcGx1Z2luLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTAwN2YwZjNlYWViOGEyOGIxNDA0
N2YwODliYTgxOTM2NjlhYTI4NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWlsLnBs
CkBAIC0wLDAgKzEsMTEgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlwdCByZWxpZXMg
b24gaXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNlZC1oZWFkZXIg
ZmFjaWxpdHkuCisKK3ByaW50IDw8J0VPRic7Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJv
ZHk+Cis8ZW1iZWQgdHlwZT0iYXBwbGljYXRpb24veC13ZWJraXQtdGVzdC1uZXRzY2FwZSI+UGx1
Z2luIGRpZCBub3QgbG9hZC48L2VtYmVkPgorPC9ib2R5PgorPC9odG1sPgorRU9GCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9u
cGgtd29ya2VyLWZhaWwucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L3Jlc291cmNlcy9ucGgtd29ya2VyLWZhaWwucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIwODRjNzdmZDEx
ZmM1MTM2NjVmNjQxMTM2MjFjNDdkNTE2ZWY3NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFp
bC5wbApAQCAtMCwwICsxLDUgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlwdCByZWxp
ZXMgb24gaXRzIG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNlZC1oZWFk
ZXIgZmFjaWxpdHkuCisKKyMgV2UgZW1pdCB0d28gbmV3bGluZSBjaGFyYWN0ZXJzIHRvIHNpZ25h
bCB0aGUgZW5kIG9mIHRoZSByZXNwb25zZSB3aXRob3V0IEhUVFAgaGVhZGVycy4KK3ByaW50ICJw
b3N0TWVzc2FnZSgnRkFJTCcpO1xuXG4iOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMtYmxvY2tlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1j
b25uZWN0LXNyYy1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZTk2MTU2YzE0YWU4
NWRkZTQ5MjdkYzA3NGM1ZjdiZmYyN2VmMTNiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMtYmxvY2tl
ZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hp
bmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBo
LXdvcmtlci1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBN
RVNTQUdFOiBDYW5jZWxsZWQgcmVzb3VyY2UgbG9hZCBmcm9tICdodHRwOi8vMTI3LjAuMC4xOjgw
MDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5wbCcgYmVjYXVz
ZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBsb2FkZWQgd2l0aCBh
IGRpZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1i
bG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dv
cmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjk1NzQwZGM3MDFkMDE4
YmQ3OWEzYzVlNWU5ZDVhZGRjOTUwMzQyYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQu
aHRtbApAQCAtMCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK3ZhciB3b3JrZXIgPSBuZXcgV29ya2VyKCJyZXNvdXJj
ZXMvbnBoLXdvcmtlci1mYWlsLnBsIik7Cit3b3JrZXIub25tZXNzYWdlID0gKCkgPT4geyBhbGVy
dEFuZERvbmUoIkZBSUwiKTsgfQord29ya2VyLm9uZXJyb3IgPSAoKSA9PiB7IGFsZXJ0QW5kRG9u
ZSgiUEFTUyIpOyB9CisKK2Z1bmN0aW9uIGFsZXJ0QW5kRG9uZShtZXNzYWdlKQoreworICAgIGFs
ZXJ0KG1lc3NhZ2UpOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWlt
cG9ydFNjcmlwdHMtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjBlOTYxNTZjMTRhZTg1ZGRlNDkyN2RjMDc0YzVmN2JmZjI3ZWYxM2IK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NCBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAv
c2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5wbCcgYmVjYXVzZSBp
dCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291cmNl
IGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291
cmNlcy9ucGgtd29ya2VyLWZhaWwucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkgYW5k
IHRoZSBkb2N1bWVudCB3YXMgbG9hZGVkIHdpdGggYSBkaWZmZXJlbnQgSFRUUCB2ZXJzaW9uLgor
QUxFUlQ6IFBBU1MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS93b3JrZXItaW1wb3J0U2NyaXB0cy1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2Nr
ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4zZTNiZjEwYzk5NGU1YTZkMjY1MTgwMThiZmQ0NjllNzM2OGI0
NGQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS93b3JrZXItaW1wb3J0U2NyaXB0cy1ibG9ja2VkLmh0bWwKQEAgLTAsMCArMSwzMiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
dGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3Jp
cHQ+Cit2YXIgc2NyaXB0ID0gWworICAgICd0cnkgeycsCisgICAgJyAgIGltcG9ydFNjcmlwdHMo
Imh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLXdv
cmtlci1mYWlsLnBsIik7JywKKyAgICAnfSBjYXRjaCAoZSkgeycsCisgICAgJyAgIHBvc3RNZXNz
YWdlKCJQQVNTIik7JywKKyAgICAnfScsCitdLmpvaW4oIlxuIik7CisKK3ZhciB3b3JrZXIgPSBu
ZXcgV29ya2VyKHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtzY3JpcHRdKSkp
Oword29ya2VyLm9ubWVzc2FnZSA9IChtZXNzYWdlRXZlbnQpID0+IHsgYWxlcnRBbmREb25lKG1l
c3NhZ2VFdmVudC5kYXRhKTsgfQorCitmdW5jdGlvbiBhbGVydEFuZERvbmUobWVzc2FnZSkKK3sK
KyAgICBhbGVydChtZXNzYWdlKTsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3ho
ci1hc3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2IyYmRhYzc2NzE2ZmM0YTAwYjJmZDg2N2YxODg3MDA5NWExNDE1ZQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkveGhyLWFzeW5jaHJvbm91cy1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAK
K0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3Vy
aXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtZmFpbC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBI
VFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291cmNlIGxvYWQgZnJvbSAn
aHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtZmFp
bC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBs
b2FkZWQgd2l0aCBhIGRpZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3lu
Y2hyb25vdXMtYmxvY2tlZC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS94aHItYXN5bmNocm9ub3VzLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjU2Njk1
YThjN2NlYWJmOTA3MDI3Mzc4Y2E2NDVhMTQ1MWY1MWVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS94aHItYXN5bmNocm9ub3VzLWJs
b2NrZWQuaHRtbApAQCAtMCwwICsxLDMxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Cit9Cis8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2NvbnN0IGlzQXN5bmNocm9ub3VzID0gdHJ1
ZTsKK3ZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3Q7Cit4aHIub3BlbigiR0VUIiwgInJlc291
cmNlcy9ucGgtZmFpbC5wbCIsIGlzQXN5bmNocm9ub3VzKTsKK3hoci5vbmxvYWQgPSAoKSA9PiB7
IGFsZXJ0QW5kRG9uZSgiRkFJTCIpOyB9Cit4aHIub25lcnJvciA9ICgpID0+IHsKKyAgICAvLyBG
SVhNRTogQXNzZXJ0IHRoYXQgYSBzcGVjaWZpYyBlcnJvciBvY2N1cnJlZC4KKyAgICBhbGVydEFu
ZERvbmUoIlBBU1MiKTsKK30KK3hoci5zZW5kKCk7CisKK2Z1bmN0aW9uIGFsZXJ0QW5kRG9uZSht
ZXNzYWdlKQoreworICAgIGFsZXJ0KG1lc3NhZ2UpOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>293981</attachid>
            <date>2016-11-04 20:49:28 -0700</date>
            <delta_ts>2016-11-07 09:37:01 -0800</delta_ts>
            <desc>Patch and layout tests</desc>
            <filename>bug-164389-20161104204525.patch</filename>
            <type>text/plain</type>
            <size>35048</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA4NDEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTRiNjQ0ZWEwNGVkNThh
MTU0ZTU0MDFhYzI4Y2Q1ODFjZTdkMTMwYS4uMWQxNTI2YjlhMjlkNjI2ODk1OTE5NWVlMWE4MmVj
ZWJmMzAyZWViNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDE2LTExLTA0ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgdGVzdCBpbmZyYXN0
cnVjdHVyZSBhbmQgdGVzdHMgZm9yIGV4aXN0aW5nIEhUVFAgMC45IHNhbmRib3ggbWFjaGluZXJ5
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQzODkK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI5MTAxMDcyPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHN1
cHBvcnQgcmVnaXN0ZXJpbmcgYW4gYXJiaXRyYXJ5IHBvcnQgYXMgdGhlIGRlZmF1bHQgcG9ydAor
ICAgICAgICBmb3IgYSBwcm90b2NvbC4gVGhlIGJlaGF2aW9yIG9mIHZhcmlvdXMgbWFjaGluZXJ5
LCBpbmNsdWRpbmcgdGhlIEhUVFAgMC45IG1hY2hpbmVyeSwKKyAgICAgICAgY2FuIGJlIGVmZmVj
dGVkIGJ5IHdoZXRoZXIgdGhlIHJlc291cmNlIHJlcXVlc3Qgd2FzIG1hZGUgdXNpbmcgdGhlIGRl
ZmF1bHQgcG9ydCBmb3IKKyAgICAgICAgdGhlIHByb3RvY29sLiBXZSBleHBvc2Ugd2luZG93Lmlu
dGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0Rm9yUHJvdG9jb2woKSB0byBhbGxvdworICAgICAg
ICBhIHRlc3QgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgcG9ydCBhc3NvY2lhdGVkIHdpdGggYSBw
cm90b2NvbCBzbyBhcyB0byBzdXBwb3J0CisgICAgICAgIHRlc3RpbmcgdGhlc2UgY29kZSBwYXRo
cyB1c2luZyB0aGUgZXhpc3RpbmcgcG9ydCA4MDAwIHNlcnZlciBzdGFydGVkIGJ5IHJ1bi13ZWJr
aXQtaHR0cGQuCisgICAgICAgIFdpdGhvdXQgd2luZG93LmludGVybmFscy5yZWdpc3RlckRlZmF1
bHRQb3J0Rm9yUHJvdG9jb2woKSB3ZSB3b3VsZCBuZWVkIHRvIHRlYWNoCisgICAgICAgIHJ1bi13
ZWJraXQtaHR0cGQgdG8gcnVuIGEgd2ViIHNlcnZlciBvbiBwb3J0IDgwLCB3aGljaCByZXF1aXJl
cyBzdXBlcnVzZXIgcHJpdmlsZWdlcworICAgICAgICAoc2luY2UgaXQgaXMgYSBwcml2aWxlZ2Vk
IHBvcnQgbnVtYmVyKSBhbmQgaXMgbW9yZSBsaWtlbHkgdG8gaW50ZXJmZXJlIHdpdGggYW4KKyAg
ICAgICAgZXhpc3Rpbmcgd2ViIHNlcnZlciBzZXR1cC4KKworICAgICAgICBUZXN0czogaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQuaHRtbAor
ICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQt
c2NyaXB0LWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9pZnJhbWUtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbAorICAgICAgICAgICAgICAgaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFn
ZS1hbGxvd2VkLXJlZi10ZXN0Lmh0bWwKKyAgICAgICAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5o
dG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LXBhZ2UtYmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3Nl
Y3VyaXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLmh0bWwKKyAgICAgICAg
ICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMt
YmxvY2tlZC5odG1sCisgICAgICAgICAgICAgICBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9VUkwu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZvclRlc3Rp
bmcpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90
b2NvbEZvclRlc3RpbmcpOiBBZGRzIHRoZSBzcGVjaWZpZWQgKHByb3RvY29sLCBwb3J0KSB0byB0
aGUKKyAgICAgICAgbWFwcGluZyB1c2VkIGZvciB0ZXN0aW5nLgorICAgICAgICAoV2ViQ29yZTo6
Y2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZyk6IENsZWFycyB0aGUgcHJv
dG9jb2wgdG8gZGVmYXVsdCBwb3J0IHRlc3RpbmcgbWFwLgorICAgICAgICBXZSBjYWxsIHRoaXMg
ZnVuY3Rpb24gZnJvbSBJbnRlcm5hbHM6OnJlc2V0VG9Db25zaXN0ZW50U3RhdGUoKSBzbyB0aGF0
IHRoZSBtYXBwaW5nIGlzIGNsZWFyZWQgYmV0d2VlbgorICAgICAgICB0ZXN0IHJ1bnMuCisgICAg
ICAgIChXZWJDb3JlOjpkZWZhdWx0UG9ydEZvclByb3RvY29sKTogTW9kaWZpZWQgdG8gY2hlY2sg
dGhlIHByb3RvY29sIHRvIGRlZmF1bHQgcG9ydCBtYXAgZm9yIHRlc3RpbmcKKyAgICAgICAgYmVm
b3JlIGNvbnN1bHRpbmcgVVJMUGFyc2VyOjpkZWZhdWx0UG9ydEZvclByb3RvY29sKCkuCisgICAg
ICAgICogcGxhdGZvcm0vVVJMLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjpyZXNldFRvQ29uc2lzdGVudFN0YXRlKTogQ2xl
YXIgdGhlIGRlZmF1bHQgcG9ydCBtYXBwaW5nIHVzZWQgZm9yIHRlc3RpbmcuCisgICAgICAgIChX
ZWJDb3JlOjpJbnRlcm5hbHM6OnJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCk6IEFkZGVk
LgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRl
cm5hbHMuaWRsOiBBZGRlZCBkZWNsYXJhdGlvbiBmb3IgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclBy
b3RvY29sKCkuCisKIDIwMTYtMTEtMDQgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFp
bC5jb20+CiAKICAgICAgICAgW0RPTUpJVF0gQWRkIERPTUpJVDo6U2lnbmF0dXJlIGFubm90YXRp
b24gdG8gRG9jdW1lbnQ6OmdldEVsZW1lbnRCeUlkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9VUkwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmNwcAppbmRl
eCA2Mzg4NjU0OTY5N2U1MTY1Mzg0Nzg3MGI5YTcwYjgyZDcyZmI1YThlLi45ZjUxM2RmMzNiNzFi
Mzk1ZDc3ZDUzYTA5ZTE0MGMzYzFhOTgyMTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9VUkwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5jcHAKQEAg
LTgwMCw4ICs4MDAsMzAgQEAgc3RhdGljIHZvaWQgYXNzZXJ0UHJvdG9jb2xJc0dvb2QoU3RyaW5n
VmlldyBwcm90b2NvbCkKIAogI2VuZGlmCiAKK3VzaW5nIERlZmF1bHRQb3J0Rm9yUHJvdG9jb2xN
YXBGb3JUZXN0aW5nID0gSGFzaE1hcDxTdHJpbmcsIHVpbnQxNl90PjsKK3N0YXRpYyBEZWZhdWx0
UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZyYgZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcEZv
clRlc3RpbmcoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEZWZhdWx0UG9ydEZvclBy
b3RvY29sTWFwRm9yVGVzdGluZz4gZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcDsKKyAgICByZXR1
cm4gZGVmYXVsdFBvcnRGb3JQcm90b2NvbE1hcDsKK30KKwordm9pZCByZWdpc3RlckRlZmF1bHRQ
b3J0Rm9yUHJvdG9jb2xGb3JUZXN0aW5nKHVpbnQxNl90IHBvcnQsIGNvbnN0IFN0cmluZyYgcHJv
dG9jb2wpCit7CisgICAgLy8gSXQgaXMgc3VmZmljaWVudCB0byB0cmVhdCB0aGUgSUVURiBSRkMg
NjMzNSByZXNlcnZlZCBwb3J0IDAgYXMgaW52YWxpZCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4KKyAg
ICBBU1NFUlQocG9ydCA+IDApOworICAgIGRlZmF1bHRQb3J0Rm9yUHJvdG9jb2xNYXBGb3JUZXN0
aW5nKCkuYWRkKHByb3RvY29sLCBwb3J0KTsKK30KKwordm9pZCBjbGVhckRlZmF1bHRQb3J0Rm9y
UHJvdG9jb2xNYXBGb3JUZXN0aW5nKCkKK3sKKyAgICBkZWZhdWx0UG9ydEZvclByb3RvY29sTWFw
Rm9yVGVzdGluZygpLmNsZWFyKCk7Cit9CisKIE9wdGlvbmFsPHVpbnQxNl90PiBkZWZhdWx0UG9y
dEZvclByb3RvY29sKFN0cmluZ1ZpZXcgcHJvdG9jb2wpCiB7CisgICAgLy8gSXQgaXMgc3VmZmlj
aWVudCB0byB0cmVhdCB0aGUgSUVURiBSRkMgNjMzNSByZXNlcnZlZCBwb3J0IDAgYXMgaW52YWxp
ZCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4KKyAgICBpZiAodWludDE2X3QgZGVmYXVsdFBvcnQgPSBk
ZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygpLmdldChwcm90b2NvbC50b1N0cmlu
Z1dpdGhvdXRDb3B5aW5nKCkpKQorICAgICAgICByZXR1cm4gZGVmYXVsdFBvcnQ7CiAgICAgcmV0
dXJuIFVSTFBhcnNlcjo6ZGVmYXVsdFBvcnRGb3JQcm90b2NvbChwcm90b2NvbCk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1VSTC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vVVJMLmgKaW5kZXggNzEwZWE1MTNiOGUyOTViMTFiN2NhOTYzNjhkMmU2OGNkMmMy
ZDQxOC4uNzJjOGMxYmY2MmNjODYxYmU4ZmRlMDIxMDgwZDY2MjMyZDY5YmQyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVVJMLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVVJMLmgKQEAgLTMxNSw2ICszMTUsOSBAQCBPcHRpb25hbDx1aW50MTZfdD4gZGVmYXVs
dFBvcnRGb3JQcm90b2NvbChTdHJpbmdWaWV3IHByb3RvY29sKTsKIFdFQkNPUkVfRVhQT1JUIGJv
b2wgaXNEZWZhdWx0UG9ydEZvclByb3RvY29sKHVpbnQxNl90IHBvcnQsIFN0cmluZ1ZpZXcgcHJv
dG9jb2wpOwogV0VCQ09SRV9FWFBPUlQgYm9vbCBwb3J0QWxsb3dlZChjb25zdCBVUkwmKTsgLy8g
QmxhY2tsaXN0IHBvcnRzIHRoYXQgc2hvdWxkIG5ldmVyIGJlIHVzZWQgZm9yIFdlYiByZXNvdXJj
ZXMuCiAKK1dFQkNPUkVfRVhQT1JUIHZvaWQgcmVnaXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29s
Rm9yVGVzdGluZyh1aW50MTZfdCBwb3J0LCBjb25zdCBTdHJpbmcmIHByb3RvY29sKTsKK1dFQkNP
UkVfRVhQT1JUIHZvaWQgY2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygp
OworCiBib29sIGlzVmFsaWRQcm90b2NvbChjb25zdCBTdHJpbmcmKTsKIAogU3RyaW5nIG1pbWVU
eXBlRnJvbURhdGFVUkwoY29uc3QgU3RyaW5nJiB1cmwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCmluZGV4IDU5MTdmYTBhZDA5ZmMwMjA5NDIxMTZkOWY0N2I4NDhhMzA4YzE3ZjUu
LmU4OTlmOTM3OTZjYTkwYTZiOGQzMzcxYTI0OWY0YTUyMjU4MGIwZjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTM3NSw2ICszNzUsNyBAQCB2b2lkIEludGVybmFsczo6
cmVzZXRUb0NvbnNpc3RlbnRTdGF0ZShQYWdlJiBwYWdlKQogI2VuZGlmCiAgICAgfQogCisgICAg
V2ViQ29yZTo6Y2xlYXJEZWZhdWx0UG9ydEZvclByb3RvY29sTWFwRm9yVGVzdGluZygpOwogICAg
IFdlYkNvcmU6Om92ZXJyaWRlVXNlclByZWZlcnJlZExhbmd1YWdlcyhWZWN0b3I8U3RyaW5nPigp
KTsKICAgICBXZWJDb3JlOjpTZXR0aW5nczo6c2V0VXNlc092ZXJsYXlTY3JvbGxiYXJzKGZhbHNl
KTsKICAgICBXZWJDb3JlOjpTZXR0aW5nczo6c2V0VXNlc01vY2tTY3JvbGxBbmltYXRvcihmYWxz
ZSk7CkBAIC0yMTcwLDYgKzIxNzEsMTEgQEAgdm9pZCBJbnRlcm5hbHM6OnJlbW92ZVVSTFNjaGVt
ZVJlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25zdAogICAgIFNj
aGVtZVJlZ2lzdHJ5OjpyZW1vdmVVUkxTY2hlbWVSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50
U2VjdXJpdHlQb2xpY3koc2NoZW1lKTsKIH0KIAordm9pZCBJbnRlcm5hbHM6OnJlZ2lzdGVyRGVm
YXVsdFBvcnRGb3JQcm90b2NvbCh1bnNpZ25lZCBzaG9ydCBwb3J0LCBjb25zdCBTdHJpbmcmIHBy
b3RvY29sKQoreworICAgIHJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbEZvclRlc3Rpbmco
cG9ydCwgcHJvdG9jb2wpOworfQorCiBSZWY8TWFsbG9jU3RhdGlzdGljcz4gSW50ZXJuYWxzOjpt
YWxsb2NTdGF0aXN0aWNzKCkgY29uc3QKIHsKICAgICByZXR1cm4gTWFsbG9jU3RhdGlzdGljczo6
Y3JlYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCBmOWNjYTZlYmUyNzBh
MmJjYTlmMWFjMDU3ZTYzY2Y3MTgyY2ZmYzg5Li40ZDIwZjlmODEyMTY5ZTU1YWJlNDNhNzFiODcw
NjZhYjk0ZTYzYmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTMxNCw2ICsz
MTQsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29u
dGVudFNlY3VyaXR5UG9saWN5KGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKICAgICB2b2lkIHJlbW92
ZVVSTFNjaGVtZVJlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25z
dCBTdHJpbmcmIHNjaGVtZSk7CiAKKyAgICB2b2lkIHJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90
b2NvbCh1bnNpZ25lZCBzaG9ydCBwb3J0LCBjb25zdCBTdHJpbmcmIHByb3RvY29sKTsKKwogICAg
IFJlZjxNYWxsb2NTdGF0aXN0aWNzPiBtYWxsb2NTdGF0aXN0aWNzKCkgY29uc3Q7CiAgICAgUmVm
PFR5cGVDb252ZXJzaW9ucz4gdHlwZUNvbnZlcnNpb25zKCkgY29uc3Q7CiAgICAgUmVmPE1lbW9y
eUluZm8+IG1lbW9yeUluZm8oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlk
bAppbmRleCAwM2Q1MzU4NGU3MWMyZmE0Mjc4ZmZiNzFjYzQyYTkwNWRmM2YwZTlkLi44OTYxMmQy
MjRlODE0MTgyMDZhMzQwZTgwY2ZlZjkxYTQ4Y2RjMzFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaWRsCkBAIC0zMDQsNiArMzA0LDggQEAgZW51bSBVc2VySW50ZXJmYWNlTGF5b3V0
RGlyZWN0aW9uIHsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50
U2VjdXJpdHlQb2xpY3koRE9NU3RyaW5nIHNjaGVtZSk7CiAgICAgdm9pZCByZW1vdmVVUkxTY2hl
bWVSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koRE9NU3RyaW5nIHNj
aGVtZSk7CiAKKyAgICB2b2lkIHJlZ2lzdGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCh1bnNpZ25l
ZCBzaG9ydCBwb3J0LCBET01TdHJpbmcgc2NoZW1lKTsKKwogICAgIE1hbGxvY1N0YXRpc3RpY3Mg
bWFsbG9jU3RhdGlzdGljcygpOwogICAgIFR5cGVDb252ZXJzaW9ucyB0eXBlQ29udmVyc2lvbnMo
KTsKICAgICBNZW1vcnlJbmZvIG1lbW9yeUluZm8oKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNzE1OGQxNTgwYWQxMDY1
MGVjODAzN2RmMDY4YmNlZDRiNzNkZDNjLi44Njc4NDE3ODE3MTgxMGQ0MzVkM2ViNzQ0NzhlZjI3
MzM1MDMwZjI5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDYgQEAKKzIwMTYtMTEtMDQgIERhbmllbCBCYXRl
cyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCB0ZXN0IGluZnJhc3RydWN0dXJl
IGFuZCB0ZXN0cyBmb3IgZXhpc3RpbmcgSFRUUCAwLjkgc2FuZGJveCBtYWNoaW5lcnkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NDM4OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vMjkxMDEwNzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIHRlc3RzIGZvciB0aGUgZXhpc3RpbmcgSFRUUCAwLjkg
c2FuZGJveCBtYWNoaW5lcnkuIFVudGlsIHdlIGZpeCA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE2NDM4Nz4sCisgICAgICAgIHRoZXNlIHRlc3RzIGNhbiBvbmx5IGJl
IHJ1biBzaW5nbHkgKGkuZS4gcGFzcyAtLXJ1bi1zaW5nbHkgdG8gcnVuLXdlYmtpdC10ZXN0cyku
IFNvLCB3ZSBza2lwCisgICAgICAgIHRoZXNlIHRlc3RzIHRvIGF2b2lkIHRlc3QgZmFpbHVyZXMg
d2hlbiBydW4td2Via2l0LXRlc3RzIHJ1bnMgaW4gcGFyYWxsZWwgbW9kZSAodGhlIGRlZmF1bHQK
KyAgICAgICAgbW9kZSBhbmQgdGhlIG1vZGUgdXNlZCBvbiB0aGUgYnVpbGRib3RzKS4KKworICAg
ICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1wbHVn
aW4tYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXNjcmlw
dC1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0
cC0wLjkvaWZyYW1lLWJsb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRw
L3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2UtYmxvY2tlZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1h
Z2UtYmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lt
YWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QtZXhwZWN0
ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9p
bWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLXJlZi10ZXN0Lmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24t
SFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxv
Y2tlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL2JsdWUtc3F1YXJl
LnBuZzogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNv
dXJjZXMvbnBoLWFsZXJ0LWZhaWwucGw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBsOiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0w
LjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5wbDogQWRkZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBh
Z2UtYmxvY2tlZC5wbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFpbC5wbDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBo
LXdvcmtlci1mYWlsLnBsOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMt
YmxvY2tlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L3dvcmtlci1pbXBvcnRTY3JpcHRzLWJsb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBvcnRTY3JpcHRz
LWJsb2NrZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS94aHItYXN5bmNocm9ub3VzLWJsb2NrZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tl
ZC5odG1sOiBBZGRlZC4KKwogMjAxNi0xMS0wNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVh
QGdtYWlsLmNvbT4KIAogICAgICAgICBbRE9NSklUXSBBZGQgRE9NSklUOjpTaWduYXR1cmUgYW5u
b3RhdGlvbiB0byBEb2N1bWVudDo6Z2V0RWxlbWVudEJ5SWQKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IGVjZDQ1Y2U4Y2MxZmE2OTNmMzMyOGQxYmFhYzI0YTJhYzM2YzhlMmMuLmMzMzk0M2VhMWQzNDg3
NmY1NzJhOTk1ZDU5OTgwODg0ZmFkNDIzZWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNjYsNiAr
NjYsOSBAQCBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC13cmFwcGluZy1hY3Rpb24uaHRtbAog
IyBPbmx5IGlPUyBoYXMgc2VsZWN0aW9uIFVJIGRyYXduIGJ5IFVJS2l0CiBlZGl0aW5nL3NlbGVj
dGlvbi9jaGFyYWN0ZXItZ3JhbnVsYXJpdHktcmVjdC5odG1sIFsgU2tpcCBdCiAKKyMgVW50aWwg
d2UgZml4IHdlYmtpdC5vcmcvYi8xNjQzODcgdGhlc2UgdGVzdHMgd2lsbCBvbmx5IHBhc3Mgd2hl
biBydW4gc2luZ2x5IChpLmUuIHBhc3MgLS1ydW4tc2luZ2x5IHRvIHJ1bi13ZWJraXQtdGVzdHMp
Lgord2Via2l0Lm9yZy9iLzE2NDM4NyBodHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45IFsgU2tp
cCBdCisKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICMgRW5kIHBsYXRmb3Jt
LXNwZWNpZmljIHRlc3RzLgogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0
LXBvcnQtcGx1Z2luLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtcGx1Z2luLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjQ3ODhhM2U0ODIzMWQ2MmIwNTU5MDlkODQ5ZmI3Nzk4NmVmOTgzYWIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MSBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAv
c2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWlsLnBsJyBiZWNh
dXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1sb2Fk
LXBsdWdpbi1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBN
RVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0w
LjkvcmVzb3VyY2VzL25waC1sb2FkLXBsdWdpbi1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5n
IEhUVFAvMC45LgorVGhpcyB0ZXN0cyB0aGF0IGxvYWRpbmcgb2YgYSBwbHVnaW4gaXMgYmxvY2tl
ZCBpbiBhIEhUVFAgMC45IHJlc3BvbnNlIHNlcnZlZCBvdmVyIHBvcnQgODAuIFRoaXMgdGVzdCBQ
QVNTRUQgaWYgeW91IHNlZSBjb250ZW50IGluIHRoZSBpZnJhbWUgYmVsb3cuIE90aGVyd2lzZSwg
aXQgRkFJTEVELgorCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1m
cmFtZTAtLT4tLT4nCistLS0tLS0tLQorUGx1Z2luIGRpZCBub3QgbG9hZC4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXBs
dWdpbi1ibG9ja2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L2RlZmF1bHQtcG9ydC1wbHVnaW4tYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhiMTViNGM1
ZWY3YTg4ZGVjYTAxMTBkMjdhZjIyNjU4ODBmNmMzYWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1wbHVnaW4t
YmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOwor
ICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBpbnRlcm5hbHMucmVnaXN0ZXJEZWZh
dWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3RzIHRoYXQgbG9hZGluZyBvZiBh
IHBsdWdpbiBpcyBibG9ja2VkIGluIGEgSFRUUCAwLjkgcmVzcG9uc2Ugc2VydmVkIG92ZXIgcG9y
dCA4MC4gVGhpcyB0ZXN0IFBBU1NFRCBpZiB5b3Ugc2VlIGNvbnRlbnQgaW4gdGhlIGlmcmFtZSBi
ZWxvdy4gT3RoZXJ3aXNlLCBpdCBGQUlMRUQuPC9wPgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9u
cGgtbG9hZC1wbHVnaW4tZmFpbC5wbCI+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQt
cG9ydC1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L2RlZmF1bHQtcG9ydC1zY3JpcHQtYmxvY2tlZC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZGUyNzg0ODUzNjcwMGE4MWVjOTliYzY0Y2MxMDhlYTkxMGUxM2E3NQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkvZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEy
IEBACitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9z
ZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0LWZhaWwucGwnIGJlY2F1c2UgaXQg
aXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8x
MjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWFsZXJ0LWZhaWwu
cGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NBR0U6IFNhbmRi
b3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMv
bnBoLWFsZXJ0LWZhaWwucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xF
IE1FU1NBR0U6IEJsb2NrZWQgc2NyaXB0IGV4ZWN1dGlvbiBpbiAnaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbCcgYmVjYXVz
ZSB0aGUgZG9jdW1lbnQncyBmcmFtZSBpcyBzYW5kYm94ZWQgYW5kIHRoZSAnYWxsb3ctc2NyaXB0
cycgcGVybWlzc2lvbiBpcyBub3Qgc2V0LgorVGhpcyB0ZXN0cyB0aGF0IEphdmFTY3JpcHQgaXMg
YmxvY2tlZCBpbiBhIEhUVFAgMC45IHJlc3BvbnNlIHNlcnZlZCBvdmVyIHBvcnQgODAuIFRoaXMg
dGVzdCBQQVNTRUQgaWYgeW91IHNlZSBjb250ZW50IGluIHRoZSBpZnJhbWUgYmVsb3cgYW5kIGRv
IG5vdCBzZWUgYSBKYXZhU2NyaXB0IGFsZXJ0LiBPdGhlcndpc2UsIGl0IEZBSUxFRC4gVGhpcyBw
YWdlIGFuZCBpdHMgc3VicmVzb3VyY2VzIG11c3QgYmUgc2VydmVkIG92ZXIgcG9ydCA4MCB0byBy
dW4gdGhpcyB0ZXN0IGJ5IGhhbmQuCisKKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQ
YXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCitUaGlzIGNvbnRlbnQgc2hvdWxkIGJl
IHZpc2libGUsIGJ1dCBzY3JpcHQgc2hvdWxkIG5vdCBleGVjdXRlLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9kZWZhdWx0LXBvcnQtc2NyaXB0
LWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkv
ZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIzNzRmNDFlYjhl
ZTJkNDMxZjk0M2MxMDYzYTYxOTE0M2U0NmU3YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvZGVmYXVsdC1wb3J0LXNjcmlwdC1ibG9j
a2VkLmh0bWwKQEAgLTAsMCArMSwxNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAg
aWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5yZWdpc3RlckRlZmF1bHRQ
b3J0Rm9yUHJvdG9jb2woODAwMCwgImh0dHAiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPlRoaXMgdGVzdHMgdGhhdCBKYXZhU2NyaXB0IGlzIGJs
b2NrZWQgaW4gYSBIVFRQIDAuOSByZXNwb25zZSBzZXJ2ZWQgb3ZlciBwb3J0IDgwLiBUaGlzIHRl
c3QgUEFTU0VEIGlmIHlvdSBzZWUgY29udGVudCBpbiB0aGUgaWZyYW1lIGJlbG93IGFuZCBkbyBu
b3Qgc2VlIGEgSmF2YVNjcmlwdCBhbGVydC4gT3RoZXJ3aXNlLCBpdCBGQUlMRUQuIFRoaXMgcGFn
ZSBhbmQgaXRzIHN1YnJlc291cmNlcyBtdXN0IGJlIHNlcnZlZCBvdmVyIHBvcnQgODAgdG8gcnVu
IHRoaXMgdGVzdCBieSBoYW5kLjwvcD4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvbnBoLWFsZXJ0
LWZhaWwucGwiPjwvaWZyYW1lPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lmcmFtZS1i
bG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zN2JmZjM2ZGU0MTBhMWQxMzg5OTU0N2Zm
YWM2OWMxNmZiZTA3NzU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw4IEBACitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGwnIGJlY2F1c2UgaXQgaXMg
dXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NBR0U6IFN0b3BwZWQgZG9jdW1lbnQgbG9hZCBm
cm9tICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25w
aC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45IG9uIGEgbm9uLWRlZmF1bHQg
cG9ydC4KKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0t
Pi0tPicKKy0tLS0tLS0tCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2Vj
dXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvc2VjdXJpdHkvaHR0cC0wLjkvaWZyYW1lLWJsb2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iN2Rm
MmZiMWYzM2E1MGRjNjM1NTU4MjkxMGE0OWQ3ZTU3ZjI2MDdjCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pZnJhbWUtYmxvY2tlZC5o
dG1sCkBAIC0wLDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxz
Y3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOworfQorPC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvbnBoLWZhaWwucGwi
PjwvaWZyYW1lPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2UtYmxvY2tlZC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYmUwODNiZjBkOTY2YTEyODYxYWI3NDRiZTc1MmU1MGRiNGQy
ZDZjNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
aHR0cC0wLjkvaW1hZ2UtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitDT05T
T0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9o
dHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAv
MC45LgorQ09OU09MRSBNRVNTQUdFOiBDYW5jZWxsZWQgcmVzb3VyY2UgbG9hZCBmcm9tICdodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5w
bCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBsb2Fk
ZWQgd2l0aCBhIGRpZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLWJsb2Nr
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Ut
YmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhjYzI0MDFjNTkyMTZkZDMxZmFiNDczMzY5ZDA4YTVl
YjBiNjhjOTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2h0dHAtMC45L2ltYWdlLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxpbWcgc3JjPSJyZXNvdXJjZXMvbnBoLWltYWdlLnBsIiBvbmxvYWQ9ImFsZXJ0KCdGQUlM
JykiIG9uZXJyb3I9ImFsZXJ0KCdQQVNTJykiPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQ
LTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1w
b3J0LXBhZ2UtYWxsb3dlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDAxMGY5MjIyMTVmY2Nm
YzM2MmQ2NmFjZWM3OGMyZWEwYTI4ZGVmYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1w
b3J0LXBhZ2UtYWxsb3dlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQ09OU09MRSBN
RVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0w
LjkvcmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxv
d2VkLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBT
YW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3Vy
Y2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsJyBi
ZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5n
ICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1p
bWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLnBsJyBiZWNhdXNlIGl0
IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5wbCcg
YmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGlu
ZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgt
aW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCisKKworLS0tLS0tLS0KK0Zy
YW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9u
LUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QtZXhwZWN0ZWQuaHRt
bCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRU
UC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1yZWYtdGVzdC1leHBlY3RlZC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmYyNjllNDVhNTMyZWNlMzk1Yzc1OTBhZGIyZWJjZTgxNWU5NDVmZDIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2lt
YWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQtcmVmLXRlc3QtZXhwZWN0
ZWQuaHRtbApAQCAtMCwwICsxLDYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4K
KzxpZnJhbWUgc3JjZG9jPSc8aW1nIHNyYz0icmVzb3VyY2VzL2JsdWUtc3F1YXJlLnBuZyI+Jz48
L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBh
Z2UtYWxsb3dlZC1yZWYtdGVzdC5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1kZWZhdWx0LXBvcnQtcGFnZS1hbGxvd2VkLXJl
Zi10ZXN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjgzMmZiY2U1ZGUzZjAwMWE5ZGU0ZWVhZGM0NmQxOWUz
MmEzNmJhMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC1y
ZWYtdGVzdC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgICBpbnRlcm5hbHMucmVn
aXN0ZXJEZWZhdWx0UG9ydEZvclByb3RvY29sKDgwMDAsICJodHRwIik7Cis8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGlmcmFtZSBzcmM9InJlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0w
LjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5wbCI+PC9pZnJhbWU+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45
L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktZGVm
YXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZkNTdkNTAyMjM1ZWYzODY5
NWVhN2I4OTkzZWJhM2MxZWVhOGI1NWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9y
dC1wYWdlLWFsbG93ZWQuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1Rl
eHQoKTsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnJlZ2lz
dGVyRGVmYXVsdFBvcnRGb3JQcm90b2NvbCg4MDAwLCAiaHR0cCIpOworfQorPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxpZnJhbWUgc3JjPSJyZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAt
MC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQucGwiPjwvaWZyYW1lPgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAu
OS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJs
b2NrZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM0ZWEwZjA4ODVkNWE2M2EyZWFhNzQ2N2Zk
ZDQ0MDliMDFkMTU1YjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L2ltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tlZC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1v
bi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjku
CitDT05TT0xFIE1FU1NBR0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1
cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LXBhZ2UtYmxvY2tl
ZC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogU2Fu
ZGJveGluZyAnaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNl
cy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsJyBiZWNhdXNlIGl0IGlzIHVz
aW5nIEhUVFAvMC45LgorQ09OU09MRSBNRVNTQUdFOiBTYW5kYm94aW5nICdodHRwOi8vMTI3LjAu
MC4xOjgwODAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5wbCcgYmVjYXVz
ZSBpdCBpcyB1c2luZyBIVFRQLzAuOS4KK0NPTlNPTEUgTUVTU0FHRTogQ2FuY2VsbGVkIHJlc291
cmNlIGxvYWQgZnJvbSAnaHR0cDovLzEyNy4wLjAuMTo4MDgwL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtaW1hZ2UucGwnIGJlY2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkgb24gYSBu
b24tZGVmYXVsdCBwb3J0LgorCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88
IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQu
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24t
SFRUUC0wLjktcGFnZS1ibG9ja2VkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDIzZmE0ZDY5MDVhYjg5MDRm
ZDA0NTU4MWI0ZDg3N2FkMjI1MDZhNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2Vk
Lmh0bWwKQEAgLTAsMCArMSwxNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgaWYg
KHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5yZWdpc3RlckRlZmF1bHRQb3J0
Rm9yUHJvdG9jb2woODAwMCwgImh0dHAiKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8aWZyYW1lIHNyYz0icmVzb3VyY2VzL25waC1pbWFnZS1vbi1IVFRQLTAuOS1wYWdlLWJsb2Nr
ZWQucGwiPjwvaWZyYW1lPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvYmx1ZS1zcXVhcmUucG5n
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvYmx1
ZS1zcXVhcmUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFjYTY1NzhhMzgzMjU1MDY1NDRlMTU2N2RkM2Q2ODFh
MTkwMDM1ZjUKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDE5OQp6Y21lQVNATj8ob2xIeWB1VkJx
IWlhMHZwXkRJbTxxMz8jakQqdXthQVNZfTg+TnJiUERSZFJsPVVTZGpxUW1TND4KelpVSW4mZmch
YEtQNnxrfDFeOSV4R0JFckhHT0xzSitXeyViNjQhezU7UVh8Yl4yRE40MktTPUdme2VeJD1scn5+
CnopU3tCcUJHWHVwY1IpcF5vLVUzZDY/MmpqN0hCNmRTem5zYkZyUTZ9VTBBYHFxPHZZd3lPRzM9
OGp9cVNeWTcwKgpqYW04S3N3a0o/TSgxIW9hM30tU0slbWtmeCNlbiNwdTZ7MS1vRCFNPDdfQiYl
CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1hbGVydC1m
YWlsLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ1ZTlmZjlkOGJmMTViZjJjNzIyMThlZjYyYTBmN2I5ZDY5YTVk
NDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0
dHAtMC45L3Jlc291cmNlcy9ucGgtYWxlcnQtZmFpbC5wbApAQCAtMCwwICsxLDEyIEBACisjIS91
c3IvYmluL3BlcmwKKyMgVGhpcyBzY3JpcHQgcmVsaWVzIG9uIGl0cyBucGgtIGZpbGVuYW1lIHRv
IGludm9rZSB0aGUgQ0dJIG5vbi1wYXJzZWQtaGVhZGVyIGZhY2lsaXR5LgorCitwcmludCA8PCdF
T0YnOworPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHA+VGhpcyBjb250ZW50IHNo
b3VsZCBiZSB2aXNpYmxlLCBidXQgc2NyaXB0IHNob3VsZCBub3QgZXhlY3V0ZS48L3A+Cis8c2Ny
aXB0PmFsZXJ0KCJGQUlMIik8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KK0VPRgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMv
bnBoLWZhaWwucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jl
c291cmNlcy9ucGgtZmFpbC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjg1N2RmOWJjYWExNTBjZjg2ZWVlM2M3
ZTdmOTVmNDUxOGUxM2RjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLWZhaWwucGwKQEAgLTAsMCArMSw1IEBA
CisjIS91c3IvYmluL3BlcmwKKyMgVGhpcyBzY3JpcHQgcmVsaWVzIG9uIGl0cyBucGgtIGZpbGVu
YW1lIHRvIGludm9rZSB0aGUgQ0dJIG5vbi1wYXJzZWQtaGVhZGVyIGZhY2lsaXR5LgorCisjIFdl
IGVtaXQgdHdvIG5ld2xpbmUgY2hhcmFjdGVycyB0byBzaWduYWwgdGhlIGVuZCBvZiBhIHRleHQv
cGxhaW4gcmVzcG9uc2Ugd2l0aG91dCBIVFRQIGhlYWRlcnMuCitwcmludCAiRkFJTFxuXG4iOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNv
dXJjZXMvbnBoLWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQucGwg
Yi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgt
aW1hZ2Utb24tSFRUUC0wLjktZGVmYXVsdC1wb3J0LXBhZ2UtYWxsb3dlZC5wbApuZXcgZmlsZSBt
b2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4wYWRmMDU4NWY0YjkzYjAxZDAwMDU3NDBlZjVmNjNkNDgyMzQ2NWM1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS9yZXNvdXJjZXMv
bnBoLWltYWdlLW9uLUhUVFAtMC45LWRlZmF1bHQtcG9ydC1wYWdlLWFsbG93ZWQucGwKQEAgLTAs
MCArMSwxMSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBpdHMg
bnBoLSBmaWxlbmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNpbGl0
eS4KKworcHJpbnQgPDwnRU9GJzsKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxp
bWcgc3JjPSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2Vz
L25waC1pbWFnZS5wbCI+Cis8L2JvZHk+Cis8L2h0bWw+CitFT0YKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS1v
bi1IVFRQLTAuOS1wYWdlLWJsb2NrZWQucGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2Vk
LnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmM0YWY0ZGM3NjA1ODUyMjUxNDJiMGU0ZmFhZjljZWI0OWM5Mjc2NGMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L3Jlc291cmNlcy9ucGgtaW1hZ2Utb24tSFRUUC0wLjktcGFnZS1ibG9ja2VkLnBsCkBAIC0w
LDAgKzEsMTEgQEAKKyMhL3Vzci9iaW4vcGVybAorIyBUaGlzIHNjcmlwdCByZWxpZXMgb24gaXRz
IG5waC0gZmlsZW5hbWUgdG8gaW52b2tlIHRoZSBDR0kgbm9uLXBhcnNlZC1oZWFkZXIgZmFjaWxp
dHkuCisKK3ByaW50IDw8J0VPRic7Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8
aW1nIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDgwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNl
cy9ucGgtaW1hZ2UucGwiPgorPC9ib2R5PgorPC9odG1sPgorRU9GCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtaW1hZ2Uu
cGwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9u
cGgtaW1hZ2UucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjlkZDk1OGNiNjJlMzVlMzJhMDk3ODE0ZTZmYTBhOTZj
YTYyODgwYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1pbWFnZS5wbApAQCAtMCwwICsxLDE3IEBACisjIS91
c3IvYmluL3BlcmwKKyMgVGhpcyBzY3JpcHQgcmVsaWVzIG9uIGl0cyBucGgtIGZpbGVuYW1lIHRv
IGludm9rZSB0aGUgQ0dJIG5vbi1wYXJzZWQtaGVhZGVyIGZhY2lsaXR5LgorCit1c2Ugc3RyaWN0
OwordXNlIHdhcm5pbmdzOworCit1c2UgTUlNRTo6QmFzZTY0OworCitteSAkYmx1ZVNxdWFyZSA9
IDw8J0VPRic7CitpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFCa0FRTUFBQUJLTEFjWEFB
QUFGbWxVV0hSWVRVdzZZMjl0TG1Ga2IySmxMbmh0CitjQUFBQUFBQWFFWitHZ0FBQUFaUVRGUkZB
QUQvQUFBQWUySy9QZ0FBQUJsMFJWaDBVMjltZEhkaGNtVUFSM0poY0docFkwTnZiblpsCitjblJs
Y2pWZFNPNEFBQUExU1VSQlZIaWNZbUNnSzJDa3IzVm9nSjhHS2djVElEZDBoNlp2UnpJWTJIdzBz
QUNmMzVuSTFFY2QyMGtBCitBQUFBQVAvL0F3RE1hUUEyRVVPNlhBQUFBQUJKUlU1RXJrSmdnZz09
CitFT0YKKyRibHVlU3F1YXJlID1+IHMvXG4vL2c7CisKK3ByaW50IGRlY29kZV9iYXNlNjQoJGJs
dWVTcXVhcmUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9o
dHRwLTAuOS9yZXNvdXJjZXMvbnBoLWxvYWQtcGx1Z2luLWZhaWwucGwgYi9MYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtbG9hZC1wbHVnaW4tZmFp
bC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41MDA3ZjBmM2VhZWI4YTI4YjE0MDQ3ZjA4OWJhODE5MzY2OWFhMjg0
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRw
LTAuOS9yZXNvdXJjZXMvbnBoLWxvYWQtcGx1Z2luLWZhaWwucGwKQEAgLTAsMCArMSwxMSBAQAor
IyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBpdHMgbnBoLSBmaWxlbmFt
ZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNpbGl0eS4KKworcHJpbnQg
PDwnRU9GJzsKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxlbWJlZCB0eXBlPSJh
cHBsaWNhdGlvbi94LXdlYmtpdC10ZXN0LW5ldHNjYXBlIj5QbHVnaW4gZGlkIG5vdCBsb2FkLjwv
ZW1iZWQ+Cis8L2JvZHk+Cis8L2h0bWw+CitFT0YKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFpbC5wbCBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13
b3JrZXItZmFpbC5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjA4NGM3N2ZkMTFmYzUxMzY2NWY2NDExMzYyMWM0
N2Q1MTZlZjc0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9odHRwLTAuOS9yZXNvdXJjZXMvbnBoLXdvcmtlci1mYWlsLnBsCkBAIC0wLDAgKzEsNSBA
QAorIyEvdXNyL2Jpbi9wZXJsCisjIFRoaXMgc2NyaXB0IHJlbGllcyBvbiBpdHMgbnBoLSBmaWxl
bmFtZSB0byBpbnZva2UgdGhlIENHSSBub24tcGFyc2VkLWhlYWRlciBmYWNpbGl0eS4KKworIyBX
ZSBlbWl0IHR3byBuZXdsaW5lIGNoYXJhY3RlcnMgdG8gc2lnbmFsIHRoZSBlbmQgb2YgdGhlIHJl
c3BvbnNlIHdpdGhvdXQgSFRUUCBoZWFkZXJzLgorcHJpbnQgInBvc3RNZXNzYWdlKCdGQUlMJyk7
XG5cbiI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAt
MC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBlOTYxNTZjMTRhZTg1ZGRlNDkyN2RjMDc0YzVmN2Jm
ZjI3ZWYxM2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3Vy
aXR5L2h0dHAtMC45L3dvcmtlci1jb25uZWN0LXNyYy1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQgQEAKK0NPTlNPTEUgTUVTU0FHRTogU2FuZGJveGluZyAnaHR0cDovLzEyNy4wLjAu
MTo4MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtd29ya2VyLWZhaWwucGwnIGJl
Y2F1c2UgaXQgaXMgdXNpbmcgSFRUUC8wLjkuCitDT05TT0xFIE1FU1NBR0U6IENhbmNlbGxlZCBy
ZXNvdXJjZSBsb2FkIGZyb20gJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAu
OS9yZXNvdXJjZXMvbnBoLXdvcmtlci1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAv
MC45IGFuZCB0aGUgZG9jdW1lbnQgd2FzIGxvYWRlZCB3aXRoIGEgZGlmZmVyZW50IEhUVFAgdmVy
c2lvbi4KK0FMRVJUOiBQQVNTCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
c2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJsb2NrZWQuaHRtbCBiL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWNvbm5lY3Qtc3JjLWJs
b2NrZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iOTU3NDBkYzcwMWQwMThiZDc5YTNjNWU1ZTlkNWFkZGM5
NTAzNDJjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9odHRwLTAuOS93b3JrZXItY29ubmVjdC1zcmMtYmxvY2tlZC5odG1sCkBAIC0wLDAgKzEsMjUg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2Ny
aXB0PgordmFyIHdvcmtlciA9IG5ldyBXb3JrZXIoInJlc291cmNlcy9ucGgtd29ya2VyLWZhaWwu
cGwiKTsKK3dvcmtlci5vbm1lc3NhZ2UgPSAoKSA9PiB7IGFsZXJ0QW5kRG9uZSgiRkFJTCIpOyB9
Cit3b3JrZXIub25lcnJvciA9ICgpID0+IHsgYWxlcnRBbmREb25lKCJQQVNTIik7IH0KKworZnVu
Y3Rpb24gYWxlcnRBbmREb25lKG1lc3NhZ2UpCit7CisgICAgYWxlcnQobWVzc2FnZSk7CisgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsK
K30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS93b3JrZXItaW1wb3J0U2NyaXB0cy1ibG9ja2Vk
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkv
d29ya2VyLWltcG9ydFNjcmlwdHMtYmxvY2tlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGU5
NjE1NmMxNGFlODVkZGU0OTI3ZGMwNzRjNWY3YmZmMjdlZjEzYgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNj
cmlwdHMtYmxvY2tlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitDT05TT0xFIE1FU1NB
R0U6IFNhbmRib3hpbmcgJ2h0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9odHRwLTAuOS9y
ZXNvdXJjZXMvbnBoLXdvcmtlci1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45
LgorQ09OU09MRSBNRVNTQUdFOiBDYW5jZWxsZWQgcmVzb3VyY2UgbG9hZCBmcm9tICdodHRwOi8v
MTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC13b3JrZXItZmFp
bC5wbCcgYmVjYXVzZSBpdCBpcyB1c2luZyBIVFRQLzAuOSBhbmQgdGhlIGRvY3VtZW50IHdhcyBs
b2FkZWQgd2l0aCBhIGRpZmZlcmVudCBIVFRQIHZlcnNpb24uCitBTEVSVDogUEFTUworCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1p
bXBvcnRTY3JpcHRzLWJsb2NrZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvaHR0cC0wLjkvd29ya2VyLWltcG9ydFNjcmlwdHMtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjNlM2JmMTBjOTk0ZTVhNmQyNjUxODAxOGJmZDQ2OWU3MzY4YjQ0ZDUKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3dvcmtlci1pbXBv
cnRTY3JpcHRzLWJsb2NrZWQuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK3ZhciBzY3JpcHQgPSBb
CisgICAgJ3RyeSB7JywKKyAgICAnICAgaW1wb3J0U2NyaXB0cygiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3NlY3VyaXR5L2h0dHAtMC45L3Jlc291cmNlcy9ucGgtd29ya2VyLWZhaWwucGwiKTsnLAor
ICAgICd9IGNhdGNoIChlKSB7JywKKyAgICAnICAgcG9zdE1lc3NhZ2UoIlBBU1MiKTsnLAorICAg
ICd9JywKK10uam9pbigiXG4iKTsKKwordmFyIHdvcmtlciA9IG5ldyBXb3JrZXIod2luZG93LlVS
TC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoW3NjcmlwdF0pKSk7Cit3b3JrZXIub25tZXNzYWdl
ID0gKG1lc3NhZ2VFdmVudCkgPT4geyBhbGVydEFuZERvbmUobWVzc2FnZUV2ZW50LmRhdGEpOyB9
CisKK2Z1bmN0aW9uIGFsZXJ0QW5kRG9uZShtZXNzYWdlKQoreworICAgIGFsZXJ0KG1lc3NhZ2Up
OworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlE
b25lKCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkveGhyLWFzeW5jaHJvbm91cy1ibG9j
a2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0w
LjkveGhyLWFzeW5jaHJvbm91cy1ibG9ja2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YjJi
ZGFjNzY3MTZmYzRhMDBiMmZkODY3ZjE4ODcwMDk1YTE0MTVlCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9odHRwLTAuOS94aHItYXN5bmNocm9ub3Vz
LWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorQ09OU09MRSBNRVNTQUdFOiBT
YW5kYm94aW5nICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3Vy
Y2VzL25waC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LgorQ09OU09MRSBN
RVNTQUdFOiBDYW5jZWxsZWQgcmVzb3VyY2UgbG9hZCBmcm9tICdodHRwOi8vMTI3LjAuMC4xOjgw
MDAvc2VjdXJpdHkvaHR0cC0wLjkvcmVzb3VyY2VzL25waC1mYWlsLnBsJyBiZWNhdXNlIGl0IGlz
IHVzaW5nIEhUVFAvMC45IGFuZCB0aGUgZG9jdW1lbnQgd2FzIGxvYWRlZCB3aXRoIGEgZGlmZmVy
ZW50IEhUVFAgdmVyc2lvbi4KK0FMRVJUOiBQQVNTCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2h0dHAvdGVzdHMvc2VjdXJpdHkvaHR0cC0wLjkveGhyLWFzeW5jaHJvbm91cy1ibG9ja2VkLmh0
bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hy
b25vdXMtYmxvY2tlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2NTY2OTVhOGM3Y2VhYmY5MDcwMjczNzhj
YTY0NWExNDUxZjUxZWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2h0dHAtMC45L3hoci1hc3luY2hyb25vdXMtYmxvY2tlZC5odG1sCkBAIC0wLDAg
KzEsMzEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8c2NyaXB0PgorY29uc3QgaXNBc3luY2hyb25vdXMgPSB0cnVlOwordmFyIHhociA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKK3hoci5vcGVuKCJHRVQiLCAicmVzb3VyY2VzL25waC1mYWlsLnBsIiwg
aXNBc3luY2hyb25vdXMpOworeGhyLm9ubG9hZCA9ICgpID0+IHsgYWxlcnRBbmREb25lKCJGQUlM
Iik7IH0KK3hoci5vbmVycm9yID0gKCkgPT4geworICAgIC8vIEZJWE1FOiBBc3NlcnQgdGhhdCBh
IHNwZWNpZmljIGVycm9yIG9jY3VycmVkLgorICAgIGFsZXJ0QW5kRG9uZSgiUEFTUyIpOworfQor
eGhyLnNlbmQoKTsKKworZnVuY3Rpb24gYWxlcnRBbmREb25lKG1lc3NhZ2UpCit7CisgICAgYWxl
cnQobWVzc2FnZSk7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="316783"
          type_id="1"
          status="+"
          setter="achristensen"
    />
          </attachment>
      

    </bug>

</bugzilla>