<?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>108671</bug_id>
          
          <creation_ts>2013-02-01 11:48:30 -0800</creation_ts>
          <short_desc>Import IETC DOM tests</short_desc>
          <delta_ts>2013-03-25 05:44:03 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>76198</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>eoconnor</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mjs</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>823069</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-02-01 11:48:30 -0800</bug_when>
    <thetext>Import IETC DOM tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823091</commentid>
    <comment_count>1</comment_count>
      <attachid>186096</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-02-01 12:00:35 -0800</bug_when>
    <thetext>Created attachment 186096
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823140</commentid>
    <comment_count>2</comment_count>
      <attachid>186096</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-02-01 12:39:01 -0800</bug_when>
    <thetext>Comment on attachment 186096
Patch

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

Two nits I&apos;d like to discuss with potential reviewers:

&gt; LayoutTests/ChangeLog:21
&gt; +        * ietestcenter/dom/core/DOMImplementation_createDocument-expected.txt: Added.

How should the paths be stylized? Would &apos;ietestcenter/DOM/Core/*&apos; work better that &apos;ietestcenter/dom/core/*&apos; and similar?

&gt; LayoutTests/ietestcenter/dom/core/DOMImplementation_createDocument.htm:3
&gt; + Internet Explorer Test Pages Copyright Â© 2012 Microsoft Corporation. All rights reserved.

The license boilerplates use 2012. While the tests are possibly even older that that, shold 2013 be used? (The license used in all the test cases was copied from a random flexbox test.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823528</commentid>
    <comment_count>3</comment_count>
      <attachid>186096</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-01 20:07:15 -0800</bug_when>
    <thetext>Comment on attachment 186096
Patch

Attachment 186096 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16338464

New failing tests:
ietestcenter/dom/inheritance/Prototype_SVGSVGElement.htm
ietestcenter/dom/inheritance/Prototype_SVGCircleElement.htm
ietestcenter/dom/inheritance/Prototype_SVGRectElement.htm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823592</commentid>
    <comment_count>4</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-02-02 00:26:51 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 186096 [details])
&gt; Attachment 186096 [details] did not pass chromium-ews (chromium-xvfb):
&gt; Output: http://queues.webkit.org/results/16338464
&gt; 
&gt; New failing tests:
&gt; ietestcenter/dom/inheritance/Prototype_SVGSVGElement.htm
&gt; ietestcenter/dom/inheritance/Prototype_SVGCircleElement.htm
&gt; ietestcenter/dom/inheritance/Prototype_SVGRectElement.htm

These tests seem to pass with Chromium 26.0.1386.0 and fail with Chromium 26.0.1397.2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823598</commentid>
    <comment_count>5</comment_count>
      <attachid>186219</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-02-02 00:43:31 -0800</bug_when>
    <thetext>Created attachment 186219
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823612</commentid>
    <comment_count>6</comment_count>
      <attachid>186219</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-02 01:48:17 -0800</bug_when>
    <thetext>Comment on attachment 186219
Patch

Attachment 186219 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16337676</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862673</commentid>
    <comment_count>7</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-03-25 05:43:15 -0700</bug_when>
    <thetext>I&apos;m not interested anymore in importing IETC tests as in too many cases they test IE-only behavior or even things that are not actually covered by the related spec.

Not to mention the closed nature of the test suites they are providing, making it extremely hard to scrap all the test cases or to simply provide feedback.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186096</attachid>
            <date>2013-02-01 12:00:35 -0800</date>
            <delta_ts>2013-02-02 00:43:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108671-20130201205717.patch</filename>
            <type>text/plain</type>
            <size>550021</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTk3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZWM2OTc4OTA1ZWIxN2FkYzhmMjAx
NzQ4Mzg4OGFlNGZmMzRjNzI2Yy4uOTA0NWUyYzFkMDY4NmVjMTkxMjhjMzdiMjRhMmQwY2VmYzRj
MjVhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4NyBAQAorMjAxMy0wMi0wMSAgWmFuIERvYmVyc2VrICA8
emRvYmVyc2VrQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wb3J0IElFVEMgRE9NIHRlc3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg2NzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBvcnQgdGhl
IElFIFRlc3QgQ2VudGVyIHRlc3RzIHRoYXQgYXJlIHBhcnQgb2YgdGhlIGZvbGxvd2luZyBET00g
dGVzdCBzdWl0ZXM6CisgICAgICAgIC0gVHJhdmVyc2FsCisgICAgICAgIC0gRWxlbWVudCBUcmF2
ZXJzYWwKKyAgICAgICAgLSBMZXZlbCAzIENvcmUKKyAgICAgICAgLSBMZXZlbCAyIFN0eWxlCisg
ICAgICAgIC0gTGV2ZWwgMiBJbmhlcml0YW5jZQorCisgICAgICAgIFRoZSB0ZXN0cyBhcmUgbWFp
bmx5IGltcG9ydGVkIGFzIHRleHQgdGVzdHMgYXBhcnQgZnJvbSB0aGUgTGV2ZWwgMiBTdHlsZSB0
ZXN0cworICAgICAgICB0aGF0IGFyZSBnaXZlbiByZWZlcmVuY2UgZmlsZXMgd2l0aCB3aGljaCB0
aGUgdGVzdCBvdXRwdXQgbXVzdCBtYXRjaC4gQW55IHJlc291cmNlcworICAgICAgICB0aGUgdGVz
dHMgdXNlIGFyZSBpbXBvcnRlZCBhcyB3ZWxsLgorCisgICAgICAgIFRoZSBmYWlsdXJlIGV4cGVj
dGF0aW9ucyBhcmUgYWRkZWQgZm9yIHRlc3RzIHRoYXQgYXQgdGhlIG1vbWVudCBkb24ndCBwYXNz
LgorCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2Ny
ZWF0ZURvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3VtZW50Lmh0bTogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURv
Y3VtZW50VHlwZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudFR5cGUuaHRtOiBBZGRlZC4K
KyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50
X2Fkb3B0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9E
b2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy5odG06IEFk
ZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFU
QVNlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bTogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUVsZW1lbnROUy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVh
dGVFbGVtZW50TlMuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RG9jdW1lbnRfY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZVByb2Nlc3Np
bmdJbnN0cnVjdGlvbi5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29y
ZS9Eb2N1bWVudF9kb2N0eXBlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZG9jdHlwZTItZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZG9jdHlwZTIuaHRt
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZ2V0RWxl
bWVudHNCeVRhZ05hbWVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5TLmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2ltcG9ydE5vZGUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1l
bnRfaW1wb3J0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29y
ZS9FbGVtZW50X2F0dHJpYnV0ZU5TSW50ZXJ0b3AtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9hdHRyaWJ1dGVOU0ludGVydG9wLmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0
cmlidXRlTlMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRWxlbWVudF9oYXNBdHRyaWJ1dGVOUy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9FbGVtZW50X3JlbW92ZUF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVtb3ZlQXR0
cmlidXRlTlMuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxl
bWVudF9zZXRBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9hZG9wdE5vZGUt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX0RvY3VtZW50X2Fkb3B0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9jcmVhdGVBdHRyaWJ1dGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUNEQVRBU2VjdGlvbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
RG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50LWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9jcmVhdGVFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94bWxWZXJzaW9uLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94
bWxWZXJzaW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGUu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0Vs
ZW1lbnRfc2V0QXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRf
c2V0QXR0cmlidXRlTlMyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TMi5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRB
dHRyaWJ1dGVOUzMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLmh0bTogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJp
YnV0ZU5TNC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzQuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRl
TlM1LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TNS5odG06IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2Rl
Mi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2RlMi5odG06IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
Tm9kZV9hcHBlbmRDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQy
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9O
b2RlX2FwcGVuZENoaWxkMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDMuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3Jl
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUyLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2lu
c2VydEJlZm9yZTIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUzLmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2Rl
X2luc2VydEJlZm9yZTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlNS5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9u
X05vZGVfcHJlZml4Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX3ByZWZpeDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Mi5odG06IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZW1vdmVDaGls
ZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fTm9kZV9yZW1vdmVDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVw
bGFjZUNoaWxkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMi5odG06
IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9y
ZXBsYWNlQ2hpbGQzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDMuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkNS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQ1Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24tZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1l
bnRQb3NpdGlvbi5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9O
b2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi5o
dG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRGVmYXVs
dE5hbWVzcGFjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vY29yZS9Ob2RlX2lzRGVmYXVsdE5hbWVzcGFjZS5odG06IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNFcXVhbE5vZGUuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZTIt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9pc0VxdWFsTm9kZTIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvTm9kZV9pc1N1cHBvcnRlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLmh0bTogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLmh0bTogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwTmFtZXNwYWNl
VVJJLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L05vZGVfbG9va3VwTmFtZXNwYWNlVVJJLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4Lmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4Lmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRl
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
Tm9kZV90ZXh0Q29udGVudC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX3RleHRDb250ZW50Mi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50Mi5odG06IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNl
V2hvbGVUZXh0Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1Rl
eHRfcmVwbGFjZVdob2xlVGV4dDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Mi5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dC5o
dG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4
dDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
VGV4dF93aG9sZVRleHQyLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9l
bGVtZW50dHJhdmVyc2FsL0VsZW1lbnRDaGlsZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvY2hpbGRF
bGVtZW50Q291bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL2VsZW1lbnR0cmF2ZXJzYWwvY2hpbGRFbGVtZW50Q291bnQuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5n
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50
dHJhdmVyc2FsL25leHRFbGVtZW50U2libGluZy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9wcmV2aW91c0VsZW1lbnRTaWJsaW5nLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVy
c2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmcuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9GdW5jdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9u
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRl
bmRfRnVuY3Rpb25fSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uX0hpZ2guaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0
ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
RXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0xvdy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X0dldHRlcl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9w
ZXJ0eV9TZXR0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1Nl
dHRlcl9IaWdoLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0xvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRl
cl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L092ZXJyaWRlX0Z1bmN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbi5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGln
aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGlnaC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fTG93LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlk
ZV9GdW5jdGlvbl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlf
R2V0dGVyLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0
dGVyX0hpZ2guaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVy
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVy
cmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyX0hp
Z2guaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9DREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DREFUQVNlY3Rpb24uaHRtOiBBZGRl
ZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DaGFy
YWN0ZXJEYXRhLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ2hhcmFjdGVyRGF0YS5odG06IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NvbW1lbnQtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9Db21tZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0
aW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfRG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Eb2N1bWVudC5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0VsZW1lbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9FbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FdmVudC5odG06IEFk
ZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hU
TUxCb2R5RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxCb2R5RWxlbWVudC5odG06IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxEaXZF
bGVtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRWxlbWVudC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0hUTUxFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTElzSW5kZXhFbGVtZW50LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfSFRNTElzSW5kZXhFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVzc2FnZUV2ZW50LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVz
c2FnZUV2ZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfTW91c2VFdmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9O
b2RlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfTm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNsZUVsZW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9TVkdDaXJjbGVFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHRWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1l
bnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9TVkdSZWN0RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVtZW50Lmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
U1ZHU1ZHRWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZl
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9UZXh0LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4
dC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX1VJRXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9VSUV2ZW50Lmh0bTogQWRkZWQuCisgICAgICAg
ICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1doZWVsRXZlbnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQtZXhwZWN0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUtZXhwZWN0ZWQuaHRt
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJh
cmNoeUVycm9yLWV4cGVjdGVkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLWV4cGVjdGVkLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnZhbGlkTWVkaWEuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZlQm9yZGVyV2lkdGgtZXhwZWN0
ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZl
Qm9yZGVyV2lkdGguaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxl
L3Jlc291cmNlcy90ZXN0U3R5bGUxLmNzczogQWRkZWQuCisgICAgICAgIChib2R5KToKKyAgICAg
ICAgKGRpdik6CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNo
X2ludmFsaWRTdGF0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL25pX2RldGFjaF9pbnZhbGlkU3RhdGUuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9odG1sQW5kU3ZnLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFu
ZFN2Zy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25p
X25leHRBbmRQcmV2aW91c05vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3Vz
Tm9kZV9ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfcmVtb3ZlUmVm
ZXJlbmNlTm9kZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0ZWQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19u
b3RzdXBwb3J0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBw
b3J0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19maXJzdENoaWxkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGRfbm9kZUZpbHRlci1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0
Q2hpbGRfbm9kZUZpbHRlci5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL3R3X2h0bWxBbmRTdmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19odG1sQW5kU3ZnLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENo
aWxkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdf
bGFzdENoaWxkX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGRfbm9kZUZpbHRlci5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91
c05vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19uZXh0QW5kUHJldmlvdXNOb2RlLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVy
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bTogQWRkZWQuCisgICAgICAg
ICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmctZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2li
bGluZy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3
X25leHRTaWJsaW5nX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2libGluZ19ub2RlRmlsdGVyLmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9k
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL3R3X3BhcmVudE5vZGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVG
aWx0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19wcmV2aW91c05vZGVfZGVlcFRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfZGVlcFRyZWUuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05v
ZGVfaWdub3JlUmVqZWN0U3ViVHJlZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVSZWplY3RTdWJU
cmVlLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdf
cHJldmlvdXNOb2RlX21vdmVQYXN0U2tpcHBlZE5vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfbW92ZVBh
c3RTa2lwcGVkTm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJh
dmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGlu
Z19pZ25vcmVTa2lwcGVkTm9kZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19pZ25vcmVTa2lwcGVkTm9k
ZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3By
ZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX25vZGVGaWx0ZXIu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBs
YXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9UZXN0
RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTMtMDItMDEgIFBh
dmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3Bl
Y3RvcjogcmVsYXggZ290byBmaWxlIG1hdGNoaW5nIGFnYWluLgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3Vt
ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01J
bXBsZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2
ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVh
dGVEb2N1bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0
ZURvY3VtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBs
ZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWU0N2NkY2RkZDhmMzI3
ZjcxMThkZWNlOTBjMjkzN2Q0NzVmZTE2NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudC5o
dG0KQEAgLTAsMCArMSw2NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhw
bG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24u
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoK
KworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhl
IG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JP
U09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENv
cmU6IERPTUltcGxlbWVudGF0aW9uIEludGVyZmFjZSBjcmVhdGVEb2N1bWVudCBtZXRob2Q8L3Rp
dGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUg
aW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRE9NSW1wbGVtZW50YXRp
b24gSW50ZXJmYWNlOiBjcmVhdGVEb2N1bWVudC4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9S
RUMtRE9NLUxldmVsLTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0bWwjTGV2ZWwtMi1Db3JlLURPTS1j
cmVhdGVEb2N1bWVudCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00g
TGV2ZWwgMyBDb3JlOiBET01JbXBsZW1lbnRhdGlvbiBJbnRlcmZhY2UgY3JlYXRlRG9jdW1lbnQg
bWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBm
dW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKwor
ICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgIHZhciBkeW5hbWljRG9jID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlRG9jdW1l
bnQoImEiLCAiYiIsIG51bGwpOworCisgICAgICAgICAgICAgICBpZigiYiIgPT0gZHluYW1pY0Rv
Yy5kb2N1bWVudEVsZW1lbnQubG9jYWxOYW1lKQorICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9
CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgor
ICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudFR5cGUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxl
bWVudGF0aW9uX2NyZWF0ZURvY3VtZW50VHlwZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2
ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVh
dGVEb2N1bWVudFR5cGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9j
cmVhdGVEb2N1bWVudFR5cGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3VtZW50VHlwZS5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjUx
OGY5ZmExMjg5NTRkOTkzZDg5YTRkYTIyNThiZTFjYWYwMzZkNwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVh
dGVEb2N1bWVudFR5cGUuaHRtCkBAIC0wLDAgKzEsNjQgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBET01JbXBsZW1lbnRhdGlvbiBJbnRlcmZhY2UgY3JlYXRlRG9j
dW1lbnRUeXBlIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNv
bnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQ
SSBvbiBET01JbXBsZW1lbnRhdGlvbiBJbnRlcmZhY2U6IGNyZWF0ZURvY3VtZW50VHlwZS4gaHR0
cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0yMDA0MDQwNy9jb3Jl
Lmh0bWwjTGV2ZWwtMi1Db3JlLURPTS1jcmVhdGVEb2NUeXBlIiAvPgorICAgIDxtZXRhIG5hbWU9
IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERPTUltcGxlbWVudGF0aW9uIElu
dGVyZmFjZSBjcmVhdGVEb2N1bWVudFR5cGUgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7Cisg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBkb2N1bWVudFR5cGUgPSBkb2N1bWVu
dC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudFR5cGUoJ2h0bWwnLCAnLS8vVzNDLy9EVEQg
WEhUTUwgMS4wIFN0cmljdC8vRU4nLCAnaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94
aHRtbDEtc3RyaWN0LmR0ZCcpOworCisgICAgICAgICAgICAgICBpZigiaHRtbCIgPT0gZG9jdW1l
bnRUeXBlLm5hbWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0
LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAg
ICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4K
KyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVz
dHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0RvY3VtZW50X2Fkb3B0Tm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2Fkb3B0Tm9k
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2Fkb3B0Tm9kZS5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hZDk0MGIzMThjZGIwMzMwNDE5NDI2NzM2NDJkYzEyY2NlZjc4YjY5Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2Fkb3B0
Tm9kZS5odG0KQEAgLTAsMCArMSw2NCBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBhZG9wdE5vZGUgbWV0aG9kPC90aXRsZT4K
KyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxl
bWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50IEludGVyZmFjZTog
YWRvcHROb2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRt
bCNEb2N1bWVudDMtYWRvcHROb2RlIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBhZG9wdE5vZGUgbWV0aG9k
IiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlv
biBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgdmFyIHhtbEJhc2VkRG9jID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3Jl
YXRlRG9jdW1lbnQoIm5zMSIsICJyb290IiwgbnVsbCk7CisgICAgICAgICAgICAgICB2YXIgdGVz
dE9iaiA9IGRvY3VtZW50LmFkb3B0Tm9kZSh4bWxCYXNlZERvYy5kb2N1bWVudEVsZW1lbnQpOwor
ICAgICAgICAgICAgICAgaWYoZG9jdW1lbnQgPT0gdGVzdE9iai5vd25lckRvY3VtZW50ICYmICJu
czEiID09IHRlc3RPYmoubmFtZXNwYWNlVVJJICYmIG51bGwgPT0geG1sQmFzZWREb2MuZG9jdW1l
bnRFbGVtZW50KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAg
ICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+Cisg
IDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3Ry
ZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlTlMtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9j
dW1lbnRfY3JlYXRlQXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9j
cmVhdGVBdHRyaWJ1dGVOUy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlTlMuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAyY2VjOTkxZGUzNWVl
OTQ0NTFlNGQxNTUxNGNhOTcwNzk2NzcxMTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlTlMuaHRtCkBA
IC0wLDAgKzEsNjMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxv
cmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisK
KyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NP
RlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3Jl
OiBEb2N1bWVudCBJbnRlcmZhY2UgY3JlYXRlQXR0cmlidXRlTlMgbWV0aG9kPC90aXRsZT4KKyAg
ICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVu
dGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50IEludGVyZmFjZTogY3Jl
YXRlQXR0cmlidXRlTlMuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0z
LUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELURvY0NyQXR0ck5TIiAvPgorICAgIDxtZXRhIG5h
bWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVyZmFj
ZSBjcmVhdGVBdHRyaWJ1dGVOUyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAg
ICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRS
ZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAg
ICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgdGVzdE9iaiA9IGRvY3Vt
ZW50LmNyZWF0ZUF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbWF0dHJu
YW1lc3BhY2UiLCAiY3VzdG9tYXR0cmlidXRlIik7CisgICAgICAgICAgICAgICBpZih0ZXN0T2Jq
IGluc3RhbmNlb2YgQXR0ciAmJiAiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21hdHRybmFt
ZXNwYWNlIiA9PSB0ZXN0T2JqLm5hbWVzcGFjZVVSSSkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAg
ICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgp
Ij4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVh
dGVDREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0
ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24uaHRt
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjQ2NjcwNDc0ZDExMmM2YTRkZWQ1MzkxYTY5MzgzZDE1YWQwZjRjNjMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1l
bnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bQpAQCAtMCwwICsxLDY0IEBACivvu788IURPQ1RZUEUg
aHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxo
ZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZUNE
QVRBU2VjdGlvbiBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBj
b250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBB
UEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiBjcmVhdGVDREFUQVNlY3Rpb24uIGh0dHA6Ly93d3cu
dzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELUQyNkMwQUY4IiAvPgorICAg
IDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50
IEludGVyZmFjZSBjcmVhdGVDREFUQVNlY3Rpb24gbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9U
ZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZh
ciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBd
OworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIHhtbEJh
c2VkRG9jID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlRG9jdW1lbnQobnVsbCwgbnVs
bCwgbnVsbCk7CisgICAgICAgICAgICAgICB2YXIgdGVzdE9iaiA9IHhtbEJhc2VkRG9jLmNyZWF0
ZUNEQVRBU2VjdGlvbigiY2RhdGEgY29udGVudCIpOworICAgICAgICAgICAgICAgaWYoNCA9PSB0
ZXN0T2JqLm5vZGVUeXBlICYmICJjZGF0YSBjb250ZW50IiA9PSB0ZXN0T2JqLmRhdGEpCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
UGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsK
KyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0
ZUVsZW1lbnROUy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRG9jdW1lbnRfY3JlYXRlRWxlbWVudE5TLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZk
ZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUVsZW1lbnRO
Uy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUVsZW1lbnROUy5odG0gYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlRWxlbWVudE5T
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi45YTcyYjdlZmJkMTllZWNkOGU5N2E3OTkxMTViMmZjZjAzOTkxMzRk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0Rv
Y3VtZW50X2NyZWF0ZUVsZW1lbnROUy5odG0KQEAgLTAsMCArMSw2NCBAQAor77u/PCFET0NUWVBF
IGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkg
MjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgor
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8
aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBjcmVhdGVF
bGVtZW50TlMgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29u
dGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJ
IG9uIERvY3VtZW50IEludGVyZmFjZTogY3JlYXRlRWxlbWVudE5TLiBodHRwOi8vd3d3LnczLm9y
Zy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1Eb2ND
ckVsTlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMg
Q29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZUVsZW1lbnROUyBtZXRob2QiIC8+CisgICAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3Qo
cHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisKKyAgICAgICAgICAg
ICAgIHZhciB0ZXN0T2JqID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4
YW1wbGUuY29tL2N1c3RvbW5hbWVzcGFjZSIsICJjdXN0b21lbGVtZW50Iik7CisgICAgICAgICAg
ICAgICBpZih0ZXN0T2JqIGluc3RhbmNlb2YgRWxlbWVudCAmJiAiaHR0cDovL3d3dy5leGFtcGxl
LmNvbS9jdXN0b21uYW1lc3BhY2UiID09IHRlc3RPYmoubmFtZXNwYWNlVVJJKQorICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3Mi
OworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAg
ICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25s
b2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4K
KyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVQcm9j
ZXNzaW5nSW5zdHJ1Y3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbi1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1
bWVudF9jcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEg
QEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9E
b2N1bWVudF9jcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbi5o
dG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjMxY2I1ZDU2N2JhYjlmZjgzM2U4ZjFkYzU1ZDNhMWJmYzI4OWYxOQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1
bWVudF9jcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaHRtCkBAIC0wLDAgKzEsNjQgQEAKK++7
vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29w
eXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1l
IG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJp
YnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBl
cm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
KyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZh
Y2UgY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEg
bmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBv
ZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBEb2N1bWVudCBJbnRlcmZhY2U6IGNyZWF0ZVByb2Nl
c3NpbmdJbnN0cnVjdGlvbi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9j
b3JlLmh0bWwjSUQtRDI2QzBBRjgiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVu
dD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZVByb2Nlc3NpbmdJ
bnN0cnVjdGlvbiBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBk
b2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQor
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgeG1sQmFzZWREb2MgPSBkb2N1bWVudC5p
bXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudChudWxsLCBudWxsLCBudWxsKTsKKyAgICAgICAg
ICAgICAgIHZhciB0ZXN0T2JqID0geG1sQmFzZWREb2MuY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0
aW9uKCJteXRhcmdldCIsICJteWRhdGEiKTsKKyAgICAgICAgICAgICAgIGlmKDcgPT0gdGVzdE9i
ai5ub2RlVHlwZSAmJiAibXl0YXJnZXQiID09IHRlc3RPYmoudGFyZ2V0KQorICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAg
IHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAg
ICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2Fk
PSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAg
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0eXBlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0
eXBlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5
ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVu
dF9kb2N0eXBlLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVu
dF9kb2N0eXBlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42Nzg5OGNjYWY4OTY1YjVlNzFjYzM2OGRlMTNjZWEz
NGVlM2FmNGYxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL0RvY3VtZW50X2RvY3R5cGUuaHRtCkBAIC0wLDAgKzEsNjIgQEAKK++7vzwhRE9DVFlQ
RSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKp
IDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBN
aWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1h
eSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24u
CisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgZG9jdHlw
ZSBwcm9wZXJ0eTwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9
IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBE
b2N1bWVudCBJbnRlcmZhY2U6IGRvY3R5cGUuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVD
LURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELUI2M0VEMUEzMSIgLz4KKyAg
ICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBEb2N1bWVu
dCBJbnRlcmZhY2UgZG9jdHlwZSBwcm9wZXJ0eSIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAg
ICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2Vu
dFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAg
ICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIGlmKCJodG1sIiA9PSBkb2N1
bWVudC5kb2N0eXBlLm5hbWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0K
KyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3Nj
cmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBp
ZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0eXBlMi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0
eXBlMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0eXBlMi5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZjRmYTZkMTZhOTYxOGE2Yjg2YWYwZjhkZTM3NTJhNWM1ZTM1MjZkOAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9kb2N0
eXBlMi5odG0KQEAgLTAsMCArMSw2MiBAQAor77u/PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9X
M0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RS
L2h0bWw0L2xvb3NlLmR0ZCI+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBD
b3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5h
bWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250
cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgor
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkv
eGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVy
ZmFjZSBkb2N0eXBlIHByb3BlcnR5PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlv
biIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENv
cmUgQVBJIG9uIERvY3VtZW50IEludGVyZmFjZTogZG9jdHlwZS4gaHR0cDovL3d3dy53My5vcmcv
VFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0bWwjSUQtQjYzRUQx
QTMxIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENv
cmU6IERvY3VtZW50IEludGVyZmFjZSBkb2N0eXBlIHByb3BlcnR5IiAvPgorICAgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5
VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAg
IHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIp
WzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgaWYoIi0v
L1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiA9PSBkb2N1bWVudC5kb2N0eXBl
LnB1YmxpY0lkKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAg
ICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+Cisg
IDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3Ry
ZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5T
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRl
NzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL0RvY3VtZW50X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5TLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5TLmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41N2NmZGQ3YzJlZjliYTM0MTYzNzc4ZTVhZTZjNzY0N2NmYjA1Mjk4Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50
X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMuaHRtCkBAIC0wLDAgKzEsNjcgQEAKK++7vzwhRE9DVFlQ
RSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKp
IDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBN
aWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1h
eSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24u
CisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgZ2V0RWxl
bWVudHNCeVRhZ05hbWVOUyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0
aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMg
Q29yZSBBUEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiBnZXRFbGVtZW50c0J5VGFnTmFtZU5TLiBo
dHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2Nv
cmUuaHRtbCNJRC1nZXRFbEJUTk5TIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBnZXRFbGVtZW50c0J5VGFn
TmFtZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFyIGR5bmFtaWNFbGVtID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbW5hbWVzcGFjZSIsICJk
aXYiKTsKKyAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuYXBwZW5kQ2hpbGQoZHluYW1pY0Vs
ZW0pOworICAgICAgICAgICAgICAgdmFyIHRlc3RPYmoxID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWVOUygiKiIsICJkaXYiKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqMiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lTlMoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vY3Vz
dG9tbmFtZXNwYWNlIiwgImRpdiIpOworICAgICAgICAgICAgICAgaWYoMiA9PSB0ZXN0T2JqMS5s
ZW5ndGggJiYgMSA9PSB0ZXN0T2JqMi5sZW5ndGgpCisgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAg
IH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+
CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0
bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2ltcG9ydE5vZGUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2ltcG9ydE5vZGUtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkz
Y2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRG9jdW1lbnRfaW1wb3J0Tm9kZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2lt
cG9ydE5vZGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50
X2ltcG9ydE5vZGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiNTFjZjk3Y2M2M2QxOGJmYjNjZjhkNzg3NmE3
ZjNiNzA1OTRiZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRG9jdW1lbnRfaW1wb3J0Tm9kZS5odG0KQEAgLTAsMCArMSw2NCBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
PgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBp
bXBvcnROb2RlIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNv
bnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQ
SSBvbiBEb2N1bWVudCBJbnRlcmZhY2U6IGltcG9ydE5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RS
L0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0NvcmUtRG9jdW1lbnQtaW1wb3J0Tm9kZSIgLz4K
KyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBEb2N1
bWVudCBJbnRlcmZhY2UgaW1wb3J0Tm9kZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3Qp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgeG1sQmFzZWRE
b2MgPSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgibnMxIiwgInJvb3Qi
LCBudWxsKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0gZG9jdW1lbnQuaW1wb3J0Tm9k
ZSh4bWxCYXNlZERvYy5kb2N1bWVudEVsZW1lbnQsIHRydWUpOworICAgICAgICAgICAgICAgaWYo
ZG9jdW1lbnQgPT0gdGVzdE9iai5vd25lckRvY3VtZW50ICYmICJuczEiID09IHRlc3RPYmoubmFt
ZXNwYWNlVVJJICYmICJyb290IiA9PSB4bWxCYXNlZERvYy5kb2N1bWVudEVsZW1lbnQubG9jYWxO
YW1lKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNh
dGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVh
ZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQi
PlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVt
ZW50X2F0dHJpYnV0ZU5TSW50ZXJ0b3AtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfYXR0cmlidXRlTlNJbnRlcnRvcC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50
X2F0dHJpYnV0ZU5TSW50ZXJ0b3AtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X2F0dHJp
YnV0ZU5TSW50ZXJ0b3AuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0Vs
ZW1lbnRfYXR0cmlidXRlTlNJbnRlcnRvcC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDQzN2Y0ZGM4ZjM1M2Y1
ZDgzMDc3YzdjMWRjNzcwNGJkNTRjYTZlMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X2F0dHJpYnV0ZU5TSW50ZXJ0b3AuaHRtCkBA
IC0wLDAgKzEsNzAgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxv
cmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisK
KyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NP
RlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3Jl
OiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRob2QgaW50ZXJhY3Rpb24gd2l0
aCBFbGVtZW50IEludGVyZmFjZSBnZXRBdHRyaWJ1dGUgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0
YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGludGVyYWN0aW9uIGJl
dHdlZW4gRE9NIExldmVsIDEgQ29yZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6ICdnZXRBdHRy
aWJ1dGUnIGFuZCBET00gTGV2ZWwgMiBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVyZmFjZTogJ3Nl
dEF0dHJpYnV0ZU5TJy4gSW50ZXJvcGVyYWJpbGl0eSB0ZXN0Y2FzZSBpbnRlbmRlZCB0byBkZW1v
bnN0cmF0ZSBjcm9zcyBicm93c2VyIGludGVyb3BlcmFiaWxpdHkgaXNzdWVzIGJhc2VkIG9uIGlt
cGxlbWVudGF0aW9uIHNwZWNpZmljIGJlaGF2aW9yIGluIHRoZSBzcGVjIGRlc2NyaWJlZCBpbiBE
T00gQ29yZSwgaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0y
MDA0MDQwNy9jb3JlLmh0bWwjTmFtZXNwYWNlcy1Db25zaWRlcmF0aW9ucy4gRmFpbGluZyB0aGlz
IHRlc3QgZG9lcyBub3QgaW5kaWNhdGUgdGhhdCBhIGJyb3dzZXIgaXMgaW4gdmlvbGF0aW9uIG9m
IERPTSBMZXZlbCAzIENvcmUuIFJhdGhlciBpdCBpbmRpY2F0ZXMgdGhhdCB0aGlzIGJyb3dzZXIg
YmVoYXZlcyBkaWZmZXJlbnRseSBmcm9tIG90aGVyIGltcGxlbWVudGF0aW9ucyBpbiBhbiBhcmVh
IG9mIHRoZSBzcGVjIGRlZmluZWQgdG8gYmUgaW1wbGVtZW50YXRpb24gc3BlY2lmaWMuIiAvPgor
ICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEludGVy
YWN0aW9uIGJldHdlZW4gbmFtZXNwYWNlIGFuZCBub24tbmFtZXNwYWNlIEFQSXMiIC8+CisgICAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3Qo
cHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisKKyAgICAgICAgICAg
ICAgIHZhciBkeW5hbWljRWxlbSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCIsICJkaXYiKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNFbGVt
LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJ0ZXN0IHRleHQiKSk7CisgICAg
ICAgICAgICAgICBkeW5hbWljRWxlbS5zZXRBdHRyaWJ1dGVOUyhudWxsLCAiYWxpZ24iLCAicmln
aHQiKTsKKyAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuYXBwZW5kQ2hpbGQoZHluYW1pY0Vs
ZW0pOworCisgICAgICAgICAgICAgICB2YXIgdGVzdE9iaiA9IGR5bmFtaWNFbGVtLmdldEF0dHJp
YnV0ZSgiYWxpZ24iKTsKKworICAgICAgICAgICAgICAgaWYoInJpZ2h0IiA9PSB0ZXN0T2JqKQor
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZh
aWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUp
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFp
bCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5p
bmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X2hh
c0F0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FbGVtZW50X2hhc0F0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZk
ZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0cmlidXRlTlMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X2hhc0F0dHJpYnV0ZU5TLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X2hhc0F0dHJpYnV0ZU5TLmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hODkxZGY5ZjVjMTFlN2E0Y2NkYjhiYjQxODcxZDAxMDU5OWQyZWQ0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRf
aGFzQXR0cmlidXRlTlMuaHRtCkBAIC0wLDAgKzEsNjkgQEAKK++7vzwhRE9DVFlQRSBodG1sPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+Cisg
ICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBoYXNBdHRyaWJ1dGVOUyBt
ZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0
IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVu
dCBJbnRlcmZhY2U6IGhhc0F0dHJpYnV0ZU5TLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JF
Qy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1FbEhhc0F0dHJOUyIgLz4K
KyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVt
ZW50IEludGVyZmFjZSBoYXNBdHRyaWJ1dGVOUyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rl
c3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFy
IHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07
CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisKKyAgICAgICAgICAgICAgIHZhciBkeW5h
bWljRWxlbSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCIsICJkaXYiKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNFbGVtLmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJ0ZXN0IHRleHQiKSk7CisgICAgICAgICAgICAgICBk
eW5hbWljRWxlbS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21h
dHRybmFtZXNwYWNlIiwgImFsaWduIiwgInJpZ2h0Iik7CisgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmFwcGVuZENoaWxkKGR5bmFtaWNFbGVtKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0
UmVzdWx0ID0gZHluYW1pY0VsZW0uaGFzQXR0cmlidXRlTlMoImh0dHA6Ly93d3cuZXhhbXBsZS5j
b20vY3VzdG9tYXR0cm5hbWVzcGFjZSIsICJhbGlnbiIpOworCisgICAgICAgICAgICAgICBpZih0
ZXN0UmVzdWx0KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAg
ICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+Cisg
IDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3Ry
ZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FbGVtZW50X3JlbW92ZUF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X3JlbW92ZUF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1l
bnRfcmVtb3ZlQXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X3JlbW92
ZUF0dHJpYnV0ZU5TLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVt
ZW50X3JlbW92ZUF0dHJpYnV0ZU5TLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMzI3OWU2NzYzMmM1NTMwYTM4
YzcwNzIwNzIzNmEzNGEzN2VlNzAxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVtb3ZlQXR0cmlidXRlTlMuaHRtCkBAIC0wLDAg
KzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVt
ZW50IEludGVyZmFjZSByZW1vdmVBdHRyaWJ1dGVOUyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRh
IG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24g
b2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6IHJlbW92ZUF0dHJp
YnV0ZU5TLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIw
MDQwNDA3L2NvcmUuaHRtbCNJRC1FbFJlbUF0TlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVy
ZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRWxlbWVudCBJbnRlcmZhY2UgcmVtb3ZlQXR0
cmlidXRlTlMgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4K
KyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAg
ICAgICAgICAgeworCisgICAgICAgICAgICAgICB2YXIgZHluYW1pY0VsZW0gPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCAiZGl2Iik7Cisg
ICAgICAgICAgICAgICBkeW5hbWljRWxlbS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgidGVzdCB0ZXh0IikpOworICAgICAgICAgICAgICAgZHluYW1pY0VsZW0uc2V0QXR0cmli
dXRlTlMobnVsbCwgImFsaWduIiwgInJpZ2h0Iik7CisgICAgICAgICAgICAgICBkeW5hbWljRWxl
bS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21hdHRybmFtZXNw
YWNlIiwgImFsaWduIiwgImxlZnQiKTsKKyAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuYXBw
ZW5kQ2hpbGQoZHluYW1pY0VsZW0pOworICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICBk
eW5hbWljRWxlbS5yZW1vdmVBdHRyaWJ1dGVOUyhudWxsLCAiYWxpZ24iKTsKKworICAgICAgICAg
ICAgICAgaWYoIWR5bmFtaWNFbGVtLmhhc0F0dHJpYnV0ZU5TKG51bGwsICJhbGlnbiIpKQorICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9
IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwi
OworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7
CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJv
ZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8
L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X3NldEF0
dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1
N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfc2V0QXR0cmlidXRlTlMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41ZmNmMDI5Njk4YTZjYTNkYmY1ZjBhZWJiMzQwODE1YmY4ZGU0YmQ4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfc2V0
QXR0cmlidXRlTlMuaHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRo
b2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZv
ciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVudCBJ
bnRlcmZhY2U6IHNldEF0dHJpYnV0ZU5TLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1E
T00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1FbFNldEF0dHJOUyIgLz4KKyAg
ICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50
IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3Qp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisKKyAgICAgICAgICAgICAgIHZhciBkeW5hbWlj
RWxlbSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCIsICJkaXYiKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNFbGVtLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKCJ0ZXN0IHRleHQiKSk7CisgICAgICAgICAgICAgICBkeW5h
bWljRWxlbS5zZXRBdHRyaWJ1dGVOUyhudWxsLCAiYWxpZ24iLCAicmlnaHQiKTsKKyAgICAgICAg
ICAgICAgIGR5bmFtaWNFbGVtLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29t
L2N1c3RvbWF0dHJuYW1lc3BhY2UiLCAiYWxpZ24iLCAibGVmdCIpOworICAgICAgICAgICAgICAg
cHJlc2VudFJlc3VsdC5hcHBlbmRDaGlsZChkeW5hbWljRWxlbSk7CisKKyAgICAgICAgICAgICAg
IHZhciB0ZXN0UmVzdWx0ID0gZHluYW1pY0VsZW0uZ2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cu
ZXhhbXBsZS5jb20vY3VzdG9tYXR0cm5hbWVzcGFjZSIsICJhbGlnbiIpOworCisgICAgICAgICAg
ICAgICBpZigibGVmdCIgPT0gdGVzdFJlc3VsdCkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRt
bD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2Fkb3B0Tm9kZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3Vt
ZW50X2Fkb3B0Tm9kZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRl
ZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2Fkb3B0Tm9kZS5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2Fkb3B0Tm9kZS5o
dG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZTZmZmE3M2NlOTk4MjBmYWVkZWI0ZDk4YjI2ZTE0NWY4ZTQ1NTE4MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fRG9jdW1lbnRfYWRvcHROb2RlLmh0bQpAQCAtMCwwICsxLDc0IEBACivvu788IURPQ1RZ
UEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDC
qSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
TWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9u
LgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04g
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
CisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cisg
IDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGFkb3B0
Tm9kZSBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50
PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24g
RG9jdW1lbnQgSW50ZXJmYWNlOiBhZG9wdE5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1M
ZXZlbC0zLUNvcmUvY29yZS5odG1sI0RvY3VtZW50My1hZG9wdE5vZGUiIC8+CisgICAgPG1ldGEg
bmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJm
YWNlIGFkb3B0Tm9kZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgewor
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQg
PSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRy
eQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVs
bDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7CisKKyAgICAgICAgICAg
ICAgIHZhciB4bWxCYXNlZERvYyA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURvY3Vt
ZW50KCJuczEiLCAicm9vdCIsIG51bGwpOworICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1lbnQuYWRvcHROb2Rl
KHhtbEJhc2VkRG9jKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUp
CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZig5ID09IGV4Y2VwdGlvbk9iamVj
dC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAg
IH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+
CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0
bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlv
bl9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRm
YzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0
ZUF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVh
dGVBdHRyaWJ1dGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM4N2Y0YmRhYTE2
YTQ3Y2E2M2MxZjA1NGJiODEzZjRkZmEwMzBlMDQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUF0dHJp
YnV0ZS5odG0KQEAgLTAsMCArMSw3MiBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBjcmVhdGVBdHRyaWJ1dGUgbWV0aG9kPC90
aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhl
IGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50IEludGVy
ZmFjZTogY3JlYXRlQXR0cmlidXRlIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBjcmVhdGVBdHRyaWJ1dGUg
bWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBm
dW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
eworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAg
ICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxsOworICAgICAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1lbnQuY3JlYXRl
QXR0cmlidXRlKCIuIik7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChl
KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBl
OworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoNSA9PSBleGNlcHRpb25PYmpl
Y3QuY29kZSAmJiBudWxsID09IHJldHVyblZhbHVlKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0
aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVu
dF9jcmVhdGVDREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9j
dW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42YzUwN2E5NzRkODc2M2Q4YTNmNmEzOGIzMWZmZTNjMWExMTkxY2ViCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1
bWVudF9jcmVhdGVDREFUQVNlY3Rpb24uaHRtCkBAIC0wLDAgKzEsNzIgQEAKK++7vzwhRE9DVFlQ
RSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKp
IDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBN
aWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1h
eSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24u
CisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAg
PGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgY3JlYXRl
Q0RBVEFTZWN0aW9uIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24i
IGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3Jl
IEFQSSBvbiBEb2N1bWVudCBJbnRlcmZhY2U6IGNyZWF0ZUNEQVRBU2VjdGlvbi4gaHR0cDovL3d3
dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtRDI2QzBBRjgiIC8+Cisg
ICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1l
bnQgSW50ZXJmYWNlIGNyZWF0ZUNEQVRBU2VjdGlvbiBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlU
b1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhj
ZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51
bGw7CisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5jcmVhdGVDREFUQVNlY3Rpb24oInRleHQiKTsKKyAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICBpZig5ID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0g
cmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0
LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAg
ICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4K
KyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVz
dHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlRWxl
bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVm
OWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlRWxlbWVudC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50Lmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlRWxlbWVu
dC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNGIyY2MxYjAxNzgyNjYxOTdkNmE0NjUzMDNhN2RmZjIyNGNkNmNi
NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlRWxlbWVudC5odG0KQEAgLTAsMCArMSw3MiBAQAor77u/
PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5
cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmli
dXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBP
UkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFj
ZSBjcmVhdGVFbGVtZW50IG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRp
b24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBD
b3JlIEFQSSBvbiBEb2N1bWVudCBJbnRlcmZhY2U6IGNyZWF0ZUVsZW1lbnQiIC8+CisgICAgPG1l
dGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50
ZXJmYWNlIGNyZWF0ZUVsZW1lbnQgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAg
ICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50
UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAg
ICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVj
dCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxsOworICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZh
bHVlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiMCIpOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlm
KDUgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQ
YXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsK
KyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAg
ICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOwor
ICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9k
aXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3Vt
ZW50X3htbFZlcnNpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94bWxWZXJzaW9uLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1
bWVudF94bWxWZXJzaW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50
X3htbFZlcnNpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9Eb2N1bWVudF94bWxWZXJzaW9uLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMjUyZDUyYTc1MDM3Mjc4
NzU1ZGNiYWY4N2FlZTY5ZTFhZmI0YzEzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94bWxWZXJzaW9uLmh0bQpA
QCAtMCwwICsxLDcyIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBs
b3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogor
CisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
CisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUg
bmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29y
ZTogRG9jdW1lbnQgSW50ZXJmYWNlIHhtbFZlcnNpb24gcHJvcGVydHkgc2V0dGVyPC90aXRsZT4K
KyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxl
bWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50IEludGVyZmFjZTog
eG1sVmVyc2lvbiBwcm9wZXJ0eSBzZXR0ZXIuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZl
bC0zLUNvcmUvY29yZS5odG1sI0lELUQyNkMwQUY4IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1
cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSB4bWxWZXJz
aW9uIHByb3BlcnR5IHNldHRlciIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7Cisg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxs
OworICAgICAgICAgICAgICAgdmFyIHByZXZpb3VzVmFsdWUgPSBkb2N1bWVudC54bWxWZXJzaW9u
OworICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
IGRvY3VtZW50LnhtbFZlcnNpb24gPSAzOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9u
T2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDkgPT0gZXhj
ZXB0aW9uT2JqZWN0LmNvZGUgJiYgcHJldmlvdXNWYWx1ZSA9PSBkb2N1bWVudC54bWxWZXJzaW9u
KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5l
ckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9
IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNo
KGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
RmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4K
KyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1
bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fRWxlbWVudF9zZXRBdHRyaWJ1dGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fRWxlbWVudF9zZXRBdHRyaWJ1dGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZS5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWE2
YjE4YzFlYjI1ZmYwZjQxZDU0NWIzMGViMDQ2OTRhODhlNDhjOQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRB
dHRyaWJ1dGUuaHRtCkBAIC0wLDAgKzEsNzMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQor
IEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNh
dGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9y
YXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1s
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRp
dGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGUgbWV0aG9kPC90
aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhl
IGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJm
YWNlOiBzZXRBdHRyaWJ1dGUuIElOVkFMSURfQ0hBUkFDVEVSX0VSUjogUmFpc2VkIGlmIHRoZSBz
cGVjaWZpZWQgbmFtZSBpcyBub3QgYW4gWE1MIG5hbWUgYWNjb3JkaW5nIHRvIHRoZSBYTUwgdmVy
c2lvbiBpbiB1c2Ugc3BlY2lmaWVkIGluIHRoZSBEb2N1bWVudC54bWxWZXJzaW9uIGF0dHJpYnV0
ZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtRjY4
RjA4MiIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBD
b3JlOiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGUgbWV0aG9kIiAvPgorICAgIDxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3Bl
cnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRp
diIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFy
IGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgZWxlbU5vZGUgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb28iKTsKKworICAgICAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGVsZW1Ob2RlLnNldEF0dHJpYnV0ZSgiLiIs
ICJ2YWx1ZSIpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDUgPT0gZXhjZXB0aW9uT2JqZWN0LmNv
ZGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1M
PSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+
UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNj
ZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUy5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMzg4ZDIyMDZmZTU4MDZkODhkN2M3YjJlNTU4YmExZWMyNzA0MjQ3ZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
RWxlbWVudF9zZXRBdHRyaWJ1dGVOUy5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBF
IGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkg
MjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgor
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8
aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJp
YnV0ZU5TIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRl
bnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBv
biBFbGVtZW50IEludGVyZmFjZTogc2V0QXR0cmlidXRlTlMuIE5BTUVTUEFDRV9FUlI6IFJhaXNl
ZCBpZiB0aGUgcXVhbGlmaWVkTmFtZSBpcyBtYWxmb3JtZWQgcGVyIHRoZSBOYW1lc3BhY2VzIGlu
IFhNTCBzcGVjaWZpY2F0aW9uLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3Jl
L2NvcmUuaHRtbCNJRC1FbFNldEF0dHJOUyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBj
b250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVO
UyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAg
ICAgICAgIHZhciBlbGVtTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImZvbyIpOworCisg
ICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZWxl
bU5vZGUuc2V0QXR0cmlidXRlTlMoIm5zMSIsICI6IiwgInZhbHVlIik7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgaWYoMTQgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUpCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQor
ICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRl
c3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0
ZU5TMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3Nl
dEF0dHJpYnV0ZU5TMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3Nl
dEF0dHJpYnV0ZU5TMi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NDUwOGU0NGE4
MDUyODk1MmU5NWUwODI3YzhmMjhlZWYyODQyYzU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0
ZU5TMi5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhvZDwvdGl0
bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBp
bXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVyZmFj
ZTogc2V0QXR0cmlidXRlTlMuIE5BTUVTUEFDRV9FUlI6IGlmIHRoZSBxdWFsaWZpZWROYW1lIGhh
cyBhIHByZWZpeCBhbmQgdGhlIG5hbWVzcGFjZVVSSSBpcyBudWxsLiBodHRwOi8vd3d3LnczLm9y
Zy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC1FbFNldEF0dHJOUyIgLz4KKyAgICA8
bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50IElu
dGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisg
ICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNl
bnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAg
ICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2Jq
ZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBlbGVtTm9kZSA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImZvbyIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgZWxlbU5vZGUuc2V0QXR0cmlidXRlTlMobnVsbCwgInByZTE6YXR0
ck5hbWUiLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNo
KGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9
IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigxNCA9PSBleGNlcHRpb25P
YmplY3QuY29kZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAg
ICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0Pgor
ICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0
cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1
dGVOUzMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1
ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1
dGVOUzMuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM1YzNkYWY1MDk1ZDRhNThkOWVjYjlhMzJhMTNlMmExNDQw
MTgzNTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLmh0bQpAQCAtMCwwICsxLDczIEBA
Civvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2Vz
IENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNv
bnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRl
biBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQg
Q09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
CisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRWxlbWVudCBJbnRl
cmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNj
cmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZl
bCAzIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJmYWNlOiBzZXRBdHRyaWJ1dGVOUy4gTkFNRVNQ
QUNFX0VSUjogaWYgdGhlIHF1YWxpZmllZE5hbWUgaGFzIGEgcHJlZml4IHRoYXQgaXMgJ3htbCcg
YW5kIHRoZSBuYW1lc3BhY2VVUkkgaXMgZGlmZmVyZW50IGZyb20gJ2h0dHA6Ly93d3cudzMub3Jn
L1hNTC8xOTk4L25hbWVzcGFjZScuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNv
cmUvY29yZS5odG1sI0lELUVsU2V0QXR0ck5TIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUi
IGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0
ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAg
ICAgICAgICAgdmFyIGVsZW1Ob2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9vIik7CisK
KyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBl
bGVtTm9kZS5zZXRBdHRyaWJ1dGVOUygibnMxIiwgInhtbDphdHRyTmFtZSIsICJ2YWx1ZSIpOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGlmKDE0ID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlKQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBh
c3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rp
dj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVu
dF9zZXRBdHRyaWJ1dGVOUzQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TNC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TNC5odG0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYTFhMTgzNTJhMWNmOWQ3Y2FlNDdiMDkxNTdiZDc0ZDFkODlhOTU5MAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVu
dF9zZXRBdHRyaWJ1dGVOUzQuaHRtCkBAIC0wLDAgKzEsNzMgQEAKK++7vzwhRE9DVFlQRSBodG1s
PgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIg
TWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQor
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCist
LT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+
CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVO
UyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJU
ZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxl
bWVudCBJbnRlcmZhY2U6IHNldEF0dHJpYnV0ZU5TLiBOQU1FU1BBQ0VfRVJSOiBpZiB0aGUgcXVh
bGlmaWVkTmFtZSBvciBpdHMgcHJlZml4IGlzICd4bWxucycgYW5kIHRoZSBuYW1lc3BhY2VVUkkg
aXMgZGlmZmVyZW50IGZyb20gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvJy4gaHR0cDov
L3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtRWxTZXRBdHRyTlMi
IC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTog
RWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5
VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAg
IHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIp
WzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4
Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgZWxlbU5vZGUgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJmb28iKTsKKworICAgICAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgIGVsZW1Ob2RlLnNldEF0dHJpYnV0ZU5TKCJuczEi
LCAieG1sbnM6YXR0ck5hbWUiLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2Vw
dGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigxNCA9
PSBleGNlcHRpb25PYmplY3QuY29kZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAg
IDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM1LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVu
dF9zZXRBdHRyaWJ1dGVOUzUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNj
Njg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM1
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM1
Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVu
dF9zZXRBdHRyaWJ1dGVOUzUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVjYzAyMjc1ODJkOGZkNGU0NjQzNjk0
NDU0NzI0N2VjNmEzNTUyMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM1Lmh0bQpAQCAt
MCwwICsxLDczIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTog
RWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0
YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9u
IG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJmYWNlOiBzZXRBdHRyaWJ1
dGVOUy4gTkFNRVNQQUNFX0VSUjogb3IgaWYgdGhlIG5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3
dy53My5vcmcvMjAwMC94bWxucy8nIGFuZCBuZWl0aGVyIHRoZSBxdWFsaWZpZWROYW1lIG5vciBp
dHMgcHJlZml4IGlzICd4bWxucycuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNv
cmUvY29yZS5odG1sI0lELUVsU2V0QXR0ck5TIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUi
IGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0
ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAg
ICAgICAgICAgdmFyIGVsZW1Ob2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9vIik7CisK
KyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBl
bGVtTm9kZS5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC94bWxucy8iLCAi
cHJlOmF0dHJOYW1lIiwgInZhbHVlIik7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25P
YmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoMTQgPT0gZXhj
ZXB0aW9uT2JqZWN0LmNvZGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0K
KyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3Nj
cmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBp
ZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5vZGUyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9z
ZXRBdHRyaWJ1dGVOb2RlMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2
ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2Rl
Mi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5v
ZGUyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxl
bWVudF9zZXRBdHRyaWJ1dGVOb2RlMi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWM4ODI3ZWMzNTQ5MWQzMThi
MzE5YmJhNzY4NTExM2RiNGY3NzAwMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2RlMi5o
dG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQg
RXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3Ig
dGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1J
Q1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwz
IENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5vZGUgbWV0aG9kPC90aXRsZT4K
KyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxl
bWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJmYWNlOiBz
ZXRBdHRyaWJ1dGVOb2RlLiBJTlVTRV9BVFRSSUJVVEVfRVJSOiBSYWlzZWQgaWYgbmV3QXR0ciBp
cyBhbHJlYWR5IGFuIGF0dHJpYnV0ZSBvZiBhbm90aGVyIEVsZW1lbnQgb2JqZWN0LiBodHRwOi8v
d3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC04ODcyMzYxNTQiIC8+
CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRWxl
bWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTm9kZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlU
b1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhj
ZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBlbGVtTm9kZSA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImZvbyIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZWxlbU5vZGUuc2V0QXR0cmlidXRlTm9kZShwcmVz
ZW50UmVzdWx0LmdldEF0dHJpYnV0ZU5vZGUoImlkIikpOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlm
KDEwID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlKQorICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9
CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgor
ICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBw
ZW5kQ2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNi
M2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQuaHRtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjBkYjE4YzFhZWJkYzRmZTk4MzRmZTVmNDFmNDg1MDMwOGY2Y2Y3Y2MKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVf
YXBwZW5kQ2hpbGQuaHRtCkBAIC0wLDAgKzEsNzMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBhcHBlbmRDaGlsZCBtZXRob2Q8L3Rp
dGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUg
aW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6
IGFwcGVuZENoaWxkLiBISUVSQVJDSFlfUkVRVUVTVF9FUlI6IFJhaXNlZCBpZiB0aGlzIG5vZGUg
aXMgb2YgYSB0eXBlIHRoYXQgZG9lcyBub3QgYWxsb3cgY2hpbGRyZW4gb2YgdGhlIHR5cGUgb2Yg
dGhlIG5ld0NoaWxkIG5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUv
Y29yZS5odG1sI0lELTE4NEU3MTA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGFwcGVuZENoaWxkIG1ldGhvZCIg
Lz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24g
UnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFy
IHJldHVyblZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1lbnQuYXBwZW5kQ2hpbGQo
ZG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlKCJhdHRyaWJ1dGUiKSk7CisgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgaWYoMyA9PSBleGNlcHRpb25PYmplY3QuY29kZSAmJiBudWxsID09IHJldHVyblZhbHVlKQor
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZh
aWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUp
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFp
bCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5p
bmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
Tm9kZV9hcHBlbmRDaGlsZDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxkMi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9k
ZV9hcHBlbmRDaGlsZDItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBl
bmRDaGlsZDIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlv
bl9Ob2RlX2FwcGVuZENoaWxkMi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGM3N2JjNmNjODI1ZWFhM2Y0Mzc4
NTY4NzdhNjY3ODc1MDhiNGQzNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDIuaHRtCkBAIC0wLDAg
KzEsNzMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2Rl
IEludGVyZmFjZSBhcHBlbmRDaGlsZCBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRl
c2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExl
dmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IGFwcGVuZENoaWxkLiBISUVSQVJDSFlf
UkVRVUVTVF9FUlI6IG9yIGlmIHRoZSBub2RlIHRvIGFwcGVuZCBpcyBvbmUgb2YgdGhpcyBub2Rl
J3MgYW5jZXN0b3JzIG9yIHRoaXMgbm9kZSBpdHNlbGYuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RP
TS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELTE4NEU3MTA3IiAvPgorICAgIDxtZXRhIG5hbWU9
IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGFwcGVu
ZENoaWxkIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAg
ICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdHJ5
CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChkb2N1bWVudC5ib2R5KTsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
IGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBp
ZigzID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
UGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsK
KyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2Rl
X2FwcGVuZENoaWxkMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2Fw
cGVuZENoaWxkMy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENo
aWxkMy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05v
ZGVfYXBwZW5kQ2hpbGQzLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjk3MWU5OWRlNjE4ODU4YTJlNzQwN2M5
M2Y1MzY0MWRhZGViYzcyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxkMy5odG0KQEAgLTAsMCArMSw3
MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50
ZXJmYWNlIGFwcGVuZENoaWxkIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3Jp
cHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwg
MyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogYXBwZW5kQ2hpbGQuIEhJRVJBUkNIWV9SRVFV
RVNUX0VSUjogb3IgaWYgdGhpcyBub2RlIGlzIG9mIHR5cGUgRG9jdW1lbnQgYW5kIHRoZSBET00g
YXBwbGljYXRpb24gYXR0ZW1wdHMgdG8gYXBwZW5kIGEgc2Vjb25kIERvY3VtZW50VHlwZSBvciBF
bGVtZW50IG5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5o
dG1sI0lELTE4NEU3MTA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRP
TSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGFwcGVuZENoaWxkIG1ldGhvZCIgLz4KKyAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVz
dChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKwor
ICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVy
blZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1lbnQuYXBwZW5kQ2hpbGQoZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgicm9vdCIpKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlv
bk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigzID09IGV4
Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAg
eworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAg
ICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8
L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJl
Zm9yZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1
N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9y
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZS5odG0g
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0
QmVmb3JlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjI0NTJlMGEwYmU4YjQyZDYwZmNkZWQ0ZjcxNzVkZTg3
NjcwZmE2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZS5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/
PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5
cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmli
dXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBP
UkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlu
c2VydEJlZm9yZSBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBj
b250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBB
UEkgb24gTm9kZSBJbnRlcmZhY2U6IGluc2VydEJlZm9yZS4gSElFUkFSQ0hZX1JFUVVFU1RfRVJS
OiBSYWlzZWQgaWYgdGhpcyBub2RlIGlzIG9mIGEgdHlwZSB0aGF0IGRvZXMgbm90IGFsbG93IGNo
aWxkcmVuIG9mIHRoZSB0eXBlIG9mIHRoZSBuZXdDaGlsZCBub2RlLiBodHRwOi8vd3d3LnczLm9y
Zy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC05NTIyODA3MjciIC8+CisgICAgPG1l
dGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZh
Y2UgaW5zZXJ0QmVmb3JlIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7
CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3Vs
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAg
dHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBu
dWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKworICAgICAgICAg
ICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVl
ID0gZG9jdW1lbnQuaW5zZXJ0QmVmb3JlKGRvY3VtZW50LmNyZWF0ZUF0dHJpYnV0ZSgiYXR0cmli
dXRlIiksIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBl
eGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYo
MyA9PSBleGNlcHRpb25PYmplY3QuY29kZSAmJiBudWxsID09IHJldHVyblZhbHVlKQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBh
c3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rp
dj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9p
bnNlcnRCZWZvcmUyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4wNTMzZjQ1NDkwYzE4NjY4ODcxYjAxYmJmNjg3YWI5NDk5YjEzYzcxCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2lu
c2VydEJlZm9yZTItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUGFzcworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5z
ZXJ0QmVmb3JlMi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0
aW9uX05vZGVfaW5zZXJ0QmVmb3JlMi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmZmMjE3NzEwZTcxMzNlODEy
ODdlODM3OWE1ODcxNDkxNTE0NzhmNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUyLmh0bQpAQCAt
MCwwICsxLDc3IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTog
Tm9kZSBJbnRlcmZhY2UgaW5zZXJ0QmVmb3JlIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFt
ZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBE
T00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogaW5zZXJ0QmVmb3JlLiBISUVS
QVJDSFlfUkVRVUVTVF9FUlI6IG9yIGlmIHRoZSBub2RlIHRvIGluc2VydCBpcyBvbmUgb2YgdGhp
cyBub2RlJ3MgYW5jZXN0b3JzIG9yIHRoaXMgbm9kZSBpdHNlbGYuIGh0dHA6Ly93d3cudzMub3Jn
L1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELTk1MjI4MDcyNyIgLz4KKyAgICA8bWV0
YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFj
ZSBpbnNlcnRCZWZvcmUgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsK
KyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0
cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51
bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxsOworCisgICAgICAgICAg
ICAgICB2YXIgdGVzdFBhcmVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXJlbnRFbGVt
Iik7CisgICAgICAgICAgICAgICB2YXIgdGVzdENoaWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImNoaWxkRWxlbSIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSB0ZXN0UGFyZW50Lmluc2VydEJlZm9yZSh0
ZXN0UGFyZW50LCB0ZXN0Q2hpbGQpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
Y2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2Jq
ZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDMgPT0gZXhjZXB0
aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9
CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPHNw
YW4gaWQ9InBhcmVudEVsZW0iPjxzcGFuIGlkPSJjaGlsZEVsZW0iPjwvc3Bhbj48L3NwYW4+Cisg
IDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0
QmVmb3JlMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlMy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2
ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRC
ZWZvcmUzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3Jl
My5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVf
aW5zZXJ0QmVmb3JlMy5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjNhMTQ4YTFmYmU5OGE1YzZjNDc3YTE1NWIw
MDdmN2U1MDNkNjVmZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUzLmh0bQpAQCAtMCwwICsxLDcz
IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBh
Z2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRz
IGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3Jp
dHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NP
RlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRl
cmZhY2UgaW5zZXJ0QmVmb3JlIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3Jp
cHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwg
MyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogaW5zZXJ0QmVmb3JlLiBISUVSQVJDSFlfUkVR
VUVTVF9FUlI6IG9yIGlmIHRoaXMgbm9kZSBpcyBvZiB0eXBlIERvY3VtZW50IGFuZCB0aGUgRE9N
IGFwcGxpY2F0aW9uIGF0dGVtcHRzIHRvIGluc2VydCBhIHNlY29uZCBEb2N1bWVudFR5cGUgb3Ig
RWxlbWVudCBub2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUu
aHRtbCNJRC05NTIyODA3MjciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0i
RE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaW5zZXJ0QmVmb3JlIG1ldGhvZCIgLz4K
KyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVu
VGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlU
YWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJl
dHVyblZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gZG9jdW1lbnQuaW5zZXJ0QmVmb3JlKGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoIm5ld3Jvb3QiKSwgZG9jdW1lbnQuZmlyc3RDaGlsZCk7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgaWYoMyA9PSBleGNlcHRpb25PYmplY3QuY29kZSAmJiBudWxsID09
IHJldHVyblZhbHVlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2Vu
dFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3Vs
dC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAg
ICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0
LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+
CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRl
c3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmU1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmU1LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTMzZjQ1NDkwYzE4NjY4ODcxYjAxYmJmNjg3YWI5NDk5
YjEzYzcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MiBAQAorUGFzcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlNS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlNS5odG0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZTA5Mjg1ZDhkNTc1YWY3M2NkOTQ2Y2U0ZDIzZTgwNGUyMjU1NmQ0NgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9p
bnNlcnRCZWZvcmU1Lmh0bQpAQCAtMCwwICsxLDc1IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAg
IDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaW5zZXJ0QmVmb3JlIG1ldGhvZDwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFj
ZTogaW5zZXJ0QmVmb3JlLiBOT1RfRk9VTkRfRVJSOiBSYWlzZWQgaWYgcmVmQ2hpbGQgaXMgbm90
IGEgY2hpbGQgb2YgdGhpcyBub2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1D
b3JlL2NvcmUuaHRtbCNJRC05NTIyODA3MjciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIg
Y29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaW5zZXJ0QmVmb3JlIG1l
dGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVu
Y3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAg
ICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBzaWJsaW5nRWxl
bSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWJsaW5nIik7CisKKyAgICAgICAgICAgICAg
IHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICByZXR1cm5WYWx1ZSA9IHBy
ZXNlbnRSZXN1bHQuaW5zZXJ0QmVmb3JlKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKSwg
c2libGluZ0VsZW0pOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsK
KyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDggPT0gZXhjZXB0aW9uT2JqZWN0
LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0ic2li
bGluZyI+PC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0
aW9uX05vZGVfcHJlZml4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1
MzNmNDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1Bhc3MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3ByZWZpeC5odG0gYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Lmh0
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5mZjRkNjVlMDI3Yzc0YmM0ZmU0OTIyOTZjMTFiNzcxYjRhNzEwNTdmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9Ob2RlX3ByZWZpeC5odG0KQEAgLTAsMCArMSw3NyBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHByZWZpeCBwcm9wZXJ0eSBz
ZXR0ZXI8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0
IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJ
bnRlcmZhY2U6IHByZWZpeCBzZXR0ZXIuIElOVkFMSURfQ0hBUkFDVEVSX0VSUjogUmFpc2VkIGlm
IHRoZSBzcGVjaWZpZWQgcHJlZml4IGNvbnRhaW5zIGFuIGlsbGVnYWwgY2hhcmFjdGVyIGFjY29y
ZGluZyB0byB0aGUgWE1MIHZlcnNpb24gaW4gdXNlIHNwZWNpZmllZCBpbiB0aGUgRG9jdW1lbnQu
eG1sVmVyc2lvbiBhdHRyaWJ1dGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNv
cmUvY29yZS5odG1sI0lELU5vZGVOU1ByZWZpeCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJl
IiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBwcmVmaXggcHJvcGVy
dHkgc2V0dGVyIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAg
ICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAg
ICAgICAgICB2YXIgcHJldmlvdXNWYWx1ZSA9IG51bGw7CisKKyAgICAgICAgICAgICAgIHZhciBw
cmVmaXhlZEVsZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoIm5zMSIsICJwcmUxOmZvbyIp
OworICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwcmVmaXhlZEVsZW0p
OworICAgICAgICAgICAgICAgcHJldmlvdXNWYWx1ZSA9IHByZWZpeGVkRWxlbS5wcmVmaXg7CisK
KyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBw
cmVmaXhlZEVsZW0ucHJlZml4ID0gIi4iOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9u
T2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDUgPT0gZXhj
ZXB0aW9uT2JqZWN0LmNvZGUgJiYgcHJldmlvdXNWYWx1ZSA9PSBwcmVmaXhlZEVsZW0ucHJlZml4
KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5l
ckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9
IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNo
KGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
RmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4K
KyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1
bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fTm9kZV9wcmVmaXgyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4w
NTMzZjQ1NDkwYzE4NjY4ODcxYjAxYmJmNjg3YWI5NDk5YjEzYzcxCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3ByZWZp
eDItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUGFzcworCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Mi5odG0g
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4
Mi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNGJiYWI4NmNiODEzMGJiMzdkZTY1YWFmNTg2YTE4Mjg5NjM2ZmYz
ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fTm9kZV9wcmVmaXgyLmh0bQpAQCAtMCwwICsxLDc3IEBACivvu788IURPQ1RZUEUg
aHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxo
ZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgcHJlZml4IHByb3Bl
cnR5IHNldHRlcjwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9
IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBO
b2RlIEludGVyZmFjZTogcHJlZml4IHNldHRlci4gTkFNRVNQQUNFX0VSUjogUmFpc2VkIGlmIHRo
ZSBzcGVjaWZpZWQgcHJlZml4IGlzIG1hbGZvcm1lZCBwZXIgdGhlIE5hbWVzcGFjZXMgaW4gWE1M
IHNwZWNpZmljYXRpb24uIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29y
ZS5odG1sI0lELU5vZGVOU1ByZWZpeCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250
ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBwcmVmaXggcHJvcGVydHkgc2V0
dGVyIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAg
ICB2YXIgcHJldmlvdXNWYWx1ZSA9IG51bGw7CisKKyAgICAgICAgICAgICAgIHZhciBwcmVmaXhl
ZEVsZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoIm5zMSIsICJwcmUxOmZvbyIpOworICAg
ICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwcmVmaXhlZEVsZW0pOworICAg
ICAgICAgICAgICAgcHJldmlvdXNWYWx1ZSA9IHByZWZpeGVkRWxlbS5wcmVmaXg7CisKKyAgICAg
ICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBwcmVmaXhl
ZEVsZW0ucHJlZml4ID0gInhtbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBj
YXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmpl
Y3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoMTQgPT0gZXhjZXB0
aW9uT2JqZWN0LmNvZGUgJiYgcHJldmlvdXNWYWx1ZSA9PSBwcmVmaXhlZEVsZW0ucHJlZml4KQor
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZh
aWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUp
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFp
bCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5p
bmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
Tm9kZV9yZW1vdmVDaGlsZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVtb3ZlQ2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjA1MzNmNDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVf
cmVtb3ZlQ2hpbGQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUGFzcworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVt
b3ZlQ2hpbGQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlv
bl9Ob2RlX3JlbW92ZUNoaWxkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NTA4NTM3MDJmNTc2NjhhNjgwN2Nl
NGJjYzFjYmQxZDY2ZGM1ZTcyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlbW92ZUNoaWxkLmh0bQpAQCAtMCwwICsx
LDc1IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0
IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhl
ciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2Yg
aXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisg
d3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNS
T1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBP
UkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5v
cmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJ
bnRlcmZhY2UgcmVtb3ZlQ2hpbGQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNj
cmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZl
bCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiByZW1vdmVDaGlsZC4gTk9UX0ZPVU5EX0VS
UjogUmFpc2VkIGlmIG9sZENoaWxkIGlzIG5vdCBhIGNoaWxkIG9mIHRoaXMgbm9kZS4gaHR0cDov
L3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtMTczNDgzNDA2NiIg
Lz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBO
b2RlIEludGVyZmFjZSByZW1vdmVDaGlsZCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3Qp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9u
T2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7Cisg
ICAgICAgICAgICAgICB2YXIgc2libGluZ0VsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
c2libGluZyIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBwcmVzZW50UmVzdWx0LnJlbW92ZUNoaWxkKHNpYmxp
bmdFbGVtKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZig4ID09IGV4Y2VwdGlvbk9iamVjdC5jb2Rl
ICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAg
ICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxkaXYgaWQ9InNpYmxpbmci
PjwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9O
b2RlX3JlcGxhY2VDaGlsZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4wNTMzZjQ1NDkwYzE4NjY4ODcxYjAxYmJmNjg3YWI5NDk5YjEzYzcxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2Rl
X3JlcGxhY2VDaGlsZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQYXNzCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9y
ZXBsYWNlQ2hpbGQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9Ob2RlX3JlcGxhY2VDaGlsZC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjMxOWMyOTgyYmE4Y2Y1Y2Jj
MGRhMTZkNDQ1YjJhMmRlMDVmY2E1NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQuaHRtCkBAIC0w
LDAgKzEsNzUgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVy
IFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
CisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQg
Q09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBO
b2RlIEludGVyZmFjZSByZXBsYWNlQ2hpbGQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1l
PSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERP
TSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiByZXBsYWNlQ2hpbGQuIEhJRVJB
UkNIWV9SRVFVRVNUX0VSUjogUmFpc2VkIGlmIHRoaXMgbm9kZSBpcyBvZiBhIHR5cGUgdGhhdCBk
b2VzIG5vdCBhbGxvdyBjaGlsZHJlbiBvZiB0aGUgdHlwZSBvZiB0aGUgbmV3Q2hpbGQgbm9kZS4g
aHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtNzg1ODg3
MzA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENv
cmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlU
b1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhj
ZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51
bGw7CisgICAgICAgICAgICAgICB2YXIgdGVzdFBhcmVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwYXJlbnRFbGVtIik7CisgICAgICAgICAgICAgICB2YXIgdGVzdENoaWxkID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImNoaWxkRWxlbSIpOworICAgICAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gdGVzdFBhcmVudC5y
ZXBsYWNlQ2hpbGQoZG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlKCJhdHRyaWJ1dGUiKSwgdGVzdENo
aWxkKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICBpZigzID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYm
IG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
IH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8
L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxzcGFuIGlkPSJwYXJlbnRFbGVt
Ij48c3BhbiBpZD0iY2hpbGRFbGVtIj48L3NwYW4+PC9zcGFuPgorICA8L2JvZHk+Cis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDItZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3Jl
cGxhY2VDaGlsZDItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1MzNmNDU0OTBjMTg2Njg4NzFi
MDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMi1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyIEBACitQYXNzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQyLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQy
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi45ZjZkNDczYjcyOTE2YjVkMzQ3OTg4N2Y5NGEyMmQzNzQ0YWRmYzU5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDIuaHRtCkBAIC0wLDAgKzEsNzUgQEAKK++7vzwhRE9D
VFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0
IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3Jz
IG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Np
b24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElP
TiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4K
KyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSByZXBsYWNl
Q2hpbGQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVu
dD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9u
IE5vZGUgSW50ZXJmYWNlOiByZXBsYWNlQ2hpbGQuIEhJRVJBUkNIWV9SRVFVRVNUX0VSUjogb3Ig
aWYgdGhlIG5vZGUgdG8gcHV0IGluIGlzIG9uZSBvZiB0aGlzIG5vZGUncyBhbmNlc3RvcnMgb3Ig
dGhpcyBub2RlIGl0c2VsZi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9j
b3JlLmh0bWwjSUQtNzg1ODg3MzA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBtZXRob2Qi
IC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9u
IFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50
c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZh
ciByZXR1cm5WYWx1ZSA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgdGVzdFBhcmVudCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXJlbnRFbGVtIik7CisgICAgICAgICAgICAgICB2YXIg
dGVzdENoaWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoaWxkRWxlbSIpOworICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZh
bHVlID0gdGVzdFBhcmVudC5yZXBsYWNlQ2hpbGQodGVzdFBhcmVudCwgdGVzdENoaWxkKTsKKyAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICBpZigzID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0g
cmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0
LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAg
ICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4K
KyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVz
dHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxzcGFuIGlkPSJwYXJlbnRFbGVtIj48c3BhbiBp
ZD0iY2hpbGRFbGVtIj48L3NwYW4+PC9zcGFuPgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGls
ZDMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1MzNmNDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdh
Yjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyIEBACitQYXNzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQzLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQzLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5iMjNiYmM5MTExYjgzZjEwNzkxYzcxNjcxMDRiYWZjMjYwYWZlMDM1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9O
b2RlX3JlcGxhY2VDaGlsZDMuaHRtCkBAIC0wLDAgKzEsNzUgQEAKK++7vzwhRE9DVFlQRSBodG1s
PgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIg
TWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQor
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCist
LT4KKzwhLS0gY29tbWVudCBiZWZvcmUgcm9vdCBlbGVtZW50IC0tPgorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwz
IENvcmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBtZXRob2Q8L3RpdGxlPgorICAgIDxt
ZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRp
b24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IHJlcGxhY2VDaGls
ZC4gSElFUkFSQ0hZX1JFUVVFU1RfRVJSOiBvciBpZiB0aGlzIG5vZGUgaXMgb2YgdHlwZSBEb2N1
bWVudCBhbmQgdGhlIHJlc3VsdCBvZiB0aGUgcmVwbGFjZW1lbnQgb3BlcmF0aW9uIHdvdWxkIGFk
ZCBhIHNlY29uZCBEb2N1bWVudFR5cGUgb3IgRWxlbWVudCBvbiB0aGUgRG9jdW1lbnQgbm9kZS4g
aHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtNzg1ODg3
MzA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENv
cmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlU
b1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
OworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2Vw
dGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxs
OworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5yZXBsYWNlQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgicm9vdCIpLCBkb2N1bWVudC5kb2N0eXBlKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4
Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigz
ID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmZpcnN0Q2hpbGQuZGF0
YT0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmZpcnN0Q2hpbGQuZGF0
YT0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuZmlyc3RDaGls
ZC5kYXRhPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAg
PC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJl
c3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxpZnJhbWUgaWQ9InRlc3RpZnJhbWUiPjwvaWZyYW1l
PgorICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkNS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNo
aWxkNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUzM2Y0NTQ5MGMxODY2ODg3MWIwMWJiZjY4
N2FiOTQ5OWIxM2M3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQ1LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK1Bhc3MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDUuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDUuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE5NTUxZDgzYWVlZmY4ZDI3MGUzMjJjZGU2YjZiZDdiOWZiNzJhZWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9u
X05vZGVfcmVwbGFjZUNoaWxkNS5odG0KQEAgLTAsMCArMSw3NSBAQAor77u/PCFET0NUWVBFIGh0
bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAx
MiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJl
CisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKwor
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
Ky0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVh
ZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBt
ZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0
IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJ
bnRlcmZhY2U6IHJlcGxhY2VDaGlsZC4gTk9UX0ZPVU5EX0VSUjogUmFpc2VkIGlmIG9sZENoaWxk
IGlzIG5vdCBhIGNoaWxkIG9mIHRoaXMgbm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxl
dmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtNzg1ODg3MzA3IiAvPgorICAgIDxtZXRhIG5hbWU9IkZl
YXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VD
aGlsZCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAg
ICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAg
ICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgc2li
bGluZ0VsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2libGluZyIpOworCisgICAgICAg
ICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFs
dWUgPSBwcmVzZW50UmVzdWx0LnJlcGxhY2VDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJz
cGFuIiksIHNpYmxpbmdFbGVtKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNh
dGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVj
dCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZig4ID09IGV4Y2VwdGlv
bk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQor
ICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRl
c3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxkaXYg
aWQ9InNpYmxpbmciPjwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24tZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2Zj
ODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
Tm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAor
UGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVf
Y29tcGFyZURvY3VtZW50UG9zaXRpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24uaHRtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5YzI4
MGM1ZTMyODZiN2YwZTY3ZWFiODUxMDU1NmExNTZmYzdiYTcKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3Np
dGlvbi5odG0KQEAgLTAsMCArMSw2OSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIG1ldGhv
ZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9y
IHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVy
ZmFjZTogY29tcGFyZURvY3VtZW50UG9zaXRpb24uIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1M
ZXZlbC0zLUNvcmUvY29yZS5odG1sI05vZGUzLWNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIiAvPgor
ICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUg
SW50ZXJmYWNlIGNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0
eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAg
ICB2YXIgRElTQ09OTkVDVEVEICAgICAgICAgICAgPSAweDAxOworICAgICAgICAgICB2YXIgUFJF
Q0VESU5HICAgICAgICAgICAgICAgPSAweDAyOworICAgICAgICAgICB2YXIgRk9MTE9XSU5HICAg
ICAgICAgICAgICAgPSAweDA0OworICAgICAgICAgICB2YXIgQ09OVEFJTlMgICAgICAgICAgICAg
ICAgPSAweDA4OworICAgICAgICAgICB2YXIgQ09OVEFJTkVEX0JZICAgICAgICAgICAgPSAweDEw
OworICAgICAgICAgICB2YXIgSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUMgPSAweDIwOworCisgICAg
ICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUo
ImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAg
aWYoIGRvY3VtZW50LmJvZHkuY29tcGFyZURvY3VtZW50UG9zaXRpb24ocHJlc2VudFJlc3VsdCkg
JiBDT05UQUlORURfQlkgICYmICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIp
WzBdLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGRvY3VtZW50LmJvZHkpICYgRk9MTE9XSU5HICkK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJI
VE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJG
YWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChl
KQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZh
aWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+Cisg
IDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5u
aW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21w
YXJlRG9jdW1lbnRQb3NpdGlvbjItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24yLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfY29t
cGFyZURvY3VtZW50UG9zaXRpb24yLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJl
RG9jdW1lbnRQb3NpdGlvbjIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24yLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MWU5ZWMyN2Iw
MDlhNGZhYjNhZDlmMWYyYmQzNTA4ZDA3ZjM3ODU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24y
Lmh0bQpAQCAtMCwwICsxLDcwIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5l
dCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUg
bWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgor
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5v
ciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00g
TDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgY29tcGFyZURvY3VtZW50UG9zaXRpb24gbWV0aG9kPC90
aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhl
IGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNl
OiBjb21wYXJlRG9jdW1lbnRQb3NpdGlvbi4gRnVuY3Rpb24gY29tcGFyZURvY3VtZW50UG9zaXRp
b24gc2hvdWxkIHJlcG9ydCBQUkVDRUVESU5HIG9yIEZPTExPV0lORyBpbmZvcm1hdGlvbiBldmVu
IGlmIG5vZGVzIGFyZSBkaXNjb25uZWN0ZWQuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZl
bC0zLUNvcmUvY29yZS5odG1sI05vZGUzLWNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIiAvPgorICAg
IDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50
ZXJmYWNlIGNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRv
VGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2
YXIgRElTQ09OTkVDVEVEICAgICAgICAgICAgPSAweDAxOworICAgICAgICAgICB2YXIgUFJFQ0VE
SU5HICAgICAgICAgICAgICAgPSAweDAyOworICAgICAgICAgICB2YXIgRk9MTE9XSU5HICAgICAg
ICAgICAgICAgPSAweDA0OworICAgICAgICAgICB2YXIgQ09OVEFJTlMgICAgICAgICAgICAgICAg
PSAweDA4OworICAgICAgICAgICB2YXIgQ09OVEFJTkVEX0JZICAgICAgICAgICAgPSAweDEwOwor
ICAgICAgICAgICB2YXIgSU1QTEVNRU5UQVRJT05fU1BFQ0lGSUMgPSAweDIwOworCisgICAgICAg
ICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRp
diIpWzBdOworICAgICAgICAgICB2YXIgZGlzY29ubmVjdGVkRWxlbSA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgaWYoIGRvY3VtZW50LmJvZHkuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZGlzY29ubmVj
dGVkRWxlbSkgJiBQUkVDRURJTkcgIHx8ICBkb2N1bWVudC5ib2R5LmNvbXBhcmVEb2N1bWVudFBv
c2l0aW9uKGRpc2Nvbm5lY3RlZEVsZW0pICYgRk9MTE9XSU5HICkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9
CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1lc3BhY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNEZWZh
dWx0TmFtZXNwYWNlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVk
ODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNEZWZhdWx0TmFtZXNwYWNlLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1lc3BhY2UuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNEZWZhdWx0TmFtZXNwYWNlLmh0bQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
ODNmNjhhOTJhMjJkZDlmMjgyNGQwZGY0MjljNjFhYmUxMTA2MzJmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNEZWZhdWx0TmFtZXNw
YWNlLmh0bQpAQCAtMCwwICsxLDY0IEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5l
dCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUg
bWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgor
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5v
ciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00g
TDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaXNEZWZhdWx0TmFtZXNwYWNlIG1ldGhvZDwvdGl0bGU+
CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBs
ZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogaXNE
ZWZhdWx0TmFtZXNwYWNlLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwt
My1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNOb2RlMy1pc0RlZmF1bHROYW1lc3BhY2UuIEFsZ29y
aXRobSBiZWluZyB0ZXN0aW5nIGZvciBkZXRlcm1pbmluZyBkZWZhdWx0IG5hbWVzcGFjZSBpcyBk
ZXNjcmliZWQgaW4gQXBwZW5kaXggQi4zIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURP
TS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvbmFtZXNwYWNlcy1hbGdvcml0aG1zLmh0bWwjaXNEZWZh
dWx0TmFtZXNwYWNlQWxnby1oMiIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50
PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc0RlZmF1bHROYW1lc3BhY2UgbWV0
aG9kIG9uIG5hbWVzcGFjZWQgbm9kZSB3aXRoIG5vIGhlaXJhcmNoeSIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAg
ICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRS
ZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAg
ICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZHluYW1pY0VsZW1lbnQg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
LCAiYSIpOworCisgICAgICAgICAgICAgICBpZihkeW5hbWljRWxlbWVudC5pc0RlZmF1bHROYW1l
c3BhY2UoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiKSkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9
CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcx
OTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX2lzRXF1YWxOb2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFs
Tm9kZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFs
Tm9kZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOTE2YWM5ZGIxZmUzNWMyMDIzNDJmY2U3MzhhMDI5OGVjMTAx
OWQ4NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9Ob2RlX2lzRXF1YWxOb2RlLmh0bQpAQCAtMCwwICsxLDY5IEBACis8IURPQ1RZUEUgaHRtbD4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgor
ICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaXNFcXVhbE5vZGUgbWV0aG9k
PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3Ig
dGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJm
YWNlOiBpc0VxdWFsTm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVs
LTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0bWwjTm9kZTMtaXNFcXVhbE5vZGUiIC8+CisgICAgPG1l
dGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZh
Y2UgaXNFcXVhbE5vZGUgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7CisgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgIHZhciBzYW1lRG9jVHlwZTEgPSBkb2N1bWVudC5pbXBsZW1lbnRh
dGlvbi5jcmVhdGVEb2N1bWVudFR5cGUoJ2h0bWwnLCcnLCcnKTsKKyAgICAgICAgICAgICAgIHZh
ciBzYW1lRG9jVHlwZTIgPSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudFR5
cGUoJ2h0bWwnLCcnLCcnKTsKKyAgICAgICAgICAgICAgIHZhciBkaWZmZXJlbnREb2NUeXBlID0g
ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlRG9jdW1lbnRUeXBlKCdodG1sJywgJy0vL1cz
Qy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOJywgJ2h0dHA6Ly93d3cudzMub3JnL1RSL3hodG1s
MS9EVEQveGh0bWwxLXN0cmljdC5kdGQnKTsKKworICAgICAgICAgICAgICAgdmFyIGVxdWFsTm9k
ZVRydWUgPSBzYW1lRG9jVHlwZTEuaXNFcXVhbE5vZGUoc2FtZURvY1R5cGUyKTsKKyAgICAgICAg
ICAgICAgIHZhciBlcXVhbE5vZGVGYWxzZSA9IGRpZmZlcmVudERvY1R5cGUuaXNFcXVhbE5vZGUo
c2FtZURvY1R5cGUyKTsKKworICAgICAgICAgICAgICAgaWYodHJ1ZSA9PSBlcXVhbE5vZGVUcnVl
ICYmIGZhbHNlID09IGVxdWFsTm9kZUZhbHNlKQorICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9
CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgor
ICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlMi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZTItZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9pc0VxdWFsTm9kZTItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlMi5o
dG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZTIu
aHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmQxMTE0OTZlOTg2NmUzNzk1MDJjZDAwN2NmM2FjZDVlMjgzOTQ5ZTkK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9pc0VxdWFsTm9kZTIuaHRtCkBAIC0wLDAgKzEsNjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc0VxdWFsTm9kZSBtZXRob2Q8L3Rp
dGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUg
aW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6
IGlzRXF1YWxOb2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1D
b3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNOb2RlMy1pc0VxdWFsTm9kZSIgLz4KKyAgICA8bWV0YSBu
YW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBp
c0VxdWFsTm9kZSBtZXRob2Qgd2l0aCBuYW1lc3BhY2VkIGVsZW1lbnQgbm9kZXMiIC8+CisgICAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3Qo
KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBw
cmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOwor
ICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIHNhbWVFbGVt
ZW50MSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygibnMxIiwgImZvbyIpOworICAgICAgICAg
ICAgICAgdmFyIHNhbWVFbGVtZW50MiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygibnMxIiwg
ImZvbyIpOworICAgICAgICAgICAgICAgdmFyIGRpZmZlcmVudEVsZW1lbnQgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50TlMoIm5zMiIsICJmb28iKTsKKworICAgICAgICAgICAgICAgdmFyIGVxdWFs
Tm9kZVRydWUgPSBzYW1lRWxlbWVudDEuaXNFcXVhbE5vZGUoc2FtZUVsZW1lbnQyKTsKKyAgICAg
ICAgICAgICAgIHZhciBlcXVhbE5vZGVGYWxzZSA9IGRpZmZlcmVudEVsZW1lbnQuaXNFcXVhbE5v
ZGUoc2FtZUVsZW1lbnQyKTsKKworICAgICAgICAgICAgICAgaWYodHJ1ZSA9PSBlcXVhbE5vZGVU
cnVlICYmIGZhbHNlID09IGVxdWFsTm9kZUZhbHNlKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgw
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05v
ZGVfaXNTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLmh0
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5mYTA1MDE5MTAzMGY1YWQ0NmM0YmFhMWZkNzk2ZjRkYTU5ZTAwZTNmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVf
aXNTdXBwb3J0ZWQuaHRtCkBAIC0wLDAgKzEsNjYgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc1N1cHBvcnRlZCBtZXRob2Q8L3Rp
dGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUg
aW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6
IGlzU3VwcG9ydGVkLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUu
aHRtbCNMZXZlbC0yLUNvcmUtTm9kZS1zdXBwb3J0cyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0
dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc1N1cHBvcnRl
ZCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICB2YXIgZG9jTm9kZSA9IGRvY3VtZW50OworICAgICAgICAgICAg
ICAgdmFyIGVsZW1Ob2RlID0gcHJlc2VudFJlc3VsdDsKKyAgICAgICAgICAgICAgIHZhciBhdHRy
Tm9kZSA9IHByZXNlbnRSZXN1bHQuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTsKKyAgICAgICAgICAg
ICAgIHZhciB0ZXh0Tm9kZSA9IHByZXNlbnRSZXN1bHQuZmlyc3RDaGlsZDsKKyAgICAgICAgICAg
ICAgIGlmKGRvY05vZGUuaXNTdXBwb3J0ZWQoIkNPUkUiLCAiMi4wIikgJiYgZWxlbU5vZGUuaXNT
dXBwb3J0ZWQoIkNPUkUiLCAiMi4wIikgJiYgYXR0ck5vZGUuaXNTdXBwb3J0ZWQoIkNPUkUiLCAi
Mi4wIikgJiYgdGV4dE5vZGUuaXNTdXBwb3J0ZWQoIkNPUkUiLCAiMi4wIikpCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAg
ICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAg
ICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxv
YWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2Pgor
ICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvY2FsTmFt
ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRk
ZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9Ob2RlX2xvY2FsTmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxO
YW1lLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvY2FsTmFt
ZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uM2JlN2YxYmQ2ZGIyZWU0YmFjMWQ1NGQxMzFjN2RjOGU5MTA5MWQx
MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9O
b2RlX2xvY2FsTmFtZS5odG0KQEAgLTAsMCArMSw2NCBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8
IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNy
b3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
CisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgor
PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAg
ICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGxvY2FsTmFtZSBwcm9wZXJ0eTwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFj
ZTogbG9jYWxOYW1lLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1D
b3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1Ob2RlTlNMb2NhbE4iIC8+CisgICAgPG1ldGEgbmFt
ZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgbG9j
YWxOYW1lIHByb3BlcnR5IiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4K
KyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAg
ICAgICAgICAgeworCisgICAgICAgICAgICAgICB2YXIgdGVzdE9iaiA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnROUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21uYW1lc3BhY2UiLCAiYTpj
dXN0b21lbGVtZW50Iik7CisgICAgICAgICAgICAgICBpZigiY3VzdG9tZWxlbWVudCIgPT0gdGVz
dE9iai5sb2NhbE5hbWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVz
dWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAg
ICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3Njcmlw
dD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0i
dGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL05vZGVfbG9va3VwTmFtZXNwYWNlVVJJLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cE5hbWVzcGFjZVVSSS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2Rl
X2xvb2t1cE5hbWVzcGFjZVVSSS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwTmFt
ZXNwYWNlVVJJLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xv
b2t1cE5hbWVzcGFjZVVSSS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDkwNzFlNjhmNmYzZTEwOTQ2YTUxMWU5
NmIxY2ZkMThjNjNkOWEzZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cE5hbWVzcGFjZVVSSS5odG0KQEAgLTAsMCArMSw2NCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBD
b3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5h
bWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250
cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgor
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkv
eGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNl
IGxvb2t1cE5hbWVzcGFjZVVSSSBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2Ny
aXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVs
IDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IGxvb2t1cE5hbWVzcGFjZVVSSS4gaHR0cDov
L3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0
bWwjTm9kZTMtbG9va3VwTmFtZXNwYWNlVVJJLiBBbGdvcml0aG0gYmVpbmcgdGVzdGluZyBmb3Ig
Z2F0aGVyaW5nIHRoZSBuYW1lc3BhY2VVUkkgZnJvbSBhbiBlbGVtZW50IGRlc2NyaWJlZCBpbiBB
cHBlbmRpeCBCLjQgaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29y
ZS0yMDA0MDQwNy9uYW1lc3BhY2VzLWFsZ29yaXRobXMuaHRtbCNsb29rdXBOYW1lc3BhY2VVUklB
bGdvIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENv
cmU6IE5vZGUgSW50ZXJmYWNlIGxvb2t1cE5hbWVzcGFjZVVSSSBtZXRob2QiIC8+CisgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQor
ICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVz
ZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAg
ICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIHByZWZpeGVkRWxl
bWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9j
dXN0b21uYW1lc3BhY2UiLCAiYTpjdXN0b21lbGVtZW50Iik7CisKKyAgICAgICAgICAgICAgIGlm
KCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbW5hbWVzcGFjZSIgPT0gcHJlZml4ZWRFbGVt
ZW50Lmxvb2t1cE5hbWVzcGFjZVVSSSgiYSIpKQorICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9
CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgor
ICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cFByZWZpeC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9sb29rdXBQcmVmaXgtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9sb29rdXBQcmVmaXgtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cFByZWZpeC5o
dG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9sb29rdXBQcmVmaXgu
aHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjY2N2QzMWY3YzcyMGRjNTMwMzIyNTdhMGYxYjc5YjdjNzhiN2UyYjgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9sb29rdXBQcmVmaXguaHRtCkBAIC0wLDAgKzEsNjQgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEt
LQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9z
b2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlm
aWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29y
cG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAor
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxo
dG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAg
PHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBsb29rdXBQcmVmaXggbWV0aG9kPC90
aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhl
IGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNl
OiBsb29rdXBQcmVmaXguIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0z
LUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI05vZGUzLWxvb2t1cE5hbWVzcGFjZVByZWZpeC4gQWxn
b3JpdGhtIGJlaW5nIHRlc3RpbmcgZm9yIGdhdGhlcmluZyB0aGUgcHJlZml4IGZyb20gYW4gZWxl
bWVudCBkZXNjcmliZWQgaW4gQXBwZW5kaXggQi4yIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQv
UkVDLURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvbmFtZXNwYWNlcy1hbGdvcml0aG1zLmh0bWwj
bG9va3VwTmFtZXNwYWNlUHJlZml4QWxnbyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBj
b250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBsb29rdXBQcmVmaXggbWV0
aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAg
ICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1l
KCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
IHZhciBwcmVmaXhlZEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93
d3cuZXhhbXBsZS5jb20vY3VzdG9tbmFtZXNwYWNlIiwgImE6Y3VzdG9tZWxlbWVudCIpOworCisg
ICAgICAgICAgICAgICBpZigiYSIgPT0gcHJlZml4ZWRFbGVtZW50Lmxvb2t1cFByZWZpeCgiaHR0
cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21uYW1lc3BhY2UiKSkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9
CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXgtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVf
cHJlZml4LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXguaHRtIGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4Lmh0bQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYjBj
ZTRlNWMzODMwN2VlMzY4NDlhYWI0NDA1ZmVkZDViNmI5MTczCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4Lmh0bQpAQCAtMCww
ICsxLDY0IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBU
ZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVp
dGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMg
b2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
Cisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBN
SUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAor
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9k
ZSBJbnRlcmZhY2UgcHJlZml4IHByb3BlcnR5PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNj
cmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZl
bCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBwcmVmaXguIGh0dHA6Ly93d3cudzMub3Jn
L1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELU5vZGVO
U1ByZWZpeCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwg
MyBDb3JlOiBOb2RlIEludGVyZmFjZSBwcmVmaXggcHJvcGVydHkiIC8+CisgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlU
b1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisKKyAgICAgICAgICAgICAgIHZhciB0
ZXN0T2JqID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29t
L2N1c3RvbW5hbWVzcGFjZSIsICJhOmN1c3RvbWVsZW1lbnQiKTsKKyAgICAgICAgICAgICAgIGlm
KCJhIiA9PSB0ZXN0T2JqLnByZWZpeCkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAg
IDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRD
b250ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudC5odG0gYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudC5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNThmZDYxZjdhMDQzY2M5NjJhYjBmOGQ1MGUzMzlmNDgwMjRmOTllYwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250
ZW50Lmh0bQpAQCAtMCwwICsxLDcwIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRl
cm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24s
CisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9u
IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5E
T00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgdGV4dENvbnRlbnQgcHJvcGVydHk8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVt
ZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IHRleHRD
b250ZW50LiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNO
b2RlMy10ZXh0Q29udGVudCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJE
T00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSB0ZXh0Q29udGVudCBwcm9wZXJ0eSIgLz4K
KyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVu
VGVzdCgpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgdGVz
dEVsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3VidHJlZSIpOworICAgICAgICAgICAg
ICAgdmFyIG9yaWdpbmFsVGV4dCA9IHRlc3RFbGVtLnRleHRDb250ZW50OworICAgICAgICAgICAg
ICAgdmFyIHJlZlRvUmVwbGFjZWROb2RlID0gdGVzdEVsZW0uZmlyc3RDaGlsZDsKKyAgICAgICAg
ICAgICAgIC8vbm93IHNldCB0ZXh0Q29udGVudCBwcm9wZXJ0eQorICAgICAgICAgICAgICAgdGVz
dEVsZW0udGV4dENvbnRlbnQgPSAiZm9vIjsKKyAgICAgICAgICAgICAgIAorCisgICAgICAgICAg
ICAgICBpZigidGV4dCwgJiBzdHJvbmdseSBlbXBoYXNpemVkIHRleHQgYXQgdGhhdCIgPT0gb3Jp
Z2luYWxUZXh0ICYmICJmb28iID09IHRlc3RFbGVtLnRleHRDb250ZW50ICYmIG51bGwgPT0gcmVm
VG9SZXBsYWNlZE5vZGUubmV4dFNpYmxpbmcpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAg
IHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0K
KyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+Cisg
ICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxkaXYgaWQ9InN1YnRy
ZWUiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+dGV4dCwgJmFtcDsgPHN0cm9uZz5zdHJvbmdseTxl
bT4gZW1waGFzaXplZCA8L2VtPnRleHQ8L3N0cm9uZz4gYXQgdGhhdDwvZGl2PgorICA8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRlbnQyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50Mi1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcx
OTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX3RleHRDb250ZW50Mi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENv
bnRlbnQyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRD
b250ZW50Mi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzU5ZWRhOTZjYzVmYTEzMjMzMzY2NDM3MWE2YzVmZWE4
YTBhNzYxOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX3RleHRDb250ZW50Mi5odG0KQEAgLTAsMCArMSw3MiBAQAor77u/PCFET0NUWVBF
IGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkg
MjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgor
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8
aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHRleHRDb250ZW50
IHByb3BlcnR5PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0i
VGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5v
ZGUgSW50ZXJmYWNlOiB0ZXh0Q29udGVudC4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVs
LTMtQ29yZS9jb3JlLmh0bWwjTm9kZTMtdGV4dENvbnRlbnQiIC8+CisgICAgPG1ldGEgbmFtZT0i
RmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgdGV4dENv
bnRlbnQgcHJvcGVydHkiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgdmFyIHRlc3RFbGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGFibGUi
KTsKKyAgICAgICAgICAgICAgIHRlc3RFbGVtLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInRyIikpOworICAgICAgICAgICAgICAgdmFyIHRhYmxlQ2VsbDEgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJ0ZCIpOworICAgICAgICAgICAgICAgdGFibGVDZWxsMS5hcHBlbmRDaGls
ZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiY2VsbCAxIikpOworICAgICAgICAgICAgICAgdGVz
dEVsZW0uZmlyc3RDaGlsZC5hcHBlbmRDaGlsZCh0YWJsZUNlbGwxKTsKKyAgICAgICAgICAgICAg
IHZhciB0YWJsZUNlbGwyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsKKyAgICAgICAg
ICAgICAgIHRhYmxlQ2VsbDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImNl
bGwgMiIpKTsKKyAgICAgICAgICAgICAgIHRlc3RFbGVtLmZpcnN0Q2hpbGQuYXBwZW5kQ2hpbGQo
dGFibGVDZWxsMik7CisgICAgICAgICAgICAgICAKKworICAgICAgICAgICAgICAgaWYoImNlbGwg
MWNlbGwgMiIgPT0gdGVzdEVsZW0udGV4dENvbnRlbnQpCisgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9
CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAg
ICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAg
ICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3Qo
KSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8
L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfcmVwbGFjZVdob2xlVGV4dC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVU
ZXh0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5
ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL1RleHRfcmVwbGFjZVdob2xlVGV4dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBA
QAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1Rl
eHRfcmVwbGFjZVdob2xlVGV4dC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYjFiYzYwN2Y1ZDhlOTMx
ZGY0NWVjMWMzZjVjNWI0N2M1ODMzNGQzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfcmVwbGFjZVdob2xlVGV4dC5odG0KQEAgLTAsMCAr
MSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVz
dCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9m
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgor
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IFRleHQg
SW50ZXJmYWNlIHJlcGxhY2VXaG9sZVRleHQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1l
PSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERP
TSBMZXZlbCAzIENvcmUgQVBJIG9uIFRleHQgSW50ZXJmYWNlOiByZXBsYWNlV2hvbGVUZXh0LiBo
dHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNUZXh0My1yZXBs
YWNlV2hvbGVUZXh0IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBM
MyBDb3JlOiBUZXh0IEludGVyZmFjZSByZXBsYWNlV2hvbGVUZXh0IG1ldGhvZCIgLz4KKyAgICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgdGVzdEVsZW0g
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2hvbGVUZXh0Q29udGFpbmVyIik7CisgICAgICAg
ICAgICAgICB2YXIgZmlyc3RUZXh0Tm9kZSA9IHRlc3RFbGVtLmZpcnN0Q2hpbGQ7CisgICAgICAg
ICAgICAgICB2YXIgc2Vjb25kVGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiRGV3
ZXkgJmEiKTsKKyAgICAgICAgICAgICAgIHZhciBlbGVtVG9SZW1vdmUgPSBkb2N1bWVudC5nZXRF
bGVtZW50c0J5VGFnTmFtZSgnYnInKVswXTsKKworICAgICAgICAgICAgICAgdGVzdEVsZW0uaW5z
ZXJ0QmVmb3JlKHNlY29uZFRleHROb2RlLCBlbGVtVG9SZW1vdmUpOworICAgICAgICAgICAgICAg
dGVzdEVsZW0ucmVtb3ZlQ2hpbGQoZWxlbVRvUmVtb3ZlKTsKKyAgICAgICAgICAgICAgIAorICAg
ICAgICAgICAgICAgc2Vjb25kVGV4dE5vZGUucmVwbGFjZVdob2xlVGV4dCgiRG9uYWxkIik7CisK
KyAgICAgICAgICAgICAgIGlmKCJEb25hbGQiID09IHNlY29uZFRleHROb2RlLndob2xlVGV4dCAm
JiAiSHVleSAmICIgPT0gZmlyc3RUZXh0Tm9kZS5kYXRhICYmIG51bGwgPT0gZmlyc3RUZXh0Tm9k
ZS5uZXh0U2libGluZykKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAg
ICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3Vs
dC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0
PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0
ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0id2hvbGVUZXh0Q29udGFpbmVy
IiBzdHlsZT0iZGlzcGxheTpub25lOyI+SHVleSAmYW1wOyA8YnI+bXA7IExvdWllPC9kaXY+Cisg
IDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0
Mi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9y
ZXBsYWNlV2hvbGVUZXh0Mi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2
ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Mi5odG0gYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Mi5odG0KbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NjZjNTU5NjllMTliYzk1OTJkZWM5MDhjZjRiMjAxNzk5OGE4NWNlOQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRl
eHQyLmh0bQpAQCAtMCwwICsxLDY4IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRl
cm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24s
CisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9u
IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5E
T00gTDMgQ29yZTogVGV4dCBJbnRlcmZhY2UgcmVwbGFjZVdob2xlVGV4dCBtZXRob2Q6IHRlc3Qg
c2NlbmFyaW8gMjwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9
IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBU
ZXh0IEludGVyZmFjZTogcmVwbGFjZVdob2xlVGV4dC4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9N
LUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjVGV4dDMtcmVwbGFjZVdob2xlVGV4dCIgLz4KKyAgICA8
bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTDMgQ29yZTogVGV4dCBJbnRlcmZhY2Ug
cmVwbGFjZVdob2xlVGV4dCBtZXRob2Q6IHRlc3Qgc2NlbmFyaW8gMiIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAg
ICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRS
ZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAg
ICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgdGVzdEVsZW0xID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0cm9uZyIpWzBdOworICAgICAgICAgICAgICAg
dmFyIHRlc3RUZXh0Tm9kZTEgPSB0ZXN0RWxlbTEuZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAg
IHZhciB0ZXN0RWxlbTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2hvbGVUZXh0Q29udGFp
bmVyIik7CisgICAgICAgICAgICAgICB0ZXN0VGV4dE5vZGUxLnJlcGxhY2VXaG9sZVRleHQoIiIp
OworCisgICAgICAgICAgICAgICBpZihudWxsID09IHRlc3RFbGVtMS5maXJzdENoaWxkICYmICJS
ZWQgRmlzaCwgIiA9PSB0ZXN0VGV4dE5vZGUxLmRhdGEgJiYgbnVsbCA9PSB0ZXN0VGV4dE5vZGUx
LnBhcmVudE5vZGUgJiYgIk9uZSBGaXNoLCBUd28gRmlzaCwgIiA9PSB0ZXN0RWxlbTIuZmlyc3RD
aGlsZC53aG9sZVRleHQpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVz
dWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAg
ICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3Njcmlw
dD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0i
dGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxkaXYgaWQ9Indob2xlVGV4dENvbnRhaW5l
ciIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPk9uZSBGaXNoLCBUd28gRmlzaCwgPHN0cm9uZz5SZWQg
RmlzaCwgPC9zdHJvbmc+Qmx1ZSBGaXNoPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjk1YWM0
ZmEwN2ZlYzVlNDE5N2QzOWI5NzY2MjZhNGYwMjk0OGU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0Lmh0bQpAQCAtMCww
ICsxLDY5IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBU
ZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVp
dGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMg
b2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
Cisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBN
SUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAor
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogVGV4
dCBJbnRlcmZhY2Ugd2hvbGVUZXh0IHByb3BlcnR5PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJE
ZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBM
ZXZlbCAzIENvcmUgQVBJIG9uIFRleHQgSW50ZXJmYWNlOiB3aG9sZVRleHQuIGh0dHA6Ly93d3cu
dzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI1RleHQzLXdob2xlVGV4dCIgLz4K
KyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTDMgQ29yZTogVGV4dCBJbnRl
cmZhY2Ugd2hvbGVUZXh0IHByb3BlcnR5IiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7CisgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0RWxlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ3aG9sZVRleHRDb250YWluZXIiKTsKKyAgICAgICAgICAgICAgIHZhciBzZWNvbmRUZXh0
Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJEZXdleSAmYSIpOworICAgICAgICAgICAg
ICAgdmFyIGVsZW1Ub1JlbW92ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdicicp
WzBdOworCisgICAgICAgICAgICAgICB0ZXN0RWxlbS5pbnNlcnRCZWZvcmUoc2Vjb25kVGV4dE5v
ZGUsIGVsZW1Ub1JlbW92ZSk7CisgICAgICAgICAgICAgICB0ZXN0RWxlbS5yZW1vdmVDaGlsZChl
bGVtVG9SZW1vdmUpOworICAgICAgICAgICAgICAgaWYoIkh1ZXkgJiBEZXdleSAmYW1wOyBMb3Vp
ZSIgPT0gc2Vjb25kVGV4dE5vZGUud2hvbGVUZXh0KQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8ZGl2IGlkPSJ3
aG9sZVRleHRDb250YWluZXIiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij5IdWV5ICZhbXA7IDxicj5t
cDsgTG91aWU8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0
X3dob2xlVGV4dDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL1RleHRfd2hvbGVUZXh0Mi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1
Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dDItZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9UZXh0X3dob2xlVGV4dDIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL1RleHRfd2hvbGVUZXh0Mi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU3N2Q0ZTllMzVjNDUyMGNi
NjgzZmM1NTdmYmJiZTVjODk5NDI1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dDIuaHRtCkBAIC0wLDAgKzEsNjkgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBUZXh0IEludGVyZmFj
ZSB3aG9sZVRleHQgcHJvcGVydHk6IHRlc3Qgc2NlbmFyaW8gMjwvdGl0bGU+CisgICAgPG1ldGEg
bmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBv
ZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBUZXh0IEludGVyZmFjZTogd2hvbGVUZXh0LiBodHRw
Oi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNUZXh0My13aG9sZVRl
eHQiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIEwzIENvcmU6IFRl
eHQgSW50ZXJmYWNlIHdob2xlVGV4dCBwcm9wZXJ0eSIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgeworICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBk
b2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQor
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgdGVzdEVsZW0gPSBkb2N1bWVudC5nZXRF
bGVtZW50c0J5VGFnTmFtZSgic3Ryb25nIilbMF07CisgICAgICAgICAgICAgICB2YXIgZmlyc3RU
ZXh0Tm9kZSA9IHRlc3RFbGVtLmZpcnN0Q2hpbGQ7CisgICAgICAgICAgICAgICB2YXIgZHluYW1p
Y1RleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiwiKTsKKworICAgICAgICAgICAg
ICAgdGVzdEVsZW0uYXBwZW5kQ2hpbGQoZHluYW1pY1RleHROb2RlKTsKKworICAgICAgICAgICAg
ICAgaWYoIlJlZCBGaXNoLCIgPT0gZmlyc3RUZXh0Tm9kZS53aG9sZVRleHQgJiYgIlJlZCBGaXNo
LCIgPT0gZHluYW1pY1RleHROb2RlLndob2xlVGV4dCkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAg
ICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgp
Ij4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0i
d2hvbGVUZXh0Q29udGFpbmVyIiBzdHlsZT0iZGlzcGxheTpub25lOyI+T25lIEZpc2gsIFR3byBG
aXNoIDxzdHJvbmc+UmVkIEZpc2g8L3N0cm9uZz4gQmx1ZSBGaXNoPC9kaXY+CisgIDwvYm9keT4K
KzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvRWxlbWVudENoaWxkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9F
bGVtZW50Q2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRhOWRhYjFjMjQ1NTkwY2IzYzRh
NmY3YjViOTIyYTZhMjdjNWI2YWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvRWxlbWVudENoaWxkLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKK0VsZW1lbnQgVHJhdmVyc2FsCisKK1Rlc3QgZGVzY3JpcHRpb246IFRo
aXMgcGFnZSB0ZXN0cyB0aGUgZmlyc3RFbGVtZW50Q2hpbGQgYW5kIGxhc3RFbGVtZW50Q2hpbGQg
cHJvcGVydGllcy4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVs
b3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxl
bWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9lbGVtZW50dHJhdmVyc2FsL0VsZW1lbnRDaGlsZC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzkzNmQ3
NzQ4ZmEzZjRkYzcyNWNmOTNiNTY4YjYxMGNiM2ZiOTRhYgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQu
aHRtCkBAIC0wLDAgKzEsODUgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4
cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6
CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNS
T1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8dGl0bGUgaWQ9ImRlc2MiPkVsZW1lbnQgdHJhdmVyc2FsOiBmaXJzdEVsZW1l
bnRDaGlsZCBhbmQgbGFzdEVsZW1lbnRDaGlsZDwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIg
dGVzdFBhc3NlZCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgcDEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFy
IHAyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIik7CisgICAgICAgICAgICAgICAgICAg
IAorICAgICAgICAgICAgICAgICAgICBpZiAocDEgIT0gZGl2MS5maXJzdEVsZW1lbnRDaGlsZCkK
KyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3Nl
ZCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBp
ZiAocDIgIT0gZGl2MS5sYXN0RWxlbWVudENoaWxkKQorICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmIChudWxsICE9IHAxLmZpcnN0RWxlbWVu
dENoaWxkKQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0UGFzc2VkID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIGlmIChudWxsICE9IHAxLmxhc3RFbGVtZW50Q2hpbGQpCisgICAgICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRh
ID0gdGVzdFBhc3NlZDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2gg
KGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4gCisgICAgICAgIDxoMj5FbGVtZW50
IFRyYXZlcnNhbDwvaDI+CisgICAgICAgIDxwIHN0eWxlPSJmb250LXNpemU6MTdweDsiPlRlc3Qg
ZGVzY3JpcHRpb246IFRoaXMgcGFnZSB0ZXN0cyB0aGUgZmlyc3RFbGVtZW50Q2hpbGQgYW5kIGxh
c3RFbGVtZW50Q2hpbGQgcHJvcGVydGllcy48L3A+CisgICAgICAgIDxkaXYgaWQ9ImRpdjEiIHN0
eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxwIGlkPSJwMSI+YTwvcD4KKyAgICAg
ICAgICAgIDxkaXY+CisgICAgICAgICAgICAgICAgPGRpdj5iPC9kaXY+CisgICAgICAgICAgICAg
ICAgPGRpdj5jPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDxwIGlkPSJw
MiI+ZDwvcD4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3
b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3Vs
dCc+UnVubmluZzwvZGl2PiAKKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVt
ZW50dHJhdmVyc2FsL2NoaWxkRWxlbWVudENvdW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9jaGlsZEVsZW1lbnRDb3VudC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjBlZTgzMmUyMjFlNjgyNWU2Yjk3NTE1Njk2ZThkZjgyNDQ3
OGE3MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxl
bWVudHRyYXZlcnNhbC9jaGlsZEVsZW1lbnRDb3VudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3
IEBACitFbGVtZW50IFRyYXZlcnNhbAorCitUZXN0IGRlc2NyaXB0aW9uOiBUaGlzIHBhZ2UgdGVz
dHMgdGhlIGNoaWxkRWxlbWVudENvdW50IHByb3BlcnR5LgorCitUZXN0IHBhc3NlcyBpZiB0aGUg
d29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL2NoaWxkRWxlbWVudENvdW50Lmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9jaGlsZEVs
ZW1lbnRDb3VudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzcwMWJjOWFhNzIwZTYwODk2M2E4ZmRhYzVmMDBk
ZGM2MzgxMzgzZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vZWxlbWVudHRyYXZlcnNhbC9jaGlsZEVsZW1lbnRDb3VudC5odG0KQEAgLTAsMCArMSw3NiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBD
b3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5h
bWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250
cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgor
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZSBp
ZD0iZGVzYyI+RWxlbWVudCB0cmF2ZXJzYWw6IGNoaWxkRWxlbWVudENvdW50PC90aXRsZT4KKyAg
ICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rp
b24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciB0ZXN0UGFzc2VkID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAg
ICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAg
ICAgICAgICAgIHZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOworICAgICAg
ICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgaWYgKDMgIT0gZGl2MS5jaGlsZEVs
ZW1lbnRDb3VudCkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdFBhc3NlZCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICBpZiAoMCAhPSBwMS5jaGlsZEVsZW1lbnRDb3VudCkKKyAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRh
dGEgPSB0ZXN0UGFzc2VkOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRj
aCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
aGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8aDI+RWxlbWVu
dCBUcmF2ZXJzYWw8L2gyPgorICAgICAgICA8cCBzdHlsZT0iZm9udC1zaXplOjE3cHg7Ij5UZXN0
IGRlc2NyaXB0aW9uOiBUaGlzIHBhZ2UgdGVzdHMgdGhlIGNoaWxkRWxlbWVudENvdW50IHByb3Bl
cnR5LjwvcD4KKyAgICAgICAgPGRpdiBpZD0iZGl2MSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgor
ICAgICAgICAgICAgPHAgaWQ9InAxIj5hPC9wPgorICAgICAgICAgICAgPGRpdj4KKyAgICAgICAg
ICAgICAgICA8ZGl2PmI8L2Rpdj4KKyAgICAgICAgICAgICAgICA8ZGl2PmM8L2Rpdj4KKyAgICAg
ICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPHA+ZDwvcD4KKyAgICAgICAgPC9kaXY+CisgICAg
ICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4K
KyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PiAKKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1l
bnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9uZXh0RWxlbWVudFNpYmxpbmctZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE2MmQwMmE4ZDQxMzE5OTY5MGY0ZjZmM2EyYjU0YWM4Njkw
YTBjMDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Vs
ZW1lbnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDcgQEAKK0VsZW1lbnQgVHJhdmVyc2FsCisKK1Rlc3QgZGVzY3JpcHRpb246IFRoaXMgcGFnZSB0
ZXN0cyB0aGUgbmV4dEVsZW1lbnRTaWJsaW5nIHByb3BlcnR5LgorCitUZXN0IHBhc3NlcyBpZiB0
aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL25leHRFbGVtZW50U2libGlu
Zy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvbmV4
dEVsZW1lbnRTaWJsaW5nLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZDc0OTliODJmMDVhYzcxOTFjNzA4YzA1
M2QyYTUzMTJkZjUwYWVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL25leHRFbGVtZW50U2libGluZy5odG0KQEAgLTAsMCAr
MSw4NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0
aXRsZSBpZD0iZGVzYyI+RWxlbWVudCB0cmF2ZXJzYWw6IG5leHRFbGVtZW50U2libGluZzwvdGl0
bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAg
IHZhciB0ZXN0UGFzc2VkID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5j
dGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3Qo
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
KyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAg
ICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAg
ICAgICAgICAgICAgICAgICAgdmFyIGRpdjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MyIpOworICAgICAgICAgICAgICAgICAgICB2YXIgcDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicDEiKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIHZhciBu
b2RlID0gZGl2MS5uZXh0RWxlbWVudFNpYmxpbmc7CisgICAgICAgICAgICAgICAgICAgIGNoZWNr
Tm9kZShub2RlLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUubmV4dEVs
ZW1lbnRTaWJsaW5nOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUobm9kZSwgZGl2Myk7
CisgICAgICAgICAgICAgICAgICAgIG5vZGUgPSBub2RlLm5leHRFbGVtZW50U2libGluZzsKKyAg
ICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5vZGUsIHAxKTsKKyAgICAgICAgICAgICAgICAg
ICAgbm9kZSA9IG5vZGUubmV4dEVsZW1lbnRTaWJsaW5nOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUobm9kZSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQu
ZGF0YSA9IHRlc3RQYXNzZWQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNh
dGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxoMj5FbGVt
ZW50IFRyYXZlcnNhbDwvaDI+CisgICAgICAgIDxwIHN0eWxlPSJmb250LXNpemU6MTdweDsiPlRl
c3QgZGVzY3JpcHRpb246IFRoaXMgcGFnZSB0ZXN0cyB0aGUgbmV4dEVsZW1lbnRTaWJsaW5nIHBy
b3BlcnR5LjwvcD4KKyAgICAgICAgPGRpdiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAg
ICAgICA8ZGl2IGlkPSJkaXYxIj5hYWE8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIi
PmJiYgorICAgICAgICAgICAgICAgIDxkaXY+Y2NjPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4K
KyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPmRkZDwvZGl2PgorICAgICAgICAgICAgPHAgaWQ9
InAxIj5lZWU8L3A+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0
aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9J3Rlc3Ry
ZXN1bHQnPlJ1bm5pbmc8L2Rpdj4gCisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
ZWxlbWVudHRyYXZlcnNhbC9wcmV2aW91c0VsZW1lbnRTaWJsaW5nLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9wcmV2aW91c0VsZW1l
bnRTaWJsaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mN2JjNjg0ZTFmYjNiZGZhY2NjODQy
NjBiYzRkMzZkMzYyZGFkMTBkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmctZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorRWxlbWVudCBUcmF2ZXJzYWwKKworVGVzdCBkZXNjcmlw
dGlvbjogVGhpcyBwYWdlIHRlc3RzIHRoZSBwcmV2aW91c0VsZW1lbnRTaWJsaW5nIHByb3BlcnR5
LgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVy
c2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmcuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9lbGVtZW50dHJhdmVyc2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmcuaHRtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmVlY2U3OWI4YWQzMWFiNDkxZTEyZjczYTA3MzI3MWQyYjI4MTMzNzUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvcHJl
dmlvdXNFbGVtZW50U2libGluZy5odG0KQEAgLTAsMCArMSw4NyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZSBpZD0iZGVzYyI+RWxlbWVudCB0
cmF2ZXJzYWw6IHByZXZpb3VzRWxlbWVudFNpYmxpbmc8L3RpdGxlPgorICAgICAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB2YXIgdGVzdFBhc3NlZCA9ICJQ
YXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVh
bCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAh
PSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RQ
YXNzZWQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAg
ICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBkaXYzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjMiKTsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIHAxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIik7CisgICAgICAgICAg
ICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICB2YXIgbm9kZSA9IHAxLnByZXZpb3VzRWxl
bWVudFNpYmxpbmc7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShub2RlLCBkaXYzKTsK
KyAgICAgICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUucHJldmlvdXNFbGVtZW50U2libGluZzsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5vZGUsIGRpdjIpOworICAgICAgICAgICAg
ICAgICAgICBub2RlID0gbm9kZS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nOworICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUobm9kZSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIG5vZGUg
PSBub2RlLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7CisgICAgICAgICAgICAgICAgICAgIGNoZWNr
Tm9kZShub2RlLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRh
ID0gdGVzdFBhc3NlZDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2gg
KGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPGgyPkVsZW1lbnQg
VHJhdmVyc2FsPC9oMj4KKyAgICAgICAgPHAgc3R5bGU9ImZvbnQtc2l6ZToxN3B4OyI+VGVzdCBk
ZXNjcmlwdGlvbjogVGhpcyBwYWdlIHRlc3RzIHRoZSBwcmV2aW91c0VsZW1lbnRTaWJsaW5nIHBy
b3BlcnR5LjwvcD4KKyAgICAgICAgPGRpdiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAg
ICAgICA8ZGl2IGlkPSJkaXYxIj5hYWE8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIi
PmJiYgorICAgICAgICAgICAgICAgIDxkaXY+Y2NjPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4K
KyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPmRkZDwvZGl2PgorICAgICAgICAgICAgPHAgaWQ9
InAxIj5lZWU8L3A+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0
aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9J3Rlc3Ry
ZXN1bHQnPlJ1bm5pbmc8L2Rpdj4gCisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41M2Y0MmVhNmIxYjJhMjY4OTViZmJkNWFkMDYwOGIyYmQ0MjI1ZDYwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9F
eHRlbmRfRnVuY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorRXh0ZW5kIEhUTUxG
b3JtRWxlbWVudCBwcm90b3R5cGUgZnVuY3Rpb24gaXMgaW5oZXJpdGVkIGJ5IGluc3RhbmNlcwor
UGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9FeHRlbmRfRnVuY3Rpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9FeHRlbmRfRnVuY3Rpb24uaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllYjIzOGRkZmE1MTk0OWNl
YTM4NTY5MzI1MjllMGJmZDA1MzZhMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9GdW5jdGlvbi5odG0KQEAgLTAsMCAr
MSw2MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVz
dCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9m
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgor
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhl
cml0YW5jZSAtIE92ZXJyaWRlIEhUTUxGb3JtRWxlbWVudCBQcm90b3R5cGUgRnVuY3Rpb248L3Rp
dGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAg
ICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICAgICAgdHJ5IHsKKworICAgICAgICAgICAgICAgICAgICBIVE1MRGl2
RWxlbWVudC5wcm90b3R5cGUubXlmdW5jID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gIlBBU1MiOyB9
CisKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpOworCisgICAgICAgICAgICAgICAgICAgIGlmICgiUEFTUyIgPT0gZGl2Lm15ZnVuYygp
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0
Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9h
ZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgSFRNTEZvcm1FbGVtZW50IHByb3Rv
dHlwZSBmdW5jdGlvbiBpcyBpbmhlcml0ZWQgYnkgaW5zdGFuY2VzPC9kaXY+CisgICAgICAgIDxk
aXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVu
ZF9GdW5jdGlvbl9IaWdoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uX0hpZ2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjFjMWRjYjI3Y2ZhZWQzODUzM2VjYWRiY2Y1OGQzYzgxN2M0YzQ4NjYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9G
dW5jdGlvbl9IaWdoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0V4dGVuZCBOb2RlIHBy
b3RvdHlwZSBmdW5jdGlvbiBpcyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBl
CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL0V4dGVuZF9GdW5jdGlvbl9IaWdoLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uX0hpZ2guaHRtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU2M2Fi
NDIzMGY5NjcyY2M4N2UxZjFkZGYxMGJjZmYxYzU5YjYwM2MKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9GdW5jdGlvbl9I
aWdoLmh0bQpAQCAtMCwwICsxLDY1IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRl
cm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24s
CisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9u
IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8
dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gT3ZlcnJpZGUgTm9kZSBQcm90b3R5cGUgRnVuY3Rp
b248L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgeworCisgICAgICAg
ICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLm15ZnVuYyA9IGZ1bmN0aW9uIChzdHIpIHsgcmV0
dXJuICJQQVNTIjsgfQorCisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJkaXYiKTsKKworICAgICAgICAgICAgICAgICAgICBpZiAoIlBBU1MiID09
IGRpdi5teWZ1bmMoImZvbyIpKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkV4dGVu
ZCBOb2RlIHByb3RvdHlwZSBmdW5jdGlvbiBpcyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQg
cHJvdG90eXBlPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rp
dj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVy
dHlfR2V0dGVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNjBjMjhhYjMzMmFiZTdhNzI2NDA1
MDI2YjI3NDE3MzgyMTM3N2FlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDIgQEAKK0V4dGVuZCBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUgZ2V0dGVy
IHByb3BlcnR5IGlzIGluaGVyaXRlZCBieSBpbnN0YW5jZXMKK1Bhc3MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dl
dHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVu
ZF9Qcm9wZXJ0eV9HZXR0ZXIuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM0MGViNmViODEyMzA5YmVjMDMzZDc2
YzNjMTQzNDM2OWFiMGNiMmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXIuaHRtCkBAIC0wLDAg
KzEsNzIgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5o
ZXJpdGFuY2UgLSBPdmVycmlkZSBIVE1MRGl2RWxlbWVudCBQcm90b3R5cGUgUHJvcGVydHk8L3Rp
dGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAg
ICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICAgICAgdHJ5IHsKKworICAgICAgICAgICAgICAgICAgICBpZiAoT2Jq
ZWN0LmRlZmluZVByb3BlcnR5KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVm
aW5lUHJvcGVydHkoSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLCAibXlwcm9wIiwgeworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gIm15UHJvcCI7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBI
VE1MRGl2RWxlbWVudC5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygibXlwcm9wIiwgZnVuY3Rp
b24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAibXlQcm9wIjsK
KyAgICAgICAgICAgICAgICAgICAgICAgIH0pOyAgICAgICAgICAgICAgICAgIAorICAgICAgICAg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOworCisgICAgICAgICAgICAgICAgICAgIGlmICgibXlQcm9wIiA9
PSBkaXYubXlwcm9wKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAg
IDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgSFRNTERpdkVs
ZW1lbnQgcHJvdG90eXBlIGdldHRlciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgaW5zdGFuY2Vz
PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9H
ZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjZiYjFiYWM0NjlmZjhlYjRkNjlk
ZGY1OGQyMTM5YjRhYzA4ZmZiNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9IaWdoLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0V4dGVuZCBOb2RlIHByb3RvdHlwZSBnZXR0ZXIgcHJv
cGVydHkgaXMgaW5oZXJpdGVkIGJ5IEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZQorUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRf
UHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFl
MzUzODE4YTc2NWNjNWM5NGRmOWUxOGViMjI5MDlmZTdkMDhiZjMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0
eV9HZXR0ZXJfSGlnaC5odG0KQEAgLTAsMCArMSw3MiBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8
IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNy
b3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
CisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgor
PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4K
KyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIEV4dGVuZCBOb2RlIFByb3RvdHlw
ZSBHZXR0ZXIgUHJvcGVydHk8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSkgeworCisgICAgICAgICAgICAg
ICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoTm9kZS5wcm90b3R5cGUsICJteXByb3Ai
LCB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAodmFsKSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAibXlQcm9wIjsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oIm15cHJvcCIsIGZ1
bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIm15UHJv
cCI7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJk
aXYiKTsKKworICAgICAgICAgICAgICAgICAgICBpZiAoIm15UHJvcCIgPT0gZGl2Lm15cHJvcCkg
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+RXh0ZW5kIE5vZGUgcHJvdG90eXBlIGdldHRlciBw
cm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlPC9kaXY+Cisg
ICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfTG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9Mb3ct
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY2MzEyZDRiYTViMDkzYWUxZGMwNzk2ZjRlZDQ4NmQy
ZjRhYTI2OWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfTG93LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK0V4dGVuZCBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUgZ2V0dGVyIHByb3Bl
cnR5IGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZSBwcm90b3R5cGUKK1Bhc3MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5
X0dldHRlcl9Mb3cuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0xvdy5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQwMjVjMDg5NWZm
ZmIxYmE0YjY3MWUzNGM0M2Q3YTlkMzg4MDY4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9M
b3cuaHRtCkBAIC0wLDAgKzEsODIgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVy
bmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBv
cmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwK
KyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24g
bm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0
aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBFeHRlbmQgSFRNTERpdkVsZW1lbnQgUHJvdG90eXBl
IEdldHRlciBQcm9wZXJ0eTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgeworICAgICAgICAg
ICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisKKyAgICAgICAgICAgICAg
ICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShOb2RlLnByb3RvdHlwZSwgIm15cHJvcCIs
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICh2YWwpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJub2RlUHJvcCI7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisKKyAg
ICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShIVE1MRGl2RWxlbWVu
dC5wcm90b3R5cGUsICJteXByb3AiLCB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0
OiBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAi
ZGl2UHJvcCI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBOb2RlLnByb3RvdHlwZS5fX2RlZmluZUdl
dHRlcl9fKCJteXByb3AiLCBmdW5jdGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcmV0dXJuICJub2RlUHJvcCI7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKwor
ICAgICAgICAgICAgICAgICAgICAgICAgSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLl9fZGVmaW5l
R2V0dGVyX18oIm15cHJvcCIsIGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gImRpdlByb3AiOworICAgICAgICAgICAgICAgICAgICAgICAgfSk7ICAg
ICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIHNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKCJub2RlUHJvcCIgPT0gc3Bhbi5teXByb3ApIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5u
ZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIHsKKyAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5p
bm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgICAgICA8ZGl2PkV4dGVuZCBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUgZ2V0dGVyIHBy
b3BlcnR5IGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZSBwcm90b3R5cGU8L2Rpdj4KKyAgICAgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmY2MzRjOGMwYjhkZTQyZTdiYzk4YTFjOGM2ZmZjOWVkYWU0NDg5YWUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4
dGVuZF9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorRXh0ZW5k
IEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZSBzZXR0ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5
IGluc3RhbmNlcworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRlci5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOGRmMzA4ZGM4OGZhZDk3OGYzMjA3MmU3NDQxYjVkYzJmNjE2ZTY2NQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X1NldHRlci5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0
bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAx
MiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJl
CisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKwor
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
Ky0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8
aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIEV4dGVuZCBIVE1MRGl2
RWxlbWVudCBQcm90b3R5cGUgU2V0dGVyIFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgp
IHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAg
IHRyeSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBzZXRWYWx1ZSA9IGZhbHNlOworICAgICAg
ICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoSFRNTERpdkVsZW1lbnQucHJvdG90eXBl
LCAibXlwcm9wIiwgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24g
KHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9IHRydWU7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBOb2RlLnByb3RvdHlwZS5fX2RlZmluZVNldHRlcl9fKCJt
eXByb3AiLCBmdW5jdGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0
VmFsdWUgPSB0cnVlOworICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICAgICAgICAgIGRpdi5teXByb3AgPSAiZm9vIjsK
KyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGlmIChzZXRWYWx1ZSkg
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+RXh0ZW5kIEhUTUxEaXZFbGVtZW50IHByb3RvdHlw
ZSBzZXR0ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5IGluc3RhbmNlczwvZGl2PgorICAgICAg
ICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9F
eHRlbmRfUHJvcGVydHlfU2V0dGVyX0hpZ2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0hpZ2gtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlkZmEwM2QzMjhiM2Q4MzA2YTQzNjcwM2NiZTNhYmJhOGIz
NjFjZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyIEBACitFeHRlbmQgTm9kZSBwcm90b3R5cGUgc2V0dGVyIHByb3BlcnR5IGlzIGluaGVy
aXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRl
cl9IaWdoLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmUzZjY5OWIzMDQ3MWY0
ODY4ZDljMzA4ODY0YjliYmM3NTQ0YWM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0hpZ2gu
aHRtCkBAIC0wLDAgKzEsNzQgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0
IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0
aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBt
ZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9y
IHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBN
SUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRs
ZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBFeHRlbmQgTm9kZSBQcm90b3R5cGUgU2V0dGVyIFByb3Bl
cnR5PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAg
ICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBzZXRWYWx1ZSA9IGZhbHNlOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmlu
ZVByb3BlcnR5KSB7CisKKyAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9w
ZXJ0eShOb2RlLnByb3RvdHlwZSwgIm15cHJvcCIsIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzZXQ6IGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2V0VmFsdWUgPSB0cnVlOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisK
KyAgICAgICAgICAgICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLl9fZGVmaW5lU2V0dGVyX18o
Im15cHJvcCIsIGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
ZXRWYWx1ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgICAgICAgICBkaXYubXlwcm9wID0gImZv
byI7CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHNldFZhbHVlKSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRN
TCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1M
ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9IGNh
dGNoIChleCkgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxv
YWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+RXh0ZW5kIE5vZGUgcHJvdG90eXBlIHNldHRl
ciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlPC9kaXY+
CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfTG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRlcl9M
b3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY0YTY3YzJhMDMwZGVmN2YyZmZjODU3NDkyYmY3
OGVhN2U4YTdhMDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfTG93LWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDIgQEAKK0V4dGVuZCBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUgc2V0dGVyIHBy
b3BlcnR5IGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZSBwcm90b3R5cGUKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3Bl
cnR5X1NldHRlcl9Mb3cuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0xvdy5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTU2ZDhiNzgx
ODJlODYyY2E2MjU5OTZjMmIyMTU0Yzg1ZTEyMmNjYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRl
cl9Mb3cuaHRtCkBAIC0wLDAgKzEsODQgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAg
IDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBFeHRlbmQgSFRNTERpdkVsZW1lbnQgUHJvdG90
eXBlIFNldHRlciBQcm9wZXJ0eTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgeworICAgICAg
ICAgICAgICAgICAgICB2YXIgc2V0VmFsdWUgPSBudWxsOworICAgICAgICAgICAgICAgICAgICBp
ZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisgICAgICAgICAgICAgICAgICAgICAgICAKKyAg
ICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShOb2RlLnByb3RvdHlw
ZSwgIm15cHJvcCIsIHsgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0OiBmdW5jdGlv
biAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFZhbHVlID0gIm5v
ZGUiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ICAgIH0pOworCisgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHko
SFRNTERpdkVsZW1lbnQucHJvdG90eXBlLCAibXlwcm9wIiwgeworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzZXRWYWx1ZSA9ICJkaXYiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgICAgIE5v
ZGUucHJvdG90eXBlLl9fZGVmaW5lU2V0dGVyX18oIm15cHJvcCIsIGZ1bmN0aW9uICh2YWwpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSAibm9kZSI7CisgICAg
ICAgICAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgICAgICAgICAgICAgSFRNTERp
dkVsZW1lbnQucHJvdG90eXBlLl9fZGVmaW5lU2V0dGVyX18oIm15cHJvcCIsIGZ1bmN0aW9uICh2
YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSAiZGl2IjsK
KyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgICAgICB2YXIgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNw
YW4iKTsKKyAgICAgICAgICAgICAgICAgICAgc3Bhbi5teXByb3AgPSAiZm9vIjsKKyAgICAgICAg
ICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGlmICgibm9kZSIgPT0gc2V0VmFsdWUp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIH0gY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFk
PgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgSFRN
TERpdkVsZW1lbnQgcHJvdG90eXBlIHNldHRlciBwcm9wZXJ0eSBpcyBub3QgaW5oZXJpdGVkIGJ5
IE5vZGUgcHJvdG90eXBlPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5p
bmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVu
Y3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUzOTg3OGNiOTU2YzE4N2EyMjg4MzdlOTYy
ZTcxZTIyNDczYzhiZTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDIgQEAKK092ZXJyaWRlIEhUTUxGb3JtRWxlbWVudCBwcm90b3R5cGUgZnVuY3Rpb24gaXMg
aW5oZXJpdGVkIGJ5IGluc3RhbmNlcworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbi5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uLmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45NTBhM2Y2MjFlOTgyMWVkZDA3MGY0Y2E5MjRhMzk0MzYyOTY1ODNiCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9P
dmVycmlkZV9GdW5jdGlvbi5odG0KQEAgLTAsMCArMSw2MSBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIE92ZXJyaWRlIEhUTUxGb3Jt
RWxlbWVudCBQcm90b3R5cGUgRnVuY3Rpb248L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IHsK
KworICAgICAgICAgICAgICAgICAgICBIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdCA9
IGZ1bmN0aW9uICgpIHsgcmV0dXJuICJQQVNTIjsgfQorCisgICAgICAgICAgICAgICAgICAgIHZh
ciBmb3JtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9ybSIpOworCisgICAgICAgICAgICAg
ICAgICAgIGlmICgiUEFTUyIgPT0gZm9ybS5zdWJtaXQoKSkgeworICAgICAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAi
UGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7
CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJl
c3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgeworICAgICAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9
ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAg
IDxkaXY+T3ZlcnJpZGUgSFRNTEZvcm1FbGVtZW50IHByb3RvdHlwZSBmdW5jdGlvbiBpcyBpbmhl
cml0ZWQgYnkgaW5zdGFuY2VzPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1
bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uX0hpZ2gtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVy
cmlkZV9GdW5jdGlvbl9IaWdoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YjAxZGJlYWM0ZDFl
ZTYxODU2NzMyMGZmNjllYzU0NTgwZTFiZWMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9IaWdoLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK092ZXJyaWRlIE5vZGUgcHJvdG90eXBlIGZ1bmN0
aW9uIGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBpbnN0YW5jZXMKK1Bhc3MKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVf
RnVuY3Rpb25fSGlnaC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX0Z1bmN0aW9uX0hpZ2guaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNkZmRjZDJjYjU3MDI0
MTc2M2NhYjU1YTI0NTZlNmU0NmNlMmIwMzgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uX0hpZ2guaHRt
CkBAIC0wLDAgKzEsNjUgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4
cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6
CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNS
T1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5E
T00gTDIgSW5oZXJpdGFuY2UgLSBPdmVycmlkZSBOb2RlIFByb3RvdHlwZSBGdW5jdGlvbjwvdGl0
bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisKKyAgICAgICAgICAgICAg
ICAgICAgTm9kZS5wcm90b3R5cGUuYXBwZW5kQ2hpbGQgPSBmdW5jdGlvbiAoc3RyKSB7IHJldHVy
biAiUEFTUyI7IH0KKworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiZGl2Iik7CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKCJQQVNTIiA9PSBk
aXYuYXBwZW5kQ2hpbGQoIiIpKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2Pk92ZXJy
aWRlIE5vZGUgcHJvdG90eXBlIGZ1bmN0aW9uIGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVu
dCBpbnN0YW5jZXM8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fTG93LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVu
Y3Rpb25fTG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NzkxMDlkNDU3NjRkZjUwNzM1ODhh
NTY0YzMxMTk2M2E5Y2UzODQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9Mb3ctZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMiBAQAorT3ZlcnJpZGUgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlIGZ1bmN0
aW9uIGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZS4KK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fTG93Lmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVu
Y3Rpb25fTG93Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZDE1ODE4MWVjOWI3YWQ0NzYyNmU2ZTdlODJjYWI5
NmM2NTZhYjkyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9Mb3cuaHRtCkBAIC0wLDAgKzEsNjEgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2Ug
LSBPdmVycmlkZSBIVE1MRGl2RWxlbWVudCBQcm90b3R5cGUgRnVuY3Rpb248L3RpdGxlPgorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgICAgICAgdHJ5IHsKKworICAgICAgICAgICAgICAgICAgICBOb2RlLnByb3RvdHlwZS5h
cHBlbmRDaGlsZCA9IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuICJOb2RlOiAiICsgc3RyOyB9Cisg
ICAgICAgICAgICAgICAgICAgIEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZS5hcHBlbmRDaGlsZCA9
IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuICJIVE1MRGl2RWxlbWVudDogIiArIHN0cjsgfQorCisg
ICAgICAgICAgICAgICAgICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3Bh
biIpOworCisgICAgICAgICAgICAgICAgICAgIGlmICgiTm9kZTogZm9vIiA9PSBzcGFuLmFwcGVu
ZENoaWxkKCJmb28iKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICBjYXRjaCAoZXgpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2Pk92ZXJyaWRlIEhUTUxEaXZF
bGVtZW50IHByb3RvdHlwZSBmdW5jdGlvbiBpcyBub3QgaW5oZXJpdGVkIGJ5IE5vZGUuPC9kaXY+
CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDFkZWJmOTI3NzU0MDY5OGY2MjA5YTk2MjExZTFiYjY1
MGFkZWEwNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDIgQEAKK092ZXJyaWRlIEhUTUxIZWFkRWxlbWVudCBwcm90b3R5cGUgZ2V0dGVyIHByb3Bl
cnR5IGlzIGluaGVyaXRlZCBieSBpbnN0YW5jZXMKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVy
Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVf
UHJvcGVydHlfR2V0dGVyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNWUwMzlkMmMyYWQzOTg4OTA4YWE3ODg1
Y2NmYjVkMzI2Nzg5ZTI2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXIuaHRtCkBAIC0wLDAg
KzEsNzIgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5o
ZXJpdGFuY2UgLSBPdmVycmlkZSBIVE1MSGVhZEVsZW1lbnQgUHJvdG90eXBlIFByb3BlcnR5PC90
aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdCgpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9i
amVjdC5kZWZpbmVQcm9wZXJ0eSkgeworICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmRl
ZmluZVByb3BlcnR5KEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUsICJwcm9maWxlIiwgeworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gIm15UHJvZmlsZSI7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBIVE1MSGVhZEVsZW1lbnQucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18oInByb2ZpbGUi
LCBmdW5jdGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJt
eVByb2ZpbGUiOworICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2YXIgaGVhZCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImhlYWQiKTsKKworICAgICAgICAgICAgICAgICAgICBpZiAoIm15UHJvZmlsZSIgPT0g
aGVhZC5wcm9maWxlKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAg
IDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5PdmVycmlkZSBIVE1MSGVh
ZEVsZW1lbnQgcHJvdG90eXBlIGdldHRlciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgaW5zdGFu
Y2VzPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9IaWdoLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJv
cGVydHlfR2V0dGVyX0hpZ2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZDU1OTFmOTk0YWNm
NzRjNzI3ZWZmYjkzMmI1ZGFiNzQ2Mjk3NDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9I
aWdoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK092ZXJyaWRlIE5vZGUgcHJvdG90eXBl
IGdldHRlciBwcm9wZXJ0eSBpcyBpbnRlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBl
CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2guaHRt
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjA0MjI1ZTVhYzUxNDRjYTNlZjAwMmE5NjViMTY0MmY2NTEzOTkwMGQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bQpAQCAtMCwwICsxLDcyIEBACivvu788
IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHly
aWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
CisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1
dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJt
aXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9S
QVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Cisg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRt
bCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gT3Zl
cnJpZGUgTm9kZSBQcm90b3R5cGUgR2V0dGVyIFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVz
dCgpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeSB7CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5kZWZpbmVQcm9wZXJ0
eSkgeworICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE5vZGUu
cHJvdG90eXBlLCAibm9kZU5hbWUiLCB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0
OiBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAi
bXlOb2RlTmFtZSI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAg
ICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBOb2RlLnByb3RvdHlwZS5fX2RlZmlu
ZUdldHRlcl9fKCJub2RlTmFtZSIsIGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gIm15Tm9kZU5hbWUiOworICAgICAgICAgICAgICAgICAgICAgICAg
fSk7ICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworCisgICAgICAg
ICAgICAgICAgICAgIGlmICgibXlOb2RlTmFtZSIgPT0gZGl2Lm5vZGVOYW1lKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlu
bmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7Cisg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgp
Ij4KKyAgICAgICAgPGRpdj5PdmVycmlkZSBOb2RlIHByb3RvdHlwZSBnZXR0ZXIgcHJvcGVydHkg
aXMgaW50ZXJpdGVkIGJ5IEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZTwvZGl2PgorICAgICAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVy
cmlkZV9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmVlZWIwMzc3ODdmYmY4YTZjOTM0NzVkMDA5M2NhYjBlYjgyNDZkMTAKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitP
dmVycmlkZSBIVE1MSGVhZEVsZW1lbnQgcHJvdG90eXBlIHNldHRlciBwcm9wZXJ0eSBpcyBpbmhl
cml0ZWQgYnkgaW5zdGFuY2VzCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1Nl
dHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMmVlZWYzNjRmMzc5MmU5YjZjODg3NDk2MmRmYjcxZTMwOTc0
ZjUyYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0bQpAQCAtMCwwICsxLDcyIEBACivv
u788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENv
cHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRy
aWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBw
ZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09S
UE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0g
T3ZlcnJpZGUgSFRNTEhlYWRFbGVtZW50IFByb3RvdHlwZSBQcm9wZXJ0eTwvdGl0bGU+CisgICAg
ICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9u
IFJ1blRlc3QoKSB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAg
ICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAgICAgICB2YXIgc2V0VmFsdWUgPSBmYWxz
ZTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSkgeworICAg
ICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEhUTUxIZWFkRWxlbWVu
dC5wcm90b3R5cGUsICJwcm9maWxlIiwgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNl
dDogZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRW
YWx1ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAg
ICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBIVE1MSGVhZEVsZW1lbnQucHJvdG90
eXBlLl9fZGVmaW5lU2V0dGVyX18oInByb2ZpbGUiLCBmdW5jdGlvbiAodmFsKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSB0cnVlOworICAgICAgICAgICAgICAgICAg
ICAgICAgfSk7ICAgCisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAg
ICB2YXIgaGVhZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWQiKTsKKyAgICAgICAgICAg
ICAgICAgICAgaGVhZC5wcm9maWxlID0gImZvbyI7CisgICAgICAgICAgICAgICAgICAgIGlmIChz
ZXRWYWx1ZSkgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsK
KyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIGNhdGNoIChleCkgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+T3ZlcnJpZGUgSFRNTEhlYWRFbGVt
ZW50IHByb3RvdHlwZSBzZXR0ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5IGluc3RhbmNlczwv
ZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5
X1NldHRlcl9IaWdoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNzJjMDM1NTYwNmI1OTFiNGRh
OWVlM2ZlY2NhOTdmMGU0ZDhlYzEzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitPdmVycmlkZSBOb2RlIHByb3RvdHlwZSBzZXR0
ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5IEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZQorUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9P
dmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43YzQwMDcwMGFiODU3NmJiYmYxNzYwOWQyMGIxZTcyZGQ3NzgwNjI3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVy
cmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC5odG0KQEAgLTAsMCArMSw3NCBAQAor77u/PCFET0NU
WVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQg
wqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhl
IE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMg
bWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lv
bi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4K
KyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIE92ZXJyaWRl
IE5vZGUgUHJvdG90eXBlIEdldHRlciBQcm9wZXJ0eTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSB7
CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0
cnkgeworCisgICAgICAgICAgICAgICAgICAgIHZhciBzZXRWYWx1ZSA9IGZhbHNlOworICAgICAg
ICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoTm9kZS5wcm90b3R5cGUsICJub2RlTmFt
ZSIsIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICgpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSB0cnVlOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAg
ICAgICAgICAgICAgTm9kZS5wcm90b3R5cGUuX19kZWZpbmVTZXR0ZXJfXygibm9kZU5hbWUiLCBm
dW5jdGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSB0
cnVlOworICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2Iik7CisgICAgICAgICAgICAgICAgICAgIGRpdi5ub2RlTmFtZSA9ICJmb28iOworCisgICAg
ICAgICAgICAgICAgICAgIGlmIChzZXRWYWx1ZSkgeworICAgICAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgeworICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+
T3ZlcnJpZGUgTm9kZSBwcm90b3R5cGUgc2V0dGVyIHByb3BlcnR5IGlzIGluaGVyaXRlZCBieSBI
VE1MRGl2RWxlbWVudCBwcm90b3R5cGU8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3Vs
dCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NEQVRBU2VjdGlv
bi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9DREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAzOGU0ZTZm
ODQ0NzUxNzdkZWEyMDMyZTgxMmY5MDEwNzg2NjA3YTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DREFUQVNlY3Rp
b24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorQ0RBVEFTZWN0aW9uIDogVGV4dAorUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfQ0RBVEFTZWN0aW9uLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX0NEQVRBU2VjdGlvbi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmY3YjBi
ODlhMjMwZWFmYWU0MTA5Y2QyNjg1MDA0MTllYmZkMTk1MwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NEQVRBU2Vj
dGlvbi5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAg
PHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIENEQVRBU2VjdGlvbiBQcm90b3R5cGUgSW5oZXJp
dGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAg
ICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90
eXBlT2YoQ0RBVEFTZWN0aW9uLnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICAgICAgcHJvdG8gPSBDREFUQVNlY3Rpb24ucHJvdG90eXBlLl9fcHJvdG9fXzsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAg
ICAgICAgICAgaWYgKHByb3RvID09PSBUZXh0LnByb3RvdHlwZSkgCisgICAgICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5u
ZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5u
ZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAg
ICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICAgICAgPGRpdj5DREFUQVNlY3Rpb24gOiBUZXh0PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9
InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9D
aGFyYWN0ZXJEYXRhLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX0NoYXJhY3RlckRhdGEtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjQ2M2U5ODAzMjVmZWZjZDNhNGIxM2Q3NzFiNDFiYzdjMjVhOThlMDMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9DaGFyYWN0ZXJEYXRhLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0NoYXJhY3RlckRh
dGEgOiBOb2RlCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DaGFyYWN0ZXJEYXRhLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NoYXJhY3RlckRhdGEuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjA0Njk2MmQ3YzZmMTIzYzBmNjY5NTRkYmZjYTllNGVjMzhjZTEzZjkKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9DaGFyYWN0ZXJEYXRhLmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUg
aHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAg
IDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gQ2hhcmFjdGVyRGF0
YSBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
ICAgICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJv
dG8gPSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9m
KSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8g
PSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoQ2hhcmFjdGVyRGF0YS5wcm90b3R5cGUpOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gQ2hhcmFjdGVyRGF0YS5w
cm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIAorICAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBOb2RlLnByb3RvdHlw
ZSkgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAg
ICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5DaGFyYWN0ZXJEYXRhIDogTm9kZTwv
ZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfQ29tbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Db21tZW50LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi40NzNhM2JlZmFhMWU0ZTdhZjhiZTQ0YjdjZjgxMTNlZGI0NzY0MTUzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfQ29tbWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitDb21tZW50
IDogQ2hhcmFjdGVyRGF0YQorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ29tbWVudC5odG0gYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Db21tZW50Lmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xZWY0YzVjY2M2NjljZjgyMjQ5MjMzNDk1MDU1OGFkMzMzNzNmNDM0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfQ29tbWVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0t
CisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZp
Y2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0
bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIENvbW1lbnQgUHJvdG90eXBlIEluaGVy
aXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3Rv
dHlwZU9mKENvbW1lbnQucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBwcm90byA9IENvbW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAg
IGlmIChwcm90byA9PT0gQ2hhcmFjdGVyRGF0YS5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlu
bmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlu
bmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+
CisgICAgICAgIDxkaXY+Q29tbWVudCA6IENoYXJhY3RlckRhdGE8L2Rpdj4KKyAgICAgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX0RPTUV4Y2VwdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24tZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmRiYTlmNDRlODMwM2M2MzUxY2UwYjU2MDZjYmE3Nzg4NTMzNjM2MTcKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9ET01FeGNlcHRpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorRE9NRXhjZXB0
aW9uCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0aW9uLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mNDBhYWMzNmQ4MjMyZDg4ZjA5ZWZkYTdmNjdlZWFjMmRmMDRlYzZmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
RE9NRXhjZXB0aW9uLmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgor
ICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gRE9NRXhjZXB0aW9uIFByb3RvdHlw
ZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7
CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5n
ZXRQcm90b3R5cGVPZihET01FeGNlcHRpb24ucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IERPTUV4Y2VwdGlvbi5wcm90b3R5cGUuX19w
cm90b19fOworICAgICAgICAgICAgICAgICAgICB9IAorICAgICAgICAgICAgICAgICAgICAKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBPYmplY3QucHJvdG90eXBlKSAKKyAgICAg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJS
dW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkRPTUV4Y2VwdGlvbjwvZGl2PgorICAgICAgICA8ZGl2
IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfRG9jdW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfRG9jdW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgx
OWZjOWMzYTViY2RmYTljNDY5NmZhMjUxZjZiNDk2YWEzYjMyNmQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Eb2N1
bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitEb2N1bWVudCA6IE5vZGUKK1Bhc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX0RvY3VtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX0RvY3VtZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYWExOTJhNjk3NWNjM2Iz
YTBjNTRjMmUyNDRmM2ZkNzUzYWE0ZmEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRG9jdW1lbnQuaHRtCkBAIC0w
LDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVy
IFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
CisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQg
Q09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIg
SW5oZXJpdGFuY2UgLSBEb2N1bWVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAo
T2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoRG9jdW1lbnQucHJv
dG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNl
IAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9
IERvY3VtZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IE5vZGUucHJvdG90eXBlKSAKKyAgICAg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJS
dW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkRvY3VtZW50IDogTm9kZTwvZGl2PgorICAgICAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90
b3R5cGVfRWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
MzE5MGU5MTY5YTVhMDUyZDhhODkzMGU5MWMwMjViNjEzMzdkZjJjCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRWxl
bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitFbGVtZW50IDogTm9kZQorUGFzcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90
b3R5cGVfRWxlbWVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL1Byb3RvdHlwZV9FbGVtZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OWRhN2UzZTljNTI1ODU1OWQx
MzZhNmU0ZGY4NWQ3ODFmYzM0YTMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRWxlbWVudC5odG0KQEAgLTAsMCAr
MSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVz
dCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9m
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgor
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhl
cml0YW5jZSAtIEVsZW1lbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVu
VGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVj
dC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKEVsZW1lbnQucHJvdG90eXBl
KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IEVsZW1l
bnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfSAKKyAgICAgICAg
ICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGlmIChwcm90byA9PT0gTm9kZS5wcm90
b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkg
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+RWxlbWVudCA6IE5vZGU8L2Rp
dj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX0V2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0V2ZW50LWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45YmM0MjU3ZTYwMTRkNWI4YWVlN2E2OTE2M2Q4YWQ3YzQ5MGU0NjgyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90
b3R5cGVfRXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorRXZlbnQKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX0V2ZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0V2ZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMDIzNGZjYmRjM2E4NzhmNTM4MDFkNzc3
MjFhNzI1NTI0OTg2ZWJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRXZlbnQuaHRtCkBAIC0wLDAgKzEsNjkgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2Ug
LSBFdmVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAg
ICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2
YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3Rv
dHlwZU9mKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90
b3R5cGVPZihFdmVudC5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBFdmVu
dC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKHByb3RvID09PSBPYmplY3QucHJvdG90eXBlKSAKKyAgICAgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0
KCkiPgorICAgICAgICA8ZGl2PkV2ZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1
bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MQm9keUVs
ZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfSFRNTEJvZHlFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
OTE5YTExNWI5MjIyOWM2M2JmN2FkMWNiMGVjZjRiZDZiMzY1N2U1Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRN
TEJvZHlFbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0hUTUxCb2R5RWxlbWVu
dCA6IEhUTUxFbGVtZW50CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MQm9keUVsZW1lbnQuaHRtIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTEJvZHlFbGVt
ZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44MTViMzNlZjI1ZDI2OWFmMjRhY2IyZjkwZDU1MTA1ODEzN2Fl
YTk5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfSFRNTEJvZHlFbGVtZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivv
u788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENv
cHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRy
aWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBw
ZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09S
UE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0g
SFRNTEJvZHlFbGVtZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qu
Z2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihIVE1MQm9keUVsZW1lbnQucHJv
dG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNl
IAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9
IEhUTUxCb2R5RWxlbWVudC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBIVE1MRWxlbWVudC5wcm90
b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkg
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8
Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+SFRNTEJvZHlFbGVtZW50IDog
SFRNTEVsZW1lbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxEaXZFbGVtZW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X0hUTUxEaXZFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNWM1ODYwNzYwNmQwZjU3
NjI5NDdiNTViOWMyZTM2Y2VlNDNhZjJmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorSFRNTERpdkVsZW1lbnQgOiBIVE1MRWxlbWVudAor
UGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmU3YTQwNzNhYmFkNzE2MGY3ZTE3MGIxYWU5M2YyYTk4MTY5ODhjNDgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9I
VE1MRGl2RWxlbWVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8
IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNy
b3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
CisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgor
PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4K
KyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIEhUTUxEaXZFbGVtZW50IFByb3Rv
dHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRy
eSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51
bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVj
dC5nZXRQcm90b3R5cGVPZihIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUpOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gSFRNTERpdkVsZW1lbnQucHJvdG90
eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
ICAgIGlmIChwcm90byA9PT0gSFRNTEVsZW1lbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5p
bm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5p
bm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgICAgICA8ZGl2PkhUTUxEaXZFbGVtZW50IDogSFRNTEVsZW1lbnQ8L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0hUTUxFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxFbGVtZW50LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi43MmFiYTcxYjJmNzBlZWZhM2NkZjVhMDg2NzcyZWNlNWQ5MGVlNjk4Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfSFRNTEVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorSFRNTEVs
ZW1lbnQgOiBFbGVtZW50CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRWxlbWVudC5odG0gYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRWxlbWVudC5odG0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMjczYzFmYTc3YWIzMTQzZmIzMGRjNDkyOWQzZDI3ZmM2MjIwZmViZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0hUTUxFbGVtZW50Lmh0bQpAQCAtMCwwICsxLDcwIEBACivvu788IURPQ1RZUEUg
aHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAg
IDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gSFRNTEVsZW1lbnQg
UHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAg
ICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3Rv
ID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikg
CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0g
T2JqZWN0LmdldFByb3RvdHlwZU9mKEhUTUxFbGVtZW50LnByb3RvdHlwZSk7CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBIVE1MRWxlbWVudC5wcm90b3R5
cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKHByb3RvID09PSBFbGVtZW50LnByb3RvdHlwZSkgCisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJI
VE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5IVE1MRWxl
bWVudCA6IEVsZW1lbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmlu
ZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9IVE1MSXNJbmRleEVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFkNWQ1
OWE5MDQ3OTNmOWFlMWNlZWMyM2U5ZjkzYTYwNThkMThkYTUKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MSXNJ
bmRleEVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorSFRNTElzSW5kZXhFbGVt
ZW50IDogSFRNTEVsZW1lbnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC5odG0gYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MSXNJ
bmRleEVsZW1lbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhlZmZlMzExZWY5ODgyNWZhZmRlN2ZiYzlhYTVm
N2FiNmMwMjMxMTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MSXNJbmRleEVsZW1lbnQuaHRtCkBAIC0wLDAg
KzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5o
ZXJpdGFuY2UgLSBIVE1MSXNJbmRleEVsZW1lbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRs
ZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAg
ZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKEhUTUxJ
c0luZGV4RWxlbWVudC5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHByb3RvID0gSFRNTElzSW5kZXhFbGVtZW50LnByb3RvdHlwZS5fX3Byb3RvX187
CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8g
PT09IEhUTUxFbGVtZW50LnByb3RvdHlwZSkgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZh
aWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRp
dj5IVE1MSXNJbmRleEVsZW1lbnQgOiBIVE1MRWxlbWVudDwvZGl2PgorICAgICAgICA8ZGl2IGlk
PSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
TWVzc2FnZUV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX01lc3NhZ2VFdmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOGIzNzU4ZDY5MzM1ZDczYzIzODczNjYzMmE0ZTg4Mzg1YTk2YzcyYwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X01lc3NhZ2VFdmVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitNZXNzYWdlRXZlbnQg
OiBFdmVudAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfTWVzc2FnZUV2ZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01lc3NhZ2VFdmVudC5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNmE2YzliZjYzZDY5NzZjMGRiYTM0NmZmZDk2ODRmM2EyYWI1NDM3YgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX01lc3NhZ2VFdmVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIE1lc3NhZ2VFdmVudCBQcm90
b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0
cnkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBu
dWxsOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAg
ICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmpl
Y3QuZ2V0UHJvdG90eXBlT2YoTWVzc2FnZUV2ZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBNZXNzYWdlRXZlbnQucHJvdG90eXBl
Ll9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAg
IGlmIChwcm90byA9PT0gRXZlbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAg
ICA8ZGl2Pk1lc3NhZ2VFdmVudCA6IEV2ZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3Ry
ZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Nb3VzZUV2
ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFu
Y2UvUHJvdG90eXBlX01vdXNlRXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkNTcxYjFj
MmY1ODkwNmI5MmQ4NWZhZTQwNWNjNzljYWEyMTlmOWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Nb3VzZUV2ZW50
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK01vdXNlRXZlbnQgOiBVSUV2ZW50CitQYXNz
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9Nb3VzZUV2ZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM3YjFlNWI0ODFj
ZjA1NWEwYjFhMGMyZDRjNjMyZWQ5N2IzODM4MjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Nb3VzZUV2ZW50Lmh0
bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+
RE9NIEwyIEluaGVyaXRhbmNlIC0gTW91c2VFdmVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3Rp
dGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAg
ICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAgICAg
ICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoTW91
c2VFdmVudC5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHByb3RvID0gTW91c2VFdmVudC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBVSUV2ZW50LnBy
b3RvdHlwZSkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgp
IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2Pk1vdXNlRXZlbnQgOiBVSUV2
ZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Ob2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX05vZGUtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmYzNGQwM2ZkNDFjMWRlY2ZhN2RkMDllMDliZTVjZTY4NDc4MDgwMjkKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9Ob2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK05vZGUKK1Bhc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX05vZGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfTm9kZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODMwNzg0Y2U0MDU5NDU1ODc3YTIwNmUz
YzVjODJhNDgwZWM1MDQ3YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX05vZGUuaHRtCkBAIC0wLDAgKzEsNzEgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2Ug
LSBOb2RlIFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAg
ICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90
eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBw
cm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihOb2RlLnByb3RvdHlwZSk7CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBOb2RlLnByb3RvdHlwZS5fX3By
b3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBpZiAo
cHJvdG8gPT09IE9iamVjdC5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0
PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxk
aXY+Tm9kZTwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+
CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9T
VkdDaXJjbGVFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iOGMzYjA1MjM3NWRjM2Q3
ZTgzNzQ0NjkwNWZmYTNjZTYwZWRlMWE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitTVkdDaXJjbGVFbGVtZW50IDogU1ZHRWxlbWVu
dAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdDaXJjbGVFbGVtZW50Lmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hNDA5NmQxMzQ4NzYzZjZhMmI0MGZlYzExODk4ZjA1MWYwNzA2M2Q3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90
b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC5odG0KQEAgLTAsMCArMSw3MCBAQAor77u/PCFET0NUWVBF
IGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkg
MjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgor
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAg
ICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIFNWR0NpcmNsZUVs
ZW1lbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFy
IHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5
cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBy
b3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFNWR0NpcmNsZUVsZW1lbnQucHJvdG90eXBlKTsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IFNWR0NpcmNs
ZUVsZW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICAgICAgICAgIGlmIChwcm90byA9PT0gU1ZHRWxlbWVudC5wcm90b3R5cGUpCisg
ICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAg
ICA8ZGl2PlNWR0NpcmNsZUVsZW1lbnQgOiBTVkdFbGVtZW50PC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9TVkdFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjRkZTE0NmZhNmE1ZTE1ZDMxN2I2ODJiYTQ0NjA4YTgxNjBlMTI2ZGIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9T
VkdFbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1NWR0VsZW1lbnQgOiBFbGVt
ZW50CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL1Byb3RvdHlwZV9TVkdFbGVtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1lbnQuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQz
YzA1Y2VhNTQ3YjE0YjJkY2FiMGU4NjdlMmEzOTJhNDUxZmNjZmEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdF
bGVtZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gU1ZHRWxlbWVudCBQcm90b3R5cGUgSW5oZXJp
dGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAg
ICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90
eXBlT2YoU1ZHRWxlbWVudC5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHByb3RvID0gU1ZHRWxlbWVudC5wcm90b3R5cGUuX19wcm90b19fOworICAg
ICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBF
bGVtZW50LnByb3RvdHlwZSkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxz
ZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBj
YXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hl
YWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PlNWR0VsZW1l
bnQgOiBFbGVtZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8
L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdSZWN0RWxlbWVudC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9TVkdSZWN0RWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDgwOWJhNzc4NGQ5ODAx
MjM4NWE4YTI3NjRlMDc1MWU1NjM1OTI2NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVtZW50LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1NWR1JlY3RFbGVtZW50IDogU1ZHRWxlbWVudAor
UGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjYzYzViNjQ2YTZlYzZlMTgzNTRmZTcxMDIxOGI3MDlhZTBmY2IzNjMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9T
VkdSZWN0RWxlbWVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8
IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNy
b3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
CisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgor
PGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4K
KyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIFNWR1JlY3RFbGVtZW50IFByb3Rv
dHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRy
eSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51
bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVj
dC5nZXRQcm90b3R5cGVPZihTVkdSZWN0RWxlbWVudC5wcm90b3R5cGUpOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gU1ZHUmVjdEVsZW1lbnQucHJvdG90
eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
ICAgIGlmIChwcm90byA9PT0gU1ZHRWxlbWVudC5wcm90b3R5cGUpCisgICAgICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5u
ZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5u
ZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAg
ICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICAgICAgPGRpdj5TVkdSZWN0RWxlbWVudCA6IFNWR0VsZW1lbnQ8L2Rpdj4KKyAgICAgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX1NWR1NWR0VsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHU1ZHRWxlbWVudC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMmM4NjAyOWE4NjE4Y2M5ODRiNzQ2ZGJiMjQxODcxZDY4MTY1MWQwNgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1NWR1NWR0VsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorU1ZH
U1ZHRWxlbWVudCA6IFNWR0VsZW1lbnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHU1ZH
RWxlbWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDk0OGJlNDMyNzhmNjY2NzIwN2NiNzI0OGNkMDQ0ZmUy
OTRkZThlZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtCkBAIC0wLDAgKzEsNzEgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2Ug
LSBTVkdTVkdFbGVtZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qu
Z2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihTVkdTVkdFbGVtZW50LnByb3Rv
dHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAK
KyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBT
VkdTVkdFbGVtZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IFNWR0VsZW1lbnQucHJvdG90eXBl
KSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PlNWR1NWR0VsZW1lbnQgOiBTVkdFbGVt
ZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU3RvcmFnZUV2
ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YTBhOTI0ZGViMzdmYWExOTFkZmNkNTg0NDNi
NmMxYWJjZDAwYjIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU3RvcmFnZUV2ZW50LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK1N0b3JhZ2VFdmVudCA6IEV2ZW50CitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZl
bnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfU3RvcmFnZUV2ZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMzIyMmUxZWMxOGVhYTRhODYwNDJkZGFl
OTI5ODk4MWVjY2E0YmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU3RvcmFnZUV2ZW50Lmh0bQpAQCAtMCwwICsx
LDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0
IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhl
ciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2Yg
aXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisg
d3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNS
T1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBP
UkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5v
cmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVy
aXRhbmNlIC0gU3RvcmFnZUV2ZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAg
ICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9u
IFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChP
YmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihTdG9yYWdlRXZlbnQu
cHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBl
bHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90
byA9IFN0b3JhZ2VFdmVudC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBFdmVudC5wcm90b3R5cGUp
IAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+U3RvcmFnZUV2ZW50IDogRXZlbnQ8L2Rp
dj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX1RleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4dC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uY2NkYWViMDAzZmFhMzk2NjJkYmQ1MjJjNjBlYjc3NGM1MWEzYTc3OQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX1RleHQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorVGV4dCA6IENoYXJhY3RlckRh
dGEKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX1RleHQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4dC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTZiYmI0OWVhNWUzMmZl
OGYyODQyODcxYzRhMTg3NDEyYjU1ZTY0YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1RleHQuaHRtCkBAIC0wLDAg
KzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5o
ZXJpdGFuY2UgLSBUZXh0IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qu
Z2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihUZXh0LnByb3RvdHlwZSk7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBUZXh0LnByb3Rv
dHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAg
ICAgICBpZiAocHJvdG8gPT09IENoYXJhY3RlckRhdGEucHJvdG90eXBlKQorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgp
Ij4KKyAgICAgICAgPGRpdj5UZXh0IDogQ2hhcmFjdGVyRGF0YTwvZGl2PgorICAgICAgICA8ZGl2
IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfVUlFdmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9VSUV2ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zOTYy
N2FhNWJkYTZhM2E0YjA5YzhkYzE3MDYxNjViZDYwYjY3MjE4Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVUlFdmVu
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitVSUV2ZW50IDogRXZlbnQKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX1VJRXZlbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfVUlFdmVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2RlZGI4M2E1NDkxZjJjYTNmYjI0
NjJlMDViYjkyNDJhZjQxMTdiYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1VJRXZlbnQuaHRtCkBAIC0wLDAgKzEs
NzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJp
dGFuY2UgLSBVSUV2ZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qu
Z2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihVSUV2ZW50LnByb3RvdHlwZSk7
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBVSUV2ZW50
LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgICAgICAgICBpZiAocHJvdG8gPT09IEV2ZW50LnByb3RvdHlwZSkgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgp
Ij4KKyAgICAgICAgPGRpdj5VSUV2ZW50IDogRXZlbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0i
dGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1do
ZWVsRXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDNk
M2Y4Y2E4NjRjMjUyNGQ4ZjkyODA3ZGIwZjc0NTlhM2FjNDI0ZgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1doZWVs
RXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorV2hlZWxFdmVudCA6IE1vdXNlRXZl
bnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX1doZWVsRXZlbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmFm
Zjk5YTEwMWMwOWM0OGM3YjI1YmFhNzY4NGY3MGI4OGFhMTkzNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1doZWVs
RXZlbnQuaHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAg
IDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBXaGVlbEV2ZW50IFByb3RvdHlwZSBJbmhlcml0
YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAg
ICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAg
ICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5
cGVPZihXaGVlbEV2ZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgcHJvdG8gPSBXaGVlbEV2ZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAg
ICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IE1v
dXNlRXZlbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PldoZWVs
RXZlbnQgOiBNb3VzZUV2ZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1
bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQtZXhwZWN0ZWQuaHRtIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9iYWNrZ3JvdW5kUmVwZWF0LWV4cGVj
dGVkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5mMjM0NTdiMGI4NDNkMGMzZjkwMDliYzk2NjE3OTZkNDYzYmE3
MWFjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHls
ZS9iYWNrZ3JvdW5kUmVwZWF0LWV4cGVjdGVkLmh0bQpAQCAtMCwwICsxLDYgQEAKKzxodG1sPgor
PGJvZHk+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogNTAwcHg7IGhlaWdodDogNTAwcHg7IGJvcmRlcjog
MTBweCBzb2xpZCBibGFjazsgYmFja2dyb3VuZC1pbWFnZTogdXJsKHJlc291cmNlcy9tYXAuanBn
KTsgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14Ij5UaGlzIGRpdiBzaG91bGQgaGF2ZSBhIGhv
cml6b250YWwgcmVwZWF0aW5nIGJhY2tncm91bmQ8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiA1
MDBweDsgaGVpZ2h0OiA1MDBweDsgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOyBiYWNrZ3JvdW5k
LWltYWdlOiB1cmwocmVzb3VyY2VzL21hcC5qcGcpIj5QYXNzPC9kaXY+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tn
cm91bmRSZXBlYXQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9iYWNr
Z3JvdW5kUmVwZWF0Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MzMzNGZhZTBlZGRlZjZhZmZkZmVmYTQ4MDRi
YzhkNjI3NDc5ZjZmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9zdHlsZS9iYWNrZ3JvdW5kUmVwZWF0Lmh0bQpAQCAtMCwwICsxLDUyIEBACivvu788IURP
Q1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0
cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8IS0tCisg
SW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQg
Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0
aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+
CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5TeW50YXggZm9yIGJhY2tncm91bmRSZXBlYXQ8
L3RpdGxlPgorICAgICAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorICAgICAgICAgICAgZGl2
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHJl
c291cmNlcy9tYXAuanBnKTsKKyAgICAgICAgICAgICAgICB3aWR0aDo1MDBweDsKKyAgICAgICAg
ICAgICAgICBoZWlnaHQ6NTAwcHg7CisgICAgICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlk
IGJsYWNrOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keT4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImJhY2tncm91bmQtcmVw
ZWF0OnJlcGVhdC14Ij5UaGlzIGRpdiBzaG91bGQgaGF2ZSBhIGhvcml6b250YWwgcmVwZWF0aW5n
IGJhY2tncm91bmQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+RmFpbDwvZGl2
PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBp
Zih3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERp
diIpLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiYmFja2dyb3VuZC1yZXBlYXQiKSA9PSAicmVwZWF0
LXgiKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUtZXhwZWN0ZWQuaHRtIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9kdXBsaWNhdGVSdWxlLWV4cGVjdGVk
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41YWNjMDBjZDk0MmM5Mzg3NDc5ZWEzMjYyODJiZWYwNDI1MGFlNjgx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9k
dXBsaWNhdGVSdWxlLWV4cGVjdGVkLmh0bQpAQCAtMCwwICsxLDYgQEAKKzxodG1sPgorPGJvZHk+
Cis8ZGl2IHN0eWxlPSJjb2xvcjogZ3JlZW4iPlRoaXMgdGV4dCBzaG91bGQgYmUgZ3JlZW4gYW5k
IHRoZSBwYWdlIHNob3VsZCBoYXZlIG5vIG90aGVyIHN0eWxlLjwvZGl2PgorPGRpdiBzdHlsZT0i
Y29sb3I6IGdyZWVuIj5QYXNzPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9kdXBsaWNhdGVSdWxlLmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi43N2NmZjIyZTQxOGJiNWM0ZTE1MmVkZDI2YWZmYjAyMDFkYmI4ZDMwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9kdXBsaWNhdGVSdWxl
Lmh0bQpAQCAtMCwwICsxLDUwIEBACivvu788IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8v
RFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RU
RC94aHRtbDEtc3RyaWN0LmR0ZCI+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRs
ZT5Qcm9wZXJ0eSBpcyBkZWNsYXJlZCB0d2ljZSBpbiBydWxlPC90aXRsZT4KKyAgICAgICAgPHN0
eWxlIHR5cGU9InRleHQvY3NzIj4KKyAgICAgICAgICAgIGRpdgorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIGNvbG9yOiByZWQ7CisgICAgICAgICAgICAgICAgY29sb3I6IGdyZWVuOwor
ICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4K
KyAgICAgICAgPGRpdj5UaGlzIHRleHQgc2hvdWxkIGJlIGdyZWVuIGFuZCB0aGUgcGFnZSBzaG91
bGQgaGF2ZSBubyBvdGhlciBzdHlsZS48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3Vs
dCI+RmFpbDwvZGl2PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgICAgICBpZihkb2N1bWVudC5zdHlsZVNoZWV0c1swXS5jc3NSdWxlc1swXS5zdHlsZS5s
ZW5ndGggPT0gMSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
c3R5bGUvaW5zZXJ0SGllcmFyY2h5RXJyb3ItZXhwZWN0ZWQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci1leHBlY3RlZC5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZWY3NjBlMzIwNGU5OTRhZDU4M2M3MTM2NmNhNGZmZjUxOTE3N2Y0NwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0SGll
cmFyY2h5RXJyb3ItZXhwZWN0ZWQuaHRtCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+Cis8Ym9keT4K
KzxkaXYgc3R5bGU9ImNvbG9yOiByZWQiPlRoaXMgdGV4dCBzaG91bGQgYmUgcmVkIGFuZCB0aGUg
cGFnZSBzaG91bGQgaGF2ZSBubyBvdGhlciBzdHlsZS48L2Rpdj4KKzxkaXYgc3R5bGU9ImNvbG9y
OiByZWQiPlBhc3M8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0SGllcmFyY2h5RXJyb3IuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMWFjNTFjMTQwMjMwZTg5ZTJiYmZlMGU2ZGE4YzJjNmVkYTlhYjM0OAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0
SGllcmFyY2h5RXJyb3IuaHRtCkBAIC0wLDAgKzEsNjAgQEAKK++7vzwhRE9DVFlQRSBodG1sIFBV
QkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iICJodHRwOi8vd3d3LnczLm9y
Zy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KKzwhLS0KKyBJbnRlcm5ldCBFeHBs
b3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogor
CisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
CisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUg
bmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4K
KyAgICAgICAgPHRpdGxlPkhJRVJBUkNIWV9SRVFVRVNUX0VSUiByYWlzZWQgaWYgQGltcG9ydCBy
dWxlIGluc2VydGVkIGFmdGVyIGEgcmVndWxhciBydWxlPC90aXRsZT4KKyAgICAgICAgPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KKyAgICAgICAgICAgIGJvZHkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBjb2xvcjogYmx1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRpdgor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7CisgICAgICAgICAgICB9
CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8ZGl2
PlRoaXMgdGV4dCBzaG91bGQgYmUgcmVkIGFuZCB0aGUgcGFnZSBzaG91bGQgaGF2ZSBubyBvdGhl
ciBzdHlsZS48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+RmFpbDwvZGl2Pgor
ICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB0cnkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5zdHlsZVNoZWV0c1swXS5p
bnNlcnRSdWxlKCJAaW1wb3J0IHVybChyZXNvdXJjZXMvdGVzdFN0eWxlMS5jc3MpOyIsIDEpOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBpZih3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5LCAiIiku
Z2V0UHJvcGVydHlWYWx1ZSgiYmFja2dyb3VuZC1jb2xvciIpID09ICJ0cmFuc3BhcmVudCIgJiYg
ZG9jdW1lbnQuc3R5bGVTaGVldHNbMF0uY3NzUnVsZXMubGVuZ3RoID09IDIpCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLWV4cGVj
dGVkLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlh
LWV4cGVjdGVkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNjJmYWIxMjk3MzkyNjlhY2MwNjc3NjBjZmU0MTY3
NjNhODIwMTFmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9zdHlsZS9pbnZhbGlkTWVkaWEtZXhwZWN0ZWQuaHRtCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+
Cis8Ym9keT4KKzxkaXY+VGhlIHBhZ2Ugc2hvdWxkIHJlbWFpbiB1bnN0eWxlZDwvZGl2PgorPGRp
dj5QYXNzPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2ludmFsaWRNZWRpYS5odG0gYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL3N0eWxlL2ludmFsaWRNZWRpYS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDcyODljZjFm
YWJkMjU0NzU5NjNlODA0YTlhMTE3ZWY4MzQ2MDZmOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLmh0bQpAQCAtMCwwICsx
LDQ3IEBACivvu788IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBT
dHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0
LmR0ZCI+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkg
MjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
CisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQg
bm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5
IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4K
KworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgor
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKy0tPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5AaW1wb3J0IGluc2lk
ZSBvZiBAbWVkaWE8L3RpdGxlPgorICAgICAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorICAg
ICAgICAgICAgQG1lZGlhIHNjcmVlbiB7IEBpbXBvcnQgdXJsKHJlc291cmNlcy90ZXN0U3R5bGUx
LmNzcyk7IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAg
ICAgCisgICAgPGRpdj5UaGUgcGFnZSBzaG91bGQgcmVtYWluIHVuc3R5bGVkPC9kaXY+CisgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+RmFpbDwvZGl2PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+ICAgIAorICAgICAgICAgICAgaWYgKGRvY3VtZW50LnN0eWxlU2hlZXRz
WzBdLmNzc1J1bGVzLmxlbmd0aCA9PSAxKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3Mi
OworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZl
Qm9yZGVyV2lkdGgtZXhwZWN0ZWQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9z
dHlsZS9uZWdhdGl2ZUJvcmRlcldpZHRoLWV4cGVjdGVkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZjFjMmQ1
NmU2NDEyZDFlN2Y0NGVhOWNmZmQ3MjZlZjdjM2NjNmMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9uZWdhdGl2ZUJvcmRlcldpZHRoLWV4cGVj
dGVkLmh0bQpAQCAtMCwwICsxLDYgQEAKKzxodG1sPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJib3Jk
ZXI6IHNvbGlkIGJsYWNrIDEwcHg7IGJvcmRlci10b3Atd2lkdGg6IC0xMHB4Ij5UaGlzIGRpdiBz
aG91bGQgaGF2ZSBhIDEwcHggYm9yZGVyPC9kaXY+Cis8ZGl2PlBhc3M8L2Rpdj4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUv
bmVnYXRpdmVCb3JkZXJXaWR0aC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0
eWxlL25lZ2F0aXZlQm9yZGVyV2lkdGguaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFhZTdlZmUyOTBhMmNiNWMy
NTFjOTI4MzFkN2MwMGU5MmY2MDFlOGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZlQm9yZGVyV2lkdGguaHRtCkBAIC0wLDAgKzEs
NDkgQEAKK++7vzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0
cmljdC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3Qu
ZHRkIj4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPk5lZ2F0aXZlIGJvcmRl
ciB3aWR0aCBwcm9wZXJ0eTwvdGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+
CisgICAgICAgICAgICAjdGVzdERpdgorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGJv
cmRlcjogc29saWQgYmxhY2sgMTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zdHlsZT4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxl
PSJib3JkZXItdG9wLXdpZHRoOiAtMTBweDsiPlRoaXMgZGl2IHNob3VsZCBoYXZlIGEgMTBweCBi
b3JkZXI8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+RmFpbDwvZGl2PgorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBpZihkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpLnN0eWxlLmJvcmRlclRvcFdpZHRoID09ICIi
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgfQorICAgICAg
ICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9yZXNv
dXJjZXMvdGVzdFN0eWxlMS5jc3MgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxl
L3Jlc291cmNlcy90ZXN0U3R5bGUxLmNzcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNTk2Njg2NWM5Y2VjMTlhZDM1
ZTU2YTdlYjFiOGRkOTkxMWZmZGVkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9zdHlsZS9yZXNvdXJjZXMvdGVzdFN0eWxlMS5jc3MKQEAgLTAsMCArMSBA
QAor77u/Ym9keSB7IGRpc3BsYXk6IGlubGluZTsgYmFja2dyb3VuZC1jb2xvcjogU2lsdmVyOyB9
IGRpdiB7IGF6aW11dGg6IGJlaGluZDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogTGltZTsg
Zm9udC1zaXplOiB4LXNtYWxsOyB9IApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2RldGFjaF9p
bnZhbGlkU3RhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90
cmF2ZXJzYWwvbmlfZGV0YWNoX2ludmFsaWRTdGF0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MjBiNWYzOTNiZGMyOGE5NTAzZmM3NDRhY2QxODEyYzMxNWRkNjViOQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2RldGFjaF9pbnZh
bGlkU3RhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyBp
ZiB0aGUgY29ycmVjdCBET01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gY2FsbGluZyBuZXh0Tm9k
ZSgpIG9yIHByZXZpb3VzTm9kZSgpIGFmdGVyIGRldGFjaCgpIGhhcyBiZWVuIGNhbGxlZCBvbiBh
IE5vZGVJdGVyYXRvci4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMg
YmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL25pX2RldGFjaF9pbnZhbGlkU3RhdGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNoX2ludmFsaWRTdGF0ZS5odG0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjA5MjQwMTNmY2RlYjM3Nzk2MTA3YWUzYjExYjg3ODIyNGRiOTAxNAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2RldGFjaF9p
bnZhbGlkU3RhdGUuaHRtCkBAIC0wLDAgKzEsOTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQor
IEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNh
dGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9y
YXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1s
PgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBOb2RlSXRlcmF0b3IgLSBj
YWxsaW5nIHByZXZpb3VzTm9kZSgpIGFuZCBuZXh0Tm9kZSgpIGFmdGVyIGNhbGxpbmcgZGV0YWNo
KCksIG11c3QgdGhyb3cgSU5WQUxJRF9TVEFURV9FUlIgRE9NRXhjZXB0aW9uIDwvdGl0bGU+Cisg
ICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0
aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IoZG9jdW1lbnQuYm9keSwg
Tm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICBp
dGVyLmRldGFjaCgpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAg
dHJ5CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXIu
bmV4dE5vZGUoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgY2F0Y2goZXgpCisg
ICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICghKGV4IGlu
c3RhbmNlb2YgRE9NRXhjZXB0aW9uKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoRE9NRXhjZXB0
aW9uLklOVkFMSURfU1RBVEVfRVJSICE9IGV4LmNvZGUpCisgICAgICAgICAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXIucHJldmlvdXNOb2RlKCk7CisgICAgICAg
ICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgICAgIGNhdGNoKGV4KQorICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIShleCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlv
bikpCisgICAgICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKERPTUV4Y2VwdGlvbi5JTlZBTElEX1NUQVRFX0VS
UiAhPSBleC5jb2RlKQorICAgICAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RD
aGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFp
bCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4gCisgICAgICAgIDxw
PlRoaXMgdGVzdCBjaGVja3MgaWYgdGhlIGNvcnJlY3QgRE9NRXhjZXB0aW9uIGlzIHRocm93biB3
aGVuIGNhbGxpbmcgbmV4dE5vZGUoKSBvciBwcmV2aW91c05vZGUoKSBhZnRlciBkZXRhY2goKSBo
YXMgYmVlbiBjYWxsZWQgb24gYSBOb2RlSXRlcmF0b3IuPC9wPgorICAgICAgICA8cD5UZXN0IHBh
c3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYg
aWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFuZFN2Zy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9odG1sQW5kU3ZnLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5kODY1ZGJkYjQzMTU2ZjRlYmYwNmI3NjgyMGQyYjhkMGZlNmExNzU0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlf
aHRtbEFuZFN2Zy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgdXNlcyBh
IE5vZGVJdGVyYXRvciB0byBpdGVyYXRlIHRocm91Z2ggYSBkb2N1bWVudCBjb250YWluaW5nIEhU
TUwgZWxlbWVudHMgYW5kIFNWRyBlbGVtZW50cy4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQg
IlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2h0bWxBbmRTdmcuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFuZFN2Zy5odG0KbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZWVlNjUzNDk0YTgxZDMxMjdiYThjYzc3NjU2MjZhNjI4NDQwY2IyMwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2h0bWxBbmRTdmcu
aHRtCkBAIC0wLDAgKzEsMTAyIEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQg
RXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3Ig
dGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1J
Q1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxo
ZWFkPiAgCisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IE5vZGVJdGVyYXRvciAtIGl0ZXJhdGUg
dGhyb3VnaCBhIGRvY3VtZW50IGNvbnRhaW5pbmcgSFRNTCBhbmQgU1ZHIDwvdGl0bGU+IAorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ICAgIAorICAgICAgICAgICAgdmFy
IHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9u
IGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAg
ICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZh
ciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3REaXYiKTsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOwor
ICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBzdmdSb290ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInN2Z1Jvb3QiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGcxID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImcxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciByMSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdDEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidDEiKTsKKyAgICAgICAgICAgICAgICAgICAgCisg
ICAgICAgICAgICAgICAgICAgIHZhciBpdGVyID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9y
KHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCBudWxsLCBmYWxzZSk7CisgICAgICAg
ICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9k
ZSgpLCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5v
ZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2Rl
KCksIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgp
LCBzdmdSb290KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUo
KSwgZzEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBy
MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHQxKTsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgbnVsbCk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCB0MSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCByMSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBnMSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBzdmdSb290
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIGRp
djIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwg
ZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgp
LCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNO
b2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0
ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgp
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4g
CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHVz
ZXMgYSBOb2RlSXRlcmF0b3IgdG8gaXRlcmF0ZSB0aHJvdWdoIGEgZG9jdW1lbnQgY29udGFpbmlu
ZyBIVE1MIGVsZW1lbnRzIGFuZCBTVkcgZWxlbWVudHMuPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0
ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2
MSI+IAorICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmFhYTwvZGl2PiAKKyAgICAgICAg
ICAgIDwvZGl2PiAKKyAgICAgICAgICAgIDxzdmcgdmVyc2lvbj0iMS4xIiBiYXNlUHJvZmlsZT0i
ZnVsbCIgaWQ9InN2Z1Jvb3QiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAg
MCA0ODAgMzYwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5r
PSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gCisgICAgICAgICAgICAgICAgPGcgaWQ9
ImcxIj4gCisgICAgICAgICAgICAgICAgICAgIDxyZWN0IGlkPSJyMSIgd2lkdGg9IjEwMCIgaGVp
Z2h0PSIxMDAiIHg9IjAiIHk9IjAiIGZpbGw9ImJsdWUiIC8+IAorICAgICAgICAgICAgICAgIDwv
Zz4KKyAgICAgICAgICAgICAgICA8dGV4dCBpZD0idDEiIHg9IjEwMCIgeT0iMTAwIiBmb250LXNp
emU9IjUwIj5hYWFhYTwvdGV4dD4gCisgICAgICAgICAgICA8L3N2Zz4gCisgICAgICAgIDwvZGl2
PiAKKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVs
b3cuPC9wPiAKKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAg
IDwvYm9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZp
b3VzTm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MDEw
MDE0NDViOTFiZGMyMGVhZWFmOGYzZmQ5NGZhOWRlNzE5YjVmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3Vz
Tm9kZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBO
b2RlSXRlcmF0b3IncyBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSBtZXRob2RzLgorCitU
ZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFu
ZFByZXZpb3VzTm9kZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNh
bC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTU1ZmNjNmM5ZjBiYzVj
OGJjNDVhZDE3MTE5ZjZkYzViZWY3ZjE2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3VzTm9kZS5odG0KQEAg
LTAsMCArMSw4NCBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVy
IFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
CisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQg
Q09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAor
ICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBOb2RlSXRlcmF0b3IgLSBuZXh0Tm9kZSgpIGFuZCBw
cmV2aW91c05vZGUoKSA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAg
ICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZCkK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFp
bCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAg
ICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBpdGVy
ID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19B
TEwsIG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgdGVzdERpdik7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHRlc3REaXYuZmlyc3RDaGlsZCk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIGRpdjEpOworICAg
ICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBkaXYxLmZpcnN0Q2hp
bGQpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCB0ZXN0
RGl2LmNoaWxkTm9kZXNbMl0pOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5u
ZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJl
dmlvdXNOb2RlKCksIHRlc3REaXYuY2hpbGROb2Rlc1syXSk7CisgICAgICAgICAgICAgICAgICAg
IGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBkaXYxLmZpcnN0Q2hpbGQpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwgZGl2MSk7CisgICAg
ICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCB0ZXN0RGl2LmZp
cnN0Q2hpbGQpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05v
ZGUoKSwgdGVzdERpdik7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9
IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChl
eCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFk
PiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPiAKKyAgICAgICAgPHA+VGhpcyB0ZXN0
IGNoZWNrcyB0aGUgTm9kZUl0ZXJhdG9yJ3MgbmV4dE5vZGUoKSBhbmQgcHJldmlvdXNOb2RlKCkg
bWV0aG9kcy48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5v
bmU7Ij4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPmFhYWFhYWE8L2Rpdj4KKyAgICAgICAg
PC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJz
IGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4K
KyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX25leHRBbmRQ
cmV2aW91c05vZGVfbm9kZUZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXItZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUyMWQ2YThhN2I1YzhmYjMzMzE2ODZmMWNhZTA0YjkxYmE0
ZjNhYjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgTm9kZUl0ZXJhdG9yJ3MgbmV4dE5v
ZGUoKSBhbmQgcHJldmlvdXNOb2RlKCkgbWV0aG9kcyB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFj
ay4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25p
X25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXIuaHRt
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNkNGI3NDlhNjMwMjI4ZjU0OTU3MmQ5YzI0YTQ4NGUxMDI0NmU2YjgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9u
aV9uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXIuaHRtCkBAIC0wLDAgKzEsOTMgQEAKKzwh
RE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHly
aWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
CisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1
dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJt
aXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9S
QVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Cisg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlk
PSdkZXNjJz4gTm9kZUl0ZXJhdG9yIC0gbmV4dE5vZGUoKSBhbmQgcHJldmlvdXNOb2RlKCkgd2l0
aCBhIE5vZGVGaWx0ZXIgPC90aXRsZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4gICAgCisgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAg
ICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQp
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFp
bCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAg
ICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgaWYgKCJkaXYiID09IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRF
Ul9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRF
Ul9TS0lQOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAor
ICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0U3BhbiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0U3BhbiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgICAgIHZhciBpdGVyID0gZG9jdW1lbnQuY3JlYXRlTm9k
ZUl0ZXJhdG9yKHRlc3RTcGFuLCBOb2RlRmlsdGVyLlNIT1dfQUxMLCBhY2NlcHROb2RlLCBmYWxz
ZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
aXRlci5uZXh0Tm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0
ZXIubmV4dE5vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVy
Lm5leHROb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5w
cmV2aW91c05vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVy
LnByZXZpb3VzTm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0
ZXIucHJldmlvdXNOb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENo
aWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+
VGhpcyB0ZXN0IGNoZWNrcyB0aGUgTm9kZUl0ZXJhdG9yJ3MgbmV4dE5vZGUoKSBhbmQgcHJldmlv
dXNOb2RlKCkgbWV0aG9kcyB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay48L3A+CisgICAgICAg
IDxzcGFuIGlkPSJ0ZXN0U3BhbiIgIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAg
IDxkaXYgaWQ9ImRpdjEiPmFhYWFhYWE8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIi
PmJiYmJiYjwvZGl2PgorICAgICAgICA8L3NwYW4+IAorICAgICAgICA8cD5UZXN0IHBhc3NlcyBp
ZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+IAorICAgICAgICA8ZGl2IGlkPSd0
ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL3RyYXZlcnNhbC9uaV9yZW1vdmVSZWZlcmVuY2VOb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhNWQwNGYwY2QzYzNmMjlmMTlhOGYyYjM1NzExYTEx
OThlMDdmYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC9uaV9yZW1vdmVSZWZlcmVuY2VOb2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDUgQEAKK1RoaXMgdGVzdCByZW1vdmVzIHRoZSBOb2RlSXRlcnRvcidzIGN1cnJlbnQgcmVmZXJl
bmNlIG5vZGUsIHRoZW4gY29udGludWVzIHRvIG1vdmUgdGhyb3VnaCB0aGUgZG9jdW1lbnQuCisK
K1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9yZW1v
dmVSZWZlcmVuY2VOb2RlLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0MmRkYThjMDRkZjhi
NGU1NzM1ODE3NmE4YzA1NGFlM2EwMTU4MDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9yZW1vdmVSZWZlcmVuY2VOb2RlLmh0bQpA
QCAtMCwwICsxLDgyIEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gTm9kZUl0ZXJhdG9yIC0gcmVtb3ZlIGN1cnJlbnQgcmVm
ZXJlbmNlIG5vZGUgPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAK
KyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAg
ZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBpdGVy
ID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19F
TEVNRU5ULCBudWxsLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCB0ZXN0RGl2KTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIGRpdjIpOworICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIGRpdjIpOworICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAg
ICAgICAgIHRlc3REaXYucmVtb3ZlQ2hpbGQoZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNo
ZWNrTm9kZShpdGVyLm5leHROb2RlKCksIGRpdjIpOworICAgICAgICAgICAgICAgICAgICAKKyAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5m
aXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9
ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorCQk8cD5U
aGlzIHRlc3QgcmVtb3ZlcyB0aGUgTm9kZUl0ZXJ0b3IncyBjdXJyZW50IHJlZmVyZW5jZSBub2Rl
LCB0aGVuIGNvbnRpbnVlcyB0byBtb3ZlIHRocm91Z2ggdGhlIGRvY3VtZW50LjwvcD4KKyAgICAg
ICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAg
PGRpdiBpZD0iZGl2MSI+YWFhPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIj5iYmI8
L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3Jk
ICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+
UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNh
bC9uaV90d19ub3RzdXBwb3J0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvbmlfdHdfbm90c3VwcG9ydGVkLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mYTk5ZjM1MjEyY2ZhOWFkN2NhZDU0ZDhjZDE4NzM0OThhM2YzNGNkCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfdHdfbm90
c3VwcG9ydGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3Mg
aWYgdGhlIGNvcnJlY3QgRE9NRXhjZXB0aW9uIGlzIHRocm93biB3aGVuIHRoZSBzY3JpcHQgYXR0
ZW1wdHMgdG8gY3JlYXRlIGEgTm9kZUl0ZXJhdG9yIG9yIFRyZWVXYWxrZXIgd2l0aCAnbnVsbCcg
YXMgdGhlIHJvb3Qgbm9kZS4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVh
cnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX3R3X25vdHN1cHBvcnRlZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0ZWQuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQw
ZGI1ZTkyYzYyZTVlYjg4ZmU5YjYzYmYyZWJkMDBlOTMwMjQ1YjIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0
ZWQuaHRtCkBAIC0wLDAgKzEsOTAgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5l
dCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUg
bWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgor
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5v
ciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAg
PGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlci9Ob2RlSXRlcmF0
b3IgLSBhdHRlbXB0IHRvIGNyZWF0ZSBlYWNoIHdpdGggJ251bGwnIGFzIHRoZSByb290IG5vZGUs
IG11c3QgdGhyb3cgTk9UX1NVUFBPUlRFRF9FUlIgRE9NRXhjZXB0aW9uIDwvdGl0bGU+IAorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAg
IAorICAgICAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICAgICAgdmFyIGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3Io
bnVsbCwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwgZmFsc2UpOworICAgICAgICAgICAgICAg
ICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBjYXRjaChleCkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICAgICAgaWYgKCEoZXggaW5zdGFuY2VvZiBET01FeGNlcHRpb24pKQorICAg
ICAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RS
ZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgICAgICBlbHNlIGlmIChET01FeGNlcHRpb24uTk9UX1NVUFBPUlRFRF9FUlIgIT0gZXgu
Y29kZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAg
ICAgICB0cnkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAg
dmFyIHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihudWxsLCBOb2RlRmlsdGVyLlNIT1df
RUxFTUVOVCwgbnVsbCwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3Vs
dCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBj
YXRjaChleCkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAg
aWYgKCEoZXggaW5zdGFuY2VvZiBET01FeGNlcHRpb24pKQorICAgICAgICAgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlm
IChET01FeGNlcHRpb24uTk9UX1NVUFBPUlRFRF9FUlIgIT0gZXguY29kZSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0g
IkZhaWwiOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9u
bG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgaWYgdGhlIGNv
cnJlY3QgRE9NRXhjZXB0aW9uIGlzIHRocm93biB3aGVuIHRoZSBzY3JpcHQgYXR0ZW1wdHMgdG8g
Y3JlYXRlIGEgTm9kZUl0ZXJhdG9yIG9yIFRyZWVXYWxrZXIgd2l0aCAnbnVsbCcgYXMgdGhlIHJv
b3Qgbm9kZS48L3A+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBh
cHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19jdXJy
ZW50Tm9kZV9ub3RTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvdHdfY3VycmVudE5vZGVfbm90U3VwcG9ydGVkLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5lOTBiY2RkZTkyOGU3ZWViZGIxZDRiMDBmYWNkMzRkYzdjOGU5MDllCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfY3VycmVudE5vZGVfbm90U3VwcG9ydGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAK
K1RoaXMgdGVzdCBjaGVja3MgaWYgdGhlIGNvcnJlY3QgRE9NRXhjZXB0aW9uIGlzIHRocm93biB3
aGVuIGF0dGVtcHRpbmcgdG8gc2V0IHRoZSBUcmVlV2Fsa2VyJ3MgY3VycmVudE5vZGUgdG8gJ251
bGwnCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQ
YXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19jdXJyZW50Tm9kZV9ub3RTdXBwb3J0ZWQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfY3VycmVudE5vZGVfbm90U3VwcG9ydGVkLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NGEwZDM5M2VmMzM4ZWRlY2FkM2Q4Mzg2YjU3Y2I4ODE1ZmEyNjJlCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfY3VycmVudE5v
ZGVfbm90U3VwcG9ydGVkLmh0bQpAQCAtMCwwICsxLDc0IEBACis8IURPQ1RZUEUgaHRtbD4KKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAt
IHNldCB0aGUgY3VycmVudE5vZGUgdG8gbnVsbCwgd2hpY2ggbXVzdCB0aHJvdyBhIE5PVF9TVVBQ
T1JURURfRVJSIERPTUV4Y2VwdGlvbiA8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3RS
ZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3VtZW50LmNy
ZWF0ZVRyZWVXYWxrZXIoZG9jdW1lbnQuYm9keSwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIG51
bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIHRy
eQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICB0dy5jdXJy
ZW50Tm9kZSA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGNhdGNoKGV4
KQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIShl
eCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbikpCisgICAgICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKERPTUV4
Y2VwdGlvbi5OT1RfU1VQUE9SVEVEX0VSUiAhPSBleC5jb2RlKQorICAgICAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7
CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJS
dW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyBpZiB0aGUgY29ycmVjdCBE
T01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gYXR0ZW1wdGluZyB0byBzZXQgdGhlIFRyZWVXYWxr
ZXIncyBjdXJyZW50Tm9kZSB0byAnbnVsbCc8L3A+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlm
IHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVz
dHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19maXJzdENoaWxkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmJlNzVkMmFmYzdmYWUxMzU3MTAyYjQ2MjMwMDQ5YjBjZTI5MWVmNzQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENo
aWxkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRy
ZWVXYWxrZXIncyBmaXJzdENoaWxkKCkgbWV0aG9kLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29y
ZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZC5odG0gYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENoaWxkLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zODE4MGJmMDdlMGI1OTIzYTZhZjRmNGEwYWQ1YmVhZTg3NTAxNTVmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGls
ZC5odG0KQEAgLTAsMCArMSw3OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQg
RXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3Ig
dGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1J
Q1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAgPGhl
YWQ+CisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBmaXJzdENoaWxkKCkg
PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAg
ICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gUnVu
VGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3REaXYiKTsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVUcmVl
V2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCBudWxsLCBmYWxzZSk7Cisg
ICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuZmly
c3RDaGlsZCgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJl
bnROb2RlLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmZpcnN0Q2hp
bGQoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5jdXJyZW50Tm9k
ZSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RS
ZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tz
IHRoZSBUcmVlV2Fsa2VyJ3MgZmlyc3RDaGlsZCgpIG1ldGhvZC48L3A+CisgICAgICAgIDxkaXYg
aWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxkaXYgaWQ9
ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdj5iYmI8L2Rpdj4KKyAgICAgICAgICAg
IDxkaXYgaWQ9ImRpdjIiPmNjYzwvZGl2PgorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRl
c3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAg
PGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZF9ub2RlRmlsdGVyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hp
bGRfbm9kZUZpbHRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGM0N2Q2MDMyM2ZhNzc3Y2U1
YzVlZTk5MGMxOTc1ZTljZmEwYWYyMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGRfbm9kZUZpbHRlci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3Mg
Zmlyc3RDaGlsZCgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay4KKworVGVzdCBw
YXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGRf
bm9kZUZpbHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19maXJzdENoaWxkX25vZGVGaWx0ZXIuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEwYjk3YzMxMGJkZGYwMmQ4
Y2FhNzE5YzA4MDA5MTE3NmFjZDk1MjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENoaWxkX25vZGVGaWx0ZXIuaHRtCkBA
IC0wLDAgKzEsOTIgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAK
KyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIGZpcnN0Q2hpbGQoKSB3aXRo
IGEgTm9kZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAg
ICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBpZiAoInNwYW4iID09IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRF
Ul9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRF
Ul9TS0lQOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAor
ICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHNwYW4xID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW4xIik7CisgICAgICAgICAgICAgICAgICAgIHZh
ciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9X
X0FMTCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmZpcnN0Q2hpbGQoKSwgc3BhbjEpOworICAgICAgICAg
ICAgICAgICAgICBjaGVja05vZGUodHcuZmlyc3RDaGlsZCgpLCBudWxsKTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCBzcGFuMSk7CisgICAgICAgICAgICAg
ICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RD
aGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAg
ICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3Qo
KTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgZmlyc3RD
aGlsZCgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay48L3A+CisgICAgICAgIDxk
aXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8ZGl2
PiAKKyAgICAgICAgICAgICAgICA8c3BhbiBpZD0ic3BhbjEiPiAKKyAgICAgICAgICAgICAgICAg
ICAgPGRpdj5hYWE8L2Rpdj4gCisgICAgICAgICAgICAgICAgPC9zcGFuPiAKKyAgICAgICAgICAg
IDwvZGl2PiAKKyAgICAgICAgICAgIDxkaXY+YmJiPC9kaXY+IAorICAgICAgICA8L2Rpdj4gCisg
ICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93Ljwv
cD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2Jv
ZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2h0bWxBbmRTdmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfaHRtbEFu
ZFN2Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDIxYWI4ZTFmYTUxNGM5MGFkY2YwZTg2ZDNh
MDNiMzljOGQ1MDRmNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL3R3X2h0bWxBbmRTdmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBA
QAorVGhpcyB0ZXN0IHVzZXMgYSBUcmVlV2Fsa2VyIHRvIGl0ZXJhdGUgdGhyb3VnaCBhIGRvY3Vt
ZW50IGNvbnRhaW5pbmcgSFRNTCBlbGVtZW50cyBhbmQgU1ZHIGVsZW1lbnRzLgorCitUZXN0IHBh
c3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfaHRtbEFuZFN2Zy5o
dG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19odG1sQW5kU3Zn
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iMjgzM2U0ODliMGZmOTk4Y2I2OGU4YTQ3YzU3ZDJmMmU5MTYxZjJh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfaHRtbEFuZFN2Zy5odG0KQEAgLTAsMCArMSwxMDAgQEAKKzwhRE9DVFlQRSBodG1sPiAK
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdh
bGtlciAtIGl0ZXJhdGUgdGhyb3VnaCBhIGRvY3VtZW50IGNvbnRhaW5pbmcgSFRNTCBhbmQgU1ZH
IDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ICAgIAor
ICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RE
aXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBzdmdSb290ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN2Z1Jvb3QiKTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGcxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImcxIik7CisgICAgICAgICAgICAgICAg
ICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMSIpOworICAgICAgICAgICAg
ICAgICAgICB2YXIgdDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidDEiKTsKKyAgICAgICAg
ICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3VtZW50LmNyZWF0
ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIG51bGwsIGZhbHNl
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0
dy5uZXh0Tm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5l
eHROb2RlKCksIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dE5v
ZGUoKSwgc3ZnUm9vdCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9k
ZSgpLCBnMSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBy
MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCB0MSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAg
ICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCByMSk7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZzEpOworICAgICAgICAg
ICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIHN2Z1Jvb3QpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjIpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjEpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIHRlc3REaXYpOworICAg
ICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIG51bGwpOworICAg
ICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3Vs
dCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2Fk
PSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHVzZXMgYSBUcmVlV2Fsa2VyIHRv
IGl0ZXJhdGUgdGhyb3VnaCBhIGRvY3VtZW50IGNvbnRhaW5pbmcgSFRNTCBlbGVtZW50cyBhbmQg
U1ZHIGVsZW1lbnRzLjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3Bs
YXk6bm9uZTsiPiAKKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPiAKKyAgICAgICAgICAgICAg
ICA8ZGl2IGlkPSJkaXYyIj5hYWE8L2Rpdj4gCisgICAgICAgICAgICA8L2Rpdj4gCisgICAgICAg
ICAgICA8c3ZnIHZlcnNpb249IjEuMSIgYmFzZVByb2ZpbGU9ImZ1bGwiIGlkPSJzdmdSb290IiB3
aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgNDgwIDM2MCIgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcv
MTk5OS94bGluayI+IAorICAgICAgICAgICAgICAgIDxnIGlkPSJnMSI+IAorICAgICAgICAgICAg
ICAgICAgICA8cmVjdCBpZD0icjEiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB4PSIwIiB5PSIw
IiBmaWxsPSJibHVlIiAvPiAKKyAgICAgICAgICAgICAgICA8L2c+IAorICAgICAgICAgICAgICAg
IDx0ZXh0IGlkPSJ0MSIgeD0iMTAwIiB5PSIxMDAiIGZvbnQtc2l6ZT0iNTAiPmFhYWFhPC90ZXh0
PiAKKyAgICAgICAgICAgIDwvc3ZnPiAKKyAgICAgICAgPC9kaXY+IAorICAgICAgICA8cD5UZXN0
IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+IAorICAgICAgICA8
ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5hOTFiNzVmMjE0NDFjNDRlOTM3MDQwZmRiYmE4NjZmOWIzOTFiZjJiCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfbGFzdENoaWxkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVj
a3MgdGhlIFRyZWVXYWxrZXIncyBsYXN0Q2hpbGQoKSBtZXRob2QuCisKK1Rlc3QgcGFzc2VzIGlm
IHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGQuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mMWM5OWM4YzdkNTIyNDAxOThlZDNjZjUwMDIxODljZmRhYjQ3ZTI5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFz
dENoaWxkLmh0bQpAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAor
ICAgIDxoZWFkPiAgCisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBsYXN0
Q2hpbGQoKSA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1l
bnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgbnVs
bCwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hl
Y2tOb2RlKHR3Lmxhc3RDaGlsZCgpLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tO
b2RlKHR3LmN1cnJlbnROb2RlLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2Rl
KHR3Lmxhc3RDaGlsZCgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3
LmN1cnJlbnROb2RlLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5k
YXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0
Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMg
dGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBsYXN0Q2hpbGQoKSBtZXRob2QuPC9wPgorICAg
ICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAgICAg
ICA8ZGl2IGlkPSJkaXYxIj5hYWE8L2Rpdj4KKyAgICAgICAgICAgIDxkaXY+YmJiPC9kaXY+Cisg
ICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIj5jY2M8L2Rpdj4KKyAgICAgICAgPC9kaXY+IAorICAg
ICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+
IAorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5
PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGRfbm9kZUZpbHRl
ci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19sYXN0Q2hpbGRfbm9kZUZpbHRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWY1MDU3YzNj
MzIwNzBjOWZhZWE2ZTgxMjM0MGE1NDFmZDFiOTdlNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZF9ub2RlRmlsdGVy
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVX
YWxrZXIncyBsYXN0Q2hpbGQoKSBtZXRob2Qgd2l0aCBhIE5vZGVGaWx0ZXIgY2FsbGJhY2suCisK
K1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0
Q2hpbGRfbm9kZUZpbHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC90d19sYXN0Q2hpbGRfbm9kZUZpbHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDEwZmE1NWYzNTlh
Mzg1NGI5YTg2YWQzMjFhM2UzMTdjOGJlYzc4MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZF9ub2RlRmlsdGVyLmh0
bQpAQCAtMCwwICsxLDkyIEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQgRXhw
bG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24u
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoK
KworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhl
IG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JP
U09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxoZWFk
PiAgCisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBsYXN0Q2hpbGQoKSB3
aXRoIGEgTm9kZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAg
ICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3Rl
ZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVk
KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBpZiAoInNwYW4iID09IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJ
TFRFUl9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJ
TFRFUl9TS0lQOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IAorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHNwYW4x
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW4xIik7CisgICAgICAgICAgICAgICAgICAg
IHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5T
SE9XX0FMTCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAg
ICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lmxhc3RDaGlsZCgpLCBzcGFuMSk7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5sYXN0Q2hpbGQoKSwgbnVsbCk7CisgICAgICAgICAg
ICAgICAgICAgIGNoZWNrTm9kZSh0dy5jdXJyZW50Tm9kZSwgc3BhbjEpOworICAgICAgICAgICAg
ICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0
Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0
KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIGxhc3RD
aGlsZCgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay48L3A+CisgICAgICAgIDxk
aXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8ZGl2
PmFhYTwvZGl2PiAKKyAgICAgICAgICAgIDxkaXY+IAorICAgICAgICAgICAgICAgIDxzcGFuIGlk
PSJzcGFuMSI+IAorICAgICAgICAgICAgICAgICAgICA8ZGl2PmJiYjwvZGl2PiAKKyAgICAgICAg
ICAgICAgICA8L3NwYW4+IAorICAgICAgICAgICAgPC9kaXY+IAorICAgICAgICA8L2Rpdj4gCisg
ICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93Ljwv
cD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2Jv
ZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05v
ZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfbmV4dEFuZFByZXZpb3VzTm9kZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2U2MTYyNDMw
NDc4MmU0ZDg4YjljYjAxY2JhMTVlZjcyYjJjNzAyMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05vZGUt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdh
bGtlcidzIG5leHROb2RlKCkgYW5kIHByZXZpb3VzTm9kZSgpIG1ldGhvZHMuCisKK1Rlc3QgcGFz
c2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0QW5kUHJldmlv
dXNOb2RlLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25l
eHRBbmRQcmV2aW91c05vZGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZDdkYTY4N2Q2NjllNGIzZGMxYjVm
YmMwMTNmM2Y3NGExY2ZkMjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0QW5kUHJldmlvdXNOb2RlLmh0bQpAQCAtMCwwICsx
LDg0IEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxoZWFkPiAgCisgICAgICAg
IDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05v
ZGUoKSA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAg
ICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisg
ICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1
bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1lbnQu
Y3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfQUxMLCBudWxsLCBmYWxz
ZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
dHcucHJldmlvdXNOb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
dHcuY3VycmVudE5vZGUsIHRlc3REaXYpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
dHcubmV4dE5vZGUoKSwgdGVzdERpdi5maXJzdENoaWxkKTsKKyAgICAgICAgICAgICAgICAgICAg
Y2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUodHcubmV4dE5vZGUoKSwgZGl2MS5maXJzdENoaWxkKTsKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIHRlc3REaXYuY2hpbGROb2Rlc1syXSk7CisgICAg
ICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCB0ZXN0RGl2LmNoaWxkTm9kZXNb
Ml0pOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRp
djEuZmlyc3RDaGlsZCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91
c05vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91
c05vZGUoKSwgdGVzdERpdi5maXJzdENoaWxkKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tO
b2RlKHR3LnByZXZpb3VzTm9kZSgpLCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgCisg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
Zmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAg
ICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBuZXh0Tm9kZSgpIGFuZCBw
cmV2aW91c05vZGUoKSBtZXRob2RzLjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5
bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+YWFhPC9kaXY+
CisgICAgICAgIDwvZGl2PgorICAgICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFz
cyIgYXBwZWFycyBiZWxvdy48L3A+IAorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5u
aW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2Rl
RmlsdGVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYTU1ZGNkYzZlNDgxYjcxZGI4YTExNzBm
Njg3NDFmNzc2MzhlYTllCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIn
cyBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSBtZXRob2RzIHdpdGggYSBOb2RlRmlsdGVy
IGNhbGxiYWNrLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxv
dy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2
ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bSBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZp
bHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTBkOWQzZDQ5MWQ1ZmFmNjIwZmFhZGRkOGYwMDA3OTk3Y2U3
NTZkOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJh
dmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci5odG0KQEAgLTAsMCArMSw5
OCBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFn
ZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRo
ZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMg
Y29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0
dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09G
VCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJ
T04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAorICAgICAgICA8
dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gbmV4dE5vZGUoKSBhbmQgcHJldmlvdXNOb2Rl
KCkgd2l0aCBhIE5vZGVGaWx0ZXIgPC90aXRsZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4gICAgCisgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsK
KyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhw
ZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBl
Y3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgaWYgKCJkaXYiID09IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVy
LkZJTFRFUl9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVy
LkZJTFRFUl9TS0lQOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0U3BhbiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0U3BhbiIpOworICAgICAgICAgICAgICAgICAgICB2YXIg
ZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAg
ICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0U3Bhbiwg
Tm9kZUZpbHRlci5TSE9XX0FMTCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBu
dWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCB0ZXN0
U3Bhbik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBkaXYx
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIGRpdjIpOwor
ICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dE5vZGUoKSwgbnVsbCk7CisgICAg
ICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5jdXJyZW50Tm9kZSwgZGl2Mik7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2MSk7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgbnVsbCk7CisgICAgICAg
ICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
Zmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBu
ZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSBtZXRob2RzIHdpdGggYSBOb2RlRmlsdGVyIGNh
bGxiYWNrLjwvcD4KKyAgICAgICAgPHNwYW4gaWQ9InRlc3RTcGFuIiBzdHlsZT0iZGlzcGxheTpu
b25lOyI+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYxIj4KKyAgICAgICAgICAgICAgICA8c3Bh
bj5hYWE8L3NwYW4+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRp
djIiPgorICAgICAgICAgICAgICAgIDxzcGFuPmJiYjwvc3Bhbj4KKyAgICAgICAgICAgIDwvZGl2
PgorICAgICAgICA8L3NwYW4+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQ
YXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1
bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L3R3X25leHRTaWJsaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZWY5
M2E4NjliMGZlM2ZmNmUxMzA4MjAxMTJjYmVkMDQ0YmM3YmMzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmctZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtl
cidzIG5leHRTaWJsaW5nIG1ldGhvZC4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3Mi
IGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nLmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nLmh0bQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOTcw
MjJkMmNkN2QxZWIzZDQ1ODIyZTA3YzBmODNiMWI4NGE3Zjk2Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmcuaHRt
CkBAIC0wLDAgKzEsODYgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBs
b3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0Ogor
CisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
CisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUg
bmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+
ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIG5leHRTaWJsaW5nKCkg
PC90aXRsZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gICAgCisg
ICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERp
diIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MyIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcg
PSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEws
IG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAg
IHR3LmZpcnN0Q2hpbGQoKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIGNoZWNrTm9kZSh0dy5uZXh0U2libGluZygpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIHRlc3REaXYuY2hpbGROb2Rlc1syXSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0U2libGluZygpLCBkaXYyKTsKKyAg
ICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIHRlc3REaXYuY2hp
bGROb2Rlc1s0XSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0U2libGlu
ZygpLCBkaXYzKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5n
KCksIHRlc3REaXYuY2hpbGROb2Rlc1s2XSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9k
ZSh0dy5uZXh0U2libGluZygpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2Rl
KHR3LmN1cnJlbnROb2RlLCB0ZXN0RGl2LmNoaWxkTm9kZXNbNl0pOworICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hp
bGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7
Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHRTaWJs
aW5nIG1ldGhvZC48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5
Om5vbmU7Ij4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAg
ICAgPGRpdiBpZD0iZGl2MiI+YmJiPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYzIj5j
Y2M8L2Rpdj4KKyAgICAgICAgPC9kaXY+IAorICAgICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUg
d29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+IAorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVz
dWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19uZXh0U2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nX25vZGVGaWx0ZXIt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk4NDA0YjUzNWZhZTQyODJhOWVmNzdkZmFjZTZhOTQw
NmZjYjRkZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19uZXh0U2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBuZXh0U2libGluZygp
IG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay4KKworVGVzdCBwYXNzZXMgaWYgdGhl
IHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nX25vZGVGaWx0ZXIu
aHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxp
bmdfbm9kZUZpbHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzVjNWNjYTE5NTc4N2UwOGE0NmFkNTJhMzFl
ZDBiZTNkMzY2NjMyMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL3R3X25leHRTaWJsaW5nX25vZGVGaWx0ZXIuaHRtCkBAIC0wLDAgKzEs
OTYgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBh
Z2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRz
IGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3Jp
dHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NP
RlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAgICAgICAg
PHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIG5leHRTaWJsaW5nKCkgd2l0aCBhIE5vZGVG
aWx0ZXIgPC90aXRsZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4g
ICAgCisgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAor
ICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBm
dW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aWYgKCJkaXYiID09IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQ7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9TS0lQOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBk
aXYzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjMiKTsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVy
LlNIT1dfQUxMLCBhY2NlcHROb2RlLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAg
ICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuZmlyc3RDaGlsZCgpLCBkaXYxKTsKKyAgICAg
ICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIGRpdjIpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dFNpYmxpbmcoKSwgZGl2Myk7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0U2libGluZygpLCBudWxsKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCBkaXYzKTsKKyAgICAgICAgICAg
ICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJz
dENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQor
ICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVz
dCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBuZXh0
U2libGluZygpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay48L3A+CisgICAgICAg
IDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8
c3Bhbj5hYWE8L3NwYW4+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+YmJiPC9kaXY+IAor
ICAgICAgICAgICAgPHNwYW4+Y2NjPC9zcGFuPiAKKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIi
PmRkZDwvZGl2PiAKKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPmVlZTwvZGl2PiAKKyAgICAg
ICAgICAgIDxzcGFuPmZmZjwvc3Bhbj4gCisgICAgICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVz
dCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPiAKKyAgICAgICAg
PGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9kZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNzMwOTBmMGYyOWJmNzhkMTBkMGU1NjdlZmQ3MDhiMWM1YjcxM2Vj
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfcGFyZW50Tm9kZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3Qg
Y2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgcGFyZW50Tm9kZSgpIG1ldGhvZC4KKworVGVzdCBwYXNz
ZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3BhcmVudE5vZGUuaHRt
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9kZS5o
dG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2ViMGJlNjE0MTcxOWMzMDFkYzllOWE4MmE0MzZjZjAyMWNiMDNlYQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L3R3X3BhcmVudE5vZGUuaHRtCkBAIC0wLDAgKzEsNzkgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtl
ciAtIHBhcmVudE5vZGUoKSA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAg
ICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3Rl
ZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVk
KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3
ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfQUxM
LCBudWxsLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAg
ICBjaGVja05vZGUodHcucGFyZW50Tm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAg
dHcuY3VycmVudE5vZGUgPSBkaXYxLmZpcnN0Q2hpbGQ7CisgICAgICAgICAgICAgICAgICAgIGNo
ZWNrTm9kZSh0dy5wYXJlbnROb2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUodHcucGFyZW50Tm9kZSgpLCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgY2hl
Y2tOb2RlKHR3LnBhcmVudE5vZGUoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZp
cnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0g
IkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAg
ICA8cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgcGFyZW50Tm9kZSgpIG1ldGhv
ZC48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4K
KyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdj5i
YmI8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmNjYzwvZGl2PgorICAgICAgICA8
L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJz
IGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4K
KyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3BhcmVudE5v
ZGVfbm9kZUZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjE1ZWYzNDRmZWMwNjBiNzgwZDNjM2FiZTdlOWFlNGVlZDU5ZjBlYWEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnRO
b2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNo
ZWNrcyB0aGUgVHJlZVdhbGtlcidzIHBhcmVudE5vZGUoKSBtZXRob2Qgd2l0aCBhIE5vZGVGaWx0
ZXIgY2FsbGJhY2suCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJl
bG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVGaWx0ZXIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9kZV9ub2RlRmlsdGVyLmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi44MDQzYjFkNDVjNDc0MjZkOWFiZDc1NGYwYzY3Mzk1NTY5NDYzMDY3Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50
Tm9kZV9ub2RlRmlsdGVyLmh0bQpAQCAtMCwwICsxLDk1IEBACis8IURPQ1RZUEUgaHRtbD4gCis8
IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNy
b3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9k
aWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
CisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgor
PGh0bWw+IAorICAgIDxoZWFkPiAgCisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxr
ZXIgLSBwYXJlbnROb2RlKCkgd2l0aCBhIE5vZGVGaWx0ZXIgPC90aXRsZT4gCisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gICAgCisgICAgICAgICAgICB2YXIgdGVzdFJl
c3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tO
b2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCJzcGFuIiA9PSBub2RlLm5vZGVOYW1l
LnRvTG93ZXJDYXNlKCkpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfU0tJUDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIg
dGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7CisgICAgICAgICAg
ICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAg
ICAgICAgICAgICAgICAgICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fs
a2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAg
ICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wYXJl
bnROb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICB0dy5jdXJyZW50Tm9kZSA9IGRp
djIuZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBhcmVudE5v
ZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wYXJlbnROb2Rl
KCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucGFyZW50Tm9kZSgp
LCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBhcmVudE5vZGUo
KSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RS
ZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tz
IHRoZSBUcmVlV2Fsa2VyJ3MgcGFyZW50Tm9kZSgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBj
YWxsYmFjay48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5v
bmU7Ij4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPgorICAgICAgICAgICAgICAgIDxzcGFu
PgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIj5hYWE8L2Rpdj4KKyAgICAgICAg
ICAgICAgICA8L3NwYW4+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+IAorICAg
ICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+
IAorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5
PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfZGVlcFRy
ZWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfcHJldmlvdXNOb2RlX2RlZXBUcmVlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMGRmZjlj
NTQ3OWIzYmQ1N2FjN2Y5YzEyNmJmODQxYzg4N2M3NTdkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX2RlZXBU
cmVlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBtb3ZlcyB0aGUgVHJl
ZVdhbGtlciB1c2luZyBwcmV2aW91c05vZGUoKSB0aHJvdWdoIDIgZGVlcCBzdWJ0cmVlcyBjb25z
aXN0aW5nIG9mIGRpdiBlbGVtZW50cy4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3Mi
IGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9kZWVwVHJlZS5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfZGVlcFRyZWUu
aHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjVjMDAxM2ZlM2JhYjc1ZDE1NDBmYjFlOWY5MzZhYzlhNmUxZmNmODcK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNh
bC90d19wcmV2aW91c05vZGVfZGVlcFRyZWUuaHRtCkBAIC0wLDAgKzEsMTIwIEBACis8IURPQ1RZ
UEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDC
qSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
TWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9u
LgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04g
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
CisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4g
VHJlZVdhbGtlciAtIHByZXZpb3VzTm9kZSgpIC0gdHJhdmVyc2UgYmFja3dhcmRzIHRocm91Z2gg
MiBkZWVwIHN0YWNrcyBvZiBkaXZzIDwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAg
ICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3Rl
ZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVk
KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJG
YWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUOworICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2
YXIgZGl2MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBkaXYzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjMiKTsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGRpdjQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2NCIp
OworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2NSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXY1Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXY2ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjcgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2NyIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2OCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY4Iik7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBkaXY5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjkiKTsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGRpdjEwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEwIik7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBkaXYxMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYx
MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MTIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MTIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1lbnQuY3Jl
YXRlVHJlZVdhbGtlcihkaXYxLCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgYWNjZXB0Tm9kZSwg
ZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdHcuY3Vy
cmVudE5vZGUgPSBkaXYxMjsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2MTEpOworICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjEwKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY5KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY4KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY3KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY2KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY1KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY0KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYzKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYyKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENo
aWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7
Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IG1vdmVzIHRoZSBUcmVlV2Fsa2VyIHVzaW5nIHByZXZp
b3VzTm9kZSgpIHRocm91Z2ggMiBkZWVwIHN1YnRyZWVzIGNvbnNpc3Rpbmcgb2YgZGl2IGVsZW1l
bnRzLjwvcD4KKyAgICAgICAgPGRpdiBpZD0iZGl2MSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgor
ICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+CisgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2
MyI+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjQiPgorICAgICAgICAgICAgICAg
ICAgICAgICAgPGRpdiBpZD0iZGl2NSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRp
diBpZD0iZGl2NiI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRp
djciPmFhYTwvZGl2PgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAg
ICAgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAg
ICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8ZGl2
IGlkPSJkaXY4Ij4KKyAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXY5Ij4KKyAgICAgICAgICAg
ICAgICAgICAgPGRpdiBpZD0iZGl2MTAiPgorICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBp
ZD0iZGl2MTEiPgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEyIj5i
YmI8L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgICAg
ICAgICA8L2Rpdj4KKyAgICAgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2Pgor
ICAgICAgICA8L2Rpdj4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3Mi
IGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5n
PC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19w
cmV2aW91c05vZGVfaWdub3JlUmVqZWN0U3ViVHJlZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfaWdub3JlUmVqZWN0
U3ViVHJlZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWQyNjAzMGM5MDQ0NzNjNzZmZGY4YTc5
YTQwY2MwNmZkZmI1NjZhMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVSZWplY3RTdWJUcmVlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBtb3ZlcyB0aGUgVHJlZVdhbGtl
ciB1c2luZyBwcmV2aW91c05vZGUoKSB3aGVyZSB0aGVyZSBpcyBhIHN1YnRyZWUgdGhhdCBoYXMg
YmVlbiByZWplY3RlZC4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMg
YmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVSZWplY3RTdWJUcmVlLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVS
ZWplY3RTdWJUcmVlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMDFjZjgwYjc2NGRiZGYyYzY2NDkyMDBmMjZm
Y2I2OGI2YTgyNTk0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX2lnbm9yZVJlamVjdFN1YlRyZWUuaHRtCkBA
IC0wLDAgKzEsMTAwIEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIHByZXZpb3VzTm9kZSgpIC0gbW92
ZSBwYXN0IGEgcmVqZWN0ZWQgc3VidHJlZSA8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsK
KyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhw
ZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBl
Y3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgaWYgKCJkaXYzIiA9PSBub2RlLmlkKQorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1JFSkVDVDsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVDsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2
NiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY2Iik7CisgICAgICAgICAgICAgICAgICAg
IHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5T
SE9XX0VMRU1FTlQsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisg
ICAgICAgICAgICAgICAgICAgIHR3LmN1cnJlbnROb2RlID0gZGl2NjsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwg
ZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwg
ZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwg
dGVzdERpdik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RS
ZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgbW92ZXMg
dGhlIFRyZWVXYWxrZXIgdXNpbmcgcHJldmlvdXNOb2RlKCkgd2hlcmUgdGhlcmUgaXMgYSBzdWJ0
cmVlIHRoYXQgaGFzIGJlZW4gcmVqZWN0ZWQuPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2
IiBzdHlsZT0iZGlzcGxheTpub25lOyI+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+IAor
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPiAKKyAgICAgICAgICAgICAgICAgICAgPGRp
diBpZD0iZGl2MyI+IAorICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2NCI+YWFh
PC9kaXY+IAorICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2NSI+YmJiPC9kaXY+
IAorICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gCisgICAgICAgICAgICAgICAgPC9kaXY+IAor
ICAgICAgICAgICAgPC9kaXY+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2NiI+Y2NjPC9kaXY+
IAorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQ
YXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVu
bmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfcHJldmlvdXNOb2RlX21vdmVQYXN0U2tpcHBlZE5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX21vdmVQYXN0
U2tpcHBlZE5vZGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNiMzA4ZTIzYTNhZTY1YmU2MDE1
ZDFiZDQyYjhkM2NlMzgxOTUxYTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfbW92ZVBhc3RTa2lwcGVkTm9k
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgbW92ZXMgdGhlIFRyZWVX
YWxrZXIgdXNpbmcgcHJldmlvdXNOb2RlKCkgaW50byBhIHN1YnRyZWUgd2hlbiBhIHBhcmVudCBu
b2RlIGhhcyBiZWVuIHNraXBwZWQgaW4gdGhlIE5vZGVGaWx0ZXIuCisKK1Rlc3QgcGFzc2VzIGlm
IHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfbW92ZVBh
c3RTa2lwcGVkTm9kZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNh
bC90d19wcmV2aW91c05vZGVfbW92ZVBhc3RTa2lwcGVkTm9kZS5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTM2
MzZhMGY5ZDE3YzBhZjgxZjAwNDcwZDQ4MTIyZjIxOTk4YTlkNgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9t
b3ZlUGFzdFNraXBwZWROb2RlLmh0bQpAQCAtMCwwICsxLDEwNSBAQAorPCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxr
ZXIgLSBwcmV2aW91c05vZGUoKSAtIG1vdmUgcGFzdCBhIHNraXBwZWQgc3VidHJlZSA8L3RpdGxl
PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB2
YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2Rl
KG5vZGUpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCJkaXYzIiA9PSBub2Rl
LmlkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVG
aWx0ZXIuRklMVEVSX1NLSVA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmls
dGVyLkZJTFRFUl9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRy
eQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAgICAgICB2
YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGRpdjQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2NCIp
OworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2NSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXY1Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXY2ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjYiKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRl
ci5TSE9XX0VMRU1FTlQsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAg
CisgICAgICAgICAgICAgICAgICAgIHR3LmN1cnJlbnROb2RlID0gZGl2NjsKKyAgICAgICAgICAg
ICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgZGl2NSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgZGl2NCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUo
KSwgdGVzdERpdik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05v
ZGUoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRl
c3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAK
KyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgbW92
ZXMgdGhlIFRyZWVXYWxrZXIgdXNpbmcgcHJldmlvdXNOb2RlKCkgaW50byBhIHN1YnRyZWUgd2hl
biBhIHBhcmVudCBub2RlIGhhcyBiZWVuIHNraXBwZWQgaW4gdGhlIE5vZGVGaWx0ZXIuPC9wPgor
ICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+IAorICAgICAg
ICAgICAgPGRpdiBpZD0iZGl2MSI+IAorICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPiAK
KyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2MyI+IAorICAgICAgICAgICAgICAgICAg
ICAgICAgPGRpdiBpZD0iZGl2NCI+YWFhPC9kaXY+IAorICAgICAgICAgICAgICAgICAgICAgICAg
PGRpdiBpZD0iZGl2NSI+YmJiPC9kaXY+IAorICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gCisg
ICAgICAgICAgICAgICAgPC9kaXY+IAorICAgICAgICAgICAgPC9kaXY+IAorICAgICAgICAgICAg
PGRpdiBpZD0iZGl2NiI+Y2NjPC9kaXY+IAorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRl
c3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAg
PGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGlu
Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmU4Yzc4OTc2NWVjNGM0YmJiM2ZmNDE0ODVlMzg5
MDQ5ZjlhZTllNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgcHJldmlvdXNTaWJsaW5nKCkg
bWV0aG9kLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4K
KworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfcHJldmlvdXNTaWJsaW5nLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQyZDRlMWI3NmJh
YzE2N2EyMzM4ZjhkNzEwMzI0M2MwNzQxZTcwMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy5odG0KQEAg
LTAsMCArMSw4NiBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVy
IFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
CisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQg
Q09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAor
ICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gcHJldmlvdXNTaWJsaW5nKCkg
PC90aXRsZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gICAgCisg
ICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERp
diIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MyIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcg
PSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEws
IG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAg
IHR3Lmxhc3RDaGlsZCgpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBkaXYzKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCB0ZXN0RGl2LmNoaWxkTm9kZXNb
NF0pOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNTaWJsaW5nKCks
IGRpdjIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNTaWJsaW5n
KCksIHRlc3REaXYuY2hpbGROb2Rlc1syXSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9k
ZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNr
Tm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgdGVzdERpdi5jaGlsZE5vZGVzWzBdKTsKKyAgICAg
ICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBudWxsKTsKKyAg
ICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCB0ZXN0RGl2LmNoaWxk
Tm9kZXNbMF0pOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0
UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4gCisg
ICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNr
cyB0aGUgVHJlZVdhbGtlcidzIHByZXZpb3VzU2libGluZygpIG1ldGhvZC48L3A+CisgICAgICAg
IDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxk
aXYgaWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YmJiPC9k
aXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYzIj5jY2M8L2Rpdj4KKyAgICAgICAgPC9kaXY+
CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93
LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8
L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGlu
Z19pZ25vcmVTa2lwcGVkTm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdfaWdub3JlU2tpcHBlZE5vZGUtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3ZWI2ODgwZWNlMzU3N2JjMTM2OGJhNjlhMzAyMTM2ZmNl
ODVlZTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdfaWdub3JlU2tpcHBlZE5vZGUtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IG1vdmVzIHRoZSBUcmVlV2Fsa2VyIHVzaW5nIHBy
ZXZpb3VzU2libGluZygpIHdoZXJlIHRoZSBwcmV2aW91cyBzaWJsaW5nIG9mIHRoZSBzdGFydGlu
ZyBub2RlIGhhcyBiZWVuIHNraXBwZWQuCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNz
IiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdfaWdub3JlU2tpcHBlZE5vZGUu
aHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNT
aWJsaW5nX2lnbm9yZVNraXBwZWROb2RlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMzRlMWRkMTg5N2QzOWIz
ZDk5MmRhMGVjNWIzNWJhMzRlMTUzODQzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX2lnbm9yZVNraXBw
ZWROb2RlLmh0bQpAQCAtMCwwICsxLDEwMSBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBwcmV2aW91
c1NpYmxpbmcoKSAtIG1vdmUgcGFzdCBhIHNraXBwZWQgc3VidHJlZSA8L3RpdGxlPgorICAgICAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB2YXIgdGVzdFJl
c3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tO
b2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBhY2NlcHROb2RlKG5vZGUpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKCJkaXYzIiA9PSBub2RlLmlkKQorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklM
VEVSX1NLSVA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRF
Ul9BQ0NFUFQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZh
ciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIGRpdjQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2NCIpOworICAgICAg
ICAgICAgICAgICAgICB2YXIgZGl2NSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY1Iik7
CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXY2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdjYiKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIHZhciB0
dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0VM
RU1FTlQsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5sYXN0Q2hpbGQoKSwgZGl2Nik7CisgICAgICAgICAg
ICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2NSk7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2NCk7CisgICAg
ICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2Mik7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2MSk7
CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgbnVs
bCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBtb3ZlcyB0aGUgVHJl
ZVdhbGtlciB1c2luZyBwcmV2aW91c1NpYmxpbmcoKSB3aGVyZSB0aGUgcHJldmlvdXMgc2libGlu
ZyBvZiB0aGUgc3RhcnRpbmcgbm9kZSBoYXMgYmVlbiBza2lwcGVkLjwvcD4KKyAgICAgICAgPGRp
diBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPiAKKyAgICAgICAgICAgIDxkaXYg
aWQ9ImRpdjEiPmFhYTwvZGl2PiAKKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmJiYjwvZGl2
PiAKKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPiAKKyAgICAgICAgICAgICAgICA8ZGl2IGlk
PSJkaXY0Ij5iYmI8L2Rpdj4gCisgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2NSI+Y2NjPC9k
aXY+IAorICAgICAgICAgICAgPC9kaXY+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2NiI+ZGRk
PC9kaXY+IAorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3
b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3Vs
dCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC90d19wcmV2aW91c1NpYmxpbmdfbm9kZUZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdfbm9kZUZp
bHRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2JlYWNiZjk4ZjQ5ZDhkOTgxNjQxNGNkMWJm
MzBkYTY3NDJhYWMwYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBwcmV2
aW91c1NpYmxpbmcoKSBtZXRob2Qgd2l0aCBhIE5vZGVGaWx0ZXIgY2FsbGJhY2suCisKK1Rlc3Qg
cGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1Np
Ymxpbmdfbm9kZUZpbHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC90d19wcmV2aW91c1NpYmxpbmdfbm9kZUZpbHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBkYjQ2
ZGFhMzEzYmExZjlkNmEyZWJlMjYzMWVkMWNlNDc0MWZlMgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19u
b2RlRmlsdGVyLmh0bQpAQCAtMCwwICsxLDk2IEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisg
SW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQg
Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0
aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+
IAorICAgIDxoZWFkPiAgCisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBw
cmV2aW91c1NpYmxpbmcoKSB3aXRoIGEgTm9kZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVz
dWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05v
ZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAo
YWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoImRpdiIgPT0gbm9kZS5ub2RlTmFtZS50
b0xvd2VyQ2FzZSgpKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAg
ICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRl
c3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAg
ICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIi
KTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2MyIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVU
cmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIGFjY2VwdE5vZGUsIGZhbHNl
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0
dy5sYXN0Q2hpbGQoKSwgZGl2Myk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5w
cmV2aW91c1NpYmxpbmcoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0
dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9k
ZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNr
Tm9kZSh0dy5jdXJyZW50Tm9kZSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0
Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZh
aWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8
cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgcHJldmlvdXNTaWJsaW5nKCkgbWV0
aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVz
dERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPHNwYW4+YWFhPC9zcGFu
PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+YmJiPC9kaXY+CisgICAgICAgICAgICA8c3Bh
bj5jY2M8L3NwYW4+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIj5kZGQ8L2Rpdj4KKyAgICAg
ICAgICAgIDxkaXYgaWQ9ImRpdjMiPmVlZTwvZGl2PgorICAgICAgICAgICAgPHNwYW4+ZmZmPC9z
cGFuPgorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3Jk
ICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQn
PlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RF
eHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IGEyNmIyMmEwMjk5ZDAwMTk3YTQ4OTFlNGIyOTllZDNiNDFiYjhhZDguLjY0Zjgx
MzhlYWJhMTc5ZmRlNGM5MGRhYzhjMmExNjU2NDEyNGM1NWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDM0NywzICs0MzQ3LDEyIEBA
IHdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy13aXRoLXdoaXRl
c3BhY2Utc2VsZWN0aW9uLmh0bWwgWyBGCiB3ZWJraXQub3JnL2IvMTA4NDI0IG1lZGlhL3ZpZGVv
LWVycm9yLWRvZXMtbm90LWV4aXN0Lmh0bWwgWyBGYWlsdXJlIENyYXNoIF0KIHdlYmtpdC5vcmcv
Yi8xMDg1NjYgcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9mb3Jtcy9jYWxlbmRhci1waWNrZXIvY2Fs
ZW5kYXItcGlja2VyLWtleS1vcGVyYXRpb25zLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcv
Yi8xMDg1OTQgWyBEZWJ1ZyBdIHRhYmxlcy90YWJsZS1zZWN0aW9uLW92ZXJmbG93LWNsaXAtY3Jh
c2guaHRtbCBbIENyYXNoIF0KKword2Via2l0Lm9yZy9iLzc3ODgyIGlldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi5odG0gWyBGYWlsdXJlIF0KK3dlYmtp
dC5vcmcvYi83NjEwNiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3Bl
cnR5X0dldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNiBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bSBbIEZh
aWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA3IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
T3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2
MTA3IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVy
X0hpZ2guaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjYxIGlldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0RPTUV4Y2VwdGlvbi5odG0gWyBGYWlsdXJlIF0KK3dl
YmtpdC5vcmcvYi8xMDg2NjMgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
SFRNTElzSW5kZXhFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzM2MjgxIGll
dGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0SGllcmFyY2h5RXJyb3IuaHRtIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVj
dGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IDI0Yzc2YzE5NTk5MjM3MTdiNDFiMGVjYTk0M2FhOThiYTM1OGZjODMuLjNkODYwMDMxM2Y4NmQz
MTcxYzY5ZDVmODUzZjFiYTllYjJhZTYwMmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9U
ZXN0RXhwZWN0YXRpb25zCkBAIC0xODU3LDMgKzE4NTcsMTUgQEAgd2Via2l0Lm9yZy9iLzEwODM3
MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXN1YndvcmQtc2VsZWN0aW9uLmh0bWwgWyBTa2lw
IF0KIHdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy13aXRoLXB1
bmN0dWF0aW9uLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVk
aXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC11bmRlcnNjb3JlLXNlbGVjdGlvbi5odG1sIFsg
U2tpcCBdCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0
aC13aGl0ZXNwYWNlLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCisKK3dlYmtpdC5vcmcvYi83Nzg4
MiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRt
IFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9H
ZXR0ZXJfSGlnaC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gWyBGYWlsdXJl
IF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJy
aWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEw
ODY2MSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24u
aHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjYzIGlldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dl
YmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
U1ZHQ2lyY2xlRWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtIFsg
RmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFu
Y2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2Iv
MzYyODEgaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0gWyBJ
bWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMKaW5kZXggMmNlY2UxYWIyZGNmZGU2MjNjN2I2YjQzYWNlODMzNjc0ZTg0MzEzOC4uNjcxMjZj
MzljOGZiZDRmMDc1MWFjNWNiOWI3OTcxYjg5OGNmNjA0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE0NDIsNiArMTQ0MiwxOCBAQCB3ZWJraXQub3Jn
L2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVhdGlvbi1zZWxl
Y3Rpb24uaHRtbCBbCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctd2l0aC11bmRlcnNjb3JlLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2Iv
MTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC13aGl0ZXNwYWNlLXNlbGVjdGlv
bi5odG1sIFsgU2tpcCBdCiAKK3dlYmtpdC5vcmcvYi83Nzg4MiBpZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQu
b3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0
eV9HZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0gWyBGYWls
dXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092
ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEw
NyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9I
aWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2MSBpZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24uaHRtIFsgRmFpbHVyZSBdCit3ZWJr
aXQub3JnL2IvMTA4NjYzIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hU
TUxJc0luZGV4RWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC5odG0g
WyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0Vs
ZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMzYyODEgaWV0ZXN0Y2VudGVyL2Rv
bS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0gWyBJbWFnZU9ubHlGYWlsdXJlIF0KKwog
Iy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICMgRW5kIG9mIFRlc3RzIGZhaWxpbmcK
ICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGIzY2Y4NTU0YzVhN2JhZGNiM2EzNDM1OWI5ZWU0N2M3
YzA1OWMzNGEuLmM3MjI1Y2Q0YTEzNTJhNjNkZWRhNTdlNWJhYTZiMjhmMDVhMjRmYmUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMzI0LDMgKzEzMjQs
MTUgQEAgd2Via2l0Lm9yZy9iLzEwODM4MCBodHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1o
YXItcGFnZXMuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzEwODM4MCBodHRwL3Rlc3Rz
L2xvYWRpbmcvcmVkaXJlY3QtbWV0aG9kcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2Iv
MTA4MzgwIGh0dHAvdGVzdHMvbWlzYy9saW5rLXJlbC1pY29uLWJlZm9yZWxvYWQuaHRtbCBbIEZh
aWx1cmUgXQogd2Via2l0Lm9yZy9iLzEwODM4MCBodHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1sb2Fk
cy13aXRoLWltYWdlcy1kaXNhYmxlZC5odG1sIFsgRmFpbHVyZSBdCisKK3dlYmtpdC5vcmcvYi83
Nzg4MiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIu
aHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQu
b3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0
eV9HZXR0ZXJfSGlnaC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gWyBGYWls
dXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092
ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9i
LzEwODY2MSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRp
b24uaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjYzIGlldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC5odG0gWyBGYWlsdXJlIF0K
K3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfU1ZHQ2lyY2xlRWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUg
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRt
IFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvMzYyODEgaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0g
WyBJbWFnZU9ubHlGYWlsdXJlIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IDg5ODQ1OWRiNmE1ZjQzZjhjOWIwMmMwNTYwY2U4NTI2Njc4MWY1MWQuLjExMDgz
MzZjZDEzYjU3YzAyOWJiOWM4OGFhZTc3ZWFiMTExMGEwNGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vcXQvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjYxOSwzICsyNjE5LDE1IEBAIHdlYmtpdC5vcmcv
Yi8xMDc1NjcgY3NzMi4xL3QwNTA1LWMxNi1kZXNjZW5kYW50LTAxLWUuaHRtbCBbIEZhaWx1cmUg
XQogd2Via2l0Lm9yZy9iLzEwNzU2NyB0YWJsZXMvbW96aWxsYS9idWdzL2J1ZzExODguaHRtbCBb
IEZhaWx1cmUgXSAKIHdlYmtpdC5vcmcvYi8xMDc1NjcgZWRpdGluZy9zZWxlY3Rpb24vZXh0ZW5k
LWJ5LXNlbnRlbmNlLTAwMS5odG1sIFsgRmFpbHVyZSBdIAogd2Via2l0Lm9yZy9iLzEwNzU2NyBz
dmcvY2FydG8ubmV0L2NvbWJvYm94LnN2ZyBbIEZhaWx1cmUgXSAKKword2Via2l0Lm9yZy9iLzc3
ODgyIGlldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi5o
dG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5v
cmcvYi83NjEwNiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5
X0dldHRlcl9IaWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA3IGlldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0bSBbIEZhaWx1
cmUgXQord2Via2l0Lm9yZy9iLzc2MTA3IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3Zl
cnJpZGVfUHJvcGVydHlfU2V0dGVyX0hpZ2guaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2Iv
MTA4NjYxIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0RPTUV4Y2VwdGlv
bi5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjMgaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTElzSW5kZXhFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQor
d2Via2l0Lm9yZy9iLzEwODY2NSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9TVkdDaXJjbGVFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2NSBp
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdSZWN0RWxlbWVudC5odG0g
WyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfU1ZHU1ZHRWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcv
Yi8zNjI4MSBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJhcmNoeUVycm9yLmh0bSBb
IEltYWdlT25seUZhaWx1cmUgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2lu
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0
aW9ucwppbmRleCBmYmQ4ZDI4YjI4ODY1YWI2OWIwZmJmZjc1NTNhZDY2MzVkYTc3ODNhLi5hN2I3
ZDA4OGJjYjhkZTZjMGEwN2NkOGQwYjgyNTNiMWFiM2E0NGM4IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjYwOSwzICsyNjA5LDE1IEBAIHdlYmtpdC5v
cmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1zdWJ3b3JkLXNlbGVjdGlvbi5o
dG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctd2l0aC1wdW5jdHVhdGlvbi1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9i
LzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5kZXJzY29yZS1zZWxlY3Rp
b24uaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3Nw
ZWxsaW5nLXdpdGgtd2hpdGVzcGFjZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQorCit3ZWJraXQu
b3JnL2IvNzc4ODIgaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9z
aXRpb24yLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA2IGlldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyLmh0bSBbIEZhaWx1cmUgXQor
d2Via2l0Lm9yZy9iLzc2MTA2IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVf
UHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDcg
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXIuaHRt
IFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDcgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC5odG0gWyBGYWlsdXJlIF0KK3dlYmtp
dC5vcmcvYi8xMDg2NjEgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9N
RXhjZXB0aW9uLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2MyBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MSXNJbmRleEVsZW1lbnQuaHRtIFsgRmFp
bHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1NWR0NpcmNsZUVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2Iv
MTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVt
ZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2NSBpZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdTVkdFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Vi
a2l0Lm9yZy9iLzM2MjgxIGlldGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0SGllcmFyY2h5RXJy
b3IuaHRtIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186219</attachid>
            <date>2013-02-02 00:43:31 -0800</date>
            <delta_ts>2013-03-25 05:44:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108671-20130202094011.patch</filename>
            <type>text/plain</type>
            <size>550288</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNjg2CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTU0YjMzYTVjOGY5ZDVhODlmMzFk
MjRlMjcxMTU3OGU4YWE1MTViYS4uMmIyYzg2MzI4MTAyYWYxNzQ2NWVlYjJjYmFkYzdiNTRkODM1
Mjg5MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4NyBAQAorMjAxMy0wMi0wMiAgWmFuIERvYmVyc2VrICA8
emRvYmVyc2VrQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wb3J0IElFVEMgRE9NIHRlc3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg2NzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBvcnQgdGhl
IElFIFRlc3QgQ2VudGVyIHRlc3RzIHRoYXQgYXJlIHBhcnQgb2YgdGhlIGZvbGxvd2luZyBET00g
dGVzdCBzdWl0ZXM6CisgICAgICAgIC0gVHJhdmVyc2FsCisgICAgICAgIC0gRWxlbWVudCBUcmF2
ZXJzYWwKKyAgICAgICAgLSBMZXZlbCAzIENvcmUKKyAgICAgICAgLSBMZXZlbCAyIFN0eWxlCisg
ICAgICAgIC0gTGV2ZWwgMiBJbmhlcml0YW5jZQorCisgICAgICAgIFRoZSB0ZXN0cyBhcmUgbWFp
bmx5IGltcG9ydGVkIGFzIHRleHQgdGVzdHMgYXBhcnQgZnJvbSB0aGUgTGV2ZWwgMiBTdHlsZSB0
ZXN0cworICAgICAgICB0aGF0IGFyZSBnaXZlbiByZWZlcmVuY2UgZmlsZXMgd2l0aCB3aGljaCB0
aGUgdGVzdCBvdXRwdXQgbXVzdCBtYXRjaC4gQW55IHJlc291cmNlcworICAgICAgICB0aGUgdGVz
dHMgdXNlIGFyZSBpbXBvcnRlZCBhcyB3ZWxsLgorCisgICAgICAgIFRoZSBmYWlsdXJlIGV4cGVj
dGF0aW9ucyBhcmUgYWRkZWQgZm9yIHRlc3RzIHRoYXQgYXQgdGhlIG1vbWVudCBkb24ndCBwYXNz
LgorCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2Ny
ZWF0ZURvY3VtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3VtZW50Lmh0bTogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURv
Y3VtZW50VHlwZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vY29yZS9ET01JbXBsZW1lbnRhdGlvbl9jcmVhdGVEb2N1bWVudFR5cGUuaHRtOiBBZGRlZC4K
KyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50
X2Fkb3B0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9E
b2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy5odG06IEFk
ZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFU
QVNlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bTogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUVsZW1lbnROUy1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVh
dGVFbGVtZW50TlMuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RG9jdW1lbnRfY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZVByb2Nlc3Np
bmdJbnN0cnVjdGlvbi5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29y
ZS9Eb2N1bWVudF9kb2N0eXBlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZG9jdHlwZTItZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZG9jdHlwZTIuaHRt
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZ2V0RWxl
bWVudHNCeVRhZ05hbWVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9Eb2N1bWVudF9nZXRFbGVtZW50c0J5VGFnTmFtZU5TLmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2ltcG9ydE5vZGUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1l
bnRfaW1wb3J0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29y
ZS9FbGVtZW50X2F0dHJpYnV0ZU5TSW50ZXJ0b3AtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9hdHRyaWJ1dGVOU0ludGVydG9wLmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0
cmlidXRlTlMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRWxlbWVudF9oYXNBdHRyaWJ1dGVOUy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9FbGVtZW50X3JlbW92ZUF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVtb3ZlQXR0
cmlidXRlTlMuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxl
bWVudF9zZXRBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9hZG9wdE5vZGUt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX0RvY3VtZW50X2Fkb3B0Tm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9jcmVhdGVBdHRyaWJ1dGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUNEQVRBU2VjdGlvbi1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
RG9jdW1lbnRfY3JlYXRlQ0RBVEFTZWN0aW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50LWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9jcmVhdGVFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94bWxWZXJzaW9uLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF94
bWxWZXJzaW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGUu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0Vs
ZW1lbnRfc2V0QXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRf
c2V0QXR0cmlidXRlTlMyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TMi5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRB
dHRyaWJ1dGVOUzMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMzLmh0bTogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJp
YnV0ZU5TNC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzQuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRl
TlM1LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TNS5odG06IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2Rl
Mi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOb2RlMi5odG06IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
Tm9kZV9hcHBlbmRDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQy
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9O
b2RlX2FwcGVuZENoaWxkMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDMuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3Jl
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUyLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2lu
c2VydEJlZm9yZTIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlMy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUzLmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2Rl
X2luc2VydEJlZm9yZTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlNS5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9u
X05vZGVfcHJlZml4Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX3ByZWZpeDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Mi5odG06IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZW1vdmVDaGls
ZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fTm9kZV9yZW1vdmVDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVw
bGFjZUNoaWxkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMi5odG06
IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9y
ZXBsYWNlQ2hpbGQzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDMuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkNS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQ1Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24tZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1l
bnRQb3NpdGlvbi5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9O
b2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi5o
dG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRGVmYXVs
dE5hbWVzcGFjZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vY29yZS9Ob2RlX2lzRGVmYXVsdE5hbWVzcGFjZS5odG06IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNFcXVhbE5vZGUuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0VxdWFsTm9kZTIt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9k
ZV9pc0VxdWFsTm9kZTIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvTm9kZV9pc1N1cHBvcnRlZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vY29yZS9Ob2RlX2lzU3VwcG9ydGVkLmh0bTogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLmh0bTogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwTmFtZXNwYWNl
VVJJLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L05vZGVfbG9va3VwTmFtZXNwYWNlVVJJLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4Lmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfcHJlZml4Lmh0
bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRl
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
Tm9kZV90ZXh0Q29udGVudC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
Y29yZS9Ob2RlX3RleHRDb250ZW50Mi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50Mi5odG06IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNl
V2hvbGVUZXh0Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1Rl
eHRfcmVwbGFjZVdob2xlVGV4dDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Mi5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dC1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dC5o
dG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4
dDItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUv
VGV4dF93aG9sZVRleHQyLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9l
bGVtZW50dHJhdmVyc2FsL0VsZW1lbnRDaGlsZC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvY2hpbGRF
bGVtZW50Q291bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL2VsZW1lbnR0cmF2ZXJzYWwvY2hpbGRFbGVtZW50Q291bnQuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5n
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50
dHJhdmVyc2FsL25leHRFbGVtZW50U2libGluZy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9wcmV2aW91c0VsZW1lbnRTaWJsaW5nLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVy
c2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmcuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9GdW5jdGlvbi1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9u
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRl
bmRfRnVuY3Rpb25fSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uX0hpZ2guaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0
ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
RXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0xvdy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X0dldHRlcl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXItZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9w
ZXJ0eV9TZXR0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1Nl
dHRlcl9IaWdoLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0xvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRl
cl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L092ZXJyaWRlX0Z1bmN0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbi5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGln
aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGlnaC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fTG93LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlk
ZV9GdW5jdGlvbl9Mb3cuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlf
R2V0dGVyLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0
dGVyX0hpZ2guaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVy
Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVy
cmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyX0hp
Z2guaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9DREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DREFUQVNlY3Rpb24uaHRtOiBBZGRl
ZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9DaGFy
YWN0ZXJEYXRhLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ2hhcmFjdGVyRGF0YS5odG06IEFkZGVkLgorICAgICAg
ICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NvbW1lbnQtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9Db21tZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0aW9uLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0
aW9uLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfRG9jdW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Eb2N1bWVudC5odG06IEFkZGVkLgorICAg
ICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0VsZW1lbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9FbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FdmVudC5odG06IEFk
ZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hU
TUxCb2R5RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxCb2R5RWxlbWVudC5odG06IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxEaXZF
bGVtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRWxlbWVudC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0hUTUxFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTElzSW5kZXhFbGVtZW50LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfSFRNTElzSW5kZXhFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVzc2FnZUV2ZW50LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVz
c2FnZUV2ZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfTW91c2VFdmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9O
b2RlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfTm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNsZUVsZW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9TVkdDaXJjbGVFbGVtZW50Lmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHRWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1l
bnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9TVkdSZWN0RWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVtZW50Lmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
U1ZHU1ZHRWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZl
bnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9UZXh0LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4
dC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX1VJRXZlbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9VSUV2ZW50Lmh0bTogQWRkZWQuCisgICAgICAg
ICogaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1doZWVsRXZlbnQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIv
ZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQtZXhwZWN0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUtZXhwZWN0ZWQuaHRt
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJh
cmNoeUVycm9yLWV4cGVjdGVkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2Rv
bS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLWV4cGVjdGVkLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnZhbGlkTWVkaWEuaHRtOiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZlQm9yZGVyV2lkdGgtZXhwZWN0
ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZl
Qm9yZGVyV2lkdGguaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3N0eWxl
L3Jlc291cmNlcy90ZXN0U3R5bGUxLmNzczogQWRkZWQuCisgICAgICAgIChib2R5KToKKyAgICAg
ICAgKGRpdik6CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNo
X2ludmFsaWRTdGF0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL25pX2RldGFjaF9pbnZhbGlkU3RhdGUuaHRtOiBBZGRlZC4KKyAgICAg
ICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9odG1sQW5kU3ZnLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFu
ZFN2Zy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25p
X25leHRBbmRQcmV2aW91c05vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLmh0bTogQWRkZWQu
CisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3Vz
Tm9kZV9ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfcmVtb3ZlUmVm
ZXJlbmNlTm9kZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUuaHRtOiBBZGRlZC4KKyAgICAgICAg
KiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0ZWQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19u
b3RzdXBwb3J0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZl
cnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBw
b3J0ZWQuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19maXJzdENoaWxkLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZC5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGRfbm9kZUZpbHRlci1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0
Q2hpbGRfbm9kZUZpbHRlci5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL3R3X2h0bWxBbmRTdmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19odG1sQW5kU3ZnLmh0bTogQWRkZWQuCisgICAg
ICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENo
aWxkLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdf
bGFzdENoaWxkX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGRfbm9kZUZpbHRlci5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91
c05vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19uZXh0QW5kUHJldmlvdXNOb2RlLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVy
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bTogQWRkZWQuCisgICAgICAg
ICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmctZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2li
bGluZy5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3
X25leHRTaWJsaW5nX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2libGluZ19ub2RlRmlsdGVyLmh0bTog
QWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9k
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL3R3X3BhcmVudE5vZGUuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVG
aWx0ZXIuaHRtOiBBZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19wcmV2aW91c05vZGVfZGVlcFRyZWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBp
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfZGVlcFRyZWUuaHRtOiBB
ZGRlZC4KKyAgICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05v
ZGVfaWdub3JlUmVqZWN0U3ViVHJlZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVSZWplY3RTdWJU
cmVlLmh0bTogQWRkZWQuCisgICAgICAgICogaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdf
cHJldmlvdXNOb2RlX21vdmVQYXN0U2tpcHBlZE5vZGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBpZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfbW92ZVBh
c3RTa2lwcGVkTm9kZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJh
dmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZy5odG06IEFkZGVk
LgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGlu
Z19pZ25vcmVTa2lwcGVkTm9kZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGlldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19pZ25vcmVTa2lwcGVkTm9k
ZS5odG06IEFkZGVkLgorICAgICAgICAqIGlldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3By
ZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX25vZGVGaWx0ZXIu
aHRtOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25z
OgorICAgICAgICAqIHBsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBs
YXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9UZXN0
RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTMtMDItMDEgIENo
cmlzdGlhbiBCaWVzaW5nZXIgIDxjYmllc2luZ2VyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZWJhc2VsaW5lIHRlc3RzIGFmdGVyIGJ1ZyA5MjIxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRE9NSW1wbGVtZW50YXRpb25fY3JlYXRlRG9jdW1lbnQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVu
dGF0aW9uX2NyZWF0ZURvY3VtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1
NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3Vt
ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRE9NSW1wbGVtZW50YXRpb25fY3JlYXRlRG9jdW1l
bnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0
aW9uX2NyZWF0ZURvY3VtZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZTQ3Y2RjZGRkOGYzMjdmNzExOGRl
Y2U5MGMyOTM3ZDQ3NWZlMTY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3VtZW50Lmh0bQpAQCAt
MCwwICsxLDY0IEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBU
ZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVp
dGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMg
b2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
Cisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBN
SUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAor
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRE9N
SW1wbGVtZW50YXRpb24gSW50ZXJmYWNlIGNyZWF0ZURvY3VtZW50IG1ldGhvZDwvdGl0bGU+Cisg
ICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1l
bnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBET01JbXBsZW1lbnRhdGlvbiBJbnRl
cmZhY2U6IGNyZWF0ZURvY3VtZW50LiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00t
TGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNMZXZlbC0yLUNvcmUtRE9NLWNyZWF0ZURv
Y3VtZW50IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAz
IENvcmU6IERPTUltcGxlbWVudGF0aW9uIEludGVyZmFjZSBjcmVhdGVEb2N1bWVudCBtZXRob2Qi
IC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9u
IFJ1blRlc3QoKQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRp
diIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFy
IGR5bmFtaWNEb2MgPSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgiYSIs
ICJiIiwgbnVsbCk7CisKKyAgICAgICAgICAgICAgIGlmKCJiIiA9PSBkeW5hbWljRG9jLmRvY3Vt
ZW50RWxlbWVudC5sb2NhbE5hbWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
IH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8
L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3VtZW50VHlwZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRE9NSW1wbGVtZW50YXRp
b25fY3JlYXRlRG9jdW1lbnRUeXBlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1
NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3Vt
ZW50VHlwZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURv
Y3VtZW50VHlwZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRE9NSW1w
bGVtZW50YXRpb25fY3JlYXRlRG9jdW1lbnRUeXBlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTE4ZjlmYTEy
ODk1NGQ5OTNkODlhNGRhMjI1OGJlMWNhZjAzNmQ3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RPTUltcGxlbWVudGF0aW9uX2NyZWF0ZURvY3Vt
ZW50VHlwZS5odG0KQEAgLTAsMCArMSw2NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IERPTUltcGxlbWVudGF0aW9uIEludGVyZmFjZSBjcmVhdGVEb2N1bWVudFR5
cGUgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0i
VGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERP
TUltcGxlbWVudGF0aW9uIEludGVyZmFjZTogY3JlYXRlRG9jdW1lbnRUeXBlLiBodHRwOi8vd3d3
LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNM
ZXZlbC0yLUNvcmUtRE9NLWNyZWF0ZURvY1R5cGUiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVy
ZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRE9NSW1wbGVtZW50YXRpb24gSW50ZXJmYWNl
IGNyZWF0ZURvY3VtZW50VHlwZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgIHsKKyAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgdmFyIGRvY3VtZW50VHlwZSA9IGRvY3VtZW50LmltcGxl
bWVudGF0aW9uLmNyZWF0ZURvY3VtZW50VHlwZSgnaHRtbCcsICctLy9XM0MvL0RURCBYSFRNTCAx
LjAgU3RyaWN0Ly9FTicsICdodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1z
dHJpY3QuZHRkJyk7CisKKyAgICAgICAgICAgICAgIGlmKCJodG1sIiA9PSBkb2N1bWVudFR5cGUu
bmFtZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJI
VE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBj
YXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hl
YWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0
Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9j
dW1lbnRfYWRvcHROb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9Eb2N1bWVudF9hZG9wdE5vZGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRm
YzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9hZG9wdE5vZGUuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFk
OTQwYjMxOGNkYjAzMzA0MTk0MjY3MzY0MmRjMTJjY2VmNzhiNjkKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfYWRvcHROb2RlLmh0
bQpAQCAtMCwwICsxLDY0IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMg
Q29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGFkb3B0Tm9kZSBtZXRob2Q8L3RpdGxlPgorICAgIDxt
ZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRp
b24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiBhZG9wdE5v
ZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0RvY3Vt
ZW50My1hZG9wdE5vZGUiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9N
IExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGFkb3B0Tm9kZSBtZXRob2QiIC8+Cisg
ICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
KyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICB2YXIgeG1sQmFzZWREb2MgPSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1
bWVudCgibnMxIiwgInJvb3QiLCBudWxsKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0g
ZG9jdW1lbnQuYWRvcHROb2RlKHhtbEJhc2VkRG9jLmRvY3VtZW50RWxlbWVudCk7CisgICAgICAg
ICAgICAgICBpZihkb2N1bWVudCA9PSB0ZXN0T2JqLm93bmVyRG9jdW1lbnQgJiYgIm5zMSIgPT0g
dGVzdE9iai5uYW1lc3BhY2VVUkkgJiYgbnVsbCA9PSB4bWxCYXNlZERvYy5kb2N1bWVudEVsZW1l
bnQpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1M
PSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+
UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3Vt
ZW50X2NyZWF0ZUF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9j
cmVhdGVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUF0
dHJpYnV0ZU5TLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVu
dF9jcmVhdGVBdHRyaWJ1dGVOUy5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDJjZWM5OTFkZTM1ZWU5NDQ1MWU0
ZDE1NTE0Y2E5NzA3OTY3NzExMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVBdHRyaWJ1dGVOUy5odG0KQEAgLTAsMCAr
MSw2MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVz
dCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9m
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgor
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3Vt
ZW50IEludGVyZmFjZSBjcmVhdGVBdHRyaWJ1dGVOUyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRh
IG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24g
b2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiBjcmVhdGVBdHRy
aWJ1dGVOUy4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0y
MDA0MDQwNy9jb3JlLmh0bWwjSUQtRG9jQ3JBdHRyTlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVh
dHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0
ZUF0dHJpYnV0ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7Cisg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0gZG9jdW1lbnQuY3Jl
YXRlQXR0cmlidXRlTlMoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vY3VzdG9tYXR0cm5hbWVzcGFj
ZSIsICJjdXN0b21hdHRyaWJ1dGUiKTsKKyAgICAgICAgICAgICAgIGlmKHRlc3RPYmogaW5zdGFu
Y2VvZiBBdHRyICYmICJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbWF0dHJuYW1lc3BhY2Ui
ID09IHRlc3RPYmoubmFtZXNwYWNlVVJJKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
cHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9Cisg
ICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAg
IDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUNEQVRB
U2VjdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2Iz
YTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZUNEQVRBU2VjdGlvbi5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNDY2NzA0NzRkMTEyYzZhNGRlZDUzOTFhNjkzODNkMTVhZDBmNGM2MwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVh
dGVDREFUQVNlY3Rpb24uaHRtCkBAIC0wLDAgKzEsNjQgQEAKK++7vzwhRE9DVFlQRSBodG1sPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+Cisg
ICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgY3JlYXRlQ0RBVEFTZWN0
aW9uIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9
IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBE
b2N1bWVudCBJbnRlcmZhY2U6IGNyZWF0ZUNEQVRBU2VjdGlvbi4gaHR0cDovL3d3dy53My5vcmcv
VFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtRDI2QzBBRjgiIC8+CisgICAgPG1ldGEg
bmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJm
YWNlIGNyZWF0ZUNEQVRBU2VjdGlvbiBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisg
ICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNl
bnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAg
ICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgeG1sQmFzZWREb2Mg
PSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudChudWxsLCBudWxsLCBudWxs
KTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0geG1sQmFzZWREb2MuY3JlYXRlQ0RBVEFT
ZWN0aW9uKCJjZGF0YSBjb250ZW50Iik7CisgICAgICAgICAgICAgICBpZig0ID09IHRlc3RPYmou
bm9kZVR5cGUgJiYgImNkYXRhIGNvbnRlbnQiID09IHRlc3RPYmouZGF0YSkKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsK
KyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAg
ICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAg
ICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9h
ZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+Cisg
IDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlRWxlbWVu
dE5TLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1
bWVudF9jcmVhdGVFbGVtZW50TlMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1
NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlRWxlbWVudE5TLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlRWxlbWVudE5TLmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1bWVudF9jcmVhdGVFbGVtZW50TlMuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjlhNzJiN2VmYmQxOWVlY2Q4ZTk3YTc5OTExNWIyZmNmMDM5OTEzNGQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRf
Y3JlYXRlRWxlbWVudE5TLmh0bQpAQCAtMCwwICsxLDY0IEBACivvu788IURPQ1RZUEUgaHRtbD4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgor
ICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZUVsZW1lbnRO
UyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJU
ZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRG9j
dW1lbnQgSW50ZXJmYWNlOiBjcmVhdGVFbGVtZW50TlMuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIw
MDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELURvY0NyRWxOUyIg
Lz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBE
b2N1bWVudCBJbnRlcmZhY2UgY3JlYXRlRWxlbWVudE5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0
eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAg
ICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYi
KVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFy
IHRlc3RPYmogPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cuZXhhbXBsZS5j
b20vY3VzdG9tbmFtZXNwYWNlIiwgImN1c3RvbWVsZW1lbnQiKTsKKyAgICAgICAgICAgICAgIGlm
KHRlc3RPYmogaW5zdGFuY2VvZiBFbGVtZW50ICYmICJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1
c3RvbW5hbWVzcGFjZSIgPT0gdGVzdE9iai5uYW1lc3BhY2VVUkkpCisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgewor
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
fQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1
blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2Jv
ZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2NyZWF0ZVByb2Nlc3NpbmdJ
bnN0cnVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRG9jdW1lbnRfY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2Ny
ZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50
X2NyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRG9jdW1lbnRfY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0aW9uLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mMzFjYjVkNTY3YmFiOWZmODMzZThmMWRjNTVkM2ExYmZjMjg5ZjE5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2Ny
ZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbi5odG0KQEAgLTAsMCArMSw2NCBAQAor77u/PCFET0NU
WVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQg
wqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhl
IE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMg
bWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lv
bi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgor
ICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBjcmVh
dGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24gbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJE
ZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBM
ZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50IEludGVyZmFjZTogY3JlYXRlUHJvY2Vzc2luZ0lu
c3RydWN0aW9uLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRt
bCNJRC1EMjZDMEFGOCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00g
TGV2ZWwgMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgY3JlYXRlUHJvY2Vzc2luZ0luc3RydWN0
aW9uIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIHZhciB4bWxCYXNlZERvYyA9IGRvY3VtZW50LmltcGxlbWVu
dGF0aW9uLmNyZWF0ZURvY3VtZW50KG51bGwsIG51bGwsIG51bGwpOworICAgICAgICAgICAgICAg
dmFyIHRlc3RPYmogPSB4bWxCYXNlZERvYy5jcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oIm15
dGFyZ2V0IiwgIm15ZGF0YSIpOworICAgICAgICAgICAgICAgaWYoNyA9PSB0ZXN0T2JqLm5vZGVU
eXBlICYmICJteXRhcmdldCIgPT0gdGVzdE9iai50YXJnZXQpCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQor
ICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRl
c3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkz
Y2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRG9jdW1lbnRfZG9jdHlwZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5
cGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5
cGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjY3ODk4Y2NhZjg5NjViNWU3MWNjMzY4ZGUxM2NlYTM0ZWUzYWY0
ZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RG9jdW1lbnRfZG9jdHlwZS5odG0KQEAgLTAsMCArMSw2MiBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBkb2N0eXBlIHByb3Bl
cnR5PC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBm
b3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERvY3VtZW50
IEludGVyZmFjZTogZG9jdHlwZS4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxl
dmVsLTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0bWwjSUQtQjYzRUQxQTMxIiAvPgorICAgIDxtZXRh
IG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IEludGVy
ZmFjZSBkb2N0eXBlIHByb3BlcnR5IiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsK
KyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0
cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgaWYoImh0bWwiID09IGRvY3VtZW50LmRv
Y3R5cGUubmFtZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAg
ICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0Pgor
ICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0
cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRG9jdW1lbnRfZG9jdHlwZTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZG9jdHlwZTIuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLmh0bQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
NGZhNmQxNmE5NjE4YTZiODZhZjBmOGRlMzc1MmE1YzVlMzUyNmQ4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2RvY3R5cGUyLmh0
bQpAQCAtMCwwICsxLDYyIEBACivvu788IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFRE
IEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQv
bG9vc2UuZHRkIj4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdo
dCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKwor
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0
aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9y
cyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNz
aW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJ
T04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+
CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGRv
Y3R5cGUgcHJvcGVydHk8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250
ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkg
b24gRG9jdW1lbnQgSW50ZXJmYWNlOiBkb2N0eXBlLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0
L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1CNjNFRDFBMzEiIC8+
CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9j
dW1lbnQgSW50ZXJmYWNlIGRvY3R5cGUgcHJvcGVydHkiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3Qp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICBpZigiLS8vVzNDLy9E
VEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iID09IGRvY3VtZW50LmRvY3R5cGUucHVibGlj
SWQpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1M
PSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+
UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3Vt
ZW50X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0RvY3VtZW50X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2Zj
ODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RG9jdW1lbnRfZ2V0RWxlbWVudHNCeVRhZ05hbWVOUy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBA
QAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0Rv
Y3VtZW50X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0RvY3VtZW50X2dldEVsZW1lbnRzQnlUYWdOYW1lTlMuaHRtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjU3Y2ZkZDdjMmVmOWJhMzQxNjM3NzhlNWFlNmM3NjQ3Y2ZiMDUyOTgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfZ2V0RWxl
bWVudHNCeVRhZ05hbWVOUy5odG0KQEAgLTAsMCArMSw2NyBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBnZXRFbGVtZW50c0J5
VGFnTmFtZU5TIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNv
bnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQ
SSBvbiBEb2N1bWVudCBJbnRlcmZhY2U6IGdldEVsZW1lbnRzQnlUYWdOYW1lTlMuIGh0dHA6Ly93
d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1s
I0lELWdldEVsQlROTlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9N
IExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGdldEVsZW1lbnRzQnlUYWdOYW1lTlMg
bWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBm
dW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
eworCisgICAgICAgICAgICAgICB2YXIgZHluYW1pY0VsZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50TlMoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vY3VzdG9tbmFtZXNwYWNlIiwgImRpdiIpOwor
ICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5hcHBlbmRDaGlsZChkeW5hbWljRWxlbSk7Cisg
ICAgICAgICAgICAgICB2YXIgdGVzdE9iajEgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZU5TKCIqIiwgImRpdiIpOworICAgICAgICAgICAgICAgdmFyIHRlc3RPYmoyID0gZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWVOUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0b21uYW1l
c3BhY2UiLCAiZGl2Iik7CisgICAgICAgICAgICAgICBpZigyID09IHRlc3RPYmoxLmxlbmd0aCAm
JiAxID09IHRlc3RPYmoyLmxlbmd0aCkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAg
IDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfaW1wb3J0Tm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfaW1wb3J0Tm9kZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Eb2N1
bWVudF9pbXBvcnROb2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfaW1wb3J0Tm9k
ZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRG9jdW1lbnRfaW1wb3J0
Tm9kZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMWI1MWNmOTdjYzYzZDE4YmZiM2NmOGQ3ODc2YTdmM2I3MDU5
NGJmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9Eb2N1bWVudF9pbXBvcnROb2RlLmh0bQpAQCAtMCwwICsxLDY0IEBACivvu788IURPQ1RZUEUg
aHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAy
MDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkg
YmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgor
CisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisg
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxo
ZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGltcG9ydE5v
ZGUgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0i
VGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIERv
Y3VtZW50IEludGVyZmFjZTogaW1wb3J0Tm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxl
dmVsLTMtQ29yZS9jb3JlLmh0bWwjQ29yZS1Eb2N1bWVudC1pbXBvcnROb2RlIiAvPgorICAgIDxt
ZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IERvY3VtZW50IElu
dGVyZmFjZSBpbXBvcnROb2RlIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAg
ICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJl
c3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAg
ICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciB4bWxCYXNlZERvYyA9IGRv
Y3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURvY3VtZW50KCJuczEiLCAicm9vdCIsIG51bGwp
OworICAgICAgICAgICAgICAgdmFyIHRlc3RPYmogPSBkb2N1bWVudC5pbXBvcnROb2RlKHhtbEJh
c2VkRG9jLmRvY3VtZW50RWxlbWVudCwgdHJ1ZSk7CisgICAgICAgICAgICAgICBpZihkb2N1bWVu
dCA9PSB0ZXN0T2JqLm93bmVyRG9jdW1lbnQgJiYgIm5zMSIgPT0gdGVzdE9iai5uYW1lc3BhY2VV
UkkgJiYgInJvb3QiID09IHhtbEJhc2VkRG9jLmRvY3VtZW50RWxlbWVudC5sb2NhbE5hbWUpCisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFp
bCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkK
KyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWls
IjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8
Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmlu
ZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfYXR0
cmlidXRlTlNJbnRlcnRvcC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRWxlbWVudF9hdHRyaWJ1dGVOU0ludGVydG9wLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfYXR0cmli
dXRlTlNJbnRlcnRvcC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfYXR0cmlidXRlTlNJ
bnRlcnRvcC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9h
dHRyaWJ1dGVOU0ludGVydG9wLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNDM3ZjRkYzhmMzUzZjVkODMwNzdj
N2MxZGM3NzA0YmQ1NGNhNmUyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfYXR0cmlidXRlTlNJbnRlcnRvcC5odG0KQEAgLTAsMCAr
MSw3MCBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVz
dCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9m
IGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgor
IHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IEVsZW1l
bnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhvZCBpbnRlcmFjdGlvbiB3aXRoIEVsZW1l
bnQgSW50ZXJmYWNlIGdldEF0dHJpYnV0ZSBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9
IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW50ZXJhY3Rpb24gYmV0d2VlbiBE
T00gTGV2ZWwgMSBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVyZmFjZTogJ2dldEF0dHJpYnV0ZScg
YW5kIERPTSBMZXZlbCAyIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJmYWNlOiAnc2V0QXR0cmli
dXRlTlMnLiBJbnRlcm9wZXJhYmlsaXR5IHRlc3RjYXNlIGludGVuZGVkIHRvIGRlbW9uc3RyYXRl
IGNyb3NzIGJyb3dzZXIgaW50ZXJvcGVyYWJpbGl0eSBpc3N1ZXMgYmFzZWQgb24gaW1wbGVtZW50
YXRpb24gc3BlY2lmaWMgYmVoYXZpb3IgaW4gdGhlIHNwZWMgZGVzY3JpYmVkIGluIERPTSBDb3Jl
LCBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3
L2NvcmUuaHRtbCNOYW1lc3BhY2VzLUNvbnNpZGVyYXRpb25zLiBGYWlsaW5nIHRoaXMgdGVzdCBk
b2VzIG5vdCBpbmRpY2F0ZSB0aGF0IGEgYnJvd3NlciBpcyBpbiB2aW9sYXRpb24gb2YgRE9NIExl
dmVsIDMgQ29yZS4gUmF0aGVyIGl0IGluZGljYXRlcyB0aGF0IHRoaXMgYnJvd3NlciBiZWhhdmVz
IGRpZmZlcmVudGx5IGZyb20gb3RoZXIgaW1wbGVtZW50YXRpb25zIGluIGFuIGFyZWEgb2YgdGhl
IHNwZWMgZGVmaW5lZCB0byBiZSBpbXBsZW1lbnRhdGlvbiBzcGVjaWZpYy4iIC8+CisgICAgPG1l
dGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogSW50ZXJhY3Rpb24g
YmV0d2VlbiBuYW1lc3BhY2UgYW5kIG5vbi1uYW1lc3BhY2UgQVBJcyIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0
eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAg
ICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYi
KVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFy
IGR5bmFtaWNFbGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9y
Zy8xOTk5L3hodG1sIiwgImRpdiIpOworICAgICAgICAgICAgICAgZHluYW1pY0VsZW0uYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoInRlc3QgdGV4dCIpKTsKKyAgICAgICAgICAg
ICAgIGR5bmFtaWNFbGVtLnNldEF0dHJpYnV0ZU5TKG51bGwsICJhbGlnbiIsICJyaWdodCIpOwor
ICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5hcHBlbmRDaGlsZChkeW5hbWljRWxlbSk7CisK
KyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0gZHluYW1pY0VsZW0uZ2V0QXR0cmlidXRlKCJh
bGlnbiIpOworCisgICAgICAgICAgICAgICBpZigicmlnaHQiID09IHRlc3RPYmopCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFz
cyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAg
ICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAg
ICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2
PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0cmli
dXRlTlMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0Vs
ZW1lbnRfaGFzQXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1
NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9oYXNBdHRyaWJ1dGVOUy1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0cmlidXRlTlMuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfaGFzQXR0cmlidXRlTlMuaHRtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmE4OTFkZjlmNWMxMWU3YTRjY2RiOGJiNDE4NzFkMDEwNTk5ZDJlZDQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9oYXNBdHRy
aWJ1dGVOUy5odG0KQEAgLTAsMCArMSw2OSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisg
SW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQg
Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0
aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwg
eG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0
bGU+RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIGhhc0F0dHJpYnV0ZU5TIG1ldGhvZDwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVy
ZmFjZTogaGFzQXR0cmlidXRlTlMuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1M
ZXZlbC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELUVsSGFzQXR0ck5TIiAvPgorICAgIDxt
ZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50
ZXJmYWNlIGhhc0F0dHJpYnV0ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAg
ICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAg
IHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2Vu
dFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAg
ICAgICAgdHJ5CisgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFyIGR5bmFtaWNFbGVt
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
IiwgImRpdiIpOworICAgICAgICAgICAgICAgZHluYW1pY0VsZW0uYXBwZW5kQ2hpbGQoZG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoInRlc3QgdGV4dCIpKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNF
bGVtLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbWF0dHJuYW1l
c3BhY2UiLCAiYWxpZ24iLCAicmlnaHQiKTsKKyAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
YXBwZW5kQ2hpbGQoZHluYW1pY0VsZW0pOworICAgICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQg
PSBkeW5hbWljRWxlbS5oYXNBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9jdXN0
b21hdHRybmFtZXNwYWNlIiwgImFsaWduIik7CisKKyAgICAgICAgICAgICAgIGlmKHRlc3RSZXN1
bHQpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0Lmlu
bmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1M
PSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+
UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1l
bnRfcmVtb3ZlQXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVtb3ZlQXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9yZW1v
dmVBdHRyaWJ1dGVOUy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVtb3ZlQXR0cmli
dXRlTlMuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfcmVt
b3ZlQXR0cmlidXRlTlMuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzMjc5ZTY3NjMyYzU1MzBhMzhjNzA3MjA3
MjM2YTM0YTM3ZWU3MDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRWxlbWVudF9yZW1vdmVBdHRyaWJ1dGVOUy5odG0KQEAgLTAsMCArMSw3MSBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50
ZXJmYWNlIHJlbW92ZUF0dHJpYnV0ZU5TIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0i
RGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00g
TGV2ZWwgMyBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVyZmFjZTogcmVtb3ZlQXR0cmlidXRlTlMu
IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAwNDA0MDcv
Y29yZS5odG1sI0lELUVsUmVtQXROUyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250
ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSByZW1vdmVBdHRyaWJ1dGVO
UyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAg
ICB7CisKKyAgICAgICAgICAgICAgIHZhciBkeW5hbWljRWxlbSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICJkaXYiKTsKKyAgICAgICAg
ICAgICAgIGR5bmFtaWNFbGVtLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJ0
ZXN0IHRleHQiKSk7CisgICAgICAgICAgICAgICBkeW5hbWljRWxlbS5zZXRBdHRyaWJ1dGVOUyhu
dWxsLCAiYWxpZ24iLCAicmlnaHQiKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNFbGVtLnNldEF0
dHJpYnV0ZU5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbWF0dHJuYW1lc3BhY2UiLCAi
YWxpZ24iLCAibGVmdCIpOworICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5hcHBlbmRDaGls
ZChkeW5hbWljRWxlbSk7CisgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgIGR5bmFtaWNF
bGVtLnJlbW92ZUF0dHJpYnV0ZU5TKG51bGwsICJhbGlnbiIpOworCisgICAgICAgICAgICAgICBp
ZighZHluYW1pY0VsZW0uaGFzQXR0cmlidXRlTlMobnVsbCwgImFsaWduIikpCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAg
ICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAg
ICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxv
YWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2Pgor
ICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfc2V0QXR0cmlidXRl
TlMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1l
bnRfc2V0QXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNj
Njg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9zZXRBdHRyaWJ1dGVOUy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0VsZW1lbnRfc2V0QXR0cmlidXRlTlMuaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0VsZW1lbnRfc2V0QXR0cmlidXRlTlMuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjVmY2YwMjk2OThhNmNhM2RiZjVmMGFlYmIzNDA4MTViZjhkZTRiZDgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRWxlbWVudF9zZXRBdHRyaWJ1
dGVOUy5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhvZDwvdGl0
bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBp
bXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBFbGVtZW50IEludGVyZmFj
ZTogc2V0QXR0cmlidXRlTlMuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZl
bC0zLUNvcmUtMjAwNDA0MDcvY29yZS5odG1sI0lELUVsU2V0QXR0ck5TIiAvPgorICAgIDxtZXRh
IG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50ZXJm
YWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAg
ICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJl
c3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAg
ICAgdHJ5CisgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFyIGR5bmFtaWNFbGVtID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwg
ImRpdiIpOworICAgICAgICAgICAgICAgZHluYW1pY0VsZW0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUoInRlc3QgdGV4dCIpKTsKKyAgICAgICAgICAgICAgIGR5bmFtaWNFbGVt
LnNldEF0dHJpYnV0ZU5TKG51bGwsICJhbGlnbiIsICJyaWdodCIpOworICAgICAgICAgICAgICAg
ZHluYW1pY0VsZW0uc2V0QXR0cmlidXRlTlMoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vY3VzdG9t
YXR0cm5hbWVzcGFjZSIsICJhbGlnbiIsICJsZWZ0Iik7CisgICAgICAgICAgICAgICBwcmVzZW50
UmVzdWx0LmFwcGVuZENoaWxkKGR5bmFtaWNFbGVtKTsKKworICAgICAgICAgICAgICAgdmFyIHRl
c3RSZXN1bHQgPSBkeW5hbWljRWxlbS5nZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy5leGFtcGxl
LmNvbS9jdXN0b21hdHRybmFtZXNwYWNlIiwgImFsaWduIik7CisKKyAgICAgICAgICAgICAgIGlm
KCJsZWZ0IiA9PSB0ZXN0UmVzdWx0KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAg
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxk
aXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfYWRvcHROb2RlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfYWRv
cHROb2RlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNh
NWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9hZG9wdE5vZGUtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfYWRvcHROb2RlLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfYWRvcHROb2RlLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5lNmZmYTczY2U5OTgyMGZhZWRlYjRkOThiMjZlMTQ1ZjhlNDU1MTgwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9hZG9wdE5vZGUuaHRtCkBAIC0wLDAgKzEsNzQgQEAKK++7vzwhRE9DVFlQRSBodG1s
PgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIg
TWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQor
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCist
LT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+
CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgYWRvcHROb2RlIG1l
dGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3Qg
Zm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBEb2N1bWVu
dCBJbnRlcmZhY2U6IGFkb3B0Tm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMt
Q29yZS9jb3JlLmh0bWwjRG9jdW1lbnQzLWFkb3B0Tm9kZSIgLz4KKyAgICA8bWV0YSBuYW1lPSJG
ZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2UgYWRv
cHROb2RlIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAg
ICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdmFy
IHhtbEJhc2VkRG9jID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlRG9jdW1lbnQoIm5z
MSIsICJyb290IiwgbnVsbCk7CisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5hZG9wdE5vZGUoeG1sQmFz
ZWREb2MpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDkgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUg
JiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAg
IDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8
ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUF0dHJpYnV0ZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3Vt
ZW50X2NyZWF0ZUF0dHJpYnV0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1
Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQXR0cmli
dXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUF0dHJp
YnV0ZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0Rv
Y3VtZW50X2NyZWF0ZUF0dHJpYnV0ZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzg3ZjRiZGFhMTZhNDdjYTYz
YzFmMDU0YmI4MTNmNGRmYTAzMGUwNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfY3JlYXRlQXR0cmlidXRlLmh0
bQpAQCAtMCwwICsxLDcyIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMg
Q29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZUF0dHJpYnV0ZSBtZXRob2Q8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVt
ZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiBj
cmVhdGVBdHRyaWJ1dGUiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9N
IExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0ZUF0dHJpYnV0ZSBtZXRob2Qi
IC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9u
IFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50
c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZh
ciByZXR1cm5WYWx1ZSA9IG51bGw7CisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5jcmVhdGVBdHRyaWJ1
dGUoIi4iKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZig1ID09IGV4Y2VwdGlvbk9iamVjdC5jb2Rl
ICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAg
ICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24tZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9E
b2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRm
YzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0
ZUNEQVRBU2VjdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9j
cmVhdGVDREFUQVNlY3Rpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVDREFUQVNlY3Rpb24uaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZj
NTA3YTk3NGQ4NzYzZDhhM2Y2YTM4YjMxZmZlM2MxYTExOTFjZWIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X2Ny
ZWF0ZUNEQVRBU2VjdGlvbi5odG0KQEAgLTAsMCArMSw3MiBAQAor77u/PCFET0NUWVBFIGh0bWw+
Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBN
aWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQg
bW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0t
PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4K
KyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IERvY3VtZW50IEludGVyZmFjZSBjcmVhdGVDREFUQVNl
Y3Rpb24gbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVu
dD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9u
IERvY3VtZW50IEludGVyZmFjZTogY3JlYXRlQ0RBVEFTZWN0aW9uLiBodHRwOi8vd3d3LnczLm9y
Zy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC1EMjZDMEFGOCIgLz4KKyAgICA8bWV0
YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBEb2N1bWVudCBJbnRl
cmZhY2UgY3JlYXRlQ0RBVEFTZWN0aW9uIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25P
YmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKyAg
ICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICByZXR1
cm5WYWx1ZSA9IGRvY3VtZW50LmNyZWF0ZUNEQVRBU2VjdGlvbigidGV4dCIpOworICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgIGlmKDkgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5W
YWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJI
VE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBj
YXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hl
YWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0
Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5
M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0RvY3VtZW50X2NyZWF0ZUVsZW1lbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50Lmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40YjJjYzFiMDE3ODI2NjE5N2Q2YTQ2NTMwM2E3ZGZmMjI0Y2Q2Y2I0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlv
bl9Eb2N1bWVudF9jcmVhdGVFbGVtZW50Lmh0bQpAQCAtMCwwICsxLDcyIEBACivvu788IURPQ1RZ
UEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDC
qSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
TWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9u
LgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04g
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
CisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cisg
IDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIGNyZWF0
ZUVsZW1lbnQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29u
dGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJ
IG9uIERvY3VtZW50IEludGVyZmFjZTogY3JlYXRlRWxlbWVudCIgLz4KKyAgICA8bWV0YSBuYW1l
PSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBEb2N1bWVudCBJbnRlcmZhY2Ug
Y3JlYXRlRWxlbWVudCBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgewor
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQg
PSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRy
eQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVs
bDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7CisgICAgICAgICAgICAg
ICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCIwIik7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRp
b25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoNSA9PSBl
eGNlcHRpb25PYmplY3QuY29kZSAmJiBudWxsID09IHJldHVyblZhbHVlKQorICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAg
IHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAg
ICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2Fk
PSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAg
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfeG1s
VmVyc2lvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RXhjZXB0aW9uX0RvY3VtZW50X3htbFZlcnNpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1
NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X3ht
bFZlcnNpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRG9jdW1lbnRfeG1sVmVy
c2lvbi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0Rv
Y3VtZW50X3htbFZlcnNpb24uaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyNTJkNTJhNzUwMzcyNzg3NTVkY2Jh
Zjg3YWVlNjllMWFmYjRjMTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0RvY3VtZW50X3htbFZlcnNpb24uaHRtCkBAIC0wLDAg
KzEsNzIgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBEb2N1
bWVudCBJbnRlcmZhY2UgeG1sVmVyc2lvbiBwcm9wZXJ0eSBzZXR0ZXI8L3RpdGxlPgorICAgIDxt
ZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRp
b24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRG9jdW1lbnQgSW50ZXJmYWNlOiB4bWxWZXJz
aW9uIHByb3BlcnR5IHNldHRlci4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29y
ZS9jb3JlLmh0bWwjSUQtRDI2QzBBRjgiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29u
dGVudD0iRE9NIExldmVsIDMgQ29yZTogRG9jdW1lbnQgSW50ZXJmYWNlIHhtbFZlcnNpb24gcHJv
cGVydHkgc2V0dGVyIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAg
ICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAg
ICAgICAgICAgICB2YXIgcHJldmlvdXNWYWx1ZSA9IGRvY3VtZW50LnhtbFZlcnNpb247CisgICAg
ICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZG9jdW1l
bnQueG1sVmVyc2lvbiA9IDM7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRj
aChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3Qg
PSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoOSA9PSBleGNlcHRpb25P
YmplY3QuY29kZSAmJiBwcmV2aW91c1ZhbHVlID09IGRvY3VtZW50LnhtbFZlcnNpb24pCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
UGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsK
KyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVt
ZW50X3NldEF0dHJpYnV0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9F
bGVtZW50X3NldEF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVt
ZW50X3NldEF0dHJpYnV0ZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
RXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YTZiMThjMWVi
MjVmZjBmNDFkNTQ1YjMwZWIwNDY5NGE4OGU0OGM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0
ZS5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJu
ZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9y
YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAor
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
IG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBu
b3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9
Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9N
IEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZSBtZXRob2Q8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVt
ZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6IHNl
dEF0dHJpYnV0ZS4gSU5WQUxJRF9DSEFSQUNURVJfRVJSOiBSYWlzZWQgaWYgdGhlIHNwZWNpZmll
ZCBuYW1lIGlzIG5vdCBhbiBYTUwgbmFtZSBhY2NvcmRpbmcgdG8gdGhlIFhNTCB2ZXJzaW9uIGlu
IHVzZSBzcGVjaWZpZWQgaW4gdGhlIERvY3VtZW50LnhtbFZlcnNpb24gYXR0cmlidXRlLiBodHRw
Oi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC1GNjhGMDgyIiAv
PgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVs
ZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rl
c3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFy
IHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07
CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0
aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBlbGVtTm9kZSA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImZvbyIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgZWxlbU5vZGUuc2V0QXR0cmlidXRlKCIuIiwgInZhbHVl
Iik7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgaWYoNSA9PSBleGNlcHRpb25PYmplY3QuY29kZSkKKyAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1M
PSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWls
IjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQor
ICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwi
OworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxi
b2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5n
PC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0Vs
ZW1lbnRfc2V0QXR0cmlidXRlTlMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2Vw
dGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQ
YXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0
aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zODhkMjIwNmZlNTgwNmQ4OGQ3YzdiMmU1NThiYTFlYzI3MDQyNDdkCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50
X3NldEF0dHJpYnV0ZU5TLmh0bQpAQCAtMCwwICsxLDczIEBACivvu788IURPQ1RZUEUgaHRtbD4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgor
ICAgIDx0aXRsZT5ET00gTDMgQ29yZTogRWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMg
bWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVz
dCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIEVsZW1l
bnQgSW50ZXJmYWNlOiBzZXRBdHRyaWJ1dGVOUy4gTkFNRVNQQUNFX0VSUjogUmFpc2VkIGlmIHRo
ZSBxdWFsaWZpZWROYW1lIGlzIG1hbGZvcm1lZCBwZXIgdGhlIE5hbWVzcGFjZXMgaW4gWE1MIHNw
ZWNpZmljYXRpb24uIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5o
dG1sI0lELUVsU2V0QXR0ck5TIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9
IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhv
ZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rp
b24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1l
bnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAgICAg
dmFyIGVsZW1Ob2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZm9vIik7CisKKyAgICAgICAg
ICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBlbGVtTm9kZS5z
ZXRBdHRyaWJ1dGVOUygibnMxIiwgIjoiLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
IGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBp
ZigxNCA9PSBleGNlcHRpb25PYmplY3QuY29kZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRt
bD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
RWxlbWVudF9zZXRBdHRyaWJ1dGVOUzItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3
ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmli
dXRlTlMyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmli
dXRlTlMyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
RWxlbWVudF9zZXRBdHRyaWJ1dGVOUzIuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU0NTA4ZTQ0YTgwNTI4OTUy
ZTk1ZTA4MjdjOGYyOGVlZjI4NDJjNTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlMyLmh0
bQpAQCAtMCwwICsxLDczIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMg
Q29yZTogRWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0aG9kPC90aXRsZT4KKyAg
ICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVu
dGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIEVsZW1lbnQgSW50ZXJmYWNlOiBzZXRB
dHRyaWJ1dGVOUy4gTkFNRVNQQUNFX0VSUjogaWYgdGhlIHF1YWxpZmllZE5hbWUgaGFzIGEgcHJl
Zml4IGFuZCB0aGUgbmFtZXNwYWNlVVJJIGlzIG51bGwuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RP
TS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELUVsU2V0QXR0ck5TIiAvPgorICAgIDxtZXRhIG5h
bWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNl
IHNldEF0dHJpYnV0ZU5TIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7
CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3Vs
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAg
dHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBu
dWxsOworICAgICAgICAgICAgICAgdmFyIGVsZW1Ob2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZm9vIik7CisKKyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICBlbGVtTm9kZS5zZXRBdHRyaWJ1dGVOUyhudWxsLCAicHJlMTphdHRyTmFtZSIs
ICJ2YWx1ZSIpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDE0ID09IGV4Y2VwdGlvbk9iamVjdC5j
b2RlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNh
dGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRN
TD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVh
ZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQi
PlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TMy1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcx
OTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzMtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzMuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5TMy5o
dG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMzVjM2RhZjUwOTVkNGE1OGQ5ZWNiOWEzMmExM2UyYTE0NDAxODM1MQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzMuaHRtCkBAIC0wLDAgKzEsNzMgQEAKK++7vzwh
RE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJp
Z2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
CisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMK
KyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9m
IHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0
b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1p
c3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JB
VElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
Ij4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50IEludGVyZmFjZSBz
ZXRBdHRyaWJ1dGVOUyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9u
IiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29y
ZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6IHNldEF0dHJpYnV0ZU5TLiBOQU1FU1BBQ0VfRVJS
OiBpZiB0aGUgcXVhbGlmaWVkTmFtZSBoYXMgYSBwcmVmaXggdGhhdCBpcyAneG1sJyBhbmQgdGhl
IG5hbWVzcGFjZVVSSSBpcyBkaWZmZXJlbnQgZnJvbSAnaHR0cDovL3d3dy53My5vcmcvWE1MLzE5
OTgvbmFtZXNwYWNlJy4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3Jl
Lmh0bWwjSUQtRWxTZXRBdHRyTlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVu
dD0iRE9NIExldmVsIDMgQ29yZTogRWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0
aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAg
ICB2YXIgZWxlbU5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb28iKTsKKworICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGVsZW1Ob2Rl
LnNldEF0dHJpYnV0ZU5TKCJuczEiLCAieG1sOmF0dHJOYW1lIiwgInZhbHVlIik7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgaWYoMTQgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUpCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAg
eworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAg
ICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8
L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0
dHJpYnV0ZU5TNC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM0LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVt
ZW50X3NldEF0dHJpYnV0ZU5TNC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVt
ZW50X3NldEF0dHJpYnV0ZU5TNC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTlM0Lmh0bQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMWEx
ODM1MmExY2Y5ZDdjYWU0N2IwOTE1N2JkNzRkMWQ4OWE5NTkwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0
dHJpYnV0ZU5TNC5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0t
CisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZp
Y2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0
bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8
dGl0bGU+RE9NIEwzIENvcmU6IEVsZW1lbnQgSW50ZXJmYWNlIHNldEF0dHJpYnV0ZU5TIG1ldGhv
ZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9y
IHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBFbGVtZW50IElu
dGVyZmFjZTogc2V0QXR0cmlidXRlTlMuIE5BTUVTUEFDRV9FUlI6IGlmIHRoZSBxdWFsaWZpZWRO
YW1lIG9yIGl0cyBwcmVmaXggaXMgJ3htbG5zJyBhbmQgdGhlIG5hbWVzcGFjZVVSSSBpcyBkaWZm
ZXJlbnQgZnJvbSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC94bWxucy8nLiBodHRwOi8vd3d3Lncz
Lm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC1FbFNldEF0dHJOUyIgLz4KKyAg
ICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50
IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3Qp
CisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHBy
ZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07Cisg
ICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9u
T2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBlbGVtTm9kZSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImZvbyIpOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgZWxlbU5vZGUuc2V0QXR0cmlidXRlTlMoIm5zMSIsICJ4bWxu
czphdHRyTmFtZSIsICJ2YWx1ZSIpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
Y2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2Jq
ZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDE0ID09IGV4Y2Vw
dGlvbk9iamVjdC5jb2RlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9Cisg
ICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVz
dWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3Jp
cHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9
InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzUtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0
dHJpYnV0ZU5TNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4
Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzUuaHRtIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0
dHJpYnV0ZU5TNS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWNjMDIyNzU4MmQ4ZmQ0ZTQ2NDM2OTQ0NTQ3MjQ3
ZWM2YTM1NTIzOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fRWxlbWVudF9zZXRBdHRyaWJ1dGVOUzUuaHRtCkBAIC0wLDAgKzEs
NzMgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBFbGVtZW50
IEludGVyZmFjZSBzZXRBdHRyaWJ1dGVOUyBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9
IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9N
IExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6IHNldEF0dHJpYnV0ZU5TLiBO
QU1FU1BBQ0VfRVJSOiBvciBpZiB0aGUgbmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3htbG5zLycgYW5kIG5laXRoZXIgdGhlIHF1YWxpZmllZE5hbWUgbm9yIGl0cyBwcmVm
aXggaXMgJ3htbG5zJy4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3Jl
Lmh0bWwjSUQtRWxTZXRBdHRyTlMiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVu
dD0iRE9NIExldmVsIDMgQ29yZTogRWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTlMgbWV0
aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAg
ICB2YXIgZWxlbU5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb28iKTsKKworICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGVsZW1Ob2Rl
LnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3htbG5zLyIsICJwcmU6YXR0
ck5hbWUiLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNo
KGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9
IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigxNCA9PSBleGNlcHRpb25P
YmplY3QuY29kZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAg
ICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5p
bm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0Pgor
ICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0
cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTm9kZTItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJp
YnV0ZU5vZGUyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhj
YjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5vZGUyLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX0VsZW1lbnRfc2V0QXR0cmlidXRlTm9kZTIuaHRt
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3Nl
dEF0dHJpYnV0ZU5vZGUyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45Yzg4MjdlYzM1NDkxZDMxOGIzMTliYmE3
Njg1MTEzZGI0Zjc3MDAxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9FbGVtZW50X3NldEF0dHJpYnV0ZU5vZGUyLmh0bQpAQCAt
MCwwICsxLDczIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTog
RWxlbWVudCBJbnRlcmZhY2Ugc2V0QXR0cmlidXRlTm9kZSBtZXRob2Q8L3RpdGxlPgorICAgIDxt
ZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRp
b24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gRWxlbWVudCBJbnRlcmZhY2U6IHNldEF0dHJp
YnV0ZU5vZGUuIElOVVNFX0FUVFJJQlVURV9FUlI6IFJhaXNlZCBpZiBuZXdBdHRyIGlzIGFscmVh
ZHkgYW4gYXR0cmlidXRlIG9mIGFub3RoZXIgRWxlbWVudCBvYmplY3QuIGh0dHA6Ly93d3cudzMu
b3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELTg4NzIzNjE1NCIgLz4KKyAgICA8
bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBFbGVtZW50IElu
dGVyZmFjZSBzZXRBdHRyaWJ1dGVOb2RlIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25P
YmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIGVsZW1Ob2RlID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiZm9vIik7CisKKyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICBlbGVtTm9kZS5zZXRBdHRyaWJ1dGVOb2RlKHByZXNlbnRSZXN1
bHQuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKSk7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICBjYXRjaChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRp
b25PYmplY3QgPSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoMTAgPT0g
ZXhjZXB0aW9uT2JqZWN0LmNvZGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
IH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8
L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxkLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGls
ZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRk
ZTcxOTNjZmM4MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxkLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZC5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGRi
MThjMWFlYmRjNGZlOTgzNGZlNWY0MWY0ODUwMzA4ZjZjZjdjYwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBlbmRD
aGlsZC5odG0KQEAgLTAsMCArMSw3MyBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGFwcGVuZENoaWxkIG1ldGhvZDwvdGl0bGU+Cisg
ICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1l
bnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogYXBwZW5k
Q2hpbGQuIEhJRVJBUkNIWV9SRVFVRVNUX0VSUjogUmFpc2VkIGlmIHRoaXMgbm9kZSBpcyBvZiBh
IHR5cGUgdGhhdCBkb2VzIG5vdCBhbGxvdyBjaGlsZHJlbiBvZiB0aGUgdHlwZSBvZiB0aGUgbmV3
Q2hpbGQgbm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0
bWwjSUQtMTg0RTcxMDciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9N
IExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgYXBwZW5kQ2hpbGQgbWV0aG9kIiAvPgorICAg
IDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0
KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05h
bWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJu
VmFsdWUgPSBudWxsOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVBdHRyaWJ1dGUoImF0dHJpYnV0ZSIpKTsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4
Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigz
ID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFz
cyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAg
ICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAg
ICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2
PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2Fw
cGVuZENoaWxkMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVu
ZENoaWxkMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxk
Mi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVf
YXBwZW5kQ2hpbGQyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44Yzc3YmM2Y2M4MjVlYWEzZjQzNzg1Njg3N2E2
Njc4NzUwOGI0ZDM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2FwcGVuZENoaWxkMi5odG0KQEAgLTAsMCArMSw3MyBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJm
YWNlIGFwcGVuZENoaWxkIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRp
b24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBD
b3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogYXBwZW5kQ2hpbGQuIEhJRVJBUkNIWV9SRVFVRVNU
X0VSUjogb3IgaWYgdGhlIG5vZGUgdG8gYXBwZW5kIGlzIG9uZSBvZiB0aGlzIG5vZGUncyBhbmNl
c3RvcnMgb3IgdGhpcyBub2RlIGl0c2VsZi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVs
LTMtQ29yZS9jb3JlLmh0bWwjSUQtMTg0RTcxMDciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVy
ZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgYXBwZW5kQ2hpbGQg
bWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBm
dW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
eworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAg
ICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxsOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHkpOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0
aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDMgPT0g
ZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsK
KyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAg
ICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAg
ICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9h
ZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+Cisg
IDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5k
Q2hpbGQzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9F
eGNlcHRpb25fTm9kZV9hcHBlbmRDaGlsZDMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRm
YzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hp
bGQzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQzLmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9hcHBl
bmRDaGlsZDMuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2OTcxZTk5ZGU2MTg4NThhMmU3NDA3YzkzZjUzNjQx
ZGFkZWJjNzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2NvcmUvRXhjZXB0aW9uX05vZGVfYXBwZW5kQ2hpbGQzLmh0bQpAQCAtMCwwICsxLDczIEBACivv
u788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENv
cHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRy
aWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBw
ZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09S
UE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2Ug
YXBwZW5kQ2hpbGQgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIg
Y29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUg
QVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBhcHBlbmRDaGlsZC4gSElFUkFSQ0hZX1JFUVVFU1RfRVJS
OiBvciBpZiB0aGlzIG5vZGUgaXMgb2YgdHlwZSBEb2N1bWVudCBhbmQgdGhlIERPTSBhcHBsaWNh
dGlvbiBhdHRlbXB0cyB0byBhcHBlbmQgYSBzZWNvbmQgRG9jdW1lbnRUeXBlIG9yIEVsZW1lbnQg
bm9kZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQt
MTg0RTcxMDciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVs
IDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgYXBwZW5kQ2hpbGQgbWV0aG9kIiAvPgorICAgIDxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3Bl
cnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAg
ICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRp
diIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFy
IGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFsdWUg
PSBudWxsOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJyb290IikpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0
Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0
ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDMgPT0gZXhjZXB0aW9u
T2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAg
ICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9Cisg
ICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVz
dCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4K
KzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25f
Tm9kZV9pbnNlcnRCZWZvcmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNj
Njg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUu
aHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjAyMjQ1MmUwYTBiZThiNDJkNjBmY2RlZDRmNzE3NWRlODc2NzBmYTYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlLmh0bQpAQCAtMCwwICsxLDczIEBACivvu788IURPQ1RZ
UEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDC
qSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUg
TWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9u
LgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04g
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
CisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Cisg
IDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgaW5zZXJ0QmVm
b3JlIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9
IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBO
b2RlIEludGVyZmFjZTogaW5zZXJ0QmVmb3JlLiBISUVSQVJDSFlfUkVRVUVTVF9FUlI6IFJhaXNl
ZCBpZiB0aGlzIG5vZGUgaXMgb2YgYSB0eXBlIHRoYXQgZG9lcyBub3QgYWxsb3cgY2hpbGRyZW4g
b2YgdGhlIHR5cGUgb2YgdGhlIG5ld0NoaWxkIG5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RP
TS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lELTk1MjI4MDcyNyIgLz4KKyAgICA8bWV0YSBuYW1l
PSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpbnNl
cnRCZWZvcmUgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4K
KyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7Cisg
ICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFsdWUgPSBudWxsOworCisgICAgICAgICAgICAgICB0
cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1
bWVudC5pbnNlcnRCZWZvcmUoZG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlKCJhdHRyaWJ1dGUiKSwg
ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlv
bk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigzID09IGV4
Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJuVmFsdWUpCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAg
eworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAg
ICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8
L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJl
Zm9yZTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1MzNm
NDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfaW5zZXJ0QmVm
b3JlMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQYXNzCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZv
cmUyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9k
ZV9pbnNlcnRCZWZvcmUyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZmYyMTc3MTBlNzEzM2U4MTI4N2U4Mzc5
YTU4NzE0OTE1MTQ3OGY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTIuaHRtCkBAIC0wLDAgKzEs
NzcgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIElu
dGVyZmFjZSBpbnNlcnRCZWZvcmUgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNj
cmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZl
bCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBpbnNlcnRCZWZvcmUuIEhJRVJBUkNIWV9S
RVFVRVNUX0VSUjogb3IgaWYgdGhlIG5vZGUgdG8gaW5zZXJ0IGlzIG9uZSBvZiB0aGlzIG5vZGUn
cyBhbmNlc3RvcnMgb3IgdGhpcyBub2RlIGl0c2VsZi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9N
LUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjSUQtOTUyMjgwNzI3IiAvPgorICAgIDxtZXRhIG5hbWU9
IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGluc2Vy
dEJlZm9yZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1
bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAg
ICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7CisKKyAgICAgICAgICAgICAgIHZh
ciB0ZXN0UGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhcmVudEVsZW0iKTsKKyAg
ICAgICAgICAgICAgIHZhciB0ZXN0Q2hpbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hp
bGRFbGVtIik7CisKKyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICByZXR1cm5WYWx1ZSA9IHRlc3RQYXJlbnQuaW5zZXJ0QmVmb3JlKHRlc3RQYXJl
bnQsIHRlc3RDaGlsZCk7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChl
KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBl
OworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoMyA9PSBleGNlcHRpb25PYmpl
Y3QuY29kZSAmJiBudWxsID09IHJldHVyblZhbHVlKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8c3BhbiBpZD0i
cGFyZW50RWxlbSI+PHNwYW4gaWQ9ImNoaWxkRWxlbSI+PC9zcGFuPjwvc3Bhbj4KKyAgPC9ib2R5
PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUz
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRp
b25fTm9kZV9pbnNlcnRCZWZvcmUzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1
NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmUzLmh0bSBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRC
ZWZvcmUzLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yM2ExNDhhMWZiZTk4YTVjNmM0NzdhMTU1YjAwN2Y3ZTUw
M2Q2NWZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTMuaHRtCkBAIC0wLDAgKzEsNzMgQEAKK++7
vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29w
eXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1l
IG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJp
YnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBl
cm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
KyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBp
bnNlcnRCZWZvcmUgbWV0aG9kPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIg
Y29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUg
QVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBpbnNlcnRCZWZvcmUuIEhJRVJBUkNIWV9SRVFVRVNUX0VS
Ujogb3IgaWYgdGhpcyBub2RlIGlzIG9mIHR5cGUgRG9jdW1lbnQgYW5kIHRoZSBET00gYXBwbGlj
YXRpb24gYXR0ZW1wdHMgdG8gaW5zZXJ0IGEgc2Vjb25kIERvY3VtZW50VHlwZSBvciBFbGVtZW50
IG5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0lE
LTk1MjI4MDcyNyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2
ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpbnNlcnRCZWZvcmUgbWV0aG9kIiAvPgorICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHBy
b3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUo
ImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAg
dmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIgcmV0dXJuVmFs
dWUgPSBudWxsOworCisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSBkb2N1bWVudC5pbnNlcnRCZWZvcmUoZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgibmV3cm9vdCIpLCBkb2N1bWVudC5maXJzdENoaWxkKTsKKyAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBpZigzID09IGV4Y2VwdGlvbk9iamVjdC5jb2RlICYmIG51bGwgPT0gcmV0dXJu
VmFsdWUpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0
LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVy
SFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAg
Y2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJI
VE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9o
ZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3Vs
dCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4
Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJlZm9yZTUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjA1MzNmNDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhj
ZXB0aW9uX05vZGVfaW5zZXJ0QmVmb3JlNS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQ
YXNzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNl
cHRpb25fTm9kZV9pbnNlcnRCZWZvcmU1Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9FeGNlcHRpb25fTm9kZV9pbnNlcnRCZWZvcmU1Lmh0bQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMDky
ODVkOGQ1NzVhZjczY2Q5NDZjZTRkMjNlODA0ZTIyNTU2ZDQ2Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX2luc2VydEJl
Zm9yZTUuaHRtCkBAIC0wLDAgKzEsNzUgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxl
PkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpbnNlcnRCZWZvcmUgbWV0aG9kPC90aXRsZT4K
KyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxl
bWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBpbnNl
cnRCZWZvcmUuIE5PVF9GT1VORF9FUlI6IFJhaXNlZCBpZiByZWZDaGlsZCBpcyBub3QgYSBjaGls
ZCBvZiB0aGlzIG5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29y
ZS5odG1sI0lELTk1MjI4MDcyNyIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50
PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpbnNlcnRCZWZvcmUgbWV0aG9kIiAv
PgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBS
dW5UZXN0KHByb3BlcnR5VG9UZXN0KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgdmFyIGV4Y2VwdGlvbk9iamVjdCA9IG51bGw7CisgICAgICAgICAgICAgICB2YXIg
cmV0dXJuVmFsdWUgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHNpYmxpbmdFbGVtID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpYmxpbmciKTsKKworICAgICAgICAgICAgICAgdHJ5Cisg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHJldHVyblZhbHVlID0gcHJlc2VudFJl
c3VsdC5pbnNlcnRCZWZvcmUoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLCBzaWJsaW5n
RWxlbSk7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRjaChlKQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3QgPSBlOworICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoOCA9PSBleGNlcHRpb25PYmplY3QuY29kZSAm
JiBudWxsID09IHJldHVyblZhbHVlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAg
PC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxk
aXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8ZGl2IGlkPSJzaWJsaW5nIj48
L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9k
ZV9wcmVmaXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX3ByZWZpeC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUzM2Y0NTQ5
MGMxODY2ODg3MWIwMWJiZjY4N2FiOTQ5OWIxM2M3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUGFzcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Lmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXguaHRtCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmZmNGQ2NWUwMjdjNzRiYzRmZTQ5MjI5NmMxMWI3NzFiNGE3MTA1N2YKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05v
ZGVfcHJlZml4Lmh0bQpAQCAtMCwwICsxLDc3IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0K
KyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj
YXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBv
cmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRt
bCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0
aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgcHJlZml4IHByb3BlcnR5IHNldHRlcjwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFj
ZTogcHJlZml4IHNldHRlci4gSU5WQUxJRF9DSEFSQUNURVJfRVJSOiBSYWlzZWQgaWYgdGhlIHNw
ZWNpZmllZCBwcmVmaXggY29udGFpbnMgYW4gaWxsZWdhbCBjaGFyYWN0ZXIgYWNjb3JkaW5nIHRv
IHRoZSBYTUwgdmVyc2lvbiBpbiB1c2Ugc3BlY2lmaWVkIGluIHRoZSBEb2N1bWVudC54bWxWZXJz
aW9uIGF0dHJpYnV0ZS4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3Jl
Lmh0bWwjSUQtTm9kZU5TUHJlZml4IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRl
bnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHByZWZpeCBwcm9wZXJ0eSBzZXR0
ZXIiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0
aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAg
IHZhciBwcmV2aW91c1ZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdmFyIHByZWZpeGVk
RWxlbSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygibnMxIiwgInByZTE6Zm9vIik7CisgICAg
ICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHByZWZpeGVkRWxlbSk7CisgICAg
ICAgICAgICAgICBwcmV2aW91c1ZhbHVlID0gcHJlZml4ZWRFbGVtLnByZWZpeDsKKworICAgICAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHByZWZpeGVk
RWxlbS5wcmVmaXggPSAiLiI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBjYXRj
aChlKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICBleGNlcHRpb25PYmplY3Qg
PSBlOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgaWYoNSA9PSBleGNlcHRpb25P
YmplY3QuY29kZSAmJiBwcmV2aW91c1ZhbHVlID09IHByZWZpeGVkRWxlbS5wcmVmaXgpCisgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0i
UGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAg
ICAgICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsK
KyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2Rl
X3ByZWZpeDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX3ByZWZpeDItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1MzNmNDU0
OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcHJlZml4Mi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQYXNzCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgyLmh0bSBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9wcmVmaXgyLmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40YmJhYjg2Y2I4MTMwYmIzN2RlNjVhYWY1ODZhMTgyODk2MzZmZjNmCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlv
bl9Ob2RlX3ByZWZpeDIuaHRtCkBAIC0wLDAgKzEsNzcgQEAKK++7vzwhRE9DVFlQRSBodG1sPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+Cisg
ICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBwcmVmaXggcHJvcGVydHkgc2V0
dGVyPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBm
b3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50
ZXJmYWNlOiBwcmVmaXggc2V0dGVyLiBOQU1FU1BBQ0VfRVJSOiBSYWlzZWQgaWYgdGhlIHNwZWNp
ZmllZCBwcmVmaXggaXMgbWFsZm9ybWVkIHBlciB0aGUgTmFtZXNwYWNlcyBpbiBYTUwgc3BlY2lm
aWNhdGlvbi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwj
SUQtTm9kZU5TUHJlZml4IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRP
TSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHByZWZpeCBwcm9wZXJ0eSBzZXR0ZXIiIC8+
CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1
blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICB2YXIgZXhjZXB0aW9uT2JqZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBw
cmV2aW91c1ZhbHVlID0gbnVsbDsKKworICAgICAgICAgICAgICAgdmFyIHByZWZpeGVkRWxlbSA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygibnMxIiwgInByZTE6Zm9vIik7CisgICAgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHByZWZpeGVkRWxlbSk7CisgICAgICAgICAg
ICAgICBwcmV2aW91c1ZhbHVlID0gcHJlZml4ZWRFbGVtLnByZWZpeDsKKworICAgICAgICAgICAg
ICAgdHJ5CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIHByZWZpeGVkRWxlbS5w
cmVmaXggPSAieG1sIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGNhdGNoKGUp
CisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbk9iamVjdCA9IGU7
CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBpZigxNCA9PSBleGNlcHRpb25PYmpl
Y3QuY29kZSAmJiBwcmV2aW91c1ZhbHVlID09IHByZWZpeGVkRWxlbS5wcmVmaXgpCisgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFz
cyI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAg
ICAgICAgeworICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAg
ICAgICAgICAgfQorICAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2
PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3Jl
bW92ZUNoaWxkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FeGNlcHRpb25fTm9kZV9yZW1vdmVDaGlsZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUz
M2Y0NTQ5MGMxODY2ODg3MWIwMWJiZjY4N2FiOTQ5OWIxM2M3MQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZW1vdmVD
aGlsZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQYXNzCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZW1vdmVDaGls
ZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVf
cmVtb3ZlQ2hpbGQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1MDg1MzcwMmY1NzY2OGE2ODA3Y2U0YmNjMWNi
ZDFkNjZkYzVlNzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVtb3ZlQ2hpbGQuaHRtCkBAIC0wLDAgKzEsNzUgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFj
ZSByZW1vdmVDaGlsZCBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9u
IiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29y
ZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IHJlbW92ZUNoaWxkLiBOT1RfRk9VTkRfRVJSOiBSYWlz
ZWQgaWYgb2xkQ2hpbGQgaXMgbm90IGEgY2hpbGQgb2YgdGhpcyBub2RlLiBodHRwOi8vd3d3Lncz
Lm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC0xNzM0ODM0MDY2IiAvPgorICAg
IDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50
ZXJmYWNlIHJlbW92ZUNoaWxkIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAg
ICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJl
c3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAg
ICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3Qg
PSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKyAgICAgICAg
ICAgICAgIHZhciBzaWJsaW5nRWxlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWJsaW5n
Iik7CisKKyAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICByZXR1cm5WYWx1ZSA9IHByZXNlbnRSZXN1bHQucmVtb3ZlQ2hpbGQoc2libGluZ0VsZW0p
OworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgIGlmKDggPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVs
bCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRS
ZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQor
ICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2Ny
aXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlk
PSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0ic2libGluZyI+PC9kaXY+
CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVw
bGFjZUNoaWxkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1
MzNmNDU0OTBjMTg2Njg4NzFiMDFiYmY2ODdhYjk0OTliMTNjNzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFj
ZUNoaWxkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1Bhc3MKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VD
aGlsZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05v
ZGVfcmVwbGFjZUNoaWxkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMzE5YzI5ODJiYThjZjVjYmMwZGExNmQ0
NDViMmEyZGUwNWZjYTU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZC5odG0KQEAgLTAsMCArMSw3
NSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50
ZXJmYWNlIHJlcGxhY2VDaGlsZCBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2Ny
aXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVs
IDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IHJlcGxhY2VDaGlsZC4gSElFUkFSQ0hZX1JF
UVVFU1RfRVJSOiBSYWlzZWQgaWYgdGhpcyBub2RlIGlzIG9mIGEgdHlwZSB0aGF0IGRvZXMgbm90
IGFsbG93IGNoaWxkcmVuIG9mIHRoZSB0eXBlIG9mIHRoZSBuZXdDaGlsZCBub2RlLiBodHRwOi8v
d3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC03ODU4ODczMDciIC8+
CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9k
ZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25P
YmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKyAg
ICAgICAgICAgICAgIHZhciB0ZXN0UGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBh
cmVudEVsZW0iKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0Q2hpbGQgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiY2hpbGRFbGVtIik7CisgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSB0ZXN0UGFyZW50LnJlcGxhY2VD
aGlsZChkb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUoImF0dHJpYnV0ZSIpLCB0ZXN0Q2hpbGQpOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGlmKDMgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9
PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAg
ICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3Vs
dC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0
PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0
ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPHNwYW4gaWQ9InBhcmVudEVsZW0iPjxzcGFu
IGlkPSJjaGlsZEVsZW0iPjwvc3Bhbj48L3NwYW4+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMi1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNo
aWxkMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUzM2Y0NTQ5MGMxODY2ODg3MWIwMWJiZjY4
N2FiOTQ5OWIxM2M3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK1Bhc3MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDIuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDIuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjlmNmQ0NzNiNzI5MTZiNWQzNDc5ODg3Zjk0YTIyZDM3NDRhZGZjNTkKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9u
X05vZGVfcmVwbGFjZUNoaWxkMi5odG0KQEAgLTAsMCArMSw3NSBAQAor77u/PCFET0NUWVBFIGh0
bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAx
MiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJl
CisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKwor
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJ
UyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
Ky0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVh
ZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHJlcGxhY2VDaGlsZCBt
ZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0
IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJ
bnRlcmZhY2U6IHJlcGxhY2VDaGlsZC4gSElFUkFSQ0hZX1JFUVVFU1RfRVJSOiBvciBpZiB0aGUg
bm9kZSB0byBwdXQgaW4gaXMgb25lIG9mIHRoaXMgbm9kZSdzIGFuY2VzdG9ycyBvciB0aGlzIG5v
ZGUgaXRzZWxmLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRt
bCNJRC03ODU4ODczMDciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9N
IExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1ldGhvZCIgLz4KKyAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVz
dChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKwor
ICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAgICAgdmFyIHJldHVy
blZhbHVlID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0UGFyZW50ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInBhcmVudEVsZW0iKTsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0Q2hp
bGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hpbGRFbGVtIik7CisgICAgICAgICAgICAg
ICB0cnkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgcmV0dXJuVmFsdWUgPSB0
ZXN0UGFyZW50LnJlcGxhY2VDaGlsZCh0ZXN0UGFyZW50LCB0ZXN0Q2hpbGQpOworICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgIGlmKDMgPT0gZXhjZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5W
YWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQu
aW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJI
VE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBj
YXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhU
TUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hl
YWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0
Ij5SdW5uaW5nPC9kaXY+CisgICAgPHNwYW4gaWQ9InBhcmVudEVsZW0iPjxzcGFuIGlkPSJjaGls
ZEVsZW0iPjwvc3Bhbj48L3NwYW4+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkMy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUzM2Y0NTQ5MGMxODY2ODg3MWIwMWJiZjY4N2FiOTQ5OWIx
M2M3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIg
QEAKK1Bhc3MKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDMuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDMuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmIyM2JiYzkxMTFiODNmMTA3OTFjNzE2NzEwNGJhZmMyNjBhZmUwMzUKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVw
bGFjZUNoaWxkMy5odG0KQEAgLTAsMCArMSw3NSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0t
CisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZp
Y2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPCEt
LSBjb21tZW50IGJlZm9yZSByb290IGVsZW1lbnQgLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTog
Tm9kZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFt
ZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBE
T00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogcmVwbGFjZUNoaWxkLiBISUVS
QVJDSFlfUkVRVUVTVF9FUlI6IG9yIGlmIHRoaXMgbm9kZSBpcyBvZiB0eXBlIERvY3VtZW50IGFu
ZCB0aGUgcmVzdWx0IG9mIHRoZSByZXBsYWNlbWVudCBvcGVyYXRpb24gd291bGQgYWRkIGEgc2Vj
b25kIERvY3VtZW50VHlwZSBvciBFbGVtZW50IG9uIHRoZSBEb2N1bWVudCBub2RlLiBodHRwOi8v
d3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3JlL2NvcmUuaHRtbCNJRC03ODU4ODczMDciIC8+
CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9k
ZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iik7CisgICAg
ICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgZXhjZXB0aW9uT2Jq
ZWN0ID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciByZXR1cm5WYWx1ZSA9IG51bGw7CisKKyAg
ICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICByZXR1
cm5WYWx1ZSA9IGRvY3VtZW50LnJlcGxhY2VDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJy
b290IiksIGRvY3VtZW50LmRvY3R5cGUpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgY2F0Y2goZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9u
T2JqZWN0ID0gZTsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDMgPT0gZXhj
ZXB0aW9uT2JqZWN0LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuZmlyc3RDaGlsZC5kYXRhPSJQYXNz
IjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuZmlyc3RDaGlsZC5kYXRhPSJGYWls
IjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQor
ICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5maXJzdENoaWxkLmRhdGE9
IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+
CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5S
dW5uaW5nPC9kaXY+CisgICAgPGlmcmFtZSBpZD0idGVzdGlmcmFtZSI+PC9pZnJhbWU+CisgIDwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQ1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9yZXBsYWNlQ2hpbGQ1LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTMzZjQ1NDkwYzE4NjY4ODcxYjAxYmJmNjg3YWI5NDk5
YjEzYzcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9j
b3JlL0V4Y2VwdGlvbl9Ob2RlX3JlcGxhY2VDaGlsZDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MiBAQAorUGFzcworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkNS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvRXhjZXB0aW9uX05vZGVfcmVwbGFjZUNoaWxkNS5odG0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMTk1NTFkODNhZWVmZjhkMjcwZTMyMmNkZTZiNmJkN2I5ZmI3MmFlYwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9FeGNlcHRpb25fTm9kZV9y
ZXBsYWNlQ2hpbGQ1Lmh0bQpAQCAtMCwwICsxLDc1IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAg
IDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1ldGhvZDwv
dGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFj
ZTogcmVwbGFjZUNoaWxkLiBOT1RfRk9VTkRfRVJSOiBSYWlzZWQgaWYgb2xkQ2hpbGQgaXMgbm90
IGEgY2hpbGQgb2YgdGhpcyBub2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1D
b3JlL2NvcmUuaHRtbCNJRC03ODU4ODczMDciIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIg
Y29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgcmVwbGFjZUNoaWxkIG1l
dGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVu
Y3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgIHZhciBleGNlcHRpb25PYmplY3QgPSBudWxsOworICAgICAgICAgICAg
ICAgdmFyIHJldHVyblZhbHVlID0gbnVsbDsKKyAgICAgICAgICAgICAgIHZhciBzaWJsaW5nRWxl
bSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWJsaW5nIik7CisKKyAgICAgICAgICAgICAg
IHRyeQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICByZXR1cm5WYWx1ZSA9IHBy
ZXNlbnRSZXN1bHQucmVwbGFjZUNoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKSwg
c2libGluZ0VsZW0pOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgY2F0Y2goZSkK
KyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgZXhjZXB0aW9uT2JqZWN0ID0gZTsK
KyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGlmKDggPT0gZXhjZXB0aW9uT2JqZWN0
LmNvZGUgJiYgbnVsbCA9PSByZXR1cm5WYWx1ZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAg
fQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4K
KyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0ic2li
bGluZyI+PC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9j
b21wYXJlRG9jdW1lbnRQb3NpdGlvbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2Nv
bXBhcmVEb2N1bWVudFBvc2l0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJl
RG9jdW1lbnRQb3NpdGlvbi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
Tm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjljMjgwYzVlMzI4
NmI3ZjBlNjdlYWI4NTEwNTU2YTE1NmZjN2JhNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uLmh0
bQpAQCAtMCwwICsxLDY5IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMg
Q29yZTogTm9kZSBJbnRlcmZhY2UgY29tcGFyZURvY3VtZW50UG9zaXRpb24gbWV0aG9kPC90aXRs
ZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGlt
cGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBj
b21wYXJlRG9jdW1lbnRQb3NpdGlvbi4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMt
Q29yZS9jb3JlLmh0bWwjTm9kZTMtY29tcGFyZURvY3VtZW50UG9zaXRpb24iIC8+CisgICAgPG1l
dGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZh
Y2UgY29tcGFyZURvY3VtZW50UG9zaXRpb24gbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0
KQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBE
SVNDT05ORUNURUQgICAgICAgICAgICA9IDB4MDE7CisgICAgICAgICAgIHZhciBQUkVDRURJTkcg
ICAgICAgICAgICAgICA9IDB4MDI7CisgICAgICAgICAgIHZhciBGT0xMT1dJTkcgICAgICAgICAg
ICAgICA9IDB4MDQ7CisgICAgICAgICAgIHZhciBDT05UQUlOUyAgICAgICAgICAgICAgICA9IDB4
MDg7CisgICAgICAgICAgIHZhciBDT05UQUlORURfQlkgICAgICAgICAgICA9IDB4MTA7CisgICAg
ICAgICAgIHZhciBJTVBMRU1FTlRBVElPTl9TUEVDSUZJQyA9IDB4MjA7CisKKyAgICAgICAgICAg
dmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2Iilb
MF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICBpZiggZG9j
dW1lbnQuYm9keS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihwcmVzZW50UmVzdWx0KSAmIENPTlRB
SU5FRF9CWSAgJiYgIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0uY29t
cGFyZURvY3VtZW50UG9zaXRpb24oZG9jdW1lbnQuYm9keSkgJiBGT0xMT1dJTkcgKQorICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBh
c3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOwor
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7Cisg
ICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rp
dj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1
bWVudFBvc2l0aW9uMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9j
dW1lbnRQb3NpdGlvbjItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVu
dFBvc2l0aW9uMi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9j
b21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjcxZTllYzI3YjAwOWE0ZmFi
M2FkOWYxZjJiZDM1MDhkMDdmMzc4NTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRtCkBA
IC0wLDAgKzEsNzAgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxv
cmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisK
KyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NP
RlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3Jl
OiBOb2RlIEludGVyZmFjZSBjb21wYXJlRG9jdW1lbnRQb3NpdGlvbiBtZXRob2Q8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVt
ZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IGNvbXBh
cmVEb2N1bWVudFBvc2l0aW9uLiBGdW5jdGlvbiBjb21wYXJlRG9jdW1lbnRQb3NpdGlvbiBzaG91
bGQgcmVwb3J0IFBSRUNFRURJTkcgb3IgRk9MTE9XSU5HIGluZm9ybWF0aW9uIGV2ZW4gaWYgbm9k
ZXMgYXJlIGRpc2Nvbm5lY3RlZC4gaHR0cDovL3d3dy53My5vcmcvVFIvRE9NLUxldmVsLTMtQ29y
ZS9jb3JlLmh0bWwjTm9kZTMtY29tcGFyZURvY3VtZW50UG9zaXRpb24iIC8+CisgICAgPG1ldGEg
bmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9kZSBJbnRlcmZhY2Ug
Y29tcGFyZURvY3VtZW50UG9zaXRpb24gbWV0aG9kIiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KHByb3BlcnR5VG9UZXN0KQor
ICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgIHZhciBESVND
T05ORUNURUQgICAgICAgICAgICA9IDB4MDE7CisgICAgICAgICAgIHZhciBQUkVDRURJTkcgICAg
ICAgICAgICAgICA9IDB4MDI7CisgICAgICAgICAgIHZhciBGT0xMT1dJTkcgICAgICAgICAgICAg
ICA9IDB4MDQ7CisgICAgICAgICAgIHZhciBDT05UQUlOUyAgICAgICAgICAgICAgICA9IDB4MDg7
CisgICAgICAgICAgIHZhciBDT05UQUlORURfQlkgICAgICAgICAgICA9IDB4MTA7CisgICAgICAg
ICAgIHZhciBJTVBMRU1FTlRBVElPTl9TUEVDSUZJQyA9IDB4MjA7CisKKyAgICAgICAgICAgdmFy
IHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07
CisgICAgICAgICAgIHZhciBkaXNjb25uZWN0ZWRFbGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICBp
ZiggZG9jdW1lbnQuYm9keS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihkaXNjb25uZWN0ZWRFbGVt
KSAmIFBSRUNFRElORyAgfHwgIGRvY3VtZW50LmJvZHkuY29tcGFyZURvY3VtZW50UG9zaXRpb24o
ZGlzY29ubmVjdGVkRWxlbSkgJiBGT0xMT1dJTkcgKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRGVmYXVsdE5hbWVzcGFjZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1l
c3BhY2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1
ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1lc3BhY2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29y
ZS9Ob2RlX2lzRGVmYXVsdE5hbWVzcGFjZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1lc3BhY2UuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE4M2Y2OGE5
MmEyMmRkOWYyODI0ZDBkZjQyOWM2MWFiZTExMDYzMmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc0RlZmF1bHROYW1lc3BhY2UuaHRt
CkBAIC0wLDAgKzEsNjQgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxv
cmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisK
KyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NP
RlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3Jl
OiBOb2RlIEludGVyZmFjZSBpc0RlZmF1bHROYW1lc3BhY2UgbWV0aG9kPC90aXRsZT4KKyAgICA8
bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0
aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBpc0RlZmF1bHRO
YW1lc3BhY2UuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUt
MjAwNDA0MDcvY29yZS5odG1sI05vZGUzLWlzRGVmYXVsdE5hbWVzcGFjZS4gQWxnb3JpdGhtIGJl
aW5nIHRlc3RpbmcgZm9yIGRldGVybWluaW5nIGRlZmF1bHQgbmFtZXNwYWNlIGlzIGRlc2NyaWJl
ZCBpbiBBcHBlbmRpeCBCLjMgaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVs
LTMtQ29yZS0yMDA0MDQwNy9uYW1lc3BhY2VzLWFsZ29yaXRobXMuaHRtbCNpc0RlZmF1bHROYW1l
c3BhY2VBbGdvLWgyIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBM
ZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlzRGVmYXVsdE5hbWVzcGFjZSBtZXRob2Qgb24g
bmFtZXNwYWNlZCBub2RlIHdpdGggbm8gaGVpcmFyY2h5IiAvPgorICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7Cisg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciBkeW5hbWljRWxlbWVudCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICJhIik7
CisKKyAgICAgICAgICAgICAgIGlmKGR5bmFtaWNFbGVtZW50LmlzRGVmYXVsdE5hbWVzcGFjZSgi
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIpKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgw
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05v
ZGVfaXNFcXVhbE5vZGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlLmh0
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi45MTZhYzlkYjFmZTM1YzIwMjM0MmZjZTczOGEwMjk4ZWMxMDE5ZDg2Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVf
aXNFcXVhbE5vZGUuaHRtCkBAIC0wLDAgKzEsNjkgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQor
IEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNh
dGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9y
YXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1s
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRp
dGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc0VxdWFsTm9kZSBtZXRob2Q8L3RpdGxl
PgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1w
bGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IGlz
RXF1YWxOb2RlLiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3Jl
LTIwMDQwNDA3L2NvcmUuaHRtbCNOb2RlMy1pc0VxdWFsTm9kZSIgLz4KKyAgICA8bWV0YSBuYW1l
PSJGZWF0dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBpc0Vx
dWFsTm9kZSBtZXRob2QiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgdmFyIHNhbWVEb2NUeXBlMSA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNy
ZWF0ZURvY3VtZW50VHlwZSgnaHRtbCcsJycsJycpOworICAgICAgICAgICAgICAgdmFyIHNhbWVE
b2NUeXBlMiA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURvY3VtZW50VHlwZSgnaHRt
bCcsJycsJycpOworICAgICAgICAgICAgICAgdmFyIGRpZmZlcmVudERvY1R5cGUgPSBkb2N1bWVu
dC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudFR5cGUoJ2h0bWwnLCAnLS8vVzNDLy9EVEQg
WEhUTUwgMS4wIFN0cmljdC8vRU4nLCAnaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94
aHRtbDEtc3RyaWN0LmR0ZCcpOworCisgICAgICAgICAgICAgICB2YXIgZXF1YWxOb2RlVHJ1ZSA9
IHNhbWVEb2NUeXBlMS5pc0VxdWFsTm9kZShzYW1lRG9jVHlwZTIpOworICAgICAgICAgICAgICAg
dmFyIGVxdWFsTm9kZUZhbHNlID0gZGlmZmVyZW50RG9jVHlwZS5pc0VxdWFsTm9kZShzYW1lRG9j
VHlwZTIpOworCisgICAgICAgICAgICAgICBpZih0cnVlID09IGVxdWFsTm9kZVRydWUgJiYgZmFs
c2UgPT0gZXF1YWxOb2RlRmFsc2UpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
IH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8
L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfaXNFcXVhbE5vZGUyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlMi1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1
YWxOb2RlMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNFcXVhbE5vZGUyLmh0bSBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1YWxOb2RlMi5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZDExMTQ5NmU5ODY2ZTM3OTUwMmNkMDA3Y2YzYWNkNWUyODM5NDllOQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2lzRXF1
YWxOb2RlMi5odG0KQEAgLTAsMCArMSw2OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlzRXF1YWxOb2RlIG1ldGhvZDwvdGl0bGU+Cisg
ICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1l
bnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogaXNFcXVh
bE5vZGUuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAw
NDA0MDcvY29yZS5odG1sI05vZGUzLWlzRXF1YWxOb2RlIiAvPgorICAgIDxtZXRhIG5hbWU9IkZl
YXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlzRXF1YWxO
b2RlIG1ldGhvZCB3aXRoIG5hbWVzcGFjZWQgZWxlbWVudCBub2RlcyIgLz4KKyAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAg
ICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRS
ZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAg
ICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgc2FtZUVsZW1lbnQxID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJuczEiLCAiZm9vIik7CisgICAgICAgICAgICAgICB2
YXIgc2FtZUVsZW1lbnQyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJuczEiLCAiZm9vIik7
CisgICAgICAgICAgICAgICB2YXIgZGlmZmVyZW50RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnROUygibnMyIiwgImZvbyIpOworCisgICAgICAgICAgICAgICB2YXIgZXF1YWxOb2RlVHJ1
ZSA9IHNhbWVFbGVtZW50MS5pc0VxdWFsTm9kZShzYW1lRWxlbWVudDIpOworICAgICAgICAgICAg
ICAgdmFyIGVxdWFsTm9kZUZhbHNlID0gZGlmZmVyZW50RWxlbWVudC5pc0VxdWFsTm9kZShzYW1l
RWxlbWVudDIpOworCisgICAgICAgICAgICAgICBpZih0cnVlID09IGVxdWFsTm9kZVRydWUgJiYg
ZmFsc2UgPT0gZXF1YWxOb2RlRmFsc2UpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAg
ICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc1N1
cHBvcnRlZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNTdXBwb3J0ZWQuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfaXNTdXBwb3J0ZWQuaHRtCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmZhMDUwMTkxMDMwZjVhZDQ2YzRiYWExZmQ3OTZmNGRhNTllMDBlM2YKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9pc1N1cHBv
cnRlZC5odG0KQEAgLTAsMCArMSw2NiBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlzU3VwcG9ydGVkIG1ldGhvZDwvdGl0bGU+Cisg
ICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1l
bnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogaXNTdXBw
b3J0ZWQuIGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI0xl
dmVsLTItQ29yZS1Ob2RlLXN1cHBvcnRzIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNv
bnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGlzU3VwcG9ydGVkIG1ldGhv
ZCIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rp
b24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkKKyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1l
bnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgIHZhciBkb2NOb2RlID0gZG9jdW1lbnQ7CisgICAgICAgICAgICAgICB2YXIg
ZWxlbU5vZGUgPSBwcmVzZW50UmVzdWx0OworICAgICAgICAgICAgICAgdmFyIGF0dHJOb2RlID0g
cHJlc2VudFJlc3VsdC5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpOworICAgICAgICAgICAgICAgdmFy
IHRleHROb2RlID0gcHJlc2VudFJlc3VsdC5maXJzdENoaWxkOworICAgICAgICAgICAgICAgaWYo
ZG9jTm9kZS5pc1N1cHBvcnRlZCgiQ09SRSIsICIyLjAiKSAmJiBlbGVtTm9kZS5pc1N1cHBvcnRl
ZCgiQ09SRSIsICIyLjAiKSAmJiBhdHRyTm9kZS5pc1N1cHBvcnRlZCgiQ09SRSIsICIyLjAiKSAm
JiB0ZXh0Tm9kZS5pc1N1cHBvcnRlZCgiQ09SRSIsICIyLjAiKSkKKyAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9
CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9k
eT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9sb2NhbE5hbWUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2Nm
YzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L05vZGVfbG9jYWxOYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9sb2NhbE5hbWUuaHRt
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9jYWxOYW1lLmh0bQpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zYmU3ZjFiZDZkYjJlZTRiYWMxZDU0ZDEzMWM3ZGM4ZTkxMDkxZDExCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9j
YWxOYW1lLmh0bQpAQCAtMCwwICsxLDY0IEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRs
ZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgbG9jYWxOYW1lIHByb3BlcnR5PC90aXRsZT4K
KyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxl
bWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIE5vZGUgSW50ZXJmYWNlOiBsb2Nh
bE5hbWUuIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDQvUkVDLURPTS1MZXZlbC0zLUNvcmUtMjAw
NDA0MDcvY29yZS5odG1sI0lELU5vZGVOU0xvY2FsTiIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0
dXJlIiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSBsb2NhbE5hbWUg
cHJvcGVydHkiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QocHJvcGVydHlUb1Rlc3QpCisgICAgICAgeworICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAg
ICB7CisKKyAgICAgICAgICAgICAgIHZhciB0ZXN0T2JqID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dE5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbW5hbWVzcGFjZSIsICJhOmN1c3RvbWVs
ZW1lbnQiKTsKKyAgICAgICAgICAgICAgIGlmKCJjdXN0b21lbGVtZW50IiA9PSB0ZXN0T2JqLmxv
Y2FsTmFtZSkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5u
ZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAg
ICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5l
ckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8
L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVz
dWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
Tm9kZV9sb29rdXBOYW1lc3BhY2VVUkktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwTmFtZXNwYWNlVVJJLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3Vw
TmFtZXNwYWNlVVJJLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9sb29rdXBOYW1lc3BhY2VV
UkkuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwTmFt
ZXNwYWNlVVJJLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOTA3MWU2OGY2ZjNlMTA5NDZhNTExZTk2YjFjZmQx
OGM2M2Q5YTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9jb3JlL05vZGVfbG9va3VwTmFtZXNwYWNlVVJJLmh0bQpAQCAtMCwwICsxLDY0IEBACis8IURP
Q1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdo
dCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKwor
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0
aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9y
cyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNz
aW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJ
T04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+
CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgbG9va3Vw
TmFtZXNwYWNlVVJJIG1ldGhvZDwvdGl0bGU+CisgICAgPG1ldGEgbmFtZT0iRGVzY3JpcHRpb24i
IGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBET00gTGV2ZWwgMyBDb3Jl
IEFQSSBvbiBOb2RlIEludGVyZmFjZTogbG9va3VwTmFtZXNwYWNlVVJJLiBodHRwOi8vd3d3Lncz
Lm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNOb2Rl
My1sb29rdXBOYW1lc3BhY2VVUkkuIEFsZ29yaXRobSBiZWluZyB0ZXN0aW5nIGZvciBnYXRoZXJp
bmcgdGhlIG5hbWVzcGFjZVVSSSBmcm9tIGFuIGVsZW1lbnQgZGVzY3JpYmVkIGluIEFwcGVuZGl4
IEIuNCBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1ET00tTGV2ZWwtMy1Db3JlLTIwMDQw
NDA3L25hbWVzcGFjZXMtYWxnb3JpdGhtcy5odG1sI2xvb2t1cE5hbWVzcGFjZVVSSUFsZ28iIC8+
CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIExldmVsIDMgQ29yZTogTm9k
ZSBJbnRlcmZhY2UgbG9va3VwTmFtZXNwYWNlVVJJIG1ldGhvZCIgLz4KKyAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAg
eworICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1
bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IilbMF07CisgICAgICAgICAg
IHRyeQorICAgICAgICAgICB7CisgICAgICAgICAgICAgICB2YXIgcHJlZml4ZWRFbGVtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL2N1c3RvbW5h
bWVzcGFjZSIsICJhOmN1c3RvbWVsZW1lbnQiKTsKKworICAgICAgICAgICAgICAgaWYoImh0dHA6
Ly93d3cuZXhhbXBsZS5jb20vY3VzdG9tbmFtZXNwYWNlIiA9PSBwcmVmaXhlZEVsZW1lbnQubG9v
a3VwTmFtZXNwYWNlVVJJKCJhIikpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBwcmVz
ZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAgICAg
IH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICA8
L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgPGRp
diBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cFByZWZpeC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjU2ZGZjNTdkNTU1Y2M2ODRlZDg4Y2IzYTVmOWRkZTcxOTNjZmM4MAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1
cFByZWZpeC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfbG9va3VwUHJlZml4Lmh0bSBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1cFByZWZpeC5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjY3ZDMxZjdjNzIwZGM1MzAzMjI1N2EwZjFiNzliN2M3OGI3ZTJiOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX2xvb2t1
cFByZWZpeC5odG0KQEAgLTAsMCArMSw2NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50
ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29y
cG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9u
LAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
biBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRv
cnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAor
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1s
bnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorICA8aGVhZD4KKyAgICA8dGl0bGU+
RE9NIEwzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGxvb2t1cFByZWZpeCBtZXRob2Q8L3RpdGxlPgor
ICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVt
ZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IGxvb2t1
cFByZWZpeC4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9NLUxldmVsLTMtQ29yZS0y
MDA0MDQwNy9jb3JlLmh0bWwjTm9kZTMtbG9va3VwTmFtZXNwYWNlUHJlZml4LiBBbGdvcml0aG0g
YmVpbmcgdGVzdGluZyBmb3IgZ2F0aGVyaW5nIHRoZSBwcmVmaXggZnJvbSBhbiBlbGVtZW50IGRl
c2NyaWJlZCBpbiBBcHBlbmRpeCBCLjIgaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMtRE9N
LUxldmVsLTMtQ29yZS0yMDA0MDQwNy9uYW1lc3BhY2VzLWFsZ29yaXRobXMuaHRtbCNsb29rdXBO
YW1lc3BhY2VQcmVmaXhBbGdvIiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9
IkRPTSBMZXZlbCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIGxvb2t1cFByZWZpeCBtZXRob2QiIC8+
CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgIGZ1bmN0aW9uIFJ1
blRlc3QoKQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAg
IHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIp
WzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgeworICAgICAgICAgICAgICAgdmFyIHBy
ZWZpeGVkRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy5leGFt
cGxlLmNvbS9jdXN0b21uYW1lc3BhY2UiLCAiYTpjdXN0b21lbGVtZW50Iik7CisKKyAgICAgICAg
ICAgICAgIGlmKCJhIiA9PSBwcmVmaXhlZEVsZW1lbnQubG9va3VwUHJlZml4KCJodHRwOi8vd3d3
LmV4YW1wbGUuY29tL2N1c3RvbW5hbWVzcGFjZSIpKQorICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAg
ICB9CisgICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCki
PgorICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3ByZWZpeC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXgtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXgt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3ByZWZpeC5odG0gYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXguaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBiMGNlNGU1YzM4
MzA3ZWUzNjg0OWFhYjQ0MDVmZWRkNWI2YjkxNzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9wcmVmaXguaHRtCkBAIC0wLDAgKzEsNjQg
QEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFn
ZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRo
ZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMg
Y29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0
dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09G
VCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJ
T04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBOb2RlIEludGVy
ZmFjZSBwcmVmaXggcHJvcGVydHk8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9u
IiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29y
ZSBBUEkgb24gTm9kZSBJbnRlcmZhY2U6IHByZWZpeC4gaHR0cDovL3d3dy53My5vcmcvVFIvMjAw
NC9SRUMtRE9NLUxldmVsLTMtQ29yZS0yMDA0MDQwNy9jb3JlLmh0bWwjSUQtTm9kZU5TUHJlZml4
IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZlbCAzIENvcmU6
IE5vZGUgSW50ZXJmYWNlIHByZWZpeCBwcm9wZXJ0eSIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgICAgZnVuY3Rpb24gUnVuVGVzdChwcm9wZXJ0eVRvVGVzdCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKworICAgICAgICAgICAgICAgdmFyIHRlc3RPYmog
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cuZXhhbXBsZS5jb20vY3VzdG9t
bmFtZXNwYWNlIiwgImE6Y3VzdG9tZWxlbWVudCIpOworICAgICAgICAgICAgICAgaWYoImEiID09
IHRlc3RPYmoucHJlZml4KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJl
c2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJl
c3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9Cisg
ICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVz
dWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3Jp
cHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9
InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vY29yZS9Ob2RlX3RleHRDb250ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRlbnQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50Lmh0bSBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vY29yZS9Ob2RlX3RleHRDb250ZW50Lmh0bQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
OGZkNjFmN2EwNDNjYzk2MmFiMGY4ZDUwZTMzOWY0ODAyNGY5OWVjCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRlbnQuaHRt
CkBAIC0wLDAgKzEsNzAgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4
cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6
CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNS
T1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBD
b3JlOiBOb2RlIEludGVyZmFjZSB0ZXh0Q29udGVudCBwcm9wZXJ0eTwvdGl0bGU+CisgICAgPG1l
dGEgbmFtZT0iRGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlc3QgZm9yIHRoZSBpbXBsZW1lbnRhdGlv
biBvZiBET00gTGV2ZWwgMyBDb3JlIEFQSSBvbiBOb2RlIEludGVyZmFjZTogdGV4dENvbnRlbnQu
IGh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI05vZGUzLXRl
eHRDb250ZW50IiAvPgorICAgIDxtZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMZXZl
bCAzIENvcmU6IE5vZGUgSW50ZXJmYWNlIHRleHRDb250ZW50IHByb3BlcnR5IiAvPgorICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkK
KyAgICAgICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJl
c2VudFJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAg
ICAgICAgICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0RWxlbSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdWJ0cmVlIik7CisgICAgICAgICAgICAgICB2YXIg
b3JpZ2luYWxUZXh0ID0gdGVzdEVsZW0udGV4dENvbnRlbnQ7CisgICAgICAgICAgICAgICB2YXIg
cmVmVG9SZXBsYWNlZE5vZGUgPSB0ZXN0RWxlbS5maXJzdENoaWxkOworICAgICAgICAgICAgICAg
Ly9ub3cgc2V0IHRleHRDb250ZW50IHByb3BlcnR5CisgICAgICAgICAgICAgICB0ZXN0RWxlbS50
ZXh0Q29udGVudCA9ICJmb28iOworICAgICAgICAgICAgICAgCisKKyAgICAgICAgICAgICAgIGlm
KCJ0ZXh0LCAmIHN0cm9uZ2x5IGVtcGhhc2l6ZWQgdGV4dCBhdCB0aGF0IiA9PSBvcmlnaW5hbFRl
eHQgJiYgImZvbyIgPT0gdGVzdEVsZW0udGV4dENvbnRlbnQgJiYgbnVsbCA9PSByZWZUb1JlcGxh
Y2VkTm9kZS5uZXh0U2libGluZykKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
IHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNl
bnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
fQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2Vu
dFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwv
c2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2
IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0ic3VidHJlZSIgc3R5
bGU9ImRpc3BsYXk6IG5vbmU7Ij50ZXh0LCAmYW1wOyA8c3Ryb25nPnN0cm9uZ2x5PGVtPiBlbXBo
YXNpemVkIDwvZW0+dGV4dDwvc3Ryb25nPiBhdCB0aGF0PC9kaXY+CisgIDwvYm9keT4KKzwvaHRt
bD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudDItZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRlbnQyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhjYjNhNWY5ZGRlNzE5M2NmYzgw
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05v
ZGVfdGV4dENvbnRlbnQyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV90ZXh0Q29udGVudDIu
aHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05vZGVfdGV4dENvbnRlbnQy
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zNTllZGE5NmNjNWZhMTMyMzMzNjY0MzcxYTZjNWZlYThhMGE3NjE5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05v
ZGVfdGV4dENvbnRlbnQyLmh0bQpAQCAtMCwwICsxLDcyIEBACivvu788IURPQ1RZUEUgaHRtbD4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CisgIDxoZWFkPgor
ICAgIDx0aXRsZT5ET00gTDMgQ29yZTogTm9kZSBJbnRlcmZhY2UgdGV4dENvbnRlbnQgcHJvcGVy
dHk8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXN0IGZv
ciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMgQ29yZSBBUEkgb24gTm9kZSBJbnRl
cmZhY2U6IHRleHRDb250ZW50LiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1Db3Jl
L2NvcmUuaHRtbCNOb2RlMy10ZXh0Q29udGVudCIgLz4KKyAgICA8bWV0YSBuYW1lPSJGZWF0dXJl
IiBjb250ZW50PSJET00gTGV2ZWwgMyBDb3JlOiBOb2RlIEludGVyZmFjZSB0ZXh0Q29udGVudCBw
cm9wZXJ0eSIgLz4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAg
ZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgeworICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
KyAgICAgICAgICAgdmFyIHByZXNlbnRSZXN1bHQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgiZGl2IilbMF07CisgICAgICAgICAgIHRyeQorICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICB2YXIgdGVzdEVsZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpOworICAg
ICAgICAgICAgICAgdGVzdEVsZW0uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
dHIiKSk7CisgICAgICAgICAgICAgICB2YXIgdGFibGVDZWxsMSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInRkIik7CisgICAgICAgICAgICAgICB0YWJsZUNlbGwxLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJjZWxsIDEiKSk7CisgICAgICAgICAgICAgICB0ZXN0RWxlbS5m
aXJzdENoaWxkLmFwcGVuZENoaWxkKHRhYmxlQ2VsbDEpOworICAgICAgICAgICAgICAgdmFyIHRh
YmxlQ2VsbDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZCIpOworICAgICAgICAgICAgICAg
dGFibGVDZWxsMi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiY2VsbCAyIikp
OworICAgICAgICAgICAgICAgdGVzdEVsZW0uZmlyc3RDaGlsZC5hcHBlbmRDaGlsZCh0YWJsZUNl
bGwyKTsKKyAgICAgICAgICAgICAgIAorCisgICAgICAgICAgICAgICBpZigiY2VsbCAxY2VsbCAy
IiA9PSB0ZXN0RWxlbS50ZXh0Q29udGVudCkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgIHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
IHByZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgfQorICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAg
cHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQor
ICAgIDwvc2NyaXB0PgorICA8L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAg
ICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRmYzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkz
Y2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Nv
cmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQYXNz
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBs
YWNlV2hvbGVUZXh0Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0
X3JlcGxhY2VXaG9sZVRleHQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNiMWJjNjA3ZjVkOGU5MzFkZjQ1ZWMx
YzNmNWM1YjQ3YzU4MzM0ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2NvcmUvVGV4dF9yZXBsYWNlV2hvbGVUZXh0Lmh0bQpAQCAtMCwwICsxLDczIEBA
Civvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2Vz
IENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNv
bnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRl
biBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQg
Q09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
CisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCI+CisgIDxoZWFkPgorICAgIDx0aXRsZT5ET00gTDMgQ29yZTogVGV4dCBJbnRlcmZh
Y2UgcmVwbGFjZVdob2xlVGV4dCBtZXRob2Q8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2Ny
aXB0aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVs
IDMgQ29yZSBBUEkgb24gVGV4dCBJbnRlcmZhY2U6IHJlcGxhY2VXaG9sZVRleHQuIGh0dHA6Ly93
d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI1RleHQzLXJlcGxhY2VXaG9s
ZVRleHQiIC8+CisgICAgPG1ldGEgbmFtZT0iRmVhdHVyZSIgY29udGVudD0iRE9NIEwzIENvcmU6
IFRleHQgSW50ZXJmYWNlIHJlcGxhY2VXaG9sZVRleHQgbWV0aG9kIiAvPgorICAgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAg
ICB7CisgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJl
c3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAg
ICAgdHJ5CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0RWxlbSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ3aG9sZVRleHRDb250YWluZXIiKTsKKyAgICAgICAgICAgICAg
IHZhciBmaXJzdFRleHROb2RlID0gdGVzdEVsZW0uZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAg
IHZhciBzZWNvbmRUZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJEZXdleSAmYSIp
OworICAgICAgICAgICAgICAgdmFyIGVsZW1Ub1JlbW92ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCdicicpWzBdOworCisgICAgICAgICAgICAgICB0ZXN0RWxlbS5pbnNlcnRCZWZv
cmUoc2Vjb25kVGV4dE5vZGUsIGVsZW1Ub1JlbW92ZSk7CisgICAgICAgICAgICAgICB0ZXN0RWxl
bS5yZW1vdmVDaGlsZChlbGVtVG9SZW1vdmUpOworICAgICAgICAgICAgICAgCisgICAgICAgICAg
ICAgICBzZWNvbmRUZXh0Tm9kZS5yZXBsYWNlV2hvbGVUZXh0KCJEb25hbGQiKTsKKworICAgICAg
ICAgICAgICAgaWYoIkRvbmFsZCIgPT0gc2Vjb25kVGV4dE5vZGUud2hvbGVUZXh0ICYmICJIdWV5
ICYgIiA9PSBmaXJzdFRleHROb2RlLmRhdGEgJiYgbnVsbCA9PSBmaXJzdFRleHROb2RlLm5leHRT
aWJsaW5nKQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3Vs
dC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5l
ckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAg
IGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBwcmVzZW50UmVzdWx0LmlubmVy
SFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9CisgICAgPC9zY3JpcHQ+CisgIDwv
aGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgIDxkaXYgaWQ9InRlc3RyZXN1
bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8ZGl2IGlkPSJ3aG9sZVRleHRDb250YWluZXIiIHN0eWxl
PSJkaXNwbGF5Om5vbmU7Ij5IdWV5ICZhbXA7IDxicj5tcDsgTG91aWU8L2Rpdj4KKyAgPC9ib2R5
PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vY29yZS9UZXh0X3JlcGxhY2VX
aG9sZVRleHQyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVkODhj
YjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL1RleHRfcmVwbGFjZVdob2xlVGV4dDItZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vY29yZS9UZXh0X3JlcGxhY2VXaG9sZVRleHQyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NmM1NTk2
OWUxOWJjOTU5MmRlYzkwOGNmNGIyMDE3OTk4YTg1Y2U5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfcmVwbGFjZVdob2xlVGV4dDIuaHRt
CkBAIC0wLDAgKzEsNjggQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4
cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6
CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNS
T1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBD
b3JlOiBUZXh0IEludGVyZmFjZSByZXBsYWNlV2hvbGVUZXh0IG1ldGhvZDogdGVzdCBzY2VuYXJp
byAyPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJEZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBm
b3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBMZXZlbCAzIENvcmUgQVBJIG9uIFRleHQgSW50
ZXJmYWNlOiByZXBsYWNlV2hvbGVUZXh0LiBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwt
My1Db3JlL2NvcmUuaHRtbCNUZXh0My1yZXBsYWNlV2hvbGVUZXh0IiAvPgorICAgIDxtZXRhIG5h
bWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMMyBDb3JlOiBUZXh0IEludGVyZmFjZSByZXBsYWNl
V2hvbGVUZXh0IG1ldGhvZDogdGVzdCBzY2VuYXJpbyAyIiAvPgorICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7Cisg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5
CisgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0RWxlbTEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5VGFnTmFtZSgic3Ryb25nIilbMF07CisgICAgICAgICAgICAgICB2YXIgdGVz
dFRleHROb2RlMSA9IHRlc3RFbGVtMS5maXJzdENoaWxkOworICAgICAgICAgICAgICAgdmFyIHRl
c3RFbGVtMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3aG9sZVRleHRDb250YWluZXIiKTsK
KyAgICAgICAgICAgICAgIHRlc3RUZXh0Tm9kZTEucmVwbGFjZVdob2xlVGV4dCgiIik7CisKKyAg
ICAgICAgICAgICAgIGlmKG51bGwgPT0gdGVzdEVsZW0xLmZpcnN0Q2hpbGQgJiYgIlJlZCBGaXNo
LCAiID09IHRlc3RUZXh0Tm9kZTEuZGF0YSAmJiBudWxsID09IHRlc3RUZXh0Tm9kZTEucGFyZW50
Tm9kZSAmJiAiT25lIEZpc2gsIFR3byBGaXNoLCAiID09IHRlc3RFbGVtMi5maXJzdENoaWxkLndo
b2xlVGV4dCkKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1
bHQuaW5uZXJIVE1MPSJQYXNzIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgIHByZXNlbnRSZXN1bHQuaW5u
ZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfQorICAgICAgICAg
ICBjYXRjaChlKQorICAgICAgICAgICB7CisgICAgICAgICAgICAgcHJlc2VudFJlc3VsdC5pbm5l
ckhUTUw9IkZhaWwiOworICAgICAgICAgICB9CisgICAgICAgfQorICAgIDwvc2NyaXB0PgorICA8
L2hlYWQ+CisgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0cmVz
dWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPGRpdiBpZD0id2hvbGVUZXh0Q29udGFpbmVyIiBzdHls
ZT0iZGlzcGxheTpub25lOyI+T25lIEZpc2gsIFR3byBGaXNoLCA8c3Ryb25nPlJlZCBGaXNoLCA8
L3N0cm9uZz5CbHVlIEZpc2g8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
Y29yZS9UZXh0X3dob2xlVGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmRm
YzU3ZDU1NWNjNjg0ZWQ4OGNiM2E1ZjlkZGU3MTkzY2ZjODAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEgQEAKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vY29yZS9UZXh0X3dob2xlVGV4dC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2OTVhYzRmYTA3ZmVj
NWU0MTk3ZDM5Yjk3NjYyNmE0ZjAyOTQ4ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4dF93aG9sZVRleHQuaHRtCkBAIC0wLDAgKzEsNjkg
QEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFn
ZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRo
ZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMg
Y29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0
dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09G
VCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJ
T04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hodG1sIj4KKyAgPGhlYWQ+CisgICAgPHRpdGxlPkRPTSBMMyBDb3JlOiBUZXh0IEludGVy
ZmFjZSB3aG9sZVRleHQgcHJvcGVydHk8L3RpdGxlPgorICAgIDxtZXRhIG5hbWU9IkRlc2NyaXB0
aW9uIiBjb250ZW50PSJUZXN0IGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgRE9NIExldmVsIDMg
Q29yZSBBUEkgb24gVGV4dCBJbnRlcmZhY2U6IHdob2xlVGV4dC4gaHR0cDovL3d3dy53My5vcmcv
VFIvRE9NLUxldmVsLTMtQ29yZS9jb3JlLmh0bWwjVGV4dDMtd2hvbGVUZXh0IiAvPgorICAgIDxt
ZXRhIG5hbWU9IkZlYXR1cmUiIGNvbnRlbnQ9IkRPTSBMMyBDb3JlOiBUZXh0IEludGVyZmFjZSB3
aG9sZVRleHQgcHJvcGVydHkiIC8+CisgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgIHsKKyAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgIHZhciBwcmVzZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxl
bWVudHNCeVRhZ05hbWUoImRpdiIpWzBdOworICAgICAgICAgICB0cnkKKyAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgdmFyIHRlc3RFbGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndo
b2xlVGV4dENvbnRhaW5lciIpOworICAgICAgICAgICAgICAgdmFyIHNlY29uZFRleHROb2RlID0g
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkRld2V5ICZhIik7CisgICAgICAgICAgICAgICB2YXIg
ZWxlbVRvUmVtb3ZlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2JyJylbMF07CisK
KyAgICAgICAgICAgICAgIHRlc3RFbGVtLmluc2VydEJlZm9yZShzZWNvbmRUZXh0Tm9kZSwgZWxl
bVRvUmVtb3ZlKTsKKyAgICAgICAgICAgICAgIHRlc3RFbGVtLnJlbW92ZUNoaWxkKGVsZW1Ub1Jl
bW92ZSk7CisgICAgICAgICAgICAgICBpZigiSHVleSAmIERld2V5ICZhbXA7IExvdWllIiA9PSBz
ZWNvbmRUZXh0Tm9kZS53aG9sZVRleHQpCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICBwcmVzZW50UmVzdWx0LmlubmVySFRNTD0iUGFzcyI7CisgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgIH0KKyAgICAgICAgICAgY2F0Y2goZSkKKyAgICAgICAgICAgeworICAgICAgICAgICAgIHBy
ZXNlbnRSZXN1bHQuaW5uZXJIVE1MPSJGYWlsIjsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAg
ICA8L3NjcmlwdD4KKyAgPC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDxkaXYgaWQ9Indob2xlVGV4
dENvbnRhaW5lciIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPkh1ZXkgJmFtcDsgPGJyPm1wOyBMb3Vp
ZTwvZGl2PgorICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVU
ZXh0Mi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUvVGV4
dF93aG9sZVRleHQyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTZkZmM1N2Q1NTVjYzY4NGVk
ODhjYjNhNWY5ZGRlNzE5M2NmYzgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0Mi1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSBAQAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9jb3Jl
L1RleHRfd2hvbGVUZXh0Mi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2NvcmUv
VGV4dF93aG9sZVRleHQyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNTc3ZDRlOWUzNWM0NTIwY2I2ODNmYzU1
N2ZiYmJlNWM4OTk0MjU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9jb3JlL1RleHRfd2hvbGVUZXh0Mi5odG0KQEAgLTAsMCArMSw2OSBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
PgorICA8aGVhZD4KKyAgICA8dGl0bGU+RE9NIEwzIENvcmU6IFRleHQgSW50ZXJmYWNlIHdob2xl
VGV4dCBwcm9wZXJ0eTogdGVzdCBzY2VuYXJpbyAyPC90aXRsZT4KKyAgICA8bWV0YSBuYW1lPSJE
ZXNjcmlwdGlvbiIgY29udGVudD0iVGVzdCBmb3IgdGhlIGltcGxlbWVudGF0aW9uIG9mIERPTSBM
ZXZlbCAzIENvcmUgQVBJIG9uIFRleHQgSW50ZXJmYWNlOiB3aG9sZVRleHQuIGh0dHA6Ly93d3cu
dzMub3JnL1RSL0RPTS1MZXZlbC0zLUNvcmUvY29yZS5odG1sI1RleHQzLXdob2xlVGV4dCIgLz4K
KyAgICA8bWV0YSBuYW1lPSJGZWF0dXJlIiBjb250ZW50PSJET00gTDMgQ29yZTogVGV4dCBJbnRl
cmZhY2Ugd2hvbGVUZXh0IHByb3BlcnR5IiAvPgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICB7CisgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICB2YXIgcHJlc2VudFJlc3VsdCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgIHZhciB0ZXN0RWxlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCJzdHJvbmciKVswXTsKKyAgICAgICAgICAgICAgIHZhciBmaXJzdFRleHROb2Rl
ID0gdGVzdEVsZW0uZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAgIHZhciBkeW5hbWljVGV4dE5v
ZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiLCIpOworCisgICAgICAgICAgICAgICB0ZXN0
RWxlbS5hcHBlbmRDaGlsZChkeW5hbWljVGV4dE5vZGUpOworCisgICAgICAgICAgICAgICBpZigi
UmVkIEZpc2gsIiA9PSBmaXJzdFRleHROb2RlLndob2xlVGV4dCAmJiAiUmVkIEZpc2gsIiA9PSBk
eW5hbWljVGV4dE5vZGUud2hvbGVUZXh0KQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgcHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IlBhc3MiOworICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
cHJlc2VudFJlc3VsdC5pbm5lckhUTUw9IkZhaWwiOworICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICB9CisgICAgICAgICAgIGNhdGNoKGUpCisgICAgICAgICAgIHsKKyAgICAgICAgICAgICBw
cmVzZW50UmVzdWx0LmlubmVySFRNTD0iRmFpbCI7CisgICAgICAgICAgIH0KKyAgICAgICB9Cisg
ICAgPC9zY3JpcHQ+CisgIDwvaGVhZD4KKyAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAg
IDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8ZGl2IGlkPSJ3aG9sZVRl
eHRDb250YWluZXIiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij5PbmUgRmlzaCwgVHdvIEZpc2ggPHN0
cm9uZz5SZWQgRmlzaDwvc3Ryb25nPiBCbHVlIEZpc2g8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL0VsZW1lbnRD
aGlsZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGE5ZGFiMWMyNDU1OTBjYjNjNGE2ZjdiNWI5
MjJhNmEyN2M1YjZhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vZWxlbWVudHRyYXZlcnNhbC9FbGVtZW50Q2hpbGQtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNyBAQAorRWxlbWVudCBUcmF2ZXJzYWwKKworVGVzdCBkZXNjcmlwdGlvbjogVGhpcyBwYWdl
IHRlc3RzIHRoZSBmaXJzdEVsZW1lbnRDaGlsZCBhbmQgbGFzdEVsZW1lbnRDaGlsZCBwcm9wZXJ0
aWVzLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKwor
UGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJh
dmVyc2FsL0VsZW1lbnRDaGlsZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Vs
ZW1lbnR0cmF2ZXJzYWwvRWxlbWVudENoaWxkLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43OTM2ZDc3NDhmYTNm
NGRjNzI1Y2Y5M2I1NjhiNjEwY2IzZmI5NGFiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL0VsZW1lbnRDaGlsZC5odG0KQEAg
LTAsMCArMSw4NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIg
VGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5l
aXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVz
IG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
cgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQK
KyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBD
T1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAg
ICAgIDx0aXRsZSBpZD0iZGVzYyI+RWxlbWVudCB0cmF2ZXJzYWw6IGZpcnN0RWxlbWVudENoaWxk
IGFuZCBsYXN0RWxlbWVudENoaWxkPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAg
ICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0UGFz
c2VkID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBwMSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgcDIgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAg
ICAgICAgICAgICAgICAgIGlmIChwMSAhPSBkaXYxLmZpcnN0RWxlbWVudENoaWxkKQorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmIChwMiAh
PSBkaXYxLmxhc3RFbGVtZW50Q2hpbGQpCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgaWYgKG51bGwgIT0gcDEuZmlyc3RFbGVtZW50Q2hpbGQp
CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RQYXNz
ZWQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
aWYgKG51bGwgIT0gcDEubGFzdEVsZW1lbnRDaGlsZCkKKyAgICAgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0
UGFzc2VkOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPiAKKyAgICAgICAgPGgyPkVsZW1lbnQgVHJhdmVy
c2FsPC9oMj4KKyAgICAgICAgPHAgc3R5bGU9ImZvbnQtc2l6ZToxN3B4OyI+VGVzdCBkZXNjcmlw
dGlvbjogVGhpcyBwYWdlIHRlc3RzIHRoZSBmaXJzdEVsZW1lbnRDaGlsZCBhbmQgbGFzdEVsZW1l
bnRDaGlsZCBwcm9wZXJ0aWVzLjwvcD4KKyAgICAgICAgPGRpdiBpZD0iZGl2MSIgc3R5bGU9ImRp
c3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPHAgaWQ9InAxIj5hPC9wPgorICAgICAgICAgICAg
PGRpdj4KKyAgICAgICAgICAgICAgICA8ZGl2PmI8L2Rpdj4KKyAgICAgICAgICAgICAgICA8ZGl2
PmM8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPHAgaWQ9InAyIj5kPC9w
PgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBh
c3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5u
aW5nPC9kaXY+IAorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2
ZXJzYWwvY2hpbGRFbGVtZW50Q291bnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL2NoaWxkRWxlbWVudENvdW50LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42MGVlODMyZTIyMWU2ODI1ZTZiOTc1MTU2OTZlOGRmODI0NDc4YTcyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJh
dmVyc2FsL2NoaWxkRWxlbWVudENvdW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK0Vs
ZW1lbnQgVHJhdmVyc2FsCisKK1Rlc3QgZGVzY3JpcHRpb246IFRoaXMgcGFnZSB0ZXN0cyB0aGUg
Y2hpbGRFbGVtZW50Q291bnQgcHJvcGVydHkuCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQ
YXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvY2hpbGRFbGVtZW50Q291bnQuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL2NoaWxkRWxlbWVudENv
dW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5jNzAxYmM5YWE3MjBlNjA4OTYzYThmZGFjNWYwMGRkYzYzODEz
ODNkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVt
ZW50dHJhdmVyc2FsL2NoaWxkRWxlbWVudENvdW50Lmh0bQpAQCAtMCwwICsxLDc2IEBACis8IURP
Q1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdo
dCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKwor
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0
aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9y
cyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNz
aW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJ
T04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlkPSJkZXNj
Ij5FbGVtZW50IHRyYXZlcnNhbDogY2hpbGRFbGVtZW50Q291bnQ8L3RpdGxlPgorICAgICAgICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5U
ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIHRlc3RQYXNzZWQgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIHZhciBk
aXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIHAxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIik7CisgICAgICAgICAgICAg
ICAgICAgIAorICAgICAgICAgICAgICAgICAgICBpZiAoMyAhPSBkaXYxLmNoaWxkRWxlbWVudENv
dW50KQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
UGFzc2VkID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgIGlmICgwICE9IHAxLmNoaWxkRWxlbWVudENvdW50KQorICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRl
c3RQYXNzZWQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkK
KyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgor
ICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxoMj5FbGVtZW50IFRyYXZl
cnNhbDwvaDI+CisgICAgICAgIDxwIHN0eWxlPSJmb250LXNpemU6MTdweDsiPlRlc3QgZGVzY3Jp
cHRpb246IFRoaXMgcGFnZSB0ZXN0cyB0aGUgY2hpbGRFbGVtZW50Q291bnQgcHJvcGVydHkuPC9w
PgorICAgICAgICA8ZGl2IGlkPSJkaXYxIiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAg
ICAgICA8cCBpZD0icDEiPmE8L3A+CisgICAgICAgICAgICA8ZGl2PgorICAgICAgICAgICAgICAg
IDxkaXY+YjwvZGl2PgorICAgICAgICAgICAgICAgIDxkaXY+YzwvZGl2PgorICAgICAgICAgICAg
PC9kaXY+CisgICAgICAgICAgICA8cD5kPC9wPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPHA+
VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAg
ICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+IAorICAgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZl
cnNhbC9uZXh0RWxlbWVudFNpYmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL25leHRFbGVtZW50U2libGluZy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMTYyZDAyYThkNDEzMTk5NjkwZjRmNmYzYTJiNTRhYzg2OTBhMGMwNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRy
YXZlcnNhbC9uZXh0RWxlbWVudFNpYmxpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAor
RWxlbWVudCBUcmF2ZXJzYWwKKworVGVzdCBkZXNjcmlwdGlvbjogVGhpcyBwYWdlIHRlc3RzIHRo
ZSBuZXh0RWxlbWVudFNpYmxpbmcgcHJvcGVydHkuCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3Jk
ICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5nLmh0bSBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9uZXh0RWxlbWVu
dFNpYmxpbmcuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRkNzQ5OWI4MmYwNWFjNzE5MWM3MDhjMDUzZDJhNTMx
MmRmNTBhZWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2VsZW1lbnR0cmF2ZXJzYWwvbmV4dEVsZW1lbnRTaWJsaW5nLmh0bQpAQCAtMCwwICsxLDg3IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENv
cHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRy
aWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBw
ZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09S
UE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlk
PSJkZXNjIj5FbGVtZW50IHRyYXZlcnNhbDogbmV4dEVsZW1lbnRTaWJsaW5nPC90aXRsZT4KKyAg
ICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgdmFyIHRl
c3RQYXNzZWQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNo
ZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICB0ZXN0UGFzc2VkID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAg
ICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBk
aXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAg
ICAgICAgICAgICB2YXIgZGl2MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYzIik7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciBwMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIp
OworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdmFyIG5vZGUgPSBk
aXYxLm5leHRFbGVtZW50U2libGluZzsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5v
ZGUsIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBub2RlID0gbm9kZS5uZXh0RWxlbWVudFNp
Ymxpbmc7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShub2RlLCBkaXYzKTsKKyAgICAg
ICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUubmV4dEVsZW1lbnRTaWJsaW5nOworICAgICAgICAg
ICAgICAgICAgICBjaGVja05vZGUobm9kZSwgcDEpOworICAgICAgICAgICAgICAgICAgICBub2Rl
ID0gbm9kZS5uZXh0RWxlbWVudFNpYmxpbmc7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9k
ZShub2RlLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0g
dGVzdFBhc3NlZDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4
KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+
CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPGgyPkVsZW1lbnQgVHJh
dmVyc2FsPC9oMj4KKyAgICAgICAgPHAgc3R5bGU9ImZvbnQtc2l6ZToxN3B4OyI+VGVzdCBkZXNj
cmlwdGlvbjogVGhpcyBwYWdlIHRlc3RzIHRoZSBuZXh0RWxlbWVudFNpYmxpbmcgcHJvcGVydHku
PC9wPgorICAgICAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxk
aXYgaWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YmJiCisg
ICAgICAgICAgICAgICAgPGRpdj5jY2M8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAg
ICAgICAgPGRpdiBpZD0iZGl2MyI+ZGRkPC9kaXY+CisgICAgICAgICAgICA8cCBpZD0icDEiPmVl
ZTwvcD4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3Jk
ICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+
UnVubmluZzwvZGl2PiAKKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50
dHJhdmVyc2FsL3ByZXZpb3VzRWxlbWVudFNpYmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9lbGVtZW50dHJhdmVyc2FsL3ByZXZpb3VzRWxlbWVudFNpYmxp
bmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3YmM2ODRlMWZiM2JkZmFjY2M4NDI2MGJjNGQz
NmQzNjJkYWQxMGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2VsZW1lbnR0cmF2ZXJzYWwvcHJldmlvdXNFbGVtZW50U2libGluZy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw3IEBACitFbGVtZW50IFRyYXZlcnNhbAorCitUZXN0IGRlc2NyaXB0aW9uOiBU
aGlzIHBhZ2UgdGVzdHMgdGhlIHByZXZpb3VzRWxlbWVudFNpYmxpbmcgcHJvcGVydHkuCisKK1Rl
c3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2VsZW1lbnR0cmF2ZXJzYWwvcHJl
dmlvdXNFbGVtZW50U2libGluZy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2Vs
ZW1lbnR0cmF2ZXJzYWwvcHJldmlvdXNFbGVtZW50U2libGluZy5odG0KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWVj
ZTc5YjhhZDMxYWI0OTFlMTJmNzNhMDczMjcxZDJiMjgxMzM3NQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vZWxlbWVudHRyYXZlcnNhbC9wcmV2aW91c0Vs
ZW1lbnRTaWJsaW5nLmh0bQpAQCAtMCwwICsxLDg3IEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0K
KyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj
YXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBv
cmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRt
bD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlkPSJkZXNjIj5FbGVtZW50IHRyYXZlcnNh
bDogcHJldmlvdXNFbGVtZW50U2libGluZzwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHZhciB0ZXN0UGFzc2VkID0gIlBhc3MiOwor
ICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBl
Y3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVj
dGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9
ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAK
KyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjMg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MyIpOworICAgICAgICAgICAgICAgICAgICB2
YXIgcDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKTsKKyAgICAgICAgICAgICAgICAg
ICAgCisgICAgICAgICAgICAgICAgICAgIHZhciBub2RlID0gcDEucHJldmlvdXNFbGVtZW50U2li
bGluZzsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5vZGUsIGRpdjMpOworICAgICAg
ICAgICAgICAgICAgICBub2RlID0gbm9kZS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUobm9kZSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAg
IG5vZGUgPSBub2RlLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7CisgICAgICAgICAgICAgICAgICAg
IGNoZWNrTm9kZShub2RlLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUu
cHJldmlvdXNFbGVtZW50U2libGluZzsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKG5v
ZGUsIG51bGwpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0
UGFzc2VkOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8aDI+RWxlbWVudCBUcmF2ZXJz
YWw8L2gyPgorICAgICAgICA8cCBzdHlsZT0iZm9udC1zaXplOjE3cHg7Ij5UZXN0IGRlc2NyaXB0
aW9uOiBUaGlzIHBhZ2UgdGVzdHMgdGhlIHByZXZpb3VzRWxlbWVudFNpYmxpbmcgcHJvcGVydHku
PC9wPgorICAgICAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxk
aXYgaWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YmJiCisg
ICAgICAgICAgICAgICAgPGRpdj5jY2M8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAg
ICAgICAgPGRpdiBpZD0iZGl2MyI+ZGRkPC9kaXY+CisgICAgICAgICAgICA8cCBpZD0icDEiPmVl
ZTwvcD4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3Jk
ICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+
UnVubmluZzwvZGl2PiAKKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9FeHRlbmRfRnVuY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfRnVuY3Rpb24tZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjUzZjQyZWE2YjFiMmEyNjg5NWJmYmQ1YWQwNjA4YjJiZDQyMjVkNjAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9G
dW5jdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitFeHRlbmQgSFRNTEZvcm1FbGVt
ZW50IHByb3RvdHlwZSBmdW5jdGlvbiBpcyBpbmhlcml0ZWQgYnkgaW5zdGFuY2VzCitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVu
ZF9GdW5jdGlvbi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L0V4dGVuZF9GdW5jdGlvbi5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWViMjM4ZGRmYTUxOTQ5Y2VhMzg1Njkz
MjUyOWUwYmZkMDUzNmExOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uLmh0bQpAQCAtMCwwICsxLDYxIEBA
Civvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2Vz
IENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNv
bnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRl
biBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQg
Q09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
CisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNl
IC0gT3ZlcnJpZGUgSFRNTEZvcm1FbGVtZW50IFByb3RvdHlwZSBGdW5jdGlvbjwvdGl0bGU+Cisg
ICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0
aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgICAgICB0cnkgeworCisgICAgICAgICAgICAgICAgICAgIEhUTUxEaXZFbGVtZW50
LnByb3RvdHlwZS5teWZ1bmMgPSBmdW5jdGlvbiAoKSB7IHJldHVybiAiUEFTUyI7IH0KKworICAg
ICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7
CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKCJQQVNTIiA9PSBkaXYubXlmdW5jKCkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0
IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgp
IHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
fQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5U
ZXN0KCkiPgorICAgICAgICA8ZGl2PkV4dGVuZCBIVE1MRm9ybUVsZW1lbnQgcHJvdG90eXBlIGZ1
bmN0aW9uIGlzIGluaGVyaXRlZCBieSBpbnN0YW5jZXM8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0i
dGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0
aW9uX0hpZ2gtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9FeHRlbmRfRnVuY3Rpb25fSGlnaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWMx
ZGNiMjdjZmFlZDM4NTMzZWNhZGJjZjU4ZDNjODE3YzRjNDg2NgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9u
X0hpZ2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorRXh0ZW5kIE5vZGUgcHJvdG90eXBl
IGZ1bmN0aW9uIGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUKK1Bhc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX0Z1bmN0aW9uX0hpZ2guaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9FeHRlbmRfRnVuY3Rpb25fSGlnaC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTYzYWI0MjMwZjk2
NzJjYzg3ZTFmMWRkZjEwYmNmZjFjNTliNjAzYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX0Z1bmN0aW9uX0hpZ2guaHRt
CkBAIC0wLDAgKzEsNjUgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4
cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6
CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRo
ZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lm
aWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNS
T1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQor
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5E
T00gTDIgSW5oZXJpdGFuY2UgLSBPdmVycmlkZSBOb2RlIFByb3RvdHlwZSBGdW5jdGlvbjwvdGl0
bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisKKyAgICAgICAgICAgICAg
ICAgICAgTm9kZS5wcm90b3R5cGUubXlmdW5jID0gZnVuY3Rpb24gKHN0cikgeyByZXR1cm4gIlBB
U1MiOyB9CisKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworCisgICAgICAgICAgICAgICAgICAgIGlmICgiUEFTUyIgPT0gZGl2Lm15
ZnVuYygiZm9vIikpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQ
YXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAor
ICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+RXh0ZW5kIE5vZGUg
cHJvdG90eXBlIGZ1bmN0aW9uIGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5
cGU8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlci1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0
ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY2MGMyOGFiMzMyYWJlN2E3MjY0MDUwMjZiMjc0
MTczODIxMzc3YWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXItZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMiBAQAorRXh0ZW5kIEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZSBnZXR0ZXIgcHJvcGVy
dHkgaXMgaW5oZXJpdGVkIGJ5IGluc3RhbmNlcworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyLmh0
bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3Bl
cnR5X0dldHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzQwZWI2ZWI4MTIzMDliZWMwMzNkNzZjM2MxNDM0
MzY5YWIwY2IyYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlci5odG0KQEAgLTAsMCArMSw3MiBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5j
ZSAtIE92ZXJyaWRlIEhUTUxEaXZFbGVtZW50IFByb3RvdHlwZSBQcm9wZXJ0eTwvdGl0bGU+Cisg
ICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0
aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgICAgICB0cnkgeworCisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZGVm
aW5lUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9w
ZXJ0eShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUsICJteXByb3AiLCB7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiAibXlQcm9wIjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIEhUTUxEaXZF
bGVtZW50LnByb3RvdHlwZS5fX2RlZmluZUdldHRlcl9fKCJteXByb3AiLCBmdW5jdGlvbiAodmFs
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJteVByb3AiOworICAgICAg
ICAgICAgICAgICAgICAgICAgfSk7ICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKCJteVByb3AiID09IGRpdi5t
eXByb3ApIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkV4dGVuZCBIVE1MRGl2RWxlbWVudCBw
cm90b3R5cGUgZ2V0dGVyIHByb3BlcnR5IGlzIGluaGVyaXRlZCBieSBpbnN0YW5jZXM8L2Rpdj4K
KyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9IaWdoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9I
aWdoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNmJiMWJhYzQ2OWZmOGViNGQ2OWRkZjU4ZDIx
MzliNGFjMDhmZmI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0hpZ2gtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMiBAQAorRXh0ZW5kIE5vZGUgcHJvdG90eXBlIGdldHRlciBwcm9wZXJ0eSBp
cyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlCitQYXNzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0
eV9HZXR0ZXJfSGlnaC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL0V4dGVuZF9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWUzNTM4MThh
NzY1Y2M1Yzk0ZGY5ZTE4ZWIyMjkwOWZlN2QwOGJmMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRl
cl9IaWdoLmh0bQpAQCAtMCwwICsxLDcyIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gRXh0ZW5kIE5vZGUgUHJvdG90eXBlIEdldHRl
ciBQcm9wZXJ0eTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAg
ICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisKKyAgICAgICAgICAgICAgICAgICAg
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShOb2RlLnByb3RvdHlwZSwgIm15cHJvcCIsIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJteVByb3AiOworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAg
ICAgICAgTm9kZS5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygibXlwcm9wIiwgZnVuY3Rpb24g
KHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAibXlQcm9wIjsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
CisgICAgICAgICAgICAgICAgICAgIGlmICgibXlQcm9wIiA9PSBkaXYubXlwcm9wKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7
CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0
IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVz
dCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgTm9kZSBwcm90b3R5cGUgZ2V0dGVyIHByb3BlcnR5
IGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGU8L2Rpdj4KKyAgICAgICAg
PGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0
ZW5kX1Byb3BlcnR5X0dldHRlcl9Mb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0xvdy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNjYzMTJkNGJhNWIwOTNhZTFkYzA3OTZmNGVkNDg2ZDJmNGFhMjY5
YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvRXh0ZW5kX1Byb3BlcnR5X0dldHRlcl9Mb3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MiBAQAorRXh0ZW5kIEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZSBnZXR0ZXIgcHJvcGVydHkgaXMg
bm90IGluaGVyaXRlZCBieSBOb2RlIHByb3RvdHlwZQorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVy
X0xvdy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVu
ZF9Qcm9wZXJ0eV9HZXR0ZXJfTG93Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZDAyNWMwODk1ZmZmYjFiYTRi
NjcxZTM0YzQzZDdhOWQzODgwNjgwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfR2V0dGVyX0xvdy5odG0K
QEAgLTAsMCArMSw4MiBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhw
bG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24u
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoK
KworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhl
IG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JP
U09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRP
TSBMMiBJbmhlcml0YW5jZSAtIEV4dGVuZCBIVE1MRGl2RWxlbWVudCBQcm90b3R5cGUgR2V0dGVy
IFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIHsKKyAgICAgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAg
ICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsKKworICAgICAgICAgICAgICAgICAgICAg
ICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE5vZGUucHJvdG90eXBlLCAibXlwcm9wIiwgeworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIm5vZGVQcm9wIjsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAg
ICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEhUTUxEaXZFbGVtZW50LnByb3Rv
dHlwZSwgIm15cHJvcCIsIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0
aW9uICgpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJkaXZQcm9w
IjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAg
ICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVyX18o
Im15cHJvcCIsIGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gIm5vZGVQcm9wIjsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworCisgICAgICAg
ICAgICAgICAgICAgICAgICBIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJf
XygibXlwcm9wIiwgZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJldHVybiAiZGl2UHJvcCI7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsgICAgICAgICAg
ICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2
YXIgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKKworICAgICAgICAgICAg
ICAgICAgICBpZiAoIm5vZGVQcm9wIiA9PSBzcGFuLm15cHJvcCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxz
ZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgeworICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRN
TCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
ICAgIDxkaXY+RXh0ZW5kIEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZSBnZXR0ZXIgcHJvcGVydHkg
aXMgbm90IGluaGVyaXRlZCBieSBOb2RlIHByb3RvdHlwZTwvZGl2PgorICAgICAgICA8ZGl2IGlk
PSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJv
cGVydHlfU2V0dGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZjYzNGM4YzBiOGRlNDJlN2JjOThhMWM4YzZmZmM5ZWRhZTQ0ODlhZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvRXh0ZW5kX1By
b3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitFeHRlbmQgSFRNTERp
dkVsZW1lbnQgcHJvdG90eXBlIHNldHRlciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgaW5zdGFu
Y2VzCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44ZGYzMDhkYzg4ZmFkOTc4ZjMyMDcyZTc0NDFiNWRjMmY2MTZlNjY1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJv
cGVydHlfU2V0dGVyLmh0bQpAQCAtMCwwICsxLDczIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwh
LS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jv
c29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2Rp
ZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENv
cnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQK
KyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8
aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgor
ICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gRXh0ZW5kIEhUTUxEaXZFbGVtZW50
IFByb3RvdHlwZSBTZXR0ZXIgUHJvcGVydHk8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IHsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIHNldFZhbHVlID0gZmFsc2U7CisgICAgICAgICAgICAg
ICAgICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUsICJteXBy
b3AiLCB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0OiBmdW5jdGlvbiAodmFsKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFZhbHVlID0gdHJ1ZTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLl9fZGVmaW5lU2V0dGVyX18oIm15cHJvcCIs
IGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9
IHRydWU7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgZGl2Lm15cHJvcCA9ICJmb28iOworICAgICAg
ICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgaWYgKHNldFZhbHVlKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7
CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0
IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVz
dCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlIHNldHRl
ciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgaW5zdGFuY2VzPC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Q
cm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uOWRmYTAzZDMyOGIzZDgzMDZhNDM2NzAzY2JlM2FiYmE4YjM2MWNmOAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFu
Y2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRlcl9IaWdoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIg
QEAKK0V4dGVuZCBOb2RlIHByb3RvdHlwZSBzZXR0ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5
IEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZQorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0hpZ2gu
aHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJv
cGVydHlfU2V0dGVyX0hpZ2guaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZiZTNmNjk5YjMwNDcxZjQ4NjhkOWMz
MDg4NjRiOWJiYzc1NDRhYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC5odG0KQEAg
LTAsMCArMSw3NCBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9y
ZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKwor
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKwor
IE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5h
bWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09G
VCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUK
KyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93
d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBM
MiBJbmhlcml0YW5jZSAtIEV4dGVuZCBOb2RlIFByb3RvdHlwZSBTZXR0ZXIgUHJvcGVydHk8L3Rp
dGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAg
ICBmdW5jdGlvbiBSdW5UZXN0KCkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHNldFZh
bHVlID0gZmFsc2U7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVy
dHkpIHsKKworICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE5v
ZGUucHJvdG90eXBlLCAibXlwcm9wIiwgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNl
dDogZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRW
YWx1ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKworICAgICAg
ICAgICAgICAgICAgICAgICAgTm9kZS5wcm90b3R5cGUuX19kZWZpbmVTZXR0ZXJfXygibXlwcm9w
IiwgZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFZhbHVl
ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7CisgICAgICAgICAgICAgICAgICAgIGRpdi5teXByb3AgPSAiZm9vIjsKKwor
ICAgICAgICAgICAgICAgICAgICBpZiAoc2V0VmFsdWUpIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBh
c3MiOworICAgICAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFp
bCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGV4
KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVz
dWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVu
VGVzdCgpIj4KKyAgICAgICAgPGRpdj5FeHRlbmQgTm9kZSBwcm90b3R5cGUgc2V0dGVyIHByb3Bl
cnR5IGlzIGluaGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGU8L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
RXh0ZW5kX1Byb3BlcnR5X1NldHRlcl9Mb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0xvdy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNjRhNjdjMmEwMzBkZWY3ZjJmZmM4NTc0OTJiZjc4ZWE3ZThh
N2EwMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvRXh0ZW5kX1Byb3BlcnR5X1NldHRlcl9Mb3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMiBAQAorRXh0ZW5kIEhUTUxEaXZFbGVtZW50IHByb3RvdHlwZSBzZXR0ZXIgcHJvcGVydHkg
aXMgbm90IGluaGVyaXRlZCBieSBOb2RlIHByb3RvdHlwZQorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0
dGVyX0xvdy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL0V4
dGVuZF9Qcm9wZXJ0eV9TZXR0ZXJfTG93Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTZkOGI3ODE4MmU4NjJj
YTYyNTk5NmMyYjIxNTRjODVlMTIyY2NhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9FeHRlbmRfUHJvcGVydHlfU2V0dGVyX0xvdy5o
dG0KQEAgLTAsMCArMSw4NCBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQg
RXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3Ig
dGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1J
Q1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxl
PkRPTSBMMiBJbmhlcml0YW5jZSAtIEV4dGVuZCBIVE1MRGl2RWxlbWVudCBQcm90b3R5cGUgU2V0
dGVyIFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIHsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBzZXRWYWx1ZSA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmpl
Y3QuZGVmaW5lUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAg
ICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE5vZGUucHJvdG90eXBlLCAibXlw
cm9wIiwgeyAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICh2YWwp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWUgPSAibm9kZSI7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSk7
CisKKyAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShIVE1MRGl2
RWxlbWVudC5wcm90b3R5cGUsICJteXByb3AiLCB7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc2V0OiBmdW5jdGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNldFZhbHVlID0gImRpdiI7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICAgICAgTm9kZS5wcm90
b3R5cGUuX19kZWZpbmVTZXR0ZXJfXygibXlwcm9wIiwgZnVuY3Rpb24gKHZhbCkgeworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9ICJub2RlIjsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgICAgICAgICAgICBIVE1MRGl2RWxlbWVu
dC5wcm90b3R5cGUuX19kZWZpbmVTZXR0ZXJfXygibXlwcm9wIiwgZnVuY3Rpb24gKHZhbCkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9ICJkaXYiOworICAgICAg
ICAgICAgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAgICAgICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOwor
ICAgICAgICAgICAgICAgICAgICBzcGFuLm15cHJvcCA9ICJmb28iOworICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICAgICAgaWYgKCJub2RlIiA9PSBzZXRWYWx1ZSkgeworICAg
ICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAgICAgfSBjYXRjaCAoZXgpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAg
PGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkV4dGVuZCBIVE1MRGl2RWxl
bWVudCBwcm90b3R5cGUgc2V0dGVyIHByb3BlcnR5IGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZSBw
cm90b3R5cGU8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2
PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbi1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTM5ODc4Y2I5NTZjMTg3YTIyODgzN2U5NjJlNzFlMjI0
NzNjOGJlNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBA
QAorT3ZlcnJpZGUgSFRNTEZvcm1FbGVtZW50IHByb3RvdHlwZSBmdW5jdGlvbiBpcyBpbmhlcml0
ZWQgYnkgaW5zdGFuY2VzCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb24uaHRtCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjk1MGEzZjYyMWU5ODIxZWRkMDcwZjRjYTkyNGEzOTQzNjI5NjU4M2IKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRl
X0Z1bmN0aW9uLmh0bQpAQCAtMCwwICsxLDYxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0K
KyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj
YXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBv
cmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRt
bCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAg
ICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gT3ZlcnJpZGUgSFRNTEZvcm1FbGVtZW50
IFByb3RvdHlwZSBGdW5jdGlvbjwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgeworCisgICAg
ICAgICAgICAgICAgICAgIEhUTUxGb3JtRWxlbWVudC5wcm90b3R5cGUuc3VibWl0ID0gZnVuY3Rp
b24gKCkgeyByZXR1cm4gIlBBU1MiOyB9CisKKyAgICAgICAgICAgICAgICAgICAgdmFyIGZvcm0g
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb3JtIik7CisKKyAgICAgICAgICAgICAgICAgICAg
aWYgKCJQQVNTIiA9PSBmb3JtLnN1Ym1pdCgpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0Iiku
aW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwi
OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5P
dmVycmlkZSBIVE1MRm9ybUVsZW1lbnQgcHJvdG90eXBlIGZ1bmN0aW9uIGlzIGluaGVyaXRlZCBi
eSBpbnN0YW5jZXM8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGlnaC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1
bmN0aW9uX0hpZ2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjViMDFkYmVhYzRkMWVlNjE4NTY3
MzIwZmY2OWVjNTQ1ODBlMWJlYzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uX0hpZ2gtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMiBAQAorT3ZlcnJpZGUgTm9kZSBwcm90b3R5cGUgZnVuY3Rpb24gaXMg
aW5oZXJpdGVkIGJ5IEhUTUxEaXZFbGVtZW50IGluc3RhbmNlcworUGFzcwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlv
bl9IaWdoLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3Zl
cnJpZGVfRnVuY3Rpb25fSGlnaC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RmZGNkMmNiNTcwMjQxNzYzY2Fi
NTVhMjQ1NmU2ZTQ2Y2UyYjAzOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfRnVuY3Rpb25fSGlnaC5odG0KQEAgLTAs
MCArMSw2NSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIg
VGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5l
aXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVz
IG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
cgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQK
KyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBD
T1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJ
bmhlcml0YW5jZSAtIE92ZXJyaWRlIE5vZGUgUHJvdG90eXBlIEZ1bmN0aW9uPC90aXRsZT4KKyAg
ICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rp
b24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IHsKKworICAgICAgICAgICAgICAgICAgICBO
b2RlLnByb3RvdHlwZS5hcHBlbmRDaGlsZCA9IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuICJQQVNT
IjsgfQorCisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJkaXYiKTsKKworICAgICAgICAgICAgICAgICAgICBpZiAoIlBBU1MiID09IGRpdi5hcHBl
bmRDaGlsZCgiIikpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQ
YXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAor
ICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+T3ZlcnJpZGUgTm9k
ZSBwcm90b3R5cGUgZnVuY3Rpb24gaXMgaW5oZXJpdGVkIGJ5IEhUTUxEaXZFbGVtZW50IGluc3Rh
bmNlczwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9Mb3ctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9M
b3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3OTEwOWQ0NTc2NGRmNTA3MzU4OGE1NjRjMzEx
OTYzYTljZTM4NDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uX0xvdy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyIEBACitPdmVycmlkZSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUgZnVuY3Rpb24gaXMg
bm90IGluaGVyaXRlZCBieSBOb2RlLgorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9Mb3cuaHRtIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9GdW5jdGlvbl9M
b3cuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmVkMTU4MTgxZWM5YjdhZDQ3NjI2ZTZlN2U4MmNhYjk2YzY1NmFi
OTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVy
aXRhbmNlL092ZXJyaWRlX0Z1bmN0aW9uX0xvdy5odG0KQEAgLTAsMCArMSw2MSBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
ID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIE92ZXJy
aWRlIEhUTUxEaXZFbGVtZW50IFByb3RvdHlwZSBGdW5jdGlvbjwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAg
ICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAg
ICAgICB0cnkgeworCisgICAgICAgICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLmFwcGVuZENo
aWxkID0gZnVuY3Rpb24gKHN0cikgeyByZXR1cm4gIk5vZGU6ICIgKyBzdHI7IH0KKyAgICAgICAg
ICAgICAgICAgICAgSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkID0gZnVuY3Rp
b24gKHN0cikgeyByZXR1cm4gIkhUTUxEaXZFbGVtZW50OiAiICsgc3RyOyB9CisKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisK
KyAgICAgICAgICAgICAgICAgICAgaWYgKCJOb2RlOiBmb28iID09IHNwYW4uYXBwZW5kQ2hpbGQo
ImZvbyIpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
IGNhdGNoIChleCkgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+T3ZlcnJpZGUgSFRNTERpdkVsZW1lbnQg
cHJvdG90eXBlIGZ1bmN0aW9uIGlzIG5vdCBpbmhlcml0ZWQgYnkgTm9kZS48L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
T3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5kMWRlYmY5Mjc3NTQwNjk4ZjYyMDlhOTYyMTFlMWJiNjUwYWRlYTA3
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBA
QAorT3ZlcnJpZGUgSFRNTEhlYWRFbGVtZW50IHByb3RvdHlwZSBnZXR0ZXIgcHJvcGVydHkgaXMg
aW5oZXJpdGVkIGJ5IGluc3RhbmNlcworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXIuaHRtIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0
eV9HZXR0ZXIuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1ZTAzOWQyYzJhZDM5ODg5MDhhYTc4ODVjY2ZiNWQz
MjY3ODllMjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlci5odG0KQEAgLTAsMCArMSw3MiBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5j
ZSAtIE92ZXJyaWRlIEhUTUxIZWFkRWxlbWVudCBQcm90b3R5cGUgUHJvcGVydHk8L3RpdGxlPgor
ICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KCkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
KyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgICAgICAgICAgICAgdHJ5IHsKKworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRl
ZmluZVByb3BlcnR5KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJv
cGVydHkoSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZSwgInByb2ZpbGUiLCB7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJldHVybiAibXlQcm9maWxlIjsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIEhU
TUxIZWFkRWxlbWVudC5wcm90b3R5cGUuX19kZWZpbmVHZXR0ZXJfXygicHJvZmlsZSIsIGZ1bmN0
aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIm15UHJvZmls
ZSI7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQor
CisgICAgICAgICAgICAgICAgICAgIHZhciBoZWFkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
aGVhZCIpOworCisgICAgICAgICAgICAgICAgICAgIGlmICgibXlQcm9maWxlIiA9PSBoZWFkLnBy
b2ZpbGUpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkg
b25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2Pk92ZXJyaWRlIEhUTUxIZWFkRWxlbWVu
dCBwcm90b3R5cGUgZ2V0dGVyIHByb3BlcnR5IGlzIGluaGVyaXRlZCBieSBpbnN0YW5jZXM8L2Rp
dj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2gtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9H
ZXR0ZXJfSGlnaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTBkNTU5MWY5OTRhY2Y3NGM3Mjdl
ZmZiOTMyYjVkYWI3NDYyOTc0MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2gtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorT3ZlcnJpZGUgTm9kZSBwcm90b3R5cGUgZ2V0dGVy
IHByb3BlcnR5IGlzIGludGVyaXRlZCBieSBIVE1MRGl2RWxlbWVudCBwcm90b3R5cGUKK1Bhc3MK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3Zl
cnJpZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMDQyMjVlNWFjNTE0NGNhM2VmMDAyYTk2NWIxNjQyZjY1MTM5OTAwZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJp
ZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtCkBAIC0wLDAgKzEsNzIgQEAKK++7vzwhRE9DVFlQ
RSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKp
IDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBN
aWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1h
eSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24u
CisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBPdmVycmlkZSBO
b2RlIFByb3RvdHlwZSBHZXR0ZXIgUHJvcGVydHk8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgewor
ICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5
IHsKKworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoTm9kZS5wcm90b3R5
cGUsICJub2RlTmFtZSIsIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0
aW9uICgpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJteU5vZGVO
YW1lIjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
ICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIE5vZGUucHJvdG90eXBlLl9fZGVmaW5lR2V0dGVy
X18oIm5vZGVOYW1lIiwgZnVuY3Rpb24gKHZhbCkgeworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiAibXlOb2RlTmFtZSI7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsgICAg
ICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICB2
YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisKKyAgICAgICAgICAgICAg
ICAgICAgaWYgKCJteU5vZGVOYW1lIiA9PSBkaXYubm9kZU5hbWUpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1M
ID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVs
c2UgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIHsKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8
L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAg
ICAgICA8ZGl2Pk92ZXJyaWRlIE5vZGUgcHJvdG90eXBlIGdldHRlciBwcm9wZXJ0eSBpcyBpbnRl
cml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9
InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1By
b3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZWVlYjAzNzc4N2ZiZjhhNmM5MzQ3NWQwMDkzY2FiMGViODI0NmQxMAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJp
ZGVfUHJvcGVydHlfU2V0dGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK092ZXJyaWRl
IEhUTUxIZWFkRWxlbWVudCBwcm90b3R5cGUgc2V0dGVyIHByb3BlcnR5IGlzIGluaGVyaXRlZCBi
eSBpbnN0YW5jZXMKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0bSBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4yZWVlZjM2NGYzNzkyZTliNmM4ODc0OTYyZGZiNzFlMzA5NzRmNTJhCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXIuaHRtCkBAIC0wLDAgKzEsNzIgQEAKK++7vzwhRE9D
VFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0
IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3Jz
IG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Np
b24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElP
TiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+
CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBPdmVycmlk
ZSBIVE1MSGVhZEVsZW1lbnQgUHJvdG90eXBlIFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVz
dCgpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBzZXRWYWx1ZSA9IGZhbHNlOworICAg
ICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7CisgICAgICAgICAg
ICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoSFRNTEhlYWRFbGVtZW50LnByb3Rv
dHlwZSwgInByb2ZpbGUiLCB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0OiBmdW5j
dGlvbiAodmFsKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFZhbHVlID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
ICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUuX19k
ZWZpbmVTZXR0ZXJfXygicHJvZmlsZSIsIGZ1bmN0aW9uICh2YWwpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzZXRWYWx1ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgICAgICAgICB9
KTsgICAKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIHZhciBo
ZWFkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaGVhZCIpOworICAgICAgICAgICAgICAgICAg
ICBoZWFkLnByb2ZpbGUgPSAiZm9vIjsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHNldFZhbHVl
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0
Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9h
ZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5PdmVycmlkZSBIVE1MSGVhZEVsZW1lbnQgcHJv
dG90eXBlIHNldHRlciBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgYnkgaW5zdGFuY2VzPC9kaXY+Cisg
ICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVy
X0hpZ2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3MmMwMzU1NjA2YjU5MWI0ZGE5ZWUzZmVj
Y2E5N2YwZTRkOGVjMTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDIgQEAKK092ZXJyaWRlIE5vZGUgcHJvdG90eXBlIHNldHRlciBwcm9w
ZXJ0eSBpcyBpbmhlcml0ZWQgYnkgSFRNTERpdkVsZW1lbnQgcHJvdG90eXBlCitQYXNzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRl
X1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyX0hpZ2guaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjdjNDAwNzAwYWI4NTc2YmJiZjE3NjA5ZDIwYjFlNzJkZDc3ODA2MjcKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1By
b3BlcnR5X1NldHRlcl9IaWdoLmh0bQpAQCAtMCwwICsxLDc0IEBACivvu788IURPQ1RZUEUgaHRt
bD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEy
IE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9z
b2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUK
KyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisg
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
LS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxo
ZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gT3ZlcnJpZGUgTm9kZSBQ
cm90b3R5cGUgR2V0dGVyIFByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIHsKKyAgICAg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSB7CisK
KyAgICAgICAgICAgICAgICAgICAgdmFyIHNldFZhbHVlID0gZmFsc2U7CisgICAgICAgICAgICAg
ICAgICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShOb2RlLnByb3RvdHlwZSwgIm5vZGVOYW1lIiwgewor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKCkgeworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9IHRydWU7CisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBOb2RlLnByb3RvdHlwZS5fX2RlZmluZVNldHRlcl9fKCJub2RlTmFtZSIsIGZ1bmN0aW9u
ICh2YWwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZSA9IHRydWU7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsK
KyAgICAgICAgICAgICAgICAgICAgZGl2Lm5vZGVOYW1lID0gImZvbyI7CisKKyAgICAgICAgICAg
ICAgICAgICAgaWYgKHNldFZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJI
VE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSB7CisgICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5PdmVycmlk
ZSBOb2RlIHByb3RvdHlwZSBzZXR0ZXIgcHJvcGVydHkgaXMgaW5oZXJpdGVkIGJ5IEhUTUxEaXZF
bGVtZW50IHByb3RvdHlwZTwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5u
aW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ0RBVEFTZWN0aW9uLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX0NEQVRBU2VjdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDM4ZTRlNmY4NDQ3NTE3
N2RlYTIwMzJlODEyZjkwMTA3ODY2MDdhNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NEQVRBU2VjdGlvbi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitDREFUQVNlY3Rpb24gOiBUZXh0CitQYXNzCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9DREFUQVNlY3Rpb24uaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfQ0RBVEFTZWN0aW9uLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZjdiMGI4OWEyMzBl
YWZhZTQxMDljZDI2ODUwMDQxOWViZmQxOTUzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ0RBVEFTZWN0aW9uLmh0
bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+
RE9NIEwyIEluaGVyaXRhbmNlIC0gQ0RBVEFTZWN0aW9uIFByb3RvdHlwZSBJbmhlcml0YW5jZTwv
dGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAg
ICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAg
ICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihD
REFUQVNlY3Rpb24ucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IENEQVRBU2VjdGlvbi5wcm90b3R5cGUuX19wcm90b19fOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAg
ICBpZiAocHJvdG8gPT09IFRleHQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAg
ICA8ZGl2PkNEQVRBU2VjdGlvbiA6IFRleHQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJl
c3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NoYXJhY3Rl
ckRhdGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfQ2hhcmFjdGVyRGF0YS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDYz
ZTk4MDMyNWZlZmNkM2E0YjEzZDc3MWI0MWJjN2MyNWE5OGUwMwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NoYXJh
Y3RlckRhdGEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorQ2hhcmFjdGVyRGF0YSA6IE5v
ZGUKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX0NoYXJhY3RlckRhdGEuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfQ2hhcmFjdGVyRGF0YS5odG0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMDQ2OTYyZDdjNmYxMjNjMGY2Njk1NGRiZmNhOWU0ZWMzOGNlMTNmOQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X0NoYXJhY3RlckRhdGEuaHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+
CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBDaGFyYWN0ZXJEYXRhIFByb3Rv
dHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRy
eSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51
bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVj
dC5nZXRQcm90b3R5cGVPZihDaGFyYWN0ZXJEYXRhLnByb3RvdHlwZSk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBDaGFyYWN0ZXJEYXRhLnByb3RvdHlw
ZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
CisgICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IE5vZGUucHJvdG90eXBlKSAKKyAg
ICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2Fk
PSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkNoYXJhY3RlckRhdGEgOiBOb2RlPC9kaXY+Cisg
ICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL1Byb3RvdHlwZV9Db21tZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NvbW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjQ3M2EzYmVmYWExZTRlN2FmOGJlNDRiN2NmODExM2VkYjQ3NjQxNTMKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9Db21tZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0NvbW1lbnQgOiBDaGFy
YWN0ZXJEYXRhCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Db21tZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0NvbW1lbnQuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFl
ZjRjNWNjYzY2OWNmODIyNDkyMzM0OTUwNTU4YWQzMzM3M2Y0MzQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Db21t
ZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRl
cm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jw
b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24s
CisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9u
IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8
dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gQ29tbWVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8
L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAg
ICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAg
ICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Yo
Q29tbWVudC5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHByb3RvID0gQ29tbWVudC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICAgaWYgKHBy
b3RvID09PSBDaGFyYWN0ZXJEYXRhLnByb3RvdHlwZSkgCisgICAgICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVz
dWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1M
ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1M
ID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9z
Y3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAg
ICAgPGRpdj5Db21tZW50IDogQ2hhcmFjdGVyRGF0YTwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0
ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9N
RXhjZXB0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX0RPTUV4Y2VwdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZGJhOWY0NGU4MzAzYzYzNTFjZTBiNTYwNmNiYTc3ODg1MzM2MzYxNwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0RP
TUV4Y2VwdGlvbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitET01FeGNlcHRpb24KK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX0RPTUV4Y2VwdGlvbi5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24uaHRtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0MGFh
YzM2ZDgyMzJkODhmMDllZmRhN2Y2N2VlYWMyZGYwNGVjNmYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNl
cHRpb24uaHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAg
IDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBET01FeGNlcHRpb24gUHJvdG90eXBlIEluaGVy
aXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3Rv
dHlwZU9mKERPTUV4Y2VwdGlvbi5wcm90b3R5cGUpOworICAgICAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIHByb3RvID0gRE9NRXhjZXB0aW9uLnByb3RvdHlwZS5fX3Byb3RvX187
CisgICAgICAgICAgICAgICAgICAgIH0gCisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAg
ICAgICAgICAgICBpZiAocHJvdG8gPT09IE9iamVjdC5wcm90b3R5cGUpIAorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3Qo
KSI+CisgICAgICAgIDxkaXY+RE9NRXhjZXB0aW9uPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRl
c3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Eb2N1
bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL1Byb3RvdHlwZV9Eb2N1bWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODE5ZmM5YzNh
NWJjZGZhOWM0Njk2ZmEyNTFmNmI0OTZhYTNiMzI2ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0RvY3VtZW50LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0RvY3VtZW50IDogTm9kZQorUGFzcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
RG9jdW1lbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfRG9jdW1lbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRhYTE5MmE2OTc1Y2MzYjNhMGM1NGMy
ZTI0NGYzZmQ3NTNhYTRmYTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9Eb2N1bWVudC5odG0KQEAgLTAsMCArMSw3
MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0
YW5jZSAtIERvY3VtZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qu
Z2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihEb2N1bWVudC5wcm90b3R5cGUp
OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAg
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gRG9jdW1l
bnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAgICAgICAgIGlmIChwcm90byA9PT0gTm9kZS5wcm90b3R5cGUpIAorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3Qo
KSI+CisgICAgICAgIDxkaXY+RG9jdW1lbnQgOiBOb2RlPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9
InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9F
bGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJp
dGFuY2UvUHJvdG90eXBlX0VsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUzMTkwZTkx
NjlhNWEwNTJkOGE4OTMwZTkxYzAyNWI2MTMzN2RmMmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FbGVtZW50LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK0VsZW1lbnQgOiBOb2RlCitQYXNzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9F
bGVtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJv
dG90eXBlX0VsZW1lbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5ZGE3ZTNlOWM1MjU4NTU5ZDEzNmE2ZTRk
Zjg1ZDc4MWZjMzRhMzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FbGVtZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBA
Civvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2Vz
IENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNv
bnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRl
biBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQg
Q09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9O
CisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNl
IC0gRWxlbWVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkg
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICB2YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFBy
b3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAg
ICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoRWxlbWVudC5wcm90b3R5cGUpOworICAg
ICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gRWxlbWVudC5wcm90
b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAgICB9IAorICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICAgICAgaWYgKHByb3RvID09PSBOb2RlLnByb3RvdHlwZSkg
CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9u
bG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5FbGVtZW50IDogTm9kZTwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfRXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjliYzQyNTdlNjAxNGQ1YjhhZWU3YTY5MTYzZDhhZDdjNDkwZTQ2ODIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9F
dmVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitFdmVudAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRXZl
bnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfRXZlbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwMjM0ZmNiZGMzYTg3OGY1MzgwMWQ3NzcyMWE3MjU1
MjQ5ODZlYmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9FdmVudC5odG0KQEAgLTAsMCArMSw2OSBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
ID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIEV2ZW50
IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90
byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2Yp
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9m
KEV2ZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IEV2ZW50LnByb3Rv
dHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAg
ICAgICBpZiAocHJvdG8gPT09IE9iamVjdC5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVy
SFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVy
SFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAg
IDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+Cisg
ICAgICAgIDxkaXY+RXZlbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVu
bmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxCb2R5RWxlbWVudC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9IVE1MQm9keUVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM5MTlhMTE1
YjkyMjI5YzYzYmY3YWQxY2IwZWNmNGJkNmIzNjU3ZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MQm9keUVs
ZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorSFRNTEJvZHlFbGVtZW50IDogSFRN
TEVsZW1lbnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxCb2R5RWxlbWVudC5odG0gYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MQm9keUVsZW1lbnQuaHRt
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjgxNWIzM2VmMjVkMjY5YWYyNGFjYjJmOTBkNTUxMDU4MTM3YWVhOTkKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9IVE1MQm9keUVsZW1lbnQuaHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9D
VFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0
IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3Jz
IG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Np
b24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElP
TiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+
CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBIVE1MQm9k
eUVsZW1lbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90
b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKEhUTUxCb2R5RWxlbWVudC5wcm90b3R5cGUp
OworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAg
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gSFRNTEJv
ZHlFbGVtZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IEhUTUxFbGVtZW50LnByb3RvdHlwZSkg
CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9u
bG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5IVE1MQm9keUVsZW1lbnQgOiBIVE1MRWxl
bWVudDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERpdkVsZW1lbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTERp
dkVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1YzU4NjA3NjA2ZDBmNTc2Mjk0N2I1
NWI5YzJlMzZjZWU0M2FmMmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRGl2RWxlbWVudC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyIEBACitIVE1MRGl2RWxlbWVudCA6IEhUTUxFbGVtZW50CitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9IVE1MRGl2RWxlbWVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MRGl2RWxlbWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTdhNDA3
M2FiYWQ3MTYwZjdlMTcwYjFhZTkzZjJhOTgxNjk4OGM0OAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxEaXZF
bGVtZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gSFRNTERpdkVsZW1lbnQgUHJvdG90eXBlIElu
aGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFBy
b3RvdHlwZU9mKEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUuX19w
cm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYg
KHByb3RvID09PSBIVE1MRWxlbWVudC5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJl
c3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRN
TCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRN
TCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAg
ICAgIDxkaXY+SFRNTERpdkVsZW1lbnQgOiBIVE1MRWxlbWVudDwvZGl2PgorICAgICAgICA8ZGl2
IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfSFRNTEVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTEVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjcyYWJhNzFiMmY3MGVlZmEzY2RmNWEwODY3NzJlY2U1ZDkwZWU2OTgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlw
ZV9IVE1MRWxlbWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitIVE1MRWxlbWVudCA6
IEVsZW1lbnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxFbGVtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxFbGVtZW50Lmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4yNzNjMWZhNzdhYjMxNDNmYjMwZGM0OTI5ZDNkMjdmYzYyMjBmZWJlCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfSFRNTEVsZW1lbnQuaHRtCkBAIC0wLDAgKzEsNzAgQEAKK++7vzwhRE9DVFlQRSBodG1sPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+
CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBIVE1MRWxlbWVudCBQcm90b3R5
cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkg
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxs
OworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3Qu
Z2V0UHJvdG90eXBlT2YoSFRNTEVsZW1lbnQucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IEhUTUxFbGVtZW50LnByb3RvdHlwZS5fX3By
b3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBpZiAo
cHJvdG8gPT09IEVsZW1lbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAi
RmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICBjYXRjaCAoZXgpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+Cisg
ICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkhUTUxFbGVtZW50IDog
RWxlbWVudDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+
CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTElzSW5kZXhFbGVtZW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X0hUTUxJc0luZGV4RWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWQ1ZDU5YTkwNDc5
M2Y5YWUxY2VlYzIzZTlmOTNhNjA1OGQxOGRhNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxl
bWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitIVE1MSXNJbmRleEVsZW1lbnQgOiBI
VE1MRWxlbWVudAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfSFRNTElzSW5kZXhFbGVtZW50Lmh0bSBiL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxl
bWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOGVmZmUzMTFlZjk4ODI1ZmFmZGU3ZmJjOWFhNWY3YWI2YzAy
MzExNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC5odG0KQEAgLTAsMCArMSw3MSBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5j
ZSAtIEhUTUxJc0luZGV4RWxlbWVudCBQcm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAg
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkgCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICB2YXIgcHJvdG8gPSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAo
T2JqZWN0LmdldFByb3RvdHlwZU9mKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgICAgICAgICAgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoSFRNTElzSW5kZXhF
bGVtZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAg
ICAgcHJvdG8gPSBIVE1MSXNJbmRleEVsZW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAg
ICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIGlmIChwcm90byA9PT0gSFRN
TEVsZW1lbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAgICA8ZGl2PkhUTUxJ
c0luZGV4RWxlbWVudCA6IEhUTUxFbGVtZW50PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3Ry
ZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9NZXNzYWdl
RXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfTWVzc2FnZUV2ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjM3
NThkNjkzMzVkNzNjMjM4NzM2NjMyYTRlODgzODVhOTZjNzJjCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVzc2Fn
ZUV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK01lc3NhZ2VFdmVudCA6IEV2ZW50
CitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL1Byb3RvdHlwZV9NZXNzYWdlRXZlbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVzc2FnZUV2ZW50Lmh0bQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
YTZjOWJmNjNkNjk3NmMwZGJhMzQ2ZmZkOTY4NGYzYTJhYjU0MzdiCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTWVz
c2FnZUV2ZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0K
KyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj
YXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBv
cmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRt
bCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAg
ICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gTWVzc2FnZUV2ZW50IFByb3RvdHlwZSBJ
bmhlcml0YW5jZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7Cisg
ICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQ
cm90b3R5cGVPZihNZXNzYWdlRXZlbnQucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgICAgICBwcm90byA9IE1lc3NhZ2VFdmVudC5wcm90b3R5cGUuX19wcm90
b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYgKHBy
b3RvID09PSBFdmVudC5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlu
bmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+
TWVzc2FnZUV2ZW50IDogRXZlbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+
UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90
b3R5cGVfTW91c2VFdmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmQ1NzFiMWMyZjU4OTA2
YjkyZDg1ZmFlNDA1Y2M3OWNhYTIxOWY5YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorTW91c2VFdmVudCA6IFVJRXZlbnQKK1Bhc3MKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X01vdXNlRXZlbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfTW91c2VFdmVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzdiMWU1YjQ4MWNmMDU1YTBi
MWEwYzJkNGM2MzJlZDk3YjM4MzgyNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX01vdXNlRXZlbnQuaHRtCkBAIC0w
LDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVy
IFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1l
cyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
CisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQg
Q09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIg
SW5oZXJpdGFuY2UgLSBNb3VzZUV2ZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwvdGl0bGU+Cisg
ICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0
aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIGlm
IChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihNb3VzZUV2ZW50
LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJv
dG8gPSBNb3VzZUV2ZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IFVJRXZlbnQucHJvdG90eXBl
KQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBv
bmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+TW91c2VFdmVudCA6IFVJRXZlbnQ8L2Rp
dj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX05vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTm9kZS1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZjM0ZDAzZmQ0MWMxZGVjZmE3ZGQwOWUwOWJlNWNlNjg0NzgwODAyOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX05vZGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorTm9kZQorUGFzcwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
Tm9kZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9Ob2RlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MzA3ODRjZTQwNTk0NTU4NzdhMjA2ZTNjNWM4MmE0
ODBlYzUwNDdjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfTm9kZS5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
ID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIE5vZGUg
UHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAg
ICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3Rv
ID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikg
CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0g
T2JqZWN0LmdldFByb3RvdHlwZU9mKE5vZGUucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE5vZGUucHJvdG90eXBlLl9fcHJvdG9fXzsK
KyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIGlmIChwcm90byA9
PT0gT2JqZWN0LnByb3RvdHlwZSkgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJI
VE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAg
IGVsc2UgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5Ob2Rl
PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRlc3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdDaXJjbGVFbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNs
ZUVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI4YzNiMDUyMzc1ZGMzZDdlODM3NDQ2
OTA1ZmZhM2NlNjBlZGUxYTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdDaXJjbGVFbGVtZW50LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDIgQEAKK1NWR0NpcmNsZUVsZW1lbnQgOiBTVkdFbGVtZW50CitQYXNz
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1By
b3RvdHlwZV9TVkdDaXJjbGVFbGVtZW50Lmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNsZUVsZW1lbnQuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmE0MDk2ZDEzNDg3NjNmNmEyYjQwZmVjMTE4OThmMDUxZjA3MDYzZDcKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9T
VkdDaXJjbGVFbGVtZW50Lmh0bQpAQCAtMCwwICsxLDcwIEBACivvu788IURPQ1RZUEUgaHRtbD4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFk
PgorICAgICAgICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gU1ZHQ2lyY2xlRWxlbWVudCBQ
cm90b3R5cGUgSW5oZXJpdGFuY2U8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkgCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAg
ICB0cnkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgcHJvdG8g
PSBudWxsOworICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKSAK
KyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBP
YmplY3QuZ2V0UHJvdG90eXBlT2YoU1ZHQ2lyY2xlRWxlbWVudC5wcm90b3R5cGUpOworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gU1ZHQ2lyY2xlRWxlbWVu
dC5wcm90b3R5cGUuX19wcm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgICAgICAgICAgaWYgKHByb3RvID09PSBTVkdFbGVtZW50LnByb3RvdHlwZSkKKyAgICAgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+
U1ZHQ2lyY2xlRWxlbWVudCA6IFNWR0VsZW1lbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVz
dHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0Vs
ZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfU1ZHRWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGRlMTQ2
ZmE2YTVlMTVkMzE3YjY4MmJhNDQ2MDhhODE2MGUxMjZkYgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1l
bnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorU1ZHRWxlbWVudCA6IEVsZW1lbnQKK1Bh
c3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1NWR0VsZW1lbnQuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHRWxlbWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDNjMDVjZWE1
NDdiMTRiMmRjYWIwZTg2N2UyYTM5MmE0NTFmY2NmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0VsZW1lbnQu
aHRtCkBAIC0wLDAgKzEsNzEgQEAKK++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0
IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0
aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBt
ZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9y
IHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBN
SUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRs
ZT5ET00gTDIgSW5oZXJpdGFuY2UgLSBTVkdFbGVtZW50IFByb3RvdHlwZSBJbmhlcml0YW5jZTwv
dGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAg
ICAgIGZ1bmN0aW9uIFJ1blRlc3QoKSAKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeSAKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHZhciBwcm90byA9IG51bGw7CisgICAgICAgICAgICAg
ICAgICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2YpIAorICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihT
VkdFbGVtZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICAgICAgcHJvdG8gPSBTVkdFbGVtZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IEVsZW1lbnQu
cHJvdG90eXBlKQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNz
IjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChl
eCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+U1ZHRWxlbWVudCA6IEVs
ZW1lbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2Pgor
ICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVtZW50LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1Jl
Y3RFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ODA5YmE3Nzg0ZDk4MDEyMzg1YThh
Mjc2NGUwNzUxZTU2MzU5MjY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMiBAQAorU1ZHUmVjdEVsZW1lbnQgOiBTVkdFbGVtZW50CitQYXNzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9TVkdSZWN0RWxlbWVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdSZWN0RWxlbWVudC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjNjNWI2
NDZhNmVjNmUxODM1NGZlNzEwMjE4YjcwOWFlMGZjYjM2MwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RF
bGVtZW50Lmh0bQpAQCAtMCwwICsxLDcxIEBACivvu788IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbCB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+RE9NIEwyIEluaGVyaXRhbmNlIC0gU1ZHUmVjdEVsZW1lbnQgUHJvdG90eXBlIElu
aGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAg
ICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFBy
b3RvdHlwZU9mKFNWR1JlY3RFbGVtZW50LnByb3RvdHlwZSk7CisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICAgICAgcHJvdG8gPSBTVkdSZWN0RWxlbWVudC5wcm90b3R5cGUuX19w
cm90b19fOworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgaWYg
KHByb3RvID09PSBTVkdFbGVtZW50LnByb3RvdHlwZSkKKyAgICAgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwg
PSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3Nj
cmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAgICAg
ICA8ZGl2PlNWR1JlY3RFbGVtZW50IDogU1ZHRWxlbWVudDwvZGl2PgorICAgICAgICA8ZGl2IGlk
PSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVf
U1ZHU1ZHRWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdTVkdFbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4yYzg2MDI5YTg2MThjYzk4NGI3NDZkYmIyNDE4NzFkNjgxNjUxZDA2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfU1ZHU1ZHRWxlbWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitTVkdTVkdFbGVt
ZW50IDogU1ZHRWxlbWVudAorUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHU1ZHRWxlbWVudC5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdTVkdFbGVtZW50
Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40OTQ4YmU0MzI3OGY2NjY3MjA3Y2I3MjQ4Y2QwNDRmZTI5NGRlOGVm
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0
YW5jZS9Qcm90b3R5cGVfU1ZHU1ZHRWxlbWVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFE
T0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmln
aHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisK
KyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscwor
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFU
SU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwi
ID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAtIFNWR1NW
R0VsZW1lbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90
b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFNWR1NWR0VsZW1lbnQucHJvdG90eXBlKTsK
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IFNWR1NWR0Vs
ZW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgICAgIGlmIChwcm90byA9PT0gU1ZHRWxlbWVudC5wcm90b3R5cGUpIAorICAg
ICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQYXNzIjsKKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkgCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9
IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+U1ZHU1ZHRWxlbWVudCA6IFNWR0VsZW1lbnQ8L2Rp
dj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwvZGl2PgorICAgIDwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5o
ZXJpdGFuY2UvUHJvdG90eXBlX1N0b3JhZ2VFdmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhMGE5MjRkZWIzN2ZhYTE5MWRmY2Q1ODQ0M2I2YzFhYmNk
MDBiMjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MiBAQAorU3RvcmFnZUV2ZW50IDogRXZlbnQKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1N0b3JhZ2VFdmVudC5odG0g
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9y
YWdlRXZlbnQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzMjIyZTFlYzE4ZWFhNGE4NjA0MmRkYWU5Mjk4OTgx
ZWNjYTRiYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TdG9yYWdlRXZlbnQuaHRtCkBAIC0wLDAgKzEsNzEgQEAK
K++7vzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMg
Q29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29u
dHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVu
IHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBD
T1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04K
KyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sIiA+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5ET00gTDIgSW5oZXJpdGFuY2Ug
LSBTdG9yYWdlRXZlbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVz
dCgpIAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5n
ZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFN0b3JhZ2VFdmVudC5wcm90b3R5
cGUpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisg
ICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gU3Rv
cmFnZUV2ZW50LnByb3RvdHlwZS5fX3Byb3RvX187CisgICAgICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgICAgICBpZiAocHJvdG8gPT09IEV2ZW50LnByb3RvdHlwZSkgCisgICAg
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KSAKKyAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuaW5uZXJIVE1MID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0i
UnVuVGVzdCgpIj4KKyAgICAgICAgPGRpdj5TdG9yYWdlRXZlbnQgOiBFdmVudDwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5j
ZS9Qcm90b3R5cGVfVGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9UZXh0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
Y2RhZWIwMDNmYWEzOTY2MmRiZDUyMmM2MGViNzc0YzUxYTNhNzc5Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitUZXh0IDogQ2hhcmFjdGVyRGF0YQorUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfVGV4dC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL1Byb3RvdHlwZV9UZXh0Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNmJiYjQ5ZWE1ZTMyZmU4ZjI4NDI4
NzFjNGExODc0MTJiNTVlNjRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVGV4dC5odG0KQEAgLTAsMCArMSw3MSBA
QAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdl
cyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElP
TgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5j
ZSAtIFRleHQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90
b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFRleHQucHJvdG90eXBlKTsKKyAgICAgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IFRleHQucHJvdG90eXBlLl9f
cHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIGlm
IChwcm90byA9PT0gQ2hhcmFjdGVyRGF0YS5wcm90b3R5cGUpCisgICAgICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8
L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAg
ICAgICA8ZGl2PlRleHQgOiBDaGFyYWN0ZXJEYXRhPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InRl
c3RyZXN1bHQiPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9VSUV2
ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vaW5oZXJpdGFu
Y2UvUHJvdG90eXBlX1VJRXZlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM5NjI3YWE1YmRh
NmEzYTRiMDljOGRjMTcwNjE2NWJkNjBiNjcyMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9VSUV2ZW50LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDIgQEAKK1VJRXZlbnQgOiBFdmVudAorUGFzcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVUlF
dmVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9VSUV2ZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGVkYjgzYTU0OTFmMmNhM2ZiMjQ2MmUwNWJi
OTI0MmFmNDExN2JjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfVUlFdmVudC5odG0KQEAgLTAsMCArMSw3MSBAQAor
77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBD
b3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
CisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5h
bWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250
cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgor
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkv
eGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkRPTSBMMiBJbmhlcml0YW5jZSAt
IFVJRXZlbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpIAor
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAg
ICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5nZXRQcm90
b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFVJRXZlbnQucHJvdG90eXBlKTsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAorICAgICAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBwcm90byA9IFVJRXZlbnQucHJvdG90
eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
ICAgIGlmIChwcm90byA9PT0gRXZlbnQucHJvdG90eXBlKSAKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgZWxzZSAKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpIAorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhU
TUwgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8
L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCkiPgorICAg
ICAgICA8ZGl2PlVJRXZlbnQgOiBFdmVudDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVz
dWx0Ij5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVu
dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9XaGVlbEV2ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40M2QzZjhjYTg2
NGMyNTI0ZDhmOTI4MDdkYjBmNzQ1OWEzYWM0MjRmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitXaGVlbEV2ZW50IDogTW91c2VFdmVudAorUGFz
cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Q
cm90b3R5cGVfV2hlZWxFdmVudC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9XaGVlbEV2ZW50Lmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42YWZmOTlhMTAx
YzA5YzQ4YzdiMjViYWE3Njg0ZjcwYjg4YWExOTM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfV2hlZWxFdmVudC5o
dG0KQEAgLTAsMCArMSw3MSBAQAor77u/PCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJuZXQg
RXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRp
b24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3Ig
dGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1J
Q1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWwgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiID4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxl
PkRPTSBMMiBJbmhlcml0YW5jZSAtIFdoZWVsRXZlbnQgUHJvdG90eXBlIEluaGVyaXRhbmNlPC90
aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdCgpIAorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5IAorICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHByb3RvID0gbnVsbDsKKyAgICAgICAgICAgICAg
ICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZikgCisgICAgICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKFdo
ZWVsRXZlbnQucHJvdG90eXBlKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICBlbHNlIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBwcm90byA9IFdoZWVsRXZlbnQucHJvdG90eXBlLl9fcHJvdG9fXzsKKyAgICAgICAgICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgICAgIGlmIChwcm90byA9PT0gTW91c2VFdmVu
dC5wcm90b3R5cGUpIAorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJQ
YXNzIjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBlbHNlIAor
ICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkgCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmlubmVySFRNTCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKSI+CisgICAgICAgIDxkaXY+V2hlZWxFdmVudCA6
IE1vdXNlRXZlbnQ8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0idGVzdHJlc3VsdCI+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vc3R5bGUvYmFja2dyb3VuZFJlcGVhdC1leHBlY3RlZC5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tncm91bmRSZXBlYXQtZXhwZWN0ZWQuaHRt
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmYyMzQ1N2IwYjg0M2QwYzNmOTAwOWJjOTY2MTc5NmQ0NjNiYTcxYWMKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tn
cm91bmRSZXBlYXQtZXhwZWN0ZWQuaHRtCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+Cis8Ym9keT4K
KzxkaXYgc3R5bGU9IndpZHRoOiA1MDBweDsgaGVpZ2h0OiA1MDBweDsgYm9yZGVyOiAxMHB4IHNv
bGlkIGJsYWNrOyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwocmVzb3VyY2VzL21hcC5qcGcpOyBiYWNr
Z3JvdW5kLXJlcGVhdDogcmVwZWF0LXgiPlRoaXMgZGl2IHNob3VsZCBoYXZlIGEgaG9yaXpvbnRh
bCByZXBlYXRpbmcgYmFja2dyb3VuZDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDUwMHB4OyBo
ZWlnaHQ6IDUwMHB4OyBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7IGJhY2tncm91bmQtaW1hZ2U6
IHVybChyZXNvdXJjZXMvbWFwLmpwZykiPlBhc3M8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvYmFja2dyb3VuZFJl
cGVhdC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2JhY2tncm91bmRS
ZXBlYXQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQzMzM0ZmFlMGVkZGVmNmFmZmRmZWZhNDgwNGJjOGQ2Mjc0
NzlmNmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0
eWxlL2JhY2tncm91bmRSZXBlYXQuaHRtCkBAIC0wLDAgKzEsNTIgQEAKK++7vzwhRE9DVFlQRSBo
dG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8vRU4iICJodHRwOi8vd3d3
LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KKzwhLS0KKyBJbnRlcm5l
dCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUg
bWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgor
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5v
ciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8
aGVhZD4KKyAgICAgICAgPHRpdGxlPlN5bnRheCBmb3IgYmFja2dyb3VuZFJlcGVhdDwvdGl0bGU+
CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICBkaXYKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwocmVzb3VyY2Vz
L21hcC5qcGcpOworICAgICAgICAgICAgICAgIHdpZHRoOjUwMHB4OworICAgICAgICAgICAgICAg
IGhlaWdodDo1MDBweDsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7
CisgICAgICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5
PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iYmFja2dyb3VuZC1yZXBlYXQ6cmVw
ZWF0LXgiPlRoaXMgZGl2IHNob3VsZCBoYXZlIGEgaG9yaXpvbnRhbCByZXBlYXRpbmcgYmFja2dy
b3VuZDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5GYWlsPC9kaXY+CisgICAg
ICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGlmKHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2IiksICIi
KS5nZXRQcm9wZXJ0eVZhbHVlKCJiYWNrZ3JvdW5kLXJlcGVhdCIpID09ICJyZXBlYXQteCIpCisg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vc3R5bGUvZHVwbGljYXRlUnVsZS1leHBlY3RlZC5odG0gYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUtZXhwZWN0ZWQuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjVhY2MwMGNkOTQyYzkzODc0NzllYTMyNjI4MmJlZjA0MjUwYWU2ODEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0
ZVJ1bGUtZXhwZWN0ZWQuaHRtCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+Cis8Ym9keT4KKzxkaXYg
c3R5bGU9ImNvbG9yOiBncmVlbiI+VGhpcyB0ZXh0IHNob3VsZCBiZSBncmVlbiBhbmQgdGhlIHBh
Z2Ugc2hvdWxkIGhhdmUgbm8gb3RoZXIgc3R5bGUuPC9kaXY+Cis8ZGl2IHN0eWxlPSJjb2xvcjog
Z3JlZW4iPlBhc3M8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvZHVwbGljYXRlUnVsZS5odG0gYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3
Y2ZmMjJlNDE4YmI1YzRlMTUyZWRkMjZhZmZiMDIwMWRiYjhkMzAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2R1cGxpY2F0ZVJ1bGUuaHRtCkBA
IC0wLDAgKzEsNTAgQEAKK++7vzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhU
TUwgMS4wIFN0cmljdC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1s
MS1zdHJpY3QuZHRkIj4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHly
aWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
CisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1
dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJt
aXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9S
QVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Cisg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPlByb3Bl
cnR5IGlzIGRlY2xhcmVkIHR3aWNlIGluIHJ1bGU8L3RpdGxlPgorICAgICAgICA8c3R5bGUgdHlw
ZT0idGV4dC9jc3MiPgorICAgICAgICAgICAgZGl2CisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgY29sb3I6IHJlZDsKKyAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAg
ICA8ZGl2PlRoaXMgdGV4dCBzaG91bGQgYmUgZ3JlZW4gYW5kIHRoZSBwYWdlIHNob3VsZCBoYXZl
IG5vIG90aGVyIHN0eWxlLjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5GYWls
PC9kaXY+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAg
ICAgIGlmKGRvY3VtZW50LnN0eWxlU2hlZXRzWzBdLmNzc1J1bGVzWzBdLnN0eWxlLmxlbmd0aCA9
PSAxKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9p
bnNlcnRIaWVyYXJjaHlFcnJvci1leHBlY3RlZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJhcmNoeUVycm9yLWV4cGVjdGVkLmh0bQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lZjc2MGUzMjA0ZTk5NGFkNTgzYzcxMzY2Y2E0ZmZmNTE5MTc3ZjQ3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlF
cnJvci1leHBlY3RlZC5odG0KQEAgLTAsMCArMSw2IEBACis8aHRtbD4KKzxib2R5PgorPGRpdiBz
dHlsZT0iY29sb3I6IHJlZCI+VGhpcyB0ZXh0IHNob3VsZCBiZSByZWQgYW5kIHRoZSBwYWdlIHNo
b3VsZCBoYXZlIG5vIG90aGVyIHN0eWxlLjwvZGl2PgorPGRpdiBzdHlsZT0iY29sb3I6IHJlZCI+
UGFzczwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0gYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJhcmNoeUVycm9yLmh0bQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xYWM1MWMxNDAyMzBlODllMmJiZmUwZTZkYThjMmM2ZWRhOWFiMzQ4Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJj
aHlFcnJvci5odG0KQEAgLTAsMCArMSw2MCBAQAor77u/PCFET0NUWVBFIGh0bWwgUFVCTElDICIt
Ly9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3ho
dG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+SElFUkFSQ0hZX1JFUVVFU1RfRVJSIHJhaXNlZCBpZiBAaW1wb3J0IHJ1bGUgaW5z
ZXJ0ZWQgYWZ0ZXIgYSByZWd1bGFyIHJ1bGU8L3RpdGxlPgorICAgICAgICA8c3R5bGUgdHlwZT0i
dGV4dC9jc3MiPgorICAgICAgICAgICAgYm9keQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGNvbG9yOiBibHVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZGl2CisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgY29sb3I6IHJlZDsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxkaXY+VGhpcyB0
ZXh0IHNob3VsZCBiZSByZWQgYW5kIHRoZSBwYWdlIHNob3VsZCBoYXZlIG5vIG90aGVyIHN0eWxl
LjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5GYWlsPC9kaXY+CisgICAgICAg
IDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHRyeQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LnN0eWxlU2hlZXRzWzBdLmluc2VydFJ1
bGUoIkBpbXBvcnQgdXJsKHJlc291cmNlcy90ZXN0U3R5bGUxLmNzcyk7IiwgMSk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBjYXRjaChlKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGlmKHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHksICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCJiYWNrZ3JvdW5kLWNvbG9yIikgPT0gInRyYW5zcGFyZW50IiAmJiBkb2N1bWVu
dC5zdHlsZVNoZWV0c1swXS5jc3NSdWxlcy5sZW5ndGggPT0gMikKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0
IikuaW5uZXJIVE1MID0gIlBhc3MiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnZhbGlkTWVkaWEtZXhwZWN0ZWQuaHRt
IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnZhbGlkTWVkaWEtZXhwZWN0
ZWQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjI2MmZhYjEyOTczOTI2OWFjYzA2Nzc2MGNmZTQxNjc2M2E4MjAx
MWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxl
L2ludmFsaWRNZWRpYS1leHBlY3RlZC5odG0KQEAgLTAsMCArMSw2IEBACis8aHRtbD4KKzxib2R5
PgorPGRpdj5UaGUgcGFnZSBzaG91bGQgcmVtYWluIHVuc3R5bGVkPC9kaXY+Cis8ZGl2PlBhc3M8
L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vc3R5bGUvaW52YWxpZE1lZGlhLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NzI4OWNmMWZhYmQyNTQ3
NTk2M2U4MDRhOWExMTdlZjgzNDYwNmY5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnZhbGlkTWVkaWEuaHRtCkBAIC0wLDAgKzEsNDcgQEAK
K++7vzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFN0cmljdC8v
RU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4K
KzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1p
Y3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBt
b2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0
IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkBpbXBvcnQgaW5zaWRlIG9mIEBt
ZWRpYTwvdGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAg
ICBAbWVkaWEgc2NyZWVuIHsgQGltcG9ydCB1cmwocmVzb3VyY2VzL3Rlc3RTdHlsZTEuY3NzKTsg
fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAKKyAg
ICA8ZGl2PlRoZSBwYWdlIHNob3VsZCByZW1haW4gdW5zdHlsZWQ8L2Rpdj4KKyAgICA8ZGl2IGlk
PSJ0ZXN0cmVzdWx0Ij5GYWlsPC9kaXY+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4gICAgCisgICAgICAgICAgICBpZiAoZG9jdW1lbnQuc3R5bGVTaGVldHNbMF0uY3Nz
UnVsZXMubGVuZ3RoID09IDEpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAg
ICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvbmVnYXRpdmVCb3JkZXJX
aWR0aC1leHBlY3RlZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25l
Z2F0aXZlQm9yZGVyV2lkdGgtZXhwZWN0ZWQuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFmMWMyZDU2ZTY0MTJk
MWU3ZjQ0ZWE5Y2ZmZDcyNmVmN2MzY2M2YzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL25lZ2F0aXZlQm9yZGVyV2lkdGgtZXhwZWN0ZWQuaHRt
CkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImJvcmRlcjogc29s
aWQgYmxhY2sgMTBweDsgYm9yZGVyLXRvcC13aWR0aDogLTEwcHgiPlRoaXMgZGl2IHNob3VsZCBo
YXZlIGEgMTBweCBib3JkZXI8L2Rpdj4KKzxkaXY+UGFzczwvZGl2PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9uZWdhdGl2
ZUJvcmRlcldpZHRoLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvbmVn
YXRpdmVCb3JkZXJXaWR0aC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWFlN2VmZTI5MGEyY2I1YzI1MWM5Mjgz
MWQ3YzAwZTkyZjYwMWU4YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vc3R5bGUvbmVnYXRpdmVCb3JkZXJXaWR0aC5odG0KQEAgLTAsMCArMSw0OSBAQAor
77u/PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9F
TiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPgor
PCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWlj
cm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1v
ZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQg
Q29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4K
KzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+TmVnYXRpdmUgYm9yZGVyIHdpZHRo
IHByb3BlcnR5PC90aXRsZT4KKyAgICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKyAgICAg
ICAgICAgICN0ZXN0RGl2CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgYm9yZGVyOiBz
b2xpZCBibGFjayAxMHB4OworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwv
aGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImJvcmRl
ci10b3Atd2lkdGg6IC0xMHB4OyI+VGhpcyBkaXYgc2hvdWxkIGhhdmUgYSAxMHB4IGJvcmRlcjwv
ZGl2PgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0cmVzdWx0Ij5GYWlsPC9kaXY+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGlmKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iikuc3R5bGUuYm9yZGVyVG9wV2lkdGggPT0gIiIpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3Ry
ZXN1bHQiKS5pbm5lckhUTUwgPSAiUGFzcyI7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3N0eWxlL3Jlc291cmNlcy90
ZXN0U3R5bGUxLmNzcyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vc3R5bGUvcmVzb3Vy
Y2VzL3Rlc3RTdHlsZTEuY3NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM1OTY2ODY1YzljZWMxOWFkMzVlNTZhN2Vi
MWI4ZGQ5OTExZmZkZWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3N0eWxlL3Jlc291cmNlcy90ZXN0U3R5bGUxLmNzcwpAQCAtMCwwICsxIEBACivvu79i
b2R5IHsgZGlzcGxheTogaW5saW5lOyBiYWNrZ3JvdW5kLWNvbG9yOiBTaWx2ZXI7IH0gZGl2IHsg
YXppbXV0aDogYmVoaW5kOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiBMaW1lOyBmb250LXNp
emU6IHgtc21hbGw7IH0gClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNoX2ludmFsaWRT
dGF0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNh
bC9uaV9kZXRhY2hfaW52YWxpZFN0YXRlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMGI1ZjM5
M2JkYzI4YTk1MDNmYzc0NGFjZDE4MTJjMzE1ZGQ2NWI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNoX2ludmFsaWRTdGF0
ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIGlmIHRoZSBj
b3JyZWN0IERPTUV4Y2VwdGlvbiBpcyB0aHJvd24gd2hlbiBjYWxsaW5nIG5leHROb2RlKCkgb3Ig
cHJldmlvdXNOb2RlKCkgYWZ0ZXIgZGV0YWNoKCkgaGFzIGJlZW4gY2FsbGVkIG9uIGEgTm9kZUl0
ZXJhdG9yLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4K
KworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvbmlfZGV0YWNoX2ludmFsaWRTdGF0ZS5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL3RyYXZlcnNhbC9uaV9kZXRhY2hfaW52YWxpZFN0YXRlLmh0bQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMDky
NDAxM2ZjZGViMzc3OTYxMDdhZTNiMTFiODc4MjI0ZGI5MDE0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfZGV0YWNoX2ludmFsaWRT
dGF0ZS5odG0KQEAgLTAsMCArMSw5MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8IS0tCisgSW50ZXJu
ZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9y
YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAor
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJl
IG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YK
KyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBu
b3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+CisgICAg
PGhlYWQ+CisgICAgICAgIDx0aXRsZSBpZD0nZGVzYyc+IE5vZGVJdGVyYXRvciAtIGNhbGxpbmcg
cHJldmlvdXNOb2RlKCkgYW5kIG5leHROb2RlKCkgYWZ0ZXIgY2FsbGluZyBkZXRhY2goKSwgbXVz
dCB0aHJvdyBJTlZBTElEX1NUQVRFX0VSUiBET01FeGNlcHRpb24gPC90aXRsZT4KKyAgICAgICAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gUnVu
VGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgICAgICAgICB2YXIg
aXRlciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1bWVudC5ib2R5LCBOb2RlRmls
dGVyLlNIT1dfQUxMLCBudWxsLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIGl0ZXIuZGV0
YWNoKCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICB0cnkKKyAg
ICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgaXRlci5uZXh0Tm9k
ZSgpOworICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBjYXRjaChleCkKKyAgICAgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEoZXggaW5zdGFuY2Vv
ZiBET01FeGNlcHRpb24pKQorICAgICAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChET01FeGNlcHRpb24uSU5W
QUxJRF9TVEFURV9FUlIgIT0gZXguY29kZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgIAorICAgICAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICAgICAgaXRlci5wcmV2aW91c05vZGUoKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgY2F0Y2goZXgpCisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGlmICghKGV4IGluc3RhbmNlb2YgRE9NRXhjZXB0aW9uKSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAgICAgZWxzZSBpZiAoRE9NRXhjZXB0aW9uLklOVkFMSURfU1RBVEVfRVJSICE9IGV4
LmNvZGUpCisgICAgICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRh
dGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRj
aCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwv
aGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPiAKKyAgICAgICAgPHA+VGhpcyB0
ZXN0IGNoZWNrcyBpZiB0aGUgY29ycmVjdCBET01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gY2Fs
bGluZyBuZXh0Tm9kZSgpIG9yIHByZXZpb3VzTm9kZSgpIGFmdGVyIGRldGFjaCgpIGhhcyBiZWVu
IGNhbGxlZCBvbiBhIE5vZGVJdGVyYXRvci48L3A+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlm
IHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0ndGVz
dHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC9uaV9odG1sQW5kU3ZnLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL25pX2h0bWxBbmRTdmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmQ4NjVkYmRiNDMxNTZmNGViZjA2Yjc2ODIwZDJiOGQwZmU2YTE3NTQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9odG1sQW5k
U3ZnLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCB1c2VzIGEgTm9kZUl0
ZXJhdG9yIHRvIGl0ZXJhdGUgdGhyb3VnaCBhIGRvY3VtZW50IGNvbnRhaW5pbmcgSFRNTCBlbGVt
ZW50cyBhbmQgU1ZHIGVsZW1lbnRzLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIg
YXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFuZFN2Zy5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9odG1sQW5kU3ZnLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZWU2NTM0
OTRhODFkMzEyN2JhOGNjNzc2NTYyNmE2Mjg0NDBjYjIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfaHRtbEFuZFN2Zy5odG0KQEAg
LTAsMCArMSwxMDIgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAK
KyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gTm9kZUl0ZXJhdG9yIC0gaXRlcmF0ZSB0aHJvdWdo
IGEgZG9jdW1lbnQgY29udGFpbmluZyBIVE1MIGFuZCBTVkcgPC90aXRsZT4gCisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gICAgCisgICAgICAgICAgICB2YXIgdGVzdFJl
c3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tO
b2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
fQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAg
ICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3RE
aXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAg
ICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAg
ICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsK
KyAgICAgICAgICAgICAgICAgICAgdmFyIHN2Z1Jvb3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgic3ZnUm9vdCIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZzEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZzEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHIxID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInIxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciB0MSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0MSIpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IodGVzdERp
diwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHRl
c3REaXYpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBk
aXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgZGl2
Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHN2Z1Jv
b3QpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBnMSk7
CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHIxKTsKKyAg
ICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgdDEpOworICAgICAg
ICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIHQxKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIHIxKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIGcxKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIHN2Z1Jvb3QpOworICAg
ICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwgZGl2Mik7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBkaXYxKTsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIHRlc3RE
aXYpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwg
bnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1
bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAg
ICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8
Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgdXNlcyBhIE5v
ZGVJdGVyYXRvciB0byBpdGVyYXRlIHRocm91Z2ggYSBkb2N1bWVudCBjb250YWluaW5nIEhUTUwg
ZWxlbWVudHMgYW5kIFNWRyBlbGVtZW50cy48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYi
IHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYxIj4gCisg
ICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YWFhPC9kaXY+IAorICAgICAgICAgICAgPC9k
aXY+IAorICAgICAgICAgICAgPHN2ZyB2ZXJzaW9uPSIxLjEiIGJhc2VQcm9maWxlPSJmdWxsIiBp
ZD0ic3ZnUm9vdCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDQ4MCAz
NjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAKKyAgICAgICAgICAgICAgICA8ZyBpZD0iZzEiPiAK
KyAgICAgICAgICAgICAgICAgICAgPHJlY3QgaWQ9InIxIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEw
MCIgeD0iMCIgeT0iMCIgZmlsbD0iYmx1ZSIgLz4gCisgICAgICAgICAgICAgICAgPC9nPgorICAg
ICAgICAgICAgICAgIDx0ZXh0IGlkPSJ0MSIgeD0iMTAwIiB5PSIxMDAiIGZvbnQtc2l6ZT0iNTAi
PmFhYWFhPC90ZXh0PiAKKyAgICAgICAgICAgIDwvc3ZnPiAKKyAgICAgICAgPC9kaXY+IAorICAg
ICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+
IAorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5
PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2Rl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25p
X25leHRBbmRQcmV2aW91c05vZGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjcwMTAwMTQ0NWI5
MWJkYzIwZWFlYWY4ZjNmZDk0ZmE5ZGU3MTliNWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIE5vZGVJdGVy
YXRvcidzIG5leHROb2RlKCkgYW5kIHByZXZpb3VzTm9kZSgpIG1ldGhvZHMuCisKK1Rlc3QgcGFz
c2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlv
dXNOb2RlLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX25l
eHRBbmRQcmV2aW91c05vZGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5NTVmY2M2YzlmMGJjNWM4YmM0NWFk
MTcxMTlmNmRjNWJlZjdmMTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV9uZXh0QW5kUHJldmlvdXNOb2RlLmh0bQpAQCAtMCwwICsx
LDg0IEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxoZWFkPiAgCisgICAgICAg
IDx0aXRsZSBpZD0nZGVzYyc+IE5vZGVJdGVyYXRvciAtIG5leHROb2RlKCkgYW5kIHByZXZpb3Vz
Tm9kZSgpIDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
ICAgIAorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAK
KyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZXIgPSBkb2N1
bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVs
bCwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hl
Y2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCB0ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAg
Y2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgdGVzdERpdi5maXJzdENoaWxkKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgZGl2MSk7CisgICAgICAgICAg
ICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIGRpdjEuZmlyc3RDaGlsZCk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHRlc3REaXYuY2hp
bGROb2Rlc1syXSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5leHROb2Rl
KCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2aW91c05v
ZGUoKSwgdGVzdERpdi5jaGlsZE5vZGVzWzJdKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tO
b2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIGRpdjEuZmlyc3RDaGlsZCk7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlvdXNOb2RlKCksIHRlc3REaXYuZmlyc3RDaGls
ZCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCB0
ZXN0RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJl
c3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAg
IDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+IAorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tz
IHRoZSBOb2RlSXRlcmF0b3IncyBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSBtZXRob2Rz
LjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgor
ICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+YWFhYWFhYTwvZGl2PgorICAgICAgICA8L2Rpdj4K
KyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cu
PC9wPiAKKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwv
Ym9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFuZFByZXZpb3Vz
Tm9kZV9ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNTIxZDZhOGE3YjVjOGZiMzMzMTY4NmYxY2FlMDRiOTFiYTRmM2FiOQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L25pX25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBOb2RlSXRlcmF0b3IncyBuZXh0Tm9kZSgpIGFu
ZCBwcmV2aW91c05vZGUoKSBtZXRob2RzIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLgorCitU
ZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfbmV4dEFu
ZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX25leHRBbmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci5odG0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uY2Q0Yjc0OWE2MzAyMjhmNTQ5NTcyZDljMjRhNDg0ZTEwMjQ2ZTZiOAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX25leHRB
bmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci5odG0KQEAgLTAsMCArMSw5MyBAQAorPCFET0NUWVBF
IGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKp
IDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBN
aWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1h
eSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24u
CisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IK
KyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2Mn
PiBOb2RlSXRlcmF0b3IgLSBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSB3aXRoIGEgTm9k
ZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBpZiAoImRpdiIgPT0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQ
VDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAg
ICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3RTcGFuID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRlc3RTcGFuIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICAK
KyAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0
b3IodGVzdFNwYW4sIE5vZGVGaWx0ZXIuU0hPV19BTEwsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAg
ICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLm5l
eHROb2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5uZXh0
Tm9kZSgpLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIubmV4dE5v
ZGUoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZShpdGVyLnByZXZpb3Vz
Tm9kZSgpLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKGl0ZXIucHJldmlv
dXNOb2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUoaXRlci5wcmV2
aW91c05vZGUoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0
YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNo
IChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9o
ZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRl
c3QgY2hlY2tzIHRoZSBOb2RlSXRlcmF0b3IncyBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUo
KSBtZXRob2RzIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLjwvcD4KKyAgICAgICAgPHNwYW4g
aWQ9InRlc3RTcGFuIiAgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPGRpdiBp
ZD0iZGl2MSI+YWFhYWFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YmJiYmJi
PC9kaXY+CisgICAgICAgIDwvc3Bhbj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3
b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1
bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJh
dmVyc2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlfcmVtb3ZlUmVmZXJlbmNlTm9kZS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uN2E1ZDA0ZjBjZDNjM2YyOWYxOWE4ZjJiMzU3MTFhMTE5OGUwN2Zj
NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAor
VGhpcyB0ZXN0IHJlbW92ZXMgdGhlIE5vZGVJdGVydG9yJ3MgY3VycmVudCByZWZlcmVuY2Ugbm9k
ZSwgdGhlbiBjb250aW51ZXMgdG8gbW92ZSB0aHJvdWdoIHRoZSBkb2N1bWVudC4KKworVGVzdCBw
YXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX3JlbW92ZVJlZmVy
ZW5jZU5vZGUuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvbmlf
cmVtb3ZlUmVmZXJlbmNlTm9kZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTQyZGRhOGMwNGRmOGI0ZTU3MzU4
MTc2YThjMDU0YWUzYTAxNTgwMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL25pX3JlbW92ZVJlZmVyZW5jZU5vZGUuaHRtCkBAIC0wLDAg
KzEsODIgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8
dGl0bGUgaWQ9J2Rlc2MnPiBOb2RlSXRlcmF0b3IgLSByZW1vdmUgY3VycmVudCByZWZlcmVuY2Ug
bm9kZSA8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cisg
ICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlv
biBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERp
diIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZXIgPSBkb2N1
bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQs
IG51bGwsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAg
IGNoZWNrTm9kZShpdGVyLm5leHROb2RlKCksIHRlc3REaXYpOworICAgICAgICAgICAgICAgICAg
ICBjaGVja05vZGUoaXRlci5uZXh0Tm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAg
Y2hlY2tOb2RlKGl0ZXIubmV4dE5vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNo
ZWNrTm9kZShpdGVyLm5leHROb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUoaXRlci5wcmV2aW91c05vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNo
ZWNrTm9kZShpdGVyLnByZXZpb3VzTm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAg
dGVzdERpdi5yZW1vdmVDaGlsZChkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2Rl
KGl0ZXIubmV4dE5vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hp
bGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
IGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwi
OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisJCTxwPlRoaXMgdGVz
dCByZW1vdmVzIHRoZSBOb2RlSXRlcnRvcidzIGN1cnJlbnQgcmVmZXJlbmNlIG5vZGUsIHRoZW4g
Y29udGludWVzIHRvIG1vdmUgdGhyb3VnaCB0aGUgZG9jdW1lbnQuPC9wPgorICAgICAgICA8ZGl2
IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAgICAgICA8ZGl2IGlk
PSJkaXYxIj5hYWE8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmJiYjwvZGl2Pgor
ICAgICAgICA8L2Rpdj4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3Mi
IGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5n
PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX3R3
X25vdHN1cHBvcnRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZh
OTlmMzUyMTJjZmE5YWQ3Y2FkNTRkOGNkMTg3MzQ5OGEzZjM0Y2QKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC9uaV90d19ub3RzdXBwb3J0
ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyBpZiB0aGUg
Y29ycmVjdCBET01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gdGhlIHNjcmlwdCBhdHRlbXB0cyB0
byBjcmVhdGUgYSBOb2RlSXRlcmF0b3Igb3IgVHJlZVdhbGtlciB3aXRoICdudWxsJyBhcyB0aGUg
cm9vdCBub2RlLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxv
dy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2
ZXJzYWwvbmlfdHdfbm90c3VwcG9ydGVkLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL25pX3R3X25vdHN1cHBvcnRlZC5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDBkYjVlOTJj
NjJlNWViODhmZTliNjNiZjJlYmQwMGU5MzAyNDViMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL25pX3R3X25vdHN1cHBvcnRlZC5odG0K
QEAgLTAsMCArMSw5MCBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxv
cmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisK
KyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisK
KyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBu
YW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NP
RlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
CisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4g
IAorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyL05vZGVJdGVyYXRvciAtIGF0
dGVtcHQgdG8gY3JlYXRlIGVhY2ggd2l0aCAnbnVsbCcgYXMgdGhlIHJvb3Qgbm9kZSwgbXVzdCB0
aHJvdyBOT1RfU1VQUE9SVEVEX0VSUiBET01FeGNlcHRpb24gPC90aXRsZT4gCisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgCisgICAg
ICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgICAgICB2YXIgaXRlciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihudWxsLCBO
b2RlRmlsdGVyLlNIT1dfQUxMLCBudWxsLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIGNhdGNoKGV4KQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBpZiAoIShleCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbikpCisgICAgICAgICAg
ICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9
ICJGYWlsIjsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAg
ICAgIGVsc2UgaWYgKERPTUV4Y2VwdGlvbi5OT1RfU1VQUE9SVEVEX0VSUiAhPSBleC5jb2RlKQor
ICAgICAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIHRy
eQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdHcg
PSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKG51bGwsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5U
LCBudWxsLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZh
aWwiOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGNhdGNoKGV4
KQorICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIShl
eCBpbnN0YW5jZW9mIERPTUV4Y2VwdGlvbikpCisgICAgICAgICAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKERPTUV4
Y2VwdGlvbi5OT1RfU1VQUE9SVEVEX0VSUiAhPSBleC5jb2RlKQorICAgICAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7
CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJS
dW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyBpZiB0aGUgY29ycmVjdCBE
T01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gdGhlIHNjcmlwdCBhdHRlbXB0cyB0byBjcmVhdGUg
YSBOb2RlSXRlcmF0b3Igb3IgVHJlZVdhbGtlciB3aXRoICdudWxsJyBhcyB0aGUgcm9vdCBub2Rl
LjwvcD4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMg
YmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2N1cnJlbnROb2Rl
X25vdFN1cHBvcnRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmU5MGJjZGRlOTI4ZTdlZWJkYjFkNGIwMGZhY2QzNGRjN2M4ZTkwOWUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19jdXJy
ZW50Tm9kZV9ub3RTdXBwb3J0ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0
ZXN0IGNoZWNrcyBpZiB0aGUgY29ycmVjdCBET01FeGNlcHRpb24gaXMgdGhyb3duIHdoZW4gYXR0
ZW1wdGluZyB0byBzZXQgdGhlIFRyZWVXYWxrZXIncyBjdXJyZW50Tm9kZSB0byAnbnVsbCcKKwor
VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2N1cnJl
bnROb2RlX25vdFN1cHBvcnRlZC5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19jdXJyZW50Tm9kZV9ub3RTdXBwb3J0ZWQuaHRtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY0YTBk
MzkzZWYzMzhlZGVjYWQzZDgzODZiNTdjYjg4MTVmYTI2MmUKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19jdXJyZW50Tm9kZV9ub3RT
dXBwb3J0ZWQuaHRtCkBAIC0wLDAgKzEsNzQgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPgor
ICAgIDxoZWFkPgorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gc2V0IHRo
ZSBjdXJyZW50Tm9kZSB0byBudWxsLCB3aGljaCBtdXN0IHRocm93IGEgTk9UX1NVUFBPUlRFRF9F
UlIgRE9NRXhjZXB0aW9uIDwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij4KKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdFJlc3VsdCA9
ICJQYXNzIjsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJl
ZVdhbGtlcihkb2N1bWVudC5ib2R5LCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgbnVsbCwgZmFs
c2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHR3LmN1cnJlbnROb2Rl
ID0gbnVsbDsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgY2F0Y2goZXgpCisgICAg
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICghKGV4IGluc3Rh
bmNlb2YgRE9NRXhjZXB0aW9uKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoRE9NRXhjZXB0aW9u
Lk5PVF9TVVBQT1JURURfRVJSICE9IGV4LmNvZGUpCisgICAgICAgICAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0
Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3Qo
KTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tzIGlmIHRoZSBjb3JyZWN0IERPTUV4Y2Vw
dGlvbiBpcyB0aHJvd24gd2hlbiBhdHRlbXB0aW5nIHRvIHNldCB0aGUgVHJlZVdhbGtlcidzIGN1
cnJlbnROb2RlIHRvICdudWxsJzwvcD4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdv
cmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0
Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL3R3X2ZpcnN0Q2hpbGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU3
NWQyYWZjN2ZhZTEzNTcxMDJiNDYyMzAwNDliMGNlMjkxZWY3NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtl
cidzIGZpcnN0Q2hpbGQoKSBtZXRob2QuCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNz
IiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENoaWxkLmh0bSBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGQuaHRtCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM4MTgw
YmYwN2UwYjU5MjNhNmFmNGY0YTBhZDViZWFlODc1MDE1NWYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENoaWxkLmh0bQpA
QCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3Jl
ciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFt
ZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHBy
aW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZU
IENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQor
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIGZpcnN0Q2hpbGQoKSA8L3RpdGxl
PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICB2
YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAg
ICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOworICAgICAg
ICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7
CisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIo
dGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIG51bGwsIGZhbHNlKTsKKyAgICAgICAg
ICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5maXJzdENoaWxk
KCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuY3VycmVudE5vZGUs
IGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuZmlyc3RDaGlsZCgpLCBu
dWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCBkaXYx
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRy
ZWVXYWxrZXIncyBmaXJzdENoaWxkKCkgbWV0aG9kLjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVz
dERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+
YWFhPC9kaXY+CisgICAgICAgICAgICA8ZGl2PmJiYjwvZGl2PgorICAgICAgICAgICAgPGRpdiBp
ZD0iZGl2MiI+Y2NjPC9kaXY+CisgICAgICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVzdCBwYXNz
ZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlk
PSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3RyYXZlcnNhbC90d19maXJzdENoaWxkX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZF9ub2Rl
RmlsdGVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40YzQ3ZDYwMzIzZmE3NzdjZTVjNWVlOTkw
YzE5NzVlOWNmYTBhZjIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2Vu
dGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZF9ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBmaXJzdENo
aWxkKCkgbWV0aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLgorCitUZXN0IHBhc3NlcyBp
ZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfZmlyc3RDaGlsZF9ub2RlRmls
dGVyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0
Q2hpbGRfbm9kZUZpbHRlci5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTBiOTdjMzEwYmRkZjAyZDhjYWE3MTlj
MDgwMDkxMTc2YWNkOTUyNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNl
bnRlci9kb20vdHJhdmVyc2FsL3R3X2ZpcnN0Q2hpbGRfbm9kZUZpbHRlci5odG0KQEAgLTAsMCAr
MSw5MiBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAorICAgICAg
ICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gZmlyc3RDaGlsZCgpIHdpdGggYSBOb2Rl
RmlsdGVyIDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
ICAgIAorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAK
KyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAg
ZnVuY3Rpb24gYWNjZXB0Tm9kZShub2RlKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGlmICgic3BhbiIgPT0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQ
VDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAg
ICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgc3BhbjEgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgic3BhbjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0g
ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfQUxMLCBh
Y2NlcHROb2RlLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUodHcuZmlyc3RDaGlsZCgpLCBzcGFuMSk7CisgICAgICAgICAgICAgICAg
ICAgIGNoZWNrTm9kZSh0dy5maXJzdENoaWxkKCksIG51bGwpOworICAgICAgICAgICAgICAgICAg
ICBjaGVja05vZGUodHcuY3VycmVudE5vZGUsIHNwYW4xKTsKKyAgICAgICAgICAgICAgICAgICAg
CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0
IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRh
dGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8
L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+Cisg
ICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBmaXJzdENoaWxkKCkg
bWV0aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLjwvcD4KKyAgICAgICAgPGRpdiBpZD0i
dGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPiAKKyAgICAgICAgICAgIDxkaXY+IAorICAg
ICAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuMSI+IAorICAgICAgICAgICAgICAgICAgICA8ZGl2
PmFhYTwvZGl2PiAKKyAgICAgICAgICAgICAgICA8L3NwYW4+IAorICAgICAgICAgICAgPC9kaXY+
IAorICAgICAgICAgICAgPGRpdj5iYmI8L2Rpdj4gCisgICAgICAgIDwvZGl2PiAKKyAgICAgICAg
PHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPiAKKyAg
ICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8
L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfaHRtbEFuZFN2Zy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19odG1sQW5kU3ZnLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MjFhYjhlMWZhNTE0YzkwYWRjZjBlODZkM2EwM2IzOWM4
ZDUwNGY0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90
cmF2ZXJzYWwvdHdfaHRtbEFuZFN2Zy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlz
IHRlc3QgdXNlcyBhIFRyZWVXYWxrZXIgdG8gaXRlcmF0ZSB0aHJvdWdoIGEgZG9jdW1lbnQgY29u
dGFpbmluZyBIVE1MIGVsZW1lbnRzIGFuZCBTVkcgZWxlbWVudHMuCisKK1Rlc3QgcGFzc2VzIGlm
IHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNzCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19odG1sQW5kU3ZnLmh0bSBiL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2h0bWxBbmRTdmcuaHRtCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmIyODMzZTQ4OWIwZmY5OThjYjY4ZThhNDdjNTdkMmYyZTkxNjFmMmEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19o
dG1sQW5kU3ZnLmh0bQpAQCAtMCwwICsxLDEwMCBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQor
IEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNh
dGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9y
YXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1s
PiAKKyAgICA8aGVhZD4gIAorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0g
aXRlcmF0ZSB0aHJvdWdoIGEgZG9jdW1lbnQgY29udGFpbmluZyBIVE1MIGFuZCBTVkcgPC90aXRs
ZT4gCisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gICAgCisgICAgICAg
ICAgICB2YXIgdGVzdFJlc3VsdCA9ICJQYXNzIjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAg
ZnVuY3Rpb24gY2hlY2tOb2RlKGFjdHVhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgaWYgKGFjdHVhbCAhPSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgICAgIHRlc3RSZXN1bHQgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBSdW5U
ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdERpdiIpOwor
ICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHN2Z1Jvb3QgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgic3ZnUm9vdCIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZzEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZzEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFy
IHIxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInIxIik7CisgICAgICAgICAgICAgICAgICAg
IHZhciB0MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0MSIpOworICAgICAgICAgICAgICAg
ICAgICAKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdh
bGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgbnVsbCwgZmFsc2UpOworICAg
ICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRO
b2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dE5vZGUo
KSwgZGl2Mik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBz
dmdSb290KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIGcx
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIHIxKTsKKyAg
ICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIHQxKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIG51bGwpOworICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIHIxKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBnMSk7CisgICAgICAgICAgICAgICAg
ICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgc3ZnUm9vdCk7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2Mik7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgdGVzdERpdik7CisgICAgICAgICAg
ICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgbnVsbCk7CisgICAgICAgICAg
ICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmly
c3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRl
c3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgdXNlcyBhIFRyZWVXYWxrZXIgdG8gaXRlcmF0
ZSB0aHJvdWdoIGEgZG9jdW1lbnQgY29udGFpbmluZyBIVE1MIGVsZW1lbnRzIGFuZCBTVkcgZWxl
bWVudHMuPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25l
OyI+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+IAorICAgICAgICAgICAgICAgIDxkaXYg
aWQ9ImRpdjIiPmFhYTwvZGl2PiAKKyAgICAgICAgICAgIDwvZGl2PiAKKyAgICAgICAgICAgIDxz
dmcgdmVyc2lvbj0iMS4xIiBiYXNlUHJvZmlsZT0iZnVsbCIgaWQ9InN2Z1Jvb3QiIHdpZHRoPSIx
MDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCA0ODAgMzYwIiB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hs
aW5rIj4gCisgICAgICAgICAgICAgICAgPGcgaWQ9ImcxIj4gCisgICAgICAgICAgICAgICAgICAg
IDxyZWN0IGlkPSJyMSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHg9IjAiIHk9IjAiIGZpbGw9
ImJsdWUiIC8+IAorICAgICAgICAgICAgICAgIDwvZz4gCisgICAgICAgICAgICAgICAgPHRleHQg
aWQ9InQxIiB4PSIxMDAiIHk9IjEwMCIgZm9udC1zaXplPSI1MCI+YWFhYWE8L3RleHQ+IAorICAg
ICAgICAgICAgPC9zdmc+IAorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2Vz
IGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9
J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmE5MWI3NWYyMTQ0MWM0NGU5MzcwNDBmZGJiYTg2NmY5YjM5MWJmMmIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0
Q2hpbGQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUg
VHJlZVdhbGtlcidzIGxhc3RDaGlsZCgpIG1ldGhvZC4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdv
cmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZC5odG0gYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGQuaHRtCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmYxYzk5YzhjN2Q1MjI0MDE5OGVkM2NmNTAwMjE4OWNmZGFiNDdlMjkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19sYXN0Q2hpbGQu
aHRtCkBAIC0wLDAgKzEsNzggQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhl
YWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIGxhc3RDaGlsZCgp
IDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ICAgIAor
ICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RE
aXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVh
dGVUcmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCBudWxsLCBmYWxz
ZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
dHcubGFzdENoaWxkKCksIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcu
Y3VycmVudE5vZGUsIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubGFz
dENoaWxkKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuY3VycmVu
dE5vZGUsIGRpdjIpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0
ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjYXRjaCAoZXgp
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWlsIjsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4g
CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNo
ZWNrcyB0aGUgVHJlZVdhbGtlcidzIGxhc3RDaGlsZCgpIG1ldGhvZC48L3A+CisgICAgICAgIDxk
aXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KKyAgICAgICAgICAgIDxkaXYg
aWQ9ImRpdjEiPmFhYTwvZGl2PgorICAgICAgICAgICAgPGRpdj5iYmI8L2Rpdj4KKyAgICAgICAg
ICAgIDxkaXYgaWQ9ImRpdjIiPmNjYzwvZGl2PgorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxw
PlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAg
ICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZF9ub2RlRmlsdGVyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RD
aGlsZF9ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZjUwNTdjM2MzMjA3MGM5
ZmFlYTZlODEyMzQwYTU0MWZkMWI5N2U1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkX25vZGVGaWx0ZXItZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidz
IGxhc3RDaGlsZCgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay4KKworVGVzdCBw
YXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X2xhc3RDaGlsZF9u
b2RlRmlsdGVyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3
X2xhc3RDaGlsZF9ub2RlRmlsdGVyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMTBmYTU1ZjM1OWEzODU0Yjlh
ODZhZDMyMWEzZTMxN2M4YmVjNzgyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbGFzdENoaWxkX25vZGVGaWx0ZXIuaHRtCkBAIC0w
LDAgKzEsOTIgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBU
ZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVp
dGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMg
b2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
Cisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBN
SUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAor
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENP
UlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAg
ICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIGxhc3RDaGlsZCgpIHdpdGggYSBO
b2RlRmlsdGVyIDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+ICAgIAorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAg
ICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgZnVuY3Rpb24gYWNjZXB0Tm9kZShub2RlKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGlmICgic3BhbiIgPT0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FD
Q0VQVDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NL
SVA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAg
ICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGVzdERpdiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgc3BhbjEgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgic3BhbjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3
ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfQUxM
LCBhY2NlcHROb2RlLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUodHcubGFzdENoaWxkKCksIHNwYW4xKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3Lmxhc3RDaGlsZCgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCBzcGFuMSk7CisgICAgICAgICAgICAgICAgICAg
IAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3Vs
dCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5k
YXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgor
ICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgbGFzdENoaWxkKCkg
bWV0aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLjwvcD4KKyAgICAgICAgPGRpdiBpZD0i
dGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPiAKKyAgICAgICAgICAgIDxkaXY+YWFhPC9k
aXY+IAorICAgICAgICAgICAgPGRpdj4gCisgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW4x
Ij4gCisgICAgICAgICAgICAgICAgICAgIDxkaXY+YmJiPC9kaXY+IAorICAgICAgICAgICAgICAg
IDwvc3Bhbj4gCisgICAgICAgICAgICA8L2Rpdj4gCisgICAgICAgIDwvZGl2PiAKKyAgICAgICAg
PHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPiAKKyAg
ICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4gCis8
L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0
QW5kUHJldmlvdXNOb2RlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZTYxNjI0MzA0NzgyZTRk
ODhiOWNiMDFjYmExNWVmNzJiMmM3MDIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZS1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3Mg
bmV4dE5vZGUoKSBhbmQgcHJldmlvdXNOb2RlKCkgbWV0aG9kcy4KKworVGVzdCBwYXNzZXMgaWYg
dGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05vZGUu
aHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFBy
ZXZpb3VzTm9kZS5odG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTBkN2RhNjg3ZDY2OWU0YjNkYzFiNWZiYzAxM2Yz
Zjc0YTFjZmQyNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL3R3X25leHRBbmRQcmV2aW91c05vZGUuaHRtCkBAIC0wLDAgKzEsODQgQEAK
KzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENv
cHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisK
KyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRy
aWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBw
ZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09S
UE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAgPGhlYWQ+ICAKKyAgICAgICAgPHRpdGxl
IGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIG5leHROb2RlKCkgYW5kIHByZXZpb3VzTm9kZSgpIDwv
dGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ICAgIAorICAg
ICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAgICAKKyAgICAgICAg
ICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24g
UnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3REaXYi
KTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVU
cmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGwsIGZhbHNlKTsKKyAg
ICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2
aW91c05vZGUoKSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5jdXJy
ZW50Tm9kZSwgdGVzdERpdik7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0
Tm9kZSgpLCB0ZXN0RGl2LmZpcnN0Q2hpbGQpOworICAgICAgICAgICAgICAgICAgICBjaGVja05v
ZGUodHcubmV4dE5vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0
dy5uZXh0Tm9kZSgpLCBkaXYxLmZpcnN0Q2hpbGQpOworICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUodHcubmV4dE5vZGUoKSwgdGVzdERpdi5jaGlsZE5vZGVzWzJdKTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUodHcuY3VycmVudE5vZGUsIHRlc3REaXYuY2hpbGROb2Rlc1syXSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2MS5maXJz
dENoaWxkKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgp
LCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgp
LCB0ZXN0RGl2LmZpcnN0Q2hpbGQpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcu
cHJldmlvdXNOb2RlKCksIHRlc3REaXYpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENo
aWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+
VGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHROb2RlKCkgYW5kIHByZXZpb3Vz
Tm9kZSgpIG1ldGhvZHMuPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBzdHlsZT0iZGlz
cGxheTpub25lOyI+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYxIj5hYWE8L2Rpdj4KKyAgICAg
ICAgPC9kaXY+CisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBl
YXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rp
dj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X25leHRB
bmRQcmV2aW91c05vZGVfbm9kZUZpbHRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRl
c3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXIt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJhNTVkY2RjNmU0ODFiNzFkYjhhMTE3MGY2ODc0MWY3
NzYzOGVhOWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9t
L3RyYXZlcnNhbC90d19uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHRO
b2RlKCkgYW5kIHByZXZpb3VzTm9kZSgpIG1ldGhvZHMgd2l0aCBhIE5vZGVGaWx0ZXIgY2FsbGJh
Y2suCisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQ
YXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90
d19uZXh0QW5kUHJldmlvdXNOb2RlX25vZGVGaWx0ZXIuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0
Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xMGQ5ZDNkNDkxZDVmYWY2MjBmYWFkZGQ4ZjAwMDc5OTdjZTc1NmQ4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwv
dHdfbmV4dEFuZFByZXZpb3VzTm9kZV9ub2RlRmlsdGVyLmh0bQpAQCAtMCwwICsxLDk4IEBACis8
IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQYWdlcyBDb3B5
cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmli
dXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9TT0ZUIENPUlBP
UkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JBVElPTgorIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwor
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxoZWFkPiAgCisgICAgICAgIDx0aXRsZSBp
ZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBuZXh0Tm9kZSgpIGFuZCBwcmV2aW91c05vZGUoKSB3aXRo
IGEgTm9kZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAg
ICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBpZiAoImRpdiIgPT0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVS
X0FDQ0VQVDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVS
X1NLSVA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisg
ICAgICAgICAgICBmdW5jdGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHRlc3RTcGFuID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3RTcGFuIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFy
IGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAg
ICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKHRlc3RTcGFuLCBOb2RlRmls
dGVyLlNIT1dfQUxMLCBhY2NlcHROb2RlLCBmYWxzZSk7CisgICAgICAgICAgICAgICAgICAgIAor
ICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIG51bGwpOwor
ICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuY3VycmVudE5vZGUsIHRlc3RTcGFuKTsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHROb2RlKCksIGRpdjEpOworICAg
ICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dE5vZGUoKSwgZGl2Mik7CisgICAgICAg
ICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0Tm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKHR3LmN1cnJlbnROb2RlLCBkaXYyKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYxKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAg
ICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENo
aWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7
Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHROb2Rl
KCkgYW5kIHByZXZpb3VzTm9kZSgpIG1ldGhvZHMgd2l0aCBhIE5vZGVGaWx0ZXIgY2FsbGJhY2su
PC9wPgorICAgICAgICA8c3BhbiBpZD0idGVzdFNwYW4iIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4K
KyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjEiPgorICAgICAgICAgICAgICAgIDxzcGFuPmFhYTwv
c3Bhbj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+Cisg
ICAgICAgICAgICAgICAgPHNwYW4+YmJiPC9zcGFuPgorICAgICAgICAgICAgPC9kaXY+CisgICAg
ICAgIDwvc3Bhbj4KKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFw
cGVhcnMgYmVsb3cuPC9wPiAKKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwv
ZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4
dFNpYmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2
ZXJzYWwvdHdfbmV4dFNpYmxpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRlZjkzYTg2OWIw
ZmUzZmY2ZTEzMDgyMDExMmNiZWQwNDRiYzdiYzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2libGluZy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgbmV4
dFNpYmxpbmcgbWV0aG9kLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFy
cyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmcuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVy
L2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmcuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5NzAyMmQyY2Q3
ZDFlYjNkNDU4MjJlMDdjMGY4M2IxYjg0YTdmOTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2libGluZy5odG0KQEAgLTAs
MCArMSw4NiBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRl
c3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IK
KyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1J
Q1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09S
UE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAorICAg
ICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gbmV4dFNpYmxpbmcoKSA8L3RpdGxl
PiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAgICAKKyAgICAgICAg
ICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBm
dW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
djEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYzIik7CisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3Vt
ZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwg
ZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdHcuZmly
c3RDaGlsZCgpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hl
Y2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUodHcubmV4dFNpYmxpbmcoKSwgdGVzdERpdi5jaGlsZE5vZGVzWzJdKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIGRpdjIpOworICAgICAgICAg
ICAgICAgICAgICBjaGVja05vZGUodHcubmV4dFNpYmxpbmcoKSwgdGVzdERpdi5jaGlsZE5vZGVz
WzRdKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIGRp
djMpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcubmV4dFNpYmxpbmcoKSwgdGVz
dERpdi5jaGlsZE5vZGVzWzZdKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lm5l
eHRTaWJsaW5nKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcuY3Vy
cmVudE5vZGUsIHRlc3REaXYuY2hpbGROb2Rlc1s2XSk7CisgICAgICAgICAgICAgICAgICAgIAor
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIp
LmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRh
ID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9z
Y3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAg
ICAgICA8cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBUcmVlV2Fsa2VyJ3MgbmV4dFNpYmxpbmcgbWV0
aG9kLjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsi
PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+YWFhPC9kaXY+CisgICAgICAgICAgICA8ZGl2
IGlkPSJkaXYyIj5iYmI8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPmNjYzwvZGl2
PgorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxwPlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQ
YXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1
bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L3R3X25leHRTaWJsaW5nX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmdfbm9kZUZpbHRlci1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOTg0MDRiNTM1ZmFlNDI4MmE5ZWY3N2RmYWNlNmE5NDA2ZmNiNGRk
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL3R3X25leHRTaWJsaW5nX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBA
QAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHRTaWJsaW5nKCkgbWV0aG9k
IHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAi
UGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmdfbm9kZUZpbHRlci5odG0gYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19uZXh0U2libGluZ19ub2Rl
RmlsdGVyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNWM1Y2NhMTk1Nzg3ZTA4YTQ2YWQ1MmEzMWVkMGJlM2Qz
NjY2MzIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90
cmF2ZXJzYWwvdHdfbmV4dFNpYmxpbmdfbm9kZUZpbHRlci5odG0KQEAgLTAsMCArMSw5NiBAQAor
PCFET0NUWVBFIGh0bWw+IAorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29w
eXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKwor
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1l
IG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJp
YnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBl
cm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQ
T1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsK
KyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAKKyAgICA8aGVhZD4gIAorICAgICAgICA8dGl0bGUg
aWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gbmV4dFNpYmxpbmcoKSB3aXRoIGEgTm9kZUZpbHRlciA8
L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAgICAKKyAg
ICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAg
ICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9u
IGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoImRp
diIgPT0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKQorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVDsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX1NLSVA7CisgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5j
dGlvbiBSdW5UZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKworICAgICAgICAgICAgICAgIHRyeQorICAgICAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIHRlc3REaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVz
dERpdiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MyIpOworICAgICAgICAgICAgICAgICAgICB2YXIg
dHcgPSBkb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19B
TEwsIGFjY2VwdE5vZGUsIGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAg
ICAgICAgICAgIGNoZWNrTm9kZSh0dy5maXJzdENoaWxkKCksIGRpdjEpOworICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUodHcubmV4dFNpYmxpbmcoKSwgZGl2Mik7CisgICAgICAgICAgICAg
ICAgICAgIGNoZWNrTm9kZSh0dy5uZXh0U2libGluZygpLCBkaXYzKTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3Lm5leHRTaWJsaW5nKCksIG51bGwpOworICAgICAgICAgICAgICAg
ICAgICBjaGVja05vZGUodHcuY3VycmVudE5vZGUsIGRpdjMpOworICAgICAgICAgICAgICAgICAg
ICAKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQu
ZGF0YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAg
IDwvc2NyaXB0PgorICAgIDwvaGVhZD4gCisgICAgPGJvZHkgb25sb2FkPSJSdW5UZXN0KCk7Ij4K
KyAgICAgICAgPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIG5leHRTaWJsaW5n
KCkgbWV0aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNrLjwvcD4KKyAgICAgICAgPGRpdiBp
ZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPiAKKyAgICAgICAgICAgIDxzcGFuPmFh
YTwvc3Bhbj4gCisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYxIj5iYmI8L2Rpdj4gCisgICAgICAg
ICAgICA8c3Bhbj5jY2M8L3NwYW4+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+ZGRkPC9k
aXY+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MyI+ZWVlPC9kaXY+IAorICAgICAgICAgICAg
PHNwYW4+ZmZmPC9zcGFuPiAKKyAgICAgICAgPC9kaXY+IAorICAgICAgICA8cD5UZXN0IHBhc3Nl
cyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy48L3A+IAorICAgICAgICA8ZGl2IGlk
PSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3BhcmVudE5vZGUtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmI3MzA5MGYwZjI5YmY3OGQxMGQwZTU2N2VmZDcwOGIxYzViNzEzZWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19w
YXJlbnROb2RlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjaGVja3Mg
dGhlIFRyZWVXYWxrZXIncyBwYXJlbnROb2RlKCkgbWV0aG9kLgorCitUZXN0IHBhc3NlcyBpZiB0
aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9kZS5odG0gYi9MYXlv
dXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlLmh0bQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43ZWIwYmU2MTQxNzE5YzMwMWRjOWU5YTgyYTQzNmNmMDIxY2IwM2VhCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFy
ZW50Tm9kZS5odG0KQEAgLTAsMCArMSw3OSBAQAorPCFET0NUWVBFIGh0bWw+IAorPCEtLQorIElu
dGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENv
cnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlv
biwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRp
b24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwK
KyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPiAK
KyAgICA8aGVhZD4gIAorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gcGFy
ZW50Tm9kZSgpIDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+ICAgIAorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAg
ICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7
CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1
bWVudC5jcmVhdGVUcmVlV2Fsa2VyKHRlc3REaXYsIE5vZGVGaWx0ZXIuU0hPV19BTEwsIG51bGws
IGZhbHNlKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGNoZWNr
Tm9kZSh0dy5wYXJlbnROb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICB0dy5jdXJy
ZW50Tm9kZSA9IGRpdjEuZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2Rl
KHR3LnBhcmVudE5vZGUoKSwgZGl2MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0
dy5wYXJlbnROb2RlKCksIHRlc3REaXYpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUo
dHcucGFyZW50Tm9kZSgpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGls
ZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
Y2F0Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAg
ICA8L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRo
aXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBwYXJlbnROb2RlKCkgbWV0aG9kLjwvcD4K
KyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAg
ICAgICAgPGRpdiBpZD0iZGl2MSI+YWFhPC9kaXY+CisgICAgICAgICAgICA8ZGl2PmJiYjwvZGl2
PgorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+Y2NjPC9kaXY+CisgICAgICAgIDwvZGl2PiAK
KyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cu
PC9wPiAKKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwv
Ym9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcGFyZW50Tm9kZV9ub2Rl
RmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVy
c2FsL3R3X3BhcmVudE5vZGVfbm9kZUZpbHRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTVl
ZjM0NGZlYzA2MGI3ODBkM2MzYWJlN2U5YWU0ZWVkNTlmMGVhYQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3BhcmVudE5vZGVfbm9k
ZUZpbHRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY2hlY2tzIHRo
ZSBUcmVlV2Fsa2VyJ3MgcGFyZW50Tm9kZSgpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxs
YmFjay4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisK
K1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L3R3X3BhcmVudE5vZGVfbm9kZUZpbHRlci5odG0gYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIv
ZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25vZGVGaWx0ZXIuaHRtCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgw
NDNiMWQ0NWM0NzQyNmQ5YWJkNzU0ZjBjNjczOTU1Njk0NjMwNjcKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wYXJlbnROb2RlX25v
ZGVGaWx0ZXIuaHRtCkBAIC0wLDAgKzEsOTUgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJ
bnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBD
b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRp
b24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlz
dCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0
aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
CisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4g
CisgICAgPGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIHBh
cmVudE5vZGUoKSB3aXRoIGEgTm9kZUZpbHRlciA8L3RpdGxlPiAKKyAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAgICAKKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0g
IlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0
dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFs
ICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVz
dFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoInNwYW4iID09IG5vZGUubm9kZU5hbWUudG9Mb3dl
ckNhc2UoKSkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBO
b2RlRmlsdGVyLkZJTFRFUl9TS0lQOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9k
ZUZpbHRlci5GSUxURVJfQUNDRVBUOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gUnVuVGVzdCgpCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgICAg
ICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0ZXN0RGl2
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3REaXYiKTsKKyAgICAgICAgICAgICAgICAg
ICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOworICAgICAgICAg
ICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIik7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVz
dERpdiwgTm9kZUZpbHRlci5TSE9XX0FMTCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAg
ICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBhcmVudE5vZGUo
KSwgbnVsbCk7CisgICAgICAgICAgICAgICAgICAgIHR3LmN1cnJlbnROb2RlID0gZGl2Mi5maXJz
dENoaWxkOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucGFyZW50Tm9kZSgpLCBk
aXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBhcmVudE5vZGUoKSwgZGl2
MSk7CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wYXJlbnROb2RlKCksIHRlc3RE
aXYpOworICAgICAgICAgICAgICAgICAgICBjaGVja05vZGUodHcucGFyZW50Tm9kZSgpLCBudWxs
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBjaGVja3MgdGhlIFRy
ZWVXYWxrZXIncyBwYXJlbnROb2RlKCkgbWV0aG9kIHdpdGggYSBOb2RlRmlsdGVyIGNhbGxiYWNr
LjwvcD4KKyAgICAgICAgPGRpdiBpZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgor
ICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSI+CisgICAgICAgICAgICAgICAgPHNwYW4+CisgICAg
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmFhYTwvZGl2PgorICAgICAgICAgICAgICAg
IDwvc3Bhbj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4gCisgICAgICAgIDxw
PlRlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LjwvcD4gCisgICAg
ICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4KKyAgICA8L2JvZHk+IAorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9kZWVwVHJlZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2
aW91c05vZGVfZGVlcFRyZWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwZGZmOWM1NDc5YjNi
ZDU3YWM3ZjljMTI2YmY4NDFjODg3Yzc1N2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfZGVlcFRyZWUtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IG1vdmVzIHRoZSBUcmVlV2Fsa2Vy
IHVzaW5nIHByZXZpb3VzTm9kZSgpIHRocm91Z2ggMiBkZWVwIHN1YnRyZWVzIGNvbnNpc3Rpbmcg
b2YgZGl2IGVsZW1lbnRzLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFy
cyBiZWxvdy4KKworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX2RlZXBUcmVlLmh0bSBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9kZWVwVHJlZS5odG0KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNWMwMDEzZmUzYmFiNzVkMTU0MGZiMWU5ZjkzNmFjOWE2ZTFmY2Y4NwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3By
ZXZpb3VzTm9kZV9kZWVwVHJlZS5odG0KQEAgLTAsMCArMSwxMjAgQEAKKzwhRE9DVFlQRSBodG1s
PgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3QgUGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIg
TWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBNaWNyb3Nv
ZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQor
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3cml0dGVuIHBlcm1pc3Npb24uCisKKyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JPU09GVCBDT1JQT1JBVElPTiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9SQVRJT04KKyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCist
LT4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fs
a2VyIC0gcHJldmlvdXNOb2RlKCkgLSB0cmF2ZXJzZSBiYWNrd2FyZHMgdGhyb3VnaCAyIGRlZXAg
c3RhY2tzIG9mIGRpdnMgPC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPgorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAiUGFzcyI7CisgICAgICAgICAg
ICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1YWwsIGV4cGVjdGVkKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwgIT0gZXhwZWN0ZWQpCisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gIkZhaWwiOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgZnVuY3Rpb24gYWNjZXB0Tm9kZShub2RlKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQ7CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5
CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGRpdjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MyIpOworICAgICAgICAgICAg
ICAgICAgICB2YXIgZGl2NCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY0Iik7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBkaXY1ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjUi
KTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2NiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2NyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXY3Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXY4ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjgiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjkg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2OSIpOworICAgICAgICAgICAgICAgICAgICB2
YXIgZGl2MTAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MTAiKTsKKyAgICAgICAgICAg
ICAgICAgICAgdmFyIGRpdjExID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjExIik7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciBkaXYxMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYxMiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgdHcgPSBkb2N1bWVudC5jcmVhdGVUcmVl
V2Fsa2VyKGRpdjEsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCBhY2NlcHROb2RlLCBmYWxzZSk7
CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICB0dy5jdXJyZW50Tm9k
ZSA9IGRpdjEyOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hl
Y2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYxMSk7CisgICAgICAgICAgICAgICAgICAgIGNo
ZWNrTm9kZSh0dy5wcmV2aW91c05vZGUoKSwgZGl2MTApOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjkpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjgpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjcpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjYpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjUpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjQpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjMpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjIpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIGRpdjEpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNOb2RlKCksIG51bGwpOworICAgICAgICAgICAgICAgICAgICAK
KyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQi
KS5maXJzdENoaWxkLmRhdGEgPSB0ZXN0UmVzdWx0OworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgICAgICBjYXRjaCAoZXgpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0
YSA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAg
ICAgICA8cD5UaGlzIHRlc3QgbW92ZXMgdGhlIFRyZWVXYWxrZXIgdXNpbmcgcHJldmlvdXNOb2Rl
KCkgdGhyb3VnaCAyIGRlZXAgc3VidHJlZXMgY29uc2lzdGluZyBvZiBkaXYgZWxlbWVudHMuPC9w
PgorICAgICAgICA8ZGl2IGlkPSJkaXYxIiBzdHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAg
ICAgICA8ZGl2IGlkPSJkaXYyIj4KKyAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXYzIj4KKyAg
ICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2NCI+CisgICAgICAgICAgICAgICAgICAgICAg
ICA8ZGl2IGlkPSJkaXY1Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJk
aXY2Ij4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2NyI+YWFh
PC9kaXY+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICAg
ICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAg
ICAgICAgPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRp
djgiPgorICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjkiPgorICAgICAgICAgICAgICAgICAg
ICA8ZGl2IGlkPSJkaXYxMCI+CisgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXYx
MSI+CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2MTIiPmJiYjwvZGl2
PgorICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDwv
ZGl2PgorICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAg
IDwvZGl2PgorICAgICAgICA8cD5UZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFy
cyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9J3Rlc3RyZXN1bHQnPlJ1bm5pbmc8L2Rpdj4K
KyAgICA8L2JvZHk+IAorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3Vz
Tm9kZV9pZ25vcmVSZWplY3RTdWJUcmVlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVz
dGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9pZ25vcmVSZWplY3RTdWJUcmVl
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZDI2MDMwYzkwNDQ3M2M3NmZkZjhhNzlhNDBjYzA2
ZmRmYjU2NmEwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2Rv
bS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX2lnbm9yZVJlamVjdFN1YlRyZWUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IG1vdmVzIHRoZSBUcmVlV2Fsa2VyIHVzaW5n
IHByZXZpb3VzTm9kZSgpIHdoZXJlIHRoZXJlIGlzIGEgc3VidHJlZSB0aGF0IGhhcyBiZWVuIHJl
amVjdGVkLgorCitUZXN0IHBhc3NlcyBpZiB0aGUgd29yZCAiUGFzcyIgYXBwZWFycyBiZWxvdy4K
KworUGFzcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfcHJldmlvdXNOb2RlX2lnbm9yZVJlamVjdFN1YlRyZWUuaHRtIGIvTGF5b3V0VGVzdHMv
aWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX2lnbm9yZVJlamVjdFN1
YlRyZWUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwMWNmODBiNzY0ZGJkZjJjNjY0OTIwMGYyNmZjYjY4YjZh
ODI1OTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3Ry
YXZlcnNhbC90d19wcmV2aW91c05vZGVfaWdub3JlUmVqZWN0U3ViVHJlZS5odG0KQEAgLTAsMCAr
MSwxMDAgQEAKKzwhRE9DVFlQRSBodG1sPgorPCEtLQorIEludGVybmV0IEV4cGxvcmVyIFRlc3Qg
UGFnZXMgQ29weXJpZ2h0IMKpIDIwMTIgTWljcm9zb2Z0IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorCisgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKKyBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBu
b3RpY2UsIHRoaXMgbGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKworIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyBOZWl0aGVy
IHRoZSBuYW1lIG9mIHRoZSBNaWNyb3NvZnQgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBp
dHMgY29udHJpYnV0b3JzIG1heSBiZQorIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKKyB3
cml0dGVuIHBlcm1pc3Npb24uCisKKyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIE1JQ1JP
U09GVCBDT1JQT1JBVElPTiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORAorIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBNSUNST1NPRlQgQ09SUE9S
QVRJT04KKyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKKyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IKKyBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCistLT4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8
dGl0bGUgaWQ9J2Rlc2MnPiBUcmVlV2Fsa2VyIC0gcHJldmlvdXNOb2RlKCkgLSBtb3ZlIHBhc3Qg
YSByZWplY3RlZCBzdWJ0cmVlIDwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAg
ICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQor
ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWls
IjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBpZiAoImRpdjMiID09IG5vZGUuaWQpCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfUkVKRUNUOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gUnVuVGVzdCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7CisKKyAgICAgICAgICAgICAgICB0cnkKKyAgICAgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgICAgIHZhciB0ZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RE
aXYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MSIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYyIik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXY2ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjYiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3
ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfRUxF
TUVOVCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAg
ICAgICAgICAgICAgdHcuY3VycmVudE5vZGUgPSBkaXY2OworICAgICAgICAgICAgICAgICAgICAK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYyKTsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYxKTsK
KyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCB0ZXN0RGl2
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBudWxs
KTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRl
c3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxib2R5
IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBtb3ZlcyB0aGUgVHJl
ZVdhbGtlciB1c2luZyBwcmV2aW91c05vZGUoKSB3aGVyZSB0aGVyZSBpcyBhIHN1YnRyZWUgdGhh
dCBoYXMgYmVlbiByZWplY3RlZC48L3A+CisgICAgICAgIDxkaXYgaWQ9InRlc3REaXYiIHN0eWxl
PSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYxIj4gCisgICAgICAg
ICAgICAgICAgPGRpdiBpZD0iZGl2MiI+IAorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJk
aXYzIj4gCisgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXY0Ij5hYWE8L2Rpdj4g
CisgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXY1Ij5iYmI8L2Rpdj4gCisgICAg
ICAgICAgICAgICAgICAgIDwvZGl2PiAKKyAgICAgICAgICAgICAgICA8L2Rpdj4gCisgICAgICAg
ICAgICA8L2Rpdj4gCisgICAgICAgICAgICA8ZGl2IGlkPSJkaXY2Ij5jY2M8L2Rpdj4gCisgICAg
ICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFw
cGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9k
aXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2
aW91c05vZGVfbW92ZVBhc3RTa2lwcGVkTm9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
ZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c05vZGVfbW92ZVBhc3RTa2lwcGVk
Tm9kZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2IzMDhlMjNhM2FlNjViZTYwMTVkMWJkNDJi
OGQzY2UzODE5NTFhNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRl
ci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9tb3ZlUGFzdFNraXBwZWROb2RlLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBtb3ZlcyB0aGUgVHJlZVdhbGtlciB1
c2luZyBwcmV2aW91c05vZGUoKSBpbnRvIGEgc3VidHJlZSB3aGVuIGEgcGFyZW50IG5vZGUgaGFz
IGJlZW4gc2tpcHBlZCBpbiB0aGUgTm9kZUZpbHRlci4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdv
cmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzTm9kZV9tb3ZlUGFzdFNraXBw
ZWROb2RlLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3By
ZXZpb3VzTm9kZV9tb3ZlUGFzdFNraXBwZWROb2RlLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMzYzNmEwZjlk
MTdjMGFmODFmMDA0NzBkNDgxMjJmMjE5OThhOWQ2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNOb2RlX21vdmVQYXN0
U2tpcHBlZE5vZGUuaHRtCkBAIC0wLDAgKzEsMTA1IEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0K
KyBJbnRlcm5ldCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29m
dCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj
YXRpb24sCisgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZgorIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBv
cmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgTUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMCisgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRt
bD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIHBy
ZXZpb3VzTm9kZSgpIC0gbW92ZSBwYXN0IGEgc2tpcHBlZCBzdWJ0cmVlIDwvdGl0bGU+CisgICAg
ICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHZhciB0ZXN0
UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVj
a05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBp
ZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoImRpdjMiID09IG5vZGUuaWQpCisg
ICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9kZUZpbHRlci5G
SUxURVJfU0tJUDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklM
VEVSX0FDQ0VQVDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAg
ICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYx
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAg
dmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAgICAg
ICAgICAgICB2YXIgZGl2NCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY0Iik7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBkaXY1ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjUi
KTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2NiIpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdmFy
IHR3ID0gZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1df
RUxFTUVOVCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAg
ICAgICAgICAgICAgICAgdHcuY3VycmVudE5vZGUgPSBkaXY2OworICAgICAgICAgICAgICAgICAg
ICAKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY1
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXY0
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYy
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBkaXYx
KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCB0ZXN0
RGl2KTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzTm9kZSgpLCBu
dWxsKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3Vs
dDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+IAorICAgIDxi
b2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMgdGVzdCBtb3ZlcyB0aGUg
VHJlZVdhbGtlciB1c2luZyBwcmV2aW91c05vZGUoKSBpbnRvIGEgc3VidHJlZSB3aGVuIGEgcGFy
ZW50IG5vZGUgaGFzIGJlZW4gc2tpcHBlZCBpbiB0aGUgTm9kZUZpbHRlci48L3A+CisgICAgICAg
IDxkaXYgaWQ9InRlc3REaXYiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4gCisgICAgICAgICAgICA8
ZGl2IGlkPSJkaXYxIj4gCisgICAgICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+IAorICAgICAg
ICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXYzIj4gCisgICAgICAgICAgICAgICAgICAgICAgICA8
ZGl2IGlkPSJkaXY0Ij5hYWE8L2Rpdj4gCisgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlk
PSJkaXY1Ij5iYmI8L2Rpdj4gCisgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAKKyAgICAgICAg
ICAgICAgICA8L2Rpdj4gCisgICAgICAgICAgICA8L2Rpdj4gCisgICAgICAgICAgICA8ZGl2IGlk
PSJkaXY2Ij5jY2M8L2Rpdj4gCisgICAgICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVzdCBwYXNz
ZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlk
PSd0ZXN0cmVzdWx0Jz5SdW5uaW5nPC9kaXY+CisgICAgPC9ib2R5PiAKKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50
ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5mZThjNzg5NzY1ZWM0YzRiYmIzZmY0MTQ4NWUzODkwNDlmOWFl
OWU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2
ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1Ro
aXMgdGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBwcmV2aW91c1NpYmxpbmcoKSBtZXRob2Qu
CisKK1Rlc3QgcGFzc2VzIGlmIHRoZSB3b3JkICJQYXNzIiBhcHBlYXJzIGJlbG93LgorCitQYXNz
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19w
cmV2aW91c1NpYmxpbmcuaHRtIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJz
YWwvdHdfcHJldmlvdXNTaWJsaW5nLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNDJkNGUxYjc2YmFjMTY3YTIz
MzhmOGQ3MTAzMjQzYzA3NDFlNzAxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0
ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nLmh0bQpAQCAtMCwwICsx
LDg2IEBACis8IURPQ1RZUEUgaHRtbD4gCis8IS0tCisgSW50ZXJuZXQgRXhwbG9yZXIgVGVzdCBQ
YWdlcyBDb3B5cmlnaHQgwqkgMjAxMiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisKKyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mCisgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorCisgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscworIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworIE5laXRoZXIg
dGhlIG5hbWUgb2YgdGhlIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlCisgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgorIHdy
aXR0ZW4gcGVybWlzc2lvbi4KKworIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgTUlDUk9T
T0ZUIENPUlBPUkFUSU9OICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5ECisgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIE1JQ1JPU09GVCBDT1JQT1JB
VElPTgorIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOworIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUgorIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKy0tPgorPGh0bWw+IAorICAgIDxoZWFkPiAgCisgICAgICAg
IDx0aXRsZSBpZD0nZGVzYyc+IFRyZWVXYWxrZXIgLSBwcmV2aW91c1NpYmxpbmcoKSA8L3RpdGxl
PiAKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiAgICAKKyAgICAgICAg
ICAgIHZhciB0ZXN0UmVzdWx0ID0gIlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBm
dW5jdGlvbiBjaGVja05vZGUoYWN0dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBpZiAoYWN0dWFsICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgdGVzdFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRl
c3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7Cisg
ICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
djEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICB2YXIgZGl2MyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYzIik7CisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3Vt
ZW50LmNyZWF0ZVRyZWVXYWxrZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0FMTCwgbnVsbCwg
ZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdHcubGFz
dENoaWxkKCk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBjaGVj
a05vZGUodHcucHJldmlvdXNTaWJsaW5nKCksIGRpdjMpOworICAgICAgICAgICAgICAgICAgICBj
aGVja05vZGUodHcucHJldmlvdXNTaWJsaW5nKCksIHRlc3REaXYuY2hpbGROb2Rlc1s0XSk7Cisg
ICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgZGl2Mik7
CisgICAgICAgICAgICAgICAgICAgIGNoZWNrTm9kZSh0dy5wcmV2aW91c1NpYmxpbmcoKSwgdGVz
dERpdi5jaGlsZE5vZGVzWzJdKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBy
ZXZpb3VzU2libGluZygpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3
LnByZXZpb3VzU2libGluZygpLCB0ZXN0RGl2LmNoaWxkTm9kZXNbMF0pOworICAgICAgICAgICAg
ICAgICAgICBjaGVja05vZGUodHcucHJldmlvdXNTaWJsaW5nKCksIG51bGwpOworICAgICAgICAg
ICAgICAgICAgICBjaGVja05vZGUodHcuY3VycmVudE5vZGUsIHRlc3REaXYuY2hpbGROb2Rlc1sw
XSk7CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdHJlc3VsdCIpLmZpcnN0Q2hpbGQuZGF0YSA9IHRlc3RSZXN1bHQ7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNhdGNoIChleCkKKyAgICAgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPiAKKyAgICA8Ym9k
eSBvbmxvYWQ9IlJ1blRlc3QoKTsiPgorICAgICAgICA8cD5UaGlzIHRlc3QgY2hlY2tzIHRoZSBU
cmVlV2Fsa2VyJ3MgcHJldmlvdXNTaWJsaW5nKCkgbWV0aG9kLjwvcD4KKyAgICAgICAgPGRpdiBp
ZD0idGVzdERpdiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgorICAgICAgICAgICAgPGRpdiBpZD0i
ZGl2MSI+YWFhPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIj5iYmI8L2Rpdj4KKyAg
ICAgICAgICAgIDxkaXYgaWQ9ImRpdjMiPmNjYzwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICAg
ICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuPC9wPiAK
KyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmluZzwvZGl2PgorICAgIDwvYm9keT4g
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX2lnbm9y
ZVNraXBwZWROb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20v
dHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19pZ25vcmVTa2lwcGVkTm9kZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZTdlYjY4ODBlY2UzNTc3YmMxMzY4YmE2OWEzMDIxMzZmY2U4NWVlMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2Fs
L3R3X3ByZXZpb3VzU2libGluZ19pZ25vcmVTa2lwcGVkTm9kZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw1IEBACitUaGlzIHRlc3QgbW92ZXMgdGhlIFRyZWVXYWxrZXIgdXNpbmcgcHJldmlvdXNT
aWJsaW5nKCkgd2hlcmUgdGhlIHByZXZpb3VzIHNpYmxpbmcgb2YgdGhlIHN0YXJ0aW5nIG5vZGUg
aGFzIGJlZW4gc2tpcHBlZC4KKworVGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVh
cnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9k
b20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19pZ25vcmVTa2lwcGVkTm9kZS5odG0gYi9M
YXlvdXRUZXN0cy9pZXRlc3RjZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdf
aWdub3JlU2tpcHBlZE5vZGUuaHRtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzNGUxZGQxODk3ZDM5YjNkOTkyZGEw
ZWM1YjM1YmEzNGUxNTM4NDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pZXRlc3Rj
ZW50ZXIvZG9tL3RyYXZlcnNhbC90d19wcmV2aW91c1NpYmxpbmdfaWdub3JlU2tpcHBlZE5vZGUu
aHRtCkBAIC0wLDAgKzEsMTAxIEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0KKyBJbnRlcm5ldCBF
eHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3JhdGlv
bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgorIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5vciB0
aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgTUlD
Uk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
KyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIHByZXZpb3VzU2libGlu
ZygpIC0gbW92ZSBwYXN0IGEgc2tpcHBlZCBzdWJ0cmVlIDwvdGl0bGU+CisgICAgICAgIDxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICAgICAgICAgIHZhciB0ZXN0UmVzdWx0ID0g
IlBhc3MiOworICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05vZGUoYWN0
dWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoYWN0dWFs
ICE9IGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgdGVz
dFJlc3VsdCA9ICJGYWlsIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGFjY2VwdE5vZGUobm9kZSkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoImRpdjMiID09IG5vZGUuaWQpCisgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfU0tJ
UDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQ
VDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAgdHJ5CisgICAgICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRpdjIg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAgICAgICAgICAgICAgICAgICB2
YXIgZGl2NCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXY0Iik7CisgICAgICAgICAgICAg
ICAgICAgIHZhciBkaXY1ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjUiKTsKKyAgICAg
ICAgICAgICAgICAgICAgdmFyIGRpdjYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2NiIp
OworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR3ID0gZG9j
dW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0ZXN0RGl2LCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwg
YWNjZXB0Tm9kZSwgZmFsc2UpOworICAgICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3Lmxhc3RDaGlsZCgpLCBkaXY2KTsKKyAgICAgICAgICAgICAgICAg
ICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBkaXY1KTsKKyAgICAgICAgICAgICAg
ICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBkaXY0KTsKKyAgICAgICAgICAg
ICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBkaXYyKTsKKyAgICAgICAg
ICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBkaXYxKTsKKyAgICAg
ICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3VzU2libGluZygpLCBudWxsKTsKKyAg
ICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhID0gdGVzdFJlc3VsdDsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0Y2ggKGV4KQorICAgICAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1
bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25sb2Fk
PSJSdW5UZXN0KCk7Ij4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IG1vdmVzIHRoZSBUcmVlV2Fsa2Vy
IHVzaW5nIHByZXZpb3VzU2libGluZygpIHdoZXJlIHRoZSBwcmV2aW91cyBzaWJsaW5nIG9mIHRo
ZSBzdGFydGluZyBub2RlIGhhcyBiZWVuIHNraXBwZWQuPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0
ZXN0RGl2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2
MSI+YWFhPC9kaXY+IAorICAgICAgICAgICAgPGRpdiBpZD0iZGl2MiI+YmJiPC9kaXY+IAorICAg
ICAgICAgICAgPGRpdiBpZD0iZGl2MyI+IAorICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjQi
PmJiYjwvZGl2PiAKKyAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkaXY1Ij5jY2M8L2Rpdj4gCisg
ICAgICAgICAgICA8L2Rpdj4gCisgICAgICAgICAgICA8ZGl2IGlkPSJkaXY2Ij5kZGQ8L2Rpdj4g
CisgICAgICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBh
c3MiIGFwcGVhcnMgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSd0ZXN0cmVzdWx0Jz5SdW5u
aW5nPC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3
X3ByZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ll
dGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYmVhY2JmOThmNDlkOGQ5ODE2NDE0Y2QxYmYzMGRhNjc0
MmFhYzBhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaWV0ZXN0Y2VudGVyL2RvbS90
cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX25vZGVGaWx0ZXItZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGUgVHJlZVdhbGtlcidzIHByZXZpb3VzU2li
bGluZygpIG1ldGhvZCB3aXRoIGEgTm9kZUZpbHRlciBjYWxsYmFjay4KKworVGVzdCBwYXNzZXMg
aWYgdGhlIHdvcmQgIlBhc3MiIGFwcGVhcnMgYmVsb3cuCisKK1Bhc3MKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3X3ByZXZpb3VzU2libGluZ19u
b2RlRmlsdGVyLmh0bSBiL0xheW91dFRlc3RzL2lldGVzdGNlbnRlci9kb20vdHJhdmVyc2FsL3R3
X3ByZXZpb3VzU2libGluZ19ub2RlRmlsdGVyLmh0bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MGRiNDZkYWEzMTNi
YTFmOWQ2YTJlYmUyNjMxZWQxY2U0NzQxZmUyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaWV0ZXN0Y2VudGVyL2RvbS90cmF2ZXJzYWwvdHdfcHJldmlvdXNTaWJsaW5nX25vZGVGaWx0
ZXIuaHRtCkBAIC0wLDAgKzEsOTYgQEAKKzwhRE9DVFlQRSBodG1sPiAKKzwhLS0KKyBJbnRlcm5l
dCBFeHBsb3JlciBUZXN0IFBhZ2VzIENvcHlyaWdodCDCqSAyMDEyIE1pY3Jvc29mdCBDb3Jwb3Jh
dGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUg
bWV0OgorCisgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YKKyBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZgor
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzCisgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorCisgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgTWljcm9zb2Z0IENvcnBvcmF0aW9uIG5v
ciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUKKyB1c2VkIHRvIGVuZG9yc2Ug
b3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yCisgd3JpdHRlbiBwZXJtaXNzaW9uLgorCisgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBNSUNST1NPRlQgQ09SUE9SQVRJT04gIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRAorIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQKKyBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
TUlDUk9TT0ZUIENPUlBPUkFUSU9OCisgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SCisgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRQorIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorLS0+Cis8aHRtbD4gCisgICAg
PGhlYWQ+ICAKKyAgICAgICAgPHRpdGxlIGlkPSdkZXNjJz4gVHJlZVdhbGtlciAtIHByZXZpb3Vz
U2libGluZygpIHdpdGggYSBOb2RlRmlsdGVyIDwvdGl0bGU+IAorICAgICAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+ICAgIAorICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQgPSAi
UGFzcyI7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTm9kZShhY3R1
YWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhY3R1YWwg
IT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB0ZXN0
UmVzdWx0ID0gIkZhaWwiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gYWNjZXB0Tm9kZShub2RlKQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIGlmICgiZGl2IiA9PSBub2RlLm5vZGVOYW1lLnRvTG93ZXJD
YXNlKCkpCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9k
ZUZpbHRlci5GSUxURVJfQUNDRVBUOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9k
ZUZpbHRlci5GSUxURVJfU0tJUDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIFJ1blRlc3QoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICAgICAg
dHJ5CisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICB2YXIgdGVzdERpdiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RGl2Iik7CisgICAgICAgICAgICAgICAgICAg
IHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKTsKKyAgICAgICAgICAg
ICAgICAgICAgdmFyIGRpdjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpOworICAg
ICAgICAgICAgICAgICAgICB2YXIgZGl2MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYz
Iik7CisgICAgICAgICAgICAgICAgICAgIHZhciB0dyA9IGRvY3VtZW50LmNyZWF0ZVRyZWVXYWxr
ZXIodGVzdERpdiwgTm9kZUZpbHRlci5TSE9XX0FMTCwgYWNjZXB0Tm9kZSwgZmFsc2UpOworICAg
ICAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3Lmxhc3RD
aGlsZCgpLCBkaXYzKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZpb3Vz
U2libGluZygpLCBkaXYyKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnByZXZp
b3VzU2libGluZygpLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3LnBy
ZXZpb3VzU2libGluZygpLCBudWxsKTsKKyAgICAgICAgICAgICAgICAgICAgY2hlY2tOb2RlKHR3
LmN1cnJlbnROb2RlLCBkaXYxKTsKKyAgICAgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0cmVzdWx0IikuZmlyc3RDaGlsZC5k
YXRhID0gdGVzdFJlc3VsdDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgY2F0
Y2ggKGV4KQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRlc3RyZXN1bHQiKS5maXJzdENoaWxkLmRhdGEgPSAiRmFpbCI7Cisg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8
L2hlYWQ+IAorICAgIDxib2R5IG9ubG9hZD0iUnVuVGVzdCgpOyI+CisgICAgICAgIDxwPlRoaXMg
dGVzdCBjaGVja3MgdGhlIFRyZWVXYWxrZXIncyBwcmV2aW91c1NpYmxpbmcoKSBtZXRob2Qgd2l0
aCBhIE5vZGVGaWx0ZXIgY2FsbGJhY2suPC9wPgorICAgICAgICA8ZGl2IGlkPSJ0ZXN0RGl2IiBz
dHlsZT0iZGlzcGxheTpub25lOyI+CisgICAgICAgICAgICA8c3Bhbj5hYWE8L3NwYW4+CisgICAg
ICAgICAgICA8ZGl2IGlkPSJkaXYxIj5iYmI8L2Rpdj4KKyAgICAgICAgICAgIDxzcGFuPmNjYzwv
c3Bhbj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiPmRkZDwvZGl2PgorICAgICAgICAgICAg
PGRpdiBpZD0iZGl2MyI+ZWVlPC9kaXY+CisgICAgICAgICAgICA8c3Bhbj5mZmY8L3NwYW4+Cisg
ICAgICAgIDwvZGl2PiAKKyAgICAgICAgPHA+VGVzdCBwYXNzZXMgaWYgdGhlIHdvcmQgIlBhc3Mi
IGFwcGVhcnMgYmVsb3cuPC9wPiAKKyAgICAgICAgPGRpdiBpZD0ndGVzdHJlc3VsdCc+UnVubmlu
ZzwvZGl2PgorICAgIDwvYm9keT4gCis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0
aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMKaW5k
ZXggM2RjYjYzNTMxYjVhNTI3YzUzM2I1NjBiNDg5OWM0ODJmZTVkMGIxNi4uYWY0ZjdhN2Q2Y2Fi
Mzg0ZTQzNWYwZGYxYzNkZWY0NzIzNzcyMGUwMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zCkBAIC00MzQzLDMgKzQzNDMsMTUgQEAgd2Via2l0
Lm9yZy9iLzEwODI4NiBwbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL3NvZnR3YXJlY29tcG9zaXRp
bmcvZ2VvbWV0cnkvZml4ZWQKIHdlYmtpdC5vcmcvYi8xMDg0MjQgbWVkaWEvdmlkZW8tZXJyb3It
ZG9lcy1ub3QtZXhpc3QuaHRtbCBbIEZhaWx1cmUgQ3Jhc2ggXQogd2Via2l0Lm9yZy9iLzEwODU2
NiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2Zvcm1zL2NhbGVuZGFyLXBpY2tlci9jYWxlbmRhci1w
aWNrZXIta2V5LW9wZXJhdGlvbnMuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzEwODU5
NCBbIERlYnVnIF0gdGFibGVzL3RhYmxlLXNlY3Rpb24tb3ZlcmZsb3ctY2xpcC1jcmFzaC5odG1s
IFsgQ3Jhc2ggXQorCit3ZWJraXQub3JnL2IvNzc4ODIgaWV0ZXN0Y2VudGVyL2RvbS9jb3JlL05v
ZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24yLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9i
Lzc2MTA2IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0
dGVyLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA2IGlldGVzdGNlbnRlci9kb20v
aW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyX0hpZ2guaHRtIFsgRmFpbHVyZSBd
Cit3ZWJraXQub3JnL2IvNzYxMDcgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlk
ZV9Qcm9wZXJ0eV9TZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDcgaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXJfSGlnaC5o
dG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjEgaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0aW9uLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9y
Zy9iLzEwODY2MyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9IVE1MSXNJ
bmRleEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNsZUVsZW1lbnQuaHRtIFsgRmFp
bHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2Uv
UHJvdG90eXBlX1NWR1JlY3RFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEw
ODY2NSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdTVkdFbGVtZW50
Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzM2MjgxIGlldGVzdGNlbnRlci9kb20vc3R5
bGUvaW5zZXJ0SGllcmFyY2h5RXJyb3IuaHRtIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGYwZjk0YTViNzQ3NTRkZmI0
ODMyMjkyMmRiYTM0ZDRlYzgwY2E2ZjguLjlmMzU2MGJmOGE3Y2MxMzhjMzllMWZlOWVhNDE3Yjlh
MTk1M2MwZjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCkBA
IC0xODYyLDMgKzE4NjIsMTUgQEAgd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5n
L3NwZWxsaW5nLXN1YndvcmQtc2VsZWN0aW9uLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8x
MDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy13aXRoLXB1bmN0dWF0aW9uLXNlbGVjdGlv
bi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3Bl
bGxpbmctd2l0aC11bmRlcnNjb3JlLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3Jn
L2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC13aGl0ZXNwYWNlLXNlbGVj
dGlvbi5odG1sIFsgU2tpcCBdCisKK3dlYmtpdC5vcmcvYi83Nzg4MiBpZXRlc3RjZW50ZXIvZG9t
L2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRtIFsgRmFpbHVyZSBdCit3ZWJr
aXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9w
ZXJ0eV9HZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2Vu
dGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0gWyBG
YWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83
NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRl
cl9IaWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2MSBpZXRlc3RjZW50ZXIv
ZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24uaHRtIFsgRmFpbHVyZSBdCit3
ZWJraXQub3JnL2IvMTA4NjYzIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBl
X0hUTUxJc0luZGV4RWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUg
aWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC5o
dG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQu
b3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NW
R0VsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMzYyODEgaWV0ZXN0Y2VudGVy
L2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0gWyBJbWFnZU9ubHlGYWlsdXJlIF0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMDc3YjZjMjBk
NWFiYmE0MGI3NWE1NTIzYWM4ODJkYWQ3N2I1MDUwZS4uNTU5ZDFmMzEzMDZkNzQ0NzU2NmQxNWVm
Yzc0YmFkNTYzZjFiNjY3YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTE0NDcsNiArMTQ0NywxOCBAQCB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVhdGlvbi1zZWxlY3Rpb24uaHRtbCBbCiB3ZWJr
aXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC11bmRlcnNjb3Jl
LXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3Bl
bGxpbmcvc3BlbGxpbmctd2l0aC13aGl0ZXNwYWNlLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiAK
K3dlYmtpdC5vcmcvYi83Nzg4MiBpZXRlc3RjZW50ZXIvZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9j
dW1lbnRQb3NpdGlvbjIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXIuaHRtIFsgRmFp
bHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9P
dmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcv
Yi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1Nl
dHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9t
L2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlcl9IaWdoLmh0bSBbIEZhaWx1cmUg
XQord2Via2l0Lm9yZy9iLzEwODY2MSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9ET01FeGNlcHRpb24uaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjYzIGll
dGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0hUTUxJc0luZGV4RWxlbWVudC5o
dG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhl
cml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtp
dC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZH
UmVjdEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNl
bnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1NWR0VsZW1lbnQuaHRtIFsgRmFpbHVy
ZSBdCit3ZWJraXQub3JnL2IvMzYyODEgaWV0ZXN0Y2VudGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVy
YXJjaHlFcnJvci5odG0gWyBJbWFnZU9ubHlGYWlsdXJlIF0KKwogIy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8KICMgRW5kIG9mIFRlc3RzIGZhaWxpbmcKICMvLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDIxNDAwNjA0YWE3YjhkNTljZjU1NjA3YjJjZWYxZTAyYTA1YzI5NDMuLmE3ZWZkYTRm
ZDBkMDc5NDhjZDY2YmNhOWM3NWE4YmMzOWY3YjNkNDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMzQyLDMgKzEzNDIsMTUgQEAgd2Via2l0Lm9yZy9i
LzEwODM4MCBodHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZS1oYXItcGFnZXMuaHRtbCBbIEZh
aWx1cmUgXQogd2Via2l0Lm9yZy9iLzEwODM4MCBodHRwL3Rlc3RzL2xvYWRpbmcvcmVkaXJlY3Qt
bWV0aG9kcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTA4MzgwIGh0dHAvdGVzdHMv
bWlzYy9saW5rLXJlbC1pY29uLWJlZm9yZWxvYWQuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9y
Zy9iLzEwODM4MCBodHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1sb2Fkcy13aXRoLWltYWdlcy1kaXNh
YmxlZC5odG1sIFsgRmFpbHVyZSBdCisKK3dlYmtpdC5vcmcvYi83Nzg4MiBpZXRlc3RjZW50ZXIv
ZG9tL2NvcmUvTm9kZV9jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjIuaHRtIFsgRmFpbHVyZSBdCit3
ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Q
cm9wZXJ0eV9HZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDYgaWV0ZXN0
Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9HZXR0ZXJfSGlnaC5odG0g
WyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRh
bmNlL092ZXJyaWRlX1Byb3BlcnR5X1NldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcv
Yi83NjEwNyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X1Nl
dHRlcl9IaWdoLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2MSBpZXRlc3RjZW50
ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9ET01FeGNlcHRpb24uaHRtIFsgRmFpbHVyZSBd
Cit3ZWJraXQub3JnL2IvMTA4NjYzIGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90
eXBlX0hUTUxJc0luZGV4RWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2
NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHQ2lyY2xlRWxlbWVu
dC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZHUmVjdEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJr
aXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NW
R1NWR0VsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMzYyODEgaWV0ZXN0Y2Vu
dGVyL2RvbS9zdHlsZS9pbnNlcnRIaWVyYXJjaHlFcnJvci5odG0gWyBJbWFnZU9ubHlGYWlsdXJl
IF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQwNjQxMTEw
MTU0NzNlYmIyNjlhZWQxYjc3ZTRhZDM1MDFjNjhlYzMuLjE1NmVmYmQxY2Q4MWZmYWJjMTA2YWRl
NzNhYzkwMTIzMWMxNjI1YzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0
aW9ucwpAQCAtMjYyMywzICsyNjIzLDE1IEBAIHdlYmtpdC5vcmcvYi8xMDc1NjcgY3NzMi4xL3Qw
NTA1LWMxNi1kZXNjZW5kYW50LTAxLWUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzEw
NzU2NyB0YWJsZXMvbW96aWxsYS9idWdzL2J1ZzExODguaHRtbCBbIEZhaWx1cmUgXSAKIHdlYmtp
dC5vcmcvYi8xMDc1NjcgZWRpdGluZy9zZWxlY3Rpb24vZXh0ZW5kLWJ5LXNlbnRlbmNlLTAwMS5o
dG1sIFsgRmFpbHVyZSBdIAogd2Via2l0Lm9yZy9iLzEwNzU2NyBzdmcvY2FydG8ubmV0L2NvbWJv
Ym94LnN2ZyBbIEZhaWx1cmUgXSAKKword2Via2l0Lm9yZy9iLzc3ODgyIGlldGVzdGNlbnRlci9k
b20vY29yZS9Ob2RlX2NvbXBhcmVEb2N1bWVudFBvc2l0aW9uMi5odG0gWyBGYWlsdXJlIF0KK3dl
YmtpdC5vcmcvYi83NjEwNiBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1By
b3BlcnR5X0dldHRlci5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi83NjEwNiBpZXRlc3Rj
ZW50ZXIvZG9tL2luaGVyaXRhbmNlL092ZXJyaWRlX1Byb3BlcnR5X0dldHRlcl9IaWdoLmh0bSBb
IEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA3IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFu
Y2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0dGVyLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9i
Lzc2MTA3IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfU2V0
dGVyX0hpZ2guaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjYxIGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX0RPTUV4Y2VwdGlvbi5odG0gWyBGYWlsdXJlIF0K
K3dlYmtpdC5vcmcvYi8xMDg2NjMgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5
cGVfSFRNTElzSW5kZXhFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2
NSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdDaXJjbGVFbGVtZW50
Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2NSBpZXRlc3RjZW50ZXIvZG9tL2lu
aGVyaXRhbmNlL1Byb3RvdHlwZV9TVkdSZWN0RWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtp
dC5vcmcvYi8xMDg2NjUgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfU1ZH
U1ZHRWxlbWVudC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8zNjI4MSBpZXRlc3RjZW50
ZXIvZG9tL3N0eWxlL2luc2VydEhpZXJhcmNoeUVycm9yLmh0bSBbIEltYWdlT25seUZhaWx1cmUg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkODQ0NDFh
YTliZWMyMDJkMWRlN2Q2NTgyNmU0ZDJkZDkxYjJkNzNiLi4xMDA2NGU4ZDljODE0MzM4Njg3NzNj
YzZkMzJmZWJjODEwOGIyOWZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
VGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVj
dGF0aW9ucwpAQCAtMjYyNiwzICsyNjI2LDE1IEBAIHdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGlu
Zy9zcGVsbGluZy9zcGVsbGluZy1zdWJ3b3JkLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiB3ZWJr
aXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVhdGlv
bi1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3Nw
ZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5kZXJzY29yZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQog
d2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtd2hpdGVz
cGFjZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQorCit3ZWJraXQub3JnL2IvNzc4ODIgaWV0ZXN0
Y2VudGVyL2RvbS9jb3JlL05vZGVfY29tcGFyZURvY3VtZW50UG9zaXRpb24yLmh0bSBbIEZhaWx1
cmUgXQord2Via2l0Lm9yZy9iLzc2MTA2IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3Zl
cnJpZGVfUHJvcGVydHlfR2V0dGVyLmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzc2MTA2
IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvT3ZlcnJpZGVfUHJvcGVydHlfR2V0dGVyX0hp
Z2guaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvNzYxMDcgaWV0ZXN0Y2VudGVyL2RvbS9p
bmhlcml0YW5jZS9PdmVycmlkZV9Qcm9wZXJ0eV9TZXR0ZXIuaHRtIFsgRmFpbHVyZSBdCit3ZWJr
aXQub3JnL2IvNzYxMDcgaWV0ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9PdmVycmlkZV9Qcm9w
ZXJ0eV9TZXR0ZXJfSGlnaC5odG0gWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDg2NjEgaWV0
ZXN0Y2VudGVyL2RvbS9pbmhlcml0YW5jZS9Qcm90b3R5cGVfRE9NRXhjZXB0aW9uLmh0bSBbIEZh
aWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODY2MyBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNl
L1Byb3RvdHlwZV9IVE1MSXNJbmRleEVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvMTA4NjY1IGlldGVzdGNlbnRlci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR0NpcmNs
ZUVsZW1lbnQuaHRtIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4NjY1IGlldGVzdGNlbnRl
ci9kb20vaW5oZXJpdGFuY2UvUHJvdG90eXBlX1NWR1JlY3RFbGVtZW50Lmh0bSBbIEZhaWx1cmUg
XQord2Via2l0Lm9yZy9iLzEwODY2NSBpZXRlc3RjZW50ZXIvZG9tL2luaGVyaXRhbmNlL1Byb3Rv
dHlwZV9TVkdTVkdFbGVtZW50Lmh0bSBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzM2MjgxIGll
dGVzdGNlbnRlci9kb20vc3R5bGUvaW5zZXJ0SGllcmFyY2h5RXJyb3IuaHRtIFsgSW1hZ2VPbmx5
RmFpbHVyZSBdCg==
</data>
<flag name="commit-queue"
          id="205575"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
      

    </bug>

</bugzilla>