<?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>203996</bug_id>
          
          <creation_ts>2019-11-08 07:31:22 -0800</creation_ts>
          <short_desc>[Pointer Events WPT] Delete manual tests imported as layout tests</short_desc>
          <delta_ts>2019-11-12 06:39:17 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=197011</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>202789</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Carlos Alberto Lopez Perez">clopez</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cdumez</cc>
    
    <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1588634</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-11-08 07:31:22 -0800</bug_when>
    <thetext>On bug 197011 the WPT tests for Pointer Events were updated.

On the process a bunch of manual tests were also imported.

The script import-w3c-tests should filter manual test and not import them, not sure why that happened then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588636</commentid>
    <comment_count>1</comment_count>
      <attachid>383125</attachid>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-11-08 07:34:25 -0800</bug_when>
    <thetext>Created attachment 383125
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589166</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-11-11 05:07:02 -0800</bug_when>
    <thetext>Ping reviewers: All EWS green.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589500</commentid>
    <comment_count>3</comment_count>
      <attachid>383125</attachid>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-11-12 06:38:45 -0800</bug_when>
    <thetext>Comment on attachment 383125
Patch

Clearing flags on attachment: 383125

Committed r252360: &lt;https://trac.webkit.org/changeset/252360&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589501</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2019-11-12 06:38:49 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1589502</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-11-12 06:39:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/57114894&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>383125</attachid>
            <date>2019-11-08 07:34:25 -0800</date>
            <delta_ts>2019-11-12 06:38:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-203996-20191108163423.patch</filename>
            <type>text/plain</type>
            <size>306663</size>
            <attacher name="Carlos Alberto Lopez Perez">clopez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUyMjM4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjY3ZTJjMjIzNjMwMjRjNDM0MmFh
ODVhYzczYmY5YWRlNDBiYjVhZC4uYWRmZWFkNTY3MzA0OTY1NmY2ZjFmNTIxOTkwOTNmZDAwMzEw
OWIyNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTExLTA4ICBDYXJsb3MgQWxiZXJ0byBM
b3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtQb2ludGVyIEV2ZW50
cyBXUFRdIERlbGV0ZSBtYW51YWwgdGVzdHMgaW1wb3J0ZWQgYXMgbGF5b3V0IHRlc3RzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDM5OTYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYW51YWwgdGVzdHMg
c2hvdWxkIG5vdCBiZSBpbXBvcnRlZCBhcyBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9uczogZGVsZXRlIGV4cGVjdGF0aW9ucy4KKwogMjAxOS0x
MS0wOCAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAg
ICAgJ1N0cmlrZXRocm91Z2gnIGVkaXRpbmcgY29tbWFuZCByZXBvcnRlZCBhcyAnZm9ybWF0VW5k
ZXJsaW5lJwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMDJkMjMwM2Q4OWY5YmZk
ODlhNGIyMzIyN2QzN2ZjZGIyN2E0NmYzZi4uOWFlNjcyZjE1ZThhY2IyZmM0OWIxMWQ1ZWU2NTY2
YzI5OGUzMTc1OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjQg
QEAKKzIwMTktMTEtMDggIENhcmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6ICA8Y2xvcGV6QGlnYWxp
YS5jb20+CisKKyAgICAgICAgW1BvaW50ZXIgRXZlbnRzIFdQVF0gRGVsZXRlIG1hbnVhbCB0ZXN0
cyBpbXBvcnRlZCBhcyBsYXlvdXQgdGVzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwMzk5NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE1hbnVhbCB0ZXN0cyBzaG91bGQgbm90IGJlIGltcG9ydGVkIGFz
IGxheW91dCB0ZXN0cy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL2NvbXBhdC9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uX3R3by1maW5nZXJfaW50ZXJhY3Rp
b24tbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3Bv
aW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9jb2FsZXNjZWRfZXZlbnRzX2F0dHJp
YnV0ZXMtbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9nZXRDb2FsZXNjZWRFdmVudHNf
d2hlbl9wb2ludGVybG9ja2VkLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfZ2V0UHJl
ZGljdGVkRXZlbnRzX3doZW5fcG9pbnRlcmxvY2tlZC1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRl
cmV2ZW50X3BvaW50ZXJyYXdtb3ZlLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfcG9p
bnRlcnJhd21vdmVfaW5fcG9pbnRlcmxvY2stbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVu
dF9wcmVkaWN0ZWRfZXZlbnRzX2F0dHJpYnV0ZXMtbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJl
dmVudF90b3VjaC1hY3Rpb24tcGFuLWRvd24tY3NzX3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVk
LgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9w
b2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi1sZWZ0LWNzc190b3VjaC1tYW51YWwuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRl
bnNpb24vcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1wYW4tcmlnaHQtY3NzX3RvdWNoLW1hbnVh
bC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi11cC1jc3NfdG91Y2gt
bWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50
ZXJldmVudHMvaHRtbC9wb2ludGVyZXZlbnRfZHJhZ19pbnRlcmFjdGlvbi1tYW51YWwuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVyZXZlbnRfYXR0cmlidXRlc19ob3ZlcmFibGVfcG9pbnRlcnMtbWFudWFsLmh0bWw6IFJlbW92
ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X2F0dHJpYnV0ZXNfbm9ob3Zlcl9wb2ludGVycy1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfYm91
bmRhcnlfZXZlbnRzX2luX2NhcHR1cmluZy1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfY2FwdHVyZV9z
dXBwcmVzc2luZ19tb3VzZS1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfZGlzYWJsZWRfZm9ybV9jb250
cm9sLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
b2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9lbGVtZW50X2hhc3BvaW50ZXJjYXB0dXJlLW1hbnVh
bC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL3BvaW50ZXJldmVudF9lbGVtZW50X2hhc3BvaW50ZXJjYXB0dXJlX3JlbGVhc2VfcGVuZGlu
Z19jYXB0dXJlLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9mcmFjdGlvbmFsX2Nvb3JkaW5hdGVzLW1h
bnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF9tdWx0aXBsZV9wcmltYXJ5X3BvaW50ZXJzX2JvdW5kYXJ5X2V2
ZW50cy1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
cG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfcG9pbnRlcklkX3Njb3BlLW1hbnVhbC5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF9wb2ludGVybGVhdmVfcGVuLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9yZWxlYXNlcG9p
bnRlcmNhcHR1cmVfZXZlbnRzX3RvX29yaWdpbmFsX3RhcmdldC1tYW51YWwuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZl
bnRfcmVsZWFzZXBvaW50ZXJjYXB0dXJlX3JlbGVhc2VfcmlnaHRfYWZ0ZXJfY2FwdHVyZS1tYW51
YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2
ZW50cy9wb2ludGVyZXZlbnRfc2VxdWVuY2VfYXRfaW1wbGljaXRfcmVsZWFzZV9vbl9jbGljay1t
YW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVyZXZlbnRfc2VxdWVuY2VfYXRfaW1wbGljaXRfcmVsZWFzZV9vbl9kcmFn
LW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF9zZXRwb2ludGVyY2FwdHVyZV9vdmVycmlkZV9wZW5kaW5n
X2NhcHR1cmVfZWxlbWVudC1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2V0cG9pbnRlcmNhcHR1cmVf
dG9fc2FtZV9lbGVtZW50X3R3aWNlLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24t
YnV0dG9uLXRlc3RfdG91Y2gtbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1pbmhl
cml0X2NoaWxkLWF1dG8tY2hpbGQtbm9uZV90b3VjaC1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91
Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtbm9uZV90b3VjaC1tYW51YWwuaHRtbDogUmVtb3ZlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRf
dG91Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtcGFuLXgtY2hpbGQtcGFuLXhfdG91Y2gtbWFudWFs
Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1pbmhlcml0X2NoaWxkLXBhbi14LWNoaWxkLXBh
bi15X3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9wYXJl
bnQtbm9uZV90b3VjaC1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWtleWJvYXJk
LW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tbW91c2UtbWFudWFsLmh0bWw6IFJl
bW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRl
cmV2ZW50X3RvdWNoLWFjdGlvbi1ub25lLWNzc190b3VjaC1tYW51YWwuaHRtbDogUmVtb3ZlZC4K
KyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRf
dG91Y2gtYWN0aW9uLXBhbi14LWNzc190b3VjaC1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gt
YWN0aW9uLXBhbi14LXBhbi15LXBhbi15X3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3Vj
aC1hY3Rpb24tcGFuLXktY3NzX3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rp
b24tcm90YXRlZC1kaXZzX3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24t
c3Bhbi10ZXN0X3RvdWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tc3ZnLXRl
c3RfdG91Y2gtbWFudWFsLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi10YWJsZS10ZXN0X3Rv
dWNoLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9w
b2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9tb3ZlbWVudHh5LW1hbnVhbC5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9tb3ZlbWVudHh5X3doZW5fbG9ja2VkLW1hbnVhbC5o
dG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybG9ja19hZnRlcl9wb2ludGVyY2FwdHVy
ZS1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVyZXZlbnRfcG9pbnRlcmxvY2tfc3VwZXJjZWRl
c19jYXB0dXJlLW1hbnVhbC5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybW92ZV9p
bl9wb2ludGVybG9jay1tYW51YWwuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVyZXZlbnRfcG9pbnRlcm1v
dmVfb25fY2hvcmRlZF9tb3VzZV9idXR0b25fd2hlbl9sb2NrZWQtbWFudWFsLmh0bWw6IFJlbW92
ZWQuCisKIDIwMTktMTEtMDUgIE9yaW9sIEJydWZhdSAgPG9icnVmYXVAaWdhbGlhLmNvbT4KIAog
ICAgICAgICBbY3NzLWxpc3RzXSBJbXBsZW1lbnQgbGlzdC1zdHlsZS10eXBlOiA8c3RyaW5nPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
b2ludGVyZXZlbnRzL2NvbXBhdC9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uX3R3by1maW5nZXJf
aW50ZXJhY3Rpb24tbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvY29tcGF0L3BvaW50ZXJldmVudF90b3VjaC1hY3Rp
b25fdHdvLWZpbmdlcl9pbnRlcmFjdGlvbi1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMzUzN2UwZTFlOWY3OGFmZTUxYjNkYzZiODI2ZTNlNmU4OGQxNDEwYy4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvY29tcGF0L3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb25fdHdvLWZpbmdlcl9pbnRlcmFjdGlvbi1tYW51YWwuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDEwMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICA8aGVhZD4KLSAgICA8dGl0bGU+UG9pbnRlciBFdmVudDogdG91Y2gtYWN0aW9uIHRlc3QgZm9y
IHR3by1maW5nZXIgaW50ZXJhY3Rpb248L3RpdGxlPgotICAgIDxtZXRhIGNvbnRlbnQ9InRleHQv
aHRtbDsgY2hhcnNldD1VVEYtOCIgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIi8+Ci0gICAgPGxp
bmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNv
bSAiLz4KLSAgICA8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vY29tcGF0LnNwZWMud2hh
dHdnLm9yZy8jdG91Y2gtYWN0aW9uIiAvPgotICAgIDxtZXRhIG5hbWU9ImFzc2VydCIgY29udGVu
dD0iVGVzdHMgdGhhdCBhIHR3by1maW5nZXIgcGFuIGdlc3R1cmUgaXMgY2FuY2VsbGVkIGluICd0
b3VjaC1hY3Rpb246IHBhbi14IHBhbi15JyBidXQgaXMgYWxsb3dlZCBpbiAndG91Y2gtYWN0aW9u
OiBwaW5jaC16b29tJyIvPgotICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9j
c3MiIGhyZWY9Ii4uL3BvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICA8c2NyaXB0IHNyYz0i
L3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii9y
ZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3BvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3Nj
cmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAgICB2YXIgZXZl
bnRfbG9nID0gW107Ci0gICAgICB2YXIgYWN0aXZlX3BvaW50ZXJzID0gMDsKLQotICAgICAgZnVu
Y3Rpb24gcmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgIGV2ZW50X2xvZyA9IFtdOwotICAgICAg
ICBhY3RpdmVfcG9pbnRlcnMgPSAwOwotICAgICAgfQotCi0gICAgICBmdW5jdGlvbiBydW4oKSB7
Ci0gICAgICAgIHZhciB0ZXN0X3BvaW50ZXJfZXZlbnRzID0gWwotICAgICAgICAgIHNldHVwX3Bv
aW50ZXJldmVudF90ZXN0KCJ0d28tZmluZ2VyIHBhbiBvbiAndG91Y2gtYWN0aW9uOiBwYW4teCBw
YW4teSciLCBbInRvdWNoIl0pLAotICAgICAgICAgIHNldHVwX3BvaW50ZXJldmVudF90ZXN0KCJ0
d28tZmluZ2VyIHBhbiBvbiAndG91Y2gtYWN0aW9uOiBwaW5jaC16b29tJyIsIFsidG91Y2giXSkK
LSAgICAgICAgXTsKLSAgICAgICAgdmFyIGV4cGVjdGVkX2V2ZW50cyA9IFsKLSAgICAgICAgICAi
cG9pbnRlcmRvd25AYmxhY2ssIHBvaW50ZXJkb3duQGJsYWNrLCBwb2ludGVydXBAYmxhY2ssIHBv
aW50ZXJ1cEBibGFjayIsCi0gICAgICAgICAgInBvaW50ZXJkb3duQGdyZXksIHBvaW50ZXJkb3du
QGdyZXksIHBvaW50ZXJjYW5jZWxAZ3JleSwgcG9pbnRlcmNhbmNlbEBncmV5IgotICAgICAgICBd
OwotICAgICAgICB2YXIgY3VycmVudF90ZXN0X2luZGV4ID0gMDsKLQotICAgICAgICBvbl9ldmVu
dChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG9uZSIpLCAiY2xpY2siLCBmdW5jdGlvbigpIHsK
LSAgICAgICAgICB0ZXN0X3BvaW50ZXJfZXZlbnRzW2N1cnJlbnRfdGVzdF9pbmRleF0uc3RlcChm
dW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGFjdGl2ZV9wb2ludGVycywg
MCk7Ci0gICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGV2ZW50X2xvZy5qb2luKCIsICIpLCBleHBl
Y3RlZF9ldmVudHNbY3VycmVudF90ZXN0X2luZGV4XSk7Ci0gICAgICAgICAgfSk7Ci0gICAgICAg
ICAgZXZlbnRfbG9nID0gW107Ci0KLSAgICAgICAgICB0ZXN0X3BvaW50ZXJfZXZlbnRzW2N1cnJl
bnRfdGVzdF9pbmRleCsrXS5kb25lKCk7Ci0gICAgICAgIH0pOwotCi0gICAgICAgIHZhciB0YXJn
ZXRzID0gW2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJibGFjayIpLCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZ3JleSIpXTsKLQotICAgICAgICBbInBvaW50ZXJkb3duIiwgInBvaW50ZXJ1cCIs
ICJwb2ludGVyY2FuY2VsIl0uZm9yRWFjaChmdW5jdGlvbihldmVudE5hbWUpIHsKLSAgICAgICAg
ICB0YXJnZXRzLmZvckVhY2goZnVuY3Rpb24odGFyZ2V0KXsKLSAgICAgICAgICAgIG9uX2V2ZW50
KHRhcmdldCwgZXZlbnROYW1lLCBmdW5jdGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgZXZl
bnRfbG9nLnB1c2goZXZlbnQudHlwZSArICJAIiArIGV2ZW50LnRhcmdldC5pZCk7Ci0KLSAgICAg
ICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT0gInBvaW50ZXJkb3duIikgewotICAgICAgICAgICAg
ICAgIGFjdGl2ZV9wb2ludGVycysrOwotCi0gICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgYWN0aXZlX3BvaW50ZXJzLS07Ci0gICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IH0pOwotICAgICAgICAgIH0pOwotICAgICAgICB9KTsKLSAgICAgIH0KLSAgICA8L3NjcmlwdD4K
LSAgICA8c3R5bGU+Ci0gICAgICAuYm94IHsKLSAgICAgICAgd2lkdGg6IDI1MHB4OwotICAgICAg
ICBoZWlnaHQ6IDE1MHB4OwotICAgICAgICBmbG9hdDogbGVmdDsKLSAgICAgICAgbWFyZ2luOiAx
MHB4OwotICAgICAgfQotCi0gICAgICAjYmxhY2sgewotICAgICAgICB0b3VjaC1hY3Rpb246IHBh
bi14IHBhbi15OwotICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKLSAgICAgIH0KLQot
ICAgICAgI2dyZXkgewotICAgICAgICB0b3VjaC1hY3Rpb246IHBpbmNoLXpvb207Ci0gICAgICAg
IGJhY2tncm91bmQtY29sb3I6IGdyZXk7Ci0gICAgICB9Ci0KLSAgICAgICNkb25lIHsKLSAgICAg
ICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHBhZGRpbmc6IDIwcHg7Ci0gICAgICB9Ci0gICAgPC9z
dHlsZT4KLSAgPC9oZWFkPgotICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICA8aDE+UG9pbnRl
ciBFdmVudDogdG91Y2gtYWN0aW9uIHRlc3QgZm9yIHR3by1maW5nZXIgaW50ZXJhY3Rpb248L2gx
PgotICAgIDxoMiBpZD0icG9pbnRlclR5cGVEZXNjcmlwdGlvbiI+PC9oMj4KLSAgICA8aDQ+Ci0g
ICAgICBUZXN0cyB0aGF0IGEgdHdvLWZpbmdlciBwYW4gZ2VzdHVyZSBpcyBjYW5jZWxsZWQgaW4g
J3RvdWNoLWFjdGlvbjogcGFuLXggcGFuLXknIGJ1dCBpcyBhbGxvd2VkIGluICd0b3VjaC1hY3Rp
b246IHBpbmNoLXpvb20nCi0gICAgPC9oND4KLSAgICA8b2w+Ci0gICAgICA8bGk+VG91Y2ggb24g
QmxhY2sgd2l0aCB0d28gZmluZ2VycyBhbmQgZHJhZyBib3RoIGZpbmdlcnMgZG93biBhdCBzYW1l
IHNwZWVkLjwvbGk+Ci0gICAgICA8bGk+VGFwIG9uIERvbmUuPC9saT4KLSAgICAgIDxsaT5Ub3Vj
aCBvbiBHcmV5IHdpdGggdHdvIGZpbmdlcnMgYW5kIGRyYWcgYm90aCBmaW5nZXJzIGRvd24gYXQg
c2FtZSBzcGVlZC48L2xpPgotICAgICAgPGxpPlRhcCBvbiBEb25lLjwvbGk+Ci0gICAgPC9vbD4K
LSAgICA8ZGl2IGNsYXNzPSJib3giIGlkPSJibGFjayI+PC9kaXY+Ci0gICAgPGlucHV0IHR5cGU9
ImJ1dHRvbiIgaWQ9ImRvbmUiIHZhbHVlPSJEb25lIiAvPgotICAgIDxkaXYgY2xhc3M9ImJveCIg
aWQ9ImdyZXkiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X2NvYWxlc2NlZF9ldmVu
dHNfYXR0cmlidXRlcy1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X2NvYWxl
c2NlZF9ldmVudHNfYXR0cmlidXRlcy1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODkxNDk0NjhhNWQyM2Q0OTRmNmIwOWQ0MTQyYjQzYzhkMWQyMjg5Yy4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50
ZXJldmVudF9jb2FsZXNjZWRfZXZlbnRzX2F0dHJpYnV0ZXMtbWFudWFsLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSwxNDQgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVh
ZD4KLSAgICAgICAgPHRpdGxlPlBvaW50ZXIgRXZlbnRzIGNvYWxlc2NlZCBldmVudHMgY291bnQg
YW5kIHByb3BlcnRpZXM8PC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3BvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Ci0gICAgICAgIDwhLS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24g
Y2hlY2tzIGFjcm9zcyBldmVudCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiIHNyYz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgdmFyIGV2ZW50TGlzdCA9IEFsbF9Qb2ludGVy
X0V2ZW50czsKLSAgICAgICAgICAgIFBoYXNlRW51bSA9IHsKLSAgICAgICAgICAgICAgV2FpdGlu
Z0ZvckNhbmNlbDogICAwLAotICAgICAgICAgICAgICBXYWl0aW5nRm9yT3ZlcjogICAgIDEsCi0g
ICAgICAgICAgICAgIFdhaXRpbmdGb3JFbnRlcjogICAgMiwKLSAgICAgICAgICAgICAgV2FpdGlu
Z0ZvckRvd246ICAgICAzLAotICAgICAgICAgICAgICBXYWl0aW5nRm9yTW92ZTogICAgIDQsCi0g
ICAgICAgICAgICAgIFdhaXRpbmdGb3JVcDogICAgICAgNSwKLSAgICAgICAgICAgICAgV2FpdGlu
Z0Zvck91dDogICAgICA2LAotICAgICAgICAgICAgICBXYWl0aW5nRm9yTGVhdmU6ICAgIDcsCi0g
ICAgICAgICAgICAgIERvbmU6ICAgICAgICAgICAgICAgOCwKLSAgICAgICAgICAgIH07Ci0gICAg
ICAgICAgICB2YXIgcGhhc2UgPSBQaGFzZUVudW0uV2FpdGluZ0ZvckNhbmNlbDsKLQotICAgICAg
ICAgICAgZnVuY3Rpb24gcmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgICAgICAgICAgcGhhc2Ug
PSBQaGFzZUVudW0uV2FpdGluZ0ZvckNhbmNlbDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IGZ1bmN0aW9uIGV4cGVjdF9ub19jb2FsZXNjZWRfZXZlbnRzKGV2ZW50LCBldmVudE5hbWUpIHsK
LSAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyhldmVudC5nZXRDb2FsZXNjZWRFdmVudHMoKS5sZW5ndGgsIDAsIGV2ZW50
TmFtZSArICcgc2hvdWxkIG5vdCBoYXZlIGFueSBjb2FsZXNjZWQgZXZlbnRzJyk7Ci0gICAgICAg
ICAgICAgICAgfSwgZXhwZWN0ZWRQb2ludGVyVHlwZSArICcgJyArIGV2ZW50TmFtZSArICcgc2hv
dWxkIG5vdCBoYXZlIGFueSBjb2FsZXNjZWQgZXZlbnRzJyk7IAotICAgICAgICAgICAgfQotICAg
ICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50
ZXJFdmVudCA9IHNldHVwX3BvaW50ZXJldmVudF90ZXN0KCJjb2FsZXNjZWQgZXZlbnRzIGF0dHJp
YnV0ZXMgaW4gcG9pbnRlcmV2ZW50cyIsIFsndG91Y2gnXSk7Ci0gICAgICAgICAgICAgICAgdmFy
IHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAg
ICAgICAgIHZhciB0YXJnZXQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDEiKTsK
LQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICdwb2ludGVyY2FuY2VsJywgZnVu
Y3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChwaGFzZSA9PSBQaGFzZUVu
dW0uV2FpdGluZ0ZvckNhbmNlbCkgewotICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0X25v
X2NvYWxlc2NlZF9ldmVudHMoZXZlbnQsICdwb2ludGVyY2FuY2VsJyk7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICAgICAgZXZlbnRMaXN0LmZvckVhY2goZnVuY3Rpb24oZXZlbnRO
YW1lKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDEsIGV2ZW50TmFtZSwg
ZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKHBoYXNl
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgUGhhc2VFbnVtLldhaXRpbmdGb3JP
dmVyOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldmVudE5hbWUgPT0gJ3BvaW50
ZXJvdmVyJykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0X25vX2NvYWxl
c2NlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBQ
aGFzZUVudW0uV2FpdGluZ0ZvckVudGVyOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlm
IChldmVudE5hbWUgPT0gJ3BvaW50ZXJlbnRlcicpIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGV4cGVjdF9ub19jb2FsZXNjZWRfZXZlbnRzKGV2ZW50LCBldmVudE5hbWUpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UrKzsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgIGNhc2UgUGhhc2VFbnVtLldhaXRpbmdGb3JEb3duOgotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGlmIChldmVudE5hbWUgPT0gJ3BvaW50ZXJkb3duJykgewotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0X25vX2NvYWxlc2NlZF9ldmVudHMoZXZl
bnQsIGV2ZW50TmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaGFzZSsrOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGp1c3QgYSB3YXkgdG8gYmxv
Y2sgdGhlIG1haW4gdGhyZWFkLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIg
Y3VycmVudCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmb3IgKDsgbmV3IERhdGUoKS5nZXRUaW1lKCkgLSBjdXJyZW50IDwgNTAwOyk7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKTsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgIGNhc2UgUGhhc2VFbnVtLldhaXRpbmdGb3JNb3ZlOgotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGlmIChldmVudE5hbWUgPT0gJ3BvaW50ZXJtb3ZlJykgewotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvYWxlc2NlZEV2ZW50cyA9IGV2ZW50Lmdl
dENvYWxlc2NlZEV2ZW50cygpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAo
ZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVh
dGVyX3RoYW4oZXZlbnQuZ2V0Q29hbGVzY2VkRXZlbnRzKCkubGVuZ3RoLCAxLCAncG9pbnRlcm1v
dmUgc2hvdWxkIGhhdmUgYXQgbGVhc3QgMiBjb2FsZXNjZWQgZXZlbnRzLicpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfSwgZXhwZWN0ZWRQb2ludGVyVHlwZSArICcgcG9pbnRlcm1v
dmUgc2hvdWxkIGhhdmUgPjIgY29hbGVzY2VkIGV2ZW50cyBhcyBtYWluIHRocmVhZCBpcyBidXN5
LicpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAoZnVuY3Rpb24oKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGk9MDsgaTxjb2FsZXNjZWRF
dmVudHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKGNvYWxlc2NlZEV2ZW50c1tpXS5pc1RydXN0ZWQsIHRydWUsICdpc1RydXN0
ZWQgZmxhZyBzaG91bGQgYmUgdHJ1ZSBmb3IgY29hbGVzY2VkIGV2ZW50cy4nKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSA+IDApCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKGNvYWxlc2NlZEV2ZW50
c1tpXS50aW1lU3RhbXAsIGNvYWxlc2NlZEV2ZW50c1tpLTFdLnRpbWVTdGFtcCwgJ1RpbWUgc3Rh
bXBzIG9mIGNvYWxlc2NlZCBldmVudHMgbXVzdCBiZSBhc2NlbmRpbmcuJyk7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0s
IGV4cGVjdGVkUG9pbnRlclR5cGUgKyAnIHBvaW50ZXJtb3ZlIGNvYWxlc2NlZCBldmVudHMgc2hv
dWxkIGFsbCBiZSBtYXJrZWQgYXMgdHJ1c3RlZC4nKTsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3QgKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmb3IgKHZhciBpPTE7IGk8Y29hbGVzY2VkRXZlbnRzLmxlbmd0aDsgaSsrKQotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwoY29hbGVz
Y2VkRXZlbnRzW2ldLnRpbWVTdGFtcCwgY29hbGVzY2VkRXZlbnRzW2ktMV0udGltZVN0YW1wLCAn
VGltZSBzdGFtcHMgb2YgY29hbGVzY2VkIGV2ZW50cyBtdXN0IGJlIGFzY2VuZGluZy4nKTsKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUgKyAnIHRp
bWUgc3RhbXBzIG9mIGNvYWxlc2NlZCBldmVudHMgbXVzdCBiZSBhc2NlbmRpbmcuJyk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0IChmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaT0wOyBpPGNvYWxlc2NlZEV2ZW50cy5sZW5n
dGg7IGkrKykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoY29hbGVzY2VkRXZlbnRzW2ldLmJ1YmJsZXMsIGZhbHNlLCAnQnViYmxlcyBhdHRyaWJ1dGUg
c2hvdWxkIGJlIGZhbHNlIGZvciBjb2FsZXNjZWQgZXZlbnRzLicpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoY29hbGVzY2VkRXZlbnRzW2ldLmNhbmNl
bGFibGUsIGZhbHNlLCAnQ2FuY2VsYWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGZhbHNlIGZvciBj
b2FsZXNjZWQgZXZlbnRzLicpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBleHBlY3RlZFBvaW50ZXJUeXBlICsgJyBw
b2ludGVybW92ZSBjb2FsZXNjZWQgZXZlbnRzIHNob3VsZCBhbGwgYnViYmxlcyBhbmQgY2FuY2Vs
YWJsZSBhcyBmYWxzZS4nKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlKys7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFBoYXNlRW51bS5XYWl0
aW5nRm9yVXA6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50TmFtZSA9PSAn
cG9pbnRlcnVwJykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0X25vX2Nv
YWxlc2NlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fz
ZSBQaGFzZUVudW0uV2FpdGluZ0Zvck91dDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
ZiAoZXZlbnROYW1lID09ICdwb2ludGVyb3V0JykgewotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZXhwZWN0X25vX2NvYWxlc2NlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgY2FzZSBQaGFzZUVudW0uV2FpdGluZ0ZvckxlYXZlOgotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGlmIChldmVudE5hbWUgPT0gJ3BvaW50ZXJsZWF2ZScpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdF9ub19jb2FsZXNjZWRfZXZlbnRzKGV2
ZW50LCBldmVudE5hbWUpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UrKzsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LmRvbmUoKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Q
b2ludGVyIEV2ZW50cyBjb2FsZXNjZWQgZXZlbnRzIGNvdW50IGFuZCBwcm9wZXJ0aWVzPC9oMT4K
LSAgICAgICAgPGgyIGlkPSJwb2ludGVyVHlwZURlc2NyaXB0aW9uIj48L2gyPgotICAgICAgICA8
aDQ+Ci0gICAgICAgICAgICBUZXN0IERlc2NyaXB0aW9uOiBUaGlzIHRlc3QgY2hlY2tzIHRoZSBj
b2FsZXNjZWQgZXZlbnRzIG9mIGFsbCB0eXBlcyBvZiBwb2ludGVyIGV2ZW50cy4KLSAgICAgICAg
ICAgIDxvbD4KLSAgICAgICAgICAgICAgICAgPGxpPlBvaW50ZXIgZG93biBpbiB0aGUgYmxhY2sg
c3F1YXJlIGFuZCBkcmFnIGluc2lkZSB0aGUgYmxhY2sgc3F1YXJlIGltbWVkaWF0ZWx5PC9saT4K
LSAgICAgICAgICAgICAgICAgPGxpPlJlbGVhc2UgdGhlIHBvaW50ZXIuPC9saT4KLSAgICAgICAg
ICAgICAgICAgPGxpPlBvaW50ZXIgZG93biBpbiB0aGUgcHVycGxlIHNxdWFyZSBhbmQgZHJhZyBp
bnNpZGUgdGhlIHB1cnBsZSBzcXVhcmUgaW1tZWRpYXRlbHk8L2xpPgotICAgICAgICAgICAgICAg
ICA8bGk+UmVsZWFzZSB0aGUgcG9pbnRlciBhbmQgbW92ZSBvdXQgb2YgdGhlIHB1cnBsZSBzcXVh
cmU8L2xpPgotICAgICAgICAgICAgPC9vbD4KLQotICAgICAgICAgICAgVGVzdCBwYXNzZXMgaWYg
dGhlIHByb3BlciBiZWhhdmlvciBvZiB0aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAgICA8
L2g0PgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0i
dGFyZ2V0MSIgY2xhc3M9InRvdWNoQWN0aW9uTm9uZSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9
ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIg
dHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48
L3A+Ci0gICAgICAgICAgICA8cD5SZWZyZXNoIHRoZSBwYWdlIHRvIHJ1biB0aGUgdGVzdHMgYWdh
aW4gd2l0aCBhIGRpZmZlcmVudCBwb2ludGVyIHR5cGUuPC9wPgotICAgICAgICA8L2Rpdj4KLSAg
ICA8L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50
X2dldENvYWxlc2NlZEV2ZW50c193aGVuX3BvaW50ZXJsb2NrZWQtbWFudWFsLmh0bWwgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0
ZW5zaW9uL3BvaW50ZXJldmVudF9nZXRDb2FsZXNjZWRFdmVudHNfd2hlbl9wb2ludGVybG9ja2Vk
LW1hbnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2ZWZkZWQ4NWI0NTYy
YmQ5NjBhNGI1ZTU4NGU2ODk4NGExY2U2MzE2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X2dldENvYWxlc2NlZEV2
ZW50c193aGVuX3BvaW50ZXJsb2NrZWQtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2
MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8
dGl0bGU+UG9pbnRlciBFdmVudHMgcG9pbnRlciBsb2NrIHRlc3RzPC90aXRsZT4KLSAgICAgICAg
PG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAg
ICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3BvaW50
ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVz
dGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3BvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4K
LSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICN0ZXN0Q29udGFpbmVyIHsKLSAgICAgICAgICAg
IHRvdWNoLWFjdGlvbjogbm9uZTsKLSAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwotICAg
ICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwotICAgICAgICAgIH0KLSAgICAgICAgPC9zdHls
ZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIHZhciBsb2NrX2NoYW5nZV9jb3VudCA9
IDA7Ci0gICAgICAgICAgICB2YXIgbW91c2VldmVudE1vdmVtZW50cyA9IFtdCi0gICAgICAgICAg
ICB2YXIgcG9pbnRlcmV2ZW50TW92ZW1lbnRzID0gW10KLQotICAgICAgICAgICAgZnVuY3Rpb24g
cmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9u
IHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGVzdF9wb2ludGVyRXZlbnQgPSBzZXR1cF9w
b2ludGVyZXZlbnRfdGVzdCgicG9pbnRlcm1vdmUgZ2V0Q29hbGVzY2VkRXZlbnRzIHdoZW4gbG9j
ayB0ZXN0IiwgWydtb3VzZSddKTsKLSAgICAgICAgICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRp
djEsICdwb2ludGVyZG93bicsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAg
IGRpdjEucmVxdWVzdFBvaW50ZXJMb2NrKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAg
ICAgICAgICAgb25fZXZlbnQoZGl2MSwgJ3BvaW50ZXJtb3ZlJywgZnVuY3Rpb24oZXZlbnQpIHsK
LSAgICAgICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCA9PSBk
aXYxKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1
bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3Ro
YW4oZXZlbnQuZ2V0Q29hbGVzY2VkRXZlbnRzKCkubGVuZ3RoLCAwLCAiZG9jdW1lbnQucG9pbnRl
ckxvY2tFbGVtZW50IHNob3VsZCBoYXZlIGNvYWxlc2NlZCBldmVudHMuIik7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhpdFBvaW50ZXJMb2NrKCk7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuZG9uZSgpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxi
b2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRlck1vdmUgZ2V0Q29hbGVzY2Vk
RXZlbnQgaW4gbG9ja2VkIHN0YXRlIHRlc3Q8L2gxPgotICAgICAgICA8aDIgaWQ9InBvaW50ZXJU
eXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVz
Y3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgaWYgcG9pbnRlcmV2ZW50LmdldENvYWxlc2NlZEV2
ZW50IHdvcmsgY29ycmVjdGx5IHdoZW4gcG9pbnRlciBpcyBsb2NrZWQuCi0gICAgICAgICAgICA8
b2w+Ci0gICAgICAgICAgICAgICAgIDxsaT5QcmVzcyBsZWZ0IGJ1dHRvbiBkb3duIG9uIHRoZSBn
cmVlbiByZWN0YW5nbGUgdG8gbG9jayBwb2ludGVyLjwvbGk+Ci0gICAgICAgICAgICAgICAgIDxs
aT5Nb3ZlIHRoZSBtb3VzZTwvbGk+Ci0gICAgICAgICAgICA8L29sPgotICAgICAgICAgICAgPC9v
bD4KLQotICAgICAgICAgICAgVGVzdCBwYXNzZXMgaWYgdGhlIHByb3BlciBiZWhhdmlvciBvZiB0
aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2IGlkPSJ0
ZXN0Q29udGFpbmVyIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InRhcmdldCIgc3R5bGU9IndpZHRo
OjgwMHB4O2hlaWdodDoyNTBweDtiYWNrZ3JvdW5kOmdyZWVuIj48L2Rpdj4KLSAgICAgICAgPC9k
aXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNwYWNlciI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfZ2V0UHJlZGljdGVkRXZl
bnRzX3doZW5fcG9pbnRlcmxvY2tlZC1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2
ZW50X2dldFByZWRpY3RlZEV2ZW50c193aGVuX3BvaW50ZXJsb2NrZWQtbWFudWFsLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVhZjA4ZDY3NWE0MDNhYWY4YmJmNWEzOWU5NjVh
ZjM5YTE1ZDlkNGUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfZ2V0UHJlZGljdGVkRXZlbnRzX3doZW5fcG9pbnRl
cmxvY2tlZC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDc2ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2
ZW50cyBwb2ludGVyIGxvY2sgdGVzdHM8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3
cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5j
c3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNy
Yz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+
Ci0gICAgICAgICAgI3Rlc3RDb250YWluZXIgewotICAgICAgICAgICAgdG91Y2gtYWN0aW9uOiBu
b25lOwotICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7Ci0gICAgICAgICAgICBwb3NpdGlv
bjogcmVsYXRpdmU7Ci0gICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgICAgICA8c2Ny
aXB0PgotICAgICAgICAgICAgdmFyIGxvY2tfY2hhbmdlX2NvdW50ID0gMDsKLSAgICAgICAgICAg
IHZhciBtb3ZlX2V2ZW50X2NvdW50ID0gMDsKLSAgICAgICAgICAgIHZhciBtb3VzZWV2ZW50TW92
ZW1lbnRzID0gW10KLSAgICAgICAgICAgIHZhciBwb2ludGVyZXZlbnRNb3ZlbWVudHMgPSBbXQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiByZXNldFRlc3RTdGF0ZSgpIHsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0ZXN0
X3BvaW50ZXJFdmVudCA9IHNldHVwX3BvaW50ZXJldmVudF90ZXN0KCJwb2ludGVybW92ZSBnZXRQ
cmVkaWN0ZWRFdmVudHMgd2hlbiBsb2NrIHRlc3QiLCBbJ21vdXNlJ10pOwotICAgICAgICAgICAg
ICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldCIpOwotCi0gICAg
ICAgICAgICAgICAgb25fZXZlbnQoZGl2MSwgJ3BvaW50ZXJkb3duJywgZnVuY3Rpb24oZXZlbnQp
IHsKLSAgICAgICAgICAgICAgICAgICAgZGl2MS5yZXF1ZXN0UG9pbnRlckxvY2soKTsKLSAgICAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudChkaXYxLCAncG9pbnRlcm1v
dmUnLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQu
cG9pbnRlckxvY2tFbGVtZW50ID09IGRpdjEpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaWYgKGV2ZW50LmdldFByZWRpY3RlZEV2ZW50cygpLmxlbmd0aCA+IDApIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGk9MDsgaTxldmVudC5nZXRQcmVk
aWN0ZWRFdmVudHMoKS5sZW5ndGg7IGkrKykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdmFyIHByZWRpY3RlZEV2ZW50ID0gZXZlbnQuZ2V0UHJlZGljdGVkRXZlbnRzKClb
aV07Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVu
dC5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHMocHJlZGljdGVkRXZlbnQucG9pbnRlcklkLCBldmVudC5wb2ludGVy
SWQsICJnZXRQcmVkaWN0ZWRFdmVudHMoKVsiICsgaSArICJdLnBvaW50ZXJJZCIpOwotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocHJlZGljdGVk
RXZlbnQucG9pbnRlclR5cGUsIGV2ZW50LnBvaW50ZXJUeXBlLCAiZ2V0UHJlZGljdGVkRXZlbnRz
KClbIiArIGkgKyAiXS5wb2ludGVyVHlwZSIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocHJlZGljdGVkRXZlbnQudGFyZ2V0LCBkb2N1bWVu
dC5wb2ludGVyTG9ja0VsZW1lbnQsICJnZXRQcmVkaWN0ZWRFdmVudHMoKVsiICsgaSArICJdLnRh
cmdldCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMocHJlZGljdGVkRXZlbnQuY2xpZW50WCwgZXZlbnQuY2xpZW50WCwgImdldFByZWRpY3Rl
ZEV2ZW50cygpWyIgKyBpICsgIl0uY2xpZW50WCIpOwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocHJlZGljdGVkRXZlbnQuY2xpZW50WSwgZXZl
bnQuY2xpZW50WSwgImdldFByZWRpY3RlZEV2ZW50cygpWyIgKyBpICsgIl0uY2xpZW50WSIpOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZXhpdFBvaW50ZXJMb2NrKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RfcG9pbnRlckV2ZW50LmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfbGVzc190aGFuKCsr
bW92ZV9ldmVudF9jb3VudCwgMjAsICJwb2ludGVybW92ZSBoYXZlIG5vIHByZWRpY3RlZCBldmVu
dCBpbiAyMCBtb3ZlcyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAg
ICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRlck1vdmUgZ2V0UHJlZGlj
dGVkRXZlbnQgaW4gbG9ja2VkIHN0YXRlIHRlc3Q8L2gxPgotICAgICAgICA8aDIgaWQ9InBvaW50
ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxoND4KLSAgICAgICAgICAgIFRlc3Qg
RGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgaWYgcG9pbnRlcmV2ZW50LmdldFByZWRpY3Rl
ZEV2ZW50IHdvcmsgY29ycmVjdGx5IHdoZW4gcG9pbnRlciBpcyBsb2NrZWQuCi0gICAgICAgICAg
ICA8b2w+Ci0gICAgICAgICAgICAgICAgIDxsaT5QcmVzcyBsZWZ0IGJ1dHRvbiBkb3duIG9uIHRo
ZSBncmVlbiByZWN0YW5nbGUgdG8gbG9jayBwb2ludGVyLjwvbGk+Ci0gICAgICAgICAgICAgICAg
IDxsaT5Nb3ZlIHRoZSBtb3VzZTwvbGk+Ci0gICAgICAgICAgICA8L29sPgotICAgICAgICAgICAg
PC9vbD4KLQotICAgICAgICAgICAgVGVzdCBwYXNzZXMgaWYgdGhlIHByb3BlciBiZWhhdmlvciBv
ZiB0aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2IGlk
PSJ0ZXN0Q29udGFpbmVyIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InRhcmdldCIgc3R5bGU9Indp
ZHRoOjgwMHB4O2hlaWdodDoyNTBweDtiYWNrZ3JvdW5kOmdyZWVuIj48L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNwYWNlciI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfcG9pbnRlcnJhd21v
dmUtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9wb2ludGVycmF3bW92ZS1t
YW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGM0Y2NmOWFkNDhkNDlj
NjJiM2QxMzg4NDVkZmEzYWM2MzFhOGU0ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9wb2ludGVycmF3bW92ZS1t
YW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1s
PgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5wb2ludGVycmF3bW92ZTwvdGl0
bGU+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Ut
d2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBo
cmVmPSIuLi9wb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8IS0t
IEFkZGl0aW9uYWwgaGVscGVyIHNjcmlwdCBmb3IgY29tbW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQg
dHlwZXMgLS0+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4u
L3BvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJv
ZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMj5wb2ludGVycmF3bW92ZTwvaDI+Ci0gICAg
ICAgIDxoND5UZXN0IERlc2NyaXB0aW9uOiBUaGlzIHRlc3QgY2hlY2tzIGlmIHBvaW50ZXJyYXdt
b3ZlIGlzIGRpc3BhdGNoZWQgY29ycmVjdGx5LiA8L2g0PgotICAgICAgICA8cD5Nb3ZlIHlvdXIg
bW91c2Ugd2l0aGluIHRoZSBibGFjayBib3guPC9wPgotICAgICAgICA8cD5QcmVzcyBsZWZ0IGJ1
dHRvbiBkb3duIGFuZCB0aGVuIHByZXNzIG1pZGRsZSBidXR0b24gd2hpbGUgaG9sZGluZyBkb3du
IGxlZnQgYnV0dG9uLiBUaGVuIHJlbGVhc2UgdGhlIGJ1dHRvbnM8L3A+Ci0gICAgICAgIDxkaXYg
aWQ9InRhcmdldDAiPjwvZGl2PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgdmFyIHRl
c3RfcG9pbnRlcnJhd21vdmUgPSBhc3luY190ZXN0KCJwb2ludGVycmF3bW92ZSBldmVudCByZWNl
aXZlZCIpOwotCi0gICAgICAgICAgICB2YXIgcG9pbnRlcnJhd21vdmVSZWNlaXZlZCA9IGZhbHNl
OwotICAgICAgICAgICAgdmFyIHBvaW50ZXJkb3duUmVjZWl2ZWQgPSBmYWxzZTsKLSAgICAgICAg
ICAgIHZhciBwb2ludGVycmF3bW92ZUZyb21CdXR0b25DaGFuZ2VSZWNlaXZlZCA9IGZhbHNlOwot
Ci0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdl
dDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotCi0gICAgICAgICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJyYXdtb3ZlIiwgZnVuY3Rpb24gKGV2ZW50KSB7
Ci0gICAgICAgICAgICAgICAgICAgIHBvaW50ZXJyYXdtb3ZlUmVjZWl2ZWQgPSB0cnVlOwotICAg
ICAgICAgICAgICAgICAgICBpZiAocG9pbnRlcmRvd25SZWNlaXZlZCAmJiBldmVudC5idXR0b24g
IT0gLTEpCi0gICAgICAgICAgICAgICAgICAgICAgcG9pbnRlcnJhd21vdmVGcm9tQnV0dG9uQ2hh
bmdlUmVjZWl2ZWQgPSB0cnVlOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAg
IG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVybW92ZSIsIGZ1bmN0aW9uIChldmVudCkgewotICAg
ICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJyYXdtb3ZlLnN0ZXAoZnVuY3Rpb24oKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShwb2ludGVycmF3bW92ZVJlY2VpdmVk
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBvaW50ZXJyYXdtb3ZlIGV2
ZW50IHNob3VsZCBoYXZlIGJlZW4gcmVjZWl2ZWQgYmVmb3JlIHBvaW50ZXJtb3ZlLiIpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgfSwgIlBvaW50ZXJyYXdtb3ZlIGV2ZW50IHNob3VsZCBoYXZl
IGJlZW4gcmVjZWl2ZWQgYmVmb3JlIHBvaW50ZXJtb3ZlLiIpOwotICAgICAgICAgICAgICAgIH0p
OwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVyZG93biIsIGZ1bmN0
aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBwb2ludGVyZG93blJlY2VpdmVkID0g
dHJ1ZTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJn
ZXQwLCAicG9pbnRlcnVwIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAg
IHRlc3RfcG9pbnRlcnJhd21vdmUuc3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF90cnVlKHBvaW50ZXJyYXdtb3ZlRnJvbUJ1dHRvbkNoYW5nZVJlY2VpdmVk
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBvaW50ZXJyYXdtb3ZlIGV2
ZW50IHNob3VsZCBoYXZlIGJlZW4gcmVjZWl2ZWQgZnJvbSBjaG9yZGVkIGJ1dHRvbiBjaGFuZ2Vz
LiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSwgIlBvaW50ZXJyYXdtb3ZlIGV2ZW50IHNo
b3VsZCBoYXZlIGJlZW4gcmVjZWl2ZWQgZnJvbSBjaG9yZGVkIGJ1dHRvbiBjaGFuZ2VzLiIpOwot
ICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJyYXdtb3ZlLmRvbmUoKTsKLSAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAg
PGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfcG9pbnRlcnJhd21v
dmVfaW5fcG9pbnRlcmxvY2stbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9w
b2ludGVycmF3bW92ZV9pbl9wb2ludGVybG9jay1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOTcwMzU1ODYzYmI3ZDZhZmZiMGI1MDI4OWFmNzViOThjZmNjYmI1Ny4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9u
L3BvaW50ZXJldmVudF9wb2ludGVycmF3bW92ZV9pbl9wb2ludGVybG9jay1tYW51YWwuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDg4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5wb2ludGVycmF3bW92ZTwvdGl0bGU+Ci0gICAgICAg
IDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgotICAg
ICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9wb2lu
dGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8IS0tIEFkZGl0aW9uYWwg
aGVscGVyIHNjcmlwdCBmb3IgY29tbW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQgdHlwZXMgLS0+Ci0g
ICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3BvaW50ZXJldmVu
dF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJy
dW4oKSI+Ci0gICAgICAgIDxoMj5wb2ludGVycmF3bW92ZTwvaDI+Ci0gICAgICAgIDxoND5UZXN0
IERlc2NyaXB0aW9uOiBUaGlzIHRlc3QgY2hlY2tzIGlmIHBvaW50ZXJyYXdtb3ZlIGlzIGRpc3Bh
dGNoZWQgY29ycmVjdGx5IHdoaWxlIGluIHBvaW50ZXJsb2NrIG1vZGUuCi0gICAgICAgICAgICA8
b2w+Ci0gICAgICAgICAgICAgICAgPGxpPkNsaWNrIGluIHRoZSBibGFjayBib3ggKGFuZCBhY2Nl
cHQgdGhlIHBvaW50ZXJsb2NrIHBlcm1pc3Npb24gaWYgYXNrZWQpLjwvbGk+Ci0gICAgICAgICAg
ICAgICAgPGxpPk1vdmUgeW91ciBtb3VzZS48L2xpPgotICAgICAgICAgICAgICAgIDxsaT5DbGlj
ayBpbiB0aGUgcHVycGxlIGJveCBpbnNpZGUgdGhlIGlmcmFtZTwvbGk+Ci0gICAgICAgICAgICAg
ICAgPGxpPk1vdmUgeW91ciBtb3VzZS48L2xpPgotICAgICAgICAgICAgPC9vbD4KLSAgICAgICAg
PC9oND4KLSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MCI+PC9kaXY+Ci0gICAgICAgIDxpZnJhbWUg
aWQ9ImlubmVyZnJhbWUiIHNyYz0iLi4vcmVzb3VyY2VzL3BvaW50ZXJldmVudF9wb2ludGVycmF3
bW92ZV9pbl9wb2ludGVybG9jay1pZnJhbWUuaHRtbCI+PC9pZnJhbWU+Ci0gICAgICAgIDxzY3Jp
cHQ+Ci0gICAgICAgICAgICB3aW5kb3cubmFtZT0ib3V0ZXJmcmFtZSI7Ci0gICAgICAgICAgICB2
YXIgdGVzdF9wb2ludGVycmF3bW92ZSA9IGFzeW5jX3Rlc3QoInBvaW50ZXJyYXdtb3ZlIGV2ZW50
IHJlY2VpdmVkIik7Ci0KLSAgICAgICAgICAgIHZhciBvdXRlcmZyYW1lX3BvaW50ZXJyYXdtb3Zl
UmVjZWl2ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciBpbm5lcmZyYW1lX3BvaW50ZXJyYXdt
b3ZlUmVjZWl2ZWQgPSBmYWxzZTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAg
ICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdl
dDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgaW5uZXJmcmFtZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdpbm5lcmZyYW1lJyk7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDEgPSBpbm5l
cmZyYW1lLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGFyZ2V0MScpOwotICAgICAg
ICAgICAgICAgIGlubmVyZnJhbWUuY29udGVudFdpbmRvdy5uYW1lID0gImlubmVyZnJhbWUiOwot
Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQoZG9jdW1lbnQsICJwb2ludGVybG9ja2NoYW5nZSIs
IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQucG9pbnRl
ckxvY2tFbGVtZW50ID09IHRhcmdldDApIHsKLSAgICAgICAgICAgICAgICAgICAgb25fZXZlbnQo
dGFyZ2V0MCwgInBvaW50ZXJyYXdtb3ZlIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgb3V0ZXJmcmFtZV9wb2ludGVycmF3bW92ZVJlY2VpdmVkID0gdHJ1ZTsKLSAg
ICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJyYXdtb3ZlLnN0ZXAoZnVuY3Rpb24oKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGV2ZW50LnZpZXcubmFtZSwg
Im91dGVyZnJhbWUiLCAiVmlldyBhdHRyaWJ1dGUgb2YgcG9pbnRlcnJhd21vdmUgc2hvdWxkIGJl
IHRoZSB0YXJnZXQgZnJhbWUuIik7Ci0gICAgICAgICAgICAgICAgICAgICAgfSwgIlZpZXcgYXR0
cmlidXRlIG9mIHBvaW50ZXJyYXdtb3ZlIHNob3VsZCBiZSB0aGUgdGFyZ2V0IGZyYW1lLiIpOwot
ICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgb25fZXZlbnQodGFy
Z2V0MCwgInBvaW50ZXJtb3ZlIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgdGVzdF9wb2ludGVycmF3bW92ZS5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X3RydWUob3V0ZXJmcmFtZV9wb2ludGVycmF3bW92ZVJlY2VpdmVk
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBvaW50ZXJyYXdtb3ZlIGV2
ZW50IHNob3VsZCBoYXZlIGJlZW4gcmVjZWl2ZWQgYmVmb3JlIHBvaW50ZXJtb3ZlIHdoaWxlIGlu
IHBvaW50ZXJsb2NrIG1vZGUuIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGV2ZW50LnZpZXcubmFtZSwgIm91dGVyZnJhbWUiLCAiVmlldyBhdHRyaWJ1dGUgb2YgcG9p
bnRlcnJhd21vdmUgc2hvdWxkIGJlIHRoZSB0YXJnZXQgZnJhbWUuIik7Ci0gICAgICAgICAgICAg
ICAgICAgICAgfSwgIlBvaW50ZXJyYXdtb3ZlIGV2ZW50IHNob3VsZCBoYXZlIGJlZW4gcmVjZWl2
ZWQgYmVmb3JlIHBvaW50ZXJtb3ZlIHdoaWxlIGluIHBvaW50ZXJsb2NrIG1vZGUuIik7Ci0gICAg
ICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhpdFBvaW50ZXJMb2NrKCk7Ci0KLSAgICAgICAg
ICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQxLCAiY2xpY2siLCBmdW5jdGlvbihldmVudCkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0MS5yZXF1ZXN0UG9pbnRlckxvY2soKTsK
LSAgICAgICAgICAgICAgICAgICAgICB9KTsKLQotICAgICAgICAgICAgICAgICAgICAgIG9uX2V2
ZW50KGlubmVyZnJhbWUuY29udGVudERvY3VtZW50LCAicG9pbnRlcmxvY2tjaGFuZ2UiLCBmdW5j
dGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlubmVyZnJhbWUuY29u
dGVudERvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCA9PSB0YXJnZXQxKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDEsICJwb2ludGVycmF3bW92ZSIsIGZ1bmN0
aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlubmVyZnJhbWVfcG9p
bnRlcnJhd21vdmVSZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGVzdF9wb2ludGVycmF3bW92ZS5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC52aWV3Lm5hbWUsICJpbm5lcmZyYW1lIiwg
IlZpZXcgYXR0cmlidXRlIG9mIHBvaW50ZXJyYXdtb3ZlIHNob3VsZCBiZSB0aGUgdGFyZ2V0IGZy
YW1lLiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sICJWaWV3IGF0dHJpYnV0ZSBv
ZiBwb2ludGVycmF3bW92ZSBzaG91bGQgYmUgdGhlIHRhcmdldCBmcmFtZS4iKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50
KHRhcmdldDEsICJwb2ludGVybW92ZSIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlcnJhd21vdmUuc3RlcChmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGlubmVyZnJhbWVfcG9pbnRl
cnJhd21vdmVSZWNlaXZlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQ
b2ludGVycmF3bW92ZSBldmVudCBzaG91bGQgaGF2ZSBiZWVuIHJlY2VpdmVkIGJlZm9yZSBwb2lu
dGVybW92ZSB3aGlsZSBpbiBwb2ludGVybG9jayBtb2RlLiIpOwotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIH0sICJQb2ludGVycmF3bW92ZSBldmVudCBzaG91bGQgaGF2ZSBiZWVuIHJlY2Vp
dmVkIGJlZm9yZSBwb2ludGVybW92ZSB3aGlsZSBpbiBwb2ludGVybG9jayBtb2RlLiIpOwotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGlubmVyZnJhbWUuY29udGVudERvY3VtZW50LmV4aXRQ
b2ludGVyTG9jaygpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlcnJh
d21vdmUuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICB9KTsKLQotICAgICAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9KTsKLSAg
ICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAiY2xpY2siLCBmdW5jdGlvbihldmVudCkg
ewotICAgICAgICAgICAgICAgICAgdGFyZ2V0MC5yZXF1ZXN0UG9pbnRlckxvY2soKTsKLSAgICAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICA8L3NjcmlwdD4KLSAgICAg
ICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfcHJlZGljdGVk
X2V2ZW50c19hdHRyaWJ1dGVzLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRf
cHJlZGljdGVkX2V2ZW50c19hdHRyaWJ1dGVzLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyMjBhNGI4Mjg1MDU5OGM0MDQ2OTllNGNmMWExYzVhMTA3MzhiMTM3Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24v
cG9pbnRlcmV2ZW50X3ByZWRpY3RlZF9ldmVudHNfYXR0cmlidXRlcy1tYW51YWwuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDE0OSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAg
IDxoZWFkPgotICAgICAgICA8dGl0bGU+UG9pbnRlciBFdmVudHMgcHJlZGljdGVkIGV2ZW50cyBj
b3VudCBhbmQgcHJvcGVydGllczw8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9y
dCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3Mi
PgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0Lmpz
Ij48L3NjcmlwdD4KLSAgICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNv
bW1vbiBjaGVja3MgYWNyb3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9wb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgZXZlbnRMaXN0ID0gQWxsX1Bv
aW50ZXJfRXZlbnRzOwotICAgICAgICAgICAgUGhhc2VFbnVtID0gewotICAgICAgICAgICAgICBX
YWl0aW5nRm9yQ2FuY2VsOiAgIDAsCi0gICAgICAgICAgICAgIFdhaXRpbmdGb3JPdmVyOiAgICAg
MSwKLSAgICAgICAgICAgICAgV2FpdGluZ0ZvckVudGVyOiAgICAyLAotICAgICAgICAgICAgICBX
YWl0aW5nRm9yRG93bjogICAgIDMsCi0gICAgICAgICAgICAgIFdhaXRpbmdGb3JNb3ZlOiAgICAg
NCwKLSAgICAgICAgICAgICAgV2FpdGluZ0ZvclVwOiAgICAgICA1LAotICAgICAgICAgICAgICBX
YWl0aW5nRm9yT3V0OiAgICAgIDYsCi0gICAgICAgICAgICAgIFdhaXRpbmdGb3JMZWF2ZTogICAg
NywKLSAgICAgICAgICAgICAgRG9uZTogICAgICAgICAgICAgICA4LAotICAgICAgICAgICAgfTsK
LSAgICAgICAgICAgIHZhciBwaGFzZSA9IFBoYXNlRW51bS5XYWl0aW5nRm9yQ2FuY2VsOwotICAg
ICAgICAgICAgdmFyIG1vdmVfZXZlbnRfY291bnQgPSAwOwotCi0gICAgICAgICAgICBmdW5jdGlv
biByZXNldFRlc3RTdGF0ZSgpIHsKLSAgICAgICAgICAgICAgICBwaGFzZSA9IFBoYXNlRW51bS5X
YWl0aW5nRm9yQ2FuY2VsOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZnVuY3Rpb24gZXhw
ZWN0X25vX3ByZWRpY3RlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSkgewotICAgICAgICAgICAg
ICAgIHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxz
KGV2ZW50LmdldFByZWRpY3RlZEV2ZW50cygpLmxlbmd0aCwgMCwgZXZlbnROYW1lICsgJyBzaG91
bGQgbm90IGhhdmUgYW55IHByZWRpY3RlZCBldmVudHMnKTsKLSAgICAgICAgICAgICAgICB9LCBl
eHBlY3RlZFBvaW50ZXJUeXBlICsgJyAnICsgZXZlbnROYW1lICsgJyBzaG91bGQgbm90IGhhdmUg
YW55IHByZWRpY3RlZCBldmVudHMnKTsgCi0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBmdW5j
dGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRlc3RfcG9pbnRlckV2ZW50ID0gc2V0
dXBfcG9pbnRlcmV2ZW50X3Rlc3QoInByZWRpY3RlZCBldmVudHMgYXR0cmlidXRlcyBpbiBwb2lu
dGVyZXZlbnRzIiwgWyd0b3VjaCddKTsKLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAgICAgdmFyIHRh
cmdldDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MSIpOwotCi0gICAgICAgICAg
ICAgICAgb25fZXZlbnQodGFyZ2V0MCwgJ3BvaW50ZXJjYW5jZWwnLCBmdW5jdGlvbiAoZXZlbnQp
IHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKHBoYXNlID09IFBoYXNlRW51bS5XYWl0aW5nRm9y
Q2FuY2VsKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBleHBlY3Rfbm9fcHJlZGljdGVkX2V2
ZW50cyhldmVudCwgJ3BvaW50ZXJjYW5jZWwnKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHBo
YXNlKys7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgICAgICBldmVudExpc3QuZm9yRWFjaChmdW5jdGlvbihldmVudE5hbWUpIHsKLSAgICAg
ICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MSwgZXZlbnROYW1lLCBmdW5jdGlvbiAoZXZl
bnQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAocGhhc2UpIHsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgY2FzZSBQaGFzZUVudW0uV2FpdGluZ0Zvck92ZXI6Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50TmFtZSA9PSAncG9pbnRlcm92ZXInKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3Rfbm9fcHJlZGljdGVkX2V2ZW50cyhl
dmVudCwgZXZlbnROYW1lKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlKys7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFBoYXNlRW51bS5XYWl0
aW5nRm9yRW50ZXI6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50TmFtZSA9
PSAncG9pbnRlcmVudGVyJykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0
X25vX3ByZWRpY3RlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgY2FzZSBQaGFzZUVudW0uV2FpdGluZ0ZvckRvd246Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaWYgKGV2ZW50TmFtZSA9PSAncG9pbnRlcmRvd24nKSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBleHBlY3Rfbm9fcHJlZGljdGVkX2V2ZW50cyhldmVudCwgZXZlbnROYW1l
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlKys7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8vIFRoaXMgaXMganVzdCBhIHdheSB0byBibG9jayB0aGUgbWFpbiB0
aHJlYWQuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjdXJyZW50ID0gbmV3
IERhdGUoKS5nZXRUaW1lKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAo
OyBuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIGN1cnJlbnQgPCA1MDA7KTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0sIDApOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgY2FzZSBQaGFzZUVudW0uV2FpdGluZ0Zvck1vdmU6Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaWYgKGV2ZW50TmFtZSA9PSAncG9pbnRlcm1vdmUnKSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoZXZlbnQuZ2V0UHJlZGljdGVkRXZlbnRzKCkubGVuZ3RoID4gMCkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcHJlZGljdGVkRXZlbnRzID0g
ZXZlbnQuZ2V0UHJlZGljdGVkRXZlbnRzKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHRlc3QgKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZvciAodmFyIGk9MDsgaTxwcmVkaWN0ZWRFdmVudHMubGVuZ3RoOyBpKyspIHsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocHJlZGljdGVkRXZlbnRz
W2ldLmlzVHJ1c3RlZCwgdHJ1ZSwgJ2lzVHJ1c3RlZCBmbGFnIHNob3VsZCBiZSB0cnVlIGZvciBw
cmVkaWN0ZWQgZXZlbnRzLicpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aWYgKGkgPiAwKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
Z3JlYXRlcl90aGFuX2VxdWFsKHByZWRpY3RlZEV2ZW50c1tpXS50aW1lU3RhbXAsIHByZWRpY3Rl
ZEV2ZW50c1tpLTFdLnRpbWVTdGFtcCwgJ1RpbWUgc3RhbXBzIG9mIHByZWRpY3RlZCBldmVudHMg
bXVzdCBiZSBhc2NlbmRpbmcuJyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBleHBlY3RlZFBvaW50ZXJUeXBl
ICsgJyBwb2ludGVybW92ZSBwcmVkaWN0ZWQgZXZlbnRzIHNob3VsZCBhbGwgYmUgbWFya2VkIGFz
IHRydXN0ZWQuJyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgKGZ1bmN0
aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGk9MTsg
aTxwcmVkaWN0ZWRFdmVudHMubGVuZ3RoOyBpKyspCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfZ3JlYXRlcl90aGFuX2VxdWFsKHByZWRpY3RlZEV2ZW50c1tpXS50
aW1lU3RhbXAsIHByZWRpY3RlZEV2ZW50c1tpLTFdLnRpbWVTdGFtcCwgJ1RpbWUgc3RhbXBzIG9m
IHByZWRpY3RlZCBldmVudHMgbXVzdCBiZSBhc2NlbmRpbmcuJyk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUgKyAnIHRpbWUgc3RhbXBzIG9m
IHByZWRpY3RlZCBldmVudHMgbXVzdCBiZSBhc2NlbmRpbmcuJyk7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRlc3QgKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGZvciAodmFyIGk9MDsgaTxwcmVkaWN0ZWRFdmVudHMubGVuZ3RoOyBpKysp
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMocHJl
ZGljdGVkRXZlbnRzW2ldLmJ1YmJsZXMsIGZhbHNlLCAnQnViYmxlcyBhdHRyaWJ1dGUgc2hvdWxk
IGJlIGZhbHNlIGZvciBwcmVkaWN0ZWQgZXZlbnRzLicpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhwcmVkaWN0ZWRFdmVudHNbaV0uY2FuY2VsYWJs
ZSwgZmFsc2UsICdDYW5jZWxhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgZmFsc2UgZm9yIHByZWRp
Y3RlZCBldmVudHMuJyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBleHBlY3RlZFBvaW50ZXJUeXBlICsgJyBw
b2ludGVybW92ZSBwcmVkaWN0ZWQgZXZlbnRzIHNob3VsZCBhbGwgYnViYmxlcyBhbmQgY2FuY2Vs
YWJsZSBhcyBmYWxzZS4nKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2Ur
KzsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9sZXNzX3RoYW4obW92ZV9ldmVudF9jb3VudCsrLCAy
MCwgInBvaW50ZXJtb3ZlIGhhdmUgbm8gcHJlZGljdGVkIGV2ZW50IGluIDIwIG1vdmVzIikKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgIGNhc2UgUGhhc2VFbnVtLldhaXRpbmdGb3JVcDoKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpZiAoZXZlbnROYW1lID09ICdwb2ludGVydXAnKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBleHBlY3Rfbm9fcHJlZGljdGVkX2V2ZW50cyhldmVudCwgZXZlbnRO
YW1lKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNlKys7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFBoYXNlRW51bS5XYWl0aW5nRm9yT3V0Ogot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldmVudE5hbWUgPT0gJ3BvaW50ZXJvdXQn
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3Rfbm9fcHJlZGljdGVkX2V2
ZW50cyhldmVudCwgZXZlbnROYW1lKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBo
YXNlKys7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFBoYXNlRW51
bS5XYWl0aW5nRm9yTGVhdmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50
TmFtZSA9PSAncG9pbnRlcmxlYXZlJykgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZXhwZWN0X25vX3ByZWRpY3RlZF9ldmVudHMoZXZlbnQsIGV2ZW50TmFtZSk7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBwaGFzZSsrOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdCAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKGZhbHNlKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5kb25lKCk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJy
ZWFrOwotICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICB9KTsK
LSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0g
ICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRl
ciBFdmVudHMgcHJlZGljdGVkIGV2ZW50cyBjb3VudCBhbmQgcHJvcGVydGllczwvaDE+Ci0gICAg
ICAgIDxoMiBpZD0icG9pbnRlclR5cGVEZXNjcmlwdGlvbiI+PC9oMj4KLSAgICAgICAgPGg0Pgot
ICAgICAgICAgICAgVGVzdCBEZXNjcmlwdGlvbjogVGhpcyB0ZXN0IGNoZWNrcyB0aGUgcHJlZGlj
dGVkIGV2ZW50cyBvZiBhbGwgdHlwZXMgb2YgcG9pbnRlciBldmVudHMuCi0gICAgICAgICAgICA8
b2w+Ci0gICAgICAgICAgICAgICAgIDxsaT5Qb2ludGVyIGRvd24gaW4gdGhlIGJsYWNrIHNxdWFy
ZSBhbmQgZHJhZyBpbnNpZGUgdGhlIGJsYWNrIHNxdWFyZSBpbW1lZGlhdGVseTwvbGk+Ci0gICAg
ICAgICAgICAgICAgIDxsaT5SZWxlYXNlIHRoZSBwb2ludGVyLjwvbGk+Ci0gICAgICAgICAgICAg
ICAgIDxsaT5Qb2ludGVyIGRvd24gaW4gdGhlIHB1cnBsZSBzcXVhcmUgYW5kIGRyYWcgaW5zaWRl
IHRoZSBwdXJwbGUgc3F1YXJlIGltbWVkaWF0ZWx5PC9saT4KLSAgICAgICAgICAgICAgICAgPGxp
PlJlbGVhc2UgdGhlIHBvaW50ZXIgYW5kIG1vdmUgb3V0IG9mIHRoZSBwdXJwbGUgc3F1YXJlPC9s
aT4KLSAgICAgICAgICAgIDwvb2w+Ci0KLSAgICAgICAgICAgIFRlc3QgcGFzc2VzIGlmIHRoZSBw
cm9wZXIgYmVoYXZpb3Igb2YgdGhlIGV2ZW50cyBpcyBvYnNlcnZlZC4KLSAgICAgICAgPC9oND4K
LSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdl
dDEiIGNsYXNzPSJ0b3VjaEFjdGlvbk5vbmUiPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb21w
bGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5cGVz
IHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgot
ICAgICAgICAgICAgPHA+UmVmcmVzaCB0aGUgcGFnZSB0byBydW4gdGhlIHRlc3RzIGFnYWluIHdp
dGggYSBkaWZmZXJlbnQgcG9pbnRlciB0eXBlLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9i
b2R5PgotPC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF90b3Vj
aC1hY3Rpb24tcGFuLWRvd24tY3NzX3RvdWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2lu
dGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi1kb3duLWNzc190b3VjaC1tYW51YWwuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTkyMTM5ZjlmNDFhYmIyYTNmZTZiZjFiOTlhZjg3
ZDFjNWU2NTFmMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLWRvd24tY3NzX3RvdWNo
LW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTE0ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT50b3VjaC1hY3Rpb246IHBh
bi1kb3duPC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1
LjQgLSBXaXRoIGB0b3VjaC1hY3Rpb246IHBhbi1kb3duYCBvbiBhIHN3aXBlZCBvciBjbGljay9k
cmFnZ2VkIGVsZW1lbnQsIG9ubHkgcGFubmluZyBpbiB0aGUgeS1heGlzIGRvd24gZGlyZWN0aW9u
IHNob3VsZCBiZSBwb3NzaWJsZS4iPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3BvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48
L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI3RhcmdldDAgewotICAgICAg
ICAgICAgd2lkdGg6IDcwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA0MzBweDsKLSAgICAgICAg
ICAgIHRvdWNoLWFjdGlvbjogcGFuLWRvd247Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5
bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+
UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAg
ICAgPGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQg
VVAgKGRyYWcgZG93biksIHRoZW4gUklHSFQgKGRyYWcgbGVmdCksIHRoZW4gRE9XTiAoZHJhZyB1
cCkuIFRhcCBDb21wbGV0ZSBidXR0b24gdW5kZXIgdGhlIHJlY3RhbmdsZSB3aGVuIGRvbmUuIEV4
cGVjdGVkOiBvbmx5IHBhbnMgaW4gZG93biBkaXJlY3Rpb24uPC9oND4KLSAgICAgICAgPHA+Tm90
ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaC1kZXZpY2VzIG9ubHk8L3A+Ci0gICAgICAgIDxkaXYg
aWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVt
Ci0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3Jl
ZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBV
dCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24g
dWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFs
aXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAg
ICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWdu
YSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBh
ZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1
c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNv
bW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0
dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251bW15IG5p
YmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0
IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFt
LCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAg
ICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVh
dC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAg
ICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5n
IGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGlu
Y2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAg
ICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVk
IGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2Jv
cnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAg
ICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxpbnB1dCB0eXBlPSJidXR0
b24iIGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNvbXBsZXRlIHRlc3QiPgotICAgICAgICA8c2Ny
aXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9p
bnRlcnR5cGVzID0ge307Ci0gICAgICAgICAgICB2YXIgdGVzdF90b3VjaGFjdGlvbiA9IGFzeW5j
X3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCIpOwotICAgICAgICAgICAgYWRkX2Nv
bXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50ZXJUeXBlcyk7Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAgICAgdmFyIGJ0bkNvbXBsZXRlID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0bkNvbXBsZXRlIik7Ci0gICAgICAgICAgICAgICAg
dGFyZ2V0MC5zY3JvbGxUb3AgPSAyMDA7Ci0KLSAgICAgICAgICAgICAgICB2YXIgc2Nyb2xsTGlz
dGVuZXJFeGVjdXRlZCA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHRhcmdldDAuYWRkRXZlbnRM
aXN0ZW5lcigic2Nyb2xsIiwgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAg
c2Nyb2xsTGlzdGVuZXJFeGVjdXRlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9ncmVhdGVyX3RoYW5fZXF1YWwodGFyZ2V0MC5zY3JvbGxUb3AsIDIwMCk7Ci0gICAgICAgICAg
ICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiAidG91Y2gtYWN0aW9uOiBw
YW4tZG93biIgYXR0cmlidXRlIHdvcmtzIHByb3Blcmx5Ci0gICAgICAgICAgICAgICAgLy9UQTog
MTUuNAotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAnY2xpY2snLCBmdW5j
dGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlwZXNb
ZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3Vj
aGFjdGlvbi5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X3RydWUoc2Nyb2xsTGlzdGVuZXJFeGVjdXRlZCwgInNjcm9sbCBsaXN0ZW5lciBzaG91bGQgaGF2
ZSBiZWVuIGV4ZWN1dGVkIGJ5IHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxMZWZ0LCAwLCAic2Nyb2xsIHgg
b2Zmc2V0IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW4odGFyZ2V0MC5zY3JvbGxUb3AsIDIwMCwg
InNjcm9sbCB5IG9mZnNldCBzaG91bGQgYmUgZ3JlYXRlciB0aGFuIDIwMCBpbiB0aGUgZW5kIG9m
IHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAg
ICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlRGVz
Y3JpcHRpb25Db21wbGV0ZSgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQot
ICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPGgxPnRvdWNoLWFjdGlvbjogcGFuLWRvd248L2gx
PgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhl
IGZvbGxvd2luZyBwb2ludGVyIHR5cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVy
dHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0i
bG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9u
L3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLWxlZnQtY3NzX3RvdWNoLW1hbnVhbC5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi1sZWZ0LWNzc190b3Vj
aC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzAzMGQ1ZTQ4N2Nl
M2NiZjk0YTJkNzAwNDU2MmI1MThhZjU2ZjhmMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24t
cGFuLWxlZnQtY3NzX3RvdWNoLW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTE0ICsw
LDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRs
ZT50b3VjaC1hY3Rpb246IHBhbi1sZWZ0PC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0iYXNz
ZXJ0IiBjb250ZW50PSJUQTE1LjMgLSBXaXRoIGB0b3VjaC1hY3Rpb246IHBhbi1sZWZ0YCBvbiBh
IHN3aXBlZCBvciBjbGljay9kcmFnZ2VkIGVsZW1lbnQsIG9ubHkgcGFubmluZyBvbiB0aGUgeC1h
eGlzIGxlZnQgZGlyZWN0aW9uIHNob3VsZCBiZSBwb3NzaWJsZS4iPgotICAgICAgICA8bWV0YSBu
YW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50
X3N0eWxlcy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
cy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3BvaW50ZXJl
dmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAg
I3RhcmdldDAgewotICAgICAgICAgICAgd2lkdGg6IDcwMHB4OwotICAgICAgICAgICAgaGVpZ2h0
OiA0MzBweDsKLSAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLWxlZnQ7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVu
KCkiPgotICAgICAgICA8aDE+UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBz
dXBwb3J0PC9oMT4KLSAgICAgICAgPGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkg
dG8gc2Nyb2xsIGVsZW1lbnQgRE9XTiAoZHJhZyB1cCksIHRoZW4gUklHSFQgKGRyYWcgbGVmdCks
IHRoZW4gTEVGVCAoZHJhZyByaWdodCkuIFRhcCBDb21wbGV0ZSBidXR0b24gdW5kZXIgdGhlIHJl
Y3RhbmdsZSB3aGVuIGRvbmUuIEV4cGVjdGVkOiBvbmx5IHBhbnMgaW4gbGVmdCBkaXJlY3Rpb24u
PC9oND4KLSAgICAgICAgPHA+Tm90ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaC1kZXZpY2VzIG9u
bHk8L3A+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPHA+Ci0gICAg
ICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlw
aXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNt
b2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBh
dC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBu
b3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAg
ICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAg
ICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBz
ZWQgZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1
dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAg
ICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kg
dHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlz
bCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAg
ICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xv
cmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lz
IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNv
cnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBl
eCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNv
bnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9u
dW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1
YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmlt
IHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQK
LSAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBj
b25zZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAg
ICAgIDxpbnB1dCB0eXBlPSJidXR0b24iIGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNvbXBsZXRl
IHRlc3QiPgotICAgICAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+Ci0gICAgICAg
ICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0ge307Ci0gICAgICAgICAgICB2YXIgdGVz
dF90b3VjaGFjdGlvbiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCIp
OwotICAgICAgICAgICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50ZXJUeXBlcyk7
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFy
Z2V0MCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAg
ICAgdmFyIGJ0bkNvbXBsZXRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0bkNvbXBsZXRl
Iik7Ci0gICAgICAgICAgICAgICAgdGFyZ2V0MC5zY3JvbGxMZWZ0ID0gMjAwOwotCi0gICAgICAg
ICAgICAgICAgdmFyIHNjcm9sbExpc3RlbmVyRXhlY3V0ZWQgPSBmYWxzZTsKLSAgICAgICAgICAg
ICAgICB0YXJnZXQwLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIGZ1bmN0aW9uKGV2ZW50KSB7
Ci0gICAgICAgICAgICAgICAgICAgIHNjcm9sbExpc3RlbmVyRXhlY3V0ZWQgPSB0cnVlOwotICAg
ICAgICAgICAgICAgICAgICBhc3NlcnRfbGVzc190aGFuX2VxdWFsKHRhcmdldDAuc2Nyb2xsTGVm
dCwgMjAwKTsKLSAgICAgICAgICAgICAgICB9KTsKLQotICAgICAgICAgICAgICAgIC8vIENoZWNr
IGlmICJ0b3VjaC1hY3Rpb246IHBhbi1sZWZ0IiBhdHRyaWJ1dGUgd29ya3MgcHJvcGVybHkKLSAg
ICAgICAgICAgICAgICAvL1RBOiAxNS4zCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoYnRuQ29t
cGxldGUsICdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGRl
dGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwotICAgICAgICAg
ICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShzY3JvbGxMaXN0ZW5lckV4ZWN1dGVkLCAic2Nyb2xs
IGxpc3RlbmVyIHNob3VsZCBoYXZlIGJlZW4gZXhlY3V0ZWQgYnkgdGhlIGVuZCBvZiB0aGUgdGVz
dCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2xlc3NfdGhhbih0YXJnZXQwLnNj
cm9sbExlZnQsIDIwMCwgInNjcm9sbCB4IG9mZnNldCBzaG91bGQgYmUgbGVzcyB0aGFuIDIwMCBp
biB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKHRhcmdldDAuc2Nyb2xsVG9wLCAwLCAic2Nyb2xsIHkgb2Zmc2V0IHNob3VsZCBiZSAw
IGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAg
ICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24uZG9uZSgpOwotICAgICAgICAgICAgICAg
ICAgICB1cGRhdGVEZXNjcmlwdGlvbkNvbXBsZXRlKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8aDE+dG91Y2gtYWN0aW9u
OiBwYW4tbGVmdDwvaDE+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAg
ICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNw
YW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICAgIDwvZGl2PgotICAg
ICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2
ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1wYW4tcmlnaHQtY3NzX3Rv
dWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBh
bi1yaWdodC1jc3NfdG91Y2gtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGU3MTEyMzZhMzcwNTk1MjNiMWQ4MTIyZTMwZjhmZjM3YmEyYjM4NWMuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZl
bnRfdG91Y2gtYWN0aW9uLXBhbi1yaWdodC1jc3NfdG91Y2gtbWFudWFsLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSwxMTQgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVh
ZD4KLSAgICAgICAgPHRpdGxlPnRvdWNoLWFjdGlvbjogcGFuLXJpZ2h0PC90aXRsZT4KLSAgICAg
ICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1LjMgLSBXaXRoIGB0b3VjaC1hY3Rp
b246IHBhbi1yaWdodGAgb24gYSBzd2lwZWQgb3IgY2xpY2svZHJhZ2dlZCBlbGVtZW50LCBvbmx5
IHBhbm5pbmcgb24gdGhlIHgtYXhpcyByaWdodCBkaXJlY3Rpb24gc2hvdWxkIGJlIHBvc3NpYmxl
LiI+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Ut
d2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBo
cmVmPSIuLi9wb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIv
cmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2Ny
aXB0IHNyYz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8
c3R5bGU+Ci0gICAgICAgICAgICAjdGFyZ2V0MCB7Ci0gICAgICAgICAgICB3aWR0aDogNzAwcHg7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDQzMHB4OwotICAgICAgICAgICAgdG91Y2gtYWN0aW9uOiBw
YW4tcmlnaHQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRlciBFdmVudHMgdG91
Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAgICAgPGg0IGlkPSJkZXNjIj5U
ZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQgRE9XTiAoZHJhZyB1cCksIHRo
ZW4gTEVGVCAoZHJhZyByaWdodCksIHRoZW4gUklHSFQgKGRyYWcgbGVmdCkuIFRhcCBDb21wbGV0
ZSBidXR0b24gdW5kZXIgdGhlIHJlY3RhbmdsZSB3aGVuIGRvbmUuIEV4cGVjdGVkOiBvbmx5IHBh
bnMgaW4gcmlnaHQgZGlyZWN0aW9uLjwvaDQ+Ci0gICAgICAgIDxwPk5vdGU6IHRoaXMgdGVzdCBp
cyBmb3IgdG91Y2gtZGV2aWNlcyBvbmx5PC9wPgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj4K
LSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAg
ICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWdu
YSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBh
ZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1
c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNv
bW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0
dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251bW15IG5p
YmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0
IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFt
LCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAg
ICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVh
dC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAg
ICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5n
IGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGlu
Y2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAg
ICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVk
IGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2Jv
cnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAg
ICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGll
bQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNy
ZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAg
VXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9u
IHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBh
bGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+
Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8aW5wdXQgdHlwZT0iYnV0dG9uIiBpZD0iYnRuQ29t
cGxldGUiIHZhbHVlPSJDb21wbGV0ZSB0ZXN0Ij4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSd0ZXh0
L2phdmFzY3JpcHQnPgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9
OwotICAgICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb24gPSBhc3luY190ZXN0KCJ0b3VjaC1h
Y3Rpb24gYXR0cmlidXRlIHRlc3QiKTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxi
YWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0g
ICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFy
Z2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotICAgICAgICAgICAgICAgIHRhcmdldDAuc2Nyb2xs
TGVmdCA9IDIwMDsKLQotICAgICAgICAgICAgICAgIHZhciBzY3JvbGxMaXN0ZW5lckV4ZWN1dGVk
ID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgdGFyZ2V0MC5hZGRFdmVudExpc3RlbmVyKCJzY3Jv
bGwiLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBzY3JvbGxMaXN0ZW5l
ckV4ZWN1dGVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0ZXJfdGhh
bl9lcXVhbCh0YXJnZXQwLnNjcm9sbExlZnQsIDIwMCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0K
LSAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiAidG91Y2gtYWN0aW9uOiBwYW4tcmlnaHQiIGF0
dHJpYnV0ZSB3b3JrcyBwcm9wZXJseQotICAgICAgICAgICAgICAgIC8vVEE6IDE1LjMKLSAgICAg
ICAgICAgICAgICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQp
IHsKLSAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50
ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24uc3Rl
cChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHNjcm9s
bExpc3RlbmVyRXhlY3V0ZWQsICJzY3JvbGwgbGlzdGVuZXIgc2hvdWxkIGhhdmUgYmVlbiBleGVj
dXRlZCBieSB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZ3JlYXRlcl90aGFuKHRhcmdldDAuc2Nyb2xsTGVmdCwgMjAwLCAic2Nyb2xsIHggb2Zm
c2V0IHNob3VsZCBiZSBncmVhdGVyIHRoYW4gMjAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3As
IDAsICJzY3JvbGwgeSBvZmZzZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIp
OwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3Vj
aGFjdGlvbi5kb25lKCk7Ci0gICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29t
cGxldGUoKTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9z
Y3JpcHQ+Ci0gICAgICAgIDxoMT50b3VjaC1hY3Rpb246IHBhbi1yaWdodDwvaDE+Ci0gICAgICAg
IDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5n
IHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+
PC9zcGFuPi48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2
PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2
ZW50X3RvdWNoLWFjdGlvbi1wYW4tdXAtY3NzX3RvdWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lv
bi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi11cC1jc3NfdG91Y2gtbWFudWFsLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ2ZGRhYTI2MDMxZDk4ZmVlOGVjNzk3MTcx
ZTQ2OTBmNTZmMTE5OGIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi11cC1jc3NfdG91
Y2gtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTQgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPnRvdWNoLWFjdGlvbjog
cGFuLXVwPC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1
LjQgLSBXaXRoIGB0b3VjaC1hY3Rpb246IHBhbi11cGAgb24gYSBzd2lwZWQgb3IgY2xpY2svZHJh
Z2dlZCBlbGVtZW50LCBvbmx5IHBhbm5pbmcgaW4gdGhlIHktYXhpcyB1cCBkaXJlY3Rpb24gc2hv
dWxkIGJlIHBvc3NpYmxlLiI+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50
PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5
cGU9InRleHQvY3NzIiBocmVmPSIuLi9wb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAg
IDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0
PgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2Ny
aXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjdGFyZ2V0MCB7Ci0gICAgICAgICAg
ICB3aWR0aDogNzAwcHg7Ci0gICAgICAgICAgICBoZWlnaHQ6IDQzMHB4OwotICAgICAgICAgICAg
dG91Y2gtYWN0aW9uOiBwYW4tdXA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0g
ICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRl
ciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAgICAgPGg0
IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQgRE9XTiAo
ZHJhZyB1cCksIHRoZW4gUklHSFQgKGRyYWcgbGVmdCksIHRoZW4gVVAgKGRyYWcgZG93bikuIFRh
cCBDb21wbGV0ZSBidXR0b24gdW5kZXIgdGhlIHJlY3RhbmdsZSB3aGVuIGRvbmUuIEV4cGVjdGVk
OiBvbmx5IHBhbnMgaW4gdXAgZGlyZWN0aW9uLjwvaDQ+Ci0gICAgICAgIDxwPk5vdGU6IHRoaXMg
dGVzdCBpcyBmb3IgdG91Y2gtZGV2aWNlcyBvbmx5PC9wPgotICAgICAgICA8ZGl2IGlkPSJ0YXJn
ZXQwIj4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAg
ICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9y
ZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMg
ZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29y
cGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4
IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29u
c2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251
bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3Vh
bSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0g
dmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAot
ICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNv
bnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAg
ICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlw
aXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNt
b2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBh
dC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBu
b3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAg
ICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAg
ICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBz
ZWQgZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1
dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAg
ICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kg
dHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlz
bCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8aW5wdXQgdHlwZT0iYnV0dG9uIiBpZD0i
YnRuQ29tcGxldGUiIHZhbHVlPSJDb21wbGV0ZSB0ZXN0Ij4KLSAgICAgICAgPHNjcmlwdCB0eXBl
PSd0ZXh0L2phdmFzY3JpcHQnPgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBl
cyA9IHt9OwotICAgICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb24gPSBhc3luY190ZXN0KCJ0
b3VjaC1hY3Rpb24gYXR0cmlidXRlIHRlc3QiKTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9u
X2NhbGxiYWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4o
KSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotICAgICAgICAgICAgICAgIHRhcmdldDAu
c2Nyb2xsVG9wID0gMjAwOwotCi0gICAgICAgICAgICAgICAgdmFyIHNjcm9sbExpc3RlbmVyRXhl
Y3V0ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICB0YXJnZXQwLmFkZEV2ZW50TGlzdGVuZXIo
InNjcm9sbCIsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHNjcm9sbExp
c3RlbmVyRXhlY3V0ZWQgPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfbGVzc190
aGFuX2VxdWFsKHRhcmdldDAuc2Nyb2xsVG9wLCAyMDApOwotICAgICAgICAgICAgICAgIH0pOwot
Ci0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgInRvdWNoLWFjdGlvbjogcGFuLXVwIiBhdHRy
aWJ1dGUgd29ya3MgcHJvcGVybHkKLSAgICAgICAgICAgICAgICAvL1RBOiAxNS40Ci0gICAgICAg
ICAgICAgICAgb25fZXZlbnQoYnRuQ29tcGxldGUsICdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7
Ci0gICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVy
VHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLnN0ZXAo
ZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShzY3JvbGxM
aXN0ZW5lckV4ZWN1dGVkLCAic2Nyb2xsIGxpc3RlbmVyIHNob3VsZCBoYXZlIGJlZW4gZXhlY3V0
ZWQgYnkgdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbExlZnQsIDAsICJzY3JvbGwgeCBvZmZzZXQgc2hvdWxk
IGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2xlc3NfdGhhbih0YXJnZXQwLnNjcm9sbFRvcCwgMjAwLCAic2Nyb2xsIHkgb2Zmc2V0
IHNob3VsZCBiZSBsZXNzIHRoYW4gMjAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAg
ICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24u
ZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICB1cGRhdGVEZXNjcmlwdGlvbkNvbXBsZXRlKCk7
Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0Pgot
ICAgICAgICA8aDE+dG91Y2gtYWN0aW9uOiBwYW4tdXA8L2gxPgotICAgICAgICA8ZGl2IGlkPSJj
b21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5
cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9w
PgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvaHRtbC9wb2ludGVyZXZlbnRfZHJhZ19pbnRlcmFj
dGlvbi1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9odG1sL3BvaW50ZXJldmVudF9kcmFnX2ludGVyYWN0aW9uLW1h
bnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYWM5MTFmZDU3NmQ5OGU4
OTdiMWFhMTllYzI3MjM2YjIwZjkyZTQzLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcG9pbnRlcmV2ZW50cy9odG1sL3BvaW50ZXJldmVudF9kcmFnX2ludGVyYWN0aW9uLW1hbnVh
bC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsODcgKzAsMCBAQAotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2ZW50cyBpbnRlcmFjdGlvbiB3aXRoIGRyYWcgYW5k
IGRyb3A8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lk
dGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0
ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAgICAgICA8c2Ny
aXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAg
ICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNvbW1vbiBjaGVja3MgYWNy
b3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCIgc3JjPSIuLi9wb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgIHZhciBldmVudExpc3QgPSBbJ3BvaW50ZXJkb3duJywgJ3BvaW50
ZXJ1cCcsICdwb2ludGVyY2FuY2VsJywgJ2dvdHBvaW50ZXJjYXB0dXJlJywgJ2xvc3Rwb2ludGVy
Y2FwdHVyZScsICdkcmFnc3RhcnQnXTsKLSAgICAgICAgCi0gICAgICAgICAgIFBoYXNlRW51bSA9
IHsKLSAgICAgICAgICAgICAgRG5kV2l0aG91dENhcHR1cmU6ICAgMCwKLSAgICAgICAgICAgICAg
RG5kV2l0aENhcHR1cmU6ICAgICAgMSwKLSAgICAgICAgICAgICAgRG5kUHJldmVudGVkOiAgICAg
ICAgMiwKLSAgICAgICAgICAgICAgRG9uZTogICAgICAgICAgICAgICAgMywKLSAgICAgICAgICAg
IH07Ci0gICAgICAgICAgICB2YXIgcGhhc2UgPSBQaGFzZUVudW0uRG5kV2l0aG91dENhcHR1cmU7
Ci0gICAgICAgICAgICB2YXIgcmVjZWl2ZWRfZXZlbnRzID0gW107Ci0gICAgICAgIAotICAgICAg
ICAgICAgZnVuY3Rpb24gcmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgICAgICAgICAgcGhhc2Ug
PSBQaGFzZUVudW0uRG5kV2l0aG91dENhcHR1cmU7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAg
ICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGVzdF9wb2ludGVyRXZl
bnQgPSBzZXR1cF9wb2ludGVyZXZlbnRfdGVzdCgicG9pbnRlciBldmVudHMgdnMgZHJhZyBhbmQg
ZHJvcCIsIFsnbW91c2UnXSk7Ci0KLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoJyN0YXJnZXQwJyk7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdl
dDEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjdGFyZ2V0MScpOwotICAgICAgICAgICAgICAg
IAotICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGhhbmRsZUV2ZW50KGUpIHsKLSAgICAgICAgICAg
ICAgICAgICAgaWYgKGUudHlwZSA9PSAncG9pbnRlcmRvd24nKSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgIHJlY2VpdmVkX2V2ZW50cyA9IFtdOwotICAgICAgICAgICAgICAgICAgICAgICBpZiAo
cGhhc2UgPT0gUGhhc2VFbnVtLkRuZFdpdGhDYXB0dXJlKQotICAgICAgICAgICAgICAgICAgICAg
ICAgICB0YXJnZXQwLnNldFBvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKTsKLSAgICAgICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICByZWNlaXZlZF9ldmVudHMucHVzaChlLnR5
cGUgKyAiQCIgKyBlLnRhcmdldC5pZCk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChlLnR5cGUg
PT0gJ2RyYWdzdGFydCcpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGUuZGF0YVRyYW5zZmVy
LnNldERhdGEoJ3RleHQvcGxhaW4nLCAnZHJhZ3N0YXJ0IHRlc3QnKTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmIChwaGFzZSA9PSBQaGFzZUVudW0uRG5kUHJldmVudGVkKQotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKLSAgICAgICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgICAgICBpZiAocGhhc2UgPT0gUGhhc2VFbnVtLkRuZFdpdGhv
dXRDYXB0dXJlICYmIGUudHlwZSA9PSAncG9pbnRlcmNhbmNlbCcpIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIHBoYXNlKys7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0KCgpID0+IHsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHJlY2VpdmVkX2V2ZW50
cy5qb2luKCcsICcpLCAicG9pbnRlcmRvd25AdGFyZ2V0MCwgZHJhZ3N0YXJ0QHRhcmdldDAsIHBv
aW50ZXJjYW5jZWxAdGFyZ2V0MCIsICJQb2ludGVyY2FuY2VsIHNob3VsZCBiZSBmaXJlZCB3aXRo
IHRoZSBleHBlY3RlZCBvcmRlciB3aGVuIGRyYWcgb3BlcmF0aW9uIHN0YXJ0cy4iKTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIH0sICJQb2ludGVyY2FuY2VsIHdoZW4gZHJhZyBvcGVyYXRpb24g
c3RhcnRzIik7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocGhhc2UgPT0gUGhhc2VF
bnVtLkRuZFdpdGhDYXB0dXJlICYmIGUudHlwZSA9PSAnbG9zdHBvaW50ZXJjYXB0dXJlJykgewot
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCgoKSA9PiB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhyZWNlaXZlZF9ldmVudHMuam9pbignLCAnKSwgInBvaW50
ZXJkb3duQHRhcmdldDAsIGdvdHBvaW50ZXJjYXB0dXJlQHRhcmdldDAsIGRyYWdzdGFydEB0YXJn
ZXQwLCBwb2ludGVyY2FuY2VsQHRhcmdldDAsIGxvc3Rwb2ludGVyY2FwdHVyZUB0YXJnZXQwIiwg
IlBvaW50ZXJjYW5jZWwgYW5kIGxvc3Rwb2ludGVyY2FwdHVyZSBzaG91bGQgYmUgZmlyZWQgd2l0
aCB0aGUgZXhwZWN0ZWQgb3JkZXIgd2hlbiBkcmFnIG9wZXJhdGlvbiBzdGFydHMuIik7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICB9LCAiUG9pbnRlcmNhbmNlbCB3aGlsZSBjYXB0dXJpbmcgd2hl
biBkcmFnIG9wZXJhdGlvbiBzdGFydHMiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHBoYXNl
Kys7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocGhhc2UgPT0gUGhhc2VFbnVtLkRu
ZFByZXZlbnRlZCAmJiBlLnR5cGUgPT0gJ3BvaW50ZXJ1cCcpIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3QoKCkgPT4gewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMocmVjZWl2ZWRfZXZlbnRzLmpvaW4oJywgJyksICJwb2ludGVyZG93bkB0YXJnZXQwLCBk
cmFnc3RhcnRAdGFyZ2V0MCwgcG9pbnRlcnVwQHRhcmdldDEiLCAiUG9pbnRlcmV2ZW50IHN0cmVh
bSBzaG91bGRuJ3QgZ2V0IGludGVycnVwdGVkIHdoZW4gZHJhZyBpcyBwcmV2ZW50ZWQuIik7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICB9LCAiUG9pbnRlcmV2ZW50IHN0cmVhbSB3aGVuIGRyYWcg
aXMgcHJldmVudGVkLiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UrKzsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LmRvbmUoKTsKLSAgICAgICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBldmVudExpc3Qu
Zm9yRWFjaChmdW5jdGlvbihldmVudE5hbWUpIHsKLSAgICAgICAgICAgICAgICAgICAgb25fZXZl
bnQodGFyZ2V0MCwgZXZlbnROYW1lLCBoYW5kbGVFdmVudCk7Ci0gICAgICAgICAgICAgICAgICAg
IG9uX2V2ZW50KHRhcmdldDEsIGV2ZW50TmFtZSwgaGFuZGxlRXZlbnQpOwotICAgICAgICAgICAg
ICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0g
ICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50cyBpbnRl
cmFjdGlvbiB3aXRoIGRyYWcgYW5kIGRyb3A8L2gxPgotICAgICAgICA8aDIgaWQ9InBvaW50ZXJU
eXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVz
Y3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgdGhhdCB0aGUgcG9pbnRlcmNhbmNlbCAoYW5kIGlm
IG5lZWRlZCBsb3N0cG9pbnRlcmNhcHR1cmUpIGlzIGRpc3BhdGNoZWQgd2hlbiBkcmFnIHN0YXJ0
cy4KLSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAgICAgICAgPGxpPlByZXNzIGRvd24gb24g
dGhlIGJsYWNrIHNxdWFyZS48L2xpPgotICAgICAgICAgICAgICAgICA8bGk+TW92ZSB5b3VyIHBv
aW50ZXIgdG8gcHVycGxlIHNxdWFyZSBhbmQgcmVsZWFzZS48L2xpPgotICAgICAgICAgICAgICAg
ICA8bGk+UmVwZWF0IHRoZSBmaXJzdCB0d28gc3RlcHMuPC9saT4KLSAgICAgICAgICAgICAgICAg
PGxpPlJlcGVhdCB0aGUgZmlyc3QgdHdvIHN0ZXBzIG9uY2UgYWdhaW4uPC9saT4KLSAgICAgICAg
ICAgIDwvb2w+Ci0gICAgICAgICAgICBUZXN0IHBhc3NlcyBpZiB0aGUgcHJvcGVyIGJlaGF2aW9y
IG9mIHRoZSBldmVudHMgaXMgb2JzZXJ2ZWQuCi0gICAgICAgIDwvaDQ+Ci0gICAgICAgIDxkaXYg
aWQ9InRlc3RDb250YWluZXIiPgotICAgICAgICAgICAgPGRpdiBkcmFnZ2FibGU9InRydWUiIGlk
PSJ0YXJnZXQwIj48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InRhcmdldDEiPjwvZGl2Pgot
ICAgICAgICA8L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRl
cmV2ZW50X2F0dHJpYnV0ZXNfaG92ZXJhYmxlX3BvaW50ZXJzLW1hbnVhbC5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF9hdHRyaWJ1dGVzX2hvdmVyYWJsZV9wb2ludGVycy1tYW51YWwuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTc0NzE0NTEwNzYyYWE1Njg5YjE5NDFhOTczYmYxNTY4
ZTJlZmFmYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMv
cG9pbnRlcmV2ZW50X2F0dHJpYnV0ZXNfaG92ZXJhYmxlX3BvaW50ZXJzLW1hbnVhbC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsMTQ2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2ZW50cyBwcm9wZXJ0aWVzIHRlc3Rz
PC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRl
dmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9j
c3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDwh
LS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24gY2hlY2tzIGFjcm9zcyBldmVu
dCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0i
cG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0PgotICAg
ICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAgICAgICAgICAgdmFy
IGRldGVjdGVkX2V2ZW50VHlwZXMgPSB7fTsKLSAgICAgICAgICAgIHZhciBldmVudExpc3QgPSBb
J3BvaW50ZXJvdmVyJywgJ3BvaW50ZXJlbnRlcicsICdwb2ludGVybW92ZScsICdwb2ludGVyZG93
bicsICdwb2ludGVydXAnLCAncG9pbnRlcm91dCcsICdwb2ludGVybGVhdmUnXTsKLSAgICAgICAg
ICAgIHZhciBleHBlY3RlZFBvaW50ZXJJZCA9IE5hTjsKLQotICAgICAgICAgICAgZnVuY3Rpb24g
cmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgICAgICAgICAgZGV0ZWN0ZWRfZXZlbnRUeXBlcyA9
IHt9OwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcXVhcmUxIiku
c3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJzsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnaW5uZXJGcmFtZScpLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgic3F1YXJlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJzsKLSAgICAgICAgICAgICAg
ICBleHBlY3RlZFBvaW50ZXJJZCA9IE5hTjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGZ1
bmN0aW9uIGNoZWNrUG9pbnRlckV2ZW50QXR0cmlidXRlcyhldmVudCwgdGFyZ2V0Qm91bmRpbmdD
bGllbnRSZWN0LCB0ZXN0TmFtZVByZWZpeCkgewotICAgICAgICAgICAgICAgIGlmIChkZXRlY3Rl
ZF9ldmVudFR5cGVzW2V2ZW50LnR5cGVdKQotICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0g
ICAgICAgICAgICAgICAgdmFyIGV4cGVjdGVkRXZlbnRUeXBlID0gIGV2ZW50TGlzdFtPYmplY3Qu
a2V5cyhkZXRlY3RlZF9ldmVudFR5cGVzKS5sZW5ndGhdOwotICAgICAgICAgICAgICAgIGRldGVj
dGVkX2V2ZW50VHlwZXNbZXZlbnQudHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgIHZhciBw
b2ludGVyVGVzdE5hbWUgPSB0ZXN0TmFtZVByZWZpeCArICcgJyArIGV4cGVjdGVkUG9pbnRlclR5
cGUgKyAnICcgKyBleHBlY3RlZEV2ZW50VHlwZTsKLQotICAgICAgICAgICAgICAgIGRldGVjdGVk
X3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwotCi0gICAgICAgICAgICAg
ICAgdGVzdChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhl
dmVudC50eXBlLCBleHBlY3RlZEV2ZW50VHlwZSwgIkV2ZW50LnR5cGUgc2hvdWxkIGJlICIgKyBl
eHBlY3RlZEV2ZW50VHlwZSkKLSAgICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAi
J3MgdHlwZSBzaG91bGQgYmUgIiArIGV4cGVjdGVkRXZlbnRUeXBlKTsKLQotICAgICAgICAgICAg
ICAgIC8vIFRlc3QgYnV0dG9uIGFuZCBidXR0b25zCi0gICAgICAgICAgICAgICAgaWYgKGV2ZW50
LnR5cGUgPT0gJ3BvaW50ZXJkb3duJykgewotICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0
aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoZXZlbnQuYnV0dG9u
ID09IDAsICJCdXR0b24gYXR0cmlidXRlIGlzIDAiKQotICAgICAgICAgICAgICAgICAgICB9LCBw
b2ludGVyVGVzdE5hbWUgKyAiJ3MgYnV0dG9uIGF0dHJpYnV0ZSBpcyAwIHdoZW4gbGVmdCBtb3Vz
ZSBidXR0b24gaXMgcHJlc3NlZC4iKTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5jdGlv
bigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGV2ZW50LmJ1dHRvbnMg
PT0gMSwgIkJ1dHRvbnMgYXR0cmlidXRlIGlzIDEiKQotICAgICAgICAgICAgICAgICAgICB9LCBw
b2ludGVyVGVzdE5hbWUgKyAiJ3MgYnV0dG9ucyBhdHRyaWJ1dGUgaXMgMSB3aGVuIGxlZnQgbW91
c2UgYnV0dG9uIGlzIHByZXNzZWQuIik7Ci0gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChldmVu
dC50eXBlID09ICdwb2ludGVydXAnKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rp
b24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShldmVudC5idXR0b24g
PT0gMCwgIkJ1dHRvbiBhdHRyaWJ1dGUgaXMgMCIpCi0gICAgICAgICAgICAgICAgICAgIH0sIHBv
aW50ZXJUZXN0TmFtZSArICIncyBidXR0b24gYXR0cmlidXRlIGlzIDAgd2hlbiBsZWZ0IG1vdXNl
IGJ1dHRvbiBpcyBqdXN0IHJlbGVhc2VkLiIpOwotICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1
bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoZXZlbnQuYnV0
dG9ucyA9PSAwLCAiQnV0dG9ucyBhdHRyaWJ1dGUgaXMgMCIpCi0gICAgICAgICAgICAgICAgICAg
IH0sIHBvaW50ZXJUZXN0TmFtZSArICIncyBidXR0b25zIGF0dHJpYnV0ZSBpcyAwIHdoZW4gbGVm
dCBtb3VzZSBidXR0b24gaXMganVzdCByZWxlYXNlZC4iKTsKLSAgICAgICAgICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X3RydWUoZXZlbnQuYnV0dG9uID09IC0xLCAiQnV0dG9uIGF0dHJp
YnV0ZSBpcyAtMSIpCi0gICAgICAgICAgICAgICAgICAgIH0sIHBvaW50ZXJUZXN0TmFtZSArICIn
cyBidXR0b24gaXMgLTEgd2hlbiBtb3VzZSBidXR0b25zIGFyZSBpbiByZWxlYXNlZCBzdGF0ZS4i
KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIGFzc2VydF90cnVlKGV2ZW50LmJ1dHRvbnMgPT0gMCwgIkJ1dHRvbnMgYXR0cmli
dXRlIGlzIDAiKQotICAgICAgICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAiJ3Mg
YnV0dG9ucyBpcyAwIHdoZW4gbW91c2UgYnV0dG9ucyBhcmUgaW4gcmVsZWFzZWQgc3RhdGUuIik7
Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgLy8gVGVzdCBjbGllbnRYIGFu
ZCBjbGllbnRZCi0gICAgICAgICAgICAgICAgaWYgKGV2ZW50LnR5cGUgIT0gJ3BvaW50ZXJvdXQn
ICYmIGV2ZW50LnR5cGUgIT0gJ3BvaW50ZXJsZWF2ZScgKSB7Ci0gICAgICAgICAgICAgICAgICAg
IHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2dyZWF0
ZXJfdGhhbl9lcXVhbChldmVudC5jbGllbnRYLCB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3QubGVm
dCwgImNsaWVudFggc2hvdWxkIGJlIGdyZWF0ZXIgb3IgZXF1YWwgdGhhbiBsZWZ0IG9mIHRoZSBi
b3giKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ncmVhdGVyX3RoYW5fZXF1YWwo
ZXZlbnQuY2xpZW50WSwgdGFyZ2V0Qm91bmRpbmdDbGllbnRSZWN0LnRvcCwgImNsaWVudFkgc2hv
dWxkIGJlIGdyZWF0ZXIgb3IgZXF1YWwgdGhhbiB0b3Agb2YgdGhlIGJveCIpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2xlc3NfdGhhbl9lcXVhbChldmVudC5jbGllbnRYLCB0YXJn
ZXRCb3VuZGluZ0NsaWVudFJlY3QucmlnaHQsICJjbGllbnRYIHNob3VsZCBiZSBsZXNzIG9yIGVx
dWFsIHRoYW4gcmlnaHQgb2YgdGhlIGJveCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2xlc3NfdGhhbl9lcXVhbChldmVudC5jbGllbnRZLCB0YXJnZXRCb3VuZGluZ0NsaWVudFJl
Y3QuYm90dG9tLCAiY2xpZW50WSBzaG91bGQgYmUgbGVzcyBvciBlcXVhbCB0aGFuIGJvdHRvbSBv
ZiB0aGUgYm94Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0sIHBvaW50ZXJUZXN0TmFtZSArICIn
cyBDbGllbnRYIGFuZCBDbGllbnRZIGF0dHJpYnV0ZXMgYXJlIGNvcnJlY3QuIik7Ci0gICAgICAg
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5jdGlvbiAoKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShldmVudC5jbGllbnRYIDwgdGFy
Z2V0Qm91bmRpbmdDbGllbnRSZWN0LmxlZnQgfHwgZXZlbnQuY2xpZW50WCA+PSB0YXJnZXRCb3Vu
ZGluZ0NsaWVudFJlY3QucmlnaHQgfHwgZXZlbnQuY2xpZW50WSA8IHRhcmdldEJvdW5kaW5nQ2xp
ZW50UmVjdC50b3AgfHwgZXZlbnQuY2xpZW50WSA+PSB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3Qu
Ym90dG9tLCAiQ2xpZW50WC9ZIHNob3VsZCBiZSBvdXQgb2YgdGhlIGJvdW5kYXJpZXMgb2YgdGhl
IGJveCIpOwotICAgICAgICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAiJ3MgQ2xp
ZW50WCBhbmQgQ2xpZW50WSBhdHRyaWJ1dGVzIGFyZSBjb3JyZWN0LiIpOwotICAgICAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgICAgIGNoZWNrX1BvaW50ZXJFdmVudChldmVudCwgdGVzdE5h
bWVQcmVmaXgpOwotCi0gICAgICAgICAgICAgICAgLy8gVGVzdCBpc1ByaW1hcnkgdmFsdWUKLSAg
ICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyhldmVudC5pc1ByaW1hcnksIHRydWUsICJpc1ByaW1hcnkgc2hvdWxkIGJlIHRy
dWUiKTsKLSAgICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAiLmlzUHJpbWFyeSBh
dHRyaWJ1dGUgaXMgY29ycmVjdC4iKTsKLQotICAgICAgICAgICAgICAgIC8vIFRlc3QgcG9pbnRl
cklkIHZhbHVlCi0gICAgICAgICAgICAgICAgaWYgKGlzTmFOKGV4cGVjdGVkUG9pbnRlcklkKSkg
ewotICAgICAgICAgICAgICAgICAgICBleHBlY3RlZFBvaW50ZXJJZCA9IGV2ZW50LnBvaW50ZXJJ
ZDsKLSAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1
bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZXZlbnQu
cG9pbnRlcklkLCBleHBlY3RlZFBvaW50ZXJJZCwgInBvaW50ZXJJZCBzaG91bGQgcmVtYWluIHRo
ZSBzYW1lIGZvciB0aGUgc2FtZSBhY3RpdmUgcG9pbnRlciIpOwotICAgICAgICAgICAgICAgICAg
ICB9LCBwb2ludGVyVGVzdE5hbWUgKyAiLnBvaW50ZXJJZCBzaG91bGQgYmUgdGhlIHNhbWUgYXMg
cHJldmlvdXMgcG9pbnRlciBldmVudHMgZm9yIHRoaXMgYWN0aXZlIHBvaW50ZXIuIik7Ci0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4o
KSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRlc3RfcG9pbnRlckV2ZW50ID0gc2V0dXBfcG9pbnRl
cmV2ZW50X3Rlc3QoInBvaW50ZXJldmVudCBhdHRyaWJ1dGVzIiwgSE9WRVJBQkxFX1BPSU5URVJT
KTsKLSAgICAgICAgICAgICAgICB2YXIgc3F1YXJlMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJzcXVhcmUxIik7Ci0gICAgICAgICAgICAgICAgdmFyIHJlY3RTcXVhcmUxID0gc3F1YXJlMS5n
ZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKLSAgICAgICAgICAgICAgICB2YXIgaW5uZXJGcmFtZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbm5lckZyYW1lJyk7Ci0gICAgICAgICAgICAgICAg
dmFyIHNxdWFyZTIgPSBpbm5lckZyYW1lLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
c3F1YXJlMicpOwotICAgICAgICAgICAgICAgIHZhciByZWN0U3F1YXJlMiA9IHNxdWFyZTIuZ2V0
Qm91bmRpbmdDbGllbnRSZWN0KCk7Ci0KLSAgICAgICAgICAgICAgICBldmVudExpc3QuZm9yRWFj
aChmdW5jdGlvbihldmVudE5hbWUpIHsKLSAgICAgICAgICAgICAgICAgICAgb25fZXZlbnQoc3F1
YXJlMSwgZXZlbnROYW1lLCBmdW5jdGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGlmIChzcXVhcmUxLnN0eWxlLnZpc2liaWxpdHkgPT0gJ2hpZGRlbicpCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tQ
b2ludGVyRXZlbnRBdHRyaWJ1dGVzKGV2ZW50LCByZWN0U3F1YXJlMSwgIiIpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKGRldGVjdGVkX2V2ZW50VHlwZXMpLmxlbmd0
aCA9PSBldmVudExpc3QubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3F1
YXJlMS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZGV0ZWN0ZWRfZXZlbnRUeXBlcyA9IHt9OwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNxdWFyZTIuc3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJzsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBleHBlY3RlZFBvaW50ZXJJZCA9IE5hTjsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIG9u
X2V2ZW50KHNxdWFyZTIsIGV2ZW50TmFtZSwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBjaGVja1BvaW50ZXJFdmVudEF0dHJpYnV0ZXMoZXZlbnQsIHJlY3RTcXVh
cmUyLCAiSW5uZXIgZnJhbWUgIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0
LmtleXMoZGV0ZWN0ZWRfZXZlbnRUeXBlcykubGVuZ3RoID09IGV2ZW50TGlzdC5sZW5ndGgpIHsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcXVhcmUyLnN0eWxlLnZpc2liaWxpdHkgPSAn
aGlkZGVuJzsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5k
b25lKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0p
OwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2lu
dGVyIEV2ZW50cyBob3ZlcmFibGUgcG9pbnRlciBhdHRyaWJ1dGVzIHRlc3Q8L2gxPgotICAgICAg
ICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxoND4KLSAg
ICAgICAgICAgIFRlc3QgRGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgdGhlIHByb3BlcnRp
ZXMgb2YgaG92ZXJhYmxlIHBvaW50ZXIgZXZlbnRzLiBJZiB5b3UgYXJlIHVzaW5nIGhvdmVyYWJs
ZSBwZW4gZG9uJ3QgbGVhdmUgdGhlIHJhbmdlIG9mIGRpZ2l0aXplciB3aGlsZSBkb2luZyB0aGUg
aW5zdHJ1Y3Rpb25zLgotICAgICAgICAgICAgPG9sPgotICAgICAgICAgICAgICAgICA8bGk+TW92
ZSB5b3VyIHBvaW50ZXIgb3ZlciB0aGUgYmxhY2sgc3F1YXJlIGFuZCBjbGljayBvbiBpdC48L2xp
PgotICAgICAgICAgICAgICAgICA8bGk+VGhlbiBtb3ZlIGl0IG9mZiB0aGUgYmxhY2sgc3F1YXJl
IHNvIHRoYXQgaXQgZGlzYXBwZWFycy48L2xpPgotICAgICAgICAgICAgICAgICA8bGk+V2hlbiBy
ZWQgc3F1YXJlIGFwcGVhcnMgbW92ZSB5b3VyIHBvaW50ZXIgb3ZlciB0aGUgcmVkIHNxdWFyZSBh
bmQgY2xpY2sgb24gaXQuPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPlRoZW4gbW92ZSBpdCBv
ZmYgdGhlIHJlZCBzcXVhcmUuPC9saT4KLSAgICAgICAgICAgIDwvb2w+Ci0KLSAgICAgICAgICAg
IFRlc3QgcGFzc2VzIGlmIHRoZSBwcm9wZXIgYmVoYXZpb3Igb2YgdGhlIGV2ZW50cyBpcyBvYnNl
cnZlZC4KLSAgICAgICAgPC9oND4KLSAgICAgICAgPGRpdiBpZD0ic3F1YXJlMSIgY2xhc3M9InNx
dWFyZSI+PC9kaXY+Ci0gICAgICAgIDxpZnJhbWUgaWQ9ImlubmVyRnJhbWUiIHNyYz0icmVzb3Vy
Y2VzL3BvaW50ZXJldmVudF9hdHRyaWJ1dGVzX2hvdmVyYWJsZV9wb2ludGVycy1pZnJhbWUuaHRt
bCI+PC9pZnJhbWU+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNwYWNlciI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5n
IHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+
PC9zcGFuPi48L3A+Ci0gICAgICAgICAgICA8cD5SZWZyZXNoIHRoZSBwYWdlIHRvIHJ1biB0aGUg
dGVzdHMgYWdhaW4gd2l0aCBhIGRpZmZlcmVudCBwb2ludGVyIHR5cGUuPC9wPgotICAgICAgICA8
L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfYXR0cmlidXRlc19ub2hvdmVyX3BvaW50ZXJz
LW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9hdHRyaWJ1dGVzX25vaG92ZXJfcG9pbnRlcnMt
bWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBmZDc5MDRlZjAwNDFj
YjU1NWQyOTFlZTYwYjgyODhiYjVkZjc5MjUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9hdHRyaWJ1dGVzX25vaG92ZXJfcG9pbnRl
cnMtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjYgKzAsMCBAQAotPCFkb2N0eXBl
IGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlBvaW50ZXIgRXZlbnRz
IHByb3BlcnRpZXMgdGVzdHM8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIg
Y29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KLSAgICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNvbW1vbiBj
aGVja3MgYWNyb3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCIgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0ge307
Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfZXZlbnRUeXBlcyA9IHt9OwotICAgICAgICAgICAg
dmFyIGV2ZW50TGlzdCA9IFsncG9pbnRlcm92ZXInLCAncG9pbnRlcmVudGVyJywgJ3BvaW50ZXJk
b3duJywgJ3BvaW50ZXJ1cCcsICdwb2ludGVyb3V0JywgJ3BvaW50ZXJsZWF2ZSddOwotICAgICAg
ICAgICAgdmFyIGV4cGVjdGVkUG9pbnRlcklkID0gTmFOOwotCi0gICAgICAgICAgICBmdW5jdGlv
biByZXNldFRlc3RTdGF0ZSgpIHsKLSAgICAgICAgICAgICAgICBkZXRlY3RlZF9ldmVudFR5cGVz
ID0ge307Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNxdWFyZTEi
KS5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zpc2libGUnOwotICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdpbm5lckZyYW1lJykuY29udGVudERvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJzcXVhcmUyIikuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgZnVuY3Rpb24gY2hlY2tQb2ludGVyRXZlbnRBdHRyaWJ1dGVzKGV2ZW50
LCB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3QsIHRlc3ROYW1lUHJlZml4KSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKGRldGVjdGVkX2V2ZW50VHlwZXNbZXZlbnQudHlwZV0pCi0gICAgICAgICAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICB2YXIgZXhwZWN0ZWRFdmVudFR5cGUgPSAg
ZXZlbnRMaXN0W09iamVjdC5rZXlzKGRldGVjdGVkX2V2ZW50VHlwZXMpLmxlbmd0aF07Ci0gICAg
ICAgICAgICAgICAgZGV0ZWN0ZWRfZXZlbnRUeXBlc1tldmVudC50eXBlXSA9IHRydWU7Ci0gICAg
ICAgICAgICAgICAgdmFyIHBvaW50ZXJUZXN0TmFtZSA9IHRlc3ROYW1lUHJlZml4ICsgJyAnICsg
ZXhwZWN0ZWRQb2ludGVyVHlwZSArICcgJyArIGV4cGVjdGVkRXZlbnRUeXBlOwotCi0gICAgICAg
ICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7
Ci0KLSAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LnR5cGUsIGV4cGVjdGVkRXZlbnRUeXBlLCAiRXZlbnQudHlw
ZSBzaG91bGQgYmUgIiArIGV4cGVjdGVkRXZlbnRUeXBlKQotICAgICAgICAgICAgICAgIH0sIHBv
aW50ZXJUZXN0TmFtZSArICIncyB0eXBlIHNob3VsZCBiZSAiICsgZXhwZWN0ZWRFdmVudFR5cGUp
OwotCi0gICAgICAgICAgICAgICAgLy8gVGVzdCBidXR0b24gYW5kIGJ1dHRvbnMKLSAgICAgICAg
ICAgICAgICB0ZXN0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1
ZShldmVudC5idXR0b24gPT0gMCwgIkJ1dHRvbiBhdHRyaWJ1dGUgaXMgMCIpCi0gICAgICAgICAg
ICAgICAgfSwgcG9pbnRlclRlc3ROYW1lICsgIidzIGJ1dHRvbiBhdHRyaWJ1dGUgaXMgMCB3aGVu
IGxlZnQgbW91c2UgYnV0dG9uIGlzIHByZXNzZWQuIik7Ci0KLSAgICAgICAgICAgICAgICBpZiAo
ZXZlbnQudHlwZSA9PSAncG9pbnRlcmRvd24nIHx8IGV2ZW50LnR5cGUgPT0gJ3BvaW50ZXJvdmVy
JyB8fCBldmVudC50eXBlID09ICdwb2ludGVyZW50ZXInKSB7Ci0gICAgICAgICAgICAgICAgICAg
IHRlc3QoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShl
dmVudC5idXR0b25zID09IDEsICJCdXR0b25zIGF0dHJpYnV0ZSBpcyAxIikKLSAgICAgICAgICAg
ICAgICAgICAgfSwgcG9pbnRlclRlc3ROYW1lICsgIidzIGJ1dHRvbnMgYXR0cmlidXRlIGlzIDEg
d2hlbiBsZWZ0IG1vdXNlIGJ1dHRvbiBpcyBwcmVzc2VkLiIpOwotICAgICAgICAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShldmVudC5idXR0b25zID09IDAsICJCdXR0b25zIGF0
dHJpYnV0ZSBpcyAwIikKLSAgICAgICAgICAgICAgICAgICAgfSwgcG9pbnRlclRlc3ROYW1lICsg
IidzIGJ1dHRvbnMgaXMgMCB3aGVuIG1vdXNlIGJ1dHRvbnMgYXJlIGluIHJlbGVhc2VkIHN0YXRl
LiIpOwotICAgICAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgICAgIC8vIFRlc3QgY2xpZW50
WCBhbmQgY2xpZW50WQotICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShldmVudC5jbGllbnRYID49IHRhcmdldEJvdW5kaW5n
Q2xpZW50UmVjdC5sZWZ0ICYmIGV2ZW50LmNsaWVudFggPCB0YXJnZXRCb3VuZGluZ0NsaWVudFJl
Y3QucmlnaHQgJiYgZXZlbnQuY2xpZW50WSA+PSB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3QudG9w
ICYmIGV2ZW50LmNsaWVudFkgPCB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3QuYm90dG9tLCAiQ2xp
ZW50WC9ZIHNob3VsZCBiZSBpbiB0aGUgYm91bmRhcmllcyBvZiB0aGUgYm94Iik7Ci0gICAgICAg
ICAgICAgICAgfSwgcG9pbnRlclRlc3ROYW1lICsgIidzIENsaWVudFggYW5kIENsaWVudFkgYXR0
cmlidXRlcyBhcmUgY29ycmVjdC4iKTsKLQotICAgICAgICAgICAgICAgIGNoZWNrX1BvaW50ZXJF
dmVudChldmVudCwgdGVzdE5hbWVQcmVmaXgpOwotCi0gICAgICAgICAgICAgICAgLy8gVGVzdCBp
c1ByaW1hcnkKLSAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC5pc1ByaW1hcnksIHRydWUsICJpc1ByaW1hcnkg
c2hvdWxkIGJlIHRydWUiKTsKLSAgICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAi
LmlzUHJpbWFyeSBhdHRyaWJ1dGUgaXMgY29ycmVjdC4iKTsKLQotICAgICAgICAgICAgICAgIC8v
IFRlc3QgcG9pbnRlcklkIHZhbHVlCi0gICAgICAgICAgICAgICAgaWYgKGlzTmFOKGV4cGVjdGVk
UG9pbnRlcklkKSkgewotICAgICAgICAgICAgICAgICAgICBleHBlY3RlZFBvaW50ZXJJZCA9IGV2
ZW50LnBvaW50ZXJJZDsKLSAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAg
ICAgICB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQucG9pbnRlcklkLCBleHBlY3RlZFBvaW50ZXJJZCwgInBvaW50ZXJJZCBzaG91
bGQgcmVtYWluIHRoZSBzYW1lIGZvciB0aGUgc2FtZSBhY3RpdmUgcG9pbnRlciIpOwotICAgICAg
ICAgICAgICAgICAgICB9LCBwb2ludGVyVGVzdE5hbWUgKyAiLnBvaW50ZXJJZCBzaG91bGQgYmUg
dGhlIHNhbWUgYXMgcHJldmlvdXMgcG9pbnRlciBldmVudHMgZm9yIHRoaXMgYWN0aXZlIHBvaW50
ZXIuIik7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBm
dW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRlc3RfcG9pbnRlckV2ZW50ID0g
c2V0dXBfcG9pbnRlcmV2ZW50X3Rlc3QoInBvaW50ZXJldmVudCBhdHRyaWJ1dGVzIiwgTk9IT1ZF
Ul9QT0lOVEVSUyk7Ci0gICAgICAgICAgICAgICAgdmFyIHNxdWFyZTEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgic3F1YXJlMSIpOwotICAgICAgICAgICAgICAgIHZhciByZWN0U3F1YXJlMSA9
IHNxdWFyZTEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7Ci0gICAgICAgICAgICAgICAgdmFyIGlu
bmVyRnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5uZXJGcmFtZScpOwotICAgICAg
ICAgICAgICAgIHZhciBzcXVhcmUyID0gaW5uZXJGcmFtZS5jb250ZW50RG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3NxdWFyZTInKTsKLSAgICAgICAgICAgICAgICB2YXIgcmVjdFNxdWFyZTIgPSBz
cXVhcmUyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwotCi0gICAgICAgICAgICAgICAgZXZlbnRM
aXN0LmZvckVhY2goZnVuY3Rpb24oZXZlbnROYW1lKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9u
X2V2ZW50KHNxdWFyZTEsIGV2ZW50TmFtZSwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoc3F1YXJlMS5zdHlsZS52aXNpYmlsaXR5ID09ICdoaWRkZW4nKQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGNoZWNrUG9pbnRlckV2ZW50QXR0cmlidXRlcyhldmVudCwgcmVjdFNxdWFyZTEsICIiKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhkZXRlY3RlZF9ldmVudFR5
cGVzKS5sZW5ndGggPT0gZXZlbnRMaXN0Lmxlbmd0aCkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNxdWFyZTEuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nOwotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGRldGVjdGVkX2V2ZW50VHlwZXMgPSB7fTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzcXVhcmUyLnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRQb2ludGVySWQgPSBOYU47Ci0gICAgICAg
ICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
ICAgICAgICBvbl9ldmVudChzcXVhcmUyLCBldmVudE5hbWUsIGZ1bmN0aW9uIChldmVudCkgewot
ICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tQb2ludGVyRXZlbnRBdHRyaWJ1dGVzKGV2ZW50
LCByZWN0U3F1YXJlMiwgIklubmVyIGZyYW1lICIpOwotICAgICAgICAgICAgICAgICAgICAgICAg
aWYgKE9iamVjdC5rZXlzKGRldGVjdGVkX2V2ZW50VHlwZXMpLmxlbmd0aCA9PSBldmVudExpc3Qu
bGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3F1YXJlMi5zdHlsZS52aXNp
YmlsaXR5ID0gJ2hpZGRlbic7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2lu
dGVyRXZlbnQuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
PC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAg
ICA8aDE+UG9pbnRlciBFdmVudHMgbm8taG92ZXIgcG9pbnRlciBhdHRyaWJ1dGVzIHRlc3Q8L2gx
PgotICAgICAgICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAg
IDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgdGhl
IHByb3BlcnRpZXMgb2YgcG9pbnRlciBldmVudHMgdGhhdCBkbyBub3Qgc3VwcG9ydCBob3Zlci4K
LSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAgICAgICAgPGxpPlRhcCB0aGUgYmxhY2sgc3F1
YXJlLjwvbGk+Ci0gICAgICAgICAgICAgICAgIDxsaT5UaGVuIG1vdmUgaXQgb2ZmIHRoZSBibGFj
ayBzcXVhcmUgc28gdGhhdCBpdCBkaXNhcHBlYXJzLjwvbGk+Ci0gICAgICAgICAgICAgICAgIDxs
aT5XaGVuIHRoZSByZWQgc3F1YXJlIGFwcGVhcnMgdGFwIG9uIHRoYXQgYXMgd2VsbC48L2xpPgot
ICAgICAgICAgICAgPC9vbD4KLQotICAgICAgICAgICAgVGVzdCBwYXNzZXMgaWYgdGhlIHByb3Bl
ciBiZWhhdmlvciBvZiB0aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAgICA8L2g0PgotICAg
ICAgICA8ZGl2IGlkPSJzcXVhcmUxIiBjbGFzcz0ic3F1YXJlIj48L2Rpdj4KLSAgICAgICAgPGlm
cmFtZSBpZD0iaW5uZXJGcmFtZSIgc3JjPSJyZXNvdXJjZXMvcG9pbnRlcmV2ZW50X2F0dHJpYnV0
ZXNfaG92ZXJhYmxlX3BvaW50ZXJzLWlmcmFtZS5odG1sIj48L2lmcmFtZT4KLSAgICAgICAgPGRp
diBjbGFzcz0ic3BhY2VyIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNl
Ij4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRldGVj
dGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAgICAgICAgICAg
IDxwPlJlZnJlc2ggdGhlIHBhZ2UgdG8gcnVuIHRoZSB0ZXN0cyBhZ2FpbiB3aXRoIGEgZGlmZmVy
ZW50IHBvaW50ZXIgdHlwZS48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJs
b2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJl
dmVudF9ib3VuZGFyeV9ldmVudHNfaW5fY2FwdHVyaW5nLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJl
dmVudF9ib3VuZGFyeV9ldmVudHNfaW5fY2FwdHVyaW5nLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwZGU0ZDU1ZWQxM2VkNjcyMjljYzRhNmEwZjc3NjM1ZmFkODE1
ZDAxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVyZXZlbnRfYm91bmRhcnlfZXZlbnRzX2luX2NhcHR1cmluZy1tYW51YWwuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDk3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2ZW50cyBib3VuZGFyeSBldmVudHMgaW4gY2Fw
dHVyaW5nIHRlc3RzPC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
dHlwZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+
Ci0gICAgICAgIDwhLS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24gY2hlY2tz
IGFjcm9zcyBldmVudCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiIHNyYz0icG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8
c2NyaXB0PgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAg
ICAgICAgICAgdmFyIGV2ZW50TGlzdCA9IEFsbF9Qb2ludGVyX0V2ZW50czsKLSAgICAgICAgICAg
IFBoYXNlRW51bSA9IHsKLSAgICAgICAgICAgICAgV2FpdGluZ0ZvckRvd246ICAgICAgICJkb3du
IiwKLSAgICAgICAgICAgICAgV2FpdGluZ0ZvckZpcnN0TW92ZTogICJmaXJzdE1vdmUiLAotICAg
ICAgICAgICAgICBXYWl0aW5nRm9yU2Vjb25kTW92ZTogInNlY29uZE1vdmUiLAotICAgICAgICAg
ICAgICBXYWl0aW5nRm9yVXA6ICAgICAgICAgInVwIgotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgdmFyIHBoYXNlID0gUGhhc2VFbnVtLldhaXRpbmdGb3JEb3duOwotICAgICAgICAgICAgdmFy
IGV2ZW50c1JlY2lldmVkID0gW107Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJlc2V0VGVzdFN0
YXRlKCkgewotICAgICAgICAgICAgICAgIGV2ZW50c1JlY2lldmVkID0gW107Ci0gICAgICAgICAg
ICAgICAgcGhhc2UgPSBQaGFzZUVudW0uV2FpdGluZ0ZvckRvd247Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRlc3RfcG9p
bnRlckV2ZW50ID0gc2V0dXBfcG9pbnRlcmV2ZW50X3Rlc3QoInBvaW50ZXJldmVudCBib3VuZGFy
eSBldmVudHMgaW4gY2FwdHVyaW5nIiwgQUxMX1BPSU5URVJTKTsKLSAgICAgICAgICAgICAgICB2
YXIgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLSAgICAgICAg
ICAgICAgICB2YXIgbGlzdGVuZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGlzdGVuZXIi
KTsKLQotICAgICAgICAgICAgICAgIGV2ZW50TGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGV2ZW50TmFt
ZSkgewotICAgICAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQsIGV2ZW50TmFtZSwgZnVu
Y3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGhhc2UgPT0gUGhh
c2VFbnVtLldhaXRpbmdGb3JEb3duKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYg
KGV2ZW50TmFtZSA9PSAncG9pbnRlcmRvd24nKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBsaXN0ZW5lci5zZXRQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcGhhc2UgPSBQaGFzZUVudW0uV2FpdGluZ0ZvckZpcnN0
TW92ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAg
ICAgICB9IGVsc2UgaWYgKHBoYXNlID09IFBoYXNlRW51bS5XYWl0aW5nRm9yVXApIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQudHlwZSA9PSAncG9pbnRlcnVwJykKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuZG9uZSgpOwot
ICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBldmVudHNSZWNpZXZlZC5wdXNoKGV2ZW50LnR5cGUgKyAnQHRhcmdldCcpOwotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGlmIChwaGFzZSA9PSBQaGFzZUVudW0uV2FpdGluZ0ZvclNl
Y29uZE1vdmUgJiYgZXZlbnQudHlwZSA9PSAncG9pbnRlcm1vdmUnKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY2hlY2tQb2ludGVyRXZlbnRUeXBlKGV2ZW50KTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZXZlbnRzUmVj
aWV2ZWQsIFsnbG9zdHBvaW50ZXJjYXB0dXJlQGxpc3RlbmVyJywgJ3BvaW50ZXJvdXRAbGlzdGVu
ZXInLCAncG9pbnRlcmxlYXZlQGxpc3RlbmVyJywgJ3BvaW50ZXJvdmVyQHRhcmdldCcsICdwb2lu
dGVyZW50ZXJAdGFyZ2V0JywgJ3BvaW50ZXJtb3ZlQHRhcmdldCddLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICdsb3N0cG9pbnRlcmNhcHR1cmUgYW5kIHBvaW50ZXJv
dXQvbGVhdmUgc2hvdWxkIGJlIGRpc3BhdGNoZWQgdG8gdGhlIGNhcHR1cmluZyB0YXJnZXQgYW5k
IHBvaW50ZXJvdmVyL2VudGVyIHNob3VsZCBiZSBkaXNwYXRjaGVkIHRvIHRoZSBoaXQtdGVzdCBl
bGVtZW50IGJlZm9yZSB0aGUgZmlyc3QgcG9pbnRlcm1vdmUgZXZlbnQgYWZ0ZXIgcmVsZWFzaW5n
IHBvaW50ZXIgY2FwdHVyZScpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBl
eHBlY3RlZFBvaW50ZXJUeXBlICsgIiBwb2ludGVyIGV2ZW50cyBib3VuZGFyeSBldmVudHMgd2hl
biByZWxlYXNpbmcgY2FwdHVyZSIpOyAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cGhhc2UgPSBQaGFzZUVudW0uV2FpdGluZ0ZvclVwOwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgfSk7
Ci0gICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KGxpc3RlbmVyLCBldmVudE5hbWUsIGZ1bmN0
aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBoYXNlID09IFBoYXNl
RW51bS5XYWl0aW5nRm9yRG93bikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwot
ICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRzUmVjaWV2ZWQucHVzaChldmVudC50eXBlICsg
J0BsaXN0ZW5lcicpOwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBoYXNlID09IFBoYXNl
RW51bS5XYWl0aW5nRm9yRmlyc3RNb3ZlICYmIGV2ZW50TmFtZSA9PSAncG9pbnRlcm1vdmUnKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2hlY2tQb2ludGVyRXZlbnRUeXBlKGV2ZW50KTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoZXZlbnRzUmVjaWV2
ZWQsIFsncG9pbnRlcm91dEB0YXJnZXQnLCAncG9pbnRlcmxlYXZlQHRhcmdldCcsICdwb2ludGVy
b3ZlckBsaXN0ZW5lcicsICdwb2ludGVyZW50ZXJAbGlzdGVuZXInLCAnZ290cG9pbnRlcmNhcHR1
cmVAbGlzdGVuZXInLCAncG9pbnRlcm1vdmVAbGlzdGVuZXInXSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICdwb2ludGVyb3V0L2xlYXZlIHNob3VsZCBiZSBkaXNwYXRjaGVkIHRv
IHRoZSBwcmV2aW91cyB0YXJnZXQgYW5kIHBvaW50ZXJvdmVyL2VudGVyIGFuZCBnb3Rwb2ludGVy
Y2FwdHVyZSBzaG91bGQgYmUgZGlzcGF0Y2hlZCB0byB0aGUgY2FwdHVyaW5nIGVsZW1lbnQgYmVm
b3JlIHRoZSBmaXJzdCBjYXB0dXJlZCBwb2ludGVybW92ZSBldmVudCcpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgICB9LCBleHBlY3RlZFBvaW50ZXJUeXBlICsgIiBwb2ludGVyIGV2ZW50cyBi
b3VuZGFyeSBldmVudHMgd2hlbiByZWNlaXZpbmcgY2FwdHVyZSIpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgICBsaXN0ZW5lci5yZWxlYXNlUG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklk
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRzUmVjaWV2ZWQgPSBbXTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgcGhhc2UgPSBQaGFzZUVudW0uV2FpdGluZ0ZvclNlY29uZE1v
dmU7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0pOwot
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVy
IEV2ZW50cyBib3VuZGFyeSBldmVudHMgaW4gY2FwdHVyaW5nPC9oMT4KLSAgICAgICAgPGgyIGlk
PSJwb2ludGVyVHlwZURlc2NyaXB0aW9uIj48L2gyPgotICAgICAgICA8aDQ+Ci0gICAgICAgICAg
ICBUZXN0IERlc2NyaXB0aW9uOiBUaGlzIHRlc3QgY2hlY2tzIHRoZSBib3VuZGFyeSBldmVudHMg
b2YgcG9pbnRlciBldmVudHMgd2hpbGUgdGhlIGNhcHR1cmluZyBjaGFuZ2VzLiBJZiB5b3UgYXJl
IHVzaW5nIGhvdmVyYWJsZSBwZW4gZG9uJ3QgbGVhdmUgdGhlIHJhbmdlIG9mIGRpZ2l0aXplciB3
aGlsZSBkb2luZyB0aGUgaW5zdHJ1Y3Rpb25zLgotICAgICAgICAgICAgPG9sPgotICAgICAgICAg
ICAgICAgICA8bGk+TW92ZSB5b3VyIHBvaW50ZXIgb3ZlciB0aGUgYmxhY2sgc3F1YXJlPC9saT4K
LSAgICAgICAgICAgICAgICAgPGxpPlByZXNzIGRvd24gdGhlIHBvaW50ZXIgKGkuZS4gcHJlc3Mg
bGVmdCBidXR0b24gd2l0aCBtb3VzZSBvciB0b3VjaCB0aGUgc2NyZWVuIHdpdGggZmluZ2VyIG9y
IHBlbikuPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPkRyYWcgdGhlIHBvaW50ZXIgd2l0aGlu
IHRoZSBibGFjayBzcXVhcmUuPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPlJlbGVhc2UgdGhl
IHBvaW50ZXIuPC9saT4KLSAgICAgICAgICAgIDwvb2w+Ci0KLSAgICAgICAgICAgIFRlc3QgcGFz
c2VzIGlmIHRoZSBwcm9wZXIgYmVoYXZpb3Igb2YgdGhlIGV2ZW50cyBpcyBvYnNlcnZlZC4KLSAg
ICAgICAgPC9oND4KLSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MCIgY2xhc3M9InRvdWNoQWN0aW9u
Tm9uZSI+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsaXN0ZW5lciI+RG8gbm90
IGhvdmVyIG92ZXIgb3IgdG91Y2ggdGhpcyBlbGVtZW50LiA8L2Rpdj4KLSAgICAgICAgPGRpdiBp
ZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRl
ciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+
LjwvcD4KLSAgICAgICAgICAgIDxwPlJlZnJlc2ggdGhlIHBhZ2UgdG8gcnVuIHRoZSB0ZXN0cyBh
Z2FpbiB3aXRoIGEgZGlmZmVyZW50IHBvaW50ZXIgdHlwZS48L3A+Ci0gICAgICAgIDwvZGl2Pgot
ICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF9jYXB0dXJlX3N1cHByZXNzaW5nX21vdXNlLW1hbnVhbC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF9jYXB0dXJlX3N1cHByZXNzaW5nX21vdXNlLW1hbnVhbC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMjdiMDdhOWVlMGMzNjAwNGUyYTVjMTEx
M2IwMWMxODYzMzY3MmQ0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVyZXZlbnRfY2FwdHVyZV9zdXBwcmVzc2luZ19tb3VzZS1tYW51YWwuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDIwMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+U2V0L1JlbGVhc2UgY2FwdHVyZTwvdGl0bGU+
Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lk
dGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVm
PSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3Vy
Y2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNv
dXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8IS0tIEFkZGl0
aW9uYWwgaGVscGVyIHNjcmlwdCBmb3IgY29tbW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQgdHlwZXMg
LS0+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InBvaW50ZXJl
dmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAg
ICAgIDxoMT5Qb2ludGVyIEV2ZW50cyBjYXB0dXJlIHRlc3Q8L2gxPgotICAgICAgICA8aDQ+Ci0g
ICAgICAgICAgICBUZXN0IERlc2NyaXB0aW9uOiBUaGlzIHRlc3QgY2hlY2tzIGlmIHNldENhcHR1
cmUvcmVsZWFzZUNhcHR1cmUgZnVuY3Rpb25zIHdvcmtzIHByb3Blcmx5LiBDb21wbGV0ZSB0aGUg
Zm9sbG93aW5nIGFjdGlvbnM6Ci0gICAgICAgICAgICA8b2w+Ci0gICAgICAgICAgICAgICAgPGxp
PiBQdXQgeW91ciBtb3VzZSBvdmVyIHRoZSBibGFjayByZWN0YW5nbGUuIHBvaW50ZXJvdmVyIGFu
ZCBwb2ludGVyZW50ZXIgc2hvdWxkIGJlIGxvZ2dlZCBpbnNpZGUgb2YgaXQuPC9saT4KLSAgICAg
ICAgICAgICAgICA8bGk+IE1vdmUgeW91ciBtb3VzZSBvdXQgb2YgdGhlIGJsYWNrIHJlY3Rhbmds
ZS4gcG9pbnRlcm91dCBhbmQgcG9pbnRlcmxlYXZlIHNob3VsZCBiZSBsb2dnZWQgaW5zaWRlIG9m
IGl0PC9saT4KLSAgICAgICAgICAgICAgICA8bGk+IFB1dCB5b3VyIG1vdXNlIG92ZXIgdGhlIHB1
cnBsZSByZWN0YW5nbGUuIHBvaW50ZXJvdmVyIGFuZCBwb2ludGVyZW50ZXIgc2hvdWxkIGJlIGxv
Z2dlZCBpbnNpZGUgb2YgaXQuPC9saT4KLSAgICAgICAgICAgICAgICA8bGk+IE1vdmUgeW91ciBt
b3VzZSBvdXQgb2YgdGhlIHB1cnBsZSByZWN0YW5nbGUuIHBvaW50ZXJvdXQgYW5kIHBvaW50ZXJs
ZWF2ZSBzaG91bGQgYmUgbG9nZ2VkIGluc2lkZSBvZiBpdDwvbGk+Ci0gICAgICAgICAgICAgICAg
PGxpPiBQcmVzcyBhbmQgaG9sZCBsZWZ0IG1vdXNlIGJ1dHRvbiBvdmVyICJTZXQgQ2FwdHVyZSIg
YnV0dG9uIGFuZCBtb3ZlIG1vdXNlIGEgbGl0dGUgaW5zaWRlIHRoZSBidXR0b24uICJnb3Rwb2lu
dGVyY2FwdHVyZSIsICJwb2ludGVyb3ZlciIsIGFuZCAicG9pbnRlcmVudGVyIiBzaG91bGQgYmUg
bG9nZ2VkIGluIHRoZSBibGFjayByZWN0YW5nbGU8L2xpPgotICAgICAgICAgICAgICAgIDxsaT4g
UHV0IHlvdXIgbW91c2Ugb3ZlciB0aGUgcHVycGxlIHJlY3RhbmdsZSBhbmQgdGhlbiBtb3ZlIGl0
IG91dC4gTm90aGluZyBzaG91bGQgaGFwcGVuPC9saT4KLSAgICAgICAgICAgICAgICA8bGk+IFB1
dCB5b3VyIG1vdXNlIG92ZXIgdGhlIGJsYWNrIHJlY3RhbmdsZSBhbmQgdGhlbiBtb3ZlIGl0IG91
dC4gTm90aGluZyBzaG91bGQgaGFwcGVuLjwvbGk+Ci0gICAgICAgICAgICAgICAgPGxpPiBQdXQg
eW91ciBtb3VzZSBvdmVyIHRoZSBwdXJwbGUgcmVjdGFuZ2xlIGFuZCB0aGVuIHJlbGVhc2UgbGVm
dCBtb3VzZSBidXR0b24uICJsb3N0cG9pbnRlcmNhcHR1cmUiIHNob3VsZCBiZSBsb2dnZWQgaW4g
dGhlIGJsYWNrIHJlY3RhbmdsZS4gTW92ZSB5b3VyIG1vdXNlIGluIHRoZSBwdXJwbGUgcmVjdGFu
Z2xlIGEgbGl0dGxlLiAicG9pbnRlcm91dCIgYW5kICJwb2ludGVybGVhdmUiIHNob3VsZCBiZSBs
b2dnZWQgaW4gdGhlIGJsYWNrIHJlY3RhbmdsZS4gQWxzbyAicG9pbnRlcm92ZXIiIGFuZCAicG9p
bnRlcmVudGVyIiBzaG91bGQgYmUgbG9nZ2VkIGluIHRoZSBwdXJwbGUgcmVjdGFuZ2xlIjwvbGk+
Ci0gICAgICAgICAgICA8L29sPgotICAgICAgICA8L2g0PgotICAgICAgICBUZXN0IHBhc3NlcyBp
ZiB0aGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAg
ICA8ZGl2IGlkPSJ0YXJnZXQwIj48L2Rpdj4KLSAgICAgICAgPGJyPgotICAgICAgICA8ZGl2IGlk
PSJ0YXJnZXQxIj48L2Rpdj4KLSAgICAgICAgPGJyPgotICAgICAgICA8aW5wdXQgdHlwZT0iYnV0
dG9uIiBpZD0iYnRuQ2FwdHVyZSIgdmFsdWU9IlNldCBDYXB0dXJlIj4KLSAgICAgICAgPHNjcmlw
dCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPgotICAgICAgICAgICAgdmFyIGlzUG9pbnRlckNhcHR1
cmUgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciBpc1JlbGF0ZWRUYXJnZXRWYWx1ZVRlc3RlZCA9
IGZhbHNlOwotICAgICAgICAgICAgdmFyIGlzVGFyZ2V0QXV0aGVudGljaXR5VGVzdGVkID0gZmFs
c2U7Ci0gICAgICAgICAgICB2YXIgbG9zdFBvaW50ZXJDYXB0dXJlUmVjZWl2ZWQgPSBmYWxzZTsK
LSAgICAgICAgICAgIHZhciBjb3VudCA9IDA7Ci0gICAgICAgICAgICB2YXIgZXZlbnRfbG9nID0g
W107Ci0KLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAg
ICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxiYWNrKGVuZF9vZl90ZXN0KTsKLSAgICAgICAgICAg
IGZ1bmN0aW9uIGVuZF9vZl90ZXN0KCkgewotICAgICAgICAgICAgICAgIHNob3dMb2dnZWRFdmVu
dHMoKTsKLSAgICAgICAgICAgICAgICBzaG93UG9pbnRlclR5cGVzKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rh
cmdldDAnKTsKLSAgICAgICAgICAgIHZhciB0YXJnZXQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ3RhcmdldDEnKTsKLSAgICAgICAgICAgIHZhciBjYXB0dXJlQnV0dG9uID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2J0bkNhcHR1cmUnKTsKLQotICAgICAgICAgICAgdmFyIHRlc3RfZ290
cG9pbnRlcmNhcHR1cmUgPSBhc3luY190ZXN0KCJnb3Rwb2ludGVyY2FwdHVyZSBldmVudCByZWNl
aXZlZCIpOwotICAgICAgICAgICAgdmFyIHRlc3RfbG9zdHBvaW50ZXJjYXB0dXJlID0gYXN5bmNf
dGVzdCgibG9zdHBvaW50ZXJjYXB0dXJlIGV2ZW50IHJlY2VpdmVkIik7Ci0KLSAgICAgICAgICAg
IHZhciB0ZXN0X3BvaW50ZXJvdmVyX25vX2NhcHR1cmUgPSBhc3luY190ZXN0KCJwb2ludGVyb3Zl
ciBldmVudCB3aXRob3V0IGNhcHR1cmUgcmVjZWl2ZWQiKTsKLSAgICAgICAgICAgIHZhciB0ZXN0
X3BvaW50ZXJvdmVyX2NhcHR1cmUgPSBhc3luY190ZXN0KCJwb2ludGVyb3ZlciBldmVudCB3aXRo
IGNhcHR1cmUgcmVjZWl2ZWQiKTsKLQotICAgICAgICAgICAgdmFyIHRlc3RfcG9pbnRlcm91dF9u
b19jYXB0dXJlID0gYXN5bmNfdGVzdCgicG9pbnRlcm91dCBldmVudCB3aXRob3V0IGNhcHR1cmUg
cmVjZWl2ZWQiKTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJvdXRfYWZ0ZXJfY2FwdHVy
ZSA9IGFzeW5jX3Rlc3QoInBvaW50ZXJvdXQgZXZlbnQgYWZ0ZXIgbG9zdHBvaW50ZXJjYXB0dXJl
IHJlY2VpdmVkIik7Ci0KLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJlbnRlcl9ub19jYXB0
dXJlID0gYXN5bmNfdGVzdCgicG9pbnRlcmVudGVyIGV2ZW50IHdpdGhvdXQgY2FwdHVyZSByZWNl
aXZlZCIpOwotICAgICAgICAgICAgdmFyIHRlc3RfcG9pbnRlcmVudGVyX2NhcHR1cmUgPSBhc3lu
Y190ZXN0KCJwb2ludGVyZW50ZXIgZXZlbnQgd2l0aCBjYXB0dXJlIHJlY2VpdmVkIik7Ci0KLSAg
ICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJsZWF2ZV9ub19jYXB0dXJlID0gYXN5bmNfdGVzdCgi
cG9pbnRlcmxlYXZlIGV2ZW50IHdpdGhvdXQgY2FwdHVyZSByZWNlaXZlZCIpOwotICAgICAgICAg
ICAgdmFyIHRlc3RfcG9pbnRlcmxlYXZlX2FmdGVyX2NhcHR1cmUgPSBhc3luY190ZXN0KCJwb2lu
dGVybGVhdmUgZXZlbnQgYWZ0ZXIgbG9zdHBvaW50ZXJjYXB0dXJlIHJlY2VpdmVkIik7Ci0KLSAg
ICAgICAgICAgIHdpbmRvdy5vbmxvYWQgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICBv
bl9ldmVudChjYXB0dXJlQnV0dG9uLCAncG9pbnRlcmRvd24nLCBmdW5jdGlvbihlKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIGlmKGlzUG9pbnRlckNhcHR1cmUgPT0gZmFsc2UpIHsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIHNQb2ludGVyQ2FwdHVyZShlKTsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGlzUG9pbnRlckNhcHR1cmUgPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAnZ290
cG9pbnRlcmNhcHR1cmUnLCBmdW5jdGlvbihlKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rf
Z290cG9pbnRlcmNhcHR1cmUuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICBldmVudF9sb2cu
cHVzaCgnZ290cG9pbnRlcmNhcHR1cmVAdGFyZ2V0MCcpOwotICAgICAgICAgICAgICAgIH0pOwot
Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgJ2xvc3Rwb2ludGVyY2FwdHVyZScs
IGZ1bmN0aW9uKGUpIHsKLSAgICAgICAgICAgICAgICAgICAgaXNQb2ludGVyQ2FwdHVyZSA9IGZh
bHNlOwotICAgICAgICAgICAgICAgICAgICBsb3N0UG9pbnRlckNhcHR1cmVSZWNlaXZlZCA9IHRy
dWU7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfbG9zdHBvaW50ZXJjYXB0dXJlLmRvbmUoKTsK
LSAgICAgICAgICAgICAgICAgICAgZXZlbnRfbG9nLnB1c2goJ2xvc3Rwb2ludGVyY2FwdHVyZUB0
YXJnZXQwJyk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBydW4oKTsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAg
ICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVyb3ZlciIsIGZ1bmN0aW9uIChldmVudCkg
ewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlwZXNbIGV2ZW50LnBvaW50
ZXJUeXBlIF0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICBldmVudF9sb2cucHVzaCgncG9p
bnRlcm92ZXJAdGFyZ2V0MCcpOwotICAgICAgICAgICAgICAgICAgICBpZihpc1BvaW50ZXJDYXB0
dXJlKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJvdmVyX2NhcHR1cmUu
ZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpc1JlbGF0ZWRUYXJnZXRWYWx1
ZVRlc3RlZCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24oKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGV2ZW50
LnJlbGF0ZWRUYXJnZXQsIG51bGwsICJyZWxhdGVkVGFyZ2V0IHNob3VsZCBiZWhhdmUgdGhlIHNh
bWUgYXMgd2hlbiB0aGUgY2FwdHVyZSBpcyBub3Qgc2V0IikKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9LCAicmVsYXRlZFRhcmdldCBpcyBub3QgbnVsbCBmb3IgYm91bmRhcnkgZXZlbnRz
IGV2ZW4gd2hlbiB0aGUgY2FwdHVyZSBpcyBzZXQuIik7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaXNSZWxhdGVkVGFyZ2V0VmFsdWVUZXN0ZWQgPSB0cnVlOwotICAgICAgICAgICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGhpdFRlc3QgPSBkb2N1bWVu
dC5lbGVtZW50RnJvbVBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpOwotICAgICAg
ICAgICAgICAgICAgICAgICAgaWYoZXZlbnQudGFyZ2V0ICE9PSBoaXRUZXN0ICYmICFpc1Rhcmdl
dEF1dGhlbnRpY2l0eVRlc3RlZCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Qo
ZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfbm90
X2VxdWFscyhldmVudC50YXJnZXQsIGhpdFRlc3QsICJwb2ludGVyb3ZlciBzaG91bGQgYmUgZmly
ZWQgb24gY2FwdHVyZSB0YXJnZXQgZXZlbiBpZiB0aGUgcG9pbnRlciBpdCBub3Qgb3ZlciB0aGUg
Y2FwdHVyZSB0YXJnZXQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAicG9pbnRl
cm92ZXIgc2hvdWxkIHRyaWdnZXIgdGhlIGJsYWNrIHJlY3RhbmdsZSBldmVuIHdoZW4gcG9pbnRl
ciBpcyBub3Qgb3ZlciBibGFjayByZWN0YW5nbGUuIik7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaXNUYXJnZXRBdXRoZW50aWNpdHlUZXN0ZWQgPSB0cnVlOwotICAgICAgICAgICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIGVs
c2UgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyb3Zlcl9ub19jYXB0dXJl
LmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotCi0g
ICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJvdXQiLCBmdW5jdGlvbiAo
ZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZXZlbnRfbG9nLnB1c2goJ3BvaW50ZXJvdXRA
dGFyZ2V0MCcpOwotICAgICAgICAgICAgICAgICAgICBpZihpc1BvaW50ZXJDYXB0dXJlKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoInBvaW50ZXJvdXQgc2hvdWxkbid0IGJlIHNl
bnQgdG8gY2FwdHVyZWQgbm9kZSBhcyBhbGwgdGhlIGV2ZW50cyBhcmUgdGFyZ2V0ZWQgYXQgdGhl
IGNhcHR1cmluZyBub2RlIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9LCAicG9pbnRlcm91
dCBzaG91bGRuJ3QgYmUgc2VudCB0byBjYXB0dXJlZCBub2RlIGFzIGFsbCB0aGUgZXZlbnRzIGFy
ZSB0YXJnZXRlZCBhdCB0aGUgY2FwdHVyaW5nIG5vZGUuIik7Ci0gICAgICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBp
ZiAobG9zdFBvaW50ZXJDYXB0dXJlUmVjZWl2ZWQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0X3BvaW50ZXJvdXRfYWZ0ZXJfY2FwdHVyZS5kb25lKCk7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfcG9p
bnRlcm91dF9ub19jYXB0dXJlLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJlbnRlciIsIGZ1bmN0aW9uIChldmVudCkgewot
ICAgICAgICAgICAgICAgICAgICBldmVudF9sb2cucHVzaCgncG9pbnRlcmVudGVyQHRhcmdldDAn
KTsKLSAgICAgICAgICAgICAgICAgICAgaWYoaXNQb2ludGVyQ2FwdHVyZSkgewotICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyZW50ZXJfY2FwdHVyZS5kb25lKCk7Ci0gICAgICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICB0ZXN0X3BvaW50ZXJlbnRlcl9ub19jYXB0dXJlLmRvbmUoKTsKLSAgICAgICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25f
ZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJsZWF2ZSIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAg
ICAgICAgICAgICAgICBldmVudF9sb2cucHVzaCgncG9pbnRlcmxlYXZlQHRhcmdldDAnKTsKLSAg
ICAgICAgICAgICAgICAgICAgaWYoaXNQb2ludGVyQ2FwdHVyZSkgewotICAgICAgICAgICAgICAg
ICAgICAgICAgdGVzdChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfdW5yZWFjaGVkKCJwb2ludGVybGVhdmUgc2hvdWxkbid0IGJlIHNlbnQgdG8gY2FwdHVy
ZWQgbm9kZSBhcyBhbGwgdGhlIGV2ZW50cyBhcmUgdGFyZ2V0ZWQgYXQgdGhlIGNhcHR1cmluZyBu
b2RlIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9LCAicG9pbnRlcmxlYXZlIHNob3VsZG4n
dCBiZSBzZW50IHRvIGNhcHR1cmVkIG5vZGUgYXMgYWxsIHRoZSBldmVudHMgYXJlIHRhcmdldGVk
IGF0IHRoZSBjYXB0dXJpbmcgbm9kZS4iKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsb3N0UG9p
bnRlckNhcHR1cmVSZWNlaXZlZCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Rf
cG9pbnRlcmxlYXZlX2FmdGVyX2NhcHR1cmUuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJsZWF2
ZV9ub19jYXB0dXJlLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgLy8g
ZmFpbCBpZiBjYXB0dXJlIGlzIHNldCBidXQgZXZlbnQgaXMgcmVjZWl2ZWQgZm9yIHRoZSBub24t
Y2FwdHVyZWQgdGFyZ2V0Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MSwgInBvaW50
ZXJvdmVyIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGV2ZW50X2xv
Zy5wdXNoKCdwb2ludGVyb3ZlckB0YXJnZXQxJyk7Ci0gICAgICAgICAgICAgICAgICAgIGlmKGlz
UG9pbnRlckNhcHR1cmUgPT0gdHJ1ZSkgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdChm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVk
KCJwb2ludGVyb3ZlciBzaG91bGRuJ3QgdHJpZ2dlciBmb3IgdGhpcyB0YXJnZXQgd2hlbiBjYXB0
dXJlIGlzIGVuYWJsZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0sICJwb2ludGVyb3Zl
ciBzaG91bGRuJ3QgdHJpZ2dlciBmb3IgdGhlIHB1cnBsZSByZWN0YW5nbGUgd2hpbGUgdGhlIGJs
YWNrIHJlY3RhbmdsZSBoYXMgY2FwdHVyZSIpOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQxLCAicG9p
bnRlcm91dCIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBldmVudF9s
b2cucHVzaCgncG9pbnRlcm91dEB0YXJnZXQxJyk7Ci0gICAgICAgICAgICAgICAgICAgIGlmKGlz
UG9pbnRlckNhcHR1cmUgPT0gdHJ1ZSkgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdChm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVk
KCJwb2ludGVyb3V0IHNob3VsZG4ndCB0cmlnZ2VyIGZvciB0aGlzIHRhcmdldCB3aGVuIGNhcHR1
cmUgaXMgZW5hYmxlZCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSwgInBvaW50ZXJvdXQg
c2hvdWxkbid0IHRyaWdnZXIgZm9yIHRoZSBwdXJwbGUgcmVjdGFuZ2xlIHdoaWxlIHRoZSBibGFj
ayByZWN0YW5nbGUgaGFzIGNhcHR1cmUiKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MSwgInBvaW50
ZXJlbnRlciIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBldmVudF9s
b2cucHVzaCgncG9pbnRlcmVudGVyQHRhcmdldDEnKTsKLSAgICAgICAgICAgICAgICAgICAgaWYo
aXNQb2ludGVyQ2FwdHVyZSA9PSB0cnVlKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF91bnJlYWNo
ZWQoInBvaW50ZXJlbnRlciBzaG91bGRuJ3QgdHJpZ2dlciBmb3IgdGhpcyB0YXJnZXQgd2hlbiBj
YXB0dXJlIGlzIGVuYWJsZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0sICJwb2ludGVy
ZW50ZXIgc2hvdWxkbid0IHRyaWdnZXIgZm9yIHRoZSBwdXJwbGUgcmVjdGFuZ2xlIHdoaWxlIHRo
ZSBibGFjayByZWN0YW5nbGUgaGFzIGNhcHR1cmUiKTsKLSAgICAgICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MSwg
InBvaW50ZXJsZWF2ZSIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBl
dmVudF9sb2cucHVzaCgncG9pbnRlcmxlYXZlQHRhcmdldDEnKTsKLSAgICAgICAgICAgICAgICAg
ICAgaWYoaXNQb2ludGVyQ2FwdHVyZSA9PSB0cnVlKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF91
bnJlYWNoZWQoInBvaW50ZXJsZWF2ZSBzaG91bGRuJ3QgdHJpZ2dlciBmb3IgdGhpcyB0YXJnZXQg
d2hlbiBjYXB0dXJlIGlzIGVuYWJsZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0sICJw
b2ludGVybGVhdmUgc2hvdWxkbid0IHRyaWdnZXIgZm9yIHRoZSBwdXJwbGUgcmVjdGFuZ2xlIHdo
aWxlIHRoZSBibGFjayByZWN0YW5nbGUgaGFzIGNhcHR1cmUiKTsKLSAgICAgICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Njcmlw
dD4KLSAgICAgICAgPGgxPlBvaW50ZXIgRXZlbnRzIENhcHR1cmUgVGVzdDwvaDE+Ci0gICAgICAg
IDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5n
IHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+
PC9zcGFuPi48L3A+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5nIGV2ZW50cyB3ZXJlIGxv
Z2dlZDogPHNwYW4gaWQ9ImV2ZW50LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICAgIDwvZGl2Pgot
ICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVyZXZlbnRfZGlzYWJsZWRfZm9ybV9jb250cm9sLW1hbnVhbC5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJldmVudF9kaXNhYmxlZF9mb3JtX2NvbnRyb2wtbWFudWFsLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIwZTA3YTk4MGIyYjNkYWM3YTFiZWM0NTdlNWVkNmJiMzZi
NzZlZjcuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3Bv
aW50ZXJldmVudF9kaXNhYmxlZF9mb3JtX2NvbnRyb2wtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw2NiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgot
ICAgICAgICA8dGl0bGU+UG9pbnRlciBFdmVudHMgcHJvcGVydGllcyB0ZXN0czwvdGl0bGU+Ci0g
ICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgi
PgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJw
b2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJj
ZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8IS0tIEFkZGl0aW9u
YWwgaGVscGVyIHNjcmlwdCBmb3IgY29tbW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQgdHlwZXMgLS0+
Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InBvaW50ZXJldmVu
dF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIHZh
ciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9l
dmVudFR5cGVzID0ge307Ci0gICAgICAgICAgICB2YXIgZXZlbnRMaXN0ID0gWydwb2ludGVyb3V0
JywgJ3BvaW50ZXJvdmVyJywgJ3BvaW50ZXJlbnRlcicsICdwb2ludGVybW92ZScsICdwb2ludGVy
ZG93bicsICdwb2ludGVydXAnLCAncG9pbnRlcmxlYXZlJ107Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIHJlc2V0VGVzdFN0YXRlKCkgewotICAgICAgICAgICAgICAgIGRldGVjdGVkX2V2ZW50VHlw
ZXMgPSB7fTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAg
ICAgICAgICAgICAgICB2YXIgdGVzdF9wb2ludGVyRXZlbnQgPSBzZXR1cF9wb2ludGVyZXZlbnRf
dGVzdCgicG9pbnRlcmV2ZW50IGF0dHJpYnV0ZXMiLCBBTExfUE9JTlRFUlMpOwotICAgICAgICAg
ICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwot
Ci0gICAgICAgICAgICAgICAgZXZlbnRMaXN0LmZvckVhY2goZnVuY3Rpb24oZXZlbnROYW1lKSB7
Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0LCBldmVudE5hbWUsIGZ1bmN0aW9uIChl
dmVudCkgewotICAgICAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfZXZlbnRUeXBlc1tldmVu
dC50eXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVy
dHlwZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLQotICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgKE9iamVjdC5rZXlzKGRldGVjdGVkX2V2ZW50VHlwZXMpLmxlbmd0aCA9PSBldmVudExp
c3QubGVuZ3RoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZl
bnQuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJn
ZXQsICJjbGljayIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfdW5yZWFjaGVkKCJjbGljayBzaG91bGQgbm90IGZpcmUgb24gZGlzYWJsZWQgZWxlbWVudCIp
OwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI3RhcmdldDAgewotICAgICAgICAgICAgYmFj
a2dyb3VuZDogcHVycGxlOwotICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgb3JhbmdlOwot
ICAgICAgICAgICAgdG91Y2gtYWN0aW9uOiBub25lOwotICAgICAgICAgICAgd2lkdGg6IDIwMHB4
OwotICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9z
dHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxo
MT4gUG9pbnRlciBFdmVudDogcG9pbnRlcmV2ZW50cyBmaXJlIHRvIGRpc2FibGVkIGZvcm0gY29u
dHJvbHM8L2gxPgotICAgICAgICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+
Ci0gICAgICAgIDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVzY3JpcHRpb246Ci0gICAgICAgICAg
ICBQb2ludGVyZXZlbnRzIGFyZSBkaXNwYXRjaGVkIHRvIGRpc2FibGVkIGZvcm0gY29udHJvbHMu
Ci0gICAgICAgIDwvaDQ+Ci0gICAgICAgIDxkaXYgaWQ9Imluc3RydWN0aW9ucyI+Ci0gICAgICAg
ICAgICBVc2UgdGhlIG1vdXNlIG9yIHBlbiB0byBwcmVzcyBvbiB0aGUgcHVycGxlIGJ1dHRvbi4g
T3Igd2l0aCB0b3VjaCwgdGFwIG9uIHRoZSBwdXJwbGUgYm94LgotICAgICAgICA8L2Rpdj4KLSAg
ICAgICAgPGJ1dHRvbiBpZD0idGFyZ2V0MCIgZGlzYWJsZWQ+RGlzYWJsZWQgYnV0dG9uPC9idXR0
b24+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5U
ZXN0IGNvbXBsZXRlOiBTY3JvbGwgdG8gU3VtbWFyeSB0byB2aWV3IFBhc3MvRmFpbCBSZXN1bHRz
LjwvcD4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRl
dGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAgICAgICAg
ICAgIDxwPlJlZnJlc2ggdGhlIHBhZ2UgdG8gcnVuIHRoZSB0ZXN0cyBhZ2FpbiB3aXRoIGEgZGlm
ZmVyZW50IHBvaW50ZXIgdHlwZS48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlk
PSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVy
ZXZlbnRfZWxlbWVudF9oYXNwb2ludGVyY2FwdHVyZS1tYW51YWwuaHRtbCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZl
bnRfZWxlbWVudF9oYXNwb2ludGVyY2FwdHVyZS1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMWI0NzlhNjRmYTU4YTc0MDNjNWZiYmQ5NGU1NDFkYmJiMzdhNjkxMC4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X2VsZW1lbnRfaGFzcG9pbnRlcmNhcHR1cmUtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMjcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAg
ICAgICAgPHRpdGxlPkVsZW1lbnQuaGFzUG9pbnRlckNhcHR1cmUgdGVzdDwvdGl0bGU+Ci0gICAg
ICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgot
ICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2lu
dGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0g
e307Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9pbnRlclR5cGVz
KTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJFdmVudCA9IGFzeW5jX3Rlc3QoImhhc1Bv
aW50ZXJDYXB0dXJlIik7Ci0gICAgICAgICAgICB2YXIgbGlzdGVuaW5nX2V2ZW50cyA9IFsKLSAg
ICAgICAgICAgICAgICAicG9pbnRlcm92ZXIiLAotICAgICAgICAgICAgICAgICJwb2ludGVyZW50
ZXIiLAotICAgICAgICAgICAgICAgICJwb2ludGVyb3V0IiwKLSAgICAgICAgICAgICAgICAicG9p
bnRlcmxlYXZlIiwKLSAgICAgICAgICAgICAgICAicG9pbnRlcm1vdmUiLAotICAgICAgICAgICAg
ICAgICJnb3Rwb2ludGVyY2FwdHVyZSIKLSAgICAgICAgICAgIF07Ci0gICAgICAgICAgICB2YXIg
c2V0X2NhcHR1cmVfdG9fdGFyZ2V0MCA9IGZhbHNlOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBy
dW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciB0YXJnZXQxID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRhcmdldDEiKTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRh
cmdldDAsICJwb2ludGVyZG93biIsIGZ1bmN0aW9uIChlKSB7Ci0gICAgICAgICAgICAgICAgICAg
IGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tlLnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAg
ICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlKGUu
cG9pbnRlcklkKSwgZmFsc2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICJiZWZvcmUgdGFyZ2V0MC5zZXRQb2ludGVyQ2FwdHVyZSwgdGFyZ2V0MC5oYXNQb2ludGVyQ2Fw
dHVyZSBzaG91bGQgYmUgZmFsc2UiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAg
ICAgICAgICAgICAgIHRhcmdldDEuc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpOwotICAg
ICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5oYXNQb2ludGVyQ2Fw
dHVyZShlLnBvaW50ZXJJZCksIGZhbHNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAiYWZ0ZXIgdGFyZ2V0MS5zZXRQb2ludGVyQ2FwdHVyZSwgdGFyZ2V0MC5oYXNQb2lu
dGVyQ2FwdHVyZSBzaG91bGQgYmUgZmFsc2UiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHModGFyZ2V0MS5oYXNQb2ludGVyQ2FwdHVyZShlLnBvaW50ZXJJZCksIHRydWUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhZnRlciB0YXJnZXQxLnNl
dFBvaW50ZXJDYXB0dXJlLCB0YXJnZXQxLmhhc1BvaW50ZXJDYXB0dXJlIHNob3VsZCBiZSB0cnVl
Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICB0YXJnZXQw
LnNldFBvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKTsKLSAgICAgICAgICAgICAgICAgICAgc2V0
X2NhcHR1cmVfdG9fdGFyZ2V0MCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIC8vIGhhc1Bv
aW50ZXJDYXB0dXJlIHdpbGwgcmV0dXJuIHRydWUgaW1tZWRpYXRlbHkgYWZ0ZXIgYSBjYWxsIHRv
IHNldFBvaW50ZXJDYXB0dXJlCi0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50
LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyh0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgdHJ1ZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFmdGVyIHRhcmdldDAuc2V0UG9pbnRlckNh
cHR1cmUsIHRhcmdldDAuaGFzUG9pbnRlckNhcHR1cmUgc2hvdWxkIGJlIHRydWUiKTsKLSAgICAg
ICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIC8vIGhhc1BvaW50ZXJDYXB0
dXJlIHdpbGwgcmV0dXJuIGZhbHNlIGltbWVkaWF0ZWx5IGFmdGVyIGEgY2FsbCB0byByZWxlYXNl
UG9pbnRlckNhcHR1cmUKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0MC5yZWxlYXNlUG9pbnRl
ckNhcHR1cmUoZS5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgICAgICBzZXRfY2FwdHVyZV90
b190YXJnZXQwID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50
LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFs
cyh0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgZmFsc2UsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhZnRlciB0YXJnZXQwLnJlbGVhc2VQb2lu
dGVyQ2FwdHVyZSwgdGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQgYmUgZmFsc2UiKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MS5oYXNQb2ludGVy
Q2FwdHVyZShlLnBvaW50ZXJJZCksIGZhbHNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiYWZ0ZXIgdGFyZ2V0MC5yZWxlYXNlUG9pbnRlckNhcHR1cmUsIHRhcmdldDEu
aGFzUG9pbnRlckNhcHR1cmUgc2hvdWxkIGJlIGZhbHNlIik7Ci0gICAgICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgICAgICAgICB0YXJnZXQwLnNldFBvaW50ZXJDYXB0dXJlKGUucG9p
bnRlcklkKTsKLSAgICAgICAgICAgICAgICAgICAgc2V0X2NhcHR1cmVfdG9fdGFyZ2V0MCA9IHRy
dWU7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rpb24g
KCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhhc1Bv
aW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgdHJ1ZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgImFmdGVyIHRhcmdldDAuc2V0UG9pbnRlckNhcHR1cmUsIHRhcmdldDAu
aGFzUG9pbnRlckNhcHR1cmUgc2hvdWxkIGJlIHRydWUiKTsKLSAgICAgICAgICAgICAgICAgICAg
fSk7Ci0gICAgICAgICAgICAgICAgICAgIC8vIElmIHRoZSBlbGVtZW50Lmhhc1BvaW50ZXJDYXB0
dXJlIGlzIGZhbHNlIGVsZW1lbnQucmVsZWFzZVBvaW50ZXJDYXB0dXJlIGRvZXMgbm90aGluZwot
ICAgICAgICAgICAgICAgICAgICB0YXJnZXQxLnJlbGVhc2VQb2ludGVyQ2FwdHVyZShlLnBvaW50
ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rp
b24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhh
c1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgdHJ1ZSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIndoaWxlIHRhcmdldDEuaGFzUG9pbnRlckNhcHR1cmUgaXMgZmFs
c2UsIHRhcmdldDEucmVsZWFzZVBvaW50ZXJDYXB0dXJlIHNob3VsZCBub3QgY2hhbmdlIGhhc1Bv
aW50ZXJDYXB0dXJlIik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAg
IH0pOwotCi0gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0ZW5pbmdfZXZl
bnRzLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAs
IGxpc3RlbmluZ19ldmVudHNbaV0sIGZ1bmN0aW9uIChlKSB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRhcmdldDAuaGFzUG9pbnRlckNhcHR1cmUoZS5w
b2ludGVySWQpLCBzZXRfY2FwdHVyZV90b190YXJnZXQwLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIlJlY2VpdmVkICIgKyBlLnR5cGUgKyAiIHRhcmdldDAuaGFz
UG9pbnRlckNhcHR1cmUgc2hvdWxkIGJlICIgKyBzZXRfY2FwdHVyZV90b190YXJnZXQwKTsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAicG9pbnRl
cnVwIiwgZnVuY3Rpb24gKGUpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gSW1tZWRpYXRlbHkg
YWZ0ZXIgZmlyaW5nIHRoZSBwb2ludGVydXAgb3IgcG9pbnRlcmNhbmNlbCBldmVudHMsIGEgdXNl
ciBhZ2VudCBtdXN0IGNsZWFyCi0gICAgICAgICAgICAgICAgICAgIC8vIHRoZSBwZW5kaW5nIHBv
aW50ZXIgY2FwdHVyZSB0YXJnZXQgb3ZlcnJpZGUgZm9yIHRoZSBwb2ludGVySWQsIGFuZCB0aGVu
IHJ1bgotICAgICAgICAgICAgICAgICAgICAvLyAiUHJvY2VzcyBQZW5kaW5nIFBvaW50ZXIgQ2Fw
dHVyZSIgc3RlcHMgdG8gZmlyZSBsb3N0cG9pbnRlcmNhcHR1cmUgaWYgbmVjZXNzYXJ5LgotICAg
ICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5oYXNQb2ludGVyQ2Fw
dHVyZShlLnBvaW50ZXJJZCksIHRydWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICJwb2ludGVydXAgdGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQgYmUgdHJ1
ZSIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgc2V0X2Nh
cHR1cmVfdG9fdGFyZ2V0MCA9IGZhbHNlOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAg
ICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgImxvc3Rwb2ludGVyY2FwdHVyZSIsIGZ1bmN0aW9u
IChlKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rp
b24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhh
c1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgZmFsc2UsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJwb2ludGVydXAgdGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZSBz
aG91bGQgYmUgZmFsc2UiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAg
ICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQxLCAicG9pbnRlcnVwIiwg
ZnVuY3Rpb24gKGUpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuc3Rl
cChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRh
cmdldDEuaGFzUG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpLCBmYWxzZSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvaW50ZXJ1cCB0YXJnZXQxLmhhc1BvaW50ZXJD
YXB0dXJlIHNob3VsZCBiZSBmYWxzZSIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuZG9uZSgpOwotICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5FbGVtZW50Lmhhc1BvaW50ZXJDYXB0
dXJlIHRlc3Q8L2gxPgotICAgICAgICA8aDQ+Ci0gICAgICAgICAgICBUZXN0IERlc2NyaXB0aW9u
OiBUaGlzIHRlc3QgY2hlY2tzIGlmIEVsZW1lbnQuaGFzUG9pbnRlckNhcHR1cmUgcmV0dXJucyB2
YWx1ZSBjb3JyZWN0bHkKLSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAgICAgICA8bGk+IFBy
ZXNzIGJsYWNrIHJlY3RhbmdsZSBhbmQgZG8gbm90IHJlbGVhc2UKLSAgICAgICAgICAgICAgICA8
bGk+IE1vdmUgeW91ciBwb2ludGVyIHRvIHB1cnBsZSByZWN0YW5nbGUKLSAgICAgICAgICAgICAg
ICA8bGk+IFJlbGVhc2UgdGhlIHBvaW50ZXIKLSAgICAgICAgICAgICAgICA8bGk+IENsaWNrIHB1
cnBsZSByZWN0YW5nbGUKLSAgICAgICAgICAgIDwvb2w+Ci0gICAgICAgIDwvaDQ+Ci0gICAgICAg
IDxwPgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIiB0b3VjaC1hY3Rpb246bm9uZT48L2Rpdj4K
LSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MSIgdG91Y2gtYWN0aW9uOm5vbmU+PC9kaXY+Ci0gICAg
ICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93
aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxv
ZyI+PC9zcGFuPi48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsb2ciPjwv
ZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfZWxl
bWVudF9oYXNwb2ludGVyY2FwdHVyZV9yZWxlYXNlX3BlbmRpbmdfY2FwdHVyZS1tYW51YWwuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2
ZW50cy9wb2ludGVyZXZlbnRfZWxlbWVudF9oYXNwb2ludGVyY2FwdHVyZV9yZWxlYXNlX3BlbmRp
bmdfY2FwdHVyZS1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdh
ZDNlMjRiYTRjYzJiYWU0YTU4ZDg0MjI1YzJhODQxZmE0ZTg2Ny4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X2VsZW1lbnRfaGFzcG9p
bnRlcmNhcHR1cmVfcmVsZWFzZV9wZW5kaW5nX2NhcHR1cmUtbWFudWFsLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw3MyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFk
PgotICAgICAgICA8dGl0bGU+RWxlbWVudC5oYXNQb2ludGVyQ2FwdHVyZSB0ZXN0IGFmdGVyIHRo
ZSBwZW5kaW5nIHBvaW50ZXIgY2FwdHVyZSBlbGVtZW50IHJlbGVhc2VzIHBvaW50ZXIgY2FwdHVy
ZTwvdGl0bGU+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1k
ZXZpY2Utd2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQv
Y3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3Jj
PSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5q
cyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRf
cG9pbnRlcnR5cGVzID0ge307Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFjayhz
aG93UG9pbnRlclR5cGVzKTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJFdmVudCA9IGFz
eW5jX3Rlc3QoImhhc1BvaW50ZXJDYXB0dXJlIHRlc3QgYWZ0ZXIgdGhlIHBlbmRpbmcgcG9pbnRl
ciBjYXB0dXJlIGVsZW1lbnQgcmVsZWFzZXMgcG9pbnRlciBjYXB0dXJlIik7Ci0KLSAgICAgICAg
ICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdl
dDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MSIpOwotCi0gICAgICAgICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJkb3duIiwgZnVuY3Rpb24gKGUpIHsKLSAgICAg
ICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2UucG9pbnRlclR5cGVdID0gdHJ1
ZTsKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0MC5zZXRQb2ludGVyQ2FwdHVyZShlLnBvaW50
ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LnN0ZXAoZnVuY3Rp
b24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhh
c1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgdHJ1ZSwgIkFmdGVyIHRhcmdldDAuc2V0UG9p
bnRlckNhcHR1cmUsIHRhcmdldDAuaGFzUG9pbnRlckNhcHR1cmUgc2hvdWxkIHJldHVybiB0cnVl
Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAg
ICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgImdvdHBvaW50ZXJjYXB0dXJlIiwgZnVuY3Rp
b24gKGUpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuc3RlcChmdW5j
dGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRhcmdldDAu
aGFzUG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpLCB0cnVlLCAiQWZ0ZXIgdGFyZ2V0MCByZWNl
aXZlZCBnb3Rwb2ludGVyY2FwdHVyZSwgdGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQg
cmV0dXJuIHRydWUiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAg
ICAgIHRhcmdldDEuc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpOwotICAgICAgICAgICAg
ICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZShlLnBv
aW50ZXJJZCksIGZhbHNlLCAiQWZ0ZXIgdGFyZ2V0MS5zZXRQb2ludGVyQ2FwdHVyZSwgdGFyZ2V0
MC5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQgcmV0dXJuIGZhbHNlIik7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRhcmdldDEuaGFzUG9pbnRlckNhcHR1cmUoZS5wb2lu
dGVySWQpLCB0cnVlLCAiQWZ0ZXIgdGFyZ2V0MS5zZXRQb2ludGVyQ2FwdHVyZSwgdGFyZ2V0MS5o
YXNQb2ludGVyQ2FwdHVyZSBzaG91bGQgcmV0dXJuIHRydWUiKTsKLSAgICAgICAgICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIHRhcmdldDEucmVsZWFzZVBvaW50ZXJDYXB0dXJl
KGUucG9pbnRlcklkKTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuc3Rl
cChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRh
cmdldDAuaGFzUG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpLCBmYWxzZSwgIkFmdGVyIHRhcmdl
dDEucmVsZWFzZVBvaW50ZXJDYXB0dXJlLCB0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlIHNob3Vs
ZCBiZSBmYWxzZSIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJn
ZXQxLmhhc1BvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKSwgZmFsc2UsICJBZnRlciB0YXJnZXQx
LnJlbGVhc2VQb2ludGVyQ2FwdHVyZSwgdGFyZ2V0MS5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQg
YmUgZmFsc2UiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgfSk7
Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQxLCAiZ290cG9pbnRlcmNhcHR1cmUi
LCBmdW5jdGlvbiAoZSkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5z
dGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGZh
bHNlLCAidGFyZ2V0MSBzaG91bGQgbmV2ZXIgcmVjZWl2ZSBnb3Rwb2ludGVyY2FwdHVyZSBpbiB0
aGlzIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgfSk7
Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAibG9zdHBvaW50ZXJjYXB0dXJl
IiwgZnVuY3Rpb24gKGUpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQu
ZG9uZSgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3Nj
cmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxo
MT5FbGVtZW50Lmhhc1BvaW50ZXJDYXB0dXJlIHRlc3QgYWZ0ZXIgdGhlIHBlbmRpbmcgcG9pbnRl
ciBjYXB0dXJlIGVsZW1lbnQgcmVsZWFzZXMgcG9pbnRlciBjYXB0dXJlPC9oMT4KLSAgICAgICAg
PGg0PgotICAgICAgICAgICAgVGVzdCBEZXNjcmlwdGlvbjogVGhpcyB0ZXN0IGNoZWNrcyBpZiBF
bGVtZW50Lmhhc1BvaW50ZXJDYXB0dXJlIHJldHVybnMgdmFsdWUgY29ycmVjdGx5IGFmdGVyIHRo
ZSBwZW5kaW5nIHBvaW50ZXIgY2FwdHVyZSBlbGVtZW50IHJlbGVhc2VzIHBvaW50ZXIgY2FwdHVy
ZQotICAgICAgICAgICAgPG9sPgotICAgICAgICAgICAgICAgIDxsaT4gUHJlc3MgYmxhY2sgcmVj
dGFuZ2xlIGFuZCBkbyBub3QgcmVsZWFzZQotICAgICAgICAgICAgICAgIDxsaT4gTW92ZSB5b3Vy
IHBvaW50ZXIgdG8gcHVycGxlIHJlY3RhbmdsZQotICAgICAgICAgICAgICAgIDxsaT4gUmVsZWFz
ZSB0aGUgcG9pbnRlcgotICAgICAgICAgICAgPC9vbD4KLSAgICAgICAgPC9oND4KLSAgICAgICAg
PHA+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiIHRvdWNoLWFjdGlvbjpub25lPjwvZGl2Pgot
ICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQxIiB0b3VjaC1hY3Rpb246bm9uZT48L2Rpdj4KLSAgICAg
ICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dp
bmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9n
Ij48L3NwYW4+LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9k
aXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfZnJhY3Rpb25hbF9jb29yZGluYXRlcy1tYW51YWwuaHRt
bCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2
ZW50cy9wb2ludGVyZXZlbnRfZnJhY3Rpb25hbF9jb29yZGluYXRlcy1tYW51YWwuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTBlMmZkY2Q2MjE3NWMzMjVlNDM3NDRlNDNhZGRj
NWY0NTQ4NjE1OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvcG9pbnRlcmV2ZW50X2ZyYWN0aW9uYWxfY29vcmRpbmF0ZXMtbWFudWFsLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSw5OCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8dGl0bGU+UG9pbnRlciBFdmVudHMgY29vcmRpbmF0ZXMgY2FuIGhhdmUg
ZnJhY3Rpb25hbCB2YWx1ZTw8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIg
Y29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Nj
cmlwdD4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0icG9pbnRl
cmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjaW5uZXJGcmFtZSB7Ci0gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSg1KTsKLSAg
ICAgICAgICAgICAgICB3aWR0aDogNjBweDsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7
Ci0gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEyMHB4OwotICAgICAgICAgICAgICAgIG1h
cmdpbi10b3A6IDEyMHB4OwotICAgICAgICAgICAgICAgIGJvcmRlcjogMC4wMXB4IHNvbGlkIGJs
YWNrOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgICAgICA8c2NyaXB0Pgot
ICAgICAgICAgICAgdmFyIGV2ZW50TGlzdCA9IFsKLSAgICAgICAgICAgICAgICAgICJwb2ludGVy
ZG93biIsCi0gICAgICAgICAgICAgICAgICAicG9pbnRlcnVwIiwKLSAgICAgICAgICAgICAgICAg
ICJwb2ludGVybW92ZSIsCi0gICAgICAgICAgICAgICAgICAicG9pbnRlcm92ZXIiLAotICAgICAg
ICAgICAgICAgICAgInBvaW50ZXJvdXQiLAotICAgICAgICAgICAgICAgICAgInBvaW50ZXJlbnRl
ciIsCi0gICAgICAgICAgICAgICAgICAicG9pbnRlcmxlYXZlIl07Ci0gICAgICAgICAgICB2YXIg
ZXZlbnRzUmVjaWV2ZWQgPSB7fTsKLSAgICAgICAgICAgIHZhciBjbGlja2VkVGFyZ2V0TGlzdCA9
IFtdOwotCi0gICAgICAgICAgICBmdW5jdGlvbiByZXNldFRlc3RTdGF0ZSgpIHsKLSAgICAgICAg
ICAgICAgICBldmVudHNSZWNpZXZlZCA9IHt9OwotICAgICAgICAgICAgICAgIGNsaWNrZWRUYXJn
ZXRMaXN0ID0gW107Ci0gICAgICAgICAgICAgICAgWydzMScsICdzMicsICdzMyddLmZvckVhY2go
ZnVuY3Rpb24oaWQpewotICAgICAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2lubmVyRnJhbWUnKS5jb250ZW50RG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoaWQpOwotICAgICAgICAgICAgICAgICAgICB0YXJnZXQuc3R5bGUuYmFja2dyb3VuZCA9ICJi
bGFjayIKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAg
ZnVuY3Rpb24gY2hlY2tQb2ludGVyRXZlbnRDb29yZGluYXRlcyhldmVudCkgewotICAgICAgICAg
ICAgICBpZiAoZXZlbnQuY2xpZW50WCAhPSBNYXRoLmZsb29yKGV2ZW50LmNsaWVudFgpIHx8IGV2
ZW50LmNsaWVudFkgIT0gTWF0aC5mbG9vcihldmVudC5jbGllbnRZKSkKLSAgICAgICAgICAgICAg
ICBldmVudHNSZWNpZXZlZFtldmVudC50eXBlXSA9IHRydWU7Ci0gICAgICAgICAgICB9Ci0KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGVzdF9wb2lu
dGVyRXZlbnQgPSBzZXR1cF9wb2ludGVyZXZlbnRfdGVzdCgicG9pbnRlcmV2ZW50IGV2ZW50cyBp
biBjYXB0dXJpbmciLCBBTExfUE9JTlRFUlMpOwotICAgICAgICAgICAgICAgIHZhciBpbm5lckZy
YW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lubmVyRnJhbWUnKTsKLSAgICAgICAgICAg
ICAgICB2YXIgaW5uZXJEb2N1bWVudCA9IGlubmVyRnJhbWUuY29udGVudERvY3VtZW50OwotICAg
ICAgICAgICAgICAgIFsnczEnLCAnczInLCAnczMnXS5mb3JFYWNoKGZ1bmN0aW9uKGlkKXsKLSAg
ICAgICAgICAgICAgICAgICAgdmFyIHRhcmdldCA9IGlubmVyRG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoaWQpOwotICAgICAgICAgICAgICAgICAgICBldmVudExpc3QuZm9yRWFjaChmdW5jdGlvbihl
dmVudE5hbWUpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldCwgZXZl
bnROYW1lLCBjaGVja1BvaW50ZXJFdmVudENvb3JkaW5hdGVzKTsKLSAgICAgICAgICAgICAgICAg
ICAgfSk7Ci0KLSAgICAgICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0LCAiY2xpY2siLCBm
dW5jdGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgICBpZiAoIShldmVudC50YXJn
ZXQuaWQgaW4gY2xpY2tlZFRhcmdldExpc3QpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
IGNsaWNrZWRUYXJnZXRMaXN0LnB1c2goZXZlbnQudGFyZ2V0LmlkKTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgZXZlbnQudGFyZ2V0LnN0eWxlLmJhY2tncm91bmQgPSAicmVkIgotICAgICAg
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICBpZiAoY2xpY2tlZFRhcmdl
dExpc3QubGVuZ3RoID09IDMpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5j
dGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMo
ZXZlbnRzUmVjaWV2ZWQpLmxlbmd0aCAhPSBldmVudExpc3QubGVuZ3RoKXsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBldmVudExpc3QuZm9yRWFjaChmdW5jdGlvbihldmVudE5h
bWUpewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGV2
ZW50TmFtZSBpbiBldmVudHNSZWNpZXZlZCwgZXZlbnROYW1lICsgIiBzaG91bGQgaGF2ZSBmcmFj
dGlvbmFsIGNvb3JkaW5hdGVzIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUpOwotICAgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0X3BvaW50ZXJFdmVudC5kb25lKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCki
PgotICAgICAgICA8aDE+UG9pbnRlciBFdmVudHMgY29vcmRpbmF0ZXMgc3VwcG9ydCBmcmFjdGlv
bmFsIHZhbHVlPC9oMT4KLSAgICAgICAgPGgyIGlkPSJwb2ludGVyVHlwZURlc2NyaXB0aW9uIj48
L2gyPgotICAgICAgICA8aDQ+Ci0gICAgICAgICAgICBUZXN0IERlc2NyaXB0aW9uOiBUaGlzIHRl
c3QgY2hlY2tzIHBvaW50ZXIgZXZlbnRzIGhhcyBmcmFjdGlvbmFsIGNsaWVudCBjb29yZGluYXRl
cwotICAgICAgICAgICAgPG9sPgotICAgICAgICAgICAgICAgICA8bGk+TW92ZSB5b3VyIHBvaW50
ZXIgb3ZlciBvbmUgYmxhY2sgc3F1YXJlPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPlByZXNz
IGRvd24gdGhlIHBvaW50ZXIgKGkuZS4gcHJlc3MgbGVmdCBidXR0b24gd2l0aCBtb3VzZSBvciB0
b3VjaCB0aGUgc2NyZWVuIHdpdGggZmluZ2VyIG9yIHBlbikuPC9saT4KLSAgICAgICAgICAgICAg
ICAgPGxpPlJlbGVhc2UgdGhlIHBvaW50ZXIuPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPk1v
dmUgdG8gbmV4dCBibGFjayBzcXVhcmUgYW5kIHJlcHJlYXQgMiBhbmQgMzwvbGk+Ci0gICAgICAg
ICAgICA8L29sPgotCi0gICAgICAgICAgICBUZXN0IHBhc3NlcyBpZiBwb2ludGVyIGV2ZW50cyBo
YXMgZnJhY3Rpb25hbCBjb29yZGluYXRlcy4KLSAgICAgICAgPC9oND4KLSAgICAgICAgPGlmcmFt
ZSBpZD1pbm5lckZyYW1lIHNyYz0icmVzb3VyY2VzL3BvaW50ZXJldmVudF9mcmFjdGlvbmFsX2Nv
b3JkaW5hdGVzLWlmcmFtZS5odG1sIj48L2lmcmFtZT4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxl
dGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3
ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAg
ICAgICAgICAgIDxwPlJlZnJlc2ggdGhlIHBhZ2UgdG8gcnVuIHRoZSB0ZXN0cyBhZ2FpbiB3aXRo
IGEgZGlmZmVyZW50IHBvaW50ZXIgdHlwZS48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8
ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJldmVudF9tdWx0aXBsZV9wcmltYXJ5X3BvaW50ZXJzX2JvdW5kYXJ5X2V2ZW50cy1t
YW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfbXVsdGlwbGVfcHJpbWFyeV9wb2ludGVyc19ib3Vu
ZGFyeV9ldmVudHMtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVi
NzU4YzcwNzM4NzYwZDIxNzY1NjI0NDczMzc1NWRhM2VlNWYyMzguLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9tdWx0aXBsZV9wcmlt
YXJ5X3BvaW50ZXJzX2JvdW5kYXJ5X2V2ZW50cy1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE0NSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICA8aGVhZD4KLSAgICA8
dGl0bGU+UG9pbnRlciBFdmVudDogQm91bmRhcnkgY29tcGF0aWJpbGl0eSBldmVudHMgZm9yIG11
bHRpcGxlIHByaW1hcnkgcG9pbnRlcnM8L3RpdGxlPgotICAgIDxtZXRhIGNvbnRlbnQ9InRleHQv
aHRtbDsgY2hhcnNldD1VVEYtOCIgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIi8+Ci0gICAgPGxp
bmsgcmVsPSJhdXRob3IiIHRpdGxlPSJHb29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNv
bSAiLz4KLSAgICA8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9IldoZW4gbW9yZSB0aGFuIG9u
ZSBwcmltYXJ5IHBvaW50ZXJzIGFyZSBhY3RpdmUsIGVhY2ggd2lsbCBoYXZlIGFuIGluZGVwZW5k
ZW50IHNlcXVlbmNlIG9mIHBvaW50ZXIgYm91bmRhcnkgZXZlbnRzIGJ1dCB0aGUgY29tcGF0aWJp
bHR5IG1vdXNlIGJvdW5kYXJ5IGV2ZW50cyBoYXZlIHRoZWlyIG93biBzZXF1ZW5jZS4iLz4KLSAg
ICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZl
bnRfc3R5bGVzLmNzcyI+Ci0gICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3Mu
anMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3Jj
PSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgotICAgICAgdmFyIHRlc3RfcG9pbnRlckV2ZW50ID0gYXN5bmNfdGVz
dCgiTXVsdGktcG9pbnRlciBib3VuZGFyeSBjb21wYXQgZXZlbnRzIik7Ci0gICAgICBhZGRfY29t
cGxldGlvbl9jYWxsYmFjayhlbmRfb2ZfdGVzdCk7Ci0KLSAgICAgIHZhciBkZXRlY3RlZF9wb2lu
dGVydHlwZXMgPSB7fTsKLSAgICAgIHZhciBldmVudF9sb2cgPSBbXTsKLQotICAgICAgLy8gVGhl
c2UgdHdvIGlkcyBoZWxwIHVzIGRldGVjdCB0d28gZGlmZmVyZW50IHBvaW50aW5nIGRldmljZXMu
Ci0gICAgICB2YXIgZmlyc3RfZW50cnlfcG9pbnRlcl9pZCA9IC0xOwotICAgICAgdmFyIHNlY29u
ZF9lbnRyeV9wb2ludGVyX2lkID0gLTE7Ci0KLSAgICAgIC8vIEN1cnJlbnQgbm9kZSBmb3IgZWFj
aCBwb2ludGVyIGlkCi0gICAgICB2YXIgY3VycmVudF9ub2RlX2Zvcl9pZCA9IHt9OwotCi0gICAg
ICBmdW5jdGlvbiBlbmRfb2ZfdGVzdCgpIHsKLSAgICAgICAgICBzaG93TG9nZ2VkRXZlbnRzKCk7
Ci0gICAgICAgICAgc2hvd1BvaW50ZXJUeXBlcygpOwotICAgICAgfQotCi0gICAgICBmdW5jdGlv
biBlbmRfb2ZfaW50ZXJhY3Rpb24oKSB7Ci0gICAgICAgICAgdGVzdChmdW5jdGlvbiAoKSB7Ci0g
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZXZlbnRfbG9nLmpvaW4oIiwgIiksCi0gICAgICAg
ICAgICAgICAgICAibW91c2VvdmVyQHRhcmdldDAsIG1vdXNlZW50ZXJAdGFyZ2V0MCwgbW91c2Vv
dXRAdGFyZ2V0MCwgbW91c2VsZWF2ZUB0YXJnZXQwLCAiICsKLSAgICAgICAgICAgICAgICAgICJt
b3VzZW92ZXJAdGFyZ2V0MSwgbW91c2VlbnRlckB0YXJnZXQxLCBtb3VzZW91dEB0YXJnZXQxLCBt
b3VzZWxlYXZlQHRhcmdldDEsICIgKwotICAgICAgICAgICAgICAgICAgIm1vdXNlb3ZlckB0YXJn
ZXQwLCBtb3VzZWVudGVyQHRhcmdldDAsIG1vdXNlb3V0QHRhcmdldDAsIG1vdXNlbGVhdmVAdGFy
Z2V0MCIKLSAgICAgICAgICAgICAgKTsKLSAgICAgICAgICB9LCAiRXZlbnQgbG9nIik7Ci0KLSAg
ICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5kb25lKCk7IC8vIGNvbXBsZXRlIHRlc3QKLSAgICAg
IH0KLQotICAgICAgZnVuY3Rpb24gbG9nX2V2ZW50KGxhYmVsKSB7Ci0gICAgICAgICAgZXZlbnRf
bG9nLnB1c2gobGFiZWwpOwotICAgICAgfQotCi0gICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAg
ICAgICAgb25fZXZlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvbmUiKSwgImNsaWNrIiwg
ZW5kX29mX2ludGVyYWN0aW9uKTsKLQotICAgICAgICAgIHZhciB0YXJnZXRfbGlzdCA9IFsidGFy
Z2V0MCIsICJ0YXJnZXQxIl07Ci0gICAgICAgICAgdmFyIHBvaW50ZXJfZXZlbnRfbGlzdCA9IFsi
cG9pbnRlcmVudGVyIiwgInBvaW50ZXJsZWF2ZSIsICJwb2ludGVyb3ZlciIsICJwb2ludGVyb3V0
IiwgInBvaW50ZXJkb3duIl07Ci0gICAgICAgICAgdmFyIG1vdXNlX2V2ZW50X2xpc3QgPSBbIm1v
dXNlZW50ZXIiLCAibW91c2VsZWF2ZSIsICJtb3VzZW92ZXIiLCAibW91c2VvdXQiXTsKLQotICAg
ICAgICAgIHRhcmdldF9saXN0LmZvckVhY2goZnVuY3Rpb24odGFyZ2V0SWQpIHsKLSAgICAgICAg
ICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldElkKTsKLQot
ICAgICAgICAgICAgICBwb2ludGVyX2V2ZW50X2xpc3QuZm9yRWFjaChmdW5jdGlvbihldmVudE5h
bWUpIHsKLSAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldCwgZXZlbnROYW1lLCBmdW5j
dGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgICB2YXIgbGFiZWwgPSBldmVudC50
eXBlICsgIkAiICsgdGFyZ2V0SWQ7Ci0KLSAgICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9w
b2ludGVydHlwZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLQotICAgICAgICAgICAgICAg
ICAgICAgIGlmICghZXZlbnQuaXNQcmltYXJ5KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
IHRlc3QoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X3VucmVhY2hlZCgiTm9uLXByaW1hcnkgcG9pbnRlciAiICsgbGFiZWwpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgICB9LCAiTm9uLXByaW1hcnkgcG9pbnRlciAiICsgbGFiZWwpOwotICAgICAg
ICAgICAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgICAgICAgICAgIGlmIChldmVudC50eXBl
ID09PSAicG9pbnRlcmVudGVyIikgewotICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcG9p
bnRlcl9pZCA9IGV2ZW50LnBvaW50ZXJJZDsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgaWYg
KGN1cnJlbnRfbm9kZV9mb3JfaWRbcG9pbnRlcl9pZF0gIT09IHVuZGVmaW5lZCkgewotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgiRG91YmxlIGVudHJ5ICIgKyBs
YWJlbCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAiRG91YmxlIGVudHJ5ICIg
KyBsYWJlbCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgY3VycmVudF9ub2RlX2Zvcl9pZFtwb2ludGVyX2lkXSA9IGV2ZW50LnRhcmdldDsK
LQotICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUZXN0IHRoYXQgdHdvIGRpZmZlcmVudCBw
b2ludGluZyBkZXZpY2VzIGFyZSB1c2VkCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChm
aXJzdF9lbnRyeV9wb2ludGVyX2lkID09PSAtMSkgewotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZmlyc3RfZW50cnlfcG9pbnRlcl9pZCA9IHBvaW50ZXJfaWQ7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vjb25kX2VudHJ5X3BvaW50ZXJfaWQgPT09IC0xKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRfZW50cnlfcG9pbnRlcl9pZCA9
IHBvaW50ZXJfaWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9u
ICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShmaXJz
dF9lbnRyeV9wb2ludGVyX2lkICE9PSBzZWNvbmRfZW50cnlfcG9pbnRlcl9pZCk7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9LCAiRGlmZmVyZW50IHBvaW50aW5nIGRldmljZXMiKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgIH0gZWxz
ZSBpZiAoZXZlbnQudHlwZSA9PT0gInBvaW50ZXJsZWF2ZSIpIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgdmFyIHBvaW50ZXJfaWQgPSBldmVudC5wb2ludGVySWQ7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIChjdXJyZW50X25vZGVfZm9yX2lkW3BvaW50ZXJfaWRdICE9PSBldmVu
dC50YXJnZXQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24g
KCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQo
IkRvdWJsZSBleGl0ICIgKyBsYWJlbCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
LCAiRG91YmxlIGV4aXQgIiArIGxhYmVsKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50X25vZGVfZm9yX2lkW3BvaW50ZXJfaWRd
ID0gdW5kZWZpbmVkOwotICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgICB9KTsKLQotICAgICAgICAgICAgICBtb3VzZV9ldmVudF9saXN0
LmZvckVhY2goZnVuY3Rpb24oZXZlbnROYW1lKSB7Ci0gICAgICAgICAgICAgICAgICBvbl9ldmVu
dCh0YXJnZXQsIGV2ZW50TmFtZSwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAg
ICAgICAgbG9nX2V2ZW50KGV2ZW50LnR5cGUgKyAiQCIgKyB0YXJnZXRJZCk7Ci0gICAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgfSk7Ci0gICAgICB9Ci0g
ICAgPC9zY3JpcHQ+Ci0gICAgPHN0eWxlPgotICAgICAgI3RhcmdldDAsICN0YXJnZXQxIHsKLSAg
ICAgICAgbWFyZ2luOiAyMHB4OwotICAgICAgfQotCi0gICAgICAjZG9uZSB7Ci0gICAgICAgIG1h
cmdpbjogMjBweDsKLSAgICAgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Ci0gICAgICB9Ci0g
IDwvc3R5bGU+Ci0gIDwvaGVhZD4KLSAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgPGgxPlBv
aW50ZXIgRXZlbnQ6IEJvdW5kYXJ5IGNvbXBhdGliaWxpdHkgZXZlbnRzIGZvciBtdWx0aXBsZSBw
cmltYXJ5IHBvaW50ZXJzPC9oMT4KLSAgICA8aDQ+Ci0gICAgICBXaGVuIG1vcmUgdGhhbiBvbmUg
cHJpbWFyeSBwb2ludGVycyBhcmUgYWN0aXZlLCBlYWNoIHdpbGwgaGF2ZSBhbiBpbmRlcGVuZGVu
dCBzZXF1ZW5jZSBvZiBwb2ludGVyIGJvdW5kYXJ5IGV2ZW50cyBidXQgdGhlIGNvbXBhdGliaWx0
eSBtb3VzZSBib3VuZGFyeSBldmVudHMgaGF2ZSB0aGVpciBvd24gc2VxdWVuY2UuCi0gICAgPC9o
ND4KLSAgICBJbnN0cnVjdGlvbjoKLSAgICA8b2w+Ci0gICAgICA8bGk+TW92ZSB0aGUgbW91c2Ug
ZGlyZWN0bHkgaW50byBUYXJnZXQwICh3aXRob3V0IGdvaW5nIHRocm91Z2ggVGFyZ2V0MSksIGFu
ZCB0aGVuIGxlYXZlIHRoZSBtb3VzZSB0aGVyZSB1bm1vdmVkLjwvbGk+Ci0gICAgICA8bGk+VGFw
IGRpcmVjdGx5IG9uIFRhcmdldDEgd2l0aCBhIGZpbmdlciBvciBhIHN0eWx1cywgYW5kIHRoZW4g
bGlmdCB0aGUgZmluZ2VyL3N0eWx1cyBvZmYgdGhlIHNjcmVlbi9kaWdpdGl6ZXIgd2l0aG91dCBj
cm9zc2luZyBUYXJnZXQxIGJvdW5kYXJ5LjwvbGk+Ci0gICAgICA8bGk+TW92ZSB0aGUgbW91c2Ug
aW50byBUYXJnZXQwIChpZiBub3QgdGhlcmUgYWxyZWFkeSkgYW5kIG1vdmUgaW5zaWRlIGl0Ljwv
bGk+Ci0gICAgICA8bGk+Q2xpY2sgRG9uZSAod2l0aG91dCBwYXNzaW5nIG92ZXIgVGFyZ2V0MSku
PC9saT4KLSAgICA8L29sPgotICAgIDxkaXYgaWQ9ImRvbmUiPgotICAgICAgRG9uZQotICAgIDwv
ZGl2PgotICAgIDxkaXYgaWQ9InRhcmdldDAiPgotICAgICAgVGFyZ2V0MAotICAgIDwvZGl2Pgot
ICAgIDxkaXYgaWQ9InRhcmdldDEiPgotICAgICAgVGFyZ2V0MQotICAgIDwvZGl2PgotICAgIDxk
aXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIg
dHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48
L3A+Ci0gICAgICA8cD5UaGUgZm9sbG93aW5nIGV2ZW50cyB3ZXJlIGxvZ2dlZDogPHNwYW4gaWQ9
ImV2ZW50LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgPC9kaXY+Ci0gICAgPGRpdiBpZD0ibG9nIj48
L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9wb2lu
dGVySWRfc2NvcGUtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3BvaW50ZXJJZF9zY29wZS1t
YW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzY0MGNiNmY2YmJhNjdi
NTFmOTZjODU3YTRkZWI4MTFhNDk1ODQ1ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3BvaW50ZXJJZF9zY29wZS1tYW51YWwuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDgyICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPCEtLQotVGVzdCBjYXNlcyBmb3IgUG9pbnRlciBFdmVudHMgdjEgc3BlYwotVGhpcyBk
b2N1bWVudCByZWZlcmVuY2VzIFRlc3QgQXNzZXJ0aW9ucyAoYWJicmV2IFRBIGJlbG93KSB3cml0
dGVuIGJ5IENhdGh5IENoYW4KLWh0dHA6Ly93d3cudzMub3JnL3dpa2kvUG9pbnRlckV2ZW50cy9U
ZXN0QXNzZXJ0aW9ucwotLS0+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2
ZW50cyBwb2ludGVyZG93biB0ZXN0czwvdGl0bGU+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdw
b3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0
eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+
Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Njcmlw
dD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgotICAgICAgICA8IS0tIEFkZGl0aW9uYWwgaGVscGVyIHNjcmlwdCBmb3IgY29t
bW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQgdHlwZXMgLS0+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0IiBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4K
LSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMg
PSB7fTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJFdmVudCA9IGFzeW5jX3Rlc3QoInBv
aW50ZXJJZCBvZiBhbiBhY3RpdmUgcG9pbnRlciBpcyB0aGUgc2FtZSBhY3Jvc3MgaWZyYW1lcyIp
OwotICAgICAgICAgICAgLy8gc2hvd1BvaW50ZXJUeXBlcyBpcyBkZWZpbmVkIGluIHBvaW50ZXJl
dmVudF9zdXBwb3J0LmpzCi0gICAgICAgICAgICAvLyBSZXF1aXJlbWVudHM6IHRoZSBjYWxsYmFj
ayBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgdGVzdF9wb2ludGVyRXZlbnQgb2JqZWN0IGFu
ZAotICAgICAgICAgICAgLy8gd2lsbCBmYWlsIHVubGVzcyB0aGUgYXN5bmNfdGVzdCBpcyBjcmVh
dGVkIHdpdGggdGhlIHZhciBuYW1lICJ0ZXN0X3BvaW50ZXJFdmVudCIuCi0gICAgICAgICAgICBh
ZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9pbnRlclR5cGVzKTsKLSAgICAgICAgICAgIHZh
ciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVu
KCkgewotICAgICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInRhcmdldDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgcG9pbnRlcm92ZXJfcG9pbnRlcklk
ID0gbnVsbDsKLSAgICAgICAgICAgICAgICB2YXIgcG9pbnRlcm92ZXJfcG9pbnRlclR5cGUgPSBu
dWxsOwotCi0gICAgICAgICAgICAgICAgdmFyIGV2ZW50TGlzdCA9IFsncG9pbnRlcmVudGVyJywg
J3BvaW50ZXJvdmVyJywgJ3BvaW50ZXJtb3ZlJywgJ3BvaW50ZXJvdXQnLCAncG9pbnRlcmxlYXZl
J107Ci0gICAgICAgICAgICAgICAgdmFyIHJlY2VpdmVkRXZlbnRzID0ge307Ci0gICAgICAgICAg
ICAgICAgdmFyIHJlY2VpdmVkRXZlbnRzSW5uZXJGcmFtZSA9IHt9OwotCi0KLSAgICAgICAgICAg
ICAgICBmdW5jdGlvbiBjaGVja1BvaW50ZXJJZChldmVudCwgaW5uZXIpIHsKLSAgICAgICAgICAg
ICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7
Ci0gICAgICAgICAgICAgICAgICAgIHZhciBldmVudE5hbWUgPSAoaW5uZXIgPyAiaW5uZXIgZnJh
bWUgIiA6ICIiICkgKyBldmVudC50eXBlOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50
ZXJFdmVudC5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5wb2ludGVySWQsIHBvaW50ZXJvdmVyX3BvaW50ZXJJZCwgIlBvaW50ZXJJ
ZCBvZiAiICsgZXZlbnROYW1lICsgIiBpcyBub3QgY29ycmVjdCIpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC5wb2ludGVyVHlwZSwgcG9pbnRlcm92ZXJfcG9p
bnRlclR5cGUsICJQb2ludGVyVHlwZSBvZiAiICsgZXZlbnROYW1lICsgIiBpcyBub3QgY29ycmVj
dCIpOwotICAgICAgICAgICAgICAgICAgICB9LCBldmVudE5hbWUgKyAiLnBvaW50ZXJJZCB3ZXJl
IHRoZSBzYW1lIGFzIGZpcnN0IHBvaW50ZXJvdmVyIik7Ci0gICAgICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICAgICAgb25fZXZlbnQod2luZG93LCAibWVzc2FnZSIsIGZ1bmN0aW9uKGV2ZW50
KSB7Ci0gICAgICAgICAgICAgICAgICAgIHZhciBwZV9ldmVudCA9IEpTT04ucGFyc2UoZXZlbnQu
ZGF0YSk7Ci0gICAgICAgICAgICAgICAgICAgIHJlY2VpdmVkRXZlbnRzSW5uZXJGcmFtZVtwZV9l
dmVudC50eXBlXSA9IDE7Ci0gICAgICAgICAgICAgICAgICAgIGNoZWNrUG9pbnRlcklkKHBlX2V2
ZW50LCB0cnVlKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKHJlY2VpdmVk
RXZlbnRzKS5sZW5ndGggPT0gZXZlbnRMaXN0Lmxlbmd0aCAmJiBPYmplY3Qua2V5cyhyZWNlaXZl
ZEV2ZW50c0lubmVyRnJhbWUpLmxlbmd0aCA9PSBldmVudExpc3QubGVuZ3RoKQotICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuZG9uZSgpOwotICAgICAgICAgICAgICAg
IH0pOwotCi0gICAgICAgICAgICAgICAgZXZlbnRMaXN0LmZvckVhY2goZnVuY3Rpb24oZXZlbnRO
YW1lKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsIGV2ZW50TmFtZSwg
ZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAocG9pbnRlcm92
ZXJfcG9pbnRlcklkID09PSBudWxsICYmIGV2ZW50LnR5cGUgPT0gJ3BvaW50ZXJvdmVyJykgewot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXJvdmVyX3BvaW50ZXJJZCA9IGV2ZW50
LnBvaW50ZXJJZDsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyb3Zlcl9wb2lu
dGVyVHlwZSA9IGV2ZW50LnBvaW50ZXJUeXBlOwotICAgICAgICAgICAgICAgICAgICAgICAgfSBl
bHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja1BvaW50ZXJJZChldmVudCwg
ZmFsc2UpOwotICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAg
ICAgcmVjZWl2ZWRFdmVudHNbZXZlbnQudHlwZV0gPSAxOwotICAgICAgICAgICAgICAgICAgICB9
KTsKLSAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4K
LSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2lu
dGVyIEV2ZW50cyBwb2ludGVyZG93biB0ZXN0czwvaDE+Ci0gICAgICAgIENvbXBsZXRlIHRoZSBm
b2xsb3dpbmcgYWN0aW9uczoKLSAgICAgICAgPG9sPgotICAgICAgICAgICAgPGxpPlN0YXJ0IHdp
dGggeW91ciBwb2ludGluZyBkZXZpY2Ugb3V0c2lkZSBvZiBibGFjayBib3gsIHRoZW4gbW92ZSBp
dCBpbnRvIGJsYWNrIGJveC4gSWYgdXNpbmcgdG91Y2gganVzdCBwcmVzcyBpbiBibGFjayBib3gg
YW5kIGRvbid0IHJlbGVhc2UuCi0gICAgICAgICAgICA8bGk+TW92ZSB5b3VyIHBvaW50aW5nIGRl
dmljZSBpbnRvIHB1cnBsZSBib3ggKHdpdGhvdXQgbGVhdmluZyB0aGUgZGlnaXRpemVyIHJhbmdl
IGlmIHlvdSBhcmUgdXNpbmcgaG92ZXIgc3VwcG9ydGVkIHBlbiBvciB3aXRob3V0IHJlbGVhc2lu
ZyB0b3VjaCBpZiB1c2luZyB0b3VjaCkuIFRoZW4gbW92ZSBpdCBvdXQgb2YgdGhlIHB1cnBsZSBi
b3guCi0gICAgICAgIDwvb2w+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiIGNsYXNzPSJ0b3Vj
aEFjdGlvbk5vbmUiPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGlmcmFtZSBzcmM9InJlc291
cmNlcy9wb2ludGVyZXZlbnRfcG9pbnRlcklkX3Njb3BlLWlmcmFtZS5odG1sIiBpZD0iaW5uZXJm
cmFtZSI+PC9pZnJhbWU+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAg
ICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNw
YW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICAgICAgICA8cD5SZWZy
ZXNoIHRoZSBwYWdlIHRvIHJ1biB0aGUgdGVzdHMgYWdhaW4gd2l0aCBhIGRpZmZlcmVudCBwb2lu
dGVyIHR5cGUuPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rp
dj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3BvaW50
ZXJsZWF2ZV9wZW4tbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3BvaW50ZXJsZWF2ZV9wZW4t
bWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJiNmRjYzQyMzZiMGNj
NTE4Mzg1NTI3NWQ4NTIwOGRiNjQ2MGE1Y2IuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9wb2ludGVybGVhdmVfcGVuLW1hbnVhbC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlBvaW50ZXIgRXZlbnQ6IERpc3BhdGNoIHBv
aW50ZXJsZWF2ZSAocGVuKS4gPC90aXRsZT4KLSAgICAgICAgPG1ldGEgY29udGVudD0idGV4dC9o
dG1sOyBjaGFyc2V0PVVURi04IiBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiLz4KLSAgICAgICAg
PGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJNaWNyb3NvZnQiIGhyZWY9Imh0dHA6Ly93d3cubWlj
cm9zb2Z0LmNvbS8iLz4KLSAgICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJXaGVu
IGEgcG9pbnRpbmcgZGV2aWNlIHRoYXQgc3VwcG9ydHMgaG92ZXIgKHBlbiBzdHlsdXMpIGxlYXZl
cyB0aGUgcmFuZ2Ugb2YgdGhlIGRpZ2l0aXplciB3aGlsZSBvdmVyIGFuIGVsZW1lbnQsIHRoZSBw
b2ludGVybGVhdmUgZXZlbnQgbXVzdCBiZSBkaXNwYXRjaGVkLiIvPgotICAgICAgICA8bGluayBy
ZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVz
LmNzcyI+Ci0gICAgICAgIDwhLS0gL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyAtLT4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDwhLS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24gY2hl
Y2tzIGFjcm9zcyBldmVudCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIHNyYz0icG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0
ZWRfcG9pbnRlcnR5cGVzID0ge307Ci0gICAgICAgICAgICB2YXIgdGVzdF9wb2ludGVyRXZlbnQg
PSBhc3luY190ZXN0KCJwb2ludGVybGVhdmUgZXZlbnQiKTsgLy8gc2V0IHVwIHRlc3QgaGFybmVz
cwotICAgICAgICAgICAgLy8gc2hvd1BvaW50ZXJUeXBlcyBpcyBkZWZpbmVkIGluIHBvaW50ZXJl
dmVudF9zdXBwb3J0LmpzCi0gICAgICAgICAgICAvLyBSZXF1aXJlbWVudHM6IHRoZSBjYWxsYmFj
ayBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgdGVzdF9wb2ludGVyRXZlbnQgb2JqZWN0IGFu
ZAotICAgICAgICAgICAgLy8gd2lsbCBmYWlsIHVubGVzcyB0aGUgYXN5bmNfdGVzdCBpcyBjcmVh
dGVkIHdpdGggdGhlIHZhciBuYW1lICJ0ZXN0X3BvaW50ZXJFdmVudCIuCi0gICAgICAgICAgICBh
ZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9pbnRlclR5cGVzKTsKLQotICAgICAgICAgICAg
ZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgY291bnQgPSAw
OwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJlbnRlciIsIGZ1
bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5z
dGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
ZXZlbnQucG9pbnRlclR5cGUsICJwZW4iLCAiVGVzdCBzaG91bGQgYmUgcnVuIHVzaW5nIGEgcGVu
IGFzIGlucHV0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGV2ZW50
LnR5cGUsICJwb2ludGVyZW50ZXIiLCAiVGhlICIgKyBldmVudC50eXBlICsgIiBldmVudCB3YXMg
cmVjZWl2ZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZXZlbnQu
aXNQcmltYXJ5LCB0cnVlLCAiVGhlICIgKyBldmVudC50eXBlICsgIi5pc1ByaW1hcnkgaXMgdHJ1
ZSIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLQotICAg
ICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVybGVhdmUiLCBmdW5jdGlvbiAo
ZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgY291bnQrKzsKLSAgICAgICAgICAgICAgICAg
ICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAg
ICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PSAxKQotICAgICAgICAgICAgICAgICAgICAgICAg
Y2hlY2tfUG9pbnRlckV2ZW50KGV2ZW50KTsKLQotICAgICAgICAgICAgICAgICAgICB0ZXN0X3Bv
aW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHMoZXZlbnQucG9pbnRlclR5cGUsICJwZW4iLCAiVGVzdCBzaG91bGQgYmUgcnVu
IHVzaW5nIGEgcGVuIGFzIGlucHV0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKGV2ZW50LnR5cGUsICJwb2ludGVybGVhdmUiLCAiVGhlICIgKyBldmVudC50eXBlICsg
IiBldmVudCB3YXMgcmVjZWl2ZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9l
cXVhbHMoZXZlbnQuaXNQcmltYXJ5LCB0cnVlLCAiVGhlICIgKyBldmVudC50eXBlICsgIi5pc1By
aW1hcnkgaXMgdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoKGV2
ZW50LmNsaWVudFggPiB0YXJnZXQwLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQpJiYKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnQuY2xpZW50WCA8IHRhcmdldDAuZ2V0Qm91
bmRpbmdDbGllbnRSZWN0KCkucmlnaHQpJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAo
ZXZlbnQuY2xpZW50WSA+IHRhcmdldDAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wKSYmCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGV2ZW50LmNsaWVudFkgPCB0YXJnZXQwLmdldEJv
dW5kaW5nQ2xpZW50UmVjdCgpLmJvdHRvbSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
InBvaW50ZXJsZWF2ZSBzaG91bGQgYmUgcmVjZWl2ZWQgaW5zaWRlIG9mIHRhcmdldCBib3VuZHMi
KTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChjb3Vu
dCA+PSAyKQotICAgICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LmRvbmUoKTsg
Ly8gY29tcGxldGUgdGVzdAotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAg
ICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0g
ICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50OiBEaXNwYXRjaCBwb2ludGVybGVhdmUgKHBlbik8L2gx
PgotICAgICAgICA8aDQ+Ci0gICAgICAgICAgICBUZXN0IERlc2NyaXB0aW9uOgotICAgICAgICAg
ICAgV2hlbiBhIHBvaW50aW5nIGRldmljZSB0aGF0IHN1cHBvcnRzIGhvdmVyIChwZW4gc3R5bHVz
KSBsZWF2ZXMgdGhlIHJhbmdlIG9mIHRoZSBkaWdpdGl6ZXIgd2hpbGUgb3ZlciBhbiBlbGVtZW50
LCB0aGUgcG9pbnRlcmxlYXZlIGV2ZW50IG11c3QgYmUgZGlzcGF0Y2hlZC4gSW4gYWRkaXRpb24s
IGFsbCB0aGUgcG9pbnRlciBldmVudHMnIGlzUHJpbWFyeSBzaG91bGQgYWx3YXlzIGJlIHRydWUg
d2hlbiB0aGUgcG9pbnRpbmcgZGV2aWNlIGxlYXZlcyBhbmQgZW50ZXJzIHRoZSByYW5nZSBvZiB0
aGUgZGlnaXRpemVyIGFnYWluLiAKLSAgICAgICAgPC9oND4KLSAgICAgICAgPGJyIC8+Ci0gICAg
ICAgIDxkaXYgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgVXNlIGEgcGVuIHRvIGhvdmVyIG92
ZXIgdGhlbiBsaWZ0IHVwIGF3YXkgZnJvbSB0aGlzIGVsZW1lbnQsIGFuZCByZXBlYXQgaXQgYWdh
aW4uCi0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgot
ICAgICAgICAgICAgPHA+VGVzdCBjb21wbGV0ZTogU2Nyb2xsIHRvIFN1bW1hcnkgdG8gdmlldyBQ
YXNzL0ZhaWwgUmVzdWx0cy48L3A+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50
ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFu
Pi48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAg
IDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfcmVsZWFzZXBvaW50
ZXJjYXB0dXJlX2V2ZW50c190b19vcmlnaW5hbF90YXJnZXQtbWFudWFsLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRl
cmV2ZW50X3JlbGVhc2Vwb2ludGVyY2FwdHVyZV9ldmVudHNfdG9fb3JpZ2luYWxfdGFyZ2V0LW1h
bnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4OWYzZDgzOWY0NmQ5OTgy
MTMwZDZhZWMzYzljMGVkNzU4NjJiZmE0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfcmVsZWFzZXBvaW50ZXJjYXB0dXJlX2V2ZW50
c190b19vcmlnaW5hbF90YXJnZXQtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMzcg
KzAsMCBAQAot77u/PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHRpdGxlPlBvaW50ZXIgRXZlbnQ6IHJlbGVhc2VQb2ludGVyQ2FwdHVyZSgpIC0gc3Vic2VxdWVu
dCBldmVudHMgZm9sbG93IG5vcm1hbCBoaXR0aW5nIHRlc3RpbmcgbWVjaGFuaXNtczwvdGl0bGU+
Ci0gICAgICAgIDxtZXRhIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgaHR0cC1l
cXVpdj0iQ29udGVudC1UeXBlIi8+Ci0gICAgICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0i
TWljcm9zb2Z0IiBocmVmPSJodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vIi8+Ci0gICAgICAgIDxt
ZXRhIG5hbWU9ImFzc2VydCIgY29udGVudD0iQWZ0ZXIgaW52b2tpbmcgdGhlIHJlbGVhc2VQb2lu
dGVyQ2FwdHVyZSBtZXRob2Qgb24gYW4gZWxlbWVudCwgc3Vic2VxdWVudCBldmVudHMgZm9yIHRo
ZSBzcGVjaWZpZWQgcG9pbnRlciBtdXN0IGZvbGxvdyBub3JtYWwgaGl0IHRlc3RpbmcgbWVjaGFu
aXNtcyBmb3IgZGV0ZXJtaW5pbmcgdGhlIGV2ZW50IHRhcmdldCIvPgotICAgICAgICA8bGluayBy
ZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVz
LmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48
L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBv
cnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8IS0tIEFkZGl0aW9uYWwgaGVscGVyIHNjcmlwdCBm
b3IgY29tbW9uIGNoZWNrcyBhY3Jvc3MgZXZlbnQgdHlwZXMgLS0+Ci0gICAgICAgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3Nj
cmlwdD4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICAg
ICAgdmFyIHRlc3RfcG9pbnRlckV2ZW50OwotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50
ZXJ0eXBlcyA9IHt9OwotICAgICAgICAgICAgdmFyIGNhcHR1cmVkX2V2ZW50ID0gbnVsbDsKLSAg
ICAgICAgICAgIHZhciB0ZXN0X2RvbmUgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciBvdmVyRW50
ZXJFdmVudHNGYWlsID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgb3V0TGVhdmVFdmVudHNGYWls
ID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgZl9nb3RQb2ludGVyQ2FwdHVyZSA9IGZhbHNlOwot
ICAgICAgICAgICAgdmFyIGZfbG9zdFBvaW50ZXJDYXB0dXJlID0gZmFsc2U7Ci0KLSAgICAgICAg
ICAgIGZ1bmN0aW9uIHJlc2V0VGVzdFN0YXRlKCkgewotICAgICAgICAgICAgICBjYXB0dXJlZF9l
dmVudCA9IG51bGw7Ci0gICAgICAgICAgICAgIHRlc3RfZG9uZSA9IGZhbHNlOwotICAgICAgICAg
ICAgICBvdmVyRW50ZXJFdmVudHNGYWlsID0gZmFsc2U7Ci0gICAgICAgICAgICAgIG91dExlYXZl
RXZlbnRzRmFpbCA9IGZhbHNlOwotICAgICAgICAgICAgICBmX2dvdFBvaW50ZXJDYXB0dXJlID0g
ZmFsc2U7Ci0gICAgICAgICAgICAgIGZfbG9zdFBvaW50ZXJDYXB0dXJlID0gZmFsc2U7Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGxpc3RlbmVyRXZlbnRIYW5kbGVyKGV2
ZW50KSB7Ci0gICAgICAgICAgICAgICAgaWYgKHRlc3RfZG9uZSkKLSAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5w
b2ludGVyVHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgIGlmIChldmVudC50eXBlID09ICJn
b3Rwb2ludGVyY2FwdHVyZSIpIHsKLSAgICAgICAgICAgICAgICAgICAgZl9nb3RQb2ludGVyQ2Fw
dHVyZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIGNoZWNrX1BvaW50ZXJFdmVudChldmVu
dCk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGV2ZW50LnR5
cGUgPT0gImxvc3Rwb2ludGVyY2FwdHVyZSIpIHsKLSAgICAgICAgICAgICAgICAgICAgZl9sb3N0
UG9pbnRlckNhcHR1cmUgPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICBmX2dvdFBvaW50ZXJD
YXB0dXJlID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIGNoZWNrX1BvaW50ZXJFdmVudChl
dmVudCk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVsc2UgaWYoZXZlbnQu
dHlwZSA9PSAicG9pbnRlcm92ZXIiIHx8IGV2ZW50LnR5cGUgPT0gInBvaW50ZXJlbnRlciIpIHsK
LSAgICAgICAgICAgICAgICAgICAgaWYoY2FwdHVyZWRfZXZlbnQgJiYgIW92ZXJFbnRlckV2ZW50
c0ZhaWwpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QoZnVuY3Rpb24oKSB7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2ZhbHNlKGZfZ290UG9pbnRlckNhcHR1cmUs
ICJwb2ludGVyb3Zlci9lbnRlciBzaG91bGQgYmUgcmVjZWl2ZWQgYmVmb3JlIHRoZSB0YXJnZXQg
cmVjZWl2ZXMgZ290cG9pbnRlcmNhcHR1cmUgZXZlbiB3aGVuIHRoZSBwb2ludGVyIGlzIG5vdCBv
dmVyIGl0LiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSwgZXhwZWN0ZWRQb2ludGVyVHlw
ZSArICIgcG9pbnRlcm92ZXIvZW50ZXIgc2hvdWxkIGJlIHJlY2VpdmVkIGJlZm9yZSB0aGUgdGFy
Z2V0IHJlY2VpdmVzIGdvdHBvaW50ZXJjYXB0dXJlIGV2ZW4gd2hlbiB0aGUgcG9pbnRlciBpcyBu
b3Qgb3ZlciBpdC4iKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJFbnRlckV2ZW50c0Zh
aWwgPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgIGVsc2UgaWYoZXZlbnQudHlwZSA9PSAicG9pbnRlcm91dCIgfHwgZXZlbnQu
dHlwZSA9PSAicG9pbnRlcmxlYXZlIikgewotICAgICAgICAgICAgICAgICAgICBpZighb3V0TGVh
dmVFdmVudHNGYWlsKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uKCkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKGZfbG9zdFBvaW50ZXJD
YXB0dXJlLCAicG9pbnRlcm91dC9sZWF2ZSBzaG91bGQgbm90IGJlIHJlY2VpdmVkIHVubGVzcyB0
aGUgdGFyZ2V0IGp1c3QgbG9zdCB0aGUgY2FwdHVyZS4iKTsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUgKyAiIHBvaW50ZXJvdXQvbGVhdmUgc2hvdWxkIG5v
dCBiZSByZWNlaXZlZCB1bmxlc3MgdGhlIHRhcmdldCBqdXN0IGxvc3QgdGhlIGNhcHR1cmUuIik7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBvdXRMZWF2ZUV2ZW50c0ZhaWwgPSB0cnVlOwotICAg
ICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVs
c2UgaWYgKGV2ZW50LnBvaW50ZXJJZCA9PSBjYXB0dXJlZF9ldmVudC5wb2ludGVySWQpIHsKLSAg
ICAgICAgICAgICAgICAgICAgaWYgKGZfZ290UG9pbnRlckNhcHR1cmUgJiYgZXZlbnQudHlwZSA9
PSAicG9pbnRlcm1vdmUiKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAvLyBvbiBmaXJzdCBl
dmVudCByZWNlaXZlZCBmb3IgY2FwdHVyZSwgcmVsZWFzZSBjYXB0dXJlCi0gICAgICAgICAgICAg
ICAgICAgICAgICBsaXN0ZW5lci5yZWxlYXNlUG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklk
KTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBlbHNlIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIGFueSBvdGhlciBldmVudHMgYXJlIHJlY2VpdmVk
IGFmdGVyIHJlbGVhc2VDYXB0dXJlLCB0aGVuIHRoZSB0ZXN0IGZhaWxzCi0gICAgICAgICAgICAg
ICAgICAgICAgICB0ZXN0KGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhc3NlcnRfdW5yZWFjaGVkKGV2ZW50LnRhcmdldC5pZCArICItIiArIGV2ZW50LnR5cGUgKyAi
IHNob3VsZCBiZSBoYW5kbGVkIGJ5IHRhcmdldCBlbGVtZW50IGhhbmRsZXIiKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUgKyAiIE5vIG90aGVyIGV2ZW50
cyBzaG91bGQgYmUgcmVjaWV2ZWQgYnkgY2FwdHVyaW5nIG5vZGUgYWZ0ZXIgcmVsZWFzZSIpOwot
ICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBmdW5jdGlvbiB0YXJnZXRFdmVudEhhbmRsZXIoZXZlbnQpIHsKLSAgICAg
ICAgICAgICAgICBpZiAodGVzdF9kb25lKQotICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0g
ICAgICAgICAgICAgICAgaWYgKGZfZ290UG9pbnRlckNhcHR1cmUpIHsKLSAgICAgICAgICAgICAg
ICAgICAgaWYoZXZlbnQudHlwZSAhPSAicG9pbnRlcm91dCIgJiYgZXZlbnQudHlwZSAhPSAicG9p
bnRlcmxlYXZlIikgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdChmdW5jdGlvbiAoKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3VucmVhY2hlZCgiVGhlIFRhcmdl
dCBlbGVtZW50IHNob3VsZCBub3QgaGF2ZSByZWNlaXZlZCBhbnkgZXZlbnRzIHdoaWxlIGNhcHR1
cmUgaXMgYWN0aXZlLiBFdmVudCByZWNpZXZlZDoiICsgZXZlbnQudHlwZSArICIuICAiKTsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIH0sIGV4cGVjdGVkUG9pbnRlclR5cGUgKyAiIFRoZSB0YXJn
ZXQgZWxlbWVudCBzaG91bGQgbm90IHJlY2VpdmUgYW55IGV2ZW50cyB3aGlsZSBjYXB0dXJlIGlz
IGFjdGl2ZSIpOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT0gInBvaW50ZXJkb3duIikgewotICAgICAg
ICAgICAgICAgICAgICAvLyBwb2ludGVyZG93biBldmVudCByZWNlaXZlZCB3aWxsIGJlIHVzZWQg
dG8gY2FwdHVyZSBldmVudHMuCi0gICAgICAgICAgICAgICAgICAgIGxpc3RlbmVyLnNldFBvaW50
ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICAgIGNhcHR1cmVk
X2V2ZW50ID0gZXZlbnQ7Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgaWYg
KGZfbG9zdFBvaW50ZXJDYXB0dXJlKSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfcG9pbnRl
ckV2ZW50LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhldmVudC5wb2ludGVySWQsIGNhcHR1cmVkX2V2ZW50LnBvaW50ZXJJZCwgInBvaW50
ZXJJRCBpcyBzYW1lIGZvciBldmVudCBjYXB0dXJlZCBhbmQgYWZ0ZXIgcmVsZWFzZSIpOwotICAg
ICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50LnR5cGUg
PT0gInBvaW50ZXJ1cCIpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfZG9uZSA9IHRy
dWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5kb25lKCk7IC8v
IGNvbXBsZXRlIHRlc3QKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAg
ICAgICAgIHRlc3RfcG9pbnRlckV2ZW50ID0gc2V0dXBfcG9pbnRlcmV2ZW50X3Rlc3QoImdvdC9s
b3N0IHBvaW50ZXJjYXB0dXJlOiBzdWJzZXF1ZW50IGV2ZW50cyB0byB0YXJnZXQiLCBBTExfUE9J
TlRFUlMpOyAgLy8gc2V0IHVwIHRlc3QgaGFybmVzcwotICAgICAgICAgICAgICAgIHZhciBsaXN0
ZW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsaXN0ZW5lciIpOwotICAgICAgICAgICAg
ICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLSAg
ICAgICAgICAgICAgICB0YXJnZXQwLnN0eWxlWyJ0b3VjaEFjdGlvbiJdID0gIm5vbmUiOwotCi0g
ICAgICAgICAgICAgICAgLy8gdGFyZ2V0MCBhbmQgbGlzdGVuZXIgLSBoYW5kbGUgYWxsIGV2ZW50
cwotICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgQWxsX1BvaW50ZXJfRXZlbnRz
Lmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsIEFs
bF9Qb2ludGVyX0V2ZW50c1tpXSwgdGFyZ2V0RXZlbnRIYW5kbGVyKTsKLSAgICAgICAgICAgICAg
ICAgICAgb25fZXZlbnQobGlzdGVuZXIsIEFsbF9Qb2ludGVyX0V2ZW50c1tpXSwgbGlzdGVuZXJF
dmVudEhhbmRsZXIpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAg
PC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAg
ICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxkaXYgaWQ9
Imxpc3RlbmVyIj48L2Rpdj4KLSAgICAgICAgPGgxPlBvaW50ZXIgRXZlbnQ6IHJlbGVhc2VQb2lu
dGVyQ2FwdHVyZSgpIC0gc3Vic2VxdWVudCBldmVudHMgZm9sbG93IG5vcm1hbCBoaXR0aW5nIHRl
c3RpbmcgbWVjaGFuaXNtczwvaDE+Ci0gICAgICAgIDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVz
Y3JpcHRpb246Ci0gICAgICAgICAgICBVc2UgeW91ciBwb2ludGVyIGFuZCBwcmVzcyBkb3duIGlu
IHRoZSBibGFjayBib3guIFRoZW4gbW92ZSBhcm91bmQgaW4gdGhlIGJveCBhbmQgcmVsZWFzZSB5
b3VyIHBvaW50ZXIuCi0gICAgICAgICAgICBBZnRlciBpbnZva2luZyB0aGUgcmVsZWFzZVBvaW50
ZXJDYXB0dXJlIG1ldGhvZCBvbiBhbiBlbGVtZW50LCBzdWJzZXF1ZW50IGV2ZW50cyBmb3IgdGhl
IHNwZWNpZmllZAotICAgICAgICAgICAgcG9pbnRlciBtdXN0IGZvbGxvdyBub3JtYWwgaGl0IHRl
c3RpbmcgbWVjaGFuaXNtcyBmb3IgZGV0ZXJtaW5pbmcgdGhlIGV2ZW50IHRhcmdldC4KLSAgICAg
ICAgPC9oND4KLSAgICAgICAgPGJyIC8+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiPgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAg
ICAgIDxwPlRlc3QgY29tcGxldGU6ICBTY3JvbGwgdG8gU3VtbWFyeSB0byB2aWV3IFBhc3MvRmFp
bCBSZXN1bHRzLjwvcD4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBl
cyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4K
LSAgICAgICAgICAgIDxwPlJlZnJlc2ggdGhlIHBhZ2UgdG8gcnVuIHRoZSB0ZXN0cyBhZ2FpbiB3
aXRoIGEgZGlmZmVyZW50IHBvaW50ZXIgdHlwZS48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAg
ICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9wb2ludGVyZXZlbnRfcmVsZWFzZXBvaW50ZXJjYXB0dXJlX3JlbGVhc2VfcmlnaHRfYWZ0ZXJf
Y2FwdHVyZS1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfcmVsZWFzZXBvaW50ZXJjYXB0dXJl
X3JlbGVhc2VfcmlnaHRfYWZ0ZXJfY2FwdHVyZS1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOGY2NGI5MjA4NzMyZGE1MTk5ZGM5MzRiM2MxNmJlZTBjMDg4MTQ2ZS4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X3JlbGVhc2Vwb2ludGVyY2FwdHVyZV9yZWxlYXNlX3JpZ2h0X2FmdGVyX2NhcHR1cmUtbWFu
dWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4K
LTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+UmVsZWFzZSBwb2ludGVyIGNhcHR1
cmUgcmlnaHQgYWZ0ZXIgc2V0cG9pbnRlcmNhcHR1cmU8L3RpdGxlPgotICAgICAgICA8bWV0YSBu
YW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0
eWxlcy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5q
cyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBvaW50ZXJldmVudF9z
dXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAgICAg
ICAgICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50ZXJUeXBlcyk7Ci0gICAgICAg
ICAgICB2YXIgdGVzdF9zZXRQb2ludGVyQ2FwdHVyZSA9IGFzeW5jX3Rlc3QoIlJlbGVhc2UgcG9p
bnRlciBjYXB0dXJlIHJpZ2h0IGFmdGVyIHNldHBvaW50ZXJjYXB0dXJlIik7Ci0KLSAgICAgICAg
ICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdl
dDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MSIpOwotCi0gICAgICAgICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJkb3duIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0g
ICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlw
ZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB0YXJnZXQwLnNldFBvaW50ZXJDYXB0dXJl
KGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICAgIHRhcmdldDAucmVsZWFzZVBv
aW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHModGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpLCBmYWxz
ZSwgIkFmdGVyIHRhcmdldDAucmVsZWFzZVBvaW50ZXJDYXB0dXJlLCB0YXJnZXQwLmhhc1BvaW50
ZXJDYXB0dXJlIHNob3VsZCBiZSBmYWxzZSIpOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAg
ICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgImdvdHBvaW50ZXJjYXB0dXJlIiwgZnVuY3Rp
b24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rfc2V0UG9pbnRlckNhcHR1cmUu
c3RlcChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShm
YWxzZSwgInRhcmdldDAgc2hvdWxkbid0IHJlY2VpdmUgZ290cG9pbnRlcmNhcHR1cmUiKTsKLSAg
ICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAg
ICAgICBvbl9ldmVudCh0YXJnZXQwLCAibG9zdHBvaW50ZXJjYXB0dXJlIiwgZnVuY3Rpb24gKGV2
ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rfc2V0UG9pbnRlckNhcHR1cmUuc3RlcChm
dW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShmYWxzZSwg
InRhcmdldDAgc2hvdWxkbid0IHJlY2VpdmUgbG9zdHBvaW50ZXJjYXB0dXJlIik7Ci0gICAgICAg
ICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAg
b25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJ1cCIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAg
ICAgICAgICAgICAgICB0ZXN0X3NldFBvaW50ZXJDYXB0dXJlLmRvbmUoKTsKLSAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UmVsZWFzZSBwb2ludGVyIGNh
cHR1cmUgcmlnaHQgYWZ0ZXIgc2V0cG9pbnRlcmNhcHR1cmU8L2gxPgotICAgICAgICA8aDQ+VGVz
dCBEZXNjcmlwdGlvbjoKLSAgICAgICAgICAgIFdoZW4gY2FsbGluZyByZWxlYXNlUG9pbnRlciBy
aWdodCBhZnRlciBzZXRQb2ludGVyQ2FwdHVyZSBtZXRob2QgaXMgaW52b2tlZCwgdGhlIHBlbmRp
bmcgcG9pbnRlciBjYXB0dXJlIHNob3VsZCBiZSBjbGVhcmVkIGFuZCBubyBlbGVtZW50IHNob3Vs
ZCByZWNlaXZlIGdvdHBvaW50ZXJjYXB0dXJlIGFuZCBsb3N0cG9pbnRlcmNhcHR1cmUgZXZlbnRz
Ci0gICAgICAgICAgICA8b2w+Ci0gICAgICAgICAgICAgICAgPGxpPlByZXNzIGFuZCBob2xkIGxl
ZnQgbW91c2UgYnV0dG9uIG92ZXIgYmxhY2sgYm94Ci0gICAgICAgICAgICAgICAgPGxpPk1vdmUg
bW91c2UgYW5kIHJlbGVhc2UgbW91c2UgYnV0dG9uCi0gICAgICAgICAgICA8L29sPgotICAgICAg
ICA8L2g0PgotICAgICAgICA8YnI+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiIHRvdWNoLWFj
dGlvbjpub25lPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQxIiB0b3VjaC1hY3Rpb246
bm9uZT48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAg
ICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBp
ZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAg
IDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJldmVudF9zZXF1ZW5jZV9hdF9pbXBsaWNpdF9yZWxlYXNlX29uX2NsaWNrLW1hbnVh
bC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF9zZXF1ZW5jZV9hdF9pbXBsaWNpdF9yZWxlYXNlX29uX2Ns
aWNrLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjkzYzg0N2Vk
MjE2NjUzODkxZDAwY2Y1NWI1YjAwZTQxNDI0YjUwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2VxdWVuY2VfYXRfaW1wbGljaXRf
cmVsZWFzZV9vbl9jbGljay1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDgzICswLDAg
QEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0aXRsZT5Qb2ludGVy
IEV2ZW50OiBFdmVudCBzZXF1ZW5jZSBhdCBpbXBsaWNpdCByZWxlYXNlIG9uIGNsaWNrPC90aXRs
ZT4KLSAgICA8bWV0YSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiIGh0dHAtZXF1
aXY9IkNvbnRlbnQtVHlwZSIvPgotICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xl
IiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20gIi8+Ci0gICAgPG1ldGEgbmFtZT0iYXNzZXJ0
IiBjb250ZW50PSJXaGVuIGEgY2FwdHVyZWQgcG9pbnRlciBpcyBpbXBsaWNpdGx5IHJlbGVhc2Vk
IGFmdGVyIGEgY2xpY2ssIHRoZSBib3VuZGFyeSBldmVudHMgc2hvdWxkIGZvbGxvdyB0aGUgbG9z
dHBvaW50ZXJjYXB0dXJlIGV2ZW50LiIvPgotICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlw
ZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICA8c2NyaXB0
IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBz
cmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgIDxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48
L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAgICB2YXIg
ZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0ge307Ci0gICAgICB2YXIgZXZlbnRfbG9nID0gW107Ci0g
ICAgICB2YXIgc3RhcnRfbG9nZ2luZyA9IGZhbHNlOwotCi0gICAgICBmdW5jdGlvbiByZXNldFRl
c3RTdGF0ZSgpIHsKLSAgICAgICAgZGV0ZWN0ZWRfZXZlbnRUeXBlcyA9IHt9OwotICAgICAgICBl
dmVudF9sb2cgPSBbXTsKLSAgICAgICAgc3RhcnRfbG9nZ2luZyA9IGZhbHNlOwotICAgICAgfQot
Ci0gICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgIHZhciB0ZXN0X3BvaW50ZXJfZXZlbnQg
PSBzZXR1cF9wb2ludGVyZXZlbnRfdGVzdCgiRXZlbnQgc2VxdWVuY2UgYXQgaW1wbGljaXQgcmVs
ZWFzZSBvbiBjbGljayIsIEFMTF9QT0lOVEVSUyk7Ci0KLSAgICAgICAgb25fZXZlbnQoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRvbmUiKSwgImNsaWNrIiwgZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICAgdGVzdF9wb2ludGVyX2V2ZW50LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgdmFy
IGV4cGVjdGVkX2V2ZW50cyA9ICJwb2ludGVydXAsIGxvc3Rwb2ludGVyY2FwdHVyZSwgcG9pbnRl
cm91dCwgcG9pbnRlcmxlYXZlIjsKLSAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoZXZlbnRfbG9n
LmpvaW4oIiwgIiksIGV4cGVjdGVkX2V2ZW50cyk7Ci0gICAgICAgICAgfSk7Ci0gICAgICAgICAg
dGVzdF9wb2ludGVyX2V2ZW50LmRvbmUoKTsKLSAgICAgICAgfSk7Ci0KLSAgICAgICAgdmFyIHRh
cmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKLQotICAgICAgICBBbGxf
UG9pbnRlcl9FdmVudHMuZm9yRWFjaChmdW5jdGlvbihldmVudE5hbWUpIHsKLSAgICAgICAgICBv
bl9ldmVudCh0YXJnZXQsIGV2ZW50TmFtZSwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAg
ICBkZXRlY3RlZF9wb2ludGVydHlwZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLQotICAg
ICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT0gInBvaW50ZXJkb3duIikgewotICAgICAgICAgICAg
ICBldmVudC50YXJnZXQuc2V0UG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklkKTsKLQotICAg
ICAgICAgICAgfSBlbHNlIGlmIChldmVudC50eXBlID09ICJnb3Rwb2ludGVyY2FwdHVyZSIpIHsK
LSAgICAgICAgICAgICAgc3RhcnRfbG9nZ2luZyA9IHRydWU7Ci0KLSAgICAgICAgICAgIH0gZWxz
ZSBpZiAoZXZlbnQudHlwZSAhPSAicG9pbnRlcm1vdmUiICYmIHN0YXJ0X2xvZ2dpbmcpIHsKLSAg
ICAgICAgICAgICAgZXZlbnRfbG9nLnB1c2goZXZlbnQudHlwZSk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgICAgfSk7Ci0gICAgICAgIH0pOwotICAgICAgfQotICAgIDwvc2NyaXB0PgotICAgIDxz
dHlsZT4KLSAgICAgICN0YXJnZXQgewotICAgICAgICBtYXJnaW46IDIwcHg7Ci0gICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IGJsYWNrOwotICAgICAgfQotCi0gICAgICAjZG9uZSB7Ci0gICAgICAg
IG1hcmdpbjogMjBweDsKLSAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICB9
Ci0gICAgPC9zdHlsZT4KLSAgPC9oZWFkPgotICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICA8
aDE+UG9pbnRlciBFdmVudDogRXZlbnQgc2VxdWVuY2UgYXQgaW1wbGljaXQgcmVsZWFzZSBvbiBj
bGljazwvaDE+Ci0gICAgPGgyIGlkPSJwb2ludGVyVHlwZURlc2NyaXB0aW9uIj48L2gyPgotICAg
IDxoND4KLSAgICAgIFdoZW4gYSBjYXB0dXJlZCBwb2ludGVyIGlzIGltcGxpY2l0bHkgcmVsZWFz
ZWQgYWZ0ZXIgYSBjbGljaywgdGhlIGJvdW5kYXJ5IGV2ZW50cyBzaG91bGQgZm9sbG93IHRoZSBs
b3N0cG9pbnRlcmNhcHR1cmUgZXZlbnQuCi0gICAgPC9oND4KLSAgICA8b2w+Ci0gICAgICA8bGk+
Q2xpY2sgb3IgdGFwIG9uIEJsYWNrLjwvbGk+Ci0gICAgICA8bGk+Q2xpY2sgb3IgdGFwIG9uIEdy
ZWVuLjwvbGk+Ci0gICAgPC9vbD4KLSAgICA8ZGl2IGlkPSJ0YXJnZXQiPjwvZGl2PgotICAgIDxk
aXYgaWQ9ImRvbmUiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAg
ICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9
InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICA8cD5UaGUgZm9sbG93aW5nIGV2
ZW50cyB3ZXJlIGxvZ2dlZDogPHNwYW4gaWQ9ImV2ZW50LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAg
PC9kaXY+Ci0gICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF9zZXF1ZW5jZV9hdF9pbXBsaWNpdF9yZWxlYXNlX29uX2Ry
YWctbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3NlcXVlbmNlX2F0X2ltcGxpY2l0X3JlbGVh
c2Vfb25fZHJhZy1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTgy
MTY3ZGM1MDE0ZDA2YzBiYWJkMzIyMjY5NmM4YmE1NTZkODgyZS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3NlcXVlbmNlX2F0X2lt
cGxpY2l0X3JlbGVhc2Vfb25fZHJhZy1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg0
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAgIDx0aXRsZT5Q
b2ludGVyIEV2ZW50OiBFdmVudCBzZXF1ZW5jZSBhdCBpbXBsaWNpdCByZWxlYXNlIG9uIGRyYWc8
L3RpdGxlPgotICAgIDxtZXRhIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgaHR0
cC1lcXVpdj0iQ29udGVudC1UeXBlIi8+Ci0gICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJH
b29nbGUiIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbSAiLz4KLSAgICA8bWV0YSBuYW1lPSJh
c3NlcnQiIGNvbnRlbnQ9IldoZW4gYSBjYXB0dXJlZCBwb2ludGVyIGlzIGltcGxpY2l0bHkgcmVs
ZWFzZWQgYWZ0ZXIgYSBkcmFnLCB0aGUgYm91bmRhcnkgZXZlbnRzIHNob3VsZCBmb2xsb3cgdGhl
IGxvc3Rwb2ludGVyY2FwdHVyZSBldmVudC4iLz4KLSAgICA8bGluayByZWw9InN0eWxlc2hlZXQi
IHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgIDxzY3Jp
cHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5q
cyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAg
dmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAgICAgdmFyIGV2ZW50X2xvZyA9IFtd
OwotICAgICAgdmFyIHN0YXJ0X2xvZ2dpbmcgPSBmYWxzZTsKLQotICAgICAgZnVuY3Rpb24gcmVz
ZXRUZXN0U3RhdGUoKSB7Ci0gICAgICAgIGRldGVjdGVkX2V2ZW50VHlwZXMgPSB7fTsKLSAgICAg
ICAgZXZlbnRfbG9nID0gW107Ci0gICAgICAgIHN0YXJ0X2xvZ2dpbmcgPSBmYWxzZTsKLSAgICAg
IH0KLQotICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICB2YXIgdGVzdF9wb2ludGVyX2V2
ZW50ID0gc2V0dXBfcG9pbnRlcmV2ZW50X3Rlc3QoIkV2ZW50IHNlcXVlbmNlIGF0IGltcGxpY2l0
IHJlbGVhc2Ugb24gZHJhZyIsIFsidG91Y2giXSk7Ci0KLSAgICAgICAgb25fZXZlbnQoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRvbmUiKSwgImNsaWNrIiwgZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICAgdGVzdF9wb2ludGVyX2V2ZW50LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgdmFy
IGV4cGVjdGVkX2V2ZW50cyA9ICJwb2ludGVyY2FuY2VsLCBsb3N0cG9pbnRlcmNhcHR1cmUsIHBv
aW50ZXJvdXQsIHBvaW50ZXJsZWF2ZSI7Ci0gICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGV2ZW50
X2xvZy5qb2luKCIsICIpLCBleHBlY3RlZF9ldmVudHMpOwotICAgICAgICAgIH0pOwotICAgICAg
ICAgIHRlc3RfcG9pbnRlcl9ldmVudC5kb25lKCk7Ci0gICAgICAgIH0pOwotCi0gICAgICAgIHZh
ciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7Ci0KLSAgICAgICAg
QWxsX1BvaW50ZXJfRXZlbnRzLmZvckVhY2goZnVuY3Rpb24oZXZlbnROYW1lKSB7Ci0gICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0LCBldmVudE5hbWUsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAg
ICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0K
LSAgICAgICAgICAgIGlmIChldmVudC50eXBlID09ICJwb2ludGVyZG93biIpIHsKLSAgICAgICAg
ICAgICAgZXZlbnQudGFyZ2V0LnNldFBvaW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0K
LSAgICAgICAgICAgIH0gZWxzZSBpZiAoZXZlbnQudHlwZSA9PSAiZ290cG9pbnRlcmNhcHR1cmUi
KSB7Ci0gICAgICAgICAgICAgIHN0YXJ0X2xvZ2dpbmcgPSB0cnVlOwotCi0gICAgICAgICAgICB9
IGVsc2UgaWYgKGV2ZW50LnR5cGUgIT0gInBvaW50ZXJtb3ZlIiAmJiBzdGFydF9sb2dnaW5nKSB7
Ci0gICAgICAgICAgICAgIGV2ZW50X2xvZy5wdXNoKGV2ZW50LnR5cGUpOwotICAgICAgICAgICAg
fQotICAgICAgICAgIH0pOwotICAgICAgICB9KTsKLSAgICAgIH0KLSAgICA8L3NjcmlwdD4KLSAg
ICA8c3R5bGU+Ci0gICAgICAjdGFyZ2V0IHsKLSAgICAgICAgbWFyZ2luOiAyMHB4OwotICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKLSAgICAgICAgdG91Y2gtYWN0aW9uOiBhdXRvOwot
ICAgICAgfQotCi0gICAgICAjZG9uZSB7Ci0gICAgICAgIG1hcmdpbjogMjBweDsKLSAgICAgICAg
YmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICB9Ci0gICAgPC9zdHlsZT4KLSAgPC9oZWFk
PgotICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICA8aDE+UG9pbnRlciBFdmVudDogRXZlbnQg
c2VxdWVuY2UgYXQgaW1wbGljaXQgcmVsZWFzZSBvbiBkcmFnPC9oMT4KLSAgICA8aDIgaWQ9InBv
aW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgPGg0PgotICAgICAgV2hlbiBhIGNhcHR1
cmVkIHBvaW50ZXIgaXMgaW1wbGljaXRseSByZWxlYXNlZCBhZnRlciBhIGRyYWcsIHRoZSBib3Vu
ZGFyeSBldmVudHMgc2hvdWxkIGZvbGxvdyB0aGUgbG9zdHBvaW50ZXJjYXB0dXJlIGV2ZW50Lgot
ICAgIDwvaDQ+Ci0gICAgPG9sPgotICAgICAgPGxpPkRyYWcgcXVpY2tseSBkb3duIHN0YXJ0aW5n
IG9uIEJsYWNrLjwvbGk+Ci0gICAgICA8bGk+Q2xpY2sgb3IgdGFwIG9uIEdyZWVuLjwvbGk+Ci0g
ICAgPC9vbD4KLSAgICA8ZGl2IGlkPSJ0YXJnZXQiPjwvZGl2PgotICAgIDxkaXYgaWQ9ImRvbmUi
PjwvZGl2PgotICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICA8cD5UaGUgZm9s
bG93aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBl
LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICA8cD5UaGUgZm9sbG93aW5nIGV2ZW50cyB3ZXJlIGxv
Z2dlZDogPHNwYW4gaWQ9ImV2ZW50LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgPC9kaXY+Ci0gICAg
PGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3Bv
aW50ZXJldmVudF9zZXRwb2ludGVyY2FwdHVyZV9vdmVycmlkZV9wZW5kaW5nX2NhcHR1cmVfZWxl
bWVudC1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2V0cG9pbnRlcmNhcHR1cmVfb3ZlcnJp
ZGVfcGVuZGluZ19jYXB0dXJlX2VsZW1lbnQtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDRlNDgxOGMyMWI3MDZkOWUxNjljN2Y4MmU4Y2QzMGNmODI2MzVkYWMuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVu
dF9zZXRwb2ludGVyY2FwdHVyZV9vdmVycmlkZV9wZW5kaW5nX2NhcHR1cmVfZWxlbWVudC1tYW51
YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgot
PGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UZXN0IG92ZXJyaWRpbmcgdGhlIHBl
bmRpbmcgcG9pbnRlciBjYXB0dXJlIGVsZW1lbnQ8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1l
PSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxl
cy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+
PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVw
b3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBvaW50ZXJldmVudF9zdXBw
b3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
PgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAgICAgICAg
ICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50ZXJUeXBlcyk7Ci0gICAgICAgICAg
ICB2YXIgdGVzdF9zZXRQb2ludGVyQ2FwdHVyZSA9IGFzeW5jX3Rlc3QoInNldFBvaW50ZXJDYXB0
dXJlOiBvdmVycmlkZSB0aGUgcGVuZGluZyBwb2ludGVyIGNhcHR1cmUgZWxlbWVudCIpOwotCi0g
ICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZh
ciB0YXJnZXQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDEiKTsKLQotICAgICAg
ICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVyZG93biIsIGZ1bmN0aW9uIChldmVu
dCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlwZXNbZXZlbnQucG9p
bnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0MC5zZXRQb2ludGVy
Q2FwdHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3NldFBv
aW50ZXJDYXB0dXJlLnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCks
IHRydWUsICJTZXQgY2FwdHVyZSB0byB0YXJnZXQwLCB0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJl
IHNob3VsZCBiZSB0cnVlIik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
ICAgICAgICB0YXJnZXQxLnNldFBvaW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAg
ICAgICAgICAgICAgICAgIHRlc3Rfc2V0UG9pbnRlckNhcHR1cmUuc3RlcChmdW5jdGlvbiAoKSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRhcmdldDAuaGFzUG9pbnRl
ckNhcHR1cmUoZXZlbnQucG9pbnRlcklkKSwgZmFsc2UsICJTZXQgY2FwdHVyZSB0byB0YXJnZXQx
LCB0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlIHNob3VsZCBiZSBmYWxzZSIpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQxLmhhc1BvaW50ZXJDYXB0dXJlKGV2
ZW50LnBvaW50ZXJJZCksIHRydWUsICJTZXQgY2FwdHVyZSB0byB0YXJnZXQxLCB0YXJnZXQxLmhh
c1BvaW50ZXJDYXB0dXJlIHNob3VsZCBiZSB0cnVlIik7Ci0gICAgICAgICAgICAgICAgICAgIH0p
OwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0
MCwgImdvdHBvaW50ZXJjYXB0dXJlIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAg
ICAgICAgIGFzc2VydF90cnVlKGZhbHNlLCAidGFyZ2V0MCBzaG91bGRuJ3QgcmVjZWl2ZSBnb3Rw
b2ludGVyY2FwdHVyZSIpOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAg
b25fZXZlbnQodGFyZ2V0MSwgImdvdHBvaW50ZXJjYXB0dXJlIiwgZnVuY3Rpb24gKGV2ZW50KSB7
Ci0gICAgICAgICAgICAgICAgICAgIGFzc2VydF90cnVlKHRydWUsICJ0YXJnZXQxIHNob3VsZCBy
ZWNlaXZlIGdvdHBvaW50ZXJjYXB0dXJlIik7Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAgICAg
ICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQxLCAicG9pbnRlcnVwIiwgZnVuY3Rpb24gKGV2ZW50
KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rfc2V0UG9pbnRlckNhcHR1cmUuZG9uZSgpOwot
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVy
IEV2ZW50OiBUZXN0IG92ZXJyaWRpbmcgdGhlIHBlbmRpbmcgcG9pbnRlciBjYXB0dXJlIGVsZW1l
bnQ8L2gxPgotICAgICAgICA8aDQ+VGVzdCBEZXNjcmlwdGlvbjoKLSAgICAgICAgICAgIEFmdGVy
IGFuIGVsZW1lbnQgc2V0UG9pbnRlckNhcHR1cmUsIGlmIGFub3RoZXIgZWxlbWVudCBhbHNvIHNl
dFBvaW50ZXJDYXB0dXJlIGFuZCBvdmVycmlkZSBpdCwgdGhlIG9sZCBwZW5kaW5nIHBvaW50ZXIg
Y2FwdHVyZSBlbGVtZW50IHNob3VsZG4ndCByZWNlaXZlIGFueSBnb3Rwb2ludGVyY2FwdHVyZSBv
ciBsb3N0cG9pbnRlcmNhcHR1cmUgZXZlbnQKLSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAg
ICAgICA8bGk+UHJlc3MgYW5kIGhvbGQgbGVmdCBtb3VzZSBidXR0b24gb3ZlciBibGFjayBib3gK
LSAgICAgICAgICAgICAgICA8bGk+TW92ZSBtb3VzZSBhbmQgcmVsZWFzZSBtb3VzZSBidXR0b24K
LSAgICAgICAgICAgIDwvb2w+Ci0gICAgICAgIDwvaDQ+Ci0gICAgICAgIDxicj4KLSAgICAgICAg
PGRpdiBpZD0idGFyZ2V0MCIgdG91Y2gtYWN0aW9uOm5vbmU+PC9kaXY+Ci0gICAgICAgIDxkaXYg
aWQ9InRhcmdldDEiIHRvdWNoLWFjdGlvbjpub25lPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJj
b21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5
cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9w
PgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3NldHBvaW50ZXJjYXB0dXJl
X3RvX3NhbWVfZWxlbWVudF90d2ljZS1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2V0cG9p
bnRlcmNhcHR1cmVfdG9fc2FtZV9lbGVtZW50X3R3aWNlLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAxNjFjNWMyZmNiOWJmMDBkNzc3NzliNjMwZmQxOTNiMGNmZDkx
NjRlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVyZXZlbnRfc2V0cG9pbnRlcmNhcHR1cmVfdG9fc2FtZV9lbGVtZW50X3R3aWNlLW1hbnVhbC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRt
bD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPnNldFBvaW50ZXJDYXB0dXJlKCkgdG8gdGhl
IGVsZW1lbnQgd2hpY2ggYWxyZWFkeSBjYXB0dXJlZCB0aGUgcG9pbnRlcjwvdGl0bGU+Ci0gICAg
ICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgot
ICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2lu
dGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rl
c3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0icG9p
bnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0g
e307Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9pbnRlclR5cGVz
KTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3NldFBvaW50ZXJDYXB0dXJlID0gYXN5bmNfdGVzdCgi
c2V0UG9pbnRlckNhcHR1cmU6IHNldCB0byB0aGUgZWxlbWVudCB3aGljaCBhbHJlYWR5IGNhcHR1
cmVkIHRoZSBwb2ludGVyIik7Ci0gICAgICAgICAgICB2YXIgZ290X3BvaW50ZXJfY2FwdHVyZSA9
IGZhbHNlOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAg
dmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAg
ICAgICAgICAgIHZhciB0YXJnZXQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDEi
KTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVyZG93biIsIGZ1
bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlw
ZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
MC5zZXRQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgIH0p
OwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgImdvdHBvaW50ZXJjYXB0dXJl
IiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rfc2V0UG9pbnRl
ckNhcHR1cmUuc3RlcChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGdvdF9wb2ludGVyX2NhcHR1cmUsIGZhbHNlLCAiVGFyZ2V0MCBzaG91bGQgcmVj
ZWl2ZSBnb3Rwb2ludGVyY2FwdHVyZSBhdCB0aGUgZmlyc3QgdGltZSBpdCBjYXB0dXJlZCB0aGUg
cG9pbnRlciIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQw
Lmhhc1BvaW50ZXJDYXB0dXJlKGV2ZW50LnBvaW50ZXJJZCksIHRydWUsICJUYXJnZXQgMCByZWNl
aXZlZCBnb3Rwb2ludGVyY2FwdHVyZSwgdGFyZ2V0MC5oYXNQb2ludGVyQ2FwdHVyZSBzaG91bGQg
YmUgdHJ1ZSIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAg
Z290X3BvaW50ZXJfY2FwdHVyZSA9IHRydWU7Ci0KLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0
MC5zZXRQb2ludGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgICAg
ICB0ZXN0X3NldFBvaW50ZXJDYXB0dXJlLnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAg
ICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLmhhc1BvaW50ZXJDYXB0dXJlKGV2ZW50
LnBvaW50ZXJJZCksIHRydWUsICJTZXQgY2FwdHVyZSB0byB0YXJnZXQwLCB0YXJnZXQwLmhhc1Bv
aW50ZXJDYXB0dXJlIHNob3VsZCBiZSB0cnVlIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKHRhcmdldDEuaGFzUG9pbnRlckNhcHR1cmUoZXZlbnQucG9pbnRlcklkKSwg
ZmFsc2UsICJTZXQgY2FwdHVyZSB0byB0YXJnZXQwLCB0YXJnZXQxLmhhc1BvaW50ZXJDYXB0dXJl
IHNob3VsZCBiZSBmYWxzZSIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAg
ICAgICB9KTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVydXAi
LCBmdW5jdGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9zZXRQb2ludGVy
Q2FwdHVyZS5kb25lKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAg
ICAgICAgPGgxPlBvaW50ZXIgRXZlbnQ6IHNldFBvaW50ZXJDYXB0dXJlIHRvIHRoZSBlbGVtZW50
IHdoaWNoIGFscmVhZHkgY2FwdHVyZWQgdGhlIHBvaW50ZXI8L2gxPgotICAgICAgICA8aDQ+VGVz
dCBEZXNjcmlwdGlvbjoKLSAgICAgICAgICAgIFdoZW4gdGhlIHNldFBvaW50ZXJDYXB0dXJlIG1l
dGhvZCBpcyBpbnZva2VkLCBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaGFkIGFscmVhZHkgY2FwdHVy
ZWQgdGhlIHBvaW50ZXIsIGl0IHNob3VsZCBub3QgdHJpZ2dlciBhbnkgZ290cG9pbnRlcmNhcHR1
cmUgb3IgbG9zdHBvaW50ZXJjYXB0dXJlIGV2ZW50Ci0gICAgICAgICAgICA8b2w+Ci0gICAgICAg
ICAgICAgICAgPGxpPlByZXNzIGFuZCBob2xkIGxlZnQgbW91c2UgYnV0dG9uIG92ZXIgYmxhY2sg
Ym94Ci0gICAgICAgICAgICAgICAgPGxpPk1vdmUgbW91c2UgYW5kIHJlbGVhc2UgbW91c2UgYnV0
dG9uCi0gICAgICAgICAgICA8L29sPgotICAgICAgICA8L2g0PgotICAgICAgICA8YnI+Ci0gICAg
ICAgIDxkaXYgaWQ9InRhcmdldDAiIHRvdWNoLWFjdGlvbjpub25lPjwvZGl2PgotICAgICAgICA8
ZGl2IGlkPSJ0YXJnZXQxIiB0b3VjaC1hY3Rpb246bm9uZT48L2Rpdj4KLSAgICAgICAgPGRpdiBp
ZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRl
ciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+
LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAg
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24t
YnV0dG9uLXRlc3RfdG91Y2gtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlv
bi1idXR0b24tdGVzdF90b3VjaC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggYzdjNWQ5YTQ0MDgwODYzZjY5YWZkYTNjMWE5NGYyNjhlN2Q5MDA5Ni4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNo
LWFjdGlvbi1idXR0b24tdGVzdF90b3VjaC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDExMCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAg
ICA8dGl0bGU+QnV0dG9uIHRvdWNoLWFjdGlvbiB0ZXN0PC90aXRsZT4KLSAgICAgICAgPG1ldGEg
bmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1LjExIC1UaGUgdG91Y2gtYWN0aW9uIENTUyBwcm9w
ZXJ0eSBhcHBsaWVzIHRvIGJ1dHRvbiBlbGVtZW50cy4iPgotICAgICAgICA8bWV0YSBuYW1lPSJ2
aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxlcy5j
c3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9z
Y3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI3RhcmdldDAgewot
ICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgICAgIHdpZHRoOiAyMDBweDsKLSAg
ICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87Ci0gICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFj
azsKLSAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4OwotICAgICAgICAgICAgcG9zaXRpb246IHJl
bGF0aXZlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnV0dG9uIHsKLSAgICAgICAgICAg
IHRvdWNoLWFjdGlvbjogbm9uZTsKLSAgICAgICAgICAgIHdpZHRoOiAzNTBweDsKLSAgICAgICAg
ICAgIGhlaWdodDogMzUwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCByZWQ7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9u
bG9hZD0icnVuKCkiPgotICAgICAgICA8aDI+UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0
dHJpYnV0ZSBzdXBwb3J0PC9oMj4KLSAgICAgICAgPGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0
aW9uOiBUcnkgdG8gc2Nyb2xsIGJsYWNrIGVsZW1lbnQgRE9XTiBtb3ZpbmcgeW91ciB0b3VjaCBv
dXRzaWRlIG9mIHRoZSByZWQgYm9yZGVyLiBXYWl0IGZvciBkZXNjcmlwdGlvbiB1cGRhdGUuPC9o
ND4KLSAgICAgICAgPHA+Tm90ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaCBvbmx5PC9wPgotICAg
ICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj4KLSAgICAgICAgICAgIDxidXR0b24gaWQ9InRlc3RCdXR0
b24iPlRlc3QgQnV0dG9uPC9idXR0b24+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8YnI+Ci0g
ICAgICAgIDxpbnB1dCB0eXBlPSJidXR0b24iIGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNvbXBs
ZXRlIHRlc3QiPgotCi0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLSAg
ICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAgICAgIHZh
ciB4U2Nyb2xsSXNSZWNlaXZlZCA9IGZhbHNlOwotICAgICAgICAgICAgdmFyIHlTY3JvbGxJc1Jl
Y2VpdmVkID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgeFNjcjAsIHlTY3IwLCB4U2NyMSwgeVNj
cjE7Ci0gICAgICAgICAgICB2YXIgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwgPSAxMDAwOwotICAgICAg
ICAgICAgdmFyIGlzRmlyc3RQYXJ0ID0gdHJ1ZTsKLSAgICAgICAgICAgIHNldHVwKHsgZXhwbGlj
aXRfdGltZW91dDogdHJ1ZSB9KTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxiYWNr
KHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAg
ICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0
MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJidG5Db21wbGV0ZSIpOwotCi0gICAgICAgICAgICAgICAgLy9UQSAxNS4xMQotICAg
ICAgICAgICAgICAgIHZhciB0ZXN0X3RvdWNoYWN0aW9uX2RpdiA9IGFzeW5jX3Rlc3QoInRvdWNo
LWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCBvdXQgb2YgZWxlbWVudCIpOwotICAgICAgICAgICAgICAg
IHZhciB0ZXN0X3RvdWNoYWN0aW9uX2J1dHRvbiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBh
dHRyaWJ1dGUgdGVzdCBpbiBlbGVtZW50Iik7Ci0KLSAgICAgICAgICAgICAgICB4U2NyMCA9IHRh
cmdldDAuc2Nyb2xsTGVmdDsKLSAgICAgICAgICAgICAgICB5U2NyMCA9IHRhcmdldDAuc2Nyb2xs
VG9wOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoYnRuQ29tcGxldGUsICdjbGljaycsIGZ1
bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb25fYnV0
dG9uLnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKHRhcmdldDAuc2Nyb2xsTGVmdCwgMCwgImJ1dHRvbiBzY3JvbGwgeCBvZmZzZXQgc2hvdWxk
IGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbFRvcCwgMCwgImJ1dHRvbiBzY3JvbGwgeSBvZmZz
ZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X3RydWUoeFNjcm9sbElzUmVjZWl2ZWQgJiYgeVNjcm9sbElzUmVjZWl2
ZWQsICJ0YXJnZXQwIHggYW5kIHkgc2Nyb2xsIG9mZnNldHMgc2hvdWxkIGJlIGdyZWF0ZXIgdGhh
biAwIGFmdGVyIGZpcnN0IHR3byBpbnRlcmFjdGlvbnMgKG91dHNpZGUgcmVkIGJvcmRlcikgcmVz
cGVjdGl2ZWx5Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAg
ICB0ZXN0X3RvdWNoYWN0aW9uX2J1dHRvbi5kb25lKCk7Ci0gICAgICAgICAgICAgICAgICAgIHVw
ZGF0ZURlc2NyaXB0aW9uQ29tcGxldGUoKTsKLSAgICAgICAgICAgICAgICB9KTsKLQotICAgICAg
ICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAncG9pbnRlcmRvd24nLCBmdW5jdGlvbihl
dmVudCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlwZXNbZXZlbnQu
cG9pbnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB9KTsKLQotICAgICAgICAgICAg
ICAgIG9uX2V2ZW50KHRhcmdldDAsICdzY3JvbGwnLCBmdW5jdGlvbihldmVudCkgewotICAgICAg
ICAgICAgICAgICAgICBpZihpc0ZpcnN0UGFydCkgewotICAgICAgICAgICAgICAgICAgICAgICAg
eFNjcjEgPSB0YXJnZXQwLnNjcm9sbExlZnQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICB5U2Ny
MSA9IHRhcmdldDAuc2Nyb2xsVG9wOwotCi0gICAgICAgICAgICAgICAgICAgICAgICBpZih4U2Ny
MSAhPSB4U2NyMCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhTY3JvbGxJc1JlY2Vp
dmVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgICAg
ICAgICAgICAgaWYoeVNjcjEgIT0geVNjcjApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0X3RvdWNoYWN0aW9uX2Rpdi5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgeVNjcm9sbElzUmVjZWl2ZWQgPSB0cnVlOwotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZURl
c2NyaXB0aW9uU2Vjb25kU3RlcFRvdWNoQWN0aW9uRWxlbWVudCh0YXJnZXQwLCBzY3JvbGxSZXR1
cm5JbnRlcnZhbCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAg
ICAgICAgICAgIGlmKHhTY3JvbGxJc1JlY2VpdmVkICYmIHlTY3JvbGxJc1JlY2VpdmVkKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbl9kaXYuZG9uZSgpOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uVGhpcmRTdGVwVG91
Y2hBY3Rpb25FbGVtZW50KHRhcmdldDAsIHNjcm9sbFJldHVybkludGVydmFsLCBmdW5jdGlvbiAo
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24o
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0ZpcnN0UGFydCA9IGZh
bHNlOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBzY3JvbGxSZXR1cm5JbnRl
cnZhbCk7IC8vIGF2b2lkIGltbWVkaWF0ZSB0cmlnZ2VyaW5nIHdoaWxlIHNjcm9sbCBpcyBzdGls
bCBiZWluZyBwZXJmb3JtZWQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb25f
YnV0dG9uLnN0ZXAoZmFpbE9uU2Nyb2xsLCAic2Nyb2xsIHJlY2VpdmVkIHdoaWxlIHNob3VsZG4n
dCIpOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8aDE+dG91Y2gtYWN0aW9uOiBub25l
PC9oMT4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxw
PlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9p
bnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYg
aWQ9ImxvZyI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1hdXRvLWNoaWxkLW5vbmVfdG91Y2gt
bWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1pbmhlcml0X2NoaWxkLWF1
dG8tY2hpbGQtbm9uZV90b3VjaC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZGNlYTI4Mzc1MDJiODJiM2ZjODczZGRmM2E0YjA0NGUzODE2NWMwMi4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNo
LWFjdGlvbi1pbmhlcml0X2NoaWxkLWF1dG8tY2hpbGQtbm9uZV90b3VjaC1tYW51YWwuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDExNyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+dG91Y2gtYWN0aW9uOiBwYXJlbnQgPiBjaGlsZDog
YXV0byA+IGNoaWxkOiBub25lPC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBj
b250ZW50PSJUQTE1LjUgLSB3aGVuIGEgdXNlciB0b3VjaGVzIGFuIGVsZW1lbnQsIHRoZSBlZmZl
Y3Qgb2YgdGhhdCB0b3VjaCBpcyBkZXRlcm1pbmVkIGJ5IHRoZSB2YWx1ZSBvZiB0aGUgdG91Y2gt
YWN0aW9uIHByb3BlcnR5IGFuZCB0aGUgZGVmYXVsdCB0b3VjaCBiZWhhdmlvcnMgb24gdGhlIGVs
ZW1lbnQgYW5kIGl0cyBhbmNlc3RvcnMuIFNjcm9sbGFibGUtUGFyZW50LCBDaGlsZDogYGF1dG9g
LCBHcmFuZC1DaGlsZDogYG5vbmVgIj4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5zY3JvbGxlciA+IGRpdiB7Ci0gICAg
ICAgICAgICB0b3VjaC1hY3Rpb246IGF1dG87Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAu
c2Nyb2xsZXIgPiBkaXYgZGl2IHsKLSAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25s
b2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50cyB0b3VjaC1hY3Rpb24gYXR0
cmlidXRlIHN1cHBvcnQ8L2gxPgotICAgICAgICA8aDQgaWQ9ImRlc2MiPlRlc3QgRGVzY3JpcHRp
b246IFRyeSB0byBzY3JvbGwgZWxlbWVudCBET1dOIHRoZW4gUklHSFQgaW5zaWRlIGJsdWUgcmVj
dGFuZ2xlLiBUYXAgQ29tcGxldGUgYnV0dG9uIHVuZGVyIHRoZSByZWN0YW5nbGUgd2hlbiBkb25l
LiBFeHBlY3RlZDogbm8gcGFubmluZy48L2g0PgotICAgICAgICA8cD5Ob3RlOiB0aGlzIHRlc3Qg
aXMgZm9yIHRvdWNoLWRldmljZXMgb25seTwvcD4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xs
ZXIiIGlkPSJ0YXJnZXQwIj4KLSAgICAgICAgICAgIDxkaXY+Ci0gICAgICAgICAgICAgICAgPGRp
diBpZD0ic2Nyb2xsVGFyZ2V0Ij4KLSAgICAgICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFk
aXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAgICAgIG5vbnVtbXkg
bmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVy
YXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1p
bmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lw
aXQKLSAgICAgICAgICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBl
YSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAgICAgICAgPC9wPgotICAgICAgICAg
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAg
ICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAg
ICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAg
ICAgICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgICAgICAgICBMb3JlbSBpcHN1
bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0K
LSAgICAgICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1
dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAg
ICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVk
IGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAg
ICAgICAgICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1
bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3Jl
bSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2Vj
dGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAgICAg
IG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBh
bGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBl
bmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3Jw
ZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxp
cXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAgICAgICAgPC9wPgot
ICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+
Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9w
PgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgICAgICAgICBM
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwg
c2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRp
bmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0g
ICAgICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVp
cyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNl
cXVhdC4KLSAgICAgICAgICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAg
IDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8
L2Rpdj4KLSAgICAgICAgICAgIDwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGlucHV0
IHR5cGU9ImJ1dHRvbiIgaWQ9ImJ0bkNvbXBsZXRlIiB2YWx1ZT0iQ29tcGxldGUgdGVzdCI+Ci0g
ICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLSAgICAgICAgICAgIHZhciBk
ZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2Nh
bGxiYWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICB2YXIgdGVzdF90b3VjaGFj
dGlvbiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCIpOwotCi0gICAg
ICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBi
dG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotCi0g
ICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSB3b3JrcyBw
cm9wZXJseSBmb3IgZW1iZWRkZWQgZGl2cwotICAgICAgICAgICAgICAgIC8vIFNjcm9sbGFibGUt
UGFyZW50LCBDaGlsZDogYGF1dG9gLCBHcmFuZC1DaGlsZDogYG5vbmVgCi0gICAgICAgICAgICAg
ICAgLy8gVEE6IDE1LjUKLSAgICAgICAgICAgICAgICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ2Ns
aWNrJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9p
bnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAg
IHRlc3RfdG91Y2hhY3Rpb24uc3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxMZWZ0LCAwLCAic2Nyb2xsIHggb2Zmc2V0
IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3AsIDAsICJzY3JvbGwgeSBvZmZz
ZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbi5kb25lKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29tcGxldGUoKTsKLSAgICAgICAg
ICAgICAgICB9KTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICdzY3JvbGwn
LCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9u
LnN0ZXAoZmFpbE9uU2Nyb2xsLCAic2Nyb2xsIHJlY2VpdmVkIHdoaWxlIHRvdWNoLWFjdGlvbiBp
cyBub25lIik7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwv
c2NyaXB0PgotICAgICAgICA8aDE+YmVoYXZpb3VyOiBub25lPC9oMT4KLSAgICAgICAgPGRpdiBp
ZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRl
ciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+
LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAg
PC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtbm9uZV90b3VjaC1tYW51
YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtbm9uZV90
b3VjaC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTZlNDI5NTRl
NTFhYmM1OGM4OWU2MDhjMGVkZmEyOWQ5YTQ0YjYzYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1pbmhlcml0
X2NoaWxkLW5vbmVfdG91Y2gtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTIgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PnRvdWNoLWFjdGlvbjogY2hpbGQ6IG5vbmU8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJh
c3NlcnQiIGNvbnRlbnQ9IlRBMTUuOSAtIHdoZW4gYSB1c2VyIHRvdWNoZXMgYW4gZWxlbWVudCwg
dGhlIGVmZmVjdCBvZiB0aGF0IHRvdWNoIGlzIGRldGVybWluZWQgYnkgdGhlIHZhbHVlIG9mIHRo
ZSB0b3VjaC1hY3Rpb24gcHJvcGVydHkgYW5kIHRoZSBkZWZhdWx0IHRvdWNoIGJlaGF2aW9ycyBv
biB0aGUgZWxlbWVudCBhbmQgaXRzIGFuY2VzdG9ycy4gU2Nyb2xsYWJsZS1QYXJlbnQsIENoaWxk
OiBgbm9uZWAiPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9
ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0
L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAg
PHNjcmlwdCBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAg
PHN0eWxlPgotICAgICAgICAgICAgLnNjcm9sbGVyID4gZGl2IHsKLSAgICAgICAgICAgIHRvdWNo
LWFjdGlvbjogbm9uZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hl
YWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50
cyB0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHN1cHBvcnQ8L2gxPgotICAgICAgICA8aDQgaWQ9ImRl
c2MiPlRlc3QgRGVzY3JpcHRpb246IFRyeSB0byBzY3JvbGwgZWxlbWVudCBET1dOIHRoZW4gUklH
SFQgaW5zaWRlIGJsdWUgcmVjdGFuZ2xlLiBUYXAgQ29tcGxldGUgYnV0dG9uIHVuZGVyIHRoZSBy
ZWN0YW5nbGUgd2hlbiBkb25lLiBFeHBlY3RlZDogbm8gcGFubmluZzwvaDQ+Ci0gICAgICAgIDxw
Pk5vdGU6IHRoaXMgdGVzdCBpcyBmb3IgdG91Y2gtZGV2aWNlcyBvbmx5PC9wPgotICAgICAgICA8
ZGl2IGNsYXNzPSJzY3JvbGxlciIgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPGRpdiBpZD0i
c2Nyb2xsVGFyZ2V0Ij4KLSAgICAgICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICAgICAg
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQs
IHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNp
ZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAg
ICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3Ry
dWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAg
ICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAg
ICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9w
PgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAg
ICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9s
b3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICAgICAgVXQg
d2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVs
bGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQg
YWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAgICA8L3A+Ci0g
ICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAg
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+Ci0g
ICAgICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1
ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICBub251bW15
IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBl
cmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmlt
IHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQK
LSAgICAgICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1v
ZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3Jl
bSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1
bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICAgICAg
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQs
IHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNp
ZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAg
ICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3Ry
dWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAg
ICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAg
ICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9w
PgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgPC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8aW5wdXQgdHlwZT0iYnV0
dG9uIiBpZD0iYnRuQ29tcGxldGUiIHZhbHVlPSJDb21wbGV0ZSB0ZXN0Ij4KLSAgICAgICAgPHNj
cmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3Bv
aW50ZXJ0eXBlcyA9IHt9OwotICAgICAgICAgICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hv
d1BvaW50ZXJUeXBlcyk7Ci0KLSAgICAgICAgICAgIHZhciB0ZXN0X3RvdWNoYWN0aW9uID0gYXN5
bmNfdGVzdCgidG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSB0ZXN0Iik7Ci0KLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0MCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0gICAgICAgICAgICAgICAgdmFyIGJ0bkNvbXBsZXRl
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0bkNvbXBsZXRlIik7Ci0KLSAgICAgICAgICAg
ICAgICAvLyBDaGVjayBpZiB0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHdvcmtzIHByb3Blcmx5IGZv
ciBlbWJlZGRlZCBkaXZzCi0gICAgICAgICAgICAgICAgLy8KLSAgICAgICAgICAgICAgICAvLyBU
QTogMTUuOQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAnY2xpY2snLCBm
dW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2ludGVydHlw
ZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90
b3VjaGFjdGlvbi5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNz
ZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbExlZnQsIDAsICJzY3JvbGwgeCBvZmZzZXQgc2hvdWxk
IGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAgICAgICAgICAg
YXNzZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbFRvcCwgMCwgInNjcm9sbCB5IG9mZnNldCBzaG91
bGQgYmUgMCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0p
OwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsKLSAgICAgICAg
ICAgICAgICAgICAgdXBkYXRlRGVzY3JpcHRpb25Db21wbGV0ZSgpOwotICAgICAgICAgICAgICAg
IH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgJ3Njcm9sbCcsIGZ1bmN0
aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24uc3RlcChm
YWlsT25TY3JvbGwsICJzY3JvbGwgcmVjZWl2ZWQgd2hpbGUgdG91Y2gtYWN0aW9uIGlzIG5vbmUi
KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+
Ci0gICAgICAgIDxoMT5iZWhhdmlvdXI6IG5vbmU8L2gxPgotICAgICAgICA8ZGl2IGlkPSJjb21w
bGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5cGVz
IHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgot
ICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1wYW4teC1jaGlsZC1wYW4teF90b3Vj
aC1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQt
cGFuLXgtY2hpbGQtcGFuLXhfdG91Y2gtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGM3NWQwNjdlNDQ3ZjczODIwMDU1NDJkZjZlZDI2Nzg1MGVmNmFhMGEuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90
b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1wYW4teC1jaGlsZC1wYW4teF90b3VjaC1tYW51YWwu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExMiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxo
dG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+dG91Y2gtYWN0aW9uOiBwYXJlbnQgPiBj
aGlsZDogcGFuLXggPiBjaGlsZDogcGFuLXg8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJh
c3NlcnQiIGNvbnRlbnQ9IlRBMTUuNiAtIHdoZW4gYSB1c2VyIHRvdWNoZXMgYW4gZWxlbWVudCwg
dGhlIGVmZmVjdCBvZiB0aGF0IHRvdWNoIGlzIGRldGVybWluZWQgYnkgdGhlIHZhbHVlIG9mIHRo
ZSB0b3VjaC1hY3Rpb24gcHJvcGVydHkgYW5kIHRoZSBkZWZhdWx0IHRvdWNoIGJlaGF2aW9ycyBv
biB0aGUgZWxlbWVudCBhbmQgaXRzIGFuY2VzdG9ycy4gU2Nyb2xsYWJsZS1QYXJlbnQsIENoaWxk
OiBgcGFuLXhgLCBHcmFuZC1DaGlsZDogYHBhbi14YCI+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZp
ZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgotICAgICAgICA8bGluayByZWw9
InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNz
cyI+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3Nj
cmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQu
anMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0icG9pbnRlcmV2ZW50X3N1cHBvcnQu
anMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAuc2Nyb2xsZXIgPiBk
aXYgewotICAgICAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teDsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIC5zY3JvbGxlciA+IGRpdiBkaXYgewotICAgICAgICAgICAgdG91Y2gtYWN0aW9u
OiBwYW4teDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0g
ICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50cyB0b3Vj
aC1hY3Rpb24gYXR0cmlidXRlIHN1cHBvcnQ8L2gxPgotICAgICAgICA8aDQgaWQ9ImRlc2MiPlRl
c3QgRGVzY3JpcHRpb246IFRyeSB0byBzY3JvbGwgZWxlbWVudCBET1dOIHRoZW4gUklHSFQgaW5z
aWRlIGJsdWUgcmVjdGFuZ2xlLiBUYXAgQ29tcGxldGUgYnV0dG9uIHVuZGVyIHRoZSByZWN0YW5n
bGUgd2hlbiBkb25lLiBFeHBlY3RlZDogb25seSBwYW5zIGluIHggZGlyZWN0aW9uLjwvaDQ+Ci0g
ICAgICAgIDxwPk5vdGU6IHRoaXMgdGVzdCBpcyBmb3IgdG91Y2gtZGV2aWNlcyBvbmx5PC9wPgot
ICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGxlciIgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAg
PGRpdj4KLSAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzY3JvbGxUYXJnZXQiPgotICAgICAgICAg
ICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAg
ICAgICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3Jl
ZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICAg
ICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNp
IHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAgICAgICAgbG9i
b3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAg
ICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3Vt
IGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD4KLSAgICAgICAg
ICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIg
YWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICAgICAgbm9udW1t
eSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0g
ZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQg
bWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNj
aXBpdAotICAgICAgICAgICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4
IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgICAgICAgICA8L3A+Ci0gICAgICAg
ICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAg
ICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAg
ICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAg
ICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0g
ICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICAgICAgICAgIExvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGll
bQotICAgICAgICAgICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50
IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAg
ICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3Ry
dWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAg
ICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0Lgot
ICAgICAgICAgICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3Jl
bSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9y
ZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD4K
LSAgICAgICAgICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25z
ZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICAg
ICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25h
IGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICAgICAgICAgIFV0IHdpc2lz
IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNv
cnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBh
bGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgICAgICAgICA8L3A+
Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9w
PgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgICAgIDwvZGl2PgotICAgICAgICAgICAgPC9kaXY+Ci0gICAg
ICAgIDwvZGl2PgotICAgICAgICA8aW5wdXQgdHlwZT0iYnV0dG9uIiBpZD0iYnRuQ29tcGxldGUi
IHZhbHVlPSJDb21wbGV0ZSB0ZXN0Ij4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFz
Y3JpcHQnPgotICAgICAgICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAg
ICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb24gPSBhc3luY190ZXN0KCJ0b3VjaC1hY3Rpb24g
YXR0cmlidXRlIHRlc3QiKTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxiYWNrKHNo
b3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAg
ICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIp
OwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJidG5Db21wbGV0ZSIpOwotCi0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdG91Y2gt
YWN0aW9uIGF0dHJpYnV0ZSB3b3JrcyBwcm9wZXJseSBmb3IgZW1iZWRkZWQgZGl2cwotICAgICAg
ICAgICAgICAgIC8vCi0gICAgICAgICAgICAgICAgLy8gVEE6IDE1LjYKLSAgICAgICAgICAgICAg
ICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAg
ICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9
IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24uc3RlcChmdW5jdGlv
bigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKHRhcmdldDAu
c2Nyb2xsTGVmdCwgMCwgInNjcm9sbCB4IG9mZnNldCBzaG91bGQgbm90IGJlIDAgaW4gdGhlIGVu
ZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0
YXJnZXQwLnNjcm9sbFRvcCwgMCwgInNjcm9sbCB5IG9mZnNldCBzaG91bGQgYmUgMCBpbiB0aGUg
ZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
ICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgdXBk
YXRlRGVzY3JpcHRpb25Db21wbGV0ZSgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAg
ICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPGgxPmJlaGF2aW91cjogcGFuLXg8L2gx
PgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhl
IGZvbGxvd2luZyBwb2ludGVyIHR5cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVy
dHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0i
bG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9jaGls
ZC1wYW4teC1jaGlsZC1wYW4teV90b3VjaC1tYW51YWwuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91
Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtcGFuLXgtY2hpbGQtcGFuLXlfdG91Y2gtbWFudWFsLmh0
bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ0MjBjYzU2Yzc3YjY5MTBlZTk2ZDg3
NWVlMjRlYjBiOWIwYTRjNzEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1wYW4teC1j
aGlsZC1wYW4teV90b3VjaC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExNyArMCww
IEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+
dG91Y2gtYWN0aW9uOiBwYXJlbnQgPiBjaGlsZDogcGFuLXggPiBjaGlsZDogcGFuLXk8L3RpdGxl
PgotICAgICAgICA8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9IlRBMTUuMTMgLSBUb3VjaCBh
Y3Rpb24gaW5oZXJpdHMgY2hpbGQgJ3Bhbi14JyAtPiBjaGlsZCAncGFuLXknIHRlc3QiPgotICAg
ICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4K
LSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9p
bnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90
ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2Vz
L3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBv
aW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICAgLnNjcm9sbGVyID4gZGl2IHsKLSAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXg7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAuc2Nyb2xsZXIgPiBkaXYgZGl2IHsKLSAgICAg
ICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5
bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+
UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAg
ICAgPGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQg
RE9XTiB0aGVuIFJJR0hUIGluc2lkZSBibHVlIHJlY3RhbmdsZS4gVGFwIENvbXBsZXRlIGJ1dHRv
biB1bmRlciB0aGUgcmVjdGFuZ2xlIHdoZW4gZG9uZS4gRXhwZWN0ZWQ6IG5vIHBhbm5pbmcvem9v
bWluZy9ldGMuPC9oND4KLSAgICAgICAgPHA+Tm90ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaC1k
ZXZpY2VzIG9ubHk8L3A+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbGVyIiBpZD0idGFyZ2V0
MCI+Ci0gICAgICAgICAgICA8ZGl2PgotICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNjcm9sbFRh
cmdldCI+Ci0gICAgICAgICAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgICAgICAgICAg
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQs
IHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0
aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0Lgot
ICAgICAgICAgICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1
aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25z
ZXF1YXQuCi0gICAgICAgICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAg
IDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAg
ICAgIDxwPgotICAgICAgICAgICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFt
ZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAg
ICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xv
cmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgICAgICAgICAg
VXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9u
IHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgICAgICAgICBsb2JvcnRpcyBu
aXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICAgICAg
ICAgIDwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFt
ZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Ig
c2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAg
ICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNj
aW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmgg
ZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZv
bHV0cGF0LgotICAgICAgICAgICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2
ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29t
bW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAg
ICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAg
ICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAg
ICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFj
cmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAg
ICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVy
Y2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgICAgICAgICBs
b2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAg
ICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3Vt
IGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1
bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPC9kaXY+Ci0gICAgICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxpbnB1dCB0eXBlPSJidXR0b24i
IGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNvbXBsZXRlIHRlc3QiPgotICAgICAgICA8c2NyaXB0
IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+Ci0gICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRl
cnR5cGVzID0ge307Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9p
bnRlclR5cGVzKTsKLQotICAgICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb24gPSBhc3luY190
ZXN0KCJ0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHRlc3QiKTsKLQotICAgICAgICAgICAgZnVuY3Rp
b24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInRhcmdldDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgYnRuQ29tcGxldGUgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnRuQ29tcGxldGUiKTsKLQotICAgICAgICAgICAgICAg
IC8vIENoZWNrIGlmIHRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgd29ya3MgcHJvcGVybHkgZm9yIGVt
YmVkZGVkIGRpdnMKLSAgICAgICAgICAgICAgICAvLyBTY3JvbGxhYmxlLVBhcmVudCwgQ2hpbGQ6
IGBwYW4teGAsIEdyYW5kLUNoaWxkOiBgcGFuLXlgCi0gICAgICAgICAgICAgICAgLy8gVEE6IDE1
LjEzCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoYnRuQ29tcGxldGUsICdjbGljaycsIGZ1bmN0
aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tl
dmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNo
YWN0aW9uLnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRf
ZXF1YWxzKHRhcmdldDAuc2Nyb2xsTGVmdCwgMCwgInNjcm9sbCB4IG9mZnNldCBzaG91bGQgYmUg
MCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKHRhcmdldDAuc2Nyb2xsVG9wLCAwLCAic2Nyb2xsIHkgb2Zmc2V0IHNob3VsZCBi
ZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0g
ICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24uZG9uZSgpOwotICAgICAgICAgICAg
ICAgICAgICB1cGRhdGVEZXNjcmlwdGlvbkNvbXBsZXRlKCk7Ci0gICAgICAgICAgICAgICAgfSk7
Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAnc2Nyb2xsJywgZnVuY3Rpb24o
ZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbi5zdGVwKGZhaWxP
blNjcm9sbCwgInNjcm9sbCByZWNlaXZlZCB3aGlsZSB0b3VjaC1hY3Rpb24gaXMgbm9uZSIpOwot
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICAgICAgPGgxPmJlaGF2aW91cjogbm9uZTwvaDE+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRl
LW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIgdHlwZXMgd2Vy
ZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48L3A+Ci0gICAg
ICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4KLTwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X3RvdWNoLWFjdGlvbi1pbmhlcml0X3BhcmVudC1ub25lX3RvdWNoLW1hbnVhbC5odG1sIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRz
L3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9wYXJlbnQtbm9uZV90b3VjaC1tYW51
YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWU2NzRhMTRkYTU1MGZiNjNi
ZmU1Mzg1OWE4ZTRkYjUyOWY1NTllOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1pbmhlcml0X3BhcmVudC1u
b25lX3RvdWNoLW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT50b3VjaC1h
Y3Rpb246IGluaGVyaXQgZnJvbSBwYXJlbnQ6IG5vbmU8L3RpdGxlPgotICAgICAgICA8bWV0YSBu
YW1lPSJhc3NlcnQiIGNvbnRlbnQ9IlRBMTUuOCAtIHdoZW4gYSB1c2VyIHRvdWNoZXMgYW4gZWxl
bWVudCwgdGhlIGVmZmVjdCBvZiB0aGF0IHRvdWNoIGlzIGRldGVybWluZWQgYnkgdGhlIHZhbHVl
IG9mIHRoZSB0b3VjaC1hY3Rpb24gcHJvcGVydHkgYW5kIHRoZSBkZWZhdWx0IHRvdWNoIGJlaGF2
aW9ycyBvbiB0aGUgZWxlbWVudCBhbmQgaXRzIGFuY2VzdG9ycy4gU2Nyb2xsYWJsZS1QYXJlbnQ6
IGBub25lYCBDaGlsZDogYGF1dG9gIj4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5zY3JvbGxlciB7Ci0gICAgICAgICAg
ICB0b3VjaC1hY3Rpb246IG5vbmU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0g
ICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRl
ciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAgICAgPGg0
IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQgRE9XTiB0
aGVuIFJJR0hUIGluc2lkZSBibHVlIHJlY3RhbmdsZS4gVGFwIENvbXBsZXRlIGJ1dHRvbiB1bmRl
ciB0aGUgcmVjdGFuZ2xlIHdoZW4gZG9uZS4gRXhwZWN0ZWQ6IG5vIHBhbm5pbmc8L2g0PgotICAg
ICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMgZm9yIHRvdWNoLWRldmljZXMgb25seTwvcD4KLSAg
ICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiIGlkPSJ0YXJnZXQwIj4KLSAgICAgICAgICAgIDxk
aXYgaWQ9InNjcm9sbFRhcmdldCI+Ci0gICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAg
ICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2lu
ZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21v
ZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0
LgotICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVp
cyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAg
ICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0
LgotICAgICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1l
dC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0g
ICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNy
ZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAg
ICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1
dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgICAgICBsb2JvcnRpcyBu
aXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICAgICAg
PC9wPgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9w
PgotICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAg
IDxwPgotICAgICAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29u
c2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAg
bm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFs
aWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBh
ZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1
c2NpcGl0Ci0gICAgICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBl
YSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+TG9y
ZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAg
ICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2lu
ZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21v
ZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0
LgotICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVp
cyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAg
ICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0
LgotICAgICAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1l
dC4uLjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgIDwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGlucHV0IHR5
cGU9ImJ1dHRvbiIgaWQ9ImJ0bkNvbXBsZXRlIiB2YWx1ZT0iQ29tcGxldGUgdGVzdCI+Ci0gICAg
ICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLSAgICAgICAgICAgIHZhciBkZXRl
Y3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxi
YWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICB2YXIgdGVzdF90b3VjaGFjdGlv
biA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCIpOwotCi0gICAgICAg
ICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5D
b21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotCi0gICAg
ICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSB3b3JrcyBwcm9w
ZXJseSBmb3IgZW1iZWRkZWQgZGl2cwotICAgICAgICAgICAgICAgIC8vCi0gICAgICAgICAgICAg
ICAgLy8gVEE6IDE1LjgKLSAgICAgICAgICAgICAgICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ2Ns
aWNrJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9p
bnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAg
IHRlc3RfdG91Y2hhY3Rpb24uc3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxMZWZ0LCAwLCAic2Nyb2xsIHggb2Zmc2V0
IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3AsIDAsICJzY3JvbGwgeSBvZmZz
ZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbi5kb25lKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29tcGxldGUoKTsKLSAgICAgICAg
ICAgICAgICB9KTsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICdzY3JvbGwn
LCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9u
LnN0ZXAoZmFpbE9uU2Nyb2xsLCAic2Nyb2xsIHJlY2VpdmVkIHdoaWxlIHRvdWNoLWFjdGlvbiBp
cyBub25lIik7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwv
c2NyaXB0PgotICAgICAgICA8aDE+YmVoYXZpb3VyOiBub25lPC9oMT4KLSAgICAgICAgPGRpdiBp
ZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRl
ciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+
LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAg
PC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWtleWJvYXJkLW1hbnVhbC5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24ta2V5Ym9hcmQtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGE0MWQ3MDc4ZjJlZTg3YThhNTY4NjM3OTUzNmFhZjFlMGRlOTE1ZGYu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJl
dmVudF90b3VjaC1hY3Rpb24ta2V5Ym9hcmQtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwxMjUgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAg
ICAgPHRpdGxlPnRvdWNoLWFjdGlvbjoga2V5Ym9hcmQ8L3RpdGxlPgotICAgICAgICA8bWV0YSBu
YW1lPSJ0aW1lb3V0IiBjb250ZW50PSJsb25nIj4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3Bv
cnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4K
LSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0
PgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+
PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+
PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICN0YXJnZXQwIHsKLSAgICAg
ICAgICAgIHdpZHRoOiA3MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogNDMwcHg7Ci0gICAgICAg
ICAgICB0b3VjaC1hY3Rpb246IG5vbmU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9p
bnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAgICAg
PGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBQcmVzcyBET1dOIEFSUk9XIGtleS4gV2Fp
dCBmb3IgZGVzY3JpcHRpb24gdXBkYXRlLiBFeHBlY3RlZDogcGFuIGVuYWJsZWQ8L2g0PgotICAg
ICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMgZm9yIGtleWJvYXJkIG9ubHk8L3A+Ci0gICAgICAg
IDxkaXYgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9y
ZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNl
ZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0
IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAg
ICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0
dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNs
IHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0g
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAg
ICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9y
ZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMg
ZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29y
cGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4
IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29u
c2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251
bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3Vh
bSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0g
dmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAot
ICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNv
bnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAg
ICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlw
aXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNt
b2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBh
dC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBu
b3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAg
ICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAg
ICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxw
PkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBk
b2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxzY3JpcHQgdHlw
ZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLQotICAgICAgICAgICAgdmFyIHhTY3JvbGxJc1JlY2VpdmVk
ID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgeVNjcm9sbElzUmVjZWl2ZWQgPSBmYWxzZTsKLSAg
ICAgICAgICAgIHZhciB4U2NyMCwgeVNjcjAsIHhTY3IxLCB5U2NyMTsKLQotICAgICAgICAgICAg
ZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLQotICAgICAgICAgICAgICAgIHZhciB0ZXN0X3Rv
dWNoYWN0aW9uID0gYXN5bmNfdGVzdCgidG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSB0ZXN0Iik7Ci0K
LSAgICAgICAgICAgICAgICB4U2NyMCA9IHRhcmdldDAuc2Nyb2xsTGVmdDsKLSAgICAgICAgICAg
ICAgICB5U2NyMCA9IHRhcmdldDAuc2Nyb2xsVG9wOwotCi0gICAgICAgICAgICAgICAgdGFyZ2V0
MC5mb2N1cygpOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgJ3Njcm9sbCcs
IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHhTY3IxID0gdGFyZ2V0MC5z
Y3JvbGxMZWZ0OwotICAgICAgICAgICAgICAgICAgICB5U2NyMSA9IHRhcmdldDAuc2Nyb2xsVG9w
OwotCi0gICAgICAgICAgICAgICAgICAgIGlmKHhTY3IxICE9IHhTY3IwKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICB4U2Nyb2xsSXNSZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgICAgICAgICBpZih5U2NyMSAhPSB5U2NyMCkgewotICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbi5zdGVwKGZ1bmN0aW9uICgpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB5U2Nyb2xsSXNSZWNlaXZlZCA9IHRydWU7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUodHJ1ZSwgInktc2Nyb2xsIHJlY2Vp
dmVkLiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICB1cGRhdGVEZXNjcmlwdGlvbk5leHRTdGVwS2V5Ym9hcmQoKTsKLSAgICAgICAgICAgICAg
ICAgICAgfQotCi0gICAgICAgICAgICAgICAgICAgIGlmKHhTY3JvbGxJc1JlY2VpdmVkICYmIHlT
Y3JvbGxJc1JlY2VpdmVkKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0
aW9uLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29t
cGxldGUoKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotICAg
ICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlvbiB1cGRhdGVEZXNjcmlwdGlvbk5leHRT
dGVwS2V5Ym9hcmQoKSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2Rlc2MnKS5pbm5lckhUTUwgPSAiVGVzdCBEZXNjcmlwdGlvbjogcHJlc3MgUklHSFQgQVJST1cg
a2V5LiI7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8aDE+dG91
Y2gtYWN0aW9uOiBub25lPC9oMT4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4K
LSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAgPC9ib2R5
PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVyZXZlbnRfdG91Y2gtYWN0aW9uLW1vdXNlLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90
b3VjaC1hY3Rpb24tbW91c2UtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGZjYzg1ODQ1MTVjNTFkNjBiYjAxMDkyZmZlMWY3MDEyNzNjN2JiNTguLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1h
Y3Rpb24tbW91c2UtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMzAgKzAsMCBAQAot
PCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPnRvdWNo
LWFjdGlvbjogbW91c2U8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBvaW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3Njcmlw
dD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI3RhcmdldDAgewotICAgICAgICAgICAg
d2lkdGg6IDcwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA0MzBweDsKLSAgICAgICAgICAgIHRv
dWNoLWFjdGlvbjogbm9uZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2
ZW50cyB0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHN1cHBvcnQ8L2gxPgotICAgICAgICA8aDQgaWQ9
ImRlc2MiPlRlc3QgRGVzY3JpcHRpb246IFRyeSB0byBzY3JvbGwgdGV4dCBkb3duIHVzaW5nIG1v
dXNlICh1c2UgbW91c2Ugd2hlZWwgb3IgY2xpY2sgb24gdGhlIHNjcm9sbGJhcikuIFdhaXQgZm9y
IGRlc2NyaXB0aW9uIHVwZGF0ZS48L2g0PgotICAgICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMg
Zm9yIG1vdXNlIG9ubHk8L3A+Ci0gICAgICAgIDxkaXYgaWQ9InRhcmdldDAiPgotICAgICAgICAg
ICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNl
Y3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1t
eSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0g
ZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZl
bmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAg
ICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25z
ZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAg
ICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlz
Y2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9k
IHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQu
Ci0gICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9z
dHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAg
bG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAg
ICAgICAgPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3Jl
bSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2Vk
IGRpZW0KLSAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQg
bGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAg
ICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1
dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wg
dXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Ig
c2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAg
ICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3Jl
IG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBl
bmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3Jw
ZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXgg
ZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5M
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0g
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
PC9kaXY+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLSAgICAgICAg
ICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLQotICAgICAgICAgICAgdmFyIHhT
Y3JvbGxJc1JlY2VpdmVkID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgeVNjcm9sbElzUmVjZWl2
ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciB4U2NyMCwgeVNjcjAsIHhTY3IxLCB5U2NyMTsK
LQotICAgICAgICAgICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50ZXJUeXBlcyk7
Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAgICB2YXIgdGFy
Z2V0MCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQwIik7Ci0KLSAgICAgICAgICAg
ICAgICB2YXIgdGVzdF90b3VjaGFjdGlvbiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRy
aWJ1dGUgdGVzdCIpOwotCi0gICAgICAgICAgICAgICAgeFNjcjAgPSB0YXJnZXQwLnNjcm9sbExl
ZnQ7Ci0gICAgICAgICAgICAgICAgeVNjcjAgPSB0YXJnZXQwLnNjcm9sbFRvcDsKLQotICAgICAg
ICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICdwb2ludGVyZG93bicsIGZ1bmN0aW9uKGV2ZW50
KSB7Ci0gICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2lu
dGVyVHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAg
b25fZXZlbnQodGFyZ2V0MCwgJ3Njcm9sbCcsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgIHhTY3IxID0gdGFyZ2V0MC5zY3JvbGxMZWZ0OwotICAgICAgICAgICAgICAgICAg
ICB5U2NyMSA9IHRhcmdldDAuc2Nyb2xsVG9wOwotCi0gICAgICAgICAgICAgICAgICAgIGlmKHhT
Y3IxICE9IHhTY3IwKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB4U2Nyb2xsSXNSZWNlaXZl
ZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgICAgICAgICBp
Zih5U2NyMSAhPSB5U2NyMCkgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFj
dGlvbi5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB5U2Ny
b2xsSXNSZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X3RydWUodHJ1ZSwgInktc2Nyb2xsIHJlY2VpdmVkLiIpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVEZXNjcmlwdGlvbk5leHRTdGVw
TW91c2UoKTsKLSAgICAgICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgICAgIGlm
KHhTY3JvbGxJc1JlY2VpdmVkICYmIHlTY3JvbGxJc1JlY2VpdmVkKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29tcGxldGUoKTsKLSAgICAgICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBmdW5jdGlv
biB1cGRhdGVEZXNjcmlwdGlvbk5leHRTdGVwTW91c2UoKSB7Ci0gICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rlc2MnKS5pbm5lckhUTUwgPSAiVGVzdCBEZXNjcmlwdGlv
bjogVHJ5IHRvIHNjcm9sbCB0ZXh0IHJpZ2h0IHVzaW5nIG1vdXNlICh1c2UgbW91c2Ugd2hlZWwg
b3IgY2xpY2sgb24gdGhlIHNjcm9sbGJhcikuIjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9z
Y3JpcHQ+Ci0gICAgICAgIDxoMT50b3VjaC1hY3Rpb246IG5vbmU8L2gxPgotICAgICAgICA8ZGl2
IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2lu
dGVyIHR5cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bh
bj4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAg
ICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZl
bnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tbm9uZS1jc3NfdG91Y2gtbWFudWFsLmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1ub25lLWNzc190b3VjaC1tYW51YWwuaHRtbApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGVjNjk0ZjNlY2E5ZGJmZTM1NDgzZDA3ODNk
NzE2ZjQyYTBkNzQ0My4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJl
dmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1ub25lLWNzc190b3VjaC1tYW51YWwuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDExMSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1s
PgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+dG91Y2gtYWN0aW9uOiBub25lPC90aXRsZT4K
LSAgICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1LjIgLSBXaXRoIGB0b3Vj
aC1hY3Rpb246IG5vbmVgIG9uIGEgc3dpcGVkIG9yIGNsaWNrL2RyYWdnZWQgZWxlbWVudCwgYHBv
aW50ZXJkb3duKyhvcHRpb25hbCBwb2ludGVybW92ZSkrcG9pbnRlcnVwYCBtdXN0IGJlIGRpc3Bh
dGNoZWQuIj4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRl
dmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9j
c3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
Y3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
dHlsZT4KLSAgICAgICAgICAgICN0YXJnZXQwIHsKLSAgICAgICAgICAgIHdpZHRoOiA3MDBweDsK
LSAgICAgICAgICAgIGhlaWdodDogNDMwcHg7Ci0gICAgICAgICAgICB0b3VjaC1hY3Rpb246IG5v
bmU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxi
b2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDE+UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0
aW9uIGF0dHJpYnV0ZSBzdXBwb3J0PC9oMT4KLSAgICAgICAgPGg0IGlkPSJkZXNjIj5UZXN0IERl
c2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQgRE9XTiB0aGVuIFJJR0hULiBUYXAgQ29t
cGxldGUgYnV0dG9uIHVuZGVyIHRoZSByZWN0YW5nbGUgd2hlbiBkb25lLiBFeHBlY3RlZDogbm8g
cGFubmluZy96b29taW5nL2V0Yy48L2g0PgotICAgICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMg
Zm9yIHRvdWNoLWRldmljZXMgb25seTwvcD4KLSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MCI+Ci0g
ICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1l
dCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAg
ICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEg
YWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQg
bWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNj
aXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21t
b2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlw
c3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0g
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+
Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVl
ciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJo
IGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2
b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwg
cXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAg
ICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQu
Ci0gICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0g
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAg
ICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBl
bGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNp
ZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAg
ICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBl
eGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0
aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAg
PC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0g
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1
bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0K
LSAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVl
dCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0
IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1
bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxp
cXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+
TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBp
cHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRv
bG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgot
ICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgaWQ9ImJ0bkNvbXBs
ZXRlIiB2YWx1ZT0iQ29tcGxldGUgdGVzdCI+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9q
YXZhc2NyaXB0Jz4KLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsK
LQotICAgICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb24gPSBhc3luY190ZXN0KCJ0b3VjaC1h
Y3Rpb24gYXR0cmlidXRlIHRlc3QiKTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxi
YWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0g
ICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFy
Z2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotCi0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYg
InRvdWNoLWFjdGlvbjogbm9uZSIgYXR0cmlidXRlIHdvcmtzIHByb3Blcmx5Ci0gICAgICAgICAg
ICAgICAgLy9UQTogMTUuMgotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAn
Y2xpY2snLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9w
b2ludGVydHlwZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAg
ICAgdGVzdF90b3VjaGFjdGlvbi5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbExlZnQsIDAsICJzY3JvbGwgeCBvZmZz
ZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbFRvcCwgMCwgInNjcm9sbCB5IG9m
ZnNldCBzaG91bGQgYmUgMCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAg
ICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsK
LSAgICAgICAgICAgICAgICAgICAgdXBkYXRlRGVzY3JpcHRpb25Db21wbGV0ZSgpOwotICAgICAg
ICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgJ3Njcm9s
bCcsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rp
b24uc3RlcChmYWlsT25TY3JvbGwsICJzY3JvbGwgcmVjZWl2ZWQgd2hpbGUgdG91Y2gtYWN0aW9u
IGlzIG5vbmUiKTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
PC9zY3JpcHQ+Ci0gICAgICAgIDxoMT50b3VjaC1hY3Rpb246IG5vbmU8L2gxPgotICAgICAgICA8
ZGl2IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBw
b2ludGVyIHR5cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwv
c3Bhbj4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXgtY3NzX3RvdWNoLW1hbnVhbC5o
dG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXgtY3NzX3RvdWNoLW1hbnVhbC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNzU3YmFlYzZiZTQyNzg4NGQ2Mjcw
MjM0ZjRjNzNlM2RkYjk1OWI1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi14LWNzc190b3VjaC1tYW51
YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEwNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4K
LTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+dG91Y2gtYWN0aW9uOiBwYW4teDwv
dGl0bGU+Ci0gICAgICAgIDxtZXRhIG5hbWU9ImFzc2VydCIgY29udGVudD0iVEExNS4zIC0gV2l0
aCBgdG91Y2gtYWN0aW9uOiBwYW4teGAgb24gYSBzd2lwZWQgb3IgY2xpY2svZHJhZ2dlZCBlbGVt
ZW50LCBvbmx5IHBhbm5pbmcgb24gdGhlIHgtYXhpcyBzaG91bGQgYmUgcG9zc2libGUuIj4KLSAg
ICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+
Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9InBv
aW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMv
dGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJw
b2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAg
ICAgICAgICN0YXJnZXQwIHsKLSAgICAgICAgICAgIHdpZHRoOiA3MDBweDsKLSAgICAgICAgICAg
IGhlaWdodDogNDMwcHg7Ci0gICAgICAgICAgICB0b3VjaC1hY3Rpb246IHBhbi14OwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InJ1bigpIj4KLSAgICAgICAgPGgxPlBvaW50ZXIgRXZlbnRzIHRvdWNoLWFjdGlvbiBhdHRyaWJ1
dGUgc3VwcG9ydDwvaDE+Ci0gICAgICAgIDxoNCBpZD0iZGVzYyI+VGVzdCBEZXNjcmlwdGlvbjog
VHJ5IHRvIHNjcm9sbCBlbGVtZW50IERPV04gdGhlbiBSSUdIVC4gVGFwIENvbXBsZXRlIGJ1dHRv
biB1bmRlciB0aGUgcmVjdGFuZ2xlIHdoZW4gZG9uZS4gRXhwZWN0ZWQ6IG9ubHkgcGFucyBpbiB4
IGRpcmVjdGlvbi48L2g0PgotICAgICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMgZm9yIHRvdWNo
LWRldmljZXMgb25seTwvcD4KLSAgICAgICAgPGRpdiBpZD0idGFyZ2V0MCI+Ci0gICAgICAgICAg
ICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2Vj
dGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251bW15
IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBl
cmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVu
aWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAg
ICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNl
cXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFt
ZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAgICAg
ICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNj
aW5nIGVsaXQsIHNlZCBkaWVtCi0gICAgICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2Qg
dGluY2lkdW50IHV0IGxhY3JlZXQgZG9sb3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4K
LSAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0
cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBs
b2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAg
ICAgICA8L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQg
ZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBs
YWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAg
ICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0
aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1
dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAg
ICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUg
bWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAgICAgICAgIFV0IHdpc2lzIGVu
aW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHR1dGlvbiB1bGxhbWNvcnBl
ciBzdXNjaXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBl
YSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4KLSAgICAgICAgICAgIDxwPkxv
cmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBz
dW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBh
bWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICA8
L2Rpdj4KLSAgICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgaWQ9ImJ0bkNvbXBsZXRlIiB2YWx1
ZT0iQ29tcGxldGUgdGVzdCI+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0
Jz4KLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAg
ICAgIHZhciB0ZXN0X3RvdWNoYWN0aW9uID0gYXN5bmNfdGVzdCgidG91Y2gtYWN0aW9uIGF0dHJp
YnV0ZSB0ZXN0Iik7Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFjayhzaG93UG9p
bnRlclR5cGVzKTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAg
ICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLSAg
ICAgICAgICAgICAgICB2YXIgYnRuQ29tcGxldGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YnRuQ29tcGxldGUiKTsKLQotICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmICJ0b3VjaC1hY3Rp
b246IHBhbi14IiBhdHRyaWJ1dGUgd29ya3MgcHJvcGVybHkKLSAgICAgICAgICAgICAgICAvL1RB
OiAxNS4zCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoYnRuQ29tcGxldGUsICdjbGljaycsIGZ1
bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBl
c1tldmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3Rv
dWNoYWN0aW9uLnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfbm90X2VxdWFscyh0YXJnZXQwLnNjcm9sbExlZnQsIDAsICJzY3JvbGwgeCBvZmZzZXQgc2hv
dWxkIG5vdCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3AsIDAsICJzY3JvbGwgeSBvZmZz
ZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbi5kb25lKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uQ29tcGxldGUoKTsKLSAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxo
MT50b3VjaC1hY3Rpb246IHBhbi14PC9oMT4KLSAgICAgICAgPGRpdiBpZD0iY29tcGxldGUtbm90
aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcgcG9pbnRlciB0eXBlcyB3ZXJlIGRl
dGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48L3NwYW4+LjwvcD4KLSAgICAgICAg
PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+Ci0gICAgPC9ib2R5PgotPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRf
dG91Y2gtYWN0aW9uLXBhbi14LXBhbi15LXBhbi15X3RvdWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXgtcGFuLXktcGFuLXlfdG91Y2gtbWFudWFsLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUyYTQzODZiMjdhYmNkMjliZTA1NjNhODUz
NzY1M2JlYzAyMDZjY2QuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXgtcGFuLXktcGFuLXlfdG91Y2gt
bWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTEgKzAsMCBAQAotPCFkb2N0eXBlIGh0
bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPnRvdWNoLWFjdGlvbjogcGFy
ZW50ID4gY2hpbGQ6IHBhbi14IHBhbi15ID4gY2hpbGQ6IHBhbi15PC90aXRsZT4KLSAgICAgICAg
PG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1LjE3IC0gVG91Y2ggYWN0aW9uICdwYW4t
eCBwYW4teScgJ3Bhbi15JyB0ZXN0Ij4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5zY3JvbGxlciA+IGRpdiB7Ci0gICAg
ICAgICAgICB0b3VjaC1hY3Rpb246IHBhbi14IHBhbi15OwotICAgICAgICAgICAgfQotICAgICAg
ICAgICAgLnNjcm9sbGVyID4gZGl2IGRpdiB7Ci0gICAgICAgICAgICB0b3VjaC1hY3Rpb246IHBh
bi15OwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8
Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICAgICAgPGgxPlBvaW50ZXIgRXZlbnRzIHRvdWNoLWFj
dGlvbiBhdHRyaWJ1dGUgc3VwcG9ydDwvaDE+Ci0gICAgICAgIDxoNCBpZD0iZGVzYyI+VGVzdCBE
ZXNjcmlwdGlvbjogVHJ5IHRvIHNjcm9sbCBlbGVtZW50IERPV04gdGhlbiBSSUdIVCBpbnNpZGUg
Ymx1ZSByZWN0YW5nbGUuIFRhcCBDb21wbGV0ZSBidXR0b24gdW5kZXIgdGhlIHJlY3RhbmdsZSB3
aGVuIGRvbmUuIEV4cGVjdGVkOiBvbmx5IHBhbnMgaW4geSBkaXJlY3Rpb24uPC9oND4KLSAgICAg
ICAgPHA+Tm90ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaC1kZXZpY2VzIG9ubHk8L3A+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNjcm9sbGVyIiBpZD0idGFyZ2V0MCI+Ci0gICAgICAgICAgICA8ZGl2
PgotICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNjcm9sbFRhcmdldCI+Ci0gICAgICAgICAgICAg
ICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRpcGlzY2lu
ZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21v
ZCB0aW5jaWR1bnQgdXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0
LgotICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVp
cyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAg
ICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0
LgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwv
cD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48
L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4u
PC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4u
LjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1l
dC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxp
dCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9k
IHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQu
Ci0gICAgICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwg
cXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNv
bnNlcXVhdC4KLSAgICAgICAgICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAg
IDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAg
ICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAg
ICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAg
ICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAg
ICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAg
ICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAg
ICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRv
bG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgICAgICAg
ICBVdCB3aXNpcyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRp
b24gdWxsYW1jb3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICAgICAgICAgIGxvYm9ydGlz
IG5pc2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAg
ICAgICAgPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQg
YW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0
IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNp
dCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Ig
c2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9y
IHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xv
ciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBp
c2NpbmcgZWxpdCwgc2VkIGRpZW0KLSAgICAgICAgICAgICAgICAgICAgICAgIG5vbnVtbXkgbmli
aCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQg
dm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgICAgICAgICBVdCB3aXNpcyBlbmltIGFkIG1pbmlt
IHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1jb3JwZXIgc3VzY2lwaXQK
LSAgICAgICAgICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5pc2wgdXQgYWxpcXVpcCBleCBlYSBj
b21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAg
ICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAg
ICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAg
ICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAg
ICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAg
ICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAg
ICAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAg
ICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAgICAgIDwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAg
ICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgaWQ9ImJ0bkNvbXBsZXRlIiB2YWx1ZT0iQ29tcGxl
dGUgdGVzdCI+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLSAgICAg
ICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLSAgICAgICAgICAgIGFkZF9j
b21wbGV0aW9uX2NhbGxiYWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICB2YXIg
dGVzdF90b3VjaGFjdGlvbiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVz
dCIpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFy
IHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAg
ICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidG5Db21w
bGV0ZSIpOwotCi0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdG91Y2gtYWN0aW9uIGF0dHJp
YnV0ZSB3b3JrcyBwcm9wZXJseSBmb3IgZW1iZWRkZWQgZGl2cwotICAgICAgICAgICAgICAgIC8v
Ci0gICAgICAgICAgICAgICAgLy8gVEE6IDE1LjE3Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQo
YnRuQ29tcGxldGUsICdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwotICAg
ICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLnN0ZXAoZnVuY3Rpb24oKSB7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRhcmdldDAuc2Nyb2xsTGVmdCwgMCwg
InNjcm9sbCB4IG9mZnNldCBzaG91bGQgYmUgMCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfbm90X2VxdWFscyh0YXJnZXQwLnNjcm9sbFRv
cCwgMCwgInNjcm9sbCB5IG9mZnNldCBzaG91bGQgbm90IGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUg
dGVzdCIpOwotICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgdGVz
dF90b3VjaGFjdGlvbi5kb25lKCk7Ci0gICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0
aW9uQ29tcGxldGUoKTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxoMT5iZWhhdmlvdXI6IHBhbi15PC9oMT4KLSAgICAgICAg
PGRpdiBpZD0iY29tcGxldGUtbm90aWNlIj4KLSAgICAgICAgICAgIDxwPlRoZSBmb2xsb3dpbmcg
cG9pbnRlciB0eXBlcyB3ZXJlIGRldGVjdGVkOiA8c3BhbiBpZD0icG9pbnRlcnR5cGUtbG9nIj48
L3NwYW4+LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImxvZyI+PC9kaXY+
Ci0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi15LWNzc190b3VjaC1tYW51YWwu
aHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi15LWNzc190b3VjaC1tYW51YWwu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRmODliOGViNzc0ZjZhYThkNGM2
ZTM3MjI1MDhiNjNmNDIyNzFmYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bv
aW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1wYW4teS1jc3NfdG91Y2gtbWFu
dWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDcgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPnRvdWNoLWFjdGlvbjogcGFuLXk8
L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ0aW1lb3V0IiBjb250ZW50PSJsb25nIj4KLSAg
ICAgICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJUQTE1LjQgLSBXaXRoIGB0b3VjaC1h
Y3Rpb246IHBhbi15YCBvbiBhIHN3aXBlZCBvciBjbGljay9kcmFnZ2VkIGVsZW1lbnQsIG9ubHkg
cGFubmluZyBpbiB0aGUgeS1heGlzIHNob3VsZCBiZSBwb3NzaWJsZS4iPgotICAgICAgICA8bWV0
YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAg
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icG9pbnRlcmV2ZW50
X3N0eWxlcy5jc3MiPgotICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVz
cy5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJu
ZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InBvaW50ZXJldmVu
dF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgI3Rh
cmdldDAgewotICAgICAgICAgICAgd2lkdGg6IDcwMHB4OwotICAgICAgICAgICAgaGVpZ2h0OiA0
MzBweDsKLSAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7Ci0gICAgICAgICAgICB9Ci0g
ICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgot
ICAgICAgICA8aDE+UG9pbnRlciBFdmVudHMgdG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSBzdXBwb3J0
PC9oMT4KLSAgICAgICAgPGg0IGlkPSJkZXNjIj5UZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Ny
b2xsIGVsZW1lbnQgRE9XTiB0aGVuIFJJR0hULiBUYXAgQ29tcGxldGUgYnV0dG9uIHVuZGVyIHRo
ZSByZWN0YW5nbGUgd2hlbiBkb25lLiBFeHBlY3RlZDogb25seSBwYW5zIGluIHkgZGlyZWN0aW9u
LjwvaDQ+Ci0gICAgICAgIDxwPk5vdGU6IHRoaXMgdGVzdCBpcyBmb3IgdG91Y2gtZGV2aWNlcyBv
bmx5PC9wPgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj4KLSAgICAgICAgICAgIDxwPgotICAg
ICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ZXIgYWRp
cGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgIG5vbnVtbXkgbmliaCBldWlz
bW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGlndWFtIGVyYXQgdm9sdXRw
YXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMg
bm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0Ci0gICAgICAgICAgICAg
ICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LgotICAg
ICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQu
Li48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD4KLSAgICAgICAgICAgICAgICBM
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dWVyIGFkaXBpc2NpbmcgZWxpdCwg
c2VkIGRpZW0KLSAgICAgICAgICAgICAgICBub251bW15IG5pYmggZXVpc21vZCB0aW5jaWR1bnQg
dXQgbGFjcmVldCBkb2xvcmUgbWFnbmEgYWxpZ3VhbSBlcmF0IHZvbHV0cGF0LgotICAgICAgICAg
ICAgICAgIFV0IHdpc2lzIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNp
IHR1dGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdAotICAgICAgICAgICAgICAgIGxvYm9ydGlzIG5p
c2wgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4KLSAgICAgICAgICAgIDwvcD4K
LSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAg
ICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgPHA+Ci0gICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9s
b3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWVtCi0gICAg
ICAgICAgICAgICAgbm9udW1teSBuaWJoIGV1aXNtb2QgdGluY2lkdW50IHV0IGxhY3JlZXQgZG9s
b3JlIG1hZ25hIGFsaWd1YW0gZXJhdCB2b2x1dHBhdC4KLSAgICAgICAgICAgICAgICBVdCB3aXNp
cyBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaSB0dXRpb24gdWxsYW1j
b3JwZXIgc3VzY2lwaXQKLSAgICAgICAgICAgICAgICBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAg
ZXggZWEgY29tbW9kbyBjb25zZXF1YXQuCi0gICAgICAgICAgICA8L3A+Ci0gICAgICAgICAgICA8
cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVt
IGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+
Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAg
ICAgICAgIDxwPgotICAgICAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBj
b25zZWN0ZXR1ZXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZGllbQotICAgICAgICAgICAgICAgIG5v
bnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYWNyZWV0IGRvbG9yZSBtYWduYSBhbGln
dWFtIGVyYXQgdm9sdXRwYXQuCi0gICAgICAgICAgICAgICAgVXQgd2lzaXMgZW5pbSBhZCBtaW5p
bSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2kgdHV0aW9uIHVsbGFtY29ycGVyIHN1c2NpcGl0
Ci0gICAgICAgICAgICAgICAgbG9ib3J0aXMgbmlzbCB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8g
Y29uc2VxdWF0LgotICAgICAgICAgICAgPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0g
ZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBz
aXQgYW1ldC4uLjwvcD4KLSAgICAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0
Li4uPC9wPgotICAgICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+
Ci0gICAgICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4uLjwvcD4KLSAgICAg
ICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0Li4uPC9wPgotICAgICAgICAgICAg
PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuLi48L3A+Ci0gICAgICAgIDwvZGl2PgotICAg
ICAgICA8aW5wdXQgdHlwZT0iYnV0dG9uIiBpZD0iYnRuQ29tcGxldGUiIHZhbHVlPSJDb21wbGV0
ZSB0ZXN0Ij4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPgotICAgICAg
ICAgICAgdmFyIGRldGVjdGVkX3BvaW50ZXJ0eXBlcyA9IHt9OwotICAgICAgICAgICAgdmFyIHRl
c3RfdG91Y2hhY3Rpb24gPSBhc3luY190ZXN0KCJ0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHRlc3Qi
KTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxiYWNrKHNob3dQb2ludGVyVHlwZXMp
OwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRh
cmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAg
ICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidG5Db21wbGV0
ZSIpOwotCi0gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgInRvdWNoLWFjdGlvbjogcGFuLXki
IGF0dHJpYnV0ZSB3b3JrcyBwcm9wZXJseQotICAgICAgICAgICAgICAgIC8vVEE6IDE1LjQKLSAg
ICAgICAgICAgICAgICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ2NsaWNrJywgZnVuY3Rpb24oZXZl
bnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBv
aW50ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb24u
c3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMo
dGFyZ2V0MC5zY3JvbGxMZWZ0LCAwLCAic2Nyb2xsIHggb2Zmc2V0IHNob3VsZCBiZSAwIGluIHRo
ZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ub3Rf
ZXF1YWxzKHRhcmdldDAuc2Nyb2xsVG9wLCAwLCAic2Nyb2xsIHkgb2Zmc2V0IHNob3VsZCBub3Qg
YmUgMCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwot
ICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uLmRvbmUoKTsKLSAgICAgICAgICAg
ICAgICAgICAgdXBkYXRlRGVzY3JpcHRpb25Db21wbGV0ZSgpOwotICAgICAgICAgICAgICAgIH0p
OwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPGgxPnRvdWNoLWFj
dGlvbjogcGFuLXk8L2gxPgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0ZS1ub3RpY2UiPgotICAg
ICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5cGVzIHdlcmUgZGV0ZWN0ZWQ6IDxz
cGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAg
ICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rp
b24tcm90YXRlZC1kaXZzX3RvdWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1h
Y3Rpb24tcm90YXRlZC1kaXZzX3RvdWNoLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAxYzA5YjE1ZjFmOTllZWFkNzJhMDY4OWFiMTRhNGZhY2IxYzYxZTNmLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRf
dG91Y2gtYWN0aW9uLXJvdGF0ZWQtZGl2c190b3VjaC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDkyICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gIDxoZWFkPgotICAg
IDx0aXRsZT5Qb2ludGVyIEV2ZW50OiB0b3VjaC1hY3Rpb24gaW4gcm90YXRlZCBkaXZzPC90aXRs
ZT4KLSAgICA8bWV0YSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiIGh0dHAtZXF1
aXY9IkNvbnRlbnQtVHlwZSIvPgotICAgIDxsaW5rIHJlbD0iYXV0aG9yIiB0aXRsZT0iR29vZ2xl
IiBocmVmPSJodHRwOi8vd3d3Lmdvb2dsZS5jb20gIi8+Ci0gICAgPGxpbmsgcmVsPSJoZWxwIiBo
cmVmPSJodHRwczovL3czYy5naXRodWIuaW8vcG9pbnRlcmV2ZW50cy8jZGVjbGFyaW5nLWNhbmRp
ZGF0ZS1yZWdpb25zLWZvci1kZWZhdWx0LXRvdWNoLWJlaGF2aW9ycyIgLz4KLSAgICA8bWV0YSBu
YW1lPSJhc3NlcnQiIGNvbnRlbnQ9IlRlc3RzIHRoYXQgdG91Y2gtYWN0aW9uIGRpcmVjdGlvbnMg
aW4gYSBkaXYgcm90YXRlZCBieSA5MC1kZWdyZWVzIGFyZSBpbnRlcnByZXRlZCBpbiB0aGUgbG9j
YWwgKHJvdGF0ZWQpIGNvb3JkaW5hdGUgc3BhY2UiLz4KLSAgICA8bGluayByZWw9InN0eWxlc2hl
ZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAg
PHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgIDxz
Y3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9y
dC5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAg
ICAgdmFyIGV2ZW50X2xvZyA9IFtdOwotCi0gICAgICBmdW5jdGlvbiByZXNldFRlc3RTdGF0ZSgp
IHsKLSAgICAgICAgZXZlbnRfbG9nID0gW107Ci0gICAgICB9Ci0KLSAgICAgIGZ1bmN0aW9uIHJ1
bigpIHsKLSAgICAgICAgdmFyIGN1cnJlbnRfdGVzdCA9IDA7Ci0gICAgICAgIHZhciB0ZXN0X3Bh
cmFtcyA9IFsKLSAgICAgICAgICB7Ci0gICAgICAgICAgICB0ZXN0X29iajogc2V0dXBfcG9pbnRl
cmV2ZW50X3Rlc3QoIid0b3VjaC1hY3Rpb246IHBhbi14JyBpbiBhIHJvdGF0ZWQgZGl2IiwgWyJ0
b3VjaCJdKSwKLSAgICAgICAgICAgIHRvdWNoX2FjdGlvbjogInBhbi14IiwKLSAgICAgICAgICAg
IGV4cGVjdGVkX2V2ZW50czogInBvaW50ZXJjYW5jZWwsIHBvaW50ZXJjYW5jZWwsIHBvaW50ZXJ1
cCwgcG9pbnRlcnVwIgotICAgICAgICAgIH0sCi0gICAgICAgICAgewotICAgICAgICAgICAgdGVz
dF9vYmo6IHNldHVwX3BvaW50ZXJldmVudF90ZXN0KCIndG91Y2gtYWN0aW9uOiBwYW4teScgaW4g
YSByb3RhdGVkIGRpdiIsIFsidG91Y2giXSksCi0gICAgICAgICAgICB0b3VjaF9hY3Rpb246ICJw
YW4teSIsCi0gICAgICAgICAgICBleHBlY3RlZF9ldmVudHM6ICJwb2ludGVydXAsIHBvaW50ZXJ1
cCwgcG9pbnRlcmNhbmNlbCwgcG9pbnRlcmNhbmNlbCIKLSAgICAgICAgICB9LAotICAgICAgICBd
OwotCi0gICAgICAgIGZ1bmN0aW9uIHNldEN1cnJlbnRUb3VjaEFjdGlvbigpIHsKLSAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iikuc3R5bGUudG91Y2hBY3Rpb24gPSB0
ZXN0X3BhcmFtc1tjdXJyZW50X3Rlc3RdLnRvdWNoX2FjdGlvbjsKLSAgICAgICAgfQotCi0gICAg
ICAgIHNldEN1cnJlbnRUb3VjaEFjdGlvbigpOwotCi0gICAgICAgIG9uX2V2ZW50KGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJidG5Eb25lIiksICJjbGljayIsIGZ1bmN0aW9uKCkgewotICAgICAg
ICAgIHRlc3RfcGFyYW1zW2N1cnJlbnRfdGVzdF0udGVzdF9vYmouc3RlcChmdW5jdGlvbiAoKSB7
Ci0gICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGV2ZW50X2xvZy5qb2luKCIsICIpLCB0ZXN0X3Bh
cmFtc1tjdXJyZW50X3Rlc3RdLmV4cGVjdGVkX2V2ZW50cyk7Ci0gICAgICAgICAgfSk7Ci0KLSAg
ICAgICAgICBldmVudF9sb2cgPSBbXTsKLQotICAgICAgICAgIHRlc3RfcGFyYW1zW2N1cnJlbnRf
dGVzdCsrXS50ZXN0X29iai5kb25lKCk7Ci0gICAgICAgICAgaWYgKGN1cnJlbnRfdGVzdCA8IDIp
Ci0gICAgICAgICAgICBzZXRDdXJyZW50VG91Y2hBY3Rpb24oKTsKLSAgICAgICAgfSk7Ci0KLSAg
ICAgICAgWyJwb2ludGVydXAiLCAicG9pbnRlcmNhbmNlbCJdLmZvckVhY2goZnVuY3Rpb24oZXZl
bnROYW1lKSB7Ci0gICAgICAgICAgb25fZXZlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRh
cmdldCIpLCBldmVudE5hbWUsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgZXZlbnRf
bG9nLnB1c2goZXZlbnQudHlwZSk7Ci0gICAgICAgICAgfSk7Ci0gICAgICAgIH0pOwotICAgICAg
fQotICAgIDwvc2NyaXB0PgotICAgIDxzdHlsZT4KLSAgICAgICN0YXJnZXQgewotICAgICAgICB3
aWR0aDogMjAwcHg7Ci0gICAgICAgIGhlaWdodDogMjAwcHg7Ci0gICAgICAgIG1hcmdpbjogMTBw
eDsKLSAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTsKLSAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIHRyYW5zZm9ybTogcm90YXRl
KC05MGRlZyk7Ci0gICAgICB9Ci0KLSAgICAgICNidG5Eb25lIHsKLSAgICAgICAgcGFkZGluZzog
MjBweDsKLSAgICAgIH0KLSAgICA8L3N0eWxlPgotICA8L2hlYWQ+Ci0gIDxib2R5IG9ubG9hZD0i
cnVuKCkiPgotICAgIDxoMT5Qb2ludGVyIEV2ZW50OiB0b3VjaC1hY3Rpb24gaW4gcm90YXRlZCBk
aXZzPC9oMT4KLSAgICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAg
PGg0PgotICAgICAgVGVzdHMgdGhhdCB0b3VjaC1hY3Rpb24gZGlyZWN0aW9ucyBpbiBhIGRpdiBy
b3RhdGVkIGJ5IDkwLWRlZ3JlZXMgYXJlIGludGVycHJldGVkIGluIHRoZSBsb2NhbCAocm90YXRl
ZCkgY29vcmRpbmF0ZSBzcGFjZQotICAgIDwvaDQ+Ci0gICAgPG9sPgotICAgICAgPGxpPk1ha2Ug
NCBzZXBhcmF0ZSB0b3VjaCBkcmFncyBvbiBHcmVlbiwgaW4gdGhpcyBvcmRlcjogZHJhZyBVUCwg
dGhlbiBkcmFnIERPV04sIHRoZW4gZHJhZyBMRUZULCB0aGVuIGRyYWcgUklHSFQuPC9saT4KLSAg
ICAgIDxsaT5UYXAgb24gRG9uZS48L2xpPgotICAgICAgPGxpPlJlcGVhdCB0aGUgdG91Y2ggZHJh
Z3Mgb25jZSBhZ2FpbiwgaW4gdGhlIHNhbWUgb3JkZXIuPC9saT4KLSAgICAgIDxsaT5UYXAgb24g
RG9uZS48L2xpPgotICAgIDwvb2w+Ci0gICAgPGRpdiBpZD0idGFyZ2V0Ij48L2Rpdj4KLSAgICA8
aW5wdXQgdHlwZT0iYnV0dG9uIiBpZD0iYnRuRG9uZSIgdmFsdWU9IkRvbmUiIC8+Ci0gICAgPGRp
diBpZD0ibG9nIiAvPgotICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X3RvdWNoLWFjdGlvbi1zcGFuLXRlc3RfdG91Y2gtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2
ZW50X3RvdWNoLWFjdGlvbi1zcGFuLXRlc3RfdG91Y2gtbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDJjYmMzNGZlMjJjYjZhMmM2NWM1NmYxYzY5OTczZDU0MmY5Mzc4
NTYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24tc3Bhbi10ZXN0X3RvdWNoLW1hbnVhbC5odG1sCisrKyAvZGV2
L251bGwKQEAgLTEsMTE1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhl
YWQ+Ci0gICAgICAgIDx0aXRsZT5TcGFuIHRvdWNoLWFjdGlvbiB0ZXN0PC90aXRsZT4KLSAgICAg
ICAgPG1ldGEgbmFtZT0idGltZW91dCIgY29udGVudD0ibG9uZyI+Ci0gICAgICAgIDxtZXRhIG5h
bWU9ImFzc2VydCIgY29udGVudD0iVEExNS4xOCAtIFRoZSB0b3VjaC1hY3Rpb24gQ1NTIHByb3Bl
cnR5IGFwcGxpZXMgdG8gYWxsIGVsZW1lbnRzIGV4Y2VwdCBub24tcmVwbGFjZWQgaW5saW5lIGVs
ZW1lbnRzLiIKLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRl
dmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9j
c3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNjcmlwdCBzcmM9
Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNy
Yz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
Y3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxz
dHlsZT4KLSAgICAgICAgICAgICN0YXJnZXQwIHsKLSAgICAgICAgICAgIGhlaWdodDogMTUwcHg7
Ci0gICAgICAgICAgICB3aWR0aDogMjAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRv
OwotICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7Ci0gICAgICAgICAgICBwYWRkaW5nOiAx
MDBweDsKLSAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICN0ZXN0c3BhbiB7Ci0gICAgICAgICAgICB0b3VjaC1hY3Rpb246IG5vbmU7Ci0g
ICAgICAgICAgICBmb250LXNpemU6IDcycHQ7Ci0gICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4
IDE4MHB4IDBweDsKLSAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHJlZDsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJy
dW4oKSI+Ci0gICAgICAgIDxoMj5Qb2ludGVyIEV2ZW50cyB0b3VjaC1hY3Rpb24gYXR0cmlidXRl
IHN1cHBvcnQ8L2gyPgotICAgICAgICA8aDQgaWQ9ImRlc2MiPlRlc3QgRGVzY3JpcHRpb246IFRy
eSB0byBzY3JvbGwgYmxhY2sgZWxlbWVudCBET1dOIG1vdmluZyB5b3VyIHRvdWNoIG91dHNpZGUg
b2YgdGhlIHJlZCBib3JkZXIuIFdhaXQgZm9yIGRlc2NyaXB0aW9uIHVwZGF0ZS48L2g0PgotICAg
ICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMgZm9yIHRvdWNoIG9ubHk8L3A+Ci0gICAgICAgIDxk
aXYgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPHNwYW4gaWQ9InRlc3RzcGFuIj4KLSAgICAg
ICAgICAgICAgICBUZXN0IHNwYW4KLSAgICAgICAgICAgIDwvc3Bhbj4KLSAgICAgICAgPC9kaXY+
Ci0gICAgICAgIDxpbnB1dCB0eXBlPSJidXR0b24iIGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNv
bXBsZXRlIHRlc3QiPgotCi0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4K
LSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsKLQotICAgICAgICAg
ICAgdmFyIHhTY3JvbGxJc1JlY2VpdmVkID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgeVNjcm9s
bElzUmVjZWl2ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciBmYWlsU2Nyb2xsSXNSZWNlaXZl
ZCA9IGZhbHNlOwotICAgICAgICAgICAgdmFyIHhTY3IwLCB5U2NyMCwgeFNjcjEsIHlTY3IxOwot
ICAgICAgICAgICAgdmFyIHNjcm9sbFJldHVybkludGVydmFsID0gNTAwOwotICAgICAgICAgICAg
dmFyIGlzRmlyc3RQYXJ0ID0gdHJ1ZTsKLSAgICAgICAgICAgIHNldHVwKHsgZXhwbGljaXRfdGlt
ZW91dDogdHJ1ZSB9KTsKLSAgICAgICAgICAgIGFkZF9jb21wbGV0aW9uX2NhbGxiYWNrKHNob3dQ
b2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBydW4oKSB7Ci0gICAgICAgICAg
ICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0MCIpOwot
ICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJidG5Db21wbGV0ZSIpOwotCi0gICAgICAgICAgICAgICAgLy9UQSAxNS4xOAotICAgICAgICAg
ICAgICAgIHZhciB0ZXN0X3RvdWNoYWN0aW9uX2RpdiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlv
biBhdHRyaWJ1dGUgdGVzdCBvdXQgb2YgZWxlbWVudCIpOwotICAgICAgICAgICAgICAgIHZhciB0
ZXN0X3RvdWNoYWN0aW9uX3NwYW4gPSBhc3luY190ZXN0KCJ0b3VjaC1hY3Rpb24gYXR0cmlidXRl
IHRlc3QgaW4gZWxlbWVudCIpOwotCi0gICAgICAgICAgICAgICAgeFNjcjAgPSB0YXJnZXQwLnNj
cm9sbExlZnQ7Ci0gICAgICAgICAgICAgICAgeVNjcjAgPSB0YXJnZXQwLnNjcm9sbFRvcDsKLQot
ICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAnY2xpY2snLCBmdW5jdGlvbihl
dmVudCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uX3NwYW4uc3RlcChm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKHRh
cmdldDAuc2Nyb2xsTGVmdCwgMCwgInNwYW4gc2Nyb2xsIHggb2Zmc2V0IHNob3VsZCBub3QgYmUg
MCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfbm90X2VxdWFscyh0YXJnZXQwLnNjcm9sbFRvcCwgMCwgInNwYW4gc2Nyb2xsIHkgb2Zmc2V0
IHNob3VsZCBub3QgYmUgMCBpbiB0aGUgZW5kIG9mIHRoZSB0ZXN0Iik7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfdHJ1ZSghaXNGaXJzdFBhcnQsICJ0YXJnZXQwIHggYW5kIHkgc2Ny
b2xsIG9mZnNldHMgc2hvdWxkIGJlIGdyZWF0ZXIgdGhhbiAwIGFmdGVyIGZpcnN0IHR3byBpbnRl
cmFjdGlvbnMgKG91dHNpZGUgcmVkIGJvcmRlcikgcmVzcGVjdGl2ZWx5Iik7Ci0gICAgICAgICAg
ICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uX3NwYW4u
ZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICB1cGRhdGVEZXNjcmlwdGlvbkNvbXBsZXRlKCk7
Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudChidG5Db21w
bGV0ZSwgJ3BvaW50ZXJkb3duJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAg
ICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAg
ICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAnc2Ny
b2xsJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYoaXNGaXJzdFBh
cnQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHhTY3IxID0gdGFyZ2V0MC5zY3JvbGxMZWZ0
OwotICAgICAgICAgICAgICAgICAgICAgICAgeVNjcjEgPSB0YXJnZXQwLnNjcm9sbFRvcDsKLQot
ICAgICAgICAgICAgICAgICAgICAgICAgaWYoeFNjcjEgIT0geFNjcjApIHsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB4U2Nyb2xsSXNSZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmKHlTY3IxICE9IHlTY3Iw
KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbl9kaXYuc3Rl
cChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlTY3JvbGxJ
c1JlY2VpdmVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVEZXNjcmlwdGlvblNlY29uZFN0ZXBUb3VjaEFj
dGlvbkVsZW1lbnQodGFyZ2V0MCwgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgICAgICAgICBpZih4U2Nyb2xsSXNSZWNl
aXZlZCAmJiB5U2Nyb2xsSXNSZWNlaXZlZCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRlc3RfdG91Y2hhY3Rpb25fZGl2LmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1cGRhdGVEZXNjcmlwdGlvblRoaXJkU3RlcFRvdWNoQWN0aW9uRWxlbWVudCh0YXJnZXQwLCBz
Y3JvbGxSZXR1cm5JbnRlcnZhbCwgZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaXNGaXJzdFBhcnQgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHhTY3IwID0gdGFyZ2V0MC5zY3JvbGxMZWZ0OwotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgeFNjcjAgPSB0YXJnZXQwLnNjcm9sbExlZnQ7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4U2Nyb2xsSXNSZWNlaXZlZCA9IGZhbHNl
OwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeVNjcm9sbElzUmVjZWl2ZWQg
PSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgc2Nyb2xsUmV0dXJu
SW50ZXJ2YWwpOyAvLyBhdm9pZCBpbW1lZGlhdGUgdHJpZ2dlcmluZyB3aGlsZSBzY3JvbGwgaXMg
c3RpbGwgYmVpbmcgcGVyZm9ybWVkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxo
MT50b3VjaC1hY3Rpb246IG5vbmU8L2gxPgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0ZS1ub3Rp
Y2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5cGVzIHdlcmUgZGV0
ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgotICAgICAgICA8
L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+
ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90
b3VjaC1hY3Rpb24tc3ZnLXRlc3RfdG91Y2gtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3Rv
dWNoLWFjdGlvbi1zdmctdGVzdF90b3VjaC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZWNjMDI2ZTQxOWM3YzliYjU0NjIzZThiNzFjZjBhMjAyYjQxMDdmMC4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50
X3RvdWNoLWFjdGlvbi1zdmctdGVzdF90b3VjaC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDEyMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8dGl0bGU+U1ZHIHRlc3Q8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ0aW1lb3V0
IiBjb250ZW50PSJsb25nIj4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9
IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlw
ZT0idGV4dC9jc3MiIGhyZWY9InBvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAgICAgPHNj
cmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAgICAgICA8
c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQgc3JjPSJwb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICN0YXJnZXQwIHsKLSAgICAgICAgICAgIGhlaWdo
dDogMzUwcHg7Ci0gICAgICAgICAgICB3aWR0aDogMzAwcHg7Ci0gICAgICAgICAgICBvdmVyZmxv
dy15OiBhdXRvOwotICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7Ci0gICAgICAgICAgICBw
YWRkaW5nOiAxMDBweDsKLSAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJy
dW4oKSI+Ci0gICAgICAgIDxoMj5Qb2ludGVyIEV2ZW50cyB0b3VjaC1hY3Rpb24gYXR0cmlidXRl
IHN1cHBvcnQ8L2gyPgotICAgICAgICA8aDQgaWQ9ImRlc2MiPlRlc3QgRGVzY3JpcHRpb246IFRy
eSB0byBzY3JvbGwgYmxhY2sgZWxlbWVudCBET1dOIG1vdmluZyB5b3VyIHRvdWNoIG91dHNpZGUg
b2YgdGhlIHJlZCBib3JkZXIuIFdhaXQgZm9yIGRlc2NyaXB0aW9uIHVwZGF0ZS48L2g0PgotICAg
ICAgICA8cD5Ob3RlOiB0aGlzIHRlc3QgaXMgZm9yIHRvdWNoIG9ubHk8L3A+Ci0gICAgICAgIDxk
aXYgaWQ9InRhcmdldDAiPgotICAgICAgICAgICAgPHN2ZyBpZD0idGVzdFN2ZyIgd2lkdGg9IjU1
NSIgaGVpZ2h0PSI1NTUiIHN0eWxlPSJ0b3VjaC1hY3Rpb246IG5vbmU7ICBib3JkZXI6IDRweCBk
b3VibGUgcmVkOyI+Ci0gICAgICAgICAgICAgICAgPGNpcmNsZSBjeD0iMzA1IiBjeT0iMzA1IiBy
PSIyNTAiIHN0cm9rZT0iZ3JlZW4iIHN0cm9rZS13aWR0aD0iNCIgZmlsbD0ieWVsbG93IiAvPgot
ICAgICAgICAgICAgICAgIFNvcnJ5LCB5b3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBpbmxp
bmUgU1ZHLgotICAgICAgICAgICAgPC9zdmc+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8YnI+
Ci0gICAgICAgIDxpbnB1dCB0eXBlPSJidXR0b24iIGlkPSJidG5Db21wbGV0ZSIgdmFsdWU9IkNv
bXBsZXRlIHRlc3QiPgotICAgICAgICA8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+Ci0g
ICAgICAgICAgICB2YXIgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzID0ge307Ci0gICAgICAgICAgICB2
YXIgeFNjcm9sbElzUmVjZWl2ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciB5U2Nyb2xsSXNS
ZWNlaXZlZCA9IGZhbHNlOwotICAgICAgICAgICAgdmFyIHhTY3IwLCB5U2NyMCwgeFNjcjEsIHlT
Y3IxOwotICAgICAgICAgICAgdmFyIHNjcm9sbFJldHVybkludGVydmFsID0gMTAwMDsKLSAgICAg
ICAgICAgIHZhciBpc0ZpcnN0UGFydCA9IHRydWU7Ci0gICAgICAgICAgICBzZXR1cCh7IGV4cGxp
Y2l0X3RpbWVvdXQ6IHRydWUgfSk7Ci0gICAgICAgICAgICBhZGRfY29tcGxldGlvbl9jYWxsYmFj
ayhzaG93UG9pbnRlclR5cGVzKTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAg
ICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdl
dDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgYnRuQ29tcGxldGUgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYnRuQ29tcGxldGUiKTsKLQotICAgICAgICAgICAgICAgIHZhciB0ZXN0X3RvdWNo
YWN0aW9uX2RpdiA9IGFzeW5jX3Rlc3QoInRvdWNoLWFjdGlvbiBhdHRyaWJ1dGUgdGVzdCBvdXQg
b2YgU1ZHIik7Ci0gICAgICAgICAgICAgICAgdmFyIHRlc3RfdG91Y2hhY3Rpb25fc3ZnID0gYXN5
bmNfdGVzdCgidG91Y2gtYWN0aW9uIGF0dHJpYnV0ZSB0ZXN0IGluIFNWRyIpOwotCi0gICAgICAg
ICAgICAgICAgeFNjcjAgPSB0YXJnZXQwLnNjcm9sbExlZnQ7Ci0gICAgICAgICAgICAgICAgeVNj
cjAgPSB0YXJnZXQwLnNjcm9sbFRvcDsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNv
bXBsZXRlLCAnY2xpY2snLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICB0
ZXN0X3RvdWNoYWN0aW9uX3N2Zy5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgYXNzZXJ0X2VxdWFscyh0YXJnZXQwLnNjcm9sbExlZnQsIDAsICJTVkcgc2Nyb2xsIHgg
b2Zmc2V0IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3AsIDAsICJTVkcgc2Ny
b2xsIHkgb2Zmc2V0IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAg
ICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb25f
c3ZnLmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlRGVzY3JpcHRpb25Db21wbGV0
ZSgpOwotICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoYnRu
Q29tcGxldGUsICdwb2ludGVyZG93bicsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAg
ICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlwZV0gPSB0cnVlOwot
ICAgICAgICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwg
J3Njcm9sbCcsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmKGlzRmly
c3RQYXJ0KSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB4U2NyMSA9IHRhcmdldDAuc2Nyb2xs
TGVmdDsKLSAgICAgICAgICAgICAgICAgICAgICAgIHlTY3IxID0gdGFyZ2V0MC5zY3JvbGxUb3A7
Ci0KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmKHhTY3IxICE9IHhTY3IwKSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgeFNjcm9sbElzUmVjZWl2ZWQgPSB0cnVlOwotICAgICAgICAg
ICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgICAgICAgICBpZih5U2NyMSAhPSB5
U2NyMCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfdG91Y2hhY3Rpb25fZGl2
LnN0ZXAoZnVuY3Rpb24gKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5U2Ny
b2xsSXNSZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF90cnVlKHRydWUsICJ5LXNjcm9sbCByZWNlaXZlZC4iKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVEZXNjcmlw
dGlvblNlY29uZFN0ZXBTVkcoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgICAgICAgICAgICAgaWYoeFNjcm9sbElzUmVjZWl2ZWQgJiYgeVNjcm9sbElzUmVjZWl2
ZWQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uX2Rpdi5k
b25lKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlRGVzY3JpcHRpb25UaGly
ZFN0ZXBTVkcoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0
aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0ZpcnN0UGFydCA9IGZh
bHNlOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDIgKiBzY3JvbGxSZXR1cm5JbnRl
cnZhbCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rp
b24gdXBkYXRlRGVzY3JpcHRpb25TZWNvbmRTdGVwU1ZHKCkgewotICAgICAgICAgICAgICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgIG9iamVjdFNjcm9s
bGVyKHRhcmdldDAsICd1cCcsIDApO30KLSAgICAgICAgICAgICAgICAsIHNjcm9sbFJldHVybklu
dGVydmFsKTsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGVzYycp
LmlubmVySFRNTCA9ICJUZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1lbnQgUklH
SFQgbW92aW5nIHlvdXIgdG91Y2ggb3V0c2lkZSBvZiB0aGUgcmVkIGJvcmRlciI7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHVwZGF0ZURlc2NyaXB0aW9uVGhpcmRTdGVw
U1ZHKCkgewotICAgICAgICAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewot
ICAgICAgICAgICAgICAgIG9iamVjdFNjcm9sbGVyKHRhcmdldDAsICdsZWZ0JywgMCk7fQotICAg
ICAgICAgICAgICAgICwgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwpOwotICAgICAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdkZXNjJykuaW5uZXJIVE1MID0gIlRlc3QgRGVzY3JpcHRp
b246IFRyeSB0byBzY3JvbGwgZWxlbWVudCBET1dOIHRoZW4gUklHSFQgc3RhcnRpbmcgeW91ciB0
b3VjaCBpbnNpZGUgb2YgdGhlIGNpcmNsZS4gVGFwIENvbXBsZXRlIGJ1dHRvbiB1bmRlciB0aGUg
cmVjdGFuZ2xlIHdoZW4gZG9uZSI7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0
aW9uIG9iamVjdFNjcm9sbGVyKHRhcmdldCwgZGlyZWN0aW9uLCB2YWx1ZSkgewotICAgICAgICAg
ICAgICAgIGlmIChkaXJlY3Rpb24gPT0gJ3VwJykgewotICAgICAgICAgICAgICAgICAgICB0YXJn
ZXQuc2Nyb2xsVG9wID0gMDsKLSAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9
PSAnbGVmdCcpIHsKLSAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnNjcm9sbExlZnQgPSAwOwot
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAg
ICAgIDxoMT50b3VjaC1hY3Rpb246IG5vbmU8L2gxPgotICAgICAgICA8ZGl2IGlkPSJjb21wbGV0
ZS1ub3RpY2UiPgotICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBwb2ludGVyIHR5cGVzIHdl
cmUgZGV0ZWN0ZWQ6IDxzcGFuIGlkPSJwb2ludGVydHlwZS1sb2ciPjwvc3Bhbj4uPC9wPgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0ibG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi10YWJsZS10ZXN0
X3RvdWNoLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tdGFibGUtdGVz
dF90b3VjaC1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDdhNzhm
NTcyOTg1NjU4YzA0YjZjZTc3MDllMDFiOTM2YzczZjBmZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi10YWJs
ZS10ZXN0X3RvdWNoLW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTQ2ICswLDAgQEAK
LTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5UYWJs
ZSB0b3VjaC1hY3Rpb24gdGVzdDwvdGl0bGU+Ci0gICAgICAgIDxtZXRhIG5hbWU9InRpbWVvdXQi
IGNvbnRlbnQ9ImxvbmciPgotICAgICAgICA8bWV0YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9IlRB
MTUuMTkgVGhlIHRvdWNoLWFjdGlvbiBDU1MgcHJvcGVydHkgYXBwbGllcyB0byBhbGwgZWxlbWVu
dHMgZXhjZXB0IHRhYmxlIHJvd3MsIHJvdyBncm91cHMsIHRhYmxlIGNvbHVtbnMsIGFuZCBjb2x1
bW4gZ3JvdXBzLiI+Ci0gICAgICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0
aD1kZXZpY2Utd2lkdGgiPgotICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRl
eHQvY3NzIiBocmVmPSJwb2ludGVyZXZlbnRfc3R5bGVzLmNzcyI+Ci0gICAgICAgIDxzY3JpcHQg
c3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlw
dCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwvc2NyaXB0PgotICAgICAg
ICA8c2NyaXB0IHNyYz0icG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAgICAg
ICA8c3R5bGU+Ci0gICAgICAgICAgICAjdGFyZ2V0MCB7Ci0gICAgICAgICAgICBoZWlnaHQ6IDE1
MHB4OwotICAgICAgICAgICAgd2lkdGg6IDIwMHB4OwotICAgICAgICAgICAgb3ZlcmZsb3cteTog
YXV0bzsKLSAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrOwotICAgICAgICAgICAgcGFkZGlu
ZzogMTAwcHg7Ci0gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAjdGVzdHRhYmxlewotICAgICAgICAgICAgY29sb3I6IHdoaXRlOwotICAg
ICAgICAgICAgd2lkdGg6IDM1MHB4OwotICAgICAgICAgICAgcGFkZGluZzogMHB4IDBweCAyMDBw
eCAwcHg7Ci0gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBncmVlbjsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIC50ZXN0dGQsIC50ZXN0dGggewotICAgICAgICAgICAgYm9yZGVyOiAy
cHggc29saWQgZ3JlZW47Ci0gICAgICAgICAgICBoZWlnaHQ6IDgwcHg7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICAjcm93MSB7Ci0gICAgICAgICAgICB0b3VjaC1hY3Rpb246IG5vbmU7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAjY2VsbDMgewotICAgICAgICAgICAgdG91Y2gtYWN0
aW9uOiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4K
LSAgICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICAgICAgPGgyPlBvaW50ZXIgRXZlbnRzIHRv
dWNoLWFjdGlvbiBhdHRyaWJ1dGUgc3VwcG9ydDwvaDI+Ci0gICAgICAgIDxoNCBpZD0iZGVzYyI+
VGVzdCBEZXNjcmlwdGlvbjogVHJ5IHRvIHNjcm9sbCBlbGVtZW50IERPV04gc3RhcnRpbmcgeW91
ciB0b3VjaCBvdmVyIHRoZSAxc3QgUm93LiBXYWl0IGZvciBkZXNjcmlwdGlvbiB1cGRhdGUuPC9o
ND4KLSAgICAgICAgPHA+Tm90ZTogdGhpcyB0ZXN0IGlzIGZvciB0b3VjaCBvbmx5PC9wPgotICAg
ICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj4KLSAgICAgICAgICAgIDx0YWJsZSBpZD0idGVzdHRhYmxl
Ij4KLSAgICAgICAgICAgICAgICA8Y2FwdGlvbj5UaGUgY2FwdGlvbiwgZmlyc3Qgcm93IGVsZW1l
bnQsIGFuZCBjZWxsIDMgaGF2ZSB0b3VjaC1hY3Rpb246IG5vbmUuPC9jYXB0aW9uPgotICAgICAg
ICAgICAgICAgIDx0ciBpZD0icm93MSI+PHRoIGNsYXNzPSJ0ZXN0dGgiPkhlYWRlciAxICA8dGQg
Y2xhc3M9InRlc3R0ZCI+Q2VsbCAxICA8dGQgY2xhc3M9InRlc3R0ZCI+Q2VsbCAyPC90cj4KLSAg
ICAgICAgICAgICAgICA8dHIgaWQ9InJvdzIiPjx0aCBjbGFzcz0idGVzdHRoIj5IZWFkZXIgMiAg
PHRkIGlkPSJjZWxsMyIgY2xhc3M9InRlc3R0ZCI+Q2VsbCAzICA8dGQgY2xhc3M9InRlc3R0ZCI+
Q2VsbCA0PC90cj4KLSAgICAgICAgICAgICAgICA8dHIgaWQ9InJvdzMiPiA8dGggY2xhc3M9InRl
c3R0aCI+SGVhZGVyIDMgIDx0ZCBjbGFzcz0idGVzdHRkIj5DZWxsIDUgIDx0ZCBjbGFzcz0idGVz
dHRkIj4gQ2VsbCA2PC90cj4KLSAgICAgICAgICAgIDwvdGFibGU+Ci0gICAgICAgIDwvZGl2Pgot
ICAgICAgICA8YnI+Ci0gICAgICAgIDxpbnB1dCB0eXBlPSJidXR0b24iIGlkPSJidG5Db21wbGV0
ZSIgdmFsdWU9IkNvbXBsZXRlIHRlc3QiPgotCi0gICAgICAgIDxzY3JpcHQgdHlwZT0ndGV4dC9q
YXZhc2NyaXB0Jz4KLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMgPSB7fTsK
LSAgICAgICAgICAgIHZhciB4U2Nyb2xsSXNSZWNlaXZlZCA9IGZhbHNlOwotICAgICAgICAgICAg
dmFyIHlTY3JvbGxJc1JlY2VpdmVkID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgeFNjcjAsIHlT
Y3IwLCB4U2NyMSwgeVNjcjE7Ci0gICAgICAgICAgICB2YXIgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwg
PSAxMDAwOwotICAgICAgICAgICAgdmFyIGlzRmlyc3RQYXJ0ID0gdHJ1ZTsKLSAgICAgICAgICAg
IHNldHVwKHsgZXhwbGljaXRfdGltZW91dDogdHJ1ZSB9KTsKLSAgICAgICAgICAgIGFkZF9jb21w
bGV0aW9uX2NhbGxiYWNrKHNob3dQb2ludGVyVHlwZXMpOwotCi0gICAgICAgICAgICBmdW5jdGlv
biBydW4oKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDAgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgidGFyZ2V0MCIpOwotICAgICAgICAgICAgICAgIHZhciBidG5Db21wbGV0ZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJidG5Db21wbGV0ZSIpOwotCi0gICAgICAgICAgICAgICAg
Ly9UQSAxNS4xOQotICAgICAgICAgICAgICAgIHZhciB0ZXN0X3RvdWNoYWN0aW9uX2NlbGwgPSBh
c3luY190ZXN0KCJ0b3VjaC1hY3Rpb24gYXR0cmlidXRlIHRlc3Qgb24gdGhlIGNlbGwiKTsKLSAg
ICAgICAgICAgICAgICB2YXIgdGVzdF90b3VjaGFjdGlvbl9yb3cgPSBhc3luY190ZXN0KCJ0b3Vj
aC1hY3Rpb24gYXR0cmlidXRlIHRlc3Qgb24gdGhlIHJvdyIpOwotCi0gICAgICAgICAgICAgICAg
eFNjcjAgPSB0YXJnZXQwLnNjcm9sbExlZnQ7Ci0gICAgICAgICAgICAgICAgeVNjcjAgPSB0YXJn
ZXQwLnNjcm9sbFRvcDsKLQotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGJ0bkNvbXBsZXRlLCAn
Y2xpY2snLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNo
YWN0aW9uX2NlbGwuc3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxMZWZ0LCAwLCAidGFibGUgc2Nyb2xsIHggb2Zmc2V0
IHNob3VsZCBiZSAwIGluIHRoZSBlbmQgb2YgdGhlIHRlc3QiKTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHModGFyZ2V0MC5zY3JvbGxUb3AsIDAsICJ0YWJsZSBzY3JvbGwg
eSBvZmZzZXQgc2hvdWxkIGJlIDAgaW4gdGhlIGVuZCBvZiB0aGUgdGVzdCIpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X3RydWUoeFNjcm9sbElzUmVjZWl2ZWQgJiYgeVNjcm9sbElz
UmVjZWl2ZWQsICJ0YXJnZXQwIHggYW5kIHkgc2Nyb2xsIG9mZnNldHMgc2hvdWxkIGJlIGdyZWF0
ZXIgdGhhbiAwIGFmdGVyIGZpcnN0IHR3byBpbnRlcmFjdGlvbnMgKG91dHNpZGUgcmVkIGJvcmRl
cikgcmVzcGVjdGl2ZWx5Iik7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
ICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uX2NlbGwuZG9uZSgpOwotICAgICAgICAgICAgICAgICAg
ICB1cGRhdGVEZXNjcmlwdGlvbkNvbXBsZXRlKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAg
ICAgICAgICAgICAgICBvbl9ldmVudChidG5Db21wbGV0ZSwgJ3BvaW50ZXJkb3duJywgZnVuY3Rp
b24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZGV0ZWN0ZWRfcG9pbnRlcnR5cGVzW2V2
ZW50LnBvaW50ZXJUeXBlXSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgfSk7Ci0KLSAgICAgICAg
ICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAnc2Nyb2xsJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAg
ICAgICAgICAgICAgICAgICAgaWYoaXNGaXJzdFBhcnQpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHhTY3IxID0gdGFyZ2V0MC5zY3JvbGxMZWZ0OwotICAgICAgICAgICAgICAgICAgICAgICAg
eVNjcjEgPSB0YXJnZXQwLnNjcm9sbFRvcDsKLQotICAgICAgICAgICAgICAgICAgICAgICAgaWYo
eFNjcjEgIT0geFNjcjApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB4U2Nyb2xsSXNS
ZWNlaXZlZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAg
ICAgICAgICAgICAgIGlmKHlTY3IxICE9IHlTY3IwKSB7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdGVzdF90b3VjaGFjdGlvbl9yb3cuc3RlcChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHlTY3JvbGxJc1JlY2VpdmVkID0gdHJ1ZTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRh
dGVEZXNjcmlwdGlvblNlY29uZFN0ZXBUYWJsZSh0YXJnZXQwLCBzY3JvbGxSZXR1cm5JbnRlcnZh
bCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICAgICAgICAg
IGlmKHhTY3JvbGxJc1JlY2VpdmVkICYmIHlTY3JvbGxJc1JlY2VpdmVkKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF90b3VjaGFjdGlvbl9yb3cuZG9uZSgpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVwZGF0ZURlc2NyaXB0aW9uVGhpcmRTdGVwVGFibGUodGFyZ2V0
MCwgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaXNGaXJzdFBhcnQgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfSwgc2Nyb2xsUmV0dXJuSW50ZXJ2YWwpOyAvLyBhdm9pZCBpbW1lZGlh
dGUgdHJpZ2dlcmluZyB3aGlsZSBzY3JvbGwgaXMgc3RpbGwgYmVpbmcgcGVyZm9ybWVkCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0g
ICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICB0ZXN0X3RvdWNoYWN0aW9uX2NlbGwuc3RlcChmYWlsT25TY3JvbGws
ICJzY3JvbGwgcmVjZWl2ZWQgd2hpbGUgc2hvdWxkbid0Iik7Ci0gICAgICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVu
Y3Rpb24gdXBkYXRlRGVzY3JpcHRpb25TZWNvbmRTdGVwVGFibGUodGFyZ2V0LCBzY3JvbGxSZXR1
cm5JbnRlcnZhbCwgZWxlbWVudCkgewotICAgICAgICAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0
KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICBvYmplY3RTY3JvbGxlcih0YXJnZXQs
ICd1cCcsIDApOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAsIHNjcm9sbFJl
dHVybkludGVydmFsKTsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
ZGVzYycpLmlubmVySFRNTCA9ICJUZXN0IERlc2NyaXB0aW9uOiBUcnkgdG8gc2Nyb2xsIGVsZW1l
bnQgUklHSFQgc3RhcmluZyB5b3VyIHRvdWNoIG92ZXIgdGhlIFJvdyAxIjsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlRGVzY3JpcHRpb25UaGlyZFN0ZXBUYWJs
ZSh0YXJnZXQsIHNjcm9sbFJldHVybkludGVydmFsLCBjYWxsYmFjayA9IG51bGwpIHsKLSAgICAg
ICAgICAgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAg
ICAgICAgb2JqZWN0U2Nyb2xsZXIodGFyZ2V0LCAnbGVmdCcsIDApOwotICAgICAgICAgICAgICAg
ICAgICBpZiAoY2FsbGJhY2spIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKCk7
Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAg
ICAgLCBzY3JvbGxSZXR1cm5JbnRlcnZhbCk7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2Rlc2MnKS5pbm5lckhUTUwgPSAiVGVzdCBEZXNjcmlwdGlvbjogVHJ5IHRv
IHNjcm9sbCBlbGVtZW50IERPV04gdGhlbiBSSUdIVCBzdGFydGluZyB5b3VyIHRvdWNoIGluc2lk
ZSBvZiB0aGUgQ2VsbCAzIjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICA8L3NjcmlwdD4KLSAg
ICAgICAgPGgxPnRvdWNoLWFjdGlvbjogbm9uZTwvaDE+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBs
ZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9sbG93aW5nIHBvaW50ZXIgdHlwZXMg
d2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBlLWxvZyI+PC9zcGFuPi48L3A+Ci0g
ICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJsb2ciPjwvZGl2PgotICAgIDwvYm9keT4K
LTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRl
cmxvY2svcG9pbnRlcmV2ZW50X21vdmVtZW50eHktbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2sv
cG9pbnRlcmV2ZW50X21vdmVtZW50eHktbWFudWFsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDZkOTAzYzQwNWU5NWJkMTQwY2MyMDFiNzE5MTQzNGZhYzU3OTMxYzguLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3Bv
aW50ZXJldmVudF9tb3ZlbWVudHh5LW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTAw
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0
aXRsZT5Qb2ludGVyIEV2ZW50cyBwcm9wZXJ0aWVzIHRlc3RzPC90aXRsZT4KLTxtZXRhIG5hbWU9
InRpbWVvdXQiIGNvbnRlbnQ9ImxvbmciPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIg
Y29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgot
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KLSAgICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNvbW1v
biBjaGVja3MgYWNyb3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgc3JjPSIuLi9wb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+
Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAjdGVzdENvbnRhaW5lciB7Ci0gICAgICAgICAg
ICB0b3VjaC1hY3Rpb246IG5vbmU7Ci0gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKLSAg
ICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICAgICAgICB9Ci0gICAgICAgICAgI2Jv
eDEgewotICAgICAgICAgICAgdG9wOiAzMHB4OwotICAgICAgICAgICAgbGVmdDogNTBweDsKLSAg
ICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrOwotICAgICAgICAgIH0KLSAgICAgICAgICAjYm94
MiB7Ci0gICAgICAgICAgICB0b3A6IDcwcHg7Ci0gICAgICAgICAgICBsZWZ0OiAyNTBweDsKLSAg
ICAgICAgICAgIGJhY2tncm91bmQ6IHJlZDsKLSAgICAgICAgICB9Ci0gICAgICAgICAgI2lubmVy
RnJhbWUgewotICAgICAgICAgICAgdG9wOiAxMHB4OwotICAgICAgICAgICAgbGVmdDogMTAwcHg7
Ci0gICAgICAgICAgfQotICAgICAgICAgICNzcXVhcmUyIHsKLSAgICAgICAgICAgIHZpc2liaWxp
dHk6IGJsb2NrOwotICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICAgICAgPHNjcmlw
dD4KLSAgICAgICAgICAgIHZhciBleHBlY3RlZFBvaW50ZXJJZCA9IE5hTjsKLSAgICAgICAgICAg
IHZhciBzdGFydFN1bW1hdGlvbiA9IGZhbHNlOwotICAgICAgICAgICAgdmFyIGxhc3RTY3JlZW5Y
ID0gMDsKLSAgICAgICAgICAgIHZhciBsYXN0U2NyZWVuWSA9IDA7Ci0KLSAgICAgICAgICAgIGZ1
bmN0aW9uIHJlc2V0VGVzdFN0YXRlKCkgewotICAgICAgICAgICAgICAgIHN0YXJ0U3VtbWF0aW9u
ID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgbGFzdFNjcmVlblggPSAwOwotICAgICAgICAgICAg
ICAgIGxhc3RTY3JlZW5ZID0gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rp
b24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJFdmVudCA9IHNldHVw
X3BvaW50ZXJldmVudF90ZXN0KCJwb2ludGVyZXZlbnQgYXR0cmlidXRlcyIsIFsnbW91c2UnLCAn
dG91Y2gnXSk7Ci0KLSAgICAgICAgICAgICAgICBbZG9jdW1lbnQsIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdpbm5lckZyYW1lJykuY29udGVudERvY3VtZW50XS5mb3JFYWNoKGZ1bmN0aW9uKGVs
ZW1lbnQpIHsKLSAgICAgICAgICAgICAgICAgIG9uX2V2ZW50KGVsZW1lbnQsICdwb2ludGVybW92
ZScsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoc3RhcnRTdW1t
YXRpb24pIHsKLSAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1
bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC5t
b3ZlbWVudFgsIGV2ZW50LnNjcmVlblggLSBsYXN0U2NyZWVuWCwgIm1vdmVtZW50WCBzaG91bGQg
YmUgdGhlIGRlbHRhIGJldHdlZW4gY3VycmVudCBldmVudCdzIGFuZCBsYXN0IGV2ZW50J3Mgc2Ny
ZWVuWCIpOwotICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC5tb3Zl
bWVudFksIGV2ZW50LnNjcmVlblkgLSBsYXN0U2NyZWVuWSwgIm1vdmVtZW50WSBzaG91bGQgYmUg
dGhlIGRlbHRhIGJldHdlZW4gY3VycmVudCBldmVudCdzIGFuZCBsYXN0IGV2ZW50J3Mgc2NyZWVu
WSIpOwotICAgICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICAgIGxh
c3RTY3JlZW5YID0gZXZlbnQuc2NyZWVuWDsKLSAgICAgICAgICAgICAgICAgICAgICBsYXN0U2Ny
ZWVuWSA9IGV2ZW50LnNjcmVlblk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICAgIH0pOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50
KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNib3gxJyksICdwb2ludGVyZG93bicsIGZ1bmN0aW9u
KGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICBldmVudC50YXJnZXQucmVsZWFzZVBvaW50ZXJD
YXB0dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJF
dmVudC5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoZXZlbnQucG9pbnRlclR5cGUsIGV4cGVjdGVkUG9pbnRlclR5cGUsICJVc2UgdGhlIGluc3Ry
dWN0ZWQgcG9pbnRlciB0eXBlLiIpOwotICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAg
ICAgICAgICBzdGFydFN1bW1hdGlvbiA9IHRydWU7Ci0gICAgICAgICAgICAgICAgICBsYXN0U2Ny
ZWVuWCA9IGV2ZW50LnNjcmVlblg7Ci0gICAgICAgICAgICAgICAgICBsYXN0U2NyZWVuWSA9IGV2
ZW50LnNjcmVlblk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgb25fZXZl
bnQoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2JveDInKSwgJ3BvaW50ZXJ1cCcsIGZ1bmN0aW9u
KGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICBzdGFydFN1bW1hdGlvbiA9IGZhbHNlOwotICAg
ICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuZG9uZSgpOwotICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAg
PGJvZHkgb25sb2FkPSJydW4oKSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50cyBtb3ZlbWVu
dFgvWSBhdHRyaWJ1dGUgdGVzdDwvaDE+Ci0gICAgICAgIDxoMiBpZD0icG9pbnRlclR5cGVEZXNj
cmlwdGlvbiI+PC9oMj4KLSAgICAgICAgPGg0PgotICAgICAgICAgICAgVGVzdCBEZXNjcmlwdGlv
bjogVGhpcyB0ZXN0IGNoZWNrcyB0aGUgcHJvcGVydGllcyBvZiBwb2ludGVyIGV2ZW50cyB0aGF0
IGRvIG5vdCBzdXBwb3J0IGhvdmVyLgotICAgICAgICAgICAgPG9sPgotICAgICAgICAgICAgICAg
ICA8bGk+UHJlc3MgZG93biBvbiB0aGUgYmxhY2sgc3F1YXJlLjwvbGk+Ci0gICAgICAgICAgICAg
ICAgIDxsaT5Nb3ZlIHlvdXIgcG9pbnRlciAgc2xvd2x5IGFsb25nIGEgc3RyYWlnaHQgbGluZSB0
byB0aGUgcmVkIHNxdWFyZS48L2xpPgotICAgICAgICAgICAgICAgICA8bGk+UmVsZWFzZSB0aGUg
cG9pbnRlciB3aGVuIHlvdSBhcmUgb3ZlciB0aGUgcmVkIHNxdWFyZS48L2xpPgotICAgICAgICAg
ICAgPC9vbD4KLQotICAgICAgICAgICAgVGVzdCBwYXNzZXMgaWYgdGhlIHByb3BlciBiZWhhdmlv
ciBvZiB0aGUgZXZlbnRzIGlzIG9ic2VydmVkLgotICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2
IGlkPSJ0ZXN0Q29udGFpbmVyIj4KLSAgICAgICAgICAgIDxkaXYgaWQ9ImJveDEiIGNsYXNzPSJz
cXVhcmUiPjwvZGl2PgotICAgICAgICAgICAgPGRpdiBpZD0iYm94MiIgY2xhc3M9InNxdWFyZSI+
PC9kaXY+Ci0gICAgICAgICAgICA8aWZyYW1lIGlkPSJpbm5lckZyYW1lIiBzcmM9InJlc291cmNl
cy9wb2ludGVyZXZlbnRfbW92ZW1lbnR4eS1pZnJhbWUuaHRtbCI+PC9pZnJhbWU+Ci0gICAgICAg
IDwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZXIiPjwvZGl2PgotICAgIDwvYm9keT4K
LTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9tb3ZlbWVu
dHh5X3doZW5fbG9ja2VkLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9t
b3ZlbWVudHh5X3doZW5fbG9ja2VkLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBjY2I4YzI3Y2I1OWJiMTczMmRjNzJjNWMyNmI2Y2EyYThmZGY5ZjVjLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2lu
dGVyZXZlbnRfbW92ZW1lbnR4eV93aGVuX2xvY2tlZC1tYW51YWwuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDgzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0g
ICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2ZW50cyBwb2ludGVyIGxvY2sgdGVzdHM8L3RpdGxlPgot
ICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRo
Ij4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0i
L2V4dGVybmFsL3dwdC9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL3Bv
aW50ZXJldmVudF9zdXBwb3J0LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAg
ICAgICN0ZXN0Q29udGFpbmVyIHsKLSAgICAgICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTsKLSAg
ICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwotICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0
aXZlOwotICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICAgICAgPHNjcmlwdD4KLSAg
ICAgICAgICAgIHZhciBsb2NrX2NoYW5nZV9jb3VudCA9IDA7Ci0gICAgICAgICAgICB2YXIgbW91
c2VldmVudE1vdmVtZW50cyA9IFtdCi0gICAgICAgICAgICB2YXIgcG9pbnRlcmV2ZW50TW92ZW1l
bnRzID0gW10KLQotICAgICAgICAgICAgZnVuY3Rpb24gcmVzZXRUZXN0U3RhdGUoKSB7Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAgICAgICAgICAgICAg
ICB2YXIgdGVzdF9wb2ludGVyRXZlbnQgPSBzZXR1cF9wb2ludGVyZXZlbnRfdGVzdCgicG9pbnRl
cmV2ZW50IG1vdmVtZW50WC9ZIHdoZW4gbG9jayB0ZXN0IiwgWydtb3VzZSddKTsKLSAgICAgICAg
ICAgICAgICB2YXIgZGl2MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKLQot
ICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRpdjEsICdwb2ludGVyZG93bicsIGZ1bmN0aW9uKGV2
ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChsb2NrX2NoYW5nZV9jb3VudCA9PSAwKQot
ICAgICAgICAgICAgICAgICAgICAgICBkaXYxLnJlcXVlc3RQb2ludGVyTG9jaygpOwotICAgICAg
ICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRpdjEsICdwb2ludGVydXAn
LCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBpZiAobG9ja19jaGFuZ2Vf
Y291bnQgPT0gMSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmV4aXRQb2ludGVy
TG9jaygpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRp
djEsICdwb2ludGVybW92ZScsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAg
IGlmIChsb2NrX2NoYW5nZV9jb3VudCA9PSAxKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBw
b2ludGVyZXZlbnRNb3ZlbWVudHMucHVzaChgJHtldmVudC5tb3ZlbWVudFh9LCAke2V2ZW50Lm1v
dmVtZW50WX1gKTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwot
ICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRpdjEsICdtb3VzZW1vdmUnLCBmdW5jdGlvbihldmVu
dCkgewotICAgICAgICAgICAgICAgICAgICBpZiAobG9ja19jaGFuZ2VfY291bnQgPT0gMSkgewot
ICAgICAgICAgICAgICAgICAgICAgICAgbW91c2VldmVudE1vdmVtZW50cy5wdXNoKGAke2V2ZW50
Lm1vdmVtZW50WH0sICR7ZXZlbnQubW92ZW1lbnRZfWApOwotICAgICAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQoZG9jdW1lbnQs
ICdwb2ludGVybG9ja2NoYW5nZScsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGxvY2tfY2hhbmdlX2NvdW50Kys7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChsb2NrX2No
YW5nZV9jb3VudCA9PSAxKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJF
dmVudC5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoZG9jdW1lbnQucG9pbnRlckxvY2tFbGVtZW50LCBkaXYxLCAiZG9jdW1lbnQucG9p
bnRlckxvY2tFbGVtZW50IHNob3VsZCBiZSBkaXYxLiIpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobG9ja19jaGFuZ2VfY291bnQg
PT0gMikgewotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuc3RlcChm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGRv
Y3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCwgbnVsbCwgImRvY3VtZW50LnBvaW50ZXJMb2NrRWxl
bWVudCBzaG91bGQgYmUgbnVsbC4iKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfbm90X2VxdWFscyhtb3VzZWV2ZW50TW92ZW1lbnRzLmxlbmd0aCwgMCk7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYXNzZXJ0X2FycmF5X2VxdWFscyhwb2ludGVyZXZlbnRNb3ZlbWVu
dHMsIG1vdXNlZXZlbnRNb3ZlbWVudHMsICJwb2ludGVybW92ZSBzaG91bGQgaGF2ZSBtb3ZlbWVu
dFgvWSBzYW1lIGFzIG1vdXNlbW92ZSIpOwotICAgICAgICAgICAgICAgICAgICAgICAgfSk7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5kb25lKCk7Ci0gICAgICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAg
ICAgICA8aDE+UG9pbnRlciBFdmVudHMgbW92ZW1lbnQgaW4gbG9ja2VkIHN0YXRlIHRlc3Q8L2gx
PgotICAgICAgICA8aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAg
IDxoND4KLSAgICAgICAgICAgIFRlc3QgRGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgaWYg
cG9pbnRlcm1vdmUubW92ZW1lbnRYL1kgbWF0Y2hlcyBtb3VzZW1vdmUubW92ZW1lbnRYL1kgd2hl
biBwb2ludGVyIGlzIGxvY2tlZC4KLSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAgICAgICAg
PGxpPlByZXNzIGxlZnQgYnV0dG9uIGRvd24gb24gdGhlIGdyZWVuIHJlY3RhbmdsZSBhbmQgaG9s
ZCBpdC48L2xpPgotICAgICAgICAgICAgICAgICA8bGk+TW92ZSB0aGUgbW91c2UgaW5zaWRlIHRo
ZSBncmVlbiByZWN0YW5nbGUuPC9saT4KLSAgICAgICAgICAgIDwvb2w+Ci0gICAgICAgICAgICA8
L29sPgotCi0gICAgICAgICAgICBUZXN0IHBhc3NlcyBpZiB0aGUgcHJvcGVyIGJlaGF2aW9yIG9m
IHRoZSBldmVudHMgaXMgb2JzZXJ2ZWQuCi0gICAgICAgIDwvaDQ+Ci0gICAgICAgIDxkaXYgaWQ9
InRlc3RDb250YWluZXIiPgotICAgICAgICAgICAgPGRpdiBpZD0idGFyZ2V0IiBzdHlsZT0id2lk
dGg6ODAwcHg7aGVpZ2h0OjI1MHB4O2JhY2tncm91bmQ6Z3JlZW4iPjwvZGl2PgotICAgICAgICA8
L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2VyIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJsb2Nr
X2FmdGVyX3BvaW50ZXJjYXB0dXJlLW1hbnVhbC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJl
dmVudF9wb2ludGVybG9ja19hZnRlcl9wb2ludGVyY2FwdHVyZS1tYW51YWwuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGFjMzVmODI4NTZhMzhlODg3ZWM4NGFkNjdmNWMzNzQw
MTQ5MDVjNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMv
cG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJsb2NrX2FmdGVyX3BvaW50ZXJjYXB0dXJl
LW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotPCFkb2N0eXBlIGh0
bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxlPlBvaW50ZXIgRXZlbnRzIHBv
aW50ZXIgbG9jayB0ZXN0PC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNv
bnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3BvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAg
ICAgICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9z
Y3JpcHQ+Ci0gICAgICAgIDwhLS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24g
Y2hlY2tzIGFjcm9zcyBldmVudCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiIHNyYz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgdmFyIGdvdF9jYXB0dXJlID0gZmFsc2U7Ci0g
ICAgICAgICAgICB2YXIgbG9zdF9jYXB0dXJlID0gZmFsc2U7Ci0gICAgICAgICAgICB2YXIgbG9j
a19yZXF1ZXN0ZWQgPSBmYWxzZTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcmVzZXRUZXN0U3Rh
dGUoKSB7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKLSAg
ICAgICAgICAgICAgICB2YXIgdGVzdF9wb2ludGVyRXZlbnQgPSBzZXR1cF9wb2ludGVyZXZlbnRf
dGVzdCgibm8gcG9pbnRlcmNhcHR1cmUgd2hpbGUgcG9pbnRlcmxvY2siLCBbJ21vdXNlJ10pOwot
ICAgICAgICAgICAgICAgIHZhciBkaXYxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KTsKLSAgICAgICAgICAgICAgICB2YXIgZGl2MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYyIik7Ci0KLSAgICAgICAgICAgICAgICBvbl9ldmVudChkaXYxLCAncG9pbnRlcmRvd24nLCBm
dW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAgICAgICBkaXYyLnNldFBvaW50ZXJDYXB0
dXJlKGV2ZW50LnBvaW50ZXJJZCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAg
ICAgb25fZXZlbnQoZGl2MSwgJ3BvaW50ZXJtb3ZlJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAg
ICAgICAgICAgICAgICAgaWYgKGxvc3RfY2FwdHVyZSkgewotICAgICAgICAgICAgICAgICAgICAg
ICAgdGVzdF9wb2ludGVyRXZlbnQuc3RlcChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGRvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCwgZGl2
MSwgImRvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCBzaG91bGQgYmUgZGl2MS4iKTsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdHJ1ZShsb3N0X2NhcHR1cmUsICJQb2ludGVy
IGNhcHR1cmUgd2FzIGxvc3QgYWZ0ZXIgZ290IGEgcG9pbnRlciBsb2NrLiIpOwotICAgICAgICAg
ICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJF
dmVudC5kb25lKCk7IAotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfSk7
Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQoZG9jdW1lbnQsICdjb250ZXh0bWVudScsIGZ1bmN0
aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7
Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQoZGl2MiwgJ3Bv
aW50ZXJtb3ZlJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGV2
ZW50LmJ1dHRvbiA9PSAyICYmIGdvdF9jYXB0dXJlICYmICFsb2NrX3JlcXVlc3RlZCkgewotICAg
ICAgICAgICAgICAgICAgICAgICAgZGl2MS5yZXF1ZXN0UG9pbnRlckxvY2soKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGxvY2tfcmVxdWVzdGVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRpdjIs
ICdnb3Rwb2ludGVyY2FwdHVyZScsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGdvdF9jYXB0dXJlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAg
ICAgICBvbl9ldmVudChkaXYyLCAnbG9zdHBvaW50ZXJjYXB0dXJlJywgZnVuY3Rpb24oZXZlbnQp
IHsKLSAgICAgICAgICAgICAgICAgICAgbG9zdF9jYXB0dXJlID0gdHJ1ZTsKLSAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudChkb2N1bWVudCwicG9pbnRlcmxvY2tl
cnJvciIsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnRfdW5yZWFjaGVk
KCJQb2ludGVyIGxvY2sgZXJyb3IiKTsKLSAgICAgICAgICAgICAgICB9KQotICAgICAgICAgICAg
fQotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJydW4o
KSI+Ci0gICAgICAgIDxoMT5Qb2ludGVyIEV2ZW50cyBwb2ludGVyIGxvY2sgdGVzdDwvaDE+Ci0g
ICAgICAgIDxoMiBpZD0icG9pbnRlclR5cGVEZXNjcmlwdGlvbiI+PC9oMj4KLSAgICAgICAgPGg0
PgotICAgICAgICAgICAgVGVzdCBEZXNjcmlwdGlvbjogVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHdl
IHJlbGVhc2UgdGhlIGV4c2l0aW5nIHBvaW50ZXIgY2FwdHVyZSB3aGVuIGFueSBlbGVtZW50IGlu
IHRoZSBwYWdlIGdldHMgYSBwb2ludGVyIGxvY2suCi0gICAgICAgICAgICA8b2w+Ci0gICAgICAg
ICAgICAgICAgIDxsaT5QcmVzcyBsZWZ0IGJ1dHRvbiBkb3duIG9uIHRoZSBncmVlbiByZWN0YW5n
bGUgYW5kIGhvbGQgaXQuPC9saT4KLSAgICAgICAgICAgICAgICAgPGxpPk1vdmUgdGhlIG1vdXNl
IGluc2lkZSB0aGUgZ3JlZW4gcmVjdGFuZ2xlLjwvbGk+Ci0gICAgICAgICAgICAgICAgIDxsaT5D
bGljayByaWdodCBidXR0b24gd2hpbGUga2VlcGluZyBsZWZ0IGJ1dHRvbiBkb3duPC9saT4KLSAg
ICAgICAgICAgICAgICAgPGxpPktlZXAgbW92aW5nIHRoZSBtb3VzZSBpbnNpZGUgdGhlIGdyZWVu
IHJlY3RhbmdsZS48L2xpPgotICAgICAgICAgICAgPC9vbD4KLQotICAgICAgICAgICAgVGVzdCBw
YXNzZXMgaWYgdGhlIHBvaW50ZXIgY2FwdHVyZSBpcyByZWxlYXNlZCBvbiB0aGUgeWVsbG93IHJl
Y3RhbmdsZSB3aGVuIHRoZSBncmVlbiByZWN0YW5nbGUgZ2V0cyB0aGUgcG9pbnRlciBsb2NrLgot
ICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2IGlkPSJ0ZXN0Q29udGFpbmVyIj4KLSAgICAgICAg
ICAgIDxkaXYgaWQ9ImRpdjEiIHN0eWxlPSJ3aWR0aDo4MDBweDtoZWlnaHQ6MjUwcHg7YmFja2dy
b3VuZDpncmVlbiI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2IGlkPSJkaXYyIiBzdHlsZT0id2lk
dGg6ODAwcHg7aGVpZ2h0OjI1MHB4O2JhY2tncm91bmQ6eWVsbG93Ij48L2Rpdj4KLSAgICAgICAg
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNwYWNlciI+PC9kaXY+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybG9j
a19zdXBlcmNlZGVzX2NhcHR1cmUtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2svcG9pbnRlcmV2
ZW50X3BvaW50ZXJsb2NrX3N1cGVyY2VkZXNfY2FwdHVyZS1tYW51YWwuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggZDhkYmVhYWUxNzJkZmQ2MzE0MzQxYzU1ZWYxZmEzYjk5NDVm
NjBmYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9p
bnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJsb2NrX3N1cGVyY2VkZXNfY2FwdHVyZS1tYW51
YWwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDkzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgot
PGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDx0aXRsZT5Qb2ludGVyIEV2ZW50cyBwb2ludGVy
IGxvY2sgdGVzdHM8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVu
dD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0
eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgotICAgICAg
ICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48L3Njcmlw
dD4KLSAgICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNvbW1vbiBjaGVj
a3MgYWNyb3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2
YXNjcmlwdCIgc3JjPSIuLi9wb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgbG9ja19jaGFuZ2VfY291bnQgPSAwOwotICAg
ICAgICAgICAgdmFyIGNhcHR1cmVfY291bnQgPSAwOwotICAgICAgICAgICAgdmFyIG1vdXNlX21v
dmVfY291bnQgPSAwOwotCi0gICAgICAgICAgICBmdW5jdGlvbiByZXNldFRlc3RTdGF0ZSgpIHsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAg
ICAgICAgIHZhciB0ZXN0X3BvaW50ZXJFdmVudCA9IHNldHVwX3BvaW50ZXJldmVudF90ZXN0KCJu
byBwb2ludGVyY2FwdHVyZSB3aGlsZSBwb2ludGVybG9jayIsIFsnbW91c2UnXSk7Ci0gICAgICAg
ICAgICAgICAgdmFyIGRpdjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpOwotICAg
ICAgICAgICAgICAgIHZhciBkaXYyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKTsK
LSAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoZGl2MSwgJ3BvaW50ZXJk
b3duJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgZGl2Mi5zZXRQb2lu
dGVyQ2FwdHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgICAgICBkaXYxLnJl
cXVlc3RQb2ludGVyTG9jaygpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAg
IG9uX2V2ZW50KGRpdjEsICdwb2ludGVybW92ZScsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAg
ICAgICAgICAgICAgIGlmIChsb2NrX2NoYW5nZV9jb3VudCA9PSAxKSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBtb3VzZV9tb3ZlX2NvdW50Kys7Ci0gICAgICAgICAgICAgICAgICAgICAgICBp
ZiAobW91c2VfbW92ZV9jb3VudCA9PSAyKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
dHJ5IHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGl2Mi5zZXRQb2ludGVyQ2Fw
dHVyZShldmVudC5wb2ludGVySWQpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uICgpIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGFzc2VydF91bnJlYWNoZWQoIkRPTUV4Y2VwdGlvbjogSW52YWxpZFN0
YXRlRXJyb3Igc2hvdWxkIGhhdmUgYmVlbiB0aHJvd24uIik7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUp
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVyRXZlbnQuc3Rl
cChmdW5jdGlvbiAoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKGUubmFtZSwgIkludmFsaWRTdGF0ZUVycm9yIiwgIkRPTUV4Y2VwdGlvbiBzaG91
bGQgYmUgSW52YWxpZFN0YXRlRXJyb3IiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAg
ICAgICAgfSBlbHNlIGlmIChtb3VzZV9tb3ZlX2NvdW50ID09IDMpIHsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBkb2N1bWVudC5leGl0UG9pbnRlckxvY2soKTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtb3VzZV9tb3ZlX2NvdW50ID0gMDsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGxvY2tfY2hhbmdlX2NvdW50
ID09IDIpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1vdXNlX21vdmVfY291bnQrKzsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGlmIChtb3VzZV9tb3ZlX2NvdW50ID09IDIpIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJFdmVudC5zdGVwKGZ1bmN0aW9uKCkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKGNhcHR1cmVf
Y291bnQsIDAsICJUaGVyZSBzaG91bGRuJ3QgYmUgYW55IGNhcHR1cmUgZXZlbnRzIGZpcmVkLiIp
OwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3RfcG9pbnRlckV2ZW50LmRvbmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAg
ICAgICAgIG9uX2V2ZW50KGRpdjIsICdnb3Rwb2ludGVyY2FwdHVyZScsIGZ1bmN0aW9uKGV2ZW50
KSB7Ci0gICAgICAgICAgICAgICAgICAgIGNhcHR1cmVfY291bnQrKzsKLSAgICAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudChkaXYyLCAnbG9zdHBvaW50ZXJjYXB0dXJl
JywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgY2FwdHVyZV9jb3VudCsr
OwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KGRvY3VtZW50
LCAncG9pbnRlcmxvY2tjaGFuZ2UnLCBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgICAg
ICAgICBsb2NrX2NoYW5nZV9jb3VudCsrOwotICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50
ZXJFdmVudC5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxv
Y2tfY2hhbmdlX2NvdW50ID09IDEpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0
X2VxdWFscyhkb2N1bWVudC5wb2ludGVyTG9ja0VsZW1lbnQsIGRpdjEsICJkb2N1bWVudC5wb2lu
dGVyTG9ja0VsZW1lbnQgc2hvdWxkIGJlIGRpdjEuIik7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBlbHNlIGlmIChsb2NrX2NoYW5nZV9jb3VudCA9PSAyKQotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMoZG9jdW1lbnQucG9pbnRlckxvY2tFbGVtZW50LCBudWxsLCAi
ZG9jdW1lbnQucG9pbnRlckxvY2tFbGVtZW50IHNob3VsZCBiZSBudWxsLiIpOwotICAgICAgICAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAg
ICAgICA8aDE+UG9pbnRlciBFdmVudHMgcG9pbnRlciBsb2NrIHRlc3Q8L2gxPgotICAgICAgICA8
aDIgaWQ9InBvaW50ZXJUeXBlRGVzY3JpcHRpb24iPjwvaDI+Ci0gICAgICAgIDxoND4KLSAgICAg
ICAgICAgIFRlc3QgRGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3MgdGhhdCB3ZSBkbyBub3Qg
c2V0IHRoZSBwb2ludGVyIGNhcHR1cmUgd2hlbiBhbnkgZWxlbWVudCBpbiB0aGUgcGFnZSBnZXRz
IGEgcG9pbnRlciBsb2NrLgotICAgICAgICAgICAgPG9sPgotICAgICAgICAgICAgICAgICA8bGk+
UHJlc3MgbGVmdCBidXR0b24gZG93biBvbiB0aGUgZ3JlZW4gcmVjdGFuZ2xlIGFuZCBob2xkIGl0
LjwvbGk+Ci0gICAgICAgICAgICAgICAgIDxsaT5Nb3ZlIHRoZSBtb3VzZSBpbnNpZGUgdGhlIGdy
ZWVuIHJlY3RhbmdsZS48L2xpPgotICAgICAgICAgICAgPC9vbD4KLQotICAgICAgICAgICAgVGVz
dCBwYXNzZXMgaWYgdGhlIHBvaW50ZXIgY2FwdHVyZSBpcyBub3Qgc2V0IHdoZW4gdGhlIGdyZWVu
IHJlY3RhbmdsZSBnZXRzIHRoZSBwb2ludGVyIGxvY2suCi0gICAgICAgIDwvaDQ+Ci0gICAgICAg
IDxkaXYgaWQ9InRlc3RDb250YWluZXIiPgotICAgICAgICAgICAgPGRpdiBpZD0iZGl2MSIgc3R5
bGU9IndpZHRoOjgwMHB4O2hlaWdodDoyNTBweDtiYWNrZ3JvdW5kOmdyZWVuIj48L2Rpdj4KLSAg
ICAgICAgICAgIDxkaXYgaWQ9ImRpdjIiIHN0eWxlPSJ3aWR0aDo4MDBweDtoZWlnaHQ6MjUwcHg7
YmFja2dyb3VuZDp5ZWxsb3ciPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBj
bGFzcz0ic3BhY2VyIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMv
cG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJtb3ZlX2luX3BvaW50ZXJsb2NrLW1hbnVh
bC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybW92ZV9pbl9wb2ludGVy
bG9jay1tYW51YWwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODBjMDFkNjFj
OGY5MDYzNjRmZWEwNDk3ZDMyY2JkNDRhZDhmZGQzZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJt
b3ZlX2luX3BvaW50ZXJsb2NrLW1hbnVhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzAgKzAs
MCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHRpdGxl
PnBvaW50ZXJtb3ZlPC90aXRsZT4KLSAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCI+Ci0gICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
dHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3BvaW50ZXJldmVudF9zdHlsZXMuY3NzIj4KLSAgICAg
ICAgPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzc3JlcG9ydC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDwhLS0gQWRkaXRpb25hbCBoZWxwZXIgc2NyaXB0IGZvciBjb21tb24gY2hl
Y2tzIGFjcm9zcyBldmVudCB0eXBlcyAtLT4KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIHNyYz0iLi4vcG9pbnRlcmV2ZW50X3N1cHBvcnQuanMiPjwvc2NyaXB0PgotICAg
IDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InJ1bigpIj4KLSAgICAgICAgPGgyPnBvaW50ZXJs
b2NrPC9oMj4KLSAgICAgICAgPGg0PlRlc3QgRGVzY3JpcHRpb246IFRoaXMgdGVzdCBjaGVja3Mg
aWYgcG9pbnRlcm1vdmUgaXMgZGlzcGF0Y2hlZCBjb3JyZWN0bHkgd2hpbGUgaW4gcG9pbnRlcmxv
Y2sgbW9kZS4KLSAgICAgICAgICAgIDxvbD4KLSAgICAgICAgICAgICAgICA8bGk+Q2xpY2sgaW4g
dGhlIGJsYWNrIGJveCAoYW5kIGFjY2VwdCB0aGUgcG9pbnRlcmxvY2sgcGVybWlzc2lvbiBpZiBh
c2tlZCkuPC9saT4KLSAgICAgICAgICAgICAgICA8bGk+TW92ZSB5b3VyIG1vdXNlLjwvbGk+Ci0g
ICAgICAgICAgICAgICAgPGxpPkNsaWNrIGluIHRoZSBwdXJwbGUgYm94IGluc2lkZSB0aGUgaWZy
YW1lPC9saT4KLSAgICAgICAgICAgICAgICA8bGk+TW92ZSB5b3VyIG1vdXNlLjwvbGk+Ci0gICAg
ICAgICAgICA8L29sPgotICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIj48
L2Rpdj4KLSAgICAgICAgPGlmcmFtZSBpZD0iaW5uZXJmcmFtZSIgc3JjPSJyZXNvdXJjZXMvcG9p
bnRlcmV2ZW50X3BvaW50ZXJtb3ZlX2luX3BvaW50ZXJsb2NrLWlmcmFtZS5odG1sIj48L2lmcmFt
ZT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIHdpbmRvdy5uYW1lPSJvdXRlcmZyYW1l
IjsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJtb3ZlID0gYXN5bmNfdGVzdCgicG9pbnRl
cm1vdmUgZXZlbnQgcmVjZWl2ZWQiKTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewot
ICAgICAgICAgICAgICAgIHZhciB0YXJnZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRh
cmdldDAiKTsKLSAgICAgICAgICAgICAgICB2YXIgaW5uZXJmcmFtZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdpbm5lcmZyYW1lJyk7Ci0gICAgICAgICAgICAgICAgdmFyIHRhcmdldDEgPSBp
bm5lcmZyYW1lLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGFyZ2V0MScpOwotICAg
ICAgICAgICAgICAgIGlubmVyZnJhbWUuY29udGVudFdpbmRvdy5uYW1lID0gImlubmVyZnJhbWUi
OwotCi0gICAgICAgICAgICAgICAgb25fZXZlbnQoZG9jdW1lbnQsICJwb2ludGVybG9ja2NoYW5n
ZSIsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQucG9p
bnRlckxvY2tFbGVtZW50ID09IHRhcmdldDApIHsKLSAgICAgICAgICAgICAgICAgICAgb25fZXZl
bnQodGFyZ2V0MCwgInBvaW50ZXJtb3ZlIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgdGVzdF9wb2ludGVybW92ZS5zdGVwKGZ1bmN0aW9uKCkgewotICAgICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhldmVudC52aWV3Lm5hbWUsICJvdXRlcmZyYW1l
IiwgIlZpZXcgYXR0cmlidXRlIG9mIHBvaW50ZXJtb3ZlIHNob3VsZCBiZSB0aGUgdGFyZ2V0IGZy
YW1lLiIpOwotICAgICAgICAgICAgICAgICAgICAgIH0sICJWaWV3IGF0dHJpYnV0ZSBvZiBwb2lu
dGVybW92ZSBzaG91bGQgYmUgdGhlIHRhcmdldCBmcmFtZS4iKTsKLSAgICAgICAgICAgICAgICAg
ICAgICBkb2N1bWVudC5leGl0UG9pbnRlckxvY2soKTsKLQotICAgICAgICAgICAgICAgICAgICAg
IG9uX2V2ZW50KHRhcmdldDEsICJjbGljayIsIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICB0YXJnZXQxLnJlcXVlc3RQb2ludGVyTG9jaygpOwotICAgICAgICAgICAg
ICAgICAgICAgIH0pOwotCi0gICAgICAgICAgICAgICAgICAgICAgb25fZXZlbnQoaW5uZXJmcmFt
ZS5jb250ZW50RG9jdW1lbnQsICJwb2ludGVybG9ja2NoYW5nZSIsIGZ1bmN0aW9uKGV2ZW50KSB7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5uZXJmcmFtZS5jb250ZW50RG9jdW1lbnQu
cG9pbnRlckxvY2tFbGVtZW50ID09IHRhcmdldDEpIHsKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgb25fZXZlbnQodGFyZ2V0MSwgInBvaW50ZXJtb3ZlIiwgZnVuY3Rpb24gKGV2ZW50KSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5uZXJmcmFtZV9wb2ludGVybW92ZVJlY2VpdmVk
ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJtb3ZlLnN0
ZXAoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1
YWxzKGV2ZW50LnZpZXcubmFtZSwgImlubmVyZnJhbWUiLCAiVmlldyBhdHRyaWJ1dGUgb2YgcG9p
bnRlcm1vdmUgc2hvdWxkIGJlIHRoZSB0YXJnZXQgZnJhbWUuIik7Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfSwgIlZpZXcgYXR0cmlidXRlIG9mIHBvaW50ZXJtb3ZlIHNob3VsZCBiZSB0
aGUgdGFyZ2V0IGZyYW1lLiIpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlubmVyZnJh
bWUuY29udGVudERvY3VtZW50LmV4aXRQb2ludGVyTG9jaygpOwotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRlc3RfcG9pbnRlcm1vdmUuZG9uZSgpOwotICAgICAgICAgICAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgImNsaWNr
IiwgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgIHRhcmdldDAucmVxdWVzdFBv
aW50ZXJMb2NrKCk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAg
ICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAg
IDwvZGl2PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9w
b2ludGVyZXZlbnRfcG9pbnRlcm1vdmVfb25fY2hvcmRlZF9tb3VzZV9idXR0b25fd2hlbl9sb2Nr
ZWQtbWFudWFsLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X3BvaW50ZXJtb3ZlX29u
X2Nob3JkZWRfbW91c2VfYnV0dG9uX3doZW5fbG9ja2VkLW1hbnVhbC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBiMmZhZGJmZTA1ZjdlZmNjNjc0ZjJiNGNhYzYxYTE1YTY3NTYw
NTk3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVybG9jay9wb2ludGVyZXZlbnRfcG9pbnRlcm1vdmVfb25fY2hvcmRlZF9tb3VzZV9idXR0b25f
d2hlbl9sb2NrZWQtbWFudWFsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5OCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+UG9pbnRl
cm1vdmUgb24gYnV0dG9uIHN0YXRlIGNoYW5nZXM8L3RpdGxlPgotICAgICAgICA8bWV0YSBuYW1l
PSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KLSAgICAgICAgPG1ldGEg
bmFtZT0iYXNzZXJ0IiBjb250ZW50PSJXaGVuIGEgcG9pbnRlciBjaGFuZ2VzIGJ1dHRvbiBzdGF0
ZSBhbmQgZG9lcyBub3QgcHJvZHVjZSBhIGRpZmZlcmVudCBldmVudCwgdGhlIHBvaW50ZXJtb3Zl
IGV2ZW50IG11c3QgYmUgZGlzcGF0Y2hlZC4iLz4KLSAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vcG9pbnRlcmV2ZW50X3N0eWxlcy5jc3MiPgot
ICAgICAgICA8c2NyaXB0IHNyYz0iL3Jlc291cmNlcy90ZXN0aGFybmVzcy5qcyI+PC9zY3JpcHQ+
Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNzcmVwb3J0LmpzIj48
L3NjcmlwdD4KLSAgICAgICAgPCEtLSBBZGRpdGlvbmFsIGhlbHBlciBzY3JpcHQgZm9yIGNvbW1v
biBjaGVja3MgYWNyb3NzIGV2ZW50IHR5cGVzIC0tPgotICAgICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgc3JjPSIuLi9wb2ludGVyZXZlbnRfc3VwcG9ydC5qcyI+PC9zY3JpcHQ+
Ci0gICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0icnVuKCkiPgotICAgICAgICA8aDI+UG9p
bnRlck1vdmU8L2gyPgotICAgICAgICA8aDQ+VGVzdCBEZXNjcmlwdGlvbjogVGhpcyB0ZXN0IGNo
ZWNrcyBpZiBwb2ludGVybW92ZSBldmVudCBhcmUgdHJpZ2dlcmVkIGJ5IGJ1dHRvbiBzdGF0ZSBj
aGFuZ2VzCi0gICAgICAgICAgICA8b2w+Ci0gICAgICAgICAgICAgICAgPGxpPkxpY2sgb24gdGhl
IGJsYWNrIHJlY3RhbmdsZSB0byBsb2NrIHRoZSBwb2ludGVyIDwvbGk+Ci0gICAgICAgICAgICAg
ICAgPGxpPlByZXNzIGEgYnV0dG9uIGFuZCBob2xkIGl0PC9saT4KLSAgICAgICAgICAgICAgICA8
bGk+UHJlc3MgYSBzZWNvbmQgYnV0dG9uPC9saT4KLSAgICAgICAgICAgICAgICA8bGk+UmVsZWFz
ZSB0aGUgc2Vjb25kIGJ1dHRvbjwvbGk+Ci0gICAgICAgICAgICAgICAgPGxpPlJlbGVhc2UgdGhl
IGZpcnN0IGJ1dHRvbiB0byBjb21wbGV0ZSB0aGUgdGVzdDwvbGk+Ci0gICAgICAgICAgICA8L29s
PgotICAgICAgICA8L2g0PgotICAgICAgICA8ZGl2IGlkPSJ0YXJnZXQwIiBzdHlsZT0iYmFja2dy
b3VuZDpibGFjayI+PC9kaXY+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgZXZl
bnRUZXN0ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgIHZhciBkZXRlY3RlZF9wb2ludGVydHlwZXMg
PSB7fTsKLSAgICAgICAgICAgIHZhciB0ZXN0X3BvaW50ZXJtb3ZlID0gYXN5bmNfdGVzdCgicG9p
bnRlciBsb2NrZWQgcG9pbnRlcm1vdmUgZXZlbnRzIHJlY2VpdmVkIGZvciBidXR0b24gc3RhdGUg
Y2hhbmdlcyIpOwotICAgICAgICAgICAgYWRkX2NvbXBsZXRpb25fY2FsbGJhY2soc2hvd1BvaW50
ZXJUeXBlcyk7Ci0KLSAgICAgICAgICAgIHZhciBzdGVwID0gMDsKLSAgICAgICAgICAgIHZhciBm
aXJzdEJ1dHRvbiA9IDA7Ci0gICAgICAgICAgICB2YXIgcG9pbnRlcl9sb2NrZWQgPSBmYWxzZTsK
LQotICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewotICAgICAgICAgICAgICAgIHZhciB0YXJn
ZXQwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldDAiKTsKLQotICAgICAgICAgICAg
ICAgIC8vIFdoZW4gYSBwb2ludGVyIGNoYW5nZXMgYnV0dG9uIHN0YXRlIGFuZCB0aGUgY2lyY3Vt
c3RhbmNlcyBwcm9kdWNlIG5vIG90aGVyIHBvaW50ZXIgZXZlbnQsIHRoZSBwb2ludGVybW92ZSBl
dmVudCBtdXN0IGJlIGRpc3BhdGNoZWQuCi0gICAgICAgICAgICAgICAgLy8gNS4yLjYKLQotICAg
ICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdldDAsICJwb2ludGVyZG93biIsIGZ1bmN0aW9uIChl
dmVudCkgewotICAgICAgICAgICAgICAgICAgICBpZiAocG9pbnRlcl9sb2NrZWQpIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlw
ZV0gPSB0cnVlOwotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVybW92ZS5zdGVw
KGZ1bmN0aW9uKCkge2Fzc2VydF90cnVlKHN0ZXAgPT09IDAsICJUaGVyZSBtdXN0IG5vdCBiZSBt
b3JlIHRoYW4gb25lIHBvaW50ZXIgZG93biBldmVudC4iKTt9KTsKLSAgICAgICAgICAgICAgICAg
ICAgICAgIGlmIChzdGVwID09IDApIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVw
ID0gMTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdEJ1dHRvbiA9IGV2ZW50LmJ1
dHRvbnM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAi
cG9pbnRlcm1vdmUiLCBmdW5jdGlvbiAoZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYg
KHBvaW50ZXJfbG9ja2VkKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBkZXRlY3RlZF9wb2lu
dGVydHlwZXNbZXZlbnQucG9pbnRlclR5cGVdID0gdHJ1ZTsKLQotICAgICAgICAgICAgICAgICAg
ICAgICAgaWYgKHN0ZXAgPT0gMSAmJiBldmVudC5idXR0b24gIT0gLTEpIHsgLy8gc2Vjb25kIGJ1
dHRvbiBwcmVzc2VkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVybW92
ZS5zdGVwKGZ1bmN0aW9uKCkge2Fzc2VydF90cnVlKGV2ZW50LmJ1dHRvbnMgIT09IGZpcnN0QnV0
dG9uLCAiVGhlIHBvaW50ZXJtb3ZlIGV2ZW50IG11c3QgYmUgdHJpZ2dlcmVkIGJ5IHByZXNzaW5n
IGEgc2Vjb25kIGJ1dHRvbi4iKTt9KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
X3BvaW50ZXJtb3ZlLnN0ZXAoZnVuY3Rpb24oKSB7YXNzZXJ0X3RydWUoKGV2ZW50LmJ1dHRvbnMg
JiBmaXJzdEJ1dHRvbikgIT0gMCwgIlRoZSBmaXJzdCBidXR0b24gbXVzdCBzdGlsbCBiZSByZXBv
cnRlZCBwcmVzc2VkLiIpO30pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXAgPSAy
OwotICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzdGVwID09IDIgJiYgZXZlbnQu
YnV0dG9uICE9IC0xKSB7IC8vIHNlY29uZCBidXR0b24gcmVsZWFzZWQKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJtb3ZlLnN0ZXAoZnVuY3Rpb24oKSB7YXNzZXJ0X3Ry
dWUoZXZlbnQuYnV0dG9ucyA9PT0gZmlyc3RCdXR0b24sICJUaGUgcG9pbnRlcm1vdmUgZXZlbnQg
bXVzdCBiZSB0cmlnZ2VyZWQgYnkgcmVsZWFzaW5nIHRoZSBzZWNvbmQgYnV0dG9uLiIpO30pOwot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXAgPSAzOwotICAgICAgICAgICAgICAgICAg
ICAgICAgfQotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAg
ICAgICAgICAgICAgb25fZXZlbnQodGFyZ2V0MCwgInBvaW50ZXJ1cCIsIGZ1bmN0aW9uIChldmVu
dCkgewotICAgICAgICAgICAgICAgICAgICBpZiAocG9pbnRlcl9sb2NrZWQpIHsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIGRldGVjdGVkX3BvaW50ZXJ0eXBlc1tldmVudC5wb2ludGVyVHlwZV0g
PSB0cnVlOwotICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9wb2ludGVybW92ZS5zdGVwKGZ1
bmN0aW9uKCkge2Fzc2VydF90cnVlKHN0ZXAgPT09IDMsICJUaGUgcG9pbnRlcnVwIGV2ZW50IG11
c3QgYmUgdHJpZ2dlcmVkIGFmdGVyIHByZXNzaW5nIGFuZCByZWxlYXNpbmcgdGhlIHNlY29uZCBi
dXR0b24uIik7fSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJtb3ZlLnN0
ZXAoZnVuY3Rpb24oKSB7YXNzZXJ0X3RydWUoZXZlbnQuYnV0dG9ucyA9PT0gMCwgIlRoZSBwb2lu
dGVydXAgZXZlbnQgbXVzdCBiZSB0cmlnZ2VyZWQgYnkgcmVsZWFzaW5nIHRoZSBsYXN0IHByZXNz
ZWQgYnV0dG9uLiIpO30pOwotICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhpdFBv
aW50ZXJMb2NrKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3BvaW50ZXJtb3ZlLmRv
bmUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50VGVzdGVkID0gdHJ1ZTsKLSAgICAg
ICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldDAu
cmVxdWVzdFBvaW50ZXJMb2NrKCk7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudChkb2N1bWVudCwgJ3BvaW50ZXJsb2Nr
Y2hhbmdlJywgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGRvY3Vt
ZW50LnBvaW50ZXJMb2NrRWxlbWVudCA9PSB0YXJnZXQwKSAKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHBvaW50ZXJfbG9ja2VkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgICAgICAgICAgcG9pbnRlcl9sb2NrZWQgPSBmYWxzZTsKLSAgICAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgICAgICAgICBvbl9ldmVudCh0YXJnZXQwLCAibW91c2V1cCIsIGZ1
bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVs
dCgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIG9uX2V2ZW50KHRhcmdl
dDAsICJjb250ZXh0bWVudSIsIGZ1bmN0aW9uIChldmVudCkgewotICAgICAgICAgICAgICAgICAg
ICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAg
ICAgfQotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPGgxPlBvaW50ZXIgTG9jayBQb2ludGVy
IEV2ZW50cyBwb2ludGVybW92ZSBvbiBidXR0b24gc3RhdGUgY2hhbmdlcyBUZXN0czwvaDE+Ci0g
ICAgICAgIDxkaXYgaWQ9ImNvbXBsZXRlLW5vdGljZSI+Ci0gICAgICAgICAgICA8cD5UaGUgZm9s
bG93aW5nIHBvaW50ZXIgdHlwZXMgd2VyZSBkZXRlY3RlZDogPHNwYW4gaWQ9InBvaW50ZXJ0eXBl
LWxvZyI+PC9zcGFuPi48L3A+Ci0gICAgICAgICAgICA8cD5SZWZyZXNoIHRoZSBwYWdlIHRvIHJ1
biB0aGUgdGVzdHMgYWdhaW4uPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0i
bG9nIj48L2Rpdj4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDc3NTU2MjFmZDliYTI1ZDZlOGZmOGUzNTUzNzBhMmYx
YmQ0MmQwNjIuLjc4NDU3M2ZhOWM1YjQ1NDkzM2ZlMDE1ODc1MGQwZTRiZTBhMmJlMTIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNzk2LDU5ICsxNzk2
LDYgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF8KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXBhbi14LXBhbi15
X3RvdWNoLmh0bWwgWyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfcG9pbnRlcm91dF9wZW4uaHRtbCBbIFNraXAgXQogCi0j
IFNraXAgYWxsIG1hbnVhbCBQb2ludGVyIEV2ZW50cyBXUFQgdGVzdHMuCi1pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X2F0dHJpYnV0ZXNf
aG92ZXJhYmxlX3BvaW50ZXJzLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X2F0dHJpYnV0ZXNfbm9o
b3Zlcl9wb2ludGVycy1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9ib3VuZGFyeV9ldmVudHNfaW5f
Y2FwdHVyaW5nLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X2NhcHR1cmVfc3VwcHJlc3NpbmdfbW91
c2UtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfZGlzYWJsZWRfZm9ybV9jb250cm9sLW1hbnVhbC5o
dG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvcG9pbnRlcmV2ZW50X2VsZW1lbnRfaGFzcG9pbnRlcmNhcHR1cmUtbWFudWFsLmh0bWwgWyBT
a2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2lu
dGVyZXZlbnRfZWxlbWVudF9oYXNwb2ludGVyY2FwdHVyZV9yZWxlYXNlX3BlbmRpbmdfY2FwdHVy
ZS1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9w
b2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9mcmFjdGlvbmFsX2Nvb3JkaW5hdGVzLW1hbnVhbC5o
dG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvcG9pbnRlcmV2ZW50X211bHRpcGxlX3ByaW1hcnlfcG9pbnRlcnNfYm91bmRhcnlfZXZlbnRz
LW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bv
aW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3BvaW50ZXJJZF9zY29wZS1tYW51YWwuaHRtbCBbIFNr
aXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50
ZXJldmVudF9wb2ludGVybGVhdmVfcGVuLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3JlbGVhc2Vw
b2ludGVyY2FwdHVyZV9ldmVudHNfdG9fb3JpZ2luYWxfdGFyZ2V0LW1hbnVhbC5odG1sIFsgU2tp
cCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRl
cmV2ZW50X3JlbGVhc2Vwb2ludGVyY2FwdHVyZV9yZWxlYXNlX3JpZ2h0X2FmdGVyX2NhcHR1cmUt
bWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9p
bnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2VxdWVuY2VfYXRfaW1wbGljaXRfcmVsZWFzZV9vbl9j
bGljay1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF9zZXF1ZW5jZV9hdF9pbXBsaWNpdF9yZWxlYXNl
X29uX2RyYWctbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2V0cG9pbnRlcmNhcHR1cmVfb3ZlcnJp
ZGVfcGVuZGluZ19jYXB0dXJlX2VsZW1lbnQtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfc2V0cG9p
bnRlcmNhcHR1cmVfdG9fc2FtZV9lbGVtZW50X3R3aWNlLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50
X3RvdWNoLWFjdGlvbi1idXR0b24tdGVzdF90b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90
b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1hdXRvLWNoaWxkLW5vbmVfdG91Y2gtbWFudWFsLmh0
bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLWluaGVyaXRfY2hpbGQtbm9uZV90b3VjaC1tYW51
YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVy
ZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJpdF9jaGlsZC1wYW4teC1jaGls
ZC1wYW4teF90b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24taW5oZXJp
dF9jaGlsZC1wYW4teC1jaGlsZC1wYW4teV90b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90
b3VjaC1hY3Rpb24taW5oZXJpdF9wYXJlbnQtbm9uZV90b3VjaC1tYW51YWwuaHRtbCBbIFNraXAg
XQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJl
dmVudF90b3VjaC1hY3Rpb24ta2V5Ym9hcmQtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gt
YWN0aW9uLW1vdXNlLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1ub25lLWNz
c190b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXgtY3NzX3Rv
dWNoLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1wYW4teC1wYW4teS1wYW4t
eV90b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXktY3NzX3Rv
dWNoLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3BvaW50ZXJldmVudHMvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbi1yb3RhdGVkLWRpdnNfdG91
Y2gtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
cG9pbnRlcmV2ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXNwYW4tdGVzdF90b3VjaC1t
YW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tc3ZnLXRlc3RfdG91Y2gtbWFudWFs
Lmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2
ZW50cy9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9uLXRhYmxlLXRlc3RfdG91Y2gtbWFudWFsLmh0
bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50
cy9jb21wYXQvcG9pbnRlcmV2ZW50X3RvdWNoLWFjdGlvbl90d28tZmluZ2VyX2ludGVyYWN0aW9u
LW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bv
aW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF9jb2FsZXNjZWRfZXZlbnRzX2F0dHJp
YnV0ZXMtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X2dldENvYWxlc2NlZEV2ZW50
c193aGVuX3BvaW50ZXJsb2NrZWQtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24vcG9pbnRlcmV2ZW50X2dl
dFByZWRpY3RlZEV2ZW50c193aGVuX3BvaW50ZXJsb2NrZWQtbWFudWFsLmh0bWwgWyBTa2lwIF0K
LWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9leHRlbnNpb24v
cG9pbnRlcmV2ZW50X3BvaW50ZXJyYXdtb3ZlLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJl
dmVudF9wb2ludGVycmF3bW92ZV9pbl9wb2ludGVybG9jay1tYW51YWwuaHRtbCBbIFNraXAgXQot
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9w
b2ludGVyZXZlbnRfcHJlZGljdGVkX2V2ZW50c19hdHRyaWJ1dGVzLW1hbnVhbC5odG1sIFsgU2tp
cCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVudHMvZXh0ZW5z
aW9uL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLWRvd24tY3NzX3RvdWNoLW1hbnVhbC5o
dG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3BvaW50ZXJldmVu
dHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLWxlZnQtY3NzX3RvdWNo
LW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Bv
aW50ZXJldmVudHMvZXh0ZW5zaW9uL3BvaW50ZXJldmVudF90b3VjaC1hY3Rpb24tcGFuLXJpZ2h0
LWNzc190b3VjaC1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL2V4dGVuc2lvbi9wb2ludGVyZXZlbnRfdG91Y2gtYWN0aW9u
LXBhbi11cC1jc3NfdG91Y2gtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9odG1sL3BvaW50ZXJldmVudF9kcmFnX2ludGVy
YWN0aW9uLW1hbnVhbC5odG1sIFsgU2tpcCBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3BvaW50ZXJldmVudHMvcG9pbnRlcmxvY2svcG9pbnRlcmV2ZW50X21vdmVtZW50eHktbWFu
dWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRl
cmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVyZXZlbnRfbW92ZW1lbnR4eV93aGVuX2xvY2tlZC1t
YW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9wb2lu
dGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybG9ja19hZnRlcl9wb2lu
dGVyY2FwdHVyZS1tYW51YWwuaHRtbCBbIFNraXAgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9wb2ludGVyZXZlbnRzL3BvaW50ZXJsb2NrL3BvaW50ZXJldmVudF9wb2ludGVybG9j
a19zdXBlcmNlZGVzX2NhcHR1cmUtbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVyZXZlbnRf
cG9pbnRlcm1vdmVfaW5fcG9pbnRlcmxvY2stbWFudWFsLmh0bWwgWyBTa2lwIF0KLWltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvcG9pbnRlcmV2ZW50cy9wb2ludGVybG9jay9wb2ludGVy
ZXZlbnRfcG9pbnRlcm1vdmVfb25fY2hvcmRlZF9tb3VzZV9idXR0b25fd2hlbl9sb2NrZWQtbWFu
dWFsLmh0bWwgWyBTa2lwIF0KLQogd2Via2l0Lm9yZy9iLzE5NzQ3MyBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3Jlc291cmNlLXRpbWluZy9yZXNvdXJjZS10aW1pbmctbGV2ZWwxLnN1
Yi5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzEzNjYyNyBbIE1vamF2ZSsg
XSBtZWRpYS90cmFjay90cmFjay1jdWUtcmVuZGVyaW5nLXZlcnRpY2FsLmh0bWwgWyBGYWlsdXJl
IF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>